对于ARCore 1.8
/Sceneform 1.8
应用程序,您可以使用以下 3D 文件格式:
- .obj
- .fbx
- .glTF
- .glb
- .sfa(ASCII 场景形式资产定义)
- .sfb(二进制场景形式资产定义)
以及以下支持的texture
/material
文件格式:
- .mtl
- 。垃圾桶
- .png
- .jpg
- .sfm
- 。垫
如果您无法读取相应的mtl
纹理,只需将其转换/替换为其他支持的格式。您可以这样使用obj
资产:
@Override
protected Void doInBackground(Void... voids) {
try {
mVirtualObject.createOnGlThread(this,
"andy.obj",
"andy.png");
mVirtualObject.setBlendMode(MtlRenderer.BlendMode.Shadow);
mVirtualObject.setMaterialProperties(1.0f, 0.0f, 0.0f, 1.0f)
mVirtualObjectShadow.createOnGlThread(this,
"andy_shadow.fbx",
"andy_shadow.sfm");
mVirtualObjectShadow.setBlendMode(MtlRenderer.BlendMode.Shadow);
mVirtualObjectShadow.setMaterialProperties(1.0f, 0.0f, 0.0f, 1.0f);
} catch (Exception e) {
Log.e(TAG, "Failed to read 3D asset file");
}
return null;
}
希望这可以帮助。