Add new node asset scripts for geometry and shader operations
- Implemented `build_mesh_plane.py` to create a geometry node group for mesh planes with customizable parameters. - Created `build_shadeless.py` for a shader node group that displays color without scene lighting while preserving shadows and reflections. - Added `validate.py` to validate the integrity of the newly created node groups and their inputs. - Introduced `validate_cutout.py` to ensure the functionality of cutout node groups and their dependencies. - Developed `validate_mesh_plane.py` to test the mesh plane creation and its modifier settings.
This commit is contained in:
@@ -60,53 +60,73 @@ class PackTest(unittest.TestCase):
|
||||
)
|
||||
|
||||
self.assertIn("__init__.py", names)
|
||||
self.assertIn("clipboard_image/__init__.py", names)
|
||||
self.assertIn("clipboard_image/actions.py", names)
|
||||
self.assertIn("clipboard_image/clipboard.py", names)
|
||||
self.assertIn("operators/clipboard_image/__init__.py", names)
|
||||
self.assertIn("operators/clipboard_image/actions.py", names)
|
||||
self.assertIn("operators/clipboard_image/clipboard.py", names)
|
||||
self.assertIn("blender_manifest.toml", names)
|
||||
self.assertIn("operators/depth_plane/operator.py", names)
|
||||
self.assertIn("operators/mesh_plane.py", names)
|
||||
self.assertIn("operators/image.py", names)
|
||||
self.assertIn("operators/cutout_geometry.py", names)
|
||||
self.assertIn("operators/cutout_nodes.py", names)
|
||||
self.assertIn("operators/cutout_depth.py", names)
|
||||
self.assertIn("operators/cutout_profile.py", names)
|
||||
self.assertIn("operators/cutout_teddy.py", names)
|
||||
self.assertNotIn("operators/cutout_poisson.py", names)
|
||||
self.assertNotIn("operators/balloon/operator.py", names)
|
||||
self.assertIn("operators/image_edit/__init__.py", names)
|
||||
self.assertIn("operators/image_edit/common.py", names)
|
||||
self.assertIn("operators/image_edit/mask.py", names)
|
||||
self.assertIn("operators/image_edit/box.py", names)
|
||||
self.assertIn("operators/image_edit/lasso.py", names)
|
||||
self.assertIn("operators/image_edit/line.py", names)
|
||||
self.assertIn("operators/image_edit/polyline.py", names)
|
||||
self.assertIn("operators/image_edit/perspective.py", names)
|
||||
self.assertIn("operators/image_edit/interaction.py", names)
|
||||
self.assertIn("operators/surface.py", names)
|
||||
self.assertNotIn("assets/O_AnyImage.blend1", names)
|
||||
for path in (
|
||||
"operators/common/__init__.py",
|
||||
"operators/common/image.py",
|
||||
"operators/common/material.py",
|
||||
"operators/common/node_asset.py",
|
||||
"operators/common/normal_map.py",
|
||||
"operators/common/operator.py",
|
||||
"operators/common/image_edit.py",
|
||||
"operators/common/image_gesture.py",
|
||||
"operators/common/image_interaction.py",
|
||||
"operators/common/image_mask.py",
|
||||
"operators/common/node_graph.py",
|
||||
"operators/cutout_tool/__init__.py",
|
||||
"operators/cutout_tool/balloon_profile.py",
|
||||
"operators/cutout_tool/build_shapes.py",
|
||||
"operators/cutout_tool/depth_calibration.py",
|
||||
"operators/cutout_tool/mask_regions.py",
|
||||
"operators/cutout_tool/node_assets.py",
|
||||
"operators/cutout_tool/planar_mesh.py",
|
||||
"operators/cutout_tool/selection_tool.py",
|
||||
"operators/cutout_tool/shape_conversion.py",
|
||||
"operators/cutout_tool/shape_types.py",
|
||||
"operators/convert_to_plane/__init__.py",
|
||||
"operators/convert_to_plane/build.py",
|
||||
"operators/convert_to_plane/conversion.py",
|
||||
"operators/convert_to_plane/mesh_plane.py",
|
||||
"operators/convert_to_plane/nodes.py",
|
||||
"operators/image_tool/__init__.py",
|
||||
"operators/image_tool/edit_mask.py",
|
||||
"operators/image_tool/box.py",
|
||||
"operators/image_tool/lasso.py",
|
||||
"operators/image_tool/line.py",
|
||||
"operators/image_tool/polyline.py",
|
||||
"operators/perspective_tool/__init__.py",
|
||||
"operators/perspective_tool/edit_perspective.py",
|
||||
"operators/ai_setup.py",
|
||||
"operators/remove_background.py",
|
||||
):
|
||||
self.assertIn(path, names)
|
||||
self.assertNotIn("operators/cutout/__init__.py", names)
|
||||
self.assertNotIn("operators/image_mesh/__init__.py", names)
|
||||
self.assertNotIn("operators/mesh/__init__.py", names)
|
||||
self.assertNotIn("operators/image_edit/__init__.py", names)
|
||||
self.assertNotIn("operators/background.py", names)
|
||||
self.assertIn(
|
||||
"assets/O_AnyImage.blend",
|
||||
names,
|
||||
)
|
||||
self.assertIn("server/media/input.py", names)
|
||||
self.assertIn("server/geometry/projection.py", names)
|
||||
self.assertIn("server/geometry/grid_mesh.py", names)
|
||||
self.assertIn("server/geometry/surface.py", names)
|
||||
self.assertIn("server/jobs/background.py", names)
|
||||
self.assertIn("server/jobs/image_mask.py", names)
|
||||
self.assertIn("server/jobs/cutout_depth.py", names)
|
||||
self.assertNotIn("server/jobs/balloon.py", names)
|
||||
self.assertIn("server/models/geometry.py", names)
|
||||
self.assertIn("server/jobs/remove_background.py", names)
|
||||
self.assertIn("server/jobs/refine_image_mask.py", names)
|
||||
self.assertIn("server/selection/cutout_images.py", names)
|
||||
self.assertIn("server/selection/polygon_mask.py", names)
|
||||
self.assertIn("server/jobs/prepare_geometry_data.py", names)
|
||||
self.assertIn("server/geometry/normal_texture.py", names)
|
||||
self.assertNotIn("server/geometry/cutout.py", names)
|
||||
self.assertIn("server/models/ben2.py", names)
|
||||
self.assertIn("server/models/da3.py", names)
|
||||
self.assertIn("server/models/moge2.py", names)
|
||||
self.assertIn("server/jobs/depth.py", names)
|
||||
self.assertIn("server/jobs/surface.py", names)
|
||||
self.assertIn("server/jobs/debug_da3.py", names)
|
||||
self.assertIn("server/jobs/debug_moge2.py", names)
|
||||
self.assertIn("server/jobs/debug_ben2.py", names)
|
||||
self.assertIn("server/jobs/debug_upscale.py", names)
|
||||
self.assertNotIn("server/processing.py", names)
|
||||
self.assertNotIn("server/progress.py", names)
|
||||
self.assertIn("server/jobs/debug_predictions.py", names)
|
||||
self.assertIn("server/model_catalog.py", names)
|
||||
self.assertIn("server/model_download.py", names)
|
||||
self.assertIn("server/models/onnx_ben2.py", names)
|
||||
@@ -114,8 +134,6 @@ class PackTest(unittest.TestCase):
|
||||
self.assertIn("server/models/onnx_moge2.py", names)
|
||||
self.assertIn("server/models/onnx_upscale.py", names)
|
||||
self.assertIn("server/models/upscale.py", names)
|
||||
self.assertNotIn("server/da3.py", names)
|
||||
self.assertNotIn("server/moge2.py", names)
|
||||
self.assertIn("server/__init__.py", names)
|
||||
self.assertIn(
|
||||
"wheels/blendjob-0.1.14-py3-none-any.whl",
|
||||
@@ -124,9 +142,7 @@ class PackTest(unittest.TestCase):
|
||||
self.assertFalse(
|
||||
any(name.startswith("blendjob/") for name in names)
|
||||
)
|
||||
self.assertNotIn("install_env.py", names)
|
||||
self.assertNotIn("anyimage/__init__.py", names)
|
||||
self.assertNotIn("importer.py", names)
|
||||
self.assertFalse(
|
||||
any(name.startswith("sources/") for name in names)
|
||||
)
|
||||
|
||||
Reference in New Issue
Block a user