|
Post by adamkunz on Oct 20, 2021 1:45:38 GMT
I'm 4 hours in rereading/reimplementing area lights and soft shadows. I don't know what I'm missing. From the images, it looks like it rendering the original shadow, just lighter on the edges...but from the example images, it looks like the soft shadows are actually more distorted/spread out than the point light shadows. I've also only noticed a slow down of <5x when going from 4 samples (90ms) to 64 samples (500ms). Makes me feel like I'm missing something there too. I was really expecting this thing to grind to a halt. Any suggestions on where to look would be appreciated. So far, all tests are passing. 4 samples 64 samples
|
|
|
Post by adamkunz on Oct 20, 2021 1:51:45 GMT
Feelin' silly. 30 seconds after posting, I figured it out. I got myself all confused about when is_shadowed() should be called. Ended up I was still calculating isInShadow at the beginning of the lighting() method and only calculating intensityAt() if isInShadow() was true. I totally missed that intensityAt() is calling is_shadowed() using the samples of the area light. Thanks for being my rubber duck! Here's the same image as before with 64 samples:
|
|
|
Post by Jamis on Oct 20, 2021 3:50:25 GMT
I'm glad you figured it out! Your render looks great.
|
|