Spec-Zone .ru
спецификации, руководства, описания, API

Библиотека разработчика Mac

Разработчик

Ссылка платформы SceneKit ссылка на протокол SCNProgramDelegate

Опции
Развертывание Target:

На этой странице
Язык:

SCNProgramDelegate

SCNProgramDelegate методы протокола можно реализовать для получения сообщений о пользовательских программах программы построения теней GLSL. Вы создаете и используете пользовательские программы программы построения теней с SCNProgram класс. Как правило, Вы используете этот протокол для дефектов записи, происходящих при компиляции исходного кода шейдера.

Наследование


Не применимый

Соответствует


Оператор импорта


Swift

import SceneKit

Objective C

@import SceneKit;

Доступность


Доступный в OS X v10.8 и позже.
  • Говорит делегату, что ошибка произошла при компиляции исходного кода GLSL.

    Объявление

    Swift

    optional func program(_ program: SCNProgram, handleError error: NSError)

    Objective C

    - (void)program:(SCNProgram *)program handleError:(NSError *)error

    Параметры

    program

    Программа, генерировавшая ошибку компиляции.

    error

    Повышенная ошибка компиляции.

    Обсуждение

    Исследуйте error параметр для подробных данных ошибки компиляции, предоставленной компилятором GLSL.

    Оператор импорта

    Objective C

    @import SceneKit;

    Swift

    import SceneKit

    Доступность

    Доступный в OS X v10.8 и позже.

  • Спрашивает делегат, непрозрачны ли фрагменты, представленные программой.

    Оператор осуждения

    Используйте opaque свойство SCNProgram возражает вместо этого.

    Объявление

    Swift

    optional func programIsOpaque(_ Program: SCNProgram) -> Bool

    Objective C

    - (BOOL)programIsOpaque:(SCNProgram *)Program

    Параметры

    Program

    Запрошенная программа.

    Возвращаемое значение

    YEStrue если все фрагменты, представленные программой, непрозрачны; NOfalse если программа представляет фрагменты, альфа-значение которых является меньше, чем 1.0.

    Оператор импорта

    Objective C

    @import SceneKit;

    Swift

    import SceneKit

    Доступность

    Доступный в OS X v10.8 и позже.

    Осуждаемый в OS X v10.10.

  • Вызванный на делегата, чтобы позволить ему связать значения программы и/или связал графические ресурсы (такие как текстуры) для символов.

    Оператор осуждения

    Используйте handleBindingOfSymbol:usingBlock: метод геометрии или материала программа присоединен.

    Объявление

    Swift

    optional func program(_ program: SCNProgram, bindValueForSymbol symbol: String, atLocation location: UInt32, programID programID: UInt32, renderer renderer: SCNRenderer) -> Bool

    Objective C

    - (BOOL)program:(SCNProgram *)program bindValueForSymbol:(NSString *)symbol atLocation:(unsigned int)location programID:(unsigned int)programID renderer:(SCNRenderer *)renderer

    Параметры

    program

    SCNProgram объект связать значения для.

    symbol

    Имя символа для привязки значения для.

    location

    Расположение символа в программе возражает, чтобы быть измененным.

    programID

    Базовая программа OpenGL возражает, в котором сделана привязка.

    renderer

    Средство рендеринга, в настоящее время представляющее сцену.

    Обсуждение

    Если Вы используете handleBindingOfSymbol:usingBlock: метод для соединения блока обработчика с объектом SceneKit для символа SceneKit не вызовет делегата program:bindValueForSymbol:atLocation:programID:renderer: метод для того символа при рендеринге того объекта.

    Оператор импорта

    Objective C

    @import SceneKit;

    Swift

    import SceneKit

    Доступность

    Доступный в OS X v10.8 и позже.

    Осуждаемый в OS X v10.10.

  • Вызванный на делегата, чтобы позволить ему развязать значения программы и/или также развязывают связанные графические ресурсы (такие как текстуры).

    Оператор осуждения

    Используйте handleUnbindingOfSymbol:usingBlock: метод геометрии или материала программа присоединен.

    Объявление

    Swift

    optional func program(_ program: SCNProgram, unbindValueForSymbol symbol: String, atLocation location: UInt32, programID programID: UInt32, renderer renderer: SCNRenderer)

    Objective C

    - (void)program:(SCNProgram *)program unbindValueForSymbol:(NSString *)symbol atLocation:(unsigned int)location programID:(unsigned int)programID renderer:(SCNRenderer *)renderer

    Параметры

    program

    SCNProgram объект развязать значения для.

    symbol

    Имя символа для развязывания значения для.

    location

    Расположение символа в программе возражает, чтобы быть измененным.

    programID

    Базовая программа OpenGL возражает, в котором сделано развязывание.

    renderer

    Средство рендеринга, в настоящее время представляющее сцену.

    Обсуждение

    Если Вы используете handleUnbindingOfSymbol:usingBlock: метод для соединения блока обработчика с объектом SceneKit для символа SceneKit не вызовет делегата program:unbindValueForSymbol:atLocation:programID:renderer: метод для того символа при рендеринге того объекта.

    Оператор импорта

    Objective C

    @import SceneKit;

    Swift

    import SceneKit

    Доступность

    Доступный в OS X v10.8 и позже.

    Осуждаемый в OS X v10.10.