Giter VIP home page Giter VIP logo

Comments (3)

liabru avatar liabru commented on May 2, 2024 3

Oh, one other trick is to set body.inertia to Infinity so it can't rotate which is good for platforms.

from matter-js.

liabru avatar liabru commented on May 2, 2024

There's actually a new demo I pushed the other day that may help you a bit with this, it's called "Body Manipulation". You can try it out if you clone the matter-js repo and follow the instructions here to build and run the demo.

It's using some new functions currently only available in the edge build. See the code for the Body Manipulation demo.

My initial version used static bodies and translated them every frame, but then they don't have any velocity - so when they strike a player, the player just slides down the edge instead of pinging off it.

I can see what you mean and I think the above demo may also suffer similar issues even though they're not statics. I think ideally you should be using forces here rather than translation (e.g. Body.applyForce or body.force.x etc) but I imagine that may be difficult to control.

A better way may be able to fiddle around with Matter.constraints to do this - e.g. have them pulling in opposite directions on a body, then dynamically change the constraint points.

Thinking about it more, I imagine motors constraints etc. may need to be implemented to do this properly. So I'll put those on the list of things to look at, but I think the constraints approach is probably your best bet as it is now.

from matter-js.

mrspeaker avatar mrspeaker commented on May 2, 2024

The Body Manipulation demo is really helpful. I think I can do a bit of hacking (forcing a Y position after every update) combined with the body.inertia = Infinity trick to get what I'm after!

from matter-js.

Related Issues (20)

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.