|
Blender V5.0
|
#include <gpu_patch_table.hh>
Inherits OpenSubdiv::Osd::NonCopyable< GPUPatchTable >.
Public Member Functions | |
| ~GPUPatchTable () | |
| PatchArrayVector const & | GetPatchArrays () const |
| Returns the patch arrays for vertex index buffer data. | |
| gpu::StorageBuf * | GetPatchIndexBuffer () const |
| Returns the GL index buffer containing the patch control vertices. | |
| gpu::StorageBuf * | GetPatchParamBuffer () const |
| Returns the GL index buffer containing the patch parameter. | |
| PatchArrayVector const & | GetVaryingPatchArrays () const |
| Returns the patch arrays for varying index buffer data. | |
| gpu::StorageBuf * | GetVaryingPatchIndexBuffer () const |
| Returns the GL index buffer containing the varying control vertices. | |
| int | GetNumFVarChannels () const |
| Returns the number of face-varying channel buffers. | |
| PatchArrayVector const & | GetFVarPatchArrays (int fvarChannel=0) const |
| Returns the patch arrays for face-varying index buffer data. | |
| gpu::StorageBuf * | GetFVarPatchIndexBuffer (int fvarChannel=0) const |
| Returns the GL index buffer containing face-varying control vertices. | |
| gpu::StorageBuf * | GetFVarPatchParamBuffer (int fvarChannel=0) const |
| Returns the GL index buffer containing face-varying patch params. | |
Static Public Member Functions | |
| static GPUPatchTable * | Create (PatchTable const *farPatchTable, void *deviceContext=NULL) |
Protected Member Functions | |
| GPUPatchTable () | |
| bool | allocate (PatchTable const *farPatchTable) |
Protected Attributes | |
| PatchArrayVector | _patchArrays |
| gpu::StorageBuf * | _patchIndexBuffer = nullptr |
| gpu::StorageBuf * | _patchParamBuffer = nullptr |
| PatchArrayVector | _varyingPatchArrays |
| gpu::StorageBuf * | _varyingIndexBuffer = nullptr |
| std::vector< PatchArrayVector > | _fvarPatchArrays |
| std::vector< gpu::StorageBuf * > | _fvarIndexBuffers |
| std::vector< gpu::StorageBuf * > | _fvarParamBuffers |
Definition at line 21 of file gpu_patch_table.hh.
| blender::opensubdiv::GPUPatchTable::~GPUPatchTable | ( | ) |
Definition at line 41 of file gpu_patch_table.cc.
References _fvarIndexBuffers, _fvarParamBuffers, _patchIndexBuffer, _patchParamBuffer, _varyingIndexBuffer, blender::opensubdiv::discard_buffer(), and blender::opensubdiv::discard_list().
|
inlineprotected |
Definition at line 82 of file gpu_patch_table.hh.
Referenced by Create().
|
protected |
Definition at line 50 of file gpu_patch_table.cc.
References _fvarIndexBuffers, _fvarParamBuffers, _fvarPatchArrays, _patchArrays, _patchIndexBuffer, _patchParamBuffer, _varyingIndexBuffer, _varyingPatchArrays, GPU_storagebuf_create_ex(), and GPU_USAGE_STATIC.
Referenced by Create().
|
static |
Definition at line 14 of file gpu_patch_table.cc.
References allocate(), and GPUPatchTable().
|
inline |
Returns the patch arrays for face-varying index buffer data.
Definition at line 64 of file gpu_patch_table.hh.
References _fvarPatchArrays.
Referenced by blender::opensubdiv::GpuEvalOutput::create_face_varying_patch_array_buf().
|
inline |
Returns the GL index buffer containing face-varying control vertices.
Definition at line 70 of file gpu_patch_table.hh.
References _fvarIndexBuffers.
Referenced by blender::opensubdiv::GpuEvalOutput::get_face_varying_patch_index_buf().
|
inline |
Returns the GL index buffer containing face-varying patch params.
Definition at line 76 of file gpu_patch_table.hh.
References _fvarParamBuffers.
Referenced by blender::opensubdiv::GpuEvalOutput::get_face_varying_patch_param_buf().
|
inline |
Returns the number of face-varying channel buffers.
Definition at line 58 of file gpu_patch_table.hh.
References _fvarPatchArrays.
|
inline |
Returns the patch arrays for vertex index buffer data.
Definition at line 28 of file gpu_patch_table.hh.
References _patchArrays.
Referenced by blender::opensubdiv::GpuEvalOutput::create_patch_arrays_buf(), and blender::opensubdiv::is_adaptive().
|
inline |
Returns the GL index buffer containing the patch control vertices.
Definition at line 34 of file gpu_patch_table.hh.
References _patchIndexBuffer.
Referenced by blender::opensubdiv::GpuEvalOutput::get_patch_index_buf().
|
inline |
Returns the GL index buffer containing the patch parameter.
Definition at line 40 of file gpu_patch_table.hh.
References _patchParamBuffer.
Referenced by blender::opensubdiv::GpuEvalOutput::get_patch_param_buf().
|
inline |
Returns the patch arrays for varying index buffer data.
Definition at line 46 of file gpu_patch_table.hh.
References _varyingPatchArrays.
|
inline |
Returns the GL index buffer containing the varying control vertices.
Definition at line 52 of file gpu_patch_table.hh.
References _varyingIndexBuffer.
|
protected |
Definition at line 96 of file gpu_patch_table.hh.
Referenced by allocate(), GetFVarPatchIndexBuffer(), and ~GPUPatchTable().
|
protected |
Definition at line 97 of file gpu_patch_table.hh.
Referenced by allocate(), GetFVarPatchParamBuffer(), and ~GPUPatchTable().
|
protected |
Definition at line 95 of file gpu_patch_table.hh.
Referenced by allocate(), GetFVarPatchArrays(), and GetNumFVarChannels().
|
protected |
Definition at line 87 of file gpu_patch_table.hh.
Referenced by allocate(), and GetPatchArrays().
|
protected |
Definition at line 89 of file gpu_patch_table.hh.
Referenced by allocate(), GetPatchIndexBuffer(), and ~GPUPatchTable().
|
protected |
Definition at line 90 of file gpu_patch_table.hh.
Referenced by allocate(), GetPatchParamBuffer(), and ~GPUPatchTable().
|
protected |
Definition at line 93 of file gpu_patch_table.hh.
Referenced by allocate(), GetVaryingPatchIndexBuffer(), and ~GPUPatchTable().
|
protected |
Definition at line 92 of file gpu_patch_table.hh.
Referenced by allocate(), and GetVaryingPatchArrays().