OppaAI commited on
Commit
f7dcf56
·
1 Parent(s): 294f3b7

fix: correct arm rotation axes and reset model orientation to default

Browse files
Files changed (1) hide show
  1. ui/vrm.py +12 -8
ui/vrm.py CHANGED
@@ -230,10 +230,10 @@ def avatar_html(vrm_urls: str | list[str]) -> str:
230
  let speechStartedAt = 0;
231
  let speechDuration = 0;
232
  const REST = window._REST = {{
233
- leftUpperArm: {{ x: 0.02, y: 0.0, z: 1.28 }}, // z flipped
234
- rightUpperArm: {{ x: 0.02, y: 0.0, z: -1.28 }}, // z flipped
235
- leftLowerArm: {{ x: -0.12, y: 0.0, z: 0.08 }}, // z flipped
236
- rightLowerArm: {{ x: -0.12, y: 0.0, z: -0.08 }}, // z flipped
237
  leftHand: {{ x: 0.0, y: 0.08, z: 0.0 }},
238
  rightHand: {{ x: 0.0, y:-0.08, z: 0.0 }},
239
  }};
@@ -690,11 +690,15 @@ def avatar_html(vrm_urls: str | list[str]) -> str:
690
  window._aikoVrm = vrm;
691
  VRMUtils.removeUnnecessaryVertices(vrm.scene);
692
  vrm.scene.traverse(o => {{ if (o.frustumCulled) o.frustumCulled = false; }});
693
- vrm.scene.rotation.y = Math.PI;
694
- const forward = new THREE.Vector3(0, 0, 1);
695
- forward.applyQuaternion(vrm.scene.quaternion);
696
- console.log('[aiko-vrm] model forward vector:', forward);
697
  scene.add(vrm.scene);
 
 
 
 
 
 
 
698
  setExpression('relaxed', 0.25);
699
  console.log('Available expressions:', expressionNames());
700
  document.getElementById('loader').classList.add('fade');
 
230
  let speechStartedAt = 0;
231
  let speechDuration = 0;
232
  const REST = window._REST = {{
233
+ leftUpperArm: {{ x: 0.02, y: 0.0, z: -1.28 }},
234
+ rightUpperArm: {{ x: 0.02, y: 0.0, z: 1.28 }},
235
+ leftLowerArm: {{ x: -0.12, y: 0.0, z: -0.08 }},
236
+ rightLowerArm: {{ x: -0.12, y: 0.0, z: 0.08 }},
237
  leftHand: {{ x: 0.0, y: 0.08, z: 0.0 }},
238
  rightHand: {{ x: 0.0, y:-0.08, z: 0.0 }},
239
  }};
 
690
  window._aikoVrm = vrm;
691
  VRMUtils.removeUnnecessaryVertices(vrm.scene);
692
  vrm.scene.traverse(o => {{ if (o.frustumCulled) o.frustumCulled = false; }});
693
+ vrm.scene.rotation.y = 0;
 
 
 
694
  scene.add(vrm.scene);
695
+ // Add this after scene.add:
696
+ setTimeout(() => {{
697
+ const lUA = vrm.humanoid?.getRawBoneNode('leftUpperArm');
698
+ const rUA = vrm.humanoid?.getRawBoneNode('rightUpperArm');
699
+ console.log('[aiko-vrm] leftUpperArm rotation:', lUA?.rotation);
700
+ console.log('[aiko-vrm] rightUpperArm rotation:', rUA?.rotation);
701
+ }}, 500);
702
  setExpression('relaxed', 0.25);
703
  console.log('Available expressions:', expressionNames());
704
  document.getElementById('loader').classList.add('fade');