我从游戏开发中休息了三个月,我现在必须记住所有的事情......我已经从头开始尝试在黑色背景上渲染一个白色方块。似乎有一个我似乎无法找到几个小时的错误,所以我请求你帮忙。如果有人能检查我的代码,我会很高兴。
代码链接:http://gamedevelopment.free.bg/javascript/webgl-init.js 页面链接:http://gamedevelopment.free.bg/
答案 0 :(得分:0)
首先,您尝试在代码中渲染三角形,而不是正方形。
您似乎已重命名存储统一位置的变量,
因此,在你的setMatrixUniforms
函数中,制服没有设置到正确的位置。
shaderProgram.pMatrixUniform = gl.getUniformLocation(shaderProgram, "uPMatrix");
shaderProgram.mvMatrixUniform = gl.getUniformLocation(shaderProgram, "uMVMatrix");
//...
function setMatrixUniforms(){
gl.uniformMatrix4fv(shaderProgram.pMatrix, false, pMatrix);
gl.uniformMatrix4fv(shaderProgram.mvMatrix, false, mvMatrix);
}