OsSetDynamicTextureData
From OpenSimulator
(Difference between revisions)
AnakinLohner (Talk | contribs) |
m (Add See Also) |
||
(58 intermediate revisions by 9 users not shown) | |||
Line 1: | Line 1: | ||
− | {{ | + | {{osslfunc |
− | + | |threat_level=VeryLow | |
+ | |permissions=${OSSL|osslParcelOG}ESTATE_MANAGER,ESTATE_OWNER | ||
+ | |delay=0 | ||
+ | |function_syntax=key osSetDynamicTextureData(string dynamicID, string contentType, string data, string extraParams, integer timer) | ||
+ | |ossl_example=<source lang="lsl"> | ||
+ | // Example of OsSetDynamicTextureData used to render custom drawings on a prim | ||
+ | default | ||
+ | { | ||
+ | state_entry() | ||
+ | { | ||
+ | string CommandList = ""; // Storage for our drawing commands | ||
+ | CommandList = osSetPenSize( CommandList, 3 ); // Set the pen width to 3 pixels | ||
+ | CommandList = osSetPenColor( CommandList, "Red" ); // Set the pen color to red | ||
+ | CommandList = osMovePen( CommandList, 28, 78 ); // Upper left corner at <28,78> | ||
+ | CommandList = osDrawFilledRectangle( CommandList, 200, 100 ); // 200 pixels by 100 pixels | ||
− | + | // Now draw the rectangle | |
− | + | osSetDynamicTextureData( "", "vector", CommandList, "width:256,height:256", 0 ); | |
− | + | } | |
− | + | } | |
− | + | </source> | |
− | + | |description=*Renders a dynamically created texture on the prim containing the script and returns the UUID of the newly created texture. | |
− | + | *If you use this feature, you have to turn on any cache. If not, you'll see complete white texture. | |
− | = | + | | |
− | Renders a | + | }} |
− | + | The script [[OsSetDynamicdata example1|osTextBoard.lsl]] from the standard OpenSimulator Library also uses this function. | |
− | + | {| width="100%" style="border: thin solid black;" | |
− | + | | colspan="3" align="center" style=background:orange | '''Parameters''' | |
− | {| border=" | + | |- |
|'''Name''' | |'''Name''' | ||
|'''Description''' | |'''Description''' | ||
|'''Remarks''' | |'''Remarks''' | ||
|- | |- | ||
− | |'''dynamicID''' | + | |style="vertical-align: top;" | '''dynamicID''' |
− | |UUID of already existing dynamic texture. Intended to accept UUID from a previous call to OsSetDynamicTextureXXXX functions | + | |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 |
− | | NOT IMPLEMENTED YET | + | |style="vertical-align: top;" | NOT IMPLEMENTED YET |
|- | |- | ||
− | |'''contentType''' | + | |style="vertical-align: top;" | '''contentType''' |
− | |specifies the type of the '''data''' parameter. | + | |style="vertical-align: top;" | specifies the type of the '''data''' parameter. |
The following values are allowed: | The following values are allowed: | ||
− | *vector - the '''data''' parameter contains a list of drawing instructions. | + | * vector - the '''data''' parameter contains a list of drawing instructions. See [[Drawing commands]] for details |
− | + | ||
| | | | ||
|- | |- | ||
− | |'''data''' | + | |style="vertical-align: top;" |'''data''' |
− | |Contains a series of drawing instructions. | + | |style="vertical-align: top;" | Contains a series of drawing instructions. See [[Drawing commands]] for details |
| | | | ||
− | |- | + | |- |
− | |'''extraParams''' | + | |style="vertical-align: top;" | '''extraParams''' |
− | |additional optional parameters in the following format: [param]:[value],[param]:[value] | + | |style="vertical-align: top;" | additional optional parameters in the following format: [param]:[value],[param]:[value] |
− | Multiple parameters are separated by | + | Multiple parameters are separated by commas. The following ones are supported: |
− | *width - width of the dynamic texture in pixels (example: width: | + | * width - width of the dynamic texture in pixels (example: width:256) |
− | *height - height of the dynamic texture in pixels (example: height: | + | * 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 | + | * alpha - alpha (transparency) component of the dynamic texture. Values are from 0-clear to 255-solid |
− | * | + | * bgcolor - specifies the background color of the texture (example: bgcolor:Red) |
− | *altdatadelim - specifies a delimiter between the draw commands contained in the '''data''' parameter. | + | * altdatadelim - specifies a delimiter between the draw commands contained in the '''data''' parameter. |
− | *setalpha | + | * setalpha - integer value is treated like specifying alpha component |
− | + | * lossless - true or false, default false. | |
| | | | ||
|- | |- | ||
− | |'''timer''' | + | |style="vertical-align: top;" |'''timer''' |
− | | | + | |style="vertical-align: top;" | specify a time interval to update the texture |
− | | | + | |style="vertical-align: top;" | NOT IMPLEMENTED YET |
|} | |} | ||
+ | '''Notes:''' | ||
+ | The '''dynamicID''' parameter is not yet implemented. The value passed will be ignored.<br> | ||
+ | The '''timer''' parameter is not yet implemented. The value passed will be ignored. Instead, you can use a timer event and recall the function to get the same effect.<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> | ||
− | == | + | == See Also == |
− | + | * [[osSetDynamicTextureURL]] | |
− | + | * [[osSetDynamicTextureURLBlend]] | |
− | + | * [[osSetDynamicTextureURLBlendFace]] | |
− | + | * [[osSetDynamicTextureDataBlend]] | |
− | + | * [[osSetDynamicTextureDataBlendFace]] | |
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | [[Category:OSSL pages in need of parameters template]] | |
− | + | ||
− | + | ||
− | + | ||
− | + |
Latest revision as of 19:05, 5 December 2020
key osSetDynamicTextureData(string dynamicID, string contentType, string data, string extraParams, integer timer)
| |
| |
Threat Level | VeryLow |
Permissions | ${OSSL|osslParcelOG}ESTATE_MANAGER,ESTATE_OWNER |
Extra Delay | 0 seconds |
Example(s) | |
// Example of OsSetDynamicTextureData used to render custom drawings on a prim default { state_entry() { string CommandList = ""; // Storage for our drawing commands CommandList = osSetPenSize( CommandList, 3 ); // Set the pen width to 3 pixels CommandList = osSetPenColor( CommandList, "Red" ); // Set the pen color to red CommandList = osMovePen( CommandList, 28, 78 ); // Upper left corner at <28,78> CommandList = osDrawFilledRectangle( CommandList, 200, 100 ); // 200 pixels by 100 pixels // Now draw the rectangle osSetDynamicTextureData( "", "vector", CommandList, "width:256,height:256", 0 ); } } |
The script osTextBoard.lsl from the standard OpenSimulator Library also uses this function.
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 YET |
contentType | specifies the type of the data parameter.
The following values are allowed:
|
|
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:
|
|
timer | specify a time interval to update the texture | NOT IMPLEMENTED YET |
Notes:
The dynamicID parameter is not yet implemented. The value passed will be ignored.
The timer parameter is not yet implemented. The value passed will be ignored. Instead, you can use a timer event and recall the function to get the same effect.
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