Shadow Messages

Action Messages

  • SHADOW_LIGHT_CREATE - Creates a new shadow generating light source. The highest common ancestor of the currently selected geometry is used as the shadow casting object. If no geometry is selected, then the entire scene is used as the caster. This message is undoable and broadcastable. This message will trigger the following response messages: SHADOW_LIGHT_CREATED. This default maximum wait time for this message is 10.

    Parameters:

    • receiver (unicode) - The ID of the object that will receive the shadow.

  • SHADOW_LIGHT_DELETE - Deletes the shadow generating light source with the specified ID. This message is broadcastable.

    Parameters:

    • ID (unicode) - The ID of the shadow generator node to be deleted. (To get the shadow generator node ID, create a custom script that listens to the SHADOW_LIGHT_REQUEST_LIST message.)

  • SHADOW_LIGHT_REQUEST_LIST - Requests that a new SHADOW_LIGHT_LIST message be issued.

  • SHADOW_LIGHT_REQUEST_PARAMETERS - Requests that a new SHADOW_LIGHT_PARAMETERS message be issued.

  • SHADOW_LIGHT_SWITCH - Turns the shadow lights on or off. This message is undoable and broadcastable.

    Parameters:

    • enable (bool) - True to turn the shadow lights on, False to turn them off.

  • SHADOW_POSITION_END - Ends interactive shadow positioning.

  • SHADOW_POSITION_START - Starts interactive shadow positioning. The user will be able to position the the shadow until the SHADOW_POSITION_END message is processed.

  • SHADOW_RECEIVER_REPLACE - Changes the shadow receiver object in all active shadow generators from the given current receiver to the specified new receiver. Any shadow generators whose receiver does not match the active one specified will remain unchanged. This message is undoable and broadcastable.

    Parameters:

    • activeShadowReceiver (unicode) - The ID of the shadow receiver to be replaced.

    • newShadowReceiver (unicode) - The ID of the new shadow receiver.

  • SHADOW_SELECT_ALL_CASTERS - Selects the current shadow caster objects in the scene. This message is undoable and broadcastable.

  • SHADOW_SET_CASTER - Sets the shadow caster to either all objects in the scene or the lowest common ancestor of the selected objects. This message is undoable and broadcastable. This message will trigger the following response messages: SHADOW_CASTERS_CHANGED. This default maximum wait time for this message is 10.

    Parameters:

    • selectAll (bool) - True to set all objects as casters, False to set just the selected objects.

    • operation (unicode) - One of 'Replace', 'Add', 'Subtract'.

  • SHADOW_SET_CASTER_OBJECTS - Internal message. Sets the specified objectIds as the shadow caster objects and applies them to the current shadows in the scene. Used primarily for supporting the undo of SHADOW_SET_CASTER messages. This message is undoable and broadcastable.

    Parameters:

    • objectIds (list) - The shadow caster node IDs.

    • operation (unicode) - One of 'Replace', 'Add', 'Subtract'.

  • SHADOW_SET_COLOR - Modifies the color of rendered shadows in the current scene. This message is undoable and broadcastable. This message will trigger the following response messages: SHADOW_COLOR_CHANGED. This default maximum wait time for this message is 10.

    Parameters:

    • rgb (list) - RGB values in the range [0, 1.0]. (To convert RGB values to this range, divide by 255.)

  • SHADOW_SET_FALLOFF_POWER - Modifies the rate of decay of the shadow intensity over the falloff range distance (drop-off rate). This message is undoable and broadcastable. This message will trigger the following response messages: SHADOW_FALLOFF_POWER_CHANGED. This default maximum wait time for this message is 10.

    Parameters:

    • exponent (float) - Exponent value used to scale the shadow intensity, in the range [0.01, 10.0].

  • SHADOW_SET_FALLOFF_RANGE - Modifies the distance over which shadow intensity falls off to zero (drop-off distance). This message is undoable and broadcastable. This message will trigger the following response messages: SHADOW_FALLOFF_RANGE_CHANGED. This default maximum wait time for this message is 10.

    Parameters:

    • distance (float) - The distance at which shadow intensity will be none.

  • SHADOW_SET_INTENSITY - Modifies the intensity of rendered shadows in the current scene. This message is undoable and broadcastable. This message will trigger the following response messages: SHADOW_INTENSITY_CHANGED. This default maximum wait time for this message is 10.

    Parameters:

    • intensity (float) - The shadow intensity value in the range [0, 1.0].

  • SHADOW_SET_RADIUS - Modifies the radius of the shadow generating lights (the softness of the shadow) in the current scene. This message is undoable and broadcastable. This message will trigger the following response messages: SHADOW_RADIUS_CHANGED. This default maximum wait time for this message is 10.

    Parameters:

    • radius (float) - The light radius value used to affect the shadow penumbra. A shadow with a defined edge has a value of 0.5 (100%) while a shadow with a blurry edge has a value of 0.

  • SHADOW_SET_RECEIVER - Adds/replaces/removes the object(s) as shadow receivers on the main scene light (environment light). This message is undoable and broadcastable.

    Parameters:

    • objects (tuple) - The list of objects to become receivers. If nothing is specified, the currently active objects are used.

    • operation (unicode) - One of 'Replace', 'Add', 'Subtract'.

  • SHADOW_SET_RECEIVER_OBJECTS - Replaces the given object(s) as shadow receivers on the main scene light (environment light). This message is undoable and broadcastable.

    Parameters:

    • objects (tuple) - The list of objects to be receivers.

  • SHADOW_SET_RESOLUTION - Modifies the resolution of the shadow textures. This message is undoable and broadcastable. This message will trigger the following response messages: SHADOW_RESOLUTION_CHANGED. This default maximum wait time for this message is 10.

    Parameters:

    • resolution (int) - The pixel width of the textures used for shadow rendering. The value should be a power of two in the range [32, 2048].

Information Messages

  • SHADOW_LIGHT_LIST - Lists the IDs of all shadow generatoring light sources in the current scene.

    Parameters:

    • namelist (list) - List of shadow generator node IDs.

  • SHADOW_LIGHT_PARAMETERS - Contains the current shadow light parameter values.

    Parameters:

    • value_map (dict) - Map containing the light parameters with the following keys: 'SHADOW_LIGHT_SWITCH' (boolean), 'SHADOW_SET_RESOLUTION' (integer), 'SHADOW_SET_INTENSITY' (float), 'SHADOW_SET_COLOR' (3-vector), 'SHADOW_SET_RADIUS' (float), 'SHADOW_SET_FALLOFF_RANGE (float)', 'SHADOW_SET_FALLOFF_POWER (float)', 'SHADOW_SET_CASTER (list)'. Note that 100% softness (SHADOW_SET_RADIUS) is 0.5.

  • SHADOW_POSITION_DRAG_ENDED - Indicates that interactive shadow positioning has ended.

  • SHADOW_POSITION_DRAG_STARTED - Indicates that interactive shadow positioning has started.

Response Messages

  • SHADOW_CASTERS_CHANGED - Internal message. Indicates that the shadow caster objects have changed to the specified node IDs. Used primarily for supporting undo of SHADOW_SET_CASTER messages.

    Parameters:

    • objectIds (list) - A list of the new caster IDs.

  • SHADOW_COLOR_CHANGED - Indicates that the color of rendered shadows in the current scene has changed.

    Parameters:

    • rgb (list) - RGB values in the range [0, 1.0]. (To convert RGB values to this range, divide by 255.)

  • SHADOW_FALLOFF_POWER_CHANGED - Indicates that the rate of decay of the shadow intensity over the falloff range distance (drop-off rate) has changed.

    Parameters:

    • exponent (float) - Exponent value used to scale the shadow intensity, in the range [0.01, 10.0].

  • SHADOW_FALLOFF_RANGE_CHANGED - Indicates that the distance over which shadow intensity falls off to zero (drop-off distance) has changed.

    Parameters:

    • distance (float) - The distance at which shadow intensity will be none.

  • SHADOW_INTENSITY_CHANGED - Indicates that the shadow intensity has changed.

    Parameters:

    • intensity (float) - Shadow intensity value in the range [0, 1.0].

  • SHADOW_LIGHT_CREATED - Indicates that the shadow generating light source has been created.

  • SHADOW_RADIUS_CHANGED - Indicates that the radius of the shadow generating lights (the softness of the shadow) has changed.

    Parameters:

    • radius (float) - The light radius value used to affect the shadow penumbra. A shadow with a defined edge has a value of 0.5 (100%) while a shadow with a blurry edge has a value of 0.

  • SHADOW_RESOLUTION_CHANGED - Indicates that the shadow resolution has changed. This message is undoable.

    Parameters:

    • resolution (int) - The pixel width of the textures used for shadow rendering. The value should be a power of two in the range [32, 2048].