c++ - 使用 OpenGL 的纹理和顶点数组?

标签 c++ c opengl

基本上我想做的是制作有纹理的 NGONS。我还想使用曲面 segmentation 器 (GLU) 制作凹面和多轮廓物体。

不过我想知道纹理是如何发挥作用的。我认为 tesselator 会返回顶点,所以我会将它们添加到我的数组中,这很好。但是我的顶点数组将包含多个多边形对象,那么我如何告诉它何时像立即模式一样绑定(bind)纹理?现在我觉得被一个绑定(bind)电话困住了。

如何做到这一点? 谢谢

最佳答案

如果您要使用glDrawArraysglDrawElements,您将不得不分段绘制顶点,每个纹理一个。整个调用使用相同的纹理。 (这些调用就像在 glBeginglEnd 中手动提交相同数据的潜在更高效版本,并且您不能在 glBegin...glEnd block ,或者。)

您也可以坚持使用 glBeginglEnd,并使用 glArrayElement 提交属性从顶点数组中取出的顶点。

关于c++ - 使用 OpenGL 的纹理和顶点数组?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2892673/

相关文章:

c - 为什么在到达 MEX 文件的最后一行后需要这么长时间才能返回 Matlab?

c - 如何修改已传递给 C 函数的指针?

c++ - GLUT 和 C++ 类

c - Minix - 将数据从系统调用地址复制回调用进程

c++ - 试图从整个应用程序访问 QGLWidget

c++ - OpenGL - 重新绑定(bind)一个已经绑定(bind)的纹理

c++ - 为什么 const 成员必须在构造函数初始化器中而不是在其主体中初始化?

c++ - C++ 编译器会优化按值返回代码吗?

c++ - 使用一个数字数据成员为类定义所有比较运算符的便捷方法?

c++ - 如何修复 'std::logic_error' what(): basic_string::_M_construct null not valid 错误?