我是WebGL的新手,試圖用triangle_fan繪製圓。用三角形繪製圓WebGL
我設置變量
var pi = 3.14159;
var x = 2*pi/100;
var y = 2*pi/100;
var r = 0.05;
points = [ vec2(0.4, 0.8) ]; //establish origin
然後畫了使用for循環的圈子。
for(var i = 0.4; i < 100; i++){
points.push(vec2(r*Math.cos(x*i), r*Math.sin(y*i)));
points.push(vec2(r*Math.cos(x*(i+1)), r*Math.sin(y*(i+1))));
}
的問題是,我居然在第二點推當我再次增加我不想做的事。
在WebGL和ES2.0中,您總是必須使用自定義着色器。沒有自定義着色器(除了清除),沒有辦法在這些API中繪製任何東西。最重要的是(a)'gl.POINTS'繪製正方形而不是圓圈,(b)WebGL/ES2.0只需要MAX_POINT_SIZE爲1.0,因此不能保證您可以繪製任意大小的點。 – gman
謝謝澄清!編輯答案。通過非自定義着色器,我的意思是由外部庫爲用戶生成的着色器作爲材質的一部分。 – mlkn