私は過去数ヶ月の間にいくつかのHTML5ゲームを作りました。 createJS スイートにして、すべてをキャンバスにレンダリングします。
キャンバスの私の選択の背後にある理由はそれです画面に合わせてキャンバスを拡大縮小することができ、すべてが完璧だったので、クロスプラットフォームで動かすのがより簡単に見えました。さて、ほとんどのデバイス上で!パフォーマンスは古いアンドロイドやIOSデバイスの問題ですが、それほど恐ろしいことではありません。
私の次のHTML5は大物です、以前のゲームはシンプルなポイントアンドクリックだけで、クイズスタイルのゲームで、アニメーションもメニューもほとんどありません。これはより多くのメニュー、インタラクティブなオブジェクト、そしてここでもまた単純なアニメーションのみを含むより大きなディナーです。しかし、それはパン可能な(つまり単語である)環境を含みます。
私は「HUDの項目とメニューにDOMとCSSを使う傾向がありました。これはキャンバスの上にオーバーレイされ、メインのパン可能な環境を実行します。
私はこれが得るのにより多くの時間がかかるかもしれないことを理解します複数のCSSメディアクエリーを使用して複数の画面解像度で作業したり、より小さな解像度のためにさまざまなレイアウトを設定したりする(HUDから特定のラベルを非表示にするなど)
私は主にパフォーマンスのための技術の比較を探していますが、どの方法が「ベストプラクティス」であるかを見つけることもしています。
また、これらの異なる方法を使用したマルチプラットフォームゲームのいくつかの例(または他の方法でも知らない場合もあります)を見て、それらがどのように行われるのかを調べ、パフォーマンスをテストするのもいいでしょう。 :)
回答:
回答№1は1あなたは間違いなく単純なものを選ぶべきです溶液。私があなただったら、createJSスイートを使い続けます。必要なものがすべて含まれているからです。それは本当に良くて、あなたが私に尋ねるならばあなたにパフォーマンス問題を与えません。それに問題を抱えたことはありません。
回答№2の場合は0
それは間違いなくの複雑さに依存しますゲーム。昨年、私はパン可能な地図を使って完全なDOMゲームを開発しようとしました。しかし、私はあきらめなければならなかったので非常に多くのパフォーマンス上の問題とデバイスの不一致に遭遇しました。今は正確な値を覚えていませんが、ブラウザを不安定にするDOM要素の数は、「非常に単純」な後の至る所のゲームにとってはかなり少ないです。
私は間違いなくあなたが言ったように、キャンバス環境上のDOMインターフェースを試みるでしょう。 とにかく、それを単純にしてください!