# Linux playground

#### Gondos

##### Active member
@Gondos
Did you change anything in the shaders besides the normal maps? I have the feeling that it looks a bit lacking in contrast.
Yes, I did a cheap tonemapping to reduce saturation due to additional lights but the result is not that good :
Code:
vec3 lumaBasedReinhardToneMapping(vec3 color)
{
//const float gamma=2.2;
float luma = dot(color, vec3(0.2126, 0.7152, 0.0722));
float toneMappedLuma = 1.3 * luma / (1. + luma);
color *= toneMappedLuma / luma;
//color = pow(color, vec3(1. / gamma));
return color;
}
I disabled the gamma ramp, maybe with a bit of tuning it could be made better.
Keep in mind that it is not a global tonemapper which would require finding the brightest spot in the image, I'll try to figure out how it is done in the D3D9 client...
Next I would like to set up some shadow mapping but it's a big step compared to normal maps.
Also I've read about sRGB color space which may explain part of the issue but my knowledge is still too weak to work on that yet.

#### Matias Saibene

##### Orbiter Linux Beta Tester
I have tested Orbiter and it looks awesome.

The lighting and normalmaps look excellent.
However I have a problem with the XR2 mesh which is no longer even available on dbeachy's GitHub site. I'm also having some issues with the DeltaGlider, no text on the HUD. And some texts on the panels are not visible.
But don't worry, I'll do more complete tests later and I'll send you the results with videos and everything.

Great job you're doing, keep it up!

#### jedidia

##### shoemaker without legs
However I have a problem with the XR2 mesh which is no longer even available on dbeachy's GitHub site.
I'd imagine you have to install the regular XR-2 add-on, then replace the module file with the one you built for linux... ?

#### Gondos

##### Active member
I'd imagine you have to install the regular XR-2 add-on, then replace the module file with the one you built for linux... ?
Sadly no, when using the mesh from the 1.10 version, you get this contraption :

#### Gondos

##### Active member
I'm also having some issues with the DeltaGlider, no text on the HUD
I just pushed a fix for this one

#### jedidia

##### shoemaker without legs
Sadly no, when using the mesh from the 1.10 version, you get this contraption :
View attachment 31784
Ah yes, the mesh encryption. I guess the code for that is not contained in the open source version, didn't think of that.

#### Gondos

##### Active member
Just pushed some rework to use a logarithmic depth buffer to remove the resizing hacks in preparation for the work on shadow mapping.
I expect some regressions, feel free to report them (also please notify me if there's a drop in performance with this). For now I've noticed some glitches with Saturn's rings but I think it was introduced earlier.

#### Matias Saibene

##### Orbiter Linux Beta Tester
Just pushed some rework to use a logarithmic depth buffer to remove the resizing hacks in preparation for the work on shadow mapping.
I expect some regressions, feel free to report them (also please notify me if there's a drop in performance with this). For now I've noticed some glitches with Saturn's rings but I think it was introduced earlier.
I'm just testing Orbiter Linux for a few days and since the penultimate update (the one with the normalmaps) I've noticed a drastic drop in FPS. Before I had 60FPS and now if the camera is looking at the terrain I have 10FPS.

#### Gondos

##### Active member
I'm just testing Orbiter Linux for a few days and since the penultimate update (the one with the normalmaps) I've noticed a drastic drop in FPS. Before I had 60FPS and now if the camera is looking at the terrain I have 10FPS.
What kind of hardware do you work with? (sorry if you said it ealier, I can't be bothered with searching the thread ^^)
I'll see if I can profile this

#### Matias Saibene

##### Orbiter Linux Beta Tester
What kind of hardware do you work with? (sorry if you said it ealier, I can't be bothered with searching the thread ^^)
I'll see if I can profile this
Don't worry, Orbiter probably works fine on decent new computers.
My specifications are:
Nucleo Group MB40II2 Laptop - year 2013
Processors: 4 × Intel® Core™ i3-2330M CPU @ 2.20GHz
Memory: 3.7 GiB of RAM
Graphics Processor: Desktop Intel® HD Graphics 3000 - 1GB

#### Gondos

##### Active member
Don't worry, Orbiter probably works fine on decent new computers.
My specifications are:
Nucleo Group MB40II2 Laptop - year 2013
Processors: 4 × Intel® Core™ i3-2330M CPU @ 2.20GHz
Memory: 3.7 GiB of RAM
Graphics Processor: Desktop Intel® HD Graphics 3000 - 1GB
This is almost as old as my current 9800GTX
Improving visuals will make things slower, but in its current state, it should be faster than the D3D9 client (which implements a lot more effects). What kind of FPS do you have with it?

#### Matias Saibene

##### Orbiter Linux Beta Tester
With Orbiter D3D9 I have 30FPS. However I have noticed that with Orbiter Linux despite having low FPS the temperature of my computer does not increase, as it does in D3D9.
But don't worry Orbiter is running on Linux and I'm happy with that. Windows doesn't detect my headphone jack so imagine the joy of having Orbiter on Linux and with headphones.

I still need to test this last update you posted.

----------------------EDIT-------------------------

I tried the new update but Orbiter segfaults:

Bash:
[[email protected] Orbiter]$./Orbiter Fragment shader compilation failure! 0:112(1): error: #extension directive is not allowed in the middle of a shader Abortado (core' generado) Last edited: #### Gondos ##### Active member With Orbiter D3D9 I have 30FPS. However I have noticed that with Orbiter Linux despite having low FPS the temperature of my computer does not increase, as it does in D3D9. But don't worry Orbiter is running on Linux and I'm happy with that. Windows doesn't detect my headphone jack so imagine the joy of having Orbiter on Linux and with headphones. I still need to test this last update you posted. ----------------------EDIT------------------------- I tried the new update but Orbiter segfaults: Bash: [[email protected] Orbiter]$ ./Orbiter
Fragment shader compilation failure! 0:112(1): error: #extension directive is not allowed in the middle of a shader

Abortado (core' generado)
Great, now we have to deal with driver variety
I pushed a commit to disable the extension

Magnificent ship

#### Matias Saibene

##### Orbiter Linux Beta Tester
Hi @Gondos,
Greetings and I hope you are having a great new year.

I have tried again Orbiter Linux and found the following bugs:

Drawing errors appear on some DeltaGlider graphics. Screenshot attached.

Scenarios:

Deepstar All Vessels 1 - Copy
Deepstar All Vessels 1
Deepstar All Vessels 2

do not work. It seems there is a problem loading the rover. Log attached.

There is an bug in the Deepstar textures: the logos of the space agencies are shown on black. It's strange.

I also have an even weirder error. Like I said I was able to open a Deepstar scenario. But now after closing and reopening Orbiter I can no longer load any scenarios with the Deepstar.
I tried to open any scenario, for example with my Luna-3 model and then add the Deepstar with the Scenario Editor. But it was impossible, Orbiter crashes. Log attached.

The Dragonfly doesn't work either. Log attached.

In the Hubble and STS scenarios you cannot open the charge manipulation dialog with [CTRL]+[SPACE]. Log attached.

About the performance I tell you that it is not very good but my computer can easily be blamed, so don't worry about it. However, it strikes me that non-native Orbiter (Wine) works slightly faster. But I'm not complaining. Performance issues appear when I am viewing the terrain of the Earth or whatever planet/moon I am on. In orbit of other celestial bodies Orbiter works very well.

#### Attachments

• Orbiter-dragonfly-run-log.txt
2.6 KB · Views: 0
• Orbiter-deeptar_rover-run-log.txt
5.1 KB · Views: 0
• Orbiter-deepstar-run-log.txt
2.9 KB · Views: 0
• Orbiter-STS-run-log.txt
3.9 KB · Views: 0

#### Gondos

##### Active member
Hi @Gondos,
Greetings and I hope you are having a great new year.

I have tried again Orbiter Linux and found the following bugs:

Drawing errors appear on some DeltaGlider graphics. Screenshot attached.
View attachment 31933
Scenarios:

Deepstar All Vessels 1 - Copy
Deepstar All Vessels 1
Deepstar All Vessels 2

do not work. It seems there is a problem loading the rover. Log attached.

There is an bug in the Deepstar textures: the logos of the space agencies are shown on black. It's strange.

I also have an even weirder error. Like I said I was able to open a Deepstar scenario. But now after closing and reopening Orbiter I can no longer load any scenarios with the Deepstar.
I tried to open any scenario, for example with my Luna-3 model and then add the Deepstar with the Scenario Editor. But it was impossible, Orbiter crashes. Log attached.

The Dragonfly doesn't work either. Log attached.

In the Hubble and STS scenarios you cannot open the charge manipulation dialog with [CTRL]+[SPACE]. Log attached.

About the performance I tell you that it is not very good but my computer can easily be blamed, so don't worry about it. However, it strikes me that non-native Orbiter (Wine) works slightly faster. But I'm not complaining. Performance issues appear when I am viewing the terrain of the Earth or whatever planet/moon I am on. In orbit of other celestial bodies Orbiter works very well.
Hi,
This is quite strange I can't get anything to show on my end apart from the text, don't even know what texture it's using as a template

The rovers are using the GeneralVehicle addon which is not provided, I took a look at it a while ago but since it's not GPL compatible (forbidden to use commercially), I'd prefer to use something else.
The DragonFly is using immediate mode OpenGL to render the ADI so it conflicts with the OGLClient, I've been postponing work on this, I think the best would be to reuse the ADIBall from the ShuttleA (NASSP has the same issue BTW).
The Atlantis control dialogs would need to be ported to the ImGui stuff before being usable...
Regarding the performance, I've been looking at the D3D9Client implementation of normal maps and it is quite simpler compared to what I found in online tutorials. I wonder if it wouldn't be a bad idea to rework the OGL client based on it instead of the D3D7 one...
Thanks for the reports

#### Gondos

##### Active member
On another note, I finally managed to install Windows on my old hardware and could get to compile this puppy :

The performance is quite reasonable as well
Now I'm trying to compile my linux branch on it but cmake is killing me again... GLFW is providing libs and headers for Windows but no siree Bob, cmake wants a cmake config file of its own, that I need to put in the very directory that I need to tell cmake where to look for, for it to find glfw... What a steaming pile of
The idea is to setup a dev environment so I can start doing some proper pull requests later...

Last edited:

#### doseijin

##### New member
On another note, I finally managed to install Windows on my old hardware on could get to compile this puppy :
View attachment 31960
The performance is quite reasonable as well
Now I'm trying to compile my linux branch on it but cmake is killing me again... GLFW is providing libs and headers for Windows but no siree Bob, cmake wants a cmake config file of its own, that I need to put in the very directory that I need to tell cmake where to look for, for it to find glfw... What a steaming pile of
The idea is to setup a dev environment so I can start doing some proper pull requests later...
Pull requests over to the original repository? Good luck! It's probably fairly desynced by now right?

#### Gondos

##### Active member
Pull requests over to the original repository? Good luck! It's probably fairly desynced by now right?
Understatement of the year
I'd just like to do some simple PRs : replacing #include "orbitersdk.h" -> #include "Orbitersdk.h", simple things like that that cost nothing but are show stoppers for a portable version.
There may also still be some GDI stuff that could be ported to sketchpad, file enumeration using standard C++ instead of WinAPI...

#### jedidia

##### shoemaker without legs
On another note, I finally managed to install Windows on my old hardware and could get to compile this puppy :
Does the proximity radar work? As far as I remember, quite a lot of important features of that thing don't quite work anymore on Orbiter 2016...

Replies
118
Views
10K
Replies
74
Views
5K
Replies
6
Views
749
Replies
2
Views
816
Replies
45
Views
3K