VRエンジン作成日記

ひたすらVRエンジンを作っていきます

実行速度を最適化した2

今日も実行速度を最適化していた。1回計算すれば使いまわせる行列が1フレームに何度も作られていたりとか、無駄のある箇所を削ったりしていた。簡単な最適化を入れたつもりでも、コードの読みやすさが劇的に下がってしまう。メンテナンス性とバランスを取る方法を考えるか、いったん最適化を外しても良いかもしれない。

また、計算中に一時的に作られるベクトル等を固定の配列から借りてくる方法も入れようと考えたんだけど、都合の悪いケースもありそうで、この方法は使いどころが難しそうだ。一時的に使うだけの領域を確保するためにnewを呼んでいると、後々GCの処理負荷として時間差で負荷が効いてきてしまう。工夫しようにも、すぐに思い浮かぶような解決策では、問題も思い浮かんでしまって組み込みにくい。

あと、ゲーム3D数学という本を読み始めた。初版本のせいか、書き間違いが多く含まれているように見える。僕の読み間違いの可能性もあるけど。

実例で学ぶゲーム3D数学

実例で学ぶゲーム3D数学

 

 ・関連するコミット

optimize speed · hikipuro/tea.js@dda5869 · GitHub