From The Mana World
Line 3: Line 3:
In composite effects, it is often desirable to start a certain effect only after a certian amount of time has passed; for example, we might want to fade in a circle and only then suddenly flash a pentagram in its centre.  This could be accomplished by an `on-death' emitter that is spawned when its parent particle dies.
In composite effects, it is often desirable to start a certain effect only after a certian amount of time has passed; for example, we might want to fade in a circle and only then suddenly flash a pentagram in its centre.  This could be accomplished by an `on-death' emitter that is spawned when its parent particle dies.
:''Death effects would also be useful for a lot of other purposes like magic projectiles which explode on impact. I would suggest to implement this in the xml files as an attribute "activate-at" for emitters. Possible values are "immediately" (current behavior), "death" or a number of frames.'' --[[User:Crush|Crush]] 18:51, 22 June 2008 (CEST)
:''Death effects would also be useful for a lot of other purposes like magic projectiles which explode on impact. I would suggest to implement this in the xml files as an attribute "activate-at" for emitters. Possible values are "immediately" (current behavior), "death" or a number of frames.'' --[[User:Crush|Crush]] 18:51, 22 June 2008 (CEST)
===Parents that move their children.===
 
When the parent moves, so do all of its children (cf. `dominates-children', to be re-named `move-children', in [http://mantis.themanaworld.org/view.php?id=305 Mantis #305])
:''I would do this with another particle property.'' --[[User:Crush|Crush]] 18:51, 22 June 2008 (CEST)
::''How about a child attribute that controls attraction to its parent particle?'' &mdash; [[User:Jaxad0127|<span style="color: #160196">Jaxad</span>]][[User Talk:Jaxad0127|<span style="color: #5B038F">0127</span>]] 19:33, 22 June 2008 (CEST)
:::''Sounds like the last point of this list to me.'' --[[User:Crush|Crush]] 20:09, 22 June 2008 (CEST)
::::''Partially. That one controls which particle it's attracted to. This would control the amount of attraction to it.'' &mdash; [[User:Jaxad0127|<span style="color: #160196">Jaxad</span>]][[User Talk:Jaxad0127|<span style="color: #5B038F">0127</span>]] 18:43, 23 June 2008 (CEST)
:::::''This would be what the acceleration property would do when you change the orbit reference particle to the parent particle.'' --[[User:Crush|Crush]] 23:28, 23 June 2008 (CEST)


===Random animation entry points===
===Random animation entry points===

Revision as of 20:32, 16 September 2008

Possible additions

Delayed Effects

In composite effects, it is often desirable to start a certain effect only after a certian amount of time has passed; for example, we might want to fade in a circle and only then suddenly flash a pentagram in its centre. This could be accomplished by an `on-death' emitter that is spawned when its parent particle dies.

Death effects would also be useful for a lot of other purposes like magic projectiles which explode on impact. I would suggest to implement this in the xml files as an attribute "activate-at" for emitters. Possible values are "immediately" (current behavior), "death" or a number of frames. --Crush 18:51, 22 June 2008 (CEST)


Random animation entry points

Right now, animation cels are looped through sequentially. For some effects, randomly picking one element each interval, or at least starting out at a random entry, may be preferable.

The animation tag should get a new attribute "sequence" with the values "loop" (current behavior), "once" (animation is played once and then the particle dies) and "random"--Crush 18:51, 22 June 2008 (CEST)


Particles orbiting moving particles

Orbitting particles need a reference point; right now this is fixed to be the `base' particle. We need an option to choose the parent, grandparent, ... instead.

I would do this with a new particle property acceleration-parent. The value is the number of recursion steps in the particle tree the particle is following. --Crush 18:51, 22 June 2008 (CEST)