ラベル Texture の投稿を表示しています。 すべての投稿を表示
ラベル Texture の投稿を表示しています。 すべての投稿を表示

2016年3月6日日曜日

sht_hair シェーダー用specular texture blue channel

さっちゃんのガワとアニメ作りがひと段落したのでテクスチャを作っていたのですが
髪の毛用のnormal mapを作り

コレを適用した所

いきなり禿げ散らかしました

れいむを作った時にも似た事が起こったのでデフォルトのまま使っていたスペキュラーテクスチャーのblue channelを0から50ほどに

そして適用

おさまりました

つまりsht_hair シェーダー用specularテクスチャーのblue channelは同じくhair シェーダー用のnormal mapを参照して透過を制御する、と
普通にdiffuseテクスチャーのalpha channelを適用するより凹凸を参照しながら透過させるのでより立体的に見えるようです

謎が一つとけました
でもまあこんなややこしい事はマニュアルにちゃんと書いときやがれください運子!


2016年2月11日木曜日

sht_hair シェーダーを使ってみる

可愛いれいむをfaceRig用に作り直しているのですが
sht_hairという名前からして髪の毛用らしいシェーダーがありましたので使ってみました

要素は以下四つ
diffuse("d")
normal("b")
specular("s")
anbient occlusion("ao")

diffuse及びnormalは通常通りでしたので省略
specular("s")用のテクスチャーを作ります

Red channel
さて公式マニュアルにはこの一文があります
-The red channel of the specular texture is not used, it should be set at 255 default value.
「スペキュラテクスチャのR channelは使わないから255にしとけ」

では比較
私はもうこの駄マニュアルは参考程度にしか信じません

Green channel
-used to set values for different materials,from 0 for hair and cloth,to 255 for other material types(metal,plastic,etc).
0は髪や服、255はその他

比較
違いがわかりませんので0にしておきました

Bule channel
-used to specify areas of object that remains unaffected by lighting resulting in a light emitting effect when placed in the shadow (glow in the dark effect), 0 for non emissive and 255 for full emissivity.

とりあえず0にしてみると
禿げる

嫌味か貴様ッッ

禿げるというかカメラから遠い谷になっている部分が透けるようなよくわからない挙動です
25%でも所々禿げ散らかし、50%だと何も無し
一部変形もおこっていますので何か別の用途でしょう
とりあえずemissiveじゃありません

よくわからないので禿げ散らかさないように適当に
Alpha channel
-gives information about the Specular Power 0 for no specular 255 full specular.

テストしてみると
影の部分では変化が無いのでスペキュラーの強さではなく光の影響を制御するようです
明確に境目が出てますので何かしら変わるんでしょうけど正直違いがわかりません

よくわかりませんが境目がでるように適当に濃淡をつけました

結果
faceRigは光が物凄く強い背景がありますので抑えめにしました


次にanbient occlusion("ao")を
通常の3Dだと嘘影用に使われる皆大好きなアレです
駄マニュアルにはこうあります
-The ambient occlusion textur is interpreted like this:
Red channel: Not used, 255 default value.
Green channel: Direct light Attenuation 0 means no direct light (only ambient and radiosity) 255 full direct light intensity.
Blue channel: Not used, 255 default
Alpha channel: Base PPAO

デフォルトのaoテクスチャーは全て255です
Red channel
変化無し。255で良し

Green channel
説明通りdirect lightの影響度の制御のようです
0だと光が当たっても明るくなりません

Bule channel
変化無し。255で良し

Alpha channel
一応影はつくようですが、100%と0%ですらうっすらとした差しか出ません

これGreen channnelだけでいいんじゃねえのとか思いつつ
specular用に作ったグレースケール画像をGreenとAlphaに張り付け
光が当たった時に髪の筋が少し出る程度にしました

ao用テクスチャの説明に限っては間違いは無いようです
最初に説明文読んだ時にウッソくせえ('A`)とか思ってスマンHoltech!

でも疑われないようなちゃんとしたマニュアル作ってくださいやがれHoltech!!

2016年1月23日土曜日

表情が動くモデルを作ってみる10 textureを仕上げる

Special AnimationとPoseを作りたいんですがマニュアルには何も書いて無いのと
試しに作ったアニメが認識はするが動かないという状況でして
公式スレッドで聞いてみたら「これから作り方のドキュメント作るわー」との事ですのでそれが出来るまで他の事をします

というわけでtextureを仕上げます

faceRig Texture Maps纏め

一々Import Wizardを通して再起動させるのもメンドクサイので
faceRigを起動させたままフォルダー内のテクスチャーを置き換えます
フォルダーの場所はSteamLibrary\steamapps\common\FaceRig\Mod\VP\PC_CustomData\Objects\アバター名
置き換えてからアバターを選択し直せば反映されます

ヤマネコさんの基本として使っているsht_metalclothシェーダー用のテクスチャを揃えます
要素は以下
diffuse("d")
normal("b")
normal("b1")
normal("b2")
normal("b3")
normal("b4")
specular("s")
specular2("s2")
anbient occlusion("ao")
colorize mask("cm")

1.diffuse "d"
通常のdiffuse textureです


2.normal "b"
通常のnormal mapです


3.normal "b1","b2","b3","b4"
animated normalsに使われるそうですが今回は使いません

4.specular  "s"
faceRig独自形式のspecular mapです
RGB各チャンネルとAlpha別々に使います

Red
channel gives information about the Glossiness factor >1 for rough surfaces 255 for shiny ones.
Between 1 to 5 for rough surfaces, 5 to 12 for a very little shine and increasingly shiner towards 255.
光沢の設定値で数値が高いほど強くなります、と書いてあるように読めるんですが
影の部分にだけ働く光・環境光のような挙動をし、数値が低いほど強くなります

50%に近くなると効果が目に見えなくなります


光らせたくない所の数値を高くしました



Green
used to set values for different materials,from 0 for hair and cloth,to 255 for other material types(metal,plastic,etc).
数値が低いほど光の影響が強くなるようです

マテリアルがなんちゃらとかの記述は何なんでしょうか

ほどほどに抑えました


Blue
used to specify areas of object that remains unaffected by lighting resulting in a light emitting effect when placed in the shadow (glow in the dark effect), 0 for non emissive and 255 for full emissivity.
光の影響の強さです
数値が高いほど影が薄くなります

表記の無い部分は50%

ヤマネコさんにはあまり影を落としたく無いので高めにしました


最終的にR/G/B各レイヤーはレイヤーモードを除外にして重ねて保存します


Alpha
gives information about the Specular Power 0 for no specular 255 full specular.
光沢の強さで数値が高いほど強くなります、と読めますが
光が当たっている部分では余り変化は無く、影になる部分の挙動に影響するようです


emissive同様高めにしました

必要なレイヤーを複製・結合し
Ctr + Aで全体を選択してCtr + Cでコピー
Alpha チャンネルを選択してCtr + Vでペーストです

マニュアルの記述と実際の効果が違う気がするんですけど私が英語noobだからでしょうかね?

5.specular2 "s2"
マニュアルに詳細無し

追加のspecular mapで光沢に色を付けられます
光沢の出方は"s"の設定値に依存しているようです

下は"s2"のテクスチャはそのままに"s"のAlphaを変更した物


明度に関係なく色相・彩度を反映するので
「一見黒く見えるけど彩度持ち」でもお構い無しに色を付けてくれます


Alphaチャンネルが適応率に対応しているようですが0の無効以外はあまり違いがわかりません


1-10%ぐらいは変化があるようなないような

鼻と肉球に少し赤みをいれてAlphaはRGBをそのままコピーしました


6.anbient occlusion("ao")
通常のAOだと思いますが今回は使いません

7.colorize mask("cm")
アバターの色変更の設定に使います
今回は使いません

一通り揃えてこうなりました

肉球の質感は良いのですが全体的にヌメり気が足りてません
が、ひとまずコレでいきます

いい方法を思いついたら手直しします

faceRigモデルのUV展開時の留意点

faceRigのシェーディングはUVmap上で分離されているエッジの影響を受けるようです

ヤマネコさんの体と帽子のUVmap



ミラーリングした時に結合し忘れていた中央のエッジもうっすらと

強い光が当たらない限りさして目立ちませんが頭の片隅に置いておきましょう

又、UVが重なっている部分は重ねただけ影が多重にかかる疑いがあります


髪の毛等でテクスチャを使いまわすのは注意が必要です
片側を作ってミラーリングしてUV共有したままなのもこれに該当します

追記

geometryそのままにUVを変更したら濃い影が出なくなったので確定です
別オブジェクトだと大丈夫なようなのでテクスチャを使いまわす場合は別けましょう

2016年1月22日金曜日

faceRig Texture maps

随時加筆

faceRig上でのテクスチャーの扱いは通常とは違う物がある
テクスチャーはalpha有tga *32bitで保存しないとalphaが破棄されるので注意
サイズは二の乗数(16,32,64,128,256,512,1024.etc)
avatarName + "_" + shaderName + "_" + textureType.tga
例:"chinko_kitou_d.tga"
chinko - アバター名
kitou - シェーダー名
d - テクスチャータイプ、"d"はdiffuse

Texture Types Suffixes

"d" diffuse
"b" normal map
"b1" 追加normal map
"b2"追加normal map
"b3" 追加normal map
"b4" 追加normal map
"s" specular
"s2" specular2
"sc" skin scatter
"ao" ambient occulusion
"m" fur mask
"cm" color mask
"iristext_d" sht_eye
"roatext_d" sht_eye

1. Diffuse texture:"d"
通常通りRGBとAlphaチャンネル
alphaは0(black)が完全透過、255(white)が不透明

2. Normal map textures:"b"
通常通り
デフォルトはR127 G127 B255 A255

3. Specular texture:"s"
デフォルトは全て0

Red
channel gives information about the Glossiness factor >1 for rough surfaces 255 for shiny ones. Between 1 to 5 for rough surfaces, 5 to 12 for a very little shine and increasingly shiner towards 255.
光沢の設定値で数値が高いほど強くなります、と書いてあるように読めるんですが
影の部分にだけ働く光・環境光のような挙動をし、数値が低いほど強くなります

50%に近くなると効果が目に見えなくなります


Green
used to set values for different materials,from 0 for hair and cloth,to 255 for other material types(metal,plastic,etc).
数値が低いほど光の影響が強くなるようです


Blue
used to specify areas of object that remains unaffected by lighting resulting in a

light emitting effect when placed in the shadow (glow in the dark effect), 0 for non emissive and 255 for full emissivity.
光の影響の強さです
数値が高いほど影が薄くなります
クロマキー用の緑背景は結構暗いので高くないと黒くなります

表記の無い部分は50%

Alpha
gives information about the Specular Power 0 for no specular 255 full specular.
光沢の強さで数値が高いほど強くなります、と読めますが
光が当たっている部分では余り変化は無く、影になる部分の挙動に影響するようです


-additioal Specular texture:"s2"
デフォルトは全て0
マニュアルに詳細無し

追加のspecular mapで光沢に色を付けられます
光沢の出方は"s"の設定値に依存しているようです

下は"s2"のテクスチャはそのままに"s"のAlphaを変更した物


明度に関係なく色相・彩度を反映するので
「一見黒く見えるけど彩度持ち」でもお構い無しに色を付けてくれます

激闘の記録

Alphaチャンネルが適応率に対応しているようですが0の無効以外はあまり違いがわかりません


1-10%ぐらいは変化があるようなないような

4. Fur mask texture;"m"
デフォルトは全て255

5. ambient Occlusion texture:"ao"
デフォルトは全て255
Red channel should hold the PPAO(Per Pixel Ambient Occlusion) information for tensed muscles.
Green channel should hold the directional attenuation information for relaxed muscles.
Direct light Attenuation 0 means no direct light (only ambient and radiosity) 255 full direct light intensity.
Blue channel should hold the directional attenuation information for tensed muscles.
Direct light Attenuation 0 means no direct light (only ambient and radiosity) 255 full direct light intensity.
Alpha channel should hold the PPAO information for relaxed muscles.

6. Colorize mask texture:"cm"
デフォルトは全て255

色変更の範囲と影響の強さの制御に使われる
255(white)に近いほど影響を受けなくなる
RGBとAlphaを使って同時に二種の範囲を制御できる

Additional skins for avatars and props