A game engine built for every platform
Joystick Engine pairs a Filament-powered renderer with an EnTT entity component system, C# scripting via Coral, and Tracy profiling — so you can ship 2D and 3D games to desktop and mobile from one codebase.
using Joystick;
public class PlayerController : Entity
{
public float Speed = 5.0f;
void OnUpdate(float ts)
{
var velocity = Vector3.Zero;
if (Input.IsKeyDown(KeyCode.W)) velocity.Y = 1.0f;
if (Input.IsKeyDown(KeyCode.S)) velocity.Y = -1.0f;
Translation += velocity * Speed * ts; // Coral-hosted C#
}
}
Everything a modern engine needs
Joystick Engine is built on proven, production-grade libraries instead of reinventing them — so you get a modern renderer and tooling from day one.
Filament renderer
Physically based rendering with automatic Vulkan or Metal backend selection per platform — no engine-side renderer code to maintain.
C# scripting with Coral
Write gameplay logic in C# against a native C++ host, with fast iteration and full access to engine internal calls.
EnTT-based ECS
A cache-friendly entity component system drives scenes, so gameplay code stays fast as your world grows.
Tracy profiling
Frame-level profiling is built in from the start, so you can track down performance regressions without bolting on tooling later.
Box2D physics
2D rigid body physics is wired directly into the scene system for platformers, top-down games, and everything in between.
Built-in editor
An ImGui-based editor with 3D gizmos and YAML scene serialization for building and iterating on levels visually.
Ready to build with Joystick Engine?
Grab the latest build for your platform and start prototyping today.
Browse versions