|
1 | 1 | // MMD for System Animator |
2 | | -// (2024-06-19) |
| 2 | +// (2024-07-14) |
3 | 3 |
|
4 | 4 | var use_full_spectrum = true |
5 | 5 |
|
@@ -8974,9 +8974,9 @@ Model_obj.call(this, index, vrm, para); |
8974 | 8974 | this.mesh = vrm.scene; |
8975 | 8975 |
|
8976 | 8976 | this._joints_settings = []; |
8977 | | -vrm.springBoneManager.joints.forEach( e => { |
| 8977 | +for ( const e of vrm.springBoneManager.joints ) { |
8978 | 8978 | this._joints_settings.push(Object.assign({}, e.settings)); |
8979 | | -}); |
| 8979 | +} |
8980 | 8980 |
|
8981 | 8981 | if (!MMD_SA.MMD_started) |
8982 | 8982 | vrm_list.push(this) |
@@ -9033,12 +9033,12 @@ const restrict_physics = MMD_SA.motion[_THREE.MMD.getModels()[this.index].skin._ |
9033 | 9033 | const settings_default = this._joints_settings; |
9034 | 9034 | // Set has no index |
9035 | 9035 | let i = 0; |
9036 | | -this.model.springBoneManager.joints.forEach( e => { |
9037 | | -// e.settings.dragForce = 1 |
9038 | | - e.settings.stiffness = settings_default[i].stiffness * ((restrict_physics) ? 10 : 1) * vrm_scale; |
| 9036 | +for ( const e of this.model.springBoneManager.joints ) { |
| 9037 | +//e.settings.dragForce = 1;//settings_default[i].dragForce; |
| 9038 | + e.settings.stiffness = settings_default[i].stiffness * ((restrict_physics) ? 10 : 1) * VRM.joint_stiffness_percent/100 * vrm_scale;//this.mesh.scale.x; |
9039 | 9039 | e.settings.gravityPower = settings_default[i].gravityPower; |
9040 | 9040 | i++; |
9041 | | -}); |
| 9041 | +}; |
9042 | 9042 |
|
9043 | 9043 | this.model.springBoneManager.reset(); |
9044 | 9044 | //this.model.springBoneManager.setInitState(); |
@@ -9085,7 +9085,7 @@ if (vrm.springBoneManager) { |
9085 | 9085 | for ( const joint of vrm.springBoneManager.joints ) { |
9086 | 9086 | let j = model_para._joints[i]; |
9087 | 9087 | if (!j) |
9088 | | - j = model_para._joints[i] = { settings:{ stiffness:joint.settings.stiffness, hitRadius:joint.settings.hitRadius } }; |
| 9088 | + j = model_para._joints[i] = { settings:this._joints_settings[i] }; |
9089 | 9089 | i++; |
9090 | 9090 |
|
9091 | 9091 | joint.settings.stiffness = j.settings.stiffness * scale; |
@@ -9877,12 +9877,17 @@ if (!mesh.matrixAutoUpdate) { |
9877 | 9877 | const finger_list_en = ["Thumb", "Index", "Middle", "Ring", "Little"]; |
9878 | 9878 | const nj_list = ["0","1","2","3"]; |
9879 | 9879 |
|
| 9880 | + let joint_stiffness_percent; |
| 9881 | + |
9880 | 9882 | return { |
9881 | 9883 | get list() { return vrm_list; }, |
9882 | 9884 | set list(v) { vrm_list = v; }, |
9883 | 9885 |
|
9884 | 9886 | get vrm_scale() { return vrm_scale; }, |
9885 | 9887 |
|
| 9888 | + get joint_stiffness_percent () { return (joint_stiffness_percent == null) ? 100 : joint_stiffness_percent; }, |
| 9889 | + set joint_stiffness_percent (v) { joint_stiffness_percent = v; }, |
| 9890 | + |
9886 | 9891 | get bone_map_MMD_to_VRM() { return bone_map_MMD_to_VRM; }, |
9887 | 9892 | get bone_map_VRM_to_MMD() { return bone_map_VRM_to_MMD; }, |
9888 | 9893 |
|
@@ -15553,7 +15558,10 @@ case "口角下げ": |
15553 | 15558 | case "上": |
15554 | 15559 | case "下": |
15555 | 15560 | morph_alt.push(m, 'まゆ'+m, '眉'+((m=='上')?'↑':'↓')); |
15556 | | - break |
| 15561 | + break; |
| 15562 | +case "照れ": |
| 15563 | + morph_alt.push(m, '赤面'); |
| 15564 | + break; |
15557 | 15565 | default: |
15558 | 15566 | morph_alt.push(m); |
15559 | 15567 | } |
|
0 commit comments