如何使用直接webgl(没有THREE.js)向网格线添加网格线?

时间:2016-09-01 18:06:52

标签: webgl

我是WebGL的新手,并且会在我的函数中添加网格线。我在这里试过了重心坐标方法:

http://codeflow.org/entries/2012/aug/02/easy-wireframe-display-with-barycentric-coordinates/

这没有用。此外,当我尝试编译着色器时,未定义本文中描述的fwidth函数。

在webgl中将网格线添加到函数曲面的最简单方法是什么?我没有使用THREE.js,而是宁愿在没有库的情况下对其进行编码。

谢谢, 星

1 个答案:

答案 0 :(得分:0)

为了那篇文章的目的,重心坐标只是将(1,0,0)指定给三角形的第一个顶点,将(0,1,0)指定给第二个,将(0,0,1)指定给第三个顶点。

然后绘制线框,它基本上就是这样:

if(any(lessThan(attr_bcoords, vec3(0.012)))){
    color = vec4(0.0, 0.0, 0.0, 1.0); // black
}

fwidth版本更好,因为它会绘制反锯齿线。