void OnEnable() { #if UNITY_EDITOR if (material != null) { LPWHiddenProps.Calculate(material); } LPWHiddenProps.Scale(this); LPWHiddenProps.SetKeywords(this); CustomMeshApply(); #endif // handle deprecation if (!Mathf.Approximately(-1337, waveScale) && material != null && material.HasProperty("_Scale")) { material.SetFloat("_Scale", waveScale); waveScale = -1337; } #if UNITY_EDITOR displayProgress = false; #endif var chunks = GetComponentsInChildren <LPWWaterChunk>(); if (chunks == null || chunks.Length == 0) { Generate(); } #if UNITY_EDITOR else { Generate(); // generate on enable in editor } #endif }
public override void OnMaterialPreviewGUI(MaterialEditor materialEditor, Rect r, GUIStyle background) { base.OnMaterialPreviewGUI(materialEditor, r, background); if (init) { return; } LPWHiddenProps.Calculate((Material)materialEditor.target); init = true; }
public override void OnGUI(MaterialEditor materialEditor, MaterialProperty[] props) { FindProperties(props); EditorGUILayout.BeginHorizontal(); GUILayout.Space(-7); EditorGUILayout.BeginVertical(); EditorGUI.BeginChangeCheck(); DrawGUI(materialEditor); if (EditorGUI.EndChangeCheck()) { var material = (Material)materialEditor.target; EditorUtility.SetDirty(material); LPWHiddenProps.Calculate(material); } EditorGUILayout.EndVertical(); GUILayout.Space(1); EditorGUILayout.EndHorizontal(); //base.OnGUI(materialEditor, props); }