D3D11DynamicBuffer::map exception. D3D11_MAP_WRITE_NO_OVERWRITE problem?
Posted: Fri Feb 19, 2021 2:16 pm
Hi!
We're having this error on Win7, NVidia GTX 750Ti, feature level 11.0
Looking at the doc here https://docs.microsoft.com/en-us/window ... -d3d11_map we found that for feature level <= 11.0, D3D11_MAP_WRITE_NO_OVERWRITE can only be used for vertex/index buffer. We changed the mapping flags from D3D11_MAP_WRITE_NO_OVERWRITE to D3D11_MAP_WRITE_DISCARD and the error is gone.
Since the flag is there for a looooooong time, that means origianlly only vertex/index buffer was using DynamicBuffer? Then at some time point after we last upgraded Ogre (over a year I think), Dynamic Buffer was starting to use on some other buffers. However, none of our Win10 machines have this problem even with feature level 11.0 instead of 11.1, that means the actual driver allows this despite the doc says otherwise.
We're having this error on Win7, NVidia GTX 750Ti, feature level 11.0
Code: Select all
Error calling Map: invalid parameters were passed.
in D3D11DynamicBuffer::map at C:\ogremygui\OGRE19\RenderSystems\Direct3D11\src\Vao\OgreD3D11DynamicBuffer.cpp (line 92)
Since the flag is there for a looooooong time, that means origianlly only vertex/index buffer was using DynamicBuffer? Then at some time point after we last upgraded Ogre (over a year I think), Dynamic Buffer was starting to use on some other buffers. However, none of our Win10 machines have this problem even with feature level 11.0 instead of 11.1, that means the actual driver allows this despite the doc says otherwise.