diff options
author | chai <chaifix@163.com> | 2019-01-12 21:48:33 +0800 |
---|---|---|
committer | chai <chaifix@163.com> | 2019-01-12 21:48:33 +0800 |
commit | 8b00d67febf133e89f6a0bfabc41feed555dc4a9 (patch) | |
tree | fe48ef17c250afa40c2588300fcdb5920dba6951 /src/libjin/graphics/je_mesh.cpp | |
parent | a907c39756ef6b368d06643afa491c49a9044a8e (diff) |
*去掉文件前缀je_
Diffstat (limited to 'src/libjin/graphics/je_mesh.cpp')
-rw-r--r-- | src/libjin/graphics/je_mesh.cpp | 78 |
1 files changed, 0 insertions, 78 deletions
diff --git a/src/libjin/graphics/je_mesh.cpp b/src/libjin/graphics/je_mesh.cpp deleted file mode 100644 index dc67f1e..0000000 --- a/src/libjin/graphics/je_mesh.cpp +++ /dev/null @@ -1,78 +0,0 @@ -#include "../math/je_math.h" - -#include "je_mesh.h" -#include "shaders/je_shader.h" - -using namespace JinEngine::Math; -using namespace JinEngine::Graphics::Shaders; - -namespace JinEngine -{ - namespace Graphics - { - - Mesh::Mesh() - : mGraphic(nullptr) - { - } - - void Mesh::setGraphic(const Graphic* graphic) - { - mGraphic = graphic; - } - - void Mesh::pushVertex(float x, float y, float u, float v, Color color) - { - Vertex vert; - vert.xy.x() = x; vert.xy.y() = y; - vert.uv.u() = u; vert.uv.v() = v; - vert.color = color; - pushVertex(vert); - } - - void Mesh::pushVertex(const Vertex& vert) - { - mVertices.push_back(vert); - // Update bound - if (mVertices.size() == 2) - { - const Vertex& v0 = mVertices[0]; - mBound.l = min(v0.xy.x(), vert.xy.x()); - mBound.r = max(v0.xy.x(), vert.xy.x()); - mBound.t = min(v0.xy.y(), vert.xy.y()); - mBound.b = max(v0.xy.y(), vert.xy.y()); - } - else - { - float x = vert.xy.x(), y = vert.xy.y(); - mBound.l = x < mBound.l ? x : mBound.l; - mBound.r = x > mBound.r ? x : mBound.r; - mBound.t = y < mBound.t ? y : mBound.t; - mBound.b = y > mBound.b ? y : mBound.b; - } - } - - void Mesh::render(float x, float y, float sx, float sy, float r, float ox, float oy) const - { - if (mGraphic == nullptr || mVertices.size() == 0) - return; - - Math::Matrix modelViewMatrix = gl.getModelViewMatrix(x, y, sx, sy, r, ox, oy); - - Shader* shader = gl.getShader(); - shader->begin() - .sendMatrix4(SHADER_MODELVIEW_MATRIX, &modelViewMatrix) - .sendMatrix4(SHADER_PROJECTION_MATRIX, &gl.getProjectionMatrix()) - .uploadVertices(2, GL_FLOAT, sizeof(Vertex), &(mVertices[0].xy)) - .uploadUV(2, GL_FLOAT, sizeof(Vertex), &(mVertices[0].uv)) - .uploadColor(4, GL_UNSIGNED_BYTE, sizeof(Vertex), &(mVertices[0].color), GL_TRUE); - - gl.bindTexture2D(mGraphic->getGLTexture()); - gl.drawArrays(GL_POLYGON, 0, mVertices.size()); - - - shader->end(); - }; - - } // namespace Graphics -} // namespace JinEngine
\ No newline at end of file |