1
0

Fix getScale()

* Fix getScale()

* Create blender_cube_scaled.gltf

* Add scaling unit test

* Remove comment

* Undo github's silent reversion of 1,1,1
This commit is contained in:
jordan4ibanez
2023-12-01 20:48:05 -05:00
committed by Josiah VanderZee
parent f33b8a612d
commit 777ec9d130
4 changed files with 139 additions and 11 deletions

View File

@@ -143,6 +143,27 @@ TEST_CASE("invalid JSON returns nullptr") {
CHECK(sm.getMesh() == nullptr);
}
TEST_CASE("blender cube scaled") {
ScopedMesh sm("source/Irrlicht/tests/assets/blender_cube_scaled.gltf");
REQUIRE(sm.getMesh() != nullptr);
REQUIRE(sm.getMesh()->getMeshBufferCount() == 1);
SECTION("Scaling is correct") {
REQUIRE(sm.getMesh()->getMeshBuffer(0)->getVertexCount() == 24);
const auto* vertices = reinterpret_cast<irr::video::S3DVertex*>(
sm.getMesh()->getMeshBuffer(0)->getVertices());
CHECK(vertices[0].Pos == irr::core::vector3df{-150.0f, -1.0f, -21.5f});
CHECK(vertices[3].Pos == irr::core::vector3df{-150.0f, 1.0f, -21.5f});
CHECK(vertices[6].Pos == irr::core::vector3df{-150.0f, -1.0f, 21.5f});
CHECK(vertices[9].Pos == irr::core::vector3df{-150.0f, 1.0f, 21.5f});
CHECK(vertices[12].Pos == irr::core::vector3df{150.0f, -1.0f, -21.5f});
CHECK(vertices[15].Pos == irr::core::vector3df{150.0f, 1.0f, -21.5f});
CHECK(vertices[18].Pos == irr::core::vector3df{150.0f, -1.0f, 21.5f});
CHECK(vertices[21].Pos == irr::core::vector3df{150.0f, 1.0f, 21.5f});
}
}
TEST_CASE("snow man") {
ScopedMesh sm("source/Irrlicht/tests/assets/snow_man.gltf");
REQUIRE(sm.getMesh() != nullptr);