You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
This latest release comes with a few big improvements! 🎉
Transform System
Previously, Bevy retro used it's own transform and hierarchy system. This was done so that we could specify sprite positions as integer pixel positions. We initially thought that this might be helpful, so that you could never represent half-of-a-pixel movement and so that all pixels would be perfectly alligned. After using the system a bit, though, we realized that it was much harder to move objects at variable speeds because we couldn't use floating point positions.
In light of this, we decided to switch to using Bevy's built-in transform system. This makes positioning things in Bevy Retrograde work just like they do in out-of-the-box Bevy, and now entity movement algorithms are much simpler and sprite positions are still rounded to snap them to the grid and perfectly align them.
Un-aligned Sprites
Another big change is the advent of non-perfectly aligned sprites. By default all sprites are snapped to the grid, so to speak, making the pixels of each sprite line up perfectly with all the others, but now there is additionally an option to make individual sprites not aligned. This allows for your characters or enemies, for instance, to move smoothly, if desired, not requring that they snap to the retro-resolution pixels.
Physics Integration
We also integrated the Heron physics engine ( powered by Rapier ), along with our own plugin to enable automatically creating convex collision shapes from sprite outlines. This replaces our old, cumbersome collision detection system and enables a lot of new features such as ray-casting and simulation.
Check out the new examples to learn how to use the new physics system!
reacted with thumbs up emoji reacted with thumbs down emoji reacted with laugh emoji reacted with hooray emoji reacted with confused emoji reacted with heart emoji reacted with rocket emoji reacted with eyes emoji
-
This latest release comes with a few big improvements! 🎉
Transform System
Previously, Bevy retro used it's own transform and hierarchy system. This was done so that we could specify sprite positions as integer pixel positions. We initially thought that this might be helpful, so that you could never represent half-of-a-pixel movement and so that all pixels would be perfectly alligned. After using the system a bit, though, we realized that it was much harder to move objects at variable speeds because we couldn't use floating point positions.
In light of this, we decided to switch to using Bevy's built-in transform system. This makes positioning things in Bevy Retrograde work just like they do in out-of-the-box Bevy, and now entity movement algorithms are much simpler and sprite positions are still rounded to snap them to the grid and perfectly align them.
Un-aligned Sprites
Another big change is the advent of non-perfectly aligned sprites. By default all sprites are snapped to the grid, so to speak, making the pixels of each sprite line up perfectly with all the others, but now there is additionally an option to make individual sprites not aligned. This allows for your characters or enemies, for instance, to move smoothly, if desired, not requring that they snap to the retro-resolution pixels.
Physics Integration
We also integrated the Heron physics engine ( powered by Rapier ), along with our own plugin to enable automatically creating convex collision shapes from sprite outlines. This replaces our old, cumbersome collision detection system and enables a lot of new features such as ray-casting and simulation.
Check out the new examples to learn how to use the new physics system!
This discussion was created from the release v0.2.0 - Bevy Transform and Heron Physics.
Beta Was this translation helpful? Give feedback.
All reactions