Release Notes: v1.6.2 rev 00 / v1.6.1 rev 05: * New Template: * Unlit Lightmap * New Sample: * Unlit With Lightmap * Fixes: * Fixed issue on 'Depth Fade' node with custom Vertex Positions * Fixed issue with using the X,Y,Z,W output ports on 'Object To World' node v1.6.1 rev 04: * New Node: * Linear Depth * Converts values given on logarithmic space to linear * Improvements: * Minor improvement on nodes loading time when initializing ASE * Fixes: * Fixed local variable duplicate issue when using 'Depth Fade' and 'Screen Position' nodes * Fixed serialization issue with Additional Use Passes and Fallback data when going into play mode * Fixed HDRP issues on Motion Vectors pass * Fixed issue with uniform keyword usage inside cbuffers (SRP templates) over PS4 * Fixed issue with 'Common Transform Matrices' node over SRP templates * Fixed object to world/world to object space transform on transform nodes over HD templates * 'Transform Position', 'Object To World' and 'World To Object' nodes * They now take SHADEROPTIONS_CAMERA_RELATIVE_RENDERING keyword into account * Fixed issue with 'Pixelate UV' node when used over vertex functions * Fixed foldout issue between Additional Surface Options and Custom SubShader Tags on Surface node properties v1.6.1 rev 03: * New Shader Functions: * Terrain Wind Value * Terrain Wind Animate Vertex * Updated Simple Terrain sample to use this shader function * Improvements: * Updated HDRP PBR template to v4.6.0 * Added Alpha To Coverage/Alpha To Mask option into templates * Set under the Blend Mode area * Fixes: * Fixed issue on Emission color being added over Forward Add pass when using 'Standard Surface Light' node v1.6.1 rev 02: * Fixes: * Fixed issue with reordering material properties for Translucency and Refraction port's properties * Fixed issue with 'Texture Sample' node when referencing an unconnected node v1.6.1 rev 01: * Improvements: * Updated HDRP templates to v4.3.0 * 'Vertex Tangent' node now has Size option * Added access to all 8 UV sets on Surface shaders * Re-added 'Clip' node * First Input Port acts as a relay * Clip uses difference between Alpha and Threshold ( Alpha - Threshold ) * Fixes: * Fixed issue with late directives being injected on globals tag when functions area is available * Affected usage of 'World Space Light' nodes on HDRP templates * Fixed division by 0 issue on 'Triplanar Sample' node * Fixed incorrect directional light vector usage on HDRP templates v1.6.1 rev 00: * Fixes: * Excluding Primitive ID source code from MacOS v1.6.0 rev 00: * Improvements: * Updated SRP templates to v4.2.0 * Fixes: * Fixed issue on GBuffer pass over HD PBR template * Fixed alpha clip issues on Legacy HD PBR template v1.5.9 rev 02: * New Nodes: * Vertex Id * Primitive ID * New Shader Functions: * Perturb Normal HQ * Prepare Perturb Normal HQ * Improvements: * Matrix type nodes can now be GPU instanced * Fixes: * Fixed issue with 'Fresnel' node with Tangent Normal vectors on Surface shaders * Fixed issues on Motion Vector pass on both 3.x.x. and 4.x.x templates * Fixed issue with world pos generation on HD 4.x.x v1.5.9 rev 01: * Improvements: * Added Auto Gamma to Linear option into 'Color' nodes when set to Constant * Added access to all 8 uv channels on 'Texture Coordinates' and 'Vertex TexCoord' nodes * Only for 2018.2 and above * Fixes: * Fixed 'Gamma To Linear' and 'Linear To Gamma' compiler errors on SRP v.4.x.x v1.5.9 rev 00: * Fixes: * 'Grab Screen Color' node now also working on Lightweight SRP v3.x.x * Fixed possible issue with Shader Function creation callback not being inside AmplifyShaderEditor namespace v1.5.8 rev 03: * Fixes: * Fixed multiple issues in both PBR and Unlit templates for HD SRP v4.x.x * Fixed issue over clip space transforms on HD SRP * Fixed issue on sampling depth buffer on HD SRP v1.5.8 rev 02: * Improvements: * Multiple improvements over 'Global Array' node * Added support for jagged arrays * Added Auto-Register toggle * Can reference other nodes through new Mode dropdown ( similar to 'Grab Screen Color' node ) * Fixes: * Fixed memory leak over 'Template Local Var' node * Fixed HD templates issues over new HD 4.1.0 v1.5.8 rev 01: * Fixes: * Fixed issue on Live Mode writing on non ase shaders when loaded into canvas * Fixed issue on MacOS with scroll bar over Texture Array Creator tool * Fixed issue on MacOS with 'Function Input' node generated default Sampler 2D value * New Shader Function: * Substance Blend Metallic * Improvements: * 'Grab Screen Color' node is now supported on LW SRP * Uses the new _CameraOpaqueTexture which must be requested on the pipeline asset * Must toggle on the Opaque Texture option over its General foldout * Added Clip and Tangent spaces into 'Transform Direction' node * Added Tangent space into 'Transform Position' node v1.5.8 rev 00: * New Sample: * Substance 2018 * Fixes: * Fixed canvas crash when loading shaders with missing templates * Fixed issue on UV Coords creation over 'Substance Sample' Node * Fixed issue with loosing Substance reference on 'Substance Sample' node when applying new changes on it * Only happened on Unity 2018 with Substance in Unity plugin * Fixed issue on nested instanced properties over shader functions not being taken into account * Improvements: * Upgraded Lightweight and HD templates to v5.0.0 * Maintained templates for v.3.x.x under the packages HDSRPTemplates (Legacy) and LWSRPTemplates (Legacy) v1.5.7 rev 02: * Fixes: * Fixed issues on 'Static Switch' node * Property Name wasn't available in all options * Keys on Keyword Enum over Fetch Mode were being automatically upper cased * Fixed issue on 'Get Local Var' node not propagating node data correctly after being loaded v1.5.7 rev 01: * New Templates: * Custom RT Init * Packed inside AmplifyShaderEditor > Plugins > EditorResources > Templates > CustomRTTemplates * Custom RT Update * Packed inside AmplifyShaderEditor > Plugins > EditorResources > Templates > CustomRTTemplates * New Sample: * Custom Render Texture Rain * Packed inside AmplifyShaderEditor > Examples > Custom RT Samples * Needs both Custom RT Init and Custom RT Update templates to be imported into project * Fixes: * Fixed issue on Queue Offset incorrect writing over templates * Fixed issue on templates not recognizing uint * Fixed minor issue over Directives UI * Fixed Shadow Coord macro registry differences between Unity 5.5 and above * Improvements: * Added Substance Plugin integration over ASE for Unity 2018 and above * Added Mirror option into 'Depth Fade' node * Enabled by default, which was older behavior * If toggled on, sets an abs operation over the final value * Custom Render Textures can now be used/dragged over ASE * Can Pan and Zoom ASE canvas camera through keyboard directional keys * Up/Down/Left/Right Arrow keys pan camera * Alt+Up/Alt+Down/Alt+Left/Alt+Right Arrow keys zoom camera v1.5.7 rev 00: * Fixes: * Fixed issue with using FACE type nodes over both Lightweight and HD Unlit templates * Fixed issue regarding 'Lerp' node's Alpha input port always loading as a Float type * Fixed minor issue on 'Function Subtitle' node tooltip * Fixed minor issue on 'Posterize' node * Power variable should not be shown on property window if its input port is connected * Fixed minor issue with auto-spacing over shader function names v1.5.6 rev 08: * Fixes: * Fixed Queue Offset not being correctly set when loading certain template based shaders * Fixed HSV nodes previews * Fixed multiple issues with Directives over shaders functions * Fixed issue on nodes not being correctly set up over template's invisible passes with linked ports * Improvements: * Directives in Include mode now fully support cgincs and hlsl files to be dragged into them * Similar behavior of inline properties, click on button right next to Include textfield to activate object drop UI * Adding GPU Instancing support to Unlit template * Adding new Vertex Position port into 'Depth Fade' node * Adding new Saturate option into 'Depth Fade' node * Can now set precision to each 'Custom Expression' node items individually v1.5.6 rev 07: * Fixes: * Fixed duplicated events registry when loading graphs * Fixed incorrect instanced variables reset over shader functions v1.5.6 rev 06: * Fixes: * Out variables on 'Custom Expression' node no longer appears as inputs * Fixed issue on not updating output port names correctly over 'Custom Expression' node * Fixed issue on properties with Header(...) not being written on shader * Fixed incorrect read/write on MRT Blend Mode and Op over template based shaders * Fixed possible infinite loops caused by 'Register/Get Local Var' nodes * Fixed Shader Type dropdown items not updating names correctly according to changes on template * Fixed issue on adding multiple ASE tabs on Unity 2018.3 * Fixed WebGL error over 2018.3b * Fixed 'Parallax Offset' node issues when used on Lightweight and HD SRP templates * Fixed dynamically created outputs over shader function not being correctly set after hot code reload * Improvements: * Property Name and Values get its label clamped when too big * Full original name and value is shown over its node tooltip * Hidden tag on template shader names no longer created a category called Hidden * Adding new ase_funcs tag functionality to determine where function code should be injected * If not specified, functions are grouped with global variables as before * Improved template reloading after being manually edited v1.5.6 rev 05: * Fixes: * Fixed 'Smoothstep' node code generation issue * Fixed ASE item grouping issue on Create menu over Unity 2017 and above v1.5.6 rev 04: * Fixes: * Fixed shortcut manager to take 2018.3 new event behavior into account v1.5.6 rev 03: * Fixes: * Fixed several shader functions issues * Fixed Undo issue when using directives textfields * Fixed issue of null references being set on directives list when loaded * Fixed directives not being correctly written on shader * Fixed incorrect Refraction port activation issue on Standard Surface Custom Lighting * Fixed issue on Property nodes with Auto-Register toggled on not being registered * Fixed cascaded shadows issue on HD PBR template * Improvements: * Minor update on 'Smoothstep' node ports behavior * Added preview to 'Swizzle' node v1.5.6 rev 02 * Fixes: * Fixed issue on multi-pass templates not getting correct interpolator count from subshader info * Fixed issue on Depth Offset template option auto enabling after hot code reload * Improvements: * Using current world position and world view direction when getting indirect specular light values on templates v1.5.6 rev 01 * Fixes: * Fixed issue with global variables on Property type nodes being ignored by Auto-Register toggle * Fixed Native Directives capture issue over templates * Fixed issues on adding duplicate directives if they are already natively on the template * Fixed compilation errors from Gamma/Linear nodes on SRP templates * Fixed ArgumentOutOfRangeException over file path on new shader creation * Fixed issues over Motion Vector pass on HD PBR template * Fixed issue on 'Light Color' node with HD templates * Fixed issue on 'World Space Light Dir' node with HD templates * Fixed issue on 'Object Space Light Dir' node with HD templates * Improvements: * Added support for Variable Mode over Texture Objects type nodes * Adding UI Widget helper for setting Render Type and Queue for templates * On SubShader Tags group, Value UI changes as soon as user writes RenderType or Queue on the Name textfield v1.5.6 rev 00 * New Samples: * SRP Lightweight Terrain * Multi Pass Distortion * New Node: * Switch by Pipeline * Shader function specific node to choose different paths according to current pipeline * New Shader Function: * Fetch HD Color Pyramid * Fixes: * Fixed world position issues over HD PBR Template * Fixed transparent issues over HD PBR template * Prevented WorldNormalVector macro to confuse lerp operations * Fixed issue on created shaders being placed in incorrect folders when on two column node * Fixed issue on property registering over multi-pass shaders * Improvements: * Custom Options can now be added directly over templates * Adding Final Color x Alpha custom option into LW PBR * If toggled on multiples fragment final color by its alpha * Apply Fog on LW PBR takes Add Pass directive into account * Adding SRP support to Four Splats First Pass Terrain shader function * Material Global lIllumination flags for emission can now be modified over Surface Rendering Options * Activated Variable mode into 'Texture Sample' nodes v1.5.5 rev 01 * Fixes: * Fixed issue over incorrect name registration over 'Register Local Var' on pasting into another shader * Fixed issue on reading shaders using old shader functions with deprecated nodes * Fixed 'World Pos' node issue on HD SRP template * Fixed issue on 'World Normal' node when used in 'Lerp' node * Improvements: * 'Register/Get Local Var' nodes maintain connections even if copied to another shader v1.5.5 rev 00 * New Node: * Diffuse And Specular From Metallic * Fixes: * Fixed issues on graph not being updated with material changes on inspector if tab is opened but not selected * Preventing Culture difference issues on material copy-paste * Fixed issue on all modules template tag conflict with existing shader model definition * Fixed HD issue on 'World Position' node * Fixed issue on losing name when copy-pasting property nodes between shaders * Fixed issue on resetting custom inspector to ASE default when loading or hot code reloading shader with its textfield empty * Fixed issue on not setting importer correctly on 'Texture Sample' node when setting a normal map type texture from inspector * Improvements: * Properties on invisible passes can now be synced with main pass over templates v1.5.4 dev 10: * New Sample: * SRP HD Material Types * Please notice that for SSS to work properly, a Diffusion profile must be attached to the HD pipeline asset * We already supply one over the sample folder ( Diffusion Profile Settings ) * Fixes: * Fixed UX issue with Auto-Register/Set Unique flags on 'Custom Expression' node * Fixed issue with cascade shadows over Lightweight template * Improvements: * Added Material Types selector into HD template * Subsurface Scattering * Standard (Metallic) * Specular * Anisotropy * Iridescence * Translucent v1.5.4 dev 09: * Fixes: * Fixed Grab Pass issue with 'Outline' node * Fixed PreviewRenderUtility leak over shader and material inspector on 2018.2 * Fixed issue with 'PI' node over HD SRP * Improvements: * Minor improvement over shader save time v1.5.4 dev 08: * Fixes: * Fixed issue on 'Component Mask' node generating compilation errors inside shader functions with auto-cast inputs * Fixed issue on loop unroll error over 'Parallax Occlusion Mapping' node * Fixed issue on crashing ASE when loading a shader or shader function with a missing shader function reference * Adding error message when loading a shader or shader function with missing shader functions * Improvements: * Added support to Vertex Normal modification on both Unlit and PBR HD templates * Adding 'Global Array' variable name info directly on node v1.5.4 dev 07: * New Templates: * HD PBR * HD Unlit * Fixes: * Fixed issue on incorrectly capturing module tags * Fixed issues with 'Flipbook UV Animation' node * Fixed multiple issues with Directives usage under shader functions with templates * Fixed issue on 'Custom Expression' node loading on Call mode * Fixed issue on unpacking normals with scale on templates over multiple nodes * Changing tessellation on Procedural Wall sample shader from edge to distanced based to prevent metal issues on Mac v1.5.4 dev 06: * Fixes: * Fixed issue on 'Toggle Switch' node not taking Custom Attributes into account * Fixed out of bounds exception over 'Static Switch' node * Fixed issue on templates port linking behavior * Fixed issues on 'Texture Array', 'Triplanar Sample' and 'Unpack Scale Normal' nodes on Lightweight SRP * Fixed issue on shader function directives not being written on template based shaders * Fixed serialization issue on saving/loading shader function directives * Fixed issue with using 'Texture Array' node inside shader functions * Fixed shader compilation errors on'Parallax Occlusion Mapping' * Now it does not generate code if no 'Texture Object' node is connected to it * Fixed issue on 'Grab Screen Color' node not updating reference list correctly when copy/pasted * Fixed issue with Undo'ing a 'Grab Screen Color' node on reference mode * Improvements: * Min and Max Samples options on 'Parallax Occlusion Mapping' node are now inline options v1.5.4 dev 05: * Fixes: * Fixed issue with Vector and Matrix UI spacing on 'Custom Expression' node * Fixed issue on functions being generated twice over a 'Custom Expression' node when auto register and connection are both on * Fixed Blend Op issues with OFF state * Improvements: * Can now use a custom screen position into 'Dither' node * Added Normalize option into 'Compute Screen Pos' node v1.5.4 dev 04: * Fixes: * Fixed issue on resetting material's Render Queue setting when compiling the shader in Material mode * Fixed issue on Blend Op menu not showing when loading a template based shader * Improvements: * Re-adding DX11 specific Blend Ops into its respective dropdowns * 'Custom Expression' node items are now reorderable * 'Custom Expression' node can now register dependencies to other ones * Can now better control function register order on final shader v1.5.4 dev 02/dev 03: * New Shader Function: * Color Mask * Fixes: * Fixed issue on template Unlit SRP generating an error when creating a Color or MainTex named property * Fixed issue on both 'Surface Depth' and 'Camera Depth Fade' nodes when inputting a custom vertex position * Stencil module on Pass now uses SubShader Cull mode if it's not specified on it * Important since Cull determines if separate stencil ops are show for each face * Fixed issue with Fallback shader selector not updating if its textfield is focused * Fixed issue on Grab Pass only being registered on first pass when on multi-pass templates * Improvements: * Added auto register option into 'Grab Screen Color' node * Adding UsePass support * New Additional Use Passes section on both Surface and Template output nodes * Can add UsePass before or after Surface code via a Location dropdown * On Templates the Below location is still under development and its not available v1.5.4 dev 01: * New Shader Function: * Fetch Lightmap Value * Improvements: * Simple Terrain sample now support more than four splats * Fixes: * Fixed issue on Node Palette reading incorrect maximized value when opening ASE window v1.5.3 dev 12: * Fixes: * Fixed null pointer exception with texture arrays over shader functions * Fixed memory leak on shader functions destruction * Improvements: * Improved templates loading behavior after hot code reload * Replaced individual lists for pragmas, defines and includes by a single reorderable list * Now user select what each line represents via a dropdown * Additional surface options can now be added via the Additional Surface Options tab on the Output node * Added custom type for 'Custom Expression' node data type specification v1.5.3 dev 11: * Fixes: * Fixed issue on not correctly cleaning Undo stack when changing master node * Fixed multiple issues with safe normalize operation over world light dir and view dir * Fixed world light dir issues over Lightweight SRP * Fixed GPU instancing compile issues on Lightweight SRP * Fixed issue on Includes/Pragmas/Defines UI not showing when no other modules over a template * Improvements: * Optimizing property block allocation for instanced variables to have less internal padding involved * Added custom attributes to 'Toggle Switch' node * Added toggle to 'Matrix from Vector' node use each input as column v1.5.3 dev 10: * Fixes: * Fixed issue with being able to duplicate output nodes on templates * Fixed issue on foldout flag values being shared between multiple ASE tabs * Improvements: * 'Get Local Var' port is locked until a valid reference is set to prevent incorrect connections * Updated About image and added Manual link on Amplify Shader Editor menu group * Adding unique id duplicate prevention over shader load * Added support for stencil operations on Lightweight templates v1.5.3 dev 09: * New Shader Functions: * Lerp White To * Detail Albedo * Fixes: * Fixed API library excluding tool for custom nodes * Improvements: * Template creators can now register all modules * Simply add the /*ase_all_modules*/ either on the Pass or SubShader body * Templates now support Fallback definition on shader * Templates now support Dependencies definition on shader v1.5.3 dev 08: * Fixes: * Fixed Instance ID issue over Lightweight SRP template * Improvements: * Added API option to remove includes on data collector * Stencil can now be toggled off on templates which have it v1.5.3 dev 07: * New Sample: * Projectors * Exemplify Unity Projectors usage under ASE * Improvements: * Improved Texture Array Tool * Now also creates Texture3D by hitting the Texture 3D toggle * Can drag and drop multiple textures into tool * Can drag and drop a folder and it will include all its nested textures * Added Clear button to remove all textures from Texture List ( UI still work in progress ) * 'Parallax Occlusion Mapping' node now also supports Texture 3D * Replaced the Texture Array toggle by a Texture Type dropdown * User must explicitly set the current 3D texture slice via the Tex3D Slice input port * Removed Fixed precision type since it's no longer available on Unity 2018 * Updated Lightweight PBR template to v1.1.8 * Re-factored Templates location and names * New and more flexible templates will be gradually added to replace legacy ones * A cleaner Unlit template shader was already added on this build * Fixes: * Fixed issue on using depth operations on particle template * Fixed sometimes light attenuation not showing up correctly * Fixed allowing to open unity built-in shaders on ASE * Fixed issue on using incorrect port value on 'Refract' node * Fixed issue on Texture Object type nodes loosing texture type after load v1.5.3 dev 06: * New Sample: * XRay * Object has different drawing behavior in front and behind a wall * Wall pattern is procedurally generated * Improvements: * Template internal properties can be used as inline properties on modules * Modules can now read inline properties from the template original source * Unreadable data message is no longer shown on node properties * Added more options to 'Fresnel' node * Now supports custom view vector * Preventing cast warning with object to clip internal function usage when building shader code for Lightweight SRP * Added new icons for inline properties to the Unity personal skin to make them easier to spot * Updated Lightweight SRP templates * Cull Mode now shared across base, shadow and depth pass * Added new Normal input port * Fixes: * Fixed issue over templates on not assuming inline properties when loading/saving Cull Mode module * Fixed incorrect cast and type assignment on connections between 'Texture Object' and 'Texture Sample' nodes * Fixed issue on deleting outputs on shader functions and later opening the shaders that use it * Fixed issues on Vertex Offset port on Lightweight PBR template * Fixed issue on not correctly loading 'Rotate About Axis' node from old shaders * Fixed issue on header not showing with texture properties with the NoScaleOffset attribute v1.5.3 dev 05: * Fixes: * Fixed world normal issues over 'Outline' node * Fixed issues on reading/writing cull mode on templates meta * Fixed issue on capturing includes over templates * Fixed issue on Specular workflow over Lightweight PBR template * Improvements: * Cull Mode can now be modified over outline node v1.5.3 dev 04: * New nodes: * Transform Position * Transform Direction * Improvements: * Added inline property support over templates modules * Also added inline property support over Depth Offset values in both template and standard surface * Minor tweak over 'Clamp' node * Internal max value defaulted to 1 * Adding additional modules into Lightweight templates * Enabling ZTest over Particles Alpha Blended template * Fixes: * Fixed issue on Lightweight PBR template over tangents on objects with non-uniform scales * Fixed issue on Lightweight PBR not receiving real time shadows * Fixed issue on Lightweight Unlit template available interpolators * Fixed issue on Lightweight Unlit template not showing correctly on dropdown menu * Fixed issue on tab titles not being correctly written on shader mode over templates * Fixed issue on property names incorrectly appearing over inline properties * Fixed issue with copy/pasting 'Append' nodes * Fixed issue on 'Global Array' node loading from older shaders v1.5.3 dev 03: * New Template: * Lightweight Unlit * Renamed already existing SRP Template to Lightweight PBR * New Sample: * SRP Lightweight 2D Fractal * Fixes: * Fixed issue with 'Parallax Occlusion Mapping' node over Lightweight templates * Fixed Safe Normalize issues with 'View Dir' node on templates * Improvements: * Added Auto-Register option into 'Static Switch' node * Minor improvement over 'Parallax Occlusion Mapping' node generated code to avoid duplicate calculations v1.5.3 dev 02: * Fixes: * Fixed infinite loop via context menu issue * Improvements: * Added support for Specular workflow into Lightweight SRP template * Use either the new Specular port or the already existing Metallic port to choose which workflow to use * Added extra ASE null pointer exception prevention test on attempting loading shader with missing shader functions v1.5.3 dev 01: * Improvements: * Conditional 'If' node also support Int as compare values * Added Triplanar scale port for normal scaling when using normals in 'Triplanar Sample' node * Improved code generation for 'Texture Coordinates' node * Changed way float values were being generated when their value was an integer * Removes warnings and makes sure some operations are done in the correct space, like divisions * Improved operations order on 'Panner' node * Added Force Disable Instancing option into Surface output node Rendering Options * Updated Lightweight SRP template to be compatible with Unity latest LW SRP version 1.1.5 * Fixes: * Fixed issue on 'Global Array' node not being correctly detected by ASE * Fixed texture array sampling error caused by 'Parallax Occlusion Mapping' node on Unity 2018 * Fixed issue on local variable excluded reset method * Fixed issue on 'Triplanar Sample' node Material Mode not being correctly set v1.5.2 dev 05: * New Samples: * Single Channel Masking by Sarah Akers and David Marshall * Dithering Fade Blue Noise * New Node: * Inverse View Matrix * Fixes: * Fixed issue on not copying defaults to material values when changing Type from Global to Property over property type nodes * Fixed Stencil Comparison not being correctly written on shader when set as an inline property * Fixed issue on Reference mode not being taken into account when registering 'Texture Sample' properties * Fixed infinite loop on 'Texture Sample' nodes with Reference mode * Fixed custom outline alpha mask mode * Fixed issues on compare type nodes accessing their Wiki page * Fixed dropdown left title padding for nodes that have it but don't have a preview arrow * Improvements: * Improved 'Unpack Scale Normal' node usage on Burn Effect sample * Now compatible across all Unity versions * Re-factored Global variables behavior over property type nodes * Material values can no longer be edited * Auto-fetching global variables values every 2 seconds * Parameter type can be changed in node over texture type nodes * Removing automatic header creation by properties under shader functions * User now can manually set headers on property type nodes via its attributes * Turned the main Mask Clip Value an inline property so users can set it to be a specific node * Updated 'Screen Position' node preview * New Previews: * Compare ( A > B ) * Compare ( A >= B ) * Compare ( A < B ) * Compare ( A <= B ) * Compare ( A == B ) * Compare ( A != B ) * Compare With Range * If [Community] * Decode Float RG * Encode Float RG * Decode Float RGBA * Encode Float RGBA * Decode View Normal Stereo * Encode View Normal Stereo * Decode Lightmap * ColorSpaceDouble * Face * Switch By Face * LOD Fade * Layered Blend * Weighted Blend * Summed Blend v1.5.2 dev 04: * Fixes: * Fixed issue on Post-Process sample scenes crashing on lower Unity versions * Fixed issue on fallback behavior when required template on loaded shader is not found * Fixes issue on texture type nodes moving when a texture is selected over it's picker * ASE window now aware when ObjectSelectorClosed command is fired to ignore incorrect mouse delta values * Improvements: * View Dir vector on templates is now calculated on fragment by default * World Reflection vector on templates is now calculated on fragment by default * Native View Dir vector calculation on Lightweight SRP template is now done on fragment * Shader function 'Reconstruct World Position From Depth' now also works with screen shaders * Updated Skybox - Cubemap Extended by Cristian Pop sample v1.5.2 dev 03: * Fixes: * Fixed issue with 'Grab Screen Color' node on Lightweight SRP template * Fixed multiple issues with Shader Model selection over templates * Fixed issue on not correctly syncing module data from modified template * Improvements: * Re-factored local variable creation over ports to make it more robust * Vertex ports are now analyzed before fragment ones * Vertex position dependent operations now take applied offsets into account * Pragmas, Includes and Defines are copied from linked nodes if Pass is set as invisible * Added preview to 'Vertex To Frag' node * Small optimization on drawing connections * Minor tweak over Particles Alpha Blended template * Assigned dynamic interpolators now take both sub shader and pass info into account * Modified Lightweight SRP template to share dynamic interpolators amount over hidden passes v1.5.2 dev 02: * Improvements: * Added Safe Normalize option to 'World Space Light Dir' node * Assures vector is not zero even if there's no lights in scene * Added Safe Normalize option to 'View Dir' node * Assures vector is not zero even if there's no cameras on scene * Property names can neither be or start with numerical values nor Unity reserved names * Variables from 'Register Local Var' nodes cannot start or be numerical * Fixes: * Fixed shader function subtitles not being shown after being set with the 'Function Subtitle' node * Fixed Custom Lighting using opacity and opacity mask duplicating code v1.5.2 dev 01: * Fixes: * Changed alpha generation for Custom Lighting to work correctly with alpha mask * Fixed issue on shader function reloading not being taken as a load operation * Fixed instanced properties not being correctly taken into account inside shader functions * Improvements: * Improved shader function asset loading on Shader Function node v1.5.1 dev 06: * Improvements: * Added preview to 'Noise Generator' node * Improved node internal data viewer performance * Improved the shader changed/dirty flag behavior * Improved graph canvas position adjust on loading from a previously different window configuration * Renamed 'Melting' sample shader to be in accordance with other community samples * Fixes: * Fixed property node auto-register issue on 'Skybox - Cubemap Extended' sample * Fixed issues with 'World Normal' and 'World Reflection' nodes on PS4 * Fixed multiple cast issues across multiple nodes * Fixed incorrect port behavior on 'Refract' node * Fixed issue on undoing instanced properties assignment * Fixed 'Break To Components' node duplicating code and generating errors v1.5.1 dev 05: * Improvements: * Added previews to nodes * Desaturate * Grayscale * Posterize * Simple Contrast * Normal type input ports now show the correct default tangent vector on nodes internal value previewer * Indirect Diffuse Light * Indirect Specular Light * Fresnel * World Normal * Fixes: * Fixed possible issue with 'Desaturate' node on PS4 * Fixed issues with Undo/Redo operations over Wire nodes * Fixed light color and light dir info on 'Light Color' * Now takes into account Unity different behaviors between versions * Fixed issue on loading canvas on ASE tabs pointing to inexistent resources v1.5.1 dev 04: * New Node: * Function Subtitle * Allows creation for custom subtitles on Shader Functions * New Shader Functions: * Perturb Normal * Cotangent Frame * Improvements: * Can now assign property to both blend modes and operations * Removing carriage return when saving 'Custom Expression' node code on meta * Improved restrictions on Shader Functions outputting Matrix type data * Name is carried over Pasted/Duplicated 'Custom Expression' nodes * Custom Editor/Inspector option is now available over templates * Updated both Lightweight template and samples to new beta version * Template now support vertex offset and alpha test * Nodes internal data can be viewed directly on canvas * Can be turned on/off through the 'I' key * Added Editable If Custom Drawer by BinaryCats * Dynamic interpolator cap now respecting pass choice on graph * Updating current templates to be dynamically cap'ed * 'Light Color' and 'World Space Light Dir' nodes now behave properly when used with lightmaps * Fixes: * Fixed issue with incorrectly trying to write fragment instructions on template without specified frag code area * Fixed issue where reference 'Function Switch' nodes were not displaying their option in all cases * Fixed wire node Undo issues v1.5.1 dev 03: * New Samples: * Simple Potion Liquid * Melting by Gil Damoiseaux * Improvements: * Extended functionalities on 'Custom Expression' node * Added Auto-Register toggle to create custom functions even if not connected to output node * Added void to Output Type * Call Mode toggle is now a Mode dropdown * Mode Call now only allows external function calls or inline instructions * If a return instruction is detected on code, Mode is set to Create and return type set to void * Fixes: * Fixed Undo issue with property type nodes auto-register option * Fixed issue on calculation view direction on tangent space over templates v1.5.1 dev 02: * Fixes: * Fixed issue with 'Standard Surface Light' not taking Normal Space option into account * Fixed minor issue over 'Outline' node * Fixed issue on Undo not resetting correctly ports internal values * Fixed issue on incorrectly assigning main output node status into copy-pasted 'Function Output' nodes * Improvements: * Added custom attributes to 'Static Switch' node * Custom Material Inspector now properly copies texture scale and offset values v1.5.1 dev 01: * Fixes: * Fixed 'Static Switch' node not properly generating Enum code in the correct order * Fixed normal generation issue on 'Standard Surface Light' node * Fixed issue when attempting to load shader using inexistent template on project folder * Now fall-backing to Standard Surface when template is not found * Fixed issue capturing properties with attributes on templates * Fixed incorrect tool-tip on 'Template Multi-Pass Switch' node * Fixed issue on normal generation over 'Fresnel' node * Fixed initialization issue on Default UI template * Fixed issue with accessing uninitialized textures on 'Triplanar Sample' node * Fixed preview issue on 'Template Parameter' node * Fixed issue locking picker on texture type nodes to current type when auto-cast is on * Improvements: * Improved 'Break To Components' generated code * Preventing duplicates/re-definition of Pragmas, Defines and Includes over templates v1.5.0 dev 02: Fixes: * Fixed issue on template capturing commented properties * Fixed multiple issues over templates with multiple sub-shaders * Fixed issue on master nodes attempting to access uninitialized UI texture * Fixed issue with sometimes not extracting the correct pass name from template * Fixed issue on incorrectly catching shader name on fetching modules info * Fixed issue with correctly setting the shader name v1.5.0 dev 01: * New Samples: * SRP Lightweight GlintSparkle * SRP Lightweight Coverage * Fixes: * Fixed issue on loading shader with missing shader functions * Fixed issue on duplicate pragmas over generated shader * Fixed issue with template post processor not correctly registering new templates * Fixed issue on template output nodes modules incorrectly sharing foldout value * Fixed Undo issue when undoing deleted property type nodes after saving shader * Fixed 'Static Switch' node registering duplicates in the material properties group * Improvements: * Reorganized samples shader paths * Reorganized template menu items * Canvas and output node title now shows shader name without relative paths * 'Register Local Var' node now generates a new name when duplicated * 'Indirect Diffuse Light', 'Indirect Specular Light' and 'Light Attenuation' nodes now work on templates v1.4.5 dev 04: * New features: * Added support for multi-pass templates * Added support for Lightweight Scriptable Rendering Pipeline * New Shader Function: * Create Normal : Generates a normal map from a height map * New Template: * LightweightSRP * Fixes: * Fixed texture coordinates generation in templates * Changed initialization in 'Triplanar Sample' node to prevent null pointer errors v1.4.5 dev 03: * Improvements: * Exposed Specular Color property into the Output node material list when Blinn Phong Light Model is selected v1.4.5 dev 02: * Fixes: * Fixed Auto-Register option not being saved for property type nodes * Fixed issues with generated normalized screen position values over templates * Improvements: * Cull, Stencil, Color Mask and Depth options can now reference properties instead of standard options * Redone visuals of property type nodes Attributes list to be easier to use * Added new Enum and Custom attributes to property type nodes * Enum on Create Enum mode creates an Enum attribute using the specified Name/Value pairs * Enum on Use Engine Enum Class mode creates an Enum attribute from the specified class * Custom attribute allows to specify completely custom attributes * Outline now forces shader to be Forward only to prevent visual inconsistencies v1.4.5 dev 01: * New Shader Function: * Constant Bias Scale * Fixes: * Fixed null pointer issue with removing connections with Alt key * Fixed issue on 'Template Local Var' node only working on fragment function v1.4.4 dev 06: * Fixes: * Fixed issue on 'Texture Sample' nodes not automatically setting the texture type on AUTO * Fixed connection type mismatch after CTRL + swap shortcut * Fixed issue on 'Dither' node v1.4.4 dev 05: * Fixes: * Fixed multiple Undo issues on shader functions * Fixed serialization issue with both nodes and graph when hitting Unity play button v1.4.4 dev 04: * Fixes: * Fixed issue on Specular Highlights and Reflection toggle not being read/written into shader meta * Fixed issue on not correctly taking templates global variables into account when building shader * Fixed issue where 'Triplanar Sample' node wasn't being initialized properly * Fixed Undo issues on create/delete nodes * Fixed Undo issues on preview node resizing * Improvements: * Added new Enum Property Attributes for both 'Float' and 'Int' nodes * Added new Keyword Enums option to 'Static Switch' node Type option * Improved its interface to better accommodate new options * Added new keywords to 'Static Switch' Keyword dropdown * Increase max port count for 'Function Switch' node to 9 * Added/Changed shortcuts for various nodes * R - Create 'Register Local Var' node * G - Create 'Get Local Var' node * Z - Create 'Swizzle' node * X - Create 'Cross' product node * Period(.) - Create 'Dot' product node * B - Create 'Break to Components' node * K - Create 'Component Mask' node * V - Create 'Append' node v1.4.4 dev 03: * New Sample: * Skybox - Cubemap Extended by Cristian Pop * New Shader Functions: * Step Antialiasing * Create Orthogonal Vector * Improvements: * Node graph is now a ScriptableObject to better deal with automatic serialization * Templates can now register and use local variables * Use /*ase_local_var*/ before the variable declaration over the template * Access the local variable through the new 'Template Local Var Data' node over the graph * Added new Normal Space option into 'Standard Surface Light' node * Optimized nodes port internal data usage * Node tooltip no longer shown online link for shader function nodes * Small optimizations to node previews * Fixes: * Fixed function registry on 'Custom Expression' node to correctly deal with dependencies * Fixed issue on linear textures over the texture creator tool * Fixed issue where the editor was being called on play mode but no window was present * Fixed issue on texture coordinates of different sizes being created with the same name v1.4.4 dev 02: * Fixes: * Fixed issue on templates where vertex normal was being declared as a float4 on vertex data * Fixed PS4 issue on billboards generated code * Updated Orientation Based Sprite sample to include fix * Improvements: * Changed texture array creator to support compressed formats * Added custom inspector for texture arrays to allows previewing their contents on the inspector window * Added new Set Unique option into 'Custom Expression' node * If toggled off, generated internal function doesn't use unique id on its name v1.4.4 dev 01: * Improvements: * Custom Pragmas, Includes and Defines are now also included on the Outline pass * Automatically removing crlf from copy-pasted code over the 'Custom Expression' node * Custom Render Type can now be specified on the Render Type dropdown over the Output node properties * Fixes: * Fixed issues on 'Remainder' node v1.4.3 dev 05: * Fixes: * Fixed issue on excluding Add Pass independently of Debug port connection v1.4.3 dev 04: * New Shader Function: * Radial UV Distortion * Sample with the same name was also added to demonstrate its usage * Fixes: * Fixed multiple issues related to Debug port usage on Output node * It now works as a custom lighting port instead of emission * Fixed issue on incorrectly opening standard materials into ASE * Fixed issue on duplicate local variable creation when using 'Parallax Mapping' node on shader functions v1.4.3 dev 03: * Fixes: * Fixed issue on 'Vertex Tangent' node internally outputting float4 data in templates instead of float3 * Fixed shader function category typos * Fixed issue on ports accessing already destroyed nodes for previews * Fixed issue on precision type used in shader functions * Improvements: * Added ZWrite and ZTest options to 'Outline' node v1.4.3 dev 02: * Improvements: * Shader tags can now be modified on templates based shaders * Added new Particle Additive option on Blend RGB and Blend Alpha dropdown * Sets Source to 'Source Alpha' and Destination to 'One' * Added new options to 'Shade Vertex Lights' node * Can now select amount of lights to take into account and if as spot or point light * Fixes: * Fixed issue on incorrectly indented code generated by some nodes on template shaders v1.4.3 dev 01: * New Samples: * Orientation Based Sprite * UI Sprite FX * New Shader Function: * Box Mask * UI-Sprite Effect Layer * Fixes: * Fixed issue on attempting to deactivate destroyed nodes * Improvements: * Updated Sprite and UI templates to better support normal maps * Changed way logic is updated in some nodes to be more consistent and work inside shader functions v1.4.2 dev 06: * Fixes: * Fixed incorrect wire highlighting caused by 'Register Local Var' node * Fixed issue with 'Texture Sample' node not generating proper UVs in specific cases when using templates * Minor UI and refresh fixes to 'Function Switch' node * Fixed issue on incorrectly loading SimpleTerrain sample * Fixed issue on unnecessary loading when opening a changed shader or function * Improvements: * Added compatibility with Unity 2018 * For now 'Substance Sample' node is unavailable on this version * Substance example is now inside a unity package to prevent sbsar importing error * Removed Substance and API update warnings on Unity 2017 * Added new Vertex Position input port into 'Surface Depth' and 'Camera Depth Fade' nodes * Can now take custom vertex positions into account * Added some minor improvements into 'Register Local Var'/'Get Local Var' node usage * 'Register Local Var' node is now highlighted if one of its 'Get Local Var' nodes are selected * 'Register Local Var' node now lists and can focus each 'Get Local Var' which uses it * Added reference capabilities to 'Function Switch' * One node can now control different paths of a shader function graph v1.4.2 dev 05: * Fixes: * Fixed Undo issues with connections created/deleted by drag + Alt * Fixed issue on templates vertex local variables when using 'Vertex To Fragment' node * Fixed bug where 'Function Switch' node options were being incorrectly saved which caused a crash on load * Fixed shader 'Function Switch' node options not being correctly ordered all the time * Fixed connection signal detection to make 'Function Switch' nodes know when to turn on v1.4.2 dev 04: * New Node: * Function Switch * Node specific to shader functions which allows switching options at compile time on them * New Shader Function: * Flipbook * Improvements: * Changed switch type nodes port order to match 'Function Switch' and maintain consistency * Fixes: * Fixed issue on duplicated functions when both outline and shadow caster passes are active * Fixed issue with calculating label size for nodes * Fixed UI issue when not being able to read depth info from template v1.4.2 dev 03: * Improvements: * Added Depth module into templates * Minor improvement on Four Splats First Pass Terrain shader function * Minor improvement on TerrainSnowCoverage and SimpleTerrain samples * Added preview and access to internal data into 'HSV To RGB' and 'RGB To HSV' nodes * Added preview to 'If' node * Added new Normalize option into 'World Normal' and 'World Reflection' nodes * 'Outline' node now supports transparency and mask operations through the new Alpha Mode option * An additional depth pass can be added via the new Extra Depth Pass option on the Output Node properties * Property nodes can now register its properties/global variables without being connected to Output node * Done via the new Auto-Register option * Fixes: * Fixed minor issue on 'Rotate About Axis' node UI * Fixed issue with 'World Reflection' node on templates v1.4.2 dev 02: * Improvements: * 'Toggle Switch' node can now share properties * Added lock button to property name on property type nodes * Allows to customize the internal variable name used * Added support for 'View Dir' node on templates * Added preview position selection to shader functions to further customize function nodes * Fixes: * Fixed issue where custom shadows were ignoring vertex colors * Fixed issue on 'Fresnel' node using a non-normalized normal vector * Small fix on 'Static Switch' node getting and setting values from the material v1.4.2 dev 01: * Improvements: * Lowered Shader Model target of Custom Lighting Toon example to be compatible with MacOs * Improved generated code for 'Grab Screen Color' and 'Grab Screen Position' nodes * Changed automatic generation of 'Grab Screen Color' node to make sure normalization is happening only once * Added a toggle on 'Grab Screen Color' node which chooses if it normalizes/projects the input or not (default OFF) * Fixes: * Fixed issue on generating default values for shader functions * Fixed issue on normal generation with the following nodes: * 'Fresnel' * 'Indirect Specular Light' * 'World Reflection' v1.4.1 dev 02: * New Nodes: * Decode Depth Normal * Encode Depth Normal * Improvements: * Added internal data into shader functions * If inputs are unconnected is now possible to change the default value from its node property panel * Property type nodes can now keep material value when not connected to an Output node * Tweaked 'Static Switch' node properties * Initial opened tab on property nodes depends on material mode * Fixes: * Fixed issue on 'Custom Expression' node when using out variables in Call mode * Preventing 'Commentary' node from generating infinite loops when copy-pasted * Fixed issue with incorrect refresh call order on pasted nodes * Fixed issue on nodes are not being correctly nested into their parent 'Commentary' node when copy-pasted * Fixed issue on 'Toggle Switch' node not updating port names correctly after loading * Fixed focus issue on pickers with Mac v1.4.1 dev 01: * Fixes: * Fixed issue on 'Texture Sampler' node getting incorrectly configured on load * When default texture type different from material texture type v1.4.0 dev 06: * New Samples: * Simple Terrain * Terrain Snow Coverage * Custom Outline Toon * New Nodes: * Rotate About Axis * Outline * New Shader Functions: * Four Splats First Pass Terrain * Improvements: * Tweaked 'Scale And Offset' node behavior * Added Defines tab into Output node properties * Preventing possible compilation errors on Experimental .NET 4.6 * Fixes: * Fixed issue on 'Texture Sampler' node not previewing a connected 'Texture Object' node * Fixed issue on texture picker not working correctly on texture nodes * Fixed incorrect version reading Convert To Linear parameter at 'Screen Depth' and 'Depth Fade' node * Fixed issue on duplicate UV Set on 'Texture Sampler' node when connected to a 'Texture Object' * Fixed issue shader function inputs and outputs getting lost when re-focusing on them by double clicking the shader function node * Fixed issue on 'Custom Expression' node name editing on node body v1.4.0 dev 05: * Fixes: * Fixed issue on shadow caster for legacy samples: * Matcap * Parallax Mapping Iterations * Reflect Refract Soap Bubble * Screen Space Curvature * Fixed typo in 'Toggle Switch' node * Fixed issue on incorrectly accessing port through array id instead of unique id * Fixed issue on deprecated internal data not being correctly read into new 'Append' node * Improvements: * Up and Down arrow keys can now change the focus of the node element in the context palette search similar to the Tab key v1.4.0 dev 04: * New Samples: * Animated UV Distortion * Fixes: * Fixed issue on a shader function node crashing when its corresponding asset is not found * Fixed issue on applying Undo on Material Inspector not being caught by ASE canvas * Fixed issue on 'Float' node slider not being registered on Undo stack * Fixed issue on generating duplicate function names at 'Noise Generator' node * Fixed issue on returning to from a shader function to a main graph using with that shader function selected * Improvements: * Added new Variable Mode property into property nodes when their type are not Constant * Create Mode, this is the current option on which an uniform variable is always created when the node is analyzed * Fetch Mode, assumes that this variable is already declared elsewhere, p.e. an external lib and doesn't declare it * When Property Type is selected, the property declaration is still created * Added explicit call to both Thread and CultureInfo system classes to avoid conflicts with user classes without proper namespace * Shader function's input and output ports maintain correct connections after being internally re-ordered * Automatically adding spaces into camelcase'd shader function node titles v1.4.0 dev 03: * Improvements: * Added validity check on Output and Input data types * Improved color code request for ports v1.4.0 dev 02: * New Shader Functions: * Compute Filter Width * Improvements: * Explicitly calling System.Globalization on TextInfo usage to avoid compilation errors * Added custom pragmas for shader functions * Updated Vertex Normal Reconstruction sample * Added Reflection and Specular Highlight toggles into the Rendering Options group that mimic Unity's Standard * Added ToggleOff option to 'Static Switch' node which should now allow the creation of OFF toggles * Fixes: * Fixed issue of properties not being properly ordered if their material property group wasn't open * Blend modes now update properly even if group is collapsed v1.4.0 dev 01: * Fixes: * Fixed issue with 'World Space Light Pos', 'World Space Light Dir' and 'Object Space Light Dir' nodes * Fixed issue on 'Texture Coordinates' node forcing a sampler to be picked even when none was selected * Fixed issue on 'Indirect Diffuse Light'node ignoring the tangent space normal completely * Small fix to shader functions so they can refresh their custom include list properly on change * Improvements: * Added node previews for 'Light Attenuation' and both Indirect Light nodes * Added explicit call to Unity Editor ShaderUtil on Material Inspector to prevent class issues * Added Dependencies List on the Output Node properties v1.3.9 dev 03: * New Nodes: * 'Projector Matrix' * 'Projector Clip Matrix' * 'Texture Transform' * Improvements: * Properties can be re-ordered on Template shaders * Cull, Blend Mode, Blend Ops, Color Mask and Stencil Buffer data can be read and modified on Template shaders * Added new custom Time port into 'Flipbook UV Animation' node * Templates no longer need /*ase_pass*/ tag to be declared * Adding UnityEngine.Object redundancy on its usage to prevent issues with other plugins * Outline can now take fog into account * Fixes: * Fixed issue on shader function headers being placed last on shader property list v1.3.9 dev 02: * Fixes: * Additional fix on custom colored categories v1.3.9 dev 01: * Fixes: * Fixed issue with 'Texture Coordinates' node not generating proper code for sizes bigger than float2 * Fixed issue on reading old shaders data into new ASE versions * Fixed issue on custom colored categories * Improvements: * Updated various samples that were still compiled on older ASE versions * ASE window now loses text focus when losing its focus to prevent UI issues * Added proper Texcoord support in custom shadow caster * Added new toggle on 'Screen Depth' and 'Depth Fade' nodes to disable conversion from log to linear space * Important for Orthographic camera projections where Depth Buffer values are already stored in linear space v1.3.8 dev 02/03: * Improvements: * Added new custom lighting port and migrated the emission connection to this port * Now custom lighting display both albedo and emission to be used in baking * 'Function Input' and 'Function Output' names can be edited through node body * Fixes: * Fixed indentation issue on some templates generated code * Fixed issue in texture property that would forget it's auto cast type on load * Fixed issue on 'Triplanar Sample' node being initialized with incorrect internal tiling value * Fixed issue on screen position for 'Dither' node * Now it changes the screen position interpolator globally to make it work on the shadow caster v1.3.8 dev 01 ( the same as v1.3.7 dev 07 but bumped version for Asset Store release ): * Improvements: * Added Shader Function previews * Improved node list update on current focused window when renaming a shader function * Fixes: * Fixed issue on tabs node list not being updated with shader function renaming * Fixed issue with opacity mask not working correctly in custom lighting mode v1.3.7 dev 05/06: * New Shader Functions: * Half Lambert Term * Blinn-Phong Light * Fixes: * Fixed issue with setting the proper canvas mode when load the shader or the editor window on hotcode reload * Fixed issue with shader function titles not supporting hyphen characters * Fixed issue on not refreshing shader function include files on load * Fixed issue on shader function tab name not being renamed when its file is renamed from the editor * Fixed 'Texture Sampler' node preview when in reference mode * Fixed stack overflow crash with pasting 'Commentary' nodes * Improvements: * Premultiplied options now multiply RGB values with Alpha when in custom lighting mode * Shader Functions are now loaded by guid and fallback to name search method if load fails * Added custom categories for shader functions * Recompiled existing shader functions to account for new categories * Improved 'Triplanar Sample' node texture array support * Now allows different index for each texture when doing triplanar in cylindrical mode * Area from picking inputs from connections now only take the port icon into account and only include the label when dropping the connection * Added preview for 'Static Switch' node v1.3.7 dev 04: * Fixes: * Fixes issue on Shader Function includes v1.3.7 dev 03: * Fixes: * Fixed issue on custom lighting nodes not compiling correctly when inside a shader function * Fixed dithermask being declared when not in use * Fixed texture array support with 'Triplanar Sample' node generating index code inside the function instead of outside of it * Fixed issue with 'Append' node preview * Improvements: * Replacing '\' with '/' instead of removing it when writing Additional Include path names * Added Additional Include list into shader functions v1.3.7 dev 02: * Fixes: * Fixed issue with 'Texture Coordinates' node not generating local variables correctly * Fixed issue with Refraction port not correctly working with Tessellation * Fixed issue on applying vertex offset in certain Templates * Fixed cast and per channel operation issues on remaining blends on 'Blend Ops' node * Fixed issue on Soft Light Blend Op on 'Blend Ops' node * Fixed issue of Shader Function nodes not propagating data when generating code * Fixed focus issues when adding new items on Additional Includes, Pragmas, Sub-Shaders Tags and 'Custom Expression' node tools v1.3.7 dev 01: * Fixes: * Fixed 'Fmod' node issue with Int type connections * Small fix to the path button in the new Texture Array Creator tool * Improvements: * Adding fallback when searching template by guid fails v1.3.6 dev 01: * Fixes: * Fixed error when setting previews for texture related nodes * Improvements: * Improved cubemap support into texture related nodes * Removing Texture 0-3 and Scale Matrix options from 'Common Transform Matrices' node * Major rewrite for 'Triplanar Sample' node to make it easy to extend on the future * Small performance increase to 'Triplanar Sample' node * Deprecated nodes: * 'Texture 0 Matrix' * 'Texture 1 Matrix' * 'Texture 2 Matrix' * 'Texture 3 Matrix' * 'Scale Matrix' v1.3.5 dev 02: * New Tool: * Added Texture Array Creator tool * Available at Window > Amplify Shader Editor > Texture Array Creator * Fixes: * Fixed Undo not being able to recover some nodes * Improvements: * Changed Custom Material Inspector to be able to set and show custom meshes in it's Preview * Template Data nodes now expand individual channels if data selected is from vector/color type * Expanded individual channels ports on: * 'Object Space Light Dir' *'World Space Light Dir' * 'World Space Camera Pos' * 'Position From Transform' * 'Vector From Matrix' v1.3.5 dev 01: * New Shader Functions: * Blinn-Phong Half Vector * Fixes: * Fixed issue on 'Toggle Switch' node not being correctly registered when created v1.3.4 dev 02: * Fixes: * Fixed issue on text fields in nodes picking up values from other text fields in the editor * Fixed cast issue on 'Flipbook UV Animation' node * Fixed issue on creating sampler wire nodes * Small fix for resize buttons of 'Comment' nodes * Small fix to focus and select search text in the context menu not happening in specific situations * Fixed issue with 'Object To View Pos' local variable * Fixed 'Triplanar Sample' node normal mode signs in certain situations * Fixed issue on adding the same grab pass declaration multiple times * Fixed issue on incorrectly getting separate channels from transform nodes after local variables are created * Fixed issue on duplicate uniforms with some templates * Fixed issue where shader function properties were resetting after every save * Improvements: * Locking blend type nodes from sampler and matrix type connections * Expanded 'Object To View Pos' vector output vector into individual ports * Changed 'Triplanar Sample' node base UV direction to match unity terrain * Expanded vector ports for 'Object Space View Dir' and 'World Space View Dir' * 'Lerp' node now converts int types in the alpha input port to float types to prevent errors v1.3.4 dev 01 * Fixes: * Fixed issue with Opacity Mask port incorrect type * Fixed issue with incorrectly saving/loading multilines state in editor prefs * Fixed issue on not being able to create relays on texture type connections v1.3.3 dev 01: * Fixes: * Fixed multiple issues with 'Append' node behavior * Fixed null pointer exception when Shift + Tabbing helper window * Fixed duplication error on UV generation code * Improvements: * Added Alpha To Coverage option ( tied to Opacity port being active ) * Opacity Mask now only generates code if connected * Blend ops defaults are now OFF instead of ADD * Blend ops now pick the respective refined options when a specific blend mode is selected to make it easy to switch between them and the custom option ( opaque doesn't change anything ) v1.3.2 dev 04/05: * Fixes: * Fixed Asset Post Processor issue with Templates renaming * Fixed middle clicking on reference preview focusing on referenced node * Fixed graphic glitch on 'Static Switch' node button * Fixed issue with copy/pasting nodes taking incorrect property names * Fixed issue on 'Toggle Switch' incorrectly being read from older ASE versions * Minor fix on 'Object To Clip Pos' node * Fixed Undo issue with pasted property nodes * Fixed issue with duplicate local variables on templates when having multiple ports from the same category * Improvements: * Minor visual tweak on 'Standard Surface Light' node * Removed dependencies on custom shader inspector over the main ASE window so it can be removed by users * Setting first vector port automatically invisible ( if unconnected ) on nodes representing Unity built-in parameters ( since they are never used as vectors ) * Improved custom template reader behavior * Minor improvement on Undo node paste behavior * Added Stencil Buffer Back and Front face options ( only visible when Culling is Off ) * Changed input ports number of connections and data type visualization to represent the data being transferred in each cast * Improved crooked lines when nodes are too close to each other * Added custom single line texture properties for when the texture is marked to not have scale and offset properties v1.3.2 dev 03: * Fixes: * Fixed issue with 'Texture Sampler' node not taking procedural textures correctly into account * Matrices can no longer be connected into 'Vertex To Fragment' nodes input port * Fixed reordering issues with shader functions when these were updated * Fixed rare compile issue where shader function headers were created but no property was present * Fixed issue where view direction vector shader code was being generated with different precision types * Fixed issue with Matrix nodes being able to choose its type as Property and add Attributes * Fixed issue with Matrix nodes initial value not corresponding to internal draw data * Fixed issue with Matrix3x3 not working correctly when its type was set as Global * Fixed issue on function nodes generating local variables for Sampler data type variables * Improvements: * Activating internal data for tessellation nodes * Minor tweak on vertex position data across all templates * Preventing 'DDX' and 'DDY' nodes to generate code when in vertex function * Removed Sampler data types as valid 'Custom Expression' output valid type v1.3.2 dev 02: * New Shader Functions: * 'Bidirectional Parallax Mapping' * Mimics iterative Parallax Mapping with reference plane * 'Reconstruct World Position From Depth' * New Samples: * Added new Vertex Normal Reconstruction sample * Fixes: * Fixed issue with shader function nodes generating the same code multiple times * Fixed issue with function input generating duplicated code * Fixed issue with 'Texture Coordinates' node generating code in the vertex function when used inside a shader function * Fixed issue on 'Texture Coordinates' node in templates not respecting the size of the Coord Size option * Fixed issue on matrix multiplication via the 'Multiply' node not taking correct output type into account * Minor fix on Search Bar positioning * Recompiled Triplanar sample to be PS4 compatible * Recompiled Translucency sample to be PS4 compatible * Recompiled Hologram sample to be PS4 compatible * Fixed compilation issue with Billboard generated code in PS4 * Fixed hot code reload issue with 'Template Parameter', 'Template Vertex Data' and 'Template Fragment Data' * Fixed issue on 'Fresnel' node not read/writing new normal space option * Fixed issue on 'Screen Position' node when used on Templates * Improvements: * Functions inputs now allow the use of node default graph trees supporting complex default operations * Particle Alpha Blend template now uses a float4 on its TEXCOORD0 semantic both for vertex and interpolator data * Added pragma tag into Default Sprites template * Added port failsafe config into 'Texture Sample' node after reading all its internal data * Making vector port invisible in Unity Parameters type nodes if not being used * 'Component Mask' node only creates local variables if needed * Multi-wire colored connections now active by default * 'Fresnel' node now have Normal Space option set to Tangent by default * Shader functions now display their description on its Inspector window * Fixed 'Grab Screen Position' and 'Grab Screen Color' nodes for VR and updated the respective samples accordingly v1.3.2 dev 01: * New nodes: * 'Camera To World Matrix' * 'World To Camera Matrix' * Fixes: * Fixed issues with 'Toggle Switch' node * It now properly creates a toggle property and lets user change material in the editor * Fixed issue on vertex local variables not being registered correctly on custom lighting * Precision selection on 'Grab Screen Color' node is no longer locked when Custom Grab pass is disabled * Fixed issue with 'Depth Fade' node on OpenGL platforms * Normalized screen position code now works properly in all platforms * Fixed issue with 'Texture Array' node preview * Fixed issue with 'Vertex To Fragment' node generating duplicated code * Improvements: * Added toggle button into 'Static Switch' node * Improved wire auto-connection to node when its created from the context palette when dragging a wire * Auto screen UVs from 'Grab Screen Color' node now also take Unity Single Pass Stereo into account * Improved code generation on screen position related nodes * Activating internal port data into 'Toggle Switch' node * Updated Simple Blur and Simple noise examples to be fully android compatible * Tweaked 'Desaturate' node to prevent issues with PS4 * Tweaked 'Parallax Occlusion Mapping' node to prevent issues with PS4 v1.3.1 dev 11: * Fixes: * Fixed incorrect UV variable name on Post-Process template * Fixed Perforce integration again * Fixed preview on 'Fresnel' node for the new tangent mode * Fixed issue with 'Screen Position' subtitle * Fixed issue with 'Vertex to Fragment' node on templates * Improvements: * Added two additional nodes to templates,'Template Vertex Data' and 'Template Fragment Data' * These nodes allow direct access to vertex and interpolated fragment data from the template * Adding vertex code entry tag into Post-Process template * Improved fail-safe behavior on attempt to write vertex code on template with no vertex tag declared * Minor tweaks on some nodes port names and order * 'Dither' node now has a input port that allows the use of a custom dither pattern * 'Vertex to Fragment' node no longer generates unnecessary code and now acts as a relay if connected to a vertex path v1.3.1 dev 10: * Fixes: * Fixed cast issues on 'Smoothstep' node v1.3.1 dev 09: * Fixes: * Multiple fixes on custom shadow caster * Fixed issue on Templates Manager being incorrectly destroyed in some situations * Fixed issue on Template data not being correctly synced when user changes its source code and returns to ASE * Fixed issue where referenced 'Texture Sampler' nodes was not respecting the original property order * Fixed issue on 'Grab Screen Color' node not using Unity default grab pass when selected to use it * Fixed small issues on multiple examples * Improvements: * Added tangent space normals to 'Fresnel' node and removed the internal normal value from its properties v1.3.1 dev 08: * Fixes: * Fixed issue on 'Simple Contrast' node * Fixed boundaries issues on 'Dither' node * Improvements: * Minor tweak on 'Smoothstep' ports order * Added new Color and Intensity ports into 'Light Color' node * Minor overall optimizations on node previews * Added preview for 'Substance Sample' node * Added preview for 'Blend Operations' * Added input port for automatic texture dithering into 'Dither' node v1.3.1 dev 07: * Fixes: * Fixed issue on 'Simple Contrast' node ignoring Value internal data * Fixed issue on nodes preview data not being written when its internal data is read from shader * Fixed 'Texture Sampler' node to output a Color instead of Vector type * Fixed 'Swizzle' node not detecting changes on its input ports * Fixed issue on allowing invalid characters when typing a custom keyword on the 'Static Switch' node * Improvements: * Improved code generated by 'If' node and hides unused internal data * Improved 'Rotator' node behavior * Improved 'Panner' node behavior * Added checkout for version control systems that need it to edit files like perforce. * Changed labels and port order for various nodes in the Image Effects category to improve consistency v1.3.1 dev 06: * Fixes: * Fixed issue on template output node attempting to access template data before its initialization is complete * Fixed issue with validate/execute commands like duplicate on Mac * Fixed issue on not updating correctly mouse position when doing multiple pastes/duplicates * Fixed disappearing titles when selecting 'Register Local Var' nodes being used by 'Get Local Var' nodes located outside the visible graph area * 'Toggle Switch' node now properly casts its main port type for both input ports v1.3.1 dev 05: * Fixes: * 'Indirect Specular Light' and 'Indirect Diffuse Light' now compile properly in vertex functions but provide dynamic baking results only * Changed mask clip variable name to be compatible with internal unity functions * Fixed issue with texture arrays derivatives not being declared in 'Parallax Occlusion Mapping' nodes * Fixed 'Texture Sample' node not changing cast mode automatically when in reference mode * 'Lerp' node now works as the hlsl/cg specification and allows for component based interpolation * Fixed issue on template native properties getting lost when hot code reloading * Improvements: * 'Get Local Var' nodes now get highlighted in green when their referenced 'Register Local Var' node are selected * It should be now easier to spot how many and which nodes use a determined Register node, we intend to expand this idea to other similar cases * 'Static Switch' now allows to use define symbols and material toggle is now optional * 'Keyword Switch' is now deprecated (opening the shader in newer versions should replace it by 'Static Switch') * 'Static Switch' and 'Grab Screen Color' nodes now show their node name in title but still allows to edit their variable by double clicking * Reorganized toolbar buttons for consistency * Showing internal value name at the node properties window when selecting a property on the 'Template Parameter' node v1.3.1 dev 04: * Fixes: * Fixed issue with 'Static Switch' node duplicatnig code * 'Static Switch' node now properly allows the use of the same keyword * Fixed issue with Int ports generating black previews * Fixed issue where 'Custom Standard Lighting' node was generating garbage code when connected multiple times * Fixed dynamic baked lightmapping for 'Indirect Diffuse Light' node * Default fallback is now only added if shader doesn't use it's own * Improvements: * Changed 'Template Parameter' node to mimic the same look from the equivalent property nodes * Changed some labels and warning texts to be more clear on what's going on for texture objects * Int port color now uses the same color as float nodes * Added ASE custom inspector to the default templates * Added support for Texture Arrays with 'Parallax Occlusion Mapping' node v1.3.1 dev 03: * New Features: * Added custom pragmas support to the main property panel * Fixes: * Fixed issue with texture arrays when in reference mode creating multiple properties * Fixed issue of 'Vertex To Frag' node not generating code in certain situations * Fixed issue with 'World Reflection' node not generating code correctly in vertex functions * Fixed issue of custom shadow caster not using the correct shader model * Fixed issue with dynamic port nodes not updating correctly in some occasions * Fixed issue of some nodes not properly using the selected precision type * Matrix 3x3 port types now display properly in the node property panel and compile correctly * Improvements: * 'World Position' node now forces float precision * Some more changes for the nodes subtitles for consistency * Minor performance and GC improvements v1.3.1 dev 02: * Fixes: * Fixed issue with 'World Normal' node not generating it's components values properly in some occasions * Fixed issue with some parameters foldouts not displaying correctly and added a new context message for empty foldouts * Improvements: * Changed some subtitles prefixes to be more consistent about what they represent * Changed dropdown icon to a less confusing and more intuitive one * More editor performance improvements and reduction of GC in various places v1.3.1 dev 01: * Fixes: * Fixed issue on copy-pasting custom lighting nodes * Fixed issue on null pointer reference on preview material when hitting play mode * Improvements: * Added upper left widgets into several nodes to change important properties directly on node body * Added secondary title into several nodes to show its current state directly from node body v1.3.0 dev 03: * Improvements: * Completely refactored and changed the graph and node rendering to use a semi-MVC model * Improves the overall performance in several orders of magnitude * Various small visual fixes and improvements * Various changes to prevent most memory allocations heavily reducing GC * Changed zoom and auto-pan to a smooth version and fixed its auto-boundaries * This should make the editor feel more snappy and responsive * New object pickers for 'Substance Sampler' and 'Triplanar Sampler' * New outline for selected Wire nodes * Now is easier to see in all situations * Various previews were added,improved or fixed * 'Texture Sampler' nodes now properly display default values * Tweaked Input Type labels on 'Custom Expression' nodes to match shader variable type names * Custom Lighting nodes now show internal data and have additional Normal options * Fixes: * Fixed 'Texture Array' node issue when referencing an un-connected node * Fixed UI issue on 'Custom Expression' qualifiers * Fixed issue on shader name being overwritten when changing template * Fixed issue on copy/cut/paste not being correctly caught by nodes search bar v1.3.0 dev 02: * Fixes: * Fixed issue with Output Node Opacity Mask port not working with Custom Lighting * Fixed errors with some nodes inside shader function * Improvements: * Improved internal file reader to be more robust in case of trying to load in-existent files * Templates Manager can now also be initialized by its post processor in case of an ASE window is not open * 'Blend Operations' node show current selected Blend Op on node body * Locked Custom Light nodes from being used on Templates v1.3.0 dev 01: * New Features: * Templates * Create new shaders from already existing ones which serves as base/templates * Fixes: * Fixed issue on ports internal data not showing on 'Append' node * Fixed infinite loop on 'Texture Coordinates' and 'Texel Size' nodes v1.2.1 dev 02: * Fixes: * Fixed issues with previews on 'Multiply' node * Fixed incorrect tooltip on 'Face' node * Fixed issue on 'Standard Surface Light' node where GI wasn't correctly picking normals * Fixed 'Texture Sampler' node not correctly generating code when connected to relays or shader functions * Fixed issue on 'Texel Size' and 'Texture Coordinate' nodes when referencing nodes not connected to Master Node * Improvements: * 'Grab Screen Color' node now uses Unity default grab texture and allows overriding it like it's previous behavior v1.2.1 dev 01: * Improvements: * Major refactor on all nodes categories and colors to improve consistency * Added subtitle to 'Swizzle' and 'Component Mask' nodes to reflect their options * Added configurable background color for 'Commentary' nodes * Fixes: * Fixed issue with lightmaps when using the 'Standard Surface Light' node on Custom Lighting Light Model * Fixed issue on overwriting default texture values on 'Texture Sample' node when loading values from material v1.2.0 dev 02: * Improvements: * Adding Call Mode into 'Custom Expression' node * On this mode all code written into the Code area will be directly injected into the shader code without being assigned to a local variable * The result written on the output port will be what is directly connected to the first input port ( named In ) which is not taken into account by the code expression. The In/Out pair will act as a simple relay. v1.2.0 dev 01: * Fixes: * Fixed issue on generating UI exception when sometimes iterating between Search Node Bar results * Fixed issue on Output node size increasing infinitely with shader name * Fixed issue on incorrect serialization on 'Texture Sampler' node * Improvements: * Texture Object type nodes no longer auto-set the 'Texture Sampler' Normal Map option * Normal Map option was renamed to Unpack Normal Map * A warning is shown if a Texture Object marked as normal map is connected to a 'Texture Sampler' node with the Unpack Normal Map options turned off v1.1.0 dev 13: * Fixes: * Fixed issue with reading incorrect legacy port info into 'Lerp' node * Fixed issue on cycling through deleted nodes when using the Nodes Search Bar * Fixed issue with incorrectly moving nodes nested into multiple 'Commentary' nodes * Fixed issue on Undo not registering internal node movement on 'Commentary' nodes * Fixed issue when using 'Virtual Texture Object' node on Vertex ports * Fixed issue with incorrectly moving selected nodes while resizing side menus * Improvements: * 'Simple Contrast' node now always store its result on a local variable * Greatly improved 'Commentary' node: * You now can use box selection inside the node body * You now can create Wire nodes by double clicking on a wire inside the node body * You now select and drag the node via its header or by pressing anywhere on the node body having the Alt key down * You now need to double click the node header to be able to modify its comment directly from there v1.1.0 dev 12: * Fixes: * Fixed issue with creating legacy code for LOD Cross Fade on Unity v.2017 and above * Fixed issue on 'Lerp' node not adjusting correctly when disconnecting input ports * Fixing issue with node drag with snap * Now done by having both Ctrl+Shift pressed * Improvements: * 'Blend Operations' node now automatically adapts to input ports * Improving Search Bar focus behavior v1.1.0 dev 11: * Fixes: * Fixed incorrect behavior on creating connections through Alt + Shift * Fixed out of bounds exception caused by removing ports on shader functions * Fixed issue with 'Triplanar Sampler' node not deleting correctly in some occasions * Fixed ordering issues with Stencil Buffer example * Improvements: * Overall improvements on nodes descriptions v1.1.0 dev 10: * Fixes: * Fixed new Billboard Ignore Rotation option incorrectly ignoring game object translation v1.1.0 dev 09: * Fixes: * Fixed issue with deprecated nodes warning message throwing an exception on recent Unity versions * Fixed 'Texel Size' node issues on Shader Functions v1.1.0 dev 08: * New Features: * New 'Keyword Switch' node * Improvements: * Improved 'Lerp' and 'Clamp' nodes behavior * Added new improved dynamic 'Append' node which adapts to inputs and deprecated the old one * Billboards can now ignore object original rotation via its new Ignore Rotation toggle * New Soft Light option was added to 'Blend Operations' node v1.1.0 dev 07: * New Features: * Added support for Custom Subshader Tags on Output Node properties * Fixes: * Fixed issue with having 'Custom Expression' nodes with similar port names * Improvements * Small improvements on canvas zoom behavior v1.1.0 dev 06: * New Features: * Added new nodes: * 'World Transform Params' * 'Vertex Bitangent' * 'Vertex Tangent Sign' * Improvements: * Able to specify an HDR color on 'Color' node if the HDR attribute is set * Added previews to nodes: * Time * Object Scale * Improved how vertex data is being generated to prevent future issues * Fixes: * Fixed incorrect order of instruction write on 'Texture Coordinates' node v1.1.0 dev 05: * New Features: * New 'Standard Surface Light' node ( exclusive to Custom Lighting Light Model ) * New Samples: * Double Layer Custom Surface * Fixes: * Fixed issue with pasting nodes not refreshing external references from original ones * Fixed issue with generating helper local variable ids on several nodes which may lead to issues on shader functions * Fixed issue on 'Depth Fade' node * Fixed issue with not registering sampler dummies correctly when using 'Texture Coordinates' node with Tessellation * Fixed issue on multi-tabs with breaking all tabs except the focused one when dragging wires * Improvements: * Added previews to nodes: *'World Space Camera Pos' *'Object Space Light Dir' *'World Space Light Dir' *'Light Color' *'Object To World' *'World To Object' v1.1.0 dev 04: * Fixes: * Fixed issue on 'Texture Coordinates' node generating wrong dummies on UV Sets different than 1 * Fixed issue on 'Register Local Var' node usage with shader functions * Improvements: * Setting Enable Instancing option default value to false * Adding Exact Conversion option into 'Gamma To Linear' and 'Linear To Gamma' nodes for more accurate results v1.1.0 dev 03: * Fixes: * Fixed issue on 'Pi' node * Fixed issue on 'Texture Coordinates' node not generating unique names when used on vertex body * Fixed issue with incorrectly counting amount of 'Virtual Texture Object' nodes on graphs * Fixed issue on 'Texture Array' drawers * Fixed issue on 'Remap' node preview preventing division by zero * Improvements: * 'Texture Array' node: * Now work with shader functions * Added derivative option to 'Texture Array' node * Minor tweak on tooltip text * New Features: * New Community Node 'GlobalArray' submitted by Vincent van Brummen and created by Johann van Berkel * Added new Enable Instancing toggle into Rendering Options to be able to activate instancing without having to use Property nodes v1.1.0 dev 02: * Improvements: * 'Vertex TexCoord' and 'Swizzle' node types can be selected from node body * Fixes: * Fixed issue with 'Grab Screen Color', 'Get Local Var' and 'Texture Sample' nodes loosing references inside Shader Functions * Fixed issue on not correctly registering all Grab Passes from multiple 'Grab Screen Color' nodes * Fixed small issue on 'Commentary' node not being able to focus on comment text field when created v1.1.0 dev 01: * Fixes: * Fixed issue with being able to open recently created shader multiple times * Improvements: * Added preview for 'Screen Position' node * 'Append' output type can be selected from node body * Small overall optimizations v1.0.0 dev 12: * Fixes: * Fixed wrong casting issues on dynamic type nodes * Fixed lost reference when deleting 'Grab Screen Color' node v1.0.0 dev 11: * New Features: * Additional includes (.cginc) can now be used into an ASE shader via the Additional Includes sections on the Output node * Their contents can be accessed via the 'Custom Expression' node * Added Node Search bar to quickly find nodes on the canvas * Ctrl + F: Shows Search Bar * Enter/Return/F3: Goes to next occurrence * Shift + (Enter/Return/F3): Goes to previous occurrence * Escape: Hides Search Bar * New samples: * UV Light Reveal * Fixes: * Fixed issue on creating unnecessary casts from floats * Fixed minor issue on GPU Instancing sample * Fixed minor UI issues on 'Reflect' and 'Refract' nodes * Fixing shader paths for Community Shaders * Fixed issue on incorrect cast when using Floats and Ints in certain nodes * Fixed issue on resetting in certain situations vertex local variables generated during Output Node fragment code generation * Fixed issue on property name update in 'Grab Screen Color' node * Improvements: * Improved nodes local variables reset behavior to prevent future issues * Added previews to 'Gamma To Linear' and 'Linear To Gamma' nodes * Forcing 'Dot' and 'Normalize' nodes to store results in local value and prevent with power operations v1.0.0 dev 10: * Fixes: * Fixed issue with temporary variable assignment Id on 'Texture Coordinates' node v1.0.0 dev 09: * New Features: * New 'Static Switch' node which allows creation of shader variants * Fixes: * Fixed minor issue on reading inputs from dynamic 'Add' and 'Multiply' nodes on older shader versions * Fixed issue on Parent Graph attempting to delete in-existent connections * Fixed issue with always disabling Light Maps when using Tessellation * Fixed issue with Texture Nodes reference drop down selector showing incorrect labels both on 'Texture Sampler' and 'Texture Coordinates' nodes * Fixed issues on incorrect loosing references with 'Texture Sampler' node on Reference mode * Improvements: * Improved 'Append' node connection management * Added Local Var selector directly on 'Get Local Var' node body v1.0.0 dev 08: * New Features: * New Output node Rendering Options * Disable Batching * Ignore Projector * Force No Shadow Casting * Fixes: * Fixed issue with new dynamic 'Add' and 'Multiply' nodes not registering port creation/destruction into Undo system * Fixed issue on 'Grab Screen Color' node duplicating code * Fixed issue with Opacity Mask port being incorrectly Enabled/Disabled on certain situations * Fixed issue on 'Get Local Var' nodes getting wrong ids on certain situations when a 'Register Local Var' node is deleted * Small fix to force property name update when changing type on property nodes * Fixed issue where 'View Dir' node was generating code in the wrong space when in vertex function for both world space and tangent space v1.0.0 dev 07: * Fixes: * Fixed name conflict on 'Custom Expression' node * Fixed issue for both normal input in indirect lighting nodes that were asking from normal in world space instead of tangent space v1.0.0 dev 06: * New Features: * Added LOD Cross Fade support for LOD groups ( located in the Output node Rendering Options tab ) * Improvements: * 'Add' and 'Multiply' nodes can have more than 2 input ports ( max 10 ) * Minor improvements on several nodes * Refraction port use Unity's grabpass by default so it can pick other refraction materials * Avoiding possible compiler misunderstandings with System.Type calls * Ensuring variables/functions created by custom expressions have unique names * Auto enabling instance mode on material ( if on Unity 5.6 or above ) when detecting instance mode on ASE shader * Improved zoom behavior * Fixes: * Fixed issue when remapping ports from very old shaders * Fixed swizzle issue on 'Vertex Position' node * Fixed matrix 'Invert' node * Fixed SimpleGPUInstancing sample not fully batching on Unity 5.6 * Fixed opening a SF in more than one tab after creation * Fixed header click to edit name when zoomed out * Fixed both Commentary node side menus resize not following the mouse movement correctly * New Shader Functions: ( AmplifyShaderEditor/Examples/Assets/ShaderFunctions ) * Simple HUE * SphereMask v1.0.0 dev 05: * Fixes: * Fixed issue with conditional 'If' node * Fixed issue with 'Vertex Position' node swizzle in Local Vertex Ports * Improvements: * Caching instanced property nodes into local variables to prevent multiple UNITY_ACCESS_INSTANCED_PROP() on them * Added support for samplers types into 'Custom Expression' node v1.0.0 dev 04: * Fixes: * Fixed node drag and drop issue from palette * Fixed issue with online reference button having a "too-large" click box * Palette Menus now display the correct cursor on mouse hover * Fixed clicking Enter on palette without selecting a node * Changing lighting models should now show the error messages correctly * Fixed issue of Custom Light nodes not loading properly * Improvements: * Added Per Renderer Data tag to Properties available Attributes * Adding help box into 'Virtual Texture Object' with additional info v1.0.0 dev 03: * New Features: * Custom Lighting * New Nodes: ( can only be used on this light model ) * Indirect Diffuse Light * Indirect Specular Light * Light Attenuation * New Samples: * Custom Lighting Toon * Fixes: * Fixed issue when zooming with Alt + Right Mouse button * Fixed issue with window not detecting graph type on Unity load * Fixed issue on 'Debug Switch' node not loading properly * Fixed issue on assigning invalid cultures when an error/exception occurred inside ASE * Improvements: * Context Palettes now allow Tab / Shift Tab to select between nodes instead of mouse selection (confirms with Return/Enter key) * Added previews for 'Debug Switch' and 'Toggle Switch' nodes * Added link to node documentation on its tooltip * Small optimization on all nodes overall * Preventing ASE to crash if some faulty class/dll is present on the project v1.0.0 dev 02: * Fixes: * Preventing shadow caster error on using 'Vertex TexCoord' with 'Vertex Normal' v1.0.0 dev 01: * Fixes: * Fixed issue on not recognizing Tessellation port correctly when at Lambert or BlinnPhong light models * Fixed issue on dragging nodes via Alt mode not respecting ports unique ids when creating connections * Fixed minor typo on 'Switch by Face' node * Fixed minor issue when loading LoadPolyWater example v0.7.2 dev 08: * Fixes: * Fixed issue generating input ports instructions on 'Custom Expression' node v0.7.2 dev 07: * New Features: * Added support for multiple ASE windows opened simultaneously * New Samples: * Animated Fire with Shader Functions * Improvements: * Forcing InvariantCulture on ASE execution cycle to prevent issues with number parsing * 'Texture Sampler' node no longer shows it's sampler properties when a 'Texture Object' node is connected to it * Improved redundancy awareness on 'Virtual Texture Object' and 'Texture Sampler' nodes * Improved 'Virtual Texture Object' tooltip * Removed Return button from Shader Functions since it is now useless with new multi-tab behavior * Fixes: * Fixed issue on changing Normal map option in 'Texture Sampler' node not changing its output type * Changed 'Virtual Texture Object' node channel name to 'Layer' and fixed its default value not showing up correctly * Virtual textures now generate properties with their correct name (requires user changes to the virtual texture itself) * Fixed issue that break compiling when a missing shader function was present * Forcing internal data update for shader function Output nodes to prevent errors when they are disconnected * Fixed small issue with shader function nodes being stuck on selection when double clicking on them v0.7.2 dev 06: * New Features: * Added 'HSV To RGB' and 'RGB To HSV' nodes * Improvements: * 'Custom Expression' node with a return instruction on its Code text area generates a function with the code contents thus enabling multiple instructions lines on its body * Added small info text on node properties to explain its behavior * Added new name field ( can also be edited directly on node by double clicking on it ) which is used to name the generated function/ local variable * Small refactoring on some classes for consistency and warning removal from Visual Studio * Fixes: * Fixed issue on some changes not being correctly caught on setting Blend Render Type * Fixed issue with Unlit Light model doubling the value set on the Emission output port * Small fix on title updates when using Shader Functions * Removed warning from unused legacy source code on 'Register Local Var' and 'Get Local Var' nodes * Fixed issues on incorrect casts on 'Texture Sampler' node * Fixed issues on incorrectly snapping wires into hidden ports v0.7.2 dev 05: * Improvements: * Changed tool tip display to trigger when mouse is on top of the node ( now displays below the node) * Shader Functions * Added default values for input node in SF (these are used when there's no connection) * Added port restrictions to dynamic node types * Changed way input node work with restrictions when changing type to prevent invalid connections * Fixes: * Fixed minor typo on 'Rotator' node v0.7.2 dev 04: * Fixes: * Fixed multiple issues on save behavior when changing modes * Fixed issue with shader functions not assigning the main node correctly * Fixed issue on Project Window Change callback * Fixed graph count increasing on shader switch * Fixed version numbering in function nodes * Fixed nested SF issue with inputs v0.7.2 dev 03: * Fixes: * Fixed issue with 'Vertex TexCoord' not writing properties correctly into shader meta v0.7.2 dev 02: * Fixes: * Fixed cast and port activation issues on Blend Nodes * Fixed various issues with SF: * Saving no longer deselects * Reordering is now working properly * Autocast now has port restrictions into account and deletes with warning when possible * Sampler types no longer duplicate * Improvements: * Texture Objects node family can now be set as Globals v0.7.2 dev 01: * New Features: * Added Shader Functions * Added new 'Object Scale' node * Fixes: * Fixed multiple issues with Copy/Paste * Fixed issues with nodes on Vertex Function * 'Fresnel' * 'Posterize' * 'Heightmap Texture Blend' * 'Unpack Scale Normal' * Fixed issue with incorrect data read from 'Texture Coordinates' nodes on versions below 0.5.0 dev 003 * Fixed issue on inverted Receive Shadows toggle * Improvements: * Can Copy/Paste between different Shaders and Shader Functions * Shader properties created by Refraction, Translucency, Mask Value and Tessellation now appear on the Output node Material Properties list and can be reordered * Preventing UndoParentNode to generate DefaultValue conflicts caused by other plugins * Removed warnings generated on some situations by the 'Screen Position' node * New Samples: * LowPolyWater by The Four Headed Cat * ForceShield by The Four Headed Cat v0.7.1 dev 02: * Improvements: * Improved 'Texture Coordinates' node and added new Tex input port into it * Improved local variable usage on several node generated code to improve overall shader instruction count * 'Vertex Position' node now has new Size property * Fixes: * Fixed issues on 'Vertex to Fragment' node * Fixed issue on loading an ASE shader with its window already opened but tabbed and not visible during play mode * Fixed multiple issues with 'Grab Screen Position' node usage on Vertex function * Fixed issue with Forward Shadows not being correctly written when Custom Shadow Caster was active * Fixed issues with Blend nodes usage on Vertex function * Fixed issues with 'Dithering' node usage on vertex function and when Tessellation is active * Fixed issues with 'Screen Depth' node usage on vertex function and when Tessellation is active * Dithering sample now works while Tessellation is active v0.7.1 dev 01: * New Features: * Alt + Node Drag to Auto-(dis)connect node on existing wire connection * Improvements: * Added new Tex Input Port into 'Texel Size' node * Optimized nodes list usage on palettes (API) * Improved retro-compatibility handling with adding new ports on already existing nodes (API) * Fixes: * Fixed issue on horizontal scroll bar not appearing on Helper Window v0.7.0 dev 03: * New Features: * Added 'Face' node * Added 'Switch by Face' node * Fixes: * Fixed issue on not setting shader version on graph when creating a new empty one which lead to copy/paste issues * Fixed wrong port type assignment and incorrect conditional operator usage on community 'Compare ...' nodes * Fixed issue with creating a material from a shader already with properties in Unity 5.6 * Fixed multiple UI issues on Retina MacBook * New Samples: * Highlight Animated by The Four Headed Cat * 2 Sided by The Four Headed Cat * Two Sided with Face v0.7.0 dev 02: * Improvements: * Improved Float to Vector auto-cast * Double-clicking on a 'Get Local Var' node focus on its referenced 'Register Local Var' node * Fixes: * Fixed issue with keyboard shortcuts on Mac * Fixed renaming issues with 'Triplanar Sampler' node * Fixed issue on property nodes UI not refreshing on Undo * Fixed issues on 'Fresnel' and 'Vertex Normal' related with normal generation * Fixed typos on POM * Fixed issue with Wire node deletion * Fixed auto-change port types issues on all Compare nodes v0.7.0 dev 01: * Improvements: * Greatly improved Undo * Colored Port Mode behaves as a normal toggle and doesn't require double tap on W key * New Samples: * Hologram by The Four Headed Cat * Fixes: * Fixed issue on deleting nodes with Wire nodes on their connections v0.6.1 dev 05: * Fixes: * Fixed issue with custom Shadow Caster on Vulkan v0.6.1 dev 04: * Improvement: * Renaming 'Texture Sampler' Type property Instance to Reference and prevent confusion with GPU Instanced properties * Fixes: * Fixed issue on unnecessary saves on Live mode * Also increased Inactivity time from 0.5s to 1s * Fixed issues on some node interactions not being detected by live mode ( and thus not being flagged to save ) * Fixed issue on 'Rotator' node not correctly generating local values according to vertex/frag * Fixed issue on 'Texture Coordinates' node when defining its Inputs with Tessellation active * Fixed issue with custom Shadow Caster on Metal IOs * Fixed small typo on Tessellation Shader Model warning message v0.6.1 dev 03: * New Features: * Adding Fallback shader picker on Master Node * Adding Shader LOD value modifier on Master Node * Improvements: * Node property title changes according to selected node * Added Multi-Line mode to wires ( Ctrl + W ) * Added ability to change 'Triplanar Sampler' node name * Improved wire connections rendering while zoomed * Tweaked live mode to save only when user is inactive for 0.5s * Fixes: * Small node resizing issues fixed * Fixed issues on Live mode not catching node connections and creation correctly v0.6.1 dev 02: * New Features: * Added 'Triplanar Sampler' node * Added Vertex Output ( can now change from Relative/Local Vertex Offset to Absolute/Local Vertex Position ) * Added Smear Sample * Added Unlit Light Model * Added simpler 'Time' node * Added 'Depth Fade' node * Added 'Camera Depth' Fade node * Improvements: * Adding node info into Helper Window * Adding drag and drag valid unity assets list to helper window * 'Screen Position' and 'Grab Screen Position' now have a Output dropdown on its properties instead of a Toggle * Improved GPU instancing example by adding a C# illustrating how to set instanced properties * Fixes: * Fixed issue on preview materials not being initialized after returning from play mode * Fixed issue on local variables reset * Fixed issue with tangent and bitangent previews * Fixed billboard issue with non-uniform scaling * Fixed issue on Tex ports counting as having valid internal data on Node Properties UI * Fixed issue on using 'Texture Sampler' or 'Screen Color instances on Master Node Debug port v0.6.1 dev 01: * Improvements: * Activating internal data into 'Object To World' and 'World To Object' nodes and setting it to (0,0,0,1) by default * 'Texture Array' nodes can be created by dragging a Texture 2D Array object into ASE canvas * Fixes: * Fixed issue on 'Texture Array' node when connecting it to Vertex Ports * Fixed issue on 'Vertex TexCoord' not generating correct source according to their properties * Fixed issues on MourEnvironment, SandPOM and WaterSample shaders v0.6.0 dev 01: * Improvements: * Added Texture Coordinate Coord Size parameter for 'Vertex TexCoord' node * Fixes: * Fixed issue when doing custom shadow caster with translucency on deferred mode * Fix for texture coordinates zeroing out Z and W * Fixed issue with input port internal name not being set correctly * Fixed issue with custom shader inspector on unity 5.6 * Fixed shadows issue on Matcap example * Fixed 'Virtual Texture Object' sampling the correct UVs when not connected v0.5.1 dev 012: * Fixed issue with LightColor node not generating the proper values * Fixed issue when doing custom shadow caster with translucency on deferred mode * Made the code generation compiler friendly because of unity 5.5 and up changes v0.5.1 dev 011: * Adding new Billboard option into Master Node * Control key can be also used to append nodes to selection * Fixed issue with not updating material inspector in real time ( because out of focus ) when changing properties on canvas * Fixed cast issues on object picker with 'Texture Sample' and 'Texture Object' nodes * Added Mask buttons on Previews * Improved overall editor performance v0.5.1 dev 010: * Added 'Desaturate' node * Fixed small visual issue with Color Mask UI * Improved overall UI performance v0.5.1 dev 009: * Linking both Up/Down keys and right mouse dragging to scroll behavior into menus * Canvas zoom can be changed by right mouse dragging while pressing Alt key * Fixing multiple issues with 'Swizzle' node * Heavily optimized drawing the node lines * Fixed issue with loading default shaders to ports v0.5.1 dev 008: * Fixed issues when using line feed on 'Custom Expression' node code area * Fixed wires and previews displaying on top of the title bar * Fixed order issues on 'Commentary' node * Fixed issue with BurnEffect sample * Majorly improved Previews update speed * Added LOD levels to previews ( sampler and texture arrays ) * Added many more node previews * Updated TriplanarProjection and ParallaxMappingIterations samples * Optimization on drawing wires * 'World Normal', 'World Reflection' and 'Fresnel' input ports now modify their previews * Improved Nodes Graph internal ordering to correctly create connections on shader load v0.5.1 dev 007: * Fixed issues with 'Texture Coordinates' node usage with Tessellation * Fixed swizzling issues on 'View Dir' node v0.5.1 dev 006: * Added new Helper Window accessible via the right most button on the graph window * (De)Activating Tessellation and Outlines forces shader to save * Expanded the amount of nodes with available preview * Added fail safe to continue loading shader if in-existing community nodes are detected * Added Normal Map unpacking to 'Texture Array' node and updated its sample * Fixed issues on Debug Port usage * Fixed issues on 'Flipbook UV Animation' when property nodes are connected to rows and column input ports * Fixed issues on Not configuring 'Texture Array' node ports after read * Fixed issues on Major fix on register/get local var mechanics * Fixed issues on Adding a space on the node palette search when opening it via space bar * Fixed issue on ignoring color masks setup on certain situations * Forcing default values on input port internal data if an exception is caught v0.5.1 dev 005: * Added new Curvature Parameter for 'Parallax Occlusion Mapping' Node * Added 'World To Object' node * Added 'Object To World' node * Fixed issue on 'World Normal' node * Fixed issue on 'World Tangent' node * Fixed issue on 'World Bitangent' node * Fixed issue on 'World Reflection' node * Fixed issue on 'Register Local Var' node * Fixed issue with Tessellation used with Custom Shadow Caster * Fixed issue with Mip Level not being used with 'Texture Sampler' nodes on Vertex Ports * Fixed issues with Master Node Debug port usage v0.5.0 dev 005: * Applied overall UI changes from Master Node into all other nodes * Added Node Previews * Added new Frame Title parameter on 'Commentary' nodes * Auto focus on new Frame Title textfield when node is created * Added new Soap Bubble sample using both Reflection and Refraction * Fixed issue with 'Custom Expression' node * Fixed issues on 'Scale' node * Fixed issues on 'Panner' node * Fixed issues on 'View Dir' node * Fixed issues on 'Substance Sample' node * Fixed Repaint issues on ASE custom material editor * Fixed issue with texture defaults not being correctly written on shader meta * Fixed issue on reading alpha:fade option from older versions * Tweaked 'Component Mask' node * Tweaked 'Pi' node * Improved 'Substance Sample' node previewer * Refraction to now have Specularity into account * Removed warnings on importing ASE to Unity v5.6.0 v0.5.0 dev 004: * Added new Outline option on Master Node properties * Tweaked Tessellation material update v0.5.0 dev 003: * Fixed issue with Live Mode load/save state * Fixed repaint issue with picking ports * Tweaked 'Substance Sample' node preview * Adding Toggle Attribute to 'Switch Toggle' node v0.5.0 dev 002: * 'Texture Coordinate' now support float3 or float4 output types * Changed Colored ports saving mechanism * Tweaked how ports are saved/loaded via shader meta to easily modify existing nodes port amount without breaking older versions (API) * Tweaked Simple Noise example * Tweaked Read Atlas examples * Tweaked Translucency example * Minor tweak on 'Texture Sample' node * Fixed issue with local variable declaration on Master Node Debug port * Fixed issue with Screen Space Curvature example * Fixed issue with reading fade parameter on master node * Fixed issue with Transparency shader v0.5.0 dev 001: * Fixed issues with 'Texture Array' node * Fixed issues with 'Texture Coordinates' node * Fixed issues with Tessellation example on MacOs * Fixed issues on multiple examples with Unity beta version 6 and above * Added new 'Substance Sample' Node * Added example using the new 'Substance Sample' node located at Examples/Official/Substance * Added Attributes to Property Nodes * Added Conditional 'If' Node with Dynamic Branching option * Tweaked 'Flipbook UV Animation' node v0.4.1 dev 002: * Fixed issue 'Flipbook UV Animation' node not resetting properly and added a start frame parameter v0.4.1 dev 001: * Fixed issue with Texture Array sample v0.4.0 dev 003: * Default Alpha mode set to Transparent and not Alpha Pre-Multiply * Minor tweak on node sorting on palette windows * Minor tweak on Master Node Property UI * Added new Rendering Options foldout on Master Node properties * Added check to prevent division by zero warning with 'Grab Screen Position' and 'Screen Position' nodes v0.4.0 dev 002: * Forcing LF on all shaders to prevent CRLF mixed with LF when upgrading them * Fixed issues with custom shader inspector v0.4.0 dev 001: * Minor fix on 'Grab Screen Position' node * Added new Refraction port into Master Node. Only works correctly with Unity 5.5.1 p1 and above due to an internal unity issue * Added new Refraction Example ( AmplifyShaderEditor/Official/ObjectNormalRefraction ) * Added new Vertex Normal port into Master Node * Small update to Material and Shader mode borders * Parameter types can now be changed from node itself on property nodes via dropdown on its upper left corner * Various fixes from the way the Blend Mode works to take new translucent option into account * Fixed issue with connections from cache when changing Light Mode on Master Node not respecting port availability * Changed Refracted Shadow demo blend mode * Fixed Vertex Offset issue with custom shadow caster * Small fix to auto change blend mode on rendertype and render queue changes * Fixed some samples with wrong version or wrong connections * Fixed UI problems in Unity Personal skin v0.3.2 dev 003: * Fixed issue with 'Multiply' node * Fixed issue with 'Divide' node * Fixed issue with 'Texture Sample' node * Fixed issue with 'Dot' node * Tweaked 'Fresnel' node to use Unity's interpolators and made the default values match Schlick Fresnel * Tweaked 'World Normal' node to prevent multiple normals generation * Added 'Texture Array' node * Added 'Linear to Gamma' and 'Gamma to Linear' nodes * Majorly revamped the UI for the master nodes options * Revamped Blend Modes and added additional options * Added pos-load test on nodes invalid connections to prevent issues with older ASE versions v0.3.2 dev 001: * Added custom shadow caster * Small fix to both emission and alpha on Fade mode * Fixed minor issues on reading shaders from older versions( < v0.2.0 dev 002 ) * Fixed issues on 'Custom Expression' node * Fixed issues with 'Grab Screen Position' node * Property nodes with Parameter Type set to Global doesn't force _ on the parameter internal name v0.3.1 dev 009: * Fixed 'Grab Screen Color' node issues * Minor tweaks on Context menu * Tweaked 'Screen Position' and 'Grab Screen Position' behavior * Added switching of input ports connections by holding the CTRL key * Added removing of input ports connections by double clicking with the left mouse button on them * Forcing Shader Model to at least 4.6 if Tessellation is active v0.3.1 dev 008: * Small fix to 'Virtual Texture Object' node * Fixed issues on 'Texture Sample' node * Fixed issue on not correctly unregistering nodes from 'Commentary' nodes when they were deleted * Fixed issue when reading old shaders created with v0.2.4 dev 004 * Fixed issue with 'Texture Coordinates' node when using Tessellation * Fixed issues and tweaked overall normals generation * Fixed issue on 'Vector From Matrix' node * Fixed issue on ASE canvas camera incorrectly panning when hitting a tooltip with Middle/Right Mouse Button * Fixed connection errors with 'Vector From Matrix' node * Fixed issue with 'Vertex To Fragment' node * Deprecated 'Local Position' node * Added 'Grab Screen Position' node * Tweaks on nodes and ports names to maintain overall consistency * Added new Scale and Offset option on 'Screen Position' node * 'Register Local Var' node now also has system to prevent duplicate names v0.3.1 dev 007: * Added auto-order option into 'Register Local Var' node * Added new 'Improved Read From Atlas Tiled' example * Added 'Simplified Fmod' node v0.3.1 dev 006: * Fixed control argument exception when deleting connection with Alt key on selected node * Fixed issue with 'Switch Toggle' node v0.3.1 dev 005 * Side menus are now resizable * Tweaked 'Weighted Blend' node * Added 'Summed Blend' node * Added 'Toggle Switch' node * Added new 'Scale and Offset' node * Fixed issues on 'Vertex Binormal World' and '[VS]Vertex Tangent' nodes * Fixed issues with 'Texture Sample' nodes created via dragging a texture to ASE * Fixed issue with 'Scale' node * Fixed issues on incorrectly reading 'Receive Shadows' parameter from ASE shader previous to v0.2.5 v0.3.1 dev 004 * Fixed issues with accessing 'Texture Coordinates' node when tessellation is active v0.3.1 dev 003 * Fixed yet another issue with accessing 'Texture Coordinates' node on vertex function * Reverted shader update mechanism after save to previous old one until issue reported by Seith is fixed v0.3.1 dev 002 * Fixed issues with accessing 'Texture Coordinates' node on vertex function v0.3.1 dev 001 * Improved overall editor UI * Improved Live Mode * Nodes can generate shader comments ( API ) * Each port can now have multiple restrictions ( API ) * 'Texture Object' can now only be connected to 'Texture Sample' nodes * Added 'Switch' toggle node v0.3.0 dev 005 * Auto adding AMPLIFY_SHADER_EDITOR symbol on current target group when initializing ASE ( API - to be used on external community nodes ) * Added keyboard shortcut [F5] to force available nodes refresh ( API ) v0.3.0 dev 004 * Fixed yet another issue with local variables generation v0.3.0 dev 003 * Fixed crash from infinite loop generated on port 'Tex' at 'Texture Sample' node * Fixed cast issue when using internal port data on some nodes * Fixed issues with local variables generation * Tweaked Vertex Displacement port on Master Node * Added ability to specify range of valid data types for input ports ( API ) * Locked 'Tex' port from 'Texture Sample' node to only allow connections to 'Texture Object' nodes v0.3.0 dev 002 * Updated POM to clip edges using a tilling parameter * Updated the sand POM example and its height texture * Updated Water sample * 'Vertex NormalWorld', 'World Position' and 'View Dir' nodes now also output into vertex offset correctly * All editor resources are loaded via their own guid * Added Tessellation port into master node to be able to create custom Tessellation behaviors * Tessellation parameters ( excluding Phong ) on Master Node Properties will be deactivated if its port is being used * Created Nodes for each of the builtin Tessellation functions * Distance-base Tessellation * Edge Length Tessellation * Edge Length Tessellation with Cull * Fixed issues with not creating local variable correctly if graph is shared between vertex and frag ports * Fixed issue with local variables created on automatic casting not taking port category into account * Fixed node width issue regarding its header title size v0.3.0 dev 001 * Fixed issue on where deprecated nodes needed to be available to be replaced by their replacement type * Fixed issues on all conditional nodes * Fixed issue on local variable creations on vertex shader * Fixed issue on 'Commentary' node * Amplify Texture dependency is dynamically set through asset guid * Texture Sampler will quietly ignore virtual object if AT is not found in project and will not generate a broken shader * Deprecated nodes are automatically excluded from the palette * Updated version in all samples * Optimized 'Multiply' and 'Divide' nodes * Added Edge Length based tessellation * Added Fixed Amount based tessellation v0.2.6 dev 001 * Fixed issue on 'Virtual Texture Object' node * Fixed issue on 'If' node * Fixed issues in 'Parallax Occlusion Mapping' node * Fixed issues on 'Texture Sampler' node * Fixed issue for translucency on point lights * Fixed issues on 'Texture Coordinates' node * Fixed issue on not correctly syncing ASE when when hitting paste button on our custom inspector * Avoiding null pointer exception when compiling a 'Texel Size' node without references * Re-Organized ASE folder system and added initial pop-up window to clean old/deprecated data * Tweaked Default/Material values UI on Property nodes * Node Properties window can now be show by double clicking a node * Renamed Uniform parameter type to Global * Added Distance-Based tessellation. Can be activated/configured on Master Node properties * Added Tessellation sample * Added emission baking support. Queue must be set to "Geometry" to work properly * Added Tiled Atlas sample * Added scenes for each sample * Added tool tips for Master Node properties v0.2.5 dev 004 * Added Parallax Occlusion Mapping node (uses linear search with customizable samples in conjuntion with interval mapping for refinement of sidewalls) * Added simple snapping behavior when moving nodes (left-control) * Fixed background grid image sliding when zooming * Fixed issue with 'Texcoord Vertex Data' on writing * Fixed issues with default values of 'Virtual Texture Object' * Fixed issues when drawing 'Matrix3x3' and 'Matrix4x4' nodes * Fixed compilation error when creating builds v0.2.5 dev 003 * Fixed issues on 'Texture Coordinate' node * Fixed issues with 'Texture Sample' node not reading the correct values from older shaders versions * Fixed issues with instanced texture samples * Fixed issues with 'Texel Size' node * Fixed issues with adding new categories on community created nodes * Custom category colors can now also be set up via NodeAttributes(...) * Created simpler method ( GeneratePortInstructions(...) ) to generate input instructions. Handy for community members which are creating new custom nodes * Fixed issue with propagating incorrect port types on master node when loading shader from older versions * Fixed issues with parallax example * Alpha channel/Opacity port is forced to 1 if Keep Alpha is set to true and port is not connected to prevent UI issues * Added index property in '[VS] Vertex TexCoord' node and marked '[VS] Vertex TexCoord1' node as deprecated * Tweaked collision area on minimize/maximize buttons on lateral windows * Small optimization on 'Custom Expression' node * Added support for virtual texturing via Amplify Texture * Community Node additions * Jason Booth * Added 'Vertex To Fragment' node v0.2.5 dev 002 * Added 'Texture Object' node * Tweaked 'Texture Sample' node behavior to use the new 'Texture Object' node * Added Stencil Buffer support * Added Depth foldout with access to ZWrite, ZTest and Offset configuration * Added AMPLIFY_SHADER_EDITOR preprocessor directive * Fixed issue on not resetting instance variables counter on reset/load * Overall fixes on node UI and its adaptation when zooming out v0.2.5 dev 001 * Added Color Mask option on Master Node * Added access to additional UV sets on "Texture Sample" and "Texture Coordinates" nodes * Fixed issue when attempting to connect a wire to a locked port * Fixed issue with incorrectly adding '#pragma multi_compile_instancing' on non instanced property shaders * Minor tweak on palette foldout behavior v0.2.4 dev 007 * Fixed issue on wrong auto-snapping wires with invisible, locked ports * Fixed issue with version control on Master Node * Added Transmission input port on Master Node * Added 'Mip Mode' in 'Texture Sample' node * Property names can now be changed directly on node by double clicking on it * Properties can be reordered through drag and drop operations on the Master Node properties via the Available Properties foldout area * Min/Max values on 'Ranged Float' nodes can be modified directly on canvas v0.2.4 dev 006 ( for internal reasons we had to skip dev 005 ) * Fixes issues on 'Panner' node * Fixed issues with not correctly generating local variables according to port category * Tweaked behavior and fixed issues on the 'Texture Coordinate' node * Fixed issues on 'Texel Size' node * Fixed issues on 'Local Vertex Pos' node * Fixed issues with Burn Effect Sample * Removed positive number restriction from Master Node 'Queue Index' property * Custom Material Inspector can be selected/changed on Master Node * Done through the Custom Editor property * You can always reset to our own by hitting the Reset button next to hit * Updated Rim Light Sample to use the new Space option on the 'View Dir' node * Updated Parallax Sample to use the new Space option on the 'View Dir' node * Added 'Translucency' input port into Master Node * Added 'Dithering' node * Added Matcap Sample * Added Dithering Sample * Added Rendering Platforms selector on Master node * Added Water Sample on a small terrain in the Sample Scene v0.2.4 dev 004 * Fixed issues with wire shader * Fixed issues with 'Texture Coordinates' node * Removed warnings occurring on Unity v5.5 * Fixed issue with 'Append' Node * Fixed issue with ASE Custom Material Inspector * Tweaked 'Local Vertex Pos' node to output differently if generating code for vertex or fragment ports v0.2.4 dev 003 * Added Texture Reference dropdown to 'Texture Coordinates' node * Added Render Path dropdown in Master Node * Tweaked 'View Dir' node so you're able to choose between getting the result in tangent or world space * Tweaked 'World Space Light Dir' to no longer use internal input port data when nothing is connected, instead worldPos is automaticaly fed into it * Added Unity version check for wires shader and fix compatibility issues * Added Normalize toggle into 'Screen Position' node * Community Node additions * Tobias Pott * Added 'Swizzle' node v0.2.4 dev 002 * Added 'Layered Blend' node * Added 'Weighted Blend' node * Added 'Texel Size' node * Merged '[VS] Vertex Color' and 'Vertex Color' nodes in order to avoid further confusions and marked the first one as deprecated * Node internally changes its output if it's writing to a vertex or fragment port * Added 'Surface Depth' node * Added 'Screen Depth' node * Fixed issue with property nodes uniform variables not taking selected precision into account v0.2.4 dev 001 * Added 'Parallax Mapping' node * Added 'Negate' node * Added Fake Window user sample * Added Parallax Mapping example with 4 iterations using the basic Parallax Mapping node v0.2.3 dev 002 * Added 'Custom Expression' node * Precision used is now the least between the one selected in the node and main one selected on the master node * 'Register Local Var' and 'Get Local Var' nodes can now be used on Master Node Vertex ports * Improved wires visuals * Fixed issue with local variables generation * Fixed issue with switching port internal data from float to int * Fixed cast issue with 'Remap' node * Added all the supported shader models into the Master Node dropdown * When creating a shader the default selected is now 2.5 to match Unity default * Community Node additions * The Four Headed Cat * Added 'Grayscale' node v0.2.3 dev 001 * New control points can be added to wires to better manipulate its shape * Double click a wire to create an additional control point * Control points are selected, moved and deleted similar to regular nodes * Fixed issue with box selection being active when dragging nodes with the 'Shift' key held down * Fixed issues with wire resources not being correctly released when ASE is shut down * Fixed issues with 'Pixel Normal World' and 'Vertex Normal World' nodes * Fixed issue with 'Multiply' node on Matrix/Vector multiplications * Fixed issue with 'Break To Components' node * Fixed issue with 'Component Mask' node * Fixed issue with wrong type propagation when replacing node connections * Fixed issue with instance references being lost on 'Texture Sample' and 'Screen Color' nodes * Tweaked 'Object to World' and 'World to Object' nodes to be more compile friendly * Added 'Model' matrix node * Added 'Relay' node * Added 'TriplanarObjectSpace' sample to Samples folder * Added precision selector for variables ( known issue: precision info is not being taken into account when auto local vars are created ) * Community Node additions * The Four Headed Cat * Added 'Tau' node * Rea * Added 'Height Map Blend' node v0.2.2 dev 001 * Fixed issue with 'Mask Clip Value' not being correctly synced between material and shader * Added colored Debug Mode ... this is an experimental feature where each port and wire are colored according to its data type. Each color/type pair are not final * Hold 'P' key to enable debug mode and release it to disable it * Double hit 'P' key to toggle debug mode on. Double hit 'P' key again to disable it. * Added 'Matrix From Vectors' node * Fixed issue with 'Vertex Binormal World' node * Added 'Shader Model' dropdown on Master Node properties * Community Node additions * The Four Headed Cat * Fixed issues with 'Logical Operator' nodes v0.2.1 dev 001 * Fixed multiple issues importing current version on top of v0.1.0 dev 001 v0.2.0 dev 003 * Mask Clip Value when used is registered as a Material Property v0.2.0 dev 002 * Improved duplicate code detection system * Slight improvement on save/update times ( important for Live Mode ) * Fixed issue with 'Texture Sample' node incorrectly outputting a float4 when no texture assigned and on Normal mode * Fixed issue on not opening the correct shader from a material inspector if a new one is selected from its dropdown * Fixed issue with 'Length' node incorrectly changing its output type * Community Node additions * The Four Headed Cat * Flipbook UV Animation v0.2.0 dev 001 * Fixed issues with 'Get Local Var' node * Output port type is now correctly set to its reference type * Changed how references are saved so it won't be affected by order index re-ordering * Fixed issue with 'Power' node * Fixed issue with 'ATan2' node * Fixed issue with 'Cross' node * Community Node additions * The Four Headed Cat * Logical If * Pixelate * Community Samples additions * The Four Headed Cat * DissolveBurn * Mourelas Konstantinos * EnvironmentGradient v0.1.5 dev 001 * Community Node additions * The Four Headed Cat ( moved to a separate 'Logical Operators' category ) * Compare With Range * Compare Not Equal * Compare Lower Equal * Compare Greater Equal * Compare Lower * Compare Greater * Kebrus * Vertex Tangent World * Vertex Binormal World * 'Register Local Var' node changes: * Is now independent from Master Node execution order and generates activation signals * Will always be executed even if not connected to Master Node * Fixed issue updating name string array when loading from file * Added order index to control their declaration order( lesser index declared first ) * Fixed issue on port type change not propagating in certain nodes * Hitting Escape key will disable context palette menu if active * Fixed issue where right mouse clicking on certain port areas would delete their wire connection * Minor improvement on nodes performance v0.1.4 dev 002 * Dynamic type nodes now also reacting to input port disconnections * Updated TFHCRemap node from benderete 0.1.4 dev 001 * Fixed issue with order index not being correctly read/written * Redone Refraction Shader according to rea suggestion * Register Local Var node now has a title style similar to Property Nodes with the local var name always visible * Added Get Local Var Node. It allows the user to use already registered local vars anywhere in the graph * Added Custom Node Remap ("TFHC - Remap") created by user benderete * Fixed issue on Texture Sample UV port not correctly casting to float2 when needed * Fixed issue with Texture Sample node not adapting layout when reference is in normal mode v0.1.3 dev 003 * Added RegisterLocalVar node. This is a node to improve shader readability in certain situations, as it forces the shader to create a local var containing its input value and always use that as output * Added Screen Color Texture Reference feature * Created Simple Refraction example ( Samples/SimpleRefraction ) * Fixed issues with sampler instance resizing * Fixed issue with Fresnel node incident vector * Fixed issue with attempting connection removal on inexistent nodes ( bug affecting Append node ) * Fixed issue with overwriting render type and queue values with Blend Mode default values on read from file v0.1.3 dev 002 * Fixed multiple issues with deleting a Texture Sample node being referenced by other nodes * Tweaked Texture Sample reference UI v0.1.3 dev 001 * Fixed issue when releasing mouse drag on menu areas not resetting auto*pan * Tweaked Shader Instancing UI * Fixed issue with material inspector crashing when updating a property with ASE window turned off * Fixed issue with custom UI skins not being correctly initialized under some conditions * Added Texture Reference feature * Added 'Simple Blur' example to demonstrate how Texture referencing works * Added small 'Made with Amplify Shader Editor' info as comment on generated shaders v0.1.2 dev 003 * Fixed issues with opening materials via inspector with no ASE window initialized v0.1.2 dev 002 * Added GPU Instancing ( see Samples/SimpleGPUInstancing example ) * Added Screen Color node * Fixed issue on version testing * Tweaked Master Node icon * Added additional icon into top-left master node node indicating if gpu instancing is being used or not v0.1.2 dev 001 * Fixed typo on Texture Coordinate node * Added explicit control on Render Type and Queue. They will be automatically set when a Blend Mode is selected. * Added Fresnel node * Fixed Trigonometry typo * Improved local var generation on op nodes * Added FWidth node * Fixed issue with not immediately updating shader when hitting the Live Shader Mode button v0.1.1 dev 001 * Community Contribution from kebrus: Added Rotator node, rotates UV Coordinates/ Vector2 nodes * Fixed Vector2 Append Node bug * Fixed Int to Float cast issues * Added Shader title area on top canvas to forbidden node interaction area * Adjusted Auto-Pan behavior * Fixed issue with nodes infinite loop detection * Tweaked mouse detection inside main canvas * Fixed Queue Order typo when building shader * Improved notifications when impossible cast is requested * Added new VectorFromMatrix which gets a specific row or column from a 3x3 or 4x4 matrix * Automatically hiding Order Index on Uniform Property Type nodes * Simpler Searchable Node List also being called by hitting the space bar if focus is on main node canvas