---
title: MDLVertexAttribute
framework: modelio
role: symbol
role_heading: Class
path: modelio/mdlvertexattribute
---

# MDLVertexAttribute

A description of the format of per-vertex data for a single vertex attribute in a mesh object.

## Declaration

```swift
class MDLVertexAttribute
```

## Overview

Overview The vertex buffers of a MDLMesh object store vertex attributes—such as vertex position, surface normal vector, or texture coordinates—that define its 3D shape and other data for use in rendering. Attribute information describes the structure and layout of that data. A collection of vertex attribute objects and additional information forms a MDLVertexDescriptor object, which completely describes the layout of vertex buffers for a mesh.

## Topics

### Creating a Vertex Attribute

- [init(name:format:offset:bufferIndex:)](modelio/mdlvertexattribute/init(name:format:offset:bufferindex:).md)

### Inspecting a Vertex Attribute

- [name](modelio/mdlvertexattribute/name.md)
- [format](modelio/mdlvertexattribute/format.md)
- [offset](modelio/mdlvertexattribute/offset.md)
- [bufferIndex](modelio/mdlvertexattribute/bufferindex.md)
- [initializationValue](modelio/mdlvertexattribute/initializationvalue.md)

### Constants

- [Vertex Attributes](modelio/vertex-attributes.md)
- [MDLVertexFormat](modelio/mdlvertexformat.md)

### Instance Properties

- [time](modelio/mdlvertexattribute/time.md)

## Relationships

### Inherits From

- [NSObject](objectivec/nsobject-swift.class.md)

### Conforms To

- [CVarArg](swift/cvararg.md)
- [CustomDebugStringConvertible](swift/customdebugstringconvertible.md)
- [CustomStringConvertible](swift/customstringconvertible.md)
- [Equatable](swift/equatable.md)
- [Hashable](swift/hashable.md)
- [NSCopying](foundation/nscopying.md)
- [NSObjectProtocol](objectivec/nsobjectprotocol.md)

## See Also

### Managing Mesh Data

- [MDLMeshBuffer](modelio/mdlmeshbuffer.md)
- [MDLMeshBufferAllocator](modelio/mdlmeshbufferallocator.md)
- [MDLMeshBufferData](modelio/mdlmeshbufferdata.md)
- [MDLMeshBufferDataAllocator](modelio/mdlmeshbufferdataallocator.md)
- [MDLMeshBufferMap](modelio/mdlmeshbuffermap.md)
- [MDLMeshBufferZone](modelio/mdlmeshbufferzone.md)
- [MDLMeshBufferZoneDefault](modelio/mdlmeshbufferzonedefault.md)
- [MDLVertexAttributeData](modelio/mdlvertexattributedata.md)
- [MDLVertexBufferLayout](modelio/mdlvertexbufferlayout.md)
- [MDLVertexDescriptor](modelio/mdlvertexdescriptor.md)
