Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Architecture Reference Documentation: Or How To Use PPB #630

Draft
wants to merge 2 commits into
base: canon
Choose a base branch
from

Conversation

pathunstrom
Copy link
Collaborator

Goal of this document is going to be addressing all the moving pieces of ppb, all of their relationships, in a prose style.

At the moment, this is just outlines and some thoughts on critical warnings or instructions to include. Open to all feedback.


1. What is an event
2. Event classes
1. dataclasses/attr classes
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

reminder that using dataclasses isn't a requirement. it's just an easy way to make a data bag.

Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

That's as much a suggestion/how we do it as anything. But will keep in mind.

This document is an overall reference of what ppb is, how it's organized, and
how to use the various pieces.

The Conceptual Necessities

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This section is really well written -- I love it!
Only suggestion I have is to perhaps put a list of all the major topics to be covered right up front, something like:

  • GameObject
  • GameEngine
  • Systems
  • Scenes
  • Events
  • Assets

-----------------------------------------------------------
.. _arch-the-basics:

Put some introduction here.
Copy link

@mxashlynn mxashlynn Jun 2, 2021

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I might suggest including something like:
"Games developed using PPB are generally made of Sprites organized into a hierarchy of Scenes. These Sprites behave according to rules laid out in Systems, and communicate via Events. Sprites load Assets from storage. A special GameObject manages Time and another handles the virtual Camera."

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

In thinking about it, a paragraph like this might mean the list I suggested above is not needed.


Supported inputs
what the flags look like
reasoning for uncommon names (button.Primary, Secondary, Tertiary)

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I really like that this "reasoning for uncommon names" is included.
Doesn't need to be long, but this is the sort of "getting inside the library maintainer's head" thing I find super valuable!

@pathunstrom pathunstrom added the 3.3 target Features and fixes we'd like for 3.3, due March 2024. label Dec 10, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
3.3 target Features and fixes we'd like for 3.3, due March 2024.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants