diff --git a/infinigen/assets/objects/rocks/blender_rock.py b/infinigen/assets/objects/rocks/blender_rock.py index 52ae0aba3..aee61f6e2 100644 --- a/infinigen/assets/objects/rocks/blender_rock.py +++ b/infinigen/assets/objects/rocks/blender_rock.py @@ -12,8 +12,6 @@ from infinigen.core.tagging import tag_object from infinigen.core.util import blender as butil -bpy.ops.preferences.addon_enable(module="add_mesh_extra_objects") - class BlenderRockFactory(AssetFactory): def __init__(self, factory_seed, detail=1): diff --git a/infinigen/assets/scatters/snow_layer.py b/infinigen/assets/scatters/snow_layer.py index 7915effdd..3eb555feb 100644 --- a/infinigen/assets/scatters/snow_layer.py +++ b/infinigen/assets/scatters/snow_layer.py @@ -11,10 +11,6 @@ class Snowlayer: - def __init__(self): - bpy.ops.preferences.addon_enable(module="real_snow") - pass - def apply(self, obj, **kwargs): bpy.context.scene.snow.height = 0.1 with butil.SelectObjects(obj): diff --git a/infinigen/assets/utils/object.py b/infinigen/assets/utils/object.py index 2359010b4..219db59d2 100644 --- a/infinigen/assets/utils/object.py +++ b/infinigen/assets/utils/object.py @@ -205,15 +205,3 @@ def separate_loose(obj): objs.remove(obj) butil.delete(objs) return obj - - -def print3d_clean_up(obj): - bpy.ops.preferences.addon_enable(module="object_print3d_utils") - with butil.ViewportMode(obj, "EDIT"), butil.Suppress(): - bpy.ops.mesh.select_all(action="SELECT") - bpy.ops.mesh.quads_convert_to_tris(quad_method="BEAUTY", ngon_method="BEAUTY") - bpy.ops.mesh.fill_holes() - bpy.ops.mesh.quads_convert_to_tris(quad_method="BEAUTY", ngon_method="BEAUTY") - bpy.ops.mesh.normals_make_consistent() - bpy.ops.mesh.print3d_clean_distorted() - bpy.ops.mesh.print3d_clean_non_manifold() diff --git a/infinigen/core/init.py b/infinigen/core/init.py index 774d5958c..f78bf83fc 100644 --- a/infinigen/core/init.py +++ b/infinigen/core/init.py @@ -20,7 +20,7 @@ from numpy.random import randint import infinigen -from infinigen.core.util.logging import LogLevel, Suppress +from infinigen.core.util.logging import LogLevel from infinigen.core.util.math import int_hash from infinigen.core.util.organization import Task @@ -198,15 +198,6 @@ def find_config(p): ) -def import_addons(names): - for name in names: - try: - with Suppress(): - bpy.ops.preferences.addon_enable(module=name) - except Exception: - logger.warning(f'Could not load addon "{name}"') - - @gin.configurable def configure_render_cycles( # supplied by gin.config @@ -303,4 +294,6 @@ def configure_blender( bpy.context.scene.cycles.motion_blur_position = "START" bpy.context.scene.render.motion_blur_shutter = motion_blur_shutter - import_addons(["ant_landscape", "real_snow"]) + bpy.ops.preferences.addon_enable(module="add_mesh_extra_objects") + bpy.ops.preferences.addon_enable(module="real_snow") + bpy.ops.preferences.addon_enable(module="ant_landscape") diff --git a/infinigen/tools/terrain/generate_terrain_assets.py b/infinigen/tools/terrain/generate_terrain_assets.py index 2de487569..53cf14ff6 100644 --- a/infinigen/tools/terrain/generate_terrain_assets.py +++ b/infinigen/tools/terrain/generate_terrain_assets.py @@ -92,8 +92,6 @@ def asset_generation( parser.add_argument("--device", type=str, default="cpu") args = init.parse_args_blender(parser) - bpy.ops.preferences.addon_enable(module="add_mesh_extra_objects") - bpy.ops.preferences.addon_enable(module="ant_landscape") butil.clear_scene(targets=[bpy.data.objects]) asset_generation( Path(args.folder), diff --git a/tests/test_terrain_basic.py b/tests/test_terrain_basic.py index 2ff9c5013..5e7bfd09f 100644 --- a/tests/test_terrain_basic.py +++ b/tests/test_terrain_basic.py @@ -4,10 +4,10 @@ # Authors: Zeyu Ma -import bpy import gin import pytest +from infinigen.core.init import configure_blender from infinigen.core.surface import registry from infinigen.core.util.organization import Task from infinigen.core.util.test_utils import setup_gin @@ -34,8 +34,7 @@ def test_terrain_runs(): ], ) - bpy.ops.preferences.addon_enable(module="add_mesh_extra_objects") - bpy.ops.preferences.addon_enable(module="ant_landscape") + configure_blender() terrain = Terrain( 0, registry, task=Task.Coarse, on_the_fly_asset_folder="/tmp/terrain_tests"