- Added a new cutout tool for selecting regions in images, allowing users to choose mesh shapes based on selected areas. - Introduced depth generation capabilities for rasterized images, including normal data extraction. - Created jobs for generating depth planes and region data, enhancing the AI data generation workflow. - Developed a selection refinement process for cutout regions, improving accuracy in generated outputs. - Established a new region module for handling rasterized image regions and their associated AI generation tasks. - Enhanced node graph builders for asset generation, facilitating smoother integration of new features.
47 lines
1.1 KiB
Python
47 lines
1.1 KiB
Python
from pathlib import Path
|
|
import sys
|
|
|
|
import bpy
|
|
|
|
|
|
PROJECT_ROOT = Path(__file__).parents[2]
|
|
sys.path.insert(0, str(Path(__file__).parent))
|
|
sys.path.insert(0, str(PROJECT_ROOT / "src"))
|
|
sys.path.insert(
|
|
0,
|
|
str(next((PROJECT_ROOT / "src" / "anyimage" / "wheels").glob("blendjob-*.whl"))),
|
|
)
|
|
|
|
from build_cutout import (
|
|
CUTOUT_NODE_GROUP_NAMES,
|
|
build_cutout_modifier_group,
|
|
build_node_group,
|
|
)
|
|
from build_mesh_plane import build_mesh_plane_group
|
|
from build_shadeless import build_shadeless_group
|
|
OUTPUT_PATH = (
|
|
PROJECT_ROOT
|
|
/ "src"
|
|
/ "anyimage"
|
|
/ "assets"
|
|
/ "O_AnyImage.blend"
|
|
)
|
|
|
|
|
|
def main():
|
|
bpy.ops.wm.read_factory_settings(use_empty=True)
|
|
bpy.context.preferences.filepaths.save_version = 0
|
|
build_mesh_plane_group()
|
|
build_shadeless_group()
|
|
shape_groups = {
|
|
shape: build_node_group(shape)
|
|
for shape in CUTOUT_NODE_GROUP_NAMES
|
|
}
|
|
build_cutout_modifier_group(shape_groups)
|
|
OUTPUT_PATH.parent.mkdir(parents=True, exist_ok=True)
|
|
bpy.ops.wm.save_as_mainfile(filepath=str(OUTPUT_PATH), check_existing=False)
|
|
|
|
|
|
if __name__ == "__main__":
|
|
main()
|