Ссылка констант SceneKit
Этот документ описывает константы, используемые всюду по платформе SceneKit.
-
Обычно используемые значения для вектора SceneKit и матричных типов данных.
Объявление
Swift
let SCNMatrix4Identity: SCNMatrix4 let SCNVector3Zero: SCNVector3 let SCNVector4Zero: SCNVector4
Objective C
const SCNMatrix4 SCNMatrix4Identity; const SCNVector3 SCNVector3Zero; const SCNVector4 SCNVector4Zero;
Константы
-
SCNMatrix4Identity
SCNMatrix4Identity
4 x 4 единичных матрицы.
Элементы на диагонали этой матрицы
1.0
; все другие элементы0.0
. Умножение другой матрицы единичной матрицей или умножением единичной матрицы другой матрицей приводит к другой матрице.Доступный в OS X v10.10 и позже.
-
SCNVector3Zero
SCNVector3Zero
Трехкомпонентный вектор, каждый компонент которого
0.0
.Доступный в OS X v10.10 и позже.
-
SCNVector4Zero
SCNVector4Zero
Четырехкомпонентный вектор, каждый компонент которого
0.0
.Доступный в OS X v10.10 и позже.
-
-
Константы
-
Объявление
Swift
var SCNProgramCompilationError: Int { get }
Objective C
enum { SCNProgramCompilationError = 1 }
Константы
-
SCNProgramCompilationError
SCNProgramCompilationError
Ошибка в компиляции исходного кода шейдера GLSL для использования с
SCNProgram
класс.Доступный в OS X v10.8 и позже.
-
-
Константы для описания трансформаций в
renderNode:renderer:arguments:
иsetSemantic:forSymbol:options:
методы.Объявление
Swift
let SCNModelTransform: NSString! let SCNViewTransform: NSString! let SCNProjectionTransform: NSString! let SCNNormalTransform: NSString! let SCNModelViewTransform: NSString! let SCNModelViewProjectionTransform: NSString!
Objective C
NSString *const SCNModelTransform; NSString *const SCNViewTransform; NSString *const SCNProjectionTransform; NSString *const SCNNormalTransform; NSString *const SCNModelViewTransform; NSString *const SCNModelViewProjectionTransform;
Константы
-
SCNModelTransform
SCNModelTransform
4 x 4 матрицы для преобразования координат от пространства модели до сцены (или мир) пространство.
Доступный в OS X v10.8 и позже.
-
SCNViewTransform
SCNViewTransform
4 x 4 матрицы для преобразования координат от сцены (или мир) располагают с интервалами для просмотра (или глаз) пространства.
Доступный в OS X v10.8 и позже.
-
SCNProjectionTransform
SCNProjectionTransform
4 x 4 матрицы для преобразования координат от представления (или глаз) располагают с интервалами для отсечения пространства.
Доступный в OS X v10.8 и позже.
-
SCNNormalTransform
SCNNormalTransform
4 x 4 матрицы для преобразования поверхностных векторов нормали от пространства модели для просмотра (или глаз) пространства.
Доступный в OS X v10.8 и позже.
-
SCNModelViewTransform
SCNModelViewTransform
4 x 4 матрицы, содержащие связь трансформаций Модели и Представления.
Доступный в OS X v10.8 и позже.
-
SCNModelViewProjectionTransform
SCNModelViewProjectionTransform
4 x 4 матрицы, содержащие связь Модели, Представления и Трансформаций проекции.
Доступный в OS X v10.8 и позже.
Обсуждение
Соответствующее значение для каждого ключа
NSValue
объект, содержащий aCATransform3D
структура. -
-
Константы для идентификации атрибутов вершины, используемых при работе с данными вершины с помощью
SCNGeometry
иSCNGeometrySource
классы и как ключи словаря при установке пользовательских программ программы построения теней GLSL с помощьюSCNProgram
класс.Объявление
Swift
let SCNGeometrySourceSemanticVertex: NSString! let SCNGeometrySourceSemanticNormal: NSString! let SCNGeometrySourceSemanticColor: NSString! let SCNGeometrySourceSemanticTexcoord: NSString! let SCNGeometrySourceSemanticVertexCrease: NSString! let SCNGeometrySourceSemanticEdgeCrease: NSString! let SCNGeometrySourceSemanticBoneWeights: NSString! let SCNGeometrySourceSemanticBoneIndices: NSString!
Objective C
NSString *const SCNGeometrySourceSemanticVertex; NSString *const SCNGeometrySourceSemanticNormal; NSString *const SCNGeometrySourceSemanticColor; NSString *const SCNGeometrySourceSemanticTexcoord; NSString *const SCNGeometrySourceSemanticVertexCrease; NSString *const SCNGeometrySourceSemanticEdgeCrease; NSString *const SCNGeometrySourceSemanticBoneWeights; NSString *const SCNGeometrySourceSemanticBoneIndices;
Константы
-
SCNGeometrySourceSemanticVertex
SCNGeometrySourceSemanticVertex
Семантическое для данных позиции вершины.
Для источника геометрии это семантическое идентифицирует данные, содержащие позиции каждой вершины в геометрии. Если Вы создаете пользовательскую геометрию с помощью
geometryWithSources:elements:
метод, необходимо обеспечить источник геометрии для этого семантического.Для пользовательской программы программы построения теней Вы используете это семантическое для привязки данных позиции вершины SceneKit с входным атрибутом программы построения теней.
Данные позиции вершины обычно являются массивом три - или четырехкомпонентные векторы.
Доступный в OS X v10.8 и позже.
-
SCNGeometrySourceSemanticNormal
SCNGeometrySourceSemanticNormal
Семантическое для поверхностных нормальных данных.
Для источника геометрии это семантическое идентифицирует данные, содержащие поверхностный вектор нормали в каждой вершине в геометрии. SceneKit использует эту информацию для вычислений эффектов освещения на поверхность.
Для пользовательской программы программы построения теней Вы используете это семантическое для привязки данных нормали вершин SceneKit с входным атрибутом программы построения теней.
Данные нормали вершин обычно являются массивом три - или четырехкомпонентные векторы.
Доступный в OS X v10.8 и позже.
-
SCNGeometrySourceSemanticColor
SCNGeometrySourceSemanticColor
Семантическое для цветных данных на вершину.
Для источника геометрии это семантическое идентифицирует данные, содержащие цвет для каждой вершины в геометрии. SceneKit интерполирует цвета на вершину через поверхность для создания гладкой штриховки. Цвета на вершину модулируют произведенных путем освещения и материалы геометрии, если применимо.
Для пользовательской программы программы построения теней Вы используете это семантическое для привязки данных цвета вершины SceneKit с входным атрибутом программы построения теней.
Данные цвета вершины обычно являются массивом три - или четырехкомпонентные векторы.
Доступный в OS X v10.8 и позже.
-
SCNGeometrySourceSemanticTexcoord
SCNGeometrySourceSemanticTexcoord
Семантическое для данных координаты текстуры.
Для источника геометрии это семантическое идентифицирует данные, содержащие координаты отображения текстур для каждой вершины в геометрии. В отличие от другой семантики, геометрия может содержать многократные источники для координат текстуры — каждый соответствует отдельному
mappingChannel
число, которое можно использовать, когда соединение текстурировало материалы.Для пользовательской программы программы построения теней Вы используете это семантическое для привязки данных координаты текстуры SceneKit с один или несколько входные атрибуты программы построения теней.
Данные координаты текстуры обычно являются массивом двухкомпонентных векторов.
Доступный в OS X v10.8 и позже.
-
SCNGeometrySourceSemanticVertexCrease
SCNGeometrySourceSemanticVertexCrease
Семантические для вершины мнут данные, используемые для подразделения поверхностей.
Для источника геометрии это семантическое идентифицирует данные, содержащие данные складки для каждой вершины в геометрии. SceneKit использует эту информацию для определения резкости углов и гладкости поверхностей при изменении геометрии
subdivisionLevel
свойство.Для пользовательской программы программы построения теней Вы используете это семантическое для привязки данных складки вершины SceneKit с входным атрибутом программы построения теней.
Данные складки вершины являются массивом скалярных значений с плавающей точкой, где каждое значение определяет гладкость или резкость соответствующей вершины: значение
0.0
указывает полностью сглаживавший угол и значение10.0
или больше указывает бесконечно резкую точку.Доступный в OS X v10.10 и позже.
-
SCNGeometrySourceSemanticEdgeCrease
SCNGeometrySourceSemanticEdgeCrease
Семантические для края мнут данные, используемые для подразделения поверхностей.
Для источника геометрии это семантическое идентифицирует данные, содержащие данные складки для каждой вершины в геометрии. SceneKit использует эту информацию для определения резкости краев и гладкости поверхностей при изменении геометрии
subdivisionLevel
свойство.Для пользовательской программы программы построения теней Вы используете это семантическое для привязки граничных данных складки SceneKit с входным атрибутом программы построения теней.
Граничные данные складки являются массивом скалярных значений с плавающей точкой, где каждое значение определяет гладкость или резкость края, идентифицированного примитивом в соответствующем индексе в геометрии
edgeCreasesElement
элемент геометрии: значение0.0
указывает полностью сглаживавший край и значение10.0
или больше указывает бесконечно резкий край.Доступный в OS X v10.10 и позже.
-
SCNGeometrySourceSemanticBoneWeights
SCNGeometrySourceSemanticBoneWeights
Семантическое для данных веса кости, используемых для скелетной анимации покрытых кожей поверхностей.
Для источника геометрии это семантическое идентифицирует данные, содержащие скелетные данные анимации для каждой вершины в геометрии. SceneKit использует эту информацию для определения, сколько позиция вершины под влиянием позиций узлов кости в скелете.
Для пользовательской программы программы построения теней Вы используете это семантическое для привязки данных веса кости SceneKit с входным атрибутом программы построения теней.
Для получения дополнительной информации на скелетной анимации, см. Ссылку класса SCNSkinner.
Доступный в OS X v10.10 и позже.
-
SCNGeometrySourceSemanticBoneIndices
SCNGeometrySourceSemanticBoneIndices
Семантические для кости индексируют данные, используемые для скелетной анимации покрытых кожей поверхностей.
Для источника геометрии это семантическое идентифицирует данные, содержащие скелетные данные анимации для каждой вершины в геометрии. SceneKit использует эту информацию для определения, какие узлы кости в скелете влияют на поведение каждой вершины.
Для пользовательской программы программы построения теней Вы используете это семантическое для привязки индексных данных кости SceneKit с входным атрибутом программы построения теней.
Для получения дополнительной информации на скелетной анимации, см. Ссылку класса SCNSkinner.
Доступный в OS X v10.10 и позже.
-
-
Ключи, используемые в
options
словарь дляhitTestWithSegmentFromPoint:toPoint:options:
иhitTest:options:
методы.Объявление
Swift
let SCNHitTestFirstFoundOnlyKey: NSString! let SCNHitTestSortResultsKey: NSString! let SCNHitTestClipToZRangeKey: NSString! let SCNHitTestBackFaceCullingKey: NSString! let SCNHitTestBoundingBoxOnlyKey: NSString! let SCNHitTestIgnoreChildNodesKey: NSString! let SCNHitTestRootNodeKey: NSString! let SCNHitTestIgnoreHiddenNodesKey: NSString!
Objective C
NSString * const SCNHitTestFirstFoundOnlyKey; NSString * const SCNHitTestSortResultsKey; NSString * const SCNHitTestClipToZRangeKey; NSString * const SCNHitTestBackFaceCullingKey; NSString * const SCNHitTestBoundingBoxOnlyKey; NSString * const SCNHitTestIgnoreChildNodesKey; NSString * const SCNHitTestRootNodeKey; NSString * const SCNHitTestIgnoreHiddenNodesKey;
Константы
-
SCNHitTestFirstFoundOnlyKey
SCNHitTestFirstFoundOnlyKey
Опция возвратить только первый найденный объект.
Значение для этого ключа является a
NSNumber
объект, содержащий булево значение. Значение по умолчаниюNO
false
, указание, что тестирование хита должно возвратить все найденные объекты. Если Вы указываетеYES
true
, массив результатов испытаний хита содержит только первый найденный объект (который является не обязательно самым близким).Доступный в OS X v10.8 и позже.
-
SCNHitTestSortResultsKey
SCNHitTestSortResultsKey
Опция сортировать результаты теста хита.
Значение для этого ключа
NSNumber
объект, содержащий булево значение. Значение по умолчаниюYES
true
, указание, что массив результатов испытаний хита сортируется от самого близкого до дальше всего. (При использованииhitTestWithSegmentFromPoint:toPoint:options:
метод, «самый близкий», определяется как ближе к точке, указанной в первом параметре.), Если Вы указываетеNO
false
, результаты возвращаются в произвольном порядке.Доступный в OS X v10.8 и позже.
-
SCNHitTestClipToZRangeKey
SCNHitTestClipToZRangeKey
Опция искать объекты только в диапазоне глубины текущей точки представления.
Значение для этого ключа
NSNumber
объект, содержащий булево значение. Значение по умолчаниюYES
true
, указание, что тестирование хита ищет только объекты междуzNear
иzFar
расстоянияpointOfView
камера. УказатьNO
false
для включения объектов вне этой глубины располагаются в поиске.Эта опция допустима только когда тестирование хита в экранном пространстве
SCNSceneRenderer
объект сhitTest:options:
метод.Доступный в OS X v10.8 и позже.
-
SCNHitTestBackFaceCullingKey
SCNHitTestBackFaceCullingKey
Опция проигнорировать поверхности, не ориентированные к камере.
Значение для этого ключа
NSNumber
объект, содержащий булево значение. Значение по умолчаниюYES
true
, указание, что обращенные к задней стороне многоугольники не будут возвращены как результаты испытаний хита.Доступный в OS X v10.8 и позже.
-
SCNHitTestBoundingBoxOnlyKey
SCNHitTestBoundingBoxOnlyKey
Опция искать объекты ограничительной рамкой только.
Значение для этого ключа
NSNumber
объект, содержащий булево значение. Значение по умолчаниюNO
false
, указание, что тестирующие хит поиски должны протестировать против геометрии узла. УказаниеYES
true
поскольку эта опция увеличивает поисковую производительность за счет геометрической точности.Доступный в OS X v10.8 и позже.
-
SCNHitTestIgnoreChildNodesKey
SCNHitTestIgnoreChildNodesKey
Опция проигнорировать дочерние узлы при поиске.
Значение для этого ключа
NSNumber
объект, содержащий булево значение. Значение по умолчаниюNO
false
, указание, что тестирование хита может эхо-сигналы от любой части иерархии узла. УказатьYES
true
искать только узел, указанныйSCNHitTestRootNodeKey
ключ.Доступный в OS X v10.8 и позже.
-
SCNHitTestRootNodeKey
SCNHitTestRootNodeKey
Корень иерархии узла, которая будет искаться.
Значение для этого ключа
SCNNode
объект. Тестирование хита ищет только дочернюю иерархию узла под этим узлом. Когда тестирование хита имеет место в экранном пространствеSCNSceneRenderer
объект сhitTest:options:
метод, значение по умолчанию является корневым узлом представленной сцены. Когда тестирование хита находится в узле с помощьюhitTestWithSegmentFromPoint:toPoint:options:
, значение по умолчанию является узлом.Доступный в OS X v10.8 и позже.
-
SCNHitTestIgnoreHiddenNodesKey
SCNHitTestIgnoreHiddenNodesKey
Опция проигнорировать скрытые узлы при поиске.
Значение для этого ключа
NSNumber
объект, содержащий булево значение. Значение по умолчаниюYES
true
, указание, что тестирование хита не должно возвращать узлы чейhidden
значение свойстваYES
true
. УказатьNO
false
искать узлы независимо от их видимости.Доступный в OS X v10.9 и позже.
Обсуждение
Тестирование хита является процессом нахождения элементов сцены, расположенной в указанной точке или вдоль указанного линейного сегмента.
Поскольку рендеринг сцены проектирует свое 3D пространство в 2D изображение, единственная точка в том изображении может соответствовать любой точке вдоль линейного сегмента через пространство сцены. Поэтому определение местоположения элемента сцены, соответствующего точке в представлении, представляющем сцену, требует поиска иерархии узла сцены для объектов, пересекающих линейный сегмент в пространстве сцены, соответствующем той точке в представлении. Вы используете
hitTest:options:
метод наSCNView
экземпляр (или другой объект, реализовываяSCNSceneRenderer
протокол) для выполнения этого вида поиска.Когда линейный сегмент не соответствует точке в представленном 2D изображении, тестирование хита вдоль линейного сегмента может быть полезным. Например, в игре Вы могли бы выполнить тестирование хита, чтобы определить, достигнет ли снаряд, запущенный проигрывателем, своего целевого показателя. Используйте
hitTestWithSegmentFromPoint:toPoint:options:
метод на узле для выполнения этого вида поиска. -