We always search for unbound sub-buffers on SetBufferData, and the bound state only resets after work completes, so systems that relied on correct NO_OVERWRITE behavior had flickering. Now we only search for an unbound sub-buffer if NO_OVERWRITE is not set. We also had some unclear and redundant record keeping on bound vertex buffers so I fixed that too.
We always search for unbound sub-buffers on SetBufferData, and the bound state only resets after work completes, so systems that relied on correct NO_OVERWRITE behavior had flickering. Now we only search for an unbound sub-buffer if NO_OVERWRITE is not set. We also had some unclear and redundant record keeping on bound vertex buffers so I fixed that too.