Commit: a87cd014256ca8991819a81df227de5ee76c46a2
Author: Luca Rood
Date:   Sat Mar 4 01:38:44 2017 -0300
Branches: cloth-improvements
https://developer.blender.org/rBa87cd014256ca8991819a81df227de5ee76c46a2

Remove a few warnings and some cleanup

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

M       source/blender/blenkernel/intern/collision.c

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

diff --git a/source/blender/blenkernel/intern/collision.c 
b/source/blender/blenkernel/intern/collision.c
index 24294dadce..33e4f30708 100644
--- a/source/blender/blenkernel/intern/collision.c
+++ b/source/blender/blenkernel/intern/collision.c
@@ -633,7 +633,7 @@ static void collision_compute_barycentric ( float pv[3], 
float p1[3], float p2[3
 #  pragma GCC diagnostic ignored "-Wdouble-promotion"
 #endif
 
-DO_INLINE void collision_interpolateOnTriangle ( float to[3], float v1[3], 
float v2[3], float v3[3], double w1, double w2, double w3 )
+DO_INLINE void collision_interpolateOnTriangle (float to[3], float v1[3], 
float v2[3], float v3[3], double w1, double w2, double w3)
 {
        zero_v3(to);
        VECADDMUL(to, v1, w1);
@@ -641,19 +641,19 @@ DO_INLINE void collision_interpolateOnTriangle ( float 
to[3], float v1[3], float
        VECADDMUL(to, v3, w3);
 }
 
-static int cloth_collision_response_static (ClothModifierData *clmd, 
CollisionModifierData *collmd, Object *collob,
-                                            CollPair *collpair, CollPair 
*collision_end, ImpulseCluster **vert_imp_clusters)
+static int cloth_collision_response_static(ClothModifierData *clmd, 
CollisionModifierData *collmd, Object *collob,
+                                           CollPair *collpair, CollPair 
*collision_end, ImpulseCluster **vert_imp_clusters)
 {
        int result = 0;
        Cloth *cloth1;
        float w1, w2, w3, u1, u2, u3;
        float v1[3], v2[3], relativeVelocity[3];
        float magrelVel;
-       float epsilon2 = BLI_bvhtree_get_epsilon ( collmd->bvhtree );
+       float epsilon2 = BLI_bvhtree_get_epsilon(collmd->bvhtree);
 
        cloth1 = clmd->clothObject;
 
-       for ( ; collpair != collision_end; collpair++ ) {
+       for (; collpair != collision_end; collpair++) {
                float i1[3], i2[3], i3[3];
 
                zero_v3(i1);
@@ -661,27 +661,28 @@ static int cloth_collision_response_static 
(ClothModifierData *clmd, CollisionMo
                zero_v3(i3);
 
                /* only handle static collisions here */
-               if ( collpair->flag & COLLISION_IN_FUTURE )
+               if (collpair->flag & COLLISION_IN_FUTURE) {
                        continue;
+               }
 
                /* compute barycentric coordinates for both collision points */
-               collision_compute_barycentric ( collpair->pa,
-                       cloth1->verts[collpair->ap1].tx,
-                       cloth1->verts[collpair->ap2].tx,
-                       cloth1->verts[collpair->ap3].tx,
-                       &w1, &w2, &w3 );
+               collision_compute_barycentric(collpair->pa,
+                                      cloth1->verts[collpair->ap1].tx,
+                                      cloth1->verts[collpair->ap2].tx,
+                                      cloth1->verts[collpair->ap3].tx,
+                                      &w1, &w2, &w3);
 
                /* was: txold */
-               collision_compute_barycentric ( collpair->pb,
-                       collmd->current_x[collpair->bp1].co,
-                       collmd->current_x[collpair->bp2].co,
-                       collmd->current_x[collpair->bp3].co,
-                       &u1, &u2, &u3 );
+               collision_compute_barycentric(collpair->pb,
+                                      collmd->current_x[collpair->bp1].co,
+                                      collmd->current_x[collpair->bp2].co,
+                                      collmd->current_x[collpair->bp3].co,
+                                      &u1, &u2, &u3);
 
                /* Calculate relative "velocity". */
-               collision_interpolateOnTriangle ( v1, 
cloth1->verts[collpair->ap1].tv, cloth1->verts[collpair->ap2].tv, 
cloth1->verts[collpair->ap3].tv, w1, w2, w3 );
+               collision_interpolateOnTriangle(v1, 
cloth1->verts[collpair->ap1].tv, cloth1->verts[collpair->ap2].tv, 
cloth1->verts[collpair->ap3].tv, w1, w2, w3);
 
-               collision_interpolateOnTriangle ( v2, 
collmd->current_v[collpair->bp1].co, collmd->current_v[collpair->bp2].co, 
collmd->current_v[collpair->bp3].co, u1, u2, u3 );
+               collision_interpolateOnTriangle(v2, 
collmd->current_v[collpair->bp1].co, collmd->current_v[collpair->bp2].co, 
collmd->current_v[collpair->bp3].co, u1, u2, u3);
 
                sub_v3_v3v3(relativeVelocity, v2, v1);
 
@@ -714,31 +715,23 @@ static int cloth_collision_response_static 
(ClothModifierData *clmd, CollisionMo
                        if ( magtangent > ALMOST_ZERO ) {
                                normalize_v3(vrel_t_pre);
 
-                               /*impulse = magtangent / ( 1.0f + w1*w1 + w2*w2 
+ w3*w3 );  2.0 * */
-
-                               /* Impulse should be uniform throughout 
polygon, the scaling used above was wrong */
                                impulse = magtangent / 1.5;
 
-                               VECADDMUL ( i1, vrel_t_pre, w1 * impulse );
-                               VECADDMUL ( i2, vrel_t_pre, w2 * impulse );
-                               VECADDMUL ( i3, vrel_t_pre, w3 * impulse );
+                               VECADDMUL(i1, vrel_t_pre, w1 * impulse);
+                               VECADDMUL(i2, vrel_t_pre, w2 * impulse);
+                               VECADDMUL(i3, vrel_t_pre, w3 * impulse);
                        }
 
-                       /* Apply velocity stopping impulse
-                        * I_c = m * v_N / 2.0
-                        * no 2.0 * magrelVel normally, but looks nicer DG */
-                       /*impulse =  magrelVel / ( 1.0 + w1*w1 + w2*w2 + w3*w3 
);*/
-
-                       /* Impulse should be uniform throughout polygon, the 
scaling used above was wrong */
+                       /* Apply velocity stopping impulse */
                        impulse =  magrelVel / 1.5f;
 
-                       VECADDMUL ( i1, collpair->normal, w1 * impulse );
+                       VECADDMUL(i1, collpair->normal, w1 * impulse);
                        cloth1->verts[collpair->ap1].impulse_count++;
 
-                       VECADDMUL ( i2, collpair->normal, w2 * impulse );
+                       VECADDMUL(i2, collpair->normal, w2 * impulse);
                        cloth1->verts[collpair->ap2].impulse_count++;
 
-                       VECADDMUL ( i3, collpair->normal, w3 * impulse );
+                       VECADDMUL(i3, collpair->normal, w3 * impulse);
                        cloth1->verts[collpair->ap3].impulse_count++;
 
                        /* Apply repulse impulse if distance too short
@@ -751,22 +744,21 @@ static int cloth_collision_response_static 
(ClothModifierData *clmd, CollisionMo
 
                        d = clmd->coll_parms->epsilon*8.0f/9.0f + 
epsilon2*8.0f/9.0f - collpair->distance;
 
-                       if ( ( magrelVel < 0.1f*d*time_multiplier ) && ( d > 
ALMOST_ZERO ) ) {
-                               repulse = MIN2 ( d*1.0f/time_multiplier, 
0.1f*d*time_multiplier - magrelVel );
+                       if ((magrelVel < 0.1f*d*time_multiplier) && (d > 
ALMOST_ZERO)) {
+                               repulse = MIN2(d*1.0f/time_multiplier, 
0.1f*d*time_multiplier - magrelVel);
 
                                /* stay on the safe side and clamp repulse */
-                               if ( impulse > ALMOST_ZERO )
-                                       repulse = min_ff( repulse, 5.0*impulse 
);
-                               repulse = max_ff(impulse, repulse);
+                               if (impulse > ALMOST_ZERO) {
+                                       repulse = min_ff(repulse, 5.0*impulse);
+                               }
 
-                               /*impulse = repulse / ( 1.0f + w1*w1 + w2*w2 + 
w3*w3 ); original 2.0 / 0.25 */
+                               repulse = max_ff(impulse, repulse);
 
-                               /* Impulse should be uniform throughout 
polygon, the scaling used above was wrong */
                                impulse = repulse / 1.5f;
 
-                               VECADDMUL ( i1, collpair->normal,  impulse );
-                               VECADDMUL ( i2, collpair->normal,  impulse );
-                               VECADDMUL ( i3, collpair->normal,  impulse );
+                               VECADDMUL(i1, collpair->normal, impulse);
+                               VECADDMUL(i2, collpair->normal, impulse);
+                               VECADDMUL(i3, collpair->normal, impulse);
                        }
 
                        result = 1;
@@ -785,15 +777,11 @@ static int cloth_collision_response_static 
(ClothModifierData *clmd, CollisionMo
                        if ( d > ALMOST_ZERO) {
                                /* stay on the safe side and clamp repulse */
                                float repulse = d*1.0f/time_multiplier;
-
-                               /*float impulse = repulse / ( 3.0f * ( 1.0f + 
w1*w1 + w2*w2 + w3*w3 )); original 2.0 / 0.25 */
-
-                               /* Impulse should be uniform throughout 
polygon, the scaling used above was wrong */
                                float impulse = repulse / 4.5f;
 
-                               VECADDMUL ( i1, collpair->normal, w1 * impulse 
);
-                               VECADDMUL ( i2, collpair->normal, w2 * impulse 
);
-                               VECADDMUL ( i3, collpair->normal, w3 * impulse 
);
+                               VECADDMUL(i1, collpair->normal, w1 * impulse);
+                               VECADDMUL(i2, collpair->normal, w2 * impulse);
+                               VECADDMUL(i3, collpair->normal, w3 * impulse);
 
                                cloth1->verts[collpair->ap1].impulse_count++;
                                cloth1->verts[collpair->ap2].impulse_count++;
@@ -817,6 +805,7 @@ static int cloth_collision_response_static 
(ClothModifierData *clmd, CollisionMo
                        }
                }
        }
+
        return result;
 }
 
@@ -831,48 +820,47 @@ static int 
cloth_selfcollision_response_static(ClothModifierData *clmd, CollPair
 
        cloth1 = clmd->clothObject;
 
-       for ( ; collpair != collision_end; collpair++ ) {
-               float i1[3], i2[3], i3[3], j1[3], j2[3], j3[3]; /* i are 
impulses for ap and j are impulses for bp */
+       for (; collpair != collision_end; collpair++) {
+               float i1[3], i2[3], i3[3];
 
                zero_v3(i1);
                zero_v3(i2);
                zero_v3(i3);
 
                /* only handle static collisions here */
-               if ( collpair->flag & COLLISION_IN_FUTURE )
+               if (collpair->flag & COLLISION_IN_FUTURE) {
                        continue;
+               }
 
                /* compute barycentric coordinates for both collision points */
-               collision_compute_barycentric ( collpair->pa,
-                       cloth1->verts[collpair->ap1].tx,
-                       cloth1->verts[collpair->ap2].tx,
-                       cloth1->verts[collpair->ap3].tx,
-                       &w1, &w2, &w3 );
+               collision_compute_barycentric(collpair->pa,
+                                             cloth1->verts[collpair->ap1].tx,
+                                             cloth1->verts[collpair->ap2].tx,
+                                             cloth1->verts[collpair->ap3].tx,
+                                             &w1, &w2, &w3);
 
                /* was: txold */
-               collision_compute_barycentric ( collpair->pb,
-                       cloth1->verts[collpair->bp1].tx,
-                       cloth1->verts[collpair->bp2].tx,
-                       cloth1->verts[collpair->bp3].tx,
-                       &u1, &u2, &u3 );
+               collision_compute_barycentric(collpair->pb,
+                                             cloth1->verts[collpair->bp1].tx,
+                                             cloth1->verts[collpair->bp2].tx,
+                                             cloth1->verts[collpair->bp3].tx,
+                                             &u1, &u2, &u3);
 
                /* Calculate relative "velocity". */
-               collision_interpolateOnTriangle ( v1, 
cloth1->verts[collpair->ap1].tv, cloth1->verts[collpair->ap2].tv, 
cloth1->verts[collpair->ap3].tv, w1, w2, w3 );
+               collision_interpolateOnTriangle(v1, 
cloth1->verts[collpair->ap1].tv, cloth1->verts[collpair->ap2].tv, 
cloth1->verts[collpair->ap3].tv, w1, w2, w3);
 
-               collision_interpolateOnTriangle ( v2, 
cloth1->verts[collpair->bp1].tv, cloth1->verts[collpair->bp2].tv, 
cloth1->verts[collpair->bp3].tv, u1, u2, u3 );
+               collision_interpolateOnTriangle(v2, 
cloth1->verts[collpair->bp1].tv, cloth1->verts[collpair->bp2].tv, 
cloth1->verts[collpair->bp3].tv, u1, u2, u3);
 
                sub_v3_v3v3(relativeVelocity, v2, v1);
 
                /* Calculate the normal component of the relative velocity 
(actually only the magnitude - the direction is stor

@@ Diff output truncated at 10240 characters. @@

_______________________________________________
Bf-blender-cvs mailing list
[email protected]
https://lists.blender.org/mailman/listinfo/bf-blender-cvs

Reply via email to