如何在OpenGL ES中绘制NURBS曲线

4

在OpenGL中,可以使用评估器绘制NURBs。但是评估器已被从OpenGL ES规范中移除,以使其变得轻量级。在这种情况下,如何使用OpenGL ES API绘制NURBs?

2个回答

3

您无法绕过自己实现NURBS。这意味着您需要在离散点上对曲线或曲面进行采样,从而将其转换为普通的线条或三角形集。然后可以使用通常的顶点数组/缓冲区进行绘制,这也应该比评估器或GLU NURBS功能更快。


0
在OpenGL中,NURBS曲线分为2个步骤进行渲染 - 1)使用数学公式计算出曲线上的一些点(100或1000个)。这可以在OpenGL4中使用SSBOs(着色器存储缓冲区对象)在GPU上完成。 2)将计算出的点呈现为线条,使用VBOs。
如果您想更详细地了解NURBS,则可以在此处找到一个不错的Web应用程序。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接