إن التجمع هو واحد أو أكثر من الأجزاء الملحومة بواسطة WeldConstraint صلبة أو المتصلة من خلال مفاصل قابلة للحركة، مثل Motor6Ds. يمكنك تجميع تجمع من الأجزاء في حاوية نموذج لتنظيم الأجزاء والأشياء ذات الصلة بسرعة كأصل واحد.



من منظور فيزيائي، يُعتبر التجمع جسماً صلباً واحداً، مما يعني أنه لا يمكن لأي قوة دفع أو سحب الأجزاء المتصلة من بعضها، وستتحرك ككتلة واحدة. جميع القوى المطبقة على BasePart محددة تطبق على تجمعه — على سبيل المثال، BasePart:ApplyImpulse() يطبق الدفعة على التجمع في BasePart.AssemblyCenterOfMass.
خصائص التجمع
تظهر الخصائص التالية لـ BasePart بيانات تتعلق بتجمعه. ستكون قيمها هي نفسها لأي جزء في نفس التجمع، لذا لا يهم أي جزء تستخدم.
| الخاصية | الوصف |
|---|---|
| BasePart.AssemblyLinearVelocity | متجه السرعة الخطية لتجمع الجزء. تعيين السرعة مباشرة قد يؤدي إلى حركة غير واقعية، لذا يُفضل استخدام قيود VectorForce أو LinearVelocity، أو BasePart:ApplyImpulse() لتغيير فوري في السرعة الخطية. |
| BasePart.AssemblyAngularVelocity | متجه السرعة الزاوية لتجمع الجزء. تعيين السرعة مباشرة قد يؤدي إلى حركة غير واقعية، لذا يُفضل استخدام قيود Torque أو AngularVelocity، أو BasePart:ApplyAngularImpulse() لتغيير فوري في السرعة الزاوية. |
| BasePart.AssemblyCenterOfMass | موضع للقراءة فقط محسوب عبر الكتلة والموقع لجميع الأجزاء في التجمع. القوة المطبقة على مركز الكتلة لن تسبب تسارعًا زاويًا، بل خطيًا فقط. |
| BasePart.AssemblyMass | مجموع BasePart.Mass لجميع الأجزاء في التجمع. إذا كان لدى التجمع جزء مثبت، يتم اعتبار الكتلة غير محدودة. |
| BasePart.AssemblyRootPart | الجزء الذي يتم اختياره تلقائيًا لتمثيل الجزء الأساسي للتجمع. |
الجزء الأساسي للتجمع
كل تجمع لديه جزء أساسي محدد بواسطة خاصية AssemblyRootPart. هذا هو الجزء الذي لا يتحرك عندما يتم تحديث تحويلات Motor6D، وكذلك الجزء المستخدم للحفاظ على تكرار الفيزياء والملكية الشبكية بشكل متسق.
لا يمكنك تعيين الجزء الأساسي صراحة، لكن العوامل التالية تؤثر على الاحتمال من الأعلى إلى الأدنى:

سيتم دائمًا تعيين جزء مثبت كجزء أساسي.

الأجزاء التي تم تعيين Massless لها كـ خطأ (افتراضي) تأخذ الأولوية.

قيم RootPriority الأعلى تأخذ الأولوية.

الأولوية بناءً على حجم الجزء (أكبر مساحة وجه)، مع مضاعفات لأنواع الأجزاء المحددة. أجزاء Seats وVehicleSeats تحصل على أعلى مضاعف، تليها الأجزاء المسماة HumanoidRootPart، ثم الأجزاء المسماة Torso.
سلوك التثبيت
عندما يتم تثبيت أحد الأجزاء في التجمع، يصبح هذا الجزء هو الجزء الأساسي وتصبح جميع الأجزاء الأخرى مثبتة معه بشكل ضمني. توضح التسلسل التالي هذا السلوك.
أدناه، تم لحام أربعة أجزاء معًا باستخدام WeldConstraints (أشرطة خضراء) لتشكيل تجمع واحد، كما هو مبين بواسطة الحدود الملونة المطابقة.

أربعة أجزاء ملحومة لتصبح تجمعًا واحدًا إذا تم تثبيت جزء واحد فقط في التجمع، فلن يتغير التجمع، بخلاف احتمال تغيير الجزء الأساسي (الجزء المثبت دائمًا لديه أعلى أولوية ليصبح الجزء الأساسي).

الجزء المثبت (كما هو موضح بأيقونة مثبت) يصبح الجزء الأساسي الجديد إذا تم تثبيت أكثر من جزء واحد، فإن التجمع سينقسم إلى قسمين. أدناه، تم تثبيت كل من الجزء الأيسر والأعلى، لذا يت split التجمع الأصلي إلى تجمعين كما هو موضح بواسطة الحدود الملونة. أيضًا، يتم تعطيل WeldConstraint بين التجمعين، حيث لا يمكنك أن يكون لديك لحام نشط بين تجمعين مثبتتين.

تجمعان مع أجزاء مثبتة كأجزائها الأساسية على التوالي