Search Unity

  1. Unity support for visionOS is now available. Learn more in our blog post.
    Dismiss Notice

GO Particles - Emit prefabs as particles with collision, animation, etc..

Discussion in 'Made With Unity' started by baha, Jul 2, 2011.

  1. baha

    baha

    Joined:
    Nov 2, 2009
    Posts:
    622
    Hello Everyone

    If you haven't saw our post in the Asset store section then you might want to take a look at our GO Particles package and with it you can emit complex prefabs and meshes through unity's particle system, animate them, detach them at any point of time through a timer, on collision or through scripting! :D

    Some of the features supported by the system:
    1- Have a list of prefabs or meshes and let them be emitted from your particle emitter.
    2- prefabs can be as complex as you want with scripts, animations, nested childs, anything a prefab can take the system can take.
    3- force the object to follow the particles animation or break the connection with the particle animator through time, on collision or by scripting.
    4- You can randomize the selected prefab or mesh from a list ( note that some cases are still buggy)
    5- 2 examples included,the first is an exploding asteroids and the other is a lightened ball (a ball with animated light).
    6- Automatically destroys game objects with there energy reaches 0.
    7- You can simulate in edit mode and optimized in a way that you can clear the cache objects.
    8- the system does not do any unnecessary instantiation of objects.
    9- Full support channel within the package, direct links to our video channel, support and feedback email and more to come as your satisfaction is our first priority, don't hesitate to contact us in case you needed any support, help and any features that you would like us to include in our next release.
    10- pre-instantiation of objects in the edit mode by checking a box in the inspector so you can only have those objects instead of multiple objects being created at runtime (optimized for mobile)


    Finally you have the source code so you can extend it in any way yo want :D

    All of this is only for 40$

    Check out the demo scene

    The Demo Scene is an asteroids that got emitted from a mesh emitter and when collides with the ground explodes.




    Find it here at the Asset Store

    some optimization results are shown below

    $GO Particles Optimization.png
     
  2. PolyMad

    PolyMad

    Joined:
    Mar 19, 2009
    Posts:
    2,350
    Interesting stuff... this may be helpful also to create spawnpoints for enemies!
     
  3. baha

    baha

    Joined:
    Nov 2, 2009
    Posts:
    622
    Yes, thats right, it can be used for spawning points and it can be used also to place bricks on a well formed mesh wall as well in conjunction of using a mesh particle emitter which means destructible walls :D
     
  4. PolyMad

    PolyMad

    Joined:
    Mar 19, 2009
    Posts:
    2,350
    Cool!
    I suggest you to produce more videos with these examples, this will help a lot with sellings :)
     
  5. baha

    baha

    Joined:
    Nov 2, 2009
    Posts:
    622
    I will :) and I will also include more examples on the uses of it
     
  6. Django

    Django

    Joined:
    Nov 25, 2008
    Posts:
    120
    Hi!

    I would like to buy your tool, but I have a question:

    Could you tell us how draw calls are handled ? In Unity, a particle emitter is 1 draw call. With your tool, if I use multiple meshes spawned from the same emitter (and they respect the rules for dynamic batching within Unity) , will they batch their draw calls dynamically ?
     
  7. baha

    baha

    Joined:
    Nov 2, 2009
    Posts:
    622

    Particles in this implementation are treated like any game object so it depends on the prefab you are using and the number of shared materials and textures, one important thing is that you can pre-instantiate your particles so they can be reduced giving you much higher performance but it totally depends on your prefab used for the particles and yes they should batch dynamically if your mesh is less than 300 vertices and share the same materials as required by dynamic batching In the documentation here.

    You can see the optimization comparison here and look at how much low your draw calls get with pre-instantiation even though in the normal case it is 1 draw call per object.
     
    Last edited: Jul 23, 2011