feat: MADISONBASE character setup — face capture config + animation rig #37

Merged
lavarius merged 3 commits from feat/madison-character-setup into master 2026-03-13 23:14:02 +00:00
Collaborator

Summary

Adds full character setup for MADISONBASE to match the existing Lava and Saju character pipelines.

FaceCapture Config

  • New MADISONBASE.asset with correct VRCFT blendshape mappings from Madison's Body SkinnedMeshRenderer
  • Covers eye blinks/squeezes/wide, jaw open/left/right/forward, all mouth shapes, cheek puffs, tongue
  • Replaces the placeholder Dummy.asset with a properly named Character Config.asset

Animation Rig (Character Inside.prefab)

Rig structure on MADISONBASE now matches Lava/Saju exactly:

MADISONBASE
├── RIG  (RigBuilder → Rig)
│   ├── Wobble
│   │   ├── chest  MultiAimConstraint (weight 0.2) → HeadTracker
│   │   ├── neck   MultiAimConstraint (weight 0.4) → HeadTracker
│   │   └── head   MultiAimConstraint (weight 0.6) → HeadTracker
│   ├── Hands
│   │   ├── Lefty   TwoBoneIK (UpperArm.L → LowerArm.L → Hand.L)
│   │   └── Righty  TwoBoneIK (UpperArm.R → LowerArm.R → Hand.R)
│   └── Legs
│       ├── Left   TwoBoneIK (UpperLeg.L → LowerLeg.L → Foot.L)
│       └── Right  TwoBoneIK (UpperLeg.R → LowerLeg.R → Foot.R)
└── IK
    ├── Arms  (Left Paw, Left Elbow, Right Paw, Right Elbow)
    └── Legs  (Left Feet, Left Knee, Right Feet, Right Knee)

Animation Assets

  • Madison animation clips and override controller
  • Sitting Idle animation for Madison
## Summary Adds full character setup for **MADISONBASE** to match the existing Lava and Saju character pipelines. ### FaceCapture Config - New `MADISONBASE.asset` with correct **VRCFT blendshape** mappings from Madison's Body SkinnedMeshRenderer - Covers eye blinks/squeezes/wide, jaw open/left/right/forward, all mouth shapes, cheek puffs, tongue - Replaces the placeholder `Dummy.asset` with a properly named `Character Config.asset` ### Animation Rig (`Character Inside.prefab`) Rig structure on MADISONBASE now matches Lava/Saju exactly: ``` MADISONBASE ├── RIG (RigBuilder → Rig) │ ├── Wobble │ │ ├── chest MultiAimConstraint (weight 0.2) → HeadTracker │ │ ├── neck MultiAimConstraint (weight 0.4) → HeadTracker │ │ └── head MultiAimConstraint (weight 0.6) → HeadTracker │ ├── Hands │ │ ├── Lefty TwoBoneIK (UpperArm.L → LowerArm.L → Hand.L) │ │ └── Righty TwoBoneIK (UpperArm.R → LowerArm.R → Hand.R) │ └── Legs │ ├── Left TwoBoneIK (UpperLeg.L → LowerLeg.L → Foot.L) │ └── Right TwoBoneIK (UpperLeg.R → LowerLeg.R → Foot.R) └── IK ├── Arms (Left Paw, Left Elbow, Right Paw, Right Elbow) └── Legs (Left Feet, Left Knee, Right Feet, Right Knee) ``` ### Animation Assets - Madison animation clips and override controller - Sitting Idle animation for Madison
Adds a MonoBehaviour that re-assigns Follow/LookAt on CinemachineCamera at
runtime, resolving lost references when the player is instantiated dynamically.

- If CharacterStore.Instance is already set (scene transition / DontDestroyOnLoad),
  binding happens immediately in Start().
- Otherwise subscribes to InputSystemSpawner.OnPlayerInputReady and binds when
  the player's input system fires, covering fresh-spawn flows.
- Exposes bindFollow / bindLookAt toggles in the Inspector.

Closes #35

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Camera.main may be null in Start() when the camera prefab is spawned at runtime
by CameraManager. Rather than crashing, Update() now re-fetches Camera.main each
frame until it resolves, then skips the frame if it's still unavailable.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
WaitForCamera() yields until Camera.main is available then assigns it once.
Update() retains a single early-out guard for the brief window before the
coroutine resolves, but no longer does any Camera.main lookup every frame.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
- Add MADISONBASE FaceCapture config with correct VRCFT blendshape mappings
  (Eye blinks/squeezes, jaw, mouth shapes, cheeks, tongue)
- Add MADISONBASE rig setup in Character Inside prefab:
  * RigBuilder + Rig component on MADISONBASE
  * RIG/Wobble: chest/neck/head MultiAimConstraint targeting HeadTracker
  * RIG/Hands: Lefty/Righty TwoBoneIK for arm animation
  * RIG/Legs: Left/Right TwoBoneIK for leg animation
  * IK/Arms: Left Paw, Left Elbow, Right Paw, Right Elbow effectors
  * IK/Legs: Left Feet, Left Knee, Right Feet, Right Knee effectors
- Add Madison animation clips and override controller
- Replace Dummy FaceCapture config with Character Config

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
lavarius merged commit 1d5c4ee277 into master 2026-03-13 23:14:02 +00:00
Sign in to join this conversation.
No reviewers
No milestone
No project
No assignees
2 participants
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
lavarius/ProjectOverlay!37
No description provided.