├── README.md └── ShaderProfile ├── Assets ├── Editor.meta ├── Editor │ ├── SharderProfile.meta │ └── SharderProfile │ │ ├── OpenglShaderProfileWindow.cs │ │ ├── OpenglShaderProfileWindow.cs.meta │ │ ├── PowerVR.meta │ │ └── PowerVR │ │ ├── GLSLESCompiler_Series6.exe │ │ ├── GLSLESCompiler_Series6.exe.meta │ │ ├── GLSLESCompiler_Series6FP16.exe │ │ ├── GLSLESCompiler_Series6FP16.exe.meta │ │ ├── GLSLESCompiler_Series6XT.exe │ │ └── GLSLESCompiler_Series6XT.exe.meta ├── TestShaders.meta └── TestShaders │ ├── Mobile-BumpSpec-1DirectionalLight.shader │ ├── Mobile-BumpSpec-1DirectionalLight.shader.meta │ ├── Mobile-BumpSpec.shader │ ├── Mobile-BumpSpec.shader.meta │ ├── Mobile-Bumped.shader │ ├── Mobile-Bumped.shader.meta │ ├── Mobile-Diffuse.shader │ ├── Mobile-Diffuse.shader.meta │ ├── Mobile-Lightmap-Unlit.shader │ ├── Mobile-Lightmap-Unlit.shader.meta │ ├── Mobile-Particle-Add.shader │ ├── Mobile-Particle-Add.shader.meta │ ├── Mobile-Particle-Alpha-VertexLit.shader │ ├── Mobile-Particle-Alpha-VertexLit.shader.meta │ ├── Mobile-Particle-Alpha.shader │ ├── Mobile-Particle-Alpha.shader.meta │ ├── Mobile-Particle-Multiply.shader │ ├── Mobile-Particle-Multiply.shader.meta │ ├── Mobile-Skybox.shader │ ├── Mobile-Skybox.shader.meta │ ├── Mobile-VertexLit-OnlyDirectionalLights.shader │ ├── Mobile-VertexLit-OnlyDirectionalLights.shader.meta │ ├── Mobile-VertexLit.shader │ └── Mobile-VertexLit.shader.meta ├── ProjectSettings ├── AudioManager.asset ├── ClusterInputManager.asset ├── DynamicsManager.asset ├── EditorBuildSettings.asset ├── EditorSettings.asset ├── GraphicsSettings.asset ├── InputManager.asset ├── NavMeshAreas.asset ├── NetworkManager.asset ├── Physics2DSettings.asset ├── ProjectSettings.asset ├── ProjectVersion.txt ├── QualitySettings.asset ├── TagManager.asset ├── TimeManager.asset └── UnityConnectSettings.asset ├── ShaderProfile.Editor.csproj └── ShaderProfile.sln /README.md: -------------------------------------------------------------------------------- 1 | # UnityOpenglShaderProfiler 2 | ## just use this editor to show opengl shader circles 3 | ### **how to use it** 4 | 1.in unity open **Window/Sqeety/ShaderProfile** menu 5 | 6 | 2.select a file with **.shader** extentions drag to window 7 | 8 | 3.after a while, you will see the shader circles with different keywords 9 | -------------------------------------------------------------------------------- /ShaderProfile/Assets/Editor.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 57c2518ebc24b5f43bf13d424ab8696b 3 | folderAsset: yes 4 | timeCreated: 1499736186 5 | licenseType: Pro 6 | DefaultImporter: 7 | userData: 8 | assetBundleName: 9 | assetBundleVariant: 10 | -------------------------------------------------------------------------------- /ShaderProfile/Assets/Editor/SharderProfile.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 665a374784651cb4ba8f043d3e9d36cb 3 | folderAsset: yes 4 | timeCreated: 1495803330 5 | licenseType: Pro 6 | DefaultImporter: 7 | userData: 8 | assetBundleName: 9 | assetBundleVariant: 10 | -------------------------------------------------------------------------------- /ShaderProfile/Assets/Editor/SharderProfile/OpenglShaderProfileWindow.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.Diagnostics; 4 | using System.IO; 5 | using System.Reflection; 6 | using System.Text; 7 | using System.Text.RegularExpressions; 8 | using System.Threading; 9 | using UnityEditor; 10 | using UnityEditor.Callbacks; 11 | using UnityEngine; 12 | using Debug = System.Diagnostics.Debug; 13 | 14 | public class OpenglShaderProfileWindow : EditorWindow 15 | { 16 | private static readonly Type ShaderUtilType = typeof(ShaderUtil); 17 | private static OpenglShaderProfileWindow activeWindow; 18 | private bool cursor0Move; 19 | private Rect cursorChangeRect0; 20 | private string filePath; 21 | private float firstX; 22 | private readonly List infos = new List(); 23 | private float pastTime; 24 | [SerializeField] private Vector2 scrollPos; 25 | private float secondX; 26 | [SerializeField] private Shader shader; 27 | private bool shaderComplete; 28 | private int showShaderInfo; 29 | private bool start; 30 | private string tempPath; 31 | private float windowWidth; 32 | 33 | [MenuItem("Window/Sqeety/ShaderProfile")] 34 | private static void CreateWindow() 35 | { 36 | OpenglShaderProfileWindow window = GetWindow(); 37 | window.Show(); 38 | activeWindow = window; 39 | } 40 | 41 | public void DealShader() 42 | { 43 | infos.Clear(); 44 | string content = File.ReadAllText(filePath); 45 | //Debug.Log(File.ReadAllText(filePath)); 46 | Regex regex = 47 | new Regex("((Keywords)|(No keywords))(.|\n)*?-- Fragment shader"); 48 | MatchCollection ma = regex.Matches(content); 49 | for (int i = 0; i < ma.Count; i++) 50 | { 51 | string text = ma[i].ToString(); 52 | ShaderInfo si = new ShaderInfo(); 53 | int startIndex = text.IndexOf(": ", StringComparison.Ordinal); 54 | int endNum = text.IndexOf("\n", StringComparison.Ordinal); 55 | if (startIndex != -1 && startIndex < endNum) 56 | { 57 | startIndex += 2; 58 | string result = text.Substring(startIndex, endNum - startIndex); 59 | string[] allKeys = result.Split(new[] {" "}, StringSplitOptions.RemoveEmptyEntries); 60 | si.keyWords = allKeys[0]; 61 | for (int j = 1; j < allKeys.Length; j++) 62 | si.keyWords += "\n" + allKeys[j]; 63 | //si.keyWords = si.keyWords.Replace(" ", "\n"); 64 | } 65 | else 66 | { 67 | si.keyWords = "NoKeyWords"; 68 | } 69 | startIndex = text.IndexOf("#ifdef VERTEX", StringComparison.Ordinal) + 13; 70 | endNum = text.IndexOf("#endif", StringComparison.Ordinal); 71 | si.vert = text.Substring(startIndex, endNum - startIndex); 72 | 73 | startIndex = text.IndexOf("#ifdef FRAGMENT", StringComparison.Ordinal) + 16; 74 | endNum = text.LastIndexOf("#endif", StringComparison.Ordinal); 75 | si.frag = text.Substring(startIndex, endNum - startIndex); 76 | if (!si.frag.Contains("float;\n")) 77 | { 78 | string first = si.frag.Substring(0, si.frag.IndexOf('\n') + 1); 79 | startIndex = si.frag.IndexOf("precision", StringComparison.Ordinal); 80 | string third = si.frag.Substring(startIndex); 81 | si.frag = first + "precision highp float;\n" + third; 82 | } 83 | //Debug.Log(si.keyWords); 84 | //Debug.Log(si.vert); 85 | //Debug.Log(si.frag); 86 | infos.Add(si); 87 | } 88 | ProfileShader(); 89 | showShaderInfo = 1; 90 | } 91 | 92 | public static void DrawHorizontalLine(Color color, Vector2 start, Vector2 end, float lineWidth = 1.0f) 93 | { 94 | if (Event.current.type != EventType.Repaint) 95 | return; 96 | Color defaultColor = GUI.color; 97 | GUI.color = color; 98 | GUI.DrawTexture(new Rect(start.x, start.y, end.x - start.x, lineWidth), EditorGUIUtility.whiteTexture); 99 | GUI.color = defaultColor; 100 | } 101 | 102 | public static void DrawRect(Color color, Rect rect, float lineWidth) 103 | { 104 | if (Event.current.type != EventType.Repaint) 105 | return; 106 | Color color1 = GUI.color; 107 | GUI.color *= color; 108 | GUI.DrawTexture(new Rect(rect.x, rect.y, rect.width, lineWidth), EditorGUIUtility.whiteTexture); 109 | GUI.DrawTexture(new Rect(rect.x, rect.yMax - lineWidth, rect.width, lineWidth), EditorGUIUtility.whiteTexture); 110 | GUI.DrawTexture(new Rect(rect.x, rect.y + 1f, lineWidth, rect.height - 2f * lineWidth), 111 | EditorGUIUtility.whiteTexture); 112 | GUI.DrawTexture(new Rect(rect.xMax - lineWidth, rect.y + 1f, lineWidth, rect.height - 2f * lineWidth), 113 | EditorGUIUtility.whiteTexture); 114 | GUI.color = color1; 115 | } 116 | 117 | public static void DrawVerticalLine(Color color, Vector2 start, Vector2 end, float lineWidth = 1.0f) 118 | { 119 | if (Event.current.type != EventType.Repaint) 120 | return; 121 | Color defaultColor = GUI.color; 122 | GUI.color = color; 123 | GUI.DrawTexture(new Rect(start.x, start.y, lineWidth, end.y - start.y), EditorGUIUtility.whiteTexture); 124 | GUI.color = defaultColor; 125 | } 126 | 127 | private void OnDestroy() 128 | { 129 | activeWindow = null; 130 | } 131 | 132 | private void OnEnable() 133 | { 134 | windowWidth = position.width; 135 | showShaderInfo = 0; 136 | titleContent = new GUIContent("Shader3.0", EditorGUIUtility.FindTexture("Shader Icon")); 137 | tempPath = Application.dataPath.Substring(0, Application.dataPath.LastIndexOf('/')) + "/Temp/"; 138 | scrollPos = Vector2.zero; 139 | cursorChangeRect0 = new Rect(); 140 | firstX = 140; 141 | } 142 | 143 | private void OnGUI() 144 | { 145 | if (Math.Abs(windowWidth - position.width) > 0.01f) 146 | OnWidthChanged(); 147 | scrollPos = EditorGUILayout.BeginScrollView(scrollPos); 148 | EditorGUILayout.BeginHorizontal(); 149 | EditorGUI.BeginChangeCheck(); 150 | shader = EditorGUILayout.ObjectField("SelectShader", shader, typeof(Shader), false) as Shader; 151 | if (EditorGUI.EndChangeCheck()) 152 | shaderComplete = false; 153 | EditorGUILayout.EndHorizontal(); 154 | 155 | if (shaderComplete) 156 | { 157 | } 158 | 159 | if (shader && !start && !shaderComplete) 160 | { 161 | Debug.Assert(shader != null, "shader != null"); 162 | showShaderInfo = 0; 163 | filePath = tempPath + "Compiled-" + shader.name.Replace('/', '-') + ".shader"; 164 | if (File.Exists(filePath)) 165 | { 166 | DealShader(); 167 | shaderComplete = true; 168 | start = false; 169 | EditorGUILayout.EndScrollView(); 170 | return; 171 | } 172 | OpenCompiledShader(shader, 3, 736973, false); 173 | start = true; 174 | pastTime = 0; 175 | shaderComplete = false; 176 | } 177 | Event curEvent = Event.current; 178 | GUILayout.Label(" "); 179 | Rect startRect = GUILayoutUtility.GetLastRect(); 180 | if (showShaderInfo == 0) 181 | { 182 | EditorGUILayout.EndScrollView(); 183 | return; 184 | } 185 | if (showShaderInfo == 1) 186 | if (curEvent.type == EventType.layout) 187 | { 188 | showShaderInfo = 2; 189 | } 190 | else 191 | { 192 | EditorGUILayout.EndScrollView(); 193 | return; 194 | } 195 | 196 | EditorGUI.indentLevel++; 197 | List keyRects = new List(); 198 | for (int i = 0; i < infos.Count; i++) 199 | { 200 | //UnityEngine.Debug.Log(EditorStyles.label.CalcSize(new GUIContent(infos[i].keyWords)).x); 201 | EditorGUILayout.LabelField(infos[i].keyWords, 202 | GUILayout.Height(EditorStyles.label.CalcSize(new GUIContent(infos[i].keyWords)).y)); 203 | //if (infos[i].opened) 204 | //{ 205 | // EditorGUI.indentLevel++; 206 | // EditorGUILayout.LabelField("vertProfile", infos[i].vertResult); 207 | // EditorGUILayout.LabelField("fragProfile", infos[i].fragResult); 208 | // EditorGUI.indentLevel--; 209 | //} 210 | Rect keyRect = GUILayoutUtility.GetLastRect(); 211 | keyRects.Add(keyRect); 212 | DrawHorizontalLine(Color.black, new Vector2(keyRect.x, keyRect.y), 213 | new Vector2(keyRect.x + keyRect.width, keyRect.y)); 214 | } 215 | Rect endRect = GUILayoutUtility.GetLastRect(); 216 | Rect outRect = new Rect(startRect.x, startRect.y, startRect.width, endRect.y + endRect.height - startRect.y); 217 | EditorGUI.indentLevel--; 218 | DrawVerticalLine(Color.black, new Vector2(firstX, startRect.y), 219 | new Vector2(firstX, outRect.y + outRect.height)); 220 | cursorChangeRect0.x = firstX; 221 | cursorChangeRect0.y = startRect.y; 222 | cursorChangeRect0.width = 5; 223 | cursorChangeRect0.height = outRect.height; 224 | if (Event.current.type == EventType.Repaint) 225 | EditorGUIUtility.AddCursorRect(cursorChangeRect0, MouseCursor.ResizeHorizontal); 226 | if (curEvent.type == EventType.mouseDown && cursorChangeRect0.Contains(curEvent.mousePosition)) 227 | cursor0Move = true; 228 | if (curEvent.type == EventType.MouseUp) 229 | cursor0Move = false; 230 | if (cursor0Move) 231 | { 232 | firstX = curEvent.mousePosition.x - cursorChangeRect0.width / 2.0f; 233 | if (firstX < 140) 234 | firstX = 140; 235 | else if (firstX + 200 > position.width) 236 | firstX = position.width - 200; 237 | Repaint(); 238 | } 239 | secondX = (outRect.width - firstX) / 2 + firstX; 240 | DrawVerticalLine(Color.black, new Vector2(secondX, startRect.y), 241 | new Vector2(secondX, outRect.y + outRect.height)); 242 | DrawRect(Color.black, outRect, 1); 243 | EditorGUI.LabelField(new Rect(startRect.x + 16, startRect.y, 140, startRect.height), "KeyWords"); 244 | float oneCenter = firstX / 2 + secondX / 2; 245 | EditorGUI.LabelField( 246 | new Rect(oneCenter - EditorStyles.label.CalcSize(new GUIContent("vert")).x / 2, startRect.y, 247 | secondX - firstX, startRect.height), "vert"); 248 | float twoCenter = secondX / 2 + outRect.width / 2 + outRect.x / 2; 249 | EditorGUI.LabelField( 250 | new Rect(twoCenter - EditorStyles.label.CalcSize(new GUIContent("frag")).x / 2, startRect.y, 251 | outRect.width + outRect.x - secondX, startRect.height), "frag"); 252 | for (int i = 0; i < infos.Count; i++) 253 | { 254 | EditorGUI.LabelField( 255 | new Rect(oneCenter - EditorStyles.label.CalcSize(new GUIContent(infos[i].vertResult)).x / 2, 256 | keyRects[i].y + keyRects[i].height / 2 - 8, 257 | secondX - firstX, startRect.height), infos[i].vertResult); 258 | 259 | EditorGUI.LabelField( 260 | new Rect(twoCenter - EditorStyles.label.CalcSize(new GUIContent(infos[i].fragResult)).x / 2, 261 | keyRects[i].y + keyRects[i].height / 2 - 8, 262 | secondX - firstX, startRect.height), infos[i].fragResult); 263 | } 264 | 265 | Color defaultColor = GUI.color; 266 | GUI.color = Color.green; 267 | EditorGUILayout.LabelField("0:Average 1:branch instructions \n2:other instructions" + 268 | "3:Worst \n4:branch instructions 5:other instructions", GUILayout.Height(46)); 269 | GUI.color = defaultColor; 270 | EditorGUILayout.EndScrollView(); 271 | } 272 | 273 | private void OnWidthChanged() 274 | { 275 | //cursorChangeRect0.height = position.height; 276 | } 277 | 278 | [OnOpenAsset(-1)] 279 | public static bool OpenAsset(int instanceID, int line) 280 | { 281 | Type t = EditorUtility.InstanceIDToObject(instanceID).GetType(); 282 | if (t == typeof(Shader)) 283 | if (activeWindow) 284 | { 285 | activeWindow.shader = EditorUtility.InstanceIDToObject(instanceID) as Shader; 286 | activeWindow.Repaint(); 287 | } 288 | return false; 289 | } 290 | 291 | private static void OpenCompiledShader(Shader s, int mode, int customPlatformsMask, bool includeAllVariants) 292 | { 293 | ShaderUtilType.InvokeMember("OpenCompiledShader", 294 | BindingFlags.Static | BindingFlags.NonPublic | BindingFlags.InvokeMethod, null, null, 295 | new object[] {s, mode, customPlatformsMask, includeAllVariants}); 296 | } 297 | 298 | private void ProfileShader() 299 | { 300 | string exePath = Application.dataPath + "/Editor/SharderProfile/PowerVR/GLSLESCompiler_Series6.exe"; 301 | string vertPath = Application.dataPath.Substring(0, Application.dataPath.LastIndexOf('/')) + "/Temp/vert.txt"; 302 | string vertProfilePath = Application.dataPath.Substring(0, Application.dataPath.LastIndexOf('/')) + 303 | "/Temp/vertProfile.txt"; 304 | string vertProfileOutPath = Application.dataPath.Substring(0, Application.dataPath.LastIndexOf('/')) + 305 | "/Temp/vertProfile.disasm"; 306 | if (File.Exists(vertPath)) 307 | { 308 | FileStream file = File.Create(vertPath); 309 | file.Close(); 310 | } 311 | if (File.Exists(vertProfilePath)) 312 | { 313 | FileStream file = File.Create(vertProfilePath); 314 | file.Close(); 315 | } 316 | string fragPath = Application.dataPath.Substring(0, Application.dataPath.LastIndexOf('/')) + "/Temp/frag.txt"; 317 | if (File.Exists(fragPath)) 318 | { 319 | FileStream file = File.Create(fragPath); 320 | file.Close(); 321 | } 322 | string fragProfilePath = Application.dataPath.Substring(0, Application.dataPath.LastIndexOf('/')) + 323 | "/Temp/fragProfile.txt"; 324 | string fragProfileOutPath = Application.dataPath.Substring(0, Application.dataPath.LastIndexOf('/')) + 325 | "/Temp/fragProfile.disasm"; 326 | if (File.Exists(fragProfilePath)) 327 | { 328 | FileStream file = File.Create(fragProfilePath); 329 | file.Close(); 330 | } 331 | for (int i = 0; i < infos.Count; i++) 332 | { 333 | ShaderInfo info = infos[i]; 334 | File.WriteAllBytes(vertPath, Encoding.Default.GetBytes(info.vert)); 335 | Process myprocess = new Process(); 336 | ProcessStartInfo startInfo = 337 | new ProcessStartInfo(exePath, vertPath + " " + vertProfilePath + " -v -profile -nowarn"); 338 | startInfo.WindowStyle = ProcessWindowStyle.Hidden; 339 | startInfo.CreateNoWindow = true; 340 | myprocess.StartInfo = startInfo; 341 | myprocess.StartInfo.UseShellExecute = false; 342 | myprocess.Start(); 343 | Thread.Sleep(30); 344 | while (string.IsNullOrEmpty(info.vertResult)) 345 | try 346 | { 347 | info.vertResult = File.ReadAllLines(vertProfileOutPath)[4]; 348 | } 349 | catch (Exception) 350 | { 351 | Thread.Sleep(30); 352 | } 353 | 354 | File.WriteAllBytes(fragPath, Encoding.Default.GetBytes(info.frag)); 355 | myprocess = new Process(); 356 | startInfo = new ProcessStartInfo(exePath, fragPath + " " + fragProfilePath + " -f -profile -nowarn"); 357 | startInfo.WindowStyle = ProcessWindowStyle.Hidden; 358 | startInfo.CreateNoWindow = true; 359 | myprocess.StartInfo = startInfo; 360 | myprocess.StartInfo.UseShellExecute = false; 361 | myprocess.Start(); 362 | Thread.Sleep(30); 363 | while (string.IsNullOrEmpty(info.fragResult)) 364 | try 365 | { 366 | info.fragResult = File.ReadAllLines(fragProfileOutPath)[4]; 367 | } 368 | catch (Exception) 369 | { 370 | Thread.Sleep(30); 371 | } 372 | } 373 | } 374 | 375 | private void Update() 376 | { 377 | if (start) 378 | { 379 | pastTime += Time.deltaTime; 380 | if (pastTime > 3.0f) 381 | { 382 | if (File.Exists(filePath)) 383 | { 384 | DealShader(); 385 | start = false; 386 | shaderComplete = true; 387 | } 388 | pastTime -= 1.0f; 389 | } 390 | } 391 | } 392 | 393 | public class ShaderInfo 394 | { 395 | public string frag; 396 | public string fragResult; 397 | public string keyWords; 398 | public bool opened = true; 399 | public string vert; 400 | public string vertResult; 401 | } 402 | } -------------------------------------------------------------------------------- /ShaderProfile/Assets/Editor/SharderProfile/OpenglShaderProfileWindow.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 22a5a9935d866a14f9662e314edf867f 3 | timeCreated: 1495725962 4 | licenseType: Pro 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /ShaderProfile/Assets/Editor/SharderProfile/PowerVR.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 7b14a6fafbc1f8b4cb3c25dd0ac4eaea 3 | folderAsset: yes 4 | timeCreated: 1495803338 5 | licenseType: Pro 6 | DefaultImporter: 7 | userData: 8 | assetBundleName: 9 | assetBundleVariant: 10 | -------------------------------------------------------------------------------- /ShaderProfile/Assets/Editor/SharderProfile/PowerVR/GLSLESCompiler_Series6.exe: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sqeety/UnityOpenglShaderProfiler/7d627f1544a739347a79fad5989da48213b1096d/ShaderProfile/Assets/Editor/SharderProfile/PowerVR/GLSLESCompiler_Series6.exe -------------------------------------------------------------------------------- /ShaderProfile/Assets/Editor/SharderProfile/PowerVR/GLSLESCompiler_Series6.exe.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 2d150b024e2d6a74fbc33a4ddd787e02 3 | timeCreated: 1495803338 4 | licenseType: Pro 5 | DefaultImporter: 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /ShaderProfile/Assets/Editor/SharderProfile/PowerVR/GLSLESCompiler_Series6FP16.exe: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sqeety/UnityOpenglShaderProfiler/7d627f1544a739347a79fad5989da48213b1096d/ShaderProfile/Assets/Editor/SharderProfile/PowerVR/GLSLESCompiler_Series6FP16.exe -------------------------------------------------------------------------------- /ShaderProfile/Assets/Editor/SharderProfile/PowerVR/GLSLESCompiler_Series6FP16.exe.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 3640e8851d3745d41b5dc6ec72e9e77f 3 | timeCreated: 1495803338 4 | licenseType: Pro 5 | DefaultImporter: 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /ShaderProfile/Assets/Editor/SharderProfile/PowerVR/GLSLESCompiler_Series6XT.exe: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sqeety/UnityOpenglShaderProfiler/7d627f1544a739347a79fad5989da48213b1096d/ShaderProfile/Assets/Editor/SharderProfile/PowerVR/GLSLESCompiler_Series6XT.exe -------------------------------------------------------------------------------- /ShaderProfile/Assets/Editor/SharderProfile/PowerVR/GLSLESCompiler_Series6XT.exe.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 91bdcc4c38cdfb74c9d748d03154149d 3 | timeCreated: 1495803338 4 | licenseType: Pro 5 | DefaultImporter: 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /ShaderProfile/Assets/TestShaders.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: bc6ef375edc578641a25ab13a7bee705 3 | folderAsset: yes 4 | timeCreated: 1499738732 5 | licenseType: Pro 6 | DefaultImporter: 7 | userData: 8 | assetBundleName: 9 | assetBundleVariant: 10 | -------------------------------------------------------------------------------- /ShaderProfile/Assets/TestShaders/Mobile-BumpSpec-1DirectionalLight.shader: -------------------------------------------------------------------------------- 1 | // Unity built-in shader source. Copyright (c) 2016 Unity Technologies. MIT license (see license.txt) 2 | 3 | // Simplified Bumped Specular shader. Differences from regular Bumped Specular one: 4 | // - no Main Color nor Specular Color 5 | // - specular lighting directions are approximated per vertex 6 | // - writes zero to alpha channel 7 | // - Normalmap uses Tiling/Offset of the Base texture 8 | // - no Deferred Lighting support 9 | // - no Lightmap support 10 | // - supports ONLY 1 directional light. Other lights are completely ignored. 11 | 12 | Shader "Mobile/Bumped Specular (1 Directional Light)" { 13 | Properties { 14 | _Shininess ("Shininess", Range (0.03, 1)) = 0.078125 15 | _MainTex ("Base (RGB) Gloss (A)", 2D) = "white" {} 16 | [NoScaleOffset] _BumpMap ("Normalmap", 2D) = "bump" {} 17 | } 18 | SubShader { 19 | Tags { "RenderType"="Opaque" } 20 | LOD 250 21 | 22 | CGPROGRAM 23 | #pragma surface surf MobileBlinnPhong exclude_path:prepass nolightmap noforwardadd halfasview novertexlights 24 | 25 | inline fixed4 LightingMobileBlinnPhong (SurfaceOutput s, fixed3 lightDir, fixed3 halfDir, fixed atten) 26 | { 27 | fixed diff = max (0, dot (s.Normal, lightDir)); 28 | fixed nh = max (0, dot (s.Normal, halfDir)); 29 | fixed spec = pow (nh, s.Specular*128) * s.Gloss; 30 | 31 | fixed4 c; 32 | c.rgb = (s.Albedo * _LightColor0.rgb * diff + _LightColor0.rgb * spec) * atten; 33 | UNITY_OPAQUE_ALPHA(c.a); 34 | return c; 35 | } 36 | 37 | sampler2D _MainTex; 38 | sampler2D _BumpMap; 39 | half _Shininess; 40 | 41 | struct Input { 42 | float2 uv_MainTex; 43 | }; 44 | 45 | void surf (Input IN, inout SurfaceOutput o) { 46 | fixed4 tex = tex2D(_MainTex, IN.uv_MainTex); 47 | o.Albedo = tex.rgb; 48 | o.Gloss = tex.a; 49 | o.Alpha = tex.a; 50 | o.Specular = _Shininess; 51 | o.Normal = UnpackNormal (tex2D(_BumpMap, IN.uv_MainTex)); 52 | } 53 | ENDCG 54 | } 55 | 56 | FallBack "Mobile/VertexLit" 57 | } 58 | -------------------------------------------------------------------------------- /ShaderProfile/Assets/TestShaders/Mobile-BumpSpec-1DirectionalLight.shader.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 2043b1ab2521c8c4d921bbf7480d6fa4 3 | timeCreated: 1499738739 4 | licenseType: Pro 5 | ShaderImporter: 6 | defaultTextures: [] 7 | userData: 8 | assetBundleName: 9 | assetBundleVariant: 10 | -------------------------------------------------------------------------------- /ShaderProfile/Assets/TestShaders/Mobile-BumpSpec.shader: -------------------------------------------------------------------------------- 1 | // Unity built-in shader source. Copyright (c) 2016 Unity Technologies. MIT license (see license.txt) 2 | 3 | // Simplified Bumped Specular shader. Differences from regular Bumped Specular one: 4 | // - no Main Color nor Specular Color 5 | // - specular lighting directions are approximated per vertex 6 | // - writes zero to alpha channel 7 | // - Normalmap uses Tiling/Offset of the Base texture 8 | // - no Deferred Lighting support 9 | // - no Lightmap support 10 | // - fully supports only 1 directional light. Other lights can affect it, but it will be per-vertex/SH. 11 | 12 | Shader "Mobile/Bumped Specular" { 13 | Properties { 14 | _Shininess ("Shininess", Range (0.03, 1)) = 0.078125 15 | _MainTex ("Base (RGB) Gloss (A)", 2D) = "white" {} 16 | [NoScaleOffset] _BumpMap ("Normalmap", 2D) = "bump" {} 17 | } 18 | SubShader { 19 | Tags { "RenderType"="Opaque" } 20 | LOD 250 21 | 22 | CGPROGRAM 23 | #pragma surface surf MobileBlinnPhong exclude_path:prepass nolightmap noforwardadd halfasview interpolateview 24 | 25 | inline fixed4 LightingMobileBlinnPhong (SurfaceOutput s, fixed3 lightDir, fixed3 halfDir, fixed atten) 26 | { 27 | fixed diff = max (0, dot (s.Normal, lightDir)); 28 | fixed nh = max (0, dot (s.Normal, halfDir)); 29 | fixed spec = pow (nh, s.Specular*128) * s.Gloss; 30 | 31 | fixed4 c; 32 | c.rgb = (s.Albedo * _LightColor0.rgb * diff + _LightColor0.rgb * spec) * atten; 33 | UNITY_OPAQUE_ALPHA(c.a); 34 | return c; 35 | } 36 | 37 | sampler2D _MainTex; 38 | sampler2D _BumpMap; 39 | half _Shininess; 40 | 41 | struct Input { 42 | float2 uv_MainTex; 43 | }; 44 | 45 | void surf (Input IN, inout SurfaceOutput o) { 46 | fixed4 tex = tex2D(_MainTex, IN.uv_MainTex); 47 | o.Albedo = tex.rgb; 48 | o.Gloss = tex.a; 49 | o.Alpha = tex.a; 50 | o.Specular = _Shininess; 51 | o.Normal = UnpackNormal (tex2D(_BumpMap, IN.uv_MainTex)); 52 | } 53 | ENDCG 54 | } 55 | 56 | FallBack "Mobile/VertexLit" 57 | } 58 | -------------------------------------------------------------------------------- /ShaderProfile/Assets/TestShaders/Mobile-BumpSpec.shader.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: fe2e8302b76648c4c91c5166a815dfc9 3 | timeCreated: 1499738740 4 | licenseType: Pro 5 | ShaderImporter: 6 | defaultTextures: [] 7 | userData: 8 | assetBundleName: 9 | assetBundleVariant: 10 | -------------------------------------------------------------------------------- /ShaderProfile/Assets/TestShaders/Mobile-Bumped.shader: -------------------------------------------------------------------------------- 1 | // Unity built-in shader source. Copyright (c) 2016 Unity Technologies. MIT license (see license.txt) 2 | 3 | // Simplified Bumped shader. Differences from regular Bumped one: 4 | // - no Main Color 5 | // - Normalmap uses Tiling/Offset of the Base texture 6 | // - fully supports only 1 directional light. Other lights can affect it, but it will be per-vertex/SH. 7 | 8 | Shader "Mobile/Bumped Diffuse" { 9 | Properties { 10 | _MainTex ("Base (RGB)", 2D) = "white" {} 11 | [NoScaleOffset] _BumpMap ("Normalmap", 2D) = "bump" {} 12 | } 13 | 14 | SubShader { 15 | Tags { "RenderType"="Opaque" } 16 | LOD 250 17 | 18 | CGPROGRAM 19 | #pragma surface surf Lambert noforwardadd 20 | 21 | sampler2D _MainTex; 22 | sampler2D _BumpMap; 23 | 24 | struct Input { 25 | float2 uv_MainTex; 26 | }; 27 | 28 | void surf (Input IN, inout SurfaceOutput o) { 29 | fixed4 c = tex2D(_MainTex, IN.uv_MainTex); 30 | o.Albedo = c.rgb; 31 | o.Alpha = c.a; 32 | o.Normal = UnpackNormal(tex2D(_BumpMap, IN.uv_MainTex)); 33 | } 34 | ENDCG 35 | } 36 | 37 | FallBack "Mobile/Diffuse" 38 | } 39 | -------------------------------------------------------------------------------- /ShaderProfile/Assets/TestShaders/Mobile-Bumped.shader.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: c1f3b3f0fdd37db4b8b03d404282a5eb 3 | timeCreated: 1499738740 4 | licenseType: Pro 5 | ShaderImporter: 6 | defaultTextures: [] 7 | userData: 8 | assetBundleName: 9 | assetBundleVariant: 10 | -------------------------------------------------------------------------------- /ShaderProfile/Assets/TestShaders/Mobile-Diffuse.shader: -------------------------------------------------------------------------------- 1 | // Unity built-in shader source. Copyright (c) 2016 Unity Technologies. MIT license (see license.txt) 2 | 3 | // Simplified Diffuse shader. Differences from regular Diffuse one: 4 | // - no Main Color 5 | // - fully supports only 1 directional light. Other lights can affect it, but it will be per-vertex/SH. 6 | 7 | Shader "Mobile/Diffuse" { 8 | Properties { 9 | _MainTex ("Base (RGB)", 2D) = "white" {} 10 | } 11 | SubShader { 12 | Tags { "RenderType"="Opaque" } 13 | LOD 150 14 | 15 | CGPROGRAM 16 | #pragma surface surf Lambert noforwardadd 17 | 18 | sampler2D _MainTex; 19 | 20 | struct Input { 21 | float2 uv_MainTex; 22 | }; 23 | 24 | void surf (Input IN, inout SurfaceOutput o) { 25 | fixed4 c = tex2D(_MainTex, IN.uv_MainTex); 26 | o.Albedo = c.rgb; 27 | o.Alpha = c.a; 28 | } 29 | ENDCG 30 | } 31 | 32 | Fallback "Mobile/VertexLit" 33 | } 34 | -------------------------------------------------------------------------------- /ShaderProfile/Assets/TestShaders/Mobile-Diffuse.shader.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: fe6be3d9e80c97e4b89f21b39d524fcf 3 | timeCreated: 1499738740 4 | licenseType: Pro 5 | ShaderImporter: 6 | defaultTextures: [] 7 | userData: 8 | assetBundleName: 9 | assetBundleVariant: 10 | -------------------------------------------------------------------------------- /ShaderProfile/Assets/TestShaders/Mobile-Lightmap-Unlit.shader: -------------------------------------------------------------------------------- 1 | // Unity built-in shader source. Copyright (c) 2016 Unity Technologies. MIT license (see license.txt) 2 | 3 | // Unlit shader. Simplest possible textured shader. 4 | // - SUPPORTS lightmap 5 | // - no lighting 6 | // - no per-material color 7 | 8 | Shader "Mobile/Unlit (Supports Lightmap)" { 9 | Properties { 10 | _MainTex ("Base (RGB)", 2D) = "white" {} 11 | } 12 | 13 | SubShader { 14 | Tags { "RenderType"="Opaque" } 15 | LOD 100 16 | 17 | // Non-lightmapped 18 | Pass { 19 | Tags { "LightMode" = "Vertex" } 20 | Lighting Off 21 | SetTexture [_MainTex] { 22 | constantColor (1,1,1,1) 23 | combine texture, constant // UNITY_OPAQUE_ALPHA_FFP 24 | } 25 | } 26 | 27 | // Lightmapped, encoded as dLDR 28 | Pass { 29 | Tags { "LightMode" = "VertexLM" } 30 | 31 | Lighting Off 32 | BindChannels { 33 | Bind "Vertex", vertex 34 | Bind "texcoord1", texcoord0 // lightmap uses 2nd uv 35 | Bind "texcoord", texcoord1 // main uses 1st uv 36 | } 37 | 38 | SetTexture [unity_Lightmap] { 39 | matrix [unity_LightmapMatrix] 40 | combine texture 41 | } 42 | SetTexture [_MainTex] { 43 | constantColor (1,1,1,1) 44 | combine texture * previous DOUBLE, constant // UNITY_OPAQUE_ALPHA_FFP 45 | } 46 | } 47 | 48 | // Lightmapped, encoded as RGBM 49 | Pass { 50 | Tags { "LIGHTMODE"="VertexLMRGBM" "RenderType"="Opaque" } 51 | CGPROGRAM 52 | #pragma vertex vert 53 | #pragma fragment frag 54 | #pragma target 2.0 55 | #include "UnityCG.cginc" 56 | #pragma multi_compile_fog 57 | #define USING_FOG (defined(FOG_LINEAR) || defined(FOG_EXP) || defined(FOG_EXP2)) 58 | 59 | // uniforms 60 | float4 _MainTex_ST; 61 | 62 | // vertex shader input data 63 | struct appdata 64 | { 65 | float3 pos : POSITION; 66 | float3 uv1 : TEXCOORD1; 67 | float3 uv0 : TEXCOORD0; 68 | UNITY_VERTEX_INPUT_INSTANCE_ID 69 | }; 70 | 71 | // vertex-to-fragment interpolators 72 | struct v2f 73 | { 74 | fixed4 color : COLOR0; 75 | float2 uv0 : TEXCOORD0; 76 | float2 uv1 : TEXCOORD1; 77 | #if USING_FOG 78 | fixed fog : TEXCOORD2; 79 | #endif 80 | float4 pos : SV_POSITION; 81 | UNITY_VERTEX_OUTPUT_STEREO 82 | }; 83 | 84 | // vertex shader 85 | v2f vert(appdata IN) 86 | { 87 | v2f o; 88 | UNITY_SETUP_INSTANCE_ID(IN); 89 | UNITY_INITIALIZE_VERTEX_OUTPUT_STEREO(o); 90 | half4 color = half4(0, 0, 0, 1.1); 91 | float3 eyePos = UnityObjectToViewPos(float4(IN.pos, 1)); 92 | half3 viewDir = 0.0; 93 | o.color = saturate(color); 94 | // compute texture coordinates 95 | o.uv0 = IN.uv1.xy * unity_LightmapST.xy + unity_LightmapST.zw; 96 | o.uv1 = IN.uv0.xy * _MainTex_ST.xy + _MainTex_ST.zw; 97 | // fog 98 | #if USING_FOG 99 | float fogCoord = length(eyePos.xyz); // radial fog distance 100 | UNITY_CALC_FOG_FACTOR_RAW(fogCoord); 101 | o.fog = saturate(unityFogFactor); 102 | #endif 103 | // transform position 104 | o.pos = UnityObjectToClipPos(IN.pos); 105 | return o; 106 | } 107 | 108 | // textures 109 | sampler2D _MainTex; 110 | 111 | // fragment shader 112 | fixed4 frag(v2f IN) : SV_Target 113 | { 114 | fixed4 col, tex; 115 | 116 | // Fetch lightmap 117 | half4 bakedColorTex = UNITY_SAMPLE_TEX2D(unity_Lightmap, IN.uv0.xy); 118 | col.rgb = DecodeLightmap(bakedColorTex); 119 | 120 | // Fetch color texture 121 | tex = tex2D(_MainTex, IN.uv1.xy); 122 | col.rgb = tex.rgb * col.rgb; 123 | col.a = 1; 124 | 125 | // fog 126 | #if USING_FOG 127 | col.rgb = lerp(unity_FogColor.rgb, col.rgb, IN.fog); 128 | #endif 129 | return col; 130 | } 131 | 132 | ENDCG 133 | } 134 | } 135 | } 136 | 137 | 138 | 139 | -------------------------------------------------------------------------------- /ShaderProfile/Assets/TestShaders/Mobile-Lightmap-Unlit.shader.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: bec2dd71fa53eac4c9a8371f878fa9a0 3 | timeCreated: 1499738739 4 | licenseType: Pro 5 | ShaderImporter: 6 | defaultTextures: [] 7 | userData: 8 | assetBundleName: 9 | assetBundleVariant: 10 | -------------------------------------------------------------------------------- /ShaderProfile/Assets/TestShaders/Mobile-Particle-Add.shader: -------------------------------------------------------------------------------- 1 | // Unity built-in shader source. Copyright (c) 2016 Unity Technologies. MIT license (see license.txt) 2 | 3 | // Simplified Additive Particle shader. Differences from regular Additive Particle one: 4 | // - no Tint color 5 | // - no Smooth particle support 6 | // - no AlphaTest 7 | // - no ColorMask 8 | 9 | Shader "Mobile/Particles/Additive" { 10 | Properties { 11 | _MainTex ("Particle Texture", 2D) = "white" {} 12 | } 13 | 14 | Category { 15 | Tags { "Queue"="Transparent" "IgnoreProjector"="True" "RenderType"="Transparent" "PreviewType"="Plane" } 16 | Blend SrcAlpha One 17 | Cull Off Lighting Off ZWrite Off Fog { Color (0,0,0,0) } 18 | 19 | BindChannels { 20 | Bind "Color", color 21 | Bind "Vertex", vertex 22 | Bind "TexCoord", texcoord 23 | } 24 | 25 | SubShader { 26 | Pass { 27 | SetTexture [_MainTex] { 28 | combine texture * primary 29 | } 30 | } 31 | } 32 | } 33 | } -------------------------------------------------------------------------------- /ShaderProfile/Assets/TestShaders/Mobile-Particle-Add.shader.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: df071b5dfd0ad0046a35af26457524ea 3 | timeCreated: 1499738740 4 | licenseType: Pro 5 | ShaderImporter: 6 | defaultTextures: [] 7 | userData: 8 | assetBundleName: 9 | assetBundleVariant: 10 | -------------------------------------------------------------------------------- /ShaderProfile/Assets/TestShaders/Mobile-Particle-Alpha-VertexLit.shader: -------------------------------------------------------------------------------- 1 | // Unity built-in shader source. Copyright (c) 2016 Unity Technologies. MIT license (see license.txt) 2 | 3 | // Simplified VertexLit Blended Particle shader. Differences from regular VertexLit Blended Particle one: 4 | // - no AlphaTest 5 | // - no ColorMask 6 | 7 | Shader "Mobile/Particles/VertexLit Blended" { 8 | Properties { 9 | _EmisColor ("Emissive Color", Color) = (.2,.2,.2,0) 10 | _MainTex ("Particle Texture", 2D) = "white" {} 11 | } 12 | 13 | Category { 14 | Tags { "Queue"="Transparent" "IgnoreProjector"="True" "RenderType"="Transparent" "PreviewType"="Plane" } 15 | Blend SrcAlpha OneMinusSrcAlpha 16 | Cull Off ZWrite Off Fog { Color (0,0,0,0) } 17 | 18 | Lighting On 19 | Material { Emission [_EmisColor] } 20 | ColorMaterial AmbientAndDiffuse 21 | 22 | SubShader { 23 | Pass { 24 | SetTexture [_MainTex] { 25 | combine texture * primary 26 | } 27 | } 28 | } 29 | } 30 | } -------------------------------------------------------------------------------- /ShaderProfile/Assets/TestShaders/Mobile-Particle-Alpha-VertexLit.shader.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 34219471d986d9b45be24d6fc1f5c197 3 | timeCreated: 1499738739 4 | licenseType: Pro 5 | ShaderImporter: 6 | defaultTextures: [] 7 | userData: 8 | assetBundleName: 9 | assetBundleVariant: 10 | -------------------------------------------------------------------------------- /ShaderProfile/Assets/TestShaders/Mobile-Particle-Alpha.shader: -------------------------------------------------------------------------------- 1 | // Unity built-in shader source. Copyright (c) 2016 Unity Technologies. MIT license (see license.txt) 2 | 3 | // Simplified Alpha Blended Particle shader. Differences from regular Alpha Blended Particle one: 4 | // - no Tint color 5 | // - no Smooth particle support 6 | // - no AlphaTest 7 | // - no ColorMask 8 | 9 | Shader "Mobile/Particles/Alpha Blended" { 10 | Properties { 11 | _MainTex ("Particle Texture", 2D) = "white" {} 12 | } 13 | 14 | Category { 15 | Tags { "Queue"="Transparent" "IgnoreProjector"="True" "RenderType"="Transparent" "PreviewType"="Plane" } 16 | Blend SrcAlpha OneMinusSrcAlpha 17 | Cull Off Lighting Off ZWrite Off Fog { Color (0,0,0,0) } 18 | 19 | BindChannels { 20 | Bind "Color", color 21 | Bind "Vertex", vertex 22 | Bind "TexCoord", texcoord 23 | } 24 | 25 | SubShader { 26 | Pass { 27 | SetTexture [_MainTex] { 28 | combine texture * primary 29 | } 30 | } 31 | } 32 | } 33 | } 34 | -------------------------------------------------------------------------------- /ShaderProfile/Assets/TestShaders/Mobile-Particle-Alpha.shader.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 167a7613e73918746aac4162d4f94d6c 3 | timeCreated: 1499738738 4 | licenseType: Pro 5 | ShaderImporter: 6 | defaultTextures: [] 7 | userData: 8 | assetBundleName: 9 | assetBundleVariant: 10 | -------------------------------------------------------------------------------- /ShaderProfile/Assets/TestShaders/Mobile-Particle-Multiply.shader: -------------------------------------------------------------------------------- 1 | // Unity built-in shader source. Copyright (c) 2016 Unity Technologies. MIT license (see license.txt) 2 | 3 | // Simplified Multiply Particle shader. Differences from regular Multiply Particle one: 4 | // - no Smooth particle support 5 | // - no AlphaTest 6 | // - no ColorMask 7 | 8 | Shader "Mobile/Particles/Multiply" { 9 | Properties { 10 | _MainTex ("Particle Texture", 2D) = "white" {} 11 | } 12 | 13 | Category { 14 | Tags { "Queue"="Transparent" "IgnoreProjector"="True" "RenderType"="Transparent" "PreviewType"="Plane" } 15 | Blend Zero SrcColor 16 | Cull Off Lighting Off ZWrite Off Fog { Color (1,1,1,1) } 17 | 18 | BindChannels { 19 | Bind "Color", color 20 | Bind "Vertex", vertex 21 | Bind "TexCoord", texcoord 22 | } 23 | 24 | SubShader { 25 | Pass { 26 | SetTexture [_MainTex] { 27 | combine texture * primary 28 | } 29 | SetTexture [_MainTex] { 30 | constantColor (1,1,1,1) 31 | combine previous lerp (previous) constant 32 | } 33 | } 34 | } 35 | } 36 | } 37 | -------------------------------------------------------------------------------- /ShaderProfile/Assets/TestShaders/Mobile-Particle-Multiply.shader.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: a10432e67c4ba7a4c8068060df1d035d 3 | timeCreated: 1499738739 4 | licenseType: Pro 5 | ShaderImporter: 6 | defaultTextures: [] 7 | userData: 8 | assetBundleName: 9 | assetBundleVariant: 10 | -------------------------------------------------------------------------------- /ShaderProfile/Assets/TestShaders/Mobile-Skybox.shader: -------------------------------------------------------------------------------- 1 | // Unity built-in shader source. Copyright (c) 2016 Unity Technologies. MIT license (see license.txt) 2 | 3 | // Simplified Skybox shader. Differences from regular Skybox one: 4 | // - no tint color 5 | 6 | Shader "Mobile/Skybox" { 7 | Properties { 8 | _FrontTex ("Front (+Z)", 2D) = "white" {} 9 | _BackTex ("Back (-Z)", 2D) = "white" {} 10 | _LeftTex ("Left (+X)", 2D) = "white" {} 11 | _RightTex ("Right (-X)", 2D) = "white" {} 12 | _UpTex ("Up (+Y)", 2D) = "white" {} 13 | _DownTex ("Down (-Y)", 2D) = "white" {} 14 | } 15 | 16 | SubShader { 17 | Tags { "Queue"="Background" "RenderType"="Background" "PreviewType"="Skybox" } 18 | Cull Off ZWrite Off Fog { Mode Off } 19 | Pass { 20 | SetTexture [_FrontTex] { combine texture } 21 | } 22 | Pass { 23 | SetTexture [_BackTex] { combine texture } 24 | } 25 | Pass { 26 | SetTexture [_LeftTex] { combine texture } 27 | } 28 | Pass { 29 | SetTexture [_RightTex] { combine texture } 30 | } 31 | Pass { 32 | SetTexture [_UpTex] { combine texture } 33 | } 34 | Pass { 35 | SetTexture [_DownTex] { combine texture } 36 | } 37 | } 38 | } 39 | -------------------------------------------------------------------------------- /ShaderProfile/Assets/TestShaders/Mobile-Skybox.shader.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 177cba07e3057f14dae10f27b5b54e6f 3 | timeCreated: 1499738738 4 | licenseType: Pro 5 | ShaderImporter: 6 | defaultTextures: [] 7 | userData: 8 | assetBundleName: 9 | assetBundleVariant: 10 | -------------------------------------------------------------------------------- /ShaderProfile/Assets/TestShaders/Mobile-VertexLit-OnlyDirectionalLights.shader: -------------------------------------------------------------------------------- 1 | // Unity built-in shader source. Copyright (c) 2016 Unity Technologies. MIT license (see license.txt) 2 | 3 | // Simplified VertexLit shader, optimized for high-poly meshes. Differences from regular VertexLit one: 4 | // - less per-vertex work compared with Mobile-VertexLit 5 | // - supports only DIRECTIONAL lights and ambient term, saves some vertex processing power 6 | // - no per-material color 7 | // - no specular 8 | // - no emission 9 | 10 | Shader "Mobile/VertexLit (Only Directional Lights)" { 11 | Properties { 12 | _MainTex ("Base (RGB)", 2D) = "white" {} 13 | } 14 | SubShader { 15 | Tags { "RenderType"="Opaque" } 16 | LOD 80 17 | 18 | Pass { 19 | Name "FORWARD" 20 | Tags { "LightMode" = "ForwardBase" } 21 | CGPROGRAM 22 | #pragma vertex vert_surf 23 | #pragma fragment frag_surf 24 | #pragma target 2.0 25 | #pragma multi_compile_fwdbase 26 | #pragma multi_compile_fog 27 | #include "HLSLSupport.cginc" 28 | #include "UnityCG.cginc" 29 | #include "Lighting.cginc" 30 | #include "AutoLight.cginc" 31 | 32 | inline float3 LightingLambertVS (float3 normal, float3 lightDir) 33 | { 34 | fixed diff = max (0, dot (normal, lightDir)); 35 | return _LightColor0.rgb * diff; 36 | } 37 | 38 | sampler2D _MainTex; 39 | 40 | struct Input { 41 | float2 uv_MainTex; 42 | }; 43 | 44 | void surf (Input IN, inout SurfaceOutput o) { 45 | half4 c = tex2D (_MainTex, IN.uv_MainTex); 46 | o.Albedo = c.rgb; 47 | o.Alpha = c.a; 48 | } 49 | struct v2f_surf { 50 | float4 pos : SV_POSITION; 51 | float2 pack0 : TEXCOORD0; 52 | #ifndef LIGHTMAP_ON 53 | fixed3 normal : TEXCOORD1; 54 | #endif 55 | #ifdef LIGHTMAP_ON 56 | float2 lmap : TEXCOORD2; 57 | #endif 58 | #ifndef LIGHTMAP_ON 59 | fixed3 vlight : TEXCOORD2; 60 | #endif 61 | LIGHTING_COORDS(3,4) 62 | UNITY_FOG_COORDS(5) 63 | UNITY_VERTEX_OUTPUT_STEREO 64 | }; 65 | float4 _MainTex_ST; 66 | v2f_surf vert_surf (appdata_full v) 67 | { 68 | v2f_surf o; 69 | UNITY_SETUP_INSTANCE_ID(v); 70 | UNITY_INITIALIZE_VERTEX_OUTPUT_STEREO(o); 71 | o.pos = UnityObjectToClipPos(v.vertex); 72 | o.pack0.xy = TRANSFORM_TEX(v.texcoord, _MainTex); 73 | #ifdef LIGHTMAP_ON 74 | o.lmap.xy = v.texcoord1.xy * unity_LightmapST.xy + unity_LightmapST.zw; 75 | #endif 76 | float3 worldN = UnityObjectToWorldNormal(v.normal); 77 | #ifndef LIGHTMAP_ON 78 | o.normal = worldN; 79 | #endif 80 | #ifndef LIGHTMAP_ON 81 | 82 | o.vlight = ShadeSH9 (float4(worldN,1.0)); 83 | o.vlight += LightingLambertVS (worldN, _WorldSpaceLightPos0.xyz); 84 | 85 | #endif 86 | TRANSFER_VERTEX_TO_FRAGMENT(o); 87 | UNITY_TRANSFER_FOG(o,o.pos); 88 | return o; 89 | } 90 | fixed4 frag_surf (v2f_surf IN) : SV_Target 91 | { 92 | Input surfIN; 93 | surfIN.uv_MainTex = IN.pack0.xy; 94 | SurfaceOutput o; 95 | o.Albedo = 0.0; 96 | o.Emission = 0.0; 97 | o.Specular = 0.0; 98 | o.Alpha = 0.0; 99 | o.Gloss = 0.0; 100 | #ifndef LIGHTMAP_ON 101 | o.Normal = IN.normal; 102 | #else 103 | o.Normal = 0; 104 | #endif 105 | surf (surfIN, o); 106 | fixed atten = LIGHT_ATTENUATION(IN); 107 | fixed4 c = 0; 108 | #ifndef LIGHTMAP_ON 109 | c.rgb = o.Albedo * IN.vlight * atten; 110 | #endif 111 | #ifdef LIGHTMAP_ON 112 | fixed3 lm = DecodeLightmap (UNITY_SAMPLE_TEX2D(unity_Lightmap, IN.lmap.xy)); 113 | #ifdef SHADOWS_SCREEN 114 | c.rgb += o.Albedo * min(lm, atten*2); 115 | #else 116 | c.rgb += o.Albedo * lm; 117 | #endif 118 | c.a = o.Alpha; 119 | #endif 120 | UNITY_APPLY_FOG(IN.fogCoord, c); 121 | UNITY_OPAQUE_ALPHA(c.a); 122 | return c; 123 | } 124 | 125 | ENDCG 126 | } 127 | } 128 | 129 | FallBack "Mobile/VertexLit" 130 | } 131 | -------------------------------------------------------------------------------- /ShaderProfile/Assets/TestShaders/Mobile-VertexLit-OnlyDirectionalLights.shader.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 2c030a6ac5cc4f84c9f0dd924b9a84a3 3 | timeCreated: 1499738739 4 | licenseType: Pro 5 | ShaderImporter: 6 | defaultTextures: [] 7 | userData: 8 | assetBundleName: 9 | assetBundleVariant: 10 | -------------------------------------------------------------------------------- /ShaderProfile/Assets/TestShaders/Mobile-VertexLit.shader: -------------------------------------------------------------------------------- 1 | // Unity built-in shader source. Copyright (c) 2016 Unity Technologies. MIT license (see license.txt) 2 | 3 | // Simplified VertexLit shader. Differences from regular VertexLit one: 4 | // - no per-material color 5 | // - no specular 6 | // - no emission 7 | 8 | Shader "Mobile/VertexLit" { 9 | Properties { 10 | _MainTex ("Base (RGB)", 2D) = "white" {} 11 | } 12 | 13 | SubShader { 14 | Tags { "RenderType"="Opaque" } 15 | LOD 80 16 | 17 | // Non-lightmapped 18 | Pass { 19 | Tags { "LightMode" = "Vertex" } 20 | 21 | Material { 22 | Diffuse (1,1,1,1) 23 | Ambient (1,1,1,1) 24 | } 25 | Lighting On 26 | SetTexture [_MainTex] { 27 | constantColor (1,1,1,1) 28 | Combine texture * primary DOUBLE, constant // UNITY_OPAQUE_ALPHA_FFP 29 | } 30 | } 31 | 32 | // Lightmapped, encoded as dLDR 33 | Pass { 34 | Tags { "LightMode" = "VertexLM" } 35 | 36 | BindChannels { 37 | Bind "Vertex", vertex 38 | Bind "normal", normal 39 | Bind "texcoord1", texcoord0 // lightmap uses 2nd uv 40 | Bind "texcoord", texcoord1 // main uses 1st uv 41 | } 42 | 43 | SetTexture [unity_Lightmap] { 44 | matrix [unity_LightmapMatrix] 45 | combine texture 46 | } 47 | SetTexture [_MainTex] { 48 | constantColor (1,1,1,1) 49 | combine texture * previous DOUBLE, constant // UNITY_OPAQUE_ALPHA_FFP 50 | } 51 | } 52 | 53 | // Lightmapped, encoded as RGBM 54 | Pass { 55 | Tags { "LightMode" = "VertexLMRGBM" } 56 | 57 | BindChannels { 58 | Bind "Vertex", vertex 59 | Bind "normal", normal 60 | Bind "texcoord1", texcoord0 // lightmap uses 2nd uv 61 | Bind "texcoord", texcoord1 // main uses 1st uv 62 | } 63 | 64 | SetTexture [unity_Lightmap] { 65 | matrix [unity_LightmapMatrix] 66 | combine texture * texture alpha DOUBLE 67 | } 68 | SetTexture [_MainTex] { 69 | constantColor (1,1,1,1) 70 | combine texture * previous QUAD, constant // UNITY_OPAQUE_ALPHA_FFP 71 | } 72 | } 73 | 74 | // Pass to render object as a shadow caster 75 | Pass 76 | { 77 | Name "ShadowCaster" 78 | Tags { "LightMode" = "ShadowCaster" } 79 | 80 | ZWrite On ZTest LEqual Cull Off 81 | 82 | CGPROGRAM 83 | #pragma vertex vert 84 | #pragma fragment frag 85 | #pragma target 2.0 86 | #pragma multi_compile_shadowcaster 87 | #include "UnityCG.cginc" 88 | 89 | struct v2f { 90 | V2F_SHADOW_CASTER; 91 | UNITY_VERTEX_OUTPUT_STEREO 92 | }; 93 | 94 | v2f vert( appdata_base v ) 95 | { 96 | v2f o; 97 | UNITY_SETUP_INSTANCE_ID(v); 98 | UNITY_INITIALIZE_VERTEX_OUTPUT_STEREO(o); 99 | TRANSFER_SHADOW_CASTER_NORMALOFFSET(o) 100 | return o; 101 | } 102 | 103 | float4 frag( v2f i ) : SV_Target 104 | { 105 | SHADOW_CASTER_FRAGMENT(i) 106 | } 107 | ENDCG 108 | } 109 | } 110 | } 111 | -------------------------------------------------------------------------------- /ShaderProfile/Assets/TestShaders/Mobile-VertexLit.shader.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 5213cb08c349ce346a5de506bf70f524 3 | timeCreated: 1499738739 4 | licenseType: Pro 5 | ShaderImporter: 6 | defaultTextures: [] 7 | userData: 8 | assetBundleName: 9 | assetBundleVariant: 10 | -------------------------------------------------------------------------------- /ShaderProfile/ProjectSettings/AudioManager.asset: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sqeety/UnityOpenglShaderProfiler/7d627f1544a739347a79fad5989da48213b1096d/ShaderProfile/ProjectSettings/AudioManager.asset -------------------------------------------------------------------------------- /ShaderProfile/ProjectSettings/ClusterInputManager.asset: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sqeety/UnityOpenglShaderProfiler/7d627f1544a739347a79fad5989da48213b1096d/ShaderProfile/ProjectSettings/ClusterInputManager.asset -------------------------------------------------------------------------------- /ShaderProfile/ProjectSettings/DynamicsManager.asset: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sqeety/UnityOpenglShaderProfiler/7d627f1544a739347a79fad5989da48213b1096d/ShaderProfile/ProjectSettings/DynamicsManager.asset -------------------------------------------------------------------------------- /ShaderProfile/ProjectSettings/EditorBuildSettings.asset: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sqeety/UnityOpenglShaderProfiler/7d627f1544a739347a79fad5989da48213b1096d/ShaderProfile/ProjectSettings/EditorBuildSettings.asset -------------------------------------------------------------------------------- /ShaderProfile/ProjectSettings/EditorSettings.asset: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sqeety/UnityOpenglShaderProfiler/7d627f1544a739347a79fad5989da48213b1096d/ShaderProfile/ProjectSettings/EditorSettings.asset -------------------------------------------------------------------------------- /ShaderProfile/ProjectSettings/GraphicsSettings.asset: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sqeety/UnityOpenglShaderProfiler/7d627f1544a739347a79fad5989da48213b1096d/ShaderProfile/ProjectSettings/GraphicsSettings.asset -------------------------------------------------------------------------------- /ShaderProfile/ProjectSettings/InputManager.asset: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sqeety/UnityOpenglShaderProfiler/7d627f1544a739347a79fad5989da48213b1096d/ShaderProfile/ProjectSettings/InputManager.asset -------------------------------------------------------------------------------- /ShaderProfile/ProjectSettings/NavMeshAreas.asset: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sqeety/UnityOpenglShaderProfiler/7d627f1544a739347a79fad5989da48213b1096d/ShaderProfile/ProjectSettings/NavMeshAreas.asset -------------------------------------------------------------------------------- /ShaderProfile/ProjectSettings/NetworkManager.asset: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sqeety/UnityOpenglShaderProfiler/7d627f1544a739347a79fad5989da48213b1096d/ShaderProfile/ProjectSettings/NetworkManager.asset -------------------------------------------------------------------------------- /ShaderProfile/ProjectSettings/Physics2DSettings.asset: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sqeety/UnityOpenglShaderProfiler/7d627f1544a739347a79fad5989da48213b1096d/ShaderProfile/ProjectSettings/Physics2DSettings.asset -------------------------------------------------------------------------------- /ShaderProfile/ProjectSettings/ProjectSettings.asset: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sqeety/UnityOpenglShaderProfiler/7d627f1544a739347a79fad5989da48213b1096d/ShaderProfile/ProjectSettings/ProjectSettings.asset -------------------------------------------------------------------------------- /ShaderProfile/ProjectSettings/ProjectVersion.txt: -------------------------------------------------------------------------------- 1 | m_EditorVersion: 5.6.1p1 2 | -------------------------------------------------------------------------------- /ShaderProfile/ProjectSettings/QualitySettings.asset: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sqeety/UnityOpenglShaderProfiler/7d627f1544a739347a79fad5989da48213b1096d/ShaderProfile/ProjectSettings/QualitySettings.asset -------------------------------------------------------------------------------- /ShaderProfile/ProjectSettings/TagManager.asset: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sqeety/UnityOpenglShaderProfiler/7d627f1544a739347a79fad5989da48213b1096d/ShaderProfile/ProjectSettings/TagManager.asset -------------------------------------------------------------------------------- /ShaderProfile/ProjectSettings/TimeManager.asset: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sqeety/UnityOpenglShaderProfiler/7d627f1544a739347a79fad5989da48213b1096d/ShaderProfile/ProjectSettings/TimeManager.asset -------------------------------------------------------------------------------- /ShaderProfile/ProjectSettings/UnityConnectSettings.asset: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sqeety/UnityOpenglShaderProfiler/7d627f1544a739347a79fad5989da48213b1096d/ShaderProfile/ProjectSettings/UnityConnectSettings.asset -------------------------------------------------------------------------------- /ShaderProfile/ShaderProfile.Editor.csproj: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 | Debug 5 | AnyCPU 6 | 10.0.20506 7 | 2.0 8 | {1CEE9BF4-A27A-EF54-BCE9-0187C17BEC6F} 9 | Library 10 | Assembly-CSharp-Editor 11 | 512 12 | {E097FAD1-6243-4DAD-9C02-E9B9EFC3FFC1};{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC} 13 | .NETFramework 14 | v3.5 15 | Unity Full v3.5 16 | 17 | Editor:5 18 | StandaloneWindows:5 19 | 5.6.1p1 20 | 21 | 4 22 | 23 | 24 | pdbonly 25 | false 26 | Temp\UnityVS_bin\Debug\ 27 | Temp\UnityVS_obj\Debug\ 28 | prompt 29 | 4 30 | DEBUG;TRACE;UNITY_5_3_OR_NEWER;UNITY_5_4_OR_NEWER;UNITY_5_5_OR_NEWER;UNITY_5_6_OR_NEWER;UNITY_5_6_1;UNITY_5_6;UNITY_5;ENABLE_AUDIO;ENABLE_CACHING;ENABLE_CLOTH;ENABLE_DUCK_TYPING;ENABLE_GENERICS;ENABLE_PVR_GI;ENABLE_MICROPHONE;ENABLE_MULTIPLE_DISPLAYS;ENABLE_PHYSICS;ENABLE_RUNTIME_NAVMESH_BUILDING;ENABLE_SPRITERENDERER_FLIPPING;ENABLE_SPRITES;ENABLE_TERRAIN;ENABLE_RAKNET;ENABLE_UNET;ENABLE_LZMA;ENABLE_UNITYEVENTS;ENABLE_WEBCAM;ENABLE_WWW;ENABLE_CLOUD_SERVICES_COLLAB;ENABLE_CLOUD_SERVICES_ADS;ENABLE_CLOUD_HUB;ENABLE_CLOUD_PROJECT_ID;ENABLE_CLOUD_SERVICES_UNET;ENABLE_CLOUD_SERVICES_BUILD;ENABLE_CLOUD_LICENSE;ENABLE_EDITOR_METRICS;ENABLE_EDITOR_METRICS_CACHING;ENABLE_NATIVE_ARRAY;INCLUDE_DYNAMIC_GI;INCLUDE_GI;PLATFORM_SUPPORTS_MONO;RENDER_SOFTWARE_CURSOR;INCLUDE_PUBNUB;ENABLE_PLAYMODE_TESTS_RUNNER;ENABLE_SCRIPTING_NEW_CSHARP_COMPILER;ENABLE_VIDEO;UNITY_STANDALONE_WIN;UNITY_STANDALONE;ENABLE_SUBSTANCE;ENABLE_RUNTIME_GI;ENABLE_MOVIES;ENABLE_NETWORK;ENABLE_CRUNCH_TEXTURE_COMPRESSION;ENABLE_UNITYWEBREQUEST;ENABLE_CLOUD_SERVICES;ENABLE_CLOUD_SERVICES_ANALYTICS;ENABLE_CLOUD_SERVICES_PURCHASING;ENABLE_CLOUD_SERVICES_CRASH_REPORTING;ENABLE_EVENT_QUEUE;ENABLE_CLUSTERINPUT;ENABLE_VR;ENABLE_WEBSOCKET_HOST;ENABLE_MONO;NET_2_0_SUBSET;ENABLE_PROFILER;DEBUG;TRACE;UNITY_ASSERTIONS;UNITY_EDITOR;UNITY_EDITOR_64;UNITY_EDITOR_WIN;ENABLE_NATIVE_ARRAY_CHECKS;UNITY_TEAM_LICENSE;ENABLE_VSTU;UNITY_PRO_LICENSE 31 | true 32 | 33 | 34 | pdbonly 35 | false 36 | Temp\UnityVS_bin\Release\ 37 | Temp\UnityVS_obj\Release\ 38 | prompt 39 | 4 40 | TRACE;UNITY_5_3_OR_NEWER;UNITY_5_4_OR_NEWER;UNITY_5_5_OR_NEWER;UNITY_5_6_OR_NEWER;UNITY_5_6_1;UNITY_5_6;UNITY_5;ENABLE_AUDIO;ENABLE_CACHING;ENABLE_CLOTH;ENABLE_DUCK_TYPING;ENABLE_GENERICS;ENABLE_PVR_GI;ENABLE_MICROPHONE;ENABLE_MULTIPLE_DISPLAYS;ENABLE_PHYSICS;ENABLE_RUNTIME_NAVMESH_BUILDING;ENABLE_SPRITERENDERER_FLIPPING;ENABLE_SPRITES;ENABLE_TERRAIN;ENABLE_RAKNET;ENABLE_UNET;ENABLE_LZMA;ENABLE_UNITYEVENTS;ENABLE_WEBCAM;ENABLE_WWW;ENABLE_CLOUD_SERVICES_COLLAB;ENABLE_CLOUD_SERVICES_ADS;ENABLE_CLOUD_HUB;ENABLE_CLOUD_PROJECT_ID;ENABLE_CLOUD_SERVICES_UNET;ENABLE_CLOUD_SERVICES_BUILD;ENABLE_CLOUD_LICENSE;ENABLE_EDITOR_METRICS;ENABLE_EDITOR_METRICS_CACHING;ENABLE_NATIVE_ARRAY;INCLUDE_DYNAMIC_GI;INCLUDE_GI;PLATFORM_SUPPORTS_MONO;RENDER_SOFTWARE_CURSOR;INCLUDE_PUBNUB;ENABLE_PLAYMODE_TESTS_RUNNER;ENABLE_SCRIPTING_NEW_CSHARP_COMPILER;ENABLE_VIDEO;UNITY_STANDALONE_WIN;UNITY_STANDALONE;ENABLE_SUBSTANCE;ENABLE_RUNTIME_GI;ENABLE_MOVIES;ENABLE_NETWORK;ENABLE_CRUNCH_TEXTURE_COMPRESSION;ENABLE_UNITYWEBREQUEST;ENABLE_CLOUD_SERVICES;ENABLE_CLOUD_SERVICES_ANALYTICS;ENABLE_CLOUD_SERVICES_PURCHASING;ENABLE_CLOUD_SERVICES_CRASH_REPORTING;ENABLE_EVENT_QUEUE;ENABLE_CLUSTERINPUT;ENABLE_VR;ENABLE_WEBSOCKET_HOST;ENABLE_MONO;NET_2_0_SUBSET;ENABLE_PROFILER;DEBUG;TRACE;UNITY_ASSERTIONS;UNITY_EDITOR;UNITY_EDITOR_64;UNITY_EDITOR_WIN;ENABLE_NATIVE_ARRAY_CHECKS;UNITY_TEAM_LICENSE;ENABLE_VSTU;UNITY_PRO_LICENSE 41 | true 42 | 43 | 44 | 45 | 46 | 47 | 48 | 49 | 50 | 51 | 52 | 53 | Library\UnityAssemblies\UnityEngine.dll 54 | 55 | 56 | Library\UnityAssemblies\UnityEditor.dll 57 | 58 | 59 | Library\UnityAssemblies\UnityEditor.Advertisements.dll 60 | 61 | 62 | Library\UnityAssemblies\UnityEngine.UI.dll 63 | 64 | 65 | Library\UnityAssemblies\UnityEditor.UI.dll 66 | 67 | 68 | Library\UnityAssemblies\UnityEngine.Networking.dll 69 | 70 | 71 | Library\UnityAssemblies\UnityEditor.Networking.dll 72 | 73 | 74 | Library\UnityAssemblies\UnityEditor.TestRunner.dll 75 | 76 | 77 | Library\UnityAssemblies\UnityEngine.TestRunner.dll 78 | 79 | 80 | Library\UnityAssemblies\nunit.framework.dll 81 | 82 | 83 | Library\UnityAssemblies\UnityEditor.TreeEditor.dll 84 | 85 | 86 | Library\UnityAssemblies\UnityEngine.Analytics.dll 87 | 88 | 89 | Library\UnityAssemblies\UnityEditor.Analytics.dll 90 | 91 | 92 | Library\UnityAssemblies\UnityEditor.HoloLens.dll 93 | 94 | 95 | Library\UnityAssemblies\UnityEngine.HoloLens.dll 96 | 97 | 98 | Library\UnityAssemblies\UnityEditor.Purchasing.dll 99 | 100 | 101 | Library\UnityAssemblies\UnityEditor.VR.dll 102 | 103 | 104 | Library\UnityAssemblies\UnityEngine.VR.dll 105 | 106 | 107 | Library\UnityAssemblies\UnityEditor.Graphs.dll 108 | 109 | 110 | Library\UnityAssemblies\UnityEditor.Android.Extensions.dll 111 | 112 | 113 | Library\UnityAssemblies\UnityEditor.WindowsStandalone.Extensions.dll 114 | 115 | 116 | Library\UnityAssemblies\SyntaxTree.VisualStudio.Unity.Bridge.dll 117 | 118 | 119 | 120 | 121 | 122 | 123 | 124 | 125 | 126 | 127 | 128 | 129 | 130 | 131 | 132 | 133 | 134 | 135 | 136 | 137 | 138 | 139 | -------------------------------------------------------------------------------- /ShaderProfile/ShaderProfile.sln: -------------------------------------------------------------------------------- 1 |  2 | Microsoft Visual Studio Solution File, Format Version 12.00 3 | # Visual Studio 2015 4 | Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ShaderProfile.Editor", "ShaderProfile.Editor.csproj", "{1CEE9BF4-A27A-EF54-BCE9-0187C17BEC6F}" 5 | EndProject 6 | Global 7 | GlobalSection(SolutionConfigurationPlatforms) = preSolution 8 | Debug|Any CPU = Debug|Any CPU 9 | Release|Any CPU = Release|Any CPU 10 | EndGlobalSection 11 | GlobalSection(ProjectConfigurationPlatforms) = postSolution 12 | {1CEE9BF4-A27A-EF54-BCE9-0187C17BEC6F}.Debug|Any CPU.ActiveCfg = Debug|Any CPU 13 | {1CEE9BF4-A27A-EF54-BCE9-0187C17BEC6F}.Debug|Any CPU.Build.0 = Debug|Any CPU 14 | {1CEE9BF4-A27A-EF54-BCE9-0187C17BEC6F}.Release|Any CPU.ActiveCfg = Release|Any CPU 15 | {1CEE9BF4-A27A-EF54-BCE9-0187C17BEC6F}.Release|Any CPU.Build.0 = Release|Any CPU 16 | EndGlobalSection 17 | GlobalSection(SolutionProperties) = preSolution 18 | HideSolutionNode = FALSE 19 | EndGlobalSection 20 | EndGlobal 21 | --------------------------------------------------------------------------------