java - 在 ARcore 移动应用程序中显示 .png 或 .jpeg 图像?
问题描述
我必须显示 2d 图像并且不想将 3d 对象与 .obj 文件一起使用。它甚至可能吗?怎么做?
解决方案
在您的情况下,您可以使用三种强大的方法来创建 Sceneform 的
Renderable
:
第一种方法是创建一个分配给它
plane primitive
的.jpg
或.png
纹理。ModelRenderable plane = ShapeFactory.makeCube( new Vector3(5.0f, 5.0f, 0.0f), // size new Vector3(0.0f, 0.0f, 0.0f), // center material);
第二种方法是创建一个
ViewRenderable
from 标准Android Widgets
。ViewRenderable.builder() .setView(this, R.layout.test_view) .build() .thenAccept(renderable -> testViewRenderable = renderable);
第三种方法是导入用 3d 创作工具(Maya、3dsMax、Cinema4D 等)制作的平面。
ModelRenderable.builder() .setSource(this, RenderableSource.builder().setSource( this, Uri.parse(ASSET), RenderableSource.SourceType.OBJ) .setScale(2.0f) .setRecenterMode(RenderableSource.RecenterMode.ROOT) .build()) .setRegistryId(ASSET) .build()
推荐阅读
- c# - .NET MVC 模型对象的多态性
- swift - SwiftUI、Combine 和 Core Data——项目未正确映射/显示
- kotlin - 如何部分验证数据类作为函数参数?
- android - 如何检测不移动但将手指放在屏幕上的触摸事件
- c# - 如何在 Bogus (C# Faker) 规则之间共享状态?
- python-3.x - Kivy:使用按钮更新 TextInput 元素
- javascript - React Native:使用地图和索引渲染时出现问题
- vue.js - vue单击父按钮使单击子组件中的按钮
- python - 从 char 创建一个列表并在 Python 中删除一个元素?
- windows-7-embedded - 反恶意软件是否适用于任何版本的 Windows 7 嵌入式,或者请建议任何 3rd 方反恶意软件嵌入式 Windows7