Giter Club home page Giter Club logo

chipmunk.js's Introduction

Chipmunk.js

Chipmunk.js is a port of the Chipmunk library to Javascript. Chipmunk is a rigid body physics library in C designed for 2D games.
It’s not a 1:1 port of the API, more of an OOP-Port. For instance cpSpaceAddShape(space, foo) in Chipmunk is space.addShape(foo) in Chipmunk.js.

Status

Currently most of the API is ported.

Since most of the code is similiar to the original C version there still is a lot of potential (and probably need) for optimizing it for Javascript.

It’s not recommend to use Chipmunk.js yet, since it’s largely untested and unstable (for instance putting components to sleep tends to run into an infinite loop) and still in a very early alpha stage!

Requirements

Until now it only requires a AMD compatible scriptloader like requireJS or curl.js.

License

Chipmunk.js is licensed under the terms of the MIT license: http://murphy.mit-license.org/

chipmunk.js's People

Contributors

moerphy avatar

Stargazers

Michael Anthony avatar 墨神 avatar 平江 avatar Robbin Zhu avatar Kendrick Von Ledet avatar Brad Pillow avatar Stephen avatar  avatar  avatar Iain Ballard avatar David Garcia avatar finscn avatar  avatar Lorenzo Gatti avatar 延 avatar Craig Sharkie avatar Zachary Johnson avatar Rolando Abarca avatar Seph Gentle avatar

Watchers

 avatar James Cloos avatar Michael Anthony avatar Charles de MAGNEVAL avatar

chipmunk.js's Issues

Freezing when contact graph is enabled.

When enabling the contact graph by setting a sleep time threshold the application will freeze in most cases.

It seems to boil down to an infinite loop in cp/Body.floodFillComponent, caused by the arbiters being linked circular.
There is an issue on the Chipmunk support forum that sounds exactly like this issue only that it does not occur that often.

I disabled sleeping bodies until I figure out why my contact graph does run in circles (o:

Static shapes collisions bug

When adding static bodies their collisions with dynamic bodies don't get resolved correctly.

Until now this seemed to work because no shape was actually treated as being static (a bug in Body.isRogue activated all static bodies). Fix this bug before fixing the isRogue bug.

Implement constraints

Everything that is located under cp/constraints is not ported from C yet. Code dealing with constraints (Space) is already in place, it just needs testing.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.