Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.blender.org/blender.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2017-04-28Alembic: use object-oriented approach in ABC_read_mesh()Sybren A. Stüvel
This is easier to extend than the if/else if/else chain that was in place, and allows for somewhat more granular error messages.
2017-04-28Alembic: Construct ISampleSelector once and pass alongSybren A. Stüvel
2017-04-25Revert "Alembic: Construct ISampleSelector once and pass along"Sybren A. Stüvel
This reverts commit 099816587a0e064fb6a52c82a737ae8814cf21df. It had some unforseen side-effects that should be investigated first.
2017-04-21Alembic: Construct ISampleSelector once and pass alongSybren A. Stüvel
No longer passing time as float and constructing ISampleSelectors all over the place. Instead, just construct an ISampleSelector once and pass it along.
2016-12-01Alembic: quiet compilation warnings on Windows.Kévin Dietrich
Most of them are harmless implicit conversions (e.g. Alembic deals with doubles for storing time information when Blender uses both ints and floats/doubles) or class/struct mismatch on forward declarations.
2016-11-30Fix T49813: crash after changing Alembic cache topology.Kévin Dietrich
Crash is due by mismatching loops and faces counts between the Alembic data and the Blender derivedmesh which does not appear so straightforward to fix (the crash happens deep in the derivedmesh code). So for now, try to detect if the topology has changed and if so, both only read vertices (vertex colors and UVs won't be read, as tied to face loops) and add a warning message in the modifier's UI to let the user know.
2016-10-29Alembic: store a pointer to the object reader in the cache modifiers andKévin Dietrich
constraints. This avoids traversing the archive everytime object data is needed and gives an overall consistent ~2x speedup here with files containing between 136 and 500 Alembic objects. Also this somewhat nicely de- duplicates code between data creation (upon import) and data streaming (modifiers and constraints). The only worying part is what happens when a CacheFile is deleted and/or has its path changed. For now, we traverse the whole scene and for each object using the CacheFile we free the pointer and NULL-ify it (see BKE_cachefile_clean), but at some point this should be re-considered and make use of the dependency graph.
2016-08-06Basic Alembic supportKévin Dietrich
All in all, this patch adds an Alembic importer, an Alembic exporter, and a new CacheFile data block which, for now, wraps around an Alembic archive. This data block is made available through a new modifier ("Mesh Sequence Cache") as well as a new constraint ("Transform Cache") to somewhat properly support respectively geometric and transformation data streaming from alembic caches. A more in-depth documentation is to be found on the wiki, as well as a guide to compile alembic: https://wiki.blender.org/index.php/ User:Kevindietrich/AlembicBasicIo. Many thanks to everyone involved in this little project, and huge shout out to "cgstrive" for the thorough testings with Maya, 3ds Max, Houdini and Realflow as well as @fjuhec, @jensverwiebe and @jasperge for the custom builds and compile fixes. Reviewers: sergey, campbellbarton, mont29 Reviewed By: sergey, campbellbarton, mont29 Differential Revision: https://developer.blender.org/D2060