LlSetRenderMaterial

From Second Life Wiki
Revision as of 12:39, 4 October 2022 by Cosmic Linden (talk | contribs)
Jump to navigation Jump to search

Summary

Function: llSetRenderMaterial( string material, integer face );

Sets the material of this prim's face.

• string material a material in the inventory of the prim this script is in or a UUID of a material
• integer face face number or ALL_SIDES

If face is ALL_SIDES then the function works on all sides.

Caveats

  • This function causes the script to sleep for 0.2 seconds.
  • The function silently fails if its face value indicates a face that does not exist.
  • If material is missing from the prim's inventory and it is not a UUID or it is not a material then an error is shouted on DEBUG_CHANNEL.
  • If material is a UUID then there are no new asset permissions consequences for the object.
    • The resulting object develops no new usage restrictions that might have occurred if the asset had been placed in the prims inventory.This function will be supported in the upcoming GLTF Materials project.
      Currently it will only work in supported testing areas with a supported test viewer.
All Issues ~ Search JIRA for related Bugs

Examples

default
{
    state_entry()
    {
        // the first material alphabetically inside the same prim's inventory
        string material = llGetInventoryName(INVENTORY_MATERIAL, 0);

        // set it on all sides of the prim containing the script
        llSetRenderMaterial(material, ALL_SIDES);
    }
}

Deep Notes

Search JIRA for related Issues

Signature

function void llSetRenderMaterial( string material, integer face );