Понедельник, 23 Декабря 2024, 10:04

Приветствую Вас Гость

[ Новые сообщения · Игроделы · Правила · Поиск ]
  • Страница 1 из 1
  • 1
Вопрос о камере
PaRtIzAn_MaXsДата: Пятница, 17 Января 2014, 23:20 | Сообщение # 1
почетный гость
Сейчас нет на сайте
Всем привет.Давно меня не было(набирал опыт во всемогущем Google).
Так вот как сделать так что бы камера двигалась за сферой по верху...?
Вот скрипт:
Код
using UnityEngine;
using System.Collections;

public class sphere : MonoBehaviour
{
     private Vector3 inp;
     private Vector3 delta;
     private Vector3 oldPos;
    private Vector3 gravity;
     private const float pi2 = Mathf.PI * Mathf.PI;

     public float diam = 7f;

     public float speed = 7f;

     public Transform cam;
    GameObject fire;

      
    // Use this for initialization
         void Start (){
             oldPos = transform.position;
          Physics.gravity = new Vector3(0, -75, 0);
         }
          
         // Update is called once per frame
         void Update ()
{
    fire = GameObject.Find("fire");
     if (Input.GetButtonDown("Jump")){      
    fire.particleEmitter.emit = true;
    diam = 10f;
     speed = 10f;
     }
     if (Input.GetButtonUp("Jump")){  
  fire.particleEmitter.emit = false;
        diam = 4f;

     speed = 4f;
     }
             inp.x = Input.GetAxis("Horizontal");
             inp.z = Input.GetAxis("Vertical");
         }
     void FixedUpdate()
       {
           
         Vector3 cp = transform.position - cam.position;
         cp.y = 0f;
         transform.Translate(Quaternion.LookRotation(cp) * inp * speed * Time.deltaTime, Space.World);
         delta = oldPos - transform.position;

         float ang = Mathf.Sin(delta.magnitude / diam / pi2) * Mathf.Rad2Deg;
         transform.RotateAround(Vector3.Cross(delta, Vector3.up), ang);
         oldPos = transform.position;
      
}
}


C#-Unity3D
ЛевшаДата: Суббота, 18 Января 2014, 03:11 | Сообщение # 2
почти ветеран
Сейчас нет на сайте
Цитата PaRtIzAn_MaXs ()
как сделать так что бы камера двигалась за сферой по верху...?

Код
camera.position.x = sphere.position.x;
camera.position.z = sphere.position.z;


X.cor.R (Prologue)
PaRtIzAn_MaXsДата: Суббота, 18 Января 2014, 15:15 | Сообщение # 3
почетный гость
Сейчас нет на сайте
Цитата Левша ()
camera.position.x = sphere.position.x;
camera.position.z = sphere.position.z;

Спасибо громадное!


C#-Unity3D
  • Страница 1 из 1
  • 1
Поиск:

Все права сохранены. GcUp.ru © 2008-2024 Рейтинг