How to create physically Based Material with Python

Hi @nathanletwory,

thank you for adding this to the bugtracker. I ended up using a completely different way to create the Physical Material from scratch with all slots as defined in the rmtl. This way it was possible to skip messing around with SimulatedMaterial and there is access to all slots without “jumping through hoops” :wink:

Speaking about the Physical Material GUI, i hope there is still room for improvements. Since all the settings do not provide sliders but numeric input fields, i find them hard to edit. Especially if you position the mouse in an input field and scroll to change the value, it sometimes scrolls the panel content instead of the value. Can this be please improved ? It does not happen with eg. numeric fields of the Custom Material.

A real show stopper of the Physical Material is the fact that bump / normal displacement displaces only bi-directional. I’ve asked this some months ago and it would be really helpful to displace in normal direction (outward only). IMHO this is what an average user expects to happen by default instead of the current behaviour. Perfect would be to have a “Direction” dropdown which allows users to set this, eg. Bi-Directional, Normal, +Z, -Z or custom Vector as it works in Blender.

Hopefully @andy reads this too.

The bug i’ve reported that the Physical Material displays reflections incorrectly when only a displacement is applied is still there and no bug report exists for it. A user is required to assign the same image as bump to get proper reflections. Is this by design and if so, what is the purpose of it ?

The density level when displacing subd objects is ignored by the PM shader using rendered or shaded viewports. It’s stuck to the default division level but i need much higher levels to use it.

Please, please fix these bugs in Rhino 7 and don’t postpone them to Rhino 8.

thanks,
c.