LlSetPrimitiveParams

From Second Life Wiki

(Redirected from LSL llSetPrimitiveParams)
Jump to: navigation, search

Contents

Description

Function: llSetPrimitiveParams( list rules );
259 Function ID
0.2 Delay
10.0 Energy

Sets the prims parameters according to rules.

• list rules
Flag Description Usage
PRIM_TYPE Sets the prim's shape. PRIM_TYPE, integer flag ] + flag_parameters
PRIM_MATERIAL Sets the prim's material. PRIM_MATERIAL, integer flag ]
PRIM_PHYSICS Sets the object's physics status. PRIM_PHYSICS, integer boolean ]
PRIM_TEMP_ON_REZ Sets the object's temporary status. PRIM_TEMP_ON_REZ, integer boolean ]
PRIM_PHANTOM Sets the object's phantom status. PRIM_PHANTOM, integer boolean ]
PRIM_POSITION Sets the prim's position. PRIM_POSITION, vector position ]
PRIM_ROTATION Sets the prim's rotation. PRIM_ROTATION, rotation rot ]
PRIM_SIZE Sets the prim's size. PRIM_SIZE, vector size ]
PRIM_TEXTURE Sets the prim's texture attributes. PRIM_TEXTURE, integer face, string texture, vector repeats, vector offsets, float rotation_in_radians ]
PRIM_COLOR Sets the face's color. PRIM_COLOR, integer face, vector color, float alpha ]
PRIM_BUMP_SHINY Sets the face's shiny & bump. PRIM_BUMP_SHINY, integer face, integer shiny, integer bump ]
PRIM_POINT_LIGHT Sets the prim as a point light. PRIM_POINT_LIGHT, integer boolean, vector color, float intensity, float radius, float falloff ]
PRIM_FULLBRIGHT Sets the face's full bright flag. PRIM_FULLBRIGHT, integer face, integer boolean ]
PRIM_FLEXIBLE Sets the prim as flexible. PRIM_FLEXIBLE, integer boolean, integer softness, float gravity, float friction, float wind, float tension, vector force ]
PRIM_TEXGEN Sets the face's texture mode. PRIM_TEXGEN, integer face, integer type ]
PRIM_GLOW Sets the face's glow attribute. PRIM_GLOW, integer face, float intensity ]
PRIM_CAST_SHADOWS Sets the prim's cast shadow attribute. (DEPRECATED) PRIM_CAST_SHADOWS, integer boolean ]
PRIM_TYPE_LEGACY Sets the prim's shape (legacy mode, DEPRECATED). [ 1, integer flag ] + flag_parameters
Parameter Additional Parameters Description
PRIM_TYPE ] 9 [ integer flag ] Sets the prim shape.
flag Constants Flag Parameters
PRIM_TYPE_BOX 0 [ integer hole_shape, vector cut, float hollow, vector twist, vector top_size, vector top_shear ]
PRIM_TYPE_CYLINDER 1 [ integer hole_shape, vector cut, float hollow, vector twist, vector top_size, vector top_shear ]
PRIM_TYPE_PRISM 2 [ integer hole_shape, vector cut, float hollow, vector twist, vector top_size, vector top_shear ]
PRIM_TYPE_SPHERE 3 [ integer hole_shape, vector cut, float hollow, vector twist, vector dimple]
PRIM_TYPE_TORUS 4 [ integer hole_shape, vector cut, float hollow, vector twist, vector hole_size, vector top_shear, vector advanced_cut, vector taper, float revolutions, float radius_offset, float skew ]
PRIM_TYPE_TUBE 5 [ integer hole_shape, vector cut, float hollow, vector twist, vector hole_size, vector top_shear, vector advanced_cut, vector taper, float revolutions, float radius_offset, float skew ]
PRIM_TYPE_RING 6 [ integer hole_shape, vector cut, float hollow, vector twist, vector hole_size, vector top_shear, vector advanced_cut, vector taper, float revolutions, float radius_offset, float skew ]
PRIM_TYPE_SCULPT 7 [ string mapinteger type ] Sculpted_Prims:_FAQ
  hole_shape Flags Shape hole_shape Flags Shape
PRIM_HOLE_DEFAULT 0x00 Default PRIM_HOLE_SQUARE 0x20 Square
PRIM_HOLE_CIRCLE 0x10 Circle PRIM_HOLE_TRIANGLE 0x30 Triangle
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_MATERIAL ] 2 [ integer material] Sets the prim's material. The material determines the default collision sound & sprite.
material Flags Description
PRIM_MATERIAL_STONE 0 stone
PRIM_MATERIAL_METAL 1 metal
PRIM_MATERIAL_GLASS 2 glass
PRIM_MATERIAL_WOOD 3 wood
PRIM_MATERIAL_FLESH 4 flesh
PRIM_MATERIAL_PLASTIC 5 plastic
PRIM_MATERIAL_RUBBER 6 rubber
PRIM_MATERIAL_LIGHT 7 light, DEPRECATED: Looks the same as [ PRIM_FULLBRIGHT, ALL_SIDES, TRUE ]
PRIM_PHYSICS ] 3 [ integer boolean ] Physics status llSetStatus
PRIM_TEMP_ON_REZ ] 4 [ integer boolean ] Temp on rez status llSetStatus
PRIM_PHANTOM ] 5 [ integer boolean ] Phantom status llSetStatus
PRIM_POSITION ] 6 [ vector position ] Position, llSetPos
PRIM_ROTATION ] 8 [ rotation rot ] Rotation, llSetRot
PRIM_SIZE ] 7 [ vector size ] Size, llSetScale
PRIM_TEXTURE, integer face ] 17 [ string texture, vector repeats, vector offsets, float rotation_in_radians ]
Texture: llSetTexture
Repeats: llScaleTexture
Offset: llOffsetTexture
Rotation: llRotateTexture
PRIM_COLOR, integer face ] 18 [ vector color, float alpha ]
Alpha: llSetAlpha
Color: llSetColor
PRIM_BUMP_SHINY, integer face ] 19 integer shiny, integer bump ]
shiny & bump Flags Description
PRIM_SHINY_NONE 0 none
PRIM_SHINY_LOW 1 low
PRIM_SHINY_MEDIUM 2 medium
PRIM_SHINY_HIGH 3 high
PRIM_BUMP_NONE 0 none: no bump map
PRIM_BUMP_BRIGHT 1 brightness: generate from highlights
PRIM_BUMP_DARK 2 darkness: generate from lowlights
PRIM_BUMP_WOOD 3 woodgrain
PRIM_BUMP_BARK 4 bark
PRIM_BUMP_BRICKS 5 bricks
PRIM_BUMP_CHECKER 6 checker
PRIM_BUMP_CONCRETE 7 concrete
PRIM_BUMP_TILE 8 crustytile
PRIM_BUMP_STONE 9 cutstone: blocks
PRIM_BUMP_DISKS 10 discs: packed circles
PRIM_BUMP_GRAVEL 11 gravel
PRIM_BUMP_BLOBS 12 petridish: blobby amoeba like shapes
PRIM_BUMP_SIDING 13 siding
PRIM_BUMP_LARGETILE 14 stonetile
PRIM_BUMP_STUCCO 15 stucco
PRIM_BUMP_SUCTION 16 suction: rings
PRIM_BUMP_WEAVE 17 weave
PRIM_FULLBRIGHT, integer face ] 20 [ integer boolean ]
PRIM_FLEXIBLE ] 21 [ integer boolean, integer softness, float gravity, float friction, float wind, float tension, vector force ]
PRIM_TEXGEN, integer face ] 22 [ integer mode ]
mode Constants Description
PRIM_TEXGEN_DEFAULT 0
PRIM_TEXGEN_PLANAR 1
PRIM_POINT_LIGHT ] 23 [ integer boolean, vector color, float intensity, float radius, float falloff ]
PRIM_GLOW, integer face ] 25 [ float intensity ]
PRIM_CAST_SHADOWS ] 24 [ integer boolean ] Shadow casting for the primitive,DEPRECATED
[ 1 ]
PRIM_TYPE_LEGACY
1 [ integer flag, paramaters ]
flag Constants Flag Parameters
PRIM_TYPE_BOX 0 [ vector cut, float hollow, float twist_end, vector top_size, vector top_shear ]
PRIM_TYPE_CYLINDER 1 [ vector cut, float hollow, float twist_end, vector top_size, vector top_shear ]
PRIM_TYPE_PRISM 2 [ vector cut, float hollow, float twist_end, vector top_size, vector top_shear ]
PRIM_TYPE_SPHERE 3 [ vector cut, float hollow, vector dimple ]
PRIM_TYPE_TORUS 4 [ vector cut, float hollow, float twist_end, float hole_size_y, vector top_shear, vector advanced_cut ]
PRIM_TYPE_TUBE 5 [ vector cut, float hollow, float twist_end, float topshear_x ]

Caveats

  • This function causes the script to sleep for 0.2 seconds.
  • If texture 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 texture 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.
  • 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.
  • If face is ALL_SIDES then the flag works on all sides.
  • The flag silently fails if its face value indicates a face that does not exist
  • The sim will clamp attributes before storing them.
  • The client will clamp attributes before rendering.
  • Scripts written before September 2004 that use PRIM_TYPE depend on PRIM_TYPE to have the value 1; if these scripts are recompiled, the new value of PRIM_TYPE will be used causing errors at runtime.
    • To fix this replace the PRIM_TYPE flag with the value 1 or updated to the newer PRIM_TYPE syntax.

Examples

 
// To color all sides of a prim black, except side 3 white
llSetPrimitiveParams([PRIM_COLOR, ALL_SIDES, <0.0,0.0,0.0>, 1.0]);
llSetPrimitiveParams([PRIM_COLOR, 3, <1.0,1.0,1.0>, 1.0]);
 
// To render on side 3 
// the picture with the UUID... 
// and the repeats per face as vector, 
// the texture offset as second vector, 
// and the texture rotation as float
llSetPrimitiveParams([PRIM_TEXTURE, 3, "4d304955-2b01-c6c6-f545-c1ae1e618288", <1.0,1.0,0.0>, <0.0,0.0,0.0>, 0.0]);
 
// To set the prim "Full Bright" on sides 3
llSetPrimitiveParams([PRIM_FULLBRIGHT,3,TRUE]);
 
// And to make it all in one breath,
llSetPrimitiveParams([PRIM_COLOR, ALL_SIDES, <0.0,0.0,0.0>, 1.0,
                      PRIM_COLOR, 3, <1.0,1.0,1.0>, 1.0,
                      PRIM_TEXTURE, 3, "4d304955-2b01-c6c6-f545-c1ae1e618288", <1.0,1.0,0.0>, <0.0,0.0,0.0>, 0.0,
                      PRIM_FULLBRIGHT, 3, TRUE]);
 
//And If you want to place it above you bed, to make you sleep well, and the coords of that place are for example <x, y, z>
llSetPrimitiveParams([PRIM_COLOR, ALL_SIDES, <0.0,0.0,0.0>, 1.0, 
                      PRIM_COLOR, 3, <1.0,1.0,1.0>, 1.0,
                      PRIM_TEXTURE, 3, "4d304955-2b01-c6c6-f545-c1ae1e618288", <1.0,1.0,0.0>, <0.0,0.0,0.0>,0.0,
                      PRIM_FULLBRIGHT, 3, TRUE, 
                      PRIM_POSITION, <x, y, z>]);

Anylyn Hax 04:38, 10 July 2007 (PDT)

Notes

The old PRIM_TYPE interface (labeled PRIM_TYPE_LEGACY) while technical retired can still be used.

See Also

Functions

•  llGetPrimitiveParams Get many primitive parameters
•  llSetLinkPrimitiveParams Set parameters on other prims in linkset
•  llSetAlpha Simpler way to set alpha (transparency)
•  llSetTexture Simpler way to set texture
•  llSetColor Simpler way to set color

Articles

•  Color in LSL
•  Translucent Color
Personal tools