Tworzenie wirujących obiektów

*Ta zawartość została przetłumaczona przy użyciu narzędzi AI (w wersji beta) i może zawierać błędy. Aby wyświetlić tę stronę w języku angielskim, kliknij tutaj.

Wirujące obiekty to obiekty, które obracają się wokół jednej lub więcej osi w przestrzeni 3D. Wykorzystując wbudowaną moc silnika symulacji Roblox, możesz sprawić, że obiekty będą się obracać i wchodzić w interakcje z ich otoczeniem w sposób, który emuluje rzeczywiste zachowanie fizyczne, które jest znajome i intuicyjne dla graczy, takie jak grawitacja, aerodynamika i tarcie.

Korzystając z pliku Wirujące Obiekty .rbxl jako odniesienia, ten samouczek wyjaśnia, jak siły fizyczne wpływają na ruch kątowy w Studio i pokazuje różne techniki obracania obiektów w twoich grach z różnym zachowaniem wirującym, w tym wskazówki dotyczące:

  • Używania ograniczenia AngularVelocity, aby obracać całą zespołową konstrukcję z stałą prędkością kątową.
  • Używania ograniczenia HingeConstraint, aby obracać część w ramach zespołu z stałą prędkością kątową, podczas gdy reszta zespołu pozostaje w spoczynku.
  • Używania metody ApplyAngularImpulse, aby obracać zespół z początkowym impulsem siły kątowej, tak aby zespół powoli zwalniał z czasem.

Ruch kątowy i siły fizyczne

Roblox Studio to silnik symulacji rzeczywistej, który emuluje zachowanie fizyczne w czasie rzeczywistym, więc aby przewidzieć zachowanie wirujących obiektów w grach, ważne jest, aby mieć ogólne zrozumienie, jak obiekty obracają się w rzeczywistości w ruchu kątowym.

Ruch kątowy, lub ruch obrotowy, to ruch wokół stałego punktu lub osi. Na przykład, gdy śmigło ma ruch kątowy, obraca się wokół swojej osi obrotu w środku śmigła.

Ruch kątowy nie może istnieć bez zewnętrznych, fizycznych sił popychających lub ciągnących obiekty do obrotu. Zgodnie z pierwszą zasadą ruchu Newtona, obiekty w spoczynku pozostają w spoczynku, a poruszające się obiekty pozostają w ruchu z stałą prędkością, chyba że działają na nie zewnętrzne siły. Na przykład, śmigło w spoczynku pozostaje w spoczynku, chyba że siła fizyczna, taka jak wiatr, popycha je do obrotu.

Moment obrotowy to miara siły fizycznej, która powoduje obrót obiektów, i jest odpowiedzialny za uzyskiwanie przez obiekty przyspieszenia kątowego. Koncepcja ta jest szczególnie ważna dla obiektów wirujących w Studio; im więcej momentu obrotowego zastosujesz do obiektów, tym szybciej mogą one przyspieszać.

Dzieje się tak, ponieważ moment obrotowy musi być większy niż jakiekolwiek kierunkowe siły fizyczne działające w przeciwnym kierunku, takie jak grawitacja czy tarcie. Na przykład, jeśli umieścisz śmigło w ziemi, siła fizyczna wiatru musi pokonać ilość tarcia z ziemi, aby kontynuować przyspieszanie wirującego śmigła. Jeśli siła wiatru nie jest znacznie większa niż tarcie z ziemi, śmigło przyspiesza, ale wolniej niż w poprzednim przykładzie.

Prędkość kątowa to miara szybkości obrotu obiektu, czyli jak szybko obiekt obraca się wokół stałego punktu lub osi w określonym czasie. Studio mierzy prędkość kątową w zależności od tego, ile radianów obiekt obraca się na sekundę. W jednym obrocie jest 2π radianów (6.283), więc aby obiekt wykonał pełny obrót na sekundę, musi mieć wystarczająco dużo momentu obrotowego, aby obrócić się o około 6 radianów. Zrozumienie prędkości kątowej jest ważne dla projektowania rozgrywki w twoich grach, ponieważ pomaga określić, ile momentu obrotowego potrzebujesz, aby osiągnąć określone przyspieszenie dla swoich wirujących obiektów.

Następujące sekcje zagłębiają się w te koncepcje, gdy uczysz się, jak obracać obiekty z stałą lub początkową prędkością kątową z niezbędnym momentem obrotowym, aby pokonać wszelkie przeciwdziałające siły fizyczne w otoczeniu. Przeglądając te koncepcje fizyczne z nadchodzącymi technikami, możesz dokładniej przewidzieć, jak dostosować wartości właściwości, aby osiągnąć idealne zachowanie wirujące w Studio.

Utrzymanie stałej siły kątowej

Aby obiekt osiągnął i utrzymał stałą prędkość kątową, potrzebuje siły kątowej, aby pokonać wszelkie przeciwdziałające siły fizyczne, które albo spowalniają prędkość kątową obiektu, albo powodują, że obiekt pozostaje w spoczynku. Na przykład, jeśli chcesz, aby obiekt miał prędkość kątową [0, 12, 0] w Studio, potrzebujesz wystarczająco dużo momentu obrotowego, aby obiekt osiągnął i utrzymał 12 radianów na sekundę wzdłuż osi Y w swoim otoczeniu, czyli około dwóch pełnych obrotów na sekundę.

Ilość momentu obrotowego, którą stosujesz do swoich obiektów, zależy nie tylko od przeciwdziałających sił fizycznych w samym otoczeniu, takich jak grawitacja i tarcie, ale także od samego obiektu. Na przykład, jeśli masz dwa obiekty o tym samym kształcie, które obracają się wokół tej samej osi, większy obiekt z większym momentem bezwładności wymaga więcej momentu obrotowego, aby osiągnąć to samo przyspieszenie kątowe.

Mała część trójkąta ma niższy moment bezwładności, więc potrzebuje mniej siły kątowej, aby osiągnąć to samo przyspieszenie.
Duża część trójkąta ma większy moment bezwładności, więc potrzebuje więcej siły kątowej, aby osiągnąć to samo przyspieszenie.

Następujące podsekcje wykorzystują zespoły o różnych kształtach i rozmiarach, aby nauczyć cię, jak obracać albo cały obiekt, albo tylko część obiektu. Eksperymentując z różnymi wartościami właściwości, nauczysz się, jak oszacować maksymalną ilość momentu obrotowego, której potrzebujesz dla zespołów w swoich grach.

Użyj ograniczeń AngularVelocity

Obiekty AngularVelocity to rodzaj ograniczenia mover, które stosują moment obrotowy na całym zespole, aby utrzymać stałą prędkość kątową. Aby rozpocząć obracanie zespołu, ograniczenie AngularVelocity musi wiedzieć:

  • Punkt i dodatni lub ujemny kierunek, w którym należy zastosować siłę kątową.
  • Ilość radianów, które chcesz, aby zespół obracał się na sekundę.
  • Maksymalną ilość momentu obrotowego, którą silnik może zastosować, aby zespół osiągnął stałą prędkość kątową.

Aby zademonstrować ten proces, dodasz blok do swojego obszaru roboczego z załącznikiem, do którego odnosi się ograniczenie AngularVelocity, aby obrócić blok o 6 radianów na sekundę wzdłuż osi Y świata z stałą prędkością kątową, czyli około jednego pełnego obrotu.

Dodaj załącznik

Możesz określić stały punkt do obracania zespołu, dodając obiekt Attachment do zespołu, a następnie konfigurując położenie załącznika w przestrzeni 3D. Przykładowa gra Wirujące Obiekty umieszcza załącznik w centrum bloku, aby ograniczenie mogło obracać część w kierunku przeciwnym do ruchu wskazówek zegara wokół środka samego siebie.

Załączniki zawierają wizualne wskazówki, które pomagają zobaczyć ich osie obrotu. Żółta strzałka oznacza główną oś załącznika, a pomarańczowa strzałka oznacza drugorzędną oś załącznika. Chociaż żadna z osi obrotu nie wpływa na obrót bloku w krokach tej techniki, ważne jest, aby zrozumieć te wizualne wskazówki na przyszłość, ponieważ mogą one pomóc w określeniu idealnego zachowania dla różnych typów ograniczeń, takich jak HingeConstraint w następnej technice.

Aby dodać załącznik:

  1. W oknie Eksplorator wstaw część bloku do Workspace.

  2. Wstaw załącznik do nowej części.

    1. W oknie Eksplorator najedź na część i kliknij przycisk ⊕. Wyświetli się menu kontekstowe.
    2. Z menu wstaw Załącznik. Załącznik wyświetli się w centrum części.
    3. Zmień nazwę załącznika na SpinAttachment.

Skonfiguruj ograniczenie

Teraz, gdy twój blok ma stały punkt do obracania, możesz skonfigurować właściwości ograniczenia AngularVelocity, aby określić kierunek obrotu, oś lub osie, na które należy zastosować docelową stałą prędkość kątową, ilość radianów, które chcesz, aby blok obracał się na sekundę, oraz maksymalną ilość momentu obrotowego, którą silnik może zastosować, aby blok osiągnął stałą prędkość kątową.

Przykładowa gra Wirujące Obiekty stosuje do 1000 Rowton-studów stałej siły kątowej, aby obrócić blok o 6 radianów na sekundę wzdłuż osi Y świata z stałą prędkością kątową. Rowton-study to podstawowe jednostki fizyczne Roblox do pomiaru momentu obrotowego. Aby odwołać się do jednostek fizycznych Roblox i jak przeliczają się na jednostki metryczne, zobacz Jednostki Roblox.

Aby skonfigurować ograniczenie AngularVelocity:

  1. Aby uczynić ograniczenie widocznym w widoku, abyś mógł odwołać się do jego kierunku obrotu, włącz Pokaż szczegóły ograniczenia z menu Widok w Studio.

  2. Wstaw ograniczenie AngularVelocity do części.

    1. W oknie Eksplorator najedź na część, a następnie kliknij ikonę ⊕. Wyświetli się menu kontekstowe.
    2. Z menu kontekstowego wstaw AngularVelocity. Wizualna wskazówka ograniczenia wyświetli się w środku części.
  3. Przypisz załącznik części do nowego ograniczenia.

    1. W oknie Eksplorator wybierz ograniczenie.
    2. W oknie Właściwości,
      1. Ustaw Attachment0 na SpinAttachment.
      2. Ustaw AngularVelocity na 0, 6, 0, aby obrócić część o 6 radianów na sekundę wzdłuż osi Y. Zauważ, że jeśli ustawisz tę właściwość na 0, -6, 0, blok obróci się w kierunku zgodnym z ruchem wskazówek zegara.
      3. Ustaw MaxTorque na 1000, aby zastosować do 1000 Rowton-studów stałej siły kątowej na sekundę, aby osiągnąć docelową prędkość kątową.
      4. Utrzymaj RelativeTo na World, aby obracać blok w odniesieniu do pozycji i orientacji świata.
  4. Zweryfikuj, że ilość momentu obrotowego, którą ustawiłeś, obraca blok o 6 radianów na sekundę wzdłuż osi Y świata.

    • Wybierz tryb symulacji Uruchom z rozwijanego menu mezzaniny i kliknij przycisk Graj, aby rozpocząć. Studio symuluje grę w aktualnej pozycji kamery bez twojej postaci w przestrzeni 3D.

      Opcja Uruchom w rozwijanym menu trybów testowych mezzaniny Studio.

Możesz potrzebować dostosować swój moment obrotowy w zależności od skali bloku i wszelkich przeciwdziałających sił fizycznych w swoim otoczeniu. Na przykład, właściwości ograniczenia AngularVelocity w przykładowej grze działają dla części bloku o domyślnych rozmiarach 4, 1, 2 na płaskiej platformie z materiałem plastikowym oraz w otoczeniu z klasyczną grawitacją.

Jednak jeśli twój blok jest większy i znajduje się na trawie, musisz zwiększyć właściwość AngularVelocity.MaxTorque, ponieważ siła kątowa musi pokonać zarówno masę bloku, jak i tarcie z otoczenia. Na przykład, duża część bloku, która jest czterokrotnie większa od części w przykładzie, potrzebuje co najmniej 300000 Rowton-studów stałej siły kątowej, aby osiągnąć ustawioną prędkość kątową!

Użyj ograniczeń HingeConstraint

Obiekty HingeConstraint to rodzaj ograniczenia mechanicznego, które pozwala dwóm załącznikom obracać się wokół jednej osi, ograniczając załączniki do tej samej pozycji i ich głównych osi w tym samym kierunku. Gdy ustawisz HingeConstraint.ActuatorType na Silnik, to ograniczenie stosuje moment obrotowy na dwóch załącznikach w celu osiągnięcia i utrzymania stałej prędkości kątowej.

Dodatkowo, gdy umieszczasz załączniki w zespole z dwoma obiektami, obiekty łączą się i próbują obracać razem zgodnie z ustaloną główną osią załącznika. Jeśli zakotwiczysz jeden z tych obiektów, siła kątowa nadal obraca drugi obiekt z stałą prędkością kątową, podczas gdy reszta zespołu pozostaje w spoczynku.

Na przykład, aby rozpocząć obracanie konkretnego obiektu w zespole, ograniczenie HingeConstraint musi wiedzieć:

  • Pozycję, w której chcesz, aby załączniki się nakładały.
  • Punkt i dodatni lub ujemny kierunek, w którym należy zastosować siłę kątową.
  • Ilość radianów, które chcesz, aby załącznik obracał się na sekundę.
  • Maksymalną ilość momentu obrotowego, którą silnik może zastosować, aby załącznik osiągnął stałą prędkość kątową.

Aby zademonstrować ten proces, dodasz zespół śmigła z dwoma obiektami do swojego obszaru roboczego z załącznikami w obu obiektach, do których odnosi się ograniczenie HingeConstraint, aby obrócić śmigło o 3 radiany na sekundę (około połowy pełnego obrotu na sekundę) wzdłuż osi Y z stałą prędkością kątową, podczas gdy podstawa śmigła pozostaje w spoczynku.

Pobierz zasób śmigła

Sklep Twórcy to zakładka w Narzędziu, której możesz użyć, aby znaleźć wszystkie zasoby stworzone przez Roblox i społeczność Roblox do użycia w swoich projektach, w tym modele, obrazy, siatki, dźwięki, wtyczki, filmy i czcionki. Możesz użyć Sklepu Twórcy, aby dodać pojedynczy zasób lub bibliotekę zasobów bezpośrednio do otwartej gry.

Ten samouczek odnosi się do modelu śmigła, którego możesz użyć, gdy powielasz każdy krok techniki HingeConstraint obracania obiektów. Aby uzyskać ten zasób śmigła z twojego inwentarza do gry:

  1. Dodaj śmigło do swojego inwentarza.

    1. Przejdź do strony szczegółów zasobu w Sklepie Twórcy.
    2. W prawym górnym rogu kliknij przycisk Pobierz model. Zasób śmigła jest teraz w twoim inwentarzu i możesz go ponownie użyć w dowolnym projekcie na platformie.
  2. W Studio przejdź do zakładki Strona główna, a następnie kliknij przycisk Narzędzie. Otwiera się okno Narzędzie.

    Narzędzie wyróżnione w pasku narzędzi Studio.
  3. W oknie Narzędzie kliknij zakładkę Inwentarz. Wyświetla się sortowanie Moje modele.

  4. Kliknij kafelek Śmigło. Model wyświetli się w twoim widoku.

Skonfiguruj załączniki

Możesz określić zarówno pozycję, w której chcesz, aby załączniki się nakładały, jak i kierunek ruchu obrotowego, aby obrócić konkretny obiekt w zespole, dodając dwa obiekty Attachment do zespołu, a następnie konfigurując ich wyrównanie i orientację w przestrzeni 3D.

Przykładowa gra Wirujące Obiekty wyrównuje dwa załączniki w pobliżu pozycji, w której niezakotwiczony wirnik nakłada się na zakotwiczony podstawę, i orientuje ich główną oś obrotu w górę, aby obracały się w kierunku przeciwnym do ruchu wskazówek zegara. Załącznik podstawy nie może się obracać w tym przykładzie, ponieważ podstawa jest zakotwiczona.

Aby skonfigurować załączniki dla ograniczenia zawiasu:

  1. Wstaw obiekt Attachment do Głowy i Podstawy.

    1. W oknie Eksplorator najedź na Głowę i kliknij przycisk ⊕. Wyświetli się menu kontekstowe.
    2. Z menu wstaw Załącznik.
    3. Powtórz ten proces dla Podstawy.
    4. Zmień nazwę obu załączników na HeadAttachment i BaseAttachment, odpowiednio.
  2. Obróć HeadAttachment i BaseAttachment, aby główna oś każdego załącznika wskazywała w górę wzdłuż osi Y. To mówi Studio, aby obracać załączniki w kierunku przeciwnym do ruchu wskazówek zegara.

  3. Przenieś BaseAttachment na górę Podstawy, a HeadAttachment na dolną krawędź Śmigła. To mówi Studio, gdzie połączyć sam zawias i nałożyć oba załączniki w czasie rzeczywistym.

Skonfiguruj ograniczenie

Teraz, gdy twoje załączniki mają pozycję do nałożenia i kierunek ruchu obrotowego, możesz skonfigurować właściwości ograniczenia HingeConstraint, aby określić ilość radianów, które chcesz, aby załącznik obracał się na sekundę, oraz maksymalną ilość momentu obrotowego, którą silnik może zastosować, aby załącznik osiągnął stałą prędkość kątową.

Podobnie jak w poprzedniej technice, przykładowa gra Wirujące Obiekty stosuje do 1000 Rowton-studów stałej siły kątowej, aby obrócić załącznik o 3 radiany na sekundę wzdłuż osi Y z stałą prędkością kątową. Jednak ponieważ załącznik podstawy znajduje się w zakotwiczonym obiekcie, tylko załącznik śmigła może się obracać.

Aby skonfigurować ograniczenie zawiasu:

  1. Wstaw obiekt HingeConstraint do Głowy.

    1. W oknie Eksplorator najedź na Głowę, a następnie kliknij ikonę ⊕. Wyświetli się menu kontekstowe.
    2. Z menu kontekstowego wstaw HingeConstraint.
  2. Przypisz załączniki śmigła do nowego ograniczenia, aby śmigło obracało się w odniesieniu do zakotwiczonych podstaw.

    1. W oknie Eksplorator wybierz ograniczenie.
    2. W oknie Właściwości,
      1. Ustaw Attachment0 na BaseAttachment.
      2. Ustaw Attachment1 na HeadAttachment. Zawias wyświetli się w widoku.
  3. W oknie Eksplorator wybierz ograniczenie, a następnie w oknie Właściwości,

    1. Ustaw ActuatorType na Silnik. Wyświetlą się nowe pola właściwości.
    2. Ustaw MotorMaxTorque na 1000, aby zastosować do 1000 Rowton-studów stałej siły kątowej, aby osiągnąć docelową prędkość kątową.
    3. Ustaw AngularVelocity na 3, aby obrócić głowę śmigła o 3 radiany na sekundę.
  4. Zweryfikuj, że ilość momentu obrotowego, którą ustawiłeś, obraca śmigło o 3 radiany na sekundę wzdłuż osi Y.

    • Wybierz tryb symulacji Uruchom z rozwijanego menu mezzaniny i kliknij przycisk Graj, aby rozpocząć. Studio symuluje grę w aktualnej pozycji kamery bez twojej postaci w przestrzeni 3D.

      Opcja Uruchom w rozwijanym menu trybów testowych mezzaniny Studio.

Zastosuj początkową siłę kątową

Innym sposobem zmiany prędkości kątowej obiektu jest zastosowanie impulsu siły kątowej. Po impulsie siły kątowej obiekt albo zwalnia, aż stanie się nieruchomy, jeśli istnieje siła przeciwdziałająca, taka jak tarcie, albo pozostaje w ruchu z stałą prędkością, jeśli nie ma żadnych sił przeciwdziałających.

Ta technika jest przydatna do obracania obiektów po znaczącym wydarzeniu w grze lub pogodowym, takim jak silny podmuch wiatru, ponieważ zapewnia graczom natychmiastową informację zwrotną. Aby to zademonstrować, następująca podsekcja nauczy cię, jak obrócić zespół z początkową losową siłą kątową, którą możesz dostosować do nowych wartości, aby spełnić własne wymagania dotyczące rozgrywki.

Użyj ApplyAngularImpulse

Metoda ApplyAngularImpulse stosuje moment obrotowy na całym zespole, aby uzyskać początkową prędkość kątową przed zwolnieniem do zatrzymania. Aby rozpocząć obracanie zespołu, metoda musi wiedzieć:

  • Zespół do obrotu.
  • Oś, na którą należy zastosować moment obrotowy, aby osiągnąć początkową prędkość kątową.
  • Ilość momentu obrotowego do zastosowania na każdej osi.

Możesz zdefiniować wszystkie te wartości w skrypcie. Na przykład, przykładowy skrypt definiuje zespół do obrotu jako rodzica skryptu, a następnie stosuje losowy impuls siły kątowej między 0 a 100 Rowton-studów wzdłuż osi Y.

Aby obrócić zespół, używając ApplyAngularImpulse:

  1. Wstaw część kuli do Workspace. Przykład używa kuli z MaterialVariant, abyś mógł wyraźnie zobaczyć ruch kuli.

  2. Wstaw skrypt do nowej części.

    1. W oknie Eksplorator najedź na część i kliknij przycisk ⊕. Wyświetli się menu kontekstowe.
    2. Z menu wstaw Skrypt.
  3. Zastąp domyślny kod następującym kodem:

local part = script.Parent
local impulse = Vector3.new(0, math.random(0, 100), 0)
part:ApplyAngularImpulse(impulse)
©2026 Roblox Corporation. Nazwa Roblox, logo Roblox oraz hasło „Powering Imagination” należą do naszych zarejestrowanych i niezarejestrowanych znaków towarowych na terenie Stanów Zjednoczonych oraz w innych krajach.