Introducing rubato

The Modern 2D Game Engine for Python

published on 31 December 2022

Get ready to revolutionize your game building experience with rubato! Whether you’re a beginner just starting out in game design, or a seasoned developer looking for a new prototyping solution, rubato is the perfect tool for bringing your ideas to life. After many months of development, we are thrilled to announce the first stable release of our groundbreaking 2D game engine for Python.

To us, rubato is more than just a game engine - it’s a platform for creativity and expression. The name “rubato” is a musical term indicating that a phrase should be performed expressively and freely. We’ve taken that to heart, designing rubato in a way that gives you those same freedoms to create.

With an intuitive design, powerful features, and comprehensive documentation, rubato streamlines the game development process and empowers users to achieve their creative goals. Heard enough? Get started here and learn how to start using rubato today!


Powerful Features Out of the Box

Built using Cython and SDL2, rubato offers great performance without compromising on the intuitive nature of Python code.

One of the standout features of rubato is its native rigidbody support, which enables easy 2D physics simulations with complex geometries. This, coupled with hardware acceleration, antialiasing, and fixed-step processing, makes rubato a powerful tool for building performant and beautiful games.

In addition, many features and optimizations not normally found in other Python libraries are built into rubato, including:

  • Event Subscription/Listener System
  • Spritesheets and Animations
  • Particle Systems
  • Tiled / Tilemap Support
  • Multichannel Sound System
  • Antialiasing + Anisotropic Filtering
  • Collision Optimization with Quadtrees
  • Texture-based Hardware Acceleration
  • User Interface Elements
  • And more!

On top of that, rubato also makes it super easy to distribute your games. With PyInstaller support out-of-the-box, you can compile games to executable applications with a single command.

A Supportive Community

At rubato, we believe that community is key to driving innovation and growth. That’s why we’re dedicated to providing a supportive and welcoming environment for game developers of all levels. Whether you’re just starting out in game development or you’re a seasoned pro, we encourage you to join our community and share your knowledge, skills, and experience.

If you have questions or just want to share what you’ve made with rubato, you can join our Discord server to get in touch with us and interact with other members of the community. You can also follow us on Twitter @rubatopy for devlogs, feature updates, and to stay up to date on what’s happening with rubato.

Of course, rubato is open sourced, and we always welcome contributions to our documentation and codebase. We believe that by working together, we can continue to refine rubato and make it an incredible tool for everyone.

Exciting Plans for the Future

As rubato continues to grow and evolve, we have a number of exciting plans for the future. Moving past 1.0, we plan to maintain complete backwards compatibility with other post-1.0 versions, so future updates will be centered around feature additions and improvements.

One of the major areas of focus for us is the physics engine. We plan to revamp the current collision resolution system and add rotational impulses, so that objects will be able to spin and turn off each other when they bounce. With these improvements, you’ll be able to create even more realistic and complex physics simulations in your games.

However, our top priority right now is growing and fostering our community of developers. As a small team, we don’t have the resources to engage in widespread PR efforts, which is why we rely on the support of our users to spread the word about rubato. If you’re excited about the capabilities and potential of our game engine, we encourage you to share your enthusiasm with others. Talk about rubato with your friends, tweet about it, share this blog post, or make something awesome with rubato and reach out! Every little bit helps to raise awareness and bring new members into our community. Only together, can we build something truly amazing with rubato.

Click here to get started.

We can’t wait to see what you’ll create!

Copyright © 2022, Martin Chaperot, Tomer Sedan, Yamm Elnekave