OpenGL通过Assimp加载模型
OpenGL通过Assimp加载模型简介
到目前为止,我们已经使用了手动创建的模型。如您所见,为每个顶点指定位置和其他属性的过程不是很最快。立方体,金字塔或其他简单的表面仍然是可以容忍的,但例如,人的脸?在游戏或商业应用世界中,创建多边形网格的过程被扩展到使用像Blender、Maya或 3ds Max 等程序的 3D 模型。这些应用程序提供了高级工具,可帮助建模者创建极其复杂的模型。模型完成后,它将以多种格式之一保存到文件中。此文件包含所有几何数据。现在,它可以加载到引擎中(假设支持此格式),其内容可以填充顶点和索引缓冲区进行渲染。了解如何拆解特定文件格式并能够下载其数据对于将程序恢复到一个新的水平至关重要。
开发加载程序可能需要相当长的时间。如果您希望能够从不同的源加载模型,则需要检查每个格式并编写每个加载程序。有些格式很简单,但有些格式是来自耳朵的蒸汽,它们需要大量的时间,这不是 3D 编程的目标。因此,本课中显示的方法就是使用外部库来分析和从文件中加载模型。
开放资产进口库或只是Assimp是一个免费的库,支持多种格式,包括最流行的格式。它是跨平台的,在Linux和Windows下都可用。在 C/C++ 程序中,使用它非常简单。
本课没有太多的理论。让我们更深入地了解一下 Assimpÿ