Skip to main content

A lightweight, developer-first game engine built for Python.

Project description

rubato

Lisence PyPI PyPI - Downloads GitHub Release Date GitHub Build Status GitHub Docs Status

Discord Server   Twitter Page   Linkedin Page  

rubato is a modern 2D engine for game developement in python built in Cython using SDL2. It is aimed to aid in rapid prototyping and educational development of games as a stepping stone towards AAA tools such as Unity. rubato is more robust than its competitors, with a more intuitive syntax, high customizability, and zippy performance.

Here are some features we're especially proud of:

  • Powerful Rigidbody Physics
  • 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!

1.0 is the latest API-stable release as of Dec. 31 2022, and we plan to maintain backwards compatibility in future releases. Please note that the alpha versions (0.x.x) are now deprecated and it is strongly recommended to update in order to get the latest features and optimizations.

Wondering about the name? rubato is a music term that indicates a phrase that should be performed expressively and freely. We aim to harness that same freedom, bringing a fresh, modern take on game developement in python to a variety of users regardless of their coding background.

Getting Started

Using rubato is super easy. Just install rubato through pip in a terminal:

pip install rubato

After that, getting a window up takes only 3 lines of code!

import rubato as rb

# initialize rubato
rb.init()

# launch the window
rb.begin()

Check out our tutorial to learn more about what you can do with rubato.

Changelog

See CHANGELOG.md

Looking to contribute to rubato?

See CONTRIBUTING.md. And join our discord!

A big thank you to all of our contributors who help make this project possible.

Code of Conduct

See CODE_OF_CONDUCT.md.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

rubato-1.0.0.zip (3.8 MB view hashes)

Uploaded Source

Built Distributions

rubato-1.0.0-cp311-cp311-win_amd64.whl (2.3 MB view hashes)

Uploaded CPython 3.11 Windows x86-64

rubato-1.0.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.manylinux_2_28_x86_64.whl (13.3 MB view hashes)

Uploaded CPython 3.11 manylinux: glibc 2.17+ x86-64 manylinux: glibc 2.28+ x86-64

rubato-1.0.0-cp311-cp311-macosx_10_9_universal2.whl (4.8 MB view hashes)

Uploaded CPython 3.11 macOS 10.9+ universal2 (ARM64, x86-64)

rubato-1.0.0-cp310-cp310-win_amd64.whl (2.3 MB view hashes)

Uploaded CPython 3.10 Windows x86-64

rubato-1.0.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.manylinux_2_28_x86_64.whl (12.0 MB view hashes)

Uploaded CPython 3.10 manylinux: glibc 2.17+ x86-64 manylinux: glibc 2.28+ x86-64

rubato-1.0.0-cp310-cp310-macosx_13_0_arm64.whl (2.4 MB view hashes)

Uploaded CPython 3.10 macOS 13.0+ ARM64

rubato-1.0.0-cp310-cp310-macosx_11_0_x86_64.whl (2.7 MB view hashes)

Uploaded CPython 3.10 macOS 11.0+ x86-64

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page