#include #define CCTexture(_texture_, _uv_, _color_) \ vec4 _texture_##_tmp = texture(_texture_, _uv_); \ #if CC_USE_ALPHA_ATLAS_##_texture_ \ _texture_##_tmp.a *= texture(_texture_, _uv_ + vec2(0, 0.5)).r; \ #endif \ #if INPUT_IS_GAMMA \ _color_.rgb *= SRGBToLinear(_texture_##_tmp.rgb); \ _color_.a *= _texture_##_tmp.a; \ #else \ _color_ *= _texture_##_tmp; \ #endif \ #pragma // empty pragma trick to get rid of trailing semicolons at effect compile time #define CCTextureRGB(_texture_, _uv_, _color_) \ vec4 _texture_##_tmp = texture(_texture_, _uv_); \ #if CC_USE_ALPHA_ATLAS_##_texture_ \ _texture_##_tmp.a *= texture(_texture_, _uv_ + vec2(0, 0.5)).r; \ #endif \ #if INPUT_IS_GAMMA \ _color_.rgb *= SRGBToLinear(_texture_##_tmp.rgb); \ #else \ _color_.rgb *= _texture_##_tmp.rgb; \ #endif \ #pragma // empty pragma trick to get rid of trailing semicolons at effect compile time