static void Update()
            {
                DaydreamRendererImportSettings settings = BakeData.Instance().GetImportSettings();

                if (!string.IsNullOrEmpty(SceneManager.GetActiveScene().name) && SceneManager.GetActiveScene().isLoaded)
                {
                    if (settings != null && settings.m_firstRun)
                    {
                        EditorApplication.update -= Update;
                        settings.m_firstRun       = false;
                        BakeData.Instance().SaveImportSettings();

                        DaydreamRendererImportManager.Init();
                    }
                }

                if (settings.m_enableLightingComponentsAutoAdd && settings.m_daydreamLightinSystemEnabled && (DateTime.Now - s_lastUpdate).TotalSeconds > 2)
                {
                    s_lastUpdate = DateTime.Now;
                    ApplyLightingComponents();
                }
            }
        void OnGUI()
        {
            DaydreamRendererImportSettings settings = BakeData.Instance().GetImportSettings();

            EditorGUILayout.HelpBox(Styles.kWelcomeMsg, MessageType.Info);

            if (s_staticMaterialHistory == null || s_dynamicMaterialHistory == null)
            {
                Configure();
            }

            EditorGUI.BeginChangeCheck();
            GUILayout.Space(20);
            EditorGUILayout.HelpBox(Styles.kToggleComponentsHelp, MessageType.Info);

            EditorGUI.BeginChangeCheck();
            settings.m_daydreamLightinSystemEnabled = EditorGUILayout.BeginToggleGroup(Styles.toggleLightingSystem, settings.m_daydreamLightinSystemEnabled);
            if (EditorGUI.EndChangeCheck())
            {
                if (!settings.m_daydreamLightinSystemEnabled)
                {
                    RemoveAllLightingComponents();
                }

                DaydreamRenderer renderer = FindObjectOfType <DaydreamRenderer>();
                if (renderer)
                {
                    renderer.EnableEnlighten(!settings.m_daydreamLightinSystemEnabled);
                }
            }

            EditorGUILayout.BeginHorizontal();
            GUILayout.Space(20);
            settings.m_enableLightingComponentsAutoAdd = EditorGUILayout.ToggleLeft(Styles.toggleComponents, settings.m_enableLightingComponentsAutoAdd);
            EditorGUILayout.EndHorizontal();
            if (!settings.m_enableLightingComponentsAutoAdd)
            {
                EditorGUILayout.BeginHorizontal();
                GUILayout.Space(20);
                if (GUILayout.Button(Styles.addComponents))
                {
                    ApplyLightingComponents();
                }
                if (GUILayout.Button(Styles.removeComponents))
                {
                    RemoveAllLightingComponents();
                }
                EditorGUILayout.EndHorizontal();
            }


            EditorGUILayout.EndToggleGroup();

            GUILayout.Space(50);
            if (EditorGUI.EndChangeCheck())
            {
                EditorUtility.SetDirty(settings);
            }

            if (GUILayout.Button("Scan Materials") || m_convertableMaterials == null || m_convertableMaterials.Count == 0 || s_gatherMetrics)
            {
                List <GameObject> roots = Utilities.GetAllRoots();
                GatherMaterials(roots.ToArray());
            }

            EditorGUILayout.Separator();

            EditorGUILayout.HelpBox(String.Format(Styles.kObjectsWaiting, m_dynamicConvertableCount, m_staticConvertableCount), MessageType.Info);

            if (GUILayout.Button("Convert Materials Now"))
            {
                DoDynamicLightingConversion();
                DoStaticLightingConversion();
            }

            string[] text = new string[] { "Dynamic Converted Materials", "Static Converted Materials", "List All Daydream Materials" };
            s_importType = GUILayout.SelectionGrid(s_importType, text, 3, EditorStyles.radioButton);

            if (s_importType == 0)
            {
                DrawDynamicRevertMaterials();
            }
            else if (s_importType == 1)
            {
                DrawStaticRevertMaterials();
            }
            else if (m_convertedCount > 0)
            {
                DrawDaydreamMaterialList();
            }
        }