| 1234567891011121314151617181920212223242526 |
- #pragma usage opaque shadow
- uniform sampler2D u_texture;
- uniform float u_time;
- flat varying float v_time;
- void vertex() {
- v_time = 0.5 * sin(u_time) + 0.5;
- POSITION *= 1.0 + v_time;
- }
- void fragment() {
- vec2 uv = TEXCOORD;
- uv.y += v_time * 0.5;
- const vec3 base_color = vec3(0.5, 0.1, 0.0);
- const vec3 active_color = vec3(1.0, 0.2, 0.0);
- vec3 color = mix(base_color, active_color, v_time);
- ALBEDO = color * texture(u_texture, uv).rgb;
- EMISSION = ALBEDO * v_time * 0.5;
- ROUGHNESS = mix(1.0, 0.25, v_time);
- METALNESS = mix(0.5, 1.0, v_time);
- }
|