Programación del plano de unidad


Repositorio de proyectos para la ruta del programador junior de Unity: Desafío 1: programación de planos

Necesitaré utilizar la habilidad que aprenderá en mi prototipo de simulación de conducción para volar un avión alrededor de obstáculos aéreos. Necesitaré:

  • Entrada del usuario para: Arriba y abajo = Inclinación del avión hacia arriba y hacia abajo
  • Haz que la cámara siga al lado del avión.

Activos del desafío:  https://connect-prd-cdn.unity.com/20210506/913574fa-af65-4d95-abe8-d90282b27a83/Challenge%201%20-%20Starter%20Files.zip

Fuente:  https://learn.unity.com/tutorial/challenge-1-steer-a-plane-through-obstacles-in-the-sky?uv=2020.3&pathwayId=5f7e17e1edbc2a5ec21a20af&missionId=5f71fe63edbc2a00200e9de0&projectId=5caccdfbedbc2a3cef0efe63 #

Errores a corregir:

  1. El avión va hacia atrás Resolución: Cambie Vector3.back -> Vector3.forward en transform. Traduzca los parámetros del script PlayerControllerX.cs en el método FixUpdate()
  2. El avión va demasiado rápido Resolución: incluya Time.deltaTime en transform.Translate el cálculo del script PlayerControllerX.cs en el método FixUpdate()
  3. El plano se inclina automáticamente Resolución: incluya la variable verticalInput en transform.Rote el cálculo desde el script PlayerControllerX.cs en el método FixUpdate() Además, en RigidBody Contraints, congele la rotación X
  4. La cámara está delante del avión Resolución: busque la posición de la cámara, donde la cámara está al lado del avión. Aplique una rotación a la cámara -90 grados en la Y.
  5. La cámara no sigue el plano Resolución: Seleccione la cámara principal. Luego, en el inspector, asigne el Reproductor como el Plano variable del script FollowPlayerX. Establezca el desplazamiento de la cámara en el script FollowPlayerX.
  6. Bonificación: la hélice del avión no gira Resolución: cree un nuevo script (Rotation.cs) para manejar la rotación. Manejar la rotación en un evento LateUpdate(). Cree dos variables privadas serializadas rotObj y rotationSpeed. Las variables son Transformar y flotar respectivamente. Aplique la siguiente rotación a rotObj: Vector3.forward, rotationSpeed * Time.deltaTime Dado que rotationSpeed está serializado, establezca la velocidad de rotación en el inspector. Añade Rotation.cs al objeto del juego Propeller. Asigne Propeller al rotObj serializado.
  7. El plano atraviesa lentamente las paredes Resolución: ajuste el valor de 10 -> 100 en la configuración del proyecto