1. No existe una mejor práctica general.
Si tienes muchos elementos (forma compleja), partículas, etc. en tu juego, el enfoque del búfer de mapa de bits será mucho más rápido. El búfer de mapa de bits también se escalará mejor al aumentar la complejidad de sus sprites. El renderizador vectorial se volverá más lento con formas más complejas o animaciones de interpolación (interpolación de forma), aunque tiene algunos otros beneficios:
- Puede escalar libremente sus activos o incluso ampliar la escena sin pérdida de calidad.
- La rotación u otras transformaciones como sesgar serán mucho más fáciles de realizar en gráficos vectoriales
En conclusión, se reduce a qué tipo de juego estás construyendo.
2. Uso de MovieClips en lugar de hojas de sprites de mapa de bits
¿Supongo que te referías a "hojas de sprites de mapa de bits" y no a la clase AS3 Sprite ?
Esto no hace la diferencia, de verdad. Siempre puede convertir sus animaciones basadas en MovieClip en mapas de bits animados. Ya sea manualmente, exportando la película a cuadros y convertirlos en una hoja de sprites , o dinámicamente, renderizando una hoja de sprites desde su MovieClip en tiempo de ejecución. Así es como haría esto:
- Cree una instancia de MovieClip y
stop()
ésta.
- Cree un
new BitmapData
objeto con el mismo ancho y alto que Movieclip.
- Use el método draw () para representar el MovieClip en BitmapData.
- Almacene el objeto BitmapData en una matriz o vector.
- Vaya al siguiente cuadro de su MovieClip y repita los Pasos 2 - 4, haga esto hasta llegar al último cuadro de su MovieClip. También es una buena idea actualizar dos variables con el ancho máximo y la altura máxima de sus cuadros MovieClip (ya que estos pueden cambiar de cuadro a cuadro).
- Ahora puede combinar todos los objetos BitmapData almacenados en una Sprite-Sheet (use BitmapData.copyPixels () )
3. Animaciones basadas en sprites.
Como se menciona en la respuesta a su primera pregunta, no hay una respuesta definitiva para eso. Si necesita realizar muchas transformaciones con sus objetos, por ejemplo. escalar y rotar probablemente esté mejor usando el renderizador nativo flash. Si tiene animaciones predefinidas que se pueden hornear en hojas de sprites (manual o dinámicamente), y si necesita mostrar cientos de sprites al mismo tiempo, busque un motor de representación de mapas de bits.