#define USE_GLOW #define USE_MAP_MATERIAL T_BPMaterial BPMaterials[1] = { { vec3( 1 , 1 , 0 ) , vec3( 1 ) , 4 , .3 } }; T_PBRMaterial PBRMaterials[1] = { { // Albedo / specular colors vec3( 1 , 1 , 0 ) , vec3( 1 , 1 , .4 ) , // Roughness , anisotropy , subsurface , metallic .1 , 0 , 0 , .75 } }; vec3 Glow[1] = { vec3( 5. , .1 , 4. ) }; void mapMaterial( in int matIndex , out int type , out int tIndex , out int glowIndex ) { if ( matIndex == 0 ) { type = 0; } else { type = 1; } tIndex = 0; glowIndex = -1; } vec2 map( vec3 pos ) { vec3 q = pos; q.xy = mod( q.xy + 4. , 8. ) - 4.; return vec2( length( q ) - 1.8 , step( 0. , 1.9 - length( pos.xy ) ) ); }