Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.blender.org/blender.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSergey Sharybin <sergey.vfx@gmail.com>2018-09-06 16:39:27 +0300
committerSergey Sharybin <sergey.vfx@gmail.com>2018-09-07 12:54:20 +0300
commitdfeff72af71c1f3a62805253e439cf8ffd3815e6 (patch)
treed9fdf5e9bd92bcc8e9682b3a4b5cb237723e2434 /source/blender/blenkernel/BKE_subdiv.h
parentcbab3e1e908792a2c9aa1266805ba59e8368727a (diff)
Subdiv: Add ptex offsets to a subdiv structure
This is something what we need to know quite often from various places. Added it as a cached value in Subdiv itself, so it can be queried easily from any area. Shouldn't be a problem from memory usage point of view, it's 4MB per 1M faces coarse mesh. This is very low percentage of mesh itself, and even lower percentage of highres subdivided mesh.
Diffstat (limited to 'source/blender/blenkernel/BKE_subdiv.h')
-rw-r--r--source/blender/blenkernel/BKE_subdiv.h12
1 files changed, 12 insertions, 0 deletions
diff --git a/source/blender/blenkernel/BKE_subdiv.h b/source/blender/blenkernel/BKE_subdiv.h
index 28b2942a70f..4ebb5d1ac66 100644
--- a/source/blender/blenkernel/BKE_subdiv.h
+++ b/source/blender/blenkernel/BKE_subdiv.h
@@ -144,6 +144,14 @@ typedef struct Subdiv {
struct SubdivDisplacement *displacement_evaluator;
/* Statistics for debugging. */
SubdivStats stats;
+
+ /* Cached values, are not supposed to be accessed directly. */
+ struct {
+ /* Indexed by base face index, element indicates total number of ptex
+ *faces created for preceding base faces.
+ */
+ int *face_ptex_offset;
+ } cache_;
} Subdiv;
/* ================================ HELPERS ================================= */
@@ -180,4 +188,8 @@ void BKE_subdiv_displacement_attach_from_multires(
void BKE_subdiv_displacement_detach(Subdiv *subdiv);
+/* ============================ TOPOLOGY HELPERS ============================ */
+
+int *BKE_subdiv_face_ptex_offset_get(Subdiv *subdiv);
+
#endif /* __BKE_SUBDIV_H__ */