Progress
Moderators: winston, another_commander
Re: Progress
Wow, I didn't expect such a thorough answer. Thanks!
- maik
- Wiki Wizard
- Posts: 2028
- Joined: Wed Mar 10, 2010 12:30 pm
- Location: Ljubljana, Slovenia (mainly industrial, feudal, TL12)
Re: Progress
Thank you, all devs, for bringing 1.86 to life!
-
- Quite Grand Sub-Admiral
- Posts: 6682
- Joined: Wed Feb 28, 2007 7:54 am
Re: Progress
A planet lighting improvement was just committed to trunk. It makes the planets feel more natural and look more like spheres and less like discs. Obligatory piccies for before / after comparison:
The really good thing about it is that it is only a shader change, so you do not need to wait until 1.88 to check this out. If you do want to check it out, open Resources/Shaders/oolite-default-planet.fragment, go to line 232 and change it fromto
The really good thing about it is that it is only a shader change, so you do not need to wait until 1.88 to check this out. If you do want to check it out, open Resources/Shaders/oolite-default-planet.fragment, go to line 232 and change it from
Code: Select all
vec3 diffuseLight = diffuseIntensity * DIFFUSE_LIGHT;
Code: Select all
vec3 diffuseLight = diffuseIntensity * (gl_LightSource[1].diffuse * max(0.0, dot(normal, light1Vector)) + gl_LightModel.ambient).rgb;
- Cody
- Sharp Shooter Spam Assassin
- Posts: 16081
- Joined: Sat Jul 04, 2009 9:31 pm
- Location: The Lizard's Claw
- Contact:
Re: Progress
Thankee!
I would advise stilts for the quagmires, and camels for the snowy hills
And any survivors, their debts I will certainly pay. There's always a way!
And any survivors, their debts I will certainly pay. There's always a way!
- Disembodied
- Jedi Spam Assassin
- Posts: 6885
- Joined: Thu Jul 12, 2007 10:54 pm
- Location: Carter's Snort
- Diziet Sma
- ---- E L I T E ----
- Posts: 6312
- Joined: Mon Apr 06, 2009 12:20 pm
- Location: Aboard the Pitviper S.E. "Blackwidow"
Re: Progress
Done!
Most games have some sort of paddling-pool-and-water-wings beginning to ease you in: Oolite takes the rather more Darwinian approach of heaving you straight into the ocean, often with a brick or two in your pockets for luck. ~ Disembodied
-
- Quite Grand Sub-Admiral
- Posts: 6682
- Joined: Wed Feb 28, 2007 7:54 am
Re: Progress
OK, let's see... We've got a few updates recently. Let's summarize (in no particular order).
First of all, we have the update to the fell AI as discussed elsewhere in the forum. AI with accuracy higher than 0 now flees with jinking and even surprise counter-attacks (probability of a counter attack is now set to 15%) whenever necessary.
Secondly, the escape pods cannot be damaged now by ships exploding nearby. This is done so that there can be no false perceptions for the players related to when the escape pod works or not. The escape pod now works every time and using it will save the commander. Note that the probability of the pod dying near an exploding ship was rare to begin with, but since it was observed that it can happen, we thought that it would be best if the players don't think of it as a bug.
Thirdly, we have had some bug fixes related to mouse control. Hopefully playing with the mouse will be pretty much glitch-free now.
Fourthly, the ability to edit gui color settinhgs from scripts has been added. Any key in gui-settings.plist that contains the token "color" can now be changed on the fly using the getGuiColorSettingForKey(key) and setGuiColorSettingForKey(key, color) JS methods.
Fifthly, we have made some inprovements to the Linux packaging system for the game, mainly targeting cleaner uninstalls. Anyone interested in generating a flatpak installer for Oolite could benefit from this..
Sixthly, we invreased the max number of supported joysticks to 4.
And seventhly, as per request by gsagostinho we have added the minimalistic scanner. It is basically a scanner without gridlines in order to make it less cluttered and easier to view objects inside it. It can be enabled by editing hud.plist and adding the line
First of all, we have the update to the fell AI as discussed elsewhere in the forum. AI with accuracy higher than 0 now flees with jinking and even surprise counter-attacks (probability of a counter attack is now set to 15%) whenever necessary.
Secondly, the escape pods cannot be damaged now by ships exploding nearby. This is done so that there can be no false perceptions for the players related to when the escape pod works or not. The escape pod now works every time and using it will save the commander. Note that the probability of the pod dying near an exploding ship was rare to begin with, but since it was observed that it can happen, we thought that it would be best if the players don't think of it as a bug.
Thirdly, we have had some bug fixes related to mouse control. Hopefully playing with the mouse will be pretty much glitch-free now.
Fourthly, the ability to edit gui color settinhgs from scripts has been added. Any key in gui-settings.plist that contains the token "color" can now be changed on the fly using the getGuiColorSettingForKey(key) and setGuiColorSettingForKey(key, color) JS methods.
Fifthly, we have made some inprovements to the Linux packaging system for the game, mainly targeting cleaner uninstalls. Anyone interested in generating a flatpak installer for Oolite could benefit from this..
Sixthly, we invreased the max number of supported joysticks to 4.
And seventhly, as per request by gsagostinho we have added the minimalistic scanner. It is basically a scanner without gridlines in order to make it less cluttered and easier to view objects inside it. It can be enabled by editing hud.plist and adding the line
scanner_minimalistic = yes;
or by script using the read/write JS PlayerShip property scannerMinimalistic. Below is an example screen using the latest version of Dangerous HUD.- gsagostinho
- ---- E L I T E ----
- Posts: 573
- Joined: Sun Jul 19, 2015 1:09 pm
Re: Progress
The minimalist HUD looks awesome, thank you so much for putting up with all my requests! I am working on a major overhaul of the Dangerous HUD and this will be a neat new feature!
-
- Quite Grand Sub-Admiral
- Posts: 6682
- Joined: Wed Feb 28, 2007 7:54 am
Re: Progress
Heads up! We have a graphics update incoming in the next nightly.
Two new specular lighting models have been implemented in Oolite's default shaders. The first one is a more modern Blinn-Phong than the one we have been using till now - and more physically accurate too. The second one is the GGX specular model, which is slightly more complex from a computational perspective, but gives slightly better results overall than Blinn-Phong.
In the next nightly, the specular effect has been exaggerated a bit in order to be immediately observable (it can be restored at a later stage, after some testing has taken place). You will find that shiny ships look better than before and light reflections seem more realistic. The default specular model in use right now is the new Blinn-Phong. We will need proper handling of a gloss or roughness parameter (preferrably using a gloss/roughness texture) in order to take full advantage of the GGX model. For testing purposes, we are using the shininess parameter divided by 10 for GGX to assume a global gloss value for each material.
All changes have been made inside the oolite-default-shader.fragment and can be applied to 1.86 too, if you feel like editing the shader. To enable the new GGX model, define OOSPECULAR_NEW_MODEL_GGX to 1 somewhere at the beginning of the shader. Leave it as-is to have the new Blinn-Phong applied.
Although the effect is best seen in motion, here are a few pics to get an idea:
New Blinn-Phong:
GGX:
Blinn-Phong gives generally more concentrated reflections, while GGX spreads them out a bit more.
Finally, here are a couple of pics on a vanilla Oolite, with a Cobra flying over Lave. The specular reflections are a product of the GGX model.
The new shader can be downloaded from github from this link: https://raw.githubusercontent.com/Oolit ... r.fragment
Two new specular lighting models have been implemented in Oolite's default shaders. The first one is a more modern Blinn-Phong than the one we have been using till now - and more physically accurate too. The second one is the GGX specular model, which is slightly more complex from a computational perspective, but gives slightly better results overall than Blinn-Phong.
In the next nightly, the specular effect has been exaggerated a bit in order to be immediately observable (it can be restored at a later stage, after some testing has taken place). You will find that shiny ships look better than before and light reflections seem more realistic. The default specular model in use right now is the new Blinn-Phong. We will need proper handling of a gloss or roughness parameter (preferrably using a gloss/roughness texture) in order to take full advantage of the GGX model. For testing purposes, we are using the shininess parameter divided by 10 for GGX to assume a global gloss value for each material.
All changes have been made inside the oolite-default-shader.fragment and can be applied to 1.86 too, if you feel like editing the shader. To enable the new GGX model, define OOSPECULAR_NEW_MODEL_GGX to 1 somewhere at the beginning of the shader. Leave it as-is to have the new Blinn-Phong applied.
Although the effect is best seen in motion, here are a few pics to get an idea:
New Blinn-Phong:
GGX:
Blinn-Phong gives generally more concentrated reflections, while GGX spreads them out a bit more.
Finally, here are a couple of pics on a vanilla Oolite, with a Cobra flying over Lave. The specular reflections are a product of the GGX model.
The new shader can be downloaded from github from this link: https://raw.githubusercontent.com/Oolit ... r.fragment
- Getafix
- Quite Grand Sub-Admiral
- Posts: 979
- Joined: Tue Apr 01, 2008 12:55 pm
- Location: A small ice asteroid, orbiting Oresrati in Galaxy 8 (a.k.a. northwest Armorica).
- Contact:
Re: Progress
"Any sufficiently advanced information is indistinguishable from noise." [Newman, Lachmann, Moore]
-
- Quite Grand Sub-Admiral
- Posts: 6682
- Joined: Wed Feb 28, 2007 7:54 am
Re: Progress
Just a quick note to say that, after fixing a little bug with GGX, this has been now switched to the default spec model.
-
- Quite Grand Sub-Admiral
- Posts: 6682
- Joined: Wed Feb 28, 2007 7:54 am
Re: Progress
To show the importance of shininess in the new specular model, here is a comparison of shininess values from 10 to 120 (maximum shininess is 128). This series of shots was taken by freezing the game and then using the debug console to change the material properties on the fly. I hope the differences in the appearance of the material as we go up the scale are visible. Low shininess values makes it look like a painted material, while from 60 onwards the appearance starts to turn to metallic, with 120 and above starting to look more like glossy plastic or something like that. The sun light was set to red for these images, so you can see how it is reflected on the material at various shininess values. As you can see, a variety of materials can be emulated just by playing with the shininess property.
Also keep in mind that shininess does not have to be a single value. You can use the alpha channel of a specular map to store shininess information. A value of 1.0 in the alpha channel will use the defined global shininess for the material, while a value of 0.0 will reduce it to near zero. Values in between can be used to adjust the shininess, which means that you can have multiple shininess values for the same material. This in turn means that you have full freedom to make models that look partly glossy and partly rough-like.
Also keep in mind that shininess does not have to be a single value. You can use the alpha channel of a specular map to store shininess information. A value of 1.0 in the alpha channel will use the defined global shininess for the material, while a value of 0.0 will reduce it to near zero. Values in between can be used to adjust the shininess, which means that you can have multiple shininess values for the same material. This in turn means that you have full freedom to make models that look partly glossy and partly rough-like.
-
- Quite Grand Sub-Admiral
- Posts: 6682
- Joined: Wed Feb 28, 2007 7:54 am
Re: Progress
Planets have received the GGX treatment. Not much to say here, it looks like this:
- Disembodied
- Jedi Spam Assassin
- Posts: 6885
- Joined: Thu Jul 12, 2007 10:54 pm
- Location: Carter's Snort
Re: Progress
Out of interest, is it possible to do this with planet textures too? So e.g. "seas" and "ice" could be made shiny, and "deserts", "forests" and "plains" could be matt?a variety of materials can be emulated just by playing with the shininess property.
-
- Quite Grand Sub-Admiral
- Posts: 6682
- Joined: Wed Feb 28, 2007 7:54 am
Re: Progress
I don't think so, at least not with the user-generated textures. We do have this in the standard game, though. I think the game handles differently its own auto-generated planet maps compared to the user made ones, but I may need to check up on that.Disembodied wrote: ↑Mon Aug 13, 2018 10:41 amOut of interest, is it possible to do this with planet textures too? So e.g. "seas" and "ice" could be made shiny, and "deserts", "forests" and "plains" could be matt?