【LW Plugins】

※ここにあるプラグインは作者の思いつきで機能を追加している為、原則としてバージョンアップ時の保存データの互換性は保証されない事、ご了承願います.


【back】

TB's Edge Bevel Shader
【面取りレンダリングプラグイン】
【概要】

レンダリング時にオブジェクトのエッジ部分を検出し、周辺の法線を変動させる事で、面取りされていないオブジェクトをあたかもちゃんと面取りされているようにレンダリングするプラグインです.

【サンプル画像】

TB_Edge適用前

TB_Edge適用後

【ダウンロード】
Version 0.40(for 7.x & 8.x on Win32)

【履歴】

v0.28 公開
v0.30 複数サーフェスに適用された場合のバグ修正
ついでにエッジデータの内部構造を修正、若干効率化
v0.32 エッジ検索に伴うデータ構造の見直しによる高速化&効率化
'Scan deformed object'オプションの追加
マルチスレッド暫定対応(マルチプロセッサマシンでは未検証)
v0.34 開放エッジを処理するモードを追加(暫定)
エッジ部法線の計算方式を改善、より正確な値を算出するようにした.
v0.35 deformation取得時バグにより、正常に動作していなかったのを修正.
v0.38 マルチスレッド関連の問題修正(内部的にLW機能->Native同期機構に変更)
Edge検出情報をLWのチャンネルに書き出す機能を追加.
v0.39 Surface Baker使用時にクラッシュする問題修正(Surface Baker自体は未対応)
v0.40 コアライブラリ修正
LW6非対応
法線の変更をwNorm0にも反映するよう変更(複数シェーダ使用時の親和性強化)
インターフェイスをXPanelに変更




TB's Fake-Skin Shader
【スキンシェーダー】
【概要】

シンプルなスキンシェーダーです、 多重散乱計算は双極子近似はおろかマルチサンプルすら使用していませんが、 曲面を持つオブジェクトでは自己照明やグラディエントなどを調整するよりも お手軽に、比較的見栄えのする結果が得られると思います.

(ま、上記シェーダーの一部の分布関数はグラディエントでは再現不可能ですが、それ程劇的という訳でもないので;-)

【サンプル画像】

サンプル画像1

サンプル画像2

【ダウンロード】
Version 0.33 (for LW 7.x & 8.x on Win32)

【履歴】

v0.20 公開
v0.24 各パラメータのエンベロープ&テクスチャ対応
簡易セレクティブライト指定(Prefix)追加
ライトフラグのNo Specular/Diffuse対応
環境光調整用パラメータ追加
v0.25 保存関連及びSheenパラメータの計算に関するバグ修正
(v0.24でエンバグしてました、ごめんなさいm(__)m
v0.26 スポットライトのプロジェクションイメージ対応
v0.27 照明計算ルーチンの更新(内部ツール対応)
v0.28 Gradientの機能強化&バグ修正
反射・屈折LWのシーンオプションを反映するよう変更.
v0.29 CubicMapのメッシュ変形時におけるバグ修正
ランダムサンプリングのアニメーション時のちらつきを軽減(TB_lightParamのArealight Shadow機能)
v0.32 マルチスレッドレンダリング時の問題修正
コアモジュール修正(VParamに関するバグ修正)
ライトパラメータの影の色対応(平行・点・スポットのみ、面・線光源は非対応)
各種パラメータのエンベロープ・テクスチャ対応
LWの半透明度対応
v0.33 sheenパラメータの計算に不完全な実験中のルーチンが混在しており不自然な影が発生していたバグ修正(以前のルーチンに戻したのみで改善は無し)


 

TB's Second-Surface Shader
【サーフェスブレンドプラグイン】
【概要】

マスクテクスチャにより異なる質感のマテリアルをブレンドします.
ブレンドするマテリアルはLWの標準機能とほぼ同等のパラメータ指定が設定可能です.

また複数の合成モードや拡張されたGradientにより材質をレイヤー状に
重ね合わせエフェクトツールなどとしても使用可能です.

 

【ダウンロード】
Version 0.39 (for 7.x & 8.x on Win32)

【履歴】

v0.28 公開
v0.32 Gradientの機能強化&バグ修正0
'Compose Mode'パラメータの追加
Channelキャプチャ関連の機能追加
BumpのインターフェイスをLWと統一
v0.33 CubicMapのメッシュ変形時におけるバグ修正
Preview時のBump表示に対応
v0.38 コア入れ替え
テクスチャレイヤーのエンベロープが保存されないバグ修正
テクスチャ参照情報がLW側とコンフリクトする問題修正
グラディエント種別のOcclusionの精度向上
テクスチャのAutoSize対応
バンプの値をbumpHeightに反映するよう変更
'Mask bump'関連オプション追加
bumpパラメータ変更時の修正がプラグイン上の他のチャンネルのGradient bump入力に反映されるよう修正
'Mask output channel'オプション追加
low,highクリップのenvelope対応
v0.39 バンプ機能が8.xで正常動作しないバグ修正


 

TB's Infinite Plane
【無限平面レンダリングプラグイン】
【概要】

無限平面をレンダリングするプラグインです.

【サンプル画像】

サンプル画像1(海面と雲に無限平面を使用)

【ダウンロード】
[old]Version 0.30 (for 6.5b & 7.x &8.x on Win32)
Version 0.35 (for 7.x & 8.x on Win32)

【履歴】

v0.26 [beta] 公開
v0.27 'Enable fog', 'Fog distance scaling'オプション追加
v0.28 反射・屈折ぼけのサポートを追加
ユーザーインターフェイスの整理
照明計算ルーチンの更新(内部ツール対応)
v0.29 Gradient機能の強化&バグ修正
BumpインターフェイスをLWと統一
一部のパラメータの範囲チェックを追加(テクスチャにGradientを割り当てた場合にパラメータが不適切な値になる可能性があった為)
LW6.5bに対応
v0.30 メンテナンスリリース
LW6.5b対応(v0.29)に伴いTB_lightParamによるAreaLightShadowが機能していなかった為、現時点では一旦TB_lightParam対応機能を除外
v0.32 VParamのエンベロープ関連のバグ修正
コアライブラリメンテナンス
FogTypeのノンリニア1に対応(ノンリニア2は非対応)
LW6非対応
ライトパラメータの影の色対応(平行・点・スポットのみ、面・線光源は非対応)
グラディエントのbumpが正常に機能していなかったバグ修正
v0.34 VParamのテクスチャアンチエイリアス機能(2種類)サポート
Enhanced TextureAAオプション追加

(*) アンチエイリアスのサポートはテクスチャレイヤー種別がアンチエイリアスをサポートしているもの(画像など)に限ります、LWのプロシージャルの殆どはアンチエイリアスをサポートしていません.
v0.35 保存時Specularチャンネルが正常に保存されていないバグ修正
バンプ機能が8.xで正常動作しないバグ修正


 

TB's Un-Triple
【3角→4角ポリゴン変換プラグイン】
【概要】

隣接する3角ポリゴンを連結して4角ポリゴンに変換します.
またUV座標が存在する場合、可能な限りUVを維持するように変換します.

 

【ダウンロード】
Version 0.10 (for 6.5b & 7.x & 8.x on Win32)

【履歴】

v0.10 公開


 

TB's ShaderMan
【RenderMan互換シェーディング言語】
【概要】

Rendermanシェーディング言語(サブセット版)をサポートしたシェーダーです.

Rendermanのsurfaceシェーダーをコンパイルして読み込む事で、様々なシェーディングアルゴリズムのレンダリング機能をサポートします.またChannelモードではLW標準のパラメータを操作するチャンネルシェーダーとして実行する事も可能です.

シェーディングに特化したVMとバイトコードを出力するコンパイラによりLW標準のScriptよりも高速に動作し、実用的な速度で複雑なサーフェスシェーダーを書く事ができます.

【サンプル画像】


Renderman CompanionのBlueMarble & Woodシェーダーをコンパイル、LWでレンダリングしたもの


【ダウンロード】
Version 0.55 (for 7.x & 8.x on Win32)

マニュアルを読む

【履歴】

v0.40[beta] 公開
v0.42[beta] コンパイラ:
変数宣言のブロックスコープをサポート
変数宣言スコープルールをよりRenderman系コンパイラのものに準拠するよう修正
output指定されていない関数引数への代入をエラーとした(動作上は問題無いが互換性の為)
faceforwardのデフォルト引数のバグ修正
lightsource呼び出しの追加("__nondiffuse", "__nonspecular"パラメータのみ)

VM&プラグイン:
ジオメトリ法線算出のバグ修正
transform関連のバグ修正
lightsource呼び出しオペコード追加
ベクトル&座標パラメータ関連のXPanelのバグ修正

※旧バージョンでコンパイルしたシェーダーファイルは再コンパイルが必要です.

v0.43[beta]

コンパイラ:
関数のoutput引数を複数を指定した場合のバグ修正
sign()呼び出し追加

VM&プラグイン:
fresnel()係数計算のバグ修正
signオペコード追加

その他:
標準機能では実現不能なサンプルシェーダーを少量追加

※旧バージョンでコンパイルしたシェーダーファイルは再コンパイルが必要です.

v0.45[beta]

コンパイラ:
return,break文の入れ子ループ指定に対応
コンパイルエラー処理及びメッセージを強化

VM&プラグイン:
noiseの結果がsignedになっていたバグ修正
splineの結果が反転していたバグ修正
Oiの出力が範囲外であった場合のclampingバグ修正

v0.48 正式リリース版

コンパイラ:
stval(), raytrace2()関数追加
rayhittest()関数追加(試験実装)
Ai変数追加
__lighttypeライト変数追加
s_sx, s_sy変数追加

VM&プラグイン:
VMスタックオーバーフローのチェックを追加
VMに渡されるst座標についてUVマップ以外の投影方式のサポートを追加
stval, raytrace2オペコード追加
rayhittestオペコード追加(試験実装)
'Compose Alpha'オプション追加
"camera"座標空間追加
"hls","YIQ"カラースペースの追加
Modeler上でプレビューを実行した際にクラッシュする問題を修正
Cl0算出時スポットライトのプロジェクションイメージ対応

※旧バージョンでコンパイルしたシェーダーファイルは再コンパイルが必要です.

v0.50 コンパイラ:
s_Ns変数追加
isshadowray()関数追加
gettls(), settls(),setshaderdata(),getshaderdata()関数追加

VM&プラグイン:
"raster", "screen", "NDC"座標空間追加
"xyz", "XYZ", "xyY"カラースペースの追加
modオペレータの被除数が負である場合にRenderman非互換となっていた問題を修正
ShaderパラメータのGradient入力機能強化&バグ修正
ライトベクトルLが正規化されていた問題を修正
安定性とリソース解放に関する懸念事項からスレッド同期をWin32APIで実行するよう変更(Preview実行中にレンダリングを開始するとクラッシュする問題対応)
シェーダーパラメータのマルチスレッド呼び出し時のバグ修正
シェーダーのコピー時テクスチャが反映されないケースがあった問題を修正
'Affect Transparecy'チェック時Oi=color 1のサーフェスの影が表示されないバグを修正
isshadowrayオペコード追加(試験実装)
settls,gettls,setshaderdata,getshaderdataオペコード追加(試験実装)
可能な個所でLWシーンのRender Optionを反映するよう修正
パネルのパラメータ名称を変更

v0.55

コンパイラ:
Pref,Nref,Ngref変数追加
pointilluminance(), ispreview()関数追加
諸事情によりstval()関数の仕様を変更、それに伴い名称をstvalue()に変更
諸事情によりtls,shaderdata関連の機能を削除
initrandom(), pushrandom(), poprandom()関数追加
image()関数追加
spline()関数の基底指定を可能とした("catmull-rom", "bspline", "linear"の3種)
raytrace2()関数をraytrace()に名称変更、マルチサンプルオプションを追加
#pragmaキーワード追加
_bump_height変数追加
_Crep,_Krep変数追加(Channel Shaderのみ有効)
array()関数追加
C/C++スタイルのキャスト演算サポート(RenderMan非互換)
コンパイラ本体の戻り値がVMコード生成失敗時に0を返していたバグ修正(バッチ, makefile等での使用想定)

VM&プラグイン:
pointilluminance, ispreviewオペコード追加
"object"座標系をオブジェクトの変形を参照しないよう変更(RenderMan準拠) 併せて"reference"座標系を追加
Surface Baker実行時にLWがクラッシュする問題に対応(Surface Baker自体には未対応)
パラメータにテクスチャを設定した際のCubicMapのメッシュ変形時におけるバグ修正
乱数機能(random)使用時のアニメーションでのちらつき軽減対策の実装、併せてinitrandom, pushrandom, poprandomオペコード追加
imageオペコード追加とそれに伴う機能追加
LWサーフェス向け拡張変数のプリフィックスを's_'から'_'のみに変更
_sx, _sy変数の仕様変更
パラメータのエンベロープ関連のバグ修正
cellnoise()の範囲が-1.0〜1.0になっていたのを0.0〜1.0に修正
ライトパラメータの影の色に対応(面・線光源には非対応)
テクスチャUV座標(s,t)が正規化されていたバグ修正
Full Shaderモード時の他チャンネルの取り扱いに関するオプションを'Shader Type'オプションに統合
roundオペレータの引数が負数であった場合に正常に動作していなかったバグ修正
ベクトルパラメータのテクスチャ機能が8.xで正常動作しないバグ修正

※旧バージョンでコンパイルしたシェーダファイルは再コンパイルが必要です


 

TB's Dirt
【汚し作成プラグイン】
【概要】

レンダリング時にオブジェクトのポリゴンが入り組んだ個所を検出し、
その周辺のサーフェスを変更する事で汚しなどを表現するプラグインです.

 

【ダウンロード】
Version 0.44 (for 7.x & 8.x on Win32)

【履歴】

v0.38 正式版公開
v0.39 CubicMapのメッシュ変形時におけるバグ修正
ランダムサンプリングのアニメーション時のちらつきを軽減
v0.42 エンベロープ保存関連のバグ修正
コアライブラリの問題からLW7.x以降に変更
VParam関連のコアライブラリ修正対応
Dirt Width/Falloffのエンベロープ対応
サンプリング系列をシェーディングスポットのオブジェクト空間固定に変更
(変形しないオブジェクトではちらつき無しでアニメーションのレンダリングが可能)
Gradientのbump入力の処理改善
v0.43 バンプ機能が8.xで正常動作しないバグ修正
v0.44 Modeler Previewでクラッシュするバグ修正


 

TB's ShaderTree
【シェーダーツリー】

 

 

【概要】

シンプルなノード方式によりサーフェス設定を行うシェーダーツリープラグインです.

ノードベースでLWの各チャンネルの修正や、独自のカスタムシェーディングの設定が可能で複雑な質感の表現が可能です.
また既存のサーフェスの設定や他のシェーダープラグインと組み合わせ、必要な個所だけノードを使用するような使い方ができるよう設計されています.

【ダウンロード】
Version 0.52 (for 7.x & 8.x on Win32)

マニュアルを読む

【履歴】

v0.40 正式版公開
v0.42 Save&Load, プリセットの読み込み機能が全てのノードを対象になってた為、これを現在編集中のノードのみを対象とするよう変更.
オペレーション時の表示メッセージ強化
'translucent'ノード追加

※以前のバージョンとは保存関連の機能の挙動が変更になっています.

v0.43

0.42での内部構造改修の際に接続パラメータのインデックスが無視されていたバグ修正
GUIデザイン修正

v0.50

ノード評価結果取得の若干効率化
カスタムシェーダ関連の照明計算効率化
root,spot,tex_bumpにbump_hパラメータ追加
カスタムシェーダにライトフラグ関連のパラメータ追加
テクスチャ保存に関するバグ修正
テクスチャのAutoSize対応
occlusion/half occlusion及びテクスチャグラディエントのocclusionの精度向上
item,transform,vtransformのitemが未定義(none)の場合Shaderが適用されたオブジェクトを参照するよう変更
uv,vcolorノード追加
Wrapped-Diffuse, backlight-wrappedのシェーディング結果改善
cfgファイル対応
ユーザー定義ショートカット機能追加
パネルのキー入力処理改善
Node外でのシフトキー押下or中ボタンドラッグ時の矩形選択機能追加
spot_shadeノードで元サーフェスのreplacement_percentageが正確に処理されない場合があったバグ修正
カスタムシェーディングの影の色対応(面・線光源は未対応)

※以前のバージョンとの保存データの互換性はありません.

v0.51

spot_shadeノードの有効チャンネルを指定できるよう変更
occlusionノードに減衰機能追加
ScreamerNet使用時にクラッシュするバグ対応

v0.52

ベクトルテクスチャが8.xで正常動作しないバグ修正


【0.42以前のGUIデザインと0.43でのデザイン改修について】

TB's ShaderTree 0.42以前のバージョンはAlexei Puzikov氏の製作されたRenderMan用のShaderTreeアプリケーションであるShaderManのGUIとほぼ同じデザインになってしまっていた為、0.43でのGUIの改修を行いました.

実際氏のアプリについてはTB's ShaderTreeの前身であるDeepShadeを習作した際に大いに参考にしており、そのエンジン部分をそのまま引き継いだ本プラグインの配色をLWに合わせて調整した際にほぼ同じ配色になってしまっていました. また開発中にデザインについて余り意識が無かった事もありそのままリリースしてしまう結果となりました. 実際の所ここ半年程は氏のプログラム含めRenderManさえ殆ど触っていない状況で、指摘があるまで事態に気が付かなかったという部分もありますが、実際の所これは盗作に等しい行為であると考え、氏には謝罪のメールを送ると共に、このデザインの問題を解消する為に0.43ではデザインの改修を行っています.

なおもう一つのプラグインであるTB's ShaderManについてはこれの名称に含まれる'ShaderMan'という単語は氏の作品を指すものでは無く、また私が該当プラグインを作成した経緯から私にとって'ShaderMan'という名称でなければならない理由があった為、その事情については氏にメールにて説明させて頂いております.

最後になりますが、私自身RenderMan系のレンダラも使用している事から、氏のShaderManプログラムには大きく感銘した部分があり、今回このような事態になってしまいましたが、氏の行為には開発者また一ユーザーとして最大限の敬意と感謝を払いたいと考え、今回の件については氏に深くお詫び致します.

 

TB's Vue Image Composer
【Vue5 Infinite + LW画像合成プラグイン】

 

 

【概要】

景観ソフトVue Infiniteで生成した画像をLWのレンダリング結果と 厳密な深度で合成を行う為のプラグインです.
またVueで生成した背景に対しLW上のオブジェクトある程度正確な影を 落とす事が可能です.

 

【ダウンロード】
Version 0.22 (for 7.x & 8.x + Vue5 Infinite on Win32)

※Vue側はScriptが実行可能なInfinite版のみサポートになります.

【履歴】

v0.22 公開


 

 

 

【back】


メールアドレス収集ロボット対策の為メールアドレスはHP上に記載しておりません、
ソフト内のドキュメントには記載しておりますので、御用の方はそちらまでお願いします.
since 2003/10/04, Y.Ume/Tabo