啊啊啊,啊啊啊,好懶得寫這個啊
但是只要看到過去的自己,苦口婆心的拜託我不要懶惰,就覺得只能上了
決定新增新的ML物理性角色--狗頭人哨兵
狗頭人哨兵的設計關鍵
1.使用武器
2.可以縮放並且縮放是觀察項 (1-2倍)
狗頭人基礎數據 (縮放比例: 1)
身高: 約160cm
質量與JointDrive
部位 | Mass | Spring | Damper | Force | Note |
Root | 12.5 | x | x | x | |
Thigh | 7.5 | 50000 | 1000 | 30000 | |
Calf | 7.5 | 50000 | 1000 | 20000 | |
Foot | 5 | 50000 | 1000 | 10000 | |
Spine | 12.5 | 50000 | 1000 | 90000 | |
UpperArm | 5 | 50000 | 1000 | 20000 | |
Forearm | 5 | 50000 | 1000 | 10000 | |
Hand | 5 | 50000 | 1000 | 5000 | |
Weapon | 3.5 | x | x | x | 重心在武器前端 |
Tail1 | 8 | 50000 | 1000 | 20000 | |
Tail2 | 6 | 50000 | 1000 | 15000 | |
Tail3 | 4.5 | 50000 | 1000 | 10000 |
PhysicMaterial
Dynamic Friction | 0.6 |
Static Friction | 0.8 |
Bounciness | 0.1 |
Friction Combine | Average |
Bounce Combine | Average |
Joint Remap
1.Thigh 無法主動內折 (左腳無法往右邊伸展,反之亦然)
Joint活動範圍
部位 | Low X | High X | Y | Z | Note |
Thigh | -130 | 40 | 70 | 40 | |
Calf | 0 | 170 | x | x | |
Foot | -40 | 50 | 30 | 10 | |
Spine | -45 | 45 | 45 | 50 | |
UpperArm | -110 | 20 | 90 | 90 | |
Forearm | -150 | 0 | x | x | |
Hand | -60 | 60 | 50 | 50 | |
Weapon | x | x | x | x | 重心在武器前端 |
Tail1 | -60 | 60 | 60 | x | |
Tail2 | -60 | 60 | 60 | x | |
Tail3 | -60 | 60 | 60 | x |
備註:
1.狗頭人有縮放比例觀察項,但是其餘觀察項均使用世界比例(不受縮放比例影響),這是雖然按自我比例處理觀察項,預期能有Localize的好處,但是不明白對速度等物理項目也進行自我比例,是否反而會打亂座標或物理概念,因此決定先以僅增加縮放比例為觀察項,但不對觀察項作縮放比例來進行實驗
2.趁這個機會,也把Unity ML版本更新到Release 19
3.縮放比例部分花了很多時間才知道怎麼配合Unity Joint系統
直接縮放人物,關節會異常,導致人物肢體雖然放大,但關節間距沒有,人物會縮成一團
最後解法是,縮放前必須先Disable人物,然後縮放人物,並把人物變回初始動作,例如當初是在T-Pose設定關節參數就必須變回T-Pose
然後才能Enable人物,Joint會在Enable之後在"當下的Pose"重新計算Auto Configure Connected Anchor等參數
過程中,Disable Auto Configure Connected Anchor再自己指定Connected Anchor的方案沒有成功,因為不知道Connected Anchor要怎麼設才對,保存Auto Configure Connected Anchor計算的數值並沒有預期的效果
按照這篇文章(Luna Tech Series: A Deep Dive into Unity Configurable Joints)的解讀猜想應該要正確才對
不過當初嘗試過程並沒有還原成T-Pose,另外其實並不想自己設,所以暫時先不鑽研這裡的細節了