TEXTURE2D(_Control0); #define DECLARE_TERRAIN_LAYER_TEXS(n) \ TEXTURE2D(_Splat##n); \ TEXTURE2D(_Normal##n); \ TEXTURE2D(_Mask##n) DECLARE_TERRAIN_LAYER_TEXS(0); DECLARE_TERRAIN_LAYER_TEXS(1); DECLARE_TERRAIN_LAYER_TEXS(2); DECLARE_TERRAIN_LAYER_TEXS(3); #if defined(_LAYERS_EIGHT) || defined(_LAYERS_SIXTEEN) DECLARE_TERRAIN_LAYER_TEXS(4); DECLARE_TERRAIN_LAYER_TEXS(5); DECLARE_TERRAIN_LAYER_TEXS(6); DECLARE_TERRAIN_LAYER_TEXS(7); TEXTURE2D(_Control1); #endif #ifdef _LAYERS_SIXTEEN DECLARE_TERRAIN_LAYER_TEXS(8); DECLARE_TERRAIN_LAYER_TEXS(9); DECLARE_TERRAIN_LAYER_TEXS(10); DECLARE_TERRAIN_LAYER_TEXS(11); TEXTURE2D(_Control2); DECLARE_TERRAIN_LAYER_TEXS(12); DECLARE_TERRAIN_LAYER_TEXS(13); DECLARE_TERRAIN_LAYER_TEXS(14); DECLARE_TERRAIN_LAYER_TEXS(15); TEXTURE2D(_Control3); #endif #undef DECLARE_TERRAIN_LAYER_TEXS #ifdef TESSELLATION_ON SAMPLER(sampler_Mask0); #endif SAMPLER(sampler_Splat0); SAMPLER(sampler_Control0); #ifdef OVERRIDE_SPLAT_SAMPLER_NAME #define sampler_Splat0 OVERRIDE_SPLAT_SAMPLER_NAME SAMPLER(OVERRIDE_SPLAT_SAMPLER_NAME); #endif