TOP
BBS
GALLERY
DOWNLOAD
Site-Info
 
     

     
  NOW ONLINE
GUEST: 15
MEMBER: 0
 
     

     
 
NAME
PASS

Remember Me
  
>> Forget PASS ?
>> Make ACCOUNT ?
 
     

     
 
> 高度な検索
 
     

     
 

Ver.18.0p+ (Win32&64bit)
Ver.18.0p+ (intelMac)
Ver.17.0g (Win32&64bit)
Ver.17.0g (intelMac)
Ver.16.0b (Win32&64bit)
Ver.16.0b (intelMac)
Ver.15.0j+ (W/X)
Ver.14.0c (W/X)
Ver.13.0t (W/X)
Ver.12.0w (W/X)
Ver.11.1i (W/X)
Ver.11.0t+ (W)
Ver.10.5r (W/M)
===================
Hash, Inc. Forums
===================
A:M FILMS (E)
A:M Filmsとは(日本語訳)
===================
A:M Stills (E)
===================
 
     

 
>> BBS-TOP
>> 開発
Gradient Specularシェーダーを作ってみました
投稿するにはまず登録を

スレッド表示 | 新しいものから 1  2    NEXT >> BOTTOM
[NEWS Editor]
Gradient Specularシェーダーを作ってみました
2006-5-9 4:47

グラディエントをスペキュラーの分布として使うシェーダープラグインを作ってみました。
V13にはGradientLightというのが付属してて一見良さそうな感じなのですが、
スペキュラーとしてはもう一つ実用的ではなく、改造してみようと思いましたが、
シェーダープラグインのソースコードはなぜか古いやつ以外はなかなか公開されないので、
自分で作ってみました。

今の所一応うまく動いているので、無保証のフリーソフトウェアとして公開するので
よろしければ使ってみてください。
V13専用 ダウンロード

●特徴
 グラディエントで分布を決められる
 大きいハイライトや輪になったハイライトを描ける
 減衰を抑制したべた塗りっぽいハイライトを描ける
 (FallOff値を上げるほど減衰が抑制されます)

あと、Hashフォーラムでも話題になってましたが、
アニマスのプラグインの開発はVisual C++ 2005 Express Editionだけでは無理でした。
やっぱりVC++6.0のMFC4.2関係のファイルが要るっぽい感じです。
 
[NEWS Editor]
Re: Gradient Specularシェーダーを作ってみました
2006-5-9 22:33

試してみました。
ってもこれだと他の方法でも出来そうですが(^^;)
レンダリング結果は、なかなか面白いですね
jenpyさんのサンプルなんかだと簡易写り込みっぽいですし
トゥーン以外でも応用が利きそうに思います。

>Visual C++ 2005 Express Editionだけでは無理でした。
あちゃ駄目でしたか?使えると凄い便利なんですけどねぇ
 
[NEWS Editor]
Re: Gradient Specularシェーダーを作ってみました
2006-5-11 23:18
新バージョンができました。
V0.92
○計算速度が他のシェーダーと同程度に速くなりました。
○FallOffの設定が100--0%になりました。

V12用を作ろうとしたのですが、どうもHShading::GetAway() がうまく動作しない気がするので面倒な感じです。
V12用のスペキュラーシェーダーはYves氏も作ってないので、これが原因かなーとも思います。

>試してみました。
うまく動いてるみたいでよかったです。
トゥーンに使ってちゃんとトゥーンっぽいハイライトになってますね。
あと、Express Editionでも、プラットフォームSDKとVC++6.0のサービスパックから
必要なファイルを持ってくればアニマスのプラグイン開発には使えるかも知れません。
 
[NEWS Editor]
Re: Gradient Specularシェーダーを作ってみました
2006-5-12 19:47

複数ライトで使ってみると変になったので、修正しました。
グラディエントの補間が無いのでインチキっぽいですが、
複数ライトでもハッタリの効いたハイライトが出せます。
あと、Soften ON 5パスでこのアンチエイリアスの効きはやっぱり効率良いですよ。

V0.93
○複数ライト時にスペキュラーサイズを変更すると
他のライトの値がなぜか(足すべき値は無いのに)
足されておかしくなる問題を修正しました。


SDKに入ってるシェーダーのサンプルは、
シェーダーの最後でスペキュラー範囲外と判定された時に
 return FALSE;
で何もせずに単純に戻ってるんですが、実際には
 color = 0;
 shading->SetSCol(color);
 return FALSE;
という風に、値を設定しないといけないようです。
標準のPhongもこの問題ひっかかってるかも知れないです。
 
[NEWS Editor]
Re: Gradient Specularシェーダーを作ってみました
2006-5-13 2:50
僕もちょっと試してみました。
面白いですね、これ。シェーダーかける人がうらやましいー。


(■大きいサイズ)

小ネタ的な使い方ですが
アニメセルなんかであるエッジのハイライト表現に使ってみました。
スペキュラーサイズを大きくして、
グラディエントの陰側にハイライトを作って
ベルベットシェーダーっぽい効果にならないかやってみたんですが、
立体感が強調されてちょっと面白い絵になりました。
トゥーンのグラディエントをいじっても
こういうハイライトにはならないので
表現の選択の幅が広がった感じです。

*訂正
すみません、おもいっきり勘違いしてました。
トゥーングラディエントでも同じのが作れます。
ただ
モデル周縁にきれいにハイライトを出すには
カメラとライトの軸を重ねないといけないので限定されてしまいます。

通常の陰影用のライトのほかに
ハイライト用(スペキュラ)ライトを作ってカメラにコンストレインツで一致させれば、
自由にカメラと陰影のライトをいじっても常にエッジにハイライトが出せる、といった使い方ができそうです。

(■もうちっと効果がわかりやすいサンプルショット)
 
[NEWS Editor]
Re: Gradient Specularシェーダーを作ってみました
2006-5-19 2:24
V12用とV11用も作ってみました。
V12用
V11用

yamoriさんのサンプルでは効果的に使えてますね。
特にしっぽのハイライトがすごいですよ。
男性キャラのエッジのスペキュラーも良い感じで出てます。
 
[regular]
Re: Gradient Specularシェーダーを作ってみました
2006-5-26 19:17
凄くいいプラグインですね。前からずっとこんなのが欲しかったんです。
コレを使いたくて、バージョンUPする事を決めました。
これからもぜひとも開発、頑張って下さいませ。期待しております。
 
[NEWS Editor]
Re: Gradient Specularシェーダーを作ってみました
2006-5-27 22:54
ども、ver11.1でテストしたのですが

Unable to load plug-in[c:\Program Files\Hash Inc\V11.1\Shaders\GradSpec.shd]
指定されたモジュールが見つかりません。

というメッセージが表示されてしまいます。
いまさらver11.1なのでそれほどニーズがないかもしれませんが
もしもお心当たりがありましたら確認していただけますと幸いです(^^;)
 
[regular]
Re: Gradient Specularシェーダーを作ってみました
2006-5-28 13:31
Ver11.1hを使用していますが、一応機能してますよ。
例によって、勘違いしているとか、
使い方が違うのかもしれませんが・・・。(^^;


 
[NEWS Editor]
Re: Gradient Specularシェーダーを作ってみました
2006-5-28 21:42
ありゃ、環境が違うと動くんですか。
ウチの場合は起動直後に前述のエラーが表示されて
プラグインの選択自体が出来ないので、
多分、草壁さんの環境など普通の状態なら動くというやつですかね(汗)

ちなみにウチは
vet11.1i英語版ネットレンダー
です。

なお、ver12と13ではちゃんと動くので、
どうしても使いたい場合はこっちを使えば良いので
他の方に再現性が無く、心当たりなど無いのでしたら、
放置でもかまわないと思います(汗)
 
スレッド表示 | 新しいものから 1  2    NEXT >> TOP
投稿するにはまず登録を