Robloxのために衣服を作成する際は、互換性を確保し、パフォーマンスと品質を最適化するために特定の技術要件を満たすことが重要です。これらの要件の多くは、サードパーティのモデリングアプリケーションでアセットを設計・モデリングする際に適用する必要があります。
剛性アクセサリーとレイヤー可能なアクセサリーは多くの技術要件を共有していますが、レイヤー可能な衣服アクセサリーは、異なるボディスケールでアクセサリーが適切に変形して伸縮することを保証するために、追加のコンポーネントを含める必要があります。
これらのアセットをマーケットプレイスで公開および販売する予定がある場合は、アクセサリーや衣服アイテムに対して従う必要がある追加のマーケットプレイスポリシー基準があります。
エクスポートの準備ができたら、BlenderとMayaのメッシュエクスポート設定についてはエクスポート要件を参照してください。
ジオメトリと予算
- 単一メッシュ - アクセサリーは単一のメッシュである必要があります。
- 予算 - アクセサリーは4k三角形を超えてはなりません。
- 防水性 - 全てのジオメトリは、露出した穴や裏面がない防水性でなければなりません。
- 可能な限りクワッドを使用してください。5つ以上の辺を持つ面は避けてください。
- メッシュサイズ - アクセサリーアセットのタイプに応じて、メッシュはそのボディスケールに応じた標準サイズ(スタッドで、取り付けポイントを中心とする)に従う必要があります。
サイズ要件
レイヤー可能なアセットのタイプに応じて、サイズ要件は以下の最大幅、高さ、および深さ(スタッドで)を超えてはなりません。
| アセットタイプ | 幅 (X) | 高さ (Y) | 深さ (Z) |
|---|---|---|---|
| Tシャツ、シャツ、セーター、ジャケット、パンツ、ショートパンツ、ドレス & スカート | 8 | 8 | 8 |
| 眉毛およびまつげ | 1.5 | 0.5 | 0.5 |
取り付けポイント
Attachmentオブジェクトは、アクセサリーモデルがキャラクターボディのポイントに取り付けられる位置を示します。剛性またはレイヤー可能アクセサリーを作成する場合、Studioのアクセサリーフィッティングツール(AFT)は自動的に適切なAttachmentを追加し、以下の仕様で設定します:
- 1つの取り付け - 各アクセサリー、レイヤー付き衣服を含むは、関連するボディパートに対して少なくとも1つの取り付けポイントを必要とします。
Studioで手動で取り付け名を設定する場合、各アクセサリータイプに対して次のAttachment名を使用します:
| アクセサリータイプ | 取り付け名 |
|---|---|
| 帽子 | HatAttachment |
| 背中 | BodyBackAttachment |
| ウエスト | WaistFrontAttachment, WaistCenterAttachment, WaistBackAttachment |
| 肩 | RightShoulderAttachment, RightCollarAttachment, NeckAttachment, LeftCollarAttachment, LeftShoulderAttachment |
| 顔、まつげ、眉毛 | FaceFrontAttachment, FaceCenterAttachment |
| 首 | NeckAttachment |
| 前面 | BodyFrontAttachment |
| レイヤー付きトップ(シャツ、Tシャツ、セーター、ジャケット) | BodyFrontAttachment |
| レイヤー付きボトム(パンツ、ショートパンツ、ドレススカート) | WaistCenterAttachment |
- 肩とカラー - 肩とカラーの取り付けポイントは、剛性アクセサリーのキャラクターリグに対して異なる相互作用を持ちます。
- RightShoulderAttachmentまたはLeftShoulderAttachmentを使用しているアイテムは、キャラクターの腕と一緒に動きます。
- RightCollarAttachmentまたはLeftCollarAttachmentを使用しているアイテムは、キャラクターの腕と一緒に動きません。
顔のアクセサリー
髪、眉毛、まつげなどの顔のアクセサリーは、アバターボディのアップロードとバンドルできるユニークなアクセサリーです。この時点では、眉毛とまつげはスタンドアロンのアクセサリーとしてアップロードすることはできず、アバターボディとバンドルする必要があります。顔のアクセサリーをアバターモデルとバンドルする方法についての詳細は、まつげと眉毛を含むボディの公開を参照してください。
- バンドル時の命名規則 - これらのアセットをアバターボディのアップロードに含める場合、アクセサリーオブジェクトは次の命名規則を使用する必要があります:
- EyebrowAccessory
- EyelashAccessory
- HairAccessory
テクスチャ
- マーケットプレイス用アセットのテクスチャは、2048x2048の解像度を超えてはなりません。
- アクセサリー用に作成されたテクスチャは、Robloxのテクスチャ仕様を満たす必要があります。高解像度のテクスチャは、パフォーマンスを最適化するために自動的に低解像度のテクスチャに変換されます。
レイヤー可能なプロパティ
異なるキャラクターや既存の衣服アイテムに合わせて変形し、フィットする衣服やアクセサリーには、BlenderやMayaなどの3Dモデリングソフトウェア内での追加の構成が必要です。
レイヤリング効果を得るには、衣服は以下の要件を満たす必要があります:
- アセットはR15スケルトン(Maya)またはアーマチュア(Blender)にウェイト付けされ、バインドされている必要があります。
- アセットは、カスタムメッシュ要件(防水性、テクスチャ、ポリカウント予算に関するベストプラクティスなど)に従い続けなければなりません。
レイヤー付きモデルの作成を参照して、Blenderの参照アセットにこれらの要件を適用する基本ガイドをご覧ください。.fbxファイルがエクスポートされたら、アクセサリーフィッティングツールでモデルからアクセサリーを作成する方法についての指示を確認してください。
リギングとスキニング
レイヤー付きアクセサリーのリギングとスキニングにより、アクセサリーがキャラクターボディと自然に動くことを可能にします。これをモデリングツールで手動で行うことも、自動スキニング転送を使用して実行時にアクセサリーのスキニングデータを生成することもできます。
モデリングソフトウェアを使用してアクセサリーのスキンを設定する場合、各頂点のジョイントインフルエンス(Maya)またはボーンアサインメント(Blender)は4に制限する必要があります。
Blenderの自動ウェイトなどのサードパーティのモデリングソフトウェアにおける基本的なスキニングに関する詳細は、シンプルメッシュのスキニングを参照し、リギング、ウェイトの割り当て、基本メッシュのスキニングに関する指示を確認してください。
ケージメッシュ
ケージメッシュ、またはケージは、アセットの内部および外部表面を定義する不可視のメッシュであり、衣服アイテムのレイヤー可能な特性にとって基本的なものです。内部ケージは衣服アイテムの内側の表面を決定し、外部ケージは衣服アイテムの外側の表面を決定します。
ケージに関する基本的な概要については、基本的な衣服のチュートリアルおよびチュートリアルビデオの関連セクションを8:32で参照してください:
内部ケージ
内部ケージはモデルの内側の表面であり、レイヤー付きアセットが他のレイヤー付きモデルの上にフィットする方法を定義します。ベストプラクティスとして、内部ケージと外部ケージの形状は、外部ケージを編集してアセットを完全に覆う前に一致させるべきです。
内部ケージメッシュオブジェクトは、アクセサリーモデルと同じ名前に**_InnerCage**を付け加えたものでなければなりません。


外部ケージ
外部ケージは、他のアイテムの内部ケージがその上にレイヤーされる外部表面を定義します。アバターキャラクターモデルには、レイヤー付き衣服と互換性を持つために、モデルに外部ケージが含まれている必要があります。マーケットプレイスで利用可能な全てのアバターモデルには、適切に構成された外部ケージが含まれており、レイヤー付きアセットと互換性があります。
レイヤー付き衣服アセットの外部ケージは、衣服アイテムを正確に覆うメッシュです。テンプレートファイルに含まれている外部ケージはデフォルトで内部ケージと同一であり、アクセサリーの上にフィットするように調整される唯一のケージでなければなりません。
外部ケージメッシュオブジェクトは、アクセサリーモデルと同じ名前に**_OuterCage**を付け加えたものでなければなりません。


マーケットプレイス要件
あなたのアイテムは、マーケットプレイスにアップロードして販売する前に、以下の要件を満たす必要があります:
- あなたのアイテムがマーケットプレイスプログラムガイドラインに従っていることを確認してください。
- 該当する場合、あなたのアイテムがRobloxのカスタムメッシュ仕様および剛性アクセサリー仕様に従っていることを確認してください。
- オブジェクトMaterialはPlasticに設定されています。
- オブジェクトTransparencyは0に設定されています。
- オブジェクトVertexColorはデフォルトの1, 1, 1です。