https://github.com/zzxzzk115/galaxyengine
Galaxy is a game engine written in C++ with many modern features.
https://github.com/zzxzzk115/galaxyengine
cpp17 game-engine-3d vulkan-game-engine
Last synced: 7 months ago
JSON representation
Galaxy is a game engine written in C++ with many modern features.
- Host: GitHub
- URL: https://github.com/zzxzzk115/galaxyengine
- Owner: zzxzzk115
- License: gpl-3.0
- Created: 2023-09-26T17:34:44.000Z (over 2 years ago)
- Default Branch: master
- Last Pushed: 2023-10-28T00:29:23.000Z (about 2 years ago)
- Last Synced: 2025-05-29T17:20:35.917Z (8 months ago)
- Topics: cpp17, game-engine-3d, vulkan-game-engine
- Language: C++
- Homepage:
- Size: 3.01 MB
- Stars: 1
- Watchers: 1
- Forks: 0
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# Galaxy
🚀Galaxy is a cross-platform 3D game engine.
> Galaxy is still under development from scratch.
## Prerequisites
To build **🚀Galaxy**, you must first install the following tools.
### Windows 10/11
- Visual Studio 2019 (or above) with C++ Desktop Development Environment
- CMake 3.20 (or above)
- Git 2.1 (or above)
- Vulkan SDK 1.3.261.1 (or above)
### Ubuntu 22.04 or above (Linux or WSL2)
Install prerequisite packages:
```bash
wget -qO- https://packages.lunarg.com/lunarg-signing-key-pub.asc | sudo tee /etc/apt/trusted.gpg.d/lunarg.asc
sudo wget -qO /etc/apt/sources.list.d/lunarg-vulkan-jammy.list http://packages.lunarg.com/vulkan/lunarg-vulkan-jammy.list
sudo apt-get update
sudo apt-get install build-essential cmake git clang libx11-dev libxrandr-dev libxrender-dev libglvnd-dev libxinerama-dev libxcursor-dev libxi-dev mesa-vulkan-drivers vulkan-sdk
```
### MacOS
- XCode 13 (or above)
- CMake 3.20 (or above)
- Git 2.1 (or above)
- Vulkan SDK 1.3.261.1 (or above)
## Build Galaxy
Clone this repository:
```bash
git clone --recursive git@github.com:zzxzzk115/GalaxyEngine.git
```
### Build on Windows
Build it automatically:
Just double-click `BuildWindows.bat ` or you can simply use Jetbrains CLion to debug or release.
Build it manually:
```bash
cmake -S . -B build
```
Then open the generated solution file with Visual Studio.
### Build on Linux / WSL2
Build it automatically:
```bash
chmod +x *.sh && ./BuildLinux.sh
```
### Build on MacOS
Build it automatically:
```bash
chmod +x *.sh && ./BuildMacOS.sh
```
Build it manually:
```bash
cmake -S . -B build -G "Xcode"
```
Then open the generated project file with XCode.
## Acknowledgments
We would like to thank the following projects for their invaluable contribution to our work:
- [Hazel](https://github.com/TheCherno/Hazel) (Game Engine & [Tutorials](https://www.youtube.com/watch?v=JxIZbV_XjAs&list=PLlrATfBNZ98dC-V-N3m0Go4deliWHPFwT))
- [Piccolo](https://github.com/BoomingTech/Piccolo) (Game Engine & [Tutorials](https://space.bilibili.com/512313464/channel/collectiondetail?sid=292637))
- [GameEngineFromScratch](https://github.com/netwarm007/GameEngineFromScratch) (Game Engine & [Tutorials](https://zhuanlan.zhihu.com/c_119702958))
- [gamemachine](https://github.com/Froser/gamemachine) (Game Engine & [Tutorials](https://www.zhihu.com/column/c_1033300557322121216))
- [AsunaEngine](https://github.com/xiaoshichang/AsunaEngine) (Game Engine & [Tutorials](https://www.zhihu.com/column/c_1352653422265643008))
- [levk](https://github.com/karnkaul/levk) (Game Engine)
- [FlaxEngine](https://github.com/FlaxEngine/FlaxEngine) (Game Engine)
- [glfw](https://github.com/glfw/glfw) (Window Abstraction)
- [imgui](https://github.com/ocornut/imgui) (GUI)
- [spdlog](https://github.com/gabime/spdlog) (Logger)
## License
This project is licensed under the [GPLv3](https://github.com/zzxzzk115/GalaxyEngine/blob/master/LICENSE) license.