OpenSubdiv.OPENSUBDIV_VERSION.Osd.Entry
是一个用于存储顶点和稀疏顶点数据的类。
int numVertices
:存储顶点数量。int numValues
:存储稀疏顶点数量。int *sparselyValidValuesIdx
:存储稀疏顶点的有效索引列表。int *sparselyInvalidValueIdx
:存储稀疏顶点的无效索引列表。float *vertexBuffer
:存储顶点数据。float *valueBuffer
:存储稀疏顶点数据。void SetNumVertices(int numVerts)
:设置顶点数量。void SetNumValues(int numValues)
:设置稀疏顶点数量。int GetNumVertices() const
:获取顶点数量。int GetNumValues() const
:获取稀疏顶点数量。float* GetVertexBuffer() const
:获取顶点数据的指针。float* GetValueBuffer() const
:获取稀疏顶点数据的指针。int* GetSparselyValidValueIndices() const
:获取有效的稀疏顶点索引列表的指针。int* GetSparselyInvalidValueIndices() const
:获取无效的稀疏顶点索引列表的指针。#include <opensubdiv/osd/vertexDescriptor.h>
OpenSubdiv::Osd::Entry entry;
entry.SetNumVertices(3);
entry.SetNumValues(1);
float *vbuffer = entry.GetVertexBuffer();
vbuffer[0] = 0;
vbuffer[1] = 1;
vbuffer[2] = 2;
float *valBuffer = entry.GetValueBuffer();
valBuffer[0] = 1.0;
int *validValIndices = entry.GetSparselyValidValueIndices();
validValIndices[0] = 1;
int *invalidValIndices = entry.GetSparselyInvalidValueIndices();
invalidValIndices[0] = 2;
本文档参考 OpenSubdiv 官方文档编写,若有更改或错误之处敬请谅解。