PBR テクスチャ

*このコンテンツは、ベータ版のAI(人工知能)を使用して翻訳されており、エラーが含まれている可能性があります。このページを英語で表示するには、 こちら をクリックしてください。

物理ベースのレンダリング (PBR) テクスチャを使用すると、単一のオブジェクトに複数のタイプのテクスチャ画像、または マップ を使用して、リアルなシェーディングとライティングを表現できます。複数のテクスチャマップを組み合わせることで、あらゆる照明環境において色、粗さ、反射率をより正確にシミュレートでき、アセットや環境の視覚要素を強化できます。

ドレッドロックのあるヒューマノイドアバター、光沢のあるジャケット、デカールのあるジーンズ、ブーツ。
短髪のヒューマノイドアバター、レザージャケット、カプリパンツ、オレンジの靴。

PBR テクスチャを作成するためのさまざまなアプリケーションとワークフローがあります。これらは、Roblox Studio が使用している特定のテクスチャマップを サポート している限り、カスタム 3D オブジェクトの作成のモデリングおよびテクスチャリングフェーズで使用できます。

このガイドでは、PBR テクスチャマップを使用するためのメッシュオブジェクトの 設定 方法を説明し、Roblox がサポートする PBR テクスチャマップ の一般的な使用例とベストプラクティスについて説明します。独自の表面を作成する際は、一般的な材料値、画像比較、衣服の例については 材料参照 を参照してください。

サーフェス外観の有効化

MeshPart に PBR テクスチャを追加するには、元の割り当てられたテクスチャを上書きする SurfaceAppearance オブジェクトを追加します。一般的に、ゲーム中にスクリプトで SurfaceAppearance プロパティを変更することはできません。なぜなら、エンジンはこれらのグラフィックスを表示するためにいくつかの前処理を必要とするからです。基本的なテクスチャを追加するのと同様に、各テクスチャ画像マップは、適切にアップロードされた画像アセット ID を指す必要があります。

MeshPart のサーフェス外観を有効にするには:

  1. Explorer ウィンドウで MeshPart にカーソルを合わせ、⊕ ボタンをクリックします。

  2. コンテキストメニューから SurfaceAppearance を挿入します。

    Studio の Explorer ウィンドウ内の MeshPart に親子関係を持つ SurfaceAppearance オブジェクト。

    SurfaceAppearance オブジェクトにテクスチャマップを追加する準備ができたら、プロパティ ウィンドウで各マッププロパティをクリックし、アセット ID を入力できます。

テクスチャマップ

Studio は現在、5 種類の PBR テクスチャマップをサポートしています:カラーノーマル粗さ金属感、および エミッシブ。これらのマップはそれぞれ、オブジェクトの表面外観の重要な側面に対応しています。テクスチャマップは視覚的な外観のみを変更し、MeshPart オブジェクトのジオメトリには影響しません。

Roblox がサポートするテクスチャマップと追加リソースの概要については、以下の例を参照してください:

ColorMap プロパティは、表面の色データを設定し、マップ内の透明度を含みます。詳細については、カラー (アルベド) を参照してください。

ほぼ赤で、さまざまな黒の斑点と白の傷がある完全に塗りつぶされた画像。
例のマップ
暗い背景の白い球体。
例のメッシュ
黒の斑点と白の傷がある赤い球体、暗い背景。
メッシュとテクスチャ

カラー (アルベド)

カラー、または アルベド マップは、テクスチャの色を決定し、ほとんどが色情報で、照明やテクスチャ情報はほとんど含まれていません。追加のカスタマイズのために、アルベドテクスチャに不透明度を追加することで 透明度 を追加することもできます。

アルファモード

草、葉、レース、または汚れやグランジのようなデカールなど、部分的または完全な透明セクションが必要なオブジェクトには、さまざまな アルファモード を使用してカラー マップに透明度を適用できます。カラー マップ画像形式がアルファチャネルをサポートしている場合、0.0 が透明、1.0 が不透明のグレースケールアルファマップを適用できます。同様に、.png のような画像形式を使用する場合、カラー マップの不透明度はアセットの透明度として適用されます。

次の AlphaMode 値を設定することで、2 つの異なる動作で透明度を適用できます:

  • 不透明ColorMap のアルファチャネルを無視し、カラー マップから直接色値を使用します。
  • オーバーレイColorMap を基になるメッシュの MeshPart.Color の上にオーバーレイします。オーバーレイモードを使用するカラー マップは、透明度が存在する場所でメッシュの基本色を明らかにします。これがデフォルト設定です。
  • 透明度ColorMap の透明度に基づいて、可視メッシュを削除します。これにより、メッシュが透過的になり、透明度が存在する場合は元のメッシュの色が明らかになりません。
  • ティントマスク — 色付けされた ColorMap を無色の ColorMap の上にブレンドします。
不透明

Enum.AlphaMode.Opaque モードを使用して、ColorMap のアルファチャネルを完全に無視できます。この場合、アルファ値は 1 (完全に不透明) と見なされます。

以下の例は、青いオブジェクトを参照として使用して、Opaque モードがどのように機能するかを示しています:

透明度のある水玉模様のテクスチャ。背景は完全に透明です。
透明度のあるカラー/アルベドマップ
平面上の青い球体。
例のメッシュオブジェクト
球体の表面に水玉模様が散らばっています。透明度の値は無視されます。
AlphaModeOpaque に設定されています。
オーバーレイ

Enum.AlphaMode.Overlay を使用して、メッシュの元の色のセクションを明らかにできます。カラー マップの透明な領域が基になる色を露出させるため、カスタムの肌色や他のユニークな色の状況に対して、メッシュの Color プロパティを部分的または完全に明らかにするユニークなテクスチャマップを設計できます。

以下の例は、ライトブルーの球体を参照として使用して、Overlay モードがどのように機能するかを示しています:

小さなライトブルーの四角形のある半繰り返しパターンの完全に塗りつぶされた画像。背景は透明を示すためにチェック柄です。
透明度のあるカラー/アルベドマップ
暗い背景の無地のシアンの球体。
例のメッシュオブジェクト
表面に小さな青い四角形が散らばった白い球体。
AlphaModeOverlay に設定されています。

以下の例は、カスタムキャラクターのために Overlay モードを使用し、キャラクターの元の肌色を明らかにしています:

3D ヒューマノイドモデルのテクスチャマップの完全に塗りつぶされた画像。画像のさまざまな部分はチェック柄または部分的にチェック柄で、さまざまな透明度を示しています。
元のメッシュの色を露出させるためにセクションに透明度を含むカラー マップ
異なる肌色の同じヒューマノイドモデルが 4 体: 明るい茶色、黒、白、濃い緑。
Overlay モードを使用した単一のカラー マップを持つキャラクターのいくつかのバリエーション

肌や類似のアプリケーションに最適化されたオーバーレイの詳細については、カスタム肌色 を参照してください。

透明度

Enum.AlphaMode.Transparency モードを使用して、レースやネットなどの複雑または非常に細かいオブジェクトを作成することができます。これは、メッシュの可視部分を削除することで、メッシュジオメトリを彫刻する代わりに行います。これにより、メッシュオブジェクトのジオメトリには影響を与えず、複雑なメッシュモデルのパフォーマンスへの影響を避けながら、詳細なオブジェクトを作成できます。

以下の例は、このモードでの部分的および完全な透明度がメッシュのセクションを視覚的に削除する方法を示しています:

バスケットのような表面を持つ球体。
透明度なし
表面に通常の三角形パターンがあり、部分的に見えない球体。
セクションでの半透明
表面に通常の三角形パターンがあり、完全に見えない球体。
セクションでの完全透明

Transparency モードの結果は、MeshPart.Transparency0 に設定されているか、少なくとも 0.02 に設定されているかによって異なりますが、数値の精度により 0.01 のような小さな値が不透明な透明度を引き起こすことがあります。

  • アルファを使用して、葉、レース生地、ネットなどの主に不透明なオブジェクトの形状を切り抜く場合は、MeshPart.Transparency0 に設定します。表面の一部が完全に不透明な場合、Roblox エンジンはそれらを適切な深度ベースのオクルージョンでレンダリングできます。不透明な表面は、一般的に DepthOfFieldEffect、ガラスや水の屈折、水の反射などの深度ベースの効果ともうまく機能します。
  • アルファを使用して、半透明のオブジェクトや透明度の滑らかなグラデーションを持つオブジェクトに詳細を追加する場合は、MeshPart.Transparency少なくとも 0.02 に設定します。これにより、汚れた窓や柔らかいエッジの羽毛などのオブジェクトのブレンド品質が向上しますが、すべての効果で機能するわけではありません。
ティントマスク

Enum.AlphaMode.TintMask モードを使用して、表面の選択した領域に SurfaceAppearance.Color のティントを適用できます。ティントは、アルファチャネルが完全に表示されている場所で最も強く、アルファチャネルが透明な場所では適用されません。

暖かい、明るい色のレンガのテクスチャで、レンガの間に暗い灰色のテクスチャの目地があります。
レンガの顔の色の詳細とレンガの間の目地を示す例のレンガのテクスチャ。

カラーティント

SurfaceAppearance.Color プロパティを変更することで、カラー マップにティントを適用できます。ティントはパフォーマンスに影響を与えず、異なるティントを持つ単一のカラー マップを再利用することでメモリを節約できます。カラーティントを使用して、MeshPart PBR テクスチャ間の追加の低コストのバリエーションを作成したり、リアルタイムで PBR 表面の色をプログラムで変更したりできます。

デフォルトの黄色のティントと反射的な翡翠のような特性を持つ像。
The Mystery of Duvall Drive からの像のメッシュで、ティントはありません。
赤いティントのある像で、他のテクスチャマップからの光沢のある反射特性を持ち続けています。
Color が赤に設定された像のメッシュ。
緑のティントのある像で、他のテクスチャマップからの光沢のある反射特性を持ち続けています。
Color が緑に設定された像のメッシュ。

SurfaceAppearance.Color のティントは乗算として適用されるため、最終的な外観は Color3 (テクセルカラー) と SurfaceAppearance.Color の関数です。これは、元の SurfaceAppearance.ColorMap をほぼ白のグレースケールカラーで作成すると、このプロパティが適用されたときに最も強いティント効果が得られることを意味します。

ティントは SurfaceAppearance.ColorMap にのみ適用され、MeshPart.Color には適用されません。 透明度 を適用する際にアルファチャネルを引き続き使用できます。

SurfaceAppearance.AlphaModeOverlay に設定され、アルファチャネルが存在する場合、基になる MeshPart.Color が明らかになり、SurfaceAppearance.Color のティントは可視の SurfaceAppearance カラーマップにのみ適用されます。

SurfaceAppearance.AlphaModeTintMask に設定され、アルファチャネルが存在する場合、アルファチャネルが SurfaceAppearance.Color のティントの量を制御します。ティントは、アルファチャネルが完全に表示されている場所で最も強く、アルファチャネルが透明な場所では適用されません。

左側が完全に透明で右側が完全に不透明なシアンのスレートテクスチャの浮遊する正方形の平面。浮遊する平面の下にある細い水平バーは、左側が黒、右側が白のグラデーションを持っています。
AlphaModeTransparency に設定されています。下部のグレースケールグラデーションバーはアルファ値を示しています。MeshPart.Color は赤に設定され、SurfaceAppearance.Color はシアンに設定されています。

ノーマル

ノーマル、または 表面 マップは、表面にテクスチャの深さを追加し、高さマップ に似た動作をします。その結果、効果は視点の角度や照明環境によって薄れたり強まったりします。

以下の図では、メッシュ参照とマップ参照を切り替えてノーマルマップ値を比較できます:

粘土色の滑らかな球体。
粘土色の球体で、表面が適度に岩っぽい。
粘土色の球体で、表面が非常に岩っぽい。

画像の RG、および B チャンネルは、それぞれローカル表面ベクトルの XY、および Z コンポーネントに対応します。色 [127, 127, 255] の均一な画像は、完全に平坦なノーマルマップに変換されます。Roblox は OpenGL フォーマット - タンジェントスペース ノーマルマップのみをサポートしています。

ノーマルマップはメッシュの視覚的表面に大きく影響し、テクスチャの不自然な継ぎ目を強調することがあります。可能な限り、テクスチャの継ぎ目を隠して、メッシュの視覚的な問題を避けてください。

粗さ

粗さ、または マイクロサーフェス マップは、モデルの表面に光がどのように拡散するかを決定します。粗さが 0% の場合、表面は全く光を散乱せず、材料の反射と光沢が非常にシャープで明るくなります。100% の場合、光と反射はモデル全体に均等に散乱し、反射の少ないマットな表面になります。

以下の図は、さまざまな粗さマップ値の比較を示しています:

青い光沢のある球体。
0%
青い半光沢の球体。
50%
青いマットな球体。
100%

粗さは、異なる角度でオブジェクトがどれだけ反射的であるかに影響を与える場合があり、これを フresnel 効果と呼びます。Studio のフresnel 処理は物理的な現実世界の精度を目指していますが、粗い表面でも特定の角度で予期しないスペキュラ貢献が得られることがあります。場合によっては、材料の一貫した照明応答を得るために、粗さマップ値を約 0.1 追加することで補償できます。

Roblox はこの照明効果を正確にレンダリングしますが、表面の明るさや反射率は、テクスチャコンテンツ作成ソフトウェア(Substance Painter など)と Studio の間で一貫して反応しない場合があります。アプリケーション間のレンダリングの違いについては、衣服の例を参照してください。

金属感

金属感 は、表面の反射率を決定します。ほとんどの場合、この値は 0% (非金属) または 100% (金属) に設定する必要がありますが、サテンやシルクのような中程度の反射特性を持つ表面を作成する場合は、部分的な金属感の値を使用できます。この手法は、材料の反射を微妙に偽装し、カラー/アルベドマップ に反映された色を環境に反射された色の上に強調することができます。

以下の図は、さまざまな金属感マップ値の比較を示しています:

明るい斑点のある茶色の球体。
0%
明るい斑点といくつかの反射性のある茶色の球体。
50%
中程度の斑点と多くの反射性のある茶色の球体。
100%

異なる PBR レンダラーは、反射性を処理するためのさまざまなワークフローを使用します。Studio は 金属感ワークフロー のみを使用し、材料が 非金属金属 かを決定します。これは、時には 絶縁体 または 導体 と呼ばれます。

エミッシブマスク

グレースケールの EmissiveMaskContent コンテンツテクスチャは、表面全体に エミッシブマスク を適用します。これにより、すべてまたは何もない Neon 材料よりも芸術的な制御を使用して、照明されたテキスト、未来的なアーマー、または生物発光生物のような詳細な発光効果を作成できます。

関連する EmissiveTint プロパティは、エミッシブ寄与のティントカラーを決定し、EmissiveStrength はエミッシブ寄与の強さを決定します。

50% の強さでジャック・オ・ランタンのエミッシブマスクを持つオレンジの球体。
EmissiveStrength が 50% の場合
100% の強さでジャック・オ・ランタンのエミッシブマスクを持つオレンジの球体。
EmissiveStrength が 100% の場合
マゼンタに色付けされたジャック・オ・ランタンのエミッシブマスクを持つオレンジの球体。
EmissiveTint = [255, 0, 255]
©2026 Roblox Corporation。Roblox(ロブロックス)、RobloxロゴおよびPowering Imaginationは、米国並びにその他の国における登録商標および非登録商標です。