Only check shader compilation status in debug or with DEBUG_GLSL defined. invalidate range on bindbufferrange since we don't care about what is in the range. Both give a performance boost for me.

This commit is contained in:
Ryan Houdek
2013-01-26 11:24:24 -06:00
parent 3a52b37c3b
commit 4fadb65259
3 changed files with 5 additions and 4 deletions

View File

@ -200,7 +200,7 @@ void ProgramShaderCache::UploadConstants()
glBufferData(GL_UNIFORM_BUFFER, UBO_LENGTH, NULL, GL_STREAM_DRAW);
s_ubo_iterator = 0;
}
void *ubo = glMapBufferRange(GL_UNIFORM_BUFFER, s_ubo_iterator, s_ubo_buffer_size, GL_MAP_WRITE_BIT | GL_MAP_UNSYNCHRONIZED_BIT);
void *ubo = glMapBufferRange(GL_UNIFORM_BUFFER, s_ubo_iterator, s_ubo_buffer_size, GL_MAP_WRITE_BIT | GL_MAP_UNSYNCHRONIZED_BIT | GL_MAP_INVALIDATE_RANGE_BIT);
memcpy(ubo, s_ubo_buffer, s_ubo_buffer_size);
glUnmapBuffer(GL_UNIFORM_BUFFER);