へっぽこSEが◯時間でFlutter(iOS、android、web)で2Dゲームアプリを作ってみる(2)

どうも、すえきあおいです。

前回(FLutter開発-準備編-)に引き続き、今日はサンプルアプリをダウンロードしていきます。

 

超重要!サンプル選び

皆さん、いつも開発ってどうやってやってます?

私は自分が作りたいものに近いサンプルを入手して、そいつをカスタマイズしていく方法で進めてます。

これがいいのかわからないですが、

  • 一から自分で作るより遥かに速い
  • 明らかに自分より優秀な人が作ってるからセキュリティ面も安心
  • カスタマイズしながらソースコード読むから勉強にもなる

などの理由から特にデメリットは感じていません。一石三鳥!素晴らしい!

ただ一点、サンプルが土台になるので、これが変に作り込んであったり複雑だったりするとカスタマイズする時死ぬほど苦労します。

なので、土台にするサンプルアプリは、できるだけシンプルなものを選ぶようにしましょう。

 

失敗例。

とは言え、サンプル選びは「やってみないとわからない」面があり、失敗することも多いです。そして失敗すると結構時間を無駄にします。

例えば、今回だと下記のゲームエンジン『Flame』にFlutterで実装した例とかチュートリアルがついてたので、まずはチュートリアル通りに実装してこれを動かして、そっからカスタマイズしていこうとしました。

flame-engine/flameA minimalist Flutter game engine. Contribute to flame-engine/flame development by creating an account on GitHub.
flame-engine/flame github.com
flame-engine/flame

が。

Error: The non-abstract class 'FlameBiding' is missing implementations for these members:

実行したらなんかエラーになってチュートリアルPART(1/5)で行き詰まりました。

まぁバージョン違いとかでよくある話ですね。Flutterみたいな新しいライブラリだと特に日々アップデートされていて新陳代謝が早いので半年前のコードがもう動かない、とかよくあります。

こういうのはハマると長くなるのでスッパリ諦めます。(仮にこれが解消できても、次のエラー、また次のエラーと延々トラブルシュートする羽目になることが多いw

見切りは速ければ速いほど良い。

 

成功。やっぱ公式がイチバン安心。

Flutter Samplesという公式サイトにデモが載っていたサンプルコードを入手し、まずはこいつを動かして、そっからカスタマイズしていくことにしました。

kevmoo/slide_puzzleThe classic slide (15) puzzle in Dart and Flutter. Contribute to kevmoo/slide_puzzle development by creating an account on GitHub.
kevmoo/slide_puzzle github.com
kevmoo/slide_puzzle

<ダウンロード&動かし方>

ターミナルでサンプルコードをダウンロードするディレクトリに移動し、

①Flutter for webが動くように設定

$ flutter channel dev
$ flutter upgrade
$ flutter config –enable-web

②アプリをダウンロード、必要なライブラリを取得、実行

$ git clone https://github.com/kevmoo/slide_puzzle.git
$ cd slide_puzzle
$ flutter packages get
$ flutter run -d chrome

以上。とっても簡単。

よっしゃ、これをandroid studioにimportして動かしてみます。

はいキタコレ!

開始30分できっちり動くwebゲームアプリができました(笑)

何のゲームなのかよくわかりませんが、ちょっと触ってみたところパズルゲームぽいw

多分、「1」が左上で「15」が右下になるように、より少ない手数で並び替えるゲームですね。多分。難しそうだからやりませんが、2Dゲームには変わりないですね。

 

それではコイツをカスタマイズしていきます。

次回に続く!

末岐 碧衣
  • 末岐 碧衣
  • フリーランス のシステムエンジニア。独立後、一度も営業せずに月収 96 万円を達成。1986年大阪生まれ。早稲田大学理工学部卒。システムエンジニア歴 12年。
    2009年、ITコンサルティング企業に入社。3年目でコミュ障が爆発し人間関係が崩壊。うつにより休職するも、復帰後はコミュ障の自覚を持ち、「チームプレイ」を徹底的に避け、会社組織内においても「一人でできる仕事」に専念。社内外から評価を得た。
    無理に「チームプレイ」するよりも「一人でできる仕事」に専念した方が自分も周囲も幸せにできることを確信し、2015年フリーランスとして独立。