なが月・21日目

21日目

帰宅後から開始。

AfterEffectsで背景アニメーションを作る(https://helpx.adobe.com/after-effects/how-to/create-animated-background.html)チュートリアルは動画ファイルがないからか練習素材が2MBで小ささに驚いてしまった。チェッカー模様を一列だけ表示し、引き延ばして縞模様にするというのはささやかなノウハウだが手間が省けそうだ。レイヤーの位置ではなくチェッカーのアンカーポイント(模様の繰り返しの起点)を動かしてキーフレームを打つことで無限にループさせることができる。またセルパターンエフェクトをサイクル周期オンの状態で適用することでループするランダムな模様が作れる。

VR制作では今まで車のエンジン音がフリー素材のアイドリング音だけでリアリティに欠けていたので、Standard Assetの車の走行音を調査した。

アルバイトではカスタムgetterの定義を行った。

今まではプロパティの値をそのままgetして返す素直なアクセサを通じてViewから参照していたが、場合によって別のequivalentな亜種プロパティの値をgetしてきてほしいケースが生じた。

しかしViewテンプレートにはアクセサメソッドの名前を静的に書くしかない。出し分けのためだけにもう一つテンプレートを作成するのは良くない方法だった。しかも参照する亜種プロパティはその2つだけではなく将来的には何十種類にもなり得た(多分ならないだろうが)。

そのため既存ケースでの挙動を維持しつつ、亜種もgetできるよう、参照したい亜種を指し示す(省略可能な)引数を取るgetterメソッドに書き換えた。単なるpublic GetX { return _x; }ではプロパティ代入事故防止という防衛的な意義しか認識できなかったが、今回単一のメソッドのままで取得するプロパティを切り替える必要が生じたことでプロパティの代わりにメソッドを使う積極的な理由を見つけることができた。