diff options
Diffstat (limited to 'indra/newview/app_settings/shaders/class1')
3 files changed, 45 insertions, 45 deletions
| diff --git a/indra/newview/app_settings/shaders/class1/deferred/cloudsV.glsl b/indra/newview/app_settings/shaders/class1/deferred/cloudsV.glsl index 64e094e3c5..72f319b8e3 100644 --- a/indra/newview/app_settings/shaders/class1/deferred/cloudsV.glsl +++ b/indra/newview/app_settings/shaders/class1/deferred/cloudsV.glsl @@ -50,18 +50,18 @@ uniform vec4 sunlight_color;  uniform vec4 ambient;  uniform vec4 blue_horizon;  uniform vec4 blue_density; -uniform vec4 haze_horizon; -uniform vec4 haze_density; +uniform float haze_horizon; +uniform float haze_density; -uniform vec4 cloud_shadow; -uniform vec4 density_multiplier; -uniform vec4 max_y; +uniform float cloud_shadow; +uniform float density_multiplier; +uniform float max_y;  uniform vec4 glow;  uniform vec4 cloud_color; -uniform vec4 cloud_scale; +uniform float cloud_scale;  void main()  { @@ -77,7 +77,7 @@ void main()  	// Set altitude  	if (P.y > 0.)  	{ -		P *= (max_y.x / P.y); +		P *= (max_y / P.y);  	}  	else  	{ @@ -99,12 +99,12 @@ void main()  	// Sunlight attenuation effect (hue and brightness) due to atmosphere  	// this is used later for sunlight modulation at various altitudes -	light_atten = (blue_density * 1.0 + haze_density.x * 0.25) * (density_multiplier.x * max_y.x); +	light_atten = (blue_density * 1.0 + haze_density * 0.25) * (density_multiplier * max_y);  	// Calculate relative weights -	temp1 = blue_density + haze_density.x; +	temp1 = blue_density + haze_density;  	blue_weight = blue_density / temp1; -	haze_weight = haze_density.x / temp1; +	haze_weight = haze_density / temp1;  	// Compute sunlight from P & lightnorm (for long rays like sky)  	temp2.y = max(0., max(0., Pn.y) * 1.0 + lightnorm.y ); @@ -112,7 +112,7 @@ void main()  	sunlight *= exp( - light_atten * temp2.y);  	// Distance -	temp2.z = Plen * density_multiplier.x; +	temp2.z = Plen * density_multiplier;  	// Transparency (-> temp1)  	// ATI Bugfix -- can't store temp1*temp2.z in a variable because the ati @@ -136,14 +136,14 @@ void main()  	// Increase ambient when there are more clouds  	vec4 tmpAmbient = ambient; -	tmpAmbient += (1. - tmpAmbient) * cloud_shadow.x * 0.5;  +	tmpAmbient += (1. - tmpAmbient) * cloud_shadow * 0.5;   	// Dim sunlight by cloud shadow percentage -	sunlight *= (1. - cloud_shadow.x); +	sunlight *= (1. - cloud_shadow);  	// Haze color below cloud  	vec4 additiveColorBelowCloud = (	  blue_horizon * blue_weight * (sunlight + tmpAmbient) -				+ (haze_horizon.r * haze_weight) * (sunlight * temp2.x + tmpAmbient) +				+ (haze_horizon * haze_weight) * (sunlight * temp2.x + tmpAmbient)  			 );	  	// CLOUDS @@ -164,13 +164,13 @@ void main()  	vec4 oHazeColorBelowCloud = additiveColorBelowCloud * (1. - temp1);  	// Make a nice cloud density based on the cloud_shadow value that was passed in. -	vary_CloudDensity = 2. * (cloud_shadow.x - 0.25); +	vary_CloudDensity = 2. * (cloud_shadow - 0.25);  	// Texture coords  	vary_texcoord0 = texcoord0;  	vary_texcoord0.xy -= 0.5; -	vary_texcoord0.xy /= cloud_scale.x; +	vary_texcoord0.xy /= cloud_scale;  	vary_texcoord0.xy += 0.5;  	vary_texcoord1 = vary_texcoord0; diff --git a/indra/newview/app_settings/shaders/class1/deferred/skyV.glsl b/indra/newview/app_settings/shaders/class1/deferred/skyV.glsl index 721de18e0b..deb4f00072 100644 --- a/indra/newview/app_settings/shaders/class1/deferred/skyV.glsl +++ b/indra/newview/app_settings/shaders/class1/deferred/skyV.glsl @@ -44,12 +44,12 @@ uniform vec4 sunlight_color;  uniform vec4 ambient;  uniform vec4 blue_horizon;  uniform vec4 blue_density; -uniform vec4 haze_horizon; -uniform vec4 haze_density; +uniform float haze_horizon; +uniform float haze_density; -uniform vec4 cloud_shadow; -uniform vec4 density_multiplier; -uniform vec4 max_y; +uniform float cloud_shadow; +uniform float density_multiplier; +uniform float max_y;  uniform vec4 glow; @@ -71,7 +71,7 @@ void main()  	// Set altitude  	if (P.y > 0.)  	{ -		P *= (max_y.x / P.y); +		P *= (max_y / P.y);  	}  	else  	{ @@ -93,12 +93,12 @@ void main()  	// Sunlight attenuation effect (hue and brightness) due to atmosphere  	// this is used later for sunlight modulation at various altitudes -	light_atten = (blue_density * 1.0 + haze_density.x * 0.25) * (density_multiplier.x * max_y.x); +	light_atten = (blue_density * 1.0 + haze_density * 0.25) * (density_multiplier * max_y);  	// Calculate relative weights -	temp1 = blue_density + haze_density.x; +	temp1 = blue_density + haze_density;  	blue_weight = blue_density / temp1; -	haze_weight = haze_density.x / temp1; +	haze_weight = haze_density / temp1;  	// Compute sunlight from P & lightnorm (for long rays like sky)  	temp2.y = max(0., max(0., Pn.y) * 1.0 + lightnorm.y ); @@ -106,7 +106,7 @@ void main()  	sunlight *= exp( - light_atten * temp2.y);  	// Distance -	temp2.z = Plen * density_multiplier.x; +	temp2.z = Plen * density_multiplier;  	// Transparency (-> temp1)  	// ATI Bugfix -- can't store temp1*temp2.z in a variable because the ati @@ -131,20 +131,20 @@ void main()  	// Haze color above cloud  	vary_HazeColor = (	  blue_horizon * blue_weight * (sunlight + ambient) -				+ (haze_horizon.r * haze_weight) * (sunlight * temp2.x + ambient) +				+ (haze_horizon * haze_weight) * (sunlight * temp2.x + ambient)  			 );	  	// Increase ambient when there are more clouds  	vec4 tmpAmbient = ambient; -	tmpAmbient += (1. - tmpAmbient) * cloud_shadow.x * 0.5;  +	tmpAmbient += (1. - tmpAmbient) * cloud_shadow * 0.5;   	// Dim sunlight by cloud shadow percentage -	sunlight *= (1. - cloud_shadow.x); +	sunlight *= (1. - cloud_shadow);  	// Haze color below cloud  	vec4 additiveColorBelowCloud = (	  blue_horizon * blue_weight * (sunlight + tmpAmbient) -				+ (haze_horizon.r * haze_weight) * (sunlight * temp2.x + tmpAmbient) +				+ (haze_horizon * haze_weight) * (sunlight * temp2.x + tmpAmbient)  			 );	  	// Final atmosphere additive diff --git a/indra/newview/app_settings/shaders/class1/deferred/softenLightF.glsl b/indra/newview/app_settings/shaders/class1/deferred/softenLightF.glsl index 51110ae4df..e32dab9bae 100644 --- a/indra/newview/app_settings/shaders/class1/deferred/softenLightF.glsl +++ b/indra/newview/app_settings/shaders/class1/deferred/softenLightF.glsl @@ -51,12 +51,12 @@ uniform vec4 sunlight_color;  uniform vec4 ambient;  uniform vec4 blue_horizon;  uniform vec4 blue_density; -uniform vec4 haze_horizon; -uniform vec4 haze_density; -uniform vec4 cloud_shadow; -uniform vec4 density_multiplier; -uniform vec4 distance_multiplier; -uniform vec4 max_y; +uniform float haze_horizon; +uniform float haze_density; +uniform float cloud_shadow; +uniform float density_multiplier; +uniform float distance_multiplier; +uniform float max_y;  uniform vec4 glow;  uniform float scene_light_strength;  uniform mat3 env_mat; @@ -159,13 +159,13 @@ void calcAtmospherics(vec3 inPositionEye, float ambFactor) {  	//sunlight attenuation effect (hue and brightness) due to atmosphere  	//this is used later for sunlight modulation at various altitudes -	light_atten = (blue_density * 1.0 + vec4(haze_density.r) * 0.25) * (density_multiplier.x * max_y.x); +	light_atten = (blue_density * 1.0 + vec4(haze_density) * 0.25) * (density_multiplier * max_y);  		//I had thought blue_density and haze_density should have equal weighting,  		//but attenuation due to haze_density tends to seem too strong -	temp1 = blue_density + vec4(haze_density.r); +	temp1 = blue_density + vec4(haze_density);  	blue_weight = blue_density / temp1; -	haze_weight = vec4(haze_density.r) / temp1; +	haze_weight = vec4(haze_density) / temp1;  	//(TERRAIN) compute sunlight from lightnorm only (for short rays like terrain)  	temp2.y = max(0.0, tmpLightnorm.y); @@ -173,12 +173,12 @@ void calcAtmospherics(vec3 inPositionEye, float ambFactor) {  	sunlight *= exp( - light_atten * temp2.y);  	// main atmospheric scattering line integral -	temp2.z = Plen * density_multiplier.x; +	temp2.z = Plen * density_multiplier;  	// Transparency (-> temp1) -	// ATI Bugfix -- can't store temp1*temp2.z*distance_multiplier.x in a variable because the ati +	// ATI Bugfix -- can't store temp1*temp2.z*distance_multiplier in a variable because the ati  	// compiler gets confused. -	temp1 = exp(-temp1 * temp2.z * distance_multiplier.x); +	temp1 = exp(-temp1 * temp2.z * distance_multiplier);  	//final atmosphere attenuation factor  	setAtmosAttenuation(temp1.rgb); @@ -199,7 +199,7 @@ void calcAtmospherics(vec3 inPositionEye, float ambFactor) {  	temp2.x += .25;  	//increase ambient when there are more clouds -	vec4 tmpAmbient = ambient + (vec4(1.) - ambient) * cloud_shadow.x * 0.5; +	vec4 tmpAmbient = ambient + (vec4(1.) - ambient) * cloud_shadow * 0.5;  	/*  decrease value and saturation (that in HSV, not HSL) for occluded areas  	 * // for HSV color/geometry used here, see http://gimp-savvy.com/BOOK/index.html?node52.html @@ -213,8 +213,8 @@ void calcAtmospherics(vec3 inPositionEye, float ambFactor) {  	//haze color  	setAdditiveColor( -		vec3(blue_horizon * blue_weight * (sunlight*(1.-cloud_shadow.x) + tmpAmbient) -	  + (haze_horizon.r * haze_weight) * (sunlight*(1.-cloud_shadow.x) * temp2.x +		vec3(blue_horizon * blue_weight * (sunlight*(1.-cloud_shadow) + tmpAmbient) +	  + (haze_horizon * haze_weight) * (sunlight*(1.-cloud_shadow) * temp2.x  		  + tmpAmbient)));  	//brightness of surface both sunlight and ambient | 
