AmethystGame Engine

Data-driven game engine written in Rust

High Performance

Amethyst uses a rigorous Entity Component System (ECS) architecture to organize game logic. This abstracts away some of the parallelism work, allowing easier exploitation of multi-threading in games. The ECS is rich in features and very efficient, as it never does any memory locking while remaining entirely thread-safe.


Built for 2D and 3D

Amethyst uses gfx-rs to render graphics with Vulkan or Metal. It is meant to be used for 2D and 3D, with various utilities for both types of games. It should be beginner friendly but also allow more advanced uses such as custom render passes and GLSL shaders.


A Stable Foundation

Thanks to the Rust programming language, Amethyst uses all CPU cores to run its internals and logic. A lot of optimizations have yet to be done, but the current status is already showing great potential.


Free with very permissive usage

Amethyst is open source and free software. You can use, read, modify, distribute its source code under the permissive MIT and Apache 2.0 licenses, and it is important to us that it remains that way. The strength of the community keeps Amethyst going forward, through the contributions of awesome people. Come visit us on GitHub!


Amethyst is supported by its community and the following companies:

sponsor: netlify
sponsor: digitalocean

Get Started

You can easily get started using our book guide which goes through the basics of creating a game using Amethyst. If you need any help on the way, feel free to visit our community forums and our Discord server!