Oxygen Engine is cross-platform application engine written in C++
Our vision is to provide a general framework for applications (mainly targeted for games and rendering applications) comprised of:
- Scene hierarchy management
- 3D Rendering
- Graphical user interface (GUI)
- Logger utils
- Virtual file system
🔨 Building and installation
💽 Install precompiled releases
For Debian based distributions (e.g. Debian, Ubuntu, Linux Mint, etc...), we provide a package registry that can be used by tools like apt
# Add registry
sudo curl https://git.dbn.re/api/packages/OxygenEngine/debian/repository.key -o /etc/apt/keyrings/OxygenEngine.asc
echo "deb [signed-by=/etc/apt/keyrings/OxygenEngine.asc] https://git.dbn.re/api/packages/OxygenEngine/debian stable main" | sudo tee -a /etc/apt/sources.list.d/OxygenEngine.list
sudo apt update
# Install Oxygen Engine
sudo apt install oxygen-engine
- Note
- To get the last development version, use
stable dev instead of stable main
-
The development version is based on the
dev branch and might not be always stable!
-
Is is mainly provided for developers and those who like to live on the edge. As a user, you might prefer to stick to the latest release
Fedora based distributions (CentOS, Rocky Linux, ...) packages / Windows installers are planned but not available yet, please build from source
🛠️ Build from source (for debugging and development)
# Install required dependencies
sudo apt install libphysfs1 libglm-dev libglfw3
# Clone the repository
git clone git@dbn.re:OxygenEngine/OxygenEngine.git
# Build and install Oxygen Engine
cmake -S OxygenEngine -B <build-dir>
cmake --build <build-dir> --parallel
sudo cmake --install <build-dir>
🚀 How to use
After being installed, Oxygen Engine can be linked against by using:
find_package(OxygenEngine REQUIRED)
target_link_libraries(my_target OxygenEngine)
For a more complete installation instructions + tutorials, take a look at the tutorials
📜 License
Oxygen Engine is licensed under the MIT License - see the LICENSE file for details
Extensions in ext folder are released under various licenses based on the extension, see the list for details
In a nutshell: If an extension relies on an external library / code, its released under that one's license. Otherwise its released under the same license as Oxygen Engine