Blender Git Commits

Blender Git "tmp_hair_curves" branch commits.

Page: 18 / 19

April 20, 2015, 10:11 (GMT)
Moved code for the hair edit data structures to blenkernel.

This makes it work more like editmesh, and avoid the awkward and
basically bad-level approach in particles, where the edit data is an
anonymous pointer in particle systems together with a callback for
freeing.

Conflicts:
source/blender/blenkernel/CMakeLists.txt
April 20, 2015, 10:11 (GMT)
New edit mode for hair.

Conflicts:
source/blender/blenloader/intern/readfile.c
April 20, 2015, 10:10 (GMT)
New editor library for hair edit mode.
April 20, 2015, 10:10 (GMT)
Minor syntax fix.
April 20, 2015, 10:10 (GMT)
Shifted the dispatch from the algorithm side to the storage side of the
sampling system to keep the code simple.

Now there is a MSurfaceSampleStorage struct that encodes the storage
details, which the algorithms don't have to care about.
April 20, 2015, 10:10 (GMT)
More work on particle conversion methods for hair edit mode.
April 20, 2015, 10:10 (GMT)
Finished the particle-to-edit conversion function.
April 20, 2015, 10:10 (GMT)
Added a bool return to the eval function to give feedback on invalid
samples.
April 20, 2015, 10:10 (GMT)
Added a basic RNA definition for the mesh sampling system.
April 20, 2015, 10:10 (GMT)
Changed mesh sample definition to use 3 vertex weights instead of a
face index. This is easier to sample uniformly and avoids the need for
tesselation for evaluating.
April 20, 2015, 10:10 (GMT)
Usable random distribution algorithm.

Does not include area weighting yet.
April 20, 2015, 10:10 (GMT)
Added generalized method for creating an array of mesh samples with
arbitrary stride.
April 20, 2015, 10:10 (GMT)
Eval function to get a location and normal vector from mesh samples.
April 20, 2015, 10:10 (GMT)
Normalize the normal vector after sample eval to account for
interpolation.
April 20, 2015, 10:10 (GMT)
Skeleton code for sampling meshes.

Conflicts:
source/blender/blenkernel/CMakeLists.txt
December 5, 2014, 11:17 (GMT)
Merge remote-tracking branch 'github_lukastoenne/mesh_samples' into mesh_samples
December 5, 2014, 10:23 (GMT)
Merge branch 'master' into mesh_samples
December 1, 2014, 14:10 (GMT)
Mesh sampling system for unified point-on-mesh handling.

This code is not yet used by any feature in master, but has proved very useful in the Gooseberry branch and several WIP patches. Inclusion into master was requested to avoid diverging code in branches and get part of the Gooseberry code merged early on.

The core idea is to have a common way of identifying points on mesh surfaces. Efficient evaluation of such points after deformation and mappable modifiers (e.g. subdivision) tracks positions, normals and other surface attributes. This is used extensively in the particle/hair systems and could be useful for certain tools, duplicators, etc.. Currently the particle systems in particular are very fragile and succeptible to mesh changes because of the unreliable way mesh surface mapping is stored. While the new system at this point uses essentially the same method, it at least provides a centralized DNA type that can be improved easily without too much effort and compatiblity issues.

In addition to evaluating surface samples the system also provides a central place to implement surface sampling algorithms, such as random sampling, ray casting, paint-like tools, etc.

Differential Revision: https://developer.blender.org/D922
December 1, 2014, 13:42 (GMT)
Fix for uninitialized return value.
December 1, 2014, 13:41 (GMT)
Better feedback about valid sample from mesh sampling methods.

Conflicts:
source/blender/editors/object/object_shapekey.c
By: Miika HämäläinenLast update: Nov-07-2014 14:18MiikaHweb | 2003-2021