在webGL中渲染NURBS曲面

时间:2016-12-15 18:35:58

标签: javascript webgl nurbs

我需要一些帮助来在webGL中渲染NURBS曲面。 几天前,我们的教授指派我们用NURBS画一面旗帜并为它制作动画。 我们必须使用webGL(并且不能使用trhee.js ...)。 我不知道如何继续(尽管我或多或少知道关于NURBS和曲面细分的理论)。 任何提示?

免责声明:我不是要求解决方案。这是违反规则的,我想自己搞定。我只需指出正确的方向。

提前致谢

2 个答案:

答案 0 :(得分:1)

仅仅因为你不能使用 three.js并不意味着你无法看到它来弄清楚它是如何工作的! This example renders NURBS你可以view the source code。 (提示:它使用THREE.NURBSSurface, THREE.NURBSUtils, etc...然后插入ParametricBufferGeometry

对于WebGL部分,如果你熟悉OpenGL,那么很多相同的东西只是削减了一些功能。您需要使用上下文WebGL创建一个画布,在CPU上生成所有数据(表面的定义,曲面细分等),然后将所有顶点和索引数据传递给GPU,使用着色器将其全部呈现。

答案 1 :(得分:1)

我建议你从以下两个讲座开始:

Drawing Bézier Curves

Drawing Lines is Hard

最后,使用此WebGL示例作为您的分配的起点:

Resolution independent rendering of Bezier curves in WebGL

祝你好运,编码愉快!如果您取得了不错的成绩,请告诉我们!