D-Creationへいらっしゃいませ。
ここではLightWave3D用プラグインやら変態絵やら変態妄言やら死ぬまでの暇つぶし的人生の進捗状況やらを垂れ流してます。

ファイルの扱い、リンクについて
プラグイン等のファイル自体の無断転載はご遠慮願います。
このサイトへのリンクは自由ですが、プラグインはバージョンアップなどでファイル名が変わるため、それらファイルへの直接リンクをする場合は注意してください。

管理人 : DHM
メール : dhm◎d-creation.sakura.ne.jp
(@を文字に直してください)
バナー

2006年11月07日

色々追加

セルエッジ周りを色々追加、修正しました。

unReal Xtreme2 for LW8 beta21

unReal Xtreme2 for LW9 beta5
posted by DHM at 01:43 | TrackBack(0) | Plugin

2006年09月22日

もっと基本的なところにバグがあって胡散臭いダイエットマシーン使ったときの腹よりもヘコむ

unReal Xtreme2 for LW8 beta20

unReal Xtreme2 for LW9 beta4

CelPainter、ToonTracerパネルを開いたときにクラッシュすることがあったのを修正しました。
なんかパネルを開いたときのActivateコールバックの中でコントロールの描画をやらせるとまずいみたいで。
posted by DHM at 00:40 | TrackBack(0) | Plugin

2006年09月20日

基本的なとこにバグが残っててヘコむ

unReal Xtreme2 For LW8 beta19

unReal Xtreme2 For LW9 beta3

致命的なバグでセルエッジレイヤーやセルグラデーションレイヤーにたくさんリスト項目がある状態で削除を実行するとクラッシュしてたのを修正。
あとはLW9でSurfacePiercingが正しく動いてなかったのを修正。

LW9のみの追加機能はネガティブシェードの設定がレイヤーパネルに移ってレイヤー単位で設定できるようになりました。
また、ネガティブシェードの他にLWシェードの項目も選択できるようになりました。
通常、ベースのセルグラデーションでは自前で計算した普通の拡散シェーディングの計算値を入力にしていますが、LWシェードではLWサーフェイスのディフューズシェーディング(スペキュラレイヤーはスペキュラシェーディング)の値をそのまま入力値として使用できます。
これはもっぱらLWサーフェイスのノードと組み合わせた際に使用するもので、例えばOcclusionの計算結果をDiffuse shadeに接続してやればOcclusionの陰影をセル化できます。
060920_004.jpg


昨日のブロッサム、なんか足りないと思ったら髪の毛のハイライト忘れてたんで追加してみたり。
異方性反射とか外して他のプラグインとかノード使えばいいじゃないと言ってしまった手前、自分でやってみる。
060920_001.jpg

……かなり厳しいかも〜
060920_002.jpg
頭の左上のフチに出てるのはInsidenceに法線と光線ベクトルの内積を掛けて光が強く当たってるところにハイライトが出るように設定。
横に走ってるハイライトは単純にY Coordinateのグラディエントに同じく内積を掛けてます。
この2つの成分を足して範囲を0〜1に制限してSpecularShadingに突っ込んだら、CelPainterのスペキュラレイヤーに新機能のLWシェードを使ってセルグラデ化してます。

んで、光線と言ってるけどリアル系じゃないんで実際のライトを無視して好きなようにスペキュラいじれるようにNullオブジェクトのForwardベクトルを光線代わりにしてNullの角度で制御してます。
060920_003.jpg

……静止画だしここまでやんなくてもテクスチャでいい気も。
posted by DHM at 01:18 | TrackBack(0) | Plugin

2006年08月25日

続々For LW9

unReal Xtreme2 For LW8 beta18

unReal Xtreme2 For LW9 beta2

大きいところではセルエッジのTGAファイル出力を設定してアニメーションをレンダリングした際に最終フレームのセルエッジしか出力されなかったバグを修正。
追加としてセルエッジの出力をRGBAかアルファのみを選択可能に。
また、RGBAで出力した際にRGBチャンネルにはアンチエイリアスがかからない状態で出力されます。
これはレンダーイメージとセルエッジ画像の背景色の違いから合成時にフリンジが発生するのを防ぐためで、RGBチャンネルをアルファチャンネルで合成することで正しいアンチエイリアスラインを取得できます。

060825_001.jpg
フリンジってこんな状態のやつ

060825_003.jpg060825_004.jpg
RGBとアルファの出力はこんな感じ

060825_005.jpg
RGBチャンネルをアルファで抜いてやればきれいに重なります。
posted by DHM at 19:03 | TrackBack(0) | Plugin

2006年08月20日

続For LW9

HairBladeもLW9対応しました。
LW8用もBladeEditのバグ取ってます。

HairBlade 1.21 For LW8

HairBlade 1.21 For LW9

LW9用はエッジ選択に対応してます。
posted by DHM at 17:45 | TrackBack(0) | Plugin

2006年08月07日

For LW9

unReal Xtreme2 For LW8 beta17

unReal Xtreme2 For LW9 beta1

LW8 beta17は前回追加したスペキュラレイヤーにLWサーフェイスパラメータのテクスチャが反映されるように修正しただけ。

んでLW9用はシェーダー、レンダラーの変更に合わせてだいぶ変えてます。
CelPainter側のスペキュラレイヤーを無効にした場合は自動的にLW側のスペキュラが適用されます。
また、ノードはプラグインの前に処理されるので、ノードを使用してSpecularShadingを設定してやれば異方性反射やBlinnも使用できます。

また、新プラグインとしてEdgeTracerNodeシェーダーを追加。
ノードツリーを使用してEdgeTracerの内部バッファ値を書き換えることができます。

今回、一番微妙なのは透過、屈折と組み合わせた場合のセルエッジの出方で、LW8用とは若干変わっている上、クラシックカメラとそれ以外の新カメラとでもさらに変わってます。
この辺は不都合なければそれを仕様にするかもー
posted by DHM at 00:19 | TrackBack(0) | Plugin

2006年08月03日

beta16

unReal Xtreme2 beta16

CelPainterのサーフェイスレイヤーにDiffuseShadingとSpecularShadingを追加しました。
LW標準のシェーディングを再現します。
060803_001.jpg
LW標準スペキュラを使用したい場合はこんな感じでレイヤーを追加するだけでOKです。

関係ないけどLW9だとクラシックカメラ以外では線ポリゴンはレンダリングされないとドキュメントにあったけど、LW標準のエッジもレンダリングされないのね……
posted by DHM at 23:53 | TrackBack(0) | Plugin

2006年08月02日

習作

LW9をインストール。
なぜかドングルが無いとか言われたもののCDに入ってたセンチネルドライバを手動で入れたら無事動作。

とりあえず適当に作ってたプラグインを動かしたりクラッシュしたり修正したり。

そんな訳で試しに作った使い道のないものなんかを。

DC_FilterNode 1.00

ピクセルフィルターとイメージフィルターでノードエディターが使えます。
060802_001.jpg

また、ピクセルフィルタ、イメージフィルタのデータにアクセスするためのノードも追加され、「ノード追加」->「Additional」から使用できます。
060802_002.jpg

実際に追加されるノードはこんな感じ。
060802_003.jpg

ノードのパラメータはこんな感じ。
060802_004.jpg
それぞれのチェックボックスはそのバッファの使用有無で、使いたい奴にチェックを入れておかないと矢印繋いでも正しい値が取れません。

なんでこんなのがあるかってーと、フィルタではレンダリング時に使用するバッファをLWに教えてあげないといけないんですが、出力ノードパラメータが使われているかどうかをチェックする方法が無かったんで自動検出できませんでした。
入力の方はあるのに……
それじゃあと使いもしないのに全部チェック入れたりするとその分消費メモリが増えるんで横着はいけません。

イメージフィルタも同じ様なもんです。

ただ、元々シェーダー用のノードシステムを無理やり使ってるんでシェーダー系やスポットのノードは使えません。
逆にピクセルフィルタアクセスノードをシェーダーで使っても動きません。

実用性は皆無だけどこんなことくらいはできます。
060802_005.jpg

060802_006.jpg
posted by DHM at 01:39 | TrackBack(0) | Plugin

2006年07月24日

beta15

unReal Xtreme2 beta15

ウウウ……
ブラシ周りが一度気になりだしたら止まらなくなって色々改善改悪繰り返してます。

右に1ドットずれは緩和されたとおもうんだけど……
060724_001.jpg
アンチ低、適正サンプリングOFF
ブラシサイズをScreenYのグラディエントで0.1〜5.0に変化
posted by DHM at 00:00 | TrackBack(0) | Plugin

2006年07月23日

beta14

unReal Xtreme2 beta14

BBSで色々報告のあったバグを修正しました。
そろそろ正式版かと思ってたけどまだまだ出てくるなぁ……

はてさて、月末には日本でもLW9が届く予定なのでノードの追加やシェーダー仕様の変更に対応するため、LW9用のunRealの環境を作成。
LW7.5〜8.5用は今のbetaが正式版になったらあとはバグ取りくらいしかやんない予定。

ついでにサンプル見ながらノードプラグインを試しに組んだりビルドしてヒャッホーイと喜んでみたり。
……と思ったらビルドでエラーが。

調べたらこのバージョンからコンパイル時に指定するプリプロセッサシンボルが_WIN32から_MSWINになってた……
ドキュメントによると64ビット版Windowsでも使うから紛らわしくないようにだそうで。

他のサンプルも色々見てたらノードを使用したディスプレースメントプラグインなんてのもあった。
NodeEditorグローバルを使えばシェーダー以外の機能でもノードツリーインターフェイスが作れるようなのでToonTracerのブラシ設定にノードを使ったりもできそう。
……実用性があるかは別として。
posted by DHM at 00:00 | TrackBack(0) | Plugin

2006年07月10日

beta13

beta13です。

unReal Xtreme2 beta13

CGTalkでブラシサイズを太くすると線がぼやけるとか書かれてたので見直したらブラシサイズが偶数だと線がぼやけることが判明、修正しました。
でも小数を含むサイズだとまだぼやけ気味になるなぁ……

060709_001.jpg
posted by DHM at 00:11 | TrackBack(0) | Plugin

2006年06月04日

beta12

というわけでbeta12です

unReal Xtreme2 beta12

Y.Ume様のおかげで反射、屈折マップに対応できたのと、反射の色計算が間違ってたので修正しました。

他、カラーピッカーにグラディエントと色見本を追加しました。

060604_001.jpg

グラディエントの左右の色をクリックして選択、ダブルクリックで色を変更できます。
グラディエントで混ぜられた色は右のボックスに表示され、上の▲ボタンでキー色にセット、下の矢印で色見本パレットの選択と置き換えます。

色見本パレットは上に並んだボタンで左から色の追加、選択色の削除、選択色をグラディエントの左右の選択色へセットが可能です。

また、フォトショップの色見本ファイル(拡張子.aco)の読み書きもできます。
ただ、フォトショ7.0しか持ってなくてそいつのファイルを解析して作ったのでCSでフォーマット変わってたら読めないかも。
また、対応しているカラースペースはRGBとHSBのみで、他のは読み込んだときに×で表示されます。
内部では値を保持しているのでそのまま保存してフォトショップで読み込めば色は残ってます。
posted by DHM at 21:19 | TrackBack(0) | Plugin

2006年05月16日

HairBlade1.20

HairBladeがバージョンアップしました。

HairBlade1.20

大きな修正はプラグイン追加実行時のクラッシュがほぼなくなりました。
といっても原因が確実に掴めたわけではなくとりあえず自分のところでは落ちなくなったってレベルですが……

今まではPolygonHandlerのアクティベーション時にコールバックをセットする構造体を動的に確保して返してたんですが、それだとプラグイン追加を実行時にPolygonHandlerが一度アンロードされて、プラグイン追加完了後に再度ロードされたときに、再び動的に確保された構造体を返してもLWは以前の領域にアクセスしようとして落ちてる様子でした。
なもんで構造体をstaticでとっておいてそいつのポインタを常に返すようにしたら落ちなくなりました。

ただ、HairBladeオブジェクトが存在する状態でプラグイン追加、編集を実行すると100%落ちます。
これはVirtualMirrorとかでも発生してるので不可避なようです。

他、機能の追加としてはSasquatchで使えるラインポリゴンが生成できるようになりました。
060516_001.jpg
もちろんルートの点ポリゴンも生成できます。

ただ、BladeFreezeでフリーズしないとライン化できないので、モデラーではDisplayLevelに追加されたライン表示とかサーフェイス色を半透明化するとかして耐えてくださいな。
posted by DHM at 01:26 | TrackBack(0) | Plugin

2006年04月16日

beta11

だいぶかかってしまいましたがbeta11です。

unReal Xtreme2 beta11

レイトレース周りを作り直して透過、反射と影を修正しました。
posted by DHM at 16:35 | TrackBack(0) | Plugin

2006年04月02日

beta10

ホンッッとすんません!

ポリゴンの交差部分等で細い線が綺麗に出ない場合がありました。
だいぶ前の版で深度チェックを削ったときの修正ミスが原因だったんで処理をAutoの時のに固定して戻してみました。

unReal Xtreme2 beta10

具体的には前のバージョンだと下のように線がガタガタになって、アンチエイリアスをかけると線が二重に見えたりしてました。
060402_001.jpg

今回の修正でこうなります。
060402_002.jpg

また、1ピクセル以下の線もこんな感じに。
060402_003.jpg
0.5ピクセル
posted by DHM at 17:25 | TrackBack(0) | Plugin

2006年04月01日

beta9

unReal Xtreme2 beta9

なんかflagコールバックの中でVParamグローバル使ってるのが原因で落ちてた。
とりあえず自分の環境ではマルチスレッドでレンダリングしても落ちなくなった様子。

まあ落ちたら4/1のウソでしたということで。

というわけで透明度を使わない場合はデフォルト設定のように全キーのアルファを0%にするか、全レイヤーの可視設定を無効にしておいてください。
でないとレンダリングが遅くなります。

ToonTracerの方は色々問題のあった深度境界の根本的な改善は一旦諦めてとりあえず誤魔化しに条件設定を追加。
設定はポリゴンセットかカスタムバッファを選択でき、カスタムバッファを選択した場合はバッファのしきい値も設定できます。

ポリゴンセットを選択した場合、ポリゴンセット名称の同一な部分では深度境界を描かないようにできます。
カスタムバッファの場合はバッファの値がしきい値以下の場合に深度境界を描かないようにできます。

詳細は後述。
posted by DHM at 01:07 | TrackBack(0) | Plugin

2006年03月26日

3歩進んで4歩戻る

あ〜〜透明度、鏡面反射関係がボロボロであります。

unReal Xtreme2 beta8

とりあえず透明オブジェクトにスペキュラ設定するとゴミが出るのは修正。

あと、サーフェイスパラメータの両面を有効にした透明オブジェクトにCelPainter設定して、レンダーオプションの影レイトレを有効にした状態でマルチスレッドレンダリングすると落ちるのはまだ直ってません。
posted by DHM at 23:59 | TrackBack(0) | Plugin

2006年03月22日

すまなんだジョ〜〜……

CelPainterに致命的なバグが残ってたんでまた修正。

unReal Xtreme2 beta7

レイヤーのSurface:RawColorが正常に動いてなかったのとグラディエントでクラッシュしてたのを修正。
ライトの強さがシェーディングに反映されてなかったのも修正。

あと、ライトリストの変更点を説明するの忘れてました。
今回はPrefixとかの区別が無くなって普通にワイルドカードで指定するようになってます。
使える特殊文字は*と?で、*は任意の文字列、?は任意の1文字になります。

例えば
Light*
とすればLight1とかLight_mainとかがヒットして、
Light?
とすればLight1、Light2はヒットするけどLight_mainはヒットしません。
*
だけなら全ライトが対象になります。

posted by DHM at 21:35 | TrackBack(0) | Plugin

2006年03月21日

beta6

昨日の今日だけど色々問題が見つかったので修正。

unReal Xtreme2 beta6

カメラビュー内にオブジェクトが無い常態でレンダリングするとクラッシュすることがあったのを修正したのと、CelPainterのスペキュラ計算周りを修正しました。
他、変更としてはプラグインセット時のデフォルト設定を旧バージョンのCelPainterとほぼ同じ結果になるような構成にしました。
以前のTipsで書いてたサーフェイス色、ライト色を使用したものです。

また、シェーダープラグインSurfacePiercingを追加。
今回から単体のシェーダーになり、設定項目も描画させたいサーフェイスのグループID設定と色のブレンド比のみになりました。
基本的な使い方は前髪などの穴をあけたいサーフェイスにSurfacePiercingを設定し、その描画IDに眉毛などのIDを指定するだけです。

この時、SurfacePiercingのセット位置によって描画方法をある程度コントロールできます。

1.CelPainter、EdgeTracerよりも後にセットしている場合
普通に色、輪郭設定とも貫通されます。
060321_001.jpg

2.CelPainterの後、EdgeTracerの前にセットした場合
色のみが貫通し、輪郭設定は前髪の方が使用されます。
060321_002.jpg

3.EdgeTracerの後、CelPainterの前にセットした場合
輪郭設定のみが貫通し、色は前髪のものが使用されます。
060321_003.jpg

ちょっと力技だけど2.の方法に加えて眉毛はグラディエントのIncidenceAngleとかで輪郭モドキをつければ眉毛と髪の線を両方出せそう。
posted by DHM at 21:37 | TrackBack(0) | Plugin

2006年03月14日

beta5

番号1つ飛んでbeta5です

unReal Xtreme2 beta5

CelPainterが追加されましたので再度プラグイン追加を実行してください。
他、任意のサーフェイスに設定されているCelPainterのインスタンスとして動作するCP Instanceシェーダーも追加されます。

が、時間ないので説明はまた後で。
かなりテキトーですがとりあえずCelPainterでどんなことできるかのサンプルシーンを。
060314_001.jpg
060314_002.zip
BRDFシェーダー使ってます。
posted by DHM at 00:00 | TrackBack(0) | Plugin