heydocode / limitpush

Was it so easy to create a 3D bevy game using a single template..? LimitPush is a bevy template which is focused on cross-platform support and performance
https://heydocode.github.io/limitpush/
Creative Commons Zero v1.0 Universal
3 stars 0 forks source link

Movement & Physics #4

Closed heydocode closed 1 day ago

heydocode commented 3 days ago

Add Player Movement & Physics to the Game

Goal:
Implement basic player movement (walk, run, jump, and optionally crouch) along with physics (colliders and other necessary mechanics) into the game. The system should allow for the integration of cross-platform input later on. Additionally, apply colliders to the generated map.


Requirements:

  1. Player Movement

    • Add basic player movement mechanics:
      • Walk
      • Run
      • Jump
      • Optional: Crouch (with a state indicating the current action)
    • Use an existing crate for the character controller (e.g., bevy_rapier, bevy_tnua, or similar), but ensure it's modular enough for future cross-platform input integration.
    • Structure the movement logic in crates/player/movement.rs.
  2. Player Physics

    • Integrate physics for the player character, such as:
      • Colliders for the player
      • Gravity
      • Jump mechanics tied to physics
    • Initialize the player's physics in crates/player/lib.rs.
  3. Map Colliders

    • Apply colliders to the generated map. This includes adding collision detection for terrain and obstacles.
    • Implement this in crates/world/levels/openworld.rs.

Important Notes:


Help Needed

I'm struggling to find the time and haven't had much success implementing this myself. Any guidance or contributions would be greatly appreciated!

heydocode commented 2 days ago

Currently working with it, already implementedd collider for player and its movement system using rapier3D examples

heydocode commented 2 days ago

Update: use avian3d instead of rapier3d!!!!

heydocode commented 1 day ago

Implemented. I'll commit soon