Вам нужно решить несколько проблем :
- Вы не можете использовать
anchoring component
в iOS Simulator или SwiftUI Canvas Preview , поскольку его можно использовать только для закрепления виртуального контента на поверхностях реального мира. Так что для приложений AR нет симулятора .
Якоря RealityKit бесполезны в режиме симулятора iOS и режиме предварительного просмотра SwiftUI.
// Use it only for compiled AR app, not simulated...
let _: AnchoringComponent.Target.Alignment = .horizontal
Не толькоякоря бесполезны в iOS Simulator Mode
и SwiftUI Preview Mode
, но также и в других сессионно-ориентированных свойствах (включая ARView.session), подобных тем, которые вы видите на рисунке:
![enter image description here](https://i.stack.imgur.com/D20N0.jpg)
Измените .backgroundColor
в ARView на любой другой желаемый. Цвет по умолчанию иногда не позволяет вам увидеть сцену RealityKit. Выглядит как ошибка.
func makeUIView(context: Context) -> ARView {
let arView = ARView(frame: .zero)
let boxAnchor = try! Experience.loadBox()
boxAnchor.steelBox?.scale = SIMD3(5, 5, 5)
boxAnchor.steelBox?.orientation = simd_quatf(angle: Float.pi/4, axis: SIMD3(1,1,0))
arView.backgroundColor = .orange
arView.scene.anchors.append(boxAnchor)
return arView
}
А вот что вы можете увидеть в области предварительного просмотра SwiftUI:
![enter image description here](https://i.stack.imgur.com/K9Do8.jpg)
И, конечно, вы должны дать Camera Permission
перед использованием приложения AR. И не имеет значения, что вы используете: Storyboard или SwiftUI.
Вам нужно добавить Camera Usage Description
свойство и arkit
строка в info.plist
файле:
![enter image description here](https://i.stack.imgur.com/3viqv.jpg)
Версия XML выглядит следующим образом:
/* info.plist
<key>NSCameraUsageDescription</key>
<string>Camera access for AR experience</string>
<key>UIRequiredDeviceCapabilities</key>
<array>
<string>armv7</string>
<string>arkit</string>
</array>
*/
После исправления этих проблем приложениекомпилируется и работает как положено (без ошибок):
![enter image description here](https://i.stack.imgur.com/k71XF.jpg)