Ссылка констант SceneKit
Этот документ описывает константы, используемые всюду по платформе SceneKit.
-
Обычно используемые значения для вектора SceneKit и матричных типов данных.
Объявление
Swift
let SCNMatrix4Identity: SCNMatrix4 let SCNVector3Zero: SCNVector3 let SCNVector4Zero: SCNVector4Objective C
const SCNMatrix4 SCNMatrix4Identity; const SCNVector3 SCNVector3Zero; const SCNVector4 SCNVector4Zero;Константы
-
SCNMatrix4IdentitySCNMatrix4Identity4 x 4 единичных матрицы.
Элементы на диагонали этой матрицы
1.0; все другие элементы0.0. Умножение другой матрицы единичной матрицей или умножением единичной матрицы другой матрицей приводит к другой матрице.Доступный в OS X v10.10 и позже.
-
SCNVector3ZeroSCNVector3ZeroТрехкомпонентный вектор, каждый компонент которого
0.0.Доступный в OS X v10.10 и позже.
-
SCNVector4ZeroSCNVector4ZeroЧетырехкомпонентный вектор, каждый компонент которого
0.0.Доступный в OS X v10.10 и позже.
-
-
Константы
-
Объявление
Swift
var SCNProgramCompilationError: Int { get }Objective C
enum { SCNProgramCompilationError = 1 }Константы
-
SCNProgramCompilationErrorSCNProgramCompilationErrorОшибка в компиляции исходного кода шейдера 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;Константы
-
SCNModelTransformSCNModelTransform4 x 4 матрицы для преобразования координат от пространства модели до сцены (или мир) пространство.
Доступный в OS X v10.8 и позже.
-
SCNViewTransformSCNViewTransform4 x 4 матрицы для преобразования координат от сцены (или мир) располагают с интервалами для просмотра (или глаз) пространства.
Доступный в OS X v10.8 и позже.
-
SCNProjectionTransformSCNProjectionTransform4 x 4 матрицы для преобразования координат от представления (или глаз) располагают с интервалами для отсечения пространства.
Доступный в OS X v10.8 и позже.
-
SCNNormalTransformSCNNormalTransform4 x 4 матрицы для преобразования поверхностных векторов нормали от пространства модели для просмотра (или глаз) пространства.
Доступный в OS X v10.8 и позже.
-
SCNModelViewTransformSCNModelViewTransform4 x 4 матрицы, содержащие связь трансформаций Модели и Представления.
Доступный в OS X v10.8 и позже.
-
SCNModelViewProjectionTransformSCNModelViewProjectionTransform4 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;Константы
-
SCNGeometrySourceSemanticVertexSCNGeometrySourceSemanticVertexСемантическое для данных позиции вершины.
Для источника геометрии это семантическое идентифицирует данные, содержащие позиции каждой вершины в геометрии. Если Вы создаете пользовательскую геометрию с помощью
geometryWithSources:elements:метод, необходимо обеспечить источник геометрии для этого семантического.Для пользовательской программы программы построения теней Вы используете это семантическое для привязки данных позиции вершины SceneKit с входным атрибутом программы построения теней.
Данные позиции вершины обычно являются массивом три - или четырехкомпонентные векторы.
Доступный в OS X v10.8 и позже.
-
SCNGeometrySourceSemanticNormalSCNGeometrySourceSemanticNormalСемантическое для поверхностных нормальных данных.
Для источника геометрии это семантическое идентифицирует данные, содержащие поверхностный вектор нормали в каждой вершине в геометрии. SceneKit использует эту информацию для вычислений эффектов освещения на поверхность.
Для пользовательской программы программы построения теней Вы используете это семантическое для привязки данных нормали вершин SceneKit с входным атрибутом программы построения теней.
Данные нормали вершин обычно являются массивом три - или четырехкомпонентные векторы.
Доступный в OS X v10.8 и позже.
-
SCNGeometrySourceSemanticColorSCNGeometrySourceSemanticColorСемантическое для цветных данных на вершину.
Для источника геометрии это семантическое идентифицирует данные, содержащие цвет для каждой вершины в геометрии. SceneKit интерполирует цвета на вершину через поверхность для создания гладкой штриховки. Цвета на вершину модулируют произведенных путем освещения и материалы геометрии, если применимо.
Для пользовательской программы программы построения теней Вы используете это семантическое для привязки данных цвета вершины SceneKit с входным атрибутом программы построения теней.
Данные цвета вершины обычно являются массивом три - или четырехкомпонентные векторы.
Доступный в OS X v10.8 и позже.
-
SCNGeometrySourceSemanticTexcoordSCNGeometrySourceSemanticTexcoordСемантическое для данных координаты текстуры.
Для источника геометрии это семантическое идентифицирует данные, содержащие координаты отображения текстур для каждой вершины в геометрии. В отличие от другой семантики, геометрия может содержать многократные источники для координат текстуры — каждый соответствует отдельному
mappingChannelчисло, которое можно использовать, когда соединение текстурировало материалы.Для пользовательской программы программы построения теней Вы используете это семантическое для привязки данных координаты текстуры SceneKit с один или несколько входные атрибуты программы построения теней.
Данные координаты текстуры обычно являются массивом двухкомпонентных векторов.
Доступный в OS X v10.8 и позже.
-
SCNGeometrySourceSemanticVertexCreaseSCNGeometrySourceSemanticVertexCreaseСемантические для вершины мнут данные, используемые для подразделения поверхностей.
Для источника геометрии это семантическое идентифицирует данные, содержащие данные складки для каждой вершины в геометрии. SceneKit использует эту информацию для определения резкости углов и гладкости поверхностей при изменении геометрии
subdivisionLevelсвойство.Для пользовательской программы программы построения теней Вы используете это семантическое для привязки данных складки вершины SceneKit с входным атрибутом программы построения теней.
Данные складки вершины являются массивом скалярных значений с плавающей точкой, где каждое значение определяет гладкость или резкость соответствующей вершины: значение
0.0указывает полностью сглаживавший угол и значение10.0или больше указывает бесконечно резкую точку.Доступный в OS X v10.10 и позже.
-
SCNGeometrySourceSemanticEdgeCreaseSCNGeometrySourceSemanticEdgeCreaseСемантические для края мнут данные, используемые для подразделения поверхностей.
Для источника геометрии это семантическое идентифицирует данные, содержащие данные складки для каждой вершины в геометрии. SceneKit использует эту информацию для определения резкости краев и гладкости поверхностей при изменении геометрии
subdivisionLevelсвойство.Для пользовательской программы программы построения теней Вы используете это семантическое для привязки граничных данных складки SceneKit с входным атрибутом программы построения теней.
Граничные данные складки являются массивом скалярных значений с плавающей точкой, где каждое значение определяет гладкость или резкость края, идентифицированного примитивом в соответствующем индексе в геометрии
edgeCreasesElementэлемент геометрии: значение0.0указывает полностью сглаживавший край и значение10.0или больше указывает бесконечно резкий край.Доступный в OS X v10.10 и позже.
-
SCNGeometrySourceSemanticBoneWeightsSCNGeometrySourceSemanticBoneWeightsСемантическое для данных веса кости, используемых для скелетной анимации покрытых кожей поверхностей.
Для источника геометрии это семантическое идентифицирует данные, содержащие скелетные данные анимации для каждой вершины в геометрии. SceneKit использует эту информацию для определения, сколько позиция вершины под влиянием позиций узлов кости в скелете.
Для пользовательской программы программы построения теней Вы используете это семантическое для привязки данных веса кости SceneKit с входным атрибутом программы построения теней.
Для получения дополнительной информации на скелетной анимации, см. Ссылку класса SCNSkinner.
Доступный в OS X v10.10 и позже.
-
SCNGeometrySourceSemanticBoneIndicesSCNGeometrySourceSemanticBoneIndicesСемантические для кости индексируют данные, используемые для скелетной анимации покрытых кожей поверхностей.
Для источника геометрии это семантическое идентифицирует данные, содержащие скелетные данные анимации для каждой вершины в геометрии. 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;Константы
-
SCNHitTestFirstFoundOnlyKeySCNHitTestFirstFoundOnlyKeyОпция возвратить только первый найденный объект.
Значение для этого ключа является a
NSNumberобъект, содержащий булево значение. Значение по умолчаниюNOfalse, указание, что тестирование хита должно возвратить все найденные объекты. Если Вы указываетеYEStrue, массив результатов испытаний хита содержит только первый найденный объект (который является не обязательно самым близким).Доступный в OS X v10.8 и позже.
-
SCNHitTestSortResultsKeySCNHitTestSortResultsKeyОпция сортировать результаты теста хита.
Значение для этого ключа
NSNumberобъект, содержащий булево значение. Значение по умолчаниюYEStrue, указание, что массив результатов испытаний хита сортируется от самого близкого до дальше всего. (При использованииhitTestWithSegmentFromPoint:toPoint:options:метод, «самый близкий», определяется как ближе к точке, указанной в первом параметре.), Если Вы указываетеNOfalse, результаты возвращаются в произвольном порядке.Доступный в OS X v10.8 и позже.
-
SCNHitTestClipToZRangeKeySCNHitTestClipToZRangeKeyОпция искать объекты только в диапазоне глубины текущей точки представления.
Значение для этого ключа
NSNumberобъект, содержащий булево значение. Значение по умолчаниюYEStrue, указание, что тестирование хита ищет только объекты междуzNearиzFarрасстоянияpointOfViewкамера. УказатьNOfalseдля включения объектов вне этой глубины располагаются в поиске.Эта опция допустима только когда тестирование хита в экранном пространстве
SCNSceneRendererобъект сhitTest:options:метод.Доступный в OS X v10.8 и позже.
-
SCNHitTestBackFaceCullingKeySCNHitTestBackFaceCullingKeyОпция проигнорировать поверхности, не ориентированные к камере.
Значение для этого ключа
NSNumberобъект, содержащий булево значение. Значение по умолчаниюYEStrue, указание, что обращенные к задней стороне многоугольники не будут возвращены как результаты испытаний хита.Доступный в OS X v10.8 и позже.
-
SCNHitTestBoundingBoxOnlyKeySCNHitTestBoundingBoxOnlyKeyОпция искать объекты ограничительной рамкой только.
Значение для этого ключа
NSNumberобъект, содержащий булево значение. Значение по умолчаниюNOfalse, указание, что тестирующие хит поиски должны протестировать против геометрии узла. УказаниеYEStrueпоскольку эта опция увеличивает поисковую производительность за счет геометрической точности.Доступный в OS X v10.8 и позже.
-
SCNHitTestIgnoreChildNodesKeySCNHitTestIgnoreChildNodesKeyОпция проигнорировать дочерние узлы при поиске.
Значение для этого ключа
NSNumberобъект, содержащий булево значение. Значение по умолчаниюNOfalse, указание, что тестирование хита может эхо-сигналы от любой части иерархии узла. УказатьYEStrueискать только узел, указанныйSCNHitTestRootNodeKeyключ.Доступный в OS X v10.8 и позже.
-
SCNHitTestRootNodeKeySCNHitTestRootNodeKeyКорень иерархии узла, которая будет искаться.
Значение для этого ключа
SCNNodeобъект. Тестирование хита ищет только дочернюю иерархию узла под этим узлом. Когда тестирование хита имеет место в экранном пространствеSCNSceneRendererобъект сhitTest:options:метод, значение по умолчанию является корневым узлом представленной сцены. Когда тестирование хита находится в узле с помощьюhitTestWithSegmentFromPoint:toPoint:options:, значение по умолчанию является узлом.Доступный в OS X v10.8 и позже.
-
SCNHitTestIgnoreHiddenNodesKeySCNHitTestIgnoreHiddenNodesKeyОпция проигнорировать скрытые узлы при поиске.
Значение для этого ключа
NSNumberобъект, содержащий булево значение. Значение по умолчаниюYEStrue, указание, что тестирование хита не должно возвращать узлы чейhiddenзначение свойстваYEStrue. УказатьNOfalseискать узлы независимо от их видимости.Доступный в OS X v10.9 и позже.
Обсуждение
Тестирование хита является процессом нахождения элементов сцены, расположенной в указанной точке или вдоль указанного линейного сегмента.
Поскольку рендеринг сцены проектирует свое 3D пространство в 2D изображение, единственная точка в том изображении может соответствовать любой точке вдоль линейного сегмента через пространство сцены. Поэтому определение местоположения элемента сцены, соответствующего точке в представлении, представляющем сцену, требует поиска иерархии узла сцены для объектов, пересекающих линейный сегмент в пространстве сцены, соответствующем той точке в представлении. Вы используете
hitTest:options:метод наSCNViewэкземпляр (или другой объект, реализовываяSCNSceneRendererпротокол) для выполнения этого вида поиска.Когда линейный сегмент не соответствует точке в представленном 2D изображении, тестирование хита вдоль линейного сегмента может быть полезным. Например, в игре Вы могли бы выполнить тестирование хита, чтобы определить, достигнет ли снаряд, запущенный проигрывателем, своего целевого показателя. Используйте
hitTestWithSegmentFromPoint:toPoint:options:метод на узле для выполнения этого вида поиска. -
