Campfire is an in-progress game engine built using OpenGL and Vulkan. Most of the engine's features are currently disabled, as we work through switching to Vulkan, but are available on the OpenGL branch.
Vulkan SDK: 1.2.148.1
git clone --recursive https://github.com/danhuynh0803/Campfire
cd Campfire
cd Build
Now generate a project file or makefile for your platform. If you want to use a particular IDE, make sure it is installed; don't forget to set the Start-Up Project in Visual Studio or the Target in Xcode.
# UNIX Makefile
cmake ..
make -j4
# Microsoft Windows
cmake -G "Visual Studio 16 2019" ..
Functionality | Library |
---|---|
Mesh Loading | assimp |
Physics | bullet |
OpenGL Function Loader | glad |
Windowing and Input | glfw |
OpenGL Mathematics | glm |
Texture Loading | stb |
Logging | spdlog |
Scene Loading/Saving | json |
GUI | imgui |
Audio | FMOD |
Scripting | Lua 5.4.0 |
Entity Component System | entt |
- Editor Layer
- Vulkan Layer
- Hierarchy Widget
- Inspector Widget
- Transform Widget
- Asset Browser
- Implemented the Editor Layer with various functionalities such as scene management, user input processing, and rendering.
- Developed the Vulkan Layer for rendering using Vulkan API.
- Created the Hierarchy Widget for displaying and managing the scene hierarchy.
- Built the Inspector Widget for inspecting and modifying entity properties.
- Designed the Transform Widget for manipulating entity transforms.
- Developed the Asset Browser for browsing and managing assets.