66 releases (19 breaking)
|0.20.0||Jul 4, 2021|
|0.19.1||May 3, 2021|
|0.14.2||Sep 24, 2020|
|0.12.2||Jul 23, 2020|
|0.3.17||Jul 28, 2019|
#30 in Game dev
266 downloads per month
Used in 24 crates (23 directly)
Oxygengine is using
hecs as its ECS framework to achieve better performance,
reduce application complexity and help decouple state from the logic as much as
possible. More about
hecs and ECS here: https://github.com/Ralith/hecs
Make sure that you have latest
oxygengine-ignite binary installed
cargo install oxygengine-ignite) - this binary is a set of vital tools that
will govern managing most of your project.
Create Oxygen Engine project with
cd /path/to/parent/ oxygengine-ignite new <project-name>
Which will create default web game project using
You can create projects with different presets:
- desktop-headless-game - typical server-like project without graphics.
cd /path/to/parent/ oxygengine-ignite new <project-name> -p desktop-headless-game
You can also tell it where to create project:
oxygengine-ignite new <project-name> -d /path/to/parent/
cargo install oxygengine-ignite --forced OXY_UPDATE_PRESETS=1 oxygengine-ignite --help
oxygengineversion either in
Cargo.tomlor by calling:
- upgrading from versions before 0.12.0 requires to create new project with latest
ignite tool, then copy by hand your source files to the new project sources,
as well as put assets from old project
/static/assetsdirectory into new project
/assetsdirectory, preferably using new way of assets directory structure (so you won't have to modify pipeline.json file a lot).
- install SCCACHE, a tool for caching and sharing prebuilt dependencies between
multiple game projects (https://github.com/mozilla/sccache):
cargo install sccache
- add these lines to the
[package.metadata] # path to the sccache binary sccache_bin = "sccache.exe" # path to the sccache cache directory sccache_dir = "D:\\sccache"
From now on you will have to wait for full long engine build only once, for any other new game project you create, it will perform first compilation in matter of minute, not 20.
Launch live development with active code recompilation and assets baking in the background on change:
additionally to allow it to start http server to serve your build files in the browser, run:
oxygengine-ignite live -- -p 8080
files will be served from: http://localhost:8080.
Build binaries in debug or release mode (binaries will be put in
with debug symbols:
optimized release mode:
oxygengine-ignite build -p release
Build only the crate:
Package application build with assets ready for distribution (package files will be put in
this command will run release build, assets pipeline and bundle package.
To produce a debug mode package you have to run:
oxygengine-ignite package -d
Current milestone progress: https://github.com/PsichiX/Oxygengine/projects/1