FJCT_ニフクラ mobile backend(mBaaS)お役立ちブログ

スマホアプリ開発にニフクラ mobile backend(mBaaS)。アプリ開発に役立つ情報をおとどけ!

Flutterでゲーム開発!フレームワーク、ライブラリまとめ

Flutterはスマートフォンアプリはもちろんのこと、デスクトップやWebまで幅広くサポートしたフレームワークになります。DartはJavaScriptに似た言語で、習得にはそれほど時間はかからないでしょう。

そんなFlutterは主にユーティリティ系アプリで使われることが多いですが、ゲーム開発にも利用できます。今回はFlutterでのゲーム開発をサポートするフレームワーク・ライブラリを紹介します。

また、NCMBではコミュニティSDKとしてFlutter SDKを提供しています(テクニカルサポート対象外です)。Flutterでのアプリ開発時にぜひ使ってください。

ncmb | Dart Package

Flame Engine

Flame Engineは現時点で最も有名なゲームエンジンではないでしょうか。2Dゲームを開発する用のエンジンになっており、デモではレーシングゲームを楽しむことができます。オーディオや衝突検知の仕組みも用意されています。

Flame Engine

quill | Flutter Package

quillは軽量なゲームエンジンになります。描画部分は特にサポートされていないようです。すべてのノードをFeatherというオブジェクトを定義し、スプライトとしてQuill内に追加します。そして指定したFPS(60FPSなど)でupdate関数が呼ばれるので、そこで位置を変更したり、アクションを実行します。

quill | Flutter Package

SpriteWidget

SpriteWidgetも2Dゲームを開発するためのゲームエンジンになります。スプライト、テクスチャーなどがサポートされており、アルカノイド系のゲームがサンプルとして掲載されています。デモゲームはspritewidget/spaceblast: Demo game for SpriteWidgetにあります。

spritewidget | Flutter Package

illume | Flutter Package

ウィジェットベースのゲームエンジンとのことです。操作するキャラクターなどをウィジェットとして定義して、操作をします。衝突した際などは、そのウィジェットのイベントが呼ばれる仕組みです。よりFlutterらしく書けるかも知れません。

illume | Flutter Package

bonfire | Flutter Package

2DのRPGゲームを作るのに適したフレームワークになります。ドット絵のRPGゲームが作成できます。キーボードでの操作に加えて、スマホ用にバーチャルコンソールにも対応しており、面白い使い方ができそうです。

bonfire | Flutter Package

Glartek/flutter-unity: A Flutter plugin for embedding Unity projects in Flutter projects.

flutter_unityはFlutterプロジェクトの中にUnityプロジェクトを埋め込むというソフトウェアです。ゲーム部分はFlutterから切り離せるので、Unityを使って効率的なゲーム開発を行えます。

Glartek/flutter-unity: A Flutter plugin for embedding Unity projects in Flutter projects.

Casual Games Toolkit

Flutter3登場時にGoogleが発表したのがCasual Games Toolkitです。新しいゲームエンジンという訳ではなく、ゲームエンジン自体はFlame Engineを使っています。そして、メインメニューや広告、アプリ内課金、リーダーボードなどの機能面を提供するのがCasual Games Toolkitになるようです。

Casual Games Toolkit | Flutter

まとめ

Flutterでゲーム開発を行えば、マルチプラットフォームに配布が可能になります。もちろんそれはUnityでも可能ですが、C#よりもDartを好む人もいるでしょう。選択肢が増えるのはとても良いことです。

ゲームエンジンが増えれば、ゲームの特性に合わせて選べるようになります。Flutterを習得すれば、様々なジャンルのアプリ開発が行えるようになるでしょう。


NCMBではコミュニティSDKとしてFlutter SDKを提供しています(テクニカルサポート対象外です)。Flutterでのアプリ開発時にぜひ使ってください。

ncmb | Dart Package

導入相談会

中津川 篤司

中津川 篤司

NCMBエヴァンジェリスト。プログラマ、エンジニアとしていくつかの企業で働き、28歳のときに独立。 2004年、まだ情報が少なかったオープンソースソフトの技術ブログ「MOONGIFT」を開設し、毎日情報を発信している。2013年に法人化、ビジネスとエンジニアを結ぶDXエージェンシー「DevRel」活動をスタート。