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

Implement physics bodies known to Spaces #301

Open
kpreid opened this issue Oct 17, 2022 · 1 comment
Open

Implement physics bodies known to Spaces #301

kpreid opened this issue Oct 17, 2022 · 1 comment
Assignees
Labels
area: simulation Things related to what can happen in the world as time progresses. kind: feature Adding user-facing/developer-facing functionality

Comments

@kpreid
Copy link
Owner

kpreid commented Oct 17, 2022

Right now, the relationship between Character and its Space is one-directional: the Character defines a camera-position which is, by its own efforts, affected by gravity and collision with the Space.

Instead, the Space should have Behaviors which are attached physics bodies and optionally linked to Characters. This will enable:

  • Space's block manipulations being affected by the presence of characters (as obstacles or otherwise).
  • Objects, like moving dropped items, which are purely subordinate to the Space.
  • Rendering characters that aren't the player (NPCs or multiplayer PCs).
  • Particle systems that collide with the world. (I'm thinking that dropped items and particle systems might be very closely related things.)

The reason that these should be space Behaviors and not their own kind of thing is because Behaviors should in general be able to “occupy” certain regions of space and influence what happens in them. (On the other hand, we could also have a world where a Space contains Bodys in the same way it contains Blocks, and the Bodys can have Behaviors themselves.)

@kpreid kpreid added the kind: feature Adding user-facing/developer-facing functionality label Oct 17, 2022
@kpreid kpreid self-assigned this Oct 17, 2022
@kpreid
Copy link
Owner Author

kpreid commented Dec 30, 2022

Behaviors should in general be able to “occupy” certain regions of space and influence what happens in them.

This is now implemented; the "attachment" field stores a bounding box. No progress yet on making bodies into behaviors.

@kpreid kpreid added the area: simulation Things related to what can happen in the world as time progresses. label Dec 20, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
area: simulation Things related to what can happen in the world as time progresses. kind: feature Adding user-facing/developer-facing functionality
Projects
None yet
Development

No branches or pull requests

1 participant