- 3D model loading (.fbx)
- 3D game engine like GUI
- 3D Gizmos (only translation)
- Outline for picking objects (by using jump flood algorithm)
- Shadow (Directional light)
- Load and apply texture to a game object
- Physically Based Rendering (PBR)
- 3D grid
- Marching Cube (Metaball)
- Terrain Editor (Sculpting and removing)
- SPH Simulation with Screen Space Rendering on GPU (Curvature Flow)
- Cloth Simulation (Small Steps in Physics Simulation, A Survey on Position Based Dynamics, 2017)
- C++17
- OpenGL 3.3
- glm
- ImGui
- stb library
- Learn OpenGL
- Game Programming in C++
- Real Time Rendering, 4th Edition
- Computer Graphics Principles and Practice, 3/E
- Physically Based Rendering, 3rd edition
- W/A/S/D to move
- Right mouse click to rotate the camera
- Left mouse click for object picking
- Shadow (Point light)
- Skeleton Animation
- Environment mapping
-
enhanced fbx loader - Bump mapping
-
Marching Cube -
Terrain -
3D gizmos for rotation and scale -
Optimize SPH Simulation (multi-thread) - Cloth - Object Collision