FBX模型的面(某些)无法正确渲染

时间:2013-04-09 01:02:04

标签: c++ opengl model fbx

我在Maya中创建了一个基本球体并将其加载到我的OpenGL项目中。我遇到的问题如下所示:

Maya Model

如您所见,球体是三角形的。

但是当模型加载到我的项目中时,某些面部无法正确渲染。

enter image description here

这些是我的Maya FBX导出设置(已选中):

常规选项   - 默认文件扩展名   - 保留参考文献

当前预设   - 用户定义

几何   - 平滑网格

将NURBS曲面转换为:   - 软件渲染网格   - 参考容器内容

嵌入媒体   - 嵌入媒体

单元   - 自动

轴转换   - 向上轴:Y

UI   - 显示警告管理器   - 生成日志数据

FBX文件格式   - 类型:二进制   - 版本:FBX 2013

有关为何发生这种情况的任何想法?我正在使用FBX SDK 2013。

编辑:

在发布时没有意识到由于简单的光渲染而出现白色三角形(标记为“坏三角形”)。但是他在右边扩展吧是实际问题。

1 个答案:

答案 0 :(得分:2)

在我的YouTube视频上看到你的问题。

在我看来,你的一些三角形在扩展栏上被剔除了。也许吧台上的一些三角形有不正确的缠绕?要检查的东西。检查三角形上的绕组并使用opengl剔除面来玩。

至于阴影,我之前看过类似的东西。看起来您可能需要启用平滑着色,而不是平面着色。尝试调用glShadeModel(GL_SMOOTH);

也可以尝试调用glDisable(GL_TEXTURE_2D)。如果启用了纹理并且未给出适当的纹理坐标,则可能会产生像您看到的那样奇怪的平面阴影三角形。

我能想到的唯一另一种可能性就是你的法线没有正确设置。以下是可能发生的一些原因:

  1. 您没有正确导出法线。
  2. 您没有将法线正确导入顶点缓冲区对象,或者无法缓存信息
  3. 您的着色器(假设您没有使用立即模式)没有正确读取或处理法线。
  4. 希望这会有所帮助。祝好运!