Blender Git Loki

Blender Git "temp_hair_modifiers" branch commits.

February 9, 2015, 13:24 (GMT)
RNA for the modifiers list in ParticleSystem and basic UI code.
February 9, 2015, 13:24 (GMT)
List of particle modifiers in particle systems and read/write code.

Note: Ideally modifiers for particles should be part of the
`ParticleSettings` datablock instead of `ParticleSystem`. The problem
with this is that many modifiers, as they are implemented for meshes,
will store specific data that is associated to the object instance
in the scene. Storing modifiers in the settings would make this
impossible and require some complicated syncing between particle systems
and their settings.
February 9, 2015, 13:24 (GMT)
Bad hack: due to unintelligible linker errors, have to move bf_rna in
front of bf_editor_physics.

For some reason this seems to work for other bf_editor_* libs. Should be
fixed asap, but no working solution is known among core devs, so for now
have to do this to keep working.
February 9, 2015, 13:24 (GMT)
Fix for particle modifier type enum callback, was using mesh modifier
items.
February 9, 2015, 13:24 (GMT)
Basic UI elements and RNA option properties for particle modifiers.
February 9, 2015, 13:24 (GMT)
Register the particle modifier operators.
February 9, 2015, 13:24 (GMT)
RNA for particle modifiers.
February 9, 2015, 13:24 (GMT)
Operators for adding, removing and moving particle modifiers.
February 9, 2015, 13:24 (GMT)
Generalized the low-level `meshdeform_matrix_solve` function to make it
independent from the MeshDeform modifier.

The modifier is just used for error reports here, so can easily be
replaced by a callback.
February 9, 2015, 13:24 (GMT)
Simple infrastructure for registering particle modifier types, similar
to type registration of mesh modifiers.
February 9, 2015, 13:09 (GMT)
Use the final hair state instead of the initial state for constructing
paths.
February 9, 2015, 13:09 (GMT)
Update the world space location of final hair keys after applying
modifiers.
February 9, 2015, 13:09 (GMT)
Fix for unfreed duplicated hair key arrays when the number of hair keys
stays the same.
February 9, 2015, 13:09 (GMT)
Moved main shapekey evaluation for hair keys from the path caching
function to the new hair modifier evaluation.

This mirrors how shapekeys are treated as a "virtual" modifier at the
beginning of mesh modifier stack eval.
February 9, 2015, 13:09 (GMT)
Use the final hair state also as simulation input/output in hair sim.
February 9, 2015, 13:09 (GMT)
Added a second hair data layer to store modifier results.

This imitates the DerivedMesh principle from meshes. For hair the
modifiers will get the grooming or original growth result as input.
The result of the modifier eval will be written to the new data layer,
making a simple copy if modifiers are not used. Physics sim, rendering
and (depending of settings) drawing will then use the modified grooming
data.
February 9, 2015, 13:09 (GMT)
Reset function for the final hair state before calculating hair dynamics
and paths.

The integration with modifiers is still undefined: While it would be
nicer to have regular modifiers work on hair state as well, it is
probably not feasible with the current particle system, because all
these steps happen in a single update function. For integrating with
the modifier stack we would have to allow splitting this process into
individual parts, which is just not possible.
February 9, 2015, 13:09 (GMT)
Enum for particle system flags instead of old-school #defines.
February 9, 2015, 12:58 (GMT)
Integration of particle shapekeys with the depsgraph and driver eval.

It's a bit messy, but that is to be expected: all of the areas involved
(particles, shapekeys, depsgraph, drivers) are badly designed and
supposed to get major refactoring ...
February 6, 2015, 16:41 (GMT)
Merge branch 'master' into gooseberry
Tehnyt: Miika HämäläinenViimeksi päivitetty: 07.11.2014 14:18MiikaH:n Sivut a.k.a. MiikaHweb | 2003-2021