Hola ,
Mi objetivo es crear un First Person propio para modo vuelo tipo Dron en modo Cardboard, para eso me he creado un GameObject que tiene de componentes un Rigidbody, un Capsule Collider y naturalmente el Script de la Clase Dron, que ahora os pondré, además como hija, tiene un GameObject cámara para poder hacer el cabeceo en pitch (Vertical) y en yaw (Horizontal). Este es el Script:
using UnityEngine;
public class DronVirtual : MonoBehaviour
{
//Ejes
private float forward;
public float yaw;
private float height;
private float translate;
//Velocidades
public float forwardSpeed;
public float yawSpeed;
public float heightSpeed;
public float translateSpeed;
private float Speed;
//Variable estado
private bool swap = false;
//Coordenadas
public Transform cam;
public Transform RbFPC;
void Start()
{
Speed = 2.5f;
}
//Proceso continuo
void Update()
{
//Inputs Joysticks/Mouse
translate = Input.GetAxis("Horizontal") * translateSpeed * Speed;// X Axis
forward = Input.GetAxis("Vertical") * forwardSpeed * Speed; // 4th Axis
yaw = Input.GetAxis("Analog X") * yawSpeed * Speed;// 3rd Axis
height = Input.GetAxis("Analog Y") * heightSpeed * Speed;
//Actualiza con Time.deltaTime;
translate *= Time.deltaTime;
height *= Time.deltaTime;
forward *= Time.deltaTime;
yaw *= Time.deltaTime;
// Asigna valor de la Cámara (Hija) de su rotacion en EulerAngles a una variable float
float eixY = cam.transform.localEulerAngles.y;
//Copia valor a la rotación del GameObject Padre
RbFPC.transform.rotation = Quaternion.