FIND YOUR NEXT MOVE
Browse documentation
ENGINEERING DOCUMENTATION

Pose capture

From the native camera to provider-neutral joint observations.

IMPLEMENTEDSOURCE REVIEW / 2026.09.09

Common input contract

IPoseProvider keeps native SDKs outside the motion layer. AppleVisionPoseProvider maps joints into a common PoseFrame and distinguishes duplicate and out-of-order frames while polling. Capture time and receipt time are not interchangeable.

Apple Vision path

The native PMRPoseProvider owns an AVCaptureSession, a serial sample queue and a VNDetectHumanBodyPoseRequest. A short lock protects the latest completed frame, which Unity polls by copying values. No background callback enters managed code.

The configuration includes a 640×480 capture preset and a requested frame rate. These are settings, not measured throughput or guaranteed FPS, and are not published as product performance figures.

Confidence and tracking

Instantaneous native torso usability, managed provider health history and motion-layer joint confidence gates are different signals. A provider state does not prove readiness for every action. Missing arm or support landmarks change which features are available.

MediaPipe research path

The current Runner provider factory uses the MediaPipe implementation. MediaPipeTasksVision and its model remain behind the native boundary. Apple Vision behavior or privacy properties cannot simply be attributed to this path.

Validation scope

Provider and image-geometry test sources were inspected. This website task did not request camera permissions, capture frames or measure device performance.