Avatar customization: drag-to-rotate preview, fill the dead space, seam fix
checkpoint / checkpoint (push) Successful in 1m45s
checkpoint / checkpoint (push) Successful in 1m45s
- The preview is now a turntable: drag it to rotate the avatar and see all sides; it slowly auto-spins after ~2.5s of no input. Starts facing the camera so you see the face. "drag to rotate" hint under the viewport. - The big grey void to the right of the controls is gone -- the preview panel now expands to fill the leftover width; the controls dock to the right edge at a fixed width. - Camera reframed to fit the whole ~2 m body; softer preview lights. - Placeholder avatar: torso/arms/legs now share one 0.46 m depth so a limb always covers the torso slice behind it -- kills the bright "cyan seam" (it was a lit sliver of the torso side peeking past the thinner arm). Verified headless (boot, 2p multiplayer, avatar smoke source+pack, fresh-clone) + eyeballed the customization screen and the avatar seams in rendered screenshots. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_015jtxAiu5dAW4WxCNdGkrkJ
This commit is contained in:
@@ -66,16 +66,19 @@ const C_FACE := Color(0.05, 0.05, 0.06) # near-black (eyes + smile)
|
||||
# weighted to its bone -- so the rig still drives it, but it reads as a clean
|
||||
# solid block (no banding, no capsule taper).
|
||||
const PARTS := [
|
||||
["Head", Vector3(0.00, 1.74, 0.00), Vector3(0.58, 0.56, 0.56), C_SKIN],
|
||||
["Spine", Vector3(0.00, 1.14, 0.00), Vector3(0.90, 0.80, 0.48), C_SHIRT],
|
||||
["LeftUpperArm", Vector3(0.58, 1.14, 0.00), Vector3(0.34, 0.78, 0.40), C_SKIN],
|
||||
["RightUpperArm", Vector3(-0.58, 1.14, 0.00), Vector3(0.34, 0.78, 0.40), C_SKIN],
|
||||
["LeftUpperLeg", Vector3(0.21, 0.38, 0.00), Vector3(0.40, 0.78, 0.40), C_PANTS],
|
||||
["RightUpperLeg", Vector3(-0.21, 0.38, 0.00), Vector3(0.40, 0.78, 0.40), C_PANTS],
|
||||
# Torso, arms and legs all share the same 0.46 depth so a limb always fully
|
||||
# covers the slice of torso behind it -- otherwise a brightly-lit sliver of
|
||||
# the torso side peeks past the arm and reads as a cyan seam.
|
||||
["Head", Vector3(0.00, 1.74, 0.00), Vector3(0.58, 0.56, 0.58), C_SKIN],
|
||||
["Spine", Vector3(0.00, 1.14, 0.00), Vector3(0.90, 0.80, 0.46), C_SHIRT],
|
||||
["LeftUpperArm", Vector3(0.57, 1.14, 0.00), Vector3(0.34, 0.78, 0.46), C_SKIN],
|
||||
["RightUpperArm", Vector3(-0.57, 1.14, 0.00), Vector3(0.34, 0.78, 0.46), C_SKIN],
|
||||
["LeftUpperLeg", Vector3(0.21, 0.38, 0.00), Vector3(0.40, 0.78, 0.46), C_PANTS],
|
||||
["RightUpperLeg", Vector3(-0.21, 0.38, 0.00), Vector3(0.40, 0.78, 0.46), C_PANTS],
|
||||
# painted-on face -- thin plates on the front of the head (-Z), rigged to Head
|
||||
["Head", Vector3(0.13, 1.78, -0.28), Vector3(0.09, 0.12, 0.02), C_FACE],
|
||||
["Head", Vector3(-0.13, 1.78, -0.28), Vector3(0.09, 0.12, 0.02), C_FACE],
|
||||
["Head", Vector3(0.00, 1.64, -0.28), Vector3(0.32, 0.05, 0.02), C_FACE],
|
||||
["Head", Vector3(0.13, 1.78, -0.30), Vector3(0.09, 0.12, 0.02), C_FACE],
|
||||
["Head", Vector3(-0.13, 1.78, -0.30), Vector3(0.09, 0.12, 0.02), C_FACE],
|
||||
["Head", Vector3(0.00, 1.64, -0.30), Vector3(0.32, 0.05, 0.02), C_FACE],
|
||||
]
|
||||
|
||||
# Attachments: id -> [Mesh, local_offset_from_mount_bone, colour]
|
||||
|
||||
Reference in New Issue
Block a user