Skip to content

lordmauve/wasabi2d

Repository files navigation

Wasabi 2D

PyPI PyPI - Python Version PyPI - Wheel

Discord

A fast, cutting-edge 2D game engine for Python.

Current features include:

Wasabi2D is based on moderngl(supports OpenGL 4.1+), with pygame 2.0 for some supporting functions, and supporting APIs ported from Pygame Zero.

Docs and Help

Documentation is available at https://wasabi2d.readthedocs.io/

Join us on Discord for help and announcements!

Quick example

Draw a drop-shadowed circle that follows the mouse:

import wasabi2d as w2d

scene = w2d.Scene()
scene.background = 0.9, 0.9, 1.0

scene.layers[0].set_effect('dropshadow')
circle = scene.layers[0].add_circle(
    radius=30,
    pos=(400, 300),
    color='red',
)

@w2d.event
def on_mouse_move(pos):
    circle.pos = pos

w2d.run()

Output of the above program

Installation

Use pip to install Wasabi2d from PyPI:

pip install wasabi2d

Please make sure your requirements.txt pins a major version, as Wasabi2D may continue to make breaking API and graphical changes in major versions.

Screenshots

This screenshot shows off polygons, sprites, text and particle effects:

Screenshot as of Wasabi2d 1.0.0

Roller Knight was an entry in PyWeek 28, written with Wasabi2D by Daniel Pope and Larry Hastings:

Roller Knight screenshot

Spire of Chaos was another entry in PyWeek 28 written with Wasabi2D by Daniel Moisset:

Spire of Chaos screenshot