Hello. I am working on a Direct3D 12 renderer and got stuck with two PBR related issues. For now I do all testing for a single analytical point light and simple GLTF avocado model.
-
I got black/dark spots on some angles. I went through PIX to check the values and when debugging the pixel I've think I narrowed down the problem to the values I got from LoH. For the dark spot it is really low causing the D term to be practically 0. (The dark spot screen I attached is lighted with two point lights but it is the same for 1 anyway).
-
When I try to switch the implementation to smith correlated visibility term, I got really weird highlights that basically look like white artifacts. I have no idea why is that happening but I suppose it is also related to something being wrong with my halfway vector or view/camera direction. When I try to output the term directly, they both differ significantly (attached to images - the correlated one is the brighter one).
For both cases I have already checked values of other vector and NoL and NoV and they looked good. I attach both issues as screenshot and values from PIX of darkening.
I tried to provide as much info as possible. Appreciate any help, I am hard stuck as I checked all my matrices, vector and texture values. I don't understand why I get this artifacts.