diff options
Diffstat (limited to 'src/libjin/graphics/je_shapes.cpp')
-rw-r--r-- | src/libjin/graphics/je_shapes.cpp | 54 |
1 files changed, 26 insertions, 28 deletions
diff --git a/src/libjin/graphics/je_shapes.cpp b/src/libjin/graphics/je_shapes.cpp index 9af031d..7781b3f 100644 --- a/src/libjin/graphics/je_shapes.cpp +++ b/src/libjin/graphics/je_shapes.cpp @@ -22,26 +22,26 @@ namespace JinEngine { float verts[] = { x + 0.5f , y + 0.5f }; - Shader* shader = gl.getShader(); - shader->beginUploadAttributes(); - shader->uploadVertices(2, GL_FLOAT, 0, verts); - shader->endUploadAttributes(); Matrix modelMatrix = gl.getModelViewMatrix(); - shader->sendMatrix4(SHADER_MODELVIEW_MATRIX, &modelMatrix); - shader->sendMatrix4(SHADER_PROJECTION_MATRIX, &gl.getProjectionMatrix()); + + Shader* shader = gl.getShader(); + shader->prepare() + .uploadVertices(2, GL_FLOAT, 0, verts) + .sendMatrix4(SHADER_MODELVIEW_MATRIX, &modelMatrix) + .sendMatrix4(SHADER_PROJECTION_MATRIX, &gl.getProjectionMatrix()); glDrawArrays(GL_POINTS, 0, 1); } void points(int n, GLshort* p) { - Shader* shader = gl.getShader(); - shader->beginUploadAttributes(); - shader->uploadVertices(2, GL_SHORT, 0, p); - shader->endUploadAttributes(); Matrix modelMatrix = gl.getModelViewMatrix(); - shader->sendMatrix4(SHADER_MODELVIEW_MATRIX, &modelMatrix); - shader->sendMatrix4(SHADER_PROJECTION_MATRIX, &gl.getProjectionMatrix()); + + Shader* shader = gl.getShader(); + shader->prepare() + .uploadVertices(2, GL_SHORT, 0, p) + .sendMatrix4(SHADER_MODELVIEW_MATRIX, &modelMatrix) + .sendMatrix4(SHADER_PROJECTION_MATRIX, &gl.getProjectionMatrix()); glDrawArrays(GL_POINTS, 0, n); } @@ -52,14 +52,14 @@ namespace JinEngine x1 + 0.5f, y1 + 0.5f, x2 + 0.5f, y2 + 0.5f }; + + Matrix modelMatrix = gl.getModelViewMatrix(); Shader* shader = gl.getShader(); - shader->beginUploadAttributes(); - shader->uploadVertices(2, GL_FLOAT, 0, verts); - shader->endUploadAttributes(); - Matrix modelMatrix = gl.getModelViewMatrix(); - shader->sendMatrix4(SHADER_MODELVIEW_MATRIX, &modelMatrix); - shader->sendMatrix4(SHADER_PROJECTION_MATRIX, &gl.getProjectionMatrix()); + shader->prepare() + .uploadVertices(2, GL_FLOAT, 0, verts) + .sendMatrix4(SHADER_MODELVIEW_MATRIX, &modelMatrix) + .sendMatrix4(SHADER_PROJECTION_MATRIX, &gl.getProjectionMatrix()); glDrawArrays(GL_LINES, 0, 2); } @@ -105,11 +105,10 @@ namespace JinEngine { Shader* shader = gl.getShader(); Matrix modelMatrix = gl.getModelViewMatrix(); - shader->sendMatrix4(SHADER_MODELVIEW_MATRIX, &modelMatrix); - shader->sendMatrix4(SHADER_PROJECTION_MATRIX, &gl.getProjectionMatrix()); - shader->beginUploadAttributes(); - shader->uploadVertices(2, GL_FLOAT, 0, p); - shader->endUploadAttributes(); + shader->prepare() + .sendMatrix4(SHADER_MODELVIEW_MATRIX, &modelMatrix) + .sendMatrix4(SHADER_PROJECTION_MATRIX, &gl.getProjectionMatrix()) + .uploadVertices(2, GL_FLOAT, 0, p); glDrawArrays(GL_LINE_LOOP, 0, count); } @@ -124,11 +123,10 @@ namespace JinEngine { Shader* shader = gl.getShader(); Matrix modelMatrix = gl.getModelViewMatrix(); - shader->sendMatrix4(SHADER_MODELVIEW_MATRIX, &modelMatrix); - shader->sendMatrix4(SHADER_PROJECTION_MATRIX, &gl.getProjectionMatrix()); - shader->beginUploadAttributes(); - shader->uploadVertices(2, GL_FLOAT, 0, p); - shader->endUploadAttributes(); + shader->prepare() + .sendMatrix4(SHADER_MODELVIEW_MATRIX, &modelMatrix) + .sendMatrix4(SHADER_PROJECTION_MATRIX, &gl.getProjectionMatrix()) + .uploadVertices(2, GL_FLOAT, 0, p); glDrawArrays(GL_POLYGON, 0, count); } |