From 824aa5562864ca90ea903e2fa7d99459bbdf3a0b Mon Sep 17 00:00:00 2001 From: vimene Date: Sat, 9 Dec 2023 08:57:38 +0100 Subject: fixed perspective, added plane --- src/engine.cpp | 16 +++++----------- 1 file changed, 5 insertions(+), 11 deletions(-) (limited to 'src/engine.cpp') diff --git a/src/engine.cpp b/src/engine.cpp index adfe43a..96dfd7b 100644 --- a/src/engine.cpp +++ b/src/engine.cpp @@ -54,22 +54,17 @@ static void usage_error_exit() { } static void scene_main(engine::Renderer& renderer, engine::math::Matrix4 final_transform_mat, std::function update_frame) { - float dist = 4.f; + float dist = 1.5f; float rad = 5.f; bool cont = true; engine::o3d::Scene scene{ {{0.f, 0.f, rad * dist}, 0.f, 0.f, 0.f}, // camera { // objects engine::o3d::Object3D{ - engine::o3d::Mesh::cube(), + engine::o3d::Mesh::plane(), -rad * engine::math::Vector3(.5f, .5f, .5f), rad, 0.f, 0.f, 0.f }, - engine::o3d::Object3D{ - engine::o3d::Mesh::cube(), - +rad * engine::math::Vector3(.5f, .5f, .5f), - rad, 0.f, 0.f, 0.f - }, } }; auto scale_mat = engine::math::Matrix4::scale(rad); @@ -84,13 +79,12 @@ static void scene_main(engine::Renderer& renderer, engine::math::Matrix4 final_t * engine::math::Matrix4::rot_x(-scene.camera.rot_x) * engine::math::Matrix4::rot_y(-scene.camera.rot_y) * engine::math::Matrix4::rot_z(-scene.camera.rot_z); - std::array mats{{ - transform_mat * engine::math::Matrix4::translate(engine::math::Vector3{-.5f * rad, -.5f * rad, -.5f * rad}) * scale_mat, - transform_mat * engine::math::Matrix4::translate(engine::math::Vector3{+.5f * rad, +.5f * rad, +.5f * rad}) * scale_mat, + std::array mats{{ + transform_mat * scale_mat, }}; auto pre_final_mat = final_transform_mat * engine::math::Matrix4::projection(static_cast(renderer.height()) / static_cast(renderer.width()), 2.f, 50.f); - for (int i = 0; i < 2; i++) { + for (int i = 0; i < 1; i++) { auto final_mat = pre_final_mat * mats[i]; const auto& mesh = scene.objs[i].mesh; std::vector pts; -- cgit v1.2.3