DragonRuby Hits v6.0


Celebration Time!

With the release of v6.0, Ludam Dare 56 kicking off, and Rocky Mountain Ruby 2024 around the corner, DragonRuby Game Toolkit is free the next few days.

Let’s talk about all the new things that have been added.

Why DragonRuby was created.

After a decade of indie game development (and many battle scars), there’s one point I can’t stress enough:

As an indie game dev, releasing cross-platform, and I mean every platform (PC, Mac, Linux, Web, Steam, Steam Deck, and Mobile) is so important for commercial success.

We’ve come to believe that releasing to all platforms from day one is too much work. And this is true given that established engines put the burden of dealing with platform fragmentation on our shoulders.

Cross-platform to them means “we’ll create a binary for you that may or may not work”. This is usually tested in the eleventh-hour, and often found to be false. It sucks to be put into a position where you have to deal with platform fragmentation days away from a release.

Your most valuable asset is your time. And that time shouldn’t be spent fixing deficiencies of an engine.

This is why DragonRuby was created. To be an engine that lets game devs focus on their game, knowing that it will look and behave the same everywhere without needing platform-specific hacks or workarounds.

DragonRuby lets you move faster than any other game engine.

DragonRuby’s ability to hotload/build your game “live” is something to experience. It truly is magical and brings the joy back to game development.

Here’s a highlight reel from the Game Engineering Podcast that shows how quickly you’re able to build a game.

(link to the full 90-minute interview)

With v6.0, DR’s productivity features are improved even further:

  • Live inspection of any part of your game rendered as an in-game overlay.
  • Live toggling of letterbox and edge-to-edge screen rendering.
  • Live update of orientation between landscape and portrait.
  • In-game layout guides for safe area boundaries across any aspect ratio.
  • Reboot/restart of your game without having to close and reopen your environment.
  • Built-in ability to slow down or speed up your simulation for debugging purposes.
  • Built-in capabilities to record and replay gameplay for capturing hard to reproduce bugs (here’s a demo of this in action).
  • Attached terminal for debug output (even in Windows where GUI apps don’t have a backing terminal environment).

Relevant API Listing

Cross Platform Input Normalization

The Nintendo Switch showed how wonderful a handheld, touch-enabled device can be. With the introduction of the Steam Deck, the need to trivially support multiple input methods becomes increasingly important.

With v6.0, DragonRuby added many facilities to help unify input processing:

  • Built in input awareness that keeps track of the last active input used (extremely helpful for presenting game instructions contextual to the player’s preferred input device).
  • Built in functions that normalizes UI component navigation with gamepad or keyboard (WASD/arrow keys).
  • Touch and Mouse normalization allowing you to treat taps and clicks as one type of action.
  • Well-tuned dead zone thresholds for a gamepad’s analog sticks (this is something that can be game-breaking for Steam Deck and Switch distribution if you don’t take that into consideration up front when using other engines).

Relevant API Listings

New Features and Improvements

Aside from focused efforts around developer productivity and cross-platform, here are some new things that were added to DragonRuby:

  • Linux ARM64 binary generation. Allowing your games to be played on the new Raspberry PI 5 and the rumored ARM64 Steam Deck Valve is working on (as with all DR exports, this is created automatically when you publish and will “Just Work TM”).
  • Performance improvements across the board for Collision/Geometry APIs. A year ago, we were already surpassing Unity by a large margin and now it’s even better.
  • Continued performance improvements to the rendering pipeline.
  • Improved GC event management which significantly improved battery life and thermal levels on handheld devices.
  • The ability to render triangle primitives is now available at all license tiers.

Sample Apps

The suite of sample apps continues to grow (over 150 samples and counting). These samples ship with the engine so they are guaranteed to run. Here are some of the new samples:

  • Sample app that shows how to build a rhythm based game, with a calibration mechanism built in.
  • Sample app that shows how to create a nice scroll view that is responsive to touch and mouse gestures.
  • Sample app that shows how to create a radial menu that can be navigated with a gamepad or mouse (like the ones in Balder’s Gate 3).
  • Physics based sample app that shows how a Verlet Integration is implemented.
  • Starting point/reference implementation for an alchemy-based crafting game.
  • Bullet Heaven reference implementation.
  • Reference implementation for a casual arcade game. You can play this online here.

Sample Apps GH Repo (these also ship with the engine and are located in the ./samples directory)

Carry the Fire

To take a page from Cormac McCarthy, you are the one that carries the fire. And, DragonRuby is the engine that will support you.

Keep an eye out for our 2025 road map!

Files

dragonruby-gtk-macos.zip 61 MB
Version 198 48 days ago
dragonruby-gtk-linux-amd64.zip 58 MB
Version 198 48 days ago
dragonruby-gtk-linux-raspberrypi.zip 58 MB
Version 188 48 days ago
dragonruby-gtk-windows-amd64.zip 58 MB
Version 196 48 days ago

Get DragonRuby Game Toolkit

Buy Now$48.00 USD or more

Leave a comment

Log in with itch.io to leave a comment.