Skip to main content

A pygame plugin for xecs.

Project description

A plugin for xecs, allowing you to render your entities with pygame.

Usage

First, add the plugin to your xecs app.

import xecs as xx
from xecs_pygame import PyGamePlugin

def main() -> None:
    app = xx.RealTimeApp()
    app.add_plugin(PyGamePlugin())

Now, when you spawn entities, you can give them a Circle, Polygon, Rectangle component. If you do that, your entities will be rendered on the screen:

import xecs as xx
from xecs_pygame import Circle, PyGamePlugin

def spawn_three_circles(commands: xx.Commands, world: xx.World) -> None:
    transformi, _ = commands.spawn((xx.Transform2, Circle), 3)
    transform = world.get_view(xx.Transform2, transformi)
    transform.translation.x.fill([0, 15, 30])

def main() -> None:
    app = xx.RealTimeApp()
    app.add_plugin(PyGamePlugin())
    app.add_startup_system(spawn_three_circles)
    app.add_pool(Circle.create_pool(3))
    app.add_pool(xx.Transform2.create_pool(3))
    app.run()

if __name__ == "__main__":
    main()

Further examples

Installation

pip install xecs-pygame

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

xecs_pygame-2.0.1.tar.gz (6.3 kB view hashes)

Uploaded Source

Built Distribution

xecs_pygame-2.0.1-py3-none-any.whl (4.6 kB view hashes)

Uploaded Python 3

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