概要
先日(2022年7月30日)、RustのゲームエンジンBevyの新バージョンBevy 0.8がリリースされた。
移行ガイド等はリンク先にあり、多くの変更があったことがわかるが、そこで触れられていないことで少し嬉しい副作用があったので記録しておく。
依存クレートglamのバージョンアップ
Bevyが依存しているbevy_math
0.7の依存クレートはこのようになっていた。
変更として、bevy_reflectというクレートが削除されているが、今回主眼に置くのはglamの依存バージョン変更である。
glamはゲームやグラフィクス向けの優れた数学ライブラリである。
Bevyはベクトルを扱う機能等をglamに依存して計算を行い、開発者もglamで定義されている機能を用いてUI構築等をできるようになっている。
主な機能を解説してくれている記事はこちらだが、ここで解説されているものの一部はglamのバージョン0.21から追加されたものであり、Bevy 0.7では使うことができなかった。
今回のバージョンアップでこれらが使用可能になった。
特にベクトルの回転を行う.rotate()
メソッドが使用可能になったのはとても便利(このメソッド自体は微妙に分かりづらい仕様なのでドキュメントを読むことを推奨する)。
最後に
Bevy 0.8は0.7のリリースから3ヶ月程度しか空かなかった割に大きめの変更が多く、カメラのような根幹の機能にも手が加わっている(UIカメラが削除されている)。
その中で依存ライブラリのバージョンアップによる機能追加がされているのが興味深かったため簡単な記事として残した。
大した記事ではないが、私はまだRust自体にもBevyにも誤解がしている点が多いと思われるのでなにかおかしかったら教えていただきたい。