SCNNodeRendererDelegate
SCNNodeRendererDelegate протокол определяет интерфейс для использования Вашего собственного кода для прорисовки OpenGL для рендеринга содержания для узла. Можно предоставить делегату средства рендеринга к SCNNode объект с помощью rendererDelegate свойство.
Как правило, Вы используете делегата средства рендеринга узла для выполнения пользовательского рендеринга, привязывающегося в расположении в сцене. Например, можно присоединить узел с делегатом средства рендеринга в части сцены, чтобы добавить, что специальный эффект представил использование собственного кода для прорисовки OpenGL, такого как жидкое моделирование.
Набор сцены не выполняет собственного рендеринга для узла с делегатом рендеринга, таким образом, этот протокол не является подходящим для настройки рендеринга Набора Сцены геометрии и материалов. Вместо этого используйте методы в SCNShadable протокол для расширения рендеринга Набора Сцены с помощью программ программы построения теней, записанных на Языке Штриховки OpenGL (GLSL).
Наследование
Не применимый
Оператор импорта
Swift
import SceneKit
Objective C
@import SceneKit;
Доступность
Доступный в OS X v10.8 и позже.
-
Говорит делегату выполнять рендеринг для узла.
Объявление
Swift
optional func renderNode(_node: SCNNode, rendererrenderer: SCNRenderer, argumentsarguments: [NSObject : AnyObject])Objective C
- (void)renderNode:(SCNNode *)noderenderer:(SCNRenderer *)rendererarguments:(NSDictionary *)argumentsПараметры
nodeУзел для рендеринга.
rendererОбъект Набора Сцены, ответственный за рендеринг сцены. Исследуйте этот объект
contextсвойство, если необходимо сослаться на контекст OpenGL пользовательский код рендеринга, вовлекает.argumentsСловарь, содержащий, преобразовывает информацию, необходимую для рендеринга узла. Посмотрите
Rendering Transform Keysдля возможных ключей. Значение для каждого ключаNSValueобъект, содержащий aCATransform3Dструктура, описывающая преобразование как 4 x 4 матрицы.Обсуждение
Используйте этот метод для выполнения пользовательского рендеринга OpenGL для узла. Необходимо только выполнить команды рисования OpenGL (и любая установка, требуемая выполнять их) в этом методе — результаты изменения объектов Набора Сцены во время этого метода не определены.
Оператор импорта
Objective C
@import SceneKit;Swift
import SceneKitДоступность
Доступный в OS X v10.8 и позже.
