vertexAttributes
An array of vertex attributes that define the vertex format of RayTracingMultiGeometryInstanceConfig.vertexBuffer.
Read time 1 minuteLast updated 6 days ago
Definition
- Type: Property
- Namespace: UnityEngine.Rendering
- Assembly: UnityEngine.CoreModule
public VertexAttributeDescriptor[] vertexAttributes { readonly get; set; }
Remarks
The Position attribute is mandatory for building an acceleration structure. You can access other vertex attributes in shader code using helper functions from UnityRayTracingMeshUtils.cginc header.
// Defining a vertex format that contains the position, the normal and texture coordinates attributes.VertexAttributeDescriptor[] vertexDescs = new VertexAttributeDescriptor[3];vertexDescs[0] = new VertexAttributeDescriptor(VertexAttribute.Position, VertexAttributeFormat.Float32, 3, 0);vertexDescs[1] = new VertexAttributeDescriptor(VertexAttribute.Normal, VertexAttributeFormat.Float32, 3, 0);vertexDescs[2] = new VertexAttributeDescriptor(VertexAttribute.TexCoord0, VertexAttributeFormat.Float32, 2, 0);
Unity supports the following Position attribute data formats for building acceleration structures:
The Position attribute must be part of vertex buffer stream 0.
Additional Resources: VertexAttributeDescriptor.