Skip to content

creator_plugins

AutoDetectCreateRenderModel

Bases: BaseSettingsModel

The creator to auto-detect Render Layers and Render Passes in scene.

For Render Layers is used group name as a variant and for Render Passes is used Harmony layer name.

Group names are renamed by their used order in scene. The renaming template where can be used '{group_index}' formatting key which is filled by "used position index of group". - Template: 'G{group_index}' - Group offset: '10' - Group padding: '3'

Would create group names "G010", "G020", ...

If this plugin is enabled, both 'CreateRenderLayer' and 'CreateRenderPass' must be enabled!

To fully use this make sure settings in core addon (ayon+settings://core/tools/creator/product_name_profiles) are set to '{product[type]}{Task[name]}{Renderlayer}{Renderpass}' for host 'harmony' and product types: ['renderLayer', 'renderPass']!

Source code in server/settings/creator_plugins.py
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
class AutoDetectCreateRenderModel(BaseSettingsModel):
    """The creator to auto-detect Render Layers and Render Passes in scene.

    For Render Layers is used group name as a variant and for Render Passes is
    used Harmony  layer name.

    Group names are renamed by their used order in scene. The renaming
    template where can be used '{group_index}' formatting key which is
    filled by "used position index of group".
    - Template: 'G{group_index}'
    - Group offset: '10'
    - Group padding: '3'

    Would create group names "G010", "G020", ...

    If this plugin is enabled, both 'CreateRenderLayer' and 'CreateRenderPass'
    must be enabled!

    To fully use this make sure settings in core addon
    (ayon+settings://core/tools/creator/product_name_profiles) are
    set to '{product[type]}{Task[name]}_{Renderlayer}_{Renderpass}' for
    host 'harmony' and product types: ['renderLayer', 'renderPass']!
    """

    enabled: bool = SettingsField()
    render_layer_variant_template: str = SettingsField(
        title="Render layer variant template",
        description="Calculate variant for Render Layer"
    )
    group_idx_offset: int = SettingsField(
        10, title="Group index Offset", ge=1
    )
    group_idx_padding: int = SettingsField(
        3, title="Group index Padding", ge=0
    )
    layer_name_template: LayerNameTemplateModel = SettingsField(
        default_factory=LayerNameTemplateModel,
        title="Layer name template",
        description=(
            "Final layer template to parse out variant from"
            " already renamed layers or"
        ),
    )