PRIM TYPE SCULPT
Revision as of 19:45, 27 June 2008 by Strife Onizuka (talk | contribs) (the comments were either A) inappropriate (no advertising please) B) not applicable (PRIM_TEXTURE doesn't deal with color) or C) didn't make sense; the witespace was illogical and it didn't compile)
LSL Portal | Functions | Events | Types | Operators | Constants | Flow Control | Script Library | Categorized Library | Tutorials |
Description
Constant: integer PRIM_TYPE_SCULPT = 7;The integer constant PRIM_TYPE_SCULPT has the value 7
PRIM_TYPE_SCULPT is a parameter of PRIM_TYPE used to make a prim into a sculpty of specific shape and type.
Sculpted Prims: FAQ
PRIM_TYPE
[ PRIM_TYPE, PRIM_TYPE_SCULPT, string map, integer type ]• string | map | – | a texture in the inventory of the prim this script is in or a UUID of a texture | |
• integer | type | – | PRIM_SCULPT_TYPE_* flag |
For use with llSetPrimitiveParams and llSetLinkPrimitiveParams
type Flags | Style | Description | |||
---|---|---|---|---|---|
PRIM_SCULPT_TYPE_SPHERE | 1 | Sphere | Converge top & bottom, stitch left side to right | ||
PRIM_SCULPT_TYPE_TORUS | 2 | Torus | Stitch top to bottom, stitch left side to right | ||
PRIM_SCULPT_TYPE_PLANE | 3 | Plane | No stitching or converging | ||
PRIM_SCULPT_TYPE_CYLINDER | 4 | Cylinder | Stitch left side to right. | ||
PRIM_SCULPT_TYPE_MESH | 5 | Mesh model | See: Mesh | ||
PRIM_SCULPT_FLAG_ANIMESH | 0x20 | Animesh | Read-only flag to query Animated mesh status. | ||
PRIM_SCULPT_FLAG_INVERT | 0x40 | Invert | Render inside out (inverts the normals). | ||
PRIM_SCULPT_FLAG_MIRROR | 0x80 | Mirror | Render an X axis mirror of the sculpty. |
Caveats
- If map is missing from the prim's inventory and it is not a UUID or it is not a texture then an error is shouted on DEBUG_CHANNEL.
- If map 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.
Related Articles
Constants
• | PRIM_TYPE | |||
• | CHANGED_SHAPE |
Functions
• | llSetPrimitiveParams | |||
• | llSetLinkPrimitiveParams | |||
• | llGetPrimitiveParams |
Events
• | changed |
Examples
<lsl>llSetPrimitiveParams([PRIM_TYPE,
PRIM_TYPE_SCULPT, "d962089b-2197-993c-9ec9-4993eb0a95f2", // sculpty texture PRIM_SCULPT_TYPE_SPHERE // type ]);</lsl>
<lsl>//Rotates between the different sculpt types. default {
touch_start(integer a) { list b = llGetPrimitiveParams([PRIM_TYPE]); integer type = llList2Integer(b,2) % 4; llSetObjectDesc(llList2String([ "Sphere", "Torus", "Plane", "Cylinder"], type)); llSetPrimitiveParams(PRIM_TYPE + llList2List(b, 0, 1) + (type + 1)); }
}</lsl>
<lsl>//A simple script to setup a prim as a sculpty. default {
state_entry() { llSetPrimitiveParams([ PRIM_TYPE, PRIM_TYPE_SCULPT, "your Sculpt map name in the object", PRIM_SCULPT_TYPE_SPHERE , PRIM_TEXTURE, ALL_SIDES, "your texture name in the object", <1.0, 1.0, 0.0>, <0.0, 0.0, 0.0>, 0.0 //comment out if not needed.
// , PRIM_SCALE, <0.063,0.199,0.052> // If you need to change the scale of the object, uncomment this line.
]); }
}</lsl>