diff options
author | hnOsmium0001 <[email protected]> | 2022-05-08 00:55:04 -0700 |
---|---|---|
committer | hnOsmium0001 <[email protected]> | 2022-05-08 00:55:04 -0700 |
commit | 184f7b71518d26bd4f948d6ef070d8863b430a78 (patch) | |
tree | dcb151cba7192fc5825c88044204398203a94db1 /source/SceneThings.cpp | |
parent | 37baa006649c6ddac40207e3fdc1599407179a76 (diff) |
Fix performing translation in multiple places
- Camera: project matrix shouldn't need to handle eye position
- SimpleGeometryObject: mesh coordinates should be local
Diffstat (limited to 'source/SceneThings.cpp')
-rw-r--r-- | source/SceneThings.cpp | 13 |
1 files changed, 6 insertions, 7 deletions
diff --git a/source/SceneThings.cpp b/source/SceneThings.cpp index ca5f60d..3fa0436 100644 --- a/source/SceneThings.cpp +++ b/source/SceneThings.cpp @@ -47,7 +47,6 @@ std::span<const RenderObject> SimpleGeometryObject::GetRenderObjects() const { Vertex_PTC vertices[4 /*vertices per face*/ * 6 /*faces*/]; uint16_t indices[3 /*indices per triangle*/ * 2 /*triangles per face*/ * 6 /*faces*/]; - auto pos = GetPos(); auto extents = mSize / 2.0f; int faceGenVerticesIdx = 0; @@ -89,16 +88,16 @@ std::span<const RenderObject> SimpleGeometryObject::GetRenderObjects() const { indices[faceGenIndicesIdx++] = startVertIdx + kBottomRight; }; for (int xDir : { -1, 1 }) { - float x = pos.x + xDir * extents.x; - GenerateFace(glm::vec3(x, pos.y, pos.z), glm::vec3(0, 0, extents.z), glm::vec3(0, extents.y, 0), mXFaceColor); + float x = xDir * extents.x; + GenerateFace(glm::vec3(x, 0, 0), glm::vec3(0, 0, extents.z), glm::vec3(0, extents.y, 0), mXFaceColor); } for (int yDir : { -1, 1 }) { - float y = pos.y + yDir * extents.y; - GenerateFace(glm::vec3(pos.x, y, pos.z), glm::vec3(extents.x, 0, 0), glm::vec3(0, 0, extents.z), mYFaceColor); + float y = yDir * extents.y; + GenerateFace(glm::vec3(0, y, 0), glm::vec3(extents.x, 0, 0), glm::vec3(0, 0, extents.z), mYFaceColor); } for (int zDir : { -1, 1 }) { - float z = pos.z + zDir * extents.z; - GenerateFace(glm::vec3(pos.x, pos.y, z), glm::vec3(extents.x, 0, 0), glm::vec3(0, extents.y, 0), mZFaceColor); + float z = zDir * extents.z; + GenerateFace(glm::vec3(0, 0, z), glm::vec3(extents.x, 0, 0), glm::vec3(0, extents.y, 0), mZFaceColor); } for (auto& vert : vertices) { |