8
votes
Accepted
Why is the half vector not used in diffuse BRDF Fresnel calculations?
I finally figured out a flaw in my argumentation to use the half vector for the diffuse part.
tl;dr version:
$\alpha_{hi}$ and $\alpha_{ho}$ are not equal, this assumption only works for the specular ...
6
votes
Accepted
Derivation of Wikipedia's path tracing diffuse BRDF
When you perform regular Monte Carlo integration over a hemisphere using $N$ samples, each sample represents $\frac{2\pi}{N}$ steradians. So the Monte Carlo integration for Lambertian BRDF is:
$$\...
5
votes
Accepted
Intuitively understanding conservation of energy for the Lambertian BRDF
A perfect Lambert reflector actually reflects light in a cosine distribution - that is, the amount of light per unit area reflected in any given direction $R$ is proportional to $N \cdot R$. The ...
5
votes
Diffuse lighting calculations in ray-tracer
Some elementary trigonometry tells you what to expect from this situation.
The angle to see the shadow terminator is marked on the diagram, and a use of SOHCAHTOA tells you it's $\cos^{-1}\tfrac{1}{2}...
3
votes
Accepted
Confusion around Lambert's Cosine Law in Ray Tracing in One Weekend
It is cancelled out by the probability density function in the estimator. The pdf in their case is exactly: $\frac{\cos\theta}{\pi}$, which is in the denominator: ...
3
votes
Confusion over Microfacet-based BRDFs and Normal Distribution Functions
Actually, the confusion of yours mainly results from:
My understanding is that microfacet-based BRDFs assume there is always a perfect reflection, but the true microscopic normal changes according to ...
3
votes
Problem with Basic Diffuse Lighting
Your ambient lighting contribution is missing from the second one (:
2
votes
Why is the half vector not used in diffuse BRDF Fresnel calculations?
We're actually going through that paper for our own GGX BRDF metallic & edge_tint model, and we've spotted one crucial problem.
Hammon is still using the Fresnel Schlick approximation for his ...
2
votes
Equivalent of Fresnel law for determining transmitted/diffuse split
Physically, the origin of diffuse light is subsurface scattering, which happens continuously as light travels through a material. So, the proportion of transmitted light depends on the thickness of ...
2
votes
question about true Lambertian reflection in Ray tracing in one weekend
There are two different methods of computing a random ray bounce being compared in this section of the online book, the first one is: Pick a point $s$ anywhere inside the sphere, then compute a vector ...
2
votes
Accepted
Ray tracing Bug with Diffuse material
I see a couple of problems by scanning quickly over your code.
You are using ray.origin as new origin when scattering the ray off the surface, you should however use the hit point as origin of the ...
1
vote
Accepted
OpenGL old-style diffuse shading producing unexpected effects
As far as I remember, without a fragment shader the shading is only evaluated at vertices then interpolated. Try subdividing the mesh.
1
vote
Accepted
Specular reflection with different viewing direction where reflection direction and viewing direction coincide
The rendering equation is the standard equation that people use to approximate geometric optics in computer graphics. The equation reads:
$$L(x, \omega_o) = L_e(x, \omega_o) + \int_{\Omega_x}f(\...
1
vote
Accepted
Factor of 2 converting radiance to irradiance
I don't really understand what are you doing. I think your first equation shouldn't have a cos factor in it.
We have the relation,
$BRDF = dL_r / dE_i$
That is the brdf is the ratio of reflected ...
1
vote
1
vote
Data fitting SVBRDF with L-M
I read that paper as well last year. There's a strong assumption made by authors which is the "stationary". What this means is that in absence of light in given 3000x2000 pixels image the material is ...
Only top scored, non community-wiki answers of a minimum length are eligible
Related Tags
diffuse × 25brdf × 9
raytracing × 6
lighting × 5
pbr × 5
specular × 5
texture × 3
shading × 3
fresnel × 3
pathtracing × 2
physically-based × 2
global-illumination × 2
reflection × 2
rendering × 1
3d × 1
c++ × 1
mathematics × 1
projections × 1
directx11 × 1
optimisation × 1
javascript × 1
artifacts × 1
transparency × 1
3dtexture × 1
legacy-opengl × 1