From 25450ab5610ab59ac97ae597ec8c5d5ec1b2ff39 Mon Sep 17 00:00:00 2001 From: Alexander Clegg Date: Tue, 14 Mar 2023 15:46:56 -0700 Subject: [PATCH] Receptacle test assets (#1994) * add new test assets for receptacle testing * modify the simple_room config * updated receptacle metadata and meshes * update a manager test for asset changes * adding Magnum::AnySceneImporter MagnumPlugins::AssimpImporter to python bindings plugins for scene import --- .../objects/chair.object_config.json | 34 +++++++++++++++++- .../objects/receptacle_mesh_chair.ply | 16 +++++++++ .../receptacle_mesh_simple_room_table.ply | 16 +++++++++ .../scenes/simple_room.stage_config.json | 35 +++++++++++++++++++ src/cmake/dependencies.cmake | 10 ++++-- src/tests/AttributesManagersTest.cpp | 2 +- 6 files changed, 108 insertions(+), 5 deletions(-) create mode 100644 data/test_assets/objects/receptacle_mesh_chair.ply create mode 100644 data/test_assets/scenes/receptacle_mesh_simple_room_table.ply create mode 100644 data/test_assets/scenes/simple_room.stage_config.json diff --git a/data/test_assets/objects/chair.object_config.json b/data/test_assets/objects/chair.object_config.json index 91090fd42a..4c5e26d0f6 100644 --- a/data/test_assets/objects/chair.object_config.json +++ b/data/test_assets/objects/chair.object_config.json @@ -1,4 +1,36 @@ { "render_asset": "chair.glb", - "mass": 9 + "mass": 9, + "user_defined": { + "receptacle_aabb_chair_test": { + "name": "receptacle_aabb_chair_test", + "parent_object": "chair", + "position": [ + -0.079131, + 0.119772, + 0 + ], + "scale": [ + 0.158802, + 0.11, + 0.19 + + ] + }, + "receptacle_mesh_chair_test": { + "name": "receptacle_mesh_chair_test", + "parent_object": "chair", + "position": [ + 0.0, + 0.0, + 0.0 + ], + "scale": [ + 1.0, + 1.0, + 1.0 + ], + "mesh_filepath": "receptacle_mesh_chair.ply" + } + } } diff --git a/data/test_assets/objects/receptacle_mesh_chair.ply b/data/test_assets/objects/receptacle_mesh_chair.ply new file mode 100644 index 0000000000..76a9e805a2 --- /dev/null +++ b/data/test_assets/objects/receptacle_mesh_chair.ply @@ -0,0 +1,16 @@ +ply +format ascii 1.0 +comment Created by Blender 3.3.0 - www.blender.org +element vertex 4 +property float x +property float y +property float z +element face 2 +property list uchar uint vertex_indices +end_header +0.045097 0.009212 0.175879 +-0.243901 0.009212 -0.175879 +-0.243901 0.009212 0.175879 +0.045097 0.009212 -0.175879 +3 0 1 2 +3 0 3 1 diff --git a/data/test_assets/scenes/receptacle_mesh_simple_room_table.ply b/data/test_assets/scenes/receptacle_mesh_simple_room_table.ply new file mode 100644 index 0000000000..397d495e66 --- /dev/null +++ b/data/test_assets/scenes/receptacle_mesh_simple_room_table.ply @@ -0,0 +1,16 @@ +ply +format ascii 1.0 +comment Created by Blender 3.3.0 - www.blender.org +element vertex 4 +property float x +property float y +property float z +element face 2 +property list uchar uint vertex_indices +end_header +0.950000 1.167508 -0.950000 +-0.450000 1.167508 0.450000 +0.950000 1.167508 0.450000 +-0.450000 1.167508 -0.950000 +3 0 1 2 +3 0 3 1 diff --git a/data/test_assets/scenes/simple_room.stage_config.json b/data/test_assets/scenes/simple_room.stage_config.json new file mode 100644 index 0000000000..19eb5cb313 --- /dev/null +++ b/data/test_assets/scenes/simple_room.stage_config.json @@ -0,0 +1,35 @@ +{ + "render_asset": "simple_room.glb", + "up": [0,0,1], + "front": [0,1,0], + "shader_type": "pbr", + "user_defined": { + "receptacle_aabb_simpleroom_test": { + "name": "receptacle_aabb_simpleroom_test", + "position": [ + 2.36945, + -1.3934, + 2.61652 + ], + "scale": [ + 1.0, + 1.0, + 0.39171 + ] + }, + "receptacle_mesh_simpleroom_test": { + "name": "receptacle_mesh_simpleroom_test", + "position": [ + 0.0, + 0.0, + 0.0 + ], + "scale": [ + 1.0, + 1.0, + 1.0 + ], + "mesh_filepath": "receptacle_mesh_simple_room_table.ply" + } + } +} diff --git a/src/cmake/dependencies.cmake b/src/cmake/dependencies.cmake index 65dd784585..4d0c09ef54 100644 --- a/src/cmake/dependencies.cmake +++ b/src/cmake/dependencies.cmake @@ -348,11 +348,15 @@ if(NOT USE_SYSTEM_MAGNUM) # for Python as well; and reset that back to strange build procedures that # turn some features off again later can still work. if(BUILD_GUI_VIEWERS) - set(MAGNUM_PYTHON_BINDINGS_STATIC_PLUGINS MagnumPlugins::StbTrueTypeFont - CACHE STRING "" FORCE + set(MAGNUM_PYTHON_BINDINGS_STATIC_PLUGINS + MagnumPlugins::StbTrueTypeFont Magnum::AnySceneImporter + MagnumPlugins::AssimpImporter CACHE STRING "" FORCE ) else() - set(MAGNUM_PYTHON_BINDINGS_STATIC_PLUGINS "" CACHE STRING "" FORCE) + set(MAGNUM_PYTHON_BINDINGS_STATIC_PLUGINS Magnum::AnySceneImporter + MagnumPlugins::AssimpImporter + CACHE STRING "" FORCE + ) endif() add_subdirectory("${DEPS_DIR}/magnum-bindings") endif() diff --git a/src/tests/AttributesManagersTest.cpp b/src/tests/AttributesManagersTest.cpp index 64ee13416a..96133ed926 100644 --- a/src/tests/AttributesManagersTest.cpp +++ b/src/tests/AttributesManagersTest.cpp @@ -568,7 +568,7 @@ void AttributesManagersTest::testPhysicsAttributesManagersCreate() { void AttributesManagersTest::testStageAttributesManagersCreate() { std::string stageConfigFile = - Cr::Utility::Path::join(DATA_DIR, "test_assets/scenes/simple_room.glb"); + Cr::Utility::Path::join(DATA_DIR, "test_assets/scenes/plane.glb"); CORRADE_INFO( "Start Test : Create, Edit, Remove Attributes for "