Revision 9f47e5d by Lukas Toenne (gooseberry, gooseberry_farm, hair_immediate_fixes, hair_system, temp_constraint_volume, temp_hair_flow, temp_hair_modifiers, temp_motionpaths) November 9, 2014, 11:13 (GMT) |
Merge branch 'master' into hair_immediate_fixes |
Revision ca66f44 by Campbell Barton (gooseberry, gooseberry_farm, hair_immediate_fixes, hair_system, temp_constraint_volume, temp_hair_flow, temp_hair_modifiers, temp_motionpaths) November 9, 2014, 00:01 (GMT) |
Fix for color-wire auto-contrast |
Revision e6d6cbc by Campbell Barton (gooseberry, gooseberry_farm, hair_immediate_fixes, hair_system, temp_constraint_volume, temp_hair_flow, temp_hair_modifiers, temp_motionpaths) November 8, 2014, 21:31 (GMT) |
Merge branch 'master' into gooseberry |
Revision 7f2f9f0 by Campbell Barton (gooseberry, gooseberry_farm, hair_immediate_fixes, hair_system, temp_constraint_volume, temp_hair_flow, temp_hair_modifiers, temp_motionpaths) November 8, 2014, 18:51 (GMT) |
Exposing customdata mask layer (CD_PAINT_MASK) to Python API There are several more or less new customdata layers that currently cannot be accessed via Python (or some are exposed via BMesh API but not via Mesh API). This patch aims to expose one of those layers - CD_PAINT_MASK. It'd be pretty useful for existing and future addons targeting sculpt workflow. Currently to get some access to the mask we employ a hackish approach via hiding/revealing masked vertices, this adds mode switches and doesn't allow to get actual mask values which could be useful if converted into vertex group weights for later use in e.g. modifiers. With this patch we'd be able to access mask data directly. Reviewers: campbellbarton Reviewed By: campbellbarton Subscribers: radcapricorn Projects: #bf_blender Differential Revision: https://developer.blender.org/D782 |
Revision 3c0aed7 by Lukas Toenne (gooseberry, gooseberry_farm, hair_immediate_fixes, hair_system, temp_constraint_volume, temp_hair_flow, temp_hair_modifiers, temp_motionpaths) November 8, 2014, 18:34 (GMT) |
Implemented PIC and FLIP methods for combining the fluid grid simulation with the Lagrangian hair model. |
Revision 66f5f67 by Lukas Toenne (gooseberry, gooseberry_farm, hair_immediate_fixes, hair_system, temp_constraint_volume, temp_hair_flow, temp_hair_modifiers, temp_motionpaths) November 8, 2014, 17:45 (GMT) |
Main solver step for generating a divergence-free hair velocity field on the grid. This uses the Eigen conjugate-gradient solver to solve the implicit Poisson equation for the pressure Laplacian: div(grad(p)) = div(v) As described in "Detail Preserving Continuum Simulation of Straight Hair" (McAdams, Selle, 2009). |
Revision 0161686 by Antonis Ryakiotakis (gooseberry, gooseberry_farm, hair_immediate_fixes, hair_system, temp_constraint_volume, temp_hair_flow, temp_hair_modifiers, temp_motionpaths, temp_widgets_c++_experiment, temp_widgets_files_refactor, temp_widgets_update_tagging, UI-experiments, wiggly-widgets) November 7, 2014, 17:12 (GMT) |
Allow separate widget data per editor. To make this work, we need separate type/instance for the widgets. This is a bit ugly but it is necessary if we want widgets on each editor to depend of per editor-options or visibility state. |
Revision 4e4c1a0 by Antonis Ryakiotakis (gooseberry, gooseberry_farm, hair_immediate_fixes, hair_system, temp_constraint_volume, temp_hair_flow, temp_hair_modifiers, temp_motionpaths, temp_widgets_c++_experiment, temp_widgets_files_refactor, temp_widgets_update_tagging, UI-experiments, wiggly-widgets) November 7, 2014, 11:52 (GMT) |
Support undo. Scale stays same for non-3D widgets |
Revision 70423fa by Lukas Toenne (gooseberry, gooseberry_farm, hair_immediate_fixes, hair_system, temp_constraint_volume, temp_hair_flow, temp_hair_modifiers, temp_motionpaths) November 7, 2014, 10:43 (GMT) |
Pampering the stupid MSVC compiler again, it fails to build valid C code. |
Revision c68eb20 by Campbell Barton (gooseberry, gooseberry_farm, hair_immediate_fixes, hair_system, temp_constraint_volume, temp_hair_flow, temp_hair_modifiers, temp_motionpaths) November 6, 2014, 14:36 (GMT) |
Merge branch 'master' into gooseberry |
Revision b69314c by Lukas Toenne (gooseberry, gooseberry_farm, hair_immediate_fixes, hair_system, temp_constraint_volume, temp_hair_flow, temp_hair_modifiers, temp_motionpaths) November 6, 2014, 14:14 (GMT) |
Added new header for Eigen utility classes. These make passing data between Eigen vector and matrix types and plain C arrays more convenient. |
Revision 68d8353 by Lukas Toenne (gooseberry, gooseberry_farm, hair_immediate_fixes, hair_system, temp_constraint_volume, temp_hair_flow, temp_hair_modifiers, temp_motionpaths) November 6, 2014, 14:08 (GMT) |
Updated a few comments. |
Revision a50706e by Lukas Toenne (gooseberry, gooseberry_farm, hair_immediate_fixes, hair_system, temp_constraint_volume, temp_hair_flow, temp_hair_modifiers, temp_motionpaths) November 6, 2014, 14:05 (GMT) |
Compile hair volumetrics code as C++, so we can use Eigen easier. |
Revision 16bb70a by Lukas Toenne (gooseberry, gooseberry_farm, hair_immediate_fixes, hair_system, temp_constraint_volume, temp_hair_flow, temp_hair_modifiers, temp_motionpaths) November 6, 2014, 13:57 (GMT) |
Minor debug code fix. |
Revision 29543af by Lukas Toenne (gooseberry, gooseberry_farm, hair_immediate_fixes, hair_system, temp_constraint_volume, temp_hair_flow, temp_hair_modifiers, temp_motionpaths) November 6, 2014, 13:12 (GMT) |
Use a fixed, uniform cell size for hair continuum grids. This is a bit more awkward for artists to use, but necessary for a stable solution of the hair continuum calculation. The grid size is defined by the user, the extent of the grid is then calculated based on the hair geometry. A hard upper limit prevents bad memory allocation in case too small values are entered. |
Revision 08c477a by Lukas Toenne (gooseberry, gooseberry_farm, hair_immediate_fixes, hair_system, temp_constraint_volume, temp_hair_flow, temp_hair_modifiers, temp_motionpaths) November 6, 2014, 11:36 (GMT) |
Removed unused voxel_filter_size DNA property. This is an artifact of earlier attempts to implement velocity smoothing, but doesn't work anyway. |
Revision cf28448 by Lukas Toenne (gooseberry, gooseberry_farm, hair_immediate_fixes, hair_system, temp_constraint_volume, temp_hair_flow, temp_hair_modifiers, temp_motionpaths) November 6, 2014, 11:32 (GMT) |
Renamed HairVertexGrid to HairGrid, since it's not actually storing hair vertex data. |
Revision 439c7e0 by Lukas Toenne (gooseberry, gooseberry_farm, hair_immediate_fixes, hair_system, temp_constraint_volume, temp_hair_flow, temp_hair_modifiers, temp_motionpaths) November 6, 2014, 11:28 (GMT) |
Removed unused "collider grid" struct from hair volumetrics. This is a leftover from previous approach of hair collisions (with insufficient results). The hair volumetrics actually implements "collision" with solid objects as well, but uses a Neumann boundary condition on the main grid for this purpose. |
Revision 7432efd by Lukas Toenne (gooseberry, gooseberry_farm, hair_immediate_fixes, hair_system, temp_constraint_volume, temp_hair_flow, temp_hair_modifiers, temp_motionpaths) November 6, 2014, 11:17 (GMT) |
Better grid rasterization method for hair volumetric grids. This is based on the paper "Detail Preserving Continuum Simulation of Straight Hair" (McAdams, Selle, Ward, 2009) The main difference is that hair line segments are used rather than only rasterizing velocity at the vertices. This gives a much better coverage of the hair volume grid, otherwise gaps can be produced at smaller grid cell sizes and the distribution is uneven along the hair curve. The algorithm for rasterizing is a variation of Bresenham's algorithm extended onto 3D grids. |
Revision 2a18501 by Antonis Ryakiotakis (gooseberry, gooseberry_farm, hair_immediate_fixes, hair_system, temp_constraint_volume, temp_hair_flow, temp_hair_modifiers, temp_motionpaths, temp_widgets_c++_experiment, temp_widgets_files_refactor, temp_widgets_update_tagging, UI-experiments, wiggly-widgets) November 5, 2014, 18:41 (GMT) |
Add mapping to properties for widgets. Still pretty much exploring the best way to move here but currently this works by wrapping objects in RNA pointers, pretty much like buttons do. Also modified the arrow widget for lamps to use the new code. The new "unmbrella" widget works now as expected for lamps - of course fine tuning is also needed. |
|