Skip to content

ericrius1/threex.oimo

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

16 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

threex.oimo

threex.oimo is a threex extension for three.js which provides a realistic physics easy to include in your own games. It is a bunch of helpers for oimo.js physics library.

Show Don't Tell

How To Install It

You can install it via script tag

 <script src='threex.oimo.js'></script>

Or you can install with bower, as you wish.

bower install threex.oimo

How To Use It

Well first you need to create a oimo.js world. You do that like this

var world	= new OIMO.World()

Then, at every frame, update your mesh position/rotation.

world.step()

Then you need to create physics bodies and make them move

.createBodyFromMesh()

It will create the IOMO.Body from a three.js mesh you give it. Currently it support THREE.CubeGeometry and THREE.SphereGeometry. First create a normal THREE.Mesh

var geometry	= new THREE.CubeGeometry(1,1,1)
var material	= new THREE.MeshNormalMaterial()
var mesh	= new THREE.Mesh( geometry, material )
scene.add(mesh)

Then you create the IOMO.Body for it

var body	= THREEx.Iomo.createBodyFromMesh(world, mesh)

.Body2MeshUpdater()

It will update the position/rotation of a THREE.Mesh based on a position/rotation of a IOMO.Body. You need this to see your meshes moves according to oimo.js physics. First you create the object

var updater	= new THREEx.Iomo.Body2MeshUpdater(body, mesh)

Then, at every frame, update your mesh position/rotation.

updater.update()

.Stats()

It will display statistic from oimo.js, it may be useful to know what is going on. It acts very much like mrdoob's stats or threex.rendererstats.

var oimoStats	= new THREEx.Iomo.Stats(world)
document.body.appendChild(oimoStats.domElement)

Then, at every frame, update it.

oimoStats.update()

Releases

No releases published

Packages

No packages published

Languages

  • JavaScript 100.0%