"uniform vec4 uOffset;" // Tile x/y, uv x/y
"uniform mat3 uPv;"
"uniform mat2 uSubTransform;"
- //"uniform float uVisibility;"
+ "uniform float uVisibility;"
""
"out vec4 aTexCoords;"
"out vec2 aWorldCoords;"
"void main()"
"{"
"vec2 hash_val = hash22(uOffset.xy);"
- //"float scaling_factor = smoothstep( hash_val.x, hash_val.x+1.0, uVisibility );"
+ "float scaling_factor = smoothstep( hash_val.x, hash_val.x+1.0, uVisibility );"
// Vertex transform
- "vec2 subtransform = uSubTransform * (a_co-0.5) + 0.5;"
+ "vec2 subtransform = uSubTransform * (a_co-0.5) * scaling_factor + 0.5;"
"vec3 worldpos = vec3( subtransform + uOffset.xy, 1.0 );"
"gl_Position = vec4( uPv * worldpos, 1.0 );"
"uniform sampler2D uTexMain;"
"uniform sampler2D uSamplerNoise;"
"uniform float uVariance;"
+ "uniform float uVisibility;"
""
"in vec2 aTexCoords;"
""
"ao_accum -= data_this_tile.r;"
- "vec3 colour_main = mix( vec3( 0.369768, 0.3654, 0.42 ),vec3( 0.275, 0.388, 0.553 ), data_this_tile.g );"
+ "vec3 colour_main = mix( vec3( 0.369768, 0.3654, 0.42 ), vec3( 0.275, 0.388, 0.553 ), data_this_tile.g * uVisibility );"
"vec2 square_coords = fract( aTexCoords * 64.0 );"
"vec2 grid_coords = abs( square_coords - 0.5 );"
"FragColor = vec4( colour_main * edge_contrast + gridline * 0.02 * gridline_fadeout, 1.0 );"
"}"
,
- UNIFORMS({ "uPv", "uOffset", "uTexMain", "uVariance", "uSamplerNoise" })
+ UNIFORMS({ "uPv", "uOffset", "uTexMain", "uVariance", "uSamplerNoise", "uVisibility" })
)
SHADER_DEFINE( shader_wire,
int serial_id;
int is_tutorial;
- v2i world_pos;
+ struct world_button btn;
#ifdef VG_STEAM
SteamLeaderboard_t steam_leaderboard;