import os import sys from glob import glob import bpy from tqdm import tqdm class HiddenPrints: def __init__(self, disable=False): self.disable = disable def __enter__(self): if self.disable: return self._original_stdout = sys.stdout sys.stdout = open(os.devnull, "w") def __exit__(self, exc_type, exc_val, exc_tb): if self.disable: return sys.stdout.close() sys.stdout = self._original_stdout if __name__ == "__main__": input_dir = "." character_list = sorted(glob(os.path.join(input_dir, "character", "*.fbx"))) # animation_list = sorted(glob(os.path.join(input_dir, "animation", "*.fbx"))) for filepath in tqdm(character_list, dynamic_ncols=True): try: with HiddenPrints(): bpy.ops.import_scene.fbx(filepath=filepath) except Exception as e: tqdm.write(filepath) with open("character_old_fbx.txt", "a") as f: f.write(f"{filepath}\n") # https://aps.autodesk.com/developer/overview/fbx-converter-archives # Manually convert and replace FBX in the txt