Blender Git Loki

Blender Git commits from all branches.

Page: 2337 / 2888

March 23, 2015, 11:23 (GMT)
Nicer info printing support for instances in Alembic files.

This now avoids repetition of internal instance structure.
March 23, 2015, 11:23 (GMT)
Fix for invalid ob->data access in case non-mesh objects are in the
cached group.
March 23, 2015, 11:23 (GMT)
Improved edge attribute caching.

Now edges should be fully restored from cache, fixing edge display.
March 23, 2015, 11:23 (GMT)
Omit hair path lengths for anything but the first sample.

We can safely assume that paths don't change their lengths. This might
safe some cache space.
March 23, 2015, 11:23 (GMT)
Fix for particle pathcache caching: have to check the psys->renderdata
pointer to figure out if we are evaluating with render settings.
March 23, 2015, 11:23 (GMT)
Fix for some archive checks to make sure we don't access invalid data.

This can happen if the archive file cannot be opened for some reason.
March 23, 2015, 11:23 (GMT)
Implementation of MDeformVert customdata layers in Alembic.
March 23, 2015, 11:23 (GMT)
Fix for name collisions in compound properties when writing CustomData.

This is not clearly documented for Alembic, but apparently properties
inside compounds still need to be name uniquely for the whole object.
This is somewhat involved for Blender's CustomData, because we have
5 different customdata elements for meshes (vert, edge, face, poly,
loop) and each of these can have the same types and multiple layers of
the same type ...
March 23, 2015, 11:23 (GMT)
Fix for Alembic info printer printing to std::cout instead of the
internal stringstream.
March 23, 2015, 11:23 (GMT)
Fix for potential size issue: need 64 bits for CustomDataMask types.
March 23, 2015, 11:23 (GMT)
Nicer error handling for unimplemented CustomData layer types.

Instead of failing an assert, simply print an error message and return
gracefully. We don't want Blender crashing because of this.
March 23, 2015, 11:23 (GMT)
Ugly hack for caching code to deal with quirky modifier stack behavior.

CustomData layers are pruned by the CDDM_copy function when they have
CD_FLAG_NOCOPY set. This is based on later modifiers in the stack, which
can specify that they require certain data layers - but the caching
modifier itself should store only what is needed by later modifiers.
It means we cannot easily keep a full copy of the DM in the cache
modifier to writing into caches later.

For now the hackish solution is to temporarily disable NOCOPY flags when
copying the DM. This is really not nice and needs a better solution.
March 23, 2015, 11:23 (GMT)
Support CD_ORIGSPACE layer caching.

This is needed by particles for distributions on meshes with changed
topology (which is of course broken).
March 23, 2015, 11:23 (GMT)
Tessface customdata for derived mesh caching.
March 23, 2015, 11:23 (GMT)
Support for CustomData in Alembic caches.

This is a skeleton feature that provides a general way of storing
CustomData types. Currently only ORIGINDEX layers are implemented, the
code is designed to make extension easy.

Storing CustomData layers in Alembic is a bit involved because the
complex structs often used as customdata need to be de-interleaved for
Alembic into a set of POD (plain-old-datatype) array properties.

In addition the property names should be unique, so that mapping abc
properties back to customdata layers is safe. This works by using 2
levels of compound properties: the first level stored per CD type
properties, with a number of properties for each layer of this type,
using either a name or index (for unnamed layers). The internal
properties can then in turn be compounds, if structs need to be
serialized into PODs.

Abc property readers/writers are created dynamically for the CustomData
compounds. This is necessary because we don't know in advance what kind
of data layers a DerivedMesh or other CD user will have, and this can
change each frame in theory. Alembic is easier with state data schemes,
but using it this way is possible (if somewhat cumbersome).
March 23, 2015, 11:23 (GMT)
Fix for cache item filtering: items can be part of the cache library
but disabled, in that case hide them as well.
March 23, 2015, 11:23 (GMT)
Fixed test for "render" eval mode for hair dynamics.

This is totally weird and convoluted, no idea if correct.

Conflicts:
source/blender/blenkernel/intern/particle_system.c
March 23, 2015, 11:23 (GMT)
Removed the DM writer/reader from hair dynamics again, this is part of
the particle stuff and does not work.
March 23, 2015, 11:23 (GMT)
Archive Info operator for Cache Library archives.

This creates a string with information about all the objects and
properties contained within a (Alembic) archive, used by a cache
library.

The operator has 3 modes of presenting the info string:
- stdout, ie. printing to the terminal
- popup window (not very useful usually due to size limits and lack of
scrolling)
- clipboard copy
March 23, 2015, 11:23 (GMT)
Use a combined class for hair dynamics for cloth and mesh data.

Particles store a copy of the DM internally as the emitter.
Tehnyt: Miika HämäläinenViimeksi päivitetty: 07.11.2014 14:18MiikaH:n Sivut a.k.a. MiikaHweb | 2003-2021