我从服务器获取3d模型并在应用程序中显示。一切都很好,除了3D模型在相机上显得比实际尺寸小。
这是我的代码:
let wrapperNode = SCNNode()
for child in virtualObjectScene.rootNode.childNodes {
child.geometry?.firstMaterial?.lightingModel = .physicallyBased
child.movabilityHint = .movable
let light = SCNLight()
light.type = .ambient
child.light = light
child.scale = SCNVector3(0.1, 0.1, 0.1)
wrapperNode.addChildNode(child)
}
self.addChildNode(wrapperNode)
wrapperNode.scale = SCNVector3(0.1, 0.1, 0.1)
我还尝试将缩放设置为SCNVector3(1,1,1),但该案例对象位于顶部位置(不正确的位置)。 virtualObjectScene包含.scn对象,该对象从服务器下载。
https://developer.apple.com/documentation/scenekit/scnnode/1408050-scale从apple doc中,你可以发现当你设置child.scale = SCNVector3(0.1,0.1,0.1)时,你添加到wrapperNode的childNode(模型)是它的实际大小的0.1。我不知道你试过哪个SCNVector3(1,1,1),如果这不起作用,那就很抱歉。