Skip to content

thiramisu/ymm4-plugin-general-in-out

Repository files navigation

「登場退場(汎用)」エフェクト・図形プラグイン

.NET License Release ロゴ

Tips

アイテムの1つ上のレイヤーに、1レイヤーのみを範囲とした「グループ制御」を追加し、それに対してエフェクトを適用することをオススメします。
若干無理のある実装の影響により、中間点が本体と時間軸の異なる登場退場で共有された状態になるので、それを回避するためです。
(中間点を使用しない場合に限り、直接適用しても問題なく動作します)

概要

このプラグインは、汎用的な登場・退場アニメーションをするための図形・エフェクトプラグインです。以下の2つが含まれます。

  • エフェクト「登場退場(汎用)」
    メインです。
    子エフェクトに設定されたアニメーションの効果時間を、アイテム全体の長さから、設定した時間に圧縮します。
  • 図形「登場退場アニメーション図形」
    おまけです。
    中間点に関して以下の制約があるので、あまり使い勝手は良くないと思います。
    • 制約:
      この図形に対して中間点を用いた通常のアニメーションを設定することはできません。
      それを行いたい場合はこの図形を使わず、デフォルトのままの図形に対して手動で設定を行ってください。

できること

以下の際の設定の手間を削減できます。

  • 登場のアニメーションと同じアニメーションを退場時にも適用する。
  • エフェクトごとに異なるタイミングで登場/退場アニメーションを再生する。

このプラグインは名前の割にできることは多くありません。
なぜなら、頑張ればデフォルトの機能で実現可能なことしかやっていないためです。
以下はデフォルトの機能で登場退場させる場合の手順です。

  • 移動・回転・拡大などなら、そもそも「移動しながら登場退場」などのエフェクトがデフォルトで用意されています。
  • 登場か退場のどちらかだけなら、範囲1レイヤーのグループ制御を用いれば実現できます。
    (ここまではデフォルトの機能を使った方がむしろ簡単に実現できます)
  • アニメーションが直線移動の(あるいは登場退場でInとOutを反転しなくてよい)場合、上の手順 + 値をコピペすれば登場退場の両方を実行できます。
  • 登場退場でInとOutを反転させたい場合でも、エフェクトを複製して値をコピペすればできます。
  • エフェクトごとに異なるタイミングでアニメーションさせたい場合、その分だけグループ制御を作成すれば実現できます。

なので、これらを踏まえると「手間を減らす」のがこのプラグインの本質です。

応用的な使い方として、登場退場関係なしに、中間点を利用しない一度きりのアニメーションをレイヤーを分けることなくいくつも登録できたりはします。

インストール方法

YMM4内の[ツール]>[プラグインポータル]をご利用ください。
または、以下の手順で、手動でのインストールもできます。

設定項目

  • 登場:
    登場アニメーションを何秒かけて行うかを設定します。
    0にすると瞬間移動相当になります。
    これと登場前遅延の両方が0だと、登場アニメーションが無効になります。

  • 退場:
    退場アニメーションを何秒かけて行うかを設定します。
    0にすると瞬間移動相当になります。
    これと退場後遅延の両方が0だと、退場アニメーションが無効になります。

  • 登場前遅延:
    アイテムが表示されてから登場アニメーションが始まるまでの時間を設定します。

  • 退場後遅延:
    退場アニメーションが終わってからアイテムが非表示になるまでの時間を設定します。
    大きくするほど登場側に寄っていきます(登場前遅延との対称性を優先した仕様になっています)。

  • (実験的機能)精度を高める:
    基本的にはOffでも気にならないと思います。
    Onにすると、仕様上発生する(アイテムの長さが短いほど大きくなる)アニメーション中の誤差がほぼ0になります。
    ただし、以下の場合はOffにしてください。

    • 中間点を使用する場合
    • その他、何か問題が発生した場合

    一応、細かい動作に関しては『「精度を高める」オプションについて』に記載しています。

  • エフェクト定義:
    エフェクト内のアニメーションの種類を「直線移動」や「緩急1」などに変えるとアニメーションできます。
    ただし、1つ目のスライダーが「登場前遅延中~登場アニメーションの開始時」および「退場アニメーションの終了時~退場後遅延中」の値、
    最後のスライダーが「登場時アニメーションの終了時~通常時~退場アニメーションの開始時」の値を表すことに注意してください。

実装の雰囲気解説

影響下にある図形やエフェクトに偽りの現在時刻を渡して描画を行わせます。

  • 登場前遅延中:
    始まりの時間で一時停止
  • 登場アニメーション中:
    始まりから終わりまで早送りする
  • 通常時:
    終わりの時間で一時停止
  • 退場アニメーション中:
    終わりから始まりまで逆再生で早送りする
  • 退場後遅延中:
    始まりの時間で一時停止

免責事項

本プラグインの使用によって生じたいかなる損害・トラブルについても、
作者は一切の責任を負いません。
ご利用は自己責任でお願いいたします。

作者情報・連絡先

なにかありましたら、以下までご連絡ください。
X:@tiramisu_oTATo

ライセンス

このプラグインのソースは MIT ライセンスのもとで公開されています。
詳細は LICENSE.txt をご確認ください。

謝辞

このプラグイン制作にあたり、以下のプラグインのアイデア・実装を参考にしました。

更新履歴

  • v1.1.1 (2025-11-06)
    登場退場アニメーション図形で元に戻す・やり直しが上手くいかないバグを修正
  • v1.1.0 (2025-11-03)
    YMM4本体のv4.46.0.0付近のアップデートによる内部APIの変更に対応
    本体のバージョンがそれ以前のものを使用している場合、このアップデートはせず、v1.0.2を使用してください。
  • v1.0.2 (2025-10-31)
    内部処理の最適化
  • v1.0.1 (2025-10-24)
    UIと説明を微調整
  • v1.0.0 (2025-10-23)
    初回リリース

About

汎用的な登場・退場アニメーションを実現するための、YMM4のエフェクト・図形プラグイン。

Topics

Resources

License

Stars

Watchers

Forks

Contributors

Languages