/// <summary>
        /// 转换成PlatformKeywords
        /// </summary>
        private BuiltinShaderDefine[] ConvertToPlatformKeywords(PlatformKeywordSet platformKeywordSet)
        {
            // 这里是被多线程使用的,所以不能把临时变量Cahce下来
            List <BuiltinShaderDefine> platformKeywords = new List <BuiltinShaderDefine>();

            foreach (BuiltinShaderDefine keyword in Enum.GetValues(typeof(BuiltinShaderDefine)))
            {
                if (platformKeywordSet.IsEnabled(keyword))
                {
                    platformKeywords.Add(keyword);
                }
            }
            return(platformKeywords.ToArray());
        }
Пример #2
0
        public static string GetPlatformKeywordList(PlatformKeywordSet pks)
        {
            string enabledPKeys = "";

            foreach (BuiltinShaderDefine sd in System.Enum.GetValues(typeof(BuiltinShaderDefine)))
            {
                //Only pay attention to SHADER_API_MOBILE, SHADER_API_DESKTOP and SHADER_API_GLES30
                if (sd.ToString().Contains("SHADER_API") && pks.IsEnabled(sd))
                {
                    if (enabledPKeys != "")
                    {
                        enabledPKeys += " ";
                    }
                    enabledPKeys += sd.ToString();
                }
            }
            return(enabledPKeys);
        }