Skip to main content
16 votes
Accepted

Why does graphics speak of "dielectrics" rather than insulators?

Strictly speaking, dielectrics are not necessarily insulators. For example, salt water is a reasonable conductor but also a dielectric. The term "dielectric" tends to show up in discussion of the ...
Nathan Reed's user avatar
7 votes
Accepted

How can a diffused(frosted) glass be modelled in path tracing

Assuming that you are familiar with the concept of BSDFs, the usual way of modelling rough dielectric surfaces (i.e. glass, water, plastics) is to use microfacet-based models like Microfacet Models ...
ivokabel's user avatar
  • 1,464
7 votes

What is the difference between glossy and specular reflection?

The charts you show aren't showing two different phenomena - "glossy reflection" and "specular reflection" - they're showing two parameters of specular reflection. One is the specularity or specular ...
Dan Hulme's user avatar
  • 6,810
7 votes
Accepted

Path tracer - multi layered materials and importance sampling

Wenzel Jakob et al presented a framework for layered Materials at SIGGRAPH 2014. Section 6.2 explains importance sampling. If you prefer code over equations, the method is implemented in the Mitsuba ...
Stefan Werner's user avatar
6 votes
Accepted

Mimicking Blender's "roughness" in my path tracer

For explicit light sampling: yep, you just evaluate the BRDF for that incoming direction and the output direction back toward the camera. There's probability involved in the case of an area light: you ...
Nathan Reed's user avatar
5 votes
Accepted

Phong: Real-time rendering of Metal and Plastic Materials

Diffuse colours on materials typically come from within the material, while the specular colour is from the very surface. Coloured plastic materials are made by embedding particles of dye inside a ...
Dan Hulme's user avatar
  • 6,810
5 votes
Accepted

Is there a material that contributes to GI, but isn't directly visible?

You can use single sided triangles for the ceiling so that they are pointing towards the room. This way the ceiling influences the GI in the room but you can see through it when observing from outside
JarkkoL's user avatar
  • 3,636
4 votes

What is the most physically accurate model of surface materials possible in computer graphics?

BRDFs are not accurate for any dielectric surface, as all of them have some degree of subsurface scattering. A BSSRDF is also just an approximation based on the assumption of a semi-infinite slab. ...
Stefan Werner's user avatar
4 votes

How can I implement this BSDF?

When implementing transmission into a path tracer you have to keep in mind that neither BRDF's nor your previous sampling method are gonna cut it. You will need to think about what happens to light on ...
Sebastián Mestre's user avatar
4 votes

Examples of anisotropic surfaces

A really common case in the real world are industrially fabricated metal surfaces which often contain patterns (due to their creation process) with strongly anisotropic surface distributions, ...
TravisG's user avatar
  • 171
3 votes
Accepted

Examples of anisotropic surfaces

Most manufactured items that are made by grinder, milling, shaper or lathe that have not been polished. Due to tiny grooves caused by the cutting head. Intentionally brushed surfaces. Mainly to make ...
joojaa's user avatar
  • 8,437
3 votes

What is the difference between glossy and specular reflection?

Gloss and Specularity are features of the surface. In modern PBR terms we usually refer to the smoothness and metalness of a surface instead (unless you use a specular workflow, then metalness is ...
Karim Abdel Hamid's user avatar
3 votes
Accepted

Iridescence/Thin-film interference integration as a layer

Unfortunately, the iridescence model is not made to be applied to a diffuse term. Pascal and I made it for microfacet models only (that is the specular term). One way to understand how to include it ...
Laurent Belcour's user avatar
2 votes
Accepted

Material Layering

It would be too expensive (both performance and memory wise) to evaluate BRDF first for each material layer and then blend the layers. Thus the material layer parameters & textures are rather ...
JarkkoL's user avatar
  • 3,636
2 votes

Loading a material via assimp

AI_MATKEY_COLOR_TRANSPARENT is used to define the transparent colour and AI_MATKEY_REFRACTI is the refractive index.
PaulHK's user avatar
  • 2,322
2 votes

Why does graphics speak of "dielectrics" rather than insulators?

It is not especially related to graphics but physics, and especially, interaction between electromagnetic waves (like light) and matter, i.e. microphysics of optics. Metals have free electrons, and ...
Fabrice NEYRET's user avatar
1 vote
Accepted

Converting from RGB Color Picker to Surface Reflectance

Yes, I think you're right. The values from a typical color picker would be in a gamma encoding or sRGB encoding and would need to be converted to linear to use as reflectance. This is probably just a ...
Nathan Reed's user avatar
1 vote

How to read illum value from mtl file using Assimp library?

According to the source (https://github.com/assimp/assimp/blob/b7df376836e36c4b6998ce95d97626e30f61c2f0/code/AssetLib/Obj/ObjFileImporter.cpp#L594) only illum values of 0, 1, 2 are supported: ...
J Mills's user avatar
  • 111
1 vote
Accepted

Microfacet BRDF artifacts

It turns out that the ring was happening from a negative divided by a negative, so adding nom = max(nom, 0.0); fixed the problem. The new highlight, amplified:
Sam's user avatar
  • 198
1 vote
Accepted

Confused on reflection coeffcient of Fresnel equations

We have $t_{12} = t_{21}$, by the law of reciprocity. Also, $$r_{12} + t_{12} = 1\\r_{21} + t_{21} = 1$$ It follows that $r_{12} = r_{21}$ as well.
Nathan Reed's user avatar
1 vote
Accepted

Understanding material .mtl files

@PaulHK explained it very well in the comment section: Ambient is a (rough) approximation of indirect lighting. For example, an outdoor object would be lit by the sun but the surfaces facing away ...
Varaquilex's user avatar
1 vote

Combine material coefficients and textures in Phong Shading

When applying various types of attenuation you are just multiplying by some number smaller than 1. This is akin to every atom of your material having some probability of absorbing the light that hits ...
Sebastián Mestre's user avatar
1 vote
Accepted

Confused about material layering

There is no single method of layering materials. Some implementations, as you have observed, simply interpolate shader input parameters. This helps especially in contexts where code divergence comes ...
Stefan Werner's user avatar
1 vote

What is the difference between glossy and specular reflection?

I've noticed a lot of confusion in the use of terminology in this field, sometimes also scientific papers or software packages misuse these words, I agree with @gallickgunner explanation. To sum up ...
rikkarlo's user avatar
1 vote

Phong: Real-time rendering of Metal and Plastic Materials

https://courses.cs.washington.edu/courses/cse458/99sp/projects/help/phong_params.html ...
andrewchan2022's user avatar

Only top scored, non community-wiki answers of a minimum length are eligible