PRIM TYPE SCULPT
Revision as of 08:39, 28 June 2008 by MathieuBC Noel (talk | contribs) (The PRIM_SCALE is not available in SL. The real way to scale an object is PRIM_SIZE. By the way, nice job to clarify my script. I'm busy to create.)
The printable version is no longer supported and may have rendering errors. Please update your browser bookmarks and please use the default browser print function instead.
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_SIZE, <0.63,0.199,0.52> // If you need to change the scale (size) of the object, uncomment this line.
]); }
}</lsl>