Просмотр исходного кода

rebind instance data buffer if index offset changes

Fix case of drawing different offsets of indices of same vertex buffer
using same instance data.

This can happen in the case of conditionally drawing subsets of vertex
buffer stored in different offsets of the same index buffer while re-using
non-transient instance buffers.
Sandy Carter 5 лет назад
Родитель
Сommit
5924652151
1 измененных файлов с 5 добавлено и 0 удалено
  1. 5 0
      src/renderer_gl.cpp

+ 5 - 0
src/renderer_gl.cpp

@@ -7258,6 +7258,11 @@ namespace bgfx { namespace gl
 							diffIndexBuffer = true;
 						}
 
+						if (currentState.m_startIndex != draw.m_startIndex)
+						{
+							diffIndexBuffer = true;
+						}
+
 						if (0 != currentState.m_streamMask)
 						{
 							bool diffStartVertex = false;