ARKit 中(包括官方 demo)擺放物體默認都沿同一個方向,這樣對于用戶來說是無法預測的绢要,待展示的物體可能會面向任意方向。
但對于展示類 app 來說拗小,讓待展示的物體正對用戶擺放無疑是最佳的用戶體驗重罪。
實現(xiàn)方式如下:
ARSCNView 有一個實例變量 pointOfView,這是一個 SCNNode哀九,提供了虛擬攝像機的位置和方向剿配,所以第一步獲取它的 rotation:
let pointOfViewRotation = sceneView.pointOfView?.rotation
然后讓物體繞 y 軸旋轉(zhuǎn)(水平面上)與虛擬攝像機相同的角度即可:
object.rotation = SCNVector4Make(0, pointOfViewRotation.y, 0, pointOfViewRotation.w)