Flying Physics

Dose anyone know how to make flying physics like a plane or heli. Something like that.
I am making a game that will make you run and then jump and start flying. I just need some tips or a tutorial on the BGE flying physics in blender. PLZ help me.


Flight physics are complicated, and you’re asking us to figure it out for you. I’d guess you also know no Python? It’s not really going to be possible until you do. So here’s what you should do:

  1. Learn Python. Check the resources section for basic tutorials on this.
  2. Do some research on the physics of flight.
  3. Do some searches on the forum and look at games that kinda/sorta have flight.

If you’re unwilling to do any of those, then design something less complicated.

I pretty much agree with TheSambassador, but have a few things to add:
Before you post anything, do some searches (on google AND these forums).

You’ll find there are 2 or 3 threads about high-quality flight physics. Probably you’re only looking for very simple flight physics (since you don’t have to worry about a person having flaps or adjusting trim).

Simplest flying physics are:
Lift = -(downward velocity)
All controls should be multiplied by forward velocity.
That’s the simplest way that is still a fair approximation of flight.

You could add an “always” sensor with a “motion” actuator for thrust and a variety of rotations for controls… This wouldn’t be realistic at all, but it’ll at least look like it is… :smiley:

Hey, I’m using this topic to avoid making a new one about the same topic. I’ve made some search on aircraft physics, but the problem is that the effect I want isn’t realistic so I cannot find much about it. According to:

There are 3 movements in flight dynamics. Roll, pitch and yaw. My question is: how do I apply a motion constraint to the Roll?

The orientation constraint actuator only apply to pitch and yaw. If my character is pointing towards the X axis then the roll would be rotating around the X axis. In a realistic airplane physics, if you apply a rotation to to Y and Z then the roll will change. But I don’t want realism. I want the roll to be always parallel to the horizon regardless of how I change rotate on Y and Z axises. I can think of a few solutions, but they all feel a bit overcomplicated for a problem that sounds so simple. (example adding one object for yaw in the XY plane + another to pitch, that would solve my problem, but sounds like a waste of resources). Is there an easy way to do this that I’m missing here?

I just finished a long term project flight simulator for my game. It has a full physics engine that is adaptable for a wide variety of planes - for example to add a new one just load it up and do a quick google search for its 1. wing area 2. max speed 3. max height (ceiling) 4. weight (just min, then you can add a ton or so to compensate). Then, load up the mesh, then change the appropriate properties. It works amazingly. I don’t want to give out my blend though, as someone might steal it and say it was theirs, as I am using it for a commercial project.

Just thought I would give you a idea of how it would work.

Instead of using an orientation constraint for the roll, it would probably be easier just to use an IPO.

I’m not sure what you’re saying, how do I use IPO’s to constrain the roll? Just using IPO to turn around one axis wouldn’t be any different from using KX_GameObject’s applyRotation(), or would it?

Sounds good.

Please, could you enlighten a bit your system? I’m not asking a code, but just a plane specific parameters would be nice to know.

Check out this, refer to the scripts in the .blend files:

Its all there.
Youll need to know python and the BGE pretty well, thats for sure.

If you give the airplane an IPO rolling from side to side, and then make it a child of an invisible cube or something, you can make the cube pitch and yaw regardless of the airplanes roll.