• An Introduction To Open Shading Language

    From Lawrence D'Oliveiro@21:1/5 to All on Wed Jul 30 00:14:24 2025
    XPost: comp.graphics.rendering.misc

    Been watching the video from this course <https://dl.acm.org/doi/10.1145/3664475.3664534> that was presented by
    a certain Mitch Prater at SIGGRAPH 2024 on writing OSL shaders. OSL is supported nowadays by a bunch of 3D tools, among them RenderMan and
    Blender. It seems the only one of these the presenter is familiar with
    is RenderMan.

    What struck me is, in a two-hour talk, he didn’t once go into the
    concept of the “closure color”, which is the special OSL type that encapsulates the totality of the interaction between light and the
    material. He gives example shaders that compute elaborate textures
    and transform between coordinate systems, but nothing on closures.
    Without these, what kind of renderer would you have?

    Could it be that RenderMan does not support that feature of OSL?

    In OSL (at least the current version), you do not construct closure
    values from scratch. Instead, you start with the builtin closure
    functions that represent elemental material characteristics like
    diffuse, glossy etc <https://open-shading-language.readthedocs.io/en/v1.13.12.0/stdlib.html#material-closures>,
    and compose these into expressions that evaluate to the desired
    overall material behaviour.

    If you want a renderer that does integrate the totality of OSL,
    including closures, have a look at Blender Cycles.

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)