OsSetDynamicTextureDataBlend

From OpenSimulator

(Difference between revisions)
Jump to: navigation, search
m
 
(21 intermediate revisions by 2 users not shown)
Line 1: Line 1:
 
{{osslfunc
 
{{osslfunc
 
|threat_level=VeryLow
 
|threat_level=VeryLow
|function_syntax=string osSetDynamicTextureDataBlend(string dynamicID, string contentType, string data, string extraParams, integer timer, integer alpha)
+
|permissions=${OSSL|osslParcelOG}ESTATE_MANAGER,ESTATE_OWNER
 +
|delay=0
 +
|function_syntax=key osSetDynamicTextureDataBlend(string dynamicID, string contentType, string data, string extraParams, integer timer, integer alpha)
 +
 
 +
|description=Renders a dynamically created texture on the faces of a prim containing the script, possibly blending it with the texture that is already set. Only use if all faces have same texture!<br>
 +
. Returns UUID of the generated texture.
 +
 
 
|ossl_example=<source lang="lsl">
 
|ossl_example=<source lang="lsl">
 
// ----------------------------------------------------------------
 
// ----------------------------------------------------------------
// Example / Sample Script to show function use.
 
//
 
// Script Title:    osSetDynamicTextureDataBlend.lsl
 
// Script Author:
 
// Threat Level:    VeryLow
 
// Script Source:  http://opensimulator.org/wiki/osSetDynamicTextureDataBlend
 
//
 
// Notes: See Script Source reference for more detailed information
 
// This sample is full opensource and available to use as you see fit and desire.
 
// Threat Levels only apply to OSSL & AA Functions
 
// See http://opensimulator.org/wiki/Threat_level
 
// ================================================================
 
// C# Source Line:      public string osSetDynamicTextureDataBlend(string dynamicID, string contentType, string data, string extraParams, int timer, int alpha)
 
// Inworld Script Line: osSetDynamicTextureDataBlend(string sDynamicID, string sContentType, string sData, string sExtraParams, integer iTimer, integer iAlpha);
 
//
 
 
// Example of osSetDynamicTextureDataBlend
 
// Example of osSetDynamicTextureDataBlend
 
//
 
//
Line 24: Line 15:
 
//    width - width of the dynamic texture in pixels (example: width:256)  
 
//    width - width of the dynamic texture in pixels (example: width:256)  
 
//    height - height of the dynamic texture in pixels (example: height:256)  
 
//    height - height of the dynamic texture in pixels (example: height:256)  
//    alpha - alpha (transparency) component of the dynamic texture. Values are from 0-clear to 255-solid, and false to turn off the alpha layer completely (example: alpha:255)  
+
//    alpha - alpha (transparency) component of the dynamic texture. Values are from 0-clear to 255-solid (example: alpha:255)  
 
//    bgcolour - specifies the background color of the texture (example: bgcolour:Red)  
 
//    bgcolour - specifies the background color of the texture (example: bgcolour:Red)  
 
//    setalpha  
 
//    setalpha  
Line 62: Line 53:
 
}
 
}
 
</source>
 
</source>
|description=
 
 
|
 
|
 
}}
 
}}
 +
{| width="100%" style="border: thin solid black"
 +
| colspan="3"  align="center" style=background:orange | '''Parameters'''
 +
|-
 +
|'''Name'''
 +
|'''Description'''
 +
|'''Remarks'''
 +
|-
 +
|style = style="vertical-align: top;" |'''dynamicID'''
 +
|style = style="vertical-align: top;" |UUID of already existing dynamic texture. Intended to accept UUID from a previous call to OsSetDynamicTextureXXXX functions in order to provide modification of an existing dynamic texture
 +
|style = style="vertical-align: top;" |NOT IMPLEMENTED
 +
|-
 +
|style = style="vertical-align: top;" |'''contentType'''
 +
|style = style="vertical-align: top;" |specifies the type of the '''data''' parameter.
 +
The following values are allowed:
 +
* vector - the '''data''' parameter contains a list of drawing instructions. See [[Drawing commands]] for details
 +
|
 +
|-
 +
|style = style="vertical-align: top;" |'''data'''
 +
|style = style="vertical-align: top;" |Contains a series of drawing instructions. See [[Drawing commands]] for details
 +
|
 +
|-
 +
|style = style="vertical-align: top;" |'''extraParams'''
 +
|style = style="vertical-align: top;" |additional optional parameters in the following format: [param]:[value],[param]:[value]
 +
Multiple parameters are separated by commas. The following ones are supported:
 +
* width - width of the dynamic texture in pixels (example:  width:256)
 +
* height - height of the dynamic texture in pixels (example:  height:256)
 +
* alpha - alpha (transparency) component of the dynamic texture. Values are from 0-clear to 255-solid (example: alpha:255)
 +
* bgcolor - specifies the background color of the texture (example:  bgcolor:Red)
 +
* altdatadelim - specifies a delimiter between the draw commands contained in the '''data''' parameter.
 +
* setalpha - integer value is treated like specifying alpha component
 +
* lossless - true or false, default false
 +
|
 +
|-
 +
|style = style="vertical-align: top;" |'''timer'''
 +
|style = style="vertical-align: top;" |specify a time interval to update the texture
 +
|style = style="vertical-align: top;" |NOT IMPLEMENTED
 +
|-
 +
|style = style="vertical-align: top;" |'''alpha'''
 +
|style = style="vertical-align: top;" |transparency of the dynamic texture to blend. Values are from 0-clear to 255-solid (example: alpha:255)
 +
|}
 +
'''Notes:'''<br>
 +
'''lossless''' parameter added on version 0.9.1.1, Nov 4th 2019. Old versions did as true, but that should one be used if needed<br>

Latest revision as of 06:10, 7 November 2019

key osSetDynamicTextureDataBlend(string dynamicID, string contentType, string data, string extraParams, integer timer, integer alpha)
Renders a dynamically created texture on the faces of a prim containing the script, possibly blending it with the texture that is already set. Only use if all faces have same texture!

. Returns UUID of the generated texture.

Threat Level VeryLow
Permissions ${OSSL|osslParcelOG}ESTATE_MANAGER,ESTATE_OWNER
Extra Delay 0 seconds
Example(s)
// ----------------------------------------------------------------
// Example of osSetDynamicTextureDataBlend
//
// ExtraParams Values:
//    width - width of the dynamic texture in pixels (example: width:256) 
//    height - height of the dynamic texture in pixels (example: height:256) 
//    alpha - alpha (transparency) component of the dynamic texture. Values are from 0-clear to 255-solid (example: alpha:255) 
//    bgcolour - specifies the background color of the texture (example: bgcolour:Red) 
//    setalpha 
//    integer value - any integer value is treated like specifing alpha component 
//
default
{
    state_entry()
    {
        llSay(0,"Touch to see osSetDynamicTextureDataBlend used to render custom drawings on a prim");
    }
 
    touch_start(integer total_num)
    {
        string sDynamicID = "";                          // not implemented yet
        string sContentType = "vector";                  // vector = text/lines,etc.  image = texture only
        string sData = "";                               // Storage for our drawing commands
        string sExtraParams = "width:256,height:256";    // optional parameters in the following format: [param]:[value],[param]:[value]
        integer iTimer = 0;                              // timer is not implemented yet, leave @ 0
        integer iAlpha = 100;                            // 0 = 100% Alpha, 255 = 100% Solid
        //
        // sData (drawing commands) used in the example.
        // draw a filled rectangle
        sData = osSetPenSize(sData, 3);                   // Set the pen width to 3 pixels
        sData = osSetPenColor(sData, "Red");             // Set the pen color to red
        sData = osMovePen(sData, 28, 78);                 // Upper left corner at <28,78>
        sData = osDrawFilledRectangle(sData, 200, 100);   // 200 pixels by 100 pixels
        // setup text to go in the drawn box
        sData = osMovePen(sData, 30, 80);                 // place pen @ X,Y coordinates 
        sData = osSetFontName(sData, "Arial");            // Set the Fontname to use
        sData = osSetFontSize(sData, 10);                 // Set the Font Size in pixels
        sData = osSetPenColor(sData, "Green");           // Set the pen color to Green
        sData = osDrawText(sData, "Your Name is: "+llDetectedName(0)); // The text to write
        // Now draw it out
        osSetDynamicTextureDataBlend( sDynamicID, sContentType, sData, sExtraParams, iTimer, iAlpha );
    }
}


Parameters
Name Description Remarks
dynamicID UUID of already existing dynamic texture. Intended to accept UUID from a previous call to OsSetDynamicTextureXXXX functions in order to provide modification of an existing dynamic texture NOT IMPLEMENTED
contentType specifies the type of the data parameter.

The following values are allowed:

  • vector - the data parameter contains a list of drawing instructions. See Drawing commands for details
data Contains a series of drawing instructions. See Drawing commands for details
extraParams additional optional parameters in the following format: [param]:[value],[param]:[value]

Multiple parameters are separated by commas. The following ones are supported:

  • width - width of the dynamic texture in pixels (example: width:256)
  • height - height of the dynamic texture in pixels (example: height:256)
  • alpha - alpha (transparency) component of the dynamic texture. Values are from 0-clear to 255-solid (example: alpha:255)
  • bgcolor - specifies the background color of the texture (example: bgcolor:Red)
  • altdatadelim - specifies a delimiter between the draw commands contained in the data parameter.
  • setalpha - integer value is treated like specifying alpha component
  • lossless - true or false, default false
timer specify a time interval to update the texture NOT IMPLEMENTED
alpha transparency of the dynamic texture to blend. Values are from 0-clear to 255-solid (example: alpha:255)

Notes:
lossless parameter added on version 0.9.1.1, Nov 4th 2019. Old versions did as true, but that should one be used if needed

Personal tools
General
About This Wiki