diff options
Diffstat (limited to 'indra/newview/app_settings/shaders/class1/avatar')
| -rwxr-xr-x | indra/newview/app_settings/shaders/class1/avatar/objectSkinV.glsl | 13 | 
1 files changed, 8 insertions, 5 deletions
| diff --git a/indra/newview/app_settings/shaders/class1/avatar/objectSkinV.glsl b/indra/newview/app_settings/shaders/class1/avatar/objectSkinV.glsl index 271947b2dd..39632d0cef 100755 --- a/indra/newview/app_settings/shaders/class1/avatar/objectSkinV.glsl +++ b/indra/newview/app_settings/shaders/class1/avatar/objectSkinV.glsl @@ -34,14 +34,17 @@ mat4 getObjectSkinnedTransform()  	vec4 w = fract(weight4);  	vec4 index = floor(weight4); +	 +		 index = min(index, vec4(31.0)); +		 index = max(index, vec4( 0.0));  	float scale = 1.0/(w.x+w.y+w.z+w.w);  	w *= scale; - -	mat4 mat  = matrixPalette[int(index.x)]*w.x; -		 mat += matrixPalette[int(index.y)]*w.y; -		 mat += matrixPalette[int(index.z)]*w.z; -		 mat += matrixPalette[int(index.w)]*w.w; +	 +	mat4 mat = matrixPalette[int(index.x)]*w.x; +	mat += matrixPalette[int(index.y)]*w.y; +	mat += matrixPalette[int(index.z)]*w.z; +	mat += matrixPalette[int(index.w)]*w.w;  	return mat;  } | 
