gpt4 book ai didi

c++ - 我可以在 gpu 中计算法线吗?

转载 作者:塔克拉玛干 更新时间:2023-11-03 00:06:10 25 4
gpt4 key购买 nike

我有一个 opengl 应用程序可以加载 dxf 并将其绘制在屏幕上,每次我需要计算法线。有没有办法在 GPU 而不是 CPU 中计算法线?如果是怎么办?

最佳答案

您可以从几何着色器中计算“平面着色”(每个面一个法线)法线。每个三角形一个,“即时”,使用叉积。您不能以这种方式生成“平滑”法线,因为 GS 没有关于邻居的信息。

如果网格是参数化的(例如,元球),则可以通过对附近的几个函数值进行采样来计算法线。这也可以在 GPU 上完成。

如果网格是基于高度图或类似的东西,你也可以在着色器中计算法线。

如果 GPU 支持 CUDA、OpenCL 或类似的东西,并且如果它可以处理任意数据数组,那么您也可以使用传统技术在 GPU 上计算法线。

此外,我认为大约 5 年前(或大约)我看过一篇题为“GPU 上的正常平滑”或“GPU 上的正常生成”之类的论文。它的第一页上有一个平面阴影反射多边形心形。不幸的是,我找不到那篇论文,而且我不确定它是否存在(或者我在哪里看到它)。您可以在 GDC 论文、SIGGRAPH 论文、ATI SDK 或 NVidia SDK 中找到它(如果存在)。

关于c++ - 我可以在 gpu 中计算法线吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3347031/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com