2016-12-08 2 views
0

Ich habe ein leeres Objekt, das unter anderem eine dritte und erste Person Kamera und eine Kugel mit einer Bouncing-Animation hat. Ich versuche es so zu bekommen, dass die Kugel die Schwerkraft erfährt, aber ich habe viele Probleme.Unity Camera Bounces mit Sphere Animation beim Versuch, mit Rigidbody Gravitation anzuwenden

Was ich will, ist die Schwerkraft auf meiner Kugel und die Kamera nicht mit dem Ball hüpfen.

Hier ein paar Szenarien Ich habe versucht, und ihre Ergebnisse:

1) Wenn ich befestigen ein starrer Körper mit dem der Kugel (Kind des leeren Object) mit Wurzelbewegung wahr oder falsch anwenden, Mein Charakter erfährt keine Schwerkraft. Der Ball springt, aber die Kamera folgt dem Ball, ohne mit dem Ball zu hüpfen. Es folgt auch, wenn ich die Leertaste drücke (um zu springen) Das ganze Problem ist, dass ich die Schwerkraft brauche, um wieder runterzufallen, wenn ich spring. Im Moment gehe ich einfach hoch.

2) Wenn ich einen starren Körper an das leere Objekt (die Eltern) anschließe, bekomme ich Schwerkraft, aber jetzt springt meine Kamera mit der Kugel, und wenn die Kugel fällt und rotiert, rotiert die Kamera mit.

Gibt es eine Möglichkeit, das Beste aus beiden Welten zu erhalten?

: Ball erfährt Schwerkraft, aber die Kamera nicht. Die Kamera folgt einfach dem Ball aus der Sicht der ersten oder dritten Person, ohne zu prellen.

Vielen Dank

+0

Ich würde Ihnen wahrscheinlich raten, ein Skript zu verwenden, damit die Kamera dem Ball folgt und nicht der Transformationshierarchie. – Serlite

Antwort

1

Für mich wäre Ich mag eine Vector3D Variable erstellen den Versatz zwischen der Kugel und der Kamera aufzunehmen. Und Sie addieren einfach den Versatz zu Ihrer Kamera jedes Mal, so dass Ihre Kamera den Ball jagen kann, ohne damit zu hüpfen. Zum Beispiel:

Vector3D offset = cameraPos - ballPos; 
//... 
CameraPos = ballPos + offset; 

Wenn Sie mit Kugelschwerkraft bewegt die Kamera nicht möchten, können Sie die Änderung der Y-Achse blockieren.