Advertisement
Guest User

Untitled

a guest
Feb 21st, 2018
68
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.11 KB | None | 0 0
  1. vec4 colorPixel = texture2D( gm_BaseTexture, v_vTexcoord );
  2. vec4 colorResult = colorPixel;
  3. vec4 colorHSV = vec4( rgb_to_hsv( colorPixel.rgb ), colorPixel.a);
  4.  
  5. for (int i=0; i<maxcolors; i+=1)
  6. {
  7. vec4 colorInHSV = vec4( rgb_to_hsv( colorIn[i].rgb ), colorIn[i].a);
  8. vec4 colorDelta = colorHSV - colorInHSV;
  9.  
  10. if (abs(colorDelta.r)>0.5) colorDelta.r -= sign(colorDelta.r);
  11.  
  12. if ( all( lessThanEqual( abs(colorDelta), colorTolerance[i] ) ) )
  13. {
  14. vec4 colorOutHSV = vec4( rgb_to_hsv( colorOut[i].rgb ), colorOut[i].a);
  15.  
  16. colorResult = mix( colorOut[i],
  17. vec4 ( hsv_to_rgb( vec3( mod( colorOutHSV.r + colorDelta.r, 1.0 ),
  18. clamp( colorOutHSV.g + colorDelta.g, 0.0, 1.0 ),
  19. clamp( colorOutHSV.b + colorDelta.b, 0.0, 1.0 ) ) ),
  20. clamp( colorOut[i].a + colorDelta.a, 0.0, 1.0) ),
  21. blend[i] );
  22. }
  23. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement