Blender Git Commits

Blender Git commits from all branches.

Page: 2693 / 2888

December 8, 2013, 08:02 (GMT)
Moved remaining state variables of the PointCache DNA struct into the
PointCacheState struct.
December 8, 2013, 08:02 (GMT)
Unused function parameter.
December 8, 2013, 08:02 (GMT)
Cleanup and restructuring: New 'state' struct in PointCache of type
PointCacheState, which holds all the non-user-defined state variables
for baking and validity. This has its own flags, so the state flags are
conceptually separated from the user-defined options.

The old flags are still in the DNA for backward compatibility mapping,
with an underscore prefix and _DEPRECATED suffix so they are not used
accidentally and name collision is avoided.
December 8, 2013, 08:02 (GMT)
Moved the compression enum items for point cache into a true enum
typedef instead of using #defines.
December 8, 2013, 08:02 (GMT)
'READ_OLD' cache return value translates to READ_CACHE_EARLY now,
meaning the requested frame/time value is before the first valid sample.
December 8, 2013, 08:02 (GMT)
Basic point cache reading for particles.

This currently requires exporting the Alembic archive. The automatic
caching is not yet implemented and may require some changes to account
for the sequential write limitations in Alembic and do some stitching
of old/new cache files.

Error handling is also rudimentary atm, the reader ErrorHandler::Policy
is just verbose printing atm. This happens a lot during export.
December 8, 2013, 08:02 (GMT)
Removed the types.h file, not used and doesn't have a clear purpose.
December 8, 2013, 08:02 (GMT)
Utility class for mapping Blender frames to a generic time scale.
This is used by writers and readers to convert frame numbers into time
values for the Alembic time sampling methods.
December 8, 2013, 08:02 (GMT)
Store the scene pointer directly in reader/writer base class. This is
required for a variety of uses, mostly related to fps calculation atm.
December 8, 2013, 08:02 (GMT)
Utility function PTC::Reader for getting the stored frame range.

The way this works is currently not ideal, it takes the start/end times
used by Alembic and then multiplies by the scene fps to convert into
frames. It might be better to use the sample numbers directly, but
we cannot associate these directly to frames so far.
December 8, 2013, 08:02 (GMT)
Removed unused PTC elements from the blenkernel BKE_pointcache header.
All new point cache stuff is in its own pointcache folder to keep it
clean.
December 8, 2013, 08:02 (GMT)
Removed deprecated DNA data.

This will break forward compatibility, but this is broken either way,
there's no way we can smoothly convert new point cache data into the old
format without considerable effort. It's just a few settings for cache
behavior anyway, no valuable user work getting lost.
December 8, 2013, 08:02 (GMT)
Made the PTCACHE_DISK_CACHE flag deprecated and removed all uses. This
is assumed to be TRUE always, all caches are disk-based now, which
removes a lot of complexity from constant double-checking. Eventually
disk caches can be integrated into .blend files, but this will be a
secondary feature instead of an alternative format for caches, so we
don't have to implement every function in 2 different ways.
December 8, 2013, 08:02 (GMT)
Removed a few unused variables.
December 8, 2013, 08:02 (GMT)
Removed remaining pointcache->mem_cache access in particles. Instead the
particle system should now use its own local mem_cache list for storing
cache data in memory. The actual PointCache struct does not make this
distinction any more.

Eventually the particle system should have clean methods for reading
cache data into other structures for editing and displaying cache data,
but this can not be cleaned up easily without major refactoring. For now
the important thing is to keep psys away from the PointCache internals
so we can implement a nice API for it without psys interfering.
December 8, 2013, 08:02 (GMT)
Replaced the mem_cache pointer in PointCache by a custom ListBase in
ParticleSystem PTCacheEdit for the particle edit mode. This is probably
broken like hell, but need to get rid of this for a clean point cache
API. Have to come back to particle edit mode later once we have proper
point cache in place.
December 8, 2013, 08:02 (GMT)
Pass ListBase mem_cache as an explicit argument to the point cache
conversion methods. This will no longer be stored in the PointCache
DNA struct (all caches are disk based now).

ParticleSystem stores this as a separate list now, so it can keep using
it in edit mode and for trails drawing.
December 8, 2013, 08:02 (GMT)
Removed the disk/memory toggle for point cache.
December 8, 2013, 08:02 (GMT)
Removed mem_cache access in pointcache.c, i.e. assume that the
PTCACHE_DISK_CACHE flag is always set.
December 8, 2013, 08:02 (GMT)
Disabled readfile/writefile code for memory point cache. In future all
caches will be assumed to be disk caches, with the option of packing
them into .blend files.
By: Miika HämäläinenLast update: Nov-07-2014 14:18MiikaHweb | 2003-2021