【Unity】Timeline用のショートカットを実装する

Timelineで何かしらショートカットを登録したい場合、専用の属性(TimelineShortcutAttribute) がありますのでこれを利用すると簡単に実装できます。

docs.unity3d.com

 [TimelineShortcut("Custom Shortcut", KeyCode.RightArrow, ShortcutModifiers.Shift)]
public static void CustomShortcut(ShortcutArguments args)
{
}

属性の設定

この属性には次の3つの指定ができます。

  • ID : このショートカットのID、好きに命名して良い
  • Defaultkey : 適切なKeyCodeを設定
  • ShortcutModifiers : AltやShiftなどKeyCodeと組み合わせるKeyがあれば指定する。

上記のコード例では 「Shift + →」のショートカットになります。

ShortcutArguments

付属情報としてShortcutArgumentsが渡ってきます。もし必要ならこちらを使います。

  • object : TimelineWindow
  • ShortcutStage : Endが帰ってくる?

注意

いざショートカットを使うと、次のWindowが出れば重複していることがわかります。

既存のショートカットとの重複警告

すでにTimelineではデフォルトでショートカットが登録されています。

これはUnity => Shortcutsで確認ができます。

categoryをTimelineに合わせて、空いているショートカットがないか探しましょう。 ShortcutModifiersで組み合わせると使えるショートカット増えそうです。