feat: Update documentation and improve depth processing logic; bump version to 0.11.1

This commit is contained in:
2026-08-14 21:57:08 +08:00
parent 5255eb4e96
commit 102e1bfa9b
14 changed files with 149 additions and 34 deletions

View File

@@ -11,8 +11,11 @@ from snapform.image_depth import (
SURFACE_MATERIAL_NODE_GROUP_NAME,
add_depth_plane_processing,
create_material,
get_modifier_input,
load_depth_plane_node_group,
modifier_input_driver_path,
modifier_input_identifier,
set_modifier_input,
)
from snapform.image_mesh import load_geometry_node_group
@@ -275,24 +278,28 @@ def main():
material,
animate_frame=True,
)
modifier[modifier_input_identifier(group, "Depth Scale")] = -2.0
set_modifier_input(
modifier,
modifier_input_identifier(group, "Depth Scale"),
-2.0,
)
for name, expected in (
("Frame Start", 1),
("Frames", 1),
("Cyclic", False),
):
assert modifier[modifier_input_identifier(group, name)] == expected
identifier = modifier_input_identifier(group, name)
assert get_modifier_input(modifier, identifier) == expected
assert not any(
node.bl_idname == "GeometryNodeInputSceneTime"
for node in group.nodes
)
frame_identifier = modifier_input_identifier(group, "Frame")
frame_path = modifier_input_driver_path(modifier, frame_identifier)
frame_driver = next(
fcurve
for fcurve in obj.animation_data.drivers
if fcurve.data_path == (
f'modifiers["{modifier.name}"]["{frame_identifier}"]'
)
if fcurve.data_path == frame_path
)
assert frame_driver.driver.type == "SCRIPTED"
assert frame_driver.driver.expression == "frame"

View File

@@ -7,6 +7,10 @@ import numpy as np
sys.path.insert(0, str(Path(__file__).parents[1] / "src"))
from snapform.image_depth import (
get_modifier_input,
set_modifier_input,
)
from snapform.image_mesh import create_matching_camera, load_geometry_node_group
@@ -18,7 +22,7 @@ def set_input(modifier, group, name, value):
and item.in_out == "INPUT"
and item.name == name
)
modifier[item.identifier] = value
set_modifier_input(modifier, item.identifier, value)
def add_face_attributes(mesh, count):
@@ -151,7 +155,7 @@ def main():
for item in group.interface.items_tree
if item.item_type == "SOCKET" and item.name == "Depth Continuity"
)
assert modifier[discontinuity_item.identifier] == 100.0
assert get_modifier_input(modifier, discontinuity_item.identifier) == 100.0
obj.update_tag(refresh={"DATA"})
bpy.context.view_layer.update()
culled = obj.evaluated_get(bpy.context.evaluated_depsgraph_get())