Quark
Quark copied to clipboard
My personal game engine for learning purpose
____ _ _ __ _____ _ ___
/ __ \ | | | | /\ | __ \ | |/ /
| | | | | | | | / \ | |__) | | ' /
| | | | | | | | / /\ \ | _ / | <
| |__| | | |__| | / ____ \ | | \ \ | . \
\___\_\ \____/ /_/ \_\ |_| \_\ |_|\__\
Quark Game Engine
Quark is my personal learning project.
Environment
- Windows, MacOS
- C++20( have been tested on MSVC and Clang)
- CMake 3.10+
- Vulkan 1.2+
Build Editor
- Make sure the "VULKAN_SDK" environment variable have been setted correctly
- Go to https://www.lunarg.com/vulkan-sdk and download the vulkan sdk
git clone --recursive https://github.com/XieYHccc/Quark.gitcd Quarkmkdir buildcd buildcmake ..makeor open .sln
Feature
- Render Hardware Interface
- Vulkan Backend
- 3D Scene Renderer (Forward Renderer)
- Entity Component System
- Asset System
- Event System
- Job System
- UI with ImGui
- Scene Editor Tool
- KTX2 Transcoding
Todo
- [x] Shader System
- [x] Mouse Picking in Scene Editor
- [ ] Quark Customized Asset Serialization
- [ ] Mesh
- [ ] Texture
- [ ] Material
- [x] Skeleton Animation
- [ ] Render Graph System
- [ ] D3D12 Rendering Backend
- [ ] PBR Rendering
- [ ] Directional Light
- [ ] Point Light
- [ ] Plane Light
- [ ] Scriping System
- [ ] Multithreading architecture (Rendering and Game Logitc)
- [ ] Dedicated Asset Loading thread
- [ ] Physics System
- [ ] Ray Tracing
- [ ] Bindless Model
Current Editor Looklike
