group2 0.1.0
CSE 125 Group 2
Loading...
Searching...
No Matches
physics::Joint6DOF Struct Reference

Generic 6-DOF joint — per-axis lock / limit / free + optional motor and spring on each axis. More...

#include <Joints.hpp>

Public Types

enum class  AxisMode : uint8_t { Free , Limited , Locked }

Public Attributes

entt::entity bodyA {entt::null}
entt::entity bodyB {entt::null}
glm::vec3 localAnchorA {0.0f}
glm::vec3 localAnchorB {0.0f}
AxisMode linearMode [3] = {AxisMode::Locked, AxisMode::Locked, AxisMode::Locked}
AxisMode angularMode [3] = {AxisMode::Locked, AxisMode::Locked, AxisMode::Locked}
glm::vec3 linearMin {0.0f}
glm::vec3 linearMax {0.0f}
glm::vec3 angularMin {0.0f}
glm::vec3 angularMax {0.0f}

Detailed Description

Generic 6-DOF joint — per-axis lock / limit / free + optional motor and spring on each axis.

Phase 11+ feature, currently a marker component; full implementation deferred to per-need.

Member Enumeration Documentation

◆ AxisMode

enum class physics::Joint6DOF::AxisMode : uint8_t
strong
Enumerator
Free 

No constraint.

Limited 

Clamp to [min, max].

Locked 

minAngle == maxAngle

Member Data Documentation

◆ angularMax

glm::vec3 physics::Joint6DOF::angularMax {0.0f}

◆ angularMin

glm::vec3 physics::Joint6DOF::angularMin {0.0f}

◆ angularMode

AxisMode physics::Joint6DOF::angularMode[3] = {AxisMode::Locked, AxisMode::Locked, AxisMode::Locked}

◆ bodyA

entt::entity physics::Joint6DOF::bodyA {entt::null}

◆ bodyB

entt::entity physics::Joint6DOF::bodyB {entt::null}

◆ linearMax

glm::vec3 physics::Joint6DOF::linearMax {0.0f}

◆ linearMin

glm::vec3 physics::Joint6DOF::linearMin {0.0f}

◆ linearMode

AxisMode physics::Joint6DOF::linearMode[3] = {AxisMode::Locked, AxisMode::Locked, AxisMode::Locked}

◆ localAnchorA

glm::vec3 physics::Joint6DOF::localAnchorA {0.0f}

◆ localAnchorB

glm::vec3 physics::Joint6DOF::localAnchorB {0.0f}

The documentation for this struct was generated from the following file: