提问人:MARCOS MEDINA 提问时间:10/17/2023 更新时间:11/3/2023 访问量:28
使用 opengl 和 assimp 将不同的 3d 模型绑定到主模型
Bind different 3d models to a main model with opengl and assimp
问:
我希望你一切顺利。我从 OpenGL 开始,目前,我一直在实现 Assimp 来加载 3D 模型和动画,到目前为止,一切进展顺利。但是,现在我想知道的是,是否有可能拥有多个 FBX 文件并将它们链接到主模型的骨骼。例如,我有一个 FBX 文件
male_character.fbx ,我还有另一个文件
头盔.fbx ,我想把它与角色的头部联系起来。这是否可行,或者只能使用一个文件和不同的网格来完成?此外,我还附上了一个 gif 来展示我迄今为止使用 Android Kotlin、NDK (C++)、OpenGL ES 和 Assimp 所取得的成就。感谢您的帮助!在此处输入图像描述
我从同一个文件(意味着不同的网格)向角色添加了几个 3D 对象,但我开始思考,如果以后需要添加一个新项目,那么整个 FBX 文件必须完全更新以包含这个新项目。这就是为什么我想知道是否可以使用单独的文件执行此操作。
答:
0赞
KimKulling
11/3/2023
#1
是的,可以将不同的模型添加到一个大场景中。Bug:这不是 Asset-Importer-Lib 设计的常见用例。Assimp 将导入模型,提供一个中间模型作为所谓的 aiScene-Instance,其中包含渲染该模型所需的所有数据。
如果要从不同的数据中组装 scne,则需要在渲染环境中实现它:
- 基于框架创建全局场景
- 使用 assimp 导入新模型
- 将 aiScene-Data 添加到全局场景中。我正在使用我自己的场景图来执行此操作
希望能有所帮助。
评论