Source code for blenderproc.python.modules.main.InitializerModule

from blenderproc.python.modules.main.GlobalStorage import GlobalStorage
from blenderproc.python.modules.main.Module import Module
from blenderproc.python.modules.utility.Config import Config
from blenderproc.python.utility.Initializer import init, cleanup


[docs]class InitializerModule(Module): """ Does some basic initialization of the blender project. - Sets background color - Configures computing device - Creates camera - sets the device type to the fastest option possible -> OPTIX > CUDA > OPEN_CL If you want deterministic outputs use the environment variable: "BLENDER_PROC_RANDOM_SEED" and set it to the desired seed. (random and numpy random are effected by this) **Configuration**: .. list-table:: :widths: 25 100 10 :header-rows: 1 * - Parameter - Description - Type * - horizon_color - A list of three elements specifying rgb of the world's horizon/background color. Default: [0.05, 0.05, 0.05]. - list * - global - A dictionary of all global set attributes, which are used if a module does not provide a certain key. Default: {}. - dict """ def __init__(self, config): Module.__init__(self, config) # Clean up example scene or scene created by last run when debugging pipeline inside blender cleanup() # setting up the GlobalStorage global_config = Config(self.config.get_raw_dict("global", {})) GlobalStorage.init_global(global_config) # call the init again to make sure all values from the global config where read correctly, too self._default_init()
[docs] def run(self): horizon_color = self.config.get_list("horizon_color", [0.05, 0.05, 0.05]) compute_device = self.config.get_string("compute_device", "GPU") compute_device_type = self.config.get_string("compute_device_type", None) use_experimental_features = self.config.get_bool("use_experimental_features", False) init(horizon_color, compute_device, compute_device_type, use_experimental_features, clean_up_scene=False)