lordmauve / lordmauve/pgzero

Better support for creating your own surfaces

Open
#71 3 comments 0 reactions 0 assignees View on GitHub
enhancement
Dominant language
Python
Stars
611
Forks
211
PR merge metrics
No merged PRs in 30d

Description

In [lordmauve/snowgame](https://github.com/lordmauve/snowgame) we encountered several places where we needed to bypass Pygame Zero's APIs in order to create new surfaces, blit actors to them, and set pixels.

In some ways it was always intended that you could directly access Pygame, but I was surprised at how little Pygame Zero functionality could be used once you do.

For example, it would be useful if Actors could take a surface that they were attached to as a parameter, and optionally have it overridden in Actor.draw().

It would be useful to wrap new "Screen" objects around newly created surfaces.

It would be useful to be able to create a "Screen buffer" by copying the dimensions of a screen.

Contributor guide

No contributing guide indexed for this repository

Research direction

Start by reviewing the existing Actor and Screen APIs and how they interact with Pygame surfaces. Compare the requested capabilities: attaching Actors to supplied surfaces, overriding the surface in Actor.draw(), wrapping new Screen objects, and copying screen dimensions for a buffer. Done means these surface workflows are defined and supported consistently.

Written by the indexing model from the issue text.

Assessment

Tech stack
python
Domain
game-dev
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.