Acciones de partículas

Un sistema de acciones que se encargan de las partículas está en la pestaña Extra. Estas acciones están disponibles sólo en la versión registrada de Game Maker.

Sistema de partículas significa crear efectos especiales. Las partículas son pequeños elementos (representados por un píxel o una forma pequeña). Tales se mueven según  las reglas predefinidas y  cambiando de color. Muchas partículas juntas pueden crear, por ejemplo, fuegos artificiales, llamas, lluvia, nieve, etc.

Game Maker contiene un sistema de partículas que se puede alcanzar con funciones. Un sistema más limitado de partículas se puede realizar con las acciones descritas abajo.

Un sistema de partículas puede tener partículas de diferentes tipos. Después de crear el sistema de partículas la primera cosa a hacer es especificar los tipos de partículas. Usando las acciones de abajo puedes especificar hasta 16 tipos de partículas. Cada tipo tiene una forma, un tamaño, un color inicial y otro final. El color cambia lentamente del color del comienzo al color del final. Las partículas tienen un tiempo de vida limitado. En el tipo defines el mínimo y el máximo tiempo de vida de las partículas. También tienen velocidad y dirección. Finalmente, gravedad y fricción puede usarse para trabajar con partículas.

Después de especificar el tipo de partículas debes crearlas y colocarlas en el room. Puedes hacer estallar un número de partículas de un tipo de partícula desde un lugar o puedes crear una corriente constante de aparición de  las partículas. Partículas aparecen en emmiters (emisores). El sistema de partículas puede tener hasta 8 emisores trabajando al mismo tiempo. Después de crear los tipos de partículas tienes que crear los emisores y llamarlos para que estallen o fluyan.

Aquí hay un completo set de acciones. Experimenta con ellas para obtener el efecto que desees:

Create the particle system
Esta acción crea el sistema de partículas. Debe ser llamada antes de que otras acciones sean usadas. Sólo debes llamarla una vez. Puedes especificar el depth (profundidad) en las partículas que se están dibujando. Si usas un depth positivo grande las partículas aparecerán detrás de las instancias. Si usas una profundidad negativa aparecerán delante de las instancias.

Destroy the particle system
Esta acción destruye el sistema de partículas, liberando memoria. No te olvides de llamar a esta acción (p. Ej. Cuando vas a un room diferente) porque los sistemas de partículas usan mucha memoria.

Clear all particles in the system
Esta acciones quita todas las partículas actualmente visibles. Esto no detiene los emisores así que nuevas partículas pueden ser creadas si tienes emisores que fluyen (lee más abajo)

Create a type of particle
Con esta acción creas un tipo de partícula. Puedes definir hasta 16 tipos distintos. Para la partícula puedes especificar la forma o el sprite que usará. Si especificas un sprite, este será usado. Si no seleccionas ningún sprite, la forma será usada. Hay un número de interesantes formas internas. Puedes indicar el tamaño máximo y el mínimo (cuando las partículas aparecen se utiliza un valor aleatorio entre estos). Finalmente especificas el aumento del tamaño en cada step. Para disminuir, usa un valor negativo. Nota que únicamente un tipo de partícula es creado, no una partícula. Para esto necesitas emisores (mira abajo)

Set the color for a particle type
Una partícula puede tener un color (el color predeterminado es blanco). Con esta acción puedes definir el color que se usará para un tipo en particular. Debes indicar el tipo de partícula para la que se define el color. Luego especificas cómo se aplicará el color.  Cualquier color es elegido entre dos colores dados, o el color comienza con el primer color y gradualmente sobre el tiempo de vida de la partícula, cambia al segundo color. Ambos colores pueden ser dados. Finalmente puedes indicar la transparencia alpha. Especificas la transparencia en el momento que la partícula es creada y cuando muere. La transparencia cambia lentamente entre esos valores. Es normalmente lindo que se disminuya el valor del alpha sobre el tiempo de vida de la partícula.

Set the life time for a particle type
Una partícula vive un número limitado de steps. Después desaparece. Con esta acción pones el tiempo de vida para un tipo de partícula. Das dos valores límites y el  tiempo de vida es elegido de forma aleatoria entre ellos.

Set the motion for a particle type
Con esta acción puedes poner la velocidad y dirección del movimiento para un tipo de partícula. Otra vez das 2 valores límites y el valor será elegido de forma aleatoria entre aquellos valores. Por ejemplo, para hacer que la partícula se mueva en una dirección aleatoria, debes dar 0 y 360 para los límites de la dirección. Puedes también especificar la fricción. Esta cantidad es sustraída de la velocidad en cada step hasta que se convierta en 0. (Puedes hacer que la velocidad suba usando una fricción negativa).

Set the gravity of a particle type
Con esta acción puedes poner la cantidad de gravedad y la dirección de ésta para un tipo de partícula. 270 es hacia abajo.

Create secondary particles
Esto es un poco más complicado. Partículas pueden crear otras partículas durante su vida y cuando mueren. Con esta acción puedes especificar esto. Puedes definir el tipo y número de partículas que serán creadas en cada step durante su tiempo de vida y  cuando una partícula muere. Se muy cuidadoso aquí. Puedes crear grandes números de partículas de esta manera, retrasando el sistema considerablemente. Para los números puedes usas también un valor negativo. Un valor negativo x significa que en cada step una partícula es creada con la proporción -1/x. Por ejemplo,  si quieres generar una partícula secundaria cada 4 steps, usa el valor -4. Partículas secundarias son geniales para crear efectos como colas de partículas o partículas que explotan.

Create a particle emitter
Esta acción crea un emmiter (emisor de partículas). Las partículas son generadas por los emitters. Puedes tener hasta 8 emisores. Elige el emisores y especifica su forma, su tamaño y posición (en forma de una caja de contorno)

Destroy an emitter
Esta acción destruye el emisor indicado. Nota que las partículas existentes que se han creado con estos emisores no son eliminadas.

Burst a number of particles from an emitter
Incluso si definiste un tipo de partículas y en un emisor todavía no hay partículas, tienes todavía que decirle al emisor que genere partículas. Con esta acción llamas a un emisor en particular para generar un número de partículas de un tipo determinado. Todas esas partículas se generan una sola vez. Para el número puedes usar también un valor negativo. Un valor negativo x significa que una partícula es creada con la proporción -1/x. Por ejemplo, si quieres general una partícula con la proporción del 25 por cierto, usa un valor de -4.

Stream particles from an emitter
Con esta acción llamas a un emisor en particular para que haga fluir un número dado de partículas de un tipo dado. En cada step este número de partículas es generado, conduciendo a una corriente continua de partículas. El emisor continuará fluyendo partículas hasta que lo destruyas o que lo llames a fluir 0 partículas. Para el número puedes usar un valor negativo. Un valor negativo x significa que en cada step una partícula es creada con la probabilidad -1/x. Así por ejemplo, si quieres generar una partícula cada 4 steps, usa el valor de -4.