Kontraksi penggerak

*Konten ini diterjemahkan menggunakan AI (Beta) dan mungkin mengandung kesalahan. Untuk melihat halaman ini dalam bahasa Inggris, klik di sini.

Mesin fisika termasuk berikut Constraints yang menerapkan kekuatan atau torsi untuk memindahkan satu atau lebih kumpulan.Selain itu, berbagai batasan mekanis tersedia yang berperilaku sebagai koneksi mekanik konsep, termasuk engsel, resor, tali, dan banyak lagi.

Kecepatan Linear

Kecepatan Linear menerapkan kekuatan pada kumpulan untuk mempertahankan kecepatan konstan di sepanjang vektor 3D, baris, atau 2D plan
Kecepatan Sudut

AngularVelocity menerapkan torque pada kumpulan untuk mempertahankan kecepatan sudut konstan
Sesuaikan Posisi

AlignPosition menerapkan kekuatan untuk memindahkan dua lampiran bersama, atau untuk memindahkan satu lampiran ke posisi tujuan
Sesuaikan Orientasi

AlignOrientation menerapkan torque untuk menyelarikan dua lampiran, atau untuk menyelarikan satu lampiran dengan orientasi tujuan
Kekuatan vektor

VectorForce menerapkan kekuatan linier konstan pada kumpulan
Torsi

Torsi menerapkan torsi konstan pada kumpulan dari pusat massanya
Kekuatan Garis

LineForce menerapkan kekuatan di sepanjang garis teoritis yang menghubungkan dua lampirannya

Visualisasi batasan

Untuk akurat menggambarkan keterbatasan di Studio, Anda dapat menggunakan opsi berikut dari tab Model di bilah alat:

Constraints tools indicated in Model tab

Tampilkan Lasan — Tampilkan WeldConstraints, secara terpisah dari visualisasi batasan lainnya.

Detail Batasan — Tampilkan detil visual lengkap dari batasan non-pengelasan.

Skala — Skala relatif visualisasi.

Buat batasan

Kontraksi penggerak biasanya terhubung satu atau dua Attachments atau Bones.Saat terhubung ke Bones, batasan akan menggunakan posisi dan orientasi animasi mereka.

Untuk membuat batas penggerak, Anda dapat menggunakan alat Buat atau jendela Penjelajah.

  1. Di tab Model , akses menu pemilih tombol Buat dan pilih jenis batasan yang diinginkan, misalnya Kecepatan Angular .

    Constraint picker indicated in Studio toolbar
  2. Di jendela pandang 3D, lerap di atas apa pun Part atau MeshPart dan klik untuk menambahkan baru Attachment ke bagian di titik visualisasi.Alternatifnya, hover over dan klik yang sudah ada Attachment atau Bone untuk menggunakannya untuk kondisi batasan.

  3. Beberapa batasan penggerak menggunakan atau mendukung lampiran sekunder dalam fungsionalitasnya, jadi alat mungkin meminta Anda untuk mengulangi langkah sebelumnya di lain Part , MeshPart , atau Attachment , atau Bone .

    AngularVelocity using one attachment
    Kecepatan Sudut Angular menggunakan satu lampiran
    AlignPosition using two attachments
    Sesuaikan Posisi menggunakan dua lampiran

Simulasi fisik

Untuk menyimulasikan fisika saat bergerak atau berputar bagian, Anda dapat beralih ke mode Fisik di bilah alat Studio, secara efektif memaksa bagian untuk mematuhi batasan fisik.Sebagai contoh, jika Anda menyeret satu bagian di sekitar adegan dan bertabrakan dengan bagian lain, itu akan secara fisik mendorong bagian itu keluar dari jalan.

Konversi penggerak warisan

Jika pengalaman Anda bergantung pada batasan berbasis warisan BodyMover -, tinjau catatan berikut saat mengkonversi ke batasan penggerak modern.

AlignPosition memenuhi sebagian besar kasus penggunaan yang dicakup oleh penggerak deprecated BodyPosition .Untuk disinkronkan dengan cara penggerak lama memperlakukan setiap komponen secara independen dan memungkinkan kekuatan berbeda di setiap dimensi, properti ForceLimitMode dari AlignPosition memungkinkan kondisi untuk beroperasi dalam mode Magnitude atau mode PerAxis:

  • Dalam mode Magnitude , perilaku yang ada dipertahankan dan MaxForce diinterpretasikan sebagai besaran.

  • Di mode PerAxis , kekuatan di setiap sumbu dapat ditentukan secara independen.Karena kekuatan maksimum ditentukan sebagai vektor, referensi frame kekuatan juga dapat ditentukan melalui properti , , dan opsi.Selain itu, formulasi untuk kontrol internal dimodifikasi untuk cocok dengan BodyPosition .

AlignOrientation memenuhi sebagian besar kasus penggunaan yang dicakup oleh penggerak deprecated BodyGyro .Mode AlignType dari AlignOrientation memberikan kebebasan yang cukup untuk sebagian besar aplikasi dan kombinasi beberapa batasan dapat mereplikasi batas torque vektor.Selain itu, mode PrimaryAxisLookAt memaksa sumbu utama dari lampiran pertama kendali ( Attachment0 ) selalu menunjuk ke arah lampiran kedua ( Attachment1 ), sehingga menjadi lebih mudah untuk menambahkan hal-hal seperti kamera keamanan pelacakan gerakan atau rudal terarah.

LinearVelocity memenuhi sebagian besar kasus penggunaan yang dicakup oleh penggerak deprecated BodyVelocity .Meskipun penggerak warisan mengizinkan vektor MaxForce , aplikasi tipikal dari vektor tersebut adalah untuk mematikan komponen tertentu, memungkinkan batasan untuk dinonaktifkan di sepanjang dimensi itu. mencapai efek serupa dengan beroperasi di mode terpisah dan tiga ( ) dimensi yang sesuai dengan satu ( ), dua ( ), dan tiga ( ) dimensi.

Selain itu, properti ForceLimitMode dengan opsi PerAxis menampung aplikasi vektor kekuatan dengan semua komponen nol, seperti peningkatan kekuatan di sepanjang satu sumbu untuk mengimbangi gravitasi.

Meskipun AngularVelocity memiliki beberapa ketidakcocokan dengan penggerak deprecated BodyAngularVelocity , kasus khusus yang terkait dengan ketidakcocokan tersebut belum disoroti oleh komunitas, atau secara internal.

Sebagai peningkatan terpisah, AngularVelocity bekerja dengan Attachments dan properti RelativeTo memungkinkan Anda untuk menentukan CFrame di mana kekuatan ditentukan, misalnya World atau Attachment1 .

VectorForce memenuhi semua kasus penggunaan yang ditawarkan oleh penggerak deprecated BodyForce dan BodyThrust .Kontraksi modern bekerja dengan Attachments dan properti RelativeTo memungkinkan Anda menerapkan kekuatan ke offset relatif dari pusat, mirip dengan cara BodyThrust.Location bekerja.

Kombinasi dari LineForce dan AlignOrientation memenuhi sebagian besar kasus penggunaan yang dicakup oleh penggerak deprecated RocketPropulsion .Dalam contoh rudal terarah, LineForce dapat digunakan untuk mengontrol perilaku "ikuti target" dari RocketPropulsion sementara AlignOrientation dan propertinya LookAtPosition dapat digunakan untuk mengontrol perilaku "wajah target".