Difference between revisions of "PRIM PHYSICS SHAPE TYPE"

From Second Life Wiki
Jump to navigation Jump to search
m
m
 
(9 intermediate revisions by 4 users not shown)
Line 12: Line 12:
! colspan="3" {{!}} Notes
! colspan="3" {{!}} Notes
{{!}}-
{{!}}-
{{!}} {{LSL Const|PRIM_PHYSICS_SHAPE_PRIM|integer|0|c=Use the normal prim shape for physics}}
{{!}} {{LSL Const|PRIM_PHYSICS_SHAPE_PRIM|integer|0|c=The visible shape of the prim determines its physics-shape}}
{{!}} {{#var:value}}
{{!}} {{#var:value}}
{{!}} colspan="3" {{!}} {{#var:comment}}
{{!}} colspan="3" {{!}} {{#var:comment}}
{{!}} colspan="3" {{!}} default for all non-mesh objects
{{!}} colspan="3" {{!}} default for all non-mesh prims
{{!}}-
{{!}}-
{{!}} {{LSL Const|PRIM_PHYSICS_SHAPE_CONVEX|integer|2|c=Use the convex hull of the prim shape for physics}}
{{!}} {{LSL Const|PRIM_PHYSICS_SHAPE_CONVEX|integer|2|c=Use the convex hull formulas for generating the prim's physics-shape}}
{{!}} {{#var:value}}
{{!}} {{#var:value}}
{{!}} colspan="3" {{!}} {{#var:comment}}
{{!}} colspan="3" {{!}} {{#var:comment}}
{{!}} colspan="3" {{!}} default for all mesh objects
{{!}} colspan="3" {{!}} default for all mesh prims
{{!}}-
{{!}}-
{{!}} {{LSL Const|PRIM_PHYSICS_SHAPE_NONE|integer|1|c=Ignore this prim in the physics shape. }}
{{!}} {{LSL Const|PRIM_PHYSICS_SHAPE_NONE|integer|1|c=The prim will not contribute to the object's physics-shape}}
{{!}} {{#var:value}}
{{!}} {{#var:value}}
{{!}} colspan="3" {{!}} {{#var:comment}}
{{!}} colspan="3" {{!}} {{#var:comment}}
{{!}} colspan="3" {{!}} ''This cannot be applied to the root prim.''
{{!}} colspan="3" {{!}} ''This cannot be applied to the root prim or avatars.''
This prim has no physics representation at all. Like [[phantom]] objects, it will not collide with avatars or other objects. ''Unlike'' phantom prims, it will also pass freely through the terrain when the parent object is physical. Like [[llVolumeDetect|volume detect]] it doesn't collide with terrain. ''Unlike'' volume detect, it will not register {{LSLGC|Collision|collision}} events.
}}
}}
{{LSL Signature/Add|{{LSL Const/Signature|PRIM_PHYSICS_SHAPE_PRIM|integer|0|c=Use the normal prim shape for physics}}
{{LSL Const/Signature|PRIM_PHYSICS_SHAPE_CONVEX|integer|2|c=Use the convex hull of the prim shape for physics}}}}


}}</onlyinclude>{{#if:
}}</onlyinclude>{{#if:
Line 37: Line 35:
|type=integer
|type=integer
|value=30
|value=30
|desc=Used to set the type of shape the physics engine should use for the object.
|desc=Used to set the type of shape the physics engine should use for the prim. This is primarily used to do [[Physics Optimization]].
|examples
|examples
|constants
|constants
|notes=Modern physics engines achieve real-time results (as opposed to slower than real-time results) by approximating and simplifying the shapes. This means the shape that client displays on the screen is much more complicated than the shape the physics engine works with (with the exception of basic shapes like cubes or prisms). This flag gives the scripter some control over how the prim is treated by the physics engine.
|pa={{LSL Constant/List|i_front=[&#32;{{#var:physics_shape_type_const}},&#32;|i_end=&nbsp;]
|pa={{LSL Constant/List|i_front=[&#32;{{#var:physics_shape_type_const}},&#32;|i_end=&nbsp;]
|text=When used with [[llSetPrimitiveParams]] & [[llSetLinkPrimitiveParams]]
|text=When used with [[llSetPrimitiveParams]] & [[llSetLinkPrimitiveParams]]
Line 56: Line 55:
{{#var:physics_shape_type_rows}}
{{#var:physics_shape_type_rows}}
{{!}}}
{{!}}}
|articles=
{{LSL DefineRow||[[Physics Optimization]]|}}
{{LSL DefineRow||[http://community.secondlife.com/t5/English-Knowledge-Base/Best-practices-for-creating-efficient-collision-volumes/ta-p/984115 Best practices for creating efficient collision volumes]|A really good article that explains how collisions work.}}
|functions=
|functions=
{{LSL DefineRow||[[llGetPrimitiveParams]]|}}
{{LSL DefineRow||[[llGetPrimitiveParams]]|}}
Line 67: Line 69:
*Introduced in [[Release Notes/Second Life RC LeTigre/11#11.09.09.240509|Second Life RC LeTigre 11.09.09.240509]], September 9, 2011
*Introduced in [[Release Notes/Second Life RC LeTigre/11#11.09.09.240509|Second Life RC LeTigre 11.09.09.240509]], September 9, 2011
*[http://www.sluniverse.com/php/vb/scripting/61203-future-physics-functions-tease.html#post1305775 SLUniverse:Future physics functions tease]
*[http://www.sluniverse.com/php/vb/scripting/61203-future-physics-functions-tease.html#post1305775 SLUniverse:Future physics functions tease]
|cat1=PrimitiveParams
|cat1=Physics
|cat2=PrimitiveParams/Prim
|cat2
|cat3=Physics
|cat4=Prim
}}
}}

Latest revision as of 02:12, 27 December 2013

Description

Constant: integer PRIM_PHYSICS_SHAPE_TYPE = 30;

The integer constant PRIM_PHYSICS_SHAPE_TYPE has the value 30

Used to set the type of shape the physics engine should use for the prim. This is primarily used to do Physics Optimization.

llSetPrimitiveParams

[ PRIM_PHYSICS_SHAPE_TYPE, integer type ]
• integer type PRIM_PHYSICS_SHAPE_* flag

When used with llSetPrimitiveParams & llSetLinkPrimitiveParams

llGetPrimitiveParams

llGetPrimitiveParams([ PRIM_PHYSICS_SHAPE_TYPE ]);

Returns the listinteger type ]

• integer type PRIM_PHYSICS_SHAPE_* flag
type Flags V Description Notes
PRIM_PHYSICS_SHAPE_PRIM 0 The visible shape of the prim determines its physics-shape default for all non-mesh prims
PRIM_PHYSICS_SHAPE_CONVEX 2 Use the convex hull formulas for generating the prim's physics-shape default for all mesh prims
PRIM_PHYSICS_SHAPE_NONE 1 The prim will not contribute to the object's physics-shape This cannot be applied to the root prim or avatars.

This prim has no physics representation at all. Like phantom objects, it will not collide with avatars or other objects. Unlike phantom prims, it will also pass freely through the terrain when the parent object is physical. Like volume detect it doesn't collide with terrain. Unlike volume detect, it will not register collision events.

Related Articles

Functions

•  llGetPrimitiveParams
•  llGetLinkPrimitiveParams
•  llSetPrimitiveParams
•  llSetLinkPrimitiveParams
•  llSetLinkPrimitiveParamsFast

Articles

•  Physics Optimization
•  Best practices for creating efficient collision volumes A really good article that explains how collisions work.

Notes

Modern physics engines achieve real-time results (as opposed to slower than real-time results) by approximating and simplifying the shapes. This means the shape that client displays on the screen is much more complicated than the shape the physics engine works with (with the exception of basic shapes like cubes or prisms). This flag gives the scripter some control over how the prim is treated by the physics engine.

Deep Notes

History

Search JIRA for related Issues

Signature

integer PRIM_PHYSICS_SHAPE_TYPE = 30;