Sets active pose/shape key for entity with pose data.
Takes entityHandle (entity from b3dLoadPoseMesh), poseIndex (0-based pose index to activate).
Returns nothing.
3D Graphics
Parameters & Returns
Parameters
entityHandleInt
poseIndexInt
Returns
Void
Quick Summary
Sets active pose/shape key for entity with pose data.
Takes entityHandle (entity from b3dLoadPoseMesh), poseIndex (0-based pose index to activate).
Returns nothing.
Technical Exegesis...
Sets active pose/shape key for entity with pose data. Takes entityHandle (entity handle from b3dLoadPoseMesh with pose/morph target data), poseIndex (0-based pose index to activate, 0 = first pose typically neutral/base, 1+ = additional pose states). Returns nothing. Updates entity mesh to display specified pose by interpolating vertex positions to target pose.
Sets active pose/shape key for entity with pose data. Takes entityHandle (entity handle from b3dLoadPoseMesh with pose/morph target data), poseIndex (0-based pose index to activate, 0 = first pose typically neutral/base, 1+ = additional pose states). Returns nothing. Updates entity mesh to display specified pose by interpolating vertex positions to target pose.
Pose activation: switches mesh to specified pose (vertex positions morph to poseIndex state, smooth transition if interpolated, instant if not), affects visual mesh only (does not affect physics, collision shape remains based on base mesh or separate collision mesh). Pose index: 0-based (pose 0 = first pose in file, typically neutral/base state), index range depends on mesh (check mesh file for number of poses, accessing invalid index may cause error or no-op).
Use cases: (1) Facial expressions (set pose for smile, frown, anger, surprise), (2) Character states (different muscle flex states, different clothing wrinkles), (3) Morph effects (transformation between shapes), (4) Animation frames (step through poses for stop-motion style animation). Common patterns: expression switching (b3dSetPose(head, smilePose) when happy, b3dSetPose(head, frownPose) when sad), state-based (if crouching then b3dSetPose(body, crouchPose) else b3dSetPose(body, standPose)).
Pose animation: script smooth transitions (interpolate poseIndex over time, fractional indices for blending if supported), scripted sequences (array of pose indices, play through sequence for animation), game state driven (set pose based on player action, NPC emotion, environmental trigger). Performance: O(n) where n = vertex count (updates all vertex positions to pose state, CPU cost per pose change, cache poses that don't change frequently).
Pose blending: single pose active (no automatic blending between multiple poses, must implement custom blending if needed), fractional poseIndex (may interpolate between adjacent poses if implementation supports, check documentation, or always use integer poseIndex for discrete poses). Validation: silently returns if entityHandle invalid or has no pose data, silently clamps or ignores if poseIndex out of range (implementation-dependent, may stay on current pose or clamp to last valid pose).
Related: b3dLoadPoseMesh loads mesh with pose data (call before this function to get entity with poses), b3dGetCurrentFrame reads current animation frame (different system, skeletal animation vs pose morphing).