|
@ -3060,15 +3060,15 @@ void rlDrawRenderBatch(rlRenderBatch *batch) |
|
|
if ((batch->draws[i].mode == RL_LINES) || (batch->draws[i].mode == RL_TRIANGLES)) glDrawArrays(batch->draws[i].mode, vertexOffset, batch->draws[i].vertexCount); |
|
|
if ((batch->draws[i].mode == RL_LINES) || (batch->draws[i].mode == RL_TRIANGLES)) glDrawArrays(batch->draws[i].mode, vertexOffset, batch->draws[i].vertexCount); |
|
|
else |
|
|
else |
|
|
{ |
|
|
{ |
|
|
#if defined(GRAPHICS_API_OPENGL_33) |
|
|
|
|
|
|
|
|
#if defined(GRAPHICS_API_OPENGL_33) |
|
|
// We need to define the number of indices to be processed: elementCount*6 |
|
|
// We need to define the number of indices to be processed: elementCount*6 |
|
|
// NOTE: The final parameter tells the GPU the offset in bytes from the |
|
|
// NOTE: The final parameter tells the GPU the offset in bytes from the |
|
|
// start of the index buffer to the location of the first index to process |
|
|
// start of the index buffer to the location of the first index to process |
|
|
glDrawElements(GL_TRIANGLES, batch->draws[i].vertexCount/4*6, GL_UNSIGNED_INT, (GLvoid *)(vertexOffset/4*6*sizeof(GLuint))); |
|
|
glDrawElements(GL_TRIANGLES, batch->draws[i].vertexCount/4*6, GL_UNSIGNED_INT, (GLvoid *)(vertexOffset/4*6*sizeof(GLuint))); |
|
|
#endif |
|
|
|
|
|
#if defined(GRAPHICS_API_OPENGL_ES2) |
|
|
|
|
|
|
|
|
#endif |
|
|
|
|
|
#if defined(GRAPHICS_API_OPENGL_ES2) |
|
|
glDrawElements(GL_TRIANGLES, batch->draws[i].vertexCount/4*6, GL_UNSIGNED_SHORT, (GLvoid *)(vertexOffset/4*6*sizeof(GLushort))); |
|
|
glDrawElements(GL_TRIANGLES, batch->draws[i].vertexCount/4*6, GL_UNSIGNED_SHORT, (GLvoid *)(vertexOffset/4*6*sizeof(GLushort))); |
|
|
#endif |
|
|
|
|
|
|
|
|
#endif |
|
|
} |
|
|
} |
|
|
|
|
|
|
|
|
vertexOffset += (batch->draws[i].vertexCount + batch->draws[i].vertexAlignment); |
|
|
vertexOffset += (batch->draws[i].vertexCount + batch->draws[i].vertexAlignment); |
|
@ -4946,7 +4946,7 @@ static void rlLoadShaderDefault(void) |
|
|
RLGL.State.defaultShaderLocs[RL_SHADER_LOC_VERTEX_COLOR] = glGetAttribLocation(RLGL.State.defaultShaderId, RL_DEFAULT_SHADER_ATTRIB_NAME_COLOR); |
|
|
RLGL.State.defaultShaderLocs[RL_SHADER_LOC_VERTEX_COLOR] = glGetAttribLocation(RLGL.State.defaultShaderId, RL_DEFAULT_SHADER_ATTRIB_NAME_COLOR); |
|
|
|
|
|
|
|
|
// Set default shader locations: uniform locations |
|
|
// Set default shader locations: uniform locations |
|
|
RLGL.State.defaultShaderLocs[RL_SHADER_LOC_MATRIX_MVP] = glGetUniformLocation(RLGL.State.defaultShaderId, RL_DEFAULT_SHADER_UNIFORM_NAME_MVP); |
|
|
|
|
|
|
|
|
RLGL.State.defaultShaderLocs[RL_SHADER_LOC_MATRIX_MVP] = glGetUniformLocation(RLGL.State.defaultShaderId, RL_DEFAULT_SHADER_UNIFORM_NAME_MVP); |
|
|
RLGL.State.defaultShaderLocs[RL_SHADER_LOC_COLOR_DIFFUSE] = glGetUniformLocation(RLGL.State.defaultShaderId, RL_DEFAULT_SHADER_UNIFORM_NAME_COLOR); |
|
|
RLGL.State.defaultShaderLocs[RL_SHADER_LOC_COLOR_DIFFUSE] = glGetUniformLocation(RLGL.State.defaultShaderId, RL_DEFAULT_SHADER_UNIFORM_NAME_COLOR); |
|
|
RLGL.State.defaultShaderLocs[RL_SHADER_LOC_MAP_DIFFUSE] = glGetUniformLocation(RLGL.State.defaultShaderId, RL_DEFAULT_SHADER_SAMPLER2D_NAME_TEXTURE0); |
|
|
RLGL.State.defaultShaderLocs[RL_SHADER_LOC_MAP_DIFFUSE] = glGetUniformLocation(RLGL.State.defaultShaderId, RL_DEFAULT_SHADER_SAMPLER2D_NAME_TEXTURE0); |
|
|
} |
|
|
} |
|
|