DynamicAnimation ランダム系テンプレート【RPGツクールMZ&MVプラグイン】

2020年02月20日

 このページはDynamicAnimationプラグイン(MZMV)の解説の一部です。

 ランダム系のテンプレートについて説明します。

目次



ランダム(random)


 対象の周辺で複数回アニメーションを再生します。基本的には対象が単体であることを想定しています。
 以下は『炎/単体2(id = 67)』をスキルに設定した例です。
<D-Animation:random/>


 初期設定だと、5回のアニメーションを対象のサイズに合わせた範囲で表示します。
 『射撃系テンプレート』と同様に様々なアレンジが可能です。
<D-Animation:random>
repeat = 10 // 繰返回数
interval = 2 // 間隔
scaleX = 0.5 // 横幅
scaleY = 0.5 // 縦幅
sx = defaultX + 100 * mirroring // 始点X座標
sy = defaultY - 100 // 始点Y座標
sxRandom = 50 // 始点X座標分散
syRandom = 50 // 始点Y座標分散
</D-Animation>


 射撃系とは異なり、終点や到達フレームの指定は必要ありません。

全ランダム(randomAll)


 対象全体に対して、大量のアニメーションを再生します。
<D-Animation:randomAll/>


 初期設定だと、25回のアニメーションを画面全体の半分に合わせた範囲で表示します。この際、アニメーションの『位置』は強制的に『画面』へと変換されます。

 始点や分散幅を変更したい場合は、上のランダムの場合と同じです。
 defaultX, defaultYを使えば位置が画面になっている場合も考慮してくれます。なお、画面対象のアニメーションの標準位置は全体のプラグインパラメータから設定できます。
 このアニメーションは元々の位置が『足元』なので、Y座標を少し下にずらしたほうが自然に見えるかもしれません。
<D-Animation:randomAll>
sy = defaultY + 50 // 始点Y座標
</D-Animation>

 こんな感じで。

 さて、ここで注意が必要なのは『フラッシュ』と『効果音』の扱いです。
 大量のアニメーションを繰り返して表示する関係上、これらの処理の負荷もそれだけ多くかかります。
 特に『対象のフラッシュ』は極めて重く注意が必要です。
 効果音も『対象のフラッシュ』ほどではありませんが、それなりに重い処理です。というか、連打すると単純に耳が痛いです。

 そのため、この全ランダム型を始めとした大量の繰り返しを行う型には、最初からフラッシュと効果音を制限する設定がされています。
 この型の場合、フラッシュ(画面と対象の両方)はリピート5回に一度、効果音はリピート2回に一度だけ処理されます。

 その設定を変更する場合は以下のように指定します。
<D-Animation:randomAll>
limitFlash = 10 // フラッシュの制限
limitSound = 10 // 効果音の制限
</D-Animation>

 また、0や1なら制限なし。1000などリピート回数より大きな値を設定すると、最初の1回だけ処理されるようになります。

 この型は炎をバラまくだけが用途ではありません。例えば、こんなのはどうでしょう?


 上は『斬撃/エフェクト(id = 7)』の色調を変えただけですが、使い道は盛りだくさんです。なお、武器を振るのは外部のプラグインでやっています。悪しからずです。

円ランダム(randomCircle)


 randomAllの範囲を円形に変化させたものです。
<D-Animation:randomCircle/>


 プラグインパラメータのテンプレートの設定を覗けば分かりますが、中身はわりと複雑な数式が入っています。
 そんな中身を知らずとも使えますが、指定の仕方が特徴的なので注意してください。

 単に範囲となる円半径を変更したい場合は、『sxRandom』の値を変更すればOKです。
 『sxRandom』の値が定まると、それを元に内部の数式で自動的に『syRandom』の値も求まる仕様です。
<D-Animation:randomCircle>
sxRandom = 100 // 始点X座標分散
</D-Animation>

 では、楕円にしたい場合はどうするか?
 『syRandom』の値を直接書き換えるのはNGです。内部の数式が上書きされて、単に『全ランダム』型と同じになるだけです。

 このように書きます。
 ※この記法については、こちらのページで紹介しています。
<D-Animation:randomCircle>
sxRandom = 300 // 始点X座標分散
syRandom *= 0.5 // 始点Y座標分散
</D-Animation>


 長半径が300、短半径が150の横長の楕円です。
 縦長にしたいならば『syRandom *= 2』と記述すればOKです。

雨(rain)


 アニメーションを雨のように大量に降らせます。
<D-Animation:rain>
arrival = 7 // 到達フレーム
scaleX = 0.5 // 横幅
scaleY = 0.5 // 縦幅
</D-Animation>

 この型は到達フレームの指定が可能です。例によって泡を降らせます。


 次はまっすぐではなく斜めに降らせてみましょう。
 まず始点を右に寄せます。終点は始点の真下になっているので、左へ寄せます。mirroringの指定をしておけば、対象がアクターになった場合に反対方向から飛んでくるようになります。
<D-Animation:rain>
arrival = 7 // 到達フレーム
sx += 500 * mirroring // 始点X座標
ex -= 500 * mirroring // 終点X座標

scaleX = 0.5 // 横幅
scaleY = 0.5 // 縦幅
</D-Animation>



 >DynamicAnimationMZプラグインに戻る
 >DynamicAnimationプラグインに戻る
 >RPGツクールMZ&MV目次に戻る
posted by 砂川赳 at 21:09 | RPGツクールMZ&MV | このブログの読者になる | 更新情報をチェックする