#!/usr/bin/env python # -*- coding: utf-8 -*- #===================================== 1. Module Imports ===================================== import maya.OpenMayaUI as omui import maya.cmds as cmds import maya.mel as mel import webbrowser import datetime import sys import os # Base Information TOOL_NAME = str("MetaFusion") TOOL_VERSION = str("Beta v1.0.0") TOOL_AUTHOR = str("CGNICO") TOOL_LANG = str('en_US') TOOL_WSCL_NAME = str(f"{TOOL_NAME}WorkSpaceControl") TOOL_HELP_URL = str(f"https://gitea.cgnico.com/CGNICO/{TOOL_NAME}/wiki") TOOL_YEAR = str(datetime.datetime.now().year) # Tool Path TOOL_PATH = str(os.path.dirname(os.path.dirname(os.path.abspath(__file__)))) ROOT_DIR = TOOL_PATH ICONS_PATH = str(os.path.join(TOOL_PATH, "icons")) SCRIPTS_PATH = str(os.path.join(TOOL_PATH, "scripts")) TOOL_STYLE_FILE = str(os.path.join(SCRIPTS_PATH, "ui", "style.qss")) # TOOLS_PATH DNACALIB_PATH = str(os.path.join(TOOL_PATH, "dnacalib").replace("\\", "/")) BUILDER_PATH = str(os.path.join(SCRIPTS_PATH, "builder").replace("\\", "/")) DNALIB_PATH = str(os.path.join(SCRIPTS_PATH, "dnalib").replace("\\", "/")) UI_PATH = str(os.path.join(SCRIPTS_PATH, "ui").replace("\\", "/")) UTILS_PATH = str(os.path.join(SCRIPTS_PATH, "utils").replace("\\", "/")) # System Information SYSTEM_OS = str(sys.platform) MAYA_VERSION = str(mel.eval("$gMAJOR.$gMINOR")) PYTHON_VERSION = str(f"{sys.version_info.major}.{sys.version_info.minor}.{sys.version_info.micro}") def get_python_version(): """获取Python版本目录名称""" version = sys.version_info if version.major == 3: if version.minor == 9 and version.micro == 7: return "python397" elif version.minor == 10 and version.micro == 8: return "python3108" elif version.minor == 11: return "python311" return "python3" PYTHON_VERSION_DIR = get_python_version() PLUGIN_PATH = str(os.path.join(TOOL_PATH, "plugins", SYSTEM_OS, MAYA_VERSION).replace("\\", "/")) PYDNA_PATH = str(os.path.join(TOOL_PATH, "plugins", SYSTEM_OS, "pydna", PYTHON_VERSION_DIR).replace("\\", "/")) # 资源路径 ASSETS_PATH = str(os.path.join(TOOL_PATH, "assets").replace("\\", "/")) DNA_PATH = str(os.path.join(ASSETS_PATH, "dna").replace("\\", "/")) IMG_PATH = str(os.path.join(ASSETS_PATH, "img").replace("\\", "/")) MAYA_PATH = str(os.path.join(ASSETS_PATH, "maya").replace("\\", "/")) DNA_VERSION = str("MH.4") LOD_LEVELS = range(8) DEFAULT_MESH_INDICES = range(54) GUI_PATH = str(os.path.join(MAYA_PATH, "gui.ma").replace("\\", "/")) ASSEMBLE_SCRIPT = str(os.path.join(MAYA_PATH, "additional_assemble_script.py").replace("\\", "/")) SHADER_PATH = str(os.path.join(MAYA_PATH, "shaders").replace("\\", "/")) MASKS_PATH = str(os.path.join(MAYA_PATH, "masks").replace("\\", "/")) MAPS_PATH = str(os.path.join(MAYA_PATH, "maps").replace("\\", "/")) BODY_PATH = str(os.path.join(MAYA_PATH, "body").replace("\\", "/")) # FILES TOOL_MAIN_SCRIPT = str(os.path.join(SCRIPTS_PATH, f"{TOOL_NAME}.py").replace("\\", "/")) TOOL_STYLE_FILE = str(os.path.join(UI_PATH, "style.qss").replace("\\", "/")) TOOL_ICON = str(os.path.join(ICONS_PATH, f"{TOOL_NAME}Logo.png").replace("\\", "/")) TOOL_COMMAND_ICON = str(os.path.join(ICONS_PATH, "Command.png").replace("\\", "/")) TOOL_MOD_FILENAME = str(f"{TOOL_NAME}.mod") if __name__ == "__main__": variables_path = [ TOOL_PATH, ICONS_PATH, SCRIPTS_PATH, TOOL_STYLE_FILE, DNACALIB_PATH, BUILDER_PATH, DNALIB_PATH, UI_PATH, UTILS_PATH, PLUGIN_PATH, PYDNA_PATH, ASSETS_PATH, DNA_PATH, IMG_PATH, MAYA_PATH, GUI_PATH, ASSEMBLE_SCRIPT, SHADER_PATH, MASKS_PATH, MAPS_PATH, BODY_PATH ] for i in variables_path: if not i in sys.path: sys.path.append(i) print("============================================") print(f"TOOL_PATH: {TOOL_PATH}") print(f"ICONS_PATH: {ICONS_PATH}") print(f"SCRIPTS_PATH: {SCRIPTS_PATH}") print(f"TOOL_STYLE_FILE: {TOOL_STYLE_FILE}") print(f"DNACALIB_PATH: {DNACALIB_PATH}") print(f"BUILDER_PATH: {BUILDER_PATH}") print(f"DNALIB_PATH: {DNALIB_PATH}") print(f"UI_PATH: {UI_PATH}") print(f"UTILS_PATH: {UTILS_PATH}") print(f"PLUGIN_PATH: {PLUGIN_PATH}") print(f"PYDNA_PATH: {PYDNA_PATH}") print(f"ASSETS_PATH: {ASSETS_PATH}") print(f"DNA_PATH: {DNA_PATH}") print(f"IMG_PATH: {IMG_PATH}") print(f"MAYA_PATH: {MAYA_PATH}") print(f"GUI_PATH: {GUI_PATH}") print(f"ASSEMBLE_SCRIPT: {ASSEMBLE_SCRIPT}") print(f"SHADER_PATH: {SHADER_PATH}") print(f"MASKS_PATH: {MASKS_PATH}") print(f"MAPS_PATH: {MAPS_PATH}") print(f"BODY_PATH: {BODY_PATH}") print(f"TOOL_MAIN_SCRIPT: {TOOL_MAIN_SCRIPT}") print(f"TOOL_STYLE_FILE: {TOOL_STYLE_FILE}") print(f"TOOL_ICON: {TOOL_ICON}") print(f"TOOL_COMMAND_ICON: {TOOL_COMMAND_ICON}") print(f"TOOL_MOD_FILENAME: {TOOL_MOD_FILENAME}") print("============================================")