ayon-core/server_addon/unreal/server/settings.py
2023-12-06 16:37:27 +01:00

64 lines
1.5 KiB
Python

from pydantic import Field
from ayon_server.settings import BaseSettingsModel
from .imageio import UnrealImageIOModel
class ProjectSetup(BaseSettingsModel):
dev_mode: bool = Field(
False,
title="Dev mode"
)
def _render_format_enum():
return [
{"value": "png", "label": "PNG"},
{"value": "exr", "label": "EXR"},
{"value": "jpg", "label": "JPG"},
{"value": "bmp", "label": "BMP"}
]
class UnrealSettings(BaseSettingsModel):
imageio: UnrealImageIOModel = Field(
default_factory=UnrealImageIOModel,
title="Color Management (ImageIO)"
)
level_sequences_for_layouts: bool = Field(
False,
title="Generate level sequences when loading layouts"
)
delete_unmatched_assets: bool = Field(
False,
title="Delete assets that are not matched"
)
render_config_path: str = Field(
"",
title="Render Config Path"
)
preroll_frames: int = Field(
0,
title="Pre-roll frames"
)
render_format: str = Field(
"png",
title="Render format",
enum_resolver=_render_format_enum
)
project_setup: ProjectSetup = Field(
default_factory=ProjectSetup,
title="Project Setup",
)
DEFAULT_VALUES = {
"level_sequences_for_layouts": True,
"delete_unmatched_assets": False,
"render_config_path": "",
"preroll_frames": 0,
"render_format": "exr",
"project_setup": {
"dev_mode": False
}
}