Unity

UnityでVRガンシューティングを作ろう

投稿日:2019年6月1日 更新日:

UnityでVRガンシューティングを作成します
スマホのジャイロセンサーを利用して、ゴーグルを下に向けたら歩く、上に向けたら弾を発射するようにします

Unityのヴァージョンは2018.3.5f1で作成しています
こちらに完成プロジェクトも公開していますので、上手くいかなかった場合には参考にしてください

今回やること

UnityRemoteのダウンロードと設定


PCとスマホを接続してお手軽にVRを楽しむにはUnityRemoteというアプリが必要です
UnityRemoteはPCと接続してUnityでテストプレイすると画面をスマホに写してくれます
設定のやり方についてはこちらを参考にしてください

下準備

こちらのUnityパッケージをダウンロードして下さい

パッケージのインポートの仕方はこちらを参考にしてください

画面のアスペクト比を使うディバイスに合わせます
例えば、iPhone5~8とかは16:9です

MainCameraを消します

Assets→Dive→PrefabsにあるDive_Cameraをドラッグ&ドロップ

こちらを参考にC#スクリプトを作成し、GyroScriptという名前にして以下の内容を入力します

作成したらDive_Cameraにドラッグ&ドロップします

Dive_Cameraを選択し、貼り付けたスクリプトのPlayerにドラッグ&ドロップします

Dive_CameraにCharacterControllerをつけます

テストプレイをする → ①(DiveMouseLook)にチェック、②(GyroScript)のチェックを外す
※マウスで操作ができます
実際にスマホでプレイする → ②(GyroScript)にチェック、①(DiveMouseLook)のチェックを外す
※スマホで操作ができます

プレイヤーの移動

C#スクリプトを作成し、Playerという名前にして以下の内容を入力します

作成したらこちらもDive_Cameraにドラッグ&ドロップします

ステージの作成


ステージの作成についてはこちらにまとめてありますので参考にして進めて下さい

敵キャラの作成


敵キャラの作成についてはこちらにまとめてありますので参考にして進めて下さい

作成しない場合、こちらを参考にして素材を入れましょう

プレイヤーの攻撃

Playerが上を向いているときに攻撃するようにします
作成したPlayerスクリプトに追加して書いていきましょう

弾の作成

まずは、弾にするSphereを出します
Create → 3DObject → Sphereを選択します

isTriggerにチェックを入れます

Rigidbodyをつけます
AddComponent → 検索欄に「Ri」と入力 → RigidBodyを選択します

RigidbodyのUse Gravityのチェックをはずします

タグをつけます
Untagged → AddTagをおして、

「+」をおして、タグ名を「bullet」と入力し、Saveをおします

Sphereを選択した状態で、Untagged → bulletを選択します

プレファブにします
設定を終えたSphereをAssets内にドラッグ&ドロップします

Dive_Cameraを選択して、Dive_CameraをPlayerに、作成したプレファブをbulletにドラッグ&ドロップします

敵の動き


こちらを参考に作成して下さい

敵の設定

敵キャラを選択し、AddComponentをおし、CapsuleColliderを2つとRigidBodyをいれます

①当たり判定の位置
②当たり判定の半径と高さ
③チェックをつける
④当たり判定の位置
⑤当たり判定の半径と高さ

  • ①②④⑤を調整して敵キャラを包むように設定
  • ①と④、②と⑤は同じ値にする
  • ③はチェックをつけるとすり抜けるようになる。これは地面の判定とダメージ用の判定を分けています

RigidBodyの設定

画像のようにチェックを入れます
これによって衝突した時に移動したり回転したりしなくなります

敵のダメージ処理

Enemyスクリプトに追記します

爆発エフェクトをExplosionにドラッグ&ドロップします
※爆発エフェクトはこちらを参考にダウンロードしてください

ゲームクリアの作成

表示する文字の作り方はこちらを参考にしてください

Playerスクリプトに追記していきます

Clearの文字を2つドラッグ&ドロップします

以上で終わりです
お疲れ様です♪

おまけ:作成したゲームを動画にする


こちらを参考にやってみてください

このサイトについて

ここには、自己紹介やサイトの紹介、あるいはクレジットの類を書くと良いでしょう。

検索

このサイトについて

ここには、自己紹介やサイトの紹介、あるいはクレジットの類を書くと良いでしょう。

検索

-Unity

執筆者:


comment

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください

関連記事

ARプレゼンツール

使用用途 2020.3.27に秋田総研さんが主催したオンラインプレゼン大会Talk Your Will Akita(TYWA)で使用したARプレゼンツールです Unityでカメラを映し、その空間内にA …

no image

秋田総研のAR作ってみた

こちら

no image

Unityでクリックしたところにブロックを置く

Unityでカメラに映るまで敵を動かさないようにする

これで、カメラに映るまで敵は動かず、カメラに映ったら動くようになります

blenderで火の鳥のロビタを作ってみた

さて、休日というものは得てして暇なものです そんな時はなんとなくPCで適当にものづくりしてみる 何しよっかなーと考えた結果、最近手塚治虫大先生の火の鳥を読み返しているのでその中に出てくるロビタを作って …

ゲタバコ倶楽部へようこそ

  • 112199総閲覧数:
  • 271今日の閲覧数:
  • 81034総訪問者数:
  • 224今日の訪問者数:

住所
Akita,Japan

営業時間
月~日: 10:00 AM – 10:00 PM

このページはゲタバコ先生の日々思うことや活動、プログラミングの習得方法を発信するページです。
仕事のご依頼、メッセージ等、サービス概要をご覧の上で、お気軽にご連絡ください。

getabakosensei@gmail.com