用于ARCore应用程序开发的OBJ文件

时间:2017-08-31 15:56:20

标签: augmented-reality arcore sceneform

ARCore示例中andy.obj文件的重要性是什么?

让我们说如果我们用新图片替换andy.png,我们如何为新图像生成.obj文件?

4 个答案:

答案 0 :(得分:6)

OBJ文件描述了几何体,png文件是在这个3D对象上“拉伸”的纹理。您必须使用像Blender这样的3D建模程序来创建新模型。

这是在Blender中导出OBJ文件的方法:https://blender.stackexchange.com/questions/121/how-do-i-export-a-model-to-obj-format

enter image description here

答案 1 :(得分:2)

示例代码只能处理只有1个纹理文件的最简单的OBJ模型。

对于那些复杂的OBJ模型,它们通常带有一个MTL文件,该文件引用了几个不同的纹理文件。为了能够处理这个问题,您需要对现有代码进行一些额外的工作。如果您对@ https://github.com/JohnLXiang/arcore-sandbox感兴趣,请查看我为此案例实施的代码。特别是,您可以查看ObjectRenderer.createOnGlThread()。

答案 2 :(得分:1)

要在Blender中将纹理导出为图像,请执行以下操作:

选择您的对象并进入编辑模式。选择所有顶点/面(按' a')。然后启动UV Mapping,按下' u。并选择UVMapping的其中一个选项。您必须为您的模型测试最佳选项。我不确定ARCore使用哪种UV Mapping映射选项。

enter image description here

然后转到UV /​​图像编辑器:

enter image description here

在菜单中导出UV布局,然后保存图像。

enter image description here

答案 3 :(得分:0)

要为您的AR应用程序创建新的.obj模型,您需要使用3D创作软件,例如Autodesk Maya,Autodesk 3dsMax,Blender,SideFx Houdini,Cinema 4D等。这些应用程序可以帮助您创建高质量的具有相应.mtl纹理文件的多边形模型。

  

但是您应该知道Sceneform不仅支持OBJ格式(不支持动画)的3D资源,而且还支持FBX(带有动画)和glTF(动画)的3D资源。不支持)。

  • .obj
  • .fbx
  • .glTF
  

也欢迎使用Sceneform的ASCIIBinary资产定义:

  • .sfa
  • .sfb
  

受支持的材质文件(也就是3D资源的纹理)具有以下扩展名:MTLBINPNGJPG和本机Sceneform的SFM

  • .mtl
  • .bin
  • .png
  • .jpg
  • .sfm

希望这会有所帮助。