シェーダーフィルター シェーダーフィルターによる視覚エフェクトを実装します – SAN_ShaderFilter.js
- タイトル
- シェーダーフィルター シェーダーフィルターによる視覚エフェクトを実装します
- 作者名
- サンシロ様
- ヘルプ
- ■概要
シェーダーフィルターによる視覚エフェクトを実装します。
これはGLSLで記述されたシェーダーコードを外部ファイルから読み込んで
ゲーム画面に視覚エフェクトとして反映させるプラグインです。
なお、このプラグインは
シェーダーフィルターシステムのコアプラグインとして機能します。
実際に視覚エフェクトを表示するためには
このプラグインに加えてサブプラグインが必要です。
■GLSLシェーダーコード外部ファイル
このプラグインは外部ファイルに記述されたGLSLシェーダーコードを使用します。
GLSLシェーダーコードは「glslフォルダ」内に配置されます。
「glslフォルダ」を削除したりしないよう注意してください。
■基本的な構造
各スプライトはゲームオブジェクトを監視しています。
このプラグインではゲームオブジェクトのフィルターパラメーターマップに
フィルターパラメーターオブジェクトが登録されると
それを監視しているスプライトが自身にフィルターを生成して
ゲーム画面表示に視覚エフェクトとして反映させます。
つまりゲームオブジェクトにフィルターパラメーターオブジェクトを登録すれば
視覚エフェクトを表示させることができます。
以下、説明のため次のように呼び変えます。
フィルターパラメーターマップ → パラメーターマップ
フィルターパラメーターオブジェクト → パラメーター
■基本的な使い方
次の手順で使用します。
・パラメーターマップへの操作
・パラメーターの作成と設定
・パラメーターの取得
・パラメーターの削除
・エフェクトの操作
・フィルターの種類による
フェードイン・フェードアウトなどの操作のことです。
パラメーターの処理を呼び出すことで操作します。
具体的には各サブプラグインのヘルプを参照してください。
■パラメーターマップの操作
パラメーターマップはゲームオブジェクトがパラメーターを保持するための
キーと値で構成されるデータ構造です。
パラメーターマップにパラメーターを登録すると
スプライトが自身にフィルターを生成して画面に反映します。
・パラメーターの作成と登録:set()
ゲームオブジェクトのパラメーターマップに
フィルターIDとパラメーターを設定することで
フィルタに用いる各設定値を登録します。
例:
$gameScreen.glslFilterParamMap().set(
'filterId', フィルターID
new GLSLFilterParam() フィルターパラメーター
);
・パラメーターの取得:get()
ゲームオブジェクトのパラメーターマップから
フィルターIDを指定してパラメーターを取得できます。
例:
$gameScreen.glslFilterParamMap().get(
'filterId' フィルターID
);
・パラメーターの削除:delete()
ゲームオブジェクトのパラメーターマップから
フィルターIDを指定してパラメーターを削除します。
例:
$gameScreen.glslFilterParamMap().delete(
'filterId' フィルターID
);
■エフェクトの操作
パラメーターを操作することで
エフェクトの表示状態を制御できます。
具体的には各サブプラグインのヘルプを参照してください。
■ゲームオブジェクトとスプライトの対応
フィルターパラメーターマップを持つゲームオブジェクトおよび
対応するスプライトは以下の通りです。
・Game_Screen : Spriteset_Base
・Game_Character : Sprite_Character
・Game_Picture : Sprite_Picture
・Game_Battler : Sprite_Battler
■利用規約
MITライセンスのもと、商用利用、改変、再配布が可能です。
ただし冒頭のコメントは削除や改変をしないでください。
これを利用したことによるいかなる損害にも作者は責任を負いません。
サポートは期待しないでください><。 - パラメータ
-
( なし ) - ライセンス表記
- MITライセンスのもと、商用利用、改変、再配布が可能です。
ただし冒頭のコメントは削除や改変をしないでください。
これを利用したことによるいかなる損害にも作者は責任を負いません。
Copyright (c) 2018 Sanshiro
Released under the MIT license
http://opensource.org/licenses/mit-license.php