6 releases
Uses old Rust 2015
0.1.5 | Jan 27, 2016 |
---|---|
0.1.4 | Jan 13, 2016 |
#52 in #amethyst
22 downloads per month
18KB
205 lines
Contains (Zip file, 2KB) new_project.zip
Amethyst-CLI
Command-line interface for creating and deploying Amethyst game projects. This project is a work in progress and very incomplete; pardon the dust!
Usage
The CLI interface is intentionally very similar to Cargo, so it is easily
intelligible to Rustaceans. Unfortunately, it is very limited at the moment in
terms of features. Below are the subcommands hacked together implemented so
far.
new
Generates an empty game project, a fresh white canvas for your next masterpiece. The default directory structure is laid out like this:
project/
├── Cargo.toml
├── resources
│ ├── config.yml
│ ├── entities/
│ ├── input.yml
│ └── prefabs/
└── src
└── main.rs
build
Compiles the current project. It's currently just a frontend for cargo build
,
but more features are in the works, like Lua or mruby script
precompilation and offline GPU shader compilation for APIs that support it.
And no, you're not dreaming. The --release
flag doesn't work yet.
clean
Removes the target
directory. Again, just like in Cargo. One day, this will
have switches whether or not to clear out said precompiled scripts or cached
shader program bytecode.
run
Runs the main binary of the project. A frontend to cargo run
. Proposed extra
features include real-time profiling and debugging, and manual skipping of
levels when playtesting. Oh, and --release
doesn't work here yet either.
What's missing?
deploy
Performs a clean rebuild of the game and engine, runs any unit and integration
tests if there are any, zips up the resources
directory, and places it and
the game binary in a directory called deployed
.
module
Grabs forthcoming Amethyst engine modules (e.g. rendering, scripting, physics,
etc.) from either crates.io or GitHub, configures your Cargo.toml
and
modifies the resources
directory accordingly. Once a new module is installed
and configured, just drop your assets into the appropriate folders and you can
start writing your game logic.
Contributing
Amethyst is an open-source project that values community contribution. Pull requests are welcome!
We assume you have granted non-exclusive right to your source code under the
GNU General Public License 3.0 and you have processed your code with rustfmt
prior to
submission. If you want to be known as an author, please add your name to the
AUTHORS.md file in the pull request.
Dependencies
~3MB
~51K SLoC