🦀

makibishi氏『Rustゲームエンジンbevyでテトリスを作る』を勝手にBevy0.6以降に対応してみた

2022/03/22に公開

※2022/08/17
bevy0.7から0.8では以下の変更あり。

  1. Rustを最新版(たぶん1.62.0以降)にする
  2. 以下の修正を行う
main.rs
+    commands.spawn_bundle(Camera2dBundle::default())
-    commands.spawn_bundle(OrthographicCameraBundle::new_2d())

下術リンク先のソースコードは未修正(0.7)です。


開発言語にRustを採用したゲームエンジンとして頭1つ抜けている感のあるbevy。まだ開発途上で仕様変更も多く、ドキュメントも少ない。しかも日本語の情報はbevy0.4のものがほどんどのようだ。
私が見たチュートリアルではmakibishi氏の『Rustゲームエンジンbevyでテトリスを作る』が中でもっとも丁寧で理解しやすい(しかも日本語)印象なのだが、記事で扱うbevyのバージョンが0.4で、現時点での最新版開発環境(Bevy 0.6.1、Rust2021:1.59.0)ではコンパイルができず、bebyの仕様もそこそこ変わっている。なのでソースコードをbevy0.6に対応させながら読み進めていったのだが、せっかくなのでbevy0.6以降に対応のソースコードを共有しておこうかな、と。

bevy0.6、0.7
https://github.com/maxicarv/follow_bevy_tetris

元記事のステップに合わせてコミットしたので必要あれば参照されたし(不要とは思うが)。修正は機械的に実施したので適切な方法かどうかは保証できない。当方も初心者だし。いくつは補足したほうが良さそうなところもあるが、難しい話しはないはずなので省略。また、こういう場合は元ソースをforkするものなのかもしれないが、修正の催促と思われてはいけないので新たにリポジトリを作成して公開している(ライセンス表記もないしね)。

何かあればコメントで。

Discussion