レイヤー操作


レイヤー(キャンバス)を操作するコマンド
宴Version3以上が必須

Tweenアニメーションをレイヤー単位でかけたり、レイヤー以下のオブジェクトをすべて非表示にすることができます。
レイヤーはレイヤーシートで設定できます。

サンプル

リファレンス

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

レイヤーを操作するその他のコマンド

TweenコマンドShakeコマンドPlayAnimationコマンドはレイヤーを対象にすることができます。

レイヤーとキャンバス

宴3から、レイヤーは実質uGUIのCanvasと同じです
さらに、UnityにはLayerMaskという「カメラの描画対象のタグ」としてのレイヤーの概念があるので、
レイヤーではなく「キャンバス」と呼ぶべきだったかもしれません。
あえてレイヤーとしているのは、2Dゲームにおけるレイヤーのイメージとしての「一定の描画階層・位置を持つ描画グループ」の意味で作ってしまったため、その名前のままになっています。
混乱をさせてしまうかもしれせんが、宴で使っているレイヤーの意味はこのようになっていますのでご注意ください。

ChangeLayer

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

再配置のタイプ(Arg2)

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

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

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

注意点

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