Zed, what happened to your realtime radiosity engine? Do you have a demo I could have a look at? Did you use hemicubes or some other technique? Was it one pass or more?
Zed, what happened to your realtime radiosity engine? Do you have a demo I could have a look at? Did you use hemicubes or some other technique? Was it one pass or more?
Just out of curiosity, why are you reading back pixels from the color buffer?Originally posted by Adrian:
[B]Hehe, it's a radioisity engine so the lighting is calculated by rendering the scene thousands of times (for each frame) and reading back the light values.
It seems by your description that you are using progressive refinement or other iterative approach to solve the radiosity matrix. Storing delta radiances(unshot) in system ram would probably be faster. Put final radiance values(RGB radiance) in framebuffer.
I'm rendering a hemicube from each patch using the graphics hardware. I know there are issues with lack of intensity range when using a 32bit colour buffer but it seems ok so far. I only do one or two passes anything else is too slow for realtime.
I basically follow this approach but do the hemicube part in hardware not software. http://freespace.virgin.net/hugo.eli.../radiosity.htm
If I wanted to store in system ram I would have to use software rendering wouldn't I? This would be too slow for me as my goal is to get it running in realtime.
[This message has been edited by Adrian (edited 11-29-2002).]
Ahh, I see. I glanced at the page, I misunderstood you. The web page uses an approach nicknamed "gathering". You use readpixels for formfactor determination.
If I wanted to store in system ram I would have to use software rendering wouldn't I? This would be too slow for me as my goal is to get it running in realtime.
[This message has been edited by Adrian (edited 11-29-2002).][/B]