dak Manual

スマートフォンでのJavascriptを使ったブラウザ上でのゲームのつまづき

PCのWindowsでも、Macでも、Androidスマートフォンでも、iPhoneでも、1つのプログラムで全ての環境できないかをかんがえると、簡単なゲームならJavascriptでブラウザベースのゲームにすればいいのではと思いとりあえず作ることに。

ただ、悩まし状況が何点かでてきたので、メモ書きとして。
まあ、結論からいうと全ての環境にとかんがえるなら、各環境に最適化したほうが結局良さそうではある・・・・


>ゲームサンプルはこれ


<つまずいた点>
・CanvasがIE8以下では使えない。
IE8以下のシェアが2012年2月現在、dakのサイトだと40%弱あることを考えるとIEさようならといわけにはいかない・・・。

・Androidだと画面の連打で、画像保存になってしまう。
画面の長押しで画像が保存できるという基本機能のため、ゲーム中の背景画像などを連打すると、画像保存ダイアログが表示されてしまい、ゲームにならない。
iPhoneの場合は、背景画像は保存できないからCSSで背景画像指定すればよいかもしれないが、Androidだと丁寧にも画像保存してくれてしまう。
ちなみに、Canvasで画像を表示すれば、Firefox以外は保存できないらしいが、IE8以下は結局無理。

・画面サイズはいろいろ
画面サイズは当然いろいろあるので、判別による分岐が面倒。そもそもゲームとしては、機器の画面を最大限使いたいもの。

・iPhoneのブラウザのバーが邪魔
ブラウザのアドレスバーやメニューバーが表示されるので、画面の領域は小さくなる。あと、スクロールが発生してしまうので、画面を連打するような場合は、勝手にスクロールしてしまいゲームにならない。
ちなみに、メタタグにアプリモード指定のタグを入れるとバーが無い状態にはなるが、その場合は、ホームにお気に入りアイコンを作ってそれをクリックして起動した場合。
でも、ブラウザなんでやっぱりいろんなページに遷移したくなるわけだから、遷移するとバーが表示されてしまう。

・スマートフォンのイベント時の描画
イベント時の描画が遅く思い通り表示されない。コマ落ちする。(プログラムに難があるということも有ると思うが・・・)


<結果>
・スマートフォンのブラウザゲームは、縦スクロールを前提したものが合っている。
・スマートフォンのブラウザゲームは、連打はむずかしい。
・環境ごとに開発した方が、早いかも。(本末転倒だが)

以上

たぶん、いろいろな回避策や改善はあるとは思うので、何かあれば後日加筆します。
また、アドバイスあればよろしくお願いします。

Copyright DESIGNALIKIE, Limited. All Rights Reserved.