12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667 |
- using System.Collections;
- using System.Collections.Generic;
- using UnityEngine;
- using System;
-
- namespace Enviro
- {
- [Serializable]
- public class EnviroVolumetricCloudsQualitySettings
- {
- public bool volumetricClouds = true;
- public bool dualLayer = false;
- public int downsampling = 4;
- public int stepsLayer1 = 128;
- public int stepsLayer2 = 64;
- public float blueNoiseIntensity = 1f;
- public float reprojectionBlendTime = 10f;
- public float lodDistance = 0.25f;
- }
- [Serializable]
- public class EnviroFogQualitySettings
- {
- public bool fog = true;
- public bool volumetrics = true;
- public EnviroFogSettings.Quality quality;
- [Range(16,96)]
- public int steps = 32;
- }
- [Serializable]
- public class EnviroQuality : ScriptableObject
- {
- //Inspector
- public bool showEditor, showVolumeClouds, showFog, showEffects;
- //Volumetric Clouds
- public EnviroVolumetricCloudsQualitySettings volumetricCloudsOverride;
- public EnviroFogQualitySettings fogOverride;
- }
- public class EnviroQualityCreation
- {
- #if UNITY_EDITOR
- [UnityEditor.MenuItem("Assets/Create/Enviro3/Quality")]
- #endif
- public static EnviroQuality CreateMyAsset()
- {
- EnviroQuality wpreset = ScriptableObject.CreateInstance<EnviroQuality>();
- #if UNITY_EDITOR
- // Create and save the new profile with unique name
- string path = UnityEditor.AssetDatabase.GetAssetPath (UnityEditor.Selection.activeObject);
- if (path == "")
- {
- path = "Assets/Enviro 3 - Sky and Weather/";
- }
- string assetPathAndName = UnityEditor.AssetDatabase.GenerateUniqueAssetPath (path + "/New " + "Quality" + ".asset");
- UnityEditor.AssetDatabase.CreateAsset (wpreset, assetPathAndName);
- UnityEditor.AssetDatabase.SaveAssets ();
- UnityEditor.AssetDatabase.Refresh();
- #endif
- return wpreset;
- }
- }
- }
|