Articles of scenekit

HitTest с моделями .dae

Я хочу знать, какой узел попал, но мой метод работает только для узлов с геометрией типа SCNBox, SCNFloor, но не работает с .dea-моделями: – (void) handleTap:(UIGestureRecognizer*)gestureRecognize { // retrieve the SCNView SCNView *scnView = (SCNView *)self.view; // check what nodes are tapped CGPoint p = [gestureRecognize locationInView:scnView]; NSArray *hitResults = [scnView hitTest:p options:nil]; // check […]

Добавление пользовательской логики игры в набор сцен (Swift)

Мне нужно добавить игровой цикл к моему GameViewController (из шаблона Swift «Game» для разработки iOS), чтобы создать приложение и нашел эту справочную страницу, объясняющую, как это сделать: https://developer.apple.com/library/prerelease/ios/documentation/SceneKit/Reference/SCNSceneRendererDelegate_Protocol/ Однако, когда я пытаюсь настроить делегат SCNView как ViewController, он вызывает предупреждения и ошибки (внутри viewDidLoad ()): gameView.delegate = self Где gameView подключен к SCNView в моем […]

Как сделать изображение частицы более крупным с эффектом масштаба с помощью SceneKit?

Я ищу тот же эффект, что и у SpriteKit для частиц эмиттера, эффект scale который может сделать изображение частицы больше или меньше в зависимости от времени. (например, простой красный круг, увеличиваясь и исчезая через 1 секунду.) Я не могу найти такой же scale вариант, как мы можем найти в SpriteKit . Изображение может быть больше […]

SKVideoNode только рендеринг в SCNScene при перемещении узла или камеры

Я использую очень простой способ настройки SKVideoNode и размещения его внутри SCNNode через диффузное содержимое геометрии. Когда я это делаю, единственный раз, когда текстура обновляется и правильно показывает видео, происходит перемещение камеры или узла. Когда оба неподвижны, текстура никогда не обновляется (например, видео не воспроизводится), но звук воспроизводится. Очевидно, что он по-прежнему воспроизводит видео, но […]

запускать действия в редакторе SceneKit

Я добавил поворот вокруг оси в редактор SceneKit. Я хотел бы посмотреть, как выглядит действие, нажав команду «Выполнить» в нижней части редактора SceneKit. Однако каждый раз, когда я запускаю действие, объект, вращающийся, просто размывается. Я знаю, что это не то, что я запрограммировал, потому что я вижу симуляцию кадра за кадром, как указано в видео. […]

Когда мне следует вызвать nextDrawable () на CAMetalLayer?

Я использую SCNRenderer для рендеринга экрана, а затем применяю некоторые эффекты после рендеринга к MTLLayer, который затем отображается в CAMetalLayer. Один из советов по производительности, которые Xcode / LLVM дает мне, – это то, что я nextDrawable() до его необходимости. Я называю это для каждого кадра после применения эффектов после рендеринга. Я хотел бы знать, […]

Как использовать большое количество 3d моделей

В настоящее время у меня проблема с использованием нескольких моделей в SceneKit. У меня есть объектный файл размером 1 МБ, который находится в формате .dae. Когда я пытаюсь использовать большое количество этих (скажем, 1000 моделей), память приложения увеличивается, и приложение падает. Я даже использовал набор сцен встроенных функций clone() и flattenedClone() для создания копий моделей. […]

Неверная загрузка загруженной модели XCode

Я загрузил модель в свою сцену (.scn), и, когда нулевая модель, она кажется под углом 90 градусов по оси x (хотя инспектор говорит 0). Это неверно, но, как ни странно, при запуске сцены на эмуляторе модель загружается в правильное положение. Кто-нибудь испытал это раньше? Это довольно раздражает.

SceneKit SCNAction.run и вращение не работают

У меня есть сцена с ящиком, на котором нужно запустить действие вращения навсегда: dps – это свойство, которое может быть изменено пользователем. override func viewDidAppear() { super.viewDidAppear() let scene = SCNScene() scene.rootNode.addChildNode(boxNode) self.rateScene.scene = scene let actionwait = SCNAction.wait(duration: 0.001) let run = SCNAction.run {_ in let fps = 60.0 let delta = (self.dps*3.14/180.0)/fps self.boxNode.rotation.z […]

SceneKit Направленный свет, вызывающий мерцание

Я пытаюсь добавить направленный свет в Scenekit, чтобы отбрасывать тени, но это вызывает странные артефакты на объектах. Оранжевый блок ниже имеет материал с настройками по умолчанию, а диффузный – оранжевым. Направленный свет направлен вниз, а масштаб увеличивается, в противном случае он имеет настройки по умолчанию. (Уменьшение масштаба по-прежнему имеет ту же проблему). Когда я панорамирую […]