Go to file
Kévin Dietrich 0a08ac2528 Alembic: add support for reading override layers
Override layers are a standard feature of Alembic, where archives can override
data from other archives, provided that the hierarchies match.

This is useful for modifying a UV map, updating an animation, or even creating
some sort of LOD system where low resolution meshes are swapped by high resolution
versions.

It is possible to add UV maps and vertex colors using this system, however, they
will only appear in the spreadsheet editor when viewing evaluated data, as the UV
map and Vertex color UI only show data present on the original mesh.

Implementation wise, this adds a `CacheFileLayer` data structure to the `CacheFile`
DNA, as well as some operators and UI to present and manage the layers. For both
the Alembic importer and the Cycles procedural, the main change is creating an
archive from a list of filepaths, instead of a single one.

After importing the base file through the regular import operator, layers can be added
to or removed from the `CacheFile` via the UI list under the `Override Layers` panel
located in the Mesh Sequence Cache modifier. Layers can also be moved around or
hidden.

See differential page for tests files and demos.

Reviewed by: brecht, sybren

Differential Revision: https://developer.blender.org/D13603
2022-01-17 14:51:04 +01:00
.github GitHub: add PR template 2021-10-23 10:49:51 +05:30
build_files InstallDeps: Increase 'MEX' version of llvm to 14. 2022-01-17 10:34:34 +01:00
doc Cleanup: typos in comments, remove libnumaapi reference 2022-01-10 13:47:12 +11:00
extern Audaspace: port bugfixes from upstream. 2022-01-14 22:51:35 +01:00
intern Alembic: add support for reading override layers 2022-01-17 14:51:04 +01:00
release Alembic: add support for reading override layers 2022-01-17 14:51:04 +01:00
source Alembic: add support for reading override layers 2022-01-17 14:51:04 +01:00
tests Alembic: add support for reading override layers 2022-01-17 14:51:04 +01:00
.arcconfig Fix .arcconfig not working with latest arcanist version 2020-03-01 22:35:31 +01:00
.clang-format Cleanup: More readable Cycles OSL BSDF definition 2021-10-19 11:59:26 +02:00
.clang-tidy Clang Tidy: ignore some passes that changed or were added in version 13 2021-11-23 19:45:05 +01:00
.editorconfig editorconfig: correct indent size 2019-04-17 13:34:46 +02:00
.git-blame-ignore-revs Cleanup: git-blame-ignore-revs: Update policy & commits 2021-01-29 13:20:32 +05:30
.gitignore Compositor automated testing 2021-03-26 16:15:02 +01:00
.gitmodules Update for moving blender2.8 to master. 2018-12-21 12:15:21 +01:00
CMakeLists.txt Revert "Revert "GPUShaderCreateInfo for interface abstraction"" 2022-01-17 14:46:32 +01:00
COPYING
GNUmakefile Cleanup: fix typos in comments and docs 2021-11-19 12:46:49 +01:00
make.bat win/make.bat: Add svnfix convenience target 2021-10-26 17:48:16 -06:00
readme.rst Blender README: Fix the full license name. 2021-04-09 12:39:33 +02:00

.. Keep this document short & concise,
   linking to external resources instead of including content in-line.
   See 'release/text/readme.html' for the end user read-me.


Blender
=======

Blender is the free and open source 3D creation suite.
It supports the entirety of the 3D pipeline-modeling, rigging, animation, simulation, rendering, compositing,
motion tracking and video editing.

.. figure:: https://code.blender.org/wp-content/uploads/2018/12/springrg.jpg
   :scale: 50 %
   :align: center


Project Pages
-------------

- `Main Website <http://www.blender.org>`__
- `Reference Manual <https://docs.blender.org/manual/en/latest/index.html>`__
- `User Community <https://www.blender.org/community/>`__

Development
-----------

- `Build Instructions <https://wiki.blender.org/wiki/Building_Blender>`__
- `Code Review & Bug Tracker <https://developer.blender.org>`__
- `Developer Forum <https://devtalk.blender.org>`__
- `Developer Documentation <https://wiki.blender.org>`__


License
-------

Blender as a whole is licensed under the GNU General Public License, Version 3.
Individual files may have a different, but compatible license.

See `blender.org/about/license <https://www.blender.org/about/license>`__ for details.