March 26, 2015, 13:10 (GMT) |
Refactoring of archive handling in readers/writers. Now instead of each reader/writer creating its own archive, the archive is created by the caller in advance and passed as a constructor argument. This means that multiple items can be stored together in the same archive. |
March 26, 2015, 13:10 (GMT) |
General support for export to/import from Alembic files based on Cache Libraries. |
March 26, 2015, 13:10 (GMT) |
Name string construction for cache items, to use as a unique identifier in the cache library. |
March 26, 2015, 13:10 (GMT) |
Deleted unimplemented parts of the previous pointcache system, to make refactoring simpler. Since the new approach is not tied to the old set of point cache data types there is really no need to carry their empty husks around. Once the new caching system is defined in detail we can add back whatever makes sense. |
March 26, 2015, 13:10 (GMT) |
Unlink and cleanup functions when objects or the cached group get unlinked or changed. |
March 26, 2015, 13:10 (GMT) |
Fix for undefined return value. |
March 26, 2015, 13:10 (GMT) |
Removed unused Scene pointer from the base Reader/Writer classes. |
March 26, 2015, 13:10 (GMT) |
Operator skeleton for a cache bake operator, using the job system. |
March 26, 2015, 13:10 (GMT) |
Disabled specialized Point Cache modifier handling in the modifier stack, this will be replaced and is not correct anyway. |
March 26, 2015, 13:10 (GMT) |
Removed unused line. |
March 26, 2015, 13:10 (GMT) |
Make sure cache item pointers are lib-linked correctly. |
March 26, 2015, 13:10 (GMT) |
Link main CacheLibrary pointers in readfile. |
March 26, 2015, 13:10 (GMT) |
Simple cache manager panel UI in the scene buttons. This is mostly a simple and unintrusive placeholder to have some way of making caches accessible, but needs some more thought. |
March 26, 2015, 13:10 (GMT) |
Missing include. |
March 26, 2015, 13:10 (GMT) |
New ID datablock 'CacheLibrary', for managing physical cache archives and files. At it's core this is just a file path, but many different cache users may refer to this, so having a dedicated ID block helps. It can be compared to Image datablocks, which also primarily are used for data on storage, but can be packed with the blend file, and carry some additional information that would be cumbersome to keep sync'ed otherwise. The name 'CacheLibrary' deliberately resembles the 'Library' datablock: just as a Library stores ID blocks in a physical file, a CacheLibrary stores cached data (in Alembic HDF5/Ogawa or other formats). Conflicts: source/blender/blenkernel/BKE_pointcache.h source/blender/blenkernel/intern/pointcache.c source/blender/makesdna/DNA_pointcache_types.h Conflicts: source/blender/makesrna/intern/rna_main_api.c |
March 26, 2015, 13:10 (GMT) |
BKE functions for managing cache content based on a group. This uses a complete hierarchy of group instances, based on a path hierarchy (object names). Putting |
March 26, 2015, 13:10 (GMT) |
Updated hash table for lookup of enabled cache items and added basic UI support. |
March 26, 2015, 13:10 (GMT) |
Improved collections in RNA for looping over potential caching items in the object group. |
March 26, 2015, 13:10 (GMT) |
Removed meaningless comment. |
March 26, 2015, 13:10 (GMT) |
Simplified cache item path description, based on plain ID blocks with subtype/index. This omits possible instancing and recursion by dupli groups, but since the data of instances is always the same in Blender at this point, there is little need to take them into account for caching. At some point in the future it may become desirable to store full dupli hierarchies in the cache, but it doesn't make sense to try to design a fully-fledged path descriptor for this hypothetical case now. |
|