> I think that's just a side-effect of having so many pixels covered by > (multiple) quads with alpha. I'm not sure there's much we can do > about that, unless we somehow start dropping sprites. I'll have a > think - 3D cloud perf has always been a big challenge.
Based on my own experiments, I agree. If we have 20 sprites in the cloud and the cloud covers the whole screen, the fragment shader does at last 20 texture lookups per pixel - which are pretty expensive. It's basically the equivalent of rendering the urban effect on the whole screen (anyone here who can do this with good framerates? - I get about 6 fps if I try...) There's one thing we could try which might help a bit - in addition to texture lookup, the fragment shader also fogs the clouds. If we don't do fogging for nearby clouds (i.e. the ones which cover the whole screen), we don't really change the visuals, but save 20+ repetitions of fogging computation. An alternative option would be to not render really close cloud by texture at all (= drop fragments based on a distance cut) and replace them by a procedurally generated pattern. This may be rather tricky to get right, but if the function isn't too complicated, it may be cheapter than to read textures, and we'd get hires closeups as a bonus. Dropping sprites certainly helps, but it takes away the feeling of volume - which is especially important for nearby clouds. :-( * Thorsten * Thorsten ------------------------------------------------------------------------------ Everyone hates slow websites. So do we. Make your web apps faster with AppDynamics Download AppDynamics Lite for free today: http://p.sf.net/sfu/appdyn_d2d_nov _______________________________________________ Flightgear-devel mailing list Flightgear-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/flightgear-devel