Revision 0877273 by Lukas Toenne (gooseberry, gooseberry_farm, hair_immediate_fixes, hair_system, temp_constraint_volume, temp_hair_flow, temp_hair_modifiers, temp_motionpaths) September 3, 2014, 09:45 (GMT) |
Cleanup: No point in passing all the implicit solver arguments individually. |
Revision 570eb7f by Lukas Toenne (gooseberry, gooseberry_farm, hair_immediate_fixes, hair_system, temp_constraint_volume, temp_hair_flow, temp_hair_modifiers, temp_motionpaths) September 3, 2014, 09:34 (GMT) |
Cleanup: removed the unused olddV vectors from implicit solver data. |
Revision e167f9c by Antonis Ryakiotakis (gooseberry, gooseberry_farm, hair_immediate_fixes, hair_system, temp_constraint_volume, temp_hair_flow, temp_hair_modifiers, temp_motionpaths, terrible_consequencer, testbuild) September 3, 2014, 09:21 (GMT) |
Revert "Gooseberry feature request, allow select left-right strips operator to select all" This change has been in master all the time after all, exposed the operation better in master. This reverts commit 799f974668004b3d2b7873f51951eb22b5fcf2f3. |
Revision 3eed893 by Lukas Toenne (gooseberry, gooseberry_farm, hair_immediate_fixes, hair_system, temp_constraint_volume, temp_hair_flow, temp_hair_modifiers, temp_motionpaths) September 3, 2014, 09:20 (GMT) |
Some more debug elements for hair collisions. |
Revision b3a28d8 by Lukas Toenne (gooseberry, gooseberry_farm, hair_immediate_fixes, hair_system, temp_constraint_volume, temp_hair_flow, temp_hair_modifiers, temp_motionpaths) September 3, 2014, 09:17 (GMT) |
Extended line/face collision near-check, to allow for distance margins. The original BLI method for line/triangle intersection returns false in case the line does not actually intersect, but in order to generate repulsion forces we need to also handle contacts inside the margin. |
Revision 799f974 by Antonis Ryakiotakis (gooseberry, gooseberry_farm, hair_immediate_fixes, hair_system, temp_constraint_volume, temp_hair_flow, temp_hair_modifiers, temp_motionpaths, terrible_consequencer, testbuild) September 2, 2014, 17:23 (GMT) |
Gooseberry feature request, allow select left-right strips operator to select all strips independently of channel of the active strip. |
Revision 60a17cc by Antonis Ryakiotakis (gooseberry, gooseberry_farm, hair_immediate_fixes, hair_system, temp_constraint_volume, temp_hair_flow, temp_hair_modifiers, temp_motionpaths, terrible_consequencer, testbuild) September 2, 2014, 16:20 (GMT) |
Fix crash when setting parent. |
Revision cb1730d by Antonis Ryakiotakis (gooseberry, gooseberry_farm, hair_immediate_fixes, hair_system, temp_constraint_volume, temp_hair_flow, temp_hair_modifiers, temp_motionpaths, terrible_consequencer, testbuild) September 2, 2014, 16:03 (GMT) |
Merge branch 'master' into terrible_consequencer |
Revision 7c0be7b by Lukas Toenne (gooseberry, gooseberry_farm, hair_immediate_fixes, hair_system, temp_constraint_volume, temp_hair_flow, temp_hair_modifiers, temp_motionpaths) September 2, 2014, 13:03 (GMT) |
Fix bounce/repulse calculation. |
Revision b23828f by Lukas Toenne (gooseberry, gooseberry_farm, hair_immediate_fixes, hair_system, temp_constraint_volume, temp_hair_flow, temp_hair_modifiers, temp_motionpaths) September 2, 2014, 12:10 (GMT) |
Hair debugging: use "categories" (strings) for grouping debug elements and support clearing for categories. |
Revision 5c1d565 by Lukas Toenne (gooseberry, gooseberry_farm, hair_immediate_fixes, hair_system, temp_constraint_volume, temp_hair_flow, temp_hair_modifiers, temp_motionpaths) September 2, 2014, 10:49 (GMT) |
Fix for hair collision detection: need to use the second point of the timestep segment. This ensures the distance for a collision pair is the one of the current point position, and the response gets calculated accordingly. |
Revision 268d356 by Lukas Toenne (gooseberry, gooseberry_farm, hair_immediate_fixes, hair_system, temp_constraint_volume, temp_hair_flow, temp_hair_modifiers, temp_motionpaths) September 1, 2014, 16:49 (GMT) |
Use repulsion forces in combination with the one-time penalty forces in collision. |
Revision 54832f1 by Lukas Toenne (gooseberry, gooseberry_farm, hair_immediate_fixes, hair_system, temp_constraint_volume, temp_hair_flow, temp_hair_modifiers, temp_motionpaths) September 1, 2014, 16:47 (GMT) |
Fix for crash when going into particle edit mode with baked hair simulation. Note that this currently generates an extreme amount of points, by making a edit pathcache curve for each hair in every frame! But at least doesn't simply crash now. |
Revision 22245d0 by Lukas Toenne (gooseberry, gooseberry_farm, hair_immediate_fixes, hair_system, temp_constraint_volume, temp_hair_flow, temp_hair_modifiers, temp_motionpaths) September 1, 2014, 16:46 (GMT) |
Clear debug_data pointer in local cloth modifier data of the particle systems on blend file load. |
Revision 3a77ea6 by Lukas Toenne (gooseberry, gooseberry_farm, hair_immediate_fixes, hair_system, temp_constraint_volume, temp_hair_flow, temp_hair_modifiers, temp_motionpaths) September 1, 2014, 15:46 (GMT) |
Partial response force for hair collisions. This implements a penalty force as well as a repulsion force to avoid further penetration, as suggested in "Simulating Complex Hair with Robust Collision Handling" (http://graphics.snu.ac.kr/publications/2005-choe-HairSim/Choe_2005_SCA.pdf) Friction forces are still missing. More problematic is handling of moving colliders, when face swap places with the hair vertex and a collision is missed, putting the vertex inside the mesh volume. Larger margins might help, but ultimately using Bullet collision detection is probably more reliable and failsafe. |
Revision 1cce769 by Antonis Ryakiotakis (gooseberry, gooseberry_farm, hair_immediate_fixes, hair_system, temp_constraint_volume, temp_hair_flow, temp_hair_modifiers, temp_motionpaths, terrible_consequencer, testbuild) September 1, 2014, 13:51 (GMT) |
Merge branch 'master' into terrible_consequencer |
Revision 670ee4c by Lukas Toenne (gooseberry, gooseberry_farm, hair_immediate_fixes, hair_system, temp_constraint_volume, temp_hair_flow, temp_hair_modifiers, temp_motionpaths) August 30, 2014, 15:54 (GMT) |
Debug drawing for simulations, to aid in visualizing abstract data such as forces, velocities, contact points etc. This uses a hash table to store debug elements (dots, lines, vectors at this point). The hash table allows continuous display of elements that are generated only in certain time steps, e.g. contact points, while avoiding massive memory allocation. In any case, this system is really a development feature, but very helpful in finding issues with the internal solver data. |
Revision 881e2f8 by Lukas Toenne (gooseberry, gooseberry_farm, hair_immediate_fixes, hair_system, temp_constraint_volume, temp_hair_flow, temp_hair_modifiers, temp_motionpaths) August 30, 2014, 13:23 (GMT) |
Some initial collision code, without actual response forces still. This is still using the old BVH tree collision methods to generate contact points, similar to what cloth does. This should be replaced by a Bullet collision check, but generating contacts in this way is easier for now, and lets us test responses and stability (although in more complex collision cases the BVH method fails utterly, beside being terribly inefficient with many colliders). |
Revision 69f6ca6 by Lukas Toenne (gooseberry, gooseberry_farm, hair_immediate_fixes, hair_system, temp_constraint_volume, temp_hair_flow, temp_hair_modifiers, temp_motionpaths) August 29, 2014, 15:06 (GMT) |
Merge branch 'master' into hair_immediate_fixes |
Revision 42a02c6 by Lukas Toenne (gooseberry, gooseberry_farm, hair_immediate_fixes, hair_system, temp_constraint_volume, temp_hair_flow, temp_hair_modifiers, temp_motionpaths) August 28, 2014, 12:55 (GMT) |
Implemented internal hair pressure to prevent hair from collapsing in on itself. This uses the same voxel structure as the hair smoothing algorithm. A slightly different method was suggested in the original paper (Volumetric Methods for Simulation and Rendering of Hair), but this is based on directing hair based on a target density, which is another way of implementing global goals. Our own approach is to define a pressure threshold above which the hair is repelled in the density gradient direction to simulate internal pressure from collisions. |
|