Frage von SlendGamer, 26

Unity 5: Winkel von einem RotateAround ändern?

Moin zusammen, Ich habe mich in letzter Zeit an einem kleinen Spiel versucht um meine Kenntnisse zu üben. Dabei bin ich auf ein großes Problem gestoßen, das ich alleine nicht bewältigt bekomme. Stellt euch einfach ein Fahrgeschäfft von der Kirmes vor (Break Dancer). Auf der großen Platte sollen nun 4 Gondelkreuze im 8° Winkel laufen (genauso wie die Platte geneigt ist).

Code:

void Update ()
{
    if (Input.GetKey (KeyCode.UpArrow)) {

        speedMod = speedMod + 0.1;

    }

    sm = (float)speedMod;



    transform.RotateAround(Vector3.zero,Vector3.up, 20 * Time.deltaTime * sm);

}

}

Laut diesem Code würden die Gondelkreuze nun WAAGERECHT um den Nullpunkt rotieren. Ich möchte aber, dass sie dies im 8° Winkel tun.

Wie bekomme ich das hin??? Danke schonmal.

Antwort
von Tagtraeumer42, 7
transform.RotateAround(Vector3.zero, Vector3(-0.14,1,0), 20 * Time.deltaTime * sm);

Je nachdem wie das Objekt in deiner Welt orientiert ist, musst du die -0.14 und die 0 vertauschen oder anstatt -0.14 positiv (also 0.14) nehmen.

Was ich gemacht habe ist die axis von RotateAround geändert, und zwar um tan(8) = ungefähr 0.14.

Keine passende Antwort gefunden?

Fragen Sie die Community

Weitere Fragen mit Antworten