I am trying to model viscous friction like seen in Karl Sims work on underwater virtual creatures.
I am therefore trying to model the drag forces of viscous drag on a mesh (with a rigidbody).
I can write an expression for the forces for a single point, and I have been using that in a simplified model, where I just have modelled the effect on a single triangle by using the triangles center and multiplied by its area. I model the drag from a triangle like this:
F_drag = -Dot(normal, point_velocity)*normal*some_constant
I have then applied the result on a rigidbody, by applying a position force onto my rigidbody. (I am using Unity3D by the way)
This works somewhat but I would like to do it a bit more detailed, so I have been attempting to integrate the expression over the surface of the individual triangles that make up the mesh. This presents me with two problems.
1) The first problem is that I can not just apply the result as a force on the rigidbody. Instead I think I need to write the expression as an effect on the velocity and angular velocity of the rigidbody directly. This has proven harder for me as it has forced me to look into how a force is transferred into these two values..I am currently working on this problem and I think I can make it work.
2) The second problem is that the expression I come up with turn very ugly when I integrate it. The way I integrate the expression is by expressing the force in the local space of the triangle and split the triangle in two triangles with a 90 degree angle. In this way I can write a double integral for each side of the triangle.
The problem this presents me with is that the expression contains a square root as the distance to the point has an effect on the resulting force. This makes the expression explode.
I am worried that I am approaching this in a wrong way and I am therefore on the lookoit for references for different approaches to solving the problem.
Currently im splitting the expression up solving it for the individual components. I wonder if there is a way to write in vector form and solve it in vector form, so it is not 6 isolated equations.
I assume this must have been done before by others more skilled than me, and I am therefore on the lookout for references to similar work.