aboutsummaryrefslogtreecommitdiff
path: root/src/libjin/graphics/je_shapes.cpp
diff options
context:
space:
mode:
authorchai <chaifix@163.com>2018-12-23 01:06:46 +0800
committerchai <chaifix@163.com>2018-12-23 01:06:46 +0800
commit5b8b5c95589e615afda3f0d67db612b64297c2a0 (patch)
tree976de20f8a317c1dfb07ed1914ff8bebc4242005 /src/libjin/graphics/je_shapes.cpp
parent6afaad9b9490d4b70a0bea4a8289cc637194abc7 (diff)
*shader and time
Diffstat (limited to 'src/libjin/graphics/je_shapes.cpp')
-rw-r--r--src/libjin/graphics/je_shapes.cpp54
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);
}