3

I am trying to implement rough dielectrics on my renderer. I compared the results of my renderer and Mitsuba renderer. However, a thin glass plate which is a cube scaled by (0.4, 0.4, 0.01) magnifies the object in front of it in Mitsuba while it does not magnify in my renderer. Do I miss something or does Mitsuba renderer do something wrong?

edit: IOR of glass is 1.1 and outside is air.

Result of my renderer: Result of my renderer

Result of mitsuba: Result of mitsuba

Mustafa Işık
  • 417
  • 4
  • 8
  • 3
    A thin glass plate should not magnify like this (if it did, you would see this every time you look through a window in real life!). Could you share how the glass plate is set up in your Mitsuba scene file? Perhaps there's something off about it. – Nathan Reed May 01 '18 at 21:24
  • 1
  • 1
    Just a side note: IoR of 1.1 is a heavily unrealistic value for glass, which is typically in interval 1.5-1.6 causing much stronger refraction effect. – ivokabel May 02 '18 at 08:28

1 Answers1

8

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 magnification effect: the box with smooth normals forms a convex lens!

By adding this line to the box object in the scene file:

<boolean name="faceNormals" value="true"/>

I got results that look equivalent to yours:

Mitsuba render with face normals

Nathan Reed
  • 25,002
  • 2
  • 68
  • 107