appleseed Users Forum

OSL shaders in 3ds Max 2019+


#1

Hello all,

since the release of 3ds max 2019, autodesk has implemented a native library of .osl shader along with a nice editor to modify .osl on the fly from in the material editor.

it would be very nice to implement support for the native OSL implementation of 3ds max in appleseed.

any ideas or suggestion ?


#2

Hi Laurent,

I couldn’t agree more!

I’m not quite sure what this entails though. We’ll need to look into it, but we would certainly welcome any help on that topic :slight_smile:


#3

Hi Laurent,

Some details.
You can use Max’s own built-in OSL Map shader node with appleseed materials, for instance as a procedural texture node for the appleseedDisney shader (see screenshot).
For this to work you have to enable Use Max Procedural Mapsin the System section of the render settings.

These are the good news. Now, the bad news is then you won’t be able to use the newer appleseeed OSL materials, only the appleseed built-in ones, and you won’t be able to export the scene to an appleseed project file.

Obviously this is not a good solution. To fix this Max procedurals would need to be re-implemented in OSL and added to the current appleseed shader family, similar as it is done in appleseed-Maya.


#4

That would be one solution, but it’s not a solution we’re really considering (the Use Max Procedural Maps mode was more of a stopgap measure and might go away at some point).

There ought to be a way to use Max’s OSL shaders directly with appleseed, but again I haven’t looked into what that entails.


#5

Whenever i enable the “use max procedural map” option in the GUI, max 2019 will crash to desktop.

is there any default, like the standard material that is supported at all by appleseed ?
i’m trying to avoid having custom material to be used, and having general one that are compatible - with other renderer for instance.


#6

The Use Max Procedural Maps works with these materials:

Capture

If you have any appleseed OSL material in your scene it wont work. When you start a new scene then you have to decide if you want to use the switch or not. It is not meant to be changed later like other render settings. As @franz said, it is more of a stopgap solution right now. That said, as you see from my example, you can then use the Max OSL Map and load any of the example OSL files which ship with Max 2019.

In the future we will have an appleseed OSL-source shader, so you can load any OSL source file in the same way like the Max OSL Map works.