Interaktive 3D-Sphäre in RealityView
Beschreibung
DemonstriertDiese dieView zeigt eine 3D-Sphäre in einer RealityKit-ModellinteraktionSzene innerhalb von SwiftUI. Die Sphäre erhält Kollisionseigenschaften, reagiert auf Eingaben und löst bei einem Tap-Gestenereignis eine Aktion aus.
🔍 Zweck
- Darstellung von 3D-Objekten in einer visionOS-App
- Testen von Interaktionen mit
GestenunterstützungRealityKit-Entities - Aufbau von
RealityViewPrototypenauffüreinerimmersiveAppleErlebnisse - Demonstration
Pro.von Gestensteuerung in 3D-Szenen - Grundlage für interaktive AR/VR-Anwendungen
🖥️ Betriebssystem
visionOS
📄 Codebeispiel
import SwiftUI
import RealityKit
import RealityKitContent
@main
struct RealitySphereApp: App {
var body: some Scene {
WindowGroup {
ContentView()
}
}
}
struct ContentView: View {
var body: some View {
RealityView { content in
// Create a sphere entity with a small radius
let sphere = ModelEntity(mesh: .generateSphere(radius: 0.05))
// Enable collision detection so it can respond to interactions
sphere.generateCollisionShapes(recursive: true)
// Add input target so taps or gestures can be recognized
sphere.components[InputTargetComponent.self] = .init()
// Add the sphere to the scene content
content.add(sphere)
}
// Handle tap gesture on the 3D entity
.gesture(TapGesture().onEnded {
print("Entity tapped")
})
}
}
// Modern Swift 5.10+ preview syntax
#Preview {
ContentView()
}