1 00:00:00,290 --> 00:00:02,921 接下來介紹Unity的基本關節系統(Joints) 2 00:00:03,545 --> 00:00:07,296 在這個範例內包括了固定關節(Fixed Joint) 和彈簧關節(Spring Joint) 3 00:00:07,616 --> 00:00:11,505 利用這兩種關節組成這樣的破壞鍊球 4 00:00:12,597 --> 00:00:18,358 首先是固定關節 固定關節的原理很像階層裡的父子結構 5 00:00:18,358 --> 00:00:23,701 關節會將物件鎖在一個世界座標 或鎖在一個連結的剛體 6 00:00:23,701 --> 00:00:30,657 範例中我們把第一個圓體物件放在天花板 然後加入一個固定關節 7 00:00:30,657 --> 00:00:32,266 這樣一來它就會被鎖定在該座標 8 00:00:32,266 --> 00:00:36,266 固定關節還可以設定斷裂力道(Break Force) 和斷裂扭力(Break Torque) 9 00:00:36,266 --> 00:00:39,846 斷裂力道與斷裂扭力是破壞關節 所需要的最小力量 10 00:00:39,846 --> 00:00:43,846 當關節被破壞時 遊戲物件就可以再次自由移動 11 00:00:44,346 --> 00:00:46,166 鍊球其他的圓柱要設定彈簧關節 12 00:00:46,166 --> 00:00:48,929 彈簧關節的原理是 13 00:00:48,929 --> 00:00:56,929 關節會嘗試移動到目標座標 即物件在場景裡的座標 14 00:00:56,929 --> 00:01:04,046 而物件的剛體會將關節用一個連在錨點 的隱形彈簧將物件拖離目標位置 15 00:01:04,046 --> 00:01:08,435 如果彈簧關節有連結剛體 那它的目標座標 16 00:01:08,435 --> 00:01:13,172 會指向剛體所屬的遊戲物件 而不是一個世界座標 17 00:01:13,437 --> 00:01:16,335 舉例來說, 二號圓柱體的目標 18 00:01:16,335 --> 00:01:19,639 是一號圓柱體,而三號圓柱體 19 00:01:19,639 --> 00:01:21,639 目標是二號圓柱體 20 00:01:21,639 --> 00:01:30,053 開始移動時它們不是往原來位置移動 而是往那些圓體物件的錨點移動 21 00:01:30,053 --> 00:01:32,598 錨點(Anchor)是關節的支點 22 00:01:32,598 --> 00:01:36,237 是彈簧連接遊戲物件的位置 23 00:01:36,237 --> 00:01:40,237 錨點在遊戲視圖內以橘色的圓點或方形來表示 24 00:01:40,237 --> 00:01:48,248 彈性(Spring)參數代表彈簧的韌度 數值越高代表彈簧越緊或堅固 25 00:01:48,248 --> 00:01:54,508 阻尼(Damper)設定關節動作放慢的速度 數值越高代表彈簧晃過頭的機會越小 26 00:01:54,508 --> 00:02:02,260 最小距離(Min Distance)和最大距離(Max Distance) 設定彈簧活動的一個區域,用來限制彈簧長度 27 00:02:02,260 --> 00:02:07,032 相同於固定關節 彈簧關節也有斷裂力道與斷裂扭力 28 00:02:07,032 --> 00:02:12,446 你可以設定這些力道 來指定斷裂彈簧所需要的最小數值 29 00:02:12,946 --> 00:02:14,628 最後是鉸鏈關節(Hinge Joints) 30 00:02:14,628 --> 00:02:16,628 鉸鏈關節適合用在門這類的物件 31 00:02:16,628 --> 00:02:22,960 鉸鏈關節跟彈簧關節有些參數相似 它的軸向就是旋轉軸向 32 00:02:22,960 --> 00:02:24,960 在這個範例裡 33 00:02:24,960 --> 00:02:29,753 我們在門加上了鉸鏈關節 然後將錨點設定在X軸的1 34 00:02:29,753 --> 00:02:31,865 代表它的錨點從中心移到了邊緣 35 00:02:31,865 --> 00:02:33,865 同樣的, Unity的關節是以橘色來表示 36 00:02:33,865 --> 00:02:39,271 你可以看到一條橘色的直線 而那就是鉸鏈關節的位置 37 00:02:39,271 --> 00:02:44,489 這裡的軸向(Axis)代表關節以哪個軸向為支點 38 00:02:44,489 --> 00:02:49,435 我們將支點設定到Y軸 這樣只要加上簡單的腳本它就會像是真的鉸鏈 39 00:02:49,435 --> 00:02:54,627 腳本裡我們讓門被點擊後 加入往Z軸後推的力量 40 00:02:54,627 --> 00:02:57,634 往後推的語法是 -transform.forward 41 00:02:58,134 --> 00:03:02,875 在AddForce的教學影片裡的範例 門的物件在加入力量後應該會飛出去 42 00:03:02,875 --> 00:03:05,054 但現在門的物件有了鉸鏈關節 43 00:03:05,054 --> 00:03:09,638 當我我們對門施加力量 他就會以支點為軸心進行旋轉 44 00:03:09,638 --> 00:03:13,638 所以不管我們對門施加幾次力量 它都不會壞掉 45 00:03:16,044 --> 00:03:20,561 就像彈簧關節一樣 我們可以加入一些彈簧的特徵 46 00:03:20,561 --> 00:03:26,185 首先將使用彈簧選項(Use Spring)打勾 然後設定彈簧的彈性, 阻尼和目標位置即可 47 00:03:26,685 --> 00:03:28,449 有別於彈簧關節 48 00:03:28,449 --> 00:03:30,959 鉸鏈關節還有馬達(motor)和限制(limits)設定 49 00:03:30,959 --> 00:03:36,002 馬達設定讓你的關節可以加上速度 就像旋轉門一樣 50 00:03:36,237 --> 00:03:40,558 目標速度(Target Velocity)設定關節的旋轉速度 51 00:03:40,558 --> 00:03:43,651 力道(Force)是要達到目標速度的值 52 00:03:44,151 --> 00:03:51,137 假如你勾選了自由選轉(Free Spin) 力道只會用來幫關節加速而不會減速 53 00:03:51,137 --> 00:03:55,412 限制設定是用來限制關節的動態 比如一般的門 54 00:03:55,412 --> 00:03:59,620 最小(Min)與最大(Max) 是用來設定關節可以移動的旋轉角度 55 00:03:59,620 --> 00:04:02,355 最小回饋(Min Bounce)與最大回饋(Max Bounce) 56 00:04:02,355 --> 00:04:06,730 用來設定當關節轉到限制角度時所作的反應 57 00:04:06,730 --> 00:04:10,464 跟其他關節一樣 鉸鏈關節也有斷裂力道與斷裂扭力 58 00:04:11,005 --> 00:04:16,139 舉例來說, 如果我們在斷裂力道 設定了一個較低的值 59 00:04:16,139 --> 00:04:20,487 當我們在門上施加力量時 就會使鉸鏈關節斷裂 60 00:04:20,487 --> 00:04:22,753 注意到門並非直接向後飛去 61 00:04:22,753 --> 00:04:26,267 而是從鉸鏈關節點被扯斷