diff options
Diffstat (limited to 'src/libjin/graphics/je_graphic.cpp')
-rw-r--r-- | src/libjin/graphics/je_graphic.cpp | 22 |
1 files changed, 10 insertions, 12 deletions
diff --git a/src/libjin/graphics/je_graphic.cpp b/src/libjin/graphics/je_graphic.cpp index 964d0e5..96c3b4a 100644 --- a/src/libjin/graphics/je_graphic.cpp +++ b/src/libjin/graphics/je_graphic.cpp @@ -71,12 +71,11 @@ namespace JinEngine textureCoords[6] = 1; textureCoords[7] = 0; // Set shader. Shader* shader = gl.getShader(); - shader->sendMatrix4(SHADER_MODELVIEW_MATRIX, &modelViewMatrix); - shader->sendMatrix4(SHADER_PROJECTION_MATRIX, &gl.getProjectionMatrix()); - shader->beginUploadAttributes(); - shader->uploadVertices(2, GL_FLOAT, 0, vertexCoords); - shader->uploadUV(2, GL_FLOAT, 0, textureCoords); - shader->endUploadAttributes(); + shader->prepare() + .sendMatrix4(SHADER_MODELVIEW_MATRIX, &modelViewMatrix) + .sendMatrix4(SHADER_PROJECTION_MATRIX, &gl.getProjectionMatrix()) + .uploadVertices(2, GL_FLOAT, 0, vertexCoords) + .uploadUV(2, GL_FLOAT, 0, textureCoords); gl.bindTexture(getGLTexture()); gl.drawArrays(GL_QUADS, 0, 4); @@ -106,12 +105,11 @@ namespace JinEngine Math::Matrix modelViewMatrix = gl.getModelViewMatrix(x, y, sx, sy, r, ax, ay); Shader* shader = gl.getShader(); - shader->sendMatrix4(SHADER_MODELVIEW_MATRIX, &modelViewMatrix); - shader->sendMatrix4(SHADER_PROJECTION_MATRIX, &gl.getProjectionMatrix()); - shader->beginUploadAttributes(); - shader->uploadVertices(2, GL_FLOAT, 0, vertexCoords); - shader->uploadUV(2, GL_FLOAT, 0, textureCoords); - shader->endUploadAttributes(); + shader->prepare() + .sendMatrix4(SHADER_MODELVIEW_MATRIX, &modelViewMatrix) + .sendMatrix4(SHADER_PROJECTION_MATRIX, &gl.getProjectionMatrix()) + .uploadVertices(2, GL_FLOAT, 0, vertexCoords) + .uploadUV(2, GL_FLOAT, 0, textureCoords); gl.bindTexture(getGLTexture()); gl.drawArrays(GL_QUADS, 0, 4); |