ConfigsMay 5, 2026·3 min read

Fyrox — Feature-Rich 2D and 3D Game Engine in Rust

A general-purpose game engine written in Rust with a built-in scene editor, UI framework, and PBR rendering pipeline for building desktop and web games.

Introduction

Fyrox is a general-purpose 2D and 3D game engine written entirely in Rust. It provides a scene editor (FyroxEd), a UI framework, PBR rendering, skeletal animation, physics integration, and sound — covering the full game development pipeline without requiring external tools.

What Fyrox Does

  • Renders 3D scenes with PBR materials, deferred shading, and global illumination
  • Provides a visual scene editor (FyroxEd) for placing objects, tweaking materials, and scripting
  • Handles 2D and 3D physics through Rapier integration
  • Supports skeletal animation, animation blending, and state machines
  • Includes a built-in UI framework (fyrox-ui) for in-game interfaces and editor plugins

Architecture Overview

Fyrox uses a scene graph with nodes representing objects, cameras, lights, and terrain. The renderer is deferred with multiple passes for lighting, shadows, and post-processing. Game logic is attached to nodes via Rust scripts that implement the ScriptTrait. The engine compiles as a Rust crate, giving full access to Rust's type system and borrow checker during development.

Self-Hosting & Configuration

  • Requires Rust toolchain (rustup) and a C++ compiler for native dependencies
  • Create projects with fyrox-template which scaffolds game, editor, and executor crates
  • Configure rendering, physics, and audio in the editor or via code
  • Assets (models, textures, sounds) are managed through the editor's asset browser
  • Export builds for Windows, Linux, macOS, and WebAssembly

Key Features

  • Full scene editor with gizmos, material editor, and animation graph
  • Rust's memory safety eliminates entire classes of crashes and undefined behavior
  • Built-in navmesh generation and pathfinding for AI navigation
  • Terrain system with multi-layer texturing and vegetation painting
  • Hot-reloading of scripts during editor sessions speeds up iteration

Comparison with Similar Tools

  • Bevy — Rust ECS engine without a built-in editor; Fyrox ships a full visual editor
  • Godot — GDScript/C# engine; Fyrox uses Rust and benefits from its safety guarantees
  • Unreal Engine — Proprietary C++ engine; Fyrox is MIT-licensed and Rust-native
  • O3DE — Heavier AAA-oriented engine; Fyrox is lighter and more approachable for indie teams
  • Macroquad — Minimal Rust 2D library; Fyrox is a full engine with 3D, physics, and an editor

FAQ

Q: Is Fyrox ready for production games? A: The engine is usable for indie and mid-scale projects. Several community games have been built with it, though the ecosystem is smaller than Godot or Unity.

Q: Can I use Fyrox for 2D games? A: Yes. Fyrox supports 2D rendering, sprite sheets, and 2D physics alongside its 3D capabilities.

Q: How does the editor compare to Godot or Unity? A: FyroxEd provides scene editing, material configuration, animation graphs, and terrain tools. It is functional but less mature in terms of plugin ecosystem.

Q: Does Fyrox support WebAssembly? A: Yes. Games can be compiled to WASM and run in the browser, though some features like multithreading have limitations on the web.

Sources

Discussion

Sign in to join the discussion.
No comments yet. Be the first to share your thoughts.

Related Assets