Exemple #1
0
        public static void Inputs(LitProperties properties, MaterialEditor materialEditor, Material material)
        {
            DoMetallicSpecularArea(properties, materialEditor, material);
            Fun_BaseShaderGUI.DrawNormalArea(materialEditor, properties.bumpMapProp, properties.bumpScaleProp);

            if (properties.occlusionMap != null)
            {
                materialEditor.TexturePropertySingleLine(Styles.occlusionText, properties.occlusionMap,
                                                         properties.occlusionMap.textureValue != null ? properties.occlusionStrength : null);
            }

            DoLayerArea(properties, materialEditor, material);
        }
Exemple #2
0
        public static void DoMetallicSpecularArea(LitProperties properties, MaterialEditor materialEditor, Material material)
        {
            string[] smoothnessChannelNames;
            bool     hasGlossMap = false;

            if (properties.workflowMode == null ||
                (WorkflowMode)properties.workflowMode.floatValue == WorkflowMode.Metallic)
            {
                hasGlossMap            = properties.metallicGlossMap.textureValue != null;
                smoothnessChannelNames = Styles.metallicSmoothnessChannelNames;
                materialEditor.TexturePropertySingleLine(Styles.metallicMapText, properties.metallicGlossMap,
                                                         hasGlossMap ? null : properties.metallic);
            }
            else
            {
                hasGlossMap            = properties.specGlossMap.textureValue != null;
                smoothnessChannelNames = Styles.specularSmoothnessChannelNames;
                Fun_BaseShaderGUI.TextureColorProps(materialEditor, Styles.specularMapText, properties.specGlossMap,
                                                    hasGlossMap ? null : properties.specColor);
            }
            EditorGUI.indentLevel++;
            DoSmoothness(properties, material, smoothnessChannelNames);
            EditorGUI.indentLevel--;
        }
Exemple #3
0
            public LitProperties(MaterialProperty[] properties)
            {
                // Surface Option Props
                workflowMode = Fun_BaseShaderGUI.FindProperty("_WorkflowMode", properties, false);
                // Surface Input Props
                metallic             = Fun_BaseShaderGUI.FindProperty("_Metallic", properties);
                specColor            = Fun_BaseShaderGUI.FindProperty("_SpecColor", properties, false);
                metallicGlossMap     = Fun_BaseShaderGUI.FindProperty("_MetallicGlossMap", properties);
                specGlossMap         = Fun_BaseShaderGUI.FindProperty("_SpecGlossMap", properties, false);
                smoothness           = Fun_BaseShaderGUI.FindProperty("_Smoothness", properties, false);
                smoothnessMapChannel = Fun_BaseShaderGUI.FindProperty("_SmoothnessTextureChannel", properties, false);
                bumpMapProp          = Fun_BaseShaderGUI.FindProperty("_BumpMap", properties, false);
                bumpScaleProp        = Fun_BaseShaderGUI.FindProperty("_BumpScale", properties, false);
                occlusionStrength    = Fun_BaseShaderGUI.FindProperty("_OcclusionStrength", properties, false);
                occlusionMap         = Fun_BaseShaderGUI.FindProperty("_OcclusionMap", properties, false);
                // Advanced Props
                highlights  = Fun_BaseShaderGUI.FindProperty("_SpecularHighlights", properties, false);
                reflections = Fun_BaseShaderGUI.FindProperty("_EnvironmentReflections", properties, false);

                // Cloth Layer
                layer0Normal      = Fun_BaseShaderGUI.FindProperty("_Layer0Normal", properties, false);
                layer0NormalScale = Fun_BaseShaderGUI.FindProperty("_Layer0NormalScale", properties, false);

                layer1Tex         = Fun_BaseShaderGUI.FindProperty("_Layer1Tex", properties, false);
                layer1Mask        = Fun_BaseShaderGUI.FindProperty("_Layer1Mask", properties, false);
                layer1UVSet       = Fun_BaseShaderGUI.FindProperty("_Layer1UVSet", properties, false);
                layer1Normal      = Fun_BaseShaderGUI.FindProperty("_Layer1Normal", properties, false);
                layer1NormalScale = Fun_BaseShaderGUI.FindProperty("_Layer1NormalScale", properties, false);
                layer1Color       = Fun_BaseShaderGUI.FindProperty("_Layer1Color", properties, false);
                layer1Smoothness  = Fun_BaseShaderGUI.FindProperty("_Layer1Smoothness", properties, false);
                layer1Metallic    = Fun_BaseShaderGUI.FindProperty("_Layer1Metallic", properties, false);

                layer2Tex         = Fun_BaseShaderGUI.FindProperty("_Layer2Tex", properties, false);
                layer2Mask        = Fun_BaseShaderGUI.FindProperty("_Layer2Mask", properties, false);
                layer2UVSet       = Fun_BaseShaderGUI.FindProperty("_Layer2UVSet", properties, false);
                layer2Normal      = Fun_BaseShaderGUI.FindProperty("_Layer2Normal", properties, false);
                layer2NormalScale = Fun_BaseShaderGUI.FindProperty("_Layer2NormalScale", properties, false);
                layer2Color       = Fun_BaseShaderGUI.FindProperty("_Layer2Color", properties, false);
                layer2Smoothness  = Fun_BaseShaderGUI.FindProperty("_Layer2Smoothness", properties, false);
                layer2Metallic    = Fun_BaseShaderGUI.FindProperty("_Layer2Metallic", properties, false);

                layer3Tex         = Fun_BaseShaderGUI.FindProperty("_Layer3Tex", properties, false);
                layer3Mask        = Fun_BaseShaderGUI.FindProperty("_Layer3Mask", properties, false);
                layer3UVSet       = Fun_BaseShaderGUI.FindProperty("_Layer3UVSet", properties, false);
                layer3Normal      = Fun_BaseShaderGUI.FindProperty("_Layer3Normal", properties, false);
                layer3NormalScale = Fun_BaseShaderGUI.FindProperty("_Layer3NormalScale", properties, false);
                layer3Color       = Fun_BaseShaderGUI.FindProperty("_Layer3Color", properties, false);
                layer3Smoothness  = Fun_BaseShaderGUI.FindProperty("_Layer3Smoothness", properties, false);
                layer3Metallic    = Fun_BaseShaderGUI.FindProperty("_Layer3Metallic", properties, false);

                layer4Tex         = Fun_BaseShaderGUI.FindProperty("_Layer4Tex", properties, false);
                layer4Mask        = Fun_BaseShaderGUI.FindProperty("_Layer4Mask", properties, false);
                layer4UVSet       = Fun_BaseShaderGUI.FindProperty("_Layer4UVSet", properties, false);
                layer4Normal      = Fun_BaseShaderGUI.FindProperty("_Layer4Normal", properties, false);
                layer4NormalScale = Fun_BaseShaderGUI.FindProperty("_Layer4NormalScale", properties, false);
                layer4Color       = Fun_BaseShaderGUI.FindProperty("_Layer4Color", properties, false);
                layer4Smoothness  = Fun_BaseShaderGUI.FindProperty("_Layer4Smoothness", properties, false);
                layer4Metallic    = Fun_BaseShaderGUI.FindProperty("_Layer4Metallic", properties, false);


                layer5Tex         = Fun_BaseShaderGUI.FindProperty("_Layer5Tex", properties, false);
                layer5Mask        = Fun_BaseShaderGUI.FindProperty("_Layer5Mask", properties, false);
                layer5UVSet       = Fun_BaseShaderGUI.FindProperty("_Layer5UVSet", properties, false);
                layer5Normal      = Fun_BaseShaderGUI.FindProperty("_Layer5Normal", properties, false);
                layer5NormalScale = Fun_BaseShaderGUI.FindProperty("_Layer5NormalScale", properties, false);
                layer5Color       = Fun_BaseShaderGUI.FindProperty("_Layer5Color", properties, false);
                layer5Smoothness  = Fun_BaseShaderGUI.FindProperty("_Layer5Smoothness", properties, false);
                layer5Metallic    = Fun_BaseShaderGUI.FindProperty("_Layer5Metallic", properties, false);


                layer6Tex         = Fun_BaseShaderGUI.FindProperty("_Layer6Tex", properties, false);
                layer6Mask        = Fun_BaseShaderGUI.FindProperty("_Layer6Mask", properties, false);
                layer6UVSet       = Fun_BaseShaderGUI.FindProperty("_Layer6UVSet", properties, false);
                layer6Normal      = Fun_BaseShaderGUI.FindProperty("_Layer6Normal", properties, false);
                layer6NormalScale = Fun_BaseShaderGUI.FindProperty("_Layer6NormalScale", properties, false);
                layer6Color       = Fun_BaseShaderGUI.FindProperty("_Layer6Color", properties, false);
                layer6Smoothness  = Fun_BaseShaderGUI.FindProperty("_Layer6Smoothness", properties, false);
                layer6Metallic    = Fun_BaseShaderGUI.FindProperty("_Layer6Metallic", properties, false);

                layer7Tex         = Fun_BaseShaderGUI.FindProperty("_Layer7Tex", properties, false);
                layer7Mask        = Fun_BaseShaderGUI.FindProperty("_Layer7Mask", properties, false);
                layer7UVSet       = Fun_BaseShaderGUI.FindProperty("_Layer7UVSet", properties, false);
                layer7Normal      = Fun_BaseShaderGUI.FindProperty("_Layer7Normal", properties, false);
                layer7NormalScale = Fun_BaseShaderGUI.FindProperty("_Layer7NormalScale", properties, false);
                layer7Color       = Fun_BaseShaderGUI.FindProperty("_Layer7Color", properties, false);
                layer7Smoothness  = Fun_BaseShaderGUI.FindProperty("_Layer7Smoothness", properties, false);
                layer7Metallic    = Fun_BaseShaderGUI.FindProperty("_Layer7Metallic", properties, false);
            }