Jump to content


Volumetric clouds with GPU ray-casting in SilverLining 2.0


2 replies to this topic

#1 Guest_Frank Kane_*

  • Guests

Posted 12 October 2010 - 02:00 PM

Posted Image


Description
We've released version 2.0 of SilverLining, our C++ library for real-time, physically-based rendering of the sky, 3D volumetric clouds, and weather effects. This new release features a new type of cloud - stratocumulus - rendered used GPU ray-casting; this new cloud type is featured in the images above.

With GPU ray-casting, truly 3D, volumetric clouds of very high densities become possible, with per-pixel lighting. A fragment program casts rays from the camera through each fragment of the cloud layer's bounding volume, compositing together color, opacity, and lighting information as it passes through the clouds. The clouds themselves are stored as 3D textures, with an ancillary 3D noise texture used to provide fractal detail.

These new cloud types augment SilverLining's existing cumulus cloud types (cumulus congestus, cumulus mediocris, and cumulonimbus) which render the underlying volume data using billboard splatting. Splatted clouds are featured in the SilverLining Demo and our Gallery.

We provide sample integration code for OpenGL 1.4, OpenGL 3.2, DirectX 9, DirectX 10, and DirectX 11, as well as for the Ogre, OpenSceneGraph, SceniX, and Carmenta engines. Visit Sundog's website for a free evaluation SDK and more information, and feedback is welcome!

#2 rouncer

    Senior Member

  • Members
  • PipPipPipPip
  • 2722 posts

Posted 14 October 2010 - 05:33 AM

great! you really have to see it in motion to see how good it really is I find tho.
you used to be able to fit a game on a disk, then you used to be able to fit a game on a cd, then you used to be able to fit a game on a dvd, now you can barely fit one on your harddrive.

#3 TheNut

    Senior Member

  • Moderators
  • 1701 posts
  • LocationCyberspace

Posted 14 October 2010 - 10:21 AM

Nice work Frank. It feels neat when you flood the scene with clouds, it gives a whole new perspective. On the performance side, I did notice a drop in FPS when I decorated the skies like that. Have you incorporated any performance enhancements yet? For instance, do you stop traversing through the volume once the opacity for the pixel reaches 1.0? I think (out of ignorance) that if one cloud fills up my screen and runs well, I figure a sky of them should perform at almost the same speeds (especially if you can't see them).

One last thing. You say the clouds are stored as 3d textures, but I presume they are procedurally generated? I noticed some clouds looked the same and that statement makes me wonder now.
http://www.nutty.ca - Being a nut has its advantages.





1 user(s) are reading this topic

0 members, 1 guests, 0 anonymous users