【问题标题】:How to scale SCNScene?如何扩展 SCNScene?
【发布时间】:2021-06-18 10:05:12
【问题描述】:
我正在使用此代码在 AR 中显示 USDZ 模型:
class ViewController: UIViewController {
@IBOutlet var sceneView: ARSCNView!
override func viewDidLoad() {
super.viewDidLoad()
sceneView.autoenablesDefaultLighting = true
sceneView.scene = SCNScene(named: "art.scnassets/model.usdz")!
sceneView.session.run(ARWorldTrackingConfiguration())
}
但是模型太大了。如何扩展它?
【问题讨论】:
标签:
swift
augmented-reality
arkit
scnnode
scnscene
【解决方案1】:
试试这个:
override func viewDidLoad() {
super.viewDidLoad()
let sceneView = self.view as! SCNView
let scene = SCNScene()
sceneView.scene = scene
sceneView.backgroundColor = .darkGray
sceneView.allowsCameraControl = true
sceneView.autoenablesDefaultLighting = true
// Fighter
let fighterScene = SCNScene(named: "art.scnassets/ship.scn")!
let fighterNode = fighterScene.rootNode.childNode(withName: "fighter",
recursively: true)
fighterNode?.scale = SCNVector3(0.3, 0.3, 0.3)
scene.rootNode.addChildNode(fighterNode!)
// ...
}