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

Game logic chapter #222

Closed

Conversation

alice-i-cecile
Copy link
Member

@alice-i-cecile alice-i-cecile commented Nov 12, 2021

If you'd like to read (or review) this PR, you'll need to:

  1. Install zola.
  2. Clone this repo.
  3. Use zola serve --open from that directory.

With #182 in a reasonable state, it's time to dive into the next chapter! I'm opening this early, so others can watch, learn and provide feedback as I work.

Contents:

  • Introduction
  • Scheduling systems
    • Ambiguous systems example
    • Equivalence of data access models
  • Custom game loops
  • Run criteria
  • States
  • Events
  • Time and timers
  • Async tasks

@alice-i-cecile
Copy link
Member Author

alice-i-cecile commented Nov 12, 2021

As I discussed with @cart on Discord, my explanation of data access compatibility doesn't match the current implementation. However, I believe they're formally equivalent, and the current explanation nicely unifies the incompatibility checks done by system parameters and ambiguities (what I'm calling hypothetical incompatibility) with the checks done by the scheduler (factual incompatibility).

This framing is also, IME, very useful for reasoning about parallelizability of complex data access patterns.

DIscussion link for the equivalency: bevyengine/bevy#3119

@cart
Copy link
Member

cart commented Mar 5, 2023

Closing as we will very likely start new PRs (and use this as a reference) when we pick up the new book effort again.

@cart cart closed this Mar 5, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants