PhysicsCreateShape: Difference between revisions
Jump to navigation
Jump to search
CrosRoad95 (talk | contribs) No edit summary |
CrosRoad95 (talk | contribs) No edit summary |
||
Line 13: | Line 13: | ||
physics-shape physicsCreateShape(physics thePhysics, "cone", float radius, float height) | physics-shape physicsCreateShape(physics thePhysics, "cone", float radius, float height) | ||
physics-shape physicsCreateShape(physics thePhysics, "cylinder", float radius, float height) | physics-shape physicsCreateShape(physics thePhysics, "cylinder", float radius, float height) | ||
physics-shape physicsCreateShape(physics thePhysics, "heightfieldterrain", int sizeX, int sizeY [, | physics-shape physicsCreateShape(physics thePhysics, "heightfieldterrain", int sizeX, int sizeY [, table heightData ] ) | ||
physics-shape physicsCreateShape(physics thePhysics, "compound", int initialChildCapacity = 0) | physics-shape physicsCreateShape(physics thePhysics, "compound", int initialChildCapacity = 0) | ||
physics-shape physicsCreateShape(physics thePhysics, "trianglemesh", vector3 vertexA, vector3 vertexB, vector3 vertexC, ...) | physics-shape physicsCreateShape(physics thePhysics, "trianglemesh", vector3 vertexA, vector3 vertexB, vector3 vertexC, ...) | ||
Line 34: | Line 34: | ||
<syntaxhighlight lang="lua"> | <syntaxhighlight lang="lua"> | ||
local terrainData = { | |||
3,3,3,3, | |||
3,0,0,3, | |||
3,0,0,3, | |||
3,3,3,3, | |||
} | |||
local terrainShape = physicsCreateShape(physics, "heightfieldterrain", 4,4, terrainData) | |||
local terrain = physicsCreateStaticCollision(terrainShape) | |||
physicsSetProperties(terrain, "position", 0,0,5) | |||
physicsSetProperties(terrain, "scale", 5,5,1) -- in terrain, sets mesh density, now mesh has size 20x20units, one vertex every 5 units | |||
</syntaxhighlight> | </syntaxhighlight> | ||
Latest revision as of 21:30, 18 February 2020
Creates physics shape used for static or dynamic collision detection
Syntax
physics-shape physicsCreateShape(physics thePhysics, shape-type theShapeType, mixed) physics-shape physicsCreateShape(physics thePhysics, "box", float size) physics-shape physicsCreateShape(physics thePhysics, "box", float sizeX, sizeY, sizeZ) physics-shape physicsCreateShape(physics thePhysics, "sphere", float radius) physics-shape physicsCreateShape(physics thePhysics, "capsule", float radius, float height) physics-shape physicsCreateShape(physics thePhysics, "cone", float radius, float height) physics-shape physicsCreateShape(physics thePhysics, "cylinder", float radius, float height) physics-shape physicsCreateShape(physics thePhysics, "heightfieldterrain", int sizeX, int sizeY [, table heightData ] ) physics-shape physicsCreateShape(physics thePhysics, "compound", int initialChildCapacity = 0) physics-shape physicsCreateShape(physics thePhysics, "trianglemesh", vector3 vertexA, vector3 vertexB, vector3 vertexC, ...) physics-shape physicsCreateShape(physics thePhysics, "convexhull", vector3 pointA, vector3 pointB, vector3, pointC, ...)
- heightfieldterrain: minimum size is 3x3, and maximum 8192x8192. By default terrain is flat, you can pass default height after size, each float represents height of next vertex.
- trianglemesh: each of three vectors creates single triangle, use n*3 vectors to create n triangles.
- compound: can contain up to 8192 child shapes.
- convexhull: require at least 3 points.
Required Arguments
- thePhysics: physics world
- theShapeType: shape, availiable types "box", "sphere", "capsule", "cone", "cylinder", "heightfieldterrain", "compound", "trianglemesh", "convexhull",
Returns
- physics-shape to use in future functions
Example
local terrainData = { 3,3,3,3, 3,0,0,3, 3,0,0,3, 3,3,3,3, } local terrainShape = physicsCreateShape(physics, "heightfieldterrain", 4,4, terrainData) local terrain = physicsCreateStaticCollision(terrainShape) physicsSetProperties(terrain, "position", 0,0,5) physicsSetProperties(terrain, "scale", 5,5,1) -- in terrain, sets mesh density, now mesh has size 20x20units, one vertex every 5 units
See Also
- physicsCreateWorld
- physicsDestroy
- physicsCreateShape
- physicsCreateShapeFromModel
- physicsCreateRigidBody
- physicsCreateStaticCollision
- physicsCreateConstraint
- physicsAddChildShape
- physicsRemoveChildShape
- physicsGetChildShapes
- physicsSetChildShapeOffsets
- physicsGetChildShapeOffsets
- physicsGetShapes
- physicsGetRigidBodies
- physicsGetStaticCollisions
- physicsGetConstraints
- physicsSetProperties
- physicsGetProperties
- physicsDrawDebug
- physicsSetDebugMode
- physicsBuildCollisionFromGTA
- physicsApplyVelocity
- physicsApplyVelocityForce
- physicsApplyAngularVelocity
- physicsApplyAngularVelocityForce
- physicsApplyDamping
- physicsRayCast
- physicsShapeCast
- physicsGetElementType
- physicsIsElement