3D中的绘制线是否适用于p5.js?
这里的教程: https://github.com/processing/p5.js/wiki/Getting-started-with-WebGL-in-p5 说它应该,但我的尝试只是给了一个空白页。
function setup() {
createCanvas(400,400, WEBGL);
}
function draw(){
line(-100,-100,-100, 100,100,100);
}
正如Kevin在下面指出的那样,控制台出错:
TypeError: this._renderer.line is not a function
当我尝试使用line();
时如果我将draw()写为
,我的浏览器确实支持WEBGLfunction draw(){
box();
}
确实得到了一个盒子。
我目前发现绘制线条的唯一方法是编写自己的函数
function drawLine(x1, y1, z1, x2,y2, z2){
beginShape();
vertex(x1,y1,z1);
vertex(x2,y2,z2);
endShape();
}
确实在3D空间中绘制了一条线,但是控制台会生成许多形式
的错误错误:WebGL:vertexAttribPointer:-1不是有效的
index
。这个 值可能来自getAttribLocation()调用,在这里 返回值-1表示传递的名称与a不对应 指定程序中的活动属性。
这样做,所以一定有问题。
答案 0 :(得分:0)
Googling your error会返回大量结果,包括this GitHub issue。
所以看起来这是一个已知问题。 line()
函数应该有效,但尚未正确实现。
Google搜索您的第二个错误会返回this GitHub issue,其中提到它可能是由于在绘制前没有设置fill()
颜色造成的。