如何在几何着色器上实现行进立方体轮廓?

时间:2013-01-22 22:37:58

标签: opengl

我有一个统一采样的距离网格:

D(x_i,y_j,z_k),其中

x_i = x0 + i * dx,0< = i<为nx

y_j = y0 + j * dy,0 <= j&lt; NY

z_k = z0 + k * dz,0 <= k

我想将此网格中的每个单元格传递给几何着色器和 输出0到5个三角形,如行进立方体算法中所指定。

我在考虑使用统一值将x0,dx,y0,dy,z0,dz和轮廓值发送到着色器,并将单元格的索引编码为点的位置:

glBegin(GL_POINTS);
for(int i = 0; i < nx - 1; i++) {
    for(int j = 0; j < ny - 1; j++) {
        for(int k = 0; k < nz - 1; k++) {
            glVertex3f(i, j, k); 
        }
    }
}
glEnd();

在几何着色器中,我必须查找(i,j,k)单元格中8个角的距离值。 如何将3D距离数组传递给几何着色器?

0 个答案:

没有答案