Search Unity

[Open Source] TC Particles: millions of GPU particles

Discussion in 'Assets and Asset Store' started by pvloon, Feb 28, 2013.

  1. ronan-thibaudau

    ronan-thibaudau

    Joined:
    Jun 29, 2012
    Posts:
    1,722
    I really don't think there's that much of a DX10 market long term, i mean there aren't that many DX10 cards that aren't DX11 too, i'm not saying it's not a nice bonus but i don't think many will make the effort of supporting testing for DX10 even if you add support.
     
  2. pvloon

    pvloon

    Joined:
    Oct 5, 2011
    Posts:
    586
    Well, steam hardware survey does show 30% DX10:
    http://store.steampowered.com/hwsurvey

    That said, those are probably lower end specs, on which GPU resources are already quite valuable already. So indeed, it's not a big 'loss'. Still, if unity decides to support it, it *should* just work immediately which is nice.
     
  3. tobobox

    tobobox

    Joined:
    Jul 7, 2012
    Posts:
    25
    Everything has been working great so far. When do you think you'll have documentation for scripting particles and forces?
     
  4. pvloon

    pvloon

    Joined:
    Oct 5, 2011
    Posts:
    586
    I've been cleaning some code now for a while, should be finished today. All public API should have nice summaries. From there I'll be able to generate the API reference. With a bit of luck, that's all done today, but to be sure: Let's just go with this week. Good to hear it's all working :)
     
  5. ZJP

    ZJP

    Joined:
    Jan 22, 2010
    Posts:
    2,646
    That mean you have now no trouble with your Fermi Card?
     
  6. pvloon

    pvloon

    Joined:
    Oct 5, 2011
    Posts:
    586
    The fixed version is not out yet, so I do assume he will have the fermi problems . He probably just hasn't come across any. Only with complex set ups, lots of forces and colliders, the system starts to break. (or not, maybe it's just the 4xx and 5xx series that are having trouble and not necessarily all fermi cards)

    In any case, it's fixed, so soon you don't have to worry about it anymore ;)
     
  7. pvloon

    pvloon

    Joined:
    Oct 5, 2011
    Posts:
    586
    Patch 1.0.3 has been submitted to the asset store!

    -Particles now get pushed out of colliders properly
    -Fixed fermi card issues
    -Code cleaned, exposed more parameters, added summaries to all API properties*


    -Fixed draw order problems
    -Particles no longer flicker when starting alpha isn't 1
    -Fixed some problems with the demo scenes
    -Minor bugfixes

    -Optimizations for collisions
    -Improved CPU performance for colliders and forces
    -Much less GC allocation


    *API is not backwards compatible. You might need to change some of your code
     
  8. ZJP

    ZJP

    Joined:
    Jan 22, 2010
    Posts:
    2,646
    Thx. You forgot to update the first post about the Fermi issues. ;)
     
  9. pvloon

    pvloon

    Joined:
    Oct 5, 2011
    Posts:
    586
    That's staying there until the patch has been approved :)

    In the meantime: I'm dying to see what people are creating with the system! Anyone who wants to share? :)
     
  10. pvloon

    pvloon

    Joined:
    Oct 5, 2011
    Posts:
    586
    Haven't mentioned it here, but all news about TC Particles will be posted here:

    tcparticles.tinycubestudio.com/news

    Keep an eye out for it, I want to release a roadmap soon.

    (Don't worry, I'll also post it on the forums)
     
  11. pvloon

    pvloon

    Joined:
    Oct 5, 2011
    Posts:
    586
    1.0.3 has been accepted :)
     
  12. ZJP

    ZJP

    Joined:
    Jan 22, 2010
    Posts:
    2,646
    ...and downloaded. ;)
     
  13. sloopidoopi

    sloopidoopi

    Joined:
    Jan 2, 2010
    Posts:
    242
    This Asset rocks!!!
    The more I play with it, the more I love it.:-D
    Without a better documentation it's a lot of trial&error, but it makes a lot of fun seeing all the time particles.
    Is there a easy way to render the particles in one pixel size, independently from the distance to the camera? Like point rendering in OpenGL?
     
  14. paraself

    paraself

    Joined:
    Jun 30, 2012
    Posts:
    139
    Hiii It's really a cool particle system. Really like it.
    But I am currently developing fluid sim in a ios game? Is it possible that TC will be ported to OpenGL and support the other platforms?
    million thanks
     
  15. acropole

    acropole

    Joined:
    Aug 13, 2009
    Posts:
    154
    Is it possible to create trails ? Unity trail eat a lot of resources.
     
  16. pvloon

    pvloon

    Joined:
    Oct 5, 2011
    Posts:
    586
    @sloopidoopi: Thanks :) Docs are high on the priority list, it's a bit... "lacking" right now. Now that patch 1.0.3 is out, I'm all over it ;)

    As for the points: It seems D3D11 removed the option to this natively. However, I did a quick hack which allows you to set a constant pixel size for your particles (same performance as billboard). Good enough? :)

    @paraself: OpenGL is a big, big maybe already, depending on what unity does. iOs is a no go. Maybe for the iPhone 17 ;)

    @acropole: You're not the first to ask, and it would indeed be very nice! I have been thinking about how to go about this. It should be possible, no promises yet though!
     
    Last edited: Mar 12, 2013
  17. ZJP

    ZJP

    Joined:
    Jan 22, 2010
    Posts:
    2,646
    Nice idea. +1
     
  18. sloopidoopi

    sloopidoopi

    Joined:
    Jan 2, 2010
    Posts:
    242
    I know there will be some roadmap but I had some ideas / wishlist for the system:
    More color-options for the particles like setting the color from script. Changing color depending on the current state of the particle (velocity,acceleration,actual force on the particle ...)
    Storing of the birth location of every particle and a return to birth location option, that can be triggert from code.
    Option to emit only at the vertex points of a mesh.
    A emitter that has a texture as reference who can colorize one particle for one pixel from the image and can emit the particles at the right position with the right color like a living image.
    More force types: electro-magnetic fields, free force field with some kind of editor for creating and saving a custom force field . you can see the vectors of the forces in 3d space and have several brushes you can use to change the field in an interactive way.

    more to come....;)

    (sorry but these particles make me dream :mrgreen: )
     
  19. pvloon

    pvloon

    Joined:
    Oct 5, 2011
    Posts:
    586
    Great man! :) I really love feedback like this!

    ->Colour over velocity is there, but it seems that it's broken, oops. 1.0.4 coming soon ;)
    The other colours over x are unfortunately not going to happen. The problem is that you'd have to save 'x', causing a massive VRAM overhead, memory bandwidth, etc. If you have a pro, you could get a custom solution from me if required though :)

    ->Birth location, same thing

    ->Interesting that you mention the vertex points. That used to be there, but was removed as I didn't think it was that useful... woops! I'll look into it

    ->I've been dreaming about those textures as well actually, haha. Actually, an idea popped into my head how to realize that quite easily. I don't think it's that useful game wise though, it doesn't have high priority, but one day!

    ->Electro-magnetic fields: Take a look at the radial forces. With some power and attenuation settings I'm sure you can get something reasonable. Or are you talking about a full on electro-magnetic field simulation? Humm... Maybe baked, which brings me to:

    ->Custom forces, or jsut even more control over noise forces, would be awesome! Technically there's nothing in the way to do so, it's just that I am clueless how one would actually manage a 3D force field. This is something I do promise will be in at some point, rudimentary or not.

    Keep an eye out for the (already quite mythical) roadmap :)
     
  20. sloopidoopi

    sloopidoopi

    Joined:
    Jan 2, 2010
    Posts:
    242
    I begin to love my investment into the pro version :cool:
     
  21. ZJP

    ZJP

    Joined:
    Jan 22, 2010
    Posts:
    2,646
    Yeah, this would be possible. Sort of "Solid to Gas" effect. ;)
     
  22. pvloon

    pvloon

    Joined:
    Oct 5, 2011
    Posts:
    586
    Hows everyone doing? Still haven't seen anything made with TC Particles, really dying to see what TC Particles can do :)

    Also, reviews on the asset store are greatly appreciated! Thanks ronan and ZJP ;)

    (and yeah, the particulizer effect is really cool!)
     
  23. Manaburn

    Manaburn

    Joined:
    Dec 13, 2012
    Posts:
    12
    Hmm went to buy this since the fermi fix has now been done, and the price is $95 on the asset store. I assume this means the "intro" pricing is over?

    Either way, product looks fantastic.
     
  24. pvloon

    pvloon

    Joined:
    Oct 5, 2011
    Posts:
    586
    Thanks a lot :) yeah, introduction sale is already over.

    I wish I could give this to everyone for free, but hey, I have to pay (upcoming) student life and somehow ;)
     
  25. acropole

    acropole

    Joined:
    Aug 13, 2009
    Posts:
    154
    Why free ? You spend a lot of time on it and 95$ is fair as the result is very good.
    Don't be a slave.
     
  26. pvloon

    pvloon

    Joined:
    Oct 5, 2011
    Posts:
    586
    A little delayed, but here it is! The mythical roadmap ;)

    http://tcparticles.tinycubestudio.com/?p=237

    It will probably be tweaked a lot along the way, but at least it gives a basic idea of what's to come!


    @acrople: Of course! I would never work for free. Still, if it were possible, I of course want as many people as possible to enjoy TC Particles :)
     
  27. sloopidoopi

    sloopidoopi

    Joined:
    Jan 2, 2010
    Posts:
    242
    The roadmap looks real promising! But i'm missing the spline path emiter :neutral:
     
  28. pvloon

    pvloon

    Joined:
    Oct 5, 2011
    Posts:
    586
    Ah, good point :) That's a nice (and easy to do) function. Added it for 1.1!
     
  29. pvloon

    pvloon

    Joined:
    Oct 5, 2011
    Posts:
    586
    1.0.4 is done! will be submitted to the asset store tomorrow morning :)

    Point rendering
    Fix mesh emission
    Fix colour over speed
    Fixes for unity 4.1
    vertex emission


    It's a bit of an odd release, these features were supposed to wait for 1.1 but bugfixes were needed and they were done anyway! Here's a screenshot utilizing some of the new features:

    $1.0.6.PNG

    It's a standard unity plane, with vertex emission, rendered at a fixed 5px particle size, with some turbulence :)
     
  30. sloopidoopi

    sloopidoopi

    Joined:
    Jan 2, 2010
    Posts:
    242
    Great!
    Right now I'm playing with some colliders, but it seems that the mesh collider for PhysxShapes don't work. Only Box/Sphere type.
    I also tried a setup with compound colliders consisting of some box colliders, but that also doesn't work like I expected. It would be a great feature if the TCCollider could setup a compound collider(looks through all child transforms )automatically. Right now I have to make this setup by hand which is a bit of cumbersome.
     
  31. pvloon

    pvloon

    Joined:
    Oct 5, 2011
    Posts:
    586
    Mesh colliders are indeed not supported. I probably should make that a bit clearer when you select physX shape. Update 1.1 will bring some first steps towards supporting mesh colliders :)

    The option to look through all children for colliders is a good idea! I'll look into that, probably for 1.1
     
  32. sloopidoopi

    sloopidoopi

    Joined:
    Jan 2, 2010
    Posts:
    242
    If there is a mesh emitter, is it possible to have a mesh force?
     
  33. pvloon

    pvloon

    Joined:
    Oct 5, 2011
    Posts:
    586
    How would a mesh force exactly work? Like, where a particle intersects a mesh it get's pushed in the meshes normal direction? Or where within the mesh, a force get's applied? In the first case: No, but might be a nice option for the force editor. Second case: No, and probably isn't going to happen in a while. Maybe for the force editor, maybe not
     
  34. pvloon

    pvloon

    Joined:
    Oct 5, 2011
    Posts:
    586
    Patch 1.0.4 has been accepted!
     
  35. sloopidoopi

    sloopidoopi

    Joined:
    Jan 2, 2010
    Posts:
    242
    The new vertex emmision is great!
    But I'm a little confused about how the new pixel rendering is working. When I check the "Is Pixel Size" option in the Renderer the particles becoming very tiny, but if I increase the start size of the particles they also getting bigger. Is there a real "always one pixel size" mode ?
     
  36. pvloon

    pvloon

    Joined:
    Oct 5, 2011
    Posts:
    586
    Setting isPixelSize to true, and a size of 1 for the particles should give you particles always one pixel in size - or something pretty close. It's not exact, as DX11 doesn't do this natively :(
     
  37. pvloon

    pvloon

    Joined:
    Oct 5, 2011
    Posts:
    586
    sorry for my absence here, my day job started catching up to me!

    TC Particles is still doing very well, and there's lots of exciting news! Some of which I can't share, but what I can share is:

    -TC Particles is being shown at GDC! I'm not there myself, but if you are, be sure to take a look :) I hope this get's people all excited
    -Their still is a lot of info to fill on the website, but a first step is the new API reference: http://tcparticles.tinycubestudio.com/api/
    -Anton Hand is currently working hard on some videos, showcasing some features, and a small tutorial. An extensive tutorial for a small demo game will come later on!


    Everybody still enjoying TC Particles? :)
     
  38. tobobox

    tobobox

    Joined:
    Jul 7, 2012
    Posts:
    25
    It would be great if there a way to set the TCParticles shaders so that they do not respond to fog. Right now if you use a material with any transparency you just see boxes due to the fog effect.
     
  39. xenius

    xenius

    Joined:
    Sep 30, 2010
    Posts:
    522
    @Tobobox: Could you post some screens of the behavior you're talking about? For Microstar I used the fog image effect (for our blue vertical coolant tubes) instead of the built in Unity Fog. You might have some better luck with that (I think its more performant to use as well).
     
  40. pvloon

    pvloon

    Joined:
    Oct 5, 2011
    Posts:
    586
    I will look into it. Do you mean with standard unity fog? Or as xenius pointed the fog image effect? Very weird, and potentially a performance killer so thank you for pointing that out :)

    There's currently lot's of exciting things going on for TC Particles, and I can share two more now! First off, here's the first tutorial video, thanks to xenius!



    more to come at:

    http://tcparticles.tinycubestudio.com/tutorials/

    Secondly, I can finally show you the webplayer demo of the example scene's!
    http://tcparticles.tinycubestudio.com/?portfolio=moon-demo

    It includes a new demo scene as well, of course that will available be in the next update for everyone :)
     
  41. 3dFoin

    3dFoin

    Joined:
    May 30, 2011
    Posts:
    631
    We love beautiful things and this is so beautiful :D You did a great job pal, congratulations :D
     
  42. ronan-thibaudau

    ronan-thibaudau

    Joined:
    Jun 29, 2012
    Posts:
    1,722
    I normally hate learning by videos, but i liked this one, well done !
     
  43. pvloon

    pvloon

    Joined:
    Oct 5, 2011
    Posts:
    586
    Thanks 3DFoin :) Big fan of your models!

    And that's great to hear ronan :) Thanks to xenius, he's been in the teaching business for years.
     
  44. tobobox

    tobobox

    Joined:
    Jul 7, 2012
    Posts:
    25
    I am using the unity fog... I wasn't really aware of the image effects fog (global fog). I tested it out and the image effects didn't hurt the particles, but I don't like how there isn't much control over the transition area between fog and no fog (it seems more binary). Because of that, I'd rather use the unity fog.

    Here is a pic showing a scene with unity fog turn on and one with it off. I pushed the fog really close to the camera in order to exaggerate the issue, but it is noticeable when further away from the camera as well.

    $particles_n_fog.jpg

    Here is a thread where someone wanted to disable fog on an alpha shader: http://answers.unity3d.com/questions/24533/disabling-fog-on-alpha-blended-premultiply.html

    Unrelated Question: any suggestions on how to have a particle system emit from a mesh with animations?
     
    Last edited: Mar 30, 2013
  45. pvloon

    pvloon

    Joined:
    Oct 5, 2011
    Posts:
    586
    Hi :) on crappy wifi on my vacation :p I see, thanks! That is an easy fix, and it might actually improve performance dramatically.

    For the animation: hmm, no way to do it very efficiently, but for small meshes you can maybe get away with calling SkinnedMeshRenderer.BakeMesh, and assigning that to the emitMesh every frame, though I now see that that's currently read only. Woops! I will push one last bug fix version before v1.1 soon.
     
  46. Zen-Davis

    Zen-Davis

    Joined:
    Aug 14, 2009
    Posts:
    285
    Is there any upgrade path where if we buy the indie version first, can we pay the difference for the pro version?
     
  47. pvloon

    pvloon

    Joined:
    Oct 5, 2011
    Posts:
    586
    Back from vacation!

    Currently not, the asset store doesn't do upgrade paths so we would have to set up our own payment routes, which is a legal mess, and honestly more effort than it's worth. I do know that the asset store team is working on these things, but don't count on it. Sorry!
     
  48. ronan-thibaudau

    ronan-thibaudau

    Joined:
    Jun 29, 2012
    Posts:
    1,722
    Afaik the only workaround for this is having your customer buy pro and send you both invoices requesting reimbursement for indy version
     
  49. pvloon

    pvloon

    Joined:
    Oct 5, 2011
    Posts:
    586
    Well, since the asset store takes 30% in an ideal case I could at max refund 70% of the cost of indie
     
  50. ronan-thibaudau

    ronan-thibaudau

    Joined:
    Jun 29, 2012
    Posts:
    1,722
    I think there's a refund process, doesn't the asset store refund it's own 30% in those cases?