Radiosity Updates


(ydnar) #1

Finally got back around to looking at the radiosity code today. For what it’s worth, it’s not as elegant as it should be. If I rewrote it it would be much smaller/cleaner. But rewriting the lighting code (again) would require an act of god, spontaneous legal cloning or bulk delivery of large denomination monetary instruments to my house.

Anyway, the next release of Q3Map2 will have some long-requested fixes to the radiosity code. First off is -bouncescale, so you can tune the radiosity to taste. The default is 1.0, so -bouncescale 2 would double the effective luminosity of bounced light.

Secondly, I re-jiggered the subdivision heuristic so it only subdivides a radiosity patch if the color gradient is over a certain amount in the patch’s colorspace, not a global colorspace. Previously, bright lights near walls were causing unecessary patch subdivision.

Thirdly, the default split size is 128 units (was 256 units). This will make walls emit a more uniform glow when bouncing.

Overall, radiosity should be faster than previous versions.

Example -light -fast -super 2 -filter -bounce 9 -bouncescale 3 screenies:

y

Edit: The only light in this scene comes from the sun. Everything else is reflected.

<font size=-1>[ This Message was edited by: ydnar on 2002-12-09 03:22 ]</font>


(Emon) #2

:eek:


(-=skOre=-) #3

On 2002-12-09 03:19, ydnar wrote:

Edit: The only light in this scene comes from the sun. Everything else is reflected.

<font size=-1>[ This Message was edited by: ydnar on 2002-12-09 03:22 ]</font>

Yep, now I can say :eek: too


(fourwood) #4

Very nice…


(deepclone) #5

Hi

Is this correct :

{
“-point 2” doubles luminosity at first bounce surface, thus the luminosity for radiosity will be higher. But doesn’t in any other way affect radiosity (eg doesn’t change -bouncescale).
}

?

/deep