From adc6d81d78b3ae24ae16c9d233864432ec09a4cb Mon Sep 17 00:00:00 2001 From: sotech117 Date: Wed, 13 Dec 2023 04:52:41 -0500 Subject: cleanup parser --- src/physics/physics.cpp | 1 - src/raytracer/raytracer.cpp | 2 +- src/utils/sceneparser.cpp | 4 +--- src/utils/sceneparser.h | 1 - 4 files changed, 2 insertions(+), 6 deletions(-) (limited to 'src') diff --git a/src/physics/physics.cpp b/src/physics/physics.cpp index 3cba57c..9c9a513 100644 --- a/src/physics/physics.cpp +++ b/src/physics/physics.cpp @@ -73,6 +73,5 @@ void Physics::updateShapePositions(std::vector &shapes) for (auto &shape : shapes) { shape.translation4d += shape.velocity; - shape.inverseTranslation4d -= shape.velocity; } } \ No newline at end of file diff --git a/src/raytracer/raytracer.cpp b/src/raytracer/raytracer.cpp index f9bef4f..558877a 100644 --- a/src/raytracer/raytracer.cpp +++ b/src/raytracer/raytracer.cpp @@ -91,7 +91,7 @@ glm::vec4 RayTracer::getPixelFromRay( float minDist = FINF; // shoot a ray at each shape for (const RenderShapeData &shape : scene.getShapes()) { - glm::vec4 pObject = Vec4Ops::inverseTransformPoint4(pWorld, shape.inverseCTM, shape.inverseTranslation4d); + glm::vec4 pObject = Vec4Ops::inverseTransformPoint4(pWorld, shape.inverseCTM, -shape.translation4d); glm::vec4 dObject = glm::normalize(Vec4Ops::inverseTransformDir4(dWorld, shape.inverseCTM)); // std::cout << "pObject: " << pObject.x << ", " << pObject.y << ", " << pObject.z << ", " << pObject.w << std::endl; // std::cout << "dObject: " << dObject.x << ", " << dObject.y << ", " << dObject.z << ", " << dObject.w << std::endl; diff --git a/src/utils/sceneparser.cpp b/src/utils/sceneparser.cpp index c601f0b..2cad55a 100644 --- a/src/utils/sceneparser.cpp +++ b/src/utils/sceneparser.cpp @@ -65,7 +65,7 @@ void initTree(SceneNode* currentNode, std::vector *shapes, std: } } - currentCTM *= glm::translate(glm::mat4(1.0f), glm::vec3(currentTranslation4d)); + // currentCTM *= glm::translate(glm::mat4(1.0f), glm::vec3(currentTranslation4d)); for(auto primitive : currentNode->primitives) { @@ -74,11 +74,9 @@ void initTree(SceneNode* currentNode, std::vector *shapes, std: .ctm = currentCTM, .translation4d = currentTranslation4d, .inverseCTM = glm::inverse(currentCTM), - .inverseTranslation4d = -currentTranslation4d, .velocity = primitive->velocity, }; shapes->push_back(rsd); - // } } // add the lights diff --git a/src/utils/sceneparser.h b/src/utils/sceneparser.h index 96803c9..65b0bc8 100644 --- a/src/utils/sceneparser.h +++ b/src/utils/sceneparser.h @@ -11,7 +11,6 @@ struct RenderShapeData { glm::mat4 ctm; // the cumulative transformation matrix glm::vec4 translation4d; // appended to the right of the ctm (for 4d translation) glm::mat4 inverseCTM; - glm::vec4 inverseTranslation4d; // appended to the right of the inverse ctm (for 4d translation) glm::vec4 velocity; }; -- cgit v1.2.3-70-g09d2