首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何渲染一个NURBS曲面?

如何渲染一个NURBS曲面?
EN

Stack Overflow用户
提问于 2014-04-09 16:37:34
回答 2查看 1.7K关注 0票数 1

我知道GPU在渲染三角形方面很有效。GPU不能直接渲染NURBS曲面。通过链接NURBS in the OpenGL Graphics Pipeline,我们知道了这一点。要渲染NURBS,需要进行三角剖分。我不知道三角测量操作发生在哪里。它是由CAD建模软件还是GPU执行的?我猜这是由CAD建模软件完成的。因此,NURBS曲面的三角剖分功能是任何CAD造型软件的核心任务之一?这项任务是非常复杂还是几乎完全由学术研究人员解决?

为什么我会有这个问题?我发现NURBS曲面在CAD建模软件中是光滑的?但是,如果我先将NURBS曲面转换为三角形网格,然后用MeshLab打开它。在MeshLab中,某些区域并不平滑。我希望知道管道中的哪一部分导致了问题。

EN

回答 2

Stack Overflow用户

发布于 2014-07-20 14:08:53

在您使用的CAD Modeling软件和MeshLab之间看到不同的渲染图像可能有几个原因:

  • 当计算机辅助设计软件渲染NURBS曲面时,其内部生成的三角形网格的分辨率通常取决于缩放级别。当您使用不同的软件(甚至是同一软件中的命令)将NURBS曲面转换为三角形网格时,不能保证获得相同的三角形网格。
  • 当CAD软件渲染NURBS曲面时,它不仅会生成三角形网格,还会从NURBS曲面计算每个三角形顶点的曲面法线,并将其传递给渲染引擎。当MeshLab渲染可能不包含任何顶点法线数据的三角形网格时,它必须通过自己的算法计算顶点法线数据(通常从共享相同顶点的所有三角形推断)。因此,不同的顶点法线数据将导致不同的渲染图像。
  • 你使用的计算机辅助设计软件和MeshLab可以使用完全不同的着色技术。

总而言之,这些只是一些可能的原因。如果你能提供真实的图像,这将有助于进一步缩小真正的原因。

票数 1
EN

Stack Overflow用户

发布于 2014-04-16 23:59:55

通常它是在CPU上由CAD软件完成的。如果你可以发布你所看到的不同的屏幕截图,那么就更容易诊断出问题的原因。它可能只是使用面法线或其他什么。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/22957051

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档