aboutsummaryrefslogtreecommitdiff
path: root/arnold/plugin/shave.py
blob: 84407c05857287d423eb4f32d12ad3c829c741dd (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
"""
Shave and a Haircut
(c) 2019 Epic Games
US Patent 6720962
"""

import pymel.core as pm
import mtoa.ui.ae.templates as templates
from mtoa.ui.ae.templates import AttributeTemplate, ShapeMixin, registerTranslatorUI
from mtoa.ui.ae.shaderTemplate import ShaderMixin
import maya.cmds as cmds

moduleVersion = __name__.split('-')[1]
majorVersion = int(moduleVersion.split('_')[0])

class ShaveHairTemplate(AttributeTemplate, ShapeMixin, ShaderMixin):
    def setup(self):
        self.addControl("primaryVisibility")
        self.addControl("castsShadows")
        self.addControl("visibleInReflections")
        self.addControl("visibleInRefractions")
        self.addSeparator()
        self.commonShapeAttributes()        
        self.addSeparator()

        self.addControl("aiOverrideHair")
        self.addControl("aiHairShader")
    
        self.addSeparator()
    
        self.addControl("aiMinPixelWidth")
        self.addControl("aiMode")

        self.addSeparator()

        if majorVersion < 2:
            self.addControl("aiDiffuseCache")

        self.addControl("aiIndirect")
        self.addControl("aiDirectDiffuse")
        
        self.addControl("aiExportHairColors")
        self.addControl("aiExportHairIDs")

        self.addAOVLayout()

templates.registerTranslatorUI(ShaveHairTemplate, "shaveHair", "shave-"+moduleVersion)