Page 42 of 138

Posted: Fri May 14, 2010 1:43 pm
by JensAyton
As of r3339, Oolite will use full shader mode on all shader-supporting renderers, except GeForce 5200 and Intel GMA 9xx systems, which will use simple mode by default. On GMA 9xx systems, full shader mode is not available.

In order to test this, shader mode will be reset to the default when new builds of Oolite run, even if you've changed modes before. If you run a nightly and get black objects or very low frame rates, please report your OpenGL vendor and renderer (found in the log), then go to game options to lower your shader settings. More extensive compatibility testing will be carried out when 1.74 is released.

Additionally, point dust is now rendered without smoothing on GMA 9xx GPUs (which do not support smooth point rendering in hardware). If dust was previously invisible when moving slowly (as on Mac OS X), it should now be visible. If dust was visible before, rendering should be faster.

Posted: Sat May 15, 2010 3:02 pm
by harry747
Ahruman wrote:
... except GeForce 5200 and Intel GMA 9xx systems, which will use simple mode by default. On GMA 9xx systems, full shader mode is not available.
i can not confirm that. my mac mini has a GMA 950 chipset, and oolite was set to full shader mode.

Posted: Sat May 15, 2010 3:31 pm
by JensAyton
If I may quote myself, “please report your OpenGL vendor and renderer (found in the log)”.

Posted: Tue May 18, 2010 7:37 pm
by JensAyton
As of r3371, script, AI and HUD whitelisting is fully in effect. If your script or AI has previously been generating messages like “In a future version of Oolite, this method will be removed from the handler. If you believe the handler should be a permitted method, please report it to [email protected]”, it now no longer works. I have received no bug reports of this nature.

Posted: Tue May 18, 2010 8:28 pm
by JensAyton
Earlier today, we were down to a single, low-priority bug in the tracker. Then that nasty, nasty thargoid came along and spoiled it. *sniff*

Posted: Tue May 18, 2010 9:06 pm
by Thargoid
My work here is done :twisted:
And I shan't mention the crash on non-shader machines that a_c was working on came from me too...

But seriously I've PM'd you a download link to the set-up that causes it for me - it's quite specific although may be a symptom of something more widespread perhaps.

Posted: Wed May 19, 2010 4:26 am
by Kaks
It seems it's fixed already... mind you, I've been known to close bugs before the bugfix itself was thoroughly tested, so do take this information with a pinch of salt...

Anyway, as I was saying, we seem to be back to just 1 minor bug on Berlios! :D

Posted: Wed May 19, 2010 5:52 am
by Thargoid
I know - I was able to put together a specific test case for A_C which identified the glitch which he could then iron out.

Posted: Wed May 19, 2010 11:50 am
by Yrol_Denjeah
A Quote form Kaks:
"Anyway, as I was saying, we seem to be back to just 1 minor bug on Berlios!"

Does that mean there will soon be a new releaseversion?

..

Posted: Wed May 19, 2010 12:06 pm
by Lestradae
Kaks wrote:
... we seem to be back to just 1 minor bug on Berlios!
Does this translate, perchance, into that 1.74 is only one minor bug away? :D

Posted: Wed May 19, 2010 2:10 pm
by JensAyton
Oh no, we have some new ones now.

Posted: Wed May 19, 2010 4:15 pm
by goran
Does oolite team receive crash reports sent from OS X "Report this..." dialog or we have to submit them manually?

Posted: Wed May 19, 2010 4:34 pm
by Thargoid
Ahruman wrote:
Oh no, we have some new ones now.
Well if you keep hiding them in the code, you have to expect us to find 'em ;)

Posted: Wed May 19, 2010 5:54 pm
by JensAyton
goran wrote:
Does oolite team receive crash reports sent from OS X "Report this..." dialog or we have to submit them manually?
I do, but only if you have Smart Crash Reports installed. Oolite doesn’t include SCR any longer, and I can’t really recommend it given what a nasty hack it is, but if it’s there it works.

(So yes, I got your entirely-anonymous-except-for-the-way-it-includes-your-user-name-nice-going-there-Apple crash report from earlier today. I haven’t done anything about it yet; it’ll either be quite easy or effectively impossible to fix based on the crash report alone.)

Posted: Thu May 20, 2010 8:16 pm
by JensAyton
A fiddly change to the material model:

Prior to r3388, the same specular_color (or specular in 1.73) attribute was used as the overall specular colour when there was no specular map, and modulated the specular map when a specular map was used. This turns out to be a bad idea.

In the following picture, the Griff Cobra has been modified to use the material model with no custom shader. The first version is shown in full shader mode. The second version is in r3385 with shaders off and exactly the same material configuration. The third version is with shaders off and specular_color set to (0.2, 0.2, 0.2) (instead of white), giving roughly the desired effect. The problem is that if I left it that way, the specular highlights would barely be visible with shaders turned on.

Image

As of r3388, specular_color is ignored when shaders are available and a specular map is specified. Instead, a new property specular_modulate_color can be used to modulate the colour of the specular map.

The same basic problem applies to emission_color(née emission) and emission maps: when emission mapping is unsupported (i.e. reduced detail mode, systems which don’t support multitexturing, or versions earlier than r3155) the emission colour is applied to the whole ship instead of modulating the emission map. (This effect isn’t visible above since multitexturing is used in the shaderless shots.) The fix is the same: emission_color is now ignored when an emission map is used, and emission_modulate_color has been added.

The recently-introduced illumination_color has been renamed illumination_modulate_color for consistency.

Here’s the material dictionary for r3388, which works right with or without shaders:

Code: Select all

// Ship:
materials =
{
    "griff_cobra_mk3_mainhull_diffuse_spec.png" =
    {
        diffuse_map = "griff_cobra_mk3_mainhull_diffuse_spec.png";
        normal_map = "griff_cobra_mk3_mainhull_normal.png";
        specular_map = { name = "griff_cobra_mk3_mainhull_diffuse_spec.png"; extract_channel = "a"; };
        specular_color = ( 0.2, 0.2, 0.2 );  // Applies when specular map is not used (no shaders)
        shininess = 5;
        emission_map = { name = "griff_cobra_mk3_mainhull_normal.png"; extract_channel = "a"; };
        emission_modulate_color = (0.9926, 0.9686, 0.7325);
    };
};

// Gun:
materials =
{
    "griff_cobra_mk3_front_gun_diffuse_spec.png" =
    {
        diffuse_map = "griff_cobra_mk3_front_gun_diffuse_spec.png";
        normal_map = "griff_cobra_mk3_front_gun_normal.png";
        specular_map = { name = "griff_cobra_mk3_front_gun_diffuse_spec.png"; extract_channel = "a"; };
        specular_color = ( 0.2, 0.2, 0.2 );
        shininess = 5;
    };
};