win10 1903 problems

Discuss anything not covered by any of the other categories.
Post Reply
revelator
Posts: 2621
Joined: Thu Jan 24, 2008 12:04 pm
Location: inside tha debugger

win10 1903 problems

Post by revelator »

Hey peeps.

Well i got updated to 1903 and immediatly ran into a problem with opengl games like Doom3.
Setting gamma in game or modifying color profiles in windows no longer worked, and things looked a bit strange compared to the previous version.

Took me a while to hunt down what caused this and it turns out 1903 makes some assumptions that are plainly wrong with some monitors.
Go into device manager find your screen and change it to pnp screen (standard) and things will work again.

Hope this helps anyone else with this problem.
Productivity is a state of mind.
Barnes
Posts: 232
Joined: Thu Dec 24, 2009 2:26 pm
Location: Russia, Moscow
Contact:

Re: win10 1903 problems

Post by Barnes »

heh) hardware gamma ramp broken now? you are not alone)
revelator
Posts: 2621
Joined: Thu Jan 24, 2008 12:04 pm
Location: inside tha debugger

Re: win10 1903 problems

Post by revelator »

Thank god... :oops:

Well atleast its an easy fix allthough it was hell figuring out what went wrong.
Productivity is a state of mind.
Barnes
Posts: 232
Joined: Thu Dec 24, 2009 2:26 pm
Location: Russia, Moscow
Contact:

Re: win10 1903 problems

Post by Barnes »

I’ve seen something like this before win10. Plus, when the application crashed, the gamma on the desktop broke. That's why I made a gamma ramp through a shader. I highly recommend doing the same.

Code: Select all

layout (bindless_sampler, location = U_TMU0) uniform sampler2DRect	u_ScreenTex;

layout(location = U_COLOR_PARAMS)	uniform vec4	u_control;			// x - brightens, y - contrast, z - saturation, w - gamma (1.0/gamma value)
layout(location = U_COLOR_VIBRANCE)	uniform vec3	u_rgbVibrance;		// pre-multipled values vibrance * rgb

vec3 BrightnesContrastSaturation(vec3 color, float brt, float con, float sat)
{
  // Increase or decrease theese values to adjust r, g and b color channels seperately
  const float AvgLumR = 0.5;
  const float AvgLumG = 0.5;
  const float AvgLumB = 0.5;
  
  const vec3 LumCoeff = vec3(0.2125, 0.7154, 0.0721);
  
	vec3 AvgLumin = vec3(AvgLumR, AvgLumG, AvgLumB);
	vec3 brtColor = color * brt;
	vec3 intensity = vec3(dot(brtColor, LumCoeff));
	vec3 satColor = mix(intensity, brtColor, sat);
	vec3 conColor = mix(AvgLumin, satColor, con);
	return conColor;
}

vec3 ColorVibrance(in vec3 color){

  float lum = dot(vec3(0.2125, 0.7154, 0.0721), color);

  float minColor	= min(color.r, min(color.g, color.b));
  float maxColor	= max(color.r, max(color.g, color.b));
  float mid			= maxColor - minColor;

  return color  = mix(vec3(lum), color.rgb, (1.0 + (u_rgbVibrance * (1.0 - (sign(u_rgbVibrance) * mid)))));
}

void main(void){

vec3 color = BrightnesContrastSaturation(texture2DRect(u_ScreenTex, gl_FragCoord.xy).rgb, u_control.x, u_control.y, u_control.z);
color = ColorVibrance(color);
fragData.rgb = pow(color, vec3(u_control.w));
fragData.a = 1.0;
}
revelator
Posts: 2621
Joined: Thu Jan 24, 2008 12:04 pm
Location: inside tha debugger

Re: win10 1903 problems

Post by revelator »

Oh it is not gamma failing to reset, it is completely broken due to win 10 not correctly detecting the monitor.
It installs a driver for the monitor that breaks all gamma ramp and color space manipulations because the driver reports that the monitor is not capable of those (EDID fail).
I noticed while looking at my laptop with win 8.1 that the mobitor driver was named differently, so i changed the win10 version to the same generic driver and gamma worked again. But if i let win10 autodetect the monitor it reinstalls the broken driver so ouch :sad:
Productivity is a state of mind.
r00k
Posts: 1111
Joined: Sat Nov 13, 2004 10:39 pm

Re: win10 1903 problems

Post by r00k »

iirc when i set pnp monitor, it forces a 60hz refresh rate. if i specifically choose the monitor/display port then i can use the full 144hz

i’ll have to double check. then again im not using 1903but an earier version 18xx
revelator
Posts: 2621
Joined: Thu Jan 24, 2008 12:04 pm
Location: inside tha debugger

Re: win10 1903 problems

Post by revelator »

earlier versions are to my knowledge not affected :smile:

If your monitor comes with a specific driver it should not be affected either,
my problem stems from using a HD TV as monitor, sadly there are no specific drivers for it so windows just installs a generic one. But it installs the wrong one on the 1903 version leading to the affore mentioned problems.
Productivity is a state of mind.
Post Reply