用于Unity中游戏的蓝牙控制器输入

时间:2019-04-28 17:04:56

标签: c# android unityscript

我想将我的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发射子弹

0 个答案:

没有答案