請選擇您的所在地
Australia
Österreich
België
Canada
Canada - Français
中国
Česká republika
Denmark
Deutschland
France
HongKong
Iceland
Ireland
Italia
日本
Korea
Latvija
Lietuva
Lëtzebuerg
Malta
المملكة العربية السعودية (Arabic)
Nederland
New Zealand
Norge
Polska
Portugal
Russia
Saudi Arabia
Southeast Asia
España
Suisse
Suomi
Sverige
台灣
Ukraine
United Kingdom
United States
請選擇您的所在地
België
Česká republika
Denmark
Iceland
Ireland
Italia
Latvija
Lietuva
Lëtzebuerg
Malta
Nederland
Norge
Polska
Portugal
España
Suisse
Suomi
Sverige

如何顯示或隱藏控制器指標?

WaveVR 控制器指標是由 WaveVR_ControllerPointer.cs 所建立,並預設為顯示。 您可以選擇在執行階段中顯示或隱藏指標。
注意: 即便隱藏指標,WaveVR EventSystem 也不受影響。

請前往顯示或隱藏控制器指標 (範例程式碼),了解如何顯示或隱藏控制器指標。

顯示或隱藏控制器指標 (範例程式碼)

請依照下列步驟顯示或隱藏控制器指標。
  1. 新增下列程式碼以取得控制器執行個體。
    private GameObject dominantController = null, nonDominantController = null; void OnEnable() { WaveVR_Utils.Event.Listen (WaveVR_Utils.Event.CONTROLLER_MODEL_LOADED, OnControllerLoaded); }
    
    void OnControllerLoaded(params object[] args) { WaveVR_Controller.EDeviceType _type = (WaveVR_Controller.EDeviceType)args [0]; if (_type == WaveVR_Controller.EDeviceType.Dominant) { this.dominantController = (GameObject)args [1]; } if (_type == WaveVR_Controller.EDeviceType.NonDominant) { this.nonDominantController = (GameObject)args [1]; } }
    
    void OnDisable() { WaveVR_Utils.Event.Remove (WaveVR_Utils.Event.CONTROLLER_MODEL_LOADED, OnControllerLoaded); }
  2. 假設有 ShowPointerHidePointer 2 個函數,請使用下列程式碼。
    public void ShowPointer() { WaveVR_ControllerPointer _cp = null; if (this.dominantController != null) { _cp = this.dominantController.GetComponentInChildren<WaveVR_ControllerPointer> (); if (_cp != null) { _cp.ShowPointer = true; } } if (this.nonDominantController != null) { _cp = this.nonDominantController.GetComponentInChildren<WaveVR_ControllerPointer> (); if (_cp != null) { _cp.ShowPointer = true; } } }
    
    public void HidePointer() { WaveVR_ControllerPointer _cp = null; if (this.dominantController != null) { _cp = this.dominantController.GetComponentInChildren<WaveVR_ControllerPointer> (); if (_cp != null) { _cp.ShowPointer = false; } } if (this.nonDominantController != null) { _cp = this.nonDominantController.GetComponentInChildren<WaveVR_ControllerPointer> (); if (_cp != null) { _cp.ShowPointer = false; } } }
送出
感謝您!您的意見回報可協助他人查看最實用的資訊。