是否有现有的库或第三方工具可以在给定任意坐标的情况下在 RealityKit 中渲染类似的内容?
我尝试在 RealityView 中添加具有
.realistic
高程的 MapKit,但它呈现为平坦的表面。
Map(
initialPosition: .camera(
MapCamera(centerCoordinate: someCoordinate, distance: 2000, heading: 0, pitch: 45))
)
.mapStyle(.standard(elevation: .realistic))
在visionOS 1.1中,Apple MapKit的地图无法渲染为真实的3D对象(即使打开了真实高程)。地图只能在平面 2D 图层上显示伪 3D 高程,与 SceneKit 的 3D 场景在 VisionOS 中渲染为 2D 视图的方式相同。
import SwiftUI
import RealityKit
import MapKit
@main struct YourApp : App {
var body: some Scene {
WindowGroup {
ContentView()
}
.windowStyle(.volumetric)
.defaultSize(width: 0.5, height: 0.5, depth: 0.5, in: .meters)
}
}
struct ContentView : View {
let map = Map(initialPosition:
.camera(MapCamera(centerCoordinate: .init(latitude: 38.897957,
longitude: -77.036560),
distance: 2000, heading: 0, pitch: 45))
)
var body: some View {
map
.mapStyle(.standard(elevation: .realistic))
.mask(Circle())
.rotation3DEffect(.degrees(90), axis: .x)
.frame(depth: 900, alignment: .center)
RealityView { content in
let cylinder = ModelEntity(mesh: .generateCylinder(height: 0.05,
radius: 0.14))
cylinder.position += [0.0, 0.22, 0.08]
content.add(cylinder)
}
}
}