Cómo aprender Starling Framework

Starling Framework es un marco gratuito de código abierto escrito con ActionScript 3.0. El propósito principal de este marco es hacer que sea extremadamente fácil para los desarrolladores crear juegos para la plataforma Adobe Flash. En este artículo, le presentaremos Starling y compartiremos sugerencias, screencasts, tutoriales y recursos para comenzar a utilizarlo..


¿Por qué elegir Starling Framework??

Hay muchos beneficios de usar Starling Framework para crear tus juegos; Estas son algunas de las razones más importantes:

  • Es gratis.
  • Es de código abierto: los desarrolladores contribuyen a ampliar los límites del marco..
  • Acelera el hardware: Starling se basa en la nueva tecnología Stage3D de Adobe Flash Player, que utiliza el hardware de GPU del dispositivo del jugador para renderizar el juego..
  • Es compatible con múltiples pantallas: un código base puede compilarse para ejecutarse en múltiples plataformas: escritorio, web, iOS y Android.

Donde descargarlo

El sitio web oficial de Starling Framework contiene un enlace para descargar la última versión. Para cualquier juego basado en Starling, este es el paquete más importante y principal que necesitará.

Como se menciona, Starling es de código abierto, y también está alojado en GitHub.

Esta rama contiene lo siguiente:

  • Código fuente completo del framework Starling escrito en AS3.
  • Proyectos de demostración que se pueden usar para explorar cómo se puede escribir el código Starling.
  • Un proyecto de andamio que le ofrece un punto de partida para comenzar con un nuevo proyecto..
  • Algunas pruebas unitarias para diferentes características de Starling Framework.
  • Utilidades que te ayudarán a implementar y probar el juego según el marco..

Prerrequisitos

Se supone que tiene conocimientos de nivel intermedio en Flash ActionScript 3.0 para poder adquirir el marco de Starling rápidamente. Si necesita ayuda con Flash ActionScript 3.0, recomiendo el libro Essential ActionScript 3.0 de Colin Moock.


Artículos Relacionados
  • Para obtener más recursos recomendados, consulte Cómo aprender Flash y AS3 para el desarrollo de juegos..

Empezando con el desarrollo

Tutoriales de vídeo para principiantes (gratis)

Para empezar, si eres nuevo en este marco, te recomiendo que comiences con un proyecto simple que te lleve de principio a fin al proceso de desarrollo de un juego. Puede encontrar esto en mi serie de videos A partir de Starling.

A lo largo de esta serie de videos, aprenderás cómo construir un juego llamado Hungry Hero.


Héroe hambriento

La serie de videos lo llevará a través de varios temas relacionados con el aprendizaje de Starling Framework:

  • Estableciendo
  • Imágenes, texturas y botones.
  • Hojas de Sprite y Animación
  • Navegación usando eventos y oyentes
  • Desplazamiento de paralaje
  • Estados del juego, Sprites, Detección de colisiones, Texto y fuentes, Partículas

Introducción a Starling (Free Ebook)

Para una guía API más detallada de todo el marco, un buen recurso es el libro Introduction to Starling por Thibault Imbert.


(Más información disponible en el sitio web de Thibault.)


Qué sigue?

Una vez que aprendas lo básico de Starling Framework, te recomiendo que te concentres en los siguientes aspectos.

Efectos visuales mejorados (como sistemas de partículas)

Agregar efectos de partículas y efectos especiales mejora la experiencia de los jugadores jugando tus juegos. Hay una extensión perfectamente adaptada para los sistemas de partículas Starling que es una necesidad para explorar para los desarrolladores de juegos en ciernes..

Patrones MVC y los gustos para una codificación eficiente

Tan importante como el proceso involucrado en el desarrollo de un juego es la forma en que diseña el código y los activos (gráficos y audio). La separación de su código en los componentes Modelo, Vista y Controlador a menudo le brindará un mejor enfoque para administrar sus proyectos, facilitando la búsqueda y solución de errores y brindándole una implementación más eficiente.

Técnicas de optimización para un rendimiento eficiente

Cualquier juego debe optimizarse, independientemente del marco / idioma que utilice. Esto siempre garantiza que sus juegos se ejecuten en las plataformas / hardware menos comunes. Nunca subestimes los problemas de rendimiento, especialmente en el desarrollo de juegos!

Componentes de la interfaz de usuario creados para juegos basados ​​en Starling

Explora el marco de interfaz de usuario finamente construido para juegos basados ​​en Starling, Feathers. Construido con AS3 y Starling Framework, y acelerado con Stage3D, está optimizado y diseñado para su uso con múltiples densidades de pantalla y resoluciones.

Extender Starling Framework con extensiones

¡Hay muchas extensiones maduras para Starling Framework, muchas de las cuales te serán muy útiles! Estos son creados por algunos de los mejores desarrolladores, con el propósito de desarrollar juegos. Usaron este código para construir y extender sus propios juegos..

Proceso de desarrollo del juego

Ahora que comprende los aspectos técnicos del marco en sí, es extremadamente importante saber cómo se debe construir un juego, especialmente la eficiencia y la arquitectura. Este es uno de los temas más importantes que debe captar, así que siga practicando y siga leyendo tutoriales..


Más recursos de aprendizaje

Estos enlaces proporcionan excelentes recursos de aprendizaje para temas específicos relacionados con el Marco Starling..

El manual de Starling

Este es probablemente el mejor recurso para un principiante que intenta construir juegos utilizando el framework Starling. Contiene tutoriales desde lo básico hasta nivel avanzado..

Tutoriales oficiales y fragmentos de código

Aquí encontrarás los mejores tutoriales en video y artículos para comenzar. Si eres completamente nuevo en Starling, este es un excelente lugar para comenzar.

Extensiones

Una vez que haya aprendido lo básico y pueda crear elementos, las extensiones probablemente sean el lugar que debe buscar. Aquí, encontrarás muchas bibliotecas diferentes escritas por desarrolladores increíbles. Como su nombre lo indica, solo extiende las capacidades del framework..

Plumas

Cualquier juego está incompleto sin una interfaz de usuario. Crear un menú principal, la pantalla de opciones, la pantalla, los créditos, la selección de nivel, etc. es mucho más sencillo cuando se utiliza este marco increíblemente fácil..

Referencia API de Starling

Si usted es un desarrollador principiante, intermedio o avanzado, siempre es una buena idea consultar la referencia de la API. Le proporciona la sintaxis actualizada de todos los métodos, clases y propiedades de todos los objetos en el marco de Starling..

Foro de la comunidad de Starling

¿Ha encontrado un problema que no pudo resolver durante el proceso de desarrollo? La comunidad de Starling Framework es el mejor lugar para buscar ayuda. Un gran conjunto de desarrolladores contribuye a este foro comunitario, ayudándose entre sí con los problemas de desarrollo del juego que uno podría enfrentar.

Starling Framework en GitHub

Esta es la ubicación principal del marco de Starling. Si desea bifurcar, contribuir o simplemente mirar las actualizaciones, no olvide conectarse a este.

Rastreador de problemas

Ningún producto o marco tiene éxito sin la contribución de los probadores o usuarios reales. Si cree que ha encontrado un error o un problema en el marco de Starling, este es el rastreador para informarle. Contribuye y mantén el marco de Starling volando.!


Consejos de desarrollo

Si bien algunos de estos consejos son específicos de Starling Framework, la mayoría son buenos para cualquier tecnología de desarrollo de juegos..

Utilice las funciones de pantalla múltiple

Dado que el framework Starling está basado en Flash ActionScript 3.0, no olvide aprovechar las características de pantalla múltiple del framework Starling..

Existen numerosas formas de hacer que sus juegos sean multiplataforma o multiplataforma. Asegúrese de explorar los proyectos "Demo" y "Scaffold" que se proporcionan con el código base.

Optimización del plan desde el principio

La optimización es una parte integral de la codificación de un juego en cualquier idioma. Recuerde, una de las características más importantes de Starling Framework es su soporte multiplataforma..

Una vez que comienza a codificar su juego, la complejidad del código solo continúa creciendo a lo largo del proceso de desarrollo. Para asegurarse de no cambiar la arquitectura de su juego en una etapa posterior (debido a la ineficiencia), siempre es mejor comenzar a pensar en "codificación optimizada" desde su primera línea de código..

Segregar el código

Mantenga su código en secciones separadas (especialmente importante para plataformas múltiples):

  • Lógica básica: contiene los comportamientos de diferentes personajes del juego, lógica para mover objetos, sumar puntajes, reproducir música, etc. Cualquier corrección de errores en esta parte del código debería determinar la corrección para todas las plataformas para las que está diseñado el juego..
  • Lógica de la plataforma: contiene solo código específico de la plataforma, lo que podría significar considerar iOS o Android; tabletas, teléfonos o web; tamaños de pantalla, resoluciones y densidades ... Esta sección del código maneja las cosas para plataformas específicas, como habilitar o deshabilitar los efectos especiales según la capacidad de la plataforma para garantizar que el juego siempre se ejecute a una buena tasa de cuadros.
  • Lógica de interacción: contiene una lógica basada en la interacción que garantiza que la interacción se defina en función de la plataforma en la que se ejecuta el juego, y luego habla con la lógica central para realizar acciones en el juego. Por ejemplo, los controles del mouse para escritorio y web, los controles táctiles para dispositivos móviles y tabletas.

Decidir si usar gráficos vectoriales o rasterizados

Los vectores son ligeros en términos de memoria. Estos gráficos se dibujan en tiempo de ejecución en la pantalla, por lo que se almacenan menos datos gráficos en la memoria. Sin embargo, renderizarlos puede ser costoso en el procesador..

Los mapas de bits o los gráficos de trama consumen mucha memoria. Almacenar físicamente y consumir memoria para renderizar puede ser un desafío, pero son comparativamente más ligeros en términos de renderización (a menos que realice un procesamiento intensivo de mapas de bits).

¿Quieres que el juego se ejecute más rápido en dispositivos con procesadores limitados? Utilizar mapas de bits. ¿Quieres más flexibilidad visual? Utilizar vectores. Hay desafíos inherentes al uso de cualquiera de los dos, así que siempre trate de equilibrar el uso de estos dos elementos. Tenga en cuenta la capacidad de procesamiento y la memoria que utiliza su juego.

Use más hojas de Sprite cuando sea necesario

No estás obligado a probar e incluir todos los gráficos de tu juego en una sola hoja de sprite. Si es necesario, expanda su lógica para usar múltiples hojas de sprites, pero mantenga esto controlado, ya que su juego puede ocupar más archivos y, lo que es más importante, consumir más memoria..

Considere la generación de hojas de Sprite dinámico

Hay extensiones por ahí que puede usar para esto, o, mejor aún, puede escribir una para hacer exactamente lo que necesita.

El uso de animaciones de Flash vectoriales (SWF) pre-creadas y su conversión dinámica a hojas de sprites puede ahorrarle mucho tiempo de desarrollo, así como reducir el tamaño de archivo de su binario. Asegúrate de no terminar haciendo esto demasiado para afectar la memoria en tiempo de ejecución que consume tu juego.

Buscar en las extensiones nativas de ActionScript

Use ANE para expandir sus juegos para que contengan funciones específicas de la plataforma, como compras dentro de la aplicación, anuncios dentro del juego y funciones sociales (como Game Center para iOS). Hay muchos ANE gratuitos y de pago disponibles en línea, así que no olvides revisarlos. También puedes escribir fácilmente el tuyo si es necesario..

Participación en el desarrollo

Mantenerse activo en la comunidad. Hay muchos desarrolladores expertos en la comunidad que han estado contribuyendo durante mucho tiempo. Publique sus consultas en los foros de Starling y no olvide registrar errores o tickets de soporte si es necesario. Las ideas y los requisitos de los desarrolladores son una de las razones por las que Starling Framework crece con más funciones cada día..


Una palabra de experiencia

Hay un dicho: "No es la herramienta, sino la habilidad lo que importa". Starling Framework es un excelente conjunto de API de código abierto para crear increíbles juegos acelerados por GPU para múltiples plataformas y dispositivos. Sin embargo, prestar mucha atención a las técnicas de desarrollo, los patrones, la forma de optimizar el código, etc. siempre lo ayudará a largo plazo. Muchos de los temas que he enumerado a lo largo de este artículo son válidos para muchos otros marcos e idiomas..

Por lo tanto, independientemente del idioma, el marco, la plataforma o la herramienta que utilice para crear juegos, los conceptos de desarrollo de juegos siguen siendo importantes..


Juegos exitosos construidos en Starling Framework

Estos son algunos de los juegos basados ​​en Starling que han sido realmente exitosos:

Angry Birds (Edición de Facebook)


Espaciado


Ruby Blast


El tiempo del dragón


Ríos del olimpo



Conclusión

Ahora que todos los recursos del mundo se combinan en un solo lugar, aprender Starling Framework debería ser una tarea fácil..

Comience por construir los juegos más simples y trabaje a través de ellos. ¡No olvides dejar un comentario y déjanos saber lo que has construido! Una vez que lances un juego, estaré encantado de revisarlo y comentarlo..

Por último, como siempre digo, no es la herramienta lo que importa, sino el arte y la ciencia. Recuerde que Starling Framework es solo una herramienta o un medio para expresar sus habilidades de desarrollo de juegos; lo que realmente importa es la habilidad que eventualmente desarrollarás en ti mismo. Existen innumerables plataformas, sistemas operativos, dispositivos, pantallas, marcos, lenguajes y herramientas por ahí. Crecer para poder construir para ellos y tener éxito es la clave. Starling Framework es un gran medio para lograr esto. Todo lo mejor!