Arhn - архитектура программирования

SceneKit: программно использовать параметр Procedural Sky из инспектора сцен?

В инспекторе сцен Xcode SceneKit есть опция Procedural Sky в разделе Environment.

Согласно некоторым руководствам, включение этой опции придаст больше реализма 3D-моделям.

1) Если вы создаете сцену из кода, а не из Инспектора сцен, как включить параметр Procedural Sky? Нет свойства Environment.

2) Опция Procedural Sky работает только при использовании материалов PBR?


  • Вы получили ответ? 27.02.2020
  • @Paresh.P Смотрите мой ответ ниже 09.06.2020

Ответы:


1

Да, вы можете: класс, который вы ищете, это MDLSkyCubeTexture

Самый простой способ использовать его, чтобы поместить его в фоновое содержимое вашей сцены:

class MyGameScene: SCNScene {
    override init() {
        super.init()
        self.background.contents = MDLSkyCubeTexture(name: "sky",
                                          channelEncoding: .float16,
                                        textureDimensions: vector_int2(128, 128),
                                                turbidity: 0,
                                             sunElevation: 1.5,
                                upperAtmosphereScattering: 0.5,
                                             groundAlbedo: 0.5)
        // To let the sky influence the lighting:
        self.lightingEnvironment.contents = self.background.contents
    }
}

Вам придется прочитать параметры самостоятельно, так как я только что наткнулся на это.

Я нашел эти интересные ссылки:

Этим источникам 5 лет, поэтому я уверен, что за это время кое-что изменилось.

Что касается второй части вашего вопроса: вы можете включить это в свои материалы, но я пока не слишком осведомлен.

09.06.2020
  • Очень хорошо работает на Xcode 11, iOS 13! Использование приведенных выше значений создает цвета, отличные от процедурных цветов неба по умолчанию, но предоставленные ссылки и документация Xcode показывают, как создать сумерки, полдень и т. д. 10.06.2020

  • 2

    Для iOS 12 используйте:

    configuration.environmentTexturing = .automatic
    
    06.09.2018
  • Это можно установить при использовании ARKit, но не для базовой сцены SceneKit. 14.11.2018
  • Новые материалы

    Коллекции публикаций по глубокому обучению
    Последние пару месяцев я создавал коллекции последних академических публикаций по различным подполям глубокого обучения в моем блоге https://amundtveit.com - эта публикация дает обзор 25..

    Представляем: Pepita
    Фреймворк JavaScript с открытым исходным кодом Я знаю, что недостатка в фреймворках JavaScript нет. Но я просто не мог остановиться. Я хотел написать что-то сам, со своими собственными..

    Советы по коду Laravel #2
    1-) Найти // You can specify the columns you need // in when you use the find method on a model User::find(‘id’, [‘email’,’name’]); // You can increment or decrement // a field in..

    Работа с временными рядами спутниковых изображений, часть 3 (аналитика данных)
    Анализ временных рядов спутниковых изображений для данных наблюдений за большой Землей (arXiv) Автор: Рольф Симоэс , Жильберто Камара , Жильберто Кейрос , Фелипе Соуза , Педро Р. Андраде ,..

    3 способа решить квадратное уравнение (3-й мой любимый) -
    1. Методом факторизации — 2. Используя квадратичную формулу — 3. Заполнив квадрат — Давайте поймем это, решив это простое уравнение: Мы пытаемся сделать LHS,..

    Создание VR-миров с A-Frame
    Виртуальная реальность (и дополненная реальность) стали главными модными терминами в образовательных технологиях. С недорогими VR-гарнитурами, такими как Google Cardboard , и использованием..

    Демистификация рекурсии
    КОДЕКС Демистификация рекурсии Упрощенная концепция ошеломляющей О чем весь этот шум? Рекурсия, кажется, единственная тема, от которой у каждого начинающего студента-информатика..