February 1, 2017, 03:15 (GMT) |
Implement velocity based adaptive step size calculation |
January 31, 2017, 19:32 (GMT) |
Implement usage of dt property (preparation for adaptive time steps) |
January 31, 2017, 05:14 (GMT) |
Use impulse clustering for self collisions Also adjust impulse scaling to work better with the new clustering. |
January 31, 2017, 03:53 (GMT) |
Use optimized approximated impulse clustering |
January 31, 2017, 03:39 (GMT) |
Implement directional cluster based impulse pruning |
January 30, 2017, 05:47 (GMT) |
Optimization: Use inertial solve for pre-collision Instead of doing a full implicit pre-collision solve, do a simple inertial solve (avance using velocities from previous step), this saves time by doing one less solve per step, and also improves resting stability by eliminating the influence of external forces disturbing the mesh in contacting areas. This improves general cloth performance by about 30-40% in relation to the new cloth code, and improves performance by about 3 times in relation to the original cloth code. This also makes collisions more reliable by removing the need for positional interpolation, and thus decreases the number of subframes required for a successful solve. |
January 29, 2017, 22:40 (GMT) |
Optimization: Use static BVH for collision intersection No need to use moving BVH for intersection checking, as in the end collisions are only evaluated at the next state anyway, so can use static BVH to reduce the amount of intersections to check. Moving BVH will only make sense if ccd is implemented. |
January 29, 2017, 22:35 (GMT) |
Use pre-solved locations for col response evaluation |
January 28, 2017, 04:40 (GMT) |
Bring back impulse scaled repulses It seems I was a bit too optimistic in thinking that just distance based repulses could handle contacts nicely. Turns out impulse scaled repulses really have enough of an influence in making the collision response more effective, that it is worth keeping it for now, even if at the cost of a very slight stability reduction and and a bit of an increase in collision elasticity. I hope to come up with a better solution, and elliminate this, after cluster based impulse pruning is implemented. |
January 24, 2017, 02:25 (GMT) |
Fix regression on sewing springs caused by plasticity |
January 23, 2017, 19:25 (GMT) |
Remove epsilon from velocity conditional. Also added a comment about the wrong duplicate impulse elimination being used. |
January 22, 2017, 06:00 (GMT) |
Fix mistake with backside relative velocities also removed unused include... |
January 21, 2017, 02:46 (GMT) |
Enable compression springs for hair |
January 20, 2017, 04:31 (GMT) |
Clean-up some collision data allocation stuff Self collision pointer logic has been simplified and allocations reduced, as it only collides with one object (self). Also, allocation size for all collisions has been reduced to 1/4, because it was allocating extra space for deprecated stuff. |
January 20, 2017, 04:03 (GMT) |
Implement self col groups for new self col system |
January 20, 2017, 02:42 (GMT) |
Remove edgeset stuff (no longer used) |
January 20, 2017, 00:12 (GMT) |
Remove unused selfbvh stuff |
January 20, 2017, 00:10 (GMT) |
Move use_normal to col object settings (was in cloth settings) |
January 20, 2017, 00:08 (GMT) |
Use proper friction property for self col and redesign col UI |
January 19, 2017, 23:23 (GMT) |
Separate self collision distance from object collision distance |
|