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. |