[Bf-blender-cvs] [2c0ccb0159d] master: Cleanup: move public doc-strings into headers for 'simulation'

Campbell Barton noreply at git.blender.org
Wed Dec 8 11:05:40 CET 2021


Commit: 2c0ccb0159d17d807888af34d6f8d95a332b6c0c
Author: Campbell Barton
Date:   Wed Dec 8 18:02:27 2021 +1100
Branches: master
https://developer.blender.org/rB2c0ccb0159d17d807888af34d6f8d95a332b6c0c

Cleanup: move public doc-strings into headers for 'simulation'

Ref T92709

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

M	source/blender/simulation/intern/hair_volume.cpp
M	source/blender/simulation/intern/implicit.h
M	source/blender/simulation/intern/implicit_blender.c

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

diff --git a/source/blender/simulation/intern/hair_volume.cpp b/source/blender/simulation/intern/hair_volume.cpp
index 348c8683be9..e47593eda05 100644
--- a/source/blender/simulation/intern/hair_volume.cpp
+++ b/source/blender/simulation/intern/hair_volume.cpp
@@ -633,9 +633,6 @@ BLI_INLINE void hair_volume_eval_grid_vertex_sample(HairGridVert *vert,
   }
 }
 
-/* XXX simplified test implementation using a series of discrete sample along the segment,
- * instead of finding the closest point for all affected grid vertices.
- */
 void SIM_hair_volume_add_segment(HairGrid *grid,
                                  const float UNUSED(x1[3]),
                                  const float UNUSED(v1[3]),
@@ -649,6 +646,9 @@ void SIM_hair_volume_add_segment(HairGrid *grid,
                                  const float UNUSED(dir2[3]),
                                  const float UNUSED(dir3[3]))
 {
+  /* XXX simplified test implementation using a series of discrete sample along the segment,
+   * instead of finding the closest point for all affected grid vertices. */
+
   const float radius = 1.5f;
   const float dist_scale = grid->inv_cellsize;
 
diff --git a/source/blender/simulation/intern/implicit.h b/source/blender/simulation/intern/implicit.h
index a8693c61018..c8eab94d315 100644
--- a/source/blender/simulation/intern/implicit.h
+++ b/source/blender/simulation/intern/implicit.h
@@ -80,7 +80,8 @@ void SIM_mass_spring_get_motion_state(struct Implicit_Data *data,
 void SIM_mass_spring_get_position(struct Implicit_Data *data, int index, float x[3]);
 void SIM_mass_spring_get_velocity(struct Implicit_Data *data, int index, float v[3]);
 
-/* access to modified motion state during solver step */
+/* Access to modified motion state during solver step. */
+
 void SIM_mass_spring_get_new_position(struct Implicit_Data *data, int index, float x[3]);
 void SIM_mass_spring_set_new_position(struct Implicit_Data *data, int index, const float x[3]);
 void SIM_mass_spring_get_new_velocity(struct Implicit_Data *data, int index, float v[3]);
@@ -106,44 +107,64 @@ bool SIM_mass_spring_solve_velocities(struct Implicit_Data *data,
 bool SIM_mass_spring_solve_positions(struct Implicit_Data *data, float dt);
 void SIM_mass_spring_apply_result(struct Implicit_Data *data);
 
-/* Clear the force vector at the beginning of the time step */
+/**
+ * Clear the force vector at the beginning of the time step.
+ */
 void SIM_mass_spring_clear_forces(struct Implicit_Data *data);
-/* Fictitious forces introduced by moving coordinate systems */
+/**
+ * Fictitious forces introduced by moving coordinate systems.
+ */
 void SIM_mass_spring_force_reference_frame(struct Implicit_Data *data,
                                            int index,
                                            const float acceleration[3],
                                            const float omega[3],
                                            const float domega_dt[3],
                                            float mass);
-/* Simple uniform gravity force */
+/**
+ * Simple uniform gravity force.
+ */
 void SIM_mass_spring_force_gravity(struct Implicit_Data *data,
                                    int index,
                                    float mass,
                                    const float g[3]);
-/* Global drag force (velocity damping) */
+/**
+ * Global drag force (velocity damping).
+ */
 void SIM_mass_spring_force_drag(struct Implicit_Data *data, float drag);
-/* Custom external force */
+/**
+ * Custom external force.
+ */
 void SIM_mass_spring_force_extern(
     struct Implicit_Data *data, int i, const float f[3], float dfdx[3][3], float dfdv[3][3]);
-/* Wind force, acting on a face (only generates pressure from the normal component) */
+/**
+ * Wind force, acting on a face (only generates pressure from the normal component).
+ */
 void SIM_mass_spring_force_face_wind(
     struct Implicit_Data *data, int v1, int v2, int v3, const float (*winvec)[3]);
-/* Arbitrary per-unit-area vector force field acting on a face. */
+/**
+ * Arbitrary per-unit-area vector force field acting on a face..
+ */
 void SIM_mass_spring_force_face_extern(
     struct Implicit_Data *data, int v1, int v2, int v3, const float (*forcevec)[3]);
-/* Wind force, acting on an edge */
+/**
+ * Wind force, acting on an edge.
+ */
 void SIM_mass_spring_force_edge_wind(struct Implicit_Data *data,
                                      int v1,
                                      int v2,
                                      float radius1,
                                      float radius2,
                                      const float (*winvec)[3]);
-/* Wind force, acting on a vertex */
+/**
+ * Wind force, acting on a vertex.
+ */
 void SIM_mass_spring_force_vertex_wind(struct Implicit_Data *data,
                                        int v,
                                        float radius,
                                        const float (*winvec)[3]);
-/* Linear spring force between two points */
+/**
+ * Linear spring force between two points.
+ */
 bool SIM_mass_spring_force_spring_linear(struct Implicit_Data *data,
                                          int i,
                                          int j,
@@ -155,7 +176,9 @@ bool SIM_mass_spring_force_spring_linear(struct Implicit_Data *data,
                                          bool resist_compress,
                                          bool new_compress,
                                          float clamp_force);
-/* Angular spring force between two polygons */
+/**
+ * Angular spring force between two polygons.
+ */
 bool SIM_mass_spring_force_spring_angular(struct Implicit_Data *data,
                                           int i,
                                           int j,
@@ -166,10 +189,14 @@ bool SIM_mass_spring_force_spring_angular(struct Implicit_Data *data,
                                           float restang,
                                           float stiffness,
                                           float damping);
-/* Bending force, forming a triangle at the base of two structural springs */
+/**
+ * Bending force, forming a triangle at the base of two structural springs.
+ */
 bool SIM_mass_spring_force_spring_bending(
     struct Implicit_Data *data, int i, int j, float restlen, float kb, float cb);
-/* Angular bending force based on local target vectors */
+/**
+ * Angular bending force based on local target vectors.
+ */
 bool SIM_mass_spring_force_spring_bending_hair(struct Implicit_Data *data,
                                                int i,
                                                int j,
@@ -177,7 +204,9 @@ bool SIM_mass_spring_force_spring_bending_hair(struct Implicit_Data *data,
                                                const float target[3],
                                                float stiffness,
                                                float damping);
-/* Global goal spring */
+/**
+ * Global goal spring.
+ */
 bool SIM_mass_spring_force_spring_goal(struct Implicit_Data *data,
                                        int i,
                                        const float goal_x[3],
@@ -242,13 +271,15 @@ void SIM_hair_volume_grid_interpolate(struct HairGrid *grid,
                                       float density_gradient[3],
                                       float velocity_gradient[3][3]);
 
-/* Effect of fluid simulation grid on velocities.
+/**
+ * Effect of fluid simulation grid on velocities.
  * fluid_factor controls blending between PIC (Particle-in-Cell)
  *     and FLIP (Fluid-Implicit-Particle) methods (0 = only PIC, 1 = only FLIP)
  */
 void SIM_hair_volume_grid_velocity(
     struct HairGrid *grid, const float x[3], const float v[3], float fluid_factor, float r_v[3]);
-/* XXX Warning: expressing grid effects on velocity as a force is not very stable,
+/**
+ * WARNING: expressing grid effects on velocity as a force is not very stable,
  * due to discontinuities in interpolated values!
  * Better use hybrid approaches such as described in
  * "Detail Preserving Continuum Simulation of Straight Hair"
diff --git a/source/blender/simulation/intern/implicit_blender.c b/source/blender/simulation/intern/implicit_blender.c
index ad903e9da4a..add047bf8c8 100644
--- a/source/blender/simulation/intern/implicit_blender.c
+++ b/source/blender/simulation/intern/implicit_blender.c
@@ -1475,11 +1475,12 @@ static float calc_nor_area_tri(float nor[3],
   return normalize_v3(nor) / 2.0f;
 }
 
-/* XXX does not support force jacobians yet, since the effector system does not provide them either
- */
 void SIM_mass_spring_force_face_wind(
     Implicit_Data *data, int v1, int v2, int v3, const float (*winvec)[3])
 {
+  /* XXX does not support force jacobians yet,
+   * since the effector system does not provide them either. */
+
   const float effector_scale = 0.02f;
   const int vs[3] = {v1, v2, v3};
   float win[3], nor[3], area;
@@ -1854,10 +1855,11 @@ bool SIM_mass_spring_force_spring_linear(Implicit_Data *data,
   return true;
 }
 
-/* See "Stable but Responsive Cloth" (Choi, Ko 2005) */
 bool SIM_mass_spring_force_spring_bending(
     Implicit_Data *data, int i, int j, float restlen, float kb, float cb)
 {
+  /* See "Stable but Responsive Cloth" (Choi, Ko 2005). */
+
   float extent[3], length, dir[3], vel[3];
 
   /* calculate elongation */
@@ -1959,8 +1961,6 @@ BLI_INLINE void spring_angle(Implicit_Data *data,
   sub_v3_v3(r_vel_b, vel_e);
 }
 
-/* Angular springs roughly based on the bending model proposed by Baraff and Witkin in "Large Steps
- * in Cloth Simulation". */
 bool SIM_mass_spring_force_spring_angular(Implicit_Data *data,
                                           int i,
                                           int j,
@@ -2179,9 +2179,6 @@ BLI_INLINE void spring_hairbend_estimate_dfdv(Implicit_Data *data,
   }
 }
 
-/* Angular spring that pulls the vertex toward the local target
- * See "Artistic Simulation of Curly Hair" (Pixar technical memo #12-03a)
- */
 bool SIM_mass_spring_force_spring_bending_hair(Implicit_Data *data,
                                                int i,
                                                int

@@ Diff output truncated at 10240 characters. @@



More information about the Bf-blender-cvs mailing list