如何将.obj文件转换为openGL?

时间:2014-04-09 09:50:35

标签: opengl

我发现将.obj文件转换为openGL很困难。我找到了我的模型,在这里我附上了main.cpp文件供您参考。我不确定如何运行文件。 当我在openGL中调用所有这些文件时,我应该运行哪个文件。 最初,当我在Visual Studio中打开OpenGL时,我调用了main.cpp文件并运行该文件。但它显示了许多错误。错误说无法找到PDB文件。那是什么?

4 个答案:

答案 0 :(得分:8)

我只是在回答我的答案,以澄清导致这样一个问题的误解:

  

如何将.obj文件(人头)转换为openGL?

答案是:你没有。

OpenGL是一个从程序调用的绘图API。它有一个程序来调用绘制点,线和三角形。 OpenGL不是文件格式

.OBJ实际上并不是一个非常明确的文件格式名称(实际上有数百种文件格式以.OBJ结尾)。但我认为你的意思是Wavefront OBJ。无论如何,文件包含数据。虽然程序也是数据,但Wavefront OBJ文件不是程序而且无法执行。因此,即使尝试将OBJ制定为OpenGL转换也没有意义。

您需要做的是编写一个程序,从Wavefront OBJ文件读取数据,并使用该数据对OpenGL进行正确的调用。您已经获得的其他答案链接到这些教程。

答案 1 :(得分:2)

这是obj的一个很好的小解析器 https://github.com/syoyo/tinyobjloader

您需要:
1.解析数据
2.用数据创建缓冲对象
3.绘制缓冲对象

答案 2 :(得分:2)

您需要解析.obj文件然后(取决于OpenGL版本)将解析后的数据加载到array / element_array缓冲区中,然后使用glDraw [Elements / Arrays]在glsl中工作或使用固定函数绘制所有顶点。

但我认为这里真正的答案在于更多的学习,而不是在深水中跳跃时,你几乎不会划独木舟。您应该做更多基础练习并了解API。

哦,.pdb文件用于Visual Studio中的调试;我认为它代表程序数据库。

答案 3 :(得分:1)