> 2. Clouds rotate in an unrealistic way when doing loops and other
> maneuvers
> that involve going to/from inverted (loops, half Cuban eights, split S's
> ...)
> but it does not happen when doing rolls.  The clouds will flip over 180
> degrees
> at the top and bottom of loops for example.
(...)
> The problem appears to be that the shader that rotates the cloud texture
> rotates them from upright to inverted and inverted to upright as the
> aircraft
> transitions between upright and inverted flight in vertical maneuvers.
> This is
> clearly wrong.  Is it possible to fix this?


The algorithm explicitly breaks symmetry between horizontal and vertical
direction, i.e. it assumes that you look more or less horizontally. If you
do not do that, you get clouds which roll with you - very bad... so
breaking that symmetry is what you need.

So, what matters (for that purpose) to the algorithm is your horizontal
orientation (heading). This changes continuously if you fly a circle, but
it changes discontinuously (or very rapidly) at the top and bottom points
of a loop. This discontinuous change in heading makes the unrealistic
effect.

It is possible to fix that by an algorithm based on position vector rather
than view direction, because the relative position between plane and cloud
must change continuously at all times. Unfortunately, such an algorithm
has other drawbacks (the red sea effect - clouds turn away from you as you
approach them).

I have last year experimented with a lot of algorithms and schemes, and in
the end my conclusion was that Stuart had picked the best one already. In
case you're seriously interested, I documented all in the wiki:

http://wiki.flightgear.org/index.php/Howto:_Modelling_clouds

While the unrealistic behaviour in loops can't really be cured, it could
be lessened by doing what nature does - using more cloudlets with less
features (up-down distinction) and build cloud structure not by texture
but by positioning selected cloudlets with better control. That would need
a factor of maybe 20-100 more cloudlets per cloud.

With the resources of a current PC in the Flightgear environment, you can
have 5000-10000 cloudlets, i.e. you'd be limited to 50 Cumulus clouds in
the sky or so. I concluded that under these circumstances, fixing the
aerobatics problem is not worth pursuing. You can experiment with building
clouds that way - the local weather menu point has a 'cloudbox' entry,
that is designed to build such many-cloudlet clouds (you may have to edit
a bit of you want different textures).

I have cooked up also schemes with static (non-rotated models) clouds -
these would have none of the above problems, but the trouble is that
Flightgear (OSG?) doesn't display a stack of multiple semi-transparent
surfaces correctly if they are not exactly parallel - so these schemes
don't work.

So unless

Cheers,

* Thorsten


------------------------------------------------------------------------------
Increase Visibility of Your 3D Game App & Earn a Chance To Win $500!
Tap into the largest installed PC base & get more eyes on your game by
optimizing for Intel(R) Graphics Technology. Get started today with the
Intel(R) Software Partner Program. Five $500 cash prizes are up for grabs.
http://p.sf.net/sfu/intelisp-dev2dev
_______________________________________________
Flightgear-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/flightgear-devel

Reply via email to