mirror of
https://github.com/orange-cpp/omath.git
synced 2026-04-18 18:43:27 +00:00
retructurized examples
This commit is contained in:
10
examples/example_proj_mat_builder/CMakeLists.txt
Normal file
10
examples/example_proj_mat_builder/CMakeLists.txt
Normal file
@@ -0,0 +1,10 @@
|
||||
project(example_projection_matrix_builder)
|
||||
|
||||
add_executable(${PROJECT_NAME} example_proj_mat_builder.cpp)
|
||||
set_target_properties(
|
||||
${PROJECT_NAME}
|
||||
PROPERTIES CXX_STANDARD 23
|
||||
ARCHIVE_OUTPUT_DIRECTORY "${CMAKE_SOURCE_DIR}/out/${CMAKE_BUILD_TYPE}"
|
||||
LIBRARY_OUTPUT_DIRECTORY "${CMAKE_SOURCE_DIR}/out/${CMAKE_BUILD_TYPE}"
|
||||
RUNTIME_OUTPUT_DIRECTORY "${CMAKE_SOURCE_DIR}/out/${CMAKE_BUILD_TYPE}")
|
||||
target_link_libraries(${PROJECT_NAME} PRIVATE omath::omath)
|
||||
@@ -0,0 +1,40 @@
|
||||
//
|
||||
// Created by Vlad on 3/19/2025.
|
||||
//
|
||||
|
||||
|
||||
#include <iostream>
|
||||
#include <print>
|
||||
#include <omath/engines/opengl_engine/formulas.hpp>
|
||||
|
||||
|
||||
int main()
|
||||
{
|
||||
std::println("OMATH Projection Matrix Builder");
|
||||
|
||||
float fov = 0;
|
||||
float near = 0;
|
||||
float far = 0;
|
||||
float view_port_width = 0;
|
||||
float view_port_height = 0;
|
||||
|
||||
std::print("Enter camera fov: ");
|
||||
std::cin >> fov;
|
||||
|
||||
std::print("Enter camera z near: ");
|
||||
std::cin >> near;
|
||||
|
||||
std::print("Enter camera z far: ");
|
||||
std::cin >> far;
|
||||
|
||||
std::print("Enter camera screen width: ");
|
||||
std::cin >> view_port_width;
|
||||
|
||||
std::print("Enter camera screen height: ");
|
||||
std::cin >> view_port_height;
|
||||
|
||||
const auto mat =
|
||||
omath::opengl_engine::calc_perspective_projection_matrix(fov, view_port_width / view_port_height, near, far);
|
||||
|
||||
std::print("{}", mat.to_string());
|
||||
};
|
||||
Reference in New Issue
Block a user