前提・実現したいこと
HTC ViveのVRでシューティングゲームを作っています。
コントローラーのトリガーを引いたら弾がでるようにしたいのですが、球が出ません。
ActionSetはデフォルトを使っています。
発生している問題・エラーメッセージ
プログラムにエラーはありません。
該当のソースコード
C#
1using System.Collections; 2using System.Collections.Generic; 3using UnityEngine; 4using Valve.VR; 5using UnityEngine.UI; 6public class Shooting : MonoBehaviour 7{ 8 private SteamVR_Action_Boolean actionToHaptic = SteamVR_Actions._default.InteractUI; 9 private SteamVR_Action_Boolean actionReload = SteamVR_Actions._default.Teleport; 10 11 public GameObject bulletPrefab; 12 public float shotSpeed; 13 public int shotCount = 30; 14 private float shotInterval; 15 16 17 void Update() 18 { 19 20 if (actionToHaptic.GetStateDown(SteamVR_Input_Sources.RightHand)) 21 { 22 23 shotInterval += 1; 24 25 if (shotInterval % 5 == 0 && shotCount > 0) 26 { 27 shotCount -= 1; 28 29 GameObject bullet = (GameObject)Instantiate(bulletPrefab, transform.position, Quaternion.Euler(transform.parent.eulerAngles.x, transform.parent.eulerAngles.y, 0)); 30 Rigidbody bulletRb = bullet.GetComponent<Rigidbody>(); 31 bulletRb.AddForce(transform.forward * shotSpeed); 32 33 //射撃されてから3秒後に銃弾のオブジェクトを破壊する. 34 35 Destroy(bullet, 1.0f); 36 } 37 38 } 39 else if (actionReload.GetStateDown(SteamVR_Input_Sources.RightHand)) 40 { 41 shotCount = 30; 42 43 } 44 45 46 } 47} 48
試したこと
ActionSetのdefaultを用いてトリガーを引いたときに弾がでるようにした。
サイトを参考にしてプログラムを組んだ。参考サイト
補足情報(FW/ツールのバージョンなど)
C#
unity
HTC Vive
steamVR 2.5.0 (sdk 1.8.19)
ここにより詳細な情報を記載してください。
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2019/12/17 09:17