SceneKit использует специальный SCNMaterial для трехмерного фона сцены.
Мы должны использовать scnScene.background.diffuse.contents = one of:
- Вертикальная полоса (одиночное изображение с высотой = 6x ширина)
- горизонтальная полоса (одиночное изображение с 6x высота = ширина)
- сферическая проекция (одно изображение с 2xheight = ширина)
- Anмассив из 6 квадратных изображений
Мои фоновые изображения в настоящее время находятся в формате JPG или PNG, но они медленно распаковываются, и я хотел бы использовать сжатые текстуры (форматы PVRTC или ASTC).
Я не могу использовать сжатые текстуры с использованием вертикальных, горизонтальных полос и сферических проекций, поскольку они не являются квадратными изображениями, а PVRTC / ASTC требуют квадратные текстуры под iOS.Я пытался с помощью PVRTC сжимать массив из 6 квадратных изображений, но background.diffuse.contents требует массив из 6 UIImages, и хотя в журнале нет ошибок, я не вижу никакого трехмерного фона, когда я назначаю массив из 6SKTexture to background.diffuse.contents.
У меня следующий вопрос:
- Есть ли способ использовать текстуры PVRTC или ASTC в качестве 3D-фона SceneKit (CubeMap, сферическая проекция...)?