SimpleWings
SimpleWings copied to clipboard
Non-zero lift at zero angle of attack causes discontinuous lift when shifting from positive to negative AOA
Wings don't actually ever use the negative side of the lift curve because angle of attack lookup is always done with a positive number. This is why when wings have a nonzero lift at angle 0, it creates discontinuities.
This can be worked around by making a wing that creates zero lift at 0 degrees, but is set on the plane at some positive angle.
Another solution is to have a minAngleOfAttack. And if the angleOfAttack goes bellow it then set it to that number. That way the wing will always have lift at minAngleOfAttack.
angleOfAttack = Vector3.Angle(Vector3.forward, localVelocity);
if (angleOfAttack < minAngleOfAttack)
{
angleOfAttack = minAngleOfAttack;
}`
```