我想将我的PS4控制器R2触发器设置为在我为Google纸板制作的VR游戏中射击子弹。
我已经将控制器与手机配对,并且我已经使用它来移动并与FPSController资产一起跳跃,并且我制作了拍摄脚本
using System;
using UnityEngine;
using UnityStandardAssets.CrossPlatformInput;
using UnityStandardAssets.Utility;
public class Firing : MonoBehaviour
{
//Drag in the Bullet Emitter from the Component Inspector.
public GameObject Bullet_Emitter;
//Drag in the Bullet Prefab from the Component Inspector.
public GameObject Sphere;
//Enter the Speed of the Bullet from the Component Inspector.
public float Bullet_Forward_Force;
// Use this for initialization
void Start()
{
}
// Update is called once per frame
void Update()
{
if (Input.GetKeyDown("joystick button 0"))
{
//The Bullet instantiation happens here.
GameObject Temporary_Bullet_Handler;
Temporary_Bullet_Handler = Instantiate(Sphere, Bullet_Emitter.transform.position, Bullet_Emitter.transform.rotation) as GameObject;
//Sometimes bullets may appear rotated incorrectly due to the way its pivot was set from the original modeling package.
//This is EASILY corrected here, you might have to rotate it from a different axis and or angle based on your particular mesh.
Temporary_Bullet_Handler.transform.Rotate(Vector3.left * 90);
//Retrieve the Rigidbody component from the instantiated Bullet and control it.
Rigidbody Temporary_RigidBody;
Temporary_RigidBody = Temporary_Bullet_Handler.GetComponent<Rigidbody>();
//Tell the bullet to be "pushed" forward by an amount set by Bullet_Forward_Force.
Temporary_RigidBody.AddForce(transform.forward * Bullet_Forward_Force);
//Basic Clean Up, set the Bullets to self destruct after 10 Seconds, I am being VERY generous here, normally 3 seconds is plenty.
Destroy(Temporary_Bullet_Handler, 3.0f);
}
}
}
我想启动手机上的“游戏”并按R2发射子弹