MTLVertexBufferLayoutDescriptor
Соответствует
-
AnyObject -
CVarArgType -
Сопоставимый -
Hashable -
NSCopying -
NSObjectProtocol -
Печатаемый -
NSCopying -
NSObject
Оператор импорта
Swift
import Metal
Objective C
@import Metal;
Доступность
Доступный в iOS 8.0 и позже.
A MTLVertexBufferLayoutDescriptor объект используется, чтобы сконфигурировать, как вершина и данные атрибута выбираются функцией вершинного шейдера.
-
stepFunctionСвойствоОбстоятельства, при которых вершина и ее атрибуты представлены функции вершины.
Объявление
Swift
var stepFunction: MTLVertexStepFunctionObjective C
@property(assign, nonatomic) MTLVertexStepFunction stepFunctionОбсуждение
Значение по умолчанию
MTLVertexStepFunctionPerVertex.Если
stepFunctionMTLVertexStepFunctionPerVertex, программа построения теней выбирает новые данные атрибута на основе[[ vertex_id ]]спецификатор атрибута. Программа построения теней выбирает новые данные атрибута каждый раз, когда новая вершина обрабатывается. В этом случае,stepRateдолжен быть установлен в1, который является его значением по умолчанию.Если
stepFunctionMTLVertexStepFunctionPerInstance, программа построения теней выбирает новые данные атрибута на основе[[ instance_id ]]спецификатор атрибута. В этом случае,stepRateдолжно быть больше, чем0и его значение определяет, как часто программа построения теней выбирает новые данные атрибута.Если
stepFunctionMTLVertexStepFunctionConstant, данные атрибута выборок программы построения теней только один раз и те данные атрибута используются для каждой вершины. В этом случае,stepRateдолжен быть установлен в0.Оператор импорта
Objective C
@import Metal;Swift
import MetalДоступность
Доступный в iOS 8.0 и позже.
-
stepRateСвойствоИнтервал, в котором вершина и ее атрибуты представлены функции вершины.
Обсуждение
Значение по умолчанию
1.stepRateзначение, в сочетании сstepFunctionсвойство, определяет, как часто программа построения теней выбирает новые данные атрибута.stepRateсвойство обычно используется когдаstepFunctionMTLVertexStepFunctionPerInstance. ЕслиstepRateравно1, новые данные атрибута выбираются для каждого экземпляра; еслиstepRateравно2, новые данные атрибута выбираются для каждых двух экземпляров и т.д.Оператор импорта
Objective C
@import Metal;Swift
import MetalДоступность
Доступный в iOS 8.0 и позже.
См. также
-
strideСвойствоРасстояние, в байтах, между данными атрибута двух вершин в буфере.
Обсуждение
strideдолжно быть кратное число4байты. Значение по умолчанию0.Оператор импорта
Objective C
@import Metal;Swift
import MetalДоступность
Доступный в iOS 8.0 и позже.
-
Частота, с которой вершинный шейдер функционируют данные атрибута выборок.
Объявление
Swift
enum MTLVertexStepFunction : UInt { case Constant case PerVertex case PerInstance }Objective C
typedef enum : NSUInteger { MTLVertexStepFunctionConstant = 0, MTLVertexStepFunctionPerVertex = 1, MTLVertexStepFunctionPerInstance = 2 } MTLVertexStepFunction;Константы
-
ConstantMTLVertexStepFunctionConstantФункция вершины выбирает данные атрибута один раз и использование что данные для каждой вершины.
Доступный в iOS 8.0 и позже.
-
PerVertexMTLVertexStepFunctionPerVertexФункция вершины выбирает и использует новые данные атрибута для каждой вершины.
Доступный в iOS 8.0 и позже.
-
PerInstanceMTLVertexStepFunctionPerInstanceФункция вершины регулярно выбирает новые данные атрибута для многих экземпляров, определяющиеся
stepRate.Доступный в iOS 8.0 и позже.
Оператор импорта
Objective C
@import Metal;Swift
import MetalДоступность
Доступный в iOS 8.0 и позже.
-
