group2 0.1.0
CSE 125 Group 2
Loading...
Searching...
No Matches
WallDetection.cpp File Reference

Implementation of wall detection. More...

#include "WallDetection.hpp"
#include "PhysicsPerfStats.hpp"
#include <algorithm>
#include <cmath>
#include <glm/common.hpp>
#include <glm/geometric.hpp>
#include <glm/trigonometric.hpp>
Include dependency graph for WallDetection.cpp:

Namespaces

namespace  physics
 Pure physics math — no ECS types, no registry.

Functions

WallAttachmentResult physics::findWallRunAttachment (CapsuleShape capsule, glm::vec3 pos, const WorldGeometry &world, glm::vec3 continuityNormal, glm::vec3 travelDir=glm::vec3{0.0f}, float lookaheadDist=0.0f, float checkDist=24.0f, uint32_t previousMeshIndex=UINT32_MAX, uint32_t previousTriId=UINT32_MAX, TriRegion previousRegion=TriRegion::Face)
 Find the best triangle-mesh wallrun attachment, with optional lookahead along the current travel direction.
WallDetectionResult physics::detectWalls (glm::vec3 pos, float yaw, glm::vec3 halfExtents, const WorldGeometry &world, float checkDist, float sphereRadius, glm::vec3 prevWallNormal=glm::vec3(0.0f), bool gravityFlipped=false, bool includeGroundDistance=true)
 Detect walls to the left, right, and front of the player.
float physics::probeWallrunGroundDistance (glm::vec3 pos, glm::vec3 halfExtents, const WorldGeometry &world, float sphereRadius, bool gravityFlipped=false)
 Probe only the downward ground distance used by wallrun entry gates.

Detailed Description

Implementation of wall detection.