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:
-rw-r--r--extern/softbody/src/admmpd_collision.cpp6
-rw-r--r--source/blender/blenkernel/BKE_mesh_remesh_voxel.h4
-rw-r--r--source/blender/blenkernel/intern/mesh_remesh_voxel.c42
-rw-r--r--source/blender/blenkernel/intern/softbody.c122
-rw-r--r--source/blender/editors/object/object_remesh.c4
-rw-r--r--source/blender/gpu/intern/gpu_backend.hh2
-rw-r--r--source/blender/makesdna/DNA_object_force_types.h42
-rw-r--r--source/blender/makesrna/intern/rna_object_force.c21
-rw-r--r--source/blender/modifiers/intern/MOD_softbody.c1
9 files changed, 121 insertions, 123 deletions
diff --git a/extern/softbody/src/admmpd_collision.cpp b/extern/softbody/src/admmpd_collision.cpp
index 3e2400ed9dd..78889b810b8 100644
--- a/extern/softbody/src/admmpd_collision.cpp
+++ b/extern/softbody/src/admmpd_collision.cpp
@@ -191,6 +191,9 @@ int EmbeddedMeshCollision::detect(
//
// Detection function for a single embedded vertex
+ // This function is very poorly optimized in terms of
+ // cache friendlyness.
+ // Some refactoring would greatly improve run time.
//
// auto per_embedded_vertex_detect = [](
// void *__restrict userdata,
@@ -299,8 +302,7 @@ int EmbeddedMeshCollision::detect(
// vertices next to eachother are on different threads to provide
// better concurrency. Otherwise a standard slice may end up doing
// all of the BVH traversals and the other threads do none.
- // I haven't actually profiled this, so maybe I'm wrong. Either way it
- // won't hurt. I think.
+ // I haven't actually profiled this, so maybe I'm wrong.
int max_threads = std::max(1, std::min(nev, admmpd::get_max_threads(options)));
const auto & per_thread_function = [&per_embedded_vertex_detect,&max_threads,&nev]
(DetectThreadData *td, int thread_idx)
diff --git a/source/blender/blenkernel/BKE_mesh_remesh_voxel.h b/source/blender/blenkernel/BKE_mesh_remesh_voxel.h
index 51b9369bd4e..277747e3e27 100644
--- a/source/blender/blenkernel/BKE_mesh_remesh_voxel.h
+++ b/source/blender/blenkernel/BKE_mesh_remesh_voxel.h
@@ -57,8 +57,8 @@ struct Mesh *BKE_mesh_remesh_quadriflow_to_mesh_nomain(struct Mesh *mesh,
void *update_cb,
void *update_cb_data);
struct Mesh *BKE_mesh_remesh_tetgen_to_mesh_nomain(struct Mesh *mesh,
- unsigned int **tets,
- int *numtets);
+ unsigned int **tets,
+ int *numtets);
/* Data reprojection functions */
void BKE_mesh_remesh_reproject_paint_mask(struct Mesh *target, struct Mesh *source);
diff --git a/source/blender/blenkernel/intern/mesh_remesh_voxel.c b/source/blender/blenkernel/intern/mesh_remesh_voxel.c
index a488d292aa4..05cc9769bf7 100644
--- a/source/blender/blenkernel/intern/mesh_remesh_voxel.c
+++ b/source/blender/blenkernel/intern/mesh_remesh_voxel.c
@@ -265,9 +265,7 @@ static Mesh *BKE_mesh_remesh_quadriflow(Mesh *input_mesh,
#endif
#ifdef WITH_TETGEN
-static Mesh *BKE_mesh_remesh_tetgen(Mesh *input_mesh,
- unsigned int **tets,
- int *numtets)
+static Mesh *BKE_mesh_remesh_tetgen(Mesh *input_mesh, unsigned int **tets, int *numtets)
{
// Ensure that the triangulated mesh data is up to data
BKE_mesh_runtime_looptri_recalc(input_mesh);
@@ -318,11 +316,9 @@ static Mesh *BKE_mesh_remesh_tetgen(Mesh *input_mesh,
verttri = NULL;
Mesh *mesh = NULL;
- if (success)
- {
+ if (success) {
// Construct the new output mesh
- mesh = BKE_mesh_new_nomain(
- tg.out_totverts, 0, 0, (tg.out_totfacets * 3), tg.out_totfacets);
+ mesh = BKE_mesh_new_nomain(tg.out_totverts, 0, 0, (tg.out_totfacets * 3), tg.out_totfacets);
for (int i = 0; i < tg.out_totverts; i++) {
copy_v3_v3(mesh->mvert[i].co, &tg.out_verts[i * 3]);
@@ -341,26 +337,24 @@ static Mesh *BKE_mesh_remesh_tetgen(Mesh *input_mesh,
BKE_mesh_calc_normals(mesh);
*numtets = tg.out_tottets;
- *tets = (unsigned int *)MEM_malloc_arrayN(tg.out_tottets*4, sizeof(unsigned int), "remesh_output_tets");
+ *tets = (unsigned int *)MEM_malloc_arrayN(
+ tg.out_tottets * 4, sizeof(unsigned int), "remesh_output_tets");
//*tets = (unsigned int *)malloc(tg.out_tottets*4*sizeof(unsigned int));
- memcpy(*tets,tg.out_tets,tg.out_tottets*4*sizeof(unsigned int));
+ memcpy(*tets, tg.out_tets, tg.out_tottets * 4 * sizeof(unsigned int));
- } // end success
+ } // end success
- if (tg.out_verts != NULL)
- {
+ if (tg.out_verts != NULL) {
MEM_freeN(tg.out_verts);
tg.out_verts = NULL;
}
- if (tg.out_facets != NULL)
- {
+ if (tg.out_facets != NULL) {
MEM_freeN(tg.out_facets);
tg.out_facets = NULL;
}
- if (tg.out_tets != NULL)
- {
+ if (tg.out_tets != NULL) {
MEM_freeN(tg.out_tets);
tg.out_tets = NULL;
}
@@ -370,16 +364,14 @@ static Mesh *BKE_mesh_remesh_tetgen(Mesh *input_mesh,
#endif
struct Mesh *BKE_mesh_remesh_tetgen_to_mesh_nomain(struct Mesh *mesh,
- unsigned int **tets,
- int *numtets)
+ unsigned int **tets,
+ int *numtets)
{
- #ifdef WITH_TETGEN
- return BKE_mesh_remesh_tetgen(mesh,tets,numtets);
- #else
- UNUSED_VARS(mesh,
- tets,
- numtets);
- #endif
+#ifdef WITH_TETGEN
+ return BKE_mesh_remesh_tetgen(mesh, tets, numtets);
+#else
+ UNUSED_VARS(mesh, tets, numtets);
+#endif
return NULL;
}
diff --git a/source/blender/blenkernel/intern/softbody.c b/source/blender/blenkernel/intern/softbody.c
index 2ef42be1f83..bca2af1fb18 100644
--- a/source/blender/blenkernel/intern/softbody.c
+++ b/source/blender/blenkernel/intern/softbody.c
@@ -926,7 +926,7 @@ static void free_scratch(SoftBody *sb)
/* only frees internal data */
static void free_softbody_intern(SoftBody *sb)
{
- if (sb) {
+ if (sb) {
int a;
BodyPoint *bp;
@@ -3085,7 +3085,7 @@ static void softbody_to_object(Object *ob, float (*vertexCos)[3], int numVerts,
{
SoftBody *sb = ob->soft;
if (sb) {
- //int sb_totpt = sb->totpoint;
+ // int sb_totpt = sb->totpoint;
BodyPoint *bp = sb->bpoint;
int a;
@@ -3128,12 +3128,12 @@ SoftBody *sbNew(Scene *scene)
SoftBody *sb;
sb = MEM_callocN(sizeof(SoftBody), "softbody");
- sb->solver_mode = SOLVER_MODE_LEGACY;//SOLVER_MODE_ADMMPD;
- sb->admmpd_mesh_mode = 0; // embedded
+ sb->solver_mode = SOLVER_MODE_LEGACY; // SOLVER_MODE_ADMMPD;
+ sb->admmpd_mesh_mode = 0; // embedded
sb->admmpd_substeps = 1;
sb->admmpd_max_admm_iters = 20;
sb->admmpd_self_collision = 0;
- sb->admmpd_material = 0; // ARAP
+ sb->admmpd_material = 0; // ARAP
sb->admmpd_embed_res = 3;
sb->admmpd_converge_eps = 1e-4;
sb->admmpd_youngs_exp = 6;
@@ -3143,11 +3143,11 @@ SoftBody *sbNew(Scene *scene)
sb->admmpd_pk_exp = 4;
sb->admmpd_floor_z = -999;
sb->admmpd_gravity = -9.8;
- sb->admmpd_strainlimit_min = 0; // no compression
- sb->admmpd_strainlimit_max = 100; // 100x stretch
+ sb->admmpd_strainlimit_min = 0; // no compression
+ sb->admmpd_strainlimit_max = 100; // 100x stretch
sb->admmpd_maxthreads = -1;
- sb->admmpd_loglevel = 1; // low
- sb->admmpd_linsolver = 1; // PCG
+ sb->admmpd_loglevel = 1; // low
+ sb->admmpd_linsolver = 1; // PCG
sb->admmpd = MEM_callocN(sizeof(ADMMPDInterfaceData), "SoftBody_admmpd");
sb->mediafrict = 0.5f;
@@ -3564,22 +3564,21 @@ static void sbStoreLastFrame(struct Depsgraph *depsgraph, Object *object, float
object_orig->soft->last_frame = framenr;
}
-static void update_collider_admmpd(
- Depsgraph *depsgraph,
- Collection *collection,
- Object *vertexowner)
+static void update_collider_admmpd(Depsgraph *depsgraph,
+ Collection *collection,
+ Object *vertexowner)
{
SoftBody *sb = vertexowner->soft;
- if (!sb) { return; }
- if (!sb->admmpd) { return; }
+ if (!sb) {
+ return;
+ }
+ if (!sb->admmpd) {
+ return;
+ }
unsigned int numobjects;
Object **objects = BKE_collision_objects_create(
- depsgraph,
- vertexowner,
- collection,
- &numobjects,
- eModifierType_Collision);
+ depsgraph, vertexowner, collection, &numobjects, eModifierType_Collision);
// How many faces and vertices do we need to allocate?
int tot_verts = 0;
@@ -3587,9 +3586,9 @@ static void update_collider_admmpd(
for (int i = 0; i < numobjects; ++i) {
Object *ob = objects[i];
if (ob->type == OB_MESH) {
- if (ob->pd && ob->pd->deflect){
- CollisionModifierData *cmd = (CollisionModifierData *)
- BKE_modifiers_findby_type(ob, eModifierType_Collision);
+ if (ob->pd && ob->pd->deflect) {
+ CollisionModifierData *cmd = (CollisionModifierData *)BKE_modifiers_findby_type(
+ ob, eModifierType_Collision);
if (!cmd)
continue;
tot_verts += cmd->mvert_num;
@@ -3598,9 +3597,9 @@ static void update_collider_admmpd(
}
}
- float *obs_v0 = MEM_callocN(sizeof(float)*3*tot_verts, __func__);
- float *obs_v1 = MEM_callocN(sizeof(float)*3*tot_verts, __func__);
- unsigned int *obs_faces = MEM_callocN(sizeof(unsigned int)*3*tot_faces, __func__);
+ float *obs_v0 = MEM_callocN(sizeof(float) * 3 * tot_verts, __func__);
+ float *obs_v1 = MEM_callocN(sizeof(float) * 3 * tot_verts, __func__);
+ unsigned int *obs_faces = MEM_callocN(sizeof(unsigned int) * 3 * tot_faces, __func__);
// Copy over vertices and faces
int curr_verts = 0;
@@ -3608,24 +3607,24 @@ static void update_collider_admmpd(
for (int i = 0; i < numobjects; ++i) {
Object *ob = objects[i];
if (ob->type == OB_MESH) {
- if (ob->pd && ob->pd->deflect){
- CollisionModifierData *cmd = (CollisionModifierData *)
- BKE_modifiers_findby_type(ob, eModifierType_Collision);
+ if (ob->pd && ob->pd->deflect) {
+ CollisionModifierData *cmd = (CollisionModifierData *)BKE_modifiers_findby_type(
+ ob, eModifierType_Collision);
if (!cmd)
continue;
- for (int j=0; j<cmd->mvert_num; ++j) {
- int v_idx = j*3 + curr_verts*3;
- for (int k=0; k<3; ++k) {
- obs_v0[v_idx+k] = cmd->x[j].co[k];
- obs_v1[v_idx+k] = cmd->xnew[j].co[k];
+ for (int j = 0; j < cmd->mvert_num; ++j) {
+ int v_idx = j * 3 + curr_verts * 3;
+ for (int k = 0; k < 3; ++k) {
+ obs_v0[v_idx + k] = cmd->x[j].co[k];
+ obs_v1[v_idx + k] = cmd->xnew[j].co[k];
}
}
- for (int j=0; j<cmd->tri_num; ++j) {
- int f_idx = j*3 + curr_faces*3;
- for (int k=0; k<3; ++k) {
- obs_faces[f_idx+k] = cmd->tri[j].tri[k] + curr_verts;
+ for (int j = 0; j < cmd->tri_num; ++j) {
+ int f_idx = j * 3 + curr_faces * 3;
+ for (int k = 0; k < 3; ++k) {
+ obs_faces[f_idx + k] = cmd->tri[j].tri[k] + curr_verts;
}
}
@@ -3714,44 +3713,43 @@ void sbObjectStep(struct Depsgraph *depsgraph,
bool is_first_frame = framenr == startframe;
/* Do we need to initialize the ADMM-PD mesh?
- * a) Has never been initialized.
- * b) The mesh topology has changed.
- * TODO: ob->obmat or vertexCos change. */
+ * a) Has never been initialized.
+ * b) The mesh topology has changed.
+ * TODO: ob->obmat or vertexCos change. */
int init_mesh = 0;
if (is_first_frame || admmpd_mesh_needs_update(sb->admmpd, ob)) {
init_mesh = admmpd_update_mesh(sb->admmpd, ob, vertexCos);
- if (init_mesh==0) {
+ if (init_mesh == 0) {
CLOG_ERROR(&LOG, "%s", sb->admmpd->last_error);
WM_reportf(RPT_ERROR, sb->admmpd->last_error);
return;
}
- else if (init_mesh==-1) {
+ else if (init_mesh == -1) {
WM_reportf(RPT_WARNING, sb->admmpd->last_error);
}
}
/* Do we need to initialize the ADMM-PD solver?
- * a) Has never been initialized
- * b) Some settings require re-initialization
- * c) The mesh has changed */
+ * a) Has never been initialized
+ * b) Some settings require re-initialization
+ * c) The mesh has changed */
int init_solver = 0;
- if (is_first_frame || init_mesh ||
- admmpd_solver_needs_update(sb->admmpd, scene, ob)) {
+ if (is_first_frame || init_mesh || admmpd_solver_needs_update(sb->admmpd, scene, ob)) {
init_solver = admmpd_update_solver(sb->admmpd, scene, ob, vertexCos);
- if (init_solver==0) {
+ if (init_solver == 0) {
CLOG_ERROR(&LOG, "%s", sb->admmpd->last_error);
WM_reportf(RPT_ERROR, sb->admmpd->last_error);
return;
}
- else if (init_solver==-1) {
+ else if (init_solver == -1) {
WM_reportf(RPT_WARNING, sb->admmpd->last_error);
}
}
/* In case of paramter change, ob->soft->bpoint has not
- * been set yet. So we need to resize which can be done
- * in the copy_to_object function while leaving vertexCos to null. */
- admmpd_copy_to_object(sb->admmpd,ob,NULL);
+ * been set yet. So we need to resize which can be done
+ * in the copy_to_object function while leaving vertexCos to null. */
+ admmpd_copy_to_object(sb->admmpd, ob, NULL);
if (init_mesh || init_solver) {
BKE_ptcache_invalidate(cache);
@@ -3792,7 +3790,7 @@ void sbObjectStep(struct Depsgraph *depsgraph,
/* first frame, no simulation to do, just set the positions */
if (sb->solver_mode == SOLVER_MODE_ADMMPD) {
- admmpd_copy_from_object(sb->admmpd,ob);
+ admmpd_copy_from_object(sb->admmpd, ob);
}
else if (sb->solver_mode == SOLVER_MODE_LEGACY) {
softbody_update_positions(ob, sb, vertexCos, numVerts);
@@ -3818,10 +3816,10 @@ void sbObjectStep(struct Depsgraph *depsgraph,
if (sb->solver_mode == SOLVER_MODE_ADMMPD) {
/* We have read the cache into softbody, so we need to pass it to ADMM-PD */
- admmpd_copy_from_object(sb->admmpd,ob);
+ admmpd_copy_from_object(sb->admmpd, ob);
/* Now that we have the updated ADMM-PD vertices, we have
- * to map them to surface vertices (vertexCos) */
- admmpd_copy_to_object(sb->admmpd,ob,vertexCos);
+ * to map them to surface vertices (vertexCos) */
+ admmpd_copy_to_object(sb->admmpd, ob, vertexCos);
}
else if (sb->solver_mode == SOLVER_MODE_LEGACY) {
softbody_to_object(ob, vertexCos, numVerts, sb->local);
@@ -3860,17 +3858,17 @@ void sbObjectStep(struct Depsgraph *depsgraph,
}
if (sb->solver_mode == SOLVER_MODE_ADMMPD) {
- admmpd_copy_from_object(sb->admmpd,ob);
+ admmpd_copy_from_object(sb->admmpd, ob);
update_collider_admmpd(depsgraph, sb->collision_group, ob);
- int solve_retval = admmpd_solve(sb->admmpd,ob,vertexCos);
- if (solve_retval==0) {
+ int solve_retval = admmpd_solve(sb->admmpd, ob, vertexCos);
+ if (solve_retval == 0) {
CLOG_ERROR(&LOG, "%s", sb->admmpd->last_error);
WM_reportf(RPT_ERROR, sb->admmpd->last_error);
}
- else if (solve_retval==-1) {
+ else if (solve_retval == -1) {
WM_reportf(RPT_WARNING, sb->admmpd->last_error);
}
- admmpd_copy_to_object(sb->admmpd,ob,vertexCos);
+ admmpd_copy_to_object(sb->admmpd, ob, vertexCos);
}
else if (sb->solver_mode == SOLVER_MODE_LEGACY) {
softbody_update_positions(ob, sb, vertexCos, numVerts);
diff --git a/source/blender/editors/object/object_remesh.c b/source/blender/editors/object/object_remesh.c
index 119f0d8d238..d5715cf6879 100644
--- a/source/blender/editors/object/object_remesh.c
+++ b/source/blender/editors/object/object_remesh.c
@@ -1209,7 +1209,7 @@ static int tetgen_remesh_exec(bContext *C, wmOperator *op)
unsigned int *tets = NULL;
int numtets;
- new_mesh = BKE_mesh_remesh_tetgen_to_mesh_nomain(mesh,&tets,&numtets);
+ new_mesh = BKE_mesh_remesh_tetgen_to_mesh_nomain(mesh, &tets, &numtets);
if (tets) {
MEM_freeN(tets);
}
@@ -1250,8 +1250,6 @@ void OBJECT_OT_tetgen_remesh(wmOperatorType *ot)
ot->exec = tetgen_remesh_exec;
ot->flag = OPTYPE_REGISTER | OPTYPE_UNDO;
-
-
}
/** \} */
diff --git a/source/blender/gpu/intern/gpu_backend.hh b/source/blender/gpu/intern/gpu_backend.hh
index ba382e3c3fc..25d165098a7 100644
--- a/source/blender/gpu/intern/gpu_backend.hh
+++ b/source/blender/gpu/intern/gpu_backend.hh
@@ -25,9 +25,9 @@
#pragma once
+#include "gpu_batch_private.hh"
#include "gpu_context_private.hh"
#include "gpu_drawlist_private.hh"
-#include "gpu_batch_private.hh"
namespace blender {
namespace gpu {
diff --git a/source/blender/makesdna/DNA_object_force_types.h b/source/blender/makesdna/DNA_object_force_types.h
index 0d9a8c52ec3..33b16350354 100644
--- a/source/blender/makesdna/DNA_object_force_types.h
+++ b/source/blender/makesdna/DNA_object_force_types.h
@@ -215,28 +215,28 @@ typedef struct SoftBody {
struct ADMMPDInterfaceData *admmpd;
/* ADMM-PD settings */
- int solver_mode; // 0=legacy, 1=admmpd
- int admmpd_mesh_mode; // 0=embedded, 1=tetgen, 2=cloth
- int admmpd_substeps; // break time step into smaller bits
- int admmpd_max_admm_iters; // max solver iterations
- int admmpd_self_collision; // 0 or 1
- int admmpd_material; // see enum
- int admmpd_embed_res; // embedded resolution depth
- float admmpd_converge_eps; // convergence epsilon
- float admmpd_youngs_exp; // Youngs mod exponent
- float admmpd_poisson; // Poisson ratio
- float admmpd_density_kgm3; // unit-density of object
- float admmpd_ck_exp; // collision stiffness exponent (10^n)
- float admmpd_pk_exp; // goal stiffness exponent (10^n)
- float admmpd_floor_z; // floor position
- float admmpd_gravity; // in m/s^2
- float admmpd_strainlimit_min; // [0,1]
- float admmpd_strainlimit_max; // [1,100]
- int admmpd_maxthreads; // -1 = auto
- int admmpd_loglevel; // 0=none, 1=low, 2=high
- int admmpd_linsolver; // global step
+ int solver_mode; // 0=legacy, 1=admmpd
+ int admmpd_mesh_mode; // 0=embedded, 1=tetgen, 2=cloth
+ int admmpd_substeps; // break time step into smaller bits
+ int admmpd_max_admm_iters; // max solver iterations
+ int admmpd_self_collision; // 0 or 1
+ int admmpd_material; // see enum
+ int admmpd_embed_res; // embedded resolution depth
+ float admmpd_converge_eps; // convergence epsilon
+ float admmpd_youngs_exp; // Youngs mod exponent
+ float admmpd_poisson; // Poisson ratio
+ float admmpd_density_kgm3; // unit-density of object
+ float admmpd_ck_exp; // collision stiffness exponent (10^n)
+ float admmpd_pk_exp; // goal stiffness exponent (10^n)
+ float admmpd_floor_z; // floor position
+ float admmpd_gravity; // in m/s^2
+ float admmpd_strainlimit_min; // [0,1]
+ float admmpd_strainlimit_max; // [1,100]
+ int admmpd_maxthreads; // -1 = auto
+ int admmpd_loglevel; // 0=none, 1=low, 2=high
+ int admmpd_linsolver; // global step
char admmpd_namedVG_selfcollision[64];
-// int admmpd_pad; // padding
+ // int admmpd_pad; // padding
char _pad;
char msg_lock;
diff --git a/source/blender/makesrna/intern/rna_object_force.c b/source/blender/makesrna/intern/rna_object_force.c
index f5b4295532f..562d1565961 100644
--- a/source/blender/makesrna/intern/rna_object_force.c
+++ b/source/blender/makesrna/intern/rna_object_force.c
@@ -605,8 +605,8 @@ static void rna_SoftBodySettings_spring_vgroup_set(PointerRNA *ptr, const char *
static void rna_SoftBodySettings_selfcollide_vgroup_set(PointerRNA *ptr, const char *value)
{
SoftBody *sb = (SoftBody *)ptr->data;
- rna_object_vgroup_name_set(ptr, value,
- sb->admmpd_namedVG_selfcollision, sizeof(sb->admmpd_namedVG_selfcollision));
+ rna_object_vgroup_name_set(
+ ptr, value, sb->admmpd_namedVG_selfcollision, sizeof(sb->admmpd_namedVG_selfcollision));
}
static char *rna_SoftBodySettings_path(PointerRNA *ptr)
@@ -1821,14 +1821,22 @@ static void rna_def_softbody(BlenderRNA *brna)
static const EnumPropertyItem admmpd_linsolver_items[] = {
{0, "LTLD", 0, "LDL^T", "Factors the matrix on any collision or change in pin stiffness"},
- {1, "PCG", 0, "Conjugate Gradients", "Iterative solver but factors preconditioner on change in pin stiffness"},
- //{2, "MCGS", 0, "Multi-Color Gauss-Seidel", "Fast if many threads are available, no support for self collision"},
+ {1,
+ "PCG",
+ 0,
+ "Conjugate Gradients",
+ "Iterative solver but factors preconditioner on change in pin stiffness"},
+ //{2, "MCGS", 0, "Multi-Color Gauss-Seidel", "Fast if many threads are available, no support
+ //for self collision"},
{0, NULL, 0, NULL, NULL},
};
static const EnumPropertyItem aerodynamics_type[] = {
{0, "SIMPLE", 0, "Simple", "Edges receive a drag force from surrounding media"},
- {1, "LIFT_FORCE", 0, "Lift Force",
+ {1,
+ "LIFT_FORCE",
+ 0,
+ "Lift Force",
"Edges receive a lift force when passing through surrounding media"},
{0, NULL, 0, NULL, NULL},
};
@@ -1953,7 +1961,8 @@ static void rna_def_softbody(BlenderRNA *brna)
prop = RNA_def_property(srna, "vertex_group_selfcollide", PROP_STRING, PROP_NONE);
RNA_def_property_string_sdna(prop, NULL, "admmpd_namedVG_selfcollision");
- RNA_def_property_ui_text(prop, "Self Collide VG", "Optional vertex group for self collision vertices");
+ RNA_def_property_ui_text(
+ prop, "Self Collide VG", "Optional vertex group for self collision vertices");
RNA_def_property_string_funcs(prop, NULL, NULL, "rna_SoftBodySettings_selfcollide_vgroup_set");
RNA_def_property_update(prop, 0, "rna_softbody_update");
diff --git a/source/blender/modifiers/intern/MOD_softbody.c b/source/blender/modifiers/intern/MOD_softbody.c
index bca41b81e91..965d270829e 100644
--- a/source/blender/modifiers/intern/MOD_softbody.c
+++ b/source/blender/modifiers/intern/MOD_softbody.c
@@ -60,7 +60,6 @@ static void deformVerts(ModifierData *UNUSED(md),
Scene *scene = DEG_get_evaluated_scene(ctx->depsgraph);
sbObjectStep(
ctx->depsgraph, scene, ctx->object, DEG_get_ctime(ctx->depsgraph), vertexCos, numVerts);
-
}
static bool dependsOnTime(ModifierData *UNUSED(md))