Revision 084c6de by Lukas Toenne (gooseberry, gooseberry_farm, hair_immediate_fixes, hair_system, temp_constraint_volume, temp_hair_flow, temp_hair_modifiers, temp_motionpaths) September 8, 2014, 10:31 (GMT) |
Implemented a modifier conjugate gradient algorithm to support stable constraining. The algorithm is described in the paper "Large Steps in Cloth Simulation" (Baraff/Witkin 1998). The same method was (incorrectly) implemented in the old cloth solver. It is based on restricting the degrees of freedom (ndof) of vertices using a block matrix and a vector of target velocity deltas. See chapter 5 of the paper for details. |
Revision e189fc0 by Lukas Toenne (gooseberry, gooseberry_farm, hair_immediate_fixes, hair_system, temp_constraint_volume, temp_hair_flow, temp_hair_modifiers, temp_motionpaths) September 5, 2014, 15:07 (GMT) |
Reimplemented Goal springs for the Eigen CG solver method. Note that goal springs currently are really bad ... They have a factor on hairs that "fades" goal influence from the root to the tip. The last point on the hair is completely free, which makes the goal springs pretty much useless on their own without supporting bend stiffness. Can only assume this was added to compensate unphysical behavior of goal springs when using uniform weight, but it's a poor replacement for true localized bending forces ... |
Revision 4535a9d by Lukas Toenne (gooseberry, gooseberry_farm, hair_immediate_fixes, hair_system, temp_constraint_volume, temp_hair_flow, temp_hair_modifiers, temp_motionpaths) September 5, 2014, 11:02 (GMT) |
To make gravity a true force vector, multiply by the mass. |
Revision 854600a by Lukas Toenne (gooseberry, gooseberry_farm, hair_immediate_fixes, hair_system, temp_constraint_volume, temp_hair_flow, temp_hair_modifiers, temp_motionpaths) September 5, 2014, 10:48 (GMT) |
Alternative new solver for cloth using the Eigen CG solver instead of a custom built solver. The old cloth solver is broken unfortunately. Eigen is a designated linear algebra library and very likely their implementation is a lot better (can't compare until it's implemented though). Only basic gravity is active atm, spring forces, external force fields, damping and volumetric friction have to be added back by converting the data into the Eigen format. |
Revision f3be91c by Lukas Toenne (gooseberry, gooseberry_farm, hair_immediate_fixes, hair_system, temp_constraint_volume, temp_hair_flow, temp_hair_modifiers, temp_motionpaths) September 4, 2014, 17:58 (GMT) |
Don't try to enforce a velocity change for pinned vertices; their velocity is defined externally by hair root motion. |
Revision c4e00b1 by Lukas Toenne (gooseberry, gooseberry_farm, hair_immediate_fixes, hair_system, temp_constraint_volume, temp_hair_flow, temp_hair_modifiers, temp_motionpaths) September 4, 2014, 17:57 (GMT) |
Use squareroot of the current epsilon error target for CG, since we square this value anyway. |
Revision f5efcfd 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 4, 2014, 17:51 (GMT) |
WIP for overlay under sequencer strip view. |
Revision 21e1414 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 4, 2014, 15:43 (GMT) |
Fix cancelling trim not refreshing the view |
Revision 603392e 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 4, 2014, 13:51 (GMT) |
Allow trimming scenes as well. |
Revision b39b70a 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 4, 2014, 13:36 (GMT) |
Trim tool * Support slow trimming with shift * Give feedback on how many frames the input was trimmed |
Revision d2ece0d by Lukas Toenne (gooseberry, gooseberry_farm, hair_immediate_fixes, hair_system, temp_constraint_volume, temp_hair_flow, temp_hair_modifiers, temp_motionpaths) September 4, 2014, 13:06 (GMT) |
Disabled collision culling on the inside of the collider faces for now, this seems to remove too many contact points somehow ... |
Revision 6346a50 by Lukas Toenne (gooseberry, gooseberry_farm, hair_immediate_fixes, hair_system, temp_constraint_volume, temp_hair_flow, temp_hair_modifiers, temp_motionpaths) September 4, 2014, 13:05 (GMT) |
Fix for collision response, the impulse response was far too small. |
Revision 9faf240 by Lukas Toenne (gooseberry, gooseberry_farm, hair_immediate_fixes, hair_system, temp_constraint_volume, temp_hair_flow, temp_hair_modifiers, temp_motionpaths) September 4, 2014, 12:22 (GMT) |
Use the S matrix of the modifier CG algorithm for implementing collision responses. The S matrix together with the z Vector encodes the degrees of freedom of a colliding hair point and the target velocity change. In a collision the hair vertex is restricted in the normal direction (when moving toward the collider) and the collision dynamics define target velocity. |
Revision 010a52f by Lukas Toenne (gooseberry, gooseberry_farm, hair_immediate_fixes, hair_system, temp_constraint_volume, temp_hair_flow, temp_hair_modifiers, temp_motionpaths) September 4, 2014, 12:19 (GMT) |
Better contact point near-test for hair. This simply uses the position above the triangle instead of the intersection point of the vertex path. The other method was broken anyway, but also has a problem catching all the contacts reliably. The new method might have a few false positives but that is acceptable. |
Revision ecf2593 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 4, 2014, 10:55 (GMT) |
Force refresh when trimming. |
Revision 3d64c35 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 4, 2014, 10:50 (GMT) |
Trim operator, accessible through T key, also in Strip menu. It moves the contents of the strip around. Only tested with movie strips now, metastrips won't work. Also there might be some lingering bugs. Sonetimes refresh is needed to get contents showing up correctly. |
Revision 43b115f by Lukas Toenne (gooseberry, gooseberry_farm, hair_immediate_fixes, hair_system, temp_constraint_volume, temp_hair_flow, temp_hair_modifiers, temp_motionpaths) September 4, 2014, 08:34 (GMT) |
Fixed for hair collision detection, old/new positions were swapped. |
Revision dd4504e by Lukas Toenne (gooseberry, gooseberry_farm, hair_immediate_fixes, hair_system, temp_constraint_volume, temp_hair_flow, temp_hair_modifiers, temp_motionpaths) September 4, 2014, 07:45 (GMT) |
Reduced minimum for cloth solver substeps to 1. This is not very useful for artists, but helps with debugging. |
Revision 5efd4b5 by Lukas Toenne (gooseberry, gooseberry_farm, hair_immediate_fixes, hair_system, temp_constraint_volume, temp_hair_flow, temp_hair_modifiers, temp_motionpaths) September 4, 2014, 07:32 (GMT) |
Removed own debug print. |
Revision 302d912 by Lukas Toenne (gooseberry, gooseberry_farm, hair_immediate_fixes, hair_system, temp_constraint_volume, temp_hair_flow, temp_hair_modifiers, temp_motionpaths) September 4, 2014, 07:26 (GMT) |
Added a comment and use the new CG solver as the "official" version now. |
|