Blender V4.3
blender::opensubdiv Namespace Reference

Classes

class  ConstPatchCoordWrapperBuffer
class  CpuEvalOutput
class  EvalOutputAPI
class  FaceVaryingVolatileEval
class  GLComputeEvaluator
class  GLStencilTableSSBO
 GL stencil table (Shader Storage buffer) More...
class  GpuEvalOutput
class  MeshTopology
class  PatchMap
 An quadtree-based map connecting coarse faces to their sub-patches. More...
class  RawDataWrapperBuffer
class  RawDataWrapperVertexBuffer
class  StackOrHeapArray
class  TopologyRefinerImpl
class  VolatileEvalOutput

Typedefs

typedef StackOrHeapArray< PatchCoord, 32 *32 > StackOrHeapPatchCoordArray

Functions

OpenSubdiv::Sdc::SchemeType getSchemeTypeFromCAPI (OpenSubdiv_SchemeType type)
OpenSubdiv::Sdc::Options::FVarLinearInterpolation getFVarLinearInterpolationFromCAPI (OpenSubdiv_FVarLinearInterpolation linear_interpolation)
OpenSubdiv_FVarLinearInterpolation getCAPIFVarLinearInterpolationFromOSD (OpenSubdiv::Sdc::Options::FVarLinearInterpolation linear_interpolation)
OpenSubdiv::Sdc::Options::VtxBoundaryInterpolation getVtxBoundaryInterpolationFromCAPI (OpenSubdiv_VtxBoundaryInterpolation boundary_interpolation)
void stringSplit (std::vector< std::string > *tokens, const std::string &str, const std::string &separators, bool skip_empty)
bool is_adaptive (const CpuPatchTable *patch_table)
bool is_adaptive (const GLPatchTable *patch_table)
static void buildPatchArraysBufferFromVector (const PatchArrayVector &patch_arrays, OpenSubdiv_Buffer *patch_arrays_buffer)
static void convertPatchCoordsToArray (const OpenSubdiv_PatchCoord *patch_coords, const int num_patch_coords, const PatchMap *patch_map, StackOrHeapPatchCoordArray *array)
template<class T>
GLuint createSSBO (std::vector< T > const &src)
static GLuint compileKernel (BufferDescriptor const &srcDesc, BufferDescriptor const &dstDesc, BufferDescriptor const &duDesc, BufferDescriptor const &dvDesc, BufferDescriptor const &duuDesc, BufferDescriptor const &duvDesc, BufferDescriptor const &dvvDesc, const char *kernelDefine, int workGroupSize)
static int getEffectiveNumEdges (const OpenSubdiv_Converter *converter)
static bool isEqualGeometryCounters (const MeshTopology &mesh_topology, const OpenSubdiv_Converter *converter)
static bool isEqualGeometryEdge (const MeshTopology &mesh_topology, const OpenSubdiv_Converter *converter)
static bool isEqualGeometryFace (const MeshTopology &mesh_topology, const OpenSubdiv_Converter *converter)
static bool isEqualGeometry (const MeshTopology &mesh_topology, const OpenSubdiv_Converter *converter)
static float getEffectiveVertexSharpness (const OpenSubdiv_Converter *converter, const int vertex_index)
static bool isEqualVertexTags (const MeshTopology &mesh_topology, const OpenSubdiv_Converter *converter)
static float getEffectiveEdgeSharpness (const OpenSubdiv_Converter *converter, const int edge_index)
static bool isEqualEdgeTags (const MeshTopology &mesh_topology, const OpenSubdiv_Converter *converter)
static bool isEqualTags (const MeshTopology &mesh_topology, const OpenSubdiv_Converter *converter)
 TEST (MeshTopology, TrivialVertexSharpness)
 TEST (MeshTopology, TrivialEdgeSharpness)
 TEST (MeshTopology, TrivialFaceTopology)
static OpenSubdiv::Sdc::Options getSDCOptions (OpenSubdiv_Converter *converter)
static TopologyRefinerFactoryType::Options getTopologyRefinerOptions (OpenSubdiv_Converter *converter)
static const OpenSubdiv::Far::TopologyRefiner * getOSDTopologyRefiner (const TopologyRefinerImpl *topology_refiner_impl)
static const OpenSubdiv::Far::TopologyLevel & getOSDTopologyBaseLevel (const TopologyRefinerImpl *topology_refiner_impl)
static bool checkSchemeTypeMatches (const TopologyRefinerImpl *topology_refiner_impl, const OpenSubdiv_Converter *converter)
static bool checkOptionsMatches (const TopologyRefinerImpl *topology_refiner_impl, const OpenSubdiv_Converter *converter)
static bool checkPreliminaryMatches (const TopologyRefinerImpl *topology_refiner_impl, const OpenSubdiv_Converter *converter)
static bool checkSingleUVLayerMatch (const OpenSubdiv::Far::TopologyLevel &base_level, const OpenSubdiv_Converter *converter, const int layer_index)
static bool checkUVLayersMatch (const TopologyRefinerImpl *topology_refiner_impl, const OpenSubdiv_Converter *converter)
static bool checkTopologyAttributesMatch (const TopologyRefinerImpl *topology_refiner_impl, const OpenSubdiv_Converter *converter)

Typedef Documentation

◆ StackOrHeapPatchCoordArray

Definition at line 124 of file evaluator_impl.cc.

Function Documentation

◆ buildPatchArraysBufferFromVector()

void blender::opensubdiv::buildPatchArraysBufferFromVector ( const PatchArrayVector & patch_arrays,
OpenSubdiv_Buffer * patch_arrays_buffer )
static

◆ checkOptionsMatches()

bool blender::opensubdiv::checkOptionsMatches ( const TopologyRefinerImpl * topology_refiner_impl,
const OpenSubdiv_Converter * converter )
static

◆ checkPreliminaryMatches()

bool blender::opensubdiv::checkPreliminaryMatches ( const TopologyRefinerImpl * topology_refiner_impl,
const OpenSubdiv_Converter * converter )
static

◆ checkSchemeTypeMatches()

bool blender::opensubdiv::checkSchemeTypeMatches ( const TopologyRefinerImpl * topology_refiner_impl,
const OpenSubdiv_Converter * converter )
static

◆ checkSingleUVLayerMatch()

bool blender::opensubdiv::checkSingleUVLayerMatch ( const OpenSubdiv::Far::TopologyLevel & base_level,
const OpenSubdiv_Converter * converter,
const int layer_index )
static

◆ checkTopologyAttributesMatch()

bool blender::opensubdiv::checkTopologyAttributesMatch ( const TopologyRefinerImpl * topology_refiner_impl,
const OpenSubdiv_Converter * converter )
static

◆ checkUVLayersMatch()

bool blender::opensubdiv::checkUVLayersMatch ( const TopologyRefinerImpl * topology_refiner_impl,
const OpenSubdiv_Converter * converter )
static

◆ compileKernel()

GLuint blender::opensubdiv::compileKernel ( BufferDescriptor const & srcDesc,
BufferDescriptor const & dstDesc,
BufferDescriptor const & duDesc,
BufferDescriptor const & dvDesc,
BufferDescriptor const & duuDesc,
BufferDescriptor const & duvDesc,
BufferDescriptor const & dvvDesc,
const char * kernelDefine,
int workGroupSize )
static

Definition at line 156 of file gl_compute_evaluator.cc.

References datatoc_glsl_compute_kernel_glsl, and NULL.

◆ convertPatchCoordsToArray()

void blender::opensubdiv::convertPatchCoordsToArray ( const OpenSubdiv_PatchCoord * patch_coords,
const int num_patch_coords,
const PatchMap * patch_map,
StackOrHeapPatchCoordArray * array )
static

◆ createSSBO()

template<class T>
GLuint blender::opensubdiv::createSSBO ( std::vector< T > const & src)

Definition at line 44 of file gl_compute_evaluator.cc.

References T.

◆ getCAPIFVarLinearInterpolationFromOSD()

OpenSubdiv_FVarLinearInterpolation blender::opensubdiv::getCAPIFVarLinearInterpolationFromOSD ( OpenSubdiv::Sdc::Options::FVarLinearInterpolation linear_interpolation)

◆ getEffectiveEdgeSharpness()

float blender::opensubdiv::getEffectiveEdgeSharpness ( const OpenSubdiv_Converter * converter,
const int edge_index )
static

Definition at line 155 of file mesh_topology_compare.cc.

References OpenSubdiv_Converter::getEdgeSharpness.

Referenced by isEqualEdgeTags().

◆ getEffectiveNumEdges()

int blender::opensubdiv::getEffectiveNumEdges ( const OpenSubdiv_Converter * converter)
static

◆ getEffectiveVertexSharpness()

float blender::opensubdiv::getEffectiveVertexSharpness ( const OpenSubdiv_Converter * converter,
const int vertex_index )
static

◆ getFVarLinearInterpolationFromCAPI()

◆ getOSDTopologyBaseLevel()

const OpenSubdiv::Far::TopologyLevel & blender::opensubdiv::getOSDTopologyBaseLevel ( const TopologyRefinerImpl * topology_refiner_impl)
static

Definition at line 23 of file topology_refiner_impl_compare.cc.

References getOSDTopologyRefiner().

Referenced by checkUVLayersMatch().

◆ getOSDTopologyRefiner()

const OpenSubdiv::Far::TopologyRefiner * blender::opensubdiv::getOSDTopologyRefiner ( const TopologyRefinerImpl * topology_refiner_impl)
static

◆ getSchemeTypeFromCAPI()

OpenSubdiv::Sdc::SchemeType blender::opensubdiv::getSchemeTypeFromCAPI ( OpenSubdiv_SchemeType type)

◆ getSDCOptions()

◆ getTopologyRefinerOptions()

TopologyRefinerFactoryType::Options blender::opensubdiv::getTopologyRefinerOptions ( OpenSubdiv_Converter * converter)
static

◆ getVtxBoundaryInterpolationFromCAPI()

OpenSubdiv::Sdc::Options::VtxBoundaryInterpolation blender::opensubdiv::getVtxBoundaryInterpolationFromCAPI ( OpenSubdiv_VtxBoundaryInterpolation boundary_interpolation)

◆ is_adaptive() [1/2]

bool blender::opensubdiv::is_adaptive ( const CpuPatchTable * patch_table)

Definition at line 10 of file eval_output.cc.

◆ is_adaptive() [2/2]

bool blender::opensubdiv::is_adaptive ( const GLPatchTable * patch_table)

Definition at line 15 of file eval_output.cc.

◆ isEqualEdgeTags()

◆ isEqualGeometry()

bool blender::opensubdiv::isEqualGeometry ( const MeshTopology & mesh_topology,
const OpenSubdiv_Converter * converter )
static

◆ isEqualGeometryCounters()

◆ isEqualGeometryEdge()

bool blender::opensubdiv::isEqualGeometryEdge ( const MeshTopology & mesh_topology,
const OpenSubdiv_Converter * converter )
static

◆ isEqualGeometryFace()

◆ isEqualTags()

bool blender::opensubdiv::isEqualTags ( const MeshTopology & mesh_topology,
const OpenSubdiv_Converter * converter )
static

◆ isEqualVertexTags()

bool blender::opensubdiv::isEqualVertexTags ( const MeshTopology & mesh_topology,
const OpenSubdiv_Converter * converter )
static

◆ stringSplit()

void blender::opensubdiv::stringSplit ( std::vector< std::string > * tokens,
const std::string & str,
const std::string & separators,
bool skip_empty )

Definition at line 9 of file intern/opensubdiv/internal/base/util.cc.

References str.

Referenced by openSubdiv_getVersionHex().

◆ TEST() [1/3]

◆ TEST() [2/3]

◆ TEST() [3/3]