【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で組み合わせると使えるショートカット増えそうです。

【Unity】TimelineのUndo処理

何かしらClipを操作するEditor拡張を作る場合に変更を取り消したい場合があるかと思います。 その場合、Undo処理を実装すれば Command + Z で簡単に戻すことができます。

UndoExtensions

通常のEditor拡張ですがUndoクラスを使うのですが、Timeline周りではUndoExtensionsに色々と便利な処理が準備されています。

docs.unity3d.com

例えば、clipの場合には UndoExtensions.RegisterClip を利用します。 clipを操作する「何かしらの処理」の前に呼びます。

UndoExtensions.RegisterClip(clip,"Edit clip");

// 何かしらの処理

TrackやMakerにも専用の関数が用意されています。

東京競馬場へ行ってきました - フローラS

コロナの影響で、事前に抽選を通らないといけなくなったため、今回は11月以来の来場でした。

天気は余り良くなく、午後はずっと雨が降っていました。 競馬場へ行く目的は写真を取ることなので、濡れても大丈夫なように装備(カッパなど)はしっかりと整えてきています。

コロナ対策でマス目が引かれている

写真など

写真撮影位置は、ゴール板から少し手前の場所です。 ゴールから大体200m手前付近から写真を取り始めます。

フローラSを勝ったエリカヴィータ
ゴール前付近は、報道陣のカメラマンがいるため邪魔になり上手く移せない場合があります。 またゴール過ぎあたりでは自分の手元のレンズでは大きく写すのが難しいです(大きく撮れても、騎手が手綱を緩めて真剣に走っていないことが多い)
ボーデンはまた2着

ちょうど目の前
ゴール手前300mくらい。ここだと写真取るのには遠い
ダートはそもそも遠いので目の前でこれくらいの大きさ

武豊

武豊騎手のファンなので勝ってほしかったが、最高で3着だった......

蛯名調教師

今年から調教師の蛯名元騎手。

佐々木朗希投手の連続完全試合のかかった試合を観てきました!

約7年ぶりの千葉マリンスタジアム。 チケットは1ヶ月前くらいに取っていたのですが、何かのめぐり合わせか佐々木朗希投手の連続完全試合なるかどうかの試合になってました。

天気は余り良くなかった

コロナで海浜幕張駅で降りるのも2年以上空いていました。 この日はチケット完売ということで、どこもかしこも人だらけ。 毎回球場に行くと何かしら記念グッツを買うのですが、この日はそれどころではありませんでした。

球場前では、ちょうど1週間前に達成された佐々木朗希投手のイベントをしてました。

完全試合の記念パネル

記念の新聞?

今回は初めて一眼レフカメラを持ってきましたが、自分が持っているレンズでは余り大きくれませんでした。(席が4階席というのもありましたが)

話題のBIGBOSSも撮れました。

BIGBOSS監督

感想

試合の結果はご存知の方多いかもしれませんが、終盤まで緊張感のあるゲームでした。 この日はとても寒くなる予想で、ダウンジャケットを着ていったのですが、現地は全然寒くなく荷物になっただけだったのが唯一の残念な点でした。

【Unity】SessionStateで値を保存する

SessionStateはエディタ起動時のみ値を保持する仕組みです。 エディタ拡張時、SerializeFieldなどで保持しなくても良い重要度の低い値を保存するときに便利に使えます。

保存

保存するKeyを定義します。 これは取得する際に必要になります。

string key = "Save_Key";
bool isHoge = false;
SessionState.SetBool(key, isHoge);

取得

Keyを使って取得します。 第2引数はデフォルトの値になります。

var isHoge =  SessionState.GetBool(key, false);

種類

上記ではBoolを使いましたが、次の種類の型に対応をしています。

  • Bool
  • Float
  • Int
  • Array
  • String
  • Vector3

【Unity】Presetを使ってコンポーネントの設定の自動化を行う

Unityの機能にPresetと呼ばれる機能があります。

docs.unity3d.com

プリセットは特定のコンポーネントの設定を保存して、それを同じコンポーネントで使うことができます。

プリセットの保存

例としてImageコンポーネントの「Raycast Target」を外したプリセットを作ってみます。

適当にImageコンポーネントをアタッチして、Raycast TargetをOffにします。

f:id:albatrus:20220112142108p:plain
ImageのRaycast Targetを外す

コンポーネントの左上に上下矢印ボタンがあります。

f:id:albatrus:20220112142233p:plain
真ん中

Save Current to...を押すとプリセットが作成されます。

f:id:albatrus:20220112142623p:plain
Save Current to...

プリセットを利用する

プリセットを利用する場合、上下矢印ボタンを押して、対象のプリセットを選択します。

f:id:albatrus:20220112143436p:plain
プリセットを利用する

自動設定をする

プリセットの設定で「Add to image default」を押せば、該当のプリセットをデフォルト設定にすることができます。

f:id:albatrus:20220112143611p:plain
デフォルト設定

【2021年】多摩動物園へ行ってきました

数年前から「12月に動物園へ行く」という謎のルーティンを自分に架しているのですが、去年はコロナの影響で行くことができず、2年ぶりに動物園へ行ってきました。

ライオン

多摩動物園は4年ぶりで、その時に工事をしていたライオン周りのエリアが完成していました。

f:id:albatrus:20211223100736j:plain
ライオン

本当はライオンバスに乗りたかったのですが、近くの小学生の子たちが占拠をしていたので諦めました。 ただ、寝ているライオンが多かったので思ったような写真とれなさそうでしたので無理に乗らなくて良かった気がしてます。

サーバル

けものフレンズで有名なサーバル。 毛づくろいをしていて、余り動いてなかったです。

f:id:albatrus:20211223101456j:plain
サーバルちゃん

アフリカゾウ

2頭外に出ていました。 前回来たときもいたのですが、どちらも見た目結構年をとっていそうでした。

f:id:albatrus:20211223102258j:plain
アフリカゾウ

チンパンジー

チンパンジーの子供。 親と思われる個体と鉢塚(人工)をなめてました。

f:id:albatrus:20211223103745j:plain
チンパンジー

1匹だけ群れと離れていたやつ。 結構ワイルドな見た目をしています。

f:id:albatrus:20211223103823j:plain
チンパンジー2

カンガルー

完全に日光浴びてくつろいでいる。

f:id:albatrus:20211223110022j:plain
カンガルー

トラ

2つの檻に1匹づついましたが、かなり大きく迫力ありました。 人間慣れしているのかすぐ近くまで来てくれて、周りの子供たちが騒いでました。

f:id:albatrus:20211223112147j:plain
トラ

ユキヒョウ

写真撮影をしている多摩動物園に詳しい人が勝手に解説をしていました。 ユキヒョウはローテーションで一頭づつ檻から出てくるシステムみたいです。

f:id:albatrus:20211223113047j:plain
檻から出てくるユキヒョウ

レッサーパンダ

日光の関係でリムライト風なレッサーパンダ。 寝ているやつが多くて、この個体だけ動いてました。

f:id:albatrus:20211223113414j:plain
リムライトなレッサーパンダ

サイ

サイのエリアが新しくなってました。 重厚な肌の質感がカメラ越しでもはっきり見えます。 サイだけではないのですが、巨大生物を見るととてもテンションが上りますね。

f:id:albatrus:20211223114949j:plain
サイ

最後に

以前に少し話題になっった女王アリが死んだコロニーはすでに撤収されていて見れなかったのが残念でした。 www.tokyo-zoo.net

新しいエリアが増えてきれいになっていました。それに伴い動物も見やすくなっている気がします。 ほとんどが家族(子供)連れでしたが、平日なので全然人がいなかったのでとても良かったです。