|
Blender V5.0
|
#include <BKE_subdiv.hh>
Public Attributes | |
| Settings | settings |
| blender::opensubdiv::TopologyRefinerImpl * | topology_refiner |
| OpenSubdiv_Evaluator * | evaluator |
| Displacement * | displacement_evaluator |
| SubdivStats | stats |
| struct { | |
| blender::Array< int > face_ptex_offset | |
| } | cache_ |
This structure contains everything needed to construct subdivided surface. It does not specify storage, memory layout or anything else. It is possible to create different storage's (like, grid based CPU side buffers, GPU subdivision mesh, CPU side fully qualified mesh) from the same Subdiv structure.
Definition at line 175 of file BKE_subdiv.hh.
| struct { ... } blender::bke::subdiv::Subdiv::cache_ |
Cached values, are not supposed to be accessed directly.
| Displacement* blender::bke::subdiv::Subdiv::displacement_evaluator |
Optional displacement evaluator.
Definition at line 190 of file BKE_subdiv.hh.
| OpenSubdiv_Evaluator* blender::bke::subdiv::Subdiv::evaluator |
CPU side evaluator.
Definition at line 188 of file BKE_subdiv.hh.
Referenced by blender::draw::draw_subdiv_build_fdots_buffers(), blender::draw::draw_subdiv_cache_need_face_data(), blender::draw::draw_subdiv_create_requested_buffers(), blender::draw::draw_subdiv_extract_pos(), blender::draw::draw_subdiv_extract_uvs(), and blender::draw::DRW_cache_free_old_subdiv().
| blender::Array<int> blender::bke::subdiv::Subdiv::face_ptex_offset |
Indexed by base face index, element indicates total number of ptex faces created for preceding base faces. This also stores the final ptex offset (the total number of PTex faces) at the end of the array so that algorithms can compute the number of ptex faces for a given face by computing the delta with the offset for the next face without using a separate data structure, e.g.:
const int num_face_ptex_faces = face_ptex_offset[i + 1] - face_ptex_offset[i];
In total this array has a size of num base faces + 1.
Definition at line 208 of file BKE_subdiv.hh.
| Settings blender::bke::subdiv::Subdiv::settings |
Settings this subdivision surface is created for.
It is read-only after assignment in BKE_subdiv_new_from_FOO().
Definition at line 181 of file BKE_subdiv.hh.
Referenced by blender::draw::DRW_subdivide_loose_geom(), multires_reshape_smooth_object_grids_with_details(), and blender::bke::subdiv::subdiv_mesh_vertex_of_loose_edge().
| SubdivStats blender::bke::subdiv::Subdiv::stats |
Statistics for debugging.
Definition at line 192 of file BKE_subdiv.hh.
| blender::opensubdiv::TopologyRefinerImpl* blender::bke::subdiv::Subdiv::topology_refiner |
Topology refiner includes all the glue logic to feed Blender side topology to OpenSubdiv. It can be shared by both evaluator and GL mesh drawer.
Definition at line 186 of file BKE_subdiv.hh.