diff options
author | chai <chaifix@163.com> | 2018-12-23 01:06:46 +0800 |
---|---|---|
committer | chai <chaifix@163.com> | 2018-12-23 01:06:46 +0800 |
commit | 5b8b5c95589e615afda3f0d67db612b64297c2a0 (patch) | |
tree | 976de20f8a317c1dfb07ed1914ff8bebc4242005 /src/libjin/graphics/je_shapes.cpp | |
parent | 6afaad9b9490d4b70a0bea4a8289cc637194abc7 (diff) |
*shader and time
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); } |