ちょっと休みボケ。髪の毛を作り比べて気づいた事とかです。

お久しぶりでございます。ちょっと前にもそんな事書いたけど。色んなものを作りかけで放置していたんですが、とりあえず一つ完成させました。
暫くぶりでシムズに戻ってきたし、マウスも新調しちゃおうかな?なんて思い、先日新しくマウスを買いました。
なんか新しいのに換えてから、PCを完全にシャットダウンした状態なのに、マウスを動かすと電源が入るようになってしまいました。
マウスの設定でそんなもんあったかな?と思い見てみたんですが、該当するような項目は見つからず・・・BIOSの設定かな?とこっちも見てみたんですが、USBデバイスでの電源管理等々の設定は無効のままです。というかBIOSの設定なんて、このPCを組んで以来いじった記憶がないです・・・
とかやってたら、今度はモニターが点かなくなりました。なんかHDMIのコネクタあたりをフニフニすると点いたり消えたり・・・接触がわるいのかしらん。
次々と不具合が連鎖するは、部屋は暑いは、ネコは邪魔するはで、すっかりしょげていたんですが、ふとHDMIケーブルをその辺にあったものに交換してみたら、モニターもちゃんと点いた上にマウスで電源が入ってしまう事もなくなりました。
何故にっ!?さっぱり理由がわかりません。

一事が万事こんな調子で日々ポンコツに生きています。
さて、それはそれとして、何個か3の髪型をコンバートしていてちょっと気づいた事なんかを書き散らしておこうかと思います。

3の髪型をそのままの見た目で4に持っていくには、髪の毛のシェーダーを変更する必要がある事をちょいちょいこのブログでも書きました。CASパーツでいまの所、唯一(?)テクスチャアルファを使用する事のできる”SimGlass”シェーダーです。

このシェーダーが半透明が使える代わりに、少々クセがある事を以前こちらにも書きました
それ以外にこのシェーダーの特性と言いますか、通常シムに使用されているシェーダーとの違いがあるのだなー、と。

左、通常の”SimSkin”
右、”SimGlass”です。

 上の画像はベースゲームの髪型でシェーダーのみ変更してテストしたものです。
左がそのまま、右はクローンした髪をシェーダーのみ”SimGlass”に変えたものです。
ハイライトの所、違いがあるのが分かると思います。
ちなみに右の髪メッシュに一部表示がおかしい所がありますが、これもこのシェーダーの特徴で頂点の前後を見た目どおりにソーティングしてくれない為です。が、これも再三書いたのでここでは触れずにおきます。
これを見ると、シェーダーを変更したものはスペキュラーマップによるハイライトが無いように見えます。

インゲーム(生活モード)での比較

インゲーム(生活モード)での比較
頭頂あたりハイライトにはっきり違いが。”SimGlass”のほうはノーマルマップも効いて無いような・・・

室内での比較。今度は側頭のハイライトに違いがみられます。

室内での比較。今度は側頭のハイライトに違いがみられます。

 静止画だと違いが今ひとつ分かりづらいような気が・・・
動いていると、ハイライトもシムの位置や光源によって変化するので、”SimGlass”がスペキュラーが効いていないのが結構分かるんですが・・・
あと、どうもノーマルマップも”SimGlass”のほうは、法線計算されていないように見えます。
スペキュラーは分かりやすく違いが見られたんですが、ノーマルマップのほうはちょっと分かりづらいので、こんなマップに差し替えてみました。

"SimSkin"なら結構ぼっこりいく感じのマップですが・・・

“SimSkin”なら結構ぼっこりいく感じのマップですが・・・

 結果は、全く差し替え前と違いが見られませんでした。
んーーー、やはりノーマルマップは入れても”SimGlass”には影響が無い??
影響が無いのだったら、削除しちゃってもいいのでわ?
てな事でノーマルマップを元気良く削除してみましたよ。

んなーー??なんか髪色が一部おかしなことに・・・

んなーー??なんか髪色が一部おかしなことに・・・

 髪の毛が部分的に暗い色になって、明らかにおかしい・・・
これは、髪メッシュ(Geomety)にはノーマルマップキーが登録されているのに、該当するマップが欠損している場合に起こる不具合のようです。
だとすれば、完全にメッシュから紐づいているノーマルマップを削除すれば良いかというと・・・
完全にノーマルマップを削除してみました。謎いスポット状のハイライトが出現!?

完全にノーマルマップを削除してみました。謎いスポット状のハイライトが出現!?

 なにやら、スポット状のハイライトが乗っかってます。
そもそもこのシェーダーはメガネのレンズ用だし、メガネにはノーマルマップは使用されてないみたいなので、このちょっとプラスティックっぽいハイライトは”SimGlass”としては、これが正しいのかも。
とは言え、髪の毛に使うにはこのハイライトは不向きです。やっぱり、髪の毛用に使うなら、ノーマルマップは切っちゃだめみたいです。
ちなみにこれはノーマルマップの話しで、スペキュラーに関してはマップが有っても無くても一切影響しないようです。(スペキュラーマップで反射やハイライトを与える事ができないみたいです。)
そもそも、ベースゲームの髪をクローンして作る場合、ノーマルマップは入っているので、上記のような症状が起こる事はないのですが、別の方法で髪を作った場合や、いじり倒しているうちにノーマルマップがどこかに逝ってしまいました・・・なんて場合、以下の方法で復旧可能です。

ノーマルマップ復旧方法

まず、Sims 4 Studioでファイルを開きます。
Tools > Hash Generator を選択します。

赤枠のところの値を使います。

Hash TextのところのTextの中にお好きな値を入力します。
生成された、FNV64という欄の値をメモしておきます。
ノーマルマップのリソースに一意のインスタンスIDが必要なため、こちらを利用して、ハッシュ値を生成します。

Add ボタンでリソースの追加をします。

Add ボタンでリソースの追加をします。

Werehouseタグを選択して、下のほうにあるAddボタンをクリックします。
リソースの追加ダイアログが開きますので、Type,Groupを左図のようにして、Instanceのところには、先ほど生成した値を入れます。

ノーマルマップ用のテクスチャを追加します。

ノーマルマップ用のテクスチャを追加します。

DST Imageというリソースが追加されたと思います。
こちらを選択して、右側のプレビューウインドウの下、Importをクリックして、適当なノーマルマップ用テクスチャをインポートします。”SimGlass”シェーダーの場合、何を入れても見た目に影響しないので、単色グレーのテクスチャをぶち込んでます。

メッシュにマップを紐づけなおします。

メッシュにマップを紐づけなおします。

Geometryを選択して、Material > Items の横、Edit Items をクリックします。

NormalMapの項目を追加します。

NormalMapの項目を追加します。

開いたウインドウの左下、Addをクリックします。
右側のField,Typecodeを左図のように設定します。
Valueの値は、先ほどのノーマルマップのキーの値です。
Group,Typeは左図のように、Instanceは最初に生成した、ハッシュ値になります。

以上設定が終わったら、Saveをクリックしてウインドウを閉じます。
ファイルをセーブして、完了です。
ノーマルマップ復旧方法っていってますが、別に普通にリソースを追加したいときもやり方は同じです。
なんか結局書いてることの論点が見えないまま、以上でございます。
結果、削除しないでいいものを削除して元にもどしているという徒労。