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
path: root/tests
diff options
context:
space:
mode:
authorSybren A. Stüvel <sybren@blender.org>2020-05-26 17:44:35 +0300
committerSybren A. Stüvel <sybren@blender.org>2020-05-26 17:44:35 +0300
commit78eae89c390601b1533c99cefb34ad91be15f63d (patch)
tree1f8766b00bda46fff0764a0880300b291df82723 /tests
parent4102e7ed81cb2c98dc0ade362f47843c7c13b5a7 (diff)
parenta1c9d425844c5c2299daf9a89438d164f605407c (diff)
Merge remote-tracking branch 'origin/blender-v2.83-release'
Diffstat (limited to 'tests')
-rw-r--r--tests/python/alembic_tests.py55
1 files changed, 55 insertions, 0 deletions
diff --git a/tests/python/alembic_tests.py b/tests/python/alembic_tests.py
index 8c0315f1b68..2d477c5a6f0 100644
--- a/tests/python/alembic_tests.py
+++ b/tests/python/alembic_tests.py
@@ -84,6 +84,7 @@ class AbstractAlembicTest(AbstractBlenderRunnerTest):
'uint8_t': int,
'int16_t': int,
'int32_t': int,
+ 'uint32_t': int,
'uint64_t': int,
'float64_t': float,
'float32_t': float,
@@ -325,6 +326,60 @@ class HairParticlesExportTest(AbstractAlembicTest):
self.assertIn('.faceIndices', abcprop)
+class UVMapExportTest(AbstractAlembicTest):
+ @with_tempdir
+ def test_uvmap_export(self, tempdir: pathlib.Path):
+ """Minimal test for exporting multiple UV maps on an animated mesh.
+
+ This covers the issue reported in T77021.
+ """
+ basename = 'T77021-multiple-uvmaps-animated-mesh'
+ abc = tempdir / f'{basename}.abc'
+ script = f"import bpy; bpy.ops.wm.alembic_export(filepath='{abc.as_posix()}', start=1, end=1, " \
+ f"renderable_only=True, visible_objects_only=True, flatten=False)"
+ self.run_blender(f'{basename}.blend', script)
+
+ self.maxDiff = 1000
+
+ # The main UV map should be written to .geom
+ abcprop = self.abcprop(abc, '/Cube/CubeShape/.geom/uv')
+ self.assertEqual(abcprop['.vals'], [
+ [0.625, 0.75],
+ [0.875, 0.75],
+ [0.875, 0.5],
+ [0.625, 0.5],
+ [0.375, 1.0],
+ [0.625, 1.0],
+ [0.375, 0.75],
+ [0.375, 0.25],
+ [0.625, 0.25],
+ [0.625, 0.0],
+ [0.375, 0.0],
+ [0.125, 0.75],
+ [0.375, 0.5],
+ [0.125, 0.5],
+ ])
+
+ # The second UV map should be written to .arbGeomParams
+ abcprop = self.abcprop(abc, '/Cube/CubeShape/.geom/.arbGeomParams/Secondary')
+ self.assertEqual(abcprop['.vals'], [
+ [0.75, 0.375],
+ [0.75, 0.125],
+ [0.5, 0.125],
+ [0.5, 0.375],
+ [1.0, 0.625],
+ [1.0, 0.375],
+ [0.75, 0.625],
+ [0.25, 0.625],
+ [0.25, 0.375],
+ [0.0, 0.375],
+ [0.0, 0.625],
+ [0.75, 0.875],
+ [0.5, 0.625],
+ [0.5, 0.875],
+ ])
+
+
class LongNamesExportTest(AbstractAlembicTest):
@with_tempdir
def test_export_long_names(self, tempdir: pathlib.Path):