このマニュアルはPNG形式の画像が表示できるブラウザを使用してください

 

 

 

 

LocalAmbientはライトウェーブレイアウトのピクセルフィルタとして動作するプラグインです。

スペシャルバッファを使用して任意のサーフェイスにのみ影響を与える環境光を作り出したり、各種バッファを使用してサーフェイスの色調整、セルシェーダの発色調整をします。

サンプル1

1.ベース(Ambient 0%)
2.LWのAmbient(255,0,0 100%)
   
3.LocalAmbient(255,0,0 100%)
4.LWのAmbient(255,0,0 100%)
LoacalAmbient(255,0,0 -100%)
向かって右側の球にスペシャルバッファを設定、3ではLWのAmbientを0%にしてLocalAmbientを設定しています。また、LightIntensityには負の値も設定できるので4のようにLWのAmbientを打ち消すこともできます。
LocalAmbientはLWのAmbientを置き換えるのではなく、重ねて効果がかかることに注意してください。
また、現バージョンでは映りこみの色には効果がかかりません。

サンプル2

床サーフェイスにスペシャルバッファを設定
影のみに青を適用
また、サーフェイスに落ちる影の色設定も可能です。
サーフェイスそのものの色と独立して設定でき、併用も可能です。
例えば床に対してサーフェイスを赤、影を青とすれば影が落ちている部分もサーフェイスの一部ですので影は赤と青で紫になります。

サンプル3

SuperCelShaderを使用
Screen,Overlayで色づけ
スクリーンや彩度などの演算描画モードと深度や法線角度といった入力バッファとの組み合わせで標準のグラディエントテクスチャでは出来ない表現も可能です。

 

1.動作環境

Intel版LightWave5.6Rev.C、6.0Rev.E2、6.5

 

2.インストール

localamb.pをライトウェーブのpluginフォルダ以下に置き、レイアウトのプラグイン追加で組み込んでください。
成功するとピクセルフィルターに"LocalAmbient"が追加されます。
また、LigthWave5.6ではイメージフィルターに"LocalAmbient-BufferHandler"が追加されます。

3.インターフェース

レイアウトの「設定」タブの「イメージプロセス」内「ピクセルフィルタ追加」から「LocalAmbient」を選択、表示されたプラグイン名をダブルクリックでオプションパネルが開きます。

・ 1 − バッファコントロール部 ・

・BufferList

現在のシーン内のサーフェイスに設定されているスペシャルバッファ値の一覧です。
何も設定してなくてもデフォルトの0.0が表示されます。
スペシャルバッファ値に対してLocalAmbientがアクティブなら数値の左に"*"が、非アクティブなら"-"が表示されます。

・SpecialBufferの扱いについて

−LightWave5.xの場合−

5.6ではピクセルフィルタに対してのスペシャルバッファ設定ができないため、まずイメージフィルタのスロット1に"LocalAmbient-BufferHandler"を設定します。
これで色、質感設定パネルからスペシャルバッファ1が設定できるようになるので、任意の値を設定します。


また、5.6ではバッファ値に0は使用できません(無視されます)。
設定が終わったらオブジェクトパネルから変更を加えたサーフェイスを持つオブジェクトをすべて保存してください。5.6ではサーフェイス情報を取得するのにオブジェクトファイルを利用するのでファイルに保存しないと設定が反映されません。

−LightWave6.xの場合−

6.xではSpecialBuffer1の値のみを見るようになっています。

小数値も使えますが精度の問題による誤差などが出る可能性もあるので整数(1.0とか28.0)で入れることを推奨します。
また、LocalAmbientで扱えるSpecialBuffer数は256個までなので、5.6の時と同じ0.0〜255.0として使うのがベストです。
また、5.6の時のようにいちいちオブジェクトを保存しなくても変更されたバッファはすぐ反映されます。

・Active

BufferListで選択されているバッファ値に対してLocalAmbientの効果を与えるか否かを切り替えます。
HyperVoxel等のActivateと同等です。

 

・ 2 − カラー調整レイヤー設定部 ・

・LayerList

作成されたレイヤーの一覧と簡単な状態を知ることができます。
レイヤーはLWのテクスチャエディタのレイヤー構造と同じようなものと考えてください。
リストの項目の意味は
"有効状態(そのレイヤーが有効なら * 、無効で -)":"レイヤー種別(サーフェイスは ○ 、影は ●)":"描画モード"
となっています。

・up、down

選択レイヤーの位置を上下に移動します。

・*、-、I、*/-ボタン

選択レイヤーの効果を一時的に切りたい場合は"*/-"チェックボックスで切り替えます。
リスト内のすべてのレイヤーを操作したい場合は"*"ですべて有効、"-"ですべて無効、"I"で反転させることができます。
ここでの有効、無効はプレビューだけでなレンダリングにも反映されます。

・AddLayer、DelLayerボタン

リストにレイヤーを追加、削除します。
削除は選択レイヤーを消去し、追加はリストの最上段にレイヤーを挿入します。
追加できるレイヤー数に制限はありません。

・Copy、Paste

現在選択されているサーフェイスの設定をコピー、別のサーフェイスにペーストできます。

・LayerType

レイヤーがレンダリングイメージのどの部分に対して効果をかけるのかを設定します。
Surfaceは影が落ちている部分も含めたサーフェイス全体に、Shadowは影が落ちている部分のみに効果があります。

・Color

スライダーかColorボタン(6.x版のみ)によってサーフェイスに与える色を設定します。

・Intensity

効果の強さを設定します。100%以上や負の値も入ります。

・Mode

標準の"AmbientLight"はライト計算を模倣するためサーフェイスのdiffuseが0なら効果が現れません。
しかし、diffuseを設定していてもSuperCelShaderなどの一部のシェーダーを通すとピクセルフィルターで参照できるdiffuseBufferがすべて0にされてしまう現象が発生します。
そのような場合でもLocalAmbientの効果をかけるために特殊な描画モードを設定するのがこのModeで、標準の"AmbientLight"以外に
"Add(加算)","Sub(減算)","Multiply(乗算)","Difference(差の絶対値)" "Screen(スクリーン)","Overlay(オーバーレイ)","Hue(色相)" "Saturation(彩度)","Value(明度)"
があります 、フォトショップ等でお馴染みのレイヤー描画モードと一緒です。
これらのモードにした場合、Intensityのパラメータはフォトショップにおけるレイヤー不透明度と考えてください。

・Input Buffer

Modeが"AmbientLight"以外の場合は効果のかかり具合を各種バッファの濃度からも取得できます。

・None...特になし、Intensityをそのまま使います。
・Alpha...サーフェイスのアルファ値
・Luminous、Diffuse、Specular、Reflective、Transparency...サーフェイスのそれぞれのパラメータ値
・Shading...レンダリングされたスペキュラとディフューズ
・DiffuseShade、SpecularShade...レンダリングされたスペキュラ、ディフューズ
・Shadow...影の強さ
・Geometry...法線の角度
・Depth...深度

それぞれの値にIntensityを掛けたものが効果の強さとなります。

・Invert

そのInputBufferの値を反転して計算します。

・AlphaBuffer

レイヤーに対してアルファマスクを設定することができます。
これを利用することによってサーフェイス上のテクスチャの部分のみ効果がかからないようにしたり、その反対のこともできるようになります。
選択できる項目はInputBufferと同じです。

・AlphaInvert

アルファマスク値を反転して計算します。

・AlphaIntensity

アルファマスクの濃度を変更できます。具体的な利用方法については後述。
 

・ 3 − サーフェイスリスト ・

現在BufferListで選択されているスペシャルバッファ値を持つサーフェイス名の一覧が表示されます。
リストのサーフェイス名をクリックすることでそのサーフェイスのカラーをプレビューに送ることができます。

・ 4 − Import、Export(6.x版のみ) ・

現在選択されているスペシャルバッファ内のすべてのレイヤー情報をファイルに書き出したり、そのファイルを読み込んだりします。
別のシーンに設定をコピーしたい場合等に使用します。

・ 5 − プレビューパネル ・

左上の球が効果をかける前、右下が後になります。
3のサーフェイスリストからサーフェイスを選択することでそのカラーを取得できます。
取得できるのは純粋なサーフェイスカラーのみでテクスチャ、ディフューズなどのパラメータは反映されません。
また、プレビューパネルをクリックすることでカラーピッカーから好きな色を取得することができます。

・プレビュータイプポップアップ

パネル下のポップアップからプレビューに使用する球体の種類を選択できます。

Ball
Cel-Look Ball
Shadow
標準的なシェーディングの球体です。 セルシェーダを適用した状態の球です。 Shadowレイヤーの効果を確認するモードです。
周りの白い部分はサーフェイスカラーが表示され、黒い部分は影が落ちていると考えてください 。

 

4.TIPs

・アルファマスクの利用法

1.たとえば上のようなイメージでピンクのサーフェイスを調整したいとき

color : 255,180,255
intensity : 100%
mode : overlay
2.普通に効果をかけるとテクスチャまで変色してしまいます。

・透明度テクスチャ設定
レイヤー不透明度 : 1%

・LocalAmbient設定
2.の設定に加えて
Alpha Buffer : Transparency
AlphaIntensity : 10000%
AlphaInvert : ON

3.そこでサーフェイスの透明度にテクスチャのアルファマップを設定。
同時にLocalAmbientのレイヤーにもアルファを設定します。

4.これでテクスチャの部分の効果を無くすことができます。

5.LocalAmbientでレイヤーをコピー、AlphaInvertを反転させればテクスチャのみに効果がかかるので別の色でテクスチャも調整できます。

ここでのコツはTransparencyを1%にするのとAlphaIntensityを10000%にすること。
これで見た目のイメージに影響を与えず、LocalAmbient内部では1%を10000%に、つまり100倍してアルファを100%としてテクスチャ部分を抜けるわけです。
SuperCelShaderを使用するとLuminosityとDiffuseがおかしくなるためTransparencyを使用しましたが、通常はLuminosityを使用したほうが良いでしょう。

 

5.履歴

2000/08/16 ver.1.0公開
2000/08/18 ver.1.1
SurfaceList追加

2000/08/25 ver.1.5
・影響指定バッファ追加
・スペシャルバッファリストが狂うバグを修正

2000/08/25 ver.1.51
・効果が掛からないケースがあるバグを修正

2000/09/10 ver.1.6
・AmbientLightの恥ずかしい計算ミスを修正

2000/09/20 ver.1.7
・Shadowタブ追加

2000/10/03 ver.1.8
・プレビュー作り直し

2000/10/05 ver.1.81
・ver.1.51で保存したパラメータを読み取るように修正

2000/10/05 ver.1.82
・ロード方法修正

2000/11/03 ver.1.9
・マルチレイヤー対応、アルファマスク対応
・内部処理、消費メモリの最適化

2000/12/07
・ LightWave6.5対応版追加

2000/12/14
・ LightWave5.6対応版追加

 

6.最後に

このプラグインはフリーウェアです。
このプラグインを実行したことによる、直接、間接的な損害に関しての、 一切の責任は負いかねますのでご了承下さい。

バグ報告などは

D-Creationホームページ:http://webclub.kcom.ne.jp/mb/dhm/

製作者 DHM:dhm@mb.kcom.ne.jp

まで