The OSL category of shaders (maps) includes several general shaders as well as several subcategories.
| Shader name | Description |
|---|---|
| Bitmap Lookup | Looks up a bitmap from past in UV coordinates through OpenImageIO. |
| Blackbody | Modulates a color between two Kelvin temperatures. |
| Candy | Creates random circles with random colors and a turnable bump output. Useful for random dots or candy sprinkles. |
| Checker | Creates a simple checkerboard. |
Color Key
|
Simple color key shader for rough green/blue screen keying. Can do simple edge cutoffs in UV space and apply a garbage mask if needed. |
| Composite | Alpha-composites one color over another. |
| Digits | Emulates a 7-segment display of numbers. Useful for debugging and showing numbers in SME. |
Falloff
|
Generates a value from white to black based on the angular falloff of the face normals. |
Halftone Dots
|
Halftone dots that work well with toon shaders. |
| Lift/Gamma/Gain | Simple lift/gamma/gain color modifier. |
| Mandelbrot | Generates 4D mandelbrot/julia set. |
| Noise | Generates advances noise. |
| Noise (3D) | Generates more advanced noise in 3D, for color, vector, or individual component outputs. |
| Noise (Gabor) | Generates Gabor noise and exposes its specific options. |
| Randomized Bitmaps | Randomly places (and alpha blends) a set of bitmaps on top of something else. |
| Rivets | Adds rivets along the edges of UV space in 1x1 squares. Squares can be bent for unevenness. |
Simple Gradient
|
Generates gradient with six inputs. Code can be edited to add more inputs if required. |
Simple Tiles
|
Generates various types of tiling. The Tiling Offset modifies the base parameter of the layout and can generate different effects. |
Threads
|
Generates threads on a bolt. Apply as a bump or displacement to a cylinder. |
Toon Width
|
Toon Edge Width is based on how close the surface normal when converted to screen space is to the given direction. |
| UberBitmap | Loads a bitmap via OpenImageIO. Includes UVW channels and transforms in a monolithic version. |
Waveform (animated)
|
Generates various animated waveforms. The output wave is the raw value of the waveform, and an interpretation between the two colors. |
| WaveLength | Modulates a color between two wavelengths of light. |
Weave
|
Generates a simple threaded weave. Useful for everything from cloth to carbon fiber. |
| Subtype | Shader name | Description |
|---|---|---|
| Color | Add (color) | Adds and optionally scales two colors. |
| Clamp (color) | Clamps a color. | |
Color Space
|
Converts RGB/HSV/YIQ/XYZ/xyY. | |
| Components (color) | A utility to combine or split components. | |
| Divide (color) | Divides two colors. | |
| Interpolate (color) | Interpolates two colors based on a third color. | |
| Invert (color) | Inverts (complements) a color number (1-input). | |
| Max (color) | Returns the maximum of two colors. | |
| Min (color) | Returns the minimum of two colors. | |
| Multiply (color) | Multiplies two colors. | |
| Random by Index (color) | Returns a randomized color based on an inputted integer index. | |
| SmoothStep (color) | A smooth step function between two boundaries. | |
| Subtract (color) | Subtracts and optionally scales two colors. | |
Tri-tone (color)
|
Color corrects an input color using highlights/midtones/shadows. | |
| Tweak (color) | Tweaks a color. | |
| Float | Abs | Absolute value of a float. |
| ACos | Arc cosine of a float in radians. | |
| Add | Adds two float numbers (A+B). | |
| Angle | Angle of a 2D vector in radians. | |
| ASin | Arc sine of a float in radians. | |
| ATan | Arc tangent of a float in radians. | |
| Clamp | Clamps a float. | |
| Complement | Complements a float number (1-input). | |
| Cos | Cosine value of an angle in radians. | |
| Degrees to Radians | Converts degrees to radians. | |
| Divide | Divides two float numbers (A/B). | |
| Exp | Computes ex. | |
| Float to Int | Turns a float into an integer. | |
| Interpolate | Interpolates two floats based on a third. | |
| Log | Computes logex. | |
| LogX | Computes logbasex. | |
| Maximum | Returns the maximum of two floats. | |
| Minimum | Returns the minimum of two floats. | |
| Modulo | Modulo (remainder of division) between two floats. | |
| Multiply | Multiplies two float numbers (A*B). | |
| Negate | Negates a float number (-input). | |
| Power | Raises a float to the power of another float (AB). | |
| Radians to Degrees | Converts radians to degrees. | |
| Random by Index | Returns a randomized float based on an input integer index. | |
| Range/Remapper | Maps one range of float numbers into another. | |
| Reciprocal | Reciprocates a float number (1.0/input). | |
| Sin | Sine value of an angle in radians. | |
| SmoothStep | A smooth step function between two boundaries. | |
| Square Root | Computes the square root. | |
| Subtract | Subtracts two float numbers. | |
| Tan | Tangent value of an angle in radians. | |
| Vector | Add Vector | Adds and optionally scales two vectors. |
| Components (vector) | A utility to combine or split vector components. | |
| Cross Product (vector) | Cross product between two vectors. | |
| Distance (vector) | Distance between two points. | |
| Divide (vector) | Divides two vectors. | |
| Dot Product (vector) | Dot product between two vectors. | |
| Invert (vector) | Inverts a vector. | |
| Length (vector) | Length of a vector. | |
| Max (vector) | Returns the maximum of two vectors. | |
| Min (vector) | Returns the minimum of two vectors. | |
| Multiply (vector) | Multiplies two vectors. | |
| Normalize (vector) | Normalizes a vector. | |
| Random by Index (vector) | Returns a randomized vector based on an input integer index. | |
| Subtract (vector) | Subtracts and optionally scales two vectors. |
| Shader name | Description |
|---|---|
| Frame Number | Returns the current frame number. |
| Material ID | Returns the Material ID (or the Particle ID for Particles) as a color or a number. |
| Named Attribute | Returns any named attribute, as well as user-defined per-object properties. |
| Node Handle | Returns the NodeHandle as a number. Useful for driving a per-object based randomizer. |
| Node Name/Hash | Returns the node name or its hash for use in randomization. |
Normal
|
Returns the normal in the specified coordinate space. |
| ObjectID | Returns the object id as set in the Object Properties dialog as a color or a number. |
| Particle Age | Returns the normalized particle age. |
| Time (seconds) | Returns the current time in seconds. |
| Wire Color | Returns the wireframe color. |
| Shader name | Description |
|---|---|
| 1 to 10 (color) | Pick one of ten inputs. |
| 1 to 10 (float) | Pick one of ten inputs. |
| 1 to 5 (color) | Pick one of five inputs. |
| 1 to 5 (float) | Pick one of five inputs. |
| Compare | Returns different colors/floats depending on whether the two values are less than, equal to, or greater than each other. |
| Greater Than | Returns two different colors for values that are greater than or not. |
Random Index by Number/Color
|
Returns a random index based on an input number or color. |
| Shader name | Description |
|---|---|
| Named Coord Space | Converts to a named coordinate system. |
| UVW Channel | Returns a UVW coordinate from a 3ds Max map channel. |
| UVW Environment | Environment mapping. |
UVW MatCap
|
Generates MatCap UV coordinates. Connects to a Bitmap Lookup containing an image of a MatCap material sphere. |
| UVW Object Space | Returns an object space coordinate. |
| UVW Row Offset | Offsets each row of a UVW coordinate in the U direction. Allows you to create effects like stacking bricks. |
| UVW Transform | Scales, tiles and rotates UVW coordinates. |
| Shader name | Description |
|---|---|
| Color | Returns a color value. |
| File Name | Returns a filename. |
| Float | Returns a float value. |
| Integer | Returns an integer value. |
| Numbered File Name | Appends a 4 digit number to a filename (for image sequence). |
| String | Returns a string value. |
| Vector | Returns a vector value. |