diff --git a/client/ayon_core/modules/deadline/plugins/publish/submit_max_deadline.py b/client/ayon_core/modules/deadline/plugins/publish/submit_max_deadline.py index ababb01285..4cb510f1cb 100644 --- a/client/ayon_core/modules/deadline/plugins/publish/submit_max_deadline.py +++ b/client/ayon_core/modules/deadline/plugins/publish/submit_max_deadline.py @@ -15,11 +15,11 @@ from ayon_core.pipeline.publish.lib import ( replace_with_published_scene_path ) from ayon_core.pipeline.publish import KnownPublishError -from ayon_core.hosts.max.api.lib import ( +from ayon_max.api.lib import ( get_current_renderer, get_multipass_setting ) -from ayon_core.hosts.max.api.lib_rendersettings import RenderSettings +from ayon_max.api.lib_rendersettings import RenderSettings from openpype_modules.deadline import abstract_submit_deadline from openpype_modules.deadline.abstract_submit_deadline import DeadlineJobInfo @@ -205,11 +205,11 @@ class MaxSubmitDeadline(abstract_submit_deadline.AbstractSubmitDeadline, def _use_published_name(self, data, project_settings): # Not all hosts can import these modules. - from ayon_core.hosts.max.api.lib import ( + from ayon_max.api.lib import ( get_current_renderer, get_multipass_setting ) - from ayon_core.hosts.max.api.lib_rendersettings import RenderSettings + from ayon_max.api.lib_rendersettings import RenderSettings instance = self._instance job_info = copy.deepcopy(self.job_info) diff --git a/client/ayon_core/hosts/max/__init__.py b/server_addon/max/client/ayon_max/__init__.py similarity index 100% rename from client/ayon_core/hosts/max/__init__.py rename to server_addon/max/client/ayon_max/__init__.py diff --git a/client/ayon_core/hosts/max/addon.py b/server_addon/max/client/ayon_max/addon.py similarity index 100% rename from client/ayon_core/hosts/max/addon.py rename to server_addon/max/client/ayon_max/addon.py diff --git a/client/ayon_core/hosts/max/api/__init__.py b/server_addon/max/client/ayon_max/api/__init__.py similarity index 100% rename from client/ayon_core/hosts/max/api/__init__.py rename to server_addon/max/client/ayon_max/api/__init__.py diff --git a/client/ayon_core/hosts/max/api/action.py b/server_addon/max/client/ayon_max/api/action.py similarity index 100% rename from client/ayon_core/hosts/max/api/action.py rename to server_addon/max/client/ayon_max/api/action.py diff --git a/client/ayon_core/hosts/max/api/colorspace.py b/server_addon/max/client/ayon_max/api/colorspace.py similarity index 100% rename from client/ayon_core/hosts/max/api/colorspace.py rename to server_addon/max/client/ayon_max/api/colorspace.py diff --git a/client/ayon_core/hosts/max/api/lib.py b/server_addon/max/client/ayon_max/api/lib.py similarity index 99% rename from client/ayon_core/hosts/max/api/lib.py rename to server_addon/max/client/ayon_max/api/lib.py index f20f754248..eb22dbafd2 100644 --- a/client/ayon_core/hosts/max/api/lib.py +++ b/server_addon/max/client/ayon_max/api/lib.py @@ -20,7 +20,7 @@ from pymxs import runtime as rt JSON_PREFIX = "JSON::" -log = logging.getLogger("ayon_core.hosts.max") +log = logging.getLogger("ayon_max") def get_main_window(): diff --git a/client/ayon_core/hosts/max/api/lib_renderproducts.py b/server_addon/max/client/ayon_max/api/lib_renderproducts.py similarity index 99% rename from client/ayon_core/hosts/max/api/lib_renderproducts.py rename to server_addon/max/client/ayon_max/api/lib_renderproducts.py index 710ed0031a..82a6a0c20c 100644 --- a/client/ayon_core/hosts/max/api/lib_renderproducts.py +++ b/server_addon/max/client/ayon_max/api/lib_renderproducts.py @@ -6,7 +6,7 @@ import os from pymxs import runtime as rt -from ayon_core.hosts.max.api.lib import get_current_renderer +from ayon_max.api.lib import get_current_renderer from ayon_core.pipeline import get_current_project_name from ayon_core.settings import get_project_settings diff --git a/client/ayon_core/hosts/max/api/lib_rendersettings.py b/server_addon/max/client/ayon_max/api/lib_rendersettings.py similarity index 99% rename from client/ayon_core/hosts/max/api/lib_rendersettings.py rename to server_addon/max/client/ayon_max/api/lib_rendersettings.py index 35b6d064c1..4b65e1397e 100644 --- a/client/ayon_core/hosts/max/api/lib_rendersettings.py +++ b/server_addon/max/client/ayon_max/api/lib_rendersettings.py @@ -5,7 +5,7 @@ from ayon_core.settings import get_project_settings from ayon_core.pipeline import get_current_project_name from ayon_core.pipeline.context_tools import get_current_folder_entity -from ayon_core.hosts.max.api.lib import ( +from ayon_max.api.lib import ( set_render_frame_range, get_current_renderer, get_default_render_folder diff --git a/client/ayon_core/hosts/max/api/menu.py b/server_addon/max/client/ayon_max/api/menu.py similarity index 99% rename from client/ayon_core/hosts/max/api/menu.py rename to server_addon/max/client/ayon_max/api/menu.py index c6ceeb3a43..25dd39fd84 100644 --- a/client/ayon_core/hosts/max/api/menu.py +++ b/server_addon/max/client/ayon_max/api/menu.py @@ -5,7 +5,7 @@ from qtpy import QtWidgets, QtCore from pymxs import runtime as rt from ayon_core.tools.utils import host_tools -from ayon_core.hosts.max.api import lib +from ayon_max.api import lib class AYONMenu(object): diff --git a/client/ayon_core/hosts/max/api/pipeline.py b/server_addon/max/client/ayon_max/api/pipeline.py similarity index 97% rename from client/ayon_core/hosts/max/api/pipeline.py rename to server_addon/max/client/ayon_max/api/pipeline.py index d9cfc3407f..5f5e896e86 100644 --- a/client/ayon_core/hosts/max/api/pipeline.py +++ b/server_addon/max/client/ayon_max/api/pipeline.py @@ -14,14 +14,14 @@ from ayon_core.pipeline import ( AVALON_CONTAINER_ID, AYON_CONTAINER_ID, ) -from ayon_core.hosts.max.api.menu import AYONMenu -from ayon_core.hosts.max.api import lib -from ayon_core.hosts.max.api.plugin import MS_CUSTOM_ATTRIB -from ayon_core.hosts.max import MAX_HOST_DIR +from ayon_max.api.menu import AYONMenu +from ayon_max.api import lib +from ayon_max.api.plugin import MS_CUSTOM_ATTRIB +from ayon_max import MAX_HOST_DIR from pymxs import runtime as rt # noqa -log = logging.getLogger("ayon_core.hosts.max") +log = logging.getLogger("ayon_max") PLUGINS_DIR = os.path.join(MAX_HOST_DIR, "plugins") PUBLISH_PATH = os.path.join(PLUGINS_DIR, "publish") diff --git a/client/ayon_core/hosts/max/api/plugin.py b/server_addon/max/client/ayon_max/api/plugin.py similarity index 100% rename from client/ayon_core/hosts/max/api/plugin.py rename to server_addon/max/client/ayon_max/api/plugin.py diff --git a/client/ayon_core/hosts/max/api/preview_animation.py b/server_addon/max/client/ayon_max/api/preview_animation.py similarity index 99% rename from client/ayon_core/hosts/max/api/preview_animation.py rename to server_addon/max/client/ayon_max/api/preview_animation.py index 399d3b6222..acda5360a1 100644 --- a/client/ayon_core/hosts/max/api/preview_animation.py +++ b/server_addon/max/client/ayon_max/api/preview_animation.py @@ -3,7 +3,7 @@ import contextlib from pymxs import runtime as rt from .lib import get_max_version, render_resolution -log = logging.getLogger("ayon_core.hosts.max") +log = logging.getLogger("ayon_max") @contextlib.contextmanager diff --git a/client/ayon_core/hosts/max/hooks/force_startup_script.py b/server_addon/max/client/ayon_max/hooks/force_startup_script.py similarity index 94% rename from client/ayon_core/hosts/max/hooks/force_startup_script.py rename to server_addon/max/client/ayon_max/hooks/force_startup_script.py index 417f0049ab..1699ea300a 100644 --- a/client/ayon_core/hosts/max/hooks/force_startup_script.py +++ b/server_addon/max/client/ayon_max/hooks/force_startup_script.py @@ -1,7 +1,7 @@ # -*- coding: utf-8 -*- """Pre-launch to force 3ds max startup script.""" import os -from ayon_core.hosts.max import MAX_HOST_DIR +from ayon_max import MAX_HOST_DIR from ayon_applications import PreLaunchHook, LaunchTypes diff --git a/client/ayon_core/hosts/max/hooks/inject_python.py b/server_addon/max/client/ayon_max/hooks/inject_python.py similarity index 100% rename from client/ayon_core/hosts/max/hooks/inject_python.py rename to server_addon/max/client/ayon_max/hooks/inject_python.py diff --git a/client/ayon_core/hosts/max/hooks/set_paths.py b/server_addon/max/client/ayon_max/hooks/set_paths.py similarity index 100% rename from client/ayon_core/hosts/max/hooks/set_paths.py rename to server_addon/max/client/ayon_max/hooks/set_paths.py diff --git a/client/ayon_core/hosts/max/plugins/__init__.py b/server_addon/max/client/ayon_max/plugins/__init__.py similarity index 100% rename from client/ayon_core/hosts/max/plugins/__init__.py rename to server_addon/max/client/ayon_max/plugins/__init__.py diff --git a/client/ayon_core/hosts/max/plugins/create/create_camera.py b/server_addon/max/client/ayon_max/plugins/create/create_camera.py similarity index 80% rename from client/ayon_core/hosts/max/plugins/create/create_camera.py rename to server_addon/max/client/ayon_max/plugins/create/create_camera.py index 42f8cb716d..451e178afc 100644 --- a/client/ayon_core/hosts/max/plugins/create/create_camera.py +++ b/server_addon/max/client/ayon_max/plugins/create/create_camera.py @@ -1,6 +1,6 @@ # -*- coding: utf-8 -*- """Creator plugin for creating camera.""" -from ayon_core.hosts.max.api import plugin +from ayon_max.api import plugin class CreateCamera(plugin.MaxCreator): @@ -9,3 +9,5 @@ class CreateCamera(plugin.MaxCreator): label = "Camera" product_type = "camera" icon = "gear" + + settings_category = "max" diff --git a/client/ayon_core/hosts/max/plugins/create/create_maxScene.py b/server_addon/max/client/ayon_max/plugins/create/create_maxScene.py similarity index 81% rename from client/ayon_core/hosts/max/plugins/create/create_maxScene.py rename to server_addon/max/client/ayon_max/plugins/create/create_maxScene.py index 0e5768b267..ee58ef663d 100644 --- a/client/ayon_core/hosts/max/plugins/create/create_maxScene.py +++ b/server_addon/max/client/ayon_max/plugins/create/create_maxScene.py @@ -1,6 +1,6 @@ # -*- coding: utf-8 -*- """Creator plugin for creating raw max scene.""" -from ayon_core.hosts.max.api import plugin +from ayon_max.api import plugin class CreateMaxScene(plugin.MaxCreator): @@ -9,3 +9,5 @@ class CreateMaxScene(plugin.MaxCreator): label = "Max Scene" product_type = "maxScene" icon = "gear" + + settings_category = "max" diff --git a/client/ayon_core/hosts/max/plugins/create/create_model.py b/server_addon/max/client/ayon_max/plugins/create/create_model.py similarity index 79% rename from client/ayon_core/hosts/max/plugins/create/create_model.py rename to server_addon/max/client/ayon_max/plugins/create/create_model.py index 297c92067e..f48182ecd7 100644 --- a/client/ayon_core/hosts/max/plugins/create/create_model.py +++ b/server_addon/max/client/ayon_max/plugins/create/create_model.py @@ -1,6 +1,6 @@ # -*- coding: utf-8 -*- """Creator plugin for model.""" -from ayon_core.hosts.max.api import plugin +from ayon_max.api import plugin class CreateModel(plugin.MaxCreator): @@ -9,3 +9,5 @@ class CreateModel(plugin.MaxCreator): label = "Model" product_type = "model" icon = "gear" + + settings_category = "max" diff --git a/client/ayon_core/hosts/max/plugins/create/create_pointcache.py b/server_addon/max/client/ayon_max/plugins/create/create_pointcache.py similarity index 82% rename from client/ayon_core/hosts/max/plugins/create/create_pointcache.py rename to server_addon/max/client/ayon_max/plugins/create/create_pointcache.py index eb0686a0c0..6d7aabe12c 100644 --- a/client/ayon_core/hosts/max/plugins/create/create_pointcache.py +++ b/server_addon/max/client/ayon_max/plugins/create/create_pointcache.py @@ -1,6 +1,6 @@ # -*- coding: utf-8 -*- """Creator plugin for creating pointcache alembics.""" -from ayon_core.hosts.max.api import plugin +from ayon_max.api import plugin class CreatePointCache(plugin.MaxCreator): @@ -9,3 +9,5 @@ class CreatePointCache(plugin.MaxCreator): label = "Point Cache" product_type = "pointcache" icon = "gear" + + settings_category = "max" diff --git a/client/ayon_core/hosts/max/plugins/create/create_pointcloud.py b/server_addon/max/client/ayon_max/plugins/create/create_pointcloud.py similarity index 82% rename from client/ayon_core/hosts/max/plugins/create/create_pointcloud.py rename to server_addon/max/client/ayon_max/plugins/create/create_pointcloud.py index 9a58f4e624..52014d77b2 100644 --- a/client/ayon_core/hosts/max/plugins/create/create_pointcloud.py +++ b/server_addon/max/client/ayon_max/plugins/create/create_pointcloud.py @@ -1,6 +1,6 @@ # -*- coding: utf-8 -*- """Creator plugin for creating point cloud.""" -from ayon_core.hosts.max.api import plugin +from ayon_max.api import plugin class CreatePointCloud(plugin.MaxCreator): @@ -9,3 +9,5 @@ class CreatePointCloud(plugin.MaxCreator): label = "Point Cloud" product_type = "pointcloud" icon = "gear" + + settings_category = "max" diff --git a/client/ayon_core/hosts/max/plugins/create/create_redshift_proxy.py b/server_addon/max/client/ayon_max/plugins/create/create_redshift_proxy.py similarity index 80% rename from client/ayon_core/hosts/max/plugins/create/create_redshift_proxy.py rename to server_addon/max/client/ayon_max/plugins/create/create_redshift_proxy.py index 17f5349dc1..bcc96c7efe 100644 --- a/client/ayon_core/hosts/max/plugins/create/create_redshift_proxy.py +++ b/server_addon/max/client/ayon_max/plugins/create/create_redshift_proxy.py @@ -1,6 +1,6 @@ # -*- coding: utf-8 -*- """Creator plugin for creating camera.""" -from ayon_core.hosts.max.api import plugin +from ayon_max.api import plugin class CreateRedshiftProxy(plugin.MaxCreator): @@ -8,3 +8,5 @@ class CreateRedshiftProxy(plugin.MaxCreator): label = "Redshift Proxy" product_type = "redshiftproxy" icon = "gear" + + settings_category = "max" diff --git a/client/ayon_core/hosts/max/plugins/create/create_render.py b/server_addon/max/client/ayon_max/plugins/create/create_render.py similarity index 93% rename from client/ayon_core/hosts/max/plugins/create/create_render.py rename to server_addon/max/client/ayon_max/plugins/create/create_render.py index 60fe628a5e..d1e236f3ef 100644 --- a/client/ayon_core/hosts/max/plugins/create/create_render.py +++ b/server_addon/max/client/ayon_max/plugins/create/create_render.py @@ -1,9 +1,9 @@ # -*- coding: utf-8 -*- """Creator plugin for creating camera.""" import os -from ayon_core.hosts.max.api import plugin +from ayon_max.api import plugin from ayon_core.lib import BoolDef -from ayon_core.hosts.max.api.lib_rendersettings import RenderSettings +from ayon_max.api.lib_rendersettings import RenderSettings class CreateRender(plugin.MaxCreator): @@ -13,6 +13,8 @@ class CreateRender(plugin.MaxCreator): product_type = "maxrender" icon = "gear" + settings_category = "max" + def create(self, product_name, instance_data, pre_create_data): from pymxs import runtime as rt file = rt.maxFileName diff --git a/client/ayon_core/hosts/max/plugins/create/create_review.py b/server_addon/max/client/ayon_max/plugins/create/create_review.py similarity index 98% rename from client/ayon_core/hosts/max/plugins/create/create_review.py rename to server_addon/max/client/ayon_max/plugins/create/create_review.py index 0a0ffd2e46..a49490519a 100644 --- a/client/ayon_core/hosts/max/plugins/create/create_review.py +++ b/server_addon/max/client/ayon_max/plugins/create/create_review.py @@ -1,6 +1,6 @@ # -*- coding: utf-8 -*- """Creator plugin for creating review in Max.""" -from ayon_core.hosts.max.api import plugin +from ayon_max.api import plugin from ayon_core.lib import BoolDef, EnumDef, NumberDef @@ -12,6 +12,8 @@ class CreateReview(plugin.MaxCreator): product_type = "review" icon = "video-camera" + settings_category = "max" + review_width = 1920 review_height = 1080 percentSize = 100 diff --git a/client/ayon_core/hosts/max/plugins/create/create_tycache.py b/server_addon/max/client/ayon_max/plugins/create/create_tycache.py similarity index 80% rename from client/ayon_core/hosts/max/plugins/create/create_tycache.py rename to server_addon/max/client/ayon_max/plugins/create/create_tycache.py index 2b3893bf13..cbdd94e272 100644 --- a/client/ayon_core/hosts/max/plugins/create/create_tycache.py +++ b/server_addon/max/client/ayon_max/plugins/create/create_tycache.py @@ -1,6 +1,6 @@ # -*- coding: utf-8 -*- """Creator plugin for creating TyCache.""" -from ayon_core.hosts.max.api import plugin +from ayon_max.api import plugin class CreateTyCache(plugin.MaxCreator): @@ -9,3 +9,5 @@ class CreateTyCache(plugin.MaxCreator): label = "TyCache" product_type = "tycache" icon = "gear" + + settings_category = "max" diff --git a/client/ayon_core/hosts/max/plugins/create/create_workfile.py b/server_addon/max/client/ayon_max/plugins/create/create_workfile.py similarity index 97% rename from client/ayon_core/hosts/max/plugins/create/create_workfile.py rename to server_addon/max/client/ayon_max/plugins/create/create_workfile.py index 901da6254c..35c41f0fcc 100644 --- a/client/ayon_core/hosts/max/plugins/create/create_workfile.py +++ b/server_addon/max/client/ayon_max/plugins/create/create_workfile.py @@ -3,8 +3,8 @@ import ayon_api from ayon_core.pipeline import CreatedInstance, AutoCreator -from ayon_core.hosts.max.api import plugin -from ayon_core.hosts.max.api.lib import read, imprint +from ayon_max.api import plugin +from ayon_max.api.lib import read, imprint from pymxs import runtime as rt @@ -17,6 +17,8 @@ class CreateWorkfile(plugin.MaxCreatorBase, AutoCreator): default_variant = "Main" + settings_category = "max" + def create(self): variant = self.default_variant current_instance = next( diff --git a/client/ayon_core/hosts/max/plugins/load/load_camera_fbx.py b/server_addon/max/client/ayon_max/plugins/load/load_camera_fbx.py similarity index 96% rename from client/ayon_core/hosts/max/plugins/load/load_camera_fbx.py rename to server_addon/max/client/ayon_max/plugins/load/load_camera_fbx.py index 6f1e9988c5..81ea15d52a 100644 --- a/client/ayon_core/hosts/max/plugins/load/load_camera_fbx.py +++ b/server_addon/max/client/ayon_max/plugins/load/load_camera_fbx.py @@ -1,12 +1,12 @@ import os -from ayon_core.hosts.max.api import lib -from ayon_core.hosts.max.api.lib import ( +from ayon_max.api import lib +from ayon_max.api.lib import ( unique_namespace, get_namespace, object_transform_set ) -from ayon_core.hosts.max.api.pipeline import ( +from ayon_max.api.pipeline import ( containerise, get_previous_loaded_object, update_custom_attribute_data, diff --git a/client/ayon_core/hosts/max/plugins/load/load_max_scene.py b/server_addon/max/client/ayon_max/plugins/load/load_max_scene.py similarity index 98% rename from client/ayon_core/hosts/max/plugins/load/load_max_scene.py rename to server_addon/max/client/ayon_max/plugins/load/load_max_scene.py index 97b8c6cd52..7fca69b193 100644 --- a/client/ayon_core/hosts/max/plugins/load/load_max_scene.py +++ b/server_addon/max/client/ayon_max/plugins/load/load_max_scene.py @@ -1,14 +1,14 @@ import os from qtpy import QtWidgets, QtCore from ayon_core.lib.attribute_definitions import EnumDef -from ayon_core.hosts.max.api import lib -from ayon_core.hosts.max.api.lib import ( +from ayon_max.api import lib +from ayon_max.api.lib import ( unique_namespace, get_namespace, object_transform_set, is_headless ) -from ayon_core.hosts.max.api.pipeline import ( +from ayon_max.api.pipeline import ( containerise, get_previous_loaded_object, update_custom_attribute_data, remove_container_data diff --git a/client/ayon_core/hosts/max/plugins/load/load_model.py b/server_addon/max/client/ayon_max/plugins/load/load_model.py similarity index 96% rename from client/ayon_core/hosts/max/plugins/load/load_model.py rename to server_addon/max/client/ayon_max/plugins/load/load_model.py index 1070fce2bd..2a6bc45c18 100644 --- a/client/ayon_core/hosts/max/plugins/load/load_model.py +++ b/server_addon/max/client/ayon_max/plugins/load/load_model.py @@ -1,12 +1,12 @@ import os from ayon_core.pipeline import load, get_representation_path -from ayon_core.hosts.max.api.pipeline import ( +from ayon_max.api.pipeline import ( containerise, get_previous_loaded_object, remove_container_data ) -from ayon_core.hosts.max.api import lib -from ayon_core.hosts.max.api.lib import ( +from ayon_max.api import lib +from ayon_max.api.lib import ( maintained_selection, unique_namespace ) diff --git a/client/ayon_core/hosts/max/plugins/load/load_model_fbx.py b/server_addon/max/client/ayon_max/plugins/load/load_model_fbx.py similarity index 94% rename from client/ayon_core/hosts/max/plugins/load/load_model_fbx.py rename to server_addon/max/client/ayon_max/plugins/load/load_model_fbx.py index 6f5de20ae0..2775e1b453 100644 --- a/client/ayon_core/hosts/max/plugins/load/load_model_fbx.py +++ b/server_addon/max/client/ayon_max/plugins/load/load_model_fbx.py @@ -1,17 +1,17 @@ import os from ayon_core.pipeline import load, get_representation_path -from ayon_core.hosts.max.api.pipeline import ( +from ayon_max.api.pipeline import ( containerise, get_previous_loaded_object, update_custom_attribute_data, remove_container_data ) -from ayon_core.hosts.max.api import lib -from ayon_core.hosts.max.api.lib import ( +from ayon_max.api import lib +from ayon_max.api.lib import ( unique_namespace, get_namespace, object_transform_set ) -from ayon_core.hosts.max.api.lib import maintained_selection +from ayon_max.api.lib import maintained_selection class FbxModelLoader(load.LoaderPlugin): diff --git a/client/ayon_core/hosts/max/plugins/load/load_model_obj.py b/server_addon/max/client/ayon_max/plugins/load/load_model_obj.py similarity index 95% rename from client/ayon_core/hosts/max/plugins/load/load_model_obj.py rename to server_addon/max/client/ayon_max/plugins/load/load_model_obj.py index a9119259df..d38aadb5bc 100644 --- a/client/ayon_core/hosts/max/plugins/load/load_model_obj.py +++ b/server_addon/max/client/ayon_max/plugins/load/load_model_obj.py @@ -1,13 +1,13 @@ import os -from ayon_core.hosts.max.api import lib -from ayon_core.hosts.max.api.lib import ( +from ayon_max.api import lib +from ayon_max.api.lib import ( unique_namespace, get_namespace, maintained_selection, object_transform_set ) -from ayon_core.hosts.max.api.pipeline import ( +from ayon_max.api.pipeline import ( containerise, get_previous_loaded_object, update_custom_attribute_data, diff --git a/client/ayon_core/hosts/max/plugins/load/load_model_usd.py b/server_addon/max/client/ayon_max/plugins/load/load_model_usd.py similarity index 95% rename from client/ayon_core/hosts/max/plugins/load/load_model_usd.py rename to server_addon/max/client/ayon_max/plugins/load/load_model_usd.py index 2ed5d64a18..f4dd41d5db 100644 --- a/client/ayon_core/hosts/max/plugins/load/load_model_usd.py +++ b/server_addon/max/client/ayon_max/plugins/load/load_model_usd.py @@ -2,15 +2,15 @@ import os from pymxs import runtime as rt from ayon_core.pipeline.load import LoadError -from ayon_core.hosts.max.api import lib -from ayon_core.hosts.max.api.lib import ( +from ayon_max.api import lib +from ayon_max.api.lib import ( unique_namespace, get_namespace, object_transform_set, get_plugins ) -from ayon_core.hosts.max.api.lib import maintained_selection -from ayon_core.hosts.max.api.pipeline import ( +from ayon_max.api.lib import maintained_selection +from ayon_max.api.pipeline import ( containerise, get_previous_loaded_object, update_custom_attribute_data, diff --git a/client/ayon_core/hosts/max/plugins/load/load_pointcache.py b/server_addon/max/client/ayon_max/plugins/load/load_pointcache.py similarity index 95% rename from client/ayon_core/hosts/max/plugins/load/load_pointcache.py rename to server_addon/max/client/ayon_max/plugins/load/load_pointcache.py index 0743b3bb34..d7def3d0ba 100644 --- a/client/ayon_core/hosts/max/plugins/load/load_pointcache.py +++ b/server_addon/max/client/ayon_max/plugins/load/load_pointcache.py @@ -6,9 +6,9 @@ Because of limited api, alembics can be only loaded, but not easily updated. """ import os from ayon_core.pipeline import load, get_representation_path -from ayon_core.hosts.max.api import lib, maintained_selection -from ayon_core.hosts.max.api.lib import unique_namespace -from ayon_core.hosts.max.api.pipeline import ( +from ayon_max.api import lib, maintained_selection +from ayon_max.api.lib import unique_namespace +from ayon_max.api.pipeline import ( containerise, get_previous_loaded_object, remove_container_data diff --git a/client/ayon_core/hosts/max/plugins/load/load_pointcache_ornatrix.py b/server_addon/max/client/ayon_max/plugins/load/load_pointcache_ornatrix.py similarity index 96% rename from client/ayon_core/hosts/max/plugins/load/load_pointcache_ornatrix.py rename to server_addon/max/client/ayon_max/plugins/load/load_pointcache_ornatrix.py index 47690f84e9..bc997951c1 100644 --- a/client/ayon_core/hosts/max/plugins/load/load_pointcache_ornatrix.py +++ b/server_addon/max/client/ayon_max/plugins/load/load_pointcache_ornatrix.py @@ -1,20 +1,20 @@ import os from ayon_core.pipeline import load, get_representation_path from ayon_core.pipeline.load import LoadError -from ayon_core.hosts.max.api.pipeline import ( +from ayon_max.api.pipeline import ( containerise, get_previous_loaded_object, update_custom_attribute_data, remove_container_data ) -from ayon_core.hosts.max.api.lib import ( +from ayon_max.api.lib import ( unique_namespace, get_namespace, object_transform_set, get_plugins ) -from ayon_core.hosts.max.api import lib +from ayon_max.api import lib from pymxs import runtime as rt diff --git a/client/ayon_core/hosts/max/plugins/load/load_pointcloud.py b/server_addon/max/client/ayon_max/plugins/load/load_pointcloud.py similarity index 92% rename from client/ayon_core/hosts/max/plugins/load/load_pointcloud.py rename to server_addon/max/client/ayon_max/plugins/load/load_pointcloud.py index 0e79882fc5..0fb506d5bd 100644 --- a/client/ayon_core/hosts/max/plugins/load/load_pointcloud.py +++ b/server_addon/max/client/ayon_max/plugins/load/load_pointcloud.py @@ -1,11 +1,11 @@ import os -from ayon_core.hosts.max.api import lib, maintained_selection -from ayon_core.hosts.max.api.lib import ( +from ayon_max.api import lib, maintained_selection +from ayon_max.api.lib import ( unique_namespace, ) -from ayon_core.hosts.max.api.pipeline import ( +from ayon_max.api.pipeline import ( containerise, get_previous_loaded_object, update_custom_attribute_data, diff --git a/client/ayon_core/hosts/max/plugins/load/load_redshift_proxy.py b/server_addon/max/client/ayon_max/plugins/load/load_redshift_proxy.py similarity index 94% rename from client/ayon_core/hosts/max/plugins/load/load_redshift_proxy.py rename to server_addon/max/client/ayon_max/plugins/load/load_redshift_proxy.py index 22d42390d9..3fd84b7538 100644 --- a/client/ayon_core/hosts/max/plugins/load/load_redshift_proxy.py +++ b/server_addon/max/client/ayon_max/plugins/load/load_redshift_proxy.py @@ -6,14 +6,14 @@ from ayon_core.pipeline import ( get_representation_path ) from ayon_core.pipeline.load import LoadError -from ayon_core.hosts.max.api.pipeline import ( +from ayon_max.api.pipeline import ( containerise, update_custom_attribute_data, get_previous_loaded_object, remove_container_data ) -from ayon_core.hosts.max.api import lib -from ayon_core.hosts.max.api.lib import ( +from ayon_max.api import lib +from ayon_max.api.lib import ( unique_namespace, get_plugins ) diff --git a/client/ayon_core/hosts/max/plugins/load/load_tycache.py b/server_addon/max/client/ayon_max/plugins/load/load_tycache.py similarity index 92% rename from client/ayon_core/hosts/max/plugins/load/load_tycache.py rename to server_addon/max/client/ayon_max/plugins/load/load_tycache.py index 7a5296d933..e087d5599a 100644 --- a/client/ayon_core/hosts/max/plugins/load/load_tycache.py +++ b/server_addon/max/client/ayon_max/plugins/load/load_tycache.py @@ -1,10 +1,10 @@ import os -from ayon_core.hosts.max.api import lib, maintained_selection -from ayon_core.hosts.max.api.lib import ( +from ayon_max.api import lib, maintained_selection +from ayon_max.api.lib import ( unique_namespace, ) -from ayon_core.hosts.max.api.pipeline import ( +from ayon_max.api.pipeline import ( containerise, get_previous_loaded_object, update_custom_attribute_data, diff --git a/client/ayon_core/hosts/max/plugins/publish/collect_current_file.py b/server_addon/max/client/ayon_max/plugins/publish/collect_current_file.py similarity index 100% rename from client/ayon_core/hosts/max/plugins/publish/collect_current_file.py rename to server_addon/max/client/ayon_max/plugins/publish/collect_current_file.py diff --git a/client/ayon_core/hosts/max/plugins/publish/collect_frame_range.py b/server_addon/max/client/ayon_max/plugins/publish/collect_frame_range.py similarity index 100% rename from client/ayon_core/hosts/max/plugins/publish/collect_frame_range.py rename to server_addon/max/client/ayon_max/plugins/publish/collect_frame_range.py diff --git a/client/ayon_core/hosts/max/plugins/publish/collect_members.py b/server_addon/max/client/ayon_max/plugins/publish/collect_members.py similarity index 100% rename from client/ayon_core/hosts/max/plugins/publish/collect_members.py rename to server_addon/max/client/ayon_max/plugins/publish/collect_members.py diff --git a/client/ayon_core/hosts/max/plugins/publish/collect_render.py b/server_addon/max/client/ayon_max/plugins/publish/collect_render.py similarity index 94% rename from client/ayon_core/hosts/max/plugins/publish/collect_render.py rename to server_addon/max/client/ayon_max/plugins/publish/collect_render.py index 4ad9dfb3a3..a5e8d65df2 100644 --- a/client/ayon_core/hosts/max/plugins/publish/collect_render.py +++ b/server_addon/max/client/ayon_max/plugins/publish/collect_render.py @@ -5,10 +5,10 @@ import pyblish.api from pymxs import runtime as rt from ayon_core.pipeline.publish import KnownPublishError -from ayon_core.hosts.max.api import colorspace -from ayon_core.hosts.max.api.lib import get_max_version, get_current_renderer -from ayon_core.hosts.max.api.lib_rendersettings import RenderSettings -from ayon_core.hosts.max.api.lib_renderproducts import RenderProducts +from ayon_max.api import colorspace +from ayon_max.api.lib import get_max_version, get_current_renderer +from ayon_max.api.lib_rendersettings import RenderSettings +from ayon_max.api.lib_renderproducts import RenderProducts class CollectRender(pyblish.api.InstancePlugin): diff --git a/client/ayon_core/hosts/max/plugins/publish/collect_review.py b/server_addon/max/client/ayon_max/plugins/publish/collect_review.py similarity index 99% rename from client/ayon_core/hosts/max/plugins/publish/collect_review.py rename to server_addon/max/client/ayon_max/plugins/publish/collect_review.py index d746e2b2db..321aa7439c 100644 --- a/client/ayon_core/hosts/max/plugins/publish/collect_review.py +++ b/server_addon/max/client/ayon_max/plugins/publish/collect_review.py @@ -4,7 +4,7 @@ import pyblish.api from pymxs import runtime as rt from ayon_core.lib import BoolDef -from ayon_core.hosts.max.api.lib import get_max_version +from ayon_max.api.lib import get_max_version from ayon_core.pipeline.publish import ( AYONPyblishPluginMixin, KnownPublishError diff --git a/client/ayon_core/hosts/max/plugins/publish/collect_tycache_attributes.py b/server_addon/max/client/ayon_max/plugins/publish/collect_tycache_attributes.py similarity index 100% rename from client/ayon_core/hosts/max/plugins/publish/collect_tycache_attributes.py rename to server_addon/max/client/ayon_max/plugins/publish/collect_tycache_attributes.py diff --git a/client/ayon_core/hosts/max/plugins/publish/collect_workfile.py b/server_addon/max/client/ayon_max/plugins/publish/collect_workfile.py similarity index 100% rename from client/ayon_core/hosts/max/plugins/publish/collect_workfile.py rename to server_addon/max/client/ayon_max/plugins/publish/collect_workfile.py diff --git a/client/ayon_core/hosts/max/plugins/publish/extract_alembic.py b/server_addon/max/client/ayon_max/plugins/publish/extract_alembic.py similarity index 97% rename from client/ayon_core/hosts/max/plugins/publish/extract_alembic.py rename to server_addon/max/client/ayon_max/plugins/publish/extract_alembic.py index 67cec23ecc..b0999e5a78 100644 --- a/client/ayon_core/hosts/max/plugins/publish/extract_alembic.py +++ b/server_addon/max/client/ayon_max/plugins/publish/extract_alembic.py @@ -41,8 +41,8 @@ import os import pyblish.api from ayon_core.pipeline import publish, OptionalPyblishPluginMixin from pymxs import runtime as rt -from ayon_core.hosts.max.api import maintained_selection -from ayon_core.hosts.max.api.lib import suspended_refresh +from ayon_max.api import maintained_selection +from ayon_max.api.lib import suspended_refresh from ayon_core.lib import BoolDef diff --git a/client/ayon_core/hosts/max/plugins/publish/extract_fbx.py b/server_addon/max/client/ayon_max/plugins/publish/extract_fbx.py similarity index 95% rename from client/ayon_core/hosts/max/plugins/publish/extract_fbx.py rename to server_addon/max/client/ayon_max/plugins/publish/extract_fbx.py index 3d80588c47..bdfc1d0d78 100644 --- a/client/ayon_core/hosts/max/plugins/publish/extract_fbx.py +++ b/server_addon/max/client/ayon_max/plugins/publish/extract_fbx.py @@ -2,8 +2,8 @@ import os import pyblish.api from ayon_core.pipeline import publish, OptionalPyblishPluginMixin from pymxs import runtime as rt -from ayon_core.hosts.max.api import maintained_selection -from ayon_core.hosts.max.api.lib import convert_unit_scale +from ayon_max.api import maintained_selection +from ayon_max.api.lib import convert_unit_scale class ExtractModelFbx(publish.Extractor, OptionalPyblishPluginMixin): diff --git a/client/ayon_core/hosts/max/plugins/publish/extract_max_scene_raw.py b/server_addon/max/client/ayon_max/plugins/publish/extract_max_scene_raw.py similarity index 97% rename from client/ayon_core/hosts/max/plugins/publish/extract_max_scene_raw.py rename to server_addon/max/client/ayon_max/plugins/publish/extract_max_scene_raw.py index f5c703564c..ecde6d2ce9 100644 --- a/client/ayon_core/hosts/max/plugins/publish/extract_max_scene_raw.py +++ b/server_addon/max/client/ayon_max/plugins/publish/extract_max_scene_raw.py @@ -15,6 +15,8 @@ class ExtractMaxSceneRaw(publish.Extractor, OptionalPyblishPluginMixin): families = ["camera", "maxScene", "model"] optional = True + settings_category = "max" + def process(self, instance): if not self.is_active(instance.data): return diff --git a/client/ayon_core/hosts/max/plugins/publish/extract_model_obj.py b/server_addon/max/client/ayon_max/plugins/publish/extract_model_obj.py similarity index 93% rename from client/ayon_core/hosts/max/plugins/publish/extract_model_obj.py rename to server_addon/max/client/ayon_max/plugins/publish/extract_model_obj.py index 03bdde7d5d..6556bd7809 100644 --- a/client/ayon_core/hosts/max/plugins/publish/extract_model_obj.py +++ b/server_addon/max/client/ayon_max/plugins/publish/extract_model_obj.py @@ -2,8 +2,8 @@ import os import pyblish.api from ayon_core.pipeline import publish, OptionalPyblishPluginMixin from pymxs import runtime as rt -from ayon_core.hosts.max.api import maintained_selection -from ayon_core.hosts.max.api.lib import suspended_refresh +from ayon_max.api import maintained_selection +from ayon_max.api.lib import suspended_refresh from ayon_core.pipeline.publish import KnownPublishError @@ -18,6 +18,8 @@ class ExtractModelObj(publish.Extractor, OptionalPyblishPluginMixin): families = ["model"] optional = True + settings_category = "max" + def process(self, instance): if not self.is_active(instance.data): return diff --git a/client/ayon_core/hosts/max/plugins/publish/extract_model_usd.py b/server_addon/max/client/ayon_max/plugins/publish/extract_model_usd.py similarity index 97% rename from client/ayon_core/hosts/max/plugins/publish/extract_model_usd.py rename to server_addon/max/client/ayon_max/plugins/publish/extract_model_usd.py index 64791e4c7d..a48126c6e5 100644 --- a/client/ayon_core/hosts/max/plugins/publish/extract_model_usd.py +++ b/server_addon/max/client/ayon_max/plugins/publish/extract_model_usd.py @@ -3,7 +3,7 @@ import os import pyblish.api from pymxs import runtime as rt -from ayon_core.hosts.max.api import maintained_selection +from ayon_max.api import maintained_selection from ayon_core.pipeline import OptionalPyblishPluginMixin, publish @@ -17,6 +17,8 @@ class ExtractModelUSD(publish.Extractor, families = ["model"] optional = True + settings_category = "max" + def process(self, instance): if not self.is_active(instance.data): return diff --git a/client/ayon_core/hosts/max/plugins/publish/extract_pointcloud.py b/server_addon/max/client/ayon_max/plugins/publish/extract_pointcloud.py similarity index 99% rename from client/ayon_core/hosts/max/plugins/publish/extract_pointcloud.py rename to server_addon/max/client/ayon_max/plugins/publish/extract_pointcloud.py index 67dde7f0a6..f763325eb9 100644 --- a/client/ayon_core/hosts/max/plugins/publish/extract_pointcloud.py +++ b/server_addon/max/client/ayon_max/plugins/publish/extract_pointcloud.py @@ -3,7 +3,7 @@ import os import pyblish.api from pymxs import runtime as rt -from ayon_core.hosts.max.api import maintained_selection +from ayon_max.api import maintained_selection from ayon_core.pipeline import publish diff --git a/client/ayon_core/hosts/max/plugins/publish/extract_redshift_proxy.py b/server_addon/max/client/ayon_max/plugins/publish/extract_redshift_proxy.py similarity index 97% rename from client/ayon_core/hosts/max/plugins/publish/extract_redshift_proxy.py rename to server_addon/max/client/ayon_max/plugins/publish/extract_redshift_proxy.py index 6a647670bc..dfb3527be1 100644 --- a/client/ayon_core/hosts/max/plugins/publish/extract_redshift_proxy.py +++ b/server_addon/max/client/ayon_max/plugins/publish/extract_redshift_proxy.py @@ -2,7 +2,7 @@ import os import pyblish.api from ayon_core.pipeline import publish from pymxs import runtime as rt -from ayon_core.hosts.max.api import maintained_selection +from ayon_max.api import maintained_selection class ExtractRedshiftProxy(publish.Extractor): diff --git a/client/ayon_core/hosts/max/plugins/publish/extract_review_animation.py b/server_addon/max/client/ayon_max/plugins/publish/extract_review_animation.py similarity index 97% rename from client/ayon_core/hosts/max/plugins/publish/extract_review_animation.py rename to server_addon/max/client/ayon_max/plugins/publish/extract_review_animation.py index 12f1fbb63b..b6397d404e 100644 --- a/client/ayon_core/hosts/max/plugins/publish/extract_review_animation.py +++ b/server_addon/max/client/ayon_max/plugins/publish/extract_review_animation.py @@ -1,7 +1,7 @@ import os import pyblish.api from ayon_core.pipeline import publish -from ayon_core.hosts.max.api.preview_animation import ( +from ayon_max.api.preview_animation import ( render_preview_animation ) diff --git a/client/ayon_core/hosts/max/plugins/publish/extract_thumbnail.py b/server_addon/max/client/ayon_max/plugins/publish/extract_thumbnail.py similarity index 95% rename from client/ayon_core/hosts/max/plugins/publish/extract_thumbnail.py rename to server_addon/max/client/ayon_max/plugins/publish/extract_thumbnail.py index 5764ce98c4..183e381be2 100644 --- a/client/ayon_core/hosts/max/plugins/publish/extract_thumbnail.py +++ b/server_addon/max/client/ayon_max/plugins/publish/extract_thumbnail.py @@ -1,7 +1,7 @@ import os import pyblish.api from ayon_core.pipeline import publish -from ayon_core.hosts.max.api.preview_animation import render_preview_animation +from ayon_max.api.preview_animation import render_preview_animation class ExtractThumbnail(publish.Extractor): diff --git a/client/ayon_core/hosts/max/plugins/publish/extract_tycache.py b/server_addon/max/client/ayon_max/plugins/publish/extract_tycache.py similarity index 98% rename from client/ayon_core/hosts/max/plugins/publish/extract_tycache.py rename to server_addon/max/client/ayon_max/plugins/publish/extract_tycache.py index 50bb06a765..576abe32a2 100644 --- a/client/ayon_core/hosts/max/plugins/publish/extract_tycache.py +++ b/server_addon/max/client/ayon_max/plugins/publish/extract_tycache.py @@ -3,7 +3,7 @@ import os import pyblish.api from pymxs import runtime as rt -from ayon_core.hosts.max.api import maintained_selection +from ayon_max.api import maintained_selection from ayon_core.pipeline import publish diff --git a/client/ayon_core/hosts/max/plugins/publish/help/validate_model_name.xml b/server_addon/max/client/ayon_max/plugins/publish/help/validate_model_name.xml similarity index 100% rename from client/ayon_core/hosts/max/plugins/publish/help/validate_model_name.xml rename to server_addon/max/client/ayon_max/plugins/publish/help/validate_model_name.xml diff --git a/client/ayon_core/hosts/max/plugins/publish/increment_workfile_version.py b/server_addon/max/client/ayon_max/plugins/publish/increment_workfile_version.py similarity index 100% rename from client/ayon_core/hosts/max/plugins/publish/increment_workfile_version.py rename to server_addon/max/client/ayon_max/plugins/publish/increment_workfile_version.py diff --git a/client/ayon_core/hosts/max/plugins/publish/save_scene.py b/server_addon/max/client/ayon_max/plugins/publish/save_scene.py similarity index 100% rename from client/ayon_core/hosts/max/plugins/publish/save_scene.py rename to server_addon/max/client/ayon_max/plugins/publish/save_scene.py diff --git a/client/ayon_core/hosts/max/plugins/publish/save_scenes_for_cameras.py b/server_addon/max/client/ayon_max/plugins/publish/save_scenes_for_cameras.py similarity index 96% rename from client/ayon_core/hosts/max/plugins/publish/save_scenes_for_cameras.py rename to server_addon/max/client/ayon_max/plugins/publish/save_scenes_for_cameras.py index 817db1b28f..a211210550 100644 --- a/client/ayon_core/hosts/max/plugins/publish/save_scenes_for_cameras.py +++ b/server_addon/max/client/ayon_max/plugins/publish/save_scenes_for_cameras.py @@ -5,8 +5,8 @@ import tempfile from pymxs import runtime as rt from ayon_core.lib import run_subprocess -from ayon_core.hosts.max.api.lib_rendersettings import RenderSettings -from ayon_core.hosts.max.api.lib_renderproducts import RenderProducts +from ayon_max.api.lib_rendersettings import RenderSettings +from ayon_max.api.lib_renderproducts import RenderProducts class SaveScenesForCamera(pyblish.api.InstancePlugin): diff --git a/client/ayon_core/hosts/max/plugins/publish/validate_attributes.py b/server_addon/max/client/ayon_max/plugins/publish/validate_attributes.py similarity index 99% rename from client/ayon_core/hosts/max/plugins/publish/validate_attributes.py rename to server_addon/max/client/ayon_max/plugins/publish/validate_attributes.py index 354539871f..a489533b2c 100644 --- a/client/ayon_core/hosts/max/plugins/publish/validate_attributes.py +++ b/server_addon/max/client/ayon_max/plugins/publish/validate_attributes.py @@ -61,6 +61,8 @@ class ValidateAttributes(OptionalPyblishPluginMixin, actions = [RepairContextAction] optional = True + settings_category = "max" + @classmethod def get_invalid(cls, context): attributes = json.loads( diff --git a/client/ayon_core/hosts/max/plugins/publish/validate_camera_attributes.py b/server_addon/max/client/ayon_max/plugins/publish/validate_camera_attributes.py similarity index 97% rename from client/ayon_core/hosts/max/plugins/publish/validate_camera_attributes.py rename to server_addon/max/client/ayon_max/plugins/publish/validate_camera_attributes.py index 9398cba2b7..63a2ef39a7 100644 --- a/client/ayon_core/hosts/max/plugins/publish/validate_camera_attributes.py +++ b/server_addon/max/client/ayon_max/plugins/publish/validate_camera_attributes.py @@ -6,7 +6,7 @@ from ayon_core.pipeline.publish import ( OptionalPyblishPluginMixin, PublishValidationError ) -from ayon_core.hosts.max.api.action import SelectInvalidAction +from ayon_max.api.action import SelectInvalidAction class ValidateCameraAttributes(OptionalPyblishPluginMixin, @@ -23,6 +23,8 @@ class ValidateCameraAttributes(OptionalPyblishPluginMixin, actions = [SelectInvalidAction, RepairAction] optional = True + settings_category = "max" + DEFAULTS = ["fov", "nearrange", "farrange", "nearclip", "farclip"] CAM_TYPE = ["Freecamera", "Targetcamera", diff --git a/client/ayon_core/hosts/max/plugins/publish/validate_camera_contents.py b/server_addon/max/client/ayon_max/plugins/publish/validate_camera_contents.py similarity index 100% rename from client/ayon_core/hosts/max/plugins/publish/validate_camera_contents.py rename to server_addon/max/client/ayon_max/plugins/publish/validate_camera_contents.py diff --git a/client/ayon_core/hosts/max/plugins/publish/validate_extended_viewport.py b/server_addon/max/client/ayon_max/plugins/publish/validate_extended_viewport.py similarity index 100% rename from client/ayon_core/hosts/max/plugins/publish/validate_extended_viewport.py rename to server_addon/max/client/ayon_max/plugins/publish/validate_extended_viewport.py diff --git a/client/ayon_core/hosts/max/plugins/publish/validate_frame_range.py b/server_addon/max/client/ayon_max/plugins/publish/validate_frame_range.py similarity index 97% rename from client/ayon_core/hosts/max/plugins/publish/validate_frame_range.py rename to server_addon/max/client/ayon_max/plugins/publish/validate_frame_range.py index 11b55232d5..9a9f22dd3e 100644 --- a/client/ayon_core/hosts/max/plugins/publish/validate_frame_range.py +++ b/server_addon/max/client/ayon_max/plugins/publish/validate_frame_range.py @@ -10,7 +10,7 @@ from ayon_core.pipeline.publish import ( PublishValidationError, KnownPublishError ) -from ayon_core.hosts.max.api.lib import get_frame_range, set_timeline +from ayon_max.api.lib import get_frame_range, set_timeline class ValidateFrameRange(pyblish.api.InstancePlugin, @@ -36,6 +36,8 @@ class ValidateFrameRange(pyblish.api.InstancePlugin, optional = True actions = [RepairAction] + settings_category = "max" + def process(self, instance): if not self.is_active(instance.data): self.log.debug("Skipping Validate Frame Range...") diff --git a/client/ayon_core/hosts/max/plugins/publish/validate_instance_has_members.py b/server_addon/max/client/ayon_max/plugins/publish/validate_instance_has_members.py similarity index 100% rename from client/ayon_core/hosts/max/plugins/publish/validate_instance_has_members.py rename to server_addon/max/client/ayon_max/plugins/publish/validate_instance_has_members.py diff --git a/client/ayon_core/hosts/max/plugins/publish/validate_instance_in_context.py b/server_addon/max/client/ayon_max/plugins/publish/validate_instance_in_context.py similarity index 97% rename from client/ayon_core/hosts/max/plugins/publish/validate_instance_in_context.py rename to server_addon/max/client/ayon_max/plugins/publish/validate_instance_in_context.py index 5107665235..d5bdfe4eb0 100644 --- a/client/ayon_core/hosts/max/plugins/publish/validate_instance_in_context.py +++ b/server_addon/max/client/ayon_max/plugins/publish/validate_instance_in_context.py @@ -7,7 +7,7 @@ from ayon_core.pipeline.publish import ( PublishValidationError, OptionalPyblishPluginMixin ) -from ayon_core.hosts.max.api.action import SelectInvalidAction +from ayon_max.api.action import SelectInvalidAction from pymxs import runtime as rt @@ -27,6 +27,8 @@ class ValidateInstanceInContext(pyblish.api.InstancePlugin, hosts = ["max"] actions = [SelectInvalidAction, RepairAction] + settings_category = "max" + def process(self, instance): if not self.is_active(instance.data): return diff --git a/client/ayon_core/hosts/max/plugins/publish/validate_loaded_plugin.py b/server_addon/max/client/ayon_max/plugins/publish/validate_loaded_plugin.py similarity index 98% rename from client/ayon_core/hosts/max/plugins/publish/validate_loaded_plugin.py rename to server_addon/max/client/ayon_max/plugins/publish/validate_loaded_plugin.py index e278041b6b..1fddc7998d 100644 --- a/client/ayon_core/hosts/max/plugins/publish/validate_loaded_plugin.py +++ b/server_addon/max/client/ayon_max/plugins/publish/validate_loaded_plugin.py @@ -9,7 +9,7 @@ from ayon_core.pipeline.publish import ( OptionalPyblishPluginMixin, PublishValidationError ) -from ayon_core.hosts.max.api.lib import get_plugins +from ayon_max.api.lib import get_plugins class ValidateLoadedPlugin(OptionalPyblishPluginMixin, @@ -25,6 +25,8 @@ class ValidateLoadedPlugin(OptionalPyblishPluginMixin, optional = True actions = [RepairAction] + settings_category = "max" + family_plugins_mapping = [] @classmethod diff --git a/client/ayon_core/hosts/max/plugins/publish/validate_mesh_has_uv.py b/server_addon/max/client/ayon_max/plugins/publish/validate_mesh_has_uv.py similarity index 95% rename from client/ayon_core/hosts/max/plugins/publish/validate_mesh_has_uv.py rename to server_addon/max/client/ayon_max/plugins/publish/validate_mesh_has_uv.py index ccd91da2be..31143a60c0 100644 --- a/client/ayon_core/hosts/max/plugins/publish/validate_mesh_has_uv.py +++ b/server_addon/max/client/ayon_max/plugins/publish/validate_mesh_has_uv.py @@ -1,6 +1,6 @@ import pyblish.api -from ayon_core.hosts.max.api.action import SelectInvalidAction +from ayon_max.api.action import SelectInvalidAction from ayon_core.pipeline.publish import ( ValidateMeshOrder, OptionalPyblishPluginMixin, @@ -30,6 +30,8 @@ class ValidateMeshHasUVs(pyblish.api.InstancePlugin, actions = [SelectInvalidAction] optional = True + settings_category = "max" + @classmethod def get_invalid(cls, instance): meshes = [member for member in instance.data["members"] diff --git a/client/ayon_core/hosts/max/plugins/publish/validate_model_contents.py b/server_addon/max/client/ayon_max/plugins/publish/validate_model_contents.py similarity index 100% rename from client/ayon_core/hosts/max/plugins/publish/validate_model_contents.py rename to server_addon/max/client/ayon_max/plugins/publish/validate_model_contents.py diff --git a/client/ayon_core/hosts/max/plugins/publish/validate_model_name.py b/server_addon/max/client/ayon_max/plugins/publish/validate_model_name.py similarity index 97% rename from client/ayon_core/hosts/max/plugins/publish/validate_model_name.py rename to server_addon/max/client/ayon_max/plugins/publish/validate_model_name.py index eb86e2e5bd..d691b739b7 100644 --- a/client/ayon_core/hosts/max/plugins/publish/validate_model_name.py +++ b/server_addon/max/client/ayon_max/plugins/publish/validate_model_name.py @@ -4,7 +4,7 @@ import re import pyblish.api -from ayon_core.hosts.max.api.action import SelectInvalidAction +from ayon_max.api.action import SelectInvalidAction from ayon_core.pipeline.publish import ( OptionalPyblishPluginMixin, @@ -39,6 +39,9 @@ class ValidateModelName(pyblish.api.InstancePlugin, families = ["model"] label = "Validate Model Name" actions = [SelectInvalidAction] + + settings_category = "max" + # defined by settings regex = r"(.*)_(?P.*)_(GEO)" # cache diff --git a/client/ayon_core/hosts/max/plugins/publish/validate_no_animation.py b/server_addon/max/client/ayon_max/plugins/publish/validate_no_animation.py similarity index 95% rename from client/ayon_core/hosts/max/plugins/publish/validate_no_animation.py rename to server_addon/max/client/ayon_max/plugins/publish/validate_no_animation.py index 4b2a18d606..26384954ca 100644 --- a/client/ayon_core/hosts/max/plugins/publish/validate_no_animation.py +++ b/server_addon/max/client/ayon_max/plugins/publish/validate_no_animation.py @@ -5,7 +5,7 @@ from ayon_core.pipeline import ( PublishValidationError, OptionalPyblishPluginMixin ) -from ayon_core.hosts.max.api.action import SelectInvalidAction +from ayon_max.api.action import SelectInvalidAction def get_invalid_keys(obj): @@ -39,6 +39,8 @@ class ValidateNoAnimation(pyblish.api.InstancePlugin, label = "Validate No Animation" actions = [SelectInvalidAction] + settings_category = "max" + def process(self, instance): if not self.is_active(instance.data): return diff --git a/client/ayon_core/hosts/max/plugins/publish/validate_pointcloud.py b/server_addon/max/client/ayon_max/plugins/publish/validate_pointcloud.py similarity index 100% rename from client/ayon_core/hosts/max/plugins/publish/validate_pointcloud.py rename to server_addon/max/client/ayon_max/plugins/publish/validate_pointcloud.py diff --git a/client/ayon_core/hosts/max/plugins/publish/validate_renderable_camera.py b/server_addon/max/client/ayon_max/plugins/publish/validate_renderable_camera.py similarity index 95% rename from client/ayon_core/hosts/max/plugins/publish/validate_renderable_camera.py rename to server_addon/max/client/ayon_max/plugins/publish/validate_renderable_camera.py index ffd6b183fe..dc05771e1b 100644 --- a/client/ayon_core/hosts/max/plugins/publish/validate_renderable_camera.py +++ b/server_addon/max/client/ayon_max/plugins/publish/validate_renderable_camera.py @@ -4,7 +4,7 @@ from ayon_core.pipeline import ( PublishValidationError, OptionalPyblishPluginMixin) from ayon_core.pipeline.publish import RepairAction -from ayon_core.hosts.max.api.lib import get_current_renderer +from ayon_max.api.lib import get_current_renderer from pymxs import runtime as rt diff --git a/client/ayon_core/hosts/max/plugins/publish/validate_renderer_redshift_proxy.py b/server_addon/max/client/ayon_max/plugins/publish/validate_renderer_redshift_proxy.py similarity index 96% rename from client/ayon_core/hosts/max/plugins/publish/validate_renderer_redshift_proxy.py rename to server_addon/max/client/ayon_max/plugins/publish/validate_renderer_redshift_proxy.py index de3a806c85..66c69bc100 100644 --- a/client/ayon_core/hosts/max/plugins/publish/validate_renderer_redshift_proxy.py +++ b/server_addon/max/client/ayon_max/plugins/publish/validate_renderer_redshift_proxy.py @@ -3,7 +3,7 @@ import pyblish.api from ayon_core.pipeline import PublishValidationError from pymxs import runtime as rt from ayon_core.pipeline.publish import RepairAction -from ayon_core.hosts.max.api.lib import get_current_renderer +from ayon_max.api.lib import get_current_renderer class ValidateRendererRedshiftProxy(pyblish.api.InstancePlugin): diff --git a/client/ayon_core/hosts/max/plugins/publish/validate_renderpasses.py b/server_addon/max/client/ayon_max/plugins/publish/validate_renderpasses.py similarity index 98% rename from client/ayon_core/hosts/max/plugins/publish/validate_renderpasses.py rename to server_addon/max/client/ayon_max/plugins/publish/validate_renderpasses.py index 394d3119c4..d0d47c6340 100644 --- a/client/ayon_core/hosts/max/plugins/publish/validate_renderpasses.py +++ b/server_addon/max/client/ayon_max/plugins/publish/validate_renderpasses.py @@ -7,7 +7,7 @@ from ayon_core.pipeline.publish import ( PublishValidationError, OptionalPyblishPluginMixin ) -from ayon_core.hosts.max.api.lib_rendersettings import RenderSettings +from ayon_max.api.lib_rendersettings import RenderSettings class ValidateRenderPasses(OptionalPyblishPluginMixin, @@ -21,6 +21,8 @@ class ValidateRenderPasses(OptionalPyblishPluginMixin, label = "Validate Render Passes" actions = [RepairAction] + settings_category = "max" + def process(self, instance): invalid = self.get_invalid(instance) if invalid: diff --git a/client/ayon_core/hosts/max/plugins/publish/validate_resolution_setting.py b/server_addon/max/client/ayon_max/plugins/publish/validate_resolution_setting.py similarity index 98% rename from client/ayon_core/hosts/max/plugins/publish/validate_resolution_setting.py rename to server_addon/max/client/ayon_max/plugins/publish/validate_resolution_setting.py index 5f6cd0a21d..9f7ec17dd9 100644 --- a/client/ayon_core/hosts/max/plugins/publish/validate_resolution_setting.py +++ b/server_addon/max/client/ayon_max/plugins/publish/validate_resolution_setting.py @@ -7,7 +7,7 @@ from ayon_core.pipeline.publish import ( RepairAction, PublishValidationError ) -from ayon_core.hosts.max.api.lib import ( +from ayon_max.api.lib import ( reset_scene_resolution, imprint ) diff --git a/client/ayon_core/hosts/max/plugins/publish/validate_scene_saved.py b/server_addon/max/client/ayon_max/plugins/publish/validate_scene_saved.py similarity index 100% rename from client/ayon_core/hosts/max/plugins/publish/validate_scene_saved.py rename to server_addon/max/client/ayon_max/plugins/publish/validate_scene_saved.py diff --git a/client/ayon_core/hosts/max/plugins/publish/validate_tyflow_data.py b/server_addon/max/client/ayon_max/plugins/publish/validate_tyflow_data.py similarity index 100% rename from client/ayon_core/hosts/max/plugins/publish/validate_tyflow_data.py rename to server_addon/max/client/ayon_max/plugins/publish/validate_tyflow_data.py diff --git a/client/ayon_core/hosts/max/startup/startup.ms b/server_addon/max/client/ayon_max/startup/startup.ms similarity index 100% rename from client/ayon_core/hosts/max/startup/startup.ms rename to server_addon/max/client/ayon_max/startup/startup.ms diff --git a/client/ayon_core/hosts/max/startup/startup.py b/server_addon/max/client/ayon_max/startup/startup.py similarity index 88% rename from client/ayon_core/hosts/max/startup/startup.py rename to server_addon/max/client/ayon_max/startup/startup.py index 49a861bad0..1462cc93b7 100644 --- a/client/ayon_core/hosts/max/startup/startup.py +++ b/server_addon/max/client/ayon_max/startup/startup.py @@ -1,15 +1,13 @@ # -*- coding: utf-8 -*- import os import sys - +from ayon_max.api import MaxHost +from ayon_core.pipeline import install_host # this might happen in some 3dsmax version where PYTHONPATH isn't added # to sys.path automatically for path in os.environ["PYTHONPATH"].split(os.pathsep): if path and path not in sys.path: sys.path.append(path) -from ayon_core.hosts.max.api import MaxHost -from ayon_core.pipeline import install_host - host = MaxHost() install_host(host) diff --git a/server_addon/max/package.py b/server_addon/max/package.py index fb1f1b3050..ddd4e3b33e 100644 --- a/server_addon/max/package.py +++ b/server_addon/max/package.py @@ -1,3 +1,9 @@ name = "max" title = "Max" -version = "0.1.7" +version = "0.2.0" +client_dir = "ayon_max" + +ayon_required_addons = { + "core": ">0.3.2", +} +ayon_compatible_addons = {}