[name]

Constructor for the GLSL program sent to vertex and fragment shaders, including default uniforms and attributes.

Constructor

[name]( [page:WebGLRenderer renderer], [page:Object code], [page:Material material], [page:Object parameters] )

For parameters see [page:WebGLRenderer WebGLRenderer]
Standard defaults for vertex shader:

uniform mat4 modelMatrix;
uniform mat4 modelViewMatrix;
uniform mat4 projectionMatrix;
uniform mat4 viewMatrix;
uniform mat3 normalMatrix;
uniform vec3 cameraPosition;

attribute vec3 position;
attribute vec3 normal;
attribute vec2 uv;
attribute vec2 uv2;
Conditional defaults for vertex shader:

attribute vec3 color;

attribute vec3 morphTarget0;
attribute vec3 morphTarget1;
attribute vec3 morphTarget2;
attribute vec3 morphTarget3;

attribute vec3 morphNormal0;
attribute vec3 morphNormal1;
attribute vec3 morphNormal2;
attribute vec3 morphNormal3;

attribute vec3 morphTarget4;
attribute vec3 morphTarget5;
attribute vec3 morphTarget6;
attribute vec3 morphTarget7;

attribute vec4 skinIndex;
attribute vec4 skinWeight;
Standard defaults for fragment shader:

uniform mat4 viewMatrix;
uniform vec3 cameraPosition;

Properties

.[page:Object uniforms]

.[page:Object attributes]

.[page:Integer id]

.[page:Object code]

.[page:Integer usedTimes]

.[page:Object program]

.[page:Object vertexShader]

.[page:Object fragmentShader]

Methods

none

Source

[link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]