ARKit / ARCore开发中的3D模型格式

问题描述 投票:3回答:4

我是iOS和Android AR游戏开发的初学者。我有以下问题:

  1. iOS的ARKit和Android的ARCore分别支持哪种3D模型格式? (我试过ARkit支持.dae.obj,但尚未测试ARCore。)

  2. 我们的3D模型供应商只能提供FBX格式。如何将其转换为ARKit和ARCore支持的格式?我尝试使用3D模型转换器,但是转换后的模型没有纹理。

scenekit augmented-reality arkit arcore sceneform
4个回答
3
投票

ARKit不在乎模型格式,因为ARKit本身并不显示3D模型(或其他任何东西)。

ARKit提供了供更高级别的渲染引擎使用的信息-Apple的SceneKit或SpriteKit,第三方Unreal或Unity插件,或您使用Metal或OpenGL构建的引擎。渲染引擎负责绘制摄像机供稿并叠加3D内容以创建AR幻觉,并且它使用ARKit提供的信息来令人信服地进行此操作。

我对ARCore不太了解,但从外观上看,它在Android生态系统中都起着相同的作用-它是Unity,Unreal或其他处理3D模型的引擎。

因此,诸如此类的问题是针对您正在使用的任何3D引擎with ARKit / ARCore。 SceneKit可以直接处理DAE和OBJ,还可以通过模型I / O处理其他几种格式(请参见MDLAssetMDLAsset SCNScene.)。对于Unreal,Unity以及与ARCore句柄一起使用的任何其他内容,请参阅这些技术的文档。


10
投票

Apple init(mdlAsset:)框架处理init(mdlAsset:)和3D应用程序的3D模型


2
投票

ARcore本身目前没有任何3D模型处理逻辑。要以任何格式渲染3D模型,您需要解析数据并使用openGL进行绘制。包中的示例应用演示了如何针对简单的3D模型(即1个OBJ和1个纹理文件)完成此操作。

我不确定您是否正确检查了ARCore。 Google提供的基本示例正在处理.obj格式。 ARCore是仅与AR相关的工具集。您可以使用任何3D格式,只要您能够在Android上使用它即可。它与ARCore无关问题2与ARCore和/或android甚至arkit无关


0
投票

我不确定您是否正确检查了ARCore。 Google提供的基本示例正在处理.obj格式。 ARCore是仅与AR相关的工具集。您可以使用任何3D格式,只要您能够在Android上使用它即可。它与ARCore无关问题2与ARCore和/或android甚至arkit无关

© www.soinside.com 2019 - 2024. All rights reserved.