アセンブリ は、剛性の で接着された 1つまたは複数の パーツ や、移動可能なジョイントを介して接続された、 のようなものです。アセンブリのパーツのグループ化を モデル コンテナに行い、パーツと関連するオブジェクトを単一のアセットとして素早く整理できます。



物理的な観点から、アセンブリは単一の 剛体 と考えられ、接続されたパーツを相互に押したり引いたりすることはできず、単一のユニットとして移動します。特定の 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 変換が更新されると移動しない部分であり、一貫した物理レプリケーションとネットワーク所有を維持するために使用される部分でもあります。
根部を明示的に設定することはできませんが、次の要因により最も高い確率から最も低い確率まで影響します:

Anchored パーツは常にルートパーツとして割り当てられます。

パーツに Massless が設定されていて、 false (デフォルト) になっているパーツが優先されます。

上位の RootPriority 値が優先されます。

特定の名前の付いたパーツのサイズに基づく優先度、および特定の名前の付いたパーツの乗数
アンカー行動
アセンブリのパーツの 1つがアンカーされると、そのパーツはルートパーツになり、他のすべてのパーツが暗黙的にそれと一緒にアンカーされます。次の順序は、この動作を示しています。
以下では、4つのパーツが WeldConstraints (緑のバー) で結合して、マッチングした色の縁取りで示されたように、単一のアセンブリを形成します。
1つのアセンブリになるように接合された 4つのパーツ アセンブリ内の 1 部分だけがアンカーされている場合、アセンブリは変更されません(根部パーツが変更される可能性があるのは、アンカーされた部分だけです。常に最優先順位が最も高い ルートパーツ になる)。
アンカーアイコンで示された固定部分(新しいルートパーツとなる) 複数のパーツがアンカーされている場合、アセンブリは 分離する 。以下では、左側と上側の両方がアンカーされているため、色付きの経路で示されたように、オリジナルのアセンブリが 2つのアセンブリに分割されます。また、2つのアセンブリ間の WeldConstraint は無効化されます、 since you cannot have an active weld between two anchored assemblies.
それぞれの根部パーツとしてアンカー部品を持つ 2つのアセンブリ