AAAAAAAAAAAAAAAAAAAAAAAAH
This commit is contained in:
@ -2,7 +2,8 @@ const vertex_shader_source = `
|
||||
attribute vec4 aPos;
|
||||
attribute vec3 aNormal;
|
||||
|
||||
uniform mat4 uModView;
|
||||
uniform mat4 uMod;
|
||||
uniform mat4 uView;
|
||||
uniform mat4 uProj;
|
||||
uniform mat4 uNormalMat;
|
||||
|
||||
@ -33,7 +34,7 @@ const vertex_shader_source = `
|
||||
*/
|
||||
void main()
|
||||
{
|
||||
gl_Position = uProj * uModView * aPos;
|
||||
gl_Position = uView * uProj * uMod * aPos;
|
||||
|
||||
highp vec3 ambientLight = vec3(0.3, 0.3, 0.3);
|
||||
highp vec3 directionalLightColor = vec3(1, 1, 1);
|
||||
@ -63,17 +64,32 @@ function initShaderProgram(gl)
|
||||
const vertexShader = loadShader(gl, gl.VERTEX_SHADER, vertex_shader_source);
|
||||
const fragmentShader = loadShader(gl, gl.FRAGMENT_SHADER, fragment_shader_source);
|
||||
|
||||
const shaderProgram = gl.createProgram();
|
||||
gl.attachShader(shaderProgram, vertexShader);
|
||||
gl.attachShader(shaderProgram, fragmentShader);
|
||||
gl.linkProgram(shaderProgram);
|
||||
const shader_prog = gl.createProgram();
|
||||
gl.attachShader(shader_prog, vertexShader);
|
||||
gl.attachShader(shader_prog, fragmentShader);
|
||||
gl.linkProgram(shader_prog);
|
||||
|
||||
if(!gl.getProgramParameter(shaderProgram, gl.LINK_STATUS))
|
||||
if(!gl.getProgramParameter(shader_prog, gl.LINK_STATUS))
|
||||
{
|
||||
alert(`Unable to initialize the shader program: ${gl.getProgramInfoLog(shaderProgram)}`);
|
||||
return null;
|
||||
}
|
||||
return shaderProgram;
|
||||
|
||||
shaderInfos = {
|
||||
program: shader_prog,
|
||||
attribLocations: {
|
||||
vertexPosition: gl.getAttribLocation(shader_prog, "aPos"),
|
||||
vertexNormal: gl.getAttribLocation(shader_prog, "aNormal"),
|
||||
},
|
||||
uniformLocations: {
|
||||
projectionMatrix: gl.getUniformLocation(shader_prog, "uProj"),
|
||||
modelMatrix: gl.getUniformLocation(shader_prog, "uMod"),
|
||||
viewMatrix: gl.getUniformLocation(shader_prog, "uView"),
|
||||
normalMatrix: gl.getUniformLocation(shader_prog, "uNormalMat"),
|
||||
},
|
||||
};
|
||||
|
||||
return shader_prog;
|
||||
}
|
||||
|
||||
function loadShader(gl, type, source)
|
||||
@ -93,5 +109,5 @@ function loadShader(gl, type, source)
|
||||
return shader;
|
||||
}
|
||||
|
||||
export let shaderInfos = null;
|
||||
export let shaderInfos;
|
||||
export { initShaderProgram };
|
||||
|
Reference in New Issue
Block a user