├── .docs ├── .gitignore ├── api │ ├── .gitignore │ └── index.md ├── docfx.json ├── favicon.ico ├── guides │ ├── ControlsDevelopment │ │ ├── Code │ │ │ ├── FirstControl.cs.txt │ │ │ ├── IAdditionalLocalization.cs.txt │ │ │ ├── IControlContainerExample.cs.txt │ │ │ ├── INonAnimatablePropertyExample.cs.txt │ │ │ └── TextureControl.cs.txt │ │ ├── FirstControl.md │ │ ├── IAdditionalLocalization.md │ │ ├── IAdditionalProperties.md │ │ ├── IControlContainer.md │ │ └── INonAnimatableProperty.md │ ├── InspectorDevelopment │ │ ├── BasicControls.md │ │ ├── ChainingMethods.md │ │ ├── Code │ │ │ ├── GettingStarted.cs.txt │ │ │ ├── GettingStarted.json.txt │ │ │ ├── MaskColorizer.txt │ │ │ ├── MaskColorizerInspector.cs.txt │ │ │ └── TextureGeneratorExample.cs.txt │ │ ├── DistributingYourShader.md │ │ ├── GettingStarted.md │ │ ├── Sections.md │ │ └── TextureGenerator.md │ ├── index.md │ └── toc.yml ├── images │ └── docs │ │ ├── cdev │ │ └── FirstControl │ │ │ ├── 1-0.3.png │ │ │ └── 1.png │ │ └── idev │ │ └── GettingStarted │ │ ├── 1-0.3.png │ │ ├── 1.png │ │ ├── 2-0.3.png │ │ ├── 2.png │ │ ├── 3-0.3.png │ │ ├── 3.png │ │ ├── 4-0.3.png │ │ ├── 4.png │ │ ├── 5-0.3.png │ │ ├── 5.png │ │ ├── 6-0.3.png │ │ ├── 6.png │ │ ├── 7-0.3.png │ │ ├── 7.png │ │ ├── 8-0.3.png │ │ └── 8.png ├── index.md ├── logo.png ├── templates │ ├── darkfx │ │ ├── index.html.tmpl │ │ ├── partials │ │ │ ├── class.header.tmpl.partial │ │ │ ├── head.tmpl.partial │ │ │ └── navbar.tmpl.partial │ │ └── styles │ │ │ ├── docfx.js │ │ │ └── main.css │ └── memberpage │ │ └── content │ │ ├── ManagedReference.extension.js │ │ ├── ManagedReference.overwrite.js │ │ ├── partials │ │ ├── class.tmpl.partial │ │ ├── collection.tmpl.partial │ │ ├── customMREFContent.tmpl.partial │ │ └── item.tmpl.partial │ │ ├── plugins │ │ ├── HtmlAgilityPack.dll │ │ ├── Microsoft.DocAsCode.Build.Common.dll │ │ ├── Microsoft.DocAsCode.Build.MemberLevelManagedReference.dll │ │ ├── Microsoft.DocAsCode.Common.dll │ │ ├── Microsoft.DocAsCode.DataContracts.Common.dll │ │ ├── Microsoft.DocAsCode.DataContracts.ManagedReference.dll │ │ ├── Microsoft.DocAsCode.MarkdownLite.dll │ │ ├── Microsoft.DocAsCode.Plugins.dll │ │ ├── Microsoft.DocAsCode.YamlSerialization.dll │ │ ├── Newtonsoft.Json.dll │ │ ├── System.Buffers.dll │ │ ├── System.Collections.Immutable.dll │ │ ├── System.Composition.AttributedModel.dll │ │ ├── System.Composition.Convention.dll │ │ ├── System.Composition.Hosting.dll │ │ ├── System.Composition.Runtime.dll │ │ ├── System.Composition.TypedParts.dll │ │ ├── System.Memory.dll │ │ ├── System.Numerics.Vectors.dll │ │ ├── System.Runtime.CompilerServices.Unsafe.dll │ │ ├── YamlDotNet.dll │ │ └── docfx.plugins.config │ │ └── toc.html.js └── toc.yml ├── .github ├── local-test.sh ├── prepare-docfx-folder.js ├── release-notes-configuration.json └── workflows │ ├── build-docs.yml │ └── create-release.yml ├── .gitignore ├── Editor.meta ├── Editor ├── Autogenerated.meta ├── Autogenerated │ ├── VRLabs.SimpleShaderInspectors.Controls.Extensions.cs │ ├── VRLabs.SimpleShaderInspectors.Controls.Extensions.cs.meta │ ├── VRLabs.SimpleShaderInspectors.Controls.Sections.Extensions.cs │ ├── VRLabs.SimpleShaderInspectors.Controls.Sections.Extensions.cs.meta │ ├── VRLabs.SimpleShaderInspectors.Extensions.cs │ └── VRLabs.SimpleShaderInspectors.Extensions.cs.meta ├── Controls.meta ├── Controls │ ├── ColorControl.cs │ ├── ColorControl.cs.meta │ ├── ConditionalControlContainer.cs │ ├── ConditionalControlContainer.cs.meta │ ├── ControlContainer.cs │ ├── ControlContainer.cs.meta │ ├── DoubleSidedGIControl.cs │ ├── DoubleSidedGIControl.cs.meta │ ├── EnableInstancingControl.cs │ ├── EnableInstancingControl.cs.meta │ ├── EnumControl.cs │ ├── EnumControl.cs.meta │ ├── GradientTextureControl.cs │ ├── GradientTextureControl.cs.meta │ ├── HelpBoxControl.cs │ ├── HelpBoxControl.cs.meta │ ├── HorizontalContainer.cs │ ├── HorizontalContainer.cs.meta │ ├── KeywordToggleControl.cs │ ├── KeywordToggleControl.cs.meta │ ├── KeywordToggleListControl.cs │ ├── KeywordToggleListControl.cs.meta │ ├── LabelControl.cs │ ├── LabelControl.cs.meta │ ├── LightmapEmissionControl.cs │ ├── LightmapEmissionControl.cs.meta │ ├── RGBASelectorControl.cs │ ├── RGBASelectorControl.cs.meta │ ├── Sections.meta │ ├── Sections │ │ ├── ActivatableSection.cs │ │ ├── ActivatableSection.cs.meta │ │ ├── OrderedSection.cs │ │ ├── OrderedSection.cs.meta │ │ ├── OrderedSectionDropdown.cs │ │ ├── OrderedSectionDropdown.cs.meta │ │ ├── OrderedSectionGroup.cs │ │ ├── OrderedSectionGroup.cs.meta │ │ ├── Section.cs │ │ └── Section.cs.meta │ ├── SpaceControl.cs │ ├── SpaceControl.cs.meta │ ├── TextureControl.cs │ ├── TextureControl.cs.meta │ ├── TextureGeneratorControl.cs │ ├── TextureGeneratorControl.cs.meta │ ├── TilingAndOffsetControl.cs │ ├── TilingAndOffsetControl.cs.meta │ ├── ToggleControl.cs │ ├── ToggleControl.cs.meta │ ├── ToggleListControl.cs │ ├── ToggleListControl.cs.meta │ ├── VectorControl.cs │ ├── VectorControl.cs.meta │ ├── VertexStreamsControl.cs │ └── VertexStreamsControl.cs.meta ├── Editors.meta ├── Editors │ ├── ShaderInspectors.meta │ └── ShaderInspectors │ │ ├── DefaultGeneratorGUI.cs │ │ ├── DefaultGeneratorGUI.cs.meta │ │ ├── RGBAPackerInspector.cs │ │ ├── RGBAPackerInspector.cs.meta │ │ ├── SimpleShaderInspector.cs │ │ ├── SimpleShaderInspector.cs.meta │ │ ├── TextureGeneratorShaderInspector.cs │ │ └── TextureGeneratorShaderInspector.cs.meta ├── FluentSetAttribute.cs ├── FluentSetAttribute.cs.meta ├── Helpers.meta ├── Helpers │ ├── MaterialArrayHelper.cs │ ├── MaterialArrayHelper.cs.meta │ ├── SSIGUIHelper.cs │ ├── SSIGUIHelper.cs.meta │ ├── SSIHelper.cs │ └── SSIHelper.cs.meta ├── Interfaces.meta ├── Interfaces │ ├── IAdditionalLocalization.cs │ ├── IAdditionalLocalization.cs.meta │ ├── IAdditionalProperties.cs │ ├── IAdditionalProperties.cs.meta │ ├── IControlContainer.cs │ ├── IControlContainer.cs.meta │ ├── INonAnimatableProperty.cs │ ├── INonAnimatableProperty.cs.meta │ ├── ISimpleShaderInspector.cs │ └── ISimpleShaderInspector.cs.meta ├── Localization.cs ├── Localization.cs.meta ├── PropertyControl.cs ├── PropertyControl.cs.meta ├── Resources.meta ├── Resources │ ├── SSI.meta │ └── SSI │ │ ├── Dictionaries.meta │ │ ├── Dictionaries │ │ ├── Dictionaries.asset │ │ └── Dictionaries.asset.meta │ │ ├── Shaders.meta │ │ ├── Shaders │ │ ├── RGBAPacker.shader │ │ └── RGBAPacker.shader.meta │ │ ├── Textures.meta │ │ ├── Textures │ │ ├── BoxHeavy.png │ │ ├── BoxHeavy.png.meta │ │ ├── BoxLight.png │ │ ├── BoxLight.png.meta │ │ ├── ColorIcon.png │ │ ├── ColorIcon.png.meta │ │ ├── ColorIconBorder.png │ │ ├── ColorIconBorder.png.meta │ │ ├── ColorIconBorderSelected.png │ │ ├── ColorIconBorderSelected.png.meta │ │ ├── DeleteIcon.png │ │ ├── DeleteIcon.png.meta │ │ ├── DeleteIconHover.png │ │ ├── DeleteIconHover.png.meta │ │ ├── DeleteIconPressed.png │ │ ├── DeleteIconPressed.png.meta │ │ ├── DownIcon.png │ │ ├── DownIcon.png.meta │ │ ├── DownIconHover.png │ │ ├── DownIconHover.png.meta │ │ ├── DownIconPressed.png │ │ ├── DownIconPressed.png.meta │ │ ├── GearIcon.png │ │ ├── GearIcon.png.meta │ │ ├── GearIconHover.png │ │ ├── GearIconHover.png.meta │ │ ├── GearIconPressed.png │ │ ├── GearIconPressed.png.meta │ │ ├── Logo.meta │ │ ├── Logo │ │ │ ├── Logo.png │ │ │ ├── Logo.png.meta │ │ │ ├── LogoDark.png │ │ │ ├── LogoDark.png.meta │ │ │ ├── LogoLight.png │ │ │ └── LogoLight.png.meta │ │ ├── TextureBoxHeavy.png │ │ ├── TextureBoxHeavy.png.meta │ │ ├── TextureBoxLight.png │ │ ├── TextureBoxLight.png.meta │ │ ├── UpIcon.png │ │ ├── UpIcon.png.meta │ │ ├── UpIconHover.png │ │ ├── UpIconHover.png.meta │ │ ├── UpIconPressed.png │ │ └── UpIconPressed.png.meta │ │ ├── UIElements.meta │ │ └── UIElements │ │ ├── EmbedLibraryWindow.uxml │ │ └── EmbedLibraryWindow.uxml.meta ├── SSIConstants.cs ├── SSIConstants.cs.meta ├── SerializedDictionaries.cs ├── SerializedDictionaries.cs.meta ├── SimpleControl.cs ├── SimpleControl.cs.meta ├── SimpleShaderInspectorsDefinition.asmdef ├── SimpleShaderInspectorsDefinition.asmdef.meta ├── StaticDictionaries.cs ├── StaticDictionaries.cs.meta ├── Styles.cs ├── Styles.cs.meta ├── TimedDictionary.cs ├── TimedDictionary.cs.meta ├── Tools.meta ├── Tools │ ├── EmbedLibraryWindow.cs │ ├── EmbedLibraryWindow.cs.meta │ ├── ExtensionsGeneratorWindow.cs │ └── ExtensionsGeneratorWindow.cs.meta ├── Utility.meta └── Utility │ ├── GradientTexture.cs │ ├── GradientTexture.cs.meta │ ├── LocalizationEditorWindow.cs │ └── LocalizationEditorWindow.cs.meta ├── Examples.meta ├── Examples ├── Additive effects shader.meta ├── Additive effects shader │ ├── Editor.meta │ ├── Editor │ │ ├── SimpleSectionedShaderGUI.cs │ │ └── SimpleSectionedShaderGUI.cs.meta │ ├── Example.mat │ ├── Example.mat.meta │ ├── Localization.meta │ ├── Localization │ │ ├── Simple sectioned shader.meta │ │ └── Simple sectioned shader │ │ │ ├── English.json │ │ │ ├── English.json.meta │ │ │ ├── Settings.json │ │ │ └── Settings.json.meta │ ├── Simple sectioned shader.shader │ └── Simple sectioned shader.shader.meta ├── Simple shader example.meta ├── Simple shader example │ ├── Editor.meta │ ├── Editor │ │ ├── SimpleShaderGUI.cs │ │ └── SimpleShaderGUI.cs.meta │ ├── Example.mat │ ├── Example.mat.meta │ ├── Localization.meta │ ├── Localization │ │ ├── Simple shader.meta │ │ └── Simple shader │ │ │ ├── English.json │ │ │ ├── English.json.meta │ │ │ ├── Settings.json │ │ │ └── Settings.json.meta │ ├── Simple shader.shader │ └── Simple shader.shader.meta ├── Standard like shader.meta ├── Standard like shader │ ├── Editor.meta │ ├── Editor │ │ ├── SimpleStandardShaderGUI.cs │ │ └── SimpleStandardShaderGUI.cs.meta │ ├── Example.mat │ ├── Example.mat.meta │ ├── Localization.meta │ ├── Localization │ │ ├── Simple standard shader.meta │ │ └── Simple standard shader │ │ │ ├── English.json │ │ │ ├── English.json.meta │ │ │ ├── Settings.json │ │ │ └── Settings.json.meta │ ├── Simple standard shader.shader │ └── Simple standard shader.shader.meta ├── Toon shader example.meta └── Toon shader example │ ├── Editor.meta │ ├── Editor │ ├── SimpleToonShaderGUI.cs │ └── SimpleToonShaderGUI.cs.meta │ ├── Example.mat │ ├── Example.mat.meta │ ├── Localization.meta │ ├── Localization │ ├── Simple Toon shader.meta │ └── Simple Toon shader │ │ ├── English.json │ │ ├── English.json.meta │ │ ├── Settings.json │ │ └── Settings.json.meta │ ├── Simple Toon shader.shader │ └── Simple Toon shader.shader.meta ├── LICENSE ├── LICENSE.meta ├── README.md └── README.md.meta /.docs/.gitignore: -------------------------------------------------------------------------------- 1 | ############### 2 | # folder # 3 | ############### 4 | /**/DROP/ 5 | /**/TEMP/ 6 | /**/packages/ 7 | /**/bin/ 8 | /**/obj/ 9 | _site 10 | -------------------------------------------------------------------------------- /.docs/api/.gitignore: -------------------------------------------------------------------------------- 1 | ############### 2 | # temp file # 3 | ############### 4 | *.yml 5 | .manifest 6 | -------------------------------------------------------------------------------- /.docs/api/index.md: -------------------------------------------------------------------------------- 1 | # Welcome to the API Section 2 | 3 | Here you will find the documentation of each publicly available classes within the API. -------------------------------------------------------------------------------- /.docs/docfx.json: -------------------------------------------------------------------------------- 1 | { 2 | "metadata": [], 3 | "build": { 4 | "content": [], 5 | "resource": [ 6 | { 7 | "files": [ 8 | "images/**", 9 | "logo.png", 10 | "favicon.ico" 11 | ] 12 | } 13 | ], 14 | "overwrite": [ 15 | { 16 | "files": [ 17 | "apidoc/**.md" 18 | ], 19 | "exclude": [ 20 | "obj/**", 21 | "_site/**" 22 | ] 23 | } 24 | ], 25 | "dest": "_site", 26 | "xref": [ "https://normanderwan.github.io/UnityXrefMaps/xrefmap.yml" ], 27 | "xrefService": [ "https://xref.docs.microsoft.com/query?uid={uid}" ], 28 | "postProcessors": [ "ExtractSearchIndex" ], 29 | "globalMetadata": { 30 | "_appTitle": "Simple Shader Inspectors Documentation", 31 | "_appFooter": "Copyright © VRLabs.
Generated by DocFX
", 32 | "_disableContribution": true, 33 | "_enableSearch": "true" 34 | }, 35 | "fileMetadataFiles": [], 36 | "template": [ 37 | "default", 38 | "templates/darkfx", 39 | "templates/memberpage/content" 40 | ], 41 | "markdownEngineName": "markdig", 42 | "noLangKeyword": false, 43 | "keepFileLink": false, 44 | "cleanupCacheHistory": false, 45 | "sitemap": { 46 | "baseUrl": "https://ssi.vrlabs.dev", 47 | "priority": 0.4, 48 | "changefreq": "monthly" 49 | } 50 | } 51 | } 52 | -------------------------------------------------------------------------------- /.docs/favicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/VRLabs/Simple-Shader-Inspectors/e5fc9aadf5347946f5d452f1075e49017d9ebae9/.docs/favicon.ico -------------------------------------------------------------------------------- /.docs/guides/ControlsDevelopment/Code/FirstControl.cs.txt: -------------------------------------------------------------------------------- 1 | using UnityEditor; 2 | using UnityEngine; 3 | using VRLabs.SimpleShaderInspectors; 4 | 5 | namespace TestControlNamespace 6 | { 7 | public class MyCustomControl : PropertyControl 8 | { 9 | public string ExtraText { get; protected set; } 10 | [FluentSet] 11 | public bool IsExtraLabelVisible { get; set; } 12 | 13 | public MyCustomControl(string propertyName, string extraText) : base(propertyName) 14 | { 15 | ExtraText = extraText; 16 | IsExtraLabelVisible = true; 17 | } 18 | 19 | protected override void ControlGUI(MaterialEditor materialEditor) 20 | { 21 | EditorGUI.BeginChangeCheck(); 22 | materialEditor.TexturePropertySingleLine(Content, Property); 23 | HasPropertyUpdated = EditorGUI.EndChangeCheck(); 24 | if (IsExtraLabelVisible) 25 | { 26 | GUILayout.Label(ExtraText); 27 | } 28 | } 29 | } 30 | } 31 | public MyCustomControl(string propertyName) : base(propertyName) 32 | public MyCustomControl(string propertyName, string extraText, bool isExtraLabelVisible = true) : base(propertyName) 33 | 34 | IsExtraLabelVisible = isExtraLabelVisible; 35 | GUILayout.Label(ExtraText); -------------------------------------------------------------------------------- /.docs/guides/ControlsDevelopment/Code/IAdditionalLocalization.cs.txt: -------------------------------------------------------------------------------- 1 | using UnityEditor; 2 | using UnityEngine; 3 | using VRLabs.SimpleShaderInspectors; 4 | 5 | namespace TestControlNamespace 6 | { 7 | public class MyCustomControl : PropertyControl, IAdditionalLocalization 8 | { 9 | public AdditionalLocalization[] AdditionalContent { get; set; } 10 | public string ExtraText { get; protected set; } 11 | [FluentSet] 12 | public bool IsExtraLabelVisible { get; set; } 13 | 14 | public MyCustomControl(string propertyName, string extraText) : base(propertyName) 15 | { 16 | ExtraText = extraText; 17 | IsExtraLabelVisible = true; 18 | AdditionalContent = new AdditionalLocalization[1]; 19 | AdditionalContent[0] = new AdditionalLocalization { Name = "extraProperty" }; 20 | } 21 | 22 | protected override void ControlGUI(MaterialEditor materialEditor) 23 | { 24 | EditorGUI.BeginChangeCheck(); 25 | materialEditor.TexturePropertySingleLine(Content, Property); 26 | HasPropertyUpdated = EditorGUI.EndChangeCheck(); 27 | if (IsExtraLabelVisible) 28 | { 29 | GUILayout.Label(AdditionalContent[0].Content); 30 | } 31 | } 32 | } 33 | } 34 | -------------------------------------------------------------------------------- /.docs/guides/ControlsDevelopment/Code/IControlContainerExample.cs.txt: -------------------------------------------------------------------------------- 1 | using System.Collections.Generic; 2 | using UnityEditor; 3 | using VRLabs.SimpleShaderInspectors; 4 | 5 | namespace TestControlNamespace 6 | { 7 | public class MyCustomControl : PropertyControl, IControlContainer 8 | { 9 | public List Controls { get; set; } 10 | 11 | public MyCustomControl(string propertyName) : base(propertyName) 12 | { 13 | Controls = new List(); 14 | } 15 | 16 | protected override void ControlGUI(MaterialEditor materialEditor) 17 | { 18 | EditorGUI.BeginChangeCheck(); 19 | materialEditor.RangeProperty(Property, Content.text); 20 | HasPropertyUpdated = EditorGUI.EndChangeCheck(); 21 | if (Property.floatValue > 0.5f) 22 | { 23 | foreach (SimpleControl control in Controls) 24 | { 25 | control.DrawControl(materialEditor); 26 | } 27 | } 28 | } 29 | 30 | public void AddControl(SimpleControl control, string alias = "") => Controls.AddControl(control, alias); 31 | 32 | public IEnumerable GetControlList() => Controls; 33 | } 34 | } 35 | 36 | public void AddControl(SimpleControl control, string alias = "") 37 | { 38 | } 39 | 40 | public IEnumerable GetControlList() 41 | { 42 | } -------------------------------------------------------------------------------- /.docs/guides/ControlsDevelopment/Code/INonAnimatablePropertyExample.cs.txt: -------------------------------------------------------------------------------- 1 | using UnityEditor; 2 | using VRLabs.SimpleShaderInspectors; 3 | 4 | public class MyCustomControl : PropertyControl, INonAnimatableProperty 5 | { 6 | public bool NonAnimatablePropertyChanged { get; set; } 7 | 8 | private float _newValue; 9 | 10 | public MyCustomControl(string propertyName) : base(propertyName) 11 | { 12 | } 13 | 14 | protected override void ControlGUI(MaterialEditor materialEditor) 15 | { 16 | EditorGUI.BeginChangeCheck(); 17 | _newValue = EditorGUILayout.Slider(Content, Property.floatValue, Property.rangeLimits.x, Property.rangeLimits.y); 18 | HasPropertyUpdated = EditorGUI.EndChangeCheck(); 19 | NonAnimatablePropertyChanged = HasPropertyUpdated; 20 | } 21 | 22 | public void UpdateNonAnimatableProperty(MaterialEditor materialEditor) 23 | { 24 | Property.floatValue = _newValue; 25 | } 26 | } 27 | 28 | materialEditor.RangeProperty(Property, Content.text); -------------------------------------------------------------------------------- /.docs/guides/ControlsDevelopment/Code/TextureControl.cs.txt: -------------------------------------------------------------------------------- 1 | using UnityEditor; 2 | using UnityEngine; 3 | 4 | namespace VRLabs.SimpleShaderInspectors.Controls 5 | { 6 | public class TextureControl : PropertyControl, IAdditionalProperties, IControlContainer 7 | { 8 | //.. 9 | public AdditionalProperty[] AdditionalProperties { get; set; } 10 | //.. 11 | 12 | public TextureControl(string propertyName, string extraPropertyName1 = null, string extraPropertyName2 = null) : base(propertyName) 13 | { 14 | AdditionalProperties = new AdditionalProperty[2]; 15 | AdditionalProperties[0] = new AdditionalProperty(extraPropertyName1); 16 | if (!string.IsNullOrWhiteSpace(extraPropertyName1)) 17 | HasExtra1 = true; 18 | 19 | AdditionalProperties[1] = new AdditionalProperty(extraPropertyName2); 20 | if (!string.IsNullOrWhiteSpace(extraPropertyName2)) 21 | HasExtra2 = true; 22 | //.. 23 | } 24 | 25 | protected void DrawTextureSingleLine(MaterialEditor materialEditor) 26 | { 27 | //.. 28 | if (HasExtra2) 29 | { 30 | materialEditor.TexturePropertySingleLine(Content, Property, AdditionalProperties[0].Property, AdditionalProperties[1].Property); 31 | } 32 | else if (HasExtra1) 33 | { 34 | if (AdditionalProperties[0].Property.type == MaterialProperty.PropType.Color && HasHDRColor) 35 | materialEditor.TexturePropertyWithHDRColorFixed(Content, Property, AdditionalProperties[0].Property, true); 36 | else 37 | materialEditor.TexturePropertySingleLine(Content, Property, AdditionalProperties[0].Property); 38 | } 39 | else 40 | { 41 | materialEditor.TexturePropertySingleLine(Content, Property); 42 | } 43 | //.. 44 | } 45 | } 46 | } -------------------------------------------------------------------------------- /.docs/guides/ControlsDevelopment/IAdditionalLocalization.md: -------------------------------------------------------------------------------- 1 | --- 2 | uid: cdev-IAdditionalLocalization 3 | title: Using IAdditionalLocalization 4 | --- 5 | 6 | # Using IAdditionalLocalization 7 | 8 | In the last example we could not have localized content for the extra label cause by default each control only has a single `Content` property. 9 | 10 | This is quite limiting in case you want to make a control that handles multiple material properties at once (in this case you will need another interface as well), or that needs some extra text for various reasons. 11 | 12 | And is here that the `IAdditionalLocalization` comes into play. 13 | 14 | This interface is used to let the localization system know that the control that implements it needs more than one localization string. 15 | 16 | [!code-csharp[Main](Code/IAdditionalLocalization.cs.txt?range=7-9&highlight=1,3)] 17 | 18 | Implementing the interface will add the `AdditionalContent` array of type `AdditionalLocalization`. This type only contains the `Name` string which contains the name of the additional content, and the `GUIContent` we want to retrieve. 19 | 20 | To use it, we just need to initialize the array with the number of additional strings we want, and assign the names: 21 | 22 | [!code-csharp[Main](Code/IAdditionalLocalization.cs.txt?range=14-20&highlight=5-6)] 23 | 24 | >[!TIP] 25 | >If you have questions about the way the AdditionalLocalization object has been initialized here, check [this page](https://docs.microsoft.com/en-us/dotnet/csharp/programming-guide/classes-and-structs/object-and-collection-initializers#object-initializers). 26 | 27 | >[!NOTE] 28 | >The localization system when searching for strings of the extra localization will combine the control alias and the extra localization name in this way: `Alias_AdditionalContentName`. 29 | >This is ensure that each control instance has a unique full name if they have different aliases. 30 | 31 | >[!CAUTION] 32 | >If you have more than 1 or 2 additional content to fetch, manually instancing each element may become annoying and bloat your constructor a bit too much. in this case you can have a static array of strings with all your names in the order you want to access them, and in the constructor use [`InizializeLocalizationWithNames`](xref:VRLabs.SimpleShaderInspectors.AdditionalContentExtensions.InitializeLocalizationWithNames(VRLabs.SimpleShaderInspectors.IAdditionalLocalization,System.String[])) 33 | 34 | then we just need to use the `Content` inside the `AdditionalContent` array we created where we need it, in our case inside the `Label` call: 35 | 36 | [!code-csharp[Main](Code/IAdditionalLocalization.cs.txt?range=27-30&highlight=3)] 37 | 38 | Now the label field will also have its own localized content. 39 | 40 | >[!NOTE] 41 | >With this change `ExtraText` becomes useless, so you can safely remove any reference of it on constructors/methods 42 | 43 | With this system you can add as much text as you want in your own controls with full support for localization, and is fairly easy to just plug it in and have it working. 44 | -------------------------------------------------------------------------------- /.docs/guides/InspectorDevelopment/BasicControls.md: -------------------------------------------------------------------------------- 1 | --- 2 | uid: idev-BasicControls 3 | title: Basic controls 4 | --- 5 | 6 | # Basic Controls 7 | 8 | On Simple Shader Inspectors you show fields using different types of controls based on what you need to display. Need to show a texture? use `TextureControl`, want a color instead? use `ColorControl` and so on. 9 | 10 | If you check the API you will see that you have a fair amount of options regarding controls to use, included some really specific (but powerful) ones, but here we summarize some of the most basics ones that you will probably end up using a lot. 11 | 12 | ## PropertyControl 13 | 14 | ```csharp 15 | AddPropertyControl(propertyName); 16 | ``` 17 | 18 | This is the definition of basic, will just display the material property like the inspector would do automatically (it uses `MaterialEditor.ShaderProperty`). 19 | It can come really useful when a property doesn't need anything fancy to display and is already nicely done automatically, for example a range property. 20 | This is also the base control that all controls that use material properties inherit from. 21 | It also has an optional settings area that contains tiling and offset settings and can contain other controls as well. 22 | 23 | ## TextureControl 24 | 25 | ```csharp 26 | AddTextureControl(texturePropertyName, extraPropertyName1, extraPropertyName2); 27 | ``` 28 | 29 | `TextureControl`, as the name says, is used to display textures. Internally uses `materialEditor.TexturePropertySingleLine` to display its properties, and like the latter can take up to 2 extra properties to show in the same line as the texture. 30 | 31 | >[!TIP] 32 | >Despite having up to 3 properties, you still only have access to the usual `HasPropertyUpdated` bool to check if any of the 3 properties changed. 33 | 34 | ## ColorControl 35 | 36 | ```csharp 37 | AddColorControl(string colorPropertyName); 38 | ``` 39 | 40 | While you can show color properties just fine with a `PropertyControl` you end up having the color box taking up the entirety of the row, and that doesn't match with the color box that is being shown with a `TextureControl`. So this control fixes that. It can also take an additional boolean value to indicate if the color box (and color picker) needs to handle the alpha channel (by default it's set to `true`). 41 | 42 | ## LabelControl 43 | 44 | ```csharp 45 | AddLabelControl(string alias); 46 | ``` 47 | 48 | It's one of those controls that does not use any property and instead requires you to insert an `Alias` to get its own localization. 49 | 50 | In this case it draws a simple label with nothing more going on. 51 | -------------------------------------------------------------------------------- /.docs/guides/InspectorDevelopment/Code/GettingStarted.cs.txt: -------------------------------------------------------------------------------- 1 | using UnityEditor; 2 | using VRLabs.SimpleShaderInspectors; 3 | using VRLabs.SimpleShaderInspectors.Controls; 4 | 5 | public class TestShaderInspector : SimpleShaderInspector 6 | { 7 | private PropertyControl _floatControl; 8 | private LabelControl _labelControl; 9 | 10 | protected override void Start() 11 | { 12 | _floatControl = this.AddPropertyControl("_FloatProperty").WithAlias("MyFloatProperty"); 13 | _labelControl = this.AddLabelControl("MyLabel"); 14 | } 15 | 16 | protected override void StartChecks(MaterialEditor materialEditor) 17 | { 18 | _labelControl.SetEnabled(_floatControl.Property.floatValue > 1); 19 | } 20 | 21 | protected override void CheckChanges(MaterialEditor materialEditor) 22 | { 23 | if (_floatControl.HasPropertyUpdated) 24 | { 25 | _labelControl.SetEnabled(_floatControl.Property.floatValue > 1); 26 | } 27 | } 28 | } 29 | 30 | this.AddPropertyControl("_FloatProperty"); 31 | this.AddPropertyControl("_FloatProperty").WithAlias("MyFloatProperty"); -------------------------------------------------------------------------------- /.docs/guides/InspectorDevelopment/Code/GettingStarted.json.txt: -------------------------------------------------------------------------------- 1 | { 2 | "Properties": [ 3 | { 4 | "Name": "MyFloatProperty", 5 | "DisplayName": "MyFloatProperty", 6 | "Tooltip": "" 7 | }, 8 | { 9 | "Name": "_FloatProperty", 10 | "DisplayName": "_FloatProperty", 11 | "Tooltip": "" 12 | } 13 | ] 14 | } 15 | 16 | { 17 | "Properties": [ 18 | { 19 | "Name": "MyFloatProperty", 20 | "DisplayName": "Awesome float property", 21 | "Tooltip": "Nice tooltip!" 22 | } 23 | ] 24 | } 25 | 26 | { 27 | "Properties": [ 28 | { 29 | "Name": "MyFloatProperty", 30 | "DisplayName": "Aledoye flget prodfrghy", 31 | "Tooltip": "I can't write!" 32 | } 33 | ] 34 | } 35 | 36 | { 37 | "Properties": [ 38 | { 39 | "Name": "MyLabel", 40 | "DisplayName": "Awesome label!", 41 | "Tooltip": "Nice tooltip!" 42 | }, 43 | { 44 | "Name": "MyFloatProperty", 45 | "DisplayName": "Awesome float property", 46 | "Tooltip": "Nice tooltip!" 47 | } 48 | ] 49 | } -------------------------------------------------------------------------------- /.docs/guides/InspectorDevelopment/Code/MaskColorizer.txt: -------------------------------------------------------------------------------- 1 | Shader "Hidden/VRLabs/GeneratorShaders/MaskColorizer" 2 | { 3 | Properties 4 | { 5 | _MainTex ("Mask", 2D) = "white" {} 6 | 7 | _BaseColor("Base Color", Color) = (1, 1, 1, 1) 8 | _RedColor("Red Channel Color", Color) = (1, 1, 1, 1) 9 | _GreenColor("Green Channel Color", Color) = (1, 1, 1, 1) 10 | _BlueColor("Blue Channel Color", Color) = (1, 1, 1, 1) 11 | _AlphaColor("Alpha Channel Color", Color) = (1, 1, 1, 1) 12 | } 13 | SubShader 14 | { 15 | Lighting Off 16 | Blend One Zero 17 | 18 | Pass 19 | { 20 | CGPROGRAM 21 | 22 | #include "UnityCustomRenderTexture.cginc" 23 | #pragma vertex CustomRenderTextureVertexShader 24 | #pragma fragment frag 25 | #pragma target 3.0 26 | 27 | UNITY_DECLARE_TEX2D(_MainTex); 28 | float4 _MainTex_ST; 29 | 30 | float4 _BaseColor, _RedColor, _GreenColor, _BlueColor, _AlphaColor; 31 | 32 | fixed4 frag (v2f_customrendertexture i) : SV_Target 33 | { 34 | float4 mask = UNITY_SAMPLE_TEX2D(_MainTex, i.localTexcoord.xy); 35 | float4 rgba = _BaseColor; 36 | rgba = lerp(rgba, _RedColor, mask.r); 37 | rgba = lerp(rgba, _GreenColor, mask.g); 38 | rgba = lerp(rgba, _BlueColor, mask.b); 39 | rgba = lerp(rgba, _AlphaColor, mask.a); 40 | 41 | return rgba; 42 | } 43 | ENDCG 44 | } 45 | } 46 | CustomEditor "VRLabs.Examples.MaskColorizerInspector" 47 | 48 | 49 | return float4(0,0,0,0); -------------------------------------------------------------------------------- /.docs/guides/InspectorDevelopment/Code/MaskColorizerInspector.cs.txt: -------------------------------------------------------------------------------- 1 | using VRLabs.SimpleShaderInspectors; 2 | using VRLabs.SimpleShaderInspectors.Controls; 3 | 4 | namespace VRLabs.Examples 5 | { 6 | public class MaskColorizerInspector : TextureGeneratorShaderInspector 7 | { 8 | protected override void Start() 9 | { 10 | this.AddTextureControl("_MainTex").WithAlias("Colorizer_Mask"); 11 | this.AddSpaceControl(10); 12 | 13 | this.AddColorControl("_BaseColor").WithAlias("Colorizer_BaseColor"); 14 | this.AddColorControl("_RedColor").WithAlias("Colorizer_RedColor"); 15 | this.AddColorControl("_GreenColor").WithAlias("Colorizer_GreenColor"); 16 | this.AddColorControl("_BlueColor").WithAlias("Colorizer_BlueColor"); 17 | this.AddColorControl("_AlphaColor").WithAlias("Colorizer_AlphaColor"); 18 | } 19 | } 20 | } -------------------------------------------------------------------------------- /.docs/guides/InspectorDevelopment/Code/TextureGeneratorExample.cs.txt: -------------------------------------------------------------------------------- 1 | // inside the inspector 2 | Shader shader = Resources.Load("Shader/maskColorizer"); 3 | this.AddTextureGeneratorControl(shader, "_TextureProperty"); -------------------------------------------------------------------------------- /.docs/guides/index.md: -------------------------------------------------------------------------------- 1 | # Welcome to the General Guides Section 2 | 3 | Here you will find general guides on how to use Simple Shader Inspectors. 4 | 5 | If you're a first time user you may want how to [get started here](xref:idev-GettingStarted) -------------------------------------------------------------------------------- /.docs/guides/toc.yml: -------------------------------------------------------------------------------- 1 | - name: Inspector development guide 2 | items: 3 | - name: Getting Started 4 | href: InspectorDevelopment/GettingStarted.md 5 | - name: Basic Controls 6 | href: InspectorDevelopment/BasicControls.md 7 | - name: Chaining Methods 8 | href: InspectorDevelopment/ChainingMethods.md 9 | - name: Sections 10 | href: InspectorDevelopment/Sections.md 11 | - name: Customizing the Texture Generator 12 | href: InspectorDevelopment/TextureGenerator.md 13 | - name: Distributing Your Shader 14 | href: InspectorDevelopment/DistributingYourShader.md 15 | 16 | - name: Controls development guide 17 | items: 18 | - name: First Control 19 | href: ControlsDevelopment/FirstControl.md 20 | - name: Using IAdditionalLocalization 21 | href: ControlsDevelopment/IAdditionalLocalization.md 22 | - name: Using IAdditionalProperties 23 | href: ControlsDevelopment/IAdditionalProperties.md 24 | - name: Using IControlContainer 25 | href: ControlsDevelopment/IControlContainer.md 26 | - name: Using INonAnimatableProperty 27 | href: ControlsDevelopment/INonAnimatableProperty.md -------------------------------------------------------------------------------- /.docs/images/docs/cdev/FirstControl/1-0.3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/VRLabs/Simple-Shader-Inspectors/e5fc9aadf5347946f5d452f1075e49017d9ebae9/.docs/images/docs/cdev/FirstControl/1-0.3.png -------------------------------------------------------------------------------- /.docs/images/docs/cdev/FirstControl/1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/VRLabs/Simple-Shader-Inspectors/e5fc9aadf5347946f5d452f1075e49017d9ebae9/.docs/images/docs/cdev/FirstControl/1.png -------------------------------------------------------------------------------- /.docs/images/docs/idev/GettingStarted/1-0.3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/VRLabs/Simple-Shader-Inspectors/e5fc9aadf5347946f5d452f1075e49017d9ebae9/.docs/images/docs/idev/GettingStarted/1-0.3.png -------------------------------------------------------------------------------- /.docs/images/docs/idev/GettingStarted/1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/VRLabs/Simple-Shader-Inspectors/e5fc9aadf5347946f5d452f1075e49017d9ebae9/.docs/images/docs/idev/GettingStarted/1.png -------------------------------------------------------------------------------- /.docs/images/docs/idev/GettingStarted/2-0.3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/VRLabs/Simple-Shader-Inspectors/e5fc9aadf5347946f5d452f1075e49017d9ebae9/.docs/images/docs/idev/GettingStarted/2-0.3.png -------------------------------------------------------------------------------- /.docs/images/docs/idev/GettingStarted/2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/VRLabs/Simple-Shader-Inspectors/e5fc9aadf5347946f5d452f1075e49017d9ebae9/.docs/images/docs/idev/GettingStarted/2.png -------------------------------------------------------------------------------- /.docs/images/docs/idev/GettingStarted/3-0.3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/VRLabs/Simple-Shader-Inspectors/e5fc9aadf5347946f5d452f1075e49017d9ebae9/.docs/images/docs/idev/GettingStarted/3-0.3.png -------------------------------------------------------------------------------- /.docs/images/docs/idev/GettingStarted/3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/VRLabs/Simple-Shader-Inspectors/e5fc9aadf5347946f5d452f1075e49017d9ebae9/.docs/images/docs/idev/GettingStarted/3.png -------------------------------------------------------------------------------- /.docs/images/docs/idev/GettingStarted/4-0.3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/VRLabs/Simple-Shader-Inspectors/e5fc9aadf5347946f5d452f1075e49017d9ebae9/.docs/images/docs/idev/GettingStarted/4-0.3.png -------------------------------------------------------------------------------- /.docs/images/docs/idev/GettingStarted/4.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/VRLabs/Simple-Shader-Inspectors/e5fc9aadf5347946f5d452f1075e49017d9ebae9/.docs/images/docs/idev/GettingStarted/4.png -------------------------------------------------------------------------------- /.docs/images/docs/idev/GettingStarted/5-0.3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/VRLabs/Simple-Shader-Inspectors/e5fc9aadf5347946f5d452f1075e49017d9ebae9/.docs/images/docs/idev/GettingStarted/5-0.3.png -------------------------------------------------------------------------------- /.docs/images/docs/idev/GettingStarted/5.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/VRLabs/Simple-Shader-Inspectors/e5fc9aadf5347946f5d452f1075e49017d9ebae9/.docs/images/docs/idev/GettingStarted/5.png -------------------------------------------------------------------------------- /.docs/images/docs/idev/GettingStarted/6-0.3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/VRLabs/Simple-Shader-Inspectors/e5fc9aadf5347946f5d452f1075e49017d9ebae9/.docs/images/docs/idev/GettingStarted/6-0.3.png -------------------------------------------------------------------------------- /.docs/images/docs/idev/GettingStarted/6.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/VRLabs/Simple-Shader-Inspectors/e5fc9aadf5347946f5d452f1075e49017d9ebae9/.docs/images/docs/idev/GettingStarted/6.png -------------------------------------------------------------------------------- /.docs/images/docs/idev/GettingStarted/7-0.3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/VRLabs/Simple-Shader-Inspectors/e5fc9aadf5347946f5d452f1075e49017d9ebae9/.docs/images/docs/idev/GettingStarted/7-0.3.png -------------------------------------------------------------------------------- /.docs/images/docs/idev/GettingStarted/7.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/VRLabs/Simple-Shader-Inspectors/e5fc9aadf5347946f5d452f1075e49017d9ebae9/.docs/images/docs/idev/GettingStarted/7.png -------------------------------------------------------------------------------- /.docs/images/docs/idev/GettingStarted/8-0.3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/VRLabs/Simple-Shader-Inspectors/e5fc9aadf5347946f5d452f1075e49017d9ebae9/.docs/images/docs/idev/GettingStarted/8-0.3.png -------------------------------------------------------------------------------- /.docs/images/docs/idev/GettingStarted/8.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/VRLabs/Simple-Shader-Inspectors/e5fc9aadf5347946f5d452f1075e49017d9ebae9/.docs/images/docs/idev/GettingStarted/8.png -------------------------------------------------------------------------------- /.docs/index.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: SSI - Simple Shader Inspectors 3 | documentType: index 4 | --- 5 | 6 | 55 | 56 | 57 |
58 |
59 |
60 | Simple Shader Inspectors 61 |
62 |
63 |
64 | View on Github 65 |
66 |
67 | Unity Editor library with the objective to make medium to complex shader inspectors easier to create and manage. 68 |
69 |
70 | Get Started 71 | Download 72 |
73 |
74 |
75 | 76 | -------------------------------------------------------------------------------- /.docs/logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/VRLabs/Simple-Shader-Inspectors/e5fc9aadf5347946f5d452f1075e49017d9ebae9/.docs/logo.png -------------------------------------------------------------------------------- /.docs/templates/darkfx/index.html.tmpl: -------------------------------------------------------------------------------- 1 | 2 | {{!Copyright (c) Microsoft. All rights reserved. Licensed under the MIT license. See LICENSE file in the project root for full license information.}} 3 | {{!include(/^styles/.*/)}} 4 | {{!include(/^fonts/.*/)}} 5 | {{!include(favicon.ico)}} 6 | {{!include(logo.png)}} 7 | 8 | 9 | 10 | {{>partials/head}} 11 | 12 |
13 |
14 | {{>partials/navbar}} 15 |
16 | {{{conceptual}}} 17 |
18 | {{>partials/scripts}} 19 | 20 | -------------------------------------------------------------------------------- /.docs/templates/darkfx/partials/class.header.tmpl.partial: -------------------------------------------------------------------------------- 1 |

{{>partials/title}}

2 |
{{{summary}}}
3 |
{{{conceptual}}}
4 | 5 | {{#inClass}} 6 |
7 |
{{__global.inheritance}}
8 | {{#inheritance}} 9 |
{{{specName.0.value}}}
10 | {{/inheritance}} 11 |
{{name.0.value}}
12 | {{#derivedClasses}} 13 |
{{{specName.0.value}}}
14 | {{/derivedClasses}} 15 |
16 | {{/inClass}} 17 | {{#implements.0}} 18 |
19 |
{{__global.implements}}
20 | {{/implements.0}} 21 | {{#implements}} 22 |
{{{specName.0.value}}}
23 | {{/implements}} 24 | {{#implements.0}} 25 |
26 | {{/implements.0}} 27 | 28 |
{{__global.namespace}}: {{{namespace.specName.0.value}}}
29 | 30 |
{{__global.syntax}}
31 |
32 |
{{syntax.content.0.value}}
33 |
34 | 35 | {{#syntax.parameters.0}} 36 |
{{__global.parameters}}
37 | 38 | {{/syntax.parameters.0}} 39 | {{#syntax.parameters}} 40 | 41 | 46 | 47 | {{/syntax.parameters}} 48 | {{#syntax.parameters.0}} 49 |
42 | {{{type.specName.0.value}}} 43 | {{{id}}} 44 |

{{{description}}}

45 |
50 | {{/syntax.parameters.0}} 51 | 52 | {{#syntax.return}} 53 |
{{__global.returns}}
54 | 55 | 56 | 60 | 61 |
57 | {{{type.specName.0.value}}} 58 |

{{{description}}}

59 |
62 | {{/syntax.return}} 63 | 64 | {{#syntax.typeParameters.0}} 65 |
{{__global.typeParameters}}
66 | 67 | {{/syntax.typeParameters.0}} 68 | {{#syntax.typeParameters}} 69 | 70 | 74 | 75 | {{/syntax.typeParameters}} 76 | {{#syntax.typeParameters.0}} 77 |
71 | {{{id}}} 72 |

{{{description}}}

73 |
78 | {{/syntax.typeParameters.0}} 79 | 80 | {{#remarks}} 81 |
{{__global.remarks}}
82 |
{{{remarks}}}
83 | {{/remarks}} 84 | 85 | {{#example.0}} 86 |
{{__global.examples}}
87 | {{/example.0}} 88 | {{#example}} 89 | {{{.}}} 90 | {{/example}} -------------------------------------------------------------------------------- /.docs/templates/darkfx/partials/head.tmpl.partial: -------------------------------------------------------------------------------- 1 | {{!Copyright (c) Oscar Vasquez. All rights reserved. Licensed under the MIT license. See LICENSE file in the project root for full license information.}} 2 | 3 | 4 | 5 | 6 | {{#title}}{{title}}{{/title}}{{^title}}{{>partials/title}}{{/title}} {{#_appTitle}}| {{_appTitle}} {{/_appTitle}} 7 | 8 | 9 | 10 | {{#_description}}{{/_description}} 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | {{#_noindex}}{{/_noindex}} 19 | {{#_enableSearch}}{{/_enableSearch}} 20 | {{#_enableNewTab}}{{/_enableNewTab}} 21 | -------------------------------------------------------------------------------- /.docs/templates/darkfx/partials/navbar.tmpl.partial: -------------------------------------------------------------------------------- 1 | {{!Copyright (c) Microsoft. All rights reserved. Licensed under the MIT license. See LICENSE file in the project root for full license information.}} 2 | 3 | -------------------------------------------------------------------------------- /.docs/templates/memberpage/content/ManagedReference.extension.js: -------------------------------------------------------------------------------- 1 | // Copyright (c) Microsoft. All rights reserved. Licensed under the MIT license. See LICENSE file in the project root for full license information. 2 | var common = require('./ManagedReference.common.js'); 3 | 4 | exports.postTransform = function (model) { 5 | var type = model.type.toLowerCase(); 6 | var category = common.getCategory(type); 7 | if (category == 'class') { 8 | var typePropertyName = common.getTypePropertyName(type); 9 | if (typePropertyName) { 10 | model[typePropertyName] = true; 11 | } 12 | if (model.children && model.children.length > 0) { 13 | model.isCollection = true; 14 | common.groupChildren(model, 'class'); 15 | } else { 16 | model.isItem = true; 17 | } 18 | } 19 | return model; 20 | } -------------------------------------------------------------------------------- /.docs/templates/memberpage/content/ManagedReference.overwrite.js: -------------------------------------------------------------------------------- 1 | // Copyright (c) Microsoft. All rights reserved. Licensed under the MIT license. See LICENSE file in the project root for full license information. 2 | var common = require('./ManagedReference.common.js'); 3 | 4 | exports.getOptions = function (model) { 5 | var ignoreChildrenBookmarks = model._splitReference && model.type && common.getCategory(model.type) === 'ns'; 6 | 7 | return { 8 | "bookmarks": common.getBookmarks(model, ignoreChildrenBookmarks) 9 | }; 10 | } -------------------------------------------------------------------------------- /.docs/templates/memberpage/content/partials/class.tmpl.partial: -------------------------------------------------------------------------------- 1 | {{!Copyright (c) Microsoft. All rights reserved. Licensed under the MIT license. See LICENSE file in the project root for full license information.}} 2 | 3 | {{>partials/class.header}} 4 | {{#children}} 5 | {{#overload}} 6 | 7 | {{/overload}} 8 |

{{>partials/classSubtitle}}

9 | {{#children.0}} 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | {{/children.0}} 19 | {{#children}} 20 | 21 | 24 | 25 | 26 | {{/children}} 27 | {{#children.0}} 28 | 29 |
{{__global.name}}{{__global.description}}
22 | 23 | {{{summary}}}
30 | {{/children.0}} 31 | {{/children}} 32 | {{#extensionMethods.0}} 33 |

{{__global.extensionMethods}}

34 | {{/extensionMethods.0}} 35 | {{#extensionMethods}} 36 |
37 | {{#definition}} 38 | 39 | {{/definition}} 40 | {{^definition}} 41 | 42 | {{/definition}} 43 |
44 | {{/extensionMethods}} 45 | {{#seealso.0}} 46 |

{{__global.seealso}}

47 |
48 | {{/seealso.0}} 49 | {{#seealso}} 50 | {{#isCref}} 51 |
{{{type.specName.0.value}}}
52 | {{/isCref}} 53 | {{^isCref}} 54 |
{{{url}}}
55 | {{/isCref}} 56 | {{/seealso}} 57 | {{#seealso.0}} 58 |
59 | {{/seealso.0}} 60 | -------------------------------------------------------------------------------- /.docs/templates/memberpage/content/partials/customMREFContent.tmpl.partial: -------------------------------------------------------------------------------- 1 | {{!Copyright (c) Microsoft. All rights reserved. Licensed under the MIT license. See LICENSE file in the project root for full license information.}} 2 | {{#isCollection}} 3 | {{>partials/collection}} 4 | {{/isCollection}} 5 | {{#isItem}} 6 | {{>partials/item}} 7 | {{/isItem}} 8 | -------------------------------------------------------------------------------- /.docs/templates/memberpage/content/partials/item.tmpl.partial: -------------------------------------------------------------------------------- 1 | {{!Copyright (c) Microsoft. All rights reserved. Licensed under the MIT license. See LICENSE file in the project root for full license information.}} 2 | 3 | {{>partials/class.header}} -------------------------------------------------------------------------------- /.docs/templates/memberpage/content/plugins/HtmlAgilityPack.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/VRLabs/Simple-Shader-Inspectors/e5fc9aadf5347946f5d452f1075e49017d9ebae9/.docs/templates/memberpage/content/plugins/HtmlAgilityPack.dll -------------------------------------------------------------------------------- /.docs/templates/memberpage/content/plugins/Microsoft.DocAsCode.Build.Common.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/VRLabs/Simple-Shader-Inspectors/e5fc9aadf5347946f5d452f1075e49017d9ebae9/.docs/templates/memberpage/content/plugins/Microsoft.DocAsCode.Build.Common.dll -------------------------------------------------------------------------------- /.docs/templates/memberpage/content/plugins/Microsoft.DocAsCode.Build.MemberLevelManagedReference.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/VRLabs/Simple-Shader-Inspectors/e5fc9aadf5347946f5d452f1075e49017d9ebae9/.docs/templates/memberpage/content/plugins/Microsoft.DocAsCode.Build.MemberLevelManagedReference.dll -------------------------------------------------------------------------------- /.docs/templates/memberpage/content/plugins/Microsoft.DocAsCode.Common.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/VRLabs/Simple-Shader-Inspectors/e5fc9aadf5347946f5d452f1075e49017d9ebae9/.docs/templates/memberpage/content/plugins/Microsoft.DocAsCode.Common.dll -------------------------------------------------------------------------------- /.docs/templates/memberpage/content/plugins/Microsoft.DocAsCode.DataContracts.Common.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/VRLabs/Simple-Shader-Inspectors/e5fc9aadf5347946f5d452f1075e49017d9ebae9/.docs/templates/memberpage/content/plugins/Microsoft.DocAsCode.DataContracts.Common.dll -------------------------------------------------------------------------------- /.docs/templates/memberpage/content/plugins/Microsoft.DocAsCode.DataContracts.ManagedReference.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/VRLabs/Simple-Shader-Inspectors/e5fc9aadf5347946f5d452f1075e49017d9ebae9/.docs/templates/memberpage/content/plugins/Microsoft.DocAsCode.DataContracts.ManagedReference.dll -------------------------------------------------------------------------------- /.docs/templates/memberpage/content/plugins/Microsoft.DocAsCode.MarkdownLite.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/VRLabs/Simple-Shader-Inspectors/e5fc9aadf5347946f5d452f1075e49017d9ebae9/.docs/templates/memberpage/content/plugins/Microsoft.DocAsCode.MarkdownLite.dll -------------------------------------------------------------------------------- /.docs/templates/memberpage/content/plugins/Microsoft.DocAsCode.Plugins.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/VRLabs/Simple-Shader-Inspectors/e5fc9aadf5347946f5d452f1075e49017d9ebae9/.docs/templates/memberpage/content/plugins/Microsoft.DocAsCode.Plugins.dll -------------------------------------------------------------------------------- /.docs/templates/memberpage/content/plugins/Microsoft.DocAsCode.YamlSerialization.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/VRLabs/Simple-Shader-Inspectors/e5fc9aadf5347946f5d452f1075e49017d9ebae9/.docs/templates/memberpage/content/plugins/Microsoft.DocAsCode.YamlSerialization.dll -------------------------------------------------------------------------------- /.docs/templates/memberpage/content/plugins/Newtonsoft.Json.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/VRLabs/Simple-Shader-Inspectors/e5fc9aadf5347946f5d452f1075e49017d9ebae9/.docs/templates/memberpage/content/plugins/Newtonsoft.Json.dll -------------------------------------------------------------------------------- /.docs/templates/memberpage/content/plugins/System.Buffers.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/VRLabs/Simple-Shader-Inspectors/e5fc9aadf5347946f5d452f1075e49017d9ebae9/.docs/templates/memberpage/content/plugins/System.Buffers.dll -------------------------------------------------------------------------------- /.docs/templates/memberpage/content/plugins/System.Collections.Immutable.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/VRLabs/Simple-Shader-Inspectors/e5fc9aadf5347946f5d452f1075e49017d9ebae9/.docs/templates/memberpage/content/plugins/System.Collections.Immutable.dll -------------------------------------------------------------------------------- /.docs/templates/memberpage/content/plugins/System.Composition.AttributedModel.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/VRLabs/Simple-Shader-Inspectors/e5fc9aadf5347946f5d452f1075e49017d9ebae9/.docs/templates/memberpage/content/plugins/System.Composition.AttributedModel.dll -------------------------------------------------------------------------------- /.docs/templates/memberpage/content/plugins/System.Composition.Convention.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/VRLabs/Simple-Shader-Inspectors/e5fc9aadf5347946f5d452f1075e49017d9ebae9/.docs/templates/memberpage/content/plugins/System.Composition.Convention.dll -------------------------------------------------------------------------------- /.docs/templates/memberpage/content/plugins/System.Composition.Hosting.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/VRLabs/Simple-Shader-Inspectors/e5fc9aadf5347946f5d452f1075e49017d9ebae9/.docs/templates/memberpage/content/plugins/System.Composition.Hosting.dll -------------------------------------------------------------------------------- /.docs/templates/memberpage/content/plugins/System.Composition.Runtime.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/VRLabs/Simple-Shader-Inspectors/e5fc9aadf5347946f5d452f1075e49017d9ebae9/.docs/templates/memberpage/content/plugins/System.Composition.Runtime.dll -------------------------------------------------------------------------------- /.docs/templates/memberpage/content/plugins/System.Composition.TypedParts.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/VRLabs/Simple-Shader-Inspectors/e5fc9aadf5347946f5d452f1075e49017d9ebae9/.docs/templates/memberpage/content/plugins/System.Composition.TypedParts.dll -------------------------------------------------------------------------------- /.docs/templates/memberpage/content/plugins/System.Memory.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/VRLabs/Simple-Shader-Inspectors/e5fc9aadf5347946f5d452f1075e49017d9ebae9/.docs/templates/memberpage/content/plugins/System.Memory.dll -------------------------------------------------------------------------------- /.docs/templates/memberpage/content/plugins/System.Numerics.Vectors.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/VRLabs/Simple-Shader-Inspectors/e5fc9aadf5347946f5d452f1075e49017d9ebae9/.docs/templates/memberpage/content/plugins/System.Numerics.Vectors.dll -------------------------------------------------------------------------------- /.docs/templates/memberpage/content/plugins/System.Runtime.CompilerServices.Unsafe.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/VRLabs/Simple-Shader-Inspectors/e5fc9aadf5347946f5d452f1075e49017d9ebae9/.docs/templates/memberpage/content/plugins/System.Runtime.CompilerServices.Unsafe.dll -------------------------------------------------------------------------------- /.docs/templates/memberpage/content/plugins/YamlDotNet.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/VRLabs/Simple-Shader-Inspectors/e5fc9aadf5347946f5d452f1075e49017d9ebae9/.docs/templates/memberpage/content/plugins/YamlDotNet.dll -------------------------------------------------------------------------------- /.docs/templates/memberpage/content/plugins/docfx.plugins.config: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | -------------------------------------------------------------------------------- /.docs/templates/memberpage/content/toc.html.js: -------------------------------------------------------------------------------- 1 | // Copyright (c) Microsoft. All rights reserved. Licensed under the MIT license. See LICENSE file in the project root for full license information. 2 | exports.transform = function (model) { 3 | var groupNames = { 4 | "constructor": { key: "constructorsInSubtitle" }, 5 | "field": { key: "fieldsInSubtitle" }, 6 | "property": { key: "propertiesInSubtitle" }, 7 | "method": { key: "methodsInSubtitle" }, 8 | "event": { key: "eventsInSubtitle" }, 9 | "operator": { key: "operatorsInSubtitle" }, 10 | }; 11 | 12 | groupChildren(model); 13 | transformItem(model, 1); 14 | return model; 15 | 16 | function groupChildren(item) { 17 | if (!item || !item.items || item.items.length == 0) { 18 | return; 19 | } 20 | var grouped = {}; 21 | var items = []; 22 | item.items.forEach(function (element) { 23 | groupChildren(element); 24 | if (element.type) { 25 | var type = element.type.toLowerCase(); 26 | if (!grouped.hasOwnProperty(type)) { 27 | if (!groupNames.hasOwnProperty(type)) { 28 | groupNames[type] = { 29 | name: element.type 30 | }; 31 | console.log(type + " is not predefined type, use its type name as display name.") 32 | } 33 | grouped[type] = []; 34 | } 35 | grouped[type].push(element); 36 | } else { 37 | items.push(element); 38 | } 39 | }, this); 40 | 41 | // With order defined in groupNames 42 | for (var key in groupNames) { 43 | if (groupNames.hasOwnProperty(key) && grouped.hasOwnProperty(key)) { 44 | items.push({ 45 | name: model.__global[groupNames[key].key] || groupNames[key].name, 46 | items: grouped[key] 47 | }) 48 | } 49 | } 50 | 51 | item.items = items; 52 | } 53 | 54 | function transformItem(item, level) { 55 | // set to null in case mustache looks up 56 | item.topicHref = item.topicHref || null; 57 | item.tocHref = item.tocHref || null; 58 | item.name = item.name || null; 59 | 60 | item.level = level; 61 | 62 | if (item.items && item.items.length > 0) { 63 | item.leaf = false; 64 | var length = item.items.length; 65 | for (var i = 0; i < length; i++) { 66 | transformItem(item.items[i], level + 1); 67 | }; 68 | } else { 69 | item.items = []; 70 | item.leaf = true; 71 | } 72 | } 73 | } 74 | -------------------------------------------------------------------------------- /.docs/toc.yml: -------------------------------------------------------------------------------- 1 | - name: Guides 2 | href: guides/ 3 | homepage: guides/index.md 4 | - name: Api Documentation 5 | href: api/ 6 | homepage: api/index.md 7 | -------------------------------------------------------------------------------- /.github/local-test.sh: -------------------------------------------------------------------------------- 1 | #! /bin/bash 2 | 3 | rm -rf .docsOutput 4 | node .github/prepare-docfx-folder 5 | docfx .docsOutput/docs/docfx.json --serve 6 | -------------------------------------------------------------------------------- /.github/release-notes-configuration.json: -------------------------------------------------------------------------------- 1 | { 2 | "categories": [ 3 | { 4 | "title": "## New", 5 | "labels": [ 6 | "new feature", 7 | "new control" 8 | ] 9 | }, 10 | { 11 | "title": "## Changed", 12 | "labels": [ 13 | "feature enhancement", 14 | "control enhancement" 15 | ] 16 | }, 17 | { 18 | "title": "## Fixed", 19 | "labels": [ 20 | "bugfix" 21 | ] 22 | }, 23 | { 24 | "title": "## Breaking Changes", 25 | "labels": [ 26 | "breaking change" 27 | ] 28 | } 29 | ], 30 | "ignore_labels": [ 31 | "ignore" 32 | ], 33 | "sort": "ASC", 34 | "template": "${{CHANGELOG}}\n\n
\nUncategorized\n\n${{UNCATEGORIZED}}\n
", 35 | "pr_template": "- ${{TITLE}}\n - PR: #${{NUMBER}}", 36 | "empty_template": "- no changes", 37 | "label_extractor": [ 38 | { 39 | "pattern": "(.) (.+)", 40 | "target": "$1" 41 | }, 42 | { 43 | "pattern": "(.) (.+)", 44 | "target": "$1", 45 | "on_property": "title" 46 | } 47 | ], 48 | "transformers": [ 49 | { 50 | "pattern": "[\\-\\*] (\\[(...|TEST|CI|SKIP)\\])( )?(.+?)\n(.+?[\\-\\*] )(.+)", 51 | "target": "- $4\n - $6" 52 | } 53 | ], 54 | "max_tags_to_fetch": 200, 55 | "max_pull_requests": 200, 56 | "max_back_track_time_days": 365, 57 | "exclude_merge_branches": [ 58 | "Owner/qa" 59 | ], 60 | "tag_resolver": { 61 | "method": "semver" 62 | } 63 | } -------------------------------------------------------------------------------- /.github/workflows/build-docs.yml: -------------------------------------------------------------------------------- 1 | name: build-docs 2 | on: 3 | push: 4 | branches: 5 | - master 6 | jobs: 7 | build: 8 | runs-on: windows-latest 9 | steps: 10 | - name: Checkout 11 | uses: actions/checkout@v2 12 | 13 | - name: Prepare Docs folder 14 | run: | 15 | mkdir -p docsOutput 16 | mkdir -p /usr/share/dotnet/sdk/NuGetFallbackFolder 17 | remote=$(git config --get remote.origin.url) 18 | node .github/prepare-docfx-folder.js "$remote.git" docsOutput 19 | shell: bash 20 | 21 | - name: Build DocFX 22 | run: | 23 | choco install docfx -y --version 2.58.2 24 | docfx docsOutput/docs/docfx.json 25 | 26 | - name: Upload Site Artifacts 27 | uses: actions/upload-artifact@v4 28 | with: 29 | name: site 30 | path: docsOutput/docs/_site 31 | retention-days: 1 32 | 33 | deploy: 34 | needs: [build] 35 | runs-on: ubuntu-latest 36 | steps: 37 | - name: Checkout 38 | uses: actions/checkout@v2 39 | 40 | - name: Download Artifacts 41 | uses: actions/download-artifact@v4 42 | with: 43 | name: site 44 | path: site 45 | 46 | - name: Deploy to GitHub Pages 47 | uses: Cecilapp/GitHub-Pages-deploy@v3 48 | env: 49 | GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} 50 | with: 51 | email: 41898282+github-actions[bot]@users.noreply.github.com 52 | build_dir: site 53 | cname: ssi.vrlabs.dev 54 | -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | .idea/ 2 | .docsOutput/ 3 | -------------------------------------------------------------------------------- /Editor.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 2befe380ede85c44783f486e5974da82 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Editor/Autogenerated.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: f075fe2b3c0c095489095f8c51609ce4 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Editor/Autogenerated/VRLabs.SimpleShaderInspectors.Controls.Extensions.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: e370292f958956b4d9f7fdcc78189fcf 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Editor/Autogenerated/VRLabs.SimpleShaderInspectors.Controls.Sections.Extensions.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: a627516d12c299f4da7782e3954e0dbf 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Editor/Autogenerated/VRLabs.SimpleShaderInspectors.Extensions.cs: -------------------------------------------------------------------------------- 1 | namespace VRLabs.SimpleShaderInspectors 2 | { 3 | public static partial class Chainables 4 | { 5 | public static VRLabs.SimpleShaderInspectors.PropertyControl AddPropertyControl(this VRLabs.SimpleShaderInspectors.IControlContainer container, System.String propertyName, string appendAfterAlias = "") 6 | { 7 | var control = new VRLabs.SimpleShaderInspectors.PropertyControl(propertyName); 8 | container.AddControl(control, appendAfterAlias); 9 | return control; 10 | } 11 | 12 | } 13 | } 14 | -------------------------------------------------------------------------------- /Editor/Autogenerated/VRLabs.SimpleShaderInspectors.Extensions.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 2282788992ca26043a857ae45966ca3f 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Editor/Controls.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 331ad59c390ffe84a9b5d9b6e14b2d88 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Editor/Controls/ColorControl.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 6fb2c4b292a84e941ab6905bc861acc9 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Editor/Controls/ConditionalControlContainer.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 36c345974ec94bf6a127d769ceb90acd 3 | timeCreated: 1633693663 -------------------------------------------------------------------------------- /Editor/Controls/ControlContainer.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: cb9f0fa163c1a1f4496748538ac66638 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Editor/Controls/DoubleSidedGIControl.cs: -------------------------------------------------------------------------------- 1 | using UnityEditor; 2 | 3 | namespace VRLabs.SimpleShaderInspectors.Controls 4 | { 5 | /// 6 | /// Control that handles the material double sided GI option. 7 | /// 8 | /// 9 | /// Is the Simple Shader Inspectors equivalent of MaterialEditor.DoubleSidedGIField. 10 | /// It does not need an alias in order to work. 11 | /// 12 | /// 13 | /// Example usage: 14 | /// 15 | /// this.AddDoubleSidedGIControl(); 16 | /// 17 | /// 18 | public class DoubleSidedGIControl : SimpleControl 19 | { 20 | /// 21 | /// Default constructor of . 22 | /// 23 | public DoubleSidedGIControl() : base("") { } 24 | 25 | /// 26 | /// Boolean indicating if the double sided GI has updated. 27 | /// 28 | /// 29 | /// True if the double sided GI has been updated, false otherwise. 30 | /// 31 | public bool HasDoubleSidedGIUpdated { get; protected set; } 32 | 33 | /// 34 | /// Draws the control represented by this object. 35 | /// 36 | /// Material editor. 37 | protected override void ControlGUI(MaterialEditor materialEditor) 38 | { 39 | EditorGUI.BeginChangeCheck(); 40 | materialEditor.DoubleSidedGIField(); 41 | HasDoubleSidedGIUpdated = EditorGUI.EndChangeCheck(); 42 | } 43 | } 44 | } -------------------------------------------------------------------------------- /Editor/Controls/DoubleSidedGIControl.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 00d34c62730b4a75b3e5715371e9def0 3 | timeCreated: 1647098888 -------------------------------------------------------------------------------- /Editor/Controls/EnableInstancingControl.cs: -------------------------------------------------------------------------------- 1 | using UnityEditor; 2 | 3 | namespace VRLabs.SimpleShaderInspectors.Controls 4 | { 5 | /// 6 | /// Control that handles the instancing option. 7 | /// 8 | /// 9 | /// Is the Simple Shader Inspectors equivalent of MaterialEditor.EnableInstancingField. 10 | /// It does not need an alias in order to work. 11 | /// 12 | /// 13 | /// Example usage: 14 | /// 15 | /// this.AddEnableInstancingControl(); 16 | /// 17 | /// 18 | public class EnableInstancingControl : SimpleControl 19 | { 20 | /// 21 | /// Default constructor of . 22 | /// 23 | public EnableInstancingControl() : base("") { } 24 | 25 | /// 26 | /// Boolean indicating if the enable instancing control has updated. 27 | /// 28 | /// 29 | /// True if the enable instancing control has been updated, false otherwise. 30 | /// 31 | public bool HasInstancingUpdated { get; protected set; } 32 | 33 | /// 34 | /// Draws the control represented by this object. 35 | /// 36 | /// Material editor. 37 | protected override void ControlGUI(MaterialEditor materialEditor) 38 | { 39 | EditorGUI.BeginChangeCheck(); 40 | materialEditor.EnableInstancingField(); 41 | HasInstancingUpdated = EditorGUI.EndChangeCheck(); 42 | } 43 | } 44 | } -------------------------------------------------------------------------------- /Editor/Controls/EnableInstancingControl.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 3a754ec4d843477781251cb2b27b5500 3 | timeCreated: 1647098747 -------------------------------------------------------------------------------- /Editor/Controls/EnumControl.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 43216b1d90b97c5478feba371a240d4c 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Editor/Controls/GradientTextureControl.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: e38ea19973360794bb0b07bf134078ac 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Editor/Controls/HelpBoxControl.cs: -------------------------------------------------------------------------------- 1 | using UnityEditor; 2 | 3 | namespace VRLabs.SimpleShaderInspectors.Controls 4 | { 5 | /// 6 | /// Represents a control containing an helpbox to display information 7 | /// 8 | /// 9 | /// Whenever you want to display some important information of some kind, this is the control that will help you make it more visible. 10 | /// 11 | /// 12 | /// Initialize the control inside the inspector: 13 | /// 14 | /// // initialize an HelpBoxControl 15 | /// this.AddHelpBoxControl("ExampleHelpBox"); 16 | /// // initialize an HelpBoxControl and specifies the type of message shown (by default is set to MessageType.None). 17 | /// this.AddHelpBoxControl("ExampleHelpBox2").SetBoxType(MessageType.Info); 18 | /// // initialize an HelpBoxControl and specifies that the HelpBox should not be wide (by default is set to True). 19 | /// this.AddHelpBoxControl("ExampleHelpBox3").SetIsWideBox(false); 20 | /// 21 | /// 22 | public class HelpBoxControl : SimpleControl 23 | { 24 | /// 25 | /// Indicates the type of message that is contained in the box. 26 | /// 27 | [FluentSet] public MessageType BoxType { get; set; } 28 | 29 | /// 30 | /// Indicates if the HelpBox is a wide box (spans to the entire length of the window) or not (is only as large as the area where input fields are usually placed) 31 | /// 32 | [FluentSet] public bool IsWideBox { get; set; } 33 | 34 | /// 35 | /// Default constructor of 36 | /// 37 | /// Alias of the control, used for localization (required) 38 | public HelpBoxControl(string alias) : base(alias) 39 | { 40 | BoxType = MessageType.None; 41 | IsWideBox = true; 42 | } 43 | 44 | /// 45 | /// Draws the control represented by this object. 46 | /// 47 | /// Material editor. 48 | protected override void ControlGUI(MaterialEditor materialEditor) 49 | { 50 | EditorGUILayout.HelpBox(Content.text, BoxType, IsWideBox); 51 | } 52 | } 53 | } -------------------------------------------------------------------------------- /Editor/Controls/HelpBoxControl.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: a73b06de95914c96bbbd1d54a7722c07 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Editor/Controls/HorizontalContainer.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: dad41bcdf0eb4d1b9bc1de88fb84343e 3 | timeCreated: 1643906896 -------------------------------------------------------------------------------- /Editor/Controls/KeywordToggleControl.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 00750d334ddfdcf4d8fce79e4a220436 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Editor/Controls/KeywordToggleListControl.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 0253b3fec48ad47408b6485a0ba2d9d0 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Editor/Controls/LabelControl.cs: -------------------------------------------------------------------------------- 1 | using UnityEditor; 2 | using UnityEngine; 3 | 4 | namespace VRLabs.SimpleShaderInspectors.Controls 5 | { 6 | /// 7 | /// Represents a label without any property. 8 | /// 9 | /// 10 | /// It can be seen ad the Simple Shader Inspectors version of EditorGUILayout.LabelField, with the advantage that it uses Simple Shader Inspectors' localization system for the 11 | /// label string. 12 | /// It is required to give an alias to the control, since it doesn't have anything that it could use as a default. 13 | /// 14 | /// 15 | /// Example usage: 16 | /// 17 | /// this.AddLabelControl("AliasToUse"); 18 | /// 19 | /// 20 | public class LabelControl : SimpleControl 21 | { 22 | /// 23 | /// Style used for the label control. 24 | /// 25 | /// GUIStyle for the label. 26 | [FluentSet] public GUIStyle LabelStyle { get; set; } 27 | 28 | /// 29 | /// Default constructor of . 30 | /// 31 | /// Alias of the control. 32 | /// A new object. 33 | public LabelControl(string alias) : base(alias) 34 | { 35 | LabelStyle = EditorStyles.label; 36 | } 37 | 38 | /// 39 | /// Draws the control represented by this object. 40 | /// 41 | /// Material editor. 42 | protected override void ControlGUI(MaterialEditor materialEditor) 43 | { 44 | EditorGUILayout.LabelField(Content, LabelStyle); 45 | } 46 | } 47 | } -------------------------------------------------------------------------------- /Editor/Controls/LabelControl.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 430909673bc844642a37c0a5193d1d33 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Editor/Controls/LightmapEmissionControl.cs: -------------------------------------------------------------------------------- 1 | using UnityEditor; 2 | using UnityEngine; 3 | namespace VRLabs.SimpleShaderInspectors.Controls 4 | { 5 | /// 6 | /// Control that handles the lightmap Emission Property of the material. 7 | /// 8 | /// 9 | /// Is the Simple Shader Inspectors equivalent of MaterialEditor.LightmapEmissionProperty. 10 | /// It does not need an alias in order to work. 11 | /// 12 | /// 13 | /// Example usage: 14 | /// 15 | /// this.AddLightmapEmissionControl(); 16 | /// 17 | /// 18 | public class LightmapEmissionControl : SimpleControl 19 | { 20 | /// 21 | /// Default constructor of . 22 | /// 23 | public LightmapEmissionControl() : base("") { } 24 | 25 | /// 26 | /// Boolean indicating if the lightmap emission property has updated. 27 | /// 28 | /// 29 | /// True if the lightmap emission value has been updated, false otherwise. 30 | /// 31 | public bool HasLightmapEmissionUpdated { get; protected set; } 32 | 33 | /// 34 | /// Draws the control represented by this object. 35 | /// 36 | /// Material editor. 37 | protected override void ControlGUI(MaterialEditor materialEditor) 38 | { 39 | EditorGUI.BeginChangeCheck(); 40 | materialEditor.LightmapEmissionProperty(); 41 | HasLightmapEmissionUpdated = EditorGUI.EndChangeCheck(); 42 | if (HasLightmapEmissionUpdated) 43 | { 44 | foreach (Material mat in Inspector.Materials) 45 | { 46 | MaterialEditor.FixupEmissiveFlag(mat); 47 | bool shouldEmissionBeEnabled = (mat.globalIlluminationFlags & MaterialGlobalIlluminationFlags.EmissiveIsBlack) == 0; 48 | mat.SetOverrideTag("IsEmissive", shouldEmissionBeEnabled ? "true" : "false"); 49 | } 50 | } 51 | } 52 | } 53 | } -------------------------------------------------------------------------------- /Editor/Controls/LightmapEmissionControl.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 3a6015670c4da924cbe06e2ca5d70ee4 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Editor/Controls/RGBASelectorControl.cs: -------------------------------------------------------------------------------- 1 | using UnityEditor; 2 | using UnityEngine; 3 | 4 | namespace VRLabs.SimpleShaderInspectors.Controls 5 | { 6 | /// 7 | /// Represents a control that provides a selector for a texture channel. 8 | /// 9 | /// 10 | /// 11 | /// This control can be used to filter out a mask texture into a the channel that you want. It returns to the property the index of the channel selected, with Red = 0, Green = 1, Blue = 2 and Alpha = 3. 12 | /// 13 | /// 14 | /// This makes the usage of the value fairly easy in shader since to sample the channel you want you just need to do sampledTexture[_SelectedChannel] 15 | /// where sampledTexture if the float4 of your texture after sampling it, and _SelectedChannel is the property given to this control. 16 | /// 17 | /// 18 | /// 19 | /// Example usage: 20 | /// 21 | /// // Adds a new RGBASelectorControl 22 | /// this.AddRGBASelectorControl("_TextureProperty"); 23 | /// 24 | /// 25 | // ReSharper disable once InconsistentNaming 26 | public class RGBASelectorControl : PropertyControl 27 | { 28 | 29 | public RGBASelectorControl(string propertyName) : base(propertyName) 30 | {} 31 | 32 | protected override void ControlGUI(MaterialEditor materialEditor) 33 | { 34 | bool hasContent = Content != null && !string.IsNullOrWhiteSpace(Content.text); 35 | float channel = Property.floatValue; 36 | EditorGUI.BeginChangeCheck(); 37 | if (hasContent) 38 | { 39 | EditorGUILayout.BeginHorizontal(); 40 | EditorGUILayout.LabelField(Content); 41 | channel = GUILayout.Toolbar((int)channel, new[] { "R", "G", "B", "A" }); 42 | EditorGUILayout.EndHorizontal(); 43 | } 44 | else 45 | { 46 | channel = GUILayout.Toolbar((int)channel, new[] { "R", "G", "B", "A" }); 47 | } 48 | HasPropertyUpdated = EditorGUI.EndChangeCheck(); 49 | if (HasPropertyUpdated) 50 | { 51 | Property.floatValue = channel; 52 | } 53 | 54 | } 55 | } 56 | } -------------------------------------------------------------------------------- /Editor/Controls/RGBASelectorControl.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: f152074521bf445aa95772ff77ce01f5 3 | timeCreated: 1643902505 -------------------------------------------------------------------------------- /Editor/Controls/Sections.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 63ff8c31ce04b47479f754290a70c1ca 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Editor/Controls/Sections/ActivatableSection.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 09130cce7e50cae49a7ef5aaab8c1367 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Editor/Controls/Sections/OrderedSection.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: ae7691495cee7d949b9c690855b80641 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Editor/Controls/Sections/OrderedSectionDropdown.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 426491b1428d43f695b4e3b7b6b29499 3 | timeCreated: 1634839133 -------------------------------------------------------------------------------- /Editor/Controls/Sections/OrderedSectionGroup.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 59dc6731676157743aa781c024f9464e 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Editor/Controls/Sections/Section.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 681717999b4a50a4c83bb53c20d7ffa3 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Editor/Controls/SpaceControl.cs: -------------------------------------------------------------------------------- 1 | using UnityEditor; 2 | using UnityEngine; 3 | 4 | namespace VRLabs.SimpleShaderInspectors.Controls 5 | { 6 | /// 7 | /// Represents an empty space. 8 | /// 9 | /// 10 | /// It can be considered the Simple Shader Inspectors equivalent of GUILayout.Space. 11 | /// It does not need an alias in order to work. 12 | /// 13 | /// 14 | /// Example usage: 15 | /// 16 | /// // Adds a space of 1 line worth of pixels 17 | /// this.AddSpaceControl(); 18 | /// // adds a space of 15 pixels 19 | /// this.AddSpaceControl(15); 20 | /// 21 | /// 22 | public class SpaceControl : SimpleControl 23 | { 24 | /// 25 | /// Amount of space in pixels this control has. 26 | /// 27 | /// 28 | /// Pixels of space. 29 | /// 30 | public int Space { get; set; } 31 | 32 | /// 33 | /// Default constructor of . 34 | /// 35 | /// amount of space to use, if set to 0 it defaults to 1 line worth of space. 36 | /// A new object. 37 | public SpaceControl(int space = 0) : base("") 38 | { 39 | Space = space; 40 | } 41 | 42 | /// 43 | /// Draws the control represented by this object. 44 | /// 45 | /// Material editor. 46 | protected override void ControlGUI(MaterialEditor materialEditor) 47 | { 48 | if (Space == 0) 49 | EditorGUILayout.Space(); 50 | else 51 | GUILayout.Space(Space); 52 | } 53 | } 54 | } -------------------------------------------------------------------------------- /Editor/Controls/SpaceControl.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: a7a793d9d1051dc4d8dcf856f14ba3c5 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Editor/Controls/TextureControl.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 40d86a287ed1ba24b89a3ff74ef77ebc 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Editor/Controls/TextureGeneratorControl.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: d8f39df75e8d37142af5acc029d8c997 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Editor/Controls/TilingAndOffsetControl.cs: -------------------------------------------------------------------------------- 1 | using UnityEditor; 2 | 3 | namespace VRLabs.SimpleShaderInspectors.Controls 4 | { 5 | /// 6 | /// Represents a control for a texture tiling and offset field. 7 | /// 8 | public class TilingAndOffsetControl : PropertyControl 9 | { 10 | /// 11 | /// Default constructor of 12 | /// 13 | /// Material property name. 14 | public TilingAndOffsetControl(string propertyName) : base(propertyName) 15 | { 16 | } 17 | 18 | /// 19 | /// Draws the control represented by this object. 20 | /// 21 | /// Material editor. 22 | protected override void ControlGUI(MaterialEditor materialEditor) 23 | { 24 | // EditorGUILayout.BeginHorizontal(); 25 | EditorGUI.BeginChangeCheck(); 26 | materialEditor.TextureScaleOffsetProperty(Property); 27 | HasPropertyUpdated = EditorGUI.EndChangeCheck(); 28 | } 29 | } 30 | } -------------------------------------------------------------------------------- /Editor/Controls/TilingAndOffsetControl.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 7e6680f94c1933b43a7212b90a8eb566 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Editor/Controls/ToggleControl.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 022b1f23cc8897b408ac3c5764209961 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Editor/Controls/ToggleListControl.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: cb2040603c7e81149986a6a29b5a7fd9 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Editor/Controls/VectorControl.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: aa87ad534b44e62479ef1fa65219bbdd 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Editor/Controls/VertexStreamsControl.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 77ec1c1ee05b3d14f8ce8667ff67a38a 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Editor/Editors.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 9476feba7943478bbb97518b0002f2e3 3 | timeCreated: 1643830372 -------------------------------------------------------------------------------- /Editor/Editors/ShaderInspectors.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 83e6aa22a8714aeab09dbab689f059f0 3 | timeCreated: 1643830384 -------------------------------------------------------------------------------- /Editor/Editors/ShaderInspectors/DefaultGeneratorGUI.cs: -------------------------------------------------------------------------------- 1 | using UnityEditor; 2 | 3 | namespace VRLabs.SimpleShaderInspectors 4 | { 5 | public class DefaultGeneratorGUI : ShaderGUI 6 | { 7 | public override void OnGUI(MaterialEditor materialEditor, MaterialProperty[] properties) 8 | { 9 | foreach (MaterialProperty property in properties) 10 | { 11 | materialEditor.ShaderProperty(property, property.displayName); 12 | } 13 | } 14 | } 15 | } -------------------------------------------------------------------------------- /Editor/Editors/ShaderInspectors/DefaultGeneratorGUI.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: ef4a67a47cf24df2bedce017b3d54d9b 3 | timeCreated: 1643826217 -------------------------------------------------------------------------------- /Editor/Editors/ShaderInspectors/RGBAPackerInspector.cs: -------------------------------------------------------------------------------- 1 | using VRLabs.SimpleShaderInspectors.Controls; 2 | 3 | namespace VRLabs.SimpleShaderInspectors 4 | { 5 | // ReSharper disable once InconsistentNaming 6 | internal class RGBAPackerInspector : TextureGeneratorShaderInspector 7 | { 8 | protected override void Start() 9 | { 10 | this.AddTextureControl("_MainTex", "_RedMultiplier").WithAlias("RGBAPacker_RedTexture"); 11 | var line = this.AddHorizontalContainer(); 12 | line.AddToggleControl("_RedInvert").WithAlias("RGBAPacker_Invert"); 13 | line.AddRGBASelectorControl("_RedChannel").WithAlias("RGBAPacker_Channel"); 14 | this.AddSpaceControl(10); 15 | 16 | this.AddTextureControl("_GreenTexture", "_GreenMultiplier").WithAlias("RGBAPacker_GreenTexture"); 17 | line = this.AddHorizontalContainer(); 18 | line.AddToggleControl("_GreenInvert").WithAlias("RGBAPacker_Invert"); 19 | line.AddRGBASelectorControl("_GreenChannel").WithAlias("RGBAPacker_Channel"); 20 | this.AddSpaceControl(10); 21 | 22 | this.AddTextureControl("_BlueTexture", "_BlueMultiplier").WithAlias("RGBAPacker_BlueTexture"); 23 | line = this.AddHorizontalContainer(); 24 | line.AddToggleControl("_BluInvert").WithAlias("RGBAPacker_Invert"); 25 | line.AddRGBASelectorControl("_BlueChannel").WithAlias("RGBAPacker_Channel"); 26 | this.AddSpaceControl(10); 27 | 28 | this.AddTextureControl("_AlphaTexture", "_AlphaMultiplier").WithAlias("RGBAPacker_AlphaTexture"); 29 | line = this.AddHorizontalContainer(); 30 | line.AddToggleControl("_AlphaInvert").WithAlias("RGBAPacker_Invert"); 31 | line.AddRGBASelectorControl("_AlphaChannel").WithAlias("RGBAPacker_Channel"); 32 | } 33 | } 34 | } -------------------------------------------------------------------------------- /Editor/Editors/ShaderInspectors/RGBAPackerInspector.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 37c8fe8a8315472aae22f93a28381e01 3 | timeCreated: 1643833947 -------------------------------------------------------------------------------- /Editor/Editors/ShaderInspectors/SimpleShaderInspector.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 827ae03bcaa0f64469caddd5daed58a8 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Editor/Editors/ShaderInspectors/TextureGeneratorShaderInspector.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 66c353ae718447ddbadc2d54a6f8edfe 3 | timeCreated: 1643830448 -------------------------------------------------------------------------------- /Editor/FluentSetAttribute.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | 3 | namespace VRLabs.SimpleShaderInspectors 4 | { 5 | /// 6 | /// Attribute for properties that is used when generating chainables. 7 | /// 8 | /// 9 | /// The attribute by itself does nothing, but it is used by the chainables generator tool to generate extension methods for properties that have it 10 | /// 11 | [AttributeUsage(AttributeTargets.Property)] 12 | public class FluentSetAttribute : Attribute 13 | {} 14 | 15 | /// 16 | /// Attribute for constructors indicating that the chainable constructor can only be used from a specific type instead of the default IControlContainer type. 17 | /// 18 | /// 19 | /// Sometimes you may need to limit which controls implementing IControlContainer can use the chainable version of the constructor, by having this attribute you can modify the generated 20 | /// chainable constructor to reflect those needs. 21 | /// 22 | [AttributeUsage(AttributeTargets.Constructor)] 23 | public class LimitAccessScopeAttribute : Attribute 24 | { 25 | public Type BaseType { get; } 26 | public LimitAccessScopeAttribute(Type type) 27 | { 28 | BaseType = type; 29 | } 30 | } 31 | } -------------------------------------------------------------------------------- /Editor/FluentSetAttribute.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: d7d5bb7235cacbb4abb687a3783ec167 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Editor/Helpers.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 9c8efbd707af4a3c8c2317857f0060f3 3 | timeCreated: 1644264459 -------------------------------------------------------------------------------- /Editor/Helpers/MaterialArrayHelper.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: b41d8abd48c2bf644888ca5394f1b3f8 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Editor/Helpers/SSIGUIHelper.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 7da4b9688179a5847b8acc0f8e9b3aee 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Editor/Helpers/SSIHelper.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: f5e6541663be9fd40818747807c63fa4 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Editor/Interfaces.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 592e911ef8444e49928d3f299baa9982 3 | timeCreated: 1644264393 -------------------------------------------------------------------------------- /Editor/Interfaces/IAdditionalLocalization.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: b147a72bce385894db9f33454f3189a9 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Editor/Interfaces/IAdditionalProperties.cs: -------------------------------------------------------------------------------- 1 | using UnityEditor; 2 | 3 | namespace VRLabs.SimpleShaderInspectors 4 | { 5 | /// 6 | /// Interface used to define the need for additional material properties to handle. 7 | /// 8 | /// 9 | /// When a control needs more than a single property to do its job, implementing this interface will let the inspector know this need. 10 | /// 11 | public interface IAdditionalProperties 12 | { 13 | /// 14 | /// Array containing all additional properties the control needs. 15 | /// 16 | /// 17 | /// Is up to the control to initialize the array and assign the property names it needs to fetch. 18 | /// 19 | AdditionalProperty[] AdditionalProperties { get; set; } 20 | } 21 | 22 | /// 23 | /// This class defines an additional property. 24 | /// 25 | public class AdditionalProperty 26 | { 27 | /// 28 | /// String containing the additional property name. 29 | /// 30 | public string PropertyName { get; } 31 | 32 | /// 33 | /// Indicates if the property is required for the control to work. 34 | /// 35 | public bool IsPropertyMandatory { get; } 36 | 37 | /// 38 | /// Array containing the index needed to fetch. 39 | /// 40 | private int _propertyIndex = -2; 41 | 42 | /// 43 | /// MaterialProperty containing the additional property needed by the control. 44 | /// 45 | public MaterialProperty Property { get; private set; } 46 | 47 | /// 48 | /// Default constructor of AdditionalProperty. 49 | /// 50 | /// Name of the materialProperty to fetch. 51 | /// If the property is required 52 | public AdditionalProperty(string propertyName, bool isPropertyMandatory = true) 53 | { 54 | IsPropertyMandatory = isPropertyMandatory; 55 | PropertyName = propertyName; 56 | } 57 | 58 | // Fetch and store the index of the needed material property. 59 | internal void SetPropertyIndex(MaterialProperty[] properties) 60 | { 61 | _propertyIndex = SSIHelper.FindPropertyIndex(PropertyName, properties); 62 | } 63 | 64 | // Fetch the material property based on the index. 65 | internal void FetchProperty(MaterialProperty[] properties) 66 | { 67 | if (_propertyIndex == -2) 68 | SetPropertyIndex(properties); 69 | 70 | Property = _propertyIndex != -1 ? properties[_propertyIndex] : null; 71 | } 72 | } 73 | } 74 | -------------------------------------------------------------------------------- /Editor/Interfaces/IAdditionalProperties.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 4d15d712b3ea02c4986612ddec6d9662 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Editor/Interfaces/IControlContainer.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 658eba066d8652949b2c90cbf4afc427 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Editor/Interfaces/INonAnimatableProperty.cs: -------------------------------------------------------------------------------- 1 | using UnityEditor; 2 | 3 | namespace VRLabs.SimpleShaderInspectors 4 | { 5 | /// 6 | /// Interface that defines an object that has a property that shouldn't be animated by the animation window 7 | /// 8 | /// 9 | /// In some cases you don't want to record changes of a property inside an animation. This will let the inspector know that. 10 | /// Bare in mind that this will not assure that the property will not be recorded since is up to the inspector to satisfy the condition, 11 | /// and the user could still edit the animation manually. 12 | /// 13 | public interface INonAnimatableProperty 14 | { 15 | /// 16 | /// Boolean indicating if a non animatable material property need to be updated. 17 | /// 18 | bool NonAnimatablePropertyChanged { get; set; } 19 | 20 | /// 21 | /// Updates the value of the non animatable property 22 | /// 23 | /// Material editor. 24 | void UpdateNonAnimatableProperty(MaterialEditor materialEditor); 25 | } 26 | } -------------------------------------------------------------------------------- /Editor/Interfaces/INonAnimatableProperty.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 58a3655d824aab14bac5ba772cbf7b89 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Editor/Interfaces/ISimpleShaderInspector.cs: -------------------------------------------------------------------------------- 1 | using UnityEngine; 2 | 3 | namespace VRLabs.SimpleShaderInspectors 4 | { 5 | /// 6 | /// Interface indicating that the object is a valid Simple Shader Inspector and can use its features. 7 | /// 8 | /// 9 | /// By implementing this interface you can create your own inspector that uses the Simple Shader Inspectors library. 10 | /// 11 | /// It can be useful when you need some really custom behaviour, at the cost oh having to manage the controls initialization, property fetching etc. 12 | /// It can be a good starting point to see the source code of . 13 | /// 14 | /// 15 | public interface ISimpleShaderInspector : IControlContainer 16 | { 17 | /// 18 | /// Array of the materials selected. 19 | /// 20 | Material[] Materials { get; } 21 | 22 | /// 23 | /// Shader this inspector is viewing. 24 | /// 25 | Shader Shader { get; } 26 | } 27 | } -------------------------------------------------------------------------------- /Editor/Interfaces/ISimpleShaderInspector.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 65da5c946271f614a86ea860ba201f25 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Editor/Localization.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 8593ffeaeaa265f4f8651e2ddf1babf8 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Editor/PropertyControl.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 8615caa7f403bed41afe4166bd9318b6 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Editor/Resources.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: b4bcebfa8b8467249b83e23c855a108d 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Editor/Resources/SSI.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 35a1140fb0de4176ac82e77800507344 3 | timeCreated: 1637101669 -------------------------------------------------------------------------------- /Editor/Resources/SSI/Dictionaries.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: c141f07f2e5265943b947c1343b93051 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Editor/Resources/SSI/Dictionaries/Dictionaries.asset: -------------------------------------------------------------------------------- 1 | %YAML 1.1 2 | %TAG !u! tag:unity3d.com,2011: 3 | --- !u!114 &11400000 4 | MonoBehaviour: 5 | m_ObjectHideFlags: 0 6 | m_CorrespondingSourceObject: {fileID: 0} 7 | m_PrefabInstance: {fileID: 0} 8 | m_PrefabAsset: {fileID: 0} 9 | m_GameObject: {fileID: 0} 10 | m_Enabled: 1 11 | m_EditorHideFlags: 0 12 | m_Script: {fileID: 11500000, guid: 45db28035fecfe5408f3b903a531b7fd, type: 3} 13 | m_Name: Dictionaries 14 | m_EditorClassIdentifier: 15 | boolDictionary: 16 | - key: Layers header_1961dad63f51fe84494127b3a7bad0a1_Show 17 | value: 1 18 | date: -8585577530834203444 19 | - key: Rim light header_1961dad63f51fe84494127b3a7bad0a1_Show 20 | value: 0 21 | date: -8585577530844070325 22 | - key: Red channel_1961dad63f51fe84494127b3a7bad0a1_Show 23 | value: 0 24 | date: -8585577530834193430 25 | - key: Green channel_1961dad63f51fe84494127b3a7bad0a1_Show 26 | value: 0 27 | date: -8585577530834193430 28 | - key: Blue channel_1961dad63f51fe84494127b3a7bad0a1_Show 29 | value: 0 30 | date: -8585577530834183431 31 | - key: Alpha channel_1961dad63f51fe84494127b3a7bad0a1_Show 32 | value: 0 33 | date: -8585577530834183431 34 | - key: Ordered1_1961dad63f51fe84494127b3a7bad0a1_Show 35 | value: 0 36 | date: -8585577530834173434 37 | - key: Ordered2_1961dad63f51fe84494127b3a7bad0a1_Show 38 | value: 0 39 | date: -8585577530834163441 40 | - key: Ordered3_1961dad63f51fe84494127b3a7bad0a1_Show 41 | value: 0 42 | date: -8585577530834163441 43 | - key: Ordered4_1961dad63f51fe84494127b3a7bad0a1_Show 44 | value: 0 45 | date: -8585577530834163441 46 | intDictionary: 47 | - key: Ordered1_1961dad63f51fe84494127b3a7bad0a1_SectionPosition 48 | value: 0 49 | date: -8585577530834173434 50 | - key: Ordered2_1961dad63f51fe84494127b3a7bad0a1_SectionPosition 51 | value: 0 52 | date: -8585577530834163441 53 | - key: Ordered3_1961dad63f51fe84494127b3a7bad0a1_SectionPosition 54 | value: 0 55 | date: -8585577530834163441 56 | - key: Ordered4_1961dad63f51fe84494127b3a7bad0a1_SectionPosition 57 | value: 0 58 | date: -8585577530834163441 59 | -------------------------------------------------------------------------------- /Editor/Resources/SSI/Dictionaries/Dictionaries.asset.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: bc2c13316478301439762e8598fe180a 3 | NativeFormatImporter: 4 | externalObjects: {} 5 | mainObjectFileID: 11400000 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Editor/Resources/SSI/Shaders.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: f9aeffcaea125864ba7e2cae3b8f3d82 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Editor/Resources/SSI/Shaders/RGBAPacker.shader.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: a60b49332593db64f8a4a5e21cb4ea96 3 | ShaderImporter: 4 | externalObjects: {} 5 | defaultTextures: [] 6 | nonModifiableTextures: [] 7 | userData: 8 | assetBundleName: 9 | assetBundleVariant: 10 | -------------------------------------------------------------------------------- /Editor/Resources/SSI/Textures.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 8ef470d8d67013d4280727d2cc1423f7 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Editor/Resources/SSI/Textures/BoxHeavy.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/VRLabs/Simple-Shader-Inspectors/e5fc9aadf5347946f5d452f1075e49017d9ebae9/Editor/Resources/SSI/Textures/BoxHeavy.png -------------------------------------------------------------------------------- /Editor/Resources/SSI/Textures/BoxHeavy.png.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: ec25e5e4c7eca4b4790d8aa4a756a61b 3 | TextureImporter: 4 | fileIDToRecycleName: {} 5 | externalObjects: {} 6 | serializedVersion: 9 7 | mipmaps: 8 | mipMapMode: 0 9 | enableMipMap: 0 10 | sRGBTexture: 1 11 | linearTexture: 0 12 | fadeOut: 0 13 | borderMipMap: 0 14 | mipMapsPreserveCoverage: 0 15 | alphaTestReferenceValue: 0.5 16 | mipMapFadeDistanceStart: 1 17 | mipMapFadeDistanceEnd: 3 18 | bumpmap: 19 | convertToNormalMap: 0 20 | externalNormalMap: 0 21 | heightScale: 0.25 22 | normalMapFilter: 0 23 | isReadable: 1 24 | streamingMipmaps: 0 25 | streamingMipmapsPriority: 0 26 | grayScaleToAlpha: 0 27 | generateCubemap: 6 28 | cubemapConvolution: 0 29 | seamlessCubemap: 0 30 | textureFormat: 1 31 | maxTextureSize: 2048 32 | textureSettings: 33 | serializedVersion: 2 34 | filterMode: 0 35 | aniso: -1 36 | mipBias: -100 37 | wrapU: 1 38 | wrapV: 1 39 | wrapW: -1 40 | nPOTScale: 0 41 | lightmap: 0 42 | compressionQuality: 50 43 | spriteMode: 1 44 | spriteExtrude: 1 45 | spriteMeshType: 1 46 | alignment: 0 47 | spritePivot: {x: 0.5, y: 0.5} 48 | spritePixelsToUnits: 1 49 | spriteBorder: {x: 3, y: 3, z: 3, w: 3} 50 | spriteGenerateFallbackPhysicsShape: 1 51 | alphaUsage: 1 52 | alphaIsTransparency: 1 53 | spriteTessellationDetail: -1 54 | textureType: 8 55 | textureShape: 1 56 | singleChannelComponent: 0 57 | maxTextureSizeSet: 0 58 | compressionQualitySet: 0 59 | textureFormatSet: 0 60 | platformSettings: 61 | - serializedVersion: 2 62 | buildTarget: DefaultTexturePlatform 63 | maxTextureSize: 2048 64 | resizeAlgorithm: 0 65 | textureFormat: -1 66 | textureCompression: 1 67 | compressionQuality: 50 68 | crunchedCompression: 0 69 | allowsAlphaSplitting: 0 70 | overridden: 0 71 | androidETC2FallbackOverride: 0 72 | - serializedVersion: 2 73 | buildTarget: Standalone 74 | maxTextureSize: 2048 75 | resizeAlgorithm: 0 76 | textureFormat: -1 77 | textureCompression: 1 78 | compressionQuality: 50 79 | crunchedCompression: 0 80 | allowsAlphaSplitting: 0 81 | overridden: 0 82 | androidETC2FallbackOverride: 0 83 | spriteSheet: 84 | serializedVersion: 2 85 | sprites: [] 86 | outline: [] 87 | physicsShape: [] 88 | bones: [] 89 | spriteID: 99e7d3da33dc20942b68587182b9dbb7 90 | vertices: [] 91 | indices: 92 | edges: [] 93 | weights: [] 94 | spritePackingTag: 95 | pSDRemoveMatte: 0 96 | pSDShowRemoveMatteOption: 0 97 | userData: 98 | assetBundleName: 99 | assetBundleVariant: 100 | -------------------------------------------------------------------------------- /Editor/Resources/SSI/Textures/BoxLight.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/VRLabs/Simple-Shader-Inspectors/e5fc9aadf5347946f5d452f1075e49017d9ebae9/Editor/Resources/SSI/Textures/BoxLight.png -------------------------------------------------------------------------------- /Editor/Resources/SSI/Textures/BoxLight.png.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: f54bdc618f39af641a3028160481ab69 3 | TextureImporter: 4 | fileIDToRecycleName: {} 5 | externalObjects: {} 6 | serializedVersion: 9 7 | mipmaps: 8 | mipMapMode: 0 9 | enableMipMap: 0 10 | sRGBTexture: 1 11 | linearTexture: 0 12 | fadeOut: 0 13 | borderMipMap: 0 14 | mipMapsPreserveCoverage: 0 15 | alphaTestReferenceValue: 0.5 16 | mipMapFadeDistanceStart: 1 17 | mipMapFadeDistanceEnd: 3 18 | bumpmap: 19 | convertToNormalMap: 0 20 | externalNormalMap: 0 21 | heightScale: 0.25 22 | normalMapFilter: 0 23 | isReadable: 1 24 | streamingMipmaps: 0 25 | streamingMipmapsPriority: 0 26 | grayScaleToAlpha: 0 27 | generateCubemap: 6 28 | cubemapConvolution: 0 29 | seamlessCubemap: 0 30 | textureFormat: 1 31 | maxTextureSize: 2048 32 | textureSettings: 33 | serializedVersion: 2 34 | filterMode: 0 35 | aniso: -1 36 | mipBias: -100 37 | wrapU: 1 38 | wrapV: 1 39 | wrapW: -1 40 | nPOTScale: 0 41 | lightmap: 0 42 | compressionQuality: 50 43 | spriteMode: 1 44 | spriteExtrude: 1 45 | spriteMeshType: 1 46 | alignment: 0 47 | spritePivot: {x: 0.5, y: 0.5} 48 | spritePixelsToUnits: 1 49 | spriteBorder: {x: 3, y: 3, z: 3, w: 3} 50 | spriteGenerateFallbackPhysicsShape: 1 51 | alphaUsage: 1 52 | alphaIsTransparency: 1 53 | spriteTessellationDetail: -1 54 | textureType: 8 55 | textureShape: 1 56 | singleChannelComponent: 0 57 | maxTextureSizeSet: 0 58 | compressionQualitySet: 0 59 | textureFormatSet: 0 60 | platformSettings: 61 | - serializedVersion: 2 62 | buildTarget: DefaultTexturePlatform 63 | maxTextureSize: 2048 64 | resizeAlgorithm: 0 65 | textureFormat: -1 66 | textureCompression: 1 67 | compressionQuality: 50 68 | crunchedCompression: 0 69 | allowsAlphaSplitting: 0 70 | overridden: 0 71 | androidETC2FallbackOverride: 0 72 | - serializedVersion: 2 73 | buildTarget: Standalone 74 | maxTextureSize: 2048 75 | resizeAlgorithm: 0 76 | textureFormat: -1 77 | textureCompression: 1 78 | compressionQuality: 50 79 | crunchedCompression: 0 80 | allowsAlphaSplitting: 0 81 | overridden: 0 82 | androidETC2FallbackOverride: 0 83 | spriteSheet: 84 | serializedVersion: 2 85 | sprites: [] 86 | outline: [] 87 | physicsShape: [] 88 | bones: [] 89 | spriteID: 5c4675cd82c1ffa4d8460da5172b59f7 90 | vertices: [] 91 | indices: 92 | edges: [] 93 | weights: [] 94 | spritePackingTag: 95 | pSDRemoveMatte: 0 96 | pSDShowRemoveMatteOption: 0 97 | userData: 98 | assetBundleName: 99 | assetBundleVariant: 100 | -------------------------------------------------------------------------------- /Editor/Resources/SSI/Textures/ColorIcon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/VRLabs/Simple-Shader-Inspectors/e5fc9aadf5347946f5d452f1075e49017d9ebae9/Editor/Resources/SSI/Textures/ColorIcon.png -------------------------------------------------------------------------------- /Editor/Resources/SSI/Textures/ColorIcon.png.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: e6bb2e635bebe9e49bb5b59762639113 3 | TextureImporter: 4 | fileIDToRecycleName: {} 5 | externalObjects: {} 6 | serializedVersion: 9 7 | mipmaps: 8 | mipMapMode: 0 9 | enableMipMap: 0 10 | sRGBTexture: 1 11 | linearTexture: 0 12 | fadeOut: 0 13 | borderMipMap: 0 14 | mipMapsPreserveCoverage: 0 15 | alphaTestReferenceValue: 0.5 16 | mipMapFadeDistanceStart: 1 17 | mipMapFadeDistanceEnd: 3 18 | bumpmap: 19 | convertToNormalMap: 0 20 | externalNormalMap: 0 21 | heightScale: 0.25 22 | normalMapFilter: 0 23 | isReadable: 0 24 | streamingMipmaps: 0 25 | streamingMipmapsPriority: 0 26 | grayScaleToAlpha: 0 27 | generateCubemap: 6 28 | cubemapConvolution: 0 29 | seamlessCubemap: 0 30 | textureFormat: 1 31 | maxTextureSize: 2048 32 | textureSettings: 33 | serializedVersion: 2 34 | filterMode: -1 35 | aniso: -1 36 | mipBias: -100 37 | wrapU: 1 38 | wrapV: 1 39 | wrapW: -1 40 | nPOTScale: 0 41 | lightmap: 0 42 | compressionQuality: 50 43 | spriteMode: 1 44 | spriteExtrude: 1 45 | spriteMeshType: 1 46 | alignment: 0 47 | spritePivot: {x: 0.5, y: 0.5} 48 | spritePixelsToUnits: 100 49 | spriteBorder: {x: 0, y: 0, z: 0, w: 0} 50 | spriteGenerateFallbackPhysicsShape: 1 51 | alphaUsage: 1 52 | alphaIsTransparency: 1 53 | spriteTessellationDetail: -1 54 | textureType: 8 55 | textureShape: 1 56 | singleChannelComponent: 0 57 | maxTextureSizeSet: 0 58 | compressionQualitySet: 0 59 | textureFormatSet: 0 60 | platformSettings: 61 | - serializedVersion: 2 62 | buildTarget: DefaultTexturePlatform 63 | maxTextureSize: 2048 64 | resizeAlgorithm: 0 65 | textureFormat: -1 66 | textureCompression: 1 67 | compressionQuality: 50 68 | crunchedCompression: 0 69 | allowsAlphaSplitting: 0 70 | overridden: 0 71 | androidETC2FallbackOverride: 0 72 | - serializedVersion: 2 73 | buildTarget: Standalone 74 | maxTextureSize: 2048 75 | resizeAlgorithm: 0 76 | textureFormat: -1 77 | textureCompression: 1 78 | compressionQuality: 50 79 | crunchedCompression: 0 80 | allowsAlphaSplitting: 0 81 | overridden: 0 82 | androidETC2FallbackOverride: 0 83 | spriteSheet: 84 | serializedVersion: 2 85 | sprites: [] 86 | outline: [] 87 | physicsShape: [] 88 | bones: [] 89 | spriteID: 89ebf37bb9334d2439caa7ac0b3271b4 90 | vertices: [] 91 | indices: 92 | edges: [] 93 | weights: [] 94 | spritePackingTag: 95 | pSDRemoveMatte: 0 96 | pSDShowRemoveMatteOption: 0 97 | userData: 98 | assetBundleName: 99 | assetBundleVariant: 100 | -------------------------------------------------------------------------------- /Editor/Resources/SSI/Textures/ColorIconBorder.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/VRLabs/Simple-Shader-Inspectors/e5fc9aadf5347946f5d452f1075e49017d9ebae9/Editor/Resources/SSI/Textures/ColorIconBorder.png -------------------------------------------------------------------------------- /Editor/Resources/SSI/Textures/ColorIconBorder.png.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: e72a7af8f85e70946a71f85d73791769 3 | TextureImporter: 4 | fileIDToRecycleName: {} 5 | externalObjects: {} 6 | serializedVersion: 9 7 | mipmaps: 8 | mipMapMode: 0 9 | enableMipMap: 0 10 | sRGBTexture: 1 11 | linearTexture: 0 12 | fadeOut: 0 13 | borderMipMap: 0 14 | mipMapsPreserveCoverage: 0 15 | alphaTestReferenceValue: 0.5 16 | mipMapFadeDistanceStart: 1 17 | mipMapFadeDistanceEnd: 3 18 | bumpmap: 19 | convertToNormalMap: 0 20 | externalNormalMap: 0 21 | heightScale: 0.25 22 | normalMapFilter: 0 23 | isReadable: 0 24 | streamingMipmaps: 0 25 | streamingMipmapsPriority: 0 26 | grayScaleToAlpha: 0 27 | generateCubemap: 6 28 | cubemapConvolution: 0 29 | seamlessCubemap: 0 30 | textureFormat: 1 31 | maxTextureSize: 2048 32 | textureSettings: 33 | serializedVersion: 2 34 | filterMode: -1 35 | aniso: -1 36 | mipBias: -100 37 | wrapU: 1 38 | wrapV: 1 39 | wrapW: -1 40 | nPOTScale: 0 41 | lightmap: 0 42 | compressionQuality: 50 43 | spriteMode: 1 44 | spriteExtrude: 1 45 | spriteMeshType: 1 46 | alignment: 0 47 | spritePivot: {x: 0.5, y: 0.5} 48 | spritePixelsToUnits: 100 49 | spriteBorder: {x: 0, y: 0, z: 0, w: 0} 50 | spriteGenerateFallbackPhysicsShape: 1 51 | alphaUsage: 1 52 | alphaIsTransparency: 1 53 | spriteTessellationDetail: -1 54 | textureType: 8 55 | textureShape: 1 56 | singleChannelComponent: 0 57 | maxTextureSizeSet: 0 58 | compressionQualitySet: 0 59 | textureFormatSet: 0 60 | platformSettings: 61 | - serializedVersion: 2 62 | buildTarget: DefaultTexturePlatform 63 | maxTextureSize: 2048 64 | resizeAlgorithm: 0 65 | textureFormat: -1 66 | textureCompression: 1 67 | compressionQuality: 50 68 | crunchedCompression: 0 69 | allowsAlphaSplitting: 0 70 | overridden: 0 71 | androidETC2FallbackOverride: 0 72 | - serializedVersion: 2 73 | buildTarget: Standalone 74 | maxTextureSize: 2048 75 | resizeAlgorithm: 0 76 | textureFormat: -1 77 | textureCompression: 1 78 | compressionQuality: 50 79 | crunchedCompression: 0 80 | allowsAlphaSplitting: 0 81 | overridden: 0 82 | androidETC2FallbackOverride: 0 83 | spriteSheet: 84 | serializedVersion: 2 85 | sprites: [] 86 | outline: [] 87 | physicsShape: [] 88 | bones: [] 89 | spriteID: 46ecc281323c0b94f94eca0e774d2d31 90 | vertices: [] 91 | indices: 92 | edges: [] 93 | weights: [] 94 | spritePackingTag: 95 | pSDRemoveMatte: 0 96 | pSDShowRemoveMatteOption: 0 97 | userData: 98 | assetBundleName: 99 | assetBundleVariant: 100 | -------------------------------------------------------------------------------- /Editor/Resources/SSI/Textures/ColorIconBorderSelected.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/VRLabs/Simple-Shader-Inspectors/e5fc9aadf5347946f5d452f1075e49017d9ebae9/Editor/Resources/SSI/Textures/ColorIconBorderSelected.png -------------------------------------------------------------------------------- /Editor/Resources/SSI/Textures/ColorIconBorderSelected.png.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 0007e1ba2b222564d8001fd2a0439d5c 3 | TextureImporter: 4 | fileIDToRecycleName: {} 5 | externalObjects: {} 6 | serializedVersion: 9 7 | mipmaps: 8 | mipMapMode: 0 9 | enableMipMap: 0 10 | sRGBTexture: 1 11 | linearTexture: 0 12 | fadeOut: 0 13 | borderMipMap: 0 14 | mipMapsPreserveCoverage: 0 15 | alphaTestReferenceValue: 0.5 16 | mipMapFadeDistanceStart: 1 17 | mipMapFadeDistanceEnd: 3 18 | bumpmap: 19 | convertToNormalMap: 0 20 | externalNormalMap: 0 21 | heightScale: 0.25 22 | normalMapFilter: 0 23 | isReadable: 0 24 | streamingMipmaps: 0 25 | streamingMipmapsPriority: 0 26 | grayScaleToAlpha: 0 27 | generateCubemap: 6 28 | cubemapConvolution: 0 29 | seamlessCubemap: 0 30 | textureFormat: 1 31 | maxTextureSize: 2048 32 | textureSettings: 33 | serializedVersion: 2 34 | filterMode: -1 35 | aniso: -1 36 | mipBias: -100 37 | wrapU: 1 38 | wrapV: 1 39 | wrapW: -1 40 | nPOTScale: 0 41 | lightmap: 0 42 | compressionQuality: 50 43 | spriteMode: 1 44 | spriteExtrude: 1 45 | spriteMeshType: 1 46 | alignment: 0 47 | spritePivot: {x: 0.5, y: 0.5} 48 | spritePixelsToUnits: 100 49 | spriteBorder: {x: 0, y: 0, z: 0, w: 0} 50 | spriteGenerateFallbackPhysicsShape: 1 51 | alphaUsage: 1 52 | alphaIsTransparency: 1 53 | spriteTessellationDetail: -1 54 | textureType: 8 55 | textureShape: 1 56 | singleChannelComponent: 0 57 | maxTextureSizeSet: 0 58 | compressionQualitySet: 0 59 | textureFormatSet: 0 60 | platformSettings: 61 | - serializedVersion: 2 62 | buildTarget: DefaultTexturePlatform 63 | maxTextureSize: 2048 64 | resizeAlgorithm: 0 65 | textureFormat: -1 66 | textureCompression: 1 67 | compressionQuality: 50 68 | crunchedCompression: 0 69 | allowsAlphaSplitting: 0 70 | overridden: 0 71 | androidETC2FallbackOverride: 0 72 | - serializedVersion: 2 73 | buildTarget: Standalone 74 | maxTextureSize: 2048 75 | resizeAlgorithm: 0 76 | textureFormat: -1 77 | textureCompression: 1 78 | compressionQuality: 50 79 | crunchedCompression: 0 80 | allowsAlphaSplitting: 0 81 | overridden: 0 82 | androidETC2FallbackOverride: 0 83 | spriteSheet: 84 | serializedVersion: 2 85 | sprites: [] 86 | outline: [] 87 | physicsShape: [] 88 | bones: [] 89 | spriteID: 4fdc9cf26a7e83745bbcb8c71044b80f 90 | vertices: [] 91 | indices: 92 | edges: [] 93 | weights: [] 94 | spritePackingTag: 95 | pSDRemoveMatte: 0 96 | pSDShowRemoveMatteOption: 0 97 | userData: 98 | assetBundleName: 99 | assetBundleVariant: 100 | -------------------------------------------------------------------------------- /Editor/Resources/SSI/Textures/DeleteIcon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/VRLabs/Simple-Shader-Inspectors/e5fc9aadf5347946f5d452f1075e49017d9ebae9/Editor/Resources/SSI/Textures/DeleteIcon.png -------------------------------------------------------------------------------- /Editor/Resources/SSI/Textures/DeleteIcon.png.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: bc1623444d2628945aa5b3ae919e3acc 3 | TextureImporter: 4 | fileIDToRecycleName: {} 5 | externalObjects: {} 6 | serializedVersion: 9 7 | mipmaps: 8 | mipMapMode: 0 9 | enableMipMap: 0 10 | sRGBTexture: 1 11 | linearTexture: 0 12 | fadeOut: 0 13 | borderMipMap: 0 14 | mipMapsPreserveCoverage: 0 15 | alphaTestReferenceValue: 0.5 16 | mipMapFadeDistanceStart: 1 17 | mipMapFadeDistanceEnd: 3 18 | bumpmap: 19 | convertToNormalMap: 0 20 | externalNormalMap: 0 21 | heightScale: 0.25 22 | normalMapFilter: 0 23 | isReadable: 0 24 | streamingMipmaps: 0 25 | streamingMipmapsPriority: 0 26 | grayScaleToAlpha: 0 27 | generateCubemap: 6 28 | cubemapConvolution: 0 29 | seamlessCubemap: 0 30 | textureFormat: 1 31 | maxTextureSize: 2048 32 | textureSettings: 33 | serializedVersion: 2 34 | filterMode: -1 35 | aniso: -1 36 | mipBias: -100 37 | wrapU: 1 38 | wrapV: 1 39 | wrapW: -1 40 | nPOTScale: 0 41 | lightmap: 0 42 | compressionQuality: 50 43 | spriteMode: 1 44 | spriteExtrude: 1 45 | spriteMeshType: 1 46 | alignment: 0 47 | spritePivot: {x: 0.5, y: 0.5} 48 | spritePixelsToUnits: 100 49 | spriteBorder: {x: 0, y: 0, z: 0, w: 0} 50 | spriteGenerateFallbackPhysicsShape: 1 51 | alphaUsage: 1 52 | alphaIsTransparency: 1 53 | spriteTessellationDetail: -1 54 | textureType: 8 55 | textureShape: 1 56 | singleChannelComponent: 0 57 | maxTextureSizeSet: 0 58 | compressionQualitySet: 0 59 | textureFormatSet: 0 60 | platformSettings: 61 | - serializedVersion: 2 62 | buildTarget: DefaultTexturePlatform 63 | maxTextureSize: 2048 64 | resizeAlgorithm: 0 65 | textureFormat: -1 66 | textureCompression: 1 67 | compressionQuality: 50 68 | crunchedCompression: 0 69 | allowsAlphaSplitting: 0 70 | overridden: 0 71 | androidETC2FallbackOverride: 0 72 | - serializedVersion: 2 73 | buildTarget: Standalone 74 | maxTextureSize: 2048 75 | resizeAlgorithm: 0 76 | textureFormat: -1 77 | textureCompression: 1 78 | compressionQuality: 50 79 | crunchedCompression: 0 80 | allowsAlphaSplitting: 0 81 | overridden: 0 82 | androidETC2FallbackOverride: 0 83 | spriteSheet: 84 | serializedVersion: 2 85 | sprites: [] 86 | outline: [] 87 | physicsShape: [] 88 | bones: [] 89 | spriteID: 0827e5ec443b8144ea020fe2ec8813fe 90 | vertices: [] 91 | indices: 92 | edges: [] 93 | weights: [] 94 | spritePackingTag: 95 | pSDRemoveMatte: 0 96 | pSDShowRemoveMatteOption: 0 97 | userData: 98 | assetBundleName: 99 | assetBundleVariant: 100 | -------------------------------------------------------------------------------- /Editor/Resources/SSI/Textures/DeleteIconHover.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/VRLabs/Simple-Shader-Inspectors/e5fc9aadf5347946f5d452f1075e49017d9ebae9/Editor/Resources/SSI/Textures/DeleteIconHover.png -------------------------------------------------------------------------------- /Editor/Resources/SSI/Textures/DeleteIconHover.png.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: cf94e5619d59ecd429e3ea334250b779 3 | TextureImporter: 4 | fileIDToRecycleName: {} 5 | externalObjects: {} 6 | serializedVersion: 9 7 | mipmaps: 8 | mipMapMode: 0 9 | enableMipMap: 0 10 | sRGBTexture: 1 11 | linearTexture: 0 12 | fadeOut: 0 13 | borderMipMap: 0 14 | mipMapsPreserveCoverage: 0 15 | alphaTestReferenceValue: 0.5 16 | mipMapFadeDistanceStart: 1 17 | mipMapFadeDistanceEnd: 3 18 | bumpmap: 19 | convertToNormalMap: 0 20 | externalNormalMap: 0 21 | heightScale: 0.25 22 | normalMapFilter: 0 23 | isReadable: 0 24 | streamingMipmaps: 0 25 | streamingMipmapsPriority: 0 26 | grayScaleToAlpha: 0 27 | generateCubemap: 6 28 | cubemapConvolution: 0 29 | seamlessCubemap: 0 30 | textureFormat: 1 31 | maxTextureSize: 2048 32 | textureSettings: 33 | serializedVersion: 2 34 | filterMode: -1 35 | aniso: -1 36 | mipBias: -100 37 | wrapU: 1 38 | wrapV: 1 39 | wrapW: -1 40 | nPOTScale: 0 41 | lightmap: 0 42 | compressionQuality: 50 43 | spriteMode: 1 44 | spriteExtrude: 1 45 | spriteMeshType: 1 46 | alignment: 0 47 | spritePivot: {x: 0.5, y: 0.5} 48 | spritePixelsToUnits: 100 49 | spriteBorder: {x: 0, y: 0, z: 0, w: 0} 50 | spriteGenerateFallbackPhysicsShape: 1 51 | alphaUsage: 1 52 | alphaIsTransparency: 1 53 | spriteTessellationDetail: -1 54 | textureType: 8 55 | textureShape: 1 56 | singleChannelComponent: 0 57 | maxTextureSizeSet: 0 58 | compressionQualitySet: 0 59 | textureFormatSet: 0 60 | platformSettings: 61 | - serializedVersion: 2 62 | buildTarget: DefaultTexturePlatform 63 | maxTextureSize: 2048 64 | resizeAlgorithm: 0 65 | textureFormat: -1 66 | textureCompression: 1 67 | compressionQuality: 50 68 | crunchedCompression: 0 69 | allowsAlphaSplitting: 0 70 | overridden: 0 71 | androidETC2FallbackOverride: 0 72 | - serializedVersion: 2 73 | buildTarget: Standalone 74 | maxTextureSize: 2048 75 | resizeAlgorithm: 0 76 | textureFormat: -1 77 | textureCompression: 1 78 | compressionQuality: 50 79 | crunchedCompression: 0 80 | allowsAlphaSplitting: 0 81 | overridden: 0 82 | androidETC2FallbackOverride: 0 83 | spriteSheet: 84 | serializedVersion: 2 85 | sprites: [] 86 | outline: [] 87 | physicsShape: [] 88 | bones: [] 89 | spriteID: 26f62c585f1e6c044be2f07b0a84cc89 90 | vertices: [] 91 | indices: 92 | edges: [] 93 | weights: [] 94 | spritePackingTag: 95 | pSDRemoveMatte: 0 96 | pSDShowRemoveMatteOption: 0 97 | userData: 98 | assetBundleName: 99 | assetBundleVariant: 100 | -------------------------------------------------------------------------------- /Editor/Resources/SSI/Textures/DeleteIconPressed.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/VRLabs/Simple-Shader-Inspectors/e5fc9aadf5347946f5d452f1075e49017d9ebae9/Editor/Resources/SSI/Textures/DeleteIconPressed.png -------------------------------------------------------------------------------- /Editor/Resources/SSI/Textures/DeleteIconPressed.png.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 34d5eeb4197f9024c95a328450ae649f 3 | TextureImporter: 4 | fileIDToRecycleName: {} 5 | externalObjects: {} 6 | serializedVersion: 9 7 | mipmaps: 8 | mipMapMode: 0 9 | enableMipMap: 0 10 | sRGBTexture: 1 11 | linearTexture: 0 12 | fadeOut: 0 13 | borderMipMap: 0 14 | mipMapsPreserveCoverage: 0 15 | alphaTestReferenceValue: 0.5 16 | mipMapFadeDistanceStart: 1 17 | mipMapFadeDistanceEnd: 3 18 | bumpmap: 19 | convertToNormalMap: 0 20 | externalNormalMap: 0 21 | heightScale: 0.25 22 | normalMapFilter: 0 23 | isReadable: 0 24 | streamingMipmaps: 0 25 | streamingMipmapsPriority: 0 26 | grayScaleToAlpha: 0 27 | generateCubemap: 6 28 | cubemapConvolution: 0 29 | seamlessCubemap: 0 30 | textureFormat: 1 31 | maxTextureSize: 2048 32 | textureSettings: 33 | serializedVersion: 2 34 | filterMode: -1 35 | aniso: -1 36 | mipBias: -100 37 | wrapU: 1 38 | wrapV: 1 39 | wrapW: -1 40 | nPOTScale: 0 41 | lightmap: 0 42 | compressionQuality: 50 43 | spriteMode: 1 44 | spriteExtrude: 1 45 | spriteMeshType: 1 46 | alignment: 0 47 | spritePivot: {x: 0.5, y: 0.5} 48 | spritePixelsToUnits: 100 49 | spriteBorder: {x: 0, y: 0, z: 0, w: 0} 50 | spriteGenerateFallbackPhysicsShape: 1 51 | alphaUsage: 1 52 | alphaIsTransparency: 1 53 | spriteTessellationDetail: -1 54 | textureType: 8 55 | textureShape: 1 56 | singleChannelComponent: 0 57 | maxTextureSizeSet: 0 58 | compressionQualitySet: 0 59 | textureFormatSet: 0 60 | platformSettings: 61 | - serializedVersion: 2 62 | buildTarget: DefaultTexturePlatform 63 | maxTextureSize: 2048 64 | resizeAlgorithm: 0 65 | textureFormat: -1 66 | textureCompression: 1 67 | compressionQuality: 50 68 | crunchedCompression: 0 69 | allowsAlphaSplitting: 0 70 | overridden: 0 71 | androidETC2FallbackOverride: 0 72 | - serializedVersion: 2 73 | buildTarget: Standalone 74 | maxTextureSize: 2048 75 | resizeAlgorithm: 0 76 | textureFormat: -1 77 | textureCompression: 1 78 | compressionQuality: 50 79 | crunchedCompression: 0 80 | allowsAlphaSplitting: 0 81 | overridden: 0 82 | androidETC2FallbackOverride: 0 83 | spriteSheet: 84 | serializedVersion: 2 85 | sprites: [] 86 | outline: [] 87 | physicsShape: [] 88 | bones: [] 89 | spriteID: 9b9c59b775f690a43a7ea0b01b3c7ab9 90 | vertices: [] 91 | indices: 92 | edges: [] 93 | weights: [] 94 | spritePackingTag: 95 | pSDRemoveMatte: 0 96 | pSDShowRemoveMatteOption: 0 97 | userData: 98 | assetBundleName: 99 | assetBundleVariant: 100 | -------------------------------------------------------------------------------- /Editor/Resources/SSI/Textures/DownIcon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/VRLabs/Simple-Shader-Inspectors/e5fc9aadf5347946f5d452f1075e49017d9ebae9/Editor/Resources/SSI/Textures/DownIcon.png -------------------------------------------------------------------------------- /Editor/Resources/SSI/Textures/DownIcon.png.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: a9ff4e739ed475f43bb7cf0bf7b60f5d 3 | TextureImporter: 4 | fileIDToRecycleName: {} 5 | externalObjects: {} 6 | serializedVersion: 9 7 | mipmaps: 8 | mipMapMode: 0 9 | enableMipMap: 0 10 | sRGBTexture: 1 11 | linearTexture: 0 12 | fadeOut: 0 13 | borderMipMap: 0 14 | mipMapsPreserveCoverage: 0 15 | alphaTestReferenceValue: 0.5 16 | mipMapFadeDistanceStart: 1 17 | mipMapFadeDistanceEnd: 3 18 | bumpmap: 19 | convertToNormalMap: 0 20 | externalNormalMap: 0 21 | heightScale: 0.25 22 | normalMapFilter: 0 23 | isReadable: 0 24 | streamingMipmaps: 0 25 | streamingMipmapsPriority: 0 26 | grayScaleToAlpha: 0 27 | generateCubemap: 6 28 | cubemapConvolution: 0 29 | seamlessCubemap: 0 30 | textureFormat: 1 31 | maxTextureSize: 2048 32 | textureSettings: 33 | serializedVersion: 2 34 | filterMode: -1 35 | aniso: -1 36 | mipBias: -100 37 | wrapU: 1 38 | wrapV: 1 39 | wrapW: -1 40 | nPOTScale: 0 41 | lightmap: 0 42 | compressionQuality: 50 43 | spriteMode: 1 44 | spriteExtrude: 1 45 | spriteMeshType: 1 46 | alignment: 0 47 | spritePivot: {x: 0.5, y: 0.5} 48 | spritePixelsToUnits: 100 49 | spriteBorder: {x: 0, y: 0, z: 0, w: 0} 50 | spriteGenerateFallbackPhysicsShape: 1 51 | alphaUsage: 1 52 | alphaIsTransparency: 1 53 | spriteTessellationDetail: -1 54 | textureType: 8 55 | textureShape: 1 56 | singleChannelComponent: 0 57 | maxTextureSizeSet: 0 58 | compressionQualitySet: 0 59 | textureFormatSet: 0 60 | platformSettings: 61 | - serializedVersion: 2 62 | buildTarget: DefaultTexturePlatform 63 | maxTextureSize: 2048 64 | resizeAlgorithm: 0 65 | textureFormat: -1 66 | textureCompression: 1 67 | compressionQuality: 50 68 | crunchedCompression: 0 69 | allowsAlphaSplitting: 0 70 | overridden: 0 71 | androidETC2FallbackOverride: 0 72 | - serializedVersion: 2 73 | buildTarget: Standalone 74 | maxTextureSize: 2048 75 | resizeAlgorithm: 0 76 | textureFormat: -1 77 | textureCompression: 1 78 | compressionQuality: 50 79 | crunchedCompression: 0 80 | allowsAlphaSplitting: 0 81 | overridden: 0 82 | androidETC2FallbackOverride: 0 83 | spriteSheet: 84 | serializedVersion: 2 85 | sprites: [] 86 | outline: [] 87 | physicsShape: [] 88 | bones: [] 89 | spriteID: a88766b5da5a323409ad96abe3d7ced2 90 | vertices: [] 91 | indices: 92 | edges: [] 93 | weights: [] 94 | spritePackingTag: 95 | pSDRemoveMatte: 0 96 | pSDShowRemoveMatteOption: 0 97 | userData: 98 | assetBundleName: 99 | assetBundleVariant: 100 | -------------------------------------------------------------------------------- /Editor/Resources/SSI/Textures/DownIconHover.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/VRLabs/Simple-Shader-Inspectors/e5fc9aadf5347946f5d452f1075e49017d9ebae9/Editor/Resources/SSI/Textures/DownIconHover.png -------------------------------------------------------------------------------- /Editor/Resources/SSI/Textures/DownIconHover.png.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: d26f08438135b884d8799e701ef8a0ff 3 | TextureImporter: 4 | fileIDToRecycleName: {} 5 | externalObjects: {} 6 | serializedVersion: 9 7 | mipmaps: 8 | mipMapMode: 0 9 | enableMipMap: 0 10 | sRGBTexture: 1 11 | linearTexture: 0 12 | fadeOut: 0 13 | borderMipMap: 0 14 | mipMapsPreserveCoverage: 0 15 | alphaTestReferenceValue: 0.5 16 | mipMapFadeDistanceStart: 1 17 | mipMapFadeDistanceEnd: 3 18 | bumpmap: 19 | convertToNormalMap: 0 20 | externalNormalMap: 0 21 | heightScale: 0.25 22 | normalMapFilter: 0 23 | isReadable: 0 24 | streamingMipmaps: 0 25 | streamingMipmapsPriority: 0 26 | grayScaleToAlpha: 0 27 | generateCubemap: 6 28 | cubemapConvolution: 0 29 | seamlessCubemap: 0 30 | textureFormat: 1 31 | maxTextureSize: 2048 32 | textureSettings: 33 | serializedVersion: 2 34 | filterMode: -1 35 | aniso: -1 36 | mipBias: -100 37 | wrapU: 1 38 | wrapV: 1 39 | wrapW: -1 40 | nPOTScale: 0 41 | lightmap: 0 42 | compressionQuality: 50 43 | spriteMode: 1 44 | spriteExtrude: 1 45 | spriteMeshType: 1 46 | alignment: 0 47 | spritePivot: {x: 0.5, y: 0.5} 48 | spritePixelsToUnits: 100 49 | spriteBorder: {x: 0, y: 0, z: 0, w: 0} 50 | spriteGenerateFallbackPhysicsShape: 1 51 | alphaUsage: 1 52 | alphaIsTransparency: 1 53 | spriteTessellationDetail: -1 54 | textureType: 8 55 | textureShape: 1 56 | singleChannelComponent: 0 57 | maxTextureSizeSet: 0 58 | compressionQualitySet: 0 59 | textureFormatSet: 0 60 | platformSettings: 61 | - serializedVersion: 2 62 | buildTarget: DefaultTexturePlatform 63 | maxTextureSize: 2048 64 | resizeAlgorithm: 0 65 | textureFormat: -1 66 | textureCompression: 1 67 | compressionQuality: 50 68 | crunchedCompression: 0 69 | allowsAlphaSplitting: 0 70 | overridden: 0 71 | androidETC2FallbackOverride: 0 72 | - serializedVersion: 2 73 | buildTarget: Standalone 74 | maxTextureSize: 2048 75 | resizeAlgorithm: 0 76 | textureFormat: -1 77 | textureCompression: 1 78 | compressionQuality: 50 79 | crunchedCompression: 0 80 | allowsAlphaSplitting: 0 81 | overridden: 0 82 | androidETC2FallbackOverride: 0 83 | spriteSheet: 84 | serializedVersion: 2 85 | sprites: [] 86 | outline: [] 87 | physicsShape: [] 88 | bones: [] 89 | spriteID: f8d9dc0a0070030488eae4ede9e57604 90 | vertices: [] 91 | indices: 92 | edges: [] 93 | weights: [] 94 | spritePackingTag: 95 | pSDRemoveMatte: 0 96 | pSDShowRemoveMatteOption: 0 97 | userData: 98 | assetBundleName: 99 | assetBundleVariant: 100 | -------------------------------------------------------------------------------- /Editor/Resources/SSI/Textures/DownIconPressed.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/VRLabs/Simple-Shader-Inspectors/e5fc9aadf5347946f5d452f1075e49017d9ebae9/Editor/Resources/SSI/Textures/DownIconPressed.png -------------------------------------------------------------------------------- /Editor/Resources/SSI/Textures/DownIconPressed.png.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: d96d5cd504c115b43b09c754057501c0 3 | TextureImporter: 4 | fileIDToRecycleName: {} 5 | externalObjects: {} 6 | serializedVersion: 9 7 | mipmaps: 8 | mipMapMode: 0 9 | enableMipMap: 0 10 | sRGBTexture: 1 11 | linearTexture: 0 12 | fadeOut: 0 13 | borderMipMap: 0 14 | mipMapsPreserveCoverage: 0 15 | alphaTestReferenceValue: 0.5 16 | mipMapFadeDistanceStart: 1 17 | mipMapFadeDistanceEnd: 3 18 | bumpmap: 19 | convertToNormalMap: 0 20 | externalNormalMap: 0 21 | heightScale: 0.25 22 | normalMapFilter: 0 23 | isReadable: 0 24 | streamingMipmaps: 0 25 | streamingMipmapsPriority: 0 26 | grayScaleToAlpha: 0 27 | generateCubemap: 6 28 | cubemapConvolution: 0 29 | seamlessCubemap: 0 30 | textureFormat: 1 31 | maxTextureSize: 2048 32 | textureSettings: 33 | serializedVersion: 2 34 | filterMode: -1 35 | aniso: -1 36 | mipBias: -100 37 | wrapU: 1 38 | wrapV: 1 39 | wrapW: -1 40 | nPOTScale: 0 41 | lightmap: 0 42 | compressionQuality: 50 43 | spriteMode: 1 44 | spriteExtrude: 1 45 | spriteMeshType: 1 46 | alignment: 0 47 | spritePivot: {x: 0.5, y: 0.5} 48 | spritePixelsToUnits: 100 49 | spriteBorder: {x: 0, y: 0, z: 0, w: 0} 50 | spriteGenerateFallbackPhysicsShape: 1 51 | alphaUsage: 1 52 | alphaIsTransparency: 1 53 | spriteTessellationDetail: -1 54 | textureType: 8 55 | textureShape: 1 56 | singleChannelComponent: 0 57 | maxTextureSizeSet: 0 58 | compressionQualitySet: 0 59 | textureFormatSet: 0 60 | platformSettings: 61 | - serializedVersion: 2 62 | buildTarget: DefaultTexturePlatform 63 | maxTextureSize: 2048 64 | resizeAlgorithm: 0 65 | textureFormat: -1 66 | textureCompression: 1 67 | compressionQuality: 50 68 | crunchedCompression: 0 69 | allowsAlphaSplitting: 0 70 | overridden: 0 71 | androidETC2FallbackOverride: 0 72 | - serializedVersion: 2 73 | buildTarget: Standalone 74 | maxTextureSize: 2048 75 | resizeAlgorithm: 0 76 | textureFormat: -1 77 | textureCompression: 1 78 | compressionQuality: 50 79 | crunchedCompression: 0 80 | allowsAlphaSplitting: 0 81 | overridden: 0 82 | androidETC2FallbackOverride: 0 83 | spriteSheet: 84 | serializedVersion: 2 85 | sprites: [] 86 | outline: [] 87 | physicsShape: [] 88 | bones: [] 89 | spriteID: 1a2912532d334944e90a19a584b95463 90 | vertices: [] 91 | indices: 92 | edges: [] 93 | weights: [] 94 | spritePackingTag: 95 | pSDRemoveMatte: 0 96 | pSDShowRemoveMatteOption: 0 97 | userData: 98 | assetBundleName: 99 | assetBundleVariant: 100 | -------------------------------------------------------------------------------- /Editor/Resources/SSI/Textures/GearIcon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/VRLabs/Simple-Shader-Inspectors/e5fc9aadf5347946f5d452f1075e49017d9ebae9/Editor/Resources/SSI/Textures/GearIcon.png -------------------------------------------------------------------------------- /Editor/Resources/SSI/Textures/GearIcon.png.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 29bf05ef08571a54a92e22758172e93f 3 | TextureImporter: 4 | fileIDToRecycleName: {} 5 | externalObjects: {} 6 | serializedVersion: 9 7 | mipmaps: 8 | mipMapMode: 0 9 | enableMipMap: 0 10 | sRGBTexture: 1 11 | linearTexture: 0 12 | fadeOut: 0 13 | borderMipMap: 0 14 | mipMapsPreserveCoverage: 0 15 | alphaTestReferenceValue: 0.5 16 | mipMapFadeDistanceStart: 1 17 | mipMapFadeDistanceEnd: 3 18 | bumpmap: 19 | convertToNormalMap: 0 20 | externalNormalMap: 0 21 | heightScale: 0.25 22 | normalMapFilter: 0 23 | isReadable: 0 24 | streamingMipmaps: 0 25 | streamingMipmapsPriority: 0 26 | grayScaleToAlpha: 0 27 | generateCubemap: 6 28 | cubemapConvolution: 0 29 | seamlessCubemap: 0 30 | textureFormat: 1 31 | maxTextureSize: 2048 32 | textureSettings: 33 | serializedVersion: 2 34 | filterMode: -1 35 | aniso: -1 36 | mipBias: -100 37 | wrapU: 1 38 | wrapV: 1 39 | wrapW: -1 40 | nPOTScale: 0 41 | lightmap: 0 42 | compressionQuality: 50 43 | spriteMode: 1 44 | spriteExtrude: 1 45 | spriteMeshType: 1 46 | alignment: 0 47 | spritePivot: {x: 0.5, y: 0.5} 48 | spritePixelsToUnits: 100 49 | spriteBorder: {x: 0, y: 0, z: 0, w: 0} 50 | spriteGenerateFallbackPhysicsShape: 1 51 | alphaUsage: 1 52 | alphaIsTransparency: 1 53 | spriteTessellationDetail: -1 54 | textureType: 8 55 | textureShape: 1 56 | singleChannelComponent: 0 57 | maxTextureSizeSet: 0 58 | compressionQualitySet: 0 59 | textureFormatSet: 0 60 | platformSettings: 61 | - serializedVersion: 2 62 | buildTarget: DefaultTexturePlatform 63 | maxTextureSize: 2048 64 | resizeAlgorithm: 0 65 | textureFormat: -1 66 | textureCompression: 1 67 | compressionQuality: 50 68 | crunchedCompression: 0 69 | allowsAlphaSplitting: 0 70 | overridden: 0 71 | androidETC2FallbackOverride: 0 72 | - serializedVersion: 2 73 | buildTarget: Standalone 74 | maxTextureSize: 2048 75 | resizeAlgorithm: 0 76 | textureFormat: -1 77 | textureCompression: 1 78 | compressionQuality: 50 79 | crunchedCompression: 0 80 | allowsAlphaSplitting: 0 81 | overridden: 0 82 | androidETC2FallbackOverride: 0 83 | spriteSheet: 84 | serializedVersion: 2 85 | sprites: [] 86 | outline: [] 87 | physicsShape: [] 88 | bones: [] 89 | spriteID: eab5e9345a7dc374583e3714a6da0a6d 90 | vertices: [] 91 | indices: 92 | edges: [] 93 | weights: [] 94 | spritePackingTag: 95 | pSDRemoveMatte: 0 96 | pSDShowRemoveMatteOption: 0 97 | userData: 98 | assetBundleName: 99 | assetBundleVariant: 100 | -------------------------------------------------------------------------------- /Editor/Resources/SSI/Textures/GearIconHover.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/VRLabs/Simple-Shader-Inspectors/e5fc9aadf5347946f5d452f1075e49017d9ebae9/Editor/Resources/SSI/Textures/GearIconHover.png -------------------------------------------------------------------------------- /Editor/Resources/SSI/Textures/GearIconHover.png.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 7efc941a07791f34da55f54847f1c655 3 | TextureImporter: 4 | fileIDToRecycleName: {} 5 | externalObjects: {} 6 | serializedVersion: 9 7 | mipmaps: 8 | mipMapMode: 0 9 | enableMipMap: 0 10 | sRGBTexture: 1 11 | linearTexture: 0 12 | fadeOut: 0 13 | borderMipMap: 0 14 | mipMapsPreserveCoverage: 0 15 | alphaTestReferenceValue: 0.5 16 | mipMapFadeDistanceStart: 1 17 | mipMapFadeDistanceEnd: 3 18 | bumpmap: 19 | convertToNormalMap: 0 20 | externalNormalMap: 0 21 | heightScale: 0.25 22 | normalMapFilter: 0 23 | isReadable: 0 24 | streamingMipmaps: 0 25 | streamingMipmapsPriority: 0 26 | grayScaleToAlpha: 0 27 | generateCubemap: 6 28 | cubemapConvolution: 0 29 | seamlessCubemap: 0 30 | textureFormat: 1 31 | maxTextureSize: 2048 32 | textureSettings: 33 | serializedVersion: 2 34 | filterMode: -1 35 | aniso: -1 36 | mipBias: -100 37 | wrapU: 1 38 | wrapV: 1 39 | wrapW: -1 40 | nPOTScale: 0 41 | lightmap: 0 42 | compressionQuality: 50 43 | spriteMode: 1 44 | spriteExtrude: 1 45 | spriteMeshType: 1 46 | alignment: 0 47 | spritePivot: {x: 0.5, y: 0.5} 48 | spritePixelsToUnits: 100 49 | spriteBorder: {x: 0, y: 0, z: 0, w: 0} 50 | spriteGenerateFallbackPhysicsShape: 1 51 | alphaUsage: 1 52 | alphaIsTransparency: 1 53 | spriteTessellationDetail: -1 54 | textureType: 8 55 | textureShape: 1 56 | singleChannelComponent: 0 57 | maxTextureSizeSet: 0 58 | compressionQualitySet: 0 59 | textureFormatSet: 0 60 | platformSettings: 61 | - serializedVersion: 2 62 | buildTarget: DefaultTexturePlatform 63 | maxTextureSize: 2048 64 | resizeAlgorithm: 0 65 | textureFormat: -1 66 | textureCompression: 1 67 | compressionQuality: 50 68 | crunchedCompression: 0 69 | allowsAlphaSplitting: 0 70 | overridden: 0 71 | androidETC2FallbackOverride: 0 72 | - serializedVersion: 2 73 | buildTarget: Standalone 74 | maxTextureSize: 2048 75 | resizeAlgorithm: 0 76 | textureFormat: -1 77 | textureCompression: 1 78 | compressionQuality: 50 79 | crunchedCompression: 0 80 | allowsAlphaSplitting: 0 81 | overridden: 0 82 | androidETC2FallbackOverride: 0 83 | spriteSheet: 84 | serializedVersion: 2 85 | sprites: [] 86 | outline: [] 87 | physicsShape: [] 88 | bones: [] 89 | spriteID: 3caa42606ef40df48a900d220ed3e70b 90 | vertices: [] 91 | indices: 92 | edges: [] 93 | weights: [] 94 | spritePackingTag: 95 | pSDRemoveMatte: 0 96 | pSDShowRemoveMatteOption: 0 97 | userData: 98 | assetBundleName: 99 | assetBundleVariant: 100 | -------------------------------------------------------------------------------- /Editor/Resources/SSI/Textures/GearIconPressed.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/VRLabs/Simple-Shader-Inspectors/e5fc9aadf5347946f5d452f1075e49017d9ebae9/Editor/Resources/SSI/Textures/GearIconPressed.png -------------------------------------------------------------------------------- /Editor/Resources/SSI/Textures/GearIconPressed.png.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 1395b856ff14e9d40a05f0c8a952ebfc 3 | TextureImporter: 4 | fileIDToRecycleName: {} 5 | externalObjects: {} 6 | serializedVersion: 9 7 | mipmaps: 8 | mipMapMode: 0 9 | enableMipMap: 0 10 | sRGBTexture: 1 11 | linearTexture: 0 12 | fadeOut: 0 13 | borderMipMap: 0 14 | mipMapsPreserveCoverage: 0 15 | alphaTestReferenceValue: 0.5 16 | mipMapFadeDistanceStart: 1 17 | mipMapFadeDistanceEnd: 3 18 | bumpmap: 19 | convertToNormalMap: 0 20 | externalNormalMap: 0 21 | heightScale: 0.25 22 | normalMapFilter: 0 23 | isReadable: 0 24 | streamingMipmaps: 0 25 | streamingMipmapsPriority: 0 26 | grayScaleToAlpha: 0 27 | generateCubemap: 6 28 | cubemapConvolution: 0 29 | seamlessCubemap: 0 30 | textureFormat: 1 31 | maxTextureSize: 2048 32 | textureSettings: 33 | serializedVersion: 2 34 | filterMode: -1 35 | aniso: -1 36 | mipBias: -100 37 | wrapU: 1 38 | wrapV: 1 39 | wrapW: -1 40 | nPOTScale: 0 41 | lightmap: 0 42 | compressionQuality: 50 43 | spriteMode: 1 44 | spriteExtrude: 1 45 | spriteMeshType: 1 46 | alignment: 0 47 | spritePivot: {x: 0.5, y: 0.5} 48 | spritePixelsToUnits: 100 49 | spriteBorder: {x: 0, y: 0, z: 0, w: 0} 50 | spriteGenerateFallbackPhysicsShape: 1 51 | alphaUsage: 1 52 | alphaIsTransparency: 1 53 | spriteTessellationDetail: -1 54 | textureType: 8 55 | textureShape: 1 56 | singleChannelComponent: 0 57 | maxTextureSizeSet: 0 58 | compressionQualitySet: 0 59 | textureFormatSet: 0 60 | platformSettings: 61 | - serializedVersion: 2 62 | buildTarget: DefaultTexturePlatform 63 | maxTextureSize: 2048 64 | resizeAlgorithm: 0 65 | textureFormat: -1 66 | textureCompression: 1 67 | compressionQuality: 50 68 | crunchedCompression: 0 69 | allowsAlphaSplitting: 0 70 | overridden: 0 71 | androidETC2FallbackOverride: 0 72 | - serializedVersion: 2 73 | buildTarget: Standalone 74 | maxTextureSize: 2048 75 | resizeAlgorithm: 0 76 | textureFormat: -1 77 | textureCompression: 1 78 | compressionQuality: 50 79 | crunchedCompression: 0 80 | allowsAlphaSplitting: 0 81 | overridden: 0 82 | androidETC2FallbackOverride: 0 83 | spriteSheet: 84 | serializedVersion: 2 85 | sprites: [] 86 | outline: [] 87 | physicsShape: [] 88 | bones: [] 89 | spriteID: 21c84491cb684d14db69af6dd452dce2 90 | vertices: [] 91 | indices: 92 | edges: [] 93 | weights: [] 94 | spritePackingTag: 95 | pSDRemoveMatte: 0 96 | pSDShowRemoveMatteOption: 0 97 | userData: 98 | assetBundleName: 99 | assetBundleVariant: 100 | -------------------------------------------------------------------------------- /Editor/Resources/SSI/Textures/Logo.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 25df7d9f5c87bc74ea1b8bb6ebf03541 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Editor/Resources/SSI/Textures/Logo/Logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/VRLabs/Simple-Shader-Inspectors/e5fc9aadf5347946f5d452f1075e49017d9ebae9/Editor/Resources/SSI/Textures/Logo/Logo.png -------------------------------------------------------------------------------- /Editor/Resources/SSI/Textures/Logo/Logo.png.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: c5936e51b084e1243af094afdb479e91 3 | TextureImporter: 4 | fileIDToRecycleName: {} 5 | externalObjects: {} 6 | serializedVersion: 9 7 | mipmaps: 8 | mipMapMode: 0 9 | enableMipMap: 0 10 | sRGBTexture: 1 11 | linearTexture: 0 12 | fadeOut: 0 13 | borderMipMap: 0 14 | mipMapsPreserveCoverage: 0 15 | alphaTestReferenceValue: 0.5 16 | mipMapFadeDistanceStart: 1 17 | mipMapFadeDistanceEnd: 3 18 | bumpmap: 19 | convertToNormalMap: 0 20 | externalNormalMap: 0 21 | heightScale: 0.25 22 | normalMapFilter: 0 23 | isReadable: 0 24 | streamingMipmaps: 0 25 | streamingMipmapsPriority: 0 26 | grayScaleToAlpha: 0 27 | generateCubemap: 6 28 | cubemapConvolution: 0 29 | seamlessCubemap: 0 30 | textureFormat: 1 31 | maxTextureSize: 2048 32 | textureSettings: 33 | serializedVersion: 2 34 | filterMode: 0 35 | aniso: 1 36 | mipBias: -100 37 | wrapU: 1 38 | wrapV: 1 39 | wrapW: -1 40 | nPOTScale: 0 41 | lightmap: 0 42 | compressionQuality: 50 43 | spriteMode: 1 44 | spriteExtrude: 1 45 | spriteMeshType: 1 46 | alignment: 0 47 | spritePivot: {x: 0.5, y: 0.5} 48 | spritePixelsToUnits: 100 49 | spriteBorder: {x: 0, y: 0, z: 0, w: 0} 50 | spriteGenerateFallbackPhysicsShape: 1 51 | alphaUsage: 1 52 | alphaIsTransparency: 1 53 | spriteTessellationDetail: -1 54 | textureType: 8 55 | textureShape: 1 56 | singleChannelComponent: 0 57 | maxTextureSizeSet: 0 58 | compressionQualitySet: 0 59 | textureFormatSet: 0 60 | platformSettings: 61 | - serializedVersion: 2 62 | buildTarget: DefaultTexturePlatform 63 | maxTextureSize: 2048 64 | resizeAlgorithm: 0 65 | textureFormat: -1 66 | textureCompression: 1 67 | compressionQuality: 50 68 | crunchedCompression: 0 69 | allowsAlphaSplitting: 0 70 | overridden: 0 71 | androidETC2FallbackOverride: 0 72 | - serializedVersion: 2 73 | buildTarget: Standalone 74 | maxTextureSize: 2048 75 | resizeAlgorithm: 0 76 | textureFormat: -1 77 | textureCompression: 1 78 | compressionQuality: 50 79 | crunchedCompression: 0 80 | allowsAlphaSplitting: 0 81 | overridden: 0 82 | androidETC2FallbackOverride: 0 83 | spriteSheet: 84 | serializedVersion: 2 85 | sprites: [] 86 | outline: [] 87 | physicsShape: [] 88 | bones: [] 89 | spriteID: 3f14ba8089f352346b3240b215b6db67 90 | vertices: [] 91 | indices: 92 | edges: [] 93 | weights: [] 94 | spritePackingTag: 95 | pSDRemoveMatte: 0 96 | pSDShowRemoveMatteOption: 0 97 | userData: 98 | assetBundleName: 99 | assetBundleVariant: 100 | -------------------------------------------------------------------------------- /Editor/Resources/SSI/Textures/Logo/LogoDark.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/VRLabs/Simple-Shader-Inspectors/e5fc9aadf5347946f5d452f1075e49017d9ebae9/Editor/Resources/SSI/Textures/Logo/LogoDark.png -------------------------------------------------------------------------------- /Editor/Resources/SSI/Textures/Logo/LogoDark.png.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 46f245d886faee04e8ace794057c2172 3 | TextureImporter: 4 | internalIDToNameTable: [] 5 | externalObjects: {} 6 | serializedVersion: 11 7 | mipmaps: 8 | mipMapMode: 0 9 | enableMipMap: 0 10 | sRGBTexture: 1 11 | linearTexture: 0 12 | fadeOut: 0 13 | borderMipMap: 0 14 | mipMapsPreserveCoverage: 0 15 | alphaTestReferenceValue: 0.5 16 | mipMapFadeDistanceStart: 1 17 | mipMapFadeDistanceEnd: 3 18 | bumpmap: 19 | convertToNormalMap: 0 20 | externalNormalMap: 0 21 | heightScale: 0.25 22 | normalMapFilter: 0 23 | isReadable: 0 24 | streamingMipmaps: 0 25 | streamingMipmapsPriority: 0 26 | grayScaleToAlpha: 0 27 | generateCubemap: 6 28 | cubemapConvolution: 0 29 | seamlessCubemap: 0 30 | textureFormat: 1 31 | maxTextureSize: 2048 32 | textureSettings: 33 | serializedVersion: 2 34 | filterMode: 0 35 | aniso: 1 36 | mipBias: 0 37 | wrapU: 1 38 | wrapV: 1 39 | wrapW: 0 40 | nPOTScale: 0 41 | lightmap: 0 42 | compressionQuality: 50 43 | spriteMode: 1 44 | spriteExtrude: 1 45 | spriteMeshType: 1 46 | alignment: 0 47 | spritePivot: {x: 0.5, y: 0.5} 48 | spritePixelsToUnits: 100 49 | spriteBorder: {x: 0, y: 0, z: 0, w: 0} 50 | spriteGenerateFallbackPhysicsShape: 1 51 | alphaUsage: 1 52 | alphaIsTransparency: 1 53 | spriteTessellationDetail: -1 54 | textureType: 8 55 | textureShape: 1 56 | singleChannelComponent: 0 57 | maxTextureSizeSet: 0 58 | compressionQualitySet: 0 59 | textureFormatSet: 0 60 | applyGammaDecoding: 1 61 | platformSettings: 62 | - serializedVersion: 3 63 | buildTarget: DefaultTexturePlatform 64 | maxTextureSize: 2048 65 | resizeAlgorithm: 0 66 | textureFormat: -1 67 | textureCompression: 1 68 | compressionQuality: 50 69 | crunchedCompression: 0 70 | allowsAlphaSplitting: 0 71 | overridden: 0 72 | androidETC2FallbackOverride: 0 73 | forceMaximumCompressionQuality_BC6H_BC7: 0 74 | - serializedVersion: 3 75 | buildTarget: Standalone 76 | maxTextureSize: 2048 77 | resizeAlgorithm: 0 78 | textureFormat: -1 79 | textureCompression: 1 80 | compressionQuality: 50 81 | crunchedCompression: 0 82 | allowsAlphaSplitting: 0 83 | overridden: 0 84 | androidETC2FallbackOverride: 0 85 | forceMaximumCompressionQuality_BC6H_BC7: 0 86 | spriteSheet: 87 | serializedVersion: 2 88 | sprites: [] 89 | outline: [] 90 | physicsShape: [] 91 | bones: [] 92 | spriteID: 7cb7202d91bde2a4689d1b1280e8311f 93 | internalID: 0 94 | vertices: [] 95 | indices: 96 | edges: [] 97 | weights: [] 98 | secondaryTextures: [] 99 | spritePackingTag: 100 | pSDRemoveMatte: 0 101 | pSDShowRemoveMatteOption: 0 102 | userData: 103 | assetBundleName: 104 | assetBundleVariant: 105 | -------------------------------------------------------------------------------- /Editor/Resources/SSI/Textures/Logo/LogoLight.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/VRLabs/Simple-Shader-Inspectors/e5fc9aadf5347946f5d452f1075e49017d9ebae9/Editor/Resources/SSI/Textures/Logo/LogoLight.png -------------------------------------------------------------------------------- /Editor/Resources/SSI/Textures/Logo/LogoLight.png.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 4f7414dfb50a7564394c33436b0ca51d 3 | TextureImporter: 4 | fileIDToRecycleName: {} 5 | externalObjects: {} 6 | serializedVersion: 9 7 | mipmaps: 8 | mipMapMode: 0 9 | enableMipMap: 0 10 | sRGBTexture: 1 11 | linearTexture: 0 12 | fadeOut: 0 13 | borderMipMap: 0 14 | mipMapsPreserveCoverage: 0 15 | alphaTestReferenceValue: 0.5 16 | mipMapFadeDistanceStart: 1 17 | mipMapFadeDistanceEnd: 3 18 | bumpmap: 19 | convertToNormalMap: 0 20 | externalNormalMap: 0 21 | heightScale: 0.25 22 | normalMapFilter: 0 23 | isReadable: 0 24 | streamingMipmaps: 0 25 | streamingMipmapsPriority: 0 26 | grayScaleToAlpha: 0 27 | generateCubemap: 6 28 | cubemapConvolution: 0 29 | seamlessCubemap: 0 30 | textureFormat: 1 31 | maxTextureSize: 2048 32 | textureSettings: 33 | serializedVersion: 2 34 | filterMode: 0 35 | aniso: 1 36 | mipBias: -100 37 | wrapU: 1 38 | wrapV: 1 39 | wrapW: -1 40 | nPOTScale: 0 41 | lightmap: 0 42 | compressionQuality: 50 43 | spriteMode: 1 44 | spriteExtrude: 1 45 | spriteMeshType: 1 46 | alignment: 0 47 | spritePivot: {x: 0.5, y: 0.5} 48 | spritePixelsToUnits: 100 49 | spriteBorder: {x: 0, y: 0, z: 0, w: 0} 50 | spriteGenerateFallbackPhysicsShape: 1 51 | alphaUsage: 1 52 | alphaIsTransparency: 1 53 | spriteTessellationDetail: -1 54 | textureType: 8 55 | textureShape: 1 56 | singleChannelComponent: 0 57 | maxTextureSizeSet: 0 58 | compressionQualitySet: 0 59 | textureFormatSet: 0 60 | platformSettings: 61 | - serializedVersion: 2 62 | buildTarget: DefaultTexturePlatform 63 | maxTextureSize: 2048 64 | resizeAlgorithm: 0 65 | textureFormat: -1 66 | textureCompression: 1 67 | compressionQuality: 50 68 | crunchedCompression: 0 69 | allowsAlphaSplitting: 0 70 | overridden: 0 71 | androidETC2FallbackOverride: 0 72 | - serializedVersion: 2 73 | buildTarget: Standalone 74 | maxTextureSize: 2048 75 | resizeAlgorithm: 0 76 | textureFormat: -1 77 | textureCompression: 1 78 | compressionQuality: 50 79 | crunchedCompression: 0 80 | allowsAlphaSplitting: 0 81 | overridden: 0 82 | androidETC2FallbackOverride: 0 83 | spriteSheet: 84 | serializedVersion: 2 85 | sprites: [] 86 | outline: [] 87 | physicsShape: [] 88 | bones: [] 89 | spriteID: 4dc1562d43f761a4a8f2790e8529a903 90 | vertices: [] 91 | indices: 92 | edges: [] 93 | weights: [] 94 | spritePackingTag: 95 | pSDRemoveMatte: 0 96 | pSDShowRemoveMatteOption: 0 97 | userData: 98 | assetBundleName: 99 | assetBundleVariant: 100 | -------------------------------------------------------------------------------- /Editor/Resources/SSI/Textures/TextureBoxHeavy.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/VRLabs/Simple-Shader-Inspectors/e5fc9aadf5347946f5d452f1075e49017d9ebae9/Editor/Resources/SSI/Textures/TextureBoxHeavy.png -------------------------------------------------------------------------------- /Editor/Resources/SSI/Textures/TextureBoxLight.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/VRLabs/Simple-Shader-Inspectors/e5fc9aadf5347946f5d452f1075e49017d9ebae9/Editor/Resources/SSI/Textures/TextureBoxLight.png -------------------------------------------------------------------------------- /Editor/Resources/SSI/Textures/UpIcon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/VRLabs/Simple-Shader-Inspectors/e5fc9aadf5347946f5d452f1075e49017d9ebae9/Editor/Resources/SSI/Textures/UpIcon.png -------------------------------------------------------------------------------- /Editor/Resources/SSI/Textures/UpIcon.png.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 40e17159ccd019448bb28e5e254f661c 3 | TextureImporter: 4 | fileIDToRecycleName: {} 5 | externalObjects: {} 6 | serializedVersion: 9 7 | mipmaps: 8 | mipMapMode: 0 9 | enableMipMap: 0 10 | sRGBTexture: 1 11 | linearTexture: 0 12 | fadeOut: 0 13 | borderMipMap: 0 14 | mipMapsPreserveCoverage: 0 15 | alphaTestReferenceValue: 0.5 16 | mipMapFadeDistanceStart: 1 17 | mipMapFadeDistanceEnd: 3 18 | bumpmap: 19 | convertToNormalMap: 0 20 | externalNormalMap: 0 21 | heightScale: 0.25 22 | normalMapFilter: 0 23 | isReadable: 0 24 | streamingMipmaps: 0 25 | streamingMipmapsPriority: 0 26 | grayScaleToAlpha: 0 27 | generateCubemap: 6 28 | cubemapConvolution: 0 29 | seamlessCubemap: 0 30 | textureFormat: 1 31 | maxTextureSize: 2048 32 | textureSettings: 33 | serializedVersion: 2 34 | filterMode: -1 35 | aniso: -1 36 | mipBias: -100 37 | wrapU: 1 38 | wrapV: 1 39 | wrapW: -1 40 | nPOTScale: 0 41 | lightmap: 0 42 | compressionQuality: 50 43 | spriteMode: 1 44 | spriteExtrude: 1 45 | spriteMeshType: 1 46 | alignment: 0 47 | spritePivot: {x: 0.5, y: 0.5} 48 | spritePixelsToUnits: 100 49 | spriteBorder: {x: 0, y: 0, z: 0, w: 0} 50 | spriteGenerateFallbackPhysicsShape: 1 51 | alphaUsage: 1 52 | alphaIsTransparency: 1 53 | spriteTessellationDetail: -1 54 | textureType: 8 55 | textureShape: 1 56 | singleChannelComponent: 0 57 | maxTextureSizeSet: 0 58 | compressionQualitySet: 0 59 | textureFormatSet: 0 60 | platformSettings: 61 | - serializedVersion: 2 62 | buildTarget: DefaultTexturePlatform 63 | maxTextureSize: 2048 64 | resizeAlgorithm: 0 65 | textureFormat: -1 66 | textureCompression: 1 67 | compressionQuality: 50 68 | crunchedCompression: 0 69 | allowsAlphaSplitting: 0 70 | overridden: 0 71 | androidETC2FallbackOverride: 0 72 | - serializedVersion: 2 73 | buildTarget: Standalone 74 | maxTextureSize: 2048 75 | resizeAlgorithm: 0 76 | textureFormat: -1 77 | textureCompression: 1 78 | compressionQuality: 50 79 | crunchedCompression: 0 80 | allowsAlphaSplitting: 0 81 | overridden: 0 82 | androidETC2FallbackOverride: 0 83 | spriteSheet: 84 | serializedVersion: 2 85 | sprites: [] 86 | outline: [] 87 | physicsShape: [] 88 | bones: [] 89 | spriteID: f07b9a21b377b8d4cb31d4592fd45d85 90 | vertices: [] 91 | indices: 92 | edges: [] 93 | weights: [] 94 | spritePackingTag: 95 | pSDRemoveMatte: 0 96 | pSDShowRemoveMatteOption: 0 97 | userData: 98 | assetBundleName: 99 | assetBundleVariant: 100 | -------------------------------------------------------------------------------- /Editor/Resources/SSI/Textures/UpIconHover.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/VRLabs/Simple-Shader-Inspectors/e5fc9aadf5347946f5d452f1075e49017d9ebae9/Editor/Resources/SSI/Textures/UpIconHover.png -------------------------------------------------------------------------------- /Editor/Resources/SSI/Textures/UpIconHover.png.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: c17d4b92d016f78459154b921e0de41c 3 | TextureImporter: 4 | fileIDToRecycleName: {} 5 | externalObjects: {} 6 | serializedVersion: 9 7 | mipmaps: 8 | mipMapMode: 0 9 | enableMipMap: 0 10 | sRGBTexture: 1 11 | linearTexture: 0 12 | fadeOut: 0 13 | borderMipMap: 0 14 | mipMapsPreserveCoverage: 0 15 | alphaTestReferenceValue: 0.5 16 | mipMapFadeDistanceStart: 1 17 | mipMapFadeDistanceEnd: 3 18 | bumpmap: 19 | convertToNormalMap: 0 20 | externalNormalMap: 0 21 | heightScale: 0.25 22 | normalMapFilter: 0 23 | isReadable: 0 24 | streamingMipmaps: 0 25 | streamingMipmapsPriority: 0 26 | grayScaleToAlpha: 0 27 | generateCubemap: 6 28 | cubemapConvolution: 0 29 | seamlessCubemap: 0 30 | textureFormat: 1 31 | maxTextureSize: 2048 32 | textureSettings: 33 | serializedVersion: 2 34 | filterMode: -1 35 | aniso: -1 36 | mipBias: -100 37 | wrapU: 1 38 | wrapV: 1 39 | wrapW: -1 40 | nPOTScale: 0 41 | lightmap: 0 42 | compressionQuality: 50 43 | spriteMode: 1 44 | spriteExtrude: 1 45 | spriteMeshType: 1 46 | alignment: 0 47 | spritePivot: {x: 0.5, y: 0.5} 48 | spritePixelsToUnits: 100 49 | spriteBorder: {x: 0, y: 0, z: 0, w: 0} 50 | spriteGenerateFallbackPhysicsShape: 1 51 | alphaUsage: 1 52 | alphaIsTransparency: 1 53 | spriteTessellationDetail: -1 54 | textureType: 8 55 | textureShape: 1 56 | singleChannelComponent: 0 57 | maxTextureSizeSet: 0 58 | compressionQualitySet: 0 59 | textureFormatSet: 0 60 | platformSettings: 61 | - serializedVersion: 2 62 | buildTarget: DefaultTexturePlatform 63 | maxTextureSize: 2048 64 | resizeAlgorithm: 0 65 | textureFormat: -1 66 | textureCompression: 1 67 | compressionQuality: 50 68 | crunchedCompression: 0 69 | allowsAlphaSplitting: 0 70 | overridden: 0 71 | androidETC2FallbackOverride: 0 72 | - serializedVersion: 2 73 | buildTarget: Standalone 74 | maxTextureSize: 2048 75 | resizeAlgorithm: 0 76 | textureFormat: -1 77 | textureCompression: 1 78 | compressionQuality: 50 79 | crunchedCompression: 0 80 | allowsAlphaSplitting: 0 81 | overridden: 0 82 | androidETC2FallbackOverride: 0 83 | spriteSheet: 84 | serializedVersion: 2 85 | sprites: [] 86 | outline: [] 87 | physicsShape: [] 88 | bones: [] 89 | spriteID: 54d113d43d7e7e84fa42485f8f82593d 90 | vertices: [] 91 | indices: 92 | edges: [] 93 | weights: [] 94 | spritePackingTag: 95 | pSDRemoveMatte: 0 96 | pSDShowRemoveMatteOption: 0 97 | userData: 98 | assetBundleName: 99 | assetBundleVariant: 100 | -------------------------------------------------------------------------------- /Editor/Resources/SSI/Textures/UpIconPressed.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/VRLabs/Simple-Shader-Inspectors/e5fc9aadf5347946f5d452f1075e49017d9ebae9/Editor/Resources/SSI/Textures/UpIconPressed.png -------------------------------------------------------------------------------- /Editor/Resources/SSI/Textures/UpIconPressed.png.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 1d44474b58a5b4741932dca0278c74f6 3 | TextureImporter: 4 | fileIDToRecycleName: {} 5 | externalObjects: {} 6 | serializedVersion: 9 7 | mipmaps: 8 | mipMapMode: 0 9 | enableMipMap: 0 10 | sRGBTexture: 1 11 | linearTexture: 0 12 | fadeOut: 0 13 | borderMipMap: 0 14 | mipMapsPreserveCoverage: 0 15 | alphaTestReferenceValue: 0.5 16 | mipMapFadeDistanceStart: 1 17 | mipMapFadeDistanceEnd: 3 18 | bumpmap: 19 | convertToNormalMap: 0 20 | externalNormalMap: 0 21 | heightScale: 0.25 22 | normalMapFilter: 0 23 | isReadable: 0 24 | streamingMipmaps: 0 25 | streamingMipmapsPriority: 0 26 | grayScaleToAlpha: 0 27 | generateCubemap: 6 28 | cubemapConvolution: 0 29 | seamlessCubemap: 0 30 | textureFormat: 1 31 | maxTextureSize: 2048 32 | textureSettings: 33 | serializedVersion: 2 34 | filterMode: -1 35 | aniso: -1 36 | mipBias: -100 37 | wrapU: 1 38 | wrapV: 1 39 | wrapW: -1 40 | nPOTScale: 0 41 | lightmap: 0 42 | compressionQuality: 50 43 | spriteMode: 1 44 | spriteExtrude: 1 45 | spriteMeshType: 1 46 | alignment: 0 47 | spritePivot: {x: 0.5, y: 0.5} 48 | spritePixelsToUnits: 100 49 | spriteBorder: {x: 0, y: 0, z: 0, w: 0} 50 | spriteGenerateFallbackPhysicsShape: 1 51 | alphaUsage: 1 52 | alphaIsTransparency: 1 53 | spriteTessellationDetail: -1 54 | textureType: 8 55 | textureShape: 1 56 | singleChannelComponent: 0 57 | maxTextureSizeSet: 0 58 | compressionQualitySet: 0 59 | textureFormatSet: 0 60 | platformSettings: 61 | - serializedVersion: 2 62 | buildTarget: DefaultTexturePlatform 63 | maxTextureSize: 2048 64 | resizeAlgorithm: 0 65 | textureFormat: -1 66 | textureCompression: 1 67 | compressionQuality: 50 68 | crunchedCompression: 0 69 | allowsAlphaSplitting: 0 70 | overridden: 0 71 | androidETC2FallbackOverride: 0 72 | - serializedVersion: 2 73 | buildTarget: Standalone 74 | maxTextureSize: 2048 75 | resizeAlgorithm: 0 76 | textureFormat: -1 77 | textureCompression: 1 78 | compressionQuality: 50 79 | crunchedCompression: 0 80 | allowsAlphaSplitting: 0 81 | overridden: 0 82 | androidETC2FallbackOverride: 0 83 | spriteSheet: 84 | serializedVersion: 2 85 | sprites: [] 86 | outline: [] 87 | physicsShape: [] 88 | bones: [] 89 | spriteID: eca5376cbe8b0c34c867041e2127fcc4 90 | vertices: [] 91 | indices: 92 | edges: [] 93 | weights: [] 94 | spritePackingTag: 95 | pSDRemoveMatte: 0 96 | pSDShowRemoveMatteOption: 0 97 | userData: 98 | assetBundleName: 99 | assetBundleVariant: 100 | -------------------------------------------------------------------------------- /Editor/Resources/SSI/UIElements.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: ff007c5838df4e70ab633ecdc962c4d0 3 | timeCreated: 1637105671 -------------------------------------------------------------------------------- /Editor/Resources/SSI/UIElements/EmbedLibraryWindow.uxml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | -------------------------------------------------------------------------------- /Editor/Resources/SSI/UIElements/EmbedLibraryWindow.uxml.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 57e135d37147465b9e10395bef82bb96 3 | timeCreated: 1637105683 -------------------------------------------------------------------------------- /Editor/SSIConstants.cs: -------------------------------------------------------------------------------- 1 | namespace VRLabs.SimpleShaderInspectors 2 | { 3 | /// 4 | /// Constants used across the library. 5 | /// 6 | /// 7 | /// These constants are the default one used, when you embed the library you have the option to change some of these defaults to whatever you want 8 | /// 9 | public static class SSIConstants 10 | { 11 | /// 12 | /// Default name of the subfolder of the Resources folder containing all the resources needed for the library. 13 | /// 14 | /// 15 | /// A custom folder name is needed to differentiate different installed versions of the libraries from multiple shaders, you HAVE to use a different name when embedding the library to your shader project, 16 | /// or else conflicts may arise whenever someone who already has the official library will also download your shader, especially when the 2 versions don't match up. 17 | /// 18 | public const string RESOURCES_FOLDER = "SSI"; 19 | 20 | /// 21 | /// Default path in the menu to place all windows menu options. 22 | /// 23 | public const string WINDOW_PATH = "VRLabs/Simple Shader Inspectors"; 24 | } 25 | } -------------------------------------------------------------------------------- /Editor/SSIConstants.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: f016aebcf7ca46edacf1936905a0b06b 3 | timeCreated: 1637100338 -------------------------------------------------------------------------------- /Editor/SerializedDictionaries.cs: -------------------------------------------------------------------------------- 1 | using UnityEngine; 2 | using System; 3 | using System.Collections.Generic; 4 | 5 | namespace VRLabs.SimpleShaderInspectors 6 | { 7 | /// 8 | /// Class used to save the dictionaries used by the API 9 | /// 10 | /// 11 | /// The API provides dictionaries to store data by identifier up to 30 days, those dictionaries are automatically saved into this asset. 12 | /// 13 | public class SerializedDictionaries : ScriptableObject 14 | { 15 | [Serializable] 16 | public struct BoolItem 17 | { 18 | public string key; 19 | public bool value; 20 | public long date; 21 | } 22 | 23 | [Serializable] 24 | public struct IntItem 25 | { 26 | public string key; 27 | public int value; 28 | public long date; 29 | } 30 | 31 | /// 32 | /// list for the bool dictionary 33 | /// 34 | public List boolDictionary; 35 | public List intDictionary; 36 | 37 | public SerializedDictionaries() 38 | { 39 | boolDictionary = new List(); 40 | intDictionary = new List(); 41 | } 42 | 43 | public void SetBoolDictionary(List<(string, bool, DateTime)> list) 44 | { 45 | boolDictionary.Clear(); 46 | foreach(var item in list) 47 | boolDictionary.Add(new BoolItem{key=item.Item1, value=item.Item2, date=item.Item3.ToBinary()}); 48 | } 49 | 50 | public void SetIntDictionary(List<(string, int, DateTime)> list) 51 | { 52 | intDictionary.Clear(); 53 | foreach(var item in list) 54 | intDictionary.Add(new IntItem{key=item.Item1, value=item.Item2, date=item.Item3.ToBinary()}); 55 | } 56 | } 57 | } -------------------------------------------------------------------------------- /Editor/SerializedDictionaries.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 45db28035fecfe5408f3b903a531b7fd 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Editor/SimpleControl.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: d192bdc3b4ec3934c94b413fa0b767d1 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Editor/SimpleShaderInspectorsDefinition.asmdef: -------------------------------------------------------------------------------- 1 | { 2 | "name": "VRLabs.SimpleShaderInspectors", 3 | "references": [], 4 | "includePlatforms": [ 5 | "Editor" 6 | ], 7 | "excludePlatforms": [], 8 | "allowUnsafeCode": false, 9 | "overrideReferences": false, 10 | "precompiledReferences": [], 11 | "autoReferenced": true, 12 | "defineConstraints": [], 13 | "versionDefines": [], 14 | "noEngineReferences": false 15 | } -------------------------------------------------------------------------------- /Editor/SimpleShaderInspectorsDefinition.asmdef.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: c720809f67b27e54cba511b477921bf5 3 | AssemblyDefinitionImporter: 4 | externalObjects: {} 5 | userData: 6 | assetBundleName: 7 | assetBundleVariant: 8 | -------------------------------------------------------------------------------- /Editor/StaticDictionaries.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: b6b33cabc7bbb854f8ef3b56f1a3a3b0 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Editor/Styles.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: ec12666a5b6f98747866b2585873df60 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Editor/TimedDictionary.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 155e5a123e83d7e45a4ad70da5d4da9f 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Editor/Tools.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 2fcdb8b59822c5849a9dbba1b0f3d794 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Editor/Tools/EmbedLibraryWindow.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 878d300e5f748254f92eb5f86c6e5bc1 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Editor/Tools/ExtensionsGeneratorWindow.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 2f87b79ea0024e844963769e28f23bc9 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Editor/Utility.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: ad2d8cd957793ab4ba2790691f9cd369 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Editor/Utility/GradientTexture.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: b8b950afbb39cfe4db0cc7a8c8f87877 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Editor/Utility/LocalizationEditorWindow.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 3c42634ebbbb1bf45b1fa9bbc709c483 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Examples.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 6b9af2280878d3c4b8c121a2ec623533 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Examples/Additive effects shader.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 72cfbf5905f1eff4981fd0f932737459 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Examples/Additive effects shader/Editor.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 1839278799abb2942af535f8267d306c 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Examples/Additive effects shader/Editor/SimpleSectionedShaderGUI.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 380f51c3a274eab4ba452360efe79f81 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Examples/Additive effects shader/Example.mat: -------------------------------------------------------------------------------- 1 | %YAML 1.1 2 | %TAG !u! tag:unity3d.com,2011: 3 | --- !u!21 &2100000 4 | Material: 5 | serializedVersion: 6 6 | m_ObjectHideFlags: 0 7 | m_CorrespondingSourceObject: {fileID: 0} 8 | m_PrefabInstance: {fileID: 0} 9 | m_PrefabAsset: {fileID: 0} 10 | m_Name: Example 11 | m_Shader: {fileID: 4800000, guid: cc53cd2e39903d0459ab5316dc316c93, type: 3} 12 | m_ShaderKeywords: 13 | m_LightmapFlags: 4 14 | m_EnableInstancingVariants: 0 15 | m_DoubleSidedGI: 0 16 | m_CustomRenderQueue: -1 17 | stringTagMap: {} 18 | disabledShaderPasses: [] 19 | m_SavedProperties: 20 | serializedVersion: 3 21 | m_TexEnvs: 22 | - _AdditionalMasks: 23 | m_Texture: {fileID: 0} 24 | m_Scale: {x: 1, y: 1} 25 | m_Offset: {x: 0, y: 0} 26 | - _MainTex: 27 | m_Texture: {fileID: 0} 28 | m_Scale: {x: 1, y: 1} 29 | m_Offset: {x: 0, y: 0} 30 | m_Floats: 31 | - _AEmissive: 0 32 | - _AdditionalMasksEnable: 1 33 | - _BEmissive: 0 34 | - _GEmissive: 0 35 | - _OrderedSection1: 0 36 | - _OrderedSection2: 0 37 | - _OrderedSection3: 0 38 | - _OrderedSection4: 0 39 | - _REmissive: 1 40 | - _RimLightEnable: 0 41 | - _RimLightPower: 0.284 42 | m_Colors: 43 | - _AColor: {r: 0, g: 0, b: 0, a: 1} 44 | - _BColor: {r: 0, g: 0, b: 0, a: 1} 45 | - _Color: {r: 1, g: 1, b: 1, a: 1} 46 | - _GColor: {r: 0, g: 0.03145504, b: 1, a: 1} 47 | - _RColor: {r: 1, g: 0, b: 0, a: 1} 48 | - _RimLightColor: {r: 1, g: 0, b: 0, a: 1} 49 | -------------------------------------------------------------------------------- /Examples/Additive effects shader/Example.mat.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 1961dad63f51fe84494127b3a7bad0a1 3 | NativeFormatImporter: 4 | externalObjects: {} 5 | mainObjectFileID: 2100000 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Examples/Additive effects shader/Localization.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 4e54ae26f0cc688449d9d9d5c793411d 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Examples/Additive effects shader/Localization/Simple sectioned shader.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 0dd29abd7eeb8f94a86d315fc0b77e3f 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Examples/Additive effects shader/Localization/Simple sectioned shader/English.json.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 528637d54b017f342bc875832093a08d 3 | TextScriptImporter: 4 | externalObjects: {} 5 | userData: 6 | assetBundleName: 7 | assetBundleVariant: 8 | -------------------------------------------------------------------------------- /Examples/Additive effects shader/Localization/Simple sectioned shader/Settings.json: -------------------------------------------------------------------------------- 1 | { 2 | "SelectedLanguage": "English" 3 | } -------------------------------------------------------------------------------- /Examples/Additive effects shader/Localization/Simple sectioned shader/Settings.json.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 98bdbb5fa7202324c85b32a6afc3c9b2 3 | TextScriptImporter: 4 | externalObjects: {} 5 | userData: 6 | assetBundleName: 7 | assetBundleVariant: 8 | -------------------------------------------------------------------------------- /Examples/Additive effects shader/Simple sectioned shader.shader.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: cc53cd2e39903d0459ab5316dc316c93 3 | ShaderImporter: 4 | externalObjects: {} 5 | defaultTextures: [] 6 | nonModifiableTextures: [] 7 | userData: 8 | assetBundleName: 9 | assetBundleVariant: 10 | -------------------------------------------------------------------------------- /Examples/Simple shader example.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 52003cfb7c5e97f45ae00e7bbdb3b1ce 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Examples/Simple shader example/Editor.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: ae5ed217f969bde4fa88c442f7c82fac 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Examples/Simple shader example/Editor/SimpleShaderGUI.cs: -------------------------------------------------------------------------------- 1 | using UnityEditor; 2 | using UnityEngine; 3 | using VRLabs.SimpleShaderInspectors; 4 | using VRLabs.SimpleShaderInspectors.Controls; 5 | 6 | namespace VRLabs.SimpleShaderInspectorsExamples 7 | { 8 | public class SimpleShaderGUI : SimpleShaderInspector 9 | { 10 | private ToggleListControl _toggle; 11 | protected override void Start() 12 | { 13 | this.AddTextureControl("_MainTex", "_Color").WithAlias("Main texture").WithShowTilingAndOffset(true); 14 | _toggle = this.AddToggleListControl("_EnableNormal").WithAlias("Normal toggle"); 15 | 16 | _toggle.AddTextureControl("_BumpMap", "_BumpIntensity").WithAlias("Normal map").WithShowTilingAndOffset(true); 17 | _toggle.AddHelpBoxControl("HelpBox").WithBoxType(MessageType.Info).WithIsWideBox(false); 18 | } 19 | 20 | protected override void Header() 21 | { 22 | GUILayout.Label("Simple shader editor"); 23 | EditorGUILayout.Space(); 24 | GUILayout.Label("Features shown by this editor:"); 25 | EditorGUI.indentLevel++; 26 | GUILayout.Label("- Header"); 27 | GUILayout.Label("- Footer"); 28 | GUILayout.Label("- Texture control"); 29 | GUILayout.Label("- Toggle control with hideable content inside"); 30 | EditorGUI.indentLevel--; 31 | EditorGUILayout.Space(); 32 | } 33 | 34 | protected override void Footer() 35 | { 36 | GUILayout.Label("This is a basic footer"); 37 | } 38 | } 39 | } -------------------------------------------------------------------------------- /Examples/Simple shader example/Editor/SimpleShaderGUI.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 8b0c9511839f9ad49a2c0c76471054bd 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Examples/Simple shader example/Example.mat: -------------------------------------------------------------------------------- 1 | %YAML 1.1 2 | %TAG !u! tag:unity3d.com,2011: 3 | --- !u!21 &2100000 4 | Material: 5 | serializedVersion: 6 6 | m_ObjectHideFlags: 0 7 | m_CorrespondingSourceObject: {fileID: 0} 8 | m_PrefabInstance: {fileID: 0} 9 | m_PrefabAsset: {fileID: 0} 10 | m_Name: Example 11 | m_Shader: {fileID: 4800000, guid: 919e76e9dd233d4438e3b396f5c1bdde, type: 3} 12 | m_ShaderKeywords: 13 | m_LightmapFlags: 4 14 | m_EnableInstancingVariants: 0 15 | m_DoubleSidedGI: 0 16 | m_CustomRenderQueue: -1 17 | stringTagMap: {} 18 | disabledShaderPasses: [] 19 | m_SavedProperties: 20 | serializedVersion: 3 21 | m_TexEnvs: 22 | - _BumpMap: 23 | m_Texture: {fileID: 0} 24 | m_Scale: {x: 1, y: 1} 25 | m_Offset: {x: 0, y: 0} 26 | - _MainTex: 27 | m_Texture: {fileID: 0} 28 | m_Scale: {x: 1, y: 1} 29 | m_Offset: {x: 0, y: 0} 30 | m_Floats: 31 | - _BumpIntensity: 1 32 | - _EnableNormal: 1 33 | m_Colors: 34 | - _Color: {r: 1, g: 1, b: 1, a: 1} 35 | -------------------------------------------------------------------------------- /Examples/Simple shader example/Example.mat.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: cbf2b89b60d68684f945085b9ea8bf67 3 | NativeFormatImporter: 4 | externalObjects: {} 5 | mainObjectFileID: 2100000 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Examples/Simple shader example/Localization.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: d96812dc0e3340b41bd1da17b7d6d023 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Examples/Simple shader example/Localization/Simple shader.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 83c4f71df694ca240a46a283207979a4 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Examples/Simple shader example/Localization/Simple shader/English.json: -------------------------------------------------------------------------------- 1 | { 2 | "Properties": [ 3 | { 4 | "Name": "HelpBox", 5 | "DisplayName": "This is an Example Info TextBox with the \"IsWideBox\" value set to false", 6 | "Tooltip": "" 7 | }, 8 | { 9 | "Name": "Main texture", 10 | "DisplayName": "Albedo (RGB)", 11 | "Tooltip": "Albedo (RGB)" 12 | }, 13 | { 14 | "Name": "Normal toggle", 15 | "DisplayName": "Enable normal", 16 | "Tooltip": "Enable normal" 17 | }, 18 | { 19 | "Name": "Normal map", 20 | "DisplayName": "Normal Map", 21 | "Tooltip": "Normal Map" 22 | } 23 | ] 24 | } -------------------------------------------------------------------------------- /Examples/Simple shader example/Localization/Simple shader/English.json.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 712dd8985c063bd4089785b1e05e0e7e 3 | TextScriptImporter: 4 | externalObjects: {} 5 | userData: 6 | assetBundleName: 7 | assetBundleVariant: 8 | -------------------------------------------------------------------------------- /Examples/Simple shader example/Localization/Simple shader/Settings.json: -------------------------------------------------------------------------------- 1 | { 2 | "SelectedLanguage": "English" 3 | } -------------------------------------------------------------------------------- /Examples/Simple shader example/Localization/Simple shader/Settings.json.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: cecd99b723a27af4094e80e733275930 3 | TextScriptImporter: 4 | externalObjects: {} 5 | userData: 6 | assetBundleName: 7 | assetBundleVariant: 8 | -------------------------------------------------------------------------------- /Examples/Simple shader example/Simple shader.shader: -------------------------------------------------------------------------------- 1 | Shader "SimpleShaderInspectors Examples/Simple shader" 2 | { 3 | Properties 4 | { 5 | _Color ("Color", Color) = (1,1,1,1) 6 | _MainTex ("Albedo (RGB)", 2D) = "white" {} 7 | [Normal] _BumpMap ("Normal Map", 2D) = "bump" {} 8 | _BumpIntensity ("Normal map intensity", float) = 1 9 | _EnableNormal ("Enable normal", float) = 0.0 10 | } 11 | SubShader 12 | { 13 | Tags { "RenderType"="Opaque" } 14 | LOD 200 15 | 16 | CGPROGRAM 17 | #pragma surface surf Lambert fullforwardshadows 18 | 19 | #pragma target 3.0 20 | 21 | sampler2D _MainTex; 22 | sampler2D _BumpMap; 23 | 24 | struct Input 25 | { 26 | float2 uv_MainTex; 27 | float2 uv_BumpMap; 28 | }; 29 | 30 | half _BumpIntensity; 31 | half _EnableNormal; 32 | fixed4 _Color; 33 | 34 | 35 | UNITY_INSTANCING_BUFFER_START(Props) 36 | UNITY_INSTANCING_BUFFER_END(Props) 37 | 38 | void surf (Input IN, inout SurfaceOutput o) 39 | { 40 | fixed4 c = tex2D(_MainTex, IN.uv_MainTex) * _Color; 41 | if(_EnableNormal > 0) 42 | { 43 | fixed3 d = UnpackNormal(tex2D(_BumpMap, IN.uv_BumpMap)) * _BumpIntensity; 44 | o.Normal = d; 45 | } 46 | o.Albedo = c.rgb; 47 | o.Alpha = c.a; 48 | } 49 | ENDCG 50 | } 51 | FallBack "Diffuse" 52 | CustomEditor "VRLabs.SimpleShaderInspectorsExamples.SimpleShaderGUI" 53 | } 54 | -------------------------------------------------------------------------------- /Examples/Simple shader example/Simple shader.shader.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 919e76e9dd233d4438e3b396f5c1bdde 3 | ShaderImporter: 4 | externalObjects: {} 5 | defaultTextures: [] 6 | nonModifiableTextures: [] 7 | userData: 8 | assetBundleName: 9 | assetBundleVariant: 10 | -------------------------------------------------------------------------------- /Examples/Standard like shader.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 91948d49fedec144ca4617abe5c5db1c 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Examples/Standard like shader/Editor.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 12031ab5b6144fd48b7d1bcee5d6c052 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Examples/Standard like shader/Editor/SimpleStandardShaderGUI.cs: -------------------------------------------------------------------------------- 1 | using UnityEditor; 2 | using UnityEngine; 3 | using VRLabs.SimpleShaderInspectors; 4 | using VRLabs.SimpleShaderInspectors.Controls; 5 | 6 | namespace VRLabs.SimpleShaderInspectorsExamples 7 | { 8 | public class SimpleStandardShaderGUI : SimpleShaderInspector 9 | { 10 | protected override void Start() 11 | { 12 | this.AddTextureControl("_MainTex", "_Color").WithAlias("Main texture").WithShowTilingAndOffset(true); 13 | this.AddTextureControl("_BumpMap", "_BumpIntensity").WithAlias("Normal map").WithShowTilingAndOffset(true); 14 | this.AddTextureGeneratorControl("_MultiMask").WithAlias("Multi mask").WithShowTilingAndOffset(true); 15 | this.AddSpaceControl(); 16 | this.AddLabelControl("MaskControls"); 17 | this.AddPropertyControl("_Metallic"); 18 | this.AddPropertyControl("_Smoothness"); 19 | this.AddPropertyControl("_Occlusion"); 20 | this.AddColorControl("_EmissionColor", false); 21 | } 22 | 23 | protected override void Header() 24 | { 25 | GUILayout.Label("Simple standard shader editor"); 26 | EditorGUILayout.Space(); 27 | GUILayout.Label("Features shown by this editor:"); 28 | EditorGUI.indentLevel++; 29 | GUILayout.Label("- Header"); 30 | GUILayout.Label("- Texture control"); 31 | GUILayout.Label("- Texture generator control with default packer"); 32 | GUILayout.Label("- Property control"); 33 | GUILayout.Label("- Space control"); 34 | GUILayout.Label("- Label control"); 35 | GUILayout.Label("- Color control"); 36 | GUILayout.Label("- Default aliases when a custom one is not set"); 37 | EditorGUI.indentLevel--; 38 | EditorGUILayout.Space(); 39 | } 40 | } 41 | } -------------------------------------------------------------------------------- /Examples/Standard like shader/Editor/SimpleStandardShaderGUI.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: ebe86f049575df846846140e0eac21b8 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Examples/Standard like shader/Example.mat: -------------------------------------------------------------------------------- 1 | %YAML 1.1 2 | %TAG !u! tag:unity3d.com,2011: 3 | --- !u!21 &2100000 4 | Material: 5 | serializedVersion: 6 6 | m_ObjectHideFlags: 0 7 | m_CorrespondingSourceObject: {fileID: 0} 8 | m_PrefabInstance: {fileID: 0} 9 | m_PrefabAsset: {fileID: 0} 10 | m_Name: Example 11 | m_Shader: {fileID: 4800000, guid: 474a38061b30a7d419e2d38df31cd599, type: 3} 12 | m_ShaderKeywords: 13 | m_LightmapFlags: 4 14 | m_EnableInstancingVariants: 0 15 | m_DoubleSidedGI: 0 16 | m_CustomRenderQueue: -1 17 | stringTagMap: {} 18 | disabledShaderPasses: [] 19 | m_SavedProperties: 20 | serializedVersion: 3 21 | m_TexEnvs: 22 | - _BumpMap: 23 | m_Texture: {fileID: 0} 24 | m_Scale: {x: 1, y: 1} 25 | m_Offset: {x: 0, y: 0} 26 | - _MainTex: 27 | m_Texture: {fileID: 0} 28 | m_Scale: {x: 1, y: 1} 29 | m_Offset: {x: 0, y: 0} 30 | - _MultiMask: 31 | m_Texture: {fileID: 2800000, guid: c410281c22ff9b04d980a8a2c1653bb2, type: 3} 32 | m_Scale: {x: 1, y: 1} 33 | m_Offset: {x: 0, y: 0} 34 | m_Floats: 35 | - _BumpIntensity: 1 36 | - _Metallic: 0 37 | - _Occlusion: 0 38 | - _Smoothness: 0 39 | m_Colors: 40 | - _Color: {r: 1, g: 0, b: 0, a: 1} 41 | - _EmissionColor: {r: 0, g: 0, b: 0, a: 1} 42 | -------------------------------------------------------------------------------- /Examples/Standard like shader/Example.mat.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 88f6178e8ccac9e4a8c7c357c6d41852 3 | NativeFormatImporter: 4 | externalObjects: {} 5 | mainObjectFileID: 2100000 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Examples/Standard like shader/Localization.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 9bb983c1e7170074aa32f0b423e17058 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Examples/Standard like shader/Localization/Simple standard shader.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: a2decfc75cdaaf74ea65d324acc4c4f0 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Examples/Standard like shader/Localization/Simple standard shader/English.json: -------------------------------------------------------------------------------- 1 | { 2 | "Properties": [ 3 | { 4 | "Name": "_EmissionColor", 5 | "DisplayName": "Emission color", 6 | "Tooltip": "Emission color" 7 | }, 8 | { 9 | "Name": "Main texture", 10 | "DisplayName": "Albedo (RGB)", 11 | "Tooltip": "Albedo (RGB)" 12 | }, 13 | { 14 | "Name": "Normal map", 15 | "DisplayName": "Normal map", 16 | "Tooltip": "Normal map" 17 | }, 18 | { 19 | "Name": "Multi mask", 20 | "DisplayName": "Combined masks", 21 | "Tooltip": "Combined masks" 22 | }, 23 | { 24 | "Name": "Multi mask_GeneratorOpen", 25 | "DisplayName": "Open packer", 26 | "Tooltip": "Open packer" 27 | }, 28 | { 29 | "Name": "Multi mask_GeneratorSaveButton", 30 | "DisplayName": "Save", 31 | "Tooltip": "Save" 32 | }, 33 | { 34 | "Name": "Multi mask_GeneratorCancelButton", 35 | "DisplayName": "Cancel", 36 | "Tooltip": "Cancel" 37 | }, 38 | { 39 | "Name": "Multi mask_GeneratorTextureSize", 40 | "DisplayName": "Size", 41 | "Tooltip": "Size" 42 | }, 43 | { 44 | "Name": "Multi mask_TextureInvert", 45 | "DisplayName": "Invert", 46 | "Tooltip": "Invert" 47 | }, 48 | { 49 | "Name": "Multi mask_Input1", 50 | "DisplayName": "Metallic", 51 | "Tooltip": "Metallic" 52 | }, 53 | { 54 | "Name": "Multi mask_Input2", 55 | "DisplayName": "Smoothness", 56 | "Tooltip": "Smoothness" 57 | }, 58 | { 59 | "Name": "Multi mask_Input3", 60 | "DisplayName": "Occlusion", 61 | "Tooltip": "Occlusion" 62 | }, 63 | { 64 | "Name": "Multi mask_Input4", 65 | "DisplayName": "Emission", 66 | "Tooltip": "Emission" 67 | }, 68 | { 69 | "Name": "MaskControls", 70 | "DisplayName": "Masks modifiers", 71 | "Tooltip": "Masks modifiers" 72 | }, 73 | { 74 | "Name": "_Metallic", 75 | "DisplayName": "Metallic", 76 | "Tooltip": "Metallic" 77 | }, 78 | { 79 | "Name": "_Smoothness", 80 | "DisplayName": "Smoothness", 81 | "Tooltip": "Smoothness" 82 | }, 83 | { 84 | "Name": "_Occlusion", 85 | "DisplayName": "Occlusion", 86 | "Tooltip": "Occlusion" 87 | } 88 | ] 89 | } -------------------------------------------------------------------------------- /Examples/Standard like shader/Localization/Simple standard shader/English.json.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: bd049d310152ca9498779c61294e0a3d 3 | TextScriptImporter: 4 | externalObjects: {} 5 | userData: 6 | assetBundleName: 7 | assetBundleVariant: 8 | -------------------------------------------------------------------------------- /Examples/Standard like shader/Localization/Simple standard shader/Settings.json: -------------------------------------------------------------------------------- 1 | { 2 | "SelectedLanguage": "English" 3 | } -------------------------------------------------------------------------------- /Examples/Standard like shader/Localization/Simple standard shader/Settings.json.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 9611d76d45c570a40ba3b06093a1952c 3 | TextScriptImporter: 4 | externalObjects: {} 5 | userData: 6 | assetBundleName: 7 | assetBundleVariant: 8 | -------------------------------------------------------------------------------- /Examples/Standard like shader/Simple standard shader.shader: -------------------------------------------------------------------------------- 1 | Shader "SimpleShaderInspectors Examples/Simple standard shader" 2 | { 3 | Properties 4 | { 5 | _Color ("Color", Color) = (1,1,1,1) 6 | _MainTex ("Albedo (RGB)", 2D) = "white" {} 7 | [Normal] _BumpMap ("Normal Map", 2D) = "bump" {} 8 | _BumpIntensity ("Normal map intensity", float) = 1 9 | _MultiMask ("MultiMask", 2D) = "white" {} 10 | _Metallic ("Metallic", Range(0, 1)) = 1 11 | _Smoothness ("Smoothness", Range(0,1)) = 1 12 | _Occlusion ("Occlusion", Range(0, 1)) = 1 13 | _EmissionColor ("Emission color", Color) = (0, 0, 0, 0) 14 | 15 | } 16 | SubShader 17 | { 18 | Tags { "RenderType"="Opaque" } 19 | LOD 200 20 | 21 | CGPROGRAM 22 | #pragma surface surf Standard fullforwardshadows 23 | 24 | #pragma target 3.0 25 | 26 | sampler2D _MainTex; 27 | sampler2D _BumpMap; 28 | sampler2D _MultiMask; 29 | 30 | struct Input 31 | { 32 | float2 uv_MainTex; 33 | float2 uv_BumpMap; 34 | float2 uv_MultiMask; 35 | }; 36 | 37 | half _BumpIntensity; 38 | half _Metallic; 39 | half _Smoothness; 40 | half _Occlusion; 41 | fixed4 _Color; 42 | fixed4 _EmissionColor; 43 | 44 | UNITY_INSTANCING_BUFFER_START(Props) 45 | UNITY_INSTANCING_BUFFER_END(Props) 46 | 47 | void surf (Input IN, inout SurfaceOutputStandard o) 48 | { 49 | fixed4 c = tex2D(_MainTex, IN.uv_MainTex) * _Color; 50 | fixed3 d = UnpackNormal(tex2D(_BumpMap, IN.uv_BumpMap)) * _BumpIntensity; 51 | o.Normal = d; 52 | o.Albedo = c.rgb; 53 | o.Alpha = c.a; 54 | 55 | c = tex2D(_MultiMask, IN.uv_MultiMask); 56 | o.Metallic = c.r * _Metallic; 57 | o.Smoothness = c.g * _Smoothness; 58 | o.Occlusion = c.b * _Occlusion; 59 | o.Emission = c.a * _EmissionColor; 60 | } 61 | ENDCG 62 | } 63 | FallBack "Diffuse" 64 | CustomEditor "VRLabs.SimpleShaderInspectorsExamples.SimpleStandardShaderGUI" 65 | } 66 | -------------------------------------------------------------------------------- /Examples/Standard like shader/Simple standard shader.shader.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 474a38061b30a7d419e2d38df31cd599 3 | ShaderImporter: 4 | externalObjects: {} 5 | defaultTextures: [] 6 | nonModifiableTextures: [] 7 | userData: 8 | assetBundleName: 9 | assetBundleVariant: 10 | -------------------------------------------------------------------------------- /Examples/Toon shader example.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 56a67bf327954ea43bbaeb86ac6c3b6a 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Examples/Toon shader example/Editor.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 3fd0f6b631b2c0a43a6934896c83fd43 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Examples/Toon shader example/Editor/SimpleToonShaderGUI.cs: -------------------------------------------------------------------------------- 1 | using UnityEditor; 2 | using UnityEngine; 3 | using VRLabs.SimpleShaderInspectors; 4 | using VRLabs.SimpleShaderInspectors.Controls; 5 | 6 | namespace VRLabs.SimpleShaderInspectorsExamples 7 | { 8 | public class SimpleToonShaderGUI : SimpleShaderInspector 9 | { 10 | protected override void Start() 11 | { 12 | this.AddTextureControl("_MainTex", "_Color").WithAlias("Main texture").WithShowTilingAndOffset(true); 13 | this.AddGradientTextureControl("_Ramp", "_RampColor").WithAlias("Ramp"); 14 | this.AddPropertyControl("_ShadowIntensity").WithAlias("Shadow intensity"); 15 | this.AddHelpBoxControl("InfoBox", "Main texture").WithBoxType(MessageType.Info); 16 | } 17 | 18 | protected override void Header() 19 | { 20 | GUILayout.Label("Basic toon shader editor"); 21 | EditorGUILayout.Space(); 22 | GUILayout.Label("Features shown by this editor:"); 23 | EditorGUI.indentLevel++; 24 | GUILayout.Label("- Header"); 25 | GUILayout.Label("- Texture control"); 26 | GUILayout.Label("- Gradient texture control"); 27 | GUILayout.Label("- Default property control"); 28 | GUILayout.Label("- Info box control"); 29 | GUILayout.Label("- Control places after a specific alias"); 30 | EditorGUI.indentLevel--; 31 | EditorGUILayout.Space(); 32 | } 33 | } 34 | } -------------------------------------------------------------------------------- /Examples/Toon shader example/Editor/SimpleToonShaderGUI.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 5bcf175c9efd4b845b099afe41fe4e8f 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Examples/Toon shader example/Example.mat: -------------------------------------------------------------------------------- 1 | %YAML 1.1 2 | %TAG !u! tag:unity3d.com,2011: 3 | --- !u!21 &2100000 4 | Material: 5 | serializedVersion: 6 6 | m_ObjectHideFlags: 0 7 | m_CorrespondingSourceObject: {fileID: 0} 8 | m_PrefabInstance: {fileID: 0} 9 | m_PrefabAsset: {fileID: 0} 10 | m_Name: Example 11 | m_Shader: {fileID: 4800000, guid: ea04e4dc7c8307e489665fb00f45974a, type: 3} 12 | m_ShaderKeywords: 13 | m_LightmapFlags: 4 14 | m_EnableInstancingVariants: 0 15 | m_DoubleSidedGI: 0 16 | m_CustomRenderQueue: -1 17 | stringTagMap: {} 18 | disabledShaderPasses: [] 19 | m_SavedProperties: 20 | serializedVersion: 3 21 | m_TexEnvs: 22 | - _MainTex: 23 | m_Texture: {fileID: 0} 24 | m_Scale: {x: 1, y: 1} 25 | m_Offset: {x: 0, y: 0} 26 | - _Ramp: 27 | m_Texture: {fileID: 2800000, guid: 3aeae93df474f38459e1af9b3ce4299e, type: 3} 28 | m_Scale: {x: 1, y: 1} 29 | m_Offset: {x: 0, y: 0} 30 | m_Floats: 31 | - _ShadowIntensity: 1 32 | m_Colors: 33 | - _Color: {r: 1, g: 1, b: 1, a: 1} 34 | - _RampColor: {r: 1, g: 1, b: 1, a: 1} 35 | -------------------------------------------------------------------------------- /Examples/Toon shader example/Example.mat.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: eee28d6b13ede604cbe4fe56ba5fcba7 3 | NativeFormatImporter: 4 | externalObjects: {} 5 | mainObjectFileID: 2100000 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Examples/Toon shader example/Localization.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 3fa30df76df7ff145ab59bc9eeb87891 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Examples/Toon shader example/Localization/Simple Toon shader.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: f0c4473bd4f5ac145be6ce9f4b997975 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Examples/Toon shader example/Localization/Simple Toon shader/English.json: -------------------------------------------------------------------------------- 1 | { 2 | "Properties": [ 3 | { 4 | "Name": "InfoBox", 5 | "DisplayName": "This box is instanced last, but it's placed after alias \"Main texture\"", 6 | "Tooltip": "" 7 | }, 8 | { 9 | "Name": "Main texture", 10 | "DisplayName": "Albedo (RGB)", 11 | "Tooltip": "Albedo (RGB)" 12 | }, 13 | { 14 | "Name": "Ramp", 15 | "DisplayName": "Ramp", 16 | "Tooltip": "Ramp" 17 | }, 18 | { 19 | "Name": "Ramp_GradientOpenEditor", 20 | "DisplayName": "Open gradient editor", 21 | "Tooltip": "Open gradient editor" 22 | }, 23 | { 24 | "Name": "Ramp_GradientColorLabel", 25 | "DisplayName": "Color", 26 | "Tooltip": "Color" 27 | }, 28 | { 29 | "Name": "Ramp_GradientTimeLabel", 30 | "DisplayName": "Time", 31 | "Tooltip": "Time" 32 | }, 33 | { 34 | "Name": "Ramp_GradientRampSizeLabel", 35 | "DisplayName": "Size", 36 | "Tooltip": "Size" 37 | }, 38 | { 39 | "Name": "Ramp_GradientBlendModeLabel", 40 | "DisplayName": "Blend mode", 41 | "Tooltip": "Blend mode" 42 | }, 43 | { 44 | "Name": "Ramp_GradientSaveButton", 45 | "DisplayName": "Save gradient", 46 | "Tooltip": "Save gradinet" 47 | }, 48 | { 49 | "Name": "Ramp_GradientCancelButton", 50 | "DisplayName": "Cancel", 51 | "Tooltip": "Cancel" 52 | }, 53 | { 54 | "Name": "Shadow intensity", 55 | "DisplayName": "Shadow intensity", 56 | "Tooltip": "Shadow intensity" 57 | } 58 | ] 59 | } -------------------------------------------------------------------------------- /Examples/Toon shader example/Localization/Simple Toon shader/English.json.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 644698bdaf0e35242b13f5d296c9ac1f 3 | TextScriptImporter: 4 | externalObjects: {} 5 | userData: 6 | assetBundleName: 7 | assetBundleVariant: 8 | -------------------------------------------------------------------------------- /Examples/Toon shader example/Localization/Simple Toon shader/Settings.json: -------------------------------------------------------------------------------- 1 | { 2 | "SelectedLanguage": "English" 3 | } -------------------------------------------------------------------------------- /Examples/Toon shader example/Localization/Simple Toon shader/Settings.json.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 81c6944c60c981f43a9718a7a16d671f 3 | TextScriptImporter: 4 | externalObjects: {} 5 | userData: 6 | assetBundleName: 7 | assetBundleVariant: 8 | -------------------------------------------------------------------------------- /Examples/Toon shader example/Simple Toon shader.shader: -------------------------------------------------------------------------------- 1 | Shader "SimpleShaderInspectors Examples/Simple toon shader" 2 | { 3 | Properties 4 | { 5 | _Color ("Color", Color) = (1,1,1,1) 6 | _MainTex ("Albedo (RGB)", 2D) = "white" {} 7 | _Ramp ("Ramp", 2D) = "white" {} 8 | _RampColor ("Ramp color", Color) = (1,1,1,1) 9 | _ShadowIntensity ("Shadow intensity", Range(0,1)) = 1 10 | } 11 | SubShader 12 | { 13 | Tags { "RenderType"="Opaque" } 14 | LOD 200 15 | 16 | CGPROGRAM 17 | #pragma surface surf Ramp 18 | 19 | #pragma target 3.0 20 | 21 | sampler2D _Ramp; 22 | 23 | struct SurfaceOutputRamp 24 | { 25 | fixed3 Albedo; 26 | fixed3 Normal; 27 | fixed3 Emission; 28 | fixed3 RampColor; 29 | fixed ShadowIntensity; 30 | fixed Alpha; 31 | }; 32 | 33 | half4 LightingRamp (SurfaceOutputRamp s, half3 lightDir, half atten) { 34 | half NdotL = dot (s.Normal, lightDir); 35 | half diff = NdotL * 0.5 + 0.5; 36 | half3 ramp = tex2D(_Ramp, float2(diff,diff)).rgb * s.RampColor; 37 | ramp = ramp * s.ShadowIntensity + (1 - s.ShadowIntensity); 38 | half4 c; 39 | c.rgb = s.Albedo * _LightColor0.rgb * ramp; 40 | c.a = s.Alpha; 41 | return c; 42 | } 43 | 44 | sampler2D _MainTex; 45 | 46 | struct Input 47 | { 48 | float2 uv_MainTex; 49 | }; 50 | 51 | half _ShadowIntensity; 52 | fixed4 _Color, _RampColor; 53 | 54 | UNITY_INSTANCING_BUFFER_START(Props) 55 | UNITY_INSTANCING_BUFFER_END(Props) 56 | 57 | void surf (Input IN, inout SurfaceOutputRamp o) 58 | { 59 | fixed4 c = tex2D(_MainTex, IN.uv_MainTex) * _Color; 60 | o.RampColor = _RampColor.rgb; 61 | o.ShadowIntensity = _ShadowIntensity; 62 | o.Albedo = c.rgb; 63 | o.Alpha = c.a; 64 | } 65 | ENDCG 66 | } 67 | FallBack "Diffuse" 68 | CustomEditor "VRLabs.SimpleShaderInspectorsExamples.SimpleToonShaderGUI" 69 | } 70 | -------------------------------------------------------------------------------- /Examples/Toon shader example/Simple Toon shader.shader.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: ea04e4dc7c8307e489665fb00f45974a 3 | ShaderImporter: 4 | externalObjects: {} 5 | defaultTextures: [] 6 | nonModifiableTextures: [] 7 | userData: 8 | assetBundleName: 9 | assetBundleVariant: 10 | -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- 1 | MIT License 2 | 3 | Copyright (c) 2021 VRLabs 4 | 5 | Permission is hereby granted, free of charge, to any person obtaining a copy 6 | of this software and associated documentation files (the "Software"), to deal 7 | in the Software without restriction, including without limitation the rights 8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 9 | copies of the Software, and to permit persons to whom the Software is 10 | furnished to do so, subject to the following conditions: 11 | 12 | The above copyright notice and this permission notice shall be included in all 13 | copies or substantial portions of the Software. 14 | 15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 21 | SOFTWARE. 22 | -------------------------------------------------------------------------------- /LICENSE.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 913b6ddc55baa4f43982f99a92c8ef58 3 | DefaultImporter: 4 | externalObjects: {} 5 | userData: 6 | assetBundleName: 7 | assetBundleVariant: 8 | -------------------------------------------------------------------------------- /README.md.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 4ac8cc061ef4752438831b1aa0f5ad86 3 | TextScriptImporter: 4 | externalObjects: {} 5 | userData: 6 | assetBundleName: 7 | assetBundleVariant: 8 | --------------------------------------------------------------------------------