group2 0.1.0
CSE 125 Group 2
Loading...
Searching...
No Matches
Movement.hpp
Go to the documentation of this file.
1
3
4#pragma once
5
6#include <glm/vec3.hpp>
7
12namespace physics
13{
14
24glm::vec3 applyGravity(glm::vec3 vel, float dt, bool flipped = false);
25
35glm::vec3 applyGroundFriction(glm::vec3 vel, float dt);
36
49glm::vec3 accelerate(glm::vec3 vel, glm::vec3 wishDir, float wishSpeed, float accel, float dt);
50
61float airWishSpeedForHorizSpeed(float currentHorizSpeed);
62
68glm::vec3 clipVelocity(glm::vec3 vel, glm::vec3 normal, float overbounce);
69
78glm::vec3 computeWishDir(float yaw, bool forward, bool back, bool left, bool right);
79
80} // namespace physics
Pure physics math — no ECS types, no registry.
Definition BroadphaseTree.cpp:11
glm::vec3 accelerate(glm::vec3 vel, glm::vec3 wishDir, float wishSpeed, float accel, float dt)
Quake PM_Accelerate: accelerate toward wishDir up to wishSpeed.
Definition Movement.cpp:39
glm::vec3 clipVelocity(glm::vec3 vel, glm::vec3 normal, float overbounce)
Project velocity onto a collision surface to slide along it.
Definition Movement.cpp:67
float airWishSpeedForHorizSpeed(float currentHorizSpeed)
Compute the air wish-speed for the player's current horizontal speed.
Definition Movement.cpp:53
glm::vec3 applyGroundFriction(glm::vec3 vel, float dt)
Apply Quake-style ground friction to horizontal (XZ) velocity.
Definition Movement.cpp:23
glm::vec3 computeWishDir(float yaw, bool forward, bool back, bool left, bool right)
Compute the horizontal wish direction from yaw angle and WASD key state.
Definition Movement.cpp:73
glm::vec3 applyGravity(glm::vec3 vel, float dt, bool flipped)
Apply gravity for one tick.
Definition Movement.cpp:16