通过 Blender 与 OpenGL 使对象平滑

Making objects smooth via Blender vs. OpenGL

我在 Blender 中创建模型作为多边形网格,并尝试在 OpenGL 中加载和使用这些模型作为 .obj.ctm

我的问题是在OpenGL应用程序中使对象平滑的常识是什么?在搅拌机中平滑模型然后将其导出为 .obj 或按原样导出模型然后在 OpenGL 中平滑它们?

我说的不是平滑的线条,我是想让整个物体平滑as below image.

显然,在 Blender 中制作平滑会增加文件大小、顶点数等,而在 OpenGL 中制作平滑需要更多处理。但是,我不确定是否可以在 OpenGL 中进行平滑处理。例如,我试过下面的代码,但它并没有帮助我使我的模型变得平滑。

glShadeModel(GL_SMOOTH); 
glHint(GL_POLYGON_SMOOTH_HINT, GL_FASTEST); 
glEnable(GL_POLYGON_SMOOTH);

您可能想查看一些有关不同着色器模型的教程。 平滑着色器将插入您面部的颜色,而纯色着色器将以单一颜色渲染每个面部。有时使用平滑着色器可以单独创建平滑对象的错觉,并且计算成本通常可以忽略不计。根据对象的不同,您可能需要在导出之前添加一些顶点,以在渲染后获得平滑的外观。

Google 提出了这个结果,我敢打赌您可以查看许多其他教程。 http://xoax.net/cpp/crs/opengl/lessons/Lesson5/