“在混合现实中查看”和“在 3D 中查看”
若要启用许多 3D 和混合现实(MR)方案,可以将多个 MR 组件添加到画布应用。 组件是可用于满足特定要求的控件的集合。 例如,可以使用以下 MR 组件:
- 查看和作 3D 内容。
- 将 3D 内容和 2D 图像覆盖到相机的源上。
- 通过 MR 使用设备测量距离、面积和音量。
- 通过 MR 覆盖识别现实世界中的空间。
我们将在 Easy Sales 应用程序中整合其中一些混合现实功能。
在 MR 中查看
MR 中的视图是应用程序中包含的主要功能之一。 它允许用户在自然世界环境中查看图像和 3D 模型。 用户可以通过单击按钮来访问它;它将所选的 3D 模型或图像覆盖到设备的实时相机源上。
3D 内容必须采用 .glb 文件格式,并且图像必须采用 .jpg 或 .png 格式。 Power Apps 中的 MR 组件使用 Babylon React Native。
性能
源:数据源可识别要显示的 .glb 文件。 MR 组件中的视图支持从以下项加载模型:
对象宽度:显示的图像宽度或 3D 内容。
对象高度:显示的图像的高度或 3D 内容。
对象深度:3D 内容的三维深度。
单位:用于对象的宽度、高度和深度字段的单位。
照片 在混合现实会话期间捕获的图像。
如何处理对象缩放
当模型与视图放置在 MR 组件中时,它使用模型的原始维度。 这些维度是对象宽度、对象高度和对象深度属性。
让我们使用缩放技术来更改模型的大小。
- 如果未定义维度,我们接受该模型已达到预期规模,并且保持不变。
- 如果定义了一个维度,其余的默认值为 0,我们将基于指定的维度缩放整个对象。
- 如果定义了两个维度,我们将调整模型以匹配给定维度,然后对第三个维度的刻度求平均值。
例如,假设你有一个对象高度为 8、对象宽度为 5 和对象深度为 3 的模型。 将对象高度设置为 24,对象宽度设置为 10,使对象深度保持不变。 高度增加 3,宽度增加 2。 这两个度量的平均值为 2.5。 稍后,我们将按该量缩放深度。 最终缩放模型的对象高度为 24,对象宽度为 10,对象深度为 7.25。
- 如果设置了所有三个维度,我们将模型的大小与指定的大小匹配。
以 3D 形式查看
可将 3D 模型添加到画布应用。 使用简单的手势,用户可以使用 3D 组件中的视图 旋转和缩放模型。 组件中包含默认形状。 可以通过更改 Source 属性将此形状更改为另一个形状。 通过链接到库控件,可以显示单个 3D 模型,或者允许用户从库中进行选择。 3D 控件中视图的可行文件格式为 .glb、 .obj 或 .stl。 用户可以将任何文件格式的 3D 模型转换为 .glb ,以在其应用程序中使用。
如果需要 3D 模型的库,请将视图放置在库外的 3D 组件中,并将其源设置为库的指定属性。 确保 3D 模型经过优化,以便与 Power Apps 一起使用,以帮助减少加载时间。 可以使用 3D 组件中的视图将 图钉 (显示为圆形标记)添加到 3D 模型中的指定点。
注释
同一屏幕上 3D 组件中视图的多个实例可能会导致性能问题,因为每个版本的组件都会尝试同时加载 3D 模型。