2016-11-27 4 views
0

Ich versuche, eine einfache Produktvisualisierung zu machen. Und ich möchte die Kamera auf das Objekt zoomen oder bewegen. Mein Code sieht wie folgt aus:Unity3d Kamera mit Mausrad bewegen

public class mouseMover : MonoBehaviour { 

     public Transform target; 
     public float speed; 


     void Update() { 

      if (Input.GetAxis ("Mouse ScrollWheel") < 0) { 
       float scroll = Input.GetAxis ("Mouse ScrollWheel"); 

       transform.LookAt (target); 
       transform.Translate(0, 0, scroll * speed, Space.World); 


      } 

      if (Input.GetAxis ("Mouse ScrollWheel") > 0) { 

       float scroll = Input.GetAxis ("Mouse ScrollWheel"); 
       transform.LookAt (target); 
       transform.Translate(0, 0, scroll * speed, Space.World); 
      } 

    } 

} 

Aber wenn ich versuche, um es zu vergrößern nur „fliegen“ um das Objekt herum und wenn die Kamera auf der anderen Seite des Objekts zu erhalten, es beginnt zu schwinden.

Antwort

1

Es ist, weil Sie Space.World statt Space.Self verwenden:

void Update() 
{ 
    float scroll = Input.GetAxis ("Mouse ScrollWheel"); 
    transform.LookAt (target); 
    transform.Translate(0, 0, scroll * speed, Space.Self); 
}