function
Function syntax
llSetLinkAlpha(integer link,// Link number (1 for root, >1 for children) or a LINK_* flag. Values: Linksfloat alpha,// Transparency value to set, from 0.0 (clear) to 1.0 (solid).integer face// Face number orALL_SIDES. Values: Faces
);- Energy
- 10
If a prim exists in the link set at link, set the Blinn-Phong alpha on face of that prim.
llSetLinkAlpha(0, 0.0, 0);Caveats
Section titled “Caveats”-
llSetLinkAlphawill have no visible effect on faces with a PBR material. To work on faces both with and without a PBR material, use one of these snippets: -
invisible
if (llIsLinkGLTFMaterial(LINK_THIS, ALL_SIDES)) {llSetLinkGLTFOverrides(LINK_THIS, ALL_SIDES, [OVERRIDE_GLTF_BASE_ALPHA_MODE, PRIM_GLTF_ALPHA_MODE_BLEND, OVERRIDE_GLTF_BASE_ALPHA, 0.0)]);} else {llSetLinkAlpha(LINK_THIS, 0.0, ALL_SIDES);} -
visible
if (llIsLinkGLTFMaterial(LINK_THIS, ALL_SIDES)) {llSetLinkGLTFOverrides(LINK_THIS, ALL_SIDES, [OVERRIDE_GLTF_BASE_ALPHA_MODE, "", OVERRIDE_GLTF_BASE_ALPHA, "")]);} else {llSetLinkAlpha(LINK_THIS, 1.0, ALL_SIDES);}
Examples
Section titled “Examples”Example 1
5 collapsed lines
// Make the entire object disappear for 5 seconds
default{ touch_start(integer num_detected) { // transparent llSetLinkAlpha(LINK_SET, 0.0, ALL_SIDES); llSetTimerEvent(5.0); }
timer() { // opaque llSetLinkAlpha(LINK_SET, 1.0, ALL_SIDES); llSetTimerEvent(0.0); }}Example 2
9 collapsed lines
// when the object is touched,// fade it out and back in again
default{ touch_start(integer num_detected) { // fade out float alpha = 1.0; while (alpha >= 0.0) { llSetLinkAlpha(LINK_SET, alpha, ALL_SIDES); alpha -= 0.001; }
// fade in while (alpha < 1.0) { alpha += 0.001; llSetLinkAlpha(LINK_SET, alpha, ALL_SIDES); } }}Example 3
40 collapsed lines
// Makes selected prims in a linkset become transparent or visible on chat command. Give each prim a unique name.
list PrimList = ["ALL"];// Start our prim list with a dummy entry, so that the index into this list will correspond directly to the link number// By making the dummy entry 'ALL' we provide a match for that option too
default{ changed (integer change) { if (change & CHANGED_LINK) llResetScript(); }
state_entry() { integer PrimCount = llGetNumberOfPrims(); llListen(37, "", NULL_KEY, ""); // listen to chat commands from anyone on channel 37 integer i; for (i = 1; i <= PrimCount; ++i) PrimList += llToUpper(llGetLinkName(i) ); // Build a list of upper-case link names, where list position equals link number }
listen(integer channel, string name, key id, string msg) { list TempList = llCSV2List( llToUpper(msg) ); // make a list from upper-case version of user command line integer ListLen = llGetListLength (TempList); integer alpha = (llList2String(TempList, 0) == "SHOW"); // 'SHOW' sets selected prims visible, otherwise set them transparent // e.g. HIDE,PLATE,SPOON,NAPKIN <---- makes named prims invisible // e.g. SHOW,ALL <---- makes all prims visible
integer i; for (i = 1; i < ListLen; ++i) { string ThisPrim = llStringTrim(llList2String(TempList, i), STRING_TRIM); integer LinkNumber = llListFindList(PrimList, [ThisPrim]); if (~LinkNumber) // i.e. if LinkNumber != -1 { if (!LinkNumber) LinkNumber = LINK_SET; // list position 0 is 'ALL'
llSetLinkAlpha(LinkNumber, alpha, ALL_SIDES); } } }}See also
Section titled “See also”Functions
Section titled “Functions”llGetAlpha— Gets the prim’s alphallSetAlpha— Sets the prim’s alphallGetColor— Gets the prim’s colorllSetColor— Sets the prim’s colorllSetLinkColorllSetLinkTexturePRIM_COLOR— The equivilant parameter for llSetPrimitiveParamsPRIM_GLTF_BASE_COLOR— The equivilant PBR parameter for llSetPrimitiveParams
Events
Section titled “Events”Original wiki source
Some wiki templates and tables need their original context. View this article on the Second Life Wiki. Technical wording and examples are retained from the source; historical guidance may differ from current behavior.