【发布时间】:2017-08-29 02:53:44
【问题描述】:
在几乎所有ARKit的教程中,似乎我们总是使用ARPlane作为地板。
let planeGeometry = SCNPlane(width:CGFloat(planeAnchor.extent.x), height:CGFloat(planeAnchor.extent.z))
let planeNode = SCNNode(geometry:planeGeometry)
planeNode.position = SCNVector3(x:planeAnchor.center.x, y:0, z:planeAnchor.center.y)
planeNode.transform = SCNMatrix4MakeRotation(-Float.pi / 2, 1.0, 0, 0)
如果您想要一个无限平面(用于投射阴影)怎么办?我尝试了 SCNFloor,结果很奇怪——地板悬在半空:
let planeGeometry = SCNFloor()
let planeNode = SCNNode(geometry:planeGeometry)
planeNode.position = SCNVector3(planeAnchor.center.x, 0, planeAnchor.center.z)
我进行了谷歌搜索,我得到的唯一结果是这个(这也不起作用):https://github.com/arirawr/ARKit-FloorIsLava/blob/master/FloorIsLava/ViewController.swift
SCNFloor() 可以在 ARKit 中使用吗?如果没有,我该怎么做才能造出一个大飞机?
【问题讨论】:
-
使用 SCNPlane。 SCNFloor 似乎以各种方式损坏/奇怪。