Sistemas de Partículas en Second Life

Temas: SecondLife
Juan Mellado, 10 Octubre, 2007 - 19:08

Estando en una sandbox hace unos días conocí a un músico (cosas que pasan en Second Life) al que acabé dándole el piano que había modelado. Hablando un poco me comentó que estaba preparando una actuación en directo y que le gustaría tener de fondo algún tipo de efecto, como fuegos artificiales. Como estaba bastante pez en el tema de scripting me ofrecí a echar una mano y así tener una excusa para ir aprendiendo algo más del tema.

Los sistemas de partículas en Second Life son bastante fáciles de crear, ya que se construyen con una única llamada a una función del API. La función en cuestión se llama llParticleSystem, y admite como parámetros una lista de reglas. Dicha lista de reglas incluye aspectos tales como la forma en que tienen que generarse las partículas desde el punto de emisión (explosión, cono, ...), el tamaño del punto de emisión, la vida de las partículas, el color y transparencia de las partículas en el punto de emisión, el color y transparencia de las partículas al morir, la textura a aplicar a las partículas, la velocidad de generación de las partículas, la aceleración a la que se ven sometidas las partículas, y así una serie bastante grande de parámetos incluyendo por ejemplo la posibilidad de que las partículas emitan luz o que se vean influidas por la fuerza del viento.

Todos los sistemas de partículas se crean siempre a través de un script, siendo necesario asociar los scripts a un objeto que actúe como contenedor. En todo momento sólo puede haber un sistema de partículas activo por objeto. Una cosa curiosa de esto es que una vez activado un sistema de partículas en un objeto ya no se detiene nunca, aunque se borre el script del objeto, siendo necesario ejecutar otro script con una llamada a llParticleSystem con su lista de argumentos vacía.

Desde un punto de vista más técnico, los sistemas de partículas en Second Life se construyen en la parte cliente mediante una textura en dos dimensiones que se orienta siempre hacia el usuario. Es decir, mediante la técnica de billboarding habitual para estos casos. El límite de partículas renderizadas en el cliente es normalmente de 4096 por frame. El hecho de que se generen en el cliente quiere decir que normalmente no implican ningún tipo de "lag" (demora), al menos de red, aunque podrían llegar a saturar a los ordenadores menos modernos o con tarjetas gráficas modestas.

Un buen sitio para iniciarse en el mundo de las partículas es el Particle Laboratory.

¿No encontró lo que buscaba?

Utilice el buscador para encontrar más páginas en esta web o en toda Internet.
 
Web www.inmensia.com