Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- using UnityEngine;
- using System.Collections;
- public class FlightPlane : MonoBehaviour {
- public float speed;
- public float speedOffset;
- public Camera cameraPlane;
- // Use this for initialization
- void Start () {
- }
- void Update()
- {
- //1. Controlando Manches
- transform.Rotate (Input.GetAxis ("Vertical"), 0, -Input.GetAxis ("Horizontal"));
- transform.position += transform.forward * Time.deltaTime * speed;
- // //2. Controlando Altura Terreno
- float terrainHeight = Terrain.activeTerrain.SampleHeight (transform.position);
- if (terrainHeight > transform.position.y) {
- transform.position = new Vector3 (transform.position.x,
- terrainHeight,
- transform.position.z);
- }
- //
- // //3. Controlando Velocidade
- speed -= transform.forward.y * Time.deltaTime * speedOffset;
- if (speed < 35) {
- speed = 35;
- }
- //
- // //4. Vetor de Posiçao da Camera
- Vector3 moveCamTo = transform.position - transform.forward*10 + Vector3.up * 5;
- //5. Refinando a posiçao Camera
- float bias = 0.96f;
- cameraPlane.transform.position = cameraPlane.transform.position * bias +
- moveCamTo * (1-bias);
- //6. Para onde a camera deve olhar
- cameraPlane.transform.LookAt (transform.position + transform.forward * 30);
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement