diff options
Diffstat (limited to 'src/engine.cpp')
-rw-r--r-- | src/engine.cpp | 16 |
1 files changed, 5 insertions, 11 deletions
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<bool()> 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<engine::math::Matrix4, 2> 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<engine::math::Matrix4, 1> mats{{ + transform_mat * scale_mat, }}; auto pre_final_mat = final_transform_mat * engine::math::Matrix4::projection(static_cast<float>(renderer.height()) / static_cast<float>(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<engine::o3d::Vertex4> pts; |