android - ARCore 不显示对象的真实尺寸

标签 android 3d augmented-reality blender arcore

我在 android 应用程序中导入的对象的尺寸有问题。这就是我想要做的:

  1. 下载 3d 对象(.obj 文件)(例如这张椅子:https://poly.google.com/view/3txPAhYeu-x)
  2. Blender打开物体并改变它的尺寸
  3. 使用sceneform插件将对象导入android studio

一切正常,没有错误发生。但是当我在我的应用程序中使用该对象时,它的大小与我在 Blender 中设置的大小不同。对象小于之前设置的大小。

例如,我下载了椅子并在 blender 中将其高度设置为 1 米。 在我的应用程序中导入并使用后,它比真正的 1 米小:
链接:http://prntscr.com/os9cr8

另一个例子,我把椅子调到 2 米高,使用后,它的高度大约是 1 米:
链接:http://prntscr.com/os9eie

一种可能的解决方案是在 android studio 中缩放我的对象并使它们变大,这样我就可以获得“真实”尺寸。 但在那之前我应该​​测试更多的例子,看看是否所有的对象都可以用相同的数字缩放。例如,示例中的椅子可以用 2 进行缩放,它的尺寸将比示例中的尺寸更逼真。

最佳答案

终于找到解决办法了。问题是我在我的应用程序中导入的对象是 .obj 文件 并且根据 wikipedia : "OBJ 坐标没有单位..."

这意味着由导入应用程序决定单位是什么。

Blender 中,我打开我的对象 (.obj),更改其尺寸并将其导出为 (.fbx) 文件.在 android studio 中导入后一切正常,尺寸与之前在 Blender 中设置的相同。

关于android - ARCore 不显示对象的真实尺寸,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57484592/

相关文章:

python - 使用纹理可视化 3D 模型

javascript - JavaScript 或 Python 中的隐藏线删除?

android - 适用于 Android 的简单增强现实 API

android - Firebase 的 MVC 模式

python - openGL(pyglet) 3d 场景无法在 AMD 显卡上正确渲染

android - Google Play Store beta 和 alpha 模式只有 alpha 版本

iphone - 有没有关于实现增强现实 iPhone 应用程序的好教程?

image-processing - 找到照片中图案/标记的位置

android - 获取 TableLayout 中的所有 TableRow

c# - (XAMARIN ANDROID) - 我如何为每个循环遍历 List<T> 并获取每个项目然后传递给数组适配器然后传递给 ListView