ggez is a Rust library to create a Good Game Easily.

More specifically, ggez is a lightweight cross-platform game framework for making 2D games with minimum friction. It aims to implement an API based on (a Rustified version of) the LÖVE game framework. This means it contains basic and portable 2D drawing, sound, resource loading and event handling, but finer details and performance characteristics may be different than LÖVE.

ggez is not meant to be everything to everyone, but rather a good base upon which to build. Thus it takes a fairly batteries-included approach without needing a million additions and plugins for everything imaginable, but also does not dictate higher-level functionality such as physics engine or entity component system. Instead the goal is to allow you to use whichever libraries you want to provide these functions, or build your own libraries atop ggez.


  • Filesystem abstraction that lets you load resources from folders or zip files
  • Hardware-accelerated 2D rendering built on the gfx-rs graphics engine
  • Loading and playing .ogg, .wav and .flac files via the rodio crate
  • TTF font rendering with rusttype and glyph_brush.
  • Interface for handling keyboard and mouse events easily through callbacks
  • Config file for defining engine and game settings
  • Easy timing and FPS measurement functions.
  • Math library integration with mint.
  • Some more advanced graphics options: shaders, sprite batches and render targets

Supported platforms

  • Fully supported: Windows, Linux
  • Not officially supported but might work anyway: Mac, iOS
  • Work in progress: WebAssembly
  • Not officially supported yet (but maybe you can help!): Android

For details, see docs/

Who's using ggez?

Check out the projects list!

Getting started

For a quick tutorial on ggez, see the Hello ggez guide in the docs/ directory.

Post article RSS Related Articles

Here’s my first video devlog ever:

I hope to keep these videos short and release them every week or two.

Visual Improvements

I’ve been mostly working on small visual improvements.

First, a tile under the cursor is highlighted now. Highlighting is disabled though on touch devices (by ignoring an event if its delta movement is zero).

Next, agents now can be flipped horizontally to match their action’s direction. I’ve wanted to add this for a long time because sometimes units were attacking each other backward and it was weird.

Added simple dodge animations when an attack misses

A helper message is now shown when an agent’s move is interrupted.


Now agents have special sprite frames for some abilities. It’s a compromise between having real animations and only having static pieces.

Also, spearman will get special directional attack frames soon, because he can attack enemies two tiles away from him and it looks weird with completely static sprite sometimes.

Other Updates

There’re a couple of non-code updates too.

I’ve added a “Roadmap” section to the readme to show in which direction the project moves.

I also added a new “Inspiration” section with a list of games that inspire me to work on Zemeroth.

The game now has a text logo. It’s a manually “low poly vectorized” text written with the Old London font. Not sure if it really fits the game, but it’ll do for now.

I got the domain (but haven’t created a landing page there yet, so it redirects to the devlog for now). and pages were created.

And I’ve revived my Patreon page:

That’s all news for today. :)

Add game Games


Turn Based Tactics

An open-source minimalistic 2D turn-based hexagonal tactical game in Rust.

Post a comment
Sign in or join with:

Only registered members can share their thoughts. So come on! Join the community today (totally free - or sign in with your social account on the right) and join in the conversation.

Follow Report Profile
Windows, Mac, Linux
ggez Developers
Send Message
Release date
Engine watch
Embed Buttons
Link to ggez by selecting a button and using the embed code provided more...
187 of 946
472 (5 today)
Last Update
1 member
You may also like
RPG Maker XP
RPG Maker XP Commercial
Source Commercial
FPSC Commercial
RenderWare Commercial
Unreal Engine 3
Unreal Engine 3 Commercial