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. |
Revision 4599123 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, 21:49 (GMT) |
Fixed implementation of the Conjugate Gradient method for the cloth solver that properly supports constraints with some degrees-of-freedom. The previous solver implementation only used the S matrix (constraint filter matrix) for pinning vertices, in which case all elements are zero and the error doesn't show up. With partial constraints (useful for collision contacts) the matrix has non-zero off-diagonal elements and the algorithm easily diverges. There are also initial steps for implementing collision prevention as described in the Baraff/Witkin paper "Large Steps in Cloth Simulation" (http://www.cs.cmu.edu/~baraff/papers/sig98.pdf). |
Revision 92bda4d 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, 15:12 (GMT) |
Hair collision: Use the S matrix for enforcing contact constraints. This is a first test, the contacts are very explosive atm because they basically pin hair vertices globally on collision, which leads to stretching of the springs which is then suddenly released in the next frame. |
Revision 458fcfd 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, 14:47 (GMT) |
Minor corrections: * Add some comments to better describe what some numbers mean * Fix cuddliness and parent position of strips |
Revision 0796c10 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, 13:44 (GMT) |
Preparation for collision code fixing. Instead of handling contact tests and collision response in the same function in collision.c, first generate contact points and return them as a list, then free at the end of the stepping function. This way the contact response can be integrated into the conjugate gradient method properly instead of using the hackish and unstable double evaluation that is currently used. |
Revision cfea750 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, 11:43 (GMT) |
Cleanup: added some comments to the members of Implicit_Data. |
Revision 509d516 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, 10:27 (GMT) |
Merge branch 'master' into terrible_consequencer |
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. |
|