Apakah SVG pilihan teknologi yang layak untuk game berbasis web? [Tutup]

13

Saya sudah mulai membaca tentang teknologi web yang tersedia untuk melakukan permainan berbasis web dengan hanya Javascript, tetapi saya tidak tahu dari mana mendapat tanggapan tentang SVG dengan HTML5. Apakah ini pilihan yang layak? Berkinerja baik dibandingkan dengan teknik lain seperti Canvas, DOM & CSS Transformation, dll.

HoLyVieR
sumber

Jawaban:

6

SVG didukung dalam HTML5; apakah browser yang digunakan pemain Anda mendukungnya, itu adalah cerita yang berbeda.

Tergantung pada kebutuhan Anda, Anda harus memeriksa RaphaelJS . Raphael menyediakan dukungan seperti SVG untuk IE dengan beralih ke VML saat rendering untuk IE. Raphael menyediakan banyak fungsi termasuk animasi dan dukungan font Cufon. Benar-benar layak untuk dilihat.

Karena SVG adalah bagian dari DOM, sangat mudah untuk melampirkan peristiwa DOM seperti "klik" dan "arahkan" ke elemen SVG yang dibuat. Ini mungkin membuat SVG lebih cocok untuk tampilan tipe HUD daripada menjiwai sprite, dll.

Anda mungkin memiliki banyak pengujian di depan Anda untuk menentukan karakteristik kinerja relatif SVG dibandingkan kanvas.

Manipulasi DOM lurus mungkin akan menjadi yang terburuk dari kelompok itu. Saat Anda mengubah hal-hal di DOM, mesin tata letak peramban akan menghitung ulang tata letak halaman untuk mengakomodasi perubahan Anda yang mungkin akan mematikan kinerja gim Anda. Jika Anda harus menggunakan rute ini, lebih baik menggunakan CSS (terutama fitur khusus CSS3 seperti transformasi dan keyframing).

drhayes
sumber
Gunakan Snap.svg , itu adalah penerus dari RaphaelJs dari penulis yang sama, tetapi tanpa dukungan berantakan untuk peramban tua dan penjelajah Internet VML yang luar biasa. Lebih bersih, lebih baik, lebih modern dan lebih cepat.
Lajos Meszaros
5

Lihatlah situs web ini untuk melihat kompatibilitas SVG. Saat ini cerdik di terbaik dan saya tidak akan merekomendasikan itu untuk apa pun selain demo uji untuk showcase.

Jangan berharap orang menggunakan browser terbaru dan terhebat.

Saya pikir menggunakan SVG akan menjadi kesalahan besar dan akan menghindarkan pengguna Anda ketika mereka melihat sesuatu yang rusak.


sumber
5

Anda akan jauh lebih baik menggunakan Canvas. Tak satu pun dari mereka didukung dalam IE, dan kanvas dikenal sebagai teknologi game berbasis web yang layak; ditambah lagi memiliki kecepatan rendering yang layak, terutama di Chrome (dan ternyata juga di IE9, menurut demo awal; saya belum mencobanya baru-baru ini). Jika Anda perlu menargetkan versi IE dan / atau platform seluler yang lebih lama, tetap gunakan DOM lama, yang tidak memiliki kinerja sangat baik tetapi masih dapat diterima untuk gim sederhana (misalnya Pacman ).

Ricket
sumber
2

Jawaban singkatnya ya.

Jawaban panjang,

Saya masih bekerja di lingkungan yang sepenuhnya bergantung pada IE6 dan telah menggunakan perpustakaan yang luar biasa ini untuk grafik. (yang menggunakan VML untuk IE6-IE8) Saya pasti suka kanvas dan lebih suka menulis game dengan js. Jadi jika Anda ingin membuat game di svg saya katakan melakukannya, game lain telah dibuat menggunakannya (lihat contoh Raphael). Bagaimanapun Anda masih akan menggunakan JS untuk melakukannya, jadi jika Anda ingin beralih ke kanvas, itu tidak akan menyakitkan.

Loktar
sumber