SVGはWebベースのゲームの実行可能なテクノロジーの選択ですか?[閉まっている]


13

JavascriptのみでWebベースのゲームを行うために利用できるWebテクノロジーについて読み始めましたが、HTML5を使用したSVGについてのフィードバックはどこにもありません。実行可能な選択肢はありますか?Canvas、DOM、CSS Transformationなどのような他のテクニックと比べてパフォーマンスが良いですか?


回答:


6

SVGはHTML5でサポートされています。プレーヤーが使用しているブラウザがサポートしているかどうかは別の話です。

ニーズに応じて、RaphaelJSをチェックしてください。Raphaelは、IEのレンダリング時にVMLに切り替えることにより、IEのSVGのようなサポートを提供します。Raphaelは、アニメーションやCufonフォントのサポートを含む多くの機能を提供します。間違いなく一見の価値があります。

SVGはDOMの一部であるため、作成されたSVG要素に「クリック」や「ホバー」などのDOMイベントを添付するのは非常に簡単です。これにより、スプライトなどをアニメーション化するよりも、SVGをHUDタイプのディスプレイにより適したものにすることができます。

ただし、SVGとCanvasの相対的なパフォーマンス特性を判断するために、おそらく多くのテストを事前に行う必要があります。

ストレートDOM操作は、おそらく最悪の事態になるでしょう。DOMの内容を変更すると、ブラウザのレイアウトエンジンがページのレイアウトを再計算して変更を調整します。これにより、おそらくゲームのパフォーマンスが低下します。このルートを使用する必要がある場合は、CSS(特に、変換やキーフレーミングなどのCSS3固有の機能)をお勧めします。


Snap.svgを使用します。これは同じ作者のRaphaelJsの後継ですが、途方もなく古いブラウザーとインターネットエクスプローラーVMLの乱雑なサポートはありません。よりきれいで、より良く、より現代的で、より速く。
ラジョスメザロス

5

見てみましょう。このウェブサイトの SVGの互換性を参照してください。今のところせいぜい危険で、ショーケースのテストデモ以外にはお勧めしません。

人々が最新かつ最高のブラウザを使用することを期待しないでください。

SVGを使用することは大きな間違いであり、ユーザーが何かが壊れているのを見て恥ずかしくなると思います。


5

Canvasを使用する方がはるかに良いでしょう。どちらもIEではサポートされておらず、canvasは実行可能なWebベースのゲームテクノロジーであることが知られています。加えて、特にChromeでは(そして、初期のデモによるとIE9でも見かけ上、最近試したことがありませんが)、適切なレンダリング速度があります。IEやモバイルプラットフォームの古いバージョンを対象とする必要がある場合は、単純なゲーム(Pacmanなど)で十分なパフォーマンスは得られませんが、それでも受け入れられるプレーンな古いDOMに固執します。


2

短い答えはい。

長い答え、

私はまだIE6に完全に依存する環境で働いており、この素晴らしいライブラリをチャートに使用しています(IE6-IE8でVMLを使用しています)私は間違いなくcanvasが大好きで、jsでゲームを書くのが好きです。したがって、svgでゲームを作成したい場合は、それを使用して他のゲームを作成しました(Raphaelの例を参照)。それでも、JSを使用してそれを行うことになりますので、canvasに移行したい場合、それほど苦痛はありません。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.