道歉,如果这是一个新手问题,我仍然试图找到我的方式围绕Swift和SpriteKit / SceneKit。
是否可以在单个视图中组合SpriteKit和SceneKit,例如使用SpriteKit在使用SceneKit渲染主3D视图时在屏幕的一部分渲染地图?
答案 0 :(得分:6)
是的,你可以在WWDC的各种演示中展示它。
请查看overlaySKScene
的{{1}}属性。
答案 1 :(得分:0)
在SpriteKit
中使用SceneKit
的一种方法如下:
SCNView *sceneView = [[SCNView alloc] initWithFrame:[[UIScreen mainScreen] bounds] options:@{@"SCNPreferredRenderingAPIKey": @(SCNRenderingAPIOpenGLES3)}];
[self.view addSubview:sceneView];
sceneView.scene = [SCNScene scene];
// ... whatever else you're doing
SKContainerOverlay *skOverlay = [[SKContainerOverlay alloc] initWithSize:self.sceneView.bounds.size];
skOverlay.delegate = self;
self.sceneView.overlaySKScene = skOverlay; // the key to your question
self.sceneView.overlaySKScene.hidden = NO;
self.sceneView.overlaySKScene.scaleMode = SKSceneScaleModeResizeFill;