1.2.2 • Published 4 years ago

oimophysics v1.2.2

Weekly downloads
13
License
MIT
Repository
github
Last release
4 years ago

OimoPhysics

A lightweight 3D physics engine.

API Documentation

Demos

  • Press E or Q to change demos
  • Click or tap text to control

Features

  • Written in Haxe
  • Exported as JavaScript (see bin/js/) Public classes and methods will be exposed through windwow.OIMO. e.g. new OIMO.Vec3(1, 2, 3) to create an instance of Vec3 class.
  • Rigid body motion types Dynamic Static * Kinematic
  • Fast collision detection with bounding volume hierarchy (BVH)
  • Contacts with friction and restitution
  • Collision geometries Sphere Box Cylinder Cone Capsule Convex hull
  • Joints with springs, limits and motors Spherical (a.k.a. ball and socket, point to point) Revolute (a.k.a. hinge) Cylindrical Prismatic (a.k.a. slider) Universal Ragdoll (a.k.a. cone twist, character)
  • Breakable joints
  • Constraint solvers Direct block MLCP solver Projected Gauss-Seidel solver
  • Sleepings with island splittings
  • Rotation limits
  • Collision event callbacks
  • Collision filterings
  • Collision queries AABB query ray casting * convex casting

Compile JavaScript demos in Haxe

  • Use Haxe 4.0.0 or later
  • main class: demo.js.DemoJS
  • Try enabling compiler options if fails -D analyzer -D eval-stack

License

The MIT License


Old Version

  • Written in ActionScript 3.0
  • Supports spheres and boxes as collision shapes
  • Supports various joints (ball and socket, distance, hinge, prismatic, etc...)
  • Fast and stable collision solver
  • Available in old/ directory