2017-03-16 5 views
-1

VRで動作するユニティのユニティUIキャンバスの非常に簡単なデモを取得しようとしています。ユニティUIキャンバスがVRと連携していない

私はここにオクルスのブログの記事を読んでいる:https://developer3.oculus.com/blog/unitys-ui-system-in-vr/しかし、私はライセンスworries.Iせずにコードを再配布するようネイティブユニティUIを使用する必要がありますが、このチュートリアルhttps://unity3d.com/learn/tutorials/topics/virtual-reality/interaction-vr?playlist=22946に続き、資産ストアからユニティVRサンプルプロジェクトをダウンロード。ここでは、カメラに配置するスクリプト(VRInputおよびVREyeRaycaster)と、対象オブジェクトに配置するスクリプト(VRInteractiveItemおよびExampleInteractiveItem)を提供しています。

シーン(キューブなど)の通常のGameObjectにターゲットスクリプトを適用すると、レイキャストは正常に動作し、fire1がアクティブになったときに適切な呼び出しが行われます。キャンバスオブジェクト(ボタンなど)でこれを試してみると、ヒットは検出されません。私は、キャンバス上に2つのターゲットスクリプト(VRInteractiveItemとExampleInteractiveItem)を配置しようとしました。何が間違っているのですか?通常のゲームオブジェクトでUIキャンバスで動作しないのはなぜですか?私のキャンバスのすべての要素に、レイキャストターゲットのブール値が正しく設定されていることを確認しました

EDIT: UI要素にボックスコライダーを接続すると動作するようですが、これは必須ですか?私はそれが添付されているGraphicsRaycasterで動作するはずだと思った。 (箱コライダーが無効になっているとグラフィックスraycasterが有効になっている場合)が、設定は以下の私のプレーヤーカメラ上にあるもの

enter image description here

がこれは動作しません:

enter image description here

私は持っていけません私がしなければならないがボックスのコライダーを使っている問題は、ハイライトされた色のプロパティのUIボタンの変更を利用したいのですが

+0

正しいRayCasterを使用してください "UnityのUIシステムには、組み込みのレイキャスターには、GraphicRaycaster(キャンバス用)とPhysicsRaycaster(物理オブジェクト用)の2種類があります。 キューブに使用するレイキャストはおそらくPhysicsRaycasterです –

答えて

0

Unityレイキャスティングはコライダーを持つゲームオブジェクト。レイキャストは、コライダーに当たったときにtrueを返します。コライダーがなければ、光線が当たることはありません。

Unity Physics.Raycast documentation

0

あなたはVRに団結のUIを使用する場合は、この資産を見てすることがあります:VRTK

ターゲットコントローラまたはカメラを使用してVR UIのいくつかの例があります。

0

キャンバスに行くと、「平面距離」が100に設定されているオプションが必要です。これを0.5に変更すると、かなりうまく動作します。

関連する問題