New Release OGLA OpenGL Client 080919

Tommy

Well-known member
Joined
Aug 14, 2008
Messages
2,019
Reaction score
86
Points
48
Location
Here and now
Looks good, but... What exactly is GDI? And how does it affect the visuals in Orbiter?

GDI is how Orbiter "paints" the MFD's. Without the GDI emulation, all your MFD's will be blank. Since GDI (Graphic Display Interface, or somesuch) is a propietary Microsoft library, it doesn't exist on anything but Windows. Since Artlav is trying to make the OGLA client multi-platform, he isn't using the GDI libraries, and has to provide some sort of emulation. Also, AFAIK GDI only works ove Direct X, so an Open GL client will need emulation even on Windows.
 

Artlav

Aperiodic traveller
Addon Developer
Beta Tester
Joined
Jan 7, 2008
Messages
5,789
Reaction score
778
Points
203
Location
Earth
Website
orbides.org
Preferred Pronouns
she/her
Is the max FOV code in the client easy to change? If possable could it be changed to 180 max?
FOV is defined by the client, so no problems here.
As Martins said, the projection might be a problem.

Another one is - what about 3D cockpits click detection?
Does it relay on FOV requested by the core, or not?
Completely different projection/drawing mode can have side-effects.

Artlav, any plans to add Earth shine to OGLA?
Certainly, as an option.
It's not a very performance-friendly effect.

Looks good, but... What exactly is GDI? And how does it affect the visuals in Orbiter?
GDI is how Orbiter "paints" the MFD's. Without the GDI emulation, all your MFD's will be blank. Since GDI (Graphic Display Interface, or somesuch) is a propietary Microsoft library, it doesn't exist on anything but Windows. Since Artlav is trying to make the OGLA client multi-platform, he isn't using the GDI libraries, and has to provide some sort of emulation. Also, AFAIK GDI only works ove Direct X, so an Open GL client will need emulation even on Windows.
GDI (Graphics Device Interface) is the pens and canvas that are used to draw MFD's and other flat things in Orbiter. The GDI is largely incompatible with OpenGL, which have it's own brushes and canvas, so a transformation is expected between the two, which is Very Slow.

GDI does not only works over DirectX, but is the system that draws most of what Windows is - most typical Windows applications draw their windows and controls by GDI or one of it's descendants.
 

BHawthorne

Simpit Builder
Donator
Joined
Mar 15, 2008
Messages
324
Reaction score
3
Points
18
The FOV code change wouldn't effect the simpit builders, as the cockpit would be real in those use. No need for clickable VC. For the regular users though, good question. A few of us are looking to mutli-projector visuals for simpit builds. Potentially 3x1280x720, 2x1280x720 or some combination of 2 or 3 projectors. Personally, I have 3 720p projectors in my setup that will be projected onto a circular screen. The idea is for an immersive projection view. Currently only the OGLAClient can give the resolutions needed to achieve it.
 

Hielor

Defender of Truth
Donator
Beta Tester
Joined
May 30, 2008
Messages
5,580
Reaction score
2
Points
0
Just tried it (080919) out, because for whatever reason my framerate drops to ~7fps after a few minutes in any of the DX clients, including 060929. Using OGLA, it ran well for the entirety of a trip from Cape Canaveral to Habana, with 60 fps average (about) even though I was running it windowed mode.

A few things I noticed:
-Shadows can do some "funky" things sometimes. I was using High shadow mode (since I didn't like the blockiness in VHigh) and noticed that occasionally shadows would cancel each other out and result in a not-shadow. Easiest way I found to see this was to take a DG in flight approximately perpendicular to the sun's vector, then put the DG between the sun and the camera. Everything goes dark (would be an interesting effect, but as is it's a little overdone), and as you move the camera around you can occassionally see patches of light and dark on the exterior of the DG where the passengers are casting their shadows. Very distracting, but not a dealbreaker.

-Habana was under ground; however, it allowed me to fly through the terrain to land. I just had the default download enabled, none of the high-res heightmaps or textures. Last time I used Orulex it put a "crater" around all bases--has that been replaced with needing to use high-res heightmaps?

-The moon looks kind of weird from the surface of the earth. It seems that if an effect similar to your nadir shade could be applied, it would look better, but as it is it looks a lot like a ball just kinda hanging there.

Other than those, though, it looked really good and ran very well. Keep up the good work!
 

Coolhand

Addon Developer
Addon Developer
Joined
Feb 7, 2008
Messages
1,150
Reaction score
7
Points
0
Website
www.scifi-meshes.com
Certainly, as an option.
It's not a very performance-friendly effect.

Just out of interest, How would you handle that effect? earth shine is essentially light from the sun, bouncing off the earth and lighting nearby objects - intensity dependant on how much of the earths surface is lit.

in a 3d rendering app i'd simulate it with a small array of point lights or actually simulate the bounced light - though the latter comes with a big render time penalty... But if you used just one point light would it slow things down much?
 

Grawp

New member
Joined
Mar 21, 2008
Messages
19
Reaction score
0
Points
0
I've tried Orbiter with latest OGLA in Wine under openSUSE and it worked. (had to disable some effects and use 'winetricks' to obtain some libraries).
The biggest problem is that the orbiter doesn't respond to pressed keys. Simply, the keyboard focus is on window with OGLA (which can be controlled, F7....) but the pressed keys don't pass to orbiter itself. Some games had problem with this but they fixed it (for those games). I will probably send a bug report tomorrow.
The really interesting is that GDI in normal orbiter without OGLA works with wine (although with white background istead of black on MFDs) but GDI emulation in OGLA doesn't work under wine. Does anybody have a clue why? What is used for rendering MFDs in OGLA? for Artlav: Have you progressed with Orbiter under wine + native OGLA solution?

sorry for my english
 
Top