Lassen Sie eine Kugel auf einem Roulette-Netz an einer vorbestimmten Stelle anhalten


7

Ich habe ein Roulette und einen Ball (Kugel) darauf gelegt. Wenn das Spiel beginnt, dreht sich das Roulette. Das Drehen des Roulettes und die Gravitationskräfte auf den Ball lassen ihn entlang des 3D-Roulette-Netzes rollen.

Jetzt habe ich in meinem Roulette-Spiel Slots von 00 bis 36. Ich möchte sicherstellen, dass der Ball nach dem Ende des Roulettes nicht mehr an meinem vorgegebenen Slot rollt.

Zum Beispiel: Wenn ich den Ziel-Slot im Spiel auf 25 setze, bewegt sich der Ball jedes Mal, wenn sich das Roulette dreht, realistisch mit, ABER kommt langsam an Slot Nr. 25 zum Stillstand.

Geben Sie hier die Bildbeschreibung ein

Ich habe versucht, den Ball in seine Zielposition zu bringen, aber der Realismus ist verloren. Der Ball bewegt sich durch das Netz. Was ich nicht will. Ich möchte, dass der Ball wie im wirklichen Leben rollt.


3
Nur zur Veranschaulichung: Wenn Spieler mit echtem Geld spielen und ihre Gewinnchancen tatsächlich geringer sind als sie scheinen, können Sie in einigen Ländern gegen das Gesetz verstoßen.
Philipp

Antworten:


11

Schreiben Sie einen (oder zwei oder drei) Sprungpfade, dem der Ball folgen soll. Passen Sie die Drehung Ihres Radmodells an, damit der richtige Schlitz unter dem endgültigen Ziel des Balls landet.

Ein springender Pfad : Konstruieren Sie komplexe Animationen, die aus vielen kleinen Bewegungen des Balls im Laufe der Zeit bestehen, so dass es sich um eine natürliche physische Bewegung um die Struktur des Rads handelt. Schließlich endet diese Animation damit, dass sich der Ball in einem Schlitz niederlässt und sich mit der gleichen Geschwindigkeit wie das Rad dreht. Diese Position muss nicht geändert werden, da das Rad so gedreht werden kann, dass sich der richtige Schlitz unter der Kugel befindet. Eine Methode zum Erstellen von Skripten für diese Pfade besteht darin , Keyframes basierend auf einem Spline zu folgen .


3
Ich wollte dasselbe vorschlagen, außer dass Dutzende (oder sogar Hunderte) verschiedener Startwerte zufällig ausgewählt werden konnten. Andernfalls wird der Spieler feststellen, dass sich der Ball immer gleich verhält.
Msell

Nun, ich habe nicht verstanden, was du mit Bouncing Path gemeint hast
Vishnu

3
@ Vishnu: Berechnen Sie vorher den Winkel, um den sich das Roulette dreht. Initialisieren Sie dann beim Anzeigen der Animation den Startwinkel so, dass die endgültige Position die gewünschte Steckplatznummer ist.
Nicolas Raoul

1
Ja, genau das versuche ich jetzt. Ich drehe das Rad um * 360 Mal, bevor ich abbremse. und dann muss ich den endgültigen Positionsvektor berechnen und dann den Ball durch "Slerpieren" und Rollen bewegen.
Vishnu

Ich würde sehr vorsichtig sein, wenn ich es mit einem Glücksspiel vortäusche (sogar als Minispiel). Wenn die Spieler herausfinden, dass der Ball einem festgelegten Pfad folgt (auch wenn es mehrere gibt), denken sie möglicherweise, dass Sie sie betrügen und nicht spielen. Ich gehe auch davon aus, dass Sie kein echtes Geld verwenden.
UnderscoreZero

3

Berechnen Sie den Pfad im Hintergrund und ändern Sie die Zahlen beim Rendern.

Berechnen Sie einen Pfad basierend auf zufälligen Parametern, aber tun Sie dies für den Spieler unsichtbar. Sie wissen jetzt, auf welchem ​​Feld der Ball landen wird. Dann machen Sie es sichtbar, aber bevor Sie dies tun, drehen Sie die Textur des Roulette-Rads so, dass das Feld, auf dem der Ball landen wird, die gewünschte Zahl anzeigt.


Aber die Roulette-Zahlen sind beim Drehen zu sehen, sie gehen nicht so schnell. Auch das Roulette dreht sich auf eine Höchstgeschwindigkeit und verlangsamt sich dann. Auf jeden Fall kann die Textur (wie Sie sagten) nicht "gefälscht" werden.
Vishnu

Wenn das Rad zwischen den Würfen für den Spieler sichtbar ist, können Sie mit der Kameraperspektive schummeln. Sie könnten den Ball dramatisch zoomen, wenn er geworfen wird. Während dieses Zooms ist das Rad nicht sichtbar. Sie können dann die Physik im Voraus berechnen, das Rad modifizieren und die vorberechnete Physik erneut abspielen.
Philipp
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.