🔥

[Flutter×FLAME] 2Dゲームのチュートリアルを触れてみた

2022/04/26に公開約1,700字

FLAMEとは

2Dゲームエンジン
altテキスト

https://pub.dev/packages/flame

いきなりですが、現状FLAMEを使うことはあまりオススメしない

これは私個人の意見なので、聞き流す程度で良いです。
公式のドキュメントは最新バージョンで紹介されていたのですが、チュートリアルの内容がソリティアでした。
私は2DのRPGを作りたかったので、ここで公式ドキュメントは読まずスルー。

オススメしない理由
・バージョンによって全くコードの記述方法が違う。

使用しても良いと思う理由
・バージョン1.0.0-rc8移行からNull Safety対応のため。

それでもやっぱり作りたい!

あれだけ言っておいて、やっぱりゲーム作りたいですよね!
バージョン1.0.0-rc8移行からNull Safety対応のため、Dartでのコード管理は全く問題ないと思います。何かサンプリアプリから派生して行くのが良さそうです。

下記コードの環境

sdk: ">=2.16.1 <3.0.0"
flame: 1.0.0-releasecandidate.15 //最新バージョンではない
tiledjsonreader: 1.0.4

今回のサンプルコード

https://www.raywenderlich.com/27407121-building-games-in-flutter-with-flame-getting-started

上記の記事ですとチュートリアルに沿って学ぶ形ですので、すぐには動かせません。
完成するとこのようなアプリが誕生

altテキスト

ゲームを作るのに必要な素材やソフト

複数コマがまとめられている画像のことをスプライトシートと呼びます。
下記のような画像ですね。

・プレイヤーpng

altテキスト
・マップpng
altテキスト

上記のpngは下記のURLからDL可能です。

https://pipoya.net/sozai/

Tiled Map Editorでマップを作成。

Tiled Map Editorと言うソフトで上記のpng素材を使い、マップを作成していきます。

http://www.mapeditor.org/

https://qiita.com/muzudho1/items/ac3602a29f8536031fe4

https://nut-softwaredevelopper.hatenablog.com/entry/2015/05/06/004127

おわりに

いかがでしょうか? サンプルがあるのでいまいちコードが理解できていなくても、少しづつ変更すれば簡易的なゲームが作れるかもしれません。

Discussion

ログインするとコメントできます