/// <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()); }
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); }