indexCapacity
TypeScriptget indexCapacity(): Promise<number>Swift declarationvar indexCapacity: IntThe number of indices to allocate space for. You can specify ranges of indices to display dynamically with ``LowLevelMesh/parts``.
struct · iOS 18.0+ · SDK 27.1
struct DescriptorAn object that describes the data format and layout of the buffers in a low-level mesh.
get indexCapacity(): Promise<number>Swift declarationvar indexCapacity: IntThe number of indices to allocate space for. You can specify ranges of indices to display dynamically with ``LowLevelMesh/parts``.
setIndexCapacity(value: number): Promise<void>Swift declarationvar indexCapacity: IntThe number of indices to allocate space for. You can specify ranges of indices to display dynamically with ``LowLevelMesh/parts``.
get vertexLayouts(): Promise<Array<LowLevelMesh_Layout>>Swift declarationvar vertexLayouts: [LowLevelMesh.Layout] { get set }The list of layouts. You assign a layout for each vertex attribute with ``LowLevelMesh/Attribute/layoutIndex``.
setVertexLayouts(value: Array<LowLevelMesh_Layout>): Promise<void>Swift declarationvar vertexLayouts: [LowLevelMesh.Layout] { get set }The list of layouts. You assign a layout for each vertex attribute with ``LowLevelMesh/Attribute/layoutIndex``.
static initVertexCapacityVertexAttributesVertexLayoutsIndexCapacityIndexTypeInstanceCapacity(vertexCapacity?: number, vertexAttributes?: Array<LowLevelMesh_Attribute>, vertexLayouts?: Array<LowLevelMesh_Layout>, indexCapacity?: number, indexType?: _Metal_MTLIndexType, instanceCapacity?: number): Promise<LowLevelMesh_Descriptor>Swift declarationinit(vertexCapacity: Int = 0, vertexAttributes: [LowLevelMesh.Attribute] = [Attribute](), vertexLayouts: [LowLevelMesh.Layout] = [Layout](), indexCapacity: Int = 0, indexType: MTLIndexType = MTLIndexType.uint32, instanceCapacity: Int = 0)Creates a descriptor for a low-level mesh. To create a new ``LowLevelMesh``, first create a `Descriptor` object and set its property values, then use that `Descriptor` with ``LowLevelMesh/init(descriptor:)``. - Parameters: - vertexCapacity: The maximum number of vertices the system can store in the mesh. - vertexAttributes: The attributes of the vertices. - vertexLayouts: The layouts for the vertex buffers. - indexCapacity: The maximum number of vertices the system can store in a single buffer. - indexType: The index type to use for the mesh. - instanceCapacity: The maximum number of instances the mesh supports.
static initVertexCapacityVertexAttributesVertexLayoutsIndexCapacityIndexType(vertexCapacity?: number, vertexAttributes?: Array<LowLevelMesh_Attribute>, vertexLayouts?: Array<LowLevelMesh_Layout>, indexCapacity?: number, indexType?: _Metal_MTLIndexType): Promise<LowLevelMesh_Descriptor>Swift declarationinit(vertexCapacity: Int = 0, vertexAttributes: [LowLevelMesh.Attribute] = [Attribute](), vertexLayouts: [LowLevelMesh.Layout] = [Layout](), indexCapacity: Int = 0, indexType: MTLIndexType = MTLIndexType.uint32)Creates a descriptor for a low-level mesh. To create a new ``LowLevelMesh``, first create a `Descriptor` object and set its property values, then use that `Descriptor` with ``LowLevelMesh/init(descriptor:)``. - Parameters: - vertexCapacity: The maximum number of vertices the system can store in the mesh. - vertexAttributes: The attributes of the vertices. - vertexLayouts: The layouts for the vertex buffers. - indexCapacity: The maximum number of vertices the system can store in a single buffer. - indexType: The index type to use for the mesh.
get vertexCapacity(): Promise<number>Swift declarationvar vertexCapacity: IntThe number of vertices to allocate space for.
setVertexCapacity(value: number): Promise<void>Swift declarationvar vertexCapacity: IntThe number of vertices to allocate space for.
get instanceCapacity(): Promise<number>Swift declarationvar instanceCapacity: IntThe maximum number of instances the mesh supports. Use this when using vertex attributes with a per-instance step rate.
setInstanceCapacity(value: number): Promise<void>Swift declarationvar instanceCapacity: IntThe maximum number of instances the mesh supports. Use this when using vertex attributes with a per-instance step rate.
get vertexAttributes(): Promise<Array<LowLevelMesh_Attribute>>Swift declarationvar vertexAttributes: [LowLevelMesh.Attribute]An array that describes the vertex input attributes to a vertex function.
setVertexAttributes(value: Array<LowLevelMesh_Attribute>): Promise<void>Swift declarationvar vertexAttributes: [LowLevelMesh.Attribute]An array that describes the vertex input attributes to a vertex function.
get vertexBufferCount(): Promise<number>Swift declarationvar vertexBufferCount: Int { get }The number of buffers this descriptor uses. This value derives from the maximum `bufferIndex` each layout specifies in ``vertexLayouts``.
static get maxVertexBufferCount(): Promise<number>Swift declarationstatic let maxVertexBufferCount: IntThe maximum number of separate buffers the system supports. For optimal performance, most applications use one buffer.
get allowsPrimitiveRestart(): Promise<boolean>Swift declarationvar allowsPrimitiveRestart: BoolWhen true, primitive-restart index values (0xFFFF for .uint16, 0xFFFFFFFF for .uint32) are permitted in the index buffer. Every part must then use a strip topology (.triangleStrip or .lineStrip); any other topology is rejected.
setAllowsPrimitiveRestart(value: boolean): Promise<void>Swift declarationvar allowsPrimitiveRestart: BoolWhen true, primitive-restart index values (0xFFFF for .uint16, 0xFFFFFFFF for .uint32) are permitted in the index buffer. Every part must then use a strip topology (.triangleStrip or .lineStrip); any other topology is rejected.
get indexType(): Promise<_Metal_MTLIndexType>Swift declarationvar indexType: MTLIndexTypeThe data type of the indices that the index buffer stores.
setIndexType(value: _Metal_MTLIndexType): Promise<void>Swift declarationvar indexType: MTLIndexTypeThe data type of the indices that the index buffer stores.
No declarations were skipped in this snapshot.