地域を選んでください

Australia
Österreich
België
Canada
Canada - Français
中国
Česká republika
Denmark
Deutschland
France
HongKong
Iceland
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

コントローラーポインターを表示または非表示にするにはどうすればよいですか?

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. 2つの関数 ShowPointer および HidePointer があるとして、次のコードを使用します。
    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; } } }
送信
ありがとうございます。