public static void CopyRenderSettings() { CustomRenderSettings r = new CustomRenderSettings(); r.name = Path.GetFileNameWithoutExtension(EditorApplication.currentScene); int i = resEditor.renderSettings.FindIndex(a => a.name == r.name); if (i == -1) { resEditor.renderSettings.Add(r); } else { resEditor.renderSettings[i] = r; } r.fog = RenderSettings.fog; r.ambientLight = RenderSettings.ambientLight; r.flareStrength = RenderSettings.flareStrength; r.fogColor = RenderSettings.fogColor; r.fogDensity = RenderSettings.fogDensity; r.fogEndDistance = RenderSettings.fogEndDistance; r.fogMode = RenderSettings.fogMode; r.fogStartDistance = RenderSettings.fogStartDistance; r.haloStrength = RenderSettings.haloStrength; r.skybox = RenderSettings.skybox; var monoBehaviours = Camera.main.GetComponents <MonoBehaviour>(); for (int index = 0; index < monoBehaviours.Length; index++) { MonoBehaviour a = monoBehaviours[index]; foreach (var f in a.GetType().GetFields()) { var mp = new MyProperty().SetValue(f.Name, f.GetValue(a), a.GetType().Name); if (mp != null) { r.properties.Add(mp); } } } EditorUtility.SetDirty(res); }
public static void CopyRenderSettings() { CustomRenderSettings r = new CustomRenderSettings(); r.name = Path.GetFileNameWithoutExtension(EditorApplication.currentScene); int i = resEditor.renderSettings.FindIndex(a => a.name == r.name); if (i == -1) resEditor.renderSettings.Add(r); else resEditor.renderSettings[i] = r; r.fog = RenderSettings.fog; r.ambientLight = RenderSettings.ambientLight; r.flareStrength = RenderSettings.flareStrength; r.fogColor = RenderSettings.fogColor; r.fogDensity = RenderSettings.fogDensity; r.fogEndDistance = RenderSettings.fogEndDistance; r.fogMode = RenderSettings.fogMode; r.fogStartDistance = RenderSettings.fogStartDistance; r.haloStrength = RenderSettings.haloStrength; r.skybox = RenderSettings.skybox; var monoBehaviours = Camera.main.GetComponents<MonoBehaviour>(); for (int index = 0; index < monoBehaviours.Length; index++) { MonoBehaviour a = monoBehaviours[index]; foreach (var f in a.GetType().GetFields()) { var mp = new MyProperty().SetValue(f.Name, f.GetValue(a), a.GetType().Name); if (mp != null) r.properties.Add(mp); } } EditorUtility.SetDirty(res); }