gpt4 book ai didi

c++ - OpenGL glVertexAttribPointer 正常

转载 作者:行者123 更新时间:2023-11-30 02:44:02 30 4
gpt4 key购买 nike

假设我正在渲染一个 3d GL_TRIANGLE。该对象需要 3 个顶点才能定义:A、B、C。我将此类数据放入缓冲区并通过 glVertexAttribPointer 将其绑定(bind)到着色器。

现在我想将法线传递给着色器。对于每个三角形,应该有 1 个法 vector ,但如果我尝试通过 glVertexAttribPointer 传递它,我需要为点 A、B、C 定义相同的法线 3 次。 是否可以在 glVertexAttribPointer 中每隔 3 个顶点传入 1 个顶点来避免这种情况?

或者为所有顶点传递它是个好主意吗?

最佳答案

Now I want to pass in the normal to the shader. For every triangle there should be 1 normal vector

不,有 3 个法线。每个顶点一个。

Is it possible to pass in 1 vertex every 3 other vertices in a glVertexAttribPointer to avoid this?

不能,因为顶点属性属于一起,不能分开。

Or is it a good idea to pass it in for all vertices?

当然。让每个人的生活都变得更加轻松。

关于c++ - OpenGL glVertexAttribPointer 正常,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25657208/

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