MeshPart オブジェクトは BasePart クラスの子孫です。これらは メッシュ を表し、3Dオブジェクトを構成する頂点、エッジ、面のコレクションです。スタジオで直接作成できるパーツとは異なり、メッシュを作成するには Blender や Maya などのサードパーティのモデリングアプリケーションを使用し、それを MeshPart オブジェクトとしてスタジオにインポートする必要があります。
メッシュをスタジオにインポートした後は、テクスチャ、詳細レベル、衝突精度などのレンダリングプロパティをカスタマイズできます。自分のメッシュをインポートするだけでなく、Creator Store を使用してユーザーがアップロードしたメッシュをブラウズして選択することもできます。
Roblox は、一般的なメッシュ仕様 に準拠している限り、多くの種類のメッシュをサポートしています。基本的なメッシュは、少なくとも1つのメッシュオブジェクトと1つのテクスチャで構成されています。



スタジオは、アバターキャラクターモデルやアクセサリーを作成するためのコンポーネントを持つメッシュもサポートしています。たとえば、リギングとスキニング データです。
メッシュのインポート
Importer を使用してメッシュをスタジオにインポートできます。このツールを使用すると、ワークスペースや Toolbox にインポートする前にメッシュをプレビューおよび検査できます。たとえば、テクスチャ、リギング、スキニング、アニメーションデータを確認できます。また、問題をフラグ付けし、エラーのあるメッシュを拒否します。
インポートするメッシュファイルに特定の命名規則を使用しているオブジェクトや顔のアニメーションデータが含まれている場合、インポーターはそれを自動的に検出し、MeshPart の代わりに次のオブジェクトに変換します。
- Attachment — 名前の末尾に _Att が付いているオブジェクト。
- WrapTarget — 名前の末尾に _OuterCage が付いているオブジェクト。
- FaceControls — アバターキャラクターの頭部と適切な顔のアニメーションデータを含むオブジェクト。
メッシュと非3Dアセット(画像や音声など)を一括インポートしたい場合は、Asset Manager を使用できます。ただし、リギング、スキニング、アニメーションデータ、アクセサリー、または顔のアニメーションを持つキャラクターをインポートすることはサポートされていません。
メッシュのカスタマイズ
基本的なパーツとは異なり、メッシュには高度なレンダリング精度のために調整できるカスタマイズオプションが多数あります。
テクスチャ
テクスチャ は、色やパターンなどの2Dの詳細を追加することでメッシュの視覚的外観に寄与します。スタジオでは、MeshPart.TextureID プロパティを使用して1つのテクスチャを適用するか、メッシュの SurfaceAppearance 子オブジェクト内で最大4つの物理ベースのレンダリング(PBR)テクスチャを適用できます。PBRテクスチャを使用すると、単一のオブジェクトに複数のタイプのテクスチャ画像またはマップを使用して、リアルなシェーディングとライティングを表現できます。
スタジオは、オブジェクトの表面外観の視覚的特性に対応する4つのPBRテクスチャマップをサポートしています。複数のテクスチャマップを組み合わせることで、あらゆる照明環境での色、粗さ、反射率をより正確にシミュレートし、アセットや環境の視覚要素を強化できます。PBRテクスチャとテクスチャマップの詳細については、PBR テクスチャ を参照してください。


PBRテクスチャを適用するには、次のオブジェクトのいずれかを使用できます。
- SurfaceAppearance — メッシュ表面にPBRテクスチャを適用し、ジオメトリには影響しません。
- MaterialVariant — メッシュ表面にPBRテクスチャを適用するだけでなく、物理的特性を追加するカスタムマテリアルを表します。
メッシュにPBRテクスチャを追加するには:
- Properties ウィンドウで、PBRテクスチャマップに対応するプロパティを編集します。
詳細レベル
メッシュの詳細レベルは、Enum.RenderFidelity プロパティを使用して動的に制御できます。デフォルト値は Automatic で、これはメッシュの詳細がカメラからの距離に基づいていることを意味します。以下の表に示すように。
| カメラからの距離 | レンダリング精度 | 例 |
|---|---|---|
| 250スタッド未満 | 最高 | ![]() |
| 250-500スタッド | 中 | ![]() |
| 500スタッド以上 | 最低 | ![]() |
衝突精度
衝突精度 は、メッシュの視覚的表現が物理的境界にどれだけ近いかを決定します。MeshPart.CollisionFidelity プロパティには次のオプションがあります。
- ボックス — 小さなまたは非対話型のオブジェクトに最適なバウンディング衝突ボックスを作成します。
- ハル — 凹凸の少ないオブジェクトに適した凸ハルを生成します。
- デフォルト — 複雑なオブジェクトに適したおおよその衝突形状を生成し、凹面をサポートします。
- PreciseConvexDecomposition — 最も正確な精度を提供しますが、視覚の1:1表現ではありません。このオプションは最も高価なパフォーマンスコストがかかり、エンジンが計算するのに時間がかかります。
- 調整可能 — MeshPart.CollisionFidelity を Tunable に設定すると、Properties ウィンドウに CollisionPrecision スライダーが表示されます。スライダーを上に動かすと、より正確で高価な衝突ジオメトリが生成され、下に動かすと粗くて安価なジオメトリが生成されます。すべて異なる精度オプションに切り替えることなく行えます。デフォルトの CollisionPrecision 値は固定されておらず、エンジンはメッシュのサイズに基づいて適切な精度とコストを賢く選択します。

衝突精度オプションのパフォーマンスへの影響とそれを軽減する方法についての詳細は、パフォーマンスの改善 を参照してください。精度とパフォーマンスの要件のバランスを取る衝突精度オプションの選択方法についての詳細な手順は、物理およびレンダリングパラメータの設定 を参照してください。
リギングとスキニング
リギング は、メッシュを内部のポーズ可能なスケルトンリグに接続するプロセスです。リギングされたメッシュは、キャラクターの膝や肘などのモデル内の内部ボーンを使用してメッシュ表面を回転させたり動かしたりすることを可能にします。スキニング は、リギングされたメッシュがよりリアルな方法で変形、伸縮、曲がることを可能にします。
リギングとスキニングの詳細については、リギングとスキニング を参照してください。メッシュをリギングした後は、Animation Editor を使用してアニメーションやポーズを追加できます。アニメーションの作成についての詳細は、アニメーションを作成 を参照してください。マーケットプレイスの3Dアセット(アバターの衣服やボディなど)もリギングとスキニングが必要です。マーケットプレイスアセットの要件については、Avatar を参照してください。


