Mesh.MeshData.GetVertexAttributeOffset
Declaration
public int GetVertexAttributeOffset(Rendering.VertexAttribute attr);Параметры
| Параметр | Описание |
|---|---|
| АТР | Атрибут данных вершины для проверки. |
Возвращаемое значение
инт Байтовый смещение в потоке атрибута data, или -1, если он не присутствует.
Описание
Получает смещение в потоке вершинного буфера заданного атрибута вершинных данных на этом MeshData.
Этот метод возвращает байтовое смещение для определенного атрибута вершины (например, положение, нормаль или цвет) относительно начала данных отдельной вершины в потоке вершинного буфера, содержащем этот атрибут.
Unity позволяет гибкие расположения вершинных данных, где атрибуты могут быть переплетены в одном потоке (обычно поток 0) или разделены между несколькими потоками с помощью SetVertexBufferParams. Этот метод автоматически идентифицирует поток, в котором находится указанный attr, и рассчитывает его байтовое смещение от начала элемента вершины в этом конкретном потоке.
Знание этого смещения полезно, когда вам нужно непосредственно получить доступ или интерпретировать необработанные данные вершинного буфера, например, при работе с MeshData API или GraphicsBuffer, так как оно позволяет вам точно определить начало данных атрибута в правильном буфере.
Если вам нужно знать конкретный индекс потока, содержащего атрибут, используйте GetVertexAttributeStream. Чтобы получить общий размер (стрид) одной вершины в потоке атрибута, используйте GetVertexBufferStride, передавая индекс потока, полученный из GetVertexAttributeStream.
Дополнительные ресурсы: GetVertexAttributeStream, vertexBufferCount, GetVertexBufferStride, Mesh.GetVertexAttributeOffset.