CRYENGINE V Materialの作成

目次

Materialの種類

CRYENGINE VのPBRは Specular Workflow です。
UnityのStandard (Specular setup) に相当します。(UE4はMetalness Workflow。UnityはSpecular、Metalness どちらも使えます。)

Materialには、2つのカテゴリがある。
金属と(鉄、金、銅などのような導体)非金属(プラスチック、石材、木材、皮、ガラスなどのような誘電体)

Material Settings

Shader

Shaderは通常は[Illum]を選ぶ。ほかは専用のShader。例えば、地形に使うMaterialは[Terrain.Layer]を選ぶ。

Surface Type

再生されるサウンドの種類や、生成されるパーティクルエフェクトの種類を設定

Lighting Settingsの設定

Diffuse Color 255/255/255
Specular Color 255/255/255
Smoothness 255

上記の設定で、Texture本来の色になる。ここから、Lightingの設定によって色味が変わっているので必要に応じて「Lighting Settings」で色を調整する。しかし、通常は上記の設定にし、色はDiffuse Mapで調整する。キャラクターの服の色替え、車の色替えなどもできる。

GameSDK Sample Project内のObjects.pak/Objects/pbs_referenceにレファレンステクスチャがあります。

Texture

オブジェクト表面の基本色

反射率や粗さなどは入っていないオブジェクト表面の色のみ。影、ライティング情報などは必要無い。
Albedo(アルベド)
Diffuse Map(Textures)
Diffuse Color(Lighting Settings)

Diffuse Mapのファイル名には_diffを付ける。これによりrc.exeでddsファイル作成時にAlbedo設定が初期値になる。

test_diff.tif

金属のDiffuse Mapは
ただし、金属の錆の部分は、Diffuse Mapで色を定義。

透明度を定義する場合はアルファチャネルを含めることで定義できる。

Glossiness Map (オブジェクト表面の粗さ)

最も重要なTexture Material設定が上手くいかない時はだいたいこれが正しく設定できていない。

例えば、金属のオブジェクトで使えば白(255)に近いほどピカピカの金属のオブジェクトになる。

Glossiness map (略名Gloss map。Textures)
Smoothness(Lighting Settings)

    • ほとんどのMaterialは、Gloss Mapを持っている必要がある。
    • 非金属の一般的な値は、53と61との間
    • Gloss Mapは常にNormalMapのアルファチャンネル
    • Gloss Mapが含まれたNormalMapのファイル名には_ddnaを付ける。
    • NormalMapのみの場合ファイル名には_ddnを付ける。

Gloss Mapが含まれたNormal Mapを作るには「Substance Designer」を使うか「GIMP モノクログレー画像をアルファチャンネルに追加する方法」を参考にしてください。

Substance Designer使用例

Normal Map

アルファチャンネルにGloss Mapが含まれている。他は、普通のNormal Map

Specular Map

Materialに非金属と金属の両方があれば、Specular Mapを使う。どちらか一つであればSpecular Colorのみを使用でも良い。

Specular Mapを使用する場合、Lighting Settingsの設定Specular Colorは255/255/255 白に設定

Reflectance
Specular Map (略名Spec map。Textures)
Specular Color(Lighting Settings)

ほとんどの非金属はsRGB色域80/80/80よりも高くなることはない。通常40と60の間。金属のSpecularは、sRGB色域180を超える。

非金属は、Specularの値が通常40~60の間なのでバリエーションが少ない「Specular Color」のみで設定しメモリ節約することも可能。

非金属のSpecularの色は、モノクロ/グレー 通常40と60の間。
金属のSpecularの色は、決まっている。

金属の「金」なら「255, 219, 145」。「銀」は「250, 247, 242」、「銅」「250, 209, 194」、「アルミニウム」「245, 245, 247」など。
錆びた金属の錆の部分は非金属とみなすが、Specularは金属として定義
Specular Mapのファイル名には_specを付ける。

Materialの色見本の画像は以下のアドレスから
bmp直リンク
http://docs.cryengine.com/download/attachments/15731031/SPEC_Range_new.bmp

Creating Textures for Physical Based Shading
http://docs.cryengine.com/display/SDKDOC2/Creating+Textures+for+Physical+Based+Shading
必ずbmp形式で保存。jpgなど圧縮形式で保存すると間違った値になります。
この色見本の画像の色をカラーピッカーなどで取得する。

Materialの色見本の画像がリンク切れだったのでOneDriveに置いておきます
https://1drv.ms/u/s!Am7oYaEAs4TVkjVLdVQhWYjgogYl

Skin 51,51,51
Glass(ガラス) 58,58,58
銀 250,247,242
例えば、上の値をSpecular Colorに設定すれば銀などになる。

Displacement Map

POM / OBM /テッセレーションで使用

Detail Map

Decal Map

Advanced Settings


最低限下記のTextureを用意する。

  • Diffuse Map
  • Specular MapかSpecular Color
  • Gloss Mapが含まれたNormal Map

金属の「金」を作る

      1. Diffuse 黒のみ。(Diffuse texture 必要なし。使うなら黒(0,0,0)のみのtexture)
      2. Specular Map 色 255, 219, 145
      3. Gloss Map 表面のざらつきを定義
      4. Specular Colorは255,255,255にする。項目がOFFになりSpecular Mapを使う。
      5. Smoothness 255にする。項目がOFFになりGloss Mapを使う。

非金属を作る 石

      1. Gloss Map 表面の粗さざらつきを定義 荒く
      2. Diffuse Map 色のみ。
      3. Specular Color 55 55 55

Environment Probe Entity

このままでは反射Materialなどが暗いので「CRYENGINE V Lightingのセットアップ」を参照してEnvironment Probe Entityを設定してください。

 

Environment Probe Entity 有効

Environment Probe Entity 無効


Textureの作成には「Substance Painter」と「Substance Designer」を使うのが一般的です。
https://www.allegorithmic.com/

参考

http://docs.cryengine.com/display/SDKDOC2/Basic+Material+Parameters

http://docs.cryengine.com/display/SDKDOC2/Creating+Textures+for+Physical+Based+Shading

http://docs.cryengine.com/display/SDKDOC2/Textures+Types

http://docs.cryengine.com/display/SDKDOC2/Physically+Based+Shading

http://docs.cryengine.com/display/SDKDOC2/Useful+Photoshop+actions+and+Color+swatches+for+PBS

日々の生活にhappyをプラスする|ハピタス

コメントを残す