[Bf-blender-cvs] [4fc7e1a8800] master: Cleanup: Correct comments

Hans Goudey noreply at git.blender.org
Tue Jun 7 11:56:11 CEST 2022


Commit: 4fc7e1a8800473eb67c5234ab9ec4f20713fe7c3
Author: Hans Goudey
Date:   Tue Jun 7 11:55:52 2022 +0200
Branches: master
https://developer.blender.org/rB4fc7e1a8800473eb67c5234ab9ec4f20713fe7c3

Cleanup: Correct comments

===================================================================

M	source/blender/draw/intern/draw_cache_impl_curves.cc
M	source/blender/draw/intern/draw_curves_private.h

===================================================================

diff --git a/source/blender/draw/intern/draw_cache_impl_curves.cc b/source/blender/draw/intern/draw_cache_impl_curves.cc
index 22b843650ca..2c07b651c7c 100644
--- a/source/blender/draw/intern/draw_cache_impl_curves.cc
+++ b/source/blender/draw/intern/draw_cache_impl_curves.cc
@@ -52,11 +52,14 @@ struct CurvesBatchCache {
 
   GPUBatch *edit_points;
 
-  /* To determine if cache is invalid. */
+  /* Whether the cache is invalid. */
   bool is_dirty;
 
-  /** Needed when updating material data (e.g. attributes) as the same curves might be used for
-   * multiple objects with different materials. */
+  /**
+   * The draw cache extraction is currently not multi-threaded for multiple objects, but if it was,
+   * some locking would be necessary because multiple objects can use the same curves data with
+   * different materials, etc. This is a placeholder to make multi-threading easier in the future.
+   */
   ThreadMutex render_mutex;
 };
 
diff --git a/source/blender/draw/intern/draw_curves_private.h b/source/blender/draw/intern/draw_curves_private.h
index ed4dd50dfbe..26ecc4d9d12 100644
--- a/source/blender/draw/intern/draw_curves_private.h
+++ b/source/blender/draw/intern/draw_curves_private.h
@@ -35,22 +35,26 @@ typedef struct CurvesEvalFinalCache {
   GPUVertBuf *proc_buf;
   GPUTexture *proc_tex;
 
-  /* Just contains a huge index buffer used to draw the final curves. */
+  /**Just contains a huge index buffer used to draw the final curves. */
   GPUBatch *proc_hairs[MAX_THICKRES];
 
-  /* Points per curve, at least 2. */
+  /** Points per curve, at least 2. */
   int strands_res;
 
-  /* Attributes currently being or about to be drawn. */
+  /** Attributes currently being drawn or about to be drawn. */
   DRW_Attributes attr_used;
 
-  /* Attributes which were used at some point. This is used for garbage collection, to remove
-   * attributes which are not used in shaders anymore due to user edits. */
+  /**
+   * Attributes that were used at some point. This is used for garbage collection, to remove
+   * attributes that are not used in shaders anymore due to user edits.
+   */
   DRW_Attributes attr_used_over_time;
 
-  /* Last time, in seconds, the `attr_used` and `attr_used_over_time` were exactly the same.
+  /**
+   * The last time in seconds that the `attr_used` and `attr_used_over_time` were exactly the same.
    * If the delta between this time and the current scene time is greater than the timeout set in
-   * user preferences (`U.vbotimeout`) then garbage collection is performed. */
+   * user preferences (`U.vbotimeout`) then garbage collection is performed.
+   */
   int last_attr_matching_time;
 
   /* Output of the subdivision stage: vertex buffers sized to subdiv level. This is only attributes
@@ -61,7 +65,7 @@ typedef struct CurvesEvalFinalCache {
 
 /* Curves procedural display: Evaluation is done on the GPU. */
 typedef struct CurvesEvalCache {
-  /* Input control points */
+  /* Input control point positions combined with parameter data. */
   GPUVertBuf *proc_point_buf;
   GPUTexture *point_tex;
 
@@ -78,8 +82,8 @@ typedef struct CurvesEvalCache {
 
   CurvesEvalFinalCache final[MAX_HAIR_SUBDIV];
 
-  /* For point attributes, which need subdivision, these are the input data.
-   * For spline attributes, which need not subdivision, these are the final data. */
+  /* For point attributes, which need subdivision, these buffers contain the input data.
+   * For curve domain attributes, which do not need subdivision, these are the final data. */
   GPUVertBuf *proc_attributes_buf[GPU_MAX_ATTR];
   GPUTexture *proc_attributes_tex[GPU_MAX_ATTR];
 
@@ -89,7 +93,7 @@ typedef struct CurvesEvalCache {
 } CurvesEvalCache;
 
 /**
- * Ensure all textures and buffers needed for GPU accelerated drawing.
+ * Ensure all necessary textures and buffers exist for GPU accelerated drawing.
  */
 bool curves_ensure_procedural_data(struct Object *object,
                                    struct CurvesEvalCache **r_hair_cache,



More information about the Bf-blender-cvs mailing list