Difference between revisions of "ReactPhysics3D"

From GiderosMobile
(added debug draw)
 
(6 intermediate revisions by 2 users not shown)
Line 5: Line 5:
  
 
=== Description ===
 
=== Description ===
ReactPhysics3D is an open source 3D physics and collision engine [[https://www.reactphysics3d.com/ React Physics 3D home page]].
+
ReactPhysics3D is an open source 3D physics and collision engine [[https://www.reactphysics3d.com/ React Physics 3D home page]] (not up to date!).
 +
 
 +
You can also check '''[[https://github.com/DanielChappuis/reactphysics3d React Physics 3D GitHub]]'''.
 +
 
 +
Official '''[[https://github.com/DanielChappuis/reactphysics3d/blob/master/documentation/UserDocumentation.md React Physics 3D documentation]]'''.
 +
 
 +
Changelog '''[[https://github.com/DanielChappuis/reactphysics3d/blob/master/CHANGELOG.md?plain=1 React Physics 3D Changelog]]'''.
 +
 
 +
 
 +
'''Gideros ReactPhysics3D version is version 0.10.2'''.
 +
 
 +
To add '''ReactPhysics3D engine''' to your application you call:
 +
<syntaxhighlight lang="lua">
 +
require "reactphysics3d"
 +
</syntaxhighlight>
  
 
Basically you:
 
Basically you:
# '''create the 3d world''' => [[R3d.World.new]]
+
# '''create the 3d world''' => [[r3d.World.new]]
 
# '''add the 3d world DebugDraw (recommended for testing)''' => [[r3d.DebugDraw.new]]
 
# '''add the 3d world DebugDraw (recommended for testing)''' => [[r3d.DebugDraw.new]]
# '''create your body''' => [[R3d.World:createBody]]
+
# '''create your body''' => [[r3d.World:createBody]]
# '''define the shape of your body''' => example: a sphere [[R3d.SphereShape.new]]
+
# '''define the shape of your body''' => example: a sphere [[r3d.SphereShape.new]]
# '''add the fixture''' => [[R3d.Body:createFixture]]'''
+
# '''add the fixture''' => [[r3d.Body:createFixture]]'''
# '''add joints (optional)''' => example: a fixed joint [[R3d.World:createFixedJoint]]
+
# '''add joints (optional)''' => example: a fixed joint [[r3d.World:createFixedJoint]]
 
# ''' HAVE FUN! '''
 
# ''' HAVE FUN! '''
  
Line 22: Line 36:
 
[[r3d.Fixture]]<br/><!--GIDEROSOBJ:r3d.Fixture-->
 
[[r3d.Fixture]]<br/><!--GIDEROSOBJ:r3d.Fixture-->
 
[[r3d.Joint]]<br/><!--GIDEROSOBJ:r3d.Joint-->
 
[[r3d.Joint]]<br/><!--GIDEROSOBJ:r3d.Joint-->
<!--[[Special:MyLanguage/r3d.FixedJoint|r3d.FixedJoint]]<br/>--><!--GIDEROSOBJ:r3d.FixedJoint-->
+
<!--[[r3d.FixedJoint]]<br/>--><!--GIDEROSOBJ:r3d.FixedJoint-->
<!--[[Special:MyLanguage/r3d.HingeJoint|r3d.HingeJoint]]<br/>--><!--GIDEROSOBJ:r3d.HingeJoint-->
+
<!--[[r3d.HingeJoint]]<br/>--><!--GIDEROSOBJ:r3d.HingeJoint-->
 
[[r3d.Shape]]<br/><!--GIDEROSOBJ:r3d.Shape-->
 
[[r3d.Shape]]<br/><!--GIDEROSOBJ:r3d.Shape-->
<!--[[Special:MyLanguage/r3d.BallAndSocketShape|r3d.BallAndSocketShape]]<br/>--><!--GIDEROSOBJ:r3d.BallAndSocketShape-->
+
<!--[[r3d.BallAndSocketShape]]<br/>--><!--GIDEROSOBJ:r3d.BallAndSocketShape-->
<!--[[Special:MyLanguage/r3d.BoxShape|r3d.BoxShape]]<br/>--><!--GIDEROSOBJ:r3d.BoxShape-->
+
<!--[[r3d.BoxShape]]<br/>--><!--GIDEROSOBJ:r3d.BoxShape-->
<!--[[Special:MyLanguage/r3d.CapsuleShape|r3d.CapsuleShape]]<br/>--><!--GIDEROSOBJ:r3d.CapsuleShape-->
+
<!--[[r3d.CapsuleShape]]<br/>--><!--GIDEROSOBJ:r3d.CapsuleShape-->
<!--[[Special:MyLanguage/r3d.ConcaveMeshShape|r3d.ConcaveMeshShape]]<br/>--><!--GIDEROSOBJ:r3d.ConcaveMeshShape-->
+
<!--[[r3d.ConcaveMeshShape]]<br/>--><!--GIDEROSOBJ:r3d.ConcaveMeshShape-->
<!--[[Special:MyLanguage/r3d.ConvexMeshShape|r3d.ConvexMeshShape]]<br/>--><!--GIDEROSOBJ:r3d.ConvexMeshShape-->
+
<!--[[r3d.ConvexMeshShape]]<br/>--><!--GIDEROSOBJ:r3d.ConvexMeshShape-->
<!--[[Special:MyLanguage/r3d.HeightFieldShape|r3d.HeightFieldShape]]<br/>--><!--GIDEROSOBJ:r3d.HeightFieldShape-->
+
<!--[[r3d.HeightFieldShape]]<br/>--><!--GIDEROSOBJ:r3d.HeightFieldShape-->
<!--[[Special:MyLanguage/r3d.SphereShape|r3d.SphereShape]]<br/>--><!--GIDEROSOBJ:r3d.SphereShape-->
+
<!--[[r3d.SphereShape]]<br/>--><!--GIDEROSOBJ:r3d.SphereShape-->
 
[[r3d.World]]<br /><!--GIDEROSOBJ:r3d.World-->
 
[[r3d.World]]<br /><!--GIDEROSOBJ:r3d.World-->
 
</div>
 
</div>
  
 
{{GIDEROS IMPORTANT LINKS}}
 
{{GIDEROS IMPORTANT LINKS}}

Latest revision as of 01:56, 15 December 2025

Supported platforms: Platform android.pngPlatform ios.pngPlatform mac.pngPlatform pc.pngPlatform html5.pngPlatform winrt.pngPlatform win32.png
Available since: Gideros 2019.10

Description

ReactPhysics3D is an open source 3D physics and collision engine [React Physics 3D home page] (not up to date!).

You can also check [React Physics 3D GitHub].

Official [React Physics 3D documentation].

Changelog [React Physics 3D Changelog].


Gideros ReactPhysics3D version is version 0.10.2.

To add ReactPhysics3D engine to your application you call:

require "reactphysics3d"

Basically you:

  1. create the 3d world => r3d.World.new
  2. add the 3d world DebugDraw (recommended for testing) => r3d.DebugDraw.new
  3. create your body => r3d.World:createBody
  4. define the shape of your body => example: a sphere r3d.SphereShape.new
  5. add the fixture => r3d.Body:createFixture
  6. add joints (optional) => example: a fixed joint r3d.World:createFixedJoint
  7. HAVE FUN!

Classes