Difference between revisions of "R3d.Fixture:getMaterial"

From GiderosMobile
(update to r3d v0.8)
 
(3 intermediate revisions by 2 users not shown)
Line 3: Line 3:
  
 
=== Description ===
 
=== Description ===
Gets the fixture material (bounciness, frictionCoefficient, rollingResistance).
+
Gets the fixture material (''bounciness'', ''frictionCoefficient'', ''massDensity'').
<source lang="lua">
+
<syntaxhighlight lang="lua">
(bounciness) (frictionCoefficient) (rollingResistance) = r3d.Body:getMaterial()
+
(number), (number), (number) = r3d.Body:getMaterial()
</source>
+
</syntaxhighlight>
  
 
=== Return values ===
 
=== Return values ===
values between 0 and 1 (0 means no bounciness, friction or rolling resistance).
+
'''Returns''' (number) the bounciness of the fixture (default = 0.5)<br/>
 +
'''Returns''' (number) the friction coefficient of the fixture (default = 0.3)<br/>
 +
'''Returns''' (number) the mass density of the fixture (default = 1 kg)<br/>
  
'''Returns''' (bounciness) the bounciness of the fixture (default = 0.5)<br/>
+
values between 0 and 1 (0 means no bounciness/friction)
'''Returns''' (frictionCoefficient) the friction coefficient of the fixture (default = 0.3)<br/>
+
 
'''Returns''' (rollingResistance) the rolling resistance of the fixture (default = 0)<br/>
+
'''''rolling resistance'' has been removed in latest ReactPhysics3D. Use [[R3d.Body:setAngularDamping]] to set and get the rolling resistance'''
  
 
=== Example ===
 
=== Example ===
<source lang="lua">
+
<syntaxhighlight lang="lua">
 
-- the body
 
-- the body
view.body = xworld:createBody(view:getMatrix())
+
view.body = world:createBody(view:getMatrix())
 
local shape = r3d.SphereShape.new(params.sizex) -- radius
 
local shape = r3d.SphereShape.new(params.sizex) -- radius
 
local fixture = view.body:createFixture(shape, nil, params.mass)
 
local fixture = view.body:createFixture(shape, nil, params.mass)
 
-- materials
 
-- materials
 
local mat = fixture:getMaterial()
 
local mat = fixture:getMaterial()
print(mat.bounciness, mat.frictionCoefficient, mat.rollingResistance) -- returns 0.5, 0.3, 0
+
print(mat.bounciness, mat.frictionCoefficient, mat.massDensity)
</source>
+
</syntaxhighlight>
  
 
{{R3d.Fixture}}
 
{{R3d.Fixture}}

Latest revision as of 02:02, 19 December 2025

Available since: Gideros 2019.10
Class: R3d.Fixture

Description

Gets the fixture material (bounciness, frictionCoefficient, massDensity).

(number), (number), (number) = r3d.Body:getMaterial()

Return values

Returns (number) the bounciness of the fixture (default = 0.5)
Returns (number) the friction coefficient of the fixture (default = 0.3)
Returns (number) the mass density of the fixture (default = 1 kg)

values between 0 and 1 (0 means no bounciness/friction)

rolling resistance has been removed in latest ReactPhysics3D. Use R3d.Body:setAngularDamping to set and get the rolling resistance

Example

-- the body
view.body = world:createBody(view:getMatrix())
local shape = r3d.SphereShape.new(params.sizex) -- radius
local fixture = view.body:createFixture(shape, nil, params.mass)
-- materials
local mat = fixture:getMaterial()
print(mat.bounciness, mat.frictionCoefficient, mat.massDensity)