ユニバーサルトランジションをサポートしてみた

jgame.jsでユニバーサルトランジションをサポートしてみた。
なんか結構ブログ書いてるなと思いつつ。


ユニバーサルトランジションっていうのは、吉里吉里/KAGっていうアドベンチャーゲームエンジンがサポートしているエフェクト。
ぱっと調べた限りここがアニメGIFがあって一番わかりやすい。
http://homepage1.nifty.com/gutchie/kirikiri_kag3/dev_transition002.html


要は、こういうルール画像を用意して、

このルール画像の黒い部分から白い部分にかけてエフェクトしていくものですわ。

jgame.jsでの実装の様子

まあ例によってこの手のフィルタ処理はgetImageData -> ピクセル操作 -> putImageDataになるので遅いけど。
シーン切り替えの様子。画像がしょぼい。
http://tsuge.sub.jp/jgame.js/dev/2.0/effect-universal.html


このエフェクトを実装すると、どうにもアドベンチャーゲームっぽいのが作れそうな気がして仕方ないので、switch(index)っていう誰かに怒られそうなくそコードだけど、簡単にアドベンチャーゲームっぽくしたサンプルも作ってみた。
http://tsuge.sub.jp/jgame.js/dev/2.0/effect-entity-universal.html
ちなみにこの女の子はキャラクターなんとか機によるもの。


実装の中身だけど、画像の色情報を元に適用対象のアルファ値をいじっているだけ。
すごくお手軽に実装出来るエフェクトの割に汎用性が高いので重宝する。


これをはじめて知ったのは吉里吉里じゃなくてRPGツクールで、そのRPGツクールが手元にあれば動き見て以前エフェクトをサポートした段階でやってたんだけど、RPGツクールなかったしエフェクトの名前も知らなかったので、棚上げになってた。
なんかの調査で吉里吉里を調べたら吉里吉里もサポートしてたので、ついでに参考にして作らせてもらったというのが前後関係ですな。


ちなみに吉里吉里はもうちょっと機能がよくて、vagueっていうパラメータで同じルール画像でも異なるエフェクトに見せる事が出来たりするけど、vagueの仕様はようわからんかったので見送り。
仕様わかれば作ってもいいんだけど、必要なのこれ?正直よくわからんかったり。

アドベンチャーゲームのサポートについて

アドベンチャーゲームHTML5でサポートするのは、別にいいんだけど、でかい画像をダウンロードしまくって実行するっていうのはちょっと重すぎるかなと懸念しとる。
少なくとも俺のいるベトナムで、480x480の画像50枚とかダウンロードするゲームはきつすぎるからなぁ。


スマフォが対象で、アプリにしてアプリ内にファイル同梱するという、ダウンロード実行する想定だったらいいかもだけど、ダウンロードすると今度はデータ保存先とか別の問題も出る。
エフェクトも重いから電池消耗激しそうだし。
出来なくもないけど推奨出来る状態ではないってのが現在位置かと思われる。


ぱっと考えると簡単なアドベンチャーゲーム実行エンジンはすぐかけそうだから、需要あるならやってもいいんだが、需要あるかどうかわからんのよね。
クリエイターサイドからすると、正直微妙なんじゃないのと思うけど、どうなんでしょ。
エロゲーのスマフォ進出とかは審査が厳しくてなかなか難しいのかな。
アンテナ低くてようわからんなぁ。