Jump to content
marcosimonvfx

Impossible to get crisp reflections with principled shader

Recommended Posts

Hi,

 

at work I discovered a problem trying to get mirror-like, completely sharp reflections.

My setup is super simple: A Sphere, in the center a camera that views towards a grid. The sphere has a high resolution texture, the grid has a mirror-like material: Everything but reflectivity is set to 0, roughness is at 0.

I've tried with both the principled shader as well as the classic shader (I'm using the education license of 16.5 here at home). I attached a picture I get with both the principled as well as the classic shader.

 

However! The classic shader let's me change the shading model. If I switch this to for example phong, I get super crisp and clear reflections as expected (attachment 2).

Is there a way to get as crisp reflections in the principled shader?

 

I attached the scene if anybody wants to play.

hou_00A.JPG

hou_00B.JPG

mirror_reflection.rar

Share this post


Link to post
Share on other sites

I don't think this is possible without modifying the Principled Shader, since it's using GGX as its specular model and there's no parameter to change that. I'm not sure if this is an inherent problem with the GGX microfacet model or with Houdini's implementation of it, but GGX will not resolve to a mirror surface.

If you wanted to force the Principled Shader to allow for non-GGX specular models, you need to right-click > Allow Editing of Contents, then dive inside, find the Principled Shader Core node, Allow Editing of that node, then look for the node "metallic_reflection" and change the Specular Model there to Phong or Blinn. Then jump out and set your material's Base Color to be pure white, and Metallic to 1.0. That should create a pure mirror material.

I hope in future builds that SideFX can add a switch in here to override the specular model if roughness is zero. Might be worth an RFE?

Share this post


Link to post
Share on other sites

AFAIK, you can also use directly the Classic Shader, which has some functionality the Principled shader has not included, including, if I remember correctly, changing the reflection model

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

×