2ntブログ

mugenで狂キャラを作ってみたい貴方へ送る【演出の記述】

狂キャラのススメ

引き続き演出の話。
エフェクトアニメーション使わないでどうやって演出なんて作るんだYO!
という声にお答えする記事にします。

まずはヘルパー演出、Explod演出、Proj演出の3通りについて。

ヘルパー演出は色々と融通が効きます。
演出自体がステートを読めるので複雑な移動を可能にするし、
何よりもエフェクトの回転が可能というのが他にない利点です。
しかしヘルパー枠を圧迫すること、処理能力が重くなることの2点の欠点により、
あんまり多用するべきではない演出と言えます。

Explod演出は、Explodを用いた演出で、
ヘルパーと違って何十何百と出しても特に問題のない演出ですが、
複雑な移動と回転が不可能という大きなデメリットがあります。
実は拡大縮小はModifyExplodを使えば可能だし、
ownpalを0にすることで色を変えることはできます。個別には無理ですが…。

Proj演出は、使ってる人自分以外に見たことない演出です。
Explodは複雑な処理ができないため、山なりに飛んでも地面にぶつかったりできません。
一方でProjectileは、画面のどこどこに移動したら消えるという設定が可能で、
さらに消える時にアニメーションを変えるという設定も可能です。
そのため、大量の液体が跳んで地面に跳ねる挙動を作るのはProjが一番向いてるんですね。
デメリットはProjはProjなので、相手AIが攻撃だと思って警戒しちゃったりすることです。
ガード距離はしっかり0に設定することを忘れないように。
着地する演出専用なので、そうでないならExplodでいいです。

3者3様ですが、どれも甲乙つけがたく、
1つのヘルパーで多数のExplodを管理するのが最もいいんじゃないでしょうか。

次は加算処理と減算処理について。

ステートコントローラー Trans 等で指定できるものです。
addは加算処理です。そのアニメのRGB数値を、実値でなく加算する効果です。
例えば128,128,128のグレー色の背景に、256,128,0のオレンジ色演出を加算処理化すると、
256(384),256,128で黄色っぽく表示されます。
addは発光して見えます。かなり色んな演出に使われてる基本的なものです。

subは減算処理です。addの逆で、256,128,0のオレンジ色背景を減算処理化すると、
-256,-128,-0となり、オレンジとは真逆の水色として表示されます。
元々の色がより明るいほど引かれ、影のようになるという性質がありますね。
あんまり使われてる所を見ませんが実は優秀。

一つ重要なのは、addの加算処理は、背景が明るければ明るいほど
見えにくくなってしまいますし、subはその逆で背景が黒いと見えません。
mugenデフォルトのKFMステージでは綺麗に見えるのに、
他では眩しくて何やってんだかわからなくなっちゃったみたいなことが起こるんですね。

BGPalFxなどで背景の色をコントロールしたり、
add演出とsub演出を組み合わせて影を作ったりすることで、
エフェクトをコントロールするといいでしょう。

airファイルの中でも加算か減算かの処理を指定できるので、
これを使ってexplodの表示を綺麗にしましょう。
ownpalとPalFxの組み合わせで表現はかなり広がります。

次はオーラや残像の表現について。

私が最近よく使ってるものだと、オーラはヘルパーを使うのが一番かなと。
ヘルパーのステートに
[State 1]
type = ChangeAnim
trigger1 = 1
value = root,Anim
elem = root,AnimElemNo(0)
ignorehitpause = 1
このように記述すると、本体のアニメと全く同一のアニメをするようになります。
これをBindtorootで本体に張り付けると、本体と完全に重なって表示されますよね。

このヘルパーの表示優先度を本体よりも前にしつつ、透過処理を施すと、
キャラクターがボヤけたような見た目になります。一つの選択肢ですね。
表示優先度を本体よりも後ろにしつつ、PalFxで色を変えると、
キャラを覆ってるオーラのようになります。これも一つの選択肢ですね。

これは記述の関係上、ヘルパーアーマーと兼用できるので、
ヘルパーの消費を抑えたい場合にも使えると思います。
本体のステートが奪われた時のことを考えると、
gametime式で本体のステート判断をしつつ、奪われてる時は表示しないようにしとくといいですね。

残像表現はAfterImageというmugenデフォルトのステコンを使うのが一般的ですが、
これ自体はいくらか問題を抱えている残念ステコンなのでやめたほうがいいと思います。
何がクソってまず赤色の補正が効かないバグが一番クソ。
でも技に残像を付けたいとかであれば全然問題ないんですが、
狂キャラっぽく常時残像みたいにしたいなら一工夫したほうがいいです。

先ほどの、本体アニメと同期するヘルパーを用いるのはここでも有効で、
AfterImageの条件をtime=0とすればとりあえず残像がリセットされることがなくなりますね。

もし残像を赤くしたいなら、その時はちょっと面倒なことが必要になります。
一度全アニメーションの全コマを、1枚1枚別々のアニメとして登録します。
それをヘルパーがExplodで毎フレーム表示するのです。
ownpalを0にして、ヘルパーは自身をPalfxで赤く染めればExplodも赤く染まります。
力技ですが、確実な残像表現になることは確かです。
内容自体は昔神キャラで見た本体表示Explod化と大体同じです。

私が作った韋駄天狗の残像表現は、全mugenキャラを通しても類を見ないものだと思います。
Explod残像表現を、1Fの間に何度も読み込ませ、瞬時に閃光のような残像を残すというものです。
1Fをより細分化することを目的として作った演出なので、
1Fの間にしたいことがないキャラならこんなん作る必要性が皆無ですね。

Afterimageにもaddやsubの項目があるんですが、
sub指定で残像を作れば黒くはなりますが赤くすることはできます。
覚えておいて損はないと思います。

次は演算での演出について。

Explodは複雑な移動はできませんが、Explod自身はできないだけで、
Explodを表示する側はExplodをどこに映すかを複雑な形で指定できます。
例えば首塚小町は、技によっては円形に炎のExplodを配置し、
その中で減算処理をしたExplodで文字を描くということしてますね。
ポルターガイストや栄魔雀はExplodを用いて、画面外から集まってきて回る、
という表現しています。
これらはExplodの残留時間を1Fだけにして、毎F表示することで表現しています。
円形に動くものを表現したいなら、適当にコピペしても使える記述は以下の通りです。
x = 円の半径 *cos(( 表示したい角度 )*Pi/180)
y = 円の半径 *sin(( 表示したい角度 )*Pi/180)
時間の経過で回っていくものが作りたいなら、表示したい角度の所にtimeとかgametimeとか書いとけばいいです。

私の使ってる演出は大体これらを掛け合わせて作ってるものです。
演出に悩んだナァって時は、1枚のエフェクトアニメーションでどうこうしようとせずに
複数使うことも視野にいれるといいと思います。

コメント

コメントの投稿

管理者にだけ表示を許可する

トラックバック


この記事にトラックバックする(FC2ブログユーザー)