Revision 2f1192d by Lukas Toenne (gooseberry, gooseberry_farm, hair_immediate_fixes, hair_system, temp_constraint_volume, temp_hair_flow, temp_hair_modifiers, temp_motionpaths) October 31, 2014, 15:30 (GMT) |
Removed arbitrary factor 2.0 on volumetric hair friction factor. This was introducing energy into the system for any factor beyond 0.5 and caused major instability. |
Revision ff15a79 by Lukas Toenne (gooseberry, gooseberry_farm, hair_immediate_fixes, hair_system, temp_constraint_volume, temp_hair_flow, temp_hair_modifiers, temp_motionpaths) October 31, 2014, 14:20 (GMT) |
Fill the hair volume grid with the _new_ velocities from the first solver step, instead of using the previous step's velocities. |
Revision 2a5556b by Antonis Ryakiotakis (gooseberry, gooseberry_farm, hair_immediate_fixes, hair_system, temp_constraint_volume, temp_hair_flow, temp_hair_modifiers, temp_motionpaths, viewport_experiments) October 31, 2014, 13:45 (GMT) |
Merge branch 'master' into viewport_experiments |
Revision bcc5c1b by Lukas Toenne (gooseberry, gooseberry_farm, hair_immediate_fixes, hair_system, temp_constraint_volume, temp_hair_flow, temp_hair_modifiers, temp_motionpaths) October 31, 2014, 13:23 (GMT) |
Debug drawing feature to visualize the hair continuum grid. |
Revision 53e624c by Lukas Toenne (gooseberry, gooseberry_farm, hair_immediate_fixes, hair_system, temp_constraint_volume, temp_hair_flow, temp_hair_modifiers, temp_motionpaths) October 31, 2014, 10:59 (GMT) |
Perform grid-based velocity smoothing for hair outside of the implicit solver step. Calculating forces and jacobians from linearly interpolated grid values is problematic due to discontinuities at the grid boundaries. The new approach of modifying velocities after the backward euler solver step was suggested in a newer paper "Detail Preserving Continuum Simulation of Straight Hair" (McAdams, Selle 2009) |
Revision a3b9dbf by Campbell Barton (gooseberry, gooseberry_farm, hair_immediate_fixes, hair_system, temp_constraint_volume, temp_hair_flow, temp_hair_modifiers, temp_motionpaths) October 30, 2014, 21:34 (GMT) |
Merge branch 'master' into gooseberry |
Revision 20ae92b by Campbell Barton (gooseberry, gooseberry_farm, hair_immediate_fixes, hair_system, temp_constraint_volume, temp_hair_flow, temp_hair_modifiers, temp_motionpaths) October 30, 2014, 15:26 (GMT) |
Experimental color wire-frame (for testing in the studio) |
Revision 82f30be by Campbell Barton (gooseberry, gooseberry_farm, hair_immediate_fixes, hair_system, temp_constraint_volume, temp_hair_flow, temp_hair_modifiers, temp_motionpaths) October 30, 2014, 15:17 (GMT) |
Fix for warnings/errors |
Revision ad47b5a by Lukas Toenne (gooseberry, gooseberry_farm, hair_immediate_fixes, hair_system, temp_constraint_volume, temp_hair_flow, temp_hair_modifiers, temp_motionpaths) October 30, 2014, 15:02 (GMT) |
Merge branch 'master' into hair_immediate_fixes |
Revision 0015143 by Lukas Toenne (gooseberry, gooseberry_farm, hair_immediate_fixes, hair_system, temp_constraint_volume, temp_hair_flow, temp_hair_modifiers, temp_motionpaths) October 30, 2014, 14:59 (GMT) |
Removed unused variable. |
Revision 1556753 by Lukas Toenne (gooseberry, gooseberry_farm, hair_immediate_fixes, hair_system, temp_constraint_volume, temp_hair_flow, temp_hair_modifiers, temp_motionpaths) October 30, 2014, 14:59 (GMT) |
Reorganizing hair dynamics UI layout a bit to make settings slightly more intuitive. Also removed a couple of unused or useless features from the UI: * collider friction is unused and replaced in favor of true collision * spring damping refers to structural springs (stretch), which is not noticable in hair due to extreme stiffness atm. * pressure factors are not sure since this feature is too unstable atm. |
Revision 2224220 by Lukas Toenne (gooseberry, gooseberry_farm, hair_immediate_fixes, hair_system, temp_constraint_volume, temp_hair_flow, temp_hair_modifiers, temp_motionpaths) October 30, 2014, 14:59 (GMT) |
Unified the main Eigen solver function a bit for constrained/unconstrained solver variants. |
Revision 2f1631f by Lukas Toenne (gooseberry, gooseberry_farm, hair_immediate_fixes, hair_system, temp_constraint_volume, temp_hair_flow, temp_hair_modifiers, temp_motionpaths) October 30, 2014, 14:59 (GMT) |
Moved render simplification function for particle distribution into the distribution code. |
Revision 356ed34 by Lukas Toenne (gooseberry, gooseberry_farm, hair_immediate_fixes, hair_system, temp_constraint_volume, temp_hair_flow, temp_hair_modifiers, temp_motionpaths) October 30, 2014, 14:59 (GMT) |
Disabled the hair preview feature in the code, due to limited usefulness. Interpolating hairs in a meaningful way is a quite difficult problem. It works ok-ish for child hairs as long as they don't move, but with motion the direction of interpolated hairs can become quite nonsensical quickly. Probably a better way to create simulation previews is to limit simulation to a particular well-defined area (like render preview borders), but run it in full detail in that area. The error from omitting some interaction should still be much less than orientation errors from interpolation. |
Revision 4e38d9d by Lukas Toenne (gooseberry, gooseberry_farm, hair_immediate_fixes, hair_system, temp_constraint_volume, temp_hair_flow, temp_hair_modifiers, temp_motionpaths) October 30, 2014, 14:59 (GMT) |
Updating Eigen implicit dynamics solver implementation to adhere to the new mass-spring solver API. |
Revision 7a59a58 by Lukas Toenne (gooseberry, gooseberry_farm, hair_immediate_fixes, hair_system, temp_constraint_volume, temp_hair_flow, temp_hair_modifiers, temp_motionpaths) October 30, 2014, 14:59 (GMT) |
Removed unused line. |
Revision bbddc2c by Lukas Toenne (gooseberry, gooseberry_farm, hair_immediate_fixes, hair_system, temp_constraint_volume, temp_hair_flow, temp_hair_modifiers, temp_motionpaths) October 30, 2014, 14:59 (GMT) |
New hair editing feature "Shape Cut", for cutting hair based on a mesh shape instead of a brush tool. The brush cutting tool for hair, while useful, is not very accurate and often requires rotating the model constantly to get the right trimming on every side. This makes adjustments to a hair shape a very tedious process. On the other hand, making proxy meshes for hair shapes is a common workflow. The new operator allows using such rough meshes as boundaries for hair. All hairs that are outside the shape mesh are removed, while those cutting it at some length are shortened accordingly. The operator can be accessed in the particle edit mode toolbar via the "Shape Cut" button. The "Shape Object" must be set first and stays selected as a tool setting for repeatedly applying the shape. |
Revision d1be548 by Lukas Toenne (gooseberry, gooseberry_farm, hair_immediate_fixes, hair_system, temp_constraint_volume, temp_hair_flow, temp_hair_modifiers, temp_motionpaths) October 30, 2014, 14:59 (GMT) |
Switched back to blender implicit solver for merge. |
Revision d482381 by Lukas Toenne (gooseberry, gooseberry_farm, hair_immediate_fixes, hair_system, temp_constraint_volume, temp_hair_flow, temp_hair_modifiers, temp_motionpaths) October 30, 2014, 14:59 (GMT) |
Moved particle code for distributions into own file to make hacking easier. This code is badly broken and needs to be replaced, but at least having a workable code structure might help with quick hacks to fix the worst cases. |
Revision e57d3af by Lukas Toenne (gooseberry, gooseberry_farm, hair_immediate_fixes, hair_system, temp_constraint_volume, temp_hair_flow, temp_hair_modifiers, temp_motionpaths) October 30, 2014, 14:59 (GMT) |
Ported the remaining implicit solver functions for Eigen. Also added a couple of utility wrapper functions for Eigen types to make interfacing with plain float arrays and blenlib math easier. |
|