1. Tidak ada praktik terbaik umum.
Jika Anda mendapatkan banyak elemen (bentuk kompleks), partikel, dll. Di dalam gim Anda, pendekatan buffer bitmap akan jauh lebih cepat. Buffer bitmap juga akan skala lebih baik dengan meningkatnya kompleksitas sprite Anda. Renderer vektor akan menjadi lebih lambat dengan bentuk yang lebih kompleks atau animasi tween (bentuk tween), namun memiliki beberapa manfaat lain:
- Anda dapat dengan bebas mengukur aset Anda atau bahkan memperbesar tampilan tanpa kehilangan kualitas.
- Rotasi atau transformasi lain seperti skewing akan lebih mudah dilakukan pada grafik vektor
Jadi sebagai kesimpulan, itu bermuara pada jenis permainan yang Anda bangun.
2. Menggunakan MovieClips alih-alih bitmap sprite-sheets
Saya kira Anda berarti "bitmap sprite-sheets" dan bukan kelas AS3 Sprite ?
Ini tidak membuat perbedaan, sungguh. Anda selalu dapat mengubah animasi berbasis MovieClip Anda menjadi bitmap animasi. Baik secara manual, dengan mengekspor film ke bingkai dan mengubahnya menjadi sprite-sheet , atau secara dinamis, dengan merender sprite sheet dari MovieClip Anda saat runtime. Begini cara saya melakukan ini:
- Buat instance dari MovieClip dan
stop()
itu.
- Buat
new BitmapData
objek dengan lebar dan tinggi yang sama dengan Movieclip.
- Gunakan metode draw () , untuk merender MovieClip ke BitmapData.
- Simpan objek BitmapData dalam Array atau Vektor.
- Pergi ke bingkai MovieClip Anda berikutnya dan ulangi Langkah 2 - 4, lakukan ini sampai Anda mencapai frame terakhir MovieClip Anda. Sebaiknya perbarui dua variabel dengan lebar maks dan tinggi maksimal bingkai MovieClip Anda (karena ini dapat berubah dari bingkai ke bingkai).
- Sekarang Anda dapat menggabungkan semua Objek BitmapData yang disimpan ke dalam Sprite-Sheet (gunakan BitmapData.copyPixels () )
3. Animasi berbasis sprite
Seperti disebutkan dalam jawaban untuk pertanyaan pertama Anda, tidak ada jawaban yang pasti untuk itu. Jika Anda perlu melakukan banyak transformasi dengan objek Anda, mis. scaling dan rotating Anda mungkin lebih baik dengan menggunakan renderer asli flash. Jika Anda mendapatkan animasi yang telah ditentukan yang dapat dipanggang menjadi sprite-sheet (secara manual atau dinamis), dan jika Anda perlu menampilkan ratusan sprite secara bersamaan, maka gunakan mesin rendering bitmap.