arkavo-org / arkavo-org/VRMMetalKit

ARKit drivers: complete Phase-4 TODOs (confidence-based face source selection, shoulder/arm T-pose calibration)

Open
#329 0 comments 0 reactions 0 assignees View on GitHub
Dominant language
Swift
Stars
6
Forks
2
Avg merge
18h 51m
Merged PRs (30d)
26

Description

Three production TODOs in the ARKit drivers fall back to placeholder behavior. Two are real feature gaps; one (weighted body-skeleton blending) is already tracked by #29.

## 1. Confidence-based face source selection
- `Sources/VRMMetalKit/ARKit/ARKitFaceDriver.swift:332`
- `.highestConfidence` source-selection mode falls back to *latest-active* — confidence is never consulted.
- Needs per-source confidence to be surfaced by the capture layer before this can be honored.

## 2. Shoulder/arm T-pose calibration (highest impact)
- `Sources/VRMMetalKit/ARKit/ARKitCoordinateConverter.swift:112`
- Shoulder offsets are **DISABLED** (`.leftShoulder/.rightShoulder = identity`) because the calibration capture was taken in A-pose, not T-pose.
- Re-capture reference offsets with the subject in T-pose and re-enable, so arm retargeting is correct.

## 3. (tracked elsewhere) Weighted body-skeleton blending
- `Sources/VRMMetalKit/ARKit/ARKitBodyDriver.swift:374` — `.weighted` mode falls back to latest-active.
- Already covered by #29; listed here only for cross-reference.

## Done when
- (1) and (2) implemented and the TODO comments removed
- ARKit driver tests cover confidence selection and T-pose-calibrated shoulder offsets

Contributor guide

Open the contributing guide

Research direction

Start with the TODOs in Sources/VRMMetalKit/ARKit/ARKitFaceDriver.swift:332 and ARKitCoordinateConverter.swift:112, then inspect the capture layer and existing ARKit driver tests. Confirm how per-source confidence is exposed and how reference shoulder offsets are captured. Done means implementing the two requested behaviors, removing their TODO comments, and adding tests for confidence selection and T-pose-calibrated shoulder offsets.

Written by the indexing model from the issue text.

Assessment

Tech stack
swift
Domain
ar-vr-xr
Issue type
Feature
Difficulty
4/5
Estimated time
3-5 days
Activity status
Quiet
Clarity
Mostly clear
Newbie friendliness
48/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.