RE: [Algorithms] Lightmap Terrain
Brought to you by:
vexxed72
From: Martin F. <mf...@ac...> - 2000-08-25 10:23:19
|
The trouble with outdoor area's is the sky. If you have a clear day you will get very hard edged shadows as the sun light comes down more or less parrallel. However if you have lots of cloud then the sunlight that is not reflected back into space by the cloud layer tends to get diffused alot on the ground. Thus there are no really hard shadows. Radiosity deals well with reflected light in shadowy areas it does not deal very well with direct light. The best renders I have seen yet in computer graphics are hybrid raytracing radiosity engines utilising raytracing only for the specular light component and radiosity for the diffuse. (I did see a paper on view depedant radiosity once but that thread of though seems to have died) A landscape is for all intensive purposes flat, the average variation in altitude is pretty insignifcant compared to the size of the planet. For most of the day except extremes of sunrise and sunset most things will be in direct sunlight without shadow. Even during sunrise and sunset because the world is nominally flat there is going to be very little reflection where energy would bounce more than once of the world. The first radiosity bounce is more likely than not to send energy straight back into space or cloud. If you consider how much our atmosphere protects us from the direct sun (in the first hit) any energy bounced back to the cloud layer and then back to earth will have diminished to insignificant levels. Radiosity only noticably works well in areas of shadow with flat surfaces. Texture (such as grass) tends to scatter / average the light. The trouble with the classic radiosity algorithm is that to work it requires an enclosed environment from which energy cannot escape. Trying to deal with this condition on a kind of universal scale provides all sorts of headaches. A lamp in an entirely enclosed room with good flat surfaces is much more trivial case. How Quake2 delt with energy loss from sky boxes I don't know but I expect this was fudged and the sky box was allowed to reflect energy. Certainly oudoor areas in Quake have always looked wrong while the enclosed environments have been very convincing. I would expect for outdoor situations raytracing to be the most successful technique. For cloudy simply dropping the raycast and performing an averaging fudge (don't like that word but..) on the light calculation to simulate radiosity bleed might be sufficient to give convincing results. A full blown radiosity solution is likely to be expensive in terms to development time and processing and is IMO not going to give you good results. Cheers, Martin 3D Programmer Shadowman2 -----Original Message----- From: Ivan-Assen Ivanov [mailto:as...@ha...] Sent: 25 August 2000 02:02 To: gda...@li... Subject: Re: [Algorithms] Lightmap Terrain Neither embossing the heightmap nor dot-products work well. The resulting lightmap doesn't give you any clue of where the depths and heights are (e.g. inverting the heightmap and moving the sun at the opposite azimute produces the same image). I'm currently thinking about a simple raytrace, but I feel it will be effective only with low elevations of the sun over the horizon. We don't have any sharp features in the heightmap. Has anybody tried "full" radiosity (whatever that means - e.g. different reflectance/ absorption for textures/ecosystems) on heightfields? Do you think it would be worth the trouble? _______________________________________________ GDAlgorithms-list mailing list GDA...@li... http://lists.sourceforge.net/mailman/listinfo/gdalgorithms-list |