レイヤー操作


投稿日:2016年12月13日 | 最終更新日:2024年12月2日

レイヤーを操作するコマンドを使って、レイヤー以下のオブジェクトをすべて非表示にしたり、初期状態にしたりすることができます。
レイヤーはレイヤーシートで設定できます。

サンプル

リファレンス

Command 説明 Arg1 Arg2 Arg3 Arg4 Arg5 Arg6
LayerOff 指定のレイヤー上に表示されているオブジェクトをすべて非表示にする レイヤー名 フェード秒
空欄の場合、0.2
LayerReset 指定のレイヤーを初期状態にする
Tweenコマンドなどで変化したレイヤーを元の位置に戻したりするのに使用してください
レイヤー名
または「All」ですべてのレイヤー対象にする
ChangeLayer 指定のオブジェクトのレイヤーを変更する。詳細下記 オブジェクト名 再配置のタイプ レイヤー名 フェード秒
空欄の場合、0.2

ChangeLayer

ChangeLayerは、Arg1で指定したオブジェクトのレイヤーを変更します。
キャララクター表示などですでに表示されているオブジェクトをArg3などでレイヤー名だけ変更する場合は、
いったんすでに表示されているオブジェクトを消して、指定のレイヤーに新しくオブジェクトを作り直しています。
このため、アニメーションなどを継続してレイヤーのみ変えるといったことができません。
なので、その対策としてオブジェクトを残したままレイヤーのみを変更する「ChangeLayer」を作成しました。

再配置のタイプ(Arg2)

Arg2には位置をどう扱うかのタイプを設定できます。

名前 説明
KeepGlobal グローバル座標を保持
見た目の位置は変わりませんが、ローカル座標が変わります。
KeepLocal ローカル座標を保持
ローカル座標を保持します。
ResetLocal ローカル座標をリセット
ローカル座標を初期状態(多くの場合は0,0,0)にリセットします。

空欄の場合は、KeepGlobalとなります。
移動アニメーションはサポートされていませんので、TweenコマンドのMoveToでローカルの0地点に移動するなどしてください。
よく使うようであれば、マクロを作っておくと便利かと思います。
サンプル

注意点

キャラクターやBgは同じレイヤーに一つしか置けないため、
変更先のレイヤーにすでにキャラクターやBgが表示されている場合は自動的にそれをフェードアウトします。
その際のフェード時間はArg6で設定することができます。

レイヤーを扱うその他のコマンド

TweenコマンドShakeコマンドPlayAnimationコマンドはレイヤーを対象にすることができます。
これらのコマンドを使うことで、指定のレイヤー以下にあるオブジェクトを同時に動かすことができます。