mirror of
https://github.com/bkaradzic/bgfx.git
synced 2026-02-17 20:52:36 +01:00
Fix webgl2 instancing bug (#1512)
This commit is contained in:
committed by
Branimir Karadžić
parent
7835f60e8c
commit
50a64a7fdf
@@ -4528,6 +4528,15 @@ BX_TRACE("%d, %d, %d, %s", _array, _srgb, _mipAutogen, getName(_format) );
|
||||
}
|
||||
}
|
||||
|
||||
void ProgramGL::unbindInstanceData() const
|
||||
{
|
||||
for(uint32_t ii = 0; 0xffff != m_instanceData[ii]; ++ii)
|
||||
{
|
||||
GLint loc = m_instanceData[ii];
|
||||
GL_CHECK(glDisableVertexAttribArray(loc));
|
||||
}
|
||||
}
|
||||
|
||||
void IndexBufferGL::destroy()
|
||||
{
|
||||
GL_CHECK(glBindBuffer(GL_ELEMENT_ARRAY_BUFFER, 0) );
|
||||
@@ -7311,6 +7320,11 @@ BX_TRACE("%d, %d, %d, %s", _array, _srgb, _mipAutogen, getName(_format) );
|
||||
m_occlusionQuery.end();
|
||||
}
|
||||
|
||||
if(isValid(draw.m_instanceDataBuffer))
|
||||
{
|
||||
program.unbindInstanceData();
|
||||
}
|
||||
|
||||
statsNumPrimsSubmitted[primIndex] += numPrimsSubmitted;
|
||||
statsNumPrimsRendered[primIndex] += numPrimsRendered;
|
||||
statsNumInstances[primIndex] += numInstances;
|
||||
|
||||
@@ -1329,6 +1329,7 @@ namespace bgfx { namespace gl
|
||||
void destroy();
|
||||
void init();
|
||||
void bindInstanceData(uint32_t _stride, uint32_t _baseVertex = 0) const;
|
||||
void unbindInstanceData() const;
|
||||
|
||||
void bindAttributesBegin()
|
||||
{
|
||||
|
||||
Reference in New Issue
Block a user