目次
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 モノクログレー画像をアルファチャンネルに追加する方法」を参考にしてください。
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
金属の「金」を作る
-
-
- Diffuse 黒のみ。(Diffuse texture 必要なし。使うなら黒(0,0,0)のみのtexture)
- Specular Map 色 255, 219, 145
- Gloss Map 表面のざらつきを定義
- Specular Colorは255,255,255にする。項目がOFFになりSpecular Mapを使う。
- Smoothness 255にする。項目がOFFになりGloss Mapを使う。
-
非金属を作る 石
-
-
- Gloss Map 表面の粗さざらつきを定義 荒く
- Diffuse Map 色のみ。
- Specular Color 55 55 55
-
Environment Probe Entity
このままでは反射Materialなどが暗いので「CRYENGINE V Lightingのセットアップ」を参照して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