|
group2 0.1.0
CSE 125 Group 2
|
Authored local-space finger angles describing how a hand wraps a weapon. More...
#include <GripPose.hpp>
Static Public Member Functions | |
| static constexpr std::size_t | index (std::size_t finger, std::size_t joint) noexcept |
| Helper: index into jointAngles for (finger, joint). | |
Public Attributes | |
| std::array< glm::vec2, kGripPoseJointCount > | jointAngles {} |
| (pitch, yaw) in degrees per joint. .x = pitch (curl), .y = yaw (splay). | |
Authored local-space finger angles describing how a hand wraps a weapon.
Order: thumb[0..3], index[0..3], middle[0..3], ring[0..3], pinky[0..3]. Each entry is a (pitch, yaw) pair in DEGREES, applied in the bone's parent-local frame:
CharacterAnimator builds a local-space quaternion qYaw * qPitch from these angles per joint, then slerps the animated finger pose toward this target by holdWeight so idle-clip fingers smoothly transition to the authored grip whenever a weapon is held.
|
inlinestaticnodiscardconstexprnoexcept |
Helper: index into jointAngles for (finger, joint).
| finger | 0=thumb, 1=index, 2=middle, 3=ring, 4=pinky. |
| joint | 0..3 (root to tip). |
| std::array<glm::vec2, kGripPoseJointCount> GripPose::jointAngles {} |
(pitch, yaw) in degrees per joint. .x = pitch (curl), .y = yaw (splay).