LuxURPEssentialsWelcome.cs 3.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164
  1. using UnityEngine;
  2. using UnityEditor;
  3. using System;
  4. using System.Collections;
  5. namespace LuxURPEssentials
  6. {
  7. public class LuxURPEssentialsWelcome : EditorWindow
  8. {
  9. static LuxURPEssentialsWelcome window;
  10. [MenuItem( "Window/Lux URP Essentials/Welcome", false, 1000 )]
  11. public static void Init()
  12. {
  13. window = GetWindow<LuxURPEssentialsWelcome>(false, "Lux URP Essentials", true);
  14. //window.minSize = window.maxSize = new Vector2(480, 270);
  15. window.minSize = new Vector2(480, 270);
  16. }
  17. public void OnGUI()
  18. {
  19. var _style_bodytxt = new GUIStyle(EditorStyles.label);
  20. _style_bodytxt.wordWrap = true;
  21. _style_bodytxt.fontSize = 12;
  22. GUILayout.Space(16);
  23. EditorGUILayout.BeginVertical();
  24. GUILayout.BeginHorizontal();
  25. GUILayout.Space(16);
  26. EditorGUILayout.LabelField("Welcome to Lux URP Essentials!", EditorStyles.boldLabel);
  27. GUILayout.Space(16);
  28. GUILayout.EndHorizontal();
  29. GUILayout.Space(8);
  30. GUILayout.BeginHorizontal();
  31. GUILayout.Space(16);
  32. EditorGUILayout.LabelField(
  33. "Currently installed: Version 1.82 for URP 10.7.0.", _style_bodytxt);
  34. GUILayout.Space(16);
  35. GUILayout.EndHorizontal();
  36. GUILayout.Space(16);
  37. GUILayout.BeginHorizontal();
  38. GUILayout.Space(16);
  39. EditorGUILayout.LabelField("Compatibility Notes", EditorStyles.boldLabel);
  40. GUILayout.Space(16);
  41. GUILayout.EndHorizontal();
  42. GUILayout.Space(8);
  43. GUILayout.BeginHorizontal();
  44. GUILayout.Space(16);
  45. EditorGUILayout.LabelField(
  46. "The package you have downloaded from the asset store installed shaders compatible with URP 10.7.0 " +
  47. "In case you got any compilation errors this most likely is caused by the fact that you are using a different version of URP.\n" +
  48. "If so please have a look at the included sub packages and install the one you need.", _style_bodytxt);
  49. GUILayout.Space(16);
  50. GUILayout.EndHorizontal();
  51. GUILayout.Space(16);
  52. GUILayout.BeginHorizontal();
  53. GUILayout.Space(16);
  54. EditorGUILayout.LabelField("Pipeline Settings", EditorStyles.boldLabel);
  55. GUILayout.Space(16);
  56. GUILayout.EndHorizontal();
  57. GUILayout.Space(8);
  58. GUILayout.BeginHorizontal();
  59. GUILayout.Space(16);
  60. EditorGUILayout.LabelField(
  61. "Some shaders like Water or Glass rely on the Depth and Opaque Texture.\n" +
  62. "Please make sure that both are enabled in your Pipeline Asset and on your camera. " +
  63. "Otherwise these materials may just be gray.", _style_bodytxt);
  64. GUILayout.Space(16);
  65. GUILayout.EndHorizontal();
  66. GUILayout.Space(16);
  67. GUILayout.BeginHorizontal();
  68. GUILayout.Space(16);
  69. EditorGUILayout.LabelField("Useful Resources", EditorStyles.boldLabel);
  70. GUILayout.Space(16);
  71. GUILayout.EndHorizontal();
  72. GUILayout.Space(8);
  73. GUILayout.BeginHorizontal();
  74. GUILayout.Space(16);
  75. if (GUILayout.Button("Documentation"))
  76. {
  77. Application.OpenURL("https://docs.google.com/document/d/1ck3hmPzKUdewHfwsvmPYwSPCP8azwtpzN7aOLJHvMqE/edit");
  78. }
  79. if (GUILayout.Button("Forum Thread"))
  80. {
  81. Application.OpenURL("https://forum.unity.com/threads/released-lux-urp-essentials.712619/");
  82. }
  83. GUILayout.Space(16);
  84. GUILayout.EndHorizontal();
  85. GUILayout.EndVertical();
  86. GUILayout.FlexibleSpace();
  87. EditorGUILayout.BeginVertical(GUILayout.Height(24));
  88. GUILayout.BeginHorizontal();
  89. GUILayout.Space(16);
  90. EditorGUI.BeginChangeCheck();
  91. var show = EditorPrefs.GetBool("LuxURPEssentialsDoNotShowWelcome");
  92. show = EditorGUILayout.Toggle("Do not show again", show);
  93. if( EditorGUI.EndChangeCheck() )
  94. {
  95. EditorPrefs.SetBool("LuxURPEssentialsDoNotShowWelcome", show);
  96. }
  97. GUILayout.Space(16);
  98. GUILayout.EndHorizontal();
  99. GUILayout.EndVertical();
  100. }
  101. }
  102. }