12 votes
Accepted

What explains the high specularity of metals?

Warning: I am not a physicist. As Dan Hulme already explained, light can't travel through metals, so dealing with IOR is a lot more... complex. I will answer why that happens and how to calculate the ...
Samu's user avatar
  • 546
8 votes
Accepted

Choosing Reflection or Refraction in Path Tracing

TL;DR Yes, you can do it like that, you just have to divide the result by the probability of choosing the direction. Full Answer The topic of sampling in path tracers allowing materials with both ...
ivokabel's user avatar
  • 1,464
8 votes
Accepted

Can a glass plate act like a lens?

The box.obj file has no vertex normals, and by default Mitsuba will generate smooth normals for OBJ files that don't specify their own normals. This creates the ...
Nathan Reed's user avatar
7 votes
Accepted

Refraction in a Ray Tracer: What do with an intersection within the medium?

this is an interesting question (and I am actually an author on Scratchapixel so I can maybe help on that one)). Things go as follows: you cast the primary ray into the scene the ray hits the glass ...
user18490's user avatar
  • 656
6 votes

What explains the high specularity of metals?

Look at the refractive index of several metals. They are all complex numbers and the math does work out when you put this into the fresnel equation: you get the expected high reflectivity at all ...
Olivier's user avatar
  • 1,585
5 votes

Refraction in a Ray Tracer: What do with an intersection within the medium?

You need to spawn a new ray at each IOR interface. So let's say your ray hits the surface of the glass object. You spawn a new ray from the intersection point along the new IOR direction for air->...
PaulHK's user avatar
  • 2,322
4 votes
Accepted

Name and influence of style used for futuristic line patterns?

That looks a lot like it’s based on the straight skeleton of some outline shapes drawn on the image. You can see similar structures in the middle one of these diagrams from a research page by Stefan ...
Noah Witherspoon's user avatar
3 votes

How does Unreal Engine 5's Lumen (most likely) implement reflections?

Whether you use Lumen with hardware acceleration or not, Lumen is based on ray tracing. Software mode uses signed distance fields (SDF) to find intersections along a ray and so called cards to store ...
Mathis's user avatar
  • 139
3 votes
Accepted

How to handle specular highlights with reflection / total internal reflection in a ray tracer?

But, at this point, do i apply a specular highlight to the surface that i hit from the inside? Unless you have a light source inside your object, there's no point in doing lighting on the inside ...
Olivier's user avatar
  • 1,585
2 votes

What explains the high specularity of metals?

The refractive index is related to the speed at which light travels through the medium, and only applies to materials which are at least partially transparent. Metals are electrically conductive, so ...
Dan Hulme's user avatar
  • 6,810
2 votes
Accepted

Refraction: given an incoming and transmitted direction, can I deduce the normal?

See equation (16) in Microfacet Models for Refraction through Rough Surfaces : $-(\eta_i w_i + \eta_o w_o)$ which you'll probably want to normalize. $\eta$ are the two indices of refraction and $w$ ...
Olivier's user avatar
  • 1,585
1 vote

Raytracing in OpenGL or Vulkan?

Is it possible to trigger OpenGL to render a new image consisting of just one pixel for the refracted ray in the main function in the fragment (pixel?) shader? OpenGL does not know what your data is. ...
Nicol Bolas's user avatar
  • 9,782
1 vote

Debugging refraction in a sphere

You need to make use of a discriminant, also when dealing with floating point comparisons it is wise to use an epsilon (small value for accommodating fp-error). Also keep in mind that it matters ...
AnnoyinC's user avatar
  • 312

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