Assimp 4 加载缺失材料不会抛出错误
Assimp 4 Loading Missing materials doesn't throw errors
我正在使用 Assimp 4.1.0 加载 OBJ 文件。有些文件可能引用了丢失的 material 文件,如果 Assimp 没有正确找到它们,我想为 material 提供我自己的默认值。
鉴于文档:
aiMaterial* mat = .....
// The generic way
if(AI_SUCCESS != mat->Get(<material-key>,<where-to-store>)) {
// handle epic failure here
}
它应该抛出一些东西,但它没有。它正在返回 aiReturn_SUCCESS,即使 material 文件不存在。有人对此有任何解决方法吗?
谢谢!
如果您的示例中的 material 不存在,它将是 nullptr 类型,您的应用程序将崩溃。当没有导入基于 obj 的 material(扩展名为 mtl-extension 的文件)时,将创建一个基础 material 我想这个 material 文件将用于获取您想要的密钥寻找。
首先确保您使用的是正确的 material 实例。然后 API 将按照 API 文档中的描述工作。
请问是否还有一些悬而未决的问题。如果你直接使用项目端,你会得到更快的答案:-)。
金
我正在使用 Assimp 4.1.0 加载 OBJ 文件。有些文件可能引用了丢失的 material 文件,如果 Assimp 没有正确找到它们,我想为 material 提供我自己的默认值。
鉴于文档:
aiMaterial* mat = .....
// The generic way
if(AI_SUCCESS != mat->Get(<material-key>,<where-to-store>)) {
// handle epic failure here
}
它应该抛出一些东西,但它没有。它正在返回 aiReturn_SUCCESS,即使 material 文件不存在。有人对此有任何解决方法吗?
谢谢!
如果您的示例中的 material 不存在,它将是 nullptr 类型,您的应用程序将崩溃。当没有导入基于 obj 的 material(扩展名为 mtl-extension 的文件)时,将创建一个基础 material 我想这个 material 文件将用于获取您想要的密钥寻找。
首先确保您使用的是正确的 material 实例。然后 API 将按照 API 文档中的描述工作。
请问是否还有一些悬而未决的问题。如果你直接使用项目端,你会得到更快的答案:-)。
金