在 webgl 中使用像素数据绘制纹理时,不会渲染纹理。对象改为显示为白色。有人可以指出以下代码中的错误吗?
function handleLoadedTexture(texture ) {
gl.bindTexture(gl.TEXTURE_2D, texture);
gl.pixelStorei(gl.UNPACK_FLIP_Y_WEBGL, true);
gl.texImage2D(gl.TEXTURE_2D, 0, gl.RGBA, 16,16,0, gl.RGBA, gl.UNSIGNED_BYTE, texture.data);
gl.texParameteri(gl.TEXTURE_2D, gl.TEXTURE_MAG_FILTER, gl.NEAREST);
gl.texParameteri(gl.TEXTURE_2D, gl.TEXTURE_MIN_FILTER, gl.NEAREST);
gl.bindTexture(gl.TEXTURE_2D, null);
try{
}
catch(e){
console.log("Error : "+ e.name + "\n"+ e.message);
console.log(gl.getError());
}
}
var neheTexture;
var data;
function initTexture() {
neheTexture = gl.createTexture();
data =[];
for(var i=0;i<256*4;i++)
{
if(i%4==0 || i%4==3)
data[i] = 1;
else data[i] =0;
}
neheTexture.data = new Uint8Array(data);
}