GPU Particle System Demo
June 10th, 2008

I've read the paper "cascade demo secretes" by Nvidia and wanted to implement a particle system entirely on the gpu myself. So I wrote this small demo. Basicly it works like this:
- Vertexbuffer1 is rendered.
- the geometry shader processes the information (recomputes particle positions, speeds, etc.)
- the result is written into vertexbuffer2 by transform feedback
- vertexbuffer2 is drawn
- the geometry shader creates out of a point a billboard with 4 vertices
- fragment shader renders the billboard with the texture on it
- vertexbuffer1 and vertexbuffer2 are swaped
Needed Extensions:
- EXT_gpu_shader4
- NV_transform_feedback
- EXT_geometry_shader
Download:
Youtube Video:




[…] More info and download HERE. […]
Pingback by The Geeks Of 3D ยป GPU Particle System Demo — June 23, 2008 @ 10:09 am
You say it only uses the GPU, but it eats up 100% of CPU time, too…
Comment by Suprnovo — July 13, 2008 @ 5:45 pm
Thats a redicioulos argument. Of course it still uses the CPU for driverstuff and drawcalls. Also the CPU has to wait until the Graphics card has finished the calculations. Why the cpu usage is 100% during this time is none of my concerne but of the driver developers.
Comment by admin — July 15, 2008 @ 4:57 pm
are there more demos to come ?
cheers
Comment by Gregory — December 4, 2008 @ 10:26 pm
Very cool demo! I saw it and it inspired me in many ways. How hard would it be to make an OpenGL ES version? Any interest? I’ve got some ideas, please contact me, I’d like to discuss them with you!
Comment by Jim — January 6, 2009 @ 11:34 am
btw, the demo doesn’t work on ati cards :/ (tested on a radeon hd 4850)
Comment by Gregory — February 14, 2009 @ 12:55 pm
I know that this demo does not work on ati cards. When I wrote the demo the EXT_transform_feedback extension was not aviable yet and ati didn’t support the EXT_geomtry_shader extension. Maybe I replace the NV_transform_feedback with the EXT_transform_feedback someday, then it should work on ATI cards to.
Comment by admin — February 16, 2009 @ 9:27 am
[…] Found another one: Integrator’s GPU Particle System Demo […]
Pingback by OpenGL demos taking advantages of Shader Model 4 « dzutrinh’s blog — March 20, 2009 @ 5:09 am