2023/7/18(火)

意識的にPCやスマホを閉じてぼーっとする時間を作ったら多少回復した気がする。頭が回るようになった。進捗も出た。


VRChat的なものの開発を進めた。Vulkan関連のコードとこれまでずっと格闘しているのだが、今日はようやく描画処理のコードをその他の処理から切り離すことに成功した。これまで描画処理を変えようとしたらかなり広域のコードを見ないといけなかったので、この分離が出来たのはかなり嬉しい。Vulkanの勉強という意味でも、描画処理を規定するものはなんなのかという部分に見通しがついた。

  • レンダーパスの作成処理
  • パイプラインレイアウトの作成処理
  • パイプラインの作成処理
  • コマンドバッファへの描画コマンドの記録

このあたりが描画処理の決め手であって、他の部分は描画処理によらず共通化できる。オプションでその描画処理特有のデスクリプタセットを定義するか、とかそのくらい。

これまで積み上げてきたものに最後の一押しを入れられた感じだ。大変良かった。


今週の胎界主を読んだ。レックスかなり手の内見せとる。こんな自由に地獄の穴使えるんか。ヒュラスのとき結構前フリある感じで出てきてたからもうちょっと遅い動きでしか開けないものかと思っていた。おそらくソロモンヘイムに限った移動手段なんだろうけどかなりの無法。

「そこまで鈍ってねぇようだな」とは意外と好意的(?)。そういえば今のところレックスからの今のルーサーの評価はまだ明確には言われてないんだよな。単に翔への責任を果たすために生かしてるのか、それとも見込みがあると思っているのか気になる。


「ゲームエンジンアーキテクチャ」を読み進めた。読み進めたというか、前から順に読んでいるのではなく目次を見て面白そうな部分からざっくばらんに読んでいる。

メモリキャッシュが上手く働くように関数を局所化するというのは目から鱗だった。言われてみれば当たり前なのだが。あっちからこっちへジャンプするようだとキャッシュミスが起こりやすくなるので、速度が求められるところでは関数を記述する場所を近づけるか、もしくはそもそも関数に分けないべきだという。こういう低レベルな最適化の解説はなかなか美味しい。

ゲームエンジンアーキテクチャの勉強を進めていくと、あの要所要所にクソな点があるUnityも大体の大枠部分としては真面目にやるべきことをやっているということが分かる。

Categories: