void OnEnable() { mPipline = (Pipline)(EditorPrefs.HasKey("taecg_ShaderReferencemPipline") ? EditorPrefs.GetInt("taecg_ShaderReferencemPipline") : 0); selectedTabID = EditorPrefs.HasKey("taecg_ShaderReferenceSelectedTabID") ? EditorPrefs.GetInt("taecg_ShaderReferenceSelectedTabID") : 0; FONTSIZE = EditorPrefs.HasKey("taecg_ShaderReferenceFontSize") ? EditorPrefs.GetInt("taecg_ShaderReferenceFontSize") : 18; // properties = ScriptableObject.CreateInstance<ShaderReferenceProperties>(); gpu = ScriptableObject.CreateInstance <ShaderReferenceGPU>(); pipline = ScriptableObject.CreateInstance <ShaderReferencePipline>(); properties = ScriptableObject.CreateInstance <ShaderReferenceProperties>(); semantics = ScriptableObject.CreateInstance <ShaderReferenceSemantics>(); tags = ScriptableObject.CreateInstance <ShaderReferenceTags>(); renderState = ScriptableObject.CreateInstance <ShaderReferenceRenderState>(); pragma = ScriptableObject.CreateInstance <ShaderReferencePragma>(); other = ScriptableObject.CreateInstance <ShaderReferenceOther>(); buildInVariables = ScriptableObject.CreateInstance <ShaderReferenceBuildInVariables>(); transformation = ScriptableObject.CreateInstance <ShaderReferenceTransformation>(); predefinedMacros = ScriptableObject.CreateInstance <ShaderReferencePredefinedMacros>(); platformDifferences = ScriptableObject.CreateInstance <ShaderReferencePlatformDifferences>(); lighting = ScriptableObject.CreateInstance <ShaderReferenceLighting>(); math = ScriptableObject.CreateInstance <ShaderReferenceMath>(); miscellaneous = ScriptableObject.CreateInstance <ShaderReferenceMiscellaneous>(); errorDebug = ScriptableObject.CreateInstance <ShaderReferenceErrorDebug>(); glsl = ScriptableObject.CreateInstance <ShaderReferenceGLSL>(); setup = ScriptableObject.CreateInstance <ShaderReferenceSetup>(); about = ScriptableObject.CreateInstance <ShaderReferenceAbout>(); search = ScriptableObject.CreateInstance <ShaderReferenceSearch>(); ShaderReferenceUtil.SearchDic.Clear(); }
void OnGUI() { DrawSearchGUI(); //如果还没有搜索,则绘制侧边栏与显示区域 if (string.IsNullOrEmpty(searchText)) { EditorGUILayout.BeginHorizontal(); #region [左侧边栏] float _width = 150; float _heigth = position.height - 30; EditorGUILayout.BeginVertical(EditorStyles.helpBox, GUILayout.MaxWidth(_width), GUILayout.MinHeight(_heigth)); //渲染管线选择 mPipline = (Pipline)EditorGUILayout.EnumPopup(mPipline); //功能选择 selectedTabID = GUILayout.SelectionGrid(selectedTabID, tabNames, 1); //字体大小设置 // FONTSIZE = EditorGUILayout.IntSlider ("Font Size", FONTSIZE, 16, 50); EditorGUILayout.EndVertical(); #endregion #region [绘制右侧内容区] EditorGUILayout.BeginVertical(EditorStyles.helpBox, GUILayout.MinWidth(position.width - _width), GUILayout.MinHeight(_heigth)); DrawMainUI(selectedTabID); EditorGUILayout.EndVertical(); #endregion EditorGUILayout.EndVertical(); } else { #region [收集信息] //- -!由于之前没有考虑搜索功能,所以只能在初始化时再全部画一次,以便读取所有的数据。 GUI.BeginClip(new Rect(0, 0, 0, 0)); if (isFirst) { CollectionInformation(); isFirst = false; } GUI.EndClip(); #endregion search.DrawMainGUI(); } Repaint(); }
public void Start() { ProgressID_ = StageProgressID.Idle; ProgressValue_ = 0; ResVersionInfo_ = null; CurrentVersionInfo_ = null; ResPatchInfoList_ = null; CurrentPatchInfo_ = null; ErrorCode_ = ErrorCode.Ok; ErrorInfo_ = string.Empty; ContentInfo_ = string.Empty; Pipline_ = new Pipline(); Pipline_.InitStage(this); Downloader.StopAllTask(); }