FP3 limits body.LinearVelocity

Oct 12, 2010 at 6:03 AM
Edited Oct 12, 2010 at 8:06 AM

Hello all,

I've made it so the coordinates follow the processing coordinates instead of box2d coordinates. I don't remember what I removed, but I think it's that I didn't reference DebugView.

However, FP3.0 is limiting the movement speed of my bodies. At first, I thought it was LinearDamping, but I *think* I'm wrong. From what I can see, the only thing that limits LinearVelocity is Island.cs's Solve() function

My questions are as follows:

1: What is this 'X' that slows my objects?

2: Does 'X' slow bodies to increase performance during the narrow-phase?

3: In the demobase examples, bodies seem to be unaffected by 'X' (ie. bodies can be set to have a high LinearVelocity).

Hello all,

I've made it so the coordinates follow the processing coordinates instead of box2d coordinates. I don't remember what I removed, but I think it's that I didn't reference DebugView.

However, FP3.0 is limiting the movement speed of my bodies. At first, I thought it was LinearDamping, but I *think* I'm wrong. From what I can see, the only thing that limits LinearVelocity is Island.cs's Solve() function

My questions are as follows:

1: What is this 'X' that slows my objects?

2: Does 'X' slow bodies to increase performance during the narrow-phase?

3: In the demobase examples, bodies seem to be unaffected by 'X' (ie. bodies can be set to have a high LinearVelocity). Does DebugView simply zoom in a high amount?

Oct 12, 2010 at 3:53 PM

Use the worldCoordinates, not using the screencoordinates in Farseer engine 3.0.

if you use the worldCoordinates, all bodies will move very fast.

and you can set the speed of the bodies.

Coordinator
Oct 12, 2010 at 4:38 PM

1. You units should be in the range of 0.1 to 10 meters in dimensions; then you can have a look at Settings.MaxTranslation. It is a limit on the velocity of bodies.

2. It limits the problems with tunneling and also keeps changes in the broad phase consistent and small.

3. It is all about the units.

Oct 16, 2010 at 9:38 AM

Let me start by saying that 3.0 looks awesome. The lack of documentation is slowing down a bit but fortunately the source code is mainly well structured so I've used it as a manual.

However, units in range of 0.1 to 10 meters sounds a bit limiting. I'm currently developing a game that involves small space ships. Does this mean that I'll run into problems if I make a ship that more than 10 meters in length? I understand that I could go around this by using another unit like 1/10 meters but it would be so much more convenient to use real world units.

Oct 16, 2010 at 7:33 PM

llaurila,

You don't have to stay within 0.1 to 10 meters. It's a recommendation. It may be just fine depending on exactly what you are doing. You will just have to try it out.

If these larger spaceships are static I expect you wont have any trouble. Otherwise there are something you could try if they are causing trouble. Adding more polygon points might help. It might also help to split up the spaceship into multiple smaller polygons that don't get longer then 10 meters. I'm not sure if it would be better to have them on the same body or different bodies connected with weld joints.

You will just have try try it out and see if it works how you want.