Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Comment: Reverted from v. 12 for 3.5

...

Overview

...

Section
Column
width50%

The VRayOSLTex texture map can be used to load Open Shading Language Language  OSL shader code files (.osl) or OSL object OSL object code files (.oso) and render them directly with V-Ray. The VRayOSLTex plug-in can be used with shaders that have simple color and float output parameters. These parameters are considered respectively as texture RGB and alpha outputs.

If the shader file describes a material (rather than a texture) and writes its result in an output closure color parameter, it is advised to use the VRayOSLMtl material. Otherwise, the texture map will not evaluate the materials and would be rendered black. See the the V-Ray OSL page  page for more detailed description and examples. In the example shown here subsurface scattering OSL file has been used.

 For more on OSL in general, see the Github referenceclick here.

Column
width5%

 

Column
width45%

...

UI Path: ||Material Editor window|| > Material/Map Browser > Maps > V-Ray > VRayOSLTex

 

Coordinates and Noise

...


Image Modified

 

 



Coordinates and Noise are the standard 3ds Max texture rollouts.

 


General

...

The General rollout holds parameters that control common shader characteristics.

shader file – Specifies the.oslor or .osofile  file which contains the shader (object) code. This button control also supports a context menu with the following options:

Clear – Unloads the current shader and restores the plug-in as if no shaders have been loaded.
Reset  – Reloads the shader and resets its parameters to the default values.
Reload  – Reloads the shader but keeps the current parameter values.
Open Containing Folder  – Reveals the shader location in Explorer.
Open in External Editor  – Opens the shader in an appropriate text editor.
Recent Files  – Holds a list of the recently loaded shaders and an option to clear the list.

If you edit your OSL shader the new version would be loaded only after a ClearReset, or a Reload option has been selected.

color output – Specifies the color source for the texture's RGB output. If "None" is selected the texture renders black.

alpha output – Specifies the float source for the texture's alpha output. If "None" is selected the texture is considered fully opaque.

show preview – Determines whether to render a shader preview in the material editor.

clamp shader result  – Determines whether to force the result in the [0, clamping   Clamping limit ] range or not.

clamping limit – Specifies the upper clamp limit if clamp if Clamp shader result is  is enabled.

wrap texture coordinates – Automatically wraps the texture coordinates for the OSL shader passing only values in the [0.0, 1.0] range.

Save oso shader – Saves – Enabled only if an  .osl  shader is loaded this button control allows the user to save it as an object code shader (.oso). This button is enabled only if an .osl shader is loaded.

 


Compiler Output

...

The Compiler Output rollout holds shader compilation and manipulation result messages.

 


Shader parameters

...

Any additional shader–specific parameters (if any) from  from the loaded shader file are listed in this rollout.

 

Notes

...

Fancy Bullets
typecircle
  • The VRayOSLTex texture and VRayOSLMtl are The VRayOSLTex texture and VRayOSLMtl are only available in 3ds Max 2011 and later.
  • The VRayOSLTex texture The VRayOSLTex texture automatically compiles OSL shaders  OSL  shaders to object code (OSO format) upon shader selection. No following compilations occur (even at render events). If the loaded loaded  OSL shader is modified use the context menu options options  Reset or Reload of the Shader file button for your changes to take effect.
  • An OSL compiler that translates *.osl files to *.oso files can be found in the tools subdirectory of V-Ray's root installation folder.
  • If the oslutil.h or stdosl.h include files need to be placed without modifying the V-Ray environment variable VRAY_OSL_PATH_3DSMAX####_x64, create a folder named vrayosl in the folder C:\Program Files\Autodesk\3ds Max #### and copy the include files into it. The default location for the include files is C:\Program Files\Chaos Group\V-Ray\3dsmax #### for x64\opensl.

 

References

...

OSL home page at SPI – Open Shading Language home page at Sony Pictures Imageworks

OSL Google Code page – Google Code project page for Open Shading Language

OSL GitHub page  – GitHub project page for Open Shading Language