blender/tests/python
Sybren A. Stüvel 2917df21ad Alembic: new exporter based on the USD exporter structure
The Alembic exporter has been restructured by leverages the
`AbstractHierarchyIterator` introduced by the USD exporter. The produced
Alembic files have not changed much (details below), as the Alembic
writing code has simply been moved from the old exporter to the new. How
the export hierarchy is handled changed a lot, though, and also the way
in which transforms are computed. As a result, T71395 is fixed.

Differences between the old and new exporter, in terms of the produced
Alembic file:
- Duplicated objects now have a unique numerical suffix.
- Matrices are computed differently, namely by simply computing the
  evaluated transform of the object relative to the evaluated transform
  of its export-parent. This fixes {T71395}, but otherwise should
  produce the same result as before (but with simpler code).

Compared to the old Alembic exporter, Subdivision modifiers are now
disabled in a cleaner, more efficient way (they are disabled when
exporting with the "Apply Subdivisions" option is unchecked). Previously
the exporter would move to a new frame, disable the modifier, evaluate
the object, and enable the modifier again. This is now done before
exporting starts, and modifiers are only restored when exporting ends.

Some issues with the old Alembic exporter that have NOT been fixed in
this patch:
- Exporting NURBS patches and curves (see T49114 for example).
- Exporting flattened hierarchy in combination with dupli-objects. This
  seems to be broken in the old Alembic exporter as well, but nobody
  reported this yet.

Differential Revision: https://developer.blender.org/D7664

Reviewed By: Sergey
2020-06-30 11:38:46 +02:00
..
collada Cleanup: CMake formatting 2020-02-15 10:40:41 +11:00
modules Tests: add physics tests cloth and softybody 2020-04-28 12:29:46 +02:00
view_layer CMake: add missing headers, use space before comments 2019-10-29 01:33:44 +11:00
alembic_tests.py Alembic: new exporter based on the USD exporter structure 2020-06-30 11:38:46 +02:00
batch_import.py Cleanup: unused vars, imports 2018-11-26 09:26:15 +11:00
bevel_operator.py Tests: fix some tests passing even if there are Python errors 2020-04-28 12:50:16 +02:00
bl_alembic_io_test.py Tests: fix some tests passing even if there are Python errors 2020-04-28 12:50:16 +02:00
bl_blendfile_io.py Tests: fix some tests passing even if there are Python errors 2020-04-28 12:50:16 +02:00
bl_blendfile_liblink.py Tests: fix some tests passing even if there are Python errors 2020-04-28 12:50:16 +02:00
bl_blendfile_utils.py Cleanup: Deduplicate some code in new blenfile io/linking tests. 2020-02-14 12:18:21 +01:00
bl_bundled_modules.py Fix Python bundled module test error 2020-04-28 12:48:29 +02:00
bl_constraints.py Fix T76941: "Set Inverse" in Child Of constraint broken with armatures 2020-05-25 15:46:08 +02:00
bl_id_management.py Cleanup: formatting, strip trailing space 2020-03-05 08:05:21 +11:00
bl_keymap_completeness.py Tests: disable keymap hierarchy tests until they are fixed 2019-06-28 13:49:04 +02:00
bl_load_addons.py Tests: fix some tests passing even if there are Python errors 2020-04-28 12:50:16 +02:00
bl_load_py_modules.py Tests: fix some tests passing even if there are Python errors 2020-04-28 12:50:16 +02:00
bl_mesh_modifiers.py Tests: fix some tests passing even if there are Python errors 2020-04-28 12:50:16 +02:00
bl_mesh_validate.py Tests: fix some tests passing even if there are Python errors 2020-04-28 12:50:16 +02:00
bl_pyapi_bpy_path.py
bl_pyapi_bpy_utils_units.py Fix scene units test failure after recent changes 2019-08-02 14:42:25 +02:00
bl_pyapi_idprop.py Fix bl_pyapi_idprop unit test. 2019-03-17 07:36:26 -04:00
bl_pyapi_idprop_datablock.py Refactor duplicate of data-blocks. 2020-06-17 17:06:05 +02:00
bl_pyapi_mathutils.py Document that tessellate_polygon() doesn't handle degenerate geometry 2020-01-27 16:42:25 +01:00
bl_pyapi_prop_array.py Python: add foreach_get and foreach_set methods to pyrna_prop_array 2020-03-13 12:59:36 +01:00
bl_rna_defaults.py
bl_rna_manual_reference.py
bl_rst_completeness.py
bl_run_operators.py Test: update bl_run_operators blacklist, add volume object 2020-03-26 15:42:52 +11:00
bl_test.py Tests: fix some tests passing even if there are Python errors 2020-04-28 12:50:16 +02:00
boolean_operator.py Tests: fix some tests passing even if there are Python errors 2020-04-28 12:50:16 +02:00
CMakeLists.txt Merge branch 'blender-v2.83-release' 2020-04-28 13:02:06 +02:00
cycles_render_tests.py Tests: use explicit Python to run unit tests 2020-04-24 17:10:22 +02:00
eevee_render_tests.py Tests: use explicit Python to run unit tests 2020-04-24 17:10:22 +02:00
ffmpeg_tests.py Tests: use explicit Python to run unit tests 2020-04-24 17:10:22 +02:00
modifiers.py Tests: fix some tests passing even if there are Python errors 2020-04-28 12:50:16 +02:00
opengl_draw_tests.py Tests: use explicit Python to run unit tests 2020-04-24 17:10:22 +02:00
operators.py Tests: fix some tests passing even if there are Python errors 2020-04-28 12:50:16 +02:00
pep8.py Cleanup: unused variables 2019-03-17 21:14:43 +11:00
physics_cloth.py Tests: fix some tests passing even if there are Python errors 2020-04-28 12:50:16 +02:00
physics_softbody.py Tests: fix some tests passing even if there are Python errors 2020-04-28 12:50:16 +02:00
rna_array.py
rna_info_dump.py Cleanup: unused vars, imports 2018-11-26 09:26:15 +11:00
rst_to_doctree_mini.py
workbench_render_tests.py Tests: use explicit Python to run unit tests 2020-04-24 17:10:22 +02:00