Firefox OS シミュレータで某テトリス

個人的に興味あっただけですが、とりあえず触ってみました。

新興国市場を狙ったOSとして、Firefox OSとtizenというOSの端末が今年にも発売されると発表されていますが、それに先駆けて、少しだけ触ってみました。

Firefox OSとtizenの特徴は、
・OSのUI自体がNativeでHtml5動作
・アプリ自体もHtml5
であって、html5の学習には最適な環境になっています。

ちなみに、私自身はJavascriptを昔かじった程度で、chromeのコンソール機能を使ったりはしたことありますが、その辺のデバッグ機能で十分だった人間です。
またhtml5周りが特に詳しいわけでなく、さっき勉強始めたレベルです。

Firefox OSを触ろうと思ったのは、
単純に開発環境が手軽に構築できるということ。

Firefox OS
1. Firefoxをインストール
2. アドオン検索から、Firefox OS Simulatorのアドオンをインストール
3. アプリをシミュレータ上で実行

f:id:maxigundan:20130421045019j:plainアドオン

これだけでした。

f:id:maxigundan:20130421045025j:plain:w240

10分もかかりませんでした。
しかも、動作が軽い!!
これは低スペックPCしか持っていない自分には嬉しいです。

せっかくなので、ゲームでも動かしたいと思います。
html5のゲームと言えば、45分で作られたhtml5テトリスが個人的に衝撃でした。

せっかくなので、それを改変して作った上◯テトリスもどきがここにあります。
HTML5 Uehara Tetris Modoki

同様に、矢印キーで操作ができます。
↑:回転 ←:左移動 →:右移動 ↓:落下

せっかくなので、このソースコードFirefox OS上で動かしてみます。
アプリとして、Firefox OSに登録するには、マニフェストファイル(manifest.webapp)が必要になるようです。
この辺はAndroidに似てます。

manifest.webapp を以下のように記述、index.htmlと同じフォルダに突っ込みます。

{
"name": "Uehara Tetris Modoki",
"description": "Uehara Tetrisもどき作ったった",
"launch_path": "/index.html",
"icons": {
"128": "/icon-128.png"
},
"developer": {
"name": "Maxi Gundan",
"url": "http://maxigundan.hatenablog.jp/"
},
"default_locale": "ja"
}

せっかくなので、128×128のパクったお手製アイコンも作りました。
f:id:maxigundan:20130421045902p:plain

Firefox OS Simulatorアドオン画面を開き、
“Add Directry”から、先ほどのフォルダを開き、manifest.webappを選択。
f:id:maxigundan:20130421045833j:plain

上のように表示されるので、
Updateを押してみると・・・
f:id:maxigundan:20130421050409j:plain:w240

f:id:maxigundan:20130421045034j:plain:w240

アッサリ動いた。

これはびっくり。
同様に矢印キーで操作ができました。

f:id:maxigundan:20130421045210j:plain:w240
console.log() も表示されています。アプリ名がUUID(?)なのがわかりにくいですが、変数の値を吐くようにしているのが表示されています。

先のWebで動く◯原テトリスもどきのhtml5ファイル群から何をやったかというと、

・解像度を少しだけ調整した(canvasを200×400にしただけ)
マニフェストファイル(manifest.webapp)を作った
・アイコンを作った

だけです。
おそらくですが、解像度の自動化もAndroidと同様にできると思います。

せっかくなので、ソースコードここに置いておきます。
MaxiGundan/uetetmodoki_fos · GitHub

操作が十字キーなのを、画像が押されたら◯◯する、という入力に変更したら、そのまま実機でタッチ操作できそう。

ゲームエンジンとしてもcocos2d-x-html5やUnity等が既にあるので、移植のハードルも低そうな気もします。
(enchant.jsもおそらく動くのかな)

なんにせよ、シミュレータの動作が軽いのが嬉しいです。
アーキテクチャ周りにも非常に興味があります。

まだまだ、マネタイズに関して考えると、まだ食指は動かないといったところが、正直な感想ですが、注目はしておこうかと思いました。

とりあえずは、まだまだ頑張ってiOSアプリ作ります。。。

ではでは。

シェアする

  • このエントリーをはてなブックマークに追加

フォローする