Есть ли способ заставить фон с содержимым текстуры куба появляться дальше? - PullRequest
0 голосов
/ 05 мая 2019

Я устанавливаю фон сцены SceneKit с текстурой куба.Проблема в том, что я не могу контролировать ту часть текстуры, которая отображается для данного кадра (например, камера).У меня есть другие объекты в моей сцене, поэтому я не хочу менять поле зрения камеры (или любой другой параметр в этом отношении).

Я использую MTKTextureLoader для загрузки текстуры куба.Я пытался «масштабировать» текстуру с помощью параметра «contentsTransform» фона, но это не сработало.Насколько я понимаю, преобразование применяется к текстурным координатам фона, а это не то, что мне нужно.Неверное решение проблемы с параметром scaleFactor или изменение размера изображения.

let textureLoader = MTKTextureLoader(device: sceneKitView.device!)
scnScene.background.contents = try! textureLoader.newTexture(name: cubeTextureName, scaleFactor: 1.0, bundle: .main, options: nil)
scnScene.background.contentsTransform = SCNMatrix4MakeScale(2, 2, 2)  /* Doesn't do the trick */

Кажется, что правильное решение должно включать в себя отрисовку фона дальше от положения камеры или, в качестве альтернативы, рендеринг.пользовательская геометрия, которая имитирует фон.Я пытаюсь избежать последнего решения, но если у кого-то есть способ сделать это, это тоже будет очень хорошо.

...