如何纹理Opengl过剩对象(C ++)

时间:2013-01-17 22:41:40

标签: c++ opengl textures glut

我已经尝试并成功从bmp文件加载纹理,并使用纹理绘制四边形和三角形。但是我需要将加载的纹理应用于使用glutSolidDodecahedron和glutSolidSphere绘制的对象。我怎样才能做到这一点?如果可能,请包含一些代码

注意:我必须使用这些功能,我不允许从头开始绘制它们。

1 个答案:

答案 0 :(得分:0)

glutSolidDodecahedronglutSolidSphere都没有指定纹理坐标,至少不是根据快速网络搜索出现的任何文档。我快速浏览了一下FreeGLUT实现,并且确实没有指定纹理坐标。

如果可以使用着色器,则可以从顶点的3D位置导出2D纹理坐标。球体和十二面体是非常规则的形状,因此您可以简单地进行球形投影(将顶点位置转换为球面坐标并删除半径分量)。