Skip to main content

Grease is a pluggable and highly extensible 2D game engine and framework for Python.

The intent of this project is to provide a fresh approach to Python game development. The component-based architecture allows games to be constructed bit by bit with built-in separation of concerns. The engine acknowledges that all game projects are unique and have different requirements. Thus Grease does not attempt to provide one-size-fits-all solutions. Instead it provides pluggable components and systems than can be configured, adapted and extended to fits the particular needs at hand.

The goals of the project include:

  • Making Python game development faster and more fun by allowing the developer to focus on creating their game rather than getting bogged down in architecture, low-level apis and adapting ill-fitting tools together.

  • To provide pluggable and extensible parts that implement first-class techniques and algorithms that can be leveraged for many projects.

  • To fully document the engine and provide examples that demonstrate best practices for others to base their projects on.

  • To facilitate outside contribution of parts and ideas into the framework that have proven useful in the wild.

  • To provide optional native-code optimized parts for maximum performance, but also provide equivalent parts coded in pure Python for ease of installation and distribution.

Not all of these goals have been realized yet, but I feel the project is well on their path.

License

Grease is distributed under a permissive MIT-style open source license. This license permits you to use grease for commercial or non-commercial purposes free of charge. It makes no demands on how, or whether, you license, or release the code derived from or built upon Grease, other than preservation of copyright notice.

For a complete text of the license see the LICENSE.txt file in the source distrbution.

Requirements

Grease is platform-independent and should run on any operating system supporting Python and Pyglet.

The following are required to build and install Grease:

Downloading Grease

You can download Grease from the python package index (pypi):

You can also clone the github repository to get the very latest code:

git clone git@github.com:caseman/grease.git

Although there is no guarantee that the latest master branch code will work perfectly, or even make it to release, efforts are made to ensure Grease is functional at each push.

Installation

To install Grease from the source distribution or repository use:

python2.6 setup.py install

Once installed you can try it out by running the unit tests and the included example game, but make sure you leave the grease source directory first or they will not work properly:

cd
python2.6 -m grease.test.run_all
python2.6 -m grease.examples.blasteroids3

Note on some platforms, such as MacOS X, you will need to use pythonw2.6 to run the tests and example game.

Note, you can also try out Grease without installing it by setting your PYTHONPATH to the source directory:

export PYTHONPATH=`pwd`
python2.6 test/run_all.py
python2.6 examples/blasteroids3.py

Documentation

You can browse the documentation online at:

The documentation is also available for offline viewing in the doc/build/html subdirectory for the source distribution.

Development Status

Grease is alpha software under active development. The APIs may change in future releases, however efforts will be made to minimize breakage between releases.

Contributing and Getting Support

Come visit us at the Grease users google group to get help, moral support, lavish praise, complain bitterly, report a bug, or contribute ideas:

If you would like to contribute to Grease, feel free to fork the git repository and make a pull request to have your changes reviewed. Note that bug fixes must be accompanied by unit tests, and features must also be documented. I am happy to help with these tasks if I can, so don’t be afraid to ask!

Metadata

Release files for grease 0.3

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distributions (sdists)

Source distribution for grease 0.3
File Size Uploaded Provenance
grease-0.3.zip 2.7 MB Without provenance Details
grease-0.3.tar.gz 2.6 MB Without provenance Details

Release files / grease-0.3.zip

Download URL grease-0.3.zip
Size 2.7 MB
Tags Source
SHA-256 checksum
How to use checksums
65c5530e1f39140b6bfaec1a4d1d1c7fbd7498361e1cf3f321bc3cf74b9b8afe
BLAKE2b-256 checksum
How to use checksums
3528118808eb3d1299baaa9ee776ca6d57fdbce75eaf9237b12c2945b01653fa
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No

Release files / grease-0.3.tar.gz

Download URL grease-0.3.tar.gz
Size 2.6 MB
Tags Source
SHA-256 checksum
How to use checksums
57c09f8e3eb257192212e80ce356b2dafd87053e8e442cf18ebac0c469360dd3
BLAKE2b-256 checksum
How to use checksums
a6d46c9175a8fd110035aa13cda63468a0b4bc9083df94934020f4b1f65f01c4
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No

Security for grease 0.3

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

Release history Release notifications | RSS feed

This release

0.3 This release

2 release files No provenance

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page