示例#1
0
        public override void Unpack(string[] keywords)
        {
            windParticulate = ParticulateMode.None;
            snowParticulate = ParticulateMode.None;
            if (HasFeature(keywords, DefineFeature._WINDPARTICULATE))
            {
                windParticulate = HasFeature(keywords, DefineFeature._WINDSHADOWS) ? ParticulateMode.ParticulateWithShadows : ParticulateMode.Particulate;
            }

            if (HasFeature(keywords, DefineFeature._SNOWPARTICULATE))
            {
                snowParticulate = HasFeature(keywords, DefineFeature._SNOWSHADOWS) ? ParticulateMode.ParticulateWithShadows : ParticulateMode.Particulate;
            }

            snowUpFilter = snowParticulate != ParticulateMode.None && HasFeature(keywords, DefineFeature._SNOWPARTICULATEUPFILTER);
            windUpFilter = windParticulate != ParticulateMode.None && HasFeature(keywords, DefineFeature._WINDPARTICULATEUPFILTER);

            perTexParticulate = HasFeature(keywords, DefineFeature._PERTEXWINDPARTICULATE);
            glitter           = HasFeature(keywords, DefineFeature._GLITTER);
            snowGlitter       = HasFeature(keywords, DefineFeature._SNOWGLITTER);

            globalWindRotation = HasFeature(keywords, DefineFeature._GLOBALPARTICULATEROTATION);
            globalWindStrength = HasFeature(keywords, DefineFeature._GLOBALWINDPARTICULATESTRENGTH);
            globalSnowStrength = HasFeature(keywords, DefineFeature._GLOBALSNOWPARTICULATESTRENGTH);
        }
示例#2
0
 public override void DrawFeatureGUI(MicroSplatKeywords keywords)
 {
     windParticulate = (ParticulateMode)EditorGUILayout.EnumPopup(CWindParticulate, windParticulate);
     if (windParticulate != ParticulateMode.None)
     {
         EditorGUI.indentLevel++;
         windUpFilter = EditorGUILayout.Toggle(CUpFilter, windUpFilter);
         EditorGUI.indentLevel--;
     }
     glitter = EditorGUILayout.Toggle(CGlitter, glitter);
     if (keywords.IsKeywordEnabled("_SNOW"))
     {
         snowParticulate = (ParticulateMode)EditorGUILayout.EnumPopup(CSnowParticulate, snowParticulate);
         if (snowParticulate != ParticulateMode.None)
         {
             EditorGUI.indentLevel++;
             snowUpFilter = EditorGUILayout.Toggle(CUpFilter, windUpFilter);
             EditorGUI.indentLevel--;
         }
         snowGlitter = EditorGUILayout.Toggle(CSnowGlitter, snowGlitter);
     }
     else
     {
         snowParticulate = ParticulateMode.None;
         snowGlitter     = false;
     }
 }