Farseer Physics Movement XNA

Started by
0 comments, last by Bayinx 11 years, 10 months ago
Hey. I am working on a 2D Terraria-Like game, and I needed some help with the movement. To handle both collisions and physics, I am using the Farseer Physics Engine. I have two questions, which are probably quite simple.

1. How can I make my character stop moving once the movement keys are released. With the code below, the character still continues to roll:

[source lang="java"]if(k.IsKeyDown(Keys.Left))
{

circleBody.ApplyTorque(-1000);
}
else if (k.IsKeyDown(Keys.Right))
{
circleBody.ApplyTorque(1000);
}[/source]
2. Can I make the character not bounce at all after colliding with a platform? I have set the RestitutionCoefficient to 0, but it still bounces a very small amount.

3. Is there a way to prevent the character from rotating its texture?

Thanks for the help
Advertisement

Hey. I am working on a 2D Terraria-Like game, and I needed some help with the movement. To handle both collisions and physics, I am using the Farseer Physics Engine. I have two questions, which are probably quite simple.

1. How can I make my character stop moving once the movement keys are released. With the code below, the character still continues to roll:


As can see in the source code of the Body class there is a method called ResetDynamics(). I believe that this method is the one you are looking for.


[background=rgb(250, 251, 252)]2. Can I make the character not bounce at all after colliding with a platform? I have set the RestitutionCoefficient to 0, but it still bounces a very small amount.[/background]





I am not sure about this one, but try also setting the ground restitution to 0.



3. Is there a way to prevent the character from rotating its texture?

There is a propriety in the class Body name FixedRotation. Set it to true to have the character keep its rotation to 0.

Hope this is helpful ;).

This topic is closed to new replies.

Advertisement