October 16, 2014, 13:49 (GMT) |
Alembic support in the install_deps.sh script. This is a rough-and-ready way of building and installing the Alembic library and the necessary dependencies (excluding as much as possible for now). The Alembic cmake files are very badly constructed and require some annoying hacks atm. Eventually we might try to supply them with patches or write our own build scripts for Alembic. |
October 14, 2014, 15:44 (GMT) |
Merge branch 'master' into pointcache Conflicts: release/scripts/startup/bl_ui/properties_physics_common.py source/blender/blenkernel/BKE_blender.h source/blender/blenkernel/BKE_object.h source/blender/blenkernel/BKE_pointcache.h source/blender/blenkernel/intern/object.c source/blender/blenkernel/intern/particle.c source/blender/blenkernel/intern/particle_system.c source/blender/blenkernel/intern/pointcache.c source/blender/blenkernel/intern/rigidbody.c source/blender/blenkernel/intern/smoke.c source/blender/blenloader/intern/readfile.c source/blender/blenloader/intern/versioning_legacy.c source/blender/editors/physics/particle_edit.c source/blender/editors/physics/physics_pointcache.c source/blender/makesrna/intern/CMakeLists.txt source/blender/makesrna/intern/rna_fluidsim.c source/blender/modifiers/intern/MOD_cloth.c source/blender/modifiers/intern/MOD_collision.c source/blender/modifiers/intern/MOD_particleinstance.c source/blender/render/intern/source/pipeline.c source/blender/windowmanager/WM_api.h source/creator/CMakeLists.txt |
January 10, 2014, 10:56 (GMT) |
Let the smoke cache work on a smoke domain rather than the smoke modifier data. This is a bit cleaner, it avoids referring to modifiers which are a separate concern and will probably be replaced as the container for smoke data at some point anyway. |
January 10, 2014, 10:55 (GMT) |
Remaining RNA type mappings to pointcache readers/writers. |
December 8, 2013, 09:32 (GMT) |
Skeleton files for all remaining point cache user types, so we can start replacing the old point cache entirely. |
December 8, 2013, 08:02 (GMT) |
Moved object/modifier/sim resets out of the BKE_ptcache_id_reset function. This is a design cleanup, the point cache methods should only write to the DNA when retrieving state data. There were already a number of cases where such resets occured outside of this function (such as with rigid body worlds or smoke sims). The BKE_ptcache_object_reset function still exists and includes these reset calls, but there the cache user data types are accessed directly. |
December 8, 2013, 08:02 (GMT) |
Added XXX comment about the BAKING flag, left it in for now to not lose track of the purpose. |
December 8, 2013, 08:02 (GMT) |
Completely removed the "bake" operators for point cache. This feature will get a complete replacement, removing it altogether makes this much easier. |
December 8, 2013, 08:02 (GMT) |
Removed the SIMULATION_VALID flag entirely. This was only used by the bake operators. |
December 8, 2013, 08:02 (GMT) |
Marked the PTC_STATE_SIMULATION_VALID flag as deprecated. This is only used by the bake operator, but keeping track of the sync state of cache data vs. simulation settings needs to be radically simplified. The API should provide a way of detecting whether a valid simulation state can be obtained for a certain frame. /* check if a frame can be read from the cache (no data is modified) */ PTCReadSampleResult PTC_test_sample(struct PTCReader *reader, float frame); /* try to obtain a cache sample and write to DNA data */ PTCReadSampleResult PTC_read_sample(struct PTCReader *reader, float frame); Beyond that the cache should be oblivious of the simulation state. When settings or dependencies are changed which invalidate the simulation cache state this should invalidate all cache samples (or possible a certain frame range), but the cache itself should not need to keep track of the simulation as a whole. |
December 8, 2013, 08:02 (GMT) |
Removed the BAKED flag from point cache state. The cached now has a new flag LOCK_SETTINGS instead, which should indicate more clearly that it is about preventing cache modification by disabling user settings changes. The cache should not have to care about this setting in the first place. It becomes increasingly difficult to control changed simulation settings anyway (scripting!), and the cache should not even try to exert control over sims this way. Eventually this flag should be a feature of simulations and modifiers, using it as a 3rd option beside enabled/disabled and using only existing cached data. |
December 8, 2013, 08:02 (GMT) |
Partial cleanup of the point cache UI panel, using a number of booleans to store all the stupifying special cases. Not complete and will need a general overhaul anyway ... |
December 8, 2013, 08:02 (GMT) |
Make the archive file name construction based on PointCache settings internal to the path utility function. |
December 8, 2013, 08:02 (GMT) |
Unused function parameter. |
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) |
Removed or disabled remaining BKE_pointcache calls in particle_system. Only DNA read(!) access to PointCache is allowed (otherwise would have to wrap all the flag checks etc., this could be done later still). Particle edit mode uses a lot of badly designed point cache DNA writing, so for now is disabled (or broken). |
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) |
Build the archive filename inside the base Reader/Writer constructor from info in the PointCache. This way we can replace it more flexibly with other data streams, packed files, memory buffers etc. |
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) |
Removed the types.h file, not used and doesn't have a clear purpose. |
|