|
Blender V4.3
|
#include <cfloat>#include <cmath>#include <cstdio>#include <cstdlib>#include <cstring>#include "atomic_ops.h"#include "MEM_guardedalloc.h"#include "DNA_mesh_types.h"#include "DNA_meshdata_types.h"#include "DNA_modifier_types.h"#include "DNA_object_types.h"#include "DNA_scene_types.h"#include "BLI_bitmap.h"#include "BLI_memarena.h"#include "BLI_ordered_edge.hh"#include "BLI_set.hh"#include "BLI_task.h"#include "BLI_threads.h"#include "BLI_utildefines.h"#include "BLI_vector.hh"#include "BKE_ccg.hh"#include "BKE_customdata.hh"#include "BKE_mesh_legacy_derived_mesh.hh"#include "BKE_mesh_mapping.hh"#include "BKE_multires.hh"#include "BKE_scene.hh"#include "BKE_subsurf.hh"#include "CCGSubSurf.h"Go to the source code of this file.
Classes | |
| struct | FaceVertWeightEntry |
| struct | WeightTable |
| struct | CopyFinalLoopArrayData |
Macros | |
| #define | SUB_ELEMS_FACE 50 |
Typedefs | |
| typedef float | FaceVertWeight[SUB_ELEMS_FACE][SUB_ELEMS_FACE] |
Enumerations | |
| enum | CCGFlags { CCG_USE_AGING = 1 , CCG_USE_ARENA = 2 , CCG_CALC_NORMALS = 4 , CCG_ALLOC_MASK = 8 , CCG_SIMPLE_SUBDIV = 16 } |
| #define SUB_ELEMS_FACE 50 |
Definition at line 443 of file subsurf_ccg.cc.
| typedef float FaceVertWeight[SUB_ELEMS_FACE][SUB_ELEMS_FACE] |
Definition at line 444 of file subsurf_ccg.cc.
| enum CCGFlags |
| Enumerator | |
|---|---|
| CCG_USE_AGING | |
| CCG_USE_ARENA | |
| CCG_CALC_NORMALS | |
| CCG_ALLOC_MASK | |
| CCG_SIMPLE_SUBDIV | |
Definition at line 74 of file subsurf_ccg.cc.
|
static |
Definition at line 84 of file subsurf_ccg.cc.
References CCGAllocatorIFC::alloc, arena_alloc(), arena_free(), arena_realloc(), arena_release(), BLI_memarena_new(), CCG_ALLOC_MASK, CCG_CALC_NORMALS, CCG_SIMPLE_SUBDIV, CCG_USE_AGING, CCG_USE_ARENA, ccgSubSurf_free(), ccgSubSurf_getSimpleSubdiv(), ccgSubSurf_getUseAgeCounts(), ccgSubSurf_new(), ccgSubSurf_setAllocMask(), ccgSubSurf_setCalcVertexNormals(), ccgSubSurf_setSubdivisionLevels(), ccgSubSurf_setUseAgeCounts(), CCGMeshIFC::edgeUserSize, CCGMeshIFC::faceUserSize, float, CCGAllocatorIFC::free, MEM_SIZE_OPTIMAL, CCGMeshIFC::numLayers, CCGAllocatorIFC::realloc, CCGAllocatorIFC::release, CCGMeshIFC::simpleSubdiv, CCGMeshIFC::vertDataSize, and CCGMeshIFC::vertUserSize.
Referenced by set_subsurf_legacy_uv(), subsurf_calculate_limit_positions(), and subsurf_make_derived_from_derived().
|
static |
Definition at line 50 of file subsurf_ccg.cc.
References BLI_memarena_alloc().
Referenced by _getSubSurf().
|
static |
Definition at line 64 of file subsurf_ccg.cc.
Referenced by _getSubSurf().
|
static |
Definition at line 55 of file subsurf_ccg.cc.
References BLI_memarena_alloc(), and ptr.
Referenced by _getSubSurf().
|
static |
Definition at line 69 of file subsurf_ccg.cc.
References BLI_memarena_free().
Referenced by _getSubSurf().
|
static |
Definition at line 866 of file subsurf_ccg.cc.
References atomic_cas_ptr(), BLI_mutex_lock(), BLI_mutex_unlock(), BLI_parallel_range_settings_defaults(), BLI_task_parallel_range(), CopyFinalLoopArrayData::ccgdm, ccgSubSurf_getEdgeSize(), ccgSubSurf_getGridSize(), ccgSubSurf_getNumFaces(), copyFinalLoopArray_task_cb(), data, CCGDerivedMesh::dm, CCGDerivedMesh::ehash, DerivedMesh::getEdgeArray, DerivedMesh::getGridOffset, CCGDerivedMesh::loops_cache_lock, DerivedMesh::numEdgeData, and CCGDerivedMesh::ss.
Referenced by set_default_ccgdm_callbacks().
|
static |
Definition at line 845 of file subsurf_ccg.cc.
References BLI_parallel_range_settings_defaults(), BLI_task_parallel_range(), CopyFinalLoopArrayData::ccgdm, ccgSubSurf_getEdgeSize(), ccgSubSurf_getGridSize(), ccgSubSurf_getNumFaces(), copyFinalLoopArray_task_cb(), data, DerivedMesh::getGridOffset, and CCGDerivedMesh::ss.
Referenced by set_default_ccgdm_callbacks().
|
static |
Definition at line 747 of file subsurf_ccg.cc.
References ccgDM_to_MEdge(), ccgSubSurf_getEdgeSize(), ccgSubSurf_getFaceNumVerts(), ccgSubSurf_getGridSize(), ccgSubSurf_getNumEdges(), ccgSubSurf_getNumFaces(), e, CCGDerivedMesh::edge, CCGDerivedMesh::edgeMap, CCGDerivedMesh::face, CCGDerivedMesh::faceMap, getEdgeIndex(), getFaceIndex(), CCGDerivedMesh::ss, x, and y.
Referenced by set_default_ccgdm_callbacks().
|
static |
Definition at line 905 of file subsurf_ccg.cc.
References ccgSubSurf_getFaceNumVerts(), ccgSubSurf_getGridSize(), ccgSubSurf_getNumFaces(), CCGDerivedMesh::face, CCGDerivedMesh::faceMap, CCGDerivedMesh::ss, x, and y.
Referenced by set_default_ccgdm_callbacks().
|
static |
Definition at line 678 of file subsurf_ccg.cc.
References CCG_key_top_level(), ccgDM_to_MVert(), ccgSubSurf_getEdgeData(), ccgSubSurf_getEdgeSize(), ccgSubSurf_getFaceCenterData(), ccgSubSurf_getFaceGridData(), ccgSubSurf_getFaceGridEdgeData(), ccgSubSurf_getFaceNumVerts(), ccgSubSurf_getGridSize(), ccgSubSurf_getNumEdges(), ccgSubSurf_getNumFaces(), ccgSubSurf_getNumVerts(), ccgSubSurf_getVertData(), e, CCGDerivedMesh::edge, CCGDerivedMesh::edgeMap, CCGDerivedMesh::face, CCGDerivedMesh::faceMap, CCGDerivedMesh::ss, v, CCGDerivedMesh::vert, CCGDerivedMesh::vertMap, x, and y.
Referenced by set_default_ccgdm_callbacks().
|
static |
Definition at line 1135 of file subsurf_ccg.cc.
References ccgDM_getNumGrids(), ccgSubSurf_getFaceGridDataArray(), ccgSubSurf_getFaceNumVerts(), ccgSubSurf_getNumFaces(), CCGDerivedMesh::face, CCGDerivedMesh::faceMap, CCGDerivedMesh::gridData, CCGDerivedMesh::gridFaces, CCGDerivedMesh::gridHidden, CCGDerivedMesh::gridOffset, MEM_callocN, MEM_mallocN, CCGDerivedMesh::numGrid, and CCGDerivedMesh::ss.
Referenced by ccgDM_getGridData(), and ccgDM_getGridOffset().
|
static |
Definition at line 1033 of file subsurf_ccg.cc.
References ccgDM_getEdgeMapIndex(), ccgSubSurf_getEdgeSize(), ccgSubSurf_getNumEdges(), CD_ORIGINDEX, CD_SET_DEFAULT, CustomData_add_layer(), DM_get_edge_data_layer(), e, CCGDerivedMesh::edge, DerivedMesh::edgeData, CCGDerivedMesh::edgeMap, DerivedMesh::numEdgeData, ORIGINDEX_NONE, and CCGDerivedMesh::ss.
Referenced by set_default_ccgdm_callbacks().
|
static |
Definition at line 1076 of file subsurf_ccg.cc.
References ccgDM_getFaceMapIndex(), ccgSubSurf_getFaceNumVerts(), ccgSubSurf_getGridSize(), ccgSubSurf_getNumFaces(), CD_ORIGINDEX, CD_SET_DEFAULT, CustomData_add_layer(), DM_get_poly_data_layer(), CCGDerivedMesh::face, CCGDerivedMesh::faceMap, DerivedMesh::numPolyData, DerivedMesh::polyData, and CCGDerivedMesh::ss.
Referenced by set_default_ccgdm_callbacks().
|
static |
Definition at line 991 of file subsurf_ccg.cc.
References BLI_rw_mutex_lock(), BLI_rw_mutex_unlock(), ccgDM_getVertMapIndex(), ccgSubSurf_getNumVerts(), CD_ORIGINDEX, CD_SET_DEFAULT, CustomData_add_layer(), DM_get_vert_data_layer(), DerivedMesh::numVertData, CCGDerivedMesh::origindex_cache_rwlock, ORIGINDEX_NONE, CCGDerivedMesh::ss, THREAD_LOCK_READ, THREAD_LOCK_WRITE, v, CCGDerivedMesh::vert, DerivedMesh::vertData, and CCGDerivedMesh::vertMap.
Referenced by set_default_ccgdm_callbacks().
|
static |
Definition at line 633 of file subsurf_ccg.cc.
References ccgSubSurf_getEdgeUserData(), and e.
Referenced by ccgDM_get_edge_data_layer(), and set_ccgdm_all_geometry().
|
static |
Definition at line 638 of file subsurf_ccg.cc.
References ccgSubSurf_getFaceUserData().
Referenced by ccgDM_get_poly_data_layer().
|
static |
Definition at line 1187 of file subsurf_ccg.cc.
References ccgdm_create_grids(), and CCGDerivedMesh::gridData.
Referenced by set_default_ccgdm_callbacks().
|
static |
Definition at line 1203 of file subsurf_ccg.cc.
References CCG_key_top_level(), and CCGDerivedMesh::ss.
Referenced by set_default_ccgdm_callbacks().
|
static |
Definition at line 1195 of file subsurf_ccg.cc.
References ccgdm_create_grids(), and CCGDerivedMesh::gridOffset.
Referenced by set_default_ccgdm_callbacks().
|
static |
Definition at line 1129 of file subsurf_ccg.cc.
References ccgSubSurf_getGridSize(), and CCGDerivedMesh::ss.
Referenced by set_default_ccgdm_callbacks().
|
static |
Definition at line 650 of file subsurf_ccg.cc.
References ccgSubSurf_getNumFinalEdges(), and CCGDerivedMesh::ss.
Referenced by set_default_ccgdm_callbacks().
|
static |
Definition at line 1113 of file subsurf_ccg.cc.
References ccgSubSurf_getFaceNumVerts(), ccgSubSurf_getNumFaces(), CCGDerivedMesh::face, CCGDerivedMesh::faceMap, and CCGDerivedMesh::ss.
Referenced by ccgdm_create_grids(), and set_default_ccgdm_callbacks().
|
static |
Definition at line 664 of file subsurf_ccg.cc.
References ccgSubSurf_getNumFinalFaces(), and CCGDerivedMesh::ss.
Referenced by set_default_ccgdm_callbacks().
|
static |
Definition at line 657 of file subsurf_ccg.cc.
References ccgSubSurf_getNumFinalFaces(), and CCGDerivedMesh::ss.
Referenced by set_default_ccgdm_callbacks().
|
static |
Definition at line 643 of file subsurf_ccg.cc.
References ccgSubSurf_getNumFinalVerts(), and CCGDerivedMesh::ss.
Referenced by set_default_ccgdm_callbacks().
|
static |
Definition at line 628 of file subsurf_ccg.cc.
References ccgSubSurf_getVertUserData(), and v.
Referenced by ccgDM_get_vert_data_layer(), and set_ccgdm_all_geometry().
|
static |
Definition at line 933 of file subsurf_ccg.cc.
References BLI_findindex(), BLI_mutex_end(), BLI_rw_mutex_end(), ccgSubSurf_free(), DM_release(), CCGDerivedMesh::edgeMap, CCGDerivedMesh::ehash, CCGDerivedMesh::faceMap, CCGDerivedMesh::freeSS, CCGDerivedMesh::gridData, CCGDerivedMesh::gridFaces, CCGDerivedMesh::gridHidden, CCGDerivedMesh::gridOffset, CCGDerivedMesh::local_mmd, CCGDerivedMesh::loops_cache_lock, MEM_freeN(), CCGDerivedMesh::mmd, CCGDerivedMesh::modified_flags, Object::modifiers, CCGDerivedMesh::multires, MULTIRES_COORDS_MODIFIED, MULTIRES_HIDDEN_MODIFIED, multires_modifier_update_hidden(), multires_modifier_update_mdisps(), CCGDerivedMesh::numGrid, CCGDerivedMesh::ob, CCGDerivedMesh::origindex_cache_rwlock, CCGDerivedMesh::ss, and CCGDerivedMesh::vertMap.
Referenced by set_default_ccgdm_callbacks().
| BLI_INLINE void ccgDM_to_MEdge | ( | blender::int2 * | edge, |
| const int | v1, | ||
| const int | v2 ) |
Definition at line 741 of file subsurf_ccg.cc.
References v2.
Referenced by ccgDM_copyFinalEdgeArray().
| BLI_INLINE void ccgDM_to_MVert | ( | float | mv[3], |
| const CCGKey * | key, | ||
| CCGElem * | elem ) |
Definition at line 673 of file subsurf_ccg.cc.
References CCG_elem_co(), and copy_v3_v3().
Referenced by ccgDM_copyFinalVertArray().
|
static |
Definition at line 801 of file subsurf_ccg.cc.
References ccgSubSurf_getFaceNumVerts(), CCGDerivedMesh::ehash, CCGDerivedMesh::face, CCGDerivedMesh::faceMap, getFaceIndex(), blender::VectorSet< Key, ProbingStrategy, Hash, IsEqual, Slot, Allocator >::index_of(), CCGDerivedMesh::ss, and v2.
Referenced by ccgDM_copyFinalCornerEdgeArray(), and ccgDM_copyFinalCornerVertArray().
|
static |
Definition at line 1234 of file subsurf_ccg.cc.
References ccgEdgeIterator_getCurrent(), ccgEdgeIterator_isStopped(), ccgEdgeIterator_next(), ccgFaceIterator_getCurrent(), ccgFaceIterator_isStopped(), ccgFaceIterator_next(), ccgSubSurf_getEdgeEdgeHandle(), ccgSubSurf_getFaceFaceHandle(), ccgSubSurf_getNumEdges(), ccgSubSurf_getNumFaces(), ccgSubSurf_getNumVerts(), ccgSubSurf_getVertVertHandle(), ccgSubSurf_initEdgeIterator(), ccgSubSurf_initFaceIterator(), ccgSubSurf_initVertIterator(), ccgVertIterator_getCurrent(), ccgVertIterator_isStopped(), ccgVertIterator_next(), e, CCGDerivedMesh::edge, CCGDerivedMesh::edgeMap, CCGDerivedMesh::face, CCGDerivedMesh::faceMap, MEM_mallocN, POINTER_AS_INT, v, CCGDerivedMesh::vert, and CCGDerivedMesh::vertMap.
Referenced by getCCGDerivedMesh().
| ENUM_OPERATORS | ( | CCGFlags | , |
| CCG_SIMPLE_SUBDIV | ) |
|
static |
Definition at line 514 of file subsurf_ccg.cc.
References WeightTable::len, MEM_freeN(), FaceVertWeightEntry::valid, FaceVertWeightEntry::w, and WeightTable::weight_table.
Referenced by set_ccgdm_all_geometry().
|
static |
Definition at line 227 of file subsurf_ccg.cc.
References BKE_mesh_uv_vert_map_get_vert(), UvMapVert::face_index, UvMapVert::loop_of_face_index, POINTER_FROM_UINT, and v.
Referenced by ss_sync_from_uv().
|
static |
Definition at line 457 of file subsurf_ccg.cc.
References float, WeightTable::len, MEM_callocN, MEM_freeN(), FaceVertWeightEntry::valid, FaceVertWeightEntry::w, w(), WeightTable::weight_table, x, and y.
Referenced by set_ccgdm_all_geometry().
|
static |
Definition at line 1548 of file subsurf_ccg.cc.
References BLI_mutex_init(), BLI_rw_mutex_init(), ccgSubSurf_getNumFinalEdges(), ccgSubSurf_getNumFinalFaces(), ccgSubSurf_getNumFinalVerts(), create_ccgdm_maps(), CustomData_free_layer_named(), CCGDerivedMesh::dm, DM_from_template(), DM_TYPE_CCGDM, CCGDerivedMesh::drawInteriorEdges, DerivedMesh::edgeData, DerivedMesh::face_offsets, DerivedMesh::loopData, CCGDerivedMesh::loops_cache_lock, MEM_SAFE_FREE, DerivedMesh::numEdgeData, DerivedMesh::numLoopData, DerivedMesh::numPolyData, DerivedMesh::numTessFaceData, DerivedMesh::numVertData, CCGDerivedMesh::origindex_cache_rwlock, set_ccgdm_all_geometry(), set_default_ccgdm_callbacks(), CCGDerivedMesh::ss, CCGDerivedMesh::useSubsurfUv, and DerivedMesh::vertData.
Referenced by subsurf_make_derived_from_derived().
|
static |
Definition at line 164 of file subsurf_ccg.cc.
References ccgSubSurf_getEdgeUserData(), ccgSubSurf_getEdgeVert0(), ccgSubSurf_getEdgeVert1(), ccgSubSurf_getVertUserData(), and e.
Referenced by ccgDM_copyFinalEdgeArray().
|
static |
Definition at line 182 of file subsurf_ccg.cc.
References ccgSubSurf_getEdgeUserData(), ccgSubSurf_getEdgeVert0(), ccgSubSurf_getFaceEdge(), ccgSubSurf_getFaceNumVerts(), ccgSubSurf_getFaceUserData(), ccgSubSurf_getFaceVert(), ccgSubSurf_getVertUserData(), e, v, x, and y.
Referenced by ccgDM_copyFinalEdgeArray(), and copyFinalLoopArray_task_cb().
|
static |
Definition at line 1278 of file subsurf_ccg.cc.
References BLI_assert, ccgDM_getEdgeMapIndex(), ccgDM_getVertMapIndex(), ccgSubSurf_getEdgeEdgeHandle(), ccgSubSurf_getEdgeSize(), ccgSubSurf_getEdgeUserData(), ccgSubSurf_getEdgeVert0(), ccgSubSurf_getEdgeVert1(), ccgSubSurf_getFaceFaceHandle(), ccgSubSurf_getFaceNumVerts(), ccgSubSurf_getFaceUserData(), ccgSubSurf_getFaceVert(), ccgSubSurf_getGridSize(), ccgSubSurf_getNumEdges(), ccgSubSurf_getNumFaces(), ccgSubSurf_getNumFinalEdges(), ccgSubSurf_getNumFinalFaces(), ccgSubSurf_getNumFinalVerts(), ccgSubSurf_getNumVerts(), ccgSubSurf_getVertUserData(), ccgSubSurf_getVertVertHandle(), CD_ORIGINDEX, CD_PROP_FLOAT2, CustomData_copy_data(), CustomData_get_layer(), CustomData_interp(), CustomData_number_of_layers(), blender::Vector< T, InlineBufferCapacity, Allocator >::data(), CCGDerivedMesh::dm, DM_copy_vert_data(), DM_get_edge_data_layer(), DM_get_poly_data_layer(), DM_get_vert_data_layer(), DM_interp_vert_data(), e, CCGDerivedMesh::edge, DerivedMesh::edgeData, CCGDerivedMesh::edgeMap, CCGDerivedMesh::face, CCGDerivedMesh::faceMap, float, free_ss_weights(), get_ss_weights(), getNumEdges(), DerivedMesh::loopData, ORIGINDEX_NONE, POINTER_AS_INT, DerivedMesh::polyData, blender::Vector< T, InlineBufferCapacity, Allocator >::reinitialize(), set_subsurf_uv(), CCGDerivedMesh::ss, CCGDerivedMesh::startEdge, CCGDerivedMesh::startFace, CCGDerivedMesh::startVert, CustomData::totlayer, v, CCGDerivedMesh::vert, CCGDerivedMesh::vertMap, w(), x, and y.
Referenced by getCCGDerivedMesh().
|
static |
Definition at line 1209 of file subsurf_ccg.cc.
References ccgDM_copyFinalCornerEdgeArray(), ccgDM_copyFinalCornerVertArray(), ccgDM_copyFinalEdgeArray(), ccgDM_copyFinalPolyArray(), ccgDM_copyFinalVertArray(), ccgDM_get_edge_data_layer(), ccgDM_get_poly_data_layer(), ccgDM_get_vert_data_layer(), ccgDM_getGridData(), ccgDM_getGridKey(), ccgDM_getGridOffset(), ccgDM_getGridSize(), ccgDM_getNumEdges(), ccgDM_getNumGrids(), ccgDM_getNumLoops(), ccgDM_getNumPolys(), ccgDM_getNumVerts(), ccgDM_release(), DerivedMesh::copyCornerEdgeArray, DerivedMesh::copyCornerVertArray, DerivedMesh::copyEdgeArray, DerivedMesh::copyPolyArray, DerivedMesh::copyVertArray, CCGDerivedMesh::dm, DerivedMesh::getEdgeDataArray, DerivedMesh::getGridData, DerivedMesh::getGridKey, DerivedMesh::getGridOffset, DerivedMesh::getGridSize, DerivedMesh::getNumEdges, DerivedMesh::getNumGrids, DerivedMesh::getNumLoops, DerivedMesh::getNumPolys, DerivedMesh::getNumVerts, DerivedMesh::getPolyDataArray, DerivedMesh::getVertDataArray, and DerivedMesh::release.
Referenced by getCCGDerivedMesh().
|
static |
Definition at line 353 of file subsurf_ccg.cc.
References _getSubSurf(), b, CCG_USE_ARENA, ccgFaceIterator_getCurrent(), ccgFaceIterator_isStopped(), ccgFaceIterator_next(), ccgSubSurf_free(), ccgSubSurf_getFaceFaceHandle(), ccgSubSurf_getFaceGridDataArray(), ccgSubSurf_getFaceNumVerts(), ccgSubSurf_getGridSize(), ccgSubSurf_getNumFaces(), ccgSubSurf_getSubdivisionLevels(), ccgSubSurf_initFaceIterator(), CD_MTFACE, CD_PROP_FLOAT2, copy_v2_v2(), CustomData_get_layer_n(), CustomData_get_layer_n_for_write(), faceMap, float, DerivedMesh::loopData, MEM_freeN(), MEM_mallocN, POINTER_AS_INT, ss_sync_from_uv(), MTFace::uv, x, and y.
Referenced by set_subsurf_uv().
|
static |
Definition at line 437 of file subsurf_ccg.cc.
References set_subsurf_legacy_uv().
Referenced by set_ccgdm_all_geometry().
|
static |
Definition at line 529 of file subsurf_ccg.cc.
References ccgSubSurf_getEdgeUserData(), ccgSubSurf_getFaceUserData(), ccgSubSurf_getSubdivisionLevels(), ccgSubSurf_getVertUserData(), ccgSubSurf_initFullSync(), ccgSubSurf_processSync(), ccgSubSurf_syncEdge(), ccgSubSurf_syncFace(), ccgSubSurf_syncVert(), CD_ORIGINDEX, CD_PROP_FLOAT, CustomData_get_layer_named(), blender::Vector< T, InlineBufferCapacity, Allocator >::data(), e, eCCGError_InvalidValue, DerivedMesh::edgeData, faces, float, DerivedMesh::getCornerVertArray, DerivedMesh::getEdgeArray, DerivedMesh::getEdgeDataArray, DerivedMesh::getNumEdges, DerivedMesh::getNumPolys, DerivedMesh::getNumVerts, DerivedMesh::getPolyArray, DerivedMesh::getPolyDataArray, DerivedMesh::getVertArray, DerivedMesh::getVertDataArray, DerivedMesh::numPolyData, POINTER_FROM_INT, POINTER_FROM_UINT, blender::Vector< T, InlineBufferCapacity, Allocator >::reinitialize(), and v.
Referenced by ss_sync_from_derivedmesh().
|
static |
Definition at line 617 of file subsurf_ccg.cc.
References ss_sync_ccg_from_derivedmesh().
Referenced by subsurf_calculate_limit_positions(), and subsurf_make_derived_from_derived().
|
static |
Definition at line 250 of file subsurf_ccg.cc.
References blender::Set< Key, InlineBufferCapacity, ProbingStrategy, Hash, IsEqual, Slot, Allocator >::add(), BKE_mesh_uv_vert_map_create(), BKE_mesh_uv_vert_map_free(), BKE_mesh_uv_vert_map_get_vert(), ccgSubSurf_getEdgeCrease(), ccgSubSurf_getFace(), ccgSubSurf_getFaceEdge(), ccgSubSurf_initFullSync(), ccgSubSurf_processSync(), ccgSubSurf_syncEdge(), ccgSubSurf_syncFace(), ccgSubSurf_syncVert(), copy_v2_v2(), blender::Vector< T, InlineBufferCapacity, Allocator >::data(), e, faces, get_face_uv_map_vert(), DerivedMesh::getCornerVertArray, DerivedMesh::getNumPolys, DerivedMesh::getNumVerts, DerivedMesh::getPolyArray, next, POINTER_AS_UINT, POINTER_FROM_INT, blender::Vector< T, InlineBufferCapacity, Allocator >::reinitialize(), blender::Set< Key, InlineBufferCapacity, ProbingStrategy, Hash, IsEqual, Slot, Allocator >::reserve(), blender::IndexRange::size(), STD_UV_CONNECT_LIMIT, and v.
Referenced by set_subsurf_legacy_uv().
Definition at line 1719 of file subsurf_ccg.cc.
References _getSubSurf(), add_v3_v3(), add_v3_v3v3(), CCG_USE_ARENA, ccgSubSurf_free(), ccgSubSurf_getEdgeData(), ccgSubSurf_getFaceCenterData(), ccgSubSurf_getVertData(), ccgSubSurf_getVertEdge(), ccgSubSurf_getVertFace(), ccgSubSurf_getVertNumEdges(), ccgSubSurf_getVertNumFaces(), ccgSubSurf_getVertVertHandle(), ccgSubSurf_initVertIterator(), ccgVertIterator_getCurrent(), ccgVertIterator_isStopped(), ccgVertIterator_next(), CDDM_from_mesh(), e, mul_v3_fl(), N, POINTER_AS_INT, DerivedMesh::release, ss_sync_from_derivedmesh(), v, and zero_v3().
Referenced by add_verts_to_dgroups().
| DerivedMesh * subsurf_make_derived_from_derived | ( | DerivedMesh * | dm, |
| SubsurfModifierData * | smd, | ||
| const Scene * | scene, | ||
| float(*) | vertCos[3], | ||
| SubsurfFlags | flags ) |
Definition at line 1594 of file subsurf_ccg.cc.
References _getSubSurf(), CCG_ALLOC_MASK, CCG_CALC_NORMALS, CCG_SIMPLE_SUBDIV, CCG_USE_AGING, CCG_USE_ARENA, ccgSubSurf_free(), ccgSubSurf_setNumLayers(), SubsurfModifierData::emCache, eSubsurfModifierFlag_ControlEdges, eSubsurfModifierFlag_DebugIncr, eSubsurfModifierFlag_Incremental, SubsurfModifierData::flags, get_render_subsurf_level(), getCCGDerivedMesh(), SubsurfModifierData::levels, SubsurfModifierData::mCache, ME_SIMPLE_SUBSURF, SubsurfModifierData::renderLevels, result, ss_sync_from_derivedmesh(), SubsurfModifierData::subdivType, SUBSURF_ALLOC_PAINT_MASK, SUBSURF_FOR_EDIT_MODE, SUBSURF_IGNORE_SIMPLIFY, SUBSURF_IN_EDIT_MODE, SUBSURF_IS_FINAL_CALC, SUBSURF_USE_RENDER_PARAMS, SUBSURF_UV_SMOOTH_NONE, and SubsurfModifierData::uv_smooth.
Referenced by init_heights_data(), shrinkwrapModifier_deform(), and subsurf_dm_create_local().