Help us understand the problem. What is going on with this article?

Unity5でGearVR シューティングゲームが作りたくて

More than 3 years have passed since last update.

GearVR開発を始めました。

VRシューティングゲームが作りたくて、
モックアップとして、
「注視点のポインターが飛んでくるバナナが重なった時爆発する」
というのを制作しました。

注視点のポインターとGameObjectが重なった時の処理のメモです。
スクリーンショット 2016-04-18 17.59.05.png

Device IDの取得やOculus Signature Fileの設定などはこちらの良記事を参考にしました。

▫️Unity5でGear VR用アプリの開発方法
http://psychic-vr-lab.com/blog/unity/unity5%E3%81%A7gear-vr%E7%94%A8%E3%82%A2%E3%83%97%E3%83%AA%E3%81%AE%E9%96%8B%E7%99%BA%E7%92%B0%E5%A2%83%E3%81%AE%E8%A8%AD%E5%AE%9A/

上記事のOculus Mobile SDKは使わず、
チュートリアルも公開されてたので、
Unity公式のVRサンプルプロジェクトを参考にしました。

処理の作り方

まずはAssetストアからVR Sampleをダウンロードしてインポート。

スクリーンショット 2016-04-18 18.08.41.png

参考にしたのは
VRSampleScenes/Scenes/Examples/Reticleシーンです。
こちらを開く。

初期状態はこんな感じでした。

ピンクのがポインターか!
スクリーンショット 2016-04-18 18.11.33.png

もともとあるcubeの設定を読み解いて真似てみた。

今回はこのバナナをポインターに反応させるようにする。

スクリーンショット 2016-04-18 17.45.08.png

バナーナちゃんに下記設定。

1.コライダーを設定。
2.VRInteractiveItem.csをアタッチ。
3.scripts/Exsamples/ExampleInteractiveItemを複製して
BananaInteractiveItem(名前任意)にリネームしてアタッチ。

処理のスクリプト書く

ExampleInteractiveItem.csを読み解くと、
イベントをハンドリングしてるところを発見。

ExampleInteractiveItem.cs
private void HandleOver() // 注視点がGameObjectに重なった時
private void HandleOut() // 注視点が外れた時

となっているようだ。
なので、
注視点のポインターとGameObjectが重なった時の処理はここに書けば良いのでは?

BananaInteractiveItem.csの

BananaInteractiveItem.cs
//Handle the Over event
private void HandleOver()
{
    Debug.Log("over");
    // ここに爆発処理を入れました〜。
    //m_Renderer.material = m_OverMaterial;  マテリアル変更してるとこは使わないのでコメントアウト
}

でできました。

爆発にはDetonatorというアセットを使用しました。
http://qiita.com/yando/items/eac9e0dbc1376b9cf141

この爆発、iosで実機確認すると爆発しないことがありました。
解決法はこちらの記事を参考にしました。
http://aidiary.hatenablog.com/entry/20140813/1407927404

チュートリアル実践して理解が深まるとともに追記しようと思います〜。
もっとVRやる

39_isao
鮭とメロンパンとコーヒー牛乳が好物です。
Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away