Thank you for the help!!! In the following days I could fix some problems:
1st Problem - Mass and the huge values - solved
After reading following at the Box2D Manual:
Being a 2D physics engine, it is tempting to use pixels as your units. Unfortunately this will lead to a poor simulation and possibly weird behavior. An object of length 200 pixels would be seen by Box2D as the size of a 45 story building. Imagine trying to simulate the movement of a high-rise building with an engine that is tuned to simulate ragdolls and barrels. It isn't pretty.
So I started again with my old FP2.3 project and ported it with the ConvertUnits-Class to FP3.0. This helped a lot and I can use the old lower values now :)
2nd Problem - The error that happened sometimes... - solved too
I always got this strange error(http://northwindgames.de/uploads/error.png). Due the bad performance on creating geometry objects in FB2.3 on the xbox360, I made a 2nd thread to load track parts while
playing. But in FP3.0 you are not allowed to create bodies during callbacks.
After adding this line before creating the body the error was gone :)
3rd Problem - Roller Coaster Car gets stuck in the car - NEW
I got a new problem with my roller coaster car, sometimes it gets stuck in the track.. To show you the problem I have uploaded a small video to youtube:
Creating the car:
bodyCar = FixtureFactory.CreateRectangle(GameHelpfulGlobals.Instance.physicsSimulator,ConvertUnits.ToSimUnits(112f),ConvertUnits.ToSimUnits(34f),0.3f);
bodyCar.Body.Mass = 1000;
bodyCar.Body.Inertia = 0.0f;
bodyCar.Body.AngularDamping = 10f;
bodyCar.Body.BodyType = BodyType.Dynamic;
bodyCar.Friction = 0.1f;
bodyCar.CollisionGroup = (int)CollisionCategory.Cat2;
bodyCar.CollisionCategories = CollisionCategory.Cat2;
bodyCar.CollidesWith = CollisionCategory.Cat1 & CollisionCategory.Cat4 & CollisionCategory.Cat5
bodyCar.Body.Active = true;
For moving the object, I'm using the LinearVelocity value:
if ( input.CurrentKeyboardStates.IsKeyDown(Microsoft.Xna.Framework.Input.Keys.W))
if (bodyCar.Body.LinearVelocity.X <= 5f)
bodyCar.Body.LinearVelocity = new Vector2(bodyCar.Body.LinearVelocity.X + 0.3f, bodyCar.Body.LinearVelocity.Y);
bodyCar.Body.ApplyForce(new Vector2(0f, -100f));
But the car also gets stuck if I am not pressing the W Key...
This makes the game unplayable at the moment :( Do you have any ideas what could solve the problem?