2014-10-07 4 views
1

Извинения, если это вопрос новичков, я все еще пытаюсь найти свой путь вокруг Swift и SpriteKit/SceneKit.Объединение сценария и spritekit в одном экране

Возможно ли совместить SpriteKit и SceneKit в одном виде, например. используя SpriteKit для отображения карты в части экрана при использовании SceneKit для рендеринга основного 3D-представления?

ответ

5

Да, вы можете, и это было показано в различных демонстрациях на WWDC. Посмотрите на overlaySKScene Недвижимость SCNSceneRenderer.

+0

Я где-то слышал, вероятно, WWDC, что наоборот - рисовать SceneKit на вершине SpriteKit - должно быть возможно, но до сих пор найти некоторые жесткие факты. Любые подсказки? – Jonny

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;