VRTK 玩家移動功能 (2)Author: Kelvin Huang依照 Tag 來判斷移動的目標位置是否有效,例如指向地面時可以移動,若是指向空中時不可移動。 建立規則,透過 Tag 標籤判斷玩家是否可以移動至此,例如可在地板移動,其他物件上則顯示為紅色。 首先增加一個 Floor 的 Tag ,選取任一物件後,在 Tag 下拉式選單執行 Add Tag ,按 + 新增標籤。
輸入 Floor(地板)按下 Save 儲存。
執行 [ Window > Zinnia > Observable List Component Generator ] 開啟 Observable List Component Generator 視窗 - 將 Component Type 更改為 Any Tag Rule - 如果目前有選擇遊戲物件,需要將 Generate in [ 物件名稱 ] 取消勾選 - 選擇 Indicators.ObjectPointers.Curved 物件,將 AnyTagRule_Container 拖曳放入到 PointerFacade 元件的 Target Validity 欄位 - 按下 Play 測試,當指向 Tag 非 Floor 的物件時,指過去的弧線會不會變為紅色的
完成以上步驟,可測試遊戲確認是否正常執行。
更改弧線與終點的外觀開啟 [ Packages > .Tilia Indicators Objectpointers Unity > Runtime > SharedResources > NestedPrefabs ] 資料夾,將 Elements.AnimatedCube 預置物件拖曳放入 [ Indicators.ObjectPointers.Curved > ObjectPointer.Internal > Elements > RepeatedSegment ] 物件中 - 將原本的 Elements.Cube 停用 - 選擇 [ Indicators.ObjectPointers.Curved > PointerElements > RepeatedSegment ] 物件 - 原本的 Valid Container Settings 與 Invalid Container Settings 下面的欄位都是舊的 Elements.Cube 中的物件。 - 需要將 Elements.AnimatedCube 下的物件拖曳放入 Valid Container Settings 與 Invalid Container Settings 下面的欄位 - 測試弧線是否變更為動態弧線。 - 更改終點目標的圖示,增加一個半透明的圓柱體。 - 在 [ Indicators.ObjectPointers.Curved > Elements > Destination > Elements.Cylinder > ValidContainer > ValidCylinder ] 物件下增加一個圓柱體物件。 - 為圓柱體增加一個半透明材質 - 更改圓柱體的大小與高度,再將原本的 Capsule Collider 刪除或停用 - 測試,在弧線的終點會不會出現剛剛創建的圓柱體。
Copyright © 2025 CG Digital Corp. All rights reserved.
|