Archived

This topic is now archived and is closed to further replies.

Gammastrahler

Using Portals to...

Recommended Posts

... speed up radiosity? This came into my mind while i´m still searching for a way to improve my form factor calculations. Would it be possible to set up a view frustum from a patch and then recursively clip it to each portal that intersects it? Then, i would only need to calculate the patches from zones in the list of visible portals. Of course, this would mean that i have to manually place a lot of portals, even more than used for rendering, since not every room is as simple as four walls, and for rendering, you can have some overdraw by ignoring such cases, but for radiosity to make the resulting image correct, since many rooms have pillars, or pits, i need to place portals here as well. This means that i have many portals to clip against a lot of view frustums, since i need to build a view frustum from every patch. this again means very expensive calculations but you get the benefit that you need to calculate only a few fraction of form factors at each iteration for progressive refinement. What do you think about this approach? I´m interested in hearing any optinion! greets Gammastrahler [edited by - Gammastrahler on April 23, 2004 5:22:07 AM]

Share this post


Link to post
Share on other sites
This is something I tried quite long time ago, that is recursive portals clipping, not the radiosity thing.

I'd describe my approach like this:
- the whole map divided into sectors (some name it clusters)
- each sector hast its BSP tree
- each 2 neighborous sectors are connected through portals
- some portals are mirrors
- rendering map does recursive portals' clipping and cutting, so the initial frustum gets cut to what can be seen through consecutive portals
- for mirrors rendering recurses until certain depth level

It was interesting to code it, but it would require a complete redesign in many aspects in order to handle really big maps and advanced shading technologies.

If you are interested in seeing how it worked (well, still works ) test it yourself. My old webpage for this project is here.

[edited by - MickeyMouse on April 23, 2004 10:17:27 AM]

Share this post


Link to post
Share on other sites