Add new tests and functionality for image processing and geometry handling
- Introduced color_image.py for preparing standalone color images for tests. - Added hdr_image.py to create HDR textures for testing. - Implemented test_image_depth_panorama.py to evaluate panorama topology, UVs, and depth discontinuities. - Created test_shadeless.py to validate the opacity and HDR color endpoints of the Shadeless group. - Developed moge3_export.py for exporting dynamic MoGe-3 backbone and ONNX graphs. - Added material.py to inherit material slots onto generated geometry. - Built image_depth_panorama.py to construct a quad panorama with depth separation and sampling.
This commit is contained in:
@@ -3,6 +3,7 @@
|
||||
import bpy
|
||||
|
||||
from ..common.nodes import prepare_node_group
|
||||
from ..common.material import inherit_material_slots
|
||||
|
||||
|
||||
IMAGE_PLANE_GROUP_NAME = "O Image Plane"
|
||||
@@ -218,23 +219,8 @@ def build_image_plane_group():
|
||||
links.new(place_grid.outputs["Geometry"], geometry_switch.inputs["False"])
|
||||
links.new(place_cube.outputs["Geometry"], geometry_switch.inputs["True"])
|
||||
|
||||
capture_source = nodes.new("GeometryNodeCaptureAttribute")
|
||||
capture_source.domain = "POINT"
|
||||
capture_source.capture_items.clear()
|
||||
capture_source.capture_items.new("BOOLEAN", "Source")
|
||||
capture_source.inputs["Source"].default_value = True
|
||||
links.new(geometry_input.outputs["Geometry"], capture_source.inputs["Geometry"])
|
||||
join_material = nodes.new("GeometryNodeJoinGeometry")
|
||||
links.new(geometry_switch.outputs["Output"], join_material.inputs["Geometry"])
|
||||
links.new(capture_source.outputs["Geometry"], join_material.inputs["Geometry"])
|
||||
set_material_index = nodes.new("GeometryNodeSetMaterialIndex")
|
||||
set_material_index.inputs["Material Index"].default_value = 0
|
||||
links.new(join_material.outputs["Geometry"], set_material_index.inputs["Geometry"])
|
||||
delete_source = nodes.new("GeometryNodeDeleteGeometry")
|
||||
delete_source.domain = "POINT"
|
||||
links.new(set_material_index.outputs["Geometry"], delete_source.inputs["Geometry"])
|
||||
links.new(capture_source.outputs["Source"], delete_source.inputs["Selection"])
|
||||
links.new(delete_source.outputs["Geometry"], output.inputs["Geometry"])
|
||||
geometry = inherit_material_slots(group, geometry_switch.outputs["Output"], geometry_input.outputs["Geometry"])
|
||||
links.new(geometry, output.inputs["Geometry"])
|
||||
|
||||
group.color_tag = "GEOMETRY"
|
||||
group.description = (
|
||||
|
||||
Reference in New Issue
Block a user