{"id":13744559,"url":"https://github.com/saharan/OimoPhysics","last_synced_at":"2025-05-09T03:32:21.079Z","repository":{"id":4470794,"uuid":"5609652","full_name":"saharan/OimoPhysics","owner":"saharan","description":"A cross-platform 3D physics engine","archived":false,"fork":false,"pushed_at":"2024-08-16T18:57:08.000Z","size":3608,"stargazers_count":900,"open_issues_count":15,"forks_count":70,"subscribers_count":50,"default_branch":"master","last_synced_at":"2025-04-07T22:06:30.083Z","etag":null,"topics":["haxe","haxe-library","javascript","javascript-library","physics-3d","physics-engine"],"latest_commit_sha":null,"homepage":"","language":"JavaScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/saharan.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2012-08-30T02:47:23.000Z","updated_at":"2025-04-03T04:11:51.000Z","dependencies_parsed_at":"2024-01-15T00:00:01.671Z","dependency_job_id":"fd7180ae-13f5-4392-bc1a-5c44642b1b76","html_url":"https://github.com/saharan/OimoPhysics","commit_stats":{"total_commits":72,"total_committers":7,"mean_commits":"10.285714285714286","dds":"0.13888888888888884","last_synced_commit":"966093fd666fa7397e7bc8b6700837507e49c149"},"previous_names":[],"tags_count":8,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/saharan%2FOimoPhysics","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/saharan%2FOimoPhysics/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/saharan%2FOimoPhysics/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/saharan%2FOimoPhysics/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/saharan","download_url":"https://codeload.github.com/saharan/OimoPhysics/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":253183208,"owners_count":21867381,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["haxe","haxe-library","javascript","javascript-library","physics-3d","physics-engine"],"created_at":"2024-08-03T05:01:11.808Z","updated_at":"2025-05-09T03:32:20.421Z","avatar_url":"https://github.com/saharan.png","language":"JavaScript","readme":"OimoPhysics 1.2.5\n---\n\nA lightweight 3D physics engine.\n\n![License: MIT](https://img.shields.io/badge/License-MIT-green.svg) [![npm version](https://badge.fury.io/js/oimophysics.svg)](https://badge.fury.io/js/oimophysics)\n\n## [API Documentation](https://saharan.github.io/OimoPhysics/)\n\n## Demos\n\u003ca href=\"https://el-ement.com/etc/oimo/demos/\"\u003e\u003cimg src=\"https://el-ement.com/etc/oimo/demos/thumbnail.png\"\u003e\u003c/a\u003e\n* Press `E` or `Q` to change demos\n* Click or tap texts on the left to control\n\n## Platforms\n* Written in Haxe\n* Exported as JavaScript (see [bin/js/](./bin/js))\n\t* Public classes and methods are exposed through `window.OIMO`.\n\t* e.g. `new OIMO.Vec3(1, 2, 3)` to create an instance of `Vec3` class.\n* Exported as JavaScript (module) with TypeScript Declaration (see [package.json](./package.json) and [bin/js_modules](./bin/js_modules))\n\n## Features\n* Rigid body with motion types\n\t* Dynamic\n\t* Static\n\t* Kinematic\n* Fast collision detection with bounding volume hierarchy (BVH)\n* Contacts with friction and restitution\n* Collision geometries\n\t* Sphere\n\t* Box\n\t* Cylinder\n\t* Cone\n\t* Capsule\n\t* Convex hull\n* Joints with springs, limits and motors\n\t* Spherical (a.k.a. ball and socket, point to point)\n\t* Revolute (a.k.a. hinge)\n\t* Cylindrical\n\t* Prismatic (a.k.a. slider)\n\t* Universal\n\t* Ragdoll (a.k.a. cone twist, character)\n\t* Generic (a.k.a. 6-DoF joint)\n* Breakable joints\n* Constraint solvers\n\t* Direct block MLCP solver\n\t* Projected Gauss-Seidel solver\n* Sleepings with island splittings\n* Rotation limits\n* Collision event callbacks\n* Collision filterings\n* Collision queries\n\t* AABB query\n\t* Ray casting\n\t* Convex casting\n\n## Compilations\nHaxe 4.3.4 or later is required.\n* Use `build-js.hxml` to compile for JavaScript library.\n* Use `build-js-demos.hxml` to compile JavaScript demos.\n* Use `build-doc.hxml` to generate API documentation. [dox](https://github.com/HaxeFoundation/dox) is required.\n* Use `build-js-ts.hxml` to compile for JavaScript (modules) library with TypeScript declarations. Requires `hxtsdgen` library. Check comments in that file.\n\n## License\nThe MIT License\n\n---\n\n### Old Version\n* Written in ActionScript 3.0\n* Supports spheres and boxes as collision shapes\n* Supports various joints (ball and socket, distance, hinge, prismatic, etc...)\n* Fast and stable collision solver\n* Available in [old/](./old) directory\n","funding_links":[],"categories":["Utilities"],"sub_categories":["Physics"],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsaharan%2FOimoPhysics","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fsaharan%2FOimoPhysics","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsaharan%2FOimoPhysics/lists"}