birdShader = new THREE.ShaderMaterial({
side: THREE.DoubleSide,
vertexShader: `
varying vec2 vUv;
void main() {
vec3 transformed = vec3( position );
vec4 mvPosition = vec4( transformed, 1.0 );
#ifdef USE_INSTANCING
mvPosition = instanceMatrix * mvPosition;
#endif
//vec4 modelViewPosition = modelViewMatrix * vec4(position, 1.0);
vec4 modelViewPosition = modelViewMatrix * mvPosition;
vUv = uv;
gl_Position = projectionMatrix * modelViewPosition;
}
`,
fragmentShader: `
uniform float u_time;
uniform float test;
varying vec2 vUv;
void main () {
//float hue = abs(sin(u_time));
// gl_FragColor = vec4(0.0,1.0,0.0,1.0); // green
gl_FragColor = vec4(1.0,0.0,0.0,1.0); // red
if (!gl_FrontFacing){
gl_FragColor = vec4(1.0,0.95,0.01,1.0); // yellow
}
}
`,
uniforms: {
u_time: { value: 0 }
}
});