News:

Precision Simulator update 10.173 (24 February 2024) is now available.
Navburo update 13 (23 November 2022) is now available.
NG FMC and More is released.

Main Menu

Professional use of the simulator

Started by karelwhuis, Fri, 9 Jan 2015 09:54

cagarini

Quote from: Britjet on Fri, 19 Jan 2018 09:58
I have a recurring nightmare that all the money I have spent on scenery with P3D will be worthless when someone connects effectively to the likes of a next-generation Google Earth.
At present the 3D version of GE is quite "blocky" and many of the buildings look as though they have been made by a 5-year-old out of plasticine, but at least the graphics are smooth!
I took a 'trip" over Anchorage last night just using Google Earth VR and it was a way better experience than using the latest add-on for P3D. So much detail...maybe one day..
Peter

Or even Aerofly FS 2, whose sceneries and fluidity look amazing too...

Mark

Quote from: Britjet on Fri, 19 Jan 2018 09:58
I have a recurring nightmare that all the money I have spent on scenery with P3D will be worthless when someone connects effectively to the likes of a next-generation Google Earth.

Do I hear a new project idea?

cavaricooper

Quote from: Britjet on Fri, 19 Jan 2018 09:58
I have a recurring nightmare that all the money I have spent on scenery with P3D will be worthless when someone connects effectively to the likes of a next-generation Google Earth.
At present the 3D version of GE is quite "blocky" and many of the buildings look as though they have been made by a 5-year-old out of plasticine, but at least the graphics are smooth!
I took a 'trip" over Anchorage last night just using Google Earth VR and it was a way better experience than using the latest add-on for P3D. So much detail...maybe one day..
Peter

When (not if) that happens, I shall gladly consider the prior investment well spent. The trick will be to get everything else (Wx, traffic, etc.) into the "environment". Still, I use SketchUp enough to envision the possibility...

Best- C
Carl Avari-Cooper, KTPA

Will

FWIW, I never updated from FS9 to FSX or whatever the next version was. I got so mad at Microsoft for always throwing so much eye candy into their sim that every new version ran slower than the previous version. Or put another way, when a new version came out, it would be two years before a computer that could run it became affordable. Fortunately, PSX was right around the corner and now I'm happy again.
Will /Chicago /USA

jtsjc1

True Will 3rd party developers did more for MSFS than Microsoft ever did. They never issued any real updates and airports and runways are either changed or the magvar files were never changed. Fortunately some good people out there did their own mods and made it usable. The updates Hardy has done in just the past year are more than MS did in the history of FS.
Joe

Will

Thinking about external views... don't most "world simulators" work like this:

A: Calculate what's in the field of view
B: Draw everything to the screen's memory and display
C: Go to A and repeat, with the number of times you hit "C" per second being the frame rate

What about another approach?

A: Calculate what's in the field of view for screen n
B: Store it in variable "n"
C: Calculate what's in the field of view for screen n + 1
D: Store it in variable "n + 1"
E: Calculate an average between views n and n + 1
F: Draw the results of E to screen's memory and display
G: Move the contents of n + 1 to n
H: Go to C

Advantage: You wouldn't need high frame rates to get buttery smooth motion. Run it at 24 frames/sec and it would be literally as smooth as a motion picture.

Does anyone do this?
Will /Chicago /USA

Hardy Heinlin

You mean, get 50 fps instead of 25 fps by inserting one picture which contains linearly interpolated positions?

My old TV did this. Old movies looked like modern videos.

Will

No, I'm thinking that it would display 24 FPS, but the image that gets shown is halfway between the two images (steps A nd C) that are calculated but not shown.

If you froze the sim, anything moving relative to the POV would be blurry. (Of course, if you froze the sim you could just display image A or C instead of E to make the blur go away.)
Will /Chicago /USA

Hardy Heinlin

You mean, get 24 blurry frames instead of 24 sharp frames?

Will

Only things that are moving relative to the field of vision would be blurry, and the magnitude of the blur would be proportionate to the velocity. The effect would be like a movie or, for that matter, the human eye(*). Very low blur if you're looking straight ahead at the horizon while rotating at 3ยบ per second, and much more blur if you're on the ground taxying and making a hard right turn at full tiller deflection.

Another advantage to this is that objects in the "high blur" don't need to be rendered in as great a detail as stationary objects or objects in the "low blur." No point is drawing lots of sharp edges on buildings, street signs, and fenceposts if what's happening is that the plane is in a tailspin.

The effect would look exactly as if you shot a film out the cockpit at 24 fps.

*) Images on the eye's retina stay put for a few hundred milliseconds. We normally don't perceive it, but it happens, and can be the basis of some optical illusions. Things that stay put in our field of view are sharp because there isn't motion, but moving things are blurry. Keep your eyes fixed on a car as it speeds by, and you'll notice that the background looks smeared.
Will /Chicago /USA

Hardy Heinlin

#50
If I understand your idea correctly, this is not a real blur. It's just another sharp picture that is layed over the next picture at 50% transparency. In video editing programs this is an optional effect to smoothen the video if you run it below its normal speed. It helps a bit but it's not real motion blur. Motion blur effects in computer animation is a pretty young feature. It was a big thing when it was introduced 10 or 15 years ago, when computers were fast enough.

By the way, did you know that motion blur is modelled in PSX already? :-)

It's in the traffic animation in the outside view. Those green and red nav lights are not dots; they are lines. The faster their motion relative to the pilot's eye, and the lower the frame rate, the longer the lines. I implemented this effect because these little light dots are too small to be seen when they're moving fast, especially during a near miss.

To test the motion blur, get an aircraft in front of you -- at night -- and make extreme yaw movements, or set the time acceleration to a high factor. You will see green and red lines, not dots. These lines are calculated by the PSX software; it's not a physical blur of the screen hardware.

To get several aircraft in front of you for a test, go to Instructor > Situation > Human > Traffic and select "Start a semi-random preset:", then hold the ALT key while clicking "Intruder on crossing DES" (or any other preset button).

Click these presets when the time acceleration is 8 or higher.

Will

Hardy, we're close to being on the same page here.


I'm not talking about overlaying pictures with transparency. But your "lines" on traffic are a good model. Let's say you're on short final and there's a road sign next to the airport. As you get closer, the road sign starts to move faster relative to the cockpit windshield. When the road sign is stationary, the computer paints it in sharp detail. But when it starts to move more than about its own width per 1/24 second, then it is rendered as a blur which starts where the road sign is in n, and finishes where the road sign is in n + 1.  So an individual frame would look like the left image in this example from Wikipedia:

https://en.wikipedia.org/wiki/Motion_blur#/media/File:Figure-Animation2.gif

You can see that the left image includes far less specific detail, and more sort of smeariness and blur. And yet the motion appears perfectly smooth. Meanwhile, the right image looks choppy when in motion, but beautiful and crisp when frozen.

To sum, I think the advantages of doing this are that the frame rate never needs to be higher than 24 fps for perfect fluidity, and that the computer doesn't have to bother painting every last excruciating detail on every frame.

So it's like your idea of "lines" on traffic, except that everything in motion is actually a line. And the line is calculated by looking at a pixel at moment n, and comparing to to moment n + 1.
Will /Chicago /USA

Hardy Heinlin

So you mean draw a line between pixel A and pixel B, instead of drawing a pixel between pixel A and pixel B? The same what I do with the nav light pixels. The only difference being my A/B pixels are just a few, and your A/B pixels are millions.

You still need to work with complicated transparency algorithms or else some of your lines will overpaint each other.

cagarini

I believe Will is talking about something IL-2 Battle of Stalingrad calls "Cinematic View" ?

Will

jcomm, perhaos... I'm not familiar with IL-2.


Hardy, yes, that's what I'm talking about. Although I don't know that it needs to be pixel-to-pixel with multiple transparencies. Or maybe it does? I'll think some more.
Will /Chicago /USA

United744

@Martin  B:

QuoteIt seems that with every improvement in hardware the graphics get more complicated so that there's always a difficulty ($$$) getting really smooth external visuals.
That's because the sims we use as visual generators are not written to maximize graphics performance, and are generally pretty rubbish. P3D is based on FSX, which itself was not very well written to begin with. A lot of the stutters come from it loading assets or textures, or just plain choking on some of the less-than-poorly optimized calculations.

A real scenery generator built for the task, is a precise machine in its own right, designed to run at a super fluid 60 FPS without stalling, but sadly such systems are hugely expensive.

@Will:

Graphics engines use what are called frustrums to determine what to draw, and what not to draw.

https://www.gamedev.net/articles/programming/graphics/geometry-culling-in-3d-engines-r1212/

When you first load, e.g. X-Plane, and pan the view, the sim stutters as it loads all the objects and textures that you are now demanding to see by panning. Once these have been loaded once however, they are cached, so the next time you pan, they appear much quicker, reducing or eliminating the initial, much larger, pauses.

Hardy Heinlin

Quote from: Will on Fri,  9 Feb 2018 04:03
Hardy, yes, that's what I'm talking about. Although I don't know that it needs to be pixel-to-pixel with multiple transparencies. Or maybe it does? I'll think some more.

Smear effect calculations require lots of CPU power. That's why they aren't included in older animation programs and movies. Imagine a car at night with a white front light and a red aft light, driving from left to right over a distance that is greater than the car's length. Draw the red line, then the white line; the white line will overpaint most of the already drawn line of the red light. Or draw the white line, then the red line; the red line will overpaint most of the already drawn line of the white light. You'll get either pure red or pure white. In real life you would get a rosy mix.

Jeroen Hoppenbrouwers

About the only way to actually do this is to have special hardware doing the interpolation between frames. Hardware can do the gradual fading into transparancy as long as it knows from where to where. Well-tuned implementations use a few CPUs to fetch the scenery from background memory and calculate camera and light position as a 4D trajectory, and then a bunch of GPUs to project the world objects into the camera view and light them up and do all the heavy 3D stuff. Not many sim programs really use all these capabilities. It's the main reason why expensive graphics hardware is so much better.

Some graphics hardware companies have drivers that can produce the same output image (screen rendering) using either one single CPU, or a bunch, or heavy GPU hardware accelleration -- depending on how much money you throw at your system, you get progressively better performance using essentially the same application software.

OpenGL, for example, typically scales very well to accellerator hardware. I have no idea about Java Swing which I believe Hardy uses (or used?).


Hoppie

Hardy Heinlin

Java Swing are the GUI elements on the Instructor frame (except for the random malfunction double sliders and the map graphics), i.e. all the stuff that changes its look when you switch from Apple to non-Apple.

Java 2D is the stuff on the flight deck frame.

Both Swing and 2D use hardware acceleration.

Flex

I've spent the best part of my afternoon trying to get P3D v4 to run with PSX... it works but it's an absolutely monumental faff! Think i'll just stick to native PSX.