- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我有一个名为 matrix.usdz
的文件(存在于主包中并选中了目标成员资格)并且需要加载它
do {
let path = Bundle.main.path(forResource: "Matrix", ofType: "usdz")!
let url = URL(fileURLWithPath: path)
let assetsLoader = try Entity.load(contentsOf: url)
}
catch {
print(error)
}
但是它崩溃了
Thread 1: signal SIGABRT
在这条线上
let assetsLoader = try Entity.load(contentsOf: url)
预览
最佳答案
您必须创建一个 anchor如果您需要将实体加载到场景中。为了得到一个ModelEntity,你需要从场景中抓取它hierarchy使用 .children[X]
下标。
import RealityKit
class ViewController: UIViewController {
@IBOutlet var arView: ARView!
override func viewDidLoad() {
super.viewDidLoad()
do {
let path = Bundle.main.path(forResource: "Matrix", ofType: "usdz")!
let url = URL(fileURLWithPath: path)
// Scene
let scene = try Entity.load(contentsOf: url)
print(scene)
// Entity
let entity = scene.children[0].........children[0] as! ModelEntity
entity.model?.materials[0] = UnlitMaterial(color: .red)
let anchor = AnchorEntity(plane: .any)
anchor.addChild(scene)
arView.scene.anchors.append(anchor)
} catch {
print(error)
}
}
}
您也可以通过这种方式获得模型:
let modelEntity = try Entity.loadModel(contentsOf: url)
modelEntity.model?.materials[0] = UnlitMaterial(color: .red)
我应该说你有一个明显的命名错误——“矩阵”与“矩阵”。 Matrix.rcproject
和 Matrix.usdz
也不一样。要加载 Matrix.rcproject
(Reality Composer 项目),请使用以下方法:
// .rcproject
let scene = try! Matrix.loadCircle()
let circleEntity = scene.children[0]...........children[0] as! ModelEntity
加载 USDZ 模型使用这个:
// .usdz
let model = try! Entity.loadModel(named: "Matrix", in: nil)
但据我所知,您不需要 RC 项目,所以从 Reality Composer 导出 USDZ。
要加载 .reality
文件,请使用以下方法:
// .reality
let carModel = try! Entity.loadAnchor(named: "car")
print(carModel)
arView.scene.addAnchor(carModel)
关于swift - RealityKit – 从 USDZ 文件中获取模型实体,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/71035170/
我在 Blender 中创建了两个立方体作为单个对象,并为每个立方体应用了两个不同的图像纹理,并将它们导出为 .OBJ 文件。我已经使用 XCODE 将 .OBJ 文件转换为 .USDZ 文件,并使用
如果我花大量时间构建一个复杂漂亮的3d对象以用于ARkit,然后使用USDZ格式将该对象嵌入到网页中,那么如何通过保存或共享来防止对该3d对象的未授权使用? 最佳答案 此文件格式不用于保护。 usdz
我正在将一个 .usdz 模型(从 Apple 下载)加载到我的 ARSCNSceneView 中,它可以正常工作。但不幸的是,模型总是在没有任何纹理的情况下呈现,并且呈现黑色。 // Get the
您现在可以使用 Xcode 10 beta 捆绑的 Apple 命令行工具将 3D 模型转换为 .usdz 文件(未压缩的 zip 存档)。 将 .obj 文件转换为 .usdz 的示例代码: xcr
我尝试查看 http://graphics.pixar.com/usd/docs/index.html 的主要文档和 http://graphics.pixar.com/usd/docs/Usdz-F
我想创建一个应用程序,使用 reality kit rcproject 来增强 AR 中的内容。我知道如何在 Reality Composer 中创建实体,但问题是我有多个模型。我无法将它们作为对象放
我正在将一个 .usdz 文件加载到我的 ARSCNView 中,到目前为止它工作正常,除了当我将多个对象加载到我的场景中时应用程序崩溃并显示消息:由于内存问题而终止。 我使用的是 Apple 的默认
现在我可以将我在 ARKit 中创建的内容保存为场景文件,稍后再加载它。 sceneView.scene.write(to: path, options: nil, delegate: nil, pr
我有一个名为 matrix.usdz 的文件(存在于主包中并选中了目标成员资格)并且需要加载它 do { let path = Bundle.main.path(forResource: "
有人找到了为 USDZ 文件中打包的骨架网格物体创建多个动画并使用 RealityKit 播放动画的工作流程吗? 我有一个带有两个动画(空闲和运行)的骨架网格物体。我想将它们打包成一个 USDZ 文件
我们正在使用 ARKit 2 + SceneKit,iOS 12 开发一个项目。我们能够使用 .dae 文件检索 CAAnimation 实例并在运行时控制它们。现在,我们正在尝试 .usdz,但是没
每当我尝试查看从 Apple 的 Quick Look 下载的 USDZ 文件时 website在 XCode 中它看起来是黑色的。 我目前使用的是 XCode 版本 10.3 (10G8),并附上了
当我在 ARSCNView 中加载 *.USDZ 文件时,将对象放在我的头顶上。即使我尝试通过苹果提供示例演示“Handling3DInteractionAndUIControlsInAugmente
我有一个项目涉及几个 USDZ 文件,用于应用程序中嵌入的增强现实功能。虽然这很好用,而且我们对它的表现非常满意,但 QLPreviewController 的内置共享按钮是我们想要删除的东西。对对象
我已经下载了Apple提供的.usdz模型:https://developer.apple.com/arkit/gallery/ 但是现在,我想用这些模型之一创建一个 SCNNode,所以我这样做是为
我花了 2 天时间试图了解如何在我的 RealityKit 项目中正确播放动画。 我遵循了其他 stackoverflow 主题的许多提示,但没有成功。我知道使用 RealityKit v2 我们只能
我有一个 .arobject 文件,使用 ARKit Scanner App .我想将此文件转换为 usdz 文件,因为我想从 Safari 浏览器中查看此对象。 有人知道怎么做吗? 最佳答案 目前,
如何使用 ARKit 从远程服务器加载 usdz 模型和纹理? 如下例所示: let myURL = NSURL(string: "https://mywebsite.com/vase.scn") g
我正在 Swift 中使用 RealityKit 加载 USDZ 模型。模型加载良好,具有纹理。 但是,我无法更改 Material 的漫反射属性, Material 总是返回 AnyMaterial
我目前正在尝试在 Android 中使用 AR,但我已经获得了 .usdz 格式的模型。到目前为止,我一直在寻找一种方法将此文件转换为适用于 android 的文件(.fbx .obj .gltf),
我是一名优秀的程序员,十分优秀!