2015-02-07 6 views
0

Привет, ребята, я написал этот код, чтобы повернуть объект вокруг объекта центра, но я делаю что-то неправильно, может кто-нибудь объяснить мне, что :)?Поверните объект вокруг объекта центра

public void RotateCamera(GameObject _center) 
{ 
    Vector3 mousePos = camera.WorldToScreenPoint(Input.mousePosition); 
    Vector3 centerPos = camera.WorldToScreenPoint(_center.transform.position); 
    float angle = Vector3.Angle(centerPos,mousePos); 
    Camera.mainCamera.transform.Rotate(centerPos,angle); 
} 

Обновленный код по-прежнему не работает:

void Update() 
{ 
RotateCamera(_player); 
} 

public void RotateCamera(GameObject _center) 
{ 
    float speedMod = 10.0f; 
    Vector3 mousePos = camera.WorldToScreenPoint(Input.mousePosition); 
    Vector3 centerPos = _center.transform.position; 
    Camera.mainCamera.transform.LookAt(centerPos); 
    Camera.mainCamera.transform.RotateAround (centerPos,mousePos,20 * Time.deltaTime * speedMod); 
} 

ответ

1

если то, что вы хотите сделать, это вращать камеру вокруг объекта

public TargetClass target;//the target object 
    private float speedMod = 10.0f;//a speed modifier 
    private Vector3 point;//the coord to the point where the camera looks at 

    void Start() {//Set up things on the start method 
     point = target.transform.position;//get target's coords 
     transform.LookAt(point);//makes the camera look to it 
    } 

    void Update() {//makes the camera rotate around "point" coords, rotating around its Y axis, 20 degrees per second times the speed modifier 
     transform.RotateAround (point,new Vector3(0.0f,1.0f,0.0f),20 * Time.deltaTime * speedMod); 
    } 
+0

Да, но он должен видеть угол между мышью позиции и цели. Поэтому, если я нажимаю на правую сторону объекта, он будет вращаться вправо или, если я нажму на левую сторону объекта, он будет вращаться влево. Этот код не делает это правильно? –

+0

O Ждать, могу ли я заменить vector3 на rotateAround для положения мыши? –

+0

Я обновил код выше, но он все еще не работает –

Смежные вопросы