diff options
Diffstat (limited to 'src/libjin/Graphics/je_graphic_single.cpp')
-rw-r--r-- | src/libjin/Graphics/je_graphic_single.cpp | 82 |
1 files changed, 0 insertions, 82 deletions
diff --git a/src/libjin/Graphics/je_graphic_single.cpp b/src/libjin/Graphics/je_graphic_single.cpp deleted file mode 100644 index 96eb1af..0000000 --- a/src/libjin/Graphics/je_graphic_single.cpp +++ /dev/null @@ -1,82 +0,0 @@ -#include "shader/je_shader.h" - -#include "je_graphic_single.h" - -namespace JinEngine -{ - namespace Graphics - { - - GraphicSingle::GraphicSingle(int w, int h) - : Graphic(w, h) - { - } - - GraphicSingle::GraphicSingle(const Bitmap* bitmap) - : Graphic(bitmap) - { - } - - void GraphicSingle::render(int x, int y, float sx, float sy, float r, float ox, float oy) - { - gl.ModelMatrix.setTransformation(x, y, r, sx, sy, ox, oy); - int w = getWidth(), h = getHeight(); - static float vertexCoords[8]; - static float textureCoords[8]; - // Set vertex coordinates. - vertexCoords[0] = 0; vertexCoords[1] = 0; - vertexCoords[2] = 0; vertexCoords[3] = h; - vertexCoords[4] = w; vertexCoords[5] = h; - vertexCoords[6] = w; vertexCoords[7] = 0; - // Set texture coordinates. - textureCoords[0] = 0; textureCoords[1] = 0; - textureCoords[2] = 0; textureCoords[3] = 1; - textureCoords[4] = 1; textureCoords[5] = 1; - textureCoords[6] = 1; textureCoords[7] = 0; - // Set shader. - Shader* shader = Shader::getCurrentShader(); - shader->sendMatrix4(SHADER_MODEL_MATRIX, &gl.ModelMatrix); - shader->sendMatrix4(SHADER_PROJECTION_MATRIX, &gl.ProjectionMatrix); - shader->bindVertexPointer(2, GL_FLOAT, 0, vertexCoords); - shader->bindUVPointer(2, GL_FLOAT, 0, textureCoords); - - gl.bindTexture(getGLTexture()); - gl.drawArrays(GL_QUADS, 0, 4); - gl.bindTexture(0); - } - - void GraphicSingle::render(const Math::Quad& slice, int x, int y, float sx, float sy, float r, float ax, float ay) - { - static float vertexCoords[8]; - static float textureCoords[8]; - - // Set vertex coordinates. - vertexCoords[0] = 0; vertexCoords[1] = 0; - vertexCoords[2] = 0; vertexCoords[3] = slice.h; - vertexCoords[4] = slice.w; vertexCoords[5] = slice.h; - vertexCoords[6] = slice.w; vertexCoords[7] = 0; - // Set texture coordinates. - float slx = slice.x / mSize.w; - float sly = slice.y / mSize.h; - float slw = slice.w / mSize.w; - float slh = slice.h / mSize.h; - textureCoords[0] = slx; textureCoords[1] = sly; - textureCoords[2] = slx; textureCoords[3] = sly + slh; - textureCoords[4] = slx + slw; textureCoords[5] = sly + slh; - textureCoords[6] = slx + slw; textureCoords[7] = sly; - - gl.ModelMatrix.setTransformation(x, y, r, sx, sy, ax, ay); - - Shader* shader = Shader::getCurrentShader(); - shader->sendMatrix4(SHADER_MODEL_MATRIX, &gl.ModelMatrix); - shader->sendMatrix4(SHADER_PROJECTION_MATRIX, &gl.ProjectionMatrix); - shader->bindVertexPointer(2, GL_FLOAT, 0, vertexCoords); - shader->bindUVPointer(2, GL_FLOAT, 0, textureCoords); - - gl.bindTexture(getGLTexture()); - gl.drawArrays(GL_QUADS, 0, 4); - gl.bindTexture(0); - } - - } // namespace Graphics -} // namespace JinEngine
\ No newline at end of file |