PRIM TYPE SCULPT

From Second Life Wiki
Jump to navigation Jump to search

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_ZZZZZZZZ 63
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> //MathieuBC Noel script creators. My free objects available on www.slexchange.com 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,1,1>,<0,0,0>

, 0.0]);

// llSetScale(<0.063,0.199,0.052>); // If you need to have more sculpt map in the object to show in

different mesure. This way need less primitives (objects) on a land


// <1,1,1> is the RBG color (Red, Blue, Green // <0,0,0> is the addition of an another RBG color it's to create different color. So <1,1,1>+<0,0,0>=<.5,.5,.5>

// 0.0 in the end of the line is the texture rotation

} }</lsl>

Deep Notes

Search JIRA for related Issues

Signature

integer PRIM_TYPE_SCULPT = 7;