Blender Git Commits

Blender Git "temp_hair_modifiers" branch commits.

Page: 19 / 37

November 9, 2014, 11:13 (GMT)
Merge branch 'master' into hair_immediate_fixes
November 9, 2014, 00:01 (GMT)
Fix for color-wire auto-contrast
November 8, 2014, 21:31 (GMT)
Merge branch 'master' into gooseberry
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
November 8, 2014, 18:34 (GMT)
Implemented PIC and FLIP methods for combining the fluid grid simulation
with the Lagrangian hair model.
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).
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.
November 7, 2014, 11:52 (GMT)
Support undo. Scale stays same for non-3D widgets
November 7, 2014, 10:43 (GMT)
Pampering the stupid MSVC compiler again, it fails to build valid C code.
November 6, 2014, 14:36 (GMT)
Merge branch 'master' into gooseberry
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.
November 6, 2014, 14:08 (GMT)
Updated a few comments.
November 6, 2014, 14:05 (GMT)
Compile hair volumetrics code as C++, so we can use Eigen easier.
November 6, 2014, 13:57 (GMT)
Minor debug code fix.
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.
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.
November 6, 2014, 11:32 (GMT)
Renamed HairVertexGrid to HairGrid, since it's not actually storing
hair vertex data.
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.
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.
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.
By: Miika HämäläinenLast update: Nov-07-2014 14:18MiikaHweb | 2003-2021