-
Desktop App
-
Language: C++17
-
Graphics API: OpenGL 3.3
-
Limitations
- There are some shortcomings in the architecture (e.g., Frame Graph, Resource Alias, Multi-Mesh, Multi-Threading, etc.).
- The reason is that I decided there would be more to gain by implementing these features later with modern APIs such as Vulkan, Metal, and DX12.
- So I focused on rendering effects and did not allocate additional time to the architecture before concluding the project.
-
Implementing Effects
-
Camera Control UX
- Mouse: Rotate view-space basis
- Keybord
- W: Move to Z of view-space
- S: Move to -Z of view-space
- A: Move to -X of view-space
- D: Move to X of view-space
- CMake 3.2
- vcpkg
./vcpkg install glad
./vcpkg install glfw
./vcpkg install ASSIMP
./vcpkg install stb
mkdir build
cd build
cmake .. -DCMAKE_TOOLCHAIN_FILE="{your_vcpkg_path}/scripts/buildsystems/vcpkg.cmake"
make
Rasterization Rendering
./app_pbr
Ray Tracing Rendering
./app_ray_trace
Thanks to https://learnopengl.com/




