« UberAreaLightの可能性 | トップページ | Skin Shader Preset (for DAZ Default Shader) 公開 »

シェーダー適用スクリプト作成中

A3ubershader 昨日はココログでトラブル発生のため屋根裏部屋に記事を書いたんですが、今日はその続きです。マテリアルを判断してデフォルトシェーダーの各パラメータに値を設定するところまでは出来ました。A3に適用すると肌の色と光沢がとても綺麗になりました。
でもせっかくDS3を使ってるんだし、どうせならUberSurfaceで動作するように作り変えたい・・・ということで試してみました。

まずUberSurfaceBase.dsaを適当なフォルダにコピーし、テキストエディタで開いてみました。DS2までのスクリプトは拡張子が.dsだったのに対し、DS3用のスクリプトは.dsaに変更されています。中身を見てみると、言語仕様は同じようなんですが、コードが一新されています。プロパティの設定なんかも以前は同じソースの中に関数の記述があったんですが、今回からはDzPropertyHelperクラスが実装されて外部に出されています。このため、ソースはかなりコンパクトにまとまっています。最後のほうに、各種プロパティを初期化する部分があって、ここを変更すればシェーダープリセットとして使えそうです。

ためしにDiffuse Colorを変更して適用してみましたが、なぜか色が反映されません。これはDiffuse Colorだけじゃなく、SpecularやAmbientもColorプロパティの値は全滅ですorz
以前UberSurfaceで天使の輪を作ってみたときもDiffuse Colorが真っ黒に変わってしまったので、おかしいなとは思っていたんです。スクリプトは白で初期化するようになってるし。

これ、絶対にバグでしょ。それもかなり重大な。(;´Д`)

Dazのフォーラムを見てもそのような情報も対処法も書いてないし、とにかくColorプロパティの設定ができなくてはシェーダープリセットなど作れるはずもありません_| ̄|○ il||li
なんとなくDS3のエラーログを見てみたら、スクリプトどころか単に起動しただけでOpenGLスタックアンダーフローのメッセージが出まくってます。( ゚д゚)・・・まぁ実動作に影響ないならいいんですけどね。ただINJを入れたり消したりするだけで、だんだん動作が重くなっていくようにも思えるし、メモリリークのバグもありそうな雰囲気。・゚・(ノ∀`)・゚・。

UberSurfaceの前身のHumanSurfaceShaderはそのような変な動作はなく、きちんとColorも反映されました。なのでこちらをベースに作ることにします。こちらならDS2でも動きますしね。

画像はAiko3にHumanSurfaceShaderを適用し、UberEnvironment2のKH_Parkでレンダリングしたものです。時間がかかるのでOcclusion設定は無し。ヽ(´ー`)ノ

|

« UberAreaLightの可能性 | トップページ | Skin Shader Preset (for DAZ Default Shader) 公開 »

Poser/DAZ Studio」カテゴリの記事

コメント

とても精力的に更新されてますね。私の記事を試していただいたりもしてうれしい限りです。
やっぱりDiffuseが黒になるのはバグでしたか・・・。やっぱり出たばかりなせいかDS3は不具合ありますよねえ。他にも作業していくうちにビューポートが重くなったり、レンダリングに失敗したり、ShaderMixerプリセットを見失ったりと、いろいろありますね。
DS3版のHumanSurfaceShaderも不具合見つかって修正中らしいです。
スクリプトの完成を楽しみに待ってます^^

投稿: Kotozone | 2009年7月 2日 (木) 06時24分

Kotozoneさん、いらっしゃいませ。blogが更新されるたびに参考にさせていただいております。m(_ _)m
DS3のHSSにもバグですかorz。今回のリリースはDazも見切り発車的なところもあったんでしょうかね。修正版が早期にリリースされるといいんですが(;´Д`)

投稿: とうふ | 2009年7月 2日 (木) 18時10分

コメントを書く



(ウェブ上には掲載しません)




トラックバック

この記事のトラックバックURL:
http://app.f.cocolog-nifty.com/t/trackback/1222561/30362935

この記事へのトラックバック一覧です: シェーダー適用スクリプト作成中:

« UberAreaLightの可能性 | トップページ | Skin Shader Preset (for DAZ Default Shader) 公開 »