【问题标题】:3D model rendering and shaders [closed]3D 模型渲染和着色器 [关闭]
【发布时间】:2012-10-25 09:35:21
【问题描述】:

我有一个 3D 模型,在渲染时我使用着色器根据一些参数计算顶点颜色(计算密集型任务)。这些参数随时间变化。所以基本上我需要根据当前参数计算顶点颜色,并将其与之前渲染的顶点颜色相加。 我将处理具有 5-1000 万个顶点的模型。有人可以帮我解决这个问题吗?

对不起,不清楚的问题。 我面临的问题是如何备份从着色器计算的先前顶点颜色。 我不能使用混合,因为对象可以旋转。所以基本上我需要一种机制来保存从着色器计算的顶点颜色信息并在下一次传递中使用它。

【问题讨论】:

  • 您可以指定您实际要查找的内容。您刚刚陈述了一个完整的任务并说“帮助我”。我们不知道您的问题出在哪里。

标签: opengl shader nvidia cg


【解决方案1】:

我认为Transform Feedback(DirectX 中的流输出)是您正在寻找的。它在核心 OpenGL 3.0 中可用。这使您能够将在顶点着色器中计算的属性记录到缓冲区对象中,然后可以在后续渲染过程中使用。

这是一个相关的问题,有一些起点:Full setup of Transform Feedback

this 博文中也有一些信息。

【讨论】:

  • 感谢 Plow,我想这会解决我的问题