Bewegliche Objekte erstellen

*Dieser Inhalt wurde mit KI (Beta) übersetzt und kann Fehler enthalten. Um diese Seite auf Englisch zu sehen, klicke hier.

Bewegliche Objekte sind Objekte, die auf einem oder mehreren Achsen innerhalb des Platzbewegen. Mit der integrierten Kraft des SimulationsEngine von Roblox kannst du Objekte so bewegen und mit ihrem Umgebung interagieren, dass sie das reale physikalische Verhalten, das für Spieler vertraut und intuitiv ist, wie Schwerkraft, Aerodynamik und Reibung, emulieren.

Dieses Tutorial verwendet die Moving Objects.rbxl Datei als Referenz, erklärt, wie physische Kräfte linke Bewegungen in Studio beeinflussen, und zeigt Ihnen verschiedene Techniken, Objekte von Punkt A nach Punkt B in Ihren Erlebnissen mit verschiedenen Bewegungsverhaltens zu bewegen, einschließlich Anleitung:

  • Verwendung eines LinearVelocity Mover-Konstraints, um eine gesamte Montagemaschine mit einer konstanten linearen Geschwindigkeit zu bewegen.
  • Verwendung eines PrismaticConstraint, um eine Montagemaschine auf eine einzige Achse zu beschränken und sie mit einer konstanten linearen Geschwindigkeit im Verhältnis zu einem Punkt im Platzzu bewegen.
  • Mit der Methode ApplyImpulse einenAssembly mit einem anfänglichen Impuls von Kraft, um dasAssembly langsam abzubremsen.

Liniale Bewegung und physische Kräfte

Roblox Studio ist ein realistischer Simulationsmotor, der das physische Verhalten in Echtzeit simuliert, so dass es wichtig ist, eine hohe Ebene zu verstehen, wie Objekte linearity bewegt sich in Erfahrungen, um zu vorhersagen, wie Objekte im wirklichen Leben mit linearen Bewegungen bewegt werden. Lineare Bewegung ist eine Bewegung entlang eines Achsen. Zum Beispiel bewegt sich ein Block linearl, wenn er eine lineare Bewegung hat.

A gray block in front of a dark background. The movement axis is highlighted, and it faces toward the left of the screen to signify that the block is going to move along the world's Y axis.

Liniale Bewegungen können nicht existieren, ohne dass externe, physische Kräfte die Objekte nach unten ziehen oder nach oben ziehen, um sie zu Verschiebungswerkzeug. Laut Newton's erste Gesetz des Bewegens bleiben stationäre Objekte stationär und bewegliche Objekte in Bewegung mit konstanter Geschwindigkeit, es sei denn, sie werden von einer externen Kraft wie dem Wind aktiviert, um sie zu Verschiebungswerkzeug. Zum Beispiel bleibt ein stationärer Block still, bis ein physischer Kraft wie der Wind ihn bewegt.

Kraft ist die Messung der Richtung und der Intensität eines physischen Zuges oder Ziehens, der Objekte dazu bringt, ihre lineare Geschwindigkeit entlang eines Achsen zu ändern. Ein Ändern der Geschwindigkeit wird als Beschleunigung bekannt. Dieses Konzept ist besonders wichtig für Objekte, die in Studio bewegt werden; je mehr Kraft Sie auf Objekte anwenden, desto schneller beschleunigen sie.

Dies liegt daran, dass die Kraft größer sein muss als alle physischen Kräfte, die sich gegen das Objekt schieben, wie z. B. Schwerkraft oder Reibung. Zum Beispiel muss die physische Kraft des Windes die Menge der Reibung von der Metallplatte überwinden, um den Blöckeweiter zu beschleunigen. Wenn die Kraft des Windes nicht viel größer ist als die Reibung von der Metallplatte, beschleunigt sich der Block, nur langsamer als das vorherige Beisp

A gray block in front of a dark grey metal plate with a diagram that signifies the block will have a plate friction to slow the block's movement from the wind.

Lineargeschwindigkeit ist die Messung der Bewegung eines Objekts, oder wie schnell das Objekt seine Position entlang eines Zeitraums ändert. Studio misst Lineargeschwindigkeit nach der Anzahl der Studs pro Sekunde. Studs sind Roblox's primäre physischen Einheiten für die Messung der Länge und jedes Stud entspricht etwa 28cm in der realen Welt.

A gray block in front of the default baseplate's 4x4 grid texture. A single stud cube rectangle is highlighted.

Die lineare Geschwindigkeit zu verstehen, ist wichtig, um das Gameplay in deinen Erlebnissen zu gestalten, da es hilft, wie viel Kraft du brauchst, um eine bestimmte Geschwindigkeit für deine beweglichen Objekte zu erreichen. Zum Instanzist es wichtig, wie du deine Kraft anpassen musst, um die Objekte in der Umgebung richtig zu bewegen.

Die folgenden Abschnitte gehen tiefer in diese Konzepte ein, da Sie lernen, wie Sie Objekte mit einer konstanten oder linearen Geschwindigkeit entweder mit der nötigen Kraft bewegen, um alle gegenüberliegenden physischen Kräfte innerhalb der Umgebung zu überwinden. Wenn Sie diese Physik Konzepte mit den bevorstehenden Techniken überprüfen, können Sie diese Eigenschaftswerte besser vorhersagen, um ein ideal lineares Bewegungsverhalten in Studio zu erreichen.

Eine konstante lineare Geschwindigkeit erhalten

Für ein Objekt, um eine konstante lineare Geschwindigkeit zu erreichen und zu erhalten, braucht es eine Kraft, um alle gegenüberliegenden physischen Kräfte zu überwinden, die entweder die lineare Geschwindigkeit des Objekts verlangsamen oder es dazu bringen, stationär zu bleiben. Zum Beispiel, wenn Sie ein Objekt in Studio haben möchten, dass eine lineare Geschwindigkeit von [0, 12, 0] in der

Die Menge an Kraft, die nicht nur innerhalb des Umfelds selbst, wie z. B. Schwerkraft und Reibung, benötigt wird, sondern auch auf das Objekt selbst basiert, ist zum Beispiel auf das Objekt mit der größeren Masse. Wenn Sie beispielsweise zwei Objekte desselben Formats auf demselben Achsen bewegen, benötigt das Objekt mit der größeren Masse mehr Kraft, um die gleiche lineare Beschleunigung zu erreichen.

Der kleine Dreieckpart hat eine kleine Menge an Masse, weshalb er weniger Kraft zum Erreichen desselben Beschleunigungs benötigt.
Der große Dreieckpart hat eine große Menge an Masse, so dass er mehr Kraft benötigt, um die gleiche Beschleunigung zu erreichen.

Die folgenden Unterabschnitte verwenden Assemblagen von verschiedenen Formen und Größen, um dir zu zeigen, wie du ein ganzes Objekt oder nur einen Teil des Objekts mit konstanter linealer Geschwindigkeit bewegen kannst. Wenn du mit verschiedenen Eigenschaftswerten experimentierst, wirst du lernen, wie du die maximale Menge Kraft, die du für Assemblungen in deinen eigenen Erlebnissen benötigst, schätzen kannst.

Verwendung von linearen Geschwindigkeitsbeschränkungen

LinearVelocity Objekte sind eine Art Bewegungseinschränkung, die die Kraft auf eine gesamte Montage anwendet, um eine konstante lineare Geschwindigkeit zu gewährleisten. Indem Sie die Position der Montage nicht an einen Achse während ihres Bewegungsfalls an einen轴 ansteuern, ist die Montage frei zu drehen, da sie mit anderen Objekten im Platzkollidiert. Dieser Bewegungst

Wenn die Lotspads miteinander kollidieren, ändern sie die Ausrichtung, aber fließen immer noch im Fluss mit konstanter linealer Geschwindigkeit abwärts.

Um die Montage zu beginnen, muss die LinearVelocity Konstruktion wissen:

  • Die Richtung und die positive oder negative Richtung, in die eine Kraft angewendet werden soll.
  • Die Menge an Studs, die deine Montagemaschine pro Sekunde bewegen soll.
  • Die maximale Menge an Kraft, die der Motor für die Montage anwenden kann, um die konstante lineare Geschwindigkeit zu erreichen.

Um diesen Prozess zu demonstrieren, konfigurieren Sie ein Lily-Pad mit einem Zubehör, das eine LinearVelocity-Einschränkung verwendet, um das Lily-Pad 15 Stunden pro Sekunde entlang der negativen X-Achse mit einer konstanten linearen Geschwindigkeit zu bewegen.

A close up view of a lily pad. The lily pad's constraint visual aid is visible, and it points to the right, which is the world's negative X axis.

Anbauten hinzufügen

Du kannst den Punkt anwenden, indem du ein Attachment -Objekt zu der Montage hinzufügst und dann die Position des Anhangs im Platzkonfigurierst. Die Beispiel- Moving Objects -Erlebnisse platzieren ein Anhang in der Mitte des Lotus-Pads, damit der Beschränkung das Netzwerk entlang eines bestimmten Achses bewegen kann.

Zubehör sind visuelle Helfen, um Ihnen zu helfen, die Achsen ihrer Bewegungen zu sehen. Die gelbe Pfeil zeigt die Hauptachse des Anhangan, und der orange Pfeil zeigt die Sekundärachse des Zubehörs an. Während beide Achsen des Bewegens die Lily-Pad-Bewegung in den Schritten dieser Technik nicht beeinflussen, ist es wichtig, diese visuellen Helfen für z

A attachment's visual aid arrows. The yellow arrow that signfies the attachment's primary axis points up, and the orange arrow that signfies the attachment's secondary axis points to the right.

Um ein Anhanghinzuzufügen:

  1. In dem Explorer-Fenster , erweitern Sie den LinearVelocityExample Modellund dann erweitern Sie sein Kind LilyPad_DIY .

  2. Fügen Sie ein Zubehör in das Pad Meshein.

    1. Bewegen Sie den Mauszeiger über das Netz und klicken Sie auf die Schaltfläche ⊕. Ein Kontextmenü wird angezeigt.
    2. Von dem Menü, fügen Sie ein Zubehörteil ein. Das Zubehörteil wird in der Mitte des Teils angezeigt.
    3. Benennen Sie das Zubehör in MoveAsset umbenennen.
    A close up view of a lily pad and its attachment visual aid. The primary axis points away from the camera, and the secondary axis points upward.

Konfigürieren Sie Constraint

Jetzt, da dein Mesh einen festen Punkt hat, um das Abstandzu bewegen, kannst du die Eigenschaften eines LinearVelocity-Einschränkung konfigurieren, um die Richtung und die Größe für die konstante lineare Geschwindigkeit, die Anzahl der Stunden pro Sekunde, die Mesh bewegen möchte, und die maximale Anzahl von Kraft, die der Motor für das Mesh anwenden kann, zu bestimmen.

Die Moving Objects-Sammlung erfahrung gilt für bis zu 5000 Rowtons an konstanter Kraft, um die Lotus-Pad 15 Stunden pro Sekunde auf der negativen X-Achse in einer konstanten linearen Geschwindigkeit zu bewegen. Rowtons sind Roblox's primäre physikalischen Einheiten für die Messung der Kraft. Um auf Roblox-Physikalische Einheiten und wie sie in Metrischen Einheiten umgewandelt werden,

Um ein Class.LinearVelocityBeschränkungzu konfigurieren:

  1. (Optional) Machen Sie den Constraint in der 3D-Ebene sichtbar, damit Sie auf seine lineare Richtung referenzieren können.

    1. In der Menüleiste, navigieren Sie zur Modell--Registerkarte, dann zur Einschränkungen--Sektion.
    2. Wenn es derzeit nicht aktiviert ist, klicken Sie auf Einschränkung-Details , um die Einschränkungsvisualhilfen anzuzeigen.
    A close up view of the Studio's Constraints section UI.
  2. Fügen Sie ein Class.LinearVelocity Einschränkung in das Pad--Mesh ein.

    1. In dem Explorer-Fenster bewegen Sie den Mauszeiger über das Netz und klicken Sie dann auf das ⊕-Symbol. Ein Kontextmenü wird angezeigt.
    2. Vom Kontextmenü, fügen Sie LinearVelocity ein.
  3. Weisen Sie dem Meshdie Beschränkungzu.

    1. In dem Explorer-Fenster , wählen Sie die Beschränkung.
    2. Im Eigenschaften -Fenster,
      1. Set Attachment0 to MoveAsset .
      2. Setzen Sie MaxForce auf 5000, um bis zu 5000 Rowtons konstanter Kraft zu erreichen, um die Zielgeschwindigkeit zu erreichen.
      3. Behalten Sie RelativeTo zu World , um das Lily-Pad относительно zur Position und Ausrichtung der Welt zu bewegen.
      4. Setze Geschwindigkeitseinschränkung auf Linie , um die Kraft entlang einer Linie vom Anhang zu begrenzen.
      5. Setzen Sie LineDirection auf -1, 0, 0 , um das Lotus-Pad entlang der negativen X-Achse der Welt zu bewegen. Beachten Sie, dass wenn Sie diese Eigenschaft auf 1, 0, 0 setzen, das Lotus-Pad entlang der positiven X-Achse der Welt bewegt sich.
      6. Setze LineVelocity auf 15, um das Lily-Pad pro Sekunde 15 Stunden zu bewegen.
    A close up view of a lily pad and its constraint visual aid arrow that points to the right, or the world's negative X axis.
  4. Überprüfen Sie die Menge der Kraft, die Sie setzen, bewegt die Mesh 15 Stunden pro Sekunde entlang der negativen X-Achse der Welt.

    1. In der Menüleiste navigiere zur Test- -Registerkarte.

    2. In der Simulation--Sektion klicken Sie auf die Modus-Auswahl-. Ein Dropdown-Menü wird angezeigt.

      Rapid playtest options in Test tab of Studio
    3. Wählen Sie Run . Studio simuliert die Erfahrung an der aktuellen Kameraposition ohne Ihren Avatar im Platz.

Verwendung von PrismaticConstraint-Kon约束

PrismaticConstraint Objekte sind eine Art mechanische Einschränkung, die eine starre Verbindung zwischen zwei Anbauten erstellt, wodurch die Elternteile ihrer Assemblagier miteinander relativ verschieben können. Indem beide Anbauten in der gleichen Richtung drehen, kann jede Montage nur drehen, wenn sie in der gleichen Richtung drehen.

Diese Art der Bewegung führt zu stabilen Spielenszenarien, die für Spieler leichter zu vorhersagen sind. Zum Beispiel verwendet die Probe Bewegende Objekte -Objekte, um log Plattformen zu bewegen, die Spieler verwenden, um vorsichtig über einen riesigen Fluss zu fahren.

Wenn Sie PrismaticConstraint.ActuatorType auf Motor setzen, gilt diese Einschränkung auf die beiden Anhänge mit dem Ziel, dass die Anhänge erreichen und beibehalten eine konstante lineare Geschwindigkeit. Wenn Sie einen der Anhänge's Eltern montieren, bewegt die Kraft die unverankerte Montagemaschine weiterhin mit einer konstanten linearen Geschwindigkeit, während die verankerte Montagemaschine stationär bleibt

Um die Montage zu beginnen, muss der PrismaticConstraint-Konstrunktion wissen:

  • Die Richtung und die positive oder negative Richtung, in die eine Kraft angewendet werden soll.
  • Die Anzahl der Studs, die du möchtest, dass die Anhänge pro Sekunde bewegen.
  • Die maximale Menge Kraft, die der Motor für die Anhänge und ihre Eltern montieren kann, um eine konstante lineare Geschwindigkeit zu erreichen.

Um diesen Prozess zu demonstrieren, konfigurieren Sie eine Log-Montage mit zwei Objekten, die Kinderschleifen haben, die eine PrismaticConstraint -Referenz verwenden, um das Log pro Sekunde entlang der negativen X-Achse in einer konstanten linearen Geschwindigkeit 40 Studs zu verschieben.

A close up view of a brown log on top of a river. The log's constraint visual aid is visible and points to the right, or the world's negative X axis.

Anbauten konfigurieren

Sie können die Richtung angeben, in der ein bestimmtes Objekt innerhalb einer Montagemaschine bewegt werden soll, indem Sie zwei Attachment -Objekte zu der Montagemaschine hinzufügen und dann die Ausrichtung und Ausrichtung in der Platzkonfigurieren. Die Beispiel-Erlebnis Moving Objects -Sammlung montiert zwei Anhänge entlang der

Wenn Sie in der nächsten Sektion Ihre PrismaticConstraint-Einschränkung konfigurieren, bewegt das Log in Beziehung zur Ankerpart. In anderen Worten, das Log bewegt sich von der stationären Teil, die nicht bewegen kann, weil sie in der Platzverankert ist.

Um die Anhänge für die prismatische Beschränkungzu konfigurieren:

  1. Im Explorer-Fenster , erweitern Sie den PrismaticConstraintExample -Ordner und dann erweitern Sie sein Kind Log_DIY -Modell.

  2. Fügen Sie eine Anhang an das Log Mesh ein.

    1. Bewegen Sie den Mauszeiger über das Netz und klicken Sie auf die Schaltfläche ⊕. Ein Kontextmenü wird angezeigt.
    2. Von dem Menü, fügen Sie ein Zubehörteil ein. Das Zubehörteil wird in der Mitte des Teils angezeigt.
    3. Benennen Sie das Zubehör in Log附age um.
    A close up view of a log and its attachment visual aid. The primary axis points toward the camera, and the secondary axis points upward.
  3. Verwenden Sie den gleichen Prozess, fügen Sie ein Zubehör an den Anker -Teil ein und benennen Sie das Zubehör dann Anchor附件 um.

    A close up view of a log and two attachment visual aids. The primary axis of the new attachment visual aid points to the right, and the secondary axis points upward.
  4. Verwenden Sie das View Selector -Werkzeug als Referenz für die Weltkoordinaten, drehen Sie Logattachment und Anchorattachment , bis die Hauptachse eines jeden Anhangs auf die negative X-Achse der Welt zeigt

    A close up view of a log and its attachment visual aid. Both attachments have a primary axis that points to the right, and a secondary axis that points upward.
  5. Reposition Anchorattachment , damit beide Anhänge auf der X-Achse der Welt ausgerichtet sind.

    A close up view of a log and its attachment visual aids that are now positioned horizontally. Both attachments have a primary axis that points to the right, and a secondary axis that points upward.

Konfigürieren Sie Constraint

Da Ihre Anhänge auf demselben Achsen ausgerrichtet sind und in Richtung desselben Ziels möchten, dass der Log das Verschiebungswerkzeugwerden soll, können Sie die Eigenschaften eines Class.PrismaticConstraint -Konstraints konfigurieren, um die Zielkonstante lineare Geschwindigkeit in der positiven oder negativen Richtung jedes Anhangs' Hauptachse, die Anzahl der Schrauben, die Sie pro Sekunde bewegt möchten, und die maxim

Während Sie verschiedene Werte für Ihre eigenen Anwendungsfälle auswählen können, gilt die Moving Objects -Sammlung für die Bewegung der Anhänge 40 Radian pro Sekunde auf der negativen X-Achse in einer konstanten linearen Geschwindigkeit über die gesamte Welt. Wenn der Anker-Anhang in einem verankerten Objekt ist, kann nur der Log-Anhang Verschiebungswerkzeugwerden.

Um ein Beschränkungzu konfigurieren:

  1. Fügen Sie ein PrismaticConstraint Objekt in das Log- Meshein.

    1. In dem Explorer-Fenster bewegen Sie den Mauszeiger über das Netz und klicken Sie dann auf das ⊕-Symbol. Ein Kontextmenü wird angezeigt.
    2. Vom Kontextmenü, fügen Sie einen PrismaticConstraint ein.
  2. Weisen Sie dem Log die zugewiesenen Zubehörteile des Logs zu, damit das Log in der Beziehung zu dem verankerten Blockteil bewegt wird.

    1. In dem Explorer-Fenster , wählen Sie die Beschränkung.
    2. Im Eigenschaften -Fenster,
      1. Set Attachment0 to Anchorattachment .
      2. Set Attachment1 to LogArgumente . The constraint displays in the Ansichtsfenster.
    A close up view of a log and its constraint visual aid. It doesn't have a arrow visual aid because it doesn't yet have a set velocity.
  3. In dem Explorer-Fenster , wählen Sie die Beschränkung, dann in dem Eigenschaften-Fenster,

    1. Set ActuatorType to Motor . New property fields display.
    2. Setzen Sie MotorMaxForce auf 50000, um bis zu 50000 Rowtons konstanter Kraft zu erreichen, um die Zielgeschwindigkeit linearity zu erreichen.
    3. Setzen Sie Geschwindigkeit auf 40, um das Holz pro Sekunde zu bewegen 40 Studs pro Sekunde.
    A close up view of a log and its constraint visual aid arrow that points to the right, or the world's negative X axis.
  4. Überprüfen Sie die Menge an Kraft, die Sie einstellen, bewegt das Holz 40 Studs pro Sekunde entlang der negativen X-Achse der Welt.

    1. In der Menüleiste navigiere zur Test- -Registerkarte.

    2. In der Simulation--Sektion klicken Sie auf die Modus-Auswahl-. Ein Dropdown-Menü wird angezeigt.

      Rapid playtest options in Test tab of Studio.
    3. Wählen Sie Run . Studio simuliert die Erfahrung an der aktuellen Kameraposition ohne Ihren Avatar im Platz.

Anwendung einer linearen Kraft anwenden

Eine andere Möglichkeit, die lineare Geschwindigkeit eines Objekts zu ändern, ist, einen Impuls von Kraft anzuwenden. Nach dem Impuls von Kraft wird das Objekt entweder abgesetzt, bis es stationär wird, wenn es einen gegenüberliegenden Kraft wie Reibung hat, oder bleibt in Bewegung mit konstanter linealer Geschwindigkeit, wenn es keine gegenüberliegenden Kräfte gibt.

Diese Technik ist nützlich, um Objekte nach einem wichtigen Spielereignis, wie einer Explosion oder einer makellosen Kollision, zu bewegen, da sie den Spielern sofortige Feedback bietet. Um zu demonstrieren, zeigt die folgende Untersektion, wie Sie einen Spieler:inin den Himmel schießen lassen, wenn er mit einem Sprung-Pad mit einem ursprünglichen Impuls kollidiert, den Sie mit neuen Werten anpassen können, um Ihren eigenen Spielanforderungen zu erfüllen.

Verwendung von ApplyImpulse

Die Methode ApplyImpulse gilt für ein gesamtes Montage, um eine ursprüngliche lineare Geschwindigkeit zu erhalten, bevor sie langsamer zu einer Stoppung verlangsamt, wenn es entgegengesetzte Kräfte gibt. Um das Montieren der Methode zu beginnen, muss die Methode wissen:

  • Die Montagemaschine zum Verschiebungswerkzeug.
  • Die Achse, um Kraft anzuwenden, um eine initiale lineare Geschwindigkeit zu erreichen.
  • Die Menge an Kraft, die auf jede Achse angewendet werden soll.

Sie können all diese Werte in einem Skript, das. PL: die Skriptsdefinieren. Zum Beispiel definiert das Beispiel-Skript die Montage, um als Assemblage das Spielzeug des Spielers zu bewegen, dann wendet es einen Impuls von Kraft an, der 2500 Rowton-Sekunden beträgt, um den Spieler auf der positiven Y-Achse der Welt aufzusteigen. Beachten Sie, dass Spielercharaktere unterschiedliche Mengen an M

Um eine Montage mit ApplyImpulse zu bewegen:

  1. In dem Explorer-Fenster , erweitern Sie den Modellund dann erweitern Sie sein Kind JumpPad_DIY .
  2. Fügen Sie ein Skript in den JumpPad Teil ein.
    1. Bewegen Sie den Mauszeiger über das Teil und klicken Sie auf die Schaltfläche ⊕. Ein Kontextmenü wird angezeigt.
    2. Von dem Menü, fügen Sie ein Skript ein. Die Anfügung wird in der Mitte des Teils angezeigt.
    3. Das Skript umbenennen in JumpScript .
  3. Ersetzen Sie den Standardcode durch den folgenden Codes:

local volume = script.Parent
local function onTouched(other)
local impulse = Vector3.new(0, 2500, 0)
local character = other.Parent
local humanoid = character:FindFirstChildWhichIsA("Humanoid")
if humanoid and other.Name == "LeftFoot" then
other:ApplyImpulse(impulse)
end
end
volume.Touched:Connect(onTouched)