## File: README.md

[](https://github.com/FyroxEngine/Fyrox/blob/master/LICENSE.md)
[](https://github.com/FyroxEngine/Fyrox/actions/workflows/ci.yml)
[](https://crates.io/crates/fyrox)
[](https://docs.rs/Fyrox/)
[](https://discord.gg/xENF5Uh)
[](https://github.com/FyroxEngine/Fyrox)

A feature-rich, production-ready, general purpose 2D/3D game engine written in Rust with a scene editor.
_Formerly known as rg3d_

## [Learning materials](https://fyrox-book.github.io/)

[Read the official Fyrox book here.](https://fyrox-book.github.io/) It contains comprehensive information about many aspects of the engine, starting
by "how to build" and ending by various tutorials.

## Community

You can always ask your question in Discord server - [Join the Discord server](https://discord.gg/xENF5Uh), or directly in 
[Discussions](https://github.com/FyroxEngine/Fyrox/discussions).

## Examples

You can run examples directly in your web browser, the full list of demo projects is [available here](https://fyrox.rs/examples.html).
Source code for each demo project [can be found here](https://github.com/FyroxEngine/Fyrox-demo-projects).

## Support

If you want to support the development of the project, click the link below. Preferrable way is to use [Boosty](https://boosty.to/fyrox) - this way the money
will be available for the development immediately. Alternatively you can can use [Patreon](https://www.patreon.com/mrdimas), but in this case the money will
be on-hold for unknown period of time ([details are here](https://github.com/FyroxEngine/Fyrox/issues/363)).

## Contributing

Contributions are very welcome! See the [contributions guidelines](CONTRIBUTING.md) for more info. Check the [good first issue](https://github.com/FyroxEngine/Fyrox/issues?q=is%3Aissue+is%3Aopen+label%3A%22good+first+issue%22) label to 
see where you can help.

## Sponsors

The engine is supported by very generous people, their donations provides sustainable development of the engine:

[Brandon Thomas](https://www.patreon.com/user?u=34951681) | [Taylor C. Richberger](https://www.patreon.com/user/creators?u=60141723) | [Avery Wagar](https://www.patreon.com/user?u=41863848) |
[George Atkinson](https://www.patreon.com/user?u=61771027) | [Erlend Sogge Heggen](https://www.patreon.com/amethystengine/creators) | [Mitch Skinner](https://www.patreon.com/user/creators?u=60141723) | [ozkriff](https://www.patreon.com/ozkriff) | [Taylor Gerpheide](https://www.patreon.com/user/creators?u=32274918) |
[zrkn](https://www.patreon.com/user/creators?u=23413376) | [Aleks Row](https://www.patreon.com/user/creators?u=51907853) | [Edward L](https://www.patreon.com/user/creators?u=53507198) | [L.apz](https://www.patreon.com/user/creators?u=5448832) | [Luke Jones](https://www.patreon.com/flukejones) | [toyboot4e](https://www.patreon.com/user/creators?u=53758973) | [Vish Vadlamani](https://www.patreon.com/user/creators?u=42768509) |
[Alexey Kuznetsov](https://www.patreon.com/user?u=39375025) | [Daniel Simon](https://www.patreon.com/user/creators?u=43754885) | [Jesper Nordenberg](https://www.patreon.com/jesnor) | [Kornel](https://www.patreon.com/user?u=59867) | [Parham Gholami](https://www.patreon.com/user?u=33009238) | [Yuki Ishii](https://www.patreon.com/user/creators?u=9564103) |
[Joseph Catrambone](https://www.patreon.com/user?u=4738580) | [MGlolenstine](https://github.com/MGlolenstine) | [zamar lomax](https://www.patreon.com/user?u=65928523) | [Gheorghe Ugrik](https://www.patreon.com/user?u=54846813) |
[Anton Zelenin](https://www.patreon.com/user?u=62378966) | [Barugon](https://www.patreon.com/user?u=11344465) | [Tom Leys](https://www.patreon.com/user?u=222856) | [Jay Sistar](https://www.patreon.com/user?u=284041) | [tc](https://www.patreon.com/user?u=11268466) | [false](https://www.patreon.com/user?u=713537) | [BlueSkye](https://www.patreon.com/EmotionalSnow) |
[Ben Anderson](https://www.patreon.com/user/creators?u=14436239) | [Thomas](https://www.patreon.com/user?u=317826) | [Iulian Radu](https://www.patreon.com/user?u=8698230) | [Vitaliy (ArcticNoise) Chernyshev](https://www.patreon.com/user?u=2601918)

### JetBrains

JetBrains provided an open-source all-products license for their products which drastically helps in development of the engine.



_Copyright © 2000-2021 [JetBrains](https://jb.gg/OpenSource) s.r.o. JetBrains and the JetBrains logo are registered trademarks of JetBrains s.r.o._

---

## File: editor/README.md

# FyroxEd

Full-featured editor for [Fyrox engine](https://github.com/FyroxEngine/Fyrox). This is the basic library for the editor, 
it cannot be run as executable. See `editor-standalone` for this.

The main purpose of making the editor library is to use it with static plugins, see `scripting` example for more info.

---

## File: editor-standalone/README.md

# FyroxEd (standalone)

**WARNING:** Standalone version of the editor is not supported, use 
[project template generator](https://fyrox-book.github.io/fyrox/beginning/scripting.html) to utilize the full power
of the editor. Standalone version does not support plugins and scripts, it won't be update in next releases!

A standalone version of FyroxEd - native editor of [Fyrox engine](https://github.com/FyroxEngine/Fyrox). The standalone
version allows you only to create and edit scenes, but **not run your game in the editor**. Please see
[the book](https://fyrox-book.github.io/) to learn how to use the editor in different ways.

## How to install and run

To install the latest stable **standalone** version from crates.io use:

```shell
cargo install fyroxed
```

After that, you can run the editor by simply calling:

```shell
fyroxed
```

If you're on Linux, please make sure that the following dependencies are installed:

```shell
sudo apt install libxcb-shape0-dev libxcb-xfixes0-dev libxcb1-dev libxkbcommon-dev libasound2-dev
```

## Controls

- [Click] - Select
- [W][S][A][D] - Move camera
- [Space][Q]/[E] - Raise/Lower Camera
- [1] - Select interaction mode
- [2] - Move interaction mode
- [3] - Scale interaction mode
- [4] - Rotate interaction mode
- [Ctrl]+[Z] - Undo
- [Ctrl]+[Y] - Redo]()

---

## File: fyrox/README.md

[](https://github.com/FyroxEngine/Fyrox/blob/master/LICENSE.md)
[](https://github.com/FyroxEngine/Fyrox/actions/workflows/ci.yml)
[](https://github.com/FyroxEngine/Fyrox/actions/workflows/audit.yml)
[](https://deps.rs/repo/github/FyroxEngine/Fyrox)
[](https://crates.io/crates/fyrox)
[](https://docs.rs/Fyrox/)
[](https://discord.gg/xENF5Uh)
[](https://github.com/FyroxEngine/Fyrox)

A feature-rich, production-ready, general purpose 2D/3D game engine written in Rust with a scene editor.
_Formerly known as rg3d_

## [Learning materials](https://fyrox-book.github.io/)

[Read the official Fyrox book here.](https://fyrox-book.github.io/) It contains comprehensive information about many aspects of the engine, starting
by "how to build" and ending by various tutorials.

## Community

You can always ask your question in Discord server - [Join the Discord server](https://discord.gg/xENF5Uh), or directly in 
[Discussions](https://github.com/FyroxEngine/Fyrox/discussions).

## Examples

You can run examples directly in your web browser, the full list of demo projects is [available here](https://fyrox.rs/examples.html).
Source code for each demo project [can be found here](https://github.com/FyroxEngine/Fyrox-demo-projects).

## Support

If you want to support the development of the project, click the link below. Preferrable way is to use [Boosty](https://boosty.to/fyrox) - this way the money
will be available for the development immediately. Alternatively you can can use [Patreon](https://www.patreon.com/mrdimas), but in this case the money will
be on-hold for unknown period of time ([details are here](https://github.com/FyroxEngine/Fyrox/issues/363)).

## Contributing

Contributions are very welcome! See the [contributions guidelines](CONTRIBUTING.md) for more info. Check the [good first issue](https://github.com/FyroxEngine/Fyrox/issues?q=is%3Aissue+is%3Aopen+label%3A%22good+first+issue%22) label to 
see where you can help.

## Sponsors

The engine is supported by very generous people, their donations provides sustainable development of the engine:

[Brandon Thomas](https://www.patreon.com/user?u=34951681) | [Taylor C. Richberger](https://www.patreon.com/user/creators?u=60141723) | [Avery Wagar](https://www.patreon.com/user?u=41863848) |
[George Atkinson](https://www.patreon.com/user?u=61771027) | [Erlend Sogge Heggen](https://www.patreon.com/amethystengine/creators) | [Mitch Skinner](https://www.patreon.com/user/creators?u=60141723) | [ozkriff](https://www.patreon.com/ozkriff) | [Taylor Gerpheide](https://www.patreon.com/user/creators?u=32274918) |
[zrkn](https://www.patreon.com/user/creators?u=23413376) | [Aleks Row](https://www.patreon.com/user/creators?u=51907853) | [Edward L](https://www.patreon.com/user/creators?u=53507198) | [L.apz](https://www.patreon.com/user/creators?u=5448832) | [Luke Jones](https://www.patreon.com/flukejones) | [toyboot4e](https://www.patreon.com/user/creators?u=53758973) | [Vish Vadlamani](https://www.patreon.com/user/creators?u=42768509) |
[Alexey Kuznetsov](https://www.patreon.com/user?u=39375025) | [Daniel Simon](https://www.patreon.com/user/creators?u=43754885) | [Jesper Nordenberg](https://www.patreon.com/jesnor) | [Kornel](https://www.patreon.com/user?u=59867) | [Parham Gholami](https://www.patreon.com/user?u=33009238) | [Yuki Ishii](https://www.patreon.com/user/creators?u=9564103) |
[Joseph Catrambone](https://www.patreon.com/user?u=4738580) | [MGlolenstine](https://github.com/MGlolenstine) | [zamar lomax](https://www.patreon.com/user?u=65928523) | [Gheorghe Ugrik](https://www.patreon.com/user?u=54846813) |
[Anton Zelenin](https://www.patreon.com/user?u=62378966) | [Barugon](https://www.patreon.com/user?u=11344465) | [Tom Leys](https://www.patreon.com/user?u=222856) | [Jay Sistar](https://www.patreon.com/user?u=284041) | [tc](https://www.patreon.com/user?u=11268466) | [false](https://www.patreon.com/user?u=713537) | [BlueSkye](https://www.patreon.com/EmotionalSnow) |
[Ben Anderson](https://www.patreon.com/user/creators?u=14436239) | [Thomas](https://www.patreon.com/user?u=317826) | [Iulian Radu](https://www.patreon.com/user?u=8698230) | [Vitaliy (ArcticNoise) Chernyshev](https://www.patreon.com/user?u=2601918)

### JetBrains

JetBrains provided an open-source all-products license for their products which drastically helps in development of the engine.



_Copyright © 2000-2021 [JetBrains](https://jb.gg/OpenSource) s.r.o. JetBrains and the JetBrains logo are registered trademarks of JetBrains s.r.o._

---

## File: fyrox-animation/README.md

# fyrox-animation

Flexible, general-purpose, reflection-based animation system for game development.

**NOTE:** even though this crate has `fyrox` prefix in its name, it can be used separately without any issues.

## Features

- Reflection-based animation.
- Animation blending state machine.
- Sprite sheet animation.
- Various blending modes - blend by weight, blend by index, blend space.
- Smooth state transition.
- Ability to animate any numeric property, including vectors, bools, natural and real numbers.
- Layer masks.
- Root motion.
- Fixed set of binding modes for most common cases.
- Signals and events.

---

## File: fyrox-autotile/README.md

# fyrox-autotile

An implementation of autotiling algorithms for use with regular tile grids. This includes:

- Interactive terrain-based autotiling for tile map editing. The user picks a broad category of tile for each cell. These categories are called *terrains* and each terrain may have many tiles. The algorithm picks specific tiles for each cell from its terrain so that the tiles fit naturally together, thus sparing the user from having to manually select matching tiles.

    The algorithm is based upon a Godot library for the same purpose: https://github.com/dandeliondino/terrain-autotiler

- Randomized tile generation using Wave Function Collapse. Unlike terrain-based autotiling where the purpose is to automate tedious work for an artist, the purpose of Wave Function Collapse is to replace the artist entirely by generating creative tile layouts through randomization.

    The algorithm is based upon fast-wfc, a C++ library for the same purpose: https://github.com/math-fehr/fast-wfc

These algorithms are designed to be generic in a way that will work with *any* regular grid. They should work just as well with square cells and hexagon cells and 3D grids. The user specifies the coordinate system that is used to identify cells and which cells are neighbors to which other cells.

---

## File: fyrox-core/README.md

# fyrox-core

Shared library for Fyrox-engine containing linear algebra and some useful algorithms.

**NOTE:** even though this crate has `fyrox` prefix in its name, it can be used separately without any issues.

---

## File: fyrox-core-derive/README.md

# fyrox-core-derive

This crate provides with some derive macros:

- `#[derive(Visit)]`
- `#[derive(Inspect)]`
- `#[derive(Reflect)]`

---

## File: fyrox-impl/README.md

[](https://github.com/FyroxEngine/Fyrox/blob/master/LICENSE.md)
[](https://github.com/FyroxEngine/Fyrox/actions/workflows/ci.yml)
[](https://github.com/FyroxEngine/Fyrox/actions/workflows/audit.yml)
[](https://deps.rs/repo/github/FyroxEngine/Fyrox)
[](https://crates.io/crates/fyrox)
[](https://docs.rs/Fyrox/)
[](https://discord.gg/xENF5Uh)
[](https://github.com/FyroxEngine/Fyrox)

A feature-rich, production-ready, general purpose 2D/3D game engine written in Rust with a scene editor.
_Formerly known as rg3d_

## [Learning materials](https://fyrox-book.github.io/)

[Read the official Fyrox book here.](https://fyrox-book.github.io/) It contains comprehensive information about many aspects of the engine, starting
by "how to build" and ending by various tutorials.

## Community

You can always ask your question in Discord server - [Join the Discord server](https://discord.gg/xENF5Uh), or directly in 
[Discussions](https://github.com/FyroxEngine/Fyrox/discussions).

## Examples

You can run examples directly in your web browser, the full list of demo projects is [available here](https://fyrox.rs/examples.html).
Source code for each demo project [can be found here](https://github.com/FyroxEngine/Fyrox-demo-projects).

## Support

If you want to support the development of the project, click the link below. Preferrable way is to use [Boosty](https://boosty.to/fyrox) - this way the money
will be available for the development immediately. Alternatively you can can use [Patreon](https://www.patreon.com/mrdimas), but in this case the money will
be on-hold for unknown period of time ([details are here](https://github.com/FyroxEngine/Fyrox/issues/363)).

## Contributing

Contributions are very welcome! See the [contributions guidelines](CONTRIBUTING.md) for more info. Check the [good first issue](https://github.com/FyroxEngine/Fyrox/issues?q=is%3Aissue+is%3Aopen+label%3A%22good+first+issue%22) label to 
see where you can help.

## Sponsors

The engine is supported by very generous people, their donations provides sustainable development of the engine:

[Brandon Thomas](https://www.patreon.com/user?u=34951681) | [Taylor C. Richberger](https://www.patreon.com/user/creators?u=60141723) | [Avery Wagar](https://www.patreon.com/user?u=41863848) |
[George Atkinson](https://www.patreon.com/user?u=61771027) | [Erlend Sogge Heggen](https://www.patreon.com/amethystengine/creators) | [Mitch Skinner](https://www.patreon.com/user/creators?u=60141723) | [ozkriff](https://www.patreon.com/ozkriff) | [Taylor Gerpheide](https://www.patreon.com/user/creators?u=32274918) |
[zrkn](https://www.patreon.com/user/creators?u=23413376) | [Aleks Row](https://www.patreon.com/user/creators?u=51907853) | [Edward L](https://www.patreon.com/user/creators?u=53507198) | [L.apz](https://www.patreon.com/user/creators?u=5448832) | [Luke Jones](https://www.patreon.com/flukejones) | [toyboot4e](https://www.patreon.com/user/creators?u=53758973) | [Vish Vadlamani](https://www.patreon.com/user/creators?u=42768509) |
[Alexey Kuznetsov](https://www.patreon.com/user?u=39375025) | [Daniel Simon](https://www.patreon.com/user/creators?u=43754885) | [Jesper Nordenberg](https://www.patreon.com/jesnor) | [Kornel](https://www.patreon.com/user?u=59867) | [Parham Gholami](https://www.patreon.com/user?u=33009238) | [Yuki Ishii](https://www.patreon.com/user/creators?u=9564103) |
[Joseph Catrambone](https://www.patreon.com/user?u=4738580) | [MGlolenstine](https://github.com/MGlolenstine) | [zamar lomax](https://www.patreon.com/user?u=65928523) | [Gheorghe Ugrik](https://www.patreon.com/user?u=54846813) |
[Anton Zelenin](https://www.patreon.com/user?u=62378966) | [Barugon](https://www.patreon.com/user?u=11344465) | [Tom Leys](https://www.patreon.com/user?u=222856) | [Jay Sistar](https://www.patreon.com/user?u=284041) | [tc](https://www.patreon.com/user?u=11268466) | [false](https://www.patreon.com/user?u=713537) | [BlueSkye](https://www.patreon.com/EmotionalSnow) |
[Ben Anderson](https://www.patreon.com/user/creators?u=14436239) | [Thomas](https://www.patreon.com/user?u=317826) | [Iulian Radu](https://www.patreon.com/user?u=8698230) | [Vitaliy (ArcticNoise) Chernyshev](https://www.patreon.com/user?u=2601918)

### JetBrains

JetBrains provided an open-source all-products license for their products which drastically helps in development of the engine.



_Copyright © 2000-2021 [JetBrains](https://jb.gg/OpenSource) s.r.o. JetBrains and the JetBrains logo are registered trademarks of JetBrains s.r.o._