Atmospheric Engine is a cross-platform 3D game engine developed in C++. The project is a labor of love, acting as my stepping stone to gain a deeper understanding of graphics programming concepts and practices.
- PBR texturing, point/directional shadows, post-processing effects
- Heightmap terrain with collision and shader-based dynamic tessellation
- Custom key binding system
- Immediate-mode debug UIs for engine subsystems
- Simple job system implementation
- Apple Silicon
- Apple Intel (unsure?)
- Windows (broken)
- Linux (planned)
Follow the steps below to build the engine:
- Install prerequsites:
- Clone this repository
git clone --recurse-submodules https://github.com/painfulexistence/AtmosphericEngine.git
- Setup Vcpkg
cd AtmosphericEngine
./vcpkg/bootstrap-vcpkg.sh -disableMetrics
- Build the project with CMake
cmake -S . -B build
cmake --build build
The engine includes four example projects to help you get started. Please note that the API is still evolving and may change in the future. To get started, you can check out the HelloWorld example.
Examples: