From c131662231dffbf2e4eb16b58917730b247ac92d Mon Sep 17 00:00:00 2001 From: Jacky Riawan Date: Sat, 5 May 2018 08:37:10 +0200 Subject: [PATCH 01/27] Remove the source codes because it will conflict with the dll --- .../Assets/ShaderForge/Editor/Code.meta | 9 - .../ShaderForge/Editor/Code/SFPSC_Blending.cs | 941 ----- .../Editor/Code/SFPSC_Blending.cs.meta | 8 - .../ShaderForge/Editor/Code/SFPSC_Console.cs | 126 - .../Editor/Code/SFPSC_Console.cs.meta | 8 - .../Editor/Code/SFPSC_Experimental.cs | 79 - .../Editor/Code/SFPSC_Experimental.cs.meta | 8 - .../ShaderForge/Editor/Code/SFPSC_Geometry.cs | 163 - .../Editor/Code/SFPSC_Geometry.cs.meta | 8 - .../ShaderForge/Editor/Code/SFPSC_Lighting.cs | 365 -- .../Editor/Code/SFPSC_Lighting.cs.meta | 8 - .../ShaderForge/Editor/Code/SFPSC_Meta.cs | 340 -- .../Editor/Code/SFPSC_Meta.cs.meta | 8 - .../Editor/Code/SFPSC_Properties.cs | 520 --- .../Editor/Code/SFPSC_Properties.cs.meta | 8 - .../ShaderForge/Editor/Code/SFPS_Category.cs | 347 -- .../Editor/Code/SFPS_Category.cs.meta | 8 - .../Editor/Code/SF_Dependencies.cs | 306 -- .../Editor/Code/SF_Dependencies.cs.meta | 8 - .../ShaderForge/Editor/Code/SF_Editor.cs | 2179 ----------- .../ShaderForge/Editor/Code/SF_Editor.cs.meta | 8 - .../Editor/Code/SF_EditorNodeBrowser.cs | 411 -- .../Editor/Code/SF_EditorNodeBrowser.cs.meta | 8 - .../Editor/Code/SF_EditorNodeData.cs | 354 -- .../Editor/Code/SF_EditorNodeData.cs.meta | 8 - .../Editor/Code/SF_EditorNodeView.cs | 953 ----- .../Editor/Code/SF_EditorNodeView.cs.meta | 8 - .../ShaderForge/Editor/Code/SF_ErrorEntry.cs | 66 - .../Editor/Code/SF_ErrorEntry.cs.meta | 8 - .../Editor/Code/SF_FeatureChecker.cs | 141 - .../Editor/Code/SF_FeatureChecker.cs.meta | 8 - .../Editor/Code/SF_InstructionPass.cs | 125 - .../Editor/Code/SF_InstructionPass.cs.meta | 8 - .../Editor/Code/SF_NodeConnectionLine.cs | 345 -- .../Editor/Code/SF_NodeConnectionLine.cs.meta | 8 - .../Editor/Code/SF_NodeConnector.cs | 1217 ------ .../Editor/Code/SF_NodeConnector.cs.meta | 8 - .../ShaderForge/Editor/Code/SF_NodePreview.cs | 375 -- .../Editor/Code/SF_NodePreview.cs.meta | 8 - .../ShaderForge/Editor/Code/SF_NodeStatus.cs | 55 - .../Editor/Code/SF_NodeStatus.cs.meta | 8 - .../Editor/Code/SF_NodeTreeStatus.cs | 494 --- .../Editor/Code/SF_NodeTreeStatus.cs.meta | 8 - .../ShaderForge/Editor/Code/SF_Parser.cs | 280 -- .../ShaderForge/Editor/Code/SF_Parser.cs.meta | 8 - .../Editor/Code/SF_PassSettings.cs | 414 -- .../Editor/Code/SF_PassSettings.cs.meta | 8 - .../Editor/Code/SF_PreviewSettings.cs | 22 - .../Editor/Code/SF_PreviewSettings.cs.meta | 8 - .../Editor/Code/SF_PreviewWindow.cs | 506 --- .../Editor/Code/SF_PreviewWindow.cs.meta | 8 - .../Editor/Code/SF_SelectionManager.cs | 412 -- .../Editor/Code/SF_SelectionManager.cs.meta | 8 - .../ShaderForge/Editor/Code/SF_Settings.cs | 154 - .../Editor/Code/SF_Settings.cs.meta | 8 - .../ShaderForge/Editor/Code/SF_StatusBox.cs | 328 -- .../Editor/Code/SF_StatusBox.cs.meta | 8 - .../Editor/Code/_ConnectionGroups.meta | 5 - .../Code/_ConnectionGroups/SFNCG_Append.cs | 213 - .../_ConnectionGroups/SFNCG_Append.cs.meta | 8 - .../_ConnectionGroups/SFNCG_Arithmetic.cs | 270 -- .../SFNCG_Arithmetic.cs.meta | 8 - .../_ConnectionGroups/SFNCG_ChannelBlend.cs | 26 - .../SFNCG_ChannelBlend.cs.meta | 8 - .../_ConnectionGroups/SFNCG_ComponentMask.cs | 193 - .../SFNCG_ComponentMask.cs.meta | 8 - .../_ConnectionGroups/SFNCG_MatrixMultiply.cs | 90 - .../SFNCG_MatrixMultiply.cs.meta | 12 - .../SF_NodeConnectionGroup.cs | 83 - .../SF_NodeConnectionGroup.cs.meta | 8 - .../ShaderForge/Editor/Code/_Enums.meta | 5 - .../Editor/Code/_Enums/SF_VarTypeEnums.cs | 5 - .../Code/_Enums/SF_VarTypeEnums.cs.meta | 8 - .../ShaderForge/Editor/Code/_Evaluator.meta | 5 - .../Editor/Code/_Evaluator/Pass_FwdAdd.cs | 50 - .../Code/_Evaluator/Pass_FwdAdd.cs.meta | 8 - .../Editor/Code/_Evaluator/SF_Evaluator.cs | 3444 ----------------- .../Code/_Evaluator/SF_Evaluator.cs.meta | 8 - .../Editor/Code/_Evaluator/_NewSystem.meta | 5 - .../_Evaluator/_NewSystem/DependencyTree.cs | 102 - .../_NewSystem/DependencyTree.cs.meta | 8 - .../ShaderForge/Editor/Code/_Nodes.meta | 5 - .../ShaderForge/Editor/Code/_Nodes/SFN_Abs.cs | 26 - .../Editor/Code/_Nodes/SFN_Abs.cs.meta | 8 - .../ShaderForge/Editor/Code/_Nodes/SFN_Add.cs | 72 - .../Editor/Code/_Nodes/SFN_Add.cs.meta | 8 - .../Editor/Code/_Nodes/SFN_AmbientLight.cs | 63 - .../Code/_Nodes/SFN_AmbientLight.cs.meta | 8 - .../Editor/Code/_Nodes/SFN_Append.cs | 190 - .../Editor/Code/_Nodes/SFN_Append.cs.meta | 8 - .../Editor/Code/_Nodes/SFN_ArcCos.cs | 30 - .../Editor/Code/_Nodes/SFN_ArcCos.cs.meta | 8 - .../Editor/Code/_Nodes/SFN_ArcSin.cs | 30 - .../Editor/Code/_Nodes/SFN_ArcSin.cs.meta | 8 - .../Editor/Code/_Nodes/SFN_ArcTan.cs | 30 - .../Editor/Code/_Nodes/SFN_ArcTan.cs.meta | 8 - .../Editor/Code/_Nodes/SFN_ArcTan2.cs | 118 - .../Editor/Code/_Nodes/SFN_ArcTan2.cs.meta | 8 - .../Editor/Code/_Nodes/SFN_Bitangent.cs | 35 - .../Editor/Code/_Nodes/SFN_Bitangent.cs.meta | 8 - .../Editor/Code/_Nodes/SFN_Blend.cs | 339 -- .../Editor/Code/_Nodes/SFN_Blend.cs.meta | 8 - .../Editor/Code/_Nodes/SFN_Ceil.cs | 26 - .../Editor/Code/_Nodes/SFN_Ceil.cs.meta | 8 - .../Editor/Code/_Nodes/SFN_ChannelBlend.cs | 194 - .../Code/_Nodes/SFN_ChannelBlend.cs.meta | 8 - .../Editor/Code/_Nodes/SFN_Clamp.cs | 66 - .../Editor/Code/_Nodes/SFN_Clamp.cs.meta | 8 - .../Editor/Code/_Nodes/SFN_Clamp01.cs | 30 - .../Editor/Code/_Nodes/SFN_Clamp01.cs.meta | 8 - .../Editor/Code/_Nodes/SFN_Code.cs | 609 --- .../Editor/Code/_Nodes/SFN_Code.cs.meta | 8 - .../Editor/Code/_Nodes/SFN_Color.cs | 123 - .../Editor/Code/_Nodes/SFN_Color.cs.meta | 8 - .../Editor/Code/_Nodes/SFN_CommentBox.cs | 43 - .../Editor/Code/_Nodes/SFN_CommentBox.cs.meta | 12 - .../Editor/Code/_Nodes/SFN_ComponentMask.cs | 387 -- .../Code/_Nodes/SFN_ComponentMask.cs.meta | 8 - .../Editor/Code/_Nodes/SFN_ConstantClamp.cs | 126 - .../Code/_Nodes/SFN_ConstantClamp.cs.meta | 8 - .../Editor/Code/_Nodes/SFN_ConstantLerp.cs | 125 - .../Code/_Nodes/SFN_ConstantLerp.cs.meta | 8 - .../ShaderForge/Editor/Code/_Nodes/SFN_Cos.cs | 26 - .../Editor/Code/_Nodes/SFN_Cos.cs.meta | 8 - .../Editor/Code/_Nodes/SFN_Cross.cs | 36 - .../Editor/Code/_Nodes/SFN_Cross.cs.meta | 8 - .../Editor/Code/_Nodes/SFN_Cubemap.cs | 203 - .../Editor/Code/_Nodes/SFN_Cubemap.cs.meta | 8 - .../ShaderForge/Editor/Code/_Nodes/SFN_DDX.cs | 26 - .../Editor/Code/_Nodes/SFN_DDX.cs.meta | 9 - .../Editor/Code/_Nodes/SFN_DDXY.cs | 30 - .../Editor/Code/_Nodes/SFN_DDXY.cs.meta | 12 - .../ShaderForge/Editor/Code/_Nodes/SFN_DDY.cs | 26 - .../Editor/Code/_Nodes/SFN_DDY.cs.meta | 9 - .../Editor/Code/_Nodes/SFN_Depth.cs | 37 - .../Editor/Code/_Nodes/SFN_Depth.cs.meta | 8 - .../Editor/Code/_Nodes/SFN_DepthBlend.cs | 43 - .../Editor/Code/_Nodes/SFN_DepthBlend.cs.meta | 8 - .../Editor/Code/_Nodes/SFN_Desaturate.cs | 112 - .../Editor/Code/_Nodes/SFN_Desaturate.cs.meta | 8 - .../Editor/Code/_Nodes/SFN_Distance.cs | 52 - .../Editor/Code/_Nodes/SFN_Distance.cs.meta | 8 - .../Editor/Code/_Nodes/SFN_Divide.cs | 43 - .../Editor/Code/_Nodes/SFN_Divide.cs.meta | 8 - .../ShaderForge/Editor/Code/_Nodes/SFN_Dot.cs | 137 - .../Editor/Code/_Nodes/SFN_Dot.cs.meta | 8 - .../ShaderForge/Editor/Code/_Nodes/SFN_E.cs | 20 - .../Editor/Code/_Nodes/SFN_E.cs.meta | 8 - .../ShaderForge/Editor/Code/_Nodes/SFN_Exp.cs | 93 - .../Editor/Code/_Nodes/SFN_Exp.cs.meta | 8 - .../Editor/Code/_Nodes/SFN_FaceSign.cs | 93 - .../Editor/Code/_Nodes/SFN_FaceSign.cs.meta | 12 - .../Editor/Code/_Nodes/SFN_Final.cs | 100 - .../Editor/Code/_Nodes/SFN_Final.cs.meta | 8 - .../Editor/Code/_Nodes/SFN_Floor.cs | 26 - .../Editor/Code/_Nodes/SFN_Floor.cs.meta | 8 - .../Editor/Code/_Nodes/SFN_Fmod.cs | 29 - .../Editor/Code/_Nodes/SFN_Fmod.cs.meta | 8 - .../Editor/Code/_Nodes/SFN_FogColor.cs | 52 - .../Editor/Code/_Nodes/SFN_FogColor.cs.meta | 9 - .../Editor/Code/_Nodes/SFN_Frac.cs | 26 - .../Editor/Code/_Nodes/SFN_Frac.cs.meta | 8 - .../Code/_Nodes/SFN_FragmentPosition.cs | 49 - .../Code/_Nodes/SFN_FragmentPosition.cs.meta | 8 - .../Editor/Code/_Nodes/SFN_Fresnel.cs | 100 - .../Editor/Code/_Nodes/SFN_Fresnel.cs.meta | 8 - .../ShaderForge/Editor/Code/_Nodes/SFN_Get.cs | 98 - .../Editor/Code/_Nodes/SFN_Get.cs.meta | 12 - .../Editor/Code/_Nodes/SFN_HalfVector.cs | 36 - .../Editor/Code/_Nodes/SFN_HalfVector.cs.meta | 8 - .../Editor/Code/_Nodes/SFN_HsvToRgb.cs | 71 - .../Editor/Code/_Nodes/SFN_HsvToRgb.cs.meta | 12 - .../ShaderForge/Editor/Code/_Nodes/SFN_Hue.cs | 64 - .../Editor/Code/_Nodes/SFN_Hue.cs.meta | 12 - .../ShaderForge/Editor/Code/_Nodes/SFN_If.cs | 95 - .../Editor/Code/_Nodes/SFN_If.cs.meta | 8 - .../Editor/Code/_Nodes/SFN_InverseLerp.cs | 75 - .../Code/_Nodes/SFN_InverseLerp.cs.meta | 12 - .../Editor/Code/_Nodes/SFN_Length.cs | 42 - .../Editor/Code/_Nodes/SFN_Length.cs.meta | 8 - .../Editor/Code/_Nodes/SFN_Lerp.cs | 58 - .../Editor/Code/_Nodes/SFN_Lerp.cs.meta | 8 - .../Code/_Nodes/SFN_LightAttenuation.cs | 36 - .../Code/_Nodes/SFN_LightAttenuation.cs.meta | 8 - .../Editor/Code/_Nodes/SFN_LightColor.cs | 40 - .../Editor/Code/_Nodes/SFN_LightColor.cs.meta | 8 - .../Editor/Code/_Nodes/SFN_LightPosition.cs | 40 - .../Code/_Nodes/SFN_LightPosition.cs.meta | 8 - .../Editor/Code/_Nodes/SFN_LightVector.cs | 36 - .../Code/_Nodes/SFN_LightVector.cs.meta | 8 - .../ShaderForge/Editor/Code/_Nodes/SFN_Log.cs | 111 - .../Editor/Code/_Nodes/SFN_Log.cs.meta | 8 - .../Editor/Code/_Nodes/SFN_Matrix4x4.cs | 93 - .../Editor/Code/_Nodes/SFN_Matrix4x4.cs.meta | 12 - .../Code/_Nodes/SFN_Matrix4x4Property.cs | 98 - .../Code/_Nodes/SFN_Matrix4x4Property.cs.meta | 12 - .../ShaderForge/Editor/Code/_Nodes/SFN_Max.cs | 76 - .../Editor/Code/_Nodes/SFN_Max.cs.meta | 8 - .../ShaderForge/Editor/Code/_Nodes/SFN_Min.cs | 78 - .../Editor/Code/_Nodes/SFN_Min.cs.meta | 8 - .../Editor/Code/_Nodes/SFN_Multiply.cs | 72 - .../Editor/Code/_Nodes/SFN_Multiply.cs.meta | 8 - .../Editor/Code/_Nodes/SFN_MultiplyMatrix.cs | 91 - .../Code/_Nodes/SFN_MultiplyMatrix.cs.meta | 12 - .../Editor/Code/_Nodes/SFN_Negate.cs | 30 - .../Editor/Code/_Nodes/SFN_Negate.cs.meta | 8 - .../Editor/Code/_Nodes/SFN_Node_Constant.cs | 57 - .../Code/_Nodes/SFN_Node_Constant.cs.meta | 8 - .../Editor/Code/_Nodes/SFN_Noise.cs | 87 - .../Editor/Code/_Nodes/SFN_Noise.cs.meta | 8 - .../Editor/Code/_Nodes/SFN_NormalBlend.cs | 101 - .../Code/_Nodes/SFN_NormalBlend.cs.meta | 8 - .../Editor/Code/_Nodes/SFN_NormalVector.cs | 78 - .../Code/_Nodes/SFN_NormalVector.cs.meta | 8 - .../Editor/Code/_Nodes/SFN_Normalize.cs | 44 - .../Editor/Code/_Nodes/SFN_Normalize.cs.meta | 8 - .../Editor/Code/_Nodes/SFN_ObjectPosition.cs | 39 - .../Code/_Nodes/SFN_ObjectPosition.cs.meta | 8 - .../Editor/Code/_Nodes/SFN_ObjectScale.cs | 70 - .../Code/_Nodes/SFN_ObjectScale.cs.meta | 9 - .../Editor/Code/_Nodes/SFN_OneMinus.cs | 57 - .../Editor/Code/_Nodes/SFN_OneMinus.cs.meta | 8 - .../Editor/Code/_Nodes/SFN_Panner.cs | 161 - .../Editor/Code/_Nodes/SFN_Panner.cs.meta | 8 - .../Editor/Code/_Nodes/SFN_Parallax.cs | 142 - .../Editor/Code/_Nodes/SFN_Parallax.cs.meta | 8 - .../ShaderForge/Editor/Code/_Nodes/SFN_Phi.cs | 19 - .../Editor/Code/_Nodes/SFN_Phi.cs.meta | 8 - .../ShaderForge/Editor/Code/_Nodes/SFN_Pi.cs | 19 - .../Editor/Code/_Nodes/SFN_Pi.cs.meta | 8 - .../Editor/Code/_Nodes/SFN_PixelSize.cs | 38 - .../Editor/Code/_Nodes/SFN_PixelSize.cs.meta | 8 - .../Editor/Code/_Nodes/SFN_Posterize.cs | 48 - .../Editor/Code/_Nodes/SFN_Posterize.cs.meta | 8 - .../Editor/Code/_Nodes/SFN_Power.cs | 56 - .../Editor/Code/_Nodes/SFN_Power.cs.meta | 8 - .../Code/_Nodes/SFN_ProjectionParameters.cs | 40 - .../_Nodes/SFN_ProjectionParameters.cs.meta | 8 - .../Editor/Code/_Nodes/SFN_Reciprocal.cs | 59 - .../Editor/Code/_Nodes/SFN_Reciprocal.cs.meta | 12 - .../Editor/Code/_Nodes/SFN_Reflect.cs | 34 - .../Editor/Code/_Nodes/SFN_Reflect.cs.meta | 8 - .../Editor/Code/_Nodes/SFN_Relay.cs | 69 - .../Editor/Code/_Nodes/SFN_Relay.cs.meta | 8 - .../Editor/Code/_Nodes/SFN_RemapRange.cs | 151 - .../Editor/Code/_Nodes/SFN_RemapRange.cs.meta | 8 - .../Code/_Nodes/SFN_RemapRangeAdvanced.cs | 94 - .../_Nodes/SFN_RemapRangeAdvanced.cs.meta | 8 - .../Editor/Code/_Nodes/SFN_RgbToHsv.cs | 130 - .../Editor/Code/_Nodes/SFN_RgbToHsv.cs.meta | 12 - .../Editor/Code/_Nodes/SFN_Root2.cs | 19 - .../Editor/Code/_Nodes/SFN_Root2.cs.meta | 8 - .../Editor/Code/_Nodes/SFN_Rotator.cs | 179 - .../Editor/Code/_Nodes/SFN_Rotator.cs.meta | 8 - .../Editor/Code/_Nodes/SFN_Round.cs | 26 - .../Editor/Code/_Nodes/SFN_Round.cs.meta | 8 - .../Editor/Code/_Nodes/SFN_SceneColor.cs | 51 - .../Editor/Code/_Nodes/SFN_SceneColor.cs.meta | 8 - .../Editor/Code/_Nodes/SFN_SceneDepth.cs | 40 - .../Editor/Code/_Nodes/SFN_SceneDepth.cs.meta | 8 - .../Code/_Nodes/SFN_ScreenParameters.cs | 40 - .../Code/_Nodes/SFN_ScreenParameters.cs.meta | 8 - .../Editor/Code/_Nodes/SFN_ScreenPos.cs | 83 - .../Editor/Code/_Nodes/SFN_ScreenPos.cs.meta | 8 - .../ShaderForge/Editor/Code/_Nodes/SFN_Set.cs | 83 - .../Editor/Code/_Nodes/SFN_Set.cs.meta | 12 - .../Editor/Code/_Nodes/SFN_Sign.cs | 29 - .../Editor/Code/_Nodes/SFN_Sign.cs.meta | 8 - .../ShaderForge/Editor/Code/_Nodes/SFN_Sin.cs | 26 - .../Editor/Code/_Nodes/SFN_Sin.cs.meta | 8 - .../Editor/Code/_Nodes/SFN_Slider.cs | 170 - .../Editor/Code/_Nodes/SFN_Slider.cs.meta | 8 - .../Editor/Code/_Nodes/SFN_Smoothstep.cs | 64 - .../Editor/Code/_Nodes/SFN_Smoothstep.cs.meta | 12 - .../Editor/Code/_Nodes/SFN_Sqrt.cs | 26 - .../Editor/Code/_Nodes/SFN_Sqrt.cs.meta | 8 - .../Editor/Code/_Nodes/SFN_StaticBranch.cs | 80 - .../Code/_Nodes/SFN_StaticBranch.cs.meta | 8 - .../Editor/Code/_Nodes/SFN_Step.cs | 31 - .../Editor/Code/_Nodes/SFN_Step.cs.meta | 8 - .../Editor/Code/_Nodes/SFN_Subtract.cs | 31 - .../Editor/Code/_Nodes/SFN_Subtract.cs.meta | 8 - .../Editor/Code/_Nodes/SFN_SwitchProperty.cs | 161 - .../Code/_Nodes/SFN_SwitchProperty.cs.meta | 8 - .../ShaderForge/Editor/Code/_Nodes/SFN_Tan.cs | 26 - .../Editor/Code/_Nodes/SFN_Tan.cs.meta | 8 - .../Editor/Code/_Nodes/SFN_Tangent.cs | 35 - .../Editor/Code/_Nodes/SFN_Tangent.cs.meta | 8 - .../ShaderForge/Editor/Code/_Nodes/SFN_Tau.cs | 19 - .../Editor/Code/_Nodes/SFN_Tau.cs.meta | 8 - .../Editor/Code/_Nodes/SFN_Tex2d.cs | 488 --- .../Editor/Code/_Nodes/SFN_Tex2d.cs.meta | 8 - .../Editor/Code/_Nodes/SFN_Tex2dAsset.cs | 366 -- .../Editor/Code/_Nodes/SFN_Tex2dAsset.cs.meta | 8 - .../Editor/Code/_Nodes/SFN_TexCoord.cs | 122 - .../Editor/Code/_Nodes/SFN_TexCoord.cs.meta | 8 - .../Editor/Code/_Nodes/SFN_Time.cs | 53 - .../Editor/Code/_Nodes/SFN_Time.cs.meta | 8 - .../Editor/Code/_Nodes/SFN_ToggleProperty.cs | 146 - .../Code/_Nodes/SFN_ToggleProperty.cs.meta | 8 - .../Editor/Code/_Nodes/SFN_Transform.cs | 248 -- .../Editor/Code/_Nodes/SFN_Transform.cs.meta | 8 - .../Editor/Code/_Nodes/SFN_Transpose.cs | 53 - .../Editor/Code/_Nodes/SFN_Transpose.cs.meta | 12 - .../Editor/Code/_Nodes/SFN_Trunc.cs | 27 - .../Editor/Code/_Nodes/SFN_Trunc.cs.meta | 8 - .../Editor/Code/_Nodes/SFN_UVTile.cs | 128 - .../Editor/Code/_Nodes/SFN_UVTile.cs.meta | 12 - .../Editor/Code/_Nodes/SFN_ValueProperty.cs | 102 - .../Code/_Nodes/SFN_ValueProperty.cs.meta | 8 - .../Editor/Code/_Nodes/SFN_Vector1.cs | 91 - .../Editor/Code/_Nodes/SFN_Vector1.cs.meta | 8 - .../Editor/Code/_Nodes/SFN_Vector2.cs | 79 - .../Editor/Code/_Nodes/SFN_Vector2.cs.meta | 8 - .../Editor/Code/_Nodes/SFN_Vector3.cs | 89 - .../Editor/Code/_Nodes/SFN_Vector3.cs.meta | 8 - .../Editor/Code/_Nodes/SFN_Vector4.cs | 89 - .../Editor/Code/_Nodes/SFN_Vector4.cs.meta | 8 - .../Editor/Code/_Nodes/SFN_Vector4Property.cs | 112 - .../Code/_Nodes/SFN_Vector4Property.cs.meta | 8 - .../Code/_Nodes/SFN_VectorProjection.cs | 59 - .../Code/_Nodes/SFN_VectorProjection.cs.meta | 8 - .../Editor/Code/_Nodes/SFN_VectorRejection.cs | 59 - .../Code/_Nodes/SFN_VectorRejection.cs.meta | 8 - .../Editor/Code/_Nodes/SFN_VertexColor.cs | 35 - .../Code/_Nodes/SFN_VertexColor.cs.meta | 8 - .../Editor/Code/_Nodes/SFN_ViewPosition.cs | 38 - .../Code/_Nodes/SFN_ViewPosition.cs.meta | 8 - .../Code/_Nodes/SFN_ViewReflectionVector.cs | 31 - .../_Nodes/SFN_ViewReflectionVector.cs.meta | 8 - .../Editor/Code/_Nodes/SFN_ViewVector.cs | 32 - .../Editor/Code/_Nodes/SFN_ViewVector.cs.meta | 8 - .../ShaderForge/Editor/Code/_Nodes/SF_Node.cs | 2661 ------------- .../Editor/Code/_Nodes/SF_Node.cs.meta | 8 - .../Editor/Code/_Nodes/SF_Node_Arithmetic.cs | 60 - .../Code/_Nodes/SF_Node_Arithmetic.cs.meta | 8 - .../Editor/Code/_Nodes/SF_Node_Resizeable.cs | 263 -- .../Code/_Nodes/SF_Node_Resizeable.cs.meta | 8 - .../Editor/Code/_ShaderProperties.meta | 5 - .../Code/_ShaderProperties/SFP_Branch.cs | 39 - .../Code/_ShaderProperties/SFP_Branch.cs.meta | 8 - .../Code/_ShaderProperties/SFP_Color.cs | 37 - .../Code/_ShaderProperties/SFP_Color.cs.meta | 8 - .../Code/_ShaderProperties/SFP_Cubemap.cs | 32 - .../_ShaderProperties/SFP_Cubemap.cs.meta | 8 - .../SFP_Matrix4x4Property.cs | 35 - .../SFP_Matrix4x4Property.cs.meta | 12 - .../Code/_ShaderProperties/SFP_Slider.cs | 49 - .../Code/_ShaderProperties/SFP_Slider.cs.meta | 8 - .../_ShaderProperties/SFP_SwitchProperty.cs | 31 - .../SFP_SwitchProperty.cs.meta | 8 - .../Code/_ShaderProperties/SFP_Tex2d.cs | 50 - .../Code/_ShaderProperties/SFP_Tex2d.cs.meta | 8 - .../_ShaderProperties/SFP_ToggleProperty.cs | 31 - .../SFP_ToggleProperty.cs.meta | 8 - .../_ShaderProperties/SFP_ValueProperty.cs | 31 - .../SFP_ValueProperty.cs.meta | 8 - .../_ShaderProperties/SFP_Vector4Property.cs | 38 - .../SFP_Vector4Property.cs.meta | 8 - .../_ShaderProperties/SF_ShaderProperty.cs | 297 -- .../SF_ShaderProperty.cs.meta | 8 - .../ShaderForge/Editor/Code/_Utility.meta | 5 - .../Editor/Code/_Utility/GUILines.cs | 478 --- .../Editor/Code/_Utility/GUILines.cs.meta | 8 - .../Editor/Code/_Utility/SF_Blit.cs | 228 -- .../Editor/Code/_Utility/SF_Blit.cs.meta | 12 - .../Editor/Code/_Utility/SF_ColorPicker.cs | 863 ----- .../Code/_Utility/SF_ColorPicker.cs.meta | 8 - .../Editor/Code/_Utility/SF_Debug.cs | 23 - .../Editor/Code/_Utility/SF_Debug.cs.meta | 8 - .../Code/_Utility/SF_DraggableSeparator.cs | 102 - .../_Utility/SF_DraggableSeparator.cs.meta | 8 - .../Editor/Code/_Utility/SF_Extensions.cs | 531 --- .../Code/_Utility/SF_Extensions.cs.meta | 8 - .../Editor/Code/_Utility/SF_GUI.cs | 718 ---- .../Editor/Code/_Utility/SF_GUI.cs.meta | 8 - .../Editor/Code/_Utility/SF_Link.cs | 55 - .../Editor/Code/_Utility/SF_Link.cs.meta | 8 - .../Editor/Code/_Utility/SF_MinMax.cs | 34 - .../Editor/Code/_Utility/SF_MinMax.cs.meta | 8 - .../Editor/Code/_Utility/SF_Resources.cs | 77 - .../Editor/Code/_Utility/SF_Resources.cs.meta | 8 - .../Editor/Code/_Utility/SF_Styles.cs | 337 -- .../Editor/Code/_Utility/SF_Styles.cs.meta | 8 - .../Editor/Code/_Utility/SF_Tools.cs | 486 --- .../Editor/Code/_Utility/SF_Tools.cs.meta | 8 - .../Editor/Code/_Utility/SF_Web.cs | 32 - .../Editor/Code/_Utility/SF_Web.cs.meta | 8 - .../Editor/Code/_Utility/SF_ZoomArea.cs | 43 - .../Editor/Code/_Utility/SF_ZoomArea.cs.meta | 8 - .../Code/_Utility/SerializableDictionary.cs | 64 - .../_Utility/SerializableDictionary.cs.meta | 8 - 392 files changed, 36499 deletions(-) delete mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code.meta delete mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/SFPSC_Blending.cs delete mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/SFPSC_Blending.cs.meta delete mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/SFPSC_Console.cs delete mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/SFPSC_Console.cs.meta delete mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/SFPSC_Experimental.cs delete mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/SFPSC_Experimental.cs.meta delete mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/SFPSC_Geometry.cs delete mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/SFPSC_Geometry.cs.meta delete mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/SFPSC_Lighting.cs delete mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/SFPSC_Lighting.cs.meta delete mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/SFPSC_Meta.cs delete mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/SFPSC_Meta.cs.meta delete mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/SFPSC_Properties.cs delete mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/SFPSC_Properties.cs.meta delete mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/SFPS_Category.cs delete mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/SFPS_Category.cs.meta delete mode 100755 Shader Forge/Assets/ShaderForge/Editor/Code/SF_Dependencies.cs delete mode 100755 Shader Forge/Assets/ShaderForge/Editor/Code/SF_Dependencies.cs.meta delete mode 100755 Shader Forge/Assets/ShaderForge/Editor/Code/SF_Editor.cs delete mode 100755 Shader Forge/Assets/ShaderForge/Editor/Code/SF_Editor.cs.meta delete mode 100755 Shader Forge/Assets/ShaderForge/Editor/Code/SF_EditorNodeBrowser.cs delete mode 100755 Shader Forge/Assets/ShaderForge/Editor/Code/SF_EditorNodeBrowser.cs.meta delete mode 100755 Shader Forge/Assets/ShaderForge/Editor/Code/SF_EditorNodeData.cs delete mode 100755 Shader Forge/Assets/ShaderForge/Editor/Code/SF_EditorNodeData.cs.meta delete mode 100755 Shader Forge/Assets/ShaderForge/Editor/Code/SF_EditorNodeView.cs delete mode 100755 Shader Forge/Assets/ShaderForge/Editor/Code/SF_EditorNodeView.cs.meta delete mode 100755 Shader Forge/Assets/ShaderForge/Editor/Code/SF_ErrorEntry.cs delete mode 100755 Shader Forge/Assets/ShaderForge/Editor/Code/SF_ErrorEntry.cs.meta delete mode 100755 Shader Forge/Assets/ShaderForge/Editor/Code/SF_FeatureChecker.cs delete mode 100755 Shader Forge/Assets/ShaderForge/Editor/Code/SF_FeatureChecker.cs.meta delete mode 100755 Shader Forge/Assets/ShaderForge/Editor/Code/SF_InstructionPass.cs delete mode 100755 Shader Forge/Assets/ShaderForge/Editor/Code/SF_InstructionPass.cs.meta delete mode 100755 Shader Forge/Assets/ShaderForge/Editor/Code/SF_NodeConnectionLine.cs delete mode 100755 Shader Forge/Assets/ShaderForge/Editor/Code/SF_NodeConnectionLine.cs.meta delete mode 100755 Shader Forge/Assets/ShaderForge/Editor/Code/SF_NodeConnector.cs delete mode 100755 Shader Forge/Assets/ShaderForge/Editor/Code/SF_NodeConnector.cs.meta delete mode 100755 Shader Forge/Assets/ShaderForge/Editor/Code/SF_NodePreview.cs delete mode 100755 Shader Forge/Assets/ShaderForge/Editor/Code/SF_NodePreview.cs.meta delete mode 100755 Shader Forge/Assets/ShaderForge/Editor/Code/SF_NodeStatus.cs delete mode 100755 Shader Forge/Assets/ShaderForge/Editor/Code/SF_NodeStatus.cs.meta delete mode 100755 Shader Forge/Assets/ShaderForge/Editor/Code/SF_NodeTreeStatus.cs delete mode 100755 Shader Forge/Assets/ShaderForge/Editor/Code/SF_NodeTreeStatus.cs.meta delete mode 100755 Shader Forge/Assets/ShaderForge/Editor/Code/SF_Parser.cs delete mode 100755 Shader Forge/Assets/ShaderForge/Editor/Code/SF_Parser.cs.meta delete mode 100755 Shader Forge/Assets/ShaderForge/Editor/Code/SF_PassSettings.cs delete mode 100755 Shader Forge/Assets/ShaderForge/Editor/Code/SF_PassSettings.cs.meta delete mode 100755 Shader Forge/Assets/ShaderForge/Editor/Code/SF_PreviewSettings.cs delete mode 100755 Shader Forge/Assets/ShaderForge/Editor/Code/SF_PreviewSettings.cs.meta delete mode 100755 Shader Forge/Assets/ShaderForge/Editor/Code/SF_PreviewWindow.cs delete mode 100755 Shader Forge/Assets/ShaderForge/Editor/Code/SF_PreviewWindow.cs.meta delete mode 100755 Shader Forge/Assets/ShaderForge/Editor/Code/SF_SelectionManager.cs delete mode 100755 Shader Forge/Assets/ShaderForge/Editor/Code/SF_SelectionManager.cs.meta delete mode 100755 Shader Forge/Assets/ShaderForge/Editor/Code/SF_Settings.cs delete mode 100755 Shader Forge/Assets/ShaderForge/Editor/Code/SF_Settings.cs.meta delete mode 100755 Shader Forge/Assets/ShaderForge/Editor/Code/SF_StatusBox.cs delete mode 100755 Shader Forge/Assets/ShaderForge/Editor/Code/SF_StatusBox.cs.meta delete mode 100755 Shader Forge/Assets/ShaderForge/Editor/Code/_ConnectionGroups.meta delete mode 100755 Shader Forge/Assets/ShaderForge/Editor/Code/_ConnectionGroups/SFNCG_Append.cs delete mode 100755 Shader Forge/Assets/ShaderForge/Editor/Code/_ConnectionGroups/SFNCG_Append.cs.meta delete mode 100755 Shader Forge/Assets/ShaderForge/Editor/Code/_ConnectionGroups/SFNCG_Arithmetic.cs delete mode 100755 Shader Forge/Assets/ShaderForge/Editor/Code/_ConnectionGroups/SFNCG_Arithmetic.cs.meta delete mode 100755 Shader Forge/Assets/ShaderForge/Editor/Code/_ConnectionGroups/SFNCG_ChannelBlend.cs delete mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_ConnectionGroups/SFNCG_ChannelBlend.cs.meta delete mode 100755 Shader Forge/Assets/ShaderForge/Editor/Code/_ConnectionGroups/SFNCG_ComponentMask.cs delete mode 100755 Shader Forge/Assets/ShaderForge/Editor/Code/_ConnectionGroups/SFNCG_ComponentMask.cs.meta delete mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_ConnectionGroups/SFNCG_MatrixMultiply.cs delete mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_ConnectionGroups/SFNCG_MatrixMultiply.cs.meta delete mode 100755 Shader Forge/Assets/ShaderForge/Editor/Code/_ConnectionGroups/SF_NodeConnectionGroup.cs delete mode 100755 Shader Forge/Assets/ShaderForge/Editor/Code/_ConnectionGroups/SF_NodeConnectionGroup.cs.meta delete mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Enums.meta delete mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Enums/SF_VarTypeEnums.cs delete mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Enums/SF_VarTypeEnums.cs.meta delete mode 100755 Shader Forge/Assets/ShaderForge/Editor/Code/_Evaluator.meta delete mode 100755 Shader Forge/Assets/ShaderForge/Editor/Code/_Evaluator/Pass_FwdAdd.cs delete mode 100755 Shader Forge/Assets/ShaderForge/Editor/Code/_Evaluator/Pass_FwdAdd.cs.meta delete mode 100755 Shader Forge/Assets/ShaderForge/Editor/Code/_Evaluator/SF_Evaluator.cs delete mode 100755 Shader Forge/Assets/ShaderForge/Editor/Code/_Evaluator/SF_Evaluator.cs.meta delete mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Evaluator/_NewSystem.meta delete mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Evaluator/_NewSystem/DependencyTree.cs delete mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Evaluator/_NewSystem/DependencyTree.cs.meta delete mode 100755 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes.meta delete mode 100755 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Abs.cs delete mode 100755 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Abs.cs.meta delete mode 100755 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Add.cs delete mode 100755 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Add.cs.meta delete mode 100755 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_AmbientLight.cs delete mode 100755 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_AmbientLight.cs.meta delete mode 100755 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Append.cs delete mode 100755 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Append.cs.meta delete mode 100755 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ArcCos.cs delete mode 100755 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ArcCos.cs.meta delete mode 100755 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ArcSin.cs delete mode 100755 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ArcSin.cs.meta delete mode 100755 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ArcTan.cs delete mode 100755 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ArcTan.cs.meta delete mode 100755 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ArcTan2.cs delete mode 100755 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ArcTan2.cs.meta delete mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Bitangent.cs delete mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Bitangent.cs.meta delete mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Blend.cs delete mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Blend.cs.meta delete mode 100755 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Ceil.cs delete mode 100755 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Ceil.cs.meta delete mode 100755 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ChannelBlend.cs delete mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ChannelBlend.cs.meta delete mode 100755 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Clamp.cs delete mode 100755 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Clamp.cs.meta delete mode 100755 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Clamp01.cs delete mode 100755 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Clamp01.cs.meta delete mode 100755 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Code.cs delete mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Code.cs.meta delete mode 100755 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Color.cs delete mode 100755 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Color.cs.meta delete mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_CommentBox.cs delete mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_CommentBox.cs.meta delete mode 100755 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ComponentMask.cs delete mode 100755 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ComponentMask.cs.meta delete mode 100755 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ConstantClamp.cs delete mode 100755 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ConstantClamp.cs.meta delete mode 100755 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ConstantLerp.cs delete mode 100755 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ConstantLerp.cs.meta delete mode 100755 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Cos.cs delete mode 100755 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Cos.cs.meta delete mode 100755 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Cross.cs delete mode 100755 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Cross.cs.meta delete mode 100755 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Cubemap.cs delete mode 100755 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Cubemap.cs.meta delete mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_DDX.cs delete mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_DDX.cs.meta delete mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_DDXY.cs delete mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_DDXY.cs.meta delete mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_DDY.cs delete mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_DDY.cs.meta delete mode 100755 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Depth.cs delete mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Depth.cs.meta delete mode 100755 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_DepthBlend.cs delete mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_DepthBlend.cs.meta delete mode 100755 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Desaturate.cs delete mode 100755 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Desaturate.cs.meta delete mode 100755 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Distance.cs delete mode 100755 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Distance.cs.meta delete mode 100755 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Divide.cs delete mode 100755 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Divide.cs.meta delete mode 100755 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Dot.cs delete mode 100755 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Dot.cs.meta delete mode 100755 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_E.cs delete mode 100755 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_E.cs.meta delete mode 100755 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Exp.cs delete mode 100755 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Exp.cs.meta delete mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_FaceSign.cs delete mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_FaceSign.cs.meta delete mode 100755 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Final.cs delete mode 100755 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Final.cs.meta delete mode 100755 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Floor.cs delete mode 100755 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Floor.cs.meta delete mode 100755 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Fmod.cs delete mode 100755 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Fmod.cs.meta delete mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_FogColor.cs delete mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_FogColor.cs.meta delete mode 100755 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Frac.cs delete mode 100755 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Frac.cs.meta delete mode 100755 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_FragmentPosition.cs delete mode 100755 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_FragmentPosition.cs.meta delete mode 100755 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Fresnel.cs delete mode 100755 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Fresnel.cs.meta delete mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Get.cs delete mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Get.cs.meta delete mode 100755 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_HalfVector.cs delete mode 100755 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_HalfVector.cs.meta delete mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_HsvToRgb.cs delete mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_HsvToRgb.cs.meta delete mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Hue.cs delete mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Hue.cs.meta delete mode 100755 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_If.cs delete mode 100755 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_If.cs.meta delete mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_InverseLerp.cs delete mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_InverseLerp.cs.meta delete mode 100755 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Length.cs delete mode 100755 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Length.cs.meta delete mode 100755 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Lerp.cs delete mode 100755 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Lerp.cs.meta delete mode 100755 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_LightAttenuation.cs delete mode 100755 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_LightAttenuation.cs.meta delete mode 100755 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_LightColor.cs delete mode 100755 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_LightColor.cs.meta delete mode 100755 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_LightPosition.cs delete mode 100755 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_LightPosition.cs.meta delete mode 100755 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_LightVector.cs delete mode 100755 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_LightVector.cs.meta delete mode 100755 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Log.cs delete mode 100755 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Log.cs.meta delete mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Matrix4x4.cs delete mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Matrix4x4.cs.meta delete mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Matrix4x4Property.cs delete mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Matrix4x4Property.cs.meta delete mode 100755 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Max.cs delete mode 100755 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Max.cs.meta delete mode 100755 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Min.cs delete mode 100755 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Min.cs.meta delete mode 100755 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Multiply.cs delete mode 100755 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Multiply.cs.meta delete mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_MultiplyMatrix.cs delete mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_MultiplyMatrix.cs.meta delete mode 100755 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Negate.cs delete mode 100755 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Negate.cs.meta delete mode 100755 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Node_Constant.cs delete mode 100755 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Node_Constant.cs.meta delete mode 100755 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Noise.cs delete mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Noise.cs.meta delete mode 100755 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_NormalBlend.cs delete mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_NormalBlend.cs.meta delete mode 100755 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_NormalVector.cs delete mode 100755 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_NormalVector.cs.meta delete mode 100755 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Normalize.cs delete mode 100755 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Normalize.cs.meta delete mode 100755 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ObjectPosition.cs delete mode 100755 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ObjectPosition.cs.meta delete mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ObjectScale.cs delete mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ObjectScale.cs.meta delete mode 100755 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_OneMinus.cs delete mode 100755 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_OneMinus.cs.meta delete mode 100755 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Panner.cs delete mode 100755 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Panner.cs.meta delete mode 100755 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Parallax.cs delete mode 100755 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Parallax.cs.meta delete mode 100755 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Phi.cs delete mode 100755 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Phi.cs.meta delete mode 100755 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Pi.cs delete mode 100755 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Pi.cs.meta delete mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_PixelSize.cs delete mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_PixelSize.cs.meta delete mode 100755 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Posterize.cs delete mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Posterize.cs.meta delete mode 100755 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Power.cs delete mode 100755 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Power.cs.meta delete mode 100755 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ProjectionParameters.cs delete mode 100755 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ProjectionParameters.cs.meta delete mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Reciprocal.cs delete mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Reciprocal.cs.meta delete mode 100755 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Reflect.cs delete mode 100755 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Reflect.cs.meta delete mode 100755 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Relay.cs delete mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Relay.cs.meta delete mode 100755 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_RemapRange.cs delete mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_RemapRange.cs.meta delete mode 100755 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_RemapRangeAdvanced.cs delete mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_RemapRangeAdvanced.cs.meta delete mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_RgbToHsv.cs delete mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_RgbToHsv.cs.meta delete mode 100755 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Root2.cs delete mode 100755 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Root2.cs.meta delete mode 100755 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Rotator.cs delete mode 100755 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Rotator.cs.meta delete mode 100755 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Round.cs delete mode 100755 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Round.cs.meta delete mode 100755 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_SceneColor.cs delete mode 100755 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_SceneColor.cs.meta delete mode 100755 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_SceneDepth.cs delete mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_SceneDepth.cs.meta delete mode 100755 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ScreenParameters.cs delete mode 100755 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ScreenParameters.cs.meta delete mode 100755 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ScreenPos.cs delete mode 100755 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ScreenPos.cs.meta delete mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Set.cs delete mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Set.cs.meta delete mode 100755 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Sign.cs delete mode 100755 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Sign.cs.meta delete mode 100755 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Sin.cs delete mode 100755 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Sin.cs.meta delete mode 100755 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Slider.cs delete mode 100755 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Slider.cs.meta delete mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Smoothstep.cs delete mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Smoothstep.cs.meta delete mode 100755 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Sqrt.cs delete mode 100755 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Sqrt.cs.meta delete mode 100755 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_StaticBranch.cs delete mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_StaticBranch.cs.meta delete mode 100755 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Step.cs delete mode 100755 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Step.cs.meta delete mode 100755 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Subtract.cs delete mode 100755 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Subtract.cs.meta delete mode 100755 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_SwitchProperty.cs delete mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_SwitchProperty.cs.meta delete mode 100755 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Tan.cs delete mode 100755 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Tan.cs.meta delete mode 100755 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Tangent.cs delete mode 100755 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Tangent.cs.meta delete mode 100755 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Tau.cs delete mode 100755 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Tau.cs.meta delete mode 100755 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Tex2d.cs delete mode 100755 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Tex2d.cs.meta delete mode 100755 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Tex2dAsset.cs delete mode 100755 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Tex2dAsset.cs.meta delete mode 100755 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_TexCoord.cs delete mode 100755 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_TexCoord.cs.meta delete mode 100755 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Time.cs delete mode 100755 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Time.cs.meta delete mode 100755 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ToggleProperty.cs delete mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ToggleProperty.cs.meta delete mode 100755 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Transform.cs delete mode 100755 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Transform.cs.meta delete mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Transpose.cs delete mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Transpose.cs.meta delete mode 100755 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Trunc.cs delete mode 100755 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Trunc.cs.meta delete mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_UVTile.cs delete mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_UVTile.cs.meta delete mode 100755 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ValueProperty.cs delete mode 100755 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ValueProperty.cs.meta delete mode 100755 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Vector1.cs delete mode 100755 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Vector1.cs.meta delete mode 100755 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Vector2.cs delete mode 100755 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Vector2.cs.meta delete mode 100755 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Vector3.cs delete mode 100755 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Vector3.cs.meta delete mode 100755 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Vector4.cs delete mode 100755 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Vector4.cs.meta delete mode 100755 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Vector4Property.cs delete mode 100755 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Vector4Property.cs.meta delete mode 100755 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_VectorProjection.cs delete mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_VectorProjection.cs.meta delete mode 100755 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_VectorRejection.cs delete mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_VectorRejection.cs.meta delete mode 100755 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_VertexColor.cs delete mode 100755 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_VertexColor.cs.meta delete mode 100755 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ViewPosition.cs delete mode 100755 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ViewPosition.cs.meta delete mode 100755 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ViewReflectionVector.cs delete mode 100755 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ViewReflectionVector.cs.meta delete mode 100755 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ViewVector.cs delete mode 100755 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ViewVector.cs.meta delete mode 100755 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SF_Node.cs delete mode 100755 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SF_Node.cs.meta delete mode 100755 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SF_Node_Arithmetic.cs delete mode 100755 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SF_Node_Arithmetic.cs.meta delete mode 100755 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SF_Node_Resizeable.cs delete mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SF_Node_Resizeable.cs.meta delete mode 100755 Shader Forge/Assets/ShaderForge/Editor/Code/_ShaderProperties.meta delete mode 100755 Shader Forge/Assets/ShaderForge/Editor/Code/_ShaderProperties/SFP_Branch.cs delete mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_ShaderProperties/SFP_Branch.cs.meta delete mode 100755 Shader Forge/Assets/ShaderForge/Editor/Code/_ShaderProperties/SFP_Color.cs delete mode 100755 Shader Forge/Assets/ShaderForge/Editor/Code/_ShaderProperties/SFP_Color.cs.meta delete mode 100755 Shader Forge/Assets/ShaderForge/Editor/Code/_ShaderProperties/SFP_Cubemap.cs delete mode 100755 Shader Forge/Assets/ShaderForge/Editor/Code/_ShaderProperties/SFP_Cubemap.cs.meta delete mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_ShaderProperties/SFP_Matrix4x4Property.cs delete mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_ShaderProperties/SFP_Matrix4x4Property.cs.meta delete mode 100755 Shader Forge/Assets/ShaderForge/Editor/Code/_ShaderProperties/SFP_Slider.cs delete mode 100755 Shader Forge/Assets/ShaderForge/Editor/Code/_ShaderProperties/SFP_Slider.cs.meta delete mode 100755 Shader Forge/Assets/ShaderForge/Editor/Code/_ShaderProperties/SFP_SwitchProperty.cs delete mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_ShaderProperties/SFP_SwitchProperty.cs.meta delete mode 100755 Shader Forge/Assets/ShaderForge/Editor/Code/_ShaderProperties/SFP_Tex2d.cs delete mode 100755 Shader Forge/Assets/ShaderForge/Editor/Code/_ShaderProperties/SFP_Tex2d.cs.meta delete mode 100755 Shader Forge/Assets/ShaderForge/Editor/Code/_ShaderProperties/SFP_ToggleProperty.cs delete mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_ShaderProperties/SFP_ToggleProperty.cs.meta delete mode 100755 Shader Forge/Assets/ShaderForge/Editor/Code/_ShaderProperties/SFP_ValueProperty.cs delete mode 100755 Shader Forge/Assets/ShaderForge/Editor/Code/_ShaderProperties/SFP_ValueProperty.cs.meta delete mode 100755 Shader Forge/Assets/ShaderForge/Editor/Code/_ShaderProperties/SFP_Vector4Property.cs delete mode 100755 Shader Forge/Assets/ShaderForge/Editor/Code/_ShaderProperties/SFP_Vector4Property.cs.meta delete mode 100755 Shader Forge/Assets/ShaderForge/Editor/Code/_ShaderProperties/SF_ShaderProperty.cs delete mode 100755 Shader Forge/Assets/ShaderForge/Editor/Code/_ShaderProperties/SF_ShaderProperty.cs.meta delete mode 100755 Shader Forge/Assets/ShaderForge/Editor/Code/_Utility.meta delete mode 100755 Shader Forge/Assets/ShaderForge/Editor/Code/_Utility/GUILines.cs delete mode 100755 Shader Forge/Assets/ShaderForge/Editor/Code/_Utility/GUILines.cs.meta delete mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Utility/SF_Blit.cs delete mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Utility/SF_Blit.cs.meta delete mode 100755 Shader Forge/Assets/ShaderForge/Editor/Code/_Utility/SF_ColorPicker.cs delete mode 100755 Shader Forge/Assets/ShaderForge/Editor/Code/_Utility/SF_ColorPicker.cs.meta delete mode 100755 Shader Forge/Assets/ShaderForge/Editor/Code/_Utility/SF_Debug.cs delete mode 100755 Shader Forge/Assets/ShaderForge/Editor/Code/_Utility/SF_Debug.cs.meta delete mode 100755 Shader Forge/Assets/ShaderForge/Editor/Code/_Utility/SF_DraggableSeparator.cs delete mode 100755 Shader Forge/Assets/ShaderForge/Editor/Code/_Utility/SF_DraggableSeparator.cs.meta delete mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Utility/SF_Extensions.cs delete mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Utility/SF_Extensions.cs.meta delete mode 100755 Shader Forge/Assets/ShaderForge/Editor/Code/_Utility/SF_GUI.cs delete mode 100755 Shader Forge/Assets/ShaderForge/Editor/Code/_Utility/SF_GUI.cs.meta delete mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Utility/SF_Link.cs delete mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Utility/SF_Link.cs.meta delete mode 100755 Shader Forge/Assets/ShaderForge/Editor/Code/_Utility/SF_MinMax.cs delete mode 100755 Shader Forge/Assets/ShaderForge/Editor/Code/_Utility/SF_MinMax.cs.meta delete mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Utility/SF_Resources.cs delete mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Utility/SF_Resources.cs.meta delete mode 100755 Shader Forge/Assets/ShaderForge/Editor/Code/_Utility/SF_Styles.cs delete mode 100755 Shader Forge/Assets/ShaderForge/Editor/Code/_Utility/SF_Styles.cs.meta delete mode 100755 Shader Forge/Assets/ShaderForge/Editor/Code/_Utility/SF_Tools.cs delete mode 100755 Shader Forge/Assets/ShaderForge/Editor/Code/_Utility/SF_Tools.cs.meta delete mode 100755 Shader Forge/Assets/ShaderForge/Editor/Code/_Utility/SF_Web.cs delete mode 100755 Shader Forge/Assets/ShaderForge/Editor/Code/_Utility/SF_Web.cs.meta delete mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Utility/SF_ZoomArea.cs delete mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Utility/SF_ZoomArea.cs.meta delete mode 100755 Shader Forge/Assets/ShaderForge/Editor/Code/_Utility/SerializableDictionary.cs delete mode 100755 Shader Forge/Assets/ShaderForge/Editor/Code/_Utility/SerializableDictionary.cs.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code.meta b/Shader Forge/Assets/ShaderForge/Editor/Code.meta deleted file mode 100644 index da46b9b3..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code.meta +++ /dev/null @@ -1,9 +0,0 @@ -fileFormatVersion: 2 -guid: bda2643522b22874ea0704332ec6d288 -folderAsset: yes -timeCreated: 1443376891 -licenseType: Pro -DefaultImporter: - userData: - assetBundleName: - assetBundleVariant: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/SFPSC_Blending.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/SFPSC_Blending.cs deleted file mode 100644 index 67a2d6fb..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/SFPSC_Blending.cs +++ /dev/null @@ -1,941 +0,0 @@ -using UnityEngine; -using UnityEditor; -using System.Collections; - -namespace ShaderForge { - - - public enum DepthTestStencil { Less, Greater, LEqual, GEqual, Equal, NotEqual, Always, Never }; - public enum StencilOp { Keep, Zero, Replace, Invert, IncrSat, DecrSat, IncrWrap, DecrWrap }; - public enum DepthTest { Less, Greater, LEqual, GEqual, Equal, NotEqual, Always }; - public enum RenderType { None, Opaque, Transparent, TransparentCutout, Background, Overlay, TreeOpaque, TreeTransparentCutout, TreeBillboard, Grass, GrassBillboard }; - public enum BlendModePreset { - Opaque, - AlphaBlended, - AlphaBlendedPremultiplied, - Additive, - Screen, - Multiplicative, - Custom - }; - public enum ShaderFogMode{ Global, Linear, Exp, Exp2 }; - public enum BlendMode { One, Zero, SrcColor, SrcAlpha, DstColor, DstAlpha, OneMinusSrcColor, OneMinusSrcAlpha, OneMinusDstColor, OneMinusDstAlpha }; - public enum Queue { Background, Geometry, AlphaTest, Transparent, Overlay }; - - public enum Dithering { Off, Dither2x2, Dither3x3, Dither4x4 }; - - - [System.Serializable] - public class SFPSC_Blending : SFPS_Category { - - public static string[] strDepthTestStencil = new string[] { "<", ">", "\u2264", "\u2265", "=", "\u2260", "Always (Default)", "Never" }; - public static string[] strStencilOp = new string[] { "Keep (Default)", "Zero", "Replace", "Invert", "Increase (Clamped)", "Decrease (Clamped)", "Increase (Wrapped)", "Decrease (Wrapped)" }; - public static string[] strDepthTest = new string[] { "<", ">", "\u2264 (Default)", "\u2265", "=", "\u2260", "Always" }; - public static int[] queueNumbers = new int[] { 1000, 2000, 2450, 3000, 4000 }; - public static string[] strQueue = new string[] { "Background (1000)", "Opaque Geometry (2000)", "Alpha Clip (2450)", "Transparent (3000)", "Overlay (4000)" }; - public static string[] strDithering = new string[] { "Off", "2x2 matrix", "3x3 matrix", "4x4 matrix" }; - - public static string[] strBlendModePreset = new string[] { - "Opaque", - "Alpha Blended", - "Alpha Blended (Premultiplied)", - "Additive", - "Screen", - "Multiplicative", - "" - }; - - - // Vars - - public BlendModePreset blendModePreset = BlendModePreset.Opaque; - public BlendMode blendSrc = BlendMode.One; - public BlendMode blendDst = BlendMode.Zero; - public DepthTest depthTest = DepthTest.LEqual; - - - public byte stencilValue = 128; - public byte stencilMaskRead = 255; - public byte stencilMaskWrite = 255; - public DepthTestStencil stencilComparison = DepthTestStencil.Always; - public StencilOp stencilPass = StencilOp.Keep; - public StencilOp stencilFail = StencilOp.Keep; - public StencilOp stencilFailZ = StencilOp.Keep; - - public int offsetFactor = 0; - public int offsetUnits = 0; - - // colorMask is a bitmask - // 0 = ____ - // 1 = ___A - // 2 = __B_ - // 3 = __BA - // 4 = _G__ - // 5 = _G_A - // 6 = _GB_ - // 7 = _GBA - // 8 = R___ - // 9 = R__A - // 10 = R_B_ - // 11 = R_BA - // 12 = RG__ - // 13 = RG_A - // 14 = RGB_ - // 15 = RGBA - public int colorMask = 15; - - public Dithering dithering = Dithering.Off; - public bool alphaToCoverage = false; - - public bool writeDepth = true; - - public bool useFog = true; - - public bool perObjectRefraction = true; - public string refractionPassName = "Refraction"; - - - public bool autoSort = true; - public Queue queuePreset = (Queue)1; - public int queueOffset = 0; - public RenderType renderType = RenderType.Opaque; - public bool ignoreProjector = false; - - - // Fog - public bool fogOverrideMode = false; - public ShaderFogMode fogMode = ShaderFogMode.Global; - - public bool fogOverrideColor = false; - public Color fogColor; - - public bool fogOverrideDensity = false; - public float fogDensity; - - public bool fogOverrideRange = false; - public Vector2 fogRange; - - - public bool useStencilBuffer = false; - public bool allowStencilWriteThroughProperties = false; - - - new void OnEnable() { - fogColor = RenderSettings.fogColor; - fogDensity = RenderSettings.fogDensity; - fogRange = new Vector2( RenderSettings.fogStartDistance, RenderSettings.fogEndDistance ); - base.hideFlags = HideFlags.HideAndDontSave; - } - - - public override string Serialize(){ - string s = ""; - - //s += Serialize( "blpr", ( (int)blendModePreset ).ToString() ); - s += Serialize( "bsrc", ( (int)blendSrc ).ToString() ); - s += Serialize( "bdst", ( (int)blendDst ).ToString() ); - s += Serialize( "dpts", ( (int)depthTest ).ToString() ); - s += Serialize( "wrdp", writeDepth.ToString() ); - - s += Serialize( "dith", ( (int)dithering ).ToString() ); - s += Serialize( "atcv", alphaToCoverage.ToString() ); // bool - - s += Serialize( "rfrpo", perObjectRefraction.ToString() ); - s += Serialize( "rfrpn", refractionPassName ); - - s += Serialize( "coma", colorMask.ToString() ); - - s += Serialize( "ufog", useFog.ToString() ); - s += Serialize( "aust", autoSort.ToString() ); - s += Serialize( "igpj", ignoreProjector.ToString() ); - s += Serialize( "qofs", queueOffset.ToString() ); - - s += Serialize( "qpre", ((int)queuePreset).ToString() ); - s += Serialize( "rntp", ( (int)renderType ).ToString() ); - s += Serialize( "fgom", fogOverrideMode.ToString()); // bool - s += Serialize( "fgoc", fogOverrideColor.ToString()); // bool - s += Serialize( "fgod", fogOverrideDensity.ToString()); // bool - s += Serialize( "fgor", fogOverrideRange.ToString()); // bool - - s += Serialize( "fgmd", ((int)fogMode).ToString()); // FogMode - s += Serialize( "fgcr", fogColor.r.ToString()); // Fog Color - s += Serialize( "fgcg", fogColor.g.ToString()); // Fog Color - s += Serialize( "fgcb", fogColor.b.ToString()); // Fog Color - s += Serialize( "fgca", fogColor.a.ToString()); // Fog Color - s += Serialize( "fgde", fogDensity.ToString()); // float - s += Serialize( "fgrn", fogRange.x.ToString()); // Fog range X (Near) - s += Serialize( "fgrf", fogRange.y.ToString()); // Fog range Y (Far) - - - // Stencil buffer: - s += Serialize ( "stcl", useStencilBuffer.ToString()); - s += Serialize ( "atwp", allowStencilWriteThroughProperties.ToString()); - s += Serialize ( "stva", stencilValue.ToString()); - s += Serialize ( "stmr", stencilMaskRead.ToString()); - s += Serialize ( "stmw", stencilMaskWrite.ToString()); - s += Serialize ( "stcp", ((int)stencilComparison).ToString()); - s += Serialize ( "stps", ((int)stencilPass).ToString()); - s += Serialize ( "stfa", ((int)stencilFail).ToString()); - s += Serialize ( "stfz", ((int)stencilFailZ).ToString()); - - - // Offset - s += Serialize ( "ofsf", offsetFactor.ToString()); - s += Serialize ( "ofsu", offsetUnits.ToString()); - - return s; - } - - bool lockSrcDstRead = false; - - public override void Deserialize(string key, string value){ - - - - switch( key ) { - - case "blpr": // This is no longer saved, but in old shaders, we have to read it with old enum indices - - // 0 "Opaque", - // 1 "Alpha Blended", - // - "Alpha Blended (Premultiplied)", - // 2 "Additive", - // 3 "Screen", - // 4 "Multiplicative", - - int iVal = int.Parse( value ); - if( iVal > 1 ) // Offset due to adding premul - iVal++; - blendModePreset = (BlendModePreset)iVal; - ConformBlendsToPreset(); - - lockSrcDstRead = true; - break; - case "bsrc": - if( lockSrcDstRead ) - break; - blendSrc = (BlendMode)int.Parse( value ); - break; - case "bdst": - if( lockSrcDstRead ) { - lockSrcDstRead = false; - break; - } - blendDst = (BlendMode)int.Parse( value ); - ConformPresetToBlend(); - break; - case "dpts": - depthTest = (DepthTest)int.Parse( value ); - break; - case "wrdp": - writeDepth = bool.Parse( value ); - break; - case "dith": - dithering = (Dithering)int.Parse( value ); - break; - case "atcv": - alphaToCoverage = bool.Parse( value ); - break; - case "rfrpo": - perObjectRefraction = bool.Parse( value ); - break; - case "rfrpn": - refractionPassName = value; - break; - case "coma": - colorMask = int.Parse( value ); - break; - case "ufog": - useFog = bool.Parse( value ); - break; - case "aust": - autoSort = bool.Parse( value ); - break; - case "igpj": - ignoreProjector = bool.Parse( value ); - break; - case "qofs": - queueOffset = int.Parse( value ); - break; - - case "qpre": - queuePreset = (Queue)int.Parse( value ); - break; - - case "rntp": - renderType = (RenderType)int.Parse( value ); - break; - // Fog booleans - case "fgom": - fogOverrideMode = bool.Parse( value ); - break; - case "fgoc": - fogOverrideColor = bool.Parse( value ); - break; - case "fgod": - fogOverrideDensity = bool.Parse( value ); - break; - case "fgor": - fogOverrideRange = bool.Parse( value ); - break; - - // Fog values - case "fgmd": - fogMode = (ShaderFogMode)int.Parse( value ); - break; - case "fgcr": - fogColor.r = float.Parse( value ); - break; - case "fgcg": - fogColor.g = float.Parse( value ); - break; - case "fgcb": - fogColor.b = float.Parse( value ); - break; - case "fgca": - fogColor.a = float.Parse( value ); - break; - case "fgde": - fogDensity = float.Parse( value ); - break; - case "fgrn": - fogRange.x = float.Parse( value ); - break; - case "fgrf": - fogRange.y = float.Parse( value ); - break; - // Stencil buffer: - case "stcl": - useStencilBuffer = bool.Parse(value); - break; - case "atwp": - allowStencilWriteThroughProperties = bool.Parse( value ); - break; - case "stva": - stencilValue = byte.Parse(value); - break; - case "stmr": - stencilMaskRead = byte.Parse(value); - break; - case "stmw": - stencilMaskWrite = byte.Parse(value); - break; - case "stcp": - stencilComparison = (DepthTestStencil)int.Parse(value); - break; - case "stps": - stencilPass = (StencilOp)int.Parse(value); - break; - case "stfa": - stencilFail = (StencilOp)int.Parse(value); - break; - case "stfz": - stencilFailZ = (StencilOp)int.Parse(value); - break; - - // Offset - case "ofsf": - offsetFactor = int.Parse(value); - break; - case "ofsu": - offsetUnits = int.Parse(value); - break; - } - - } - - - public string GetGrabTextureName() { - if( perObjectRefraction ) { - return "_GrabTexture"; - } else { - return refractionPassName; - } - } - - - - public override float DrawInner(ref Rect r){ - - - float prevYpos = r.y; - r.y = 0; - - r.y += 20; - r.xMin += 20; // Indent - - BlendModePreset before = blendModePreset; - GUI.enabled = ps.catLighting.renderPath == SFPSC_Lighting.RenderPath.Forward; - blendModePreset = (BlendModePreset)UndoableLabeledEnumPopupNamed( r, "Blend Mode", blendModePreset, strBlendModePreset, "blend mode"); - GUI.enabled = true; - if( blendModePreset != before ) { - ConformBlendsToPreset(); - } - if( blendModePreset == BlendModePreset.Custom ) { - GUI.color = new Color(1f,1f,1f,0.5f); - GUI.Label(r.PadLeft(70).PadTop(-1), "Custom blending. Click select preset", EditorStyles.miniLabel); - GUI.color = Color.white; - } - - r.y += 20; - - //if( blendModePreset != BlendModePreset.Opaque ) { - //if( blendModePreset != BlendModePreset.Custom ) - //GUI.enabled = false; - //EditorGUILayout.BeginHorizontal( GUILayout.Width( maxWidth ) ); - //{ - //Indent(); - - string srcStr = "Source * "; - string dstStr = " + Destination * "; - int srcStrWidth = SF_GUI.WidthOf(srcStr,EditorStyles.miniLabel); - int dstStrWidth = SF_GUI.WidthOf(dstStr,EditorStyles.miniLabel); - int fieldWidth = Mathf.FloorToInt((r.width - srcStrWidth - dstStrWidth)/2); - - Rect rSrcLb = new Rect(r); rSrcLb.width = srcStrWidth; - Rect rSrcField = new Rect(r); rSrcField.x = rSrcLb.xMax; rSrcField.width = fieldWidth; - Rect rDstLb = new Rect(r); rDstLb.x = rSrcField.xMax; rDstLb.width = dstStrWidth; - Rect rDstField = new Rect(rSrcField); rDstField.x = rDstLb.xMax; - - EditorGUI.BeginChangeCheck(); - - GUI.Label( rSrcLb, srcStr, EditorStyles.miniLabel ); - blendSrc = (BlendMode)UndoableEnumPopup(rSrcField, blendSrc, "blend source" ); - GUI.Label( rDstLb, dstStr, EditorStyles.miniLabel ); - blendDst = (BlendMode)UndoableEnumPopup(rDstField, blendDst, "blend destination" ); - - if( EditorGUI.EndChangeCheck() ) { - ConformPresetToBlend(); - } - - //if( blendModePreset != BlendModePreset.Custom ) - //GUI.enabled = true; - - r.y += 20; - //} - - - UndoableColorMask( r, "Color Mask", ref colorMask ); - r.y += 20; - - bool canEditDithering = editor.mainNode.alphaClip.IsConnectedAndEnabled(); - EditorGUI.BeginDisabledGroup( !canEditDithering ); - if( canEditDithering ) - dithering = (Dithering)UndoableLabeledEnumPopupNamed( r, "Dithered alpha clip", dithering, strDithering, "dithered alpha clip" ); - else - UndoableLabeledEnumPopup( r, "Dithered alpha clip", Dithering.Off, "dithered alpha clip" ); - EditorGUI.EndDisabledGroup(); - r.y += 20; - - bool canEditAlphaToCoverage = editor.mainNode.alphaClip.IsConnectedAndEnabled() || editor.mainNode.alpha.IsConnectedAndEnabled(); - EditorGUI.BeginDisabledGroup( !canEditAlphaToCoverage ); - if( canEditAlphaToCoverage ) - alphaToCoverage = UndoableToggle( r, alphaToCoverage, "Alpha to coverage (forward with MSAA only)", "alpha to coverage" ); - else - GUI.Toggle( r, false, "Alpha to coverage (forward with MSAA only)" ); - EditorGUI.EndDisabledGroup(); - r.y += 20; - - - OffsetBlock (ref r); - - - RefractionBlock( ref r ); - - - FogBlock(ref r); - - SortingBlock(ref r); - - - - StencilBlock(ref r); - - r.y += prevYpos; - - return (int)r.yMax; - } - - static string[] rgba = new string[]{"R","G","B","A"}; - - public void UndoableColorMask(Rect r, string label, ref int mask) { - - GUIStyle[] rgbaStyles = new GUIStyle[] { - EditorStyles.miniButtonLeft, - EditorStyles.miniButtonMid, - EditorStyles.miniButtonMid, - EditorStyles.miniButtonRight - }; - - Rect[] rects = r.SplitFromLeft( 65 ); - - GUI.Label( rects[0], label, EditorStyles.miniLabel ); - - - Rect buttonRect = rects[1]; - buttonRect.width = 23;// Mathf.FloorToInt( buttonRect.width / 4 ); - buttonRect.height = 17; - - for( int i = 0; i < 4; i++ ) { - //GUI.color = rgbaCols[i]; - bool bitVal = mask.GetBit( 3 - i ); - bool newBit = GUI.Toggle( buttonRect, bitVal, rgba[i], rgbaStyles[i] ); - if( newBit != bitVal ) { - Undo.RecordObject( this, "edit Color Mask" ); - mask = mask.SetBit( 3 - i, newBit ); - } - buttonRect = buttonRect.MovedRight(); - } - - buttonRect.width *= 4; - buttonRect.x += 6; - GUI.color = Color.gray; - GUI.Label( buttonRect, mask.ToColorMaskString(), EditorStyles.miniLabel ); - GUI.color = Color.white; - - - - - } - - - - - public void SetQueuePreset( Queue in_queue ) { - queuePreset = in_queue; - } - - public void ConformPresetToBlend() { - - - bool matched = false; - matched |= ApplyIfMatch(BlendModePreset.Opaque, BlendMode.One, BlendMode.Zero ); - matched |= ApplyIfMatch(BlendModePreset.Additive, BlendMode.One, BlendMode.One ); - matched |= ApplyIfMatch(BlendModePreset.Screen, BlendMode.OneMinusDstColor, BlendMode.One ); - matched |= ApplyIfMatch(BlendModePreset.Screen, BlendMode.One, BlendMode.OneMinusSrcColor ); - matched |= ApplyIfMatch(BlendModePreset.AlphaBlended, BlendMode.SrcAlpha, BlendMode.OneMinusSrcAlpha ); - matched |= ApplyIfMatch(BlendModePreset.AlphaBlendedPremultiplied, BlendMode.One, BlendMode.OneMinusSrcAlpha ); - matched |= ApplyIfMatch(BlendModePreset.Multiplicative, BlendMode.DstColor, BlendMode.Zero ); - matched |= ApplyIfMatch(BlendModePreset.Multiplicative, BlendMode.Zero, BlendMode.SrcColor ); - - if(!matched){ - blendModePreset = BlendModePreset.Custom; - } - - } - - - public bool ApplyIfMatch(BlendModePreset preset, BlendMode src, BlendMode dst) { - if( blendSrc == src && blendDst == dst ) { - blendModePreset = preset; - UpdateAutoSettings(); - return true; - } - return false; - - } - - public void ConformBlendsToPreset() { - switch( blendModePreset ) { - case BlendModePreset.Opaque: - blendSrc = BlendMode.One; - blendDst = BlendMode.Zero; - break; - case BlendModePreset.Additive: - blendSrc = BlendMode.One; - blendDst = BlendMode.One; - break; - case BlendModePreset.Screen: - blendSrc = BlendMode.One; - blendDst = BlendMode.OneMinusSrcColor; - break; - case BlendModePreset.AlphaBlended: - blendSrc = BlendMode.SrcAlpha; - blendDst = BlendMode.OneMinusSrcAlpha; - break; - case BlendModePreset.AlphaBlendedPremultiplied: - blendSrc = BlendMode.One; - blendDst = BlendMode.OneMinusSrcAlpha; - break; - case BlendModePreset.Multiplicative: - blendSrc = BlendMode.DstColor; - blendDst = BlendMode.Zero; - break; - } - editor.preview.InternalMaterial.renderQueue = -1; - } - - - public string GetStencilContent(){ - - string s = ""; - if( allowStencilWriteThroughProperties ) { - s += "Ref [_Stencil]\n"; - s += "ReadMask [_StencilReadMask]\n"; - s += "WriteMask [_StencilWriteMask]\n"; - s += "Comp [_StencilComp]\n"; - s += "Pass [_StencilOp]\n"; - s += "Fail [_StencilOpFail]\n"; - s += "ZFail [_StencilOpZFail]"; - } else { - s += "Ref " + stencilValue + "\n"; - if( stencilMaskRead != (byte)255 ) - s += "ReadMask " + stencilMaskRead + "\n"; - if( stencilMaskWrite != (byte)255 ) - s += "WriteMask " + stencilMaskWrite + "\n"; - if( stencilComparison != DepthTestStencil.Always ) - s += "Comp " + stencilComparison + "\n"; - if( stencilPass != StencilOp.Keep ) - s += "Pass " + stencilPass + "\n"; - if( stencilFail != StencilOp.Keep ) - s += "Fail " + stencilFail + "\n"; - if( stencilFailZ != StencilOp.Keep ) - s += "ZFail " + stencilFailZ + "\n"; - s = s.Substring( 0, s.Length - 1 ); - } - return s; - } - - public void RefractionBlock( ref Rect r ) { - - - - perObjectRefraction = UndoableToggle( r, perObjectRefraction, "Per-object refraction/scene color (expensive)", "per-object refraction", null ); - r.y += 20; - - ps.StartIgnoreChangeCheck(); - r.xMin += 20; - Rect right = r; - right.xMin += 126; - right.width -= 18; - Rect left = r; - left.width -= right.width; - GUI.enabled = !perObjectRefraction; - GUI.Label(left, "Texture name/group"); - EditorGUI.BeginChangeCheck(); - refractionPassName = UndoableTextField( right, refractionPassName, "refraction pass name", null, null, true ); - if( EditorGUI.EndChangeCheck() ) { - editor.ShaderOutdated = UpToDateState.OutdatedSoft; - SF_Tools.FormatAlphanumeric( ref refractionPassName ); - } - GUI.enabled = true; - r.y += 20; - r.xMin -= 20; - - - - ps.EndIgnoreChangeCheck(); - } - - - public void OffsetBlock(ref Rect r){ - ps.StartIgnoreChangeCheck(); - Rect rOfs = r; - rOfs.xMax -= 4; // Margin - rOfs.width = 80; - GUI.Label(rOfs, "Offset Factor"); - rOfs = rOfs.MovedRight(); - rOfs.width /= 2; - offsetFactor = UndoableIntField(rOfs,offsetFactor,"offset factor"); - rOfs = rOfs.MovedRight(); - rOfs.width *= 2; - GUI.Label(rOfs.PadLeft(4), "Offset Units"); - rOfs = rOfs.MovedRight(); - rOfs.width /= 2; - offsetUnits = UndoableIntField(rOfs,offsetUnits,"offset units"); - r.y += 20; - ps.EndIgnoreChangeCheck(); - } - - - public void StencilBlock(ref Rect r){ - - bool prevUseStencilBuffer = useStencilBuffer; - useStencilBuffer = GUI.Toggle(r, useStencilBuffer, useStencilBuffer ? "Stencil Buffer" : "Stencil Buffer..."); - if( useStencilBuffer != prevUseStencilBuffer ) - UpdateAutoSettings(); - r.y += 20; - if(!useStencilBuffer) - return; - r.xMin += 20; - - allowStencilWriteThroughProperties = UndoableToggle( r, allowStencilWriteThroughProperties, "Expose stencil as properties", "toggle expose stencil as properties" ); - r.y += 20; - - EditorGUI.BeginDisabledGroup( allowStencilWriteThroughProperties ); - - Rect rTmp = r; - rTmp.width = 88; - GUI.Label(rTmp,"Reference Value", EditorStyles.miniLabel); - rTmp = rTmp.MovedRight(); - rTmp.width -= 48; - stencilValue = (byte)UndoableIntField( rTmp.PadRight( 4 ).PadTop( 1 ).PadBottom( 2 ), stencilValue, "reference value" ); - rTmp = rTmp.MovedRight(); - rTmp.width = r.width-128; - stencilComparison = (DepthTestStencil)UndoableLabeledEnumPopupNamed( rTmp.PadRight( 4 ).ClampWidth( 32, 140 ), "Comparison", stencilComparison, strDepthTestStencil, "stencil comparison" ); - r.y += 20; - - StencilBitfield(r, "Read Mask", ref stencilMaskRead); - r.y += 20; - StencilBitfield(r, "Write Mask", ref stencilMaskWrite); - r.y += 23; - stencilPass = (StencilOp)UndoableLabeledEnumPopupNamed( r.PadRight( 4 ), "Pass", stencilPass, strStencilOp, "stencil pass" ); - r.y += 20; - stencilFail = (StencilOp)UndoableLabeledEnumPopupNamed( r.PadRight( 4 ), "Fail", stencilFail, strStencilOp, "stencil fail" ); - r.y += 20; - stencilFailZ = (StencilOp)UndoableLabeledEnumPopupNamed( r.PadRight( 4 ), "Fail Z", stencilFailZ, strStencilOp, "stencil fail Z" ); - r.y += 20; - r.xMin -= 20; - r.y += 20; - - EditorGUI.EndDisabledGroup(); - } - - - - public void StencilBitfield( Rect r, string label, ref byte b ){ - ps.StartIgnoreChangeCheck(); - Rect tmp = r; - tmp.width = 62; - - GUI.Label(tmp,label, SF_Styles.MiniLabelRight); - - tmp = tmp.MovedRight(); - tmp.width = 36; - b = (byte)EditorGUI.IntField(tmp.PadTop(1).PadBottom(2).PadRight(2).PadLeft(2),b); - - Rect bitField = r; - bitField.xMin += 57+36 + 4 + 8; - bitField.xMax -= 4; - - - bitField.width /= 8; // 8 bits - for (int i = 8 - 1; i >= 0; i--) { - - GUIStyle btnStyle; - - if(i==0) - btnStyle = EditorStyles.miniButtonRight; - else if(i==7) - btnStyle = EditorStyles.miniButtonLeft; - else - btnStyle = EditorStyles.miniButtonMid; - - bool bit = ( (1< 0 && !expanded ) { - r = r.MovedRight(); - r.width = SF_Styles.IconErrorSmall.width; - r = r.MovedLeft(); - r.height = SF_Styles.IconErrorSmall.height; - r.x -= 1; - r.y += 1; - - bool hasError = false; - for( int i = 0; i < treeStatus.Errors.Count; i++ ) { - if( treeStatus.Errors[i].isWarning == false ) { - hasError = true; - break; - } - } - - GUI.DrawTexture( r, hasError ? SF_Styles.IconErrorSmall : SF_Styles.IconWarningSmall ); - } - - } - - - public override float DrawInner(ref Rect r){ - - float prevYpos = r.y; - r.y = 0; - - - - - r.xMin += 20; - r.y += 20; - //GUI.DrawTexture(r.ClampSize(0,SF_Styles.IconWarningSmall.width),SF_Styles.IconWarningSmall); - //r.xMin += 20; - //GUI.Label(r, "Experimental features may not work"); - //r.xMin -= 20; - // r.height += 20; - - r.height = 20; - - for( int i = 0; i < treeStatus.Errors.Count; i++ ) { - - bool isNode = treeStatus.Errors[i].node != null; - - Texture2D icon = treeStatus.Errors[i].icon; - - Rect blockRect = r; - blockRect.height = treeStatus.Errors[i].rows * 14f + 6; - - - Rect iconRect = blockRect; - iconRect.width = icon.width; - iconRect.height = icon.height; - //iconRect.x += 1; - //iconRect.y += 1; - - Rect textRect = blockRect; - textRect.xMin += iconRect.width + 3; - - iconRect.center = new Vector2( iconRect.center.x, textRect.center.y ); - - bool hasAction = treeStatus.Errors[i].action != null; - - if( isNode || hasAction ) { - if( GUI.Button( iconRect.Pad( -2 ).PadHorizontal(-3), "" ) ) { - if( hasAction ) { - treeStatus.Errors[i].OnPress(); - break; - } else if( isNode ) { - editor.nodeView.selection.DeselectAll( true ); - treeStatus.Errors[i].node.Select( true ); - } - } - } - - GUI.DrawTexture( iconRect, icon ); - EditorGUI.SelectableLabel( textRect, treeStatus.Errors[i].error, SF_Styles.SmallTextArea ); - - r.y += textRect.height; - } - - - r.y += prevYpos; - - return (int)r.yMax; - } - - - - - } -} \ No newline at end of file diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/SFPSC_Console.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/SFPSC_Console.cs.meta deleted file mode 100644 index 96b68382..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/SFPSC_Console.cs.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: 82fffb1e4de9ece4095359142f8821a4 -MonoImporter: - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/SFPSC_Experimental.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/SFPSC_Experimental.cs deleted file mode 100644 index 991a760b..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/SFPSC_Experimental.cs +++ /dev/null @@ -1,79 +0,0 @@ -using UnityEngine; -using UnityEditor; -using System.Collections; - -namespace ShaderForge { - - - [System.Serializable] - public class SFPSC_Experimental : SFPS_Category { - - - public bool force2point0 = false; - public bool forceNoShadowPass = false; - public bool forceNoFallback = false; - public bool forceSkipModelProjection = false; - - - public override string Serialize(){ - string s = ""; - s += Serialize( "f2p0", force2point0.ToString() ); - s += Serialize( "fnsp", forceNoShadowPass.ToString() ); - s += Serialize( "fnfb", forceNoFallback.ToString() ); - s += Serialize( "fsmp", forceSkipModelProjection.ToString() ); - return s; - } - - public override void Deserialize(string key, string value){ - - switch( key ) { - case "f2p0": - force2point0 = bool.Parse( value ); - break; - case "fnsp": - forceNoShadowPass = bool.Parse( value ); - break; - case "fnfb": - forceNoFallback = bool.Parse( value ); - break; - case "fsmp": - forceSkipModelProjection = bool.Parse( value ); - break; - } - - } - - - - public override float DrawInner(ref Rect r){ - - float prevYpos = r.y; - r.y = 0; - - - r.xMin += 20; - r.y += 20; - GUI.DrawTexture(r.ClampSize(0,SF_Styles.IconWarningSmall.width),SF_Styles.IconWarningSmall); - r.xMin += 20; - GUI.Label(r, "Experimental features may not work"); - r.xMin -= 20; - r.y += 20; - force2point0 = UndoableToggle( r, force2point0, "Force Shader Model 2.0", "shader model 2.0 forcing", null ); - r.y += 20; - forceNoShadowPass = UndoableToggle( r, forceNoShadowPass, "Force no custom shadow pass", "force no custom shadow pass", null ); - r.y += 20; - forceNoFallback = UndoableToggle( r, forceNoFallback, "Force no fallback", "force no fallback", null ); - r.y += 20; - forceSkipModelProjection = UndoableToggle( r, forceSkipModelProjection, "Force skip model projection", "force skip model projection", null ); - r.y += 20; - - r.y += prevYpos; - - return (int)r.yMax; - } - - - - - } -} \ No newline at end of file diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/SFPSC_Experimental.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/SFPSC_Experimental.cs.meta deleted file mode 100644 index 9f5d378e..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/SFPSC_Experimental.cs.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: bb31a79ea298f4f939ce86ad39dc270a -MonoImporter: - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/SFPSC_Geometry.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/SFPSC_Geometry.cs deleted file mode 100644 index 523f5038..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/SFPSC_Geometry.cs +++ /dev/null @@ -1,163 +0,0 @@ -using UnityEngine; -using UnityEditor; -using System.Collections; - -namespace ShaderForge { - - - [System.Serializable] - public class SFPSC_Geometry : SFPS_Category { - - public enum VertexPositioning { LocalSpace, ClipSpace, Billboard }; - public string[] strVertexPositioning = new string[] { "Local space", "Clip space", "Billboard" }; - public enum NormalQuality { Interpolated, Normalized }; - public string[] strNormalQuality = new string[] { "Interpolated", "Normalized" }; - public enum NormalSpace { Tangent, Object, World }; - public string[] strNormalSpace = new string[] { "Tangent", "Object", "World" }; - public enum TessellationMode { Regular, EdgeLength/*, EdgeLengthCulled*/}; - public string[] tessModeStr = new string[] { "Regular", "Edge length based"/*, "Edge length based with frustrum culling"*/}; - public enum VertexOffsetMode { Relative, Absolute } - public string[] vertexOffsetModeStr = new string[] { "Relative", "Absolute" }; - public enum OutlineMode { FromOrigin, VertexNormals, VertexColors }; - public string[] outlineModeStr = new string[] { "From origin", "Vertex normals", "Vertex colors" }; - public enum CullMode { BackfaceCulling, FrontfaceCulling, DoubleSided }; - public static string[] strCullMode = new string[] { "Back", "Front", "Off" }; - - public VertexPositioning vertexPositioning = VertexPositioning.LocalSpace; - public NormalQuality normalQuality = NormalQuality.Normalized; - public NormalSpace normalSpace = NormalSpace.Tangent; - public VertexOffsetMode vertexOffsetMode = VertexOffsetMode.Relative; - public bool showPixelSnap = false; - public bool highQualityScreenCoords = true; - public TessellationMode tessellationMode = TessellationMode.Regular; - public OutlineMode outlineMode = OutlineMode.VertexNormals; - public CullMode cullMode = CullMode.BackfaceCulling; - - - - public override string Serialize(){ - string s = ""; - s += Serialize( "vtps", ( (int)vertexPositioning ).ToString() ); - s += Serialize( "hqsc", highQualityScreenCoords.ToString()); - s += Serialize( "nrmq", ( (int)normalQuality ).ToString() ); - s += Serialize( "nrsp", ( (int)normalSpace ).ToString() ); - s += Serialize( "vomd", ( (int)vertexOffsetMode ).ToString() ); - s += Serialize( "spxs", showPixelSnap.ToString()); - s += Serialize( "tesm", ((int)tessellationMode).ToString()); - s += Serialize( "olmd", ( (int)outlineMode ).ToString() ); - s += Serialize( "culm", ( (int)cullMode ).ToString() ); - return s; - } - - public override void Deserialize(string key, string value){ - - switch( key ) { - case "vtps": - vertexPositioning = (VertexPositioning)int.Parse( value ); - break; - case "nrmq": - normalQuality = (NormalQuality)int.Parse( value ); - break; - case "nrsp": - normalSpace = (NormalSpace)int.Parse( value ); - break; - case "vomd": - vertexOffsetMode = (VertexOffsetMode)int.Parse( value ); - break; - case "hqsc": - highQualityScreenCoords = bool.Parse( value ); - break; - case "spxs": - showPixelSnap = bool.Parse( value ); - break; - case "tesm": - tessellationMode = (TessellationMode)int.Parse( value ); - break; - case "olmd": - outlineMode = (OutlineMode)int.Parse( value ); - break; - case "culm": - cullMode = (CullMode)int.Parse( value ); - break; - } - - } - - - public override float DrawInner(ref Rect r){ - - float prevYpos = r.y; - r.y = 0; - - - r.xMin += 20; - r.y += 20; - - - cullMode = (CullMode)UndoableLabeledEnumPopup( r, "Face Culling", cullMode, "face culling" ); - r.y += 20; - - GUI.enabled = ps.catLighting.renderPath == SFPSC_Lighting.RenderPath.Forward; - normalQuality = (NormalQuality)UndoableContentScaledToolbar( r, "Normal Quality", (int)normalQuality, strNormalQuality, "normal quality" ); - GUI.enabled = true; - r.y += 20; - - vertexPositioning = (VertexPositioning)UndoableContentScaledToolbar( r, "Vertex Positioning", (int)vertexPositioning, strVertexPositioning, "vertex positioning" ); - r.y += 20; - - GUI.enabled = ps.mOut.normal.IsConnectedEnabledAndAvailable(); - normalSpace = (NormalSpace)UndoableContentScaledToolbar( r, "Normal Space", (int)normalSpace, strNormalSpace, "normal space" ); - GUI.enabled = true; - r.y += 20; - - vertexOffsetMode = (VertexOffsetMode)UndoableContentScaledToolbar( r, "Vertex offset mode", (int)vertexOffsetMode, vertexOffsetModeStr, "vertex offset mode" ); - r.y += 20; - - GUI.enabled = ps.HasTessellation(); - tessellationMode = (TessellationMode)UndoableLabeledEnumPopupNamed( r, "Tessellation Mode", tessellationMode, tessModeStr, "tessellation mode" ); - GUI.enabled = true; - r.y += 20; - - GUI.enabled = ps.HasOutline(); - outlineMode = (OutlineMode)UndoableLabeledEnumPopupNamed( r, "Outline Extrude Direction", outlineMode, outlineModeStr, "outline mode" ); - GUI.enabled = true; - r.y += 20; - - highQualityScreenCoords = UndoableToggle( r, highQualityScreenCoords, "Per-pixel screen coordinates", "per-pixel screen coordinates", null ); - r.y += 20; - - showPixelSnap = UndoableToggle( r, showPixelSnap, "Show 2D sprite pixel snap option in material", "show pixel snap", null ); - r.y += 20; - - r.y += prevYpos; - - return (int)r.yMax; - } - - - - // TODO: Double sided support - public string GetNormalSign() { - if( cullMode == CullMode.BackfaceCulling ) - return ""; - if( cullMode == CullMode.FrontfaceCulling ) - return "-"; - //if( cullMode == CullMode.DoubleSided ) - return ""; - } - - public bool UseCulling() { - return ( cullMode != CullMode.BackfaceCulling ); - } - public string GetCullString() { - return "Cull " + strCullMode[(int)cullMode]; - } - public bool IsDoubleSided() { - return ( cullMode == CullMode.DoubleSided ); - } - - - - - } -} \ No newline at end of file diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/SFPSC_Geometry.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/SFPSC_Geometry.cs.meta deleted file mode 100644 index f50aa7e1..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/SFPSC_Geometry.cs.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: d931c87bc14d34c86a08c0428175c5a6 -MonoImporter: - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/SFPSC_Lighting.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/SFPSC_Lighting.cs deleted file mode 100644 index 899e7ad7..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/SFPSC_Lighting.cs +++ /dev/null @@ -1,365 +0,0 @@ -using UnityEngine; -using UnityEditor; -using System.Collections; - -namespace ShaderForge { - - - [System.Serializable] - public class SFPSC_Lighting : SFPS_Category { - - public RenderPath renderPath = RenderPath.Forward; - public LightPrecision lightPrecision = LightPrecision.Fragment; - public LightMode lightMode = LightMode.BlinnPhong; - public SpecularMode specularMode = SpecularMode.Metallic; - public TransparencyMode transparencyMode = TransparencyMode.Fade; - public GlossRoughMode glossRoughMode = GlossRoughMode.Gloss; - public LightCount lightCount = LightCount.Multi; - - public bool useAmbient = true; - public bool maskedSpec = true; - public bool geometricAntiAliasing = false; - //public bool shadowCast = true; - //public bool shadowReceive = true; - public bool bakedLight = false; - public bool highQualityLightProbes = false; - public bool reflectprobed = false; - public bool energyConserving = false; - public bool remapGlossExponentially = true; - public bool includeMetaPass = true; - - public enum RenderPath { Forward, Deferred }; - public string[] strRenderPath = new string[] { "Forward", "Deferred" }; - - - public enum LightPrecision { Vertex, Fragment }; - public string[] strLightPrecision = new string[] { "Per-Vertex", "Per-Fragment" }; - public enum LightMode { Unlit, BlinnPhong, Phong, PBL }; - public string[] strLightMode = new string[] { "Unlit/Custom", "Blinn-Phong", "Phong", "PBL" }; - public enum SpecularMode { Specular, Metallic }; - public string[] strSpecularMode = new string[] { "Specular", "Metallic" }; - public enum TransparencyMode { Fade, Reflective }; - public string[] strTransparencyMode = new string[] { "Fade", "Reflective" }; - public enum GlossRoughMode { Gloss, Roughness }; - public string[] strGlossRoughMode = new string[] { "Gloss", "Roughness" }; - public enum LightCount { Single, Multi }; - public string[] strLightCount = new string[] { "Single Directional", "Multi-light"}; - - - - public override string Serialize(){ - string s = ""; - s += Serialize( "lico", ( (int)lightCount ).ToString() ); - s += Serialize( "lgpr", ( (int)lightPrecision ).ToString() ); - s += Serialize( "limd", ( (int)lightMode ).ToString() ); - s += Serialize( "spmd", ( (int)specularMode ).ToString() ); - s += Serialize( "trmd", ( (int)transparencyMode ).ToString() ); - s += Serialize( "grmd", ( (int)glossRoughMode ).ToString() ); - s += Serialize( "uamb", useAmbient.ToString() ); - s += Serialize( "mssp", maskedSpec.ToString() ); - s += Serialize( "bkdf", bakedLight.ToString() ); - s += Serialize( "hqlp", highQualityLightProbes.ToString() ); - s += Serialize( "rprd", reflectprobed.ToString() ); - s += Serialize( "enco", energyConserving.ToString()); - s += Serialize( "rmgx", remapGlossExponentially.ToString()); - s += Serialize( "imps", includeMetaPass.ToString() ); - s += Serialize( "rpth", ((int)renderPath).ToString() ); - - //s += Serialize( "shdc", shadowCast.ToString() ); - //s += Serialize( "shdr", shadowReceive.ToString() ); - return s; - } - - public override void Deserialize(string key, string value){ - - - switch( key ) { - case "lgpr": - lightPrecision = (LightPrecision)int.Parse( value ); - break; - case "limd": - lightMode = (LightMode)int.Parse( value ); - break; - case "uamb": - useAmbient = bool.Parse( value ); - break; - case "mssp": - maskedSpec = bool.Parse( value ); - break; - case "bkdf": - bakedLight = bool.Parse( value ); - break; - case "spmd": - specularMode = (SpecularMode)int.Parse( value ); - break; - case "trmd": - transparencyMode = (TransparencyMode)int.Parse( value ); - break; - case "grmd": - glossRoughMode = (GlossRoughMode)int.Parse( value ); - break; - - /*case "shdc": - shadowCast = bool.Parse( value ); - break; - case "shdr": - shadowReceive = bool.Parse( value ); - break;*/ - case "lico": - lightCount = (LightCount)int.Parse( value ); - break; - case "lmpd": - bakedLight |= bool.Parse( value ); - break; - case "lprd": - bakedLight |= bool.Parse( value ); - break; - case "hqlp": - highQualityLightProbes = bool.Parse( value ); - break; - case "rprd": - reflectprobed = bool.Parse( value ); - break; - case "enco": - energyConserving = bool.Parse( value ); - break; - - - case "rmgx": - remapGlossExponentially = bool.Parse( value ); - break; - case "imps": - includeMetaPass = bool.Parse( value ); - break; - case "rpth": - renderPath = (RenderPath)int.Parse( value ); - break; - } - - } - - - - public override float DrawInner(ref Rect r){ - - float prevYpos = r.y; - r.y = 0; - - - r.xMin += 20; - r.y += 20; - - renderPath = (RenderPath)UndoableContentScaledToolbar( r, "Render Path", (int)renderPath, strRenderPath, "render path" ); - - - if(renderPath == RenderPath.Deferred){ - if(lightMode != LightMode.PBL) - lightMode = LightMode.PBL; - if(ps.catBlending.autoSort == false){ - ps.catBlending.autoSort = true; - } - if(ps.catBlending.blendModePreset != BlendModePreset.Opaque){ - ps.catBlending.blendModePreset = BlendModePreset.Opaque; - ps.catBlending.ConformBlendsToPreset(); - } - } - r.y += 20; - if(renderPath == RenderPath.Deferred){ - GUI.enabled = false; - UndoableContentScaledToolbar( r, "Light Mode", (int)LightMode.PBL, strLightMode, "light mode" ); - GUI.enabled = true; - } else { - lightMode = (LightMode)UndoableContentScaledToolbar( r, "Light Mode", (int)lightMode, strLightMode, "light mode" ); - } - r.y += 20; - - if( IsPBL() ) { - specularMode = (SpecularMode)UndoableContentScaledToolbar( r, "Specular Mode", (int)specularMode, strSpecularMode, "specular mode" ); - r.y += 20; - } - - GUI.enabled = ps.HasSpecular(); - glossRoughMode = (GlossRoughMode)UndoableContentScaledToolbar( r, "Gloss Mode", (int)glossRoughMode, strGlossRoughMode, "gloss mode" ); - r.y += 20; - GUI.enabled = true; - - GUI.enabled = ps.HasAlpha(); // Has Opacity connected - transparencyMode = (TransparencyMode)UndoableContentScaledToolbar( r, "Transparency Mode", (int)transparencyMode, strTransparencyMode, "transparency mode" ); - r.y += 20; - GUI.enabled = true; - - - - if( ps.catLighting.IsPBL() == false ) { - UndoableConditionalToggle( r, ref remapGlossExponentially, - usableIf: ps.HasGloss() && renderPath != RenderPath.Deferred, - disabledDisplayValue: renderPath == RenderPath.Deferred ? true : false, - label: "Remap gloss from [0-1] to " + ( ( renderPath == RenderPath.Deferred ) ? "[0-128]" : "[1-2048]" ), - undoSuffix: "gloss remap" - ); - r.y += 20; - } - - - - if( lightMode == LightMode.Unlit || lightMode == LightMode.PBL ) - GUI.enabled = false; - { - - //bool b = energyConserving; - if( lightMode == LightMode.PBL ) - GUI.Toggle( r, true, "Energy Conserving" ); // Dummy display of a checked energy conserve - else - energyConserving = UndoableToggle( r, energyConserving, "Energy Conserving", "energy conservation", null ); - //energyConserving = GUI.Toggle( r, energyConserving, "Energy Conserving" ); - - r.y += 20; - GUI.enabled = true; - } - - - GUI.enabled = renderPath == RenderPath.Forward; - lightCount = (LightCount)UndoableContentScaledToolbar(r, "Light Count", (int)lightCount, strLightCount, "light count" ); - GUI.enabled = true; - r.y += 20; - - - //lightPrecision = (LightPrecision)ContentScaledToolbar(r, "Light Quality", (int)lightPrecision, strLightPrecision ); // TODO: Too unstable for release - //r.y += 20; - - - UndoableConditionalToggle(r, ref bakedLight, - usableIf: ps.HasDiffuse() && lightMode != LightMode.Unlit, - disabledDisplayValue: false, - label: "Lightmap & light probes", - undoSuffix: "lightmap & light probes" - ); - r.y += 20; - - - bool wantsMetaPass = ps.catLighting.bakedLight && ( ps.HasDiffuse() || ps.HasEmissive() ); - UndoableConditionalToggle( r, ref includeMetaPass, - usableIf: wantsMetaPass, - disabledDisplayValue: false, - label: "Write meta pass (light bounce coloring)", - undoSuffix: "write meta pass" - ); - r.y += 20; - - //includeMetaPass = UndoableToggle( r, includeMetaPass, "Write meta pass (light bounce coloring)", "write meta pass", null ); - //r.y += 20; - - highQualityLightProbes = UndoableToggle( r, highQualityLightProbes, "Per-pixel light probe sampling", "per-pixel light probe sampling", null ); - r.y += 20; - - - - UndoableConditionalToggle( r, ref reflectprobed, - usableIf: ps.HasSpecular() && lightMode != LightMode.Unlit, - disabledDisplayValue: false, - label: "Reflection probe support", - undoSuffix: "reflection probe support" - ); - r.y += 20; - - - - - /*shadowCast = GUI.Toggle( r, shadowCast, "Cast shadows" ); - r.y += 20; - shadowReceive = GUI.Toggle( r, shadowReceive, "Receive shadows" ); - r.y += 20;*/ - - - - - //GUI.enabled = IsLit(); - /* - UndoableConditionalToggle( r, ref geometricAntiAliasing, - usableIf: ps.HasSpecular() && ps.catLighting.IsPBL(), - disabledDisplayValue: false, - label: "Geometric specular anti-aliasing", - undoSuffix: "geometric specular anti-aliasing" - ); - r.y += 20; - */ - - UndoableConditionalToggle(r, ref useAmbient, - usableIf: !bakedLight && ps.catLighting.IsLit(), - disabledDisplayValue: bakedLight, - label: "Receive Ambient Light", - undoSuffix: "receive ambient light" - ); - r.y += 20; - - /* - if(lightprobed){ - GUI.enabled = false; - GUI.Toggle( r, true, "Receive Ambient Light" ); - GUI.enabled = true; - }else{ - useAmbient = GUI.Toggle( r, useAmbient, "Receive Ambient Light" ); - }*/ - - - //r.y += 20; - - /* DISABLED DUE TO CAUSING TOO MANY ARTIFACTS - if(ps.catLighting.HasSpecular() && renderPath == RenderPath.Forward){ - maskedSpec = UndoableToggle( r, maskedSpec, "Mask directional light specular by shadows", "directional light specular shadow masking", null ); - } else { - GUI.enabled = false; - GUI.Toggle( r, false, "Mask directional light specular by shadows" ); - GUI.enabled = true; - } - r.y += 20;*/ - - r.y += prevYpos; - - return (int)r.yMax; - } - - - - - - - - public bool UseMultipleLights() { - return lightCount == LightCount.Multi; - } - - public bool IsVertexLit() { - return ( IsLit() && ( lightPrecision == LightPrecision.Vertex ) ); - } - - public bool IsFragmentLit() { - return ( IsLit() && ( lightPrecision == LightPrecision.Fragment ) ); - } - - public bool IsLit() { - return ( lightMode != LightMode.Unlit && ( ps.HasDiffuse() || HasSpecular()) ); - } - - public bool IsEnergyConserving() { - return IsLit() && (energyConserving || lightMode == LightMode.PBL); - } - - public bool IsPBL() { - return lightMode == LightMode.PBL; - } - - public bool HasSpecular() { - return ( lightMode == LightMode.BlinnPhong || lightMode == LightMode.Phong || lightMode == LightMode.PBL ) && ( ps.mOut.specular.IsConnectedAndEnabled() ); - } - - - - - - - - - - } -} \ No newline at end of file diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/SFPSC_Lighting.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/SFPSC_Lighting.cs.meta deleted file mode 100644 index d812b109..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/SFPSC_Lighting.cs.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: 8ef77982e74294fc4b12878b1651f3d9 -MonoImporter: - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/SFPSC_Meta.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/SFPSC_Meta.cs deleted file mode 100644 index 5a4fe813..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/SFPSC_Meta.cs +++ /dev/null @@ -1,340 +0,0 @@ -using UnityEngine; -using UnityEditor; -using System.Collections; -using System.Collections.Generic; - -namespace ShaderForge { - - - [System.Serializable] - public class SFPSC_Meta : SFPS_Category { - - public enum Inspector3DPreviewType { Sphere, Plane, Skybox }; - public string[] strInspector3DPreviewType = new string[] { "3D object", "2D sprite", "Sky"}; - public enum BatchingMode { Enabled, Disabled, DisableDuringLODFade }; - public string[] strBatchingMode = new string[] { "Enabled", "Disabled", "Disabled during LOD fade" }; - public Inspector3DPreviewType previewType = Inspector3DPreviewType.Sphere; - - public BatchingMode batchingMode = BatchingMode.Enabled; - public bool canUseSpriteAtlas = false; - public bool[] usedRenderers; // TODO: Serialization? - public string fallback = ""; - public int LOD = 0; // TODO: Serialization? - - public List cgIncludes = new List(); - - /* - d3d9 = 0, // - Direct3D 9 - d3d11 = 1, // - Direct3D 11 - glcore = 2, // - OpenGL Core - gles = 3, // - OpenGL ES 2.0 - gles3 = 4, // - OpenGL ES 3.0 - metal = 5, // - iOS Metal - d3d11_9x = 6, // - Direct3D 11 windows RT - xboxone = 7, // - Xbox One - ps4 = 8, // - PlayStation 4 - psp2 = 10 // - PlayStation Vita - n3ds = 11 // - Nintendo 3DS - wiiu = 12, // - Nintendo Wii U - */ - - public override SFPS_Category PostInitialize (){ - usedRenderers = new bool[12]{ // TODO: Load from project settings - true, // - Direct3D 9 - true, // - Direct3D 11 - true, // - OpenGL Core - true, // - OpenGL ES 2.0 - false, // - OpenGL ES 3.0 - false, // - iOS Metal - false, // - Direct3D 11 windows RT - false, // - Xbox One - false, // - PlayStation 4 - false, // - PlayStation Vita - false, // - Nintendo 3DS - false // - Wii U - }; - return this; - } - - - char[] splitChars = new char[] { '|' }; - string SerializeCgIncludes() { - string serialized = ""; - for( int i = 0; i < cgIncludes.Count; i++ ) { - serialized += cgIncludes[i]; - if( i < cgIncludes.Count - 1 ) - serialized += splitChars[0]; - } - string encoded = SF_Tools.StringToBase64String( serialized ); - - return encoded; - } - - void DeserializeCgIncludes( string serialized ) { - string decoded = SF_Tools.Base64StringToString( serialized ); - cgIncludes = new List( decoded.Split( splitChars ) ); - - // Remove empty entries - for( int i = cgIncludes.Count - 1; i >= 0; i-- ) - if( cgIncludes[i] == string.Empty ) - cgIncludes.RemoveAt( i ); - } - - public override string Serialize(){ - string s = ""; - s += Serialize( "flbk", fallback ); - s += Serialize( "iptp", ((int)previewType).ToString() ); - s += Serialize( "cusa", canUseSpriteAtlas.ToString() ); - s += Serialize( "bamd", ( (int)batchingMode ).ToString() ); - s += Serialize( "cgin", SerializeCgIncludes() ); - return s; - } - - public override void Deserialize(string key, string value){ - - switch( key ) { - case "flbk": - fallback = value; - break; - case "iptp": - previewType = (Inspector3DPreviewType)int.Parse(value); - break; - case "cusa": - canUseSpriteAtlas = bool.Parse(value); - break; - case "bamd": - batchingMode = (BatchingMode)int.Parse( value ); - break; - case "cgin": - DeserializeCgIncludes( value ); - break; - } - - } - - - public override float DrawInner(ref Rect r){ - - float prevYpos = r.y; - r.y = 0; - - - r.xMin += 20; - r.y += 20; - - - EditorGUI.LabelField( r, "Path", EditorStyles.miniLabel ); - r.xMin += 30; - r.height = 17; - r.xMax -= 3; - ps.StartIgnoreChangeCheck(); - GUI.SetNextControlName( "shdrpath" ); - string prev = editor.currentShaderPath; - //editor.currentShaderPath = GUI.TextField( r, editor.currentShaderPath,EditorStyles.textField ); - editor.currentShaderPath = UndoableTextField( r, editor.currentShaderPath, "shader path", null, editor, showContent:false ); - if( editor.currentShaderPath != prev ) { - SF_Tools.FormatShaderPath( ref editor.currentShaderPath ); - } - if( Event.current.keyCode == KeyCode.Return && GUI.GetNameOfFocusedControl() == "shdrpath" ) { - editor.Defocus(); - editor.OnShaderModified( NodeUpdateType.Hard ); - } - ps.EndIgnoreChangeCheck(); - r.xMin -= 30; - r.height = 20; - r.xMax += 3; - r.y += 20; - - - - - EditorGUI.LabelField( r, "Fallback", EditorStyles.miniLabel ); - Rect rStart = new Rect( r ); - r.xMin += 50; - r.height = 17; - r.xMax -= 47; - ps.StartIgnoreChangeCheck(); - GUI.SetNextControlName( "shdrpath" ); - prev = fallback; - fallback = UndoableTextField( r, fallback, "shader fallback", null, null, showContent:false ); - r.x += r.width + 2; - r.width = 42; - ShaderPicker( r, "Pick"); - if( fallback != prev ) { - SF_Tools.FormatShaderPath( ref fallback ); - } - if( Event.current.keyCode == KeyCode.Return && GUI.GetNameOfFocusedControl() == "shdrpath" ) { - editor.Defocus(); - editor.OnShaderModified( NodeUpdateType.Hard ); - } - ps.EndIgnoreChangeCheck(); - r = rStart; - r.y += r.height; - - - EditorGUI.LabelField( r, "LOD", EditorStyles.miniLabel ); - r.xMin += 30; - r.height = 17; - r.xMax -= 3; - LOD = UndoableIntField( r, LOD, "LOD"); - r.xMin -= 30; - r.height = 20; - r.xMax += 3; - r.y += 20; - - - canUseSpriteAtlas = UndoableToggle( r, canUseSpriteAtlas, "Allow using atlased sprites", "allow using atlased sprites", null ); - r.y += 20; - - batchingMode = (BatchingMode)UndoableLabeledEnumPopupNamed( r, "Draw call batching", batchingMode, strBatchingMode, "draw call batching" ); - r.y += 20; - - previewType = (Inspector3DPreviewType)UndoableLabeledEnumPopupNamed( r, "Inspector preview mode", previewType, strInspector3DPreviewType, "inspector preview mode" ); - r.y += 20; - - r.y += 10; - - - if( cgIncludes.Count == 0 ) { - Rect rBtn = r; - rBtn.height -= 4; - rBtn.width = 100; - if( GUI.Button( rBtn, "Add CG Include", EditorStyles.miniButton ) ) { - Undo.RecordObject( this, "add CG include" ); - cgIncludes.Add( "" ); - } - //r.y += 20; - } else { - EditorGUI.LabelField( r, "CG Includes:" ); - r.y += 20; - - - int removeTarget = -1; - - for( int i = 0; i < cgIncludes.Count; i++ ) { - - Rect smallRect = r; - smallRect.width = 20; - smallRect.height -= 2; - - if( GUI.Button( smallRect, "-" ) ) { - removeTarget = i; - } - - r.xMin += 22; - - Rect textFieldRect = r; - textFieldRect.height -= 2; - textFieldRect.width -= 3; - cgIncludes[i] = UndoableTextField( textFieldRect, cgIncludes[i], "cg include", null ); - textFieldRect.x += 1; - GUI.color = new Color( 1f, 1f, 1f, 0.3f ); - GUI.Label( textFieldRect, "" + cgIncludes[i] + ".cginc", SF_Styles.RichLabel ); - GUI.color = Color.white; - r.y += 20; - - r.xMin -= 22; - } - - if( removeTarget != -1 ) { - Undo.RecordObject( this, "remove CG include" ); - cgIncludes.RemoveAt( removeTarget ); - } - - Rect buttonRect = r; - buttonRect.width = 20; - buttonRect.height -= 2; - if( GUI.Button( buttonRect, "+" ) ) { - Undo.RecordObject( this, "add CG include" ); - cgIncludes.Add( "" ); - } - } - - - - r.y += 40; - - - - EditorGUI.LabelField( r, "Target renderers:" ); - r.xMin += 20; - r.y += 20; - r.height = 17; - float pWidth = r.width; - - - bool onlyDX11GlCore = ps.mOut.tessellation.IsConnectedAndEnabled(); - - - for(int i=0;i propertyList = editor.nodeView.treeStatus.propertyList; - - //GUI.Label( r.MovedUp(), "propertyList.Count = " + propertyList.Count ); - - int propCount = propertyList.Count; - - bool multiple = propCount > 1; - - - float prevYpos = r.y; - r.y = 0; - - - if( propCount == 0 ) { - r.y += 16; - GUI.enabled = false; - GUI.Label( r, "No properties in this shader yet" ); - GUI.enabled = true; - r.y -= 16; - } - - - r.y += 23; - r.xMin += 20; // Indent - r.xMax -= 3; - - - - r.height = propertyHeight; - - - - - // On drop... - if( draggingProperty != null && SF_GUI.ReleasedRawLMB()) { - - - int moveDist = Mathf.RoundToInt( ( Event.current.mousePosition.y - startMouseY ) / propertyHeight ); - - // Execute reordering! - if( moveDist != 0 ) { // See if it actually moved to another slot - int newIndex = Mathf.Clamp( dragStartIndex + moveDist, 0, propCount - 1 ); - Undo.RecordObject(editor.nodeView.treeStatus,"property reorder"); - editor.nodeView.treeStatus.propertyList.RemoveAt( dragStartIndex ); - //if( newIndex > dragStartIndex ) - // newIndex--; - editor.nodeView.treeStatus.propertyList.Insert( newIndex, draggingProperty ); - } - - draggingProperty = null; - - - } - - float yStart = r.y; - - - int i = 0; - - - for(int j=0;j dragStartIndex) { - r.y -= propertyHeight - SF_Tools.Smoother( Mathf.Clamp( r.y - DragRectPosY, 0, propertyHeight ) / propertyHeight ) * propertyHeight; - } - } - - - - - - GUI.Box( r, string.Empty, draggingThis ? SF_Styles.HighlightStyle : SF_Styles.NodeStyle ); - bool mouseOver = r.Contains( Event.current.mousePosition ); - - - - - - // We're now in the property box - // We need: Grabber, Text field, Internal label - - - - bool imagePreview = (prop.property is SFP_Tex2d || prop.property is SFP_Cubemap); - bool colorInput = ( prop.property is SFP_Color ); - bool checkboxInput = (prop.property is SFP_ToggleProperty || prop.property is SFP_SwitchProperty); - - - // GRABBER - Rect gRect = SF_Tools.GetExpanded( r, -6); - gRect.width = gRect.height/2f; - - gRect.yMin += 8; - - Rect gRectCoords = new Rect( gRect ); - - gRectCoords.x = 0; - gRectCoords.y = 0; - gRectCoords.width /= SF_GUI.Handle_drag.width; - gRectCoords.height /= SF_GUI.Handle_drag.height; - if(multiple) - GUI.DrawTextureWithTexCoords( gRect, SF_GUI.Handle_drag, gRectCoords ); - gRect.yMin -= 8; - /* - if( propCount > 1 ) { - if( gRect.Contains( Event.current.mousePosition ) && SF_GUI.PressedLMB() && !dragging ) { - dragStartOffsetY = r.y - Event.current.mousePosition.y; - draggingProperty = prop; - dragStartIndex = i; - startMouseY = Event.current.mousePosition.y; - } - SF_GUI.AssignCursor( gRect,MouseCursor.Pan); - GUI.DrawTextureWithTexCoords(gRect, SF_GUI.Handle_drag, gRectCoords ); - } - */ - - - - - // Property type name - Color c = GUI.color; - c.a = 0.5f; - GUI.color = c; - Rect propTypeNameRect = new Rect( gRect ); - //propTypeNameRect.x += propTypeNameRect.width + 8; - propTypeNameRect.y -= 5; - if( imagePreview || colorInput || checkboxInput ) - propTypeNameRect.width = r.width - r.height - 38; - else - propTypeNameRect.width = r.width - 48; - propTypeNameRect.height = 16; - //if( prop.property != null ) - GUI.Label( propTypeNameRect, prop.property.nameType, EditorStyles.miniLabel ); - propTypeNameRect.x += gRect.width + 8; - c.a = 1f; - GUI.color = c; - //else - //return (int)r.yMax; - - - // INTERNAL NAME - - if( mouseOver ) { - c.a = 0.5f; - GUI.color = c; - Rect intRect = new Rect( propTypeNameRect ); - intRect.xMin += intRect.width - SF_GUI.WidthOf( prop.property.nameInternal, EditorStyles.label ); - //SF_GUI.AssignCursor( intRect, MouseCursor.Text ); - GUI.Label( intRect, prop.property.nameInternal, EditorStyles.label ); - c.a = 1f; - GUI.color = c; - } - - - - // DISPLAY NAME - Rect dispNameRect = new Rect( propTypeNameRect ); - dispNameRect.y += 18; - //dispNameRect.x += dispNameRect.width + 4; - //dispNameRect.height = 16; - //dispNameRect.y += 10; - //dispNameRect.width = ( r.width - dispNameRect.width - texRect.width - 20 ) * 0.5f; - - ps.StartIgnoreChangeCheck(); - string bef = prop.property.nameDisplay; - SF_GUI.AssignCursor( dispNameRect, MouseCursor.Text ); - //if( mouseOver ) - UndoableEnterableNodeTextField(prop.property.node, dispNameRect, ref prop.property.nameDisplay, "change property name", update:false, extra:prop.property); - //else - //GUI.Label( dispNameRect, prop.property.nameDisplay, EditorStyles.boldLabel ); - if( prop.property.nameDisplay != bef ) { // Changed - prop.property.UpdateInternalName(); - } - ps.EndIgnoreChangeCheck(); - - - - - - - // Texture preview - Rect texRect = new Rect( 0, 0, 0, 0 ); - c = GUI.color; - if( imagePreview ) { - texRect = SF_Tools.GetExpanded(new Rect( r ), -4); - texRect.xMin += texRect.width - texRect.height; - //texRect.x += gRect.width + 4; - //texRect.width = texRect.height; - GUI.Box( SF_Tools.GetExpanded( texRect, 1f ), string.Empty, SF_Styles.NodeStyle ); - GUI.color = Color.white; - GUI.DrawTexture( texRect, prop.texture.texture ); - GUI.color = c; - } - - - if( prop.property is SFP_Slider ) { - - SFN_Slider slider = ( prop as SFN_Slider ); - - ps.StartIgnoreChangeCheck(); - Rect sR = new Rect( dispNameRect ); - sR.y += sR.height+5; - sR.width = 28; - GUI.Label( sR, "Min" ); - //sR.x += sR.width; - sR = sR.MovedRight(); - prop.UndoableEnterableFloatField(sR, ref slider.min, "min value",null); - - - sR = sR.MovedRight(); - - sR.width = r.width - 164; - - float beforeSlider = slider.current; - - string sliderName = "slider" + slider.id; - GUI.SetNextControlName( sliderName ); - - sR.xMin += 4; - sR.xMax -= 4; - - slider.current = prop.UndoableHorizontalSlider(sR, slider.current, slider.min, slider.max, "value"); - if( beforeSlider != slider.current ) { - GUI.FocusControl( sliderName ); - slider.OnValueChanged(); - } - //SF_GUI.AssignCursor( sR, MouseCursor.Arrow ); - - sR.x += sR.width+4; - sR.width = 32; - prop.UndoableEnterableFloatField(sR, ref slider.max, "max value",null); - sR.x += sR.width; - GUI.Label( sR, "Max" ); - - ps.EndIgnoreChangeCheck(); - - } else if( colorInput ) { - - - SFN_Color colNode = ( prop as SFN_Color ); - - texRect = SF_Tools.GetExpanded( new Rect( r ), -4 ); - texRect.xMin += texRect.width - texRect.height; - //GUI.Box( SF_Tools.GetExpanded( texRect, 1f ), string.Empty, SF_Styles.NodeStyle ); - GUI.color = Color.white; - texRect.yMax -= 21; - texRect.yMin += 15; - texRect.xMin += 2; - //texRect.xMax -= 2; - - SF_GUI.AssignCursor( texRect, MouseCursor.Arrow ); - - ps.StartIgnoreChangeCheck(); - //Color col = EditorGUI.ColorField( texRect, colNode.texture.dataUniform ); - Color col = colNode.UndoableColorField(texRect, colNode.texture.dataUniform, "set color of " + colNode.property.nameDisplay); - ps.EndIgnoreChangeCheck(); - colNode.SetColor( col ); - GUI.color = c; - } else if( prop.property is SFP_Vector4Property ) { - - SFN_Vector4Property vec4 = ( prop as SFN_Vector4Property ); - - ps.StartIgnoreChangeCheck(); - Rect sR = new Rect( dispNameRect ); - sR.y += sR.height + 5; - sR.width = 20; - - int lbWidth = 12; - - - //string channelStr = "XYZW"; - - - - sR.width = lbWidth; - GUI.Label( sR, "X", EditorStyles.miniLabel ); - sR.x += sR.width; - sR.width = 32; - prop.UndoableEnterableFloatField(sR, ref vec4.texture.dataUniform.x, "X channel", EditorStyles.textField ); - SF_GUI.AssignCursor( sR, MouseCursor.Text ); - sR.x += sR.width + 3; - - - sR.width = lbWidth; - GUI.Label( sR, "Y", EditorStyles.miniLabel ); - sR.x += sR.width; - sR.width = 32; - prop.UndoableEnterableFloatField(sR, ref vec4.texture.dataUniform.y, "Y channel", EditorStyles.textField ); - SF_GUI.AssignCursor( sR, MouseCursor.Text ); - sR.x += sR.width+3; - - - sR.width = lbWidth; - GUI.Label( sR, "Z", EditorStyles.miniLabel ); - sR.x += sR.width; - sR.width = 32; - prop.UndoableEnterableFloatField(sR, ref vec4.texture.dataUniform.z, "Z channel", EditorStyles.textField ); - SF_GUI.AssignCursor( sR, MouseCursor.Text ); - sR.x += sR.width + 3; - - - sR.width = lbWidth; - GUI.Label( sR, "W", EditorStyles.miniLabel ); - sR.x += sR.width; - sR.width = 32; - prop.UndoableEnterableFloatField(sR, ref vec4.texture.dataUniform.w, "W channel", EditorStyles.textField ); - SF_GUI.AssignCursor( sR, MouseCursor.Text ); - - - - - ps.EndIgnoreChangeCheck(); - - } else if( prop.property is SFP_ValueProperty ) { - - SFN_ValueProperty val = ( prop as SFN_ValueProperty ); - - ps.StartIgnoreChangeCheck(); - Rect sR = new Rect( dispNameRect ); - sR.y += sR.height + 5; - sR.width = 20; - - sR.width = 35; - GUI.Label( sR, "Value", EditorStyles.miniLabel ); - sR.x += sR.width; - sR.width = 55; - //SF_GUI.EnterableFloatField( prop, sR, ref val.texture.dataUniform.r, EditorStyles.textField ); - prop.UndoableEnterableFloatField(sR, ref val.texture.dataUniform.x, "value", EditorStyles.textField); - SF_GUI.AssignCursor( sR, MouseCursor.Text ); - ps.EndIgnoreChangeCheck(); - } else if (checkboxInput){ - - bool isToggle = (prop.property is SFP_ToggleProperty); - - bool prevValue = isToggle ? (prop.property.node as SFN_ToggleProperty).on : (prop.property.node as SFN_SwitchProperty).on; - - - - - ps.StartIgnoreChangeCheck(); - - texRect = SF_Tools.GetExpanded( new Rect( r ), -4 ); - texRect.xMin += texRect.width - texRect.height; - //GUI.Box( SF_Tools.GetExpanded( texRect, 1f ), string.Empty, SF_Styles.NodeStyle ); - - texRect.yMax -= 21; - texRect.yMin += 15; - texRect.xMin += 2; - //texRect.xMax -= 2; - - SF_GUI.AssignCursor( texRect, MouseCursor.Arrow ); - - bool newValue = prevValue; - - if(isToggle){ - prop.property.node.UndoableToggle(texRect, ref (prop.property.node as SFN_ToggleProperty).on, "", "property checkbox", EditorStyles.toggle); - newValue = (prop.property.node as SFN_ToggleProperty).on; - } else { - prop.property.node.UndoableToggle(texRect, ref (prop.property.node as SFN_SwitchProperty).on, "", "property checkbox", EditorStyles.toggle); - newValue = (prop.property.node as SFN_SwitchProperty).on; - } - - if(newValue != prevValue){ - //if(isToggle){ - // (prop.property.node as SFN_ToggleProperty).on = newValue; - //} else { - // (prop.property.node as SFN_SwitchProperty).on = newValue; - ////} - if(isToggle){ - prop.property.node.texture.dataUniform = Color.white * (newValue ? 1f : 0f); - } else { - //prop.property.node.texture.UpdateColorPreview("",true); - } - prop.property.node.OnUpdateNode(NodeUpdateType.Soft); - } - ps.EndIgnoreChangeCheck(); - - } - - - - - - if( r.Contains( Event.current.mousePosition ) && SF_GUI.PressedLMB() && !dragging && multiple) { - dragStartOffsetY = r.y - Event.current.mousePosition.y; - draggingProperty = prop; - dragStartIndex = i; - startMouseY = Event.current.mousePosition.y; - editor.Defocus(); - } - if(multiple) - SF_GUI.AssignCursor( r, MouseCursor.Pan ); - - - - - - - - - if( draggingThis ) - r.x += 5; - - //GUI.Label( r, "prop.property.nameType = " + prop.property.nameType ); - - r.y += propertyHeight; - i++; - } - - - - r.y = yStart + propCount * propertyHeight; - r.height = 20; - - r.y += prevYpos; - - return r.yMax; - } - - - - - - } -} \ No newline at end of file diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/SFPSC_Properties.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/SFPSC_Properties.cs.meta deleted file mode 100644 index 26a6981b..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/SFPSC_Properties.cs.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: d4bb19d25405c413ea8307d77806a00b -MonoImporter: - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/SFPS_Category.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/SFPS_Category.cs deleted file mode 100644 index d0ce25c4..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/SFPS_Category.cs +++ /dev/null @@ -1,347 +0,0 @@ -using UnityEngine; -using UnityEditor; -using System.Collections; -using System; - -namespace ShaderForge { - - - [System.Serializable] - public class SFPS_Category : ScriptableObject { - - public SF_Editor editor; - public SF_PassSettings ps; - - public string labelExpanded; - public string labelContracted; - - public bool expanded = false; - - public float targetHeight = 0f; - public float smoothHeight = 0f; - - - public void OnEnable() { - base.hideFlags = HideFlags.HideAndDontSave; - } - - - public SFPS_Category Initialize( SF_Editor editor, SF_PassSettings ps, string label ) { - this.editor = editor; - this.ps = ps; - this.labelExpanded = label; - this.labelContracted = label + "..."; - return PostInitialize(); - } - - public virtual SFPS_Category PostInitialize(){ - return this; // Override - } - - public virtual string Serialize(){ - return ""; - } - - protected string Serialize( string key, string value, bool last = false ) { - return key + ":" + value + (last ? "" : ","); - } - - public virtual void Deserialize(string key, string value){ - } - - public virtual void ToggleExpansion(){ - - } - - public virtual void PreDraw(Rect r){ - - } - - - public int Draw(float yOffset){ - - if(Event.current.type == EventType.Repaint){ - if(Mathf.Abs(smoothHeight-targetHeight) > 0.1f) - smoothHeight = Mathf.Lerp(smoothHeight,targetHeight,0.5f); - else - smoothHeight = targetHeight; - } - - Rect topRect = new Rect( 0f, yOffset, ps.maxWidth, 20 ); - Rect r = new Rect( topRect ); - - PreDraw(r); - - if( !StartExpanderChangeCheck( r, ref expanded, labelContracted, labelExpanded ) ) { - //ps.guiChanged = EndExpanderChangeCheck(); - //GUI.color = Color.white; - targetHeight = 0f; - //return (int)(topRect.yMax+smoothHeight); - } - Rect gRect = r; - gRect.height = smoothHeight + 20; - GUI.BeginGroup(gRect); - yOffset = DrawInner(ref r ); - GUI.EndGroup(); - if(expanded) - targetHeight = yOffset-topRect.yMax; - if( EndExpanderChangeCheck() ) - ps.guiChanged = true; - - GUI.color = Color.white; - return (int)(topRect.yMax+smoothHeight); - } - - public virtual float DrawInner(ref Rect r){ - - return 0f; - } - - public string GetLabelString() { - return expanded ? labelExpanded : labelContracted; - } - - public virtual void DrawExtraTitleContent( Rect r ) { - // Override. Currently only used by Console - } - - - - public bool StartExpanderChangeCheck(Rect r, ref bool foldVar, string labelContracted, string labelExpanded ) { - - // TOOD: COLOR RECT BEHIND - Color prev = GUI.color; - GUI.color = new Color(0,0,0,0); - if( GUI.Button( r, string.Empty , EditorStyles.foldout ) ){ - Event.current.Use(); - Undo.RecordObject(this, foldVar ? "collapse " + labelExpanded : "expand " + labelExpanded); - foldVar = !foldVar; - } - GUI.color = prev; - //EditorGUI.Foldout( r, foldVar, foldVar ? smoothHeight + " " + labelExpanded : smoothHeight + " " + labelContracted ); - EditorGUI.Foldout( r, foldVar, GetLabelString() ); - DrawExtraTitleContent( r ); - - EditorGUI.BeginChangeCheck(); - if( !foldVar ) - return false; - return true; - } - - public bool EndExpanderChangeCheck() { - return EditorGUI.EndChangeCheck(); - } - - - public void CheckboxEnableLine(ref bool b, ref Rect r){ - Rect rCopy = r; - rCopy.width = r.height; - b = GUI.Toggle(rCopy,b,string.Empty); - GUI.enabled = b; - r.xMin += 20; - } - - public void CheckboxEnableLineEnd(ref Rect r){ - r.y += 20; - r.xMin -= 20; - GUI.enabled = true; - } - - - - - - - - - - - - - - - - public int UndoableContentScaledToolbar(Rect r, string label, int selected, string[] labels, string undoInfix){ - int newValue = SF_GUI.ContentScaledToolbar( r, label, selected, labels ); - if(newValue != selected){ - string undoName = "set " + undoInfix + " to " + labels[newValue]; - Undo.RecordObject(this,undoName); - return newValue; - } - return selected; - } - - - public void UndoableConditionalToggle(Rect r, ref bool value, bool usableIf, bool disabledDisplayValue, string label, string undoSuffix){ - bool nextValue = value; - SF_GUI.ConditionalToggle(r,ref nextValue, usableIf,disabledDisplayValue,label); - if(nextValue != value){ - string undoName = (nextValue ? "enable" : "disable") + " " + undoSuffix; - Undo.RecordObject(this,undoName); - value = nextValue; - } - } - - - public bool UndoableToggle(Rect r, bool boolVar, string label, string undoActionName, GUIStyle style = null){ - if(style == null) - style = EditorStyles.toggle; - bool newValue = GUI.Toggle(r, boolVar, label, style); - if(newValue != boolVar){ - string undoName = (newValue ? "enable" : "disable") + " " + undoActionName; - Undo.RecordObject(this,undoName); - return newValue; - } - return boolVar; - } - - public bool UndoableToggle(Rect r, bool boolVar, string undoActionName, GUIStyle style = null){ - if(style == null) - style = EditorStyles.toggle; - bool newValue = GUI.Toggle(r, boolVar, new GUIContent("")); - if(newValue != boolVar){ - string undoName = (newValue ? "enable" : "disable") + " " + undoActionName; - Undo.RecordObject(this,undoName); - return newValue; - } - return boolVar; - } - - - public Enum UndoableEnumPopup(Rect r, Enum enumValue, string undoInfix){ - Enum nextEnum = EditorGUI.EnumPopup( r, enumValue ); - - if(nextEnum.ToString() != enumValue.ToString()){ - string undoName = "set " + undoInfix + " to " + nextEnum; - Undo.RecordObject(this,undoName); - enumValue = nextEnum; - } - return enumValue; - } - - - public Enum UndoableLabeledEnumPopup(Rect r, string label, Enum enumValue, string undoInfix){ - Enum nextEnum = SF_GUI.LabeledEnumField( r, label, enumValue, EditorStyles.miniLabel ); - if(nextEnum.ToString() != enumValue.ToString()){ - string undoName = "set " + undoInfix + " to " + nextEnum; - Undo.RecordObject(this,undoName); - enumValue = nextEnum; - } - return enumValue; - } - - - public int UndoableEnumPopupNamed(Rect r, Enum enumValue, string[] displayedOptions, string undoInfix){ - int nextEnum = EditorGUI.Popup( r, (int)((object)enumValue), displayedOptions); - if(nextEnum != ((int)((object)enumValue))){ - string undoName = "set " + undoInfix + " to " + displayedOptions[nextEnum]; - Undo.RecordObject(this,undoName); - return nextEnum; - } - return (int)((object)enumValue); - } - - public int UndoableLabeledEnumPopupNamed(Rect r, string label, Enum enumValue, string[] displayedOptions, string undoInfix){ - int nextEnum = SF_GUI.LabeledEnumFieldNamed( r, displayedOptions, new GUIContent(label), (int)((object)enumValue), EditorStyles.miniLabel); - if(nextEnum != ((int)((object)enumValue))){ - string undoName = "set " + undoInfix + " to " + displayedOptions[nextEnum]; - Undo.RecordObject(this,undoName); - return nextEnum; - } - return (int)((object)enumValue); - } - - - //UndoablePopup - - public float UndoableFloatField(Rect r, float value, string undoInfix, GUIStyle style = null){ - if(style == null) - style = EditorStyles.textField; - float newValue = EditorGUI.FloatField( r, value, style ); - if(newValue != value){ - string undoName = "set " + undoInfix + " to " + newValue; - Undo.RecordObject(this,undoName); - return newValue; - } - return value; - } - - public int UndoableIntField(Rect r, int value, string undoInfix, GUIStyle style = null){ - if(style == null) - style = EditorStyles.textField; - int newValue = EditorGUI.IntField( r, value, style ); - if(newValue != value){ - string undoName = "set " + undoInfix + " to " + newValue; - Undo.RecordObject(this,undoName); - return newValue; - } - return value; - } - - - - - public string UndoableTextField(Rect r, string value, string undoInfix, GUIStyle style = null){ - if(style == null) - style = EditorStyles.textField; - string newValue = EditorGUI.TextField( r, value, style ); - if(newValue != value){ - string undoName = "change " + undoInfix + " to " + newValue; - Undo.RecordObject(this,undoName); - return newValue; - } - return value; - } - - - public string UndoableTextField(Rect r, string value, string undoInfix, GUIStyle style = null, UnityEngine.Object extra = null, bool showContent = true){ - if(style == null) - style = EditorStyles.textField; - string newValue = EditorGUI.TextField( r, value, style ); - if(newValue != value){ - string undoName = "change " + undoInfix; - if(showContent) - undoName += " to " + newValue; - Undo.RecordObject(this, undoName); - if(extra != null) - Undo.RecordObject(extra, undoName); - return newValue; - } - return value; - } - - - public void UndoableEnterableNodeTextField(SF_Node node, Rect r, ref string value, string undoMsg, bool update = true, UnityEngine.Object extra = null){ - string nextValue = value; - SF_GUI.EnterableTextField(node, r, ref nextValue, EditorStyles.textField, update ); - if(nextValue != value){ - Undo.RecordObject(this, undoMsg ); - if(extra != null) - Undo.RecordObject(extra, undoMsg); - value = nextValue; - } - } - - - - - - - - - - - - - - - - - - - - - - - } -} \ No newline at end of file diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/SFPS_Category.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/SFPS_Category.cs.meta deleted file mode 100644 index 21bd72b3..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/SFPS_Category.cs.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: 3cc113fa7d2a64fe09c009b1f5f47983 -MonoImporter: - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/SF_Dependencies.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/SF_Dependencies.cs deleted file mode 100755 index ceedc837..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/SF_Dependencies.cs +++ /dev/null @@ -1,306 +0,0 @@ -using UnityEngine; -using System.Collections; -using System.Collections.Generic; - - -namespace ShaderForge { - - - - - - public class SF_Dependencies { - - private int vert_out_texcoordNumber = 0; - - public bool uv0 = false; - public bool uv0_frag = false; - public bool uv1 = false; - public bool uv1_frag = false; - public bool uv2 = false; - public bool uv2_frag = false; - public bool uv3 = false; - public bool uv3_frag = false; - public bool uv0_float4 = false; - public bool uv1_float4 = false; - public bool uv2_float4 = false; - public bool uv3_float4 = false; - - public bool vertexColor = false; - public bool lightColor = false; - public bool time = false; - public bool grabPass = false; - public bool scene_uvs = false; - public bool tessellation = false; - public bool displacement = false; - - public bool frag_facing = false; - - public bool vert_out_worldPos = false; - public bool vert_out_screenPos = false; - public bool vert_out_normals = false; - public bool vert_out_tangents = false; - public bool vert_out_bitangents = false; - public bool vert_in_normals = false; - public bool vert_in_tangents = false; - public bool vert_in_vertexColor = false; - public bool vert_out_vertexColor = false; - public bool frag_viewReflection = false; - public bool frag_viewDirection = false; - public bool frag_normalDirection = false; - public bool frag_lightDirection = false; - public bool frag_lightColor = false; - public bool frag_halfDirection = false; - public bool frag_attenuation = false; - public bool frag_tangentTransform = false; - public bool frag_screenPos = false; - public bool frag_pixelDepth = false; - public bool vert_screenPos = false; - - public bool reflection_probes = false; - public bool fog_color = false; - - - public bool vert_viewReflection = false; - public bool vert_viewDirection = false; - public bool vert_normalDirection = false; - public bool vert_lightDirection = false; - public bool vert_halfDirection = false; - public bool vert_tangentTransform = false; - - public bool frag_objectPos = false; - public bool vert_objectPos = false; - - public bool objectScale = false; - public bool objectScaleReciprocal = false; - - public bool frag_sceneDepth = false; - public bool depthTexture = false; - //public bool frag_pixelDepth = false; - - public bool frag_projPos = false; - - - public bool const_pi = false; - public bool const_tau = false; - public bool const_root2 = false; - public bool const_e = false; - public bool const_phi = false; - - public bool pragmaGlsl = false; - - - int shaderTarget = 3; // Shader target: #pragma target 3.0 - public List includeRenderers; - - public SF_Dependencies(SF_PassSettings ps) { - includeRenderers = new List(); - for( int i = 0; i < ps.catMeta.usedRenderers.Length; i++ ) { - if( ps.catMeta.usedRenderers[i] ) { - includeRenderers.Add( (RenderPlatform)i ); - } - } - - - - //excludeRenderers.Add( RenderPlatform.flash ); - //excludeRenderers.Add( RenderPlatform.gles ); - //excludeRenderers.Add( RenderPlatform.xbox360 ); - //excludeRenderers.Add( RenderPlatform.ps3 ); - } - - public void NeedSceneAndFragDepth(){ - frag_pixelDepth = true; - NeedSceneDepth(); - } - - public void NeedSceneDepth(){ - frag_projPos = true; - frag_sceneDepth = true; - depthTexture = true; - } - - public void IncrementTexCoord( int num ) { - vert_out_texcoordNumber += num; - } - - public bool UsesLightNodes() { - return frag_attenuation || frag_lightDirection || frag_halfDirection || lightColor; - } - - public void NeedFragVertexColor() { - vert_in_vertexColor = true; - vert_out_vertexColor = true; - } - - public void NeedFragObjPos() { - frag_objectPos = true; - } - public void NeedVertObjPos(){ - vert_objectPos = true; - } - - public void NeedVertScreenPos() { - vert_screenPos = true; - } - - public void NeedLightColor() { - lightColor = true; - frag_lightColor = true; - } - - public void NeedFragAttenuation(){ - frag_attenuation = true; - } - - public void NeedRefraction() { - NeedGrabPass(); - NeedSceneUVs(); - } - - public void NeedSceneUVs(){ - frag_projPos = true; - scene_uvs = true; - } - - public void NeedFragPixelDepth(){ - NeedFragWorldPos(); - frag_projPos = true; - frag_pixelDepth = true; - } - - public void NeedGrabPass() { - NeedSceneUVs(); // TODO: Really? - grabPass = true; - } - - public void NeedTessellation(){ - shaderTarget = Mathf.Max( shaderTarget, 5); - vert_in_tangents = true; - vert_in_normals = true; - tessellation = true; - } - - - public void NeedDisplacement() { - displacement = true; - } - - public void NeedFragWorldPos() { - vert_out_worldPos = true; - } - public void NeedVertWorldPos() { - vert_out_worldPos = true; // TODO ? - } - - public void NeedFragHalfDir() { - frag_halfDirection = true; - NeedFragLightDir(); - NeedFragViewDirection(); - } - public void NeedVertHalfDir() { - vert_halfDirection = true; - NeedVertLightDir(); - NeedVertViewDirection(); - } - - public void NeedFragLightDir() { - frag_lightDirection = true; - NeedFragWorldPos(); - } - public void NeedVertLightDir() { - vert_lightDirection = true; - NeedVertWorldPos(); - } - - public void NeedFragViewDirection() { - frag_viewDirection = true; - NeedFragWorldPos(); - } - public void NeedVertViewDirection() { - vert_viewDirection = true; - NeedVertWorldPos(); - } - - - - - public void NeedFragViewReflection() { - NeedFragViewDirection(); - NeedFragNormals(); - frag_viewReflection = true; - } - - public void NeedFragNormals() { - vert_in_normals = true; - vert_out_normals = true; - frag_normalDirection = true; - } - - public void NeedFragTangents() { - vert_in_tangents = true; - vert_out_tangents = true; - } - public void NeedFragBitangents() { - vert_in_normals = true; - vert_out_normals = true; - vert_in_tangents = true; - vert_out_tangents = true; - vert_out_bitangents = true; - } - - public void NeedFragTangentTransform() { - frag_tangentTransform = true; - frag_normalDirection = true; - vert_in_normals = true; - vert_out_normals = true; - vert_in_tangents = true; - vert_out_tangents = true; - vert_out_bitangents = true; - } - - - - public void IncludeRenderPlatform( RenderPlatform plat ) { - if( includeRenderers.Contains( plat ) == false ) { - includeRenderers.Add( plat ); - } - } - - public bool DoesIncludePlatforms() { - return includeRenderers.Count > 0; - } - - public bool IsTargetingAboveDefault() { - return ( shaderTarget > 2 ); - } - - public string GetIncludedPlatforms() { - string s = ""; - foreach( RenderPlatform plat in includeRenderers ) - s += plat.ToString() + " "; - //Debug.Log("Exclude Str: " + s); - return s; - } - - public void SetMinimumShaderTarget( int x ) { - if( x > shaderTarget ) - shaderTarget = x; - } - public string GetShaderTarget() { - return ( shaderTarget + ".0" ); - } - - public string GetVertOutTexcoord() { - string s = vert_out_texcoordNumber.ToString(); - vert_out_texcoordNumber++; - return s; - } - - public void ResetTexcoordNumbers() { - //vert_in_texcoordNumber = 0; - vert_out_texcoordNumber = 0; - } - - } -} \ No newline at end of file diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/SF_Dependencies.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/SF_Dependencies.cs.meta deleted file mode 100755 index ee2a43c7..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/SF_Dependencies.cs.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: 318a4bbf6b13c47e1ac8085a2ebc9850 -MonoImporter: - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/SF_Editor.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/SF_Editor.cs deleted file mode 100755 index 0c30384f..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/SF_Editor.cs +++ /dev/null @@ -1,2179 +0,0 @@ -using UnityEngine; -using UnityEditor; -using System; -using System.Collections.Generic; -using System.IO; -using System.Linq; -using System.Xml; -using System.Reflection; -using System.Net; -using System.Collections; - - - - -namespace ShaderForge { - - - public delegate T Func(); - - public enum UpToDateState{UpToDate, OutdatedSoft, OutdatedHard}; - - [Serializable] - public class SF_Editor : EditorWindow { - [SerializeField] - public SF_Evaluator shaderEvaluator; - [SerializeField] - public SF_PreviewWindow preview; - [SerializeField] - public SF_EditorNodeView nodeView; - [SerializeField] - public SF_EditorNodeBrowser nodeBrowser; - [SerializeField] - public SF_PassSettings ps; // TODO: Move - - [System.NonSerialized] - public static SF_Editor instance; - [SerializeField] - public SFN_Final mainNode; - [SerializeField] - public SF_StatusBox statusBox; - - [SerializeField] - public List nodes; - - [SerializeField] - DateTime startTime = DateTime.UtcNow; - - [SerializeField] - GUIStyle windowStyle; - [SerializeField] - GUIStyle titleStyle; - [SerializeField] - GUIStyle versionStyle; - [SerializeField] - GUIStyle nodeScrollbarStyle; - - [SerializeField] - public SF_DraggableSeparator separatorLeft; - - [SerializeField] - public SF_DraggableSeparator separatorRight; - - public Vector2 mousePosition = Vector2.zero; - - [SerializeField] - public Shader currentShaderAsset; - [SerializeField] - public string currentShaderPath; - - [SerializeField] - public List nodeTemplates; - - [SerializeField] - private UpToDateState shaderOutdated = UpToDateState.UpToDate; - public UpToDateState ShaderOutdated{ - get{ - return shaderOutdated; - } - set{ - if(shaderOutdated != value){ - //Debug.Log("Changed outdated state to " + value); - shaderOutdated = value; - } - } - } - - [NonSerialized] - public bool initialized = false; - - - - - public SF_Editor() { - if(SF_Debug.window) - Debug.Log( "[SF_LOG] - SF_Editor CONSTRUCTOR SF_Editor()" ); - SF_Editor.instance = this; - } - - [MenuItem( "Window/Shader Forge" )] - static void InitEmpty() { - if( SF_Editor.instance == null ) - Init( null ); - else { - EditorWindow.GetWindow( typeof( SF_Editor ) ); // Focus - } - } - - void OnEnable() { - SF_Settings.LoadAllFromDisk(); - titleContent = new GUIContent( "Shader Forge", (Texture)SF_GUI.Icon ); - if( this.preview != null ) - preview.OnEnable(); - } - - void OnDisable(){ - - if(shaderOutdated != UpToDateState.UpToDate){ - - fullscreenMessage = "Saving..."; - Repaint(); - shaderEvaluator.Evaluate(); - } - - if( this.preview != null ) - preview.OnDisable(); - - SF_Settings.SaveAllToDisk(); - - } - - - void OnDestroy(){ - DestroyImmediate( preview.internalMaterial ); - } - - public static bool Init( Shader initShader = null ) { - - // To make sure you get periods as decimal separators - System.Threading.Thread.CurrentThread.CurrentCulture = System.Globalization.CultureInfo.CreateSpecificCulture("en-US"); - - if(SF_Debug.evalFlow || SF_Debug.dynamicNodeLoad) - Debug.Log( "[SF_LOG] - SF_Editor Init(" + initShader + ")" ); - SF_Editor materialEditor = (SF_Editor)EditorWindow.GetWindow( typeof( SF_Editor ) ); - SF_Editor.instance = materialEditor; - updateCheck = ""; - bool loaded = materialEditor.InitializeInstance( initShader ); - if( !loaded ) - return false; - return true; - } - - public int GetUniqueNodeID() { - - int[] occupiedIDs = nodes.Select( x => x.id ).ToArray(); - int id = -1; - int limit = 1000000; - - do { - id = UnityEngine.Random.Range(1,9999); - limit--; - } while( occupiedIDs.Contains( id ) && limit > 0 ); - - if( limit <= 0 ) - Debug.LogError("Ran out of attempts to find a unique node ID"); - - return id; - } - - - - - - public void InitializeNodeTemplates() { - nodeTemplates = new List(); - - - // AddTemplate( typeof( SFN_CommentBox ), "Comment Box" ); - - string catArithmetic = "Arithmetic/"; - AddTemplate( typeof( SFN_Abs ), catArithmetic + "Abs" ); - AddTemplate( typeof( SFN_Add ), catArithmetic + "Add", KeyCode.A ); - AddTemplate( typeof( SFN_Blend ), catArithmetic + "Blend", KeyCode.B ); - AddTemplate( typeof( SFN_Ceil ), catArithmetic + "Ceil" ); - AddTemplate( typeof( SFN_Clamp ), catArithmetic + "Clamp" ); - AddTemplate( typeof( SFN_Clamp01 ), catArithmetic + "Clamp 0-1" ); - AddTemplate( typeof( SFN_ConstantClamp ), catArithmetic + "Clamp (Simple)",KeyCode.None, "Clamp Simple" ); - AddTemplate( typeof( SFN_Divide ), catArithmetic + "Divide", KeyCode.D ); - AddTemplate( typeof( SFN_Exp ), catArithmetic + "Exp" ); - AddTemplate( typeof( SFN_Floor ), catArithmetic + "Floor" ); - AddTemplate( typeof( SFN_Fmod ), catArithmetic + "Fmod" ); - AddTemplate( typeof( SFN_Frac ), catArithmetic + "Frac" ); - AddTemplate( typeof( SFN_HsvToRgb ), catArithmetic + "HSV to RGB" ); - AddTemplate( typeof( SFN_Hue ), catArithmetic + "Hue" ); - AddTemplate( typeof( SFN_If ), catArithmetic + "If", KeyCode.I ); - AddTemplate( typeof( SFN_InverseLerp ), catArithmetic + "Inverse Lerp" ); - AddTemplate( typeof( SFN_Lerp ), catArithmetic + "Lerp", KeyCode.L ); - AddTemplate( typeof( SFN_ConstantLerp ), catArithmetic + "Lerp (Simple)", KeyCode.None, "Lerp Simple" ); - AddTemplate( typeof( SFN_Log ), catArithmetic + "Log" ); - AddTemplate( typeof( SFN_Max ), catArithmetic + "Max" ); - AddTemplate( typeof( SFN_Min ), catArithmetic + "Min" ); - AddTemplate( typeof( SFN_Multiply ), catArithmetic + "Multiply", KeyCode.M ); - AddTemplate( typeof( SFN_MultiplyMatrix ), catArithmetic + "Multiply Matrix" ); - AddTemplate( typeof( SFN_Negate ), catArithmetic + "Negate" ); - AddTemplate( typeof( SFN_Noise ), catArithmetic + "Noise" ); - AddTemplate( typeof( SFN_OneMinus ), catArithmetic + "One Minus", KeyCode.O ); - AddTemplate( typeof( SFN_Posterize ), catArithmetic + "Posterize" ); - AddTemplate( typeof( SFN_Power ), catArithmetic + "Power", KeyCode.E ); - AddTemplate( typeof( SFN_Reciprocal ), catArithmetic + "Reciprocal" ); - AddTemplate( typeof( SFN_RemapRangeAdvanced),catArithmetic+ "Remap" ); - AddTemplate( typeof( SFN_RemapRange ), catArithmetic + "Remap (Simple)", KeyCode.R, "Remap Simple" ); - AddTemplate( typeof( SFN_RgbToHsv ), catArithmetic + "RGB to HSV" ); - AddTemplate( typeof( SFN_Round ), catArithmetic + "Round" ); - AddTemplate( typeof( SFN_Sign ), catArithmetic + "Sign" ); - AddTemplate( typeof( SFN_Smoothstep ), catArithmetic + "Smoothstep" ).MarkAsNewNode(); - AddTemplate( typeof( SFN_Sqrt ), catArithmetic + "Sqrt" ); - AddTemplate( typeof( SFN_Step ), catArithmetic + "Step (A <= B)", KeyCode.None, "Step" ); - AddTemplate( typeof( SFN_Subtract ), catArithmetic + "Subtract", KeyCode.S ); - AddTemplate( typeof( SFN_Trunc ), catArithmetic + "Trunc" ); - - string catConstVecs = "Constant Vectors/"; - AddTemplate( typeof( SFN_Vector1 ), catConstVecs + "Value", KeyCode.Alpha1 ); - AddTemplate( typeof( SFN_Vector2 ), catConstVecs + "Vector 2", KeyCode.Alpha2 ); - AddTemplate( typeof( SFN_Vector3 ), catConstVecs + "Vector 3", KeyCode.Alpha3 ); - AddTemplate( typeof( SFN_Vector4 ), catConstVecs + "Vector 4", KeyCode.Alpha4 ); - AddTemplate( typeof( SFN_Matrix4x4 ), catConstVecs + "Matrix 4x4" ); - - string catProps = "Properties/"; - AddTemplate( typeof( SFN_Color ), catProps + "Color" ); - AddTemplate( typeof( SFN_Cubemap ), catProps + "Cubemap" ); - AddTemplate( typeof( SFN_Matrix4x4Property ), catProps + "Matrix 4x4" ); - AddTemplate( typeof( SFN_Slider ), catProps + "Slider" ); - AddTemplate( typeof( SFN_SwitchProperty ), catProps + "Switch" ); - AddTemplate( typeof( SFN_Tex2d ), catProps + "Texture 2D", KeyCode.T ); - AddTemplate( typeof( SFN_Tex2dAsset ), catProps + "Texture Asset" ); - AddTemplate( typeof( SFN_ToggleProperty ), catProps + "Toggle" ); - AddTemplate( typeof( SFN_ValueProperty ), catProps + "Value" ); - AddTemplate( typeof( SFN_Vector4Property ), catProps + "Vector 4" ); - - //string catBranching = "Branching/"; - //AddTemplate( typeof( SFN_StaticBranch ), catBranching + "Static Branch" ); - - string catVecOps = "Vector Operations/"; - AddTemplate( typeof( SFN_Append ), catVecOps + "Append", KeyCode.Q ); - AddTemplate( typeof( SFN_ChannelBlend ), catVecOps + "Channel Blend"); - AddTemplate( typeof( SFN_ComponentMask ), catVecOps + "Component Mask", KeyCode.C ); - AddTemplate( typeof( SFN_Cross ), catVecOps + "Cross Product" ); - AddTemplate( typeof( SFN_Desaturate ), catVecOps + "Desaturate" ); - AddTemplate( typeof( SFN_DDX ), catVecOps + "DDX" ); - AddTemplate( typeof( SFN_DDXY ), catVecOps + "DDXY" ).MarkAsNewNode(); - AddTemplate( typeof( SFN_DDY ), catVecOps + "DDY" ); - AddTemplate( typeof( SFN_Distance ), catVecOps + "Distance" ); - AddTemplate( typeof( SFN_Dot ), catVecOps + "Dot Product" ); - AddTemplate( typeof( SFN_Length ), catVecOps + "Length" ); - AddTemplate( typeof( SFN_Normalize ), catVecOps + "Normalize", KeyCode.N ); - AddTemplate( typeof( SFN_NormalBlend ), catVecOps + "Normal Blend" ); - AddTemplate( typeof( SFN_Reflect ), catVecOps + "Reflect" ); - AddTemplate( typeof( SFN_Transform ), catVecOps + "Transform" ); - AddTemplate( typeof( SFN_Transpose ), catVecOps + "Transpose" ); - AddTemplate( typeof( SFN_VectorProjection ),catVecOps + "Vector Projection" ); - AddTemplate( typeof( SFN_VectorRejection ), catVecOps + "Vector Rejection" ); - - - string catUvOps = "UV Operations/"; - AddTemplate( typeof( SFN_Panner ), catUvOps + "Panner", KeyCode.P ); - AddTemplate( typeof( SFN_Parallax ), catUvOps + "Parallax" ); - AddTemplate( typeof( SFN_Rotator ), catUvOps + "Rotator" ); - AddTemplate( typeof( SFN_UVTile ), catUvOps + "UV Tile" ); - - string catGeoData = "Geometry Data/"; - AddTemplate( typeof( SFN_Bitangent ), catGeoData + "Bitangent Dir."); - AddTemplate( typeof( SFN_Depth ), catGeoData + "Depth"); - AddTemplate( typeof( SFN_FaceSign ), catGeoData + "Face Sign" ); - AddTemplate( typeof( SFN_Fresnel ), catGeoData + "Fresnel", KeyCode.F ); - AddTemplate( typeof( SFN_NormalVector ), catGeoData + "Normal Dir." ); - AddTemplate( typeof( SFN_ObjectPosition ), catGeoData + "Object Position"); - AddTemplate( typeof( SFN_ObjectScale ), catGeoData + "Object Scale" ); - AddTemplate( typeof( SFN_ScreenPos ), catGeoData + "Screen Position" ); - AddTemplate( typeof( SFN_Tangent ), catGeoData + "Tangent Dir." ); - AddTemplate( typeof( SFN_TexCoord ), catGeoData + "UV Coordinates", KeyCode.U ); - AddTemplate( typeof( SFN_VertexColor ), catGeoData + "Vertex Color", KeyCode.V ); - AddTemplate( typeof( SFN_ViewVector ), catGeoData + "View Dir." ); - AddTemplate( typeof( SFN_ViewReflectionVector ), catGeoData + "View Refl. Dir.", KeyCode.None, "View Reflection" ); - AddTemplate( typeof( SFN_FragmentPosition ), catGeoData + "World Position", KeyCode.W ); - - string catLighting = "Lighting/"; - AddTemplate( typeof( SFN_AmbientLight ), catLighting + "Ambient Light" ); - AddTemplate( typeof( SFN_HalfVector ), catLighting + "Half Direction", KeyCode.H ).UavailableInDeferredPrePass(); - AddTemplate( typeof( SFN_LightAttenuation ), catLighting + "Light Attenuation" ).UavailableInDeferredPrePass(); - AddTemplate( typeof( SFN_LightColor ), catLighting + "Light Color" ).UavailableInDeferredPrePass(); - AddTemplate( typeof( SFN_LightVector ), catLighting + "Light Direction" ).UavailableInDeferredPrePass(); - AddTemplate( typeof( SFN_LightPosition ), catLighting + "Light Position" ).UavailableInDeferredPrePass(); - - string catExtData = "External Data/"; - AddTemplate( typeof( SFN_PixelSize ), catExtData + "Pixel Size" ); - AddTemplate( typeof( SFN_ProjectionParameters ), catExtData + "Projection Parameters" ); - AddTemplate( typeof( SFN_ScreenParameters ), catExtData + "Screen Parameters" ); - AddTemplate( typeof( SFN_Time ), catExtData + "Time" ); - AddTemplate( typeof( SFN_ViewPosition ), catExtData + "View Position" ); - - string catSceneData = "Scene Data/"; - AddTemplate( typeof(SFN_DepthBlend), catSceneData + "Depth Blend" ); - AddTemplate( typeof( SFN_FogColor ), catSceneData + "Fog Color" ); - AddTemplate( typeof(SFN_SceneColor), catSceneData + "Scene Color" ); - AddTemplate( typeof(SFN_SceneDepth), catSceneData + "Scene Depth" ); - - string catMathConst = "Math Constants/"; - AddTemplate( typeof( SFN_E ), catMathConst + "e", KeyCode.None, "EulersConstant" ); - AddTemplate( typeof( SFN_Phi ), catMathConst + "Phi" ); - AddTemplate( typeof( SFN_Pi ), catMathConst + "Pi" ); - AddTemplate( typeof( SFN_Root2 ), catMathConst + "Root 2" ); - AddTemplate( typeof( SFN_Tau ), catMathConst + "Tau (2 Pi)", KeyCode.None, "Tau" ); - - string catTrig = "Trigonometry/"; - AddTemplate( typeof( SFN_ArcCos ), catTrig + "ArcCos" ); - AddTemplate( typeof( SFN_ArcSin ), catTrig + "ArcSin" ); - AddTemplate( typeof( SFN_ArcTan ), catTrig + "ArcTan" ); - AddTemplate( typeof( SFN_ArcTan2 ), catTrig + "ArcTan2" ); - AddTemplate( typeof( SFN_Cos ), catTrig + "Cos" ); - AddTemplate( typeof( SFN_Sin ), catTrig + "Sin" ); - AddTemplate( typeof( SFN_Tan ), catTrig + "Tan" ); - - string catCode = "Code/"; - AddTemplate( typeof( SFN_Code ), catCode + "Code" ); - - string catUtility = "Utility/"; - AddTemplate( typeof( SFN_Relay ), catUtility + "Relay" ); - AddTemplate( typeof( SFN_Get ), catUtility + "Get", KeyCode.G ).MarkAsNewNode(); - AddTemplate( typeof( SFN_Set ), catUtility + "Set" ).MarkAsNewNode(); - - - - SF_EditorNodeData ssDiff = TryAddTemplateDynamic( "SFN_SkyshopDiff", "Skyshop/" + "Skyshop Diffuse" ); - if(ssDiff != null) - ssDiff.MarkAsNewNode(); - - SF_EditorNodeData ssSpec = TryAddTemplateDynamic( "SFN_SkyshopSpec", "Skyshop/" + "Skyshop Specular" ); - if( ssSpec != null ) - ssSpec.MarkAsNewNode(); - - - - - } - - - public static bool NodeExistsAndIs(SF_Node node, string nodeName){ - if(NodeExists(nodeName)) - if(node.GetType() == GetNodeType(nodeName)) - return true; - return false; - } - - public static bool NodeExists(string nodeName){ - return GetNodeType(nodeName) != null; - } - - - static Assembly editorAssembly; - public static Assembly EditorAssembly { - get { - if( editorAssembly == null ) { - - Assembly[] assemblies = AppDomain.CurrentDomain.GetAssemblies(); - - foreach( Assembly assembly in assemblies ) { - if( assembly.FullName.Split( ',' )[0].Trim() == "Assembly-CSharp-Editor" ) { - editorAssembly = assembly; - return editorAssembly; - } - } - //if( SF_Debug.dynamicNodeLoad ) - // Debug.LogError("Unable to find the editor assembly" ); - } - return editorAssembly; - } - } - - - public static Type GetNodeType(string nodeName){ - - Assembly asm = EditorAssembly; - if( asm == null ) - return null; - string fullNodeName = nodeName; - if(!nodeName.StartsWith("ShaderForge.")) - fullNodeName = "ShaderForge." + nodeName; - if( SF_Debug.dynamicNodeLoad ) - Debug.Log( "Trying to dynamically load [" + fullNodeName + "]" + " in assembly [" + asm.FullName + "]" ); - - return asm.GetType( fullNodeName ); - } - - public SF_EditorNodeData TryAddTemplateDynamic(string type, string label, KeyCode keyCode = KeyCode.None, string searchName = null ){ - - Type dynType = GetNodeType(type); - - if(dynType != null){ - if(SF_Debug.dynamicNodeLoad) - Debug.Log( "TryAddTemplateDynamic of " + type ); - return AddTemplate( dynType, label, keyCode, searchName ); - } - if( SF_Debug.dynamicNodeLoad ) - Debug.Log( "TryAddTemplateDynamic of " + type + " was null" ); - return null; - } - - public SF_EditorNodeData AddTemplate( Type type, string label, KeyCode keyCode = KeyCode.None, string searchName = null ) { - SF_EditorNodeData item = ScriptableObject.CreateInstance().Initialize( type.FullName, label, keyCode ); - - if(!string.IsNullOrEmpty(searchName)){ - item.SearchName = searchName; - } - - this.nodeTemplates.Add( item ); - return item; - } - - - - public SF_EditorNodeData GetTemplate() { - foreach( SF_EditorNodeData sft in nodeTemplates ) { - if( sft.type == typeof(T).FullName ) - return sft; - } - return null; - } - - public SF_EditorNodeData GetTemplate( string typeName ) { - foreach( SF_EditorNodeData sft in nodeTemplates ) { - if( sft.type == typeName ) - return sft; - } - return null; - } - - - public void OnShaderModified(NodeUpdateType updType) { - //Debug.Log("OnShaderModified: " + updType.ToString() ); - if( updType == NodeUpdateType.Hard && nodeView.treeStatus.CheckCanCompile() ){ - nodeView.lastChangeTime = (float)EditorApplication.timeSinceStartup; - ShaderOutdated = UpToDateState.OutdatedHard; - } - if(updType == NodeUpdateType.Soft && ShaderOutdated == UpToDateState.UpToDate) - ShaderOutdated = UpToDateState.OutdatedSoft; - - ps.fChecker.UpdateAvailability(); - ps.UpdateAutoSettings(); - } - - public void ResetRunningOutdatedTimer(){ - if(ShaderOutdated == UpToDateState.UpToDate) - return; - if(ShaderOutdated == UpToDateState.OutdatedSoft) // Might not want to have this later - return; - - nodeView.lastChangeTime = (float)EditorApplication.timeSinceStartup; - - } - - /* - public Vector3 GetMouseWorldPos( Vector3 playerPos ) { - - Vector3 camDir = Camera.main.transform.forward; - Ray r = Camera.main.ScreenPointToRay( Input.mousePosition ); - Plane p = new Plane( camDir * -1, playerPos ); - - float dist = 0f; - if( p.Raycast( r, out dist ) ) { - return r.GetPoint( dist ); - } - - Debug.LogError( "Mouse ray did not hit the plane" ); - return Vector3.zero; - }*/ - - public bool InitializeInstance( Shader initShader = null ) { - if(SF_Debug.evalFlow) - Debug.Log( "[SF_LOG] - SF_Editor InitializeInstance(" + initShader + ")" ); - //this.title = ; - - SF_Settings.InitializeSettings(); - this.initialized = true; - this.ps = ScriptableObject.CreateInstance().Initialize( this ); - this.shaderEvaluator = new SF_Evaluator( this ); - this.preview = new SF_PreviewWindow( this ); - this.statusBox = new SF_StatusBox( /*this*/ ); - statusBox.Initialize(this); - - InitializeNodeTemplates(); - - windowStyle = new GUIStyle( EditorStyles.textField ); - windowStyle.margin = new RectOffset( 0, 0, 0, 0 ); - windowStyle.padding = new RectOffset( 0, 0, 0, 0 ); - - titleStyle = new GUIStyle( EditorStyles.largeLabel ); - titleStyle.fontSize = 24; - - versionStyle = new GUIStyle( EditorStyles.miniBoldLabel ); - versionStyle.alignment = TextAnchor.MiddleLeft; - versionStyle.fontSize = 9; - versionStyle.normal.textColor = Color.gray; - versionStyle.padding.left = 1; - versionStyle.padding.top = 1; - versionStyle.padding.bottom = 1; - versionStyle.margin.left = 1; - versionStyle.margin.top = 3; - versionStyle.margin.bottom = 1; - - this.nodes = new List(); - - // Create main output node and add to list - this.nodeView = ScriptableObject.CreateInstance().Initialize( this ); - this.ps.catConsole.treeStatus = this.nodeView.treeStatus; - this.nodeBrowser = ScriptableObject.CreateInstance().Initialize( this ); - this.separatorLeft = ScriptableObject.CreateInstance(); - this.separatorRight = ScriptableObject.CreateInstance(); - - separatorLeft.rect = new Rect(340, 0, 0, 0); - separatorRight.rect = new Rect(Screen.width - 130f, 0, 0, 0); - - this.previousPosition = position; - - if( initShader == null ) { - // TODO: New menu etc - //CreateOutputNode(); - } else { - currentShaderAsset = initShader; - - bool loaded = SF_Parser.ParseNodeDataFromShader( this, initShader ); - if( !loaded ) { - initShader = null; - DestroyImmediate( this ); - return false; - } - - // Make preview material use this shader - //preview.material.shader = currentShaderAsset; - Material m = preview.InternalMaterial; - SF_Tools.AssignShaderToMaterialAsset( ref m, currentShaderAsset ); - } - - // Load data if it was set to initialize things - return true; // Successfully loaded - } - - - - - - public SF_Node CreateOutputNode() { - //Debug.Log ("Creating output node"); - this.mainNode = ScriptableObject.CreateInstance().Initialize( this );//new SFN_Final(); - this.nodes.Add( mainNode ); - return mainNode; - } - - public SF_Node GetNodeByID( int id ) { - for( int i = 0; i < nodes.Count; i++ ) { - if( nodes[i].id == id ) - return nodes[i]; - } - return null; - } - - - - - - public void UpdateKeyHoldEvents(bool mouseOverSomeNode) { - if( nodeTemplates == null || nodeTemplates.Count == 0 ) { - InitializeNodeTemplates(); - } - - //Debug.Log( "nodeTemplates.Count = " + nodeTemplates.Count ); - - foreach( SF_EditorNodeData nData in nodeTemplates ) { - - if( nData == null ) { - InitializeNodeTemplates(); - return; - } - SF_EditorNodeData requestedNode = nData.CheckHotkeyInput(mouseOverSomeNode); - if( requestedNode != null ) { - AddNode( requestedNode, true ); - return; - } - } - /*foreach(KeyValuePair> entry in inputInstancers){ - if(entry.Key.CheckHotkeyInput()){ - AddNode( entry.Key ); - } - }*/ - } - - public T AddNode() where T:SF_Node { - return AddNode(GetTemplate()) as T; - } - - public SF_Node AddNode(string typeName) { - //Debug.Log( "Searching for " + typeName ); - return AddNode( GetTemplate( typeName ) ); - } - - public SF_Node AddNode( SF_EditorNodeData nodeData, bool registerUndo = false ) { - - if( nodeData == null ){ - Debug.Log("Null node data passed into AddNode"); - } - - SF_Node node = nodeData.CreateInstance(); - - if( SF_Debug.dynamicNodeLoad ) { - if( node == null ) - Debug.Log( "nodeData failed to create a node of full path: " + nodeData.fullPath ); - else - Debug.Log( "Created a node of full path: " + nodeData.fullPath ); - } - - if(registerUndo){ - Undo.RecordObject(this, "add node " + node.nodeName); - } - - - nodes.Add( node ); - if(Event.current != null) - Event.current.Use(); - //Repaint(); - return node; - } - - - bool Clicked() { - return Event.current.type == EventType.mouseDown; - } - - float fps = 0; - double prevFrameTime = 1; - public double deltaTime = 0.02; - - - - - - - List coroutines = new List(); - - //double corLastTime; - // double corDeltaTime; - void UpdateCoroutines(){ - //corDeltaTime = EditorApplication.timeSinceStartup - corLastTime; - //corLastTime = EditorApplication.timeSinceStartup; - for(int i = 0; i < coroutines.Count; i++){ - IEnumerator routine = coroutines[i]; - if(!routine.MoveNext()){ - coroutines.RemoveAt(i--); - } - } - } - void StartCoroutine (IEnumerator routine){ - coroutines.Add(routine); - } - - - - - void Update() { - - - - if( closeMe ) { - base.Close(); - return; - } - - - double now = Now(); - double deltaTime = now-prevFrameTime; - fps = 1f/(float)deltaTime; - - - - if(fps > 60) - return; // Wait for target FPS - - - prevFrameTime = now; - - preview.UpdateRot(); - - - - for (int i = nodes.Count - 1; i >= 0; i--) { - if(nodes[i] == null) - nodes.Remove(nodes[i]); - else - nodes[i].Update(); - } - - - // Refresh node previews - int maxUpdatesPerFrame = 80; - int updatedNodes = 0; - - while( updatedNodes < maxUpdatesPerFrame ) { - bool anyUpdated = false; - for( int i = 0; i < nodes.Count; i++ ) { - if( nodes[i].CheckIfDirty() ) { - anyUpdated = true; - updatedNodes++; - } - } - if( !anyUpdated ) { - break; - } - } - - - - - - - if( ShaderOutdated == UpToDateState.OutdatedHard && SF_Settings.autoCompile && nodeView.GetTimeSinceChanged() >= 1f) { - shaderEvaluator.Evaluate(); - } - - - //UpdateCameraZoomValue(); - if(focusedWindow == this) - Repaint(); // Update GUI every frame if focused - - } - - - - MethodInfo isDockedMethod; - const float dockedCheckInterval = 1f; - public float dockedLastUpdate = -100f; - public bool _docked = false; - public bool Docked{ - get{ - if( EditorApplication.timeSinceStartup - dockedLastUpdate > dockedCheckInterval ) { - dockedLastUpdate = (float)EditorApplication.timeSinceStartup; - if( isDockedMethod == null ) { - BindingFlags fullBinding = BindingFlags.Public | BindingFlags.NonPublic | BindingFlags.Instance | BindingFlags.Static; - isDockedMethod = typeof( EditorWindow ).GetProperty( "docked", fullBinding ).GetGetMethod( true ); - } - _docked = ( bool ) isDockedMethod.Invoke(this, null); - } - return _docked; - } - } - - public int TabOffset{ - get{ - return Docked ? 19 : 22; - } - } - - - - public double Now(){ - TimeSpan t = ( DateTime.UtcNow - startTime ); - return t.TotalSeconds; - } - - - - - void OnWindowResized( int deltaXsize, int deltaYsize ) { - if(separatorRight == null) - ForceClose(); - separatorRight.rect.x += deltaXsize; - } - - void ForceClose() { - //Debug.Log("Force close"); - closeMe = true; - GUIUtility.ExitGUI(); - } - - void AddDependenciesHierarchally(SF_Node node, DependencyTree tree){ - node.ReadDependencies(); - tree.Add(node); - foreach(SF_Node n in ((IDependable)node).Dependencies){ - AddDependenciesHierarchally(n, tree); - } - } - - public List GetDepthSortedDependencyTreeForConnectedNodes(bool reverse = false){ - DependencyTree tree = new DependencyTree(); - - AddDependenciesHierarchally(mainNode, tree); - //Debug.Log(tree.tree.Count); - tree.Sort(); - - List list = tree.tree.Select(x=>(SF_Node)x).ToList(); - if(reverse) - list.Reverse(); - return list; - } - - string fullscreenMessage = ""; - public Rect previousPosition; - public bool closeMe = false; - void OnGUI() { - - //Debug.Log("SF_Editor OnGUI()"); - - //SF_AllDependencies.DrawDependencyTree(new Rect(0, 0, Screen.width, Screen.height)); - //return; - -// if(Event.current.keyCode == KeyCode.Space && Event.current.type == EventType.keyDown){ -// Debug.Log("Beep"); -// Event.current.Use(); -// -// -// -// } - - if(SF_Parser.quickLoad) // Don't draw while loading - return; - - if(SF_Debug.performance) - GUI.Label(new Rect(500,64,128,64),"fps: "+fps.ToString()); - - if( position != previousPosition ) { - OnWindowResized( (int)(position.width - previousPosition.width), (int)(position.height - previousPosition.height) ); - previousPosition = position; - } - - Rect fullRect = new Rect( 0, 0, Screen.width, Screen.height); - //Debug.Log( fullRect ); - - if( currentShaderAsset == null ) { - DrawMainMenu(); - return; - } - - if(!string.IsNullOrEmpty(fullscreenMessage)){ - GUI.Box(fullRect,fullscreenMessage); - return; - } - - - - //UpdateCameraZoomInput(); - - - if(Event.current.rawType == EventType.ValidateCommand && Event.current.commandName == "UndoRedoPerformed"){ - Defocus(deselectNodes:false); - CheckForDirtyNodes(); // When undoing, some nodes will come back as dirty, which means they need to update their values - shaderEvaluator.ps.fChecker.UpdateAvailability(); - ResetRunningOutdatedTimer(); - } - - - if( nodes != null ) { - - //foreach( SF_Node n in nodes ) { - for( int i = 0; i < nodes.Count;i++ ) { - SF_Node n = nodes[i]; - - if( n == null ) { - // THIS MEANS YOU STARTED UNITY WITH SF OPEN - ForceClose(); - return; - } else{ - n.DrawConnections(); - } - } - - } - - if(separatorLeft == null){ - // THIS MEANS YOU STARTED UNITY WITH SF OPEN - ForceClose(); - return; - } - - - - - //EditorGUILayout.BeginHorizontal(); - //{ - //float wPreview = leftSeparator; - //float wNodeBrowser = 130; - - Rect pRect = new Rect( fullRect ); - pRect.height /= EditorGUIUtility.pixelsPerPoint; - pRect.width /= EditorGUIUtility.pixelsPerPoint; - pRect.width = separatorLeft.rect.x; - SF_GUI.FillBackground( pRect ); - DrawPreviewPanel( pRect ); - Rect previewPanelRect = pRect; - - //pRect.x += leftWidth; - //pRect.width = wSeparator; - //VerticalSeparatorDraggable(ref leftWidth, pRect ); - separatorLeft.MinX = 320; - separatorLeft.MaxX = (int)( fullRect.width / 2f - separatorLeft.rect.width ); - separatorLeft.Draw( (int)pRect.y, (int)pRect.height ); - pRect.x = separatorLeft.rect.x + separatorLeft.rect.width; - - - if(SF_Settings.showNodeSidebar) - pRect.width = separatorRight.rect.x - separatorLeft.rect.x - separatorLeft.rect.width; - else - pRect.width = Screen.width - separatorLeft.rect.x - separatorLeft.rect.width; - //GUI.Box( new Rect( 300, 0, 512, 32 ), pRect.ToString() ); - - if( SF_Debug.nodes ) { - Rect r = pRect; r.width = 256; r.height = 16; - for( int i = 0; i < nodes.Count; i++ ) { - GUI.Label( r, "Node[" + i + "] at {" + nodes[i].rect.x + ", " + nodes[i].rect.y + "}", EditorStyles.label ); // nodes[i] - r = r.MovedDown(); - } - } - - if( Event.current.rawType == EventType.keyUp ){ - foreach(SF_EditorNodeData nd in nodeTemplates){ - nd.holding = false; - } - } - - - nodeView.OnLocalGUI( pRect.PadTop(TabOffset) ); // 22 when not docked, 19 if docked - //GUI.EndGroup(); - - //pRect.yMin -= 3; // if docked - - - - - - //pRect.x += pRect.width; - //pRect.width = wSeparator; - //VerticalSeparatorDraggable(ref rightWidth, pRect ); - if(SF_Settings.showNodeSidebar){ - separatorRight.MinX = (int)(fullRect.width / EditorGUIUtility.pixelsPerPoint) - 150; - separatorRight.MaxX = (int)(fullRect.width / EditorGUIUtility.pixelsPerPoint) - 32; - separatorRight.Draw( (int)pRect.y, (int)pRect.height ); - - pRect.x += pRect.width + separatorRight.rect.width; - pRect.width = (fullRect.width / EditorGUIUtility.pixelsPerPoint) - separatorRight.rect.x - separatorRight.rect.width; - - SF_GUI.FillBackground( pRect ); - nodeBrowser.OnLocalGUI( pRect ); - } - - - - - // Last thing, right? - - ssButtonColor = Color.Lerp(ssButtonColor,ssButtonColorTarget, (float)deltaTime*ssButtonFadeSpeed); - - if(previewPanelRect.Contains(Event.current.mousePosition)){ - - ssButtonColorTarget = Color.white; - ssButtonFadeSpeed = 0.4f; - - - } else { - ssButtonColorTarget = new Color(1f,1f,1f,0f); // TODO LERP - ssButtonFadeSpeed = 1.5f; - } - Rect ssRect = new Rect(8,previewButtonHeightOffset,32,19); - GUI.color = ssButtonColor; - if(GUI.Button(ssRect, SF_GUI.Screenshot_icon)){ - GenericMenu menu = new GenericMenu(); - menu.AddItem( new GUIContent("Take screenshot of node tree"), false, ContextClickScreenshot, "ss_standard" ); - menu.AddItem( new GUIContent("Take screenshot of node tree without 3D preview"), false, ContextClickScreenshot, "ss_nopreview" ); - menu.ShowAsContext(); - - } - GUI.color = Color.white; - - //Rect ssRectIcon = new Rect(0f, 0f, SF_GUI.Screenshot_icon.width, SF_GUI.Screenshot_icon.height); - ////ssRectIcon.center = ssRect.center; - //GUI.DrawTexture(ssRectIcon, SF_GUI.Screenshot_icon); - - - if(Event.current.type == EventType.repaint) - UpdateCoroutines(); - - - DrawTooltip(); - - } - - - public void CheckForDirtyNodes(){ - - for(int i=0;i 0){ - shaderTitle = split[split.Length-1]; - } - } - } - - - - - - for(int ix=0;ix nodeRects = new List(); - List lines = new List(); - for(int i=0;i longestDist){ - longestDist = shortest; - longestDistPt = testPt; - //pixel = Color.red; - }// else { - //pixel = Color.white * Mathf.Clamp01(shortest/(Mathf.Max(nodeWrap.width,nodeWrap.height)*0.2f)); - //} - - - - //pixel.a = 1f; - //newMaskPixels[i] = pixel; - } - //mask.SetPixels(newMaskPixels); - //mask.Apply(); - radius = longestDist; - return longestDistPt; - } - - - - - // TOOLTIP, Draw this last - public void DrawTooltip() { - /* - if( !string.IsNullOrEmpty( GUI.tooltip ) ) { - //Debug.Log( "TOOLTIP" ); - GUIStyle tooltipStyle = EditorStyles.miniButton; - GUI.Box( - new Rect( - Event.current.mousePosition.x + 32, - Event.current.mousePosition.y, - tooltipStyle.CalcSize( new GUIContent( GUI.tooltip ) ).x * 1.1f, - tooltipStyle.CalcSize( new GUIContent( GUI.tooltip ) ).y * 1.2f - ), - GUI.tooltip, tooltipStyle - ); - } - GUI.tooltip = null;*/ - } - - public void Defocus(bool deselectNodes = false) { - //Debug.Log("DEFOCUS"); -// string currentFocus = GUI.GetNameOfFocusedControl(); -// if( currentFocus != "defocus"){ - GUI.FocusControl("null"); -// } - - if( deselectNodes ) - nodeView.selection.DeselectAll(registerUndo:true); - } - - - public bool DraggingAnySeparator() { - return separatorLeft.dragging || separatorRight.dragging; - } - - - - public void FlexHorizontal(Action func){ - GUILayout.BeginHorizontal(); GUILayout.FlexibleSpace(); - func(); - GUILayout.FlexibleSpace(); GUILayout.EndHorizontal(); - } - - public void FlexHorizontal(Action func, float width){ - GUILayout.BeginHorizontal(GUILayout.Width(width)); GUILayout.Space(Screen.width/2f - 335); - func(); - GUILayout.FlexibleSpace(); GUILayout.EndHorizontal(); - } - - - public static string updateCheck = ""; - public static bool outOfDate = false; - - public static void CheckForUpdates(){ - updateCheck = "Checking for updates..."; - //Debug.Log(updateCheck); - - WebClient wc = new WebClient(); - - string latestVersion; - - try{ - latestVersion = wc.DownloadString("http://www.acegikmo.com/shaderforge/latestversion.php"); - string[] split = latestVersion.Split('.'); - int latestMajor = int.Parse(split[0]); - int latestMinor = int.Parse(split[1]); - - if(latestMajor > SF_Tools.versionNumPrimary){ - outOfDate = true; - } else if(latestMajor == SF_Tools.versionNumPrimary && latestMinor > SF_Tools.versionNumSecondary){ - outOfDate = true; - } else { - outOfDate = false; - } - - if(outOfDate){ - updateCheck = "Shader Forge is out of date!\nYou are running " + SF_Tools.version + ", the latest version is " + latestVersion; - } else { - updateCheck = "Shader Forge is up to date!"; - } - - - - - } catch ( WebException e){ - updateCheck = "Couldn't check for updates: " + e.Status; - } - - - } - - - private enum MainMenuState{Main, Credits, PresetPick} - - private MainMenuState menuState = MainMenuState.Main; - - - public void DrawMainMenu() { - - - //SF_AllDependencies.DrawDependencyTree(new Rect(0f,0f,Screen.width,Screen.height)); - //return; - - if(string.IsNullOrEmpty(updateCheck)){ - CheckForUpdates(); - } - - GUILayout.BeginVertical(); - { - GUILayout.FlexibleSpace(); - - - FlexHorizontal(()=>{ - GUILayout.Label( SF_GUI.Logo ); - if(outOfDate) - GUI.color = Color.red; - GUILayout.Label( SF_Tools.versionStage + " v" + SF_Tools.version, EditorStyles.boldLabel ); - if(outOfDate) - GUI.color = Color.white; - }); - - - if(menuState == MainMenuState.Main){ - minSize = new Vector2(500,400); - DrawPrimaryMainMenuGUI(); - } else if( menuState == MainMenuState.PresetPick ) { - minSize = new Vector2( 128*(shaderPresetNames.Length + 1), 560 ); - DrawPresetPickGUI(); - } else if(menuState == MainMenuState.Credits){ - - //Vector2 centerPrev = position.center; - - minSize = new Vector2(740,560); - - //Rect rWnd = position; - //rWnd.center = new Vector2( 800,800); - //position = rWnd; - - - DrawCreditsGUI(); - } - - - - - GUILayout.FlexibleSpace(); - } - GUILayout.EndVertical(); - - - } - - public void DrawCreditsGUI(){ - EditorGUILayout.Separator(); - FlexHorizontal(()=>{ - GUILayout.Label( "Thanks for purchasing Shader Forge <3" ); - }); - EditorGUILayout.Separator(); - EditorGUILayout.Separator(); - FlexHorizontal(()=>{ - GUILayout.Label( "Created by ", SF_Styles.CreditsLabelText); - GUILayout.Label( "Freya 'Acegikmo' Holm" + '\u00e9' + "r", EditorStyles.boldLabel); - }); - EditorGUILayout.Separator(); - EditorGUILayout.Separator(); - FlexHorizontal(()=>{ - GUILayout.Label( "Special thanks:", EditorStyles.boldLabel ); - }); - CreditsLine("All of the alpha & beta testers","For their amazing feedback during the early days!" ); - CreditsLine( "Jenny 'sranine' Nordenborg", "For creating the Shader Forge logo and for supporting me throughout the development time!" ); - CreditsLine( "Peter Cornelius", "For convincing me that I should have started creating SF in the first place" ); - CreditsLine( "Robert Briscoe", "For actively testing SF and providing excellent feedback" ); - CreditsLine( "Thomas Pasieka", "For helping out immensely in getting the word out, as well as motivating me to continue" ); - CreditsLine( "Aras Pranckevi" +'\u010D'+ "ius", "For helping out with various shader code issues"); - CreditsLine( "Renaldas 'ReJ' Zioma", "For assisting in the Unity 5 transition" ); - CreditsLine( "Tim 'Stramit' Cooper & David 'Texel' Jones", "For giving helpful tips"); - CreditsLine( "Sander 'Zerot' Homan", "For helping out stealing Unity's internal RT code"); - CreditsLine( "Carlos 'Darkcoder' Wilkes", "For helping out with various serialization issues"); - CreditsLine( "Ville 'wiliz' Mäkynen", "For helping out with the undo system"); - CreditsLine( "Daniele Giardini", "For his editor window icon script (also, check out his plugin DOTween!)"); - CreditsLine( "Beck Sebenius", "For helping out getting coroutines to run in the Editor"); - CreditsLine( "James 'Farfarer' O'Hare", "For asking all the advanced shader questions on the forums so I didn't have to"); - CreditsLine( "Tenebrous", "For helping with... Something... (I can't remember)"); - CreditsLine( "Alex Telford", "For his fragment shader tutorials"); - CreditsLine( "Shawn White", "For helping out finding how to access compiled shaders from code"); - CreditsLine( "Colin Barr"+ '\u00e9' +"-Brisebois & Stephen Hill", "For their research on normal map blending"); - CreditsLine( "Andrew Baldwin", "For his articles on pseudorandom numbers" ); - - - EditorGUILayout.Separator(); - FlexHorizontal(()=>{ - if( GUILayout.Button( "Return to menu", GUILayout.Height( 30f ), GUILayout.Width( 190f ) ) ) { - menuState = MainMenuState.Main; - } - }); - } - - public void CreditsLine(string author, string reason){ - FlexHorizontal(()=>{ - GUILayout.Label( author, EditorStyles.boldLabel ); - GUILayout.Label(" - ", SF_Styles.CreditsLabelText ); - GUILayout.Label( reason, SF_Styles.CreditsLabelText ); - },400f); - } - - public enum ShaderPresets { Unlit, LitPBR, LitBasic, Custom, Sprite, ParticleAdditive, ParticleAlphaBlended, ParticleMultiplicative, Sky, PostEffect } - public string[] shaderPresetNames = new string[] { - "Unlit", - "Lit\n(PBR)", - "Lit\n(Basic)", - "Custom Lighting", - "Sprite", - "Particle\n(Additive)", - "Particle\n(Alpha-Blended)", - "Particle\n(Multiplicative)", - "Sky", - "Post-Effect" - }; - - public string[] shaderPresetShaders = new string[] { - "Unlit", - "PBR", - "Basic", - "CustomLighting", - "Sprite", - "ParticleAdditive", - "ParticleAlphaBlended", - "ParticleMultiplicative", - "Sky", - "PostEffect" - }; - - public string GetShaderPresetPath(ShaderPresets preset) { - int i = (int)preset; - string file = "preset" + shaderPresetShaders[i] + ".shader"; - return SF_Resources.InternalResourcesPath + "Shader Presets/" + file; - } - - - public string[] shaderPresetDescriptions = new string[] { - "Unlit means that light sources will not affect this shader, it will simply have the color you give it, regardless of the scene setup.", - "Lit (PBR) is set up to match Unity's Physically Based shader, affected by lightmaps, light probes, reflection probes etc.", - "Lit (Basic) is the old-school Blinn-Phong lighting model. Direct lighting only, no lightmap or probe data.", - "Custom Lighting is set up with a simple example of how you can create your own lighting models. The initial setup is a Blinn-Phong shader.", - "Sprite is for creating 2D shaders to be used on sprites. These will have the pixel-perfect option and sort properly with other 2D sprites.", - "Particle (Additive) is generally for glow effects, lightshafts, sparks etc. Primarily used in particle systems.", - "Particle (Alpha-Blended) is generally for debris effects, dusty smoke etc. Primarily used in particle systems.", - "Particle (Multiplicative) is generally for darkening effects, black smoke, evil-looking anti-glow etc. Primarily used in particle systems.", - "Sky is for creating shaders to be used with a sky material in your scene. It will render behind everything else.", - "Post-Effect is for creating shaders meant to render full-screen rather than at a position in the world, commonly used for post-process effects" - }; - - string desc = ""; - - public void DrawPresetPickGUI() { - - GUIStyle centerLabel = new GUIStyle( EditorStyles.boldLabel ); - GUIStyle centerLabelSmall = new GUIStyle( EditorStyles.miniLabel ); - centerLabel.alignment = centerLabelSmall.alignment = TextAnchor.MiddleCenter; - - - EditorGUILayout.Separator(); - FlexHorizontal( () => { - GUILayout.BeginVertical(); - GUILayout.Label( "What kind of shader do you want to forge?", centerLabel ); - GUI.color = new Color(1f,1f,1f,0.4f); - GUILayout.Label( "This will simply affect the initial configuration of the shader. It will not \"lock-in\" any features", centerLabelSmall ); - GUI.color = Color.white; - GUILayout.EndVertical(); - } ); - EditorGUILayout.Separator(); - - - - FlexHorizontal( () => { - - GUILayoutOption[] btnLayout = new GUILayoutOption[2] { GUILayout.Width( 128 ), GUILayout.Height( 128 ) }; - - GUIStyle style = new GUIStyle( EditorStyles.boldLabel ); - style.alignment = TextAnchor.UpperCenter; - - //if( Event.current.type == EventType.mouseMove) - //desc = ""; - - //GUILayout.BeginVertical(); - for(int i=0;i { - GUILayout.Label( desc, centerLabelSmall ); - }); - - EditorGUILayout.Separator(); - EditorGUILayout.Separator(); - - FlexHorizontal( () => { - if( GUILayout.Button( "Back" ) ) { - menuState = MainMenuState.Main; - } - } ); - - - - - } - - - public Texture2D GetShaderPresetIcon(ShaderPresets preset) { - - switch( preset ) { - - case ShaderPresets.Custom: - return SF_GUI.Shader_preset_icon_custom; - case ShaderPresets.LitBasic: - return SF_GUI.Shader_preset_icon_litbasic; - case ShaderPresets.LitPBR: - return SF_GUI.Shader_preset_icon_litpbr; - case ShaderPresets.ParticleAdditive: - return SF_GUI.Shader_preset_icon_particleadditive; - case ShaderPresets.ParticleAlphaBlended: - return SF_GUI.Shader_preset_icon_particlealphablended; - case ShaderPresets.ParticleMultiplicative: - return SF_GUI.Shader_preset_icon_particlemultiplicative; - case ShaderPresets.Sky: - return SF_GUI.Shader_preset_icon_sky; - case ShaderPresets.Sprite: - return SF_GUI.Shader_preset_icon_sprite; - case ShaderPresets.Unlit: - return SF_GUI.Shader_preset_icon_unlit; - case ShaderPresets.PostEffect: - return SF_GUI.Shader_preset_icon_posteffect; - - } - - Debug.LogError("No preset icon found"); - - return null; - - - } - - - public void DrawPrimaryMainMenuGUI(){ - - - - FlexHorizontal(()=>{ - GUI.color = new Color( 0.7f, 0.7f, 0.7f ); - if( GUILayout.Button( '\u00a9' + " Freya 'Acegikmo' Holm" + '\u00e9' + "r", EditorStyles.miniLabel ) ) { - Application.OpenURL("https://twitter.com/FreyaHolmer"); - } - - SF_GUI.AssignCursorForPreviousRect( MouseCursor.Link ); - GUI.color = Color.white; - }); - - EditorGUILayout.Separator(); - - /* - FlexHorizontal(()=>{ - if( GUILayout.Button(SF_Tools.manualLabel , GUILayout.Height( 32f ), GUILayout.Width( 190f ) ) ) { - Application.OpenURL( SF_Tools.manualURL ); - } - }); - */ - - FlexHorizontal(()=>{ - - if(SF_Tools.CanRunShaderForge()){ - if( GUILayout.Button( "New Shader", GUILayout.Width( 128 ), GUILayout.Height( 64 ) ) ) { - menuState = MainMenuState.PresetPick; - } - if( GUILayout.Button( "Load Shader", GUILayout.Width( 128 ), GUILayout.Height( 64 ) ) ) { - OpenLoadDialog(); - } - } else { - GUILayout.BeginVertical(); - SF_Tools.UnityOutOfDateGUI(); - GUILayout.EndVertical(); - } - }); - - - - FlexHorizontal(()=>{ - if( GUILayout.Button( "Polycount thread" ) ) { - Application.OpenURL( "http://www.polycount.com/forum/showthread.php?t=123439" ); - } - if( GUILayout.Button( "Unity thread" ) ) { - Application.OpenURL( "http://forum.unity3d.com/threads/222049-Shader-Forge-A-visual-node-based-shader-editor" ); - } - if( GUILayout.Button( SF_Tools.documentationLabel ) ) { - Application.OpenURL( SF_Tools.documentationURL ); - } - if( GUILayout.Button( "Wiki" ) ) { - Application.OpenURL( "http://acegikmo.com/shaderforge/wiki" ); - } - if( GUILayout.Button("Credits") ){ - menuState = MainMenuState.Credits; - } - }); - - - FlexHorizontal( () => { - if( GUILayout.Button( SF_Tools.bugReportLabel, GUILayout.Height( 32f ), GUILayout.Width( 180f ) ) ) { - Application.OpenURL( SF_Tools.bugReportURL ); - } - } ); - - FlexHorizontal( () => { - if( GUILayout.Button( "Forums", GUILayout.Height( 32f ), GUILayout.Width( 120f ) ) ) { - Application.OpenURL( "http://neatcorporation.com/forums/viewforum.php?f=1" ); - } - } ); - - EditorGUILayout.Separator(); - FlexHorizontal(()=>{ - GUILayout.Label(updateCheck); - }); - if(outOfDate){ - float t = (Mathf.Sin((float)EditorApplication.timeSinceStartup*Mathf.PI*2f)*0.5f)+0.5f; - GUI.color = Color.Lerp(Color.white, new Color(0.4f,0.7f,1f),t); - FlexHorizontal(()=>{ - if(GUILayout.Button("Download latest version")){ - Application.OpenURL( "https://www.assetstore.unity3d.com/#/content/14147" ); - } - }); - t = (Mathf.Sin((float)EditorApplication.timeSinceStartup*Mathf.PI*2f-1)*0.5f)+0.5f; - GUI.color = Color.Lerp(Color.white, new Color(0.4f,0.7f,1f),t); - FlexHorizontal(()=>{ - if(GUILayout.Button("What's new?")){ - Application.OpenURL( "http://acegikmo.com/shaderforge/changelog/" ); - } - }); - GUI.color = Color.green; - } - } - - - - public bool PropertyNameTaken(SF_ShaderProperty sProp){ - foreach(SF_Node n in nodes){ - if(n == sProp.node) - continue; - if(n.IsProperty()) - if(n.property.nameDisplay == sProp.nameDisplay || n.property.nameInternal == sProp.nameInternal) - return true; - } - return false; - } - - - public void OpenLoadDialog(){ - string path = EditorUtility.OpenFilePanel( - "Load Shader", - "Assets", - "shader" - ); - - if( string.IsNullOrEmpty( path ) ) { - //Debug.LogError("No path selected"); - return; - } else { - - // Found file! Make sure it's a shader - - path = SF_Tools.PathFromAbsoluteToProject( path ); - Shader loadedShader = (Shader)AssetDatabase.LoadAssetAtPath(path, typeof(Shader)); - if( loadedShader == null ) { - Debug.LogError( "Selected shader not found" ); - return; - } - - - - bool isSFshader = SF_Parser.ContainsShaderForgeData(loadedShader); - - bool allowEdit = isSFshader; - if(!allowEdit) - allowEdit = SF_GUI.AcceptedNewShaderReplaceDialog(); - - - if( allowEdit ) { - SF_Editor.Init( loadedShader ); - } else { - //Debug.LogError( "User cancelled loading operation" ); - } - - } - - } - - - - public bool TryCreateNewShader(SF_Editor.ShaderPresets preset) { - - - - - - //Shader s = (Shader)AssetDatabase.LoadAssetAtPath( presetPath, typeof(Shader) ); - //Debug.Log( s); - - - - string savePath = EditorUtility.SaveFilePanel( - "Save new shader", - "Assets", - "NewShader", - "shader" - ); - - if( string.IsNullOrEmpty( savePath ) ) { - return false; - } - - string presetPath = GetShaderPresetPath( preset ); - StreamReader presetReader = new StreamReader( Application.dataPath + presetPath.Substring( 6 ) ); - - // So we now have the path to save it, let's save - StreamWriter sw; - if( !File.Exists( savePath ) ) { - sw = File.CreateText( savePath ); - } else { - sw = new StreamWriter(savePath); - } - - // Read from preset - string[] presetLines = presetReader.ReadToEnd().Split( '\n' ); - for( int i=0; i < presetLines.Length; i++ ) { - if( presetLines[i].StartsWith( "Shader \"Hidden/" ) ) { - - // Extract name of the file to put in the shader path - string[] split = savePath.Split( '/' ); - currentShaderPath = split[split.Length - 1].Split( '.' )[0]; - currentShaderPath = "Shader Forge/" + currentShaderPath; - - // Write to the line - presetLines[i] = "Shader \"" + currentShaderPath + "\" {"; - - break; - } - } - - // Read from the preset - for( int i=0; i < presetLines.Length; i++ ) { - sw.WriteLine( presetLines[i] ); - } - - sw.Flush(); - sw.Close(); - presetReader.Close(); - AssetDatabase.Refresh(); - - // Shorten it to a relative path - string dataPath = Application.dataPath; - string assetPath = "Assets/" + savePath.Substring( dataPath.Length + 1 ); - - // Assign a reference to the file - currentShaderAsset = (Shader)AssetDatabase.LoadAssetAtPath( assetPath, typeof( Shader ) ); - - if( currentShaderAsset == null ) { - Debug.LogError( "Couldn't load shader asset" ); - Debug.Break(); - return false; - } - - - - // Make sure the preview material is using the shader - preview.InternalMaterial.shader = currentShaderAsset; - - // That's about it for the file/asset management. - //CreateOutputNode(); - SF_Editor.Init( currentShaderAsset ); - //shaderEvaluator.Evaluate(); // And we're off! - - //nodeView.CenterCamera(); - - return true; - } - - public string GetShaderFilePath() { - - if( currentShaderAsset == null ) { - Debug.LogError( "Tried to find path of null shader asset!" ); - Debug.Break(); - return null; - } - return AssetDatabase.GetAssetPath( currentShaderAsset ); - } - - public bool displaySettings = false; - - public void DrawPreviewPanel( Rect r ) { - // Left side shader preview - - //Rect logoRect = new Rect( 1, 0, SF_GUI.Logo.width, SF_GUI.Logo.height ); - - //GUI.DrawTexture( logoRect, SF_GUI.Logo ); - - Rect btnRect = new Rect(r); - btnRect.y += 4; - btnRect.x += 2; - //btnRect.xMin += logoRect.width; - - int wDiff = 8; - - btnRect.height = 17; - btnRect.width /= 4; - btnRect.width += wDiff; - - GUIStyle btnStyle = EditorStyles.miniButton; - - if(GUI.Button(btnRect,"Return to menu",btnStyle)){ - OnPressBackToMenuButton(); - } - btnRect.x += btnRect.width; - btnRect.xMax -= wDiff*2; - btnRect.width *= 0.75f; - displaySettings = GUI.Toggle(btnRect, displaySettings, "Settings",btnStyle); - - btnRect.x += btnRect.width; - btnRect.width *= 2f; - - GUI.color = SF_GUI.outdatedStateColors[(int)ShaderOutdated]; - if( GUI.Button( btnRect, "Compile shader", btnStyle ) ) { - if(nodeView.treeStatus.CheckCanCompile()) - shaderEvaluator.Evaluate(); - } - GUI.color = Color.white; - - nodeView.DrawRecompileTimer(btnRect); - btnRect.x += btnRect.width; - btnRect.width *= 0.5f; - - SF_Settings.autoCompile = GUI.Toggle( btnRect, SF_Settings.autoCompile, "Auto" ); - - btnRect.y += 4; - - - - // SETTINGS EXPANSION - if(displaySettings){ - btnRect.y += btnRect.height; - btnRect.x = r.x - 4; - btnRect.width = r.width / 4f; - btnRect.x += btnRect.width; - btnRect.width *= 2.55f; - - /*Rect[] splitRects = btnRect.SplitHorizontal( 0.5f, 1 ); // Node render mode control - GUI.Label( splitRects[1], "Node rendering" ); - EditorGUI.BeginChangeCheck(); - SF_Settings.nodeRenderMode = (NodeRenderMode)EditorGUI.EnumPopup( splitRects[0], SF_Settings.nodeRenderMode ); - if( EditorGUI.EndChangeCheck() ) { - RegenerateNodeBaseData(); - } - btnRect = btnRect.MovedDown();*/ - if( SF_Settings.nodeRenderMode == NodeRenderMode.Viewport ) { - EditorGUI.BeginDisabledGroup( true ); - GUI.Toggle( btnRect, true, "Real-time node rendering" ); - EditorGUI.EndDisabledGroup(); - } else { - EditorGUI.BeginChangeCheck(); - SF_Settings.realtimeNodePreviews = GUI.Toggle( btnRect, SF_Settings.realtimeNodePreviews, "Real-time node rendering" ); - if( EditorGUI.EndChangeCheck() ) { - RegenerateNodeBaseData(); - } - } - - btnRect = btnRect.MovedDown(); - SF_Settings.quickPickScrollWheel = GUI.Toggle( btnRect, SF_Settings.quickPickScrollWheel, "Use scroll in the quickpicker" ); - btnRect = btnRect.MovedDown(); - SF_Settings.showVariableSettings = GUI.Toggle( btnRect, SF_Settings.showVariableSettings, "Show variable name & precision" ); - btnRect = btnRect.MovedDown(); - SF_Settings.showNodeSidebar = GUI.Toggle( btnRect, SF_Settings.showNodeSidebar, "Show node browser panel" ); - btnRect = btnRect.MovedDown(); - if( SF_GUI.HoldingControl() ) { - EditorGUI.BeginDisabledGroup( true ); - GUI.Toggle( btnRect, !SF_Settings.hierarchalNodeMove, "Hierarchal Node Move" ); - EditorGUI.EndDisabledGroup(); - } else { - SF_Settings.hierarchalNodeMove = GUI.Toggle( btnRect, SF_Settings.hierarchalNodeMove, "Hierarchal Node Move" ); - } - - btnRect.y += 4; - } - - - - - //GUI.Box( new Rect(203,10,128,19), SF_Tools.versionStage+" "+SF_Tools.version, versionStyle ); - previewButtonHeightOffset = (int)btnRect.yMax + 24; - int previewOffset = preview.OnGUI( (int)btnRect.yMax, (int)r.width ); - int statusBoxOffset = statusBox.OnGUI( previewOffset, (int)r.width ); - - - ps.OnLocalGUI(statusBoxOffset, (int)r.width ); - if( SF_Debug.nodes ) { - GUILayout.Label( "Node count: " + nodes.Count ); - } - - } - - void RegenerateNodeBaseData() { - for( int i = 0; i < nodes.Count; i++ ) { - nodes[i].GenerateBaseData(); - } - } - - int previewButtonHeightOffset; - - public void OnPressBackToMenuButton(){ - shaderEvaluator.SaveShaderAsset(); - Close(); - Init(); - } - - - public void OnPressSettingsButton(){ - - } - - - - - - - - public void OnShaderEvaluated() { - // statusBox.UpdateInstructionCount( preview.InternalMaterial.shader ); - } - - - - public void CheckForBrokenConnections() { - foreach( SF_Node node in nodes ) - node.CheckForBrokenConnections(); - } - - } -} \ No newline at end of file diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/SF_Editor.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/SF_Editor.cs.meta deleted file mode 100755 index 16805ea1..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/SF_Editor.cs.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: 74496bb1dec304ba59a268d77032e300 -MonoImporter: - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/SF_EditorNodeBrowser.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/SF_EditorNodeBrowser.cs deleted file mode 100755 index 7e263f83..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/SF_EditorNodeBrowser.cs +++ /dev/null @@ -1,411 +0,0 @@ -using UnityEngine; -using UnityEditor; -using System.Collections; -using System.Collections.Generic; - -namespace ShaderForge { - - [System.Serializable] - public class SF_EditorNodeBrowser : ScriptableObject { - - - [SerializeField] - public SF_Editor editor; - [SerializeField] - public Vector2 scrollPos; - - [SerializeField] - GUIStyle styleToolbar; - [SerializeField] - GUIStyle styleSearchField; - [SerializeField] - GUIStyle styleSearchCancel; - [SerializeField] - GUIStyle styleCategory; - [SerializeField] - GUIStyle styleButton; - - [SerializeField] - bool showFiltered = false; - //[SerializeField] SerializableDictionary> unfiltered; - //[SerializeField] SerializableDictionary> filtered; - [SerializeField] - List unfiltered; - [SerializeField] - List filtered; - - bool initializedStyles = false; - - [SerializeField] - SF_EditorNodeData dragNode = null; - - [SerializeField] - public string searchString = ""; - - - public SF_EditorNodeBrowser() { - initializedStyles = false; - } - - public void OnEnable() { - base.hideFlags = HideFlags.HideAndDontSave; - } - - - - - public SF_EditorNodeBrowser Initialize( SF_Editor editor ) { - this.editor = editor; - unfiltered = editor.nodeTemplates; - filtered = new List(); - dragNode = null; - return this; - } - - - public void CheckInitializeStyles() { - if( initializedStyles && styleCategory.fixedHeight == 24 && styleButton.fixedHeight == 24 ) - return; - InitializeStyles(); - } - - private void InitializeStyles() { - styleToolbar = new GUIStyle( GUI.skin.FindStyle( "Toolbar" ) ); - styleSearchField = new GUIStyle( GUI.skin.FindStyle( "ToolbarSeachTextField" ) ); - styleSearchCancel = new GUIStyle( GUI.skin.FindStyle( "ToolbarSeachCancelButton" ) ); - styleCategory = new GUIStyle( EditorStyles.toolbarButton ); - styleCategory.alignment = TextAnchor.MiddleLeft; - styleCategory.fixedHeight = 24; - styleCategory.fontStyle = FontStyle.Bold; - styleCategory.fontSize = 9; - styleCategory.margin.top = 0; - styleCategory.margin.bottom = 0; - - styleButton = new GUIStyle( GUI.skin.textField ); - styleButton.alignment = TextAnchor.MiddleLeft; - styleButton.normal.textColor = SF_GUI.ProSkin ? new Color( 0.8f, 0.8f, 0.8f ) : new Color( 0.2f, 0.2f, 0.2f ); - styleButton.fontSize = 10; - styleButton.fixedHeight = 24; - styleButton.fontSize = 10; - styleButton.margin.top = 0; - styleButton.margin.bottom = 0; - - initializedStyles = true; - } - - - - [SerializeField] - string prevString; - - [SerializeField] - string prevCategory; - - [SerializeField] - float innerHeight = 256; - - const string searchBoxName = "sf_search_box"; - - public void OnLocalGUI( Rect rect ) { - - if( IsPlacing() && Event.current.type == EventType.mouseUp && Event.current.button == 1 ) { - CancelDrag(); - Event.current.Use(); - } - - CheckInitializeStyles(); - //EditorGUIUtility.LookLikeInspector(); - - if( styleCategory.alignment != TextAnchor.MiddleLeft ) - InitializeStyles(); - - - Rect toolbarRect = new Rect( rect ); - toolbarRect.height = 19; - - - Rect searchRect = new Rect( toolbarRect ); - searchRect.width -= 19; - searchRect.y += 1; - - Rect searchCancelRect = new Rect( searchRect ); - searchCancelRect.x += searchCancelRect.width; - searchCancelRect.width = 19; - - // Command/ctrl + F // TODO - /* - if( SF_GUI.HoldingControl() && - Event.current.keyCode == KeyCode.F && - Event.current.type == EventType.keyDown && - GUI.GetNameOfFocusedControl() != searchBoxName){ - - Event.current.character = (char)0; // We're done using F now - Event.current.Use(); - GUI.FocusControl(searchBoxName); // Focus search field - Event.current.character = (char)0; // Stop! No more characters! Please! - } - */ - - - // Draw Toolbar - GUI.Box( toolbarRect, "", styleToolbar ); - - prevString = searchString.Trim(); - GUI.SetNextControlName( searchBoxName ); - searchString = EditorGUI.TextField( searchRect, searchString, styleSearchField ); - if( GUI.Button(searchCancelRect, "", styleSearchCancel ) ) { - searchString = ""; - GUI.FocusControl( null ); - } - if( searchString.Trim() != prevString ) - OnSearchStringChanged(); - - - - - - // Scroll view stuff - Rect panelRect = new Rect( rect ); - panelRect.yMin += toolbarRect.height - 1; - panelRect.height -= toolbarRect.height; - - Rect scrollRect = new Rect( panelRect ); - scrollRect.y = scrollPos.y; - - - - // Calc insides height - //Debug.Log(panelRect.height); - scrollRect.height = Mathf.Max( panelRect.height, innerHeight ); - scrollRect.width -= 15; - - Rect btnRect = new Rect( panelRect.x, panelRect.y - toolbarRect.height, rect.width - 16, styleCategory.fixedHeight ); - innerHeight = 0; - float innerStartY = 0f; - - scrollPos = GUI.BeginScrollView( panelRect, scrollPos, scrollRect, false, true /*GUILayout.Width( rect.wi )*/ ); - { - if(Event.current.type == EventType.layout) - innerStartY = btnRect.y; - if( GetNodeList().Count > 0 ) { - foreach( SF_EditorNodeData entry in GetNodeList() ) { - - if( entry.category != prevCategory ) { - DrawCategory(entry.category, ref btnRect ); - prevCategory = entry.category; - } - - DrawButton( entry, ref btnRect ); - } - } else { - GUI.color = Color.gray; - GUI.Label(btnRect, "No nodes matched" ); - GUI.color = Color.white; - } - - if(Event.current.type == EventType.layout){ - innerHeight = btnRect.yMax - innerStartY; - //Debug.Log ("Inner: " + innerHeight + ", Panel: " + panelRect.height); - } - - } - GUI.EndScrollView(); - - - - - UpdateDrag(); - - } - - public void DrawCategory( string label, ref Rect btnRect ) { - GUI.Label( btnRect, label + ":", styleCategory ); - btnRect.y += btnRect.height; - } - - public void DrawButton( SF_EditorNodeData entry, ref Rect btnRect ) { - GUI.color = entry.isProperty ? SF_Node.colorExposed : Color.white; - - bool usable = !(!entry.availableInDeferredPrePass && editor.ps.catLighting.renderPath == SFPSC_Lighting.RenderPath.Deferred); - - if(!usable){ - //GUI.color = Color.red; - GUI.enabled = false; - } - - bool mouseOver = btnRect.Contains(Event.current.mousePosition); - - - if(usable){ - if( dragNode == entry ) - GUI.color = SF_GUI.selectionColorBright; - else if( mouseOver && dragNode == null ) - GUI.color = SF_GUI.selectionColorBrighter; - } - - - GUI.Label( btnRect, (usable ? string.Empty : " ") + entry.nodeName, styleButton ); - - - if( mouseOver && Event.current.type == EventType.mouseDown && Event.current.button == 0 && usable) { - OnStartDrag( entry ); - } else if( Event.current.type == EventType.ContextClick ) { - Vector2 mousePos = Event.current.mousePosition; - if( btnRect.Contains( mousePos ) ) { - // Now create the menu, add items and show it - GenericMenu menu = new GenericMenu(); - editor.ResetRunningOutdatedTimer(); - //menu.AddItem( new GUIContent("Edit Comment"), false, ContextClick, "cmt_edit" ); - menu.AddItem( new GUIContent("What does " + entry.nodeName + " do?"), false, ContextClick, entry ); - menu.ShowAsContext(); - Event.current.Use(); - } - } - - - - GUI.color = Color.white; - if( entry.isNew || entry.isUnstable) { - GUIStyle miniStyle = new GUIStyle( EditorStyles.miniBoldLabel ); - miniStyle.alignment = TextAnchor.UpperRight; - miniStyle.normal.textColor = Color.red; - GUI.Label( btnRect, entry.isNew ? "New" : "Unstable", miniStyle ); - } - - if(usable){ - SF_GUI.AssignCursor( btnRect, MouseCursor.Pan ); - } else { - if(Event.current.type == EventType.repaint){ - GUI.enabled = true; - SF_GUI.DrawLock(btnRect.PadTop(4),"Forward rendering only", TextAlignment.Right); - //Draw(btnRect.PadTop(4), false, true, true, false); // Draw lock - GUI.enabled = false; - } - } - GUI.enabled = true; - btnRect.y += btnRect.height; - } - - public void ContextClick( object o ) { - SF_EditorNodeData entry = o as SF_EditorNodeData; - SF_Web.OpenDocumentationForNode(entry); - } - - - - public void OnStartDrag( SF_EditorNodeData nodeData ) { - //if( IsPlacing() ) - // return; - //Debug.Log( "DRAG BUTTON: " + nodeData.name ); - dragNode = nodeData; - } - - public SF_Node OnStopDrag() { - if( !IsPlacing() ) - return null; - SF_Node newNode = null; - if(editor.nodeView.rect.Contains(Event.current.mousePosition)) - newNode = editor.AddNode( dragNode, registerUndo:true ); - dragNode = null; - return newNode; - } - - public void UpdateDrag() { - if( !IsPlacing() ) - return; - - editor.Repaint(); - - //Debug.Log( "Drag exists: " + ( dragNode != null ) + "\nDrag name: " + dragNode.name + "\nDrag type: " + dragNode.type.ToString() ); - - //float preScale = (float)(editor.separatorRight.rect.x - Event.current.mousePosition.x); - //preScale /= 48f; // Distance to animate in - //preScale = Mathf.Clamp01(preScale); - - //Rect boxRect = new Rect( 0, 0, SF_Node.NODE_SIZE, SF_Node.NODE_SIZE ).ScaleSizeBy(preScale).ClampSize((int)styleCategory.fixedHeight,SF_Node.NODE_SIZE); - Rect boxRect = new Rect( 0, 0, SF_Node.NODE_SIZE, SF_Node.NODE_SIZE ); - boxRect.center = Event.current.mousePosition; - - GUI.Box( boxRect, dragNode.nodeName ); - // Debug.Log( Event.current.type.ToString()); - if( Event.current.rawType == EventType.mouseUp ) - OnStopDrag(); - - - } - - public void CancelDrag() { - dragNode = null; - } - - public bool IsPlacing() { - if( dragNode == null ) - return false; - if( string.IsNullOrEmpty( dragNode.nodeName ) ) { - dragNode = null; - return false; - } - return true; - } - - - public bool DragButton( Rect r, string label, GUIStyle style ) { - bool clicked = ( Event.current.type == EventType.mouseDown && Event.current.button == 0 ); - GUI.Button( r, label, style ); - bool hover = r.Contains( Event.current.mousePosition ); - return ( hover && clicked ); - } - - - - public List GetNodeList() { - return showFiltered ? filtered : unfiltered; - } - - - public void OnSearchStringChanged() { - if( string.IsNullOrEmpty( searchString ) ) { - OnSearchStringCleared(); - return; - } - showFiltered = true; - - RefreshFilter(); - - } - - public void OnSearchStringCleared() { - showFiltered = false; - } - - - - public void RefreshFilter() { - filtered.Clear(); - - /*foreach( KeyValuePair> entry in unfiltered ) { - if( Match(entry.Key.name, searchString) ) { - filtered.Add(entry.Key,entry.Value); - } - }*/ - - foreach( SF_EditorNodeData entry in unfiltered ) { - if( Match( entry.nodeName, searchString ) ) { - filtered.Add( entry ); - } - } - - } - - private bool Match( string a, string b ) { - return Clean( a ).Contains( Clean( b ) ); - } - - private string Clean( string s ) { - return s.Trim().Replace( " ", string.Empty ).ToLower(); - } - - - - } -} \ No newline at end of file diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/SF_EditorNodeBrowser.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/SF_EditorNodeBrowser.cs.meta deleted file mode 100755 index a8dd3895..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/SF_EditorNodeBrowser.cs.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: 8317eafd51c2b41ee9f29c20218164f3 -MonoImporter: - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/SF_EditorNodeData.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/SF_EditorNodeData.cs deleted file mode 100755 index 852eb163..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/SF_EditorNodeData.cs +++ /dev/null @@ -1,354 +0,0 @@ -using UnityEngine; -using System.Collections; -using System.Collections.Generic; -using System; - -namespace ShaderForge { - - [System.Serializable] - public class SF_EditorNodeData : ScriptableObject { - - [SerializeField] - KeyCode key; - [SerializeField] - public bool holding = false; - [SerializeField] - public string nodeName; - [SerializeField] - private string nodeNameSearch; - - public string SearchName{ - get{ - if(string.IsNullOrEmpty(nodeNameSearch)){ - return nodeName; - } else { - return nodeNameSearch; - } - } - set{ - nodeNameSearch = value; - } - } - - [SerializeField] - public string type; - [SerializeField] - public bool isNew = false; - [SerializeField] - public bool isUnstable = false; - [SerializeField] - public string fullPath; - [SerializeField] - public string category; - [SerializeField] - public bool isProperty = false; - [SerializeField] - public bool availableInDeferredPrePass = true; - - - - public SF_EditorNodeData() { - - } - - public void OnEnable() { - base.hideFlags = HideFlags.HideAndDontSave; - } - - public SF_EditorNodeData Initialize( string type, string fullPath, KeyCode key = KeyCode.None ) { - holding = false; - this.type = type; - ParseCategoryAndName( fullPath ); - this.key = key; - - if( type.Contains( "SFN_Color" ) || - type.Contains( "SFN_Cubemap" ) || - type.Contains( "SFN_Slider" ) || - type.Contains( "SFN_Tex2d" ) || - type.Contains( "SFN_Tex2dAsset" ) || - type.Contains( "SFN_Vector4Property" ) || - type.Contains( "SFN_ValueProperty" ) || - type.Contains( "SFN_ToggleProperty" ) || - type.Contains( "SFN_SwitchProperty" ) || - type.Contains( "SFN_Matrix4x4Property" ) - ) - isProperty = true; - - return this; - } - - public void ParseCategoryAndName(string fullPath) { - - this.fullPath = fullPath; - - string[] split = fullPath.Split( '/' ); - if( split.Length > 1 ) { - this.category = split[0]; - this.nodeName = split[1]; - } else { - this.nodeName = fullPath; - } - - } - - - public SF_Node CreateInstance() { - - Type fType = Type.GetType( type ); - - // Might be dynamic... - if( fType == null ) { - if(SF_Debug.dynamicNodeLoad) - Debug.Log( "CreateInstance couldn't use GetType, attempting dynamic load..." ); - fType = SF_Editor.GetNodeType( type ); - if( SF_Debug.dynamicNodeLoad && fType == null ) - Debug.Log( "Failed to load dynamic load fType is null" ); - } - - - SF_Node node = (SF_Node)ScriptableObject.CreateInstance( fType ); - node.Initialize(); - return node; - } - - public SF_EditorNodeData MarkAsNewNode() { - isNew = true; - return this; - } - - public SF_EditorNodeData MarkAsUnstableNode() { - isUnstable = true; - return this; - } - - public SF_EditorNodeData UavailableInDeferredPrePass(){ - availableInDeferredPrePass = false; - return this; - } - - public float smoothHotkeySelectorIndex = 0f; - public int defaultHotkeySelectorIndex = 0; - public int hotkeySelectorIndex = 0; - [SerializeField] - private List hotkeyFriends; - public List HotkeyFriends{ - get{ - if(hotkeyFriends == null){ - hotkeyFriends = new List(); - } - - if(hotkeyFriends.Count == 0){ - int i=0; - foreach( SF_EditorNodeData node in SF_Editor.instance.nodeTemplates){ - if(node == this) - smoothHotkeySelectorIndex = hotkeySelectorIndex = defaultHotkeySelectorIndex = i; - if(node.key == key || KeyCodeToChar(key) == char.ToUpper(node.nodeName[0])){ - hotkeyFriends.Add(node); - i++; - } - - } - } - return hotkeyFriends; - } - } - - - public char KeyCodeToChar(KeyCode kc){ - string s = kc.ToString(); - if(s.StartsWith("Alpha")) // Numbers 0 to 9 are called "Alpha5" etc. Extract just the numeral as the returned character - return s[5]; - return s[0]; - } - - [SerializeField] - private static GUIStyle popupButtonStyle; - public static GUIStyle PopupButtonStyle{ - get{ - if(popupButtonStyle == null){ - popupButtonStyle = new GUIStyle(SF_Styles.NodeStyle); - popupButtonStyle.alignment = TextAnchor.UpperLeft; - RectOffset ro = popupButtonStyle.padding; - ro.left = 4; - popupButtonStyle.padding = ro; - } - return popupButtonStyle; - } - } - - public Vector2 quickpickerStartPosition = Vector2.zero; - - public SF_EditorNodeData CheckHotkeyInput(bool mouseOverSomeNode) { - - bool mouseInNodeView = SF_Editor.instance.nodeView.MouseInsideNodeView(false); - - - if(Event.current.type == EventType.repaint){ - smoothHotkeySelectorIndex = Mathf.Lerp(smoothHotkeySelectorIndex, hotkeySelectorIndex, 0.5f); - } - - bool useScroll = SF_Settings.quickPickScrollWheel; - - if(holding && Event.current.type == EventType.scrollWheel && HotkeyFriends.Count > 0 && mouseInNodeView){ - - if(useScroll){ - hotkeySelectorIndex += (int)Mathf.Sign(Event.current.delta.y); - hotkeySelectorIndex = Mathf.Clamp(hotkeySelectorIndex, 0, HotkeyFriends.Count-1); - } - - - // hotkeySelectorIndex = ( hotkeySelectorIndex + HotkeyFriends.Count ) % HotkeyFriends.Count; // Wrap - Event.current.Use(); - } - - if( key == KeyCode.None ) - return null; - - if( Event.current.keyCode == key ) { - if( Event.current.type == EventType.keyDown && !SF_GUI.HoldingControl() && holding == false && mouseInNodeView ){ - - hotkeySelectorIndex = defaultHotkeySelectorIndex; - smoothHotkeySelectorIndex = defaultHotkeySelectorIndex; - - quickpickerStartPosition = Event.current.mousePosition; - - holding = true; - } - if( Event.current.rawType == EventType.keyUp ){ - holding = false; - } - } - - - - if(holding && !mouseOverSomeNode){ - - - - - float width = 166f; // nodeName.Length*8 + 10; - Rect dispPos = new Rect(0, 0, width, 36); - - Vector2 centerPos = useScroll ? Event.current.mousePosition : quickpickerStartPosition; - - dispPos.center = centerPos; - dispPos.y -= dispPos.height*0.3333f; - - // - //GUI.Box(dispPos, nodeName, GUI.skin.button); - // - - - - // Draw hotkey node picker - //if(Event.current.type == EventType.keyDown){ - //Debug.Log(Event.current.keyCode); - Rect nRect = dispPos; //new Rect(0,0,128,32); - nRect.center = centerPos - Vector2.up*nRect.height*0.3333f; - //nRect = nRect.MovedRight(); - if(useScroll) - nRect.y -= nRect.height * smoothHotkeySelectorIndex; - else - nRect.y -= nRect.height * defaultHotkeySelectorIndex; - //if(Event.current.keyCode != KeyCode.None){ - - Color prevCol = GUI.color; - - - - int i = 0; - foreach( SF_EditorNodeData node in HotkeyFriends){ - //float dist = Mathf.Abs(smoothHotkeySelectorIndex - i); - //float alpha = Mathf.Clamp(1f-Mathf.Clamp01(dist*0.25f), 0.2f, 0.8f); - - - float offset = 0f;//(dist*dist)/3f; - - - - - //if(i == hotkeySelectorIndex){ - //alpha = 1; - //offset -= 8f; - //GUI.Box(nRect, node.nodeName, PopupButtonStyle); - //} - Rect newNRect = nRect; - newNRect.x += offset; - - - if(!useScroll && newNRect.Contains(Event.current.mousePosition)){ - hotkeySelectorIndex = i; - } - - bool selected = (i == hotkeySelectorIndex); - - if( selected ) - GUI.color = new Color(1f,1f,1f,1f); - else - GUI.color = new Color(0.6f,0.6f,0.6f,0.5f); - - if(node.isProperty){ - GUI.color *= SF_Node.colorExposed; - } - - - Texture2D icon = SF_Resources.LoadNodeIcon( node.type.Split('.')[1].ToLower() ); - - if(icon != null){ - newNRect.width -= newNRect.height; - } - - //if(useScroll){ - GUI.Box(newNRect, node.nodeName, PopupButtonStyle); - //} else { - //if(GUI.Button(newNRect, node.nodeName, PopupButtonStyle)){ - //hotkeySelectorIndex = i; - //} - //} - - - - - if(icon != null){ - Rect iconRect = newNRect; - iconRect = iconRect.MovedRight(); - iconRect.width = iconRect.height; - GUI.color = selected ? Color.white : new Color(1f,1f,1f,0.4f); - GUI.DrawTexture(iconRect, icon); - - } - - - - - nRect = nRect.MovedDown(); - - i++; - } - GUI.color = prevCol; - - - - //} - if(Event.current.type == EventType.keyDown/* && Event.current.type == EventType.layout*/ /*&& GUI.GetNameOfFocusedControl() == "defocus"*/){ - Event.current.Use(); - } - //} - - //} - - //GUI.Label(new Rect(Event.current.mousePosition.x, Event.current.mousePosition.y, 256,32),"currentindex = " + hotkeySelectorIndex); - } - - - - - bool clicked = Event.current.type == EventType.mouseDown; - if(holding && clicked){ - return HotkeyFriends[hotkeySelectorIndex]; - } else { - return null; - } - } - } -} \ No newline at end of file diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/SF_EditorNodeData.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/SF_EditorNodeData.cs.meta deleted file mode 100755 index 31f08f62..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/SF_EditorNodeData.cs.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: 89068dde132014929a5aa4e450ff685b -MonoImporter: - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/SF_EditorNodeView.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/SF_EditorNodeView.cs deleted file mode 100755 index e744c5de..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/SF_EditorNodeView.cs +++ /dev/null @@ -1,953 +0,0 @@ -using UnityEngine; -using UnityEditor; -using System.Collections; -using System.Collections.Generic; -using System.Xml; -using System.IO; -using System.Linq; - -namespace ShaderForge { - - public enum ConnectionLineStyle { Bezier, Linear, Rectilinear }; - - [System.Serializable] - public class SF_SetNodeSource { - - public SF_NodeConnector con; - - public SF_SetNodeSource( SF_Node node ) { - con = node.connectors[0]; - } - - public int NodeID { - get { return con.node.id; } - } - - public string Name { - get { return con.node.variableName; } - } - - } - - [System.Serializable] - public class SF_EditorNodeView : ScriptableObject { - - SF_Editor editor; - - const int TOOLBAR_HEIGHT = 18; - [SerializeField] - public Vector2 cameraPos = Vector3.zero; - - [SerializeField] - bool panCamera = false; - - [SerializeField] - Vector2 mousePosStart; - public Rect rect; - public GUIStyle toolbarStyle; - - public List relayInSources; - public string[] relayInNames; - - public SF_SelectionManager selection; - - public SF_NodeTreeStatus treeStatus; - - - - - - public SF_EditorNodeView() { - - } - - public void OnEnable() { - base.hideFlags = HideFlags.HideAndDontSave; - } - - - public void RefreshRelaySources() { - relayInSources = new List(); - for( int i = 0; i < editor.nodes.Count; i++ ) { - if( editor.nodes[i] is SFN_Set ) { - relayInSources.Add( new SF_SetNodeSource(editor.nodes[i]) ); - } - } - relayInSources.Sort( ( a, b ) => a.Name.CompareTo( b.Name ) ); - relayInNames = relayInSources.Select( x => x.Name ).ToArray(); - } - - // Only the node ID is serialized - this is used to ensure proper display in the GUI - // Returns -1 if the relay ID is missing - public int NodeIdToRelayId(int nodeId) { - if( relayInSources != null ) { - for( int i = 0; i < relayInSources.Count; i++ ) { - if( relayInSources[i].NodeID == nodeId ) { - return i; - } - } - } - return -1; - } - - public SF_EditorNodeView Initialize( SF_Editor editor ) { - this.editor = editor; - selection = ScriptableObject.CreateInstance().Initialize( editor ); - treeStatus = ScriptableObject.CreateInstance().Initialize(editor); - rect = new Rect(); - cameraPos = new Vector2( 32768 - 400, 32768 - 300 ); - toolbarStyle = new GUIStyle( EditorStyles.toolbar ); - toolbarStyle.fixedHeight = TOOLBAR_HEIGHT; - return this; - } - - - // Erasing nodes with cut line: (alt+RMB) - - public Vector2 cutStart = Vector3.zero; - public bool isCutting = false; - - public void StartCutting(){ - isCutting = true; - cutStart = editor.nodeView.GetNodeSpaceMousePos(); - } - - public void StopCutting(){ - List disconnectors = new List(); - for (int i = 0; i < editor.nodes.Count; i++) { - SF_Node n = editor.nodes [i]; - for (int j = 0; j < n.connectors.Length; j++) { - SF_NodeConnector con = n.connectors [j]; - if (con.IsConnected () && con.conType == ConType.cInput) { - if (con.conLine.aboutToBeDeleted) { - disconnectors.Add(con); - } - } - } - } - - if(disconnectors.Count == 0){ - isCutting = false; - return; - } - - UnmarkDeleteHighlights(); - - //Undo.RecordObject((Object)con, "cut" - string undoMsg = "cut "; - if(disconnectors.Count > 1){ - undoMsg += disconnectors.Count + " "; - undoMsg += "connections"; - } else { - undoMsg += "connection: "; - undoMsg += disconnectors[0].node.nodeName; - undoMsg += "[" + disconnectors[0].label + "]"; - undoMsg += " <--- "; - undoMsg += "[" + disconnectors[0].inputCon.label + "]"; - undoMsg += disconnectors[0].inputCon.node.nodeName; - } // = disconnectors.Count > 1 ? "cut "+disconnectors.Count+" connections" : "cut connection " + disconnectors[i].node.name + "[" + - - foreach(SF_NodeConnector con in disconnectors){ - Undo.RecordObject(con, undoMsg); - } - - foreach(SF_NodeConnector con in disconnectors){ - con.Disconnect(); - } - - isCutting = false; - - } - - public void UnmarkDeleteHighlights(){ - foreach(SF_Node n in editor.nodes){ - foreach(SF_NodeConnector con in n.connectors){ - if(con.IsConnected() && con.conType == ConType.cInput){ - con.conLine.aboutToBeDeleted = false; - } - } - } - } - - - public float zoom = 1f; - public float zoomTarget = 1f; - - public void SetZoom(float setZoom){ - Vector2 oldWidth = new Vector2(rect.width,rect.height)/zoom; - zoom = ClampZoom(setZoom); - Vector2 newWidth = new Vector2(rect.width,rect.height)/zoom; - Vector2 delta = newWidth - oldWidth; - - Vector2 normalizedMouseCoords = (Event.current.mousePosition - new Vector2(editor.separatorLeft.rect.xMax,editor.TabOffset)); - - normalizedMouseCoords.x /= rect.width; - normalizedMouseCoords.y /= rect.height; - - - - cameraPos -= Vector2.Scale(delta, normalizedMouseCoords); - - if(delta.sqrMagnitude != 0f){ - - - // Correct in here to prevent going outside the bounds - BoundsAdjustCamera(); - } - - - if(zoom == 1f) - SnapCamera(); - - } - - - - public void BoundsAdjustCamera(){ - /* - Rect wrapped = GetNodeEncapsulationRect().Margin(256); - Rect view = ScreenSpaceToZoomSpace(rect); - - Vector2 toCenter = (view.center - wrapped.center)*0.5f; - - float camBottom = cameraPos.y + rect.height/zoom - 22; - float camTop = cameraPos.y; - float camRight = cameraPos.x + rect.width/zoom - editor.separatorLeft.rect.xMax; - float camLeft = cameraPos.x - editor.separatorLeft.rect.xMax; - - Vector2 deltaTotal = Vector2.zero; - - if( camBottom > wrapped.yMax) - deltaTotal -= new Vector2(0f,camBottom-wrapped.yMax); - if(camTop < wrapped.yMin){ - deltaTotal -= new Vector2(0f,camTop-wrapped.yMin); - } - if(camRight > wrapped.xMax) - deltaTotal -= new Vector2(camRight-wrapped.xMax,0f); - if(camLeft < wrapped.xMin) - deltaTotal -= new Vector2(camLeft-wrapped.xMin,0f); - - cameraPos += deltaTotal; - -*/ - - } - - - public float ClampZoom(float in_zoom){ - return Mathf.Clamp(in_zoom,0.125f,1f); - } - - - public void OnLocalGUI( Rect r ) { - - - //r = r.PadTop(Mathf.CeilToInt(22*zoom)); - - - - - - editor.mousePosition = Event.current.mousePosition; - rect = r; - - - - // TOOLBAR - //DrawToolbar( new Rect( rect.x, rect.y, rect.width, TOOLBAR_HEIGHT ) ); - - - - Rect localRect = new Rect( r ); - localRect.x = 0; - localRect.y = 0; - - //rect.y += TOOLBAR_HEIGHT; - //rect.height -= TOOLBAR_HEIGHT; - - - - - // VIEW - Rect rectInner = new Rect( rect ); - rectInner.width = float.MaxValue / 2f; - rectInner.height = float.MaxValue / 2f; - - - // TEMP: -// Rect btn = rectInner; -// btn.width = 64; -// btn.height = 24; -// if(SF_Debug.renderDataNodes){ -// if(selection.Selection.Count > 0){ -// if(GUI.Button(btn,"NSS")){ -// editor.TakeNodePreviewScreenshot(); -// } -// } -// } - - - - if(Event.current.type == EventType.repaint){ - nodeSpaceMousePos = ScreenSpaceToZoomSpace( Event.current.mousePosition ); - - } - - - - - - bool mouseOverNode = false; - - - - - SF_ZoomArea.Begin(zoom,rect,cameraPos); - { - selection.OnGUI(); // To detect if you press things - if(editor.nodeView != null) - editor.nodeView.selection.DrawBoxSelection(); - - if(Event.current.type == EventType.repaint){ - viewSpaceMousePos = ZoomSpaceToScreenSpace( Event.current.mousePosition ); - } - // NODES - if( editor.nodes != null ) { - - // If we're repainting, draw in reverse to sort properly - //if(Event.current.rawType == EventType.repaint){ - for (int i = editor.nodes.Count - 1; i >= 0; i--) { - if( !editor.nodes[i].Draw() ) - break; - } - /*} else { - for(int i=0;i 0 ) { - Object dragObj = DragAndDrop.objectReferences[0]; - if( dragObj is Texture2D || dragObj is ProceduralTexture || dragObj is RenderTexture ) { - DragAndDrop.visualMode = DragAndDropVisualMode.Link; - if( !editor.nodeBrowser.IsPlacing() ) - editor.nodeBrowser.OnStartDrag( editor.GetTemplate() ); - else - editor.nodeBrowser.UpdateDrag(); - } else if(dragObj is ProceduralMaterial){ - DragAndDrop.visualMode = DragAndDropVisualMode.Link; - } else { - DragAndDrop.visualMode = DragAndDropVisualMode.Rejected; - } - } else { - DragAndDrop.visualMode = DragAndDropVisualMode.Rejected; - } - } - - - - - - - // If release - if( MouseInsideNodeView( false ) && Event.current.type == EventType.mouseUp) { - bool ifCursorStayed = Vector2.SqrMagnitude( mousePosStart - Event.current.mousePosition ) < SF_Tools.stationaryCursorRadius; - - if( ifCursorStayed && !SF_GUI.MultiSelectModifierHeld() ) - selection.DeselectAll(registerUndo:true); - - - //editor.Defocus( deselectNodes: ifCursorStayed ); - } - - if( SF_GUI.ReleasedRawLMB() ) { - SF_NodeConnector.pendingConnectionSource = null; - } - - // If press - if( Event.current.type == EventType.mouseDown && MouseInsideNodeView( false ) ) { - //bool ifNotHoldingModifier = !SF_GUI.MultiSelectModifierHeld(); - mousePosStart = Event.current.mousePosition; - editor.Defocus(); - } - - - if(!editor.screenshotInProgress){ - - Rect logoRect = rect; - logoRect.y -= 14; - logoRect.x += 1; - logoRect.width = SF_GUI.Logo.width; - logoRect.height = SF_GUI.Logo.height; - GUI.color = new Color(1f,1f,1f,0.5f); - GUI.DrawTexture( logoRect, SF_GUI.Logo ); - - logoRect.y += logoRect.height; - logoRect.height = 16; - - GUI.Label(logoRect, "v"+SF_Tools.version, EditorStyles.boldLabel); - GUI.color = Color.white; - - - } - - - } - - - public void OnDroppedSubstance(ProceduralMaterial procMat){ - - Texture diffuse = TryGetProceduralTexture(procMat, "_MainTex"); - Texture normal = TryGetProceduralTexture(procMat, "_BumpMap"); - //Texture parallax = TryGetProceduralTexture(procMat, "_ParallaxMap"); - //Texture emission = TryGetProceduralTexture(procMat, "_Illum"); - //TryGetProceduralTexture("_MainTex"); - - SF_Node prevNode = TryLinkIfExistsAndOpenSlotAvailable(diffuse, "MainTex", editor.mainNode.diffuse, "RGB"); - TryLinkIfExistsAndOpenSlotAvailable(normal, "BumpMap", editor.mainNode.normal, "RGB", prevNode); - - - } - - // For connecting procedural materials to the main node - public SF_Node TryLinkIfExistsAndOpenSlotAvailable(Texture tex, string propertyName, SF_NodeConnector connector, string outChannel, SF_Node prevNode = null){ - - if(tex){ - SFN_Tex2d tNode = editor.AddNode(); - if(prevNode != null){ - Rect r = tNode.rect; - r = r.MovedDown(1); - r.y += 64; - tNode.rect = r; - } - tNode.TextureAsset = tex; - tNode.property.SetName(propertyName); - tNode.OnAssignedTexture(); - if(connector.enableState == EnableState.Enabled && connector.availableState == AvailableState.Available && !connector.IsConnected()){ - connector.LinkTo(tNode[outChannel]); - } - return tNode; - } - return null; - } - - public Texture TryGetProceduralTexture(ProceduralMaterial procMat, string propName){ - Texture returnTex = null; - try{ - if(procMat.HasProperty(propName)) - returnTex = procMat.GetTexture(propName); - } catch (UnityException e){ - e.Equals(e); - } - return returnTex; - } - - - - - public void UpdateCutLine(){ - - if(SF_GUI.HoldingAlt() && Event.current.type == EventType.mouseDown && Event.current.button == 1){ // Alt + RMB drag - StartCutting(); - } else if(SF_GUI.ReleasedRawRMB()){ - StopCutting(); - } - - if(isCutting){ - Vector2 cutEnd = GetNodeSpaceMousePos(); - - GUILines.DrawDashedLine(editor, cutStart, cutEnd, Color.white, 5f); - - - foreach(SF_Node n in editor.nodes){ - foreach(SF_NodeConnector con in n.connectors){ - if(con.IsConnected() && con.conType == ConType.cInput && con.enableState != EnableState.Hidden){ - Vector2 intersection = Vector2.zero; - if(con.conLine.Intersects(cutStart, cutEnd, out intersection)){ - - con.conLine.aboutToBeDeleted = true; - - Vector2 hit = editor.nodeView.ScreenSpaceToZoomSpace(intersection); - - float scale = 5f; - float scaleDiff = 0.95f; - //Vector2 rg, up, lf, dn; - - - //Vector2 localRight = (cutStart-cutEnd).normalized; - //Vector2 localUp = new Vector2(localRight.y,-localRight.x); - - //rg = hit + localRight * scale; - //up = hit + localUp * scale; - //lf = hit - localRight * scale; - //dn = hit - localUp * scale; - Color c0 = new Color(1f,0.1f,0.1f,0.9f); - Color c1 = new Color(1f,0.1f,0.1f,0.7f); - Color c2 = new Color(1f,0.1f,0.1f,0.5f); - Color c3 = new Color(1f,0.1f,0.1f,0.3f); - - GUILines.DrawDisc(hit,scale,c0); - GUILines.DrawDisc(hit,scale-scaleDiff,c1); - GUILines.DrawDisc(hit,scale-scaleDiff*2,c2); - GUILines.DrawDisc(hit,scale-scaleDiff*3,c3); - - //GUILines.DrawLine(rg,up,Color.red,2f,true); - //GUILines.DrawLine(up,lf,Color.red,2f,true); - //GUILines.DrawLine(lf,dn,Color.red,2f,true); - //GUILines.DrawLine(dn,rg,Color.red,2f,true); - - - - - - continue; - } else { - con.conLine.aboutToBeDeleted = false; - } - } - } - } - - - } - - } - - - - public Rect GetNodeEncapsulationRect(){ - - Rect r = editor.nodes[0].rect; // No need for null check, there should always be a main node - foreach( SF_Node n in editor.nodes ) { - r = SF_Tools.Encapsulate( r, n.rect ); - } - return r; - - } - - public void CenterCamera() { - - // Find midpoint of all nodes - Rect r = GetNodeEncapsulationRect(); - - // Move Camera - cameraPos = r.center - new Vector2( 0f, Screen.height * 0.5f ); - SnapCamera(); - } - - - - - public void ContextClick( object o ) { - // Add node - SF_EditorNodeData nodeData = o as SF_EditorNodeData; - editor.AddNode( nodeData, true ); - } - - - - public void UpdateDebugInput() { - - if( Event.current.type != EventType.keyDown ) - return; - - if( Event.current.keyCode == KeyCode.UpArrow ) { - HierarchalRefresh(); - } - - - if( Event.current.keyCode == KeyCode.DownArrow ) { - Debug.Log( GetNodeDataSerialized() ); - } - - - } - - - public void AssignDepthValuesToNodes() { - foreach( SF_Node n in editor.nodes ) { - n.depth = 0; - } - // Recurse some depth! - // TODO: Run this for disconnected islands of nodes too - //Debug.Log("SFN_FINAL exists = " + (editor.materialOutput != null)); - AddDepthToChildrenOf( editor.mainNode, 0 ); - } - - void AddDepthToChildrenOf( SF_Node n, int carry ) { - carry++; - n.depth = Mathf.Max( carry, n.depth ); ; - for( int i = 0; i < n.connectors.Length; i++ ) { - if( n.connectors[i].conType == ConType.cOutput ) // Ignore outputs, we came from here! - continue; - if( !n.connectors[i].IsConnected() ) // Ignore unconnected inputs - continue; - AddDepthToChildrenOf( n.connectors[i].inputCon.node, carry ); - } - } - - public void HierarchalRefresh() { - -// AssignDepthValuesToNodes(); -// -// int maxDepth = 0; // Deepest level -// foreach( SF_Node n in editor.nodes ) { -// if( maxDepth < n.depth ) -// maxDepth = n.depth; -// } -// -// -// // Relink everything -// int depth = maxDepth; -// while( depth > 0 ) { -// for(int i=0; i 0 ) { - foreach( SF_Node n in editor.nodes ) { - if( n.depth == depth ) { - //n.RefreshValue(); - //n.OnUpdateNode( NodeUpdateType.Soft ); - } - - } - depth--; - } - * */ - - } - - - public void ReconnectConnectedPending() { - AssignDepthValuesToNodes(); - - int maxDepth = 0; // Deepest level - foreach( SF_Node n in editor.nodes ) { - if( maxDepth < n.depth ) - maxDepth = n.depth; - } - - - int depth = maxDepth; - while( depth > 0 ) { - //foreach( SF_Node n in editor.nodes ) { - for( int i = 0; i < editor.nodes.Count; i++ ) { - SF_Node n = editor.nodes[i]; - if( n.depth == depth ) { - foreach( SF_NodeConnector con in n.connectors ) { - if( con.conType == ConType.cOutput ) - continue; - if( !con.IsConnectedAndEnabled() ) - continue; - if( con.valueType != ValueType.VTvPending ) - continue; - con.inputCon.LinkTo( con, LinkingMethod.Default ); - } - } - } - depth--; - } - } - - - - - public string GetNodeDataSerialized() { - - // TODO; move parts of this to their respective places - - string header = ""; - header += "// Shader created with " + SF_Tools.versionString + " \n"; - header += "// Shader Forge (c) Freya Holmer - http://www.acegikmo.com/shaderforge/\n"; - header += "// Note: Manually altering this data may prevent you from opening it in Shader Forge\n"; - header += "/" + "*"; // Hurgh! - - string sData = ""; - sData += "SF_DATA;"; // TODO: Multi-pass, shader settings etc - sData += "ver:" + SF_Tools.version + ";"; - sData += "sub:START;"; - sData += "pass:START;"; - sData += editor.ps.Serialize() + ";"; - - foreach( SF_Node node in editor.nodes ) - sData += node.Serialize(false,useSuffixPrefix:true); - - if(editor.nodeView.treeStatus.propertyList.Count > 0) - sData += editor.nodeView.treeStatus.SerializeProps() + ";"; - - string footer = "pass:END;sub:END;"; - footer += "*" + "/"; - return ( header + sData + footer ); - } - - public float lastChangeTime; - - float GetTime(){ - return (float)EditorApplication.timeSinceStartup; - } - - public float GetTimeSinceChanged(){ - return GetTime() - lastChangeTime; - } - - public void DrawRecompileTimer(Rect r){ - - if(!SF_Settings.autoCompile) - return; // Don't draw recompile timer when autoRecompile is unchecked - - float delta = GetTimeSinceChanged(); - - if(delta > 1.12f) - return; - - r.width *= Mathf.Clamp01(delta); - if(SF_GUI.ProSkin){ - GUI.Box(r,string.Empty); - GUI.Box(r,string.Empty); - GUI.Box(r,string.Empty); - } else { - GUI.color = new Color(1f,1f,1f,0.4f); - GUI.Box(r,string.Empty); - GUI.color = Color.white; - } - } - - void DrawToolbar( Rect r ) { - - } - - void UpdateCameraPanning() { - - - if( SF_GUI.ReleasedCameraMove() ) { - panCamera = false; - } - - bool insideNodeView = MouseInsideNodeView( true ); - bool dragging = ( Event.current.type == EventType.MouseDrag && panCamera ); - bool connecting = SF_NodeConnector.IsConnecting(); - bool rotatingPreview = editor.preview.isDraggingLMB; - bool placingNode = editor.nodeBrowser.IsPlacing(); - bool draggingSeparators = editor.DraggingAnySeparator(); - - - if(connecting){ - // Pan camera when cursor nears edges while making a connection - Vector2 mousePosInNodeViewScreenSpace = ZoomSpaceToScreenSpace(Event.current.mousePosition) - Vector2.right*editor.separatorLeft.rect.xMax; - - float areaWidth; - if(SF_Settings.showNodeSidebar) - areaWidth = editor.separatorRight.rect.xMin - editor.separatorLeft.rect.xMax; - else - areaWidth = Screen.width - editor.separatorLeft.rect.xMax; - float areaHeight = editor.nodeView.rect.height; - float dragPanMargin = 32f; - float panSpeed = 0.2f; - float leftMag = Mathf.Clamp(-mousePosInNodeViewScreenSpace.x + dragPanMargin, 0f, dragPanMargin); - float rightMag = Mathf.Clamp( mousePosInNodeViewScreenSpace.x - areaWidth + dragPanMargin, 0f, dragPanMargin); - float topMag = Mathf.Clamp( -mousePosInNodeViewScreenSpace.y + dragPanMargin , 0f, dragPanMargin); - float bottomMag = Mathf.Clamp( mousePosInNodeViewScreenSpace.y - areaHeight + dragPanMargin , 0f, dragPanMargin); - cameraPos += new Vector2(rightMag-leftMag, bottomMag-topMag)*panSpeed; - } - - - bool doingSomethingElse = connecting || rotatingPreview || placingNode || draggingSeparators; - bool dragInside = dragging && insideNodeView; - - if( dragInside && !doingSomethingElse ) { - - //if( !SF_GUI.MultiSelectModifierHeld() ) - // selection.DeselectAll(); - //Debug.Log("Delta: " + Event.current.delta); - cameraPos -= Event.current.delta; - SnapCamera(); - - BoundsAdjustCamera(); - editor.Defocus(); - //Debug.Log( "USING" ); - Event.current.Use(); - } - - - if( SF_GUI.PressedCameraMove() ) { - panCamera = true; - } - - - - } - - public Vector2 nodeSpaceMousePos; - public Vector2 viewSpaceMousePos; - - public Vector2 GetNodeSpaceMousePos() { - return nodeSpaceMousePos; - } - - - public bool MouseInsideNodeView( bool offset = false ) { - - if( offset ) { - return rect.Contains( viewSpaceMousePos/*ZoomSpaceToScreenSpace( Event.current.mousePosition )*/ ); - } else { - return rect.Contains( Event.current.mousePosition ); - } - - } - - void SnapCamera(){ - cameraPos.x = Mathf.Round(cameraPos.x); - cameraPos.y = Mathf.Round(cameraPos.y); - } - - - public Vector2 ZoomSpaceToScreenSpace( Vector2 in_vec ) { - return (in_vec - cameraPos + editor.separatorLeft.rect.TopRight() )*zoom + rect.TopLeft() + (Vector2.up * (editor.TabOffset))*(zoom-1); - } - public Rect ZoomSpaceToScreenSpace( Rect in_rect ) { - Vector2 offset = ZoomSpaceToScreenSpace(in_rect.TopLeft()); - in_rect.x = offset.x; - in_rect.y = offset.y; - in_rect.width /= zoom; - in_rect.height /= zoom; - //in_rect.x += -cameraPos.x; - //in_rect.y += -cameraPos.y; - return in_rect; - } - public Vector2 ScreenSpaceToZoomSpace( Vector2 in_vec ) { - return ( in_vec - (Vector2.up * (editor.TabOffset))*(zoom-1) - rect.TopLeft() ) / zoom - editor.separatorLeft.rect.TopRight() + cameraPos; - //return in_vec + cameraPos; - } - - // az + b + x(z-1) - - - public Rect ScreenSpaceToZoomSpace( Rect in_rect ) { - //in_rect.x -= -cameraPos.x; - //in_rect.y -= -cameraPos.y; - Vector2 offset = ScreenSpaceToZoomSpace(in_rect.TopLeft()); - in_rect.x = offset.x; - in_rect.y = offset.y; - in_rect.width *= zoom; - in_rect.height *= zoom; - - return in_rect; - } - - - } - -} - diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/SF_EditorNodeView.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/SF_EditorNodeView.cs.meta deleted file mode 100755 index 9de7ca8f..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/SF_EditorNodeView.cs.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: b1e7c52e807954f07b3d3f54461b3cc2 -MonoImporter: - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/SF_ErrorEntry.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/SF_ErrorEntry.cs deleted file mode 100755 index 55372afb..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/SF_ErrorEntry.cs +++ /dev/null @@ -1,66 +0,0 @@ -using UnityEngine; -using System.Collections; - - -namespace ShaderForge { - [System.Serializable] - public class SF_ErrorEntry : ScriptableObject { - - public SF_Node node; - public SF_NodeConnector con; - public string error; - public bool isWarning; - public int rows = 1; - public System.Action action; - - void OnEnable() { - hideFlags = HideFlags.HideAndDontSave; - } - - - public static SF_ErrorEntry Create( string error, bool isWarning ) { - SF_ErrorEntry entry = ScriptableObject.CreateInstance(); - entry.isWarning = isWarning; - entry.error = error; - entry.InitializeRows(); - return entry; - } - - public static SF_ErrorEntry Create( string error, SF_Node target, bool isWarning ) { - SF_ErrorEntry entry = ScriptableObject.CreateInstance(); - entry.isWarning = isWarning; - entry.node = target; - entry.error = error; - entry.InitializeRows(); - return entry; - } - - public static SF_ErrorEntry Create( string error, SF_NodeConnector target, bool isWarning ) { - SF_ErrorEntry entry = ScriptableObject.CreateInstance(); - entry.isWarning = isWarning; - entry.con = target; - entry.node = target.node; - entry.error = error; - entry.InitializeRows(); - return entry; - } - - void InitializeRows() { - rows = Mathf.CeilToInt( error.Length / 50f ); - } - - public void OnPress() { - if( action != null ) { - action.Invoke(); - } - } - - public Texture2D icon { - get { - return isWarning ? SF_Styles.IconWarningSmall : SF_Styles.IconErrorSmall; - } - } - - } - -} diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/SF_ErrorEntry.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/SF_ErrorEntry.cs.meta deleted file mode 100755 index 600d17b3..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/SF_ErrorEntry.cs.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: 14c91959058f04c62a8e3075652c4638 -MonoImporter: - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/SF_FeatureChecker.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/SF_FeatureChecker.cs deleted file mode 100755 index c4acdfa0..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/SF_FeatureChecker.cs +++ /dev/null @@ -1,141 +0,0 @@ -using UnityEngine; -using System.Collections; - -namespace ShaderForge { - [System.Serializable] - public class SF_FeatureChecker : ScriptableObject { - - [SerializeField] - SF_PassSettings ps; - - [SerializeField] - public SF_Editor editor; - - public SF_FeatureChecker Initialize( SF_PassSettings ps, SF_Editor editor ) { - this.ps = ps; - this.editor = editor; - return this; - } - - public void OnEnable() { - base.hideFlags = HideFlags.HideAndDontSave; - } - - - - // Diffuse & Diffuse Power - // if light mode is not unlit - - // Specular & Gloss - // if light mode is !(Unlit || Lambert) - - // Transmission - // if light mode is not Unlit - - // Light Wrapping - // if light mode is not Unlit - - public void UpdateAvailability() { - - bool deferredPp = ps.catLighting.renderPath == SFPSC_Lighting.RenderPath.Deferred; - bool unlit = (ps.catLighting.lightMode == SFPSC_Lighting.LightMode.Unlit); - bool pbr = (ps.catLighting.lightMode == SFPSC_Lighting.LightMode.PBL); - bool lit = !unlit; - - // Diffuse makes these available: Transmission, Light Wrapping, Ambient lighting, Diffuse Power - bool diffConnected = editor.mainNode.diffuse.IsConnectedAndEnabled(); - bool specConnected = editor.mainNode.specular.IsConnectedAndEnabled(); - - bool bakedData = ps.catLighting.bakedLight; - bool usesAmbient = ps.catLighting.useAmbient; - bool ambDiffConnected = ps.HasAmbientDiffuse(); - bool ambSpecConnected = ps.HasAmbientSpecular(); - - - - editor.mainNode.diffuse.SetAvailable( lit ); - editor.mainNode.diffusePower.SetAvailable( lit && diffConnected && !deferredPp ); - editor.mainNode.specular.SetAvailable( lit ); - editor.mainNode.gloss.SetAvailable( lit && ( specConnected || ( diffConnected && pbr ) )); - editor.mainNode.normal.SetAvailable( true ); - editor.mainNode.alpha.SetAvailable( !deferredPp ); - editor.mainNode.alphaClip.SetAvailable( true ); - editor.mainNode.refraction.SetAvailable( !deferredPp ); - editor.mainNode.emissive.SetAvailable( true ); - editor.mainNode.transmission.SetAvailable( lit && diffConnected && !deferredPp ); - - - - - - editor.mainNode.diffuseOcclusion.SetAvailable( lit && diffConnected && ( bakedData || usesAmbient || ambDiffConnected ) ); - editor.mainNode.specularOcclusion.SetAvailable( lit && specConnected && ( bakedData || ambSpecConnected ) ); // Masks ambient spec & directional lightmaps - - editor.mainNode.ambientDiffuse.SetAvailable( lit && diffConnected); - editor.mainNode.ambientSpecular.SetAvailable( lit && specConnected ); - editor.mainNode.customLighting.SetAvailable( !lit && !deferredPp ); - - editor.mainNode.lightWrap.SetAvailable( lit && diffConnected && !deferredPp ); - editor.mainNode.displacement.SetAvailable( editor.mainNode.tessellation.IsConnectedAndEnabled() ); - editor.mainNode.outlineColor.SetAvailable( editor.mainNode.outlineWidth.IsConnectedAndEnabled() && !deferredPp ); - editor.mainNode.outlineWidth.SetAvailable( !deferredPp ); - - - // Rename labels based on which lighting mode you're using - if(ps.catLighting.lightMode == SFPSC_Lighting.LightMode.PBL){ - if( ps.catLighting.specularMode == SFPSC_Lighting.SpecularMode.Metallic ){ - editor.mainNode.diffuse.label = "Base Color"; - editor.mainNode.specular.label = "Metallic"; - } else { - editor.mainNode.diffuse.label = "Albedo"; - editor.mainNode.specular.label = "Specular"; - } - } else { - editor.mainNode.diffuse.label = "Diffuse"; - editor.mainNode.specular.label = "Specular"; - } - - // Metallic is 1 component, specular has 3 components - if(ps.catLighting.lightMode == SFPSC_Lighting.LightMode.PBL && ps.catLighting.specularMode == SFPSC_Lighting.SpecularMode.Metallic ){ - editor.mainNode.specular.valueTypeDefault = ValueType.VTv1; - editor.mainNode.specular.SetValueType( ValueType.VTv1 ); - editor.mainNode.specular.TypecastTo( 1 ); - } else { - editor.mainNode.specular.valueTypeDefault = ValueType.VTvPending; - editor.mainNode.specular.SetValueType( ValueType.VTvPending ); - editor.mainNode.specular.TypecastTo( 3 ); - } - - - if( ps.catLighting.glossRoughMode == SFPSC_Lighting.GlossRoughMode.Roughness ) { - editor.mainNode.gloss.label = "Roughness"; - } else { - editor.mainNode.gloss.label = "Gloss"; - } - - if( ps.catGeometry.vertexOffsetMode == SFPSC_Geometry.VertexOffsetMode.Relative ) { - editor.mainNode.vertexOffset.label = "Vertex Offset"; - } else if( ps.catGeometry.vertexOffsetMode == SFPSC_Geometry.VertexOffsetMode.Absolute ) { - editor.mainNode.vertexOffset.label = "Vertex Position"; - } - - - - - - //editor.materialOutput.anisotropicDirection.SetAvailable( false ); - //editor.materialOutput.worldPositionOffset.SetAvailable( false ); - - - } - - - - - - - - - - } -} diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/SF_FeatureChecker.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/SF_FeatureChecker.cs.meta deleted file mode 100755 index 3006abc8..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/SF_FeatureChecker.cs.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: e295e3262ddd14ff299ea932442b948f -MonoImporter: - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/SF_InstructionPass.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/SF_InstructionPass.cs deleted file mode 100755 index 0ca7bb41..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/SF_InstructionPass.cs +++ /dev/null @@ -1,125 +0,0 @@ -using UnityEngine; -using System.Collections; -using System.Collections.Generic; -using System; - -namespace ShaderForge{ - - - public class SFIns_PassPlat { - public RenderPlatform plat; - public SF_MinMax vert = new SF_MinMax( 0, 0 ); - public SF_MinMax frag = new SF_MinMax( 0, 0 ); - public SF_MinMax vTex = new SF_MinMax( 0, 0 ); - public SF_MinMax fTex = new SF_MinMax( 0, 0 ); - - public SFIns_PassPlat(RenderPlatform plat){ - this.plat = plat; - } - - } - - - public class SFIns_Pass { - - - public List plats = new List(){ - new SFIns_PassPlat(RenderPlatform.d3d9), - new SFIns_PassPlat(RenderPlatform.d3d11), - new SFIns_PassPlat(RenderPlatform.glcore), - new SFIns_PassPlat(RenderPlatform.gles), - new SFIns_PassPlat(RenderPlatform.gles3), - new SFIns_PassPlat(RenderPlatform.metal), - new SFIns_PassPlat(RenderPlatform.d3d11_9x), - new SFIns_PassPlat(RenderPlatform.xboxone), - new SFIns_PassPlat(RenderPlatform.ps4), - new SFIns_PassPlat(RenderPlatform.psp2), - new SFIns_PassPlat(RenderPlatform.n3ds), - new SFIns_PassPlat(RenderPlatform.wiiu) - }; - - public void Parse(ShaderProgram prog, string line, bool ignoreMin ) { - - //Debug.Log("Parsing instruction count: line = " + line); - - // String style: - // "// opengl - ALU: 29 to 35" - // "// opengl - ALU: 7 to 15, TEX: 1 to 3" - - string[] split = line.Split(new char[] {' '}, StringSplitOptions.RemoveEmptyEntries); - - if( split.Length != 7 && split.Length != 11 && split.Length != 15 ) { - Debug.LogError( "Error parsing instruction count. Line did not have 7, 11 or 15 elements [" + line + "]. Length is: " + split.Length ); - return; - } - - if( split[1] == "flash" ) { - Debug.LogWarning( "Flash is no longer supported by Unity, and was removed from the shader" ); - return; - } - - if( split[1] == "ps3" ) { - Debug.LogWarning( "PS3 is no longer supported by Unity since 5.5, and was removed from the shader" ); - return; - } - - if( split[1] == "xbox360" ) { - Debug.LogWarning( "Xbox 360 is no longer supported by Unity since 5.5, and was removed from the shader" ); - return; - } - - if( split[1] == "opengl" ) { - split[1] = "glcore"; - } - - bool hasTex = ( split.Length == 11 ); - - object enumObj = Enum.Parse( typeof( RenderPlatform ), split[1] ); - - int enumID; - - if(enumObj != null){ - enumID = (int)enumObj; - } else { - return; - } - - - - if( prog == ShaderProgram.Frag ) { - if( !ignoreMin ) - plats[enumID].frag.min = IntParse( split[4] ); - plats[enumID].frag.max = IntParse( split[6] ); - if( hasTex ) { - if( !ignoreMin ) - plats[enumID].fTex.min = IntParse( split[8] ); - plats[enumID].fTex.max = IntParse( split[10] ); - } - } else if( prog == ShaderProgram.Vert ) { - if( !ignoreMin ) - plats[enumID].vert.min = IntParse( split[4] ); - plats[enumID].vert.max = IntParse( split[6] ); - if( hasTex ) { - if( !ignoreMin ) - plats[enumID].vTex.min = IntParse( split[8] ); - plats[enumID].vTex.max = IntParse( split[10] ); - } - } else { - Debug.LogError( "Tried to parse things in invalid program [" + prog + "]" ); - } - - //Debug.Log("Instr: " + split[1] + " "+ prog + " " + line + " ig: " + ignoreMin); - - - } - - public int IntParse( string s ) { - s = s.Replace(",",""); - return int.Parse(s); - } - - - - } - -} \ No newline at end of file diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/SF_InstructionPass.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/SF_InstructionPass.cs.meta deleted file mode 100755 index c4a94174..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/SF_InstructionPass.cs.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: 31b9629aa3f2942e796d40d1277bab28 -MonoImporter: - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/SF_NodeConnectionLine.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/SF_NodeConnectionLine.cs deleted file mode 100755 index f6a68b8f..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/SF_NodeConnectionLine.cs +++ /dev/null @@ -1,345 +0,0 @@ -using UnityEngine; -using System.Collections; - - -namespace ShaderForge{ - - - [System.Serializable] - public class SF_NodeConnectionLine : ScriptableObject { - - - public SF_NodeConnector connector; - public SF_Editor editor; - - public bool aboutToBeDeleted = false; - - public Vector2[] pointsBezier0; - public Vector2[] pointsBezier1; - public Vector2[] pointsBezier2; - public Vector2[] pointsBezier3; - - public Vector2[] pointsLinear0; - public Vector2[] pointsLinear1; - public Vector2[] pointsLinear2; - public Vector2[] pointsLinear3; - - public Vector2[] pointsRectilinear0; - public Vector2[] pointsRectilinear1; - public Vector2[] pointsRectilinear2; - public Vector2[] pointsRectilinear3; - - public Vector2[] this[ConnectionLineStyle style, int id]{ - get{ - switch(style){ - case ConnectionLineStyle.Bezier: - switch(id){ - case 0: - return pointsBezier0; - case 1: - return pointsBezier1; - case 2: - return pointsBezier2; - case 3: - return pointsBezier3; - } - break; - case ConnectionLineStyle.Linear: - switch(id){ - case 0: - return pointsLinear0; - case 1: - return pointsLinear1; - case 2: - return pointsLinear2; - case 3: - return pointsLinear3; - } - break; - case ConnectionLineStyle.Rectilinear: - switch(id){ - case 0: - return pointsRectilinear0; - case 1: - return pointsRectilinear1; - case 2: - return pointsRectilinear2; - case 3: - return pointsRectilinear3; - } - break; - } - Debug.LogError("Invalid this[style,id] attempt on NodeConnectionLink = " + style + " and " + id); - return null; - } - set{ - switch(style){ - case ConnectionLineStyle.Bezier: - switch(id){ - case 0: - pointsBezier0 = value; - return; - case 1: - pointsBezier1 = value; - return; - case 2: - pointsBezier2 = value; - return; - case 3: - pointsBezier3 = value; - return; - } - return; - case ConnectionLineStyle.Linear: - switch(id){ - case 0: - pointsLinear0 = value; - return; - case 1: - pointsLinear1 = value; - return; - case 2: - pointsLinear2 = value; - return; - case 3: - pointsLinear3 = value; - return; - } - return; - case ConnectionLineStyle.Rectilinear: - switch(id){ - case 0: - pointsRectilinear0 = value; - return; - case 1: - pointsRectilinear1 = value; - return; - case 2: - pointsRectilinear2 = value; - return; - case 3: - pointsRectilinear3 = value; - return; - } - return; - } - Debug.LogError("Invalid this[style,id] set attempt on NodeConnectionLink = " + style + " and " + id); - //return null; - } - } - - - - public void OnEnable() { - base.hideFlags = HideFlags.HideAndDontSave; - } - - - public SF_NodeConnectionLine Initialize(SF_Editor editor, SF_NodeConnector connector){ - this.connector = connector; - this.editor = editor; - return this; - } - - public bool DeleteImminent(){ - - bool thisIsPendingInput = (connector.conType == ConType.cInput) && (SF_NodeConnector.pendingConnectionSource == connector); - - return aboutToBeDeleted || connector.IsDeleteHovering(false) || connector.inputCon.IsDeleteHovering(false) || thisIsPendingInput; - } - - - public void Draw(){ - - if(aboutToBeDeleted && !connector.IsConnected()){ // It's disconnected, don't mark it anymore - aboutToBeDeleted = false; - } - - if(!connector.IsConnected()) - return; - - if(Event.current.rawType != EventType.repaint) - return; - - //Vector2 a = connector.GetConnectionPoint(); - //Vector2 b = connector.inputCon.GetConnectionPoint(); - int cc = connector.GetCompCount(); - bool isMatrix4x4 = ( cc == 16 ); - if( isMatrix4x4 ) { - cc = 1; - } - - Color color = DeleteImminent() ? new Color(1f,0f,0f,0.7f) : connector.GetConnectionLineColor(); - - // TEMP: - ReconstructShapes(); - - //GUILines.DrawStyledConnection( editor, a, b, cc, color); - - - //switch(SF_Settings.ConnectionLineStyle){ - //case ConnectionLineStyle.Bezier: - if( isMatrix4x4 ) { - //GUILines.DrawMatrixConnection( editor, connector.GetConnectionPoint(), connector.inputCon.GetConnectionPoint(), color ); - GUILines.DrawLines( editor, this[ConnectionLineStyle.Bezier, 0], color, GetConnectionWidth(), true ); - GUILines.DrawLines( editor, this[ConnectionLineStyle.Bezier, 1], color, GetConnectionWidth(), true, true ); - GUILines.DrawLines( editor, this[ConnectionLineStyle.Bezier, 2], color, GetConnectionWidth(), true ); - } else { - for( int i=0; i < cc; i++ ) { - GUILines.DrawLines( editor, this[ConnectionLineStyle.Bezier, i], color, GetConnectionWidth(), true ); - } - } - - //break; - //} - - - - } - - const float partOffsetFactor = 10f; - const float connectionWidth = 2f; - const int bezierSegments = 25; - - - private float GetConnectionWidth(){ - return DeleteImminent() ? 4f : connectionWidth; - } - - - - //Vector2 lastUpdatePosStart = Vector2.zero; - //Vector2 lastUpdatePosEnd = Vector2.zero; - //float lastUpdateCC = 0; - - - public void ReconstructShapes(){ - - - - //if( Event.current.type != EventType.repaint ) // To trigger it before painting! - // return; - - - float cc = connector.GetCompCount(); - if( cc == 16 ) - cc = 3; - - - - - //if( cc != lastUpdateCC ) { - // lastUpdateCC = cc; - // needsUpdate = true; - //} - - //Vector2 curPosStart = connector.inputCon.node.rect.position; - //Vector2 curPosEnd = connector.node.rect.position; - - //if( lastUpdatePosStart != curPosStart ) { - // lastUpdatePosStart = curPosStart; - // needsUpdate = true; - //} - - //if( lastUpdatePosEnd != curPosEnd ) { - // lastUpdatePosEnd = curPosEnd; - // needsUpdate = true; - //} - - - //if( needsUpdate ) { - //Debug.Log("Updating"); - float partOffset = partOffsetFactor / cc; - float mainOffset = -( cc - 1 ) * 0.5f * partOffset; - - float offset = 0; - - for( int i=0; i < cc; i++ ) { - offset = mainOffset + partOffset * i; - - - // TODO: Style branching - ReconstructBezier( offset, i ); - - - } - //} - - - //Debug.Log(this[ConnectionLineStyle.Bezier,0][0].ToString()); - - - - - } - - - - private void ReconstructBezier(float offset, int id){ - this[ConnectionLineStyle.Bezier,id] = GUILines.ConnectionBezierOffsetArray( - offset, - connector, - connector.inputCon, - bezierSegments - ); - } - - public bool Intersects(Vector2 p0, Vector2 p1, out Vector2 intersection){ - intersection = Vector2.zero; - -// p0 = editor.nodeView.ZoomSpaceToScreenSpace(p0); -// p1 = editor.nodeView.ZoomSpaceToScreenSpace(p1); - p0 = editor.nodeView.ZoomSpaceToScreenSpace(p0); - p1 = editor.nodeView.ZoomSpaceToScreenSpace(p1); // Double, for whatever reason - - float cc = connector.GetCompCount(); - if( cc == 16 || cc == 0 ) // Matrices - cc = 1; - - if(cc == 1){ - if(SF_Tools.LineIntersection(p0, p1, this[0, 0], out intersection)){ - return true; - } - } else if( cc == 2){ - - Vector2 intA = Vector2.zero; - Vector2 intB = Vector2.zero; - - bool hitA = SF_Tools.LineIntersection(p0, p1, this[0, 0], out intA); - bool hitB = SF_Tools.LineIntersection(p0, p1, this[0, 1], out intB); - - if(hitA && hitB){ - intersection = (intA + intB)/2; - return true; - } - - } else if(cc == 3){ - if(SF_Tools.LineIntersection(p0, p1, this[0, 1], out intersection)){ - return true; - } - }else if( cc == 4){ - - Vector2 intA = Vector2.zero; - Vector2 intB = Vector2.zero; - - bool hitA = SF_Tools.LineIntersection(p0, p1, this[0, 1], out intA); - bool hitB = SF_Tools.LineIntersection(p0, p1, this[0, 2], out intB); - - if(hitA && hitB){ - intersection = (intA + intB)/2; - return true; - } - } - - return false; - - - } - - - - - - } - -} diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/SF_NodeConnectionLine.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/SF_NodeConnectionLine.cs.meta deleted file mode 100755 index 9a8b744b..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/SF_NodeConnectionLine.cs.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: 584792dc3e3b749a5adc8f6fa95aad34 -MonoImporter: - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/SF_NodeConnector.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/SF_NodeConnector.cs deleted file mode 100755 index 3c79480c..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/SF_NodeConnector.cs +++ /dev/null @@ -1,1217 +0,0 @@ -using UnityEngine; -using UnityEditor; -using System.Collections; -using System.Collections.Generic; -using System.Reflection; -using System; - - -namespace ShaderForge { - - public enum ConType { cInput, cOutput }; - public enum OutChannel { RGB, R, G, B, A, All, RG }; - - public enum EnableState { Enabled, Disabled, Hidden }; - public enum AvailableState { Available, Unavailable }; - - public enum LinkingMethod { Default, NoUpdate }; - - public enum ValueType { VTvPending, VTv1, VTv2, VTv3, VTv4, VTv1v2, VTv1v3, VTv1v4, TexAsset, VTm4x4, VTv4m4x4 }; - - [System.Serializable] - public class SF_NodeConnector : ScriptableObject { - - - public static SF_NodeConnector pendingConnectionSource = null; - public AvailableState availableState = AvailableState.Available; - public EnableState enableState = EnableState.Enabled; - public bool required = false; - - public ConType conType; - public OutChannel outputChannel = OutChannel.All; - public ValueType valueType; - public ValueType valueTypeDefault; - [SerializeField] - private CustomValueType customValueType; - public CustomValueType CustomValueType{ // This is used when dealing with custom nodes - get{ - return customValueType; - } - set{ - CustomValueType cvtBef = customValueType; - customValueType = value; - bool changed = (customValueType != cvtBef); - if(changed){ - switch(customValueType){ - case CustomValueType.Float: - this.TypecastTo(1).WithColor(SF_NodeConnector.colorEnabledDefault).SetValueType(this.valueTypeDefault = ValueType.VTv1); - break; - case CustomValueType.Float2: - this.TypecastTo(2).WithColor(SF_NodeConnector.colorEnabledDefault).SetValueType(this.valueTypeDefault = ValueType.VTv2); - break; - case CustomValueType.Float3: - this.TypecastTo(3).WithColor(SF_NodeConnector.colorEnabledDefault).SetValueType(this.valueTypeDefault = ValueType.VTv3); - break; - case CustomValueType.Float4: - this.TypecastTo(4).WithColor(SF_NodeConnector.colorEnabledDefault).SetValueType(this.valueTypeDefault = ValueType.VTv4); - break; - case CustomValueType.Half: - this.TypecastTo(1).WithColor(SF_NodeConnector.colorEnabledDefault).SetValueType(this.valueTypeDefault = ValueType.VTv1); - break; - case CustomValueType.Half2: - this.TypecastTo(2).WithColor(SF_NodeConnector.colorEnabledDefault).SetValueType(this.valueTypeDefault = ValueType.VTv2); - break; - case CustomValueType.Half3: - this.TypecastTo(3).WithColor(SF_NodeConnector.colorEnabledDefault).SetValueType(this.valueTypeDefault = ValueType.VTv3); - break; - case CustomValueType.Half4: - this.TypecastTo(4).WithColor(SF_NodeConnector.colorEnabledDefault).SetValueType(this.valueTypeDefault = ValueType.VTv4); - break; - case CustomValueType.Fixed: - this.TypecastTo(1).WithColor(SF_NodeConnector.colorEnabledDefault).SetValueType(this.valueTypeDefault = ValueType.VTv1); - break; - case CustomValueType.Fixed2: - this.TypecastTo(2).WithColor(SF_NodeConnector.colorEnabledDefault).SetValueType(this.valueTypeDefault = ValueType.VTv2); - break; - case CustomValueType.Fixed3: - this.TypecastTo(3).WithColor(SF_NodeConnector.colorEnabledDefault).SetValueType(this.valueTypeDefault = ValueType.VTv3); - break; - case CustomValueType.Fixed4: - this.TypecastTo(4).WithColor(SF_NodeConnector.colorEnabledDefault).SetValueType(this.valueTypeDefault = ValueType.VTv4); - break; - case CustomValueType.Sampler2D: - this.TypecastTo(0).WithColor(SF_Node.colorExposed).SetValueType(this.valueTypeDefault = ValueType.TexAsset); - break; - case CustomValueType.Matrix4x4: - this.TypecastTo(0).WithColor(SF_NodeConnector.colorEnabledDefault).SetValueType(this.valueTypeDefault = ValueType.VTm4x4); - break; - } - - } - - - } - - } - public string label; - public SF_NodeConnector inputCon; - public SF_NodeConnectionLine conLine; - public List outputCons; - public SF_Node node; - public bool outerLabel = false; - public bool displayLockIfDeferredPrePassIsOn = false; - public Rect rect; - public int typecastTarget = 0; // 0 = No typecasting - - public int usageCount = 1; - - public string strID = null; - - [SerializeField] - private ShaderProgram forcedProgram = ShaderProgram.Any; - - [SerializeField] - private List skipPasses; - public List SkipPasses{ - get{ - if(skipPasses == null) - skipPasses = new List(); - return skipPasses; - } - } - - public static Color colorEnabledDefault{ - get{ - if(SF_GUI.ProSkin) - return new Color( 0.6f, 0.6f, 0.6f ); - else - return new Color( 1f, 1f, 1f ); - } - } - public Color color; - public string unconnectedEvaluationValue = null; - - public void OnEnable() { - base.hideFlags = HideFlags.HideAndDontSave; - if(color == default(Color)) - color = colorEnabledDefault; - } - - public SF_NodeConnector() { - //Debug.Log("NODE CONNECTION "); - } - - - public static SF_NodeConnector Create( SF_Node node, string strID, string label, ConType conType, ValueType valueType, bool outerLabel = false, string unconnectedEvaluationValue = null ) { - return ScriptableObject.CreateInstance< SF_NodeConnector>().Initialize(node, strID, label, conType,valueType, outerLabel, unconnectedEvaluationValue); - } - - public SF_NodeConnector Initialize( SF_Node node, string strID, string label, ConType conType, ValueType valueType, bool outerLabel = false, string unconnectedEvaluationValue = null ) { - this.node = node; - this.strID = strID; - this.label = label; - this.conType = conType; - - if(conType == ConType.cInput){ - conLine = ScriptableObject.CreateInstance().Initialize(node.editor, this); - } - - this.valueType = this.valueTypeDefault = valueType; - this.outerLabel = outerLabel; - this.unconnectedEvaluationValue = unconnectedEvaluationValue; - outputCons = new List(); - return this; - } - - // Chaining - public SF_NodeConnector SetRequired( bool b ) { - required = b; - return this; - } - public SF_NodeConnector WithColor( Color c ) { - color = c; - return this; - } - public SF_NodeConnector Outputting( OutChannel channel ) { - outputChannel = channel; - return this; - } - public SF_NodeConnector TypecastTo(int target) { - typecastTarget = target; - //Debug.Log("Typecasting " + label + " to " + target); - return this; - } - public SF_NodeConnector WithUseCount(int count){ - usageCount = count; - return this; - } - public SF_NodeConnector Skip( params PassType[] passes ) { - SkipPasses.AddRange( passes ); - return this; - } - public SF_NodeConnector ForceBlock(ShaderProgram block) { - forcedProgram = block; - return this; - } - public SF_NodeConnector DisplayLockIfDeferredPrePassIsOn(){ - displayLockIfDeferredPrePassIsOn = true; - return this; - } - - public SF_NodeConnector visControlChild; - public SF_NodeConnector visControlParent; - public SF_NodeConnector SetVisChild(SF_NodeConnector child){ // Used to make enable-chains (Connecting B enables the C connector etc) - visControlChild = child; - child.visControlParent = this; - child.enableState = EnableState.Hidden; - return this; - } - - public void SetVisChildVisible(bool visible){ - - if(visControlChild == null){ - return; - } - - EnableState targetState = visible ? EnableState.Enabled : EnableState.Hidden; - - if(visControlChild.enableState == targetState) - return; // Don't do anything if unchanged - - - if(!visible){ - visControlChild.Disconnect(true,false); // Disconnect if it goes invisible when linked - } - - visControlChild.enableState = targetState; - - } - - - - - public string ghostType = null; - public string ghostLinkStrId = null; - public SF_NodeConnector SetGhostNodeLink( Type ghostType, string ghostLinkStrId ) { - this.ghostType = ghostType.FullName; - this.ghostLinkStrId = ghostLinkStrId; - return this; - } - - - // Ghost nodes are default values assigned to unconnected node connectors - // They are instantiated when the shader is being evaluated, and then removed again - public void DefineGhostIfNeeded(ref List ghosts) { - - - // Skip nodes without ghosts - if( string.IsNullOrEmpty(ghostType) ) { - return; - } - - - if( IsConnected() ) // Skip already connected ones - return; - - - SF_Node ghost = null; - - // Search for existing ghost node - foreach( SF_Node exisGhost in ghosts ) { - if( exisGhost.GetType().FullName == ghostType ) { // TODO: Make sure serialized data matches too! - // Found! - ghost = exisGhost; - - if(SF_Debug.ghostNodes) - Debug.Log("Found matching existing ghost"); - break; - } - } - - // If no ghost was found, create one - if( ghost == null ) { - ghost = node.editor.AddNode( ghostType ); - ghost.isGhost = true; - ghosts.Add( ghost ); - if(SF_Debug.ghostNodes){ - Debug.Log("Adding ghost " + ghostType + " with connection count " + ghost.connectors.Length); - Debug.Log("Linked to " + node.nodeName + "["+this.label+"]" ); - Debug.Log("Ghost Count = " + node.editor.shaderEvaluator.ghostNodes.Count); - } - //Debug.Log( "Adding ghost of type " + ghostType ); - //Debug.Log( "Ghost in main node list = " + node.editor.nodes.Contains( ghost ) ); - } - - // Just to make sure... - if( ghost == null ) { - Debug.LogError( "Ghost is null, this should really not happen. Tried to find type " + ghostType ); - } - - // By this point, ghost is surely an existing node! - // Link it: - - //Debug.Log( "Linking ghost of type " + ghostType + " on " + this.node.nodeName + " Is COnnected = " + IsConnected()); - ghost.status.leadsToFinal = true; - ghost[ghostLinkStrId].LinkTo(this,LinkingMethod.NoUpdate); - - } - - // Get the index of this connector in the node array - public string GetIndex() { - if( this.HasID() ) - return strID; - for( int i = 0; i < node.connectors.Length; i++ ) - if( node.connectors[i] == this ) - return i.ToString(); - Debug.LogError( "Couldn't find index of a connector in " + node.nodeName ); - return "0"; - } - - public bool DisplayLock(){ - return displayLockIfDeferredPrePassIsOn && node.editor.ps.catLighting.renderPath == SFPSC_Lighting.RenderPath.Deferred; - } - - public bool HasID() { - return !string.IsNullOrEmpty( strID ); - } - - - public ShaderProgram GetProgram() { - if( forcedProgram == ShaderProgram.Any ) - return node.program; - return forcedProgram; - } - - - public int GetCompCount() { - - - if( conType == ConType.cInput){ - if( IsConnected() ) { - return inputCon.GetCompCount(); - } else { - int cc = 0; - if(SF_Tools.CompCountOf(valueType, out cc)){ - return cc; - } else { - Debug.LogWarning("[Shader Forge] - invalid component count in ["+label+"] of " + node.name + ""); - return node.texture.CompCount; // This is super weird, shouldn't read from the max comp count, read from the connection type instead - } - } - - } - - - - OutChannel oc = outputChannel; - if( oc == OutChannel.All ){ - - int cc = 0; - if(SF_Tools.CompCountOf(valueType, out cc)){ - return cc; - } else { - Debug.LogWarning("[Shader Forge] - invalid component count in ["+label+"] of " + node.name + ""); - return node.texture.CompCount; // This is super weird, shouldn't read from the max comp count, read from the connection type instead - } - - } else if( oc == OutChannel.RGB ) - return 3; - if( oc == OutChannel.RG ) - return 2; - - int custCount = SF_Tools.ComponentCountOf(customValueType); - if(custCount != 0){ - return custCount; - } - - return 1; - } - - - - - public string Evaluate() { - - string s = node.PreEvaluate(); - - switch( outputChannel ) { - case OutChannel.RGB: - return s + ".rgb"; - case OutChannel.RG: - return s + ".rg"; - case OutChannel.R: - return s + ".r"; - case OutChannel.G: - return s + ".g"; - case OutChannel.B: - return s + ".b"; - case OutChannel.A: - return s + ".a"; - } - - return s; - - } - - - public bool IsConnected() { - if( conType == ConType.cInput ) { - return inputCon != null; - } else { - if( outputCons == null ) - return false; - return ( outputCons.Count != 0 ); - } - - } - - public bool IsConnectedAndEnabled() { - return IsConnected() && (enableState == EnableState.Enabled || enableState == EnableState.Hidden); - } - - public bool IsConnectedEnabledAndAvailable(){ - return IsConnected() && ( enableState == EnableState.Enabled || enableState == EnableState.Hidden ) && availableState == AvailableState.Available; - } - - public bool IsConnectedEnabledAndAvailableInThisPass(PassType pass){ - if(SkipPasses.Contains(pass)){ - return false; - } - return IsConnectedEnabledAndAvailable(); - } - - - - public bool ConnectionInProgress() { - return ( SF_NodeConnector.pendingConnectionSource == this && IsConnecting() ); - } - - public static bool IsConnecting() { - if( SF_NodeConnector.pendingConnectionSource == null ) - return false; - /*else if( string.IsNullOrEmpty( SF_NodeConnection.pendingConnectionSource.node.name ) ) { - SF_NodeConnection.pendingConnectionSource=null; - return false; - }*/ - - return true; - } - - public bool Hovering(bool world) { - if( !node.editor.nodeView.MouseInsideNodeView(offset:world) ) - return false; - Rect r = SF_Tools.GetExpanded( rect, SF_Tools.connectorMargin ); - return r.Contains( world ? Event.current.mousePosition : MousePos() ); - } - - - - public bool Clicked(int button = 0) { - - - bool hovering = Hovering(world:false); - bool click = ( Event.current.type == EventType.mouseDown && Event.current.button == button ); - bool clickedCont = hovering && click; - //bool clickedCont=cont&&click; - //Debug.Log(); - return clickedCont; - } - - public bool Released() { - bool cont = Hovering(world:false); - bool release = ( Event.current.type == EventType.mouseUp ); - return cont && release; - } - - - public void OnClick() { - Debug.Log( "Clicked Button" ); - } - - public Vector2 MousePos() { - if( node.editor == null ) - return Vector2.zero; - return node.editor.nodeView.GetNodeSpaceMousePos(); - } - - // TODO: Pass nodes into actual line draw thingy - public float GetConnectionCenterY( SF_NodeConnector cA, SF_NodeConnector cB ) { - Rect a = cA.node.rect; - Rect b = cB.node.rect; - if( cA.GetConnectionPoint().y > cB.GetConnectionPoint().y ) - return 0.5f * ( a.yMax + b.yMin ); - else - return 0.5f * ( b.yMax + a.yMin ); - } - - public void CheckConnection( SF_Editor editor ) { - - - - if(ShouldBeInvisible()) - return; - - - - - if( conType == ConType.cInput && Event.current.type == EventType.repaint ) { - DrawConnection( editor ); - } - - if( enableState == EnableState.Disabled || availableState == AvailableState.Unavailable ) - return; - - if( Clicked() ) { - SF_NodeConnector.pendingConnectionSource = this; - editor.nodeView.selection.DeselectAll(registerUndo:false); - foreach( SF_Node iNode in editor.nodes ) { - foreach( SF_NodeConnector con in iNode.connectors ) { - con.UpdateCanValidlyConnectToPending(); - } - } - Event.current.Use(); - } - - if( Clicked(1) && SF_GUI.HoldingAlt()){ - Disconnect(); - } - - if( !ConnectionInProgress() ) { - if( Released() ) - TryMakeConnection(); - return; - } - - - // Active connection: - - editor.ResetRunningOutdatedTimer(); - - //if(Event.current.type == EventType.repaint) - //node.Repaint(); - - - bool hovering = false; - foreach(SF_Node n in editor.nodes){ - foreach(SF_NodeConnector con in n.connectors){ - if(con.CanConnectToPending() && con.Hovering(false)){ - hovering = true; - break; - } - } - if(hovering) - break; - } - - if( Event.current.type == EventType.repaint ) { - Color c = hovering ? Color.green : GetConnectionLineColor(); - - bool input = ( conType == ConType.cInput ); - Vector2 start = input ? GetConnectionPoint() : MousePos(); - Vector2 end = input ? MousePos() : GetConnectionPoint(); ; - - if( valueType == ValueType.VTm4x4 || valueType == ValueType.VTv4m4x4 ) { - GUILines.DrawMatrixConnection( editor, start, end, c ); - } else { - GUILines.DrawStyledConnection( editor, start, end, GetCompCount(), c ); - } - } - - - - - //Drawing.DrawLine(rect.center,MousePos(),Color.white,2,true); - - - } - - public Color GetConnectionLineColor() { - - Color def = EditorGUIUtility.isProSkin ? new Color( 1f, 1f, 1f, 0.3f ) : new Color( 0f, 0f, 0f, 0.4f ); - - - - - Color sel = SF_GUI.selectionColor; - - if( inputCon == null ) - return def; - else if( inputCon.color == SF_Node.colorExposed ) - def = SF_Node.colorExposedDark; - - if( node.selected || inputCon.node.selected ) - return sel; - - - if( !DisplayAsValid() ) - def.a = 0.1f; - - return def; - } - - void DrawConnection( SF_Editor editor ) { - - conLine.Draw(); - - /* - Vector2 a = GetConnectionPoint(); - Vector2 b = inputCon.GetConnectionPoint(); - int cc = GetCompCount(); - - - - GUILines.DrawStyledConnection( editor, a, b, cc, GetConnectionLineColor() ); - */ - - } - - public bool CanEvaluate() { - if( !IsConnectedAndEnabled() ) - if( !string.IsNullOrEmpty( unconnectedEvaluationValue ) ) - return true; - else - return false; // TODO: Something - if(conType == ConType.cInput) - if( !inputCon.node.CanEvaluate() ) - return false; - return true; - } - - public bool CanEvaluateAs( int target ) { - if( !CanEvaluate() ) - return false; - //int source = inputCon.GetCompCount(); - //if( target < source ) // TODO: Allow this? - // return false; - return true; - } - - - public string TryEvaluate() { - - //Debug.Log("TryEvaluate " + label + " typecast = " + typecastTarget); - - if( !IsConnectedAndEnabled() ) - if( !string.IsNullOrEmpty( unconnectedEvaluationValue ) ) - return unconnectedEvaluationValue; - if( !CanEvaluate() ) - return null; - - if( typecastTarget == 0 ){ - if(conType == ConType.cInput) - return inputCon.Evaluate(); - else - return Evaluate(); - } else { - //Debug.Log("Trying to evaluate node " + this.label + " on node " + this.node.nodeName); - return TryEvaluateAs( typecastTarget ); - } - - } - - public string TryEvaluateAs(int target) { - if( !CanEvaluateAs(target) ) - return null; // TODO: Throw errors etc - - int source = inputCon.GetCompCount(); - - int diff = target - source; - - - - if(diff == 0) // Same value type - return inputCon.Evaluate(); - if( diff < 0 ) { // Lowering component count, mask components - switch( target ) { - case 1: - return inputCon.Evaluate() + ".r"; - case 2: - return inputCon.Evaluate() + ".rg"; - case 3: - return inputCon.Evaluate() + ".rgb"; - } - } - - // Increasing component count: - - string cast; - - - if( source != 1 ) { // Evaluate + append zeroes - cast = "float" + target + "(" + inputCon.Evaluate(); - for( int i = 0; i < diff; i++ ) - cast += ",0.0"; - } else { - inputCon.node.DefineVariable(); - cast = "float" + target + "(" + inputCon.Evaluate(); - for( int i = 0; i < diff; i++ ) - cast += "," + inputCon.Evaluate(); - } - - - - cast += ")"; - return cast; - } - - - /* - public bool IsFocused() { - return rect.Contains( Event.current.mousePosition ); - }*/ - - public bool CheckIfDeleted() { - if( (Event.current.keyCode == KeyCode.Delete || Event.current.keyCode == KeyCode.Backspace) && Event.current.type == EventType.keyDown && Hovering( world: true ) ) { - Disconnect(); - return true; - } - return false; - } - - - - - public bool IsDeleted() { - return ( node == null ); - } - - public void Disconnect( bool force = false, bool callback = true, bool reconnection = false ) { - - //Debug.Log( "Attempt to disconnect: " + node.name + "[" + label + "]" ); - - if( !IsConnected() ) { - //Debug.Log( "Aborted " + node.name + "[" + label + "]" ); - return; - } - - - if( conType == ConType.cInput ) { - //Debug.Log( "Input disconnecting " + node.name + "[" + label + "]" ); - ResetValueType(); - if( inputCon != null ) { - inputCon.outputCons.Remove( this ); - if(!reconnection) - SetVisChildVisible(false); // Don't hide the child if this was disconnected by reconnection - //Debug.Log( "Disconnecting " + label + "<--" + inputCon.label ); - } - inputCon = null; - if( callback && !SF_Parser.quickLoad ) - node.OnUpdateNode(); - } else { - //Debug.Log( "Output disconnecting " + node.name + "[" + label + "]" ); - SF_NodeConnector[] outputsArr = outputCons.ToArray(); - for( int i = 0; i < outputsArr.Length; i++ ) { - //Debug.Log( "Disconnecting " + outputsArr[i].label + "<--" + label ); - outputsArr[i].Disconnect( true, callback ); - } - outputCons.Clear(); - } - - // AceMatEditor.instance.CheckForBrokenConnections(); - - // node = null; // What? - } - - public Vector2 GetConnectionPoint() { - if( conType == ConType.cOutput ) - return new Vector2( rect.xMax, rect.center.y ); - else - return new Vector2( rect.xMin+1, rect.center.y ); - } - - - public bool CanConnectTo(SF_NodeConnector other) { - if( other == null ) - return false; - - if( other.node == node ) - return false; // Disallow connecting to self - - if( other.conType == this.conType ) - return false; // Disallow connecting same types (i <- i & o <- o) - - if( conType == ConType.cOutput ) { // Disallow connecting loops - if( node.IsDescendantOf( other.node ) ) { - return false; - } - } else { - if( other.node.IsDescendantOf( node ) ) { - return false; - } - } - - return true; - } - - - - public bool CanValidlyConnectTo(SF_NodeConnector other) { - if(!CanConnectTo(other)) - return false; - - if(this.conType == ConType.cInput) - return SFNCG_Arithmetic.CompatibleTypes( this.valueTypeDefault, other.valueType ); - else - return SFNCG_Arithmetic.CompatibleTypes( other.valueTypeDefault, this.valueType ); - - - } - - - public void TryMakeConnection() { - - if(SF_NodeConnector.pendingConnectionSource == null) - return; - - if( !CanConnectTo( SF_NodeConnector.pendingConnectionSource ) ) { - return; // TODO: Display message - } - - LinkTo( SF_NodeConnector.pendingConnectionSource,LinkingMethod.Default, registerUndo:true ); - - SF_NodeConnector.pendingConnectionSource = null; - } - - public void ThrowLinkError() { - Debug.LogError( "Attempt to connect invalid types" ); - } - - - - - public void ResetValueType() { - //Debug.Log("Resetting value type on " + this.label); - valueType = valueTypeDefault; - } - - public void LinkTo( SF_NodeConnector other, LinkingMethod linkMethod = LinkingMethod.Default, bool registerUndo = false ) { - - - - - if( this.conType == other.conType ) { - Debug.Log("Invalid IO linking: " + other.node.nodeName + " con: " + other.label + " thisnode: " + node.nodeName + " con: " + this.label); - return; - } - - if( conType == ConType.cInput ) { - other.LinkTo( this, linkMethod, registerUndo ); // Reverse connection if dragged other way - return; - } - - if(this.node.isGhost) - linkMethod = LinkingMethod.NoUpdate; - - // Other is the input node - // [other] <---- [this] - - bool registeredUndo = false; - - - // Verify, if default. Not if it's without update - if( linkMethod == LinkingMethod.Default ) { - - if( !SFNCG_Arithmetic.CompatibleTypes( other.valueTypeDefault, this.valueType ) ) { - Debug.LogError( "Incompatible types: Type A: " + other.valueTypeDefault + " Type B: " + this.valueType ); - //ThrowLinkError(); - //other.ResetValueType(); - return; - } - - if(registerUndo && !registeredUndo){ - - string undoMsg = "connect " + other.node.nodeName + "["+other.label+"] <-- ["+ this.label +"]" + this.node.nodeName; - - this.node.UndoRecord(undoMsg); - other.node.UndoRecord(undoMsg); - - //Undo.RecordObject(this,undoMsg); - //Undo.RecordObject(other,undoMsg); - - registeredUndo = true; - - } - - // In case there's an existing one - if( other.IsConnected() ) - other.Disconnect(true,false,reconnection:true); - - } - - if(registerUndo && !registeredUndo){ - string undoMsg = "connect " + other.node.nodeName + "["+other.label+"] <-- ["+ this.label +"]" + this.node.nodeName; - this.node.UndoRecord(undoMsg); - other.node.UndoRecord(undoMsg); - //Undo.RecordObject(this,undoMsg); - //Undo.RecordObject(other,undoMsg); - - registeredUndo = true; - } - - //Debug.Log("Linking " + other.node.nodeName + "["+other.label+"] <--- ["+ this.label +"]" + this.node.nodeName ); - - - - // Connect - other.valueType = this.valueType; - other.inputCon = this; - - - - // TODO: Force types in connector group! - //if( linkMethod == LinkingMethod.Default ) { - if( other.node.conGroup != null ) - other.node.conGroup.Refresh(); - //} - - - this.outputCons.Add( other ); - - other.SetVisChildVisible(true); - - if( linkMethod == LinkingMethod.Default ) { - node.RefreshValue();// OnUpdateNode( NodeUpdateType.Soft, false ); // Update this value - other.node.OnUpdateNode(); // Update other, and following - - } - - other.conLine.ReconstructShapes(); - - } - - - // This is currenly meant to propagate its value type to its link partner - public void SetValueType(ValueType vt){ - if(conType == ConType.cOutput && this.valueType != vt){ - - this.valueType = vt; - foreach(SF_NodeConnector con in this.outputCons){ - if(con.valueTypeDefault == ValueType.VTvPending){ - con.valueType = this.valueType; - con.node.OnUpdateNode(); - } - } - } - } - - public void SetValueTypeAndDefault( ValueType vt ) { - SetValueType( vt ); - valueType = vt; - valueTypeDefault = vt; - } - - public bool IsConnectionHovering(bool world = true){ - - bool active = enableState == EnableState.Enabled && availableState == AvailableState.Available; - //bool free = !IsConnected(); - bool hoveringPending = SF_NodeConnector.IsConnecting() && Hovering(world) && !UnconnectableToPending(); - - return (active && /*free &&*/ hoveringPending); - } - - public bool IsDeleteHovering(bool world = true){ - - if(!IsConnected()) - return false; // There's no link to delete to begin with - if(!Hovering(world)) - return false; // You aren't hovering at all - if(node.editor.nodeView.selection.boxSelecting) - return false; // You're in the middle of a box selection - if(node.editor.nodeView.isCutting) - return false; // We're already doing a cut-deletion, don't mark it for click-deletion - - if(SF_NodeConnector.IsConnecting()){ - - if(SF_NodeConnector.pendingConnectionSource == this) - return false; // Hovering the pending connection, don't mark it for delete - - if(!UnconnectableToPending() && this.conType == ConType.cInput) - return true; // This will be a relink-delete! - } - - - - if(SF_GUI.HoldingAlt()) - return true; // RMB delete - - - return false; - } - - public Color GetConnectorColorRGB() { - - - bool delHov = IsDeleteHovering(); - bool conHov = IsConnectionHovering(true); - - if(conHov){ - return Color.green; - } else if(delHov){ - return Color.red; - } - - if( enableState != EnableState.Enabled ) - return Color.gray; - - //if( IsConnected() ) // DEBUG - // return Color.yellow; - - Color unselected = color; - - if( node.selected ) - return SF_GUI.selectionColor;//Color.Lerp(unselected, SF_GUI.selectionColor, 0.75f); - return unselected; - } - - public Color GetConnectorColor() { - Color c = GetConnectorColorRGB(); - if( DisplayAsValid() ) - c.a = SF_GUI.ProSkin ? 1f : 0.5f; - else - c.a = SF_GUI.ProSkin ? 0.25f : 0.125f; - return c; - } - - - public bool DisplayAsValid() { - return enableState == EnableState.Enabled && availableState == AvailableState.Available && (!UnconnectableToPending() || this == SF_NodeConnector.pendingConnectionSource); - } - - bool canValidlyConnectToPending = false; - - public void UpdateCanValidlyConnectToPending() { - canValidlyConnectToPending = CanValidlyConnectTo( SF_NodeConnector.pendingConnectionSource ); - } - - public bool UnconnectableToPending() { - if(enableState != EnableState.Enabled || availableState == AvailableState.Unavailable) - return true; - if(SF_NodeConnector.pendingConnectionSource == this) - return true; - if( SF_NodeConnector.pendingConnectionSource != null ) { - if( SF_NodeConnector.pendingConnectionSource != this ) - if( !canValidlyConnectToPending ) - return true; - } - return false; - } - - - public bool ValidlyPendingChild(){ - return (IsChild() && visControlParent.IsConnected() && CanConnectToPending() && enableState == EnableState.Enabled); - } - - public bool CanConnectToPending(){ - return SF_NodeConnector.pendingConnectionSource != null && !UnconnectableToPending(); - } - - public bool IsChild(){ - return visControlParent != null; - } - - - - - public bool ShouldBeInvisible(){ - bool hidden = enableState == EnableState.Hidden; - - bool isUnconnectedChild = IsChild() && !IsConnected(); - bool isHiddenExtraConnector = isUnconnectedChild && !ValidlyPendingChild(); - - if( isUnconnectedChild && node.ExhaustedOptionalInputs() ) - return true; - - if( hidden ){ - return true; - } else if(isHiddenExtraConnector){ // If it's flagged as enabled, but is an unconnected child, only draw it when it's either connected or has a pending valid connection - return true; - } else if( node.editor.ps.catLighting.renderPath == SFPSC_Lighting.RenderPath.Deferred && !node.availableInDeferredPrePass){ - if(IsConnected()){ - Disconnect(true); - } - return true; - } - return false; - } - - public const int defaultConnectorWidth = 25; - - public void Draw( Vector2 pos ) { - - bool isUnconnectedChild = IsChild() && !IsConnected(); - - if(ShouldBeInvisible()) - return; - - - // Don't draw if invalid - - rect = new Rect( pos.x, pos.y, defaultConnectorWidth, 14 ); - - if( conType == ConType.cInput ) { - rect.x -= node.rect.width + rect.width; - } - - if( conType == ConType.cInput ) { - rect.xMin -= node.extraWidthInput; - } else { - rect.width += node.extraWidthOutput; - } - - - - //GUIStyle cStyle = conType == ConType.cInput ? EditorStyles.miniButtonRight : EditorStyles.miniButtonLeft; - //GUIStyle cStyle = (GUIStyle)"ShurikenModuleTitle"; - - - - - - if(!DisplayLock()){ - GUI.color = GetConnectorColor(); - GUI.Box( rect, string.Empty ); - if( SF_GUI.ProSkin ) { - GUI.Box( rect, string.Empty ); - GUI.Box( rect, string.Empty ); - GUI.Box( rect, string.Empty ); - } - } - - if( SF_GUI.ProSkin ){ - GUI.color = DisplayAsValid() ? Color.white : Color.grey; - } else { - GUI.color = DisplayAsValid() ? Color.white : new Color(1f,1f,1f,0.25f); - } - - bool showConditionA = !(Hovering(true) && canValidlyConnectToPending); - bool showConditionB = !(SF_NodeConnector.pendingConnectionSource == this); - - if( HasErrors() && (showConditionA && showConditionB) ) { - Rect iconRect = new Rect( rect ); - iconRect.x -= SF_Styles.IconErrorSmall.width ; - iconRect.height = iconRect.width = 16; - iconRect.y -= 1; - GUI.DrawTexture( iconRect, SF_Styles.IconErrorSmall ); - } - - - - Rect labelRect = rect; - - - if( SF_Debug.nodes ) { - Rect typeRect = rect; - typeRect.width *= 3f; - - if( conType == ConType.cInput ) { - GUI.skin.label.alignment = TextAnchor.MiddleLeft; - typeRect.x += rect.width; - } else { - GUI.skin.label.alignment = TextAnchor.MiddleRight; - typeRect.x -= typeRect.width; - } - - GUI.Label( typeRect, valueType.ToString() ); - GUI.skin.label.alignment = TextAnchor.MiddleLeft; - } - - - - - if( outerLabel ) { - labelRect.width = node.rect.width; - //labelRect.x -= EditorStyles.miniLabel.CalcSize( new GUIContent( label ) ).x + 4; - labelRect.x += rect.width + 4; - } - - - - GUI.Label( labelRect, isUnconnectedChild ? "+" : label,isUnconnectedChild ? EditorStyles.boldLabel : SF_Styles.MiniLabelOverflow ); - - - if(DisplayLock()){ - Rect lockRect = labelRect; - lockRect.xMin = node.rect.xMin-lockRect.height-3; - lockRect.xMax = node.rect.xMax; - lockRect.yMin -= 3; - lockRect.yMax += 4; - GUI.color = new Color(0.8f,0.8f,0.8f,0.3f); - GUI.Box(lockRect,string.Empty,GUI.skin.button); - GUI.color = Color.white; - //GUI.color = Color.white; - //GUI.Label(lockRect,"//"); - //GUI.drawe - //GUI.Box(lockRect, "", ); - if(Event.current.type == EventType.repaint){ - SF_GUI.DrawLock(lockRect.PadTop(4),"Unavailable when using deferred rendering", TextAlignment.Right ); - - } - - } - - - CheckIfDeleted(); - - GUI.color = Color.white; - } - - - public SF_NodeConnector SetAvailable( bool b ) { - availableState = b ? AvailableState.Available : AvailableState.Unavailable; - return this; - } - - public bool HasErrors() { - if( required && !IsConnectedAndEnabled() ) { - return true; - } - return false; - } - - - - - - - } -} \ No newline at end of file diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/SF_NodeConnector.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/SF_NodeConnector.cs.meta deleted file mode 100755 index 3da77e20..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/SF_NodeConnector.cs.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: b6b55696f91bd42a186f23376406d9d6 -MonoImporter: - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/SF_NodePreview.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/SF_NodePreview.cs deleted file mode 100755 index 0760d8d3..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/SF_NodePreview.cs +++ /dev/null @@ -1,375 +0,0 @@ -using UnityEngine; -using System.Collections; -using System.Collections.Generic; -using UnityEditor; -using System; -using System.Linq; - -namespace ShaderForge { - [System.Serializable] - public class SF_NodePreview : ScriptableObject { - - public static int R = 0; - public static int G = 1; - public static int B = 2; - public static int A = 3; - - // The color representation - public RenderTexture texture; // RGBA combined - public RenderTexture[] textureChannels; // RGBA separated, created on-demand - - // Icons, if any - public Texture2D[] icons; - public Texture2D iconActive; - - public void SetIconId(int id){ - iconActive = icons[id]; - } - - - public Color iconColor = Color.white; - - // Whether or not it's uniform - // Vectors (Uniform = Same color regardless of position) - // Textures (Non-Uniform = Different color based on position)) - public bool uniform = false; - public bool coloredAlphaOverlay = false; // Used to render two images on top of eachother, as in the fog node - //public float[] dataUniform; - public Vector4 dataUniform; - public Color dataUniformColor{ - get { return (Color)dataUniform; } - } - - // My material node, used to get operators - public SF_Node node; - - // The amount of components used (1-4) // THIS SHOULDN'T BE USED. USE CONNECTOR COMP COUNT INSTEAD - [SerializeField] - private int compCount = 1; - public int CompCount { - get { return compCount; } - set { - if(compCount == value) - return; - if( value > 4 || value < 1 ) { - //Debug.LogError( "Component count out of range: " + value + " on " + node.nodeName + " " + node.id ); - compCount = 4; - } else { - compCount = value; - } - } - } - - - - public SF_NodePreview() { - } - - public void OnEnable() { - base.hideFlags = HideFlags.HideAndDontSave; - - if( texture == null ) { - InitializeTexture(); - if(node) - node.RefreshValue(); - } - - } - - public RenderTexture CreateNewNodeRT() { - RenderTexture rt = new RenderTexture( SF_Node.NODE_SIZE, SF_Node.NODE_SIZE, 0, RenderTextureFormat.ARGBFloat, RenderTextureReadWrite.Linear ); // TODO: Gamma/Linear? - rt.wrapMode = TextureWrapMode.Clamp; - rt.hideFlags = HideFlags.HideAndDontSave; - return rt; - } - - public SF_NodePreview Initialize( SF_Node node ) { - this.node = node; // Parent - return this; - } - - - public ColorSpace textureColorSpace = ColorSpace.Uninitialized; - - public void InitializeTexture() { - if(texture == null) - texture = CreateNewNodeRT(); - textureColorSpace = QualitySettings.activeColorSpace; - } - - - - public void DestroyTexture() { - if( RenderTexture.active == texture ) - RenderTexture.active = null; - if( texture != null ) { - texture.Release(); - DestroyImmediate( texture ); - } - - if( textureChannels != null ) { - for( int i = 0; i < textureChannels.Length; i++ ) { - if( textureChannels[i] != null ) { - if( RenderTexture.active == textureChannels[i] ) - RenderTexture.active = null; - textureChannels[i].Release(); - DestroyImmediate( textureChannels[i] ); - } - } - } - - iconActive = null; - texture = null; - } - - - - public void LoadAndInitializeIcons(Type type){ - string nodeNameLower = type.Name.ToLower(); - - - iconActive = SF_Resources.LoadNodeIcon(nodeNameLower); // Main icon - - - if(iconActive == null){ - //Debug.Log("No icon found for: " + nodeNameLower); - } else { - // See if additional ones exist, if it found the first - - List iconList = new List(); - iconList.Add(iconActive); - - Texture2D tmp; - for(int i = 2;i<16;i++){ // max 16, to prevent while-loop locking - tmp = SF_Resources.LoadNodeIcon(nodeNameLower + "_" + i); // Search for more - if(tmp == null) - break; - iconList.Add(tmp); - } - - if(iconList.Count > 1) - icons = iconList.ToArray(); - - //while( tmp = - } - } - - public void LoadDataTexture(Type type){ - LoadDataTexture("Data/" + type.Name.ToLower()); - } - - public void LoadDataTexture(Type type, string suffix){ - LoadDataTexture("Data/" + type.Name.ToLower() + "_" + suffix); - } - - public void LoadDataTexture(string path){ - Texture2D nodeIcon = SF_Resources.LoadNodeIcon(path); - SF_Blit.Render( texture, "ReadPackedData", nodeIcon ); - } - - public void GenerateBaseData( bool render3D = true ) { - SF_Blit.mat.SetVector( "_OutputMask", Vector4.one ); - - SF_Blit.currentNode = node; - - if( uniform ) { - BlitUniform(); - return; - } - - if( SF_Settings.nodeRenderMode == NodeRenderMode.Viewport ) { - SF_Blit.RenderUsingViewport( texture, node.GetBlitShaderPath() ); - } else { - if( render3D ) - SF_Blit.RenderUsingViewport( texture, node.GetBlitShaderPath() ); - else - SF_Blit.Render( texture, node.GetBlitShaderPath() ); - } - - - } - - public void BlitUniform() { - SF_Blit.Render(texture, dataUniformColor ); - } - - public void ReadData( Texture2D tex, SF_NodePreview uvTex = null ) { - Graphics.Blit( tex, texture ); - } - - - - - public void OnLostConnection() { - Fill( Color.black ); - } - - public void Fill( Color col ) { - SF_Blit.Render( texture, col ); - } - - public Texture RenderAndGetChannel(int ch){ - if(textureChannels == null) - textureChannels = new RenderTexture[4]; - if( ch < 0 || ch > 3 ) { - Debug.LogError( "RenderAndGetChannel() got invalid channel " + ch + " of node " + node.nodeName + ". Please report this!" ); - } - if( textureChannels[ch] == null ) { - textureChannels[ch] = CreateNewNodeRT(); - } - SF_Blit.matExtractChannel.SetFloat("_Channel", ch); - Graphics.Blit( texture, textureChannels[ch], SF_Blit.matExtractChannel ); - return textureChannels[ch]; - } - - public Texture GetTextureByOutputType( OutChannel ch ) { - if( ch == OutChannel.R ) { - return RenderAndGetChannel( 0 ); - } else if( ch == OutChannel.G ) { - return RenderAndGetChannel( 1 ); - } else if( ch == OutChannel.B ) { - return RenderAndGetChannel( 2 ); - } else if( ch == OutChannel.A ) { - return RenderAndGetChannel( 3 ); - } - return texture; - } - - - // When evaluating nodes, run the overridden operator from the node itself - public void Combine( /*SF_NodePreview a, SF_NodePreview b */) { - - // Check if it can combine first - if( !node.CanEvaluate() ) { - Debug.LogError( "Cannot evaluate" ); - Fill( Color.black ); - return; - } - - CompCount = node.GetEvaluatedComponentCount(); - - // It can combine! Since this node is dynamic, adapt its component count - //CompCount = Mathf.Max( a.CompCount, b.CompCount ); - - - uniform = node.IsUniformOutput(); - - // Combine the node textures, unless we're quickloading or don't want to load them - - dataUniform = node.EvalCPU(); - - SF_Blit.currentNode = node; - - //if( uniform ) { - //BlitUniform(); - //} else { - string shaderPath = node.GetBlitShaderPath(); - Texture[] inputTextures = node.ConnectedInputs.Select( x => x.inputCon.node.texture.GetTextureByOutputType( x.inputCon.outputChannel ) ).ToArray(); - string[] inputNames = node.ConnectedInputs.Select( x => x.strID ).ToArray(); - //OutChannel[] inputChannels = node.ConnectedInputs.Select( x => x.inputCon.outputChannel ).ToArray(); - if( SF_Settings.nodeRenderMode == NodeRenderMode.Viewport ) { - SF_Blit.RenderUsingViewport( texture, shaderPath, inputNames, inputTextures ); - } else if( SF_Settings.nodeRenderMode == NodeRenderMode.Mixed ) { - SF_Blit.Render( texture, shaderPath, inputNames, inputTextures ); - } - - //} - - - - - - - /* - if(!SF_Parser.quickLoad && SF_Settings.DrawNodePreviews) { - for( int y = 0; y < SF_NodeData.RES; y++ ) { - for( int x = 0; x < SF_NodeData.RES; x++ ) { - Color retVector = node.NodeOperator( x, y ); - for( int c = 0; c < 4; c++ ) { - data[x, y, c] = retVector[c]; - } - } - } - }* - - // Combine uniform - /*for( int i = 0; i < 4; i++ ) { - dataUniform[i] = node.NodeOperator( 0, 0, i ); - }*/ - - - - - } - - - - public void Draw( Rect r , bool dim = false) { - if( iconActive != null ) { - if(node is SFN_Final){ // Large node image - Rect tmp = new Rect(r.x,r.y-1, iconActive.width, iconActive.height); - GUI.color = new Color(1f,1f,1f,node.selected ? 1f : 0.5f); - GUI.DrawTexture( tmp, iconActive, ScaleMode.ScaleToFit, true ); - } else if( coloredAlphaOverlay ) { - GUI.DrawTexture( r, icons[0] ); - GUI.color = ConvertToDisplayColor( dataUniform, true ); - GUI.DrawTexture( r, icons[1], ScaleMode.ScaleToFit, true ); - } else { - GUI.color = iconColor; - if( dim ) { - GUI.color = new Color( GUI.color.r, GUI.color.g, GUI.color.b, 0.5f ); - } - GUI.DrawTexture( r, iconActive ); - } - GUI.color = Color.white; - } else if( uniform ) { - GUI.color = ConvertToDisplayColor( dataUniform, true ); - GUI.DrawTexture( r, EditorGUIUtility.whiteTexture ); - GUI.color = Color.white; - } else { - GUI.DrawTexture( r, texture, ScaleMode.ScaleAndCrop, false ); - if(node.displayVectorDataMask){ - GUI.DrawTexture( r, SF_GUI.VectorIconOverlay, ScaleMode.ScaleAndCrop, true); - } - } - - } - - public static float[] ColorToFloatArr( Color c ) { - return new float[] { c.r, c.g, c.b, c.a }; - } - - public Color ConvertToDisplayColor( Color fa, bool forceVisible = false ) { - if( CompCount == 1 ) { - return new Color( fa[0], fa[0], fa[0], forceVisible ? 1f : fa[0] ); - } else if( CompCount == 2 ) { - return new Color( fa[0], fa[1], 0f, forceVisible ? 1f : 0f ); - } else if( CompCount == 3 ) { - return new Color( fa[0], fa[1], fa[2], forceVisible ? 1f : 0f ); - } - return new Color( fa[0], fa[1], fa[2], forceVisible ? 1f : fa[3] ); - } - - - - public bool CanCombine( SF_NodePreview a, SF_NodePreview b ) { - if( a.CompCount == b.CompCount ) - return true; - if( a.CompCount == 1 || b.CompCount == 1 ) - return true; - return false; - } - - - - - - - - - - - - - } -} \ No newline at end of file diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/SF_NodePreview.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/SF_NodePreview.cs.meta deleted file mode 100755 index f4c450f6..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/SF_NodePreview.cs.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: 545752616b7004630871f3aba6d251d6 -MonoImporter: - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/SF_NodeStatus.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/SF_NodeStatus.cs deleted file mode 100755 index 5fd90d2c..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/SF_NodeStatus.cs +++ /dev/null @@ -1,55 +0,0 @@ -using UnityEngine; -using System.Collections; - -namespace ShaderForge { - [System.Serializable] - public class SF_NodeStatus : ScriptableObject { - - public SF_Node node; - public SF_NodeStatus Initialize( SF_Node node ) { - this.node = node; - Reset(); - return this; - } - - public void OnEnable() { - base.hideFlags = HideFlags.HideAndDontSave; - } - - - public bool leadsToFinal; // Whether or not this is in the end, used - - public void Reset() { - leadsToFinal = false; - } - - - - - public void SetLeadsToFinalRecursively(bool all = false, bool passDependent = true) { - leadsToFinal = true; - //Debug.Log("Checking if " + node.nodeName + " leads to final..."); - foreach( SF_NodeConnector con in node.connectors ) { - if( con.conType == ConType.cOutput ) - continue; - if( !con.IsConnected() ) - continue; - //if( !con.IsConnectedEnabledAndAvailable() ) // Don't process data in disabled inputs, although maybe we should? - //continue; - if( passDependent && con.SkipPasses.Contains( SF_Evaluator.currentPass ) && !all ) // So it's enabled and all - But does this pass even use it? - continue; - con.inputCon.node.status.SetLeadsToFinalRecursively(); - } - //Debug.Log("Yep, " + node.nodeName + " leads to final!"); - } - - - - - - - - - } - -} diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/SF_NodeStatus.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/SF_NodeStatus.cs.meta deleted file mode 100755 index e870c69f..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/SF_NodeStatus.cs.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: 08efc211a31014f9db3606a96039defd -MonoImporter: - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/SF_NodeTreeStatus.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/SF_NodeTreeStatus.cs deleted file mode 100755 index 40db03be..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/SF_NodeTreeStatus.cs +++ /dev/null @@ -1,494 +0,0 @@ -using UnityEngine; -using System.Collections; -using System.Collections.Generic; -using System.Linq; - - - -namespace ShaderForge { - - [System.Serializable] - public class SF_NodeTreeStatus : ScriptableObject { - - public SF_Editor editor; - [SerializeField] List errors; - public List Errors { - get { - if( errors == null ) - errors = new List(); - return errors; - } - set { - errors = value; - } - } - - - - public bool mipInputUsed = false; // If this is true, only DX is allowed :< OR: Enable glsl pragma - public bool texturesInVertShader = false; - public bool viewDirectionInVertOffset = false; - public bool usesSceneData = false; - // public bool lightNodesUsed = false; // Used to re-enable light settings when shader is set to unlit - - - - // Contains references to all nodes with properties - // Used in the pass settings listing - public List propertyList = new List(); - - - public bool CanDisplayInstructionCount { - get { - bool dx = ( editor.statusBox.platform == RenderPlatform.d3d9 || editor.statusBox.platform == RenderPlatform.d3d11 ); - return !( mipInputUsed && !dx ); - } - - } - - - - public string SerializeProps() { - string s = "proporder:"; - for( int i = 0; i < propertyList.Count; i++ ) { - if( i != 0 ) - s += "-"; - s += propertyList[i].id.ToString(); - } - return s; - } - - public void DeserializeProps( string s ) { - //Debug.Log("Deserializing properties = " + s); - string[] split = s.Split( '-' ); - propertyList = new System.Collections.Generic.List(); - for( int i = 0; i < split.Length; i++ ) { - //Debug.Log("Found " + GetNodeByID( int.Parse( split[i] )).nodeName); - //Debug.Log ("Attempting deserialization. int parse of ["+split[i]+"]"); - - SF_Node foundNode = GetNodeByID( int.Parse( split[i] ) ); - if( foundNode != null ) - propertyList.Add( foundNode ); - - } - } - - public SF_Node GetNodeByID( int id ) { - foreach( SF_Node n in editor.nodes ) { - if( n.id == id ) - return n; - } - Debug.LogError( "Property node with ID " + id + " not found while deserializing, removing..." ); - return null; - } - - - - - - - public SF_NodeTreeStatus Initialize( SF_Editor editor ) { - this.editor = editor; - return this; - } - - public void OnEnable() { - base.hideFlags = HideFlags.HideAndDontSave; - } - - - public bool CheckCanCompile() { - - editor.nodeView.RefreshRelaySources(); - - if( Errors == null ){ - Errors = new List(); - } else if( Errors.Count > 0 ) { - for( int i = 0; i < Errors.Count; i++ ) { - DestroyImmediate( Errors[i] ); - } - Errors.Clear(); - } - - - - List cNodes = GetListOfConnectedNodesWithGhosts( out editor.shaderEvaluator.ghostNodes ); - - - // If any properties are now outside the node graph, remove them from the property list - /*if(!SF_Parser.settingUp) - for( int i = propertyList.Count - 1; i >= 0; i-- ) { - if( !cNodes.Contains( propertyList[i] ) ) { - propertyList.RemoveAt( i ); - } - }*/ - - - //if( editor.shaderEvaluator.ghostNodes != null ) - //Debug.Log( "Ghost nodes: " + editor.shaderEvaluator.ghostNodes.Count ); - - texturesInVertShader = false; - bool foundMipUsed = false; - //SF_Node mipNode = null; - usesSceneData = false; - - bool hasFacingNode = false; - - foreach( SF_Node n in cNodes ) { - - // Refresh property list - if( n.IsProperty() ) { - if( !n.IsGlobalProperty() ) { - // Add if it's local and doesn't contain it already - if( !propertyList.Contains( n ) ) { - propertyList.Add( n ); - } - } else { - // Remove it if it's global and inside the list - if( propertyList.Contains( n ) ) { - propertyList.Remove( n ); - } - } - } - - if( n is SFN_SceneColor ) { - usesSceneData = true; - } - - if( n is SFN_FaceSign ) { - hasFacingNode = true; - } - - - if( n is SFN_Tex2d || n is SFN_Cubemap ) { // Check MIP input - if( n.GetInputIsConnected( "MIP" ) ) { - foundMipUsed = true; - //mipNode = n; - } - } - - //if(SF_Debug.dynamicNodeLoad) - if( SF_Editor.NodeExistsAndIs( n, "SFN_SkyshopSpec" ) ) { - //if(n.GetInputIsConnected("GLOSS")){ - foundMipUsed = true; - //mipNode = n; - //} - } - - - - - - foreach( SF_NodeConnector con in n.connectors ) { - if( con.conType == ConType.cOutput ) - continue; - if( con.required && !con.IsConnected() ) { - string err = "Missing required"; - err += string.IsNullOrEmpty( con.label ) ? " " : " [" + con.label + "] "; - err += "input on " + con.node.nodeName; - Errors.Add( SF_ErrorEntry.Create( err, con, false ) ); - } - } - } - - - - // WARNINGS - - if( editor.ps.catBlending.autoSort ) { - - bool alphaConnected = editor.ps.HasAlpha(); - - - - if( editor.ps.catLighting.transparencyMode == SFPSC_Lighting.TransparencyMode.Fade ) { - - bool usingAlphaBlend = editor.ps.catBlending.blendSrc == BlendMode.SrcAlpha && editor.ps.catBlending.blendDst == BlendMode.OneMinusSrcAlpha; - - if( alphaConnected && !usingAlphaBlend ) { - SF_ErrorEntry error = SF_ErrorEntry.Create( "Opacity is connected, but your shader isn't alpha blended, which is required by the fade transparency mode. Click the icon to make it alpha blended!", true ); - error.action = () => { - UnityEditor.Undo.RecordObject( editor.ps.catBlending, "error correction" ); - editor.ps.catBlending.blendModePreset = BlendModePreset.AlphaBlended; - editor.ps.catBlending.ConformBlendsToPreset(); - }; - Errors.Add( error ); - } - - if( !alphaConnected && usingAlphaBlend ) { - SF_ErrorEntry error = SF_ErrorEntry.Create( "Opacity is not connected, but your shader is alpha blended. Click the icon to make it opaque!", true ); - error.action = () => { - UnityEditor.Undo.RecordObject( editor.ps.catBlending, "error correction" ); - editor.ps.catBlending.blendModePreset = BlendModePreset.Opaque; - editor.ps.catBlending.ConformBlendsToPreset(); - }; - Errors.Add( error ); - } - } - - - - - - if( editor.ps.catLighting.transparencyMode == SFPSC_Lighting.TransparencyMode.Reflective ) { - - bool usingAlphaBlendPremul = editor.ps.catBlending.blendSrc == BlendMode.One && editor.ps.catBlending.blendDst == BlendMode.OneMinusSrcAlpha; - - if( alphaConnected && !usingAlphaBlendPremul ) { - SF_ErrorEntry error = SF_ErrorEntry.Create( "Opacity is connected, but your shader isn't using premultiplied alpha blending, which is required by the reflective transparency mode. Click the icon to use premultiplied alpha blending!", true ); - error.action = () => { - UnityEditor.Undo.RecordObject( editor.ps.catBlending, "error correction" ); - editor.ps.catBlending.blendModePreset = BlendModePreset.AlphaBlendedPremultiplied; - editor.ps.catBlending.ConformBlendsToPreset(); - }; - Errors.Add( error ); - } - - if( !alphaConnected && usingAlphaBlendPremul ) { - SF_ErrorEntry error = SF_ErrorEntry.Create( "Opacity is not connected, but your shader is using premultiplied alpha blending. Click the icon to make it opaque!", true ); - error.action = () => { - UnityEditor.Undo.RecordObject( editor.ps.catBlending, "error correction" ); - editor.ps.catBlending.blendModePreset = BlendModePreset.Opaque; - editor.ps.catBlending.ConformBlendsToPreset(); - }; - Errors.Add( error ); - } - } - - - - } - - - - - /* - true, // - Direct3D 9 - true, // - Direct3D 11 - true, // - OpenGL - true, // - OpenGL ES 2.0 - false, // - Xbox 360 - false, // - PlayStation 3 - false, // - Flash - false // - Direct3D 11 for Windows RT - */ - bool osx = Application.platform == RuntimePlatform.OSXEditor; - bool windows = !osx; - bool ogl = editor.ps.catMeta.usedRenderers[2]; - bool dx9 = editor.ps.catMeta.usedRenderers[0]; - bool dx11 = editor.ps.catMeta.usedRenderers[1]; - -#if UNITY_5_0 - bool inDx11Mode = UnityEditor.PlayerSettings.useDirect3D11; -#else - bool inDx11Mode = true; -#endif - - if( osx && !ogl ) { - SF_ErrorEntry error = SF_ErrorEntry.Create( "Your shader will not render properly on your workstation - you need to have OpenGL enabled when working in OSX. Click the icon to enable OpenGL!", true ); - error.action = () => { - UnityEditor.Undo.RecordObject( editor.ps.catMeta, "error correction - enable OpenGL" ); - editor.ps.catMeta.usedRenderers[2] = true; - editor.OnShaderModified( NodeUpdateType.Hard ); - }; - Errors.Add( error ); - } else if( windows ) { - if( inDx11Mode && !dx11 ) { - SF_ErrorEntry error = SF_ErrorEntry.Create( "Your shader might not render properly on your workstation - you need to have Direct3D 11 enabled when working in DX11 mode on Windows. Click the icon to enable Direct3D 11!", true ); - error.action = () => { - UnityEditor.Undo.RecordObject( editor.ps.catMeta, "error correction - enable Direct3D 11" ); - editor.ps.catMeta.usedRenderers[1] = true; - editor.OnShaderModified( NodeUpdateType.Soft ); - }; - Errors.Add( error ); - } else if( !inDx11Mode && !dx9 ) { - SF_ErrorEntry error = SF_ErrorEntry.Create( "Your shader might not render properly on your workstation - you need to have Direct3D 9 enabled when working on Windows. Click the icon to enable Direct3D 9!", true ); - error.action = () => { - UnityEditor.Undo.RecordObject( editor.ps.catMeta, "error correction - enable Direct3D 9" ); - editor.ps.catMeta.usedRenderers[0] = true; - editor.OnShaderModified( NodeUpdateType.Soft ); - }; - Errors.Add( error ); - } - } - - - - - - if( editor.ps.catLighting.lightMode == SFPSC_Lighting.LightMode.PBL ) { - if( editor.ps.HasDiffuse() && !editor.ps.HasSpecular() ) { - Errors.Add( SF_ErrorEntry.Create( "Using PBL requires metallic/specular to be connected", false ) ); - } - if( !editor.ps.HasDiffuse() && editor.ps.HasSpecular() ) { - Errors.Add( SF_ErrorEntry.Create( "Using PBL requires metallic/specular to be connected", false ) ); - } - } - - - - - - - - - List dupes = new List(); - SF_Node[] propNodes = cNodes.Where(x=>x.IsProperty()).ToArray(); - for( int i = 0; i < propNodes.Length; i++ ) { - for( int j = i+1; j < propNodes.Length; j++ ) { - string nameA = propNodes[i].property.nameInternal; - string nameB = propNodes[j].property.nameInternal; - - if( nameA == nameB ) { - dupes.Add( propNodes[j] ); - } - - } - } - if( dupes.Count > 0 ) { - foreach( SF_Node dupe in dupes ) { - Errors.Add( SF_ErrorEntry.Create( "You have property nodes with conflicting internal names. Please rename one of the " + dupe.property.nameInternal + " nodes", dupe, false ) ); - } - } - - - - - List dupesVarname = new List(); - for( int i = 0; i < cNodes.Count; i++ ) { - for( int j = i + 1; j < cNodes.Count; j++ ) { - - string nameAvar = cNodes[i].variableName; - string nameBvar = cNodes[j].variableName; - - if( nameAvar == nameBvar && dupes.Contains( cNodes[j] ) == false ) { - dupesVarname.Add( cNodes[j] ); - } - } - } - if( dupesVarname.Count > 0 ) { - foreach( SF_Node dupeVarname in dupesVarname ) { - Errors.Add( SF_ErrorEntry.Create( "You have nodes with conflicting variable names. Please rename one of the " + dupeVarname.variableName + " nodes", dupeVarname, false ) ); - } - } - - - // Make sure you set the shader to double sided - if( !editor.ps.catGeometry.IsDoubleSided() && hasFacingNode ) { - SF_ErrorEntry error = SF_ErrorEntry.Create( "You are using the Face Sign node, but your shader isn't double-sided. Click the icon to fix", false ); - error.action = () => { - UnityEditor.Undo.RecordObject( editor.ps.catGeometry, "error correction - fix double sided" ); - editor.ps.catGeometry.cullMode = SFPSC_Geometry.CullMode.DoubleSided; - editor.OnShaderModified( NodeUpdateType.Hard ); - }; - Errors.Add( error ); - } - - - - - - - // Check if there are any textures in the vertex input - texturesInVertShader = HasNodeInput( editor.mainNode.vertexOffset ) || HasNodeInput( editor.mainNode.outlineWidth ); - viewDirectionInVertOffset = HasNodeInput( editor.mainNode.vertexOffset ); - - - - editor.shaderEvaluator.RemoveGhostNodes(); - - - if( foundMipUsed ) { - //if( !mipInputUsed ) // This should be fixed with #pragma glsl - // errors.Add( new SF_ErrorEntry( "MIP input is only supported in Direct X", mipNode ) ); - mipInputUsed = true; - } else { - mipInputUsed = false; - } - - - int errorCount = Errors.Count( x => !x.isWarning ); // Let it compile, even though it has warnings - - if( errorCount == 0 ) - return true; - //DisplayErrors(); - return false; - } - - private bool ConnectedNodeWithInternalNameExists( List cNodes, string s ) { - foreach( SF_Node n in cNodes.Where( x => x.IsProperty() ) ) { - if( n.property.nameInternal == s ) { - return true; - } - } - return false; - } - - - - public bool HasNodeInput( SF_NodeConnector con ) { - - if( con.IsConnectedEnabledAndAvailable() ) { - - if( con.inputCon.node is T ) { - return true; - } - - // Recursively loop through inputs of the connnected node - foreach( SF_NodeConnector c in con.inputCon.node.connectors ) { - if( c.conType == ConType.cOutput ) - continue; - if( !c.IsConnected() ) - continue; - if( HasNodeInput( c ) ) { - return true; - } - } - - } - return false; - } - - - - - - // Returns all nodes connected to the final node - public List GetListOfConnectedNodesWithGhosts( out List ghosts, bool passDependent = false ) { - //Debug.Log ("GetListOfConnectedNodesWithGhosts()"); - ResetAllNodeStatuses(); - editor.mainNode.status.SetLeadsToFinalRecursively( all: false, passDependent: passDependent ); - List filtered = new List(); - foreach( SF_Node n in editor.nodes ) { - if( n.status.leadsToFinal ) - filtered.Add( n ); - } - - // Now that's done, let's return the ghost nodes too, if any - editor.shaderEvaluator.RemoveGhostNodes(); // TODO: Really? - ghosts = new List(); - - foreach( SF_Node n in filtered ) { - n.DefineGhostsIfNeeded( ref ghosts ); - } - - //Debug.Log ("GetListOfConnectedNodesWithGhosts, ghosts.Count: " + ghosts.Count); - - filtered.AddRange( ghosts ); - - return filtered; - } - - // Resets all node statuses - public void ResetAllNodeStatuses() { - foreach( SF_Node n in editor.nodes ) { - n.status.Reset(); - } - } - - - - - - } -} \ No newline at end of file diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/SF_NodeTreeStatus.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/SF_NodeTreeStatus.cs.meta deleted file mode 100755 index 34b8e4db..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/SF_NodeTreeStatus.cs.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: 9e9cc643ea4c843b2a52e98a499ad6bc -MonoImporter: - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/SF_Parser.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/SF_Parser.cs deleted file mode 100755 index 8927fb0d..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/SF_Parser.cs +++ /dev/null @@ -1,280 +0,0 @@ -using UnityEngine; -using UnityEditor; -using System.IO; -using System; -using System.Linq; -using System.Collections.Generic; - -namespace ShaderForge { - public static class SF_Parser { - - public static SF_Editor editor; - static List links; - public static bool quickLoad = false; - public static bool settingUp = false; - - - - - - /* - static void Temp() { - byte maj = 2; - byte min = 6; - - int combined = InternalVersion(maj,min); - Debug.Log( "Combined: " + combined ); - Debug.Log( "Resplit: " + ExternalVersion( combined ) ); - - } - - public static string ExternalVersion( int internalVersion ) { - byte oMaj = (byte)( internalVersion >> 8 ); - byte oMin = (byte)( internalVersion & 0x0000ffff ); - return oMaj + "." + oMin.ToString( "D2" ); - } - - public static int InternalVersion( byte maj, byte min ) { - return ( ( maj << 8 ) & 0xffff ) | min; - } - * */ - - - public static bool SerializedNodeIsProperty( string s ){ - return s.Contains(",ptlb:"); // Property label - } - - public static bool ParseNodeDataFromShader( SF_Editor editor, Shader s ) { - SF_Parser.editor = editor; - SF_Parser.links = new List(); - // Search for Shader Forge data - float version; - string data = ExtractShaderForgeData( s, out version ); - if( string.IsNullOrEmpty( data ) ) { - editor.CreateOutputNode(); - return true; // Empty shader - } - string missingNode; - bool didLoadFlawlessly = LoadFromNodeData( data, version, out missingNode ); - - if( !didLoadFlawlessly ) { - EditorUtility.DisplayDialog( "Failed to load shader", "Failed to open shader due to missing the node [" + missingNode + "]", "Close" ); - editor.Close(); -// editor.Init(); - //editor.closeMe = true; - //editor.initialized = false; - //SF_Editor.instance = null; - //editor.Close(); - return false; - } - - return true; - - } - - - - - private static bool LoadFromNodeData( string data, float version, out string missingNode ) { - // First, split by rows (;) - missingNode = ""; - string[] rows = data.Split( ';' ); // TODO: Escape ; and | characters in user created comments! - - // TODO: Subshaders etc - SF_Parser.settingUp = true; - SF_Parser.quickLoad = true; - foreach( string row in rows ) { - if( row.StartsWith( "n:" ) ) { - //Debug.Log("Deserializing node:" + row); - SF_Node node = SF_Node.Deserialize( row.Substring( 2 ), ref links ); - if( node == null ) { - missingNode = row.Substring( 2 ).Split(',')[0].Split(':')[1]; - SF_Parser.settingUp = false; - SF_Parser.quickLoad = false; - return false; // Interrupt node loading, node wasn't found - } - continue; - } - if( row.StartsWith( "ps:" ) ) { - editor.ps.Deserialize( row.Substring( 3 ) ); - continue; - } - if( row.StartsWith( "proporder:" ) ) { - editor.nodeView.treeStatus.DeserializeProps( row.Substring(10) ); - continue; - } - } - - // Create all node links - for( int i = 0; i < links.Count; i++ ) { - links[i].Establish( editor ); - } - - - // If this was created in a version older than 0.37, reverse the node tree around its center point - if( version <= 0.36f){ - - Debug.Log("Reversing node tree due to shader being created before the reversal in 0.37"); - - // Average node position - float avgX = editor.nodes.Average(x => x.rect.center.x); - - // Reverse all nodes - foreach(SF_Node node in editor.nodes){ - Vector2 old = node.rect.center; - node.rect.center = new Vector2(2 * avgX - old.x, old.y); - } - - } - - - - //Debug.Log("All links established, hierarchally refreshing..."); - // Refresh hierarchally - - //Profiler.BeginSample ("MyPieceOfCode"); - - //editor.nodeView.HierarchalRefresh(); - - //Profiler.EndSample(); - - - //Debug.Log( "Reconnect pending..." ); - - editor.nodeView.ReconnectConnectedPending(); - SF_Parser.quickLoad = false; - - //Debug.Log( "Reconnect done, updating auto settings..." ); - - // Update auto settings based on everything connected - editor.ps.UpdateAutoSettings(); - - //Debug.Log( "Auto settings done, centering camera..." ); - - // Center camera - editor.nodeView.CenterCamera(); - SF_Parser.settingUp = false; - SF_Parser.quickLoad = false; - - - // Update preview images by refreshing all outermost nodes - editor.nodeView.HierarchalRefresh(); - - //Debug.Log( "Centered camera, recompiling shader..." ); - editor.mainNode.OnUpdateNode( NodeUpdateType.Hard, true ); - - return true; - } - - - - - - - public static string ExtractShaderForgeData( Shader s, out float version, bool setPath = true, bool findRenderers = true, bool findLOD = true) { - - string path = AssetDatabase.GetAssetPath( s ); - string[] shaderData = File.ReadAllLines( path ); - - string returnString = ""; - - version = 0f; - - if( shaderData.Length == 0 || shaderData == null ) { - //Debug.LogWarning( "Shader file empty" ); - return null; - } - - bool found_data = false; - bool found_renderers = !findRenderers; - bool found_path = !setPath; - bool found_LOD = !findLOD; - - - for( int i = 0; i < shaderData.Length; i++ ) { - if(shaderData[i].Contains("Shader created with Shader Forge")){ - string[] split = shaderData[i].Trim().Split(' '); - string verStr = split[split.Length-1]; - - if( verStr.StartsWith( "v" ) ) - verStr = verStr.Substring( 1 ); - - version = float.Parse(verStr); - } - if( shaderData[i].StartsWith( "/*SF_DATA;" ) ) { - returnString = shaderData[i].Substring( 10, shaderData[i].Length - 12 ); // Exclude comment markup - found_data = true; - } - if( setPath ) - if( shaderData[i].StartsWith( "Shader" ) ) { - editor.currentShaderPath = shaderData[i].Split( '\"' )[1]; - found_path = true; - } - if( findRenderers ) { - if( shaderData[i].TrimStart().StartsWith( "#pragma only_renderers" ) ) { - ParseRenderer( shaderData[i].Trim().Split( ' ' ), true); - found_renderers = true; - } else if( shaderData[i].TrimStart().StartsWith( "#pragma exclude_renderers" ) ) { - ParseRenderer( shaderData[i].Trim().Split( ' ' ), false ); - found_renderers = true; - } - } - if( findLOD ) { - if( shaderData[i].TrimStart().StartsWith( "LOD " ) ) { - editor.ps.catMeta.LOD = int.Parse(shaderData[i].Trim().Split( ' ' )[1]); - found_LOD = true; - } - } - - if( found_data && found_path && found_renderers && found_LOD ) - break; - } - - - - if( string.IsNullOrEmpty( returnString ) ) { - //Debug.LogWarning( "Shader did not contain node data" ); - } - - // TODO: check when it was last changed! - // This is where it should ask you if you want to overwrite the existing data, - // if it's older than x minutes - - return returnString; - } - - - public static bool ContainsShaderForgeData(Shader s){ - float version; - string sfData = SF_Parser.ExtractShaderForgeData( s, out version, false, false, false ); - return !string.IsNullOrEmpty( sfData ); - } - - public static void ParseRenderer( string[] arr, bool only ) { - for( int i = 0; i < editor.ps.catMeta.usedRenderers.Length; i++ ) { - editor.ps.catMeta.usedRenderers[i] = !only; // Enable or disable all - } - for( int i = 2; i < arr.Length; i++ ) { // i = 2 to ignore #pragma x_renderers - string rndr = arr[i]; - if( rndr == "flash" ) { - Debug.LogWarning( "Flash is no longer supported by Unity, and was removed from the shader" ); - continue; - } - if( rndr == "ps3" ) { - Debug.LogWarning( "PS3 is no longer supported by Unity since 5.5, and was removed from the shader" ); - continue; - } - if( rndr == "xbox360" ) { - Debug.LogWarning( "Xbox 360 is no longer supported by Unity since 5.5, and was removed from the shader" ); - continue; - } - if( rndr == "opengl" ) { - rndr = "glcore"; - } - int enm = (int)((RenderPlatform)Enum.Parse( typeof( RenderPlatform ), rndr )); - editor.ps.catMeta.usedRenderers[enm] = only; // Disable or enable one - } - } - - } -} \ No newline at end of file diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/SF_Parser.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/SF_Parser.cs.meta deleted file mode 100755 index 5c3d3717..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/SF_Parser.cs.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: 75956f9dcf7c14856949a94823268bb4 -MonoImporter: - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/SF_PassSettings.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/SF_PassSettings.cs deleted file mode 100755 index 18d62789..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/SF_PassSettings.cs +++ /dev/null @@ -1,414 +0,0 @@ -using UnityEngine; -using UnityEditor; -using System.Collections; -using System.Collections.Generic; - -namespace ShaderForge { - - - [System.Serializable] - public class SF_PassSettings : ScriptableObject { - - // Mat ed - public SF_Editor editor; - public SF_FeatureChecker fChecker; - - - - - // SERIALIZATION OF VARS - public string Serialize() { - string s = "ps:"; - foreach(SFPS_Category cat in cats){ - s += cat.Serialize(); - } - return s.Substring(0,s.Length-1); - } - - - // TODO: Remove this, keep it in cats - private string Serialize( string key, string value, bool last = false ) { - return key + ":" + value + (last ? "" : ","); - } - - // DESERIALIZATION OF VARS - public void Deserialize(string s) { - string[] split = s.Split(','); - for( int i = 0; i < split.Length; i++ ) { - string[] keyval = split[i].Split(':'); - Deserialize( keyval[0], keyval[1] ); - } - } - - public void Deserialize( string key, string value ) { - foreach(SFPS_Category cat in cats){ - cat.Deserialize(key, value); - } - catBlending.UpdateAutoSort(); - } - - - - - - // END SERIALIZATION - - - // Node/auto vars - public string n_diffuse { - get { return mOut.diffuse.TryEvaluate(); } // Vector3 only - } - public string n_alpha { - get { return mOut.alpha.TryEvaluate(); } - } - public string n_alphaClip { - get { return mOut.alphaClip.TryEvaluate(); } - } - public string n_diffusePower { - get { return mOut.diffusePower.TryEvaluate(); } - } - public string n_gloss { - get { return mOut.gloss.TryEvaluate(); } - } - public string n_specular { - get { return mOut.specular.TryEvaluate(); } // Vector3 only - } - public string n_normals { - get { return mOut.normal.TryEvaluate(); } // Vector3 only - } - public string n_emissive { - get { return mOut.emissive.TryEvaluate(); } // Vector3 only - } - public string n_transmission { - get { return mOut.transmission.TryEvaluate(); } - } - public string n_lightWrap { - get { return mOut.lightWrap.TryEvaluate(); } - } - - public string n_ambientDiffuse { - get { return mOut.ambientDiffuse.TryEvaluate(); } - } - public string n_ambientSpecular { - get { return mOut.ambientSpecular.TryEvaluate(); } - } - public string n_diffuseOcclusion { - get { return mOut.diffuseOcclusion.TryEvaluate(); } - } - public string n_specularOcclusion { - get { return mOut.specularOcclusion.TryEvaluate(); } - } - public string n_customLighting { - get { return mOut.customLighting.TryEvaluate(); } - } - - public string n_outlineWidth { - get { return mOut.outlineWidth.TryEvaluate(); } - } - public string n_outlineColor { - get { return mOut.outlineColor.TryEvaluate(); } - } - public string n_distortion { - get { return mOut.refraction.TryEvaluate(); } - } - public string n_vertexOffset { - get { return mOut.vertexOffset.TryEvaluate(); } - } - public string n_displacement { - get { return mOut.displacement.TryEvaluate(); } - } - public string n_tessellation { - get { return mOut.tessellation.TryEvaluate(); } - } - public SFN_Final mOut { - get { return editor.mainNode; } - } - - - // GUI controls - //const int expIndent = 16; - - public List cats; - public SFPSC_Meta catMeta; - public SFPSC_Properties catProperties; - public SFPSC_Lighting catLighting; - public SFPSC_Geometry catGeometry; - public SFPSC_Blending catBlending; - public SFPSC_Experimental catExperimental; - public SFPSC_Console catConsole; - - // Add more here - - public int maxWidth; - - public SF_PassSettings() { - - } - - public void OnEnable() { - base.hideFlags = HideFlags.HideAndDontSave; - } - - public SF_PassSettings Initialize( SF_Editor materialEditor ) { - - this.editor = materialEditor; - fChecker = ScriptableObject.CreateInstance().Initialize(this, materialEditor); - - cats = new List(); - cats.Add( catMeta = NewCat ( "Shader Settings" )); - cats.Add( catProperties = NewCat ( "Properties" )); - cats.Add( catLighting = NewCat ( "Lighting" )); - cats.Add( catGeometry = NewCat ( "Geometry" )); - cats.Add( catBlending = NewCat ( "Blending" )); - cats.Add( catExperimental = NewCat ( "Experimental" )); - cats.Add( catConsole = NewCat ( "Console" )); - - return this; - } - - public T NewCat(string label) where T : SFPS_Category{ - return (T)ScriptableObject.CreateInstance().Initialize(this.editor, this, label); - } - - - Rect innerScrollRect = new Rect(0,0,0,0); - Vector2 scrollPos; - - float targetScrollWidth = 0f; - float currentScrollWidth = 0f; - - // Call this from the editor script - public bool guiChanged = false; - public int OnLocalGUI( int yOffset, int in_maxWidth ) { - - - if(Event.current.type == EventType.Repaint) - currentScrollWidth = Mathf.Lerp(currentScrollWidth, targetScrollWidth, 0.3f); - - this.maxWidth = in_maxWidth; - - Rect scrollRectPos = new Rect(0f,yOffset,in_maxWidth,Screen.height/EditorGUIUtility.pixelsPerPoint-yOffset-20); - bool useScrollbar = (innerScrollRect.height > scrollRectPos.height); - - targetScrollWidth = useScrollbar ? 15 : 0; - - int scrollBarWidth = (int)currentScrollWidth; - - - innerScrollRect.width = in_maxWidth-scrollBarWidth; - - guiChanged = false; - - int offset = 0; - - if(innerScrollRect.height < scrollRectPos.height) - innerScrollRect.height = scrollRectPos.height; - - this.maxWidth -= scrollBarWidth; - - int scrollPad = scrollBarWidth-15; - GUI.BeginGroup(scrollRectPos); - Rect scrollWrapper = scrollRectPos; - scrollWrapper.x = 0; - scrollWrapper.y = 0; // Since it's grouped - scrollPos = GUI.BeginScrollView(scrollWrapper.PadRight(scrollPad),scrollPos,innerScrollRect,false,true); - { - //offset = SettingsMeta( 0 ); - bool showErrors = editor.nodeView.treeStatus.Errors.Count > 0; - if( !showErrors ) - catConsole.expanded = false; - EditorGUI.BeginDisabledGroup( !showErrors ); - offset = catConsole.Draw( offset ); - offset = GUISeparator( offset ); // ---------------------------------------------- - EditorGUI.EndDisabledGroup(); - offset = catMeta.Draw( offset ); - offset = GUISeparator( offset ); // ---------------------------------------------- - offset = catProperties.Draw(offset); - offset = GUISeparator( offset ); // ---------------------------------------------- - offset = catLighting.Draw(offset); - offset = GUISeparator( offset ); // ---------------------------------------------- - offset = catGeometry.Draw( offset ); - offset = GUISeparator( offset ); // ---------------------------------------------- - offset = catBlending.Draw(offset); - offset = GUISeparator( offset ); // ---------------------------------------------- - offset = catExperimental.Draw(offset); - offset = GUISeparator( offset ); // ---------------------------------------------- - - } - GUI.EndScrollView(); - GUI.EndGroup(); - this.maxWidth += scrollBarWidth; - - - if( guiChanged ) { - editor.ps = this; - editor.OnShaderModified(NodeUpdateType.Hard); - } - - innerScrollRect.height = offset; - return offset; - - } - - - - private bool prevChangeState; - public void StartIgnoreChangeCheck() { - prevChangeState = EditorGUI.EndChangeCheck(); // Don't detect changes when toggling - } - - public void EndIgnoreChangeCheck() { - EditorGUI.BeginChangeCheck(); // Don't detect changes when toggling - if( prevChangeState ) { - GUI.changed = true; - } - } - - - - public void UpdateAutoSettings(){ - catBlending.UpdateAutoSettings(); - } - - - - public int GUISeparator(int yOffset) { - GUI.Box( new Rect(0,yOffset,maxWidth,1), "", EditorStyles.textField ); - return yOffset + 1; - } - - public bool IsOutlined(){ - return mOut.outlineWidth.IsConnectedEnabledAndAvailable(); - } - - public bool UseClipping() { - return mOut.alphaClip.IsConnectedEnabledAndAvailable(); - } - - public bool HasGloss(){ - return mOut.gloss.IsConnectedEnabledAndAvailable(); - } - - public bool HasNormalMap() { - return mOut.normal.IsConnectedEnabledAndAvailable(); - } - - public bool HasTangentSpaceNormalMap() { - return HasNormalMap() && catGeometry.normalSpace == SFPSC_Geometry.NormalSpace.Tangent; - } - public bool HasObjectSpaceNormalMap() { - return HasNormalMap() && catGeometry.normalSpace == SFPSC_Geometry.NormalSpace.Object; - } - public bool HasWorldSpaceNormalMap() { - return HasNormalMap() && catGeometry.normalSpace == SFPSC_Geometry.NormalSpace.World; - } - - public bool HasRefraction() { - return mOut.refraction.IsConnectedEnabledAndAvailable(); - } - - public bool HasTessellation() { - return mOut.tessellation.IsConnectedEnabledAndAvailable(); - } - public bool HasOutline() { - return mOut.outlineWidth.IsConnectedEnabledAndAvailable(); - } - - public bool HasDisplacement() { - return mOut.displacement.IsConnectedEnabledAndAvailable(); - } - - public bool HasEmissive() { - return mOut.emissive.IsConnectedEnabledAndAvailable(); - } - - public bool HasDiffuse(){ - return mOut.diffuse.IsConnectedEnabledAndAvailable(); - } - - public bool HasAlpha() { - return mOut.alpha.IsConnectedEnabledAndAvailable(); - } - - public bool HasAlphaClip() { - return mOut.alphaClip.IsConnectedEnabledAndAvailable(); - } - - public bool HasSpecular(){ - return mOut.specular.IsConnectedEnabledAndAvailable(); - } - - public bool HasDiffusePower(){ - return mOut.diffusePower.IsConnectedEnabledAndAvailable(); - } - - public bool HasAmbientDiffuse() { - return mOut.ambientDiffuse.IsConnectedEnabledAndAvailable(); - } - - public bool HasAmbientSpecular() { - return mOut.ambientSpecular.IsConnectedEnabledAndAvailable(); - } - - public bool HasAmbientOcclusionDiffuse() { - return mOut.diffuseOcclusion.IsConnectedEnabledAndAvailable(); - } - - public bool HasAmbientOcclusionSpecular() { - return mOut.specularOcclusion.IsConnectedEnabledAndAvailable(); - } - - public bool HasTransmission() { - return mOut.transmission.IsConnectedEnabledAndAvailable(); - } - - public bool HasAddedLight() { - return HasEmissive() || catLighting.HasSpecular(); - } - - public bool HasLightWrapping() { - return mOut.lightWrap.IsConnectedEnabledAndAvailable(); - } - } -} - -/* - public class SF_Serializeable{ - - public string key; - - public SF_Serializeable(){ - - } - - public virtual string Serialize(bool last = false){ - } - - public virtual void Deserialize(string key, string value){ - } - - protected string Serialize( string key, string value, bool last = false ) { - return key + ":" + value + (last ? "" : ","); - } - - } - - public class SFS_Int : SF_Serializeable{ - - int val; - - public SFS_Int(string key){ - this.key = key; - } - - public override string Serialize(bool last = false){ - return Serialize(key,val.ToString(),last); - } - - public override void Deserialize(string key, string value){ - if(key == this.key){ - val = int.Parse(value); - } - } - - }*/ \ No newline at end of file diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/SF_PassSettings.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/SF_PassSettings.cs.meta deleted file mode 100755 index 929b76b9..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/SF_PassSettings.cs.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: dc6ba9da0a5ba4b01a67cbac50456748 -MonoImporter: - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/SF_PreviewSettings.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/SF_PreviewSettings.cs deleted file mode 100755 index d6d85bf6..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/SF_PreviewSettings.cs +++ /dev/null @@ -1,22 +0,0 @@ -using UnityEngine; -using System.Collections; - -namespace ShaderForge { - [System.Serializable] - public class SF_PreviewSettings { - - //public SF_PreviewWindow preview; - - // TODO: Load/Save default settings - - public bool previewAutoRotate = true; - public Color colorBg = SF_GUI.ProSkin ? new Color( 0.2f, 0.2f, 0.2f, 1f ) : new Color( 0.6f, 0.6f, 0.6f, 1f ); - - - public SF_PreviewSettings( SF_PreviewWindow preview ) { - //this.preview = preview; - } - - - } -} \ No newline at end of file diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/SF_PreviewSettings.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/SF_PreviewSettings.cs.meta deleted file mode 100755 index dc54a197..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/SF_PreviewSettings.cs.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: 893d44f1243e74fbca6139978a92f372 -MonoImporter: - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/SF_PreviewWindow.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/SF_PreviewWindow.cs deleted file mode 100755 index 74ff2e0c..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/SF_PreviewWindow.cs +++ /dev/null @@ -1,506 +0,0 @@ -using UnityEngine; -using UnityEditor; -using System.Collections; -using System.Reflection; -using System; - -namespace ShaderForge { - [Serializable] - public class SF_PreviewWindow { - - [SerializeField] - public SF_Editor editor; - [SerializeField] - public SF_PreviewSettings settings; - - // Preview assets - [SerializeField] - public Mesh mesh; - [SerializeField] - public Material internalMaterial; - public Material InternalMaterial { - get { - if(internalMaterial == null){ - internalMaterial = new Material(editor.currentShaderAsset); - } - return internalMaterial; - } - set { - internalMaterial = value; - } - } - - [SerializeField] - public RenderTexture render; // TODO: Why is this separated from the RT itself? - [SerializeField] - GUIStyle previewStyle; - [SerializeField] - public Texture2D backgroundTexture; - - bool previewIsSetUp = false; // Intentionally non-serialized - - - // Input/Rotation - [SerializeField] - public bool isDraggingLMB = false; - [SerializeField] - Vector2 dragStartPosLMB = Vector2.zero; - [SerializeField] - Vector2 rotMeshStart = new Vector2(-30f,0f); - [SerializeField] - Vector2 rotMesh = new Vector2(30f,0f); - [SerializeField] - Vector2 rotMeshSmooth = new Vector2(-30f,0f); - - // Light Input/Rotation - [SerializeField] - public bool isDraggingRMB = false; - - [SerializeField] - public Camera cam; - [SerializeField] - Transform camPivot; - [SerializeField] - Light[] lights; - - //public bool drawBgColor = true; - - Mesh _sphereMesh; - Mesh sphereMesh { - get { - if( _sphereMesh == null ) { - _sphereMesh = GetSFMesh( "sf_sphere" ); - } - return _sphereMesh; - } - } - - // Reflection to call Handles.SetCameraOnlyDrawMesh(this.m_Camera); - MethodInfo mSetCameraOnlyDrawMesh; - - public SF_PreviewWindow( SF_Editor editor ) { - settings = new SF_PreviewSettings( this ); - UpdatePreviewBackgroundColor(); - - this.editor = editor; - this.mesh = GetSFMesh( "sf_sphere" ); - SetupPreview(); - } - - [SerializeField] bool enabled = true; - public void OnEnable() { - enabled = true; - SetupPreview(); - } - public void OnDisable() { - enabled = false; - CleanupObjects(); - } - - public Mesh GetSFMesh(string find_name) { - UnityEngine.Object[] objs = SF_Resources.LoadAll( SF_Resources.pMeshes+"sf_meshes.fbx" ); - if( objs == null ) { - Debug.LogError( "sf_meshes.fbx missing" ); - return null; - } - if( objs.Length == 0 ) { - Debug.LogError( "sf_meshes.fbx missing sub assets" ); - return null; - } - foreach( UnityEngine.Object o in objs ) { - if( o.name == find_name && o.GetType() == typeof(Mesh)) { - return o as Mesh; - } - } - Debug.LogError("Mesh " + find_name + " could not be found in sf_meshes.fbx"); - return null; - } - - - public void SetupPreview() { - - previewIsSetUp = true; - - // Create preview camera - GameObject camObj = new GameObject("Shader Forge Camera"); - camObj.hideFlags = HideFlags.HideAndDontSave; - cam = camObj.AddComponent(); - cam.targetTexture = render; - cam.clearFlags = CameraClearFlags.SolidColor; - cam.renderingPath = RenderingPath.Forward; - cam.enabled = false; - cam.useOcclusionCulling = false; - cam.cameraType = CameraType.Preview; - cam.fieldOfView = targetFOV; - - // Make sure it only renders using DrawMesh, to make ignore the scene. This is a bit risky, due to using reflection :( - BindingFlags bfs = BindingFlags.Static | BindingFlags.NonPublic; - Type[] args = new Type[]{ typeof(Camera) }; - mSetCameraOnlyDrawMesh = typeof( Handles ).GetMethod( "SetCameraOnlyDrawMesh", bfs, null, args, null ); - mSetCameraOnlyDrawMesh.Invoke( null, new object[]{ cam } ); - - // Create pivot/transform to hold it - camPivot = new GameObject("Shader Forge Camera Pivot").transform; - camPivot.gameObject.hideFlags = HideFlags.HideAndDontSave; - cam.clearFlags = CameraClearFlags.Skybox; - cam.transform.parent = camPivot; - - // Create custom light sources - lights = new Light[] { - new GameObject("Light 0").AddComponent(), - new GameObject("Light 1").AddComponent() - }; - for( int i = 0; i < lights.Length; i++ ) { - lights[i].gameObject.hideFlags = HideFlags.HideAndDontSave; - lights[i].type = LightType.Directional; - lights[i].lightmapBakeType = LightmapBakeType.Realtime; - lights[i].enabled = false; - } - - lights[0].intensity = 1f; - lights[0].transform.rotation = Quaternion.Euler( 30f, 30f, 0f ); - lights[1].intensity = 0.75f; - lights[1].color = new Color( 1f, 0.5f, 0.25f ); - lights[1].transform.rotation = Quaternion.Euler( 340f, 218f, 177f ); - } - - void CleanupObjects() { - GameObject.DestroyImmediate( cam.gameObject ); - GameObject.DestroyImmediate( camPivot.gameObject ); - for( int i = 0; i < lights.Length; i++ ) { - GameObject.DestroyImmediate( lights[i].gameObject ); - } - } - - - public bool SkyboxOn{ - get{ - return cam.clearFlags == CameraClearFlags.Skybox; - } - set{ - if(SF_Debug.renderDataNodes) - cam.clearFlags = CameraClearFlags.Depth; - else - cam.clearFlags = value ? CameraClearFlags.Skybox : CameraClearFlags.SolidColor; - } - } - - static Vector2 rotMeshSphere = new Vector2( 22, -18 - 90 - 12 ); - const float fovSphere = 23.4f; - - public void PrepareForDataScreenshot(){ - - // Reset rotation - // Reset zoom - // Stop auto-rotate - - rotMesh.x = rotMeshSmooth.x = rotMeshSphere.x; - rotMesh.y = rotMeshSmooth.y = rotMeshSphere.y; - cam.fieldOfView = targetFOV = smoothFOV = fovSphere; - - } - - - public int OnGUI( int yOffset, int maxWidth ) { - - if( enabled == false ) - return yOffset; - - Rect topBar = new Rect( 0, yOffset, maxWidth, 18 ); - - - GUI.Box( topBar, "", EditorStyles.toolbar ); - - Rect r = new Rect( topBar ); - r.width = maxWidth / 3; - r.height = 16; - r.x += 10; - r.y += 1; - - //EditorGUILayout.BeginHorizontal(); - //{ - EditorGUI.BeginChangeCheck(); - mesh = (Mesh)EditorGUI.ObjectField(r, mesh, typeof( Mesh ), false ); - if( EditorGUI.EndChangeCheck() ) { - targetFOV = 35f; - //editor.Defocus(); // TODO: This is a bit hacky - } - - r.x += r.width + 10; - r.width *= 0.5f; - EditorGUI.BeginChangeCheck(); - GUI.enabled = cam.clearFlags != CameraClearFlags.Skybox; - //GUI.color = GUI.enabled ? Color.white : new Color(1f,1f,1f,0.5f); - settings.colorBg = EditorGUI.ColorField( r, "", settings.colorBg ); - cam.backgroundColor = settings.colorBg; - - GUI.enabled = true; - //GUI.color = Color.white; - if( EditorGUI.EndChangeCheck() ) - UpdatePreviewBackgroundColor(); - - - r.x += r.width + 10; - r.width += 10; - - - GUI.enabled = RenderSettings.skybox != null; - SkyboxOn = GUI.Toggle( r, SkyboxOn, "Skybox" ); - if(RenderSettings.skybox == null && SkyboxOn){ - SkyboxOn = false; - } - GUI.enabled = true; - - r.x += r.width + 10; - settings.previewAutoRotate = GUI.Toggle( r, settings.previewAutoRotate, "Rotate" ); - - - Rect previewRect = new Rect( topBar ); - previewRect.y += topBar.height; - previewRect.height = topBar.width; - - - UpdateCameraZoom(); - DrawMeshGUI( previewRect ); - if(SF_Debug.renderDataNodes) - GUI.Label(previewRect, "rotMesh.x = " + rotMesh.x + " rotMesh.y = " + rotMesh.y); - - return (int)previewRect.yMax; - } - - public void UpdateRenderPath(){ - SFPSC_Lighting.RenderPath rPath = editor.ps.catLighting.renderPath; - - if(rPath == SFPSC_Lighting.RenderPath.Forward){ - cam.renderingPath = RenderingPath.Forward; - } else if(rPath == SFPSC_Lighting.RenderPath.Deferred){ - cam.renderingPath = RenderingPath.DeferredLighting; - //pruCam.clearFlags == CameraClearFlags.Depth; - } - } - - public void UpdateRot(){ - if(settings.previewAutoRotate){ - rotMesh.y += (float)(editor.deltaTime * -22.5); - } - rotMeshSmooth = Vector2.Lerp(rotMeshSmooth,rotMesh,0.5f); - } - - public void StartDragLMB() { - isDraggingLMB = true; - if(settings.previewAutoRotate == true){ - settings.previewAutoRotate = false; - } - dragStartPosLMB = Event.current.mousePosition; - rotMeshStart = rotMesh; - } - - public void UpdateDragLMB() { - rotMesh.y = rotMeshStart.y + ( -(dragStartPosLMB.x - Event.current.mousePosition.x) ) * 0.4f; - rotMesh.x = Mathf.Clamp( rotMeshStart.x + ( -(dragStartPosLMB.y - Event.current.mousePosition.y) ) * 0.4f, -90f, 90f ); - } - - public void StopDragLMB() { - isDraggingLMB = false; - } - - - public void StartDragRMB() { - isDraggingRMB = true; - } - - public void UpdateDragRMB() { - - if( Event.current.isMouse && Event.current.type == EventType.mouseDrag ) { - float x = ( -( Event.current.delta.x ) ) * 0.4f; - float y = ( -( Event.current.delta.y ) ) * 0.4f; - for( int i = 0; i < lights.Length; i++ ) { - lights[i].transform.RotateAround( Vector3.zero, cam.transform.right, y ); - lights[i].transform.RotateAround( Vector3.zero, cam.transform.up, x ); - } - } - - - } - - public void StopDragRMB() { - isDraggingRMB = false; - } - - - public bool MouseOverPreview() { - return previewRect.Contains( Event.current.mousePosition ); - } - - [SerializeField] - Rect previewRect = new Rect(0f,0f,1f,1f); - public void DrawMeshGUI( Rect previewRect ) { - - if( previewRect == default( Rect ) ) { - previewRect = this.previewRect; - } - - if( previewRect.width > 1 ) - this.previewRect = previewRect; - - if( Event.current.rawType == EventType.mouseUp ) { - if( Event.current.button == 0 ) - StopDragLMB(); - else if( Event.current.button == 1 ) - StopDragRMB(); - } - - if( Event.current.type == EventType.mouseDown && MouseOverPreview() ) { - if( Event.current.button == 0 ) - StartDragLMB(); - else if( Event.current.button == 1 ) - StartDragRMB(); - } - - if( isDraggingLMB ) - UpdateDragLMB(); - if( isDraggingRMB ) - UpdateDragRMB(); - - - if( mesh == null || InternalMaterial == null || Event.current.type != EventType.repaint ) - return; - - - - if( previewStyle == null ) { - previewStyle = new GUIStyle( EditorStyles.textField ); - } - previewStyle.normal.background = backgroundTexture; - - - - bool makeNew = false; - if( render == null ) { - makeNew = true; - } else if( render.width != (int)previewRect.width || render.height != (int)previewRect.height ) { - RenderTexture.DestroyImmediate( render ); - makeNew = true; - } - - if( makeNew ) { - render = new RenderTexture( (int)previewRect.width, (int)previewRect.height, 24, RenderTextureFormat.ARGB32 ); - render.antiAliasing = 8; - } - - DrawMesh(); - GL.sRGBWrite = ( QualitySettings.activeColorSpace == ColorSpace.Linear ); - GUI.DrawTexture( previewRect, render, ScaleMode.StretchToFill, false ); - GL.sRGBWrite = false; - - } - - - - public void DrawMesh( RenderTexture overrideRT = null, Material overrideMaterial = null, bool sphere = false ) { - if( backgroundTexture == null ) - UpdatePreviewBackgroundColor(); - - // Make sure all objects are set up properly - if( previewIsSetUp == false ) { - SetupPreview(); - } - - - // TODO: Override RT is used for screenshots, probably - if( overrideRT != null ) - cam.targetTexture = overrideRT; - else if( cam.targetTexture == null ) - cam.targetTexture = render; - - UpdateRenderPath(); - - SetCustomLight(on:true); - - Mesh drawMesh = sphere ? sphereMesh : mesh; - - float A = sphere ? rotMeshSphere.y : rotMeshSmooth.y; - float B = sphere ? rotMeshSphere.x : rotMeshSmooth.x; - Quaternion rotA = Quaternion.Euler( 0f, A, 0f ); - Quaternion rotB = Quaternion.Euler( B, 0f, 0f ); - Quaternion finalRot = rotA * rotB; - camPivot.rotation = finalRot; - float meshExtents = drawMesh.bounds.extents.magnitude; - - - Vector3 pos = new Vector3( -drawMesh.bounds.center.x, -drawMesh.bounds.center.y, -drawMesh.bounds.center.z ); - cam.transform.localPosition = new Vector3( 0f, 0f, -3f * meshExtents ); - - int smCount = drawMesh.subMeshCount; - - Material mat = (overrideMaterial == null) ? InternalMaterial : overrideMaterial; - for( int i=0; i < smCount; i++ ) { - Graphics.DrawMesh( drawMesh, Quaternion.identity * pos, Quaternion.identity, mat, 31, cam, i ); - } - - cam.farClipPlane = 3f * meshExtents * 2f; - cam.nearClipPlane = 0.1f; - cam.fieldOfView = sphere ? fovSphere : smoothFOV; - cam.Render(); - - // Reset things - SetCustomLight( on: false ); - - if( overrideRT != null ) - cam.targetTexture = render; - - if( sphere ) // Reset if needed. // TODO: What? - cam.fieldOfView = smoothFOV; - } - - - - - [SerializeField] - const float minFOV = 1f; - [SerializeField] - float targetFOV = 30f; - [SerializeField] - float smoothFOV = 30f; - [SerializeField] - const float maxFOV = 60f; - - public void UpdateCameraZoom() { - - if( Event.current.type == EventType.scrollWheel && MouseOverPreview() ) { - if(Event.current.delta.y > 0f){ - targetFOV+=2f; - } else if( Event.current.delta.y < 0f ){ - targetFOV-=2f; - } - } - if( Event.current.type == EventType.repaint ) { - targetFOV = Mathf.Clamp( targetFOV, minFOV, maxFOV ); - smoothFOV = Mathf.Lerp( cam.fieldOfView, targetFOV, 0.5f ); - } - } - - - public void UpdatePreviewBackgroundColor() { - if( backgroundTexture == null ){ - backgroundTexture = new Texture2D( 1, 1, TextureFormat.ARGB32, false, QualitySettings.activeColorSpace == ColorSpace.Linear ); - backgroundTexture.hideFlags = HideFlags.HideAndDontSave; - } - Color c = settings.colorBg; - backgroundTexture.SetPixels( new Color[] { c } ); - backgroundTexture.Apply(); - } - - public void SetCustomLight(bool on) { - if( on ) { - UnityEditorInternal.InternalEditorUtility.SetCustomLighting( lights, RenderSettings.ambientLight ); - } else { - UnityEditorInternal.InternalEditorUtility.RemoveCustomLighting(); - } - } - - - - - } -} \ No newline at end of file diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/SF_PreviewWindow.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/SF_PreviewWindow.cs.meta deleted file mode 100755 index 183dfa08..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/SF_PreviewWindow.cs.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: 143d65d02bb214ab39919bad663ed37d -MonoImporter: - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/SF_SelectionManager.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/SF_SelectionManager.cs deleted file mode 100755 index 473f5a98..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/SF_SelectionManager.cs +++ /dev/null @@ -1,412 +0,0 @@ -using UnityEngine; -using UnityEditor; -using System.Collections; -using System.Collections.Generic; - -namespace ShaderForge { - [System.Serializable] - public class SF_SelectionManager : ScriptableObject { - - [SerializeField] - SF_Editor editor; - [SerializeField] - List selection; - public List Selection { - get { - if( selection == null ) - selection = new List(); - return selection; - } - } - - public void OnEnable() { - base.hideFlags = HideFlags.HideAndDontSave; - } - - [SerializeField] - Rect selectionBox = new Rect(256,32,32,64); - - [SerializeField] - public bool boxSelecting = false; - - public void MoveSelection(Vector2 delta, SF_Node ignore) { - foreach(SF_Node n in Selection){ - if( n == ignore ) - continue; - //if(selection.Count > 1){ - //Debug.Log("Selection count = " + selection.Count + " thus nodes"); - Undo.RecordObject(n,"move nodes"); - //} - n.rect.x += delta.x; - n.rect.y += delta.y; - } - } - - - - public void DrawBoxSelection() { - if( boxSelecting ) { - Rect r = new Rect( selectionBox ); - SF_Tools.FlipNegative( ref r ); - GUI.Box( r, string.Empty, SF_Styles.SelectionStyle ); - //GUI.Label(r,selectionBox.ToString().Replace(' ','\n')); - } - } - - public void OnGUI() { - - /* - selectionBox.x = Event.current.mousePosition.x; - selectionBox.y = Event.current.mousePosition.y; - selectionBox.width = 128; - selectionBox.height = 128; - */ - - - if( SF_GUI.ReleasedRawLMB() && boxSelecting) { - ExecuteBoxSelect(); - } - - - if( SF_GUI.PressedLMB() && SF_GUI.HoldingBoxSelect() ) { - boxSelecting = true; - - if( !SF_GUI.MultiSelectModifierHeld() ) - DeselectAll(registerUndo:true); - - selectionBox.x = Event.current.mousePosition.x; - selectionBox.y = Event.current.mousePosition.y; - Event.current.Use(); - } - - - // Duplicate, copy, cut, paste - EventType et = Application.platform == RuntimePlatform.OSXEditor ? EventType.KeyDown : EventType.KeyUp; // TODO: Use KeyDown for Windows too - - - - if( SF_GUI.HoldingControl() && Event.current.type == et && !SF_Node.isEditingAnyNodeTextField ) { - - switch(Event.current.keyCode){ - case(KeyCode.D): - DuplicateSelection(); - break; - case(KeyCode.C): - CopySelection(); - break; - case(KeyCode.X): - CutSelection(); - break; - case(KeyCode.V): - PasteFromClipboard(); - break; - } - - } - - // Selection box - if( boxSelecting ) { - - selectionBox.width = Event.current.mousePosition.x - selectionBox.x; - selectionBox.height = Event.current.mousePosition.y - selectionBox.y; - - if(Event.current.isMouse) - Event.current.Use(); - } - - if( SF_GUI.PressedDelete() && !SF_Node.isEditingAnyNodeTextField ) { - DeleteSelected(); - Event.current.Use(); - } - } - - - - - public void ExecuteBoxSelect() { - boxSelecting = false; - foreach( SF_Node n in editor.nodes ) { - if( SF_Tools.Intersects( n.rect, selectionBox ) ){ - n.Select(registerUndo:true); - } - } - Event.current.Use(); - } - - - - public void DeleteSelected() { - - - if(Selection.Contains(editor.mainNode)){ - editor.mainNode.Deselect(registerUndo:false); // Deselect main node if you press delete - } - - int selCount = Selection.Count; - -// Debug.Log("Delete selected, count = " + selCount); - - if(selCount == 0) - return; - - string undoMsg = ""; - - if(selCount == 1) - undoMsg = "delete " + Selection[0].nodeName; - else - undoMsg = "delete " + selCount + " nodes"; - //Debug.Log("Selection delete initiated - " + undoMsg ); - - Undo.RecordObject(editor,undoMsg); - Undo.RecordObject(editor.nodeView.treeStatus, undoMsg); - - foreach(SF_Node node in editor.nodes){ - node.UndoRecord(undoMsg); - // Undo.RecordObject(node, undoMsg); - } - - Undo.RecordObject(this,undoMsg); - - - - // Undo recording is weird :( - - - - - - - for( int i = editor.nodes.Count - 1; i >= 0; i-- ) { - SF_Node n = editor.nodes[i]; - if( n.selected ) { - - if(n is SFN_Relay){ - SF_NodeConnector inCon = n["IN"]; - SF_NodeConnector outCon = n["OUT"]; - if(inCon.IsConnected() && outCon.IsConnected() ){ - // Relink all outputs to the incoming connectors - for (int ir = outCon.outputCons.Count - 1; ir >= 0; ir--) { - outCon.outputCons[ir].LinkTo(inCon.inputCon); - } - inCon.Disconnect(); - } - } - - foreach(SF_NodeConnector con in editor.nodes[i].connectors){ - if(con.conType == ConType.cOutput){ - con.Disconnect(); - } - } - if( editor.nodeView.treeStatus.propertyList.Contains( editor.nodes[i] ) ) - editor.nodeView.treeStatus.propertyList.Remove( editor.nodes[i] ); - editor.nodes[i].Deselect(registerUndo:false); - editor.nodes.RemoveAt(i); - - - //editor.nodes[i].Delete(registerUndo:false, undoMsg:undoMsg); - } - } - } - - - // Clipboard - public string[] CbNodes{ - get{ - string s = EditorPrefs.GetString("shaderforge_clipboard", ""); - return s.Split('\n'); - } - set{ - string s = ""; - for( int i=0;i 1) - undoMsg += "nodes"; - else - undoMsg += Selection[0].nodeName; - - RecordUndoNodeCreationAndSelectionStates(undoMsg); - - //Rect selBounds = GetSelectionBounds(); - Vector2 posOffset = new Vector2(64,64); - - InstantiateNodes(selectionSerialized, posOffset, undoMsg); - - } - - - void InstantiateNodes(string[] serializedNodes, Vector2 posOffset, string undoMsg){ - // Make sure it knows about the editor - SF_Parser.editor = editor; - - List newNodes = new List(); // List of all new nodes - List links = new List(); // Used for multi-clone - - int[] idOld = new int[serializedNodes.Length]; - int[] idNew = new int[serializedNodes.Length]; - - for(int i=0;i srzdSel = new List(); - - for(int i=0;i CloneNodeAndGetLinks(){ - List links = new List(); - - - - - return links; - } - - - public SF_SelectionManager Initialize( SF_Editor editor ) { - this.editor = editor; - return this; - } - - public void Add(SF_Node n) { - Selection.Add( n ); - } - - public void Remove( SF_Node n ) { - Selection.Remove( n ); - } - - public void DeselectAll(bool registerUndo, string undoMsg = null) { - editor.ResetRunningOutdatedTimer(); - foreach( SF_Node n in editor.nodes ) { - n.Deselect(registerUndo, undoMsg); - } - } - - - } -} - diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/SF_SelectionManager.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/SF_SelectionManager.cs.meta deleted file mode 100755 index f5092cdf..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/SF_SelectionManager.cs.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: 43463d546def04200b133ba2feb5737d -MonoImporter: - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/SF_Settings.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/SF_Settings.cs deleted file mode 100755 index 75198613..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/SF_Settings.cs +++ /dev/null @@ -1,154 +0,0 @@ -using UnityEngine; -using UnityEditor; -using System.Collections; -using System.Collections.Generic; -using System; - - -namespace ShaderForge { - - public enum SF_Setting{ - CurveShape, // int Bezier/Linear/etc - AutoCompile, // bool True/False - HierarchalNodeMove, // bool True/False - RealTimeNodePreviews, // bool True/False - QuickPickScrollWheel, // bool True/False - ControlMode, // int Shader Forge / Unity / Unreal - ShowVariableSettings, // bool True/False - ShowNodeSidebar, // bool True/False - NodeRenderMode // int Mixed / MixedRealtime / Spheres / SpheresRealtime / ViewportRealtime - }; - - public enum ControlMode { ShaderForge, UnityMaya, Unreal }; - public enum NodeRenderMode { Mixed, Spheres, Viewport }; - - public class SF_Settings { - - public const string prefix = "shaderforge_"; - public const string suffixDefault = "_default"; - - public SF_Settings() { - - } - - public static void InitializeSettings() { - // Set up all defaults - SetDefaultBool( SF_Setting.HierarchalNodeMove, false ); - SetDefaultBool( SF_Setting.QuickPickScrollWheel, true ); - SetDefaultBool( SF_Setting.ShowVariableSettings, false ); - SetDefaultBool( SF_Setting.ShowNodeSidebar, true ); - SetDefaultBool( SF_Setting.RealTimeNodePreviews, true ); - SetDefaultInt( SF_Setting.NodeRenderMode, (int)NodeRenderMode.Mixed ); - } - - - // Cached, for speed - public static bool autoCompile; - public static bool hierarchalNodeMove; - public static bool quickPickScrollWheel; - public static bool showVariableSettings; - public static bool showNodeSidebar; - public static bool realtimeNodePreviews; - public static NodeRenderMode nodeRenderMode; - - // These two are called in OnEnable and OnDisable in SF_Editor - public static void LoadAllFromDisk() { - autoCompile = LoadBool( SF_Setting.AutoCompile ); - hierarchalNodeMove = LoadBool( SF_Setting.HierarchalNodeMove ); - quickPickScrollWheel = LoadBool( SF_Setting.QuickPickScrollWheel ); - showVariableSettings = LoadBool( SF_Setting.ShowVariableSettings ); - showNodeSidebar = LoadBool( SF_Setting.ShowNodeSidebar ); - realtimeNodePreviews = LoadBool( SF_Setting.RealTimeNodePreviews ); - nodeRenderMode = NodeRenderMode.Mixed; // nodeRenderMode = (NodeRenderMode)LoadInt( SF_Setting.NodeRenderMode ); - - } - public static void SaveAllToDisk() { - SaveBool( SF_Setting.AutoCompile, autoCompile ); - SaveBool( SF_Setting.HierarchalNodeMove, hierarchalNodeMove ); - SaveBool( SF_Setting.QuickPickScrollWheel, quickPickScrollWheel ); - SaveBool( SF_Setting.ShowVariableSettings, showVariableSettings ); - SaveBool( SF_Setting.ShowNodeSidebar, showNodeSidebar ); - SaveBool( SF_Setting.RealTimeNodePreviews, realtimeNodePreviews ); - SaveInt( SF_Setting.NodeRenderMode, (int)nodeRenderMode ); - } - - - - // -------------------------------------------------- - // Special functions - - public static bool RenderNodesInRealtime() { - return realtimeNodePreviews || nodeRenderMode == NodeRenderMode.Viewport; - } - - // -------------------------------------------------- - public static bool LoadBool( SF_Setting setting ) { - string key = KeyOf(setting); - return EditorPrefs.GetBool( key, EditorPrefs.GetBool( key + suffixDefault ) ); - } - public static string LoadString( SF_Setting setting ) { - string key = KeyOf(setting); - return EditorPrefs.GetString( key, EditorPrefs.GetString( key + suffixDefault ) ); - } - public static int LoadInt( SF_Setting setting ) { - string key = KeyOf(setting); - return EditorPrefs.GetInt( key, EditorPrefs.GetInt( key + suffixDefault) ); - } - public static float LoadFloat( SF_Setting setting ) { - string key = KeyOf(setting); - return EditorPrefs.GetFloat( key, EditorPrefs.GetFloat( key + suffixDefault) ); - } - // -------------------------------------------------- - private static string KeyOf( SF_Setting setting ){ - return prefix + setting.ToString(); - } - // -------------------------------------------------- - private static void SetDefaultBool( SF_Setting setting, bool value ){ - string key = KeyOf(setting); - EditorPrefs.SetBool(key + suffixDefault, value); - if(!EditorPrefs.HasKey(key)){ - SaveBool(setting, value); - } - } - private static void SetDefaultString(SF_Setting setting, string value){ - string key = KeyOf(setting); - EditorPrefs.SetString(key + suffixDefault, value); - if(!EditorPrefs.HasKey(key)){ - SaveString(setting, value); - } - } - private static void SetDefaultInt(SF_Setting setting, int value){ - string key = KeyOf(setting); - EditorPrefs.SetInt(key + suffixDefault, value); - if(!EditorPrefs.HasKey(key)){ - SaveInt(setting, value); - } - } - private static void SetDefaultFloat(SF_Setting setting, float value){ - string key = KeyOf(setting); - EditorPrefs.SetFloat(key + suffixDefault, value); - if(!EditorPrefs.HasKey(key)){ - SaveFloat(setting, value); - } - } - // -------------------------------------------------- - public static void SaveBool( SF_Setting setting, bool value ){ - string key = KeyOf(setting); - EditorPrefs.SetBool(key, value); - } - public static void SaveString(SF_Setting setting, string value){ - string key = KeyOf(setting); - EditorPrefs.SetString(key, value); - } - public static void SaveInt(SF_Setting setting, int value){ - string key = KeyOf(setting); - EditorPrefs.SetInt(key, value); - } - public static void SaveFloat(SF_Setting setting, float value){ - string key = KeyOf(setting); - EditorPrefs.SetFloat(key, value); - } - - } - -} diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/SF_Settings.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/SF_Settings.cs.meta deleted file mode 100755 index ef32682c..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/SF_Settings.cs.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: 94c65d8d5218043a49bf95b2ae42fc31 -MonoImporter: - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/SF_StatusBox.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/SF_StatusBox.cs deleted file mode 100755 index b9949efc..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/SF_StatusBox.cs +++ /dev/null @@ -1,328 +0,0 @@ -using UnityEngine; -using UnityEditor; -using System.Collections; -using System.Collections.Generic; - -namespace ShaderForge { - [System.Serializable] - public class SF_StatusBox { - - [SerializeField] - private SF_Editor editor; - [SerializeField] - SF_MinMax vCount = new SF_MinMax(); - [SerializeField] - SF_MinMax fCount = new SF_MinMax(); - [SerializeField] - SF_MinMax vtCount = new SF_MinMax(); - [SerializeField] - SF_MinMax ftCount = new SF_MinMax(); - [SerializeField] - public RenderPlatform platform; - - [SerializeField] - private GUIStyle labelStyle; - [SerializeField] - private GUIStyle labelStyleCentered; - [SerializeField] - private GUIStyle holderStyle; - [SerializeField] - private GUIStyle headerStyle; - - public SF_StatusBox() { - - - - } - - public void Initialize( SF_Editor editor) { - this.editor = editor; - labelStyle = new GUIStyle( EditorStyles.label ); - labelStyle.margin = new RectOffset( 0, 0, 0, 0 ); - labelStyle.padding = new RectOffset( 8, 0, 3, 1 ); - - labelStyleCentered = new GUIStyle( labelStyle ); - labelStyleCentered.alignment = TextAnchor.MiddleCenter; - - holderStyle = new GUIStyle(); - holderStyle.margin = new RectOffset( 0, 0, 0, 0 ); - holderStyle.padding = new RectOffset( 0, 0, 0, 0 ); - - - headerStyle = new GUIStyle( EditorStyles.toolbar ); - headerStyle.alignment = TextAnchor.MiddleLeft; - headerStyle.fontSize = 10; - //headerStyle.fontStyle = FontStyle.Bold; - } - - - public int OnGUI( int yOffset, int in_maxWidth ) { - - Rect r = new Rect( 0, yOffset, in_maxWidth, 18 ); - - //string tmp = "Instructions: "; - - //if( Compiled() ) { - headerStyle.normal.textColor = EditorGUIUtility.isProSkin ? Color.white : Color.black; - //} else { - //headerStyle.normal.textColor = new Color( 0f, 0f, 0f, 0.75f ); - //tmp = "(Shader not compiled yet)"; - //} - - GUI.Label( r, string.Empty, EditorStyles.toolbar ); // Toolbar - - Rect iRect = r; - - //Rect rTmp = iRect; - //rTmp = rTmp.MovedUp(); - - //GUI.Label(rTmp, "MIP USED; " + editor.nodeView.treeStatus.mipInputUsed); - - iRect.width = 64f; - - - GUI.color = new Color(1f,1f,1f,0.5f); - if( GUI.Button( iRect, "Select", EditorStyles.toolbarButton) ) { - Selection.activeObject = editor.currentShaderAsset; - EditorGUIUtility.PingObject(editor.currentShaderAsset); - } - GUI.color = Color.white; - - /* Instruction count disabled. - if(!editor.nodeView.treeStatus.CanDisplayInstructionCount){ - InstructionLabel( ref iRect, SF_Styles.IconWarningSmall, "Instruction count unavailable"); - } else { - - InstructionLabel( ref iRect, SF_GUI.Inst_vert, vCount.ToString() ); - InstructionLabel( ref iRect, SF_GUI.Inst_frag, fCount.ToString() ); - if( !vtCount.Empty() ) - InstructionLabel( ref iRect, SF_GUI.Inst_vert_tex, vtCount.ToString() ); - if( !ftCount.Empty() ) - InstructionLabel( ref iRect, SF_GUI.Inst_frag_tex, ftCount.ToString() ); - } - */ - - - - - - - - - - //if(Compiled()){ - Color c = GUI.color; - c.a = 0.5f; - GUI.color = c; - r.xMin += iRect.x; - r.xMax -= 4; - GUI.Label(r, SF_Tools.rendererLabels[(int)platform],SF_Styles.InstructionCountRenderer); - GUI.color = Color.white; - //} - - - - - - - GUI.color = Color.white; - - return (int)r.yMax; - } - - - public void InstructionLabel(ref Rect iRect, Texture2D icon, string label) { - - iRect.width = icon.width; - GUI.DrawTexture( iRect, icon ); - iRect.x += iRect.width; - iRect.width = SF_GUI.WidthOf( label, headerStyle )+2; - GUI.Label( iRect, label, headerStyle ); - iRect.x += iRect.width; - } - - - private bool Compiled() { - if( vCount.min == 0 ) - return false; - return true; - } - - //private enum LookingFor{ }; - - public void UpdateInstructionCount( Shader sh ) { - // Compiled shader string: - string[] css = ( new SerializedObject( sh ) ).FindProperty( "m_Script" ).stringValue.Split( '\n' ); - - Debug.Log( ( new SerializedObject( sh ) ).FindProperty( "m_Script" ).stringValue ); - Debug.Log(css.Length); - - if(css.Length < 2){ - return; - } - - ShaderProgram prog = ShaderProgram.Vert; - - - List passes = new List(); - SFIns_Pass cPass; // current pass - - for( int i = 0; i < css.Length; i++ ) { - if( css[i].Contains( "Pass {" ) ) { // Found a pass! - - bool ignoreMin = false; - i++; - - // Shadow passes - if( css[i].Contains( "Name \"ShadowCaster\"" ) || css[i].Contains( "Name \"ShadowCollector\"" ) || css[i].Contains( "Name \"ForwardAdd\"" ) ) - continue; - - if( (css[i].Contains("Name \"PrePassBase\"") || css[i].Contains("Name \"PrePassFinal\"") ) && editor.ps.catLighting.renderPath == SFPSC_Lighting.RenderPath.Forward ) - continue; - - if( (css[i].Contains("Name \"ForwardBase\"") || css[i].Contains("Name \"ForwardAdd\"") ) && editor.ps.catLighting.renderPath == SFPSC_Lighting.RenderPath.Deferred ) - continue; - - - //ignoreMin = true; - - cPass = new SFIns_Pass(); - - for ( ; i < css.Length; i++ ) { - - if(css[i].StartsWith("// Vertex combos")){ - prog = ShaderProgram.Vert; - } else if(css[i].StartsWith("// Fragment combos")){ - prog = ShaderProgram.Frag; - } else { - continue; - } - - // Program found! - i++; // Next line... - // Scan following lines for shader platform data - for ( ; i < css.Length; i++ ) { - if(css[i].StartsWith( "//" )){ - cPass.Parse( prog, css[i], ignoreMin ); - } else { - // No more platform data - break; - } - } - // Leave this loop and start searching for the next pass if we just found the frag data - if( prog == ShaderProgram.Frag ) - break; - } - // Add the current pass to the list - passes.Add(cPass); - } - } - - - // All passes scanned! - // Show, some sort of instruction count - // Show sum of all passes min for now - vCount.Reset(); - fCount.Reset(); - vtCount.Reset(); - ftCount.Reset(); - - // Find which program to display instruction count for! - // if(mac) opengl - // if(win) d3d9 - // else gles - // else *any enabled* - - - - platform = GetPrimaryPlatform(); - int primPlat = (int)platform; - - - - // Debug.Log("Primary platform: " + (RenderPlatform)primPlat); - - - - foreach( SFIns_Pass p in passes ) { - vCount += p.plats[primPlat].vert; // Only d3d9 for now // TODO - fCount += p.plats[primPlat].frag; - vtCount += p.plats[primPlat].vTex; - ftCount += p.plats[primPlat].fTex; - } - - - //Debug.Log("vCount = " + vCount); - - - - - /* - int programID = 0; // 0 = vert | 1 = frag - for( int i = 0; i < css.Length; i++ ) { - if( css[i].Contains( "instructions" ) ) - continue; - if( css[i].Contains( "# " ) ) { - if( programID == 0 ) { - string[] split = css[i].Trim().Split( ' ' ); - vCount = int.Parse( split[1] ); // Vertex instructions TODO: Textures in vertex program - programID++; // Search for fragment - } else if( programID == 1 ) { - string[] split = css[i].Trim().Split( ' ' ); - fCount = int.Parse( split[1] ); // Fragment instructions - try { - tCount = int.Parse( split[3] ); // Textures - } catch { - - } - - } - } - } - */ - - - - - } - - - public RenderPlatform GetPrimaryPlatform() { - - // Let's check our build target! - BuildTarget active = EditorUserBuildSettings.activeBuildTarget; - - // Mobile platforms - // 9 = BuildTarget.iPhone // Unity 4.x - // 9 = BuildTarget.iOS // Unity 5.x - // 28 = BuildTarget.BB10 // Unity 4.x - // 28 = BuildTarget.BlackBerry // Unity 5.x - - bool mobile = ( active == BuildTarget.Android || (int)active == 9 || (int)active == 28 ); - if(mobile && editor.ps.catMeta.usedRenderers[(int)RenderPlatform.gles]) - return RenderPlatform.gles; - - // Standalone / Webplayer. In this case, it depends on what the user is using - // Pick the one that is currently running - if( Application.platform == RuntimePlatform.OSXEditor && editor.ps.catMeta.usedRenderers[(int)RenderPlatform.glcore] ) - return RenderPlatform.glcore; - if( Application.platform == RuntimePlatform.WindowsEditor && editor.ps.catMeta.usedRenderers[(int)RenderPlatform.d3d9] ) - return RenderPlatform.d3d9; - if( Application.platform == RuntimePlatform.WindowsEditor && editor.ps.catMeta.usedRenderers[(int)RenderPlatform.d3d11] ) - return RenderPlatform.d3d11; - - - Debug.LogWarning( "[SF] Unhandled platform settings. Make sure your build target (" + active + ") is sensible, and that you've got platforms enabled to compile for" ); - // You're using some weird setup, pick first active one - for(int i=0;i<12;i++){ - if(editor.ps.catMeta.usedRenderers[i]) - return (RenderPlatform)i; - } - - Debug.LogError("No renderers compilable, defaulting to d3d9"); - return RenderPlatform.d3d9; - } - - - } -} \ No newline at end of file diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/SF_StatusBox.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/SF_StatusBox.cs.meta deleted file mode 100755 index 848efa0d..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/SF_StatusBox.cs.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: bdeadd90c5eb14af9b16fdf9babcd447 -MonoImporter: - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_ConnectionGroups.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/_ConnectionGroups.meta deleted file mode 100755 index 240e0c3b..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/_ConnectionGroups.meta +++ /dev/null @@ -1,5 +0,0 @@ -fileFormatVersion: 2 -guid: 69c81e70ae39d4265890a1da43af2896 -folderAsset: yes -DefaultImporter: - userData: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_ConnectionGroups/SFNCG_Append.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/_ConnectionGroups/SFNCG_Append.cs deleted file mode 100755 index 7eb5d3bf..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/_ConnectionGroups/SFNCG_Append.cs +++ /dev/null @@ -1,213 +0,0 @@ -using UnityEngine; -using System.Collections; - - -namespace ShaderForge { - - // Used to detect types based on input - [System.Serializable] - public class SFNCG_Append : SF_NodeConnectionGroup { - - - - public SFNCG_Append Initialize( SF_NodeConnector output, params SF_NodeConnector[] inputs ) { - this.output = output; - this.inputs = inputs; - return this; - } - - - public int GetOutputComponentCount() { - - int cc = 0; - for( int i = 0; i < 4; i++ ) { - if(inputs[i].IsConnectedAndEnabled()) - cc += inputs[i].inputCon.GetCompCount(); - } - - if( cc == 0 ) - return 1; - else - return cc; - - } - - - public override void Refresh() { - - - // ALLOWED COMBOS - /* - * v1 v1 = v2 - * - * v1 v1 v1 = v3 - * v1 v2 = v3 - * - * v1 v1 v1 v1 = v4 - * v2 v1 v1 = v4 - * v2 v2 = v4 - * v1 v3 = v4 - */ - - // Are none of the inputs connected? In that case, it's all default - if( NoInputsConnected() ) - ResetValueTypes(); - - if( !inputs[0].node.InputsConnected() ) - return; - - - - int inCompSum = GetOutputComponentCount(); - - - - - if( inCompSum < 2 ) { - Debug.LogError( "Input sum is somehow " + inCompSum + " on " + inputs[0].node.nodeName ); - inputs[1].Disconnect(); // This should never happen - return; - } - - if( inCompSum > 4 ) { // TODO: Error message - Debug.LogWarning( "Connected too many components in Append node! Disconnecting all" ); - - for( int i = 0; i < 4; i++ ) { - if( inputs[i].IsConnectedAndEnabled() ) - Debug.LogWarning( "["+i+"]: " + inputs[i].inputCon.node.nodeName + " with " + inputs[i].inputCon.GetCompCount() + " components" ); - inputs[i].Disconnect(); - } - - return; - } - - - switch( inCompSum ) { - case 2: - output.valueType = ValueType.VTv2; - break; - case 3: - output.valueType = ValueType.VTv3; - break; - case 4: - output.valueType = ValueType.VTv4; - break; - } - - - - - - - /* - - - // If any input is non-pending, use that as base to assign the rest. - // Inputs: - ValueType baseInType = GetBaseInputType(); - ValueType genericInType = GetGenericInputType(); - AssignToEmptyInputs( genericInType ); - - // Output: - if( InputsMissing() ) { - if( baseInType == ValueType.VTv1 ) - output.valueType = ValueType.VTvPending; - else - output.valueType = baseInType; - } else { - output.valueType = GetDominantInputType(); - } - */ - } - - /* - - public ValueType GetGenericInputType() { - ValueType vt = GetBaseInputType(); - switch( vt ) { - case ValueType.VTv1: - return ValueType.VTvPending; - case ValueType.VTv2: - return ValueType.VTv1v2; - case ValueType.VTv3: - return ValueType.VTv1v3; - case ValueType.VTv4: - return ValueType.VTv1v4; - default: - Debug.LogError( "Invalid attempt to get generic input type from " + vt ); - return ValueType.VTvPending; - } - } - - public ValueType GetDominantInputType() { - ValueType dom = inputs[0].valueType; - for( int i = 1 ; i < inputs.Length ; i++ ) { - dom = GetDominantType( dom, inputs[i].valueType); - } - return dom; - } - - public ValueType GetDominantType(ValueType a, ValueType b) { - if( a == b ) - return a; - - if( a == ValueType.VTvPending ) - return b; - - if( b == ValueType.VTvPending ) - return a; - - if( a == ValueType.VTv1 ) { - if( IsVectorType( b ) ) - return b; - else - return a; - } - if( b == ValueType.VTv1 ) { - if( IsVectorType( a ) ) - return a; - else - return b; - } - - Debug.LogError( "You should not be able to get here! Dominant pending type returned" ); - return ValueType.VTvPending; - } - - - public ValueType GetBaseInputType() { - - ValueType retType = ValueType.VTvPending; - - foreach( SF_NodeConnection nc in inputs ) { - retType = GetDominantType( retType, nc.valueType ); - } - - if( retType == ValueType.VTvPending ) - Debug.LogError( "You should not be able to get here! Pending type returned" ); - return retType; - } - - public static bool CompatibleTypes( ValueType tInput, ValueType tOutput ) { - - // If they are the same type, they are of course compatible - if( tInput == tOutput ) - return true; - // If the input is a pending vector, any output vector is compatible - if( tInput == ValueType.VTvPending && IsVectorType( tOutput ) ) - return true; - // Check multi-type for v1/v2 - if( tInput == ValueType.VTv1v2 && ( tOutput == ValueType.VTv1 || tOutput == ValueType.VTv2 ) ) - return true; - // Check multi-type for v1/v3 - if( tInput == ValueType.VTv1v3 && ( tOutput == ValueType.VTv1 || tOutput == ValueType.VTv3 ) ) - return true; - // Check multi-type for v1/v4 - if( tInput == ValueType.VTv1v4 && ( tOutput == ValueType.VTv1 || tOutput == ValueType.VTv4 ) ) - return true; - // Didn't find any allowed link, return false - return false; - } - */ - } -} \ No newline at end of file diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_ConnectionGroups/SFNCG_Append.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/_ConnectionGroups/SFNCG_Append.cs.meta deleted file mode 100755 index c3319736..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/_ConnectionGroups/SFNCG_Append.cs.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: 381cd199b81c0e343ad58f37ef1030e1 -MonoImporter: - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_ConnectionGroups/SFNCG_Arithmetic.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/_ConnectionGroups/SFNCG_Arithmetic.cs deleted file mode 100755 index 684627b7..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/_ConnectionGroups/SFNCG_Arithmetic.cs +++ /dev/null @@ -1,270 +0,0 @@ -using UnityEngine; -using UnityEditor; -using System.Collections; - -namespace ShaderForge { - - // Used to detect types based on input - [System.Serializable] - public class SFNCG_Arithmetic : SF_NodeConnectionGroup { - - - public bool lockedOutput = false; - - public SFNCG_Arithmetic() { - - } - - public SFNCG_Arithmetic Initialize( SF_NodeConnector output, params SF_NodeConnector[] inputs ) { - this.output = output; - this.inputs = inputs; - return this; - } - - public SFNCG_Arithmetic LockOutType() { - lockedOutput = true; - return this; - } - - - public override void Refresh() { - // Are none of the inputs connected? In that case, it's all default - if( NoInputsConnected() ) - ResetValueTypes(); - - // If any input is non-pending, use that as base to assign the rest. - // Inputs: - ValueType baseInType = GetBaseInputType(); - ValueType genericInType = GetGenericInputType(); - AssignToEmptyInputs( genericInType ); - - //Debug.Log("Refreshing connection group of " + output.node.nodeName ); - - // Output: - if( !lockedOutput ){ - if( RequiredInputsMissing() ) { - if( baseInType == ValueType.VTv1 ) - output.valueType = ValueType.VTvPending; - else - SetOutputValueType(baseInType); - } else { - ValueType vtDom = GetDominantInputType(); - SetOutputValueType(vtDom); - - UpdateTypecasts(); - } - } - } - - - public void SetOutputValueType(ValueType vt){ - - - //Debug.Log("Trying to set to " + vt); - - if(vt == ValueType.VTv1v2) - vt = ValueType.VTv2; - if(vt == ValueType.VTv1v3) - vt = ValueType.VTv3; - if(vt == ValueType.VTv1v4) - vt = ValueType.VTv4; - - - output.SetValueType(vt); - - int ccCalc; - if(SF_Tools.CompCountOf(vt, out ccCalc)){ - if(ccCalc != output.node.texture.CompCount){ - //Debug.Log("Trying to set to " + ccCalc + " from " + vt); - output.node.texture.CompCount = ccCalc; - } - } - - - //Debug.Log("Setting output type of " + output.node.nodeName + " to " + output.valueType); // THIS IS SET TO PENDING VOR VEC1 INPUTS - } - - - - - // This is only run if there are no inputs missing! - public void UpdateTypecasts(){ - ValueType domType = output.valueType; - - - - // Reset typecasts - foreach(SF_NodeConnector con in inputs) - con.typecastTarget = 0; - - if(domType == ValueType.VTv1 || domType == ValueType.VTv1v2 || domType == ValueType.VTv2) - return; // No typecasting - - int typeTarget = 0; - // If the dominant type is Vector3, cast all Vector2 to v3 - if(domType == ValueType.VTv1v3 || domType == ValueType.VTv3){ - typeTarget = 3; - } else if(domType == ValueType.VTv1v4 || domType == ValueType.VTv4){ - typeTarget = 4; - } else { - //Debug.LogError("Shouldn't be able to get here, invalid casting on "+base.output.node.GetType().ToString() + " domType = " + domType.ToString()); - } - - foreach(SF_NodeConnector con in inputs){ - - if(con.IsChild() && !con.IsConnected()) - continue; // This is fine, childs aren't required - - if(con.GetCompCount() == 2) - con.TypecastTo(typeTarget); - } - - } - - - public ValueType GetGenericInputType() { - ValueType vt = GetBaseInputType(); -// Debug.Log("Getting base input type on "+output.node.nodeName+" = " + vt); - switch( vt ) { - case ValueType.VTv1: - if(inputs.Length > 1) - return ValueType.VTvPending; // TODO: Really? - else - return ValueType.VTv1; // TODO: This feels weird - case ValueType.VTv2: - return ValueType.VTv1v2; - case ValueType.VTv3: - return ValueType.VTv1v3; - case ValueType.VTv4: - return ValueType.VTv1v4; - default: - //Debug.LogWarning( "Invalid attempt to get generic input type from " + vt ); - return ValueType.VTvPending; - } - } - - public virtual ValueType GetDominantInputType() { - - ValueType dom = inputs[0].valueType; - - - //ValueType dom = inputs[0].valueType; - //Debug.Log("Val 0 is " + inputs[0].valueType.ToString()); - //Debug.Log("Val 1 is " + inputs[1].valueType.ToString()); - - - for( int i = 1; i < inputs.Length; i++ ) { - dom = GetDominantType( dom, inputs[i].valueType ); - } - //Debug.Log("Found dominant type:" + dom.ToString()); - return dom; - } - - public ValueType GetDominantType( ValueType a, ValueType b ) { - - //if( SF_Debug.nodes) - // Debug.Log("DOM a:" + a.ToString() + " b:" + b.ToString()); - - if( a == b ) - return a; - - if( a == ValueType.VTvPending ) - return b; - - if( b == ValueType.VTvPending ) - return a; - - if( a == ValueType.VTv1 ) { - if( IsVectorType( b ) ) - return b; - else - return a; - } - if( b == ValueType.VTv1 ) { - if( IsVectorType( a ) ) - return a; - else - return b; - } - - if(a == ValueType.VTv2 || a == ValueType.VTv1v2) - return b; - if(b == ValueType.VTv2 || b == ValueType.VTv1v2) - return a; - - - if(a == ValueType.VTv3 && b == ValueType.VTv4) - return b; - if(b == ValueType.VTv3 && a == ValueType.VTv4) - return a; - - if(a == ValueType.VTv1v2 && b == ValueType.VTv2){ - return b; - } - if(b == ValueType.VTv1v2 && a == ValueType.VTv2){ - return a; - } - - if(a == ValueType.VTv1v3 && b == ValueType.VTv3){ - return b; - } - if(b == ValueType.VTv1v3 && a == ValueType.VTv3){ - return a; - } - - if(a == ValueType.VTv1v4 && b == ValueType.VTv4){ - return b; - } - if(b == ValueType.VTv1v4 && a == ValueType.VTv4){ - return a; - } - - - - - // Debug.LogWarning( "You should not be able to get here! Dominant pending type returned" ); - return ValueType.VTvPending; - } - - - public virtual ValueType GetBaseInputType() { - - ValueType retType = ValueType.VTvPending; - - foreach( SF_NodeConnector nc in inputs ) { - retType = GetDominantType( retType, nc.valueType ); - } - - //Debug.Log("Base input type is " + retType); - - //if( retType == ValueType.VTvPending ) - //Debug.LogWarning( "You should not be able to get here! Pending type returned" ); - return retType; - } - - public static bool CompatibleTypes( ValueType tInput, ValueType tOutput ) { - - // If they are the same type, they are of course compatible - if( tInput == tOutput ) - return true; - // If the input is a pending vector, any output vector is compatible - if( tInput == ValueType.VTvPending && IsVectorType( tOutput ) ) - return true; - // Check multi-type for v1/v2 - if( tInput == ValueType.VTv1v2 && ( tOutput == ValueType.VTv1 || tOutput == ValueType.VTv2 ) ) - return true; - // Check multi-type for v1/v3 - if( tInput == ValueType.VTv1v3 && ( tOutput == ValueType.VTv1 || tOutput == ValueType.VTv3 ) ) - return true; - // Check multi-type for v1/v4 - if( tInput == ValueType.VTv1v4 && ( tOutput == ValueType.VTv1 || tOutput == ValueType.VTv4 ) ) - return true; - // Matrices - if( tInput == ValueType.VTv4m4x4 && ( tOutput == ValueType.VTv4 || tOutput == ValueType.VTm4x4 ) ) - return true; - // Didn't find any allowed link, return false - return false; - } - - } -} \ No newline at end of file diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_ConnectionGroups/SFNCG_Arithmetic.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/_ConnectionGroups/SFNCG_Arithmetic.cs.meta deleted file mode 100755 index a1210a15..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/_ConnectionGroups/SFNCG_Arithmetic.cs.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: af887491ef5675d4bac8f00faf209745 -MonoImporter: - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_ConnectionGroups/SFNCG_ChannelBlend.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/_ConnectionGroups/SFNCG_ChannelBlend.cs deleted file mode 100755 index 6b3590fd..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/_ConnectionGroups/SFNCG_ChannelBlend.cs +++ /dev/null @@ -1,26 +0,0 @@ -using UnityEngine; -using UnityEditor; -using System.Collections; - -namespace ShaderForge { - - // Used to detect types based on input - [System.Serializable] - public class SFNCG_ChannelBlend : SFNCG_Arithmetic { - - - public SFNCG_ChannelBlend() { - - } - - public new SFNCG_ChannelBlend Initialize( SF_NodeConnector output, params SF_NodeConnector[] inputs ) { - SF_NodeConnector[] inputsWithoutFirst = new SF_NodeConnector[inputs.Length-1]; - for(int i=1;i 4 ) { // TODO: Error message - Debug.LogWarning( "User connected vectors summing to " + inputs[0].node.nodeName ); - inputs[1].Disconnect(); - return; - } - - - switch( inCompSum ) { - case 2: - output.valueType = ValueType.VTv2; - break; - case 3: - output.valueType = ValueType.VTv3; - break; - case 4: - output.valueType = ValueType.VTv4; - break; - } - - - - - - - /* - - - // If any input is non-pending, use that as base to assign the rest. - // Inputs: - ValueType baseInType = GetBaseInputType(); - ValueType genericInType = GetGenericInputType(); - AssignToEmptyInputs( genericInType ); - - // Output: - if( InputsMissing() ) { - if( baseInType == ValueType.VTv1 ) - output.valueType = ValueType.VTvPending; - else - output.valueType = baseInType; - } else { - output.valueType = GetDominantInputType(); - } - */ - } - - /* - - public ValueType GetGenericInputType() { - ValueType vt = GetBaseInputType(); - switch( vt ) { - case ValueType.VTv1: - return ValueType.VTvPending; - case ValueType.VTv2: - return ValueType.VTv1v2; - case ValueType.VTv3: - return ValueType.VTv1v3; - case ValueType.VTv4: - return ValueType.VTv1v4; - default: - Debug.LogError( "Invalid attempt to get generic input type from " + vt ); - return ValueType.VTvPending; - } - } - - public ValueType GetDominantInputType() { - ValueType dom = inputs[0].valueType; - for( int i = 1 ; i < inputs.Length ; i++ ) { - dom = GetDominantType( dom, inputs[i].valueType); - } - return dom; - } - - public ValueType GetDominantType(ValueType a, ValueType b) { - if( a == b ) - return a; - - if( a == ValueType.VTvPending ) - return b; - - if( b == ValueType.VTvPending ) - return a; - - if( a == ValueType.VTv1 ) { - if( IsVectorType( b ) ) - return b; - else - return a; - } - if( b == ValueType.VTv1 ) { - if( IsVectorType( a ) ) - return a; - else - return b; - } - - Debug.LogError( "You should not be able to get here! Dominant pending type returned" ); - return ValueType.VTvPending; - } - - - public ValueType GetBaseInputType() { - - ValueType retType = ValueType.VTvPending; - - foreach( SF_NodeConnection nc in inputs ) { - retType = GetDominantType( retType, nc.valueType ); - } - - if( retType == ValueType.VTvPending ) - Debug.LogError( "You should not be able to get here! Pending type returned" ); - return retType; - } - - public static bool CompatibleTypes( ValueType tInput, ValueType tOutput ) { - - // If they are the same type, they are of course compatible - if( tInput == tOutput ) - return true; - // If the input is a pending vector, any output vector is compatible - if( tInput == ValueType.VTvPending && IsVectorType( tOutput ) ) - return true; - // Check multi-type for v1/v2 - if( tInput == ValueType.VTv1v2 && ( tOutput == ValueType.VTv1 || tOutput == ValueType.VTv2 ) ) - return true; - // Check multi-type for v1/v3 - if( tInput == ValueType.VTv1v3 && ( tOutput == ValueType.VTv1 || tOutput == ValueType.VTv3 ) ) - return true; - // Check multi-type for v1/v4 - if( tInput == ValueType.VTv1v4 && ( tOutput == ValueType.VTv1 || tOutput == ValueType.VTv4 ) ) - return true; - // Didn't find any allowed link, return false - return false; - } - */ - } - -} \ No newline at end of file diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_ConnectionGroups/SFNCG_ComponentMask.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/_ConnectionGroups/SFNCG_ComponentMask.cs.meta deleted file mode 100755 index a3d42950..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/_ConnectionGroups/SFNCG_ComponentMask.cs.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: f3ed7ab8c44ddc5429852ca5ffbb4850 -MonoImporter: - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_ConnectionGroups/SFNCG_MatrixMultiply.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/_ConnectionGroups/SFNCG_MatrixMultiply.cs deleted file mode 100644 index 8ee4e748..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/_ConnectionGroups/SFNCG_MatrixMultiply.cs +++ /dev/null @@ -1,90 +0,0 @@ -using UnityEngine; -using System.Collections; - - -namespace ShaderForge { - - // Used to detect types based on input - [System.Serializable] - public class SFNCG_MatrixMultiply : SF_NodeConnectionGroup { - - - - public SFNCG_MatrixMultiply Initialize( SF_NodeConnector output, params SF_NodeConnector[] inputs ) { - this.output = output; - this.inputs = inputs; - return this; - } - - public override void Refresh() { - - // ALLOWED COMBOS - /* - * m v = v - * v m = v - * m m = m - */ - - // Are none of the inputs connected? In that case, it's all default - if( NoInputsConnected() ) { - inputs[0].SetValueTypeAndDefault( ValueType.VTv4m4x4 ); - inputs[1].SetValueTypeAndDefault( ValueType.VTv4m4x4 ); - output.SetValueTypeAndDefault( ValueType.VTv4m4x4 ); - } - - - //if( !inputs[0].node.InputsConnected() ) - // return; - - bool aCon = inputs[0].IsConnected(); - bool bCon = inputs[1].IsConnected(); - - bool oneConnected = aCon != bCon; - - - if(aCon && bCon){ - ValueType aType = inputs[0].inputCon.valueType; - ValueType bType = inputs[1].inputCon.valueType; - - if( aType == ValueType.VTv4 && bType == ValueType.VTm4x4 ){ - inputs[0].SetValueTypeAndDefault( ValueType.VTv4m4x4 ); - inputs[1].SetValueTypeAndDefault( ValueType.VTm4x4 ); - output.SetValueTypeAndDefault( ValueType.VTv4 ); - } else if( aType == ValueType.VTm4x4 && bType == ValueType.VTv4 ){ - inputs[0].SetValueTypeAndDefault( ValueType.VTm4x4); - inputs[1].SetValueTypeAndDefault( ValueType.VTv4m4x4 ); - output.SetValueTypeAndDefault( ValueType.VTv4 ); - } else if( aType == ValueType.VTm4x4 && bType == ValueType.VTm4x4 ){ - inputs[0].SetValueTypeAndDefault( ValueType.VTv4m4x4 ); - inputs[1].SetValueTypeAndDefault( ValueType.VTv4m4x4 ); - output.SetValueTypeAndDefault( ValueType.VTm4x4 ); - } else { - Debug.LogError( "Invalid input in Matrix multiply" ); - inputs[0].Disconnect(); - output.SetValueTypeAndDefault( ValueType.VTv4m4x4 ); - } - } else if( oneConnected ) { - - SF_NodeConnector connected = aCon ? inputs[0] : inputs[1]; - SF_NodeConnector unconnected = aCon ? inputs[1] : inputs[0]; - - ValueType conType = connected.valueType; - - if(conType == ValueType.VTv4){ - unconnected.SetValueTypeAndDefault( ValueType.VTm4x4); - output.SetValueTypeAndDefault( ValueType.VTv4 ); - } else { - unconnected.SetValueTypeAndDefault( ValueType.VTv4m4x4 ); - output.SetValueTypeAndDefault( ValueType.VTv4m4x4 ); - } - } else { - inputs[0].SetValueTypeAndDefault( ValueType.VTv4m4x4 ); - inputs[1].SetValueTypeAndDefault( ValueType.VTv4m4x4 ); - output.SetValueTypeAndDefault( ValueType.VTv4m4x4 ); - } - - } - - - } -} \ No newline at end of file diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_ConnectionGroups/SFNCG_MatrixMultiply.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/_ConnectionGroups/SFNCG_MatrixMultiply.cs.meta deleted file mode 100644 index bf3037af..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/_ConnectionGroups/SFNCG_MatrixMultiply.cs.meta +++ /dev/null @@ -1,12 +0,0 @@ -fileFormatVersion: 2 -guid: b10258b471dba3e49b2c62e710a974f3 -timeCreated: 1436176254 -licenseType: Pro -MonoImporter: - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_ConnectionGroups/SF_NodeConnectionGroup.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/_ConnectionGroups/SF_NodeConnectionGroup.cs deleted file mode 100755 index b1cf97fc..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/_ConnectionGroups/SF_NodeConnectionGroup.cs +++ /dev/null @@ -1,83 +0,0 @@ -using UnityEngine; -using System.Collections; - - -namespace ShaderForge { - - // Used to detect types based on input - [System.Serializable] - public class SF_NodeConnectionGroup : ScriptableObject { - - - public SF_NodeConnector output; - public SF_NodeConnector[] inputs; - - - - public void OnEnable() { - base.hideFlags = HideFlags.HideAndDontSave; - } - - - public SF_NodeConnectionGroup() { - // Empty - } - - - /* - public void Initialize( SF_NodeConnection output, params SF_NodeConnection[] inputs ) { - this.output = output; - this.inputs = inputs; - }*/ - - - public virtual void Refresh() { - // Override - } - - public void AssignToEmptyInputs( ValueType vt ) { - //Debug.Log("AssignToEmptInputs: " + vt + " on output of " + output.node.nodeName); - foreach( SF_NodeConnector nc in inputs ) { - if( !nc.IsConnected() ) - nc.valueType = vt; - } - } - - public bool RequiredInputsMissing() { - foreach( SF_NodeConnector nc in inputs ) { - if( !nc.IsConnected() && nc.required ) - return true; - } - return false; - } - - public void ResetValueTypes() { - output.ResetValueType(); - foreach( SF_NodeConnector nc in inputs ) { - nc.ResetValueType(); - } - } - - public bool NoInputsConnected() { - foreach( SF_NodeConnector nc in inputs ) { - if( nc.IsConnected() ) - return false; - } - return true; - } - - public static bool IsVectorType( ValueType vTinput ) { - if( vTinput == ValueType.VTv1 ) - return true; - if( vTinput == ValueType.VTv2 ) - return true; - if( vTinput == ValueType.VTv3 ) - return true; - if( vTinput == ValueType.VTv4 ) - return true; - return false; - } - - - } -} \ No newline at end of file diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_ConnectionGroups/SF_NodeConnectionGroup.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/_ConnectionGroups/SF_NodeConnectionGroup.cs.meta deleted file mode 100755 index e3adb3cf..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/_ConnectionGroups/SF_NodeConnectionGroup.cs.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: 29f1f79c469e47d4fbd337efdb4e4cb5 -MonoImporter: - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Enums.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/_Enums.meta deleted file mode 100644 index 9e94440f..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/_Enums.meta +++ /dev/null @@ -1,5 +0,0 @@ -fileFormatVersion: 2 -guid: 549512c18f19b459fa330b7b13bc1f15 -folderAsset: yes -DefaultImporter: - userData: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Enums/SF_VarTypeEnums.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/_Enums/SF_VarTypeEnums.cs deleted file mode 100644 index 03f99b37..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/_Enums/SF_VarTypeEnums.cs +++ /dev/null @@ -1,5 +0,0 @@ -using UnityEngine; -using System.Collections; - -public enum FloatPrecision{ Fixed, Half, Float }; -public enum CompCount{ c1, c2, c3, c4, c1x1, c2x2, c3x3, c4x4 }; \ No newline at end of file diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Enums/SF_VarTypeEnums.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/_Enums/SF_VarTypeEnums.cs.meta deleted file mode 100644 index 3365c45d..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/_Enums/SF_VarTypeEnums.cs.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: 83bc16350df4b47be937bd412bfe0a80 -MonoImporter: - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Evaluator.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/_Evaluator.meta deleted file mode 100755 index b8ece89a..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/_Evaluator.meta +++ /dev/null @@ -1,5 +0,0 @@ -fileFormatVersion: 2 -guid: 5f94f7f57d35346a79fe37c5394b46bf -folderAsset: yes -DefaultImporter: - userData: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Evaluator/Pass_FwdAdd.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/_Evaluator/Pass_FwdAdd.cs deleted file mode 100755 index 555c872b..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/_Evaluator/Pass_FwdAdd.cs +++ /dev/null @@ -1,50 +0,0 @@ -using UnityEngine; -using System.Collections; - -namespace ShaderForge{ - public class Pass_FrwAdd : MonoBehaviour { - - public SF_Evaluator eval; - - - public Pass_FrwAdd( SF_Evaluator eval ) { - this.eval = eval; - } - - - public void ForwardAddPass() { - eval.ResetDefinedState(); - - - - } - - - - //////////////////////////////////////////////////////////// - - - public void StartPass() { - App( "Pass {" ); - eval.scope++; - } - - - - - - public void EndPass() { - eval.scope--; - App( "}" ); - } - - //////////////////////////////////////////////////////////// - - public void App( string s ) { - eval.App( s ); - } - - - } -} - diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Evaluator/Pass_FwdAdd.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/_Evaluator/Pass_FwdAdd.cs.meta deleted file mode 100755 index ac70217a..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/_Evaluator/Pass_FwdAdd.cs.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: 22b57f25fa43b034dbe3965c4be91970 -MonoImporter: - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Evaluator/SF_Evaluator.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/_Evaluator/SF_Evaluator.cs deleted file mode 100755 index 7448c77d..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/_Evaluator/SF_Evaluator.cs +++ /dev/null @@ -1,3444 +0,0 @@ -using UnityEngine; -using UnityEditor; -using System.Collections; -using System.Collections.Generic; -using System; -using System.Reflection; -using System.IO; -using UnityEditor.VersionControl; -using System.Linq; - -namespace ShaderForge { - - - public enum PassType { - FwdBase, FwdAdd, ShadCast, - Outline, - Deferred, - Meta - }; - public enum ShaderProgram { Any, Vert, Frag, Tess }; - - [System.Serializable] - public class SF_Evaluator { - - public SF_Editor editor; - public List cNodes; - public List ghostNodes; - public int scope = 0; - public string shaderString = ""; - - public SF_PassSettings ps; - public SF_Dependencies dependencies; - public SF_ShaderProperty properties; - - public SFN_Final mOut; - - const bool DEBUG = true; - - - - - - public static PassType currentPass = PassType.FwdBase; - public static ShaderProgram currentProgram = ShaderProgram.Vert; - - public static bool inFrag { - get { - return SF_Evaluator.currentProgram == ShaderProgram.Frag; - } - } - public static bool inVert { - get { - return SF_Evaluator.currentProgram == ShaderProgram.Vert; - } - } - public static bool inTess { - get { - return SF_Evaluator.currentProgram == ShaderProgram.Tess; - } - } - - public static string WithProgramPrefix( string s ) { - if( SF_Evaluator.inFrag ) - return "i." + s; - if( SF_Evaluator.inVert ) - return "o." + s; - if( SF_Evaluator.inTess ) - return "v." + s; - Debug.Log( "Invalid program" ); - return null; - } - - - - // TODO: SHADER MODEL - public SF_Evaluator() { - - - } - - public SF_Evaluator( SF_Editor editor ) { - this.editor = editor; - this.ps = editor.ps; - } - - - public void PrepareEvaluation() { - ps.UpdateAutoSettings(); - - mOut = editor.mainNode; - } - - public void RemoveGhostNodes() { - if( ghostNodes == null ) - return; - - if( SF_Debug.ghostNodes ) - Debug.Log( "Removing ghost nodes. Count: " + ghostNodes.Count ); - for( int i = ghostNodes.Count - 1; i >= 0; i-- ) { - editor.nodes.Remove( ghostNodes[i] ); - ghostNodes[i].DeleteGhost(); - ghostNodes.Remove( ghostNodes[i] ); - } - //Debug.Log( "Done removing ghost nodes. Count: " + ghostNodes.Count ); - } - - bool LightmappedAndLit() { - return ps.catLighting.bakedLight && ( ps.HasSpecular() || ps.HasDiffuse() ) && ps.catLighting.lightMode != SFPSC_Lighting.LightMode.Unlit; - } - - bool IsReflectionProbed() { - return ( ps.HasSpecular() && ps.catLighting.lightMode != SFPSC_Lighting.LightMode.Unlit ) && ps.catLighting.reflectprobed && ( currentPass == PassType.FwdBase || currentPass == PassType.Deferred ); - } - - public void UpdateDependencies() { - - dependencies = new SF_Dependencies( editor.ps ); - - if( SF_Debug.evalFlow ) - Debug.Log( "UPDATING DEPENDENCIES: Pass = " + currentPass + " Prog = " + currentProgram ); - cNodes = editor.nodeView.treeStatus.GetListOfConnectedNodesWithGhosts( out ghostNodes, passDependent: true ); - if( SF_Debug.evalFlow ) - Debug.Log( "Found " + cNodes.Count + " nodes" ); - - - for( int i = 0; i < cNodes.Count; i++ ) { - cNodes[i].PrepareEvaluation(); - } - - if( currentPass == PassType.Meta ) { - dependencies.uv1 = true; - dependencies.uv2 = true; - } - - // Dependencies - if( ps.catLighting.IsLit() && !IsShadowOrOutlineOrMetaPass() && currentPass != PassType.Deferred ) { - dependencies.NeedLightColor(); - dependencies.NeedFragNormals(); - dependencies.NeedFragLightDir(); - - if( ( ps.catLighting.lightMode == SFPSC_Lighting.LightMode.BlinnPhong || ps.catLighting.lightMode == SFPSC_Lighting.LightMode.PBL ) && ps.mOut.specular.IsConnectedEnabledAndAvailableInThisPass( currentPass ) ) { - dependencies.NeedFragHalfDir(); - } - - if( ps.catLighting.lightMode == SFPSC_Lighting.LightMode.PBL && ps.mOut.diffuse.IsConnectedEnabledAndAvailableInThisPass(currentPass)){ - dependencies.NeedFragHalfDir(); - } - - - } - - if( editor.nodeView.treeStatus.viewDirectionInVertOffset ) { - dependencies.vert_viewDirection = true; - } - - if( currentPass == PassType.Deferred ) { - dependencies.NeedFragNormals(); - } - - if( IsReflectionProbed() && ps.HasSpecular() && ( currentPass == PassType.FwdBase || currentPass == PassType.Deferred ) ) { - dependencies.NeedFragViewReflection(); - dependencies.reflection_probes = true; - } - - if( ( currentPass == PassType.FwdBase || currentPass == PassType.Deferred ) && ( LightmappedAndLit() || IsReflectionProbed() || ps.catLighting.lightMode == SFPSC_Lighting.LightMode.PBL ) ) { - dependencies.NeedFragViewReflection(); - } - - - if( LightmappedAndLit() && !IsShadowOrOutlineOrMetaPass() ) { - dependencies.vert_in_normals = true; - if( ps.catLighting.highQualityLightProbes ) - dependencies.NeedFragNormals(); - } - - if( ps.IsOutlined() && currentPass == PassType.Outline ) { - dependencies.vert_in_normals = true; - if( ps.catGeometry.outlineMode == SFPSC_Geometry.OutlineMode.VertexColors ) { - dependencies.vert_in_vertexColor = true; - } - } - - if( ps.catLighting.IsVertexLit() && ps.catLighting.IsLit() && !IsShadowOrOutlineOrMetaPass() ) { - if( ps.catLighting.lightMode == SFPSC_Lighting.LightMode.BlinnPhong || ps.catLighting.lightMode == SFPSC_Lighting.LightMode.PBL ) - dependencies.NeedVertHalfDir(); - dependencies.NeedVertLightDir(); - } - - - if( LightmappedAndLit() ) { - dependencies.NeedFragWorldPos(); - dependencies.NeedFragViewDirection(); - dependencies.uv1 = true; - dependencies.uv1_frag = true; - dependencies.uv2 = true; - dependencies.uv2_frag = true; - } - - - if( LightmappedAndLit() && !IsShadowOrOutlineOrMetaPass() ) { - dependencies.NeedFragTangentTransform(); // Directional LMs - dependencies.uv1 = true; // Lightmap UVs - } - - //if( ps.HasAnisotropicLight() && !IsShadowPass() ) { - // dependencies.NeedFragTangents(); - // dependencies.NeedFragBinormals(); - //} - - - - if( ps.catLighting.IsFragmentLit() && !IsShadowOrOutlineOrMetaPass() ) { - dependencies.vert_in_normals = true; - dependencies.vert_out_normals = true; - dependencies.vert_out_worldPos = true; - dependencies.frag_normalDirection = true; - if( ps.HasNormalMap() || ps.catLighting.HasSpecular() ) - dependencies.NeedFragViewDirection(); - } - - if( ps.HasTangentSpaceNormalMap() && !IsShadowOrOutlineOrMetaPass() ) { - dependencies.frag_normalDirection = true; - dependencies.NeedFragTangentTransform(); - } - - if( ps.HasObjectSpaceNormalMap() && !IsShadowOrOutlineOrMetaPass() ) { - dependencies.objectScaleReciprocal = true; - } - - if( ps.HasRefraction() && !IsShadowOrOutlineOrMetaPass() ) { - dependencies.NeedRefraction(); - } - - if( ps.HasTessellation() ) { - dependencies.NeedTessellation(); - } - - if( ps.HasDisplacement() ) { - dependencies.NeedDisplacement(); - } - - - if( ps.catBlending.dithering != Dithering.Off && editor.mainNode.alphaClip.IsConnectedEnabledAndAvailable() ) { - dependencies.NeedSceneUVs(); - } - - - - - - foreach( SF_Node n in cNodes ) { - - if( n is SFN_Time ) { - dependencies.time = true; - } - - if( n is SFN_SceneColor ) { - if( ( n as SFN_SceneColor ).AutoUV() ) - dependencies.NeedSceneUVs(); - dependencies.NeedGrabPass(); - } - - if( n is SFN_ObjectPosition ) { - if( currentProgram == ShaderProgram.Frag ) - dependencies.NeedFragObjPos(); - else - dependencies.NeedVertObjPos(); - } - - if( n is SFN_Fresnel ) { - dependencies.NeedFragViewDirection(); - if( !n.GetInputIsConnected( "NRM" ) ) // Normal. If it's not connected, make sure we have the dependency for normals - dependencies.NeedFragNormals(); - } - - if( n is SFN_FragmentPosition ) { - dependencies.NeedFragWorldPos(); - } - - if( n is SFN_SceneDepth ) { - dependencies.depthTexture = true; - if(n.GetInputIsConnected("UV") == false) - dependencies.NeedSceneUVs(); - } - - if( n is SFN_DepthBlend ) { - dependencies.NeedSceneDepth(); - dependencies.frag_pixelDepth = true; - } - - if( n is SFN_Depth ) { - // (mul( UNITY_MATRIX_V, float4((_WorldSpaceCameraPos.rgb-i.posWorld.rgb),0) ).b - _ProjectionParams.g) - dependencies.NeedFragPixelDepth(); - } - - if( n is SFN_ObjectScale ) { - if( ( n as SFN_ObjectScale ).reciprocal ) - dependencies.objectScaleReciprocal = true; - else - dependencies.objectScale = true; - } - - /* - if( n is SFN_Rotator ) { - if(!n.GetInputIsConnected("ANG")) - dependencies.time = true; - }*/ - - /* - if( n is SFN_Panner ) { - if( !n.GetInputIsConnected( "DIST" ) ) - dependencies.time = true; - } - */ - - if( n is SFN_ScreenPos ) { - dependencies.NeedSceneUVs(); - } - - if( n is SFN_Tex2d ) { - if( n.GetInputIsConnected( "MIP" ) ) { // MIP connection - //dependencies.ExcludeRenderPlatform( RenderPlatform.opengl ); // TODO: Find workaround! - dependencies.SetMinimumShaderTarget( 3 ); - } - } - - if( n is SFN_Cubemap ) { - if( n.GetInputIsConnected( "MIP" ) ) { // MIP connection - //dependencies.ExcludeRenderPlatform( RenderPlatform.opengl ); // TODO: Find workaround! - dependencies.SetMinimumShaderTarget( 3 ); - } - } - - /* - if( n is SFN_Tex2d ) { - if( !n.GetInputIsConnected( "UVIN" ) ) { // Unconnected UV input - dependencies.uv0 = true; - dependencies.uv0_frag = true; - } - }*/ - - if( n is SFN_VertexColor ) { - dependencies.NeedFragVertexColor(); // TODO: Check if it really needs to be frag - } - - if( n is SFN_DDX || n is SFN_DDY ) { - dependencies.pragmaGlsl = true; - } - - if( n is SFN_TexCoord ) { - SFN_TexCoord nTC = (SFN_TexCoord)n; - switch( nTC.currentUV ) { - case SFN_TexCoord.UV.uv0: - dependencies.uv0 = true; - dependencies.uv0_frag = true; - if( nTC.useAsFloat4 ) dependencies.uv0_float4 = true; - break; - case SFN_TexCoord.UV.uv1: - dependencies.uv1 = true; - dependencies.uv1_frag = true; - if( nTC.useAsFloat4 ) dependencies.uv1_float4 = true; - break; - case SFN_TexCoord.UV.uv2: - dependencies.uv2 = true; - dependencies.uv2_frag = true; - if( nTC.useAsFloat4 ) dependencies.uv2_float4 = true; - break; - case SFN_TexCoord.UV.uv3: - dependencies.uv3 = true; - dependencies.uv3_frag = true; - if( nTC.useAsFloat4 ) dependencies.uv3_float4 = true; - break; - } - } - if( n is SFN_Pi ) { - dependencies.const_pi = true; - } - if( n is SFN_Phi ) { - dependencies.const_phi = true; - } - if( n is SFN_E ) { - dependencies.const_e = true; - } - if( n is SFN_Root2 ) { - dependencies.const_root2 = true; - } - if( n is SFN_Tau ) { - dependencies.const_tau = true; - } - - if( n is SFN_HalfVector ) { - dependencies.NeedFragHalfDir(); - } - if( n is SFN_LightColor ) { - dependencies.NeedLightColor(); - } - - - if( n is SFN_Parallax ) { - dependencies.NeedFragViewDirection(); - dependencies.NeedFragTangentTransform(); - if( !( n as SFN_Parallax ).GetInputIsConnected( "UVIN" ) ) { - dependencies.uv0 = true; - } - } - - if( n is SFN_Cubemap ) { - if( !n.GetInputIsConnected( "DIR" ) ) { // DIR connection, if not connected, we need default reflection vector - dependencies.NeedFragViewReflection(); - } - } - - - - if( SF_Editor.NodeExistsAndIs( n, "SFN_SkyshopSpec" ) ) { - if( !n.GetInputIsConnected( "REFL" ) ) { // Reflection connection, if not connected, we need default reflection vector - dependencies.NeedFragViewReflection(); - } - } - - if( n is SFN_LightAttenuation ) { - dependencies.NeedFragAttenuation(); - } - - if( n is SFN_ViewReflectionVector ) { - dependencies.NeedFragViewReflection(); - } - - if( n is SFN_LightVector ) { - dependencies.NeedFragLightDir(); - } - - if( n is SFN_ViewVector ) { - dependencies.NeedFragViewDirection(); - } - - if( n is SFN_Tangent ) { - dependencies.NeedFragTangents(); - } - if( n is SFN_Bitangent ) { - dependencies.NeedFragBitangents(); - } - if( n is SFN_NormalVector ) { - dependencies.NeedFragNormals(); - } - - - - if( n is SFN_Transform ) { - if( ( n as SFN_Transform ).spaceSelFrom == SFN_Transform.Space.Tangent || ( n as SFN_Transform ).spaceSelTo == SFN_Transform.Space.Tangent ) { - dependencies.NeedFragTangentTransform(); - } - } - - if( n is SFN_FaceSign ) { - dependencies.frag_facing = true; - } - - if( ps.catGeometry.IsDoubleSided() ) { - dependencies.frag_facing = true; - } - - - // This has to be done afterwards - if( dependencies.frag_normalDirection && ps.catGeometry.IsDoubleSided() ) { - dependencies.NeedFragViewDirection(); - } - - - } - - //RemoveGhostNodes(); // TODO: Maybe not here? - - if( SF_Debug.evalFlow ) - Debug.Log( "DONE UPDATING DEPENDENCIES" ); - } - - - - - - void BeginShader() { - App( "Shader \"" + editor.currentShaderPath + "\" {" ); - scope++; - } - void BeginProperties() { - App( "Properties {" ); - scope++; - } - - void PropertiesShaderLab() { - - BeginProperties(); - - //Debug.Log("Printing properties, count = " + editor.nodeView.treeStatus.propertyList.Count); - - for( int i = 0; i < editor.nodeView.treeStatus.propertyList.Count; i++ ) { - if( editor.nodeView.treeStatus.propertyList[i] == null ) { - editor.nodeView.treeStatus.propertyList.RemoveAt( i ); - i = -1; // restart - } - if( editor.nodeView.treeStatus.propertyList[i].IsProperty() ) { - string line = editor.nodeView.treeStatus.propertyList[i].property.GetInitializationLine(); - App( line ); - } - } - - bool transparency = ps.mOut.alphaClip.IsConnectedEnabledAndAvailable() || ps.HasAlpha(); - - if( transparency ) - App( "[HideInInspector]_Cutoff (\"Alpha cutoff\", Range(0,1)) = 0.5" ); // Hack, but, required for transparency to play along with depth etc - - if( ps.catGeometry.showPixelSnap ) - App("[MaterialToggle] PixelSnap (\"Pixel snap\", Float) = 0"); - - if( ps.catBlending.allowStencilWriteThroughProperties ) { - App( "_Stencil (\"Stencil ID\", Float) = 0" ); - App( "_StencilReadMask (\"Stencil Read Mask\", Float) = 255" ); - App( "_StencilWriteMask (\"Stencil Write Mask\", Float) = 255" ); - App( "_StencilComp (\"Stencil Comparison\", Float) = 8" ); - App( "_StencilOp (\"Stencil Operation\", Float) = 0" ); - App( "_StencilOpFail (\"Stencil Fail Operation\", Float) = 0" ); - App( "_StencilOpZFail (\"Stencil Z-Fail Operation\", Float) = 0" ); - } - - - - End(); - - } - void PropertiesCG() { - for( int i = 0; i < cNodes.Count; i++ ) { - AppIfNonEmpty( cNodes[i].GetPrepareUniformsAndFunctions() ); - if( cNodes[i].IsProperty() ) { - string propName = cNodes[i].property.nameInternal; - if( !( ( IncludeLightingCginc() || IncludeUnity5BRDF() ) && propName == "_SpecColor" ) ) // SpecColor already defined in Lighting.cginc - App( cNodes[i].property.GetFilteredVariableLine() ); - } - } - } - void BeginSubShader() { - App( "SubShader {" ); - scope++; - } - void BeginTags() { - App( "Tags {" ); - scope++; - } - void BeginCG() { - App( "CGPROGRAM" ); - - if( dependencies.tessellation ) { - App( "#pragma hull hull" ); - App( "#pragma domain domain" ); - App( "#pragma vertex tessvert" ); - } else { - App( "#pragma vertex vert" ); - } - App( "#pragma fragment frag" ); - - - - switch( currentPass ) { - case PassType.FwdBase: - App( "#define UNITY_PASS_FORWARDBASE" ); - break; - case PassType.FwdAdd: - App( "#define UNITY_PASS_FORWARDADD" ); - break; - case PassType.Deferred: - App( "#define UNITY_PASS_DEFERRED" ); - break; - case PassType.ShadCast: - App( "#define UNITY_PASS_SHADOWCASTER" ); - break; - case PassType.Meta: - App( "#define UNITY_PASS_META 1" ); - break; - } - - - if( LightmappedAndLit() ) { - App( "#define SHOULD_SAMPLE_SH ( defined (LIGHTMAP_OFF) && defined(DYNAMICLIGHTMAP_OFF) )" ); - - } - - if(ps.catLighting.reflectprobed ){ - App ("#define _GLOSSYENV 1"); - } - - - if( ps.catGeometry.showPixelSnap ) - App( "#pragma multi_compile _ PIXELSNAP_ON" ); - - - App( "#include \"UnityCG.cginc\"" ); - - if( ShouldUseLightMacros() ) - App( "#include \"AutoLight.cginc\"" ); - if( IncludeLightingCginc() ) - App( "#include \"Lighting.cginc\"" ); - if( dependencies.tessellation ) - App( "#include \"Tessellation.cginc\"" ); - if( IncludeUnity5BRDF() ){ - App( "#include \"UnityPBSLighting.cginc\"" ); - App( "#include \"UnityStandardBRDF.cginc\"" ); - } - if( currentPass == PassType.Meta ) { - App("#include \"UnityMetaPass.cginc\""); - } - if( ps.catMeta.cgIncludes.Count > 0 ) { // Custom CG includes - for (int i = 0; i < ps.catMeta.cgIncludes.Count; i++){ - string incStr = ps.catMeta.cgIncludes[i]; - if( incStr == string.Empty ) - continue; - App( "#include \"" + incStr + ".cginc\"" ); - } - } - - if( currentPass == PassType.FwdBase ) { - App( "#pragma multi_compile_fwdbase" + ps.catBlending.GetShadowPragmaIfUsed() ); - } else if( currentPass == PassType.FwdAdd ) { - App( "#pragma multi_compile_fwdadd" + ps.catBlending.GetShadowPragmaIfUsed() ); - } else { - App( "#pragma fragmentoption ARB_precision_hint_fastest" ); - if(!ps.catExperimental.forceNoShadowPass) - App( "#pragma multi_compile_shadowcaster" ); - } - - if( currentPass == PassType.Deferred ) { - App( "#pragma multi_compile ___ UNITY_HDR_ON" ); - } - - if( LightmappedAndLit() ) { - App( "#pragma multi_compile LIGHTMAP_OFF LIGHTMAP_ON" ); - App( "#pragma multi_compile DIRLIGHTMAP_OFF DIRLIGHTMAP_COMBINED DIRLIGHTMAP_SEPARATE" ); - App( "#pragma multi_compile DYNAMICLIGHTMAP_OFF DYNAMICLIGHTMAP_ON" ); - } - - if( UseUnity5Fog() ) - App( "#pragma multi_compile_fog" ); - - - - - List groups = new List(); - foreach( SF_Node n in cNodes ) { - int group; - string[] mcPrags = n.TryGetMultiCompilePragmas( out group ); - if( !groups.Contains( group ) && mcPrags != null ) { - groups.Add( group ); - for( int i = 0; i < mcPrags.Length; i++ ) { - App( "#pragma multi_compile " + mcPrags[i] ); - } - } - // Old branching tests - //if(n.IsProperty() && n.property is SFP_Branch){ - // App(n.property.GetMulticompilePragma ()); - //} - } - - - - if( dependencies.DoesIncludePlatforms() ) - App( "#pragma only_renderers " + dependencies.GetIncludedPlatforms() ); - if( dependencies.IsTargetingAboveDefault() ) { - if( ps.catExperimental.force2point0 ) - App( "#pragma target 2.0" ); - else - App( "#pragma target " + dependencies.GetShaderTarget() ); - } - - } - void EndCG() { - App( "ENDCG" ); - } - - public bool IncludeUnity5BRDF() { - return LightmappedAndLit() || ps.catLighting.lightMode == SFPSC_Lighting.LightMode.PBL || ps.catLighting.reflectprobed; - } - - bool UseUnity5Fog() { - return ps.catBlending.useFog; - } - - bool UseUnity5FogInThisPass() { - return ps.catBlending.useFog && ( currentPass == PassType.FwdAdd || currentPass == PassType.FwdBase || currentPass == PassType.Outline ); - } - - - - void AppTag( string k, string v ) { - App( "\"" + k + "\"=\"" + v + "\"" ); - } - - void PassTags() { - BeginTags(); - if( currentPass == PassType.FwdBase ) - AppTag( "LightMode", "ForwardBase" ); - else if( currentPass == PassType.FwdAdd ) - AppTag( "LightMode", "ForwardAdd" ); - else if( currentPass == PassType.ShadCast ) - AppTag( "LightMode", "ShadowCaster" ); - else if( currentPass == PassType.Deferred ) - AppTag( "LightMode", "Deferred" ); - else if( currentPass == PassType.Meta ) - AppTag( "LightMode", "Meta" ); - End(); - } - - - void SubShaderTags() { - - bool ip = ps.catBlending.ignoreProjector; - bool doesOffset = ps.catBlending.queuePreset != Queue.Geometry || ps.catBlending.queueOffset != 0; - bool hasRenderType = ps.catBlending.renderType != RenderType.None; - bool hasBatchConfig = ps.catMeta.batchingMode != SFPSC_Meta.BatchingMode.Enabled; - bool hasAtlasConfig = ps.catMeta.canUseSpriteAtlas; - bool hasPreviewType = ps.catMeta.previewType != SFPSC_Meta.Inspector3DPreviewType.Sphere; - - if( !ip && !doesOffset && !hasRenderType && !hasBatchConfig && !hasAtlasConfig && !hasPreviewType ) - return; // No tags! - - BeginTags(); - if( ip ) - AppTag( "IgnoreProjector", "True" ); - if( doesOffset ) { - string bse = ps.catBlending.queuePreset.ToString(); - string ofs = ""; - if( ps.catBlending.queueOffset != 0 ) - ofs = ps.catBlending.queueOffset > 0 ? ( "+" + ps.catBlending.queueOffset ) : ( ps.catBlending.queueOffset.ToString() ); - AppTag( "Queue", ( bse + ofs ).ToString() ); - } - if( hasRenderType ) - AppTag( "RenderType", ps.catBlending.renderType.ToString() ); - if( hasBatchConfig ) { - if(ps.catMeta.batchingMode == SFPSC_Meta.BatchingMode.Disabled) - AppTag( "DisableBatching", "True" ); - if(ps.catMeta.batchingMode == SFPSC_Meta.BatchingMode.DisableDuringLODFade) - AppTag( "DisableBatching", "LODFading" ); - } - if( hasAtlasConfig ) { - AppTag( "CanUseSpriteAtlas", "True" ); - } - if( hasPreviewType ) { - if( ps.catMeta.previewType == SFPSC_Meta.Inspector3DPreviewType.Plane) - AppTag( "PreviewType", "Plane" ); - if( ps.catMeta.previewType == SFPSC_Meta.Inspector3DPreviewType.Skybox ) - AppTag( "PreviewType", "Skybox" ); - } - - - - End(); - } - - void RenderSetup() { - - if( currentPass == PassType.FwdAdd ) - App( "Blend One One" ); - else if( currentPass == PassType.FwdBase && ps.catBlending.UseBlending() ) // Shadow passes and outlines use default blending - App( ps.catBlending.GetBlendString() ); - - if( currentPass == PassType.Meta ) { - App( "Cull Off" ); - } else if( currentPass == PassType.ShadCast ) { - App( "Offset 1, 1" ); - App( ps.catGeometry.GetCullString() ); - } else if( currentPass == PassType.Outline ) { - App( "Cull Front" ); - } else if( ps.catGeometry.UseCulling() ) - App( ps.catGeometry.GetCullString() ); - - if( ps.catBlending.UseDepthTest() && !IsShadowOrOutlineOrMetaPass() ) // Shadow passes and outlines use default - App( ps.catBlending.GetDepthTestString() ); - - if( !IsShadowOrOutlineOrMetaPass() ) { - App( ps.catBlending.GetZWriteString() ); - } - - if( ps.catBlending.colorMask != 15 ) { // 15 means RGBA, which is default - App("ColorMask " + ps.catBlending.colorMask.ToColorMaskString()); - } - - App( ps.catBlending.GetOffsetString() ); - - if(ps.catBlending.useStencilBuffer && currentPass == PassType.FwdBase){ - App("Stencil {"); - scope++; - App( ps.catBlending.GetStencilContent() ); - scope--; - App("}"); - } - - if( currentPass == PassType.FwdBase && ps.catBlending.alphaToCoverage ) { - App("AlphaToMask On"); - } - - - } - - void CGvars() { - - if( editor.mainNode.alphaClip.IsConnectedEnabledAndAvailable() ) { - if( ps.catBlending.dithering == Dithering.Dither2x2 ) { - App( "// Dithering function, to use with scene UVs (screen pixel coords)" ); - App( "// 2x2 Bayer matrix, based on https://en.wikipedia.org/wiki/Ordered_dithering" ); - App( "float BinaryDither2x2( float value, float2 sceneUVs ) {" ); - scope++; - App( "float2x2 mtx = float2x2(" ); - scope++; - App( "float2( 1, 3 )/5.0," ); - App( "float2( 4, 2 )/5.0" ); - scope--; - App( ");" ); - App( "float2 px = floor(_ScreenParams.xy * sceneUVs);" ); - App( "int xSmp = fmod(px.x,2);" ); - App( "int ySmp = fmod(px.y,2);" ); - App( "float2 xVec = 1-saturate(abs(float2(0,1) - xSmp));" ); - App( "float2 yVec = 1-saturate(abs(float2(0,1) - ySmp));" ); - App( "float2 pxMult = float2( dot(mtx[0],yVec), dot(mtx[1],yVec) );" ); - App( "return round(value + dot(pxMult, xVec));" ); - scope--; - App( "}" ); - } else if( ps.catBlending.dithering == Dithering.Dither3x3 ) { - App( "// Dithering function, to use with scene UVs (screen pixel coords)" ); - App( "// 3x3 Bayer matrix, based on https://en.wikipedia.org/wiki/Ordered_dithering" ); - App( "float BinaryDither3x3( float value, float2 sceneUVs ) {" ); - scope++; - App( "float3x3 mtx = float3x3(" ); - scope++; - App( "float3( 3, 7, 4 )/10.0," ); - App( "float3( 6, 1, 9 )/10.0," ); - App( "float3( 2, 8, 5 )/10.0" ); - scope--; - App( ");" ); - App( "float2 px = floor(_ScreenParams.xy * sceneUVs);" ); - App( "int xSmp = fmod(px.x,3);" ); - App( "int ySmp = fmod(px.y,3);" ); - App( "float3 xVec = 1-saturate(abs(float3(0,1,2) - xSmp));" ); - App( "float3 yVec = 1-saturate(abs(float3(0,1,2) - ySmp));" ); - App( "float3 pxMult = float3( dot(mtx[0],yVec), dot(mtx[1],yVec), dot(mtx[2],yVec) );" ); - App( "return round(value + dot(pxMult, xVec));" ); - scope--; - App( "}" ); - } else if( ps.catBlending.dithering == Dithering.Dither4x4 ) { - App( "// Dithering function, to use with scene UVs (screen pixel coords)" ); - App( "// 4x4 Bayer matrix, based on https://en.wikipedia.org/wiki/Ordered_dithering" ); - App( "float BinaryDither4x4( float value, float2 sceneUVs ) {" ); - scope++; - App( "float4x4 mtx = float4x4(" ); - scope++; - App( "float4( 1, 9, 3, 11 )/17.0," ); - App( "float4( 13, 5, 15, 7 )/17.0," ); - App( "float4( 4, 12, 2, 10 )/17.0," ); - App( "float4( 16, 8, 14, 6 )/17.0" ); - scope--; - App( ");" ); - App( "float2 px = floor(_ScreenParams.xy * sceneUVs);" ); - App( "int xSmp = fmod(px.x,4);" ); - App( "int ySmp = fmod(px.y,4);" ); - App( "float4 xVec = 1-saturate(abs(float4(0,1,2,3) - xSmp));" ); - App( "float4 yVec = 1-saturate(abs(float4(0,1,2,3) - ySmp));" ); - App( "float4 pxMult = float4( dot(mtx[0],yVec), dot(mtx[1],yVec), dot(mtx[2],yVec), dot(mtx[3],yVec) );" ); - App( "return round(value + dot(pxMult, xVec));" ); - scope--; - App( "}" ); - } - } - - - if( dependencies.lightColor && !IncludeLightingCginc() && !IncludeUnity5BRDF() ) // Lightmap and shadows include Lighting.cginc, which already has this. Don't include when making Unity 5 shaders - App( "uniform float4 _LightColor0;" ); - - - if( dependencies.grabPass ) { - App( "uniform sampler2D " + ps.catBlending.GetGrabTextureName() + ";" ); - } - - if( dependencies.depthTexture ) - App( "uniform sampler2D _CameraDepthTexture;" ); - - if( dependencies.fog_color ) { - App( "uniform float4 unity_FogColor;" ); - } - - - - PropertiesCG(); - - } - - void InitViewDirVert() { - if( dependencies.vert_viewDirection ) - App( "float3 viewDirection = normalize(_WorldSpaceCameraPos.xyz - mul(unity_ObjectToWorld, v.vertex).xyz);" ); - } - void InitViewDirFrag() { - if( dependencies.frag_viewDirection ) - App( "float3 viewDirection = normalize(_WorldSpaceCameraPos.xyz - i.posWorld.xyz);" ); - } - void InitTangentTransformFrag() { - if( ( dependencies.frag_tangentTransform && currentProgram == ShaderProgram.Frag ) || ( dependencies.vert_tangentTransform && currentProgram == ShaderProgram.Vert ) ) - App( "float3x3 tangentTransform = float3x3( " + WithProgramPrefix( "tangentDir" ) + ", " + WithProgramPrefix( "bitangentDir" ) + ", " + WithProgramPrefix( "normalDir" ) + ");" ); - } - - - - - string LightmapNormalDir() { - if( editor.mainNode.normal.IsConnectedAndEnabled() ) { - return "normalLocal"; - } - return "float3(0,0,1)"; - } - - void PrepareLightmapVars() { - if( !LightmapThisPass() ) - return; - - - // TODO U5 LMs - - - } - - void InitLightDir() { - - if( IsShadowPass() ) - return; - - if( ( currentProgram == ShaderProgram.Frag && !dependencies.frag_lightDirection ) || ( currentProgram == ShaderProgram.Vert && !dependencies.vert_lightDirection ) ) - return; - - if( currentPass == PassType.FwdBase ) { - - App( "float3 lightDirection = normalize(_WorldSpaceLightPos0.xyz);" ); - - return; - } - - // Point vs directional - App( "float3 lightDirection = normalize(lerp(_WorldSpaceLightPos0.xyz, _WorldSpaceLightPos0.xyz - " + WithProgramPrefix( "posWorld.xyz" ) + ",_WorldSpaceLightPos0.w));" ); - - } - - void InitLightColor(){ - App("float3 lightColor = _LightColor0.rgb;"); - } - - - void InitHalfVector() { - if( ( !dependencies.frag_halfDirection && currentProgram == ShaderProgram.Frag ) || ( !dependencies.vert_halfDirection && currentProgram == ShaderProgram.Vert ) ) - return; - App( "float3 halfDirection = normalize(viewDirection+lightDirection);" ); - } - - void InitAttenuation() { - - if( SF_Evaluator.inVert && ps.catLighting.IsVertexLit() && ShouldUseLightMacros() ) - App( "TRANSFER_VERTEX_TO_FRAGMENT(o)" ); - - string atten = "LIGHT_ATTENUATION(" + ( ( currentProgram == ShaderProgram.Frag ) ? "i" : "o" ) + ")"; - - string inner = ( ShouldUseLightMacros() ? atten : "1" ); - App( "float attenuation = " + inner + ";" ); - if( ps.catLighting.lightMode != SFPSC_Lighting.LightMode.Unlit ) - App( "float3 attenColor = attenuation * _LightColor0.xyz;" ); - } - - - string GetWithDiffPow( string s ) { - if( ps.HasDiffusePower() ) { - return "pow(" + s + ", " + ps.n_diffusePower + ")"; - } - return s; - } - - - - void CalcDiffuse() { - - //App( "float atten = 1.0;" ); - AppDebug( "Diffuse" ); - - - - //InitAttenuation(); - - - string lmbStr = ""; - - - - - - - - if( !InDeferredPass() ) { - bool definedNdotL = ps.HasSpecular(); - bool definedNdotLwrap = false; - - if( ps.HasTransmission() || ps.HasLightWrapping() ) { - - - - if( !InDeferredPass() ) { - if( !definedNdotL ) { - App( "float NdotL = dot( " + VarNormalDir() + ", lightDirection );" ); - definedNdotL = true; - } else { - App( "NdotL = dot( " + VarNormalDir() + ", lightDirection );" ); - } - definedNdotL = true; - } - - string fwdLight = "float3 forwardLight = "; // TODO - string backLight = "float3 backLight = "; // TODO - - - if( ps.HasLightWrapping() ) { - App( "float3 w = " + ps.n_lightWrap + "*0.5; // Light wrapping" ); - if( !definedNdotLwrap ) { - App( "float3 NdotLWrap = NdotL * ( 1.0 - w );" ); - definedNdotLwrap = true; - } - - App( fwdLight + GetWithDiffPow( "max(float3(0.0,0.0,0.0), NdotLWrap + w )" ) + ";" ); - if( ps.HasTransmission() ) { - App( backLight + GetWithDiffPow( "max(float3(0.0,0.0,0.0), -NdotLWrap + w )" ) + " * " + ps.n_transmission + ";" ); - } - - } else { - App( fwdLight + GetWithDiffPow( "max(0.0, NdotL )" ) + ";" ); - if( ps.HasTransmission() ) { - App( backLight + GetWithDiffPow( "max(0.0, -NdotL )" ) + " * " + ps.n_transmission + ";" ); - } - } - - lmbStr = "forwardLight"; - - if( ps.HasTransmission() ) { - lmbStr += "+backLight"; - lmbStr = "(" + lmbStr + ")"; - } - - }// else { - - - bool noSpec = !ps.HasSpecular(); - bool unity5pblDiffuse = ps.HasDiffuse() && ps.catLighting.lightMode == SFPSC_Lighting.LightMode.PBL; - - bool needsToDefineNdotV = noSpec && unity5pblDiffuse; - - if( needsToDefineNdotV ) { - App( "float NdotV = max(0.0,dot( " + VarNormalDir() + ", viewDirection ));" ); - } - - - - if( !definedNdotL ) { - App( "float NdotL = max(0.0,dot( " + VarNormalDir() + ", lightDirection ));" ); - } else { - App( "NdotL = max(0.0,dot( " + VarNormalDir() + ", lightDirection ));" ); - } - - if( Unity5PBL() ) { - //if( ps.HasTransmission() || ps.HasLightWrapping() ) - //App( "NdotL = max(0.0,NdotL);" ); - App( "half fd90 = 0.5 + 2 * LdotH * LdotH * (1-gloss);" ); - if( ps.HasTransmission() || ps.HasLightWrapping() ) { - if( !definedNdotLwrap ) - App( "float3 NdotLWrap = max(0,NdotL);" ); - App( "float nlPow5 = Pow5(1-NdotLWrap);" ); - } else { - App( "float nlPow5 = Pow5(1-NdotL);" ); - } - App( "float nvPow5 = Pow5(1-NdotV);" ); - - - string pbrStr = "((1 +(fd90 - 1)*nlPow5) * (1 + (fd90 - 1)*nvPow5) * NdotL)"; - - if( ps.HasTransmission() || ps.HasLightWrapping() ) { - lmbStr = "(" + lmbStr + " + " + pbrStr + ")"; - } else { - lmbStr = pbrStr; - } - - - } else if( !( ps.HasTransmission() || ps.HasLightWrapping() ) ) { - lmbStr = GetWithDiffPow( "max( 0.0, NdotL)" ); - } - - - - //} - - if( ps.catLighting.IsEnergyConserving() && !Unity5PBL() ) { - if( ps.HasLightWrapping() ) { - lmbStr += "*(0.5-max(w.r,max(w.g,w.b))*0.5)"; - } - } - - lmbStr = "float3 directDiffuse = " + lmbStr + " * attenColor"; - lmbStr += ";"; - App( lmbStr ); - } - - - - bool ambDiff = ps.mOut.ambientDiffuse.IsConnectedEnabledAndAvailableInThisPass( currentPass ); - bool shLight = DoPassSphericalHarmonics(); - bool diffAO = ps.mOut.diffuseOcclusion.IsConnectedEnabledAndAvailableInThisPass( currentPass ); - bool ambLight = ps.catLighting.useAmbient && ( currentPass == PassType.FwdBase ) && !LightmappedAndLit(); // Ambient is already in light probe data - - bool hasIndirectLight = ambDiff || shLight || ambLight; // TODO: Missing lightmaps - - - - - if( hasIndirectLight ) { - App( "float3 indirectDiffuse = float3(0,0,0);" ); - } - - - - - - - - - - // Direct light done, now let's do indirect light - - //if( !InDeferredPass() ) { - if( hasIndirectLight ) { - //App( " indirectDiffuse = float3(0,0,0);" ); - - if( ambLight ) - App( "indirectDiffuse += " + GetAmbientStr() + "; // Ambient Light" ); - if( ambDiff ) - App( "indirectDiffuse += " + ps.n_ambientDiffuse + "; // Diffuse Ambient Light" ); - - - if( LightmappedAndLit() ) { - - - App( "indirectDiffuse += gi.indirect.diffuse;" ); - - - } - - // Diffuse AO - if( diffAO ) { - App( "indirectDiffuse *= " + ps.n_diffuseOcclusion + "; // Diffuse AO" ); - } - - - } - //} - - - //if( LightmapThisPass() ) { - // scope--; - //App( "#endif" ); - // } - - // This has been defined before specular, in the case of PBL - if( !Unity5PBL() ) { - App( "float3 diffuseColor = " + ps.n_diffuse + ";" ); - } - - // To make diffuse/spec tradeoff better - if( DoPassDiffuse() && DoPassSpecular() ) { - if( ps.catLighting.lightMode == SFPSC_Lighting.LightMode.PBL ) { - if(ps.catLighting.specularMode != SFPSC_Lighting.SpecularMode.Metallic) // Metallic has already done this by now - App( "diffuseColor *= 1-specularMonochrome;" ); - } else if( ps.catLighting.energyConserving ) { - App( "diffuseColor *= 1-specularMonochrome;" ); - } - } - - if( !InDeferredPass() ) { - if( hasIndirectLight ) { - App( "float3 diffuse = (directDiffuse + indirectDiffuse) * diffuseColor;" ); - } else { - App( "float3 diffuse = directDiffuse * diffuseColor;" ); - } - - } - - //if( SF_Tools.UsingUnity5plus && ps.catLighting.lightMode == SFPSC_Lighting.LightMode.PBL ) { - // App( "diffuse *= 0.75;" ); - //} - - - - - - } - - bool LightmapThisPass() { - return LightmappedAndLit() && ( currentPass == PassType.FwdBase || currentPass == PassType.Deferred ); - } - - void InitNormalDirVert() { - if( dependencies.vert_out_normals ) { - App( "o.normalDir = UnityObjectToWorldNormal(" + ps.catGeometry.GetNormalSign() + "v.normal);" ); - } - } - - void InitTangentDirVert() { - App( "o.tangentDir = normalize( mul( unity_ObjectToWorld, float4( v.tangent.xyz, 0.0 ) ).xyz );" ); - } - - void InitBitangentDirVert() { - App( "o.bitangentDir = normalize(cross(o.normalDir, o.tangentDir) * v.tangent.w);" ); - } - - void InitObjectPos() { - if( dependencies.frag_objectPos || dependencies.vert_objectPos ) - App( "float4 objPos = mul ( unity_ObjectToWorld, float4(0,0,0,1) );" ); - } - void InitObjectScale() { - if( dependencies.objectScaleReciprocal || dependencies.objectScale ) - App( "float3 recipObjScale = float3( length(unity_WorldToObject[0].xyz), length(unity_WorldToObject[1].xyz), length(unity_WorldToObject[2].xyz) );" ); - if( dependencies.objectScale ) - App( "float3 objScale = 1.0/recipObjScale;" ); - } - - void InitNormalDirFrag() { - - if( ( !dependencies.frag_normalDirection && currentProgram == ShaderProgram.Frag ) ) - return; - - - - - //if(ps.normalQuality == SF_PassSettings.NormalQuality.Normalized){ - // App ("i.normalDir = normalize(i.normalDir);"); - //} - - - - if( currentPass == PassType.ShadCast || currentPass == PassType.Meta ) { - App( "float3 normalDirection = i.normalDir;" ); - } else { - if( ps.HasTangentSpaceNormalMap() ) { - App( "float3 normalLocal = " + ps.n_normals + ";" ); - App( "float3 normalDirection = normalize(mul( normalLocal, tangentTransform )); // Perturbed normals" ); - } else if( ps.HasObjectSpaceNormalMap() ) { - App( "float3 normalLocal = " + ps.n_normals + ";" ); - App( "float3 normalDirection = mul( unity_WorldToObject, float4(normalLocal,0)) / recipObjScale;" ); - } else if( ps.HasWorldSpaceNormalMap() ) { - App( "float3 normalDirection = " + ps.n_normals + ";" ); - } else { - App( "float3 normalDirection = i.normalDir;" ); - } - } - - - - } - - - void CalcGloss() { - AppDebug( "Gloss" ); - if( ps.catLighting.glossRoughMode == SFPSC_Lighting.GlossRoughMode.Roughness ){ - App( "float gloss = 1.0 - " + ps.n_gloss + "; // Convert roughness to gloss" ); - if( Unity5PBL() ) - App( "float perceptualRoughness = " + ps.n_gloss + ";" ); - } else { - App( "float gloss = " + ps.n_gloss + ";" ); - if( Unity5PBL() ) - App( "float perceptualRoughness = 1.0 - " + ps.n_gloss + ";" ); - } - - if( Unity5PBL() ) { - if( ps.catLighting.geometricAntiAliasing ) { - App( "float3 spaaDx = ddx(i.normalDir);" ); - App( "float3 spaaDy = ddy(i.normalDir);" ); - App( "float geoRoughFactor = pow(saturate(max(dot(spaaDx,spaaDx),dot(spaaDy,spaaDy))),0.333);" ); - App( "perceptualRoughness = max(perceptualRoughness, geoRoughFactor);" ); - } - App( "float roughness = perceptualRoughness * perceptualRoughness;" ); - } - - if( !InDeferredPass() ) { - if( ps.catLighting.remapGlossExponentially ) { - App( "float specPow = exp2( gloss * 10.0 + 1.0 );" ); - } else { - App( "float specPow = gloss;" ); - } - } - - - - } - - bool DoAmbientSpecThisPass() { - return ( mOut.ambientSpecular.IsConnectedEnabledAndAvailable() && ( currentPass == PassType.FwdBase || currentPass == PassType.Deferred ) ); - } - - - void CalcSpecular() { - - - - AppDebug( "Specular" ); - - - - if( currentPass != PassType.Deferred ) { - App( "float NdotL = saturate(dot( " + VarNormalDir() + ", lightDirection ));" ); - } - - - //if(DoAmbientSpecThisPass() && ps.IsPBL()) - //App ("float NdotR = max(0, dot(viewReflectDirection, normalDirection));"); // WIP - - string directSpecular = "float3 directSpecular = "; - - string attColStr; - //if( ps.catLighting.maskedSpec && currentPass == PassType.FwdBase && ps.catLighting.lightMode != SFPSC_Lighting.LightMode.PBL ) { - // attColStr = "(floor(attenuation) * _LightColor0.xyz)"; - //} else { - attColStr = "attenColor"; - //} - - - - - - - - - /* - * float3 specular = pow(max(0.0,dot(halfDirection, normalDirection)),specPow) * specularColor; - #ifndef LIGHTMAP_OFF - #ifndef DIRLIGHTMAP_OFF - specular *= lightmap; - #else - specular *= floor(attenuation) * _LightColor0.xyz; - #endif - #else - specular = floor(attenuation) * _LightColor0.xyz; - #endif - * */ - - directSpecular += attColStr; /* * " + ps.n_specular;*/ // TODO: Doesn't this double the spec? Removed for now. Shouldn't evaluate spec twice when using PBL - - - - - //if( mOut.ambientSpecular.IsConnectedEnabledAndAvailable() && currentPass == PassType.FwdBase){ - // s += "(attenColor + " + ps.n_ambientSpecular + ")"; - //} else { - // s += "attenColor"; - //} - - - - bool occluded = ps.mOut.specularOcclusion.IsConnectedEnabledAndAvailableInThisPass( currentPass ) && !InDeferredPass(); - bool ambSpec = DoAmbientSpecThisPass(); - bool reflProbed = dependencies.reflection_probes; - bool hasIndirectSpecular = ambSpec || ( reflProbed && ( currentPass == PassType.FwdBase || currentPass == PassType.Deferred ) ); - string indirectSpecular = ""; - - if( hasIndirectSpecular ) { - - if( occluded ) { - App( "float3 specularAO = " + ps.n_specularOcclusion + ";" ); - } - - indirectSpecular = "float3 indirectSpecular = "; - - - - - - if( reflProbed ) { - indirectSpecular += "(gi.indirect.specular"; - } else { - indirectSpecular += "(0"; - } - - - if( ambSpec ) { - indirectSpecular += " + " + ps.n_ambientSpecular + ")"; - } else { - indirectSpecular += ")"; - } - - if( occluded ) { - indirectSpecular += " * specularAO"; - } - - - } - - - - - - - - - if( ps.catLighting.IsPBL() && !InDeferredPass() ) { - - App( "float LdotH = saturate(dot(lightDirection, halfDirection));" ); - - - - //s += "*NdotL"; // TODO: Really? Is this the cosine part? - - //if(DoAmbientSpecThisPass()) - //sAmb += " * NdotR"; - - } - - if( !InDeferredPass() && !Unity5PBL() ) { - if( ps.catLighting.lightMode == SFPSC_Lighting.LightMode.Phong ) - directSpecular += " * pow(max(0,dot(reflect(-lightDirection, " + VarNormalDir() + "),viewDirection))"; - if( ps.catLighting.lightMode == SFPSC_Lighting.LightMode.BlinnPhong ) { - directSpecular += " * pow(max(0,dot(halfDirection," + VarNormalDir() + "))"; - } - directSpecular += ",specPow)"; - } - - bool initialized_NdotV = false; - bool initialized_NdotH = false; - bool initialized_VdotH = false; - - - App( "float3 specularColor = " + ps.n_specular + ";" ); - if( Unity5PBL() ) { - App( "float specularMonochrome;" ); - App( "float3 diffuseColor = " + ps.n_diffuse + "; // Need this for specular when using metallic" ); - if( MetallicPBL() ) { - App( "diffuseColor = DiffuseAndSpecularFromMetallic( diffuseColor, specularColor, specularColor, specularMonochrome );" ); - } else { - App( "diffuseColor = EnergyConservationBetweenDiffuseAndSpecular(diffuseColor, specularColor, specularMonochrome);" ); - } - App( "specularMonochrome = 1.0-specularMonochrome;" ); - } else if( ps.catLighting.energyConserving && DoPassDiffuse() && DoPassSpecular() ){ - App( "float specularMonochrome = max( max(specularColor.r, specularColor.g), specularColor.b);" ); - } - - - - - - - - string specularPBL = ""; - - // PBL SHADING, normalization term comes after this - if( ps.catLighting.IsPBL() && !InDeferredPass() ) { - - - - // FRESNEL TERM - //App( "float3 specularColor = " + ps.n_specular + ";" ); - - - - //specularPBL += "*NdotL"; - - - - // VISIBILITY TERM / GEOMETRIC TERM? - - if( !initialized_NdotV ) { - App( "float NdotV = abs(dot( " + VarNormalDir() + ", viewDirection ));" ); - initialized_NdotV = true; - } - - - if( !initialized_NdotH ) { - App( "float NdotH = saturate(dot( " + VarNormalDir() + ", halfDirection ));" ); - initialized_NdotH = true; - } - if( !initialized_VdotH ) { - App( "float VdotH = saturate(dot( viewDirection, halfDirection ));" ); - initialized_VdotH = true; - } - - App( "float visTerm = SmithJointGGXVisibilityTerm( NdotL, NdotV, roughness );" ); - - specularPBL += "*visTerm"; - - - - - - - } else { - //sAmb += " * specularColor"; - //directSpecular += " * specularColor"; - } - - - - if( ps.catLighting.IsEnergyConserving() && !InDeferredPass() ) { - // NORMALIZATION TERM - if( ps.catLighting.lightMode == SFPSC_Lighting.LightMode.Phong ) { - App( "float normTerm = (specPow + 2.0 ) / (2.0 * Pi);" ); - directSpecular += "*normTerm"; - } else if( ps.catLighting.lightMode == SFPSC_Lighting.LightMode.BlinnPhong || ps.catLighting.lightMode == SFPSC_Lighting.LightMode.PBL ) { - if( Unity5PBL() ) { - - if( !initialized_NdotH ) { - App( "float NdotH = saturate(dot( " + VarNormalDir() + ", halfDirection ));" ); - initialized_NdotH = true; - } - - App( "float normTerm = GGXTerm(NdotH, roughness);" ); - specularPBL += "*normTerm"; - - } else { - App( "float normTerm = (specPow + 8.0 ) / (8.0 * Pi);" ); - directSpecular += "*normTerm"; - } - - } - - if( DoAmbientSpecThisPass() ) { - //sAmb += " * normTerm"; - } - - - - - } - - - - - - if( !InDeferredPass() ) { - if( Unity5PBL() ) { - - if( !initialized_NdotV ) { - App( "float NdotV = max(0.0,dot( " + VarNormalDir() + ", viewDirection ));" ); - initialized_NdotV = true; - } - - - - specularPBL = specularPBL.Substring( 1 ); // Remove first * symbol - specularPBL = "float specularPBL = (" + specularPBL + ") * UNITY_PI;"; - - App( specularPBL ); - - App( "#ifdef UNITY_COLORSPACE_GAMMA" ); - scope++; - App( "specularPBL = sqrt(max(1e-4h, specularPBL));" ); - scope--; - App( "#endif" ); - App( "specularPBL = max(0, specularPBL * NdotL);" ); - App( "#if defined(_SPECULARHIGHLIGHTS_OFF)" ); - scope++; - App( "specularPBL = 0.0;" ); - scope--; - App( "#endif" ); - - // Surface reduction - if( hasIndirectSpecular ) { - App( "half surfaceReduction;" ); - App( "#ifdef UNITY_COLORSPACE_GAMMA" ); - scope++; - App( "surfaceReduction = 1.0-0.28*roughness*perceptualRoughness;" ); - scope--; - App( "#else" ); - scope++; - App( "surfaceReduction = 1.0/(roughness*roughness + 1.0);" ); - scope--; - App( "#endif" ); - } - - - // Kill spec if color = 0 - App( "specularPBL *= any(specularColor) ? 1.0 : 0.0;" ); - - - directSpecular += "*specularPBL*FresnelTerm(specularColor, LdotH)"; - } else { - directSpecular += "*specularColor"; - } - - directSpecular += ";"; - - App( directSpecular ); - } else { - // If we're in deferred, we still need NdotV for lightmapping - if( !initialized_NdotV ) { - App( "float NdotV = max(0.0,dot( " + VarNormalDir() + ", viewDirection ));" ); - initialized_NdotV = true; - } - } - - - - - - string specular = ""; - - - if( hasIndirectSpecular ) { - - if( Unity5PBL() ) { - App( "half grazingTerm = saturate( gloss + specularMonochrome );" ); - } else { - indirectSpecular += "*specularColor"; - } - - App( indirectSpecular + ";" ); - - if( Unity5PBL() ) { - if( ps.HasSpecular() ) { - App( "indirectSpecular *= FresnelLerp (specularColor, grazingTerm, NdotV);" ); - if(!InDeferredPass()) - App( "indirectSpecular *= surfaceReduction;" ); - } else { - //App( "float3 indirectFresnelPBL = FresnelLerp (specularColor, grazingTerm, NdotV);" ); - } - } - if( !InDeferredPass() ) { - specular = "float3 specular = (directSpecular + indirectSpecular);"; - } - - } else if(!InDeferredPass()){ - specular = "float3 specular = directSpecular;"; - } - - if( !InDeferredPass() ) - App( specular ); // Specular - - - - - - - - - - - } - - // Spec & emissive - /* - void CalcAddedLight() { - - - // No added light unless we're using spec or emissive - if( !ps.HasSpecular() && !ps.HasEmissive() ) - return; - - AppDebug("CalcAddedLight()"); - - string s = ""; - //if( ps.HasSpecular() || ps.HasEmissive() && currentPass == PassType.FwdBase ) - - if( ps.HasSpecular() ) { - - CalcGloss(); - CalcSpecular(); - - if( ps.HasEmissive() && currentPass == PassType.FwdBase ) - s += " + " + ps.n_emissive; - - s += ";"; - - } else if( ps.HasEmissive() && currentPass == PassType.FwdBase ) { - s = "float3 addLight = "; - s += ps.n_emissive + ";"; - } - - App( s ); - } - */ - - - public bool MetallicPBL() { - return ps.catLighting.IsPBL() && ps.catLighting.specularMode == SFPSC_Lighting.SpecularMode.Metallic; - } - - bool Unity5PBL() { - return ps.catLighting.lightMode == SFPSC_Lighting.LightMode.PBL; - } - - - void CalcEmissive() { - AppDebug( "Emissive" ); - App( "float3 emissive = " + ps.n_emissive + ";" ); - } - - bool DoPassDiffuse() { - return ps.HasDiffuse() && ( currentPass == PassType.FwdBase || currentPass == PassType.FwdAdd || currentPass == PassType.Deferred ); - } - bool DoPassEmissive() { // Emissive should always be in the base pass - return ps.HasEmissive() && ( currentPass == PassType.FwdBase || currentPass == PassType.Deferred ); - } - bool DoPassSpecular() { // Spec only in base and add passes - return ps.catLighting.HasSpecular() && ( currentPass == PassType.FwdBase || currentPass == PassType.FwdAdd || currentPass == PassType.Deferred ); - } - - - - void CalcFinalLight() { - //bool addedOnce = false; - string finalLightStr = "float3 lightFinal = "; - if( ps.catLighting.IsLit() ) { - finalLightStr += "diffuse"; - if( ps.catLighting.useAmbient && currentPass == PassType.FwdBase ) { - finalLightStr += " + UNITY_LIGHTMODEL_AMBIENT.xyz"; - } - } - - finalLightStr += ";"; - App( finalLightStr ); - - } - - - - - void AppFinalOutput( string color, string alpha ) { - - string rgbaValue; - if( ps.HasRefraction() && currentPass == PassType.FwdBase ) { - rgbaValue = "fixed4(lerp(sceneColor.rgb, " + color + "," + alpha + "),1)"; - } else { - rgbaValue = "fixed4(" + color + "," + alpha + ")"; - } - - if( UseUnity5FogInThisPass() ) { - App( "fixed4 finalRGBA = " + rgbaValue + ";" ); - if( ps.catBlending.fogOverrideColor ) { - App( "UNITY_APPLY_FOG_COLOR(i.fogCoord, finalRGBA, " + GetFogColorAsFixed3Value() + ");" ); - } else { - App( "UNITY_APPLY_FOG(i.fogCoord, finalRGBA);" ); - } - App( "return finalRGBA;" ); - } else { - App( "return " + rgbaValue + ";" ); - } - - } - - string GetFogColorAsFixed3Value() { - Color c = ps.catBlending.fogColor; - return "fixed4(" + c.r + "," + c.g + "," + c.b + "," + c.a + ")"; - } - - - string GetAmbientStr() { - string s; - if( InDeferredPass() ) - s = "unity_Ambient.rgb"; - else - s = "UNITY_LIGHTMODEL_AMBIENT.rgb"; - - - if( InDeferredPass() ) { - s += "*0.5"; // TODO: Maybe not? - } - - - - - - return s; - - } - - - bool DoPassSphericalHarmonics() { - return DoPassDiffuse() && LightmappedAndLit() && ( currentPass == PassType.FwdBase || currentPass == PassType.Deferred ); - } - - bool InDeferredPass() { - return currentPass == PassType.Deferred; - } - - - void Lighting() { - - if( IsShadowOrOutlineOrMetaPass() ) - return; - AppDebug( "Lighting" ); - - /* - if( ps.IsVertexLit() && SF_Evaluator.inFrag ) { - string finalLightStr = "float3 lightFinal = i.vtxLight"; - - if(DoPassDiffuse()) - finalLightStr += " * " + ps.n_diffuse; // TODO: Not ideal, affects both spec and diffuse - - finalLightStr += ";"; - App( finalLightStr ); // TODO: Emissive and other frag effects? TODO: Separate vtx spec and vtx diffuse - return; - } - */ - - bool attenBuiltin = ps.catLighting.IsLit() && ( ps.HasDiffuse() || ps.catLighting.HasSpecular() ) && currentPass != PassType.Deferred; - - if( attenBuiltin || ( dependencies.frag_attenuation && SF_Evaluator.inFrag ) ) - InitAttenuation(); - - if( !ps.catLighting.IsLit() && SF_Evaluator.inFrag ) { - - - string s = "float3 finalColor = "; - - - - //bool doAmbient = (currentPass == ShaderForge.PassType.FwdBase && ps.useAmbient); - bool doEmissive = DoPassEmissive(); - bool doCustomLight = mOut.customLighting.IsConnectedEnabledAndAvailable(); - - bool didAddLight = /*doAmbient || */doEmissive || doCustomLight; - - bool somethingAdded = false; - //if( doAmbient ){ - // s += somethingAdded ? " + ":""; - // s += GetAmbientStr(); - // somethingAdded = true; - //} - if( doEmissive ) { - CalcEmissive(); - s += somethingAdded ? " + " : ""; - s += "emissive"; - somethingAdded = true; - } - if( doCustomLight ) { - s += somethingAdded ? " + " : ""; - s += ps.n_customLighting; - somethingAdded = true; - } - - - - if( !didAddLight ) - s += "0"; // TODO: Don't do lighting at all if this is the case - - - s += ";"; - - App( s ); - - //if( ps.useAmbient && currentPass == PassType.FwdBase ) - // App( "float3 lightFinal = " + ps.n_emissive + "+UNITY_LIGHTMODEL_AMBIENT.xyz;"); // TODO; THIS IS SUPER WEIRD - //else - // App( "float3 lightFinal = " + ps.n_emissive + ";"); // Kinda weird, but emissive = light when unlit is on, so it's needed in additional passes too - return; - - } - - - - // Else if frag light... - - //InitLightDir(); - - //if(SF_Evaluator.inFrag) - - - if( DoPassDiffuse() || DoPassSpecular() ) { - if( ps.catLighting.IsEnergyConserving() ) { - App( "float Pi = 3.141592654;" ); - App( "float InvPi = 0.31830988618;" ); - } - } - - - bool unity5pblDiffusePlugged = ps.catLighting.lightMode == SFPSC_Lighting.LightMode.PBL && ps.mOut.diffuse.IsConnectedEnabledAndAvailableInThisPass(currentPass); - - - if( DoPassSpecular() || unity5pblDiffusePlugged ) { // Specular - CalcGloss(); - } - - - CalcGIdata(); - - - - - if( DoPassSpecular() ) { // Specular - //if( !InDeferredPass() ) - //CalcGloss(); - CalcSpecular(); - //AppDebug("Spec done"); - } - - if( DoPassDiffuse() ) // Diffuse + texture (If not vertex lit) - CalcDiffuse(); - - if( DoPassEmissive() ) // Emissive - CalcEmissive(); - - /*if(!ps.IsLit() && ps.mOut.customLighting.IsConnectedEnabledAndAvailable() ){ - - App("float3 lightFinal = " + ps.n_customLighting ); - - }*/ - if( /*!ps.IsVertexLit() &&*/ currentProgram == ShaderProgram.Frag ) { - - AppDebug( "Final Color" ); - - /* - bool fresnelIndirectPBL = - Unity5PBL() && - ( ps.catLighting.reflectprobed || ps.HasAmbientSpecular() ) && - (currentPass == PassType.FwdBase || currentPass == PassType.PrePassFinal) - ;*/ - - - - if(!InDeferredPass()){ - - - string diffuse = ps.HasAlpha() && ps.catLighting.transparencyMode == SFPSC_Lighting.TransparencyMode.Reflective ? "diffuse * " + ps.n_alpha : "diffuse" ; - - string s = SumString( - new bool[] { DoPassDiffuse(), DoPassSpecular(), DoPassEmissive() }, - new string[] { diffuse, "specular", "emissive" }, - "0" - ); - - App( "float3 finalColor = " + s + ";" ); - } - - - } - - } - - - void CalcGIdata(){ - - - if( ( currentPass == PassType.FwdBase || currentPass == PassType.Deferred ) && ( ps.catLighting.lightMode == SFPSC_Lighting.LightMode.PBL || ps.catLighting.reflectprobed || LightmappedAndLit() ) ) { - - - AppDebug("GI Data"); - - - if( InDeferredPass() ) { - App( "UnityLight light; // Dummy light" ); - App( "light.color = 0;" ); - App( "light.dir = half3(0,1,0);" ); - App( "light.ndotl = max(0,dot(normalDirection,light.dir));" ); - } else { - App( "UnityLight light;" ); - App( "#ifdef LIGHTMAP_OFF" ); - scope++; - App( "light.color = lightColor;" ); - App( "light.dir = lightDirection;" ); - App( "light.ndotl = LambertTerm (normalDirection, light.dir);" ); - scope--; - App( "#else" ); - scope++; - App( "light.color = half3(0.f, 0.f, 0.f);" ); - App( "light.ndotl = 0.0f;" ); - App( "light.dir = half3(0.f, 0.f, 0.f);" ); - scope--; - App( "#endif" ); - } - - - - App("UnityGIInput d;"); - App("d.light = light;"); - App("d.worldPos = i.posWorld.xyz;"); - App("d.worldViewDir = viewDirection;"); - if( InDeferredPass() ) - App( "d.atten = 1;" ); - else - App("d.atten = attenuation;"); - - if( LightmappedAndLit() ) { - App( "#if defined(LIGHTMAP_ON) || defined(DYNAMICLIGHTMAP_ON)" ); - scope++; - App( "d.ambient = 0;" ); - App( "d.lightmapUV = i.ambientOrLightmapUV;" ); - scope--; - App( "#else" ); - scope++; - App( "d.ambient = i.ambientOrLightmapUV;" ); - scope--; - App( "#endif" ); - } - - - - - if(DoPassSpecular() && ps.catLighting.reflectprobed){ - App( "#if UNITY_SPECCUBE_BLENDING || UNITY_SPECCUBE_BOX_PROJECTION" ); - scope++; - App("d.boxMin[0] = unity_SpecCube0_BoxMin;"); - App("d.boxMin[1] = unity_SpecCube1_BoxMin;"); - scope--; - App( "#endif" ); - - App( "#if UNITY_SPECCUBE_BOX_PROJECTION" ); - scope++; - App("d.boxMax[0] = unity_SpecCube0_BoxMax;"); - App("d.boxMax[1] = unity_SpecCube1_BoxMax;"); - App("d.probePosition[0] = unity_SpecCube0_ProbePosition;"); - App("d.probePosition[1] = unity_SpecCube1_ProbePosition;"); - scope--; - App( "#endif" ); - - App("d.probeHDR[0] = unity_SpecCube0_HDR;"); - App("d.probeHDR[1] = unity_SpecCube1_HDR;"); - - } - - - string glossStr = DoPassSpecular() ? "gloss" : "0"; - - App( "Unity_GlossyEnvironmentData ugls_en_data;" ); - App( "ugls_en_data.roughness = 1.0 - " + glossStr + ";" ); - App( "ugls_en_data.reflUVW = viewReflectDirection;" ); - - App( "UnityGI gi = UnityGlobalIllumination(d, 1, normalDirection, ugls_en_data );" ); - - - if( !InDeferredPass() ) { - App ("lightDirection = gi.light.dir;"); - App ("lightColor = gi.light.color;"); - } - - - } - - - - - - } - - - - - string SumString( bool[] bools, string[] strings, string defStr ) { - - int validCount = 0; - for( int i = 0; i < bools.Length; i++ ) { - if( bools[i] ) - validCount++; - } - - if( validCount == 0 ) - return defStr; - - string s = ""; - int added = 0; - for( int i = 0; i < strings.Length; i++ ) { - if( bools[i] ) { - s += strings[i]; - added++; - if( added < validCount ) - s += " + "; - } - } - return s; - } - - void InitReflectionDir() { - if( ( !dependencies.frag_viewReflection && currentProgram == ShaderProgram.Frag ) || ( !dependencies.vert_viewReflection && currentProgram == ShaderProgram.Vert ) ) - return; - App( "float3 viewReflectDirection = reflect( -" + VarViewDir() + ", " + VarNormalDir() + " );" ); - } - - void InitSceneColorAndDepth() { - - if( dependencies.frag_sceneDepth ) { - App( "float sceneZ = max(0,LinearEyeDepth (UNITY_SAMPLE_DEPTH(tex2Dproj(_CameraDepthTexture, UNITY_PROJ_COORD(i.projPos)))) - _ProjectionParams.g);" ); - } - if( dependencies.frag_pixelDepth ) { - App( "float partZ = max(0,i.projPos.z - _ProjectionParams.g);" ); - } - - - if( dependencies.scene_uvs ) { - string sUv = "float2 sceneUVs = "; - - - if( ps.HasRefraction() ) { - sUv += "(i.projPos.xy / i.projPos.w) + " + ps.n_distortion + ";"; - } else { - sUv += "(i.projPos.xy / i.projPos.w);"; - } - - App( sUv ); - } - - - if( dependencies.grabPass ) { - - string s = "float4 sceneColor = "; - s += "tex2D(" + ps.catBlending.GetGrabTextureName() + ", sceneUVs);"; - App( s ); - } - - - - - - } - - - string VarNormalDir() { - if( currentProgram == ShaderProgram.Vert ) - return "o.normalDir"; - return "normalDirection"; - } - - string VarViewDir() { // TODO: Define view variable, dependency etc - if( currentProgram == ShaderProgram.Vert ) - return "normalize(_WorldSpaceCameraPos.xyz - i.posWorld.xyz)"; - return "viewDirection"; - } - - - - - - - - public string GetUvCompCountString( int channel ) { - bool useFloat4 = false; - if( channel == 0 && dependencies.uv0_float4 ) { - useFloat4 = true; - } else if( channel == 1 && dependencies.uv1_float4 ) { - useFloat4 = true; - } else if( channel == 2 && dependencies.uv2_float4 ) { - useFloat4 = true; - } else if( channel == 3 && dependencies.uv3_float4 ) { - useFloat4 = true; - } - return useFloat4 ? "float4" : "float2"; - } - - - - - - - void VertexInputStruct() { - App( "struct VertexInput {" ); - scope++; - App( "float4 vertex : POSITION;" ); - CommonVertexData(); - scope--; - App( "};" ); - } - - void CommonVertexData() { - if( dependencies.vert_in_normals ) - App( "float3 normal : NORMAL;" ); - if( dependencies.vert_in_tangents ) - App( "float4 tangent : TANGENT;" ); - if( dependencies.uv0 ) - App( GetUvCompCountString( 0 ) + " texcoord0 : TEXCOORD0;" ); - if( dependencies.uv1 ) - App( GetUvCompCountString( 1 ) + " texcoord1 : TEXCOORD1;" ); - if( dependencies.uv2 ) - App( GetUvCompCountString( 2 ) + " texcoord2 : TEXCOORD2;" ); - if( dependencies.uv3 ) - App( GetUvCompCountString( 3 ) + " texcoord3 : TEXCOORD3;" ); - if( dependencies.vert_in_vertexColor ) - App( "float4 vertexColor : COLOR;" ); - } - - void TransferCommonData() { - App( "o.vertex = v.vertex;" ); - if( dependencies.vert_in_normals ) - App( "o.normal = v.normal;" ); - if( dependencies.vert_in_tangents ) - App( "o.tangent = v.tangent;" ); - if( inTess ) { - if( dependencies.uv0 ) - App( "o.texcoord0 = v.texcoord0;" ); - if( dependencies.uv1 ) - App( "o.texcoord1 = v.texcoord1;" ); - if( dependencies.uv2 ) - App( "o.texcoord2 = v.texcoord2;" ); - if( dependencies.uv3 ) - App( "o.texcoord3 = v.texcoord3;" ); - } else { - if( dependencies.uv0 ) - App( "o.uv0 = v.texcoord0;" ); - if( dependencies.uv1 ) - App( "o.uv1 = v.texcoord1;" ); - if( dependencies.uv2 ) - App( "o.uv2 = v.texcoord2;" ); - if( dependencies.uv3 ) - App( "o.uv3 = v.texcoord3;" ); - } - - if( dependencies.vert_in_vertexColor ) - App( "o.vertexColor = v.vertexColor;" ); - } - - - public string GetVertOutTexcoord( bool numberOnly = false ) { - if( numberOnly ) - return dependencies.GetVertOutTexcoord(); - return ( " : TEXCOORD" + dependencies.GetVertOutTexcoord() + ";" ); - } - - void VertexOutputStruct() { - App( "struct VertexOutput {" ); - scope++; - { - if( currentPass == PassType.ShadCast ) { - App( "V2F_SHADOW_CASTER;" ); - dependencies.IncrementTexCoord( 1 ); - } else { - App( "float4 pos : SV_POSITION;" ); // Already included in shadow passes - } - - if( ps.catLighting.IsVertexLit() ) - App( "float3 vtxLight : COLOR;" ); - //if( DoPassSphericalHarmonics() && !ps.highQualityLightProbes ) - // App ("float3 shLight" + GetVertOutTexcoord() ); - if( dependencies.uv0_frag ) - App( GetUvCompCountString( 0 ) + " uv0" + GetVertOutTexcoord() ); - if( dependencies.uv1_frag ) - App( GetUvCompCountString( 1 ) + " uv1" + GetVertOutTexcoord() ); - if( dependencies.uv2_frag ) - App( GetUvCompCountString( 2 ) + " uv2" + GetVertOutTexcoord() ); - if( dependencies.uv3_frag ) - App( GetUvCompCountString( 3 ) + " uv3" + GetVertOutTexcoord() ); - if( dependencies.vert_out_worldPos ) - App( "float4 posWorld" + GetVertOutTexcoord() ); - if( dependencies.vert_out_normals ) - App( "float3 normalDir" + GetVertOutTexcoord() ); - if( dependencies.vert_out_tangents ) - App( "float3 tangentDir" + GetVertOutTexcoord() ); - if( dependencies.vert_out_bitangents ) - App( "float3 bitangentDir" + GetVertOutTexcoord() ); - if( dependencies.vert_out_screenPos ) - App( "float4 screenPos" + GetVertOutTexcoord() ); - if( dependencies.vert_in_vertexColor ) - App( "float4 vertexColor : COLOR;" ); - if( dependencies.frag_projPos ) - App( "float4 projPos" + GetVertOutTexcoord() ); - if( ShouldUseLightMacros() ) - App( "LIGHTING_COORDS(" + GetVertOutTexcoord( true ) + "," + GetVertOutTexcoord( true ) + ")" ); - if( UseUnity5FogInThisPass() ) - App( "UNITY_FOG_COORDS(" + GetVertOutTexcoord( true ) + ")" ); // New in Unity 5 - - bool sh = DoPassSphericalHarmonics() && !ps.catLighting.highQualityLightProbes; - bool lm = LightmapThisPass(); - - - string shlmTexCoord = GetVertOutTexcoord(); - - - // Unity 5 LMs - if( sh || lm ) { - App( "#if defined(LIGHTMAP_ON) || defined(UNITY_SHOULD_SAMPLE_SH)" ); - scope++; - App( "float4 ambientOrLightmapUV" + shlmTexCoord ); - scope--; - App( "#endif" ); - } - - - - - - - - - - } - scope--; - App( "};" ); - } - - - - public bool ShouldUseLightMacros() { - return ( ( currentPass == PassType.FwdAdd || ( currentPass == PassType.FwdBase && !ps.catBlending.ignoreProjector ) ) && ( dependencies.UsesLightNodes() || ps.catLighting.IsLit() ) ); - } - - public bool IsShadowPass() { - return currentPass == PassType.ShadCast; - } - - public bool IsShadowOrOutlineOrMetaPass() { - return currentPass == PassType.Outline || currentPass == PassType.Meta || IsShadowPass(); - } - - public bool IncludeLightingCginc() { - return LightmappedAndLit() || IsShadowPass() || ( cNodes.Where( x => x is SFN_LightAttenuation ).Count() > 0 ); - } - - - void Vertex() { - currentProgram = ShaderProgram.Vert; - App( "VertexOutput vert (VertexInput v) {" ); - scope++; - App( "VertexOutput o = (VertexOutput)0;" ); - - - - if( dependencies.uv0_frag ) - App( "o.uv0 = v.texcoord0;" ); - if( dependencies.uv1_frag ) - App( "o.uv1 = v.texcoord1;" ); - if( dependencies.uv2_frag ) - App( "o.uv2 = v.texcoord2;" ); - if( dependencies.uv3_frag ) - App( "o.uv3 = v.texcoord3;" ); - if( dependencies.vert_out_vertexColor ) - App( "o.vertexColor = v.vertexColor;" ); - - - bool lm = LightmapThisPass(); - bool sh = DoPassSphericalHarmonics() && !ps.catLighting.highQualityLightProbes; - - if( lm ){ - App("#ifdef LIGHTMAP_ON"); - scope++; - App( "o.ambientOrLightmapUV.xy = v.texcoord1.xy * unity_LightmapST.xy + unity_LightmapST.zw;" ); - App( "o.ambientOrLightmapUV.zw = 0;" ); - - scope--; - if(sh){ - App("#elif UNITY_SHOULD_SAMPLE_SH"); - scope++; - } else { - App("#endif"); - } - } - - if( sh ) { - - if( !lm ) { - App( "#if SHOULD_SAMPLE_SH" ); - scope++; - } - //App( "o.ambientOrLightmapUV.rgb = 0.01*ShadeSH9(float4(UnityObjectToWorldNormal(v.normal),1));" ); - //if( !lm ) { - scope--; - App( "#endif" ); - //} - - } - - if( lm ) { - App( "#ifdef DYNAMICLIGHTMAP_ON" ); - scope++; - App( "o.ambientOrLightmapUV.zw = v.texcoord2.xy * unity_DynamicLightmapST.xy + unity_DynamicLightmapST.zw;" ); - scope--; - App("#endif"); - } - - - - - - - if( dependencies.vert_out_normals ) - InitNormalDirVert(); - if( dependencies.vert_out_tangents ) - InitTangentDirVert(); - if( dependencies.vert_out_bitangents ) - InitBitangentDirVert(); - - InitObjectPos(); - - if( editor.nodeView.treeStatus.viewDirectionInVertOffset ) { - InitViewDirVert(); - } - - InitObjectScale(); - - if( editor.mainNode.vertexOffset.IsConnectedAndEnabled() ) { - - if( ps.catGeometry.vertexOffsetMode == SFPSC_Geometry.VertexOffsetMode.Relative ) - App( "v.vertex.xyz += " + ps.n_vertexOffset + ";" ); - else - App( "v.vertex.xyz = " + ps.n_vertexOffset + ";" ); - } - - if( dependencies.vert_out_worldPos ) - App( "o.posWorld = mul(unity_ObjectToWorld, v.vertex);" ); - - - - - InitTangentTransformFrag(); - - if( !editor.nodeView.treeStatus.viewDirectionInVertOffset ) { - InitViewDirVert(); - } - - InitReflectionDir(); - if( dependencies.frag_lightDirection ) { - InitLightDir(); - } - if(dependencies.frag_lightColor) - InitLightColor(); - InitHalfVector(); - - string positioningPrefix; - if( ps.catExperimental.forceSkipModelProjection ){ - positioningPrefix = "mul(UNITY_MATRIX_VP, "; // Local space. Broken for shadows due to TRANSFER_SHADOW_CASTER assuming model projections - } else { - positioningPrefix = "UnityObjectToClipPos( "; // World space - } - - string positioningSuffix = " );"; - if( ps.catGeometry.vertexPositioning == SFPSC_Geometry.VertexPositioning.ClipSpace ) { - positioningPrefix = ""; - positioningSuffix = ";"; - } - if( ps.catGeometry.vertexPositioning == SFPSC_Geometry.VertexPositioning.Billboard ) { - - - App("float4x4 bbmv = UNITY_MATRIX_MV;"); - App( "bbmv._m00 = -1.0/length(unity_WorldToObject[0].xyz);" ); - App( "bbmv._m10 = 0.0f;" ); - App( "bbmv._m20 = 0.0f;" ); - App( "bbmv._m01 = 0.0f;" ); - App( "bbmv._m11 = -1.0/length(unity_WorldToObject[1].xyz);" ); - App( "bbmv._m21 = 0.0f;" ); - App( "bbmv._m02 = 0.0f;" ); - App( "bbmv._m12 = 0.0f;" ); - App( "bbmv._m22 = -1.0/length(unity_WorldToObject[2].xyz);" ); - - - positioningPrefix = "mul( UNITY_MATRIX_P, mul( bbmv, "; - positioningSuffix = " ));"; - } - - - if( currentPass == PassType.Outline ) { - string dir = ""; - if( ps.catGeometry.outlineMode == SFPSC_Geometry.OutlineMode.VertexNormals ) { - dir = "v.normal"; - } else if( ps.catGeometry.outlineMode == SFPSC_Geometry.OutlineMode.VertexColors ) { - dir = "v.vertexColor"; - } else if( ps.catGeometry.outlineMode == SFPSC_Geometry.OutlineMode.FromOrigin ) { - dir = "normalize(v.vertex)"; - } - App( "o.pos = "+ positioningPrefix +"float4(v.vertex.xyz + "+dir+"*" + ps.n_outlineWidth + ",1)" + positioningSuffix ); - - } else if(currentPass == PassType.Meta ){ - App( "o.pos = UnityMetaVertexPosition(v.vertex, v.texcoord1.xy, v.texcoord2.xy, unity_LightmapST, unity_DynamicLightmapST );" ); - } else { - App( "o.pos = " + positioningPrefix + "v.vertex" + positioningSuffix ); - } - - if( ps.catGeometry.showPixelSnap ) { - App( "#ifdef PIXELSNAP_ON" ); - scope++; - App( "o.pos = UnityPixelSnap(o.pos);" ); - scope--; - App( "#endif" ); - } - - - // New in Unity 5 - if( UseUnity5FogInThisPass() ) { - App( "UNITY_TRANSFER_FOG(o,o.pos);" ); - } - - - if( dependencies.frag_projPos ) { - App( "o.projPos = ComputeScreenPos (o.pos);" ); - App( "COMPUTE_EYEDEPTH(o.projPos.z);" ); - } - - - if( dependencies.vert_out_screenPos ) { // TODO: Select screen pos accuracy etc - - if( ps.catGeometry.highQualityScreenCoords ) { - App( "o.screenPos = o.pos;" ); // Unpacked per-pixel - } else { - App( "o.screenPos = float4( o.pos.xy / o.pos.w, 0, 0 );" ); - App( "o.screenPos.y *= _ProjectionParams.x;" ); - } - } - - - - if( LightmapThisPass() ){ - - // TODO, I think - - } - - /* MOVE THIS: - App( "float4 unity_LightmapST;"); - App( "#ifdef DYNAMICLIGHTMAP_ON"); - scope++; - App( "float4 unity_DynamicLightmapST;"); - scope--; - App( "#endif"); -*/ - - - - - if( currentPass == PassType.ShadCast ) { - App( "TRANSFER_SHADOW_CASTER(o)" ); - } else { - if( ps.catLighting.IsVertexLit() ) - Lighting(); - else if( ShouldUseLightMacros() ) - App( "TRANSFER_VERTEX_TO_FRAGMENT(o)" ); - } - - App( "return o;" ); - - ResetDefinedState(); - End(); - } - - - void Fragment() { - currentProgram = ShaderProgram.Frag; - - if( currentPass == PassType.Meta ) { - string vface = ""; - if( dependencies.frag_facing ) { - vface = ", float facing : VFACE"; - } - App( "float4 frag(VertexOutput i" + vface + ") : SV_Target {" ); - } else if(currentPass == PassType.Deferred) { - App( "void frag(" ); - scope++; - App( "VertexOutput i," ); - App( "out half4 outDiffuse : SV_Target0," ); - App( "out half4 outSpecSmoothness : SV_Target1," ); - App( "out half4 outNormal : SV_Target2," ); - if( dependencies.frag_facing ) { - App( "out half4 outEmission : SV_Target3," ); - App( "float facing : VFACE )" ); - } else { - App( "out half4 outEmission : SV_Target3 )" ); - } - scope--; - App( "{" ); - } else { - string vface = ""; - if( dependencies.frag_facing ) { - vface = ", float facing : VFACE"; - } - App( "float4 frag(VertexOutput i" + vface + ") : COLOR {" ); - } - - scope++; - - if( dependencies.frag_facing ) { - App( "float isFrontFace = ( facing >= 0 ? 1 : 0 );" ); - App( "float faceSign = ( facing >= 0 ? 1 : -1 );" ); - } - - InitObjectPos(); - InitObjectScale(); - - if( ps.catGeometry.normalQuality == SFPSC_Geometry.NormalQuality.Normalized && dependencies.frag_normalDirection ) { - App( "i.normalDir = normalize(i.normalDir);" ); - if( dependencies.frag_facing ) { - App( "i.normalDir *= faceSign;" ); - } - } - - if( dependencies.vert_out_screenPos && ps.catGeometry.highQualityScreenCoords ) { - App( "i.screenPos = float4( i.screenPos.xy / i.screenPos.w, 0, 0 );" ); - App( "i.screenPos.y *= _ProjectionParams.x;" ); - } - - InitTangentTransformFrag(); - InitViewDirFrag(); - InitNormalDirFrag(); - InitReflectionDir(); - - InitSceneColorAndDepth(); - - CheckClip(); - - PrepareLightmapVars(); - - - if( dependencies.frag_lightDirection ) - InitLightDir(); - if(dependencies.frag_lightColor) - InitLightColor(); - InitHalfVector(); - - - - - - Lighting(); // This is ignored in shadow passes - - - if( currentPass == PassType.Meta ) { - LightmapMetaPassFrag(); - } else if( currentPass == PassType.Deferred ) { - DeferredFragReturn(); - } else if( currentPass == PassType.ShadCast ) { - App( "SHADOW_CASTER_FRAGMENT(i)" ); - } else if( currentPass == PassType.Outline ) { - App( "return fixed4(" + ps.n_outlineColor + ",0);" ); - } else { - - //if(ps.mOut.diffuse.IsConnectedEnabledAndAvailable()){ - // AppFinalOutput("lightFinal + " + "diffuse", ps.n_alpha); // This is really weird, it should already be included in the light calcs. Do more research // TODO - //}else - if( currentPass == PassType.FwdAdd ) { - if(ps.catLighting.transparencyMode == SFPSC_Lighting.TransparencyMode.Fade) - AppFinalOutput( "finalColor * " + ps.n_alpha, "0" ); - else - AppFinalOutput( "finalColor", "0" ); - } else { - - if( ps.catBlending.alphaToCoverage && currentPass == PassType.FwdBase && ps.HasAlpha() == false && ps.HasAlphaClip() ) { - AppFinalOutput( "finalColor", "(" + ps.n_alphaClip + ") * 2.0 - 1.0" ); - } else { - AppFinalOutput( "finalColor", ps.n_alpha ); - } - } - - - } - - End(); - } - - void DeferredFragReturn() { - - - // DIFFUSE - if( ps.HasDiffuse() ) { - if( ps.mOut.diffuseOcclusion.IsConnectedEnabledAndAvailable() ) { - App( "outDiffuse = half4( diffuseColor, " + ps.n_diffuseOcclusion + " );" ); - } else { - App( "outDiffuse = half4( diffuseColor, 1 );" ); - } - } else { - App( "outDiffuse = half4( 0, 0, 0, 1 );" ); - } - - // SPEC & GLOSS - if( ps.HasSpecular() ) { - if( ps.HasGloss() ) { - App( "outSpecSmoothness = half4( specularColor, gloss );" ); - } else { - App( "outSpecSmoothness = half4( specularColor, 0.5 );" ); - } - } else { - App( "outSpecSmoothness = half4(0,0,0,0);" ); - } - - // NORMALS - App( "outNormal = half4( normalDirection * 0.5 + 0.5, 1 );" ); - - // EMISSION - if( ps.HasEmissive() ) { - App( "outEmission = half4( "+ps.n_emissive+", 1 );" ); - } else { - App( "outEmission = half4(0,0,0,1);" ); - } - - - bool specAmb = LightmappedAndLit() && ps.HasSpecular() || ps.mOut.ambientSpecular.IsConnectedEnabledAndAvailable(); - bool diffAmb = LightmappedAndLit() && ps.HasDiffuse() || ps.mOut.ambientDiffuse.IsConnectedEnabledAndAvailable(); - - if( specAmb ) { - if( ps.mOut.ambientSpecular.IsConnectedEnabledAndAvailable() ) { - App( "outEmission.rgb += indirectSpecular;" ); - } else { - App( "outEmission.rgb += indirectSpecular * "+ps.n_specularOcclusion+";" ); - } - } - if( diffAmb ) { - App( "outEmission.rgb += indirectDiffuse * diffuseColor;" ); // No need for diffuse AO, since that's covered already - } - - - App( "#ifndef UNITY_HDR_ON" ); - scope++; - App( "outEmission.rgb = exp2(-outEmission.rgb);" ); - scope--; - App( "#endif" ); - - - - } - - - - void LightmapMetaPassFrag() { - - - bool hasDiffuse = ps.mOut.diffuse.IsConnectedEnabledAndAvailable(); - bool hasSpec = ps.mOut.specular.IsConnectedEnabledAndAvailable(); - bool hasGloss = ps.mOut.gloss.IsConnectedEnabledAndAvailable(); - - - App( "UnityMetaInput o;" ); - App( "UNITY_INITIALIZE_OUTPUT( UnityMetaInput, o );" ); - App( "" ); - if( ps.mOut.emissive.IsConnectedEnabledAndAvailable() ) { - App( "o.Emission = " + ps.n_emissive + ";" ); - } else { - App( "o.Emission = 0;" ); - } - App( "" ); - - - if(hasDiffuse) - App( "float3 diffColor = " + ps.n_diffuse + ";" ); - else - App( "float3 diffColor = float3(0,0,0);" ); - - // Handle metallic properly - if( MetallicPBL() ) { - App( "float specularMonochrome;" ); - App( "float3 specColor;" ); - if( hasSpec ) - App( "diffColor = DiffuseAndSpecularFromMetallic( diffColor, " + ps.n_specular + ", specColor, specularMonochrome );" ); - else - App( "diffColor = DiffuseAndSpecularFromMetallic( diffColor, 0, specColor, specularMonochrome );" ); - } else { - if( hasSpec ) { - App( "float3 specColor = " + ps.n_specular + ";" ); - if( Unity5PBL() ) { - App( "float specularMonochrome = max(max(specColor.r, specColor.g),specColor.b);" ); - App( "diffColor *= (1.0-specularMonochrome);" ); - } - } - } - - if( hasGloss ) { - - if( hasSpec ) { - if( ps.catLighting.glossRoughMode == SFPSC_Lighting.GlossRoughMode.Roughness ) { - App( "float roughness = " + ps.n_gloss + ";" ); - } else { - App( "float roughness = 1.0 - " + ps.n_gloss + ";" ); - } - } - - if( hasSpec ) - App( "o.Albedo = diffColor + specColor * roughness * roughness * 0.5;" ); - else - App( "o.Albedo = diffColor;" ); - - } else { - if( hasSpec ) - App( "o.Albedo = diffColor + specColor * 0.125; // No gloss connected. Assume it's 0.5" ); - else - App( "o.Albedo = diffColor;" ); - } - - - - - App( "" ); - //App( "o.Albedo = float3(0,1,0);" ); // Debug - //App( "o.Emission = float3(0,1,0);"); - //App( "" ); - App( "return UnityMetaFragment( o );" ); - - } - - - string GetMaxUvCompCountString() { - return ( dependencies.uv0_float4 || dependencies.uv1_float4 || dependencies.uv2_float4 || dependencies.uv3_float4 ) ? "float4" : "float2"; - } - - - - void TessellationVertexStruct() { - App( "struct TessVertex {" ); - scope++; - App( "float4 vertex : INTERNALTESSPOS;" ); - CommonVertexData(); - scope--; - App( "};" ); - } - - void TessellationPatchConstant() { - App( "struct OutputPatchConstant {" ); - scope++; - App( "float edge[3] : SV_TessFactor;" ); - App( "float inside : SV_InsideTessFactor;" ); - App( "float3 vTangent[4] : TANGENT;" ); - App( GetMaxUvCompCountString() + " vUV[4] : TEXCOORD;" ); - App( "float3 vTanUCorner[4] : TANUCORNER;" ); - App( "float3 vTanVCorner[4] : TANVCORNER;" ); - App( "float4 vCWts : TANWEIGHTS;" ); - scope--; - App( "};" ); - } - - void TessellationVertexTransfer() { - App( "TessVertex tessvert (VertexInput v) {" ); - scope++; - App( "TessVertex o;" ); - TransferCommonData(); - App( "return o;" ); - scope--; - App( "}" ); - } - - void TessellationHullConstant() { - App( "OutputPatchConstant hullconst (InputPatch v) {" ); - scope++; - App( "OutputPatchConstant o = (OutputPatchConstant)0;" ); - App( "float4 ts = Tessellation( v[0], v[1], v[2] );" ); - App( "o.edge[0] = ts.x;" ); - App( "o.edge[1] = ts.y;" ); - App( "o.edge[2] = ts.z;" ); - App( "o.inside = ts.w;" ); - App( "return o;" ); - scope--; - App( "}" ); - } - - void TessellationHull() { - App( "[domain(\"tri\")]" ); - App( "[partitioning(\"fractional_odd\")]" ); - App( "[outputtopology(\"triangle_cw\")]" ); - App( "[patchconstantfunc(\"hullconst\")]" ); - App( "[outputcontrolpoints(3)]" ); - App( "TessVertex hull (InputPatch v, uint id : SV_OutputControlPointID) {" ); - scope++; - App( "return v[id];" ); - scope--; - App( "}" ); - } - - - void TessellationDomain() { - - App( "[domain(\"tri\")]" ); - App( "VertexOutput domain (OutputPatchConstant tessFactors, const OutputPatch vi, float3 bary : SV_DomainLocation) {" ); - scope++; - App( "VertexInput v = (VertexInput)0;" ); - - TransferBarycentric( "vertex" ); - if( dependencies.vert_in_normals ) - TransferBarycentric( "normal" ); - if( dependencies.vert_in_tangents ) - TransferBarycentric( "tangent" ); - if( dependencies.uv0 ) - TransferBarycentric( "texcoord0" ); - if( dependencies.uv1 ) - TransferBarycentric( "texcoord1" ); - if( dependencies.vert_in_vertexColor ) - TransferBarycentric( "vertexColor" ); - if( dependencies.displacement ) - App( "displacement(v);" ); - App( "VertexOutput o = vert(v);" ); - App( "return o;" ); - scope--; - App( "}" ); - - } - - void TransferBarycentric( string s ) { - App( "v." + s + " = vi[0]." + s + "*bary.x + vi[1]." + s + "*bary.y + vi[2]." + s + "*bary.z;" ); - } - - - void FuncTessellation() { - - switch( ps.catGeometry.tessellationMode ) { - case SFPSC_Geometry.TessellationMode.Regular: - - App("float Tessellation(TessVertex v){");// First, we need a per-vertex evaluation of the tess factor - scope++; - App( "return " + ps.n_tessellation + ";"); - scope--; - App("}"); - - App( "float4 Tessellation(TessVertex v, TessVertex v1, TessVertex v2){" ); - scope++; - App( "float tv = Tessellation(v);" ); - App( "float tv1 = Tessellation(v1);" ); - App( "float tv2 = Tessellation(v2);" ); - App( "return float4( tv1+tv2, tv2+tv, tv+tv1, tv+tv1+tv2 ) / float4(2,2,2,3);" ); - scope--; - App( "}" ); - break; - - case SFPSC_Geometry.TessellationMode.EdgeLength: - App( "float4 Tessellation(TessVertex v, TessVertex v1, TessVertex v2){" ); - scope++; - App( "return UnityEdgeLengthBasedTess(v.vertex, v1.vertex, v2.vertex, " + ps.n_tessellation + ");" ); - scope--; - App( "}" ); - break; - } - - } - - void FuncDisplacement() { - if( !dependencies.displacement ) - return; - App( "void displacement (inout VertexInput v){" ); - scope++; - App( "v.vertex.xyz += " + ps.n_displacement + ";" ); - scope--; - App( "}" ); - } - - - - - - - void Tessellation() { - if( !dependencies.tessellation ) - return; - currentProgram = ShaderProgram.Tess; // Not really, but almost - - App( "#ifdef UNITY_CAN_COMPILE_TESSELLATION" ); - scope++; - //------------------------------------------------------------ - TessellationVertexStruct(); - TessellationPatchConstant(); - TessellationVertexTransfer(); - ResetDefinedState(); // A bit of a hack - FuncDisplacement(); - ResetDefinedState(); // A bit of a hack - FuncTessellation(); - TessellationHullConstant(); - TessellationHull(); - TessellationDomain(); - //------------------------------------------------------------ - scope--; - App( "#endif" ); - - ResetDefinedState(); - } - - - - - - - - - // Todo: threshold - void CheckClip() { - if( !ps.UseClipping() || currentPass == PassType.Meta ) - return; - if( ps.catBlending.dithering == Dithering.Off ) { - App( "clip(" + ps.n_alphaClip + " - 0.5);" ); - } else { - string ditherStr = SFPSC_Blending.strDithering[(int)ps.catBlending.dithering].ToString().Split( ' ' )[0]; - App( "clip( BinaryDither" + ditherStr + "(" + ps.n_alphaClip + " - 1.5, sceneUVs) );" ); - } - - } - - - - void Fallback() { - if( ps.catExperimental.forceNoFallback ) - return; - if( !string.IsNullOrEmpty( ps.catMeta.fallback ) ) - App( "FallBack \"" + ps.catMeta.fallback + "\"" ); - else - App( "FallBack \"Diffuse\"" ); // Needed for shadows! - } - - void WriteCustomEditor() { - App( "CustomEditor \"ShaderForgeMaterialInspector\"" ); - } - - - public void GrabPass() { - if( !dependencies.grabPass ) - return; - if(ps.catBlending.perObjectRefraction) - App( "GrabPass{ }" ); - else - App( "GrabPass{ \"" + ps.catBlending.GetGrabTextureName() + "\" }" ); - - } - - //////////////////////////////////////////////////////////////// DEFERRED - - void DeferredPass() { - currentPass = PassType.Deferred; - UpdateDependencies(); - ResetDefinedState(); - dependencies.ResetTexcoordNumbers(); - App( "Pass {" ); - scope++; - { - App( "Name \"DEFERRED\"" ); // TODO this name is a guess - PassTags(); - RenderSetup(); - BeginCG(); - { - CGvars(); - VertexInputStruct(); - VertexOutputStruct(); - Vertex(); - Tessellation(); - Fragment(); - } - EndCG(); - } - End(); - RemoveGhostNodes(); - } - - - //////////////////////////////////////////////////////////////// - - - - - void ForwardBasePass() { - currentPass = PassType.FwdBase; - UpdateDependencies(); - ResetDefinedState(); - dependencies.ResetTexcoordNumbers(); - App( "Pass {" ); - scope++; - { - App( "Name \"FORWARD\"" ); - PassTags(); - RenderSetup(); - BeginCG(); - { - CGvars(); - VertexInputStruct(); - VertexOutputStruct(); - Vertex(); - Tessellation(); - Fragment(); - } - EndCG(); - } - End(); - RemoveGhostNodes(); - } - - public void ForwardLightPass() { - - // TODO: FIX - // Only when real-time light things are connected. These are: - // Diffuse - // Specular - // Although could be any D: - - bool customLit = dependencies.UsesLightNodes(); - bool builtinLit = ps.catLighting.IsLit() && ( ps.HasDiffuse() || ps.catLighting.HasSpecular() ); - - bool needsLightPass = ( builtinLit || customLit ) && ps.catLighting.UseMultipleLights(); - - if( !needsLightPass ) - return; - - - - currentPass = PassType.FwdAdd; - UpdateDependencies(); - ResetDefinedState(); - dependencies.ResetTexcoordNumbers(); - App( "Pass {" ); - scope++; - { - App( "Name \"FORWARD_DELTA\"" ); - PassTags(); - RenderSetup(); - BeginCG(); - { - CGvars(); - VertexInputStruct(); - VertexOutputStruct(); - Vertex(); - Tessellation(); - Fragment(); - } - EndCG(); - } - End(); - RemoveGhostNodes(); - } - - - - // Only needed when using alpha clip and/or vertex offset (May be needed with Tessellation as well) - public void ShadowCasterPass() { - bool shouldUse = ps.UseClipping() || mOut.vertexOffset.IsConnectedAndEnabled() || mOut.displacement.IsConnectedAndEnabled() || ps.catGeometry.cullMode != SFPSC_Geometry.CullMode.BackfaceCulling; - if( !shouldUse || ps.catExperimental.forceNoShadowPass ) - return; - currentPass = PassType.ShadCast; - UpdateDependencies(); - ResetDefinedState(); - dependencies.ResetTexcoordNumbers(); - - App( "Pass {" ); - scope++; - { - App( "Name \"ShadowCaster\"" ); - PassTags(); - RenderSetup(); - BeginCG(); - { - CGvars(); - VertexInputStruct(); - VertexOutputStruct(); - Vertex(); - Tessellation(); - Fragment(); - } - EndCG(); - } - End(); - RemoveGhostNodes(); - } - - - public void OutlinePass() { - if( !mOut.outlineWidth.IsConnectedAndEnabled() ) - return; - currentPass = PassType.Outline; - UpdateDependencies(); - ResetDefinedState(); - dependencies.ResetTexcoordNumbers(); - App( "Pass {" ); - scope++; - { - App( "Name \"Outline\"" ); - PassTags(); - RenderSetup(); - BeginCG(); - { - CGvars(); - VertexInputStruct(); - VertexOutputStruct(); - Vertex(); - Tessellation(); - Fragment(); - } - EndCG(); - } - End(); - RemoveGhostNodes(); - } - - public void MetaPass() { - if( ps.catLighting.includeMetaPass == false ) - return; - if( !ps.catLighting.bakedLight || ( !mOut.diffuse.IsConnectedEnabledAndAvailable() && !mOut.emissive.IsConnectedAndEnabled() ) ) - return; - currentPass = PassType.Meta; - UpdateDependencies(); - ResetDefinedState(); - dependencies.ResetTexcoordNumbers(); - App( "Pass {" ); - scope++; - { - App( "Name \"Meta\"" ); - PassTags(); - RenderSetup(); - BeginCG(); - { - CGvars(); - VertexInputStruct(); - VertexOutputStruct(); - Vertex(); - Tessellation(); - Fragment(); - } - EndCG(); - } - End(); - RemoveGhostNodes(); - } - - - - - - public void ResetDefinedState() { - for( int i = 0; i < cNodes.Count; i++ ) { - cNodes[i].varDefined = false; - cNodes[i].varPreDefined = false; - } - } - - - - public void Evaluate() { - - if( SF_Debug.evalFlow ) - Debug.Log( "SHADER EVALUATING" ); - - editor.ps.fChecker.UpdateAvailability(); - if( !editor.nodeView.treeStatus.CheckCanCompile() ) { - return; - } - ps.UpdateAutoSettings(); - currentPass = PassType.FwdBase; - PrepareEvaluation(); - UpdateDependencies(); - shaderString = ""; - scope = 0; - - //EditorUtility.UnloadUnusedAssets(); - GC.Collect(); - - - BeginShader(); - { - PropertiesShaderLab(); - BeginSubShader(); - { - SubShaderTags(); - if( ps.catMeta.LOD > 0 ) - App( "LOD " + ps.catMeta.LOD ); - - GrabPass(); - OutlinePass(); - if( ps.catLighting.renderPath == SFPSC_Lighting.RenderPath.Deferred ) { - DeferredPass(); - } - ForwardBasePass(); - ForwardLightPass(); - ShadowCasterPass(); - MetaPass(); - - } - End(); - Fallback(); - WriteCustomEditor(); - } - End(); - - SaveShaderAsset(); - ApplyPropertiesToMaterial(); - editor.ShaderOutdated = UpToDateState.UpToDate; - - } - - - //string GetEditorVersionOfShader() { - //return shaderString.Replace( "_Time", "_EditorTime" ); - // shaderString.Replace( "_SinTime", "_SinTimeEditor" ); - // shaderString.Replace( "_CosTime", "_CosTimeEditor" ); - // shaderString.Replace( "_SinTime", "_SinTimeEditor" ); - //return shaderString; - //} - - - - - public void SaveShaderAsset() { - - //Debug.Log("SaveShaderAsset()"); - string fileContent = editor.nodeView.GetNodeDataSerialized() + "\n\n" + shaderString; - - - // Version control unlocking - Asset shaderAsset = UnityEditor.VersionControl.Provider.GetAssetByPath( editor.GetShaderFilePath() ); - if( shaderAsset.locked || shaderAsset.readOnly ) { - UnityEditor.VersionControl.Provider.Lock( shaderAsset, false ); - UnityEditor.VersionControl.Provider.Checkout( shaderAsset, CheckoutMode.Both ); - } - - string path = editor.GetShaderFilePath(); - StreamWriter sw = new StreamWriter( path ); - sw.Write( fileContent ); - sw.Flush(); - sw.Close(); - - // Shader written, set default textures in import settings - List texNames = new List(); - List textures = new List(); - - // Collect all texture names and references - for( int i = 0; i < editor.nodes.Count; i++ ) { - if( editor.nodes[i] is SFN_Tex2d ) { - SFN_Tex2d t2d = editor.nodes[i] as SFN_Tex2d; - if( !t2d.TexAssetConnected() && t2d.textureAsset != null) { - texNames.Add( t2d.property.nameInternal ); - textures.Add( t2d.textureAsset ); - } - } else if( editor.nodes[i] is SFN_Tex2dAsset ) { - SFN_Tex2dAsset t2dAsset = editor.nodes[i] as SFN_Tex2dAsset; - if( t2dAsset.textureAsset != null ) { - texNames.Add( t2dAsset.property.nameInternal ); - textures.Add( t2dAsset.textureAsset ); - } - } - } - - // Apply default textures to the shader importer - ShaderImporter sImporter = ShaderImporter.GetAtPath( path ) as ShaderImporter; - sImporter.SetDefaultTextures( texNames.ToArray(), textures.ToArray() ); - - - try { - AssetDatabase.Refresh( ImportAssetOptions.DontDownloadFromCacheServer ); - } catch( Exception e ) { - e.ToString(); - } - - editor.OnShaderEvaluated(); - - } - - - - - - public void ApplyPropertiesToMaterial() { - for( int i = 0; i < cNodes.Count; i++ ) { - if( !cNodes[i].IsProperty() ) - continue; - ApplyProperty( cNodes[i] ); - } - } - - public void ApplyProperty( SF_Node node ) { - - if( !node.IsProperty() ) - return; - - Material m = SF_Editor.instance.preview.InternalMaterial; - switch( node.GetType().ToString() ) { - case ( "ShaderForge.SFN_Tex2d" ): - SFN_Tex2d texNode = (SFN_Tex2d)node; - m.SetTexture( texNode.property.GetVariable(), texNode.TextureAsset ); - break; - case ( "ShaderForge.SFN_Tex2dAsset" ): - SFN_Tex2dAsset texAssetNode = (SFN_Tex2dAsset)node; - m.SetTexture( texAssetNode.property.GetVariable(), texAssetNode.textureAsset ); - break; - case ( "ShaderForge.SFN_Cubemap" ): - SFN_Cubemap cubeNode = (SFN_Cubemap)node; - m.SetTexture( cubeNode.property.GetVariable(), cubeNode.cubemapAsset ); - break; - case ( "ShaderForge.SFN_Slider" ): - SFN_Slider sliderNode = (SFN_Slider)node; - m.SetFloat( sliderNode.property.GetVariable(), sliderNode.current ); - break; - case ( "ShaderForge.SFN_Color" ): - SFN_Color colorNode = (SFN_Color)node; - m.SetColor( colorNode.property.GetVariable(), colorNode.GetColor() ); - break; - case ( "ShaderForge.SFN_ValueProperty" ): - SFN_ValueProperty valueNode = (SFN_ValueProperty)node; - m.SetFloat( valueNode.property.GetVariable(), valueNode.texture.dataUniform[0] ); - break; - case ( "ShaderForge.SFN_ToggleProperty" ): - SFN_ToggleProperty toggleNode = (SFN_ToggleProperty)node; - m.SetFloat( toggleNode.property.GetVariable(), toggleNode.texture.dataUniform[0] ); - break; - case ( "ShaderForge.SFN_SwitchProperty" ): - SFN_SwitchProperty switchNode = (SFN_SwitchProperty)node; - m.SetFloat( switchNode.property.GetVariable(), switchNode.on ? 1f : 0f ); - break; - case ( "ShaderForge.SFN_Vector4Property" ): - SFN_Vector4Property vector4Node = (SFN_Vector4Property)node; - m.SetVector( vector4Node.property.GetVariable(), vector4Node.texture.dataUniform ); - break; - case ( "ShaderForge.SFN_StaticBranch" ): - SFN_StaticBranch sbNode = (SFN_StaticBranch)node; - - if( sbNode.on ) { - //Debug.Log("Enabling keyword"); - //m.EnableKeyword(sbNode.property.nameInternal); - } else { - //Debug.Log("Disabling keyword"); - //m.DisableKeyword(sbNode.property.nameInternal); - } - - break; - } - } - - - - - void End() { - scope--; - App( "}" ); - } - public void AppIfNonEmpty( string s ) { - if( !string.IsNullOrEmpty( s ) ) - App( s ); - } - public void AppFormat( string s, params object[] args ) { - App( string.Format( s, args ) ); - } - public void App( string s ) { - if( s.Contains( "\n" ) ) { - string[] split = s.Split( '\n' ); - for( int i = 0; i < split.Length; i++ ) { - App( split[i] ); - } - } else { - shaderString += GetScopeTabs() + s + "\n"; - } - } - public void AppDebug( string s ) { - //if(DEBUG) - - string scopeSlashes = GetScopeTabs().Replace( ' ', '/' ); - - if( scopeSlashes.Length < 2 ) - scopeSlashes = "//"; - - - shaderString += scopeSlashes.Substring( Mathf.Min( s.Length + 2, scopeSlashes.Length - 2 ) ) + " " + s + ":\n"; - } - string GetScopeTabs() { - string s = ""; - for( int i = 0; i < scope; i++ ) { - s += " "; - } - return s; - } - void NewLine() { - shaderString += "\n"; - } - - // shaderEvaluator.previewBackgroundColor - - - } -} diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Evaluator/SF_Evaluator.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/_Evaluator/SF_Evaluator.cs.meta deleted file mode 100755 index 0bf50688..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/_Evaluator/SF_Evaluator.cs.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: 8d4397298714b429da31207ae8e1b476 -MonoImporter: - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Evaluator/_NewSystem.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/_Evaluator/_NewSystem.meta deleted file mode 100644 index ff3fdb17..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/_Evaluator/_NewSystem.meta +++ /dev/null @@ -1,5 +0,0 @@ -fileFormatVersion: 2 -guid: 2eb134ad201984c70b54a6af60bf785a -folderAsset: yes -DefaultImporter: - userData: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Evaluator/_NewSystem/DependencyTree.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/_Evaluator/_NewSystem/DependencyTree.cs deleted file mode 100644 index 570eb04d..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/_Evaluator/_NewSystem/DependencyTree.cs +++ /dev/null @@ -1,102 +0,0 @@ -using UnityEngine; -using System.Collections; -using System.Collections.Generic; -using System.Linq; - -namespace ShaderForge{ - - - public class DependencyTree where T : IDependable{ - - public List> tree; - - public DependencyTree(){ - tree = new List>(); - } - - - - public void Add(params IDependable[] deps){ - - } - - public void Add(IDependable dep){ - AddUnique(dep); - foreach(IDependable d in dep.Dependencies){ - AddUnique(d); - } - } - - private void AddUnique(IDependable dep){ - if(!tree.Contains(dep)){ - tree.Add(dep); - } - } - - /* - public void Add(T obj){ - tree.Add(obj); - } - - public void Add(List> objs){ - tree.AddRange(objs); - } - */ - public void Sort(){ - AssignDepthValues(); - SortByDepth(); - } - - private void MoveUpNode(IDependable dp, bool initial){ - if(!initial) - dp.Depth++; - foreach(IDependable d in dp.Dependencies){ - if(d.Depth <= dp.Depth){ - MoveUpNode(d, initial:false); - } - } - } - - private void AssignDepthValues(){ - ResetNodeDepths(); - foreach(IDependable dp in tree) - MoveUpNode(dp, initial:true); - } - - private void SortByDepth(){ - tree.OrderBy(o=>o.Depth).ToList(); - } - - private void ResetNodeDepths(){ - foreach(IDependable dp in tree) - dp.Depth = 0; - } - - - public List> GetDependenciesByGroup(out int maxWidth){ - List> groups = new List>(); - maxWidth = 0; - - int groupCount = tree.GroupBy(p => p.Depth).Select(g => g.First()).Count(); - - for(int i=0;i(T)x).Where(x=>x.Depth == i).ToList()); - maxWidth = Mathf.Max(maxWidth, groups[i].Count); - } - - return groups; - } - - - - - } - - - public interface IDependable{ - int Depth { get; set; } - List Dependencies { get; set;} - void AddDependency(T dp); - } - -} \ No newline at end of file diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Evaluator/_NewSystem/DependencyTree.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/_Evaluator/_NewSystem/DependencyTree.cs.meta deleted file mode 100644 index 5db04ab8..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/_Evaluator/_NewSystem/DependencyTree.cs.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: 80f683523dd7f4167b990c2b34498ae8 -MonoImporter: - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes.meta deleted file mode 100755 index e7c74516..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes.meta +++ /dev/null @@ -1,5 +0,0 @@ -fileFormatVersion: 2 -guid: 08f7249e4b23143d4983841458970d80 -folderAsset: yes -DefaultImporter: - userData: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Abs.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Abs.cs deleted file mode 100755 index f5721864..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Abs.cs +++ /dev/null @@ -1,26 +0,0 @@ -using UnityEngine; - -namespace ShaderForge { - - [System.Serializable] - public class SFN_Abs : SF_Node_Arithmetic { - - public SFN_Abs() { - } - - public override void Initialize() { - base.Initialize( "Abs" ); - base.PrepareArithmetic( 1 ); - base.shaderGenMode = ShaderGenerationMode.SimpleFunction; - } - - public override string Evaluate( OutChannel channel = OutChannel.All ) { - return "abs(" + GetConnectorByStringID( "IN" ).TryEvaluate() + ")"; - } - - public override float EvalCPU( int c ) { - return Mathf.Abs( GetInputData( "IN", c ) ); - } - - } -} \ No newline at end of file diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Abs.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Abs.cs.meta deleted file mode 100755 index 6ec553bf..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Abs.cs.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: 3980422c66600a74794dc56059bbec9c -MonoImporter: - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Add.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Add.cs deleted file mode 100755 index 4d6d0e62..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Add.cs +++ /dev/null @@ -1,72 +0,0 @@ -using UnityEngine; - -namespace ShaderForge { - - [System.Serializable] - public class SFN_Add : SF_Node_Arithmetic { - - public SFN_Add() { - - } - - public override void Initialize() { - base.Initialize( "Add" ); - //base.PrepareArithmetic(5); - base.showColor = true; - base.shaderGenMode = ShaderGenerationMode.ModularInput; - UseLowerReadonlyValues( true ); - - connectors = new SF_NodeConnector[]{ - SF_NodeConnector.Create(this,"OUT","",ConType.cOutput,ValueType.VTvPending,false), - SF_NodeConnector.Create(this,"A","A",ConType.cInput,ValueType.VTvPending,false).SetRequired(true), - SF_NodeConnector.Create(this,"B","B",ConType.cInput,ValueType.VTvPending,false).SetRequired(true), - SF_NodeConnector.Create(this,"C","C",ConType.cInput,ValueType.VTvPending,false).SetRequired(false), - SF_NodeConnector.Create(this,"D","D",ConType.cInput,ValueType.VTvPending,false).SetRequired(false), - SF_NodeConnector.Create(this,"E","E",ConType.cInput,ValueType.VTvPending,false).SetRequired(false) - }; - - - SetExtensionConnectorChain("B", "C", "D", "E"); - - base.conGroup = ScriptableObject.CreateInstance().Initialize( connectors[0], connectors[1], connectors[2], connectors[3], connectors[4], connectors[5] ); - - } - - public override void GetModularShaderFixes( out string prefix, out string infix, out string suffix ) { - prefix = ""; - infix = " + "; - suffix = ""; - } - - public override string Evaluate( OutChannel channel = OutChannel.All ) { - - - string evalStr = ""; - - evalStr += GetConnectorByStringID( "A" ).TryEvaluate() + "+" + GetConnectorByStringID( "B" ).TryEvaluate(); - - ChainAppendIfConnected(ref evalStr, "+", "C", "D", "E"); - - return "(" + evalStr + ")"; - } - - - public override float EvalCPU( int c ) { - - float result = GetInputData( "A", c ) + GetInputData( "B", c ); - - if(GetInputIsConnected("C")){ - result += GetInputData( "C", c ); - } - if(GetInputIsConnected("D")){ - result += GetInputData( "D", c ); - } - if(GetInputIsConnected("E")){ - result += GetInputData( "E", c ); - } - - return result; - } - - } -} \ No newline at end of file diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Add.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Add.cs.meta deleted file mode 100755 index d482a3e8..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Add.cs.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: eee5e454a0aa7ce44b9ccc1adb7349d9 -MonoImporter: - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_AmbientLight.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_AmbientLight.cs deleted file mode 100755 index 1c8f2f18..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_AmbientLight.cs +++ /dev/null @@ -1,63 +0,0 @@ -using UnityEngine; -using UnityEditor; -using System.Collections; - -namespace ShaderForge { - - [System.Serializable] - public class SFN_AmbientLight : SF_Node { - - - public SFN_AmbientLight() { - - } - - public override void Initialize() { - base.Initialize( "Ambient Light" ); - base.showColor = true; - base.UseLowerPropertyBox( false ); - base.texture.CompCount = 4; - base.texture.uniform = true; - base.neverDefineVariable = true; - connectors = new SF_NodeConnector[]{ - SF_NodeConnector.Create(this, "RGB", "RGB",ConType.cOutput,ValueType.VTv3,false).Outputting(OutChannel.RGB), - SF_NodeConnector.Create(this, "R", "R",ConType.cOutput,ValueType.VTv1,false).Outputting(OutChannel.R).WithColor(Color.red), - SF_NodeConnector.Create(this, "G", "G",ConType.cOutput,ValueType.VTv1,false).Outputting(OutChannel.G).WithColor(Color.green), - SF_NodeConnector.Create(this, "B", "B",ConType.cOutput,ValueType.VTv1,false).Outputting(OutChannel.B).WithColor(Color.blue), - SF_NodeConnector.Create(this, "A", "A",ConType.cOutput,ValueType.VTv1,false).Outputting(OutChannel.A) - }; - } - - public override bool IsUniformOutput() { - return true; - } - - public Color GetIconTint() { - Color c = texture.dataUniform; - c.a = 1.0f; - for( int i = 0; i < 3; i++ ) { - c[i] = 1f - Mathf.Pow( 1f - c[i], 2 ); - c[i] = Mathf.Lerp( 0.5f, 1f, c[i] ); - } - return c; - } - - public override void Update() { - if( ((Color)texture.dataUniform) != RenderSettings.ambientLight ) { - texture.dataUniform = RenderSettings.ambientLight; - texture.iconColor = GetIconTint(); - OnUpdateNode(NodeUpdateType.Soft, true); - } - - } - - public override void OnPreGetPreviewData() { - texture.dataUniform = RenderSettings.ambientLight; - } - - public override string Evaluate( OutChannel channel = OutChannel.All ) { - return "UNITY_LIGHTMODEL_AMBIENT"; - } - - } -} \ No newline at end of file diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_AmbientLight.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_AmbientLight.cs.meta deleted file mode 100755 index 372ab98c..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_AmbientLight.cs.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: c293c5aea07b3ff40912d575d5ac542d -MonoImporter: - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Append.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Append.cs deleted file mode 100755 index a2b37b37..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Append.cs +++ /dev/null @@ -1,190 +0,0 @@ -using UnityEngine; -using UnityEditor; -using System.Collections; -using System; - -namespace ShaderForge { - - [System.Serializable] - public class SFN_Append : SF_Node { - - public override void Initialize() { - base.Initialize( "Append" ); - base.showColor = true; - UseLowerReadonlyValues( true ); - SFN_Append.channelColors[3] = SF_NodeConnector.colorEnabledDefault; - - connectors = new SF_NodeConnector[]{ - SF_NodeConnector.Create(this,"OUT","",ConType.cOutput,ValueType.VTvPending,false), - SF_NodeConnector.Create(this,"A","",ConType.cInput,ValueType.VTvPending,false).SetRequired(true), - SF_NodeConnector.Create(this,"B","",ConType.cInput,ValueType.VTvPending,false).SetRequired(true), - SF_NodeConnector.Create(this,"C","",ConType.cInput,ValueType.VTvPending,false).SetRequired(false), - SF_NodeConnector.Create(this,"D","",ConType.cInput,ValueType.VTvPending,false).SetRequired(false) - }; - - base.conGroup = ScriptableObject.CreateInstance(); - (base.conGroup as SFNCG_Append).Initialize( connectors[0], connectors[1], connectors[2], connectors[3], connectors[4] ); - - - SetExtensionConnectorChain( "B", "C", "D" ); - } - - public override int GetEvaluatedComponentCount() { - return ( (SFNCG_Append)conGroup ).GetOutputComponentCount(); - } - - public override bool IsUniformOutput() { - - bool a = GetInputIsConnected( "A" ); - bool b = GetInputIsConnected( "B" ); - bool c = GetInputIsConnected( "C" ); - bool d = GetInputIsConnected( "D" ); - - if( a && b && c && d ) - return ( GetInputData( "A" ).uniform && GetInputData( "B" ).uniform && GetInputData( "C" ).uniform && GetInputData( "D" ).uniform ); - else if( a && b && c ) - return ( GetInputData( "A" ).uniform && GetInputData( "B" ).uniform && GetInputData( "C" ).uniform); - - return ( GetInputData( "A" ).uniform && GetInputData( "B" ).uniform ); - } - - - // New system - public override void RefreshValue() { - UpdateInputLabels(); - RefreshValue( 1, 2 ); - } - - public override bool ExhaustedOptionalInputs() { - return GetEvaluatedComponentCount() >= 4; - } - - - - - - public override string Evaluate( OutChannel channel = OutChannel.All ) { - - string varName = "float"; - int compCount = GetEvaluatedComponentCount(); - if( compCount > 1 ) - varName += compCount; - - bool a = GetInputIsConnected( "A" ); - bool b = GetInputIsConnected( "B" ); - bool c = GetInputIsConnected( "C" ); - bool d = GetInputIsConnected( "D" ); - - string line = varName + "("; - - if( a && b && c && d ) - line += GetConnectorByStringID( "A" ).TryEvaluate() + "," + GetConnectorByStringID( "B" ).TryEvaluate() + "," + GetConnectorByStringID( "C" ).TryEvaluate() + "," + GetConnectorByStringID( "D" ).TryEvaluate(); - else if( a && b && c ) - line += GetConnectorByStringID( "A" ).TryEvaluate() + "," + GetConnectorByStringID( "B" ).TryEvaluate() + "," + GetConnectorByStringID( "C" ).TryEvaluate(); - else - line += GetConnectorByStringID( "A" ).TryEvaluate() + "," + GetConnectorByStringID( "B" ).TryEvaluate(); - - return line + ")"; - } - - public int GetAmountOfConnectedInputs() { - bool a = GetInputIsConnected( "A" ); - bool b = GetInputIsConnected( "B" ); - bool c = GetInputIsConnected( "C" ); - bool d = GetInputIsConnected( "D" ); - - if( a && b && c && d ) - return 4; - else if( a && b && c && !d ) - return 3; - else if( a && b && !c && !d ) - return 2; - else if( a && !b && !c && !d ) - return 1; - else if( !a && !b && !c && !d ) - return 0; - - return 0; - } - - public override float EvalCPU( int c ) { - - int conCount = GetAmountOfConnectedInputs(); - - int cSub = 0; - for( int i = 0; i < conCount; i++ ) { - int cc = connectors[i+1].GetCompCount(); - if(c < cc + cSub){ - return GetInputData( connectors[i+1].strID, c - cSub ); - } else { - cSub += cc; - continue; - } - } - return 0; - } - - - static Color[] channelColors = new Color[4] { Color.red, Color.green, Color.blue, Color.white }; - - public override void PrepareRendering( Material mat ) { - - Vector4[] masks = new Vector4[] { - Vector4.zero, - Vector4.zero, - Vector4.zero, - Vector4.zero - }; - Vector4 offsets = Vector4.zero; - int head = 0; - for( int i = 0; i < GetAmountOfConnectedInputs(); i++ ) { - SF_NodeConnector con = connectors[i + 1]; - if( GetInputIsConnected( con.strID ) ) { - int cc = con.GetCompCount(); - for( int j = head; j < cc + head; j++ ) { - masks[i][j] = 1f; - } - offsets[i] = head; - head += cc; - } - } - - //for( int i = 0; i < 4; i++ ) { - // Debug.Log("Masks: " + masks[i]); - //} - - mat.SetVector( "_A_mask", masks[0] ); - mat.SetVector( "_B_mask", masks[1] ); - mat.SetVector( "_C_mask", masks[2] ); - mat.SetVector( "_D_mask", masks[3] ); - mat.SetVector( "_offsets", offsets ); - - } - - public void UpdateInputLabels() { - - string rgba = "RGBA"; - - int conCount = 4; - int cSub = 0; - for( int i = 0; i < conCount; i++ ) { - SF_NodeConnector con = connectors[i + 1]; - if( GetInputIsConnected( con.strID ) ) { - - int cc = con.GetCompCount(); - con.label = rgba.Substring( cSub, cc ); - if( cc == 1 ) - con.color = channelColors[cSub]; - cSub += cc; - - } else { - con.label = ""; - con.color = SF_NodeConnector.colorEnabledDefault; - cSub++; - } - } - } - - - } -} \ No newline at end of file diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Append.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Append.cs.meta deleted file mode 100755 index 14a1a0b2..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Append.cs.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: 162e89da5a50d9e4d8a4e894cbcdeb15 -MonoImporter: - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ArcCos.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ArcCos.cs deleted file mode 100755 index c341e985..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ArcCos.cs +++ /dev/null @@ -1,30 +0,0 @@ -using UnityEngine; - -namespace ShaderForge { - - [System.Serializable] - public class SFN_ArcCos : SF_Node_Arithmetic { - - public SFN_ArcCos() { - } - - public override void Initialize() { - base.Initialize( "ArcCos" ); - base.PrepareArithmetic( 1 ); - base.shaderGenMode = ShaderGenerationMode.CustomFunction; - } - - public override string[] GetBlitOutputLines() { - return new string[] { "acos(_in)" }; - } - - public override string Evaluate( OutChannel channel = OutChannel.All ) { - return "acos(" + GetConnectorByStringID( "IN" ).TryEvaluate() + ")"; - } - - public override float EvalCPU( int c ) { - return Mathf.Acos( GetInputData( "IN", c ) ); - } - - } -} \ No newline at end of file diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ArcCos.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ArcCos.cs.meta deleted file mode 100755 index c81a7618..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ArcCos.cs.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: 1267f09847e198948b8685321890f373 -MonoImporter: - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ArcSin.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ArcSin.cs deleted file mode 100755 index c48836d2..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ArcSin.cs +++ /dev/null @@ -1,30 +0,0 @@ -using UnityEngine; - -namespace ShaderForge { - - [System.Serializable] - public class SFN_ArcSin : SF_Node_Arithmetic { - - public SFN_ArcSin() { - } - - public override void Initialize() { - base.Initialize( "ArcSin" ); - base.PrepareArithmetic( 1 ); - base.shaderGenMode = ShaderGenerationMode.CustomFunction; - } - - public override string[] GetBlitOutputLines() { - return new string[] { "asin(_in)" }; - } - - public override string Evaluate( OutChannel channel = OutChannel.All ) { - return "asin(" + GetConnectorByStringID( "IN" ).TryEvaluate() + ")"; - } - - public override float EvalCPU( int c ) { - return Mathf.Asin( GetInputData( "IN", c ) ); - } - - } -} \ No newline at end of file diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ArcSin.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ArcSin.cs.meta deleted file mode 100755 index 5c097895..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ArcSin.cs.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: 51a1743e634ae48499fec247d6ee111f -MonoImporter: - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ArcTan.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ArcTan.cs deleted file mode 100755 index d8013314..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ArcTan.cs +++ /dev/null @@ -1,30 +0,0 @@ -using UnityEngine; - -namespace ShaderForge { - - [System.Serializable] - public class SFN_ArcTan : SF_Node_Arithmetic { - - public SFN_ArcTan() { - } - - public override void Initialize() { - base.Initialize( "ArcTan" ); - base.PrepareArithmetic( 1 ); - base.shaderGenMode = ShaderGenerationMode.CustomFunction; - } - - public override string[] GetBlitOutputLines() { - return new string[] { "atan(_in)" }; - } - - public override string Evaluate( OutChannel channel = OutChannel.All ) { - return "atan(" + GetConnectorByStringID( "IN" ).TryEvaluate() + ")"; - } - - public override float EvalCPU( int c ) { - return Mathf.Atan( GetInputData( "IN", c ) ); - } - - } -} \ No newline at end of file diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ArcTan.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ArcTan.cs.meta deleted file mode 100755 index f59d6992..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ArcTan.cs.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: b0f13cb74c6cdd346ad7a92d8af2bda7 -MonoImporter: - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ArcTan2.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ArcTan2.cs deleted file mode 100755 index 848a892c..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ArcTan2.cs +++ /dev/null @@ -1,118 +0,0 @@ -using UnityEngine; -using UnityEditor; - -namespace ShaderForge { - - [System.Serializable] - public class SFN_ArcTan2 : SF_Node_Arithmetic { - - public enum ArcTan2Type { NegPiToPi, NegOneToOne, ZeroToOne, ZeroToOneWrapped }; - public static string[] atanTypeStr = new string[] { "-\u03C0 to \u03C0", "-1 to 1", "0 to 1", "0 to 1 Wrapped" }; - - public ArcTan2Type arcTanType = ArcTan2Type.NegPiToPi; - - public SFN_ArcTan2() { - } - - public override void Initialize() { - base.Initialize( "ArcTan2" ); - base.UseLowerPropertyBox( true, true ); - base.PrepareArithmetic(2); - base.shaderGenMode = ShaderGenerationMode.Modal; - connectors[1].label = "y"; - connectors[2].label = "x"; - } - - public override string[] GetModalModes() { - return new string[]{ - "NPTP", - "NOTO", - "ZTO", - "ZTOW" - }; - } - - public override string GetCurrentModalMode() { - switch( arcTanType ) { - case ArcTan2Type.NegOneToOne: - return "NOTO"; - case ArcTan2Type.ZeroToOne: - return "ZTO"; - case ArcTan2Type.ZeroToOneWrapped: - return "ZTOW"; - default: - return "NPTP"; - } - } - - public override string[] GetBlitOutputLines( string mode ) { - - - string s = "atan2(_a,_b)"; - - switch( mode ) { - case "NOTO": - s = "(" + s + "/3.14159265359)"; - break; - case "ZTO": - s = "(" + s + "/6.28318530718)+0.5"; - break; - case "ZTOW": - s = "(1-abs(" + s + ")/3.14159265359)"; - break; - } - return new string[] { s }; - } - - public override string Evaluate( OutChannel channel = OutChannel.All ) { - - string aStr = GetConnectorByStringID( "A" ).TryEvaluate(); - string bStr = GetConnectorByStringID( "B" ).TryEvaluate(); - - - if( arcTanType == ArcTan2Type.NegOneToOne ) - return "(atan2(" + aStr + "," + bStr + ")/3.14159265359)"; - if( arcTanType == ArcTan2Type.ZeroToOne ) - return "((atan2(" + aStr + "," + bStr + ")/6.28318530718)+0.5)"; - if( arcTanType == ArcTan2Type.ZeroToOneWrapped ) - return "(1-abs(atan2(" + aStr + "," + bStr + ")/3.14159265359))"; - //if( arcTanType == ArcTan2Type.NegPiToPi ) - return "atan2(" + aStr + "," + bStr + ")"; - } - - public override float EvalCPU( int c ) { - - float a = GetInputData( "A", c ); - float b = GetInputData( "B", c ); - - if( arcTanType == ArcTan2Type.NegOneToOne ) - return Mathf.Atan2( a, b ) / Mathf.PI; - if( arcTanType == ArcTan2Type.ZeroToOne ) - return (Mathf.Atan2( a, b ) / (2*Mathf.PI)) + 0.5f; - if( arcTanType == ArcTan2Type.ZeroToOneWrapped ) - return 1f-(Mathf.Abs(Mathf.Atan2( a, b ) / Mathf.PI)); - //if( arcTanType == ArcTan2Type.NegPiToPi ) - return Mathf.Atan2( a, b ); - } - - public override void DrawLowerPropertyBox() { - EditorGUI.BeginChangeCheck(); - arcTanType = (ArcTan2Type)UndoableEnumPopupNamed( lowerRect, (int)arcTanType, atanTypeStr, "ArcTan2 type" ); - if( EditorGUI.EndChangeCheck() ) - OnUpdateNode(); - } - - public override string SerializeSpecialData() { - return "attp:" + (int)arcTanType; - } - - public override void DeserializeSpecialData( string key, string value ) { - switch( key ) { - case "attp": - arcTanType = (ArcTan2Type)int.Parse( value ); - break; - } - } - - } -} \ No newline at end of file diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ArcTan2.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ArcTan2.cs.meta deleted file mode 100755 index 8f8c7199..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ArcTan2.cs.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: 0792bd3dbd79d854f9d4c5ba334b03da -MonoImporter: - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Bitangent.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Bitangent.cs deleted file mode 100644 index b7abcebb..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Bitangent.cs +++ /dev/null @@ -1,35 +0,0 @@ -using UnityEngine; -using UnityEditor; -using System.Collections; - -namespace ShaderForge { - - [System.Serializable] - public class SFN_Bitangent : SF_Node { - - - public SFN_Bitangent() { - - } - - public override void Initialize() { - base.Initialize( "Bitangent Dir.", InitialPreviewRenderMode.BlitSphere ); - base.showColor = true; - base.UseLowerPropertyBox( false ); - base.texture.CompCount = 3; - base.neverDefineVariable = true; - connectors = new SF_NodeConnector[]{ - SF_NodeConnector.Create(this,"OUT","",ConType.cOutput,ValueType.VTv3,false) - }; - } - - public override Vector4 EvalCPU() { - return new Color( 0f, 1f, 0f, 0f ); - } - - public override string Evaluate( OutChannel channel = OutChannel.All ) { - return SF_Evaluator.WithProgramPrefix( "bitangentDir" ); - } - - } -} \ No newline at end of file diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Bitangent.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Bitangent.cs.meta deleted file mode 100644 index 157be31d..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Bitangent.cs.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: 91678baf7d403d74b9e68a280151262e -MonoImporter: - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Blend.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Blend.cs deleted file mode 100644 index 06f210f8..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Blend.cs +++ /dev/null @@ -1,339 +0,0 @@ -using UnityEngine; -using UnityEditor; -using System.Collections; -using System; - -namespace ShaderForge{ - public class SFN_Blend : SF_Node_Arithmetic { - - - public enum BlendMode { - Darken = 0, - Multiply = 1, - ColorBurn = 2, - LinearBurn = 3, - // DarkerColor = 4, - - Lighten = 5, - Screen = 6, - ColorDodge = 7, - LinearDodge = 8, - // LighterColor = 9, - - Overlay = 10, - // SoftLight = 11, - HardLight = 12, - VividLight = 13, - LinearLight = 14, - PinLight = 15, - HardMix = 16, - - Difference = 17, - Exclusion = 18, - Subtract = 19, - Divide = 20 - }; - - - const int maxEnum = 20; - static int[] skipEnum = new int[]{4,9,11}; - - public BlendMode currentBlendMode = BlendMode.Overlay; - public bool clamp = true; - - public SFN_Blend() { - - } - - public override void Initialize() { - base.Initialize( "Blend" ); - base.UseLowerPropertyBox( true, true ); - base.showColor = true; - base.texture.uniform = false; - base.texture.CompCount = 3; - base.node_height += 15; - base.shaderGenMode = ShaderGenerationMode.Modal; - - connectors = new SF_NodeConnector[]{ - SF_NodeConnector.Create(this,"OUT","",ConType.cOutput,ValueType.VTvPending,false), - SF_NodeConnector.Create(this,"SRC","Src",ConType.cInput,ValueType.VTvPending,false).SetRequired(true), - SF_NodeConnector.Create(this,"DST","Dst",ConType.cInput,ValueType.VTvPending,false).SetRequired(true) - }; - - base.conGroup = ScriptableObject.CreateInstance().Initialize( connectors[0], connectors[1], connectors[2] ); - } - - public override bool IsUniformOutput() { - return false; - } - - - public void StepBlendMode(int inc, bool registerUndo){ - int nextBlendIndex = (int)currentBlendMode + inc; - - - - - restart: - foreach(int i in skipEnum){ - if(nextBlendIndex == i){ - nextBlendIndex += inc; - goto restart; // Watch out for raptors - } - } - - - if(nextBlendIndex == -1){ - BlendMode nextBlendMode = (BlendMode)maxEnum; - if(registerUndo){ - UndoRecord("switch blend mode to " + nextBlendMode.ToString()); - } - currentBlendMode = nextBlendMode; - return; - } else if(nextBlendIndex > maxEnum){ - BlendMode nextBlendMode = (BlendMode)0; - if(registerUndo){ - UndoRecord("switch blend mode to " + nextBlendMode.ToString()); - } - currentBlendMode = nextBlendMode; - return; - } - - if(registerUndo){ - UndoRecord("switch blend mode to " + (BlendMode)nextBlendIndex); - } - - currentBlendMode = (BlendMode)nextBlendIndex; - - } - - - - - - public override void RefreshValue() { - RefreshValue( 1, 2 ); - } - - public override void DrawLowerPropertyBox() { - GUI.color = Color.white; - EditorGUI.BeginChangeCheck(); - Rect r = lowerRect; - r.height = 17; - - currentBlendMode = (BlendMode)UndoableEnumPopup(r, currentBlendMode, "switch blend mode"); - - r = r.MovedDown(); - r.width -= r.height*2+8; - UndoableToggle(r,ref clamp, "Clamp", "blend node clamp", SF_Styles.ToggleDiscrete); - r.width = lowerRect.width; - r = r.MovedRight(); - r.width = r.height+4; - r = r.MovedLeft(2); - if(GUI.Button(r,"\u25B2")){ - StepBlendMode(-1, registerUndo:true); - } - r = r.MovedRight(); - if(GUI.Button(r, "\u25BC")){ - StepBlendMode(1, registerUndo:true); - } - - - if(EditorGUI.EndChangeCheck()) - OnUpdateNode(); - } - - public override string SerializeSpecialData() { - string s = ""; - s += "blmd:" + (int)currentBlendMode + ","; - s += "clmp:" + clamp.ToString(); - return s; - } - - - - public override void DeserializeSpecialData( string key, string value ) { - switch( key ) { - case "blmd": - currentBlendMode = (BlendMode)int.Parse( value ); - break; - case "clmp": - clamp = bool.Parse( value ); - break; - } - } - - - public override float EvalCPU( int c ) { - - float a = GetInputData( "SRC", c ); - float b = GetInputData( "DST", c ); - - float blended = Blend(a,b); - - if(clamp) - blended = Mathf.Clamp01(blended); - - - return blended; - } - - - public override string Evaluate( OutChannel channel = OutChannel.All ) { - - // Update eval count here - - string a = GetConnectorByStringID( "SRC" ).TryEvaluate(); - string b = GetConnectorByStringID( "DST" ).TryEvaluate(); - - - - - string blend = Blend (a, b, currentBlendMode); - - if(clamp){ - return "saturate(" + blend + ")"; - } - - return blend; - } - - - public void UpdateUsageCount(){ - - SF_NodeConnector src = GetConnectorByStringID("SRC"); - SF_NodeConnector dst = GetConnectorByStringID("DST"); - - - - if(currentBlendMode == BlendMode.Overlay){ - src.usageCount = 2; - dst.usageCount = 3; - return; - } - - if(currentBlendMode == BlendMode.HardLight || - currentBlendMode == BlendMode.VividLight || - currentBlendMode == BlendMode.LinearLight || - currentBlendMode == BlendMode.PinLight){ - - src.usageCount = 3; - dst.usageCount = 2; - return; - } - - - - src.usageCount = 1; - dst.usageCount = 1; - - } - - - - public override string[] GetModalModes() { - return Enum.GetNames( typeof( BlendMode ) ); - } - - public override string GetCurrentModalMode() { - return currentBlendMode.ToString(); - } - - public override string[] GetBlitOutputLines( string mode ) { - string s = Blend( "_src", "_dst", (BlendMode)Enum.Parse( typeof( BlendMode ), mode ) ); - return new string[] { s }; - } - - - - // lerp( 2.0*a*b, 1.0-(1.0-2.0*(a-0.5))*(1.0-b), round(a) ) - - - public string Blend(string a, string b, BlendMode mode){ - switch( mode ) { - case BlendMode.Darken: - return "min(" + a + "," + b + ")"; - case BlendMode.Multiply: - return "("+a+"*"+b+")"; - case BlendMode.ColorBurn: - return "(1.0-((1.0-" + b + ")/" + a + "))"; - case BlendMode.LinearBurn: - return "(" + a + "+" + b + "-1.0)"; - case BlendMode.Lighten: - return "max(" + a + "," + b + ")"; - case BlendMode.Screen: - return "(1.0-(1.0-" + a + ")*(1.0-" + b + "))"; - case BlendMode.ColorDodge: - return "(" + b + "/(1.0-" + a + "))"; - case BlendMode.LinearDodge: - return "(" + a + "+" + b + ")"; - case BlendMode.Overlay: - return "( " + b + " > 0.5 ? (1.0-(1.0-2.0*(" + b + "-0.5))*(1.0-" + a + ")) : (2.0*" + b + "*" +a + ") )"; - case BlendMode.HardLight: - return "(" + a + " > 0.5 ? (1.0-(1.0-2.0*(" + a + "-0.5))*(1.0-" + b + ")) : (2.0*" + a + "*" + b + ")) "; - case BlendMode.VividLight: - return "( " + a + " > 0.5 ? (" + b + "/((1.0-" + a + ")*2.0)) : (1.0-(((1.0-" + b + ")*0.5)/" + a + ")))"; - case BlendMode.LinearLight: - return "( " + a + " > 0.5 ? (" + b + " + 2.0*" + a + " -1.0) : (" + b + " + 2.0*(" + a + "-0.5)))"; - case BlendMode.PinLight: - return "( " + a + " > 0.5 ? max(" + b + ",2.0*(" + a + "-0.5)) : min(" + b + ",2.0*" + a + ") )"; - case BlendMode.HardMix: - return "round( 0.5*(" + a + " + " + b + "))"; - case BlendMode.Difference: - return "abs(" + a + "-" + b + ")"; - case BlendMode.Exclusion: - return "(0.5 - 2.0*(" + a + "-0.5)*(" + b + "-0.5))"; - case BlendMode.Subtract: - return "(" + b + "-" + a + ")"; - case BlendMode.Divide: - return "(" + b + "/" + a + ")"; - } - return "0"; - } - - - public float Blend(float a, float b){ - switch(currentBlendMode){ - case BlendMode.Darken: - return Mathf.Min(a,b); - case BlendMode.Multiply: - return a*b; - case BlendMode.ColorBurn: - return 1f-((1f-b)/a); - case BlendMode.LinearBurn: - return a+b-1f; - case BlendMode.Lighten: - return Mathf.Max(a,b); - case BlendMode.Screen: - return 1f-(1f-a)*(1f-b); - case BlendMode.ColorDodge: - return b/(1f-a); - case BlendMode.LinearDodge: - return a+b; - case BlendMode.Overlay: - return b > 0.5f ? 1f-(1f-2f*(b-0.5f))*(1f-a) : 2f*a*b ; - case BlendMode.HardLight: - return a > 0.5f ? 1f-(1f-2f*(a-0.5f))*(1f-b) : 2f*a*b;; - case BlendMode.VividLight: - return a > 0.5f ? b/((1f-a)*2f) : 1f-(((1f-b)*0.5f)/a); - case BlendMode.LinearLight: - return a > 0.5f ? b + 2f*(a-0.5f) : b + 2f*a -1f; - case BlendMode.PinLight: - return a > 0.5f ? Mathf.Max(b,2f*(a-0.5f)) : Mathf.Min(b,2f*a); - case BlendMode.HardMix: - return Mathf.Round((a+b)*0.5f); - case BlendMode.Difference: - return Mathf.Abs(a-b); - case BlendMode.Exclusion: - return 0.5f - 2f*(a-0.5f)*(b-0.5f); - case BlendMode.Subtract: - return b-a; - case BlendMode.Divide: - return b/a; - } - return 0f; - } - - - } -} diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Blend.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Blend.cs.meta deleted file mode 100644 index 2867e546..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Blend.cs.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: dc98abed3a52945188950124fb57da72 -MonoImporter: - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Ceil.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Ceil.cs deleted file mode 100755 index 668520b7..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Ceil.cs +++ /dev/null @@ -1,26 +0,0 @@ -using UnityEngine; - -namespace ShaderForge { - - [System.Serializable] - public class SFN_Ceil : SF_Node_Arithmetic { - - public SFN_Ceil() { - } - - public override void Initialize() { - base.Initialize( "Ceil" ); - base.PrepareArithmetic( 1 ); - base.shaderGenMode = ShaderGenerationMode.SimpleFunction; - } - - public override string Evaluate( OutChannel channel = OutChannel.All ) { - return "ceil(" + GetConnectorByStringID( "IN" ).TryEvaluate() + ")"; - } - - public override float EvalCPU( int c ) { - return Mathf.Ceil( GetInputData( "IN", c ) ); - } - - } -} \ No newline at end of file diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Ceil.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Ceil.cs.meta deleted file mode 100755 index 87aa1c9b..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Ceil.cs.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: 3f60d482333b50040ac5e3679061069c -MonoImporter: - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ChannelBlend.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ChannelBlend.cs deleted file mode 100755 index 4327a63a..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ChannelBlend.cs +++ /dev/null @@ -1,194 +0,0 @@ -using UnityEngine; -using UnityEditor; -using System.Collections; -using System.Linq; - -namespace ShaderForge { - - [System.Serializable] - public class SFN_ChannelBlend : SF_Node_Arithmetic { - - // SF_Node tNode; - public enum ChannelBlendType{ Summed, Layered }; - - public ChannelBlendType channelBlendType = ChannelBlendType.Summed; - - public SFN_ChannelBlend() { - - } - - - public override void Initialize() { - base.Initialize( "Channel Blend" ); - base.PrepareArithmetic(6); - base.extraWidthInput = 3; - base.UseLowerPropertyBox( true, true ); - base.shaderGenMode = ShaderGenerationMode.Manual; - - //SF_NodeConnection lerpCon; - connectors = new SF_NodeConnector[]{ - SF_NodeConnector.Create( this, "OUT", "", ConType.cOutput, ValueType.VTvPending, false ), - SF_NodeConnector.Create( this, "M", "Mask", ConType.cInput, ValueType.VTvPending, false ).SetRequired( true ).WithUseCount(4), - SF_NodeConnector.Create( this, "R", "Rcol", ConType.cInput, ValueType.VTvPending, false ).SetRequired( true ), - SF_NodeConnector.Create( this, "G", "Gcol", ConType.cInput, ValueType.VTvPending, false ).SetRequired( true ), - SF_NodeConnector.Create( this, "B", "Bcol", ConType.cInput, ValueType.VTvPending, false ).SetRequired( true ), - SF_NodeConnector.Create( this, "A", "Acol", ConType.cInput, ValueType.VTvPending, false ).SetRequired( true ), - SF_NodeConnector.Create( this, "BTM", "Btm", ConType.cInput, ValueType.VTvPending, false ).SetRequired( false ) - }; - this["BTM"].enableState = EnableState.Disabled; - base.conGroup = ScriptableObject.CreateInstance().Initialize( connectors[0], connectors[1], connectors[2], connectors[3], connectors[4], connectors[5], connectors[6] ); - } - - public override void OnUpdateNode( NodeUpdateType updType, bool cascade = true ) { - if( InputsConnected() ) - RefreshValue( 1, 2 ); - if(this["M"].IsConnected()){ - UpdateMaskCompCountInputs(); - } - //base.OnUpdateNode( updType ); - } - - public override bool IsUniformOutput() { - foreach(SF_NodeConnector con in connectors){ - if(con.conType == ConType.cOutput || !con.IsConnected()) - continue; - if(!con.inputCon.node.texture.uniform) - return false; - } - return true; - } - - public override int GetEvaluatedComponentCount() { - return this["R"].GetCompCount(); - } - - public override void PrepareRendering( Material mat ) { - mat.SetFloat( "_Type", channelBlendType == ChannelBlendType.Summed ? 0 : 1 ); - } - - - private void UpdateMaskCompCountInputs(){ - - int cc = this["M"].GetCompCount(); - base.texture.CompCount = cc; - - bool summed = channelBlendType == ChannelBlendType.Summed; - //int enableInputCount = summed ? 4 : 5; - - for(int i = 0;i<4;i++){ - - SF_NodeConnector con = connectors[i+2]; - - //if(con.IsConnected() && con.inputCon.GetCompCount() != cc) - // connectors[i+2].Disconnect(); - - bool use = i < cc; - - con.SetRequired( use ); - con.enableState = use ? EnableState.Enabled : EnableState.Disabled; - - // Disconnect if going hidden while connected, but not during load, as it might connect an unevaluated cc - //if(!SF_Parser.quickLoad && !SF_Parser.settingUp){ - if(con.IsConnected() && con.enableState == EnableState.Disabled){ - //connectors[i+2].Disconnect(); - //Debug.Log("Disconnecting thing due to things!"); - } - //} - - } - - this["BTM"].SetRequired(!summed); - this["BTM"].enableState = summed ? EnableState.Disabled : EnableState.Enabled; - } - - public override void DrawLowerPropertyBox() { - GUI.color = Color.white; - EditorGUI.BeginChangeCheck(); - channelBlendType = (ChannelBlendType)UndoableEnumPopup(lowerRect, channelBlendType, "switch channel blend type"); - //currentUV = (UV)EditorGUI.EnumPopup( lowerRect, currentUV ); - if(EditorGUI.EndChangeCheck()){ - UpdateMaskCompCountInputs(); - OnUpdateNode(NodeUpdateType.Hard); - } - } - - public override string SerializeSpecialData() { - return "chbt:" + (int)channelBlendType; - } - - public override void DeserializeSpecialData( string key, string value ) { - switch( key ) { - case "chbt": - channelBlendType = (ChannelBlendType)int.Parse( value ); - break; - } - } - - - public override string Evaluate( OutChannel channel = OutChannel.All ) { - - int cc = this["M"].GetCompCount(); - - string m = this["M"].TryEvaluate(); - - string[] chStr = new string[]{"r","g","b","a"}; - - - - - string str = "("; - - - if(channelBlendType == ChannelBlendType.Summed){ - for(int i=0;i().Initialize( connectors[0], connectors[1], connectors[2] ); - } - - public override void OnUpdateNode( NodeUpdateType updType, bool cascade = true ) { - if( InputsConnected() ) - RefreshValue( 1, 2 ); - base.OnUpdateNode( updType ); - } - - public override bool IsUniformOutput() { - if( InputsConnected() ) - return ( GetInputData( "IN" ).uniform && GetInputData( "MIN" ).uniform && GetInputData( "MAX" ).uniform ); - return true; - } - - public override int GetEvaluatedComponentCount() { - return Mathf.Max( connectors[1].GetCompCount(), connectors[2].GetCompCount() ); - } - - - public override string Evaluate( OutChannel channel = OutChannel.All ) { - return "clamp(" + GetConnectorByStringID( "IN" ).TryEvaluate() + "," + GetInputCon( "MIN" ).Evaluate() + "," + GetInputCon( "MAX" ).Evaluate() + ")"; - } - - - public override float EvalCPU( int c ) { - //if( c + 1 > GetEvaluatedComponentCount() && GetEvaluatedComponentCount() > 1 ) // Why was this needed before? - // return 0f; - return Mathf.Clamp( GetInputData( "IN", c ), GetInputData( "MIN", c ), GetInputData( "MAX", c ) ); - } - - - - } -} \ No newline at end of file diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Clamp.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Clamp.cs.meta deleted file mode 100755 index 02c7e14e..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Clamp.cs.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: 8f0e557ea28785e489136b0286b4a244 -MonoImporter: - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Clamp01.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Clamp01.cs deleted file mode 100755 index 9deb90c7..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Clamp01.cs +++ /dev/null @@ -1,30 +0,0 @@ -using UnityEngine; - -namespace ShaderForge { - - [System.Serializable] - public class SFN_Clamp01 : SF_Node_Arithmetic { - - public SFN_Clamp01() { - } - - public override void Initialize() { - base.Initialize( "Clamp 0-1" ); - base.PrepareArithmetic( 1 ); - base.shaderGenMode = ShaderGenerationMode.CustomFunction; - } - - public override string[] GetBlitOutputLines() { - return new string[] { "saturate(_in)" }; - } - - public override string Evaluate( OutChannel channel = OutChannel.All ) { - return "saturate(" + GetConnectorByStringID( "IN" ).TryEvaluate() + ")"; - } - - public override float EvalCPU( int c ) { - return Mathf.Clamp01( GetInputData( "IN", c ) ); - } - - } -} \ No newline at end of file diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Clamp01.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Clamp01.cs.meta deleted file mode 100755 index d2e6395e..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Clamp01.cs.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: 24cede14d15605b4e804eccab2542450 -MonoImporter: - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Code.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Code.cs deleted file mode 100755 index fd51d014..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Code.cs +++ /dev/null @@ -1,609 +0,0 @@ -using UnityEngine; -using UnityEditor; -using System.Collections.Generic; - -namespace ShaderForge { - - - public enum CustomValueType{ - Float, - Float2, - Float3, - Float4, - Half, - Half2, - Half3, - Half4, - Fixed, - Fixed2, - Fixed3, - Fixed4, - Sampler2D, - Matrix4x4 - /*, Texture*/ }; - - [System.Serializable] - public class SFN_Code : SF_Node_Resizeable { - - - public string code = ""; - public string functionName = "Function_node_"; - - private bool isEditing = false; - - public SFN_Code() { - } - - public override void Initialize() { - base.Initialize( "Code" ); - functionName = "Function_node_" + base.id; - base.minWidth = (int)(NODE_WIDTH * 2.5f); - base.minHeight = NODE_HEIGHT; - base.ClampSize(); - connectors = new SF_NodeConnector[]{ - SF_NodeConnector.Create(this,"OUT","Out",ConType.cOutput,ValueType.VTvPending) - }; - controlName = base.id + "_codeArea"; - connectors[0].CustomValueType = CustomValueType.Float3; - //Debug.Log("Creating thing " + base.id); - } - - public string GetFunctionName(){ - return functionName; - //return "CustomCode_" + id; - } - - public override int GetEvaluatedComponentCount (){ - return SF_Tools.ComponentCountOf(connectors[0].CustomValueType); - } - - public override string GetPrepareUniformsAndFunctions(){ - return GetFunctionHeader() + "\n" + code + "\n}\n"; - } - - public string GetFunctionHeader(){ - string outputType = ToCodeType(connectors[0].CustomValueType); // Output type - string inputs = "("; - foreach(SF_NodeConnector con in connectors){ - if(con.conType == ConType.cOutput) - continue; - inputs += " " + ToCodeType(con.CustomValueType) + " " + con.label + " "; - - if(con != connectors[connectors.Length-1]) // Add comma if it's not the last one - inputs += ","; - } - inputs += "){"; - return outputType + " " + GetFunctionName() + inputs; - } - - private string ToCodeType(CustomValueType cvt){ - if(cvt == CustomValueType.Sampler2D) - return "sampler2D"; // Uppercase D - if( cvt == CustomValueType.Matrix4x4 ) - return "float4x4"; - return cvt.ToString().ToLower(); - } - - public override string Evaluate( OutChannel channel = OutChannel.All ) { - string s = GetFunctionName(); - s += "("; - foreach(SF_NodeConnector con in connectors){ - if(con.conType == ConType.cOutput) - continue; - s += " " + con.TryEvaluate() + " "; - - if(con != connectors[connectors.Length-1]) // Add comma if it's not the last one - s += ","; - } - - s += ")"; - return s; - } - - public override float EvalCPU( int c ) { - return 1f; - } - - string controlName; - - - float targetSideButtonWidth; - float currentSideButtonWidth; - - //CustomValueType outType = CustomValueType.Float3; - - bool hoveringNode = false; - - int guiIncID = 0; - - bool justFocused = false; - int pressedTabLastFrameCounter = 0; - int pressedEditLastFrameCounter = 0; - int savedCaretPosition; - - TextEditor txtEditor; - - public override void DrawInner(Rect r){ - - - - //Debug.Log("GUI THREAD: " + Event.current.type + " - " + GUI.GetNameOfFocusedControl()); - - //if(Event.current.type == EventType.layout) - //return; - - if(Event.current.type == EventType.repaint) - guiIncID++; - - //if(Event.current.type == EventType.repaint) - //if(hoveringNode){ - //hoveringNode = r.Margin(128).Contains(Event.current.mousePosition); - //} else { - hoveringNode = r.Contains(Event.current.mousePosition); - //} - - - if(!isEditing) // Don't resize while editing - targetSideButtonWidth = (selected) ? 70f : 0f; - - - int sideButtonHeight = 16; - int buttonTextMargin = 4; - - int sideButtonWidth = Mathf.RoundToInt(currentSideButtonWidth); - if(Event.current.type == EventType.repaint){ - currentSideButtonWidth = Mathf.Lerp(currentSideButtonWidth, targetSideButtonWidth, 0.6f); - } - - Rect txtRect = r; - - - - txtRect = txtRect.PadRight(/*(int)sideButtonWidth +*/ buttonTextMargin); - txtRect = txtRect.PadLeft((int)sideButtonWidth*2 + buttonTextMargin); - txtRect = txtRect.PadBottom(buttonTextMargin); - - - // BUTTONS - if(sideButtonWidth > 12f){ - - Rect btnOutput = txtRect; - Rect btnInput = txtRect; - btnOutput.width = sideButtonWidth; - btnInput.width = sideButtonWidth*2; - btnOutput.height = btnInput.height = sideButtonHeight; - btnOutput.x += txtRect.width - sideButtonWidth; - btnInput.x += - buttonTextMargin / 2 - sideButtonWidth*2; - - DrawTypecastButtons( btnOutput, btnInput ); - - } - - - txtRect = txtRect.PadTop((int)(sideButtonWidth*0.32f)); - - - - if(isEditing && !justFocused && Event.current.type == EventType.repaint){ - //Debug.Log("GUI THREAD " + Event.current.type + " LOWER"); - if(GUI.GetNameOfFocusedControl() != controlName){ - //Debug.Log("DEFOCUS - " + Event.current.type + " fc: " + GUI.GetNameOfFocusedControl() ); - isEditing = false; - isEditingAnyNodeTextField = false; - } - } - - - - if(Event.current.type == EventType.repaint){ - justFocused = false; - } - - //Debug.Log("GUI THREAD B: " + Event.current.type + " - " + GUI.GetNameOfFocusedControl()); - - if(isEditing){ - - controlName = base.id + "_codeArea"; - - GUI.SetNextControlName(controlName); - - string codeBefore = code; - //code = GUI.TextArea(txtRect,code,SF_Styles.CodeTextArea); - code = UndoableTextArea(txtRect, code, "code", SF_Styles.CodeTextArea); - - SF_GUI.AssignCursor( txtRect , MouseCursor.Text ); - - //if(copied){ - // code = codeBefore; - // txtEditor.pos += copyLength-1; - //} - - - txtEditor = (TextEditor)GUIUtility.GetStateObject(typeof(TextEditor), GUIUtility.keyboardControl); - savedCaretPosition = txtEditor.cursorIndex; - //txtEditor.selectPos = 4; - - - - - //if(SF_GUI.HoldingControl() && Event.current.type == EventType.keyDown && Event.current.keyCode == KeyCode.C) - - - if(Event.current.keyCode == KeyCode.Tab && Event.current.type == EventType.keyDown){ - //Debug.Log("Tab"); - UndoRecord("insert tab in " + functionName + " code"); - code = code.Insert( txtEditor.cursorIndex, "\t" ); - //Debug.Log("Caret position = " + txtEditor.pos); - savedCaretPosition = txtEditor.cursorIndex; - pressedTabLastFrameCounter = 5; // Force it for five GUI frames - Event.current.Use(); - GUI.FocusControl(controlName); - } - - if(pressedTabLastFrameCounter > 0 /*&& GUI.GetNameOfFocusedControl() != controlName*/){ - GUI.FocusControl(controlName); - txtEditor = (TextEditor)GUIUtility.GetStateObject(typeof(TextEditor), GUIUtility.keyboardControl); - txtEditor.cursorIndex = savedCaretPosition + 1; - txtEditor.selectIndex = savedCaretPosition+1; - pressedTabLastFrameCounter--; - } - - /* - if(Event.current.keyCode == KeyCode.Tab && Event.current.type == EventType.keyUp){ - GUI.FocusControl(controlName); - Event.current.Use(); - GUI.FocusControl(controlName); - } - - if(Event.current.Equals( Event.KeyboardEvent("tab") )){ - GUI.FocusControl(controlName); - Event.current.Use(); - GUI.FocusControl(controlName); - }*/ - - - - if(code != codeBefore){ - OnUpdateNode(NodeUpdateType.Soft, false); - } - //if(focusBefore != string.Empty && GUI.GetNameOfFocusedControl() != focusBefore){ - // GUI.FocusControl(focusBefore); - //} - //Debug.Log("GUI THREAD B_A_1: " + Event.current.type + " - " + GUI.GetNameOfFocusedControl()); - - }else{ - //Debug.Log("GUI THREAD " + Event.current.type + " UPPER"); - //Debug.Log("GUI THREAD B_B_0: " + Event.current.type + " - " + GUI.GetNameOfFocusedControl()); - GUI.Box(txtRect.PadBottom(1),code,SF_Styles.CodeTextArea); - if(hoveringNode){ - - bool doubleClicked = Event.current.isMouse && Event.current.type == EventType.mouseDown && Event.current.clickCount == 2; - - Rect btnRect = new Rect(txtRect.xMax,txtRect.yMax,46,16).MovedUp().MovedLeft(); - btnRect.x -= 3; - btnRect.y -= 4; - - btnRect.xMin -= 3; - btnRect.yMin -= 4; - - // Workaround for a weird issue - //bool clickedBtn = btnRect.Contains(Event.current.mousePosition) && Event.current.type == EventType.mouseUp && Event.current.button == 0; - - //Debug.Log("GUI THREAD B_B_1: " + Event.current.type + " - " + GUI.GetNameOfFocusedControl()); - if(GUI.Button(btnRect,"Edit",EditorStyles.miniButton) || doubleClicked && Event.current.type == EventType.repaint){ - isEditing = true; - //Debug.Log("FOCUS - " + Event.current.type + " fc: " + GUI.GetNameOfFocusedControl() ); - pressedEditLastFrameCounter = 5; - isEditingAnyNodeTextField = true; - GUI.FocusControl(controlName); - // forceFocusCodeField = true; - Event.current.Use(); - justFocused = true; - } - //Debug.Log("GUI THREAD B_B_2: " + Event.current.type + " - " + GUI.GetNameOfFocusedControl()); - } - } - - if(pressedEditLastFrameCounter > 0){ - GUI.FocusControl(controlName); - //Debug.Log("REFOCUSING " + controlName + " fc: " + GUI.GetNameOfFocusedControl() ); - pressedEditLastFrameCounter--; - } - - //Debug.Log("GUI THREAD C: " + Event.current.type + " - " + GUI.GetNameOfFocusedControl()); - - - - /* - if (forceFocusCodeField) { - //GUI.SetNextControlName("focusChange"); - if (GUI.GetNameOfFocusedControl() != controlName) { - GUI.FocusControl(controlName); - } else { - forceFocusCodeField = false; - } - - }*/ - - - - - //Debug.Log("GUI THREAD END: " + Event.current.type + " - " + GUI.GetNameOfFocusedControl()); - } - - //bool forceFocusCodeField = false; - - public void DrawTypecastButtons(Rect btnL, Rect btnR){ - - - // OUTPUT - DrawTypecastButton(btnL, connectors[0]); - - - // INPUTS - foreach(SF_NodeConnector con in connectors){ - if(con.conType == ConType.cOutput) - continue; - DrawTypecastButton(btnR, con, isInput:true); - btnR.y += btnR.height+4; - } - - // ADD INPUT BUTTON - GUI.color = new Color(0.7f,1f,0.7f,1f); - if(GUI.Button(btnR,"Add input", EditorStyles.miniButton)){ - UndoRecord("add input to " + functionName); - AddInput(); - } - GUI.color = Color.white; - - - } - - - - - public void AddInput(){ - - - SF_NodeConnector[] savedCons = new SF_NodeConnector[connectors.Length+1]; - for(int i=0;i conList = new List(); - foreach(SF_NodeConnector c in connectors){ - if(c != con){ - conList.Add(c); - } - } - - if(undoRecord) - Undo.DestroyObjectImmediate(con); - else - DestroyImmediate(con); - connectors = conList.ToArray(); - - RefreshConnectorStringIDs(); - UpdateMinHeight(); - - OnUpdateNode(NodeUpdateType.Hard, false); - } - - public void RefreshConnectorStringIDs(){ - int nameIndex = 0; - foreach(SF_NodeConnector c in connectors){ - if(c.conType == ConType.cInput){ - c.strID = SF_Tools.alphabetUpper[nameIndex].ToString(); - nameIndex++; - } - } - } - - - string EncodeCode(){ - return SF_Tools.StringToBase64String( code ); - } - - string DecodeCode(string encoded){ - return SF_Tools.Base64StringToString( encoded ); - } - - public class SF_Serializer{ - - List keys; - List values; - - public SF_Serializer(){ - keys = new List(); - values = new List(); - } - - public SF_Serializer Add(string key, string value){ - keys.Add(key); - values.Add(value); - return this; - } - - public SF_Serializer Add(string key, int value){ - return Add(key, value.ToString()); - } - - public SF_Serializer Add(string key, float value){ - return Add(key, value.ToString()); - } - - public SF_Serializer Add(string key, bool value){ - return Add(key, value.ToString()); - } - - public override string ToString(){ - string s = ""; - for(int i=0;i 0) - s += ","; - s += keys[i] + ":" + values[i]; - } - return s; - } - - } - - - public override string SerializeSpecialData() { - /* - string s = ""; - s += "code:" + EncodeCode() + ","; - - s += "output:" + (int)connectors[0].CustomValueType + ","; - - s += "fnme:" + functionName + ","; - - for(int i=1;i 0){ - con.label = SF_ShaderProperty.FormatInternalName(con.label); - UpdateExtraInputWidth(); - OnUpdateNode(NodeUpdateType.Soft); - } - } else { - int cvtccBef = SF_Tools.ComponentCountOf(con.CustomValueType ); - //con.CustomValueType = (CustomValueType)EditorGUI.EnumPopup(r, con.CustomValueType); - con.CustomValueType = (CustomValueType)UndoableEnumPopup(r, con.CustomValueType, "set output value type"); - if(cvtccBef != SF_Tools.ComponentCountOf(con.CustomValueType)){ - con.Disconnect(); - } - } - - } - - public void UpdateExtraInputWidth(){ - - int widest = SF_NodeConnector.defaultConnectorWidth; - - foreach(SF_NodeConnector con in connectors){ - if(con.conType == ConType.cOutput) - continue; - - widest = Mathf.Max( SF_GUI.WidthOf(con.label, SF_Styles.MiniLabelOverflow)+2, widest); - } - - extraWidthInput = widest - SF_NodeConnector.defaultConnectorWidth; - - - - } - - - - - - - } -} \ No newline at end of file diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Code.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Code.cs.meta deleted file mode 100644 index a05224d1..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Code.cs.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: 98ffa0d6f7e664ac98d11cff5f2974ef -MonoImporter: - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Color.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Color.cs deleted file mode 100755 index e97e8727..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Color.cs +++ /dev/null @@ -1,123 +0,0 @@ -using UnityEngine; -using UnityEditor; -using System.Collections; - -namespace ShaderForge { - - [System.Serializable] - public class SFN_Color : SF_Node { - - - public SFN_Color() { - - } - - public override void Initialize() { - //node_height /= 2; - base.Initialize( "Color" ); - base.showColor = true; - base.UseLowerPropertyBox( true ); - base.property = ScriptableObject.CreateInstance().Initialize( this ); - base.texture.uniform = true; - base.neverDefineVariable = true; - base.texture.dataUniform = new Color( 0.5f, 0.5f, 0.5f, 1.0f ); - base.texture.CompCount = 4; - base.shaderGenMode = ShaderGenerationMode.OffUniform; - lowerRect.width /= 4; - connectors = new SF_NodeConnector[]{ - SF_NodeConnector.Create(this,"RGB","RGB",ConType.cOutput,ValueType.VTv3) .Outputting(OutChannel.RGB), - SF_NodeConnector.Create(this,"R","R",ConType.cOutput, ValueType.VTv1) .WithColor(Color.red) .Outputting(OutChannel.R), - SF_NodeConnector.Create(this,"G","G",ConType.cOutput,ValueType.VTv1) .WithColor(Color.green) .Outputting(OutChannel.G), - SF_NodeConnector.Create(this,"B","B",ConType.cOutput,ValueType.VTv1) .WithColor(Color.blue) .Outputting(OutChannel.B), - SF_NodeConnector.Create(this,"A","A",ConType.cOutput,ValueType.VTv1) .Outputting(OutChannel.A) - }; - } - - public void OnUpdateValue() { - editor.shaderEvaluator.ApplyProperty( this ); - OnUpdateNode( NodeUpdateType.Soft ); - } - - public override bool IsUniformOutput() { - return true; - } - - public override string Evaluate( OutChannel channel = OutChannel.All ) { - return property.GetVariable(); - } - - public override void DrawLowerPropertyBox() { - - if(selected && !SF_GUI.MultiSelectModifierHeld() && !IsGlobalProperty()) - ColorPickerCorner( lowerRect ); - - Vector4 vecPrev = texture.dataUniform; - PrepareWindowColor(); - Rect tRect = lowerRect; - - if(IsGlobalProperty()){ - texture.dataUniform[0] = texture.dataUniform[1] = texture.dataUniform[2] = 0.5f; - texture.dataUniform[3] = 1f; - GUI.enabled = false; - } - - texture.dataUniform[0] = UndoableFloatField(tRect, texture.dataUniform[0], "R channel"); - tRect.x += tRect.width; - texture.dataUniform[1] = UndoableFloatField(tRect, texture.dataUniform[1], "G channel"); - tRect.x += tRect.width; - texture.dataUniform[2] = UndoableFloatField(tRect, texture.dataUniform[2], "B channel"); - tRect.x += tRect.width; - texture.dataUniform[3] = UndoableFloatField(tRect, texture.dataUniform[3], "A channel"); - ResetWindowColor(); - if( texture.dataUniform != vecPrev ) { - OnUpdateValue(); - OnUpdateNode(); - } - - if(IsGlobalProperty()){ - GUI.enabled = true; - } - - } - - public Color GetColor() { - return texture.dataUniform; - } - - public override string SerializeSpecialData() { - string s = property.Serialize() + ","; - s += "c1:" + texture.dataUniform[0] + ","; - s += "c2:" + texture.dataUniform[1] + ","; - s += "c3:" + texture.dataUniform[2] + ","; - s += "c4:" + texture.dataUniform[3]; - return s; - } - - public override void DeserializeSpecialData( string key, string value ) { - property.Deserialize(key,value); - switch( key ) { - case "c1": - float fVal1 = float.Parse( value ); - texture.dataUniform[0] = fVal1; - break; - case "c2": - float fVal2 = float.Parse( value ); - texture.dataUniform[1] = fVal2; - break; - case "c3": - float fVal3 = float.Parse( value ); - texture.dataUniform[2] = fVal3; - break; - case "c4": - float fVal4 = float.Parse( value ); - texture.dataUniform[3] = fVal4; - break; - } - } - - - - - - } -} \ No newline at end of file diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Color.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Color.cs.meta deleted file mode 100755 index 9c23e3c4..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Color.cs.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: 8bc17ab9cbfedf04dad0a0b49038cb4f -MonoImporter: - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_CommentBox.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_CommentBox.cs deleted file mode 100644 index 7dd06cdc..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_CommentBox.cs +++ /dev/null @@ -1,43 +0,0 @@ -using UnityEngine; -using UnityEditor; -using System.Collections.Generic; - -namespace ShaderForge { - - - [System.Serializable] - public class SFN_CommentBox : SF_Node_Resizeable { - - - public SFN_CommentBox() { - } - - public override void Initialize() { - base.Initialize( "Comment Box" ); - base.minWidth = (int)( NODE_WIDTH * 2.5f ); - base.minHeight = NODE_HEIGHT; - base.ClampSize(); - connectors = new SF_NodeConnector[]{ - //SF_NodeConnector.Create(this,"OUT","Out",ConType.cOutput,ValueType.VTvPending) - }; - } - - - public override void DrawInner( Rect r ) { - - // Things - UpdateMinHeight(); - - } - - - - - public void UpdateMinHeight() { - base.minHeight = Mathf.Max( NODE_HEIGHT, ( connectors.Length - 1 ) * 20 + 48 ); - base.ClampSize(); - } - - } - -} \ No newline at end of file diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_CommentBox.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_CommentBox.cs.meta deleted file mode 100644 index 1db4ae24..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_CommentBox.cs.meta +++ /dev/null @@ -1,12 +0,0 @@ -fileFormatVersion: 2 -guid: c0f7e2658ac66f644824764ce705d8c3 -timeCreated: 1426492859 -licenseType: Pro -MonoImporter: - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ComponentMask.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ComponentMask.cs deleted file mode 100755 index 41c444a2..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ComponentMask.cs +++ /dev/null @@ -1,387 +0,0 @@ -using UnityEngine; -using UnityEditor; -using System.Collections; -using System; - -namespace ShaderForge { - - [System.Serializable] - public class SFN_ComponentMask : SF_Node { - - public enum CompChannel {off = -1, r = 0, g = 1, b = 2, a = 3 }; - const string R = "R"; - const string G = "G"; - const string B = "B"; - const string A = "A"; - const string OFF = "-"; - public string[][] compLabels = new string[][]{ - new string[] { OFF, R }, - new string[] { OFF, R, G }, - new string[] { OFF, R, G, B }, - new string[] { OFF, R, G, B, A } - }; - public string[][] compLabelsFirst = new string[][]{ - new string[] { R }, - new string[] { R, G }, - new string[] { R, G, B }, - new string[] { R, G, B, A } - }; - - public const float colDesat = 0.6f; - - public static Color[] chanColors = new Color[]{ - Color.white, - new Color( 1f, colDesat, colDesat), - new Color( colDesat, 1f, colDesat), - new Color( colDesat*1.1f, colDesat*1.1f, 1f ), - Color.white - }; - - public static Color[] outputChanColors = new Color[]{ - Color.red, - Color.green, - Color.blue, - Color.white - }; - - - - public GUIStyle popupStyle; - - public CompChannel[] components = new CompChannel[] { - CompChannel.r, - CompChannel.off, - CompChannel.off, - CompChannel.off - }; - - public SFN_ComponentMask() { - /* - Initialize("Comp. Mask"); - base.showColor = true; - UseLowerReadonlyValues(true); - UseLowerPropertyBox( true, true ); - - popupStyle = new GUIStyle( EditorStyles.miniButton ); - popupStyle.alignment = TextAnchor.MiddleCenter; - popupStyle.fontSize = 12; - popupStyle.fontStyle = FontStyle.Bold; - - connectors = new SF_NodeConnection[]{ - new SF_NodeConnection(this,"-",ConType.cOutput,ValueType.VTvPending,false).Outputting(OutChannel.All), - new SF_NodeConnection(this,"In",ConType.cInput,ValueType.VTvPending,false).SetRequired(true) - }; - */ - //base.conGroup = new SFNCG_Append( connectors[0], connectors[1], connectors[2] ); - } - - public override void Initialize() { - base.Initialize( "Comp. Mask" ); - base.SearchName = "ComponentMask"; - base.showColor = true; - base.shaderGenMode = ShaderGenerationMode.Modal; - UseLowerReadonlyValues( true ); - UseLowerPropertyBox( true, true ); - SFN_ComponentMask.outputChanColors[3] = SF_NodeConnector.colorEnabledDefault; - - - popupStyle = new GUIStyle( EditorStyles.miniButton ); - popupStyle.alignment = TextAnchor.MiddleCenter; - popupStyle.fontSize = 12; - popupStyle.fontStyle = FontStyle.Bold; - - connectors = new SF_NodeConnector[]{ - SF_NodeConnector.Create(this,"OUT", "-", ConType.cOutput, ValueType.VTvPending,false) .Outputting(OutChannel.All), - SF_NodeConnector.Create(this,"IN", "In", ConType.cInput, ValueType.VTvPending,false) .SetRequired(true), - SF_NodeConnector.Create(this,"R", "R", ConType.cOutput, ValueType.VTv1) .WithColor(Color.red) .Outputting(OutChannel.R), - SF_NodeConnector.Create(this,"G", "G", ConType.cOutput, ValueType.VTv1) .WithColor(Color.green) .Outputting(OutChannel.G), - SF_NodeConnector.Create(this,"B", "B", ConType.cOutput, ValueType.VTv1) .WithColor(Color.blue) .Outputting(OutChannel.B), - SF_NodeConnector.Create(this,"A", "A", ConType.cOutput, ValueType.VTv1) .Outputting(OutChannel.A) - }; - outCompCount = 1; - UpdateOutput(); - } - - - public override int GetEvaluatedComponentCount() { - return outCompCount; - } - - public override bool IsUniformOutput() { - if( GetInputIsConnected("IN") && !GetInputData( "IN" ).uniform ) - return false; - return true; - } - - - // New system - public override void RefreshValue() { - RefreshValue( 1, 1 ); - } - - public override string[] ExtraPassedFloatProperties() { - return new string[]{ - "ChR", - "ChG", - "ChB", - "ChA" - }; - } - - public override string[] GetModalModes() { - return new string[]{ - "CC1", - "CC2", - "CC3", - "CC4" - }; - } - - public override void PrepareRendering( Material mat ) { - mat.SetFloat( "_chr", (int)components[0] ); - mat.SetFloat( "_chg", (int)components[1] ); - mat.SetFloat( "_chb", (int)components[2] ); - mat.SetFloat( "_cha", (int)components[3] ); - } - - public override string GetCurrentModalMode() { - if( components[1] == CompChannel.off ) - return "CC1"; - if( components[2] == CompChannel.off ) - return "CC2"; - if( components[3] == CompChannel.off ) - return "CC3"; - return "CC4"; - } - - public override string[] GetBlitOutputLines( string mode ) { - - string s = ""; - if( mode == "CC1" ) - s = "_in[_chr].xxxx"; - if( mode == "CC2" ) - s = "float4(_in[_chr],_in[_chg],0,0)"; - if( mode == "CC3" ) - s = "float4(_in[_chr],_in[_chg],_in[_chb],0)"; - if( mode == "CC4" ) - s = "float4(_in[_chr],_in[_chg],_in[_chb],_in[_cha])"; - - return new string[]{ s }; - } - - public override string Evaluate( OutChannel channel = OutChannel.All ) { - - //if( outCompCount == inCompCount ) - // return GetConnectorByStringID( "IN" ).TryEvaluate(); // Unchanged // No! - - - string componentString = "."; - - for( int i = 0; i < outCompCount; i++ ) { // Build component string - componentString += components[i].ToString(); - } - - return GetConnectorByStringID( "IN" ).TryEvaluate() + componentString; - } - - static string[] writtenNumber = new string[]{"first", "second", "third", "fourth"}; - - int outCompCount = 1; - int inCompCount = 4; - - public override void DrawLowerPropertyBox() { - - inCompCount = 4; - if( !connectors[1].IsConnected() ) { - GUI.enabled = false; - } else { - inCompCount = connectors[1].GetCompCount(); - if( inCompCount > 4 ) - inCompCount = 4; - } - - Rect r = lowerRect; - r.width /= 4; - - bool changed = false; - - EditorGUI.BeginChangeCheck(); - for( int i = 0; i < 4; i++ ) { - - - // Make sure they are valid - if((int)components[i] >= inCompCount){ - components[i] = (CompChannel)(inCompCount-1); - changed = true; - } - - - string[][] labels = (i == 0) ? compLabelsFirst : compLabels; - int labelOffset = (i == 0) ? 0 : -1; // When skipping OFF - - if(!GUI.enabled && i != 0) - components[i] = CompChannel.off; - - if(connectors[1].IsConnected()){ - - int curDisplayIndex = (int)components[i]-labelOffset; - string[] dispLabels = labels[inCompCount-1]; - GUI.color = chanColors[Mathf.Clamp((int)components[i]+1,0,4)]; - - components[i] = (CompChannel)(UndoablePopup( r, curDisplayIndex, dispLabels, "set "+writtenNumber[i]+" component mask channel", popupStyle )+labelOffset); - - //components[i] = (CompChannel)(EditorGUI.Popup( r, curDisplayIndex, dispLabels, popupStyle )+labelOffset); - } - - - if( components[i] == CompChannel.off ) - GUI.enabled = false; // Disable following buttons - - r.x += r.width; - } - - bool changedCompCount = UpdateOutCompCount(); - UpdateOutput(); - if( EditorGUI.EndChangeCheck() || changedCompCount || changed ) { - - OnUpdateNode(); - } - - - GUI.enabled = true; - - } - - bool UpdateOutCompCount() { // returns true if changed - int prev = outCompCount; - outCompCount = 0; - for( int i = 0; i < 4; i++ ) { - if( components[i] != CompChannel.off ) - outCompCount++; - } - if( outCompCount == 0 ) { - outCompCount = 1; - } - - if(outCompCount != prev) - return true; - return false; - - } - - void UpdateOutput() { - - // Set proper value types and component count - UpdateOutCompCount(); - texture.CompCount = outCompCount; - switch( outCompCount ) { - case 1: - connectors[0].valueType = ValueType.VTv1; - break; - case 2: - connectors[0].valueType = ValueType.VTv2; - break; - case 3: - connectors[0].valueType = ValueType.VTv3; - break; - case 4: - connectors[0].valueType = ValueType.VTv4; - break; - default: - connectors[0].valueType = ValueType.VTvPending; - texture.CompCount = 4; - break; - } - - - - // Rename the label - - string label = ""; - - if( connectors[0].valueType == ValueType.VTvPending ) { - label = "-"; - } else { - for( int i = 0; i < outCompCount; i++ ) { // Build component string - int id = (int)components[i]; - label += compLabels[3][id+1]; - } - } - connectors[0].label = label; - - connectors[0].color = outCompCount == 1 ? outputChanColors[Mathf.Clamp((int)components[0],0,3)] : SF_NodeConnector.colorEnabledDefault; - - - SF_NodeConnector inCon = GetConnectorByStringID( "IN" ); - if(inCon.IsConnected()){ - for(int i=0;i<4;i++){ - - if(i < outCompCount && outCompCount > 1){ - connectors[i+2].enableState = EnableState.Enabled; - } else { - connectors[i+2].enableState = EnableState.Hidden; - connectors[i+2].Disconnect(); - - } - - - int id = (int)components[i]; - connectors[i+2].label = compLabels[3][id+1]; - - connectors[i+2].color = outputChanColors[Mathf.Clamp(id,0,3)]; - } - - } - } - - - public override float EvalCPU( int c ) { - CompChannel channel = components[c]; // Get the channel the user selected for component i - if( channel == CompChannel.off ) { - if(outCompCount > 1) - return 0f; // Make remaining channels black if using more than one component - return GetInputData( "IN", (int)components[0] ); // Repeat same value when using one component - } - return GetInputData( "IN", (int)channel); - } - - public override string SerializeSpecialData() { - string s = ""; - s += "cc1:" + (int)components[0] + ","; - s += "cc2:" + (int)components[1] + ","; - s += "cc3:" + (int)components[2] + ","; - s += "cc4:" + (int)components[3]; - return s; - } - - public override void DeserializeSpecialData( string key, string value ) { - - switch( key ) { - case ( "cc1" ): - if(value == "4") - value = "-1"; - components[0] = (CompChannel)int.Parse( value ); - break; - case ( "cc2" ): - if(value == "4") - value = "-1"; - components[1] = (CompChannel)int.Parse( value ); - break; - case ( "cc3" ): - if(value == "4") - value = "-1"; - components[2] = (CompChannel)int.Parse( value ); - break; - case ( "cc4" ): - if(value == "4") - value = "-1"; - components[3] = (CompChannel)int.Parse( value ); - break; - } - - UpdateOutput(); - OnUpdateNode(); - } - - } -} \ No newline at end of file diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ComponentMask.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ComponentMask.cs.meta deleted file mode 100755 index 1b06d91f..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ComponentMask.cs.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: c5cee9180050a794790a872678f78ed5 -MonoImporter: - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ConstantClamp.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ConstantClamp.cs deleted file mode 100755 index 306a0c86..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ConstantClamp.cs +++ /dev/null @@ -1,126 +0,0 @@ -using UnityEngine; -using UnityEditor; -using System.Collections; -//using System; - -namespace ShaderForge { - - [System.Serializable] - public class SFN_ConstantClamp : SF_Node { - - // SF_Node tNode; - - public float min = 0f; - public float max = 1f; - - - public SFN_ConstantClamp() { - - } - - - public override void Initialize() { - base.Initialize( "Clamp (Simple)" ); - base.SearchName = "Clamp Simple"; - base.showColor = true; - UseLowerReadonlyValues( true ); - base.UseLowerPropertyBox( true, true ); - base.shaderGenMode = ShaderGenerationMode.ValuePassing; - - //SF_NodeConnection lerpCon; - connectors = new SF_NodeConnector[]{ - SF_NodeConnector.Create(this,"OUT","",ConType.cOutput,ValueType.VTvPending,false), - SF_NodeConnector.Create(this,"IN","",ConType.cInput,ValueType.VTvPending,false).SetRequired(true) - }; - - base.conGroup = ScriptableObject.CreateInstance().Initialize( connectors[0], connectors[1] ); - } - - public override void OnUpdateNode( NodeUpdateType updType, bool cascade = true ) { - if( InputsConnected() ) - RefreshValue( 1, 1 ); - base.OnUpdateNode( updType ); - } - - public override bool IsUniformOutput() { - return GetInputData( "IN" ).uniform; - } - - public override int GetEvaluatedComponentCount() { - return Mathf.Max( this["IN"].GetCompCount() ); - } - - public override string[] ExtraPassedFloatProperties() { - return new string[]{ - "ClampMin", - "ClampMax" - }; - } - - public override void PrepareRendering( Material mat ) { - mat.SetFloat( "_clampmin", min ); - mat.SetFloat( "_clampmax", max ); - } - - public override string[] GetBlitOutputLines( ) { - return new string[] { "clamp( _in, _clampmin, _clampmax )" }; - } - - /* - public void UndoableEnterableFloatField(Rect r, ref float value, string undoMessage, GUIStyle style){ - SF_GUI.EnterableFloatField(this, r, ref value, null ); - } -*/ - - - - public override void DrawLowerPropertyBox() { - - EditorGUI.BeginChangeCheck(); - Rect r = lowerRect; - r.width /= 4; - GUI.Label( r, "Min", EditorStyles.miniLabel ); - r.x += r.width; - //SF_GUI.EnterableFloatField(this, r, ref min, null ); - UndoableEnterableFloatField(r, ref min, "min value", null); - r.x += r.width; - GUI.Label( r, "Max", EditorStyles.miniLabel ); - r.x += r.width; - //SF_GUI.EnterableFloatField( this, r, ref max, null ); - UndoableEnterableFloatField(r, ref max, "max value", null); - - } - - - public override string Evaluate( OutChannel channel = OutChannel.All ) { - return "clamp(" + GetConnectorByStringID( "IN" ).TryEvaluate() + "," + min + "," + max + ")"; - } - - // TODO Expose more out here! - public override float EvalCPU( int c ) { - if( GetEvaluatedComponentCount() != 1 ) - if( c + 1 > GetEvaluatedComponentCount() ) - return 0f; - return Mathf.Clamp( GetInputData( "IN", c ), min, max ); - } - - public override string SerializeSpecialData() { - string s = "min:" + min + ","; - s += "max:" + max; - return s; - } - - public override void DeserializeSpecialData( string key, string value ) { - switch( key ) { - case "min": - min = float.Parse( value ); - break; - case "max": - max = float.Parse( value ); - break; - } - } - - - } -} \ No newline at end of file diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ConstantClamp.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ConstantClamp.cs.meta deleted file mode 100755 index c1003961..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ConstantClamp.cs.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: e17f3f3b88cf18843b95000bfd9c1bba -MonoImporter: - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ConstantLerp.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ConstantLerp.cs deleted file mode 100755 index ee86fbf9..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ConstantLerp.cs +++ /dev/null @@ -1,125 +0,0 @@ -using UnityEngine; -using UnityEditor; -using System.Collections; -//using System; - -namespace ShaderForge { - - [System.Serializable] - public class SFN_ConstantLerp : SF_Node { - - // SF_Node tNode; - - public float lerp_a = 0f; - public float lerp_b = 1f; - - - public SFN_ConstantLerp() { - - } - - - public override void Initialize() { - base.Initialize( "Lerp (Simple)" ); - base.SearchName = "Lerp Simple"; - base.showColor = true; - UseLowerReadonlyValues( true ); - base.UseLowerPropertyBox( true, true ); - base.shaderGenMode = ShaderGenerationMode.ValuePassing; - - //SF_NodeConnection lerpCon; - connectors = new SF_NodeConnector[]{ - SF_NodeConnector.Create(this,"OUT","",ConType.cOutput,ValueType.VTvPending,false), - SF_NodeConnector.Create(this,"IN","T",ConType.cInput,ValueType.VTvPending,false).SetRequired(true) - }; - - base.conGroup = ScriptableObject.CreateInstance().Initialize( connectors[0], connectors[1] ); - } - - public override void OnUpdateNode( NodeUpdateType updType, bool cascade = true ) { - if( InputsConnected() ) - RefreshValue( 1, 1 ); - base.OnUpdateNode( updType ); - } - - public override bool IsUniformOutput() { - return GetInputData( "IN" ).uniform; - } - - public override int GetEvaluatedComponentCount() { - return Mathf.Max( this["IN"].GetCompCount() ); - } - - - - public override string[] ExtraPassedFloatProperties() { - return new string[]{ - "LerpA", - "LerpB" - }; - } - - public override void PrepareRendering( Material mat ) { - mat.SetFloat( "_lerpa", lerp_a ); - mat.SetFloat( "_lerpb", lerp_b ); - } - - public override string[] GetBlitOutputLines( ) { - return new string[] { "lerp(_lerpa, _lerpb, _in)" }; - } - - - - public override void DrawLowerPropertyBox() { - - //EditorGUI.BeginChangeCheck(); - Rect r = lowerRect; - r.width /= 8; - GUI.Label( r, "A" ); - r.x += r.width; - r.width *= 3; - //SF_GUI.EnterableFloatField(this, r, ref lerp_a, null ); - UndoableEnterableFloatField(r, ref lerp_a, "A value",null); - r.x += r.width; - r.width /= 3; - GUI.Label( r, "B" ); - r.x += r.width; - r.width *= 3; - //SF_GUI.EnterableFloatField( this, r, ref lerp_b, null ); - UndoableEnterableFloatField(r, ref lerp_b, "B value",null); - - } - - - public override string Evaluate( OutChannel channel = OutChannel.All ) { - return "lerp(" + lerp_a + "," + lerp_b + "," + GetConnectorByStringID( "IN" ).TryEvaluate() + ")"; - } - - public override float EvalCPU( int c ) { - return Lerp( lerp_a, lerp_b, GetInputData( "IN", c ) ); - } - - public float Lerp( float a, float b, float t ) { - return ( ( 1f - t ) * a + t * b ); - } - - public override string SerializeSpecialData() { - string s = "a:" + lerp_a + ","; - s += "b:" + lerp_b; - return s; - } - - public override void DeserializeSpecialData( string key, string value ) { - switch( key ) { - case "a": - lerp_a = float.Parse( value ); - break; - case "b": - lerp_b = float.Parse( value ); - break; - } - } - - - } -} \ No newline at end of file diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ConstantLerp.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ConstantLerp.cs.meta deleted file mode 100755 index d6332e5d..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ConstantLerp.cs.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: 922be1943b72bf34ab001061c89b1aa8 -MonoImporter: - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Cos.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Cos.cs deleted file mode 100755 index 048aa935..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Cos.cs +++ /dev/null @@ -1,26 +0,0 @@ -using UnityEngine; - -namespace ShaderForge { - - [System.Serializable] - public class SFN_Cos : SF_Node_Arithmetic { - - public SFN_Cos() { - } - - public override void Initialize() { - base.Initialize( "Cos" ); - base.PrepareArithmetic( 1 ); - base.shaderGenMode = ShaderGenerationMode.SimpleFunction; - } - - public override string Evaluate( OutChannel channel = OutChannel.All ) { - return "cos(" + GetConnectorByStringID( "IN" ).TryEvaluate() + ")"; - } - - public override float EvalCPU( int c ) { - return Mathf.Cos( GetInputData( "IN", c ) ); - } - - } -} \ No newline at end of file diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Cos.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Cos.cs.meta deleted file mode 100755 index 9139ce4b..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Cos.cs.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: 980e537a5b3f41d43a7ed5b48d568bc4 -MonoImporter: - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Cross.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Cross.cs deleted file mode 100755 index a92c095c..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Cross.cs +++ /dev/null @@ -1,36 +0,0 @@ -using UnityEngine; - -namespace ShaderForge { - - [System.Serializable] - public class SFN_Cross : SF_Node_Arithmetic { - - public SFN_Cross() { - - } - - public override void Initialize() { - base.Initialize( "Cross" ); - base.PrepareArithmetic( 2, ValueType.VTv3, ValueType.VTv3 ); - base.shaderGenMode = ShaderGenerationMode.CustomFunction; - } - - public override int GetEvaluatedComponentCount() { - return 3; - } - - public override string[] GetBlitOutputLines() { - return new string[] { "float4(cross(_a.xyz,_b.xyz),0);" }; - } - - public override string Evaluate( OutChannel channel = OutChannel.All ) { - return "cross(" + GetConnectorByStringID( "A" ).TryEvaluate() + "," + GetConnectorByStringID( "B" ).TryEvaluate() + ")"; - } - - public override Vector4 EvalCPU() { - return SF_Tools.Cross( GetInputData( "A" ).dataUniform, GetInputData( "B" ).dataUniform ); - } - - - } -} \ No newline at end of file diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Cross.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Cross.cs.meta deleted file mode 100755 index 5f1377ab..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Cross.cs.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: 859cb746c02cece4a83a6c8ac12751c8 -MonoImporter: - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Cubemap.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Cubemap.cs deleted file mode 100755 index 0991951b..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Cubemap.cs +++ /dev/null @@ -1,203 +0,0 @@ -using UnityEngine; -using UnityEditor; -using System.Collections; -using System.Reflection; -using System; - -namespace ShaderForge { - - [System.Serializable] - public class SFN_Cubemap : SF_Node { - - - public Cubemap cubemapAsset; - Texture2D textureAsset; - - - public CubemapFace previewFace; - - public SFN_Cubemap() { - - } - - - public override void Initialize() { - base.Initialize( "Cubemap" ); - base.UseLowerPropertyBox( true, true ); - base.texture.CompCount = 4; - property = ScriptableObject.CreateInstance().Initialize( this ); - - connectors = new SF_NodeConnector[]{ - SF_NodeConnector.Create(this,"DIR","DIR",ConType.cInput,ValueType.VTv3), - SF_NodeConnector.Create(this,"MIP","MIP",ConType.cInput,ValueType.VTv1), - SF_NodeConnector.Create(this,"RGB","RGB",ConType.cOutput,ValueType.VTv3) .Outputting(OutChannel.RGB), - SF_NodeConnector.Create(this,"R","R",ConType.cOutput, ValueType.VTv1) .WithColor(Color.red) .Outputting(OutChannel.R), - SF_NodeConnector.Create(this,"G","G",ConType.cOutput,ValueType.VTv1) .WithColor(Color.green) .Outputting(OutChannel.G), - SF_NodeConnector.Create(this,"B","B",ConType.cOutput,ValueType.VTv1) .WithColor(Color.blue) .Outputting(OutChannel.B), - SF_NodeConnector.Create(this,"A","A",ConType.cOutput,ValueType.VTv1) .Outputting(OutChannel.A) - }; - } - - - public override bool IsUniformOutput() { - return false; - } - - // TODO: MIP selection - public override string Evaluate( OutChannel channel = OutChannel.All ) { - - - //float3 reflectDirection = reflect( -viewDirection, normalDirection ); - - string DIR = GetInputIsConnected( "DIR" ) ? GetConnectorByStringID( "DIR" ).TryEvaluate() : "viewReflectDirection"; - string func = GetInputIsConnected( "MIP" ) ? "texCUBElod" : "texCUBE"; - - if( GetInputIsConnected( "MIP" ) ) { - DIR = "float4(" + DIR + "," + GetConnectorByStringID( "MIP" ).TryEvaluate() + ")"; - } - - string s = func + "(" + property.GetVariable() + "," + DIR + ")"; - - return s; - } - - // TODO: EditorUtility.SetTemporarilyAllowIndieRenderTexture(true); - - - - - - public void RenderToTexture() { - - if( cubemapAsset == null ) { - Debug.Log( "Cubemap asset missing" ); - return; - } - - Texture2D tex = new Texture2D( cubemapAsset.width, cubemapAsset.height, TextureFormat.ARGB32, false ); - try{ - tex.SetPixels( cubemapAsset.GetPixels( previewFace ) ); - } catch( Exception e ) { - Debug.LogWarning("Cubemap texture preview failed: " + e.ToString()); - } - - tex.Apply(); - - - RenderTexture rt = new RenderTexture( cubemapAsset.width, cubemapAsset.height, 24, RenderTextureFormat.ARGB32, RenderTextureReadWrite.Default ); - rt.Create(); - Graphics.Blit( tex/*cubemapAsset/*GetTextureFaceAsset(CubemapFace.PositiveZ)*/, rt ); - RenderTexture.active = rt; - // The data is now in the RT, in an arbitrary res - // TODO: Sample it with normalized coords down into a 128x128 - // Save it temporarily in a texture - Texture2D temp = new Texture2D( cubemapAsset.width, cubemapAsset.height, TextureFormat.ARGB32, false ); - temp.ReadPixels( new Rect( 0, 0, cubemapAsset.width, cubemapAsset.height ), 0, 0 ); - - RenderTexture.active = null; - rt.Release(); // Remove RT - texture.ReadData( temp ); // Read Data from temp texture - UnityEngine.Object.DestroyImmediate( temp ); // Destroy temp texture - - } - - - public Texture GetTextureFaceAsset( CubemapFace face ) { - if( cubemapAsset == null ) - return null; - - // Reflection of this: - // TextureUtil.GetSourceTexture(Cubemap cubemapRef, CubemapFace face); - Debug.Log( "GET FACE ASSET:" ); - Type textureUtil = Type.GetType( "UnityEditor.TextureUtil,UnityEditor" ); - Debug.Log( "textureUtil = " + textureUtil ); - BindingFlags bfs = BindingFlags.Public | BindingFlags.NonPublic | BindingFlags.Static; - MethodInfo getSourceTexture = textureUtil.GetMethod( "GetSourceTexture", bfs, null, new Type[] { typeof( Cubemap ), typeof( CubemapFace ) }, null ); - Debug.Log( "getSourceTexture = " + getSourceTexture ); - Texture2D tex = (Texture2D)getSourceTexture.Invoke( null, new object[] { cubemapAsset, face } ); - Debug.Log( "tex = " + tex ); - - return tex; - } - - public override void OnDelete() { - cubemapAsset = null; - } - - - public override bool Draw() { - ProcessInput(); - DrawHighlight(); - PrepareWindowColor(); - DrawWindow(); - ResetWindowColor(); - return true;//!CheckIfDeleted(); - } - - public override void NeatWindow( ) { - - GUI.skin.box.clipping = TextClipping.Overflow; - - GUI.BeginGroup( rect ); - - EditorGUI.BeginChangeCheck(); - DrawLowerPropertyBox(); - bool changedFace = EditorGUI.EndChangeCheck(); - - //GUI.DragWindow(); - - EditorGUI.BeginChangeCheck(); - - Cubemap newCubemap = (Cubemap)EditorGUI.ObjectField( rectInner, cubemapAsset, typeof( Cubemap ), false ); - if(newCubemap != cubemapAsset){ - if(newCubemap == null){ - UndoRecord("unassign cubemap from " + property.nameDisplay); - } else { - UndoRecord("switch cubemap to " + newCubemap.name + " in " + property.nameDisplay); - } - cubemapAsset = newCubemap; - } - - - - if( changedFace || EditorGUI.EndChangeCheck() ) { - RenderToTexture(); - OnUpdateNode(); - } - GUI.EndGroup(); - - } - - public override void DrawLowerPropertyBox() { - PrepareWindowColor(); - previewFace = (CubemapFace)UndoableEnumPopup(lowerRect, previewFace, "switch displayed cubemap face"); - //previewFace = (CubemapFace)EditorGUI.EnumPopup( lowerRect, previewFace ); - ResetWindowColor(); - } - - public override string SerializeSpecialData() { - string s = property.Serialize() + ","; - if( cubemapAsset != null ) - s += "cube:" + SF_Tools.AssetToGUID( cubemapAsset ) + ","; - s += "pvfc:" + (int)previewFace; - return s; - } - - public override void DeserializeSpecialData( string key, string value ) { - property.Deserialize( key, value ); - switch( key ) { - case "cube": - cubemapAsset = (Cubemap)SF_Tools.GUIDToAsset( value, typeof( Cubemap ) ); - break; - case "pvfc": - previewFace = (CubemapFace)int.Parse( value ); - break; - } - if( cubemapAsset != null ) - RenderToTexture(); - - } - - - } -} diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Cubemap.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Cubemap.cs.meta deleted file mode 100755 index 3674ea77..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Cubemap.cs.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: d192fbfcd1bab084691cf8513ba322fd -MonoImporter: - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_DDX.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_DDX.cs deleted file mode 100644 index 7357e40b..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_DDX.cs +++ /dev/null @@ -1,26 +0,0 @@ -using UnityEngine; - -namespace ShaderForge { - - [System.Serializable] - public class SFN_DDX : SF_Node_Arithmetic { - - public SFN_DDX() { - } - - public override void Initialize() { - base.Initialize( "DDX" ); - base.PrepareArithmetic( 1 ); - base.shaderGenMode = ShaderGenerationMode.SimpleFunction; - } - - public override string Evaluate( OutChannel channel = OutChannel.All ) { - return "ddx(" + GetConnectorByStringID( "IN" ).TryEvaluate() + ")"; - } - - public override float EvalCPU( int c ) { - return GetInputData( "IN", c ); - } - - } -} \ No newline at end of file diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_DDX.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_DDX.cs.meta deleted file mode 100644 index ad4aa268..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_DDX.cs.meta +++ /dev/null @@ -1,9 +0,0 @@ -fileFormatVersion: 2 -guid: 99860db2c026be84f80f5b2108261fff -MonoImporter: - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_DDXY.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_DDXY.cs deleted file mode 100644 index 99d29841..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_DDXY.cs +++ /dev/null @@ -1,30 +0,0 @@ -using UnityEngine; - -namespace ShaderForge { - - [System.Serializable] - public class SFN_DDXY : SF_Node_Arithmetic { - - public SFN_DDXY() { - } - - public override void Initialize() { - base.Initialize( "DDXY" ); - base.PrepareArithmetic( 1 ); - base.shaderGenMode = ShaderGenerationMode.CustomFunction; - } - - public override string[] GetBlitOutputLines() { - return new string[] { "fwidth(_in)" }; - } - - public override string Evaluate( OutChannel channel = OutChannel.All ) { - return "fwidth(" + GetConnectorByStringID( "IN" ).TryEvaluate() + ")"; - } - - public override float EvalCPU( int c ) { - return GetInputData( "IN", c ); - } - - } -} \ No newline at end of file diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_DDXY.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_DDXY.cs.meta deleted file mode 100644 index 87b2aece..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_DDXY.cs.meta +++ /dev/null @@ -1,12 +0,0 @@ -fileFormatVersion: 2 -guid: 0a3921307ddb3d544a630d3475e57bb3 -timeCreated: 1443603932 -licenseType: Pro -MonoImporter: - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_DDY.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_DDY.cs deleted file mode 100644 index 986fa974..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_DDY.cs +++ /dev/null @@ -1,26 +0,0 @@ -using UnityEngine; - -namespace ShaderForge { - - [System.Serializable] - public class SFN_DDY : SF_Node_Arithmetic { - - public SFN_DDY() { - } - - public override void Initialize() { - base.Initialize( "DDY" ); - base.PrepareArithmetic( 1 ); - base.shaderGenMode = ShaderGenerationMode.SimpleFunction; - } - - public override string Evaluate( OutChannel channel = OutChannel.All ) { - return "ddy(" + GetConnectorByStringID( "IN" ).TryEvaluate() + ")"; - } - - public override float EvalCPU( int c ) { - return GetInputData( "IN", c ); - } - - } -} \ No newline at end of file diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_DDY.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_DDY.cs.meta deleted file mode 100644 index d59de2f4..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_DDY.cs.meta +++ /dev/null @@ -1,9 +0,0 @@ -fileFormatVersion: 2 -guid: 120c745ac37b86a42863ba7882f193eb -MonoImporter: - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Depth.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Depth.cs deleted file mode 100755 index d05ca2fe..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Depth.cs +++ /dev/null @@ -1,37 +0,0 @@ -using UnityEngine; -using UnityEditor; -using System.Collections; - -namespace ShaderForge { - - [System.Serializable] - public class SFN_Depth : SF_Node { - - - public SFN_Depth() { - - } - - public override void Initialize() { - base.Initialize( "Depth", InitialPreviewRenderMode.BlitSphere ); - base.showColor = true; - base.UseLowerPropertyBox( false ); - base.texture.CompCount = 1; - base.neverDefineVariable = true; - connectors = new SF_NodeConnector[]{ - SF_NodeConnector.Create(this,"OUT","",ConType.cOutput,ValueType.VTv1) - }; - } - - public override Vector4 EvalCPU() { - return new Color( 0.3f, 0.6f, 0.3f, 1f ); - } - - // (mul( UNITY_MATRIX_V, float4((_WorldSpaceCameraPos.rgb-i.posWorld.rgb),0) ).b - _ProjectionParams.g) - - public override string Evaluate( OutChannel channel = OutChannel.All ) { - return "partZ"; - } - - } -} \ No newline at end of file diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Depth.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Depth.cs.meta deleted file mode 100644 index 3541f1f4..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Depth.cs.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: 13975082ad41249e4a2ea11f1a3a309f -MonoImporter: - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_DepthBlend.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_DepthBlend.cs deleted file mode 100755 index 1edc1e2c..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_DepthBlend.cs +++ /dev/null @@ -1,43 +0,0 @@ -using UnityEngine; -using UnityEditor; -using System.Collections; - -namespace ShaderForge { - - [System.Serializable] - public class SFN_DepthBlend : SF_Node { - - - public SFN_DepthBlend() { - - } - - public override void Initialize() { - base.Initialize( "Depth Blend" ); - base.showColor = true; - base.UseLowerPropertyBox( false ); - base.texture.CompCount = 1; - connectors = new SF_NodeConnector[]{ - SF_NodeConnector.Create(this,"OUT","",ConType.cOutput,ValueType.VTv1), - SF_NodeConnector.Create(this,"DIST","Dist",ConType.cInput,ValueType.VTv1), - }; - } - - public override Vector4 EvalCPU() { - return new Color( 0.3f, 0.6f, 0.3f, 1f ); - } - - public override string Evaluate( OutChannel channel = OutChannel.All ) { - - string dist = ""; - - if( GetConnectorByStringID("DIST").IsConnected()){ - dist = "/" + GetInputCon("DIST").TryEvaluate(); - } - - - return "saturate((sceneZ-partZ)" + dist + ")"; - } - - } -} \ No newline at end of file diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_DepthBlend.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_DepthBlend.cs.meta deleted file mode 100644 index 07dba0a3..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_DepthBlend.cs.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: e6258458743164db7896c9d9beb16a00 -MonoImporter: - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Desaturate.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Desaturate.cs deleted file mode 100755 index 1cabc8fe..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Desaturate.cs +++ /dev/null @@ -1,112 +0,0 @@ -using UnityEngine; -using UnityEditor; -using System.Collections; -//using System; - -namespace ShaderForge { - - [System.Serializable] - public class SFN_Desaturate : SF_Node { - - // SF_Node tNode; - - public SFN_Desaturate() { - - } - - - public override void Initialize() { - base.Initialize( "Desaturate" ); - base.showColor = true; - base.shaderGenMode = ShaderGenerationMode.Modal; - UseLowerReadonlyValues( true ); - - //SF_NodeConnection lerpCon; - connectors = new SF_NodeConnector[]{ - SF_NodeConnector.Create(this,"OUT","",ConType.cOutput,ValueType.VTvPending,false), - SF_NodeConnector.Create(this,"COL","Col",ConType.cInput,ValueType.VTvPending,false).SetRequired(true).TypecastTo(3), - SF_NodeConnector.Create(this,"DES","Des",ConType.cInput,ValueType.VTv1,false).SetRequired(false) - }; - - base.conGroup = ScriptableObject.CreateInstance().Initialize( connectors[0], connectors[1] ); - (conGroup as SFNCG_Arithmetic).lockedOutput = true; - - } - - public override void OnUpdateNode( NodeUpdateType updType, bool cascade = true ) { - if(GetEvaluatedComponentCount() == 3){ - this["OUT"].valueType = ValueType.VTv3; - } else { - this["OUT"].valueType = ValueType.VTv1; - } - if( InputsConnected() ) - RefreshValue( 1, 2 ); - base.OnUpdateNode( updType ); - } - - public override bool IsUniformOutput() { - if(this["DES"].IsConnected()) - return ( GetInputData( "COL" ).uniform && GetInputData( "DES" ).uniform ); - return GetInputData( "COL" ).uniform; - } - - public override int GetEvaluatedComponentCount() { - return this["DES"].IsConnected() ? 3 : 1; - } - - public override string[] GetModalModes() { - return new string[]{ - "REQONLY", - "DES" - }; - } - - public override string GetCurrentModalMode() { - if( GetInputIsConnected( "DES" ) ) { - return "DES"; - } - return "REQONLY"; - } - - public override string[] GetBlitOutputLines( string mode ) { - - string dotStr = "dot(_col,float3(0.3,0.59,0.11))"; - - if( mode == "DES" ) { - dotStr = "lerp(_col, " + dotStr + ".xxxx, _des)"; - } - - return new string[]{ dotStr }; - } - - public override string Evaluate( OutChannel channel = OutChannel.All ) { - - string col = GetInputCon( "COL" ).Evaluate(); - string lum = "float3(0.3,0.59,0.11)"; - string dot = "dot("+col+","+lum+")"; - - if( this["DES"].IsConnected() ) { - string desat = GetInputCon( "DES" ).Evaluate(); - return "lerp(" + col + "," + dot + "," + desat + ")"; - } else { - return dot; // Fully desaturated - } - } - - public override Vector4 EvalCPU() { - - Vector4 col = GetInputData( "COL" ).dataUniform; - Vector4 lum = new Color( 0.3f, 0.59f, 0.11f, 0f ); - Vector4 dot = Vector4.Dot( col, lum ) * Vector4.one; - - float desat = 1f; - if( this["DES"].IsConnected() ) { - desat = GetInputData( "DES" ).dataUniform[0]; - } - - return Vector4.Lerp( col, dot, desat ); - } - - - } -} \ No newline at end of file diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Desaturate.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Desaturate.cs.meta deleted file mode 100755 index bdb4d917..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Desaturate.cs.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: 9ebe66cf4036ce547a0fc395d515f199 -MonoImporter: - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Distance.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Distance.cs deleted file mode 100755 index c96a2d28..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Distance.cs +++ /dev/null @@ -1,52 +0,0 @@ -using UnityEngine; - -namespace ShaderForge { - - [System.Serializable] - public class SFN_Distance : SF_Node_Arithmetic { - - public SFN_Distance() { - - } - - public override void Initialize() { - base.Initialize( "Distance" ); - base.PrepareArithmetic( 2, ValueType.VTvPending, ValueType.VTv1 ); - base.shaderGenMode = ShaderGenerationMode.SimpleFunction; - ( base.conGroup as SFNCG_Arithmetic ).LockOutType(); - - } - - public override int GetEvaluatedComponentCount() { - return 1; - } - - public override string Evaluate( OutChannel channel = OutChannel.All ) { - return "distance(" + GetConnectorByStringID( "A" ).TryEvaluate() + "," + GetConnectorByStringID( "B" ).TryEvaluate() + ")"; - } - - public override Vector4 EvalCPU() { - - float dist = 0f; - switch( Mathf.Max( GetInputData( "A" ).CompCount, GetInputData( "B" ).CompCount ) ) { - case 1: - dist = Mathf.Abs( GetInputData( "A" ).dataUniform[0] - GetInputData( "B" ).dataUniform[0] ); - break; - case 2: - dist = ( ( (Vector2)GetInputData( "A" ).dataUniform ) - ( (Vector2)GetInputData( "B" ).dataUniform ) ).magnitude; - break; - case 3: - dist = ( ( (Vector3)GetInputData( "A" ).dataUniform ) - ( (Vector3)GetInputData( "B" ).dataUniform ) ).magnitude; - break; - default: - dist = ( GetInputData( "A" ).dataUniform - GetInputData( "B" ).dataUniform ).magnitude; - break; - } - - return dist * Vector4.one; - - } - - - } -} \ No newline at end of file diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Distance.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Distance.cs.meta deleted file mode 100755 index eb1c1364..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Distance.cs.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: 43af2b1572b552e418281a533a9719eb -MonoImporter: - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Divide.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Divide.cs deleted file mode 100755 index 887fcfdb..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Divide.cs +++ /dev/null @@ -1,43 +0,0 @@ -using UnityEngine; -using UnityEditor; -using System.Collections; -using System; - -namespace ShaderForge { - - [System.Serializable] - public class SFN_Divide : SF_Node_Arithmetic { - - public SFN_Divide() { - - } - - public override void Initialize() { - base.Initialize( "Divide" ); - base.PrepareArithmetic(); - base.shaderGenMode = ShaderGenerationMode.CustomFunction; - } - - public override string Evaluate( OutChannel channel = OutChannel.All ) { - return "(" + GetConnectorByStringID( "A" ).TryEvaluate() + "/" + GetConnectorByStringID( "B" ).TryEvaluate() + ")"; - } - - public override string[] GetBlitOutputLines() { - return new string[] { "_a/_b" }; - } - - public override float EvalCPU( int c ) { - float a = GetInputData( "A", c ); - float b = GetInputData( "B", c ); - - if( b == 0f ) { - if( a == 0f ) - return 1f; - return ( a > 0 ? float.MaxValue : float.MinValue ); - } - return a / b; - } - - - } -} \ No newline at end of file diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Divide.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Divide.cs.meta deleted file mode 100755 index 5a69ffea..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Divide.cs.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: b453280af8376424fa6c495f5b4d5ab1 -MonoImporter: - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Dot.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Dot.cs deleted file mode 100755 index 084674e8..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Dot.cs +++ /dev/null @@ -1,137 +0,0 @@ -using UnityEngine; -using UnityEditor; -using System.Collections; -using System; - -namespace ShaderForge { - - [System.Serializable] - public class SFN_Dot : SF_Node_Arithmetic { - - - public enum DotType { Standard, Positive, Negative, Abs, Normalized }; - public DotType dotType = DotType.Standard; - - public SFN_Dot() { - - } - - public override void Initialize() { - base.Initialize( "Dot" ); - base.texture.CompCount = 1; - base.UseLowerPropertyBox( true, true ); - base.PrepareArithmetic(2, ValueType.VTvPending, ValueType.VTv1); - base.shaderGenMode = ShaderGenerationMode.Modal; - ( base.conGroup as SFNCG_Arithmetic ).LockOutType(); - } - - public override int GetEvaluatedComponentCount() { - return 1; - } - - public override string[] GetModalModes() { - return new string[]{ - "STD", - "POS", - "NEG", - "ABS", - "NRM" - }; - } - - public override string GetCurrentModalMode() { - if( dotType == DotType.Positive ) - return "POS"; - if( dotType == DotType.Negative ) - return "NEG"; - if( dotType == DotType.Abs ) - return "ABS"; - if( dotType == DotType.Normalized ) - return "NRM"; - //if( dotType == DotType.Standard ) - return "STD"; - } - - public override string[] GetBlitOutputLines( string mode ) { - string dotStr = "dot(_a, _b)"; - switch( mode ) { - case "POS": - dotStr = "max(0," + dotStr + ")"; - break; - case "NEG": - dotStr = "min(0," + dotStr + ")"; - break; - case "ABS": - dotStr = "abs(" + dotStr + ")"; - break; - case "NRM": - dotStr = "0.5*" + dotStr + "+0.5"; - break; - } - return new string[]{dotStr}; - } - - public override string Evaluate( OutChannel channel = OutChannel.All ) { - - string dotStr = "dot(" + GetConnectorByStringID( "A" ).TryEvaluate() + "," + GetConnectorByStringID( "B" ).TryEvaluate() + ")"; - switch( dotType ) { - case DotType.Positive: - return "max(0," + dotStr + ")"; - case DotType.Negative: - return "min(0," + dotStr + ")"; - case DotType.Abs: - return "abs(" + dotStr + ")"; - case DotType.Normalized: - return "0.5*" + dotStr + "+0.5"; - } - return dotStr; - } - - public override Vector4 EvalCPU() { - - - int cc = Mathf.Max(GetInputCon("A").GetCompCount(), GetInputCon("B").GetCompCount()); - - float dot = SF_Tools.Dot( GetInputData( "A" ).dataUniform, GetInputData( "B" ).dataUniform, cc ); - - switch( dotType ) { - case DotType.Positive: - dot = Mathf.Max(0f,dot); - break; - case DotType.Negative: - dot = Mathf.Min(0f,dot); - break; - case DotType.Abs: - dot = Mathf.Abs(dot); - break; - case DotType.Normalized: - dot = 0.5f*dot+0.5f; - break; - } - - return dot * Vector4.one; - } - - public override void DrawLowerPropertyBox() { - EditorGUI.BeginChangeCheck(); - dotType = (DotType)UndoableEnumPopup( lowerRect, dotType, "dot product type" ); - if( EditorGUI.EndChangeCheck() ) - OnUpdateNode(); - } - - public override string SerializeSpecialData() { - return "dt:" + (int)dotType; - } - - public override void DeserializeSpecialData( string key, string value ) { - switch( key ) { - case "dt": - dotType = (DotType)int.Parse( value ); - break; - } - } - - - - } -} \ No newline at end of file diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Dot.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Dot.cs.meta deleted file mode 100755 index fc43bb34..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Dot.cs.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: 3d9849bf37434cb4da9729daf6ad3333 -MonoImporter: - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_E.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_E.cs deleted file mode 100755 index 3e29e910..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_E.cs +++ /dev/null @@ -1,20 +0,0 @@ -using UnityEngine; -using UnityEditor; -using System.Collections; - -namespace ShaderForge { - - [System.Serializable] - public class SFN_E : SFN_Node_Constant { - - public SFN_E() { - } - - public override void Initialize() { - base.Initialize( "e" ); - base.SearchName = "EulersConstant"; - base.PrepareConstant( "const_e", "2.718281828459" ); - } - - } -} \ No newline at end of file diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_E.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_E.cs.meta deleted file mode 100755 index 04976c08..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_E.cs.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: 5e6843ca855bad643a35c23873e0a2ab -MonoImporter: - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Exp.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Exp.cs deleted file mode 100755 index 0fb6f2f7..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Exp.cs +++ /dev/null @@ -1,93 +0,0 @@ -using UnityEngine; -using UnityEditor; -using System.Collections; -using System; - -namespace ShaderForge { - - [System.Serializable] - public class SFN_Exp : SF_Node_Arithmetic { - - - public enum ExpType { Exp, Exp2 }; - public ExpType expType = ExpType.Exp; - - public SFN_Exp() { - - } - - public override void Initialize() { - base.Initialize( "Exp" ); - base.UseLowerPropertyBox( true, true ); - base.PrepareArithmetic( 1, ValueType.VTvPending, ValueType.VTvPending ); - } - - public override string Evaluate( OutChannel channel = OutChannel.All ) { - - string inner = GetConnectorByStringID( "IN" ).TryEvaluate(); - switch( expType ) { - case ExpType.Exp: - return "exp(" + inner + ")"; - case ExpType.Exp2: - return "exp2(" + inner + ")"; - } - - return inner; - } - - public override string[] GetModalModes() { - return new string[]{ - "EXP", - "EXP2" - }; - } - - public override string GetCurrentModalMode() { - if( expType == ExpType.Exp2) - return "EXP2"; - return "EXP"; - } - - public override string[] GetBlitOutputLines( string mode ) { - return new string[]{ mode.ToLower() + "(_in)" }; - } - - public override float EvalCPU( int c ) { - - float inpDt = GetInputData( "IN", c ); - - switch( expType ) { - case ExpType.Exp: - inpDt = Mathf.Pow( 2.718281828459f, inpDt ); - break; - case ExpType.Exp2: - inpDt = Mathf.Pow( 2f, inpDt ); - break; - } - - return inpDt; - } - - public override void DrawLowerPropertyBox() { - EditorGUI.BeginChangeCheck(); - expType = (ExpType)EditorGUI.EnumPopup( lowerRect, expType ); - if( EditorGUI.EndChangeCheck() ) - OnUpdateNode(); - } - - public override string SerializeSpecialData() { - return "et:" + (int)expType; - } - - public override void DeserializeSpecialData( string key, string value ) { - switch( key ) { - case "et": - expType = (ExpType)int.Parse( value ); - break; - } - } - - - - } -} \ No newline at end of file diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Exp.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Exp.cs.meta deleted file mode 100755 index 139a4f00..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Exp.cs.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: 41a3320367346d84b9d27af7538971a8 -MonoImporter: - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_FaceSign.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_FaceSign.cs deleted file mode 100644 index 169e00c6..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_FaceSign.cs +++ /dev/null @@ -1,93 +0,0 @@ -using UnityEngine; -using UnityEditor; -using System.Collections; - -namespace ShaderForge { - - [System.Serializable] - public class SFN_FaceSign : SF_Node { - - - public enum FaceSignType { ZeroAndOne = 0, PlusMinusOne = 1 }; - public static string[] faceSignTypeStr = new string[] { "1 and 0", "1 and -1" }; - public FaceSignType currentType = FaceSignType.ZeroAndOne; - - public SFN_FaceSign() { - - } - - public override void Initialize() { - base.Initialize( "Face Sign", InitialPreviewRenderMode.BlitQuad ); - base.showColor = true; - base.UseLowerPropertyBox( true, true ); - UpdateIcon(); - base.texture.CompCount = 1; - base.neverDefineVariable = true; - base.shaderGenMode = ShaderGenerationMode.Manual; - connectors = new SF_NodeConnector[]{ - SF_NodeConnector.Create(this,"VFACE","",ConType.cOutput,ValueType.VTv1,false) - }; - texture.dataUniform = Color.white; - } - - public override bool IsUniformOutput() { - return true; - } - - public void UpdateIcon() { - base.texture.SetIconId( (int)currentType ); - } - - public override Vector4 EvalCPU() { - float v = 1; - return new Color( v, v, v ); - } - - public override float EvalCPU( int c ) { - return 1f; - } - - public override void DrawLowerPropertyBox() { - GUI.color = Color.white; - EditorGUI.BeginChangeCheck(); - //currentType = (ScreenPosType)EditorGUI.EnumPopup( lowerRect, currentType ); - currentType = (FaceSignType)UndoableEnumPopupNamed(lowerRect, (int)currentType, faceSignTypeStr, "switch face sign type"); - if( EditorGUI.EndChangeCheck() ) { - UpdateIcon(); - OnUpdateNode(); - } - - } - - public override void PrepareRendering( Material mat ) { - mat.SetFloat( "_BackfaceValue", currentType == FaceSignType.PlusMinusOne ? -1 : 0 ); - } - - - public override string Evaluate( OutChannel channel = OutChannel.All ) { - // NeedSceneUVs() - switch(currentType){ - case FaceSignType.ZeroAndOne: - return "isFrontFace"; - case FaceSignType.PlusMinusOne: - return "faceSign"; - } - Debug.LogError("Invalid face sign category"); - return ""; - } - - public override string SerializeSpecialData() { - return "fstp:" + (int)currentType; - } - - public override void DeserializeSpecialData( string key, string value ) { - switch( key ) { - case "fstp": - currentType = (FaceSignType)int.Parse( value ); - UpdateIcon(); - break; - } - } - - } -} \ No newline at end of file diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_FaceSign.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_FaceSign.cs.meta deleted file mode 100644 index ef15a608..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_FaceSign.cs.meta +++ /dev/null @@ -1,12 +0,0 @@ -fileFormatVersion: 2 -guid: f7d4222ab5faa9d4d9fc3dde7dec26b3 -timeCreated: 1439889392 -licenseType: Pro -MonoImporter: - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Final.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Final.cs deleted file mode 100755 index 06f17db4..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Final.cs +++ /dev/null @@ -1,100 +0,0 @@ -using UnityEngine; -using System.Collections; - -namespace ShaderForge { - - [System.Serializable] - public class SFN_Final : SF_Node { - - - - - public SF_NodeConnector - diffuse - , specular - , gloss - , normal - , emissive - , alpha - , alphaClip - , diffusePower - , refraction - , transmission - , lightWrap - , ambientDiffuse - , ambientSpecular - , diffuseOcclusion - , specularOcclusion - , customLighting - , outlineWidth - , outlineColor - //, anisotropicDirection - , vertexOffset - , displacement - , tessellation - ; - - public SFN_Final() { - - } - - public SFN_Final Initialize( SF_Editor editor ) { - base.Initialize( "Main" ); - this.editor = editor; - base.showColor = true; - AssignID(); - base.nodeName = "Main"; - Vector2 pos = new Vector2( 32768, 32768 ); - base.rect = new Rect( pos.x - NODE_WIDTH / 2, pos.y - NODE_HEIGHT / 2, NODE_WIDTH * 1.7f, 400 + 20f * 2 ); - - this.connectors = new SF_NodeConnector[]{ - - // SURFACE - diffuse = SF_NodeConnector.Create(this,"diff", "Diffuse", ConType.cInput, ValueType.VTvPending ,true,"float3(0,0,0)" ).Skip(PassType.ShadCast, PassType.Outline).TypecastTo(3), - diffusePower = SF_NodeConnector.Create(this,"diffpow", "Diffuse Power", ConType.cInput, ValueType.VTvPending ,true,"1" ).Skip(PassType.Meta, PassType.ShadCast, PassType.Outline).DisplayLockIfDeferredPrePassIsOn(), - specular = SF_NodeConnector.Create(this,"spec", "Specular", ConType.cInput, ValueType.VTvPending ,true ).Skip(PassType.ShadCast, PassType.Outline).TypecastTo(3), - gloss = SF_NodeConnector.Create(this,"gloss", "Gloss", ConType.cInput, ValueType.VTv1 ,true,"0.5" ).Skip(PassType.ShadCast, PassType.Outline), - normal = SF_NodeConnector.Create(this,"normal", "Normal", ConType.cInput, ValueType.VTv3 ,true ).Skip(PassType.Meta, PassType.ShadCast, PassType.Outline), - emissive = SF_NodeConnector.Create(this,"emission", "Emission", ConType.cInput, ValueType.VTvPending ,true,"float3(0,0,0)" ).Skip(PassType.ShadCast, PassType.Outline).TypecastTo(3), - transmission = SF_NodeConnector.Create(this,"transm", "Transmission", ConType.cInput, ValueType.VTvPending ,true ).Skip(PassType.Meta, PassType.ShadCast, PassType.Outline).TypecastTo(3).DisplayLockIfDeferredPrePassIsOn(), - lightWrap = SF_NodeConnector.Create(this,"lwrap", "Light Wrapping", ConType.cInput, ValueType.VTvPending ,true ).Skip(PassType.Meta, PassType.ShadCast, PassType.Outline).TypecastTo(3).DisplayLockIfDeferredPrePassIsOn(), - - // LIGHTING - ambientDiffuse = SF_NodeConnector.Create(this,"amdfl", "Diffuse Ambient Light", ConType.cInput, ValueType.VTvPending ,true,"float3(0,0,0)" ).Skip(PassType.Meta, PassType.ShadCast, PassType.FwdAdd, PassType.Outline).TypecastTo(3), - ambientSpecular = SF_NodeConnector.Create(this,"amspl", "Specular Ambient Light", ConType.cInput, ValueType.VTvPending ,true,"float3(0,0,0)" ).Skip(PassType.Meta, PassType.ShadCast, PassType.FwdAdd, PassType.Outline).TypecastTo(3), - diffuseOcclusion = SF_NodeConnector.Create(this,"difocc", "Diffuse Ambient Occlusion", ConType.cInput, ValueType.VTv1 ,true,"1" ).Skip(PassType.Meta, PassType.ShadCast, PassType.FwdAdd, PassType.Outline).TypecastTo(1), - specularOcclusion = SF_NodeConnector.Create(this,"spcocc", "Specular Ambient Occlusion", ConType.cInput, ValueType.VTv1 ,true,"1" ).Skip(PassType.Meta, PassType.ShadCast, PassType.FwdAdd, PassType.Outline).TypecastTo(1), - customLighting = SF_NodeConnector.Create(this,"custl", "Custom Lighting", ConType.cInput, ValueType.VTvPending ,true ).Skip(PassType.Meta, PassType.ShadCast, PassType.Outline).TypecastTo(3).DisplayLockIfDeferredPrePassIsOn(), - - // TRANSPARENCY - alpha = SF_NodeConnector.Create(this,"alpha", "Opacity", ConType.cInput, ValueType.VTv1 ,true,"1" ).Skip(PassType.Meta, PassType.ShadCast, PassType.Outline).DisplayLockIfDeferredPrePassIsOn(), - alphaClip = SF_NodeConnector.Create(this,"clip", "Opacity Clip", ConType.cInput, ValueType.VTv1 ,true ).Skip(PassType.Meta), - refraction = SF_NodeConnector.Create(this,"refract", "Refraction", ConType.cInput, ValueType.VTv2 ,true ).Skip(PassType.Meta, PassType.ShadCast, PassType.Outline).TypecastTo(2).DisplayLockIfDeferredPrePassIsOn(), - - // DEFORMERS - outlineWidth = SF_NodeConnector.Create(this,"olwid", "Outline Width", ConType.cInput, ValueType.VTv1 ,true ).Skip(PassType.Meta, PassType.ShadCast, PassType.FwdAdd, PassType.FwdBase).DisplayLockIfDeferredPrePassIsOn(), - outlineColor = SF_NodeConnector.Create(this,"olcol", "Outline Color", ConType.cInput, ValueType.VTvPending ,true,"float3(0,0,0)" ).Skip(PassType.Meta, PassType.ShadCast, PassType.FwdAdd, PassType.FwdBase).TypecastTo(3).DisplayLockIfDeferredPrePassIsOn(), - vertexOffset = SF_NodeConnector.Create(this,"voffset", "Vertex Offset", ConType.cInput, ValueType.VTvPending ,true ).ForceBlock(ShaderProgram.Vert).TypecastTo(3), - displacement = SF_NodeConnector.Create(this,"disp", "Displacement", ConType.cInput, ValueType.VTv3 ,true ).ForceBlock(ShaderProgram.Vert).TypecastTo(3), - tessellation = SF_NodeConnector.Create(this,"tess", "Tessellation", ConType.cInput, ValueType.VTv1 ,true ).ForceBlock(ShaderProgram.Vert) - }; - - //distortion.enableState = EnableState.Disabled; - //customLighting.enableState = EnableState.Disabled; - //cusomLightingDiffuse.enableState = EnableState.Disabled; - //anisotropicDirection.enableState = EnableState.Disabled; - - - return this; - - } - - public override void OnUpdateNode( NodeUpdateType updType, bool cascade = true ) { - if( cascade ) - editor.OnShaderModified( updType ); - } - - - - } -} \ No newline at end of file diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Final.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Final.cs.meta deleted file mode 100755 index bcc973cc..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Final.cs.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: 7082105362975344ca2b9df696cebfc0 -MonoImporter: - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Floor.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Floor.cs deleted file mode 100755 index c177e4fa..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Floor.cs +++ /dev/null @@ -1,26 +0,0 @@ -using UnityEngine; - -namespace ShaderForge { - - [System.Serializable] - public class SFN_Floor : SF_Node_Arithmetic { - - public SFN_Floor() { - } - - public override void Initialize() { - base.Initialize( "Floor" ); - base.PrepareArithmetic( 1 ); - base.shaderGenMode = ShaderGenerationMode.SimpleFunction; - } - - public override string Evaluate( OutChannel channel = OutChannel.All ) { - return "floor(" + GetConnectorByStringID( "IN" ).TryEvaluate() + ")"; - } - - public override float EvalCPU( int c ) { - return Mathf.Floor( GetInputData( "IN", c ) ); - } - - } -} \ No newline at end of file diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Floor.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Floor.cs.meta deleted file mode 100755 index d8f77b58..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Floor.cs.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: 865a1444020b4c04dbe91ab9abe7d68d -MonoImporter: - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Fmod.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Fmod.cs deleted file mode 100755 index 17813c56..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Fmod.cs +++ /dev/null @@ -1,29 +0,0 @@ -using UnityEngine; - -namespace ShaderForge { - - [System.Serializable] - public class SFN_Fmod : SF_Node_Arithmetic { - - public SFN_Fmod() { - } - - public override void Initialize() { - base.Initialize( "Fmod" ); - base.PrepareArithmetic( 2 ); - base.shaderGenMode = ShaderGenerationMode.SimpleFunction; - } - - public override string Evaluate( OutChannel channel = OutChannel.All ) { - return "fmod(" + GetConnectorByStringID( "A" ).TryEvaluate() + "," + GetConnectorByStringID( "B" ).TryEvaluate() + ")"; - } - - public override float EvalCPU( int c ) { - float a = GetInputData( "A", c ); - float b = GetInputData( "B", c ); - float r = SF_Tools.Frac(Mathf.Abs(a/b))*Mathf.Abs(b); - return ( a < 0 ) ? -r : r; - } - - } -} \ No newline at end of file diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Fmod.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Fmod.cs.meta deleted file mode 100755 index 58d537c9..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Fmod.cs.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: a31abae5d5101c843bb077f6bc0d59b4 -MonoImporter: - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_FogColor.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_FogColor.cs deleted file mode 100644 index a3703c80..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_FogColor.cs +++ /dev/null @@ -1,52 +0,0 @@ -using UnityEngine; -using UnityEditor; -using System.Collections; - -namespace ShaderForge { - - [System.Serializable] - public class SFN_FogColor : SF_Node { - - - public SFN_FogColor() { - - } - - public override void Initialize() { - base.Initialize( "Fog Color" ); - base.showColor = true; - base.UseLowerPropertyBox( false ); - base.texture.CompCount = 4; - base.texture.uniform = true; - base.texture.coloredAlphaOverlay = true; - base.neverDefineVariable = true; - connectors = new SF_NodeConnector[]{ - SF_NodeConnector.Create(this, "RGB", "RGB",ConType.cOutput,ValueType.VTv3,false).Outputting(OutChannel.RGB), - SF_NodeConnector.Create(this, "R", "R",ConType.cOutput,ValueType.VTv1,false).Outputting(OutChannel.R).WithColor(Color.red), - SF_NodeConnector.Create(this, "G", "G",ConType.cOutput,ValueType.VTv1,false).Outputting(OutChannel.G).WithColor(Color.green), - SF_NodeConnector.Create(this, "B", "B",ConType.cOutput,ValueType.VTv1,false).Outputting(OutChannel.B).WithColor(Color.blue), - SF_NodeConnector.Create(this, "A", "A",ConType.cOutput,ValueType.VTv1,false).Outputting(OutChannel.A) - }; - } - - public override bool IsUniformOutput() { - return true; - } - - public override void Update() { - if( texture.dataUniformColor != RenderSettings.fogColor ) { - texture.dataUniform = RenderSettings.fogColor; - OnUpdateNode(NodeUpdateType.Soft, true); - } - } - - public override void OnPreGetPreviewData() { - texture.dataUniform = RenderSettings.fogColor; - } - - public override string Evaluate( OutChannel channel = OutChannel.All ) { - return "unity_FogColor"; - } - - } -} \ No newline at end of file diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_FogColor.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_FogColor.cs.meta deleted file mode 100644 index d425bd88..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_FogColor.cs.meta +++ /dev/null @@ -1,9 +0,0 @@ -fileFormatVersion: 2 -guid: 7500dcc568419264598b312dc040d374 -MonoImporter: - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Frac.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Frac.cs deleted file mode 100755 index 6e9f2bdb..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Frac.cs +++ /dev/null @@ -1,26 +0,0 @@ -using UnityEngine; - -namespace ShaderForge { - - [System.Serializable] - public class SFN_Frac : SF_Node_Arithmetic { - - public SFN_Frac() { - } - - public override void Initialize() { - base.Initialize( "Frac" ); - base.PrepareArithmetic( 1 ); - base.shaderGenMode = ShaderGenerationMode.SimpleFunction; - } - - public override string Evaluate( OutChannel channel = OutChannel.All ) { - return "frac(" + GetConnectorByStringID( "IN" ).TryEvaluate() + ")"; - } - - public override float EvalCPU( int c ) { - return SF_Tools.Frac( GetInputData( "IN", c ) ); - } - - } -} \ No newline at end of file diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Frac.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Frac.cs.meta deleted file mode 100755 index 67af7217..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Frac.cs.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: a625d40360731bd4fb8f5a2d020d3d11 -MonoImporter: - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_FragmentPosition.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_FragmentPosition.cs deleted file mode 100755 index 4ee7aa5e..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_FragmentPosition.cs +++ /dev/null @@ -1,49 +0,0 @@ -using UnityEngine; -using UnityEditor; -using System.Collections; - -namespace ShaderForge { - - [System.Serializable] - public class SFN_FragmentPosition : SF_Node { - - - public SFN_FragmentPosition() { - - } - - public override void Initialize() { - base.Initialize( "World Pos.", InitialPreviewRenderMode.BlitSphere ); - base.showColor = true; - base.UseLowerPropertyBox( false ); - base.texture.CompCount = 4; - base.neverDefineVariable = true; - connectors = new SF_NodeConnector[]{ - SF_NodeConnector.Create(this,"XYZ","XYZ",ConType.cOutput,ValueType.VTv3,false).Outputting(OutChannel.RGB), - SF_NodeConnector.Create(this,"X","X",ConType.cOutput,ValueType.VTv1,false).Outputting(OutChannel.R).WithColor(Color.red), - SF_NodeConnector.Create(this,"Y","Y",ConType.cOutput,ValueType.VTv1,false).Outputting(OutChannel.G).WithColor(Color.green), - SF_NodeConnector.Create(this,"Z","Z",ConType.cOutput,ValueType.VTv1,false).Outputting(OutChannel.B).WithColor(Color.blue), - SF_NodeConnector.Create(this,"W","W",ConType.cOutput,ValueType.VTv1,false).Outputting(OutChannel.A) - }; - } - - public override Vector4 EvalCPU() { - return new Color( 0f, 0.7071068f, 0.7071068f, 0f ); - } - - public override string Evaluate( OutChannel channel = OutChannel.All ) { - if( SF_Evaluator.inFrag ) - return "i.posWorld"; - else if( SF_Evaluator.inVert ) - return "mul(_Object2World, v.vertex)"; - else if( SF_Evaluator.inTess ) - return "mul(_Object2World, v.vertex)"; - else{ - Debug.Log( "Evaluated into unknown shader program" ); - return null; - } - - } - - } -} \ No newline at end of file diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_FragmentPosition.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_FragmentPosition.cs.meta deleted file mode 100755 index 1471e8f5..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_FragmentPosition.cs.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: 9b70f54e080f02746a1e069a06a69481 -MonoImporter: - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Fresnel.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Fresnel.cs deleted file mode 100755 index 1cef8f5a..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Fresnel.cs +++ /dev/null @@ -1,100 +0,0 @@ -using UnityEngine; -using UnityEditor; -using System.Collections; - -namespace ShaderForge { - - [System.Serializable] - public class SFN_Fresnel : SF_Node { - - - public SFN_Fresnel() { - - } - - public override void Initialize() { - - base.shaderGenMode = ShaderGenerationMode.ManualModal; - base.Initialize( "Fresnel", InitialPreviewRenderMode.BlitSphere ); - base.showColor = true; - base.UseLowerPropertyBox( false ); - base.texture.CompCount = 1; - base.vectorDataNode = true; - - - connectors = new SF_NodeConnector[]{ - SF_NodeConnector.Create(this,"OUT","",ConType.cOutput,ValueType.VTv1,false), - SF_NodeConnector.Create(this,"NRM","Nrm",ConType.cInput,ValueType.VTv3,false), - SF_NodeConnector.Create(this,"EXP","Exp",ConType.cInput,ValueType.VTv1,false) - }; - - this["NRM"].unconnectedEvaluationValue = "normalDirection"; - - } - - public override void OnUpdateNode( NodeUpdateType updType, bool cascade = true ) { - if( InputsConnected() ) - RefreshValue(0,0); - base.OnUpdateNode( updType ); - } - - public override bool IsUniformOutput() { - return false; - } - - public override int GetEvaluatedComponentCount() { - return 1; - } - - public override string[] GetModalModes() { - return new string[]{ - "REQONLY", - "NRM", - "EXP", - "NRM_EXP" - }; - } - - public override string GetCurrentModalMode() { - if( connectors == null ) - return "REQONLY"; - - bool expCon = GetInputIsConnected( "EXP" ); - bool nrmCon = GetInputIsConnected( "NRM" ); - - if( !expCon && !nrmCon ) - return "REQONLY"; - if( !expCon && nrmCon ) - return "NRM"; - if( expCon && !nrmCon ) - return "EXP"; - // if( expCon && nrmCon ) - return "NRM_EXP"; - } - - public override string[] GetBlitOutputLines( string mode ) { - - string nrmStr = mode.Contains( "NRM" ) ? "_nrm.xyz" : "normalDirection"; - - string s = string.Format( "1.0-max(0,dot({0}, viewDirection))", nrmStr ); - - if( mode.Contains( "EXP" ) ) { - s = string.Format( "pow( {0}, {1} )", s, "_exp.x" ); - } - - return new string[]{ s }; - } - - public override string Evaluate( OutChannel channel = OutChannel.All ) { - - string dot = "1.0-max(0,dot(" + this["NRM"].TryEvaluate() + ", viewDirection))"; - - if( GetInputIsConnected( "EXP" ) ) { - return "pow(" + dot + "," + this["EXP"].TryEvaluate() + ")"; - } - return "("+dot+")"; - - } - - } -} \ No newline at end of file diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Fresnel.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Fresnel.cs.meta deleted file mode 100755 index eaa19ce0..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Fresnel.cs.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: 805e259b709717a45aa900113bca53c1 -MonoImporter: - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Get.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Get.cs deleted file mode 100644 index 352639e2..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Get.cs +++ /dev/null @@ -1,98 +0,0 @@ -using UnityEngine; -using UnityEditor; -using System.Collections; -using System.Linq; - -namespace ShaderForge { - - [System.Serializable] - public class SFN_Get : SF_Node_Arithmetic { - - public SFN_Get() { - - } - - public SF_NodeConnector[] FindInConnectors() { - return SF_Editor.instance.nodes.Where( x => x is SFN_Set ).Select( x => x.connectors[0] ).ToArray(); - } - - public string[] GetInConnectorNames( SF_NodeConnector[] connectors ) { - return connectors.Select( x => x.node.variableName ).ToArray(); - } - - public override void Initialize() { - node_height = 20; - node_width = 120; - base.Initialize( "Get" ); - lowerRect.y -= 8; - lowerRect.height = 28; - base.showColor = false; - base.discreteTitle = true; - base.UseLowerPropertyBox( true, true ); - base.shaderGenMode = ShaderGenerationMode.CustomFunction; - base.lockedVariableName = false; - extraWidthInput = -9; - extraWidthOutput = -9; - //base.texture.uniform = true; - //base.texture.CompCount = 1; - - connectors = new SF_NodeConnector[]{ - SF_NodeConnector.Create(this,"OUT","",ConType.cOutput,ValueType.VTvPending,false), - SF_NodeConnector.Create(this,"IN","",ConType.cInput,ValueType.VTvPending,false).SetRequired(true), - }; - - connectors[1].enableState = EnableState.Hidden; - - base.conGroup = ScriptableObject.CreateInstance().Initialize( connectors[0], connectors[1]); - - editor.nodeView.RefreshRelaySources(); - - } - - public override string[] GetBlitOutputLines() { - return new string[] { "_in" }; - } - - public override string Evaluate( OutChannel channel = OutChannel.All ) { - return GetConnectorByStringID( "IN" ).TryEvaluate(); - } - - public override float EvalCPU( int c ) { - return GetInputData( "IN", c ); - } - - - public override void DrawLowerPropertyBox() { - Rect r = new Rect( lowerRect ); - r.yMin += 4; - r.yMax -= 2; - r.xMin += 2; - Rect[] splitRects = r.SplitHorizontal( 0.25f, 2 ); - - int selectedID = -1; - if( connectors[1].inputCon != null){ - selectedID = editor.nodeView.NodeIdToRelayId( connectors[1].inputCon.node.id ); - } - - EditorGUI.BeginChangeCheck(); - int newID = UndoableEnumPopupNamed( splitRects[1], selectedID, editor.nodeView.relayInNames, "select Get option" ); - if( EditorGUI.EndChangeCheck() ) { - // Changed input, let's hook it up! - SF_NodeConnector con = editor.nodeView.relayInSources[newID].con; - connectors[1].LinkTo( con ); - } - - - Rect texCoords = new Rect( splitRects[0] ); - texCoords.width /= 7; - texCoords.height /= 3; - texCoords.x = texCoords.y = 0; - GUI.DrawTextureWithTexCoords( splitRects[0], SF_GUI.Handle_drag, texCoords, alphaBlend:true ); - } - - - - - - } -} \ No newline at end of file diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Get.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Get.cs.meta deleted file mode 100644 index 01c2c2cd..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Get.cs.meta +++ /dev/null @@ -1,12 +0,0 @@ -fileFormatVersion: 2 -guid: b4b577d8837417743a49f63715fda21c -timeCreated: 1447437104 -licenseType: Pro -MonoImporter: - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_HalfVector.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_HalfVector.cs deleted file mode 100755 index 4e424328..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_HalfVector.cs +++ /dev/null @@ -1,36 +0,0 @@ -using UnityEngine; -using UnityEditor; -using System.Collections; - -namespace ShaderForge { - - [System.Serializable] - public class SFN_HalfVector : SF_Node { - - - public SFN_HalfVector() { - - } - - public override void Initialize() { - base.Initialize( "Half Dir.", InitialPreviewRenderMode.BlitSphere ); - base.showColor = true; - base.UseLowerPropertyBox( false ); - base.availableInDeferredPrePass = false; - base.texture.CompCount = 3; - base.neverDefineVariable = true; - connectors = new SF_NodeConnector[]{ - SF_NodeConnector.Create(this,"OUT","",ConType.cOutput,ValueType.VTv3,false) - }; - } - - public override Vector4 EvalCPU() { - return new Color( 0.7071068f, 0f, 0.7071068f, 0f ); - } - - public override string Evaluate( OutChannel channel = OutChannel.All ) { - return "halfDirection"; // normalize(_WorldSpaceLightPos0.xyz); - } - - } -} \ No newline at end of file diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_HalfVector.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_HalfVector.cs.meta deleted file mode 100755 index 3ac8e54b..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_HalfVector.cs.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: d27e30128b1a90946a33e1f6e18b2d27 -MonoImporter: - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_HsvToRgb.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_HsvToRgb.cs deleted file mode 100644 index fb5c5a85..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_HsvToRgb.cs +++ /dev/null @@ -1,71 +0,0 @@ -using UnityEngine; - -namespace ShaderForge { - - [System.Serializable] - public class SFN_HsvToRgb : SF_Node { - - public SFN_HsvToRgb() { - } - - public override void Initialize() { - base.Initialize( "HSV to RGB" ); - base.showColor = true; - base.shaderGenMode = ShaderGenerationMode.CustomFunction; - UseLowerReadonlyValues( true ); - connectors = new SF_NodeConnector[]{ - SF_NodeConnector.Create( this, "OUT", "", ConType.cOutput, ValueType.VTv3, false ), - SF_NodeConnector.Create( this, "H", "Hue", ConType.cInput, ValueType.VTv1, false ).SetRequired( true ), - SF_NodeConnector.Create( this, "S", "Sat", ConType.cInput, ValueType.VTv1, false ).SetRequired( true ), - SF_NodeConnector.Create( this, "V", "Val", ConType.cInput, ValueType.VTv1, false ).SetRequired( true )}; - } - - public override int GetEvaluatedComponentCount() { - return 3; - } - - public override bool IsUniformOutput() { - if( InputsConnected() ) { - return GetInputData( "H" ).uniform && GetInputData( "S" ).uniform && GetInputData( "V" ).uniform; - } - return true; - } - - public override string[] GetBlitOutputLines() { - return new string[] { - "float4((lerp(float3(1,1,1),saturate(3.0*abs(1.0-2.0*frac(_h.x+float3(0.0,-1.0/3.0,1.0/3.0)))-1),_s.x)*_v.x),0)" - }; - } - - public override string Evaluate( OutChannel channel = OutChannel.All ) { - string h = GetConnectorByStringID( "H" ).TryEvaluate(); - string s = GetConnectorByStringID( "S" ).TryEvaluate(); - string v = GetConnectorByStringID( "V" ).TryEvaluate(); - return "(lerp(float3(1,1,1),saturate(3.0*abs(1.0-2.0*frac("+h+"+float3(0.0,-1.0/3.0,1.0/3.0)))-1),"+s+")*" + v + ")"; - } - - static Vector3 offsets = new Vector3(0f,-1f/3f, 1f/3f); - - public override float EvalCPU( int c ) { - if(c == 3) - return 1f; - float h = GetInputData( "H", c ); - float s = GetInputData( "S", c ); - float v = GetInputData( "V", c ); - float o = offsets[c]; - return Mathf.Lerp(1,Mathf.Clamp01(3 * Mathf.Abs(1-2*Frac(h+o)) - 1),s)*v; - } - - float Frac( float x ) { - return x - Mathf.Floor( x ); - - } - - public override void OnUpdateNode( NodeUpdateType updType, bool cascade = true ) { - if( InputsConnected() ) - RefreshValue( 1, 2 ); - base.OnUpdateNode( updType ); - } - - } -} \ No newline at end of file diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_HsvToRgb.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_HsvToRgb.cs.meta deleted file mode 100644 index 46bb4a9f..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_HsvToRgb.cs.meta +++ /dev/null @@ -1,12 +0,0 @@ -fileFormatVersion: 2 -guid: 68a644a284b0e1845858bdca07ef2ed7 -timeCreated: 1436519980 -licenseType: Pro -MonoImporter: - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Hue.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Hue.cs deleted file mode 100644 index c7987ec1..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Hue.cs +++ /dev/null @@ -1,64 +0,0 @@ -using UnityEngine; - -namespace ShaderForge { - - [System.Serializable] - public class SFN_Hue : SF_Node { - - public SFN_Hue() { - } - - public override void Initialize() { - base.Initialize( "Hue" ); - base.showColor = true; - base.shaderGenMode = ShaderGenerationMode.CustomFunction; - UseLowerReadonlyValues( true ); - connectors = new SF_NodeConnector[]{ - SF_NodeConnector.Create( this, "OUT", "", ConType.cOutput, ValueType.VTv3, false ), - SF_NodeConnector.Create( this, "IN", "", ConType.cInput, ValueType.VTv1, false ).SetRequired( true )}; - } - - public override int GetEvaluatedComponentCount() { - return 3; - } - - public override bool IsUniformOutput() { - - if(GetInputIsConnected("IN")){ - return GetInputData( "IN" ).uniform; - } - return true; - } - - public override string[] GetBlitOutputLines() { - return new string[]{ "float4(saturate(3.0*abs(1.0-2.0*frac(_in.x+float3(0.0,-1.0/3.0,1.0/3.0)))-1),0)" }; - } - - public override string Evaluate( OutChannel channel = OutChannel.All ) { - string v = GetConnectorByStringID( "IN" ).TryEvaluate(); - return "saturate(3.0*abs(1.0-2.0*frac("+v+"+float3(0.0,-1.0/3.0,1.0/3.0)))-1)"; - } - - static Vector3 offsets = new Vector3(0f,-1f/3f, 1f/3f); - - public override float EvalCPU( int c ) { - if(c == 3) - return 1f; - float v = GetInputData( "IN", c ); - float o = offsets[c]; - return Mathf.Clamp01(3 * Mathf.Abs(1-2*Frac(v+o)) - 1); - } - - float Frac( float x ) { - return x - Mathf.Floor( x ); - - } - - public override void OnUpdateNode( NodeUpdateType updType, bool cascade = true ) { - if( InputsConnected() ) - RefreshValue( 1, 1 ); - base.OnUpdateNode( updType ); - } - - } -} \ No newline at end of file diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Hue.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Hue.cs.meta deleted file mode 100644 index ee8349cd..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Hue.cs.meta +++ /dev/null @@ -1,12 +0,0 @@ -fileFormatVersion: 2 -guid: e81546dbfab1e6c489c92093e9600cf7 -timeCreated: 1436200734 -licenseType: Pro -MonoImporter: - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_If.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_If.cs deleted file mode 100755 index 10973699..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_If.cs +++ /dev/null @@ -1,95 +0,0 @@ -using UnityEngine; - -namespace ShaderForge { - - [System.Serializable] - public class SFN_If : SF_Node_Arithmetic { - - public SFN_If() { - } - - public override void Initialize() { - base.Initialize( "If" ); - base.PrepareArithmetic(0); - base.showLowerReadonlyValues = false; - base.shaderGenMode = ShaderGenerationMode.CustomFunction; - - - connectors = new SF_NodeConnector[]{ - SF_NodeConnector.Create( this,"OUT", "", ConType.cOutput, ValueType.VTvPending, false ), - SF_NodeConnector.Create( this,"A", "A", ConType.cInput, ValueType.VTvPending, false ).SetRequired( true ), - SF_NodeConnector.Create( this,"B", "B", ConType.cInput, ValueType.VTvPending, false ).SetRequired( true ), - SF_NodeConnector.Create( this,"GT", "A>B", ConType.cInput, ValueType.VTvPending, false ).SetRequired( true ), - SF_NodeConnector.Create( this,"EQ", "A=B", ConType.cInput, ValueType.VTvPending, false ).SetRequired( true ), - SF_NodeConnector.Create( this,"LT", "A().Initialize( connectors[0], connectors[1], connectors[2], connectors[3], connectors[4], connectors[5] ); - } - - - public string StA() { - return GetVariableName() + "_if_leA"; - } - public string StB() { - return GetVariableName() + "_if_leB"; - } - - - public override string[] GetPreDefineRows() { - return new string[] { - "float " + StA() + " = step(" + this["A"].TryEvaluate() + "," + this["B"].TryEvaluate() + ");", - "float " + StB() + " = step(" + this["B"].TryEvaluate() + "," + this["A"].TryEvaluate() + ");" - }; - } - - public override string[] GetBlitOutputLines() { - - string less = "(sta*_lt)"; - string larger = "(stb*_gt)"; - string lela = less + "+" + larger; - - return new string[]{ - "float sta = step(_a,_b);", - "float stb = step(_b,_a);", - "lerp(" + lela + ",_eq,sta*stb)" - }; - } - - public override bool IsUniformOutput() { - foreach(SF_NodeConnector con in connectors){ - if(con.conType == ConType.cOutput) - continue; - if(con.IsConnectedAndEnabled()) - if(!con.inputCon.node.IsUniformOutput()) - return false; - } - return true; - } - - - public override string Evaluate( OutChannel channel = OutChannel.All ) { - if(!ShouldDefineVariable()) // TODO: Isn't this already handled on the node level? - this.PreDefine(); - - string less = "(" + StA() + "*" + GetInputCon( "LT" ).Evaluate() + ")"; - string larger = "(" + StB() + "*" + GetInputCon( "GT" ).Evaluate() + ")"; - string lela = less + "+" + larger; - - return "lerp(" + lela + "," + GetInputCon( "EQ" ).Evaluate() + "," + StA() + "*" + StB() + ")"; - } - - public override float EvalCPU( int c ) { - float a = GetInputData( "A", c ); - float b = GetInputData( "B", c ); - - float sta = ( ( a <= b ) ? 1.0f : 0.0f ); - float stb = ( ( b <= a ) ? 1.0f : 0.0f ); - - float less = sta * GetInputData( "LT", c ); - float larger = stb * GetInputData( "GT", c ); - float lela = ( less + larger ); - - return Mathf.Lerp( lela, GetInputData( "EQ", c ), sta * stb ); - } - - } -} \ No newline at end of file diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_If.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_If.cs.meta deleted file mode 100755 index a9cbc818..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_If.cs.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: 08bd8679c2a595b4ebd6d65a4a96817e -MonoImporter: - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_InverseLerp.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_InverseLerp.cs deleted file mode 100644 index 89e6b3cb..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_InverseLerp.cs +++ /dev/null @@ -1,75 +0,0 @@ -using UnityEngine; -using UnityEditor; -using System.Collections; - -namespace ShaderForge { - - [System.Serializable] - public class SFN_InverseLerp : SF_Node { - - public SFN_InverseLerp() { - - } - - public override void Initialize() { - base.Initialize( "Inverse Lerp" ); - base.showColor = true; - base.shaderGenMode = ShaderGenerationMode.CustomFunction; - UseLowerReadonlyValues( true ); - - //SF_NodeConnection lerpCon; - connectors = new SF_NodeConnector[]{ - SF_NodeConnector.Create(this,"OUT","T",ConType.cOutput,ValueType.VTvPending,false), - SF_NodeConnector.Create(this,"A","A",ConType.cInput,ValueType.VTvPending,false).SetRequired(true), - SF_NodeConnector.Create(this,"B","B",ConType.cInput,ValueType.VTvPending,false).SetRequired(true), - SF_NodeConnector.Create(this,"V","Val",ConType.cInput,ValueType.VTvPending,false).SetRequired(true) - }; - - base.conGroup = ScriptableObject.CreateInstance().Initialize( connectors[0], connectors[1], connectors[2], connectors[3] ); - } - - public override void OnUpdateNode( NodeUpdateType updType, bool cascade = true ) { - if( InputsConnected() ) - RefreshValue( 1, 2 ); - base.OnUpdateNode( updType ); - } - - public override string[] GetBlitOutputLines() { - return new string[] { "((_v-_a)/(_b-_a))" }; - } - - public override bool IsUniformOutput() { - return ( GetInputData( "A" ).uniform && GetInputData( "B" ).uniform && GetInputData( "V" ).uniform ); - } - - public override int GetEvaluatedComponentCount() { - return Mathf.Max( this["A"].GetCompCount(), this["B"].GetCompCount(), this["V"].GetCompCount() ); - } - - public override string Evaluate( OutChannel channel = OutChannel.All ) { - - string a = GetConnectorByStringID( "A" ).TryEvaluateAs( GetEvaluatedComponentCount() ); - string b = GetConnectorByStringID( "B" ).TryEvaluateAs( GetEvaluatedComponentCount() ); - string v = GetConnectorByStringID( "V" ).TryEvaluateAs( GetEvaluatedComponentCount() ); - - return "((" + v + "-" + a + ")/(" + b + "-" + a + "))"; - } - - public override float EvalCPU( int c ) { - - float a = GetInputData( "A", c ); - float b = GetInputData( "B", c ); - float v = GetInputData( "V", c ); - - if( (b - a) == 0f ) - return 0; - return ( v - a ) / ( b - a ); - } - - public float Lerp( float a, float b, float t ) { - return ( ( 1f - t ) * a + t * b ); - } - - - } -} \ No newline at end of file diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_InverseLerp.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_InverseLerp.cs.meta deleted file mode 100644 index de877657..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_InverseLerp.cs.meta +++ /dev/null @@ -1,12 +0,0 @@ -fileFormatVersion: 2 -guid: 16d3bfd026312984b9f3db11f2c6762a -timeCreated: 1439743244 -licenseType: Pro -MonoImporter: - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Length.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Length.cs deleted file mode 100755 index 66f193c4..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Length.cs +++ /dev/null @@ -1,42 +0,0 @@ -using UnityEngine; - -namespace ShaderForge { - - [System.Serializable] - public class SFN_Length : SF_Node_Arithmetic { - - public SFN_Length() { - } - - public override void Initialize() { - base.Initialize( "Length" ); - base.PrepareArithmetic( 1, ValueType.VTvPending, ValueType.VTv1 ); - base.shaderGenMode = ShaderGenerationMode.SimpleFunction; - ( base.conGroup as SFNCG_Arithmetic ).LockOutType(); - } - - public override int GetEvaluatedComponentCount() { - return 1; - } - - public override string Evaluate( OutChannel channel = OutChannel.All ) { - return "length(" + GetConnectorByStringID( "IN" ).TryEvaluate() + ")"; - } - - public override Vector4 EvalCPU() { - - switch( GetInputData( "IN" ).CompCount ) { - case 1: - return Vector4.one * Mathf.Abs( GetInputData( "IN" ).dataUniform[0] ); - case 2: - return Vector4.one * ( (Vector2)GetInputData( "IN" ).dataUniform ).magnitude; - case 3: - return Vector4.one * ( (Vector3)GetInputData( "IN" ).dataUniform ).magnitude; - default: - return Vector4.one * GetInputData( "IN" ).dataUniform.magnitude; - } - - } - - } -} \ No newline at end of file diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Length.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Length.cs.meta deleted file mode 100755 index f274b079..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Length.cs.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: 9dffa999f0a9a014692a70f8050a87f4 -MonoImporter: - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Lerp.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Lerp.cs deleted file mode 100755 index b55cf9b3..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Lerp.cs +++ /dev/null @@ -1,58 +0,0 @@ -using UnityEngine; -using UnityEditor; -using System.Collections; - -namespace ShaderForge { - - [System.Serializable] - public class SFN_Lerp : SF_Node { - - public SFN_Lerp() { - - } - - public override void Initialize() { - base.Initialize( "Lerp" ); - base.showColor = true; - UseLowerReadonlyValues( true ); - - //SF_NodeConnection lerpCon; - connectors = new SF_NodeConnector[]{ - SF_NodeConnector.Create(this,"OUT","",ConType.cOutput,ValueType.VTvPending,false), - SF_NodeConnector.Create(this,"A","A",ConType.cInput,ValueType.VTvPending,false).SetRequired(true), - SF_NodeConnector.Create(this,"B","B",ConType.cInput,ValueType.VTvPending,false).SetRequired(true), - SF_NodeConnector.Create(this,"T","T",ConType.cInput,ValueType.VTvPending,false).SetRequired(true) - }; - - base.conGroup = ScriptableObject.CreateInstance().Initialize( connectors[0], connectors[1], connectors[2], connectors[3] ); - } - - public override void OnUpdateNode( NodeUpdateType updType, bool cascade = true ) { - if( InputsConnected() ) - RefreshValue( 1, 2 ); - base.OnUpdateNode( updType ); - } - - public override bool IsUniformOutput() { - return ( GetInputData( "A" ).uniform && GetInputData( "B" ).uniform && GetInputData( "T" ).uniform ); - } - - public override int GetEvaluatedComponentCount() { - return Mathf.Max( this["A"].GetCompCount(), this["B"].GetCompCount(), this["T"].GetCompCount() ); - } - - public override string Evaluate( OutChannel channel = OutChannel.All ) { - return "lerp(" + GetConnectorByStringID( "A" ).TryEvaluateAs(GetEvaluatedComponentCount()) + "," + GetConnectorByStringID( "B" ).TryEvaluateAs(GetEvaluatedComponentCount()) + "," + GetInputCon( "T" ).Evaluate() + ")"; - } - - public override float EvalCPU( int c ) { - return Lerp( GetInputData( "B", c ), GetInputData( "B", c ), GetInputData( "T", c ) ); - } - - public float Lerp( float a, float b, float t ) { - return ( ( 1f - t ) * a + t * b ); - } - - - } -} \ No newline at end of file diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Lerp.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Lerp.cs.meta deleted file mode 100755 index 00994367..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Lerp.cs.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: f4503b6214f161b4a95dfd184348546f -MonoImporter: - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_LightAttenuation.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_LightAttenuation.cs deleted file mode 100755 index d6326d7b..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_LightAttenuation.cs +++ /dev/null @@ -1,36 +0,0 @@ -using UnityEngine; -using UnityEditor; -using System.Collections; - -namespace ShaderForge { - - [System.Serializable] - public class SFN_LightAttenuation : SF_Node { - - - public SFN_LightAttenuation() { - - } - - public override void Initialize() { - base.Initialize( "Light Atten.", InitialPreviewRenderMode.BlitSphere ); - base.showColor = true; - base.UseLowerPropertyBox( false ); - base.texture.CompCount = 1; - base.neverDefineVariable = true; - base.availableInDeferredPrePass = false; - connectors = new SF_NodeConnector[]{ - SF_NodeConnector.Create(this,"OUT","",ConType.cOutput,ValueType.VTv1,false) - }; - } - - public override Vector4 EvalCPU() { - return new Color( 1f, 1f, 1f, 1f ); - } - - public override string Evaluate( OutChannel channel = OutChannel.All ) { - return "attenuation"; - } - - } -} \ No newline at end of file diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_LightAttenuation.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_LightAttenuation.cs.meta deleted file mode 100755 index 9b609234..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_LightAttenuation.cs.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: 686b4d39e6a081d4ab3974d70ea038ea -MonoImporter: - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_LightColor.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_LightColor.cs deleted file mode 100755 index 98a9f5ca..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_LightColor.cs +++ /dev/null @@ -1,40 +0,0 @@ -using UnityEngine; -using UnityEditor; -using System.Collections; - -namespace ShaderForge { - - [System.Serializable] - public class SFN_LightColor : SF_Node { - - - public SFN_LightColor() { - - } - - public override void Initialize() { - base.Initialize( "Light Color", InitialPreviewRenderMode.BlitSphere ); - base.showColor = true; - base.UseLowerPropertyBox( false ); - base.texture.CompCount = 4; - base.neverDefineVariable = true; - base.availableInDeferredPrePass = false; - connectors = new SF_NodeConnector[]{ - SF_NodeConnector.Create(this,"RGB","RGB",ConType.cOutput,ValueType.VTv3,false).Outputting(OutChannel.RGB), - SF_NodeConnector.Create(this,"R","R",ConType.cOutput,ValueType.VTv1,false).Outputting(OutChannel.R).WithColor(Color.red), - SF_NodeConnector.Create(this,"G","G",ConType.cOutput,ValueType.VTv1,false).Outputting(OutChannel.G).WithColor(Color.green), - SF_NodeConnector.Create(this,"B","B",ConType.cOutput,ValueType.VTv1,false).Outputting(OutChannel.B).WithColor(Color.blue), - SF_NodeConnector.Create(this,"A","A",ConType.cOutput,ValueType.VTv1,false).Outputting(OutChannel.A) - }; - } - - public override Vector4 EvalCPU() { - return new Color( 0.5f, 0, 0, 0 ); - } - - public override string Evaluate( OutChannel channel = OutChannel.All ) { - return "_LightColor0"; - } - - } -} \ No newline at end of file diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_LightColor.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_LightColor.cs.meta deleted file mode 100755 index e6600c28..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_LightColor.cs.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: 7f012e392e4a89a4791a4856f4f56b4c -MonoImporter: - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_LightPosition.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_LightPosition.cs deleted file mode 100755 index 4a9044e1..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_LightPosition.cs +++ /dev/null @@ -1,40 +0,0 @@ -using UnityEngine; -using UnityEditor; -using System.Collections; - -namespace ShaderForge { - - [System.Serializable] - public class SFN_LightPosition : SF_Node { - - - public SFN_LightPosition() { - - } - - public override void Initialize() { - base.Initialize( "Light Pos.", InitialPreviewRenderMode.BlitQuad ); - base.showColor = true; - base.UseLowerPropertyBox( false ); - base.texture.CompCount = 4; - base.neverDefineVariable = true; - base.availableInDeferredPrePass = false; - connectors = new SF_NodeConnector[]{ - SF_NodeConnector.Create(this,"XYZ","XYZ",ConType.cOutput,ValueType.VTv3,false).Outputting(OutChannel.RGB), - SF_NodeConnector.Create(this,"X","X",ConType.cOutput,ValueType.VTv1,false).Outputting(OutChannel.R).WithColor(Color.red), - SF_NodeConnector.Create(this,"Y","Y",ConType.cOutput,ValueType.VTv1,false).Outputting(OutChannel.G).WithColor(Color.green), - SF_NodeConnector.Create(this,"Z","Z",ConType.cOutput,ValueType.VTv1,false).Outputting(OutChannel.B).WithColor(Color.blue), - SF_NodeConnector.Create(this,"PNT","Pnt",ConType.cOutput,ValueType.VTv1,false).Outputting(OutChannel.A) - }; - } - - public override Vector4 EvalCPU() { - return new Color( 0f, 0.7071068f, 0.7071068f, 0f ); - } - - public override string Evaluate( OutChannel channel = OutChannel.All ) { - return "_WorldSpaceLightPos0"; // normalize(_WorldSpaceLightPos0.xyz); - } - - } -} \ No newline at end of file diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_LightPosition.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_LightPosition.cs.meta deleted file mode 100755 index 14671d07..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_LightPosition.cs.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: 0b9d9898dea86c748886d87751eb5e9b -MonoImporter: - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_LightVector.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_LightVector.cs deleted file mode 100755 index 7e231bad..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_LightVector.cs +++ /dev/null @@ -1,36 +0,0 @@ -using UnityEngine; -using UnityEditor; -using System.Collections; - -namespace ShaderForge { - - [System.Serializable] - public class SFN_LightVector : SF_Node { - - - public SFN_LightVector() { - - } - - public override void Initialize() { - base.Initialize( "Light Dir.", InitialPreviewRenderMode.BlitSphere ); - base.showColor = true; - base.UseLowerPropertyBox( false ); - base.texture.CompCount = 3; - base.neverDefineVariable = true; - base.availableInDeferredPrePass = false; - connectors = new SF_NodeConnector[]{ - SF_NodeConnector.Create(this,"OUT","",ConType.cOutput,ValueType.VTv3,false) - }; - } - - public override Vector4 EvalCPU() { - return new Color( 0f, 0.7071068f, 0.7071068f, 0f ); - } - - public override string Evaluate( OutChannel channel = OutChannel.All ) { - return "lightDirection"; // normalize(_WorldSpaceLightPos0.xyz); - } - - } -} \ No newline at end of file diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_LightVector.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_LightVector.cs.meta deleted file mode 100755 index df3db58a..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_LightVector.cs.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: 66c49f9dbeaeb414a8aaff0d8c27d00d -MonoImporter: - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Log.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Log.cs deleted file mode 100755 index 15d3af5a..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Log.cs +++ /dev/null @@ -1,111 +0,0 @@ -using UnityEngine; -using UnityEditor; -using System.Collections; -using System; - -namespace ShaderForge { - - [System.Serializable] - public class SFN_Log : SF_Node_Arithmetic { - - - public enum LogType { Natural, Base2, Base10 }; - public LogType logType = LogType.Natural; - - public SFN_Log() { - - } - - public override void Initialize() { - base.Initialize( "Log" ); - base.UseLowerPropertyBox( true, true ); - base.PrepareArithmetic( 1, ValueType.VTvPending, ValueType.VTvPending ); - base.shaderGenMode = ShaderGenerationMode.Modal; - } - - - public override string[] GetModalModes() { - return new string[] { - "LOG", - "LOG2", - "LOG10" - }; - } - - public override string GetCurrentModalMode() { - switch( logType ) { - case LogType.Base10: - return "LOG10"; - case LogType.Base2: - return "LOG2"; - default: - return "LOG"; - } - } - - public override string[] GetBlitOutputLines( string mode ) { - if( mode == "LOG2" ) - return new string[] { "log(_in);" }; - if( mode == "LOG10" ) - return new string[] { "log10(_in);" }; - return new string[] { "log(_in)" }; - } - - public override string Evaluate( OutChannel channel = OutChannel.All ) { - - string inner = GetConnectorByStringID( "IN" ).TryEvaluate(); - switch( logType ) { - case LogType.Natural: - return "log(" + inner + ")"; - case LogType.Base2: - return "log2(" + inner + ")"; - case LogType.Base10: - return "log10(" + inner + ")"; - } - - return inner; - } - - public override float EvalCPU( int c ) { - - float inpDt = GetInputData( "IN", c ); - - switch( logType ) { - case LogType.Natural: - inpDt = Mathf.Log( inpDt ); - break; - case LogType.Base2: - inpDt = Mathf.Log( inpDt ) / Mathf.Log( 2f ); - break; - case LogType.Base10: - inpDt = Mathf.Log10( inpDt ); - break; - } - - return inpDt; - } - - public override void DrawLowerPropertyBox() { - EditorGUI.BeginChangeCheck(); - logType = (LogType)UndoableEnumPopup( lowerRect, logType, "switch log type"); - //logType = (LogType)EditorGUI.EnumPopup( lowerRect, logType ); - if( EditorGUI.EndChangeCheck() ) - OnUpdateNode(); - } - - public override string SerializeSpecialData() { - return "lt:" + (int)logType; - } - - public override void DeserializeSpecialData( string key, string value ) { - switch( key ) { - case "lt": - logType = (LogType)int.Parse( value ); - break; - } - } - - - - } -} \ No newline at end of file diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Log.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Log.cs.meta deleted file mode 100755 index bb9bc278..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Log.cs.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: 61c69de42939c63429fcb6359f2b7953 -MonoImporter: - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Matrix4x4.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Matrix4x4.cs deleted file mode 100644 index 2e3fa623..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Matrix4x4.cs +++ /dev/null @@ -1,93 +0,0 @@ -using UnityEngine; -using UnityEditor; -using System.Collections; - -namespace ShaderForge { - - public class SFN_Matrix4x4 : SF_Node { - - - public SFN_Matrix4x4() { - - } - - public Matrix4x4 mtx = Matrix4x4.identity; - - public override void Initialize() { - node_height = NODE_HEIGHT; - base.Initialize( "Matrix 4x4" ); - base.showColor = false; - base.UseLowerPropertyBox( false ); - base.texture.uniform = true; - base.texture.CompCount = 4; - base.canAlwaysSetPrecision = true; - base.alwaysDefineVariable = true; - connectors = new SF_NodeConnector[]{ - SF_NodeConnector.Create(this,"OUT","",ConType.cOutput,ValueType.VTm4x4,false) - }; - } - - public override bool IsUniformOutput() { - return true; - } - - public override string Evaluate( OutChannel channel = OutChannel.All ) { - return mtx.ToCgMatrix(); - } - - public override void NeatWindow() { - PrepareWindowColor(); - GUI.BeginGroup( rect ); - Rect r = new Rect( rectInner ); - r = r.Pad( 4 ); - r.height = 20; - - DrawGrabHandle( r ); - - - Rect tRect = rectInner.Pad( 2 ); - tRect.yMin += 28; - - tRect.width /= 4; - tRect.height /= 4; - tRect.height = Mathf.FloorToInt( tRect.height ); - - for( int i=0; i < 4; i++ ) { - UndoableEnterableFloatFieldMtx( tRect, i, 0); - tRect.x += tRect.width; - UndoableEnterableFloatFieldMtx( tRect, i, 1 ); - tRect.x += tRect.width; - UndoableEnterableFloatFieldMtx( tRect, i, 2 ); - tRect.x += tRect.width; - UndoableEnterableFloatFieldMtx( tRect, i, 3 ); - tRect.x -= tRect.width*3; - tRect.y += tRect.height; - } - - - GUI.EndGroup(); - ResetWindowColor(); - - } - - - public void UndoableEnterableFloatFieldMtx(Rect r, int row, int column ) { - float val = mtx[row,column]; - UndoableEnterableFloatField( r, ref val, "matrix [" + row + "," + column + "]", null ); - mtx[row, column] = val; - } - - public override string SerializeSpecialData() { - return mtx.SerializeToCSV(); - } - - public override void DeserializeSpecialData( string key, string value ) { - mtx = mtx.DeserializeKeyValue( key, value ); - } - - - - - - } -} \ No newline at end of file diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Matrix4x4.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Matrix4x4.cs.meta deleted file mode 100644 index 0d05a31f..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Matrix4x4.cs.meta +++ /dev/null @@ -1,12 +0,0 @@ -fileFormatVersion: 2 -guid: e3bfdd39d540f4846810495c5c353993 -timeCreated: 1436168471 -licenseType: Pro -MonoImporter: - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Matrix4x4Property.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Matrix4x4Property.cs deleted file mode 100644 index f9b17465..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Matrix4x4Property.cs +++ /dev/null @@ -1,98 +0,0 @@ -using UnityEngine; -using UnityEditor; -using System.Collections; - -namespace ShaderForge { - - public class SFN_Matrix4x4Property : SF_Node { - - - public SFN_Matrix4x4Property() { - - } - - public Matrix4x4 mtx = Matrix4x4.identity; - - public override void Initialize() { - node_height = NODE_HEIGHT; - base.Initialize( "Matrix 4x4" ); - base.showColor = false; - base.UseLowerPropertyBox( false ); - base.texture.uniform = true; - base.texture.CompCount = 4; - base.canAlwaysSetPrecision = true; - base.alwaysDefineVariable = false; - - property = ScriptableObject.CreateInstance().Initialize( this ); - - connectors = new SF_NodeConnector[]{ - SF_NodeConnector.Create(this,"OUT","",ConType.cOutput,ValueType.VTm4x4,false) - }; - } - - public override bool IsUniformOutput() { - return true; - } - - public override string Evaluate( OutChannel channel = OutChannel.All ) { - return property.GetVariable(); - } - - public override void NeatWindow() { - PrepareWindowColor(); - GUI.BeginGroup( rect ); - Rect r = new Rect( rectInner ); - r = r.Pad( 4 ); - r.height = 20; - - DrawGrabHandle( r ); - - - Rect tRect = rectInner.Pad( 2 ); - tRect.yMin += 28; - - tRect.width /= 4; - tRect.height /= 4; - tRect.height = Mathf.FloorToInt( tRect.height ); - - EditorGUI.BeginDisabledGroup(true); - for( int i=0; i < 4; i++ ) { - UndoableEnterableFloatFieldMtx( tRect, i, 0); - tRect.x += tRect.width; - UndoableEnterableFloatFieldMtx( tRect, i, 1 ); - tRect.x += tRect.width; - UndoableEnterableFloatFieldMtx( tRect, i, 2 ); - tRect.x += tRect.width; - UndoableEnterableFloatFieldMtx( tRect, i, 3 ); - tRect.x -= tRect.width*3; - tRect.y += tRect.height; - } - EditorGUI.EndDisabledGroup(); - - GUI.EndGroup(); - ResetWindowColor(); - - } - - - public void UndoableEnterableFloatFieldMtx(Rect r, int row, int column ) { - float val = mtx[row,column]; - UndoableEnterableFloatField( r, ref val, "matrix [" + row + "," + column + "]", null ); - mtx[row, column] = val; - } - - public override string SerializeSpecialData() { - return property.Serialize() + "," + mtx.SerializeToCSV(); - } - - public override void DeserializeSpecialData( string key, string value ) { - property.Deserialize( key, value ); - mtx = mtx.DeserializeKeyValue( key, value ); - } - - - - - - } -} \ No newline at end of file diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Matrix4x4Property.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Matrix4x4Property.cs.meta deleted file mode 100644 index 0001a42b..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Matrix4x4Property.cs.meta +++ /dev/null @@ -1,12 +0,0 @@ -fileFormatVersion: 2 -guid: 638c5b214d6a1b14ea3a6ef2a69d0b89 -timeCreated: 1436192974 -licenseType: Pro -MonoImporter: - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Max.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Max.cs deleted file mode 100755 index ecbb2749..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Max.cs +++ /dev/null @@ -1,76 +0,0 @@ -using UnityEngine; -using UnityEditor; -using System.Collections; -using System; - -namespace ShaderForge { - - [System.Serializable] - public class SFN_Max : SF_Node_Arithmetic { - - public SFN_Max() { - - } - - public override void Initialize() { - base.Initialize( "Max" ); - base.showColor = true; - base.shaderGenMode = ShaderGenerationMode.ModularInput; - UseLowerReadonlyValues( true ); - - connectors = new SF_NodeConnector[]{ - SF_NodeConnector.Create(this,"OUT","",ConType.cOutput,ValueType.VTvPending,false), - SF_NodeConnector.Create(this,"A","A",ConType.cInput,ValueType.VTvPending,false).SetRequired(true), - SF_NodeConnector.Create(this,"B","B",ConType.cInput,ValueType.VTvPending,false).SetRequired(true), - SF_NodeConnector.Create(this,"C","C",ConType.cInput,ValueType.VTvPending,false).SetRequired(false), - SF_NodeConnector.Create(this,"D","D",ConType.cInput,ValueType.VTvPending,false).SetRequired(false), - SF_NodeConnector.Create(this,"E","E",ConType.cInput,ValueType.VTvPending,false).SetRequired(false) - }; - - - SetExtensionConnectorChain("B", "C", "D", "E"); - - base.conGroup = ScriptableObject.CreateInstance().Initialize( connectors[0], connectors[1], connectors[2], connectors[3], connectors[4], connectors[5] ); - - } - - public override void GetModularShaderFixes( out string prefix, out string infix, out string suffix ) { - prefix = "max("; - infix = ", "; - suffix = ")"; - } - - public override string Evaluate( OutChannel channel = OutChannel.All ) { - string retStr = "max(" + TryEvalInput("A") + "," + TryEvalInput("B") + ")"; - - // Loop through all chain childs - foreach(SF_NodeConnector con in connectors){ - if(con.IsConnected() && con.IsChild()){ - retStr = "max(" + retStr + "," + con.TryEvaluate() + ")"; - } - } - - return retStr; - } - - string TryEvalInput(string s){ - return GetConnectorByStringID(s).TryEvaluate(); - } - - public override float EvalCPU( int c ) { - - float maximum = Mathf.Max( GetInputData( "A", c ), GetInputData( "B", c ) ); - - // Loop through all chain childs - foreach(SF_NodeConnector con in connectors){ - if(con.IsConnected() && con.IsChild()){ - maximum = Mathf.Max(maximum, GetInputData( con.strID, c ) ); - } - } - - - return maximum; - } - - } -} \ No newline at end of file diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Max.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Max.cs.meta deleted file mode 100755 index f8f9bad5..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Max.cs.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: a4a4eeb60c3655748ab34f85aaa9eca6 -MonoImporter: - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Min.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Min.cs deleted file mode 100755 index f01df021..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Min.cs +++ /dev/null @@ -1,78 +0,0 @@ -using UnityEngine; -using UnityEditor; -using System.Collections; -using System; - -namespace ShaderForge { - - [System.Serializable] - public class SFN_Min : SF_Node_Arithmetic { - - public SFN_Min() { - - } - - public override void Initialize() { - base.Initialize( "Min" ); - base.showColor = true; - base.shaderGenMode = ShaderGenerationMode.ModularInput; - UseLowerReadonlyValues( true ); - - connectors = new SF_NodeConnector[]{ - SF_NodeConnector.Create(this,"OUT","",ConType.cOutput,ValueType.VTvPending,false), - SF_NodeConnector.Create(this,"A","A",ConType.cInput,ValueType.VTvPending,false).SetRequired(true), - SF_NodeConnector.Create(this,"B","B",ConType.cInput,ValueType.VTvPending,false).SetRequired(true), - SF_NodeConnector.Create(this,"C","C",ConType.cInput,ValueType.VTvPending,false).SetRequired(false), - SF_NodeConnector.Create(this,"D","D",ConType.cInput,ValueType.VTvPending,false).SetRequired(false), - SF_NodeConnector.Create(this,"E","E",ConType.cInput,ValueType.VTvPending,false).SetRequired(false) - }; - - - SetExtensionConnectorChain("B", "C", "D", "E"); - - base.conGroup = ScriptableObject.CreateInstance().Initialize( connectors[0], connectors[1], connectors[2], connectors[3], connectors[4], connectors[5] ); - - } - - public override void GetModularShaderFixes( out string prefix, out string infix, out string suffix ) { - prefix = "min("; - infix = ", "; - suffix = ")"; - } - - public override string Evaluate( OutChannel channel = OutChannel.All ) { - - string retStr = "min(" + TryEvalInput("A") + "," + TryEvalInput("B") + ")"; - - // Loop through all chain childs - foreach(SF_NodeConnector con in connectors){ - if(con.IsConnected() && con.IsChild()){ - retStr = "min(" + retStr + "," + con.TryEvaluate() + ")"; - } - } - - return retStr; - } - - string TryEvalInput(string s){ - return GetConnectorByStringID(s).TryEvaluate(); - } - - - public override float EvalCPU( int c ) { - - float minimum = Mathf.Min( GetInputData( "A", c ), GetInputData( "B", c ) ); - - // Loop through all chain childs - foreach(SF_NodeConnector con in connectors){ - if(con.IsConnected() && con.IsChild()){ - minimum = Mathf.Min(minimum, GetInputData( con.strID, c ) ); - } - } - - - return minimum; - } - - } -} \ No newline at end of file diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Min.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Min.cs.meta deleted file mode 100755 index 2b12f397..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Min.cs.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: 24a991d2351190f4f88d3c06eabafb58 -MonoImporter: - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Multiply.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Multiply.cs deleted file mode 100755 index aaa9c373..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Multiply.cs +++ /dev/null @@ -1,72 +0,0 @@ -using UnityEngine; -using UnityEditor; -using System.Collections; -using System; - -namespace ShaderForge { - - [System.Serializable] - public class SFN_Multiply : SF_Node_Arithmetic { - - public SFN_Multiply() { - - } - - public override void Initialize() { - base.Initialize( "Multiply" ); - base.showColor = true; - base.shaderGenMode = ShaderGenerationMode.ModularInput; - UseLowerReadonlyValues( true ); - - connectors = new SF_NodeConnector[]{ - SF_NodeConnector.Create(this,"OUT","",ConType.cOutput,ValueType.VTvPending,false), - SF_NodeConnector.Create(this,"A","A",ConType.cInput,ValueType.VTvPending,false).SetRequired(true), - SF_NodeConnector.Create(this,"B","B",ConType.cInput,ValueType.VTvPending,false).SetRequired(true), - SF_NodeConnector.Create(this,"C","C",ConType.cInput,ValueType.VTvPending,false).SetRequired(false), - SF_NodeConnector.Create(this,"D","D",ConType.cInput,ValueType.VTvPending,false).SetRequired(false), - SF_NodeConnector.Create(this,"E","E",ConType.cInput,ValueType.VTvPending,false).SetRequired(false) - }; - - - SetExtensionConnectorChain("B", "C", "D", "E"); - - base.conGroup = ScriptableObject.CreateInstance().Initialize( connectors[0], connectors[1], connectors[2], connectors[3], connectors[4], connectors[5] ); - - } - - public override void GetModularShaderFixes( out string prefix, out string infix, out string suffix ) { - prefix = ""; - infix = " * "; - suffix = ""; - } - - public override string Evaluate( OutChannel channel = OutChannel.All ) { - - - string evalStr = ""; - - evalStr += GetConnectorByStringID( "A" ).TryEvaluate() + "*" + GetConnectorByStringID( "B" ).TryEvaluate(); - - ChainAppendIfConnected(ref evalStr, "*", "C", "D", "E"); - - return "(" + evalStr + ")"; - } - - public override float EvalCPU( int c ) { - - float result = GetInputData( "A", c ) * GetInputData( "B", c ); - - if(GetInputIsConnected("C")){ - result *= GetInputData( "C", c ); - } - if(GetInputIsConnected("D")){ - result *= GetInputData( "D", c ); - } - if(GetInputIsConnected("E")){ - result *= GetInputData( "E", c ); - } - - return result; - } - } -} \ No newline at end of file diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Multiply.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Multiply.cs.meta deleted file mode 100755 index 68e66520..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Multiply.cs.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: e4fb4b834fbc00e4bac700df8f98ea7c -MonoImporter: - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_MultiplyMatrix.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_MultiplyMatrix.cs deleted file mode 100644 index 1774a633..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_MultiplyMatrix.cs +++ /dev/null @@ -1,91 +0,0 @@ -using UnityEngine; -using UnityEditor; -using System.Collections; -using System; - -namespace ShaderForge { - - [System.Serializable] - public class SFN_MultiplyMatrix : SF_Node_Arithmetic { - - public Matrix4x4 mtx; - - public SFN_MultiplyMatrix() { - - } - - public override void Initialize() { - node_height = 58; - base.Initialize( "Multiply Matrix" ); - base.showColor = false; - base.UseLowerPropertyBox( false, true ); - //UseLowerReadonlyValues( true ); - - connectors = new SF_NodeConnector[]{ - SF_NodeConnector.Create(this,"OUT","",ConType.cOutput,ValueType.VTv4m4x4,false), - SF_NodeConnector.Create(this,"A","A",ConType.cInput,ValueType.VTv4m4x4,false).SetRequired(true), - SF_NodeConnector.Create(this,"B","B",ConType.cInput,ValueType.VTv4m4x4,false).SetRequired(true) - }; - - base.conGroup = ScriptableObject.CreateInstance().Initialize( connectors[0], connectors[1], connectors[2] ); - - } - - - - public override string Evaluate( OutChannel channel = OutChannel.All ) { - string evalStr = ""; - evalStr += "mul(" + GetConnectorByStringID( "A" ).TryEvaluate() + "," + GetConnectorByStringID( "B" ).TryEvaluate() + ")"; - return evalStr; - } - - public override Vector4 EvalCPU() { - - return Color.black; - /* - SF_NodeConnector a = ConnectedInputs[0]; - SF_NodeConnector b = ConnectedInputs[1]; - - if( !a.IsConnected() || !b.IsConnected() ) { - return Color.black; - } - - - bool am = a.inputCon.valueType == ValueType.VTm4x4; - bool bm = b.inputCon.valueType == ValueType.VTm4x4; - - Matrix4x4 mtx; - if( am && bm ) { - return Color.black; - } else if(am){ - mtx = ( a.inputCon.node as SFN_Matrix4x4 ).mtx; - return mtx * GetInputData( "B" )[x,y]; - } else if( bm ) { - mtx = ( b.inputCon.node as SFN_Matrix4x4 ).mtx; - return mtx.transpose * GetInputData( "A" )[x, y]; - } - return Color.black;*/ - } - - - - public override void NeatWindow() { - PrepareWindowColor(); - GUI.BeginGroup( rect ); - Rect r = new Rect( rectInner ); - r = r.Pad( 4 ); - - Rect texCoords = new Rect( r ); - texCoords.width /= 7; - texCoords.height /= 3; - texCoords.x = texCoords.y = 0; - GUI.DrawTextureWithTexCoords( r, SF_GUI.Handle_drag, texCoords, alphaBlend: true ); - - GUI.EndGroup(); - ResetWindowColor(); - - } - - - } -} \ No newline at end of file diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_MultiplyMatrix.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_MultiplyMatrix.cs.meta deleted file mode 100644 index 91806432..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_MultiplyMatrix.cs.meta +++ /dev/null @@ -1,12 +0,0 @@ -fileFormatVersion: 2 -guid: adea9494f4e8c5a4a9e044ebb72374ee -timeCreated: 1436175018 -licenseType: Pro -MonoImporter: - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Negate.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Negate.cs deleted file mode 100755 index 8bd3ee74..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Negate.cs +++ /dev/null @@ -1,30 +0,0 @@ -using UnityEngine; - -namespace ShaderForge { - - [System.Serializable] - public class SFN_Negate : SF_Node_Arithmetic { - - public SFN_Negate() { - } - - public override void Initialize() { - base.Initialize( "Negate" ); - base.PrepareArithmetic( 1 ); - base.shaderGenMode = ShaderGenerationMode.CustomFunction; - } - - public override string[] GetBlitOutputLines() { - return new string[] { "(-1*_in)" }; - } - - public override string Evaluate( OutChannel channel = OutChannel.All ) { - return "(-1*" + GetConnectorByStringID( "IN" ).TryEvaluate() + ")"; - } - - public override float EvalCPU( int c ) { - return -GetInputData( "IN", c ); - } - - } -} \ No newline at end of file diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Negate.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Negate.cs.meta deleted file mode 100755 index bf594a50..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Negate.cs.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: e3df968e03820c742ab7e8c36642dca2 -MonoImporter: - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Node_Constant.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Node_Constant.cs deleted file mode 100755 index 07957c14..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Node_Constant.cs +++ /dev/null @@ -1,57 +0,0 @@ -using UnityEngine; -using UnityEditor; -using System.Collections; - -namespace ShaderForge { - - [System.Serializable] - public class SFN_Node_Constant : SF_Node { - - - public float constFloat; - public string constStr; - - - - public SFN_Node_Constant() { - } - - public void PrepareConstant(string icon, string constant){ - base.showColor = true; - base.UseLowerPropertyBox( true, true ); - base.showLowerReadonlyValues = true; - base.texture.uniform = true; - base.shaderGenMode = ShaderGenerationMode.OffUniform; - constStr = constant; - constFloat = float.Parse( constant ); - - connectors = new SF_NodeConnector[]{ - SF_NodeConnector.Create(this,"OUT","",ConType.cOutput,ValueType.VTv1,false) - }; - base.texture.CompCount = 1; - base.texture.dataUniform[0] = constFloat; - node_height = Mathf.RoundToInt( node_height * 0.6666666666f ); - node_width = Mathf.RoundToInt( node_width * 0.6666666666f ); - InitializeDefaultRect( rect.center ); - - } - - public override string Evaluate( OutChannel channel = OutChannel.All ) { - return constStr; - } - - public override float EvalCPU( int c ) { - return constFloat; - } - - public override int GetEvaluatedComponentCount() { - return 1; - } - - /* - public override void DrawLowerPropertyBox() { - GUI.Label( lowerRect, texture.dataUniform[0].ToString(), EditorStyles.textField ); - }*/ - - } -} \ No newline at end of file diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Node_Constant.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Node_Constant.cs.meta deleted file mode 100755 index a3ef7002..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Node_Constant.cs.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: 7c4dd42ed9362ff43a8f530348653ef1 -MonoImporter: - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Noise.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Noise.cs deleted file mode 100755 index 13694ec5..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Noise.cs +++ /dev/null @@ -1,87 +0,0 @@ -using UnityEngine; -using UnityEditor; -using System.Collections; -using System; - -namespace ShaderForge { - - [System.Serializable] - public class SFN_Noise : SF_Node { - - public SFN_Noise() { - - } - - public override void Initialize() { - base.Initialize( "Noise" ); - base.UseLowerPropertyBox(false); - base.showColor = true; - base.alwaysDefineVariable = true; - base.shaderGenMode = ShaderGenerationMode.CustomFunction; - connectors = new SF_NodeConnector[]{ - SF_NodeConnector.Create(this,"OUT","Rnd",ConType.cOutput,ValueType.VTv1,false), - SF_NodeConnector.Create(this,"XY","XY",ConType.cInput,ValueType.VTv2,false).SetRequired(false).TypecastTo(2).WithUseCount(3).SetGhostNodeLink(typeof(SFN_TexCoord),"UVOUT") - }; - } - - public override int GetEvaluatedComponentCount (){ - return 1; - } - - - public override void OnUpdateNode( NodeUpdateType updType, bool cascade = true ) { - if( InputsConnected() ) - RefreshValue( 1, 1 ); - base.OnUpdateNode( updType ); - } - - - - public string Skew() { - return GetVariableName() + "_skew"; - } - - public string Rnd() { - return GetVariableName() + "_rnd"; - } - - public override string[] GetBlitOutputLines() { - return new string[] { - "float2 s = _xy + 0.2127+_xy.x*0.3713*_xy.y;", - "float2 r = 4.789*sin(489.123*s);", - "frac(r.x*r.y*(1+s.x))" - }; - } - - public override string[] GetPreDefineRows (){ - - string p = this["XY"].TryEvaluate(); - string r = Rnd(); - string s = Skew(); - - return new string[]{ - "float2 "+s+" = "+p+" + 0.2127+"+p+".x*0.3713*"+p+".y;", - "float2 "+r+" = 4.789*sin(489.123*("+s+"));" - }; - } - - public override string Evaluate( OutChannel channel = OutChannel.All ) { - string r = Rnd(); - string s = Skew(); - return "frac("+r+".x*"+r+".y*(1+"+s+".x))"; - } - - public override Vector4 EvalCPU() { - - Vector2 p = GetInputIsConnected( "XY" ) ? GetInputData( "XY" ).dataUniform : Vector4.one; - - float tmp = 0.2127f+p.x*0.3713f*p.y; - Vector2 s = p + new Vector2(tmp,tmp); - - Vector2 r = Vector2.Scale (new Vector2(4.789f,4.789f), new Vector2(Mathf.Sin(489.123f*s.x),Mathf.Sin(489.123f*s.y))); - - return SF_Tools.Frac(r.x*r.y*(1f+s.x)) * Vector4.one; - } - - } -} \ No newline at end of file diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Noise.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Noise.cs.meta deleted file mode 100644 index 17817a63..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Noise.cs.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: e1b0f1ce950794145888c8e0552a1bb0 -MonoImporter: - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_NormalBlend.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_NormalBlend.cs deleted file mode 100755 index e3dd37c2..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_NormalBlend.cs +++ /dev/null @@ -1,101 +0,0 @@ -using UnityEngine; -using UnityEditor; -using System.Collections; -//using System; - -namespace ShaderForge { - - [System.Serializable] - public class SFN_NormalBlend : SF_Node { - - // SF_Node tNode; - - public SFN_NormalBlend() { - - } - - - public override void Initialize() { - base.Initialize( "Normal Blend" ); - base.showColor = true; - UseLowerReadonlyValues( false ); - base.alwaysDefineVariable = true; - base.shaderGenMode = ShaderGenerationMode.CustomFunction; - texture.CompCount = 3; - - connectors = new SF_NodeConnector[]{ - SF_NodeConnector.Create(this,"OUT","",ConType.cOutput,ValueType.VTv3,false), - SF_NodeConnector.Create(this,"BSE","Base",ConType.cInput,ValueType.VTv3,false).SetRequired(true), - SF_NodeConnector.Create(this,"DTL","Det.",ConType.cInput,ValueType.VTv3,false).SetRequired(true) - }; - - //extraWidthInput = 5; - - } - - - public override void OnUpdateNode( NodeUpdateType updType, bool cascade = true ) { - if( InputsConnected() ) - RefreshValue( 1, 2 ); - base.OnUpdateNode( updType ); - } - - public override bool IsUniformOutput() { - return ( GetInputData( "BSE" ).uniform && GetInputData( "DTL" ).uniform ); - } - - public override int GetEvaluatedComponentCount() { - return 3; - } - - public string BaseNrm() { - return GetVariableName() + "_nrm_base"; - } - public string DetailNrm() { - return GetVariableName() + "_nrm_detail"; - } - public string CombinedNrm() { - return GetVariableName() + "_nrm_combined"; - } - - /* - float3 t = nrmBase + float3(0, 0, 1); - float3 u = nrmDetail * float3(-1, -1, 1); - float3 rnm = t*dot(t, u)/t.z - u; - */ - - public override string[] GetBlitOutputLines() { - return new string[] { - "float3 bse = _bse.xyz + float3(0,0,1);", - "float3 dtl = _dtl.xyz * float3(-1,-1,1);", - "float4(bse*dot(bse, dtl)/bse.z - dtl,0)" - }; - } - - public override string[] GetPreDefineRows() { - return new string[] { - "float3 " + BaseNrm() + " = " + this["BSE"].TryEvaluate() + " + float3(0,0,1);", - "float3 " + DetailNrm() + " = " + this["DTL"].TryEvaluate() + " * float3(-1,-1,1);", - "float3 " + CombinedNrm() + " = " + BaseNrm() + "*dot(" + BaseNrm() + ", " + DetailNrm() + ")/" + BaseNrm() + ".z - " + DetailNrm() + ";" - }; - } - - public override string Evaluate( OutChannel channel = OutChannel.All ) { - return CombinedNrm(); - } - - public override Vector4 EvalCPU() { - - Vector3 bse = (Vector3)GetInputData( "BSE" ).dataUniform + new Vector3(0,0,1); - Vector3 dtl = Vector3.Scale( (Vector3)GetInputData( "DTL" ).dataUniform, new Vector3(-1,-1,1)); - - Vector3 cmb = bse*Vector3.Dot(bse, dtl)/bse.z - dtl; - - return cmb; - } - - - - - } -} \ No newline at end of file diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_NormalBlend.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_NormalBlend.cs.meta deleted file mode 100644 index 152c2591..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_NormalBlend.cs.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: ed09b5422155445199a1bb8aa27d9d78 -MonoImporter: - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_NormalVector.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_NormalVector.cs deleted file mode 100755 index 2219ea75..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_NormalVector.cs +++ /dev/null @@ -1,78 +0,0 @@ -using UnityEngine; -using UnityEditor; -using System.Collections; - -namespace ShaderForge { - - [System.Serializable] - public class SFN_NormalVector : SF_Node { - - - public bool perturbed; - - public SFN_NormalVector() { - - } - - public override void Initialize() { - perturbed = false; - base.Initialize( "Normal Dir.", InitialPreviewRenderMode.BlitSphere ); - base.showColor = true; - base.UseLowerPropertyBox( true, true ); - //UpdateIcon(); - base.texture.CompCount = 3; - base.neverDefineVariable = true; - connectors = new SF_NodeConnector[]{ - SF_NodeConnector.Create(this,"OUT","",ConType.cOutput,ValueType.VTv3,false) - }; - base.lockedVariableName = true; - } - - public override Vector4 EvalCPU() { - return new Color( 0, 0, 1, 0 ); - } - - public override string Evaluate( OutChannel channel = OutChannel.All ) { - if( SF_Evaluator.inVert || SF_Evaluator.inTess ) - return "v.normal"; - return perturbed ? "normalDirection" : "i.normalDir"; - } - /* - public void UpdateIcon() { - if(perturbed){ - texture.LoadDataTexture(this.GetType(), "2"); - } else { - texture.LoadDataTexture(this.GetType()); - } - base.texture.SetIconId( perturbed ? 1 : 0 ); - }*/ - - public override void DrawLowerPropertyBox() { - EditorGUI.BeginChangeCheck(); - Rect r = lowerRect; - r.xMin += 3; - perturbed = EditorGUI.Toggle( r, perturbed ); - r.xMin += 17; - GUI.Label(r,"Perturbed"); - if( EditorGUI.EndChangeCheck() ) { - //UpdateIcon(); - OnUpdateNode(); - } - - } - - public override string SerializeSpecialData() { - return "pt:" + perturbed; - } - - public override void DeserializeSpecialData( string key, string value ) { - switch( key ) { - case "pt": - perturbed = bool.Parse( value ); - //UpdateIcon(); - break; - } - } - - } -} \ No newline at end of file diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_NormalVector.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_NormalVector.cs.meta deleted file mode 100755 index cf258db3..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_NormalVector.cs.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: 60dad608f3107a142b0f959e8671cf81 -MonoImporter: - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Normalize.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Normalize.cs deleted file mode 100755 index 90a67b0d..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Normalize.cs +++ /dev/null @@ -1,44 +0,0 @@ -using UnityEngine; - -namespace ShaderForge { - - [System.Serializable] - public class SFN_Normalize : SF_Node_Arithmetic { - - public SFN_Normalize() { - } - - public override void Initialize() { - base.Initialize( "Normalize" ); - base.PrepareArithmetic( 1 ); - base.shaderGenMode = ShaderGenerationMode.SimpleFunction; - } - - public override string Evaluate( OutChannel channel = OutChannel.All ) { - return "normalize(" + GetConnectorByStringID( "IN" ).TryEvaluate() + ")"; - } - - /* - public override float NodeOperator( int c ) { - return Mathf.Abs( GetInputData( 1, x, y, c ) ); - }*/ - - public override Vector4 EvalCPU() { - - Vector4 v = GetInputData( "IN" ).dataUniform; - - switch( GetInputData( "IN" ).CompCount ) { - case 1: - float val = Mathf.Sign( v.x ); - return new Vector4( val, val, val, val ); - case 2: - return (Vector4)((Vector2)v).normalized; - case 3: - return (Vector4)( (Vector3)v ).normalized; - default: - return v.normalized; - } - } - - } -} \ No newline at end of file diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Normalize.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Normalize.cs.meta deleted file mode 100755 index 5b6d78c9..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Normalize.cs.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: eaaa4d2409678fa4aa98dd05538841e7 -MonoImporter: - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ObjectPosition.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ObjectPosition.cs deleted file mode 100755 index d33922bc..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ObjectPosition.cs +++ /dev/null @@ -1,39 +0,0 @@ -using UnityEngine; -using UnityEditor; -using System.Collections; - -namespace ShaderForge { - - [System.Serializable] - public class SFN_ObjectPosition : SF_Node { - - - public SFN_ObjectPosition() { - - } - - public override void Initialize() { - base.Initialize( "Object Pos." ); - base.showColor = true; - base.UseLowerPropertyBox( false ); - base.texture.CompCount = 4; - base.neverDefineVariable = true; - connectors = new SF_NodeConnector[]{ - SF_NodeConnector.Create(this,"XYZ","XYZ",ConType.cOutput,ValueType.VTv3,false).Outputting(OutChannel.RGB), - SF_NodeConnector.Create(this,"X","X",ConType.cOutput,ValueType.VTv1,false).Outputting(OutChannel.R).WithColor(Color.red), - SF_NodeConnector.Create(this,"Y","Y",ConType.cOutput,ValueType.VTv1,false).Outputting(OutChannel.G).WithColor(Color.green), - SF_NodeConnector.Create(this,"Z","Z",ConType.cOutput,ValueType.VTv1,false).Outputting(OutChannel.B).WithColor(Color.blue), - SF_NodeConnector.Create(this,"W","W",ConType.cOutput,ValueType.VTv1,false).Outputting(OutChannel.A) - }; - } - - public override Vector4 EvalCPU() { - return new Color( 0f, 0.7071068f, 0.7071068f, 0f ); - } - - public override string Evaluate( OutChannel channel = OutChannel.All ) { - return "objPos"; // normalize(_WorldSpaceLightPos0.xyz); - } - - } -} \ No newline at end of file diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ObjectPosition.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ObjectPosition.cs.meta deleted file mode 100755 index f87fead4..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ObjectPosition.cs.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: 258f9aa8e54fb9646858e46b7fd133dd -MonoImporter: - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ObjectScale.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ObjectScale.cs deleted file mode 100644 index 172e1255..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ObjectScale.cs +++ /dev/null @@ -1,70 +0,0 @@ -using UnityEngine; -using UnityEditor; -using System.Collections; - -namespace ShaderForge { - - [System.Serializable] - public class SFN_ObjectScale : SF_Node { - - - public bool reciprocal; - - public SFN_ObjectScale() { - - } - - public override void Initialize() { - base.Initialize( "Object Scale", InitialPreviewRenderMode.BlitQuad ); - base.showColor = true; - base.UseLowerPropertyBox( true, true ); - base.texture.CompCount = 3; - base.neverDefineVariable = true; - connectors = new SF_NodeConnector[]{ - SF_NodeConnector.Create(this,"XYZ","XYZ",ConType.cOutput,ValueType.VTv3,false), - SF_NodeConnector.Create(this,"X","X",ConType.cOutput,ValueType.VTv1,false).Outputting(OutChannel.R).WithColor(Color.red), - SF_NodeConnector.Create(this,"Y","Y",ConType.cOutput,ValueType.VTv1,false).Outputting(OutChannel.G).WithColor(Color.green), - SF_NodeConnector.Create(this,"Z","Z",ConType.cOutput,ValueType.VTv1,false).Outputting(OutChannel.B).WithColor(Color.blue) - }; - } - - public override Vector4 EvalCPU() { - return new Color( 1f, 1f, 1f, 1f ); - } - - public override string Evaluate( OutChannel channel = OutChannel.All ) { - return reciprocal ? "recipObjScale" : "objScale"; - } - - public override string GetBlitShaderSuffix() { - if( reciprocal ) - return "Reciprocal"; - return "Default"; - } - - public override void DrawLowerPropertyBox() { - EditorGUI.BeginChangeCheck(); - Rect r = lowerRect; - r.xMin += 3; - reciprocal = EditorGUI.Toggle( r, reciprocal ); - r.xMin += 17; - GUI.Label( r, "Reciprocal" ); - if( EditorGUI.EndChangeCheck() ) { - OnUpdateNode(); - } - } - - public override string SerializeSpecialData() { - return "rcp:" + reciprocal; - } - - public override void DeserializeSpecialData( string key, string value ) { - switch( key ) { - case "rcp": - reciprocal = bool.Parse( value ); - break; - } - } - - } -} \ No newline at end of file diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ObjectScale.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ObjectScale.cs.meta deleted file mode 100644 index 3d278bf7..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ObjectScale.cs.meta +++ /dev/null @@ -1,9 +0,0 @@ -fileFormatVersion: 2 -guid: cdfee0322d93a3349a5b3cb98e76c9ca -MonoImporter: - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_OneMinus.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_OneMinus.cs deleted file mode 100755 index e1a3e0de..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_OneMinus.cs +++ /dev/null @@ -1,57 +0,0 @@ -using UnityEngine; -using UnityEditor; -using System.Collections; -using System; - -namespace ShaderForge { - - [System.Serializable] - public class SFN_OneMinus : SF_Node { - - public SFN_OneMinus() { - - } - - public override void Initialize() { - base.Initialize( "One Minus" ); - base.showColor = true; - base.shaderGenMode = ShaderGenerationMode.CustomFunction; - UseLowerReadonlyValues( true ); - - connectors = new SF_NodeConnector[]{ - SF_NodeConnector.Create(this,"OUT","",ConType.cOutput,ValueType.VTvPending,false), - SF_NodeConnector.Create(this,"IN","",ConType.cInput,ValueType.VTvPending,false).SetRequired(true) - }; - - base.conGroup = ScriptableObject.CreateInstance().Initialize( connectors[0], connectors[1] ); - } - - public override int GetEvaluatedComponentCount() { - return this["IN"].GetCompCount(); - } - - public override bool IsUniformOutput() { - return GetInputData( "IN" ).uniform; - } - - public override string[] GetBlitOutputLines() { - return new string[] { "1.0 - _in" }; - } - - - // New system - public override void RefreshValue() { - RefreshValue( 1, 1 ); - } - - public override string Evaluate( OutChannel channel = OutChannel.All ) { - return "(1.0 - " + GetConnectorByStringID( "IN" ).TryEvaluate() + ")"; - } - - public override float EvalCPU( int c ) { - return 1f - GetInputData( "IN", c ); - } - - - } -} \ No newline at end of file diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_OneMinus.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_OneMinus.cs.meta deleted file mode 100755 index 5e3ca60d..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_OneMinus.cs.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: 553497763edc19b4a854a3f6c55a2782 -MonoImporter: - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Panner.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Panner.cs deleted file mode 100755 index e65d66bf..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Panner.cs +++ /dev/null @@ -1,161 +0,0 @@ -using UnityEngine; -using UnityEditor; -using System.Collections; -//using System; - -namespace ShaderForge { - - [System.Serializable] - public class SFN_Panner : SF_Node { - - // SF_Node tNode; - - - public Vector2 speed = new Vector2(1,1); - - public SFN_Panner() { - - } - - - public override void Initialize() { - base.Initialize( "Panner" ); - base.showColor = true; - base.UseLowerPropertyBox( true, true ); - base.shaderGenMode = ShaderGenerationMode.Modal; - texture.CompCount = 2; - connectors = new SF_NodeConnector[]{ - SF_NodeConnector.Create(this,"UVOUT","UV",ConType.cOutput,ValueType.VTv2,false), - SF_NodeConnector.Create(this,"UVIN","UV",ConType.cInput,ValueType.VTv2,false).SetRequired(true)/*.SetGhostNodeLink(typeof(SFN_TexCoord),"UVOUT")*/, - SF_NodeConnector.Create(this,"DIST","Dist",ConType.cInput,ValueType.VTv1,false).SetRequired(false).SetGhostNodeLink(typeof(SFN_Time),"T") - }; - - } - - - public override void DrawLowerPropertyBox() { - //EditorGUI.BeginChangeCheck(); - Rect r = lowerRect; - r.width /= 8; - GUI.Label(r,"U"); - r.x += r.width; - r.width *= 3; - //SF_GUI.EnterableFloatField( this, r, ref speed.x, EditorStyles.textField ); - UndoableEnterableFloatField( r, ref speed.x, "U speed", EditorStyles.textField ); - //speed.x = EditorGUI.FloatField( r, speed.x ); - r.x += r.width; - r.width /= 3; - GUI.Label( r, "V" ); - r.x += r.width; - r.width *= 3; - //SF_GUI.EnterableFloatField( this, r, ref speed.y, EditorStyles.textField ); - UndoableEnterableFloatField( r, ref speed.y, "V speed", EditorStyles.textField ); - //speed.y = EditorGUI.FloatField( r, speed.y ); - - //if( EditorGUI.EndChangeCheck() ) { - // OnUpdateNode(); - //} - - } - - public override string[] ExtraPassedFloatProperties() { - return new string[]{ - "Uspeed", - "Vspeed" - }; - } - - public override string[] GetModalModes() { - return new string[]{ - "REQONLY", - "DIST" - }; - } - - public override string GetCurrentModalMode() { - if( this["DIST"].IsConnectedAndEnabled() ) - return "DIST"; - return "REQONLY"; - } - - public override void PrepareRendering( Material mat ) { - mat.SetFloat( "_uspeed", speed.x ); - mat.SetFloat( "_vspeed", speed.y ); - } - - public override string[] GetBlitOutputLines( string mode ) { - string distStr = mode == "DIST" ? "_dist.x" : "0"; - return new string[]{ - "float4((_uvin.xy+" + distStr + "*float2(_uspeed,_vspeed)),0,0)" - }; - } - - public override void OnUpdateNode( NodeUpdateType updType = NodeUpdateType.Hard, bool cascade = true ) { - if( InputsConnected() ) - RefreshValue( 1, 2 ); - base.OnUpdateNode( updType ); - } - - public override bool IsUniformOutput() { - if(this["UVIN"].IsConnectedAndEnabled() && this["DIST"].IsConnectedAndEnabled()){ - return ( GetInputData( "UVIN" ).uniform && GetInputData( "DIST" ).uniform ); - } - return false; - } - - public override int GetEvaluatedComponentCount() { - return 2; - } - - public override bool UpdatesOverTime() { - return true; //GetInputIsConnected( "DIST" ); - } - - - public override string Evaluate( OutChannel channel = OutChannel.All ) { - string distEval = this["DIST"].TryEvaluate(); - return "(" + GetInputCon( "UVIN" ).Evaluate() + "+" + distEval + "*float2(" + speed.x + "," + speed.y + "))"; - } - - // TODO Expose more out here! - public override Vector4 EvalCPU() { - - Vector2 inputVec = Vector2.one; - - if(GetInputIsConnected("UVIN")){ - inputVec = new Vector2( GetInputData( "UVIN", 0 ), GetInputData( "UVIN", 1 ) ); - } else { - //inputVec = new Vector2( x/((float)SF_Node.NODE_SIZE), y/SF_NodeData.RESf ); // TODO: should use ghost nodes... - } - - - float distance = GetInputIsConnected( "DIST" ) ? GetInputData( "DIST", 0 ) : 0f; - return (Vector4)( inputVec + speed * distance ); - } - - - public override string SerializeSpecialData() { - string s = "spu:" + speed.x + ","; - s += "spv:" + speed.y; - return s; - } - - public override void DeserializeSpecialData( string key, string value ) { - switch( key ) { - case "spu": - float fVal1 = float.Parse( value ); - speed.x = fVal1; - break; - case "spv": - float fVal2 = float.Parse( value ); - speed.y = fVal2; - break; - } - } - - - - - - } -} \ No newline at end of file diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Panner.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Panner.cs.meta deleted file mode 100755 index 068e4e17..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Panner.cs.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: 42c03a582f7865e4ab828b6649d825a8 -MonoImporter: - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Parallax.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Parallax.cs deleted file mode 100755 index 4b49e76d..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Parallax.cs +++ /dev/null @@ -1,142 +0,0 @@ -using UnityEngine; -using UnityEditor; -using System.Collections; -//using System; - -namespace ShaderForge { - - [System.Serializable] - public class SFN_Parallax : SF_Node { - - // SF_Node tNode; - - public SFN_Parallax() { - - } - - - public override void Initialize() { - base.Initialize( "Parallax" ); - base.showColor = true; - base.shaderGenMode = ShaderGenerationMode.ManualModal; - UseLowerReadonlyValues( false ); - texture.CompCount = 2; - //SF_NodeConnection lerpCon; - connectors = new SF_NodeConnector[]{ - SF_NodeConnector.Create(this,"UVOUT","UV",ConType.cOutput,ValueType.VTv2,false).Outputting(OutChannel.RG), - SF_NodeConnector.Create(this,"UVIN","UV",ConType.cInput,ValueType.VTv2,false).SetGhostNodeLink(typeof(SFN_TexCoord),"UVOUT"), - SF_NodeConnector.Create(this,"HEI","Hei",ConType.cInput,ValueType.VTv1,false).SetRequired(true), - SF_NodeConnector.Create(this,"DEP","Dep",ConType.cInput,ValueType.VTv1,false), - SF_NodeConnector.Create(this,"REF","Ref",ConType.cInput,ValueType.VTv1,false) - }; - - //base.conGroup = ScriptableObject.CreateInstance().Initialize( connectors[0], connectors[1], connectors[2] ); - } - - - public override void OnUpdateNode( NodeUpdateType updType, bool cascade = true ) { - if( InputsConnected() ) - RefreshValue( 1, 2 ); - base.OnUpdateNode( updType ); - } - - - public override bool IsUniformOutput() { - return false; - } - - public override int GetEvaluatedComponentCount() { - return 2; - } - - public override string GetCurrentModalMode() { - - - bool uvCon = GetInputIsConnected( "UVIN" ); - bool refCon = GetInputIsConnected( "REF" ); - bool depCon = GetInputIsConnected( "DEP" ); - - if( !uvCon && !refCon && !depCon ) { - return "REQONLY"; - } - - if( uvCon && !refCon && !depCon ) { - return "UV"; - } - - string s = ""; - if( refCon && depCon ) { - s = "DEP_REF"; - } else { - if( refCon ) - s = "REF"; - else - s = "DEP"; - } - - - if( GetInputIsConnected( "UVIN" ) ) { - s = "UV_" + s; - } - - return s; - - } - - public override string[] GetModalModes() { - return new string[] { - "REQONLY", - "DEP", - "REF", - "DEP_REF", - "UV", - "UV_DEP", - "UV_REF", - "UV_DEP_REF", - }; - } - - public override string[] GetBlitOutputLines( string mode ) { - - string uvStr = mode.Contains( "UV" ) ? "_uv.xy" : "i.uv0.xy"; - string depStr = mode.Contains( "DEP" ) ? "_dep.x" : "0.05"; - string refStr = mode.Contains( "REF" ) ? "_ref.x" : "0.5"; - string vDir = "mul(tangentTransform, viewDirection).xy"; - - string line = string.Format( "({0}*({1} - {2})*{3} + {4})", depStr, "_hei", refStr, vDir, uvStr ); - return new string[] { line }; - - } - - - public override string Evaluate( OutChannel channel = OutChannel.All ) { - - string uv = GetInputIsConnected( "UVIN" ) ? GetInputCon( "UVIN" ).Evaluate() : "i.uv0.xy"; - string hei = GetInputCon( "HEI" ).Evaluate(); - string dep = GetInputIsConnected( "DEP" ) ? GetInputCon( "DEP" ).Evaluate() : "0.05"; - string href = GetInputIsConnected( "REF" ) ? GetInputCon( "REF" ).Evaluate() : "0.5"; - string vDir = "mul(tangentTransform, viewDirection).xy"; - - return "(" + dep + "*(" + hei + " - " + href + ")*" + vDir + " + " + uv + ")"; - } - - // TODO Expose more out here! - public override float EvalCPU( int c ) { - - //return 1f; - - - if( GetInputIsConnected( "UVIN" ) && GetInputIsConnected( "HEI" ) ) { // UV and height connected ? - float hei = GetInputData( "HEI", c ); - float dep = GetInputIsConnected( "DEP" ) ? GetInputData( "DEP", c ) : 0.05f; - float href = GetInputIsConnected( "REF" ) ? GetInputData( "REF", c ) : 0.5f; - return GetInputData( "UVIN", c ) - ( dep * ( hei - href ) ); - } - else - return 0; - //return Lerp( GetInputData( 1, x, y, c ), GetInputData( 2, x, y, c ), GetInputData( 3, x, y, c ) ); - } - - - } -} \ No newline at end of file diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Parallax.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Parallax.cs.meta deleted file mode 100755 index 72f3a9a4..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Parallax.cs.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: 45449b9f1a89a1f419300f90e557f9b6 -MonoImporter: - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Phi.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Phi.cs deleted file mode 100755 index b3d72ce5..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Phi.cs +++ /dev/null @@ -1,19 +0,0 @@ -using UnityEngine; -using UnityEditor; -using System.Collections; - -namespace ShaderForge { - - [System.Serializable] - public class SFN_Phi : SFN_Node_Constant { - - public SFN_Phi() { - } - - public override void Initialize() { - base.Initialize( "Phi" ); - base.PrepareConstant( "const_phi", "1.61803398875" ); - } - - } -} \ No newline at end of file diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Phi.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Phi.cs.meta deleted file mode 100755 index ce3b1229..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Phi.cs.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: d74bd6a57e872b440a8754bf05a4e9cc -MonoImporter: - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Pi.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Pi.cs deleted file mode 100755 index 62b2c7d9..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Pi.cs +++ /dev/null @@ -1,19 +0,0 @@ -using UnityEngine; -using UnityEditor; -using System.Collections; - -namespace ShaderForge { - - [System.Serializable] - public class SFN_Pi : SFN_Node_Constant { - - public SFN_Pi() { - } - - public override void Initialize() { - base.Initialize( "Pi" ); - base.PrepareConstant( "const_pi", "3.141592654" ); - } - - } -} \ No newline at end of file diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Pi.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Pi.cs.meta deleted file mode 100755 index ed1f98fa..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Pi.cs.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: f2b0c407da0b7b8439fdd2e019fed284 -MonoImporter: - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_PixelSize.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_PixelSize.cs deleted file mode 100644 index bb37d554..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_PixelSize.cs +++ /dev/null @@ -1,38 +0,0 @@ -using UnityEngine; -using UnityEditor; -using System.Collections; - -namespace ShaderForge { - - [System.Serializable] - public class SFN_PixelSize : SF_Node { - - - public SFN_PixelSize() { - - } - - public override void Initialize() { - base.Initialize( "Pixel Size" ); - base.SearchName = "Pixel Size"; - base.showColor = true; - base.UseLowerPropertyBox( false ); - base.texture.CompCount = 2; - connectors = new SF_NodeConnector[]{ - SF_NodeConnector.Create(this,"PXWH","XY",ConType.cOutput,ValueType.VTv2,false).Outputting(OutChannel.RG), - SF_NodeConnector.Create(this,"PXW","X",ConType.cOutput,ValueType.VTv1,false).Outputting(OutChannel.R).WithColor(Color.red), - SF_NodeConnector.Create(this,"PXH","Y",ConType.cOutput,ValueType.VTv1,false).Outputting(OutChannel.G).WithColor(Color.green) - }; - //base.extraWidthOutput = 12; - } - - public override Vector4 EvalCPU() { - return new Color( 1f/1920f, 1f/1080f, 0f, 0f ); - } - - public override string Evaluate( OutChannel channel = OutChannel.All ) { - return "float2( _ScreenParams.z-1, _ScreenParams.w-1 )"; - } - - } -} \ No newline at end of file diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_PixelSize.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_PixelSize.cs.meta deleted file mode 100644 index 354ab356..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_PixelSize.cs.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: a2079e0d7a4d6dc4daf9b1214f41b8fb -MonoImporter: - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Posterize.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Posterize.cs deleted file mode 100755 index 6ab846b8..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Posterize.cs +++ /dev/null @@ -1,48 +0,0 @@ -using UnityEngine; - -namespace ShaderForge { - - [System.Serializable] - public class SFN_Posterize : SF_Node_Arithmetic { - - public SFN_Posterize() { - } - - public override void Initialize() { - base.Initialize( "Posterize" ); - base.showColor = true; - base.shaderGenMode = ShaderGenerationMode.CustomFunction; - UseLowerReadonlyValues( true ); - connectors = new SF_NodeConnector[]{ - SF_NodeConnector.Create( this, "OUT", "", ConType.cOutput, ValueType.VTvPending, false ), - SF_NodeConnector.Create( this, "IN", "", ConType.cInput, ValueType.VTvPending, false ).SetRequired( true ), - SF_NodeConnector.Create( this, "STPS", "Steps", ConType.cInput, ValueType.VTv1, false ).SetRequired( true ).WithUseCount(2) - }; - base.conGroup = ScriptableObject.CreateInstance().Initialize( connectors[0], connectors[1]); - base.extraWidthInput = 6; - } - - public override bool IsUniformOutput() { - return ( GetInputData( "IN" ).uniform && GetInputData( "STPS" ).uniform ); - } - - public override string[] GetBlitOutputLines() { - return new string[] { "floor(_in * _stps) / (_stps - 1)" }; - } - - public override string Evaluate( OutChannel channel = OutChannel.All ) { - - string mainInput = GetConnectorByStringID( "IN" ).TryEvaluate(); - string steps = GetConnectorByStringID( "STPS" ).TryEvaluate(); - - - return "floor(" + mainInput + " * " + steps + ") / (" + steps + " - 1)"; - } - - public override float EvalCPU( int c ) { - float steps = GetInputData( "STPS", c ); - return Mathf.Floor( GetInputData( "IN", c ) * steps ) / (steps - 1); - } - - } -} \ No newline at end of file diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Posterize.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Posterize.cs.meta deleted file mode 100644 index f244fa48..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Posterize.cs.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: ce4916dc08f684bff93ce9a9f0c72f79 -MonoImporter: - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Power.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Power.cs deleted file mode 100755 index 3bd594eb..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Power.cs +++ /dev/null @@ -1,56 +0,0 @@ -using UnityEngine; -using UnityEditor; -using System.Collections; -using System; - -namespace ShaderForge { - - [System.Serializable] - public class SFN_Power : SF_Node { - - public SFN_Power() { - - } - - public override void Initialize() { - base.Initialize( "Power" ); - base.showColor = true; - base.shaderGenMode = ShaderGenerationMode.CustomFunction; - UseLowerReadonlyValues( true ); - - connectors = new SF_NodeConnector[]{ - SF_NodeConnector.Create(this,"OUT","",ConType.cOutput,ValueType.VTvPending,false), - SF_NodeConnector.Create(this,"VAL","Val",ConType.cInput,ValueType.VTvPending,false).SetRequired(true), - SF_NodeConnector.Create(this,"EXP","Exp",ConType.cInput,ValueType.VTvPending,false).SetRequired(true) - }; - - base.conGroup = ScriptableObject.CreateInstance().Initialize( connectors[0], connectors[1], connectors[2] ); - } - - - public override int GetEvaluatedComponentCount() { - return Mathf.Max( this["VAL"].GetCompCount(), this["EXP"].GetCompCount() ); - } - - public override bool IsUniformOutput() { - return ( GetInputData( "VAL" ).uniform && GetInputData( "EXP" ).uniform ); - } - - public override string[] GetBlitOutputLines() { - return new string[] { "pow(_val,_exp)" }; - } - - public override string Evaluate( OutChannel channel = OutChannel.All ) { - return "pow(" + GetInputCon( "VAL" ).Evaluate() + "," + GetInputCon( "EXP" ).Evaluate() + ")"; - } - - // New system - public override void RefreshValue() { - RefreshValue( 1, 2 ); - } - - public override float EvalCPU( int c ) { - return Mathf.Pow( GetInputData( "VAL", c ), GetInputData( "EXP", c ) ); - } - } -} \ No newline at end of file diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Power.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Power.cs.meta deleted file mode 100755 index c34b5696..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Power.cs.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: 186b007e983e194498489dc426592f34 -MonoImporter: - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ProjectionParameters.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ProjectionParameters.cs deleted file mode 100755 index a7e23e59..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ProjectionParameters.cs +++ /dev/null @@ -1,40 +0,0 @@ -using UnityEngine; -using UnityEditor; -using System.Collections; - -namespace ShaderForge { - - [System.Serializable] - public class SFN_ProjectionParameters : SF_Node { - - - public SFN_ProjectionParameters() { - - } - - public override void Initialize() { - base.Initialize( "Proj. Params" ); - base.SearchName = "Projection Parameters"; - base.showColor = true; - base.UseLowerPropertyBox( false ); - base.texture.CompCount = 4; - base.neverDefineVariable = true; - connectors = new SF_NodeConnector[]{ - SF_NodeConnector.Create(this,"SGN","Sign",ConType.cOutput,ValueType.VTv1,false).Outputting(OutChannel.R), - SF_NodeConnector.Create(this,"NEAR","Near",ConType.cOutput,ValueType.VTv1,false).Outputting(OutChannel.G), - SF_NodeConnector.Create(this,"FAR","Far",ConType.cOutput,ValueType.VTv1,false).Outputting(OutChannel.B), - SF_NodeConnector.Create(this,"RFAR","1/Far",ConType.cOutput,ValueType.VTv1,false).Outputting(OutChannel.A) - }; - base.extraWidthOutput = 7; - } - - public override Vector4 EvalCPU() { - return new Color( 0f, 0.7071068f, 0.7071068f, 0f ); - } - - public override string Evaluate( OutChannel channel = OutChannel.All ) { - return "_ProjectionParams"; - } - - } -} \ No newline at end of file diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ProjectionParameters.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ProjectionParameters.cs.meta deleted file mode 100755 index bd5cac20..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ProjectionParameters.cs.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: 6725d93fa4d8e5a4eadd259e63cf8914 -MonoImporter: - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Reciprocal.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Reciprocal.cs deleted file mode 100644 index 92da5d87..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Reciprocal.cs +++ /dev/null @@ -1,59 +0,0 @@ -using UnityEngine; -using UnityEditor; -using System.Collections; -using System; - -namespace ShaderForge { - - [System.Serializable] - public class SFN_Reciprocal : SF_Node { - - public SFN_Reciprocal() { - - } - - public override void Initialize() { - base.Initialize( "Reciprocal" ); - base.showColor = true; - base.shaderGenMode = ShaderGenerationMode.CustomFunction; - UseLowerReadonlyValues( true ); - - connectors = new SF_NodeConnector[]{ - SF_NodeConnector.Create(this,"OUT","",ConType.cOutput,ValueType.VTvPending,false), - SF_NodeConnector.Create(this,"IN","",ConType.cInput,ValueType.VTvPending,false).SetRequired(true) - }; - - base.conGroup = ScriptableObject.CreateInstance().Initialize( connectors[0], connectors[1] ); - } - - public override int GetEvaluatedComponentCount() { - return this["IN"].GetCompCount(); - } - - public override bool IsUniformOutput() { - return GetInputData( "IN" ).uniform; - } - - public override string[] GetBlitOutputLines() { - return new string[] { "(1.0 / _in)" }; - } - - // New system - public override void RefreshValue() { - RefreshValue( 1, 1 ); - } - - public override string Evaluate( OutChannel channel = OutChannel.All ) { - return "(1.0 / " + GetConnectorByStringID( "IN" ).TryEvaluate() + ")"; - } - - public override float EvalCPU( int c ) { - float val = GetInputData( "IN", c ); - if(val == 0) - val = float.MaxValue; - return 1f / val; - } - - - } -} \ No newline at end of file diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Reciprocal.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Reciprocal.cs.meta deleted file mode 100644 index 1e1e4260..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Reciprocal.cs.meta +++ /dev/null @@ -1,12 +0,0 @@ -fileFormatVersion: 2 -guid: 9f87f5b738b04eb4d8d512131e680f39 -timeCreated: 1436199973 -licenseType: Pro -MonoImporter: - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Reflect.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Reflect.cs deleted file mode 100755 index 4970a115..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Reflect.cs +++ /dev/null @@ -1,34 +0,0 @@ -using UnityEngine; - -namespace ShaderForge { - - [System.Serializable] - public class SFN_Reflect : SF_Node_Arithmetic { - - public SFN_Reflect() { - - } - - public override void Initialize() { - base.Initialize( "Reflect" ); - base.PrepareArithmetic( 2 ); - connectors[1].label = "I"; - connectors[2].label = "N"; - base.shaderGenMode = ShaderGenerationMode.SimpleFunction; - } - - public override string Evaluate( OutChannel channel = OutChannel.All ) { - return "reflect(" + GetConnectorByStringID( "A" ).TryEvaluate() + "," + GetConnectorByStringID( "B" ).TryEvaluate() + ")"; - } - - public override Vector4 EvalCPU() { - Color i = GetInputData( "A" ).dataUniform; - Color n = GetInputData( "B" ).dataUniform; - int cc = Mathf.Max(GetInputCon( "A" ).GetCompCount(), GetInputCon( "B" ).GetCompCount()); - float dot = SF_Tools.Dot(i, n, cc); - return i - 2 * n * dot; - } - - - } -} \ No newline at end of file diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Reflect.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Reflect.cs.meta deleted file mode 100755 index 1f1f2eef..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Reflect.cs.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: 133722a37716917478fcc26301e64759 -MonoImporter: - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Relay.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Relay.cs deleted file mode 100755 index 179373ad..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Relay.cs +++ /dev/null @@ -1,69 +0,0 @@ -using UnityEngine; -using UnityEditor; -using System.Collections; - -namespace ShaderForge { - - [System.Serializable] - public class SFN_Relay : SF_Node_Arithmetic { - - - public SFN_Relay() { - - } - - public override void Initialize() { - node_height = 24; - node_width = 40; - base.Initialize( "Relay" ); - lowerRect.y -= 8; - lowerRect.height = 28; - base.showColor = false; - base.discreteTitle = true; - base.UseLowerPropertyBox( true, true ); - base.shaderGenMode = ShaderGenerationMode.CustomFunction; - extraWidthInput = -9; - extraWidthOutput = -9; - //base.texture.uniform = true; - //base.texture.CompCount = 1; - - connectors = new SF_NodeConnector[]{ - SF_NodeConnector.Create(this,"OUT","",ConType.cOutput,ValueType.VTvPending,false), - SF_NodeConnector.Create(this,"IN","",ConType.cInput,ValueType.VTvPending,false).SetRequired(true), - }; - - base.conGroup = ScriptableObject.CreateInstance().Initialize( connectors[0], connectors[1]); - - } - - public override string[] GetBlitOutputLines() { - return new string[] { "_in" }; - } - - public override string Evaluate( OutChannel channel = OutChannel.All ) { - return GetConnectorByStringID( "IN" ).TryEvaluate(); - } - - public override float EvalCPU( int c ) { - return GetInputData( "IN", c ); - } - - - public override void DrawLowerPropertyBox() { - Rect r = new Rect( lowerRect ); - r.yMin += 4; - r.yMax -= 2; - r.xMin += 2; - Rect texCoords = new Rect( r ); - texCoords.width /= 7; - texCoords.height /= 3; - texCoords.x = texCoords.y = 0; - GUI.DrawTextureWithTexCoords( r, SF_GUI.Handle_drag, texCoords, alphaBlend:true ); - } - - - - - - } -} \ No newline at end of file diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Relay.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Relay.cs.meta deleted file mode 100644 index ca9d5abb..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Relay.cs.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: 7fb81051589734669a06831b008982b6 -MonoImporter: - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_RemapRange.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_RemapRange.cs deleted file mode 100755 index 818cb0e4..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_RemapRange.cs +++ /dev/null @@ -1,151 +0,0 @@ -using UnityEngine; -using UnityEditor; -using System.Collections; -//using System; - -namespace ShaderForge { - - [System.Serializable] - public class SFN_RemapRange : SF_Node_Arithmetic { - - // SF_Node tNode; - - [SerializeField] - Vector2 from = new Vector2(0,1); - [SerializeField] - Vector2 to = new Vector2(-1,1); - [SerializeField] - float multiplier = 2f; - float offset = -1f; - - - public SFN_RemapRange() { - - } - - - public override void Initialize() { - base.Initialize( "Remap (Simple)" ); - base.SearchName = "Remap Simple"; - base.showColor = true; - base.UseLowerPropertyBox( true, true ); - base.PrepareArithmetic(1); - base.node_height += 15; - base.shaderGenMode = ShaderGenerationMode.ValuePassing; - UpdateMultOffset(); - - } - - - // n-p*m = x - - public override string[] ExtraPassedFloatProperties() { - return new string[]{ - "Multiplier", - "Offset" - }; - } - - public override void PrepareRendering( Material mat ) { - UpdateMultOffset(); - mat.SetFloat( "_multiplier", multiplier ); - mat.SetFloat( "_offset", offset ); - } - - public override string[] GetBlitOutputLines() { - return new string[]{ - "_in*_multiplier+_offset" - }; - } - - - public override void DrawLowerPropertyBox() { - //EditorGUI.BeginChangeCheck(); - Rect r = lowerRect; - r.height = 15; - r.y += 2; - r.width /= 3; - - Vector2 befFrom = from; - Vector2 befTo = to; - DrawRemapLine(ref r, "From", ref from); - DrawRemapLine(ref r, "To", ref to); - - if( (from != befFrom) || (to != befTo) ){ - UpdateMultOffset(); - } - - - } - - // x = n/p - - public void UpdateMultOffset(){ - float oldRange = from.y - from.x; - float newRange = to.y - to.x; - multiplier = newRange/oldRange; // Might need to warn on division by zero - offset = to.x - from.x * multiplier; - } - - public void DrawRemapLine(ref Rect r, string label, ref Vector2 target){ - GUI.Label(r.PadRight(4),label,SF_Styles.MiniLabelRight); - r = r.MovedRight(); - //SF_GUI.EnterableFloatField( this, r, ref target.x, EditorStyles.textField ); - UndoableEnterableFloatField(r, ref target.x, "lower '" + label.ToLower() + "' value", EditorStyles.textField); - r = r.MovedRight(); - //SF_GUI.EnterableFloatField( this, r, ref target.y, EditorStyles.textField ); - UndoableEnterableFloatField(r, ref target.y, "upper '" + label.ToLower() + "' value", EditorStyles.textField); - r = r.MovedDown().MovedLeft(2); - } - - - public override void OnUpdateNode( NodeUpdateType updType = NodeUpdateType.Hard, bool cascade = true ) { - UpdateMultOffset(); - if( InputsConnected() ) - RefreshValue( 1, 2 ); - base.OnUpdateNode( updType ); - } - - public override string Evaluate( OutChannel channel = OutChannel.All ) { - string inVal = GetInputCon( "IN" ).Evaluate(); - return "(" + inVal + "*" + multiplier.ToString( "0.0###########" ) + "+" + offset.ToString( "0.0###########" ) + ")"; - } - - // TODO Expose more out here! - public override float EvalCPU( int c ) { - return GetInputData( "IN", c ) * multiplier + offset; - } - - - public override string SerializeSpecialData() { - string s = ""; - s += "frmn:" + from.x + ","; - s += "frmx:" + from.y + ","; - s += "tomn:" + to.x + ","; - s += "tomx:" + to.y; - return s; - } - - public override void DeserializeSpecialData( string key, string value ) { - switch( key ) { - case "frmn": - from.x = float.Parse( value ); - break; - case "frmx": - from.y = float.Parse( value ); - break; - case "tomn": - to.x = float.Parse( value ); - break; - case "tomx": - to.y = float.Parse( value ); - break; - } - } - - - - - - } -} \ No newline at end of file diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_RemapRange.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_RemapRange.cs.meta deleted file mode 100644 index f15e85d4..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_RemapRange.cs.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: 4dd68e3505e874a599219c31449c75c7 -MonoImporter: - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_RemapRangeAdvanced.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_RemapRangeAdvanced.cs deleted file mode 100755 index 4731e17f..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_RemapRangeAdvanced.cs +++ /dev/null @@ -1,94 +0,0 @@ -using UnityEngine; -using UnityEditor; -using System.Collections; -//using System; - -namespace ShaderForge { - - [System.Serializable] - public class SFN_RemapRangeAdvanced : SF_Node_Arithmetic { - - - public SFN_RemapRangeAdvanced() { - - } - - - public override void Initialize() { - base.Initialize( "Remap" ); - base.SearchName = "Remap"; - base.PrepareArithmetic( 5 ); - base.shaderGenMode = ShaderGenerationMode.CustomFunction; - - - - connectors = new SF_NodeConnector[]{ - SF_NodeConnector.Create( this, "OUT", "", ConType.cOutput, ValueType.VTvPending, false ), - SF_NodeConnector.Create( this, "IN", "Val", ConType.cInput, ValueType.VTvPending, false ).SetRequired( true ), - SF_NodeConnector.Create( this, "IMIN", "iMin", ConType.cInput, ValueType.VTvPending, false ).SetRequired( true ), - SF_NodeConnector.Create( this, "IMAX", "iMax", ConType.cInput, ValueType.VTvPending, false ).SetRequired( true ), - SF_NodeConnector.Create( this, "OMIN", "oMin", ConType.cInput, ValueType.VTvPending, false ).SetRequired( true ), - SF_NodeConnector.Create( this, "OMAX", "oMax", ConType.cInput, ValueType.VTvPending, false ).SetRequired( true )}; - base.conGroup = ScriptableObject.CreateInstance().Initialize(connectors[0], connectors[1], connectors[2], connectors[3], connectors[4], connectors[5] ); - base.extraWidthInput = 6; - GetConnectorByStringID("IMIN").usageCount = 2; - GetConnectorByStringID("OMIN").usageCount = 2; - - } - - - public override bool IsUniformOutput() { - - if(InputsConnected()){ - return ( GetInputData( "IN" ).uniform && GetInputData( "IMIN" ).uniform && GetInputData( "IMAX" ).uniform && GetInputData( "OMIN" ).uniform && GetInputData( "OMAX" ).uniform ); - } - return true; - - - } - - - - - public override void OnUpdateNode( NodeUpdateType updType = NodeUpdateType.Hard, bool cascade = true ) { - if( InputsConnected() ) - RefreshValue( 1, 2 ); - base.OnUpdateNode( updType ); - } - - - public override string[] GetBlitOutputLines() { - return new string[] { - "(_omin + ( (_in - _imin) * (_omax - _omin) ) / (_imax - _imin))" - }; - } - - public override string Evaluate( OutChannel channel = OutChannel.All ) { - - string val = GetInputCon( "IN" ).Evaluate(); - string iMin = GetInputCon( "IMIN" ).Evaluate(); - string iMax = GetInputCon( "IMAX" ).Evaluate(); - string oMin = GetInputCon( "OMIN" ).Evaluate(); - string oMax = GetInputCon( "OMAX" ).Evaluate(); - - return "(" + oMin + " + ( (" + val + " - " + iMin + ") * (" + oMax + " - " + oMin + ") ) / (" + iMax + " - " + iMin + "))"; - } - - // TODO Expose more out here! - public override float EvalCPU( int c ) { - float val = GetInputData( "IN", c ); - float iMin = GetInputData( "IMIN", c ); - float iMax = GetInputData( "IMAX", c ); - float oMin = GetInputData( "OMIN", c ); - float oMax = GetInputData( "OMAX", c ); - - return oMin + ( (val - iMin) * (oMax - oMin) ) / (iMax - iMin); - } - - - - - - - } -} \ No newline at end of file diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_RemapRangeAdvanced.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_RemapRangeAdvanced.cs.meta deleted file mode 100644 index 431d0dc6..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_RemapRangeAdvanced.cs.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: 5a2bcf3599de6412c9ed20eac230ef44 -MonoImporter: - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_RgbToHsv.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_RgbToHsv.cs deleted file mode 100644 index 2d504028..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_RgbToHsv.cs +++ /dev/null @@ -1,130 +0,0 @@ -using UnityEngine; -using UnityEditor; -using System.Collections; -using System; - -namespace ShaderForge { - - [System.Serializable] - public class SFN_RgbToHsv : SF_Node { - - public SFN_RgbToHsv() { - - } - - public override void Initialize() { - base.Initialize( "RGB to HSV" ); - base.UseLowerPropertyBox(false); - base.showColor = true; - base.alwaysDefineVariable = true; - base.shaderGenMode = ShaderGenerationMode.CustomFunction; - connectors = new SF_NodeConnector[]{ - SF_NodeConnector.Create(this,"HOUT","Hue",ConType.cOutput,ValueType.VTv1,false), - SF_NodeConnector.Create(this,"SOUT","Sat",ConType.cOutput,ValueType.VTv1,false), - SF_NodeConnector.Create(this,"VOUT","Val",ConType.cOutput,ValueType.VTv1,false), - SF_NodeConnector.Create(this,"IN","",ConType.cInput,ValueType.VTv3,false).SetRequired(true).TypecastTo(3).WithUseCount(3) - }; - - connectors[0].outputChannel = OutChannel.R; - connectors[1].outputChannel = OutChannel.G; - connectors[2].outputChannel = OutChannel.B; - } - - public override int GetEvaluatedComponentCount (){ - return 3; - } - - - public override void OnUpdateNode( NodeUpdateType updType, bool cascade = true ) { - if( InputsConnected() ) - RefreshValue( 1, 1 ); - base.OnUpdateNode( updType ); - } - - - - public string K() { - return GetVariableName() + "_k"; - } - public string P() { - return GetVariableName() + "_p"; - } - public string Q() { - return GetVariableName() + "_q"; - } - public string D() { - return GetVariableName() + "_d"; - } - public string E() { - return GetVariableName() + "_e"; - } - - - public override string[] GetBlitOutputLines() { - return new string[]{ - "float4 k = float4(0.0, -1.0 / 3.0, 2.0 / 3.0, -1.0);", - "float4 p = lerp(float4(_in.zy, k.wz), float4(_in.yz, k.xy), step(_in.z, _in.y));", - "float4 q = lerp(float4(p.xyw, _in.x), float4(_in.x, p.yzx), step(p.x, _in.x));", - "float d = q.x - min(q.w, q.y);", - "float e = 1.0e-10;", - "float4(abs(q.z + (q.w - q.y) / (6.0 * d + e)), d / (q.x + e), q.x, 0);" - }; - } - - - public override string[] GetPreDefineRows (){ - - string c = this["IN"].TryEvaluateAs(4); - string k = K(); - string p = P(); - string q = Q(); - string d = D(); - string e = E(); - - return new string[]{ - "float4 "+k+" = float4(0.0, -1.0 / 3.0, 2.0 / 3.0, -1.0);", - "float4 "+p+" = lerp(float4("+c+".zy, "+k+".wz), float4("+c+".yz, "+k+".xy), step("+c+".z, "+c+".y));", - "float4 "+q+" = lerp(float4("+p+".xyw, "+c+".x), float4("+c+".x, "+p+".yzx), step("+p+".x, "+c+".x));", - "float "+d+" = "+q+".x - min("+q+".w, "+q+".y);", - "float "+e+" = 1.0e-10;", - }; - } - - public override string Evaluate( OutChannel channel = OutChannel.All ) { - string q = Q(); - string d = D(); - string e = E(); - return "float3(abs(" + q + ".z + (" + q + ".w - " + q + ".y) / (6.0 * " + d + " + " + e + ")), " + d + " / (" + q + ".x + " + e + "), " + q + ".x);"; - } - - public override Vector4 EvalCPU() { - - if( !GetInputIsConnected( "IN" ) ) - return Color.black; - - - Vector4 c = GetInputData( "IN" ).dataUniform; - Vector4 k = new Vector4( 0, -1f/3f, 2f/3f, -1f ); - Vector4 p = Vector4.Lerp( new Vector4( c.z, c.y, k.w, k.z ), new Vector4( c.y, c.z, k.x, k.y ), Step( c.z, c.y )); - Vector4 q = Vector4.Lerp( new Vector4( p.x, p.y, p.w, c.x ), new Vector4( c.x, p.y, p.z, p.x ), Step( p.x, c.x ) ); - float d = q.x - Mathf.Min(q.w, q.y); - float e = Mathf.Epsilon; - - Vector3 rgb = new Vector3(); - - rgb.x = Mathf.Abs(q.z + (q.w - q.y) / (6f * d + e)); - rgb.y = d / ( q.x + e ); - rgb.z = q.x; - - - return SF_Tools.VectorToColor( rgb ); - } - - public float Step( float a, float b ) { - if( a <= b ) - return 1f; - return 0f; - } - - } -} \ No newline at end of file diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_RgbToHsv.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_RgbToHsv.cs.meta deleted file mode 100644 index 0466de18..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_RgbToHsv.cs.meta +++ /dev/null @@ -1,12 +0,0 @@ -fileFormatVersion: 2 -guid: 2ba73c676a37ca34da27f7f9c13ae5ed -timeCreated: 1436522064 -licenseType: Pro -MonoImporter: - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Root2.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Root2.cs deleted file mode 100755 index c1d84735..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Root2.cs +++ /dev/null @@ -1,19 +0,0 @@ -using UnityEngine; -using UnityEditor; -using System.Collections; - -namespace ShaderForge { - - [System.Serializable] - public class SFN_Root2 : SFN_Node_Constant { - - public SFN_Root2() { - } - - public override void Initialize() { - base.Initialize( "Root 2" ); - base.PrepareConstant( "const_root2", "1.41421356237309504" ); - } - - } -} \ No newline at end of file diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Root2.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Root2.cs.meta deleted file mode 100755 index a35bde6a..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Root2.cs.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: 478e80eb771ee3e4d8ee8a4fa1bfa141 -MonoImporter: - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Rotator.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Rotator.cs deleted file mode 100755 index d23368bb..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Rotator.cs +++ /dev/null @@ -1,179 +0,0 @@ -using UnityEngine; -using UnityEditor; -using System.Collections; -using System.Collections.Generic; -//using System; - -namespace ShaderForge { - - [System.Serializable] - public class SFN_Rotator : SF_Node { - - // SF_Node tNode; - - public SFN_Rotator() { - - } - - - public override void Initialize() { - base.Initialize( "Rotator" ); - base.showColor = true; - UseLowerReadonlyValues( false ); - base.alwaysDefineVariable = true; - base.shaderGenMode = ShaderGenerationMode.ManualModal; - texture.CompCount = 2; - //SF_NodeConnection lerpCon; - connectors = new SF_NodeConnector[]{ - SF_NodeConnector.Create(this,"UVOUT","UV",ConType.cOutput,ValueType.VTv2,false), - SF_NodeConnector.Create(this,"UVIN","UV",ConType.cInput,ValueType.VTv2,false).SetRequired(true), - SF_NodeConnector.Create(this,"PIV","Piv",ConType.cInput,ValueType.VTv2,false,"float2(0.5,0.5)").SetRequired(false), - SF_NodeConnector.Create(this,"ANG","Ang",ConType.cInput,ValueType.VTv1,false).SetRequired(false).SetGhostNodeLink(typeof(SFN_Time),"T"), - SF_NodeConnector.Create(this,"SPD","Spd",ConType.cInput,ValueType.VTv1,false,"1.0").SetRequired(false), - }; - - //base.conGroup = ScriptableObject.CreateInstance().Initialize( connectors[0], connectors[1], connectors[2] ); - } - - - - public override void OnUpdateNode( NodeUpdateType updType, bool cascade = true ) { - if( InputsConnected() ) - RefreshValue( 1, 2 ); - base.OnUpdateNode( updType ); - } - - public override bool IsUniformOutput() { - return false; - } - - public override int GetEvaluatedComponentCount() { - return 2; - } - - public string Sin() { - return GetVariableName() + "_sin"; - } - public string Cos() { - return GetVariableName() + "_cos"; - } - public string Spd() { - return GetVariableName() + "_spd"; - } - public string Ang() { - return GetVariableName() + "_ang"; - } - public string Piv() { - return GetVariableName() + "_piv"; - } - public string RotMatrix() { - return "float2x2( " + Cos() + ", -" + Sin() + ", " + Sin() + ", " + Cos() + ")"; - } - - - public override string[] GetModalModes() { - return new string[]{ - "REQONLY", - "PIV", - "SPD", - "ANG", - "PIV_SPD", - "PIV_ANG", - "SPD_ANG", - "PIV_SPD_ANG" - }; - } - - public override string[] GetBlitOutputLines( string mode ) { - - - string pivStr = mode.Contains( "PIV" ) ? "_piv.xy" : "float2(0.5,0.5)"; - string spdStr = mode.Contains( "SPD" ) ? "_spd.x" : "1.0"; - string angStr = mode.Contains( "ANG" ) ? "_ang.x" : "_Time"; - - return new string[] { - "float ang = "+angStr+";", - "float spd = " + spdStr + ";", - "float cosVal = cos("+ spdStr + "*ang);", - "float sinVal = sin("+ spdStr + "*ang);", - "float2 piv = " + pivStr + ";", - "float4((mul(_uvin.xy-piv,float2x2( cosVal, -sinVal, sinVal, cosVal))+piv),0,0)" - }; - } - - public override string GetCurrentModalMode() { - List all = new List(); - if( GetInputIsConnected( "PIV" ) ) - all.Add("PIV"); - if( GetInputIsConnected( "SPD" ) ) - all.Add( "SPD" ); - if( GetInputIsConnected( "ANG" ) ) - all.Add( "ANG" ); - - if( all.Count == 0 ) { - return "REQONLY"; - } - - return string.Join( "_", all.ToArray() ); - } - - - public override string[] GetPreDefineRows() { - return new string[] { - "float " + Ang() + " = " + this["ANG"].TryEvaluate() + ";", - "float " + Spd() + " = " + this["SPD"].TryEvaluate() + ";", - "float " + Cos() + " = cos("+ Spd() + "*" + Ang() + ");", - "float " + Sin() + " = sin("+ Spd() + "*" + Ang() + ");", - "float2 " + Piv() + " = " + this["PIV"].TryEvaluate() + ";" - }; - } - - public override bool UpdatesOverTime() { - return true; //GetInputIsConnected( "ANG" ); - } - - public override string Evaluate( OutChannel channel = OutChannel.All ) { - return "(mul(" + GetInputCon( "UVIN" ).Evaluate() + "-" + Piv() + "," + RotMatrix() + ")+" + Piv() + ")"; - } - - // TODO Expose more out here! - public override Vector4 EvalCPU() { - - //return GetInputData( 1 )[x, y]; - - float angle = connectors[3].IsConnected() ? GetInputData( "ANG", 0 ) : Mathf.PI / 8f; - Vector2 pivot = connectors[2].IsConnected() ? new Vector2( GetInputData( "PIV", 0 ), GetInputData( "PIV", 1 ) ) : new Vector2( 0.5f, 0.5f ); - Vector2 vec = Vector2.one; - - if(GetInputIsConnected("UVIN")){ - vec = new Vector2( GetInputData( "UVIN", 0 ), GetInputData( "UVIN", 1 ) ); - } else { - //vec = new Vector2( x/SF_NodeData.RESf, y/SF_NodeData.RESf ); // TODO: should use ghost nodes... - } - vec -= pivot; - - - float cos = Mathf.Cos( angle ); - float sin = Mathf.Sin( angle ); - - Vector4 mtx = new Vector4( - cos, -sin, - sin, cos - ); - - - Vector2 retVec = new Vector2( - mtx.x * vec.x + mtx.y * vec.y, - mtx.z * vec.x + mtx.w * vec.y - ); - - retVec += pivot; - - return new Color( retVec.x, retVec.y, 0f, 0f );//Lerp( GetInputData( 1, x, y, c ), GetInputData( 2, x, y, c ), GetInputData( 3, x, y, c ) ); - } - - - - - } -} \ No newline at end of file diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Rotator.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Rotator.cs.meta deleted file mode 100755 index 32546de8..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Rotator.cs.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: b18d65c11cc5afe449017a80a6ea966e -MonoImporter: - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Round.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Round.cs deleted file mode 100755 index ec39a767..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Round.cs +++ /dev/null @@ -1,26 +0,0 @@ -using UnityEngine; - -namespace ShaderForge { - - [System.Serializable] - public class SFN_Round : SF_Node_Arithmetic { - - public SFN_Round() { - } - - public override void Initialize() { - base.Initialize( "Round" ); - base.PrepareArithmetic( 1 ); - base.shaderGenMode = ShaderGenerationMode.SimpleFunction; - } - - public override string Evaluate( OutChannel channel = OutChannel.All ) { - return "round(" + GetConnectorByStringID( "IN" ).TryEvaluate() + ")"; - } - - public override float EvalCPU( int c ) { - return Mathf.Round( GetInputData( "IN", c ) ); - } - - } -} \ No newline at end of file diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Round.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Round.cs.meta deleted file mode 100755 index afebb05b..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Round.cs.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: 5965b04db15c4d243b3a4d5ea44c2e4c -MonoImporter: - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_SceneColor.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_SceneColor.cs deleted file mode 100755 index 0b6ad777..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_SceneColor.cs +++ /dev/null @@ -1,51 +0,0 @@ -using UnityEngine; -using UnityEditor; -using System.Collections; - -namespace ShaderForge { - - [System.Serializable] - public class SFN_SceneColor : SF_Node { - - - public SFN_SceneColor() { - - } - - public override void Initialize() { - base.Initialize( "Scene Color" ); - base.showColor = true; - base.UseLowerPropertyBox( false ); - base.texture.CompCount = 4; - connectors = new SF_NodeConnector[]{ - SF_NodeConnector.Create(this,"UVIN","UV",ConType.cInput,ValueType.VTv2), - SF_NodeConnector.Create(this,"RGB","RGB",ConType.cOutput,ValueType.VTv3) .Outputting(OutChannel.RGB), - SF_NodeConnector.Create(this,"R","R",ConType.cOutput, ValueType.VTv1) .WithColor(Color.red) .Outputting(OutChannel.R), - SF_NodeConnector.Create(this,"G","G",ConType.cOutput,ValueType.VTv1) .WithColor(Color.green) .Outputting(OutChannel.G), - SF_NodeConnector.Create(this,"B","B",ConType.cOutput,ValueType.VTv1) .WithColor(Color.blue) .Outputting(OutChannel.B), - SF_NodeConnector.Create(this,"A","A",ConType.cOutput,ValueType.VTv1) .Outputting(OutChannel.A) - }; - } - - public override Vector4 EvalCPU() { - return new Color( 0.3f, 0.6f, 0.3f, 1f ); - } - - public bool AutoUV(){ - return !GetInputIsConnected( "UVIN" ); - } - - public override string Evaluate( OutChannel channel = OutChannel.All ) { - - string UV = ""; - - if(AutoUV()){ - return "sceneColor"; - } else { - UV = GetInputCon( "UVIN" ).Evaluate(); - return "tex2D( "+editor.ps.catBlending.GetGrabTextureName()+", " + UV + ")"; - } - } - - } -} \ No newline at end of file diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_SceneColor.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_SceneColor.cs.meta deleted file mode 100755 index 090a6b35..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_SceneColor.cs.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: d6a693eff9dba4958966e3afe0905bbb -MonoImporter: - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_SceneDepth.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_SceneDepth.cs deleted file mode 100755 index 1d2815f2..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_SceneDepth.cs +++ /dev/null @@ -1,40 +0,0 @@ -using UnityEngine; -using UnityEditor; -using System.Collections; - -namespace ShaderForge { - - [System.Serializable] - public class SFN_SceneDepth : SF_Node { - - - public SFN_SceneDepth() { - - } - - public override void Initialize() { - base.Initialize( "Scene Depth" ); - base.showColor = true; - base.UseLowerPropertyBox( false ); - base.texture.CompCount = 1; - connectors = new SF_NodeConnector[]{ - SF_NodeConnector.Create(this,"OUT","",ConType.cOutput,ValueType.VTv1), - SF_NodeConnector.Create(this,"UV","UV",ConType.cInput,ValueType.VTv2) - }; - } - - public override Vector4 EvalCPU() { - return new Color( 0.3f, 0.6f, 0.3f, 1f ); - } - - public override string Evaluate( OutChannel channel = OutChannel.All ) { - string infix = ""; - if( GetConnectorByStringID( "UV" ).IsConnectedAndEnabled() ) - infix = GetConnectorByStringID( "UV" ).TryEvaluate(); - else - infix = "sceneUVs"; - return "max(0, LinearEyeDepth(SAMPLE_DEPTH_TEXTURE(_CameraDepthTexture, " + infix + ")) - _ProjectionParams.g)"; - } - - } -} \ No newline at end of file diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_SceneDepth.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_SceneDepth.cs.meta deleted file mode 100644 index 7df9f496..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_SceneDepth.cs.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: 48380218bb14f4f9fbc3764914c2ffb1 -MonoImporter: - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ScreenParameters.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ScreenParameters.cs deleted file mode 100755 index 9be57a9c..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ScreenParameters.cs +++ /dev/null @@ -1,40 +0,0 @@ -using UnityEngine; -using UnityEditor; -using System.Collections; - -namespace ShaderForge { - - [System.Serializable] - public class SFN_ScreenParameters : SF_Node { - - - public SFN_ScreenParameters() { - - } - - public override void Initialize() { - base.Initialize( "Scrn. Params" ); - base.SearchName = "Screen Parameters"; - base.showColor = true; - base.UseLowerPropertyBox( false ); - base.texture.CompCount = 4; - base.neverDefineVariable = true; - connectors = new SF_NodeConnector[]{ - SF_NodeConnector.Create(this,"PXW","pxW",ConType.cOutput,ValueType.VTv1,false).Outputting(OutChannel.R), - SF_NodeConnector.Create(this,"PXH","pxH",ConType.cOutput,ValueType.VTv1,false).Outputting(OutChannel.G), - SF_NodeConnector.Create(this,"RCW","1+1/W",ConType.cOutput,ValueType.VTv1,false).Outputting(OutChannel.B), - SF_NodeConnector.Create(this,"RCH","1+1/H",ConType.cOutput,ValueType.VTv1,false).Outputting(OutChannel.A) - }; - base.extraWidthOutput = 12; - } - - public override Vector4 EvalCPU() { - return new Color( 0f, 0.7071068f, 0.7071068f, 0f ); - } - - public override string Evaluate( OutChannel channel = OutChannel.All ) { - return "_ScreenParams"; - } - - } -} \ No newline at end of file diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ScreenParameters.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ScreenParameters.cs.meta deleted file mode 100755 index bfd5c66d..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ScreenParameters.cs.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: 8ffce1d1cbd31b6438a435cfbc89f838 -MonoImporter: - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ScreenPos.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ScreenPos.cs deleted file mode 100755 index 9b645c92..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ScreenPos.cs +++ /dev/null @@ -1,83 +0,0 @@ -using UnityEngine; -using UnityEditor; -using System.Collections; - -namespace ShaderForge { - - [System.Serializable] - public class SFN_ScreenPos : SF_Node { - - - public enum ScreenPosType { Normalized = 0, Tiled = 1, SceneUVs = 2 }; - public ScreenPosType currentType = ScreenPosType.Normalized; - - public SFN_ScreenPos() { - - } - - public override void Initialize() { - base.Initialize( "Screen Pos.", InitialPreviewRenderMode.BlitQuad ); - base.showColor = true; - base.UseLowerPropertyBox( true, true ); - UpdateIcon(); - base.texture.CompCount = 2; - base.neverDefineVariable = true; - connectors = new SF_NodeConnector[]{ - SF_NodeConnector.Create(this,"UVOUT","UV",ConType.cOutput,ValueType.VTv2,false).Outputting(OutChannel.RG), - SF_NodeConnector.Create(this,"U","U",ConType.cOutput,ValueType.VTv1).WithColor(Color.red).Outputting(OutChannel.R), - SF_NodeConnector.Create(this,"V","V",ConType.cOutput,ValueType.VTv1).WithColor(Color.green).Outputting(OutChannel.G) - }; - } - - public void UpdateIcon() { - base.texture.SetIconId( (int)currentType ); - } - - /* - public override Vector4 NodeOperator() { - return new Color( Screen.width - base.rect.x + x * 0.66666f, Screen.height - base.rect.y + y * 0.66666f, 0, 0 ); - } - */ - - public override void DrawLowerPropertyBox() { - GUI.color = Color.white; - EditorGUI.BeginChangeCheck(); - //currentType = (ScreenPosType)EditorGUI.EnumPopup( lowerRect, currentType ); - currentType = (ScreenPosType)UndoableEnumPopup(lowerRect, currentType, "switch screen position type"); - if( EditorGUI.EndChangeCheck() ) { - UpdateIcon(); - OnUpdateNode(); - } - - } - - - public override string Evaluate( OutChannel channel = OutChannel.All ) { - // NeedSceneUVs() - switch(currentType){ - case ScreenPosType.Normalized: - return "(sceneUVs * 2 - 1)"; - case ScreenPosType.Tiled: - return "float2((sceneUVs.x * 2 - 1)*(_ScreenParams.r/_ScreenParams.g), sceneUVs.y * 2 - 1)"; - case ScreenPosType.SceneUVs: - return "sceneUVs"; - } - Debug.LogError("Invalid screen position category"); - return ""; - } - - public override string SerializeSpecialData() { - return "sctp:" + (int)currentType; - } - - public override void DeserializeSpecialData( string key, string value ) { - switch( key ) { - case "sctp": - currentType = (ScreenPosType)int.Parse( value ); - UpdateIcon(); - break; - } - } - - } -} \ No newline at end of file diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ScreenPos.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ScreenPos.cs.meta deleted file mode 100755 index 12a5db77..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ScreenPos.cs.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: 6c8f79b55a93b5645bea8d939b688ef1 -MonoImporter: - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Set.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Set.cs deleted file mode 100644 index 77f35004..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Set.cs +++ /dev/null @@ -1,83 +0,0 @@ -using UnityEngine; -using UnityEditor; -using System.Collections; - -namespace ShaderForge { - - [System.Serializable] - public class SFN_Set : SF_Node_Arithmetic { - - public SFN_Set() { - - } - - public override void Initialize() { - node_height = 20; - node_width = 120; - base.Initialize( "Set" ); - lowerRect.y -= 8; - lowerRect.height = 28; - base.showColor = false; - base.discreteTitle = true; - base.alwaysDefineVariable = true; - base.UseLowerPropertyBox( true, true ); - base.lockedVariableName = false; // In order for it to serialize - base.shaderGenMode = ShaderGenerationMode.CustomFunction; - extraWidthInput = -9; - extraWidthOutput = -9; - //base.texture.uniform = true; - //base.texture.CompCount = 1; - - connectors = new SF_NodeConnector[]{ - SF_NodeConnector.Create(this,"OUT","",ConType.cOutput,ValueType.VTvPending,false), - SF_NodeConnector.Create(this,"IN","",ConType.cInput,ValueType.VTvPending,false).SetRequired(true), - }; - - connectors[0].enableState = EnableState.Hidden; - - base.conGroup = ScriptableObject.CreateInstance().Initialize( connectors[0], connectors[1]); - - editor.nodeView.RefreshRelaySources(); - } - - public override bool CanCustomizeVariable() { - return false; // Never allow using the dropdown varname editor - } - - public override string[] GetBlitOutputLines() { - return new string[] { "_in" }; - } - - public override string Evaluate( OutChannel channel = OutChannel.All ) { - return GetConnectorByStringID( "IN" ).TryEvaluate(); - } - - public override float EvalCPU( int c ) { - return GetInputData( "IN", c ); - } - - - public override void DrawLowerPropertyBox() { - Rect r = new Rect( lowerRect ); - r.yMin += 4; - r.yMax -= 2; - r.xMin += 2; - Rect[] splitRects = r.SplitHorizontal( 0.75f, 2 ); - EditorGUI.BeginChangeCheck(); - variableName = UndoableTextField( splitRects[0], variableName, "Set variable name", null ); - if( EditorGUI.EndChangeCheck() ) { - editor.nodeView.RefreshRelaySources(); - } - Rect texCoords = new Rect( splitRects[1] ); - texCoords.width /= 7; - texCoords.height /= 3; - texCoords.x = texCoords.y = 0; - GUI.DrawTextureWithTexCoords( splitRects[1], SF_GUI.Handle_drag, texCoords, alphaBlend: true ); - } - - - - - - } -} \ No newline at end of file diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Set.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Set.cs.meta deleted file mode 100644 index 42d72ead..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Set.cs.meta +++ /dev/null @@ -1,12 +0,0 @@ -fileFormatVersion: 2 -guid: 962662ba043415346a05959ced04f0f4 -timeCreated: 1447436935 -licenseType: Pro -MonoImporter: - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Sign.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Sign.cs deleted file mode 100755 index 196c0293..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Sign.cs +++ /dev/null @@ -1,29 +0,0 @@ -using UnityEngine; - -namespace ShaderForge { - - [System.Serializable] - public class SFN_Sign : SF_Node_Arithmetic { - - public SFN_Sign() { - } - - public override void Initialize() { - base.Initialize( "Sign" ); - base.PrepareArithmetic( 1 ); - base.shaderGenMode = ShaderGenerationMode.SimpleFunction; - } - - public override string Evaluate( OutChannel channel = OutChannel.All ) { - return "sign(" + GetConnectorByStringID( "IN" ).TryEvaluate() + ")"; - } - - public override float EvalCPU( int c ) { - float v = GetInputData( "IN", c ); - if( v == 0 ) - return 0f; - return v > 0f ? 1f : -1f; - } - - } -} \ No newline at end of file diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Sign.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Sign.cs.meta deleted file mode 100755 index f10e81cf..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Sign.cs.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: 23a3e4987bfdf3944b39de15059fd63e -MonoImporter: - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Sin.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Sin.cs deleted file mode 100755 index 713b40c3..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Sin.cs +++ /dev/null @@ -1,26 +0,0 @@ -using UnityEngine; - -namespace ShaderForge { - - [System.Serializable] - public class SFN_Sin : SF_Node_Arithmetic { - - public SFN_Sin() { - } - - public override void Initialize() { - base.Initialize( "Sin" ); - base.PrepareArithmetic( 1 ); - base.shaderGenMode = ShaderGenerationMode.SimpleFunction; - } - - public override string Evaluate( OutChannel channel = OutChannel.All ) { - return "sin(" + GetConnectorByStringID( "IN" ).TryEvaluate() + ")"; - } - - public override float EvalCPU( int c ) { - return Mathf.Sin( GetInputData( "IN", c ) ); - } - - } -} \ No newline at end of file diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Sin.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Sin.cs.meta deleted file mode 100755 index 02e6793c..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Sin.cs.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: 7fafe81ac61f44348b70f30fd8959cab -MonoImporter: - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Slider.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Slider.cs deleted file mode 100755 index 3fc64f4c..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Slider.cs +++ /dev/null @@ -1,170 +0,0 @@ -using UnityEngine; -using UnityEditor; -using System.Collections; - -namespace ShaderForge { - - [System.Serializable] - public class SFN_Slider : SF_Node { - - - public float min = 0.0f; - public float max = 1.0f; - public float current = 0.0f; - - GUIStyle centerFloatField; - //GUIStyle centerFloatFieldDark; - - public SFN_Slider() { - - } - - public override void Initialize() { - node_width = 256; - node_height = 58; - base.Initialize( "Slider" ); - base.showColor = false; - base.neverDefineVariable = true; - base.UseLowerPropertyBox( false ); - base.texture.uniform = true; - base.texture.CompCount = 1; - base.shaderGenMode = ShaderGenerationMode.OffUniform; - property = ScriptableObject.CreateInstance().Initialize( this ); - - centerFloatField = new GUIStyle( EditorStyles.numberField ); - centerFloatField.alignment = TextAnchor.MiddleCenter; - - connectors = new SF_NodeConnector[]{ - SF_NodeConnector.Create(this,"OUT","",ConType.cOutput,ValueType.VTv1,false) - }; - } - - /*public override bool IsUniformOutput() { - return true; - }*/ - - public override string Evaluate( OutChannel channel = OutChannel.All ) { - return property.GetVariable(); - } - - public override float EvalCPU( int c ) { - return current; - } - - public override bool IsUniformOutput() { - return true; - } - - - public override void NeatWindow( ) { - PrepareWindowColor(); - int labelWidth = 28; - int sliderWidth = (int)( rectInner.width - 4 * labelWidth ); - GUI.BeginGroup( rect ); - Rect r = new Rect( rectInner ); - r.height = 16; - // r.width = labelWidth*3; - // Upper: - //float normSlider = Mathf.InverseLerp( min, max, current ); - //r.x = normSlider * sliderWidth + 0.5f * labelWidth; - - bool inverse = min > max; - - float prevValue = current; - - Rect valRect = r; - //float t = (current/max); - valRect.xMin += 80;//+134*t; - valRect.xMax -= 80;//+134*(1-t); - if(inverse){ - current = Mathf.Clamp( EditorGUI.FloatField( valRect, current, centerFloatField ), max, min ); - } else { - current = Mathf.Clamp( EditorGUI.FloatField( valRect, current, centerFloatField ), min, max ); - } - - // Lower: - r.y += r.height + 4; - r.x = rectInner.x; - r.width = labelWidth; - - GUI.Label( r, "Min" ); - r.x += r.width; - //min = EditorGUI.FloatField( r, min, centerFloatField ); - min = UndoableFloatField(r, min, "slider min value", centerFloatField); - r.x += r.width; - r.width = sliderWidth; - float beforeSlider = current; - - string sliderName = "slider" + this.id; - GUI.SetNextControlName( sliderName ); - //current = GUI.HorizontalSlider( r, current, min, max ); - - Rect sliderRect = r; - - sliderRect.xMax -= 8; - sliderRect.xMin += 8; - - if(inverse){ - current = (min+max) - UndoableHorizontalSlider(sliderRect, (min+max) - current, max, min, "value" ); - } else { - current = UndoableHorizontalSlider(sliderRect, current, min, max, "value" ); - } - - - if( beforeSlider != current ) - GUI.FocusControl( sliderName ); - r.x += r.width; - r.width = labelWidth; - //max = EditorGUI.FloatField( r, max, centerFloatField ); - max = UndoableFloatField(r, max, "slider max value", centerFloatField); - r.x += r.width; - GUI.Label( r, "Max" ); - - // sliderRect.x += labelWidth; - // sliderRect.width -= labelWidth * 2; - - if( prevValue != current ){ - OnValueChanged(); - } - GUI.EndGroup(); - ResetWindowColor(); - //GUI.DragWindow(); - } - - // TODO: Refresh node thumbs - public void OnValueChanged() { - texture.dataUniform = current * Vector4.one; - editor.shaderEvaluator.ApplyProperty( this ); - OnUpdateNode( NodeUpdateType.Soft ); - } - - - public override string SerializeSpecialData() { - string s = property.Serialize() + ","; - s += "min:" + min + ","; - s += "cur:" + current + ","; - s += "max:" + max; - return s; - } - - public override void DeserializeSpecialData( string key, string value ) { - property.Deserialize( key, value ); - switch( key ) { - case "min": - min = float.Parse( value ); - break; - case "cur": - current = float.Parse( value ); - OnValueChanged(); - break; - case "max": - max = float.Parse( value ); - break; - } - } - - - - - } -} \ No newline at end of file diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Slider.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Slider.cs.meta deleted file mode 100755 index c17303fb..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Slider.cs.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: 9987079b02539a14288441b9a1078362 -MonoImporter: - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Smoothstep.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Smoothstep.cs deleted file mode 100644 index becac226..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Smoothstep.cs +++ /dev/null @@ -1,64 +0,0 @@ -using UnityEngine; - -namespace ShaderForge { - - [System.Serializable] - public class SFN_Smoothstep : SF_Node_Arithmetic { - - public SFN_Smoothstep() { - } - - public override void Initialize() { - base.Initialize( "Smoothstep" ); - base.showColor = true; - base.shaderGenMode = ShaderGenerationMode.SimpleFunction; - UseLowerReadonlyValues( true ); - - //SF_NodeConnection lerpCon; - connectors = new SF_NodeConnector[]{ - SF_NodeConnector.Create(this,"OUT","T",ConType.cOutput,ValueType.VTvPending,false), - SF_NodeConnector.Create(this,"A","Min",ConType.cInput,ValueType.VTvPending,false).SetRequired(true), - SF_NodeConnector.Create(this,"B","Max",ConType.cInput,ValueType.VTvPending,false).SetRequired(true), - SF_NodeConnector.Create(this,"V","Val",ConType.cInput,ValueType.VTvPending,false).SetRequired(true) - }; - - base.conGroup = ScriptableObject.CreateInstance().Initialize( connectors[0], connectors[1], connectors[2], connectors[3] ); - } - - public override void OnUpdateNode( NodeUpdateType updType, bool cascade = true ) { - if( InputsConnected() ) - RefreshValue( 1, 2 ); - base.OnUpdateNode( updType ); - } - - public override bool IsUniformOutput() { - return ( GetInputData( "A" ).uniform && GetInputData( "B" ).uniform && GetInputData( "V" ).uniform ); - } - - public override int GetEvaluatedComponentCount() { - return Mathf.Max( this["A"].GetCompCount(), this["B"].GetCompCount(), this["V"].GetCompCount() ); - } - - public override string Evaluate( OutChannel channel = OutChannel.All ) { - - string a = GetConnectorByStringID( "A" ).TryEvaluateAs( GetEvaluatedComponentCount() ); - string b = GetConnectorByStringID( "B" ).TryEvaluateAs( GetEvaluatedComponentCount() ); - string v = GetConnectorByStringID( "V" ).TryEvaluateAs( GetEvaluatedComponentCount() ); - - return string.Format( "smoothstep( {0}, {1}, {2} )", a, b, v ); - } - - public override float EvalCPU( int c ) { - - float a = GetInputData( "A", c ); - float b = GetInputData( "B", c ); - float v = GetInputData( "V", c ); - - if( ( b - a ) == 0f ) - return 0; - float t = Mathf.Clamp01(( v - a ) / ( b - a )); - return t * t * ( 3.0f - ( 2.0f * t ) ); - } - - } -} \ No newline at end of file diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Smoothstep.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Smoothstep.cs.meta deleted file mode 100644 index 90b4730c..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Smoothstep.cs.meta +++ /dev/null @@ -1,12 +0,0 @@ -fileFormatVersion: 2 -guid: 289a8fc8292655944a478a667b333850 -timeCreated: 1443603669 -licenseType: Pro -MonoImporter: - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Sqrt.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Sqrt.cs deleted file mode 100755 index 501aeaab..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Sqrt.cs +++ /dev/null @@ -1,26 +0,0 @@ -using UnityEngine; - -namespace ShaderForge { - - [System.Serializable] - public class SFN_Sqrt : SF_Node_Arithmetic { - - public SFN_Sqrt() { - } - - public override void Initialize() { - base.Initialize( "Sqrt" ); - base.PrepareArithmetic( 1 ); - base.shaderGenMode = ShaderGenerationMode.SimpleFunction; - } - - public override string Evaluate( OutChannel channel = OutChannel.All ) { - return "sqrt(" + GetConnectorByStringID( "IN" ).TryEvaluate() + ")"; - } - - public override float EvalCPU( int c ) { - return Mathf.Sqrt( GetInputData( "IN", c ) ); - } - - } -} \ No newline at end of file diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Sqrt.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Sqrt.cs.meta deleted file mode 100755 index a1e1f626..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Sqrt.cs.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: c77bd2f2aab8059488ee83b49ccad0ca -MonoImporter: - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_StaticBranch.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_StaticBranch.cs deleted file mode 100755 index 688d14e1..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_StaticBranch.cs +++ /dev/null @@ -1,80 +0,0 @@ -using UnityEngine; -using UnityEditor; - -namespace ShaderForge { - - [System.Serializable] - public class SFN_StaticBranch : SF_Node_Arithmetic { - - public bool on = false; - - public SFN_StaticBranch() { - } - - public override void Initialize() { - base.Initialize( "Static Branch" ); - base.PrepareArithmetic(2); - base.showLowerReadonlyValues = false; - base.alwaysDefineVariable = true; - base.onlyPreDefine = true; - base.showLowerPropertyBox = true; - base.showLowerPropertyBoxAlways = true; - base.property = ScriptableObject.CreateInstance().Initialize( this ); - } - - - public override void DrawLowerPropertyBox() { - EditorGUI.BeginChangeCheck(); - Rect r = lowerRect; - r.xMin += 3; - on = EditorGUI.Toggle( r, on ); - r.xMin += 17; - GUI.Label(r,"On"); - if( EditorGUI.EndChangeCheck() ) { - OnUpdateNode(); - editor.shaderEvaluator.ApplyProperty( this ); - } - - } - - public override string[] GetPreDefineRows() { - string indent = " "; - string[] rows = new string[]{ - "#ifdef STATIC_BRANCH", - indent+"float" + GetEvaluatedComponentCount() + " " + GetVariableName() + " = " + this["B"].TryEvaluate() + ";", - "#else", - indent+"float" + GetEvaluatedComponentCount() + " " + GetVariableName() + " = " + this["A"].TryEvaluate() + ";", - "#endif" - }; - varDefined = true; // Hack - return rows; - - } - - - public override string Evaluate( OutChannel channel = OutChannel.All ) { - if(!ShouldDefineVariable()) // TODO: Isn't this already handled on the node level? - this.PreDefine(); - - return GetVariableName(); - } - - public override float EvalCPU( int c ) { - return on ? GetInputData( "B", c ) : GetInputData( "B", c ); - } - - public override string SerializeSpecialData() { - return "on:" + on; - } - - public override void DeserializeSpecialData( string key, string value ) { - switch( key ) { - case "on": - on = bool.Parse( value ); - editor.shaderEvaluator.ApplyProperty( this ); - break; - } - } - - } -} \ No newline at end of file diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_StaticBranch.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_StaticBranch.cs.meta deleted file mode 100644 index 133134d4..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_StaticBranch.cs.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: 7139eb5003a7146d1a075fa9811fc5c0 -MonoImporter: - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Step.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Step.cs deleted file mode 100755 index 9a8f8797..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Step.cs +++ /dev/null @@ -1,31 +0,0 @@ -using UnityEngine; - -namespace ShaderForge { - - [System.Serializable] - public class SFN_Step : SF_Node_Arithmetic { - - public SFN_Step() { - } - - public override void Initialize() { - base.Initialize( "Step (A <= B)" ); - base.SearchName = "Step"; - base.PrepareArithmetic(2); - base.showLowerReadonlyValues = false; - base.connectors[0].label = "<="; - base.shaderGenMode = ShaderGenerationMode.SimpleFunction; - } - - public override string Evaluate( OutChannel channel = OutChannel.All ) { - return "step(" + GetConnectorByStringID( "A" ).TryEvaluate() + "," + GetConnectorByStringID( "B" ).TryEvaluate() + ")"; - } - - public override float EvalCPU( int c ) { - float a = GetInputData( "B", c ); - float b = GetInputData( "B", c ); - return ((a <= b) ? 1.0f : 0.0f); - } - - } -} \ No newline at end of file diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Step.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Step.cs.meta deleted file mode 100755 index 4f7e7d51..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Step.cs.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: 040227aa4fb888540b24aabbda43bf84 -MonoImporter: - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Subtract.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Subtract.cs deleted file mode 100755 index 3d782807..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Subtract.cs +++ /dev/null @@ -1,31 +0,0 @@ -using UnityEngine; - -namespace ShaderForge { - - [System.Serializable] - public class SFN_Subtract : SF_Node_Arithmetic { - - public SFN_Subtract() { - - } - - public override void Initialize() { - base.Initialize( "Subtract" ); - base.PrepareArithmetic(); - base.shaderGenMode = ShaderGenerationMode.CustomFunction; - } - - public override string[] GetBlitOutputLines() { - return new string[] { "_a - _b" }; - } - - public override string Evaluate( OutChannel channel = OutChannel.All ) { - return "(" + GetConnectorByStringID( "A" ).TryEvaluate() + "-" + GetConnectorByStringID( "B" ).TryEvaluate() + ")"; - } - - public override float EvalCPU( int c ) { - return GetInputData( "A", c ) - GetInputData( "B", c ); - } - - } -} \ No newline at end of file diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Subtract.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Subtract.cs.meta deleted file mode 100755 index 1a777d66..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Subtract.cs.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: f800be44f0a6bcb4db234f16ffbb3c4c -MonoImporter: - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_SwitchProperty.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_SwitchProperty.cs deleted file mode 100755 index 3623a7eb..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_SwitchProperty.cs +++ /dev/null @@ -1,161 +0,0 @@ -using UnityEngine; -using UnityEditor; -using System.Collections; -using System; - -namespace ShaderForge { - - [System.Serializable] - public class SFN_SwitchProperty : SF_Node_Arithmetic { - - public SFN_SwitchProperty() { - - } - - [SerializeField] - public bool on = false; - - public override void Initialize() { - - base.Initialize( "Switch" ); - base.node_height -= 20; - //base.lowerRect.height += 4; - base.showColor = true; - base.shaderGenMode = ShaderGenerationMode.ValuePassing; - - base.UseLowerPropertyBox( true, true ); - - - - connectors = new SF_NodeConnector[]{ - SF_NodeConnector.Create(this,"OUT","",ConType.cOutput,ValueType.VTvPending,false), - SF_NodeConnector.Create(this,"A","Off",ConType.cInput,ValueType.VTvPending,false).SetRequired(true), - SF_NodeConnector.Create(this,"B","On",ConType.cInput,ValueType.VTvPending,false).SetRequired(true) - }; - - property = ScriptableObject.CreateInstance().Initialize( this ); - - base.conGroup = ScriptableObject.CreateInstance().Initialize( connectors[0], connectors[1], connectors[2]); - - } - - float smoothConnectorHeight = 23; - float targetConnectorHeight = 23; - Color conLineBg = Color.black; - Color conLineFg = Color.white; - // Color conLineBgTrns = new Color(0f,0f,0f,0.3f); - // Color conLineFgTrns = new Color(1f,1f,1f,0.3f); - - public override string[] ExtraPassedFloatProperties(){ - return new string[] { "On" }; - } - - public override void PrepareRendering( Material mat ) { - mat.SetFloat( "_on", on ? 1.0f : 0.0f ); - } - - public override string[] GetBlitOutputLines() { - return new string[] { "lerp(_a,_b,_on)" }; - } - - - public override void DrawLowerPropertyBox() { - EditorGUI.BeginChangeCheck(); - Rect r = lowerRect; - r.height = 24; - r.width = 26; - r.y -= 26; - - if(Event.current.type == EventType.repaint){ - smoothConnectorHeight = Mathf.Lerp(smoothConnectorHeight, targetConnectorHeight, 0.6f); - } - - r = r.PadTop(1).PadBottom(1).PadLeft(2); - - r.width = r.height + 2; - //r.xMin += 3; - - //Handles.BeginGUI(rect); - - bool hovering = rect.Contains(Event.current.mousePosition + rect.TopLeft()); - - - - if(hovering){ - targetConnectorHeight = on ? 43 : 23; - Vector2 p0 = new Vector2(rect.width,23); - Vector2 p1 = new Vector2(0, smoothConnectorHeight); - GUILines.QuickBezier( p0, p1, conLineBg, 12, 5 ); - GUILines.QuickBezier( p0, p1, conLineFg, 12, 3 ); - GUILines.QuickBezier( p0, p1, conLineFg, 12, 3 ); - bool prevVal = on; - GUI.color = new Color(SF_Node.colorExposed.r,SF_Node.colorExposed.g,SF_Node.colorExposed.b,GUI.color.a); - bool newVal = GUI.Button(r,string.Empty) ? !prevVal : prevVal; - - if(newVal){ - Rect chkRect = r; - chkRect.width = SF_GUI.Toggle_check_icon.width; - chkRect.height = SF_GUI.Toggle_check_icon.height; - chkRect.x += (r.width-chkRect.width)*0.5f; - chkRect.y += 2; - GUI.DrawTexture(chkRect,SF_GUI.Toggle_check_icon); - } - - GUI.color = Color.white; - - if(prevVal != newVal){ - string dir = on ? "on" : "off"; - UndoRecord("switch " + dir + " " + property.nameDisplay); - on = newVal; - OnUpdateNode(NodeUpdateType.Soft, true); - editor.shaderEvaluator.ApplyProperty( this ); - } - } - - - //GUILines.DrawMultiBezierConnection(editor,,GetEvaluatedComponentCount(),Color.white); - - //Handles.DrawLine(new Vector3(0,0),new Vector3(32,32)); - // - //Handles.EndGUI(); - - - - - - //GUI.enabled = true; - - - - - } - - public override string Evaluate( OutChannel channel = OutChannel.All ) { - return "lerp( " + GetConnectorByStringID( "A" ).TryEvaluate() + ", " + GetConnectorByStringID( "B" ).TryEvaluate() + ", "+ property.GetVariable() + " )"; - } - - public override float EvalCPU( int c ) { - if(on){ - return GetInputData("B", c); - } else { - return GetInputData("A", c); - } - } - - - public override string SerializeSpecialData() { - string s = property.Serialize() + ","; - s += "on:" + on; - return s; - } - - public override void DeserializeSpecialData( string key, string value ) { - property.Deserialize( key, value ); - switch( key ) { - case "on": - on = bool.Parse( value ); - break; - } - } - } -} \ No newline at end of file diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_SwitchProperty.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_SwitchProperty.cs.meta deleted file mode 100644 index cbcde250..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_SwitchProperty.cs.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: 2975b0d64d9d5418bb473f40734754c9 -MonoImporter: - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Tan.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Tan.cs deleted file mode 100755 index 65695d80..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Tan.cs +++ /dev/null @@ -1,26 +0,0 @@ -using UnityEngine; - -namespace ShaderForge { - - [System.Serializable] - public class SFN_Tan : SF_Node_Arithmetic { - - public SFN_Tan() { - } - - public override void Initialize() { - base.Initialize( "Tan" ); - base.PrepareArithmetic( 1 ); - base.shaderGenMode = ShaderGenerationMode.SimpleFunction; - } - - public override string Evaluate( OutChannel channel = OutChannel.All ) { - return "tan(" + GetConnectorByStringID( "IN" ).TryEvaluate() + ")"; - } - - public override float EvalCPU( int c ) { - return Mathf.Tan( GetInputData( "IN", c ) ); - } - - } -} \ No newline at end of file diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Tan.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Tan.cs.meta deleted file mode 100755 index aa772307..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Tan.cs.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: 194e3cc730febb44196573c2fd1a4ff8 -MonoImporter: - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Tangent.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Tangent.cs deleted file mode 100755 index 0694adf2..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Tangent.cs +++ /dev/null @@ -1,35 +0,0 @@ -using UnityEngine; -using UnityEditor; -using System.Collections; - -namespace ShaderForge { - - [System.Serializable] - public class SFN_Tangent : SF_Node { - - - public SFN_Tangent() { - - } - - public override void Initialize() { - base.Initialize( "Tangent Dir.", InitialPreviewRenderMode.BlitSphere ); - base.showColor = true; - base.UseLowerPropertyBox( false ); - base.texture.CompCount = 3; - base.neverDefineVariable = true; - connectors = new SF_NodeConnector[]{ - SF_NodeConnector.Create(this,"OUT","",ConType.cOutput,ValueType.VTv3,false) - }; - } - - public override Vector4 EvalCPU() { - return new Color( 1f, 0f, 0f, 0f ); - } - - public override string Evaluate( OutChannel channel = OutChannel.All ) { - return SF_Evaluator.WithProgramPrefix("tangentDir"); - } - - } -} \ No newline at end of file diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Tangent.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Tangent.cs.meta deleted file mode 100755 index a3772158..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Tangent.cs.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: 139600edd90131c43842df0965b82082 -MonoImporter: - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Tau.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Tau.cs deleted file mode 100755 index 19742d72..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Tau.cs +++ /dev/null @@ -1,19 +0,0 @@ -using UnityEngine; -using UnityEditor; -using System.Collections; - -namespace ShaderForge { - - [System.Serializable] - public class SFN_Tau : SFN_Node_Constant { - - public SFN_Tau() { - } - - public override void Initialize() { - base.Initialize( "Tau"); - base.PrepareConstant( "const_tau", "6.28318530718" ); - } - - } -} \ No newline at end of file diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Tau.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Tau.cs.meta deleted file mode 100755 index 30c4d425..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Tau.cs.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: 62750aaecd1cee044b767f00ed0605bf -MonoImporter: - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Tex2d.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Tex2d.cs deleted file mode 100755 index 68b4bd08..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Tex2d.cs +++ /dev/null @@ -1,488 +0,0 @@ -using UnityEngine; -using UnityEditor; -using System.Collections; - - - - -namespace ShaderForge { - - - public enum NoTexValue{White, Gray, Black, Bump}; - - [System.Serializable] - public class SFN_Tex2d : SF_Node { - - - public Texture textureAsset; - - public Texture TextureAsset { - get { - if(TexAssetConnected()){ - textureAsset = null; - return ( GetInputCon( "TEX" ).node as SFN_Tex2dAsset ).textureAsset; - } - return textureAsset; - } - set { - textureAsset = value; - } - } - - //public bool unpackNormal = false; - public NoTexValue noTexValue = NoTexValue.White; - public bool markedAsNormalMap = false; - - public SF_ShaderProperty shelvedProperty; - - - public SFN_Tex2d() { - - } - - public override void Initialize() { - base.Initialize( "Texture 2D" ); - //node_height = (int)(rect.height - 6f); // Odd, but alright... - base.UseLowerPropertyBox( true, true ); - - - property = ScriptableObject.CreateInstance().Initialize( this ); - - - connectors = new SF_NodeConnector[]{ - SF_NodeConnector.Create(this,"UVIN","UV",ConType.cInput,ValueType.VTv2).SetGhostNodeLink(typeof(SFN_TexCoord),"UVOUT"), - SF_NodeConnector.Create(this,"MIP","MIP",ConType.cInput,ValueType.VTv1), - SF_NodeConnector.Create(this,"TEX","Tex",ConType.cInput,ValueType.TexAsset).WithColor(SF_Node.colorExposed), - SF_NodeConnector.Create(this,"RGB","RGB",ConType.cOutput,ValueType.VTv3) .Outputting(OutChannel.RGB), - SF_NodeConnector.Create(this,"R","R",ConType.cOutput, ValueType.VTv1) .WithColor(Color.red) .Outputting(OutChannel.R), - SF_NodeConnector.Create(this,"G","G",ConType.cOutput,ValueType.VTv1) .WithColor(Color.green) .Outputting(OutChannel.G), - SF_NodeConnector.Create(this,"B","B",ConType.cOutput,ValueType.VTv1) .WithColor(Color.blue) .Outputting(OutChannel.B), - SF_NodeConnector.Create(this,"A","A",ConType.cOutput,ValueType.VTv1) .Outputting(OutChannel.A) - }; - base.alwaysDefineVariable = true; - base.neverDefineVariable = false; - base.texture.CompCount = 4; - connectors[0].usageCount = 2; // To define a variable of UVs to use with TRANSFORM_TEX - - } - - public override bool IsUniformOutput() { - return false; - } - - public bool IsNormalMap() { - - /* - if( textureAsset != null ) { - string path = AssetDatabase.GetAssetPath( textureAsset ); - if( string.IsNullOrEmpty( path ) ) - return false; - else - return ( (TextureImporter)UnityEditor.AssetImporter.GetAtPath( path ) ).normalmap; - } - - - if( property == null ) { - if( GetInputIsConnected( "TEX" ) ) - return ( GetInputCon( "TEX" ).node as SFN_Tex2d ).IsNormalMap(); - } else { - return ( property as SFP_Tex2d ).isBumpmap; - }*/ - // TODO: Is this right?¨ - - if(TexAssetConnected()) - return ( GetInputCon( "TEX" ).node as SFN_Tex2dAsset ).IsNormalMap(); - return markedAsNormalMap; - } - - - public bool TexAssetConnected(){ - if( property == null ) - if( GetInputIsConnected( "TEX" ) ) - return true; - return false; - } - - - public override string GetBlitShaderSuffix() { - - bool uv = GetInputIsConnected( "UVIN" ); - bool mip = GetInputIsConnected( "MIP" ); - - if( uv && mip ) { - return "UV_MIP"; - } else if( mip ) { - return "MIP"; - } else if( uv ){ - return "UV"; - } else { - return "NoInputs"; - } - - } - - public override void PrepareRendering( Material mat ) { - if( textureAsset != null ) { - mat.mainTexture = textureAsset; - mat.SetFloat( "_IsNormal", IsNormalMap() ? 1 : 0 ); - } - } - - - - public override void DrawLowerPropertyBox() { - GUI.color = Color.white; - EditorGUI.BeginChangeCheck(); - Rect tmp = lowerRect; - tmp.height = 16f; - noTexValue = (NoTexValue)UndoableLabeledEnumPopup(tmp, "Default", noTexValue, "swith default color of " + property.nameDisplay ); - tmp.y += tmp.height; - bool preMarked = markedAsNormalMap; - - - UndoableToggle(tmp, ref markedAsNormalMap, "Normal map", "normal map decode of " + property.nameDisplay, null); - //markedAsNormalMap = GUI.Toggle(tmp, markedAsNormalMap, "Normal map" ); - - if(EditorGUI.EndChangeCheck()){ - if(markedAsNormalMap && !preMarked) - noTexValue = NoTexValue.Bump; - UpdateCompCount(); - UpdateNormalMapAlphaState(); - OnUpdateNode(); - } - } - - public void UpdateNormalMapAlphaState(){ - if(markedAsNormalMap){ - GetConnectorByStringID("A").Disconnect(); - GetConnectorByStringID("A").enableState = EnableState.Hidden; - } else { - GetConnectorByStringID("A").enableState = EnableState.Enabled; // No alpha channel when unpacking normals - } - } - - public override int GetEvaluatedComponentCount() { - if( IsNormalMap() ) - return 3; - return 4; - } - - public bool HasAlpha() { - if( TextureAsset == null ) return false; - string path = AssetDatabase.GetAssetPath( TextureAsset ); - if( string.IsNullOrEmpty( path ) ) return false; - return ( (TextureImporter)UnityEditor.AssetImporter.GetAtPath( path ) ).DoesSourceTextureHaveAlpha(); - } - - private void UpdateCompCount(){ - texture.CompCount = IsNormalMap() ? 3 : 4; // TODO: This doesn't work when opening shaders. Why? - } - - public override string Evaluate( OutChannel channel = OutChannel.All ) { - - - UpdateCompCount(); - - if( varDefined ) - return GetVariableName(); - - - bool useLOD = GetInputIsConnected( "MIP" ) || ( SF_Evaluator.inVert || SF_Evaluator.inTess ); - string uvStr = GetInputIsConnected( "UVIN" ) ? GetInputCon( "UVIN" ).Evaluate() : SF_Evaluator.WithProgramPrefix( SF_Evaluator.inFrag ? "uv0" : "texcoord0" ); - string func = useLOD ? "tex2Dlod" : "tex2D"; - string mip = GetInputIsConnected( "MIP" ) ? GetInputCon( "MIP" ).Evaluate() : "0"; - - string variableName = this["TEX"].IsConnected() ? GetInputCon( "TEX" ).node.property.GetVariable() : property.GetVariable(); - - bool useTilingLocally = IsProperty() && !property.tagNoScaleOffset; - bool useTilingByAsset = this["TEX"].IsConnected() && !this["TEX"].inputCon.node.property.tagNoScaleOffset; - if( useTilingLocally || useTilingByAsset ) - uvStr = "TRANSFORM_TEX(" + uvStr + ", " + variableName + ")"; - - if( useLOD ) { - uvStr = "float4(" + uvStr + ",0.0," + mip + ")"; - } - - - string s = func + "(" + variableName + "," + uvStr + ")"; - if( IsNormalMap() ) { - s = "UnpackNormal(" + s + ")"; - } - - return s; - } - - public void UnpackNormals( ref Texture2D t ) { - Color[] colors = t.GetPixels(); - for( int i = 0; i < colors.Length; i++ ) { - colors[i] = UnpackNormal( colors[i] ); - } - t.SetPixels( colors ); - t.Apply(); - } - - public Color UnpackNormal( Color c ) { - Vector3 normal = Vector3.zero; - - normal = new Vector2( c.a, c.g ) * 2f - Vector2.one; - normal.z = Mathf.Sqrt( 1f - normal.x * normal.x - normal.y * normal.y ); - - // TODO: Check color clamp method! - return SF_Tools.VectorToColor( normal ); - } - - - - public override bool Draw() { - - CheckPropertyInput(); - - // If Tex is plugged in, make sure this uses the same asset and all - if( property == null ) { - - SFN_Tex2dAsset inTex = ( GetInputCon( "TEX" ).node as SFN_Tex2dAsset ); - - bool refresh = false; - if( this.TextureAsset == null ) - refresh = true; - if(!refresh) - if( inTex.textureAsset != this.TextureAsset ) - refresh = true; - - if( refresh ) { - this.TextureAsset = inTex.textureAsset; - //RenderToTexture(); - } - } - - - ProcessInput(); - DrawHighlight(); - PrepareWindowColor(); - - DrawWindow(); - ResetWindowColor(); - return true;//!CheckIfDeleted(); - } - - - public void CheckPropertyInput() { - if( property != null && connectors[2].IsConnected() ) { - shelvedProperty = property; - property = null; - if( editor.nodeView.treeStatus.propertyList.Contains( this ) ) - editor.nodeView.treeStatus.propertyList.Remove( this ); - } else if( property == null && !connectors[2].IsConnected() ) { - property = shelvedProperty; - shelvedProperty = null; - if( !editor.nodeView.treeStatus.propertyList.Contains( this ) ) - editor.nodeView.treeStatus.propertyList.Add( this ); - } - } - - - public override void OnDelete() { - TextureAsset = null; - } - - public override void NeatWindow( ) { - - rect.height = TexAssetConnected() ? NODE_HEIGHT : NODE_HEIGHT + 34; - - GUI.skin.box.clipping = TextClipping.Overflow; - GUI.BeginGroup( rect ); - - if( IsProperty() && Event.current.type == EventType.DragPerform && rectInner.Contains(Event.current.mousePosition) ) { - Object droppedObj = DragAndDrop.objectReferences[0]; - if( droppedObj is Texture2D || droppedObj is ProceduralTexture || droppedObj is RenderTexture) { - Event.current.Use(); - TextureAsset = droppedObj as Texture; - OnAssignedTexture(); - } - } - - if( IsProperty() && Event.current.type == EventType.dragUpdated ) { - if(DragAndDrop.objectReferences.Length > 0){ - Object dragObj = DragAndDrop.objectReferences[0]; - if( dragObj is Texture2D || dragObj is ProceduralTexture || dragObj is RenderTexture) { - DragAndDrop.visualMode = DragAndDropVisualMode.Link; - editor.nodeBrowser.CancelDrag(); - Event.current.Use(); - } else { - DragAndDrop.visualMode = DragAndDropVisualMode.Rejected; - } - } else { - DragAndDrop.visualMode = DragAndDropVisualMode.Rejected; - } - } - - - - Color prev = GUI.color; - if( TextureAsset ) { - GUI.color = Color.white; - GUI.DrawTexture( rectInner, texture.texture, ScaleMode.StretchToFill, false ); // TODO: Doesn't seem to work - if(displayVectorDataMask){ - GUI.DrawTexture( rectInner, SF_GUI.VectorIconOverlay, ScaleMode.ScaleAndCrop, true); - } - } - - if( showLowerPropertyBox && !TexAssetConnected()) { - GUI.color = Color.white; - DrawLowerPropertyBox(); - } - - //else { - //GUI.color = new Color( GUI.color.r, GUI.color.g, GUI.color.b,0.5f); - //GUI.Label( rectInner, "Empty"); - //} - GUI.color = prev; - - - - if( IsProperty()){ - - bool draw = rectInner.Contains( Event.current.mousePosition ) && !SF_NodeConnector.IsConnecting(); - - Rect selectRect = new Rect( rectInner ); - selectRect.yMin += 80; - selectRect.xMin += 40; - Color c = GUI.color; - GUI.color = new Color( 1, 1, 1, draw ? 1 : 0 ); - if(GUI.Button( selectRect, "Select", EditorStyles.miniButton )){ - EditorGUIUtility.ShowObjectPicker( TextureAsset, false, "", this.id ); - Event.current.Use(); - } - GUI.color = c; - - } - - - if( IsProperty() && Event.current.type == EventType.ExecuteCommand && Event.current.commandName == "ObjectSelectorUpdated" && EditorGUIUtility.GetObjectPickerControlID() == this.id ) { - Event.current.Use(); - Texture newTextureAsset = EditorGUIUtility.GetObjectPickerObject() as Texture; - if(newTextureAsset != TextureAsset){ - if(newTextureAsset == null){ - UndoRecord("unassign texture of " + property.nameDisplay); - } else { - UndoRecord("switch texture to " + newTextureAsset.name + " in " + property.nameDisplay); - } - TextureAsset = newTextureAsset; - OnAssignedTexture(); - } - } - - GUI.EndGroup(); - - - - // GUI.DragWindow(); - - - - - /* - EditorGUI.BeginChangeCheck(); - textureAsset = (Texture)EditorGUI.ObjectField( rectInner, textureAsset, typeof( Texture ), false ); - if( EditorGUI.EndChangeCheck() ) { - OnAssignedTexture(); - } - * */ - - } - - public override void RefreshValue() { - CheckPropertyInput(); - base.RefreshValue(0,0); - //RenderToTexture(); - } - - public void OnAssignedTexture() { - - /* - if( HasAlpha() ) { - connectors[6].enableState = EnableState.Enabled; - base.texture.CompCount = 4; - } else { - connectors[6].Disconnect(); - connectors[6].enableState = EnableState.Hidden; - base.texture.CompCount = 3; - }*/ - - - - RefreshNoTexValueAndNormalUnpack(); - - - UpdateNormalMapAlphaState(); - //RenderToTexture(); - editor.shaderEvaluator.ApplyProperty( this ); - OnUpdateNode(NodeUpdateType.Soft); - } - - public void RefreshNoTexValueAndNormalUnpack(){ - bool newAssetIsNormalMap = false; - - string path = AssetDatabase.GetAssetPath( TextureAsset ); - if( string.IsNullOrEmpty( path ) ) - newAssetIsNormalMap = false; - else{ - AssetImporter importer = UnityEditor.AssetImporter.GetAtPath( path ); - if(importer is TextureImporter) - newAssetIsNormalMap = ((TextureImporter)importer ).textureType == TextureImporterType.NormalMap; - else if(TextureAsset is ProceduralTexture && TextureAsset.name.EndsWith("_Normal")) - newAssetIsNormalMap = true; // When it's a ProceduralTexture having _Normal as a suffix - else - newAssetIsNormalMap = false; // When it's a RenderTexture or ProceduralTexture - } - - if(newAssetIsNormalMap){ - noTexValue = NoTexValue.Bump; - markedAsNormalMap = true; - UpdateNormalMapAlphaState(); - } else if( noTexValue == NoTexValue.Bump){ - noTexValue = NoTexValue.Black; - markedAsNormalMap = false; - UpdateNormalMapAlphaState(); - } - - UpdateCompCount(); - - } - - - public override string SerializeSpecialData() { - string s = ""; - if( property != null ) - s += property.Serialize() + ","; - - if( TextureAsset != null ) - s += "tex:" + SF_Tools.AssetToGUID( TextureAsset ) + ","; - s += "ntxv:" + ((int)noTexValue).ToString() + ","; - s += "isnm:" + markedAsNormalMap.ToString(); - - return s; - - } - - public override void DeserializeSpecialData( string key, string value ) { - property.Deserialize( key, value ); - switch( key ) { - case "tex": - TextureAsset = (Texture)SF_Tools.GUIDToAsset( value, typeof( Texture ) ); - OnAssignedTexture(); - break; - case "ntxv": - noTexValue = (NoTexValue)int.Parse(value); - break; - case "isnm": - markedAsNormalMap = bool.Parse(value); - UpdateNormalMapAlphaState(); - UpdateCompCount(); - break; - } - } - - - } -} \ No newline at end of file diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Tex2d.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Tex2d.cs.meta deleted file mode 100755 index f227c246..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Tex2d.cs.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: cb7203f0faaf7274fa89fa02822dd483 -MonoImporter: - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Tex2dAsset.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Tex2dAsset.cs deleted file mode 100755 index 33f7cc00..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Tex2dAsset.cs +++ /dev/null @@ -1,366 +0,0 @@ -using UnityEngine; -using UnityEditor; -using System.Collections; - - -namespace ShaderForge { - [System.Serializable] - public class SFN_Tex2dAsset : SF_Node { - - - public Texture textureAsset; // TODO: Use a parent class, this looks ridiculous - public NoTexValue noTexValue = NoTexValue.White;// TODO: Use a parent class, this looks ridiculous - public bool markedAsNormalMap = false; // TODO: Use a parent class, this looks ridiculous - - public SFN_Tex2dAsset() { - - } - - public override void Initialize() { - base.Initialize( "Texture Asset", InitialPreviewRenderMode.BlitQuad ); - node_height = (int)(rect.height - 6f); // Odd, but alright... - base.UseLowerPropertyBox( true, true ); - base.texture.CompCount = 4; - base.showColor = true; - neverDefineVariable = true; - isFloatPrecisionBasedVariable = false; - base.shaderGenMode = ShaderGenerationMode.Manual; - //alwaysDefineVariable = true; - property = ScriptableObject.CreateInstance().Initialize( this ); - - connectors = new SF_NodeConnector[]{ - SF_NodeConnector.Create(this,"TEX","Tex",ConType.cOutput,ValueType.TexAsset).WithColor(SF_Node.colorExposed) - }; - } - - public override bool IsUniformOutput() { - return false; - } - - - - public bool IsNormalMap() { - return markedAsNormalMap; - } - - - public bool IsAssetNormalMap() { - - string path = AssetDatabase.GetAssetPath( textureAsset ); - if( string.IsNullOrEmpty( path ) ) - return false; - else{ - AssetImporter importer = UnityEditor.AssetImporter.GetAtPath( path ); - if(importer is TextureImporter) - return ((TextureImporter)importer).textureType == TextureImporterType.NormalMap; - else if(textureAsset is ProceduralTexture && textureAsset.name.EndsWith("_Normal")) - return true; // When it's a ProceduralTexture having _Normal as a suffix - else - return false; // When it's a RenderTexture or ProceduralTexture - } - - } - - public bool HasAlpha() { - if( textureAsset == null ) return false; - string path = AssetDatabase.GetAssetPath( textureAsset ); - if( string.IsNullOrEmpty( path ) ) return false; - return ( (TextureImporter)UnityEditor.AssetImporter.GetAtPath( path ) ).DoesSourceTextureHaveAlpha(); - } - - // TODO: MIP selection - public override string Evaluate( OutChannel channel = OutChannel.All ) { - - //if( varDefined ) - return GetVariableName(); - //else - //DefineVariable(); // This lags for some reason - - /* - bool useLOD = GetInputIsConnected( 1 ) || (SF_Evaluator.inVert || SF_Evaluator.inTess); - string uvStr = GetInputIsConnected( 0 ) ? GetInputCon( 0 ).Evaluate() : SF_Evaluator.WithProgramPrefix( "uv0.xy" ); - string func = useLOD ? "tex2Dlod" : "tex2D"; - string mip = GetInputIsConnected( 1 ) ? GetInputCon( 1 ).Evaluate() : "0"; - - if( useLOD ) { - uvStr = "float4(" + uvStr + ",0.0," + mip + ")"; - } - - - string s = func + "(" + property.GetVariable() + "," + uvStr + ")"; - if( IsNormalMap() ) { - s = "UnpackNormal(" + s + ")"; - } - */ - //Debug.LogError( "Invalid evaluation of " + property.name ); -// return ""; - } - - - public void UnpackNormals( ref Texture2D t ) { - Color[] colors = t.GetPixels(); - for( int i = 0; i < colors.Length; i++ ) { - colors[i] = UnpackNormal( colors[i] ); - } - t.SetPixels( colors ); - t.Apply(); - } - - public Color UnpackNormal( Color c ) { - Vector3 normal = Vector3.zero; - - normal = new Vector2( c.a, c.g ) * 2f - Vector2.one; - normal.z = Mathf.Sqrt( 1f - normal.x * normal.x - normal.y * normal.y ); - - // TODO: Check color clamp method! - return SF_Tools.VectorToColor( normal ); - } - - - - public override bool Draw() { - if( IsGlobalProperty()){ - rect.height = (int)(NODE_HEIGHT + 16f + 2); - } else { - rect.height = (int)(NODE_HEIGHT + 32f + 2); - } - - ProcessInput(); - DrawHighlight(); - PrepareWindowColor(); - DrawWindow(); - ResetWindowColor(); - return true;//!CheckIfDeleted(); - } - - public override void OnDelete() { - textureAsset = null; - } - - public override void NeatWindow( ) { - - GUI.skin.box.clipping = TextClipping.Overflow; - GUI.BeginGroup( rect ); - - if(IsGlobalProperty()){ - GUI.enabled = false; - } - - if( IsProperty() && Event.current.type == EventType.DragPerform && rectInner.Contains(Event.current.mousePosition) ) { - Object droppedObj = DragAndDrop.objectReferences[0]; - if( droppedObj is Texture2D || droppedObj is ProceduralTexture || droppedObj is RenderTexture) { - Event.current.Use(); - textureAsset = droppedObj as Texture; - OnAssignedTexture(); - } - } - - if( IsProperty() && Event.current.type == EventType.dragUpdated ) { - if(DragAndDrop.objectReferences.Length > 0){ - Object dragObj = DragAndDrop.objectReferences[0]; - if( dragObj is Texture2D || dragObj is ProceduralTexture || dragObj is RenderTexture) { - DragAndDrop.visualMode = DragAndDropVisualMode.Link; - editor.nodeBrowser.CancelDrag(); - Event.current.Use(); - } else { - DragAndDrop.visualMode = DragAndDropVisualMode.Rejected; - } - } else { - DragAndDrop.visualMode = DragAndDropVisualMode.Rejected; - } - } - - if(IsGlobalProperty()){ - GUI.enabled = true; - } - - - - Color prev = GUI.color; - if( textureAsset ) { - GUI.color = Color.white; - GUI.DrawTexture( rectInner, texture.texture, ScaleMode.StretchToFill, false ); - } //else { - //GUI.color = new Color( GUI.color.r, GUI.color.g, GUI.color.b,0.5f); - //GUI.Label( rectInner, "Empty"); - //} - - if( showLowerPropertyBox ) { - GUI.color = Color.white; - DrawLowerPropertyBox(); - } - - GUI.color = prev; - - - - if( rectInner.Contains( Event.current.mousePosition ) && !SF_NodeConnector.IsConnecting() && !IsGlobalProperty() ) { - Rect selectRect = new Rect( rectInner ); - selectRect.yMin += 80; - selectRect.xMin += 40; - - if(GUI.Button( selectRect, "Select", EditorStyles.miniButton )){ - EditorGUIUtility.ShowObjectPicker( textureAsset, false, "", this.id ); - Event.current.Use(); - } - - } - - - if( !IsGlobalProperty() && Event.current.type == EventType.ExecuteCommand && Event.current.commandName == "ObjectSelectorUpdated" && EditorGUIUtility.GetObjectPickerControlID() == this.id ) { - Event.current.Use(); - Texture newTextureAsset = EditorGUIUtility.GetObjectPickerObject() as Texture; - if(newTextureAsset != textureAsset){ - if(newTextureAsset == null){ - UndoRecord("unassign texture of " + property.nameDisplay); - } else { - UndoRecord("switch texture to " + newTextureAsset.name + " in " + property.nameDisplay); - } - textureAsset = newTextureAsset; - OnAssignedTexture(); - } - - } - - GUI.EndGroup(); - - - - // GUI.DragWindow(); - - - - - /* - EditorGUI.BeginChangeCheck(); - textureAsset = (Texture)EditorGUI.ObjectField( rectInner, textureAsset, typeof( Texture ), false ); - if( EditorGUI.EndChangeCheck() ) { - OnAssignedTexture(); - } - * */ - - } - - public override void RefreshValue() { - base.RefreshValue( 0, 0 ); - //RenderToTexture(); - } - - public override int GetEvaluatedComponentCount() { - if( IsNormalMap() ) - return 3; - return 4; - } - - public override void PrepareRendering( Material mat ) { - if( textureAsset != null ) { - mat.mainTexture = textureAsset; - mat.SetFloat( "_IsNormal", IsNormalMap() ? 1 : 0 ); - } - } - - - public void OnAssignedTexture() { - - /* - if( HasAlpha() ) { - connectors[6].enableState = EnableState.Enabled; - base.texture.CompCount = 4; - } else { - connectors[6].Disconnect(); - connectors[6].enableState = EnableState.Hidden; - base.texture.CompCount = 3; - }*/ - RefreshNoTexValueAndNormalUnpack(); - editor.shaderEvaluator.ApplyProperty( this ); - OnUpdateNode(); - } - - - - // TODO: Use a parent class, this looks ridiculous - // TODO: Use a parent class, this looks ridiculous - // TODO: Use a parent class, this looks ridiculous - public void RefreshNoTexValueAndNormalUnpack(){ - bool newAssetIsNormalMap = false; - - string path = AssetDatabase.GetAssetPath( textureAsset ); - if( string.IsNullOrEmpty( path ) ) - newAssetIsNormalMap = false; - else{ - AssetImporter importer = UnityEditor.AssetImporter.GetAtPath( path ); - if(importer is TextureImporter) - newAssetIsNormalMap = ((TextureImporter)importer ).textureType == TextureImporterType.NormalMap; - else if(textureAsset is ProceduralTexture && textureAsset.name.EndsWith("_Normal")) - newAssetIsNormalMap = true; // When it's a ProceduralTexture having _Normal as a suffix - else - newAssetIsNormalMap = false; // When it's a RenderTexture or ProceduralTexture - } - - if(newAssetIsNormalMap){ - noTexValue = NoTexValue.Bump; - markedAsNormalMap = true; - } else if( noTexValue == NoTexValue.Bump){ - noTexValue = NoTexValue.Black; - markedAsNormalMap = false; - } - - } - - - public override void DrawLowerPropertyBox() { - GUI.color = Color.white; - EditorGUI.BeginChangeCheck(); - Rect tmp = lowerRect; - tmp.height = 16f; - if(!IsGlobalProperty()){ - noTexValue = (NoTexValue)UndoableLabeledEnumPopup(tmp, "Default", noTexValue, "swith default color of " + property.nameDisplay ); - //noTexValue = (NoTexValue)SF_GUI.LabeledEnumField( tmp, "Default", noTexValue, EditorStyles.miniLabel ); - tmp.y += tmp.height; - } - bool preMarked = markedAsNormalMap; - UndoableToggle(tmp, ref markedAsNormalMap, "Normal map", "normal map decode of " + property.nameDisplay, null); - //markedAsNormalMap = GUI.Toggle(tmp, markedAsNormalMap, "Normal map" ); - if(EditorGUI.EndChangeCheck()){ - - if(markedAsNormalMap && !preMarked) - noTexValue = NoTexValue.Bump; - OnUpdateNode(); - - } - - } - - - public override string SerializeSpecialData() { - - string s = property.Serialize() + ","; - - if( textureAsset != null ) - s += "tex:" + SF_Tools.AssetToGUID( textureAsset ) + ","; - s += "ntxv:" + ( (int)noTexValue ).ToString() + ","; - s += "isnm:" + markedAsNormalMap.ToString(); - - return s; - - } - - public override void DeserializeSpecialData( string key, string value ) { - property.Deserialize( key, value ); - switch( key ) { - case "tex": - textureAsset = (Texture)SF_Tools.GUIDToAsset( value, typeof( Texture ) ); - OnAssignedTexture(); - break; - case "ntxv": - noTexValue = (NoTexValue)int.Parse( value ); - break; - case "isnm": - markedAsNormalMap = bool.Parse( value ); - break; - } - } - - - } -} \ No newline at end of file diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Tex2dAsset.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Tex2dAsset.cs.meta deleted file mode 100755 index 139eb125..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Tex2dAsset.cs.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: 9869459e0257d034e93856da292f741e -MonoImporter: - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_TexCoord.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_TexCoord.cs deleted file mode 100755 index 3c9b29d0..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_TexCoord.cs +++ /dev/null @@ -1,122 +0,0 @@ -using UnityEngine; -using UnityEditor; -using System.Collections; - -namespace ShaderForge { - - [System.Serializable] - public class SFN_TexCoord : SF_Node { - - - - public enum UV { uv0 = 0, uv1 = 1, uv2 = 2, uv3 = 3 }; - public UV currentUV = UV.uv0; - public bool useAsFloat4 = false; - - public SFN_TexCoord() { - - } - - public override void Initialize() { - base.Initialize( "UV Coord.", InitialPreviewRenderMode.BlitQuad ); - base.UseLowerPropertyBox( true, true ); - base.showColor = true; - base.texture.uniform = false; - base.texture.CompCount = 4; - base.neverDefineVariable = true; - - connectors = new SF_NodeConnector[]{ - SF_NodeConnector.Create(this,"UVOUT","UV",ConType.cOutput,ValueType.VTv2), - SF_NodeConnector.Create(this,"U","U",ConType.cOutput,ValueType.VTv1).WithColor(Color.red).Outputting(OutChannel.R), - SF_NodeConnector.Create(this,"V","V",ConType.cOutput,ValueType.VTv1).WithColor(Color.green).Outputting(OutChannel.G), - SF_NodeConnector.Create(this,"Z","Z",ConType.cOutput,ValueType.VTv1).WithColor(Color.blue).Outputting(OutChannel.B), - SF_NodeConnector.Create(this,"W","W",ConType.cOutput,ValueType.VTv1).Outputting(OutChannel.A) - }; - - UpdateConnectorVisibility(); - - - } - - public override int GetEvaluatedComponentCount() { - return useAsFloat4 ? 4 : 2; - } - - public override bool IsUniformOutput() { - return false; - } - - public override string Evaluate( OutChannel channel = OutChannel.All ) { - - string s = SF_Evaluator.inTess ? "texcoord" + (int)currentUV : currentUV.ToString(); - - return SF_Evaluator.WithProgramPrefix( s ); - } - - static string[] float4Names = new string[] { "uv", "uvzw" }; - const string undoCompCountSwitch = "uv component count"; - const string undoSwitchUvChannel = "switch UV channel"; - - public override void DrawLowerPropertyBox() { - GUI.color = Color.white; - EditorGUI.BeginChangeCheck(); - - Rect[] rects = lowerRect.SplitHorizontal( 0.5f ); - - currentUV = (UV)UndoableEnumPopup( rects[0], currentUV, undoSwitchUvChannel ); - int curVal = useAsFloat4 ? 1 : 0; - int newVal = UndoableEnumPopupNamed( rects[1], curVal, float4Names, undoCompCountSwitch ); - useAsFloat4 = newVal == 1; - - if( EditorGUI.EndChangeCheck() ) { - UpdateConnectorVisibility(); - OnUpdateNode(); - } - } - - void UpdateConnectorVisibility() { - SF_NodeConnector z = GetConnectorByID( "Z" ); - SF_NodeConnector w = GetConnectorByID( "W" ); - if( !useAsFloat4 ) { - if(z.IsConnected()){ - for( int i = 0; i < z.outputCons.Count; i++ ) { - Undo.RecordObject( z.outputCons[i], "disconnect" ); - } - Undo.RecordObject( z, "disconnect" ); - z.Disconnect(); - } - if( w.IsConnected() ) { - for( int i = 0; i < w.outputCons.Count; i++ ) { - Undo.RecordObject( w.outputCons[i], "disconnect" ); - } - Undo.RecordObject( w, "disconnect" ); - w.Disconnect(); - } - } - EnableState enableState = useAsFloat4 ? EnableState.Enabled : EnableState.Disabled; - z.enableState = enableState; - w.enableState = enableState; - } - - public override string SerializeSpecialData() { - string s = ""; - s += "uv:" + (int)currentUV + ","; - s += "uaff:" + useAsFloat4.ToString(); - return s; - } - - public override void DeserializeSpecialData( string key, string value ) { - switch( key ) { - case "uv": - currentUV = (UV)int.Parse( value ); - break; - case "uaff": - useAsFloat4 = (bool)bool.Parse( value ); - UpdateConnectorVisibility(); - break; - } - } - - - } -} \ No newline at end of file diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_TexCoord.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_TexCoord.cs.meta deleted file mode 100755 index 8386db58..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_TexCoord.cs.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: 848317c8e7955f44da670e263a6c0603 -MonoImporter: - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Time.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Time.cs deleted file mode 100755 index 79b5239f..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Time.cs +++ /dev/null @@ -1,53 +0,0 @@ -using UnityEngine; -using UnityEditor; -using System.Collections; - -namespace ShaderForge { - - [System.Serializable] - public class SFN_Time : SF_Node { - - - public SFN_Time() { - - } - - public override void Initialize() { - base.Initialize( "Time", InitialPreviewRenderMode.BlitQuad ); - base.showColor = true; - base.UseLowerPropertyBox( false ); - base.texture.uniform = false; - base.texture.CompCount = 4; - - base.alwaysDefineVariable = true; - base.shaderGenMode = ShaderGenerationMode.OffUniform; - - connectors = new SF_NodeConnector[]{ - SF_NodeConnector.Create(this,"TSL","t/20",ConType.cOutput,ValueType.VTv1,false).Outputting(OutChannel.R), - SF_NodeConnector.Create(this,"T","t",ConType.cOutput,ValueType.VTv1,false).Outputting(OutChannel.G), - SF_NodeConnector.Create(this,"TDB","t*2",ConType.cOutput,ValueType.VTv1,false).Outputting(OutChannel.B), - SF_NodeConnector.Create(this,"TTR","t*3",ConType.cOutput,ValueType.VTv1,false).Outputting(OutChannel.A) - }; - - } - - public override bool UpdatesOverTime() { - return true; - } - - public override bool IsUniformOutput() { - return true; - } - - public override string Evaluate( OutChannel channel = OutChannel.All ) { - return "_Time"; - } - - public override float EvalCPU( int c ) { - return 1f; - } - - - - } -} \ No newline at end of file diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Time.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Time.cs.meta deleted file mode 100755 index 3d85654e..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Time.cs.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: 28440b6a8c7a9fa4c9d4d8f5dfa12015 -MonoImporter: - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ToggleProperty.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ToggleProperty.cs deleted file mode 100755 index 2bacdddd..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ToggleProperty.cs +++ /dev/null @@ -1,146 +0,0 @@ -using UnityEngine; -using UnityEditor; -using System.Collections; - -namespace ShaderForge { - - [System.Serializable] - public class SFN_ToggleProperty : SF_Node { - - - public SFN_ToggleProperty() { - - } - - [SerializeField] - public bool on = false; - - public override void Initialize() { - node_height = 24; - //node_width = (int)(NODE_WIDTH*1.25f); - base.Initialize( "Toggle" ); - lowerRect.y -= 8; - lowerRect.height = 28; - base.showColor = false; - base.neverDefineVariable = true; - base.UseLowerPropertyBox( true ); - base.texture.uniform = true; - base.texture.CompCount = 1; - base.shaderGenMode = ShaderGenerationMode.OffUniform; - - property = ScriptableObject.CreateInstance().Initialize( this ); - - connectors = new SF_NodeConnector[]{ - SF_NodeConnector.Create(this,"OUT","",ConType.cOutput,ValueType.VTv1,false) - }; - } - - public override bool IsUniformOutput() { - return true; - } - - public override string Evaluate( OutChannel channel = OutChannel.All ) { - return property.GetVariable(); - } - - - public override void DrawLowerPropertyBox() { - PrepareWindowColor(); - float vecPrev = texture.dataUniform[0]; - //int strWidth = (int)SF_Styles.GetLargeTextField().CalcSize( new GUIContent( texture.dataUniform[0].ToString() ) ).x; - //lowerRect.width = Mathf.Max( 32, strWidth ); - Rect r = new Rect( lowerRect ); - r.width -= 75; - r.width *= 2; - r.yMin += 4; - r.yMax -= 2; - r.xMin += 2; - float fVal = texture.dataUniform[0];; - - //GUI.enabled = false; - //fVal = EditorGUI.FloatField(r, texture.dataUniform[0], SF_Styles.LargeTextField); - //GUI.enabled = true; - - //r.x += r.width + 6; - - - - bool prevVal = on; - - GUI.enabled = false; - r = r.PadTop(2); - GUI.Label(r,prevVal ? "1": "0", SF_Styles.LargeTextFieldNoFrame); - r = r.PadTop(-2); - GUI.enabled = true; - - r.x += 18; - - r.width = r.height + 2; - bool newVal = GUI.Button(r,string.Empty) ? !prevVal : prevVal; - - if(newVal){ - Rect chkRect = r; - chkRect.width = SF_GUI.Toggle_check_icon.width; - chkRect.height = SF_GUI.Toggle_check_icon.height; - chkRect.x += (r.width-chkRect.width)*0.5f; - chkRect.y += 2; - GUI.DrawTexture(chkRect,SF_GUI.Toggle_check_icon); - } - - - - if(prevVal != newVal){ - UndoRecord("set toggle of " + property.nameDisplay + " to " + newVal.ToString()); - fVal = newVal ? 1f : 0f; - connectors[0].label = ""; - //Debug.Log("Setting it to " + newVal.ToString()); - } - - r.x += r.width + 6; - r.width = r.height + 18; - Rect texCoords = new Rect( r ); - texCoords.width /= 7; - texCoords.height /= 3; - texCoords.x = texCoords.y = 0; - GUI.DrawTextureWithTexCoords( r, SF_GUI.Handle_drag, texCoords, alphaBlend:true ); - on = newVal; - texture.dataUniform = new Color( fVal, fVal, fVal, fVal ); - if( texture.dataUniform[0] != vecPrev ) { - OnUpdateNode( NodeUpdateType.Soft ); - editor.shaderEvaluator.ApplyProperty( this ); - } - - ResetWindowColor(); - - } - - public override float EvalCPU( int c ) { - if(on){ - return 1f; - } else { - return 0f; - } - } - - - public override string SerializeSpecialData() { - string s = property.Serialize() + ","; - s += "on:" + on; - return s; - } - - public override void DeserializeSpecialData( string key, string value ) { - property.Deserialize( key, value ); - switch( key ) { - case "on": - on = bool.Parse( value ); - float fVal = on ? 1f : 0f; - texture.dataUniform = new Color( fVal, fVal, fVal, fVal ); - break; - } - } - - - - } -} \ No newline at end of file diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ToggleProperty.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ToggleProperty.cs.meta deleted file mode 100644 index 8a300c35..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ToggleProperty.cs.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: 103e84f5af0dd42d492e08d62f85e2c2 -MonoImporter: - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Transform.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Transform.cs deleted file mode 100755 index 96c3ea7c..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Transform.cs +++ /dev/null @@ -1,248 +0,0 @@ -using UnityEngine; -using UnityEditor; -using System.Collections; -using System; - -namespace ShaderForge { - - [System.Serializable] - public class SFN_Transform : SF_Node { - - - /* - public string[] matrixVars = new string[]{ - "UNITY_MATRIX_MVP", - "UNITY_MATRIX_MV", - "UNITY_MATRIX_V", - "UNITY_MATRIX_P", - "UNITY_MATRIX_VP", - "UNITY_MATRIX_T_MV", - "UNITY_MATRIX_IT_MV", - "unity_Object2World", - "unity_WorldToObject", - "tangentTransform" - }; - - public string[] matrixLabels = new string[]{ - "Model*View*Projection", - "Model*View", - "View", - "Projection", - "View*Projection", - "Transpose Model*View", - "Inverse transpose Model*View", - "Model to World", - "World to Model", - "Tangent" - }; - */ - - - public string[] spaceLabels = new string[]{ - "World", - "Local", - "Tangent", - "View" - }; - - public enum Space{World, Local, Tangent, View}; - - public Space spaceSelFrom = Space.World; - public Space spaceSelTo = Space.Local; - - - //public const int tangentID = 9; - //public int selection = 0; - - public SFN_Transform() { - - } - - public override void Initialize() { - base.Initialize( "Transform" ); - base.showColor = true; - base.vectorDataNode = true; // This should really be renamed to "Always draw as 3D" - UseLowerPropertyBox( true, true ); - base.shaderGenMode = ShaderGenerationMode.Manual; - //UseLowerReadonlyValues(true,true); - - - - connectors = new SF_NodeConnector[]{ - SF_NodeConnector.Create(this,"XYZ","XYZ",ConType.cOutput,ValueType.VTv3,false).Outputting(OutChannel.RGB), - SF_NodeConnector.Create(this,"IN","In",ConType.cInput,ValueType.VTv3,false).SetRequired(true) - }; - base.node_height += 14; - base.conGroup = ScriptableObject.CreateInstance().Initialize( connectors[0], connectors[1] ); - } - - public override int GetEvaluatedComponentCount() { - return this["IN"].GetCompCount(); - } - - public override bool IsUniformOutput() { - return GetInputData( "IN" ).uniform; - } - - public override void PrepareRendering( Material mat ) { - mat.SetFloat( "_FromSpace", (int)spaceSelFrom ); - mat.SetFloat( "_ToSpace", (int)spaceSelTo ); - } - - - // New system - public override void RefreshValue() { - RefreshValue( 1, 1 ); - } - - public string GetInVector(bool tangent = false){ - if(tangent) - return GetConnectorByStringID( "IN" ).TryEvaluate(); - else - return "float4("+GetConnectorByStringID( "IN" ).TryEvaluate()+",0)"; - } - - public override string Evaluate( OutChannel channel = OutChannel.All ) { - - if(spaceSelFrom == spaceSelTo){ // TODO: Add warning about tunneling variable - return GetConnectorByStringID( "IN" ).TryEvaluate(); - } - - - // From world space - if( FromTo( Space.World, Space.Local) ){ - return "mul( unity_WorldToObject, " + GetInVector() + " ).xyz"; - } - if( FromTo( Space.World, Space.Tangent) ){ - return "mul( tangentTransform, "+ GetInVector(tangent:true)+" ).xyz"; - } - if( FromTo(Space.World, Space.View)){ - return "mul( UNITY_MATRIX_V, " + GetInVector() + " ).xyz"; - } - - - // From local space - if( FromTo( Space.Local, Space.World) ){ - return "mul( unity_ObjectToWorld, " + GetInVector() + " ).xyz"; - } - if(FromTo(Space.Local, Space.Tangent)){ - return "mul( tangentTransform, " + "mul( unity_ObjectToWorld, " + GetInVector() + " ).xyz" + " ).xyz"; - } - if( FromTo(Space.Local, Space.View)){ - return "UnityObjectToViewPos( " + GetInVector() + " ).xyz"; - } - - - - - // From tangent space - if( FromTo( Space.Tangent, Space.World) ){ - return "mul( "+ GetInVector(tangent:true)+", tangentTransform ).xyz"; - } - if( FromTo( Space.Tangent, Space.Local) ){ - return "mul( unity_WorldToObject, " + "float4(mul( "+ GetInVector(tangent:true)+", tangentTransform ),0)" + " ).xyz"; - } - if( FromTo( Space.Tangent, Space.View) ){ - return "mul( UNITY_MATRIX_V, " + "float4(mul( "+ GetInVector(tangent:true)+", tangentTransform ),0)" + " ).xyz"; - } - - - // From view space - if( FromTo(Space.View, Space.World)){ - return "mul( " + GetInVector() + ", UNITY_MATRIX_V ).xyz"; - } - if( FromTo(Space.View, Space.Local)){ - return "mul( " + GetInVector() + ", UNITY_MATRIX_MV ).xyz"; - } - if( FromTo(Space.View, Space.Tangent)){ - return "mul( tangentTransform, "+ "mul( " + GetInVector() + ", UNITY_MATRIX_V ).xyz"+" ).xyz"; - } - - - - // TODO TODO TODO: - return GetConnectorByStringID( "IN" ).TryEvaluate(); - - - - /* - if( selection != tangentID ) - return "mul( " + matrixVars[selection] + ", float4( " + GetConnectorByStringID( "IN" ).TryEvaluate() + ", 0 )).xyz"; - else - return "mul( " + matrixVars[selection] + ", " + GetConnectorByStringID( "IN" ).TryEvaluate() + " )"; - */ - } - - public bool FromTo(Space from, Space to){ - return (spaceSelFrom == from && spaceSelTo == to); - } - - // Pass through - public override Vector4 EvalCPU() { - return GetInputData( "IN" ).node.EvalCPU(); - } - - const float dirLabelWidth = 28; - public override void DrawLowerPropertyBox() { - EditorGUI.BeginChangeCheck(); - - Rect r = new Rect(lowerRect); - r.width = dirLabelWidth; - r.height = 18; - //r.height /= 2; - GUI.Label(r,"From",SF_Styles.MiniLabelOverflow); - r.x += r.width; - r.width = (lowerRect.width-dirLabelWidth); - - spaceSelFrom = (Space)UndoablePopup(r, (int)spaceSelFrom, spaceLabels, "switch transform 'from' setting"); - r.y += r.height; - spaceSelTo = (Space)UndoablePopup(r, (int)spaceSelTo, spaceLabels, "switch transform 'to' setting"); - r.x = 0; - r.width = dirLabelWidth; - GUI.Label(r,"To",SF_Styles.MiniLabelOverflow); - - /* - r.width -= toLabelWidth; - float popupWidth = (r.width /= 2); - spaceSelFrom = EditorGUI.Popup(r, spaceSelFrom, spaceLabels); - r.x += r.width; - r.width = toLabelWidth; - GUI.Label(r,"to",SF_Styles.MiniLabelOverflow); - r.x += r.width; - r.width = popupWidth; - spaceSelTo = EditorGUI.Popup(r, spaceSelTo, spaceLabels); - */ - - //selection = EditorGUI.Popup( lowerRect, selection, matrixLabels ); - if( EditorGUI.EndChangeCheck() ) { - OnUpdateNode(); - } - } - - - public override string SerializeSpecialData() { - string s = "tffrom:" + (int)spaceSelFrom + ","; - s += "tfto:" + (int)spaceSelTo; - return s; - } - - public override void DeserializeSpecialData( string key, string value ) { - switch( key ) { - case "tffrom": - spaceSelFrom = (Space)int.Parse( value ); - break; - case "tfto": - spaceSelTo = (Space)int.Parse( value ); - break; - } - } - - - /* - public override Vector4 NodeOperator( int x, int y ) { - return base.NodeOperator( x, y ); - } - */ - - } -} \ No newline at end of file diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Transform.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Transform.cs.meta deleted file mode 100755 index 6650d470..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Transform.cs.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: 124d80ea9a58a4246b0a4a6cccdaac62 -MonoImporter: - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Transpose.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Transpose.cs deleted file mode 100644 index 77998e92..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Transpose.cs +++ /dev/null @@ -1,53 +0,0 @@ -using UnityEngine; - -namespace ShaderForge { - - [System.Serializable] - public class SFN_Transpose : SF_Node { - - public SFN_Transpose() { - } - - public override void Initialize() { - node_height = 58; - base.Initialize( "Transpose" ); - base.showColor = false; - base.UseLowerPropertyBox( false, true ); - connectors = new SF_NodeConnector[]{ - SF_NodeConnector.Create(this,"OUT","",ConType.cOutput,ValueType.VTm4x4,false), - SF_NodeConnector.Create(this,"IN","",ConType.cInput,ValueType.VTm4x4,false).SetRequired(true) - }; - } - - public override void NeatWindow() { - PrepareWindowColor(); - GUI.BeginGroup( rect ); - Rect r = new Rect( rectInner ); - r = r.Pad( 4 ); - - Rect texCoords = new Rect( r ); - texCoords.width /= 7; - texCoords.height /= 3; - texCoords.x = texCoords.y = 0; - GUI.DrawTextureWithTexCoords( r, SF_GUI.Handle_drag, texCoords, alphaBlend: true ); - - GUI.EndGroup(); - ResetWindowColor(); - - } - - public override string Evaluate( OutChannel channel = OutChannel.All ) { - return "transpose(" + GetConnectorByStringID( "IN" ).TryEvaluate() + ")"; - } - - public override Vector4 EvalCPU() { - return Color.black; - } - - public override void RefreshValue() { - RefreshValue( 1, 1 ); - } - - - } -} \ No newline at end of file diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Transpose.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Transpose.cs.meta deleted file mode 100644 index b6416903..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Transpose.cs.meta +++ /dev/null @@ -1,12 +0,0 @@ -fileFormatVersion: 2 -guid: 443238bf8445e494fb3ddbb7a7e3651e -timeCreated: 1436201790 -licenseType: Pro -MonoImporter: - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Trunc.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Trunc.cs deleted file mode 100755 index 1eb7526f..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Trunc.cs +++ /dev/null @@ -1,27 +0,0 @@ -using UnityEngine; - -namespace ShaderForge { - - [System.Serializable] - public class SFN_Trunc : SF_Node_Arithmetic { - - public SFN_Trunc() { - } - - public override void Initialize() { - base.Initialize( "Trunc" ); - base.PrepareArithmetic(1); - base.shaderGenMode = ShaderGenerationMode.SimpleFunction; - } - - public override string Evaluate( OutChannel channel = OutChannel.All ) { - return "trunc(" + GetConnectorByStringID( "IN" ).TryEvaluate() + ")"; - } - - public override float EvalCPU( int c ) { - float val = GetInputData( "IN", c ); - return val < 0 ? -Mathf.Floor( -val ) : Mathf.Floor( val ); - } - - } -} \ No newline at end of file diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Trunc.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Trunc.cs.meta deleted file mode 100755 index a361cfa0..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Trunc.cs.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: 1d73655491ef04b4ea839fe65ab4831a -MonoImporter: - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_UVTile.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_UVTile.cs deleted file mode 100644 index 5cd6f5dc..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_UVTile.cs +++ /dev/null @@ -1,128 +0,0 @@ -using UnityEngine; -using UnityEditor; -using System.Collections; -//using System; - -namespace ShaderForge { - - [System.Serializable] - public class SFN_UVTile : SF_Node { - - - public SFN_UVTile() { - - } - - - public override void Initialize() { - base.Initialize( "UV Tile" ); - base.showColor = true; - UseLowerReadonlyValues( false ); - base.alwaysDefineVariable = true; - base.shaderGenMode = ShaderGenerationMode.CustomFunction; - texture.CompCount = 2; - //SF_NodeConnection lerpCon; - connectors = new SF_NodeConnector[]{ - SF_NodeConnector.Create(this,"UVOUT","UV",ConType.cOutput,ValueType.VTv2,false), - SF_NodeConnector.Create(this,"UVIN","UV",ConType.cInput,ValueType.VTv2,false).SetRequired(false).SetGhostNodeLink(typeof(SFN_TexCoord),"UVOUT"), - SF_NodeConnector.Create(this,"WDT","Wid",ConType.cInput,ValueType.VTv1,false).SetRequired(true).WithUseCount(2), - SF_NodeConnector.Create(this,"HGT","Hei",ConType.cInput,ValueType.VTv1,false).SetRequired(true).SetGhostNodeLink(typeof(SFN_Time),"T"), - SF_NodeConnector.Create(this,"TILE","Tile",ConType.cInput,ValueType.VTv1,false).SetRequired(true).WithUseCount(2), - }; - - //base.conGroup = ScriptableObject.CreateInstance().Initialize( connectors[0], connectors[1], connectors[2] ); - } - - - - - public override void OnUpdateNode( NodeUpdateType updType, bool cascade = true ) { - if( InputsConnected() ) - RefreshValue( 1, 2 ); - base.OnUpdateNode( updType ); - } - - public override bool IsUniformOutput() { - if( GetInputIsConnected( "UVIN" ) && !GetInputData( "UVIN" ).uniform ) - return false; - if( GetInputIsConnected( "WDT" ) && !GetInputData( "WDT" ).uniform ) - return false; - if( GetInputIsConnected( "HGT" ) && !GetInputData( "HGT" ).uniform ) - return false; - if( GetInputIsConnected( "TILE" ) && !GetInputData( "TILE" ).uniform ) - return false; - return false; - } - - public override int GetEvaluatedComponentCount() { - return 2; - } - - public string TileCountRecip() { - return GetVariableName() + "_tc_rcp"; - } - - public string TileX() { - return GetVariableName() + "_tx"; - } - - public string TileY() { - return GetVariableName() + "_ty"; - } - - public override string[] GetBlitOutputLines() { - return new string[] { - "float2 tcrcp = float2(1.0,1.0)/float2( _wdt.x, _hgt.x );", - "float ty = floor(_tile.x * tcrcp.x);", - "float tx = _tile.x - _wdt.x * ty;", - "float4((_uvin.xy + float2(tx, ty)) * tcrcp,0,0)" - }; - } - - public override string[] GetPreDefineRows() { - return new string[] { - "float2 " + TileCountRecip() + " = float2(1.0,1.0)/float2( " + this["WDT"].TryEvaluate() + ", " + this["HGT"].TryEvaluate() + " );", - "float " + TileY() + " = floor(" + this["TILE"].TryEvaluate() + " * " + TileCountRecip() + ".x);", - "float " + TileX() + " = " + this["TILE"].TryEvaluate() + " - " + this["WDT"].TryEvaluate() + " * " + TileY() + ";", - }; - } - - public override string Evaluate( OutChannel channel = OutChannel.All ) { - return "(" + this["UVIN"].TryEvaluate() + " + float2(" + TileX() + ", " + TileY() + ")) * " + TileCountRecip(); - } - - // TODO Expose more out here! - public override Vector4 EvalCPU() { - - // GetInputData( "ANG", x, y, 0 ) - - Vector2 uv = Vector2.one; - if( GetInputIsConnected( "UVIN" ) ) { - uv = new Vector2( GetInputData( "UVIN", 0 ), GetInputData( "UVIN", 1 ) ); - } else { - //uv = new Vector2( x / SF_NodeData.RESf, y / SF_NodeData.RESf ); // TODO: should use ghost nodes... - } - float tile = GetInputData( "TILE", 0 ); - float w = GetInputData( "WDT", 0 ); - float h = GetInputData( "HGT", 0 ); - - float ty = Mathf.Floor( tile / w ); - float tx = tile - w * ty; - - uv.x += tx; - uv.y += ty; - - uv.x /= w; - uv.y /= h; - - - return new Color( uv.x, uv.y, 0f, 0f ); - } - - float Frac( float x ) { - return x - Mathf.Floor( x ); - } - - - } -} \ No newline at end of file diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_UVTile.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_UVTile.cs.meta deleted file mode 100644 index 8694c0ad..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_UVTile.cs.meta +++ /dev/null @@ -1,12 +0,0 @@ -fileFormatVersion: 2 -guid: b76724c3c29f6ba49b2898ad57abf498 -timeCreated: 1439735875 -licenseType: Pro -MonoImporter: - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ValueProperty.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ValueProperty.cs deleted file mode 100755 index d9d365ed..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ValueProperty.cs +++ /dev/null @@ -1,102 +0,0 @@ -using UnityEngine; -using UnityEditor; -using System.Collections; - -namespace ShaderForge { - - [System.Serializable] - public class SFN_ValueProperty : SF_Node { - - - public SFN_ValueProperty() { - - } - - public override void Initialize() { - node_height = 24; - //node_width = (int)(NODE_WIDTH*1.25f); - base.Initialize( "Value" ); - lowerRect.y -= 8; - lowerRect.height = 28; - base.showColor = false; - base.neverDefineVariable = true; - base.UseLowerPropertyBox( true ); - base.texture.uniform = true; - base.texture.CompCount = 1; - base.shaderGenMode = ShaderGenerationMode.OffUniform; - - property = ScriptableObject.CreateInstance().Initialize( this ); - - connectors = new SF_NodeConnector[]{ - SF_NodeConnector.Create(this,"OUT","",ConType.cOutput,ValueType.VTv1,false) - }; - } - - public override bool IsUniformOutput() { - return true; - } - - public override string Evaluate( OutChannel channel = OutChannel.All ) { - return property.GetVariable(); - } - - - public override void DrawLowerPropertyBox() { - PrepareWindowColor(); - float vecPrev = texture.dataUniform[0]; - //int strWidth = (int)SF_Styles.GetLargeTextField().CalcSize( new GUIContent( texture.dataUniform[0].ToString() ) ).x; - //lowerRect.width = Mathf.Max( 32, strWidth ); - Rect r = new Rect( lowerRect ); - r.width -= 32; - r.yMin += 4; - r.yMax -= 2; - r.xMin += 2; - float fVal; - if(IsGlobalProperty()){ - fVal = 1f; - GUI.enabled = false; - EditorGUI.FloatField( r, 1, SF_Styles.LargeTextField ); - GUI.enabled = true; - - } else { - fVal = UndoableFloatField(r, texture.dataUniform[0], "value" , SF_Styles.LargeTextField); - //fVal = EditorGUI.FloatField( r, texture.dataUniform[0], SF_Styles.LargeTextField ); - } - r.x += r.width + 6; - r.width = r.height; - Rect texCoords = new Rect( r ); - texCoords.width /= 7; - texCoords.height /= 3; - texCoords.x = texCoords.y = 0; - GUI.DrawTextureWithTexCoords( r, SF_GUI.Handle_drag, texCoords, alphaBlend:true ); - - texture.dataUniform = new Vector4( fVal, fVal, fVal, fVal ); - if( texture.dataUniform[0] != vecPrev ) { - OnUpdateNode( NodeUpdateType.Soft ); - editor.shaderEvaluator.ApplyProperty( this ); - } - - ResetWindowColor(); - - } - - public override string SerializeSpecialData() { - string s = property.Serialize() + ","; - s += "v1:" + texture.dataUniform[0]; - return s; - } - - public override void DeserializeSpecialData( string key, string value ) { - property.Deserialize(key,value); - switch( key ) { - case "v1": - float fVal = float.Parse( value ); - texture.dataUniform = new Color( fVal, fVal, fVal, fVal ); - break; - } - } - - - - } -} \ No newline at end of file diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ValueProperty.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ValueProperty.cs.meta deleted file mode 100755 index 7a655236..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ValueProperty.cs.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: ad7dec924ed5ebe4f80cca8439af7294 -MonoImporter: - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Vector1.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Vector1.cs deleted file mode 100755 index fa45022d..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Vector1.cs +++ /dev/null @@ -1,91 +0,0 @@ -using UnityEngine; -using UnityEditor; -using System.Collections; - -namespace ShaderForge { - - [System.Serializable] - public class SFN_Vector1 : SF_Node { - - - public SFN_Vector1() { - - } - - public override void Initialize() { - node_height = 24; - //node_width = (int)(NODE_WIDTH*1.25f); - base.Initialize( "Value" ); - lowerRect.y -= 8; - lowerRect.height = 28; - base.showColor = false; - base.UseLowerPropertyBox( true ); - base.texture.uniform = true; - base.texture.CompCount = 1; - base.shaderGenMode = ShaderGenerationMode.OffUniform; - - connectors = new SF_NodeConnector[]{ - SF_NodeConnector.Create(this,"OUT","",ConType.cOutput,ValueType.VTv1,false) - }; - } - - public override bool IsUniformOutput() { - return true; - } - - public override string Evaluate( OutChannel channel = OutChannel.All ) { - - string str = texture.dataUniform[0].ToString( "0.0###########" ); // At least one decimal - - if( texture.dataUniform[0] < 0f) - return "("+str+")"; - return str; - - } - - public override int GetEvaluatedComponentCount(){ - return 1; - } - - - public override void DrawLowerPropertyBox() { - float vecPrev = texture.dataUniform[0]; - //int strWidth = (int)SF_Styles.GetLargeTextField().CalcSize( new GUIContent( texture.dataUniform[0].ToString() ) ).x; - //lowerRect.width = Mathf.Max( 32, strWidth ); - Rect r = new Rect( lowerRect ); - r.width -= 32; - r.yMin += 4; - r.yMax -= 2; - r.xMin += 2; - //SF_GUI.EnterableFloatField( this, r, ref texture.dataUniform.r, SF_Styles.LargeTextField ); - UndoableEnterableFloatField(r, ref texture.dataUniform.x, "value", SF_Styles.LargeTextField); - r.x += r.width + 6; - r.width = r.height; - Rect texCoords = new Rect( r ); - texCoords.width /= 7; - texCoords.height /= 3; - texCoords.x = texCoords.y = 0; - GUI.DrawTextureWithTexCoords( r, SF_GUI.Handle_drag, texCoords, alphaBlend:true ); - - texture.dataUniform = new Vector4( texture.dataUniform.x, texture.dataUniform.x, texture.dataUniform.x, texture.dataUniform.x ); - if( texture.dataUniform[0] != vecPrev ) - OnUpdateNode(); - } - - public override string SerializeSpecialData() { - return "v1:" + texture.dataUniform[0]; - } - - public override void DeserializeSpecialData( string key, string value ) { - switch( key ) { - case "v1": - float fVal = float.Parse( value ); - texture.dataUniform = new Color( fVal, fVal, fVal, fVal ); - break; - } - } - - - - } -} \ No newline at end of file diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Vector1.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Vector1.cs.meta deleted file mode 100755 index 265a331a..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Vector1.cs.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: c5a90f9239f419d4f99c9b73ae51f110 -MonoImporter: - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Vector2.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Vector2.cs deleted file mode 100755 index b4fe3c80..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Vector2.cs +++ /dev/null @@ -1,79 +0,0 @@ -using UnityEngine; -using UnityEditor; -using System.Collections; - -namespace ShaderForge { - - [System.Serializable] - public class SFN_Vector2 : SF_Node { - - - public SFN_Vector2() { - - } - - public override void Initialize() { - node_height /= 2; - base.Initialize( "Vector 2" ); - base.showColor = true; - base.UseLowerPropertyBox( true ); - base.texture.uniform = true; - base.canAlwaysSetPrecision = true; - base.texture.CompCount = 2; - base.shaderGenMode = ShaderGenerationMode.OffUniform; - lowerRect.width /= 2; - connectors = new SF_NodeConnector[]{ - SF_NodeConnector.Create(this,"OUT","",ConType.cOutput,ValueType.VTv2,false) - }; - } - - public override bool IsUniformOutput() { - return true; - } - - public override string Evaluate( OutChannel channel = OutChannel.All ) { - return precision.ToCode() + "2(" + texture.dataUniform[0] + "," + texture.dataUniform[1] + ")"; - } - - public override void DrawLowerPropertyBox() { - - if( selected && !SF_GUI.MultiSelectModifierHeld() ) - ColorPickerCorner(lowerRect); - - Vector4 cPrev = texture.dataUniform; - Rect tRect = lowerRect; - //SF_GUI.EnterableFloatField( this, tRect, ref texture.dataUniform.r, null ); - UndoableEnterableFloatField(tRect,ref texture.dataUniform.x, "R channel", null); - tRect.x += tRect.width; - //SF_GUI.EnterableFloatField( this, tRect, ref texture.dataUniform.g, null ); - UndoableEnterableFloatField(tRect,ref texture.dataUniform.y, "G channel", null); - if( texture.dataUniform != cPrev ) - OnUpdateNode(); - - } - - - public override string SerializeSpecialData() { - string s = "v1:" + texture.dataUniform[0] + ","; - s += "v2:" + texture.dataUniform[1]; - return s; - } - - public override void DeserializeSpecialData( string key, string value ) { - switch( key ) { - case "v1": - float fVal1 = float.Parse( value ); - texture.dataUniform[0] = fVal1; - break; - case "v2": - float fVal2 = float.Parse( value ); - texture.dataUniform[1] = fVal2; - break; - } - } - - - - - } -} \ No newline at end of file diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Vector2.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Vector2.cs.meta deleted file mode 100755 index 9b05d822..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Vector2.cs.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: a4a9e941838527c4ab45dac110a4c10c -MonoImporter: - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Vector3.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Vector3.cs deleted file mode 100755 index d5e5bb56..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Vector3.cs +++ /dev/null @@ -1,89 +0,0 @@ -using UnityEngine; -using UnityEditor; -using System.Collections; - -namespace ShaderForge { - - [System.Serializable] - public class SFN_Vector3 : SF_Node { - - - public SFN_Vector3() { - - } - - public override void Initialize() { - node_height /= 2; - base.Initialize( "Vector 3" ); - base.showColor = true; - base.UseLowerPropertyBox( true ); - base.texture.uniform = true; - base.canAlwaysSetPrecision = true; - base.texture.CompCount = 3; - base.shaderGenMode = ShaderGenerationMode.OffUniform; - lowerRect.width /= 3; - connectors = new SF_NodeConnector[]{ - SF_NodeConnector.Create(this,"OUT","",ConType.cOutput,ValueType.VTv3,false) - }; - } - - public override bool IsUniformOutput() { - return true; - } - - public override string Evaluate( OutChannel channel = OutChannel.All ) { - return precision.ToCode() + "3(" + texture.dataUniform[0] + "," + texture.dataUniform[1] + "," + texture.dataUniform[2] + ")"; - } - - public override void DrawLowerPropertyBox() { - - if( selected && !SF_GUI.MultiSelectModifierHeld() ) - ColorPickerCorner( lowerRect ); - - //Color vecPrev = texture.dataUniform; - Rect tRect = lowerRect; - UndoableEnterableFloatField( tRect, ref texture.dataUniform.x, "R channel", null); - tRect.x += tRect.width; - UndoableEnterableFloatField( tRect, ref texture.dataUniform.y, "G channel", null); - tRect.x += tRect.width; - UndoableEnterableFloatField( tRect, ref texture.dataUniform.z, "B channel", null); - } - - public override string SerializeSpecialData() { - string s = "v1:" + texture.dataUniform[0] + ","; - s += "v2:" + texture.dataUniform[1] + ","; - s += "v3:" + texture.dataUniform[2]; - return s; - } - - public override void DeserializeSpecialData( string key, string value ) { - switch( key ) { - case "v1": - float fVal1 = float.Parse( value ); - texture.dataUniform[0] = fVal1; - break; - case "v2": - float fVal2 = float.Parse( value ); - texture.dataUniform[1] = fVal2; - break; - case "v3": - float fVal3 = float.Parse( value ); - texture.dataUniform[2] = fVal3; - break; - } - } - - - // public override float[] GetVectorWithCompCount(int cCount){ - // if(cCount == 3) - // return vec; - // else - // Debug.LogWarning("Vector3 not convertible to vector" + cCount); // Vector3 is not convertible to any other - // } - - - - - - } -} \ No newline at end of file diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Vector3.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Vector3.cs.meta deleted file mode 100755 index df78be29..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Vector3.cs.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: 9641f0761fe611c47bbca6329cbedc20 -MonoImporter: - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Vector4.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Vector4.cs deleted file mode 100755 index ae76d8fe..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Vector4.cs +++ /dev/null @@ -1,89 +0,0 @@ -using UnityEngine; -using UnityEditor; -using System.Collections; - -namespace ShaderForge { - - public class SFN_Vector4 : SF_Node { - - - public SFN_Vector4() { - - } - - public override void Initialize() { - node_height /= 2; - base.Initialize( "Vector 4" ); - base.showColor = true; - base.UseLowerPropertyBox( true ); - base.texture.uniform = true; - base.texture.CompCount = 4; - base.canAlwaysSetPrecision = true; - base.shaderGenMode = ShaderGenerationMode.OffUniform; - lowerRect.width /= 4; - connectors = new SF_NodeConnector[]{ - SF_NodeConnector.Create(this,"OUT","",ConType.cOutput,ValueType.VTv4,false) - }; - } - - public override bool IsUniformOutput() { - return true; - } - - public override string Evaluate( OutChannel channel = OutChannel.All ) { - return precision.ToCode() + "4(" + texture.dataUniform[0] + "," + texture.dataUniform[1] + "," + texture.dataUniform[2] + "," + texture.dataUniform[3] + ")"; - } - - - public override void DrawLowerPropertyBox() { - - if( selected && !SF_GUI.MultiSelectModifierHeld() ) - ColorPickerCorner( lowerRect ); - - //Color vecPrev = texture.dataUniform; - Rect tRect = lowerRect; - UndoableEnterableFloatField( tRect, ref texture.dataUniform.x, "R channel", null); - tRect.x += tRect.width; - UndoableEnterableFloatField( tRect, ref texture.dataUniform.y, "G channel", null); - tRect.x += tRect.width; - UndoableEnterableFloatField( tRect, ref texture.dataUniform.z, "B channel", null); - tRect.x += tRect.width; - UndoableEnterableFloatField( tRect, ref texture.dataUniform.w, "A channel", null); - - } - - public override string SerializeSpecialData() { - string s = "v1:" + texture.dataUniform[0] + ","; - s += "v2:" + texture.dataUniform[1] + ","; - s += "v3:" + texture.dataUniform[2] + ","; - s += "v4:" + texture.dataUniform[3]; - return s; - } - - public override void DeserializeSpecialData( string key, string value ) { - switch( key ) { - case "v1": - float fVal1 = float.Parse( value ); - texture.dataUniform[0] = fVal1; - break; - case "v2": - float fVal2 = float.Parse( value ); - texture.dataUniform[1] = fVal2; - break; - case "v3": - float fVal3 = float.Parse( value ); - texture.dataUniform[2] = fVal3; - break; - case "v4": - float fVal4 = float.Parse( value ); - texture.dataUniform[3] = fVal4; - break; - } - } - - - - - - } -} \ No newline at end of file diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Vector4.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Vector4.cs.meta deleted file mode 100755 index a6483068..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Vector4.cs.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: 6cd58b55cabc56347876d1fad012dbb4 -MonoImporter: - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Vector4Property.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Vector4Property.cs deleted file mode 100755 index 92da37b3..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Vector4Property.cs +++ /dev/null @@ -1,112 +0,0 @@ -using UnityEngine; -using UnityEditor; -using System.Collections; - -namespace ShaderForge { - - public class SFN_Vector4Property : SF_Node { - - - public SFN_Vector4Property() { - - } - - public override void Initialize() { - base.Initialize( "Vector 4" ); - base.showColor = true; - base.UseLowerPropertyBox( true ); - base.neverDefineVariable = true; - base.texture.uniform = true; - base.texture.CompCount = 4; - base.shaderGenMode = ShaderGenerationMode.OffUniform; - lowerRect.width /= 4; - - property = ScriptableObject.CreateInstance().Initialize( this ); - - connectors = new SF_NodeConnector[]{ - SF_NodeConnector.Create(this,"XYZ","XYZ",ConType.cOutput,ValueType.VTv3) .Outputting(OutChannel.RGB), - SF_NodeConnector.Create(this,"X","X",ConType.cOutput,ValueType.VTv1) .WithColor(Color.red) .Outputting(OutChannel.R), - SF_NodeConnector.Create(this,"Y","Y",ConType.cOutput,ValueType.VTv1) .WithColor(Color.green) .Outputting(OutChannel.G), - SF_NodeConnector.Create(this,"Z","Z",ConType.cOutput,ValueType.VTv1) .WithColor(Color.blue) .Outputting(OutChannel.B), - SF_NodeConnector.Create(this,"W","W",ConType.cOutput,ValueType.VTv1) .Outputting(OutChannel.A) - }; - } - - public override bool IsUniformOutput() { - return true; - } - - public override string Evaluate( OutChannel channel = OutChannel.All ) { - return property.GetVariable(); - } - - - public override void DrawLowerPropertyBox() { - - Vector4 vecPrev = texture.dataUniform; - - if( !IsGlobalProperty() && selected && !SF_GUI.MultiSelectModifierHeld() ) - ColorPickerCorner( lowerRect ); - - PrepareWindowColor(); - if(IsGlobalProperty()){ - texture.dataUniform[0] = texture.dataUniform[1] = texture.dataUniform[2] = 0.5f; - texture.dataUniform[3] = 1f; - GUI.enabled = false; - } - Rect tRect = lowerRect; - texture.dataUniform[0] = UndoableFloatField(tRect, texture.dataUniform[0], "R channel"); - tRect.x += tRect.width; - texture.dataUniform[1] = UndoableFloatField(tRect, texture.dataUniform[1], "G channel"); - tRect.x += tRect.width; - texture.dataUniform[2] = UndoableFloatField(tRect, texture.dataUniform[2], "B channel"); - tRect.x += tRect.width; - texture.dataUniform[3] = UndoableFloatField(tRect, texture.dataUniform[3], "A channel"); - if(IsGlobalProperty()){ - GUI.enabled = true; - } - ResetWindowColor(); - if( texture.dataUniform != vecPrev ) { - OnUpdateNode( NodeUpdateType.Soft ); - editor.shaderEvaluator.ApplyProperty( this ); - } - - } - - public override string SerializeSpecialData() { - string s = property.Serialize() + ","; - s += "v1:" + texture.dataUniform[0] + ","; - s += "v2:" + texture.dataUniform[1] + ","; - s += "v3:" + texture.dataUniform[2] + ","; - s += "v4:" + texture.dataUniform[3]; - return s; - } - - public override void DeserializeSpecialData( string key, string value ) { - property.Deserialize(key,value); - switch( key ) { - case "v1": - float fVal1 = float.Parse( value ); - texture.dataUniform[0] = fVal1; - break; - case "v2": - float fVal2 = float.Parse( value ); - texture.dataUniform[1] = fVal2; - break; - case "v3": - float fVal3 = float.Parse( value ); - texture.dataUniform[2] = fVal3; - break; - case "v4": - float fVal4 = float.Parse( value ); - texture.dataUniform[3] = fVal4; - break; - } - } - - - - - - } -} \ No newline at end of file diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Vector4Property.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Vector4Property.cs.meta deleted file mode 100755 index 4f04747b..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Vector4Property.cs.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: 23b7c804c8bc56748a714271c303569f -MonoImporter: - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_VectorProjection.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_VectorProjection.cs deleted file mode 100755 index f7028ae2..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_VectorProjection.cs +++ /dev/null @@ -1,59 +0,0 @@ -using UnityEngine; -using UnityEditor; -using System.Collections; -using System; - -namespace ShaderForge { - - [System.Serializable] - public class SFN_VectorProjection : SF_Node_Arithmetic { - - public SFN_VectorProjection() { - - } - - public override void Initialize() { - base.Initialize( "Vector Project." ); - base.PrepareArithmetic( 2 ); - base.shaderGenMode = ShaderGenerationMode.CustomFunction; - GetConnectorByStringID("A").usageCount = 1; - GetConnectorByStringID("B").usageCount = 4; - } - - public override string[] GetBlitOutputLines() { - string dotLeft = "_b * dot(_a,_b)"; - string dotRight = "dot(_b,_b)"; - string retStr = "(" + dotLeft + "/" + dotRight + ")"; - return new string[] { retStr }; - } - - public override string Evaluate( OutChannel channel = OutChannel.All ) { - - string a = GetConnectorByStringID( "A" ).TryEvaluate(); - string b = GetConnectorByStringID( "B" ).TryEvaluate(); - - string dotLeft = b + " * dot(" + a + "," + b + ")"; - string dotRight = "dot(" + b + "," + b + ")"; - - string retStr = "(" + dotLeft + "/" + dotRight + ")"; - - return retStr; - } - - public override Vector4 EvalCPU() { - - Vector4 a = GetInputData( "A" ).dataUniform; - Vector4 b = GetInputData( "B" ).dataUniform; - - int cc = Mathf.Max(GetInputCon( "A" ).GetCompCount(), GetInputCon( "B" ).GetCompCount()); - - float dotLeft = SF_Tools.Dot( a, b, cc ); - float dotRight = SF_Tools.Dot( b, b, cc ); - - Vector4 retVec = (dotLeft/dotRight) * b; - - return retVec; - } - - } -} \ No newline at end of file diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_VectorProjection.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_VectorProjection.cs.meta deleted file mode 100644 index 63c93aff..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_VectorProjection.cs.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: 50e107124a8704b46bc0d1757615d87f -MonoImporter: - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_VectorRejection.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_VectorRejection.cs deleted file mode 100755 index 95eb7e1d..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_VectorRejection.cs +++ /dev/null @@ -1,59 +0,0 @@ -using UnityEngine; -using UnityEditor; -using System.Collections; -using System; - -namespace ShaderForge { - - [System.Serializable] - public class SFN_VectorRejection : SF_Node_Arithmetic { - - public SFN_VectorRejection() { - - } - - public override void Initialize() { - base.Initialize( "Vector Reject." ); - base.PrepareArithmetic( 2 ); - base.shaderGenMode = ShaderGenerationMode.CustomFunction; - GetConnectorByStringID("A").usageCount = 2; - GetConnectorByStringID("B").usageCount = 4; - } - - public override string[] GetBlitOutputLines() { - string dotLeft = "_b * dot(_a,_b)"; - string dotRight = "dot(_b,_b)"; - string retStr = "(_a - (" + dotLeft + "/" + dotRight + "))"; - return new string[] { retStr }; - } - - public override string Evaluate( OutChannel channel = OutChannel.All ) { - - string a = GetConnectorByStringID( "A" ).TryEvaluate(); - string b = GetConnectorByStringID( "B" ).TryEvaluate(); - - string dotLeft = b + " * dot(" + a + "," + b + ")"; - string dotRight = "dot(" + b + "," + b + ")"; - - string retStr = "(" + a + " - (" + dotLeft + "/" + dotRight + "))"; - - return retStr; - } - - public override Vector4 EvalCPU() { - - Vector4 a = GetInputData( "A" ).dataUniform; - Vector4 b = GetInputData( "B" ).dataUniform; - - int cc = Mathf.Max(GetInputCon( "A" ).GetCompCount(), GetInputCon( "B" ).GetCompCount()); - - float dotLeft = SF_Tools.Dot( a, b, cc ); - float dotRight = SF_Tools.Dot( b, b, cc ); - - Vector4 retVec = a - (dotLeft/dotRight) * b; - - return retVec; - } - - } -} \ No newline at end of file diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_VectorRejection.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_VectorRejection.cs.meta deleted file mode 100644 index 3c81869c..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_VectorRejection.cs.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: 5e6f56ecc8b1f4edfbfa9eae75988a2b -MonoImporter: - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_VertexColor.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_VertexColor.cs deleted file mode 100755 index c05b0a49..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_VertexColor.cs +++ /dev/null @@ -1,35 +0,0 @@ -using UnityEngine; -using UnityEditor; -using System.Collections; - -namespace ShaderForge { - - [System.Serializable] - public class SFN_VertexColor : SF_Node { - - - public SFN_VertexColor() { - - } - - public override void Initialize() { - base.Initialize( "Vertex Color", InitialPreviewRenderMode.BlitSphere ); - base.showColor = true; - base.UseLowerPropertyBox( false ); - base.texture.CompCount = 4; - base.neverDefineVariable = true; - connectors = new SF_NodeConnector[]{ - SF_NodeConnector.Create(this,"RGB","RGB",ConType.cOutput,ValueType.VTv3,false).Outputting(OutChannel.RGB), - SF_NodeConnector.Create(this,"R","R",ConType.cOutput, ValueType.VTv1) .WithColor(Color.red) .Outputting(OutChannel.R), - SF_NodeConnector.Create(this,"G","G",ConType.cOutput,ValueType.VTv1) .WithColor(Color.green) .Outputting(OutChannel.G), - SF_NodeConnector.Create(this,"B","B",ConType.cOutput,ValueType.VTv1) .WithColor(Color.blue) .Outputting(OutChannel.B), - SF_NodeConnector.Create(this,"A","A",ConType.cOutput,ValueType.VTv1) .Outputting(OutChannel.A) - }; - } - - public override string Evaluate( OutChannel channel = OutChannel.All ) { - return SF_Evaluator.WithProgramPrefix( "vertexColor" ); - } - - } -} \ No newline at end of file diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_VertexColor.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_VertexColor.cs.meta deleted file mode 100755 index 88c5b423..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_VertexColor.cs.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: 8e5d87afa7814f644a9e0493dd32ca91 -MonoImporter: - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ViewPosition.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ViewPosition.cs deleted file mode 100755 index 8ce23357..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ViewPosition.cs +++ /dev/null @@ -1,38 +0,0 @@ -using UnityEngine; -using UnityEditor; -using System.Collections; - -namespace ShaderForge { - - [System.Serializable] - public class SFN_ViewPosition : SF_Node { - - - public SFN_ViewPosition() { - - } - - public override void Initialize() { - base.Initialize( "View Pos.", InitialPreviewRenderMode.BlitQuad ); - base.showColor = true; - base.UseLowerPropertyBox( false ); - base.texture.CompCount = 3; - base.neverDefineVariable = true; - connectors = new SF_NodeConnector[]{ - SF_NodeConnector.Create(this,"XYZ","XYZ",ConType.cOutput,ValueType.VTv3,false), - SF_NodeConnector.Create(this,"X","X",ConType.cOutput,ValueType.VTv1,false).Outputting(OutChannel.R).WithColor(Color.red), - SF_NodeConnector.Create(this,"Y","Y",ConType.cOutput,ValueType.VTv1,false).Outputting(OutChannel.G).WithColor(Color.green), - SF_NodeConnector.Create(this,"Z","Z",ConType.cOutput,ValueType.VTv1,false).Outputting(OutChannel.B).WithColor(Color.blue) - }; - } - - public override Vector4 EvalCPU() { - return new Color( 0f, 0.7071068f, 0.7071068f, 0f ); - } - - public override string Evaluate( OutChannel channel = OutChannel.All ) { - return "_WorldSpaceCameraPos"; - } - - } -} \ No newline at end of file diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ViewPosition.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ViewPosition.cs.meta deleted file mode 100755 index e068de70..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ViewPosition.cs.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: 2aeeefb42d9a9784dabd94b3d82c05bc -MonoImporter: - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ViewReflectionVector.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ViewReflectionVector.cs deleted file mode 100755 index 71455e59..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ViewReflectionVector.cs +++ /dev/null @@ -1,31 +0,0 @@ -using UnityEngine; -using UnityEditor; -using System.Collections; - -namespace ShaderForge { - - [System.Serializable] - public class SFN_ViewReflectionVector : SF_Node { - - - public SFN_ViewReflectionVector() { - - } - - public override void Initialize() { - base.Initialize( "View Refl.", InitialPreviewRenderMode.BlitSphere ); - base.showColor = true; - base.UseLowerPropertyBox( false ); - base.texture.CompCount = 3; - base.neverDefineVariable = true; - connectors = new SF_NodeConnector[]{ - SF_NodeConnector.Create(this,"OUT","",ConType.cOutput,ValueType.VTv3,false) - }; - } - - public override string Evaluate( OutChannel channel = OutChannel.All ) { - return "viewReflectDirection"; - } - - } -} \ No newline at end of file diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ViewReflectionVector.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ViewReflectionVector.cs.meta deleted file mode 100755 index d87b761d..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ViewReflectionVector.cs.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: 2f7ebdd9ba1b27c4e8f26cc468d8d810 -MonoImporter: - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ViewVector.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ViewVector.cs deleted file mode 100755 index 7c3d6378..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ViewVector.cs +++ /dev/null @@ -1,32 +0,0 @@ -using UnityEngine; -using UnityEditor; -using System.Collections; - -namespace ShaderForge { - - [System.Serializable] - public class SFN_ViewVector : SF_Node { - - - public SFN_ViewVector() { - - } - - public override void Initialize() { - base.Initialize( "View Dir.", InitialPreviewRenderMode.BlitSphere ); - base.showColor = true; - base.UseLowerPropertyBox( false ); - base.texture.CompCount = 3; - base.neverDefineVariable = true; - connectors = new SF_NodeConnector[]{ - SF_NodeConnector.Create(this,"OUT","",ConType.cOutput,ValueType.VTv3,false) - }; - } - - public override string Evaluate( OutChannel channel = OutChannel.All ) { - return "viewDirection"; - } - - } - -} \ No newline at end of file diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ViewVector.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ViewVector.cs.meta deleted file mode 100755 index f9bcc76f..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ViewVector.cs.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: e6425e0019e46fd429bb6fb731bfb0be -MonoImporter: - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SF_Node.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SF_Node.cs deleted file mode 100755 index acded025..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SF_Node.cs +++ /dev/null @@ -1,2661 +0,0 @@ -using UnityEngine; -using UnityEditor; -using System.Collections; -using System.Collections.Generic; -using System.Linq; -using System.Xml; -using System; - - -namespace ShaderForge { - - public enum NodeUpdateType { Soft, Hard }; - public enum ShaderGenerationMode { - OffUniform, // No shader written - Modal, // Requires modes or C# intervention, Array of suffixes & Array of custom outputs - Manual, // Fully manually written - ManualModal, // Manually written, with modes - ValuePassing, // Floats are sent from the node to the material before render - SimpleFunction, // Generates a name(inputs) - CustomFunction, // Generates a custom output line - ModularInput // Generates 5 shaders for different input counts - }; - - public enum InitialPreviewRenderMode { Off, BlitQuad, BlitSphere }; - - - [System.Serializable] - public class SF_Node : ScriptableObject, IDependable { - - public const int NODE_SIZE = 96; - public const int NODE_WIDTH = NODE_SIZE + 3; // This fits a NODE_SIZE texture inside - public const int NODE_HEIGHT = NODE_SIZE + 16; // This fits a NODE_SIZE texture inside - - public int node_width = NODE_WIDTH; - public int node_height = NODE_HEIGHT; - - public ShaderGenerationMode shaderGenMode = ShaderGenerationMode.Manual; - - public int depth = 0; // Used when deserializing and updating - - public string _variableName; - public string variableName{ - get{ - if(string.IsNullOrEmpty(_variableName) && GUI.GetNameOfFocusedControl() != VarNameControl() ){ - ResetVariableName(); - } - return _variableName; - } - set{ - _variableName = value; - if(IsProperty() && property.overrideInternalName){ - property.UpdateInternalName(); - } - SF_Tools.FormatSerializableVarName(ref _variableName); - } - } - - public bool canAlwaysSetPrecision = false; - public bool isFloatPrecisionBasedVariable = true; - public bool lockedVariableName = false; - public FloatPrecision precision = FloatPrecision.Float; - - string[] _precisionLabels; - public string[] precisionLabels{ - get{ - if(_precisionLabels == null || _precisionLabels.Length == 0){ - _precisionLabels = FloatPrecision.Float.DisplayStrings(); - } - return _precisionLabels; - } - } - -// string[] _precisionLabelsSimple; -// public string[] precisionLabelsSimple{ -// get{ -// if(_precisionLabelsSimple == null){ -// _precisionLabelsSimple = new string[3]; -// for(int i=0;i<3;i++){ -// _precisionLabelsSimple[i] = ((FloatPrecision)i).ToString().ToLower(); -// } -// } -// return _precisionLabelsSimple; -// } -// } - - public bool isGhost = false; - - public bool selected = false; - - public bool discreteTitle = false; - - public bool varDefined = false; // Whether or not this node has had its variable defined already. - public bool varPreDefined = false; // Whether or not this variable has done its predefs - public bool alwaysDefineVariable = false; - public bool neverDefineVariable = false; - public bool onlyPreDefine = false; // If it should only do the pre-define, and skip the regular variable or not (Used in branching) - public bool availableInDeferredPrePass = true; - - public static Color colorExposed = new Color( 0.8f, 1f, 0.9f ); - public static Color colorExposedDim = new Color( 0.8f, 1f, 0.9f )*0.8f; - public static Color colorExposedDark = new Color( 0.24f, 0.32f, 0.30f ) * 1.25f; - public static Color colorExposedDarker = new Color( 0.24f, 0.32f, 0.30f ) * 0.75f; - - public static Color colorGlobal = new Color( 1f, 0.8f, 0.7f); // ( 1f, 0.9f, 0.8f); - - public void UndoRecord(string undoMsg, UpToDateState tempOutdatedState = UpToDateState.OutdatedHard){ - SetDirty(tempOutdatedState); // This will only be in the restored undo state - Undo.RecordObject(this,undoMsg); - if(texture != null) - Undo.RecordObject(texture, undoMsg); - if(property != null) - Undo.RecordObject(property, undoMsg); - if(status != null) - Undo.RecordObject(status, undoMsg); - foreach(SF_NodeConnector con in connectors){ - Undo.RecordObject(con, undoMsg); - } - SetDirty(UpToDateState.UpToDate); // Might need to comment this for Redo to work, it seems - } - - public void ResetVariableName() { - _variableName = "node_" + id; - } - - - public Color colorDefault{ - get{ - if(SF_GUI.ProSkin) - return new Color( 0.8f, 0.8f, 0.8f); - else - return new Color( 1f, 1f, 1f ); - } - } - - public bool showColor; - public Color displayColor = Color.black; - - public SF_ShaderProperty property = null; - - public SF_NodeStatus status; - - public SF_Editor editor; - - public ShaderProgram program = ShaderProgram.Any; - - // User typed comment - public string comment = ""; - //public bool hasComment; - - public bool showLowerPropertyBox; - public bool showLowerPropertyBoxAlways; - public bool showLowerReadonlyValues; - public bool initialized = false; - - - //public int depth = 0; // Used to sort variable initialization - - // public static bool DEBUG = false; - - - public SF_NodePreview texture; - // public float[] vector; - - - - public int id; - - public string nodeName; - private string nodeNameSearch; - public string SearchName{ - get{ - if(string.IsNullOrEmpty(nodeNameSearch)){ - return nodeName; - } else { - return nodeNameSearch; - } - } - set{ - nodeNameSearch = value; - } - } - - public Rect rect; - public Rect rectInner; - public Rect lowerRect; - - [SerializeField] - public SF_NodeConnector[] connectors; - - public SF_NodeConnectionGroup conGroup; - - public float extraWidthOutput = 0f; - public float extraWidthInput = 0f; - - public SF_Node() { - //Debug.Log("NODE " + GetType()); - } - - // Quick retrieval of connectors - public SF_NodeConnector this[string s] { - get { - return GetConnectorByStringID(s); - } - } - - public void OnEnable() { - base.hideFlags = HideFlags.HideAndDontSave; - } - - #region IDependable implementation - - private List dependencies; - public int iDepth = 0; - void IDependable.AddDependency (SF_Node dp){ - (this as IDependable).Dependencies.Add(dp); - } - - int IDependable.Depth { - get { - return iDepth; - } - set { - iDepth = value; - } - } - - List IDependable.Dependencies { - get { - if(dependencies == null){ - dependencies = new List(); - } - return dependencies; - } - set { - dependencies = value; - } - } - - - public void ReadDependencies(){ - (this as IDependable).Dependencies.Clear(); - foreach(SF_NodeConnector c in connectors){ - if(c.conType == ConType.cOutput) - continue; - if(!c.IsConnectedAndEnabled()) - continue; - if(c.inputCon == null) - continue; - (this as IDependable).AddDependency(c.inputCon.node); - } - } - - - #endregion - - public bool IsProperty() { - if( property == null ) - return false; - if( string.IsNullOrEmpty( property.nameType ) ) { - property = null; - return false; - } - return true; - } - - public bool IsGlobalProperty(){ - return IsProperty() ? property.global : false; - } - - public virtual bool UpdatesOverTime() { - return false; // Override on nodes like Time, Panner and Rotator - } - - - // TODO: Matrices & Samplers? - public string GetVariableType() { - - - // HACK - if( this is SFN_Transpose ) { - return precision.ToCode() + "4x4"; - } - - if( this is SFN_Matrix4x4 ) { - return precision.ToCode() + "4x4"; - } - - if( this is SFN_Matrix4x4Property ) { - return precision.ToCode() + "4x4"; - } - - if( this is SFN_MultiplyMatrix ) { - if( GetConnectorByStringID( "OUT" ).IsConnected() ) { - if( GetConnectorByStringID( "OUT" ).valueType == ValueType.VTm4x4) - return precision.ToCode() + "4x4"; - else - return precision.ToCode() + "4"; - } - } - - if( this is SFN_Code ) { - if( GetConnectorByStringID( "OUT" ).IsConnected() ) { - if( GetConnectorByStringID( "OUT" ).valueType == ValueType.VTm4x4) - return precision.ToCode() + "4x4"; - } - } - - - int cc = GetEvaluatedComponentCount(); - if( cc == 0 ) - cc = texture.CompCount; - - string precisionStr = precision.ToCode(); - - - if(cc == 1) - return precisionStr; - return precisionStr + cc; - - //if( texture.CompCount == 1 ) - // return "float"; - //return "float" + texture.CompCount; - } - - public string GetVariableName(bool createIfNull = true) { - if(IsProperty()){ - if(ShouldDefineVariable() && !neverDefineVariable) - return property.nameInternal + "_var"; - else if( neverDefineVariable) - return property.nameInternal; - } - if( createIfNull && string.IsNullOrEmpty( variableName ) ) - ResetVariableName(); - return variableName; - } - - public virtual void Initialize() { - // Override - } - - - public SF_NodeConnector[] ConnectedInputs{ - get{ - return connectors.Where(con=>con.IsConnectedAndEnabled() && con.conType == ConType.cInput).Select(con=>con).ToArray(); - } - } - - - // Used for 3D data like normal/view vector, etc. - public bool vectorDataNode = false; - public bool displayVectorDataMask = false; - - public void UpdateDisplayVectorDataMask(){ - displayVectorDataMask = CheckIfShouldDisplayVectorDataMask(); - } - - public bool CheckIfShouldDisplayVectorDataMask(){ - if(vectorDataNode){ - return true; - } else { - bool disp = false; - foreach(SF_NodeConnector con in ConnectedInputs){ - if(con.inputCon.node.displayVectorDataMask){ - disp = true; - break; - } - } - return disp; - } - } - - public InitialPreviewRenderMode initialPreviewMode; - - public void Initialize( string name, InitialPreviewRenderMode initialPreviewMode = InitialPreviewRenderMode.Off ) { - this.initialPreviewMode = initialPreviewMode; - editor = SF_Editor.instance; // TODO, pass in a better way - status = ScriptableObject.CreateInstance().Initialize(this); - Vector2 pos = editor.mousePosition; // TODO: check where to spawn first - AssignID(); - this.nodeName = name; - if( SF_Debug.nodes ) - this.nodeName = ( "[" + id + "] " + this.nodeName ); - texture = ScriptableObject.CreateInstance().Initialize( this ); - texture.Fill( Color.black ); - - - - - GenerateBaseData(); - - - texture.LoadAndInitializeIcons(this.GetType()); - - - - /* - // Try to find icon - if(vectorDataTexture){ - vectorDataNode = true; - displayVectorDataMask = true; - texture.LoadDataTexture(this.GetType()); - }*/ - - - pos = editor.nodeView.ScreenSpaceToZoomSpace( pos ); - InitializeDefaultRect( pos ); - } - - public void GenerateBaseData() { - if( initialPreviewMode != InitialPreviewRenderMode.Off ) { - bool preferQuad = initialPreviewMode == InitialPreviewRenderMode.BlitQuad; - bool sphereWhen3D = SF_Settings.nodeRenderMode != NodeRenderMode.Viewport; - bool canRenderQuads = SF_Settings.nodeRenderMode == NodeRenderMode.Mixed; - - if( preferQuad && canRenderQuads ) { - vectorDataNode = false; // ? - displayVectorDataMask = false; - texture.GenerateBaseData( render3D: false ); - } else { - vectorDataNode = sphereWhen3D; - displayVectorDataMask = sphereWhen3D; - texture.GenerateBaseData( render3D: true ); - } - - } else if( texture.uniform && IsUniformOutput() ) { - texture.GenerateBaseData( false ); - } - } - - public void AssignID() { - this.id = editor.GetUniqueNodeID(); - } - - public virtual void OnPreGetPreviewData() { - // Override - } - - public virtual string GetPrepareUniformsAndFunctions(){ - return string.Empty; // Override - } - - - public virtual void Update() { - - // TODO: REALTIME - // - if( SF_Settings.RenderNodesInRealtime() ) { - if( UpdatesOverTime() || initialPreviewMode != InitialPreviewRenderMode.Off ) { - SetDirty( UpToDateState.OutdatedSoft ); - GenerateBaseData(); - } - } - // Override - } - - public void InitializeDefaultRect( Vector2 pos ) { - - - this.rect = new Rect( - pos.x - node_width / 2, - pos.y - node_height / 2, - node_width, - ( showLowerPropertyBox ? ( node_height ) : ( node_height + 20 ) ) ); // TODO: This seems a bit reversed... - rectInner = rect; - rectInner.x = 1; - rectInner.y = 15; - rectInner.width = node_width - 3; - rectInner.height = node_height - 16; - - lowerRect = rectInner; - lowerRect.y += rectInner.height; - lowerRect.height = 20; - - - } - - - public bool IsDescendantOf( SF_Node other ) { - foreach( SF_NodeConnector con in other.connectors ) { - if( con.conType != ConType.cOutput ) - continue; - if( !con.IsConnectedAndEnabled() ) - continue; - foreach( SF_NodeConnector oCon in con.outputCons ) { - if( oCon.node == this ) { - return true; - } else if( this.IsDescendantOf( oCon.node ) ) { - return true; - } - } - } - return false; - } - - - public bool IsChildOf( SF_Node other ) { - foreach( SF_NodeConnector con in other.connectors ) { - if( con.conType != ConType.cOutput ) - continue; - if( !con.IsConnectedAndEnabled() ) - continue; - foreach( SF_NodeConnector oCon in con.outputCons ) { - if( oCon.node == this ) - return true; - } - } - return false; - } - - - - - - - - - public void UndoableToggle(Rect r, ref bool boolVar, string label, string undoActionName, GUIStyle style){ - if(style == null) - style = EditorStyles.toggle; - bool newValue = GUI.Toggle(r,boolVar,label, style); - if(newValue != boolVar){ - UndoRecord((newValue ? "enable" : "disable") + " " + undoActionName); - boolVar = newValue; - } - } - - public Enum UndoableEnumPopup( Rect r, Enum enumValue, string undoPrefix ) { - Enum nextEnum = EditorGUI.EnumPopup( r, enumValue ); - if( nextEnum.ToString() != enumValue.ToString() ) { - string undoName = undoPrefix + " to " + nextEnum; - UndoRecord( undoName ); - enumValue = nextEnum; - } - return enumValue; - } - - public int UndoableEnumPopupNamed(Rect r, int enumValue, string[] names, string undoPrefix){ - int nextEnum = EditorGUI.Popup( r, enumValue, names ); - if(nextEnum != enumValue){ - string undoName = undoPrefix + " to " + nextEnum; - UndoRecord(undoName); - return nextEnum; - } - return enumValue; - } - - public Enum UndoableLabeledEnumPopup(Rect r, string label, Enum enumValue, string undoPrefix){ - Enum nextEnum = SF_GUI.LabeledEnumField( r, label, enumValue, EditorStyles.miniLabel ); - if(nextEnum.ToString() != enumValue.ToString()){ - UndoRecord(undoPrefix + " to " + nextEnum); - Undo.IncrementCurrentGroup(); - enumValue = nextEnum; - } - return enumValue; - } - - - public int UndoablePopup(Rect r, int selected, string[] displayedOptions, string undoPrefix, GUIStyle style = null){ - if(style == null) - style = EditorStyles.popup; - int pickedID = EditorGUI.Popup( r, selected, displayedOptions,style); - if(pickedID != selected){ - UndoRecord(undoPrefix + " to " + displayedOptions[pickedID]); - selected = pickedID; - } - return selected; - } - - //EditorGUI.FloatField( r, texture.dataUniform[0], SF_Styles.LargeTextField ); - - public float UndoableFloatField(Rect r, float value, string undoInfix, GUIStyle style = null){ - if(style == null) - style = EditorStyles.textField; - float newValue = EditorGUI.FloatField( r, value, style ); - if(newValue != value){ - if(IsProperty() || IsGlobalProperty()){ - UndoRecord("set " + undoInfix + " of " + (IsGlobalProperty() ? property.nameInternal : property.nameDisplay)); - } else { - UndoRecord("set " + undoInfix + " of " + nodeName + " node"); - } - return newValue; - } - return value; - } - - // (r, ref texture.dataUniform.r, "value", SF_Styles.LargeTextField); - - public void UndoableEnterableFloatField(Rect r, ref float value, string undoInfix, GUIStyle style){ - if(style == null) - style = EditorStyles.textField; - float previousValue = value; - SF_GUI.EnterableFloatField(this, r, ref value, style ); - float newValue = value; - if(previousValue != value){ - value = previousValue; - - UndoRecord("set " + undoInfix + " of " + nodeName + " node"); - value = newValue; - } - } - - public float UndoableHorizontalSlider(Rect r, float value, float min, float max, string undoInfix){ - float newValue = GUI.HorizontalSlider( r, value, min, max ); - if(newValue != value){ - if(IsProperty() || IsGlobalProperty()){ - UndoRecord("set " + undoInfix + " of " + (IsGlobalProperty() ? property.nameInternal : property.nameDisplay)); - } else { - UndoRecord("set " + undoInfix + " of " + nodeName + " node"); - } - return newValue; - } - return value; - } - - // code = GUI.TextArea(txtRect,code,SF_Styles.CodeTextArea); - public string UndoableTextArea(Rect r, string value, string undoInfix, GUIStyle style){ - string newValue = EditorGUI.TextArea( r, value, style ); - if(newValue != value){ - if(this is SFN_Code){ - UndoRecord("edit " + undoInfix + " of " + (this as SFN_Code).functionName); - } else if(IsProperty() || IsGlobalProperty()){ - UndoRecord("edit " + undoInfix + " of " + (IsGlobalProperty() ? property.nameInternal : property.nameDisplay)); - } else { - UndoRecord("edit " + undoInfix + " of " + nodeName + " node"); - } - - return newValue; - } - return value; - } - - public string UndoableTextField(Rect r, string value, string undoInfix, GUIStyle style, bool readPropertyName = true){ - if(style == null) - style = EditorStyles.textField; - string newValue = EditorGUI.TextField( r, value, style ); - if(newValue != value){ - if(this is SFN_Code && readPropertyName){ - UndoRecord("edit " + undoInfix + " of " + (this as SFN_Code).functionName); - } else if( ( IsProperty() || IsGlobalProperty() ) && readPropertyName){ - UndoRecord("edit " + undoInfix + " of " + (IsGlobalProperty() ? property.nameInternal : property.nameDisplay)); - } else { - UndoRecord("edit " + undoInfix + " of " + nodeName + " node"); - } - - return newValue; - } - return value; - } - - public Color UndoableColorField(Rect r, Color color, string undoMsg){ - Color newColor = EditorGUI.ColorField( r, color ); - if(newColor != color){ - UndoRecord(undoMsg); - return newColor; - } - return color; - } - - - - // UndoableTextField - - - - /* - public int UndoableEnterableTextField(Rect r, ref string str, ){ - - SF_GUI.EnterableTextField(this, r, - - }*/ - - - - - - - - - - - - - - - - // public virtual void OnConnectedNode(){ - // Debug.Log("OnConnectedNode " + name); - // } - - public void MakeChildrenOutdated( UpToDateState state ) { - foreach( SF_NodeConnector mCon in connectors ) { - if( mCon == null ) - continue; - if( mCon.conType == ConType.cOutput ) { - for( int i = 0; i < mCon.outputCons.Count; i++ ) { - SF_NodeConnector mConOut = mCon.outputCons[i]; - mConOut.node.dirtyState = state; - //mConOut.node.MakeChildrenOutdated( state ); // Recursive is super expensive - } - } - } - } - - public virtual void OnUpdateNode( NodeUpdateType updType = NodeUpdateType.Hard, bool cascade = true ) { - - //Debug.Log("Updating " + nodeName); - - - - if( conGroup != null ) - conGroup.Refresh(); - - if( !InputsConnected() ) { - //Debug.Log("Detected missing input on obj " + name); - texture.OnLostConnection(); - } - - // Update texture if it's uniform for things like Color/Value etc. - if( texture.uniform ) { - //Debug.Log("Blitting uniform " + texture.dataUniform); - PrepareRendering( SF_Blit.mat ); - texture.GenerateBaseData(); - } - - RefreshValue(); // Refresh this value - - if( IsProperty() ) - editor.shaderEvaluator.ApplyProperty(this); - - if( cascade ) - if( connectors != null && connectors.Length > 0 ) - foreach( SF_NodeConnector mCon in connectors ) { - if( mCon == null ) - continue; - if( mCon.conType == ConType.cOutput ) { - for (int i = 0; i < mCon.outputCons.Count; i++) { - SF_NodeConnector mConOut = mCon.outputCons [i]; - UpToDateState state = (updType == NodeUpdateType.Soft) ? UpToDateState.OutdatedSoft : UpToDateState.OutdatedHard; - mConOut.node.dirtyState = state; - mConOut.node.MakeChildrenOutdated( state ); - //mConOut.node.OnUpdateNode (updType); - // TODO Null ref - } - } - } - - UpdateDisplayVectorDataMask(); - - editor.OnShaderModified( NodeUpdateType.Soft ); - //if(!SF_Parser.quickLoad && !isGhost) - //Repaint(); - - } - - public void ChainAppendIfConnected(ref string evalStr, string op, params string[] cons ){ - foreach(string con in cons){ - if(GetInputIsConnected(con)){ - evalStr += op + GetConnectorByStringID(con).TryEvaluate(); - } - } - } - - - public void SetExtensionConnectorChain(params string[] cNames){ - - SF_NodeConnector con = GetConnectorByStringID(cNames[0]); - for(int i=1;i 1){ - if(c > cc-1){ - return 0f; - } - } - } - - - - //return GetInputData( id, x, y, c ); - return GetInputData( id ).dataUniform[c]; - } - - /* - public SF_NodePreview GetInputData( int id ) { - - if( connectors[id].inputCon == null ) { - Debug.LogWarning( "Attempt to find input node of connector " + id + " of " + this.nodeName ); - } - - return connectors[id].inputCon.node.texture; - }*/ - - public SF_NodePreview GetInputData( string id ) { - - SF_NodeConnector con = GetConnectorByStringID(id); - //SF_Node n; // TODO: What was this? Quite recent too. Define and undefine ghosts? - - if( con.inputCon == null ) { - - List tmpGhosts = new List(); - con.DefineGhostIfNeeded(ref tmpGhosts); - //n = tmpGhosts[0]; - tmpGhosts = null; - - Debug.LogWarning( "Attempt to find input node of connector " + id + " of " + this.nodeName ); - } - - //SF_NodePreview ret = con.inputCon.node.texture; - - - - - return con.inputCon.node.texture; - } - - /* - public SF_NodeConnection GetInputCon( int id ) { - if( connectors[id] == null ) { - Debug.LogError("Failed attempt to find connector [" + id + "] in " + this.nodeName); - return null; - } - if( connectors[id].inputCon == null ) { - Debug.LogError( "Failed attempt to find node of connector [" + id + "] on " + this.nodeName ); - return null; - } - return connectors[id].inputCon; - }*/ - - public int ReadComponentCountFromFirstOutput() { - if( connectors == null ) - return 4; - for( int i = 0; i < connectors.Length; i++ ) { - if( connectors[i].conType == ConType.cOutput ) { - return connectors[i].GetCompCount(); - } - } - Debug.LogWarning("No component count could be read from " + nodeName + " (" + variableName + ")"); - return 0; - } - - public SF_NodeConnector GetInputCon( string id ) { - SF_NodeConnector con = GetConnectorByStringID( id ); - - if( con == null ) { - Debug.LogError( "Failed attempt to find connector [" + id + "] in " + this.nodeName ); - return null; - } - if(con.inputCon == null) { - Debug.LogError( "Failed attempt to find input connector of [" + id + "] in " + this.nodeName ); - return null; - } - return con.inputCon; - } - - - public float BoundsTop(){ - - float top = rect.yMin; - - if(this.IsProperty()) - top -= 20; - if(HasComment()) - top -= 20; - - return top; - } - - public float BoundsBottom(){ - return rect.yMax; - } - - - public virtual int GetEvaluatedComponentCount() { - // Override - return 0; - } - - public bool CanEvaluate() { - //Debug.Log("Checking if can evaluate " + nodeName); - for( int i = 0; i < connectors.Length; i++ ) { - if( connectors[i].required ) - if( !connectors[i].IsConnected() ) - return false; - } - return true; - } - - - public void CheckForBrokenConnections() { - foreach( SF_NodeConnector con in connectors ) { - if( con.IsConnected() && con.conType == ConType.cInput ) { - if( con.inputCon.IsDeleted() ) - con.inputCon = null; - } - - } - } - - // public MaterialNode MakeDotProductNode(){ - // connectors = new MaterialNodeConnector[3]{ - // new MaterialNodeConnector(this,"A",ConType.cInput), - // new MaterialNodeConnector(this,"B",ConType.cInput), - // new MaterialNodeConnector(this,"Out",ConType.cOutput) - // }; - // return this; - // } - - - public void DrawConnections() { - foreach( SF_NodeConnector con in connectors ) - con.CheckConnection( editor ); - } - - public void Repaint() { - //SF_Editor.instance.Repaint(); - } - - public bool IsFocused() { - return rect.Contains( Event.current.mousePosition ); - } - - /* - public bool CheckIfDeleted() { - - if( Event.current.keyCode == KeyCode.Delete && Event.current.type == EventType.keyDown && selected ) { - Delete(true,"delete " + nodeName); - return true; - } - return false; - - }*/ - - public void PrepareWindowColor() { - - if(IsProperty()){ - if(property.global){ - GUI.color = colorGlobal; - } else { - GUI.color = colorExposed; // colorExposed - } - } else { - GUI.color = colorDefault; - } - } - - public void ResetWindowColor() { - GUI.color = colorDefault; - } - - - public void OnPress(){ - if( MouseOverNode( world: true ) && Event.current.isMouse ) { - editor.ResetRunningOutdatedTimer(); - if( !selected && !SF_GUI.MultiSelectModifierHeld() ) - editor.nodeView.selection.DeselectAll(registerUndo:true); - - StartDragging(); - - //if(!selected) - Event.current.Use(); - //Select(); - } - - } - - public void OnRelease() { - - - if(isDragging){ - isDragging = false; - Vector2 tmp = new Vector2(rect.x, rect.y); - rect.x = dragStart.x; - rect.y = dragStart.y; - UndoRecord("move " + nodeName + " node"); - rect.x = tmp.x; - rect.y = tmp.y; - - } - //isDragging = false; - - if( SF_NodeConnector.pendingConnectionSource != null ) - return; - - bool hover = MouseOverNode( world: true ); - bool stationary = dragDelta.sqrMagnitude < SF_Tools.stationaryCursorRadius; - bool placingNew = editor.nodeBrowser.IsPlacing(); - - if( hover && stationary && !placingNew ) { // If you released on the node without dragging - if( SF_GUI.MultiSelectModifierHeld() ) { - if( selected ) - Deselect(registerUndo:true); - else - Select(registerUndo:true); - Event.current.Use(); - } else if(!selected) { - editor.nodeView.selection.DeselectAll(registerUndo:true); - Select(registerUndo:true); - Event.current.Use(); - } - } - - } - - - public bool isDragging = false; - bool isEditingNodeTextField = false; - public static bool isEditingAnyNodeTextField = false; - - public void ContextClick( object o ) { - string picked = o as string; - switch(picked){ - case "prop_global_toggle": - property.ToggleGlobal(); - editor.ShaderOutdated = UpToDateState.OutdatedHard; - break; - case "doc_open": - SF_Web.OpenDocumentationForNode(this); - break; - case "cmt_edit": - editor.Defocus(deselectNodes:true); - GUI.FocusControl("node_comment_" + id); - isEditingNodeTextField = true; - SF_Node.isEditingAnyNodeTextField = true; - editor.ShaderOutdated = UpToDateState.OutdatedSoft; - break; - case "taghide": - property.tagHideInInspector = !property.tagHideInInspector; - editor.ShaderOutdated = UpToDateState.OutdatedHard; - break; - case "tagnsco": - property.tagNoScaleOffset = !property.tagNoScaleOffset; - editor.ShaderOutdated = UpToDateState.OutdatedHard; - break; - case "tagnrm": - property.tagNormal = !property.tagNormal; - editor.ShaderOutdated = UpToDateState.OutdatedHard; - break; - case "taghdr": - property.tagHDR = !property.tagHDR; - editor.ShaderOutdated = UpToDateState.OutdatedHard; - break; - case "tagprd": - property.tagPerRendererData = !property.tagPerRendererData; - editor.ShaderOutdated = UpToDateState.OutdatedHard; - break; - } - - } - - - public bool HasComment(){ - return !string.IsNullOrEmpty(comment); - } - - public bool UnavailableInThisRenderPath(){ - return editor.ps.catLighting.renderPath == SFPSC_Lighting.RenderPath.Deferred && !availableInDeferredPrePass; - } - - float commentYposTarget; - float commentYposCurrent; - - - public void DrawWindow() { - - - - - - - //Vector2 prev = new Vector2( rect.x, rect.y ); - //int prevCont = GUIUtility.hotControl; - - if(Event.current.type == EventType.repaint){ - commentYposCurrent = Mathf.Lerp(commentYposCurrent, commentYposTarget, 0.4f); - } - - - if(UnavailableInThisRenderPath()) - GUI.color = new Color(1f,1f,1f,0.5f); - GUI.Box( rect, nodeName, discreteTitle ? SF_Styles.NodeStyleDiscrete : SF_Styles.NodeStyle ); - - - // Draw lock - if(UnavailableInThisRenderPath()){ - SF_GUI.DrawLock(rect.PadTop(3), "This node is only available in forward rendering"); - } - - - if(!UnavailableInThisRenderPath()) - GUI.color = Color.white; - - - - - ResetWindowColor(); - //rect = GUI.Window( id, rect, NeatWindow, nodeName ); - NeatWindow(); - - // If you didn't interact with anything inside... - if( SF_GUI.PressedLMB() ) { - OnPress(); - } else if( SF_GUI.ReleasedRawLMB() ) { - OnRelease(); - } else if( Event.current.type == EventType.ContextClick ) { - //Vector2 mousePos = Event.current.mousePosition; - if( MouseOverNode( world: true ) ) { - // Now create the menu, add items and show it - GenericMenu menu = new GenericMenu(); - editor.ResetRunningOutdatedTimer(); - if(IsProperty() && property.CanToggleGlobal()){ - if(property.global){ - menu.AddItem( new GUIContent("Make local"), false, ContextClick, "prop_global_toggle" ); - } else { - menu.AddItem( new GUIContent("Make global"), false, ContextClick, "prop_global_toggle" ); - } - } - menu.AddItem( new GUIContent("Edit Comment"), false, ContextClick, "cmt_edit" ); - menu.AddItem( new GUIContent("What does " + nodeName + " do?"), false, ContextClick, "doc_open" ); - if( IsProperty() && property.global == false ) { - menu.AddSeparator( "" ); - menu.AddItem( new GUIContent( "[Hide in inspector]" ), property.tagHideInInspector, ContextClick, "taghide" ); - if( property is SFP_Tex2d ) { - menu.AddItem( new GUIContent( "[No scale and offset]" ), property.tagNoScaleOffset, ContextClick, "tagnsco" ); - menu.AddItem( new GUIContent( "[Accept normals only]" ), property.tagNormal, ContextClick, "tagnrm" ); - menu.AddItem( new GUIContent( "[Accept HDR only]" ), property.tagHDR, ContextClick, "taghdr" ); - menu.AddItem( new GUIContent( "[Per-renderer data]" ), property.tagPerRendererData, ContextClick, "tagprd" ); - } else if( property is SFP_Color ) { - menu.AddItem( new GUIContent( "[HDR color picker]" ), property.tagHDR, ContextClick, "taghdr" ); - } - // taghide tagnsco tagnrm taghdr tagprd - } - - - Matrix4x4 prevMatrix = GUI.matrix; - GUI.matrix = Matrix4x4.identity; // Odd hack, but, works - menu.ShowAsContext(); - GUI.matrix = prevMatrix; - Event.current.Use(); - } - } - - - - - if( isDragging && Event.current.isMouse) - OnDraggedWindow( Event.current.delta ); - - - - string focusName = "namelabel" + this.id; - if( Event.current.type == EventType.keyDown && ( Event.current.keyCode == KeyCode.Return || Event.current.keyCode == KeyCode.KeypadEnter ) && GUI.GetNameOfFocusedControl() == focusName ) { - editor.Defocus(); - } - - bool codeNode = this is SFN_Code; - - bool mouseOver = rect.Contains( Event.current.mousePosition ); - - if( IsProperty() || codeNode ) { - PrepareWindowColor(); - Rect nameRect = new Rect( rect ); - nameRect.height = 20; - nameRect.y -= nameRect.height; - nameRect.xMax -= 1; // Due to reasons - //GUI.color = SF_Styles.nodeNameLabelBackgroundColor; - GUI.Box( nameRect, "", EditorStyles.textField ); - GUI.color = EditorGUIUtility.isProSkin ? Color.white : Color.black; - string oldName = codeNode ? (this as SFN_Code).functionName : IsGlobalProperty() ? property.nameInternal : property.nameDisplay; - - GUI.SetNextControlName(focusName); - //Debug.Log(); - - string newName; - //if(codeNode) - // newName = UndoableTextField( nameRect, oldName, SF_Styles.GetNodeNameLabelText() ); // newName = GUI.TextField( nameRect, oldName, SF_Styles.GetNodeNameLabelText() ); - //else if(IsGlobalProperty()) - // newName = GUI.TextField( nameRect, oldName, SF_Styles.GetNodeNameLabelText() ); - //else - - - string labelType = codeNode ? "function name" : !IsGlobalProperty() ? "property name" : "internal name"; - newName = UndoableTextField( nameRect, oldName, labelType, SF_Styles.GetNodeNameLabelText(), readPropertyName:false ); - - if(codeNode) - newName = SF_ShaderProperty.FormatInternalName(newName); - else - SF_Tools.FormatSerializable( ref newName ); - - - - - if( oldName != newName ){ - if(codeNode) - (this as SFN_Code).functionName = newName.Replace(" ",string.Empty); - else if(IsGlobalProperty()) - property.SetBothNameAndInternal( newName ); - else - property.SetName( newName ); - } - - bool focusedField = GUI.GetNameOfFocusedControl() == focusName; - - mouseOver = nameRect.Contains( Event.current.mousePosition ) || rect.Contains( Event.current.mousePosition ); - - if( focusedField ) - editor.nodeView.selection.DeselectAll(registerUndo:true); - - if( selected || focusedField || mouseOver && !editor.screenshotInProgress ) { - GUI.color = new Color(1f,1f,1f,0.6f); - nameRect.x += nameRect.width; - if(!IsGlobalProperty() && !codeNode){ - GUI.Label( nameRect, property.nameInternal, EditorStyles.boldLabel ); - } - nameRect.y -= 12; - - // Right: - if(!IsGlobalProperty() && !codeNode){ // Global ones *only* have internal names, display as main instead - GUI.color = new Color( 1f, 1f, 1f, 0.3f ); - GUI.Label( nameRect, "Internal name:", EditorStyles.miniLabel); - } - - - // Upper: - nameRect = new Rect( rect ); - nameRect.height = 20; - nameRect.y -= 33; - GUI.color = new Color( 1f, 1f, 1f, 0.6f ); - GUI.Label( nameRect, codeNode ? "Function name:" : !IsGlobalProperty() ? "Property label:" : "Internal name:", EditorStyles.miniLabel ); - - - GUI.color = Color.white; - } - ResetWindowColor(); - - } - - - Rect cr = rect; - if(HasComment() || isEditingNodeTextField){ - GUI.color = Color.white; - - cr.height = SF_Styles.GetNodeCommentLabelTextField().fontSize + 4; - cr.width = 2048; - cr.y -= cr.height + 2; - - - commentYposTarget = cr.y; - - //commentYposCurrent = - - if( IsProperty() || this is SFN_Code ){ - commentYposTarget -= 19; - if( mouseOver || selected ){ - commentYposTarget -= 8; - } - } - - cr.y = Mathf.Round(commentYposCurrent); - - if(isEditingNodeTextField){ - - - bool clicked = Event.current.rawType == EventType.mouseDown && Event.current.button == 0; - bool clickedOutside = clicked && !cr.Contains(Event.current.mousePosition); - bool pressedReturn = Event.current.rawType == EventType.KeyDown && Event.current.keyCode == KeyCode.Return; - - bool defocus = pressedReturn || clickedOutside; - - if( defocus ){ - isEditingNodeTextField = false; - SF_Node.isEditingAnyNodeTextField = false; - editor.Defocus(); - } - string fieldStr = "node_comment_" + id; - GUI.SetNextControlName(fieldStr); - Rect tmp = cr; - tmp.width = 256; - //comment = GUI.TextField(tmp, comment, SF_Styles.GetNodeCommentLabelTextField()); - comment = UndoableTextField(tmp, comment, "comment", SF_Styles.GetNodeCommentLabelTextField()); - - SF_Tools.FormatSerializableComment(ref comment); - - - if(!defocus){ - GUI.FocusControl(fieldStr); - } - - } else { - GUI.Label(cr, "// " + comment, SF_Styles.GetNodeCommentLabelText()); - } - - - - } - - - // Tags - if(IsProperty() && !property.global){ - - - cr.y = BoundsTop() - 18; - if( mouseOver || selected ) { - cr.y -= 8; - } - cr.height = 15; - Color c = colorExposed; - c.a = 0.6f; - GUI.color = c; - - - TagLabel( ref cr, "Hidden", property.tagHideInInspector ); - TagLabel( ref cr, "No scale/offset", property.tagNoScaleOffset ); - TagLabel( ref cr, "Normal", property.tagNormal ); - TagLabel( ref cr, "HDR", property.tagHDR ); - TagLabel( ref cr, "Per-renderer", property.tagPerRendererData ); - - GUI.color = Color.white; - - } - - - - - - - - - Rect ur = rect; - - ur = ur.MovedDown(); - - - // See how tall/which ones we should use on this node - bool showPrecision = ((ShouldDefineVariable() || IsProperty()) && isFloatPrecisionBasedVariable) || canAlwaysSetPrecision; - bool showVarname = !IsGlobalProperty() && (ShouldDefineVariable() || IsProperty()) && !lockedVariableName ; - bool optionalVarname = IsProperty(); - bool showPanel = SF_Settings.showVariableSettings && (showPrecision || showVarname); - - - - - ur.height = (showPrecision && showVarname) ? 46 : 26; - ur.y += 1; - if(ur.width != NODE_WIDTH){ - ur.x += (rect.width - NODE_WIDTH)/2f; - ur.width = NODE_WIDTH; - } - - - - - // #precision #variablename - - if( showPanel ){ - - // Background - PrepareWindowColor(); - GUI.Label(ur, string.Empty, SF_Styles.NodeStyle); - GUI.color = Color.white; - - - Rect varNameRect = ur.Pad(4); - Rect precisionRect = ur.Pad(4); - - if(showPrecision){ - - if(showVarname){ - Rect[] split = ur.SplitVertical(0.5f, padding:4); - precisionRect = split[0]; - varNameRect = split[1]; - } - - precision = (FloatPrecision)UndoablePopup(precisionRect,(int)precision,precisionLabels,"variable precision",SF_Styles.BoldEnumField); - - //GUI.SetNextControlName(VarPrecisionControl()); - //string[] labels = split[0].Contains(Event.current.mousePosition) ? precisionLabels : precisionLabelsSimple; - - } - - - - - if( showVarname ){ - - if( optionalVarname ){ - Rect[] split = varNameRect.SplitFromLeft((int)varNameRect.height); - varNameRect = split[1]; - UndoableToggle(split[0],ref property.overrideInternalName,string.Empty,"override internal name", EditorStyles.toggle); - GUI.enabled = property.overrideInternalName; - } - - GUI.SetNextControlName(VarNameControl()); - variableName = UndoableTextField(varNameRect, (IsProperty() && !property.overrideInternalName) ? property.nameInternal : variableName, (IsProperty() ? "variable" : "internal") + " name", EditorStyles.textField, false); - GUI.enabled = true; - - } - - - - - } - - - //GUI.Label( nameRect, "Test", EditorStyles.toolbarTextField ); - - } - - - void TagLabel( ref Rect r, string tag, bool tagOn ) { - if( tagOn ) { - GUI.Label( r, "[" + tag + "]", EditorStyles.miniLabel ); - r = r.MovedUp(); - } - } - - -// public bool ShowPrecisionEditField(){ -// -// } -// -// public bool ShowVarnameEditField(){ -// -// } -// -// -// public int GetHeightOfLowerPanel(){ -// -// } - - - public virtual bool CanCustomizeVariable(){ - return ( ShouldDefineVariable() || IsProperty() ) && !lockedVariableName; - } - - public string VarNameControl(){ - return "ctrl_" + id + "_varname"; - } - public string VarPrecisionControl(){ - return "ctrl_" + id + "_precision"; - } - - - public void UpdateNeighboringConnectorLines(){ - foreach(SF_NodeConnector con in connectors){ - if(!con.IsConnected()) - continue; - if(con.conType == ConType.cOutput){ - foreach(SF_NodeConnector conOut in con.outputCons){ - conOut.conLine.ReconstructShapes(); - } - } else if(con.conType == ConType.cInput){ - con.conLine.ReconstructShapes(); - } - } - } - - - public void StartDragging() { - isDragging = true; - dragStart = new Vector2( rect.x, rect.y ); - dragDelta = Vector2.zero; - } - - - public static int snapThreshold = 10; - public static int snapDistance = 256; - public static Color snapColor = new Color(1f,1f,1f,0.5f); - public Vector2 dragStart; - public Vector2 dragDelta; - - public void OnDraggedWindow( Vector2 delta ) { - - - - editor.ResetRunningOutdatedTimer(); - - //UndoRecord("move " + nodeName + " node"); - - dragDelta += delta; - Vector2 finalDelta = new Vector2( rect.x, rect.y ); - rect.x = dragStart.x + dragDelta.x; - rect.y = dragStart.y + dragDelta.y; - Event.current.Use(); - - - UpdateNeighboringConnectorLines(); - - - - if(!SF_Settings.hierarchalNodeMove) // TODO: Snap toggle + make it work properly with hierarchal on - foreach(SF_Node n in editor.nodes){ - if( n == this ) - continue; - if( SF_Tools.DistChebyshev( rect.center, n.rect.center ) > snapDistance ) - continue; - if( n.selected ) // Don't snap to selected nodes - continue; - if( Mathf.Abs( n.rect.xMax - rect.xMax ) < snapThreshold ) { // RIGHT SIDE SNAP - delta.x -= rect.xMax - n.rect.xMax; - rect.x = n.rect.xMax - rect.width; - } else if( Mathf.Abs( n.rect.x - rect.x ) < snapThreshold ) { // LEFT SIDE SNAP - delta.x -= rect.x - n.rect.x; - rect.x = n.rect.x; - } else if( Mathf.Abs( n.rect.y - rect.y ) < snapThreshold ) { // TOP SIDE SNAP - delta.y -= rect.y - n.rect.y; - rect.y = n.rect.y; - } else if( Mathf.Abs( n.rect.center.x - rect.center.x ) < snapThreshold ) { // CENTER HORIZONTAL SNAP - delta.x -= rect.center.x - n.rect.center.x; - Vector2 tmp = rect.center; - tmp.x = n.rect.center.x; - rect.center = tmp; - - //GUILines.DrawLine( rect.center, n.rect.center, snapColor, snapThreshold * 2, true ); - - } else if( Mathf.Abs( n.rect.center.y - rect.center.y ) < snapThreshold ) { // CENTER VERTICAL SNAP - delta.y -= rect.center.y - n.rect.center.y; - Vector2 tmp = rect.center; - tmp.y = n.rect.center.y; - rect.center = tmp; - - //GUILines.DrawLine( editor.nodeView.AddNodeWindowOffset( rect.center ), editor.nodeView.AddNodeWindowOffset( n.rect.center ), Color.white, snapThreshold * 2, true ); - - } - } - - finalDelta = new Vector2( rect.x, rect.y ) - finalDelta; - - editor.nodeView.selection.MoveSelection(finalDelta, ignore:this); - - bool moveAsHierarchy = SF_GUI.HoldingControl() ^ SF_Settings.hierarchalNodeMove; - if( delta != Vector2.zero && moveAsHierarchy && ( GetType() != typeof( SFN_Final ) ) ) { - MoveUnselectedChildren( delta ); - } - - } - - public void MoveUnselectedChildren( Vector2 delta ) { - // Find all child nodes - // TODO: On click or on connect, not every frame - List children = new List(); - children.AddRange( editor.nodeView.selection.Selection ); - children.Add( this ); - AppendUnselectedChildren( children ); - foreach( SF_Node n in editor.nodeView.selection.Selection ) { - n.AppendUnselectedChildren( children ); - } - foreach(SF_Node n in editor.nodeView.selection.Selection){ - children.Remove( n ); - } - children.Remove( this ); - - for( int i = 0; i < children.Count; i++ ) { - children[i].rect.x += delta.x; - children[i].rect.y += delta.y; - } - } - - public void AppendUnselectedChildren( List list ) { - - // Search all connected - for( int i = 0; i < connectors.Length; i++ ) { - if( connectors[i].conType == ConType.cOutput ) - continue; - if( connectors[i].IsConnected() && !list.Contains( connectors[i].inputCon.node ) ) { - //if( connectors[i].inputCon.node.ConnectedOutputCount() > 1 ) - // continue; // Only unique children - //if( OutputsToAnyOutside( list ) ) - // continue; // Only unique children - if( !connectors[i].inputCon.node.selected ) - list.Add( connectors[i].inputCon.node ); - connectors[i].inputCon.node.AppendUnselectedChildren( list ); - } - } - } - - - /* - public bool OutputsToAnyOutside( List list ) { - foreach( SF_NodeConnection nc in connectors ) { - if( nc.conType == ConType.cInput ) - continue; - foreach(SF_NodeConnection con in nc.outputCons){ - if( !list.Contains( con.inputCon.node ) ) - return true; - } - } - return false; - }*/ - - public int ConnectedOutputCount() { - int count = 0; - foreach( SF_NodeConnector nc in connectors ) { - if(nc.conType == ConType.cInput) - continue; - count += nc.outputCons.Count; - } - return count; - } - - public void UndoRecordSelectionState(string undoMsg){ - UndoRecord(undoMsg, UpToDateState.OutdatedSoft); - Undo.RecordObject(editor.nodeView.selection, undoMsg); - } - - public void Select(bool registerUndo) { - if( !editor.nodeView.selection.Selection.Contains( this ) ) { - if(registerUndo) - UndoRecordSelectionState("select"); - editor.nodeView.selection.Add( this ); - selected = true; - } - } - - public void Deselect(bool registerUndo, string undoMsg = null) { - if(!selected) - return; - if(undoMsg == null) - undoMsg = "deselect"; - if(registerUndo) - UndoRecordSelectionState(undoMsg); - editor.nodeView.selection.Remove( this ); - selected = false; - } - - public void DrawHighlight() { - - //if( Event.current.type == EventType.repaint ) - if( selected ) { - - Rect r = new Rect( rect ); - r.xMax -= 1; - if( IsProperty() ) - r.yMin -= 20; - GUILines.Highlight( r, offset: 1, strength: 2 ); - } - } - - /* - public void OnSelectedWindow() { - Debug.Log("Beep!"); - }*/ - - - public void ProcessInput() { - /* - if( IsFocused() ) - Debug.Log( "Mouse over " + nodeName + " rawType = " + Event.current.rawType ); - if( Event.current.rawType == EventType.mouseDown && Event.current.button == 0 ) { - if( !selected ) { - Debug.Log("SELECTED"); - Debug.Log("Rect: " + rect + " mPos: " + Event.current.mousePosition); - editor.nodeView.selection.DeselectAll(); - Select(); - } - - }*/ - } - - - public virtual bool Draw() { - - - ProcessInput(); - - - DrawHighlight(); - - //if(status != null) - - if( SF_Debug.nodePreviews ) { - Rect tmp = rect; - tmp.y -= 20; - tmp.height = 20; - GUI.Label( tmp, "State: " + dirtyState ); - } - - - - PrepareWindowColor(); - - if( showLowerPropertyBox ) - if( showLowerPropertyBoxAlways || ( showLowerPropertyBox && CanEvaluate() && IsUniformOutput() ) ) { - rect.height = ( node_height + 20 ); - } else { - rect.height = node_height; - } - - - DrawWindow(); - - ResetWindowColor(); - - return true; - } - - - - public void DrawGrabHandle(Rect r) { - Rect texCoords = new Rect( r ); - texCoords.width /= 7; - texCoords.height /= 3; - texCoords.x = texCoords.y = 0; - GUI.DrawTextureWithTexCoords( r, SF_GUI.Handle_drag, texCoords, alphaBlend: true ); - } - - - - public virtual void NeatWindow( ) { - GUI.BeginGroup( rect ); - - if(UnavailableInThisRenderPath()) - GUI.color = new Color(1f,1f,1f,0.5f); - else - GUI.color = Color.white; - GUI.skin.box.clipping = TextClipping.Overflow; - - - if( showColor ) { - texture.Draw( rectInner, UnavailableInThisRenderPath() ); - GUI.color = Color.white; - - /* - if( SF_Debug.nodes ) { - Rect r = new Rect( 0, 16, 96, 20 ); - GUI.color = Color.white; - GUI.skin.box.normal.textColor = Color.white; - GUI.Box( r, "ID: " + id ); - r.y += r.height; - //GUI.Box( r, "Cmps: " + texture.CompCount ); - //r.y += r.height; - //GUI.Box( r, "Unif: " + texture.dataUniform ); - - }*/ - - - } - - if( showLowerPropertyBox ) { - GUI.color = Color.white; - DrawLowerPropertyBox(); - } - - //GUI.DragWindow(); - - - GUI.EndGroup( ); - - - //if(rect.center.x) - } - - - public Rect LocalRect() { - Rect r = new Rect( rect ); - r.x = 0; - r.y = 0; - return r; - } - - public bool MouseOverNode(bool world = false) { - - if(!editor.nodeView.MouseInsideNodeView(offset:true)) - return false; - - if( world ) { - return rect.Contains( Event.current.mousePosition ); - } - else - return LocalRect().Contains( Event.current.mousePosition ); - } - - public void ColorPickerCorner( Rect r ) { - //bool prevEnabledState = GUI.enabled; - //GUI.enabled = MouseOverNode(false); - - //try { - Rect pickRect = new Rect( r ); - pickRect.height = 15; - pickRect.width = 45; - pickRect.y -= pickRect.height + 1; - pickRect.x += 1; - Rect pickBorder = new Rect( pickRect ); - pickBorder.xMax -= 18; - //pickBorder.xMin -= 1; - //pickBorder.yMax += 1; - //pickBorder.yMin -= 1; - - float grayscale = ((Color)texture.dataUniform).grayscale; - Color borderColor = Color.white - new Color( grayscale, grayscale, grayscale ); - borderColor.a = GUI.enabled ? 1f : 0.25f; - GUI.color = borderColor; - GUI.DrawTexture( pickBorder, EditorGUIUtility.whiteTexture ); - GUI.color = Color.white; - - - - Color pickedColor = EditorGUI.ColorField( pickRect, texture.ConvertToDisplayColor( texture.dataUniform ) ); - SetColor( pickedColor, true ); - - } - - public void SetColor(Color c, bool registerUndo = false) { - if( (Vector4)c != texture.dataUniform ) { - Color newColor = texture.ConvertToDisplayColor( c ); - if(registerUndo){ - if(IsProperty()){ - UndoRecord("set color of " + property.nameDisplay); - } else { - UndoRecord("set color of " + nodeName); - } - - } - - texture.dataUniform = newColor; - if( IsProperty() ) { - if( property is SFP_Color ) { - ( this as SFN_Color ).OnUpdateValue(); - } - } - } - } - - - public string FloatArrToString( float[] arr ) { - string s = ""; - for( int i = 0; i < arr.Length; i++ ) - s += arr[i] + " "; - return s; - } - - public void UseLowerReadonlyValues( bool use ) { - UseLowerPropertyBox( use ); - showLowerReadonlyValues = use; - } - - public void UseLowerPropertyBox( bool use, bool always = false ) { - rect.height = ( use ? ( node_height + 20 ) : ( node_height ) ); - showLowerPropertyBox = use; - if( always ) - showLowerPropertyBoxAlways = use; - } - - public virtual void DrawLowerPropertyBox() { - if( showLowerReadonlyValues ) - DrawLowerReadonlyValues(); - } - - public void DrawLowerReadonlyValues() { - - if( !texture.uniform ) - return; - - if( !InputsConnected() || !texture.uniform ) { - GUI.enabled = false; - GUI.skin.label.alignment = TextAnchor.MiddleCenter; - GUI.Label( lowerRect, "" ); - GUI.skin.label.alignment = TextAnchor.MiddleLeft; - GUI.enabled = true; - return; - } - - Rect tmp = lowerRect; - tmp.width /= texture.CompCount; - GUI.enabled = false; - for( int i = 0; i < texture.CompCount; i++ ) { - GUI.Box( tmp, "" ); - EditorGUI.SelectableLabel( tmp, texture.dataUniform[i].ToString() ); - tmp.x += tmp.width; - } - GUI.enabled = true; - } - - public virtual void OnDelete() { - // Override - } - - [SerializeField] - public UpToDateState dirtyState = UpToDateState.UpToDate; - - public bool CheckIfDirty(){ - - if( dirtyState == UpToDateState.UpToDate ) - return false; - - - - foreach( SF_NodeConnector con in ConnectedInputs ) { - if( con.inputCon.node.dirtyState != UpToDateState.UpToDate ) { - return false; - } - } - - NodeUpdateType updType = NodeUpdateType.Hard; - if( dirtyState == UpToDateState.OutdatedHard ) - updType = NodeUpdateType.Hard; - if( dirtyState == UpToDateState.OutdatedSoft ) - updType = NodeUpdateType.Soft; - - OnUpdateNode(updType, true); - dirtyState = UpToDateState.UpToDate; - return true; - } - - public void SetDirty(UpToDateState dirtyState){ - this.dirtyState = dirtyState; - } - - - // CURRENTLY ONLY USED BY GHOST NODES - public void DeleteGhost(bool registerUndo = false, string undoMsg = "") { - - if( this is SFN_Final ) - return; - - //bool leadsToFinal = status.leadsToFinal; - - - if(SF_Debug.nodeActions) - Debug.Log("Deleting node " + nodeName); - - - - OnDelete(); - - - Deselect(registerUndo:false); - editor.nodes.Remove( this ); - if( editor.nodeView.treeStatus.propertyList.Contains( this ) ) - editor.nodeView.treeStatus.propertyList.Remove( this ); - - for( int i = 0; i < connectors.Length; i++ ) { - connectors[i].Disconnect(true, false); - //connectors[i] = null; // TODO - } - //connectors = null; // TODO - - - //SF_Editor.instance.CheckForBrokenConnections(); - //SF_Editor.instance.Repaint(); - - texture.DestroyTexture(); - - - - - DestroyImmediate( texture ); - ScriptableObject.DestroyImmediate( status ); - - ScriptableObject.DestroyImmediate(this); - - - - - editor.OnShaderModified(NodeUpdateType.Soft); - - //if(leadsToFinal){ - // editor.ShaderOutdated = UpToDateState.OutdatedHard; // TODO: Only if connected - //} - } - - - - // TODO: Channels etc - // Override if this node has unconnected, required inputs - public virtual string Evaluate( OutChannel channel = OutChannel.All ) { - return GetVariableName(); - } - - - // Used to see if it's an already defined variable or not - public string PreEvaluate() { - - if(varDefined) - return GetVariableName(); - - // If it shouldn't be defined, get raw value - if( !ShouldDefineVariable() ) { - return Evaluate(); - } else if( !varDefined && !neverDefineVariable ) { // If it's not defined yet, define it! Append a new row - DefineVariable(); - } - - return GetVariableName(); - - } - - public void DefineVariable() { - - //if(this is SFN_If) - //Debug.Log("Defining variable"); - - if( varDefined || neverDefineVariable ) { - //Debug.Log( "Already defined!" ); - return; - } - PreDefine(); - - if(onlyPreDefine){ - varDefined = true; - return; - } - - string s = GetVariableType() + " " + GetVariableName() + " = " + Evaluate() + ";"; - - if(HasComment()){ - s += " // " + comment; - } - - SF_Editor.instance.shaderEvaluator.App( s ); - varDefined = true; - } - - public virtual string[] TryGetMultiCompilePragmas( out int group ){ - group = 0; - return null; // Override - } - - - public void DefineGhostsIfNeeded(ref List ghosts) { - - //Debug.Log("Checking if ghosts should be defined on " + nodeName + "..."); - - - // Super duper ultra weird and shouldn't be here. Find real issue later // TODO - if(this == null) - return; - - // TODO: This will prevent multi-ghosting - /* - if( editor.shaderEvaluator.ghostNodes.Contains(this) ){ - if(SF_Debug.The(DebugType.GhostNodes)) - Debug.Log("Skipping ghost define for " + nodeName); - return; - } - - if(Connectors == null){ - Debug.Log("CHK. GHOST: [" + nodeName + "] Connector count = NULL"); - Debug.Log("WHAT? this = " + this); - if(this == null) - return; - } else - Debug.Log("CHK. GHOST: [" + nodeName + "] Connector count = " + Connectors.Length); - */ - - foreach(SF_NodeConnector con in connectors){ - if( con.conType == ConType.cOutput) { - //Debug.LogError("Ghost node defined on an output: "+nodeName+"[" + con.label + "]"); - continue; - } - con.DefineGhostIfNeeded( ref ghosts ); - } - } - - - public void PreDefine() { - if( varDefined || varPreDefined ) - return; - - string[] preDefs = GetPreDefineRows(); - if( preDefs != null ) { - foreach( string row in preDefs ) { - SF_Editor.instance.shaderEvaluator.App( row ); - } - } - varPreDefined = true; - } - - public virtual string[] GetPreDefineRows() { - return null; // Override this - } - - - - public bool ShouldDefineVariable() { - if(neverDefineVariable) - return false; - return ((UsedMultipleTimes() || alwaysDefineVariable) /*&& !varDefined*/); - } - - - public bool UsedMultipleTimes() { - return ( GetOutputCount() > 1 ); - } - - public int GetOutputCount() { - int n = 0; - foreach( SF_NodeConnector con in connectors ) { - if( con.conType == ConType.cInput ) - continue; - if( con.IsConnected() ) { - foreach(SF_NodeConnector inCon in con.outputCons){ - n += inCon.usageCount; // Make sure it counts some as multiple uses - } - } - } - return n; - } - - - public virtual string SerializeSpecialData() { - return null; // Override! - } - - public virtual void DeserializeSpecialData( string key, string value ) { - return; // Override! - } - - - // n:type:SFN_Multiply,id:8,x:33794,y:32535|1-9-0,2-7-0; - // Deserialize is in SF_Parser - public string Serialize(bool skipExternalLinks = false, bool useSuffixPrefix = false) { - - string s = ""; - if(useSuffixPrefix) - s = "n:"; - - - s += "type:" + this.GetType().ToString() + ","; - s += "id:" + this.id + ","; - s += "x:" + (int)rect.x + ","; - s += "y:" + (int)rect.y; - if(IsProperty()){ - s += ",ptovrint:" + property.overrideInternalName; - s += ",ptlb:" + property.nameDisplay; - s += ",ptin:" + property.nameInternal; - } - if(HasComment()) - s += ",cmnt:" + comment; - if(!string.IsNullOrEmpty(variableName) && !lockedVariableName){ - s += ",varname:" + variableName; - } - if(isFloatPrecisionBasedVariable) - s += ",prsc:" + (int)precision; - - - // - string specialData = SerializeSpecialData(); // <-- This is the unique data for each node - if( !string.IsNullOrEmpty( specialData ) ) { - s += "," + specialData; - } - // - - if( HasAnyInputConnected(skipExternalLinks) ) { - s += "|"; - int linkCount = 0; - int i = 0; - foreach( SF_NodeConnector con in connectors ) { // List connections, connected inputs only - if( con.conType == ConType.cOutput ) { i++; continue; } - if( !con.IsConnected() ) { i++; continue; } - - if(skipExternalLinks) - if(!con.inputCon.node.selected){ i++; continue; } - - - string link = con.GetIndex() + "-" + connectors[i].inputCon.node.id + "-" + connectors[i].inputCon.GetIndex(); - - if( linkCount > 0 ) - s += ","; - s += link; - - linkCount++; - i++; - } - } - - if(useSuffixPrefix) - s += ";"; - - return s; - } - - // This is the data per-node - // n:type:SFN_Final,id:6,x:33383,y:32591|0-8-0; - public static SF_Node Deserialize( string row, ref List linkList) { - - - bool isLinked = row.Contains( "|" ); - - string linkData = ""; - - // Grab connections, if any, and remove them from the main row - if( isLinked ) { - string[] split = row.Split( '|' ); - row = split[0]; - linkData = split[1]; - } - - - string[] nData = row.Split( ',' ); // Split the node data - SF_Node node = null; - - // This is the data in a single node, without link information - // type:SFN_Final,id:6,x:33383,y:32591 - foreach( string s in nData ) { - if(SF_Debug.deserialization) - Debug.Log("Deserializing node: " + s); - string[] split = s.Split( ':' ); - string dKey = split[0]; - string dValue = split[1]; - - switch( dKey ) { - case "type": - //Debug.Log( "Deserializing " + dValue ); - node = TryCreateNodeOfType( dValue ); - if( node == null ) { - if(SF_Debug.dynamicNodeLoad) - Debug.LogError( "Node not found, returning..." ); - return null; - } - break; - case "id": - node.id = int.Parse( dValue ); - break; - case "x": - node.rect.x = int.Parse( dValue ); - break; - case "y": - node.rect.y = int.Parse( dValue ); - break; - case "ptovrint": - node.property.overrideInternalName = bool.Parse(dValue); - break; - case "ptlb": - node.property.SetName( dValue ); - break; - case "ptin": - node.property.nameInternal = dValue; - break; - case "cmnt": - node.comment = dValue; - break; - case "varname": - node.variableName = dValue; - break; - case "prsc": - node.precision = (FloatPrecision)int.Parse(dValue); - break; - default: - //Debug.Log("Deserializing KeyValue: " +dKey + " v: " + dValue); - node.DeserializeSpecialData( dKey, dValue ); - break; - } - } - - // Add links to link data, if it's connected - if( isLinked ) { - string[] parsedLinks = linkData.Split( ',' ); - foreach( string s in parsedLinks ) - linkList.Add( new SF_Link( node.id, s ) ); - } - - // Update image if needed - node.GenerateBaseData(); - - - return node; - - } - - - private static SF_Node TryCreateNodeOfType( string nodeType ) { - SF_Node node = null; - - // Renamed nodes - if(nodeType == "ShaderForge.SFN_Binormal") - nodeType = "ShaderForge.SFN_Bitangent"; - - - if( nodeType == "ShaderForge.SFN_Final" ) { - node = SF_Editor.instance.CreateOutputNode(); - } else { - foreach( SF_EditorNodeData tmp in SF_Editor.instance.nodeTemplates ) { - if( tmp.type == nodeType ) { // 1 is the type - node = SF_Editor.instance.AddNode( tmp ); // Create the node - break; - } - } - } - if( node == null && SF_Debug.dynamicNodeLoad ) { - Debug.LogError( "Type [" + nodeType + "] not found!" ); - } - return node; - } - - - public void TrySerialize( XmlWriter xml, string key, object val ) { - if( val == null ) - return; - string str = val.ToString(); - if( string.IsNullOrEmpty( str ) ) - return; - xml.WriteElementString( key, str ); - } - - /* - public virtual string SerializeCustomData() { - return ""; // Override - }*/ - - public void DrawConnectors() { - - - - int yOut = 0; - int yIn = 0; - - int spacing = 20; - - if( connectors != null ) { - for( int i = 0; i < connectors.Length; i++ ) { - Vector2 pos = new Vector2( rect.width + rect.x, 16 + rect.y ); - - - if( connectors[i].conType == ConType.cInput ) { - pos.y += yIn * spacing; - yIn++; - } else { - pos.y += yOut * spacing; - yOut++; - } - - connectors[i].Draw( pos ); - - - } - } - - - - /*if( DEBUG ) { - Rect tmp = new Rect( rect ); - tmp.height = 20; - tmp.width = 250; - tmp.y -= tmp.height; - GUI.Box( tmp, depth.ToString(), EditorStyles.largeLabel ); - tmp.y -= tmp.height; - GUI.Box( tmp, "cCons: " + CalcConnectionCount().ToString(), EditorStyles.largeLabel ); - tmp.y -= tmp.height; - GUI.Box( tmp, "Conctrs: " + connectors.Length, EditorStyles.largeLabel ); - tmp.y -= tmp.height; - GUI.Box( tmp, "Editor: " + ( editor != null ), EditorStyles.largeLabel ); - tmp.y -= tmp.height; - GUI.Box( tmp, "Property: " + IsProperty(), EditorStyles.miniLabel ); - tmp.y -= tmp.height; - if( conGroup != null ) { - GUI.Box( tmp, "C Group out: " + conGroup.output, EditorStyles.miniLabel ); - tmp.y -= tmp.height; - GUI.Box( tmp, "C Group ins: " + conGroup.inputs.Length, EditorStyles.miniLabel ); - tmp.y -= tmp.height; - GUI.Box( tmp, "C Group hash: " + conGroup.GetHashCode(), EditorStyles.miniLabel ); - tmp.y -= tmp.height; - } else { - GUI.Box( tmp, "C Group is NULL", EditorStyles.miniLabel ); - tmp.y -= tmp.height; - } - GUI.Box( tmp, "Type: " + GetType().ToString(), EditorStyles.miniLabel ); - tmp.y -= tmp.height; - GUI.Box( tmp, "Hash: " + GetHashCode(), EditorStyles.miniLabel ); - tmp.y -= tmp.height; - if(texture != null) - GUI.Box( tmp, "Unif: " + texture.uniform ); - tmp.y -= tmp.height; - }*/ - - } - - public SF_NodeConnector GetConnectorByID(string s) { - int number; - if( int.TryParse( s, out number ) ) { - return connectors[number]; - } else { - return GetConnectorByStringID(s); - } - } - - public SF_NodeConnector GetConnectorByStringID(string s) { - foreach( SF_NodeConnector con in connectors ) { - if( !con.HasID() ) - continue; - if( s == con.strID ) - return con; - } - - Debug.LogError("Unsuccessfully tried to find connector by string ID [" + s + "] in node " + nodeName); - return null; - } - - public bool HasAnyInputConnected(bool skipExternalLinks = false) { - foreach( SF_NodeConnector con in connectors ) - if( con.IsConnected() && con.conType == ConType.cInput ){ - if(skipExternalLinks){ - if(con.inputCon.node.selected) - return true; - } else { - return true; - } - } - - return false; - } - - public int CalcConnectionCount() { - int i = 0; - foreach( SF_NodeConnector con in connectors ) { - if( con.IsConnected() ) - i++; - } - return i; - } - } - -} \ No newline at end of file diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SF_Node.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SF_Node.cs.meta deleted file mode 100755 index 4948a6c3..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SF_Node.cs.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: 5aedfe1c90dc2284b8220346c3a38f39 -MonoImporter: - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SF_Node_Arithmetic.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SF_Node_Arithmetic.cs deleted file mode 100755 index 48e6faf1..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SF_Node_Arithmetic.cs +++ /dev/null @@ -1,60 +0,0 @@ -using UnityEngine; -using UnityEditor; -using System.Collections; -using System; - -namespace ShaderForge { - [System.Serializable] - public class SF_Node_Arithmetic : SF_Node { - - public void PrepareArithmetic(int inputCount = 2, ValueType inputType = ValueType.VTvPending, ValueType outputType = ValueType.VTvPending) { - base.showColor = true; - UseLowerReadonlyValues( true ); - - - if( inputCount == 2 ) { - connectors = new SF_NodeConnector[]{ - SF_NodeConnector.Create( this, "OUT", "", ConType.cOutput, outputType, false ), - SF_NodeConnector.Create( this, "A", "A", ConType.cInput, inputType, false ).SetRequired( true ), - SF_NodeConnector.Create( this, "B", "B", ConType.cInput, inputType, false ).SetRequired( true )}; - base.conGroup = ScriptableObject.CreateInstance().Initialize( connectors[0], connectors[1], connectors[2] ); - } else if( inputCount == 1 ){ - connectors = new SF_NodeConnector[]{ - SF_NodeConnector.Create( this, "OUT", "", ConType.cOutput, outputType, false ), - SF_NodeConnector.Create( this, "IN", "", ConType.cInput, inputType, false ).SetRequired( true )}; - base.conGroup = ScriptableObject.CreateInstance().Initialize( connectors[0], connectors[1]); - } - - } - - public override int GetEvaluatedComponentCount() { - int max = 0; - foreach(SF_NodeConnector con in connectors){ - if( con.conType == ConType.cOutput || !con.IsConnected()) // Only connected ones, for now - continue; - //Debug.Log("GetEvaluatedComponentCount from node " + nodeName + " [" + con.label + "] cc = " + con.GetCompCount()); - max = Mathf.Max( max, con.GetCompCount() ); - } - return max; - } - - public override bool IsUniformOutput() { - - if(InputsConnected()){ - if( connectors.Length > 2) - return ( GetInputData( "A" ).uniform && GetInputData( "B" ).uniform ); - return ( GetInputData( "IN" ).uniform ); - } - return true; - } - - // New system - public override void RefreshValue() { - if( connectors.Length == 3 ) - RefreshValue( 1, 2 ); - else - RefreshValue( 1, 1 ); - } - - } -} \ No newline at end of file diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SF_Node_Arithmetic.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SF_Node_Arithmetic.cs.meta deleted file mode 100755 index 032d8046..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SF_Node_Arithmetic.cs.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: 7ff67b8320fb71341a7e68fac5f5560c -MonoImporter: - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SF_Node_Resizeable.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SF_Node_Resizeable.cs deleted file mode 100755 index 9f977907..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SF_Node_Resizeable.cs +++ /dev/null @@ -1,263 +0,0 @@ -using UnityEngine; -using UnityEditor; -using System.Collections; -using System.Collections.Generic; -using System.Xml; - - -namespace ShaderForge { - - [System.Serializable] - public class SF_Node_Resizeable : SF_Node { - - - public int minWidth = NODE_WIDTH; - public int minHeight = NODE_HEIGHT; - - /* - public void Deselect() { - editor.nodeView.selection.Remove( this ); - selected = false; - } - - public void DrawHighlight() { - - //if( Event.current.type == EventType.repaint ) - if( selected ) { - - Rect r = new Rect( rect ); - r.xMax -= 1; - if( IsProperty() ) - r.yMin -= 20; - GUILines.Highlight( r, offset: 1, strength: 2 ); - } - }*/ - - - - public override bool Draw() { - - - ProcessInput(); - - - DrawHighlight(); - - - - - PrepareWindowColor(); - - if( showLowerPropertyBox ) - if( showLowerPropertyBoxAlways || ( showLowerPropertyBox && CanEvaluate() && IsUniformOutput() ) ) { - rect.height = ( node_height + 20 ); - } else { - rect.height = node_height; - } - - - DrawWindow(); - - ResetWindowColor(); - - return true; - } - - - bool resizing = false; - int xDrag = 0; - int yDrag = 0; - - public override void NeatWindow( ) { - GUI.BeginGroup( rect ); - GUI.color = Color.white; - GUI.skin.box.clipping = TextClipping.Overflow; - - - - - - // Resize handle - int size = 10; - - - - - Rect topLeft = LocalRect().GetBorder(RectBorder.TopLeft,size); - //Rect lowerRight = LocalRect().GetBorder(RectBorder.BottomRight,size); - Rect topRight = LocalRect().GetBorder(RectBorder.TopRight,size); - - Rect left = LocalRect().GetBorder(RectBorder.Left,size); - //Rect lowerRight = LocalRect().GetBorder(RectBorder.Center,size); - Rect right = LocalRect().GetBorder(RectBorder.Right,size); - - - Rect lowerLeft = LocalRect().GetBorder(RectBorder.BottomLeft,size); //new Rect(rect.width - size, rect.height-size,size,size); - Rect lower = LocalRect().GetBorder(RectBorder.Bottom,size); - Rect lowerRight = LocalRect().GetBorder(RectBorder.BottomRight,size); - - - /* - if(!resizing) - SF_GUI.AssignCursor(lowerRight,MouseCursor.ResizeUpLeft); - else - SF_GUI.AssignCursor(new Rect(0,0,Screen.width,Screen.height),MouseCursor.ResizeUpLeft);*/ - - - - SF_GUI.DrawTextureTiled(LocalRect().GetBorder(RectBorder.TopLeft ,size, showResizeCursor:true), SF_GUI.Handle_drag, local:true ); - //SF_GUI.DrawTextureTiled(LocalRect().GetBorder(RectBorder.Top ,size, showResizeCursor:true), SF_GUI.Handle_drag, local:true ); - SF_GUI.DrawTextureTiled(LocalRect().GetBorder(RectBorder.TopRight ,size, showResizeCursor:true), SF_GUI.Handle_drag, local:true ); - SF_GUI.DrawTextureTiled(LocalRect().GetBorder(RectBorder.Left ,size, showResizeCursor:true), SF_GUI.Handle_drag, local:true ); - SF_GUI.DrawTextureTiled(LocalRect().GetBorder(RectBorder.Right ,size, showResizeCursor:true), SF_GUI.Handle_drag, local:true ); - SF_GUI.DrawTextureTiled(LocalRect().GetBorder(RectBorder.BottomLeft ,size, showResizeCursor:true), SF_GUI.Handle_drag, local:true ); - SF_GUI.DrawTextureTiled(LocalRect().GetBorder(RectBorder.Bottom ,size, showResizeCursor:true), SF_GUI.Handle_drag, local:true ); - SF_GUI.DrawTextureTiled(LocalRect().GetBorder(RectBorder.BottomRight ,size, showResizeCursor:true), SF_GUI.Handle_drag, local:true ); - - - // -1 = left / top - // 0 = static - // 1 = right / bottom - - - - bool clicked = Event.current.type == EventType.mouseDown && Event.current.button == 0; - - - - - if(clicked){ - - xDrag = 0; - yDrag = 0; - Vector3 mPos = Event.current.mousePosition; - /* - bool[,] dragGrid = new bool[3,3]{ - {topLeft.Contains(mPos), false, topRight.Contains(mPos)}, - {left.Contains(mPos), false, right.Contains(mPos)}, - {lowerLeft.Contains(mPos), lower.Contains(mPos), lowerRight.Contains(mPos)} - };*/ - - bool[,] dragGrid = new bool[3,3]{ - {topLeft.Contains(mPos),left.Contains(mPos),lowerLeft.Contains(mPos)}, - {false,false,lower.Contains(mPos)}, - {topRight.Contains(mPos),right.Contains(mPos),lowerRight.Contains(mPos)} - }; - - - - bool leftSide = dragGrid[0,0] || dragGrid[0,1] || dragGrid[0,2]; - bool rightSide = dragGrid[2,0] || dragGrid[2,1] || dragGrid[2,2]; - bool topSide = dragGrid[0,0] || dragGrid[1,0] || dragGrid[2,0]; - bool bottomSide = dragGrid[0,2] || dragGrid[1,2] || dragGrid[2,2]; - - - if(leftSide) - xDrag = -1; - else if(rightSide) - xDrag = 1; - - if(topSide) - yDrag = -1; - else if(bottomSide) - yDrag = 1; - - - bool contained = xDrag != 0 || yDrag != 0; - - - if( contained ){ - resizing = true; - Event.current.Use(); - } - - } - - - - - if(resizing && Event.current.type == EventType.mouseDrag){ - - if(Event.current.delta.sqrMagnitude > 0){ - UndoRecord("resize node"); - } - - if(xDrag == 1) - rect.width += Event.current.delta.x; - else if(xDrag == -1) - rect.xMin += Event.current.delta.x; - - if(yDrag == 1) - rect.height += Event.current.delta.y; - if(yDrag == -1) - rect.yMin += Event.current.delta.y; - - //Debug.Log("RESIZING X " + xDrag + " Y " + yDrag); - - ClampSize(); - - Event.current.Use(); - } - - if(resizing && SF_GUI.ReleasedRawLMB()){ - resizing = false; - xDrag = 0; - yDrag = 0; - if(base.isDragging) - base.OnRelease(); - Event.current.Use(); - } - - Rect insideHandleRect = LocalRect().PadLeft(size).PadRight(size).PadBottom(size).PadTop(Mathf.Max(15,size)); - DrawInner(insideHandleRect); - - /* - if( showColor ) { - - texture.Draw( rectInner ); - - if( SF_Debug.nodes ) { - Rect r = new Rect( 0, 16, 96, 20 ); - GUI.color = Color.white; - GUI.skin.box.normal.textColor = Color.white; - GUI.Box( r, "ID: " + id ); - r.y += r.height; - //GUI.Box( r, "Cmps: " + texture.CompCount ); - //r.y += r.height; - //GUI.Box( r, "Unif: " + texture.dataUniform ); - - } - - - }*/ - - if( showLowerPropertyBox ) { - GUI.color = Color.white; - DrawLowerPropertyBox(); - } - - //GUI.DragWindow(); - - - GUI.EndGroup( ); - - - //if(rect.center.x) - } - - - public void ClampSize(){ - rect = rect.ClampMinSize(minWidth, minHeight); - } - - - public virtual void DrawInner(Rect r){ - // Override - } - - - - - } - -} \ No newline at end of file diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SF_Node_Resizeable.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SF_Node_Resizeable.cs.meta deleted file mode 100644 index 7b800443..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SF_Node_Resizeable.cs.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: 9a79950ae6ecc41439f30ac282389f9f -MonoImporter: - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_ShaderProperties.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/_ShaderProperties.meta deleted file mode 100755 index 27b2f3f8..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/_ShaderProperties.meta +++ /dev/null @@ -1,5 +0,0 @@ -fileFormatVersion: 2 -guid: a539d47bbd8db459ca996ac18a58303b -folderAsset: yes -DefaultImporter: - userData: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_ShaderProperties/SFP_Branch.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/_ShaderProperties/SFP_Branch.cs deleted file mode 100755 index 94ff502d..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/_ShaderProperties/SFP_Branch.cs +++ /dev/null @@ -1,39 +0,0 @@ -using UnityEngine; -using System.Collections; -using System.Text.RegularExpressions; - - -namespace ShaderForge { - - [System.Serializable] - public class SFP_Branch : SF_ShaderProperty { - - public new SFP_Branch Initialize( SF_Node node ) { - base.nameType = "Static Branch"; - base.Initialize( node ); - return this; - } - - public override void UpdateInternalName() { - - string s = nameDisplay; - - s = s.Replace(" ","_"); - - Regex rgx = new Regex( "[^a-zA-Z0-9_]" ); - s = rgx.Replace( s, "" ); - - s = s.ToUpper(); - - - // TODO: Make sure it's valid and unique - - nameInternal = s; - } - - public override string GetMulticompilePragma (){ - return "#pragma multi_compile " + nameInternal; - } - - } -} \ No newline at end of file diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_ShaderProperties/SFP_Branch.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/_ShaderProperties/SFP_Branch.cs.meta deleted file mode 100644 index f0b8b8fd..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/_ShaderProperties/SFP_Branch.cs.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: caf1e1fe0d9a241339086202fccb2133 -MonoImporter: - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_ShaderProperties/SFP_Color.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/_ShaderProperties/SFP_Color.cs deleted file mode 100755 index 23a76e5c..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/_ShaderProperties/SFP_Color.cs +++ /dev/null @@ -1,37 +0,0 @@ -using UnityEngine; -using System.Collections; - -namespace ShaderForge { - - [System.Serializable] - public class SFP_Color : SF_ShaderProperty { - - - public bool isBumpmap = false; - - public new SFP_Color Initialize( SF_Node node ) { - base.nameType = "Color"; - base.Initialize( node ); - return this; - } - - public override string GetInitializationLine() { - return GetTagString() + GetVariable() + " (\"" + nameDisplay + "\", Color) = (" + GetValue().r + "," + GetValue().g + "," + GetValue().b + "," + GetValue().a + ")"; - } - - Color GetValue() { - return ( node as SFN_Color ).texture.dataUniform; - } - - public override string GetVariableLine() { - return "uniform " + node.precision.ToCode() + "4 " + GetVariable() + ";"; - } - - // TODO: Unity UV offsets - public override string GetFragmentPrepare() { - return node.precision.ToCode() + "4 " + GetVariable() + " = " + node.Evaluate() + ";"; - } - - - } -} \ No newline at end of file diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_ShaderProperties/SFP_Color.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/_ShaderProperties/SFP_Color.cs.meta deleted file mode 100755 index 4e551377..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/_ShaderProperties/SFP_Color.cs.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: 7e0f81cb63fbd57449cda3f78bbf4407 -MonoImporter: - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_ShaderProperties/SFP_Cubemap.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/_ShaderProperties/SFP_Cubemap.cs deleted file mode 100755 index b107197b..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/_ShaderProperties/SFP_Cubemap.cs +++ /dev/null @@ -1,32 +0,0 @@ -using UnityEngine; -using System.Collections; - -namespace ShaderForge { - - [System.Serializable] - public class SFP_Cubemap : SF_ShaderProperty { - - - public new SFP_Cubemap Initialize( SF_Node node ) { - base.nameType = "Cubemap"; - base.Initialize( node ); - return this; - } - - public override string GetInitializationLine() { - string defaultValue = "\"_Skybox\""; - return GetTagString() + GetVariable() + " (\"" + nameDisplay + "\", Cube) = " + defaultValue + " {}"; - } - - public override string GetVariableLine() { - return "uniform samplerCUBE " + GetVariable() + ";"; - } - - // TODO: UVs - public override string GetFragmentPrepare() { - return "fixed4 " + GetVariable() + " = " + node.Evaluate() + ";"; - } - - - } -} \ No newline at end of file diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_ShaderProperties/SFP_Cubemap.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/_ShaderProperties/SFP_Cubemap.cs.meta deleted file mode 100755 index a6cbd8e5..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/_ShaderProperties/SFP_Cubemap.cs.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: 89bae648dacc8ce46bd4441582e727a3 -MonoImporter: - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_ShaderProperties/SFP_Matrix4x4Property.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/_ShaderProperties/SFP_Matrix4x4Property.cs deleted file mode 100644 index 01a9df50..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/_ShaderProperties/SFP_Matrix4x4Property.cs +++ /dev/null @@ -1,35 +0,0 @@ -using UnityEngine; -using System.Collections; - -namespace ShaderForge { - - [System.Serializable] - public class SFP_Matrix4x4Property : SF_ShaderProperty { - - public new SFP_Matrix4x4Property Initialize( SF_Node node ) { - base.nameType = "Matrix 4x4"; - base.Initialize( node ); - global = true; - return this; - } - - public override string GetInitializationLine() { - return "";// GetTagString() + GetVariable() + " (\"" + nameDisplay + "\", Vector) = (" + GetValue().r + "," + GetValue().g + "," + GetValue().b + "," + GetValue().a + ")"; - } - - Color GetValue() { - return Color.black; - } - - public override string GetVariableLine() { - return "uniform " + node.precision.ToCode() + "4x4 " + GetVariable() + ";"; - } - - // TODO: Unity UV offsets - public override string GetFragmentPrepare() { - return node.precision.ToCode() + "4x4 " + GetVariable() + " = " + node.Evaluate() + ";"; - } - - - } -} \ No newline at end of file diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_ShaderProperties/SFP_Matrix4x4Property.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/_ShaderProperties/SFP_Matrix4x4Property.cs.meta deleted file mode 100644 index 5139912f..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/_ShaderProperties/SFP_Matrix4x4Property.cs.meta +++ /dev/null @@ -1,12 +0,0 @@ -fileFormatVersion: 2 -guid: 053697bbbcf06d047bee1332920a9ab4 -timeCreated: 1436193035 -licenseType: Pro -MonoImporter: - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_ShaderProperties/SFP_Slider.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/_ShaderProperties/SFP_Slider.cs deleted file mode 100755 index 63a6bf54..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/_ShaderProperties/SFP_Slider.cs +++ /dev/null @@ -1,49 +0,0 @@ -using UnityEngine; -using System.Collections; - -namespace ShaderForge { - - [System.Serializable] - public class SFP_Slider : SF_ShaderProperty { - - - public bool isBumpmap = false; - - public new SFP_Slider Initialize( SF_Node node ) { - base.nameType = "Slider"; - base.Initialize( node ); - return this; - } - - - - public override string GetInitializationLine() { - string defaultValue = GetCurrent().ToString(); - // name ("display name", Range (min, max)) = number - return GetTagString() + GetVariable() + " (\"" + nameDisplay + "\", Range(" + GetMin() + ", " + GetMax() + ")) = " + defaultValue; - } - - float GetMin() { - return ( node as SFN_Slider ).min; - } - - float GetMax() { - return ( node as SFN_Slider ).max; - } - - float GetCurrent() { - return ( node as SFN_Slider ).current; - } - - public override string GetVariableLine() { - return "uniform " + node.precision.ToCode() + " " + GetVariable() + ";"; - } - - // TODO: Unity UV offsets - public override string GetFragmentPrepare() { - return node.precision.ToCode()+" " + GetVariable() + " = " + node.Evaluate() + ";"; - } - - - } -} \ No newline at end of file diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_ShaderProperties/SFP_Slider.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/_ShaderProperties/SFP_Slider.cs.meta deleted file mode 100755 index 850fd5dc..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/_ShaderProperties/SFP_Slider.cs.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: d8fff7db79c3ac549a795dc95865193a -MonoImporter: - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_ShaderProperties/SFP_SwitchProperty.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/_ShaderProperties/SFP_SwitchProperty.cs deleted file mode 100755 index 1f6c5d58..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/_ShaderProperties/SFP_SwitchProperty.cs +++ /dev/null @@ -1,31 +0,0 @@ -using UnityEngine; -using System.Collections; - -namespace ShaderForge { - - [System.Serializable] - public class SFP_SwitchProperty : SF_ShaderProperty { - - public new SFP_SwitchProperty Initialize( SF_Node node ) { - base.nameType = "Toggle"; - base.Initialize( node ); - return this; - } - - public override string GetInitializationLine() { - string defaultValue = base.node.texture.dataUniform.x.ToString(); - return GetTagString() + "[MaterialToggle] " + GetVariable() + " (\"" + nameDisplay + "\", Float ) = " + defaultValue; - } - - public override string GetVariableLine() { - return "uniform fixed " + GetVariable() + ";"; - } - - // TODO: Unity UV offsets - //public override string GetFragmentPrepare() { - // return "fixed4 " + GetVariable() + " = " + node.Evaluate() + ";"; - //} - - - } -} \ No newline at end of file diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_ShaderProperties/SFP_SwitchProperty.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/_ShaderProperties/SFP_SwitchProperty.cs.meta deleted file mode 100644 index 7569fc45..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/_ShaderProperties/SFP_SwitchProperty.cs.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: 310feff246d89480987042663b16e1e1 -MonoImporter: - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_ShaderProperties/SFP_Tex2d.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/_ShaderProperties/SFP_Tex2d.cs deleted file mode 100755 index 0d1e5bd7..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/_ShaderProperties/SFP_Tex2d.cs +++ /dev/null @@ -1,50 +0,0 @@ -using UnityEngine; -using System.Collections; - -namespace ShaderForge { - - [System.Serializable] - public class SFP_Tex2d : SF_ShaderProperty { - - - //public bool isBumpmap = false; // TODO: Is this even used? - - public new SFP_Tex2d Initialize( SF_Node node ) { - base.nameType = "Texture (2D)"; - base.Initialize( node ); - return this; - } - - - public override string GetInitializationLine() { - //string defaultValue = isBumpmap ? "\"bump\"" : "\"white\""; - - NoTexValue noTexValue = NoTexValue.Black; - - if(base.node is SFN_Tex2d) - noTexValue = (base.node as SFN_Tex2d).noTexValue; - else if(base.node is SFN_Tex2dAsset) - noTexValue = (base.node as SFN_Tex2dAsset).noTexValue; - - return GetTagString() + GetVariable() + " (\"" + nameDisplay + "\", 2D) = \"" + noTexValue.ToString().ToLower() + "\" {}"; - } - - public override string GetVariableLine() { - string varName = GetVariable(); - - string s = "uniform sampler2D " + varName + ";"; - if( !tagNoScaleOffset ) { - s += " uniform float4 " + varName + "_ST;"; - } - - return s; - } - - - public override string GetFragmentPrepare() { - return "fixed4 " + GetVariable() + " = " + node.Evaluate() + ";"; - } - - - } -} \ No newline at end of file diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_ShaderProperties/SFP_Tex2d.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/_ShaderProperties/SFP_Tex2d.cs.meta deleted file mode 100755 index 174c1a30..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/_ShaderProperties/SFP_Tex2d.cs.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: 30072d9ca7304e4419000143e2124c81 -MonoImporter: - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_ShaderProperties/SFP_ToggleProperty.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/_ShaderProperties/SFP_ToggleProperty.cs deleted file mode 100755 index f56da373..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/_ShaderProperties/SFP_ToggleProperty.cs +++ /dev/null @@ -1,31 +0,0 @@ -using UnityEngine; -using System.Collections; - -namespace ShaderForge { - - [System.Serializable] - public class SFP_ToggleProperty : SF_ShaderProperty { - - public new SFP_ToggleProperty Initialize( SF_Node node ) { - base.nameType = "Toggle"; - base.Initialize( node ); - return this; - } - - public override string GetInitializationLine() { - string defaultValue = base.node.texture.dataUniform.x.ToString(); - return GetTagString() + "[MaterialToggle] " + GetVariable() + " (\"" + nameDisplay + "\", Float ) = " + defaultValue; - } - - public override string GetVariableLine() { - return "uniform fixed " + GetVariable() + ";"; - } - - // TODO: Unity UV offsets - //public override string GetFragmentPrepare() { - // return "fixed4 " + GetVariable() + " = " + node.Evaluate() + ";"; - //} - - - } -} \ No newline at end of file diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_ShaderProperties/SFP_ToggleProperty.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/_ShaderProperties/SFP_ToggleProperty.cs.meta deleted file mode 100644 index b92f23a4..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/_ShaderProperties/SFP_ToggleProperty.cs.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: 576fd6450a0cb4342ac9df49954d9802 -MonoImporter: - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_ShaderProperties/SFP_ValueProperty.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/_ShaderProperties/SFP_ValueProperty.cs deleted file mode 100755 index 3078b183..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/_ShaderProperties/SFP_ValueProperty.cs +++ /dev/null @@ -1,31 +0,0 @@ -using UnityEngine; -using System.Collections; - -namespace ShaderForge { - - [System.Serializable] - public class SFP_ValueProperty : SF_ShaderProperty { - - public new SFP_ValueProperty Initialize( SF_Node node ) { - base.nameType = "Value"; - base.Initialize( node ); - return this; - } - - public override string GetInitializationLine() { - string defaultValue = base.node.texture.dataUniform.x.ToString(); - return GetTagString() + GetVariable() + " (\"" + nameDisplay + "\", Float ) = " + defaultValue; - } - - public override string GetVariableLine() { - return "uniform "+node.precision.ToCode()+" " + GetVariable() + ";"; - } - - // TODO: Unity UV offsets - public override string GetFragmentPrepare() { - return node.precision.ToCode() + "4 " + GetVariable() + " = " + node.Evaluate() + ";"; - } - - - } -} \ No newline at end of file diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_ShaderProperties/SFP_ValueProperty.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/_ShaderProperties/SFP_ValueProperty.cs.meta deleted file mode 100755 index 989d5319..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/_ShaderProperties/SFP_ValueProperty.cs.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: 43479457355519949a7175ee9526d96e -MonoImporter: - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_ShaderProperties/SFP_Vector4Property.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/_ShaderProperties/SFP_Vector4Property.cs deleted file mode 100755 index daf2475f..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/_ShaderProperties/SFP_Vector4Property.cs +++ /dev/null @@ -1,38 +0,0 @@ -using UnityEngine; -using System.Collections; - -namespace ShaderForge { - - [System.Serializable] - public class SFP_Vector4Property : SF_ShaderProperty { - - - public bool isBumpmap = false; - - public new SFP_Vector4Property Initialize( SF_Node node ) { - base.nameType = "Vector 4"; - base.Initialize( node ); - return this; - } - - - public override string GetInitializationLine() { - return GetTagString() + GetVariable() + " (\"" + nameDisplay + "\", Vector) = (" + GetValue().r + "," + GetValue().g + "," + GetValue().b + "," + GetValue().a + ")"; - } - - Color GetValue() { - return ( node as SFN_Vector4Property ).texture.dataUniform; - } - - public override string GetVariableLine() { - return "uniform " + node.precision.ToCode() + "4 " + GetVariable() + ";"; - } - - // TODO: Unity UV offsets - public override string GetFragmentPrepare() { - return node.precision.ToCode() + "4 " + GetVariable() + " = " + node.Evaluate() + ";"; - } - - - } -} \ No newline at end of file diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_ShaderProperties/SFP_Vector4Property.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/_ShaderProperties/SFP_Vector4Property.cs.meta deleted file mode 100755 index 273d75f2..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/_ShaderProperties/SFP_Vector4Property.cs.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: 8d2eadd39bae92549a09c1cb3349c112 -MonoImporter: - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_ShaderProperties/SF_ShaderProperty.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/_ShaderProperties/SF_ShaderProperty.cs deleted file mode 100755 index 35df622e..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/_ShaderProperties/SF_ShaderProperty.cs +++ /dev/null @@ -1,297 +0,0 @@ -using UnityEngine; -using UnityEditor; -using System.Collections; -using System.Collections.Generic; -using System.Text.RegularExpressions; - - -namespace ShaderForge { - [System.Serializable] - public class SF_ShaderProperty : ScriptableObject { - - public bool tagHideInInspector = false; - public bool tagHDR = false; - public bool tagPerRendererData = false; - public bool tagNoScaleOffset = false; - public bool tagNormal = false; - - public string nameDisplay = ""; // The displayed name in the material inspector - public string nameType; // Used for labeling in the editor - public string nameInternal = "_"; // The internal shader code name - public SF_Node node; - - public bool global = false; - public bool overrideInternalName = false; - - public void OnEnable() { - base.hideFlags = HideFlags.HideAndDontSave; - } - - public string GetTagString() { - string s = ""; - if( tagHideInInspector ) - s += "[HideInInspector]"; - if( tagNoScaleOffset ) - s += "[NoScaleOffset]"; - if( tagNormal ) - s += "[Normal]"; - if( tagHDR ) - s += "[HDR]"; - if( tagPerRendererData ) - s += "[PerRendererData]"; - return s; - } - - public void Initialize(SF_Node node){ - this.node = node; - SetName( node.GetVariableName() ); - } - - public static string FormatInternalName(string s){ - Regex rgx = new Regex( "[^a-zA-Z0-9_]" ); - s = rgx.Replace( s, "" ); - return s; - } - - public virtual void UpdateInternalName() { - - if(overrideInternalName){ - nameInternal = node.variableName; - return; - } - - string s = nameDisplay; - - - s = FormatInternalName(s); - - s = "_" + s; - - - // TODO: Make sure it's valid and unique - - nameInternal = s; - } - - public void SetName( string s) { - nameDisplay = s; - if( !overrideInternalName ) - UpdateInternalName(); - } - - public void SetBothNameAndInternal(string s){ - s = FormatInternalName(s); - nameDisplay = s; - nameInternal = s; - } - - public void ToggleGlobal(){ - - - - string undoMsg = global ? "make " + nameDisplay + " local" : "make " + nameDisplay + " global"; - Undo.RecordObject(this,undoMsg); - Undo.RecordObject(node.editor.nodeView.treeStatus,undoMsg); - - List propList = node.editor.nodeView.treeStatus.propertyList; - - global = !global; - - - if(global){ - - if(propList.Contains(node)){ - propList.Remove(node); - } - - } else { - - if(!propList.Contains(node)){ - propList.Add(node); - } - - } - } - - - - - string[] replacements = new string[]{ - "_r","_g", - "_R","_G", - "_g","_b", - "_G","_B", - "_b","_a", - "_B","_A", - "_x","_y", - "_X","_Y", - "_y","_z", - "_Y","_Z", - "_z","_w", - "_Z","_W", - "(R)","(G)", - "(G)","(B)", - "(B)","(A)", - "(r)","(g)", - "(g)","(b)", - "(b)","(a)", - "(X)","(Y)", - "(Y)","(Z)", - "(Z)","(W)", - "(x)","(y)", - "(y)","(z)", - "(z)","(w)" - - }; - - public string GetClonedName(){ - - string oldName = nameDisplay; - string newName = nameDisplay; - bool done = false; - - for(int i=0;i< replacements.Length;i+=2){ - if(oldName.EndsWith(replacements[i])){ - newName = oldName.Substring(0,oldName.Length - replacements[i].Length) + replacements[i+1]; - done = true; - } - } - - // Numerical increments - if(!nameDisplay.StartsWith("node_")) - if(!done){ - if( TryGetNextNumericalName(ref newName) ){ - done = true; - } - } - - // Fallback - if(!done){ - newName = oldName + "_copy"; - done = true; - } - - - return newName; - - } - - public bool TryGetNextNumericalName(ref string sOut){ - - int digits = 0; - for(int i = nameDisplay.Length-1; i>=0; i-- ){ - if(char.IsNumber(nameDisplay[i])) - digits++; - else - break; - } - - if(digits == 0) - return false; - - - string strWoNum = nameDisplay.Substring(0,nameDisplay.Length-digits); - string strNum = nameDisplay.Substring(nameDisplay.Length-digits); - - int number = int.Parse(strNum); - - number++; - - sOut = strWoNum + number.ToString("D"+digits); // Makes sure it's 01 02 etc - return true; - } - - - public bool CanToggleGlobal(){ - if(this is SFP_ValueProperty) - return true; - if(this is SFP_Color) - return true; - if(this is SFP_Tex2d && node is SFN_Tex2dAsset) - return true; - if(this is SFP_Vector4Property) - return true; - //if( this is SFP_Matrix4x4Property ) - // return true; - return false; - } - - - public SF_ShaderProperty() { - // Empty - } - - - public virtual string GetVariable() { - return nameInternal; - //return "_" + node.GetVariableName(); - } - - //public virtual string GetVariable() { - // return nameInternal; // Override for textures - //} - - public string GetFilteredVariableLine() { - //if( this.nameInternal == "_SpecColor" ) { // TODO: Why? - // return null; - //} - - return GetVariableLine(); - - } - - public string Serialize(){ - string s = ""; - s += "glob:" + global.ToString(); - s += ",taghide:" + tagHideInInspector.ToString(); - s += ",taghdr:" + tagHDR.ToString(); - s += ",tagprd:" + tagPerRendererData.ToString(); - s += ",tagnsco:" + tagNoScaleOffset.ToString(); - s += ",tagnrm:" + tagNormal.ToString(); - return s; - } - - public void Deserialize( string key, string value ){ - switch( key ) { - case "glob": - global = bool.Parse( value ); - break; - case "taghide": - tagHideInInspector = bool.Parse( value ); - break; - case "taghdr": - tagHDR = bool.Parse( value ); - break; - case "tagprd": - tagPerRendererData = bool.Parse( value ); - break; - case "tagnsco": - tagNoScaleOffset = bool.Parse( value ); - break; - case "tagnrm": - tagNormal = bool.Parse( value ); - break; - } - } - - - public virtual string GetMulticompilePragma(){ - return ""; // Override for branching - } - - public virtual string GetInitializationLine() { - return ""; // Override, textures need to unpack before usage in the frag shader - } - - public virtual string GetVariableLine() { - return ""; // Override - } - - public virtual string GetFragmentPrepare() { - return ""; // Override - } - - - - } -} \ No newline at end of file diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_ShaderProperties/SF_ShaderProperty.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/_ShaderProperties/SF_ShaderProperty.cs.meta deleted file mode 100755 index 886f1502..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/_ShaderProperties/SF_ShaderProperty.cs.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: d8c935ac774257c49ad63340aa7af37a -MonoImporter: - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Utility.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/_Utility.meta deleted file mode 100755 index 4550660e..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/_Utility.meta +++ /dev/null @@ -1,5 +0,0 @@ -fileFormatVersion: 2 -guid: 8159890c121914a839942f4820d9ce63 -folderAsset: yes -DefaultImporter: - userData: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Utility/GUILines.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/_Utility/GUILines.cs deleted file mode 100755 index 462cfd41..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/_Utility/GUILines.cs +++ /dev/null @@ -1,478 +0,0 @@ -using System; -using UnityEngine; -using UnityEditor; -using System.Reflection; - -namespace ShaderForge { - - public class GUILines { - - public static Color connectionColor = new Color( 1f, 1f, 1f, 0.3f ); - - public static void Initialize() { - - } - - - - - - public static void DrawLine( Vector2 pointA, Vector2 pointB, Color color, float width, bool antiAlias ) { - Handles.BeginGUI(); - Handles.color = color; - if( antiAlias ) - Handles.DrawAAPolyLine( width, new Vector3[] { pointA, pointB } ); - else - Handles.DrawPolyLine( new Vector3[] { pointA, pointB } ); - Handles.EndGUI(); - } - - public static void DrawDisc( Vector2 center, float radius, Color color) { - Handles.BeginGUI(); - Handles.color = color; - Handles.DrawWireDisc(center,Vector3.forward,radius); - Handles.EndGUI(); - } - - - - - - public static void DrawLines( SF_Editor editor, Vector2[] points, Color color, float width, bool antiAlias, bool railway = false ) { - Handles.BeginGUI(); - Handles.color = color; - - - Vector3[] v3Pts = new Vector3[points.Length]; - for (int i = 0; i < points.Length; i++) { - points[i] = editor.nodeView.ZoomSpaceToScreenSpace( points[i] ); - v3Pts[i] = new Vector3(points[i].x, points[i].y); - } - - if( antiAlias ){ - if( railway ) { - DrawPolyLineWithRail( width, v3Pts ); - } else { - Handles.DrawAAPolyLine( width, v3Pts ); - } - } else { - Handles.DrawPolyLine( v3Pts ); - } - Handles.EndGUI(); - } - - - static void DrawPolyLineWithRail( float width, Vector3[] v3pts ) { - - Vector3[] pair = new Vector3[] { Vector3.zero, Vector3.zero }; - for( int i = 0; i < v3pts.Length - 1; i++ ) { - - Vector3 dir = (v3pts[i] - v3pts[i+1] ).normalized; - dir = new Vector3(-dir.y, dir.x); - Vector3 center = (v3pts[i] + v3pts[i+1] )*0.5f; - pair[0] = center + dir * 3; - pair[1] = center - dir * 3; - Handles.DrawAAPolyLine( pair ); - } - - Handles.DrawAAPolyLine( width, v3pts ); - } - - - - public static void Highlight( Rect r, float offset, int strength = 1 ) { - - //float width = 4; - //offset = 3; - //Color color = Color.yellow; - r.xMax += 1; - r = SF_Tools.GetExpanded( r, offset ); - - /* - Vector2 tl = new Vector2( r.x, r.y); - Vector2 tr = new Vector2( r.xMax, r.y ); - Vector2 bl = new Vector2( r.x, r.yMax ); - Vector2 br = new Vector2( r.xMax, r.yMax ); - Vector2 dn = new Vector2( 0f, width * 3 ); - Vector2 rg = new Vector2( width * 3, 0f ); - */ - - //Color prevCol = GUI.color; - //GUI.color = color; - - for( int i = 0; i < strength; i++ ) { - GUI.Box( r, string.Empty, SF_Styles.HighlightStyle ); - } - //GUI.color = prevCol; - - /* - for( int i = 0; i < strength; i++ ) { - GUI.Box( r, string.Empty, SF_Styles.HighlightStyle ); - }*/ - - - //GUI.Box( r, string.Empty, (GUIStyle)"flow node 0 on" ); - /* - for( int i = 0; i < strength; i++ ) { - DrawLine( tl, tr, color, width, true ); - DrawLine( tr, br, color, width, true ); - DrawLine( br, bl, color, width, true ); - DrawLine( bl, tl, color, width, true ); - - - DrawLine( tl + rg, tl + dn, color, width, true ); - DrawLine( tr - rg, tr + dn, color, width, true ); - DrawLine( bl + rg, bl - dn, color, width, true ); - DrawLine( br - rg, br - dn, color, width, true ); - - }*/ - - } - - - - - public static void DrawCubicBezier( Vector2 p0, Vector2 p1, Vector2 p2, Vector2 p3, Color color, float width, bool antiAlias, int segments, bool railway = false ) { - Initialize(); - Vector2 lastV = CubicBezier( p0, p1, p2, p3, 0 ); - for( int i = 1; i <= segments; i++ ) { - Vector2 v = CubicBezier( p0, p1, p2, p3, i / (float)segments ); - - if( railway ) { - Vector2 dir = ( lastV - v ).normalized; - dir = new Vector2(-dir.y, dir.x)*2; - Vector2 center = ( v + lastV ) * 0.5f; - DrawLine( center + dir, center - dir, color, width, antiAlias ); - } else { - DrawLine( lastV, v, color, width, antiAlias ); - } - - lastV = v; - } - } - - public static void DrawCubicBezierOffset( float offset, Vector2 p0, Vector2 p1, Vector2 p2, Vector2 p3, Color color, float width, bool antiAlias, int segments ) { - Initialize(); - Vector2 lastV = CubicBezierOffset( offset, p0, p1, p2, p3, 0 ); - for( int i = 1; i <= segments; i++ ) { - Vector2 v = CubicBezierOffset( offset, p0, p1, p2, p3, i / (float)segments ); - DrawLine( lastV, v, color, width, antiAlias ); - lastV = v; - } - } - - - - - public static Vector2[] ConnectionBezierOffsetArray(float offset, SF_NodeConnector startCon, SF_NodeConnector endCon, int segments){ - - - Vector2 start = startCon.GetConnectionPoint(); - Vector2 end = endCon.GetConnectionPoint(); - - bool reversed = (start.x < end.x); - - Vector2[] points; - - int pCount = (segments+1); // Point count per bezier - - if(reversed) - points = new Vector2[pCount*2]; // Two curves - else - points = new Vector2[pCount]; - - - - if(reversed){ - - // Calculate new start/end positions! - // We want an S shape, which essentially is two curves with a connected center - // Let's define the new points! - - - float midVert; - - if(startCon.node.rect.center.y > endCon.node.rect.center.y) - midVert = (startCon.node.BoundsTop() + endCon.node.BoundsBottom())/2; - else - midVert = (startCon.node.BoundsBottom() + endCon.node.BoundsTop())/2; - - - - float deltaX = Mathf.Abs(start.x-end.x); - float mul = Mathf.InverseLerp(0f,100f,deltaX); - mul = SF_Tools.Smoother(mul) * 0.70710678118f; - - - Vector2 bAp0 = start; // Start Point - Vector2 bAp3 = new Vector2(start.x, midVert); // End Point - - - - float tangentMag = Mathf.Abs(bAp0.y-bAp3.y)*mul; // TODO: Scale based on length if smaller than something - Vector2 tangentVec = new Vector2(tangentMag, 0f); - - - Vector2 bAp1 = bAp0 - tangentVec; // Start Tangent - Vector2 bAp2 = bAp3 - tangentVec; // End Tangent - - - for(int i=0;i end.x) ? 1f : 4f; - - float xHalfway = Mathf.Abs(end.x-start.x)*0.5f * mult; - - Vector2 p1 = new Vector2(start.x-xHalfway, start.y); - Vector2 p2 = new Vector2(end.x+xHalfway, end.y); - return CubicBezierOffset(offset, start, p1, p2, end, t); - } - - public static Vector2 CubicBezierOffset( float offset, Vector2 p0, Vector2 p1, Vector2 p2, Vector2 p3, float t ) { - Vector2 a = QuadBezier( p0, p1, p2, t ); - Vector2 b = QuadBezier( p1, p2, p3, t ); - Vector2 origin = Lerp( a, b, t ); - Vector2 tangent = ( b - a ).normalized; - Vector2 normal = new Vector2( -tangent.y, tangent.x ); - return origin + normal * offset; - } - - public static Vector2 CubicBezier( Vector2 p0, Vector2 p1, Vector2 p2, Vector2 p3, float t ) { - float omt = 1f - t; - float omt2 = omt * omt; - float t2 = t * t; - return p0 * ( omt2 * omt ) + - p1 * ( 3f * omt2 * t ) + - p2 * ( 3f * omt * t2 ) + - p3 * ( t2 * t ); - } - - public static Vector2 QuadBezier( Vector2 p0, Vector2 p1, Vector2 p2, float t ) { - float tsq = t * t; - float t2 = t * 2; - return p0 * ( tsq - t2 + 1 ) + p1 * ( t2 - 2 * tsq ) + p2 * tsq; - - } - - public static Vector2 Lerp( Vector2 v0, Vector2 v1, float t ) { - return ( v0 * ( 1f - t ) + t * v1 ); - } - - - - - public static void QuickBezier(Vector2 p0, Vector2 p1, Color color, int detail = 12, int width = 2){ - - Vector2 prevPoint = p0; - for(float i=1;i(); - _blitCamera.enabled = false; - _blitCamera.clearFlags = CameraClearFlags.Nothing; - _blitCamera.orthographic = true; - _blitCamera.orthographicSize = 1f; - _blitCamera.nearClipPlane = 3.5f; - _blitCamera.farClipPlane = 4.5f; - _blitCamera.enabled = false; - _blitCamera.cullingMask = ( 1 << 7 ); - } - return _blitCamera; - } - } - - - - - - - static string[] defaultInputNames = new string[] { - "_A", - "_B", - "_C", - "_D", - "_E", - "_F", - "_G", - "_H", - "_I", - "_J", - "_K", - "_L" - }; - - public static SF_Node currentNode; - static Material _mat; - public static Material mat { - get { - if( _mat == null ) - _mat = new Material( Shader.Find( "Hidden/Shader Forge/FillColor" ) ); - return _mat; - } - } - - static Material _matColor; - public static Material matColor { - get { - if( _matColor == null ) - _matColor = new Material( Shader.Find( "Hidden/Shader Forge/FillColor" ) ); - return _matColor; - } - } - - static Material _matExtractChannel; - public static Material matExtractChannel { - get { - if( _matExtractChannel == null ) - _matExtractChannel = new Material( Shader.Find( "Hidden/Shader Forge/ExtractChannel" ) ); - return _matExtractChannel; - } - } - - public static void RenderUsingViewport( RenderTexture target, string shader ) { - LoadShaderForMaterial( shader ); - RenderUsingViewport( target, mat ); - } - - static void LoadShaderForMaterial( string shader ) { - Shader s = Shader.Find( "Hidden/Shader Forge/" + shader ); - if(s == null) - Debug.LogError("Shader not found: " + shader ); - mat.shader = s; - } - - public static void Render( RenderTexture target, string shader, string[] inputNames, Texture[] inputTextures ) { - - LoadShaderForMaterial( shader ); - - for( int i = 0; i < inputTextures.Length; i++ ) { - mat.SetTexture( "_" + inputNames[i], inputTextures[i] ); - } - - Render( target, mat ); - } - - public static void RenderUsingViewport( RenderTexture target, string shader, string[] inputNames, Texture[] inputTextures ) { - LoadShaderForMaterial( shader ); - for( int i = 0; i < inputTextures.Length; i++ ) { - mat.SetTexture( "_" + inputNames[i], inputTextures[i] ); - } - RenderUsingViewport( target, mat ); - } - - public static void Render( RenderTexture target, string shader, params Texture[] inputTextures ) { - Render( target, shader, defaultInputNames, inputTextures ); - } - - public static void Render( RenderTexture target, Material material ) { - ApplyComponentCountMask( material ); - - blitCamera.targetTexture = target; - Graphics.DrawMesh( blitQuad, Vector3.zero, Quaternion.identity, material, 7, blitCamera ); - blitCamera.Render(); - blitCamera.targetTexture = null; - - //Graphics.SetRenderTarget( target ); - //Graphics.DrawMesh( blitQuad, Matrix4x4.identity, material, -1, null ); - //Graphics.DrawMeshNow( blitQuad, -Vector3.forward * 0.5f, Quaternion.identity ); - - //Graphics.Blit( null, target, material ); - } - - static void ApplyComponentCountMask(Material material) { - int cc = GetComponentCountAndPrepare(material); - Vector4 mask = CompCountToMask( cc ); - material.SetVector( "_OutputMask", mask ); - } - - static int GetComponentCountAndPrepare(Material material) { - if( currentNode != null ) { - currentNode.PrepareRendering( material ); - return currentNode.ReadComponentCountFromFirstOutput(); - } - return 4; - } - - public static void RenderUsingViewport( RenderTexture target, Material material ) { - ApplyComponentCountMask( material ); - bool sphere = SF_Settings.nodeRenderMode == NodeRenderMode.Spheres || SF_Settings.nodeRenderMode == NodeRenderMode.Mixed; - SF_Editor.instance.preview.DrawMesh( target, material, sphere ); - } - - public static Vector4 CompCountToMask(int cc) { - if( cc == 2 ) - return new Vector4( 1, 1, 0, 0 ); - if( cc == 3 ) - return new Vector4( 1, 1, 1, 0 ); - return Vector4.one; - } - - public static void Render( RenderTexture target, Color color ) { - matColor.color = color; - Render( target, matColor ); - } - - - - - } - -} diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Utility/SF_Blit.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/_Utility/SF_Blit.cs.meta deleted file mode 100644 index 841e3dd0..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/_Utility/SF_Blit.cs.meta +++ /dev/null @@ -1,12 +0,0 @@ -fileFormatVersion: 2 -guid: 03fa839fa4cf8e146aef035b18b2fe8c -timeCreated: 1444468702 -licenseType: Pro -MonoImporter: - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Utility/SF_ColorPicker.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/_Utility/SF_ColorPicker.cs deleted file mode 100755 index 4d275798..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/_Utility/SF_ColorPicker.cs +++ /dev/null @@ -1,863 +0,0 @@ -/* -using System; -using UnityEngine; -using UnityEngineInternal; -using UnityEditor; -using UnityEditorInternal; - -namespace ShaderForge { - public class SF_ColorPicker : EditorWindow { - private enum ColorBoxMode { - SV_H, - HV_S, - HS_V, - BG_R, - BR_G, - RG_B, - EyeDropper - } - private enum SliderMode { - RGB, - HSV - } - private class Styles { - public GUIStyle pickerBox = "ColorPickerBox"; - public GUIStyle thumb2D = "ColorPicker2DThumb"; - public GUIStyle thumbHoriz = "ColorPickerHorizThumb"; - public GUIStyle thumbVert = "ColorPickerVertThumb"; - public GUIStyle headerLine = "IN Title"; - public GUIStyle colorPickerBox = "ColorPickerBox"; - public GUIStyle background = "ColorPickerBackground"; - public GUIContent eyeDropper = EditorGUIUtility.IconContent( "EyeDropper.Large" ); - public GUIContent colorCycle = EditorGUIUtility.IconContent( "ColorPicker.CycleColor" ); - public GUIContent colorToggle = EditorGUIUtility.TextContent( "ColorPicker.ColorFoldout" ); - public GUIContent sliderToggle = EditorGUIUtility.TextContent( "ColorPicker.SliderFoldout" ); - public GUIContent presetsToggle = new GUIContent( "Presets" ); - public GUIContent sliderCycle = EditorGUIUtility.IconContent( "ColorPicker.CycleSlider" ); - } - private const int kHueRes = 64; - private const int kColorBoxSize = 8; - private const int kEyeDropperHeight = 95; - private const int kSlidersHeight = 82; - private const int kColorBoxHeight = 162; - private const int kPresetsHeight = 300; - private static SF_ColorPicker s_SharedColorPicker; - [SerializeField] - private Color m_Color = Color.black; - [SerializeField] - private Color m_OriginalColor; - [SerializeField] - private float m_R; - [SerializeField] - private float m_G; - [SerializeField] - private float m_B; - [SerializeField] - private float m_H; - [SerializeField] - private float m_S; - [SerializeField] - private float m_V; - [SerializeField] - private float m_A = 1f; - [SerializeField] - private float m_ColorSliderSize = 4f; - [SerializeField] - private Texture2D m_ColorSlider; - [SerializeField] - private float m_SliderValue; - [SerializeField] - private Color[] m_Colors; - [SerializeField] - private Texture2D m_ColorBox; - private static int s_Slider2Dhash = "Slider2D".GetHashCode(); - [SerializeField] - private bool m_ShowColors = true; - [SerializeField] - private bool m_ShowSliders = true; - [SerializeField] - private bool m_ShowPresets = true; - [SerializeField] - private bool m_IsOSColorPicker; - [SerializeField] - private bool m_resetKeyboardControl; - [SerializeField] - private bool m_ShowAlpha = true; - private Texture2D m_RTexture; - private float m_RTextureG = -1f; - private float m_RTextureB = -1f; - private Texture2D m_GTexture; - private float m_GTextureR = -1f; - private float m_GTextureB = -1f; - private Texture2D m_BTexture; - private float m_BTextureR = -1f; - private float m_BTextureG = -1f; - [SerializeField] - private Texture2D m_HueTexture; - private float m_HueTextureS = -1f; - private float m_HueTextureV = -1f; - [SerializeField] - private Texture2D m_SatTexture; - private float m_SatTextureH = -1f; - private float m_SatTextureV = -1f; - [SerializeField] - private Texture2D m_ValTexture; - private float m_ValTextureH = -1f; - private float m_ValTextureS = -1f; - [SerializeField] - private int m_TextureColorSliderMode = -1; - [SerializeField] - private Vector2 m_LastConstantValues = new Vector2( -1f, -1f ); - [NonSerialized] - private int m_TextureColorBoxMode = -1; - [SerializeField] - private float m_LastConstant = -1f; - [SerializeField] - private ContainerWindow m_TrackingWindow; - [SerializeField] - private SF_ColorPicker.ColorBoxMode m_ColorBoxMode = SF_ColorPicker.ColorBoxMode.BG_R; - [SerializeField] - private SF_ColorPicker.ColorBoxMode m_OldColorBoxMode; - [SerializeField] - private SF_ColorPicker.SliderMode m_SliderMode = SF_ColorPicker.SliderMode.HSV; - [SerializeField] - private Texture2D m_AlphaTexture; - private float m_OldAlpha = -1f; - [SerializeField] - private GUIView m_DelegateView; - private PresetLibraryEditor m_ColorLibraryEditor; - private PresetLibraryEditorState m_ColorLibraryEditorState; - private static SF_ColorPicker.Styles styles; - public static string presetsEditorPrefID { - get { - return "Color"; - } - } - private bool colorChanged { - get; - set; - } - public static bool visible { - get { - return SF_ColorPicker.s_SharedColorPicker != null; - } - } - public static Color color { - get { - return SF_ColorPicker.get.m_Color; - } - set { - SF_ColorPicker.get.SetColor( value ); - } - } - public static SF_ColorPicker get { - get { - if( !SF_ColorPicker.s_SharedColorPicker ) { - UnityEngine.Object[] array = Resources.FindObjectsOfTypeAll( typeof( SF_ColorPicker ) ); - if( array != null && array.Length > 0 ) { - SF_ColorPicker.s_SharedColorPicker = (SF_ColorPicker)array[0]; - } - if( !SF_ColorPicker.s_SharedColorPicker ) { - SF_ColorPicker.s_SharedColorPicker = ScriptableObject.CreateInstance(); - SF_ColorPicker.s_SharedColorPicker.wantsMouseMove = true; - } - } - return SF_ColorPicker.s_SharedColorPicker; - } - } - public string currentPresetLibrary { - get { - this.InitIfNeeded(); - return this.m_ColorLibraryEditor.currentLibraryWithoutExtension; - } - set { - this.InitIfNeeded(); - this.m_ColorLibraryEditor.currentLibraryWithoutExtension = value; - } - } - public SF_ColorPicker() { - base.hideFlags = HideFlags.DontSave; - this.m_ShowSliders = ( EditorPrefs.GetInt( "CPSliderShow", 1 ) != 0 ); - this.m_SliderMode = (SF_ColorPicker.SliderMode)EditorPrefs.GetInt( "CPSliderMode", 0 ); - this.m_ShowColors = ( EditorPrefs.GetInt( "CPColorShow", 1 ) != 0 ); - this.m_ColorBoxMode = (SF_ColorPicker.ColorBoxMode)EditorPrefs.GetInt( "CPColorMode", 0 ); - this.m_IsOSColorPicker = EditorPrefs.GetBool( "UseOSColorPicker" ); - this.m_ShowPresets = ( EditorPrefs.GetInt( "CPPresetsShow", 1 ) != 0 ); - EditorApplication.update = (EditorApplication.CallbackFunction)Delegate.Combine( EditorApplication.update, new EditorApplication.CallbackFunction( this.PollOSColorPicker ) ); - } - private void OnSelectionChange() { - this.m_resetKeyboardControl = true; - base.Repaint(); - } - private void RGBToHSV() { - EditorGUIUtility.RGBToHSV( new Color( this.m_R, this.m_G, this.m_B, 1f ), out this.m_H, out this.m_S, out this.m_V ); - } - private void HSVToRGB() { - Color color = EditorGUIUtility.HSVToRGB( this.m_H, this.m_S, this.m_V ); - this.m_R = color.r; - this.m_G = color.g; - this.m_B = color.b; - } - private static void swap( ref float f1, ref float f2 ) { - float num = f1; - f1 = f2; - f2 = num; - } - private Vector2 Slider2D( Rect rect, Vector2 value, Vector2 maxvalue, Vector2 minvalue, GUIStyle backStyle, GUIStyle thumbStyle ) { - if( backStyle == null ) { - return value; - } - if( thumbStyle == null ) { - return value; - } - int controlID = GUIUtility.GetControlID( SF_ColorPicker.s_Slider2Dhash, FocusType.Native ); - if( maxvalue.x < minvalue.x ) { - SF_ColorPicker.swap( ref maxvalue.x, ref minvalue.x ); - } - if( maxvalue.y < minvalue.y ) { - SF_ColorPicker.swap( ref maxvalue.y, ref minvalue.y ); - } - float num = ( thumbStyle.fixedHeight != 0f ) ? thumbStyle.fixedHeight : ( (float)thumbStyle.padding.vertical ); - float num2 = ( thumbStyle.fixedWidth != 0f ) ? thumbStyle.fixedWidth : ( (float)thumbStyle.padding.horizontal ); - Vector2 vector = new Vector2( ( rect.width - (float)( backStyle.padding.right + backStyle.padding.left ) - num2 * 2f ) / ( maxvalue.x - minvalue.x ), ( rect.height - (float)( backStyle.padding.top + backStyle.padding.bottom ) - num * 2f ) / ( maxvalue.y - minvalue.y ) ); - Rect position = new Rect( rect.x + value.x * vector.x + num2 / 2f + (float)backStyle.padding.left - minvalue.x * vector.x, rect.y + value.y * vector.y + num / 2f + (float)backStyle.padding.top - minvalue.y * vector.y, num2, num ); - Event current = Event.current; - switch( current.GetTypeForControl( controlID ) ) { - case EventType.MouseDown: - if( rect.Contains( current.mousePosition ) ) { - GUIUtility.hotControl = controlID; - value.x = ( current.mousePosition.x - rect.x - num2 - (float)backStyle.padding.left ) / vector.x + minvalue.x; - value.y = ( current.mousePosition.y - rect.y - num - (float)backStyle.padding.top ) / vector.y + minvalue.y; - GUI.changed = true; - Event.current.Use(); - } - break; - case EventType.MouseUp: - if( GUIUtility.hotControl == controlID ) { - GUIUtility.hotControl = 0; - current.Use(); - } - break; - case EventType.MouseDrag: - if( GUIUtility.hotControl == controlID ) { - value.x = ( current.mousePosition.x - rect.x - num2 - (float)backStyle.padding.left ) / vector.x + minvalue.x; - value.y = ( current.mousePosition.y - rect.y - num - (float)backStyle.padding.top ) / vector.y + minvalue.y; - value.x = Mathf.Clamp( value.x, minvalue.x, maxvalue.x ); - value.y = Mathf.Clamp( value.y, minvalue.y, maxvalue.y ); - GUI.changed = true; - Event.current.Use(); - } - break; - case EventType.Repaint: - backStyle.Draw( rect, GUIContent.none, controlID ); - thumbStyle.Draw( position, GUIContent.none, controlID ); - break; - } - return value; - } - private void RGBSliders() { - bool changed = GUI.changed; - GUI.changed = false; - this.m_RTexture = SF_ColorPicker.Update1DSlider( this.m_RTexture, 8, this.m_G, this.m_B, ref this.m_RTextureG, ref this.m_RTextureB, 0, false ); - this.m_GTexture = SF_ColorPicker.Update1DSlider( this.m_GTexture, 8, this.m_R, this.m_B, ref this.m_GTextureR, ref this.m_GTextureB, 1, false ); - this.m_BTexture = SF_ColorPicker.Update1DSlider( this.m_BTexture, 8, this.m_R, this.m_G, ref this.m_BTextureR, ref this.m_BTextureG, 2, false ); - float num = (float)( (int)Mathf.Round( this.m_R * 255f ) ); - float num2 = (float)( (int)Mathf.Round( this.m_G * 255f ) ); - float num3 = (float)( (int)Mathf.Round( this.m_B * 255f ) ); - num = this.TexturedSlider( this.m_RTexture, "R", num, 0f, 255f ); - num2 = this.TexturedSlider( this.m_GTexture, "G", num2, 0f, 255f ); - num3 = this.TexturedSlider( this.m_BTexture, "B", num3, 0f, 255f ); - if( GUI.changed ) { - this.m_R = num / 255f; - this.m_G = num2 / 255f; - this.m_B = num3 / 255f; - this.RGBToHSV(); - } - GUI.changed |= changed; - } - private static Texture2D Update1DSlider( Texture2D tex, int xSize, float const1, float const2, ref float oldConst1, ref float oldConst2, int idx, bool hsvSpace ) { - if( !tex || const1 != oldConst1 || const2 != oldConst2 ) { - if( !tex ) { - tex = SF_ColorPicker.MakeTexture( xSize, 2 ); - } - Color[] array = new Color[xSize * 2]; - Color black = Color.black; - Color black2 = Color.black; - switch( idx ) { - case 0: - black = new Color( 0f, const1, const2, 1f ); - black2 = new Color( 1f, 0f, 0f, 0f ); - break; - case 1: - black = new Color( const1, 0f, const2, 1f ); - black2 = new Color( 0f, 1f, 0f, 0f ); - break; - case 2: - black = new Color( const1, const2, 0f, 1f ); - black2 = new Color( 0f, 0f, 1f, 0f ); - break; - case 3: - black = new Color( 0f, 0f, 0f, 1f ); - black2 = new Color( 1f, 1f, 1f, 0f ); - break; - } - SF_ColorPicker.FillArea( xSize, 2, array, black, black2, new Color( 0f, 0f, 0f, 0f ) ); - if( hsvSpace ) { - SF_ColorPicker.HSVToRGBArray( array ); - } - oldConst1 = const1; - oldConst2 = const2; - tex.SetPixels( array ); - tex.Apply(); - } - return tex; - } - private float TexturedSlider( Texture2D background, string text, float val, float min, float max ) { - Rect rect = GUILayoutUtility.GetRect( 16f, 16f, GUI.skin.label ); - GUI.Label( new Rect( rect.x, rect.y - 1f, 20f, 16f ), text ); - rect.x += 14f; - rect.width -= 50f; - if( Event.current.type == EventType.Repaint ) { - Rect screenRect = new Rect( rect.x + 1f, rect.y + 2f, rect.width - 2f, rect.height - 4f ); - Graphics.DrawTexture( screenRect, background, new Rect( 0.5f / (float)background.width, 0.5f / (float)background.height, 1f - 1f / (float)background.width, 1f - 1f / (float)background.height ), 0, 0, 0, 0, Color.grey ); - } - int controlID = EditorGUI.GetControlID( 869045, EditorGUIUtility.native, base.position ); - bool changed = GUI.changed; - GUI.changed = false; - val = GUI.HorizontalSlider( new Rect( rect.x, rect.y + 1f, rect.width, rect.height - 2f ), val, min, max, SF_ColorPicker.styles.pickerBox, SF_ColorPicker.styles.thumbHoriz ); - if( GUI.changed && EditorGUI.s_RecycledEditor.IsEditingControl( controlID ) ) { - EditorGUI.s_RecycledEditor.EndEditing(); - } - Rect position = new Rect( rect.xMax + 6f, rect.y, 30f, 16f ); - val = (float)( (int)EditorGUI.DoFloatField( EditorGUI.s_RecycledEditor, position, new Rect( 0f, 0f, 0f, 0f ), controlID, val, EditorGUI.kIntFieldFormatString, EditorStyles.numberField, false ) ); - val = Mathf.Clamp( val, min, max ); - GUI.changed |= changed; - return val; - } - private void HSVSliders() { - bool changed = GUI.changed; - GUI.changed = false; - this.m_HueTexture = SF_ColorPicker.Update1DSlider( this.m_HueTexture, 64, 1f, 1f, ref this.m_HueTextureS, ref this.m_HueTextureV, 0, true ); - this.m_SatTexture = SF_ColorPicker.Update1DSlider( this.m_SatTexture, 8, this.m_H, Mathf.Max( this.m_V, 0.2f ), ref this.m_SatTextureH, ref this.m_SatTextureV, 1, true ); - this.m_ValTexture = SF_ColorPicker.Update1DSlider( this.m_ValTexture, 8, this.m_H, this.m_S, ref this.m_ValTextureH, ref this.m_ValTextureS, 2, true ); - float num = (float)( (int)Mathf.Round( this.m_H * 359f ) ); - float num2 = (float)( (int)Mathf.Round( this.m_S * 255f ) ); - float num3 = (float)( (int)Mathf.Round( this.m_V * 255f ) ); - num = this.TexturedSlider( this.m_HueTexture, "H", num, 0f, 359f ); - num2 = this.TexturedSlider( this.m_SatTexture, "S", num2, 0f, 255f ); - num3 = this.TexturedSlider( this.m_ValTexture, "V", num3, 0f, 255f ); - if( GUI.changed ) { - this.m_H = num / 359f; - this.m_S = num2 / 255f; - this.m_V = num3 / 255f; - this.HSVToRGB(); - } - GUI.changed |= changed; - } - private static void FillArea( int xSize, int ySize, Color[] retval, Color topLeftColor, Color rightGradient, Color downGradient ) { - Color b = new Color( 0f, 0f, 0f, 0f ); - Color b2 = new Color( 0f, 0f, 0f, 0f ); - if( xSize > 1 ) { - b = rightGradient / (float)( xSize - 1 ); - } - if( ySize > 1 ) { - b2 = downGradient / (float)( ySize - 1 ); - } - Color color = topLeftColor; - int num = 0; - for( int i = 0; i < ySize; i++ ) { - Color color2 = color; - for( int j = 0; j < xSize; j++ ) { - retval[num++] = color2; - color2 += b; - } - color += b2; - } - } - private static void HSVToRGBArray( Color[] colors ) { - int num = colors.Length; - for( int i = 0; i < num; i++ ) { - Color color = colors[i]; - Color color2 = EditorGUIUtility.HSVToRGB( color.r, color.g, color.b ); - color2.a = color.a; - colors[i] = color2; - } - } - private void DrawColorSlider( Rect colorSliderRect, Vector2 constantValues ) { - if( Event.current.type != EventType.Repaint ) { - return; - } - if( this.m_ColorBoxMode != (SF_ColorPicker.ColorBoxMode)this.m_TextureColorSliderMode ) { - int num = (int)this.m_ColorSliderSize; - int num2; - if( this.m_ColorBoxMode == SF_ColorPicker.ColorBoxMode.SV_H ) { - num2 = 64; - } else { - num2 = (int)this.m_ColorSliderSize; - } - if( this.m_ColorSlider == null ) { - this.m_ColorSlider = SF_ColorPicker.MakeTexture( num, num2 ); - } - if( this.m_ColorSlider.width != num || this.m_ColorSlider.height != num2 ) { - this.m_ColorSlider.Resize( num, num2 ); - } - } - if( this.m_ColorBoxMode != (SF_ColorPicker.ColorBoxMode)this.m_TextureColorSliderMode || constantValues != this.m_LastConstantValues ) { - Color[] pixels = this.m_ColorSlider.GetPixels( 0 ); - int width = this.m_ColorSlider.width; - int height = this.m_ColorSlider.height; - switch( this.m_ColorBoxMode ) { - case SF_ColorPicker.ColorBoxMode.SV_H: - SF_ColorPicker.FillArea( width, height, pixels, new Color( 0f, 1f, 1f, 1f ), new Color( 0f, 0f, 0f, 0f ), new Color( 1f, 0f, 0f, 0f ) ); - SF_ColorPicker.HSVToRGBArray( pixels ); - break; - case SF_ColorPicker.ColorBoxMode.HV_S: - SF_ColorPicker.FillArea( width, height, pixels, new Color( this.m_H, 0f, Mathf.Max( this.m_V, 0.3f ), 1f ), new Color( 0f, 0f, 0f, 0f ), new Color( 0f, 1f, 0f, 0f ) ); - SF_ColorPicker.HSVToRGBArray( pixels ); - break; - case SF_ColorPicker.ColorBoxMode.HS_V: - SF_ColorPicker.FillArea( width, height, pixels, new Color( this.m_H, this.m_S, 0f, 1f ), new Color( 0f, 0f, 0f, 0f ), new Color( 0f, 0f, 1f, 0f ) ); - SF_ColorPicker.HSVToRGBArray( pixels ); - break; - case SF_ColorPicker.ColorBoxMode.BG_R: - SF_ColorPicker.FillArea( width, height, pixels, new Color( 0f, this.m_G, this.m_B, 1f ), new Color( 0f, 0f, 0f, 0f ), new Color( 1f, 0f, 0f, 0f ) ); - break; - case SF_ColorPicker.ColorBoxMode.BR_G: - SF_ColorPicker.FillArea( width, height, pixels, new Color( this.m_R, 0f, this.m_B, 1f ), new Color( 0f, 0f, 0f, 0f ), new Color( 0f, 1f, 0f, 0f ) ); - break; - case SF_ColorPicker.ColorBoxMode.RG_B: - SF_ColorPicker.FillArea( width, height, pixels, new Color( this.m_R, this.m_G, 0f, 1f ), new Color( 0f, 0f, 0f, 0f ), new Color( 0f, 0f, 1f, 0f ) ); - break; - } - this.m_ColorSlider.SetPixels( pixels, 0 ); - this.m_ColorSlider.Apply( true ); - } - Graphics.DrawTexture( colorSliderRect, this.m_ColorSlider, new Rect( 0.5f / (float)this.m_ColorSlider.width, 0.5f / (float)this.m_ColorSlider.height, 1f - 1f / (float)this.m_ColorSlider.width, 1f - 1f / (float)this.m_ColorSlider.height ), 0, 0, 0, 0, Color.grey ); - } - public static Texture2D MakeTexture( int width, int height ) { - return new Texture2D( width, height, TextureFormat.ARGB32, false ) { - hideFlags = HideFlags.HideAndDontSave, - wrapMode = TextureWrapMode.Clamp - //hideFlags = HideFlags.DontSave - }; - } - private void DrawColorSpaceBox( Rect colorBoxRect, float constantValue ) { - if( Event.current.type != EventType.Repaint ) { - return; - } - if( this.m_ColorBoxMode != (SF_ColorPicker.ColorBoxMode)this.m_TextureColorBoxMode ) { - int num = 8; - int num2; - if( this.m_ColorBoxMode == SF_ColorPicker.ColorBoxMode.HV_S || this.m_ColorBoxMode == SF_ColorPicker.ColorBoxMode.HS_V ) { - num2 = 64; - } else { - num2 = 8; - } - if( this.m_ColorBox == null ) { - this.m_ColorBox = SF_ColorPicker.MakeTexture( num2, num ); - } - if( this.m_ColorBox.width != num2 || this.m_ColorBox.height != num ) { - this.m_ColorBox.Resize( num2, num ); - } - } - if( this.m_ColorBoxMode != (SF_ColorPicker.ColorBoxMode)this.m_TextureColorBoxMode || this.m_LastConstant != constantValue ) { - this.m_Colors = this.m_ColorBox.GetPixels( 0 ); - int width = this.m_ColorBox.width; - int height = this.m_ColorBox.height; - switch( this.m_ColorBoxMode ) { - case SF_ColorPicker.ColorBoxMode.SV_H: - SF_ColorPicker.FillArea( width, height, this.m_Colors, new Color( this.m_H, 0f, 0f, 1f ), new Color( 0f, 1f, 0f, 0f ), new Color( 0f, 0f, 1f, 0f ) ); - SF_ColorPicker.HSVToRGBArray( this.m_Colors ); - break; - case SF_ColorPicker.ColorBoxMode.HV_S: - SF_ColorPicker.FillArea( width, height, this.m_Colors, new Color( 0f, this.m_S, 0f, 1f ), new Color( 1f, 0f, 0f, 0f ), new Color( 0f, 0f, 1f, 0f ) ); - SF_ColorPicker.HSVToRGBArray( this.m_Colors ); - break; - case SF_ColorPicker.ColorBoxMode.HS_V: - SF_ColorPicker.FillArea( width, height, this.m_Colors, new Color( 0f, 0f, this.m_V, 1f ), new Color( 1f, 0f, 0f, 0f ), new Color( 0f, 1f, 0f, 0f ) ); - SF_ColorPicker.HSVToRGBArray( this.m_Colors ); - break; - case SF_ColorPicker.ColorBoxMode.BG_R: - SF_ColorPicker.FillArea( width, height, this.m_Colors, new Color( this.m_R, 0f, 0f, 1f ), new Color( 0f, 0f, 1f, 0f ), new Color( 0f, 1f, 0f, 0f ) ); - break; - case SF_ColorPicker.ColorBoxMode.BR_G: - SF_ColorPicker.FillArea( width, height, this.m_Colors, new Color( 0f, this.m_G, 0f, 1f ), new Color( 0f, 0f, 1f, 0f ), new Color( 1f, 0f, 0f, 0f ) ); - break; - case SF_ColorPicker.ColorBoxMode.RG_B: - SF_ColorPicker.FillArea( width, height, this.m_Colors, new Color( 0f, 0f, this.m_B, 1f ), new Color( 1f, 0f, 0f, 0f ), new Color( 0f, 1f, 0f, 0f ) ); - break; - } - this.m_ColorBox.SetPixels( this.m_Colors, 0 ); - this.m_ColorBox.Apply( true ); - this.m_LastConstant = constantValue; - this.m_TextureColorBoxMode = (int)this.m_ColorBoxMode; - } - Graphics.DrawTexture( colorBoxRect, this.m_ColorBox, new Rect( 0.5f / (float)this.m_ColorBox.width, 0.5f / (float)this.m_ColorBox.height, 1f - 1f / (float)this.m_ColorBox.width, 1f - 1f / (float)this.m_ColorBox.height ), 0, 0, 0, 0, Color.grey ); - } - private void InitIfNeeded() { - if( SF_ColorPicker.styles == null ) { - SF_ColorPicker.styles = new SF_ColorPicker.Styles(); - } - if( this.m_ColorLibraryEditorState == null ) { - this.m_ColorLibraryEditorState = new PresetLibraryEditorState( SF_ColorPicker.presetsEditorPrefID ); - this.m_ColorLibraryEditorState.TransferEditorPrefsState( true ); - } - if( this.m_ColorLibraryEditor == null ) { - ScriptableObjectSaveLoadHelper helper = new ScriptableObjectSaveLoadHelper( "colors", SaveType.Text ); - this.m_ColorLibraryEditor = new PresetLibraryEditor( helper, this.m_ColorLibraryEditorState, new Action( this.PresetClickedCallback ) ); - this.m_ColorLibraryEditor.previewAspect = 1f; - this.m_ColorLibraryEditor.minMaxPreviewHeight = new Vector2( 14f, 14f ); - this.m_ColorLibraryEditor.settingsMenuRightMargin = 2f; - this.m_ColorLibraryEditor.useOnePixelOverlappedGrid = true; - this.m_ColorLibraryEditor.alwaysShowScrollAreaHorizontalLines = false; - this.m_ColorLibraryEditor.marginsForGrid = new RectOffset( 0, 0, 0, 0 ); - this.m_ColorLibraryEditor.marginsForList = new RectOffset( 0, 5, 2, 2 ); - } - } - private void PresetClickedCallback( int clickCount, object presetObject ) { - Color color = (Color)presetObject; - this.SetColor( color ); - this.colorChanged = true; - } - private void DoColorSwatchAndEyedropper() { - GUILayout.BeginHorizontal( new GUILayoutOption[0] ); - if( GUILayout.Button( SF_ColorPicker.styles.eyeDropper, GUIStyle.none, new GUILayoutOption[] - { - GUILayout.Width(40f), - GUILayout.ExpandWidth(false) - } ) ) { - EyeDropper.Start( this.m_Parent ); - this.m_ColorBoxMode = SF_ColorPicker.ColorBoxMode.EyeDropper; - GUIUtility.ExitGUI(); - } - Color color = new Color( this.m_R, this.m_G, this.m_B, this.m_A ); - Rect rect = GUILayoutUtility.GetRect( 20f, 20f, 20f, 20f, SF_ColorPicker.styles.SF_ColorPickerBox, new GUILayoutOption[] - { - GUILayout.ExpandWidth(true) - } ); - EditorGUIUtility.DrawColorSwatch( rect, color, this.m_ShowAlpha ); - if( Event.current.type == EventType.Repaint ) { - SF_ColorPicker.styles.pickerBox.Draw( rect, GUIContent.none, false, false, false, false ); - } - GUILayout.EndHorizontal(); - } - private void DoColorSpaceGUI() { - GUILayout.BeginHorizontal( new GUILayoutOption[0] ); - this.m_ShowColors = GUILayout.Toggle( this.m_ShowColors, SF_ColorPicker.styles.colorToggle, EditorStyles.foldout, new GUILayoutOption[0] ); - GUI.enabled = this.m_ShowColors; - if( GUILayout.Button( SF_ColorPicker.styles.colorCycle, GUIStyle.none, new GUILayoutOption[] - { - GUILayout.ExpandWidth(false) - } ) ) { - this.m_OldColorBoxMode = ( this.m_ColorBoxMode = ( this.m_ColorBoxMode + 1 ) % SF_ColorPicker.ColorBoxMode.EyeDropper ); - } - GUI.enabled = true; - GUILayout.EndHorizontal(); - if( this.m_ShowColors ) { - bool changed = GUI.changed; - GUILayout.BeginHorizontal( new GUILayoutOption[] - { - GUILayout.ExpandHeight(false) - } ); - Rect aspectRect = GUILayoutUtility.GetAspectRect( 1f, SF_ColorPicker.styles.pickerBox, new GUILayoutOption[] - { - GUILayout.MinWidth(64f), - GUILayout.MinHeight(64f), - GUILayout.MaxWidth(256f), - GUILayout.MaxHeight(256f) - } ); - EditorGUILayout.Space(); - Rect rect = GUILayoutUtility.GetRect( 8f, 32f, 64f, 128f, SF_ColorPicker.styles.pickerBox ); - rect.height = aspectRect.height; - GUILayout.EndHorizontal(); - GUI.changed = false; - switch( this.m_ColorBoxMode ) { - case SF_ColorPicker.ColorBoxMode.SV_H: - this.Slider3D( aspectRect, rect, ref this.m_S, ref this.m_V, ref this.m_H, SF_ColorPicker.styles.pickerBox, SF_ColorPicker.styles.thumb2D, SF_ColorPicker.styles.thumbVert ); - if( GUI.changed ) { - this.HSVToRGB(); - } - break; - case SF_ColorPicker.ColorBoxMode.HV_S: - this.Slider3D( aspectRect, rect, ref this.m_H, ref this.m_V, ref this.m_S, SF_ColorPicker.styles.pickerBox, SF_ColorPicker.styles.thumb2D, SF_ColorPicker.styles.thumbVert ); - if( GUI.changed ) { - this.HSVToRGB(); - } - break; - case SF_ColorPicker.ColorBoxMode.HS_V: - this.Slider3D( aspectRect, rect, ref this.m_H, ref this.m_S, ref this.m_V, SF_ColorPicker.styles.pickerBox, SF_ColorPicker.styles.thumb2D, SF_ColorPicker.styles.thumbVert ); - if( GUI.changed ) { - this.HSVToRGB(); - } - break; - case SF_ColorPicker.ColorBoxMode.BG_R: - this.Slider3D( aspectRect, rect, ref this.m_B, ref this.m_G, ref this.m_R, SF_ColorPicker.styles.pickerBox, SF_ColorPicker.styles.thumb2D, SF_ColorPicker.styles.thumbVert ); - if( GUI.changed ) { - this.RGBToHSV(); - } - break; - case SF_ColorPicker.ColorBoxMode.BR_G: - this.Slider3D( aspectRect, rect, ref this.m_B, ref this.m_R, ref this.m_G, SF_ColorPicker.styles.pickerBox, SF_ColorPicker.styles.thumb2D, SF_ColorPicker.styles.thumbVert ); - if( GUI.changed ) { - this.RGBToHSV(); - } - break; - case SF_ColorPicker.ColorBoxMode.RG_B: - this.Slider3D( aspectRect, rect, ref this.m_R, ref this.m_G, ref this.m_B, SF_ColorPicker.styles.pickerBox, SF_ColorPicker.styles.thumb2D, SF_ColorPicker.styles.thumbVert ); - if( GUI.changed ) { - this.RGBToHSV(); - } - break; - case SF_ColorPicker.ColorBoxMode.EyeDropper: - EyeDropper.DrawPreview( Rect.MinMaxRect( aspectRect.x, aspectRect.y, rect.xMax, aspectRect.yMax ) ); - break; - } - GUI.changed |= changed; - } - } - private void DoColorSliders() { - GUILayout.BeginHorizontal( new GUILayoutOption[0] ); - this.m_ShowSliders = GUILayout.Toggle( this.m_ShowSliders, SF_ColorPicker.styles.sliderToggle, EditorStyles.foldout, new GUILayoutOption[0] ); - GUI.enabled = this.m_ShowSliders; - if( GUILayout.Button( SF_ColorPicker.styles.sliderCycle, GUIStyle.none, new GUILayoutOption[] - { - GUILayout.ExpandWidth(false) - } ) ) { - this.m_SliderMode = ( this.m_SliderMode + 1 ) % (SF_ColorPicker.SliderMode)2; - GUI.changed = true; - } - GUI.enabled = true; - GUILayout.EndHorizontal(); - if( this.m_ShowSliders ) { - SF_ColorPicker.SliderMode sliderMode = this.m_SliderMode; - if( sliderMode != SF_ColorPicker.SliderMode.RGB ) { - if( sliderMode == SF_ColorPicker.SliderMode.HSV ) { - this.HSVSliders(); - } - } else { - this.RGBSliders(); - } - if( this.m_ShowAlpha ) { - this.m_AlphaTexture = SF_ColorPicker.Update1DSlider( this.m_AlphaTexture, 8, 0f, 0f, ref this.m_OldAlpha, ref this.m_OldAlpha, 3, false ); - this.m_A = this.TexturedSlider( this.m_AlphaTexture, "A", Mathf.Round( this.m_A * 255f ), 0f, 255f ) / 255f; - } - } - } - private void DoPresetsGUI() { - GUILayout.BeginHorizontal( new GUILayoutOption[0] ); - EditorGUI.BeginChangeCheck(); - this.m_ShowPresets = GUILayout.Toggle( this.m_ShowPresets, SF_ColorPicker.styles.presetsToggle, EditorStyles.foldout, new GUILayoutOption[0] ); - if( EditorGUI.EndChangeCheck() ) { - EditorPrefs.SetInt( "CPPresetsShow", ( !this.m_ShowPresets ) ? 0 : 1 ); - } - GUILayout.Space( 17f ); - GUILayout.EndHorizontal(); - if( this.m_ShowPresets ) { - GUILayout.Space( -18f ); - Rect rect = GUILayoutUtility.GetRect( 0f, Mathf.Clamp( this.m_ColorLibraryEditor.contentHeight, 40f, 250f ) ); - this.m_ColorLibraryEditor.OnGUI( rect, this.m_Color ); - } - } - private void OnGUI() { - this.InitIfNeeded(); - if( this.m_resetKeyboardControl ) { - GUIUtility.keyboardControl = 0; - this.m_resetKeyboardControl = false; - } - EventType type = Event.current.type; - if( type == EventType.ExecuteCommand ) { - string commandName = Event.current.commandName; - switch( commandName ) { - case "EyeDropperUpdate": - base.Repaint(); - break; - case "EyeDropperClicked": { - Color lastPickedColor = EyeDropper.GetLastPickedColor(); - this.m_R = lastPickedColor.r; - this.m_G = lastPickedColor.g; - this.m_B = lastPickedColor.b; - this.RGBToHSV(); - this.m_ColorBoxMode = this.m_OldColorBoxMode; - this.m_Color = new Color( this.m_R, this.m_G, this.m_B, this.m_A ); - this.SendEvent( true ); - break; - } - case "EyeDropperCancelled": - base.Repaint(); - this.m_ColorBoxMode = this.m_OldColorBoxMode; - break; - } - } - EditorGUIUtility.LookLikeControls( 15f, 30f ); - Rect rect = EditorGUILayout.BeginVertical( SF_ColorPicker.styles.background, new GUILayoutOption[0] ); - EditorGUI.BeginChangeCheck(); - this.DoColorSwatchAndEyedropper(); - GUILayout.Space( 10f ); - this.DoColorSpaceGUI(); - GUILayout.Space( 10f ); - this.DoColorSliders(); - GUILayout.Space( 10f ); - if( EditorGUI.EndChangeCheck() ) { - this.colorChanged = true; - } - this.DoPresetsGUI(); - GUILayout.Space( 10f ); - if( this.colorChanged ) { - EditorPrefs.SetInt( "CPSliderShow", ( !this.m_ShowSliders ) ? 0 : 1 ); - EditorPrefs.SetInt( "CPSliderMode", (int)this.m_SliderMode ); - EditorPrefs.SetInt( "CPColorShow", ( !this.m_ShowColors ) ? 0 : 1 ); - EditorPrefs.SetInt( "CPColorMode", (int)this.m_ColorBoxMode ); - } - if( this.colorChanged ) { - this.colorChanged = false; - this.m_Color = new Color( this.m_R, this.m_G, this.m_B, this.m_A ); - this.SendEvent( true ); - } - EditorGUILayout.EndVertical(); - if( rect.height > 0f ) { - this.SetHeight( rect.height ); - } - if( Event.current.type == EventType.KeyDown ) { - KeyCode keyCode = Event.current.keyCode; - if( keyCode != KeyCode.Return ) { - if( keyCode == KeyCode.Escape ) { - this.m_Color = this.m_OriginalColor; - this.SendEvent( false ); - base.Close(); - GUIUtility.ExitGUI(); - return; - } - if( keyCode != KeyCode.KeypadEnter ) { - return; - } - } - base.Close(); - } - } - private void SetHeight( float newHeight ) { - if( newHeight == base.position.height ) { - return; - } - base.minSize = new Vector2( 193f, newHeight ); - base.maxSize = new Vector2( 193f, newHeight ); - } - private void Slider3D( Rect boxPos, Rect sliderPos, ref float x, ref float y, ref float z, GUIStyle box, GUIStyle thumb2D, GUIStyle thumbHoriz ) { - Rect colorBoxRect = boxPos; - colorBoxRect.x += 1f; - colorBoxRect.y += 1f; - colorBoxRect.width -= 2f; - colorBoxRect.height -= 2f; - this.DrawColorSpaceBox( colorBoxRect, z ); - Vector2 value = new Vector2( x, 1f - y ); - value = this.Slider2D( boxPos, value, new Vector2( 0f, 0f ), new Vector2( 1f, 1f ), box, thumb2D ); - x = value.x; - y = 1f - value.y; - Rect colorSliderRect = new Rect( sliderPos.x + 1f, sliderPos.y + 1f, sliderPos.width - 2f, sliderPos.height - 2f ); - this.DrawColorSlider( colorSliderRect, new Vector2( x, y ) ); - z = GUI.VerticalSlider( sliderPos, z, 1f, 0f, box, thumbHoriz ); - } - private void SendEvent( bool exitGUI ) { - if( this.m_DelegateView ) { - Event e = EditorGUIUtility.CommandEvent( "ColorPickerChanged" ); - if( !this.m_IsOSColorPicker ) { - base.Repaint(); - } - this.m_DelegateView.SendEvent( e ); - if( !this.m_IsOSColorPicker && exitGUI ) { - GUIUtility.ExitGUI(); - } - } - } - public void SetColor( Color c ) { - if( this.m_IsOSColorPicker ) { - OSColorPicker.color = c; - } else { - if( this.m_Color.r == c.r && this.m_Color.g == c.g && this.m_Color.b == c.b && this.m_Color.a == c.a ) { - return; - } - this.m_resetKeyboardControl = true; - this.m_Color = c; - this.m_R = c.r; - this.m_G = c.g; - this.m_B = c.b; - this.RGBToHSV(); - this.m_A = c.a; - base.Repaint(); - } - } - public static void Show( GUIView viewToUpdate, Color col ) { - SF_ColorPicker.Show( viewToUpdate, col, true ); - } - public static void Show( GUIView viewToUpdate, Color col, bool showAlpha ) { - SF_ColorPicker.get.m_DelegateView = viewToUpdate; - SF_ColorPicker.color = col; - SF_ColorPicker.get.m_OriginalColor = col; - SF_ColorPicker.get.m_ShowAlpha = showAlpha; - if( SF_ColorPicker.get.m_IsOSColorPicker ) { - OSColorPicker.Show( showAlpha ); - } else { - SF_ColorPicker get = SF_ColorPicker.get; - get.title = "Color"; - float x = (float)EditorPrefs.GetInt( "CPickerWidth", (int)get.position.width ); - float y = (float)EditorPrefs.GetInt( "CPickerHeight", (int)get.position.height ); - get.minSize = new Vector2( x, y ); - get.maxSize = new Vector2( x, y ); - get.ShowAuxWindow(); - } - } - private void PollOSColorPicker() { - if( this.m_IsOSColorPicker ) { - if( !OSColorPicker.visible || Application.platform != RuntimePlatform.OSXEditor ) { - UnityEngine.Object.DestroyImmediate( this ); - } else { - Color color = OSColorPicker.color; - if( this.m_Color != color ) { - this.m_Color = color; - this.SendEvent( true ); - } - } - } - } - public void OnDestroy() { - if( this.m_ColorSlider ) { - UnityEngine.Object.DestroyImmediate( this.m_ColorSlider ); - } - if( this.m_ColorBox ) { - UnityEngine.Object.DestroyImmediate( this.m_ColorBox ); - } - if( this.m_RTexture ) { - UnityEngine.Object.DestroyImmediate( this.m_RTexture ); - } - if( this.m_GTexture ) { - UnityEngine.Object.DestroyImmediate( this.m_GTexture ); - } - if( this.m_BTexture ) { - UnityEngine.Object.DestroyImmediate( this.m_BTexture ); - } - if( this.m_HueTexture ) { - UnityEngine.Object.DestroyImmediate( this.m_HueTexture ); - } - if( this.m_SatTexture ) { - UnityEngine.Object.DestroyImmediate( this.m_SatTexture ); - } - if( this.m_ValTexture ) { - UnityEngine.Object.DestroyImmediate( this.m_ValTexture ); - } - if( this.m_AlphaTexture ) { - UnityEngine.Object.DestroyImmediate( this.m_AlphaTexture ); - } - ColorPicker.s_SharedColorPicker = null; - if( this.m_IsOSColorPicker ) { - OSColorPicker.Close(); - } - EditorApplication.update = (EditorApplication.CallbackFunction)Delegate.Remove( EditorApplication.update, new EditorApplication.CallbackFunction( this.PollOSColorPicker ) ); - if( this.m_ColorLibraryEditorState != null ) { - this.m_ColorLibraryEditorState.TransferEditorPrefsState( false ); - } - this.m_ColorLibraryEditor.UnloadUsedLibraries(); - EditorPrefs.SetInt( "CPickerWidth", (int)base.position.width ); - EditorPrefs.SetInt( "CPickerHeight", (int)base.position.height ); - } - } -} -*/ \ No newline at end of file diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Utility/SF_ColorPicker.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/_Utility/SF_ColorPicker.cs.meta deleted file mode 100755 index 19902f24..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/_Utility/SF_ColorPicker.cs.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: 58e7b6eb98a25e6459f959ec5d0ed3bd -MonoImporter: - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Utility/SF_Debug.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/_Utility/SF_Debug.cs deleted file mode 100755 index 7d841bed..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/_Utility/SF_Debug.cs +++ /dev/null @@ -1,23 +0,0 @@ -using UnityEngine; -using System.Collections; -using System.Collections.Generic; - -namespace ShaderForge{ - - public static class SF_Debug { - - public static bool nodes = false; - public static bool window = false; - public static bool evalFlow = false; - public static bool screenshot = false; - public static bool ghostNodes = false; - public static bool nodeActions = false; - public static bool performance = false; - public static bool nodePreviews = false; - public static bool dynamicNodeLoad = false; - public static bool deserialization = false; - public static bool renderDataNodes = false; - - } - -} \ No newline at end of file diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Utility/SF_Debug.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/_Utility/SF_Debug.cs.meta deleted file mode 100755 index 2e6b5468..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/_Utility/SF_Debug.cs.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: 193f27cce31804ce9bc01ff6947651da -MonoImporter: - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Utility/SF_DraggableSeparator.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/_Utility/SF_DraggableSeparator.cs deleted file mode 100755 index 12147039..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/_Utility/SF_DraggableSeparator.cs +++ /dev/null @@ -1,102 +0,0 @@ -using UnityEngine; -using UnityEditor; -using System.Collections; - -namespace ShaderForge { - [System.Serializable] - public class SF_DraggableSeparator : ScriptableObject { - - - [SerializeField] - public bool dragging = false; - - [SerializeField] - public Rect rect; - - [SerializeField] - public bool initialized = false; - - public void OnEnable() { - base.hideFlags = HideFlags.HideAndDontSave; - } - - [SerializeField] - int minX; - public int MinX { - get { - return minX; - } - set { - minX = value; - ClampX(); - } - } - - [SerializeField] - int maxX; - public int MaxX { - get { - return maxX; - } - set { - maxX = value; - ClampX(); - } - } - - public void Draw( int yPos, int height ) { - - rect.y = yPos; - rect.height = height; - rect.width = 7; - - GUI.Box( rect, "", EditorStyles.textField ); - Rect rHandle = new Rect( rect ); - rHandle.xMin += 0; - rHandle.xMax -= 0; - Rect uv = new Rect( rect ); - uv.x = 0; - uv.y = 0; - uv.width = 1; - uv.height /= SF_GUI.Handle_drag.height; - GUI.DrawTextureWithTexCoords( rHandle, SF_GUI.Handle_drag, uv ); - - if( rect.Contains( Event.current.mousePosition ) || dragging ) { - SF_GUI.AssignCursor( rect, MouseCursor.ResizeHorizontal ); - } - - if(Event.current.isMouse){ - - if( SF_GUI.ReleasedRawLMB() ) { - StopDrag(); - } - if( dragging ) { - UpdateDrag(); - } - if( SF_GUI.PressedLMB( rect ) ) { - StartDrag(); - } - } - } - - - void ClampX(){ - rect.x = Mathf.Clamp( rect.x, minX, maxX ); - } - int startDragOffset = 0; - void StartDrag() { - dragging = true; - startDragOffset = (int)(Event.current.mousePosition.x - rect.x); - } - void UpdateDrag() { - rect.x = Event.current.mousePosition.x - startDragOffset; - ClampX(); - } - void StopDrag() { - dragging = false; - } - - - } -} - diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Utility/SF_DraggableSeparator.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/_Utility/SF_DraggableSeparator.cs.meta deleted file mode 100755 index c0eefbb1..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/_Utility/SF_DraggableSeparator.cs.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: dd68a761edae39b44918ba61f5f84440 -MonoImporter: - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Utility/SF_Extensions.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/_Utility/SF_Extensions.cs deleted file mode 100644 index a31592e8..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/_Utility/SF_Extensions.cs +++ /dev/null @@ -1,531 +0,0 @@ -using UnityEngine; -using UnityEditor; -using System.Collections; -using System.Collections.Generic; - -namespace ShaderForge{ - - public enum RectBorder{ - TopLeft, Top, TopRight, - Left, Center, Right, - BottomLeft, Bottom, BottomRight - } - - public static class SF_Extensions { - - - public static bool GetBit( this int value, int bit ){ - return ( ( 1 << bit ) & value ) == ( 1 << bit ); - } - - public static int SetBit( this int value, int bit, bool bitValue ) { - if(bitValue) - return value | ( 1 << bit ); - else - return value & ~( 1 << bit ); - } - - public static string ToColorMaskString( this int value ) { - // Indexed in reverse order - // A = 0, B = 1, G = 2, R = 3 - string s = ""; - if( value.GetBit( 0 ) ) - s = "A"; - if( value.GetBit( 1 ) ) - s = "B" + s; - if( value.GetBit( 2 ) ) - s = "G" + s; - if( value.GetBit( 3 ) ) - s = "R" + s; - if( s == "" ) - s = "0"; - return s; - } - - - public static float Average(this float[] floats){ - - if(floats == null) - return 0f; - if(floats.Length == 0) - return 0f; - if(floats.Length == 1) - return floats[0]; - - float avg = 0f; - for(int i=0;i(this List list, T obj){ - if(!list.Contains(obj)){ - list.Add(obj); - return true; - } - return false; - } - - - - // RECT CLASS - //----------- - - public static Rect MovedDown(this Rect r, int count = 1){ - for (int i = 0; i < count; i++) { - r.y += r.height; - } - return r; - } - public static Rect MovedUp(this Rect r, int count = 1){ - for (int i = 0; i < count; i++) { - r.y -= r.height; - } - return r; - } - public static Rect MovedRight(this Rect r, int count = 1){ - for (int i = 0; i < count; i++) { - r.x += r.width; - } - return r; - } - public static Rect MovedLeft(this Rect r, int count = 1){ - for (int i = 0; i < count; i++) { - r.x -= r.width; - } - return r; - } - - - public static Rect PadBottom(this Rect r, int pixels ){ - r.yMax -= pixels; - return r; - } - - public static Rect PadTop(this Rect r, int pixels ){ - r.yMin += pixels; - return r; - } - - public static Rect PadRight(this Rect r, int pixels ){ - r.xMax -= pixels; - return r; - } - - public static Rect PadLeft(this Rect r, int pixels ){ - r.xMin += pixels; - return r; - } - - public static Rect PadHorizontal(this Rect r, int pixels ){ - return r.PadLeft(pixels).PadRight(pixels); - } - - public static Rect PadVertical(this Rect r, int pixels ){ - return r.PadTop(pixels).PadBottom(pixels); - } - - public static Rect[] SplitHorizontal(this Rect r, float t, int padding = 0){ - return new Rect[2]{ - r.PadRight(Mathf.RoundToInt(r.width*(1f-t))).Pad(padding).PadRight(-Mathf.CeilToInt(padding/2f)), - r.PadLeft(Mathf.RoundToInt(r.width*t)).Pad(padding).PadLeft(-Mathf.FloorToInt(padding/2f)) - }; - } - public static Rect[] SplitVertical(this Rect r, float t, int padding = 0){ - return new Rect[2]{ - r.PadBottom(Mathf.RoundToInt(r.height*(1f-t))).Pad(padding).PadBottom(-Mathf.CeilToInt(padding/2f)), - r.PadTop(Mathf.RoundToInt(r.height*t)).Pad(padding).PadTop(-Mathf.FloorToInt(padding/2f)) - }; - } - public static Rect[] SplitFromLeft(this Rect r, int width, int padding = 0){ - return new Rect[2]{ - r.PadRight((int)(r.width-width)).Pad(padding).PadRight(-Mathf.CeilToInt(padding/2f)), - r.PadLeft(width).Pad(padding).PadLeft(-Mathf.FloorToInt(padding/2f)) - }; - } - - - public static Rect ClampWidth(this Rect r, int min, int max){ - r.width = Mathf.Clamp(r.width, min, max); - return r; - } - public static Rect ClampHeight(this Rect r, int min, int max){ - r.height = Mathf.Clamp(r.height, min, max); - return r; - } - public static Rect ClampSize(this Rect r, int min, int max){ - return r.ClampWidth(min,max).ClampHeight(min,max); - } - public static Rect ClampMinSize(this Rect r, int width, int height){ - if(r.width < width) - r.width = width; - if(r.height < height) - r.height = height; - return r; - } - public static Rect ClampMaxSize(this Rect r, int width, int height){ - if(r.width > width) - r.width = width; - if(r.height > height) - r.height = height; - return r; - } - public static Rect ClampMinSize(this Rect r, int size){ - if(r.width < size) - r.width = size; - if(r.height < size) - r.height = size; - return r; - } - public static Rect ClampMaxSize(this Rect r, int size){ - if(r.width > size) - r.width = size; - if(r.height > size) - r.height = size; - return r; - } - - public static Vector2 TopLeft(this Rect r){ - return new Vector2(r.x, r.y); - } - - public static Vector2 TopRight(this Rect r){ - return new Vector2(r.xMax, r.y); - } - - public static Vector2 BottomRight(this Rect r){ - return new Vector2(r.xMax, r.yMax); - } - - public static Vector2 BottomLeft(this Rect r){ - return new Vector2(r.x, r.yMax); - } - - - public static Rect Margin(this Rect r, int pixels){ - r.xMax += pixels; - r.xMin -= pixels; - r.yMax += pixels; - r.yMin -= pixels; - return r; - } - - public static Rect Pad(this Rect r, int pixels){ - return r.Margin(-pixels); - } - - public static Rect Lerp(this Rect r, Rect a, Rect b, float t ){ - r.x = Mathf.Lerp(a.x,b.x,t); - r.y = Mathf.Lerp(a.y,b.y,t); - r.width = Mathf.Lerp(a.width,b.width,t); - r.height = Mathf.Lerp(a.height,b.height,t); - return r; - } - - - - public static Rect ScaleSizeBy(this Rect rect, float scale){ - return rect.ScaleSizeBy(scale, rect.center); - } - public static Rect ScaleSizeBy(this Rect rect, float scale, Vector2 pivotPoint){ - Rect result = rect; - result.x -= pivotPoint.x; - result.y -= pivotPoint.y; - result.xMin *= scale; - result.xMax *= scale; - result.yMin *= scale; - result.yMax *= scale; - result.x += pivotPoint.x; - result.y += pivotPoint.y; - - return result; - } - - - public static Rect GetBorder(this Rect r, RectBorder border, int size, bool showResizeCursor = false){ - Rect retRect = r; - - // Dimensions - if(border == RectBorder.Left || border == RectBorder.Right) - retRect.height = r.height-size*2; - else - retRect.height = size; - - if(border == RectBorder.Top || border == RectBorder.Bottom) - retRect.width = r.width-size*2; - else - retRect.width = size; - - // Position - if(border == RectBorder.Left || border == RectBorder.Center || border == RectBorder.Right) - retRect.y += size; - if(border == RectBorder.BottomLeft || border == RectBorder.Bottom || border == RectBorder.BottomRight) - retRect.y += r.height-size; - - if(border == RectBorder.Top || border == RectBorder.Center || border == RectBorder.Bottom) - retRect.x += size; - if(border == RectBorder.TopRight || border == RectBorder.Right || border == RectBorder.BottomRight) - retRect.x += r.width-size; - - - if(showResizeCursor){ - - MouseCursor cursor; - - if(border == RectBorder.Top || border == RectBorder.Bottom) - cursor = MouseCursor.ResizeVertical; - else if(border == RectBorder.Left || border == RectBorder.Right) - cursor = MouseCursor.ResizeHorizontal; - else if(border == RectBorder.TopLeft || border == RectBorder.BottomRight) - cursor = MouseCursor.ResizeUpLeft; - else if(border == RectBorder.BottomLeft || border == RectBorder.TopRight) - cursor = MouseCursor.ResizeUpRight; - else - cursor = MouseCursor.MoveArrow; - - SF_GUI.AssignCursor(retRect,cursor); - - - } - - return retRect; - - } - - - - - - public static float ManhattanDistanceToPoint(this Rect r, Vector2 point){ - - if(r.Contains(point)){ - return 0f; - } - - Vector2 clampedPoint = new Vector2( - Mathf.Clamp(point.x, r.xMin, r.xMax), - Mathf.Clamp(point.y, r.yMin, r.yMax) - ); - - return ChebyshevDistance(clampedPoint, point); - - - } - - public static float ChebyshevDistance(Vector2 a, Vector2 b){ - return Mathf.Max(Mathf.Abs(a.x-b.x),Mathf.Abs(a.y-b.y)); - } - - public static float ManhattanDistance(Vector2 a, Vector2 b){ - return Mathf.Abs(a.x-b.x)+Mathf.Abs(a.y-b.y); - } - - - public static float ShortestManhattanDistanceToRects(this Vector2 point, Rect[] rects){ - - float shortest = float.MaxValue; - - for (int i = 0; i < rects.Length; i++) { - shortest = Mathf.Min (shortest, rects[i].ManhattanDistanceToPoint(point)); - } - - return shortest; - - } - - - public static float ShortestChebyshevDistanceToPoints(this Vector2 point, Vector2[] points){ - - float shortest = float.MaxValue; - - for (int i = 0; i < points.Length; i++) { - shortest = Mathf.Min (shortest, ManhattanDistance(point, points[i]) ); - } - - return shortest; - - - } - - - - - public static string ToCgMatrix( this Matrix4x4 mtx ) { - string s = "{\n"; - s += " {" + mtx[0, 0] + "," + mtx[0, 1] + "," + mtx[0, 2] + "," + mtx[0, 3] + "},\n"; - s += " {" + mtx[1, 0] + "," + mtx[1, 1] + "," + mtx[1, 2] + "," + mtx[1, 3] + "},\n"; - s += " {" + mtx[2, 0] + "," + mtx[2, 1] + "," + mtx[2, 2] + "," + mtx[2, 3] + "},\n"; - s += " {" + mtx[3, 0] + "," + mtx[3, 1] + "," + mtx[3, 2] + "," + mtx[3, 3] + "}\n}"; - return s; - } - - public static string SerializeToCSV( this Matrix4x4 mtx ) { - string s = ""; - s += "m00:" + mtx[0, 0] + ","; - s += "m01:" + mtx[0, 1] + ","; - s += "m02:" + mtx[0, 2] + ","; - s += "m03:" + mtx[0, 3] + ","; - s += "m10:" + mtx[1, 0] + ","; - s += "m11:" + mtx[1, 1] + ","; - s += "m12:" + mtx[1, 2] + ","; - s += "m13:" + mtx[1, 3] + ","; - s += "m20:" + mtx[2, 0] + ","; - s += "m21:" + mtx[2, 1] + ","; - s += "m22:" + mtx[2, 2] + ","; - s += "m23:" + mtx[2, 3] + ","; - s += "m30:" + mtx[3, 0] + ","; - s += "m31:" + mtx[3, 1] + ","; - s += "m32:" + mtx[3, 2] + ","; - s += "m33:" + mtx[3, 3]; - return s; - } - - public static Matrix4x4 DeserializeKeyValue( this Matrix4x4 mtx, string key, string value ) { - switch( key ) { - case "m00": - mtx[0, 0] = float.Parse( value ); - break; - case "m01": - mtx[0, 1] = float.Parse( value ); - break; - case "m02": - mtx[0, 2] = float.Parse( value ); - break; - case "m03": - mtx[0, 3] = float.Parse( value ); - break; - - case "m10": - mtx[1, 0] = float.Parse( value ); - break; - case "m11": - mtx[1, 1] = float.Parse( value ); - break; - case "m12": - mtx[1, 2] = float.Parse( value ); - break; - case "m13": - mtx[1, 3] = float.Parse( value ); - break; - - case "m20": - mtx[2, 0] = float.Parse( value ); - break; - case "m21": - mtx[2, 1] = float.Parse( value ); - break; - case "m22": - mtx[2, 2] = float.Parse( value ); - break; - case "m23": - mtx[2, 3] = float.Parse( value ); - break; - - case "m30": - mtx[3, 0] = float.Parse( value ); - break; - case "m31": - mtx[3, 1] = float.Parse( value ); - break; - case "m32": - mtx[3, 2] = float.Parse( value ); - break; - case "m33": - mtx[3, 3] = float.Parse( value ); - break; - } - return mtx; - } - - - - - - public static Vector2 xx( this Vector4 v ) { - return new Vector2( v.x, v.x ); - } - public static Vector2 xy( this Vector4 v ) { - return new Vector2( v.x, v.y ); - } - public static Vector2 xz( this Vector4 v ) { - return new Vector2( v.x, v.z ); - } - public static Vector2 xw( this Vector4 v ) { - return new Vector2( v.x, v.w ); - } - public static Vector2 yx( this Vector4 v ) { - return new Vector2( v.y, v.x ); - } - public static Vector2 yy( this Vector4 v ) { - return new Vector2( v.y, v.y ); - } - public static Vector2 yz( this Vector4 v ) { - return new Vector2( v.y, v.z ); - } - public static Vector2 yw( this Vector4 v ) { - return new Vector2( v.y, v.w ); - } - public static Vector2 zx( this Vector4 v ) { - return new Vector2( v.z, v.x ); - } - public static Vector2 zy( this Vector4 v ) { - return new Vector2( v.z, v.y ); - } - public static Vector2 zz( this Vector4 v ) { - return new Vector2( v.z, v.z ); - } - public static Vector2 zw( this Vector4 v ) { - return new Vector2( v.z, v.w ); - } - public static Vector2 wx( this Vector4 v ) { - return new Vector2( v.w, v.x ); - } - public static Vector2 wy( this Vector4 v ) { - return new Vector2( v.w, v.y ); - } - public static Vector2 wz( this Vector4 v ) { - return new Vector2( v.w, v.z ); - } - public static Vector2 ww( this Vector4 v ) { - return new Vector2( v.w, v.w ); - } - - // Do the rest as needed - public static Vector3 xyw( this Vector4 v ) { - return new Vector3( v.x, v.y, v.w ); - } - public static Vector3 yzx( this Vector4 v ) { - return new Vector3( v.y, v.z, v.x ); - } - - - - - - - - } - -} \ No newline at end of file diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Utility/SF_Extensions.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/_Utility/SF_Extensions.cs.meta deleted file mode 100644 index 505a53f7..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/_Utility/SF_Extensions.cs.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: a985ed724d90c4d4dab68acab8a7817d -MonoImporter: - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Utility/SF_GUI.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/_Utility/SF_GUI.cs deleted file mode 100755 index 093c2f7f..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/_Utility/SF_GUI.cs +++ /dev/null @@ -1,718 +0,0 @@ -using UnityEngine; -using UnityEditor; -using System.Collections; -using System.Reflection; -using System; -using System.Linq; - -namespace ShaderForge { - - public static class SF_GUI { - - - - - - static Matrix4x4 prevMatrix; - - public static Color[] outdatedStateColors = new Color[]{ - new Color(0.7f, 1f, 0.7f), - new Color(1f, 1f, 0.7f), - new Color(1f,0.7f,0.7f) - }; - - - public static void DrawLock(Rect r, string tooltip = null, TextAlignment align = TextAlignment.Right){ - if(Event.current.type != EventType.repaint) - return; - - Color pCol = GUI.color; - GUI.color = Color.white; - SF_Styles.IconLock.Draw(r, false, true, true, false); - - if(tooltip != null && r.Contains(Event.current.mousePosition) ){ - - GUIStyle style = EditorStyles.miniButton; - - r.width = style.CalcSize(new GUIContent(tooltip)).x + 8; - r.height = style.CalcSize(new GUIContent(tooltip)).y + 4; - - r = r.MovedUp(); - - if(align == TextAlignment.Left){ - r.x = (r.MovedLeft().x + r.x)/2f; - } - - - GUI.color = new Color(1f,1f,1f,0.8f); - GUI.Box(r, tooltip, style); - - } - - GUI.color = pCol; - - - } - - private static Texture2D LoadTexture(string path, string name){ - - //AssetDatabase.LoadAssetAtPath( - - return SF_Resources.Load(path+name); - - //return (Texture2D)Resources.Load(path + name, typeof(Texture2D) ); // TODO: This has to change into something that's not using resources - } - - - private static Texture2D vectorIconOverlay; - public static Texture2D VectorIconOverlay{ - get{ - if( vectorIconOverlay == null ) - vectorIconOverlay = SF_Resources.LoadNodeIcon("Data/node_3d_data_mask"); - return vectorIconOverlay; - } - } - - - private static Texture2D handle_drag; - public static Texture2D Handle_drag { - get { - if( handle_drag == null ) - handle_drag = SF_Resources.LoadInterfaceIcon("handle_drag"); - return handle_drag; - } - } - - - - private static Texture2D logo; - public static Texture2D Logo { - get { - if( logo == null ) - logo = SF_Resources.LoadInterfaceIcon( SkinSuffix("logo") ); - return logo; - } - } - - private static Texture2D icon; - public static Texture2D Icon { - get { - if( icon == null ) - icon = SF_Resources.LoadInterfaceIcon( SkinSuffix( "icon" ) ); - return icon; - } - } - - private static Texture2D toggle_check_icon; - public static Texture2D Toggle_check_icon { - get { - if( toggle_check_icon == null ) - toggle_check_icon = SF_Resources.LoadInterfaceIcon( SkinSuffix( "chk" ) ); - return toggle_check_icon; - } - } - - private static Texture2D screenshot_icon; - public static Texture2D Screenshot_icon { - get { - if( screenshot_icon == null ) - screenshot_icon = SF_Resources.LoadInterfaceIcon( SkinSuffix( "screenshot_icon" ) ); - return screenshot_icon; - } - } - - - - - - - private static Texture2D shader_preset_icon_custom; - public static Texture2D Shader_preset_icon_custom { - get { - if( shader_preset_icon_custom == null ) - shader_preset_icon_custom = SF_Resources.LoadInterfaceIcon( "preset_custom" ); - return shader_preset_icon_custom; - } - } - - private static Texture2D shader_preset_icon_litbasic; - public static Texture2D Shader_preset_icon_litbasic { - get { - if( shader_preset_icon_litbasic == null ) - shader_preset_icon_litbasic = SF_Resources.LoadInterfaceIcon( "preset_litbasic" ); - return shader_preset_icon_litbasic; - } - } - - private static Texture2D shader_preset_icon_litpbr; - public static Texture2D Shader_preset_icon_litpbr { - get { - if( shader_preset_icon_litpbr == null ) - shader_preset_icon_litpbr = SF_Resources.LoadInterfaceIcon( "preset_litpbr" ); - return shader_preset_icon_litpbr; - } - } - - private static Texture2D shader_preset_icon_particleadditive; - public static Texture2D Shader_preset_icon_particleadditive { - get { - if( shader_preset_icon_particleadditive == null ) - shader_preset_icon_particleadditive = SF_Resources.LoadInterfaceIcon( SkinSuffix("preset_particleadditive") ); - return shader_preset_icon_particleadditive; - } - } - - private static Texture2D shader_preset_icon_particlealphablended; - public static Texture2D Shader_preset_icon_particlealphablended { - get { - if( shader_preset_icon_particlealphablended == null ) - shader_preset_icon_particlealphablended = SF_Resources.LoadInterfaceIcon( SkinSuffix("preset_particlealphablended") ); - return shader_preset_icon_particlealphablended; - } - } - - private static Texture2D shader_preset_icon_particlemultiplicative; - public static Texture2D Shader_preset_icon_particlemultiplicative { - get { - if( shader_preset_icon_particlemultiplicative == null ) - shader_preset_icon_particlemultiplicative = SF_Resources.LoadInterfaceIcon( SkinSuffix("preset_particlemultiplicative") ); - return shader_preset_icon_particlemultiplicative; - } - } - - private static Texture2D shader_preset_icon_sky; - public static Texture2D Shader_preset_icon_sky { - get { - if( shader_preset_icon_sky == null ) - shader_preset_icon_sky = SF_Resources.LoadInterfaceIcon( "preset_sky" ); - return shader_preset_icon_sky; - } - } - - private static Texture2D shader_preset_icon_sprite; - public static Texture2D Shader_preset_icon_sprite { - get { - if( shader_preset_icon_sprite == null ) - shader_preset_icon_sprite = SF_Resources.LoadInterfaceIcon( "preset_sprite" ); - return shader_preset_icon_sprite; - } - } - - private static Texture2D shader_preset_icon_unlit; - public static Texture2D Shader_preset_icon_unlit { - get { - if( shader_preset_icon_unlit == null ) - shader_preset_icon_unlit = SF_Resources.LoadInterfaceIcon( "preset_unlit" ); - return shader_preset_icon_unlit; - } - } - - private static Texture2D shader_preset_icon_highlight; - public static Texture2D Shader_preset_icon_highlight { - get { - if( shader_preset_icon_highlight == null ) - shader_preset_icon_highlight = SF_Resources.LoadInterfaceIcon( "preset_highlight" ); - return shader_preset_icon_highlight; - } - } - - private static Texture2D shader_preset_icon_posteffect; - public static Texture2D Shader_preset_icon_posteffect { - get { - if( shader_preset_icon_posteffect == null ) - shader_preset_icon_posteffect = SF_Resources.LoadInterfaceIcon( "preset_posteffect" ); - return shader_preset_icon_posteffect; - } - } - - - - - - - private static Texture2D inst_vert; - public static Texture2D Inst_vert { - get { - if( inst_vert == null ) - inst_vert = SF_Resources.LoadInterfaceIcon( SkinSuffix( "inst_vert" ) ); - return inst_vert; - } - } - - private static Texture2D inst_vert_tex; - public static Texture2D Inst_vert_tex { - get { - if( inst_vert_tex == null ) - inst_vert_tex = SF_Resources.LoadInterfaceIcon( SkinSuffix( "inst_vert_tex" ) ); - return inst_vert_tex; - } - } - - private static Texture2D inst_frag; - public static Texture2D Inst_frag { - get { - if( inst_frag == null ) - inst_frag = SF_Resources.LoadInterfaceIcon( SkinSuffix("inst_frag" ) ); - return inst_frag; - } - } - - private static Texture2D inst_frag_tex; - public static Texture2D Inst_frag_tex { - get { - if( inst_frag_tex == null ) - inst_frag_tex = SF_Resources.LoadInterfaceIcon( SkinSuffix( "inst_frag_tex" ) ); - return inst_frag_tex; - } - } - - public static void DrawTextureTiled(Rect r, Texture2D tex, bool local = true){ - Rect tCoords = new Rect( - local ? 0 : (float)r.x/(float)tex.width, - local ? 0 : (float)r.y/(float)tex.height, - (float)r.width/(float)tex.width, - (float)r.height/(float)tex.height - ); - GUI.DrawTextureWithTexCoords(r,tex,tCoords); - } - - - public static string SkinSuffix(string s) { - return s + ( SF_GUI.ProSkin ? "" : "_light" ); - } - - - /* - public static void StartZoomPanel( float zoom, Rect rect ) { - float zoomInv = 1f / zoom; - - GUI.EndGroup(); // Leave parent group to avoid clipping issues - Rect clippedArea = rect.ScaleSizeBy( zoomInv, rect.TopLeft() ); - - //clippedArea.x -= clippedArea.width * zoomInv * 0.25f; - //clippedArea.y -= clippedArea.height * zoomInv * 0.25f; - clippedArea.width *= zoom; - clippedArea.height *= zoom; - clippedArea.y += GetEditorTabHeight(); - GUI.BeginGroup( clippedArea, EditorStyles.numberField ); - - prevMatrix = GUI.matrix; - Matrix4x4 Translation = Matrix4x4.TRS( new Vector3( clippedArea.x, clippedArea.y, 0 ), Quaternion.identity, Vector3.one ); - Matrix4x4 Scale = Matrix4x4.Scale( new Vector3( zoom, zoom, zoom ) ); - GUI.matrix = Translation * Scale * Translation.inverse * GUI.matrix; - } - - public static void EndZoomPanel() { - GUI.matrix = prevMatrix; - GUI.EndGroup(); - GUI.BeginGroup( new Rect( 0.0f, GetEditorTabHeight(), Screen.width, Screen.height ) ); // Remake parent - } - * */ - - - public static bool AcceptedNewShaderReplaceDialog() { - return EditorUtility.DisplayDialog( "Delete existing shader?", "This shader was not created in Shader Forge. Are you sure you want to remove all existing shader data and open it in Shader Forge?", "Yes", "Cancel" ); - } - - - - public static int GetEditorTabHeight() { - return 21; // TODO: This is correct when docked, not floating - } - - public static void AssignCursorForPreviousRect( MouseCursor cursor ) { - EditorGUIUtility.AddCursorRect( GUILayoutUtility.GetLastRect(), cursor ); - } - - public static void AssignCursor( Rect r, MouseCursor cursor ) { - EditorGUIUtility.AddCursorRect( r, cursor ); - } - - public static bool PressedLMB( Rect r ) { - return ( PressedLMB() && r.Contains(Event.current.mousePosition)); - } - - public static bool PressedLMB() { - return ( Event.current.type == EventType.mouseDown ) && ( Event.current.button == 0 ); - } - - public static bool ReleasedLMB() { - return ( Event.current.type == EventType.mouseUp ) && ( Event.current.button == 0 ); - } - - public static bool PressedMMB() { - return ( Event.current.type == EventType.mouseDown ) && ( Event.current.button == 2 ); - } - - public static bool ReleasedRawMMB() { - return ( Event.current.rawType == EventType.mouseUp ) && ( Event.current.button == 2 ); - } - - public static bool ReleasedRawLMB() { - return ( Event.current.rawType == EventType.mouseUp ) && ( Event.current.button == 0 ); - } - - public static bool ReleasedRawRMB() { - return ( Event.current.rawType == EventType.mouseUp ) && ( Event.current.button == 1 ); - } - - public static bool PressedRMB() { - return ( Event.current.type == EventType.mouseDown ) && ( Event.current.button == 1 ); - } - - public static bool ReleasedRMB() { - return ( Event.current.type == EventType.mouseUp ) && ( Event.current.button == 1 ); - } - - public static bool HoldingAlt() { - return (Event.current.modifiers & EventModifiers.Alt) != 0; // Alt is held - } - - public static bool HoldingBoxSelect() { - return HoldingAlt(); // Alt is held. TODO: Make a toggle for (Alt cam) vs (Alt select) - } - - public static bool HoldingShift() { - return ( Event.current.modifiers & EventModifiers.Shift ) != 0; // Shift is held - } - - public static bool HoldingControl() { - if( Application.platform == RuntimePlatform.OSXEditor ) - return ( Event.current.modifiers & EventModifiers.Command ) != 0; // Command is held - else { - return ( Event.current.control ); // Control is held - } - - } - - public static bool PressedDelete(){ - if(Event.current.type != EventType.keyDown) - return false; - - if(Event.current.keyCode == KeyCode.Delete) // Windows / Mac extended keyboard delete - return true; - - bool holdingCommand = HoldingControl(); - bool pressedBackspace = (Event.current.keyCode == KeyCode.Backspace); - - if(holdingCommand && pressedBackspace) // Mac laptop style delete - return true; - - return false; - - } - - public static bool PressedCameraMove(){ - return ( PressedLMB() || PressedMMB() ); - } - - public static bool ReleasedCameraMove(){ - return ( ReleasedRawLMB() || ReleasedRawMMB() ); - } - - public static bool MultiSelectModifierHeld(){ - return ( HoldingShift() || HoldingControl() ); - } - - public const byte ColBgPro = (byte)56; - public const byte ColBgFree = (byte)194; - public static void UseBackgroundColor() { - byte v = EditorGUIUtility.isProSkin ? ColBgPro : ColBgFree; - GUI.color = new Color32( v, v, v, (byte)255 ); - } - - public static Color selectionColor = new Color32( (byte)41, (byte)123, (byte)194, (byte)255 ); - public static Color selectionColorBright = new Color32( (byte)54, (byte)162, (byte)255, (byte)255 ); - public static Color selectionColorBrighter = new Color32( (byte)175, (byte)218, (byte)255, (byte)255 ); - /* public static Color SelectionColor { - get { - if( selectionColor == null ) - selectionColor - return selectionColor; - } - }*/ - - public static int WidthOf(GUIContent s, GUIStyle style){ - return (int)style.CalcSize( s ).x; - } - - public static int WidthOf( string s, GUIStyle style ) { - return (int)style.CalcSize( new GUIContent(s) ).x; - } - - public static System.Enum LabeledEnumField( Rect r, string label, System.Enum enumVal, GUIStyle style, bool zoomCompensate = false ) { - return LabeledEnumField( r, new GUIContent(label), enumVal, style, zoomCompensate); - } - - public static void MoveRight( ref Rect r, int newWidth ) { - r.x += r.width; - r.width = newWidth; - } - - public static int LabeledEnumFieldNamed( Rect r, string[] names, GUIContent label, int enumVal, GUIStyle style ) { - Rect leftRect = new Rect( r ); - Rect rightRect = new Rect( r ); - int width = WidthOf( label, style ) + 4; - leftRect.width = width; - rightRect.xMin += width; - GUI.Label( leftRect, label, style ); - return EditorGUI.Popup( rightRect, (int)enumVal, names ); - } - - public static System.Enum LabeledEnumField(Rect r, GUIContent label, System.Enum enumVal, GUIStyle style, bool zoomCompensate = false) { - Rect leftRect = new Rect( r ); - Rect rightRect = new Rect( r ); - int width = WidthOf( label, style) + 4; - leftRect.width = width; - rightRect.xMin += width; - GUI.Label( leftRect, label, style ); - - return SF_GUI.EnumPopup( rightRect, GUIContent.none, enumVal, EditorStyles.popup, zoomCompensate); - //return EditorGUI.EnumPopup( rightRect, GUIContent.none, enumVal, EditorStyles.popup ); - //return EnumPopupZoomCompensated( rightRect, enumVal ); - - } - - - - - // UnityEditor.EditorGUI - - public static Enum EnumPopup(Rect position, GUIContent label, Enum selected, GUIStyle style, bool zoomCompensate = false) - { - - - Type type = selected.GetType(); - if (!type.IsEnum) - { - throw new Exception("parameter _enum must be of type System.Enum"); - } - string[] names = Enum.GetNames(type); - int num = Array.IndexOf(names, Enum.GetName(type, selected)); - Matrix4x4 prevMatrix = Matrix4x4.identity; - if(zoomCompensate){ - prevMatrix = GUI.matrix; - GUI.matrix = Matrix4x4.identity; - } - num = EditorGUI.Popup(position, label, num, TempContent(( - from x in names - select ObjectNames.NicifyVariableName(x)).ToArray()), style); - if (num < 0 || num >= names.Length) - { - if(zoomCompensate) - GUI.matrix = prevMatrix; - return selected; - } - if(zoomCompensate) - GUI.matrix = prevMatrix; - return (Enum)Enum.Parse(type, names[num]); - } - - /* - public static int Popup(Rect position, GUIContent label, int selectedIndex, GUIContent[] displayedOptions, GUIStyle style) - { - int controlID = GUIUtility.GetControlID(EditorGUI.s_PopupHash, EditorGUIUtility.native, position); - return EditorGUI.DoPopup(EditorGUI.PrefixLabel(position, controlID, label), controlID, selectedIndex, displayedOptions, style); - }*/ - - - // UnityEditor.EditorGUIUtility - private static GUIContent[] TempContent(string[] texts) - { - GUIContent[] array = new GUIContent[texts.Length]; - for (int i = 0; i < texts.Length; i++) - { - array[i] = new GUIContent(texts[i]); - } - return array; - } - - - - /* - public static Enum EnumPopupZoomCompensated(Rect r, Enum selected ){ - - // TODO: Custom enum popup proper zoom positioning - - if(GUI.Button(r,selected.ToString(),EditorStyles.popup)){ - - GenericMenu gm = new GenericMenu(); - //gm.AddItem(selected); - - Array enumList = Enum.GetValues(selected.GetType()); - - for(int i=0;i < enumList.Length;i++){ - - gm.AddItem( new GUIContent(enumList.GetValue(i).ToString()), i == Convert.ToInt32(selected), (object o)=>{Debug.Log(o.ToString());},"Test " + i); - - - } - - gm.ShowAsContext(); - - - - } - - - - return selected; - - } -*/ - - public static void FillBackground( Rect r ) { - Color pCol = GUI.color; - SF_GUI.UseBackgroundColor(); - GUI.DrawTexture( r, EditorGUIUtility.whiteTexture ); - GUI.color = pCol; - } - - - public static void EnterableFloatField( SF_Node n, Rect r, ref float val, GUIStyle style ) { - if( style == null ) - style = EditorStyles.textField; - string field_name = n.GetType().ToString() + "_" + n.id; - - - GUI.SetNextControlName( field_name ); - EditorGUI.BeginChangeCheck(); - val = EditorGUI.FloatField( r, val, style ); - - - bool pressedEnter = Event.current.keyCode == KeyCode.Return && Event.current.type == EventType.KeyDown; - - if( pressedEnter ) { - EditorGUI.EndChangeCheck(); - //Debug.Log("Pressed enter with focus on " + GUI.GetNameOfFocusedControl() + ", should have been " + field_name); - if(GUI.GetNameOfFocusedControl() == field_name){ - //Debug.Log("Pressed enter!"); - n.OnUpdateNode( NodeUpdateType.Hard ); - } - } else if( EditorGUI.EndChangeCheck() ) { - n.OnUpdateNode( NodeUpdateType.Soft ); - } - } - - - - - - - - public static void EnterableTextField( SF_Node n, Rect r, ref string str, GUIStyle style, bool update = true ) { - if( style == null ) - style = EditorStyles.textField; - string field_name = n.GetType().ToString() + "_txt_" + n.id; - - - GUI.SetNextControlName( field_name ); - EditorGUI.BeginChangeCheck(); - str = EditorGUI.TextField( r, str, style ); - - bool pressedEnter = Event.current.keyCode == KeyCode.Return; - - if(update){ - if( pressedEnter ) { - if( GUI.GetNameOfFocusedControl() == field_name ) - n.OnUpdateNode( NodeUpdateType.Hard ); - EditorGUI.EndChangeCheck(); - } else if( EditorGUI.EndChangeCheck() ) { - n.OnUpdateNode( NodeUpdateType.Soft ); - } - } else if(EditorGUI.EndChangeCheck()){ - n.editor.ShaderOutdated = UpToDateState.OutdatedSoft; - } - - } - - - - - - public static void ConditionalToggle(Rect r, ref bool value, bool usableIf, bool disabledDisplayValue, string label){ - if(usableIf){ - value = GUI.Toggle(r, value, label); - } else { - GUI.enabled = false; - GUI.Toggle(r, disabledDisplayValue, label); - GUI.enabled = true; - } - } - - - - - - - - public static int ContentScaledToolbar(Rect r, string label, int selected, string[] labels ) { - - r.height = 15; - - Rect rLeft = new Rect( r ); - Rect rRight = new Rect( r ); - - rLeft.width = SF_GUI.WidthOf( label, EditorStyles.miniLabel )+4; - rRight.width = r.width - rLeft.width; - rRight.x += rLeft.width; - - GUI.Label( rLeft, label, EditorStyles.miniLabel); - - - // Full pixel width of strings: - float[] lblPxWidth = new float[labels.Length]; - float pxWidthTotal = 0; - for( int i = 0; i < labels.Length; i++ ) { - lblPxWidth[i] = SF_GUI.WidthOf( labels[i], EditorStyles.miniButtonMid ); - pxWidthTotal += lblPxWidth[i]; - } - - // Scale all buttons to fit the rect - float scale = rRight.width / pxWidthTotal; - for( int i = 0; i < labels.Length; i++ ) { - lblPxWidth[i] *= scale; - } - - - - - GUIStyle style = EditorStyles.miniButtonLeft; - int retval = selected; - - Rect rTemp = new Rect(rRight); - - for( int i = 0; i < labels.Length; i++ ) { - - rTemp.width = lblPxWidth[i]; - - if( i == labels.Length - 1 ) { - style = EditorStyles.miniButtonRight; - } else if( i > 0 ) { - style = EditorStyles.miniButtonMid; - } - - bool prev = selected == i; - bool newVal = GUI.Toggle( rTemp, prev, labels[i], style ); - if( newVal != prev ) { - retval = i; - } - - rTemp.x += rTemp.width; - } - GUI.color = Color.white; - return retval; - - } - - - - public static bool ProSkin { - get{ - return EditorGUIUtility.isProSkin; - } - } - - } -} - diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Utility/SF_GUI.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/_Utility/SF_GUI.cs.meta deleted file mode 100755 index 608f5409..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/_Utility/SF_GUI.cs.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: 729a144b29ff13241b778e1946cde443 -MonoImporter: - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Utility/SF_Link.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/_Utility/SF_Link.cs deleted file mode 100644 index 14910d30..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/_Utility/SF_Link.cs +++ /dev/null @@ -1,55 +0,0 @@ - -using UnityEngine; - -// OLD: [Source][Con] <---- [Con][Target] -// NEW: [Target][Con] ----> [Con][Source] - -namespace ShaderForge{ - public struct SF_Link { - public int sNode; // Source - string sCon; - public int tNode; // Target - string tCon; - - public SF_Link( int sNode, string linkData ) { - this.sNode = sNode; - string[] split = linkData.Split( '-' ); - if(split.Length != 3){ - Debug.Log("Invalid link on node " + sNode + ". Expected 3 entries, found " + split.Length + ". Link Data = [" + linkData + "]"); - } - sCon = split[0]; - tNode = int.Parse( split[1] ); - tCon = split[2]; - } - - public void Establish( SF_Editor editor, LinkingMethod linkMethod = LinkingMethod.NoUpdate ) { - SF_Node source = editor.GetNodeByID( sNode ); - SF_Node target = editor.GetNodeByID( tNode ); - // Debug.Log( "Linking " + target.nodeName + " <- " + source.nodeName ); - - target.GetConnectorByID(tCon).LinkTo( source.GetConnectorByID(sCon), linkMethod ); - } - - - - public void Remap(int[] oldIDs, int[] newIDs){ - // Source id switching - for(int i=0; i(string name) where T : UnityEngine.Object { - return (T)AssetDatabase.LoadAssetAtPath(InternalResourcesPath + name, typeof(T) ); - } - - public static UnityEngine.Object[] LoadAll(string name) { - return AssetDatabase.LoadAllAssetsAtPath(InternalResourcesPath + name ); - } - - public static Texture2D LoadInterfaceIcon(string name){ - string path = InternalResourcesPath + "Interface/" + name; - Texture2D retTex = (Texture2D)AssetDatabase.LoadAssetAtPath(path + ".png", typeof(Texture2D) ); - if(retTex == null){ - retTex = (Texture2D)AssetDatabase.LoadAssetAtPath(path + ".tga", typeof(Texture2D) ); - } - return retTex; - } - - public static Texture2D LoadNodeIcon(string name){ - return (Texture2D)AssetDatabase.LoadAssetAtPath(InternalResourcesPath + "Interface/Nodes/" + name + ".png", typeof(Texture2D) ); - } - - - private static string internalResourcesPath = ""; - public static string InternalResourcesPath{ - get{ - if(string.IsNullOrEmpty(internalResourcesPath)){ - string path; - if(SearchForInternalResourcesPath(out path)){ - internalResourcesPath = path; - } else { - Debug.LogError("Unable to locate the internal resources folder. Make sure your Shader Forge installation is intact"); - SF_Editor.instance.Close(); - } - } - return internalResourcesPath; - } - } - - - - private static bool SearchForInternalResourcesPath( out string path ){ - path = ""; - string partialPath = "/ShaderForge/Editor/InternalResources/"; - string foundPath = null; - foreach(string s in AssetDatabase.GetAllAssetPaths()){ - if(s.Contains(partialPath)){ - foundPath = s; - break; - } - } - if(foundPath == null){ - return false; - } - string[] split = foundPath.Replace(partialPath,"#").Split('#'); - path = split[0] + partialPath; - return true; - } - - - - - } -} diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Utility/SF_Resources.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/_Utility/SF_Resources.cs.meta deleted file mode 100644 index 2a7a25bd..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/_Utility/SF_Resources.cs.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: 93a8198ea76894b6c89ca317cc15acb9 -MonoImporter: - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Utility/SF_Styles.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/_Utility/SF_Styles.cs deleted file mode 100755 index 4d478994..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/_Utility/SF_Styles.cs +++ /dev/null @@ -1,337 +0,0 @@ -using UnityEngine; -using UnityEditor; -using System.Collections; -using System.Reflection; -using System; - -namespace ShaderForge { - public static class SF_Styles { - - private static Texture2D _iconErrorSmall; - public static Texture2D IconErrorSmall { - get { - return ( _iconErrorSmall = _iconErrorSmall ?? EditorGUIUtility.FindTexture( "console.erroricon.sml" ) ); - } - } - private static Texture2D _iconWarningSmall; - public static Texture2D IconWarningSmall { - get { - return ( _iconWarningSmall = _iconWarningSmall ?? EditorGUIUtility.FindTexture( "console.warnicon.sml" ) ); - } - } - private static GUIStyle _iconLock; - public static GUIStyle IconLock{ - get{ - return ( _iconLock = _iconLock ?? new GUIStyle("IN LockButton") ); - } - } - - private static GUIStyle miniLabelRight; - public static GUIStyle MiniLabelRight { - get { - if( miniLabelRight == null ) { - miniLabelRight = new GUIStyle( EditorStyles.miniLabel ); - miniLabelRight.alignment = TextAnchor.MiddleRight; - } - return miniLabelRight; - } - } - - - - private static GUIStyle largeTextField; - public static GUIStyle LargeTextField { - get { - if( largeTextField == null ) { - largeTextField = new GUIStyle( EditorStyles.textField ); - largeTextField.fontSize = 20; - largeTextField.alignment = TextAnchor.MiddleLeft; - } - return largeTextField; - } - } - - private static GUIStyle smallTextArea; - public static GUIStyle SmallTextArea { - get { - if( smallTextArea == null ) { - smallTextArea = new GUIStyle( EditorStyles.miniLabel ); - smallTextArea.wordWrap = true; - smallTextArea.padding = new RectOffset( 5, 5, 3, 3 ); - smallTextArea.fontSize = EditorStyles.miniLabel.fontSize; - } - return smallTextArea; - } - } - - - private static GUIStyle largeTextFieldNoFrame; - public static GUIStyle LargeTextFieldNoFrame { - get { - if( largeTextFieldNoFrame == null ) { - largeTextFieldNoFrame = new GUIStyle( EditorStyles.label ); - largeTextFieldNoFrame.fontSize = LargeTextField.fontSize; - largeTextFieldNoFrame.alignment = LargeTextField.alignment; - - } - return largeTextFieldNoFrame; - } - } - - private static GUIStyle richTextField; - public static GUIStyle RichTextField { - get { - if( richTextField == null ) { - richTextField = new GUIStyle( EditorStyles.textField ); - richTextField.richText = true; - } - return richTextField; - } - } - - private static GUIStyle richLabel; - public static GUIStyle RichLabel { - get { - if( richLabel == null ) { - richLabel = new GUIStyle( EditorStyles.label ); - richLabel.richText = true; - } - return richLabel; - } - } - - - private static GUIStyle instructionCountRenderer; - public static GUIStyle InstructionCountRenderer { - get { - if( instructionCountRenderer == null ) { - instructionCountRenderer = new GUIStyle( EditorStyles.miniLabel ); - InstructionCountRenderer.alignment = TextAnchor.MiddleRight; - } - return instructionCountRenderer; - } - } - - - private static GUIStyle codeTextArea; - public static GUIStyle CodeTextArea { - get { - if( codeTextArea == null ) { - codeTextArea = new GUIStyle( GUI.skin.textArea ); - codeTextArea.font = SF_Resources.Load( SF_Resources.pFonts + "VeraMono.ttf" ); - codeTextArea.padding = new RectOffset(3,3,3,0); - codeTextArea.wordWrap = false; - } - return codeTextArea; - } - } - - // Bitstream Vera Sans Mono - - - private static GUIStyle miniLabelOverflow; - public static GUIStyle MiniLabelOverflow { - get { - if( miniLabelOverflow == null ) { - miniLabelOverflow = new GUIStyle( EditorStyles.miniLabel ); - miniLabelOverflow.clipping = TextClipping.Overflow; - } - return miniLabelOverflow; - } - } - - private static GUIStyle creditsLabelText; - public static GUIStyle CreditsLabelText { - get { - if( creditsLabelText == null ) { - creditsLabelText = new GUIStyle( EditorStyles.label ); - creditsLabelText.alignment = TextAnchor.MiddleLeft; - creditsLabelText.fixedHeight = 16; - creditsLabelText.padding = new RectOffset(0,0,6,0); - creditsLabelText.clipping = TextClipping.Overflow; - } - return creditsLabelText; - } - } - - private static GUIStyle boldEnumField; - public static GUIStyle BoldEnumField{ - get{ - if(boldEnumField == null){ - boldEnumField = new GUIStyle((GUIStyle)"MiniPopup"); - boldEnumField.fontStyle = FontStyle.Bold; - Color c = SF_GUI.ProSkin ? (Color)new Color32( 161, 225, 87, 255 ) : ((Color)new Color32( 161, 225, 87, 255 ))*0.5f; // Used for variable precision - c.a = 1; - boldEnumField.normal.textColor = c; - boldEnumField.active.textColor = c; - boldEnumField.focused.textColor = c; - - } - return boldEnumField; - } - } - - - private static GUIStyle nodeNameLabelText; - public static GUIStyle GetNodeNameLabelText() { - if( nodeNameLabelText == null ) { - nodeNameLabelText = new GUIStyle( EditorStyles.largeLabel ); - nodeNameLabelText.fontStyle = FontStyle.Bold; - nodeNameLabelText.fontSize = 11; - nodeNameLabelText.alignment = TextAnchor.MiddleCenter; - nodeNameLabelText.normal.textColor = new Color( 0.8f, 0.8f, 0.8f, 1f ); - } - return nodeNameLabelText; - } - - - private static GUIStyle nodeCommentLabelText; - public static GUIStyle GetNodeCommentLabelText() { - if( nodeCommentLabelText == null ) { - nodeCommentLabelText = new GUIStyle( EditorStyles.largeLabel ); - nodeCommentLabelText.fontStyle = FontStyle.Italic; - nodeCommentLabelText.fontSize = 16; - nodeCommentLabelText.alignment = TextAnchor.LowerLeft; - float col = SF_GUI.ProSkin ? 1f : 0f; - nodeCommentLabelText.normal.textColor = new Color( col, col, col, 0.3f ); - } - return nodeCommentLabelText; - } - - private static GUIStyle nodeScreenshotTitleText; - public static GUIStyle GetNodeScreenshotTitleText() { - if( nodeScreenshotTitleText == null ) { - //nodeScreenshotTitleText = new GUIStyle( NodeStyle ); - nodeScreenshotTitleText = new GUIStyle(EditorStyles.boldLabel); - nodeScreenshotTitleText.fontSize = 14; - nodeScreenshotTitleText.alignment = TextAnchor.LowerCenter; - nodeScreenshotTitleText.clipping = TextClipping.Overflow; - float col = SF_GUI.ProSkin ? 1f : 0f; - nodeScreenshotTitleText.normal.textColor = new Color( col, col, col, 0.5f ); - } - return nodeScreenshotTitleText; - } - - - - private static GUIStyle nodeCommentLabelTextField; - public static GUIStyle GetNodeCommentLabelTextField() { - if( nodeCommentLabelTextField == null ) { - nodeCommentLabelTextField = new GUIStyle( EditorStyles.textField ); - nodeCommentLabelTextField.fontStyle = FontStyle.Italic; - nodeCommentLabelTextField.fontSize = 16; - nodeCommentLabelTextField.alignment = TextAnchor.LowerLeft; - nodeCommentLabelTextField.normal.textColor = new Color( 1f, 1f, 1f, 0.3f ); - } - return nodeCommentLabelTextField; - } - - - private static GUIStyle nodeNameLabelBackground; - public static Color nodeNameLabelBackgroundColor = new Color( 0.7f, 0.7f, 0.7f ); - public static GUIStyle GetNodeNameLabelBackground() { - if( nodeNameLabelBackground == null ) { - nodeNameLabelBackground = new GUIStyle( EditorStyles.textField ); - } - return nodeNameLabelBackground; - } - - private static GUIStyle highlightStyle; - public static GUIStyle HighlightStyle { - get { - if( highlightStyle == null ) { - //if( Application.unityVersion.StartsWith("4") ) - highlightStyle = new GUIStyle( (GUIStyle)"flow node 0 on" ); - } - return highlightStyle; - } - } - - - private static GUIStyle selectionStyle; - public static GUIStyle SelectionStyle { - get { - if( selectionStyle == null ) { - //if( Application.unityVersion.StartsWith("4") ) - selectionStyle = new GUIStyle( (GUIStyle)"SelectionRect" ); - } - return selectionStyle; - } - } - - private static GUIStyle nodeStyle; - public static GUIStyle NodeStyle { - get { - if( nodeStyle == null ) { - //if( Application.unityVersion.StartsWith( "4" ) ) - nodeStyle = new GUIStyle( (GUIStyle)"flow node 0" ); - nodeStyle.alignment = TextAnchor.UpperCenter; - if(Application.platform == RuntimePlatform.WindowsEditor) - nodeStyle.fontSize = 9; - else - nodeStyle.fontSize = 11; - nodeStyle.font = EditorStyles.standardFont; - nodeStyle.fontStyle = FontStyle.Bold; - nodeStyle.padding.top = 23; - nodeStyle.padding.left = 1; - //nodeStyle.margin.right = 8; - //nodeStyle.border.right = 25; - nodeStyle.border.left = 25; - if(SF_GUI.ProSkin) - nodeStyle.normal.textColor = new Color( 1f, 1f, 1f, 0.75f ); - else - nodeStyle.normal.textColor = new Color( 0f, 0f, 0f, 0.7f ); - - } - - return nodeStyle; - } - } - - - private static GUIStyle nodeStyleDiscrete; - public static GUIStyle NodeStyleDiscrete{ - get { - if( nodeStyleDiscrete == null ) { - nodeStyleDiscrete = new GUIStyle(NodeStyle); - nodeStyleDiscrete.normal.textColor = SF_GUI.ProSkin ? new Color( 1f, 1f, 1f, 0.75f/5f ) : new Color( 0f, 0f, 0f, 0.7f/5f ); - } - return nodeStyleDiscrete; - } - } - //NodeStyleDiscrete - - - private static GUIStyle toggleDiscrete; - public static GUIStyle ToggleDiscrete { - get { - if( toggleDiscrete == null ) { - toggleDiscrete = new GUIStyle( GUI.skin.toggle ); - toggleDiscrete.fontSize = 10; - } - - return toggleDiscrete; - } - } - - - - // Thanks to Tenebrous! - public static void ListStyles() { - foreach( GUIStyle ss in GUI.skin.customStyles ) { - GUILayout.Label( ss.name ); - EditorGUILayout.LabelField( ss.name, ss ); - } - - FieldInfo f = typeof( EditorGUIUtility ).GetField( "s_IconGUIContents", BindingFlags.NonPublic | BindingFlags.Static ); - Hashtable ff = (Hashtable)f.GetValue( null ); - foreach( DictionaryEntry fff in ff ) { - GUILayout.Label( fff.Key.ToString() ); - GUILayout.Label( (GUIContent)fff.Value ); - } - } - - - - } -} diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Utility/SF_Styles.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/_Utility/SF_Styles.cs.meta deleted file mode 100755 index 35b377c7..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/_Utility/SF_Styles.cs.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: efe449f52e390bf4f846e213fd973d30 -MonoImporter: - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Utility/SF_Tools.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/_Utility/SF_Tools.cs deleted file mode 100755 index dbf37e21..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/_Utility/SF_Tools.cs +++ /dev/null @@ -1,486 +0,0 @@ -using UnityEngine; -using UnityEditor; -using System.Collections; -using System; -using System.Reflection; -using System.Text.RegularExpressions; - -namespace ShaderForge { - - [System.Serializable] - public enum RenderPlatform { - d3d9 = 0, // - Direct3D 9 - d3d11 = 1, // - Direct3D 11 / 12 - glcore = 2, // - OpenGL Core - gles = 3, // - OpenGL ES 2.0 - gles3 = 4, // - OpenGL ES 3.0 - metal = 5, // - iOS Metal - d3d11_9x = 6, // - Direct3D 11 windows RT - xboxone = 7, // - Xbox One - ps4 = 8, // - PlayStation 4 - psp2 = 9, // - PlayStation Vita - n3ds = 10, // - Nintendo 3DS - wiiu = 11 // - Nintendo Wii U - }; - - - - public static class SF_Tools { - - // Versioning - public static int versionNumPrimary = 1; - public static int versionNumSecondary = 38; - public static string versionStage = ""; - public static string version = versionNumPrimary + "." + versionNumSecondary.ToString( "D2" ); - public static string versionString = "Shader Forge v" + version; - - // Misc strings - public const string bugReportLabel = "Post bugs & ideas"; - public const string bugReportURL = "https://shaderforge.userecho.com/"; - public const string documentationLabel = "Node Documentation"; - public const string documentationURL = "http://www.acegikmo.com/shaderforge/nodes/"; - public static string[] rendererLabels = new string[]{ - "Direct3D 9", - "Direct3D 11 & 12", - "OpenGL Core", - "OpenGL ES 2.0", - "OpenGL ES 3.0", - "iOS Metal", - "Direct3D 11 for Windows RT/Phone", - "Xbox One", - "PlayStation 4", - "PlayStation Vita", - "Nintendo 3DS", - "Nintendo Wii U" - }; - - public const string alphabetLower = "abcdefghijklmnopqrstuvwxyz"; - public const string alphabetUpper = "ABCDEFGHIJKLMNOPQRSTUVWXYZ"; - - - // Constants - public const int connectorMargin = 4; - - // User prefs - public static bool absColor = false; - public static bool advancedInspector = true; - public static int stationaryCursorRadius = 7; - - - public const float minimumUnityVersion = 5.3f; - - private static float currentUnityVersion = 0f; - public static float CurrentUnityVersion{ - get{ - if(currentUnityVersion == 0f){ - currentUnityVersion = float.Parse(Application.unityVersion.Substring(0,3)); - } - return currentUnityVersion; - } - } - - public static bool CanRunShaderForge(){ - return (CurrentUnityVersion >= minimumUnityVersion); - } - - - public static bool HasUnityPro(){ - return UnityEditorInternal.InternalEditorUtility.HasPro(); - } - - - - - public static void UnityOutOfDateGUI(){ - GUIStyle st = new GUIStyle(EditorStyles.boldLabel); - - st.alignment = TextAnchor.MiddleCenter; - - GUILayout.Label(string.Empty); - GUILayout.Label("You need to install Unity " + SF_Tools.minimumUnityVersion + " or later in order to use Shader Forge", st); - GUILayout.Label("You are currently running Unity version " + Application.unityVersion, st); - if(GUILayout.Button("Update Unity")){ - Application.OpenURL("http://unity3d.com/unity/download"); - } - GUILayout.Label(string.Empty); - } - - public static int ComponentCountOf(CustomValueType cvt){ - - switch(cvt){ - case CustomValueType.Float: - return 1; - case CustomValueType.Half: - return 1; - case CustomValueType.Fixed: - return 1; - case CustomValueType.Float2: - return 2; - case CustomValueType.Half2: - return 2; - case CustomValueType.Fixed2: - return 2; - case CustomValueType.Float3: - return 3; - case CustomValueType.Half3: - return 3; - case CustomValueType.Fixed3: - return 3; - case CustomValueType.Float4: - return 4; - case CustomValueType.Half4: - return 4; - case CustomValueType.Fixed4: - return 4; - case CustomValueType.Sampler2D: - return 4; - default: - // Debug.Log("Invalid component count check of custom value type: " + cvt); - return 16; - } - - - } - - - public static Color VectorToColor( float v ) { - if( absColor ) - v = Mathf.Abs(v); - return new Color( v,v,v ); - } - - public static Color VectorToColor( Vector2 v ) { - if( absColor ) - return new Color( Mathf.Clamp01( Mathf.Abs( v.x ) ), Mathf.Clamp01( Mathf.Abs( v.y ) ), 0f ); - else - return new Color( Mathf.Clamp01( v.x ), Mathf.Clamp01( v.y ), 0f ); - } - - public static Color VectorToColor( Vector3 v ) { - if( absColor ) - return new Color( Mathf.Clamp01( Mathf.Abs( v.x ) ), Mathf.Clamp01( Mathf.Abs( v.y ) ), Mathf.Clamp01( Mathf.Abs( v.z ) ) ); - else - return new Color( Mathf.Clamp01( v.x ), Mathf.Clamp01( v.y ), Mathf.Clamp01( v.z ) ); - } - - public static string AssetToGUID( UnityEngine.Object asset ) { - return AssetDatabase.AssetPathToGUID( AssetDatabase.GetAssetPath( asset ) ); - } - - public static UnityEngine.Object GUIDToAsset( string GUID, Type type ) { - return AssetDatabase.LoadAssetAtPath( AssetDatabase.GUIDToAssetPath( GUID ), type ); - } - - public static float Smooth( float x ) { - return x * x * ( 3f - 2f * x ); - } - - public static float Smoother( float x ) { - return x * x * x * ( x * ( x * 6f - 15f ) + 10f ); - } - - - - public static string PathFromAbsoluteToProject(string s){ - return s.Substring(Application.dataPath.Length-6); - } - - public static void LinkButton(Rect r, string label, string URL, GUIStyle style){ - if( GUI.Button( r, label, style ) ) - Application.OpenURL(URL); - } - - - public static void AssignShaderToMaterialAsset( ref Material m, Shader s ) { - m.shader = s; - } - - public static float[] VectorToArray(Vector4 vec) { - return new float[4] { vec.x, vec.y, vec.z, vec.w }; - } - - public static float[] VectorToArray( float vec ) { - return new float[4] { vec, vec, vec, vec }; - } - - public static Vector3 ToVector3(Color c) { - return new Vector3( c.r, c.g, c.b ); - } - - public static Color ToColor( Vector3 vec ) { - return new Color( vec.x, vec.y, vec.z); - } - - public static float DistChebyshev(Vector2 a, Vector2 b) { - return Mathf.Max( Mathf.Abs(a.x - b.x), Mathf.Abs(a.y - b.y) ); - } - - - private static MethodInfo _doColorPickerMethod; - private static MethodInfo DoColorPickerMethod { - get{ - if(_doColorPickerMethod == null){ - Type t = Type.GetType( "UnityEditor.EditorGUI,UnityEditor" ); - Debug.Log("Type = " + t); - BindingFlags bfs = BindingFlags.Static | BindingFlags.NonPublic; - _doColorPickerMethod = t.GetMethod( "DoColorField", bfs, null, new Type[] { typeof( Rect ), typeof( int ), typeof( Color ), typeof( bool ), typeof( bool ) }, null ); - } - return _doColorPickerMethod; - } - } - - - // private static Color DoColorField(Rect position, int id, Color value, bool showEyedropper, bool showAlpha) - public static Color DoColorPicker( Rect position, Color color, bool showEyedropper, bool showAlpha ) { - //int id = GUIUtility.GetControlID(); - //return (Color)DoColorPickerMethod.Invoke( null, new object[] { position, id, color, showEyedropper, showAlpha } ); - return Color.red; - } - - public static Color FloatToColor( float f ) { - return new Color( f, f, f, f ); - } - - public static float Distance( Color a, Color b, int cc ) { - Color v = a - b; - return Mathf.Sqrt( Dot( v, v, cc ) ); - } - - public static float Dot(Color a, Color b, int compCount) { - - float retVal = 0f; - - for(int i=0;i s.xMax ) - s.xMax = i.xMax; - if( i.xMin < s.xMin ) - s.xMin = i.xMin; - if( i.yMax > s.yMax ) - s.yMax = i.yMax; - if( i.yMin < s.yMin ) - s.yMin = i.yMin; - return s; - } - - - public static void FormatShaderPath(ref string s){ - Regex rgx = new Regex( "[^a-zA-Z0-9/s -_]" ); // Only allow Alphanumeric, forward slash, space, dash and underscore - s = rgx.Replace( s, "" ); - } - - public static void FormatAlphanumeric( ref string s ) { - Regex rgx = new Regex( "[^a-zA-Z0-9-_]" ); // Only allow Alphanumeric, forward slash, space, dash and underscore - s = rgx.Replace( s, "" ); - } - - public static void FormatSerializableComment(ref string s){ - Regex rgx = new Regex( "[^\\w\\s_\\?\\.-]" ); // Only allow Alphanumeric, dot, dash, underscore and questionmark - s = rgx.Replace( s, "" ); - } - - public static void FormatSerializable( ref string s ) { - s = s.Replace( ":", "" ) - .Replace( ";", "" ) - .Replace( ",", "" ) - .Replace( "/*", "" ) - .Replace( "*/", "" ) - .Replace("\"", ""); - } - - public static void FormatSerializableVarName( ref string s ){ - FormatShaderPath(ref s); - - s = s.Replace(" ", string.Empty); - - if(s.Length > 0){ - - int tmp; - while(s.Length > 0 && int.TryParse(s[0].ToString(), out tmp)){ - s = s.Substring(1, s.Length-1); // Remove first character if first is a parsable integer - } - -// if(s.Length == 1){ -// s = s.ToLower(); // Lowercase the one character -// } else { -// char first = s[0]; // Lowercase the first character -// string rest = s.Substring( -// } - } - - } - - - public static Rect GetExpanded( Rect r, float px ) { - r.y -= px; - r.x -= px; - r.width += 2 * px; - r.height += 2 * px; - return r; - } - - - public static bool Intersects( Rect a, Rect b ) { - FlipNegative( ref a ); - FlipNegative( ref b ); - bool c1 = a.xMin < b.xMax; - bool c2 = a.xMax > b.xMin; - bool c3 = a.yMin < b.yMax; - bool c4 = a.yMax > b.yMin; - return c1 && c2 && c3 && c4; - } - - public static void FlipNegative(ref Rect r) { - if( r.width < 0 ) - r.x -= ( r.width *= -1 ); - if( r.height < 0 ) - r.y -= ( r.height *= -1 ); - } - - - public static float DistanceToLines(Vector2 point, Vector2[] line){ - float shortest = float.MaxValue; - - for (int i = 0; i < line.Length-1; i++) { - shortest = Mathf.Min(shortest, DistanceToLine(line[i], line[i+1], point)); - } - - return shortest; - - } - - public static float DistanceToLine(Vector2 a, Vector2 b, Vector2 point){ - // Return minimum distance between line segment vw and point p - float l2 = Vector2.SqrMagnitude(a - b); // i.e. |w-v|^2 - avoid a sqrt - if (l2 == 0.0) - return Vector2.Distance(point, a); // v == w case - // Consider the line extending the segment, parameterized as v + t (w - v). - // We find projection of point p onto the line. - // It falls where t = [(p-v) . (w-v)] / |w-v|^2 - float t = Vector2.Dot(point - a, b - a) / l2; - if (t < 0.0) - return Vector2.Distance(point, a); // Beyond the 'v' end of the segment - else if (t > 1.0) - return Vector2.Distance(point, b); // Beyond the 'w' end of the segment - Vector2 projection = a + t * (b - a); // Projection falls on the segment - return Vector2.Distance(point, projection); - } - - - - public static bool LineIntersection(Vector2 p0, Vector2 p1, Vector2 p2, Vector2 p3, out Vector2 intersection){ - - intersection = Vector2.zero; - - Vector2 s1, s2; - s1.x = p1.x - p0.x; - s1.y = p1.y - p0.y; - s2.x = p3.x - p2.x; - s2.y = p3.y - p2.y; - - float s, t, d; - d = -s2.x * s1.y + s1.x * s2.y; - - if(d == 0){ - return false; // Parallel lines, no intersection - } - - Vector2 pDiff = p0 - p2; - s = (-s1.y * pDiff.x + s1.x * pDiff.y) / d; - t = ( s2.x * pDiff.y - s2.y * pDiff.x) / d; - - if (s >= 0 && s <= 1 && t >= 0 && t <= 1) - { - intersection = p0 + (t * s1); - return true; // Intersection! - } - - return false; // No intersection - } - - - - // Returns the first intersection it can find - public static bool LineIntersection(Vector2 p0, Vector2 p1, Vector2[] points, out Vector2 intersection){ - intersection = Vector2.zero; - for(int i=0;i 0; - - } - - - public static string StringToBase64String(string str) { - return System.Convert.ToBase64String( GetBytes( str ) ); - } - - public static string Base64StringToString( string encoded ) { - return GetString( System.Convert.FromBase64String( encoded ) ); - } - - static byte[] GetBytes( string str ) { - byte[] bytes = new byte[str.Length * sizeof( char )]; - System.Buffer.BlockCopy( str.ToCharArray(), 0, bytes, 0, bytes.Length ); - return bytes; - } - - static string GetString( byte[] bytes ) { - char[] chars = new char[bytes.Length / sizeof( char )]; - System.Buffer.BlockCopy( bytes, 0, chars, 0, bytes.Length ); - return new string( chars ); - } - - - } -} diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Utility/SF_Tools.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/_Utility/SF_Tools.cs.meta deleted file mode 100755 index beee6963..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/_Utility/SF_Tools.cs.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: 57c34190e3ef7294a906d4f71d8764ac -MonoImporter: - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Utility/SF_Web.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/_Utility/SF_Web.cs deleted file mode 100755 index 9da797d4..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/_Utility/SF_Web.cs +++ /dev/null @@ -1,32 +0,0 @@ -using UnityEngine; -using System.Collections; - -// Web data and access with Shader Forge -// Used for documentation, and perhaps later for update checking as well - -namespace ShaderForge{ - public static class SF_Web { - - - const string urlRoot = "http://acegikmo.com/shaderforge/"; // ?search=add"; - const string urlNodes = urlRoot + "nodes/"; - - - public static void OpenDocumentationForNode(SF_Node node){ - OpenDocumentationForString(node.SearchName); - } - public static void OpenDocumentationForNode(SF_EditorNodeData nodeData){ - OpenDocumentationForString(nodeData.SearchName); - } - - static void OpenDocumentationForString(string s){ - Application.OpenURL( urlNodes + "?search=" + StripExtraChars(s) ); - } - - - static string StripExtraChars(string s){ - return s.Replace(" ","").Replace(".",""); - } - - } -} diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Utility/SF_Web.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/_Utility/SF_Web.cs.meta deleted file mode 100755 index a46be09d..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/_Utility/SF_Web.cs.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: 149fd1a15c5e14ecab3711504e2fad2b -MonoImporter: - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Utility/SF_ZoomArea.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/_Utility/SF_ZoomArea.cs deleted file mode 100644 index c8687ed5..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/_Utility/SF_ZoomArea.cs +++ /dev/null @@ -1,43 +0,0 @@ -using UnityEngine; - -namespace ShaderForge{ - public class SF_ZoomArea{ - private static float kEditorWindowTabHeight = 22.0f; - private static Matrix4x4 prevGuiMatrix; - - public static Rect Begin(float zoomScale, Rect screenCoordsArea, Vector2 cameraPos){ - GUI.EndGroup(); - kEditorWindowTabHeight = screenCoordsArea.y; - Rect clippedArea = screenCoordsArea.ScaleSizeBy(1.0f / zoomScale, screenCoordsArea.TopLeft()); - GUI.BeginGroup(clippedArea); - //if(zoomScale != 1f){ - //clippedArea.y += kEditorWindowTabHeight; - prevGuiMatrix = GUI.matrix; - Matrix4x4 translation = Matrix4x4.TRS(clippedArea.TopLeft(), Quaternion.identity, Vector3.one); - Matrix4x4 scale = Matrix4x4.Scale(new Vector3(zoomScale, zoomScale, 1.0f)); - GUI.matrix = translation * scale * translation.inverse * GUI.matrix; - //} else{ - // GUI.matrix = Matrix4x4.identity; - // prevGuiMatrix - //} - Rect offsetRect = screenCoordsArea; - offsetRect.x -= cameraPos.x; - offsetRect.y -= cameraPos.y; - offsetRect.width = int.MaxValue/2; - offsetRect.height = int.MaxValue/2; - GUI.BeginGroup(offsetRect); - - return clippedArea; - } - - public static void End(float zoomScale){ - GUI.EndGroup(); - //if(zoomScale != 1f) - GUI.matrix = prevGuiMatrix; - //else - // GUI.matrix = Matrix4x4.identity; - GUI.EndGroup(); - GUI.BeginGroup(new Rect(0.0f, kEditorWindowTabHeight, Screen.width, Screen.height)); - } - } -} \ No newline at end of file diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Utility/SF_ZoomArea.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/_Utility/SF_ZoomArea.cs.meta deleted file mode 100644 index 0dcf3af4..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/_Utility/SF_ZoomArea.cs.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: 2de28fcf3e7de48dd97865761bfa9eb2 -MonoImporter: - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Utility/SerializableDictionary.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/_Utility/SerializableDictionary.cs deleted file mode 100755 index 068ad2aa..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/_Utility/SerializableDictionary.cs +++ /dev/null @@ -1,64 +0,0 @@ -using System; -using System.Collections.Generic; -using System.Text; -using System.Xml.Serialization; - -namespace ShaderForge { - [XmlRoot( "dictionary" )] - public class SerializableDictionary : Dictionary, IXmlSerializable { - #region IXmlSerializable Members - public System.Xml.Schema.XmlSchema GetSchema() { - return null; - } - - public void ReadXml( System.Xml.XmlReader reader ) { - XmlSerializer keySerializer = new XmlSerializer( typeof( TKey ) ); - XmlSerializer valueSerializer = new XmlSerializer( typeof( TValue ) ); - - bool wasEmpty = reader.IsEmptyElement; - reader.Read(); - - if( wasEmpty ) - return; - - while( reader.NodeType != System.Xml.XmlNodeType.EndElement ) { - reader.ReadStartElement( "item" ); - - reader.ReadStartElement( "key" ); - TKey key = (TKey)keySerializer.Deserialize( reader ); - reader.ReadEndElement(); - - reader.ReadStartElement( "value" ); - TValue value = (TValue)valueSerializer.Deserialize( reader ); - reader.ReadEndElement(); - - this.Add( key, value ); - - reader.ReadEndElement(); - reader.MoveToContent(); - } - reader.ReadEndElement(); - } - - public void WriteXml( System.Xml.XmlWriter writer ) { - XmlSerializer keySerializer = new XmlSerializer( typeof( TKey ) ); - XmlSerializer valueSerializer = new XmlSerializer( typeof( TValue ) ); - - foreach( TKey key in this.Keys ) { - writer.WriteStartElement( "item" ); - - writer.WriteStartElement( "key" ); - keySerializer.Serialize( writer, key ); - writer.WriteEndElement(); - - writer.WriteStartElement( "value" ); - TValue value = this[key]; - valueSerializer.Serialize( writer, value ); - writer.WriteEndElement(); - - writer.WriteEndElement(); - } - } - #endregion - } -} \ No newline at end of file diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Utility/SerializableDictionary.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/_Utility/SerializableDictionary.cs.meta deleted file mode 100755 index d4a5bc6f..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/_Utility/SerializableDictionary.cs.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: 7a1a116097ee8bf4f89ff5b55aced743 -MonoImporter: - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: From 1b86245512802caa6e60fdc4ba001c1e0f20577e Mon Sep 17 00:00:00 2001 From: Jacky Riawan Date: Sat, 5 May 2018 08:38:03 +0200 Subject: [PATCH 02/27] add 2018 version of the dll --- .../Assets/ShaderForge/Editor/ShaderForge.dll | Bin 0 -> 438272 bytes .../ShaderForge/Editor/ShaderForge.dll.meta | 34 ++++++++++++++++++ 2 files changed, 34 insertions(+) create mode 100644 Shader Forge/Assets/ShaderForge/Editor/ShaderForge.dll create mode 100644 Shader Forge/Assets/ShaderForge/Editor/ShaderForge.dll.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/ShaderForge.dll b/Shader Forge/Assets/ShaderForge/Editor/ShaderForge.dll new file mode 100644 index 0000000000000000000000000000000000000000..0c5d88972d6d6633ec6cea919c7a492e29c02738 GIT binary patch literal 438272 zcmeFadth8uwFi81X6DRf@@Qu!ok`NPNlQ}>lSwEIg|-2jmN%A%h|rW*seqIsQ%)!# zlZgR&38f+;YOfF8C?KM85xI(him0Hy$W^Z*B0fOydhvPnUM%15x7I$7$xP5szdye~ z=bXLP+H0@9_S$Q&{W#|wx&AsUW?5Do|6YIHvL3{hf1~pI#y?X)xA#8OZr$Jf)Pe__ z);_i1xU)8m_igdYZ}(1nN8j5{JNMl3`F$JD=<~Lo+qdc5zJrc_OW!-nr=Ky@)|Osm zSRZq+Wvy+BSCa4%bG3!hgXwS5~~w@kLEr2UPVRJ{Uxndz@Gn_WA)VG-T=^NS*Zv*h4f*O z^w9ZdTy#FtkKAeM#kv}~eKKU(FyxJUZv#MNW8GQNyF>>*8QW@f$UEblG6*TFWf>jZ zTSvD>(2<|D)GPidn{6emi>`}VXDy3aO#=OY|1;lq`z$M6JYKJMtlAEl?Ra$-F2 z6-ic@8g8{Gm~s~|gJQOwVOdQc3g2Q2jilX$Bsjp%E3drrI#zQGrj;_ktEreTUaG*D z6thk-G2ygs9NKk?PuuQp;8vZWR4%MAU7eKMe%!i?@iV?Vfl~zb?(e!t6rqOPl7w{@ zbPv%oUV`#@P%@-E4TR~eC6&m#$Ds^&59G1EjG#Bpgq|yCv{>WZ5NC@$u?1)s#iwgH z?c+i~D(N;^@qyn|WTP&GKT7Nk6{Av*{F9BjNn4c;lZ ziyGqIEw~FBmUk_2m94-vRQU%5ec?>#n}svVZXnU!f~z#d{j1=r4RK!<+`Ag$zCm2& zV&ED|`(4ROL!20ZV%^eo?fy6<7;H%JVn{I5kl?o=0gR?W5&tIy>;d(~Cz{xR><_1$R1eOToCttQ_2i|@6`weHuaUz9P0+|un#=qB35Sf#67V-(|HH{6pAL#1 zxn3#m_`}K9EL-jLUH9tUmy*#B2EKF2$df`w(8%sew(W?UE+4r~z>5wax^iTJ@MPwZ z%}Q~4{FD!n!N1$5+%WP^K@&7`vZAkk^}HP;Z32Gf<7a(r}R@#c}=N$CWQ3}}v9zP}XUyzDC@kIF3t8To-y9Jy@SPbkR? zXYcs^JaED@Bc6cgJ$%A{jvOzy%skSm6u0*u_6iwX`LWY~ zIkH&L1o_Rd>63T-VW{8f+wbn={|pT|eLX7=`}4?^%o_8qgps+!=t?UMfMb^eb|?i$ zD+S!F0FF-z_?!YbA}Qe03V=s30M-VjaNtpjI~BmuMgg}ffJ2M|KCS=`E(%~HfConu z1&DRUJPsoY*sc^DI}|_zKo$-d3b;Z693>QRsRB4IC}2_nHwS==6+ri|6c;FfK3@TB z6O=+nuK+Q&m`CrffU}i?{#*fPDuDi50dH3T{j~zlQULw40yZgt{#XHqDV?wa3{yH? z1sJAuvI;Ov=~)$Ux-z9ZRlo)X(1$AEBn8lMDu5jTwWYUIz;Ozoe^kIR3ZO?+z*+^+ z2P%M01U%^V6u|xg09~B|MhS?!d&44Il7+qE$-=r8J6YWTFKD|6*d4o2MYF~c74ovO z2lTemS5FJ!r4(X9r8CHl!U0jGQ}pTICiHQ4849a1pb9XIpqLO0>?}+$Kmw-9U??DG z2o#W?7fmq82{4Rmf;BD4hcQWzs6-QtIsy#CjDQ>CilRNi_#y7@!^$y= zsD&_WsD&_2sD+>#17cV(5&)WmzJYM)uZ3`|4@9~|G8i3RY7+Z`qRQc$WRl=`9V9qF zGr{JsazqXi9DjoZN82F5u{B6=Bn=WAIx*d-u+2)2_dXaI%tl%cBSCIS(z-pyxgf{T z- z4o+I`M!`zEtr^xjc`As!M``k?q9e9l&>X@rIpi2qmt@cI5h!zNRn3pJYJ7hb;U0h= zEv5Gm_l~6H%yDnSulId&Uqy;h{;UpY>#F5pwB6F`EyHhHO0y&pPvqjwkwhZqt^tco zeDhc)v3U%lSfeMp2LhCHvPl)dJqXEc5;X3?yh}yFsch0c1W@--L1i36)Ep&h&ZZ(n z%_vDZr86mIp3XLh1TH3~=}gkd%xcE&M^`v?u5WTuieY5mp`nvV!O=UipM=#mlEOSx!GK z

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 z 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

l<>ro;eq+lN!kK+u2WJOX2$;pX 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 O@^ Date: Sat, 5 May 2018 08:39:39 +0200 Subject: [PATCH 03/27] Upgrade project to unity 2018 --- .../InternalResources/Inspectors/ShaderForgeInspector.cs | 2 +- Shader Forge/Packages/manifest.json | 4 ++++ Shader Forge/ProjectSettings/PresetManager.asset | 6 ++++++ Shader Forge/ProjectSettings/ProjectVersion.txt | 2 +- 4 files changed, 12 insertions(+), 2 deletions(-) create mode 100644 Shader Forge/Packages/manifest.json create mode 100644 Shader Forge/ProjectSettings/PresetManager.asset diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/Inspectors/ShaderForgeInspector.cs b/Shader Forge/Assets/ShaderForge/Editor/InternalResources/Inspectors/ShaderForgeInspector.cs index d49f27ae..682d3cf8 100644 --- a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/Inspectors/ShaderForgeInspector.cs +++ b/Shader Forge/Assets/ShaderForge/Editor/InternalResources/Inspectors/ShaderForgeInspector.cs @@ -168,7 +168,7 @@ public override void OnInspectorGUI() { if( hasShaderForgeData ) { if( GUILayout.Button( "Open in Shader Forge" ) ) { - if(Event.current.rawType != EventType.mouseDown) + if(Event.current.rawType != EventType.MouseDown) SF_Editor.Init( shader ); } } else { diff --git a/Shader Forge/Packages/manifest.json b/Shader Forge/Packages/manifest.json new file mode 100644 index 00000000..526aca60 --- /dev/null +++ b/Shader Forge/Packages/manifest.json @@ -0,0 +1,4 @@ +{ + "dependencies": { + } +} diff --git a/Shader Forge/ProjectSettings/PresetManager.asset b/Shader Forge/ProjectSettings/PresetManager.asset new file mode 100644 index 00000000..636a595b --- /dev/null +++ b/Shader Forge/ProjectSettings/PresetManager.asset @@ -0,0 +1,6 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!1386491679 &1 +PresetManager: + m_ObjectHideFlags: 0 + m_DefaultList: [] diff --git a/Shader Forge/ProjectSettings/ProjectVersion.txt b/Shader Forge/ProjectSettings/ProjectVersion.txt index ca09a3da..22977b32 100644 --- a/Shader Forge/ProjectSettings/ProjectVersion.txt +++ b/Shader Forge/ProjectSettings/ProjectVersion.txt @@ -1 +1 @@ -m_EditorVersion: 5.6.0f3 +m_EditorVersion: 2018.1.0f2 From b082779f2ca9d4b8ef39bbcfc40a56485443e1f9 Mon Sep 17 00:00:00 2001 From: Jacky Riawan Date: Sat, 5 May 2018 08:42:23 +0200 Subject: [PATCH 04/27] fix shaders error --- .../Shaders/CustomLighting.shader | 4 +-- .../Shaders/CustomLighting.shader.meta | 4 +-- .../Shaders/LightWrapping.shader | 6 ++-- .../Shaders/LightWrapping.shader.meta | 4 +-- .../Example Assets/Shaders/Parallax.shader | 4 +-- .../Shaders/Parallax.shader.meta | 4 +-- .../Shaders/PixelRotator.shader | 12 +++---- .../Shaders/PixelRotator.shader.meta | 4 +-- .../Example Assets/Shaders/Refraction.shader | 4 +-- .../Shaders/Refraction.shader.meta | 4 +-- .../Shaders/TessellationDisplacement.shader | 34 +++++++++---------- .../TessellationDisplacement.shader.meta | 4 +-- .../Example Assets/Shaders/Tiles.shader | 6 ++-- .../Example Assets/Shaders/Tiles.shader.meta | 4 +-- .../Example Assets/Shaders/Vegetation.shader | 4 +-- .../Shaders/Vegetation.shader.meta | 4 +-- .../Shaders/VertexAnimation.shader | 32 ++++++++--------- .../Shaders/VertexAnimation.shader.meta | 4 +-- .../Shaders/VertexColorRounding.shader.meta | 4 +-- 19 files changed, 73 insertions(+), 73 deletions(-) diff --git a/Shader Forge/Assets/ShaderForge/Example Assets/Shaders/CustomLighting.shader b/Shader Forge/Assets/ShaderForge/Example Assets/Shaders/CustomLighting.shader index 5d79f548..b45aaa3f 100644 --- a/Shader Forge/Assets/ShaderForge/Example Assets/Shaders/CustomLighting.shader +++ b/Shader Forge/Assets/ShaderForge/Example Assets/Shaders/CustomLighting.shader @@ -106,7 +106,7 @@ Shader "Shader Forge/Examples/Custom Lighting" { float3 lightColor = _LightColor0.rgb; float3 halfDirection = normalize(viewDirection+lightDirection); ////// Lighting: - float attenuation = LIGHT_ATTENUATION(i); + UNITY_LIGHT_ATTENUATION(attenuation,i, i.posWorld.xyz); float4 _Diffuse_var = tex2D(_Diffuse,TRANSFORM_TEX(i.uv0, _Diffuse)); float3 finalColor = (attenuation*_LightColor0.rgb*((_Diffuse_var.rgb*_Color.rgb*floor(max(0,dot(lightDirection,normalDirection)) * _Bands) / (_Bands - 1))+UNITY_LIGHTMODEL_AMBIENT.rgb+floor(pow(max(0,dot(normalDirection,halfDirection)),exp2(((_Gloss*10.0)+1.0))) * _Bands) / (_Bands - 1))); return fixed4(finalColor,1); @@ -174,7 +174,7 @@ Shader "Shader Forge/Examples/Custom Lighting" { float3 lightColor = _LightColor0.rgb; float3 halfDirection = normalize(viewDirection+lightDirection); ////// Lighting: - float attenuation = LIGHT_ATTENUATION(i); + UNITY_LIGHT_ATTENUATION(attenuation,i, i.posWorld.xyz); float4 _Diffuse_var = tex2D(_Diffuse,TRANSFORM_TEX(i.uv0, _Diffuse)); float3 finalColor = (attenuation*_LightColor0.rgb*((_Diffuse_var.rgb*_Color.rgb*floor(max(0,dot(lightDirection,normalDirection)) * _Bands) / (_Bands - 1))+UNITY_LIGHTMODEL_AMBIENT.rgb+floor(pow(max(0,dot(normalDirection,halfDirection)),exp2(((_Gloss*10.0)+1.0))) * _Bands) / (_Bands - 1))); return fixed4(finalColor * 1,0); diff --git a/Shader Forge/Assets/ShaderForge/Example Assets/Shaders/CustomLighting.shader.meta b/Shader Forge/Assets/ShaderForge/Example Assets/Shaders/CustomLighting.shader.meta index afc26cc7..0609b53f 100644 --- a/Shader Forge/Assets/ShaderForge/Example Assets/Shaders/CustomLighting.shader.meta +++ b/Shader Forge/Assets/ShaderForge/Example Assets/Shaders/CustomLighting.shader.meta @@ -1,11 +1,11 @@ fileFormatVersion: 2 guid: e570c2adf90d6a24b8634788025bb2bb -timeCreated: 1503327501 -licenseType: Pro ShaderImporter: + externalObjects: {} defaultTextures: - _Diffuse: {fileID: 2800000, guid: 8993b617f08498f43adcbd90697f1c5d, type: 3} - _Normals: {fileID: 2800000, guid: c6dfb00dbee6bc044a8a3bb22e56e064, type: 3} + nonModifiableTextures: [] userData: assetBundleName: assetBundleVariant: diff --git a/Shader Forge/Assets/ShaderForge/Example Assets/Shaders/LightWrapping.shader b/Shader Forge/Assets/ShaderForge/Example Assets/Shaders/LightWrapping.shader index 2aa87c34..9426cafd 100644 --- a/Shader Forge/Assets/ShaderForge/Example Assets/Shaders/LightWrapping.shader +++ b/Shader Forge/Assets/ShaderForge/Example Assets/Shaders/LightWrapping.shader @@ -1,7 +1,7 @@ // Shader created with Shader Forge v1.38 // Shader Forge (c) Freya Holmer - http://www.acegikmo.com/shaderforge/ // Note: Manually altering this data may prevent you from opening it in Shader Forge -/*SF_DATA;ver:1.38;sub:START;pass:START;ps:flbk:,iptp:0,cusa:False,bamd:0,cgin:,lico:1,lgpr:1,limd:3,spmd:1,trmd:0,grmd:0,uamb:True,mssp:True,bkdf:True,hqlp:False,rprd:True,enco:False,rmgx:True,imps:True,rpth:0,vtps:0,hqsc:True,nrmq:1,nrsp:0,vomd:0,spxs:False,tesm:0,olmd:1,culm:0,bsrc:0,bdst:1,dpts:2,wrdp:True,dith:0,atcv:False,rfrpo:True,rfrpn:Refraction,coma:15,ufog:False,aust:True,igpj:False,qofs:0,qpre:1,rntp:1,fgom:False,fgoc:False,fgod:False,fgor:False,fgmd:0,fgcr:0.5,fgcg:0.5,fgcb:0.5,fgca:1,fgde:0.01,fgrn:0,fgrf:300,stcl:False,atwp:False,stva:128,stmr:255,stmw:255,stcp:6,stps:0,stfa:0,stfz:0,ofsf:0,ofsu:0,f2p0:False,fnsp:False,fnfb:False,fsmp:False;n:type:ShaderForge.SFN_Final,id:0,x:33560,y:32563,varname:node_0,prsc:2|diff-270-RGB,spec-1906-OUT,gloss-8495-OUT,lwrap-272-RGB;n:type:ShaderForge.SFN_Color,id:270,x:33250,y:32393,ptovrint:False,ptlb:Diffuse,ptin:_Diffuse,varname:_Diffuse,prsc:2,glob:False,taghide:False,taghdr:False,tagprd:False,tagnsco:False,tagnrm:False,c1:0.9117647,c2:0.8760425,c3:0.8179066,c4:1;n:type:ShaderForge.SFN_Color,id:272,x:33250,y:32735,ptovrint:False,ptlb:Light Wrapping,ptin:_LightWrapping,varname:_LightWrapping,prsc:2,glob:False,taghide:False,taghdr:False,tagprd:False,tagnsco:False,tagnrm:False,c1:0.9058824,c2:0.4941176,c3:0.4901961,c4:1;n:type:ShaderForge.SFN_Vector1,id:1906,x:33250,y:32541,varname:node_1906,prsc:2,v1:0;n:type:ShaderForge.SFN_Slider,id:8495,x:33093,y:32628,ptovrint:False,ptlb:Gloss,ptin:_Gloss,varname:node_8495,prsc:2,glob:False,taghide:False,taghdr:False,tagprd:False,tagnsco:False,tagnrm:False,min:0,cur:0,max:1;proporder:272-270-8495;pass:END;sub:END;*/ +/*SF_DATA;ver:1.38;sub:START;pass:START;ps:flbk:,iptp:0,cusa:False,bamd:0,cgin:,lico:1,lgpr:1,limd:3,spmd:1,trmd:0,grmd:0,uamb:True,mssp:True,bkdf:True,hqlp:False,rprd:True,enco:False,rmgx:True,imps:True,rpth:0,vtps:0,hqsc:True,nrmq:1,nrsp:0,vomd:0,spxs:False,tesm:0,olmd:1,culm:0,bsrc:0,bdst:1,dpts:2,wrdp:True,dith:0,atcv:False,rfrpo:True,rfrpn:Refraction,coma:15,ufog:False,aust:True,igpj:False,qofs:0,qpre:1,rntp:1,fgom:False,fgoc:False,fgod:False,fgor:False,fgmd:0,fgcr:0.5,fgcg:0.5,fgcb:0.5,fgca:1,fgde:0.01,fgrn:0,fgrf:300,stcl:False,atwp:False,stva:128,stmr:255,stmw:255,stcp:6,stps:0,stfa:0,stfz:0,ofsf:0,ofsu:0,f2p0:False,fnsp:False,fnfb:False,fsmp:False;n:type:ShaderForge.SFN_Final,id:0,x:33560,y:32563,varname:node_0,prsc:2|diff-270-RGB,spec-1906-OUT,gloss-8495-OUT,lwrap-272-RGB;n:type:ShaderForge.SFN_Color,id:270,x:33250,y:32393,ptovrint:False,ptlb:Diffuse,ptin:_Diffuse,varname:_Diffuse,prsc:2,glob:False,taghide:False,taghdr:False,tagprd:False,tagnsco:False,tagnrm:False,c1:0.9117647,c2:0.8760425,c3:0.8179066,c4:1;n:type:ShaderForge.SFN_Color,id:272,x:33250,y:32735,ptovrint:False,ptlb:Light Wrapping,ptin:_LightWrapping,varname:_LightWrapping,prsc:2,glob:False,taghide:False,taghdr:False,tagprd:False,tagnsco:False,tagnrm:False,c1:0.9058824,c2:0.4941176,c3:0.4901961,c4:1;n:type:ShaderForge.SFN_Vector1,id:1906,x:33250,y:32541,varname:node_1906,prsc:2,v1:0;n:type:ShaderForge.SFN_Slider,id:8495,x:33093,y:32628,ptovrint:False,ptlb:Gloss,ptin:_Gloss,varname:_Gloss,prsc:2,glob:False,taghide:False,taghdr:False,tagprd:False,tagnsco:False,tagnrm:False,min:0,cur:0,max:1;proporder:272-270-8495;pass:END;sub:END;*/ Shader "Shader Forge/Examples/LightWrapping" { Properties { @@ -91,7 +91,7 @@ Shader "Shader Forge/Examples/LightWrapping" { float3 lightColor = _LightColor0.rgb; float3 halfDirection = normalize(viewDirection+lightDirection); ////// Lighting: - float attenuation = LIGHT_ATTENUATION(i); + UNITY_LIGHT_ATTENUATION(attenuation,i, i.posWorld.xyz); float3 attenColor = attenuation * _LightColor0.xyz; float Pi = 3.141592654; float InvPi = 0.31830988618; @@ -260,7 +260,7 @@ Shader "Shader Forge/Examples/LightWrapping" { float3 lightColor = _LightColor0.rgb; float3 halfDirection = normalize(viewDirection+lightDirection); ////// Lighting: - float attenuation = LIGHT_ATTENUATION(i); + UNITY_LIGHT_ATTENUATION(attenuation,i, i.posWorld.xyz); float3 attenColor = attenuation * _LightColor0.xyz; float Pi = 3.141592654; float InvPi = 0.31830988618; diff --git a/Shader Forge/Assets/ShaderForge/Example Assets/Shaders/LightWrapping.shader.meta b/Shader Forge/Assets/ShaderForge/Example Assets/Shaders/LightWrapping.shader.meta index 3b2e7edf..7f704f51 100644 --- a/Shader Forge/Assets/ShaderForge/Example Assets/Shaders/LightWrapping.shader.meta +++ b/Shader Forge/Assets/ShaderForge/Example Assets/Shaders/LightWrapping.shader.meta @@ -1,9 +1,9 @@ fileFormatVersion: 2 guid: 12dc48c8a56df784b93db42c5d582f3e -timeCreated: 1503327504 -licenseType: Pro ShaderImporter: + externalObjects: {} defaultTextures: [] + nonModifiableTextures: [] userData: assetBundleName: assetBundleVariant: diff --git a/Shader Forge/Assets/ShaderForge/Example Assets/Shaders/Parallax.shader b/Shader Forge/Assets/ShaderForge/Example Assets/Shaders/Parallax.shader index 10de31ab..fcf69a1c 100644 --- a/Shader Forge/Assets/ShaderForge/Example Assets/Shaders/Parallax.shader +++ b/Shader Forge/Assets/ShaderForge/Example Assets/Shaders/Parallax.shader @@ -100,7 +100,7 @@ Shader "Shader Forge/Examples/Parallax" { float3 lightColor = _LightColor0.rgb; float3 halfDirection = normalize(viewDirection+lightDirection); ////// Lighting: - float attenuation = LIGHT_ATTENUATION(i); + UNITY_LIGHT_ATTENUATION(attenuation,i, i.posWorld.xyz); float3 attenColor = attenuation * _LightColor0.xyz; float Pi = 3.141592654; float InvPi = 0.31830988618; @@ -278,7 +278,7 @@ Shader "Shader Forge/Examples/Parallax" { float3 lightColor = _LightColor0.rgb; float3 halfDirection = normalize(viewDirection+lightDirection); ////// Lighting: - float attenuation = LIGHT_ATTENUATION(i); + UNITY_LIGHT_ATTENUATION(attenuation,i, i.posWorld.xyz); float3 attenColor = attenuation * _LightColor0.xyz; float Pi = 3.141592654; float InvPi = 0.31830988618; diff --git a/Shader Forge/Assets/ShaderForge/Example Assets/Shaders/Parallax.shader.meta b/Shader Forge/Assets/ShaderForge/Example Assets/Shaders/Parallax.shader.meta index 4b22187d..59fee484 100644 --- a/Shader Forge/Assets/ShaderForge/Example Assets/Shaders/Parallax.shader.meta +++ b/Shader Forge/Assets/ShaderForge/Example Assets/Shaders/Parallax.shader.meta @@ -1,11 +1,11 @@ fileFormatVersion: 2 guid: 848a7fd7a01ca494bbaad23b3f926b42 -timeCreated: 1503327507 -licenseType: Pro ShaderImporter: + externalObjects: {} defaultTextures: - _Normal: {fileID: 2800000, guid: cf20bfced7e912046a9ce991a4d775ec, type: 3} - _AORGBHeightA: {fileID: 2800000, guid: 5fb7986dd6d0a8e4093ba82369dd6a4d, type: 3} + nonModifiableTextures: [] userData: assetBundleName: assetBundleVariant: diff --git a/Shader Forge/Assets/ShaderForge/Example Assets/Shaders/PixelRotator.shader b/Shader Forge/Assets/ShaderForge/Example Assets/Shaders/PixelRotator.shader index acd388a8..a34c8d30 100644 --- a/Shader Forge/Assets/ShaderForge/Example Assets/Shaders/PixelRotator.shader +++ b/Shader Forge/Assets/ShaderForge/Example Assets/Shaders/PixelRotator.shader @@ -58,7 +58,7 @@ Shader "Shader Forge/Examples/Pixel Rotator" { float3 lightDirection = normalize(_WorldSpaceLightPos0.xyz); float3 lightColor = _LightColor0.rgb; ////// Lighting: - float attenuation = LIGHT_ATTENUATION(i); + UNITY_LIGHT_ATTENUATION(attenuation,i, i.posWorld.xyz); float3 attenColor = attenuation * _LightColor0.xyz; /////// Diffuse: float NdotL = max(0.0,dot( normalDirection, lightDirection )); @@ -79,8 +79,8 @@ Shader "Shader Forge/Examples/Pixel Rotator" { float2 node_741_skew = node_744 + 0.2127+node_744.x*0.3713*node_744.y; float2 node_741_rnd = 4.789*sin(489.123*(node_741_skew)); float node_741 = frac(node_741_rnd.x*node_741_rnd.y*(1+node_741_skew.x)); - float4 node_1817 = _Time; - float node_563_ang = node_1817.g; + float4 node_6513 = _Time; + float node_563_ang = node_6513.g; float node_563_spd = 1.0; float node_563_cos = cos(node_563_spd*node_563_ang); float node_563_sin = sin(node_563_spd*node_563_ang); @@ -146,7 +146,7 @@ Shader "Shader Forge/Examples/Pixel Rotator" { float3 lightDirection = normalize(lerp(_WorldSpaceLightPos0.xyz, _WorldSpaceLightPos0.xyz - i.posWorld.xyz,_WorldSpaceLightPos0.w)); float3 lightColor = _LightColor0.rgb; ////// Lighting: - float attenuation = LIGHT_ATTENUATION(i); + UNITY_LIGHT_ATTENUATION(attenuation,i, i.posWorld.xyz); float3 attenColor = attenuation * _LightColor0.xyz; /////// Diffuse: float NdotL = max(0.0,dot( normalDirection, lightDirection )); @@ -165,8 +165,8 @@ Shader "Shader Forge/Examples/Pixel Rotator" { float2 node_741_skew = node_744 + 0.2127+node_744.x*0.3713*node_744.y; float2 node_741_rnd = 4.789*sin(489.123*(node_741_skew)); float node_741 = frac(node_741_rnd.x*node_741_rnd.y*(1+node_741_skew.x)); - float4 node_1127 = _Time; - float node_563_ang = node_1127.g; + float4 node_9092 = _Time; + float node_563_ang = node_9092.g; float node_563_spd = 1.0; float node_563_cos = cos(node_563_spd*node_563_ang); float node_563_sin = sin(node_563_spd*node_563_ang); diff --git a/Shader Forge/Assets/ShaderForge/Example Assets/Shaders/PixelRotator.shader.meta b/Shader Forge/Assets/ShaderForge/Example Assets/Shaders/PixelRotator.shader.meta index 5a747784..5c7b8ef3 100644 --- a/Shader Forge/Assets/ShaderForge/Example Assets/Shaders/PixelRotator.shader.meta +++ b/Shader Forge/Assets/ShaderForge/Example Assets/Shaders/PixelRotator.shader.meta @@ -1,9 +1,9 @@ fileFormatVersion: 2 guid: 3c2ff98dd53924d0b85358d999cf6890 -timeCreated: 1503327511 -licenseType: Pro ShaderImporter: + externalObjects: {} defaultTextures: [] + nonModifiableTextures: [] userData: assetBundleName: assetBundleVariant: diff --git a/Shader Forge/Assets/ShaderForge/Example Assets/Shaders/Refraction.shader b/Shader Forge/Assets/ShaderForge/Example Assets/Shaders/Refraction.shader index 6a765d74..c575bf2b 100644 --- a/Shader Forge/Assets/ShaderForge/Example Assets/Shaders/Refraction.shader +++ b/Shader Forge/Assets/ShaderForge/Example Assets/Shaders/Refraction.shader @@ -85,7 +85,7 @@ Shader "Shader Forge/Examples/Refraction" { float3 lightColor = _LightColor0.rgb; float3 halfDirection = normalize(viewDirection+lightDirection); ////// Lighting: - float attenuation = LIGHT_ATTENUATION(i); + UNITY_LIGHT_ATTENUATION(attenuation,i, i.posWorld.xyz); float3 attenColor = attenuation * _LightColor0.xyz; float Pi = 3.141592654; float InvPi = 0.31830988618; @@ -251,7 +251,7 @@ Shader "Shader Forge/Examples/Refraction" { float3 lightColor = _LightColor0.rgb; float3 halfDirection = normalize(viewDirection+lightDirection); ////// Lighting: - float attenuation = LIGHT_ATTENUATION(i); + UNITY_LIGHT_ATTENUATION(attenuation,i, i.posWorld.xyz); float3 attenColor = attenuation * _LightColor0.xyz; float Pi = 3.141592654; float InvPi = 0.31830988618; diff --git a/Shader Forge/Assets/ShaderForge/Example Assets/Shaders/Refraction.shader.meta b/Shader Forge/Assets/ShaderForge/Example Assets/Shaders/Refraction.shader.meta index f3f1efe9..3907daad 100644 --- a/Shader Forge/Assets/ShaderForge/Example Assets/Shaders/Refraction.shader.meta +++ b/Shader Forge/Assets/ShaderForge/Example Assets/Shaders/Refraction.shader.meta @@ -1,10 +1,10 @@ fileFormatVersion: 2 guid: 6562ed1722964fc4fa4eba1d756e19b7 -timeCreated: 1502814920 -licenseType: Pro ShaderImporter: + externalObjects: {} defaultTextures: - _Refraction: {fileID: 2800000, guid: bbab0a6f7bae9cf42bf057d8ee2755f6, type: 3} + nonModifiableTextures: [] userData: assetBundleName: assetBundleVariant: diff --git a/Shader Forge/Assets/ShaderForge/Example Assets/Shaders/TessellationDisplacement.shader b/Shader Forge/Assets/ShaderForge/Example Assets/Shaders/TessellationDisplacement.shader index 1cc8f63b..5719a2a5 100644 --- a/Shader Forge/Assets/ShaderForge/Example Assets/Shaders/TessellationDisplacement.shader +++ b/Shader Forge/Assets/ShaderForge/Example Assets/Shaders/TessellationDisplacement.shader @@ -1,7 +1,7 @@ // Shader created with Shader Forge v1.38 // Shader Forge (c) Freya Holmer - http://www.acegikmo.com/shaderforge/ // Note: Manually altering this data may prevent you from opening it in Shader Forge -/*SF_DATA;ver:1.38;sub:START;pass:START;ps:flbk:,iptp:0,cusa:False,bamd:0,cgin:,lico:1,lgpr:1,limd:1,spmd:1,trmd:0,grmd:0,uamb:True,mssp:True,bkdf:True,hqlp:False,rprd:True,enco:False,rmgx:True,imps:True,rpth:0,vtps:0,hqsc:True,nrmq:1,nrsp:0,vomd:0,spxs:False,tesm:0,olmd:1,culm:0,bsrc:0,bdst:1,dpts:2,wrdp:True,dith:0,atcv:False,rfrpo:True,rfrpn:Refraction,coma:15,ufog:True,aust:True,igpj:False,qofs:0,qpre:1,rntp:1,fgom:False,fgoc:False,fgod:False,fgor:False,fgmd:0,fgcr:0.5,fgcg:0.5,fgcb:0.5,fgca:1,fgde:0.01,fgrn:0,fgrf:300,stcl:False,atwp:False,stva:128,stmr:255,stmw:255,stcp:6,stps:0,stfa:0,stfz:0,ofsf:0,ofsu:0,f2p0:False,fnsp:False,fnfb:False,fsmp:False;n:type:ShaderForge.SFN_Final,id:1,x:34362,y:32994,varname:node_1,prsc:2|diff-162-OUT,spec-165-OUT,gloss-66-OUT,normal-160-OUT,lwrap-237-OUT,disp-13-OUT,tess-8-OUT;n:type:ShaderForge.SFN_Tex2d,id:3,x:33597,y:33194,ptovrint:False,ptlb:Normals,ptin:_Normals,varname:_Normals,prsc:2,glob:False,taghide:False,taghdr:False,tagprd:False,tagnsco:False,tagnrm:False,tex:cf20bfced7e912046a9ce991a4d775ec,ntxv:3,isnm:True|UVIN-6-OUT;n:type:ShaderForge.SFN_Tex2d,id:4,x:32986,y:33006,varname:node_798,prsc:2,tex:5fb7986dd6d0a8e4093ba82369dd6a4d,ntxv:0,isnm:False|UVIN-6-OUT,TEX-254-TEX;n:type:ShaderForge.SFN_TexCoord,id:5,x:32078,y:33020,varname:node_5,prsc:2,uv:0,uaff:False;n:type:ShaderForge.SFN_Multiply,id:6,x:32307,y:33100,varname:node_6,prsc:2|A-5-UVOUT,B-7-OUT;n:type:ShaderForge.SFN_Vector1,id:7,x:32078,y:33232,varname:node_7,prsc:2,v1:2;n:type:ShaderForge.SFN_Vector1,id:8,x:34051,y:33620,varname:node_8,prsc:2,v1:3;n:type:ShaderForge.SFN_Tex2d,id:12,x:32759,y:33284,varname:node_803,prsc:2,tex:5fb7986dd6d0a8e4093ba82369dd6a4d,ntxv:0,isnm:False|UVIN-6-OUT,MIP-15-OUT,TEX-254-TEX;n:type:ShaderForge.SFN_Multiply,id:13,x:34051,y:33418,varname:node_13,prsc:2|A-14-OUT,B-17-OUT;n:type:ShaderForge.SFN_NormalVector,id:14,x:33824,y:33442,prsc:2,pt:False;n:type:ShaderForge.SFN_Vector1,id:15,x:32532,y:33364,varname:node_15,prsc:2,v1:1;n:type:ShaderForge.SFN_Slider,id:16,x:33213,y:33639,ptovrint:False,ptlb:Depth,ptin:_Depth,varname:_Depth,prsc:2,glob:False,taghide:False,taghdr:False,tagprd:False,tagnsco:False,tagnrm:False,min:0,cur:0.25,max:0.25;n:type:ShaderForge.SFN_Multiply,id:17,x:33824,y:33620,varname:node_17,prsc:2|A-23-OUT,B-26-OUT;n:type:ShaderForge.SFN_OneMinus,id:23,x:33597,y:33379,varname:node_23,prsc:2|IN-153-OUT;n:type:ShaderForge.SFN_Multiply,id:26,x:33597,y:33537,varname:node_26,prsc:2|A-27-OUT,B-16-OUT;n:type:ShaderForge.SFN_Vector1,id:27,x:33370,y:33478,varname:node_27,prsc:2,v1:-1;n:type:ShaderForge.SFN_Vector1,id:66,x:34051,y:32948,varname:node_66,prsc:2,v1:10;n:type:ShaderForge.SFN_Tex2d,id:152,x:32759,y:33099,ptovrint:False,ptlb:Displacement (R),ptin:_DisplacementR,varname:_DisplacementR,prsc:2,glob:False,taghide:False,taghdr:False,tagprd:False,tagnsco:False,tagnrm:False,tex:28c7aad1372ff114b90d330f8a2dd938,ntxv:0,isnm:False|UVIN-161-UVOUT,MIP-15-OUT;n:type:ShaderForge.SFN_Max,id:153,x:33370,y:33276,varname:node_153,prsc:2|A-152-R,B-12-A;n:type:ShaderForge.SFN_Subtract,id:154,x:32986,y:33174,varname:node_154,prsc:2|A-12-A,B-152-R;n:type:ShaderForge.SFN_Clamp01,id:156,x:33370,y:33108,varname:node_156,prsc:2|IN-154-OUT;n:type:ShaderForge.SFN_Lerp,id:157,x:33824,y:32948,varname:node_157,prsc:2|A-159-OUT,B-3-RGB,T-156-OUT;n:type:ShaderForge.SFN_Vector3,id:159,x:33597,y:33061,varname:node_159,prsc:2,v1:0,v2:0,v3:1;n:type:ShaderForge.SFN_Normalize,id:160,x:34051,y:33082,varname:node_160,prsc:2|IN-157-OUT;n:type:ShaderForge.SFN_Panner,id:161,x:32532,y:32984,varname:node_161,prsc:2,spu:0.4,spv:0|UVIN-6-OUT;n:type:ShaderForge.SFN_Lerp,id:162,x:33597,y:32875,varname:node_162,prsc:2|A-163-OUT,B-170-OUT,T-156-OUT;n:type:ShaderForge.SFN_Vector3,id:163,x:33370,y:32790,varname:node_163,prsc:2,v1:0.4117647,v2:0.3826572,v3:0.3602941;n:type:ShaderForge.SFN_Multiply,id:165,x:34051,y:32746,varname:node_165,prsc:2|A-156-OUT,B-172-OUT;n:type:ShaderForge.SFN_Multiply,id:170,x:33370,y:32940,varname:node_170,prsc:2|A-3497-RGB,B-4-RGB;n:type:ShaderForge.SFN_ComponentMask,id:172,x:33824,y:32770,varname:node_172,prsc:2,cc1:0,cc2:-1,cc3:-1,cc4:-1|IN-162-OUT;n:type:ShaderForge.SFN_OneMinus,id:174,x:33824,y:33284,varname:node_174,prsc:2|IN-156-OUT;n:type:ShaderForge.SFN_Multiply,id:237,x:34051,y:33250,varname:node_237,prsc:2|A-238-OUT,B-174-OUT;n:type:ShaderForge.SFN_Vector1,id:238,x:33824,y:33150,varname:node_238,prsc:2,v1:0.5;n:type:ShaderForge.SFN_Tex2dAsset,id:254,x:32532,y:33145,ptovrint:False,ptlb:AO (RGB) Height (A),ptin:_AORGBHeightA,varname:_AORGBHeightA,glob:False,taghide:False,taghdr:False,tagprd:False,tagnsco:False,tagnrm:False,tex:5fb7986dd6d0a8e4093ba82369dd6a4d,ntxv:0,isnm:False;n:type:ShaderForge.SFN_Tex2d,id:3497,x:32986,y:32833,ptovrint:False,ptlb:Diffuse,ptin:_Diffuse,varname:node_3497,prsc:2,glob:False,taghide:False,taghdr:False,tagprd:False,tagnsco:False,tagnrm:False,tex:b66bceaf0cc0ace4e9bdc92f14bba709,ntxv:0,isnm:False;proporder:3-254-152-16-3497;pass:END;sub:END;*/ +/*SF_DATA;ver:1.38;sub:START;pass:START;ps:flbk:,iptp:0,cusa:False,bamd:0,cgin:,lico:1,lgpr:1,limd:1,spmd:1,trmd:0,grmd:0,uamb:True,mssp:True,bkdf:True,hqlp:False,rprd:True,enco:False,rmgx:True,imps:True,rpth:0,vtps:0,hqsc:True,nrmq:1,nrsp:0,vomd:0,spxs:False,tesm:0,olmd:1,culm:0,bsrc:0,bdst:1,dpts:2,wrdp:True,dith:0,atcv:False,rfrpo:True,rfrpn:Refraction,coma:15,ufog:True,aust:True,igpj:False,qofs:0,qpre:1,rntp:1,fgom:False,fgoc:False,fgod:False,fgor:False,fgmd:0,fgcr:0.5,fgcg:0.5,fgcb:0.5,fgca:1,fgde:0.01,fgrn:0,fgrf:300,stcl:False,atwp:False,stva:128,stmr:255,stmw:255,stcp:6,stps:0,stfa:0,stfz:0,ofsf:0,ofsu:0,f2p0:False,fnsp:False,fnfb:False,fsmp:False;n:type:ShaderForge.SFN_Final,id:1,x:34362,y:32994,varname:node_1,prsc:2|diff-162-OUT,spec-165-OUT,gloss-66-OUT,normal-160-OUT,lwrap-237-OUT,disp-13-OUT,tess-8-OUT;n:type:ShaderForge.SFN_Tex2d,id:3,x:33597,y:33194,ptovrint:False,ptlb:Normals,ptin:_Normals,varname:_Normals,prsc:2,glob:False,taghide:False,taghdr:False,tagprd:False,tagnsco:False,tagnrm:False,tex:cf20bfced7e912046a9ce991a4d775ec,ntxv:3,isnm:True|UVIN-6-OUT;n:type:ShaderForge.SFN_Tex2d,id:4,x:32986,y:33006,varname:node_798,prsc:2,tex:5fb7986dd6d0a8e4093ba82369dd6a4d,ntxv:0,isnm:False|UVIN-6-OUT,TEX-254-TEX;n:type:ShaderForge.SFN_TexCoord,id:5,x:32078,y:33020,varname:node_5,prsc:2,uv:0,uaff:False;n:type:ShaderForge.SFN_Multiply,id:6,x:32307,y:33100,varname:node_6,prsc:2|A-5-UVOUT,B-7-OUT;n:type:ShaderForge.SFN_Vector1,id:7,x:32078,y:33232,varname:node_7,prsc:2,v1:2;n:type:ShaderForge.SFN_Vector1,id:8,x:34051,y:33620,varname:node_8,prsc:2,v1:3;n:type:ShaderForge.SFN_Tex2d,id:12,x:32759,y:33284,varname:node_803,prsc:2,tex:5fb7986dd6d0a8e4093ba82369dd6a4d,ntxv:0,isnm:False|UVIN-6-OUT,MIP-15-OUT,TEX-254-TEX;n:type:ShaderForge.SFN_Multiply,id:13,x:34051,y:33418,varname:node_13,prsc:2|A-14-OUT,B-17-OUT;n:type:ShaderForge.SFN_NormalVector,id:14,x:33824,y:33442,prsc:2,pt:False;n:type:ShaderForge.SFN_Vector1,id:15,x:32532,y:33364,varname:node_15,prsc:2,v1:1;n:type:ShaderForge.SFN_Slider,id:16,x:33213,y:33639,ptovrint:False,ptlb:Depth,ptin:_Depth,varname:_Depth,prsc:2,glob:False,taghide:False,taghdr:False,tagprd:False,tagnsco:False,tagnrm:False,min:0,cur:0.25,max:0.25;n:type:ShaderForge.SFN_Multiply,id:17,x:33824,y:33620,varname:node_17,prsc:2|A-23-OUT,B-26-OUT;n:type:ShaderForge.SFN_OneMinus,id:23,x:33597,y:33379,varname:node_23,prsc:2|IN-153-OUT;n:type:ShaderForge.SFN_Multiply,id:26,x:33597,y:33537,varname:node_26,prsc:2|A-27-OUT,B-16-OUT;n:type:ShaderForge.SFN_Vector1,id:27,x:33370,y:33478,varname:node_27,prsc:2,v1:-1;n:type:ShaderForge.SFN_Vector1,id:66,x:34051,y:32948,varname:node_66,prsc:2,v1:10;n:type:ShaderForge.SFN_Tex2d,id:152,x:32759,y:33099,ptovrint:False,ptlb:Displacement (R),ptin:_DisplacementR,varname:_DisplacementR,prsc:2,glob:False,taghide:False,taghdr:False,tagprd:False,tagnsco:False,tagnrm:False,tex:28c7aad1372ff114b90d330f8a2dd938,ntxv:0,isnm:False|UVIN-161-UVOUT,MIP-15-OUT;n:type:ShaderForge.SFN_Max,id:153,x:33370,y:33276,varname:node_153,prsc:2|A-152-R,B-12-A;n:type:ShaderForge.SFN_Subtract,id:154,x:32986,y:33174,varname:node_154,prsc:2|A-12-A,B-152-R;n:type:ShaderForge.SFN_Clamp01,id:156,x:33370,y:33108,varname:node_156,prsc:2|IN-154-OUT;n:type:ShaderForge.SFN_Lerp,id:157,x:33824,y:32948,varname:node_157,prsc:2|A-159-OUT,B-3-RGB,T-156-OUT;n:type:ShaderForge.SFN_Vector3,id:159,x:33597,y:33061,varname:node_159,prsc:2,v1:0,v2:0,v3:1;n:type:ShaderForge.SFN_Normalize,id:160,x:34051,y:33082,varname:node_160,prsc:2|IN-157-OUT;n:type:ShaderForge.SFN_Panner,id:161,x:32532,y:32984,varname:node_161,prsc:2,spu:0.4,spv:0|UVIN-6-OUT;n:type:ShaderForge.SFN_Lerp,id:162,x:33597,y:32875,varname:node_162,prsc:2|A-163-OUT,B-170-OUT,T-156-OUT;n:type:ShaderForge.SFN_Vector3,id:163,x:33370,y:32790,varname:node_163,prsc:2,v1:0.4117647,v2:0.3826572,v3:0.3602941;n:type:ShaderForge.SFN_Multiply,id:165,x:34051,y:32746,varname:node_165,prsc:2|A-156-OUT,B-172-OUT;n:type:ShaderForge.SFN_Multiply,id:170,x:33370,y:32940,varname:node_170,prsc:2|A-3497-RGB,B-4-RGB;n:type:ShaderForge.SFN_ComponentMask,id:172,x:33824,y:32770,varname:node_172,prsc:2,cc1:0,cc2:-1,cc3:-1,cc4:-1|IN-162-OUT;n:type:ShaderForge.SFN_OneMinus,id:174,x:33824,y:33284,varname:node_174,prsc:2|IN-156-OUT;n:type:ShaderForge.SFN_Multiply,id:237,x:34051,y:33250,varname:node_237,prsc:2|A-238-OUT,B-174-OUT;n:type:ShaderForge.SFN_Vector1,id:238,x:33824,y:33150,varname:node_238,prsc:2,v1:0.5;n:type:ShaderForge.SFN_Tex2dAsset,id:254,x:32532,y:33145,ptovrint:False,ptlb:AO (RGB) Height (A),ptin:_AORGBHeightA,varname:_AORGBHeightA,glob:False,taghide:False,taghdr:False,tagprd:False,tagnsco:False,tagnrm:False,tex:5fb7986dd6d0a8e4093ba82369dd6a4d,ntxv:0,isnm:False;n:type:ShaderForge.SFN_Tex2d,id:3497,x:32986,y:32833,ptovrint:False,ptlb:Diffuse,ptin:_Diffuse,varname:_Diffuse,prsc:2,glob:False,taghide:False,taghdr:False,tagprd:False,tagnsco:False,tagnrm:False,tex:b66bceaf0cc0ace4e9bdc92f14bba709,ntxv:0,isnm:False;proporder:3-254-152-16-3497;pass:END;sub:END;*/ Shader "Shader Forge/Examples/TessellationDisplacement" { Properties { @@ -123,9 +123,9 @@ Shader "Shader Forge/Examples/TessellationDisplacement" { return o; } void displacement (inout VertexInput v){ - float4 node_21 = _Time; + float4 node_7816 = _Time; float2 node_6 = (v.texcoord0*2.0); - float2 node_161 = (node_6+node_21.g*float2(0.4,0)); + float2 node_161 = (node_6+node_7816.g*float2(0.4,0)); float node_15 = 1.0; float4 _DisplacementR_var = tex2Dlod(_DisplacementR,float4(TRANSFORM_TEX(node_161, _DisplacementR),0.0,node_15)); float4 node_803 = tex2Dlod(_AORGBHeightA,float4(TRANSFORM_TEX(node_6, _AORGBHeightA),0.0,node_15)); @@ -178,8 +178,8 @@ Shader "Shader Forge/Examples/TessellationDisplacement" { float3 _Normals_var = UnpackNormal(tex2D(_Normals,TRANSFORM_TEX(node_6, _Normals))); float node_15 = 1.0; float4 node_803 = tex2Dlod(_AORGBHeightA,float4(TRANSFORM_TEX(node_6, _AORGBHeightA),0.0,node_15)); - float4 node_21 = _Time; - float2 node_161 = (node_6+node_21.g*float2(0.4,0)); + float4 node_7816 = _Time; + float2 node_161 = (node_6+node_7816.g*float2(0.4,0)); float4 _DisplacementR_var = tex2Dlod(_DisplacementR,float4(TRANSFORM_TEX(node_161, _DisplacementR),0.0,node_15)); float node_156 = saturate((node_803.a-_DisplacementR_var.r)); float3 normalLocal = normalize(lerp(float3(0,0,1),_Normals_var.rgb,node_156)); @@ -189,7 +189,7 @@ Shader "Shader Forge/Examples/TessellationDisplacement" { float3 lightColor = _LightColor0.rgb; float3 halfDirection = normalize(viewDirection+lightDirection); ////// Lighting: - float attenuation = LIGHT_ATTENUATION(i); + UNITY_LIGHT_ATTENUATION(attenuation,i, i.posWorld.xyz); float3 attenColor = attenuation * _LightColor0.xyz; ///////// Gloss: float gloss = 10.0; @@ -362,9 +362,9 @@ Shader "Shader Forge/Examples/TessellationDisplacement" { return o; } void displacement (inout VertexInput v){ - float4 node_2942 = _Time; + float4 node_5581 = _Time; float2 node_6 = (v.texcoord0*2.0); - float2 node_161 = (node_6+node_2942.g*float2(0.4,0)); + float2 node_161 = (node_6+node_5581.g*float2(0.4,0)); float node_15 = 1.0; float4 _DisplacementR_var = tex2Dlod(_DisplacementR,float4(TRANSFORM_TEX(node_161, _DisplacementR),0.0,node_15)); float4 node_803 = tex2Dlod(_AORGBHeightA,float4(TRANSFORM_TEX(node_6, _AORGBHeightA),0.0,node_15)); @@ -417,8 +417,8 @@ Shader "Shader Forge/Examples/TessellationDisplacement" { float3 _Normals_var = UnpackNormal(tex2D(_Normals,TRANSFORM_TEX(node_6, _Normals))); float node_15 = 1.0; float4 node_803 = tex2Dlod(_AORGBHeightA,float4(TRANSFORM_TEX(node_6, _AORGBHeightA),0.0,node_15)); - float4 node_2942 = _Time; - float2 node_161 = (node_6+node_2942.g*float2(0.4,0)); + float4 node_5581 = _Time; + float2 node_161 = (node_6+node_5581.g*float2(0.4,0)); float4 _DisplacementR_var = tex2Dlod(_DisplacementR,float4(TRANSFORM_TEX(node_161, _DisplacementR),0.0,node_15)); float node_156 = saturate((node_803.a-_DisplacementR_var.r)); float3 normalLocal = normalize(lerp(float3(0,0,1),_Normals_var.rgb,node_156)); @@ -427,7 +427,7 @@ Shader "Shader Forge/Examples/TessellationDisplacement" { float3 lightColor = _LightColor0.rgb; float3 halfDirection = normalize(viewDirection+lightDirection); ////// Lighting: - float attenuation = LIGHT_ATTENUATION(i); + UNITY_LIGHT_ATTENUATION(attenuation,i, i.posWorld.xyz); float3 attenColor = attenuation * _LightColor0.xyz; ///////// Gloss: float gloss = 10.0; @@ -547,9 +547,9 @@ Shader "Shader Forge/Examples/TessellationDisplacement" { return o; } void displacement (inout VertexInput v){ - float4 node_7647 = _Time; + float4 node_266 = _Time; float2 node_6 = (v.texcoord0*2.0); - float2 node_161 = (node_6+node_7647.g*float2(0.4,0)); + float2 node_161 = (node_6+node_266.g*float2(0.4,0)); float node_15 = 1.0; float4 _DisplacementR_var = tex2Dlod(_DisplacementR,float4(TRANSFORM_TEX(node_161, _DisplacementR),0.0,node_15)); float4 node_803 = tex2Dlod(_AORGBHeightA,float4(TRANSFORM_TEX(node_6, _AORGBHeightA),0.0,node_15)); @@ -690,9 +690,9 @@ Shader "Shader Forge/Examples/TessellationDisplacement" { return o; } void displacement (inout VertexInput v){ - float4 node_5250 = _Time; + float4 node_5112 = _Time; float2 node_6 = (v.texcoord0*2.0); - float2 node_161 = (node_6+node_5250.g*float2(0.4,0)); + float2 node_161 = (node_6+node_5112.g*float2(0.4,0)); float node_15 = 1.0; float4 _DisplacementR_var = tex2Dlod(_DisplacementR,float4(TRANSFORM_TEX(node_161, _DisplacementR),0.0,node_15)); float4 node_803 = tex2Dlod(_AORGBHeightA,float4(TRANSFORM_TEX(node_6, _AORGBHeightA),0.0,node_15)); @@ -751,8 +751,8 @@ Shader "Shader Forge/Examples/TessellationDisplacement" { float4 node_798 = tex2D(_AORGBHeightA,TRANSFORM_TEX(node_6, _AORGBHeightA)); float node_15 = 1.0; float4 node_803 = tex2Dlod(_AORGBHeightA,float4(TRANSFORM_TEX(node_6, _AORGBHeightA),0.0,node_15)); - float4 node_5250 = _Time; - float2 node_161 = (node_6+node_5250.g*float2(0.4,0)); + float4 node_5112 = _Time; + float2 node_161 = (node_6+node_5112.g*float2(0.4,0)); float4 _DisplacementR_var = tex2Dlod(_DisplacementR,float4(TRANSFORM_TEX(node_161, _DisplacementR),0.0,node_15)); float node_156 = saturate((node_803.a-_DisplacementR_var.r)); float3 node_162 = lerp(float3(0.4117647,0.3826572,0.3602941),(_Diffuse_var.rgb*node_798.rgb),node_156); diff --git a/Shader Forge/Assets/ShaderForge/Example Assets/Shaders/TessellationDisplacement.shader.meta b/Shader Forge/Assets/ShaderForge/Example Assets/Shaders/TessellationDisplacement.shader.meta index 1f37dba9..fc12fb54 100644 --- a/Shader Forge/Assets/ShaderForge/Example Assets/Shaders/TessellationDisplacement.shader.meta +++ b/Shader Forge/Assets/ShaderForge/Example Assets/Shaders/TessellationDisplacement.shader.meta @@ -1,13 +1,13 @@ fileFormatVersion: 2 guid: 5e81283b11113de4295d1943aec0a765 -timeCreated: 1503327524 -licenseType: Pro ShaderImporter: + externalObjects: {} defaultTextures: - _Normals: {fileID: 2800000, guid: cf20bfced7e912046a9ce991a4d775ec, type: 3} - _DisplacementR: {fileID: 2800000, guid: 28c7aad1372ff114b90d330f8a2dd938, type: 3} - _AORGBHeightA: {fileID: 2800000, guid: 5fb7986dd6d0a8e4093ba82369dd6a4d, type: 3} - _Diffuse: {fileID: 2800000, guid: b66bceaf0cc0ace4e9bdc92f14bba709, type: 3} + nonModifiableTextures: [] userData: assetBundleName: assetBundleVariant: diff --git a/Shader Forge/Assets/ShaderForge/Example Assets/Shaders/Tiles.shader b/Shader Forge/Assets/ShaderForge/Example Assets/Shaders/Tiles.shader index 331776e7..f810288c 100644 --- a/Shader Forge/Assets/ShaderForge/Example Assets/Shaders/Tiles.shader +++ b/Shader Forge/Assets/ShaderForge/Example Assets/Shaders/Tiles.shader @@ -1,7 +1,7 @@ // Shader created with Shader Forge v1.38 // Shader Forge (c) Freya Holmer - http://www.acegikmo.com/shaderforge/ // Note: Manually altering this data may prevent you from opening it in Shader Forge -/*SF_DATA;ver:1.38;sub:START;pass:START;ps:flbk:,iptp:0,cusa:False,bamd:0,cgin:,lico:1,lgpr:1,limd:3,spmd:1,trmd:0,grmd:0,uamb:True,mssp:True,bkdf:True,hqlp:False,rprd:True,enco:False,rmgx:True,imps:True,rpth:0,vtps:0,hqsc:True,nrmq:1,nrsp:0,vomd:0,spxs:False,tesm:0,olmd:1,culm:0,bsrc:0,bdst:1,dpts:2,wrdp:True,dith:0,atcv:False,rfrpo:True,rfrpn:Refraction,coma:15,ufog:True,aust:True,igpj:False,qofs:0,qpre:1,rntp:1,fgom:False,fgoc:False,fgod:False,fgor:False,fgmd:0,fgcr:0.5,fgcg:0.5,fgcb:0.5,fgca:1,fgde:0.01,fgrn:0,fgrf:300,stcl:False,atwp:False,stva:128,stmr:255,stmw:255,stcp:6,stps:0,stfa:0,stfz:0,ofsf:0,ofsu:0,f2p0:False,fnsp:False,fnfb:False,fsmp:False;n:type:ShaderForge.SFN_Final,id:0,x:33638,y:32808,varname:node_0,prsc:2|diff-138-RGB,spec-145-OUT,gloss-144-OUT;n:type:ShaderForge.SFN_Tex2d,id:138,x:33259,y:32700,ptovrint:False,ptlb:Base Color,ptin:_BaseColor,varname:_Diffuse,prsc:2,glob:False,taghide:False,taghdr:False,tagprd:False,tagnsco:False,tagnrm:False,tex:b66bceaf0cc0ace4e9bdc92f14bba709,ntxv:0,isnm:False;n:type:ShaderForge.SFN_Slider,id:144,x:33102,y:32979,ptovrint:False,ptlb:Gloss,ptin:_Gloss,varname:_Gloss,prsc:2,glob:False,taghide:False,taghdr:False,tagprd:False,tagnsco:False,tagnrm:False,min:0,cur:0.5,max:1;n:type:ShaderForge.SFN_Slider,id:145,x:33102,y:32879,ptovrint:False,ptlb:Metallic,ptin:_Metallic,varname:_Specular,prsc:2,glob:False,taghide:False,taghdr:False,tagprd:False,tagnsco:False,tagnrm:False,min:0,cur:0,max:1;proporder:138-145-144;pass:END;sub:END;*/ +/*SF_DATA;ver:1.38;sub:START;pass:START;ps:flbk:,iptp:0,cusa:False,bamd:0,cgin:,lico:1,lgpr:1,limd:3,spmd:1,trmd:0,grmd:0,uamb:True,mssp:True,bkdf:True,hqlp:False,rprd:True,enco:False,rmgx:True,imps:True,rpth:0,vtps:0,hqsc:True,nrmq:1,nrsp:0,vomd:0,spxs:False,tesm:0,olmd:1,culm:0,bsrc:0,bdst:1,dpts:2,wrdp:True,dith:0,atcv:False,rfrpo:True,rfrpn:Refraction,coma:15,ufog:True,aust:True,igpj:False,qofs:0,qpre:1,rntp:1,fgom:False,fgoc:False,fgod:False,fgor:False,fgmd:0,fgcr:0.5,fgcg:0.5,fgcb:0.5,fgca:1,fgde:0.01,fgrn:0,fgrf:300,stcl:False,atwp:False,stva:128,stmr:255,stmw:255,stcp:6,stps:0,stfa:0,stfz:0,ofsf:0,ofsu:0,f2p0:False,fnsp:False,fnfb:False,fsmp:False;n:type:ShaderForge.SFN_Final,id:0,x:33638,y:32808,varname:node_0,prsc:2|diff-138-RGB,spec-145-OUT,gloss-144-OUT;n:type:ShaderForge.SFN_Tex2d,id:138,x:33259,y:32700,ptovrint:False,ptlb:Base Color,ptin:_BaseColor,varname:_BaseColor,prsc:2,glob:False,taghide:False,taghdr:False,tagprd:False,tagnsco:False,tagnrm:False,tex:b66bceaf0cc0ace4e9bdc92f14bba709,ntxv:0,isnm:False;n:type:ShaderForge.SFN_Slider,id:144,x:33102,y:32979,ptovrint:False,ptlb:Gloss,ptin:_Gloss,varname:_Gloss,prsc:2,glob:False,taghide:False,taghdr:False,tagprd:False,tagnsco:False,tagnrm:False,min:0,cur:0.5,max:1;n:type:ShaderForge.SFN_Slider,id:145,x:33102,y:32879,ptovrint:False,ptlb:Metallic,ptin:_Metallic,varname:_Metallic,prsc:2,glob:False,taghide:False,taghdr:False,tagprd:False,tagnsco:False,tagnrm:False,min:0,cur:0,max:1;proporder:138-145-144;pass:END;sub:END;*/ Shader "Shader Forge/Examples/Tiles" { Properties { @@ -97,7 +97,7 @@ Shader "Shader Forge/Examples/Tiles" { float3 lightColor = _LightColor0.rgb; float3 halfDirection = normalize(viewDirection+lightDirection); ////// Lighting: - float attenuation = LIGHT_ATTENUATION(i); + UNITY_LIGHT_ATTENUATION(attenuation,i, i.posWorld.xyz); float3 attenColor = attenuation * _LightColor0.xyz; float Pi = 3.141592654; float InvPi = 0.31830988618; @@ -271,7 +271,7 @@ Shader "Shader Forge/Examples/Tiles" { float3 lightColor = _LightColor0.rgb; float3 halfDirection = normalize(viewDirection+lightDirection); ////// Lighting: - float attenuation = LIGHT_ATTENUATION(i); + UNITY_LIGHT_ATTENUATION(attenuation,i, i.posWorld.xyz); float3 attenColor = attenuation * _LightColor0.xyz; float Pi = 3.141592654; float InvPi = 0.31830988618; diff --git a/Shader Forge/Assets/ShaderForge/Example Assets/Shaders/Tiles.shader.meta b/Shader Forge/Assets/ShaderForge/Example Assets/Shaders/Tiles.shader.meta index 0cfc4dca..7de6f97e 100644 --- a/Shader Forge/Assets/ShaderForge/Example Assets/Shaders/Tiles.shader.meta +++ b/Shader Forge/Assets/ShaderForge/Example Assets/Shaders/Tiles.shader.meta @@ -1,10 +1,10 @@ fileFormatVersion: 2 guid: 05eb3a2c382b4154cb71394a349d0909 -timeCreated: 1503327527 -licenseType: Pro ShaderImporter: + externalObjects: {} defaultTextures: - _BaseColor: {fileID: 2800000, guid: b66bceaf0cc0ace4e9bdc92f14bba709, type: 3} + nonModifiableTextures: [] userData: assetBundleName: assetBundleVariant: diff --git a/Shader Forge/Assets/ShaderForge/Example Assets/Shaders/Vegetation.shader b/Shader Forge/Assets/ShaderForge/Example Assets/Shaders/Vegetation.shader index 0cbfab75..c2c665d7 100644 --- a/Shader Forge/Assets/ShaderForge/Example Assets/Shaders/Vegetation.shader +++ b/Shader Forge/Assets/ShaderForge/Example Assets/Shaders/Vegetation.shader @@ -110,7 +110,7 @@ Shader "Shader Forge/Examples/Animated Vegetation" { float3 lightColor = _LightColor0.rgb; float3 halfDirection = normalize(viewDirection+lightDirection); ////// Lighting: - float attenuation = LIGHT_ATTENUATION(i); + UNITY_LIGHT_ATTENUATION(attenuation,i, i.posWorld.xyz); float3 attenColor = attenuation * _LightColor0.xyz; ///////// Gloss: float gloss = 0.4; @@ -254,7 +254,7 @@ Shader "Shader Forge/Examples/Animated Vegetation" { float3 lightColor = _LightColor0.rgb; float3 halfDirection = normalize(viewDirection+lightDirection); ////// Lighting: - float attenuation = LIGHT_ATTENUATION(i); + UNITY_LIGHT_ATTENUATION(attenuation,i, i.posWorld.xyz); float3 attenColor = attenuation * _LightColor0.xyz; ///////// Gloss: float gloss = 0.4; diff --git a/Shader Forge/Assets/ShaderForge/Example Assets/Shaders/Vegetation.shader.meta b/Shader Forge/Assets/ShaderForge/Example Assets/Shaders/Vegetation.shader.meta index 655f7968..2b099fb4 100644 --- a/Shader Forge/Assets/ShaderForge/Example Assets/Shaders/Vegetation.shader.meta +++ b/Shader Forge/Assets/ShaderForge/Example Assets/Shaders/Vegetation.shader.meta @@ -1,11 +1,11 @@ fileFormatVersion: 2 guid: e17d9c256530145c39caf8efc8c94a16 -timeCreated: 1503327530 -licenseType: Pro ShaderImporter: + externalObjects: {} defaultTextures: - _Diffuse: {fileID: 2800000, guid: 66321cc856b03e245ac41ed8a53e0ecc, type: 3} - _Normal: {fileID: 2800000, guid: cb6c5165ed180c543be39ed70e72abc8, type: 3} + nonModifiableTextures: [] userData: assetBundleName: assetBundleVariant: diff --git a/Shader Forge/Assets/ShaderForge/Example Assets/Shaders/VertexAnimation.shader b/Shader Forge/Assets/ShaderForge/Example Assets/Shaders/VertexAnimation.shader index 8779b653..5866aae2 100644 --- a/Shader Forge/Assets/ShaderForge/Example Assets/Shaders/VertexAnimation.shader +++ b/Shader Forge/Assets/ShaderForge/Example Assets/Shaders/VertexAnimation.shader @@ -85,8 +85,8 @@ Shader "Shader Forge/Examples/Vertex Animation" { o.normalDir = UnityObjectToWorldNormal(v.normal); o.tangentDir = normalize( mul( unity_ObjectToWorld, float4( v.tangent.xyz, 0.0 ) ).xyz ); o.bitangentDir = normalize(cross(o.normalDir, o.tangentDir) * v.tangent.w); - float4 node_3210 = _Time; - float node_133 = pow((abs((frac((o.uv0+node_3210.g*float2(0.25,0)).r)-0.5))*2.0),_BulgeShape); // Panning gradient + float4 node_7042 = _Time; + float node_133 = pow((abs((frac((o.uv0+node_7042.g*float2(0.25,0)).r)-0.5))*2.0),_BulgeShape); // Panning gradient float node_1924 = node_133; v.vertex.xyz += (node_1924*_BulgeScale*v.normal); o.posWorld = mul(unity_ObjectToWorld, v.vertex); @@ -101,8 +101,8 @@ Shader "Shader Forge/Examples/Vertex Animation" { float3x3 tangentTransform = float3x3( i.tangentDir, i.bitangentDir, i.normalDir); float3 viewDirection = normalize(_WorldSpaceCameraPos.xyz - i.posWorld.xyz); float3 _Normals_var = UnpackNormal(tex2D(_Normals,TRANSFORM_TEX(i.uv0, _Normals))); - float4 node_3210 = _Time; - float node_133 = pow((abs((frac((i.uv0+node_3210.g*float2(0.25,0)).r)-0.5))*2.0),_BulgeShape); // Panning gradient + float4 node_7042 = _Time; + float node_133 = pow((abs((frac((i.uv0+node_7042.g*float2(0.25,0)).r)-0.5))*2.0),_BulgeShape); // Panning gradient float3 normalLocal = normalize(lerp(_Normals_var.rgb,float3(0,0,1),node_133)); float3 normalDirection = normalize(mul( normalLocal, tangentTransform )); // Perturbed normals float3 viewReflectDirection = reflect( -viewDirection, normalDirection ); @@ -110,7 +110,7 @@ Shader "Shader Forge/Examples/Vertex Animation" { float3 lightColor = _LightColor0.rgb; float3 halfDirection = normalize(viewDirection+lightDirection); ////// Lighting: - float attenuation = LIGHT_ATTENUATION(i); + UNITY_LIGHT_ATTENUATION(attenuation,i, i.posWorld.xyz); float3 attenColor = attenuation * _LightColor0.xyz; ///////// Gloss: float gloss = 0.5; @@ -233,8 +233,8 @@ Shader "Shader Forge/Examples/Vertex Animation" { o.normalDir = UnityObjectToWorldNormal(v.normal); o.tangentDir = normalize( mul( unity_ObjectToWorld, float4( v.tangent.xyz, 0.0 ) ).xyz ); o.bitangentDir = normalize(cross(o.normalDir, o.tangentDir) * v.tangent.w); - float4 node_982 = _Time; - float node_133 = pow((abs((frac((o.uv0+node_982.g*float2(0.25,0)).r)-0.5))*2.0),_BulgeShape); // Panning gradient + float4 node_4847 = _Time; + float node_133 = pow((abs((frac((o.uv0+node_4847.g*float2(0.25,0)).r)-0.5))*2.0),_BulgeShape); // Panning gradient float node_1924 = node_133; v.vertex.xyz += (node_1924*_BulgeScale*v.normal); o.posWorld = mul(unity_ObjectToWorld, v.vertex); @@ -249,15 +249,15 @@ Shader "Shader Forge/Examples/Vertex Animation" { float3x3 tangentTransform = float3x3( i.tangentDir, i.bitangentDir, i.normalDir); float3 viewDirection = normalize(_WorldSpaceCameraPos.xyz - i.posWorld.xyz); float3 _Normals_var = UnpackNormal(tex2D(_Normals,TRANSFORM_TEX(i.uv0, _Normals))); - float4 node_982 = _Time; - float node_133 = pow((abs((frac((i.uv0+node_982.g*float2(0.25,0)).r)-0.5))*2.0),_BulgeShape); // Panning gradient + float4 node_4847 = _Time; + float node_133 = pow((abs((frac((i.uv0+node_4847.g*float2(0.25,0)).r)-0.5))*2.0),_BulgeShape); // Panning gradient float3 normalLocal = normalize(lerp(_Normals_var.rgb,float3(0,0,1),node_133)); float3 normalDirection = normalize(mul( normalLocal, tangentTransform )); // Perturbed normals float3 lightDirection = normalize(lerp(_WorldSpaceLightPos0.xyz, _WorldSpaceLightPos0.xyz - i.posWorld.xyz,_WorldSpaceLightPos0.w)); float3 lightColor = _LightColor0.rgb; float3 halfDirection = normalize(viewDirection+lightDirection); ////// Lighting: - float attenuation = LIGHT_ATTENUATION(i); + UNITY_LIGHT_ATTENUATION(attenuation,i, i.posWorld.xyz); float3 attenColor = attenuation * _LightColor0.xyz; ///////// Gloss: float gloss = 0.5; @@ -336,8 +336,8 @@ Shader "Shader Forge/Examples/Vertex Animation" { o.uv1 = v.texcoord1; o.uv2 = v.texcoord2; o.normalDir = UnityObjectToWorldNormal(v.normal); - float4 node_8271 = _Time; - float node_133 = pow((abs((frac((o.uv0+node_8271.g*float2(0.25,0)).r)-0.5))*2.0),_BulgeShape); // Panning gradient + float4 node_7750 = _Time; + float node_133 = pow((abs((frac((o.uv0+node_7750.g*float2(0.25,0)).r)-0.5))*2.0),_BulgeShape); // Panning gradient float node_1924 = node_133; v.vertex.xyz += (node_1924*_BulgeScale*v.normal); o.posWorld = mul(unity_ObjectToWorld, v.vertex); @@ -404,8 +404,8 @@ Shader "Shader Forge/Examples/Vertex Animation" { o.uv1 = v.texcoord1; o.uv2 = v.texcoord2; o.normalDir = UnityObjectToWorldNormal(v.normal); - float4 node_6924 = _Time; - float node_133 = pow((abs((frac((o.uv0+node_6924.g*float2(0.25,0)).r)-0.5))*2.0),_BulgeShape); // Panning gradient + float4 node_4004 = _Time; + float node_133 = pow((abs((frac((o.uv0+node_4004.g*float2(0.25,0)).r)-0.5))*2.0),_BulgeShape); // Panning gradient float node_1924 = node_133; v.vertex.xyz += (node_1924*_BulgeScale*v.normal); o.posWorld = mul(unity_ObjectToWorld, v.vertex); @@ -419,8 +419,8 @@ Shader "Shader Forge/Examples/Vertex Animation" { UnityMetaInput o; UNITY_INITIALIZE_OUTPUT( UnityMetaInput, o ); - float4 node_6924 = _Time; - float node_133 = pow((abs((frac((i.uv0+node_6924.g*float2(0.25,0)).r)-0.5))*2.0),_BulgeShape); // Panning gradient + float4 node_4004 = _Time; + float node_133 = pow((abs((frac((i.uv0+node_4004.g*float2(0.25,0)).r)-0.5))*2.0),_BulgeShape); // Panning gradient float node_1924 = node_133; o.Emission = (_GlowColor.rgb*_GlowIntensity*node_1924); diff --git a/Shader Forge/Assets/ShaderForge/Example Assets/Shaders/VertexAnimation.shader.meta b/Shader Forge/Assets/ShaderForge/Example Assets/Shaders/VertexAnimation.shader.meta index 086ec59e..7b1e8a12 100644 --- a/Shader Forge/Assets/ShaderForge/Example Assets/Shaders/VertexAnimation.shader.meta +++ b/Shader Forge/Assets/ShaderForge/Example Assets/Shaders/VertexAnimation.shader.meta @@ -1,11 +1,11 @@ fileFormatVersion: 2 guid: 6dedef75fd0484cdf8557f522ceaa8bf -timeCreated: 1503327533 -licenseType: Pro ShaderImporter: + externalObjects: {} defaultTextures: - _Diffuse: {fileID: 2800000, guid: b66bceaf0cc0ace4e9bdc92f14bba709, type: 3} - _Normals: {fileID: 2800000, guid: bbab0a6f7bae9cf42bf057d8ee2755f6, type: 3} + nonModifiableTextures: [] userData: assetBundleName: assetBundleVariant: diff --git a/Shader Forge/Assets/ShaderForge/Example Assets/Shaders/VertexColorRounding.shader.meta b/Shader Forge/Assets/ShaderForge/Example Assets/Shaders/VertexColorRounding.shader.meta index 8ad756b6..72ea7569 100644 --- a/Shader Forge/Assets/ShaderForge/Example Assets/Shaders/VertexColorRounding.shader.meta +++ b/Shader Forge/Assets/ShaderForge/Example Assets/Shaders/VertexColorRounding.shader.meta @@ -1,9 +1,9 @@ fileFormatVersion: 2 guid: 49227bca0885f49f9898c7a9ba353bc1 -timeCreated: 1503327570 -licenseType: Pro ShaderImporter: + externalObjects: {} defaultTextures: [] + nonModifiableTextures: [] userData: assetBundleName: assetBundleVariant: From 9f04e7a04b86739c22bd592ac3cf879b73956344 Mon Sep 17 00:00:00 2001 From: Jacky Riawan Date: Sat, 5 May 2018 19:34:58 +0200 Subject: [PATCH 05/27] Fix shader warnings --- .../Shaders/LightWrapping.shader | 3 -- .../Example Assets/Shaders/Parallax.shader | 3 -- .../Example Assets/Shaders/Tiles.shader | 3 -- .../Example Assets/Shaders/Vegetation.shader | 4 --- .../Shaders/VertexAnimation.shader | 32 ++++++++----------- .../Shaders/VertexColorRounding.shader | 2 -- 6 files changed, 14 insertions(+), 33 deletions(-) diff --git a/Shader Forge/Assets/ShaderForge/Example Assets/Shaders/LightWrapping.shader b/Shader Forge/Assets/ShaderForge/Example Assets/Shaders/LightWrapping.shader index 9426cafd..7f37e513 100644 --- a/Shader Forge/Assets/ShaderForge/Example Assets/Shaders/LightWrapping.shader +++ b/Shader Forge/Assets/ShaderForge/Example Assets/Shaders/LightWrapping.shader @@ -23,7 +23,6 @@ Shader "Shader Forge/Examples/LightWrapping" { CGPROGRAM #pragma vertex vert #pragma fragment frag - #define UNITY_PASS_FORWARDBASE #define SHOULD_SAMPLE_SH ( defined (LIGHTMAP_OFF) && defined(DYNAMICLIGHTMAP_OFF) ) #define _GLOSSYENV 1 #include "UnityCG.cginc" @@ -204,7 +203,6 @@ Shader "Shader Forge/Examples/LightWrapping" { CGPROGRAM #pragma vertex vert #pragma fragment frag - #define UNITY_PASS_FORWARDADD #define SHOULD_SAMPLE_SH ( defined (LIGHTMAP_OFF) && defined(DYNAMICLIGHTMAP_OFF) ) #define _GLOSSYENV 1 #include "UnityCG.cginc" @@ -320,7 +318,6 @@ Shader "Shader Forge/Examples/LightWrapping" { CGPROGRAM #pragma vertex vert #pragma fragment frag - #define UNITY_PASS_META 1 #define SHOULD_SAMPLE_SH ( defined (LIGHTMAP_OFF) && defined(DYNAMICLIGHTMAP_OFF) ) #define _GLOSSYENV 1 #include "UnityCG.cginc" diff --git a/Shader Forge/Assets/ShaderForge/Example Assets/Shaders/Parallax.shader b/Shader Forge/Assets/ShaderForge/Example Assets/Shaders/Parallax.shader index fcf69a1c..8196b843 100644 --- a/Shader Forge/Assets/ShaderForge/Example Assets/Shaders/Parallax.shader +++ b/Shader Forge/Assets/ShaderForge/Example Assets/Shaders/Parallax.shader @@ -23,7 +23,6 @@ Shader "Shader Forge/Examples/Parallax" { CGPROGRAM #pragma vertex vert #pragma fragment frag - #define UNITY_PASS_FORWARDBASE #define SHOULD_SAMPLE_SH ( defined (LIGHTMAP_OFF) && defined(DYNAMICLIGHTMAP_OFF) ) #define _GLOSSYENV 1 #include "UnityCG.cginc" @@ -212,7 +211,6 @@ Shader "Shader Forge/Examples/Parallax" { CGPROGRAM #pragma vertex vert #pragma fragment frag - #define UNITY_PASS_FORWARDADD #define SHOULD_SAMPLE_SH ( defined (LIGHTMAP_OFF) && defined(DYNAMICLIGHTMAP_OFF) ) #define _GLOSSYENV 1 #include "UnityCG.cginc" @@ -337,7 +335,6 @@ Shader "Shader Forge/Examples/Parallax" { CGPROGRAM #pragma vertex vert #pragma fragment frag - #define UNITY_PASS_META 1 #define SHOULD_SAMPLE_SH ( defined (LIGHTMAP_OFF) && defined(DYNAMICLIGHTMAP_OFF) ) #define _GLOSSYENV 1 #include "UnityCG.cginc" diff --git a/Shader Forge/Assets/ShaderForge/Example Assets/Shaders/Tiles.shader b/Shader Forge/Assets/ShaderForge/Example Assets/Shaders/Tiles.shader index f810288c..8895fb73 100644 --- a/Shader Forge/Assets/ShaderForge/Example Assets/Shaders/Tiles.shader +++ b/Shader Forge/Assets/ShaderForge/Example Assets/Shaders/Tiles.shader @@ -23,7 +23,6 @@ Shader "Shader Forge/Examples/Tiles" { CGPROGRAM #pragma vertex vert #pragma fragment frag - #define UNITY_PASS_FORWARDBASE #define SHOULD_SAMPLE_SH ( defined (LIGHTMAP_OFF) && defined(DYNAMICLIGHTMAP_OFF) ) #define _GLOSSYENV 1 #include "UnityCG.cginc" @@ -209,7 +208,6 @@ Shader "Shader Forge/Examples/Tiles" { CGPROGRAM #pragma vertex vert #pragma fragment frag - #define UNITY_PASS_FORWARDADD #define SHOULD_SAMPLE_SH ( defined (LIGHTMAP_OFF) && defined(DYNAMICLIGHTMAP_OFF) ) #define _GLOSSYENV 1 #include "UnityCG.cginc" @@ -330,7 +328,6 @@ Shader "Shader Forge/Examples/Tiles" { CGPROGRAM #pragma vertex vert #pragma fragment frag - #define UNITY_PASS_META 1 #define SHOULD_SAMPLE_SH ( defined (LIGHTMAP_OFF) && defined(DYNAMICLIGHTMAP_OFF) ) #define _GLOSSYENV 1 #include "UnityCG.cginc" diff --git a/Shader Forge/Assets/ShaderForge/Example Assets/Shaders/Vegetation.shader b/Shader Forge/Assets/ShaderForge/Example Assets/Shaders/Vegetation.shader index c2c665d7..38937c99 100644 --- a/Shader Forge/Assets/ShaderForge/Example Assets/Shaders/Vegetation.shader +++ b/Shader Forge/Assets/ShaderForge/Example Assets/Shaders/Vegetation.shader @@ -26,7 +26,6 @@ Shader "Shader Forge/Examples/Animated Vegetation" { CGPROGRAM #pragma vertex vert #pragma fragment frag - #define UNITY_PASS_FORWARDBASE #define SHOULD_SAMPLE_SH ( defined (LIGHTMAP_OFF) && defined(DYNAMICLIGHTMAP_OFF) ) #include "UnityCG.cginc" #include "AutoLight.cginc" @@ -182,7 +181,6 @@ Shader "Shader Forge/Examples/Animated Vegetation" { CGPROGRAM #pragma vertex vert #pragma fragment frag - #define UNITY_PASS_FORWARDADD #define SHOULD_SAMPLE_SH ( defined (LIGHTMAP_OFF) && defined(DYNAMICLIGHTMAP_OFF) ) #include "UnityCG.cginc" #include "AutoLight.cginc" @@ -295,7 +293,6 @@ Shader "Shader Forge/Examples/Animated Vegetation" { CGPROGRAM #pragma vertex vert #pragma fragment frag - #define UNITY_PASS_SHADOWCASTER #define SHOULD_SAMPLE_SH ( defined (LIGHTMAP_OFF) && defined(DYNAMICLIGHTMAP_OFF) ) #include "UnityCG.cginc" #include "Lighting.cginc" @@ -364,7 +361,6 @@ Shader "Shader Forge/Examples/Animated Vegetation" { CGPROGRAM #pragma vertex vert #pragma fragment frag - #define UNITY_PASS_META 1 #define SHOULD_SAMPLE_SH ( defined (LIGHTMAP_OFF) && defined(DYNAMICLIGHTMAP_OFF) ) #include "UnityCG.cginc" #include "Lighting.cginc" diff --git a/Shader Forge/Assets/ShaderForge/Example Assets/Shaders/VertexAnimation.shader b/Shader Forge/Assets/ShaderForge/Example Assets/Shaders/VertexAnimation.shader index 5866aae2..f0fc2708 100644 --- a/Shader Forge/Assets/ShaderForge/Example Assets/Shaders/VertexAnimation.shader +++ b/Shader Forge/Assets/ShaderForge/Example Assets/Shaders/VertexAnimation.shader @@ -26,7 +26,6 @@ Shader "Shader Forge/Examples/Vertex Animation" { CGPROGRAM #pragma vertex vert #pragma fragment frag - #define UNITY_PASS_FORWARDBASE #define SHOULD_SAMPLE_SH ( defined (LIGHTMAP_OFF) && defined(DYNAMICLIGHTMAP_OFF) ) #include "UnityCG.cginc" #include "AutoLight.cginc" @@ -85,8 +84,8 @@ Shader "Shader Forge/Examples/Vertex Animation" { o.normalDir = UnityObjectToWorldNormal(v.normal); o.tangentDir = normalize( mul( unity_ObjectToWorld, float4( v.tangent.xyz, 0.0 ) ).xyz ); o.bitangentDir = normalize(cross(o.normalDir, o.tangentDir) * v.tangent.w); - float4 node_7042 = _Time; - float node_133 = pow((abs((frac((o.uv0+node_7042.g*float2(0.25,0)).r)-0.5))*2.0),_BulgeShape); // Panning gradient + float4 node_7291 = _Time; + float node_133 = pow((abs((frac((o.uv0+node_7291.g*float2(0.25,0)).r)-0.5))*2.0),_BulgeShape); // Panning gradient float node_1924 = node_133; v.vertex.xyz += (node_1924*_BulgeScale*v.normal); o.posWorld = mul(unity_ObjectToWorld, v.vertex); @@ -101,8 +100,8 @@ Shader "Shader Forge/Examples/Vertex Animation" { float3x3 tangentTransform = float3x3( i.tangentDir, i.bitangentDir, i.normalDir); float3 viewDirection = normalize(_WorldSpaceCameraPos.xyz - i.posWorld.xyz); float3 _Normals_var = UnpackNormal(tex2D(_Normals,TRANSFORM_TEX(i.uv0, _Normals))); - float4 node_7042 = _Time; - float node_133 = pow((abs((frac((i.uv0+node_7042.g*float2(0.25,0)).r)-0.5))*2.0),_BulgeShape); // Panning gradient + float4 node_7291 = _Time; + float node_133 = pow((abs((frac((i.uv0+node_7291.g*float2(0.25,0)).r)-0.5))*2.0),_BulgeShape); // Panning gradient float3 normalLocal = normalize(lerp(_Normals_var.rgb,float3(0,0,1),node_133)); float3 normalDirection = normalize(mul( normalLocal, tangentTransform )); // Perturbed normals float3 viewReflectDirection = reflect( -viewDirection, normalDirection ); @@ -185,7 +184,6 @@ Shader "Shader Forge/Examples/Vertex Animation" { CGPROGRAM #pragma vertex vert #pragma fragment frag - #define UNITY_PASS_FORWARDADD #define SHOULD_SAMPLE_SH ( defined (LIGHTMAP_OFF) && defined(DYNAMICLIGHTMAP_OFF) ) #include "UnityCG.cginc" #include "AutoLight.cginc" @@ -233,8 +231,8 @@ Shader "Shader Forge/Examples/Vertex Animation" { o.normalDir = UnityObjectToWorldNormal(v.normal); o.tangentDir = normalize( mul( unity_ObjectToWorld, float4( v.tangent.xyz, 0.0 ) ).xyz ); o.bitangentDir = normalize(cross(o.normalDir, o.tangentDir) * v.tangent.w); - float4 node_4847 = _Time; - float node_133 = pow((abs((frac((o.uv0+node_4847.g*float2(0.25,0)).r)-0.5))*2.0),_BulgeShape); // Panning gradient + float4 node_3933 = _Time; + float node_133 = pow((abs((frac((o.uv0+node_3933.g*float2(0.25,0)).r)-0.5))*2.0),_BulgeShape); // Panning gradient float node_1924 = node_133; v.vertex.xyz += (node_1924*_BulgeScale*v.normal); o.posWorld = mul(unity_ObjectToWorld, v.vertex); @@ -249,8 +247,8 @@ Shader "Shader Forge/Examples/Vertex Animation" { float3x3 tangentTransform = float3x3( i.tangentDir, i.bitangentDir, i.normalDir); float3 viewDirection = normalize(_WorldSpaceCameraPos.xyz - i.posWorld.xyz); float3 _Normals_var = UnpackNormal(tex2D(_Normals,TRANSFORM_TEX(i.uv0, _Normals))); - float4 node_4847 = _Time; - float node_133 = pow((abs((frac((i.uv0+node_4847.g*float2(0.25,0)).r)-0.5))*2.0),_BulgeShape); // Panning gradient + float4 node_3933 = _Time; + float node_133 = pow((abs((frac((i.uv0+node_3933.g*float2(0.25,0)).r)-0.5))*2.0),_BulgeShape); // Panning gradient float3 normalLocal = normalize(lerp(_Normals_var.rgb,float3(0,0,1),node_133)); float3 normalDirection = normalize(mul( normalLocal, tangentTransform )); // Perturbed normals float3 lightDirection = normalize(lerp(_WorldSpaceLightPos0.xyz, _WorldSpaceLightPos0.xyz - i.posWorld.xyz,_WorldSpaceLightPos0.w)); @@ -299,7 +297,6 @@ Shader "Shader Forge/Examples/Vertex Animation" { CGPROGRAM #pragma vertex vert #pragma fragment frag - #define UNITY_PASS_SHADOWCASTER #define SHOULD_SAMPLE_SH ( defined (LIGHTMAP_OFF) && defined(DYNAMICLIGHTMAP_OFF) ) #include "UnityCG.cginc" #include "Lighting.cginc" @@ -336,8 +333,8 @@ Shader "Shader Forge/Examples/Vertex Animation" { o.uv1 = v.texcoord1; o.uv2 = v.texcoord2; o.normalDir = UnityObjectToWorldNormal(v.normal); - float4 node_7750 = _Time; - float node_133 = pow((abs((frac((o.uv0+node_7750.g*float2(0.25,0)).r)-0.5))*2.0),_BulgeShape); // Panning gradient + float4 node_2313 = _Time; + float node_133 = pow((abs((frac((o.uv0+node_2313.g*float2(0.25,0)).r)-0.5))*2.0),_BulgeShape); // Panning gradient float node_1924 = node_133; v.vertex.xyz += (node_1924*_BulgeScale*v.normal); o.posWorld = mul(unity_ObjectToWorld, v.vertex); @@ -363,7 +360,6 @@ Shader "Shader Forge/Examples/Vertex Animation" { CGPROGRAM #pragma vertex vert #pragma fragment frag - #define UNITY_PASS_META 1 #define SHOULD_SAMPLE_SH ( defined (LIGHTMAP_OFF) && defined(DYNAMICLIGHTMAP_OFF) ) #include "UnityCG.cginc" #include "Lighting.cginc" @@ -404,8 +400,8 @@ Shader "Shader Forge/Examples/Vertex Animation" { o.uv1 = v.texcoord1; o.uv2 = v.texcoord2; o.normalDir = UnityObjectToWorldNormal(v.normal); - float4 node_4004 = _Time; - float node_133 = pow((abs((frac((o.uv0+node_4004.g*float2(0.25,0)).r)-0.5))*2.0),_BulgeShape); // Panning gradient + float4 node_6916 = _Time; + float node_133 = pow((abs((frac((o.uv0+node_6916.g*float2(0.25,0)).r)-0.5))*2.0),_BulgeShape); // Panning gradient float node_1924 = node_133; v.vertex.xyz += (node_1924*_BulgeScale*v.normal); o.posWorld = mul(unity_ObjectToWorld, v.vertex); @@ -419,8 +415,8 @@ Shader "Shader Forge/Examples/Vertex Animation" { UnityMetaInput o; UNITY_INITIALIZE_OUTPUT( UnityMetaInput, o ); - float4 node_4004 = _Time; - float node_133 = pow((abs((frac((i.uv0+node_4004.g*float2(0.25,0)).r)-0.5))*2.0),_BulgeShape); // Panning gradient + float4 node_6916 = _Time; + float node_133 = pow((abs((frac((i.uv0+node_6916.g*float2(0.25,0)).r)-0.5))*2.0),_BulgeShape); // Panning gradient float node_1924 = node_133; o.Emission = (_GlowColor.rgb*_GlowIntensity*node_1924); diff --git a/Shader Forge/Assets/ShaderForge/Example Assets/Shaders/VertexColorRounding.shader b/Shader Forge/Assets/ShaderForge/Example Assets/Shaders/VertexColorRounding.shader index 9e1394ee..830c1a0a 100644 --- a/Shader Forge/Assets/ShaderForge/Example Assets/Shaders/VertexColorRounding.shader +++ b/Shader Forge/Assets/ShaderForge/Example Assets/Shaders/VertexColorRounding.shader @@ -21,7 +21,6 @@ Shader "Shader Forge/Examples/Vertex Color Rounding" { CGPROGRAM #pragma vertex vert #pragma fragment frag - #define UNITY_PASS_FORWARDBASE #include "UnityCG.cginc" #pragma multi_compile_fwdbase_fullshadows #pragma only_renderers d3d9 d3d11 glcore gles gles3 metal d3d11_9x xboxone ps4 psp2 n3ds wiiu @@ -61,7 +60,6 @@ Shader "Shader Forge/Examples/Vertex Color Rounding" { CGPROGRAM #pragma vertex vert #pragma fragment frag - #define UNITY_PASS_META 1 #include "UnityCG.cginc" #include "UnityMetaPass.cginc" #pragma fragmentoption ARB_precision_hint_fastest From 6127032f5bfa786785763c60c1c68103e94ae053 Mon Sep 17 00:00:00 2001 From: Jacky Riawan Date: Sat, 5 May 2018 19:37:11 +0200 Subject: [PATCH 06/27] Fix macro redefinition warnings --- .../Assets/ShaderForge/Editor/ShaderForge.dll | Bin 438272 -> 438272 bytes 1 file changed, 0 insertions(+), 0 deletions(-) diff --git a/Shader Forge/Assets/ShaderForge/Editor/ShaderForge.dll b/Shader Forge/Assets/ShaderForge/Editor/ShaderForge.dll index 0c5d88972d6d6633ec6cea919c7a492e29c02738..d90659de763a5eddd52719bd947ace8787f105d0 100644 GIT binary patch delta 69221 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

n*M0Z!ra-dMw$)=Ifi+#bM# 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 From f15b72a459f21deb76bdd7fa452b7300b4598fb2 Mon Sep 17 00:00:00 2001 From: Jacky Riawan Date: Sun, 17 Jun 2018 08:34:56 +0200 Subject: [PATCH 07/27] Add nintendo switch support, special thanks to Joey Paniello --- .../Assets/ShaderForge/Editor/ShaderForge.dll | Bin 438272 -> 438272 bytes 1 file changed, 0 insertions(+), 0 deletions(-) diff --git a/Shader Forge/Assets/ShaderForge/Editor/ShaderForge.dll b/Shader Forge/Assets/ShaderForge/Editor/ShaderForge.dll index d90659de763a5eddd52719bd947ace8787f105d0..fad8c09cf3932c1e3385eb13f01fdf2406efe41b 100644 GIT binary patch delta 63222 zcmZ_12S8Ov*M>VYhh{@S1jGU;<;>U9+Mx(}FNYtni zORy*Qn8X+~MonV!8I92-8t-~%M&SJSUjIKY`T>c{=~kyV-8s1ZfJ z_}78{6U>^Kmz&uBP!r>Me{8e);82VhUzguH^ttylw+dC3jAo4cT)lnhaEq`C{M@SF z+I_&!9r9`4$)l#16|?dQcJ)p7q>KM-CfhNa$=4XG=#$}fXkkKtd(FC*4pZPzmBXR# zp|3JNwy|pf2UA+ep^SNVOf^0?F{_4lt{I`6Sq0XyO9wZ0sE~eg)x<@f{M4$Ii!y80 zvn+Bdifk&2thcKE;>`};miB3@?3b8ZtN5mu`TCHT`5a?5<_O9wMWp*$W}Q*y?t7@i zl9Ajlk{oQT(ps(hWNBh>TY$L*WuN?n+ML!}awJ_UZUat{sVQv^by{ZTHT@{5Tz}0h ztH5v7lI4vJv!#7jnH?4xuSoZ|bV@06f~BlcB0a#;GqubU7U`Leu5S7ZO#|~|wkmQ( z`BCckTr9HjO9(2fg=(>${4CQ zy`81&GPq8cuI&yz+5OOtUpaK;ld7DbI`sXgF*f}4s`@876U;i%&7L1zb>UKh$;YGe zsv(!%4$Zi{+9#&N`{LTmnpdK@J+e4h%x;VYnro0$5-BBAeeyCJW|Q90GSez#+AA}4 zJT&Nee#M%d-#c`YrRKunQ|Zw8ki*-FqGlIMhdekOkq%u}t$#PBW>-slepvxsKk?$h zHZ{AycjzW-SO9Zd`IRdK_7ISm-R|HAGUQ_x)OWy5M}yz-Q2<;<@f zzHv(!-T9rvJ$+2`ylQTKpQAvQdIUKfO^AE*;g{`91FP2iiZ+hA*x(wwnElD(QX{z^ zElhJ0k_;HrzdAgnkI94cOL;kcO+NJFv%aPw{L*3fIMWEuujZxqGtIQQ3eT&D-}W;d zwi!f=T>f*-z_#S!n{kqUOtNNdLPin%kh*vz?Uj@M{EtmAq;+K+pJ2XDjWJU+6*EpD zM?R&ckoRnusRqB1S8=$hF29)s1fF#GywzlPI^iy=0NIUog7HLImv1O zC1U3*ml)80QfQu4yr~)Ql@}Rra;Y;PPJPJ9-Td5^Hrmz{i@7C9z`aT52juOFH@W96 zi8nb^dHUXw3?X?t<4u7^%Yiy?K)dwDv{cK-G;Pv0vg(xHRDMv!Nw-V=r%j3&^nb0r zC`CpR&`g*;DFR_i3#O?f=jwJl#zHuA6e&omC{pN1a<{5v6K$f=7W7{n{bx(y5+JIl z1?MG=G(|V7Pp-mM7UC+C!L}(?DAbfh5)U`?7HV@^!*b~(DLt)G-ftsKu0~^|i&XqD zw?ROu@RXMW%zo6Sw9s-M6UsbrsXfBrVVhEeicKAX5pPGf(IeBEsGOw*jut5>tiP@U zB^Z>3?EP!FOrA~iB<%y_Nr8H_NH(K7nl%}1(!!B$D^g^ zX*Y)j^Q={WyRrRLE?}FqW+)&fgfwWpawCUo?$%|6!oyV->f<6(o95LTWpd+9^TI}% z0{okkEwCn)kDAgzx-Qfridnx@W6?e~*^m0loP+_x@CxTNIWycWXGVH| z8lIp|BBfzo2IUtmtX37(b>=Peb|;!@H$>+&rG?6z>}8o!R9`7IZ=y<^?B7S)H1D58 zT4fP=VWUlvj%c&F0j*DSD-2so-e6w{)Yl!Ybzt*v;<{%s$T;t?esa$GyM(+6c-Mc)`aVC!{GwJGm`y1sYk23`s zsL7>Vg?crin$i8rEv?bz4aqHN`=Zd1*_=zRn0mje<-Gs49TO{VRmVy%Ai_?h&KHX?GQ$|qInMSD^_*{WGN>ZNCHO;wuP zkWj&SJI0$l+rOp^lbia`trzs3TG^?*iN>)2>x< z7Gu>yOpFFk{u3#Yc~z540lZaSvm{e}TQe0QQd;LFCz*n6Qzf*?+md7&&D-WxNjBA? zA3@2cMz*-W6)A1=Mkbrgl(sb4RNE72DNShTmX40>{_fqofNA7`G`a&P=Qeqll1<*# zkm8aSMo9tnCoiG7nGuyICYXGA`#k>%rZC6O$JfkEmE7v^kY45#o93U>{~{xJu4i$HQ1hY zwuMH_g@&1--&fumY{SM_GiN7eH^eo`o;_KP^b7IOozl}idu#9zwr(5(de<0*E?xpX z(cxCC6YIYQxn8-WoGL*`@3j#jP8(NqmJKTz{A)kMiCvC$O|oH6LT*tggS}An;x5SW zd>UNa_CmHw;kRNdvgdKPVqI9;(r>d}SieEvX4|u>qv6>(zHwC>HgObmev{M*71?eZ zFrJSXmo$P?cWY!@MqOmjT2P8T+g<@$ z-xF#R1^vYl+O8*b*+S?s*%L*5aDCVg`Y;*l6G9cRSJ^24P!g_}EoeyPPa1^A9I{zG z+@2YN4EC(vP-uz=v~ESXIwra%xwBED(qr7&KObC(vtgHPn6o>3=X)W}oy~Ea=;+Q` z$HO`;@j~1P9?_q%=^O*$#Mn4gIdK`9)U*Mbv|M(0;ij6iTv*B4Z)Va=lRdPO&ojnS#J~_<&Sv%hap2?U9@lAEcAhY7OY-P zpr6)-{!4vk!(P!GwrAtzcyE@Icd(op@2D^BS-hMvhvg9S`Y3tlWR&SO5}_B68un}t zjT5!30W_VQ?3r~{XalO!iM1}M+|`NgnTCMA?gw2w7usMmGfui8`6#5EY=F5nsD65ky}|lY*V(hbQ=zY|q33DLsEep& zHtZK)tkeTJ7|~%P(G&Bj16|k=V_C8dOQ4zT#JbbWz=pNC5|rcrXa~F0hq2bBbZaHZ z8tm!7{#(OXG_xl%;Ci@wl22>eM{Q-s!9zebG}T)Ts;lYa2A}{<+vb6qXe#jnwbV3E zQd><%IBeZC9gYO`0vQy|l$J?8y;wgWk-Zr-mw8L7-xZY2{3I>f1X{=fCDm>NTFXKu zHL3}H@|>DEYEqIBKQx|=I8|K%Kw!4#!}d=*@;&xM6~i@6$%p3%ZY^!w zWH3{?8Dy}(M#7lFLue!%Sd}bfOyi-F%;})nJWOVE42I_%9?mgn3*=C&=4~all0%rU z>2WB6DbRF5(pF8w>%g{MlhITbvlB>h&!hH^XP;`iBICZv7fD;CIk5f6w@IoY=_kI6 zXL1Ktn|daiJ>{pQ?fi6jKI7*l-64u*T$qHcVGYP6tR&4bWb5k)PwF?u(rH9#vWaj> zBkO{KG(D3P0-}D3mW76bDD1lHQD_U%Nz#|KlYIVU?M1AlDb9*|OIl5~hjiO8RMOi{ z28j@qxIv&5NQjib?<3P(d0E6`R0o$($bOBps(U3UZb7 zhwQ||qNb!xw9mojCF$8f6mwYkNXnog1o=z4o~=9^N&1JTC2Y+k&81R6MoWqDv_HF< zj))GDY$A~HsOTXnMh?YMF+kGIcFGnnslB$1mXsccQjUs=l8VMCnkwm@4D_g&DJhQj z8F;1{5-YV;g=Sh|Ue>7y<7Z-#q!$ICV`7!`{EN1aTBhS-our3yt{)ehC0(H93)^-{ zPuD5hE$Pq3pcCSNvMoWGC&Z^#2FBuYBj8DKOd99PnQ&5kA?apwWIQRZNph2MpA@$w z9g%G+5_cu7^+72`qD0b**`QP6iKM&)Mb9KPUJE)+zv7YS-+~U9G^a&HYXmbxQ)NlL zsCu~COL`!KIW3$dHBVGFH%X(?6nRSe5{rxSc}p5EXToU_B%mf+i!xU9Tnl%0-BRwawBz-2w_ncTH$xH5Y=fpBe-^C-}Ik8I8a@qxI znJ$U-l77ljv_;ZPIlC^2?ULq6&&y(;Bx3~~xV21|#UY71H!C_KsjjU4nm8>fPHvvp zM6sk_^3WI8#6>#P8S`t3J@A^iENy=~BedI^9?S=QD;`N(QxDMh;vY%h8-c(F!pa6? z-<_%lRh0C$2k1xPBqJ%q;ph7Ez@J+Bk4Oocs>^XlBUX19*ZWDw$YITTMJ3; zX$V2ll0LSh^AFg?1`BUX1w}n2U6Kp$vFI;dC-zen4wDq6DM3;v+PqN8SV?sTDN2$Q zCRfa3F-cOQrl~gQwJY`M{At0u&}`xVANuG*44YNk34p!LzNT`(zu>TA4c9qJMWy!M#8i(;!JFZIXQG`M0}i zx-D*@jxC0smBwMR(9boc(_sOc2n`S%dp(C2zGEK0f+a2Z>iN}m@OcNzt*#!Dt(`gS-i6)~i z=%Jy}uO9HRrdq)e9C#Lsf#S-wWixL-&;*{q>Wjr(EgS+ zn5+zif6B)r8*RKuFNIpO3Yv8SHK_;+ zwlXN6152j6zi1X|HCK{ZfLdG4BV%dCD67TgsJ+$la@5HxryO;&T2qc!y@)#|Ape4!WuW^q5S~vc+|YOn*n|HteU~@lH0Z)mlw0DT>A7QEvqb=tQ|%{cXowt zky<46gw%_3qD%cR26rT%nN6WLmUZ+p`eYng4QN^i8odEJRhkQB`VTVwLj&o*(e?X^ zXEyChDZ^Z#ZC#<+&7g6;ptq#8XOFI>{u!NPDZSnZ=!)UcYPPXnHiquB89}`%snZZ> zi_uVbN2v8!Xm@!XCexkd_1iH>Z%^0n18Q2QAEj*A1g)?ddSe+hdPBcbpXm{UC}n{y z^d~#0;aqW$mkTTGK8$q05UA&B=$+J&q^aS!E{ue3nKz8a`_p;UCU(u4DrUduK!aCP z_p%?uN0YX$4h?StT|cM=>5X(6EVj5ibgBdN(KyVQpEIB@j86D*Dsm7Ro_UWWt=R!; z)fVc~585WsRoJleIk>(xk6OcO&quDp1~eRO`go+T@PhvCMP16akH)nalT4aefNP^* z1-+Py^ucwE&t%fRBXQk!vN6t!v)Jn6yd2pI2edD6&UDgsCYaO7O7A^oKyfmZ>eLf9 z?BXWqNe^h(BxpaWElFKiOkJb|M5dB{w<(kKOOI^Q@Oq0#!-k^FzmlQL>n^AH&klR7 zCLLIJE$Q2+O{AjlR?K-9|xAFw(q@^fgS2gI-)=qf_v5n+Ogg+FN2a~ycq-(mlyPpmC$n`&@(dSe#mLMzTtI_ zG)TtolXjV|A9lddT&RNKaG!LQ`tm^P*Iuz1UoAq1ui5+^`NTWm`Wki!)<|C0ODduC z#MFm0|5+0k6tT1hG{yxno|c*WlF}v@k8C^Sa13ez>tSnXg1pYK#dWg0zH5i;8S?sM z1zca0dP{1F)J0>F{(KCyV-VCBC%YwP4xnWm^c&f+n`J?DQ; zY~*#4EPA$7=l<~dZvZqy>Q1S@$%^~S>n*Y_Z=)xiPNzWo$cc7MUbmE^_?axuEQ@m- z2%pt5^XF2>OKm1g;Hj`WNc~LC^Y1$&rIIYup%JbZ$&%N}l;?R!iMN$Ae6j~%g*1$e z#fk`yP)*X&{+^^m&7KDRSZD_PLTbbAFYqS)Zy|KvK&;f63;gMN ze-!4&k5hw@t;Tb&Y&PE=i?-XwFiL5kin;PGuo-ziBIV3uY75eyb=uX9&A8MR6Yy4J z=mb|ZkNKdq?E^d4rTIUWT2HRDU2xWB9`vFMTx~MYE01Ll`Sn=AT-e%KZ4Cc5 zVcn^+_$gQ;KczzV&KgGP_ncAmuhZd^BDX0u+w)TWMo+Manr0B3h$tC0i)va^o#Jh3w4bba79#A^MXaT1^rSuZnD?8$mzHL5q zfZ>E6Jy$zXH^SACjh*o)UC*ZT+l5US^1cW<`xD+$5m6bU9?k7)6-lQ}wkJ(&<3zf4 zlMCsxmhPmjyVfDCWv)xQo7zgdOIBy!k(cwsE5JP_2{X=4_cu)wErCFp>EKTb)loDN7tkI ze_%M^86~~XoaEDqQuF1JEaVq3cZ^H9lp+0^vOtHf^$KbF=VxxL(kLX zbz$jr3b?RS!=cG^hvCBB)$L9VR-sQ>m4^Ml!b7xibB6Wu(`whz)0> zHyTh=o|aQ+u5k7&z`(W;L3=W1J*2*?2SX&?(Q;O$2Ck2d!u4&bmj=r8q*Q80kE*UB zmbPc;oyyQ#m7s2vV#8j~$fSnNT%AeXK0gb04~Jw=d`N1;evoJ2?96PVo+ERM$Bn~v z+CVtlCbyBFdSi9AlE?8vdCNSa8d3%>SWMH$ZvnQWc^)gMpbtWFNjEoGN1Z%Vc5;o7 z0!sO)vD^ViKtnU2r@BDTHiafSLN5#*hWnoZiGYB9(7k=36UjhNC$fmmvWQbM{f^Xr zZD73`4ShHoT09^6%~EK~xM6h1us`D?Y8cdpjc%}$^z{0D|3}lPS7`s=mW1xQC!bed z$a~hiF4#J{^?=3=fgT)*0s3w}`k+QgAr(}i`Vrk!*|6xrm`PC1a^(}mZmA1t zTjOj!HaERe{ti1zLt}K^fFHkgfL0rJl#2FS@HuItrntT)cQ=pCnCJiR^e?NPq4Y!a zXyM3e(v3`P#x}a;qWhojXp#!$&J5few(fDBJQoc&D#pSqRPnVsS4wC8 zy&l&orE(YO`mWIbIzvlZL)#35CQ9|myA1Z|N3P3eqNrq$SSc>diZPws{vqLVw$ zxl5|Hpq+9X8NCd_Osk3mqeE2$@r}Gcs4Q<5w#gd`>ka6S!urs6U7+fIX`Wm=s{;_?piI1oXiEW=zwLBn z`PBnyS-NEZO1s5%$1u7!rqR50VPohX#*ukvg;3JgG0+;_L&)iuiD-BJ8t5jew^rf$ zvP`c!3)f9Op;_{LngK#Klun-Nd5Qz&L2ZY4=OYn=}4p3kevA&ctp~R;hP1| zXx{n^gT7n{{Y9p19EEG!MbKk1<-;DhzC}Kc?Eboa6lex*tB$PshI_R6#I}I?4}l)* z1I?7WU+Rn=NQrZXJ{n=*$6>m^b7X5>pic7Idn2xsnm`{dhBlCzG#A$eIZ(HC&}Fi+ z*K6<5F;joYXu7@p#(OliK9oA&g>_jBjTwd69`B77^FA1|OnL3m$JG$@g4F{z5w|m; zK9iu^B3*?eYaI=39)oJErQYc1N!P^-p^>$qe>y?9n%ncY%=tu9n{O^$4Cmj`z>;g@w#@waCOVW1iAJQvT-jV)O z*~4pGYFW`{~s z%o#^0rO2R{k=o}gzY~uFc%7sDUmHSu zcdtv6B?G#xBfVVF>1P&K@a~h*x+=7RGqh(9XvZed^k&e0F3>AYq1GFrt>;$oZo4_=3~P)w$IR@(% z5iz98tp>@IM7oX?<4MO`%^)34*T_4Yu5H9Tx;DmET1oITQ-(f{F6^dgPnyl3H%xz% z+SrVufOg=7)PrJl7*88;zaZ#Hsh!-$m)?w|^qNHJzi)*091QIs^`K0TlN#uQbPq%R zh~5BbvJe_5b(GY>QiIna{kA9cm%h-|S&t)!gYpMw|C%cor}om=!R z2$~Zolc3|;Lf2G-4y$J5m9FXAb#keQ@0vkdNgbGs>l}Bw#n#oV7`~2Ds@bk9P3aa? zKq<+j=-BntmyR4A{?@da^fNxFw0zI5JIV8b4YU@cdt#J{_dhxAg_QJ#E3`&3-QDWS zc9_mk%3*70hAs529o=whYiRBBlybT=bl_6x`TX-Th`m(tDt?I6!|HQ6-k0dQF~8~^ zL%&;O^nUTHahQa0M25nJ^nI-)X)I>Hwn|_owo_6z+c1w4eWvM)0(YXXB<0#oANY;8 zi9M5)$%=eAeZbc2#pqu#+t)mSXuXf3qs`N}H9Hps%4V$t66nLOB_M-bmn1y!wq-f= zt5q29clz1ej%{qHsCeFU?@DZkrlYkveR;fUBV}9D_O*9q7OLq!1zMHe)#Sb+fv6-@ zd3tsdK2@1Bea{j#gb+C}hYvtTHmgSH$R0LT#yhnt_&BjB`j#nN-*yx})maz%ejunK zdAcwc`W-)L8+|9(m4#|LngiL?F(T;mREy$8Fg$?O7Ki6YrT4|cvgicu}}V9z9}u&I<- z*oqm#_MnOsp?WWNrynSr9m#N~4|D&hY13i@_*&zN#h@zmO$N9wl2l*Q$u_Wc)%4CD z6sKwY2+(3hGSIqg*8r4K%)V&ugzLaO+E5ovJh6N3Bfe9mF7@1P3xlRc2GB;Hf*(~ zR<(ss6g#Ww+VH;g`5!h*<=g2u+@}-kplKa_5G{t~m(on1-t4KSX2a+B^kY#eDxcTz zB|Zb$RzstmTfWaw_Egg^u3LQKSyZZWomO+7&uCVl=~B(3^jWAkn!43G<1>*(r76#D zwXXO~Wji$8t@*7_3VWtVj(sM3T}nUuWU`oa+W#@veLHYAn+>6FoPpl72Tjw|&cm80 zThs1|^z9#dx>uh4$8w@0n#QMqPH9S&bWziONjEfoMSo~v4*M}3=MPmlCJy*i8~>K{ zkEZI$uvOH7wxvMlFi%ZG(m@S0xypQTnhq|7ZI~wdfyE^hDBCO>g_b_LHWGGeB=Nz03er&Y-p%RDF|7U_&5LCHji{ z92T!Bspm7FIV?ld+?nnyi!ImGdkJX0rU^3>i0m>M{mW+d^Q?*7HTld-pl_5k)D-6d z>LQ8GzcZeOf*4}oO+8`t2wZ(V5bWHWsBG-NtuS+Fcz^~h3qEXL@Z)AHStZLCz5iR^%5uF zMQmV}tb+Bd63rH~tC}v+-||?@y5zt{p2=>$i`ghmFEY2XrEH2KyXG4`eV4HkZ8JvK ze_^|f#jRF_eqGJicRAayscC3K-yHT#Q*>xc-+VTdzMqQ@jt-3?I;*LXYbW0|EGSRe z`Xq4rT23!bpLxdmu4O0JDBCpezP{_&Q%yUJDuW0^*DB+h%<61CJFn?@z4}!)u=}MH z@4JEhSxRGlH?pPckS~)Ba&>0~tU!}J^+f@Dr0H1j6yE~&r=}n1?-p!kp&Mj});oDN`+g{AyV-;ts+cRYs}rrzG;EwZ+r#!~TGDlo?;iG5DHZzeWtBfhzFc-} z>c7m`&mKz5W*+(U7{-q8RD~X;xc9UC-HM`u)A)XNRny$)TG!ii}ENpR%As zivI5QlBnoYP$nBq&xnWFpOUhf`(ThdH?!FvgUVAX-PRvw4u@4K^=E;GN>X=FhnX=+ zVkWb*gK>wZUG&w1!z}!Ws<5LC=u1iJ;eiUBt_sCn|6%q*+1Q2V-}oM8HIFLW-O2Qn z%VH#Dvip+Gf2M4!?O&4Zrg1`H@}?5sqs;DeMU4hO@jb@8ixeI0xZ3vwYpChVh(CNk zXAzptMD+DN$#OL9p+B2+lG&V6`Ho1cs%cLPce1t8^x2?SlrQ`J-u=O9=69NH&_-)l z&Q7x;O(Wbumo+UP1&TV2Dl%C?+X|GgpQf;0Cfl=Ys-$eYUi6gn1zVwMM1TX)T19e4 zEJh#VM97wVU@e#I>DjB3S7e+PDf?bo!+v#;+(W`9=MmV4LmyU5%$ovjC| zt7&^WC`ggr_GCt6_l3&WWJDdJRzy^PuH8}d19pim*T!zSK7NHcWxGfR=T|K1OGU0dE)u<;`S%<-yUKcgrEFDtwDh~m5;bA6U1M)< zD%*13wtm-H{w)xle=)(Fea&`!t&E>%g<5~jJntwvO@)5V;x%C+e$D1Rpt}=6E)v5=kFvLEXF;7aNJ#$(Ko1= zXo{q4_P_;{rD;OKOCr_YO!n{am+U)M>wA@tM{;(TdH$fP2u=Bp-(_Y^L-Pmv-DSNb zWwOK6r0>~cZ8QGx80Pmqvnx><|L{okyT=kWeM`0<*uzpv^efThtDg4nv)1>KFPHt+ zIN9$$8(2!y{C;HVrIg|Ki0zh?$v&JzzvgC_BxSRU2K@r&XI7%nZdIR!em}F9isT~s znOQwR6__Q<$X0%O{mR_5%~ZhIuNHT@zp{|WG9Q)l%;#5@p@_LOUhDUi?fhAlS+TLP zviASjS%tE~XDsU%X|y{SyT$JrOZ`>RvDn>y&n>Ed$)-P5#aw9qsozUBU(>o}?(7wN zsHr!dDzDg!-{6_aYP2gRvin`-3z*6c!if?y*~5{i{9dsfZOqF!=l8coo8GVo|C1T* z?$*EV_l7;y^sN3JqM+x>Hh1a|es5WONx62_mrP`DS*o(hedaAYs7N-~c+1W!R~o~g zDPxItz0mxPpB3*xUus9^?{=$duEYmwsx-#MT$v|mDr{57T!l~2^!Z>vvpt`s>CFm1 zb5)+D>A=wXW(U4X)ANquW=Df>&{*8Fwb_Yp*W_HgJyDUSdVbYeHSX}I3Z_%17_&1s zYjSq!Z+78#UMk!9we(hmclb-uBYLQFy4Zw=*oDrvI04)=bmXfd_kgU{FWRZ?$T5B}qS z$`7mkxyJ+%i0P@z9HF%xbhc7oNPv-{P%x3Opr6_pGHnTqu(R7zOIDk*k zbcraCztQw{rTOL{-piUkWrOOo#{lW;aWa^z)TSVQRa0MD9eggyt;nuAh24O6(=>}Fa0A{))BKgzL^Bo1l^(*^Dw4ZE2)`Lgy>k5A`~hE}$&DVVoAO*u17e)5oARxi zg1VnGH{%27?{=d4H6dS`oAVq^OM~e{J$$Q!vh~jYn*Nk#Bf4wGQ5BGM&)kv^m6T22 z{~G&~Ig+=mrd$^V|7LE@M@mwi->%^_Ma-}F#b zY@5nicOK#?Nlu~eJW5g~3!!=4o#$&hL-V>jf2t|60;rXjs<3-S&`M34C0*C_q9U#T z?i`=sLu?&r(sk!OG$l(~E-9D2*u0f&1)65Yckqwl4)u_41^qdf82=tT&IgpsqMYLV zd-E=Sih`V+eEaipn!ZUG;XlA)Z5e}joEfg!@;4TPxOyF#DPKnp;^(#PXmbZPl)L#W zPrRHQ#%Cz9+tfILjo=G44R-{s*K}qmXs@Q;^j3BRFVa+>-pYE3A2PEDzUK*u!|%?Ev{>Bdq}iKg&4&~r@-R*&%?!QUy8^JxTkFv>kfj^O4%)xj5< zPaxN(L5lu2XNG?~kJGf;-tZsEbLuNwn~t1~;+r)EOZrq3enB&epV8ECTqD0x{C}Dv z>4Z(>yaC;QV(f=U0;|zc1M;C?5+rgTP5&DL`ashWNwJy=B#qUyK+;@IcKwhqPm`Jc zYEoip_4|WCA2-nF-5~Q_vMnLmGpA(A1Lt>=NQufqps^^oJ(=8X}RKLX<5! z5ma5%3|WewruovdDUm$?qNK62HpWWhAWivwQB1NXr-h*G_nwiUd_^>(bNv(f3q^JT zT^9R~<{or@P>fT+3d3W9q^xGaXL)l89JY_z27kyTdQJD_v36D@1hCs?xykcZIrD|HYkeT zS|ON?H9$qtlI-j!p7o!`A8K-+c!7w{HR<^Yl{uaF)^tNss-`yv9X-?eKN|m->Od6Q zUS-T7*BN}jq)aw;;#dAN_&8eOsNT(+zFxzRXi9KD>z~4%JHeL8?j(m=r|>P3vRR)Q zcgVI=(}m^_hzd0wt!@PRrSj7n8#E8}OXD{+J?#FAe>xBEEGv}zRR)joq#E=u&@=cD zY0G7+rvJ+__+m}bok0&Z^_JAK3rfjl;X&`n7OUyQm}iE622axH+Uk{mCSRnfV99^} zv-u89?X#={=I}2htzZ))UioM7dz#M1R1TQSt-GR%6|7Zj=YV-UNYlL~wE`CKo|?vI zc?T@wvn1uRU6jvQ!slxo-pV;(8PC_)^XACHlU7{zabv#j0Hj7$0%yyl@BYG;=te#B**7L@_6kTW@ zK@_FQXH_)Y$QMg0X702^H*(%bddh+Mzf@LA$AFEzg7Rb?L;3_1aA!%Xlmc#KX=4aI zN)+&?ntsfr*W`RY{n`JDiP6*Fm^lMXe=`MbAplZ|Z+1t#!cx8H(jMo3w+MVs@9W-^BO0V8| zhNk=UWW1a2la$MDG}sWZn_pBm8knsCd-ylnb80$$4TV3_G=Y!bE{(f41d-G_LbHm;(P zp6 z2u;RLdTc1;(->A@3zAll?4d zw5Hsq@XXaThVHcrd6A}l2Hoow@&_7c(ydn^cV4V2Y_$*>Gc@hVP2+`p#u8;)8cx3- z;#Nx)_qILCcW7HqHm6U)z1HMHtKu_W zlBY^3cB1wF8LzMgn9brm3Ijglp^`G$Hp+O6hp$(*;8b^_d775f*dOC7G_|D`9^<<; z?V&$XdW^FTstVtADCPWzikdG2d2drR2^u|LMmI~C2O4_h7MQ#2iw!JO4( zPn~&;58S0Z6GwuMXfjJ%)NW-P8Ux#TO}%=9uI^E`n$Gk`ZwzkUtI&pK{&C)GpQ6oF z%yE8JQ=qgB+^=jmXfry_YaLK@y#pvq(=%F4$9ayVY&Iet^ryCEOImzT$Cig zwq2&x@ddAZQdQW<+sW|@K3~%Z(>OcFA8JaVfjP(Bij-%-4A3}9+3c@jmjlkhfb+Mw z%Ifyf>^xA?<@VO)XzQeo>_VyS!K5B#WPN)>B)iCmoPt@k=@K6$shDmsIJ?B>YFZZd zUBD&2P1DkaX)=U#L=!=eo1&yp<$c=qu)%uk+&|eEt)kNx06d6)RUkTf}u9pa~UT=b@U= zrW-s}_FOTmNOws$_;O9C;s(!@-B`?Shr@G)rdhLLE6{{8Z}5|B8(*G8By9~-^PBZCyfEMk&%|DhlHN9?I48?8!NZM3i+~!tSRGEKF zIqQF$J1a66qPfk(v=P;RZBfh}-a*^Y`a3+KTrqd}G)*Yw4$muB$~P9Je9L#1E9F~$ zUXy`nzU6ny74t3syIe8fSrl`ZSN>A90>Rwn!!$jcaMu4WU#!WsZUWh^YWic!(}24? z<|~yCfqu`sTvfExp!VM5S2Yf#J^Tl5cTE}BIwcT!XxitL#(&_=B&qJcZ!r}2d7}12 zX!m)srlnP1Rlm<4X+rh)`EyB___XUi;FYhJwdnzWp$QY}0e>win@#e19`JyFazlAy zdOhStnh^Fwe)VQq*bg~P8@YZE_Cr2Y6NdK@FVIB67y*y@Yl+#cWCeXany1`W8PTOr z_+m}y(kHw?6T0*XFOihZ&ewh&@G}qk4*5Vl@F{oy9;Eu|cZ(tXoi~y;H7$+bd5lJM z&F_4oCPex_i;T~BR=JGNxZMvb(4Xts20r7Vn$T;{`CLs{qR)ArCak9CyiigmTS@m^ zFAP4gL=}The8CGfVeDV)?jux4p8*U^AX*|x?Q?JVW=(OkU@Ov|4dOvLkC88vMc1zy zNH$5ua%XwVJ3lFF#DBb(rX}=Qf_HrXQ$tnw)hw4lCdU1y=>BT@7Qe9nT~R#UoC*=D zDSv#OKq2mEdYD9i%|ZD751yH7XYi!Y8qDv6v|stUwbNpyNGUFF$WMf8xQmP{2fR}(t1ibX%! zi{<6=*^8%tt1=O`z3BU|BFr^=F$9G34>QqT%+W?{E%suGrmV?l{q4mkny@F>ixN#( zPWGb38&xQFh^k_SChQPZ#Y0V)hz=s+t@1=)IEp*}fs9Ocl78vrC_>)>Gug6S7`?fW zz&1Cny_Cui<^oJ*?Jf8 zNE^{LF2crIWkl;;L>*0NuZw7-2}{jY^wNYjxe7ZQl@IN870H^=2sg1q6BI$}r#<%+mHgdr)LjT;sc=qZ+J8(L9MoYaIy)Dz|J1AW9xZA0h#h-wwf zdd5eDYFb*=2&?34k%qco4;y{1asCH^{^Eh8Vzw=evjFj{rrz`hJwQ~h zs!AC}&yNA(7fqNK0m9Qk+0bhNV!kHynh{{p`XKSIHX_m>QNyt;v>?$;69y*OB42&c zLEDh8zDUr7eyT5~l`EybMJWvoi(*1VUb$jI#3$u4hFD~5Xwkuq#GP{a8i^)ODr^iz zBhg0_hN+Q7zQ)2Bs*Q-du|>wl;%d2!jV&^U3eRe)3ginFPc>m}htmHzp0Z(MYa((q zVFoo3yEI`dYa-4V8nJsd5ha?ido>ZYs+V>C2jaXYv?<)8*TO{?m$G2OOV0yT7%oz^ z4XqCsH#MP@rc{bL|Ku*;R8)2=E2gOk(u9mn#cWL&(Pkn?6J|m)i(s0IC*?|MZV^m# z(WHi|0j+N?5^D(g{KwGx=HiGpqV>&1oO@a8BZON`MTonFxTXoSyM?f?rEHkpErgFI z%%BTZyW*RrLtFl?c*= zo@p&6YC@oG#12gew2e3k!uf|t+gMDmC~;T2BGRbRPQ-+Y5(Dd?!fe*14{XVj@Zk2U zdXy-Cw-Y6@v<=lqi?20dLyi`IN;1@qLOT)UQPzp=MO#e>t-Xksq|UgG7J+sYS<;qG zkK3&RI||xqJ42VT?r|#)w9K%4Xoi(HMYgt~&{(mxoM)`~ zLK7O%!y=fT;!e4IJ;j%1RXsiby{g_*{H_rd_O!^@OL+U2wW61}tO*_5tNcO2`joa1 z>%Nb8q&+cZ`v`{sRSKqTA2C7GA5)B{0e!?}ji|n_MSJ5!uRvs^Z-S$?b)V2rybMxRV29`@tb-My%zhSIcYoogZ8R+nHo&621H_E_DkD00fcRb$X7>Q` zRuc-f%r{V2H7LtB(Bjx0D0XWb*3Urkw1|^$|4;ovNT}~2ML>ouw}9>)mr)u z7UdtLh6o2~Q>$W_MI(lZAZb%QGt45GVPdVeA(&x?IHnQN3=@|%p@qZ58%+pixJ57{ zEN;uYV1Uky1FA~LhZNq>jTJ&L}*k^oDR>c@`QWL5eBVKF5 zd>$jZgqKw~Mm*Gn3ddU9Bhvp6iF}c#_WWegpsC7->XR+jNU|8*)F>-7S!8HeOtuLY zt(YLXG%G7+f<-GPh@j@mhOj4zcufdE8ne5L2#OyR7JsBmW4 z4n=)2Q#eMJWt?eI;Vj{%ZOAvvBHt{LRxaNxi-AcIS+L>!L&g-bQ@dinN)eYeVZTZd zZ#3bEO%XAz%7RH1MVip1X~Mm=vf;!_7kxG1z)crPnsBJ4iv^MlHBBO;bEdc}Nj*_#iJvv0!YuKh@|5>l*}^$WmTAb= zXIoU5ZSf4BEeez?LxuCio9MC%=ZW}sDm1ikp~%*R3Kv>*_hPX_+t9$pqEZKy&%pcb z#ll-7CdM*xSyCo*%Qe|97k9M{9lXM#(3PSC9r<{wL!m3hu1<YNRvrzfvHBulZNLx1hZ%G<2 z5UpZMgE0a=6dg1o zsB#Zgy*&T6i6D*G^S6ncn$V_g!rW82Vn^I=5zKb+RND~Dc8eWxyI9yu<-_{<*y8;A zSnQX!Y*y4GfqiUu+%>cjRqVCcJok$0{mQD?YmsrExT|f*x6k5q*eCY&FUz-2oYiEkOJMuO zT}=pdzi2n<@kBAS3l(q0k=~8nEf-OSZ(267CvL?)n zqoVCll@C37RAgvEj~=z?(PQE&Z12y%V-^eOn8ls_35#G(h~2|f6=>lJ5iwj5T7N<; z*Mt_H5atoehCn|T4)Kc6+b8vtu|EHb#71pIcNbYaHW!KG7Pj&)rs;qC%EGpCML znlooaoVKA6XM}5_^28)PBU)-g4QE8WCi(lnGh&KHRB=X>|1H;9aZ%gQZD%bi{6aj{ zHdOe9#q#|^oEWXDN10z(6H28rsu{CDDxCLFQfi77Kwq=@@F z;W_ht+^?$N6}hui^^1n`z`GXv#XYfI+SFa)J&Ok36Xz{#QN}~{I~k1AJ&Rqh#A4Sg z5yw+hg(1BYSc&*b({uW5V2OC3>5Dp`mzp-T0NJIge9iJfwKRQAr(uc6O4a8dHqR1q zM;g%=PXkIsL7HkWw%PllR=Ohe%zcaV;J%ozOF=)~7q2y8H9fGHK@WsarYZ%)`#`kK z)aM^EJ`nNRh>7u|MYlZ^GsZA36XS!8@9&X&vg$YP&+BvxmsLXq#0MZU*ky|$sfk43M!Dp0(*d@K?{ zIRCJkAB!SsRB=BR6|z;KSd>qMrzR}QCl+1$i-^)TRPjsc3~EbXOZ~-SyZYt-Y3)nE zYrMAp_xrB*&445)B*7_>vJe3$UAC;5b|Ty9f#B49rd45Mh@>*c0`(l?x}aAj1DsQ)OC5}0w1=jN$4U+ z;%ItLoxDI4iQoUb=MeXO^|};NdG9;SZ1){5(fqC+e@B?1CH8l<-a>(>W`0*^NkoA@ zbnx(pdQHms`uB&*-nC`?L#;0nWqjn2@v#~qWfabXeB$mSC@LZao>4Sak+?I9s`ucrK_aRd zfZ}B$AB7FzQfLd?&>&bs8frT9lZfg<2m4ED&R|Fx1>+1Q5|L47_(CG8U>C68mbt=N zyL_(DtjOyAp|`66y(J_wu3&$^rV0#^GICf2W^k0_qUVkXt^%7Ss+qf`W)%mARbiK1 zzN%n%yOmXiuodJ!hy5_r7m+bg!r$;o{;Dv8Bm68JE)P}VfJ9WmRpAebs7kBBsbXPf zdITYl5>X}^2i3rzqZ~#rt5t)c9A&Yki%4^t)TH88gVDw+VJ2%@YOot@m1t|+gkX0F zTrG^!{ap{(&JjMYhYu)tz|u8BMt6ceV6{Xv?mb{rsgTi=6dtgLqa3y;oX~ZN{vAsw zZJk`JsO>$#<$aNn+TO#VN1)7Tj>;L8-V45$h|22)HzcC+dcm@fY~}TWH4;%%c)@0g zs0qE`8b_ioyg}Qj;`)PeQ)PI=G=y{-r1tfOxJ?34&3HqFL{u~04mDE?5;hA>s+n5Q zdy7EizLrBh)q|rnyVF78@#p&GvvNDye<*BuMHbG64&~D z9fI+N!%~xi@dfLXL3C`jAzCYZVd=-@LEiuK1^XL^ehx>oGs zhonzL*i?rB;Iu;^niB%RPa-N(9f%dk;CDakzy=P*tXB`NOI0dGJ+QynP!HsTGyDOR zdQiAixS;l}2lmep)rT**EQbZXzP)LExGy!S@*BYJ&nO?h|GsocMsP#;ibHV|wGrHw zh)U52e)@-SL2)+%zt07trfB3)PmLi-$|&r{a9AShq>Z89Zjq1NH-^d!kaYjAi9_5? z946f+FimD8qfKC`otY-EOCqY^ActU@!fm^JO~L-wRa5w5j|gV>QhbrX4EEPL%#iy9 z33J$5e6iXL#S&e?ql6i@NMtq<`jR7Yb}++jiD>yXL%n^r@|t0;M6}Zk0lT|uM&l5N zxGj*dUu2~6S{yo?#i6rVK>Jc?QZt3Zk^=%!Gljx&iKv-E9Xy1CSDDR&5$@n39JWd! zwUbRoqq!Nl9JD!X25*)u7!9^>$B4y;E6-+)VG|5A2FanR+T(pMm5|NA64lde4 z>*F>TZ5>>+g$gMn7i}T?gv~`e7=6;_p&f*s5{Nt?GVHG3w1KP%Ti+B9{7h_8i^O3?{!OGJG(%E3$& z^#8_YCJG8AA}djFLn5*g1sl%^O|sJ2p+-AHy>I3DkD}=eHP74JJE}%Qpp=njG*mu5 zfJUR?pNlc-JKBSCZFAV*m&5x*;$ z3tvfDl{j4ga^Z%AE4i@8En$?d`{crWiRcPZE*z4Gt`Oydc3WuDxSt1oC8ERGJm@bG zoh0VL1c~U*=sYOnD2FXxG0MQ7SG2Yv?O_%`r=LYByjT4h{0^i^w5_LZUI@h!{eXv+ ze7GUe37_}0{K{@g@A@o)p1+9DXxdo>)~`d;K4DR%KRO>6i(vv+&B0fO=J_nHG()?) zCD7zo5e&UByabXYdQjcXyaYddFJup@*Dx=GVG+?v2Q(bVy5V5fn-xeV?lcE=ojS?ks{P_k@{Pjzq2D>z4S|ND=gxGQgTCg7Fgh zk0sd$5`}WKU81A-=wlHWwSN;vzr@FFi(t@wf#^$zMKJDnfrj80?Uuuv5?zfUR4UO7 z+}$mQmsP-yn8oV!@-;7qERM<*x(HPQD>=$x&k{x<`iDdTiG=X_FJ;VOrzhhpn~(+q zz2AXQsYI=dt|%o?;4EY-lCCH#;kb)HZzU}ZUImj~1&YNwTn(Q{RMhN6bkpRxhfYn+8{l^- z>^{|-eF)ATLN&IS1$_iz@iOhg%`vQ)HZsUw_*M6%s|fgfFMV)aoQFS2~OjGjD?#9AS%k zzuM$u*e%iW5PWsJau%Rn@F(C=L)g@@Cwu~Us^!HknoOuQA^QH=U~Dy8M%urAQduV2 zCVc|CWyUS-TA4qEq?%-ADSqd_y?H0h@*$MZdWOcCKZ6)w;bLREKIVVG1c}_=#J5Yq z-%rT4yUh*W12G)o`+p-4egUhcQ1>0wcrV(3LAnZxja%S330;i;X`!w}n;+?O*7?XZK*!|)!L z<=_?N`R2p0OKLtbf#9OlZYH1ad3D9 z{DQ1?QD8m-VH}CNI10-p!n!cnQHP92VOwR!67x|wY?tvEjBYAQNR@cZR*C5Tn1hvL zcJALdAA|KWAJyS;d-u#Z?vU{~R1dbsy~TVSns6lIJ^^_Wk^2+ytwdD%6Ao5RKy$Oz z$}aN>h~-FFISEfW5>0s0fZ8FpGM$7JiOA?l2cst)_Pr-zAJ@!buXiHN))uS7;KnDR z7e`Ck9{h&*DHzRBIsbrJ1#Fd?gM&@10*pfv-iR}?({M$iaXs)QWY`!gjAr9^j=zGq zFo9+^-EaO1Zb>w@2fkVif#F=n2iF-;niIlp=u3D<6=5Fj-IwUZ$hZ(UEwUY7|CZvrP5a$Ewf^ly z#&1XV5Ao6tNYr{@N{EkEA<@gPP6!Fmu1K^MQ3EY7Qsm1*)L0uW(al$9hM2W|5}kT= zen>MdyS>m{fvA;s9TBd7OW7)OVMwGF+d&9n;JT0~&HhVI-L!&^Bomh$yJ=#l`=heJ z^OKNn+IBAcQOQmC4AHPor1_(gpRg|^Rtt>`_F{HZGrGECOZr!yr60I3S=!rx%;|VqF!Zq3Hf-{(}HAnbMmT{qK4{e5&)fjmp zBu*=<)VvUqpjGKA^3@o5GbBm#=g3&fYK(jk(oaj{FrPK-@hoJ3mM_t>Fel5a+Af*# zbisp=f!cj5dfCk~SnJ%)YShazL>t7BsHb6?*qB(6{jqhJ_AS@UFO5|qJ5xK;YL;NUH;XI$=TIcSBve>^p6qcgBE>T4!p+br1tMDn> zml7T1$og?k{`*HM+A%I%%EsmeSW>i05>3o&Xc?v5m+0+IO)aTf+RLK6Hv&T~W3*io zSu$E!#%kY6)USS|B~800(Y!XDEw5`XJw(0bfWr}u4qD8&qEg9N(64g$Qw`6KROSA;@P1o>@9v6eh-zeI1&A8T2tU65#c zyRnu<+HHx3BU+->>LskKLR6@AmS}jpc*_dy^-5X1VJXoHB|M)y*|JL8B+-L;lP#;Y zFD3dK(HiZXM4zMPTJ5$(C4J*9?`du0g~RsV@s@R3j6`Y4(=8upUr2PO_-)HaT16#V zXfZZvX$c}@=aEI0ty*@XKt}#L%XaO1iHhoN_urwp_7<{{h<0gV5+%>tWci0STB1!^ zJ1o1k)e?QNVz1>3ZDW$ix65O%Wv{lopFq9alw0;0+N%QvJW{;Z>wxyUM19uo^(xb5 zNi-DEL2a=_=Zf}vm22-ybR6>?(ms>u71TVe9hYc0q9fX6i7sHiquM=*Dlp$M&Cmx4 z_XAM%xK>-Dk%&%cc!7g=sP8f3Nv(rK<(To5mMBpIYF20|5)DFhTFa2=Eav-4nAz`y&!r`I9Bhem?h7-c|kIm%JkivA1N+hbXfQ)XIs80@|PbK;zmr%Jx?umqMOH|l`P_q#t zn1^i%b(ZKlN4+`1_3yGT35QEz*VHG7=1Ej9@(;^3t*8>Q(CgYJi5mDhhyJMTm1x5} zuh3iCMTySV@(=x43ri918~6o<-qZ3V>O4Fs^r03vl4SV?Yn$IH^r<$3!=P_j|{D*zc!j9moNK1V5-`BSO- zyb|JHTi3=4_Z<=W=wSl6xOC~H`s$N8%4ZF_EC}`0ZwbWD(0=+usoBIxC{X?M>S-eG zJMn}zcDe=0noSaD3rE8QVy4MYP}XTO$wb@x=>s`h z>e8d%RFq{4#6~xI#tc7wiG&@7K0{%#L?hkFOzSBk(*BW)L;ds;iIT@G5B1k~Rif3Q z0ebDJLNj^H2cdQJxe_&Zd(FA7zC@yg+&0ej^!FqR>=p?P41I@$%SJ{*L;Z|IO>!Q( z2kQTl=G78;~OhHyBx8Nj)=)D?|5T);vC^6#C(9U|SktrN5h;a^!(I-gsa}DRPE_$Iv zF$!zFE5c!$}JBP*U1ro*7eB07pzb(O)Hb{?tQ^?d#58a38 z2@;(|G*lnPQ9f%j^`!qW{auOtqYnEg>$?Twv%qkDt0B*SJpyCGhU&3ilxR@EJ*QON{@^x7ubxGkVjPUo>v6Q0 z?T;Q9Hb(D{2-iO$9P5yAte(PEXX8%_4GSBqr%5zOc`YnWpDfWADt<^>KPORRAaqlr zZ!|*QZ;|`iY_by}vqVpMzS)Ef6#mPZgr7^{2vO2z zpqZg>mzuvBY;ACczSmB5nuF>z{g_m}qz?78p?BF(&rJP{RR&(w-_S2eWOB-=KHb5} z4E+Zwd)eidIzxZV5%n3o2{co$y^z|1zJjJ*qNE@U}moV zRBDze1x@Dap6`n86{K}*lB;`hB;3z)$Tv@~Cp9}L;5<)fOkw}*%b3bKEywYXzs+8Q zKoL@f{ZT^cQEe!_cbt`~Y(+2neauchh%=`((TDg`m@50ui}?BytEPP}k+$X)_H8z~ z)TngxyyO3dgFhC77M|A>Zf;kn5D&dUA#U;^&6EJ*oK3NYi_d>tpZ%XqG{ibk+2|Q$ zg6hEL%w)pq=jDFh{h7H|2ln-$vNglW&N~>2##+`y9fMc9YFE{cl}1r(EHIPdkBM)_ z->|ewseypGMUu2Vrga{i6Ps+Ovw=IKpf&cisR^$hO$oAD5K@B#nuFjDwk|k06Kzj? z&4Dj8Gq8Fc`S$uG{kzaNui$IcBPv&NF5 zN$1Drq;uDkbVkqM{eO2K0{+=VPZtxdpF^2HtwZSxv6Lnb-XUH=>dS@^D4nP!lN3&6}tQrEYIZx8YQT7=+_OW!YE@dU4J%e1drrhtiOkiG9_XJ?3-!->Lq+rkK?q^5&QpPtK_H_(6xoL|08A z8u>EOdN}netY>4Q9r@^}$fd7IUb2CwWkreB#Juzi`s;!uv-bUYc~y z5qXn%g%9MlG7237&iSM-YKw+9{-TQLTSLfZQZ(;$xt&SypQv?5L^}Up)71Y(boLds z5@!XKeg2Adq~i0Wnzno^Q+b1jO{7(HVl(y8R^p`d5 zol%p-Nf9C`?l zm(m)$Rp8iK_AO^k+cfRNvX<4+jdjkqN-Kjihqn{UMdEsH3(Z+ z)}HKukNL5&1C#H>IRwb!^j@^S?E^zgH6Fdp@(R)7ebh>cCo~#BmH=xaZX1TV{Lr z)|uHBqcyX=A(19(%}eR$L;RoeV*jW8%!{0n(HBq2f1gV%%J#X$WGrgY8m`Ps`yYGp zi&nP3WW!vJCHrel2=`;`MnNw;4XUjFP}P-RNL=~p z#?L@PUvL&rremc&UkpES?Z}=_7q)<982sW4yv-sQWXPIxs0SUK)}@hwj* zJ*}V5&;P_1UHftzr7LF+>i^T`(kNY`Qh8p$D?gNr^6EUV6VL0+^Sbc7u9%m6U6{+~e<$2B0DH^_k5xeC z!U~9g4ZDdZC+Yv}Moi={D!|`LjY`uSfL!jv*sZ&FdqZE1rI}z8Zc=n!4r^7@KmvZ* zMw1s^Xg93#0cPc|M;+ZkN|r@E85+M*^&;_qE48(*aBp*<@vDa~v~T=pF^^hj5BSxP z7n`=ZACW@snu{G%T!^#Y>kxN5=*pSk0GrFFY9nKcqpDT#Jl~$PgwJC3RG1bVs&K1& zF)qYHC1_oK{qxa$(ivsoJg>5k@;InW1FM5+>)I7Ri_)w3Y9=VnZYujQmiRQ6sq%8; zf0w4buV#w8y#HH)z2Lu1-&jUN_uKZu9OZhRbF%ASb!ef&yJ^e$`B%*3l`LK+GW0x$ zF3bZHRVQ*i&ru?6q1e*ac~eaGHj4ZI7nR-nVbxQ}{~olb+vyljJx5dlaD!&OQE?nULM_j+4Ca{YO!)l6G!mMTe zq7P*gI-l{`O;E9E6KVUtEvlF1K43>jk)8gyu~XPwJ~(Zf`23HUEbUnA@*-0GPaON8 zu>rqY~7Nm*wMtzC41?qEEUTt_`ffu zi?E`2)IY3O5=As${vGxwEg?NaZ1J=N>NmyuIei zAHwlu^aPU+QoQ|)vA+d%F}B& z-KN~fC!>P+6H(RJI;_+nrNqD|pn{Zj_~g?OuJnj!^Jnz)n*NM_oYSAtk8=7m`Y}#_ zMnA&&nM$T}(HZ82Tlf-MI5=gGVQt{g)O4iNS5HNnU5{vQq(!Lt2D{3xPo2dz=i^5n zC|5o%;6^@vpFn`L=zL@q)gYRTv~r zHs8$FuwSu)*RTi0N0I(JiPBDekFsP~SL+noJe779(8QG|YdK4YgA49p`c&Ejq({4wArE{Pat*svbd+VnfbLI_*6IEXX>Rff-(!rxh7y-U)Wk*K7#)_Jvr zDdBLrYZpv!iE61(bkV3|>vpijmz#yur;c#$uElmG7TgO0a`TYyadZ}qB z@*iMhZG(&NMyT6hRQBsmtwgZT6Js!gQ+5wE6Dz8> z`WdK0N2&YS3j8%dDys=!GCh@+rtSx~!inl>_G7>-^(vR9!tmi_jymHum_6u%63GKS z4L^q$sOhj38#Eo9ldr3hJj6&gzaR$FR0okP)M$4L4K<0li>l7a4>88KimBYoGyhbv z?fX*O*XEtbeS!wbP&PIl+jSXsAL=D%dBb@iKQ1v8^_ya2<+Ck$-r%ZI=S_v9_|&tj zN?q7h9mVP8BI1`dzJ{9LtTY0EGBkp1@N-y8NQXh=Bax=@P}U_!q3L4mVyUod$u%rr z369`QShfVPnf5eJgiPo>d>GO}!&8xdHIiLL&o6cPM3~?SjqR&B;lH2$q zxGEEi{t47TzhK%m|97PHQHGl^%=;fPScsIRO? z{=?AC+IjX-y?t7g)cIs}DNEs8bFn=QXy0Eo!G@g#69uQNsu*K!-B>pn`00dMNb%AxV|^fuaId^mju8ZAZB)Nt9neA&EwGr0R1jDDzj z2KyoKh@OWWs`j`g4^ZD9zXpTT(W*eF`r1$U9t?JNqc~dG2A^Zs+Xf%tyS}HPFn=oc z%(P^)6HPcRov!j$kJ8A{Ri!MkBXTa{ub79!%DOK*b=Qh!Bse{SyNmleh2s#N=v2Ui zDCV?)m%f{Y0@E}?FUZzCt z^`1XCC2H^2eZta}+(!648*OOMCrGz+y@mYd_3k-k@(?qX2A#k;OJTEJoKe5W4^HXG zPg7l$@$K-tH`?+ZI8|$D_{?o8+{MOChp@hp1`fYdX#vjpY-mzC+Yh&T^-xo_DP7t) z?}tmhRw?OPvzSgeHEqFPcF#w1CYGuBy;X{|#j;nOi#R7sdj)@7Ay>O;##K=>$KWAc zqXy05G*$DBdBV=a=2#3`sYpq7PSrMac@0C%@0Hj8Q#o1=ndh9Yxp;)C8(1rx zbd%v?-^I@PT8Ab@&e$1o%G|)Z;X<;3^$J>r{G(v-RjkP?JMopv9qgWJtHs8+jXVwT>J z_CwxxR&W>ec9ok-d4qx~r?tR(E2=2!;I?a!j&Az_(lYD;=e6lLrmk~m*SX{CyxiBh zWmol7h;gV&qSEX26IHHiU*vs_>6GltJpIoqw=r9qdY@BTt(#QM$8xl&YUbw5Jgi6_ zw3(Yu*Ov9!UiB&0e*~8BvZ@;I|BqnG;-9NlQ{GCeSGq} z&0nF0@KZ_xhwMAMtBMRxnm{>PgeO)bYR$sl@0UrXZuU50fqhM9xQS6x? z)p^COjhfJBtXsHVJ|`V1rGwPN3p3op)!)OikuJ2%M>=mc>Z=K(7NN99{}sqNiPLj^ z)s(T;EfaS5tw)=SQ@!*yu%!4?w<7+Y{WjRt+!udYGdb@x=6Vot&MnAL)00oTt-;Mx zpp%alQ|Fo+wd)O{Q9A3cyS6-qk-pN*(>+T4W@RmRANAJwhVF^#f~?bS-PL2*F%#8w zuTh%T`|fYHCbp_xh^wj`=7$n89g{ zkqV|47M8PZ*oyt!x3PrG;Yc5@#Qi*E&r4?m^r+6M?gMmlXPnD)|ET#$Uy54c?$4Vh zQnW5_nk=}2`-Uv2NDkAp;E&7;?h(AxCF|Q0N-@{=guCu&!H9Z@e<~KNLRQ6srD>~_aBhJ+rc<)LJZJ&Mi`Dw|Id|35@BnGLek!fAN4nm5O{_{q|lnOK~I_T zrimutxu!&=N3&lbQQ0}>W0R{&<0u?DWq)RvXdNpz(UP+YQn;Zsg_h1VWmcO~-HV@l zCi4=^;3b&BOOV3DP2n!nlvemLqBLa`eoNMipP9V)nJG zf1bFjdOmItesXoidHzrpSCu&F5IBQ2rN8tg8i%VxIy`o|Mo?)pgxX>EHFHA>m3fR zxTm8%>%|(b>Vs9!&}iuLaIbW@_eLbpSa{hhU+tQiKlDF5Zh|v(G^dYbAYKs9C$Zs*=B2wa~!$o5(Ef}4$ zYj_j&@jlBdDjD1-bn))ay9pT`?wyXiUMhD(771%`9MAGzgVG$NpC{&_X2zfjbg-`x z(K(CDk@L;U3Z#DhD!j@4cSz~HP{daGUQmehD@s@S8mHY{@y|nVJS2x4#cFIZpd+qt z4^}m(N#|m~b$!9$e5}BmedBAULLYqjk^;@GnGQD#D4=j`jzlG(*_N97^@jMNZuPPmI&yx(#R?PBFhAPGRwKuRi?YiLRqP$T#9!1>okm}F7)iyOTYNiqd zHJZo!+(w)8eCQPQE~anhEJOND&Pt#9xI;9t`h4dYj(d(#%vb|2r5x~~%Lw4?qrZ>4 zTOXay=sx=Rki$Mc`kNuAkq$wAcePgCSQj7t2e0!!G`YUPbx!-FLlT~rXiJ&kdlmVM zeb1{+@Uv~_)q&nb^@S#ORsF183G#n@2cM6})v^@R=KPJm=M6Q%ve7q?eLMTG?^7J3 z-}`DREs@*QnmpT5^2{NJN64AV25iGJ%s^r35*Uyy1<4i3U)U{4KN5L>pRwP63tI-}(w z(l1e=HLaRTGh;QC7TFE>?T>W74Xj7I>3+0uzwLKk51O;k?=;-ZF7Vq1E;CDz4oLK6 zH*rdS&+n$bCGR7@BkWwrCw@`Nrar#-^M2F>S*&mH0l$1mH6oAsc_Awe58i`@U-L`V z`gJk+r)oaan)siFQ{f^08?Y-iM;blM8{KzW=8d}`)sqI^iTsYpAKca*PendH?s$IM zo!=EXaU*^8e66f8?Ue3K8iE`;#wTmF{8Id*lrR0p`#;jX+hqDHPH&|dZ~FVd&61|f z2R7r24zwxG_D|O``gKwV=&kUzT;il)Kn>j&QcKSfc*<}BXs z@9N~z=`hl}9Z&j)LuSc&e@~~XtG@TgUJ?@PvPMnvc;deX2WORlH8?D5AT>9y8$gyD z4Z%MxhlB-eVADGe3!uR>3MutoAEhRqf_;=uc%{n6sg?VLfK1JIYDU0*XfiTXt?$&d z;LU&_C+Y$D%x6S84$C)&ED9*Vp0BV+Fnh_efN-Y=JEtdV4XYR~?7n;dIx73Od-M7( zO!3$m;KFo|O-Nmly0dB?t?RlolgB`$ULGrv*7i7nw4O)pdhRUHqh~!A*2H6fKsDCd z<1OUGc)X1?*5fepM{_%A9v`E%3Ec8D&Y8hE*_1ZeTm&l1^&t0oT&aL76>_B#PFHhI zDNk?Y>8(7yo$K%BoPEeq*?w-PjPs9keg)V3mZvZB^mU%T!PCZVu6oB~H^%q}7d+(x z%|vzJVxrhhJnhBP{ybferac#`Qt&&x=QJt?f!o`aE=dU~US z^`5>+H+t4Zy45of>2^<7lUYOp`-IQ^chk5!4r>8mn*3*KT=Xv@f*SX^P zv4PI6^SEyCxbASleXjHe=Rf6qR-Nj@r8Tbu-=xw=l;1*fRdNA=|c!^a|3C#$QLer^(Mq2e}bHFPQkBzj6<0MdCxG_bqtM zpXE+*Lh7@?M0AWd(yteh{;xBAF+Fq-bT+;Ev2IMdfq#7C3H;_k89YrygGw@x z)1^Jpz@bD(y+U+6r>i*~(wjJuUPOF3 zEyxJRdq`DQ5SYWA{j{9YXZuo#gS*T?YEB@|{dl5ByHgL?Igek9G`;8jP4_woN>k}oi<=-6nH&GG% zWcl|)<$4K4{GsweYtsKy@|i01#)9~JO#W@}A#k`U&tshusePa%Y9HbM{Yp9hzrC}4 zx)!S}n>|tM);J=jSy)(`uHiA!%_G`GcWu@zs#UXy&Rx5N$HYXpijM9a6V*B_DmrFa z)@03l=cS37r}MI5(=}i3@a8OX(&*%rkrR_rC#Q|<&|>J&@aD@-Pt|JgjCun<+^0-> z+i!=q({G1>20J!)u*)to%DV~BJj61P(;bn4@7p8Bj2z7i+u z-yiGgewh=y|GpFJ-6y8cJq delta 63166 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 Date: Sun, 16 Dec 2018 23:20:00 +0800 Subject: [PATCH 08/27] Added: Shader Forge 1.38 source code. --- .../Assets/ShaderForge/Editor/Code.meta | 8 + .../ShaderForge/Editor/Code/SFPSC_Blending.cs | 941 +++++ .../Editor/Code/SFPSC_Blending.cs.meta | 8 + .../ShaderForge/Editor/Code/SFPSC_Console.cs | 126 + .../Editor/Code/SFPSC_Console.cs.meta | 8 + .../Editor/Code/SFPSC_Experimental.cs | 79 + .../Editor/Code/SFPSC_Experimental.cs.meta | 8 + .../ShaderForge/Editor/Code/SFPSC_Geometry.cs | 163 + .../Editor/Code/SFPSC_Geometry.cs.meta | 8 + .../ShaderForge/Editor/Code/SFPSC_Lighting.cs | 365 ++ .../Editor/Code/SFPSC_Lighting.cs.meta | 8 + .../ShaderForge/Editor/Code/SFPSC_Meta.cs | 340 ++ .../Editor/Code/SFPSC_Meta.cs.meta | 8 + .../Editor/Code/SFPSC_Properties.cs | 520 +++ .../Editor/Code/SFPSC_Properties.cs.meta | 8 + .../ShaderForge/Editor/Code/SFPS_Category.cs | 347 ++ .../Editor/Code/SFPS_Category.cs.meta | 8 + .../Editor/Code/SF_Dependencies.cs | 306 ++ .../Editor/Code/SF_Dependencies.cs.meta | 8 + .../ShaderForge/Editor/Code/SF_Editor.cs | 2179 +++++++++++ .../ShaderForge/Editor/Code/SF_Editor.cs.meta | 8 + .../Editor/Code/SF_EditorNodeBrowser.cs | 411 ++ .../Editor/Code/SF_EditorNodeBrowser.cs.meta | 8 + .../Editor/Code/SF_EditorNodeData.cs | 354 ++ .../Editor/Code/SF_EditorNodeData.cs.meta | 8 + .../ShaderForge/Editor/Code/SF_ErrorEntry.cs | 66 + .../Editor/Code/SF_ErrorEntry.cs.meta | 8 + .../Editor/Code/SF_FeatureChecker.cs | 141 + .../Editor/Code/SF_FeatureChecker.cs.meta | 8 + .../Editor/Code/SF_InstructionPass.cs | 125 + .../Editor/Code/SF_InstructionPass.cs.meta | 8 + .../Editor/Code/SF_NodeConnectionLine.cs | 345 ++ .../Editor/Code/SF_NodeConnectionLine.cs.meta | 8 + .../Editor/Code/SF_NodeConnector.cs | 1217 ++++++ .../Editor/Code/SF_NodeConnector.cs.meta | 8 + .../ShaderForge/Editor/Code/SF_NodePreview.cs | 375 ++ .../Editor/Code/SF_NodePreview.cs.meta | 8 + .../ShaderForge/Editor/Code/SF_NodeStatus.cs | 55 + .../Editor/Code/SF_NodeStatus.cs.meta | 8 + .../Editor/Code/SF_NodeTreeStatus.cs | 494 +++ .../Editor/Code/SF_NodeTreeStatus.cs.meta | 8 + .../ShaderForge/Editor/Code/SF_Parser.cs | 280 ++ .../ShaderForge/Editor/Code/SF_Parser.cs.meta | 8 + .../Editor/Code/SF_PassSettings.cs | 414 ++ .../Editor/Code/SF_PassSettings.cs.meta | 8 + .../Editor/Code/SF_PreviewSettings.cs | 22 + .../Editor/Code/SF_PreviewSettings.cs.meta | 8 + .../Editor/Code/SF_SelectionManager.cs | 412 ++ .../Editor/Code/SF_SelectionManager.cs.meta | 8 + .../ShaderForge/Editor/Code/SF_Settings.cs | 154 + .../Editor/Code/SF_Settings.cs.meta | 8 + .../ShaderForge/Editor/Code/SF_StatusBox.cs | 328 ++ .../Editor/Code/SF_StatusBox.cs.meta | 8 + .../Editor/Code/_ConnectionGroups.meta | 5 + .../Code/_ConnectionGroups/SFNCG_Append.cs | 213 + .../_ConnectionGroups/SFNCG_Append.cs.meta | 8 + .../_ConnectionGroups/SFNCG_Arithmetic.cs | 270 ++ .../SFNCG_Arithmetic.cs.meta | 8 + .../_ConnectionGroups/SFNCG_ChannelBlend.cs | 26 + .../SFNCG_ChannelBlend.cs.meta | 8 + .../_ConnectionGroups/SFNCG_ComponentMask.cs | 193 + .../SFNCG_ComponentMask.cs.meta | 8 + .../_ConnectionGroups/SFNCG_MatrixMultiply.cs | 90 + .../SFNCG_MatrixMultiply.cs.meta | 12 + .../SF_NodeConnectionGroup.cs | 83 + .../SF_NodeConnectionGroup.cs.meta | 8 + .../ShaderForge/Editor/Code/_Enums.meta | 5 + .../Editor/Code/_Enums/SF_VarTypeEnums.cs | 5 + .../Code/_Enums/SF_VarTypeEnums.cs.meta | 8 + .../ShaderForge/Editor/Code/_Evaluator.meta | 5 + .../Editor/Code/_Evaluator/Pass_FwdAdd.cs | 50 + .../Code/_Evaluator/Pass_FwdAdd.cs.meta | 8 + .../Editor/Code/_Evaluator/SF_Evaluator.cs | 3444 +++++++++++++++++ .../Code/_Evaluator/SF_Evaluator.cs.meta | 8 + .../Editor/Code/_Evaluator/_NewSystem.meta | 5 + .../_Evaluator/_NewSystem/DependencyTree.cs | 102 + .../_NewSystem/DependencyTree.cs.meta | 8 + .../ShaderForge/Editor/Code/_Nodes.meta | 5 + .../ShaderForge/Editor/Code/_Nodes/SFN_Abs.cs | 26 + .../Editor/Code/_Nodes/SFN_Abs.cs.meta | 8 + .../ShaderForge/Editor/Code/_Nodes/SFN_Add.cs | 72 + .../Editor/Code/_Nodes/SFN_Add.cs.meta | 8 + .../Editor/Code/_Nodes/SFN_AmbientLight.cs | 63 + .../Code/_Nodes/SFN_AmbientLight.cs.meta | 8 + .../Editor/Code/_Nodes/SFN_Append.cs | 190 + .../Editor/Code/_Nodes/SFN_Append.cs.meta | 8 + .../Editor/Code/_Nodes/SFN_ArcCos.cs | 30 + .../Editor/Code/_Nodes/SFN_ArcCos.cs.meta | 8 + .../Editor/Code/_Nodes/SFN_ArcSin.cs | 30 + .../Editor/Code/_Nodes/SFN_ArcSin.cs.meta | 8 + .../Editor/Code/_Nodes/SFN_ArcTan.cs | 30 + .../Editor/Code/_Nodes/SFN_ArcTan.cs.meta | 8 + .../Editor/Code/_Nodes/SFN_ArcTan2.cs | 118 + .../Editor/Code/_Nodes/SFN_ArcTan2.cs.meta | 8 + .../Editor/Code/_Nodes/SFN_Bitangent.cs | 35 + .../Editor/Code/_Nodes/SFN_Bitangent.cs.meta | 8 + .../Editor/Code/_Nodes/SFN_Blend.cs | 339 ++ .../Editor/Code/_Nodes/SFN_Blend.cs.meta | 8 + .../Editor/Code/_Nodes/SFN_Ceil.cs | 26 + .../Editor/Code/_Nodes/SFN_Ceil.cs.meta | 8 + .../Editor/Code/_Nodes/SFN_ChannelBlend.cs | 194 + .../Code/_Nodes/SFN_ChannelBlend.cs.meta | 8 + .../Editor/Code/_Nodes/SFN_Clamp.cs | 66 + .../Editor/Code/_Nodes/SFN_Clamp.cs.meta | 8 + .../Editor/Code/_Nodes/SFN_Clamp01.cs | 30 + .../Editor/Code/_Nodes/SFN_Clamp01.cs.meta | 8 + .../Editor/Code/_Nodes/SFN_Code.cs | 609 +++ .../Editor/Code/_Nodes/SFN_Code.cs.meta | 8 + .../Editor/Code/_Nodes/SFN_Color.cs | 123 + .../Editor/Code/_Nodes/SFN_Color.cs.meta | 8 + .../Editor/Code/_Nodes/SFN_CommentBox.cs | 43 + .../Editor/Code/_Nodes/SFN_CommentBox.cs.meta | 12 + .../Editor/Code/_Nodes/SFN_ComponentMask.cs | 387 ++ .../Code/_Nodes/SFN_ComponentMask.cs.meta | 8 + .../Editor/Code/_Nodes/SFN_ConstantClamp.cs | 126 + .../Code/_Nodes/SFN_ConstantClamp.cs.meta | 8 + .../Editor/Code/_Nodes/SFN_ConstantLerp.cs | 125 + .../Code/_Nodes/SFN_ConstantLerp.cs.meta | 8 + .../ShaderForge/Editor/Code/_Nodes/SFN_Cos.cs | 26 + .../Editor/Code/_Nodes/SFN_Cos.cs.meta | 8 + .../Editor/Code/_Nodes/SFN_Cross.cs | 36 + .../Editor/Code/_Nodes/SFN_Cross.cs.meta | 8 + .../Editor/Code/_Nodes/SFN_Cubemap.cs | 203 + .../Editor/Code/_Nodes/SFN_Cubemap.cs.meta | 8 + .../ShaderForge/Editor/Code/_Nodes/SFN_DDX.cs | 26 + .../Editor/Code/_Nodes/SFN_DDX.cs.meta | 9 + .../Editor/Code/_Nodes/SFN_DDXY.cs | 30 + .../Editor/Code/_Nodes/SFN_DDXY.cs.meta | 12 + .../ShaderForge/Editor/Code/_Nodes/SFN_DDY.cs | 26 + .../Editor/Code/_Nodes/SFN_DDY.cs.meta | 9 + .../Editor/Code/_Nodes/SFN_Depth.cs | 37 + .../Editor/Code/_Nodes/SFN_Depth.cs.meta | 8 + .../Editor/Code/_Nodes/SFN_DepthBlend.cs | 43 + .../Editor/Code/_Nodes/SFN_DepthBlend.cs.meta | 8 + .../Editor/Code/_Nodes/SFN_Desaturate.cs | 112 + .../Editor/Code/_Nodes/SFN_Desaturate.cs.meta | 8 + .../Editor/Code/_Nodes/SFN_Distance.cs | 52 + .../Editor/Code/_Nodes/SFN_Distance.cs.meta | 8 + .../Editor/Code/_Nodes/SFN_Divide.cs | 43 + .../Editor/Code/_Nodes/SFN_Divide.cs.meta | 8 + .../ShaderForge/Editor/Code/_Nodes/SFN_Dot.cs | 137 + .../Editor/Code/_Nodes/SFN_Dot.cs.meta | 8 + .../ShaderForge/Editor/Code/_Nodes/SFN_E.cs | 20 + .../Editor/Code/_Nodes/SFN_E.cs.meta | 8 + .../ShaderForge/Editor/Code/_Nodes/SFN_Exp.cs | 93 + .../Editor/Code/_Nodes/SFN_Exp.cs.meta | 8 + .../Editor/Code/_Nodes/SFN_FaceSign.cs | 93 + .../Editor/Code/_Nodes/SFN_FaceSign.cs.meta | 12 + .../Editor/Code/_Nodes/SFN_Final.cs | 100 + .../Editor/Code/_Nodes/SFN_Final.cs.meta | 8 + .../Editor/Code/_Nodes/SFN_Floor.cs | 26 + .../Editor/Code/_Nodes/SFN_Floor.cs.meta | 8 + .../Editor/Code/_Nodes/SFN_Fmod.cs | 29 + .../Editor/Code/_Nodes/SFN_Fmod.cs.meta | 8 + .../Editor/Code/_Nodes/SFN_FogColor.cs | 52 + .../Editor/Code/_Nodes/SFN_FogColor.cs.meta | 9 + .../Editor/Code/_Nodes/SFN_Frac.cs | 26 + .../Editor/Code/_Nodes/SFN_Frac.cs.meta | 8 + .../Code/_Nodes/SFN_FragmentPosition.cs | 49 + .../Code/_Nodes/SFN_FragmentPosition.cs.meta | 8 + .../Editor/Code/_Nodes/SFN_Fresnel.cs | 100 + .../Editor/Code/_Nodes/SFN_Fresnel.cs.meta | 8 + .../ShaderForge/Editor/Code/_Nodes/SFN_Get.cs | 98 + .../Editor/Code/_Nodes/SFN_Get.cs.meta | 12 + .../Editor/Code/_Nodes/SFN_HalfVector.cs | 36 + .../Editor/Code/_Nodes/SFN_HalfVector.cs.meta | 8 + .../Editor/Code/_Nodes/SFN_HsvToRgb.cs | 71 + .../Editor/Code/_Nodes/SFN_HsvToRgb.cs.meta | 12 + .../ShaderForge/Editor/Code/_Nodes/SFN_Hue.cs | 64 + .../Editor/Code/_Nodes/SFN_Hue.cs.meta | 12 + .../ShaderForge/Editor/Code/_Nodes/SFN_If.cs | 95 + .../Editor/Code/_Nodes/SFN_If.cs.meta | 8 + .../Editor/Code/_Nodes/SFN_InverseLerp.cs | 75 + .../Code/_Nodes/SFN_InverseLerp.cs.meta | 12 + .../Editor/Code/_Nodes/SFN_Length.cs | 42 + .../Editor/Code/_Nodes/SFN_Length.cs.meta | 8 + .../Editor/Code/_Nodes/SFN_Lerp.cs | 58 + .../Editor/Code/_Nodes/SFN_Lerp.cs.meta | 8 + .../Code/_Nodes/SFN_LightAttenuation.cs | 36 + .../Code/_Nodes/SFN_LightAttenuation.cs.meta | 8 + .../Editor/Code/_Nodes/SFN_LightColor.cs | 40 + .../Editor/Code/_Nodes/SFN_LightColor.cs.meta | 8 + .../Editor/Code/_Nodes/SFN_LightPosition.cs | 40 + .../Code/_Nodes/SFN_LightPosition.cs.meta | 8 + .../Editor/Code/_Nodes/SFN_LightVector.cs | 36 + .../Code/_Nodes/SFN_LightVector.cs.meta | 8 + .../ShaderForge/Editor/Code/_Nodes/SFN_Log.cs | 111 + .../Editor/Code/_Nodes/SFN_Log.cs.meta | 8 + .../Editor/Code/_Nodes/SFN_Matrix4x4.cs | 93 + .../Editor/Code/_Nodes/SFN_Matrix4x4.cs.meta | 12 + .../Code/_Nodes/SFN_Matrix4x4Property.cs | 98 + .../Code/_Nodes/SFN_Matrix4x4Property.cs.meta | 12 + .../ShaderForge/Editor/Code/_Nodes/SFN_Max.cs | 76 + .../Editor/Code/_Nodes/SFN_Max.cs.meta | 8 + .../ShaderForge/Editor/Code/_Nodes/SFN_Min.cs | 78 + .../Editor/Code/_Nodes/SFN_Min.cs.meta | 8 + .../Editor/Code/_Nodes/SFN_Multiply.cs | 72 + .../Editor/Code/_Nodes/SFN_Multiply.cs.meta | 8 + .../Editor/Code/_Nodes/SFN_MultiplyMatrix.cs | 91 + .../Code/_Nodes/SFN_MultiplyMatrix.cs.meta | 12 + .../Editor/Code/_Nodes/SFN_Negate.cs | 30 + .../Editor/Code/_Nodes/SFN_Negate.cs.meta | 8 + .../Editor/Code/_Nodes/SFN_Node_Constant.cs | 57 + .../Code/_Nodes/SFN_Node_Constant.cs.meta | 8 + .../Editor/Code/_Nodes/SFN_Noise.cs | 87 + .../Editor/Code/_Nodes/SFN_Noise.cs.meta | 8 + .../Editor/Code/_Nodes/SFN_NormalBlend.cs | 101 + .../Code/_Nodes/SFN_NormalBlend.cs.meta | 8 + .../Editor/Code/_Nodes/SFN_NormalVector.cs | 78 + .../Code/_Nodes/SFN_NormalVector.cs.meta | 8 + .../Editor/Code/_Nodes/SFN_Normalize.cs | 44 + .../Editor/Code/_Nodes/SFN_Normalize.cs.meta | 8 + .../Editor/Code/_Nodes/SFN_ObjectPosition.cs | 39 + .../Code/_Nodes/SFN_ObjectPosition.cs.meta | 8 + .../Editor/Code/_Nodes/SFN_ObjectScale.cs | 70 + .../Code/_Nodes/SFN_ObjectScale.cs.meta | 9 + .../Editor/Code/_Nodes/SFN_OneMinus.cs | 57 + .../Editor/Code/_Nodes/SFN_OneMinus.cs.meta | 8 + .../Editor/Code/_Nodes/SFN_Panner.cs | 161 + .../Editor/Code/_Nodes/SFN_Panner.cs.meta | 8 + .../Editor/Code/_Nodes/SFN_Parallax.cs | 142 + .../Editor/Code/_Nodes/SFN_Parallax.cs.meta | 8 + .../ShaderForge/Editor/Code/_Nodes/SFN_Phi.cs | 19 + .../Editor/Code/_Nodes/SFN_Phi.cs.meta | 8 + .../ShaderForge/Editor/Code/_Nodes/SFN_Pi.cs | 19 + .../Editor/Code/_Nodes/SFN_Pi.cs.meta | 8 + .../Editor/Code/_Nodes/SFN_PixelSize.cs | 38 + .../Editor/Code/_Nodes/SFN_PixelSize.cs.meta | 8 + .../Editor/Code/_Nodes/SFN_Posterize.cs | 48 + .../Editor/Code/_Nodes/SFN_Posterize.cs.meta | 8 + .../Editor/Code/_Nodes/SFN_Power.cs | 56 + .../Editor/Code/_Nodes/SFN_Power.cs.meta | 8 + .../Code/_Nodes/SFN_ProjectionParameters.cs | 40 + .../_Nodes/SFN_ProjectionParameters.cs.meta | 8 + .../Editor/Code/_Nodes/SFN_Reciprocal.cs | 59 + .../Editor/Code/_Nodes/SFN_Reciprocal.cs.meta | 12 + .../Editor/Code/_Nodes/SFN_Reflect.cs | 34 + .../Editor/Code/_Nodes/SFN_Reflect.cs.meta | 8 + .../Editor/Code/_Nodes/SFN_Relay.cs | 69 + .../Editor/Code/_Nodes/SFN_Relay.cs.meta | 8 + .../Editor/Code/_Nodes/SFN_RemapRange.cs | 151 + .../Editor/Code/_Nodes/SFN_RemapRange.cs.meta | 8 + .../Code/_Nodes/SFN_RemapRangeAdvanced.cs | 94 + .../_Nodes/SFN_RemapRangeAdvanced.cs.meta | 8 + .../Editor/Code/_Nodes/SFN_RgbToHsv.cs | 130 + .../Editor/Code/_Nodes/SFN_RgbToHsv.cs.meta | 12 + .../Editor/Code/_Nodes/SFN_Root2.cs | 19 + .../Editor/Code/_Nodes/SFN_Root2.cs.meta | 8 + .../Editor/Code/_Nodes/SFN_Rotator.cs | 179 + .../Editor/Code/_Nodes/SFN_Rotator.cs.meta | 8 + .../Editor/Code/_Nodes/SFN_Round.cs | 26 + .../Editor/Code/_Nodes/SFN_Round.cs.meta | 8 + .../Editor/Code/_Nodes/SFN_SceneColor.cs | 51 + .../Editor/Code/_Nodes/SFN_SceneColor.cs.meta | 8 + .../Editor/Code/_Nodes/SFN_SceneDepth.cs | 40 + .../Editor/Code/_Nodes/SFN_SceneDepth.cs.meta | 8 + .../Code/_Nodes/SFN_ScreenParameters.cs | 40 + .../Code/_Nodes/SFN_ScreenParameters.cs.meta | 8 + .../Editor/Code/_Nodes/SFN_ScreenPos.cs | 83 + .../Editor/Code/_Nodes/SFN_ScreenPos.cs.meta | 8 + .../ShaderForge/Editor/Code/_Nodes/SFN_Set.cs | 83 + .../Editor/Code/_Nodes/SFN_Set.cs.meta | 12 + .../Editor/Code/_Nodes/SFN_Sign.cs | 29 + .../Editor/Code/_Nodes/SFN_Sign.cs.meta | 8 + .../ShaderForge/Editor/Code/_Nodes/SFN_Sin.cs | 26 + .../Editor/Code/_Nodes/SFN_Sin.cs.meta | 8 + .../Editor/Code/_Nodes/SFN_Slider.cs | 170 + .../Editor/Code/_Nodes/SFN_Slider.cs.meta | 8 + .../Editor/Code/_Nodes/SFN_Smoothstep.cs | 64 + .../Editor/Code/_Nodes/SFN_Smoothstep.cs.meta | 12 + .../Editor/Code/_Nodes/SFN_Sqrt.cs | 26 + .../Editor/Code/_Nodes/SFN_Sqrt.cs.meta | 8 + .../Editor/Code/_Nodes/SFN_StaticBranch.cs | 80 + .../Code/_Nodes/SFN_StaticBranch.cs.meta | 8 + .../Editor/Code/_Nodes/SFN_Step.cs | 31 + .../Editor/Code/_Nodes/SFN_Step.cs.meta | 8 + .../Editor/Code/_Nodes/SFN_Subtract.cs | 31 + .../Editor/Code/_Nodes/SFN_Subtract.cs.meta | 8 + .../Editor/Code/_Nodes/SFN_SwitchProperty.cs | 161 + .../Code/_Nodes/SFN_SwitchProperty.cs.meta | 8 + .../ShaderForge/Editor/Code/_Nodes/SFN_Tan.cs | 26 + .../Editor/Code/_Nodes/SFN_Tan.cs.meta | 8 + .../Editor/Code/_Nodes/SFN_Tangent.cs | 35 + .../Editor/Code/_Nodes/SFN_Tangent.cs.meta | 8 + .../ShaderForge/Editor/Code/_Nodes/SFN_Tau.cs | 19 + .../Editor/Code/_Nodes/SFN_Tau.cs.meta | 8 + .../Editor/Code/_Nodes/SFN_TexCoord.cs | 122 + .../Editor/Code/_Nodes/SFN_TexCoord.cs.meta | 8 + .../Editor/Code/_Nodes/SFN_Time.cs | 53 + .../Editor/Code/_Nodes/SFN_Time.cs.meta | 8 + .../Editor/Code/_Nodes/SFN_ToggleProperty.cs | 146 + .../Code/_Nodes/SFN_ToggleProperty.cs.meta | 8 + .../Editor/Code/_Nodes/SFN_Transform.cs | 248 ++ .../Editor/Code/_Nodes/SFN_Transform.cs.meta | 8 + .../Editor/Code/_Nodes/SFN_Transpose.cs | 53 + .../Editor/Code/_Nodes/SFN_Transpose.cs.meta | 12 + .../Editor/Code/_Nodes/SFN_Trunc.cs | 27 + .../Editor/Code/_Nodes/SFN_Trunc.cs.meta | 8 + .../Editor/Code/_Nodes/SFN_UVTile.cs | 128 + .../Editor/Code/_Nodes/SFN_UVTile.cs.meta | 12 + .../Editor/Code/_Nodes/SFN_ValueProperty.cs | 102 + .../Code/_Nodes/SFN_ValueProperty.cs.meta | 8 + .../Editor/Code/_Nodes/SFN_Vector1.cs | 91 + .../Editor/Code/_Nodes/SFN_Vector1.cs.meta | 8 + .../Editor/Code/_Nodes/SFN_Vector2.cs | 79 + .../Editor/Code/_Nodes/SFN_Vector2.cs.meta | 8 + .../Editor/Code/_Nodes/SFN_Vector3.cs | 89 + .../Editor/Code/_Nodes/SFN_Vector3.cs.meta | 8 + .../Editor/Code/_Nodes/SFN_Vector4.cs | 89 + .../Editor/Code/_Nodes/SFN_Vector4.cs.meta | 8 + .../Editor/Code/_Nodes/SFN_Vector4Property.cs | 112 + .../Code/_Nodes/SFN_Vector4Property.cs.meta | 8 + .../Code/_Nodes/SFN_VectorProjection.cs | 59 + .../Code/_Nodes/SFN_VectorProjection.cs.meta | 8 + .../Editor/Code/_Nodes/SFN_VectorRejection.cs | 59 + .../Code/_Nodes/SFN_VectorRejection.cs.meta | 8 + .../Editor/Code/_Nodes/SFN_VertexColor.cs | 35 + .../Code/_Nodes/SFN_VertexColor.cs.meta | 8 + .../Editor/Code/_Nodes/SFN_ViewPosition.cs | 38 + .../Code/_Nodes/SFN_ViewPosition.cs.meta | 8 + .../Code/_Nodes/SFN_ViewReflectionVector.cs | 31 + .../_Nodes/SFN_ViewReflectionVector.cs.meta | 8 + .../Editor/Code/_Nodes/SFN_ViewVector.cs | 32 + .../Editor/Code/_Nodes/SFN_ViewVector.cs.meta | 8 + .../ShaderForge/Editor/Code/_Nodes/SF_Node.cs | 2661 +++++++++++++ .../Editor/Code/_Nodes/SF_Node.cs.meta | 8 + .../Editor/Code/_Nodes/SF_Node_Arithmetic.cs | 60 + .../Code/_Nodes/SF_Node_Arithmetic.cs.meta | 8 + .../Editor/Code/_Nodes/SF_Node_Resizeable.cs | 263 ++ .../Code/_Nodes/SF_Node_Resizeable.cs.meta | 8 + .../Editor/Code/_ShaderProperties.meta | 5 + .../Code/_ShaderProperties/SFP_Branch.cs | 39 + .../Code/_ShaderProperties/SFP_Branch.cs.meta | 8 + .../Code/_ShaderProperties/SFP_Color.cs | 37 + .../Code/_ShaderProperties/SFP_Color.cs.meta | 8 + .../Code/_ShaderProperties/SFP_Cubemap.cs | 32 + .../_ShaderProperties/SFP_Cubemap.cs.meta | 8 + .../SFP_Matrix4x4Property.cs | 35 + .../SFP_Matrix4x4Property.cs.meta | 12 + .../Code/_ShaderProperties/SFP_Slider.cs | 49 + .../Code/_ShaderProperties/SFP_Slider.cs.meta | 8 + .../_ShaderProperties/SFP_SwitchProperty.cs | 31 + .../SFP_SwitchProperty.cs.meta | 8 + .../Code/_ShaderProperties/SFP_Tex2d.cs | 50 + .../Code/_ShaderProperties/SFP_Tex2d.cs.meta | 8 + .../_ShaderProperties/SFP_ToggleProperty.cs | 31 + .../SFP_ToggleProperty.cs.meta | 8 + .../_ShaderProperties/SFP_ValueProperty.cs | 31 + .../SFP_ValueProperty.cs.meta | 8 + .../_ShaderProperties/SFP_Vector4Property.cs | 38 + .../SFP_Vector4Property.cs.meta | 8 + .../_ShaderProperties/SF_ShaderProperty.cs | 297 ++ .../SF_ShaderProperty.cs.meta | 8 + .../ShaderForge/Editor/Code/_Utility.meta | 5 + .../Editor/Code/_Utility/GUILines.cs | 478 +++ .../Editor/Code/_Utility/GUILines.cs.meta | 8 + .../Editor/Code/_Utility/SF_Blit.cs | 228 ++ .../Editor/Code/_Utility/SF_Blit.cs.meta | 12 + .../Editor/Code/_Utility/SF_ColorPicker.cs | 863 +++++ .../Code/_Utility/SF_ColorPicker.cs.meta | 8 + .../Editor/Code/_Utility/SF_Debug.cs | 23 + .../Editor/Code/_Utility/SF_Debug.cs.meta | 8 + .../Code/_Utility/SF_DraggableSeparator.cs | 102 + .../_Utility/SF_DraggableSeparator.cs.meta | 8 + .../Editor/Code/_Utility/SF_Extensions.cs | 531 +++ .../Code/_Utility/SF_Extensions.cs.meta | 8 + .../Editor/Code/_Utility/SF_GUI.cs | 718 ++++ .../Editor/Code/_Utility/SF_GUI.cs.meta | 8 + .../Editor/Code/_Utility/SF_Link.cs | 55 + .../Editor/Code/_Utility/SF_Link.cs.meta | 8 + .../Editor/Code/_Utility/SF_MinMax.cs | 34 + .../Editor/Code/_Utility/SF_MinMax.cs.meta | 8 + .../Editor/Code/_Utility/SF_Resources.cs | 77 + .../Editor/Code/_Utility/SF_Resources.cs.meta | 8 + .../Editor/Code/_Utility/SF_Styles.cs | 337 ++ .../Editor/Code/_Utility/SF_Styles.cs.meta | 8 + .../Editor/Code/_Utility/SF_Tools.cs | 486 +++ .../Editor/Code/_Utility/SF_Tools.cs.meta | 8 + .../Editor/Code/_Utility/SF_Web.cs | 32 + .../Editor/Code/_Utility/SF_Web.cs.meta | 8 + .../Editor/Code/_Utility/SF_ZoomArea.cs | 43 + .../Editor/Code/_Utility/SF_ZoomArea.cs.meta | 8 + .../Code/_Utility/SerializableDictionary.cs | 64 + .../_Utility/SerializableDictionary.cs.meta | 8 + 384 files changed, 34153 insertions(+) create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code.meta create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/SFPSC_Blending.cs create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/SFPSC_Blending.cs.meta create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/SFPSC_Console.cs create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/SFPSC_Console.cs.meta create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/SFPSC_Experimental.cs create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/SFPSC_Experimental.cs.meta create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/SFPSC_Geometry.cs create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/SFPSC_Geometry.cs.meta create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/SFPSC_Lighting.cs create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/SFPSC_Lighting.cs.meta create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/SFPSC_Meta.cs create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/SFPSC_Meta.cs.meta create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/SFPSC_Properties.cs create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/SFPSC_Properties.cs.meta create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/SFPS_Category.cs create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/SFPS_Category.cs.meta create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/SF_Dependencies.cs create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/SF_Dependencies.cs.meta create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/SF_Editor.cs create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/SF_Editor.cs.meta create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/SF_EditorNodeBrowser.cs create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/SF_EditorNodeBrowser.cs.meta create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/SF_EditorNodeData.cs create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/SF_EditorNodeData.cs.meta create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/SF_ErrorEntry.cs create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/SF_ErrorEntry.cs.meta create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/SF_FeatureChecker.cs create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/SF_FeatureChecker.cs.meta create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/SF_InstructionPass.cs create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/SF_InstructionPass.cs.meta create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/SF_NodeConnectionLine.cs create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/SF_NodeConnectionLine.cs.meta create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/SF_NodeConnector.cs create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/SF_NodeConnector.cs.meta create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/SF_NodePreview.cs create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/SF_NodePreview.cs.meta create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/SF_NodeStatus.cs create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/SF_NodeStatus.cs.meta create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/SF_NodeTreeStatus.cs create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/SF_NodeTreeStatus.cs.meta create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/SF_Parser.cs create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/SF_Parser.cs.meta create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/SF_PassSettings.cs create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/SF_PassSettings.cs.meta create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/SF_PreviewSettings.cs create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/SF_PreviewSettings.cs.meta create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/SF_SelectionManager.cs create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/SF_SelectionManager.cs.meta create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/SF_Settings.cs create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/SF_Settings.cs.meta create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/SF_StatusBox.cs create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/SF_StatusBox.cs.meta create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_ConnectionGroups.meta create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_ConnectionGroups/SFNCG_Append.cs create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_ConnectionGroups/SFNCG_Append.cs.meta create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_ConnectionGroups/SFNCG_Arithmetic.cs create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_ConnectionGroups/SFNCG_Arithmetic.cs.meta create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_ConnectionGroups/SFNCG_ChannelBlend.cs create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_ConnectionGroups/SFNCG_ChannelBlend.cs.meta create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_ConnectionGroups/SFNCG_ComponentMask.cs create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_ConnectionGroups/SFNCG_ComponentMask.cs.meta create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_ConnectionGroups/SFNCG_MatrixMultiply.cs create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_ConnectionGroups/SFNCG_MatrixMultiply.cs.meta create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_ConnectionGroups/SF_NodeConnectionGroup.cs create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_ConnectionGroups/SF_NodeConnectionGroup.cs.meta create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Enums.meta create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Enums/SF_VarTypeEnums.cs create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Enums/SF_VarTypeEnums.cs.meta create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Evaluator.meta create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Evaluator/Pass_FwdAdd.cs create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Evaluator/Pass_FwdAdd.cs.meta create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Evaluator/SF_Evaluator.cs create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Evaluator/SF_Evaluator.cs.meta create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Evaluator/_NewSystem.meta create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Evaluator/_NewSystem/DependencyTree.cs create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Evaluator/_NewSystem/DependencyTree.cs.meta create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes.meta create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Abs.cs create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Abs.cs.meta create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Add.cs create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Add.cs.meta create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_AmbientLight.cs create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_AmbientLight.cs.meta create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Append.cs create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Append.cs.meta create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ArcCos.cs create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ArcCos.cs.meta create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ArcSin.cs create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ArcSin.cs.meta create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ArcTan.cs create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ArcTan.cs.meta create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ArcTan2.cs create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ArcTan2.cs.meta create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Bitangent.cs create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Bitangent.cs.meta create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Blend.cs create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Blend.cs.meta create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Ceil.cs create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Ceil.cs.meta create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ChannelBlend.cs create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ChannelBlend.cs.meta create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Clamp.cs create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Clamp.cs.meta create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Clamp01.cs create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Clamp01.cs.meta create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Code.cs create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Code.cs.meta create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Color.cs create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Color.cs.meta create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_CommentBox.cs create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_CommentBox.cs.meta create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ComponentMask.cs create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ComponentMask.cs.meta create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ConstantClamp.cs create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ConstantClamp.cs.meta create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ConstantLerp.cs create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ConstantLerp.cs.meta create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Cos.cs create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Cos.cs.meta create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Cross.cs create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Cross.cs.meta create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Cubemap.cs create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Cubemap.cs.meta create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_DDX.cs create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_DDX.cs.meta create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_DDXY.cs create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_DDXY.cs.meta create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_DDY.cs create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_DDY.cs.meta create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Depth.cs create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Depth.cs.meta create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_DepthBlend.cs create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_DepthBlend.cs.meta create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Desaturate.cs create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Desaturate.cs.meta create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Distance.cs create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Distance.cs.meta create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Divide.cs create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Divide.cs.meta create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Dot.cs create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Dot.cs.meta create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_E.cs create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_E.cs.meta create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Exp.cs create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Exp.cs.meta create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_FaceSign.cs create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_FaceSign.cs.meta create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Final.cs create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Final.cs.meta create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Floor.cs create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Floor.cs.meta create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Fmod.cs create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Fmod.cs.meta create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_FogColor.cs create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_FogColor.cs.meta create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Frac.cs create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Frac.cs.meta create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_FragmentPosition.cs create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_FragmentPosition.cs.meta create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Fresnel.cs create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Fresnel.cs.meta create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Get.cs create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Get.cs.meta create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_HalfVector.cs create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_HalfVector.cs.meta create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_HsvToRgb.cs create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_HsvToRgb.cs.meta create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Hue.cs create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Hue.cs.meta create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_If.cs create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_If.cs.meta create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_InverseLerp.cs create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_InverseLerp.cs.meta create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Length.cs create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Length.cs.meta create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Lerp.cs create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Lerp.cs.meta create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_LightAttenuation.cs create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_LightAttenuation.cs.meta create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_LightColor.cs create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_LightColor.cs.meta create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_LightPosition.cs create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_LightPosition.cs.meta create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_LightVector.cs create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_LightVector.cs.meta create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Log.cs create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Log.cs.meta create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Matrix4x4.cs create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Matrix4x4.cs.meta create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Matrix4x4Property.cs create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Matrix4x4Property.cs.meta create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Max.cs create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Max.cs.meta create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Min.cs create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Min.cs.meta create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Multiply.cs create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Multiply.cs.meta create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_MultiplyMatrix.cs create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_MultiplyMatrix.cs.meta create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Negate.cs create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Negate.cs.meta create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Node_Constant.cs create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Node_Constant.cs.meta create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Noise.cs create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Noise.cs.meta create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_NormalBlend.cs create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_NormalBlend.cs.meta create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_NormalVector.cs create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_NormalVector.cs.meta create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Normalize.cs create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Normalize.cs.meta create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ObjectPosition.cs create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ObjectPosition.cs.meta create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ObjectScale.cs create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ObjectScale.cs.meta create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_OneMinus.cs create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_OneMinus.cs.meta create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Panner.cs create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Panner.cs.meta create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Parallax.cs create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Parallax.cs.meta create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Phi.cs create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Phi.cs.meta create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Pi.cs create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Pi.cs.meta create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_PixelSize.cs create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_PixelSize.cs.meta create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Posterize.cs create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Posterize.cs.meta create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Power.cs create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Power.cs.meta create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ProjectionParameters.cs create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ProjectionParameters.cs.meta create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Reciprocal.cs create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Reciprocal.cs.meta create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Reflect.cs create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Reflect.cs.meta create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Relay.cs create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Relay.cs.meta create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_RemapRange.cs create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_RemapRange.cs.meta create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_RemapRangeAdvanced.cs create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_RemapRangeAdvanced.cs.meta create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_RgbToHsv.cs create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_RgbToHsv.cs.meta create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Root2.cs create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Root2.cs.meta create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Rotator.cs create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Rotator.cs.meta create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Round.cs create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Round.cs.meta create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_SceneColor.cs create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_SceneColor.cs.meta create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_SceneDepth.cs create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_SceneDepth.cs.meta create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ScreenParameters.cs create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ScreenParameters.cs.meta create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ScreenPos.cs create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ScreenPos.cs.meta create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Set.cs create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Set.cs.meta create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Sign.cs create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Sign.cs.meta create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Sin.cs create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Sin.cs.meta create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Slider.cs create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Slider.cs.meta create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Smoothstep.cs create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Smoothstep.cs.meta create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Sqrt.cs create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Sqrt.cs.meta create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_StaticBranch.cs create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_StaticBranch.cs.meta create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Step.cs create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Step.cs.meta create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Subtract.cs create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Subtract.cs.meta create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_SwitchProperty.cs create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_SwitchProperty.cs.meta create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Tan.cs create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Tan.cs.meta create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Tangent.cs create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Tangent.cs.meta create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Tau.cs create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Tau.cs.meta create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_TexCoord.cs create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_TexCoord.cs.meta create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Time.cs create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Time.cs.meta create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ToggleProperty.cs create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ToggleProperty.cs.meta create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Transform.cs create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Transform.cs.meta create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Transpose.cs create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Transpose.cs.meta create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Trunc.cs create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Trunc.cs.meta create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_UVTile.cs create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_UVTile.cs.meta create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ValueProperty.cs create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ValueProperty.cs.meta create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Vector1.cs create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Vector1.cs.meta create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Vector2.cs create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Vector2.cs.meta create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Vector3.cs create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Vector3.cs.meta create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Vector4.cs create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Vector4.cs.meta create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Vector4Property.cs create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Vector4Property.cs.meta create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_VectorProjection.cs create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_VectorProjection.cs.meta create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_VectorRejection.cs create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_VectorRejection.cs.meta create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_VertexColor.cs create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_VertexColor.cs.meta create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ViewPosition.cs create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ViewPosition.cs.meta create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ViewReflectionVector.cs create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ViewReflectionVector.cs.meta create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ViewVector.cs create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ViewVector.cs.meta create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SF_Node.cs create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SF_Node.cs.meta create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SF_Node_Arithmetic.cs create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SF_Node_Arithmetic.cs.meta create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SF_Node_Resizeable.cs create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SF_Node_Resizeable.cs.meta create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_ShaderProperties.meta create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_ShaderProperties/SFP_Branch.cs create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_ShaderProperties/SFP_Branch.cs.meta create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_ShaderProperties/SFP_Color.cs create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_ShaderProperties/SFP_Color.cs.meta create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_ShaderProperties/SFP_Cubemap.cs create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_ShaderProperties/SFP_Cubemap.cs.meta create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_ShaderProperties/SFP_Matrix4x4Property.cs create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_ShaderProperties/SFP_Matrix4x4Property.cs.meta create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_ShaderProperties/SFP_Slider.cs create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_ShaderProperties/SFP_Slider.cs.meta create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_ShaderProperties/SFP_SwitchProperty.cs create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_ShaderProperties/SFP_SwitchProperty.cs.meta create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_ShaderProperties/SFP_Tex2d.cs create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_ShaderProperties/SFP_Tex2d.cs.meta create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_ShaderProperties/SFP_ToggleProperty.cs create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_ShaderProperties/SFP_ToggleProperty.cs.meta create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_ShaderProperties/SFP_ValueProperty.cs create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_ShaderProperties/SFP_ValueProperty.cs.meta create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_ShaderProperties/SFP_Vector4Property.cs create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_ShaderProperties/SFP_Vector4Property.cs.meta create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_ShaderProperties/SF_ShaderProperty.cs create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_ShaderProperties/SF_ShaderProperty.cs.meta create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Utility.meta create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Utility/GUILines.cs create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Utility/GUILines.cs.meta create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Utility/SF_Blit.cs create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Utility/SF_Blit.cs.meta create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Utility/SF_ColorPicker.cs create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Utility/SF_ColorPicker.cs.meta create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Utility/SF_Debug.cs create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Utility/SF_Debug.cs.meta create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Utility/SF_DraggableSeparator.cs create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Utility/SF_DraggableSeparator.cs.meta create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Utility/SF_Extensions.cs create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Utility/SF_Extensions.cs.meta create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Utility/SF_GUI.cs create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Utility/SF_GUI.cs.meta create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Utility/SF_Link.cs create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Utility/SF_Link.cs.meta create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Utility/SF_MinMax.cs create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Utility/SF_MinMax.cs.meta create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Utility/SF_Resources.cs create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Utility/SF_Resources.cs.meta create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Utility/SF_Styles.cs create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Utility/SF_Styles.cs.meta create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Utility/SF_Tools.cs create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Utility/SF_Tools.cs.meta create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Utility/SF_Web.cs create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Utility/SF_Web.cs.meta create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Utility/SF_ZoomArea.cs create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Utility/SF_ZoomArea.cs.meta create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Utility/SerializableDictionary.cs create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Utility/SerializableDictionary.cs.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code.meta b/Shader Forge/Assets/ShaderForge/Editor/Code.meta new file mode 100644 index 00000000..0e4af6cb --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: fff0e576f4e9e2f4ea6dc2f383282b1b +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/SFPSC_Blending.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/SFPSC_Blending.cs new file mode 100644 index 00000000..67a2d6fb --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/SFPSC_Blending.cs @@ -0,0 +1,941 @@ +using UnityEngine; +using UnityEditor; +using System.Collections; + +namespace ShaderForge { + + + public enum DepthTestStencil { Less, Greater, LEqual, GEqual, Equal, NotEqual, Always, Never }; + public enum StencilOp { Keep, Zero, Replace, Invert, IncrSat, DecrSat, IncrWrap, DecrWrap }; + public enum DepthTest { Less, Greater, LEqual, GEqual, Equal, NotEqual, Always }; + public enum RenderType { None, Opaque, Transparent, TransparentCutout, Background, Overlay, TreeOpaque, TreeTransparentCutout, TreeBillboard, Grass, GrassBillboard }; + public enum BlendModePreset { + Opaque, + AlphaBlended, + AlphaBlendedPremultiplied, + Additive, + Screen, + Multiplicative, + Custom + }; + public enum ShaderFogMode{ Global, Linear, Exp, Exp2 }; + public enum BlendMode { One, Zero, SrcColor, SrcAlpha, DstColor, DstAlpha, OneMinusSrcColor, OneMinusSrcAlpha, OneMinusDstColor, OneMinusDstAlpha }; + public enum Queue { Background, Geometry, AlphaTest, Transparent, Overlay }; + + public enum Dithering { Off, Dither2x2, Dither3x3, Dither4x4 }; + + + [System.Serializable] + public class SFPSC_Blending : SFPS_Category { + + public static string[] strDepthTestStencil = new string[] { "<", ">", "\u2264", "\u2265", "=", "\u2260", "Always (Default)", "Never" }; + public static string[] strStencilOp = new string[] { "Keep (Default)", "Zero", "Replace", "Invert", "Increase (Clamped)", "Decrease (Clamped)", "Increase (Wrapped)", "Decrease (Wrapped)" }; + public static string[] strDepthTest = new string[] { "<", ">", "\u2264 (Default)", "\u2265", "=", "\u2260", "Always" }; + public static int[] queueNumbers = new int[] { 1000, 2000, 2450, 3000, 4000 }; + public static string[] strQueue = new string[] { "Background (1000)", "Opaque Geometry (2000)", "Alpha Clip (2450)", "Transparent (3000)", "Overlay (4000)" }; + public static string[] strDithering = new string[] { "Off", "2x2 matrix", "3x3 matrix", "4x4 matrix" }; + + public static string[] strBlendModePreset = new string[] { + "Opaque", + "Alpha Blended", + "Alpha Blended (Premultiplied)", + "Additive", + "Screen", + "Multiplicative", + "" + }; + + + // Vars + + public BlendModePreset blendModePreset = BlendModePreset.Opaque; + public BlendMode blendSrc = BlendMode.One; + public BlendMode blendDst = BlendMode.Zero; + public DepthTest depthTest = DepthTest.LEqual; + + + public byte stencilValue = 128; + public byte stencilMaskRead = 255; + public byte stencilMaskWrite = 255; + public DepthTestStencil stencilComparison = DepthTestStencil.Always; + public StencilOp stencilPass = StencilOp.Keep; + public StencilOp stencilFail = StencilOp.Keep; + public StencilOp stencilFailZ = StencilOp.Keep; + + public int offsetFactor = 0; + public int offsetUnits = 0; + + // colorMask is a bitmask + // 0 = ____ + // 1 = ___A + // 2 = __B_ + // 3 = __BA + // 4 = _G__ + // 5 = _G_A + // 6 = _GB_ + // 7 = _GBA + // 8 = R___ + // 9 = R__A + // 10 = R_B_ + // 11 = R_BA + // 12 = RG__ + // 13 = RG_A + // 14 = RGB_ + // 15 = RGBA + public int colorMask = 15; + + public Dithering dithering = Dithering.Off; + public bool alphaToCoverage = false; + + public bool writeDepth = true; + + public bool useFog = true; + + public bool perObjectRefraction = true; + public string refractionPassName = "Refraction"; + + + public bool autoSort = true; + public Queue queuePreset = (Queue)1; + public int queueOffset = 0; + public RenderType renderType = RenderType.Opaque; + public bool ignoreProjector = false; + + + // Fog + public bool fogOverrideMode = false; + public ShaderFogMode fogMode = ShaderFogMode.Global; + + public bool fogOverrideColor = false; + public Color fogColor; + + public bool fogOverrideDensity = false; + public float fogDensity; + + public bool fogOverrideRange = false; + public Vector2 fogRange; + + + public bool useStencilBuffer = false; + public bool allowStencilWriteThroughProperties = false; + + + new void OnEnable() { + fogColor = RenderSettings.fogColor; + fogDensity = RenderSettings.fogDensity; + fogRange = new Vector2( RenderSettings.fogStartDistance, RenderSettings.fogEndDistance ); + base.hideFlags = HideFlags.HideAndDontSave; + } + + + public override string Serialize(){ + string s = ""; + + //s += Serialize( "blpr", ( (int)blendModePreset ).ToString() ); + s += Serialize( "bsrc", ( (int)blendSrc ).ToString() ); + s += Serialize( "bdst", ( (int)blendDst ).ToString() ); + s += Serialize( "dpts", ( (int)depthTest ).ToString() ); + s += Serialize( "wrdp", writeDepth.ToString() ); + + s += Serialize( "dith", ( (int)dithering ).ToString() ); + s += Serialize( "atcv", alphaToCoverage.ToString() ); // bool + + s += Serialize( "rfrpo", perObjectRefraction.ToString() ); + s += Serialize( "rfrpn", refractionPassName ); + + s += Serialize( "coma", colorMask.ToString() ); + + s += Serialize( "ufog", useFog.ToString() ); + s += Serialize( "aust", autoSort.ToString() ); + s += Serialize( "igpj", ignoreProjector.ToString() ); + s += Serialize( "qofs", queueOffset.ToString() ); + + s += Serialize( "qpre", ((int)queuePreset).ToString() ); + s += Serialize( "rntp", ( (int)renderType ).ToString() ); + s += Serialize( "fgom", fogOverrideMode.ToString()); // bool + s += Serialize( "fgoc", fogOverrideColor.ToString()); // bool + s += Serialize( "fgod", fogOverrideDensity.ToString()); // bool + s += Serialize( "fgor", fogOverrideRange.ToString()); // bool + + s += Serialize( "fgmd", ((int)fogMode).ToString()); // FogMode + s += Serialize( "fgcr", fogColor.r.ToString()); // Fog Color + s += Serialize( "fgcg", fogColor.g.ToString()); // Fog Color + s += Serialize( "fgcb", fogColor.b.ToString()); // Fog Color + s += Serialize( "fgca", fogColor.a.ToString()); // Fog Color + s += Serialize( "fgde", fogDensity.ToString()); // float + s += Serialize( "fgrn", fogRange.x.ToString()); // Fog range X (Near) + s += Serialize( "fgrf", fogRange.y.ToString()); // Fog range Y (Far) + + + // Stencil buffer: + s += Serialize ( "stcl", useStencilBuffer.ToString()); + s += Serialize ( "atwp", allowStencilWriteThroughProperties.ToString()); + s += Serialize ( "stva", stencilValue.ToString()); + s += Serialize ( "stmr", stencilMaskRead.ToString()); + s += Serialize ( "stmw", stencilMaskWrite.ToString()); + s += Serialize ( "stcp", ((int)stencilComparison).ToString()); + s += Serialize ( "stps", ((int)stencilPass).ToString()); + s += Serialize ( "stfa", ((int)stencilFail).ToString()); + s += Serialize ( "stfz", ((int)stencilFailZ).ToString()); + + + // Offset + s += Serialize ( "ofsf", offsetFactor.ToString()); + s += Serialize ( "ofsu", offsetUnits.ToString()); + + return s; + } + + bool lockSrcDstRead = false; + + public override void Deserialize(string key, string value){ + + + + switch( key ) { + + case "blpr": // This is no longer saved, but in old shaders, we have to read it with old enum indices + + // 0 "Opaque", + // 1 "Alpha Blended", + // - "Alpha Blended (Premultiplied)", + // 2 "Additive", + // 3 "Screen", + // 4 "Multiplicative", + + int iVal = int.Parse( value ); + if( iVal > 1 ) // Offset due to adding premul + iVal++; + blendModePreset = (BlendModePreset)iVal; + ConformBlendsToPreset(); + + lockSrcDstRead = true; + break; + case "bsrc": + if( lockSrcDstRead ) + break; + blendSrc = (BlendMode)int.Parse( value ); + break; + case "bdst": + if( lockSrcDstRead ) { + lockSrcDstRead = false; + break; + } + blendDst = (BlendMode)int.Parse( value ); + ConformPresetToBlend(); + break; + case "dpts": + depthTest = (DepthTest)int.Parse( value ); + break; + case "wrdp": + writeDepth = bool.Parse( value ); + break; + case "dith": + dithering = (Dithering)int.Parse( value ); + break; + case "atcv": + alphaToCoverage = bool.Parse( value ); + break; + case "rfrpo": + perObjectRefraction = bool.Parse( value ); + break; + case "rfrpn": + refractionPassName = value; + break; + case "coma": + colorMask = int.Parse( value ); + break; + case "ufog": + useFog = bool.Parse( value ); + break; + case "aust": + autoSort = bool.Parse( value ); + break; + case "igpj": + ignoreProjector = bool.Parse( value ); + break; + case "qofs": + queueOffset = int.Parse( value ); + break; + + case "qpre": + queuePreset = (Queue)int.Parse( value ); + break; + + case "rntp": + renderType = (RenderType)int.Parse( value ); + break; + // Fog booleans + case "fgom": + fogOverrideMode = bool.Parse( value ); + break; + case "fgoc": + fogOverrideColor = bool.Parse( value ); + break; + case "fgod": + fogOverrideDensity = bool.Parse( value ); + break; + case "fgor": + fogOverrideRange = bool.Parse( value ); + break; + + // Fog values + case "fgmd": + fogMode = (ShaderFogMode)int.Parse( value ); + break; + case "fgcr": + fogColor.r = float.Parse( value ); + break; + case "fgcg": + fogColor.g = float.Parse( value ); + break; + case "fgcb": + fogColor.b = float.Parse( value ); + break; + case "fgca": + fogColor.a = float.Parse( value ); + break; + case "fgde": + fogDensity = float.Parse( value ); + break; + case "fgrn": + fogRange.x = float.Parse( value ); + break; + case "fgrf": + fogRange.y = float.Parse( value ); + break; + // Stencil buffer: + case "stcl": + useStencilBuffer = bool.Parse(value); + break; + case "atwp": + allowStencilWriteThroughProperties = bool.Parse( value ); + break; + case "stva": + stencilValue = byte.Parse(value); + break; + case "stmr": + stencilMaskRead = byte.Parse(value); + break; + case "stmw": + stencilMaskWrite = byte.Parse(value); + break; + case "stcp": + stencilComparison = (DepthTestStencil)int.Parse(value); + break; + case "stps": + stencilPass = (StencilOp)int.Parse(value); + break; + case "stfa": + stencilFail = (StencilOp)int.Parse(value); + break; + case "stfz": + stencilFailZ = (StencilOp)int.Parse(value); + break; + + // Offset + case "ofsf": + offsetFactor = int.Parse(value); + break; + case "ofsu": + offsetUnits = int.Parse(value); + break; + } + + } + + + public string GetGrabTextureName() { + if( perObjectRefraction ) { + return "_GrabTexture"; + } else { + return refractionPassName; + } + } + + + + public override float DrawInner(ref Rect r){ + + + float prevYpos = r.y; + r.y = 0; + + r.y += 20; + r.xMin += 20; // Indent + + BlendModePreset before = blendModePreset; + GUI.enabled = ps.catLighting.renderPath == SFPSC_Lighting.RenderPath.Forward; + blendModePreset = (BlendModePreset)UndoableLabeledEnumPopupNamed( r, "Blend Mode", blendModePreset, strBlendModePreset, "blend mode"); + GUI.enabled = true; + if( blendModePreset != before ) { + ConformBlendsToPreset(); + } + if( blendModePreset == BlendModePreset.Custom ) { + GUI.color = new Color(1f,1f,1f,0.5f); + GUI.Label(r.PadLeft(70).PadTop(-1), "Custom blending. Click select preset", EditorStyles.miniLabel); + GUI.color = Color.white; + } + + r.y += 20; + + //if( blendModePreset != BlendModePreset.Opaque ) { + //if( blendModePreset != BlendModePreset.Custom ) + //GUI.enabled = false; + //EditorGUILayout.BeginHorizontal( GUILayout.Width( maxWidth ) ); + //{ + //Indent(); + + string srcStr = "Source * "; + string dstStr = " + Destination * "; + int srcStrWidth = SF_GUI.WidthOf(srcStr,EditorStyles.miniLabel); + int dstStrWidth = SF_GUI.WidthOf(dstStr,EditorStyles.miniLabel); + int fieldWidth = Mathf.FloorToInt((r.width - srcStrWidth - dstStrWidth)/2); + + Rect rSrcLb = new Rect(r); rSrcLb.width = srcStrWidth; + Rect rSrcField = new Rect(r); rSrcField.x = rSrcLb.xMax; rSrcField.width = fieldWidth; + Rect rDstLb = new Rect(r); rDstLb.x = rSrcField.xMax; rDstLb.width = dstStrWidth; + Rect rDstField = new Rect(rSrcField); rDstField.x = rDstLb.xMax; + + EditorGUI.BeginChangeCheck(); + + GUI.Label( rSrcLb, srcStr, EditorStyles.miniLabel ); + blendSrc = (BlendMode)UndoableEnumPopup(rSrcField, blendSrc, "blend source" ); + GUI.Label( rDstLb, dstStr, EditorStyles.miniLabel ); + blendDst = (BlendMode)UndoableEnumPopup(rDstField, blendDst, "blend destination" ); + + if( EditorGUI.EndChangeCheck() ) { + ConformPresetToBlend(); + } + + //if( blendModePreset != BlendModePreset.Custom ) + //GUI.enabled = true; + + r.y += 20; + //} + + + UndoableColorMask( r, "Color Mask", ref colorMask ); + r.y += 20; + + bool canEditDithering = editor.mainNode.alphaClip.IsConnectedAndEnabled(); + EditorGUI.BeginDisabledGroup( !canEditDithering ); + if( canEditDithering ) + dithering = (Dithering)UndoableLabeledEnumPopupNamed( r, "Dithered alpha clip", dithering, strDithering, "dithered alpha clip" ); + else + UndoableLabeledEnumPopup( r, "Dithered alpha clip", Dithering.Off, "dithered alpha clip" ); + EditorGUI.EndDisabledGroup(); + r.y += 20; + + bool canEditAlphaToCoverage = editor.mainNode.alphaClip.IsConnectedAndEnabled() || editor.mainNode.alpha.IsConnectedAndEnabled(); + EditorGUI.BeginDisabledGroup( !canEditAlphaToCoverage ); + if( canEditAlphaToCoverage ) + alphaToCoverage = UndoableToggle( r, alphaToCoverage, "Alpha to coverage (forward with MSAA only)", "alpha to coverage" ); + else + GUI.Toggle( r, false, "Alpha to coverage (forward with MSAA only)" ); + EditorGUI.EndDisabledGroup(); + r.y += 20; + + + OffsetBlock (ref r); + + + RefractionBlock( ref r ); + + + FogBlock(ref r); + + SortingBlock(ref r); + + + + StencilBlock(ref r); + + r.y += prevYpos; + + return (int)r.yMax; + } + + static string[] rgba = new string[]{"R","G","B","A"}; + + public void UndoableColorMask(Rect r, string label, ref int mask) { + + GUIStyle[] rgbaStyles = new GUIStyle[] { + EditorStyles.miniButtonLeft, + EditorStyles.miniButtonMid, + EditorStyles.miniButtonMid, + EditorStyles.miniButtonRight + }; + + Rect[] rects = r.SplitFromLeft( 65 ); + + GUI.Label( rects[0], label, EditorStyles.miniLabel ); + + + Rect buttonRect = rects[1]; + buttonRect.width = 23;// Mathf.FloorToInt( buttonRect.width / 4 ); + buttonRect.height = 17; + + for( int i = 0; i < 4; i++ ) { + //GUI.color = rgbaCols[i]; + bool bitVal = mask.GetBit( 3 - i ); + bool newBit = GUI.Toggle( buttonRect, bitVal, rgba[i], rgbaStyles[i] ); + if( newBit != bitVal ) { + Undo.RecordObject( this, "edit Color Mask" ); + mask = mask.SetBit( 3 - i, newBit ); + } + buttonRect = buttonRect.MovedRight(); + } + + buttonRect.width *= 4; + buttonRect.x += 6; + GUI.color = Color.gray; + GUI.Label( buttonRect, mask.ToColorMaskString(), EditorStyles.miniLabel ); + GUI.color = Color.white; + + + + + } + + + + + public void SetQueuePreset( Queue in_queue ) { + queuePreset = in_queue; + } + + public void ConformPresetToBlend() { + + + bool matched = false; + matched |= ApplyIfMatch(BlendModePreset.Opaque, BlendMode.One, BlendMode.Zero ); + matched |= ApplyIfMatch(BlendModePreset.Additive, BlendMode.One, BlendMode.One ); + matched |= ApplyIfMatch(BlendModePreset.Screen, BlendMode.OneMinusDstColor, BlendMode.One ); + matched |= ApplyIfMatch(BlendModePreset.Screen, BlendMode.One, BlendMode.OneMinusSrcColor ); + matched |= ApplyIfMatch(BlendModePreset.AlphaBlended, BlendMode.SrcAlpha, BlendMode.OneMinusSrcAlpha ); + matched |= ApplyIfMatch(BlendModePreset.AlphaBlendedPremultiplied, BlendMode.One, BlendMode.OneMinusSrcAlpha ); + matched |= ApplyIfMatch(BlendModePreset.Multiplicative, BlendMode.DstColor, BlendMode.Zero ); + matched |= ApplyIfMatch(BlendModePreset.Multiplicative, BlendMode.Zero, BlendMode.SrcColor ); + + if(!matched){ + blendModePreset = BlendModePreset.Custom; + } + + } + + + public bool ApplyIfMatch(BlendModePreset preset, BlendMode src, BlendMode dst) { + if( blendSrc == src && blendDst == dst ) { + blendModePreset = preset; + UpdateAutoSettings(); + return true; + } + return false; + + } + + public void ConformBlendsToPreset() { + switch( blendModePreset ) { + case BlendModePreset.Opaque: + blendSrc = BlendMode.One; + blendDst = BlendMode.Zero; + break; + case BlendModePreset.Additive: + blendSrc = BlendMode.One; + blendDst = BlendMode.One; + break; + case BlendModePreset.Screen: + blendSrc = BlendMode.One; + blendDst = BlendMode.OneMinusSrcColor; + break; + case BlendModePreset.AlphaBlended: + blendSrc = BlendMode.SrcAlpha; + blendDst = BlendMode.OneMinusSrcAlpha; + break; + case BlendModePreset.AlphaBlendedPremultiplied: + blendSrc = BlendMode.One; + blendDst = BlendMode.OneMinusSrcAlpha; + break; + case BlendModePreset.Multiplicative: + blendSrc = BlendMode.DstColor; + blendDst = BlendMode.Zero; + break; + } + editor.preview.InternalMaterial.renderQueue = -1; + } + + + public string GetStencilContent(){ + + string s = ""; + if( allowStencilWriteThroughProperties ) { + s += "Ref [_Stencil]\n"; + s += "ReadMask [_StencilReadMask]\n"; + s += "WriteMask [_StencilWriteMask]\n"; + s += "Comp [_StencilComp]\n"; + s += "Pass [_StencilOp]\n"; + s += "Fail [_StencilOpFail]\n"; + s += "ZFail [_StencilOpZFail]"; + } else { + s += "Ref " + stencilValue + "\n"; + if( stencilMaskRead != (byte)255 ) + s += "ReadMask " + stencilMaskRead + "\n"; + if( stencilMaskWrite != (byte)255 ) + s += "WriteMask " + stencilMaskWrite + "\n"; + if( stencilComparison != DepthTestStencil.Always ) + s += "Comp " + stencilComparison + "\n"; + if( stencilPass != StencilOp.Keep ) + s += "Pass " + stencilPass + "\n"; + if( stencilFail != StencilOp.Keep ) + s += "Fail " + stencilFail + "\n"; + if( stencilFailZ != StencilOp.Keep ) + s += "ZFail " + stencilFailZ + "\n"; + s = s.Substring( 0, s.Length - 1 ); + } + return s; + } + + public void RefractionBlock( ref Rect r ) { + + + + perObjectRefraction = UndoableToggle( r, perObjectRefraction, "Per-object refraction/scene color (expensive)", "per-object refraction", null ); + r.y += 20; + + ps.StartIgnoreChangeCheck(); + r.xMin += 20; + Rect right = r; + right.xMin += 126; + right.width -= 18; + Rect left = r; + left.width -= right.width; + GUI.enabled = !perObjectRefraction; + GUI.Label(left, "Texture name/group"); + EditorGUI.BeginChangeCheck(); + refractionPassName = UndoableTextField( right, refractionPassName, "refraction pass name", null, null, true ); + if( EditorGUI.EndChangeCheck() ) { + editor.ShaderOutdated = UpToDateState.OutdatedSoft; + SF_Tools.FormatAlphanumeric( ref refractionPassName ); + } + GUI.enabled = true; + r.y += 20; + r.xMin -= 20; + + + + ps.EndIgnoreChangeCheck(); + } + + + public void OffsetBlock(ref Rect r){ + ps.StartIgnoreChangeCheck(); + Rect rOfs = r; + rOfs.xMax -= 4; // Margin + rOfs.width = 80; + GUI.Label(rOfs, "Offset Factor"); + rOfs = rOfs.MovedRight(); + rOfs.width /= 2; + offsetFactor = UndoableIntField(rOfs,offsetFactor,"offset factor"); + rOfs = rOfs.MovedRight(); + rOfs.width *= 2; + GUI.Label(rOfs.PadLeft(4), "Offset Units"); + rOfs = rOfs.MovedRight(); + rOfs.width /= 2; + offsetUnits = UndoableIntField(rOfs,offsetUnits,"offset units"); + r.y += 20; + ps.EndIgnoreChangeCheck(); + } + + + public void StencilBlock(ref Rect r){ + + bool prevUseStencilBuffer = useStencilBuffer; + useStencilBuffer = GUI.Toggle(r, useStencilBuffer, useStencilBuffer ? "Stencil Buffer" : "Stencil Buffer..."); + if( useStencilBuffer != prevUseStencilBuffer ) + UpdateAutoSettings(); + r.y += 20; + if(!useStencilBuffer) + return; + r.xMin += 20; + + allowStencilWriteThroughProperties = UndoableToggle( r, allowStencilWriteThroughProperties, "Expose stencil as properties", "toggle expose stencil as properties" ); + r.y += 20; + + EditorGUI.BeginDisabledGroup( allowStencilWriteThroughProperties ); + + Rect rTmp = r; + rTmp.width = 88; + GUI.Label(rTmp,"Reference Value", EditorStyles.miniLabel); + rTmp = rTmp.MovedRight(); + rTmp.width -= 48; + stencilValue = (byte)UndoableIntField( rTmp.PadRight( 4 ).PadTop( 1 ).PadBottom( 2 ), stencilValue, "reference value" ); + rTmp = rTmp.MovedRight(); + rTmp.width = r.width-128; + stencilComparison = (DepthTestStencil)UndoableLabeledEnumPopupNamed( rTmp.PadRight( 4 ).ClampWidth( 32, 140 ), "Comparison", stencilComparison, strDepthTestStencil, "stencil comparison" ); + r.y += 20; + + StencilBitfield(r, "Read Mask", ref stencilMaskRead); + r.y += 20; + StencilBitfield(r, "Write Mask", ref stencilMaskWrite); + r.y += 23; + stencilPass = (StencilOp)UndoableLabeledEnumPopupNamed( r.PadRight( 4 ), "Pass", stencilPass, strStencilOp, "stencil pass" ); + r.y += 20; + stencilFail = (StencilOp)UndoableLabeledEnumPopupNamed( r.PadRight( 4 ), "Fail", stencilFail, strStencilOp, "stencil fail" ); + r.y += 20; + stencilFailZ = (StencilOp)UndoableLabeledEnumPopupNamed( r.PadRight( 4 ), "Fail Z", stencilFailZ, strStencilOp, "stencil fail Z" ); + r.y += 20; + r.xMin -= 20; + r.y += 20; + + EditorGUI.EndDisabledGroup(); + } + + + + public void StencilBitfield( Rect r, string label, ref byte b ){ + ps.StartIgnoreChangeCheck(); + Rect tmp = r; + tmp.width = 62; + + GUI.Label(tmp,label, SF_Styles.MiniLabelRight); + + tmp = tmp.MovedRight(); + tmp.width = 36; + b = (byte)EditorGUI.IntField(tmp.PadTop(1).PadBottom(2).PadRight(2).PadLeft(2),b); + + Rect bitField = r; + bitField.xMin += 57+36 + 4 + 8; + bitField.xMax -= 4; + + + bitField.width /= 8; // 8 bits + for (int i = 8 - 1; i >= 0; i--) { + + GUIStyle btnStyle; + + if(i==0) + btnStyle = EditorStyles.miniButtonRight; + else if(i==7) + btnStyle = EditorStyles.miniButtonLeft; + else + btnStyle = EditorStyles.miniButtonMid; + + bool bit = ( (1< 0 && !expanded ) { + r = r.MovedRight(); + r.width = SF_Styles.IconErrorSmall.width; + r = r.MovedLeft(); + r.height = SF_Styles.IconErrorSmall.height; + r.x -= 1; + r.y += 1; + + bool hasError = false; + for( int i = 0; i < treeStatus.Errors.Count; i++ ) { + if( treeStatus.Errors[i].isWarning == false ) { + hasError = true; + break; + } + } + + GUI.DrawTexture( r, hasError ? SF_Styles.IconErrorSmall : SF_Styles.IconWarningSmall ); + } + + } + + + public override float DrawInner(ref Rect r){ + + float prevYpos = r.y; + r.y = 0; + + + + + r.xMin += 20; + r.y += 20; + //GUI.DrawTexture(r.ClampSize(0,SF_Styles.IconWarningSmall.width),SF_Styles.IconWarningSmall); + //r.xMin += 20; + //GUI.Label(r, "Experimental features may not work"); + //r.xMin -= 20; + // r.height += 20; + + r.height = 20; + + for( int i = 0; i < treeStatus.Errors.Count; i++ ) { + + bool isNode = treeStatus.Errors[i].node != null; + + Texture2D icon = treeStatus.Errors[i].icon; + + Rect blockRect = r; + blockRect.height = treeStatus.Errors[i].rows * 14f + 6; + + + Rect iconRect = blockRect; + iconRect.width = icon.width; + iconRect.height = icon.height; + //iconRect.x += 1; + //iconRect.y += 1; + + Rect textRect = blockRect; + textRect.xMin += iconRect.width + 3; + + iconRect.center = new Vector2( iconRect.center.x, textRect.center.y ); + + bool hasAction = treeStatus.Errors[i].action != null; + + if( isNode || hasAction ) { + if( GUI.Button( iconRect.Pad( -2 ).PadHorizontal(-3), "" ) ) { + if( hasAction ) { + treeStatus.Errors[i].OnPress(); + break; + } else if( isNode ) { + editor.nodeView.selection.DeselectAll( true ); + treeStatus.Errors[i].node.Select( true ); + } + } + } + + GUI.DrawTexture( iconRect, icon ); + EditorGUI.SelectableLabel( textRect, treeStatus.Errors[i].error, SF_Styles.SmallTextArea ); + + r.y += textRect.height; + } + + + r.y += prevYpos; + + return (int)r.yMax; + } + + + + + } +} \ No newline at end of file diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/SFPSC_Console.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/SFPSC_Console.cs.meta new file mode 100644 index 00000000..96b68382 --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/SFPSC_Console.cs.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 82fffb1e4de9ece4095359142f8821a4 +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/SFPSC_Experimental.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/SFPSC_Experimental.cs new file mode 100644 index 00000000..991a760b --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/SFPSC_Experimental.cs @@ -0,0 +1,79 @@ +using UnityEngine; +using UnityEditor; +using System.Collections; + +namespace ShaderForge { + + + [System.Serializable] + public class SFPSC_Experimental : SFPS_Category { + + + public bool force2point0 = false; + public bool forceNoShadowPass = false; + public bool forceNoFallback = false; + public bool forceSkipModelProjection = false; + + + public override string Serialize(){ + string s = ""; + s += Serialize( "f2p0", force2point0.ToString() ); + s += Serialize( "fnsp", forceNoShadowPass.ToString() ); + s += Serialize( "fnfb", forceNoFallback.ToString() ); + s += Serialize( "fsmp", forceSkipModelProjection.ToString() ); + return s; + } + + public override void Deserialize(string key, string value){ + + switch( key ) { + case "f2p0": + force2point0 = bool.Parse( value ); + break; + case "fnsp": + forceNoShadowPass = bool.Parse( value ); + break; + case "fnfb": + forceNoFallback = bool.Parse( value ); + break; + case "fsmp": + forceSkipModelProjection = bool.Parse( value ); + break; + } + + } + + + + public override float DrawInner(ref Rect r){ + + float prevYpos = r.y; + r.y = 0; + + + r.xMin += 20; + r.y += 20; + GUI.DrawTexture(r.ClampSize(0,SF_Styles.IconWarningSmall.width),SF_Styles.IconWarningSmall); + r.xMin += 20; + GUI.Label(r, "Experimental features may not work"); + r.xMin -= 20; + r.y += 20; + force2point0 = UndoableToggle( r, force2point0, "Force Shader Model 2.0", "shader model 2.0 forcing", null ); + r.y += 20; + forceNoShadowPass = UndoableToggle( r, forceNoShadowPass, "Force no custom shadow pass", "force no custom shadow pass", null ); + r.y += 20; + forceNoFallback = UndoableToggle( r, forceNoFallback, "Force no fallback", "force no fallback", null ); + r.y += 20; + forceSkipModelProjection = UndoableToggle( r, forceSkipModelProjection, "Force skip model projection", "force skip model projection", null ); + r.y += 20; + + r.y += prevYpos; + + return (int)r.yMax; + } + + + + + } +} \ No newline at end of file diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/SFPSC_Experimental.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/SFPSC_Experimental.cs.meta new file mode 100644 index 00000000..9f5d378e --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/SFPSC_Experimental.cs.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: bb31a79ea298f4f939ce86ad39dc270a +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/SFPSC_Geometry.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/SFPSC_Geometry.cs new file mode 100644 index 00000000..523f5038 --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/SFPSC_Geometry.cs @@ -0,0 +1,163 @@ +using UnityEngine; +using UnityEditor; +using System.Collections; + +namespace ShaderForge { + + + [System.Serializable] + public class SFPSC_Geometry : SFPS_Category { + + public enum VertexPositioning { LocalSpace, ClipSpace, Billboard }; + public string[] strVertexPositioning = new string[] { "Local space", "Clip space", "Billboard" }; + public enum NormalQuality { Interpolated, Normalized }; + public string[] strNormalQuality = new string[] { "Interpolated", "Normalized" }; + public enum NormalSpace { Tangent, Object, World }; + public string[] strNormalSpace = new string[] { "Tangent", "Object", "World" }; + public enum TessellationMode { Regular, EdgeLength/*, EdgeLengthCulled*/}; + public string[] tessModeStr = new string[] { "Regular", "Edge length based"/*, "Edge length based with frustrum culling"*/}; + public enum VertexOffsetMode { Relative, Absolute } + public string[] vertexOffsetModeStr = new string[] { "Relative", "Absolute" }; + public enum OutlineMode { FromOrigin, VertexNormals, VertexColors }; + public string[] outlineModeStr = new string[] { "From origin", "Vertex normals", "Vertex colors" }; + public enum CullMode { BackfaceCulling, FrontfaceCulling, DoubleSided }; + public static string[] strCullMode = new string[] { "Back", "Front", "Off" }; + + public VertexPositioning vertexPositioning = VertexPositioning.LocalSpace; + public NormalQuality normalQuality = NormalQuality.Normalized; + public NormalSpace normalSpace = NormalSpace.Tangent; + public VertexOffsetMode vertexOffsetMode = VertexOffsetMode.Relative; + public bool showPixelSnap = false; + public bool highQualityScreenCoords = true; + public TessellationMode tessellationMode = TessellationMode.Regular; + public OutlineMode outlineMode = OutlineMode.VertexNormals; + public CullMode cullMode = CullMode.BackfaceCulling; + + + + public override string Serialize(){ + string s = ""; + s += Serialize( "vtps", ( (int)vertexPositioning ).ToString() ); + s += Serialize( "hqsc", highQualityScreenCoords.ToString()); + s += Serialize( "nrmq", ( (int)normalQuality ).ToString() ); + s += Serialize( "nrsp", ( (int)normalSpace ).ToString() ); + s += Serialize( "vomd", ( (int)vertexOffsetMode ).ToString() ); + s += Serialize( "spxs", showPixelSnap.ToString()); + s += Serialize( "tesm", ((int)tessellationMode).ToString()); + s += Serialize( "olmd", ( (int)outlineMode ).ToString() ); + s += Serialize( "culm", ( (int)cullMode ).ToString() ); + return s; + } + + public override void Deserialize(string key, string value){ + + switch( key ) { + case "vtps": + vertexPositioning = (VertexPositioning)int.Parse( value ); + break; + case "nrmq": + normalQuality = (NormalQuality)int.Parse( value ); + break; + case "nrsp": + normalSpace = (NormalSpace)int.Parse( value ); + break; + case "vomd": + vertexOffsetMode = (VertexOffsetMode)int.Parse( value ); + break; + case "hqsc": + highQualityScreenCoords = bool.Parse( value ); + break; + case "spxs": + showPixelSnap = bool.Parse( value ); + break; + case "tesm": + tessellationMode = (TessellationMode)int.Parse( value ); + break; + case "olmd": + outlineMode = (OutlineMode)int.Parse( value ); + break; + case "culm": + cullMode = (CullMode)int.Parse( value ); + break; + } + + } + + + public override float DrawInner(ref Rect r){ + + float prevYpos = r.y; + r.y = 0; + + + r.xMin += 20; + r.y += 20; + + + cullMode = (CullMode)UndoableLabeledEnumPopup( r, "Face Culling", cullMode, "face culling" ); + r.y += 20; + + GUI.enabled = ps.catLighting.renderPath == SFPSC_Lighting.RenderPath.Forward; + normalQuality = (NormalQuality)UndoableContentScaledToolbar( r, "Normal Quality", (int)normalQuality, strNormalQuality, "normal quality" ); + GUI.enabled = true; + r.y += 20; + + vertexPositioning = (VertexPositioning)UndoableContentScaledToolbar( r, "Vertex Positioning", (int)vertexPositioning, strVertexPositioning, "vertex positioning" ); + r.y += 20; + + GUI.enabled = ps.mOut.normal.IsConnectedEnabledAndAvailable(); + normalSpace = (NormalSpace)UndoableContentScaledToolbar( r, "Normal Space", (int)normalSpace, strNormalSpace, "normal space" ); + GUI.enabled = true; + r.y += 20; + + vertexOffsetMode = (VertexOffsetMode)UndoableContentScaledToolbar( r, "Vertex offset mode", (int)vertexOffsetMode, vertexOffsetModeStr, "vertex offset mode" ); + r.y += 20; + + GUI.enabled = ps.HasTessellation(); + tessellationMode = (TessellationMode)UndoableLabeledEnumPopupNamed( r, "Tessellation Mode", tessellationMode, tessModeStr, "tessellation mode" ); + GUI.enabled = true; + r.y += 20; + + GUI.enabled = ps.HasOutline(); + outlineMode = (OutlineMode)UndoableLabeledEnumPopupNamed( r, "Outline Extrude Direction", outlineMode, outlineModeStr, "outline mode" ); + GUI.enabled = true; + r.y += 20; + + highQualityScreenCoords = UndoableToggle( r, highQualityScreenCoords, "Per-pixel screen coordinates", "per-pixel screen coordinates", null ); + r.y += 20; + + showPixelSnap = UndoableToggle( r, showPixelSnap, "Show 2D sprite pixel snap option in material", "show pixel snap", null ); + r.y += 20; + + r.y += prevYpos; + + return (int)r.yMax; + } + + + + // TODO: Double sided support + public string GetNormalSign() { + if( cullMode == CullMode.BackfaceCulling ) + return ""; + if( cullMode == CullMode.FrontfaceCulling ) + return "-"; + //if( cullMode == CullMode.DoubleSided ) + return ""; + } + + public bool UseCulling() { + return ( cullMode != CullMode.BackfaceCulling ); + } + public string GetCullString() { + return "Cull " + strCullMode[(int)cullMode]; + } + public bool IsDoubleSided() { + return ( cullMode == CullMode.DoubleSided ); + } + + + + + } +} \ No newline at end of file diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/SFPSC_Geometry.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/SFPSC_Geometry.cs.meta new file mode 100644 index 00000000..f50aa7e1 --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/SFPSC_Geometry.cs.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: d931c87bc14d34c86a08c0428175c5a6 +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/SFPSC_Lighting.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/SFPSC_Lighting.cs new file mode 100644 index 00000000..899e7ad7 --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/SFPSC_Lighting.cs @@ -0,0 +1,365 @@ +using UnityEngine; +using UnityEditor; +using System.Collections; + +namespace ShaderForge { + + + [System.Serializable] + public class SFPSC_Lighting : SFPS_Category { + + public RenderPath renderPath = RenderPath.Forward; + public LightPrecision lightPrecision = LightPrecision.Fragment; + public LightMode lightMode = LightMode.BlinnPhong; + public SpecularMode specularMode = SpecularMode.Metallic; + public TransparencyMode transparencyMode = TransparencyMode.Fade; + public GlossRoughMode glossRoughMode = GlossRoughMode.Gloss; + public LightCount lightCount = LightCount.Multi; + + public bool useAmbient = true; + public bool maskedSpec = true; + public bool geometricAntiAliasing = false; + //public bool shadowCast = true; + //public bool shadowReceive = true; + public bool bakedLight = false; + public bool highQualityLightProbes = false; + public bool reflectprobed = false; + public bool energyConserving = false; + public bool remapGlossExponentially = true; + public bool includeMetaPass = true; + + public enum RenderPath { Forward, Deferred }; + public string[] strRenderPath = new string[] { "Forward", "Deferred" }; + + + public enum LightPrecision { Vertex, Fragment }; + public string[] strLightPrecision = new string[] { "Per-Vertex", "Per-Fragment" }; + public enum LightMode { Unlit, BlinnPhong, Phong, PBL }; + public string[] strLightMode = new string[] { "Unlit/Custom", "Blinn-Phong", "Phong", "PBL" }; + public enum SpecularMode { Specular, Metallic }; + public string[] strSpecularMode = new string[] { "Specular", "Metallic" }; + public enum TransparencyMode { Fade, Reflective }; + public string[] strTransparencyMode = new string[] { "Fade", "Reflective" }; + public enum GlossRoughMode { Gloss, Roughness }; + public string[] strGlossRoughMode = new string[] { "Gloss", "Roughness" }; + public enum LightCount { Single, Multi }; + public string[] strLightCount = new string[] { "Single Directional", "Multi-light"}; + + + + public override string Serialize(){ + string s = ""; + s += Serialize( "lico", ( (int)lightCount ).ToString() ); + s += Serialize( "lgpr", ( (int)lightPrecision ).ToString() ); + s += Serialize( "limd", ( (int)lightMode ).ToString() ); + s += Serialize( "spmd", ( (int)specularMode ).ToString() ); + s += Serialize( "trmd", ( (int)transparencyMode ).ToString() ); + s += Serialize( "grmd", ( (int)glossRoughMode ).ToString() ); + s += Serialize( "uamb", useAmbient.ToString() ); + s += Serialize( "mssp", maskedSpec.ToString() ); + s += Serialize( "bkdf", bakedLight.ToString() ); + s += Serialize( "hqlp", highQualityLightProbes.ToString() ); + s += Serialize( "rprd", reflectprobed.ToString() ); + s += Serialize( "enco", energyConserving.ToString()); + s += Serialize( "rmgx", remapGlossExponentially.ToString()); + s += Serialize( "imps", includeMetaPass.ToString() ); + s += Serialize( "rpth", ((int)renderPath).ToString() ); + + //s += Serialize( "shdc", shadowCast.ToString() ); + //s += Serialize( "shdr", shadowReceive.ToString() ); + return s; + } + + public override void Deserialize(string key, string value){ + + + switch( key ) { + case "lgpr": + lightPrecision = (LightPrecision)int.Parse( value ); + break; + case "limd": + lightMode = (LightMode)int.Parse( value ); + break; + case "uamb": + useAmbient = bool.Parse( value ); + break; + case "mssp": + maskedSpec = bool.Parse( value ); + break; + case "bkdf": + bakedLight = bool.Parse( value ); + break; + case "spmd": + specularMode = (SpecularMode)int.Parse( value ); + break; + case "trmd": + transparencyMode = (TransparencyMode)int.Parse( value ); + break; + case "grmd": + glossRoughMode = (GlossRoughMode)int.Parse( value ); + break; + + /*case "shdc": + shadowCast = bool.Parse( value ); + break; + case "shdr": + shadowReceive = bool.Parse( value ); + break;*/ + case "lico": + lightCount = (LightCount)int.Parse( value ); + break; + case "lmpd": + bakedLight |= bool.Parse( value ); + break; + case "lprd": + bakedLight |= bool.Parse( value ); + break; + case "hqlp": + highQualityLightProbes = bool.Parse( value ); + break; + case "rprd": + reflectprobed = bool.Parse( value ); + break; + case "enco": + energyConserving = bool.Parse( value ); + break; + + + case "rmgx": + remapGlossExponentially = bool.Parse( value ); + break; + case "imps": + includeMetaPass = bool.Parse( value ); + break; + case "rpth": + renderPath = (RenderPath)int.Parse( value ); + break; + } + + } + + + + public override float DrawInner(ref Rect r){ + + float prevYpos = r.y; + r.y = 0; + + + r.xMin += 20; + r.y += 20; + + renderPath = (RenderPath)UndoableContentScaledToolbar( r, "Render Path", (int)renderPath, strRenderPath, "render path" ); + + + if(renderPath == RenderPath.Deferred){ + if(lightMode != LightMode.PBL) + lightMode = LightMode.PBL; + if(ps.catBlending.autoSort == false){ + ps.catBlending.autoSort = true; + } + if(ps.catBlending.blendModePreset != BlendModePreset.Opaque){ + ps.catBlending.blendModePreset = BlendModePreset.Opaque; + ps.catBlending.ConformBlendsToPreset(); + } + } + r.y += 20; + if(renderPath == RenderPath.Deferred){ + GUI.enabled = false; + UndoableContentScaledToolbar( r, "Light Mode", (int)LightMode.PBL, strLightMode, "light mode" ); + GUI.enabled = true; + } else { + lightMode = (LightMode)UndoableContentScaledToolbar( r, "Light Mode", (int)lightMode, strLightMode, "light mode" ); + } + r.y += 20; + + if( IsPBL() ) { + specularMode = (SpecularMode)UndoableContentScaledToolbar( r, "Specular Mode", (int)specularMode, strSpecularMode, "specular mode" ); + r.y += 20; + } + + GUI.enabled = ps.HasSpecular(); + glossRoughMode = (GlossRoughMode)UndoableContentScaledToolbar( r, "Gloss Mode", (int)glossRoughMode, strGlossRoughMode, "gloss mode" ); + r.y += 20; + GUI.enabled = true; + + GUI.enabled = ps.HasAlpha(); // Has Opacity connected + transparencyMode = (TransparencyMode)UndoableContentScaledToolbar( r, "Transparency Mode", (int)transparencyMode, strTransparencyMode, "transparency mode" ); + r.y += 20; + GUI.enabled = true; + + + + if( ps.catLighting.IsPBL() == false ) { + UndoableConditionalToggle( r, ref remapGlossExponentially, + usableIf: ps.HasGloss() && renderPath != RenderPath.Deferred, + disabledDisplayValue: renderPath == RenderPath.Deferred ? true : false, + label: "Remap gloss from [0-1] to " + ( ( renderPath == RenderPath.Deferred ) ? "[0-128]" : "[1-2048]" ), + undoSuffix: "gloss remap" + ); + r.y += 20; + } + + + + if( lightMode == LightMode.Unlit || lightMode == LightMode.PBL ) + GUI.enabled = false; + { + + //bool b = energyConserving; + if( lightMode == LightMode.PBL ) + GUI.Toggle( r, true, "Energy Conserving" ); // Dummy display of a checked energy conserve + else + energyConserving = UndoableToggle( r, energyConserving, "Energy Conserving", "energy conservation", null ); + //energyConserving = GUI.Toggle( r, energyConserving, "Energy Conserving" ); + + r.y += 20; + GUI.enabled = true; + } + + + GUI.enabled = renderPath == RenderPath.Forward; + lightCount = (LightCount)UndoableContentScaledToolbar(r, "Light Count", (int)lightCount, strLightCount, "light count" ); + GUI.enabled = true; + r.y += 20; + + + //lightPrecision = (LightPrecision)ContentScaledToolbar(r, "Light Quality", (int)lightPrecision, strLightPrecision ); // TODO: Too unstable for release + //r.y += 20; + + + UndoableConditionalToggle(r, ref bakedLight, + usableIf: ps.HasDiffuse() && lightMode != LightMode.Unlit, + disabledDisplayValue: false, + label: "Lightmap & light probes", + undoSuffix: "lightmap & light probes" + ); + r.y += 20; + + + bool wantsMetaPass = ps.catLighting.bakedLight && ( ps.HasDiffuse() || ps.HasEmissive() ); + UndoableConditionalToggle( r, ref includeMetaPass, + usableIf: wantsMetaPass, + disabledDisplayValue: false, + label: "Write meta pass (light bounce coloring)", + undoSuffix: "write meta pass" + ); + r.y += 20; + + //includeMetaPass = UndoableToggle( r, includeMetaPass, "Write meta pass (light bounce coloring)", "write meta pass", null ); + //r.y += 20; + + highQualityLightProbes = UndoableToggle( r, highQualityLightProbes, "Per-pixel light probe sampling", "per-pixel light probe sampling", null ); + r.y += 20; + + + + UndoableConditionalToggle( r, ref reflectprobed, + usableIf: ps.HasSpecular() && lightMode != LightMode.Unlit, + disabledDisplayValue: false, + label: "Reflection probe support", + undoSuffix: "reflection probe support" + ); + r.y += 20; + + + + + /*shadowCast = GUI.Toggle( r, shadowCast, "Cast shadows" ); + r.y += 20; + shadowReceive = GUI.Toggle( r, shadowReceive, "Receive shadows" ); + r.y += 20;*/ + + + + + //GUI.enabled = IsLit(); + /* + UndoableConditionalToggle( r, ref geometricAntiAliasing, + usableIf: ps.HasSpecular() && ps.catLighting.IsPBL(), + disabledDisplayValue: false, + label: "Geometric specular anti-aliasing", + undoSuffix: "geometric specular anti-aliasing" + ); + r.y += 20; + */ + + UndoableConditionalToggle(r, ref useAmbient, + usableIf: !bakedLight && ps.catLighting.IsLit(), + disabledDisplayValue: bakedLight, + label: "Receive Ambient Light", + undoSuffix: "receive ambient light" + ); + r.y += 20; + + /* + if(lightprobed){ + GUI.enabled = false; + GUI.Toggle( r, true, "Receive Ambient Light" ); + GUI.enabled = true; + }else{ + useAmbient = GUI.Toggle( r, useAmbient, "Receive Ambient Light" ); + }*/ + + + //r.y += 20; + + /* DISABLED DUE TO CAUSING TOO MANY ARTIFACTS + if(ps.catLighting.HasSpecular() && renderPath == RenderPath.Forward){ + maskedSpec = UndoableToggle( r, maskedSpec, "Mask directional light specular by shadows", "directional light specular shadow masking", null ); + } else { + GUI.enabled = false; + GUI.Toggle( r, false, "Mask directional light specular by shadows" ); + GUI.enabled = true; + } + r.y += 20;*/ + + r.y += prevYpos; + + return (int)r.yMax; + } + + + + + + + + public bool UseMultipleLights() { + return lightCount == LightCount.Multi; + } + + public bool IsVertexLit() { + return ( IsLit() && ( lightPrecision == LightPrecision.Vertex ) ); + } + + public bool IsFragmentLit() { + return ( IsLit() && ( lightPrecision == LightPrecision.Fragment ) ); + } + + public bool IsLit() { + return ( lightMode != LightMode.Unlit && ( ps.HasDiffuse() || HasSpecular()) ); + } + + public bool IsEnergyConserving() { + return IsLit() && (energyConserving || lightMode == LightMode.PBL); + } + + public bool IsPBL() { + return lightMode == LightMode.PBL; + } + + public bool HasSpecular() { + return ( lightMode == LightMode.BlinnPhong || lightMode == LightMode.Phong || lightMode == LightMode.PBL ) && ( ps.mOut.specular.IsConnectedAndEnabled() ); + } + + + + + + + + + + } +} \ No newline at end of file diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/SFPSC_Lighting.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/SFPSC_Lighting.cs.meta new file mode 100644 index 00000000..d812b109 --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/SFPSC_Lighting.cs.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 8ef77982e74294fc4b12878b1651f3d9 +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/SFPSC_Meta.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/SFPSC_Meta.cs new file mode 100644 index 00000000..5a4fe813 --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/SFPSC_Meta.cs @@ -0,0 +1,340 @@ +using UnityEngine; +using UnityEditor; +using System.Collections; +using System.Collections.Generic; + +namespace ShaderForge { + + + [System.Serializable] + public class SFPSC_Meta : SFPS_Category { + + public enum Inspector3DPreviewType { Sphere, Plane, Skybox }; + public string[] strInspector3DPreviewType = new string[] { "3D object", "2D sprite", "Sky"}; + public enum BatchingMode { Enabled, Disabled, DisableDuringLODFade }; + public string[] strBatchingMode = new string[] { "Enabled", "Disabled", "Disabled during LOD fade" }; + public Inspector3DPreviewType previewType = Inspector3DPreviewType.Sphere; + + public BatchingMode batchingMode = BatchingMode.Enabled; + public bool canUseSpriteAtlas = false; + public bool[] usedRenderers; // TODO: Serialization? + public string fallback = ""; + public int LOD = 0; // TODO: Serialization? + + public List cgIncludes = new List(); + + /* + d3d9 = 0, // - Direct3D 9 + d3d11 = 1, // - Direct3D 11 + glcore = 2, // - OpenGL Core + gles = 3, // - OpenGL ES 2.0 + gles3 = 4, // - OpenGL ES 3.0 + metal = 5, // - iOS Metal + d3d11_9x = 6, // - Direct3D 11 windows RT + xboxone = 7, // - Xbox One + ps4 = 8, // - PlayStation 4 + psp2 = 10 // - PlayStation Vita + n3ds = 11 // - Nintendo 3DS + wiiu = 12, // - Nintendo Wii U + */ + + public override SFPS_Category PostInitialize (){ + usedRenderers = new bool[12]{ // TODO: Load from project settings + true, // - Direct3D 9 + true, // - Direct3D 11 + true, // - OpenGL Core + true, // - OpenGL ES 2.0 + false, // - OpenGL ES 3.0 + false, // - iOS Metal + false, // - Direct3D 11 windows RT + false, // - Xbox One + false, // - PlayStation 4 + false, // - PlayStation Vita + false, // - Nintendo 3DS + false // - Wii U + }; + return this; + } + + + char[] splitChars = new char[] { '|' }; + string SerializeCgIncludes() { + string serialized = ""; + for( int i = 0; i < cgIncludes.Count; i++ ) { + serialized += cgIncludes[i]; + if( i < cgIncludes.Count - 1 ) + serialized += splitChars[0]; + } + string encoded = SF_Tools.StringToBase64String( serialized ); + + return encoded; + } + + void DeserializeCgIncludes( string serialized ) { + string decoded = SF_Tools.Base64StringToString( serialized ); + cgIncludes = new List( decoded.Split( splitChars ) ); + + // Remove empty entries + for( int i = cgIncludes.Count - 1; i >= 0; i-- ) + if( cgIncludes[i] == string.Empty ) + cgIncludes.RemoveAt( i ); + } + + public override string Serialize(){ + string s = ""; + s += Serialize( "flbk", fallback ); + s += Serialize( "iptp", ((int)previewType).ToString() ); + s += Serialize( "cusa", canUseSpriteAtlas.ToString() ); + s += Serialize( "bamd", ( (int)batchingMode ).ToString() ); + s += Serialize( "cgin", SerializeCgIncludes() ); + return s; + } + + public override void Deserialize(string key, string value){ + + switch( key ) { + case "flbk": + fallback = value; + break; + case "iptp": + previewType = (Inspector3DPreviewType)int.Parse(value); + break; + case "cusa": + canUseSpriteAtlas = bool.Parse(value); + break; + case "bamd": + batchingMode = (BatchingMode)int.Parse( value ); + break; + case "cgin": + DeserializeCgIncludes( value ); + break; + } + + } + + + public override float DrawInner(ref Rect r){ + + float prevYpos = r.y; + r.y = 0; + + + r.xMin += 20; + r.y += 20; + + + EditorGUI.LabelField( r, "Path", EditorStyles.miniLabel ); + r.xMin += 30; + r.height = 17; + r.xMax -= 3; + ps.StartIgnoreChangeCheck(); + GUI.SetNextControlName( "shdrpath" ); + string prev = editor.currentShaderPath; + //editor.currentShaderPath = GUI.TextField( r, editor.currentShaderPath,EditorStyles.textField ); + editor.currentShaderPath = UndoableTextField( r, editor.currentShaderPath, "shader path", null, editor, showContent:false ); + if( editor.currentShaderPath != prev ) { + SF_Tools.FormatShaderPath( ref editor.currentShaderPath ); + } + if( Event.current.keyCode == KeyCode.Return && GUI.GetNameOfFocusedControl() == "shdrpath" ) { + editor.Defocus(); + editor.OnShaderModified( NodeUpdateType.Hard ); + } + ps.EndIgnoreChangeCheck(); + r.xMin -= 30; + r.height = 20; + r.xMax += 3; + r.y += 20; + + + + + EditorGUI.LabelField( r, "Fallback", EditorStyles.miniLabel ); + Rect rStart = new Rect( r ); + r.xMin += 50; + r.height = 17; + r.xMax -= 47; + ps.StartIgnoreChangeCheck(); + GUI.SetNextControlName( "shdrpath" ); + prev = fallback; + fallback = UndoableTextField( r, fallback, "shader fallback", null, null, showContent:false ); + r.x += r.width + 2; + r.width = 42; + ShaderPicker( r, "Pick"); + if( fallback != prev ) { + SF_Tools.FormatShaderPath( ref fallback ); + } + if( Event.current.keyCode == KeyCode.Return && GUI.GetNameOfFocusedControl() == "shdrpath" ) { + editor.Defocus(); + editor.OnShaderModified( NodeUpdateType.Hard ); + } + ps.EndIgnoreChangeCheck(); + r = rStart; + r.y += r.height; + + + EditorGUI.LabelField( r, "LOD", EditorStyles.miniLabel ); + r.xMin += 30; + r.height = 17; + r.xMax -= 3; + LOD = UndoableIntField( r, LOD, "LOD"); + r.xMin -= 30; + r.height = 20; + r.xMax += 3; + r.y += 20; + + + canUseSpriteAtlas = UndoableToggle( r, canUseSpriteAtlas, "Allow using atlased sprites", "allow using atlased sprites", null ); + r.y += 20; + + batchingMode = (BatchingMode)UndoableLabeledEnumPopupNamed( r, "Draw call batching", batchingMode, strBatchingMode, "draw call batching" ); + r.y += 20; + + previewType = (Inspector3DPreviewType)UndoableLabeledEnumPopupNamed( r, "Inspector preview mode", previewType, strInspector3DPreviewType, "inspector preview mode" ); + r.y += 20; + + r.y += 10; + + + if( cgIncludes.Count == 0 ) { + Rect rBtn = r; + rBtn.height -= 4; + rBtn.width = 100; + if( GUI.Button( rBtn, "Add CG Include", EditorStyles.miniButton ) ) { + Undo.RecordObject( this, "add CG include" ); + cgIncludes.Add( "" ); + } + //r.y += 20; + } else { + EditorGUI.LabelField( r, "CG Includes:" ); + r.y += 20; + + + int removeTarget = -1; + + for( int i = 0; i < cgIncludes.Count; i++ ) { + + Rect smallRect = r; + smallRect.width = 20; + smallRect.height -= 2; + + if( GUI.Button( smallRect, "-" ) ) { + removeTarget = i; + } + + r.xMin += 22; + + Rect textFieldRect = r; + textFieldRect.height -= 2; + textFieldRect.width -= 3; + cgIncludes[i] = UndoableTextField( textFieldRect, cgIncludes[i], "cg include", null ); + textFieldRect.x += 1; + GUI.color = new Color( 1f, 1f, 1f, 0.3f ); + GUI.Label( textFieldRect, "" + cgIncludes[i] + ".cginc", SF_Styles.RichLabel ); + GUI.color = Color.white; + r.y += 20; + + r.xMin -= 22; + } + + if( removeTarget != -1 ) { + Undo.RecordObject( this, "remove CG include" ); + cgIncludes.RemoveAt( removeTarget ); + } + + Rect buttonRect = r; + buttonRect.width = 20; + buttonRect.height -= 2; + if( GUI.Button( buttonRect, "+" ) ) { + Undo.RecordObject( this, "add CG include" ); + cgIncludes.Add( "" ); + } + } + + + + r.y += 40; + + + + EditorGUI.LabelField( r, "Target renderers:" ); + r.xMin += 20; + r.y += 20; + r.height = 17; + float pWidth = r.width; + + + bool onlyDX11GlCore = ps.mOut.tessellation.IsConnectedAndEnabled(); + + + for(int i=0;i propertyList = editor.nodeView.treeStatus.propertyList; + + //GUI.Label( r.MovedUp(), "propertyList.Count = " + propertyList.Count ); + + int propCount = propertyList.Count; + + bool multiple = propCount > 1; + + + float prevYpos = r.y; + r.y = 0; + + + if( propCount == 0 ) { + r.y += 16; + GUI.enabled = false; + GUI.Label( r, "No properties in this shader yet" ); + GUI.enabled = true; + r.y -= 16; + } + + + r.y += 23; + r.xMin += 20; // Indent + r.xMax -= 3; + + + + r.height = propertyHeight; + + + + + // On drop... + if( draggingProperty != null && SF_GUI.ReleasedRawLMB()) { + + + int moveDist = Mathf.RoundToInt( ( Event.current.mousePosition.y - startMouseY ) / propertyHeight ); + + // Execute reordering! + if( moveDist != 0 ) { // See if it actually moved to another slot + int newIndex = Mathf.Clamp( dragStartIndex + moveDist, 0, propCount - 1 ); + Undo.RecordObject(editor.nodeView.treeStatus,"property reorder"); + editor.nodeView.treeStatus.propertyList.RemoveAt( dragStartIndex ); + //if( newIndex > dragStartIndex ) + // newIndex--; + editor.nodeView.treeStatus.propertyList.Insert( newIndex, draggingProperty ); + } + + draggingProperty = null; + + + } + + float yStart = r.y; + + + int i = 0; + + + for(int j=0;j dragStartIndex) { + r.y -= propertyHeight - SF_Tools.Smoother( Mathf.Clamp( r.y - DragRectPosY, 0, propertyHeight ) / propertyHeight ) * propertyHeight; + } + } + + + + + + GUI.Box( r, string.Empty, draggingThis ? SF_Styles.HighlightStyle : SF_Styles.NodeStyle ); + bool mouseOver = r.Contains( Event.current.mousePosition ); + + + + + + // We're now in the property box + // We need: Grabber, Text field, Internal label + + + + bool imagePreview = (prop.property is SFP_Tex2d || prop.property is SFP_Cubemap); + bool colorInput = ( prop.property is SFP_Color ); + bool checkboxInput = (prop.property is SFP_ToggleProperty || prop.property is SFP_SwitchProperty); + + + // GRABBER + Rect gRect = SF_Tools.GetExpanded( r, -6); + gRect.width = gRect.height/2f; + + gRect.yMin += 8; + + Rect gRectCoords = new Rect( gRect ); + + gRectCoords.x = 0; + gRectCoords.y = 0; + gRectCoords.width /= SF_GUI.Handle_drag.width; + gRectCoords.height /= SF_GUI.Handle_drag.height; + if(multiple) + GUI.DrawTextureWithTexCoords( gRect, SF_GUI.Handle_drag, gRectCoords ); + gRect.yMin -= 8; + /* + if( propCount > 1 ) { + if( gRect.Contains( Event.current.mousePosition ) && SF_GUI.PressedLMB() && !dragging ) { + dragStartOffsetY = r.y - Event.current.mousePosition.y; + draggingProperty = prop; + dragStartIndex = i; + startMouseY = Event.current.mousePosition.y; + } + SF_GUI.AssignCursor( gRect,MouseCursor.Pan); + GUI.DrawTextureWithTexCoords(gRect, SF_GUI.Handle_drag, gRectCoords ); + } + */ + + + + + // Property type name + Color c = GUI.color; + c.a = 0.5f; + GUI.color = c; + Rect propTypeNameRect = new Rect( gRect ); + //propTypeNameRect.x += propTypeNameRect.width + 8; + propTypeNameRect.y -= 5; + if( imagePreview || colorInput || checkboxInput ) + propTypeNameRect.width = r.width - r.height - 38; + else + propTypeNameRect.width = r.width - 48; + propTypeNameRect.height = 16; + //if( prop.property != null ) + GUI.Label( propTypeNameRect, prop.property.nameType, EditorStyles.miniLabel ); + propTypeNameRect.x += gRect.width + 8; + c.a = 1f; + GUI.color = c; + //else + //return (int)r.yMax; + + + // INTERNAL NAME + + if( mouseOver ) { + c.a = 0.5f; + GUI.color = c; + Rect intRect = new Rect( propTypeNameRect ); + intRect.xMin += intRect.width - SF_GUI.WidthOf( prop.property.nameInternal, EditorStyles.label ); + //SF_GUI.AssignCursor( intRect, MouseCursor.Text ); + GUI.Label( intRect, prop.property.nameInternal, EditorStyles.label ); + c.a = 1f; + GUI.color = c; + } + + + + // DISPLAY NAME + Rect dispNameRect = new Rect( propTypeNameRect ); + dispNameRect.y += 18; + //dispNameRect.x += dispNameRect.width + 4; + //dispNameRect.height = 16; + //dispNameRect.y += 10; + //dispNameRect.width = ( r.width - dispNameRect.width - texRect.width - 20 ) * 0.5f; + + ps.StartIgnoreChangeCheck(); + string bef = prop.property.nameDisplay; + SF_GUI.AssignCursor( dispNameRect, MouseCursor.Text ); + //if( mouseOver ) + UndoableEnterableNodeTextField(prop.property.node, dispNameRect, ref prop.property.nameDisplay, "change property name", update:false, extra:prop.property); + //else + //GUI.Label( dispNameRect, prop.property.nameDisplay, EditorStyles.boldLabel ); + if( prop.property.nameDisplay != bef ) { // Changed + prop.property.UpdateInternalName(); + } + ps.EndIgnoreChangeCheck(); + + + + + + + // Texture preview + Rect texRect = new Rect( 0, 0, 0, 0 ); + c = GUI.color; + if( imagePreview ) { + texRect = SF_Tools.GetExpanded(new Rect( r ), -4); + texRect.xMin += texRect.width - texRect.height; + //texRect.x += gRect.width + 4; + //texRect.width = texRect.height; + GUI.Box( SF_Tools.GetExpanded( texRect, 1f ), string.Empty, SF_Styles.NodeStyle ); + GUI.color = Color.white; + GUI.DrawTexture( texRect, prop.texture.texture ); + GUI.color = c; + } + + + if( prop.property is SFP_Slider ) { + + SFN_Slider slider = ( prop as SFN_Slider ); + + ps.StartIgnoreChangeCheck(); + Rect sR = new Rect( dispNameRect ); + sR.y += sR.height+5; + sR.width = 28; + GUI.Label( sR, "Min" ); + //sR.x += sR.width; + sR = sR.MovedRight(); + prop.UndoableEnterableFloatField(sR, ref slider.min, "min value",null); + + + sR = sR.MovedRight(); + + sR.width = r.width - 164; + + float beforeSlider = slider.current; + + string sliderName = "slider" + slider.id; + GUI.SetNextControlName( sliderName ); + + sR.xMin += 4; + sR.xMax -= 4; + + slider.current = prop.UndoableHorizontalSlider(sR, slider.current, slider.min, slider.max, "value"); + if( beforeSlider != slider.current ) { + GUI.FocusControl( sliderName ); + slider.OnValueChanged(); + } + //SF_GUI.AssignCursor( sR, MouseCursor.Arrow ); + + sR.x += sR.width+4; + sR.width = 32; + prop.UndoableEnterableFloatField(sR, ref slider.max, "max value",null); + sR.x += sR.width; + GUI.Label( sR, "Max" ); + + ps.EndIgnoreChangeCheck(); + + } else if( colorInput ) { + + + SFN_Color colNode = ( prop as SFN_Color ); + + texRect = SF_Tools.GetExpanded( new Rect( r ), -4 ); + texRect.xMin += texRect.width - texRect.height; + //GUI.Box( SF_Tools.GetExpanded( texRect, 1f ), string.Empty, SF_Styles.NodeStyle ); + GUI.color = Color.white; + texRect.yMax -= 21; + texRect.yMin += 15; + texRect.xMin += 2; + //texRect.xMax -= 2; + + SF_GUI.AssignCursor( texRect, MouseCursor.Arrow ); + + ps.StartIgnoreChangeCheck(); + //Color col = EditorGUI.ColorField( texRect, colNode.texture.dataUniform ); + Color col = colNode.UndoableColorField(texRect, colNode.texture.dataUniform, "set color of " + colNode.property.nameDisplay); + ps.EndIgnoreChangeCheck(); + colNode.SetColor( col ); + GUI.color = c; + } else if( prop.property is SFP_Vector4Property ) { + + SFN_Vector4Property vec4 = ( prop as SFN_Vector4Property ); + + ps.StartIgnoreChangeCheck(); + Rect sR = new Rect( dispNameRect ); + sR.y += sR.height + 5; + sR.width = 20; + + int lbWidth = 12; + + + //string channelStr = "XYZW"; + + + + sR.width = lbWidth; + GUI.Label( sR, "X", EditorStyles.miniLabel ); + sR.x += sR.width; + sR.width = 32; + prop.UndoableEnterableFloatField(sR, ref vec4.texture.dataUniform.x, "X channel", EditorStyles.textField ); + SF_GUI.AssignCursor( sR, MouseCursor.Text ); + sR.x += sR.width + 3; + + + sR.width = lbWidth; + GUI.Label( sR, "Y", EditorStyles.miniLabel ); + sR.x += sR.width; + sR.width = 32; + prop.UndoableEnterableFloatField(sR, ref vec4.texture.dataUniform.y, "Y channel", EditorStyles.textField ); + SF_GUI.AssignCursor( sR, MouseCursor.Text ); + sR.x += sR.width+3; + + + sR.width = lbWidth; + GUI.Label( sR, "Z", EditorStyles.miniLabel ); + sR.x += sR.width; + sR.width = 32; + prop.UndoableEnterableFloatField(sR, ref vec4.texture.dataUniform.z, "Z channel", EditorStyles.textField ); + SF_GUI.AssignCursor( sR, MouseCursor.Text ); + sR.x += sR.width + 3; + + + sR.width = lbWidth; + GUI.Label( sR, "W", EditorStyles.miniLabel ); + sR.x += sR.width; + sR.width = 32; + prop.UndoableEnterableFloatField(sR, ref vec4.texture.dataUniform.w, "W channel", EditorStyles.textField ); + SF_GUI.AssignCursor( sR, MouseCursor.Text ); + + + + + ps.EndIgnoreChangeCheck(); + + } else if( prop.property is SFP_ValueProperty ) { + + SFN_ValueProperty val = ( prop as SFN_ValueProperty ); + + ps.StartIgnoreChangeCheck(); + Rect sR = new Rect( dispNameRect ); + sR.y += sR.height + 5; + sR.width = 20; + + sR.width = 35; + GUI.Label( sR, "Value", EditorStyles.miniLabel ); + sR.x += sR.width; + sR.width = 55; + //SF_GUI.EnterableFloatField( prop, sR, ref val.texture.dataUniform.r, EditorStyles.textField ); + prop.UndoableEnterableFloatField(sR, ref val.texture.dataUniform.x, "value", EditorStyles.textField); + SF_GUI.AssignCursor( sR, MouseCursor.Text ); + ps.EndIgnoreChangeCheck(); + } else if (checkboxInput){ + + bool isToggle = (prop.property is SFP_ToggleProperty); + + bool prevValue = isToggle ? (prop.property.node as SFN_ToggleProperty).on : (prop.property.node as SFN_SwitchProperty).on; + + + + + ps.StartIgnoreChangeCheck(); + + texRect = SF_Tools.GetExpanded( new Rect( r ), -4 ); + texRect.xMin += texRect.width - texRect.height; + //GUI.Box( SF_Tools.GetExpanded( texRect, 1f ), string.Empty, SF_Styles.NodeStyle ); + + texRect.yMax -= 21; + texRect.yMin += 15; + texRect.xMin += 2; + //texRect.xMax -= 2; + + SF_GUI.AssignCursor( texRect, MouseCursor.Arrow ); + + bool newValue = prevValue; + + if(isToggle){ + prop.property.node.UndoableToggle(texRect, ref (prop.property.node as SFN_ToggleProperty).on, "", "property checkbox", EditorStyles.toggle); + newValue = (prop.property.node as SFN_ToggleProperty).on; + } else { + prop.property.node.UndoableToggle(texRect, ref (prop.property.node as SFN_SwitchProperty).on, "", "property checkbox", EditorStyles.toggle); + newValue = (prop.property.node as SFN_SwitchProperty).on; + } + + if(newValue != prevValue){ + //if(isToggle){ + // (prop.property.node as SFN_ToggleProperty).on = newValue; + //} else { + // (prop.property.node as SFN_SwitchProperty).on = newValue; + ////} + if(isToggle){ + prop.property.node.texture.dataUniform = Color.white * (newValue ? 1f : 0f); + } else { + //prop.property.node.texture.UpdateColorPreview("",true); + } + prop.property.node.OnUpdateNode(NodeUpdateType.Soft); + } + ps.EndIgnoreChangeCheck(); + + } + + + + + + if( r.Contains( Event.current.mousePosition ) && SF_GUI.PressedLMB() && !dragging && multiple) { + dragStartOffsetY = r.y - Event.current.mousePosition.y; + draggingProperty = prop; + dragStartIndex = i; + startMouseY = Event.current.mousePosition.y; + editor.Defocus(); + } + if(multiple) + SF_GUI.AssignCursor( r, MouseCursor.Pan ); + + + + + + + + + if( draggingThis ) + r.x += 5; + + //GUI.Label( r, "prop.property.nameType = " + prop.property.nameType ); + + r.y += propertyHeight; + i++; + } + + + + r.y = yStart + propCount * propertyHeight; + r.height = 20; + + r.y += prevYpos; + + return r.yMax; + } + + + + + + } +} \ No newline at end of file diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/SFPSC_Properties.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/SFPSC_Properties.cs.meta new file mode 100644 index 00000000..26a6981b --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/SFPSC_Properties.cs.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: d4bb19d25405c413ea8307d77806a00b +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/SFPS_Category.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/SFPS_Category.cs new file mode 100644 index 00000000..d0ce25c4 --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/SFPS_Category.cs @@ -0,0 +1,347 @@ +using UnityEngine; +using UnityEditor; +using System.Collections; +using System; + +namespace ShaderForge { + + + [System.Serializable] + public class SFPS_Category : ScriptableObject { + + public SF_Editor editor; + public SF_PassSettings ps; + + public string labelExpanded; + public string labelContracted; + + public bool expanded = false; + + public float targetHeight = 0f; + public float smoothHeight = 0f; + + + public void OnEnable() { + base.hideFlags = HideFlags.HideAndDontSave; + } + + + public SFPS_Category Initialize( SF_Editor editor, SF_PassSettings ps, string label ) { + this.editor = editor; + this.ps = ps; + this.labelExpanded = label; + this.labelContracted = label + "..."; + return PostInitialize(); + } + + public virtual SFPS_Category PostInitialize(){ + return this; // Override + } + + public virtual string Serialize(){ + return ""; + } + + protected string Serialize( string key, string value, bool last = false ) { + return key + ":" + value + (last ? "" : ","); + } + + public virtual void Deserialize(string key, string value){ + } + + public virtual void ToggleExpansion(){ + + } + + public virtual void PreDraw(Rect r){ + + } + + + public int Draw(float yOffset){ + + if(Event.current.type == EventType.Repaint){ + if(Mathf.Abs(smoothHeight-targetHeight) > 0.1f) + smoothHeight = Mathf.Lerp(smoothHeight,targetHeight,0.5f); + else + smoothHeight = targetHeight; + } + + Rect topRect = new Rect( 0f, yOffset, ps.maxWidth, 20 ); + Rect r = new Rect( topRect ); + + PreDraw(r); + + if( !StartExpanderChangeCheck( r, ref expanded, labelContracted, labelExpanded ) ) { + //ps.guiChanged = EndExpanderChangeCheck(); + //GUI.color = Color.white; + targetHeight = 0f; + //return (int)(topRect.yMax+smoothHeight); + } + Rect gRect = r; + gRect.height = smoothHeight + 20; + GUI.BeginGroup(gRect); + yOffset = DrawInner(ref r ); + GUI.EndGroup(); + if(expanded) + targetHeight = yOffset-topRect.yMax; + if( EndExpanderChangeCheck() ) + ps.guiChanged = true; + + GUI.color = Color.white; + return (int)(topRect.yMax+smoothHeight); + } + + public virtual float DrawInner(ref Rect r){ + + return 0f; + } + + public string GetLabelString() { + return expanded ? labelExpanded : labelContracted; + } + + public virtual void DrawExtraTitleContent( Rect r ) { + // Override. Currently only used by Console + } + + + + public bool StartExpanderChangeCheck(Rect r, ref bool foldVar, string labelContracted, string labelExpanded ) { + + // TOOD: COLOR RECT BEHIND + Color prev = GUI.color; + GUI.color = new Color(0,0,0,0); + if( GUI.Button( r, string.Empty , EditorStyles.foldout ) ){ + Event.current.Use(); + Undo.RecordObject(this, foldVar ? "collapse " + labelExpanded : "expand " + labelExpanded); + foldVar = !foldVar; + } + GUI.color = prev; + //EditorGUI.Foldout( r, foldVar, foldVar ? smoothHeight + " " + labelExpanded : smoothHeight + " " + labelContracted ); + EditorGUI.Foldout( r, foldVar, GetLabelString() ); + DrawExtraTitleContent( r ); + + EditorGUI.BeginChangeCheck(); + if( !foldVar ) + return false; + return true; + } + + public bool EndExpanderChangeCheck() { + return EditorGUI.EndChangeCheck(); + } + + + public void CheckboxEnableLine(ref bool b, ref Rect r){ + Rect rCopy = r; + rCopy.width = r.height; + b = GUI.Toggle(rCopy,b,string.Empty); + GUI.enabled = b; + r.xMin += 20; + } + + public void CheckboxEnableLineEnd(ref Rect r){ + r.y += 20; + r.xMin -= 20; + GUI.enabled = true; + } + + + + + + + + + + + + + + + + public int UndoableContentScaledToolbar(Rect r, string label, int selected, string[] labels, string undoInfix){ + int newValue = SF_GUI.ContentScaledToolbar( r, label, selected, labels ); + if(newValue != selected){ + string undoName = "set " + undoInfix + " to " + labels[newValue]; + Undo.RecordObject(this,undoName); + return newValue; + } + return selected; + } + + + public void UndoableConditionalToggle(Rect r, ref bool value, bool usableIf, bool disabledDisplayValue, string label, string undoSuffix){ + bool nextValue = value; + SF_GUI.ConditionalToggle(r,ref nextValue, usableIf,disabledDisplayValue,label); + if(nextValue != value){ + string undoName = (nextValue ? "enable" : "disable") + " " + undoSuffix; + Undo.RecordObject(this,undoName); + value = nextValue; + } + } + + + public bool UndoableToggle(Rect r, bool boolVar, string label, string undoActionName, GUIStyle style = null){ + if(style == null) + style = EditorStyles.toggle; + bool newValue = GUI.Toggle(r, boolVar, label, style); + if(newValue != boolVar){ + string undoName = (newValue ? "enable" : "disable") + " " + undoActionName; + Undo.RecordObject(this,undoName); + return newValue; + } + return boolVar; + } + + public bool UndoableToggle(Rect r, bool boolVar, string undoActionName, GUIStyle style = null){ + if(style == null) + style = EditorStyles.toggle; + bool newValue = GUI.Toggle(r, boolVar, new GUIContent("")); + if(newValue != boolVar){ + string undoName = (newValue ? "enable" : "disable") + " " + undoActionName; + Undo.RecordObject(this,undoName); + return newValue; + } + return boolVar; + } + + + public Enum UndoableEnumPopup(Rect r, Enum enumValue, string undoInfix){ + Enum nextEnum = EditorGUI.EnumPopup( r, enumValue ); + + if(nextEnum.ToString() != enumValue.ToString()){ + string undoName = "set " + undoInfix + " to " + nextEnum; + Undo.RecordObject(this,undoName); + enumValue = nextEnum; + } + return enumValue; + } + + + public Enum UndoableLabeledEnumPopup(Rect r, string label, Enum enumValue, string undoInfix){ + Enum nextEnum = SF_GUI.LabeledEnumField( r, label, enumValue, EditorStyles.miniLabel ); + if(nextEnum.ToString() != enumValue.ToString()){ + string undoName = "set " + undoInfix + " to " + nextEnum; + Undo.RecordObject(this,undoName); + enumValue = nextEnum; + } + return enumValue; + } + + + public int UndoableEnumPopupNamed(Rect r, Enum enumValue, string[] displayedOptions, string undoInfix){ + int nextEnum = EditorGUI.Popup( r, (int)((object)enumValue), displayedOptions); + if(nextEnum != ((int)((object)enumValue))){ + string undoName = "set " + undoInfix + " to " + displayedOptions[nextEnum]; + Undo.RecordObject(this,undoName); + return nextEnum; + } + return (int)((object)enumValue); + } + + public int UndoableLabeledEnumPopupNamed(Rect r, string label, Enum enumValue, string[] displayedOptions, string undoInfix){ + int nextEnum = SF_GUI.LabeledEnumFieldNamed( r, displayedOptions, new GUIContent(label), (int)((object)enumValue), EditorStyles.miniLabel); + if(nextEnum != ((int)((object)enumValue))){ + string undoName = "set " + undoInfix + " to " + displayedOptions[nextEnum]; + Undo.RecordObject(this,undoName); + return nextEnum; + } + return (int)((object)enumValue); + } + + + //UndoablePopup + + public float UndoableFloatField(Rect r, float value, string undoInfix, GUIStyle style = null){ + if(style == null) + style = EditorStyles.textField; + float newValue = EditorGUI.FloatField( r, value, style ); + if(newValue != value){ + string undoName = "set " + undoInfix + " to " + newValue; + Undo.RecordObject(this,undoName); + return newValue; + } + return value; + } + + public int UndoableIntField(Rect r, int value, string undoInfix, GUIStyle style = null){ + if(style == null) + style = EditorStyles.textField; + int newValue = EditorGUI.IntField( r, value, style ); + if(newValue != value){ + string undoName = "set " + undoInfix + " to " + newValue; + Undo.RecordObject(this,undoName); + return newValue; + } + return value; + } + + + + + public string UndoableTextField(Rect r, string value, string undoInfix, GUIStyle style = null){ + if(style == null) + style = EditorStyles.textField; + string newValue = EditorGUI.TextField( r, value, style ); + if(newValue != value){ + string undoName = "change " + undoInfix + " to " + newValue; + Undo.RecordObject(this,undoName); + return newValue; + } + return value; + } + + + public string UndoableTextField(Rect r, string value, string undoInfix, GUIStyle style = null, UnityEngine.Object extra = null, bool showContent = true){ + if(style == null) + style = EditorStyles.textField; + string newValue = EditorGUI.TextField( r, value, style ); + if(newValue != value){ + string undoName = "change " + undoInfix; + if(showContent) + undoName += " to " + newValue; + Undo.RecordObject(this, undoName); + if(extra != null) + Undo.RecordObject(extra, undoName); + return newValue; + } + return value; + } + + + public void UndoableEnterableNodeTextField(SF_Node node, Rect r, ref string value, string undoMsg, bool update = true, UnityEngine.Object extra = null){ + string nextValue = value; + SF_GUI.EnterableTextField(node, r, ref nextValue, EditorStyles.textField, update ); + if(nextValue != value){ + Undo.RecordObject(this, undoMsg ); + if(extra != null) + Undo.RecordObject(extra, undoMsg); + value = nextValue; + } + } + + + + + + + + + + + + + + + + + + + + + + + } +} \ No newline at end of file diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/SFPS_Category.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/SFPS_Category.cs.meta new file mode 100644 index 00000000..21bd72b3 --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/SFPS_Category.cs.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 3cc113fa7d2a64fe09c009b1f5f47983 +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/SF_Dependencies.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/SF_Dependencies.cs new file mode 100644 index 00000000..3d5f297f --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/SF_Dependencies.cs @@ -0,0 +1,306 @@ +using UnityEngine; +using System.Collections; +using System.Collections.Generic; + + +namespace ShaderForge { + + + + + + public class SF_Dependencies { + + private int vert_out_texcoordNumber = 0; + + public bool uv0 = false; + public bool uv0_frag = false; + public bool uv1 = false; + public bool uv1_frag = false; + public bool uv2 = false; + public bool uv2_frag = false; + public bool uv3 = false; + public bool uv3_frag = false; + public bool uv0_float4 = false; + public bool uv1_float4 = false; + public bool uv2_float4 = false; + public bool uv3_float4 = false; + + public bool vertexColor = false; + public bool lightColor = false; + public bool time = false; + public bool grabPass = false; + public bool scene_uvs = false; + public bool tessellation = false; + public bool displacement = false; + + public bool frag_facing = false; + + public bool vert_out_worldPos = false; + public bool vert_out_screenPos = false; + public bool vert_out_normals = false; + public bool vert_out_tangents = false; + public bool vert_out_bitangents = false; + public bool vert_in_normals = false; + public bool vert_in_tangents = false; + public bool vert_in_vertexColor = false; + public bool vert_out_vertexColor = false; + public bool frag_viewReflection = false; + public bool frag_viewDirection = false; + public bool frag_normalDirection = false; + public bool frag_lightDirection = false; + public bool frag_lightColor = false; + public bool frag_halfDirection = false; + public bool frag_attenuation = false; + public bool frag_tangentTransform = false; + public bool frag_screenPos = false; + public bool frag_pixelDepth = false; + public bool vert_screenPos = false; + + public bool reflection_probes = false; + public bool fog_color = false; + + + public bool vert_viewReflection = false; + public bool vert_viewDirection = false; + public bool vert_normalDirection = false; + public bool vert_lightDirection = false; + public bool vert_halfDirection = false; + public bool vert_tangentTransform = false; + + public bool frag_objectPos = false; + public bool vert_objectPos = false; + + public bool objectScale = false; + public bool objectScaleReciprocal = false; + + public bool frag_sceneDepth = false; + public bool depthTexture = false; + //public bool frag_pixelDepth = false; + + public bool frag_projPos = false; + + + public bool const_pi = false; + public bool const_tau = false; + public bool const_root2 = false; + public bool const_e = false; + public bool const_phi = false; + + public bool pragmaGlsl = false; + + + int shaderTarget = 3; // Shader target: #pragma target 3.0 + public List includeRenderers; + + public SF_Dependencies(SF_PassSettings ps) { + includeRenderers = new List(); + for( int i = 0; i < ps.catMeta.usedRenderers.Length; i++ ) { + if( ps.catMeta.usedRenderers[i] ) { + includeRenderers.Add( (RenderPlatform)i ); + } + } + + + + //excludeRenderers.Add( RenderPlatform.flash ); + //excludeRenderers.Add( RenderPlatform.gles ); + //excludeRenderers.Add( RenderPlatform.xbox360 ); + //excludeRenderers.Add( RenderPlatform.ps3 ); + } + + public void NeedSceneAndFragDepth(){ + frag_pixelDepth = true; + NeedSceneDepth(); + } + + public void NeedSceneDepth(){ + frag_projPos = true; + frag_sceneDepth = true; + depthTexture = true; + } + + public void IncrementTexCoord( int num ) { + vert_out_texcoordNumber += num; + } + + public bool UsesLightNodes() { + return frag_attenuation || frag_lightDirection || frag_halfDirection || lightColor; + } + + public void NeedFragVertexColor() { + vert_in_vertexColor = true; + vert_out_vertexColor = true; + } + + public void NeedFragObjPos() { + frag_objectPos = true; + } + public void NeedVertObjPos(){ + vert_objectPos = true; + } + + public void NeedVertScreenPos() { + vert_screenPos = true; + } + + public void NeedLightColor() { + lightColor = true; + frag_lightColor = true; + } + + public void NeedFragAttenuation(){ + frag_attenuation = true; + } + + public void NeedRefraction() { + NeedGrabPass(); + NeedSceneUVs(); + } + + public void NeedSceneUVs(){ + frag_projPos = true; + scene_uvs = true; + } + + public void NeedFragPixelDepth(){ + NeedFragWorldPos(); + frag_projPos = true; + frag_pixelDepth = true; + } + + public void NeedGrabPass() { + NeedSceneUVs(); // TODO: Really? + grabPass = true; + } + + public void NeedTessellation(){ + shaderTarget = Mathf.Max( shaderTarget, 5); + vert_in_tangents = true; + vert_in_normals = true; + tessellation = true; + } + + + public void NeedDisplacement() { + displacement = true; + } + + public void NeedFragWorldPos() { + vert_out_worldPos = true; + } + public void NeedVertWorldPos() { + vert_out_worldPos = true; // TODO ? + } + + public void NeedFragHalfDir() { + frag_halfDirection = true; + NeedFragLightDir(); + NeedFragViewDirection(); + } + public void NeedVertHalfDir() { + vert_halfDirection = true; + NeedVertLightDir(); + NeedVertViewDirection(); + } + + public void NeedFragLightDir() { + frag_lightDirection = true; + NeedFragWorldPos(); + } + public void NeedVertLightDir() { + vert_lightDirection = true; + NeedVertWorldPos(); + } + + public void NeedFragViewDirection() { + frag_viewDirection = true; + NeedFragWorldPos(); + } + public void NeedVertViewDirection() { + vert_viewDirection = true; + NeedVertWorldPos(); + } + + + + + public void NeedFragViewReflection() { + NeedFragViewDirection(); + NeedFragNormals(); + frag_viewReflection = true; + } + + public void NeedFragNormals() { + vert_in_normals = true; + vert_out_normals = true; + frag_normalDirection = true; + } + + public void NeedFragTangents() { + vert_in_tangents = true; + vert_out_tangents = true; + } + public void NeedFragBitangents() { + vert_in_normals = true; + vert_out_normals = true; + vert_in_tangents = true; + vert_out_tangents = true; + vert_out_bitangents = true; + } + + public void NeedFragTangentTransform() { + frag_tangentTransform = true; + frag_normalDirection = true; + vert_in_normals = true; + vert_out_normals = true; + vert_in_tangents = true; + vert_out_tangents = true; + vert_out_bitangents = true; + } + + + + public void IncludeRenderPlatform( RenderPlatform plat ) { + if( includeRenderers.Contains( plat ) == false ) { + includeRenderers.Add( plat ); + } + } + + public bool DoesIncludePlatforms() { + return includeRenderers.Count > 0; + } + + public bool IsTargetingAboveDefault() { + return ( shaderTarget > 2 ); + } + + public string GetIncludedPlatforms() { + string s = ""; + foreach( RenderPlatform plat in includeRenderers ) + s += plat.ToString() + " "; + //Debug.Log("Exclude Str: " + s); + return s; + } + + public void SetMinimumShaderTarget( int x ) { + if( x > shaderTarget ) + shaderTarget = x; + } + public string GetShaderTarget() { + return ( shaderTarget + ".0" ); + } + + public string GetVertOutTexcoord() { + string s = vert_out_texcoordNumber.ToString(); + vert_out_texcoordNumber++; + return s; + } + + public void ResetTexcoordNumbers() { + //vert_in_texcoordNumber = 0; + vert_out_texcoordNumber = 0; + } + + } +} \ No newline at end of file diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/SF_Dependencies.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/SF_Dependencies.cs.meta new file mode 100644 index 00000000..3992e3ba --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/SF_Dependencies.cs.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 318a4bbf6b13c47e1ac8085a2ebc9850 +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/SF_Editor.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/SF_Editor.cs new file mode 100644 index 00000000..9ad58818 --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/SF_Editor.cs @@ -0,0 +1,2179 @@ +using UnityEngine; +using UnityEditor; +using System; +using System.Collections.Generic; +using System.IO; +using System.Linq; +using System.Xml; +using System.Reflection; +using System.Net; +using System.Collections; + + + + +namespace ShaderForge { + + + public delegate T Func(); + + public enum UpToDateState{UpToDate, OutdatedSoft, OutdatedHard}; + + [Serializable] + public class SF_Editor : EditorWindow { + [SerializeField] + public SF_Evaluator shaderEvaluator; + [SerializeField] + public SF_PreviewWindow preview; + [SerializeField] + public SF_EditorNodeView nodeView; + [SerializeField] + public SF_EditorNodeBrowser nodeBrowser; + [SerializeField] + public SF_PassSettings ps; // TODO: Move + + [System.NonSerialized] + public static SF_Editor instance; + [SerializeField] + public SFN_Final mainNode; + [SerializeField] + public SF_StatusBox statusBox; + + [SerializeField] + public List nodes; + + [SerializeField] + DateTime startTime = DateTime.UtcNow; + + [SerializeField] + GUIStyle windowStyle; + [SerializeField] + GUIStyle titleStyle; + [SerializeField] + GUIStyle versionStyle; + [SerializeField] + GUIStyle nodeScrollbarStyle; + + [SerializeField] + public SF_DraggableSeparator separatorLeft; + + [SerializeField] + public SF_DraggableSeparator separatorRight; + + public Vector2 mousePosition = Vector2.zero; + + [SerializeField] + public Shader currentShaderAsset; + [SerializeField] + public string currentShaderPath; + + [SerializeField] + public List nodeTemplates; + + [SerializeField] + private UpToDateState shaderOutdated = UpToDateState.UpToDate; + public UpToDateState ShaderOutdated{ + get{ + return shaderOutdated; + } + set{ + if(shaderOutdated != value){ + //Debug.Log("Changed outdated state to " + value); + shaderOutdated = value; + } + } + } + + [NonSerialized] + public bool initialized = false; + + + + + public SF_Editor() { + if(SF_Debug.window) + Debug.Log( "[SF_LOG] - SF_Editor CONSTRUCTOR SF_Editor()" ); + SF_Editor.instance = this; + } + + [MenuItem( "Window/Shader Forge" )] + static void InitEmpty() { + if( SF_Editor.instance == null ) + Init( null ); + else { + EditorWindow.GetWindow( typeof( SF_Editor ) ); // Focus + } + } + + void OnEnable() { + SF_Settings.LoadAllFromDisk(); + titleContent = new GUIContent( "Shader Forge", (Texture)SF_GUI.Icon ); + if( this.preview != null ) + preview.OnEnable(); + } + + void OnDisable(){ + + if(shaderOutdated != UpToDateState.UpToDate){ + + fullscreenMessage = "Saving..."; + Repaint(); + shaderEvaluator.Evaluate(); + } + + if( this.preview != null ) + preview.OnDisable(); + + SF_Settings.SaveAllToDisk(); + + } + + + void OnDestroy(){ + DestroyImmediate( preview.internalMaterial ); + } + + public static bool Init( Shader initShader = null ) { + + // To make sure you get periods as decimal separators + System.Threading.Thread.CurrentThread.CurrentCulture = System.Globalization.CultureInfo.CreateSpecificCulture("en-US"); + + if(SF_Debug.evalFlow || SF_Debug.dynamicNodeLoad) + Debug.Log( "[SF_LOG] - SF_Editor Init(" + initShader + ")" ); + SF_Editor materialEditor = (SF_Editor)EditorWindow.GetWindow( typeof( SF_Editor ) ); + SF_Editor.instance = materialEditor; + updateCheck = ""; + bool loaded = materialEditor.InitializeInstance( initShader ); + if( !loaded ) + return false; + return true; + } + + public int GetUniqueNodeID() { + + int[] occupiedIDs = nodes.Select( x => x.id ).ToArray(); + int id = -1; + int limit = 1000000; + + do { + id = UnityEngine.Random.Range(1,9999); + limit--; + } while( occupiedIDs.Contains( id ) && limit > 0 ); + + if( limit <= 0 ) + Debug.LogError("Ran out of attempts to find a unique node ID"); + + return id; + } + + + + + + public void InitializeNodeTemplates() { + nodeTemplates = new List(); + + + // AddTemplate( typeof( SFN_CommentBox ), "Comment Box" ); + + string catArithmetic = "Arithmetic/"; + AddTemplate( typeof( SFN_Abs ), catArithmetic + "Abs" ); + AddTemplate( typeof( SFN_Add ), catArithmetic + "Add", KeyCode.A ); + AddTemplate( typeof( SFN_Blend ), catArithmetic + "Blend", KeyCode.B ); + AddTemplate( typeof( SFN_Ceil ), catArithmetic + "Ceil" ); + AddTemplate( typeof( SFN_Clamp ), catArithmetic + "Clamp" ); + AddTemplate( typeof( SFN_Clamp01 ), catArithmetic + "Clamp 0-1" ); + AddTemplate( typeof( SFN_ConstantClamp ), catArithmetic + "Clamp (Simple)",KeyCode.None, "Clamp Simple" ); + AddTemplate( typeof( SFN_Divide ), catArithmetic + "Divide", KeyCode.D ); + AddTemplate( typeof( SFN_Exp ), catArithmetic + "Exp" ); + AddTemplate( typeof( SFN_Floor ), catArithmetic + "Floor" ); + AddTemplate( typeof( SFN_Fmod ), catArithmetic + "Fmod" ); + AddTemplate( typeof( SFN_Frac ), catArithmetic + "Frac" ); + AddTemplate( typeof( SFN_HsvToRgb ), catArithmetic + "HSV to RGB" ); + AddTemplate( typeof( SFN_Hue ), catArithmetic + "Hue" ); + AddTemplate( typeof( SFN_If ), catArithmetic + "If", KeyCode.I ); + AddTemplate( typeof( SFN_InverseLerp ), catArithmetic + "Inverse Lerp" ); + AddTemplate( typeof( SFN_Lerp ), catArithmetic + "Lerp", KeyCode.L ); + AddTemplate( typeof( SFN_ConstantLerp ), catArithmetic + "Lerp (Simple)", KeyCode.None, "Lerp Simple" ); + AddTemplate( typeof( SFN_Log ), catArithmetic + "Log" ); + AddTemplate( typeof( SFN_Max ), catArithmetic + "Max" ); + AddTemplate( typeof( SFN_Min ), catArithmetic + "Min" ); + AddTemplate( typeof( SFN_Multiply ), catArithmetic + "Multiply", KeyCode.M ); + AddTemplate( typeof( SFN_MultiplyMatrix ), catArithmetic + "Multiply Matrix" ); + AddTemplate( typeof( SFN_Negate ), catArithmetic + "Negate" ); + AddTemplate( typeof( SFN_Noise ), catArithmetic + "Noise" ); + AddTemplate( typeof( SFN_OneMinus ), catArithmetic + "One Minus", KeyCode.O ); + AddTemplate( typeof( SFN_Posterize ), catArithmetic + "Posterize" ); + AddTemplate( typeof( SFN_Power ), catArithmetic + "Power", KeyCode.E ); + AddTemplate( typeof( SFN_Reciprocal ), catArithmetic + "Reciprocal" ); + AddTemplate( typeof( SFN_RemapRangeAdvanced),catArithmetic+ "Remap" ); + AddTemplate( typeof( SFN_RemapRange ), catArithmetic + "Remap (Simple)", KeyCode.R, "Remap Simple" ); + AddTemplate( typeof( SFN_RgbToHsv ), catArithmetic + "RGB to HSV" ); + AddTemplate( typeof( SFN_Round ), catArithmetic + "Round" ); + AddTemplate( typeof( SFN_Sign ), catArithmetic + "Sign" ); + AddTemplate( typeof( SFN_Smoothstep ), catArithmetic + "Smoothstep" ).MarkAsNewNode(); + AddTemplate( typeof( SFN_Sqrt ), catArithmetic + "Sqrt" ); + AddTemplate( typeof( SFN_Step ), catArithmetic + "Step (A <= B)", KeyCode.None, "Step" ); + AddTemplate( typeof( SFN_Subtract ), catArithmetic + "Subtract", KeyCode.S ); + AddTemplate( typeof( SFN_Trunc ), catArithmetic + "Trunc" ); + + string catConstVecs = "Constant Vectors/"; + AddTemplate( typeof( SFN_Vector1 ), catConstVecs + "Value", KeyCode.Alpha1 ); + AddTemplate( typeof( SFN_Vector2 ), catConstVecs + "Vector 2", KeyCode.Alpha2 ); + AddTemplate( typeof( SFN_Vector3 ), catConstVecs + "Vector 3", KeyCode.Alpha3 ); + AddTemplate( typeof( SFN_Vector4 ), catConstVecs + "Vector 4", KeyCode.Alpha4 ); + AddTemplate( typeof( SFN_Matrix4x4 ), catConstVecs + "Matrix 4x4" ); + + string catProps = "Properties/"; + AddTemplate( typeof( SFN_Color ), catProps + "Color" ); + AddTemplate( typeof( SFN_Cubemap ), catProps + "Cubemap" ); + AddTemplate( typeof( SFN_Matrix4x4Property ), catProps + "Matrix 4x4" ); + AddTemplate( typeof( SFN_Slider ), catProps + "Slider" ); + AddTemplate( typeof( SFN_SwitchProperty ), catProps + "Switch" ); + AddTemplate( typeof( SFN_Tex2d ), catProps + "Texture 2D", KeyCode.T ); + AddTemplate( typeof( SFN_Tex2dAsset ), catProps + "Texture Asset" ); + AddTemplate( typeof( SFN_ToggleProperty ), catProps + "Toggle" ); + AddTemplate( typeof( SFN_ValueProperty ), catProps + "Value" ); + AddTemplate( typeof( SFN_Vector4Property ), catProps + "Vector 4" ); + + //string catBranching = "Branching/"; + //AddTemplate( typeof( SFN_StaticBranch ), catBranching + "Static Branch" ); + + string catVecOps = "Vector Operations/"; + AddTemplate( typeof( SFN_Append ), catVecOps + "Append", KeyCode.Q ); + AddTemplate( typeof( SFN_ChannelBlend ), catVecOps + "Channel Blend"); + AddTemplate( typeof( SFN_ComponentMask ), catVecOps + "Component Mask", KeyCode.C ); + AddTemplate( typeof( SFN_Cross ), catVecOps + "Cross Product" ); + AddTemplate( typeof( SFN_Desaturate ), catVecOps + "Desaturate" ); + AddTemplate( typeof( SFN_DDX ), catVecOps + "DDX" ); + AddTemplate( typeof( SFN_DDXY ), catVecOps + "DDXY" ).MarkAsNewNode(); + AddTemplate( typeof( SFN_DDY ), catVecOps + "DDY" ); + AddTemplate( typeof( SFN_Distance ), catVecOps + "Distance" ); + AddTemplate( typeof( SFN_Dot ), catVecOps + "Dot Product" ); + AddTemplate( typeof( SFN_Length ), catVecOps + "Length" ); + AddTemplate( typeof( SFN_Normalize ), catVecOps + "Normalize", KeyCode.N ); + AddTemplate( typeof( SFN_NormalBlend ), catVecOps + "Normal Blend" ); + AddTemplate( typeof( SFN_Reflect ), catVecOps + "Reflect" ); + AddTemplate( typeof( SFN_Transform ), catVecOps + "Transform" ); + AddTemplate( typeof( SFN_Transpose ), catVecOps + "Transpose" ); + AddTemplate( typeof( SFN_VectorProjection ),catVecOps + "Vector Projection" ); + AddTemplate( typeof( SFN_VectorRejection ), catVecOps + "Vector Rejection" ); + + + string catUvOps = "UV Operations/"; + AddTemplate( typeof( SFN_Panner ), catUvOps + "Panner", KeyCode.P ); + AddTemplate( typeof( SFN_Parallax ), catUvOps + "Parallax" ); + AddTemplate( typeof( SFN_Rotator ), catUvOps + "Rotator" ); + AddTemplate( typeof( SFN_UVTile ), catUvOps + "UV Tile" ); + + string catGeoData = "Geometry Data/"; + AddTemplate( typeof( SFN_Bitangent ), catGeoData + "Bitangent Dir."); + AddTemplate( typeof( SFN_Depth ), catGeoData + "Depth"); + AddTemplate( typeof( SFN_FaceSign ), catGeoData + "Face Sign" ); + AddTemplate( typeof( SFN_Fresnel ), catGeoData + "Fresnel", KeyCode.F ); + AddTemplate( typeof( SFN_NormalVector ), catGeoData + "Normal Dir." ); + AddTemplate( typeof( SFN_ObjectPosition ), catGeoData + "Object Position"); + AddTemplate( typeof( SFN_ObjectScale ), catGeoData + "Object Scale" ); + AddTemplate( typeof( SFN_ScreenPos ), catGeoData + "Screen Position" ); + AddTemplate( typeof( SFN_Tangent ), catGeoData + "Tangent Dir." ); + AddTemplate( typeof( SFN_TexCoord ), catGeoData + "UV Coordinates", KeyCode.U ); + AddTemplate( typeof( SFN_VertexColor ), catGeoData + "Vertex Color", KeyCode.V ); + AddTemplate( typeof( SFN_ViewVector ), catGeoData + "View Dir." ); + AddTemplate( typeof( SFN_ViewReflectionVector ), catGeoData + "View Refl. Dir.", KeyCode.None, "View Reflection" ); + AddTemplate( typeof( SFN_FragmentPosition ), catGeoData + "World Position", KeyCode.W ); + + string catLighting = "Lighting/"; + AddTemplate( typeof( SFN_AmbientLight ), catLighting + "Ambient Light" ); + AddTemplate( typeof( SFN_HalfVector ), catLighting + "Half Direction", KeyCode.H ).UavailableInDeferredPrePass(); + AddTemplate( typeof( SFN_LightAttenuation ), catLighting + "Light Attenuation" ).UavailableInDeferredPrePass(); + AddTemplate( typeof( SFN_LightColor ), catLighting + "Light Color" ).UavailableInDeferredPrePass(); + AddTemplate( typeof( SFN_LightVector ), catLighting + "Light Direction" ).UavailableInDeferredPrePass(); + AddTemplate( typeof( SFN_LightPosition ), catLighting + "Light Position" ).UavailableInDeferredPrePass(); + + string catExtData = "External Data/"; + AddTemplate( typeof( SFN_PixelSize ), catExtData + "Pixel Size" ); + AddTemplate( typeof( SFN_ProjectionParameters ), catExtData + "Projection Parameters" ); + AddTemplate( typeof( SFN_ScreenParameters ), catExtData + "Screen Parameters" ); + AddTemplate( typeof( SFN_Time ), catExtData + "Time" ); + AddTemplate( typeof( SFN_ViewPosition ), catExtData + "View Position" ); + + string catSceneData = "Scene Data/"; + AddTemplate( typeof(SFN_DepthBlend), catSceneData + "Depth Blend" ); + AddTemplate( typeof( SFN_FogColor ), catSceneData + "Fog Color" ); + AddTemplate( typeof(SFN_SceneColor), catSceneData + "Scene Color" ); + AddTemplate( typeof(SFN_SceneDepth), catSceneData + "Scene Depth" ); + + string catMathConst = "Math Constants/"; + AddTemplate( typeof( SFN_E ), catMathConst + "e", KeyCode.None, "EulersConstant" ); + AddTemplate( typeof( SFN_Phi ), catMathConst + "Phi" ); + AddTemplate( typeof( SFN_Pi ), catMathConst + "Pi" ); + AddTemplate( typeof( SFN_Root2 ), catMathConst + "Root 2" ); + AddTemplate( typeof( SFN_Tau ), catMathConst + "Tau (2 Pi)", KeyCode.None, "Tau" ); + + string catTrig = "Trigonometry/"; + AddTemplate( typeof( SFN_ArcCos ), catTrig + "ArcCos" ); + AddTemplate( typeof( SFN_ArcSin ), catTrig + "ArcSin" ); + AddTemplate( typeof( SFN_ArcTan ), catTrig + "ArcTan" ); + AddTemplate( typeof( SFN_ArcTan2 ), catTrig + "ArcTan2" ); + AddTemplate( typeof( SFN_Cos ), catTrig + "Cos" ); + AddTemplate( typeof( SFN_Sin ), catTrig + "Sin" ); + AddTemplate( typeof( SFN_Tan ), catTrig + "Tan" ); + + string catCode = "Code/"; + AddTemplate( typeof( SFN_Code ), catCode + "Code" ); + + string catUtility = "Utility/"; + AddTemplate( typeof( SFN_Relay ), catUtility + "Relay" ); + AddTemplate( typeof( SFN_Get ), catUtility + "Get", KeyCode.G ).MarkAsNewNode(); + AddTemplate( typeof( SFN_Set ), catUtility + "Set" ).MarkAsNewNode(); + + + + SF_EditorNodeData ssDiff = TryAddTemplateDynamic( "SFN_SkyshopDiff", "Skyshop/" + "Skyshop Diffuse" ); + if(ssDiff != null) + ssDiff.MarkAsNewNode(); + + SF_EditorNodeData ssSpec = TryAddTemplateDynamic( "SFN_SkyshopSpec", "Skyshop/" + "Skyshop Specular" ); + if( ssSpec != null ) + ssSpec.MarkAsNewNode(); + + + + + } + + + public static bool NodeExistsAndIs(SF_Node node, string nodeName){ + if(NodeExists(nodeName)) + if(node.GetType() == GetNodeType(nodeName)) + return true; + return false; + } + + public static bool NodeExists(string nodeName){ + return GetNodeType(nodeName) != null; + } + + + static Assembly editorAssembly; + public static Assembly EditorAssembly { + get { + if( editorAssembly == null ) { + + Assembly[] assemblies = AppDomain.CurrentDomain.GetAssemblies(); + + foreach( Assembly assembly in assemblies ) { + if( assembly.FullName.Split( ',' )[0].Trim() == "Assembly-CSharp-Editor" ) { + editorAssembly = assembly; + return editorAssembly; + } + } + //if( SF_Debug.dynamicNodeLoad ) + // Debug.LogError("Unable to find the editor assembly" ); + } + return editorAssembly; + } + } + + + public static Type GetNodeType(string nodeName){ + + Assembly asm = EditorAssembly; + if( asm == null ) + return null; + string fullNodeName = nodeName; + if(!nodeName.StartsWith("ShaderForge.")) + fullNodeName = "ShaderForge." + nodeName; + if( SF_Debug.dynamicNodeLoad ) + Debug.Log( "Trying to dynamically load [" + fullNodeName + "]" + " in assembly [" + asm.FullName + "]" ); + + return asm.GetType( fullNodeName ); + } + + public SF_EditorNodeData TryAddTemplateDynamic(string type, string label, KeyCode keyCode = KeyCode.None, string searchName = null ){ + + Type dynType = GetNodeType(type); + + if(dynType != null){ + if(SF_Debug.dynamicNodeLoad) + Debug.Log( "TryAddTemplateDynamic of " + type ); + return AddTemplate( dynType, label, keyCode, searchName ); + } + if( SF_Debug.dynamicNodeLoad ) + Debug.Log( "TryAddTemplateDynamic of " + type + " was null" ); + return null; + } + + public SF_EditorNodeData AddTemplate( Type type, string label, KeyCode keyCode = KeyCode.None, string searchName = null ) { + SF_EditorNodeData item = ScriptableObject.CreateInstance().Initialize( type.FullName, label, keyCode ); + + if(!string.IsNullOrEmpty(searchName)){ + item.SearchName = searchName; + } + + this.nodeTemplates.Add( item ); + return item; + } + + + + public SF_EditorNodeData GetTemplate() { + foreach( SF_EditorNodeData sft in nodeTemplates ) { + if( sft.type == typeof(T).FullName ) + return sft; + } + return null; + } + + public SF_EditorNodeData GetTemplate( string typeName ) { + foreach( SF_EditorNodeData sft in nodeTemplates ) { + if( sft.type == typeName ) + return sft; + } + return null; + } + + + public void OnShaderModified(NodeUpdateType updType) { + //Debug.Log("OnShaderModified: " + updType.ToString() ); + if( updType == NodeUpdateType.Hard && nodeView.treeStatus.CheckCanCompile() ){ + nodeView.lastChangeTime = (float)EditorApplication.timeSinceStartup; + ShaderOutdated = UpToDateState.OutdatedHard; + } + if(updType == NodeUpdateType.Soft && ShaderOutdated == UpToDateState.UpToDate) + ShaderOutdated = UpToDateState.OutdatedSoft; + + ps.fChecker.UpdateAvailability(); + ps.UpdateAutoSettings(); + } + + public void ResetRunningOutdatedTimer(){ + if(ShaderOutdated == UpToDateState.UpToDate) + return; + if(ShaderOutdated == UpToDateState.OutdatedSoft) // Might not want to have this later + return; + + nodeView.lastChangeTime = (float)EditorApplication.timeSinceStartup; + + } + + /* + public Vector3 GetMouseWorldPos( Vector3 playerPos ) { + + Vector3 camDir = Camera.main.transform.forward; + Ray r = Camera.main.ScreenPointToRay( Input.mousePosition ); + Plane p = new Plane( camDir * -1, playerPos ); + + float dist = 0f; + if( p.Raycast( r, out dist ) ) { + return r.GetPoint( dist ); + } + + Debug.LogError( "Mouse ray did not hit the plane" ); + return Vector3.zero; + }*/ + + public bool InitializeInstance( Shader initShader = null ) { + if(SF_Debug.evalFlow) + Debug.Log( "[SF_LOG] - SF_Editor InitializeInstance(" + initShader + ")" ); + //this.title = ; + + SF_Settings.InitializeSettings(); + this.initialized = true; + this.ps = ScriptableObject.CreateInstance().Initialize( this ); + this.shaderEvaluator = new SF_Evaluator( this ); + this.preview = new SF_PreviewWindow( this ); + this.statusBox = new SF_StatusBox( /*this*/ ); + statusBox.Initialize(this); + + InitializeNodeTemplates(); + + windowStyle = new GUIStyle( EditorStyles.textField ); + windowStyle.margin = new RectOffset( 0, 0, 0, 0 ); + windowStyle.padding = new RectOffset( 0, 0, 0, 0 ); + + titleStyle = new GUIStyle( EditorStyles.largeLabel ); + titleStyle.fontSize = 24; + + versionStyle = new GUIStyle( EditorStyles.miniBoldLabel ); + versionStyle.alignment = TextAnchor.MiddleLeft; + versionStyle.fontSize = 9; + versionStyle.normal.textColor = Color.gray; + versionStyle.padding.left = 1; + versionStyle.padding.top = 1; + versionStyle.padding.bottom = 1; + versionStyle.margin.left = 1; + versionStyle.margin.top = 3; + versionStyle.margin.bottom = 1; + + this.nodes = new List(); + + // Create main output node and add to list + this.nodeView = ScriptableObject.CreateInstance().Initialize( this ); + this.ps.catConsole.treeStatus = this.nodeView.treeStatus; + this.nodeBrowser = ScriptableObject.CreateInstance().Initialize( this ); + this.separatorLeft = ScriptableObject.CreateInstance(); + this.separatorRight = ScriptableObject.CreateInstance(); + + separatorLeft.rect = new Rect(340, 0, 0, 0); + separatorRight.rect = new Rect(Screen.width - 130f, 0, 0, 0); + + this.previousPosition = position; + + if( initShader == null ) { + // TODO: New menu etc + //CreateOutputNode(); + } else { + currentShaderAsset = initShader; + + bool loaded = SF_Parser.ParseNodeDataFromShader( this, initShader ); + if( !loaded ) { + initShader = null; + DestroyImmediate( this ); + return false; + } + + // Make preview material use this shader + //preview.material.shader = currentShaderAsset; + Material m = preview.InternalMaterial; + SF_Tools.AssignShaderToMaterialAsset( ref m, currentShaderAsset ); + } + + // Load data if it was set to initialize things + return true; // Successfully loaded + } + + + + + + public SF_Node CreateOutputNode() { + //Debug.Log ("Creating output node"); + this.mainNode = ScriptableObject.CreateInstance().Initialize( this );//new SFN_Final(); + this.nodes.Add( mainNode ); + return mainNode; + } + + public SF_Node GetNodeByID( int id ) { + for( int i = 0; i < nodes.Count; i++ ) { + if( nodes[i].id == id ) + return nodes[i]; + } + return null; + } + + + + + + public void UpdateKeyHoldEvents(bool mouseOverSomeNode) { + if( nodeTemplates == null || nodeTemplates.Count == 0 ) { + InitializeNodeTemplates(); + } + + //Debug.Log( "nodeTemplates.Count = " + nodeTemplates.Count ); + + foreach( SF_EditorNodeData nData in nodeTemplates ) { + + if( nData == null ) { + InitializeNodeTemplates(); + return; + } + SF_EditorNodeData requestedNode = nData.CheckHotkeyInput(mouseOverSomeNode); + if( requestedNode != null ) { + AddNode( requestedNode, true ); + return; + } + } + /*foreach(KeyValuePair> entry in inputInstancers){ + if(entry.Key.CheckHotkeyInput()){ + AddNode( entry.Key ); + } + }*/ + } + + public T AddNode() where T:SF_Node { + return AddNode(GetTemplate()) as T; + } + + public SF_Node AddNode(string typeName) { + //Debug.Log( "Searching for " + typeName ); + return AddNode( GetTemplate( typeName ) ); + } + + public SF_Node AddNode( SF_EditorNodeData nodeData, bool registerUndo = false ) { + + if( nodeData == null ){ + Debug.Log("Null node data passed into AddNode"); + } + + SF_Node node = nodeData.CreateInstance(); + + if( SF_Debug.dynamicNodeLoad ) { + if( node == null ) + Debug.Log( "nodeData failed to create a node of full path: " + nodeData.fullPath ); + else + Debug.Log( "Created a node of full path: " + nodeData.fullPath ); + } + + if(registerUndo){ + Undo.RecordObject(this, "add node " + node.nodeName); + } + + + nodes.Add( node ); + if(Event.current != null) + Event.current.Use(); + //Repaint(); + return node; + } + + + bool Clicked() { + return Event.current.type == EventType.MouseDown; + } + + float fps = 0; + double prevFrameTime = 1; + public double deltaTime = 0.02; + + + + + + + List coroutines = new List(); + + //double corLastTime; + // double corDeltaTime; + void UpdateCoroutines(){ + //corDeltaTime = EditorApplication.timeSinceStartup - corLastTime; + //corLastTime = EditorApplication.timeSinceStartup; + for(int i = 0; i < coroutines.Count; i++){ + IEnumerator routine = coroutines[i]; + if(!routine.MoveNext()){ + coroutines.RemoveAt(i--); + } + } + } + void StartCoroutine (IEnumerator routine){ + coroutines.Add(routine); + } + + + + + void Update() { + + + + if( closeMe ) { + base.Close(); + return; + } + + + double now = Now(); + double deltaTime = now-prevFrameTime; + fps = 1f/(float)deltaTime; + + + + if(fps > 60) + return; // Wait for target FPS + + + prevFrameTime = now; + + preview.UpdateRot(); + + + + for (int i = nodes.Count - 1; i >= 0; i--) { + if(nodes[i] == null) + nodes.Remove(nodes[i]); + else + nodes[i].Update(); + } + + + // Refresh node previews + int maxUpdatesPerFrame = 80; + int updatedNodes = 0; + + while( updatedNodes < maxUpdatesPerFrame ) { + bool anyUpdated = false; + for( int i = 0; i < nodes.Count; i++ ) { + if( nodes[i].CheckIfDirty() ) { + anyUpdated = true; + updatedNodes++; + } + } + if( !anyUpdated ) { + break; + } + } + + + + + + + if( ShaderOutdated == UpToDateState.OutdatedHard && SF_Settings.autoCompile && nodeView.GetTimeSinceChanged() >= 1f) { + shaderEvaluator.Evaluate(); + } + + + //UpdateCameraZoomValue(); + if(focusedWindow == this) + Repaint(); // Update GUI every frame if focused + + } + + + + MethodInfo isDockedMethod; + const float dockedCheckInterval = 1f; + public float dockedLastUpdate = -100f; + public bool _docked = false; + public bool Docked{ + get{ + if( EditorApplication.timeSinceStartup - dockedLastUpdate > dockedCheckInterval ) { + dockedLastUpdate = (float)EditorApplication.timeSinceStartup; + if( isDockedMethod == null ) { + BindingFlags fullBinding = BindingFlags.Public | BindingFlags.NonPublic | BindingFlags.Instance | BindingFlags.Static; + isDockedMethod = typeof( EditorWindow ).GetProperty( "docked", fullBinding ).GetGetMethod( true ); + } + _docked = ( bool ) isDockedMethod.Invoke(this, null); + } + return _docked; + } + } + + public int TabOffset{ + get{ + return Docked ? 19 : 22; + } + } + + + + public double Now(){ + TimeSpan t = ( DateTime.UtcNow - startTime ); + return t.TotalSeconds; + } + + + + + void OnWindowResized( int deltaXsize, int deltaYsize ) { + if(separatorRight == null) + ForceClose(); + separatorRight.rect.x += deltaXsize; + } + + void ForceClose() { + //Debug.Log("Force close"); + closeMe = true; + GUIUtility.ExitGUI(); + } + + void AddDependenciesHierarchally(SF_Node node, DependencyTree tree){ + node.ReadDependencies(); + tree.Add(node); + foreach(SF_Node n in ((IDependable)node).Dependencies){ + AddDependenciesHierarchally(n, tree); + } + } + + public List GetDepthSortedDependencyTreeForConnectedNodes(bool reverse = false){ + DependencyTree tree = new DependencyTree(); + + AddDependenciesHierarchally(mainNode, tree); + //Debug.Log(tree.tree.Count); + tree.Sort(); + + List list = tree.tree.Select(x=>(SF_Node)x).ToList(); + if(reverse) + list.Reverse(); + return list; + } + + string fullscreenMessage = ""; + public Rect previousPosition; + public bool closeMe = false; + void OnGUI() { + + //Debug.Log("SF_Editor OnGUI()"); + + //SF_AllDependencies.DrawDependencyTree(new Rect(0, 0, Screen.width, Screen.height)); + //return; + +// if(Event.current.keyCode == KeyCode.Space && Event.current.type == EventType.keyDown){ +// Debug.Log("Beep"); +// Event.current.Use(); +// +// +// +// } + + if(SF_Parser.quickLoad) // Don't draw while loading + return; + + if(SF_Debug.performance) + GUI.Label(new Rect(500,64,128,64),"fps: "+fps.ToString()); + + if( position != previousPosition ) { + OnWindowResized( (int)(position.width - previousPosition.width), (int)(position.height - previousPosition.height) ); + previousPosition = position; + } + + Rect fullRect = new Rect( 0, 0, Screen.width, Screen.height); + //Debug.Log( fullRect ); + + if( currentShaderAsset == null ) { + DrawMainMenu(); + return; + } + + if(!string.IsNullOrEmpty(fullscreenMessage)){ + GUI.Box(fullRect,fullscreenMessage); + return; + } + + + + //UpdateCameraZoomInput(); + + + if(Event.current.rawType == EventType.ValidateCommand && Event.current.commandName == "UndoRedoPerformed"){ + Defocus(deselectNodes:false); + CheckForDirtyNodes(); // When undoing, some nodes will come back as dirty, which means they need to update their values + shaderEvaluator.ps.fChecker.UpdateAvailability(); + ResetRunningOutdatedTimer(); + } + + + if( nodes != null ) { + + //foreach( SF_Node n in nodes ) { + for( int i = 0; i < nodes.Count;i++ ) { + SF_Node n = nodes[i]; + + if( n == null ) { + // THIS MEANS YOU STARTED UNITY WITH SF OPEN + ForceClose(); + return; + } else{ + n.DrawConnections(); + } + } + + } + + if(separatorLeft == null){ + // THIS MEANS YOU STARTED UNITY WITH SF OPEN + ForceClose(); + return; + } + + + + + //EditorGUILayout.BeginHorizontal(); + //{ + //float wPreview = leftSeparator; + //float wNodeBrowser = 130; + + Rect pRect = new Rect( fullRect ); + pRect.height /= EditorGUIUtility.pixelsPerPoint; + pRect.width /= EditorGUIUtility.pixelsPerPoint; + pRect.width = separatorLeft.rect.x; + SF_GUI.FillBackground( pRect ); + DrawPreviewPanel( pRect ); + Rect previewPanelRect = pRect; + + //pRect.x += leftWidth; + //pRect.width = wSeparator; + //VerticalSeparatorDraggable(ref leftWidth, pRect ); + separatorLeft.MinX = 320; + separatorLeft.MaxX = (int)( fullRect.width / 2f - separatorLeft.rect.width ); + separatorLeft.Draw( (int)pRect.y, (int)pRect.height ); + pRect.x = separatorLeft.rect.x + separatorLeft.rect.width; + + + if(SF_Settings.showNodeSidebar) + pRect.width = separatorRight.rect.x - separatorLeft.rect.x - separatorLeft.rect.width; + else + pRect.width = Screen.width - separatorLeft.rect.x - separatorLeft.rect.width; + //GUI.Box( new Rect( 300, 0, 512, 32 ), pRect.ToString() ); + + if( SF_Debug.nodes ) { + Rect r = pRect; r.width = 256; r.height = 16; + for( int i = 0; i < nodes.Count; i++ ) { + GUI.Label( r, "Node[" + i + "] at {" + nodes[i].rect.x + ", " + nodes[i].rect.y + "}", EditorStyles.label ); // nodes[i] + r = r.MovedDown(); + } + } + + if( Event.current.rawType == EventType.KeyUp ){ + foreach(SF_EditorNodeData nd in nodeTemplates){ + nd.holding = false; + } + } + + + nodeView.OnLocalGUI( pRect.PadTop(TabOffset) ); // 22 when not docked, 19 if docked + //GUI.EndGroup(); + + //pRect.yMin -= 3; // if docked + + + + + + //pRect.x += pRect.width; + //pRect.width = wSeparator; + //VerticalSeparatorDraggable(ref rightWidth, pRect ); + if(SF_Settings.showNodeSidebar){ + separatorRight.MinX = (int)(fullRect.width / EditorGUIUtility.pixelsPerPoint) - 150; + separatorRight.MaxX = (int)(fullRect.width / EditorGUIUtility.pixelsPerPoint) - 32; + separatorRight.Draw( (int)pRect.y, (int)pRect.height ); + + pRect.x += pRect.width + separatorRight.rect.width; + pRect.width = (fullRect.width / EditorGUIUtility.pixelsPerPoint) - separatorRight.rect.x - separatorRight.rect.width; + + SF_GUI.FillBackground( pRect ); + nodeBrowser.OnLocalGUI( pRect ); + } + + + + + // Last thing, right? + + ssButtonColor = Color.Lerp(ssButtonColor,ssButtonColorTarget, (float)deltaTime*ssButtonFadeSpeed); + + if(previewPanelRect.Contains(Event.current.mousePosition)){ + + ssButtonColorTarget = Color.white; + ssButtonFadeSpeed = 0.4f; + + + } else { + ssButtonColorTarget = new Color(1f,1f,1f,0f); // TODO LERP + ssButtonFadeSpeed = 1.5f; + } + Rect ssRect = new Rect(8,previewButtonHeightOffset,32,19); + GUI.color = ssButtonColor; + if(GUI.Button(ssRect, SF_GUI.Screenshot_icon)){ + GenericMenu menu = new GenericMenu(); + menu.AddItem( new GUIContent("Take screenshot of node tree"), false, ContextClickScreenshot, "ss_standard" ); + menu.AddItem( new GUIContent("Take screenshot of node tree without 3D preview"), false, ContextClickScreenshot, "ss_nopreview" ); + menu.ShowAsContext(); + + } + GUI.color = Color.white; + + //Rect ssRectIcon = new Rect(0f, 0f, SF_GUI.Screenshot_icon.width, SF_GUI.Screenshot_icon.height); + ////ssRectIcon.center = ssRect.center; + //GUI.DrawTexture(ssRectIcon, SF_GUI.Screenshot_icon); + + + if(Event.current.type == EventType.Repaint) + UpdateCoroutines(); + + + DrawTooltip(); + + } + + + public void CheckForDirtyNodes(){ + + for(int i=0;i 0){ + shaderTitle = split[split.Length-1]; + } + } + } + + + + + + for(int ix=0;ix nodeRects = new List(); + List lines = new List(); + for(int i=0;i longestDist){ + longestDist = shortest; + longestDistPt = testPt; + //pixel = Color.red; + }// else { + //pixel = Color.white * Mathf.Clamp01(shortest/(Mathf.Max(nodeWrap.width,nodeWrap.height)*0.2f)); + //} + + + + //pixel.a = 1f; + //newMaskPixels[i] = pixel; + } + //mask.SetPixels(newMaskPixels); + //mask.Apply(); + radius = longestDist; + return longestDistPt; + } + + + + + // TOOLTIP, Draw this last + public void DrawTooltip() { + /* + if( !string.IsNullOrEmpty( GUI.tooltip ) ) { + //Debug.Log( "TOOLTIP" ); + GUIStyle tooltipStyle = EditorStyles.miniButton; + GUI.Box( + new Rect( + Event.current.mousePosition.x + 32, + Event.current.mousePosition.y, + tooltipStyle.CalcSize( new GUIContent( GUI.tooltip ) ).x * 1.1f, + tooltipStyle.CalcSize( new GUIContent( GUI.tooltip ) ).y * 1.2f + ), + GUI.tooltip, tooltipStyle + ); + } + GUI.tooltip = null;*/ + } + + public void Defocus(bool deselectNodes = false) { + //Debug.Log("DEFOCUS"); +// string currentFocus = GUI.GetNameOfFocusedControl(); +// if( currentFocus != "defocus"){ + GUI.FocusControl("null"); +// } + + if( deselectNodes ) + nodeView.selection.DeselectAll(registerUndo:true); + } + + + public bool DraggingAnySeparator() { + return separatorLeft.dragging || separatorRight.dragging; + } + + + + public void FlexHorizontal(Action func){ + GUILayout.BeginHorizontal(); GUILayout.FlexibleSpace(); + func(); + GUILayout.FlexibleSpace(); GUILayout.EndHorizontal(); + } + + public void FlexHorizontal(Action func, float width){ + GUILayout.BeginHorizontal(GUILayout.Width(width)); GUILayout.Space(Screen.width/2f - 335); + func(); + GUILayout.FlexibleSpace(); GUILayout.EndHorizontal(); + } + + + public static string updateCheck = ""; + public static bool outOfDate = false; + + public static void CheckForUpdates(){ + updateCheck = "Checking for updates..."; + //Debug.Log(updateCheck); + + WebClient wc = new WebClient(); + + string latestVersion; + + try{ + latestVersion = wc.DownloadString("http://www.acegikmo.com/shaderforge/latestversion.php"); + string[] split = latestVersion.Split('.'); + int latestMajor = int.Parse(split[0]); + int latestMinor = int.Parse(split[1]); + + if(latestMajor > SF_Tools.versionNumPrimary){ + outOfDate = true; + } else if(latestMajor == SF_Tools.versionNumPrimary && latestMinor > SF_Tools.versionNumSecondary){ + outOfDate = true; + } else { + outOfDate = false; + } + + if(outOfDate){ + updateCheck = "Shader Forge is out of date!\nYou are running " + SF_Tools.version + ", the latest version is " + latestVersion; + } else { + updateCheck = "Shader Forge is up to date!"; + } + + + + + } catch ( WebException e){ + updateCheck = "Couldn't check for updates: " + e.Status; + } + + + } + + + private enum MainMenuState{Main, Credits, PresetPick} + + private MainMenuState menuState = MainMenuState.Main; + + + public void DrawMainMenu() { + + + //SF_AllDependencies.DrawDependencyTree(new Rect(0f,0f,Screen.width,Screen.height)); + //return; + + if(string.IsNullOrEmpty(updateCheck)){ + CheckForUpdates(); + } + + GUILayout.BeginVertical(); + { + GUILayout.FlexibleSpace(); + + + FlexHorizontal(()=>{ + GUILayout.Label( SF_GUI.Logo ); + if(outOfDate) + GUI.color = Color.red; + GUILayout.Label( SF_Tools.versionStage + " v" + SF_Tools.version, EditorStyles.boldLabel ); + if(outOfDate) + GUI.color = Color.white; + }); + + + if(menuState == MainMenuState.Main){ + minSize = new Vector2(500,400); + DrawPrimaryMainMenuGUI(); + } else if( menuState == MainMenuState.PresetPick ) { + minSize = new Vector2( 128*(shaderPresetNames.Length + 1), 560 ); + DrawPresetPickGUI(); + } else if(menuState == MainMenuState.Credits){ + + //Vector2 centerPrev = position.center; + + minSize = new Vector2(740,560); + + //Rect rWnd = position; + //rWnd.center = new Vector2( 800,800); + //position = rWnd; + + + DrawCreditsGUI(); + } + + + + + GUILayout.FlexibleSpace(); + } + GUILayout.EndVertical(); + + + } + + public void DrawCreditsGUI(){ + EditorGUILayout.Separator(); + FlexHorizontal(()=>{ + GUILayout.Label( "Thanks for purchasing Shader Forge <3" ); + }); + EditorGUILayout.Separator(); + EditorGUILayout.Separator(); + FlexHorizontal(()=>{ + GUILayout.Label( "Created by ", SF_Styles.CreditsLabelText); + GUILayout.Label( "Freya 'Acegikmo' Holm" + '\u00e9' + "r", EditorStyles.boldLabel); + }); + EditorGUILayout.Separator(); + EditorGUILayout.Separator(); + FlexHorizontal(()=>{ + GUILayout.Label( "Special thanks:", EditorStyles.boldLabel ); + }); + CreditsLine("All of the alpha & beta testers","For their amazing feedback during the early days!" ); + CreditsLine( "Jenny 'sranine' Nordenborg", "For creating the Shader Forge logo and for supporting me throughout the development time!" ); + CreditsLine( "Peter Cornelius", "For convincing me that I should have started creating SF in the first place" ); + CreditsLine( "Robert Briscoe", "For actively testing SF and providing excellent feedback" ); + CreditsLine( "Thomas Pasieka", "For helping out immensely in getting the word out, as well as motivating me to continue" ); + CreditsLine( "Aras Pranckevi" +'\u010D'+ "ius", "For helping out with various shader code issues"); + CreditsLine( "Renaldas 'ReJ' Zioma", "For assisting in the Unity 5 transition" ); + CreditsLine( "Tim 'Stramit' Cooper & David 'Texel' Jones", "For giving helpful tips"); + CreditsLine( "Sander 'Zerot' Homan", "For helping out stealing Unity's internal RT code"); + CreditsLine( "Carlos 'Darkcoder' Wilkes", "For helping out with various serialization issues"); + CreditsLine( "Ville 'wiliz' Mäkynen", "For helping out with the undo system"); + CreditsLine( "Daniele Giardini", "For his editor window icon script (also, check out his plugin DOTween!)"); + CreditsLine( "Beck Sebenius", "For helping out getting coroutines to run in the Editor"); + CreditsLine( "James 'Farfarer' O'Hare", "For asking all the advanced shader questions on the forums so I didn't have to"); + CreditsLine( "Tenebrous", "For helping with... Something... (I can't remember)"); + CreditsLine( "Alex Telford", "For his fragment shader tutorials"); + CreditsLine( "Shawn White", "For helping out finding how to access compiled shaders from code"); + CreditsLine( "Colin Barr"+ '\u00e9' +"-Brisebois & Stephen Hill", "For their research on normal map blending"); + CreditsLine( "Andrew Baldwin", "For his articles on pseudorandom numbers" ); + + + EditorGUILayout.Separator(); + FlexHorizontal(()=>{ + if( GUILayout.Button( "Return to menu", GUILayout.Height( 30f ), GUILayout.Width( 190f ) ) ) { + menuState = MainMenuState.Main; + } + }); + } + + public void CreditsLine(string author, string reason){ + FlexHorizontal(()=>{ + GUILayout.Label( author, EditorStyles.boldLabel ); + GUILayout.Label(" - ", SF_Styles.CreditsLabelText ); + GUILayout.Label( reason, SF_Styles.CreditsLabelText ); + },400f); + } + + public enum ShaderPresets { Unlit, LitPBR, LitBasic, Custom, Sprite, ParticleAdditive, ParticleAlphaBlended, ParticleMultiplicative, Sky, PostEffect } + public string[] shaderPresetNames = new string[] { + "Unlit", + "Lit\n(PBR)", + "Lit\n(Basic)", + "Custom Lighting", + "Sprite", + "Particle\n(Additive)", + "Particle\n(Alpha-Blended)", + "Particle\n(Multiplicative)", + "Sky", + "Post-Effect" + }; + + public string[] shaderPresetShaders = new string[] { + "Unlit", + "PBR", + "Basic", + "CustomLighting", + "Sprite", + "ParticleAdditive", + "ParticleAlphaBlended", + "ParticleMultiplicative", + "Sky", + "PostEffect" + }; + + public string GetShaderPresetPath(ShaderPresets preset) { + int i = (int)preset; + string file = "preset" + shaderPresetShaders[i] + ".shader"; + return SF_Resources.InternalResourcesPath + "Shader Presets/" + file; + } + + + public string[] shaderPresetDescriptions = new string[] { + "Unlit means that light sources will not affect this shader, it will simply have the color you give it, regardless of the scene setup.", + "Lit (PBR) is set up to match Unity's Physically Based shader, affected by lightmaps, light probes, reflection probes etc.", + "Lit (Basic) is the old-school Blinn-Phong lighting model. Direct lighting only, no lightmap or probe data.", + "Custom Lighting is set up with a simple example of how you can create your own lighting models. The initial setup is a Blinn-Phong shader.", + "Sprite is for creating 2D shaders to be used on sprites. These will have the pixel-perfect option and sort properly with other 2D sprites.", + "Particle (Additive) is generally for glow effects, lightshafts, sparks etc. Primarily used in particle systems.", + "Particle (Alpha-Blended) is generally for debris effects, dusty smoke etc. Primarily used in particle systems.", + "Particle (Multiplicative) is generally for darkening effects, black smoke, evil-looking anti-glow etc. Primarily used in particle systems.", + "Sky is for creating shaders to be used with a sky material in your scene. It will render behind everything else.", + "Post-Effect is for creating shaders meant to render full-screen rather than at a position in the world, commonly used for post-process effects" + }; + + string desc = ""; + + public void DrawPresetPickGUI() { + + GUIStyle centerLabel = new GUIStyle( EditorStyles.boldLabel ); + GUIStyle centerLabelSmall = new GUIStyle( EditorStyles.miniLabel ); + centerLabel.alignment = centerLabelSmall.alignment = TextAnchor.MiddleCenter; + + + EditorGUILayout.Separator(); + FlexHorizontal( () => { + GUILayout.BeginVertical(); + GUILayout.Label( "What kind of shader do you want to forge?", centerLabel ); + GUI.color = new Color(1f,1f,1f,0.4f); + GUILayout.Label( "This will simply affect the initial configuration of the shader. It will not \"lock-in\" any features", centerLabelSmall ); + GUI.color = Color.white; + GUILayout.EndVertical(); + } ); + EditorGUILayout.Separator(); + + + + FlexHorizontal( () => { + + GUILayoutOption[] btnLayout = new GUILayoutOption[2] { GUILayout.Width( 128 ), GUILayout.Height( 128 ) }; + + GUIStyle style = new GUIStyle( EditorStyles.boldLabel ); + style.alignment = TextAnchor.UpperCenter; + + //if( Event.current.type == EventType.mouseMove) + //desc = ""; + + //GUILayout.BeginVertical(); + for(int i=0;i { + GUILayout.Label( desc, centerLabelSmall ); + }); + + EditorGUILayout.Separator(); + EditorGUILayout.Separator(); + + FlexHorizontal( () => { + if( GUILayout.Button( "Back" ) ) { + menuState = MainMenuState.Main; + } + } ); + + + + + } + + + public Texture2D GetShaderPresetIcon(ShaderPresets preset) { + + switch( preset ) { + + case ShaderPresets.Custom: + return SF_GUI.Shader_preset_icon_custom; + case ShaderPresets.LitBasic: + return SF_GUI.Shader_preset_icon_litbasic; + case ShaderPresets.LitPBR: + return SF_GUI.Shader_preset_icon_litpbr; + case ShaderPresets.ParticleAdditive: + return SF_GUI.Shader_preset_icon_particleadditive; + case ShaderPresets.ParticleAlphaBlended: + return SF_GUI.Shader_preset_icon_particlealphablended; + case ShaderPresets.ParticleMultiplicative: + return SF_GUI.Shader_preset_icon_particlemultiplicative; + case ShaderPresets.Sky: + return SF_GUI.Shader_preset_icon_sky; + case ShaderPresets.Sprite: + return SF_GUI.Shader_preset_icon_sprite; + case ShaderPresets.Unlit: + return SF_GUI.Shader_preset_icon_unlit; + case ShaderPresets.PostEffect: + return SF_GUI.Shader_preset_icon_posteffect; + + } + + Debug.LogError("No preset icon found"); + + return null; + + + } + + + public void DrawPrimaryMainMenuGUI(){ + + + + FlexHorizontal(()=>{ + GUI.color = new Color( 0.7f, 0.7f, 0.7f ); + if( GUILayout.Button( '\u00a9' + " Freya 'Acegikmo' Holm" + '\u00e9' + "r", EditorStyles.miniLabel ) ) { + Application.OpenURL("https://twitter.com/FreyaHolmer"); + } + + SF_GUI.AssignCursorForPreviousRect( MouseCursor.Link ); + GUI.color = Color.white; + }); + + EditorGUILayout.Separator(); + + /* + FlexHorizontal(()=>{ + if( GUILayout.Button(SF_Tools.manualLabel , GUILayout.Height( 32f ), GUILayout.Width( 190f ) ) ) { + Application.OpenURL( SF_Tools.manualURL ); + } + }); + */ + + FlexHorizontal(()=>{ + + if(SF_Tools.CanRunShaderForge()){ + if( GUILayout.Button( "New Shader", GUILayout.Width( 128 ), GUILayout.Height( 64 ) ) ) { + menuState = MainMenuState.PresetPick; + } + if( GUILayout.Button( "Load Shader", GUILayout.Width( 128 ), GUILayout.Height( 64 ) ) ) { + OpenLoadDialog(); + } + } else { + GUILayout.BeginVertical(); + SF_Tools.UnityOutOfDateGUI(); + GUILayout.EndVertical(); + } + }); + + + + FlexHorizontal(()=>{ + if( GUILayout.Button( "Polycount thread" ) ) { + Application.OpenURL( "http://www.polycount.com/forum/showthread.php?t=123439" ); + } + if( GUILayout.Button( "Unity thread" ) ) { + Application.OpenURL( "http://forum.unity3d.com/threads/222049-Shader-Forge-A-visual-node-based-shader-editor" ); + } + if( GUILayout.Button( SF_Tools.documentationLabel ) ) { + Application.OpenURL( SF_Tools.documentationURL ); + } + if( GUILayout.Button( "Wiki" ) ) { + Application.OpenURL( "http://acegikmo.com/shaderforge/wiki" ); + } + if( GUILayout.Button("Credits") ){ + menuState = MainMenuState.Credits; + } + }); + + + FlexHorizontal( () => { + if( GUILayout.Button( SF_Tools.bugReportLabel, GUILayout.Height( 32f ), GUILayout.Width( 180f ) ) ) { + Application.OpenURL( SF_Tools.bugReportURL ); + } + } ); + + FlexHorizontal( () => { + if( GUILayout.Button( "Forums", GUILayout.Height( 32f ), GUILayout.Width( 120f ) ) ) { + Application.OpenURL( "http://neatcorporation.com/forums/viewforum.php?f=1" ); + } + } ); + + EditorGUILayout.Separator(); + FlexHorizontal(()=>{ + GUILayout.Label(updateCheck); + }); + if(outOfDate){ + float t = (Mathf.Sin((float)EditorApplication.timeSinceStartup*Mathf.PI*2f)*0.5f)+0.5f; + GUI.color = Color.Lerp(Color.white, new Color(0.4f,0.7f,1f),t); + FlexHorizontal(()=>{ + if(GUILayout.Button("Download latest version")){ + Application.OpenURL( "https://www.assetstore.unity3d.com/#/content/14147" ); + } + }); + t = (Mathf.Sin((float)EditorApplication.timeSinceStartup*Mathf.PI*2f-1)*0.5f)+0.5f; + GUI.color = Color.Lerp(Color.white, new Color(0.4f,0.7f,1f),t); + FlexHorizontal(()=>{ + if(GUILayout.Button("What's new?")){ + Application.OpenURL( "http://acegikmo.com/shaderforge/changelog/" ); + } + }); + GUI.color = Color.green; + } + } + + + + public bool PropertyNameTaken(SF_ShaderProperty sProp){ + foreach(SF_Node n in nodes){ + if(n == sProp.node) + continue; + if(n.IsProperty()) + if(n.property.nameDisplay == sProp.nameDisplay || n.property.nameInternal == sProp.nameInternal) + return true; + } + return false; + } + + + public void OpenLoadDialog(){ + string path = EditorUtility.OpenFilePanel( + "Load Shader", + "Assets", + "shader" + ); + + if( string.IsNullOrEmpty( path ) ) { + //Debug.LogError("No path selected"); + return; + } else { + + // Found file! Make sure it's a shader + + path = SF_Tools.PathFromAbsoluteToProject( path ); + Shader loadedShader = (Shader)AssetDatabase.LoadAssetAtPath(path, typeof(Shader)); + if( loadedShader == null ) { + Debug.LogError( "Selected shader not found" ); + return; + } + + + + bool isSFshader = SF_Parser.ContainsShaderForgeData(loadedShader); + + bool allowEdit = isSFshader; + if(!allowEdit) + allowEdit = SF_GUI.AcceptedNewShaderReplaceDialog(); + + + if( allowEdit ) { + SF_Editor.Init( loadedShader ); + } else { + //Debug.LogError( "User cancelled loading operation" ); + } + + } + + } + + + + public bool TryCreateNewShader(SF_Editor.ShaderPresets preset) { + + + + + + //Shader s = (Shader)AssetDatabase.LoadAssetAtPath( presetPath, typeof(Shader) ); + //Debug.Log( s); + + + + string savePath = EditorUtility.SaveFilePanel( + "Save new shader", + "Assets", + "NewShader", + "shader" + ); + + if( string.IsNullOrEmpty( savePath ) ) { + return false; + } + + string presetPath = GetShaderPresetPath( preset ); + StreamReader presetReader = new StreamReader( Application.dataPath + presetPath.Substring( 6 ) ); + + // So we now have the path to save it, let's save + StreamWriter sw; + if( !File.Exists( savePath ) ) { + sw = File.CreateText( savePath ); + } else { + sw = new StreamWriter(savePath); + } + + // Read from preset + string[] presetLines = presetReader.ReadToEnd().Split( '\n' ); + for( int i=0; i < presetLines.Length; i++ ) { + if( presetLines[i].StartsWith( "Shader \"Hidden/" ) ) { + + // Extract name of the file to put in the shader path + string[] split = savePath.Split( '/' ); + currentShaderPath = split[split.Length - 1].Split( '.' )[0]; + currentShaderPath = "Shader Forge/" + currentShaderPath; + + // Write to the line + presetLines[i] = "Shader \"" + currentShaderPath + "\" {"; + + break; + } + } + + // Read from the preset + for( int i=0; i < presetLines.Length; i++ ) { + sw.WriteLine( presetLines[i] ); + } + + sw.Flush(); + sw.Close(); + presetReader.Close(); + AssetDatabase.Refresh(); + + // Shorten it to a relative path + string dataPath = Application.dataPath; + string assetPath = "Assets/" + savePath.Substring( dataPath.Length + 1 ); + + // Assign a reference to the file + currentShaderAsset = (Shader)AssetDatabase.LoadAssetAtPath( assetPath, typeof( Shader ) ); + + if( currentShaderAsset == null ) { + Debug.LogError( "Couldn't load shader asset" ); + Debug.Break(); + return false; + } + + + + // Make sure the preview material is using the shader + preview.InternalMaterial.shader = currentShaderAsset; + + // That's about it for the file/asset management. + //CreateOutputNode(); + SF_Editor.Init( currentShaderAsset ); + //shaderEvaluator.Evaluate(); // And we're off! + + //nodeView.CenterCamera(); + + return true; + } + + public string GetShaderFilePath() { + + if( currentShaderAsset == null ) { + Debug.LogError( "Tried to find path of null shader asset!" ); + Debug.Break(); + return null; + } + return AssetDatabase.GetAssetPath( currentShaderAsset ); + } + + public bool displaySettings = false; + + public void DrawPreviewPanel( Rect r ) { + // Left side shader preview + + //Rect logoRect = new Rect( 1, 0, SF_GUI.Logo.width, SF_GUI.Logo.height ); + + //GUI.DrawTexture( logoRect, SF_GUI.Logo ); + + Rect btnRect = new Rect(r); + btnRect.y += 4; + btnRect.x += 2; + //btnRect.xMin += logoRect.width; + + int wDiff = 8; + + btnRect.height = 17; + btnRect.width /= 4; + btnRect.width += wDiff; + + GUIStyle btnStyle = EditorStyles.miniButton; + + if(GUI.Button(btnRect,"Return to menu",btnStyle)){ + OnPressBackToMenuButton(); + } + btnRect.x += btnRect.width; + btnRect.xMax -= wDiff*2; + btnRect.width *= 0.75f; + displaySettings = GUI.Toggle(btnRect, displaySettings, "Settings",btnStyle); + + btnRect.x += btnRect.width; + btnRect.width *= 2f; + + GUI.color = SF_GUI.outdatedStateColors[(int)ShaderOutdated]; + if( GUI.Button( btnRect, "Compile shader", btnStyle ) ) { + if(nodeView.treeStatus.CheckCanCompile()) + shaderEvaluator.Evaluate(); + } + GUI.color = Color.white; + + nodeView.DrawRecompileTimer(btnRect); + btnRect.x += btnRect.width; + btnRect.width *= 0.5f; + + SF_Settings.autoCompile = GUI.Toggle( btnRect, SF_Settings.autoCompile, "Auto" ); + + btnRect.y += 4; + + + + // SETTINGS EXPANSION + if(displaySettings){ + btnRect.y += btnRect.height; + btnRect.x = r.x - 4; + btnRect.width = r.width / 4f; + btnRect.x += btnRect.width; + btnRect.width *= 2.55f; + + /*Rect[] splitRects = btnRect.SplitHorizontal( 0.5f, 1 ); // Node render mode control + GUI.Label( splitRects[1], "Node rendering" ); + EditorGUI.BeginChangeCheck(); + SF_Settings.nodeRenderMode = (NodeRenderMode)EditorGUI.EnumPopup( splitRects[0], SF_Settings.nodeRenderMode ); + if( EditorGUI.EndChangeCheck() ) { + RegenerateNodeBaseData(); + } + btnRect = btnRect.MovedDown();*/ + if( SF_Settings.nodeRenderMode == NodeRenderMode.Viewport ) { + EditorGUI.BeginDisabledGroup( true ); + GUI.Toggle( btnRect, true, "Real-time node rendering" ); + EditorGUI.EndDisabledGroup(); + } else { + EditorGUI.BeginChangeCheck(); + SF_Settings.realtimeNodePreviews = GUI.Toggle( btnRect, SF_Settings.realtimeNodePreviews, "Real-time node rendering" ); + if( EditorGUI.EndChangeCheck() ) { + RegenerateNodeBaseData(); + } + } + + btnRect = btnRect.MovedDown(); + SF_Settings.quickPickScrollWheel = GUI.Toggle( btnRect, SF_Settings.quickPickScrollWheel, "Use scroll in the quickpicker" ); + btnRect = btnRect.MovedDown(); + SF_Settings.showVariableSettings = GUI.Toggle( btnRect, SF_Settings.showVariableSettings, "Show variable name & precision" ); + btnRect = btnRect.MovedDown(); + SF_Settings.showNodeSidebar = GUI.Toggle( btnRect, SF_Settings.showNodeSidebar, "Show node browser panel" ); + btnRect = btnRect.MovedDown(); + if( SF_GUI.HoldingControl() ) { + EditorGUI.BeginDisabledGroup( true ); + GUI.Toggle( btnRect, !SF_Settings.hierarchalNodeMove, "Hierarchal Node Move" ); + EditorGUI.EndDisabledGroup(); + } else { + SF_Settings.hierarchalNodeMove = GUI.Toggle( btnRect, SF_Settings.hierarchalNodeMove, "Hierarchal Node Move" ); + } + + btnRect.y += 4; + } + + + + + //GUI.Box( new Rect(203,10,128,19), SF_Tools.versionStage+" "+SF_Tools.version, versionStyle ); + previewButtonHeightOffset = (int)btnRect.yMax + 24; + int previewOffset = preview.OnGUI( (int)btnRect.yMax, (int)r.width ); + int statusBoxOffset = statusBox.OnGUI( previewOffset, (int)r.width ); + + + ps.OnLocalGUI(statusBoxOffset, (int)r.width ); + if( SF_Debug.nodes ) { + GUILayout.Label( "Node count: " + nodes.Count ); + } + + } + + void RegenerateNodeBaseData() { + for( int i = 0; i < nodes.Count; i++ ) { + nodes[i].GenerateBaseData(); + } + } + + int previewButtonHeightOffset; + + public void OnPressBackToMenuButton(){ + shaderEvaluator.SaveShaderAsset(); + Close(); + Init(); + } + + + public void OnPressSettingsButton(){ + + } + + + + + + + + public void OnShaderEvaluated() { + // statusBox.UpdateInstructionCount( preview.InternalMaterial.shader ); + } + + + + public void CheckForBrokenConnections() { + foreach( SF_Node node in nodes ) + node.CheckForBrokenConnections(); + } + + } +} \ No newline at end of file diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/SF_Editor.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/SF_Editor.cs.meta new file mode 100644 index 00000000..f821e58c --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/SF_Editor.cs.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 74496bb1dec304ba59a268d77032e300 +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/SF_EditorNodeBrowser.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/SF_EditorNodeBrowser.cs new file mode 100644 index 00000000..f1ecce0c --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/SF_EditorNodeBrowser.cs @@ -0,0 +1,411 @@ +using UnityEngine; +using UnityEditor; +using System.Collections; +using System.Collections.Generic; + +namespace ShaderForge { + + [System.Serializable] + public class SF_EditorNodeBrowser : ScriptableObject { + + + [SerializeField] + public SF_Editor editor; + [SerializeField] + public Vector2 scrollPos; + + [SerializeField] + GUIStyle styleToolbar; + [SerializeField] + GUIStyle styleSearchField; + [SerializeField] + GUIStyle styleSearchCancel; + [SerializeField] + GUIStyle styleCategory; + [SerializeField] + GUIStyle styleButton; + + [SerializeField] + bool showFiltered = false; + //[SerializeField] SerializableDictionary> unfiltered; + //[SerializeField] SerializableDictionary> filtered; + [SerializeField] + List unfiltered; + [SerializeField] + List filtered; + + bool initializedStyles = false; + + [SerializeField] + SF_EditorNodeData dragNode = null; + + [SerializeField] + public string searchString = ""; + + + public SF_EditorNodeBrowser() { + initializedStyles = false; + } + + public void OnEnable() { + base.hideFlags = HideFlags.HideAndDontSave; + } + + + + + public SF_EditorNodeBrowser Initialize( SF_Editor editor ) { + this.editor = editor; + unfiltered = editor.nodeTemplates; + filtered = new List(); + dragNode = null; + return this; + } + + + public void CheckInitializeStyles() { + if( initializedStyles && styleCategory.fixedHeight == 24 && styleButton.fixedHeight == 24 ) + return; + InitializeStyles(); + } + + private void InitializeStyles() { + styleToolbar = new GUIStyle( GUI.skin.FindStyle( "Toolbar" ) ); + styleSearchField = new GUIStyle( GUI.skin.FindStyle( "ToolbarSeachTextField" ) ); + styleSearchCancel = new GUIStyle( GUI.skin.FindStyle( "ToolbarSeachCancelButton" ) ); + styleCategory = new GUIStyle( EditorStyles.toolbarButton ); + styleCategory.alignment = TextAnchor.MiddleLeft; + styleCategory.fixedHeight = 24; + styleCategory.fontStyle = FontStyle.Bold; + styleCategory.fontSize = 9; + styleCategory.margin.top = 0; + styleCategory.margin.bottom = 0; + + styleButton = new GUIStyle( GUI.skin.textField ); + styleButton.alignment = TextAnchor.MiddleLeft; + styleButton.normal.textColor = SF_GUI.ProSkin ? new Color( 0.8f, 0.8f, 0.8f ) : new Color( 0.2f, 0.2f, 0.2f ); + styleButton.fontSize = 10; + styleButton.fixedHeight = 24; + styleButton.fontSize = 10; + styleButton.margin.top = 0; + styleButton.margin.bottom = 0; + + initializedStyles = true; + } + + + + [SerializeField] + string prevString; + + [SerializeField] + string prevCategory; + + [SerializeField] + float innerHeight = 256; + + const string searchBoxName = "sf_search_box"; + + public void OnLocalGUI( Rect rect ) { + + if( IsPlacing() && Event.current.type == EventType.MouseUp && Event.current.button == 1 ) { + CancelDrag(); + Event.current.Use(); + } + + CheckInitializeStyles(); + //EditorGUIUtility.LookLikeInspector(); + + if( styleCategory.alignment != TextAnchor.MiddleLeft ) + InitializeStyles(); + + + Rect toolbarRect = new Rect( rect ); + toolbarRect.height = 19; + + + Rect searchRect = new Rect( toolbarRect ); + searchRect.width -= 19; + searchRect.y += 1; + + Rect searchCancelRect = new Rect( searchRect ); + searchCancelRect.x += searchCancelRect.width; + searchCancelRect.width = 19; + + // Command/ctrl + F // TODO + /* + if( SF_GUI.HoldingControl() && + Event.current.keyCode == KeyCode.F && + Event.current.type == EventType.keyDown && + GUI.GetNameOfFocusedControl() != searchBoxName){ + + Event.current.character = (char)0; // We're done using F now + Event.current.Use(); + GUI.FocusControl(searchBoxName); // Focus search field + Event.current.character = (char)0; // Stop! No more characters! Please! + } + */ + + + // Draw Toolbar + GUI.Box( toolbarRect, "", styleToolbar ); + + prevString = searchString.Trim(); + GUI.SetNextControlName( searchBoxName ); + searchString = EditorGUI.TextField( searchRect, searchString, styleSearchField ); + if( GUI.Button(searchCancelRect, "", styleSearchCancel ) ) { + searchString = ""; + GUI.FocusControl( null ); + } + if( searchString.Trim() != prevString ) + OnSearchStringChanged(); + + + + + + // Scroll view stuff + Rect panelRect = new Rect( rect ); + panelRect.yMin += toolbarRect.height - 1; + panelRect.height -= toolbarRect.height; + + Rect scrollRect = new Rect( panelRect ); + scrollRect.y = scrollPos.y; + + + + // Calc insides height + //Debug.Log(panelRect.height); + scrollRect.height = Mathf.Max( panelRect.height, innerHeight ); + scrollRect.width -= 15; + + Rect btnRect = new Rect( panelRect.x, panelRect.y - toolbarRect.height, rect.width - 16, styleCategory.fixedHeight ); + innerHeight = 0; + float innerStartY = 0f; + + scrollPos = GUI.BeginScrollView( panelRect, scrollPos, scrollRect, false, true /*GUILayout.Width( rect.wi )*/ ); + { + if(Event.current.type == EventType.Layout) + innerStartY = btnRect.y; + if( GetNodeList().Count > 0 ) { + foreach( SF_EditorNodeData entry in GetNodeList() ) { + + if( entry.category != prevCategory ) { + DrawCategory(entry.category, ref btnRect ); + prevCategory = entry.category; + } + + DrawButton( entry, ref btnRect ); + } + } else { + GUI.color = Color.gray; + GUI.Label(btnRect, "No nodes matched" ); + GUI.color = Color.white; + } + + if(Event.current.type == EventType.Layout){ + innerHeight = btnRect.yMax - innerStartY; + //Debug.Log ("Inner: " + innerHeight + ", Panel: " + panelRect.height); + } + + } + GUI.EndScrollView(); + + + + + UpdateDrag(); + + } + + public void DrawCategory( string label, ref Rect btnRect ) { + GUI.Label( btnRect, label + ":", styleCategory ); + btnRect.y += btnRect.height; + } + + public void DrawButton( SF_EditorNodeData entry, ref Rect btnRect ) { + GUI.color = entry.isProperty ? SF_Node.colorExposed : Color.white; + + bool usable = !(!entry.availableInDeferredPrePass && editor.ps.catLighting.renderPath == SFPSC_Lighting.RenderPath.Deferred); + + if(!usable){ + //GUI.color = Color.red; + GUI.enabled = false; + } + + bool mouseOver = btnRect.Contains(Event.current.mousePosition); + + + if(usable){ + if( dragNode == entry ) + GUI.color = SF_GUI.selectionColorBright; + else if( mouseOver && dragNode == null ) + GUI.color = SF_GUI.selectionColorBrighter; + } + + + GUI.Label( btnRect, (usable ? string.Empty : " ") + entry.nodeName, styleButton ); + + + if( mouseOver && Event.current.type == EventType.MouseDown && Event.current.button == 0 && usable) { + OnStartDrag( entry ); + } else if( Event.current.type == EventType.ContextClick ) { + Vector2 mousePos = Event.current.mousePosition; + if( btnRect.Contains( mousePos ) ) { + // Now create the menu, add items and show it + GenericMenu menu = new GenericMenu(); + editor.ResetRunningOutdatedTimer(); + //menu.AddItem( new GUIContent("Edit Comment"), false, ContextClick, "cmt_edit" ); + menu.AddItem( new GUIContent("What does " + entry.nodeName + " do?"), false, ContextClick, entry ); + menu.ShowAsContext(); + Event.current.Use(); + } + } + + + + GUI.color = Color.white; + if( entry.isNew || entry.isUnstable) { + GUIStyle miniStyle = new GUIStyle( EditorStyles.miniBoldLabel ); + miniStyle.alignment = TextAnchor.UpperRight; + miniStyle.normal.textColor = Color.red; + GUI.Label( btnRect, entry.isNew ? "New" : "Unstable", miniStyle ); + } + + if(usable){ + SF_GUI.AssignCursor( btnRect, MouseCursor.Pan ); + } else { + if(Event.current.type == EventType.Repaint){ + GUI.enabled = true; + SF_GUI.DrawLock(btnRect.PadTop(4),"Forward rendering only", TextAlignment.Right); + //Draw(btnRect.PadTop(4), false, true, true, false); // Draw lock + GUI.enabled = false; + } + } + GUI.enabled = true; + btnRect.y += btnRect.height; + } + + public void ContextClick( object o ) { + SF_EditorNodeData entry = o as SF_EditorNodeData; + SF_Web.OpenDocumentationForNode(entry); + } + + + + public void OnStartDrag( SF_EditorNodeData nodeData ) { + //if( IsPlacing() ) + // return; + //Debug.Log( "DRAG BUTTON: " + nodeData.name ); + dragNode = nodeData; + } + + public SF_Node OnStopDrag() { + if( !IsPlacing() ) + return null; + SF_Node newNode = null; + if(editor.nodeView.rect.Contains(Event.current.mousePosition)) + newNode = editor.AddNode( dragNode, registerUndo:true ); + dragNode = null; + return newNode; + } + + public void UpdateDrag() { + if( !IsPlacing() ) + return; + + editor.Repaint(); + + //Debug.Log( "Drag exists: " + ( dragNode != null ) + "\nDrag name: " + dragNode.name + "\nDrag type: " + dragNode.type.ToString() ); + + //float preScale = (float)(editor.separatorRight.rect.x - Event.current.mousePosition.x); + //preScale /= 48f; // Distance to animate in + //preScale = Mathf.Clamp01(preScale); + + //Rect boxRect = new Rect( 0, 0, SF_Node.NODE_SIZE, SF_Node.NODE_SIZE ).ScaleSizeBy(preScale).ClampSize((int)styleCategory.fixedHeight,SF_Node.NODE_SIZE); + Rect boxRect = new Rect( 0, 0, SF_Node.NODE_SIZE, SF_Node.NODE_SIZE ); + boxRect.center = Event.current.mousePosition; + + GUI.Box( boxRect, dragNode.nodeName ); + // Debug.Log( Event.current.type.ToString()); + if( Event.current.rawType == EventType.MouseUp ) + OnStopDrag(); + + + } + + public void CancelDrag() { + dragNode = null; + } + + public bool IsPlacing() { + if( dragNode == null ) + return false; + if( string.IsNullOrEmpty( dragNode.nodeName ) ) { + dragNode = null; + return false; + } + return true; + } + + + public bool DragButton( Rect r, string label, GUIStyle style ) { + bool clicked = ( Event.current.type == EventType.MouseDown && Event.current.button == 0 ); + GUI.Button( r, label, style ); + bool hover = r.Contains( Event.current.mousePosition ); + return ( hover && clicked ); + } + + + + public List GetNodeList() { + return showFiltered ? filtered : unfiltered; + } + + + public void OnSearchStringChanged() { + if( string.IsNullOrEmpty( searchString ) ) { + OnSearchStringCleared(); + return; + } + showFiltered = true; + + RefreshFilter(); + + } + + public void OnSearchStringCleared() { + showFiltered = false; + } + + + + public void RefreshFilter() { + filtered.Clear(); + + /*foreach( KeyValuePair> entry in unfiltered ) { + if( Match(entry.Key.name, searchString) ) { + filtered.Add(entry.Key,entry.Value); + } + }*/ + + foreach( SF_EditorNodeData entry in unfiltered ) { + if( Match( entry.nodeName, searchString ) ) { + filtered.Add( entry ); + } + } + + } + + private bool Match( string a, string b ) { + return Clean( a ).Contains( Clean( b ) ); + } + + private string Clean( string s ) { + return s.Trim().Replace( " ", string.Empty ).ToLower(); + } + + + + } +} \ No newline at end of file diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/SF_EditorNodeBrowser.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/SF_EditorNodeBrowser.cs.meta new file mode 100644 index 00000000..c5e497b0 --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/SF_EditorNodeBrowser.cs.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 8317eafd51c2b41ee9f29c20218164f3 +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/SF_EditorNodeData.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/SF_EditorNodeData.cs new file mode 100644 index 00000000..3fa7bb92 --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/SF_EditorNodeData.cs @@ -0,0 +1,354 @@ +using UnityEngine; +using System.Collections; +using System.Collections.Generic; +using System; + +namespace ShaderForge { + + [System.Serializable] + public class SF_EditorNodeData : ScriptableObject { + + [SerializeField] + KeyCode key; + [SerializeField] + public bool holding = false; + [SerializeField] + public string nodeName; + [SerializeField] + private string nodeNameSearch; + + public string SearchName{ + get{ + if(string.IsNullOrEmpty(nodeNameSearch)){ + return nodeName; + } else { + return nodeNameSearch; + } + } + set{ + nodeNameSearch = value; + } + } + + [SerializeField] + public string type; + [SerializeField] + public bool isNew = false; + [SerializeField] + public bool isUnstable = false; + [SerializeField] + public string fullPath; + [SerializeField] + public string category; + [SerializeField] + public bool isProperty = false; + [SerializeField] + public bool availableInDeferredPrePass = true; + + + + public SF_EditorNodeData() { + + } + + public void OnEnable() { + base.hideFlags = HideFlags.HideAndDontSave; + } + + public SF_EditorNodeData Initialize( string type, string fullPath, KeyCode key = KeyCode.None ) { + holding = false; + this.type = type; + ParseCategoryAndName( fullPath ); + this.key = key; + + if( type.Contains( "SFN_Color" ) || + type.Contains( "SFN_Cubemap" ) || + type.Contains( "SFN_Slider" ) || + type.Contains( "SFN_Tex2d" ) || + type.Contains( "SFN_Tex2dAsset" ) || + type.Contains( "SFN_Vector4Property" ) || + type.Contains( "SFN_ValueProperty" ) || + type.Contains( "SFN_ToggleProperty" ) || + type.Contains( "SFN_SwitchProperty" ) || + type.Contains( "SFN_Matrix4x4Property" ) + ) + isProperty = true; + + return this; + } + + public void ParseCategoryAndName(string fullPath) { + + this.fullPath = fullPath; + + string[] split = fullPath.Split( '/' ); + if( split.Length > 1 ) { + this.category = split[0]; + this.nodeName = split[1]; + } else { + this.nodeName = fullPath; + } + + } + + + public SF_Node CreateInstance() { + + Type fType = Type.GetType( type ); + + // Might be dynamic... + if( fType == null ) { + if(SF_Debug.dynamicNodeLoad) + Debug.Log( "CreateInstance couldn't use GetType, attempting dynamic load..." ); + fType = SF_Editor.GetNodeType( type ); + if( SF_Debug.dynamicNodeLoad && fType == null ) + Debug.Log( "Failed to load dynamic load fType is null" ); + } + + + SF_Node node = (SF_Node)ScriptableObject.CreateInstance( fType ); + node.Initialize(); + return node; + } + + public SF_EditorNodeData MarkAsNewNode() { + isNew = true; + return this; + } + + public SF_EditorNodeData MarkAsUnstableNode() { + isUnstable = true; + return this; + } + + public SF_EditorNodeData UavailableInDeferredPrePass(){ + availableInDeferredPrePass = false; + return this; + } + + public float smoothHotkeySelectorIndex = 0f; + public int defaultHotkeySelectorIndex = 0; + public int hotkeySelectorIndex = 0; + [SerializeField] + private List hotkeyFriends; + public List HotkeyFriends{ + get{ + if(hotkeyFriends == null){ + hotkeyFriends = new List(); + } + + if(hotkeyFriends.Count == 0){ + int i=0; + foreach( SF_EditorNodeData node in SF_Editor.instance.nodeTemplates){ + if(node == this) + smoothHotkeySelectorIndex = hotkeySelectorIndex = defaultHotkeySelectorIndex = i; + if(node.key == key || KeyCodeToChar(key) == char.ToUpper(node.nodeName[0])){ + hotkeyFriends.Add(node); + i++; + } + + } + } + return hotkeyFriends; + } + } + + + public char KeyCodeToChar(KeyCode kc){ + string s = kc.ToString(); + if(s.StartsWith("Alpha")) // Numbers 0 to 9 are called "Alpha5" etc. Extract just the numeral as the returned character + return s[5]; + return s[0]; + } + + [SerializeField] + private static GUIStyle popupButtonStyle; + public static GUIStyle PopupButtonStyle{ + get{ + if(popupButtonStyle == null){ + popupButtonStyle = new GUIStyle(SF_Styles.NodeStyle); + popupButtonStyle.alignment = TextAnchor.UpperLeft; + RectOffset ro = popupButtonStyle.padding; + ro.left = 4; + popupButtonStyle.padding = ro; + } + return popupButtonStyle; + } + } + + public Vector2 quickpickerStartPosition = Vector2.zero; + + public SF_EditorNodeData CheckHotkeyInput(bool mouseOverSomeNode) { + + bool mouseInNodeView = SF_Editor.instance.nodeView.MouseInsideNodeView(false); + + + if(Event.current.type == EventType.Repaint){ + smoothHotkeySelectorIndex = Mathf.Lerp(smoothHotkeySelectorIndex, hotkeySelectorIndex, 0.5f); + } + + bool useScroll = SF_Settings.quickPickScrollWheel; + + if(holding && Event.current.type == EventType.ScrollWheel && HotkeyFriends.Count > 0 && mouseInNodeView){ + + if(useScroll){ + hotkeySelectorIndex += (int)Mathf.Sign(Event.current.delta.y); + hotkeySelectorIndex = Mathf.Clamp(hotkeySelectorIndex, 0, HotkeyFriends.Count-1); + } + + + // hotkeySelectorIndex = ( hotkeySelectorIndex + HotkeyFriends.Count ) % HotkeyFriends.Count; // Wrap + Event.current.Use(); + } + + if( key == KeyCode.None ) + return null; + + if( Event.current.keyCode == key ) { + if( Event.current.type == EventType.KeyDown && !SF_GUI.HoldingControl() && holding == false && mouseInNodeView ){ + + hotkeySelectorIndex = defaultHotkeySelectorIndex; + smoothHotkeySelectorIndex = defaultHotkeySelectorIndex; + + quickpickerStartPosition = Event.current.mousePosition; + + holding = true; + } + if( Event.current.rawType == EventType.KeyUp ){ + holding = false; + } + } + + + + if(holding && !mouseOverSomeNode){ + + + + + float width = 166f; // nodeName.Length*8 + 10; + Rect dispPos = new Rect(0, 0, width, 36); + + Vector2 centerPos = useScroll ? Event.current.mousePosition : quickpickerStartPosition; + + dispPos.center = centerPos; + dispPos.y -= dispPos.height*0.3333f; + + // + //GUI.Box(dispPos, nodeName, GUI.skin.button); + // + + + + // Draw hotkey node picker + //if(Event.current.type == EventType.keyDown){ + //Debug.Log(Event.current.keyCode); + Rect nRect = dispPos; //new Rect(0,0,128,32); + nRect.center = centerPos - Vector2.up*nRect.height*0.3333f; + //nRect = nRect.MovedRight(); + if(useScroll) + nRect.y -= nRect.height * smoothHotkeySelectorIndex; + else + nRect.y -= nRect.height * defaultHotkeySelectorIndex; + //if(Event.current.keyCode != KeyCode.None){ + + Color prevCol = GUI.color; + + + + int i = 0; + foreach( SF_EditorNodeData node in HotkeyFriends){ + //float dist = Mathf.Abs(smoothHotkeySelectorIndex - i); + //float alpha = Mathf.Clamp(1f-Mathf.Clamp01(dist*0.25f), 0.2f, 0.8f); + + + float offset = 0f;//(dist*dist)/3f; + + + + + //if(i == hotkeySelectorIndex){ + //alpha = 1; + //offset -= 8f; + //GUI.Box(nRect, node.nodeName, PopupButtonStyle); + //} + Rect newNRect = nRect; + newNRect.x += offset; + + + if(!useScroll && newNRect.Contains(Event.current.mousePosition)){ + hotkeySelectorIndex = i; + } + + bool selected = (i == hotkeySelectorIndex); + + if( selected ) + GUI.color = new Color(1f,1f,1f,1f); + else + GUI.color = new Color(0.6f,0.6f,0.6f,0.5f); + + if(node.isProperty){ + GUI.color *= SF_Node.colorExposed; + } + + + Texture2D icon = SF_Resources.LoadNodeIcon( node.type.Split('.')[1].ToLower() ); + + if(icon != null){ + newNRect.width -= newNRect.height; + } + + //if(useScroll){ + GUI.Box(newNRect, node.nodeName, PopupButtonStyle); + //} else { + //if(GUI.Button(newNRect, node.nodeName, PopupButtonStyle)){ + //hotkeySelectorIndex = i; + //} + //} + + + + + if(icon != null){ + Rect iconRect = newNRect; + iconRect = iconRect.MovedRight(); + iconRect.width = iconRect.height; + GUI.color = selected ? Color.white : new Color(1f,1f,1f,0.4f); + GUI.DrawTexture(iconRect, icon); + + } + + + + + nRect = nRect.MovedDown(); + + i++; + } + GUI.color = prevCol; + + + + //} + if(Event.current.type == EventType.KeyDown/* && Event.current.type == EventType.layout*/ /*&& GUI.GetNameOfFocusedControl() == "defocus"*/){ + Event.current.Use(); + } + //} + + //} + + //GUI.Label(new Rect(Event.current.mousePosition.x, Event.current.mousePosition.y, 256,32),"currentindex = " + hotkeySelectorIndex); + } + + + + + bool clicked = Event.current.type == EventType.MouseDown; + if(holding && clicked){ + return HotkeyFriends[hotkeySelectorIndex]; + } else { + return null; + } + } + } +} \ No newline at end of file diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/SF_EditorNodeData.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/SF_EditorNodeData.cs.meta new file mode 100644 index 00000000..e60c3a1f --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/SF_EditorNodeData.cs.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 89068dde132014929a5aa4e450ff685b +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/SF_ErrorEntry.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/SF_ErrorEntry.cs new file mode 100644 index 00000000..1316d243 --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/SF_ErrorEntry.cs @@ -0,0 +1,66 @@ +using UnityEngine; +using System.Collections; + + +namespace ShaderForge { + [System.Serializable] + public class SF_ErrorEntry : ScriptableObject { + + public SF_Node node; + public SF_NodeConnector con; + public string error; + public bool isWarning; + public int rows = 1; + public System.Action action; + + void OnEnable() { + hideFlags = HideFlags.HideAndDontSave; + } + + + public static SF_ErrorEntry Create( string error, bool isWarning ) { + SF_ErrorEntry entry = ScriptableObject.CreateInstance(); + entry.isWarning = isWarning; + entry.error = error; + entry.InitializeRows(); + return entry; + } + + public static SF_ErrorEntry Create( string error, SF_Node target, bool isWarning ) { + SF_ErrorEntry entry = ScriptableObject.CreateInstance(); + entry.isWarning = isWarning; + entry.node = target; + entry.error = error; + entry.InitializeRows(); + return entry; + } + + public static SF_ErrorEntry Create( string error, SF_NodeConnector target, bool isWarning ) { + SF_ErrorEntry entry = ScriptableObject.CreateInstance(); + entry.isWarning = isWarning; + entry.con = target; + entry.node = target.node; + entry.error = error; + entry.InitializeRows(); + return entry; + } + + void InitializeRows() { + rows = Mathf.CeilToInt( error.Length / 50f ); + } + + public void OnPress() { + if( action != null ) { + action.Invoke(); + } + } + + public Texture2D icon { + get { + return isWarning ? SF_Styles.IconWarningSmall : SF_Styles.IconErrorSmall; + } + } + + } + +} diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/SF_ErrorEntry.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/SF_ErrorEntry.cs.meta new file mode 100644 index 00000000..07436f6f --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/SF_ErrorEntry.cs.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 14c91959058f04c62a8e3075652c4638 +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/SF_FeatureChecker.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/SF_FeatureChecker.cs new file mode 100644 index 00000000..25f42952 --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/SF_FeatureChecker.cs @@ -0,0 +1,141 @@ +using UnityEngine; +using System.Collections; + +namespace ShaderForge { + [System.Serializable] + public class SF_FeatureChecker : ScriptableObject { + + [SerializeField] + SF_PassSettings ps; + + [SerializeField] + public SF_Editor editor; + + public SF_FeatureChecker Initialize( SF_PassSettings ps, SF_Editor editor ) { + this.ps = ps; + this.editor = editor; + return this; + } + + public void OnEnable() { + base.hideFlags = HideFlags.HideAndDontSave; + } + + + + // Diffuse & Diffuse Power + // if light mode is not unlit + + // Specular & Gloss + // if light mode is !(Unlit || Lambert) + + // Transmission + // if light mode is not Unlit + + // Light Wrapping + // if light mode is not Unlit + + public void UpdateAvailability() { + + bool deferredPp = ps.catLighting.renderPath == SFPSC_Lighting.RenderPath.Deferred; + bool unlit = (ps.catLighting.lightMode == SFPSC_Lighting.LightMode.Unlit); + bool pbr = (ps.catLighting.lightMode == SFPSC_Lighting.LightMode.PBL); + bool lit = !unlit; + + // Diffuse makes these available: Transmission, Light Wrapping, Ambient lighting, Diffuse Power + bool diffConnected = editor.mainNode.diffuse.IsConnectedAndEnabled(); + bool specConnected = editor.mainNode.specular.IsConnectedAndEnabled(); + + bool bakedData = ps.catLighting.bakedLight; + bool usesAmbient = ps.catLighting.useAmbient; + bool ambDiffConnected = ps.HasAmbientDiffuse(); + bool ambSpecConnected = ps.HasAmbientSpecular(); + + + + editor.mainNode.diffuse.SetAvailable( lit ); + editor.mainNode.diffusePower.SetAvailable( lit && diffConnected && !deferredPp ); + editor.mainNode.specular.SetAvailable( lit ); + editor.mainNode.gloss.SetAvailable( lit && ( specConnected || ( diffConnected && pbr ) )); + editor.mainNode.normal.SetAvailable( true ); + editor.mainNode.alpha.SetAvailable( !deferredPp ); + editor.mainNode.alphaClip.SetAvailable( true ); + editor.mainNode.refraction.SetAvailable( !deferredPp ); + editor.mainNode.emissive.SetAvailable( true ); + editor.mainNode.transmission.SetAvailable( lit && diffConnected && !deferredPp ); + + + + + + editor.mainNode.diffuseOcclusion.SetAvailable( lit && diffConnected && ( bakedData || usesAmbient || ambDiffConnected ) ); + editor.mainNode.specularOcclusion.SetAvailable( lit && specConnected && ( bakedData || ambSpecConnected ) ); // Masks ambient spec & directional lightmaps + + editor.mainNode.ambientDiffuse.SetAvailable( lit && diffConnected); + editor.mainNode.ambientSpecular.SetAvailable( lit && specConnected ); + editor.mainNode.customLighting.SetAvailable( !lit && !deferredPp ); + + editor.mainNode.lightWrap.SetAvailable( lit && diffConnected && !deferredPp ); + editor.mainNode.displacement.SetAvailable( editor.mainNode.tessellation.IsConnectedAndEnabled() ); + editor.mainNode.outlineColor.SetAvailable( editor.mainNode.outlineWidth.IsConnectedAndEnabled() && !deferredPp ); + editor.mainNode.outlineWidth.SetAvailable( !deferredPp ); + + + // Rename labels based on which lighting mode you're using + if(ps.catLighting.lightMode == SFPSC_Lighting.LightMode.PBL){ + if( ps.catLighting.specularMode == SFPSC_Lighting.SpecularMode.Metallic ){ + editor.mainNode.diffuse.label = "Base Color"; + editor.mainNode.specular.label = "Metallic"; + } else { + editor.mainNode.diffuse.label = "Albedo"; + editor.mainNode.specular.label = "Specular"; + } + } else { + editor.mainNode.diffuse.label = "Diffuse"; + editor.mainNode.specular.label = "Specular"; + } + + // Metallic is 1 component, specular has 3 components + if(ps.catLighting.lightMode == SFPSC_Lighting.LightMode.PBL && ps.catLighting.specularMode == SFPSC_Lighting.SpecularMode.Metallic ){ + editor.mainNode.specular.valueTypeDefault = ValueType.VTv1; + editor.mainNode.specular.SetValueType( ValueType.VTv1 ); + editor.mainNode.specular.TypecastTo( 1 ); + } else { + editor.mainNode.specular.valueTypeDefault = ValueType.VTvPending; + editor.mainNode.specular.SetValueType( ValueType.VTvPending ); + editor.mainNode.specular.TypecastTo( 3 ); + } + + + if( ps.catLighting.glossRoughMode == SFPSC_Lighting.GlossRoughMode.Roughness ) { + editor.mainNode.gloss.label = "Roughness"; + } else { + editor.mainNode.gloss.label = "Gloss"; + } + + if( ps.catGeometry.vertexOffsetMode == SFPSC_Geometry.VertexOffsetMode.Relative ) { + editor.mainNode.vertexOffset.label = "Vertex Offset"; + } else if( ps.catGeometry.vertexOffsetMode == SFPSC_Geometry.VertexOffsetMode.Absolute ) { + editor.mainNode.vertexOffset.label = "Vertex Position"; + } + + + + + + //editor.materialOutput.anisotropicDirection.SetAvailable( false ); + //editor.materialOutput.worldPositionOffset.SetAvailable( false ); + + + } + + + + + + + + + + } +} diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/SF_FeatureChecker.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/SF_FeatureChecker.cs.meta new file mode 100644 index 00000000..6a77efe5 --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/SF_FeatureChecker.cs.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: e295e3262ddd14ff299ea932442b948f +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/SF_InstructionPass.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/SF_InstructionPass.cs new file mode 100644 index 00000000..1302e28b --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/SF_InstructionPass.cs @@ -0,0 +1,125 @@ +using UnityEngine; +using System.Collections; +using System.Collections.Generic; +using System; + +namespace ShaderForge{ + + + public class SFIns_PassPlat { + public RenderPlatform plat; + public SF_MinMax vert = new SF_MinMax( 0, 0 ); + public SF_MinMax frag = new SF_MinMax( 0, 0 ); + public SF_MinMax vTex = new SF_MinMax( 0, 0 ); + public SF_MinMax fTex = new SF_MinMax( 0, 0 ); + + public SFIns_PassPlat(RenderPlatform plat){ + this.plat = plat; + } + + } + + + public class SFIns_Pass { + + + public List plats = new List(){ + new SFIns_PassPlat(RenderPlatform.d3d9), + new SFIns_PassPlat(RenderPlatform.d3d11), + new SFIns_PassPlat(RenderPlatform.glcore), + new SFIns_PassPlat(RenderPlatform.gles), + new SFIns_PassPlat(RenderPlatform.gles3), + new SFIns_PassPlat(RenderPlatform.metal), + new SFIns_PassPlat(RenderPlatform.d3d11_9x), + new SFIns_PassPlat(RenderPlatform.xboxone), + new SFIns_PassPlat(RenderPlatform.ps4), + new SFIns_PassPlat(RenderPlatform.psp2), + new SFIns_PassPlat(RenderPlatform.n3ds), + new SFIns_PassPlat(RenderPlatform.wiiu) + }; + + public void Parse(ShaderProgram prog, string line, bool ignoreMin ) { + + //Debug.Log("Parsing instruction count: line = " + line); + + // String style: + // "// opengl - ALU: 29 to 35" + // "// opengl - ALU: 7 to 15, TEX: 1 to 3" + + string[] split = line.Split(new char[] {' '}, StringSplitOptions.RemoveEmptyEntries); + + if( split.Length != 7 && split.Length != 11 && split.Length != 15 ) { + Debug.LogError( "Error parsing instruction count. Line did not have 7, 11 or 15 elements [" + line + "]. Length is: " + split.Length ); + return; + } + + if( split[1] == "flash" ) { + Debug.LogWarning( "Flash is no longer supported by Unity, and was removed from the shader" ); + return; + } + + if( split[1] == "ps3" ) { + Debug.LogWarning( "PS3 is no longer supported by Unity since 5.5, and was removed from the shader" ); + return; + } + + if( split[1] == "xbox360" ) { + Debug.LogWarning( "Xbox 360 is no longer supported by Unity since 5.5, and was removed from the shader" ); + return; + } + + if( split[1] == "opengl" ) { + split[1] = "glcore"; + } + + bool hasTex = ( split.Length == 11 ); + + object enumObj = Enum.Parse( typeof( RenderPlatform ), split[1] ); + + int enumID; + + if(enumObj != null){ + enumID = (int)enumObj; + } else { + return; + } + + + + if( prog == ShaderProgram.Frag ) { + if( !ignoreMin ) + plats[enumID].frag.min = IntParse( split[4] ); + plats[enumID].frag.max = IntParse( split[6] ); + if( hasTex ) { + if( !ignoreMin ) + plats[enumID].fTex.min = IntParse( split[8] ); + plats[enumID].fTex.max = IntParse( split[10] ); + } + } else if( prog == ShaderProgram.Vert ) { + if( !ignoreMin ) + plats[enumID].vert.min = IntParse( split[4] ); + plats[enumID].vert.max = IntParse( split[6] ); + if( hasTex ) { + if( !ignoreMin ) + plats[enumID].vTex.min = IntParse( split[8] ); + plats[enumID].vTex.max = IntParse( split[10] ); + } + } else { + Debug.LogError( "Tried to parse things in invalid program [" + prog + "]" ); + } + + //Debug.Log("Instr: " + split[1] + " "+ prog + " " + line + " ig: " + ignoreMin); + + + } + + public int IntParse( string s ) { + s = s.Replace(",",""); + return int.Parse(s); + } + + + + } + +} \ No newline at end of file diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/SF_InstructionPass.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/SF_InstructionPass.cs.meta new file mode 100644 index 00000000..a5a0b16c --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/SF_InstructionPass.cs.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 31b9629aa3f2942e796d40d1277bab28 +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/SF_NodeConnectionLine.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/SF_NodeConnectionLine.cs new file mode 100644 index 00000000..1c3c6b49 --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/SF_NodeConnectionLine.cs @@ -0,0 +1,345 @@ +using UnityEngine; +using System.Collections; + + +namespace ShaderForge{ + + + [System.Serializable] + public class SF_NodeConnectionLine : ScriptableObject { + + + public SF_NodeConnector connector; + public SF_Editor editor; + + public bool aboutToBeDeleted = false; + + public Vector2[] pointsBezier0; + public Vector2[] pointsBezier1; + public Vector2[] pointsBezier2; + public Vector2[] pointsBezier3; + + public Vector2[] pointsLinear0; + public Vector2[] pointsLinear1; + public Vector2[] pointsLinear2; + public Vector2[] pointsLinear3; + + public Vector2[] pointsRectilinear0; + public Vector2[] pointsRectilinear1; + public Vector2[] pointsRectilinear2; + public Vector2[] pointsRectilinear3; + + public Vector2[] this[ConnectionLineStyle style, int id]{ + get{ + switch(style){ + case ConnectionLineStyle.Bezier: + switch(id){ + case 0: + return pointsBezier0; + case 1: + return pointsBezier1; + case 2: + return pointsBezier2; + case 3: + return pointsBezier3; + } + break; + case ConnectionLineStyle.Linear: + switch(id){ + case 0: + return pointsLinear0; + case 1: + return pointsLinear1; + case 2: + return pointsLinear2; + case 3: + return pointsLinear3; + } + break; + case ConnectionLineStyle.Rectilinear: + switch(id){ + case 0: + return pointsRectilinear0; + case 1: + return pointsRectilinear1; + case 2: + return pointsRectilinear2; + case 3: + return pointsRectilinear3; + } + break; + } + Debug.LogError("Invalid this[style,id] attempt on NodeConnectionLink = " + style + " and " + id); + return null; + } + set{ + switch(style){ + case ConnectionLineStyle.Bezier: + switch(id){ + case 0: + pointsBezier0 = value; + return; + case 1: + pointsBezier1 = value; + return; + case 2: + pointsBezier2 = value; + return; + case 3: + pointsBezier3 = value; + return; + } + return; + case ConnectionLineStyle.Linear: + switch(id){ + case 0: + pointsLinear0 = value; + return; + case 1: + pointsLinear1 = value; + return; + case 2: + pointsLinear2 = value; + return; + case 3: + pointsLinear3 = value; + return; + } + return; + case ConnectionLineStyle.Rectilinear: + switch(id){ + case 0: + pointsRectilinear0 = value; + return; + case 1: + pointsRectilinear1 = value; + return; + case 2: + pointsRectilinear2 = value; + return; + case 3: + pointsRectilinear3 = value; + return; + } + return; + } + Debug.LogError("Invalid this[style,id] set attempt on NodeConnectionLink = " + style + " and " + id); + //return null; + } + } + + + + public void OnEnable() { + base.hideFlags = HideFlags.HideAndDontSave; + } + + + public SF_NodeConnectionLine Initialize(SF_Editor editor, SF_NodeConnector connector){ + this.connector = connector; + this.editor = editor; + return this; + } + + public bool DeleteImminent(){ + + bool thisIsPendingInput = (connector.conType == ConType.cInput) && (SF_NodeConnector.pendingConnectionSource == connector); + + return aboutToBeDeleted || connector.IsDeleteHovering(false) || connector.inputCon.IsDeleteHovering(false) || thisIsPendingInput; + } + + + public void Draw(){ + + if(aboutToBeDeleted && !connector.IsConnected()){ // It's disconnected, don't mark it anymore + aboutToBeDeleted = false; + } + + if(!connector.IsConnected()) + return; + + if(Event.current.rawType != EventType.Repaint) + return; + + //Vector2 a = connector.GetConnectionPoint(); + //Vector2 b = connector.inputCon.GetConnectionPoint(); + int cc = connector.GetCompCount(); + bool isMatrix4x4 = ( cc == 16 ); + if( isMatrix4x4 ) { + cc = 1; + } + + Color color = DeleteImminent() ? new Color(1f,0f,0f,0.7f) : connector.GetConnectionLineColor(); + + // TEMP: + ReconstructShapes(); + + //GUILines.DrawStyledConnection( editor, a, b, cc, color); + + + //switch(SF_Settings.ConnectionLineStyle){ + //case ConnectionLineStyle.Bezier: + if( isMatrix4x4 ) { + //GUILines.DrawMatrixConnection( editor, connector.GetConnectionPoint(), connector.inputCon.GetConnectionPoint(), color ); + GUILines.DrawLines( editor, this[ConnectionLineStyle.Bezier, 0], color, GetConnectionWidth(), true ); + GUILines.DrawLines( editor, this[ConnectionLineStyle.Bezier, 1], color, GetConnectionWidth(), true, true ); + GUILines.DrawLines( editor, this[ConnectionLineStyle.Bezier, 2], color, GetConnectionWidth(), true ); + } else { + for( int i=0; i < cc; i++ ) { + GUILines.DrawLines( editor, this[ConnectionLineStyle.Bezier, i], color, GetConnectionWidth(), true ); + } + } + + //break; + //} + + + + } + + const float partOffsetFactor = 10f; + const float connectionWidth = 2f; + const int bezierSegments = 25; + + + private float GetConnectionWidth(){ + return DeleteImminent() ? 4f : connectionWidth; + } + + + + //Vector2 lastUpdatePosStart = Vector2.zero; + //Vector2 lastUpdatePosEnd = Vector2.zero; + //float lastUpdateCC = 0; + + + public void ReconstructShapes(){ + + + + //if( Event.current.type != EventType.repaint ) // To trigger it before painting! + // return; + + + float cc = connector.GetCompCount(); + if( cc == 16 ) + cc = 3; + + + + + //if( cc != lastUpdateCC ) { + // lastUpdateCC = cc; + // needsUpdate = true; + //} + + //Vector2 curPosStart = connector.inputCon.node.rect.position; + //Vector2 curPosEnd = connector.node.rect.position; + + //if( lastUpdatePosStart != curPosStart ) { + // lastUpdatePosStart = curPosStart; + // needsUpdate = true; + //} + + //if( lastUpdatePosEnd != curPosEnd ) { + // lastUpdatePosEnd = curPosEnd; + // needsUpdate = true; + //} + + + //if( needsUpdate ) { + //Debug.Log("Updating"); + float partOffset = partOffsetFactor / cc; + float mainOffset = -( cc - 1 ) * 0.5f * partOffset; + + float offset = 0; + + for( int i=0; i < cc; i++ ) { + offset = mainOffset + partOffset * i; + + + // TODO: Style branching + ReconstructBezier( offset, i ); + + + } + //} + + + //Debug.Log(this[ConnectionLineStyle.Bezier,0][0].ToString()); + + + + + } + + + + private void ReconstructBezier(float offset, int id){ + this[ConnectionLineStyle.Bezier,id] = GUILines.ConnectionBezierOffsetArray( + offset, + connector, + connector.inputCon, + bezierSegments + ); + } + + public bool Intersects(Vector2 p0, Vector2 p1, out Vector2 intersection){ + intersection = Vector2.zero; + +// p0 = editor.nodeView.ZoomSpaceToScreenSpace(p0); +// p1 = editor.nodeView.ZoomSpaceToScreenSpace(p1); + p0 = editor.nodeView.ZoomSpaceToScreenSpace(p0); + p1 = editor.nodeView.ZoomSpaceToScreenSpace(p1); // Double, for whatever reason + + float cc = connector.GetCompCount(); + if( cc == 16 || cc == 0 ) // Matrices + cc = 1; + + if(cc == 1){ + if(SF_Tools.LineIntersection(p0, p1, this[0, 0], out intersection)){ + return true; + } + } else if( cc == 2){ + + Vector2 intA = Vector2.zero; + Vector2 intB = Vector2.zero; + + bool hitA = SF_Tools.LineIntersection(p0, p1, this[0, 0], out intA); + bool hitB = SF_Tools.LineIntersection(p0, p1, this[0, 1], out intB); + + if(hitA && hitB){ + intersection = (intA + intB)/2; + return true; + } + + } else if(cc == 3){ + if(SF_Tools.LineIntersection(p0, p1, this[0, 1], out intersection)){ + return true; + } + }else if( cc == 4){ + + Vector2 intA = Vector2.zero; + Vector2 intB = Vector2.zero; + + bool hitA = SF_Tools.LineIntersection(p0, p1, this[0, 1], out intA); + bool hitB = SF_Tools.LineIntersection(p0, p1, this[0, 2], out intB); + + if(hitA && hitB){ + intersection = (intA + intB)/2; + return true; + } + } + + return false; + + + } + + + + + + } + +} diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/SF_NodeConnectionLine.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/SF_NodeConnectionLine.cs.meta new file mode 100644 index 00000000..4ca83b88 --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/SF_NodeConnectionLine.cs.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 584792dc3e3b749a5adc8f6fa95aad34 +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/SF_NodeConnector.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/SF_NodeConnector.cs new file mode 100644 index 00000000..3438816e --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/SF_NodeConnector.cs @@ -0,0 +1,1217 @@ +using UnityEngine; +using UnityEditor; +using System.Collections; +using System.Collections.Generic; +using System.Reflection; +using System; + + +namespace ShaderForge { + + public enum ConType { cInput, cOutput }; + public enum OutChannel { RGB, R, G, B, A, All, RG }; + + public enum EnableState { Enabled, Disabled, Hidden }; + public enum AvailableState { Available, Unavailable }; + + public enum LinkingMethod { Default, NoUpdate }; + + public enum ValueType { VTvPending, VTv1, VTv2, VTv3, VTv4, VTv1v2, VTv1v3, VTv1v4, TexAsset, VTm4x4, VTv4m4x4 }; + + [System.Serializable] + public class SF_NodeConnector : ScriptableObject { + + + public static SF_NodeConnector pendingConnectionSource = null; + public AvailableState availableState = AvailableState.Available; + public EnableState enableState = EnableState.Enabled; + public bool required = false; + + public ConType conType; + public OutChannel outputChannel = OutChannel.All; + public ValueType valueType; + public ValueType valueTypeDefault; + [SerializeField] + private CustomValueType customValueType; + public CustomValueType CustomValueType{ // This is used when dealing with custom nodes + get{ + return customValueType; + } + set{ + CustomValueType cvtBef = customValueType; + customValueType = value; + bool changed = (customValueType != cvtBef); + if(changed){ + switch(customValueType){ + case CustomValueType.Float: + this.TypecastTo(1).WithColor(SF_NodeConnector.colorEnabledDefault).SetValueType(this.valueTypeDefault = ValueType.VTv1); + break; + case CustomValueType.Float2: + this.TypecastTo(2).WithColor(SF_NodeConnector.colorEnabledDefault).SetValueType(this.valueTypeDefault = ValueType.VTv2); + break; + case CustomValueType.Float3: + this.TypecastTo(3).WithColor(SF_NodeConnector.colorEnabledDefault).SetValueType(this.valueTypeDefault = ValueType.VTv3); + break; + case CustomValueType.Float4: + this.TypecastTo(4).WithColor(SF_NodeConnector.colorEnabledDefault).SetValueType(this.valueTypeDefault = ValueType.VTv4); + break; + case CustomValueType.Half: + this.TypecastTo(1).WithColor(SF_NodeConnector.colorEnabledDefault).SetValueType(this.valueTypeDefault = ValueType.VTv1); + break; + case CustomValueType.Half2: + this.TypecastTo(2).WithColor(SF_NodeConnector.colorEnabledDefault).SetValueType(this.valueTypeDefault = ValueType.VTv2); + break; + case CustomValueType.Half3: + this.TypecastTo(3).WithColor(SF_NodeConnector.colorEnabledDefault).SetValueType(this.valueTypeDefault = ValueType.VTv3); + break; + case CustomValueType.Half4: + this.TypecastTo(4).WithColor(SF_NodeConnector.colorEnabledDefault).SetValueType(this.valueTypeDefault = ValueType.VTv4); + break; + case CustomValueType.Fixed: + this.TypecastTo(1).WithColor(SF_NodeConnector.colorEnabledDefault).SetValueType(this.valueTypeDefault = ValueType.VTv1); + break; + case CustomValueType.Fixed2: + this.TypecastTo(2).WithColor(SF_NodeConnector.colorEnabledDefault).SetValueType(this.valueTypeDefault = ValueType.VTv2); + break; + case CustomValueType.Fixed3: + this.TypecastTo(3).WithColor(SF_NodeConnector.colorEnabledDefault).SetValueType(this.valueTypeDefault = ValueType.VTv3); + break; + case CustomValueType.Fixed4: + this.TypecastTo(4).WithColor(SF_NodeConnector.colorEnabledDefault).SetValueType(this.valueTypeDefault = ValueType.VTv4); + break; + case CustomValueType.Sampler2D: + this.TypecastTo(0).WithColor(SF_Node.colorExposed).SetValueType(this.valueTypeDefault = ValueType.TexAsset); + break; + case CustomValueType.Matrix4x4: + this.TypecastTo(0).WithColor(SF_NodeConnector.colorEnabledDefault).SetValueType(this.valueTypeDefault = ValueType.VTm4x4); + break; + } + + } + + + } + + } + public string label; + public SF_NodeConnector inputCon; + public SF_NodeConnectionLine conLine; + public List outputCons; + public SF_Node node; + public bool outerLabel = false; + public bool displayLockIfDeferredPrePassIsOn = false; + public Rect rect; + public int typecastTarget = 0; // 0 = No typecasting + + public int usageCount = 1; + + public string strID = null; + + [SerializeField] + private ShaderProgram forcedProgram = ShaderProgram.Any; + + [SerializeField] + private List skipPasses; + public List SkipPasses{ + get{ + if(skipPasses == null) + skipPasses = new List(); + return skipPasses; + } + } + + public static Color colorEnabledDefault{ + get{ + if(SF_GUI.ProSkin) + return new Color( 0.6f, 0.6f, 0.6f ); + else + return new Color( 1f, 1f, 1f ); + } + } + public Color color; + public string unconnectedEvaluationValue = null; + + public void OnEnable() { + base.hideFlags = HideFlags.HideAndDontSave; + if(color == default(Color)) + color = colorEnabledDefault; + } + + public SF_NodeConnector() { + //Debug.Log("NODE CONNECTION "); + } + + + public static SF_NodeConnector Create( SF_Node node, string strID, string label, ConType conType, ValueType valueType, bool outerLabel = false, string unconnectedEvaluationValue = null ) { + return ScriptableObject.CreateInstance< SF_NodeConnector>().Initialize(node, strID, label, conType,valueType, outerLabel, unconnectedEvaluationValue); + } + + public SF_NodeConnector Initialize( SF_Node node, string strID, string label, ConType conType, ValueType valueType, bool outerLabel = false, string unconnectedEvaluationValue = null ) { + this.node = node; + this.strID = strID; + this.label = label; + this.conType = conType; + + if(conType == ConType.cInput){ + conLine = ScriptableObject.CreateInstance().Initialize(node.editor, this); + } + + this.valueType = this.valueTypeDefault = valueType; + this.outerLabel = outerLabel; + this.unconnectedEvaluationValue = unconnectedEvaluationValue; + outputCons = new List(); + return this; + } + + // Chaining + public SF_NodeConnector SetRequired( bool b ) { + required = b; + return this; + } + public SF_NodeConnector WithColor( Color c ) { + color = c; + return this; + } + public SF_NodeConnector Outputting( OutChannel channel ) { + outputChannel = channel; + return this; + } + public SF_NodeConnector TypecastTo(int target) { + typecastTarget = target; + //Debug.Log("Typecasting " + label + " to " + target); + return this; + } + public SF_NodeConnector WithUseCount(int count){ + usageCount = count; + return this; + } + public SF_NodeConnector Skip( params PassType[] passes ) { + SkipPasses.AddRange( passes ); + return this; + } + public SF_NodeConnector ForceBlock(ShaderProgram block) { + forcedProgram = block; + return this; + } + public SF_NodeConnector DisplayLockIfDeferredPrePassIsOn(){ + displayLockIfDeferredPrePassIsOn = true; + return this; + } + + public SF_NodeConnector visControlChild; + public SF_NodeConnector visControlParent; + public SF_NodeConnector SetVisChild(SF_NodeConnector child){ // Used to make enable-chains (Connecting B enables the C connector etc) + visControlChild = child; + child.visControlParent = this; + child.enableState = EnableState.Hidden; + return this; + } + + public void SetVisChildVisible(bool visible){ + + if(visControlChild == null){ + return; + } + + EnableState targetState = visible ? EnableState.Enabled : EnableState.Hidden; + + if(visControlChild.enableState == targetState) + return; // Don't do anything if unchanged + + + if(!visible){ + visControlChild.Disconnect(true,false); // Disconnect if it goes invisible when linked + } + + visControlChild.enableState = targetState; + + } + + + + + public string ghostType = null; + public string ghostLinkStrId = null; + public SF_NodeConnector SetGhostNodeLink( Type ghostType, string ghostLinkStrId ) { + this.ghostType = ghostType.FullName; + this.ghostLinkStrId = ghostLinkStrId; + return this; + } + + + // Ghost nodes are default values assigned to unconnected node connectors + // They are instantiated when the shader is being evaluated, and then removed again + public void DefineGhostIfNeeded(ref List ghosts) { + + + // Skip nodes without ghosts + if( string.IsNullOrEmpty(ghostType) ) { + return; + } + + + if( IsConnected() ) // Skip already connected ones + return; + + + SF_Node ghost = null; + + // Search for existing ghost node + foreach( SF_Node exisGhost in ghosts ) { + if( exisGhost.GetType().FullName == ghostType ) { // TODO: Make sure serialized data matches too! + // Found! + ghost = exisGhost; + + if(SF_Debug.ghostNodes) + Debug.Log("Found matching existing ghost"); + break; + } + } + + // If no ghost was found, create one + if( ghost == null ) { + ghost = node.editor.AddNode( ghostType ); + ghost.isGhost = true; + ghosts.Add( ghost ); + if(SF_Debug.ghostNodes){ + Debug.Log("Adding ghost " + ghostType + " with connection count " + ghost.connectors.Length); + Debug.Log("Linked to " + node.nodeName + "["+this.label+"]" ); + Debug.Log("Ghost Count = " + node.editor.shaderEvaluator.ghostNodes.Count); + } + //Debug.Log( "Adding ghost of type " + ghostType ); + //Debug.Log( "Ghost in main node list = " + node.editor.nodes.Contains( ghost ) ); + } + + // Just to make sure... + if( ghost == null ) { + Debug.LogError( "Ghost is null, this should really not happen. Tried to find type " + ghostType ); + } + + // By this point, ghost is surely an existing node! + // Link it: + + //Debug.Log( "Linking ghost of type " + ghostType + " on " + this.node.nodeName + " Is COnnected = " + IsConnected()); + ghost.status.leadsToFinal = true; + ghost[ghostLinkStrId].LinkTo(this,LinkingMethod.NoUpdate); + + } + + // Get the index of this connector in the node array + public string GetIndex() { + if( this.HasID() ) + return strID; + for( int i = 0; i < node.connectors.Length; i++ ) + if( node.connectors[i] == this ) + return i.ToString(); + Debug.LogError( "Couldn't find index of a connector in " + node.nodeName ); + return "0"; + } + + public bool DisplayLock(){ + return displayLockIfDeferredPrePassIsOn && node.editor.ps.catLighting.renderPath == SFPSC_Lighting.RenderPath.Deferred; + } + + public bool HasID() { + return !string.IsNullOrEmpty( strID ); + } + + + public ShaderProgram GetProgram() { + if( forcedProgram == ShaderProgram.Any ) + return node.program; + return forcedProgram; + } + + + public int GetCompCount() { + + + if( conType == ConType.cInput){ + if( IsConnected() ) { + return inputCon.GetCompCount(); + } else { + int cc = 0; + if(SF_Tools.CompCountOf(valueType, out cc)){ + return cc; + } else { + Debug.LogWarning("[Shader Forge] - invalid component count in ["+label+"] of " + node.name + ""); + return node.texture.CompCount; // This is super weird, shouldn't read from the max comp count, read from the connection type instead + } + } + + } + + + + OutChannel oc = outputChannel; + if( oc == OutChannel.All ){ + + int cc = 0; + if(SF_Tools.CompCountOf(valueType, out cc)){ + return cc; + } else { + Debug.LogWarning("[Shader Forge] - invalid component count in ["+label+"] of " + node.name + ""); + return node.texture.CompCount; // This is super weird, shouldn't read from the max comp count, read from the connection type instead + } + + } else if( oc == OutChannel.RGB ) + return 3; + if( oc == OutChannel.RG ) + return 2; + + int custCount = SF_Tools.ComponentCountOf(customValueType); + if(custCount != 0){ + return custCount; + } + + return 1; + } + + + + + public string Evaluate() { + + string s = node.PreEvaluate(); + + switch( outputChannel ) { + case OutChannel.RGB: + return s + ".rgb"; + case OutChannel.RG: + return s + ".rg"; + case OutChannel.R: + return s + ".r"; + case OutChannel.G: + return s + ".g"; + case OutChannel.B: + return s + ".b"; + case OutChannel.A: + return s + ".a"; + } + + return s; + + } + + + public bool IsConnected() { + if( conType == ConType.cInput ) { + return inputCon != null; + } else { + if( outputCons == null ) + return false; + return ( outputCons.Count != 0 ); + } + + } + + public bool IsConnectedAndEnabled() { + return IsConnected() && (enableState == EnableState.Enabled || enableState == EnableState.Hidden); + } + + public bool IsConnectedEnabledAndAvailable(){ + return IsConnected() && ( enableState == EnableState.Enabled || enableState == EnableState.Hidden ) && availableState == AvailableState.Available; + } + + public bool IsConnectedEnabledAndAvailableInThisPass(PassType pass){ + if(SkipPasses.Contains(pass)){ + return false; + } + return IsConnectedEnabledAndAvailable(); + } + + + + public bool ConnectionInProgress() { + return ( SF_NodeConnector.pendingConnectionSource == this && IsConnecting() ); + } + + public static bool IsConnecting() { + if( SF_NodeConnector.pendingConnectionSource == null ) + return false; + /*else if( string.IsNullOrEmpty( SF_NodeConnection.pendingConnectionSource.node.name ) ) { + SF_NodeConnection.pendingConnectionSource=null; + return false; + }*/ + + return true; + } + + public bool Hovering(bool world) { + if( !node.editor.nodeView.MouseInsideNodeView(offset:world) ) + return false; + Rect r = SF_Tools.GetExpanded( rect, SF_Tools.connectorMargin ); + return r.Contains( world ? Event.current.mousePosition : MousePos() ); + } + + + + public bool Clicked(int button = 0) { + + + bool hovering = Hovering(world:false); + bool click = ( Event.current.type == EventType.MouseDown && Event.current.button == button ); + bool clickedCont = hovering && click; + //bool clickedCont=cont&&click; + //Debug.Log(); + return clickedCont; + } + + public bool Released() { + bool cont = Hovering(world:false); + bool release = ( Event.current.type == EventType.MouseUp ); + return cont && release; + } + + + public void OnClick() { + Debug.Log( "Clicked Button" ); + } + + public Vector2 MousePos() { + if( node.editor == null ) + return Vector2.zero; + return node.editor.nodeView.GetNodeSpaceMousePos(); + } + + // TODO: Pass nodes into actual line draw thingy + public float GetConnectionCenterY( SF_NodeConnector cA, SF_NodeConnector cB ) { + Rect a = cA.node.rect; + Rect b = cB.node.rect; + if( cA.GetConnectionPoint().y > cB.GetConnectionPoint().y ) + return 0.5f * ( a.yMax + b.yMin ); + else + return 0.5f * ( b.yMax + a.yMin ); + } + + public void CheckConnection( SF_Editor editor ) { + + + + if(ShouldBeInvisible()) + return; + + + + + if( conType == ConType.cInput && Event.current.type == EventType.Repaint ) { + DrawConnection( editor ); + } + + if( enableState == EnableState.Disabled || availableState == AvailableState.Unavailable ) + return; + + if( Clicked() ) { + SF_NodeConnector.pendingConnectionSource = this; + editor.nodeView.selection.DeselectAll(registerUndo:false); + foreach( SF_Node iNode in editor.nodes ) { + foreach( SF_NodeConnector con in iNode.connectors ) { + con.UpdateCanValidlyConnectToPending(); + } + } + Event.current.Use(); + } + + if( Clicked(1) && SF_GUI.HoldingAlt()){ + Disconnect(); + } + + if( !ConnectionInProgress() ) { + if( Released() ) + TryMakeConnection(); + return; + } + + + // Active connection: + + editor.ResetRunningOutdatedTimer(); + + //if(Event.current.type == EventType.repaint) + //node.Repaint(); + + + bool hovering = false; + foreach(SF_Node n in editor.nodes){ + foreach(SF_NodeConnector con in n.connectors){ + if(con.CanConnectToPending() && con.Hovering(false)){ + hovering = true; + break; + } + } + if(hovering) + break; + } + + if( Event.current.type == EventType.Repaint ) { + Color c = hovering ? Color.green : GetConnectionLineColor(); + + bool input = ( conType == ConType.cInput ); + Vector2 start = input ? GetConnectionPoint() : MousePos(); + Vector2 end = input ? MousePos() : GetConnectionPoint(); ; + + if( valueType == ValueType.VTm4x4 || valueType == ValueType.VTv4m4x4 ) { + GUILines.DrawMatrixConnection( editor, start, end, c ); + } else { + GUILines.DrawStyledConnection( editor, start, end, GetCompCount(), c ); + } + } + + + + + //Drawing.DrawLine(rect.center,MousePos(),Color.white,2,true); + + + } + + public Color GetConnectionLineColor() { + + Color def = EditorGUIUtility.isProSkin ? new Color( 1f, 1f, 1f, 0.3f ) : new Color( 0f, 0f, 0f, 0.4f ); + + + + + Color sel = SF_GUI.selectionColor; + + if( inputCon == null ) + return def; + else if( inputCon.color == SF_Node.colorExposed ) + def = SF_Node.colorExposedDark; + + if( node.selected || inputCon.node.selected ) + return sel; + + + if( !DisplayAsValid() ) + def.a = 0.1f; + + return def; + } + + void DrawConnection( SF_Editor editor ) { + + conLine.Draw(); + + /* + Vector2 a = GetConnectionPoint(); + Vector2 b = inputCon.GetConnectionPoint(); + int cc = GetCompCount(); + + + + GUILines.DrawStyledConnection( editor, a, b, cc, GetConnectionLineColor() ); + */ + + } + + public bool CanEvaluate() { + if( !IsConnectedAndEnabled() ) + if( !string.IsNullOrEmpty( unconnectedEvaluationValue ) ) + return true; + else + return false; // TODO: Something + if(conType == ConType.cInput) + if( !inputCon.node.CanEvaluate() ) + return false; + return true; + } + + public bool CanEvaluateAs( int target ) { + if( !CanEvaluate() ) + return false; + //int source = inputCon.GetCompCount(); + //if( target < source ) // TODO: Allow this? + // return false; + return true; + } + + + public string TryEvaluate() { + + //Debug.Log("TryEvaluate " + label + " typecast = " + typecastTarget); + + if( !IsConnectedAndEnabled() ) + if( !string.IsNullOrEmpty( unconnectedEvaluationValue ) ) + return unconnectedEvaluationValue; + if( !CanEvaluate() ) + return null; + + if( typecastTarget == 0 ){ + if(conType == ConType.cInput) + return inputCon.Evaluate(); + else + return Evaluate(); + } else { + //Debug.Log("Trying to evaluate node " + this.label + " on node " + this.node.nodeName); + return TryEvaluateAs( typecastTarget ); + } + + } + + public string TryEvaluateAs(int target) { + if( !CanEvaluateAs(target) ) + return null; // TODO: Throw errors etc + + int source = inputCon.GetCompCount(); + + int diff = target - source; + + + + if(diff == 0) // Same value type + return inputCon.Evaluate(); + if( diff < 0 ) { // Lowering component count, mask components + switch( target ) { + case 1: + return inputCon.Evaluate() + ".r"; + case 2: + return inputCon.Evaluate() + ".rg"; + case 3: + return inputCon.Evaluate() + ".rgb"; + } + } + + // Increasing component count: + + string cast; + + + if( source != 1 ) { // Evaluate + append zeroes + cast = "float" + target + "(" + inputCon.Evaluate(); + for( int i = 0; i < diff; i++ ) + cast += ",0.0"; + } else { + inputCon.node.DefineVariable(); + cast = "float" + target + "(" + inputCon.Evaluate(); + for( int i = 0; i < diff; i++ ) + cast += "," + inputCon.Evaluate(); + } + + + + cast += ")"; + return cast; + } + + + /* + public bool IsFocused() { + return rect.Contains( Event.current.mousePosition ); + }*/ + + public bool CheckIfDeleted() { + if( (Event.current.keyCode == KeyCode.Delete || Event.current.keyCode == KeyCode.Backspace) && Event.current.type == EventType.KeyDown && Hovering( world: true ) ) { + Disconnect(); + return true; + } + return false; + } + + + + + public bool IsDeleted() { + return ( node == null ); + } + + public void Disconnect( bool force = false, bool callback = true, bool reconnection = false ) { + + //Debug.Log( "Attempt to disconnect: " + node.name + "[" + label + "]" ); + + if( !IsConnected() ) { + //Debug.Log( "Aborted " + node.name + "[" + label + "]" ); + return; + } + + + if( conType == ConType.cInput ) { + //Debug.Log( "Input disconnecting " + node.name + "[" + label + "]" ); + ResetValueType(); + if( inputCon != null ) { + inputCon.outputCons.Remove( this ); + if(!reconnection) + SetVisChildVisible(false); // Don't hide the child if this was disconnected by reconnection + //Debug.Log( "Disconnecting " + label + "<--" + inputCon.label ); + } + inputCon = null; + if( callback && !SF_Parser.quickLoad ) + node.OnUpdateNode(); + } else { + //Debug.Log( "Output disconnecting " + node.name + "[" + label + "]" ); + SF_NodeConnector[] outputsArr = outputCons.ToArray(); + for( int i = 0; i < outputsArr.Length; i++ ) { + //Debug.Log( "Disconnecting " + outputsArr[i].label + "<--" + label ); + outputsArr[i].Disconnect( true, callback ); + } + outputCons.Clear(); + } + + // AceMatEditor.instance.CheckForBrokenConnections(); + + // node = null; // What? + } + + public Vector2 GetConnectionPoint() { + if( conType == ConType.cOutput ) + return new Vector2( rect.xMax, rect.center.y ); + else + return new Vector2( rect.xMin+1, rect.center.y ); + } + + + public bool CanConnectTo(SF_NodeConnector other) { + if( other == null ) + return false; + + if( other.node == node ) + return false; // Disallow connecting to self + + if( other.conType == this.conType ) + return false; // Disallow connecting same types (i <- i & o <- o) + + if( conType == ConType.cOutput ) { // Disallow connecting loops + if( node.IsDescendantOf( other.node ) ) { + return false; + } + } else { + if( other.node.IsDescendantOf( node ) ) { + return false; + } + } + + return true; + } + + + + public bool CanValidlyConnectTo(SF_NodeConnector other) { + if(!CanConnectTo(other)) + return false; + + if(this.conType == ConType.cInput) + return SFNCG_Arithmetic.CompatibleTypes( this.valueTypeDefault, other.valueType ); + else + return SFNCG_Arithmetic.CompatibleTypes( other.valueTypeDefault, this.valueType ); + + + } + + + public void TryMakeConnection() { + + if(SF_NodeConnector.pendingConnectionSource == null) + return; + + if( !CanConnectTo( SF_NodeConnector.pendingConnectionSource ) ) { + return; // TODO: Display message + } + + LinkTo( SF_NodeConnector.pendingConnectionSource,LinkingMethod.Default, registerUndo:true ); + + SF_NodeConnector.pendingConnectionSource = null; + } + + public void ThrowLinkError() { + Debug.LogError( "Attempt to connect invalid types" ); + } + + + + + public void ResetValueType() { + //Debug.Log("Resetting value type on " + this.label); + valueType = valueTypeDefault; + } + + public void LinkTo( SF_NodeConnector other, LinkingMethod linkMethod = LinkingMethod.Default, bool registerUndo = false ) { + + + + + if( this.conType == other.conType ) { + Debug.Log("Invalid IO linking: " + other.node.nodeName + " con: " + other.label + " thisnode: " + node.nodeName + " con: " + this.label); + return; + } + + if( conType == ConType.cInput ) { + other.LinkTo( this, linkMethod, registerUndo ); // Reverse connection if dragged other way + return; + } + + if(this.node.isGhost) + linkMethod = LinkingMethod.NoUpdate; + + // Other is the input node + // [other] <---- [this] + + bool registeredUndo = false; + + + // Verify, if default. Not if it's without update + if( linkMethod == LinkingMethod.Default ) { + + if( !SFNCG_Arithmetic.CompatibleTypes( other.valueTypeDefault, this.valueType ) ) { + Debug.LogError( "Incompatible types: Type A: " + other.valueTypeDefault + " Type B: " + this.valueType ); + //ThrowLinkError(); + //other.ResetValueType(); + return; + } + + if(registerUndo && !registeredUndo){ + + string undoMsg = "connect " + other.node.nodeName + "["+other.label+"] <-- ["+ this.label +"]" + this.node.nodeName; + + this.node.UndoRecord(undoMsg); + other.node.UndoRecord(undoMsg); + + //Undo.RecordObject(this,undoMsg); + //Undo.RecordObject(other,undoMsg); + + registeredUndo = true; + + } + + // In case there's an existing one + if( other.IsConnected() ) + other.Disconnect(true,false,reconnection:true); + + } + + if(registerUndo && !registeredUndo){ + string undoMsg = "connect " + other.node.nodeName + "["+other.label+"] <-- ["+ this.label +"]" + this.node.nodeName; + this.node.UndoRecord(undoMsg); + other.node.UndoRecord(undoMsg); + //Undo.RecordObject(this,undoMsg); + //Undo.RecordObject(other,undoMsg); + + registeredUndo = true; + } + + //Debug.Log("Linking " + other.node.nodeName + "["+other.label+"] <--- ["+ this.label +"]" + this.node.nodeName ); + + + + // Connect + other.valueType = this.valueType; + other.inputCon = this; + + + + // TODO: Force types in connector group! + //if( linkMethod == LinkingMethod.Default ) { + if( other.node.conGroup != null ) + other.node.conGroup.Refresh(); + //} + + + this.outputCons.Add( other ); + + other.SetVisChildVisible(true); + + if( linkMethod == LinkingMethod.Default ) { + node.RefreshValue();// OnUpdateNode( NodeUpdateType.Soft, false ); // Update this value + other.node.OnUpdateNode(); // Update other, and following + + } + + other.conLine.ReconstructShapes(); + + } + + + // This is currenly meant to propagate its value type to its link partner + public void SetValueType(ValueType vt){ + if(conType == ConType.cOutput && this.valueType != vt){ + + this.valueType = vt; + foreach(SF_NodeConnector con in this.outputCons){ + if(con.valueTypeDefault == ValueType.VTvPending){ + con.valueType = this.valueType; + con.node.OnUpdateNode(); + } + } + } + } + + public void SetValueTypeAndDefault( ValueType vt ) { + SetValueType( vt ); + valueType = vt; + valueTypeDefault = vt; + } + + public bool IsConnectionHovering(bool world = true){ + + bool active = enableState == EnableState.Enabled && availableState == AvailableState.Available; + //bool free = !IsConnected(); + bool hoveringPending = SF_NodeConnector.IsConnecting() && Hovering(world) && !UnconnectableToPending(); + + return (active && /*free &&*/ hoveringPending); + } + + public bool IsDeleteHovering(bool world = true){ + + if(!IsConnected()) + return false; // There's no link to delete to begin with + if(!Hovering(world)) + return false; // You aren't hovering at all + if(node.editor.nodeView.selection.boxSelecting) + return false; // You're in the middle of a box selection + if(node.editor.nodeView.isCutting) + return false; // We're already doing a cut-deletion, don't mark it for click-deletion + + if(SF_NodeConnector.IsConnecting()){ + + if(SF_NodeConnector.pendingConnectionSource == this) + return false; // Hovering the pending connection, don't mark it for delete + + if(!UnconnectableToPending() && this.conType == ConType.cInput) + return true; // This will be a relink-delete! + } + + + + if(SF_GUI.HoldingAlt()) + return true; // RMB delete + + + return false; + } + + public Color GetConnectorColorRGB() { + + + bool delHov = IsDeleteHovering(); + bool conHov = IsConnectionHovering(true); + + if(conHov){ + return Color.green; + } else if(delHov){ + return Color.red; + } + + if( enableState != EnableState.Enabled ) + return Color.gray; + + //if( IsConnected() ) // DEBUG + // return Color.yellow; + + Color unselected = color; + + if( node.selected ) + return SF_GUI.selectionColor;//Color.Lerp(unselected, SF_GUI.selectionColor, 0.75f); + return unselected; + } + + public Color GetConnectorColor() { + Color c = GetConnectorColorRGB(); + if( DisplayAsValid() ) + c.a = SF_GUI.ProSkin ? 1f : 0.5f; + else + c.a = SF_GUI.ProSkin ? 0.25f : 0.125f; + return c; + } + + + public bool DisplayAsValid() { + return enableState == EnableState.Enabled && availableState == AvailableState.Available && (!UnconnectableToPending() || this == SF_NodeConnector.pendingConnectionSource); + } + + bool canValidlyConnectToPending = false; + + public void UpdateCanValidlyConnectToPending() { + canValidlyConnectToPending = CanValidlyConnectTo( SF_NodeConnector.pendingConnectionSource ); + } + + public bool UnconnectableToPending() { + if(enableState != EnableState.Enabled || availableState == AvailableState.Unavailable) + return true; + if(SF_NodeConnector.pendingConnectionSource == this) + return true; + if( SF_NodeConnector.pendingConnectionSource != null ) { + if( SF_NodeConnector.pendingConnectionSource != this ) + if( !canValidlyConnectToPending ) + return true; + } + return false; + } + + + public bool ValidlyPendingChild(){ + return (IsChild() && visControlParent.IsConnected() && CanConnectToPending() && enableState == EnableState.Enabled); + } + + public bool CanConnectToPending(){ + return SF_NodeConnector.pendingConnectionSource != null && !UnconnectableToPending(); + } + + public bool IsChild(){ + return visControlParent != null; + } + + + + + public bool ShouldBeInvisible(){ + bool hidden = enableState == EnableState.Hidden; + + bool isUnconnectedChild = IsChild() && !IsConnected(); + bool isHiddenExtraConnector = isUnconnectedChild && !ValidlyPendingChild(); + + if( isUnconnectedChild && node.ExhaustedOptionalInputs() ) + return true; + + if( hidden ){ + return true; + } else if(isHiddenExtraConnector){ // If it's flagged as enabled, but is an unconnected child, only draw it when it's either connected or has a pending valid connection + return true; + } else if( node.editor.ps.catLighting.renderPath == SFPSC_Lighting.RenderPath.Deferred && !node.availableInDeferredPrePass){ + if(IsConnected()){ + Disconnect(true); + } + return true; + } + return false; + } + + public const int defaultConnectorWidth = 25; + + public void Draw( Vector2 pos ) { + + bool isUnconnectedChild = IsChild() && !IsConnected(); + + if(ShouldBeInvisible()) + return; + + + // Don't draw if invalid + + rect = new Rect( pos.x, pos.y, defaultConnectorWidth, 14 ); + + if( conType == ConType.cInput ) { + rect.x -= node.rect.width + rect.width; + } + + if( conType == ConType.cInput ) { + rect.xMin -= node.extraWidthInput; + } else { + rect.width += node.extraWidthOutput; + } + + + + //GUIStyle cStyle = conType == ConType.cInput ? EditorStyles.miniButtonRight : EditorStyles.miniButtonLeft; + //GUIStyle cStyle = (GUIStyle)"ShurikenModuleTitle"; + + + + + + if(!DisplayLock()){ + GUI.color = GetConnectorColor(); + GUI.Box( rect, string.Empty ); + if( SF_GUI.ProSkin ) { + GUI.Box( rect, string.Empty ); + GUI.Box( rect, string.Empty ); + GUI.Box( rect, string.Empty ); + } + } + + if( SF_GUI.ProSkin ){ + GUI.color = DisplayAsValid() ? Color.white : Color.grey; + } else { + GUI.color = DisplayAsValid() ? Color.white : new Color(1f,1f,1f,0.25f); + } + + bool showConditionA = !(Hovering(true) && canValidlyConnectToPending); + bool showConditionB = !(SF_NodeConnector.pendingConnectionSource == this); + + if( HasErrors() && (showConditionA && showConditionB) ) { + Rect iconRect = new Rect( rect ); + iconRect.x -= SF_Styles.IconErrorSmall.width ; + iconRect.height = iconRect.width = 16; + iconRect.y -= 1; + GUI.DrawTexture( iconRect, SF_Styles.IconErrorSmall ); + } + + + + Rect labelRect = rect; + + + if( SF_Debug.nodes ) { + Rect typeRect = rect; + typeRect.width *= 3f; + + if( conType == ConType.cInput ) { + GUI.skin.label.alignment = TextAnchor.MiddleLeft; + typeRect.x += rect.width; + } else { + GUI.skin.label.alignment = TextAnchor.MiddleRight; + typeRect.x -= typeRect.width; + } + + GUI.Label( typeRect, valueType.ToString() ); + GUI.skin.label.alignment = TextAnchor.MiddleLeft; + } + + + + + if( outerLabel ) { + labelRect.width = node.rect.width; + //labelRect.x -= EditorStyles.miniLabel.CalcSize( new GUIContent( label ) ).x + 4; + labelRect.x += rect.width + 4; + } + + + + GUI.Label( labelRect, isUnconnectedChild ? "+" : label,isUnconnectedChild ? EditorStyles.boldLabel : SF_Styles.MiniLabelOverflow ); + + + if(DisplayLock()){ + Rect lockRect = labelRect; + lockRect.xMin = node.rect.xMin-lockRect.height-3; + lockRect.xMax = node.rect.xMax; + lockRect.yMin -= 3; + lockRect.yMax += 4; + GUI.color = new Color(0.8f,0.8f,0.8f,0.3f); + GUI.Box(lockRect,string.Empty,GUI.skin.button); + GUI.color = Color.white; + //GUI.color = Color.white; + //GUI.Label(lockRect,"//"); + //GUI.drawe + //GUI.Box(lockRect, "", ); + if(Event.current.type == EventType.Repaint){ + SF_GUI.DrawLock(lockRect.PadTop(4),"Unavailable when using deferred rendering", TextAlignment.Right ); + + } + + } + + + CheckIfDeleted(); + + GUI.color = Color.white; + } + + + public SF_NodeConnector SetAvailable( bool b ) { + availableState = b ? AvailableState.Available : AvailableState.Unavailable; + return this; + } + + public bool HasErrors() { + if( required && !IsConnectedAndEnabled() ) { + return true; + } + return false; + } + + + + + + + } +} \ No newline at end of file diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/SF_NodeConnector.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/SF_NodeConnector.cs.meta new file mode 100644 index 00000000..816b8ae9 --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/SF_NodeConnector.cs.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: b6b55696f91bd42a186f23376406d9d6 +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/SF_NodePreview.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/SF_NodePreview.cs new file mode 100644 index 00000000..ab886cdb --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/SF_NodePreview.cs @@ -0,0 +1,375 @@ +using UnityEngine; +using System.Collections; +using System.Collections.Generic; +using UnityEditor; +using System; +using System.Linq; + +namespace ShaderForge { + [System.Serializable] + public class SF_NodePreview : ScriptableObject { + + public static int R = 0; + public static int G = 1; + public static int B = 2; + public static int A = 3; + + // The color representation + public RenderTexture texture; // RGBA combined + public RenderTexture[] textureChannels; // RGBA separated, created on-demand + + // Icons, if any + public Texture2D[] icons; + public Texture2D iconActive; + + public void SetIconId(int id){ + iconActive = icons[id]; + } + + + public Color iconColor = Color.white; + + // Whether or not it's uniform + // Vectors (Uniform = Same color regardless of position) + // Textures (Non-Uniform = Different color based on position)) + public bool uniform = false; + public bool coloredAlphaOverlay = false; // Used to render two images on top of eachother, as in the fog node + //public float[] dataUniform; + public Vector4 dataUniform; + public Color dataUniformColor{ + get { return (Color)dataUniform; } + } + + // My material node, used to get operators + public SF_Node node; + + // The amount of components used (1-4) // THIS SHOULDN'T BE USED. USE CONNECTOR COMP COUNT INSTEAD + [SerializeField] + private int compCount = 1; + public int CompCount { + get { return compCount; } + set { + if(compCount == value) + return; + if( value > 4 || value < 1 ) { + //Debug.LogError( "Component count out of range: " + value + " on " + node.nodeName + " " + node.id ); + compCount = 4; + } else { + compCount = value; + } + } + } + + + + public SF_NodePreview() { + } + + public void OnEnable() { + base.hideFlags = HideFlags.HideAndDontSave; + + if( texture == null ) { + InitializeTexture(); + if(node) + node.RefreshValue(); + } + + } + + public RenderTexture CreateNewNodeRT() { + RenderTexture rt = new RenderTexture( SF_Node.NODE_SIZE, SF_Node.NODE_SIZE, 0, RenderTextureFormat.ARGBFloat, RenderTextureReadWrite.Linear ); // TODO: Gamma/Linear? + rt.wrapMode = TextureWrapMode.Clamp; + rt.hideFlags = HideFlags.HideAndDontSave; + return rt; + } + + public SF_NodePreview Initialize( SF_Node node ) { + this.node = node; // Parent + return this; + } + + + public ColorSpace textureColorSpace = ColorSpace.Uninitialized; + + public void InitializeTexture() { + if(texture == null) + texture = CreateNewNodeRT(); + textureColorSpace = QualitySettings.activeColorSpace; + } + + + + public void DestroyTexture() { + if( RenderTexture.active == texture ) + RenderTexture.active = null; + if( texture != null ) { + texture.Release(); + DestroyImmediate( texture ); + } + + if( textureChannels != null ) { + for( int i = 0; i < textureChannels.Length; i++ ) { + if( textureChannels[i] != null ) { + if( RenderTexture.active == textureChannels[i] ) + RenderTexture.active = null; + textureChannels[i].Release(); + DestroyImmediate( textureChannels[i] ); + } + } + } + + iconActive = null; + texture = null; + } + + + + public void LoadAndInitializeIcons(Type type){ + string nodeNameLower = type.Name.ToLower(); + + + iconActive = SF_Resources.LoadNodeIcon(nodeNameLower); // Main icon + + + if(iconActive == null){ + //Debug.Log("No icon found for: " + nodeNameLower); + } else { + // See if additional ones exist, if it found the first + + List iconList = new List(); + iconList.Add(iconActive); + + Texture2D tmp; + for(int i = 2;i<16;i++){ // max 16, to prevent while-loop locking + tmp = SF_Resources.LoadNodeIcon(nodeNameLower + "_" + i); // Search for more + if(tmp == null) + break; + iconList.Add(tmp); + } + + if(iconList.Count > 1) + icons = iconList.ToArray(); + + //while( tmp = + } + } + + public void LoadDataTexture(Type type){ + LoadDataTexture("Data/" + type.Name.ToLower()); + } + + public void LoadDataTexture(Type type, string suffix){ + LoadDataTexture("Data/" + type.Name.ToLower() + "_" + suffix); + } + + public void LoadDataTexture(string path){ + Texture2D nodeIcon = SF_Resources.LoadNodeIcon(path); + SF_Blit.Render( texture, "ReadPackedData", nodeIcon ); + } + + public void GenerateBaseData( bool render3D = true ) { + SF_Blit.mat.SetVector( "_OutputMask", Vector4.one ); + + SF_Blit.currentNode = node; + + if( uniform ) { + BlitUniform(); + return; + } + + if( SF_Settings.nodeRenderMode == NodeRenderMode.Viewport ) { + SF_Blit.RenderUsingViewport( texture, node.GetBlitShaderPath() ); + } else { + if( render3D ) + SF_Blit.RenderUsingViewport( texture, node.GetBlitShaderPath() ); + else + SF_Blit.Render( texture, node.GetBlitShaderPath() ); + } + + + } + + public void BlitUniform() { + SF_Blit.Render(texture, dataUniformColor ); + } + + public void ReadData( Texture2D tex, SF_NodePreview uvTex = null ) { + Graphics.Blit( tex, texture ); + } + + + + + public void OnLostConnection() { + Fill( Color.black ); + } + + public void Fill( Color col ) { + SF_Blit.Render( texture, col ); + } + + public Texture RenderAndGetChannel(int ch){ + if(textureChannels == null) + textureChannels = new RenderTexture[4]; + if( ch < 0 || ch > 3 ) { + Debug.LogError( "RenderAndGetChannel() got invalid channel " + ch + " of node " + node.nodeName + ". Please report this!" ); + } + if( textureChannels[ch] == null ) { + textureChannels[ch] = CreateNewNodeRT(); + } + SF_Blit.matExtractChannel.SetFloat("_Channel", ch); + Graphics.Blit( texture, textureChannels[ch], SF_Blit.matExtractChannel ); + return textureChannels[ch]; + } + + public Texture GetTextureByOutputType( OutChannel ch ) { + if( ch == OutChannel.R ) { + return RenderAndGetChannel( 0 ); + } else if( ch == OutChannel.G ) { + return RenderAndGetChannel( 1 ); + } else if( ch == OutChannel.B ) { + return RenderAndGetChannel( 2 ); + } else if( ch == OutChannel.A ) { + return RenderAndGetChannel( 3 ); + } + return texture; + } + + + // When evaluating nodes, run the overridden operator from the node itself + public void Combine( /*SF_NodePreview a, SF_NodePreview b */) { + + // Check if it can combine first + if( !node.CanEvaluate() ) { + Debug.LogError( "Cannot evaluate" ); + Fill( Color.black ); + return; + } + + CompCount = node.GetEvaluatedComponentCount(); + + // It can combine! Since this node is dynamic, adapt its component count + //CompCount = Mathf.Max( a.CompCount, b.CompCount ); + + + uniform = node.IsUniformOutput(); + + // Combine the node textures, unless we're quickloading or don't want to load them + + dataUniform = node.EvalCPU(); + + SF_Blit.currentNode = node; + + //if( uniform ) { + //BlitUniform(); + //} else { + string shaderPath = node.GetBlitShaderPath(); + Texture[] inputTextures = node.ConnectedInputs.Select( x => x.inputCon.node.texture.GetTextureByOutputType( x.inputCon.outputChannel ) ).ToArray(); + string[] inputNames = node.ConnectedInputs.Select( x => x.strID ).ToArray(); + //OutChannel[] inputChannels = node.ConnectedInputs.Select( x => x.inputCon.outputChannel ).ToArray(); + if( SF_Settings.nodeRenderMode == NodeRenderMode.Viewport ) { + SF_Blit.RenderUsingViewport( texture, shaderPath, inputNames, inputTextures ); + } else if( SF_Settings.nodeRenderMode == NodeRenderMode.Mixed ) { + SF_Blit.Render( texture, shaderPath, inputNames, inputTextures ); + } + + //} + + + + + + + /* + if(!SF_Parser.quickLoad && SF_Settings.DrawNodePreviews) { + for( int y = 0; y < SF_NodeData.RES; y++ ) { + for( int x = 0; x < SF_NodeData.RES; x++ ) { + Color retVector = node.NodeOperator( x, y ); + for( int c = 0; c < 4; c++ ) { + data[x, y, c] = retVector[c]; + } + } + } + }* + + // Combine uniform + /*for( int i = 0; i < 4; i++ ) { + dataUniform[i] = node.NodeOperator( 0, 0, i ); + }*/ + + + + + } + + + + public void Draw( Rect r , bool dim = false) { + if( iconActive != null ) { + if(node is SFN_Final){ // Large node image + Rect tmp = new Rect(r.x,r.y-1, iconActive.width, iconActive.height); + GUI.color = new Color(1f,1f,1f,node.selected ? 1f : 0.5f); + GUI.DrawTexture( tmp, iconActive, ScaleMode.ScaleToFit, true ); + } else if( coloredAlphaOverlay ) { + GUI.DrawTexture( r, icons[0] ); + GUI.color = ConvertToDisplayColor( dataUniform, true ); + GUI.DrawTexture( r, icons[1], ScaleMode.ScaleToFit, true ); + } else { + GUI.color = iconColor; + if( dim ) { + GUI.color = new Color( GUI.color.r, GUI.color.g, GUI.color.b, 0.5f ); + } + GUI.DrawTexture( r, iconActive ); + } + GUI.color = Color.white; + } else if( uniform ) { + GUI.color = ConvertToDisplayColor( dataUniform, true ); + GUI.DrawTexture( r, EditorGUIUtility.whiteTexture ); + GUI.color = Color.white; + } else { + GUI.DrawTexture( r, texture, ScaleMode.ScaleAndCrop, false ); + if(node.displayVectorDataMask){ + GUI.DrawTexture( r, SF_GUI.VectorIconOverlay, ScaleMode.ScaleAndCrop, true); + } + } + + } + + public static float[] ColorToFloatArr( Color c ) { + return new float[] { c.r, c.g, c.b, c.a }; + } + + public Color ConvertToDisplayColor( Color fa, bool forceVisible = false ) { + if( CompCount == 1 ) { + return new Color( fa[0], fa[0], fa[0], forceVisible ? 1f : fa[0] ); + } else if( CompCount == 2 ) { + return new Color( fa[0], fa[1], 0f, forceVisible ? 1f : 0f ); + } else if( CompCount == 3 ) { + return new Color( fa[0], fa[1], fa[2], forceVisible ? 1f : 0f ); + } + return new Color( fa[0], fa[1], fa[2], forceVisible ? 1f : fa[3] ); + } + + + + public bool CanCombine( SF_NodePreview a, SF_NodePreview b ) { + if( a.CompCount == b.CompCount ) + return true; + if( a.CompCount == 1 || b.CompCount == 1 ) + return true; + return false; + } + + + + + + + + + + + + + } +} \ No newline at end of file diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/SF_NodePreview.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/SF_NodePreview.cs.meta new file mode 100644 index 00000000..6d68697d --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/SF_NodePreview.cs.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 545752616b7004630871f3aba6d251d6 +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/SF_NodeStatus.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/SF_NodeStatus.cs new file mode 100644 index 00000000..7df93538 --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/SF_NodeStatus.cs @@ -0,0 +1,55 @@ +using UnityEngine; +using System.Collections; + +namespace ShaderForge { + [System.Serializable] + public class SF_NodeStatus : ScriptableObject { + + public SF_Node node; + public SF_NodeStatus Initialize( SF_Node node ) { + this.node = node; + Reset(); + return this; + } + + public void OnEnable() { + base.hideFlags = HideFlags.HideAndDontSave; + } + + + public bool leadsToFinal; // Whether or not this is in the end, used + + public void Reset() { + leadsToFinal = false; + } + + + + + public void SetLeadsToFinalRecursively(bool all = false, bool passDependent = true) { + leadsToFinal = true; + //Debug.Log("Checking if " + node.nodeName + " leads to final..."); + foreach( SF_NodeConnector con in node.connectors ) { + if( con.conType == ConType.cOutput ) + continue; + if( !con.IsConnected() ) + continue; + //if( !con.IsConnectedEnabledAndAvailable() ) // Don't process data in disabled inputs, although maybe we should? + //continue; + if( passDependent && con.SkipPasses.Contains( SF_Evaluator.currentPass ) && !all ) // So it's enabled and all - But does this pass even use it? + continue; + con.inputCon.node.status.SetLeadsToFinalRecursively(); + } + //Debug.Log("Yep, " + node.nodeName + " leads to final!"); + } + + + + + + + + + } + +} diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/SF_NodeStatus.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/SF_NodeStatus.cs.meta new file mode 100644 index 00000000..ac6c8b81 --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/SF_NodeStatus.cs.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 08efc211a31014f9db3606a96039defd +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/SF_NodeTreeStatus.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/SF_NodeTreeStatus.cs new file mode 100644 index 00000000..256a0a42 --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/SF_NodeTreeStatus.cs @@ -0,0 +1,494 @@ +using UnityEngine; +using System.Collections; +using System.Collections.Generic; +using System.Linq; + + + +namespace ShaderForge { + + [System.Serializable] + public class SF_NodeTreeStatus : ScriptableObject { + + public SF_Editor editor; + [SerializeField] List errors; + public List Errors { + get { + if( errors == null ) + errors = new List(); + return errors; + } + set { + errors = value; + } + } + + + + public bool mipInputUsed = false; // If this is true, only DX is allowed :< OR: Enable glsl pragma + public bool texturesInVertShader = false; + public bool viewDirectionInVertOffset = false; + public bool usesSceneData = false; + // public bool lightNodesUsed = false; // Used to re-enable light settings when shader is set to unlit + + + + // Contains references to all nodes with properties + // Used in the pass settings listing + public List propertyList = new List(); + + + public bool CanDisplayInstructionCount { + get { + bool dx = ( editor.statusBox.platform == RenderPlatform.d3d9 || editor.statusBox.platform == RenderPlatform.d3d11 ); + return !( mipInputUsed && !dx ); + } + + } + + + + public string SerializeProps() { + string s = "proporder:"; + for( int i = 0; i < propertyList.Count; i++ ) { + if( i != 0 ) + s += "-"; + s += propertyList[i].id.ToString(); + } + return s; + } + + public void DeserializeProps( string s ) { + //Debug.Log("Deserializing properties = " + s); + string[] split = s.Split( '-' ); + propertyList = new System.Collections.Generic.List(); + for( int i = 0; i < split.Length; i++ ) { + //Debug.Log("Found " + GetNodeByID( int.Parse( split[i] )).nodeName); + //Debug.Log ("Attempting deserialization. int parse of ["+split[i]+"]"); + + SF_Node foundNode = GetNodeByID( int.Parse( split[i] ) ); + if( foundNode != null ) + propertyList.Add( foundNode ); + + } + } + + public SF_Node GetNodeByID( int id ) { + foreach( SF_Node n in editor.nodes ) { + if( n.id == id ) + return n; + } + Debug.LogError( "Property node with ID " + id + " not found while deserializing, removing..." ); + return null; + } + + + + + + + public SF_NodeTreeStatus Initialize( SF_Editor editor ) { + this.editor = editor; + return this; + } + + public void OnEnable() { + base.hideFlags = HideFlags.HideAndDontSave; + } + + + public bool CheckCanCompile() { + + editor.nodeView.RefreshRelaySources(); + + if( Errors == null ){ + Errors = new List(); + } else if( Errors.Count > 0 ) { + for( int i = 0; i < Errors.Count; i++ ) { + DestroyImmediate( Errors[i] ); + } + Errors.Clear(); + } + + + + List cNodes = GetListOfConnectedNodesWithGhosts( out editor.shaderEvaluator.ghostNodes ); + + + // If any properties are now outside the node graph, remove them from the property list + /*if(!SF_Parser.settingUp) + for( int i = propertyList.Count - 1; i >= 0; i-- ) { + if( !cNodes.Contains( propertyList[i] ) ) { + propertyList.RemoveAt( i ); + } + }*/ + + + //if( editor.shaderEvaluator.ghostNodes != null ) + //Debug.Log( "Ghost nodes: " + editor.shaderEvaluator.ghostNodes.Count ); + + texturesInVertShader = false; + bool foundMipUsed = false; + //SF_Node mipNode = null; + usesSceneData = false; + + bool hasFacingNode = false; + + foreach( SF_Node n in cNodes ) { + + // Refresh property list + if( n.IsProperty() ) { + if( !n.IsGlobalProperty() ) { + // Add if it's local and doesn't contain it already + if( !propertyList.Contains( n ) ) { + propertyList.Add( n ); + } + } else { + // Remove it if it's global and inside the list + if( propertyList.Contains( n ) ) { + propertyList.Remove( n ); + } + } + } + + if( n is SFN_SceneColor ) { + usesSceneData = true; + } + + if( n is SFN_FaceSign ) { + hasFacingNode = true; + } + + + if( n is SFN_Tex2d || n is SFN_Cubemap ) { // Check MIP input + if( n.GetInputIsConnected( "MIP" ) ) { + foundMipUsed = true; + //mipNode = n; + } + } + + //if(SF_Debug.dynamicNodeLoad) + if( SF_Editor.NodeExistsAndIs( n, "SFN_SkyshopSpec" ) ) { + //if(n.GetInputIsConnected("GLOSS")){ + foundMipUsed = true; + //mipNode = n; + //} + } + + + + + + foreach( SF_NodeConnector con in n.connectors ) { + if( con.conType == ConType.cOutput ) + continue; + if( con.required && !con.IsConnected() ) { + string err = "Missing required"; + err += string.IsNullOrEmpty( con.label ) ? " " : " [" + con.label + "] "; + err += "input on " + con.node.nodeName; + Errors.Add( SF_ErrorEntry.Create( err, con, false ) ); + } + } + } + + + + // WARNINGS + + if( editor.ps.catBlending.autoSort ) { + + bool alphaConnected = editor.ps.HasAlpha(); + + + + if( editor.ps.catLighting.transparencyMode == SFPSC_Lighting.TransparencyMode.Fade ) { + + bool usingAlphaBlend = editor.ps.catBlending.blendSrc == BlendMode.SrcAlpha && editor.ps.catBlending.blendDst == BlendMode.OneMinusSrcAlpha; + + if( alphaConnected && !usingAlphaBlend ) { + SF_ErrorEntry error = SF_ErrorEntry.Create( "Opacity is connected, but your shader isn't alpha blended, which is required by the fade transparency mode. Click the icon to make it alpha blended!", true ); + error.action = () => { + UnityEditor.Undo.RecordObject( editor.ps.catBlending, "error correction" ); + editor.ps.catBlending.blendModePreset = BlendModePreset.AlphaBlended; + editor.ps.catBlending.ConformBlendsToPreset(); + }; + Errors.Add( error ); + } + + if( !alphaConnected && usingAlphaBlend ) { + SF_ErrorEntry error = SF_ErrorEntry.Create( "Opacity is not connected, but your shader is alpha blended. Click the icon to make it opaque!", true ); + error.action = () => { + UnityEditor.Undo.RecordObject( editor.ps.catBlending, "error correction" ); + editor.ps.catBlending.blendModePreset = BlendModePreset.Opaque; + editor.ps.catBlending.ConformBlendsToPreset(); + }; + Errors.Add( error ); + } + } + + + + + + if( editor.ps.catLighting.transparencyMode == SFPSC_Lighting.TransparencyMode.Reflective ) { + + bool usingAlphaBlendPremul = editor.ps.catBlending.blendSrc == BlendMode.One && editor.ps.catBlending.blendDst == BlendMode.OneMinusSrcAlpha; + + if( alphaConnected && !usingAlphaBlendPremul ) { + SF_ErrorEntry error = SF_ErrorEntry.Create( "Opacity is connected, but your shader isn't using premultiplied alpha blending, which is required by the reflective transparency mode. Click the icon to use premultiplied alpha blending!", true ); + error.action = () => { + UnityEditor.Undo.RecordObject( editor.ps.catBlending, "error correction" ); + editor.ps.catBlending.blendModePreset = BlendModePreset.AlphaBlendedPremultiplied; + editor.ps.catBlending.ConformBlendsToPreset(); + }; + Errors.Add( error ); + } + + if( !alphaConnected && usingAlphaBlendPremul ) { + SF_ErrorEntry error = SF_ErrorEntry.Create( "Opacity is not connected, but your shader is using premultiplied alpha blending. Click the icon to make it opaque!", true ); + error.action = () => { + UnityEditor.Undo.RecordObject( editor.ps.catBlending, "error correction" ); + editor.ps.catBlending.blendModePreset = BlendModePreset.Opaque; + editor.ps.catBlending.ConformBlendsToPreset(); + }; + Errors.Add( error ); + } + } + + + + } + + + + + /* + true, // - Direct3D 9 + true, // - Direct3D 11 + true, // - OpenGL + true, // - OpenGL ES 2.0 + false, // - Xbox 360 + false, // - PlayStation 3 + false, // - Flash + false // - Direct3D 11 for Windows RT + */ + bool osx = Application.platform == RuntimePlatform.OSXEditor; + bool windows = !osx; + bool ogl = editor.ps.catMeta.usedRenderers[2]; + bool dx9 = editor.ps.catMeta.usedRenderers[0]; + bool dx11 = editor.ps.catMeta.usedRenderers[1]; + +#if UNITY_5_0 + bool inDx11Mode = UnityEditor.PlayerSettings.useDirect3D11; +#else + bool inDx11Mode = true; +#endif + + if( osx && !ogl ) { + SF_ErrorEntry error = SF_ErrorEntry.Create( "Your shader will not render properly on your workstation - you need to have OpenGL enabled when working in OSX. Click the icon to enable OpenGL!", true ); + error.action = () => { + UnityEditor.Undo.RecordObject( editor.ps.catMeta, "error correction - enable OpenGL" ); + editor.ps.catMeta.usedRenderers[2] = true; + editor.OnShaderModified( NodeUpdateType.Hard ); + }; + Errors.Add( error ); + } else if( windows ) { + if( inDx11Mode && !dx11 ) { + SF_ErrorEntry error = SF_ErrorEntry.Create( "Your shader might not render properly on your workstation - you need to have Direct3D 11 enabled when working in DX11 mode on Windows. Click the icon to enable Direct3D 11!", true ); + error.action = () => { + UnityEditor.Undo.RecordObject( editor.ps.catMeta, "error correction - enable Direct3D 11" ); + editor.ps.catMeta.usedRenderers[1] = true; + editor.OnShaderModified( NodeUpdateType.Soft ); + }; + Errors.Add( error ); + } else if( !inDx11Mode && !dx9 ) { + SF_ErrorEntry error = SF_ErrorEntry.Create( "Your shader might not render properly on your workstation - you need to have Direct3D 9 enabled when working on Windows. Click the icon to enable Direct3D 9!", true ); + error.action = () => { + UnityEditor.Undo.RecordObject( editor.ps.catMeta, "error correction - enable Direct3D 9" ); + editor.ps.catMeta.usedRenderers[0] = true; + editor.OnShaderModified( NodeUpdateType.Soft ); + }; + Errors.Add( error ); + } + } + + + + + + if( editor.ps.catLighting.lightMode == SFPSC_Lighting.LightMode.PBL ) { + if( editor.ps.HasDiffuse() && !editor.ps.HasSpecular() ) { + Errors.Add( SF_ErrorEntry.Create( "Using PBL requires metallic/specular to be connected", false ) ); + } + if( !editor.ps.HasDiffuse() && editor.ps.HasSpecular() ) { + Errors.Add( SF_ErrorEntry.Create( "Using PBL requires metallic/specular to be connected", false ) ); + } + } + + + + + + + + + List dupes = new List(); + SF_Node[] propNodes = cNodes.Where(x=>x.IsProperty()).ToArray(); + for( int i = 0; i < propNodes.Length; i++ ) { + for( int j = i+1; j < propNodes.Length; j++ ) { + string nameA = propNodes[i].property.nameInternal; + string nameB = propNodes[j].property.nameInternal; + + if( nameA == nameB ) { + dupes.Add( propNodes[j] ); + } + + } + } + if( dupes.Count > 0 ) { + foreach( SF_Node dupe in dupes ) { + Errors.Add( SF_ErrorEntry.Create( "You have property nodes with conflicting internal names. Please rename one of the " + dupe.property.nameInternal + " nodes", dupe, false ) ); + } + } + + + + + List dupesVarname = new List(); + for( int i = 0; i < cNodes.Count; i++ ) { + for( int j = i + 1; j < cNodes.Count; j++ ) { + + string nameAvar = cNodes[i].variableName; + string nameBvar = cNodes[j].variableName; + + if( nameAvar == nameBvar && dupes.Contains( cNodes[j] ) == false ) { + dupesVarname.Add( cNodes[j] ); + } + } + } + if( dupesVarname.Count > 0 ) { + foreach( SF_Node dupeVarname in dupesVarname ) { + Errors.Add( SF_ErrorEntry.Create( "You have nodes with conflicting variable names. Please rename one of the " + dupeVarname.variableName + " nodes", dupeVarname, false ) ); + } + } + + + // Make sure you set the shader to double sided + if( !editor.ps.catGeometry.IsDoubleSided() && hasFacingNode ) { + SF_ErrorEntry error = SF_ErrorEntry.Create( "You are using the Face Sign node, but your shader isn't double-sided. Click the icon to fix", false ); + error.action = () => { + UnityEditor.Undo.RecordObject( editor.ps.catGeometry, "error correction - fix double sided" ); + editor.ps.catGeometry.cullMode = SFPSC_Geometry.CullMode.DoubleSided; + editor.OnShaderModified( NodeUpdateType.Hard ); + }; + Errors.Add( error ); + } + + + + + + + // Check if there are any textures in the vertex input + texturesInVertShader = HasNodeInput( editor.mainNode.vertexOffset ) || HasNodeInput( editor.mainNode.outlineWidth ); + viewDirectionInVertOffset = HasNodeInput( editor.mainNode.vertexOffset ); + + + + editor.shaderEvaluator.RemoveGhostNodes(); + + + if( foundMipUsed ) { + //if( !mipInputUsed ) // This should be fixed with #pragma glsl + // errors.Add( new SF_ErrorEntry( "MIP input is only supported in Direct X", mipNode ) ); + mipInputUsed = true; + } else { + mipInputUsed = false; + } + + + int errorCount = Errors.Count( x => !x.isWarning ); // Let it compile, even though it has warnings + + if( errorCount == 0 ) + return true; + //DisplayErrors(); + return false; + } + + private bool ConnectedNodeWithInternalNameExists( List cNodes, string s ) { + foreach( SF_Node n in cNodes.Where( x => x.IsProperty() ) ) { + if( n.property.nameInternal == s ) { + return true; + } + } + return false; + } + + + + public bool HasNodeInput( SF_NodeConnector con ) { + + if( con.IsConnectedEnabledAndAvailable() ) { + + if( con.inputCon.node is T ) { + return true; + } + + // Recursively loop through inputs of the connnected node + foreach( SF_NodeConnector c in con.inputCon.node.connectors ) { + if( c.conType == ConType.cOutput ) + continue; + if( !c.IsConnected() ) + continue; + if( HasNodeInput( c ) ) { + return true; + } + } + + } + return false; + } + + + + + + // Returns all nodes connected to the final node + public List GetListOfConnectedNodesWithGhosts( out List ghosts, bool passDependent = false ) { + //Debug.Log ("GetListOfConnectedNodesWithGhosts()"); + ResetAllNodeStatuses(); + editor.mainNode.status.SetLeadsToFinalRecursively( all: false, passDependent: passDependent ); + List filtered = new List(); + foreach( SF_Node n in editor.nodes ) { + if( n.status.leadsToFinal ) + filtered.Add( n ); + } + + // Now that's done, let's return the ghost nodes too, if any + editor.shaderEvaluator.RemoveGhostNodes(); // TODO: Really? + ghosts = new List(); + + foreach( SF_Node n in filtered ) { + n.DefineGhostsIfNeeded( ref ghosts ); + } + + //Debug.Log ("GetListOfConnectedNodesWithGhosts, ghosts.Count: " + ghosts.Count); + + filtered.AddRange( ghosts ); + + return filtered; + } + + // Resets all node statuses + public void ResetAllNodeStatuses() { + foreach( SF_Node n in editor.nodes ) { + n.status.Reset(); + } + } + + + + + + } +} \ No newline at end of file diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/SF_NodeTreeStatus.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/SF_NodeTreeStatus.cs.meta new file mode 100644 index 00000000..b176c970 --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/SF_NodeTreeStatus.cs.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 9e9cc643ea4c843b2a52e98a499ad6bc +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/SF_Parser.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/SF_Parser.cs new file mode 100644 index 00000000..209a59cb --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/SF_Parser.cs @@ -0,0 +1,280 @@ +using UnityEngine; +using UnityEditor; +using System.IO; +using System; +using System.Linq; +using System.Collections.Generic; + +namespace ShaderForge { + public static class SF_Parser { + + public static SF_Editor editor; + static List links; + public static bool quickLoad = false; + public static bool settingUp = false; + + + + + + /* + static void Temp() { + byte maj = 2; + byte min = 6; + + int combined = InternalVersion(maj,min); + Debug.Log( "Combined: " + combined ); + Debug.Log( "Resplit: " + ExternalVersion( combined ) ); + + } + + public static string ExternalVersion( int internalVersion ) { + byte oMaj = (byte)( internalVersion >> 8 ); + byte oMin = (byte)( internalVersion & 0x0000ffff ); + return oMaj + "." + oMin.ToString( "D2" ); + } + + public static int InternalVersion( byte maj, byte min ) { + return ( ( maj << 8 ) & 0xffff ) | min; + } + * */ + + + public static bool SerializedNodeIsProperty( string s ){ + return s.Contains(",ptlb:"); // Property label + } + + public static bool ParseNodeDataFromShader( SF_Editor editor, Shader s ) { + SF_Parser.editor = editor; + SF_Parser.links = new List(); + // Search for Shader Forge data + float version; + string data = ExtractShaderForgeData( s, out version ); + if( string.IsNullOrEmpty( data ) ) { + editor.CreateOutputNode(); + return true; // Empty shader + } + string missingNode; + bool didLoadFlawlessly = LoadFromNodeData( data, version, out missingNode ); + + if( !didLoadFlawlessly ) { + EditorUtility.DisplayDialog( "Failed to load shader", "Failed to open shader due to missing the node [" + missingNode + "]", "Close" ); + editor.Close(); +// editor.Init(); + //editor.closeMe = true; + //editor.initialized = false; + //SF_Editor.instance = null; + //editor.Close(); + return false; + } + + return true; + + } + + + + + private static bool LoadFromNodeData( string data, float version, out string missingNode ) { + // First, split by rows (;) + missingNode = ""; + string[] rows = data.Split( ';' ); // TODO: Escape ; and | characters in user created comments! + + // TODO: Subshaders etc + SF_Parser.settingUp = true; + SF_Parser.quickLoad = true; + foreach( string row in rows ) { + if( row.StartsWith( "n:" ) ) { + //Debug.Log("Deserializing node:" + row); + SF_Node node = SF_Node.Deserialize( row.Substring( 2 ), ref links ); + if( node == null ) { + missingNode = row.Substring( 2 ).Split(',')[0].Split(':')[1]; + SF_Parser.settingUp = false; + SF_Parser.quickLoad = false; + return false; // Interrupt node loading, node wasn't found + } + continue; + } + if( row.StartsWith( "ps:" ) ) { + editor.ps.Deserialize( row.Substring( 3 ) ); + continue; + } + if( row.StartsWith( "proporder:" ) ) { + editor.nodeView.treeStatus.DeserializeProps( row.Substring(10) ); + continue; + } + } + + // Create all node links + for( int i = 0; i < links.Count; i++ ) { + links[i].Establish( editor ); + } + + + // If this was created in a version older than 0.37, reverse the node tree around its center point + if( version <= 0.36f){ + + Debug.Log("Reversing node tree due to shader being created before the reversal in 0.37"); + + // Average node position + float avgX = editor.nodes.Average(x => x.rect.center.x); + + // Reverse all nodes + foreach(SF_Node node in editor.nodes){ + Vector2 old = node.rect.center; + node.rect.center = new Vector2(2 * avgX - old.x, old.y); + } + + } + + + + //Debug.Log("All links established, hierarchally refreshing..."); + // Refresh hierarchally + + //Profiler.BeginSample ("MyPieceOfCode"); + + //editor.nodeView.HierarchalRefresh(); + + //Profiler.EndSample(); + + + //Debug.Log( "Reconnect pending..." ); + + editor.nodeView.ReconnectConnectedPending(); + SF_Parser.quickLoad = false; + + //Debug.Log( "Reconnect done, updating auto settings..." ); + + // Update auto settings based on everything connected + editor.ps.UpdateAutoSettings(); + + //Debug.Log( "Auto settings done, centering camera..." ); + + // Center camera + editor.nodeView.CenterCamera(); + SF_Parser.settingUp = false; + SF_Parser.quickLoad = false; + + + // Update preview images by refreshing all outermost nodes + editor.nodeView.HierarchalRefresh(); + + //Debug.Log( "Centered camera, recompiling shader..." ); + editor.mainNode.OnUpdateNode( NodeUpdateType.Hard, true ); + + return true; + } + + + + + + + public static string ExtractShaderForgeData( Shader s, out float version, bool setPath = true, bool findRenderers = true, bool findLOD = true) { + + string path = AssetDatabase.GetAssetPath( s ); + string[] shaderData = File.ReadAllLines( path ); + + string returnString = ""; + + version = 0f; + + if( shaderData.Length == 0 || shaderData == null ) { + //Debug.LogWarning( "Shader file empty" ); + return null; + } + + bool found_data = false; + bool found_renderers = !findRenderers; + bool found_path = !setPath; + bool found_LOD = !findLOD; + + + for( int i = 0; i < shaderData.Length; i++ ) { + if(shaderData[i].Contains("Shader created with Shader Forge")){ + string[] split = shaderData[i].Trim().Split(' '); + string verStr = split[split.Length-1]; + + if( verStr.StartsWith( "v" ) ) + verStr = verStr.Substring( 1 ); + + version = float.Parse(verStr); + } + if( shaderData[i].StartsWith( "/*SF_DATA;" ) ) { + returnString = shaderData[i].Substring( 10, shaderData[i].Length - 12 ); // Exclude comment markup + found_data = true; + } + if( setPath ) + if( shaderData[i].StartsWith( "Shader" ) ) { + editor.currentShaderPath = shaderData[i].Split( '\"' )[1]; + found_path = true; + } + if( findRenderers ) { + if( shaderData[i].TrimStart().StartsWith( "#pragma only_renderers" ) ) { + ParseRenderer( shaderData[i].Trim().Split( ' ' ), true); + found_renderers = true; + } else if( shaderData[i].TrimStart().StartsWith( "#pragma exclude_renderers" ) ) { + ParseRenderer( shaderData[i].Trim().Split( ' ' ), false ); + found_renderers = true; + } + } + if( findLOD ) { + if( shaderData[i].TrimStart().StartsWith( "LOD " ) ) { + editor.ps.catMeta.LOD = int.Parse(shaderData[i].Trim().Split( ' ' )[1]); + found_LOD = true; + } + } + + if( found_data && found_path && found_renderers && found_LOD ) + break; + } + + + + if( string.IsNullOrEmpty( returnString ) ) { + //Debug.LogWarning( "Shader did not contain node data" ); + } + + // TODO: check when it was last changed! + // This is where it should ask you if you want to overwrite the existing data, + // if it's older than x minutes + + return returnString; + } + + + public static bool ContainsShaderForgeData(Shader s){ + float version; + string sfData = SF_Parser.ExtractShaderForgeData( s, out version, false, false, false ); + return !string.IsNullOrEmpty( sfData ); + } + + public static void ParseRenderer( string[] arr, bool only ) { + for( int i = 0; i < editor.ps.catMeta.usedRenderers.Length; i++ ) { + editor.ps.catMeta.usedRenderers[i] = !only; // Enable or disable all + } + for( int i = 2; i < arr.Length; i++ ) { // i = 2 to ignore #pragma x_renderers + string rndr = arr[i]; + if( rndr == "flash" ) { + Debug.LogWarning( "Flash is no longer supported by Unity, and was removed from the shader" ); + continue; + } + if( rndr == "ps3" ) { + Debug.LogWarning( "PS3 is no longer supported by Unity since 5.5, and was removed from the shader" ); + continue; + } + if( rndr == "xbox360" ) { + Debug.LogWarning( "Xbox 360 is no longer supported by Unity since 5.5, and was removed from the shader" ); + continue; + } + if( rndr == "opengl" ) { + rndr = "glcore"; + } + int enm = (int)((RenderPlatform)Enum.Parse( typeof( RenderPlatform ), rndr )); + editor.ps.catMeta.usedRenderers[enm] = only; // Disable or enable one + } + } + + } +} \ No newline at end of file diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/SF_Parser.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/SF_Parser.cs.meta new file mode 100644 index 00000000..f832423d --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/SF_Parser.cs.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 75956f9dcf7c14856949a94823268bb4 +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/SF_PassSettings.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/SF_PassSettings.cs new file mode 100644 index 00000000..acf8ef6e --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/SF_PassSettings.cs @@ -0,0 +1,414 @@ +using UnityEngine; +using UnityEditor; +using System.Collections; +using System.Collections.Generic; + +namespace ShaderForge { + + + [System.Serializable] + public class SF_PassSettings : ScriptableObject { + + // Mat ed + public SF_Editor editor; + public SF_FeatureChecker fChecker; + + + + + // SERIALIZATION OF VARS + public string Serialize() { + string s = "ps:"; + foreach(SFPS_Category cat in cats){ + s += cat.Serialize(); + } + return s.Substring(0,s.Length-1); + } + + + // TODO: Remove this, keep it in cats + private string Serialize( string key, string value, bool last = false ) { + return key + ":" + value + (last ? "" : ","); + } + + // DESERIALIZATION OF VARS + public void Deserialize(string s) { + string[] split = s.Split(','); + for( int i = 0; i < split.Length; i++ ) { + string[] keyval = split[i].Split(':'); + Deserialize( keyval[0], keyval[1] ); + } + } + + public void Deserialize( string key, string value ) { + foreach(SFPS_Category cat in cats){ + cat.Deserialize(key, value); + } + catBlending.UpdateAutoSort(); + } + + + + + + // END SERIALIZATION + + + // Node/auto vars + public string n_diffuse { + get { return mOut.diffuse.TryEvaluate(); } // Vector3 only + } + public string n_alpha { + get { return mOut.alpha.TryEvaluate(); } + } + public string n_alphaClip { + get { return mOut.alphaClip.TryEvaluate(); } + } + public string n_diffusePower { + get { return mOut.diffusePower.TryEvaluate(); } + } + public string n_gloss { + get { return mOut.gloss.TryEvaluate(); } + } + public string n_specular { + get { return mOut.specular.TryEvaluate(); } // Vector3 only + } + public string n_normals { + get { return mOut.normal.TryEvaluate(); } // Vector3 only + } + public string n_emissive { + get { return mOut.emissive.TryEvaluate(); } // Vector3 only + } + public string n_transmission { + get { return mOut.transmission.TryEvaluate(); } + } + public string n_lightWrap { + get { return mOut.lightWrap.TryEvaluate(); } + } + + public string n_ambientDiffuse { + get { return mOut.ambientDiffuse.TryEvaluate(); } + } + public string n_ambientSpecular { + get { return mOut.ambientSpecular.TryEvaluate(); } + } + public string n_diffuseOcclusion { + get { return mOut.diffuseOcclusion.TryEvaluate(); } + } + public string n_specularOcclusion { + get { return mOut.specularOcclusion.TryEvaluate(); } + } + public string n_customLighting { + get { return mOut.customLighting.TryEvaluate(); } + } + + public string n_outlineWidth { + get { return mOut.outlineWidth.TryEvaluate(); } + } + public string n_outlineColor { + get { return mOut.outlineColor.TryEvaluate(); } + } + public string n_distortion { + get { return mOut.refraction.TryEvaluate(); } + } + public string n_vertexOffset { + get { return mOut.vertexOffset.TryEvaluate(); } + } + public string n_displacement { + get { return mOut.displacement.TryEvaluate(); } + } + public string n_tessellation { + get { return mOut.tessellation.TryEvaluate(); } + } + public SFN_Final mOut { + get { return editor.mainNode; } + } + + + // GUI controls + //const int expIndent = 16; + + public List cats; + public SFPSC_Meta catMeta; + public SFPSC_Properties catProperties; + public SFPSC_Lighting catLighting; + public SFPSC_Geometry catGeometry; + public SFPSC_Blending catBlending; + public SFPSC_Experimental catExperimental; + public SFPSC_Console catConsole; + + // Add more here + + public int maxWidth; + + public SF_PassSettings() { + + } + + public void OnEnable() { + base.hideFlags = HideFlags.HideAndDontSave; + } + + public SF_PassSettings Initialize( SF_Editor materialEditor ) { + + this.editor = materialEditor; + fChecker = ScriptableObject.CreateInstance().Initialize(this, materialEditor); + + cats = new List(); + cats.Add( catMeta = NewCat ( "Shader Settings" )); + cats.Add( catProperties = NewCat ( "Properties" )); + cats.Add( catLighting = NewCat ( "Lighting" )); + cats.Add( catGeometry = NewCat ( "Geometry" )); + cats.Add( catBlending = NewCat ( "Blending" )); + cats.Add( catExperimental = NewCat ( "Experimental" )); + cats.Add( catConsole = NewCat ( "Console" )); + + return this; + } + + public T NewCat(string label) where T : SFPS_Category{ + return (T)ScriptableObject.CreateInstance().Initialize(this.editor, this, label); + } + + + Rect innerScrollRect = new Rect(0,0,0,0); + Vector2 scrollPos; + + float targetScrollWidth = 0f; + float currentScrollWidth = 0f; + + // Call this from the editor script + public bool guiChanged = false; + public int OnLocalGUI( int yOffset, int in_maxWidth ) { + + + if(Event.current.type == EventType.Repaint) + currentScrollWidth = Mathf.Lerp(currentScrollWidth, targetScrollWidth, 0.3f); + + this.maxWidth = in_maxWidth; + + Rect scrollRectPos = new Rect(0f,yOffset,in_maxWidth,Screen.height/EditorGUIUtility.pixelsPerPoint-yOffset-20); + bool useScrollbar = (innerScrollRect.height > scrollRectPos.height); + + targetScrollWidth = useScrollbar ? 15 : 0; + + int scrollBarWidth = (int)currentScrollWidth; + + + innerScrollRect.width = in_maxWidth-scrollBarWidth; + + guiChanged = false; + + int offset = 0; + + if(innerScrollRect.height < scrollRectPos.height) + innerScrollRect.height = scrollRectPos.height; + + this.maxWidth -= scrollBarWidth; + + int scrollPad = scrollBarWidth-15; + GUI.BeginGroup(scrollRectPos); + Rect scrollWrapper = scrollRectPos; + scrollWrapper.x = 0; + scrollWrapper.y = 0; // Since it's grouped + scrollPos = GUI.BeginScrollView(scrollWrapper.PadRight(scrollPad),scrollPos,innerScrollRect,false,true); + { + //offset = SettingsMeta( 0 ); + bool showErrors = editor.nodeView.treeStatus.Errors.Count > 0; + if( !showErrors ) + catConsole.expanded = false; + EditorGUI.BeginDisabledGroup( !showErrors ); + offset = catConsole.Draw( offset ); + offset = GUISeparator( offset ); // ---------------------------------------------- + EditorGUI.EndDisabledGroup(); + offset = catMeta.Draw( offset ); + offset = GUISeparator( offset ); // ---------------------------------------------- + offset = catProperties.Draw(offset); + offset = GUISeparator( offset ); // ---------------------------------------------- + offset = catLighting.Draw(offset); + offset = GUISeparator( offset ); // ---------------------------------------------- + offset = catGeometry.Draw( offset ); + offset = GUISeparator( offset ); // ---------------------------------------------- + offset = catBlending.Draw(offset); + offset = GUISeparator( offset ); // ---------------------------------------------- + offset = catExperimental.Draw(offset); + offset = GUISeparator( offset ); // ---------------------------------------------- + + } + GUI.EndScrollView(); + GUI.EndGroup(); + this.maxWidth += scrollBarWidth; + + + if( guiChanged ) { + editor.ps = this; + editor.OnShaderModified(NodeUpdateType.Hard); + } + + innerScrollRect.height = offset; + return offset; + + } + + + + private bool prevChangeState; + public void StartIgnoreChangeCheck() { + prevChangeState = EditorGUI.EndChangeCheck(); // Don't detect changes when toggling + } + + public void EndIgnoreChangeCheck() { + EditorGUI.BeginChangeCheck(); // Don't detect changes when toggling + if( prevChangeState ) { + GUI.changed = true; + } + } + + + + public void UpdateAutoSettings(){ + catBlending.UpdateAutoSettings(); + } + + + + public int GUISeparator(int yOffset) { + GUI.Box( new Rect(0,yOffset,maxWidth,1), "", EditorStyles.textField ); + return yOffset + 1; + } + + public bool IsOutlined(){ + return mOut.outlineWidth.IsConnectedEnabledAndAvailable(); + } + + public bool UseClipping() { + return mOut.alphaClip.IsConnectedEnabledAndAvailable(); + } + + public bool HasGloss(){ + return mOut.gloss.IsConnectedEnabledAndAvailable(); + } + + public bool HasNormalMap() { + return mOut.normal.IsConnectedEnabledAndAvailable(); + } + + public bool HasTangentSpaceNormalMap() { + return HasNormalMap() && catGeometry.normalSpace == SFPSC_Geometry.NormalSpace.Tangent; + } + public bool HasObjectSpaceNormalMap() { + return HasNormalMap() && catGeometry.normalSpace == SFPSC_Geometry.NormalSpace.Object; + } + public bool HasWorldSpaceNormalMap() { + return HasNormalMap() && catGeometry.normalSpace == SFPSC_Geometry.NormalSpace.World; + } + + public bool HasRefraction() { + return mOut.refraction.IsConnectedEnabledAndAvailable(); + } + + public bool HasTessellation() { + return mOut.tessellation.IsConnectedEnabledAndAvailable(); + } + public bool HasOutline() { + return mOut.outlineWidth.IsConnectedEnabledAndAvailable(); + } + + public bool HasDisplacement() { + return mOut.displacement.IsConnectedEnabledAndAvailable(); + } + + public bool HasEmissive() { + return mOut.emissive.IsConnectedEnabledAndAvailable(); + } + + public bool HasDiffuse(){ + return mOut.diffuse.IsConnectedEnabledAndAvailable(); + } + + public bool HasAlpha() { + return mOut.alpha.IsConnectedEnabledAndAvailable(); + } + + public bool HasAlphaClip() { + return mOut.alphaClip.IsConnectedEnabledAndAvailable(); + } + + public bool HasSpecular(){ + return mOut.specular.IsConnectedEnabledAndAvailable(); + } + + public bool HasDiffusePower(){ + return mOut.diffusePower.IsConnectedEnabledAndAvailable(); + } + + public bool HasAmbientDiffuse() { + return mOut.ambientDiffuse.IsConnectedEnabledAndAvailable(); + } + + public bool HasAmbientSpecular() { + return mOut.ambientSpecular.IsConnectedEnabledAndAvailable(); + } + + public bool HasAmbientOcclusionDiffuse() { + return mOut.diffuseOcclusion.IsConnectedEnabledAndAvailable(); + } + + public bool HasAmbientOcclusionSpecular() { + return mOut.specularOcclusion.IsConnectedEnabledAndAvailable(); + } + + public bool HasTransmission() { + return mOut.transmission.IsConnectedEnabledAndAvailable(); + } + + public bool HasAddedLight() { + return HasEmissive() || catLighting.HasSpecular(); + } + + public bool HasLightWrapping() { + return mOut.lightWrap.IsConnectedEnabledAndAvailable(); + } + } +} + +/* + public class SF_Serializeable{ + + public string key; + + public SF_Serializeable(){ + + } + + public virtual string Serialize(bool last = false){ + } + + public virtual void Deserialize(string key, string value){ + } + + protected string Serialize( string key, string value, bool last = false ) { + return key + ":" + value + (last ? "" : ","); + } + + } + + public class SFS_Int : SF_Serializeable{ + + int val; + + public SFS_Int(string key){ + this.key = key; + } + + public override string Serialize(bool last = false){ + return Serialize(key,val.ToString(),last); + } + + public override void Deserialize(string key, string value){ + if(key == this.key){ + val = int.Parse(value); + } + } + + }*/ \ No newline at end of file diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/SF_PassSettings.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/SF_PassSettings.cs.meta new file mode 100644 index 00000000..14e05a86 --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/SF_PassSettings.cs.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: dc6ba9da0a5ba4b01a67cbac50456748 +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/SF_PreviewSettings.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/SF_PreviewSettings.cs new file mode 100644 index 00000000..d73a4da2 --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/SF_PreviewSettings.cs @@ -0,0 +1,22 @@ +using UnityEngine; +using System.Collections; + +namespace ShaderForge { + [System.Serializable] + public class SF_PreviewSettings { + + //public SF_PreviewWindow preview; + + // TODO: Load/Save default settings + + public bool previewAutoRotate = true; + public Color colorBg = SF_GUI.ProSkin ? new Color( 0.2f, 0.2f, 0.2f, 1f ) : new Color( 0.6f, 0.6f, 0.6f, 1f ); + + + public SF_PreviewSettings( SF_PreviewWindow preview ) { + //this.preview = preview; + } + + + } +} \ No newline at end of file diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/SF_PreviewSettings.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/SF_PreviewSettings.cs.meta new file mode 100644 index 00000000..833d8827 --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/SF_PreviewSettings.cs.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 893d44f1243e74fbca6139978a92f372 +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/SF_SelectionManager.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/SF_SelectionManager.cs new file mode 100644 index 00000000..ac2edae9 --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/SF_SelectionManager.cs @@ -0,0 +1,412 @@ +using UnityEngine; +using UnityEditor; +using System.Collections; +using System.Collections.Generic; + +namespace ShaderForge { + [System.Serializable] + public class SF_SelectionManager : ScriptableObject { + + [SerializeField] + SF_Editor editor; + [SerializeField] + List selection; + public List Selection { + get { + if( selection == null ) + selection = new List(); + return selection; + } + } + + public void OnEnable() { + base.hideFlags = HideFlags.HideAndDontSave; + } + + [SerializeField] + Rect selectionBox = new Rect(256,32,32,64); + + [SerializeField] + public bool boxSelecting = false; + + public void MoveSelection(Vector2 delta, SF_Node ignore) { + foreach(SF_Node n in Selection){ + if( n == ignore ) + continue; + //if(selection.Count > 1){ + //Debug.Log("Selection count = " + selection.Count + " thus nodes"); + Undo.RecordObject(n,"move nodes"); + //} + n.rect.x += delta.x; + n.rect.y += delta.y; + } + } + + + + public void DrawBoxSelection() { + if( boxSelecting ) { + Rect r = new Rect( selectionBox ); + SF_Tools.FlipNegative( ref r ); + GUI.Box( r, string.Empty, SF_Styles.SelectionStyle ); + //GUI.Label(r,selectionBox.ToString().Replace(' ','\n')); + } + } + + public void OnGUI() { + + /* + selectionBox.x = Event.current.mousePosition.x; + selectionBox.y = Event.current.mousePosition.y; + selectionBox.width = 128; + selectionBox.height = 128; + */ + + + if( SF_GUI.ReleasedRawLMB() && boxSelecting) { + ExecuteBoxSelect(); + } + + + if( SF_GUI.PressedLMB() && SF_GUI.HoldingBoxSelect() ) { + boxSelecting = true; + + if( !SF_GUI.MultiSelectModifierHeld() ) + DeselectAll(registerUndo:true); + + selectionBox.x = Event.current.mousePosition.x; + selectionBox.y = Event.current.mousePosition.y; + Event.current.Use(); + } + + + // Duplicate, copy, cut, paste + EventType et = Application.platform == RuntimePlatform.OSXEditor ? EventType.KeyDown : EventType.KeyUp; // TODO: Use KeyDown for Windows too + + + + if( SF_GUI.HoldingControl() && Event.current.type == et && !SF_Node.isEditingAnyNodeTextField ) { + + switch(Event.current.keyCode){ + case(KeyCode.D): + DuplicateSelection(); + break; + case(KeyCode.C): + CopySelection(); + break; + case(KeyCode.X): + CutSelection(); + break; + case(KeyCode.V): + PasteFromClipboard(); + break; + } + + } + + // Selection box + if( boxSelecting ) { + + selectionBox.width = Event.current.mousePosition.x - selectionBox.x; + selectionBox.height = Event.current.mousePosition.y - selectionBox.y; + + if(Event.current.isMouse) + Event.current.Use(); + } + + if( SF_GUI.PressedDelete() && !SF_Node.isEditingAnyNodeTextField ) { + DeleteSelected(); + Event.current.Use(); + } + } + + + + + public void ExecuteBoxSelect() { + boxSelecting = false; + foreach( SF_Node n in editor.nodes ) { + if( SF_Tools.Intersects( n.rect, selectionBox ) ){ + n.Select(registerUndo:true); + } + } + Event.current.Use(); + } + + + + public void DeleteSelected() { + + + if(Selection.Contains(editor.mainNode)){ + editor.mainNode.Deselect(registerUndo:false); // Deselect main node if you press delete + } + + int selCount = Selection.Count; + +// Debug.Log("Delete selected, count = " + selCount); + + if(selCount == 0) + return; + + string undoMsg = ""; + + if(selCount == 1) + undoMsg = "delete " + Selection[0].nodeName; + else + undoMsg = "delete " + selCount + " nodes"; + //Debug.Log("Selection delete initiated - " + undoMsg ); + + Undo.RecordObject(editor,undoMsg); + Undo.RecordObject(editor.nodeView.treeStatus, undoMsg); + + foreach(SF_Node node in editor.nodes){ + node.UndoRecord(undoMsg); + // Undo.RecordObject(node, undoMsg); + } + + Undo.RecordObject(this,undoMsg); + + + + // Undo recording is weird :( + + + + + + + for( int i = editor.nodes.Count - 1; i >= 0; i-- ) { + SF_Node n = editor.nodes[i]; + if( n.selected ) { + + if(n is SFN_Relay){ + SF_NodeConnector inCon = n["IN"]; + SF_NodeConnector outCon = n["OUT"]; + if(inCon.IsConnected() && outCon.IsConnected() ){ + // Relink all outputs to the incoming connectors + for (int ir = outCon.outputCons.Count - 1; ir >= 0; ir--) { + outCon.outputCons[ir].LinkTo(inCon.inputCon); + } + inCon.Disconnect(); + } + } + + foreach(SF_NodeConnector con in editor.nodes[i].connectors){ + if(con.conType == ConType.cOutput){ + con.Disconnect(); + } + } + if( editor.nodeView.treeStatus.propertyList.Contains( editor.nodes[i] ) ) + editor.nodeView.treeStatus.propertyList.Remove( editor.nodes[i] ); + editor.nodes[i].Deselect(registerUndo:false); + editor.nodes.RemoveAt(i); + + + //editor.nodes[i].Delete(registerUndo:false, undoMsg:undoMsg); + } + } + } + + + // Clipboard + public string[] CbNodes{ + get{ + string s = EditorPrefs.GetString("shaderforge_clipboard", ""); + return s.Split('\n'); + } + set{ + string s = ""; + for( int i=0;i 1) + undoMsg += "nodes"; + else + undoMsg += Selection[0].nodeName; + + RecordUndoNodeCreationAndSelectionStates(undoMsg); + + //Rect selBounds = GetSelectionBounds(); + Vector2 posOffset = new Vector2(64,64); + + InstantiateNodes(selectionSerialized, posOffset, undoMsg); + + } + + + void InstantiateNodes(string[] serializedNodes, Vector2 posOffset, string undoMsg){ + // Make sure it knows about the editor + SF_Parser.editor = editor; + + List newNodes = new List(); // List of all new nodes + List links = new List(); // Used for multi-clone + + int[] idOld = new int[serializedNodes.Length]; + int[] idNew = new int[serializedNodes.Length]; + + for(int i=0;i srzdSel = new List(); + + for(int i=0;i CloneNodeAndGetLinks(){ + List links = new List(); + + + + + return links; + } + + + public SF_SelectionManager Initialize( SF_Editor editor ) { + this.editor = editor; + return this; + } + + public void Add(SF_Node n) { + Selection.Add( n ); + } + + public void Remove( SF_Node n ) { + Selection.Remove( n ); + } + + public void DeselectAll(bool registerUndo, string undoMsg = null) { + editor.ResetRunningOutdatedTimer(); + foreach( SF_Node n in editor.nodes ) { + n.Deselect(registerUndo, undoMsg); + } + } + + + } +} + diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/SF_SelectionManager.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/SF_SelectionManager.cs.meta new file mode 100644 index 00000000..8afde125 --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/SF_SelectionManager.cs.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 43463d546def04200b133ba2feb5737d +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/SF_Settings.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/SF_Settings.cs new file mode 100644 index 00000000..8b8f234b --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/SF_Settings.cs @@ -0,0 +1,154 @@ +using UnityEngine; +using UnityEditor; +using System.Collections; +using System.Collections.Generic; +using System; + + +namespace ShaderForge { + + public enum SF_Setting{ + CurveShape, // int Bezier/Linear/etc + AutoCompile, // bool True/False + HierarchalNodeMove, // bool True/False + RealTimeNodePreviews, // bool True/False + QuickPickScrollWheel, // bool True/False + ControlMode, // int Shader Forge / Unity / Unreal + ShowVariableSettings, // bool True/False + ShowNodeSidebar, // bool True/False + NodeRenderMode // int Mixed / MixedRealtime / Spheres / SpheresRealtime / ViewportRealtime + }; + + public enum ControlMode { ShaderForge, UnityMaya, Unreal }; + public enum NodeRenderMode { Mixed, Spheres, Viewport }; + + public class SF_Settings { + + public const string prefix = "shaderforge_"; + public const string suffixDefault = "_default"; + + public SF_Settings() { + + } + + public static void InitializeSettings() { + // Set up all defaults + SetDefaultBool( SF_Setting.HierarchalNodeMove, false ); + SetDefaultBool( SF_Setting.QuickPickScrollWheel, true ); + SetDefaultBool( SF_Setting.ShowVariableSettings, false ); + SetDefaultBool( SF_Setting.ShowNodeSidebar, true ); + SetDefaultBool( SF_Setting.RealTimeNodePreviews, true ); + SetDefaultInt( SF_Setting.NodeRenderMode, (int)NodeRenderMode.Mixed ); + } + + + // Cached, for speed + public static bool autoCompile; + public static bool hierarchalNodeMove; + public static bool quickPickScrollWheel; + public static bool showVariableSettings; + public static bool showNodeSidebar; + public static bool realtimeNodePreviews; + public static NodeRenderMode nodeRenderMode; + + // These two are called in OnEnable and OnDisable in SF_Editor + public static void LoadAllFromDisk() { + autoCompile = LoadBool( SF_Setting.AutoCompile ); + hierarchalNodeMove = LoadBool( SF_Setting.HierarchalNodeMove ); + quickPickScrollWheel = LoadBool( SF_Setting.QuickPickScrollWheel ); + showVariableSettings = LoadBool( SF_Setting.ShowVariableSettings ); + showNodeSidebar = LoadBool( SF_Setting.ShowNodeSidebar ); + realtimeNodePreviews = LoadBool( SF_Setting.RealTimeNodePreviews ); + nodeRenderMode = NodeRenderMode.Mixed; // nodeRenderMode = (NodeRenderMode)LoadInt( SF_Setting.NodeRenderMode ); + + } + public static void SaveAllToDisk() { + SaveBool( SF_Setting.AutoCompile, autoCompile ); + SaveBool( SF_Setting.HierarchalNodeMove, hierarchalNodeMove ); + SaveBool( SF_Setting.QuickPickScrollWheel, quickPickScrollWheel ); + SaveBool( SF_Setting.ShowVariableSettings, showVariableSettings ); + SaveBool( SF_Setting.ShowNodeSidebar, showNodeSidebar ); + SaveBool( SF_Setting.RealTimeNodePreviews, realtimeNodePreviews ); + SaveInt( SF_Setting.NodeRenderMode, (int)nodeRenderMode ); + } + + + + // -------------------------------------------------- + // Special functions + + public static bool RenderNodesInRealtime() { + return realtimeNodePreviews || nodeRenderMode == NodeRenderMode.Viewport; + } + + // -------------------------------------------------- + public static bool LoadBool( SF_Setting setting ) { + string key = KeyOf(setting); + return EditorPrefs.GetBool( key, EditorPrefs.GetBool( key + suffixDefault ) ); + } + public static string LoadString( SF_Setting setting ) { + string key = KeyOf(setting); + return EditorPrefs.GetString( key, EditorPrefs.GetString( key + suffixDefault ) ); + } + public static int LoadInt( SF_Setting setting ) { + string key = KeyOf(setting); + return EditorPrefs.GetInt( key, EditorPrefs.GetInt( key + suffixDefault) ); + } + public static float LoadFloat( SF_Setting setting ) { + string key = KeyOf(setting); + return EditorPrefs.GetFloat( key, EditorPrefs.GetFloat( key + suffixDefault) ); + } + // -------------------------------------------------- + private static string KeyOf( SF_Setting setting ){ + return prefix + setting.ToString(); + } + // -------------------------------------------------- + private static void SetDefaultBool( SF_Setting setting, bool value ){ + string key = KeyOf(setting); + EditorPrefs.SetBool(key + suffixDefault, value); + if(!EditorPrefs.HasKey(key)){ + SaveBool(setting, value); + } + } + private static void SetDefaultString(SF_Setting setting, string value){ + string key = KeyOf(setting); + EditorPrefs.SetString(key + suffixDefault, value); + if(!EditorPrefs.HasKey(key)){ + SaveString(setting, value); + } + } + private static void SetDefaultInt(SF_Setting setting, int value){ + string key = KeyOf(setting); + EditorPrefs.SetInt(key + suffixDefault, value); + if(!EditorPrefs.HasKey(key)){ + SaveInt(setting, value); + } + } + private static void SetDefaultFloat(SF_Setting setting, float value){ + string key = KeyOf(setting); + EditorPrefs.SetFloat(key + suffixDefault, value); + if(!EditorPrefs.HasKey(key)){ + SaveFloat(setting, value); + } + } + // -------------------------------------------------- + public static void SaveBool( SF_Setting setting, bool value ){ + string key = KeyOf(setting); + EditorPrefs.SetBool(key, value); + } + public static void SaveString(SF_Setting setting, string value){ + string key = KeyOf(setting); + EditorPrefs.SetString(key, value); + } + public static void SaveInt(SF_Setting setting, int value){ + string key = KeyOf(setting); + EditorPrefs.SetInt(key, value); + } + public static void SaveFloat(SF_Setting setting, float value){ + string key = KeyOf(setting); + EditorPrefs.SetFloat(key, value); + } + + } + +} diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/SF_Settings.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/SF_Settings.cs.meta new file mode 100644 index 00000000..35c66761 --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/SF_Settings.cs.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 94c65d8d5218043a49bf95b2ae42fc31 +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/SF_StatusBox.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/SF_StatusBox.cs new file mode 100644 index 00000000..b9949efc --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/SF_StatusBox.cs @@ -0,0 +1,328 @@ +using UnityEngine; +using UnityEditor; +using System.Collections; +using System.Collections.Generic; + +namespace ShaderForge { + [System.Serializable] + public class SF_StatusBox { + + [SerializeField] + private SF_Editor editor; + [SerializeField] + SF_MinMax vCount = new SF_MinMax(); + [SerializeField] + SF_MinMax fCount = new SF_MinMax(); + [SerializeField] + SF_MinMax vtCount = new SF_MinMax(); + [SerializeField] + SF_MinMax ftCount = new SF_MinMax(); + [SerializeField] + public RenderPlatform platform; + + [SerializeField] + private GUIStyle labelStyle; + [SerializeField] + private GUIStyle labelStyleCentered; + [SerializeField] + private GUIStyle holderStyle; + [SerializeField] + private GUIStyle headerStyle; + + public SF_StatusBox() { + + + + } + + public void Initialize( SF_Editor editor) { + this.editor = editor; + labelStyle = new GUIStyle( EditorStyles.label ); + labelStyle.margin = new RectOffset( 0, 0, 0, 0 ); + labelStyle.padding = new RectOffset( 8, 0, 3, 1 ); + + labelStyleCentered = new GUIStyle( labelStyle ); + labelStyleCentered.alignment = TextAnchor.MiddleCenter; + + holderStyle = new GUIStyle(); + holderStyle.margin = new RectOffset( 0, 0, 0, 0 ); + holderStyle.padding = new RectOffset( 0, 0, 0, 0 ); + + + headerStyle = new GUIStyle( EditorStyles.toolbar ); + headerStyle.alignment = TextAnchor.MiddleLeft; + headerStyle.fontSize = 10; + //headerStyle.fontStyle = FontStyle.Bold; + } + + + public int OnGUI( int yOffset, int in_maxWidth ) { + + Rect r = new Rect( 0, yOffset, in_maxWidth, 18 ); + + //string tmp = "Instructions: "; + + //if( Compiled() ) { + headerStyle.normal.textColor = EditorGUIUtility.isProSkin ? Color.white : Color.black; + //} else { + //headerStyle.normal.textColor = new Color( 0f, 0f, 0f, 0.75f ); + //tmp = "(Shader not compiled yet)"; + //} + + GUI.Label( r, string.Empty, EditorStyles.toolbar ); // Toolbar + + Rect iRect = r; + + //Rect rTmp = iRect; + //rTmp = rTmp.MovedUp(); + + //GUI.Label(rTmp, "MIP USED; " + editor.nodeView.treeStatus.mipInputUsed); + + iRect.width = 64f; + + + GUI.color = new Color(1f,1f,1f,0.5f); + if( GUI.Button( iRect, "Select", EditorStyles.toolbarButton) ) { + Selection.activeObject = editor.currentShaderAsset; + EditorGUIUtility.PingObject(editor.currentShaderAsset); + } + GUI.color = Color.white; + + /* Instruction count disabled. + if(!editor.nodeView.treeStatus.CanDisplayInstructionCount){ + InstructionLabel( ref iRect, SF_Styles.IconWarningSmall, "Instruction count unavailable"); + } else { + + InstructionLabel( ref iRect, SF_GUI.Inst_vert, vCount.ToString() ); + InstructionLabel( ref iRect, SF_GUI.Inst_frag, fCount.ToString() ); + if( !vtCount.Empty() ) + InstructionLabel( ref iRect, SF_GUI.Inst_vert_tex, vtCount.ToString() ); + if( !ftCount.Empty() ) + InstructionLabel( ref iRect, SF_GUI.Inst_frag_tex, ftCount.ToString() ); + } + */ + + + + + + + + + + //if(Compiled()){ + Color c = GUI.color; + c.a = 0.5f; + GUI.color = c; + r.xMin += iRect.x; + r.xMax -= 4; + GUI.Label(r, SF_Tools.rendererLabels[(int)platform],SF_Styles.InstructionCountRenderer); + GUI.color = Color.white; + //} + + + + + + + GUI.color = Color.white; + + return (int)r.yMax; + } + + + public void InstructionLabel(ref Rect iRect, Texture2D icon, string label) { + + iRect.width = icon.width; + GUI.DrawTexture( iRect, icon ); + iRect.x += iRect.width; + iRect.width = SF_GUI.WidthOf( label, headerStyle )+2; + GUI.Label( iRect, label, headerStyle ); + iRect.x += iRect.width; + } + + + private bool Compiled() { + if( vCount.min == 0 ) + return false; + return true; + } + + //private enum LookingFor{ }; + + public void UpdateInstructionCount( Shader sh ) { + // Compiled shader string: + string[] css = ( new SerializedObject( sh ) ).FindProperty( "m_Script" ).stringValue.Split( '\n' ); + + Debug.Log( ( new SerializedObject( sh ) ).FindProperty( "m_Script" ).stringValue ); + Debug.Log(css.Length); + + if(css.Length < 2){ + return; + } + + ShaderProgram prog = ShaderProgram.Vert; + + + List passes = new List(); + SFIns_Pass cPass; // current pass + + for( int i = 0; i < css.Length; i++ ) { + if( css[i].Contains( "Pass {" ) ) { // Found a pass! + + bool ignoreMin = false; + i++; + + // Shadow passes + if( css[i].Contains( "Name \"ShadowCaster\"" ) || css[i].Contains( "Name \"ShadowCollector\"" ) || css[i].Contains( "Name \"ForwardAdd\"" ) ) + continue; + + if( (css[i].Contains("Name \"PrePassBase\"") || css[i].Contains("Name \"PrePassFinal\"") ) && editor.ps.catLighting.renderPath == SFPSC_Lighting.RenderPath.Forward ) + continue; + + if( (css[i].Contains("Name \"ForwardBase\"") || css[i].Contains("Name \"ForwardAdd\"") ) && editor.ps.catLighting.renderPath == SFPSC_Lighting.RenderPath.Deferred ) + continue; + + + //ignoreMin = true; + + cPass = new SFIns_Pass(); + + for ( ; i < css.Length; i++ ) { + + if(css[i].StartsWith("// Vertex combos")){ + prog = ShaderProgram.Vert; + } else if(css[i].StartsWith("// Fragment combos")){ + prog = ShaderProgram.Frag; + } else { + continue; + } + + // Program found! + i++; // Next line... + // Scan following lines for shader platform data + for ( ; i < css.Length; i++ ) { + if(css[i].StartsWith( "//" )){ + cPass.Parse( prog, css[i], ignoreMin ); + } else { + // No more platform data + break; + } + } + // Leave this loop and start searching for the next pass if we just found the frag data + if( prog == ShaderProgram.Frag ) + break; + } + // Add the current pass to the list + passes.Add(cPass); + } + } + + + // All passes scanned! + // Show, some sort of instruction count + // Show sum of all passes min for now + vCount.Reset(); + fCount.Reset(); + vtCount.Reset(); + ftCount.Reset(); + + // Find which program to display instruction count for! + // if(mac) opengl + // if(win) d3d9 + // else gles + // else *any enabled* + + + + platform = GetPrimaryPlatform(); + int primPlat = (int)platform; + + + + // Debug.Log("Primary platform: " + (RenderPlatform)primPlat); + + + + foreach( SFIns_Pass p in passes ) { + vCount += p.plats[primPlat].vert; // Only d3d9 for now // TODO + fCount += p.plats[primPlat].frag; + vtCount += p.plats[primPlat].vTex; + ftCount += p.plats[primPlat].fTex; + } + + + //Debug.Log("vCount = " + vCount); + + + + + /* + int programID = 0; // 0 = vert | 1 = frag + for( int i = 0; i < css.Length; i++ ) { + if( css[i].Contains( "instructions" ) ) + continue; + if( css[i].Contains( "# " ) ) { + if( programID == 0 ) { + string[] split = css[i].Trim().Split( ' ' ); + vCount = int.Parse( split[1] ); // Vertex instructions TODO: Textures in vertex program + programID++; // Search for fragment + } else if( programID == 1 ) { + string[] split = css[i].Trim().Split( ' ' ); + fCount = int.Parse( split[1] ); // Fragment instructions + try { + tCount = int.Parse( split[3] ); // Textures + } catch { + + } + + } + } + } + */ + + + + + } + + + public RenderPlatform GetPrimaryPlatform() { + + // Let's check our build target! + BuildTarget active = EditorUserBuildSettings.activeBuildTarget; + + // Mobile platforms + // 9 = BuildTarget.iPhone // Unity 4.x + // 9 = BuildTarget.iOS // Unity 5.x + // 28 = BuildTarget.BB10 // Unity 4.x + // 28 = BuildTarget.BlackBerry // Unity 5.x + + bool mobile = ( active == BuildTarget.Android || (int)active == 9 || (int)active == 28 ); + if(mobile && editor.ps.catMeta.usedRenderers[(int)RenderPlatform.gles]) + return RenderPlatform.gles; + + // Standalone / Webplayer. In this case, it depends on what the user is using + // Pick the one that is currently running + if( Application.platform == RuntimePlatform.OSXEditor && editor.ps.catMeta.usedRenderers[(int)RenderPlatform.glcore] ) + return RenderPlatform.glcore; + if( Application.platform == RuntimePlatform.WindowsEditor && editor.ps.catMeta.usedRenderers[(int)RenderPlatform.d3d9] ) + return RenderPlatform.d3d9; + if( Application.platform == RuntimePlatform.WindowsEditor && editor.ps.catMeta.usedRenderers[(int)RenderPlatform.d3d11] ) + return RenderPlatform.d3d11; + + + Debug.LogWarning( "[SF] Unhandled platform settings. Make sure your build target (" + active + ") is sensible, and that you've got platforms enabled to compile for" ); + // You're using some weird setup, pick first active one + for(int i=0;i<12;i++){ + if(editor.ps.catMeta.usedRenderers[i]) + return (RenderPlatform)i; + } + + Debug.LogError("No renderers compilable, defaulting to d3d9"); + return RenderPlatform.d3d9; + } + + + } +} \ No newline at end of file diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/SF_StatusBox.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/SF_StatusBox.cs.meta new file mode 100644 index 00000000..290901e6 --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/SF_StatusBox.cs.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: bdeadd90c5eb14af9b16fdf9babcd447 +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_ConnectionGroups.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/_ConnectionGroups.meta new file mode 100644 index 00000000..f4151bb8 --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/_ConnectionGroups.meta @@ -0,0 +1,5 @@ +fileFormatVersion: 2 +guid: 69c81e70ae39d4265890a1da43af2896 +folderAsset: yes +DefaultImporter: + userData: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_ConnectionGroups/SFNCG_Append.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/_ConnectionGroups/SFNCG_Append.cs new file mode 100644 index 00000000..ab875e8b --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/_ConnectionGroups/SFNCG_Append.cs @@ -0,0 +1,213 @@ +using UnityEngine; +using System.Collections; + + +namespace ShaderForge { + + // Used to detect types based on input + [System.Serializable] + public class SFNCG_Append : SF_NodeConnectionGroup { + + + + public SFNCG_Append Initialize( SF_NodeConnector output, params SF_NodeConnector[] inputs ) { + this.output = output; + this.inputs = inputs; + return this; + } + + + public int GetOutputComponentCount() { + + int cc = 0; + for( int i = 0; i < 4; i++ ) { + if(inputs[i].IsConnectedAndEnabled()) + cc += inputs[i].inputCon.GetCompCount(); + } + + if( cc == 0 ) + return 1; + else + return cc; + + } + + + public override void Refresh() { + + + // ALLOWED COMBOS + /* + * v1 v1 = v2 + * + * v1 v1 v1 = v3 + * v1 v2 = v3 + * + * v1 v1 v1 v1 = v4 + * v2 v1 v1 = v4 + * v2 v2 = v4 + * v1 v3 = v4 + */ + + // Are none of the inputs connected? In that case, it's all default + if( NoInputsConnected() ) + ResetValueTypes(); + + if( !inputs[0].node.InputsConnected() ) + return; + + + + int inCompSum = GetOutputComponentCount(); + + + + + if( inCompSum < 2 ) { + Debug.LogError( "Input sum is somehow " + inCompSum + " on " + inputs[0].node.nodeName ); + inputs[1].Disconnect(); // This should never happen + return; + } + + if( inCompSum > 4 ) { // TODO: Error message + Debug.LogWarning( "Connected too many components in Append node! Disconnecting all" ); + + for( int i = 0; i < 4; i++ ) { + if( inputs[i].IsConnectedAndEnabled() ) + Debug.LogWarning( "["+i+"]: " + inputs[i].inputCon.node.nodeName + " with " + inputs[i].inputCon.GetCompCount() + " components" ); + inputs[i].Disconnect(); + } + + return; + } + + + switch( inCompSum ) { + case 2: + output.valueType = ValueType.VTv2; + break; + case 3: + output.valueType = ValueType.VTv3; + break; + case 4: + output.valueType = ValueType.VTv4; + break; + } + + + + + + + /* + + + // If any input is non-pending, use that as base to assign the rest. + // Inputs: + ValueType baseInType = GetBaseInputType(); + ValueType genericInType = GetGenericInputType(); + AssignToEmptyInputs( genericInType ); + + // Output: + if( InputsMissing() ) { + if( baseInType == ValueType.VTv1 ) + output.valueType = ValueType.VTvPending; + else + output.valueType = baseInType; + } else { + output.valueType = GetDominantInputType(); + } + */ + } + + /* + + public ValueType GetGenericInputType() { + ValueType vt = GetBaseInputType(); + switch( vt ) { + case ValueType.VTv1: + return ValueType.VTvPending; + case ValueType.VTv2: + return ValueType.VTv1v2; + case ValueType.VTv3: + return ValueType.VTv1v3; + case ValueType.VTv4: + return ValueType.VTv1v4; + default: + Debug.LogError( "Invalid attempt to get generic input type from " + vt ); + return ValueType.VTvPending; + } + } + + public ValueType GetDominantInputType() { + ValueType dom = inputs[0].valueType; + for( int i = 1 ; i < inputs.Length ; i++ ) { + dom = GetDominantType( dom, inputs[i].valueType); + } + return dom; + } + + public ValueType GetDominantType(ValueType a, ValueType b) { + if( a == b ) + return a; + + if( a == ValueType.VTvPending ) + return b; + + if( b == ValueType.VTvPending ) + return a; + + if( a == ValueType.VTv1 ) { + if( IsVectorType( b ) ) + return b; + else + return a; + } + if( b == ValueType.VTv1 ) { + if( IsVectorType( a ) ) + return a; + else + return b; + } + + Debug.LogError( "You should not be able to get here! Dominant pending type returned" ); + return ValueType.VTvPending; + } + + + public ValueType GetBaseInputType() { + + ValueType retType = ValueType.VTvPending; + + foreach( SF_NodeConnection nc in inputs ) { + retType = GetDominantType( retType, nc.valueType ); + } + + if( retType == ValueType.VTvPending ) + Debug.LogError( "You should not be able to get here! Pending type returned" ); + return retType; + } + + public static bool CompatibleTypes( ValueType tInput, ValueType tOutput ) { + + // If they are the same type, they are of course compatible + if( tInput == tOutput ) + return true; + // If the input is a pending vector, any output vector is compatible + if( tInput == ValueType.VTvPending && IsVectorType( tOutput ) ) + return true; + // Check multi-type for v1/v2 + if( tInput == ValueType.VTv1v2 && ( tOutput == ValueType.VTv1 || tOutput == ValueType.VTv2 ) ) + return true; + // Check multi-type for v1/v3 + if( tInput == ValueType.VTv1v3 && ( tOutput == ValueType.VTv1 || tOutput == ValueType.VTv3 ) ) + return true; + // Check multi-type for v1/v4 + if( tInput == ValueType.VTv1v4 && ( tOutput == ValueType.VTv1 || tOutput == ValueType.VTv4 ) ) + return true; + // Didn't find any allowed link, return false + return false; + } + */ + } +} \ No newline at end of file diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_ConnectionGroups/SFNCG_Append.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/_ConnectionGroups/SFNCG_Append.cs.meta new file mode 100644 index 00000000..3fa1ca06 --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/_ConnectionGroups/SFNCG_Append.cs.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 381cd199b81c0e343ad58f37ef1030e1 +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_ConnectionGroups/SFNCG_Arithmetic.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/_ConnectionGroups/SFNCG_Arithmetic.cs new file mode 100644 index 00000000..585b5703 --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/_ConnectionGroups/SFNCG_Arithmetic.cs @@ -0,0 +1,270 @@ +using UnityEngine; +using UnityEditor; +using System.Collections; + +namespace ShaderForge { + + // Used to detect types based on input + [System.Serializable] + public class SFNCG_Arithmetic : SF_NodeConnectionGroup { + + + public bool lockedOutput = false; + + public SFNCG_Arithmetic() { + + } + + public SFNCG_Arithmetic Initialize( SF_NodeConnector output, params SF_NodeConnector[] inputs ) { + this.output = output; + this.inputs = inputs; + return this; + } + + public SFNCG_Arithmetic LockOutType() { + lockedOutput = true; + return this; + } + + + public override void Refresh() { + // Are none of the inputs connected? In that case, it's all default + if( NoInputsConnected() ) + ResetValueTypes(); + + // If any input is non-pending, use that as base to assign the rest. + // Inputs: + ValueType baseInType = GetBaseInputType(); + ValueType genericInType = GetGenericInputType(); + AssignToEmptyInputs( genericInType ); + + //Debug.Log("Refreshing connection group of " + output.node.nodeName ); + + // Output: + if( !lockedOutput ){ + if( RequiredInputsMissing() ) { + if( baseInType == ValueType.VTv1 ) + output.valueType = ValueType.VTvPending; + else + SetOutputValueType(baseInType); + } else { + ValueType vtDom = GetDominantInputType(); + SetOutputValueType(vtDom); + + UpdateTypecasts(); + } + } + } + + + public void SetOutputValueType(ValueType vt){ + + + //Debug.Log("Trying to set to " + vt); + + if(vt == ValueType.VTv1v2) + vt = ValueType.VTv2; + if(vt == ValueType.VTv1v3) + vt = ValueType.VTv3; + if(vt == ValueType.VTv1v4) + vt = ValueType.VTv4; + + + output.SetValueType(vt); + + int ccCalc; + if(SF_Tools.CompCountOf(vt, out ccCalc)){ + if(ccCalc != output.node.texture.CompCount){ + //Debug.Log("Trying to set to " + ccCalc + " from " + vt); + output.node.texture.CompCount = ccCalc; + } + } + + + //Debug.Log("Setting output type of " + output.node.nodeName + " to " + output.valueType); // THIS IS SET TO PENDING VOR VEC1 INPUTS + } + + + + + // This is only run if there are no inputs missing! + public void UpdateTypecasts(){ + ValueType domType = output.valueType; + + + + // Reset typecasts + foreach(SF_NodeConnector con in inputs) + con.typecastTarget = 0; + + if(domType == ValueType.VTv1 || domType == ValueType.VTv1v2 || domType == ValueType.VTv2) + return; // No typecasting + + int typeTarget = 0; + // If the dominant type is Vector3, cast all Vector2 to v3 + if(domType == ValueType.VTv1v3 || domType == ValueType.VTv3){ + typeTarget = 3; + } else if(domType == ValueType.VTv1v4 || domType == ValueType.VTv4){ + typeTarget = 4; + } else { + //Debug.LogError("Shouldn't be able to get here, invalid casting on "+base.output.node.GetType().ToString() + " domType = " + domType.ToString()); + } + + foreach(SF_NodeConnector con in inputs){ + + if(con.IsChild() && !con.IsConnected()) + continue; // This is fine, childs aren't required + + if(con.GetCompCount() == 2) + con.TypecastTo(typeTarget); + } + + } + + + public ValueType GetGenericInputType() { + ValueType vt = GetBaseInputType(); +// Debug.Log("Getting base input type on "+output.node.nodeName+" = " + vt); + switch( vt ) { + case ValueType.VTv1: + if(inputs.Length > 1) + return ValueType.VTvPending; // TODO: Really? + else + return ValueType.VTv1; // TODO: This feels weird + case ValueType.VTv2: + return ValueType.VTv1v2; + case ValueType.VTv3: + return ValueType.VTv1v3; + case ValueType.VTv4: + return ValueType.VTv1v4; + default: + //Debug.LogWarning( "Invalid attempt to get generic input type from " + vt ); + return ValueType.VTvPending; + } + } + + public virtual ValueType GetDominantInputType() { + + ValueType dom = inputs[0].valueType; + + + //ValueType dom = inputs[0].valueType; + //Debug.Log("Val 0 is " + inputs[0].valueType.ToString()); + //Debug.Log("Val 1 is " + inputs[1].valueType.ToString()); + + + for( int i = 1; i < inputs.Length; i++ ) { + dom = GetDominantType( dom, inputs[i].valueType ); + } + //Debug.Log("Found dominant type:" + dom.ToString()); + return dom; + } + + public ValueType GetDominantType( ValueType a, ValueType b ) { + + //if( SF_Debug.nodes) + // Debug.Log("DOM a:" + a.ToString() + " b:" + b.ToString()); + + if( a == b ) + return a; + + if( a == ValueType.VTvPending ) + return b; + + if( b == ValueType.VTvPending ) + return a; + + if( a == ValueType.VTv1 ) { + if( IsVectorType( b ) ) + return b; + else + return a; + } + if( b == ValueType.VTv1 ) { + if( IsVectorType( a ) ) + return a; + else + return b; + } + + if(a == ValueType.VTv2 || a == ValueType.VTv1v2) + return b; + if(b == ValueType.VTv2 || b == ValueType.VTv1v2) + return a; + + + if(a == ValueType.VTv3 && b == ValueType.VTv4) + return b; + if(b == ValueType.VTv3 && a == ValueType.VTv4) + return a; + + if(a == ValueType.VTv1v2 && b == ValueType.VTv2){ + return b; + } + if(b == ValueType.VTv1v2 && a == ValueType.VTv2){ + return a; + } + + if(a == ValueType.VTv1v3 && b == ValueType.VTv3){ + return b; + } + if(b == ValueType.VTv1v3 && a == ValueType.VTv3){ + return a; + } + + if(a == ValueType.VTv1v4 && b == ValueType.VTv4){ + return b; + } + if(b == ValueType.VTv1v4 && a == ValueType.VTv4){ + return a; + } + + + + + // Debug.LogWarning( "You should not be able to get here! Dominant pending type returned" ); + return ValueType.VTvPending; + } + + + public virtual ValueType GetBaseInputType() { + + ValueType retType = ValueType.VTvPending; + + foreach( SF_NodeConnector nc in inputs ) { + retType = GetDominantType( retType, nc.valueType ); + } + + //Debug.Log("Base input type is " + retType); + + //if( retType == ValueType.VTvPending ) + //Debug.LogWarning( "You should not be able to get here! Pending type returned" ); + return retType; + } + + public static bool CompatibleTypes( ValueType tInput, ValueType tOutput ) { + + // If they are the same type, they are of course compatible + if( tInput == tOutput ) + return true; + // If the input is a pending vector, any output vector is compatible + if( tInput == ValueType.VTvPending && IsVectorType( tOutput ) ) + return true; + // Check multi-type for v1/v2 + if( tInput == ValueType.VTv1v2 && ( tOutput == ValueType.VTv1 || tOutput == ValueType.VTv2 ) ) + return true; + // Check multi-type for v1/v3 + if( tInput == ValueType.VTv1v3 && ( tOutput == ValueType.VTv1 || tOutput == ValueType.VTv3 ) ) + return true; + // Check multi-type for v1/v4 + if( tInput == ValueType.VTv1v4 && ( tOutput == ValueType.VTv1 || tOutput == ValueType.VTv4 ) ) + return true; + // Matrices + if( tInput == ValueType.VTv4m4x4 && ( tOutput == ValueType.VTv4 || tOutput == ValueType.VTm4x4 ) ) + return true; + // Didn't find any allowed link, return false + return false; + } + + } +} \ No newline at end of file diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_ConnectionGroups/SFNCG_Arithmetic.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/_ConnectionGroups/SFNCG_Arithmetic.cs.meta new file mode 100644 index 00000000..88a56377 --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/_ConnectionGroups/SFNCG_Arithmetic.cs.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: af887491ef5675d4bac8f00faf209745 +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_ConnectionGroups/SFNCG_ChannelBlend.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/_ConnectionGroups/SFNCG_ChannelBlend.cs new file mode 100644 index 00000000..355f8812 --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/_ConnectionGroups/SFNCG_ChannelBlend.cs @@ -0,0 +1,26 @@ +using UnityEngine; +using UnityEditor; +using System.Collections; + +namespace ShaderForge { + + // Used to detect types based on input + [System.Serializable] + public class SFNCG_ChannelBlend : SFNCG_Arithmetic { + + + public SFNCG_ChannelBlend() { + + } + + public new SFNCG_ChannelBlend Initialize( SF_NodeConnector output, params SF_NodeConnector[] inputs ) { + SF_NodeConnector[] inputsWithoutFirst = new SF_NodeConnector[inputs.Length-1]; + for(int i=1;i 4 ) { // TODO: Error message + Debug.LogWarning( "User connected vectors summing to " + inputs[0].node.nodeName ); + inputs[1].Disconnect(); + return; + } + + + switch( inCompSum ) { + case 2: + output.valueType = ValueType.VTv2; + break; + case 3: + output.valueType = ValueType.VTv3; + break; + case 4: + output.valueType = ValueType.VTv4; + break; + } + + + + + + + /* + + + // If any input is non-pending, use that as base to assign the rest. + // Inputs: + ValueType baseInType = GetBaseInputType(); + ValueType genericInType = GetGenericInputType(); + AssignToEmptyInputs( genericInType ); + + // Output: + if( InputsMissing() ) { + if( baseInType == ValueType.VTv1 ) + output.valueType = ValueType.VTvPending; + else + output.valueType = baseInType; + } else { + output.valueType = GetDominantInputType(); + } + */ + } + + /* + + public ValueType GetGenericInputType() { + ValueType vt = GetBaseInputType(); + switch( vt ) { + case ValueType.VTv1: + return ValueType.VTvPending; + case ValueType.VTv2: + return ValueType.VTv1v2; + case ValueType.VTv3: + return ValueType.VTv1v3; + case ValueType.VTv4: + return ValueType.VTv1v4; + default: + Debug.LogError( "Invalid attempt to get generic input type from " + vt ); + return ValueType.VTvPending; + } + } + + public ValueType GetDominantInputType() { + ValueType dom = inputs[0].valueType; + for( int i = 1 ; i < inputs.Length ; i++ ) { + dom = GetDominantType( dom, inputs[i].valueType); + } + return dom; + } + + public ValueType GetDominantType(ValueType a, ValueType b) { + if( a == b ) + return a; + + if( a == ValueType.VTvPending ) + return b; + + if( b == ValueType.VTvPending ) + return a; + + if( a == ValueType.VTv1 ) { + if( IsVectorType( b ) ) + return b; + else + return a; + } + if( b == ValueType.VTv1 ) { + if( IsVectorType( a ) ) + return a; + else + return b; + } + + Debug.LogError( "You should not be able to get here! Dominant pending type returned" ); + return ValueType.VTvPending; + } + + + public ValueType GetBaseInputType() { + + ValueType retType = ValueType.VTvPending; + + foreach( SF_NodeConnection nc in inputs ) { + retType = GetDominantType( retType, nc.valueType ); + } + + if( retType == ValueType.VTvPending ) + Debug.LogError( "You should not be able to get here! Pending type returned" ); + return retType; + } + + public static bool CompatibleTypes( ValueType tInput, ValueType tOutput ) { + + // If they are the same type, they are of course compatible + if( tInput == tOutput ) + return true; + // If the input is a pending vector, any output vector is compatible + if( tInput == ValueType.VTvPending && IsVectorType( tOutput ) ) + return true; + // Check multi-type for v1/v2 + if( tInput == ValueType.VTv1v2 && ( tOutput == ValueType.VTv1 || tOutput == ValueType.VTv2 ) ) + return true; + // Check multi-type for v1/v3 + if( tInput == ValueType.VTv1v3 && ( tOutput == ValueType.VTv1 || tOutput == ValueType.VTv3 ) ) + return true; + // Check multi-type for v1/v4 + if( tInput == ValueType.VTv1v4 && ( tOutput == ValueType.VTv1 || tOutput == ValueType.VTv4 ) ) + return true; + // Didn't find any allowed link, return false + return false; + } + */ + } + +} \ No newline at end of file diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_ConnectionGroups/SFNCG_ComponentMask.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/_ConnectionGroups/SFNCG_ComponentMask.cs.meta new file mode 100644 index 00000000..50850744 --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/_ConnectionGroups/SFNCG_ComponentMask.cs.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: f3ed7ab8c44ddc5429852ca5ffbb4850 +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_ConnectionGroups/SFNCG_MatrixMultiply.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/_ConnectionGroups/SFNCG_MatrixMultiply.cs new file mode 100644 index 00000000..8ee4e748 --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/_ConnectionGroups/SFNCG_MatrixMultiply.cs @@ -0,0 +1,90 @@ +using UnityEngine; +using System.Collections; + + +namespace ShaderForge { + + // Used to detect types based on input + [System.Serializable] + public class SFNCG_MatrixMultiply : SF_NodeConnectionGroup { + + + + public SFNCG_MatrixMultiply Initialize( SF_NodeConnector output, params SF_NodeConnector[] inputs ) { + this.output = output; + this.inputs = inputs; + return this; + } + + public override void Refresh() { + + // ALLOWED COMBOS + /* + * m v = v + * v m = v + * m m = m + */ + + // Are none of the inputs connected? In that case, it's all default + if( NoInputsConnected() ) { + inputs[0].SetValueTypeAndDefault( ValueType.VTv4m4x4 ); + inputs[1].SetValueTypeAndDefault( ValueType.VTv4m4x4 ); + output.SetValueTypeAndDefault( ValueType.VTv4m4x4 ); + } + + + //if( !inputs[0].node.InputsConnected() ) + // return; + + bool aCon = inputs[0].IsConnected(); + bool bCon = inputs[1].IsConnected(); + + bool oneConnected = aCon != bCon; + + + if(aCon && bCon){ + ValueType aType = inputs[0].inputCon.valueType; + ValueType bType = inputs[1].inputCon.valueType; + + if( aType == ValueType.VTv4 && bType == ValueType.VTm4x4 ){ + inputs[0].SetValueTypeAndDefault( ValueType.VTv4m4x4 ); + inputs[1].SetValueTypeAndDefault( ValueType.VTm4x4 ); + output.SetValueTypeAndDefault( ValueType.VTv4 ); + } else if( aType == ValueType.VTm4x4 && bType == ValueType.VTv4 ){ + inputs[0].SetValueTypeAndDefault( ValueType.VTm4x4); + inputs[1].SetValueTypeAndDefault( ValueType.VTv4m4x4 ); + output.SetValueTypeAndDefault( ValueType.VTv4 ); + } else if( aType == ValueType.VTm4x4 && bType == ValueType.VTm4x4 ){ + inputs[0].SetValueTypeAndDefault( ValueType.VTv4m4x4 ); + inputs[1].SetValueTypeAndDefault( ValueType.VTv4m4x4 ); + output.SetValueTypeAndDefault( ValueType.VTm4x4 ); + } else { + Debug.LogError( "Invalid input in Matrix multiply" ); + inputs[0].Disconnect(); + output.SetValueTypeAndDefault( ValueType.VTv4m4x4 ); + } + } else if( oneConnected ) { + + SF_NodeConnector connected = aCon ? inputs[0] : inputs[1]; + SF_NodeConnector unconnected = aCon ? inputs[1] : inputs[0]; + + ValueType conType = connected.valueType; + + if(conType == ValueType.VTv4){ + unconnected.SetValueTypeAndDefault( ValueType.VTm4x4); + output.SetValueTypeAndDefault( ValueType.VTv4 ); + } else { + unconnected.SetValueTypeAndDefault( ValueType.VTv4m4x4 ); + output.SetValueTypeAndDefault( ValueType.VTv4m4x4 ); + } + } else { + inputs[0].SetValueTypeAndDefault( ValueType.VTv4m4x4 ); + inputs[1].SetValueTypeAndDefault( ValueType.VTv4m4x4 ); + output.SetValueTypeAndDefault( ValueType.VTv4m4x4 ); + } + + } + + + } +} \ No newline at end of file diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_ConnectionGroups/SFNCG_MatrixMultiply.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/_ConnectionGroups/SFNCG_MatrixMultiply.cs.meta new file mode 100644 index 00000000..bf3037af --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/_ConnectionGroups/SFNCG_MatrixMultiply.cs.meta @@ -0,0 +1,12 @@ +fileFormatVersion: 2 +guid: b10258b471dba3e49b2c62e710a974f3 +timeCreated: 1436176254 +licenseType: Pro +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_ConnectionGroups/SF_NodeConnectionGroup.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/_ConnectionGroups/SF_NodeConnectionGroup.cs new file mode 100644 index 00000000..0377a8aa --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/_ConnectionGroups/SF_NodeConnectionGroup.cs @@ -0,0 +1,83 @@ +using UnityEngine; +using System.Collections; + + +namespace ShaderForge { + + // Used to detect types based on input + [System.Serializable] + public class SF_NodeConnectionGroup : ScriptableObject { + + + public SF_NodeConnector output; + public SF_NodeConnector[] inputs; + + + + public void OnEnable() { + base.hideFlags = HideFlags.HideAndDontSave; + } + + + public SF_NodeConnectionGroup() { + // Empty + } + + + /* + public void Initialize( SF_NodeConnection output, params SF_NodeConnection[] inputs ) { + this.output = output; + this.inputs = inputs; + }*/ + + + public virtual void Refresh() { + // Override + } + + public void AssignToEmptyInputs( ValueType vt ) { + //Debug.Log("AssignToEmptInputs: " + vt + " on output of " + output.node.nodeName); + foreach( SF_NodeConnector nc in inputs ) { + if( !nc.IsConnected() ) + nc.valueType = vt; + } + } + + public bool RequiredInputsMissing() { + foreach( SF_NodeConnector nc in inputs ) { + if( !nc.IsConnected() && nc.required ) + return true; + } + return false; + } + + public void ResetValueTypes() { + output.ResetValueType(); + foreach( SF_NodeConnector nc in inputs ) { + nc.ResetValueType(); + } + } + + public bool NoInputsConnected() { + foreach( SF_NodeConnector nc in inputs ) { + if( nc.IsConnected() ) + return false; + } + return true; + } + + public static bool IsVectorType( ValueType vTinput ) { + if( vTinput == ValueType.VTv1 ) + return true; + if( vTinput == ValueType.VTv2 ) + return true; + if( vTinput == ValueType.VTv3 ) + return true; + if( vTinput == ValueType.VTv4 ) + return true; + return false; + } + + + } +} \ No newline at end of file diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_ConnectionGroups/SF_NodeConnectionGroup.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/_ConnectionGroups/SF_NodeConnectionGroup.cs.meta new file mode 100644 index 00000000..3f08b525 --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/_ConnectionGroups/SF_NodeConnectionGroup.cs.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 29f1f79c469e47d4fbd337efdb4e4cb5 +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Enums.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/_Enums.meta new file mode 100644 index 00000000..9e94440f --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/_Enums.meta @@ -0,0 +1,5 @@ +fileFormatVersion: 2 +guid: 549512c18f19b459fa330b7b13bc1f15 +folderAsset: yes +DefaultImporter: + userData: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Enums/SF_VarTypeEnums.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/_Enums/SF_VarTypeEnums.cs new file mode 100644 index 00000000..03f99b37 --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/_Enums/SF_VarTypeEnums.cs @@ -0,0 +1,5 @@ +using UnityEngine; +using System.Collections; + +public enum FloatPrecision{ Fixed, Half, Float }; +public enum CompCount{ c1, c2, c3, c4, c1x1, c2x2, c3x3, c4x4 }; \ No newline at end of file diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Enums/SF_VarTypeEnums.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/_Enums/SF_VarTypeEnums.cs.meta new file mode 100644 index 00000000..3365c45d --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/_Enums/SF_VarTypeEnums.cs.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 83bc16350df4b47be937bd412bfe0a80 +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Evaluator.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/_Evaluator.meta new file mode 100644 index 00000000..9365489f --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/_Evaluator.meta @@ -0,0 +1,5 @@ +fileFormatVersion: 2 +guid: 5f94f7f57d35346a79fe37c5394b46bf +folderAsset: yes +DefaultImporter: + userData: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Evaluator/Pass_FwdAdd.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/_Evaluator/Pass_FwdAdd.cs new file mode 100644 index 00000000..c86470c9 --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/_Evaluator/Pass_FwdAdd.cs @@ -0,0 +1,50 @@ +using UnityEngine; +using System.Collections; + +namespace ShaderForge{ + public class Pass_FrwAdd : MonoBehaviour { + + public SF_Evaluator eval; + + + public Pass_FrwAdd( SF_Evaluator eval ) { + this.eval = eval; + } + + + public void ForwardAddPass() { + eval.ResetDefinedState(); + + + + } + + + + //////////////////////////////////////////////////////////// + + + public void StartPass() { + App( "Pass {" ); + eval.scope++; + } + + + + + + public void EndPass() { + eval.scope--; + App( "}" ); + } + + //////////////////////////////////////////////////////////// + + public void App( string s ) { + eval.App( s ); + } + + + } +} + diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Evaluator/Pass_FwdAdd.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/_Evaluator/Pass_FwdAdd.cs.meta new file mode 100644 index 00000000..bcd38d57 --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/_Evaluator/Pass_FwdAdd.cs.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 22b57f25fa43b034dbe3965c4be91970 +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Evaluator/SF_Evaluator.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/_Evaluator/SF_Evaluator.cs new file mode 100644 index 00000000..7448c77d --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/_Evaluator/SF_Evaluator.cs @@ -0,0 +1,3444 @@ +using UnityEngine; +using UnityEditor; +using System.Collections; +using System.Collections.Generic; +using System; +using System.Reflection; +using System.IO; +using UnityEditor.VersionControl; +using System.Linq; + +namespace ShaderForge { + + + public enum PassType { + FwdBase, FwdAdd, ShadCast, + Outline, + Deferred, + Meta + }; + public enum ShaderProgram { Any, Vert, Frag, Tess }; + + [System.Serializable] + public class SF_Evaluator { + + public SF_Editor editor; + public List cNodes; + public List ghostNodes; + public int scope = 0; + public string shaderString = ""; + + public SF_PassSettings ps; + public SF_Dependencies dependencies; + public SF_ShaderProperty properties; + + public SFN_Final mOut; + + const bool DEBUG = true; + + + + + + public static PassType currentPass = PassType.FwdBase; + public static ShaderProgram currentProgram = ShaderProgram.Vert; + + public static bool inFrag { + get { + return SF_Evaluator.currentProgram == ShaderProgram.Frag; + } + } + public static bool inVert { + get { + return SF_Evaluator.currentProgram == ShaderProgram.Vert; + } + } + public static bool inTess { + get { + return SF_Evaluator.currentProgram == ShaderProgram.Tess; + } + } + + public static string WithProgramPrefix( string s ) { + if( SF_Evaluator.inFrag ) + return "i." + s; + if( SF_Evaluator.inVert ) + return "o." + s; + if( SF_Evaluator.inTess ) + return "v." + s; + Debug.Log( "Invalid program" ); + return null; + } + + + + // TODO: SHADER MODEL + public SF_Evaluator() { + + + } + + public SF_Evaluator( SF_Editor editor ) { + this.editor = editor; + this.ps = editor.ps; + } + + + public void PrepareEvaluation() { + ps.UpdateAutoSettings(); + + mOut = editor.mainNode; + } + + public void RemoveGhostNodes() { + if( ghostNodes == null ) + return; + + if( SF_Debug.ghostNodes ) + Debug.Log( "Removing ghost nodes. Count: " + ghostNodes.Count ); + for( int i = ghostNodes.Count - 1; i >= 0; i-- ) { + editor.nodes.Remove( ghostNodes[i] ); + ghostNodes[i].DeleteGhost(); + ghostNodes.Remove( ghostNodes[i] ); + } + //Debug.Log( "Done removing ghost nodes. Count: " + ghostNodes.Count ); + } + + bool LightmappedAndLit() { + return ps.catLighting.bakedLight && ( ps.HasSpecular() || ps.HasDiffuse() ) && ps.catLighting.lightMode != SFPSC_Lighting.LightMode.Unlit; + } + + bool IsReflectionProbed() { + return ( ps.HasSpecular() && ps.catLighting.lightMode != SFPSC_Lighting.LightMode.Unlit ) && ps.catLighting.reflectprobed && ( currentPass == PassType.FwdBase || currentPass == PassType.Deferred ); + } + + public void UpdateDependencies() { + + dependencies = new SF_Dependencies( editor.ps ); + + if( SF_Debug.evalFlow ) + Debug.Log( "UPDATING DEPENDENCIES: Pass = " + currentPass + " Prog = " + currentProgram ); + cNodes = editor.nodeView.treeStatus.GetListOfConnectedNodesWithGhosts( out ghostNodes, passDependent: true ); + if( SF_Debug.evalFlow ) + Debug.Log( "Found " + cNodes.Count + " nodes" ); + + + for( int i = 0; i < cNodes.Count; i++ ) { + cNodes[i].PrepareEvaluation(); + } + + if( currentPass == PassType.Meta ) { + dependencies.uv1 = true; + dependencies.uv2 = true; + } + + // Dependencies + if( ps.catLighting.IsLit() && !IsShadowOrOutlineOrMetaPass() && currentPass != PassType.Deferred ) { + dependencies.NeedLightColor(); + dependencies.NeedFragNormals(); + dependencies.NeedFragLightDir(); + + if( ( ps.catLighting.lightMode == SFPSC_Lighting.LightMode.BlinnPhong || ps.catLighting.lightMode == SFPSC_Lighting.LightMode.PBL ) && ps.mOut.specular.IsConnectedEnabledAndAvailableInThisPass( currentPass ) ) { + dependencies.NeedFragHalfDir(); + } + + if( ps.catLighting.lightMode == SFPSC_Lighting.LightMode.PBL && ps.mOut.diffuse.IsConnectedEnabledAndAvailableInThisPass(currentPass)){ + dependencies.NeedFragHalfDir(); + } + + + } + + if( editor.nodeView.treeStatus.viewDirectionInVertOffset ) { + dependencies.vert_viewDirection = true; + } + + if( currentPass == PassType.Deferred ) { + dependencies.NeedFragNormals(); + } + + if( IsReflectionProbed() && ps.HasSpecular() && ( currentPass == PassType.FwdBase || currentPass == PassType.Deferred ) ) { + dependencies.NeedFragViewReflection(); + dependencies.reflection_probes = true; + } + + if( ( currentPass == PassType.FwdBase || currentPass == PassType.Deferred ) && ( LightmappedAndLit() || IsReflectionProbed() || ps.catLighting.lightMode == SFPSC_Lighting.LightMode.PBL ) ) { + dependencies.NeedFragViewReflection(); + } + + + if( LightmappedAndLit() && !IsShadowOrOutlineOrMetaPass() ) { + dependencies.vert_in_normals = true; + if( ps.catLighting.highQualityLightProbes ) + dependencies.NeedFragNormals(); + } + + if( ps.IsOutlined() && currentPass == PassType.Outline ) { + dependencies.vert_in_normals = true; + if( ps.catGeometry.outlineMode == SFPSC_Geometry.OutlineMode.VertexColors ) { + dependencies.vert_in_vertexColor = true; + } + } + + if( ps.catLighting.IsVertexLit() && ps.catLighting.IsLit() && !IsShadowOrOutlineOrMetaPass() ) { + if( ps.catLighting.lightMode == SFPSC_Lighting.LightMode.BlinnPhong || ps.catLighting.lightMode == SFPSC_Lighting.LightMode.PBL ) + dependencies.NeedVertHalfDir(); + dependencies.NeedVertLightDir(); + } + + + if( LightmappedAndLit() ) { + dependencies.NeedFragWorldPos(); + dependencies.NeedFragViewDirection(); + dependencies.uv1 = true; + dependencies.uv1_frag = true; + dependencies.uv2 = true; + dependencies.uv2_frag = true; + } + + + if( LightmappedAndLit() && !IsShadowOrOutlineOrMetaPass() ) { + dependencies.NeedFragTangentTransform(); // Directional LMs + dependencies.uv1 = true; // Lightmap UVs + } + + //if( ps.HasAnisotropicLight() && !IsShadowPass() ) { + // dependencies.NeedFragTangents(); + // dependencies.NeedFragBinormals(); + //} + + + + if( ps.catLighting.IsFragmentLit() && !IsShadowOrOutlineOrMetaPass() ) { + dependencies.vert_in_normals = true; + dependencies.vert_out_normals = true; + dependencies.vert_out_worldPos = true; + dependencies.frag_normalDirection = true; + if( ps.HasNormalMap() || ps.catLighting.HasSpecular() ) + dependencies.NeedFragViewDirection(); + } + + if( ps.HasTangentSpaceNormalMap() && !IsShadowOrOutlineOrMetaPass() ) { + dependencies.frag_normalDirection = true; + dependencies.NeedFragTangentTransform(); + } + + if( ps.HasObjectSpaceNormalMap() && !IsShadowOrOutlineOrMetaPass() ) { + dependencies.objectScaleReciprocal = true; + } + + if( ps.HasRefraction() && !IsShadowOrOutlineOrMetaPass() ) { + dependencies.NeedRefraction(); + } + + if( ps.HasTessellation() ) { + dependencies.NeedTessellation(); + } + + if( ps.HasDisplacement() ) { + dependencies.NeedDisplacement(); + } + + + if( ps.catBlending.dithering != Dithering.Off && editor.mainNode.alphaClip.IsConnectedEnabledAndAvailable() ) { + dependencies.NeedSceneUVs(); + } + + + + + + foreach( SF_Node n in cNodes ) { + + if( n is SFN_Time ) { + dependencies.time = true; + } + + if( n is SFN_SceneColor ) { + if( ( n as SFN_SceneColor ).AutoUV() ) + dependencies.NeedSceneUVs(); + dependencies.NeedGrabPass(); + } + + if( n is SFN_ObjectPosition ) { + if( currentProgram == ShaderProgram.Frag ) + dependencies.NeedFragObjPos(); + else + dependencies.NeedVertObjPos(); + } + + if( n is SFN_Fresnel ) { + dependencies.NeedFragViewDirection(); + if( !n.GetInputIsConnected( "NRM" ) ) // Normal. If it's not connected, make sure we have the dependency for normals + dependencies.NeedFragNormals(); + } + + if( n is SFN_FragmentPosition ) { + dependencies.NeedFragWorldPos(); + } + + if( n is SFN_SceneDepth ) { + dependencies.depthTexture = true; + if(n.GetInputIsConnected("UV") == false) + dependencies.NeedSceneUVs(); + } + + if( n is SFN_DepthBlend ) { + dependencies.NeedSceneDepth(); + dependencies.frag_pixelDepth = true; + } + + if( n is SFN_Depth ) { + // (mul( UNITY_MATRIX_V, float4((_WorldSpaceCameraPos.rgb-i.posWorld.rgb),0) ).b - _ProjectionParams.g) + dependencies.NeedFragPixelDepth(); + } + + if( n is SFN_ObjectScale ) { + if( ( n as SFN_ObjectScale ).reciprocal ) + dependencies.objectScaleReciprocal = true; + else + dependencies.objectScale = true; + } + + /* + if( n is SFN_Rotator ) { + if(!n.GetInputIsConnected("ANG")) + dependencies.time = true; + }*/ + + /* + if( n is SFN_Panner ) { + if( !n.GetInputIsConnected( "DIST" ) ) + dependencies.time = true; + } + */ + + if( n is SFN_ScreenPos ) { + dependencies.NeedSceneUVs(); + } + + if( n is SFN_Tex2d ) { + if( n.GetInputIsConnected( "MIP" ) ) { // MIP connection + //dependencies.ExcludeRenderPlatform( RenderPlatform.opengl ); // TODO: Find workaround! + dependencies.SetMinimumShaderTarget( 3 ); + } + } + + if( n is SFN_Cubemap ) { + if( n.GetInputIsConnected( "MIP" ) ) { // MIP connection + //dependencies.ExcludeRenderPlatform( RenderPlatform.opengl ); // TODO: Find workaround! + dependencies.SetMinimumShaderTarget( 3 ); + } + } + + /* + if( n is SFN_Tex2d ) { + if( !n.GetInputIsConnected( "UVIN" ) ) { // Unconnected UV input + dependencies.uv0 = true; + dependencies.uv0_frag = true; + } + }*/ + + if( n is SFN_VertexColor ) { + dependencies.NeedFragVertexColor(); // TODO: Check if it really needs to be frag + } + + if( n is SFN_DDX || n is SFN_DDY ) { + dependencies.pragmaGlsl = true; + } + + if( n is SFN_TexCoord ) { + SFN_TexCoord nTC = (SFN_TexCoord)n; + switch( nTC.currentUV ) { + case SFN_TexCoord.UV.uv0: + dependencies.uv0 = true; + dependencies.uv0_frag = true; + if( nTC.useAsFloat4 ) dependencies.uv0_float4 = true; + break; + case SFN_TexCoord.UV.uv1: + dependencies.uv1 = true; + dependencies.uv1_frag = true; + if( nTC.useAsFloat4 ) dependencies.uv1_float4 = true; + break; + case SFN_TexCoord.UV.uv2: + dependencies.uv2 = true; + dependencies.uv2_frag = true; + if( nTC.useAsFloat4 ) dependencies.uv2_float4 = true; + break; + case SFN_TexCoord.UV.uv3: + dependencies.uv3 = true; + dependencies.uv3_frag = true; + if( nTC.useAsFloat4 ) dependencies.uv3_float4 = true; + break; + } + } + if( n is SFN_Pi ) { + dependencies.const_pi = true; + } + if( n is SFN_Phi ) { + dependencies.const_phi = true; + } + if( n is SFN_E ) { + dependencies.const_e = true; + } + if( n is SFN_Root2 ) { + dependencies.const_root2 = true; + } + if( n is SFN_Tau ) { + dependencies.const_tau = true; + } + + if( n is SFN_HalfVector ) { + dependencies.NeedFragHalfDir(); + } + if( n is SFN_LightColor ) { + dependencies.NeedLightColor(); + } + + + if( n is SFN_Parallax ) { + dependencies.NeedFragViewDirection(); + dependencies.NeedFragTangentTransform(); + if( !( n as SFN_Parallax ).GetInputIsConnected( "UVIN" ) ) { + dependencies.uv0 = true; + } + } + + if( n is SFN_Cubemap ) { + if( !n.GetInputIsConnected( "DIR" ) ) { // DIR connection, if not connected, we need default reflection vector + dependencies.NeedFragViewReflection(); + } + } + + + + if( SF_Editor.NodeExistsAndIs( n, "SFN_SkyshopSpec" ) ) { + if( !n.GetInputIsConnected( "REFL" ) ) { // Reflection connection, if not connected, we need default reflection vector + dependencies.NeedFragViewReflection(); + } + } + + if( n is SFN_LightAttenuation ) { + dependencies.NeedFragAttenuation(); + } + + if( n is SFN_ViewReflectionVector ) { + dependencies.NeedFragViewReflection(); + } + + if( n is SFN_LightVector ) { + dependencies.NeedFragLightDir(); + } + + if( n is SFN_ViewVector ) { + dependencies.NeedFragViewDirection(); + } + + if( n is SFN_Tangent ) { + dependencies.NeedFragTangents(); + } + if( n is SFN_Bitangent ) { + dependencies.NeedFragBitangents(); + } + if( n is SFN_NormalVector ) { + dependencies.NeedFragNormals(); + } + + + + if( n is SFN_Transform ) { + if( ( n as SFN_Transform ).spaceSelFrom == SFN_Transform.Space.Tangent || ( n as SFN_Transform ).spaceSelTo == SFN_Transform.Space.Tangent ) { + dependencies.NeedFragTangentTransform(); + } + } + + if( n is SFN_FaceSign ) { + dependencies.frag_facing = true; + } + + if( ps.catGeometry.IsDoubleSided() ) { + dependencies.frag_facing = true; + } + + + // This has to be done afterwards + if( dependencies.frag_normalDirection && ps.catGeometry.IsDoubleSided() ) { + dependencies.NeedFragViewDirection(); + } + + + } + + //RemoveGhostNodes(); // TODO: Maybe not here? + + if( SF_Debug.evalFlow ) + Debug.Log( "DONE UPDATING DEPENDENCIES" ); + } + + + + + + void BeginShader() { + App( "Shader \"" + editor.currentShaderPath + "\" {" ); + scope++; + } + void BeginProperties() { + App( "Properties {" ); + scope++; + } + + void PropertiesShaderLab() { + + BeginProperties(); + + //Debug.Log("Printing properties, count = " + editor.nodeView.treeStatus.propertyList.Count); + + for( int i = 0; i < editor.nodeView.treeStatus.propertyList.Count; i++ ) { + if( editor.nodeView.treeStatus.propertyList[i] == null ) { + editor.nodeView.treeStatus.propertyList.RemoveAt( i ); + i = -1; // restart + } + if( editor.nodeView.treeStatus.propertyList[i].IsProperty() ) { + string line = editor.nodeView.treeStatus.propertyList[i].property.GetInitializationLine(); + App( line ); + } + } + + bool transparency = ps.mOut.alphaClip.IsConnectedEnabledAndAvailable() || ps.HasAlpha(); + + if( transparency ) + App( "[HideInInspector]_Cutoff (\"Alpha cutoff\", Range(0,1)) = 0.5" ); // Hack, but, required for transparency to play along with depth etc + + if( ps.catGeometry.showPixelSnap ) + App("[MaterialToggle] PixelSnap (\"Pixel snap\", Float) = 0"); + + if( ps.catBlending.allowStencilWriteThroughProperties ) { + App( "_Stencil (\"Stencil ID\", Float) = 0" ); + App( "_StencilReadMask (\"Stencil Read Mask\", Float) = 255" ); + App( "_StencilWriteMask (\"Stencil Write Mask\", Float) = 255" ); + App( "_StencilComp (\"Stencil Comparison\", Float) = 8" ); + App( "_StencilOp (\"Stencil Operation\", Float) = 0" ); + App( "_StencilOpFail (\"Stencil Fail Operation\", Float) = 0" ); + App( "_StencilOpZFail (\"Stencil Z-Fail Operation\", Float) = 0" ); + } + + + + End(); + + } + void PropertiesCG() { + for( int i = 0; i < cNodes.Count; i++ ) { + AppIfNonEmpty( cNodes[i].GetPrepareUniformsAndFunctions() ); + if( cNodes[i].IsProperty() ) { + string propName = cNodes[i].property.nameInternal; + if( !( ( IncludeLightingCginc() || IncludeUnity5BRDF() ) && propName == "_SpecColor" ) ) // SpecColor already defined in Lighting.cginc + App( cNodes[i].property.GetFilteredVariableLine() ); + } + } + } + void BeginSubShader() { + App( "SubShader {" ); + scope++; + } + void BeginTags() { + App( "Tags {" ); + scope++; + } + void BeginCG() { + App( "CGPROGRAM" ); + + if( dependencies.tessellation ) { + App( "#pragma hull hull" ); + App( "#pragma domain domain" ); + App( "#pragma vertex tessvert" ); + } else { + App( "#pragma vertex vert" ); + } + App( "#pragma fragment frag" ); + + + + switch( currentPass ) { + case PassType.FwdBase: + App( "#define UNITY_PASS_FORWARDBASE" ); + break; + case PassType.FwdAdd: + App( "#define UNITY_PASS_FORWARDADD" ); + break; + case PassType.Deferred: + App( "#define UNITY_PASS_DEFERRED" ); + break; + case PassType.ShadCast: + App( "#define UNITY_PASS_SHADOWCASTER" ); + break; + case PassType.Meta: + App( "#define UNITY_PASS_META 1" ); + break; + } + + + if( LightmappedAndLit() ) { + App( "#define SHOULD_SAMPLE_SH ( defined (LIGHTMAP_OFF) && defined(DYNAMICLIGHTMAP_OFF) )" ); + + } + + if(ps.catLighting.reflectprobed ){ + App ("#define _GLOSSYENV 1"); + } + + + if( ps.catGeometry.showPixelSnap ) + App( "#pragma multi_compile _ PIXELSNAP_ON" ); + + + App( "#include \"UnityCG.cginc\"" ); + + if( ShouldUseLightMacros() ) + App( "#include \"AutoLight.cginc\"" ); + if( IncludeLightingCginc() ) + App( "#include \"Lighting.cginc\"" ); + if( dependencies.tessellation ) + App( "#include \"Tessellation.cginc\"" ); + if( IncludeUnity5BRDF() ){ + App( "#include \"UnityPBSLighting.cginc\"" ); + App( "#include \"UnityStandardBRDF.cginc\"" ); + } + if( currentPass == PassType.Meta ) { + App("#include \"UnityMetaPass.cginc\""); + } + if( ps.catMeta.cgIncludes.Count > 0 ) { // Custom CG includes + for (int i = 0; i < ps.catMeta.cgIncludes.Count; i++){ + string incStr = ps.catMeta.cgIncludes[i]; + if( incStr == string.Empty ) + continue; + App( "#include \"" + incStr + ".cginc\"" ); + } + } + + if( currentPass == PassType.FwdBase ) { + App( "#pragma multi_compile_fwdbase" + ps.catBlending.GetShadowPragmaIfUsed() ); + } else if( currentPass == PassType.FwdAdd ) { + App( "#pragma multi_compile_fwdadd" + ps.catBlending.GetShadowPragmaIfUsed() ); + } else { + App( "#pragma fragmentoption ARB_precision_hint_fastest" ); + if(!ps.catExperimental.forceNoShadowPass) + App( "#pragma multi_compile_shadowcaster" ); + } + + if( currentPass == PassType.Deferred ) { + App( "#pragma multi_compile ___ UNITY_HDR_ON" ); + } + + if( LightmappedAndLit() ) { + App( "#pragma multi_compile LIGHTMAP_OFF LIGHTMAP_ON" ); + App( "#pragma multi_compile DIRLIGHTMAP_OFF DIRLIGHTMAP_COMBINED DIRLIGHTMAP_SEPARATE" ); + App( "#pragma multi_compile DYNAMICLIGHTMAP_OFF DYNAMICLIGHTMAP_ON" ); + } + + if( UseUnity5Fog() ) + App( "#pragma multi_compile_fog" ); + + + + + List groups = new List(); + foreach( SF_Node n in cNodes ) { + int group; + string[] mcPrags = n.TryGetMultiCompilePragmas( out group ); + if( !groups.Contains( group ) && mcPrags != null ) { + groups.Add( group ); + for( int i = 0; i < mcPrags.Length; i++ ) { + App( "#pragma multi_compile " + mcPrags[i] ); + } + } + // Old branching tests + //if(n.IsProperty() && n.property is SFP_Branch){ + // App(n.property.GetMulticompilePragma ()); + //} + } + + + + if( dependencies.DoesIncludePlatforms() ) + App( "#pragma only_renderers " + dependencies.GetIncludedPlatforms() ); + if( dependencies.IsTargetingAboveDefault() ) { + if( ps.catExperimental.force2point0 ) + App( "#pragma target 2.0" ); + else + App( "#pragma target " + dependencies.GetShaderTarget() ); + } + + } + void EndCG() { + App( "ENDCG" ); + } + + public bool IncludeUnity5BRDF() { + return LightmappedAndLit() || ps.catLighting.lightMode == SFPSC_Lighting.LightMode.PBL || ps.catLighting.reflectprobed; + } + + bool UseUnity5Fog() { + return ps.catBlending.useFog; + } + + bool UseUnity5FogInThisPass() { + return ps.catBlending.useFog && ( currentPass == PassType.FwdAdd || currentPass == PassType.FwdBase || currentPass == PassType.Outline ); + } + + + + void AppTag( string k, string v ) { + App( "\"" + k + "\"=\"" + v + "\"" ); + } + + void PassTags() { + BeginTags(); + if( currentPass == PassType.FwdBase ) + AppTag( "LightMode", "ForwardBase" ); + else if( currentPass == PassType.FwdAdd ) + AppTag( "LightMode", "ForwardAdd" ); + else if( currentPass == PassType.ShadCast ) + AppTag( "LightMode", "ShadowCaster" ); + else if( currentPass == PassType.Deferred ) + AppTag( "LightMode", "Deferred" ); + else if( currentPass == PassType.Meta ) + AppTag( "LightMode", "Meta" ); + End(); + } + + + void SubShaderTags() { + + bool ip = ps.catBlending.ignoreProjector; + bool doesOffset = ps.catBlending.queuePreset != Queue.Geometry || ps.catBlending.queueOffset != 0; + bool hasRenderType = ps.catBlending.renderType != RenderType.None; + bool hasBatchConfig = ps.catMeta.batchingMode != SFPSC_Meta.BatchingMode.Enabled; + bool hasAtlasConfig = ps.catMeta.canUseSpriteAtlas; + bool hasPreviewType = ps.catMeta.previewType != SFPSC_Meta.Inspector3DPreviewType.Sphere; + + if( !ip && !doesOffset && !hasRenderType && !hasBatchConfig && !hasAtlasConfig && !hasPreviewType ) + return; // No tags! + + BeginTags(); + if( ip ) + AppTag( "IgnoreProjector", "True" ); + if( doesOffset ) { + string bse = ps.catBlending.queuePreset.ToString(); + string ofs = ""; + if( ps.catBlending.queueOffset != 0 ) + ofs = ps.catBlending.queueOffset > 0 ? ( "+" + ps.catBlending.queueOffset ) : ( ps.catBlending.queueOffset.ToString() ); + AppTag( "Queue", ( bse + ofs ).ToString() ); + } + if( hasRenderType ) + AppTag( "RenderType", ps.catBlending.renderType.ToString() ); + if( hasBatchConfig ) { + if(ps.catMeta.batchingMode == SFPSC_Meta.BatchingMode.Disabled) + AppTag( "DisableBatching", "True" ); + if(ps.catMeta.batchingMode == SFPSC_Meta.BatchingMode.DisableDuringLODFade) + AppTag( "DisableBatching", "LODFading" ); + } + if( hasAtlasConfig ) { + AppTag( "CanUseSpriteAtlas", "True" ); + } + if( hasPreviewType ) { + if( ps.catMeta.previewType == SFPSC_Meta.Inspector3DPreviewType.Plane) + AppTag( "PreviewType", "Plane" ); + if( ps.catMeta.previewType == SFPSC_Meta.Inspector3DPreviewType.Skybox ) + AppTag( "PreviewType", "Skybox" ); + } + + + + End(); + } + + void RenderSetup() { + + if( currentPass == PassType.FwdAdd ) + App( "Blend One One" ); + else if( currentPass == PassType.FwdBase && ps.catBlending.UseBlending() ) // Shadow passes and outlines use default blending + App( ps.catBlending.GetBlendString() ); + + if( currentPass == PassType.Meta ) { + App( "Cull Off" ); + } else if( currentPass == PassType.ShadCast ) { + App( "Offset 1, 1" ); + App( ps.catGeometry.GetCullString() ); + } else if( currentPass == PassType.Outline ) { + App( "Cull Front" ); + } else if( ps.catGeometry.UseCulling() ) + App( ps.catGeometry.GetCullString() ); + + if( ps.catBlending.UseDepthTest() && !IsShadowOrOutlineOrMetaPass() ) // Shadow passes and outlines use default + App( ps.catBlending.GetDepthTestString() ); + + if( !IsShadowOrOutlineOrMetaPass() ) { + App( ps.catBlending.GetZWriteString() ); + } + + if( ps.catBlending.colorMask != 15 ) { // 15 means RGBA, which is default + App("ColorMask " + ps.catBlending.colorMask.ToColorMaskString()); + } + + App( ps.catBlending.GetOffsetString() ); + + if(ps.catBlending.useStencilBuffer && currentPass == PassType.FwdBase){ + App("Stencil {"); + scope++; + App( ps.catBlending.GetStencilContent() ); + scope--; + App("}"); + } + + if( currentPass == PassType.FwdBase && ps.catBlending.alphaToCoverage ) { + App("AlphaToMask On"); + } + + + } + + void CGvars() { + + if( editor.mainNode.alphaClip.IsConnectedEnabledAndAvailable() ) { + if( ps.catBlending.dithering == Dithering.Dither2x2 ) { + App( "// Dithering function, to use with scene UVs (screen pixel coords)" ); + App( "// 2x2 Bayer matrix, based on https://en.wikipedia.org/wiki/Ordered_dithering" ); + App( "float BinaryDither2x2( float value, float2 sceneUVs ) {" ); + scope++; + App( "float2x2 mtx = float2x2(" ); + scope++; + App( "float2( 1, 3 )/5.0," ); + App( "float2( 4, 2 )/5.0" ); + scope--; + App( ");" ); + App( "float2 px = floor(_ScreenParams.xy * sceneUVs);" ); + App( "int xSmp = fmod(px.x,2);" ); + App( "int ySmp = fmod(px.y,2);" ); + App( "float2 xVec = 1-saturate(abs(float2(0,1) - xSmp));" ); + App( "float2 yVec = 1-saturate(abs(float2(0,1) - ySmp));" ); + App( "float2 pxMult = float2( dot(mtx[0],yVec), dot(mtx[1],yVec) );" ); + App( "return round(value + dot(pxMult, xVec));" ); + scope--; + App( "}" ); + } else if( ps.catBlending.dithering == Dithering.Dither3x3 ) { + App( "// Dithering function, to use with scene UVs (screen pixel coords)" ); + App( "// 3x3 Bayer matrix, based on https://en.wikipedia.org/wiki/Ordered_dithering" ); + App( "float BinaryDither3x3( float value, float2 sceneUVs ) {" ); + scope++; + App( "float3x3 mtx = float3x3(" ); + scope++; + App( "float3( 3, 7, 4 )/10.0," ); + App( "float3( 6, 1, 9 )/10.0," ); + App( "float3( 2, 8, 5 )/10.0" ); + scope--; + App( ");" ); + App( "float2 px = floor(_ScreenParams.xy * sceneUVs);" ); + App( "int xSmp = fmod(px.x,3);" ); + App( "int ySmp = fmod(px.y,3);" ); + App( "float3 xVec = 1-saturate(abs(float3(0,1,2) - xSmp));" ); + App( "float3 yVec = 1-saturate(abs(float3(0,1,2) - ySmp));" ); + App( "float3 pxMult = float3( dot(mtx[0],yVec), dot(mtx[1],yVec), dot(mtx[2],yVec) );" ); + App( "return round(value + dot(pxMult, xVec));" ); + scope--; + App( "}" ); + } else if( ps.catBlending.dithering == Dithering.Dither4x4 ) { + App( "// Dithering function, to use with scene UVs (screen pixel coords)" ); + App( "// 4x4 Bayer matrix, based on https://en.wikipedia.org/wiki/Ordered_dithering" ); + App( "float BinaryDither4x4( float value, float2 sceneUVs ) {" ); + scope++; + App( "float4x4 mtx = float4x4(" ); + scope++; + App( "float4( 1, 9, 3, 11 )/17.0," ); + App( "float4( 13, 5, 15, 7 )/17.0," ); + App( "float4( 4, 12, 2, 10 )/17.0," ); + App( "float4( 16, 8, 14, 6 )/17.0" ); + scope--; + App( ");" ); + App( "float2 px = floor(_ScreenParams.xy * sceneUVs);" ); + App( "int xSmp = fmod(px.x,4);" ); + App( "int ySmp = fmod(px.y,4);" ); + App( "float4 xVec = 1-saturate(abs(float4(0,1,2,3) - xSmp));" ); + App( "float4 yVec = 1-saturate(abs(float4(0,1,2,3) - ySmp));" ); + App( "float4 pxMult = float4( dot(mtx[0],yVec), dot(mtx[1],yVec), dot(mtx[2],yVec), dot(mtx[3],yVec) );" ); + App( "return round(value + dot(pxMult, xVec));" ); + scope--; + App( "}" ); + } + } + + + if( dependencies.lightColor && !IncludeLightingCginc() && !IncludeUnity5BRDF() ) // Lightmap and shadows include Lighting.cginc, which already has this. Don't include when making Unity 5 shaders + App( "uniform float4 _LightColor0;" ); + + + if( dependencies.grabPass ) { + App( "uniform sampler2D " + ps.catBlending.GetGrabTextureName() + ";" ); + } + + if( dependencies.depthTexture ) + App( "uniform sampler2D _CameraDepthTexture;" ); + + if( dependencies.fog_color ) { + App( "uniform float4 unity_FogColor;" ); + } + + + + PropertiesCG(); + + } + + void InitViewDirVert() { + if( dependencies.vert_viewDirection ) + App( "float3 viewDirection = normalize(_WorldSpaceCameraPos.xyz - mul(unity_ObjectToWorld, v.vertex).xyz);" ); + } + void InitViewDirFrag() { + if( dependencies.frag_viewDirection ) + App( "float3 viewDirection = normalize(_WorldSpaceCameraPos.xyz - i.posWorld.xyz);" ); + } + void InitTangentTransformFrag() { + if( ( dependencies.frag_tangentTransform && currentProgram == ShaderProgram.Frag ) || ( dependencies.vert_tangentTransform && currentProgram == ShaderProgram.Vert ) ) + App( "float3x3 tangentTransform = float3x3( " + WithProgramPrefix( "tangentDir" ) + ", " + WithProgramPrefix( "bitangentDir" ) + ", " + WithProgramPrefix( "normalDir" ) + ");" ); + } + + + + + string LightmapNormalDir() { + if( editor.mainNode.normal.IsConnectedAndEnabled() ) { + return "normalLocal"; + } + return "float3(0,0,1)"; + } + + void PrepareLightmapVars() { + if( !LightmapThisPass() ) + return; + + + // TODO U5 LMs + + + } + + void InitLightDir() { + + if( IsShadowPass() ) + return; + + if( ( currentProgram == ShaderProgram.Frag && !dependencies.frag_lightDirection ) || ( currentProgram == ShaderProgram.Vert && !dependencies.vert_lightDirection ) ) + return; + + if( currentPass == PassType.FwdBase ) { + + App( "float3 lightDirection = normalize(_WorldSpaceLightPos0.xyz);" ); + + return; + } + + // Point vs directional + App( "float3 lightDirection = normalize(lerp(_WorldSpaceLightPos0.xyz, _WorldSpaceLightPos0.xyz - " + WithProgramPrefix( "posWorld.xyz" ) + ",_WorldSpaceLightPos0.w));" ); + + } + + void InitLightColor(){ + App("float3 lightColor = _LightColor0.rgb;"); + } + + + void InitHalfVector() { + if( ( !dependencies.frag_halfDirection && currentProgram == ShaderProgram.Frag ) || ( !dependencies.vert_halfDirection && currentProgram == ShaderProgram.Vert ) ) + return; + App( "float3 halfDirection = normalize(viewDirection+lightDirection);" ); + } + + void InitAttenuation() { + + if( SF_Evaluator.inVert && ps.catLighting.IsVertexLit() && ShouldUseLightMacros() ) + App( "TRANSFER_VERTEX_TO_FRAGMENT(o)" ); + + string atten = "LIGHT_ATTENUATION(" + ( ( currentProgram == ShaderProgram.Frag ) ? "i" : "o" ) + ")"; + + string inner = ( ShouldUseLightMacros() ? atten : "1" ); + App( "float attenuation = " + inner + ";" ); + if( ps.catLighting.lightMode != SFPSC_Lighting.LightMode.Unlit ) + App( "float3 attenColor = attenuation * _LightColor0.xyz;" ); + } + + + string GetWithDiffPow( string s ) { + if( ps.HasDiffusePower() ) { + return "pow(" + s + ", " + ps.n_diffusePower + ")"; + } + return s; + } + + + + void CalcDiffuse() { + + //App( "float atten = 1.0;" ); + AppDebug( "Diffuse" ); + + + + //InitAttenuation(); + + + string lmbStr = ""; + + + + + + + + if( !InDeferredPass() ) { + bool definedNdotL = ps.HasSpecular(); + bool definedNdotLwrap = false; + + if( ps.HasTransmission() || ps.HasLightWrapping() ) { + + + + if( !InDeferredPass() ) { + if( !definedNdotL ) { + App( "float NdotL = dot( " + VarNormalDir() + ", lightDirection );" ); + definedNdotL = true; + } else { + App( "NdotL = dot( " + VarNormalDir() + ", lightDirection );" ); + } + definedNdotL = true; + } + + string fwdLight = "float3 forwardLight = "; // TODO + string backLight = "float3 backLight = "; // TODO + + + if( ps.HasLightWrapping() ) { + App( "float3 w = " + ps.n_lightWrap + "*0.5; // Light wrapping" ); + if( !definedNdotLwrap ) { + App( "float3 NdotLWrap = NdotL * ( 1.0 - w );" ); + definedNdotLwrap = true; + } + + App( fwdLight + GetWithDiffPow( "max(float3(0.0,0.0,0.0), NdotLWrap + w )" ) + ";" ); + if( ps.HasTransmission() ) { + App( backLight + GetWithDiffPow( "max(float3(0.0,0.0,0.0), -NdotLWrap + w )" ) + " * " + ps.n_transmission + ";" ); + } + + } else { + App( fwdLight + GetWithDiffPow( "max(0.0, NdotL )" ) + ";" ); + if( ps.HasTransmission() ) { + App( backLight + GetWithDiffPow( "max(0.0, -NdotL )" ) + " * " + ps.n_transmission + ";" ); + } + } + + lmbStr = "forwardLight"; + + if( ps.HasTransmission() ) { + lmbStr += "+backLight"; + lmbStr = "(" + lmbStr + ")"; + } + + }// else { + + + bool noSpec = !ps.HasSpecular(); + bool unity5pblDiffuse = ps.HasDiffuse() && ps.catLighting.lightMode == SFPSC_Lighting.LightMode.PBL; + + bool needsToDefineNdotV = noSpec && unity5pblDiffuse; + + if( needsToDefineNdotV ) { + App( "float NdotV = max(0.0,dot( " + VarNormalDir() + ", viewDirection ));" ); + } + + + + if( !definedNdotL ) { + App( "float NdotL = max(0.0,dot( " + VarNormalDir() + ", lightDirection ));" ); + } else { + App( "NdotL = max(0.0,dot( " + VarNormalDir() + ", lightDirection ));" ); + } + + if( Unity5PBL() ) { + //if( ps.HasTransmission() || ps.HasLightWrapping() ) + //App( "NdotL = max(0.0,NdotL);" ); + App( "half fd90 = 0.5 + 2 * LdotH * LdotH * (1-gloss);" ); + if( ps.HasTransmission() || ps.HasLightWrapping() ) { + if( !definedNdotLwrap ) + App( "float3 NdotLWrap = max(0,NdotL);" ); + App( "float nlPow5 = Pow5(1-NdotLWrap);" ); + } else { + App( "float nlPow5 = Pow5(1-NdotL);" ); + } + App( "float nvPow5 = Pow5(1-NdotV);" ); + + + string pbrStr = "((1 +(fd90 - 1)*nlPow5) * (1 + (fd90 - 1)*nvPow5) * NdotL)"; + + if( ps.HasTransmission() || ps.HasLightWrapping() ) { + lmbStr = "(" + lmbStr + " + " + pbrStr + ")"; + } else { + lmbStr = pbrStr; + } + + + } else if( !( ps.HasTransmission() || ps.HasLightWrapping() ) ) { + lmbStr = GetWithDiffPow( "max( 0.0, NdotL)" ); + } + + + + //} + + if( ps.catLighting.IsEnergyConserving() && !Unity5PBL() ) { + if( ps.HasLightWrapping() ) { + lmbStr += "*(0.5-max(w.r,max(w.g,w.b))*0.5)"; + } + } + + lmbStr = "float3 directDiffuse = " + lmbStr + " * attenColor"; + lmbStr += ";"; + App( lmbStr ); + } + + + + bool ambDiff = ps.mOut.ambientDiffuse.IsConnectedEnabledAndAvailableInThisPass( currentPass ); + bool shLight = DoPassSphericalHarmonics(); + bool diffAO = ps.mOut.diffuseOcclusion.IsConnectedEnabledAndAvailableInThisPass( currentPass ); + bool ambLight = ps.catLighting.useAmbient && ( currentPass == PassType.FwdBase ) && !LightmappedAndLit(); // Ambient is already in light probe data + + bool hasIndirectLight = ambDiff || shLight || ambLight; // TODO: Missing lightmaps + + + + + if( hasIndirectLight ) { + App( "float3 indirectDiffuse = float3(0,0,0);" ); + } + + + + + + + + + + // Direct light done, now let's do indirect light + + //if( !InDeferredPass() ) { + if( hasIndirectLight ) { + //App( " indirectDiffuse = float3(0,0,0);" ); + + if( ambLight ) + App( "indirectDiffuse += " + GetAmbientStr() + "; // Ambient Light" ); + if( ambDiff ) + App( "indirectDiffuse += " + ps.n_ambientDiffuse + "; // Diffuse Ambient Light" ); + + + if( LightmappedAndLit() ) { + + + App( "indirectDiffuse += gi.indirect.diffuse;" ); + + + } + + // Diffuse AO + if( diffAO ) { + App( "indirectDiffuse *= " + ps.n_diffuseOcclusion + "; // Diffuse AO" ); + } + + + } + //} + + + //if( LightmapThisPass() ) { + // scope--; + //App( "#endif" ); + // } + + // This has been defined before specular, in the case of PBL + if( !Unity5PBL() ) { + App( "float3 diffuseColor = " + ps.n_diffuse + ";" ); + } + + // To make diffuse/spec tradeoff better + if( DoPassDiffuse() && DoPassSpecular() ) { + if( ps.catLighting.lightMode == SFPSC_Lighting.LightMode.PBL ) { + if(ps.catLighting.specularMode != SFPSC_Lighting.SpecularMode.Metallic) // Metallic has already done this by now + App( "diffuseColor *= 1-specularMonochrome;" ); + } else if( ps.catLighting.energyConserving ) { + App( "diffuseColor *= 1-specularMonochrome;" ); + } + } + + if( !InDeferredPass() ) { + if( hasIndirectLight ) { + App( "float3 diffuse = (directDiffuse + indirectDiffuse) * diffuseColor;" ); + } else { + App( "float3 diffuse = directDiffuse * diffuseColor;" ); + } + + } + + //if( SF_Tools.UsingUnity5plus && ps.catLighting.lightMode == SFPSC_Lighting.LightMode.PBL ) { + // App( "diffuse *= 0.75;" ); + //} + + + + + + } + + bool LightmapThisPass() { + return LightmappedAndLit() && ( currentPass == PassType.FwdBase || currentPass == PassType.Deferred ); + } + + void InitNormalDirVert() { + if( dependencies.vert_out_normals ) { + App( "o.normalDir = UnityObjectToWorldNormal(" + ps.catGeometry.GetNormalSign() + "v.normal);" ); + } + } + + void InitTangentDirVert() { + App( "o.tangentDir = normalize( mul( unity_ObjectToWorld, float4( v.tangent.xyz, 0.0 ) ).xyz );" ); + } + + void InitBitangentDirVert() { + App( "o.bitangentDir = normalize(cross(o.normalDir, o.tangentDir) * v.tangent.w);" ); + } + + void InitObjectPos() { + if( dependencies.frag_objectPos || dependencies.vert_objectPos ) + App( "float4 objPos = mul ( unity_ObjectToWorld, float4(0,0,0,1) );" ); + } + void InitObjectScale() { + if( dependencies.objectScaleReciprocal || dependencies.objectScale ) + App( "float3 recipObjScale = float3( length(unity_WorldToObject[0].xyz), length(unity_WorldToObject[1].xyz), length(unity_WorldToObject[2].xyz) );" ); + if( dependencies.objectScale ) + App( "float3 objScale = 1.0/recipObjScale;" ); + } + + void InitNormalDirFrag() { + + if( ( !dependencies.frag_normalDirection && currentProgram == ShaderProgram.Frag ) ) + return; + + + + + //if(ps.normalQuality == SF_PassSettings.NormalQuality.Normalized){ + // App ("i.normalDir = normalize(i.normalDir);"); + //} + + + + if( currentPass == PassType.ShadCast || currentPass == PassType.Meta ) { + App( "float3 normalDirection = i.normalDir;" ); + } else { + if( ps.HasTangentSpaceNormalMap() ) { + App( "float3 normalLocal = " + ps.n_normals + ";" ); + App( "float3 normalDirection = normalize(mul( normalLocal, tangentTransform )); // Perturbed normals" ); + } else if( ps.HasObjectSpaceNormalMap() ) { + App( "float3 normalLocal = " + ps.n_normals + ";" ); + App( "float3 normalDirection = mul( unity_WorldToObject, float4(normalLocal,0)) / recipObjScale;" ); + } else if( ps.HasWorldSpaceNormalMap() ) { + App( "float3 normalDirection = " + ps.n_normals + ";" ); + } else { + App( "float3 normalDirection = i.normalDir;" ); + } + } + + + + } + + + void CalcGloss() { + AppDebug( "Gloss" ); + if( ps.catLighting.glossRoughMode == SFPSC_Lighting.GlossRoughMode.Roughness ){ + App( "float gloss = 1.0 - " + ps.n_gloss + "; // Convert roughness to gloss" ); + if( Unity5PBL() ) + App( "float perceptualRoughness = " + ps.n_gloss + ";" ); + } else { + App( "float gloss = " + ps.n_gloss + ";" ); + if( Unity5PBL() ) + App( "float perceptualRoughness = 1.0 - " + ps.n_gloss + ";" ); + } + + if( Unity5PBL() ) { + if( ps.catLighting.geometricAntiAliasing ) { + App( "float3 spaaDx = ddx(i.normalDir);" ); + App( "float3 spaaDy = ddy(i.normalDir);" ); + App( "float geoRoughFactor = pow(saturate(max(dot(spaaDx,spaaDx),dot(spaaDy,spaaDy))),0.333);" ); + App( "perceptualRoughness = max(perceptualRoughness, geoRoughFactor);" ); + } + App( "float roughness = perceptualRoughness * perceptualRoughness;" ); + } + + if( !InDeferredPass() ) { + if( ps.catLighting.remapGlossExponentially ) { + App( "float specPow = exp2( gloss * 10.0 + 1.0 );" ); + } else { + App( "float specPow = gloss;" ); + } + } + + + + } + + bool DoAmbientSpecThisPass() { + return ( mOut.ambientSpecular.IsConnectedEnabledAndAvailable() && ( currentPass == PassType.FwdBase || currentPass == PassType.Deferred ) ); + } + + + void CalcSpecular() { + + + + AppDebug( "Specular" ); + + + + if( currentPass != PassType.Deferred ) { + App( "float NdotL = saturate(dot( " + VarNormalDir() + ", lightDirection ));" ); + } + + + //if(DoAmbientSpecThisPass() && ps.IsPBL()) + //App ("float NdotR = max(0, dot(viewReflectDirection, normalDirection));"); // WIP + + string directSpecular = "float3 directSpecular = "; + + string attColStr; + //if( ps.catLighting.maskedSpec && currentPass == PassType.FwdBase && ps.catLighting.lightMode != SFPSC_Lighting.LightMode.PBL ) { + // attColStr = "(floor(attenuation) * _LightColor0.xyz)"; + //} else { + attColStr = "attenColor"; + //} + + + + + + + + + /* + * float3 specular = pow(max(0.0,dot(halfDirection, normalDirection)),specPow) * specularColor; + #ifndef LIGHTMAP_OFF + #ifndef DIRLIGHTMAP_OFF + specular *= lightmap; + #else + specular *= floor(attenuation) * _LightColor0.xyz; + #endif + #else + specular = floor(attenuation) * _LightColor0.xyz; + #endif + * */ + + directSpecular += attColStr; /* * " + ps.n_specular;*/ // TODO: Doesn't this double the spec? Removed for now. Shouldn't evaluate spec twice when using PBL + + + + + //if( mOut.ambientSpecular.IsConnectedEnabledAndAvailable() && currentPass == PassType.FwdBase){ + // s += "(attenColor + " + ps.n_ambientSpecular + ")"; + //} else { + // s += "attenColor"; + //} + + + + bool occluded = ps.mOut.specularOcclusion.IsConnectedEnabledAndAvailableInThisPass( currentPass ) && !InDeferredPass(); + bool ambSpec = DoAmbientSpecThisPass(); + bool reflProbed = dependencies.reflection_probes; + bool hasIndirectSpecular = ambSpec || ( reflProbed && ( currentPass == PassType.FwdBase || currentPass == PassType.Deferred ) ); + string indirectSpecular = ""; + + if( hasIndirectSpecular ) { + + if( occluded ) { + App( "float3 specularAO = " + ps.n_specularOcclusion + ";" ); + } + + indirectSpecular = "float3 indirectSpecular = "; + + + + + + if( reflProbed ) { + indirectSpecular += "(gi.indirect.specular"; + } else { + indirectSpecular += "(0"; + } + + + if( ambSpec ) { + indirectSpecular += " + " + ps.n_ambientSpecular + ")"; + } else { + indirectSpecular += ")"; + } + + if( occluded ) { + indirectSpecular += " * specularAO"; + } + + + } + + + + + + + + + if( ps.catLighting.IsPBL() && !InDeferredPass() ) { + + App( "float LdotH = saturate(dot(lightDirection, halfDirection));" ); + + + + //s += "*NdotL"; // TODO: Really? Is this the cosine part? + + //if(DoAmbientSpecThisPass()) + //sAmb += " * NdotR"; + + } + + if( !InDeferredPass() && !Unity5PBL() ) { + if( ps.catLighting.lightMode == SFPSC_Lighting.LightMode.Phong ) + directSpecular += " * pow(max(0,dot(reflect(-lightDirection, " + VarNormalDir() + "),viewDirection))"; + if( ps.catLighting.lightMode == SFPSC_Lighting.LightMode.BlinnPhong ) { + directSpecular += " * pow(max(0,dot(halfDirection," + VarNormalDir() + "))"; + } + directSpecular += ",specPow)"; + } + + bool initialized_NdotV = false; + bool initialized_NdotH = false; + bool initialized_VdotH = false; + + + App( "float3 specularColor = " + ps.n_specular + ";" ); + if( Unity5PBL() ) { + App( "float specularMonochrome;" ); + App( "float3 diffuseColor = " + ps.n_diffuse + "; // Need this for specular when using metallic" ); + if( MetallicPBL() ) { + App( "diffuseColor = DiffuseAndSpecularFromMetallic( diffuseColor, specularColor, specularColor, specularMonochrome );" ); + } else { + App( "diffuseColor = EnergyConservationBetweenDiffuseAndSpecular(diffuseColor, specularColor, specularMonochrome);" ); + } + App( "specularMonochrome = 1.0-specularMonochrome;" ); + } else if( ps.catLighting.energyConserving && DoPassDiffuse() && DoPassSpecular() ){ + App( "float specularMonochrome = max( max(specularColor.r, specularColor.g), specularColor.b);" ); + } + + + + + + + + string specularPBL = ""; + + // PBL SHADING, normalization term comes after this + if( ps.catLighting.IsPBL() && !InDeferredPass() ) { + + + + // FRESNEL TERM + //App( "float3 specularColor = " + ps.n_specular + ";" ); + + + + //specularPBL += "*NdotL"; + + + + // VISIBILITY TERM / GEOMETRIC TERM? + + if( !initialized_NdotV ) { + App( "float NdotV = abs(dot( " + VarNormalDir() + ", viewDirection ));" ); + initialized_NdotV = true; + } + + + if( !initialized_NdotH ) { + App( "float NdotH = saturate(dot( " + VarNormalDir() + ", halfDirection ));" ); + initialized_NdotH = true; + } + if( !initialized_VdotH ) { + App( "float VdotH = saturate(dot( viewDirection, halfDirection ));" ); + initialized_VdotH = true; + } + + App( "float visTerm = SmithJointGGXVisibilityTerm( NdotL, NdotV, roughness );" ); + + specularPBL += "*visTerm"; + + + + + + + } else { + //sAmb += " * specularColor"; + //directSpecular += " * specularColor"; + } + + + + if( ps.catLighting.IsEnergyConserving() && !InDeferredPass() ) { + // NORMALIZATION TERM + if( ps.catLighting.lightMode == SFPSC_Lighting.LightMode.Phong ) { + App( "float normTerm = (specPow + 2.0 ) / (2.0 * Pi);" ); + directSpecular += "*normTerm"; + } else if( ps.catLighting.lightMode == SFPSC_Lighting.LightMode.BlinnPhong || ps.catLighting.lightMode == SFPSC_Lighting.LightMode.PBL ) { + if( Unity5PBL() ) { + + if( !initialized_NdotH ) { + App( "float NdotH = saturate(dot( " + VarNormalDir() + ", halfDirection ));" ); + initialized_NdotH = true; + } + + App( "float normTerm = GGXTerm(NdotH, roughness);" ); + specularPBL += "*normTerm"; + + } else { + App( "float normTerm = (specPow + 8.0 ) / (8.0 * Pi);" ); + directSpecular += "*normTerm"; + } + + } + + if( DoAmbientSpecThisPass() ) { + //sAmb += " * normTerm"; + } + + + + + } + + + + + + if( !InDeferredPass() ) { + if( Unity5PBL() ) { + + if( !initialized_NdotV ) { + App( "float NdotV = max(0.0,dot( " + VarNormalDir() + ", viewDirection ));" ); + initialized_NdotV = true; + } + + + + specularPBL = specularPBL.Substring( 1 ); // Remove first * symbol + specularPBL = "float specularPBL = (" + specularPBL + ") * UNITY_PI;"; + + App( specularPBL ); + + App( "#ifdef UNITY_COLORSPACE_GAMMA" ); + scope++; + App( "specularPBL = sqrt(max(1e-4h, specularPBL));" ); + scope--; + App( "#endif" ); + App( "specularPBL = max(0, specularPBL * NdotL);" ); + App( "#if defined(_SPECULARHIGHLIGHTS_OFF)" ); + scope++; + App( "specularPBL = 0.0;" ); + scope--; + App( "#endif" ); + + // Surface reduction + if( hasIndirectSpecular ) { + App( "half surfaceReduction;" ); + App( "#ifdef UNITY_COLORSPACE_GAMMA" ); + scope++; + App( "surfaceReduction = 1.0-0.28*roughness*perceptualRoughness;" ); + scope--; + App( "#else" ); + scope++; + App( "surfaceReduction = 1.0/(roughness*roughness + 1.0);" ); + scope--; + App( "#endif" ); + } + + + // Kill spec if color = 0 + App( "specularPBL *= any(specularColor) ? 1.0 : 0.0;" ); + + + directSpecular += "*specularPBL*FresnelTerm(specularColor, LdotH)"; + } else { + directSpecular += "*specularColor"; + } + + directSpecular += ";"; + + App( directSpecular ); + } else { + // If we're in deferred, we still need NdotV for lightmapping + if( !initialized_NdotV ) { + App( "float NdotV = max(0.0,dot( " + VarNormalDir() + ", viewDirection ));" ); + initialized_NdotV = true; + } + } + + + + + + string specular = ""; + + + if( hasIndirectSpecular ) { + + if( Unity5PBL() ) { + App( "half grazingTerm = saturate( gloss + specularMonochrome );" ); + } else { + indirectSpecular += "*specularColor"; + } + + App( indirectSpecular + ";" ); + + if( Unity5PBL() ) { + if( ps.HasSpecular() ) { + App( "indirectSpecular *= FresnelLerp (specularColor, grazingTerm, NdotV);" ); + if(!InDeferredPass()) + App( "indirectSpecular *= surfaceReduction;" ); + } else { + //App( "float3 indirectFresnelPBL = FresnelLerp (specularColor, grazingTerm, NdotV);" ); + } + } + if( !InDeferredPass() ) { + specular = "float3 specular = (directSpecular + indirectSpecular);"; + } + + } else if(!InDeferredPass()){ + specular = "float3 specular = directSpecular;"; + } + + if( !InDeferredPass() ) + App( specular ); // Specular + + + + + + + + + + + } + + // Spec & emissive + /* + void CalcAddedLight() { + + + // No added light unless we're using spec or emissive + if( !ps.HasSpecular() && !ps.HasEmissive() ) + return; + + AppDebug("CalcAddedLight()"); + + string s = ""; + //if( ps.HasSpecular() || ps.HasEmissive() && currentPass == PassType.FwdBase ) + + if( ps.HasSpecular() ) { + + CalcGloss(); + CalcSpecular(); + + if( ps.HasEmissive() && currentPass == PassType.FwdBase ) + s += " + " + ps.n_emissive; + + s += ";"; + + } else if( ps.HasEmissive() && currentPass == PassType.FwdBase ) { + s = "float3 addLight = "; + s += ps.n_emissive + ";"; + } + + App( s ); + } + */ + + + public bool MetallicPBL() { + return ps.catLighting.IsPBL() && ps.catLighting.specularMode == SFPSC_Lighting.SpecularMode.Metallic; + } + + bool Unity5PBL() { + return ps.catLighting.lightMode == SFPSC_Lighting.LightMode.PBL; + } + + + void CalcEmissive() { + AppDebug( "Emissive" ); + App( "float3 emissive = " + ps.n_emissive + ";" ); + } + + bool DoPassDiffuse() { + return ps.HasDiffuse() && ( currentPass == PassType.FwdBase || currentPass == PassType.FwdAdd || currentPass == PassType.Deferred ); + } + bool DoPassEmissive() { // Emissive should always be in the base pass + return ps.HasEmissive() && ( currentPass == PassType.FwdBase || currentPass == PassType.Deferred ); + } + bool DoPassSpecular() { // Spec only in base and add passes + return ps.catLighting.HasSpecular() && ( currentPass == PassType.FwdBase || currentPass == PassType.FwdAdd || currentPass == PassType.Deferred ); + } + + + + void CalcFinalLight() { + //bool addedOnce = false; + string finalLightStr = "float3 lightFinal = "; + if( ps.catLighting.IsLit() ) { + finalLightStr += "diffuse"; + if( ps.catLighting.useAmbient && currentPass == PassType.FwdBase ) { + finalLightStr += " + UNITY_LIGHTMODEL_AMBIENT.xyz"; + } + } + + finalLightStr += ";"; + App( finalLightStr ); + + } + + + + + void AppFinalOutput( string color, string alpha ) { + + string rgbaValue; + if( ps.HasRefraction() && currentPass == PassType.FwdBase ) { + rgbaValue = "fixed4(lerp(sceneColor.rgb, " + color + "," + alpha + "),1)"; + } else { + rgbaValue = "fixed4(" + color + "," + alpha + ")"; + } + + if( UseUnity5FogInThisPass() ) { + App( "fixed4 finalRGBA = " + rgbaValue + ";" ); + if( ps.catBlending.fogOverrideColor ) { + App( "UNITY_APPLY_FOG_COLOR(i.fogCoord, finalRGBA, " + GetFogColorAsFixed3Value() + ");" ); + } else { + App( "UNITY_APPLY_FOG(i.fogCoord, finalRGBA);" ); + } + App( "return finalRGBA;" ); + } else { + App( "return " + rgbaValue + ";" ); + } + + } + + string GetFogColorAsFixed3Value() { + Color c = ps.catBlending.fogColor; + return "fixed4(" + c.r + "," + c.g + "," + c.b + "," + c.a + ")"; + } + + + string GetAmbientStr() { + string s; + if( InDeferredPass() ) + s = "unity_Ambient.rgb"; + else + s = "UNITY_LIGHTMODEL_AMBIENT.rgb"; + + + if( InDeferredPass() ) { + s += "*0.5"; // TODO: Maybe not? + } + + + + + + return s; + + } + + + bool DoPassSphericalHarmonics() { + return DoPassDiffuse() && LightmappedAndLit() && ( currentPass == PassType.FwdBase || currentPass == PassType.Deferred ); + } + + bool InDeferredPass() { + return currentPass == PassType.Deferred; + } + + + void Lighting() { + + if( IsShadowOrOutlineOrMetaPass() ) + return; + AppDebug( "Lighting" ); + + /* + if( ps.IsVertexLit() && SF_Evaluator.inFrag ) { + string finalLightStr = "float3 lightFinal = i.vtxLight"; + + if(DoPassDiffuse()) + finalLightStr += " * " + ps.n_diffuse; // TODO: Not ideal, affects both spec and diffuse + + finalLightStr += ";"; + App( finalLightStr ); // TODO: Emissive and other frag effects? TODO: Separate vtx spec and vtx diffuse + return; + } + */ + + bool attenBuiltin = ps.catLighting.IsLit() && ( ps.HasDiffuse() || ps.catLighting.HasSpecular() ) && currentPass != PassType.Deferred; + + if( attenBuiltin || ( dependencies.frag_attenuation && SF_Evaluator.inFrag ) ) + InitAttenuation(); + + if( !ps.catLighting.IsLit() && SF_Evaluator.inFrag ) { + + + string s = "float3 finalColor = "; + + + + //bool doAmbient = (currentPass == ShaderForge.PassType.FwdBase && ps.useAmbient); + bool doEmissive = DoPassEmissive(); + bool doCustomLight = mOut.customLighting.IsConnectedEnabledAndAvailable(); + + bool didAddLight = /*doAmbient || */doEmissive || doCustomLight; + + bool somethingAdded = false; + //if( doAmbient ){ + // s += somethingAdded ? " + ":""; + // s += GetAmbientStr(); + // somethingAdded = true; + //} + if( doEmissive ) { + CalcEmissive(); + s += somethingAdded ? " + " : ""; + s += "emissive"; + somethingAdded = true; + } + if( doCustomLight ) { + s += somethingAdded ? " + " : ""; + s += ps.n_customLighting; + somethingAdded = true; + } + + + + if( !didAddLight ) + s += "0"; // TODO: Don't do lighting at all if this is the case + + + s += ";"; + + App( s ); + + //if( ps.useAmbient && currentPass == PassType.FwdBase ) + // App( "float3 lightFinal = " + ps.n_emissive + "+UNITY_LIGHTMODEL_AMBIENT.xyz;"); // TODO; THIS IS SUPER WEIRD + //else + // App( "float3 lightFinal = " + ps.n_emissive + ";"); // Kinda weird, but emissive = light when unlit is on, so it's needed in additional passes too + return; + + } + + + + // Else if frag light... + + //InitLightDir(); + + //if(SF_Evaluator.inFrag) + + + if( DoPassDiffuse() || DoPassSpecular() ) { + if( ps.catLighting.IsEnergyConserving() ) { + App( "float Pi = 3.141592654;" ); + App( "float InvPi = 0.31830988618;" ); + } + } + + + bool unity5pblDiffusePlugged = ps.catLighting.lightMode == SFPSC_Lighting.LightMode.PBL && ps.mOut.diffuse.IsConnectedEnabledAndAvailableInThisPass(currentPass); + + + if( DoPassSpecular() || unity5pblDiffusePlugged ) { // Specular + CalcGloss(); + } + + + CalcGIdata(); + + + + + if( DoPassSpecular() ) { // Specular + //if( !InDeferredPass() ) + //CalcGloss(); + CalcSpecular(); + //AppDebug("Spec done"); + } + + if( DoPassDiffuse() ) // Diffuse + texture (If not vertex lit) + CalcDiffuse(); + + if( DoPassEmissive() ) // Emissive + CalcEmissive(); + + /*if(!ps.IsLit() && ps.mOut.customLighting.IsConnectedEnabledAndAvailable() ){ + + App("float3 lightFinal = " + ps.n_customLighting ); + + }*/ + if( /*!ps.IsVertexLit() &&*/ currentProgram == ShaderProgram.Frag ) { + + AppDebug( "Final Color" ); + + /* + bool fresnelIndirectPBL = + Unity5PBL() && + ( ps.catLighting.reflectprobed || ps.HasAmbientSpecular() ) && + (currentPass == PassType.FwdBase || currentPass == PassType.PrePassFinal) + ;*/ + + + + if(!InDeferredPass()){ + + + string diffuse = ps.HasAlpha() && ps.catLighting.transparencyMode == SFPSC_Lighting.TransparencyMode.Reflective ? "diffuse * " + ps.n_alpha : "diffuse" ; + + string s = SumString( + new bool[] { DoPassDiffuse(), DoPassSpecular(), DoPassEmissive() }, + new string[] { diffuse, "specular", "emissive" }, + "0" + ); + + App( "float3 finalColor = " + s + ";" ); + } + + + } + + } + + + void CalcGIdata(){ + + + if( ( currentPass == PassType.FwdBase || currentPass == PassType.Deferred ) && ( ps.catLighting.lightMode == SFPSC_Lighting.LightMode.PBL || ps.catLighting.reflectprobed || LightmappedAndLit() ) ) { + + + AppDebug("GI Data"); + + + if( InDeferredPass() ) { + App( "UnityLight light; // Dummy light" ); + App( "light.color = 0;" ); + App( "light.dir = half3(0,1,0);" ); + App( "light.ndotl = max(0,dot(normalDirection,light.dir));" ); + } else { + App( "UnityLight light;" ); + App( "#ifdef LIGHTMAP_OFF" ); + scope++; + App( "light.color = lightColor;" ); + App( "light.dir = lightDirection;" ); + App( "light.ndotl = LambertTerm (normalDirection, light.dir);" ); + scope--; + App( "#else" ); + scope++; + App( "light.color = half3(0.f, 0.f, 0.f);" ); + App( "light.ndotl = 0.0f;" ); + App( "light.dir = half3(0.f, 0.f, 0.f);" ); + scope--; + App( "#endif" ); + } + + + + App("UnityGIInput d;"); + App("d.light = light;"); + App("d.worldPos = i.posWorld.xyz;"); + App("d.worldViewDir = viewDirection;"); + if( InDeferredPass() ) + App( "d.atten = 1;" ); + else + App("d.atten = attenuation;"); + + if( LightmappedAndLit() ) { + App( "#if defined(LIGHTMAP_ON) || defined(DYNAMICLIGHTMAP_ON)" ); + scope++; + App( "d.ambient = 0;" ); + App( "d.lightmapUV = i.ambientOrLightmapUV;" ); + scope--; + App( "#else" ); + scope++; + App( "d.ambient = i.ambientOrLightmapUV;" ); + scope--; + App( "#endif" ); + } + + + + + if(DoPassSpecular() && ps.catLighting.reflectprobed){ + App( "#if UNITY_SPECCUBE_BLENDING || UNITY_SPECCUBE_BOX_PROJECTION" ); + scope++; + App("d.boxMin[0] = unity_SpecCube0_BoxMin;"); + App("d.boxMin[1] = unity_SpecCube1_BoxMin;"); + scope--; + App( "#endif" ); + + App( "#if UNITY_SPECCUBE_BOX_PROJECTION" ); + scope++; + App("d.boxMax[0] = unity_SpecCube0_BoxMax;"); + App("d.boxMax[1] = unity_SpecCube1_BoxMax;"); + App("d.probePosition[0] = unity_SpecCube0_ProbePosition;"); + App("d.probePosition[1] = unity_SpecCube1_ProbePosition;"); + scope--; + App( "#endif" ); + + App("d.probeHDR[0] = unity_SpecCube0_HDR;"); + App("d.probeHDR[1] = unity_SpecCube1_HDR;"); + + } + + + string glossStr = DoPassSpecular() ? "gloss" : "0"; + + App( "Unity_GlossyEnvironmentData ugls_en_data;" ); + App( "ugls_en_data.roughness = 1.0 - " + glossStr + ";" ); + App( "ugls_en_data.reflUVW = viewReflectDirection;" ); + + App( "UnityGI gi = UnityGlobalIllumination(d, 1, normalDirection, ugls_en_data );" ); + + + if( !InDeferredPass() ) { + App ("lightDirection = gi.light.dir;"); + App ("lightColor = gi.light.color;"); + } + + + } + + + + + + } + + + + + string SumString( bool[] bools, string[] strings, string defStr ) { + + int validCount = 0; + for( int i = 0; i < bools.Length; i++ ) { + if( bools[i] ) + validCount++; + } + + if( validCount == 0 ) + return defStr; + + string s = ""; + int added = 0; + for( int i = 0; i < strings.Length; i++ ) { + if( bools[i] ) { + s += strings[i]; + added++; + if( added < validCount ) + s += " + "; + } + } + return s; + } + + void InitReflectionDir() { + if( ( !dependencies.frag_viewReflection && currentProgram == ShaderProgram.Frag ) || ( !dependencies.vert_viewReflection && currentProgram == ShaderProgram.Vert ) ) + return; + App( "float3 viewReflectDirection = reflect( -" + VarViewDir() + ", " + VarNormalDir() + " );" ); + } + + void InitSceneColorAndDepth() { + + if( dependencies.frag_sceneDepth ) { + App( "float sceneZ = max(0,LinearEyeDepth (UNITY_SAMPLE_DEPTH(tex2Dproj(_CameraDepthTexture, UNITY_PROJ_COORD(i.projPos)))) - _ProjectionParams.g);" ); + } + if( dependencies.frag_pixelDepth ) { + App( "float partZ = max(0,i.projPos.z - _ProjectionParams.g);" ); + } + + + if( dependencies.scene_uvs ) { + string sUv = "float2 sceneUVs = "; + + + if( ps.HasRefraction() ) { + sUv += "(i.projPos.xy / i.projPos.w) + " + ps.n_distortion + ";"; + } else { + sUv += "(i.projPos.xy / i.projPos.w);"; + } + + App( sUv ); + } + + + if( dependencies.grabPass ) { + + string s = "float4 sceneColor = "; + s += "tex2D(" + ps.catBlending.GetGrabTextureName() + ", sceneUVs);"; + App( s ); + } + + + + + + } + + + string VarNormalDir() { + if( currentProgram == ShaderProgram.Vert ) + return "o.normalDir"; + return "normalDirection"; + } + + string VarViewDir() { // TODO: Define view variable, dependency etc + if( currentProgram == ShaderProgram.Vert ) + return "normalize(_WorldSpaceCameraPos.xyz - i.posWorld.xyz)"; + return "viewDirection"; + } + + + + + + + + public string GetUvCompCountString( int channel ) { + bool useFloat4 = false; + if( channel == 0 && dependencies.uv0_float4 ) { + useFloat4 = true; + } else if( channel == 1 && dependencies.uv1_float4 ) { + useFloat4 = true; + } else if( channel == 2 && dependencies.uv2_float4 ) { + useFloat4 = true; + } else if( channel == 3 && dependencies.uv3_float4 ) { + useFloat4 = true; + } + return useFloat4 ? "float4" : "float2"; + } + + + + + + + void VertexInputStruct() { + App( "struct VertexInput {" ); + scope++; + App( "float4 vertex : POSITION;" ); + CommonVertexData(); + scope--; + App( "};" ); + } + + void CommonVertexData() { + if( dependencies.vert_in_normals ) + App( "float3 normal : NORMAL;" ); + if( dependencies.vert_in_tangents ) + App( "float4 tangent : TANGENT;" ); + if( dependencies.uv0 ) + App( GetUvCompCountString( 0 ) + " texcoord0 : TEXCOORD0;" ); + if( dependencies.uv1 ) + App( GetUvCompCountString( 1 ) + " texcoord1 : TEXCOORD1;" ); + if( dependencies.uv2 ) + App( GetUvCompCountString( 2 ) + " texcoord2 : TEXCOORD2;" ); + if( dependencies.uv3 ) + App( GetUvCompCountString( 3 ) + " texcoord3 : TEXCOORD3;" ); + if( dependencies.vert_in_vertexColor ) + App( "float4 vertexColor : COLOR;" ); + } + + void TransferCommonData() { + App( "o.vertex = v.vertex;" ); + if( dependencies.vert_in_normals ) + App( "o.normal = v.normal;" ); + if( dependencies.vert_in_tangents ) + App( "o.tangent = v.tangent;" ); + if( inTess ) { + if( dependencies.uv0 ) + App( "o.texcoord0 = v.texcoord0;" ); + if( dependencies.uv1 ) + App( "o.texcoord1 = v.texcoord1;" ); + if( dependencies.uv2 ) + App( "o.texcoord2 = v.texcoord2;" ); + if( dependencies.uv3 ) + App( "o.texcoord3 = v.texcoord3;" ); + } else { + if( dependencies.uv0 ) + App( "o.uv0 = v.texcoord0;" ); + if( dependencies.uv1 ) + App( "o.uv1 = v.texcoord1;" ); + if( dependencies.uv2 ) + App( "o.uv2 = v.texcoord2;" ); + if( dependencies.uv3 ) + App( "o.uv3 = v.texcoord3;" ); + } + + if( dependencies.vert_in_vertexColor ) + App( "o.vertexColor = v.vertexColor;" ); + } + + + public string GetVertOutTexcoord( bool numberOnly = false ) { + if( numberOnly ) + return dependencies.GetVertOutTexcoord(); + return ( " : TEXCOORD" + dependencies.GetVertOutTexcoord() + ";" ); + } + + void VertexOutputStruct() { + App( "struct VertexOutput {" ); + scope++; + { + if( currentPass == PassType.ShadCast ) { + App( "V2F_SHADOW_CASTER;" ); + dependencies.IncrementTexCoord( 1 ); + } else { + App( "float4 pos : SV_POSITION;" ); // Already included in shadow passes + } + + if( ps.catLighting.IsVertexLit() ) + App( "float3 vtxLight : COLOR;" ); + //if( DoPassSphericalHarmonics() && !ps.highQualityLightProbes ) + // App ("float3 shLight" + GetVertOutTexcoord() ); + if( dependencies.uv0_frag ) + App( GetUvCompCountString( 0 ) + " uv0" + GetVertOutTexcoord() ); + if( dependencies.uv1_frag ) + App( GetUvCompCountString( 1 ) + " uv1" + GetVertOutTexcoord() ); + if( dependencies.uv2_frag ) + App( GetUvCompCountString( 2 ) + " uv2" + GetVertOutTexcoord() ); + if( dependencies.uv3_frag ) + App( GetUvCompCountString( 3 ) + " uv3" + GetVertOutTexcoord() ); + if( dependencies.vert_out_worldPos ) + App( "float4 posWorld" + GetVertOutTexcoord() ); + if( dependencies.vert_out_normals ) + App( "float3 normalDir" + GetVertOutTexcoord() ); + if( dependencies.vert_out_tangents ) + App( "float3 tangentDir" + GetVertOutTexcoord() ); + if( dependencies.vert_out_bitangents ) + App( "float3 bitangentDir" + GetVertOutTexcoord() ); + if( dependencies.vert_out_screenPos ) + App( "float4 screenPos" + GetVertOutTexcoord() ); + if( dependencies.vert_in_vertexColor ) + App( "float4 vertexColor : COLOR;" ); + if( dependencies.frag_projPos ) + App( "float4 projPos" + GetVertOutTexcoord() ); + if( ShouldUseLightMacros() ) + App( "LIGHTING_COORDS(" + GetVertOutTexcoord( true ) + "," + GetVertOutTexcoord( true ) + ")" ); + if( UseUnity5FogInThisPass() ) + App( "UNITY_FOG_COORDS(" + GetVertOutTexcoord( true ) + ")" ); // New in Unity 5 + + bool sh = DoPassSphericalHarmonics() && !ps.catLighting.highQualityLightProbes; + bool lm = LightmapThisPass(); + + + string shlmTexCoord = GetVertOutTexcoord(); + + + // Unity 5 LMs + if( sh || lm ) { + App( "#if defined(LIGHTMAP_ON) || defined(UNITY_SHOULD_SAMPLE_SH)" ); + scope++; + App( "float4 ambientOrLightmapUV" + shlmTexCoord ); + scope--; + App( "#endif" ); + } + + + + + + + + + + } + scope--; + App( "};" ); + } + + + + public bool ShouldUseLightMacros() { + return ( ( currentPass == PassType.FwdAdd || ( currentPass == PassType.FwdBase && !ps.catBlending.ignoreProjector ) ) && ( dependencies.UsesLightNodes() || ps.catLighting.IsLit() ) ); + } + + public bool IsShadowPass() { + return currentPass == PassType.ShadCast; + } + + public bool IsShadowOrOutlineOrMetaPass() { + return currentPass == PassType.Outline || currentPass == PassType.Meta || IsShadowPass(); + } + + public bool IncludeLightingCginc() { + return LightmappedAndLit() || IsShadowPass() || ( cNodes.Where( x => x is SFN_LightAttenuation ).Count() > 0 ); + } + + + void Vertex() { + currentProgram = ShaderProgram.Vert; + App( "VertexOutput vert (VertexInput v) {" ); + scope++; + App( "VertexOutput o = (VertexOutput)0;" ); + + + + if( dependencies.uv0_frag ) + App( "o.uv0 = v.texcoord0;" ); + if( dependencies.uv1_frag ) + App( "o.uv1 = v.texcoord1;" ); + if( dependencies.uv2_frag ) + App( "o.uv2 = v.texcoord2;" ); + if( dependencies.uv3_frag ) + App( "o.uv3 = v.texcoord3;" ); + if( dependencies.vert_out_vertexColor ) + App( "o.vertexColor = v.vertexColor;" ); + + + bool lm = LightmapThisPass(); + bool sh = DoPassSphericalHarmonics() && !ps.catLighting.highQualityLightProbes; + + if( lm ){ + App("#ifdef LIGHTMAP_ON"); + scope++; + App( "o.ambientOrLightmapUV.xy = v.texcoord1.xy * unity_LightmapST.xy + unity_LightmapST.zw;" ); + App( "o.ambientOrLightmapUV.zw = 0;" ); + + scope--; + if(sh){ + App("#elif UNITY_SHOULD_SAMPLE_SH"); + scope++; + } else { + App("#endif"); + } + } + + if( sh ) { + + if( !lm ) { + App( "#if SHOULD_SAMPLE_SH" ); + scope++; + } + //App( "o.ambientOrLightmapUV.rgb = 0.01*ShadeSH9(float4(UnityObjectToWorldNormal(v.normal),1));" ); + //if( !lm ) { + scope--; + App( "#endif" ); + //} + + } + + if( lm ) { + App( "#ifdef DYNAMICLIGHTMAP_ON" ); + scope++; + App( "o.ambientOrLightmapUV.zw = v.texcoord2.xy * unity_DynamicLightmapST.xy + unity_DynamicLightmapST.zw;" ); + scope--; + App("#endif"); + } + + + + + + + if( dependencies.vert_out_normals ) + InitNormalDirVert(); + if( dependencies.vert_out_tangents ) + InitTangentDirVert(); + if( dependencies.vert_out_bitangents ) + InitBitangentDirVert(); + + InitObjectPos(); + + if( editor.nodeView.treeStatus.viewDirectionInVertOffset ) { + InitViewDirVert(); + } + + InitObjectScale(); + + if( editor.mainNode.vertexOffset.IsConnectedAndEnabled() ) { + + if( ps.catGeometry.vertexOffsetMode == SFPSC_Geometry.VertexOffsetMode.Relative ) + App( "v.vertex.xyz += " + ps.n_vertexOffset + ";" ); + else + App( "v.vertex.xyz = " + ps.n_vertexOffset + ";" ); + } + + if( dependencies.vert_out_worldPos ) + App( "o.posWorld = mul(unity_ObjectToWorld, v.vertex);" ); + + + + + InitTangentTransformFrag(); + + if( !editor.nodeView.treeStatus.viewDirectionInVertOffset ) { + InitViewDirVert(); + } + + InitReflectionDir(); + if( dependencies.frag_lightDirection ) { + InitLightDir(); + } + if(dependencies.frag_lightColor) + InitLightColor(); + InitHalfVector(); + + string positioningPrefix; + if( ps.catExperimental.forceSkipModelProjection ){ + positioningPrefix = "mul(UNITY_MATRIX_VP, "; // Local space. Broken for shadows due to TRANSFER_SHADOW_CASTER assuming model projections + } else { + positioningPrefix = "UnityObjectToClipPos( "; // World space + } + + string positioningSuffix = " );"; + if( ps.catGeometry.vertexPositioning == SFPSC_Geometry.VertexPositioning.ClipSpace ) { + positioningPrefix = ""; + positioningSuffix = ";"; + } + if( ps.catGeometry.vertexPositioning == SFPSC_Geometry.VertexPositioning.Billboard ) { + + + App("float4x4 bbmv = UNITY_MATRIX_MV;"); + App( "bbmv._m00 = -1.0/length(unity_WorldToObject[0].xyz);" ); + App( "bbmv._m10 = 0.0f;" ); + App( "bbmv._m20 = 0.0f;" ); + App( "bbmv._m01 = 0.0f;" ); + App( "bbmv._m11 = -1.0/length(unity_WorldToObject[1].xyz);" ); + App( "bbmv._m21 = 0.0f;" ); + App( "bbmv._m02 = 0.0f;" ); + App( "bbmv._m12 = 0.0f;" ); + App( "bbmv._m22 = -1.0/length(unity_WorldToObject[2].xyz);" ); + + + positioningPrefix = "mul( UNITY_MATRIX_P, mul( bbmv, "; + positioningSuffix = " ));"; + } + + + if( currentPass == PassType.Outline ) { + string dir = ""; + if( ps.catGeometry.outlineMode == SFPSC_Geometry.OutlineMode.VertexNormals ) { + dir = "v.normal"; + } else if( ps.catGeometry.outlineMode == SFPSC_Geometry.OutlineMode.VertexColors ) { + dir = "v.vertexColor"; + } else if( ps.catGeometry.outlineMode == SFPSC_Geometry.OutlineMode.FromOrigin ) { + dir = "normalize(v.vertex)"; + } + App( "o.pos = "+ positioningPrefix +"float4(v.vertex.xyz + "+dir+"*" + ps.n_outlineWidth + ",1)" + positioningSuffix ); + + } else if(currentPass == PassType.Meta ){ + App( "o.pos = UnityMetaVertexPosition(v.vertex, v.texcoord1.xy, v.texcoord2.xy, unity_LightmapST, unity_DynamicLightmapST );" ); + } else { + App( "o.pos = " + positioningPrefix + "v.vertex" + positioningSuffix ); + } + + if( ps.catGeometry.showPixelSnap ) { + App( "#ifdef PIXELSNAP_ON" ); + scope++; + App( "o.pos = UnityPixelSnap(o.pos);" ); + scope--; + App( "#endif" ); + } + + + // New in Unity 5 + if( UseUnity5FogInThisPass() ) { + App( "UNITY_TRANSFER_FOG(o,o.pos);" ); + } + + + if( dependencies.frag_projPos ) { + App( "o.projPos = ComputeScreenPos (o.pos);" ); + App( "COMPUTE_EYEDEPTH(o.projPos.z);" ); + } + + + if( dependencies.vert_out_screenPos ) { // TODO: Select screen pos accuracy etc + + if( ps.catGeometry.highQualityScreenCoords ) { + App( "o.screenPos = o.pos;" ); // Unpacked per-pixel + } else { + App( "o.screenPos = float4( o.pos.xy / o.pos.w, 0, 0 );" ); + App( "o.screenPos.y *= _ProjectionParams.x;" ); + } + } + + + + if( LightmapThisPass() ){ + + // TODO, I think + + } + + /* MOVE THIS: + App( "float4 unity_LightmapST;"); + App( "#ifdef DYNAMICLIGHTMAP_ON"); + scope++; + App( "float4 unity_DynamicLightmapST;"); + scope--; + App( "#endif"); +*/ + + + + + if( currentPass == PassType.ShadCast ) { + App( "TRANSFER_SHADOW_CASTER(o)" ); + } else { + if( ps.catLighting.IsVertexLit() ) + Lighting(); + else if( ShouldUseLightMacros() ) + App( "TRANSFER_VERTEX_TO_FRAGMENT(o)" ); + } + + App( "return o;" ); + + ResetDefinedState(); + End(); + } + + + void Fragment() { + currentProgram = ShaderProgram.Frag; + + if( currentPass == PassType.Meta ) { + string vface = ""; + if( dependencies.frag_facing ) { + vface = ", float facing : VFACE"; + } + App( "float4 frag(VertexOutput i" + vface + ") : SV_Target {" ); + } else if(currentPass == PassType.Deferred) { + App( "void frag(" ); + scope++; + App( "VertexOutput i," ); + App( "out half4 outDiffuse : SV_Target0," ); + App( "out half4 outSpecSmoothness : SV_Target1," ); + App( "out half4 outNormal : SV_Target2," ); + if( dependencies.frag_facing ) { + App( "out half4 outEmission : SV_Target3," ); + App( "float facing : VFACE )" ); + } else { + App( "out half4 outEmission : SV_Target3 )" ); + } + scope--; + App( "{" ); + } else { + string vface = ""; + if( dependencies.frag_facing ) { + vface = ", float facing : VFACE"; + } + App( "float4 frag(VertexOutput i" + vface + ") : COLOR {" ); + } + + scope++; + + if( dependencies.frag_facing ) { + App( "float isFrontFace = ( facing >= 0 ? 1 : 0 );" ); + App( "float faceSign = ( facing >= 0 ? 1 : -1 );" ); + } + + InitObjectPos(); + InitObjectScale(); + + if( ps.catGeometry.normalQuality == SFPSC_Geometry.NormalQuality.Normalized && dependencies.frag_normalDirection ) { + App( "i.normalDir = normalize(i.normalDir);" ); + if( dependencies.frag_facing ) { + App( "i.normalDir *= faceSign;" ); + } + } + + if( dependencies.vert_out_screenPos && ps.catGeometry.highQualityScreenCoords ) { + App( "i.screenPos = float4( i.screenPos.xy / i.screenPos.w, 0, 0 );" ); + App( "i.screenPos.y *= _ProjectionParams.x;" ); + } + + InitTangentTransformFrag(); + InitViewDirFrag(); + InitNormalDirFrag(); + InitReflectionDir(); + + InitSceneColorAndDepth(); + + CheckClip(); + + PrepareLightmapVars(); + + + if( dependencies.frag_lightDirection ) + InitLightDir(); + if(dependencies.frag_lightColor) + InitLightColor(); + InitHalfVector(); + + + + + + Lighting(); // This is ignored in shadow passes + + + if( currentPass == PassType.Meta ) { + LightmapMetaPassFrag(); + } else if( currentPass == PassType.Deferred ) { + DeferredFragReturn(); + } else if( currentPass == PassType.ShadCast ) { + App( "SHADOW_CASTER_FRAGMENT(i)" ); + } else if( currentPass == PassType.Outline ) { + App( "return fixed4(" + ps.n_outlineColor + ",0);" ); + } else { + + //if(ps.mOut.diffuse.IsConnectedEnabledAndAvailable()){ + // AppFinalOutput("lightFinal + " + "diffuse", ps.n_alpha); // This is really weird, it should already be included in the light calcs. Do more research // TODO + //}else + if( currentPass == PassType.FwdAdd ) { + if(ps.catLighting.transparencyMode == SFPSC_Lighting.TransparencyMode.Fade) + AppFinalOutput( "finalColor * " + ps.n_alpha, "0" ); + else + AppFinalOutput( "finalColor", "0" ); + } else { + + if( ps.catBlending.alphaToCoverage && currentPass == PassType.FwdBase && ps.HasAlpha() == false && ps.HasAlphaClip() ) { + AppFinalOutput( "finalColor", "(" + ps.n_alphaClip + ") * 2.0 - 1.0" ); + } else { + AppFinalOutput( "finalColor", ps.n_alpha ); + } + } + + + } + + End(); + } + + void DeferredFragReturn() { + + + // DIFFUSE + if( ps.HasDiffuse() ) { + if( ps.mOut.diffuseOcclusion.IsConnectedEnabledAndAvailable() ) { + App( "outDiffuse = half4( diffuseColor, " + ps.n_diffuseOcclusion + " );" ); + } else { + App( "outDiffuse = half4( diffuseColor, 1 );" ); + } + } else { + App( "outDiffuse = half4( 0, 0, 0, 1 );" ); + } + + // SPEC & GLOSS + if( ps.HasSpecular() ) { + if( ps.HasGloss() ) { + App( "outSpecSmoothness = half4( specularColor, gloss );" ); + } else { + App( "outSpecSmoothness = half4( specularColor, 0.5 );" ); + } + } else { + App( "outSpecSmoothness = half4(0,0,0,0);" ); + } + + // NORMALS + App( "outNormal = half4( normalDirection * 0.5 + 0.5, 1 );" ); + + // EMISSION + if( ps.HasEmissive() ) { + App( "outEmission = half4( "+ps.n_emissive+", 1 );" ); + } else { + App( "outEmission = half4(0,0,0,1);" ); + } + + + bool specAmb = LightmappedAndLit() && ps.HasSpecular() || ps.mOut.ambientSpecular.IsConnectedEnabledAndAvailable(); + bool diffAmb = LightmappedAndLit() && ps.HasDiffuse() || ps.mOut.ambientDiffuse.IsConnectedEnabledAndAvailable(); + + if( specAmb ) { + if( ps.mOut.ambientSpecular.IsConnectedEnabledAndAvailable() ) { + App( "outEmission.rgb += indirectSpecular;" ); + } else { + App( "outEmission.rgb += indirectSpecular * "+ps.n_specularOcclusion+";" ); + } + } + if( diffAmb ) { + App( "outEmission.rgb += indirectDiffuse * diffuseColor;" ); // No need for diffuse AO, since that's covered already + } + + + App( "#ifndef UNITY_HDR_ON" ); + scope++; + App( "outEmission.rgb = exp2(-outEmission.rgb);" ); + scope--; + App( "#endif" ); + + + + } + + + + void LightmapMetaPassFrag() { + + + bool hasDiffuse = ps.mOut.diffuse.IsConnectedEnabledAndAvailable(); + bool hasSpec = ps.mOut.specular.IsConnectedEnabledAndAvailable(); + bool hasGloss = ps.mOut.gloss.IsConnectedEnabledAndAvailable(); + + + App( "UnityMetaInput o;" ); + App( "UNITY_INITIALIZE_OUTPUT( UnityMetaInput, o );" ); + App( "" ); + if( ps.mOut.emissive.IsConnectedEnabledAndAvailable() ) { + App( "o.Emission = " + ps.n_emissive + ";" ); + } else { + App( "o.Emission = 0;" ); + } + App( "" ); + + + if(hasDiffuse) + App( "float3 diffColor = " + ps.n_diffuse + ";" ); + else + App( "float3 diffColor = float3(0,0,0);" ); + + // Handle metallic properly + if( MetallicPBL() ) { + App( "float specularMonochrome;" ); + App( "float3 specColor;" ); + if( hasSpec ) + App( "diffColor = DiffuseAndSpecularFromMetallic( diffColor, " + ps.n_specular + ", specColor, specularMonochrome );" ); + else + App( "diffColor = DiffuseAndSpecularFromMetallic( diffColor, 0, specColor, specularMonochrome );" ); + } else { + if( hasSpec ) { + App( "float3 specColor = " + ps.n_specular + ";" ); + if( Unity5PBL() ) { + App( "float specularMonochrome = max(max(specColor.r, specColor.g),specColor.b);" ); + App( "diffColor *= (1.0-specularMonochrome);" ); + } + } + } + + if( hasGloss ) { + + if( hasSpec ) { + if( ps.catLighting.glossRoughMode == SFPSC_Lighting.GlossRoughMode.Roughness ) { + App( "float roughness = " + ps.n_gloss + ";" ); + } else { + App( "float roughness = 1.0 - " + ps.n_gloss + ";" ); + } + } + + if( hasSpec ) + App( "o.Albedo = diffColor + specColor * roughness * roughness * 0.5;" ); + else + App( "o.Albedo = diffColor;" ); + + } else { + if( hasSpec ) + App( "o.Albedo = diffColor + specColor * 0.125; // No gloss connected. Assume it's 0.5" ); + else + App( "o.Albedo = diffColor;" ); + } + + + + + App( "" ); + //App( "o.Albedo = float3(0,1,0);" ); // Debug + //App( "o.Emission = float3(0,1,0);"); + //App( "" ); + App( "return UnityMetaFragment( o );" ); + + } + + + string GetMaxUvCompCountString() { + return ( dependencies.uv0_float4 || dependencies.uv1_float4 || dependencies.uv2_float4 || dependencies.uv3_float4 ) ? "float4" : "float2"; + } + + + + void TessellationVertexStruct() { + App( "struct TessVertex {" ); + scope++; + App( "float4 vertex : INTERNALTESSPOS;" ); + CommonVertexData(); + scope--; + App( "};" ); + } + + void TessellationPatchConstant() { + App( "struct OutputPatchConstant {" ); + scope++; + App( "float edge[3] : SV_TessFactor;" ); + App( "float inside : SV_InsideTessFactor;" ); + App( "float3 vTangent[4] : TANGENT;" ); + App( GetMaxUvCompCountString() + " vUV[4] : TEXCOORD;" ); + App( "float3 vTanUCorner[4] : TANUCORNER;" ); + App( "float3 vTanVCorner[4] : TANVCORNER;" ); + App( "float4 vCWts : TANWEIGHTS;" ); + scope--; + App( "};" ); + } + + void TessellationVertexTransfer() { + App( "TessVertex tessvert (VertexInput v) {" ); + scope++; + App( "TessVertex o;" ); + TransferCommonData(); + App( "return o;" ); + scope--; + App( "}" ); + } + + void TessellationHullConstant() { + App( "OutputPatchConstant hullconst (InputPatch v) {" ); + scope++; + App( "OutputPatchConstant o = (OutputPatchConstant)0;" ); + App( "float4 ts = Tessellation( v[0], v[1], v[2] );" ); + App( "o.edge[0] = ts.x;" ); + App( "o.edge[1] = ts.y;" ); + App( "o.edge[2] = ts.z;" ); + App( "o.inside = ts.w;" ); + App( "return o;" ); + scope--; + App( "}" ); + } + + void TessellationHull() { + App( "[domain(\"tri\")]" ); + App( "[partitioning(\"fractional_odd\")]" ); + App( "[outputtopology(\"triangle_cw\")]" ); + App( "[patchconstantfunc(\"hullconst\")]" ); + App( "[outputcontrolpoints(3)]" ); + App( "TessVertex hull (InputPatch v, uint id : SV_OutputControlPointID) {" ); + scope++; + App( "return v[id];" ); + scope--; + App( "}" ); + } + + + void TessellationDomain() { + + App( "[domain(\"tri\")]" ); + App( "VertexOutput domain (OutputPatchConstant tessFactors, const OutputPatch vi, float3 bary : SV_DomainLocation) {" ); + scope++; + App( "VertexInput v = (VertexInput)0;" ); + + TransferBarycentric( "vertex" ); + if( dependencies.vert_in_normals ) + TransferBarycentric( "normal" ); + if( dependencies.vert_in_tangents ) + TransferBarycentric( "tangent" ); + if( dependencies.uv0 ) + TransferBarycentric( "texcoord0" ); + if( dependencies.uv1 ) + TransferBarycentric( "texcoord1" ); + if( dependencies.vert_in_vertexColor ) + TransferBarycentric( "vertexColor" ); + if( dependencies.displacement ) + App( "displacement(v);" ); + App( "VertexOutput o = vert(v);" ); + App( "return o;" ); + scope--; + App( "}" ); + + } + + void TransferBarycentric( string s ) { + App( "v." + s + " = vi[0]." + s + "*bary.x + vi[1]." + s + "*bary.y + vi[2]." + s + "*bary.z;" ); + } + + + void FuncTessellation() { + + switch( ps.catGeometry.tessellationMode ) { + case SFPSC_Geometry.TessellationMode.Regular: + + App("float Tessellation(TessVertex v){");// First, we need a per-vertex evaluation of the tess factor + scope++; + App( "return " + ps.n_tessellation + ";"); + scope--; + App("}"); + + App( "float4 Tessellation(TessVertex v, TessVertex v1, TessVertex v2){" ); + scope++; + App( "float tv = Tessellation(v);" ); + App( "float tv1 = Tessellation(v1);" ); + App( "float tv2 = Tessellation(v2);" ); + App( "return float4( tv1+tv2, tv2+tv, tv+tv1, tv+tv1+tv2 ) / float4(2,2,2,3);" ); + scope--; + App( "}" ); + break; + + case SFPSC_Geometry.TessellationMode.EdgeLength: + App( "float4 Tessellation(TessVertex v, TessVertex v1, TessVertex v2){" ); + scope++; + App( "return UnityEdgeLengthBasedTess(v.vertex, v1.vertex, v2.vertex, " + ps.n_tessellation + ");" ); + scope--; + App( "}" ); + break; + } + + } + + void FuncDisplacement() { + if( !dependencies.displacement ) + return; + App( "void displacement (inout VertexInput v){" ); + scope++; + App( "v.vertex.xyz += " + ps.n_displacement + ";" ); + scope--; + App( "}" ); + } + + + + + + + void Tessellation() { + if( !dependencies.tessellation ) + return; + currentProgram = ShaderProgram.Tess; // Not really, but almost + + App( "#ifdef UNITY_CAN_COMPILE_TESSELLATION" ); + scope++; + //------------------------------------------------------------ + TessellationVertexStruct(); + TessellationPatchConstant(); + TessellationVertexTransfer(); + ResetDefinedState(); // A bit of a hack + FuncDisplacement(); + ResetDefinedState(); // A bit of a hack + FuncTessellation(); + TessellationHullConstant(); + TessellationHull(); + TessellationDomain(); + //------------------------------------------------------------ + scope--; + App( "#endif" ); + + ResetDefinedState(); + } + + + + + + + + + // Todo: threshold + void CheckClip() { + if( !ps.UseClipping() || currentPass == PassType.Meta ) + return; + if( ps.catBlending.dithering == Dithering.Off ) { + App( "clip(" + ps.n_alphaClip + " - 0.5);" ); + } else { + string ditherStr = SFPSC_Blending.strDithering[(int)ps.catBlending.dithering].ToString().Split( ' ' )[0]; + App( "clip( BinaryDither" + ditherStr + "(" + ps.n_alphaClip + " - 1.5, sceneUVs) );" ); + } + + } + + + + void Fallback() { + if( ps.catExperimental.forceNoFallback ) + return; + if( !string.IsNullOrEmpty( ps.catMeta.fallback ) ) + App( "FallBack \"" + ps.catMeta.fallback + "\"" ); + else + App( "FallBack \"Diffuse\"" ); // Needed for shadows! + } + + void WriteCustomEditor() { + App( "CustomEditor \"ShaderForgeMaterialInspector\"" ); + } + + + public void GrabPass() { + if( !dependencies.grabPass ) + return; + if(ps.catBlending.perObjectRefraction) + App( "GrabPass{ }" ); + else + App( "GrabPass{ \"" + ps.catBlending.GetGrabTextureName() + "\" }" ); + + } + + //////////////////////////////////////////////////////////////// DEFERRED + + void DeferredPass() { + currentPass = PassType.Deferred; + UpdateDependencies(); + ResetDefinedState(); + dependencies.ResetTexcoordNumbers(); + App( "Pass {" ); + scope++; + { + App( "Name \"DEFERRED\"" ); // TODO this name is a guess + PassTags(); + RenderSetup(); + BeginCG(); + { + CGvars(); + VertexInputStruct(); + VertexOutputStruct(); + Vertex(); + Tessellation(); + Fragment(); + } + EndCG(); + } + End(); + RemoveGhostNodes(); + } + + + //////////////////////////////////////////////////////////////// + + + + + void ForwardBasePass() { + currentPass = PassType.FwdBase; + UpdateDependencies(); + ResetDefinedState(); + dependencies.ResetTexcoordNumbers(); + App( "Pass {" ); + scope++; + { + App( "Name \"FORWARD\"" ); + PassTags(); + RenderSetup(); + BeginCG(); + { + CGvars(); + VertexInputStruct(); + VertexOutputStruct(); + Vertex(); + Tessellation(); + Fragment(); + } + EndCG(); + } + End(); + RemoveGhostNodes(); + } + + public void ForwardLightPass() { + + // TODO: FIX + // Only when real-time light things are connected. These are: + // Diffuse + // Specular + // Although could be any D: + + bool customLit = dependencies.UsesLightNodes(); + bool builtinLit = ps.catLighting.IsLit() && ( ps.HasDiffuse() || ps.catLighting.HasSpecular() ); + + bool needsLightPass = ( builtinLit || customLit ) && ps.catLighting.UseMultipleLights(); + + if( !needsLightPass ) + return; + + + + currentPass = PassType.FwdAdd; + UpdateDependencies(); + ResetDefinedState(); + dependencies.ResetTexcoordNumbers(); + App( "Pass {" ); + scope++; + { + App( "Name \"FORWARD_DELTA\"" ); + PassTags(); + RenderSetup(); + BeginCG(); + { + CGvars(); + VertexInputStruct(); + VertexOutputStruct(); + Vertex(); + Tessellation(); + Fragment(); + } + EndCG(); + } + End(); + RemoveGhostNodes(); + } + + + + // Only needed when using alpha clip and/or vertex offset (May be needed with Tessellation as well) + public void ShadowCasterPass() { + bool shouldUse = ps.UseClipping() || mOut.vertexOffset.IsConnectedAndEnabled() || mOut.displacement.IsConnectedAndEnabled() || ps.catGeometry.cullMode != SFPSC_Geometry.CullMode.BackfaceCulling; + if( !shouldUse || ps.catExperimental.forceNoShadowPass ) + return; + currentPass = PassType.ShadCast; + UpdateDependencies(); + ResetDefinedState(); + dependencies.ResetTexcoordNumbers(); + + App( "Pass {" ); + scope++; + { + App( "Name \"ShadowCaster\"" ); + PassTags(); + RenderSetup(); + BeginCG(); + { + CGvars(); + VertexInputStruct(); + VertexOutputStruct(); + Vertex(); + Tessellation(); + Fragment(); + } + EndCG(); + } + End(); + RemoveGhostNodes(); + } + + + public void OutlinePass() { + if( !mOut.outlineWidth.IsConnectedAndEnabled() ) + return; + currentPass = PassType.Outline; + UpdateDependencies(); + ResetDefinedState(); + dependencies.ResetTexcoordNumbers(); + App( "Pass {" ); + scope++; + { + App( "Name \"Outline\"" ); + PassTags(); + RenderSetup(); + BeginCG(); + { + CGvars(); + VertexInputStruct(); + VertexOutputStruct(); + Vertex(); + Tessellation(); + Fragment(); + } + EndCG(); + } + End(); + RemoveGhostNodes(); + } + + public void MetaPass() { + if( ps.catLighting.includeMetaPass == false ) + return; + if( !ps.catLighting.bakedLight || ( !mOut.diffuse.IsConnectedEnabledAndAvailable() && !mOut.emissive.IsConnectedAndEnabled() ) ) + return; + currentPass = PassType.Meta; + UpdateDependencies(); + ResetDefinedState(); + dependencies.ResetTexcoordNumbers(); + App( "Pass {" ); + scope++; + { + App( "Name \"Meta\"" ); + PassTags(); + RenderSetup(); + BeginCG(); + { + CGvars(); + VertexInputStruct(); + VertexOutputStruct(); + Vertex(); + Tessellation(); + Fragment(); + } + EndCG(); + } + End(); + RemoveGhostNodes(); + } + + + + + + public void ResetDefinedState() { + for( int i = 0; i < cNodes.Count; i++ ) { + cNodes[i].varDefined = false; + cNodes[i].varPreDefined = false; + } + } + + + + public void Evaluate() { + + if( SF_Debug.evalFlow ) + Debug.Log( "SHADER EVALUATING" ); + + editor.ps.fChecker.UpdateAvailability(); + if( !editor.nodeView.treeStatus.CheckCanCompile() ) { + return; + } + ps.UpdateAutoSettings(); + currentPass = PassType.FwdBase; + PrepareEvaluation(); + UpdateDependencies(); + shaderString = ""; + scope = 0; + + //EditorUtility.UnloadUnusedAssets(); + GC.Collect(); + + + BeginShader(); + { + PropertiesShaderLab(); + BeginSubShader(); + { + SubShaderTags(); + if( ps.catMeta.LOD > 0 ) + App( "LOD " + ps.catMeta.LOD ); + + GrabPass(); + OutlinePass(); + if( ps.catLighting.renderPath == SFPSC_Lighting.RenderPath.Deferred ) { + DeferredPass(); + } + ForwardBasePass(); + ForwardLightPass(); + ShadowCasterPass(); + MetaPass(); + + } + End(); + Fallback(); + WriteCustomEditor(); + } + End(); + + SaveShaderAsset(); + ApplyPropertiesToMaterial(); + editor.ShaderOutdated = UpToDateState.UpToDate; + + } + + + //string GetEditorVersionOfShader() { + //return shaderString.Replace( "_Time", "_EditorTime" ); + // shaderString.Replace( "_SinTime", "_SinTimeEditor" ); + // shaderString.Replace( "_CosTime", "_CosTimeEditor" ); + // shaderString.Replace( "_SinTime", "_SinTimeEditor" ); + //return shaderString; + //} + + + + + public void SaveShaderAsset() { + + //Debug.Log("SaveShaderAsset()"); + string fileContent = editor.nodeView.GetNodeDataSerialized() + "\n\n" + shaderString; + + + // Version control unlocking + Asset shaderAsset = UnityEditor.VersionControl.Provider.GetAssetByPath( editor.GetShaderFilePath() ); + if( shaderAsset.locked || shaderAsset.readOnly ) { + UnityEditor.VersionControl.Provider.Lock( shaderAsset, false ); + UnityEditor.VersionControl.Provider.Checkout( shaderAsset, CheckoutMode.Both ); + } + + string path = editor.GetShaderFilePath(); + StreamWriter sw = new StreamWriter( path ); + sw.Write( fileContent ); + sw.Flush(); + sw.Close(); + + // Shader written, set default textures in import settings + List texNames = new List(); + List textures = new List(); + + // Collect all texture names and references + for( int i = 0; i < editor.nodes.Count; i++ ) { + if( editor.nodes[i] is SFN_Tex2d ) { + SFN_Tex2d t2d = editor.nodes[i] as SFN_Tex2d; + if( !t2d.TexAssetConnected() && t2d.textureAsset != null) { + texNames.Add( t2d.property.nameInternal ); + textures.Add( t2d.textureAsset ); + } + } else if( editor.nodes[i] is SFN_Tex2dAsset ) { + SFN_Tex2dAsset t2dAsset = editor.nodes[i] as SFN_Tex2dAsset; + if( t2dAsset.textureAsset != null ) { + texNames.Add( t2dAsset.property.nameInternal ); + textures.Add( t2dAsset.textureAsset ); + } + } + } + + // Apply default textures to the shader importer + ShaderImporter sImporter = ShaderImporter.GetAtPath( path ) as ShaderImporter; + sImporter.SetDefaultTextures( texNames.ToArray(), textures.ToArray() ); + + + try { + AssetDatabase.Refresh( ImportAssetOptions.DontDownloadFromCacheServer ); + } catch( Exception e ) { + e.ToString(); + } + + editor.OnShaderEvaluated(); + + } + + + + + + public void ApplyPropertiesToMaterial() { + for( int i = 0; i < cNodes.Count; i++ ) { + if( !cNodes[i].IsProperty() ) + continue; + ApplyProperty( cNodes[i] ); + } + } + + public void ApplyProperty( SF_Node node ) { + + if( !node.IsProperty() ) + return; + + Material m = SF_Editor.instance.preview.InternalMaterial; + switch( node.GetType().ToString() ) { + case ( "ShaderForge.SFN_Tex2d" ): + SFN_Tex2d texNode = (SFN_Tex2d)node; + m.SetTexture( texNode.property.GetVariable(), texNode.TextureAsset ); + break; + case ( "ShaderForge.SFN_Tex2dAsset" ): + SFN_Tex2dAsset texAssetNode = (SFN_Tex2dAsset)node; + m.SetTexture( texAssetNode.property.GetVariable(), texAssetNode.textureAsset ); + break; + case ( "ShaderForge.SFN_Cubemap" ): + SFN_Cubemap cubeNode = (SFN_Cubemap)node; + m.SetTexture( cubeNode.property.GetVariable(), cubeNode.cubemapAsset ); + break; + case ( "ShaderForge.SFN_Slider" ): + SFN_Slider sliderNode = (SFN_Slider)node; + m.SetFloat( sliderNode.property.GetVariable(), sliderNode.current ); + break; + case ( "ShaderForge.SFN_Color" ): + SFN_Color colorNode = (SFN_Color)node; + m.SetColor( colorNode.property.GetVariable(), colorNode.GetColor() ); + break; + case ( "ShaderForge.SFN_ValueProperty" ): + SFN_ValueProperty valueNode = (SFN_ValueProperty)node; + m.SetFloat( valueNode.property.GetVariable(), valueNode.texture.dataUniform[0] ); + break; + case ( "ShaderForge.SFN_ToggleProperty" ): + SFN_ToggleProperty toggleNode = (SFN_ToggleProperty)node; + m.SetFloat( toggleNode.property.GetVariable(), toggleNode.texture.dataUniform[0] ); + break; + case ( "ShaderForge.SFN_SwitchProperty" ): + SFN_SwitchProperty switchNode = (SFN_SwitchProperty)node; + m.SetFloat( switchNode.property.GetVariable(), switchNode.on ? 1f : 0f ); + break; + case ( "ShaderForge.SFN_Vector4Property" ): + SFN_Vector4Property vector4Node = (SFN_Vector4Property)node; + m.SetVector( vector4Node.property.GetVariable(), vector4Node.texture.dataUniform ); + break; + case ( "ShaderForge.SFN_StaticBranch" ): + SFN_StaticBranch sbNode = (SFN_StaticBranch)node; + + if( sbNode.on ) { + //Debug.Log("Enabling keyword"); + //m.EnableKeyword(sbNode.property.nameInternal); + } else { + //Debug.Log("Disabling keyword"); + //m.DisableKeyword(sbNode.property.nameInternal); + } + + break; + } + } + + + + + void End() { + scope--; + App( "}" ); + } + public void AppIfNonEmpty( string s ) { + if( !string.IsNullOrEmpty( s ) ) + App( s ); + } + public void AppFormat( string s, params object[] args ) { + App( string.Format( s, args ) ); + } + public void App( string s ) { + if( s.Contains( "\n" ) ) { + string[] split = s.Split( '\n' ); + for( int i = 0; i < split.Length; i++ ) { + App( split[i] ); + } + } else { + shaderString += GetScopeTabs() + s + "\n"; + } + } + public void AppDebug( string s ) { + //if(DEBUG) + + string scopeSlashes = GetScopeTabs().Replace( ' ', '/' ); + + if( scopeSlashes.Length < 2 ) + scopeSlashes = "//"; + + + shaderString += scopeSlashes.Substring( Mathf.Min( s.Length + 2, scopeSlashes.Length - 2 ) ) + " " + s + ":\n"; + } + string GetScopeTabs() { + string s = ""; + for( int i = 0; i < scope; i++ ) { + s += " "; + } + return s; + } + void NewLine() { + shaderString += "\n"; + } + + // shaderEvaluator.previewBackgroundColor + + + } +} diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Evaluator/SF_Evaluator.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/_Evaluator/SF_Evaluator.cs.meta new file mode 100644 index 00000000..17f82502 --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/_Evaluator/SF_Evaluator.cs.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 8d4397298714b429da31207ae8e1b476 +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Evaluator/_NewSystem.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/_Evaluator/_NewSystem.meta new file mode 100644 index 00000000..ff3fdb17 --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/_Evaluator/_NewSystem.meta @@ -0,0 +1,5 @@ +fileFormatVersion: 2 +guid: 2eb134ad201984c70b54a6af60bf785a +folderAsset: yes +DefaultImporter: + userData: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Evaluator/_NewSystem/DependencyTree.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/_Evaluator/_NewSystem/DependencyTree.cs new file mode 100644 index 00000000..570eb04d --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/_Evaluator/_NewSystem/DependencyTree.cs @@ -0,0 +1,102 @@ +using UnityEngine; +using System.Collections; +using System.Collections.Generic; +using System.Linq; + +namespace ShaderForge{ + + + public class DependencyTree where T : IDependable{ + + public List> tree; + + public DependencyTree(){ + tree = new List>(); + } + + + + public void Add(params IDependable[] deps){ + + } + + public void Add(IDependable dep){ + AddUnique(dep); + foreach(IDependable d in dep.Dependencies){ + AddUnique(d); + } + } + + private void AddUnique(IDependable dep){ + if(!tree.Contains(dep)){ + tree.Add(dep); + } + } + + /* + public void Add(T obj){ + tree.Add(obj); + } + + public void Add(List> objs){ + tree.AddRange(objs); + } + */ + public void Sort(){ + AssignDepthValues(); + SortByDepth(); + } + + private void MoveUpNode(IDependable dp, bool initial){ + if(!initial) + dp.Depth++; + foreach(IDependable d in dp.Dependencies){ + if(d.Depth <= dp.Depth){ + MoveUpNode(d, initial:false); + } + } + } + + private void AssignDepthValues(){ + ResetNodeDepths(); + foreach(IDependable dp in tree) + MoveUpNode(dp, initial:true); + } + + private void SortByDepth(){ + tree.OrderBy(o=>o.Depth).ToList(); + } + + private void ResetNodeDepths(){ + foreach(IDependable dp in tree) + dp.Depth = 0; + } + + + public List> GetDependenciesByGroup(out int maxWidth){ + List> groups = new List>(); + maxWidth = 0; + + int groupCount = tree.GroupBy(p => p.Depth).Select(g => g.First()).Count(); + + for(int i=0;i(T)x).Where(x=>x.Depth == i).ToList()); + maxWidth = Mathf.Max(maxWidth, groups[i].Count); + } + + return groups; + } + + + + + } + + + public interface IDependable{ + int Depth { get; set; } + List Dependencies { get; set;} + void AddDependency(T dp); + } + +} \ No newline at end of file diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Evaluator/_NewSystem/DependencyTree.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/_Evaluator/_NewSystem/DependencyTree.cs.meta new file mode 100644 index 00000000..5db04ab8 --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/_Evaluator/_NewSystem/DependencyTree.cs.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 80f683523dd7f4167b990c2b34498ae8 +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes.meta new file mode 100644 index 00000000..18bbeb17 --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes.meta @@ -0,0 +1,5 @@ +fileFormatVersion: 2 +guid: 08f7249e4b23143d4983841458970d80 +folderAsset: yes +DefaultImporter: + userData: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Abs.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Abs.cs new file mode 100644 index 00000000..31219ff7 --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Abs.cs @@ -0,0 +1,26 @@ +using UnityEngine; + +namespace ShaderForge { + + [System.Serializable] + public class SFN_Abs : SF_Node_Arithmetic { + + public SFN_Abs() { + } + + public override void Initialize() { + base.Initialize( "Abs" ); + base.PrepareArithmetic( 1 ); + base.shaderGenMode = ShaderGenerationMode.SimpleFunction; + } + + public override string Evaluate( OutChannel channel = OutChannel.All ) { + return "abs(" + GetConnectorByStringID( "IN" ).TryEvaluate() + ")"; + } + + public override float EvalCPU( int c ) { + return Mathf.Abs( GetInputData( "IN", c ) ); + } + + } +} \ No newline at end of file diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Abs.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Abs.cs.meta new file mode 100644 index 00000000..889e05bb --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Abs.cs.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 3980422c66600a74794dc56059bbec9c +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Add.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Add.cs new file mode 100644 index 00000000..a31b57e3 --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Add.cs @@ -0,0 +1,72 @@ +using UnityEngine; + +namespace ShaderForge { + + [System.Serializable] + public class SFN_Add : SF_Node_Arithmetic { + + public SFN_Add() { + + } + + public override void Initialize() { + base.Initialize( "Add" ); + //base.PrepareArithmetic(5); + base.showColor = true; + base.shaderGenMode = ShaderGenerationMode.ModularInput; + UseLowerReadonlyValues( true ); + + connectors = new SF_NodeConnector[]{ + SF_NodeConnector.Create(this,"OUT","",ConType.cOutput,ValueType.VTvPending,false), + SF_NodeConnector.Create(this,"A","A",ConType.cInput,ValueType.VTvPending,false).SetRequired(true), + SF_NodeConnector.Create(this,"B","B",ConType.cInput,ValueType.VTvPending,false).SetRequired(true), + SF_NodeConnector.Create(this,"C","C",ConType.cInput,ValueType.VTvPending,false).SetRequired(false), + SF_NodeConnector.Create(this,"D","D",ConType.cInput,ValueType.VTvPending,false).SetRequired(false), + SF_NodeConnector.Create(this,"E","E",ConType.cInput,ValueType.VTvPending,false).SetRequired(false) + }; + + + SetExtensionConnectorChain("B", "C", "D", "E"); + + base.conGroup = ScriptableObject.CreateInstance().Initialize( connectors[0], connectors[1], connectors[2], connectors[3], connectors[4], connectors[5] ); + + } + + public override void GetModularShaderFixes( out string prefix, out string infix, out string suffix ) { + prefix = ""; + infix = " + "; + suffix = ""; + } + + public override string Evaluate( OutChannel channel = OutChannel.All ) { + + + string evalStr = ""; + + evalStr += GetConnectorByStringID( "A" ).TryEvaluate() + "+" + GetConnectorByStringID( "B" ).TryEvaluate(); + + ChainAppendIfConnected(ref evalStr, "+", "C", "D", "E"); + + return "(" + evalStr + ")"; + } + + + public override float EvalCPU( int c ) { + + float result = GetInputData( "A", c ) + GetInputData( "B", c ); + + if(GetInputIsConnected("C")){ + result += GetInputData( "C", c ); + } + if(GetInputIsConnected("D")){ + result += GetInputData( "D", c ); + } + if(GetInputIsConnected("E")){ + result += GetInputData( "E", c ); + } + + return result; + } + + } +} \ No newline at end of file diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Add.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Add.cs.meta new file mode 100644 index 00000000..bb4560c1 --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Add.cs.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: eee5e454a0aa7ce44b9ccc1adb7349d9 +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_AmbientLight.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_AmbientLight.cs new file mode 100644 index 00000000..22393963 --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_AmbientLight.cs @@ -0,0 +1,63 @@ +using UnityEngine; +using UnityEditor; +using System.Collections; + +namespace ShaderForge { + + [System.Serializable] + public class SFN_AmbientLight : SF_Node { + + + public SFN_AmbientLight() { + + } + + public override void Initialize() { + base.Initialize( "Ambient Light" ); + base.showColor = true; + base.UseLowerPropertyBox( false ); + base.texture.CompCount = 4; + base.texture.uniform = true; + base.neverDefineVariable = true; + connectors = new SF_NodeConnector[]{ + SF_NodeConnector.Create(this, "RGB", "RGB",ConType.cOutput,ValueType.VTv3,false).Outputting(OutChannel.RGB), + SF_NodeConnector.Create(this, "R", "R",ConType.cOutput,ValueType.VTv1,false).Outputting(OutChannel.R).WithColor(Color.red), + SF_NodeConnector.Create(this, "G", "G",ConType.cOutput,ValueType.VTv1,false).Outputting(OutChannel.G).WithColor(Color.green), + SF_NodeConnector.Create(this, "B", "B",ConType.cOutput,ValueType.VTv1,false).Outputting(OutChannel.B).WithColor(Color.blue), + SF_NodeConnector.Create(this, "A", "A",ConType.cOutput,ValueType.VTv1,false).Outputting(OutChannel.A) + }; + } + + public override bool IsUniformOutput() { + return true; + } + + public Color GetIconTint() { + Color c = texture.dataUniform; + c.a = 1.0f; + for( int i = 0; i < 3; i++ ) { + c[i] = 1f - Mathf.Pow( 1f - c[i], 2 ); + c[i] = Mathf.Lerp( 0.5f, 1f, c[i] ); + } + return c; + } + + public override void Update() { + if( ((Color)texture.dataUniform) != RenderSettings.ambientLight ) { + texture.dataUniform = RenderSettings.ambientLight; + texture.iconColor = GetIconTint(); + OnUpdateNode(NodeUpdateType.Soft, true); + } + + } + + public override void OnPreGetPreviewData() { + texture.dataUniform = RenderSettings.ambientLight; + } + + public override string Evaluate( OutChannel channel = OutChannel.All ) { + return "UNITY_LIGHTMODEL_AMBIENT"; + } + + } +} \ No newline at end of file diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_AmbientLight.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_AmbientLight.cs.meta new file mode 100644 index 00000000..569690d4 --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_AmbientLight.cs.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: c293c5aea07b3ff40912d575d5ac542d +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Append.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Append.cs new file mode 100644 index 00000000..e3d804cd --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Append.cs @@ -0,0 +1,190 @@ +using UnityEngine; +using UnityEditor; +using System.Collections; +using System; + +namespace ShaderForge { + + [System.Serializable] + public class SFN_Append : SF_Node { + + public override void Initialize() { + base.Initialize( "Append" ); + base.showColor = true; + UseLowerReadonlyValues( true ); + SFN_Append.channelColors[3] = SF_NodeConnector.colorEnabledDefault; + + connectors = new SF_NodeConnector[]{ + SF_NodeConnector.Create(this,"OUT","",ConType.cOutput,ValueType.VTvPending,false), + SF_NodeConnector.Create(this,"A","",ConType.cInput,ValueType.VTvPending,false).SetRequired(true), + SF_NodeConnector.Create(this,"B","",ConType.cInput,ValueType.VTvPending,false).SetRequired(true), + SF_NodeConnector.Create(this,"C","",ConType.cInput,ValueType.VTvPending,false).SetRequired(false), + SF_NodeConnector.Create(this,"D","",ConType.cInput,ValueType.VTvPending,false).SetRequired(false) + }; + + base.conGroup = ScriptableObject.CreateInstance(); + (base.conGroup as SFNCG_Append).Initialize( connectors[0], connectors[1], connectors[2], connectors[3], connectors[4] ); + + + SetExtensionConnectorChain( "B", "C", "D" ); + } + + public override int GetEvaluatedComponentCount() { + return ( (SFNCG_Append)conGroup ).GetOutputComponentCount(); + } + + public override bool IsUniformOutput() { + + bool a = GetInputIsConnected( "A" ); + bool b = GetInputIsConnected( "B" ); + bool c = GetInputIsConnected( "C" ); + bool d = GetInputIsConnected( "D" ); + + if( a && b && c && d ) + return ( GetInputData( "A" ).uniform && GetInputData( "B" ).uniform && GetInputData( "C" ).uniform && GetInputData( "D" ).uniform ); + else if( a && b && c ) + return ( GetInputData( "A" ).uniform && GetInputData( "B" ).uniform && GetInputData( "C" ).uniform); + + return ( GetInputData( "A" ).uniform && GetInputData( "B" ).uniform ); + } + + + // New system + public override void RefreshValue() { + UpdateInputLabels(); + RefreshValue( 1, 2 ); + } + + public override bool ExhaustedOptionalInputs() { + return GetEvaluatedComponentCount() >= 4; + } + + + + + + public override string Evaluate( OutChannel channel = OutChannel.All ) { + + string varName = "float"; + int compCount = GetEvaluatedComponentCount(); + if( compCount > 1 ) + varName += compCount; + + bool a = GetInputIsConnected( "A" ); + bool b = GetInputIsConnected( "B" ); + bool c = GetInputIsConnected( "C" ); + bool d = GetInputIsConnected( "D" ); + + string line = varName + "("; + + if( a && b && c && d ) + line += GetConnectorByStringID( "A" ).TryEvaluate() + "," + GetConnectorByStringID( "B" ).TryEvaluate() + "," + GetConnectorByStringID( "C" ).TryEvaluate() + "," + GetConnectorByStringID( "D" ).TryEvaluate(); + else if( a && b && c ) + line += GetConnectorByStringID( "A" ).TryEvaluate() + "," + GetConnectorByStringID( "B" ).TryEvaluate() + "," + GetConnectorByStringID( "C" ).TryEvaluate(); + else + line += GetConnectorByStringID( "A" ).TryEvaluate() + "," + GetConnectorByStringID( "B" ).TryEvaluate(); + + return line + ")"; + } + + public int GetAmountOfConnectedInputs() { + bool a = GetInputIsConnected( "A" ); + bool b = GetInputIsConnected( "B" ); + bool c = GetInputIsConnected( "C" ); + bool d = GetInputIsConnected( "D" ); + + if( a && b && c && d ) + return 4; + else if( a && b && c && !d ) + return 3; + else if( a && b && !c && !d ) + return 2; + else if( a && !b && !c && !d ) + return 1; + else if( !a && !b && !c && !d ) + return 0; + + return 0; + } + + public override float EvalCPU( int c ) { + + int conCount = GetAmountOfConnectedInputs(); + + int cSub = 0; + for( int i = 0; i < conCount; i++ ) { + int cc = connectors[i+1].GetCompCount(); + if(c < cc + cSub){ + return GetInputData( connectors[i+1].strID, c - cSub ); + } else { + cSub += cc; + continue; + } + } + return 0; + } + + + static Color[] channelColors = new Color[4] { Color.red, Color.green, Color.blue, Color.white }; + + public override void PrepareRendering( Material mat ) { + + Vector4[] masks = new Vector4[] { + Vector4.zero, + Vector4.zero, + Vector4.zero, + Vector4.zero + }; + Vector4 offsets = Vector4.zero; + int head = 0; + for( int i = 0; i < GetAmountOfConnectedInputs(); i++ ) { + SF_NodeConnector con = connectors[i + 1]; + if( GetInputIsConnected( con.strID ) ) { + int cc = con.GetCompCount(); + for( int j = head; j < cc + head; j++ ) { + masks[i][j] = 1f; + } + offsets[i] = head; + head += cc; + } + } + + //for( int i = 0; i < 4; i++ ) { + // Debug.Log("Masks: " + masks[i]); + //} + + mat.SetVector( "_A_mask", masks[0] ); + mat.SetVector( "_B_mask", masks[1] ); + mat.SetVector( "_C_mask", masks[2] ); + mat.SetVector( "_D_mask", masks[3] ); + mat.SetVector( "_offsets", offsets ); + + } + + public void UpdateInputLabels() { + + string rgba = "RGBA"; + + int conCount = 4; + int cSub = 0; + for( int i = 0; i < conCount; i++ ) { + SF_NodeConnector con = connectors[i + 1]; + if( GetInputIsConnected( con.strID ) ) { + + int cc = con.GetCompCount(); + con.label = rgba.Substring( cSub, cc ); + if( cc == 1 ) + con.color = channelColors[cSub]; + cSub += cc; + + } else { + con.label = ""; + con.color = SF_NodeConnector.colorEnabledDefault; + cSub++; + } + } + } + + + } +} \ No newline at end of file diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Append.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Append.cs.meta new file mode 100644 index 00000000..7a6789eb --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Append.cs.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 162e89da5a50d9e4d8a4e894cbcdeb15 +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ArcCos.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ArcCos.cs new file mode 100644 index 00000000..0564b172 --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ArcCos.cs @@ -0,0 +1,30 @@ +using UnityEngine; + +namespace ShaderForge { + + [System.Serializable] + public class SFN_ArcCos : SF_Node_Arithmetic { + + public SFN_ArcCos() { + } + + public override void Initialize() { + base.Initialize( "ArcCos" ); + base.PrepareArithmetic( 1 ); + base.shaderGenMode = ShaderGenerationMode.CustomFunction; + } + + public override string[] GetBlitOutputLines() { + return new string[] { "acos(_in)" }; + } + + public override string Evaluate( OutChannel channel = OutChannel.All ) { + return "acos(" + GetConnectorByStringID( "IN" ).TryEvaluate() + ")"; + } + + public override float EvalCPU( int c ) { + return Mathf.Acos( GetInputData( "IN", c ) ); + } + + } +} \ No newline at end of file diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ArcCos.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ArcCos.cs.meta new file mode 100644 index 00000000..521be8ae --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ArcCos.cs.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 1267f09847e198948b8685321890f373 +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ArcSin.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ArcSin.cs new file mode 100644 index 00000000..b987334a --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ArcSin.cs @@ -0,0 +1,30 @@ +using UnityEngine; + +namespace ShaderForge { + + [System.Serializable] + public class SFN_ArcSin : SF_Node_Arithmetic { + + public SFN_ArcSin() { + } + + public override void Initialize() { + base.Initialize( "ArcSin" ); + base.PrepareArithmetic( 1 ); + base.shaderGenMode = ShaderGenerationMode.CustomFunction; + } + + public override string[] GetBlitOutputLines() { + return new string[] { "asin(_in)" }; + } + + public override string Evaluate( OutChannel channel = OutChannel.All ) { + return "asin(" + GetConnectorByStringID( "IN" ).TryEvaluate() + ")"; + } + + public override float EvalCPU( int c ) { + return Mathf.Asin( GetInputData( "IN", c ) ); + } + + } +} \ No newline at end of file diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ArcSin.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ArcSin.cs.meta new file mode 100644 index 00000000..1853ca84 --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ArcSin.cs.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 51a1743e634ae48499fec247d6ee111f +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ArcTan.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ArcTan.cs new file mode 100644 index 00000000..873fd935 --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ArcTan.cs @@ -0,0 +1,30 @@ +using UnityEngine; + +namespace ShaderForge { + + [System.Serializable] + public class SFN_ArcTan : SF_Node_Arithmetic { + + public SFN_ArcTan() { + } + + public override void Initialize() { + base.Initialize( "ArcTan" ); + base.PrepareArithmetic( 1 ); + base.shaderGenMode = ShaderGenerationMode.CustomFunction; + } + + public override string[] GetBlitOutputLines() { + return new string[] { "atan(_in)" }; + } + + public override string Evaluate( OutChannel channel = OutChannel.All ) { + return "atan(" + GetConnectorByStringID( "IN" ).TryEvaluate() + ")"; + } + + public override float EvalCPU( int c ) { + return Mathf.Atan( GetInputData( "IN", c ) ); + } + + } +} \ No newline at end of file diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ArcTan.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ArcTan.cs.meta new file mode 100644 index 00000000..20a1ba50 --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ArcTan.cs.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: b0f13cb74c6cdd346ad7a92d8af2bda7 +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ArcTan2.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ArcTan2.cs new file mode 100644 index 00000000..f20dd4c2 --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ArcTan2.cs @@ -0,0 +1,118 @@ +using UnityEngine; +using UnityEditor; + +namespace ShaderForge { + + [System.Serializable] + public class SFN_ArcTan2 : SF_Node_Arithmetic { + + public enum ArcTan2Type { NegPiToPi, NegOneToOne, ZeroToOne, ZeroToOneWrapped }; + public static string[] atanTypeStr = new string[] { "-\u03C0 to \u03C0", "-1 to 1", "0 to 1", "0 to 1 Wrapped" }; + + public ArcTan2Type arcTanType = ArcTan2Type.NegPiToPi; + + public SFN_ArcTan2() { + } + + public override void Initialize() { + base.Initialize( "ArcTan2" ); + base.UseLowerPropertyBox( true, true ); + base.PrepareArithmetic(2); + base.shaderGenMode = ShaderGenerationMode.Modal; + connectors[1].label = "y"; + connectors[2].label = "x"; + } + + public override string[] GetModalModes() { + return new string[]{ + "NPTP", + "NOTO", + "ZTO", + "ZTOW" + }; + } + + public override string GetCurrentModalMode() { + switch( arcTanType ) { + case ArcTan2Type.NegOneToOne: + return "NOTO"; + case ArcTan2Type.ZeroToOne: + return "ZTO"; + case ArcTan2Type.ZeroToOneWrapped: + return "ZTOW"; + default: + return "NPTP"; + } + } + + public override string[] GetBlitOutputLines( string mode ) { + + + string s = "atan2(_a,_b)"; + + switch( mode ) { + case "NOTO": + s = "(" + s + "/3.14159265359)"; + break; + case "ZTO": + s = "(" + s + "/6.28318530718)+0.5"; + break; + case "ZTOW": + s = "(1-abs(" + s + ")/3.14159265359)"; + break; + } + return new string[] { s }; + } + + public override string Evaluate( OutChannel channel = OutChannel.All ) { + + string aStr = GetConnectorByStringID( "A" ).TryEvaluate(); + string bStr = GetConnectorByStringID( "B" ).TryEvaluate(); + + + if( arcTanType == ArcTan2Type.NegOneToOne ) + return "(atan2(" + aStr + "," + bStr + ")/3.14159265359)"; + if( arcTanType == ArcTan2Type.ZeroToOne ) + return "((atan2(" + aStr + "," + bStr + ")/6.28318530718)+0.5)"; + if( arcTanType == ArcTan2Type.ZeroToOneWrapped ) + return "(1-abs(atan2(" + aStr + "," + bStr + ")/3.14159265359))"; + //if( arcTanType == ArcTan2Type.NegPiToPi ) + return "atan2(" + aStr + "," + bStr + ")"; + } + + public override float EvalCPU( int c ) { + + float a = GetInputData( "A", c ); + float b = GetInputData( "B", c ); + + if( arcTanType == ArcTan2Type.NegOneToOne ) + return Mathf.Atan2( a, b ) / Mathf.PI; + if( arcTanType == ArcTan2Type.ZeroToOne ) + return (Mathf.Atan2( a, b ) / (2*Mathf.PI)) + 0.5f; + if( arcTanType == ArcTan2Type.ZeroToOneWrapped ) + return 1f-(Mathf.Abs(Mathf.Atan2( a, b ) / Mathf.PI)); + //if( arcTanType == ArcTan2Type.NegPiToPi ) + return Mathf.Atan2( a, b ); + } + + public override void DrawLowerPropertyBox() { + EditorGUI.BeginChangeCheck(); + arcTanType = (ArcTan2Type)UndoableEnumPopupNamed( lowerRect, (int)arcTanType, atanTypeStr, "ArcTan2 type" ); + if( EditorGUI.EndChangeCheck() ) + OnUpdateNode(); + } + + public override string SerializeSpecialData() { + return "attp:" + (int)arcTanType; + } + + public override void DeserializeSpecialData( string key, string value ) { + switch( key ) { + case "attp": + arcTanType = (ArcTan2Type)int.Parse( value ); + break; + } + } + + } +} \ No newline at end of file diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ArcTan2.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ArcTan2.cs.meta new file mode 100644 index 00000000..276099ad --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ArcTan2.cs.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 0792bd3dbd79d854f9d4c5ba334b03da +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Bitangent.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Bitangent.cs new file mode 100644 index 00000000..b7abcebb --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Bitangent.cs @@ -0,0 +1,35 @@ +using UnityEngine; +using UnityEditor; +using System.Collections; + +namespace ShaderForge { + + [System.Serializable] + public class SFN_Bitangent : SF_Node { + + + public SFN_Bitangent() { + + } + + public override void Initialize() { + base.Initialize( "Bitangent Dir.", InitialPreviewRenderMode.BlitSphere ); + base.showColor = true; + base.UseLowerPropertyBox( false ); + base.texture.CompCount = 3; + base.neverDefineVariable = true; + connectors = new SF_NodeConnector[]{ + SF_NodeConnector.Create(this,"OUT","",ConType.cOutput,ValueType.VTv3,false) + }; + } + + public override Vector4 EvalCPU() { + return new Color( 0f, 1f, 0f, 0f ); + } + + public override string Evaluate( OutChannel channel = OutChannel.All ) { + return SF_Evaluator.WithProgramPrefix( "bitangentDir" ); + } + + } +} \ No newline at end of file diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Bitangent.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Bitangent.cs.meta new file mode 100644 index 00000000..157be31d --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Bitangent.cs.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 91678baf7d403d74b9e68a280151262e +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Blend.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Blend.cs new file mode 100644 index 00000000..06f210f8 --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Blend.cs @@ -0,0 +1,339 @@ +using UnityEngine; +using UnityEditor; +using System.Collections; +using System; + +namespace ShaderForge{ + public class SFN_Blend : SF_Node_Arithmetic { + + + public enum BlendMode { + Darken = 0, + Multiply = 1, + ColorBurn = 2, + LinearBurn = 3, + // DarkerColor = 4, + + Lighten = 5, + Screen = 6, + ColorDodge = 7, + LinearDodge = 8, + // LighterColor = 9, + + Overlay = 10, + // SoftLight = 11, + HardLight = 12, + VividLight = 13, + LinearLight = 14, + PinLight = 15, + HardMix = 16, + + Difference = 17, + Exclusion = 18, + Subtract = 19, + Divide = 20 + }; + + + const int maxEnum = 20; + static int[] skipEnum = new int[]{4,9,11}; + + public BlendMode currentBlendMode = BlendMode.Overlay; + public bool clamp = true; + + public SFN_Blend() { + + } + + public override void Initialize() { + base.Initialize( "Blend" ); + base.UseLowerPropertyBox( true, true ); + base.showColor = true; + base.texture.uniform = false; + base.texture.CompCount = 3; + base.node_height += 15; + base.shaderGenMode = ShaderGenerationMode.Modal; + + connectors = new SF_NodeConnector[]{ + SF_NodeConnector.Create(this,"OUT","",ConType.cOutput,ValueType.VTvPending,false), + SF_NodeConnector.Create(this,"SRC","Src",ConType.cInput,ValueType.VTvPending,false).SetRequired(true), + SF_NodeConnector.Create(this,"DST","Dst",ConType.cInput,ValueType.VTvPending,false).SetRequired(true) + }; + + base.conGroup = ScriptableObject.CreateInstance().Initialize( connectors[0], connectors[1], connectors[2] ); + } + + public override bool IsUniformOutput() { + return false; + } + + + public void StepBlendMode(int inc, bool registerUndo){ + int nextBlendIndex = (int)currentBlendMode + inc; + + + + + restart: + foreach(int i in skipEnum){ + if(nextBlendIndex == i){ + nextBlendIndex += inc; + goto restart; // Watch out for raptors + } + } + + + if(nextBlendIndex == -1){ + BlendMode nextBlendMode = (BlendMode)maxEnum; + if(registerUndo){ + UndoRecord("switch blend mode to " + nextBlendMode.ToString()); + } + currentBlendMode = nextBlendMode; + return; + } else if(nextBlendIndex > maxEnum){ + BlendMode nextBlendMode = (BlendMode)0; + if(registerUndo){ + UndoRecord("switch blend mode to " + nextBlendMode.ToString()); + } + currentBlendMode = nextBlendMode; + return; + } + + if(registerUndo){ + UndoRecord("switch blend mode to " + (BlendMode)nextBlendIndex); + } + + currentBlendMode = (BlendMode)nextBlendIndex; + + } + + + + + + public override void RefreshValue() { + RefreshValue( 1, 2 ); + } + + public override void DrawLowerPropertyBox() { + GUI.color = Color.white; + EditorGUI.BeginChangeCheck(); + Rect r = lowerRect; + r.height = 17; + + currentBlendMode = (BlendMode)UndoableEnumPopup(r, currentBlendMode, "switch blend mode"); + + r = r.MovedDown(); + r.width -= r.height*2+8; + UndoableToggle(r,ref clamp, "Clamp", "blend node clamp", SF_Styles.ToggleDiscrete); + r.width = lowerRect.width; + r = r.MovedRight(); + r.width = r.height+4; + r = r.MovedLeft(2); + if(GUI.Button(r,"\u25B2")){ + StepBlendMode(-1, registerUndo:true); + } + r = r.MovedRight(); + if(GUI.Button(r, "\u25BC")){ + StepBlendMode(1, registerUndo:true); + } + + + if(EditorGUI.EndChangeCheck()) + OnUpdateNode(); + } + + public override string SerializeSpecialData() { + string s = ""; + s += "blmd:" + (int)currentBlendMode + ","; + s += "clmp:" + clamp.ToString(); + return s; + } + + + + public override void DeserializeSpecialData( string key, string value ) { + switch( key ) { + case "blmd": + currentBlendMode = (BlendMode)int.Parse( value ); + break; + case "clmp": + clamp = bool.Parse( value ); + break; + } + } + + + public override float EvalCPU( int c ) { + + float a = GetInputData( "SRC", c ); + float b = GetInputData( "DST", c ); + + float blended = Blend(a,b); + + if(clamp) + blended = Mathf.Clamp01(blended); + + + return blended; + } + + + public override string Evaluate( OutChannel channel = OutChannel.All ) { + + // Update eval count here + + string a = GetConnectorByStringID( "SRC" ).TryEvaluate(); + string b = GetConnectorByStringID( "DST" ).TryEvaluate(); + + + + + string blend = Blend (a, b, currentBlendMode); + + if(clamp){ + return "saturate(" + blend + ")"; + } + + return blend; + } + + + public void UpdateUsageCount(){ + + SF_NodeConnector src = GetConnectorByStringID("SRC"); + SF_NodeConnector dst = GetConnectorByStringID("DST"); + + + + if(currentBlendMode == BlendMode.Overlay){ + src.usageCount = 2; + dst.usageCount = 3; + return; + } + + if(currentBlendMode == BlendMode.HardLight || + currentBlendMode == BlendMode.VividLight || + currentBlendMode == BlendMode.LinearLight || + currentBlendMode == BlendMode.PinLight){ + + src.usageCount = 3; + dst.usageCount = 2; + return; + } + + + + src.usageCount = 1; + dst.usageCount = 1; + + } + + + + public override string[] GetModalModes() { + return Enum.GetNames( typeof( BlendMode ) ); + } + + public override string GetCurrentModalMode() { + return currentBlendMode.ToString(); + } + + public override string[] GetBlitOutputLines( string mode ) { + string s = Blend( "_src", "_dst", (BlendMode)Enum.Parse( typeof( BlendMode ), mode ) ); + return new string[] { s }; + } + + + + // lerp( 2.0*a*b, 1.0-(1.0-2.0*(a-0.5))*(1.0-b), round(a) ) + + + public string Blend(string a, string b, BlendMode mode){ + switch( mode ) { + case BlendMode.Darken: + return "min(" + a + "," + b + ")"; + case BlendMode.Multiply: + return "("+a+"*"+b+")"; + case BlendMode.ColorBurn: + return "(1.0-((1.0-" + b + ")/" + a + "))"; + case BlendMode.LinearBurn: + return "(" + a + "+" + b + "-1.0)"; + case BlendMode.Lighten: + return "max(" + a + "," + b + ")"; + case BlendMode.Screen: + return "(1.0-(1.0-" + a + ")*(1.0-" + b + "))"; + case BlendMode.ColorDodge: + return "(" + b + "/(1.0-" + a + "))"; + case BlendMode.LinearDodge: + return "(" + a + "+" + b + ")"; + case BlendMode.Overlay: + return "( " + b + " > 0.5 ? (1.0-(1.0-2.0*(" + b + "-0.5))*(1.0-" + a + ")) : (2.0*" + b + "*" +a + ") )"; + case BlendMode.HardLight: + return "(" + a + " > 0.5 ? (1.0-(1.0-2.0*(" + a + "-0.5))*(1.0-" + b + ")) : (2.0*" + a + "*" + b + ")) "; + case BlendMode.VividLight: + return "( " + a + " > 0.5 ? (" + b + "/((1.0-" + a + ")*2.0)) : (1.0-(((1.0-" + b + ")*0.5)/" + a + ")))"; + case BlendMode.LinearLight: + return "( " + a + " > 0.5 ? (" + b + " + 2.0*" + a + " -1.0) : (" + b + " + 2.0*(" + a + "-0.5)))"; + case BlendMode.PinLight: + return "( " + a + " > 0.5 ? max(" + b + ",2.0*(" + a + "-0.5)) : min(" + b + ",2.0*" + a + ") )"; + case BlendMode.HardMix: + return "round( 0.5*(" + a + " + " + b + "))"; + case BlendMode.Difference: + return "abs(" + a + "-" + b + ")"; + case BlendMode.Exclusion: + return "(0.5 - 2.0*(" + a + "-0.5)*(" + b + "-0.5))"; + case BlendMode.Subtract: + return "(" + b + "-" + a + ")"; + case BlendMode.Divide: + return "(" + b + "/" + a + ")"; + } + return "0"; + } + + + public float Blend(float a, float b){ + switch(currentBlendMode){ + case BlendMode.Darken: + return Mathf.Min(a,b); + case BlendMode.Multiply: + return a*b; + case BlendMode.ColorBurn: + return 1f-((1f-b)/a); + case BlendMode.LinearBurn: + return a+b-1f; + case BlendMode.Lighten: + return Mathf.Max(a,b); + case BlendMode.Screen: + return 1f-(1f-a)*(1f-b); + case BlendMode.ColorDodge: + return b/(1f-a); + case BlendMode.LinearDodge: + return a+b; + case BlendMode.Overlay: + return b > 0.5f ? 1f-(1f-2f*(b-0.5f))*(1f-a) : 2f*a*b ; + case BlendMode.HardLight: + return a > 0.5f ? 1f-(1f-2f*(a-0.5f))*(1f-b) : 2f*a*b;; + case BlendMode.VividLight: + return a > 0.5f ? b/((1f-a)*2f) : 1f-(((1f-b)*0.5f)/a); + case BlendMode.LinearLight: + return a > 0.5f ? b + 2f*(a-0.5f) : b + 2f*a -1f; + case BlendMode.PinLight: + return a > 0.5f ? Mathf.Max(b,2f*(a-0.5f)) : Mathf.Min(b,2f*a); + case BlendMode.HardMix: + return Mathf.Round((a+b)*0.5f); + case BlendMode.Difference: + return Mathf.Abs(a-b); + case BlendMode.Exclusion: + return 0.5f - 2f*(a-0.5f)*(b-0.5f); + case BlendMode.Subtract: + return b-a; + case BlendMode.Divide: + return b/a; + } + return 0f; + } + + + } +} diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Blend.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Blend.cs.meta new file mode 100644 index 00000000..2867e546 --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Blend.cs.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: dc98abed3a52945188950124fb57da72 +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Ceil.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Ceil.cs new file mode 100644 index 00000000..c3f2de4f --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Ceil.cs @@ -0,0 +1,26 @@ +using UnityEngine; + +namespace ShaderForge { + + [System.Serializable] + public class SFN_Ceil : SF_Node_Arithmetic { + + public SFN_Ceil() { + } + + public override void Initialize() { + base.Initialize( "Ceil" ); + base.PrepareArithmetic( 1 ); + base.shaderGenMode = ShaderGenerationMode.SimpleFunction; + } + + public override string Evaluate( OutChannel channel = OutChannel.All ) { + return "ceil(" + GetConnectorByStringID( "IN" ).TryEvaluate() + ")"; + } + + public override float EvalCPU( int c ) { + return Mathf.Ceil( GetInputData( "IN", c ) ); + } + + } +} \ No newline at end of file diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Ceil.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Ceil.cs.meta new file mode 100644 index 00000000..79558e54 --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Ceil.cs.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 3f60d482333b50040ac5e3679061069c +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ChannelBlend.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ChannelBlend.cs new file mode 100644 index 00000000..71f57815 --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ChannelBlend.cs @@ -0,0 +1,194 @@ +using UnityEngine; +using UnityEditor; +using System.Collections; +using System.Linq; + +namespace ShaderForge { + + [System.Serializable] + public class SFN_ChannelBlend : SF_Node_Arithmetic { + + // SF_Node tNode; + public enum ChannelBlendType{ Summed, Layered }; + + public ChannelBlendType channelBlendType = ChannelBlendType.Summed; + + public SFN_ChannelBlend() { + + } + + + public override void Initialize() { + base.Initialize( "Channel Blend" ); + base.PrepareArithmetic(6); + base.extraWidthInput = 3; + base.UseLowerPropertyBox( true, true ); + base.shaderGenMode = ShaderGenerationMode.Manual; + + //SF_NodeConnection lerpCon; + connectors = new SF_NodeConnector[]{ + SF_NodeConnector.Create( this, "OUT", "", ConType.cOutput, ValueType.VTvPending, false ), + SF_NodeConnector.Create( this, "M", "Mask", ConType.cInput, ValueType.VTvPending, false ).SetRequired( true ).WithUseCount(4), + SF_NodeConnector.Create( this, "R", "Rcol", ConType.cInput, ValueType.VTvPending, false ).SetRequired( true ), + SF_NodeConnector.Create( this, "G", "Gcol", ConType.cInput, ValueType.VTvPending, false ).SetRequired( true ), + SF_NodeConnector.Create( this, "B", "Bcol", ConType.cInput, ValueType.VTvPending, false ).SetRequired( true ), + SF_NodeConnector.Create( this, "A", "Acol", ConType.cInput, ValueType.VTvPending, false ).SetRequired( true ), + SF_NodeConnector.Create( this, "BTM", "Btm", ConType.cInput, ValueType.VTvPending, false ).SetRequired( false ) + }; + this["BTM"].enableState = EnableState.Disabled; + base.conGroup = ScriptableObject.CreateInstance().Initialize( connectors[0], connectors[1], connectors[2], connectors[3], connectors[4], connectors[5], connectors[6] ); + } + + public override void OnUpdateNode( NodeUpdateType updType, bool cascade = true ) { + if( InputsConnected() ) + RefreshValue( 1, 2 ); + if(this["M"].IsConnected()){ + UpdateMaskCompCountInputs(); + } + //base.OnUpdateNode( updType ); + } + + public override bool IsUniformOutput() { + foreach(SF_NodeConnector con in connectors){ + if(con.conType == ConType.cOutput || !con.IsConnected()) + continue; + if(!con.inputCon.node.texture.uniform) + return false; + } + return true; + } + + public override int GetEvaluatedComponentCount() { + return this["R"].GetCompCount(); + } + + public override void PrepareRendering( Material mat ) { + mat.SetFloat( "_Type", channelBlendType == ChannelBlendType.Summed ? 0 : 1 ); + } + + + private void UpdateMaskCompCountInputs(){ + + int cc = this["M"].GetCompCount(); + base.texture.CompCount = cc; + + bool summed = channelBlendType == ChannelBlendType.Summed; + //int enableInputCount = summed ? 4 : 5; + + for(int i = 0;i<4;i++){ + + SF_NodeConnector con = connectors[i+2]; + + //if(con.IsConnected() && con.inputCon.GetCompCount() != cc) + // connectors[i+2].Disconnect(); + + bool use = i < cc; + + con.SetRequired( use ); + con.enableState = use ? EnableState.Enabled : EnableState.Disabled; + + // Disconnect if going hidden while connected, but not during load, as it might connect an unevaluated cc + //if(!SF_Parser.quickLoad && !SF_Parser.settingUp){ + if(con.IsConnected() && con.enableState == EnableState.Disabled){ + //connectors[i+2].Disconnect(); + //Debug.Log("Disconnecting thing due to things!"); + } + //} + + } + + this["BTM"].SetRequired(!summed); + this["BTM"].enableState = summed ? EnableState.Disabled : EnableState.Enabled; + } + + public override void DrawLowerPropertyBox() { + GUI.color = Color.white; + EditorGUI.BeginChangeCheck(); + channelBlendType = (ChannelBlendType)UndoableEnumPopup(lowerRect, channelBlendType, "switch channel blend type"); + //currentUV = (UV)EditorGUI.EnumPopup( lowerRect, currentUV ); + if(EditorGUI.EndChangeCheck()){ + UpdateMaskCompCountInputs(); + OnUpdateNode(NodeUpdateType.Hard); + } + } + + public override string SerializeSpecialData() { + return "chbt:" + (int)channelBlendType; + } + + public override void DeserializeSpecialData( string key, string value ) { + switch( key ) { + case "chbt": + channelBlendType = (ChannelBlendType)int.Parse( value ); + break; + } + } + + + public override string Evaluate( OutChannel channel = OutChannel.All ) { + + int cc = this["M"].GetCompCount(); + + string m = this["M"].TryEvaluate(); + + string[] chStr = new string[]{"r","g","b","a"}; + + + + + string str = "("; + + + if(channelBlendType == ChannelBlendType.Summed){ + for(int i=0;i().Initialize( connectors[0], connectors[1], connectors[2] ); + } + + public override void OnUpdateNode( NodeUpdateType updType, bool cascade = true ) { + if( InputsConnected() ) + RefreshValue( 1, 2 ); + base.OnUpdateNode( updType ); + } + + public override bool IsUniformOutput() { + if( InputsConnected() ) + return ( GetInputData( "IN" ).uniform && GetInputData( "MIN" ).uniform && GetInputData( "MAX" ).uniform ); + return true; + } + + public override int GetEvaluatedComponentCount() { + return Mathf.Max( connectors[1].GetCompCount(), connectors[2].GetCompCount() ); + } + + + public override string Evaluate( OutChannel channel = OutChannel.All ) { + return "clamp(" + GetConnectorByStringID( "IN" ).TryEvaluate() + "," + GetInputCon( "MIN" ).Evaluate() + "," + GetInputCon( "MAX" ).Evaluate() + ")"; + } + + + public override float EvalCPU( int c ) { + //if( c + 1 > GetEvaluatedComponentCount() && GetEvaluatedComponentCount() > 1 ) // Why was this needed before? + // return 0f; + return Mathf.Clamp( GetInputData( "IN", c ), GetInputData( "MIN", c ), GetInputData( "MAX", c ) ); + } + + + + } +} \ No newline at end of file diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Clamp.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Clamp.cs.meta new file mode 100644 index 00000000..f024d788 --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Clamp.cs.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 8f0e557ea28785e489136b0286b4a244 +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Clamp01.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Clamp01.cs new file mode 100644 index 00000000..d894d408 --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Clamp01.cs @@ -0,0 +1,30 @@ +using UnityEngine; + +namespace ShaderForge { + + [System.Serializable] + public class SFN_Clamp01 : SF_Node_Arithmetic { + + public SFN_Clamp01() { + } + + public override void Initialize() { + base.Initialize( "Clamp 0-1" ); + base.PrepareArithmetic( 1 ); + base.shaderGenMode = ShaderGenerationMode.CustomFunction; + } + + public override string[] GetBlitOutputLines() { + return new string[] { "saturate(_in)" }; + } + + public override string Evaluate( OutChannel channel = OutChannel.All ) { + return "saturate(" + GetConnectorByStringID( "IN" ).TryEvaluate() + ")"; + } + + public override float EvalCPU( int c ) { + return Mathf.Clamp01( GetInputData( "IN", c ) ); + } + + } +} \ No newline at end of file diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Clamp01.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Clamp01.cs.meta new file mode 100644 index 00000000..7d41bfdc --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Clamp01.cs.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 24cede14d15605b4e804eccab2542450 +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Code.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Code.cs new file mode 100644 index 00000000..9c451f49 --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Code.cs @@ -0,0 +1,609 @@ +using UnityEngine; +using UnityEditor; +using System.Collections.Generic; + +namespace ShaderForge { + + + public enum CustomValueType{ + Float, + Float2, + Float3, + Float4, + Half, + Half2, + Half3, + Half4, + Fixed, + Fixed2, + Fixed3, + Fixed4, + Sampler2D, + Matrix4x4 + /*, Texture*/ }; + + [System.Serializable] + public class SFN_Code : SF_Node_Resizeable { + + + public string code = ""; + public string functionName = "Function_node_"; + + private bool isEditing = false; + + public SFN_Code() { + } + + public override void Initialize() { + base.Initialize( "Code" ); + functionName = "Function_node_" + base.id; + base.minWidth = (int)(NODE_WIDTH * 2.5f); + base.minHeight = NODE_HEIGHT; + base.ClampSize(); + connectors = new SF_NodeConnector[]{ + SF_NodeConnector.Create(this,"OUT","Out",ConType.cOutput,ValueType.VTvPending) + }; + controlName = base.id + "_codeArea"; + connectors[0].CustomValueType = CustomValueType.Float3; + //Debug.Log("Creating thing " + base.id); + } + + public string GetFunctionName(){ + return functionName; + //return "CustomCode_" + id; + } + + public override int GetEvaluatedComponentCount (){ + return SF_Tools.ComponentCountOf(connectors[0].CustomValueType); + } + + public override string GetPrepareUniformsAndFunctions(){ + return GetFunctionHeader() + "\n" + code + "\n}\n"; + } + + public string GetFunctionHeader(){ + string outputType = ToCodeType(connectors[0].CustomValueType); // Output type + string inputs = "("; + foreach(SF_NodeConnector con in connectors){ + if(con.conType == ConType.cOutput) + continue; + inputs += " " + ToCodeType(con.CustomValueType) + " " + con.label + " "; + + if(con != connectors[connectors.Length-1]) // Add comma if it's not the last one + inputs += ","; + } + inputs += "){"; + return outputType + " " + GetFunctionName() + inputs; + } + + private string ToCodeType(CustomValueType cvt){ + if(cvt == CustomValueType.Sampler2D) + return "sampler2D"; // Uppercase D + if( cvt == CustomValueType.Matrix4x4 ) + return "float4x4"; + return cvt.ToString().ToLower(); + } + + public override string Evaluate( OutChannel channel = OutChannel.All ) { + string s = GetFunctionName(); + s += "("; + foreach(SF_NodeConnector con in connectors){ + if(con.conType == ConType.cOutput) + continue; + s += " " + con.TryEvaluate() + " "; + + if(con != connectors[connectors.Length-1]) // Add comma if it's not the last one + s += ","; + } + + s += ")"; + return s; + } + + public override float EvalCPU( int c ) { + return 1f; + } + + string controlName; + + + float targetSideButtonWidth; + float currentSideButtonWidth; + + //CustomValueType outType = CustomValueType.Float3; + + bool hoveringNode = false; + + int guiIncID = 0; + + bool justFocused = false; + int pressedTabLastFrameCounter = 0; + int pressedEditLastFrameCounter = 0; + int savedCaretPosition; + + TextEditor txtEditor; + + public override void DrawInner(Rect r){ + + + + //Debug.Log("GUI THREAD: " + Event.current.type + " - " + GUI.GetNameOfFocusedControl()); + + //if(Event.current.type == EventType.layout) + //return; + + if(Event.current.type == EventType.Repaint) + guiIncID++; + + //if(Event.current.type == EventType.repaint) + //if(hoveringNode){ + //hoveringNode = r.Margin(128).Contains(Event.current.mousePosition); + //} else { + hoveringNode = r.Contains(Event.current.mousePosition); + //} + + + if(!isEditing) // Don't resize while editing + targetSideButtonWidth = (selected) ? 70f : 0f; + + + int sideButtonHeight = 16; + int buttonTextMargin = 4; + + int sideButtonWidth = Mathf.RoundToInt(currentSideButtonWidth); + if(Event.current.type == EventType.Repaint){ + currentSideButtonWidth = Mathf.Lerp(currentSideButtonWidth, targetSideButtonWidth, 0.6f); + } + + Rect txtRect = r; + + + + txtRect = txtRect.PadRight(/*(int)sideButtonWidth +*/ buttonTextMargin); + txtRect = txtRect.PadLeft((int)sideButtonWidth*2 + buttonTextMargin); + txtRect = txtRect.PadBottom(buttonTextMargin); + + + // BUTTONS + if(sideButtonWidth > 12f){ + + Rect btnOutput = txtRect; + Rect btnInput = txtRect; + btnOutput.width = sideButtonWidth; + btnInput.width = sideButtonWidth*2; + btnOutput.height = btnInput.height = sideButtonHeight; + btnOutput.x += txtRect.width - sideButtonWidth; + btnInput.x += - buttonTextMargin / 2 - sideButtonWidth*2; + + DrawTypecastButtons( btnOutput, btnInput ); + + } + + + txtRect = txtRect.PadTop((int)(sideButtonWidth*0.32f)); + + + + if(isEditing && !justFocused && Event.current.type == EventType.Repaint){ + //Debug.Log("GUI THREAD " + Event.current.type + " LOWER"); + if(GUI.GetNameOfFocusedControl() != controlName){ + //Debug.Log("DEFOCUS - " + Event.current.type + " fc: " + GUI.GetNameOfFocusedControl() ); + isEditing = false; + isEditingAnyNodeTextField = false; + } + } + + + + if(Event.current.type == EventType.Repaint){ + justFocused = false; + } + + //Debug.Log("GUI THREAD B: " + Event.current.type + " - " + GUI.GetNameOfFocusedControl()); + + if(isEditing){ + + controlName = base.id + "_codeArea"; + + GUI.SetNextControlName(controlName); + + string codeBefore = code; + //code = GUI.TextArea(txtRect,code,SF_Styles.CodeTextArea); + code = UndoableTextArea(txtRect, code, "code", SF_Styles.CodeTextArea); + + SF_GUI.AssignCursor( txtRect , MouseCursor.Text ); + + //if(copied){ + // code = codeBefore; + // txtEditor.pos += copyLength-1; + //} + + + txtEditor = (TextEditor)GUIUtility.GetStateObject(typeof(TextEditor), GUIUtility.keyboardControl); + savedCaretPosition = txtEditor.cursorIndex; + //txtEditor.selectPos = 4; + + + + + //if(SF_GUI.HoldingControl() && Event.current.type == EventType.keyDown && Event.current.keyCode == KeyCode.C) + + + if(Event.current.keyCode == KeyCode.Tab && Event.current.type == EventType.KeyDown){ + //Debug.Log("Tab"); + UndoRecord("insert tab in " + functionName + " code"); + code = code.Insert( txtEditor.cursorIndex, "\t" ); + //Debug.Log("Caret position = " + txtEditor.pos); + savedCaretPosition = txtEditor.cursorIndex; + pressedTabLastFrameCounter = 5; // Force it for five GUI frames + Event.current.Use(); + GUI.FocusControl(controlName); + } + + if(pressedTabLastFrameCounter > 0 /*&& GUI.GetNameOfFocusedControl() != controlName*/){ + GUI.FocusControl(controlName); + txtEditor = (TextEditor)GUIUtility.GetStateObject(typeof(TextEditor), GUIUtility.keyboardControl); + txtEditor.cursorIndex = savedCaretPosition + 1; + txtEditor.selectIndex = savedCaretPosition+1; + pressedTabLastFrameCounter--; + } + + /* + if(Event.current.keyCode == KeyCode.Tab && Event.current.type == EventType.keyUp){ + GUI.FocusControl(controlName); + Event.current.Use(); + GUI.FocusControl(controlName); + } + + if(Event.current.Equals( Event.KeyboardEvent("tab") )){ + GUI.FocusControl(controlName); + Event.current.Use(); + GUI.FocusControl(controlName); + }*/ + + + + if(code != codeBefore){ + OnUpdateNode(NodeUpdateType.Soft, false); + } + //if(focusBefore != string.Empty && GUI.GetNameOfFocusedControl() != focusBefore){ + // GUI.FocusControl(focusBefore); + //} + //Debug.Log("GUI THREAD B_A_1: " + Event.current.type + " - " + GUI.GetNameOfFocusedControl()); + + }else{ + //Debug.Log("GUI THREAD " + Event.current.type + " UPPER"); + //Debug.Log("GUI THREAD B_B_0: " + Event.current.type + " - " + GUI.GetNameOfFocusedControl()); + GUI.Box(txtRect.PadBottom(1),code,SF_Styles.CodeTextArea); + if(hoveringNode){ + + bool doubleClicked = Event.current.isMouse && Event.current.type == EventType.MouseDown && Event.current.clickCount == 2; + + Rect btnRect = new Rect(txtRect.xMax,txtRect.yMax,46,16).MovedUp().MovedLeft(); + btnRect.x -= 3; + btnRect.y -= 4; + + btnRect.xMin -= 3; + btnRect.yMin -= 4; + + // Workaround for a weird issue + //bool clickedBtn = btnRect.Contains(Event.current.mousePosition) && Event.current.type == EventType.mouseUp && Event.current.button == 0; + + //Debug.Log("GUI THREAD B_B_1: " + Event.current.type + " - " + GUI.GetNameOfFocusedControl()); + if(GUI.Button(btnRect,"Edit",EditorStyles.miniButton) || doubleClicked && Event.current.type == EventType.Repaint){ + isEditing = true; + //Debug.Log("FOCUS - " + Event.current.type + " fc: " + GUI.GetNameOfFocusedControl() ); + pressedEditLastFrameCounter = 5; + isEditingAnyNodeTextField = true; + GUI.FocusControl(controlName); + // forceFocusCodeField = true; + Event.current.Use(); + justFocused = true; + } + //Debug.Log("GUI THREAD B_B_2: " + Event.current.type + " - " + GUI.GetNameOfFocusedControl()); + } + } + + if(pressedEditLastFrameCounter > 0){ + GUI.FocusControl(controlName); + //Debug.Log("REFOCUSING " + controlName + " fc: " + GUI.GetNameOfFocusedControl() ); + pressedEditLastFrameCounter--; + } + + //Debug.Log("GUI THREAD C: " + Event.current.type + " - " + GUI.GetNameOfFocusedControl()); + + + + /* + if (forceFocusCodeField) { + //GUI.SetNextControlName("focusChange"); + if (GUI.GetNameOfFocusedControl() != controlName) { + GUI.FocusControl(controlName); + } else { + forceFocusCodeField = false; + } + + }*/ + + + + + //Debug.Log("GUI THREAD END: " + Event.current.type + " - " + GUI.GetNameOfFocusedControl()); + } + + //bool forceFocusCodeField = false; + + public void DrawTypecastButtons(Rect btnL, Rect btnR){ + + + // OUTPUT + DrawTypecastButton(btnL, connectors[0]); + + + // INPUTS + foreach(SF_NodeConnector con in connectors){ + if(con.conType == ConType.cOutput) + continue; + DrawTypecastButton(btnR, con, isInput:true); + btnR.y += btnR.height+4; + } + + // ADD INPUT BUTTON + GUI.color = new Color(0.7f,1f,0.7f,1f); + if(GUI.Button(btnR,"Add input", EditorStyles.miniButton)){ + UndoRecord("add input to " + functionName); + AddInput(); + } + GUI.color = Color.white; + + + } + + + + + public void AddInput(){ + + + SF_NodeConnector[] savedCons = new SF_NodeConnector[connectors.Length+1]; + for(int i=0;i conList = new List(); + foreach(SF_NodeConnector c in connectors){ + if(c != con){ + conList.Add(c); + } + } + + if(undoRecord) + Undo.DestroyObjectImmediate(con); + else + DestroyImmediate(con); + connectors = conList.ToArray(); + + RefreshConnectorStringIDs(); + UpdateMinHeight(); + + OnUpdateNode(NodeUpdateType.Hard, false); + } + + public void RefreshConnectorStringIDs(){ + int nameIndex = 0; + foreach(SF_NodeConnector c in connectors){ + if(c.conType == ConType.cInput){ + c.strID = SF_Tools.alphabetUpper[nameIndex].ToString(); + nameIndex++; + } + } + } + + + string EncodeCode(){ + return SF_Tools.StringToBase64String( code ); + } + + string DecodeCode(string encoded){ + return SF_Tools.Base64StringToString( encoded ); + } + + public class SF_Serializer{ + + List keys; + List values; + + public SF_Serializer(){ + keys = new List(); + values = new List(); + } + + public SF_Serializer Add(string key, string value){ + keys.Add(key); + values.Add(value); + return this; + } + + public SF_Serializer Add(string key, int value){ + return Add(key, value.ToString()); + } + + public SF_Serializer Add(string key, float value){ + return Add(key, value.ToString()); + } + + public SF_Serializer Add(string key, bool value){ + return Add(key, value.ToString()); + } + + public override string ToString(){ + string s = ""; + for(int i=0;i 0) + s += ","; + s += keys[i] + ":" + values[i]; + } + return s; + } + + } + + + public override string SerializeSpecialData() { + /* + string s = ""; + s += "code:" + EncodeCode() + ","; + + s += "output:" + (int)connectors[0].CustomValueType + ","; + + s += "fnme:" + functionName + ","; + + for(int i=1;i 0){ + con.label = SF_ShaderProperty.FormatInternalName(con.label); + UpdateExtraInputWidth(); + OnUpdateNode(NodeUpdateType.Soft); + } + } else { + int cvtccBef = SF_Tools.ComponentCountOf(con.CustomValueType ); + //con.CustomValueType = (CustomValueType)EditorGUI.EnumPopup(r, con.CustomValueType); + con.CustomValueType = (CustomValueType)UndoableEnumPopup(r, con.CustomValueType, "set output value type"); + if(cvtccBef != SF_Tools.ComponentCountOf(con.CustomValueType)){ + con.Disconnect(); + } + } + + } + + public void UpdateExtraInputWidth(){ + + int widest = SF_NodeConnector.defaultConnectorWidth; + + foreach(SF_NodeConnector con in connectors){ + if(con.conType == ConType.cOutput) + continue; + + widest = Mathf.Max( SF_GUI.WidthOf(con.label, SF_Styles.MiniLabelOverflow)+2, widest); + } + + extraWidthInput = widest - SF_NodeConnector.defaultConnectorWidth; + + + + } + + + + + + + } +} \ No newline at end of file diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Code.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Code.cs.meta new file mode 100644 index 00000000..a05224d1 --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Code.cs.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 98ffa0d6f7e664ac98d11cff5f2974ef +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Color.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Color.cs new file mode 100644 index 00000000..695ac8d1 --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Color.cs @@ -0,0 +1,123 @@ +using UnityEngine; +using UnityEditor; +using System.Collections; + +namespace ShaderForge { + + [System.Serializable] + public class SFN_Color : SF_Node { + + + public SFN_Color() { + + } + + public override void Initialize() { + //node_height /= 2; + base.Initialize( "Color" ); + base.showColor = true; + base.UseLowerPropertyBox( true ); + base.property = ScriptableObject.CreateInstance().Initialize( this ); + base.texture.uniform = true; + base.neverDefineVariable = true; + base.texture.dataUniform = new Color( 0.5f, 0.5f, 0.5f, 1.0f ); + base.texture.CompCount = 4; + base.shaderGenMode = ShaderGenerationMode.OffUniform; + lowerRect.width /= 4; + connectors = new SF_NodeConnector[]{ + SF_NodeConnector.Create(this,"RGB","RGB",ConType.cOutput,ValueType.VTv3) .Outputting(OutChannel.RGB), + SF_NodeConnector.Create(this,"R","R",ConType.cOutput, ValueType.VTv1) .WithColor(Color.red) .Outputting(OutChannel.R), + SF_NodeConnector.Create(this,"G","G",ConType.cOutput,ValueType.VTv1) .WithColor(Color.green) .Outputting(OutChannel.G), + SF_NodeConnector.Create(this,"B","B",ConType.cOutput,ValueType.VTv1) .WithColor(Color.blue) .Outputting(OutChannel.B), + SF_NodeConnector.Create(this,"A","A",ConType.cOutput,ValueType.VTv1) .Outputting(OutChannel.A) + }; + } + + public void OnUpdateValue() { + editor.shaderEvaluator.ApplyProperty( this ); + OnUpdateNode( NodeUpdateType.Soft ); + } + + public override bool IsUniformOutput() { + return true; + } + + public override string Evaluate( OutChannel channel = OutChannel.All ) { + return property.GetVariable(); + } + + public override void DrawLowerPropertyBox() { + + if(selected && !SF_GUI.MultiSelectModifierHeld() && !IsGlobalProperty()) + ColorPickerCorner( lowerRect ); + + Vector4 vecPrev = texture.dataUniform; + PrepareWindowColor(); + Rect tRect = lowerRect; + + if(IsGlobalProperty()){ + texture.dataUniform[0] = texture.dataUniform[1] = texture.dataUniform[2] = 0.5f; + texture.dataUniform[3] = 1f; + GUI.enabled = false; + } + + texture.dataUniform[0] = UndoableFloatField(tRect, texture.dataUniform[0], "R channel"); + tRect.x += tRect.width; + texture.dataUniform[1] = UndoableFloatField(tRect, texture.dataUniform[1], "G channel"); + tRect.x += tRect.width; + texture.dataUniform[2] = UndoableFloatField(tRect, texture.dataUniform[2], "B channel"); + tRect.x += tRect.width; + texture.dataUniform[3] = UndoableFloatField(tRect, texture.dataUniform[3], "A channel"); + ResetWindowColor(); + if( texture.dataUniform != vecPrev ) { + OnUpdateValue(); + OnUpdateNode(); + } + + if(IsGlobalProperty()){ + GUI.enabled = true; + } + + } + + public Color GetColor() { + return texture.dataUniform; + } + + public override string SerializeSpecialData() { + string s = property.Serialize() + ","; + s += "c1:" + texture.dataUniform[0] + ","; + s += "c2:" + texture.dataUniform[1] + ","; + s += "c3:" + texture.dataUniform[2] + ","; + s += "c4:" + texture.dataUniform[3]; + return s; + } + + public override void DeserializeSpecialData( string key, string value ) { + property.Deserialize(key,value); + switch( key ) { + case "c1": + float fVal1 = float.Parse( value ); + texture.dataUniform[0] = fVal1; + break; + case "c2": + float fVal2 = float.Parse( value ); + texture.dataUniform[1] = fVal2; + break; + case "c3": + float fVal3 = float.Parse( value ); + texture.dataUniform[2] = fVal3; + break; + case "c4": + float fVal4 = float.Parse( value ); + texture.dataUniform[3] = fVal4; + break; + } + } + + + + + + } +} \ No newline at end of file diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Color.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Color.cs.meta new file mode 100644 index 00000000..f1a331e9 --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Color.cs.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 8bc17ab9cbfedf04dad0a0b49038cb4f +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_CommentBox.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_CommentBox.cs new file mode 100644 index 00000000..7dd06cdc --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_CommentBox.cs @@ -0,0 +1,43 @@ +using UnityEngine; +using UnityEditor; +using System.Collections.Generic; + +namespace ShaderForge { + + + [System.Serializable] + public class SFN_CommentBox : SF_Node_Resizeable { + + + public SFN_CommentBox() { + } + + public override void Initialize() { + base.Initialize( "Comment Box" ); + base.minWidth = (int)( NODE_WIDTH * 2.5f ); + base.minHeight = NODE_HEIGHT; + base.ClampSize(); + connectors = new SF_NodeConnector[]{ + //SF_NodeConnector.Create(this,"OUT","Out",ConType.cOutput,ValueType.VTvPending) + }; + } + + + public override void DrawInner( Rect r ) { + + // Things + UpdateMinHeight(); + + } + + + + + public void UpdateMinHeight() { + base.minHeight = Mathf.Max( NODE_HEIGHT, ( connectors.Length - 1 ) * 20 + 48 ); + base.ClampSize(); + } + + } + +} \ No newline at end of file diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_CommentBox.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_CommentBox.cs.meta new file mode 100644 index 00000000..1db4ae24 --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_CommentBox.cs.meta @@ -0,0 +1,12 @@ +fileFormatVersion: 2 +guid: c0f7e2658ac66f644824764ce705d8c3 +timeCreated: 1426492859 +licenseType: Pro +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ComponentMask.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ComponentMask.cs new file mode 100644 index 00000000..62725d7e --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ComponentMask.cs @@ -0,0 +1,387 @@ +using UnityEngine; +using UnityEditor; +using System.Collections; +using System; + +namespace ShaderForge { + + [System.Serializable] + public class SFN_ComponentMask : SF_Node { + + public enum CompChannel {off = -1, r = 0, g = 1, b = 2, a = 3 }; + const string R = "R"; + const string G = "G"; + const string B = "B"; + const string A = "A"; + const string OFF = "-"; + public string[][] compLabels = new string[][]{ + new string[] { OFF, R }, + new string[] { OFF, R, G }, + new string[] { OFF, R, G, B }, + new string[] { OFF, R, G, B, A } + }; + public string[][] compLabelsFirst = new string[][]{ + new string[] { R }, + new string[] { R, G }, + new string[] { R, G, B }, + new string[] { R, G, B, A } + }; + + public const float colDesat = 0.6f; + + public static Color[] chanColors = new Color[]{ + Color.white, + new Color( 1f, colDesat, colDesat), + new Color( colDesat, 1f, colDesat), + new Color( colDesat*1.1f, colDesat*1.1f, 1f ), + Color.white + }; + + public static Color[] outputChanColors = new Color[]{ + Color.red, + Color.green, + Color.blue, + Color.white + }; + + + + public GUIStyle popupStyle; + + public CompChannel[] components = new CompChannel[] { + CompChannel.r, + CompChannel.off, + CompChannel.off, + CompChannel.off + }; + + public SFN_ComponentMask() { + /* + Initialize("Comp. Mask"); + base.showColor = true; + UseLowerReadonlyValues(true); + UseLowerPropertyBox( true, true ); + + popupStyle = new GUIStyle( EditorStyles.miniButton ); + popupStyle.alignment = TextAnchor.MiddleCenter; + popupStyle.fontSize = 12; + popupStyle.fontStyle = FontStyle.Bold; + + connectors = new SF_NodeConnection[]{ + new SF_NodeConnection(this,"-",ConType.cOutput,ValueType.VTvPending,false).Outputting(OutChannel.All), + new SF_NodeConnection(this,"In",ConType.cInput,ValueType.VTvPending,false).SetRequired(true) + }; + */ + //base.conGroup = new SFNCG_Append( connectors[0], connectors[1], connectors[2] ); + } + + public override void Initialize() { + base.Initialize( "Comp. Mask" ); + base.SearchName = "ComponentMask"; + base.showColor = true; + base.shaderGenMode = ShaderGenerationMode.Modal; + UseLowerReadonlyValues( true ); + UseLowerPropertyBox( true, true ); + SFN_ComponentMask.outputChanColors[3] = SF_NodeConnector.colorEnabledDefault; + + + popupStyle = new GUIStyle( EditorStyles.miniButton ); + popupStyle.alignment = TextAnchor.MiddleCenter; + popupStyle.fontSize = 12; + popupStyle.fontStyle = FontStyle.Bold; + + connectors = new SF_NodeConnector[]{ + SF_NodeConnector.Create(this,"OUT", "-", ConType.cOutput, ValueType.VTvPending,false) .Outputting(OutChannel.All), + SF_NodeConnector.Create(this,"IN", "In", ConType.cInput, ValueType.VTvPending,false) .SetRequired(true), + SF_NodeConnector.Create(this,"R", "R", ConType.cOutput, ValueType.VTv1) .WithColor(Color.red) .Outputting(OutChannel.R), + SF_NodeConnector.Create(this,"G", "G", ConType.cOutput, ValueType.VTv1) .WithColor(Color.green) .Outputting(OutChannel.G), + SF_NodeConnector.Create(this,"B", "B", ConType.cOutput, ValueType.VTv1) .WithColor(Color.blue) .Outputting(OutChannel.B), + SF_NodeConnector.Create(this,"A", "A", ConType.cOutput, ValueType.VTv1) .Outputting(OutChannel.A) + }; + outCompCount = 1; + UpdateOutput(); + } + + + public override int GetEvaluatedComponentCount() { + return outCompCount; + } + + public override bool IsUniformOutput() { + if( GetInputIsConnected("IN") && !GetInputData( "IN" ).uniform ) + return false; + return true; + } + + + // New system + public override void RefreshValue() { + RefreshValue( 1, 1 ); + } + + public override string[] ExtraPassedFloatProperties() { + return new string[]{ + "ChR", + "ChG", + "ChB", + "ChA" + }; + } + + public override string[] GetModalModes() { + return new string[]{ + "CC1", + "CC2", + "CC3", + "CC4" + }; + } + + public override void PrepareRendering( Material mat ) { + mat.SetFloat( "_chr", (int)components[0] ); + mat.SetFloat( "_chg", (int)components[1] ); + mat.SetFloat( "_chb", (int)components[2] ); + mat.SetFloat( "_cha", (int)components[3] ); + } + + public override string GetCurrentModalMode() { + if( components[1] == CompChannel.off ) + return "CC1"; + if( components[2] == CompChannel.off ) + return "CC2"; + if( components[3] == CompChannel.off ) + return "CC3"; + return "CC4"; + } + + public override string[] GetBlitOutputLines( string mode ) { + + string s = ""; + if( mode == "CC1" ) + s = "_in[_chr].xxxx"; + if( mode == "CC2" ) + s = "float4(_in[_chr],_in[_chg],0,0)"; + if( mode == "CC3" ) + s = "float4(_in[_chr],_in[_chg],_in[_chb],0)"; + if( mode == "CC4" ) + s = "float4(_in[_chr],_in[_chg],_in[_chb],_in[_cha])"; + + return new string[]{ s }; + } + + public override string Evaluate( OutChannel channel = OutChannel.All ) { + + //if( outCompCount == inCompCount ) + // return GetConnectorByStringID( "IN" ).TryEvaluate(); // Unchanged // No! + + + string componentString = "."; + + for( int i = 0; i < outCompCount; i++ ) { // Build component string + componentString += components[i].ToString(); + } + + return GetConnectorByStringID( "IN" ).TryEvaluate() + componentString; + } + + static string[] writtenNumber = new string[]{"first", "second", "third", "fourth"}; + + int outCompCount = 1; + int inCompCount = 4; + + public override void DrawLowerPropertyBox() { + + inCompCount = 4; + if( !connectors[1].IsConnected() ) { + GUI.enabled = false; + } else { + inCompCount = connectors[1].GetCompCount(); + if( inCompCount > 4 ) + inCompCount = 4; + } + + Rect r = lowerRect; + r.width /= 4; + + bool changed = false; + + EditorGUI.BeginChangeCheck(); + for( int i = 0; i < 4; i++ ) { + + + // Make sure they are valid + if((int)components[i] >= inCompCount){ + components[i] = (CompChannel)(inCompCount-1); + changed = true; + } + + + string[][] labels = (i == 0) ? compLabelsFirst : compLabels; + int labelOffset = (i == 0) ? 0 : -1; // When skipping OFF + + if(!GUI.enabled && i != 0) + components[i] = CompChannel.off; + + if(connectors[1].IsConnected()){ + + int curDisplayIndex = (int)components[i]-labelOffset; + string[] dispLabels = labels[inCompCount-1]; + GUI.color = chanColors[Mathf.Clamp((int)components[i]+1,0,4)]; + + components[i] = (CompChannel)(UndoablePopup( r, curDisplayIndex, dispLabels, "set "+writtenNumber[i]+" component mask channel", popupStyle )+labelOffset); + + //components[i] = (CompChannel)(EditorGUI.Popup( r, curDisplayIndex, dispLabels, popupStyle )+labelOffset); + } + + + if( components[i] == CompChannel.off ) + GUI.enabled = false; // Disable following buttons + + r.x += r.width; + } + + bool changedCompCount = UpdateOutCompCount(); + UpdateOutput(); + if( EditorGUI.EndChangeCheck() || changedCompCount || changed ) { + + OnUpdateNode(); + } + + + GUI.enabled = true; + + } + + bool UpdateOutCompCount() { // returns true if changed + int prev = outCompCount; + outCompCount = 0; + for( int i = 0; i < 4; i++ ) { + if( components[i] != CompChannel.off ) + outCompCount++; + } + if( outCompCount == 0 ) { + outCompCount = 1; + } + + if(outCompCount != prev) + return true; + return false; + + } + + void UpdateOutput() { + + // Set proper value types and component count + UpdateOutCompCount(); + texture.CompCount = outCompCount; + switch( outCompCount ) { + case 1: + connectors[0].valueType = ValueType.VTv1; + break; + case 2: + connectors[0].valueType = ValueType.VTv2; + break; + case 3: + connectors[0].valueType = ValueType.VTv3; + break; + case 4: + connectors[0].valueType = ValueType.VTv4; + break; + default: + connectors[0].valueType = ValueType.VTvPending; + texture.CompCount = 4; + break; + } + + + + // Rename the label + + string label = ""; + + if( connectors[0].valueType == ValueType.VTvPending ) { + label = "-"; + } else { + for( int i = 0; i < outCompCount; i++ ) { // Build component string + int id = (int)components[i]; + label += compLabels[3][id+1]; + } + } + connectors[0].label = label; + + connectors[0].color = outCompCount == 1 ? outputChanColors[Mathf.Clamp((int)components[0],0,3)] : SF_NodeConnector.colorEnabledDefault; + + + SF_NodeConnector inCon = GetConnectorByStringID( "IN" ); + if(inCon.IsConnected()){ + for(int i=0;i<4;i++){ + + if(i < outCompCount && outCompCount > 1){ + connectors[i+2].enableState = EnableState.Enabled; + } else { + connectors[i+2].enableState = EnableState.Hidden; + connectors[i+2].Disconnect(); + + } + + + int id = (int)components[i]; + connectors[i+2].label = compLabels[3][id+1]; + + connectors[i+2].color = outputChanColors[Mathf.Clamp(id,0,3)]; + } + + } + } + + + public override float EvalCPU( int c ) { + CompChannel channel = components[c]; // Get the channel the user selected for component i + if( channel == CompChannel.off ) { + if(outCompCount > 1) + return 0f; // Make remaining channels black if using more than one component + return GetInputData( "IN", (int)components[0] ); // Repeat same value when using one component + } + return GetInputData( "IN", (int)channel); + } + + public override string SerializeSpecialData() { + string s = ""; + s += "cc1:" + (int)components[0] + ","; + s += "cc2:" + (int)components[1] + ","; + s += "cc3:" + (int)components[2] + ","; + s += "cc4:" + (int)components[3]; + return s; + } + + public override void DeserializeSpecialData( string key, string value ) { + + switch( key ) { + case ( "cc1" ): + if(value == "4") + value = "-1"; + components[0] = (CompChannel)int.Parse( value ); + break; + case ( "cc2" ): + if(value == "4") + value = "-1"; + components[1] = (CompChannel)int.Parse( value ); + break; + case ( "cc3" ): + if(value == "4") + value = "-1"; + components[2] = (CompChannel)int.Parse( value ); + break; + case ( "cc4" ): + if(value == "4") + value = "-1"; + components[3] = (CompChannel)int.Parse( value ); + break; + } + + UpdateOutput(); + OnUpdateNode(); + } + + } +} \ No newline at end of file diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ComponentMask.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ComponentMask.cs.meta new file mode 100644 index 00000000..564a0cf7 --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ComponentMask.cs.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: c5cee9180050a794790a872678f78ed5 +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ConstantClamp.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ConstantClamp.cs new file mode 100644 index 00000000..0d336203 --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ConstantClamp.cs @@ -0,0 +1,126 @@ +using UnityEngine; +using UnityEditor; +using System.Collections; +//using System; + +namespace ShaderForge { + + [System.Serializable] + public class SFN_ConstantClamp : SF_Node { + + // SF_Node tNode; + + public float min = 0f; + public float max = 1f; + + + public SFN_ConstantClamp() { + + } + + + public override void Initialize() { + base.Initialize( "Clamp (Simple)" ); + base.SearchName = "Clamp Simple"; + base.showColor = true; + UseLowerReadonlyValues( true ); + base.UseLowerPropertyBox( true, true ); + base.shaderGenMode = ShaderGenerationMode.ValuePassing; + + //SF_NodeConnection lerpCon; + connectors = new SF_NodeConnector[]{ + SF_NodeConnector.Create(this,"OUT","",ConType.cOutput,ValueType.VTvPending,false), + SF_NodeConnector.Create(this,"IN","",ConType.cInput,ValueType.VTvPending,false).SetRequired(true) + }; + + base.conGroup = ScriptableObject.CreateInstance().Initialize( connectors[0], connectors[1] ); + } + + public override void OnUpdateNode( NodeUpdateType updType, bool cascade = true ) { + if( InputsConnected() ) + RefreshValue( 1, 1 ); + base.OnUpdateNode( updType ); + } + + public override bool IsUniformOutput() { + return GetInputData( "IN" ).uniform; + } + + public override int GetEvaluatedComponentCount() { + return Mathf.Max( this["IN"].GetCompCount() ); + } + + public override string[] ExtraPassedFloatProperties() { + return new string[]{ + "ClampMin", + "ClampMax" + }; + } + + public override void PrepareRendering( Material mat ) { + mat.SetFloat( "_clampmin", min ); + mat.SetFloat( "_clampmax", max ); + } + + public override string[] GetBlitOutputLines( ) { + return new string[] { "clamp( _in, _clampmin, _clampmax )" }; + } + + /* + public void UndoableEnterableFloatField(Rect r, ref float value, string undoMessage, GUIStyle style){ + SF_GUI.EnterableFloatField(this, r, ref value, null ); + } +*/ + + + + public override void DrawLowerPropertyBox() { + + EditorGUI.BeginChangeCheck(); + Rect r = lowerRect; + r.width /= 4; + GUI.Label( r, "Min", EditorStyles.miniLabel ); + r.x += r.width; + //SF_GUI.EnterableFloatField(this, r, ref min, null ); + UndoableEnterableFloatField(r, ref min, "min value", null); + r.x += r.width; + GUI.Label( r, "Max", EditorStyles.miniLabel ); + r.x += r.width; + //SF_GUI.EnterableFloatField( this, r, ref max, null ); + UndoableEnterableFloatField(r, ref max, "max value", null); + + } + + + public override string Evaluate( OutChannel channel = OutChannel.All ) { + return "clamp(" + GetConnectorByStringID( "IN" ).TryEvaluate() + "," + min + "," + max + ")"; + } + + // TODO Expose more out here! + public override float EvalCPU( int c ) { + if( GetEvaluatedComponentCount() != 1 ) + if( c + 1 > GetEvaluatedComponentCount() ) + return 0f; + return Mathf.Clamp( GetInputData( "IN", c ), min, max ); + } + + public override string SerializeSpecialData() { + string s = "min:" + min + ","; + s += "max:" + max; + return s; + } + + public override void DeserializeSpecialData( string key, string value ) { + switch( key ) { + case "min": + min = float.Parse( value ); + break; + case "max": + max = float.Parse( value ); + break; + } + } + + + } +} \ No newline at end of file diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ConstantClamp.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ConstantClamp.cs.meta new file mode 100644 index 00000000..db201c9b --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ConstantClamp.cs.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: e17f3f3b88cf18843b95000bfd9c1bba +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ConstantLerp.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ConstantLerp.cs new file mode 100644 index 00000000..c5489179 --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ConstantLerp.cs @@ -0,0 +1,125 @@ +using UnityEngine; +using UnityEditor; +using System.Collections; +//using System; + +namespace ShaderForge { + + [System.Serializable] + public class SFN_ConstantLerp : SF_Node { + + // SF_Node tNode; + + public float lerp_a = 0f; + public float lerp_b = 1f; + + + public SFN_ConstantLerp() { + + } + + + public override void Initialize() { + base.Initialize( "Lerp (Simple)" ); + base.SearchName = "Lerp Simple"; + base.showColor = true; + UseLowerReadonlyValues( true ); + base.UseLowerPropertyBox( true, true ); + base.shaderGenMode = ShaderGenerationMode.ValuePassing; + + //SF_NodeConnection lerpCon; + connectors = new SF_NodeConnector[]{ + SF_NodeConnector.Create(this,"OUT","",ConType.cOutput,ValueType.VTvPending,false), + SF_NodeConnector.Create(this,"IN","T",ConType.cInput,ValueType.VTvPending,false).SetRequired(true) + }; + + base.conGroup = ScriptableObject.CreateInstance().Initialize( connectors[0], connectors[1] ); + } + + public override void OnUpdateNode( NodeUpdateType updType, bool cascade = true ) { + if( InputsConnected() ) + RefreshValue( 1, 1 ); + base.OnUpdateNode( updType ); + } + + public override bool IsUniformOutput() { + return GetInputData( "IN" ).uniform; + } + + public override int GetEvaluatedComponentCount() { + return Mathf.Max( this["IN"].GetCompCount() ); + } + + + + public override string[] ExtraPassedFloatProperties() { + return new string[]{ + "LerpA", + "LerpB" + }; + } + + public override void PrepareRendering( Material mat ) { + mat.SetFloat( "_lerpa", lerp_a ); + mat.SetFloat( "_lerpb", lerp_b ); + } + + public override string[] GetBlitOutputLines( ) { + return new string[] { "lerp(_lerpa, _lerpb, _in)" }; + } + + + + public override void DrawLowerPropertyBox() { + + //EditorGUI.BeginChangeCheck(); + Rect r = lowerRect; + r.width /= 8; + GUI.Label( r, "A" ); + r.x += r.width; + r.width *= 3; + //SF_GUI.EnterableFloatField(this, r, ref lerp_a, null ); + UndoableEnterableFloatField(r, ref lerp_a, "A value",null); + r.x += r.width; + r.width /= 3; + GUI.Label( r, "B" ); + r.x += r.width; + r.width *= 3; + //SF_GUI.EnterableFloatField( this, r, ref lerp_b, null ); + UndoableEnterableFloatField(r, ref lerp_b, "B value",null); + + } + + + public override string Evaluate( OutChannel channel = OutChannel.All ) { + return "lerp(" + lerp_a + "," + lerp_b + "," + GetConnectorByStringID( "IN" ).TryEvaluate() + ")"; + } + + public override float EvalCPU( int c ) { + return Lerp( lerp_a, lerp_b, GetInputData( "IN", c ) ); + } + + public float Lerp( float a, float b, float t ) { + return ( ( 1f - t ) * a + t * b ); + } + + public override string SerializeSpecialData() { + string s = "a:" + lerp_a + ","; + s += "b:" + lerp_b; + return s; + } + + public override void DeserializeSpecialData( string key, string value ) { + switch( key ) { + case "a": + lerp_a = float.Parse( value ); + break; + case "b": + lerp_b = float.Parse( value ); + break; + } + } + + + } +} \ No newline at end of file diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ConstantLerp.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ConstantLerp.cs.meta new file mode 100644 index 00000000..d698ecd2 --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ConstantLerp.cs.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 922be1943b72bf34ab001061c89b1aa8 +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Cos.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Cos.cs new file mode 100644 index 00000000..1176345a --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Cos.cs @@ -0,0 +1,26 @@ +using UnityEngine; + +namespace ShaderForge { + + [System.Serializable] + public class SFN_Cos : SF_Node_Arithmetic { + + public SFN_Cos() { + } + + public override void Initialize() { + base.Initialize( "Cos" ); + base.PrepareArithmetic( 1 ); + base.shaderGenMode = ShaderGenerationMode.SimpleFunction; + } + + public override string Evaluate( OutChannel channel = OutChannel.All ) { + return "cos(" + GetConnectorByStringID( "IN" ).TryEvaluate() + ")"; + } + + public override float EvalCPU( int c ) { + return Mathf.Cos( GetInputData( "IN", c ) ); + } + + } +} \ No newline at end of file diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Cos.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Cos.cs.meta new file mode 100644 index 00000000..96126f0d --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Cos.cs.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 980e537a5b3f41d43a7ed5b48d568bc4 +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Cross.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Cross.cs new file mode 100644 index 00000000..58973676 --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Cross.cs @@ -0,0 +1,36 @@ +using UnityEngine; + +namespace ShaderForge { + + [System.Serializable] + public class SFN_Cross : SF_Node_Arithmetic { + + public SFN_Cross() { + + } + + public override void Initialize() { + base.Initialize( "Cross" ); + base.PrepareArithmetic( 2, ValueType.VTv3, ValueType.VTv3 ); + base.shaderGenMode = ShaderGenerationMode.CustomFunction; + } + + public override int GetEvaluatedComponentCount() { + return 3; + } + + public override string[] GetBlitOutputLines() { + return new string[] { "float4(cross(_a.xyz,_b.xyz),0);" }; + } + + public override string Evaluate( OutChannel channel = OutChannel.All ) { + return "cross(" + GetConnectorByStringID( "A" ).TryEvaluate() + "," + GetConnectorByStringID( "B" ).TryEvaluate() + ")"; + } + + public override Vector4 EvalCPU() { + return SF_Tools.Cross( GetInputData( "A" ).dataUniform, GetInputData( "B" ).dataUniform ); + } + + + } +} \ No newline at end of file diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Cross.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Cross.cs.meta new file mode 100644 index 00000000..82500531 --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Cross.cs.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 859cb746c02cece4a83a6c8ac12751c8 +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Cubemap.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Cubemap.cs new file mode 100644 index 00000000..be11f905 --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Cubemap.cs @@ -0,0 +1,203 @@ +using UnityEngine; +using UnityEditor; +using System.Collections; +using System.Reflection; +using System; + +namespace ShaderForge { + + [System.Serializable] + public class SFN_Cubemap : SF_Node { + + + public Cubemap cubemapAsset; + Texture2D textureAsset; + + + public CubemapFace previewFace; + + public SFN_Cubemap() { + + } + + + public override void Initialize() { + base.Initialize( "Cubemap" ); + base.UseLowerPropertyBox( true, true ); + base.texture.CompCount = 4; + property = ScriptableObject.CreateInstance().Initialize( this ); + + connectors = new SF_NodeConnector[]{ + SF_NodeConnector.Create(this,"DIR","DIR",ConType.cInput,ValueType.VTv3), + SF_NodeConnector.Create(this,"MIP","MIP",ConType.cInput,ValueType.VTv1), + SF_NodeConnector.Create(this,"RGB","RGB",ConType.cOutput,ValueType.VTv3) .Outputting(OutChannel.RGB), + SF_NodeConnector.Create(this,"R","R",ConType.cOutput, ValueType.VTv1) .WithColor(Color.red) .Outputting(OutChannel.R), + SF_NodeConnector.Create(this,"G","G",ConType.cOutput,ValueType.VTv1) .WithColor(Color.green) .Outputting(OutChannel.G), + SF_NodeConnector.Create(this,"B","B",ConType.cOutput,ValueType.VTv1) .WithColor(Color.blue) .Outputting(OutChannel.B), + SF_NodeConnector.Create(this,"A","A",ConType.cOutput,ValueType.VTv1) .Outputting(OutChannel.A) + }; + } + + + public override bool IsUniformOutput() { + return false; + } + + // TODO: MIP selection + public override string Evaluate( OutChannel channel = OutChannel.All ) { + + + //float3 reflectDirection = reflect( -viewDirection, normalDirection ); + + string DIR = GetInputIsConnected( "DIR" ) ? GetConnectorByStringID( "DIR" ).TryEvaluate() : "viewReflectDirection"; + string func = GetInputIsConnected( "MIP" ) ? "texCUBElod" : "texCUBE"; + + if( GetInputIsConnected( "MIP" ) ) { + DIR = "float4(" + DIR + "," + GetConnectorByStringID( "MIP" ).TryEvaluate() + ")"; + } + + string s = func + "(" + property.GetVariable() + "," + DIR + ")"; + + return s; + } + + // TODO: EditorUtility.SetTemporarilyAllowIndieRenderTexture(true); + + + + + + public void RenderToTexture() { + + if( cubemapAsset == null ) { + Debug.Log( "Cubemap asset missing" ); + return; + } + + Texture2D tex = new Texture2D( cubemapAsset.width, cubemapAsset.height, TextureFormat.ARGB32, false ); + try{ + tex.SetPixels( cubemapAsset.GetPixels( previewFace ) ); + } catch( Exception e ) { + Debug.LogWarning("Cubemap texture preview failed: " + e.ToString()); + } + + tex.Apply(); + + + RenderTexture rt = new RenderTexture( cubemapAsset.width, cubemapAsset.height, 24, RenderTextureFormat.ARGB32, RenderTextureReadWrite.Default ); + rt.Create(); + Graphics.Blit( tex/*cubemapAsset/*GetTextureFaceAsset(CubemapFace.PositiveZ)*/, rt ); + RenderTexture.active = rt; + // The data is now in the RT, in an arbitrary res + // TODO: Sample it with normalized coords down into a 128x128 + // Save it temporarily in a texture + Texture2D temp = new Texture2D( cubemapAsset.width, cubemapAsset.height, TextureFormat.ARGB32, false ); + temp.ReadPixels( new Rect( 0, 0, cubemapAsset.width, cubemapAsset.height ), 0, 0 ); + + RenderTexture.active = null; + rt.Release(); // Remove RT + texture.ReadData( temp ); // Read Data from temp texture + UnityEngine.Object.DestroyImmediate( temp ); // Destroy temp texture + + } + + + public Texture GetTextureFaceAsset( CubemapFace face ) { + if( cubemapAsset == null ) + return null; + + // Reflection of this: + // TextureUtil.GetSourceTexture(Cubemap cubemapRef, CubemapFace face); + Debug.Log( "GET FACE ASSET:" ); + Type textureUtil = Type.GetType( "UnityEditor.TextureUtil,UnityEditor" ); + Debug.Log( "textureUtil = " + textureUtil ); + BindingFlags bfs = BindingFlags.Public | BindingFlags.NonPublic | BindingFlags.Static; + MethodInfo getSourceTexture = textureUtil.GetMethod( "GetSourceTexture", bfs, null, new Type[] { typeof( Cubemap ), typeof( CubemapFace ) }, null ); + Debug.Log( "getSourceTexture = " + getSourceTexture ); + Texture2D tex = (Texture2D)getSourceTexture.Invoke( null, new object[] { cubemapAsset, face } ); + Debug.Log( "tex = " + tex ); + + return tex; + } + + public override void OnDelete() { + cubemapAsset = null; + } + + + public override bool Draw() { + ProcessInput(); + DrawHighlight(); + PrepareWindowColor(); + DrawWindow(); + ResetWindowColor(); + return true;//!CheckIfDeleted(); + } + + public override void NeatWindow( ) { + + GUI.skin.box.clipping = TextClipping.Overflow; + + GUI.BeginGroup( rect ); + + EditorGUI.BeginChangeCheck(); + DrawLowerPropertyBox(); + bool changedFace = EditorGUI.EndChangeCheck(); + + //GUI.DragWindow(); + + EditorGUI.BeginChangeCheck(); + + Cubemap newCubemap = (Cubemap)EditorGUI.ObjectField( rectInner, cubemapAsset, typeof( Cubemap ), false ); + if(newCubemap != cubemapAsset){ + if(newCubemap == null){ + UndoRecord("unassign cubemap from " + property.nameDisplay); + } else { + UndoRecord("switch cubemap to " + newCubemap.name + " in " + property.nameDisplay); + } + cubemapAsset = newCubemap; + } + + + + if( changedFace || EditorGUI.EndChangeCheck() ) { + RenderToTexture(); + OnUpdateNode(); + } + GUI.EndGroup(); + + } + + public override void DrawLowerPropertyBox() { + PrepareWindowColor(); + previewFace = (CubemapFace)UndoableEnumPopup(lowerRect, previewFace, "switch displayed cubemap face"); + //previewFace = (CubemapFace)EditorGUI.EnumPopup( lowerRect, previewFace ); + ResetWindowColor(); + } + + public override string SerializeSpecialData() { + string s = property.Serialize() + ","; + if( cubemapAsset != null ) + s += "cube:" + SF_Tools.AssetToGUID( cubemapAsset ) + ","; + s += "pvfc:" + (int)previewFace; + return s; + } + + public override void DeserializeSpecialData( string key, string value ) { + property.Deserialize( key, value ); + switch( key ) { + case "cube": + cubemapAsset = (Cubemap)SF_Tools.GUIDToAsset( value, typeof( Cubemap ) ); + break; + case "pvfc": + previewFace = (CubemapFace)int.Parse( value ); + break; + } + if( cubemapAsset != null ) + RenderToTexture(); + + } + + + } +} diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Cubemap.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Cubemap.cs.meta new file mode 100644 index 00000000..3c06ebde --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Cubemap.cs.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: d192fbfcd1bab084691cf8513ba322fd +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_DDX.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_DDX.cs new file mode 100644 index 00000000..7357e40b --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_DDX.cs @@ -0,0 +1,26 @@ +using UnityEngine; + +namespace ShaderForge { + + [System.Serializable] + public class SFN_DDX : SF_Node_Arithmetic { + + public SFN_DDX() { + } + + public override void Initialize() { + base.Initialize( "DDX" ); + base.PrepareArithmetic( 1 ); + base.shaderGenMode = ShaderGenerationMode.SimpleFunction; + } + + public override string Evaluate( OutChannel channel = OutChannel.All ) { + return "ddx(" + GetConnectorByStringID( "IN" ).TryEvaluate() + ")"; + } + + public override float EvalCPU( int c ) { + return GetInputData( "IN", c ); + } + + } +} \ No newline at end of file diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_DDX.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_DDX.cs.meta new file mode 100644 index 00000000..ad4aa268 --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_DDX.cs.meta @@ -0,0 +1,9 @@ +fileFormatVersion: 2 +guid: 99860db2c026be84f80f5b2108261fff +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_DDXY.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_DDXY.cs new file mode 100644 index 00000000..99d29841 --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_DDXY.cs @@ -0,0 +1,30 @@ +using UnityEngine; + +namespace ShaderForge { + + [System.Serializable] + public class SFN_DDXY : SF_Node_Arithmetic { + + public SFN_DDXY() { + } + + public override void Initialize() { + base.Initialize( "DDXY" ); + base.PrepareArithmetic( 1 ); + base.shaderGenMode = ShaderGenerationMode.CustomFunction; + } + + public override string[] GetBlitOutputLines() { + return new string[] { "fwidth(_in)" }; + } + + public override string Evaluate( OutChannel channel = OutChannel.All ) { + return "fwidth(" + GetConnectorByStringID( "IN" ).TryEvaluate() + ")"; + } + + public override float EvalCPU( int c ) { + return GetInputData( "IN", c ); + } + + } +} \ No newline at end of file diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_DDXY.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_DDXY.cs.meta new file mode 100644 index 00000000..87b2aece --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_DDXY.cs.meta @@ -0,0 +1,12 @@ +fileFormatVersion: 2 +guid: 0a3921307ddb3d544a630d3475e57bb3 +timeCreated: 1443603932 +licenseType: Pro +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_DDY.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_DDY.cs new file mode 100644 index 00000000..986fa974 --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_DDY.cs @@ -0,0 +1,26 @@ +using UnityEngine; + +namespace ShaderForge { + + [System.Serializable] + public class SFN_DDY : SF_Node_Arithmetic { + + public SFN_DDY() { + } + + public override void Initialize() { + base.Initialize( "DDY" ); + base.PrepareArithmetic( 1 ); + base.shaderGenMode = ShaderGenerationMode.SimpleFunction; + } + + public override string Evaluate( OutChannel channel = OutChannel.All ) { + return "ddy(" + GetConnectorByStringID( "IN" ).TryEvaluate() + ")"; + } + + public override float EvalCPU( int c ) { + return GetInputData( "IN", c ); + } + + } +} \ No newline at end of file diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_DDY.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_DDY.cs.meta new file mode 100644 index 00000000..d59de2f4 --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_DDY.cs.meta @@ -0,0 +1,9 @@ +fileFormatVersion: 2 +guid: 120c745ac37b86a42863ba7882f193eb +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Depth.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Depth.cs new file mode 100644 index 00000000..711f1aa4 --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Depth.cs @@ -0,0 +1,37 @@ +using UnityEngine; +using UnityEditor; +using System.Collections; + +namespace ShaderForge { + + [System.Serializable] + public class SFN_Depth : SF_Node { + + + public SFN_Depth() { + + } + + public override void Initialize() { + base.Initialize( "Depth", InitialPreviewRenderMode.BlitSphere ); + base.showColor = true; + base.UseLowerPropertyBox( false ); + base.texture.CompCount = 1; + base.neverDefineVariable = true; + connectors = new SF_NodeConnector[]{ + SF_NodeConnector.Create(this,"OUT","",ConType.cOutput,ValueType.VTv1) + }; + } + + public override Vector4 EvalCPU() { + return new Color( 0.3f, 0.6f, 0.3f, 1f ); + } + + // (mul( UNITY_MATRIX_V, float4((_WorldSpaceCameraPos.rgb-i.posWorld.rgb),0) ).b - _ProjectionParams.g) + + public override string Evaluate( OutChannel channel = OutChannel.All ) { + return "partZ"; + } + + } +} \ No newline at end of file diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Depth.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Depth.cs.meta new file mode 100644 index 00000000..3541f1f4 --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Depth.cs.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 13975082ad41249e4a2ea11f1a3a309f +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_DepthBlend.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_DepthBlend.cs new file mode 100644 index 00000000..0d95b6f0 --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_DepthBlend.cs @@ -0,0 +1,43 @@ +using UnityEngine; +using UnityEditor; +using System.Collections; + +namespace ShaderForge { + + [System.Serializable] + public class SFN_DepthBlend : SF_Node { + + + public SFN_DepthBlend() { + + } + + public override void Initialize() { + base.Initialize( "Depth Blend" ); + base.showColor = true; + base.UseLowerPropertyBox( false ); + base.texture.CompCount = 1; + connectors = new SF_NodeConnector[]{ + SF_NodeConnector.Create(this,"OUT","",ConType.cOutput,ValueType.VTv1), + SF_NodeConnector.Create(this,"DIST","Dist",ConType.cInput,ValueType.VTv1), + }; + } + + public override Vector4 EvalCPU() { + return new Color( 0.3f, 0.6f, 0.3f, 1f ); + } + + public override string Evaluate( OutChannel channel = OutChannel.All ) { + + string dist = ""; + + if( GetConnectorByStringID("DIST").IsConnected()){ + dist = "/" + GetInputCon("DIST").TryEvaluate(); + } + + + return "saturate((sceneZ-partZ)" + dist + ")"; + } + + } +} \ No newline at end of file diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_DepthBlend.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_DepthBlend.cs.meta new file mode 100644 index 00000000..07dba0a3 --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_DepthBlend.cs.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: e6258458743164db7896c9d9beb16a00 +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Desaturate.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Desaturate.cs new file mode 100644 index 00000000..1cabc8fe --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Desaturate.cs @@ -0,0 +1,112 @@ +using UnityEngine; +using UnityEditor; +using System.Collections; +//using System; + +namespace ShaderForge { + + [System.Serializable] + public class SFN_Desaturate : SF_Node { + + // SF_Node tNode; + + public SFN_Desaturate() { + + } + + + public override void Initialize() { + base.Initialize( "Desaturate" ); + base.showColor = true; + base.shaderGenMode = ShaderGenerationMode.Modal; + UseLowerReadonlyValues( true ); + + //SF_NodeConnection lerpCon; + connectors = new SF_NodeConnector[]{ + SF_NodeConnector.Create(this,"OUT","",ConType.cOutput,ValueType.VTvPending,false), + SF_NodeConnector.Create(this,"COL","Col",ConType.cInput,ValueType.VTvPending,false).SetRequired(true).TypecastTo(3), + SF_NodeConnector.Create(this,"DES","Des",ConType.cInput,ValueType.VTv1,false).SetRequired(false) + }; + + base.conGroup = ScriptableObject.CreateInstance().Initialize( connectors[0], connectors[1] ); + (conGroup as SFNCG_Arithmetic).lockedOutput = true; + + } + + public override void OnUpdateNode( NodeUpdateType updType, bool cascade = true ) { + if(GetEvaluatedComponentCount() == 3){ + this["OUT"].valueType = ValueType.VTv3; + } else { + this["OUT"].valueType = ValueType.VTv1; + } + if( InputsConnected() ) + RefreshValue( 1, 2 ); + base.OnUpdateNode( updType ); + } + + public override bool IsUniformOutput() { + if(this["DES"].IsConnected()) + return ( GetInputData( "COL" ).uniform && GetInputData( "DES" ).uniform ); + return GetInputData( "COL" ).uniform; + } + + public override int GetEvaluatedComponentCount() { + return this["DES"].IsConnected() ? 3 : 1; + } + + public override string[] GetModalModes() { + return new string[]{ + "REQONLY", + "DES" + }; + } + + public override string GetCurrentModalMode() { + if( GetInputIsConnected( "DES" ) ) { + return "DES"; + } + return "REQONLY"; + } + + public override string[] GetBlitOutputLines( string mode ) { + + string dotStr = "dot(_col,float3(0.3,0.59,0.11))"; + + if( mode == "DES" ) { + dotStr = "lerp(_col, " + dotStr + ".xxxx, _des)"; + } + + return new string[]{ dotStr }; + } + + public override string Evaluate( OutChannel channel = OutChannel.All ) { + + string col = GetInputCon( "COL" ).Evaluate(); + string lum = "float3(0.3,0.59,0.11)"; + string dot = "dot("+col+","+lum+")"; + + if( this["DES"].IsConnected() ) { + string desat = GetInputCon( "DES" ).Evaluate(); + return "lerp(" + col + "," + dot + "," + desat + ")"; + } else { + return dot; // Fully desaturated + } + } + + public override Vector4 EvalCPU() { + + Vector4 col = GetInputData( "COL" ).dataUniform; + Vector4 lum = new Color( 0.3f, 0.59f, 0.11f, 0f ); + Vector4 dot = Vector4.Dot( col, lum ) * Vector4.one; + + float desat = 1f; + if( this["DES"].IsConnected() ) { + desat = GetInputData( "DES" ).dataUniform[0]; + } + + return Vector4.Lerp( col, dot, desat ); + } + + + } +} \ No newline at end of file diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Desaturate.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Desaturate.cs.meta new file mode 100644 index 00000000..153877db --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Desaturate.cs.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 9ebe66cf4036ce547a0fc395d515f199 +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Distance.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Distance.cs new file mode 100644 index 00000000..e3f937af --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Distance.cs @@ -0,0 +1,52 @@ +using UnityEngine; + +namespace ShaderForge { + + [System.Serializable] + public class SFN_Distance : SF_Node_Arithmetic { + + public SFN_Distance() { + + } + + public override void Initialize() { + base.Initialize( "Distance" ); + base.PrepareArithmetic( 2, ValueType.VTvPending, ValueType.VTv1 ); + base.shaderGenMode = ShaderGenerationMode.SimpleFunction; + ( base.conGroup as SFNCG_Arithmetic ).LockOutType(); + + } + + public override int GetEvaluatedComponentCount() { + return 1; + } + + public override string Evaluate( OutChannel channel = OutChannel.All ) { + return "distance(" + GetConnectorByStringID( "A" ).TryEvaluate() + "," + GetConnectorByStringID( "B" ).TryEvaluate() + ")"; + } + + public override Vector4 EvalCPU() { + + float dist = 0f; + switch( Mathf.Max( GetInputData( "A" ).CompCount, GetInputData( "B" ).CompCount ) ) { + case 1: + dist = Mathf.Abs( GetInputData( "A" ).dataUniform[0] - GetInputData( "B" ).dataUniform[0] ); + break; + case 2: + dist = ( ( (Vector2)GetInputData( "A" ).dataUniform ) - ( (Vector2)GetInputData( "B" ).dataUniform ) ).magnitude; + break; + case 3: + dist = ( ( (Vector3)GetInputData( "A" ).dataUniform ) - ( (Vector3)GetInputData( "B" ).dataUniform ) ).magnitude; + break; + default: + dist = ( GetInputData( "A" ).dataUniform - GetInputData( "B" ).dataUniform ).magnitude; + break; + } + + return dist * Vector4.one; + + } + + + } +} \ No newline at end of file diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Distance.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Distance.cs.meta new file mode 100644 index 00000000..6a0290cc --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Distance.cs.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 43af2b1572b552e418281a533a9719eb +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Divide.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Divide.cs new file mode 100644 index 00000000..79eace3b --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Divide.cs @@ -0,0 +1,43 @@ +using UnityEngine; +using UnityEditor; +using System.Collections; +using System; + +namespace ShaderForge { + + [System.Serializable] + public class SFN_Divide : SF_Node_Arithmetic { + + public SFN_Divide() { + + } + + public override void Initialize() { + base.Initialize( "Divide" ); + base.PrepareArithmetic(); + base.shaderGenMode = ShaderGenerationMode.CustomFunction; + } + + public override string Evaluate( OutChannel channel = OutChannel.All ) { + return "(" + GetConnectorByStringID( "A" ).TryEvaluate() + "/" + GetConnectorByStringID( "B" ).TryEvaluate() + ")"; + } + + public override string[] GetBlitOutputLines() { + return new string[] { "_a/_b" }; + } + + public override float EvalCPU( int c ) { + float a = GetInputData( "A", c ); + float b = GetInputData( "B", c ); + + if( b == 0f ) { + if( a == 0f ) + return 1f; + return ( a > 0 ? float.MaxValue : float.MinValue ); + } + return a / b; + } + + + } +} \ No newline at end of file diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Divide.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Divide.cs.meta new file mode 100644 index 00000000..57879bd4 --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Divide.cs.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: b453280af8376424fa6c495f5b4d5ab1 +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Dot.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Dot.cs new file mode 100644 index 00000000..fea8cb65 --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Dot.cs @@ -0,0 +1,137 @@ +using UnityEngine; +using UnityEditor; +using System.Collections; +using System; + +namespace ShaderForge { + + [System.Serializable] + public class SFN_Dot : SF_Node_Arithmetic { + + + public enum DotType { Standard, Positive, Negative, Abs, Normalized }; + public DotType dotType = DotType.Standard; + + public SFN_Dot() { + + } + + public override void Initialize() { + base.Initialize( "Dot" ); + base.texture.CompCount = 1; + base.UseLowerPropertyBox( true, true ); + base.PrepareArithmetic(2, ValueType.VTvPending, ValueType.VTv1); + base.shaderGenMode = ShaderGenerationMode.Modal; + ( base.conGroup as SFNCG_Arithmetic ).LockOutType(); + } + + public override int GetEvaluatedComponentCount() { + return 1; + } + + public override string[] GetModalModes() { + return new string[]{ + "STD", + "POS", + "NEG", + "ABS", + "NRM" + }; + } + + public override string GetCurrentModalMode() { + if( dotType == DotType.Positive ) + return "POS"; + if( dotType == DotType.Negative ) + return "NEG"; + if( dotType == DotType.Abs ) + return "ABS"; + if( dotType == DotType.Normalized ) + return "NRM"; + //if( dotType == DotType.Standard ) + return "STD"; + } + + public override string[] GetBlitOutputLines( string mode ) { + string dotStr = "dot(_a, _b)"; + switch( mode ) { + case "POS": + dotStr = "max(0," + dotStr + ")"; + break; + case "NEG": + dotStr = "min(0," + dotStr + ")"; + break; + case "ABS": + dotStr = "abs(" + dotStr + ")"; + break; + case "NRM": + dotStr = "0.5*" + dotStr + "+0.5"; + break; + } + return new string[]{dotStr}; + } + + public override string Evaluate( OutChannel channel = OutChannel.All ) { + + string dotStr = "dot(" + GetConnectorByStringID( "A" ).TryEvaluate() + "," + GetConnectorByStringID( "B" ).TryEvaluate() + ")"; + switch( dotType ) { + case DotType.Positive: + return "max(0," + dotStr + ")"; + case DotType.Negative: + return "min(0," + dotStr + ")"; + case DotType.Abs: + return "abs(" + dotStr + ")"; + case DotType.Normalized: + return "0.5*" + dotStr + "+0.5"; + } + return dotStr; + } + + public override Vector4 EvalCPU() { + + + int cc = Mathf.Max(GetInputCon("A").GetCompCount(), GetInputCon("B").GetCompCount()); + + float dot = SF_Tools.Dot( GetInputData( "A" ).dataUniform, GetInputData( "B" ).dataUniform, cc ); + + switch( dotType ) { + case DotType.Positive: + dot = Mathf.Max(0f,dot); + break; + case DotType.Negative: + dot = Mathf.Min(0f,dot); + break; + case DotType.Abs: + dot = Mathf.Abs(dot); + break; + case DotType.Normalized: + dot = 0.5f*dot+0.5f; + break; + } + + return dot * Vector4.one; + } + + public override void DrawLowerPropertyBox() { + EditorGUI.BeginChangeCheck(); + dotType = (DotType)UndoableEnumPopup( lowerRect, dotType, "dot product type" ); + if( EditorGUI.EndChangeCheck() ) + OnUpdateNode(); + } + + public override string SerializeSpecialData() { + return "dt:" + (int)dotType; + } + + public override void DeserializeSpecialData( string key, string value ) { + switch( key ) { + case "dt": + dotType = (DotType)int.Parse( value ); + break; + } + } + + + + } +} \ No newline at end of file diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Dot.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Dot.cs.meta new file mode 100644 index 00000000..59ebba5c --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Dot.cs.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 3d9849bf37434cb4da9729daf6ad3333 +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_E.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_E.cs new file mode 100644 index 00000000..c9c43dc1 --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_E.cs @@ -0,0 +1,20 @@ +using UnityEngine; +using UnityEditor; +using System.Collections; + +namespace ShaderForge { + + [System.Serializable] + public class SFN_E : SFN_Node_Constant { + + public SFN_E() { + } + + public override void Initialize() { + base.Initialize( "e" ); + base.SearchName = "EulersConstant"; + base.PrepareConstant( "const_e", "2.718281828459" ); + } + + } +} \ No newline at end of file diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_E.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_E.cs.meta new file mode 100644 index 00000000..92e4ca9c --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_E.cs.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 5e6843ca855bad643a35c23873e0a2ab +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Exp.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Exp.cs new file mode 100644 index 00000000..05514b57 --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Exp.cs @@ -0,0 +1,93 @@ +using UnityEngine; +using UnityEditor; +using System.Collections; +using System; + +namespace ShaderForge { + + [System.Serializable] + public class SFN_Exp : SF_Node_Arithmetic { + + + public enum ExpType { Exp, Exp2 }; + public ExpType expType = ExpType.Exp; + + public SFN_Exp() { + + } + + public override void Initialize() { + base.Initialize( "Exp" ); + base.UseLowerPropertyBox( true, true ); + base.PrepareArithmetic( 1, ValueType.VTvPending, ValueType.VTvPending ); + } + + public override string Evaluate( OutChannel channel = OutChannel.All ) { + + string inner = GetConnectorByStringID( "IN" ).TryEvaluate(); + switch( expType ) { + case ExpType.Exp: + return "exp(" + inner + ")"; + case ExpType.Exp2: + return "exp2(" + inner + ")"; + } + + return inner; + } + + public override string[] GetModalModes() { + return new string[]{ + "EXP", + "EXP2" + }; + } + + public override string GetCurrentModalMode() { + if( expType == ExpType.Exp2) + return "EXP2"; + return "EXP"; + } + + public override string[] GetBlitOutputLines( string mode ) { + return new string[]{ mode.ToLower() + "(_in)" }; + } + + public override float EvalCPU( int c ) { + + float inpDt = GetInputData( "IN", c ); + + switch( expType ) { + case ExpType.Exp: + inpDt = Mathf.Pow( 2.718281828459f, inpDt ); + break; + case ExpType.Exp2: + inpDt = Mathf.Pow( 2f, inpDt ); + break; + } + + return inpDt; + } + + public override void DrawLowerPropertyBox() { + EditorGUI.BeginChangeCheck(); + expType = (ExpType)EditorGUI.EnumPopup( lowerRect, expType ); + if( EditorGUI.EndChangeCheck() ) + OnUpdateNode(); + } + + public override string SerializeSpecialData() { + return "et:" + (int)expType; + } + + public override void DeserializeSpecialData( string key, string value ) { + switch( key ) { + case "et": + expType = (ExpType)int.Parse( value ); + break; + } + } + + + + } +} \ No newline at end of file diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Exp.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Exp.cs.meta new file mode 100644 index 00000000..7aa04eee --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Exp.cs.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 41a3320367346d84b9d27af7538971a8 +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_FaceSign.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_FaceSign.cs new file mode 100644 index 00000000..169e00c6 --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_FaceSign.cs @@ -0,0 +1,93 @@ +using UnityEngine; +using UnityEditor; +using System.Collections; + +namespace ShaderForge { + + [System.Serializable] + public class SFN_FaceSign : SF_Node { + + + public enum FaceSignType { ZeroAndOne = 0, PlusMinusOne = 1 }; + public static string[] faceSignTypeStr = new string[] { "1 and 0", "1 and -1" }; + public FaceSignType currentType = FaceSignType.ZeroAndOne; + + public SFN_FaceSign() { + + } + + public override void Initialize() { + base.Initialize( "Face Sign", InitialPreviewRenderMode.BlitQuad ); + base.showColor = true; + base.UseLowerPropertyBox( true, true ); + UpdateIcon(); + base.texture.CompCount = 1; + base.neverDefineVariable = true; + base.shaderGenMode = ShaderGenerationMode.Manual; + connectors = new SF_NodeConnector[]{ + SF_NodeConnector.Create(this,"VFACE","",ConType.cOutput,ValueType.VTv1,false) + }; + texture.dataUniform = Color.white; + } + + public override bool IsUniformOutput() { + return true; + } + + public void UpdateIcon() { + base.texture.SetIconId( (int)currentType ); + } + + public override Vector4 EvalCPU() { + float v = 1; + return new Color( v, v, v ); + } + + public override float EvalCPU( int c ) { + return 1f; + } + + public override void DrawLowerPropertyBox() { + GUI.color = Color.white; + EditorGUI.BeginChangeCheck(); + //currentType = (ScreenPosType)EditorGUI.EnumPopup( lowerRect, currentType ); + currentType = (FaceSignType)UndoableEnumPopupNamed(lowerRect, (int)currentType, faceSignTypeStr, "switch face sign type"); + if( EditorGUI.EndChangeCheck() ) { + UpdateIcon(); + OnUpdateNode(); + } + + } + + public override void PrepareRendering( Material mat ) { + mat.SetFloat( "_BackfaceValue", currentType == FaceSignType.PlusMinusOne ? -1 : 0 ); + } + + + public override string Evaluate( OutChannel channel = OutChannel.All ) { + // NeedSceneUVs() + switch(currentType){ + case FaceSignType.ZeroAndOne: + return "isFrontFace"; + case FaceSignType.PlusMinusOne: + return "faceSign"; + } + Debug.LogError("Invalid face sign category"); + return ""; + } + + public override string SerializeSpecialData() { + return "fstp:" + (int)currentType; + } + + public override void DeserializeSpecialData( string key, string value ) { + switch( key ) { + case "fstp": + currentType = (FaceSignType)int.Parse( value ); + UpdateIcon(); + break; + } + } + + } +} \ No newline at end of file diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_FaceSign.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_FaceSign.cs.meta new file mode 100644 index 00000000..ef15a608 --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_FaceSign.cs.meta @@ -0,0 +1,12 @@ +fileFormatVersion: 2 +guid: f7d4222ab5faa9d4d9fc3dde7dec26b3 +timeCreated: 1439889392 +licenseType: Pro +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Final.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Final.cs new file mode 100644 index 00000000..4fc84f2b --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Final.cs @@ -0,0 +1,100 @@ +using UnityEngine; +using System.Collections; + +namespace ShaderForge { + + [System.Serializable] + public class SFN_Final : SF_Node { + + + + + public SF_NodeConnector + diffuse + , specular + , gloss + , normal + , emissive + , alpha + , alphaClip + , diffusePower + , refraction + , transmission + , lightWrap + , ambientDiffuse + , ambientSpecular + , diffuseOcclusion + , specularOcclusion + , customLighting + , outlineWidth + , outlineColor + //, anisotropicDirection + , vertexOffset + , displacement + , tessellation + ; + + public SFN_Final() { + + } + + public SFN_Final Initialize( SF_Editor editor ) { + base.Initialize( "Main" ); + this.editor = editor; + base.showColor = true; + AssignID(); + base.nodeName = "Main"; + Vector2 pos = new Vector2( 32768, 32768 ); + base.rect = new Rect( pos.x - NODE_WIDTH / 2, pos.y - NODE_HEIGHT / 2, NODE_WIDTH * 1.7f, 400 + 20f * 2 ); + + this.connectors = new SF_NodeConnector[]{ + + // SURFACE + diffuse = SF_NodeConnector.Create(this,"diff", "Diffuse", ConType.cInput, ValueType.VTvPending ,true,"float3(0,0,0)" ).Skip(PassType.ShadCast, PassType.Outline).TypecastTo(3), + diffusePower = SF_NodeConnector.Create(this,"diffpow", "Diffuse Power", ConType.cInput, ValueType.VTvPending ,true,"1" ).Skip(PassType.Meta, PassType.ShadCast, PassType.Outline).DisplayLockIfDeferredPrePassIsOn(), + specular = SF_NodeConnector.Create(this,"spec", "Specular", ConType.cInput, ValueType.VTvPending ,true ).Skip(PassType.ShadCast, PassType.Outline).TypecastTo(3), + gloss = SF_NodeConnector.Create(this,"gloss", "Gloss", ConType.cInput, ValueType.VTv1 ,true,"0.5" ).Skip(PassType.ShadCast, PassType.Outline), + normal = SF_NodeConnector.Create(this,"normal", "Normal", ConType.cInput, ValueType.VTv3 ,true ).Skip(PassType.Meta, PassType.ShadCast, PassType.Outline), + emissive = SF_NodeConnector.Create(this,"emission", "Emission", ConType.cInput, ValueType.VTvPending ,true,"float3(0,0,0)" ).Skip(PassType.ShadCast, PassType.Outline).TypecastTo(3), + transmission = SF_NodeConnector.Create(this,"transm", "Transmission", ConType.cInput, ValueType.VTvPending ,true ).Skip(PassType.Meta, PassType.ShadCast, PassType.Outline).TypecastTo(3).DisplayLockIfDeferredPrePassIsOn(), + lightWrap = SF_NodeConnector.Create(this,"lwrap", "Light Wrapping", ConType.cInput, ValueType.VTvPending ,true ).Skip(PassType.Meta, PassType.ShadCast, PassType.Outline).TypecastTo(3).DisplayLockIfDeferredPrePassIsOn(), + + // LIGHTING + ambientDiffuse = SF_NodeConnector.Create(this,"amdfl", "Diffuse Ambient Light", ConType.cInput, ValueType.VTvPending ,true,"float3(0,0,0)" ).Skip(PassType.Meta, PassType.ShadCast, PassType.FwdAdd, PassType.Outline).TypecastTo(3), + ambientSpecular = SF_NodeConnector.Create(this,"amspl", "Specular Ambient Light", ConType.cInput, ValueType.VTvPending ,true,"float3(0,0,0)" ).Skip(PassType.Meta, PassType.ShadCast, PassType.FwdAdd, PassType.Outline).TypecastTo(3), + diffuseOcclusion = SF_NodeConnector.Create(this,"difocc", "Diffuse Ambient Occlusion", ConType.cInput, ValueType.VTv1 ,true,"1" ).Skip(PassType.Meta, PassType.ShadCast, PassType.FwdAdd, PassType.Outline).TypecastTo(1), + specularOcclusion = SF_NodeConnector.Create(this,"spcocc", "Specular Ambient Occlusion", ConType.cInput, ValueType.VTv1 ,true,"1" ).Skip(PassType.Meta, PassType.ShadCast, PassType.FwdAdd, PassType.Outline).TypecastTo(1), + customLighting = SF_NodeConnector.Create(this,"custl", "Custom Lighting", ConType.cInput, ValueType.VTvPending ,true ).Skip(PassType.Meta, PassType.ShadCast, PassType.Outline).TypecastTo(3).DisplayLockIfDeferredPrePassIsOn(), + + // TRANSPARENCY + alpha = SF_NodeConnector.Create(this,"alpha", "Opacity", ConType.cInput, ValueType.VTv1 ,true,"1" ).Skip(PassType.Meta, PassType.ShadCast, PassType.Outline).DisplayLockIfDeferredPrePassIsOn(), + alphaClip = SF_NodeConnector.Create(this,"clip", "Opacity Clip", ConType.cInput, ValueType.VTv1 ,true ).Skip(PassType.Meta), + refraction = SF_NodeConnector.Create(this,"refract", "Refraction", ConType.cInput, ValueType.VTv2 ,true ).Skip(PassType.Meta, PassType.ShadCast, PassType.Outline).TypecastTo(2).DisplayLockIfDeferredPrePassIsOn(), + + // DEFORMERS + outlineWidth = SF_NodeConnector.Create(this,"olwid", "Outline Width", ConType.cInput, ValueType.VTv1 ,true ).Skip(PassType.Meta, PassType.ShadCast, PassType.FwdAdd, PassType.FwdBase).DisplayLockIfDeferredPrePassIsOn(), + outlineColor = SF_NodeConnector.Create(this,"olcol", "Outline Color", ConType.cInput, ValueType.VTvPending ,true,"float3(0,0,0)" ).Skip(PassType.Meta, PassType.ShadCast, PassType.FwdAdd, PassType.FwdBase).TypecastTo(3).DisplayLockIfDeferredPrePassIsOn(), + vertexOffset = SF_NodeConnector.Create(this,"voffset", "Vertex Offset", ConType.cInput, ValueType.VTvPending ,true ).ForceBlock(ShaderProgram.Vert).TypecastTo(3), + displacement = SF_NodeConnector.Create(this,"disp", "Displacement", ConType.cInput, ValueType.VTv3 ,true ).ForceBlock(ShaderProgram.Vert).TypecastTo(3), + tessellation = SF_NodeConnector.Create(this,"tess", "Tessellation", ConType.cInput, ValueType.VTv1 ,true ).ForceBlock(ShaderProgram.Vert) + }; + + //distortion.enableState = EnableState.Disabled; + //customLighting.enableState = EnableState.Disabled; + //cusomLightingDiffuse.enableState = EnableState.Disabled; + //anisotropicDirection.enableState = EnableState.Disabled; + + + return this; + + } + + public override void OnUpdateNode( NodeUpdateType updType, bool cascade = true ) { + if( cascade ) + editor.OnShaderModified( updType ); + } + + + + } +} \ No newline at end of file diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Final.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Final.cs.meta new file mode 100644 index 00000000..0f86f909 --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Final.cs.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 7082105362975344ca2b9df696cebfc0 +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Floor.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Floor.cs new file mode 100644 index 00000000..a6c97e30 --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Floor.cs @@ -0,0 +1,26 @@ +using UnityEngine; + +namespace ShaderForge { + + [System.Serializable] + public class SFN_Floor : SF_Node_Arithmetic { + + public SFN_Floor() { + } + + public override void Initialize() { + base.Initialize( "Floor" ); + base.PrepareArithmetic( 1 ); + base.shaderGenMode = ShaderGenerationMode.SimpleFunction; + } + + public override string Evaluate( OutChannel channel = OutChannel.All ) { + return "floor(" + GetConnectorByStringID( "IN" ).TryEvaluate() + ")"; + } + + public override float EvalCPU( int c ) { + return Mathf.Floor( GetInputData( "IN", c ) ); + } + + } +} \ No newline at end of file diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Floor.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Floor.cs.meta new file mode 100644 index 00000000..5574ffcc --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Floor.cs.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 865a1444020b4c04dbe91ab9abe7d68d +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Fmod.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Fmod.cs new file mode 100644 index 00000000..d736f90f --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Fmod.cs @@ -0,0 +1,29 @@ +using UnityEngine; + +namespace ShaderForge { + + [System.Serializable] + public class SFN_Fmod : SF_Node_Arithmetic { + + public SFN_Fmod() { + } + + public override void Initialize() { + base.Initialize( "Fmod" ); + base.PrepareArithmetic( 2 ); + base.shaderGenMode = ShaderGenerationMode.SimpleFunction; + } + + public override string Evaluate( OutChannel channel = OutChannel.All ) { + return "fmod(" + GetConnectorByStringID( "A" ).TryEvaluate() + "," + GetConnectorByStringID( "B" ).TryEvaluate() + ")"; + } + + public override float EvalCPU( int c ) { + float a = GetInputData( "A", c ); + float b = GetInputData( "B", c ); + float r = SF_Tools.Frac(Mathf.Abs(a/b))*Mathf.Abs(b); + return ( a < 0 ) ? -r : r; + } + + } +} \ No newline at end of file diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Fmod.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Fmod.cs.meta new file mode 100644 index 00000000..62678fd8 --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Fmod.cs.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: a31abae5d5101c843bb077f6bc0d59b4 +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_FogColor.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_FogColor.cs new file mode 100644 index 00000000..a3703c80 --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_FogColor.cs @@ -0,0 +1,52 @@ +using UnityEngine; +using UnityEditor; +using System.Collections; + +namespace ShaderForge { + + [System.Serializable] + public class SFN_FogColor : SF_Node { + + + public SFN_FogColor() { + + } + + public override void Initialize() { + base.Initialize( "Fog Color" ); + base.showColor = true; + base.UseLowerPropertyBox( false ); + base.texture.CompCount = 4; + base.texture.uniform = true; + base.texture.coloredAlphaOverlay = true; + base.neverDefineVariable = true; + connectors = new SF_NodeConnector[]{ + SF_NodeConnector.Create(this, "RGB", "RGB",ConType.cOutput,ValueType.VTv3,false).Outputting(OutChannel.RGB), + SF_NodeConnector.Create(this, "R", "R",ConType.cOutput,ValueType.VTv1,false).Outputting(OutChannel.R).WithColor(Color.red), + SF_NodeConnector.Create(this, "G", "G",ConType.cOutput,ValueType.VTv1,false).Outputting(OutChannel.G).WithColor(Color.green), + SF_NodeConnector.Create(this, "B", "B",ConType.cOutput,ValueType.VTv1,false).Outputting(OutChannel.B).WithColor(Color.blue), + SF_NodeConnector.Create(this, "A", "A",ConType.cOutput,ValueType.VTv1,false).Outputting(OutChannel.A) + }; + } + + public override bool IsUniformOutput() { + return true; + } + + public override void Update() { + if( texture.dataUniformColor != RenderSettings.fogColor ) { + texture.dataUniform = RenderSettings.fogColor; + OnUpdateNode(NodeUpdateType.Soft, true); + } + } + + public override void OnPreGetPreviewData() { + texture.dataUniform = RenderSettings.fogColor; + } + + public override string Evaluate( OutChannel channel = OutChannel.All ) { + return "unity_FogColor"; + } + + } +} \ No newline at end of file diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_FogColor.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_FogColor.cs.meta new file mode 100644 index 00000000..d425bd88 --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_FogColor.cs.meta @@ -0,0 +1,9 @@ +fileFormatVersion: 2 +guid: 7500dcc568419264598b312dc040d374 +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Frac.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Frac.cs new file mode 100644 index 00000000..a270a686 --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Frac.cs @@ -0,0 +1,26 @@ +using UnityEngine; + +namespace ShaderForge { + + [System.Serializable] + public class SFN_Frac : SF_Node_Arithmetic { + + public SFN_Frac() { + } + + public override void Initialize() { + base.Initialize( "Frac" ); + base.PrepareArithmetic( 1 ); + base.shaderGenMode = ShaderGenerationMode.SimpleFunction; + } + + public override string Evaluate( OutChannel channel = OutChannel.All ) { + return "frac(" + GetConnectorByStringID( "IN" ).TryEvaluate() + ")"; + } + + public override float EvalCPU( int c ) { + return SF_Tools.Frac( GetInputData( "IN", c ) ); + } + + } +} \ No newline at end of file diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Frac.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Frac.cs.meta new file mode 100644 index 00000000..2a980ca8 --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Frac.cs.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: a625d40360731bd4fb8f5a2d020d3d11 +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_FragmentPosition.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_FragmentPosition.cs new file mode 100644 index 00000000..d4e60c7f --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_FragmentPosition.cs @@ -0,0 +1,49 @@ +using UnityEngine; +using UnityEditor; +using System.Collections; + +namespace ShaderForge { + + [System.Serializable] + public class SFN_FragmentPosition : SF_Node { + + + public SFN_FragmentPosition() { + + } + + public override void Initialize() { + base.Initialize( "World Pos.", InitialPreviewRenderMode.BlitSphere ); + base.showColor = true; + base.UseLowerPropertyBox( false ); + base.texture.CompCount = 4; + base.neverDefineVariable = true; + connectors = new SF_NodeConnector[]{ + SF_NodeConnector.Create(this,"XYZ","XYZ",ConType.cOutput,ValueType.VTv3,false).Outputting(OutChannel.RGB), + SF_NodeConnector.Create(this,"X","X",ConType.cOutput,ValueType.VTv1,false).Outputting(OutChannel.R).WithColor(Color.red), + SF_NodeConnector.Create(this,"Y","Y",ConType.cOutput,ValueType.VTv1,false).Outputting(OutChannel.G).WithColor(Color.green), + SF_NodeConnector.Create(this,"Z","Z",ConType.cOutput,ValueType.VTv1,false).Outputting(OutChannel.B).WithColor(Color.blue), + SF_NodeConnector.Create(this,"W","W",ConType.cOutput,ValueType.VTv1,false).Outputting(OutChannel.A) + }; + } + + public override Vector4 EvalCPU() { + return new Color( 0f, 0.7071068f, 0.7071068f, 0f ); + } + + public override string Evaluate( OutChannel channel = OutChannel.All ) { + if( SF_Evaluator.inFrag ) + return "i.posWorld"; + else if( SF_Evaluator.inVert ) + return "mul(_Object2World, v.vertex)"; + else if( SF_Evaluator.inTess ) + return "mul(_Object2World, v.vertex)"; + else{ + Debug.Log( "Evaluated into unknown shader program" ); + return null; + } + + } + + } +} \ No newline at end of file diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_FragmentPosition.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_FragmentPosition.cs.meta new file mode 100644 index 00000000..663efde8 --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_FragmentPosition.cs.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 9b70f54e080f02746a1e069a06a69481 +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Fresnel.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Fresnel.cs new file mode 100644 index 00000000..7d75eb99 --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Fresnel.cs @@ -0,0 +1,100 @@ +using UnityEngine; +using UnityEditor; +using System.Collections; + +namespace ShaderForge { + + [System.Serializable] + public class SFN_Fresnel : SF_Node { + + + public SFN_Fresnel() { + + } + + public override void Initialize() { + + base.shaderGenMode = ShaderGenerationMode.ManualModal; + base.Initialize( "Fresnel", InitialPreviewRenderMode.BlitSphere ); + base.showColor = true; + base.UseLowerPropertyBox( false ); + base.texture.CompCount = 1; + base.vectorDataNode = true; + + + connectors = new SF_NodeConnector[]{ + SF_NodeConnector.Create(this,"OUT","",ConType.cOutput,ValueType.VTv1,false), + SF_NodeConnector.Create(this,"NRM","Nrm",ConType.cInput,ValueType.VTv3,false), + SF_NodeConnector.Create(this,"EXP","Exp",ConType.cInput,ValueType.VTv1,false) + }; + + this["NRM"].unconnectedEvaluationValue = "normalDirection"; + + } + + public override void OnUpdateNode( NodeUpdateType updType, bool cascade = true ) { + if( InputsConnected() ) + RefreshValue(0,0); + base.OnUpdateNode( updType ); + } + + public override bool IsUniformOutput() { + return false; + } + + public override int GetEvaluatedComponentCount() { + return 1; + } + + public override string[] GetModalModes() { + return new string[]{ + "REQONLY", + "NRM", + "EXP", + "NRM_EXP" + }; + } + + public override string GetCurrentModalMode() { + if( connectors == null ) + return "REQONLY"; + + bool expCon = GetInputIsConnected( "EXP" ); + bool nrmCon = GetInputIsConnected( "NRM" ); + + if( !expCon && !nrmCon ) + return "REQONLY"; + if( !expCon && nrmCon ) + return "NRM"; + if( expCon && !nrmCon ) + return "EXP"; + // if( expCon && nrmCon ) + return "NRM_EXP"; + } + + public override string[] GetBlitOutputLines( string mode ) { + + string nrmStr = mode.Contains( "NRM" ) ? "_nrm.xyz" : "normalDirection"; + + string s = string.Format( "1.0-max(0,dot({0}, viewDirection))", nrmStr ); + + if( mode.Contains( "EXP" ) ) { + s = string.Format( "pow( {0}, {1} )", s, "_exp.x" ); + } + + return new string[]{ s }; + } + + public override string Evaluate( OutChannel channel = OutChannel.All ) { + + string dot = "1.0-max(0,dot(" + this["NRM"].TryEvaluate() + ", viewDirection))"; + + if( GetInputIsConnected( "EXP" ) ) { + return "pow(" + dot + "," + this["EXP"].TryEvaluate() + ")"; + } + return "("+dot+")"; + + } + + } +} \ No newline at end of file diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Fresnel.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Fresnel.cs.meta new file mode 100644 index 00000000..b1a110f4 --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Fresnel.cs.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 805e259b709717a45aa900113bca53c1 +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Get.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Get.cs new file mode 100644 index 00000000..352639e2 --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Get.cs @@ -0,0 +1,98 @@ +using UnityEngine; +using UnityEditor; +using System.Collections; +using System.Linq; + +namespace ShaderForge { + + [System.Serializable] + public class SFN_Get : SF_Node_Arithmetic { + + public SFN_Get() { + + } + + public SF_NodeConnector[] FindInConnectors() { + return SF_Editor.instance.nodes.Where( x => x is SFN_Set ).Select( x => x.connectors[0] ).ToArray(); + } + + public string[] GetInConnectorNames( SF_NodeConnector[] connectors ) { + return connectors.Select( x => x.node.variableName ).ToArray(); + } + + public override void Initialize() { + node_height = 20; + node_width = 120; + base.Initialize( "Get" ); + lowerRect.y -= 8; + lowerRect.height = 28; + base.showColor = false; + base.discreteTitle = true; + base.UseLowerPropertyBox( true, true ); + base.shaderGenMode = ShaderGenerationMode.CustomFunction; + base.lockedVariableName = false; + extraWidthInput = -9; + extraWidthOutput = -9; + //base.texture.uniform = true; + //base.texture.CompCount = 1; + + connectors = new SF_NodeConnector[]{ + SF_NodeConnector.Create(this,"OUT","",ConType.cOutput,ValueType.VTvPending,false), + SF_NodeConnector.Create(this,"IN","",ConType.cInput,ValueType.VTvPending,false).SetRequired(true), + }; + + connectors[1].enableState = EnableState.Hidden; + + base.conGroup = ScriptableObject.CreateInstance().Initialize( connectors[0], connectors[1]); + + editor.nodeView.RefreshRelaySources(); + + } + + public override string[] GetBlitOutputLines() { + return new string[] { "_in" }; + } + + public override string Evaluate( OutChannel channel = OutChannel.All ) { + return GetConnectorByStringID( "IN" ).TryEvaluate(); + } + + public override float EvalCPU( int c ) { + return GetInputData( "IN", c ); + } + + + public override void DrawLowerPropertyBox() { + Rect r = new Rect( lowerRect ); + r.yMin += 4; + r.yMax -= 2; + r.xMin += 2; + Rect[] splitRects = r.SplitHorizontal( 0.25f, 2 ); + + int selectedID = -1; + if( connectors[1].inputCon != null){ + selectedID = editor.nodeView.NodeIdToRelayId( connectors[1].inputCon.node.id ); + } + + EditorGUI.BeginChangeCheck(); + int newID = UndoableEnumPopupNamed( splitRects[1], selectedID, editor.nodeView.relayInNames, "select Get option" ); + if( EditorGUI.EndChangeCheck() ) { + // Changed input, let's hook it up! + SF_NodeConnector con = editor.nodeView.relayInSources[newID].con; + connectors[1].LinkTo( con ); + } + + + Rect texCoords = new Rect( splitRects[0] ); + texCoords.width /= 7; + texCoords.height /= 3; + texCoords.x = texCoords.y = 0; + GUI.DrawTextureWithTexCoords( splitRects[0], SF_GUI.Handle_drag, texCoords, alphaBlend:true ); + } + + + + + + } +} \ No newline at end of file diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Get.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Get.cs.meta new file mode 100644 index 00000000..01c2c2cd --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Get.cs.meta @@ -0,0 +1,12 @@ +fileFormatVersion: 2 +guid: b4b577d8837417743a49f63715fda21c +timeCreated: 1447437104 +licenseType: Pro +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_HalfVector.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_HalfVector.cs new file mode 100644 index 00000000..8aa8635d --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_HalfVector.cs @@ -0,0 +1,36 @@ +using UnityEngine; +using UnityEditor; +using System.Collections; + +namespace ShaderForge { + + [System.Serializable] + public class SFN_HalfVector : SF_Node { + + + public SFN_HalfVector() { + + } + + public override void Initialize() { + base.Initialize( "Half Dir.", InitialPreviewRenderMode.BlitSphere ); + base.showColor = true; + base.UseLowerPropertyBox( false ); + base.availableInDeferredPrePass = false; + base.texture.CompCount = 3; + base.neverDefineVariable = true; + connectors = new SF_NodeConnector[]{ + SF_NodeConnector.Create(this,"OUT","",ConType.cOutput,ValueType.VTv3,false) + }; + } + + public override Vector4 EvalCPU() { + return new Color( 0.7071068f, 0f, 0.7071068f, 0f ); + } + + public override string Evaluate( OutChannel channel = OutChannel.All ) { + return "halfDirection"; // normalize(_WorldSpaceLightPos0.xyz); + } + + } +} \ No newline at end of file diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_HalfVector.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_HalfVector.cs.meta new file mode 100644 index 00000000..4e9e3c78 --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_HalfVector.cs.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: d27e30128b1a90946a33e1f6e18b2d27 +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_HsvToRgb.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_HsvToRgb.cs new file mode 100644 index 00000000..fb5c5a85 --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_HsvToRgb.cs @@ -0,0 +1,71 @@ +using UnityEngine; + +namespace ShaderForge { + + [System.Serializable] + public class SFN_HsvToRgb : SF_Node { + + public SFN_HsvToRgb() { + } + + public override void Initialize() { + base.Initialize( "HSV to RGB" ); + base.showColor = true; + base.shaderGenMode = ShaderGenerationMode.CustomFunction; + UseLowerReadonlyValues( true ); + connectors = new SF_NodeConnector[]{ + SF_NodeConnector.Create( this, "OUT", "", ConType.cOutput, ValueType.VTv3, false ), + SF_NodeConnector.Create( this, "H", "Hue", ConType.cInput, ValueType.VTv1, false ).SetRequired( true ), + SF_NodeConnector.Create( this, "S", "Sat", ConType.cInput, ValueType.VTv1, false ).SetRequired( true ), + SF_NodeConnector.Create( this, "V", "Val", ConType.cInput, ValueType.VTv1, false ).SetRequired( true )}; + } + + public override int GetEvaluatedComponentCount() { + return 3; + } + + public override bool IsUniformOutput() { + if( InputsConnected() ) { + return GetInputData( "H" ).uniform && GetInputData( "S" ).uniform && GetInputData( "V" ).uniform; + } + return true; + } + + public override string[] GetBlitOutputLines() { + return new string[] { + "float4((lerp(float3(1,1,1),saturate(3.0*abs(1.0-2.0*frac(_h.x+float3(0.0,-1.0/3.0,1.0/3.0)))-1),_s.x)*_v.x),0)" + }; + } + + public override string Evaluate( OutChannel channel = OutChannel.All ) { + string h = GetConnectorByStringID( "H" ).TryEvaluate(); + string s = GetConnectorByStringID( "S" ).TryEvaluate(); + string v = GetConnectorByStringID( "V" ).TryEvaluate(); + return "(lerp(float3(1,1,1),saturate(3.0*abs(1.0-2.0*frac("+h+"+float3(0.0,-1.0/3.0,1.0/3.0)))-1),"+s+")*" + v + ")"; + } + + static Vector3 offsets = new Vector3(0f,-1f/3f, 1f/3f); + + public override float EvalCPU( int c ) { + if(c == 3) + return 1f; + float h = GetInputData( "H", c ); + float s = GetInputData( "S", c ); + float v = GetInputData( "V", c ); + float o = offsets[c]; + return Mathf.Lerp(1,Mathf.Clamp01(3 * Mathf.Abs(1-2*Frac(h+o)) - 1),s)*v; + } + + float Frac( float x ) { + return x - Mathf.Floor( x ); + + } + + public override void OnUpdateNode( NodeUpdateType updType, bool cascade = true ) { + if( InputsConnected() ) + RefreshValue( 1, 2 ); + base.OnUpdateNode( updType ); + } + + } +} \ No newline at end of file diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_HsvToRgb.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_HsvToRgb.cs.meta new file mode 100644 index 00000000..46bb4a9f --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_HsvToRgb.cs.meta @@ -0,0 +1,12 @@ +fileFormatVersion: 2 +guid: 68a644a284b0e1845858bdca07ef2ed7 +timeCreated: 1436519980 +licenseType: Pro +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Hue.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Hue.cs new file mode 100644 index 00000000..c7987ec1 --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Hue.cs @@ -0,0 +1,64 @@ +using UnityEngine; + +namespace ShaderForge { + + [System.Serializable] + public class SFN_Hue : SF_Node { + + public SFN_Hue() { + } + + public override void Initialize() { + base.Initialize( "Hue" ); + base.showColor = true; + base.shaderGenMode = ShaderGenerationMode.CustomFunction; + UseLowerReadonlyValues( true ); + connectors = new SF_NodeConnector[]{ + SF_NodeConnector.Create( this, "OUT", "", ConType.cOutput, ValueType.VTv3, false ), + SF_NodeConnector.Create( this, "IN", "", ConType.cInput, ValueType.VTv1, false ).SetRequired( true )}; + } + + public override int GetEvaluatedComponentCount() { + return 3; + } + + public override bool IsUniformOutput() { + + if(GetInputIsConnected("IN")){ + return GetInputData( "IN" ).uniform; + } + return true; + } + + public override string[] GetBlitOutputLines() { + return new string[]{ "float4(saturate(3.0*abs(1.0-2.0*frac(_in.x+float3(0.0,-1.0/3.0,1.0/3.0)))-1),0)" }; + } + + public override string Evaluate( OutChannel channel = OutChannel.All ) { + string v = GetConnectorByStringID( "IN" ).TryEvaluate(); + return "saturate(3.0*abs(1.0-2.0*frac("+v+"+float3(0.0,-1.0/3.0,1.0/3.0)))-1)"; + } + + static Vector3 offsets = new Vector3(0f,-1f/3f, 1f/3f); + + public override float EvalCPU( int c ) { + if(c == 3) + return 1f; + float v = GetInputData( "IN", c ); + float o = offsets[c]; + return Mathf.Clamp01(3 * Mathf.Abs(1-2*Frac(v+o)) - 1); + } + + float Frac( float x ) { + return x - Mathf.Floor( x ); + + } + + public override void OnUpdateNode( NodeUpdateType updType, bool cascade = true ) { + if( InputsConnected() ) + RefreshValue( 1, 1 ); + base.OnUpdateNode( updType ); + } + + } +} \ No newline at end of file diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Hue.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Hue.cs.meta new file mode 100644 index 00000000..ee8349cd --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Hue.cs.meta @@ -0,0 +1,12 @@ +fileFormatVersion: 2 +guid: e81546dbfab1e6c489c92093e9600cf7 +timeCreated: 1436200734 +licenseType: Pro +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_If.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_If.cs new file mode 100644 index 00000000..dc5c1d73 --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_If.cs @@ -0,0 +1,95 @@ +using UnityEngine; + +namespace ShaderForge { + + [System.Serializable] + public class SFN_If : SF_Node_Arithmetic { + + public SFN_If() { + } + + public override void Initialize() { + base.Initialize( "If" ); + base.PrepareArithmetic(0); + base.showLowerReadonlyValues = false; + base.shaderGenMode = ShaderGenerationMode.CustomFunction; + + + connectors = new SF_NodeConnector[]{ + SF_NodeConnector.Create( this,"OUT", "", ConType.cOutput, ValueType.VTvPending, false ), + SF_NodeConnector.Create( this,"A", "A", ConType.cInput, ValueType.VTvPending, false ).SetRequired( true ), + SF_NodeConnector.Create( this,"B", "B", ConType.cInput, ValueType.VTvPending, false ).SetRequired( true ), + SF_NodeConnector.Create( this,"GT", "A>B", ConType.cInput, ValueType.VTvPending, false ).SetRequired( true ), + SF_NodeConnector.Create( this,"EQ", "A=B", ConType.cInput, ValueType.VTvPending, false ).SetRequired( true ), + SF_NodeConnector.Create( this,"LT", "A().Initialize( connectors[0], connectors[1], connectors[2], connectors[3], connectors[4], connectors[5] ); + } + + + public string StA() { + return GetVariableName() + "_if_leA"; + } + public string StB() { + return GetVariableName() + "_if_leB"; + } + + + public override string[] GetPreDefineRows() { + return new string[] { + "float " + StA() + " = step(" + this["A"].TryEvaluate() + "," + this["B"].TryEvaluate() + ");", + "float " + StB() + " = step(" + this["B"].TryEvaluate() + "," + this["A"].TryEvaluate() + ");" + }; + } + + public override string[] GetBlitOutputLines() { + + string less = "(sta*_lt)"; + string larger = "(stb*_gt)"; + string lela = less + "+" + larger; + + return new string[]{ + "float sta = step(_a,_b);", + "float stb = step(_b,_a);", + "lerp(" + lela + ",_eq,sta*stb)" + }; + } + + public override bool IsUniformOutput() { + foreach(SF_NodeConnector con in connectors){ + if(con.conType == ConType.cOutput) + continue; + if(con.IsConnectedAndEnabled()) + if(!con.inputCon.node.IsUniformOutput()) + return false; + } + return true; + } + + + public override string Evaluate( OutChannel channel = OutChannel.All ) { + if(!ShouldDefineVariable()) // TODO: Isn't this already handled on the node level? + this.PreDefine(); + + string less = "(" + StA() + "*" + GetInputCon( "LT" ).Evaluate() + ")"; + string larger = "(" + StB() + "*" + GetInputCon( "GT" ).Evaluate() + ")"; + string lela = less + "+" + larger; + + return "lerp(" + lela + "," + GetInputCon( "EQ" ).Evaluate() + "," + StA() + "*" + StB() + ")"; + } + + public override float EvalCPU( int c ) { + float a = GetInputData( "A", c ); + float b = GetInputData( "B", c ); + + float sta = ( ( a <= b ) ? 1.0f : 0.0f ); + float stb = ( ( b <= a ) ? 1.0f : 0.0f ); + + float less = sta * GetInputData( "LT", c ); + float larger = stb * GetInputData( "GT", c ); + float lela = ( less + larger ); + + return Mathf.Lerp( lela, GetInputData( "EQ", c ), sta * stb ); + } + + } +} \ No newline at end of file diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_If.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_If.cs.meta new file mode 100644 index 00000000..78c0a966 --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_If.cs.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 08bd8679c2a595b4ebd6d65a4a96817e +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_InverseLerp.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_InverseLerp.cs new file mode 100644 index 00000000..89e6b3cb --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_InverseLerp.cs @@ -0,0 +1,75 @@ +using UnityEngine; +using UnityEditor; +using System.Collections; + +namespace ShaderForge { + + [System.Serializable] + public class SFN_InverseLerp : SF_Node { + + public SFN_InverseLerp() { + + } + + public override void Initialize() { + base.Initialize( "Inverse Lerp" ); + base.showColor = true; + base.shaderGenMode = ShaderGenerationMode.CustomFunction; + UseLowerReadonlyValues( true ); + + //SF_NodeConnection lerpCon; + connectors = new SF_NodeConnector[]{ + SF_NodeConnector.Create(this,"OUT","T",ConType.cOutput,ValueType.VTvPending,false), + SF_NodeConnector.Create(this,"A","A",ConType.cInput,ValueType.VTvPending,false).SetRequired(true), + SF_NodeConnector.Create(this,"B","B",ConType.cInput,ValueType.VTvPending,false).SetRequired(true), + SF_NodeConnector.Create(this,"V","Val",ConType.cInput,ValueType.VTvPending,false).SetRequired(true) + }; + + base.conGroup = ScriptableObject.CreateInstance().Initialize( connectors[0], connectors[1], connectors[2], connectors[3] ); + } + + public override void OnUpdateNode( NodeUpdateType updType, bool cascade = true ) { + if( InputsConnected() ) + RefreshValue( 1, 2 ); + base.OnUpdateNode( updType ); + } + + public override string[] GetBlitOutputLines() { + return new string[] { "((_v-_a)/(_b-_a))" }; + } + + public override bool IsUniformOutput() { + return ( GetInputData( "A" ).uniform && GetInputData( "B" ).uniform && GetInputData( "V" ).uniform ); + } + + public override int GetEvaluatedComponentCount() { + return Mathf.Max( this["A"].GetCompCount(), this["B"].GetCompCount(), this["V"].GetCompCount() ); + } + + public override string Evaluate( OutChannel channel = OutChannel.All ) { + + string a = GetConnectorByStringID( "A" ).TryEvaluateAs( GetEvaluatedComponentCount() ); + string b = GetConnectorByStringID( "B" ).TryEvaluateAs( GetEvaluatedComponentCount() ); + string v = GetConnectorByStringID( "V" ).TryEvaluateAs( GetEvaluatedComponentCount() ); + + return "((" + v + "-" + a + ")/(" + b + "-" + a + "))"; + } + + public override float EvalCPU( int c ) { + + float a = GetInputData( "A", c ); + float b = GetInputData( "B", c ); + float v = GetInputData( "V", c ); + + if( (b - a) == 0f ) + return 0; + return ( v - a ) / ( b - a ); + } + + public float Lerp( float a, float b, float t ) { + return ( ( 1f - t ) * a + t * b ); + } + + + } +} \ No newline at end of file diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_InverseLerp.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_InverseLerp.cs.meta new file mode 100644 index 00000000..de877657 --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_InverseLerp.cs.meta @@ -0,0 +1,12 @@ +fileFormatVersion: 2 +guid: 16d3bfd026312984b9f3db11f2c6762a +timeCreated: 1439743244 +licenseType: Pro +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Length.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Length.cs new file mode 100644 index 00000000..34b02efb --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Length.cs @@ -0,0 +1,42 @@ +using UnityEngine; + +namespace ShaderForge { + + [System.Serializable] + public class SFN_Length : SF_Node_Arithmetic { + + public SFN_Length() { + } + + public override void Initialize() { + base.Initialize( "Length" ); + base.PrepareArithmetic( 1, ValueType.VTvPending, ValueType.VTv1 ); + base.shaderGenMode = ShaderGenerationMode.SimpleFunction; + ( base.conGroup as SFNCG_Arithmetic ).LockOutType(); + } + + public override int GetEvaluatedComponentCount() { + return 1; + } + + public override string Evaluate( OutChannel channel = OutChannel.All ) { + return "length(" + GetConnectorByStringID( "IN" ).TryEvaluate() + ")"; + } + + public override Vector4 EvalCPU() { + + switch( GetInputData( "IN" ).CompCount ) { + case 1: + return Vector4.one * Mathf.Abs( GetInputData( "IN" ).dataUniform[0] ); + case 2: + return Vector4.one * ( (Vector2)GetInputData( "IN" ).dataUniform ).magnitude; + case 3: + return Vector4.one * ( (Vector3)GetInputData( "IN" ).dataUniform ).magnitude; + default: + return Vector4.one * GetInputData( "IN" ).dataUniform.magnitude; + } + + } + + } +} \ No newline at end of file diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Length.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Length.cs.meta new file mode 100644 index 00000000..76a89539 --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Length.cs.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 9dffa999f0a9a014692a70f8050a87f4 +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Lerp.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Lerp.cs new file mode 100644 index 00000000..d1d51417 --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Lerp.cs @@ -0,0 +1,58 @@ +using UnityEngine; +using UnityEditor; +using System.Collections; + +namespace ShaderForge { + + [System.Serializable] + public class SFN_Lerp : SF_Node { + + public SFN_Lerp() { + + } + + public override void Initialize() { + base.Initialize( "Lerp" ); + base.showColor = true; + UseLowerReadonlyValues( true ); + + //SF_NodeConnection lerpCon; + connectors = new SF_NodeConnector[]{ + SF_NodeConnector.Create(this,"OUT","",ConType.cOutput,ValueType.VTvPending,false), + SF_NodeConnector.Create(this,"A","A",ConType.cInput,ValueType.VTvPending,false).SetRequired(true), + SF_NodeConnector.Create(this,"B","B",ConType.cInput,ValueType.VTvPending,false).SetRequired(true), + SF_NodeConnector.Create(this,"T","T",ConType.cInput,ValueType.VTvPending,false).SetRequired(true) + }; + + base.conGroup = ScriptableObject.CreateInstance().Initialize( connectors[0], connectors[1], connectors[2], connectors[3] ); + } + + public override void OnUpdateNode( NodeUpdateType updType, bool cascade = true ) { + if( InputsConnected() ) + RefreshValue( 1, 2 ); + base.OnUpdateNode( updType ); + } + + public override bool IsUniformOutput() { + return ( GetInputData( "A" ).uniform && GetInputData( "B" ).uniform && GetInputData( "T" ).uniform ); + } + + public override int GetEvaluatedComponentCount() { + return Mathf.Max( this["A"].GetCompCount(), this["B"].GetCompCount(), this["T"].GetCompCount() ); + } + + public override string Evaluate( OutChannel channel = OutChannel.All ) { + return "lerp(" + GetConnectorByStringID( "A" ).TryEvaluateAs(GetEvaluatedComponentCount()) + "," + GetConnectorByStringID( "B" ).TryEvaluateAs(GetEvaluatedComponentCount()) + "," + GetInputCon( "T" ).Evaluate() + ")"; + } + + public override float EvalCPU( int c ) { + return Lerp( GetInputData( "B", c ), GetInputData( "B", c ), GetInputData( "T", c ) ); + } + + public float Lerp( float a, float b, float t ) { + return ( ( 1f - t ) * a + t * b ); + } + + + } +} \ No newline at end of file diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Lerp.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Lerp.cs.meta new file mode 100644 index 00000000..2df5a0e4 --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Lerp.cs.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: f4503b6214f161b4a95dfd184348546f +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_LightAttenuation.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_LightAttenuation.cs new file mode 100644 index 00000000..e8d76bc2 --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_LightAttenuation.cs @@ -0,0 +1,36 @@ +using UnityEngine; +using UnityEditor; +using System.Collections; + +namespace ShaderForge { + + [System.Serializable] + public class SFN_LightAttenuation : SF_Node { + + + public SFN_LightAttenuation() { + + } + + public override void Initialize() { + base.Initialize( "Light Atten.", InitialPreviewRenderMode.BlitSphere ); + base.showColor = true; + base.UseLowerPropertyBox( false ); + base.texture.CompCount = 1; + base.neverDefineVariable = true; + base.availableInDeferredPrePass = false; + connectors = new SF_NodeConnector[]{ + SF_NodeConnector.Create(this,"OUT","",ConType.cOutput,ValueType.VTv1,false) + }; + } + + public override Vector4 EvalCPU() { + return new Color( 1f, 1f, 1f, 1f ); + } + + public override string Evaluate( OutChannel channel = OutChannel.All ) { + return "attenuation"; + } + + } +} \ No newline at end of file diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_LightAttenuation.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_LightAttenuation.cs.meta new file mode 100644 index 00000000..de5496db --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_LightAttenuation.cs.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 686b4d39e6a081d4ab3974d70ea038ea +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_LightColor.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_LightColor.cs new file mode 100644 index 00000000..8800f7c8 --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_LightColor.cs @@ -0,0 +1,40 @@ +using UnityEngine; +using UnityEditor; +using System.Collections; + +namespace ShaderForge { + + [System.Serializable] + public class SFN_LightColor : SF_Node { + + + public SFN_LightColor() { + + } + + public override void Initialize() { + base.Initialize( "Light Color", InitialPreviewRenderMode.BlitSphere ); + base.showColor = true; + base.UseLowerPropertyBox( false ); + base.texture.CompCount = 4; + base.neverDefineVariable = true; + base.availableInDeferredPrePass = false; + connectors = new SF_NodeConnector[]{ + SF_NodeConnector.Create(this,"RGB","RGB",ConType.cOutput,ValueType.VTv3,false).Outputting(OutChannel.RGB), + SF_NodeConnector.Create(this,"R","R",ConType.cOutput,ValueType.VTv1,false).Outputting(OutChannel.R).WithColor(Color.red), + SF_NodeConnector.Create(this,"G","G",ConType.cOutput,ValueType.VTv1,false).Outputting(OutChannel.G).WithColor(Color.green), + SF_NodeConnector.Create(this,"B","B",ConType.cOutput,ValueType.VTv1,false).Outputting(OutChannel.B).WithColor(Color.blue), + SF_NodeConnector.Create(this,"A","A",ConType.cOutput,ValueType.VTv1,false).Outputting(OutChannel.A) + }; + } + + public override Vector4 EvalCPU() { + return new Color( 0.5f, 0, 0, 0 ); + } + + public override string Evaluate( OutChannel channel = OutChannel.All ) { + return "_LightColor0"; + } + + } +} \ No newline at end of file diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_LightColor.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_LightColor.cs.meta new file mode 100644 index 00000000..54a9fcdc --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_LightColor.cs.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 7f012e392e4a89a4791a4856f4f56b4c +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_LightPosition.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_LightPosition.cs new file mode 100644 index 00000000..68b86399 --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_LightPosition.cs @@ -0,0 +1,40 @@ +using UnityEngine; +using UnityEditor; +using System.Collections; + +namespace ShaderForge { + + [System.Serializable] + public class SFN_LightPosition : SF_Node { + + + public SFN_LightPosition() { + + } + + public override void Initialize() { + base.Initialize( "Light Pos.", InitialPreviewRenderMode.BlitQuad ); + base.showColor = true; + base.UseLowerPropertyBox( false ); + base.texture.CompCount = 4; + base.neverDefineVariable = true; + base.availableInDeferredPrePass = false; + connectors = new SF_NodeConnector[]{ + SF_NodeConnector.Create(this,"XYZ","XYZ",ConType.cOutput,ValueType.VTv3,false).Outputting(OutChannel.RGB), + SF_NodeConnector.Create(this,"X","X",ConType.cOutput,ValueType.VTv1,false).Outputting(OutChannel.R).WithColor(Color.red), + SF_NodeConnector.Create(this,"Y","Y",ConType.cOutput,ValueType.VTv1,false).Outputting(OutChannel.G).WithColor(Color.green), + SF_NodeConnector.Create(this,"Z","Z",ConType.cOutput,ValueType.VTv1,false).Outputting(OutChannel.B).WithColor(Color.blue), + SF_NodeConnector.Create(this,"PNT","Pnt",ConType.cOutput,ValueType.VTv1,false).Outputting(OutChannel.A) + }; + } + + public override Vector4 EvalCPU() { + return new Color( 0f, 0.7071068f, 0.7071068f, 0f ); + } + + public override string Evaluate( OutChannel channel = OutChannel.All ) { + return "_WorldSpaceLightPos0"; // normalize(_WorldSpaceLightPos0.xyz); + } + + } +} \ No newline at end of file diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_LightPosition.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_LightPosition.cs.meta new file mode 100644 index 00000000..bc81d829 --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_LightPosition.cs.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 0b9d9898dea86c748886d87751eb5e9b +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_LightVector.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_LightVector.cs new file mode 100644 index 00000000..eebeaa18 --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_LightVector.cs @@ -0,0 +1,36 @@ +using UnityEngine; +using UnityEditor; +using System.Collections; + +namespace ShaderForge { + + [System.Serializable] + public class SFN_LightVector : SF_Node { + + + public SFN_LightVector() { + + } + + public override void Initialize() { + base.Initialize( "Light Dir.", InitialPreviewRenderMode.BlitSphere ); + base.showColor = true; + base.UseLowerPropertyBox( false ); + base.texture.CompCount = 3; + base.neverDefineVariable = true; + base.availableInDeferredPrePass = false; + connectors = new SF_NodeConnector[]{ + SF_NodeConnector.Create(this,"OUT","",ConType.cOutput,ValueType.VTv3,false) + }; + } + + public override Vector4 EvalCPU() { + return new Color( 0f, 0.7071068f, 0.7071068f, 0f ); + } + + public override string Evaluate( OutChannel channel = OutChannel.All ) { + return "lightDirection"; // normalize(_WorldSpaceLightPos0.xyz); + } + + } +} \ No newline at end of file diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_LightVector.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_LightVector.cs.meta new file mode 100644 index 00000000..603a9a57 --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_LightVector.cs.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 66c49f9dbeaeb414a8aaff0d8c27d00d +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Log.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Log.cs new file mode 100644 index 00000000..443d463f --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Log.cs @@ -0,0 +1,111 @@ +using UnityEngine; +using UnityEditor; +using System.Collections; +using System; + +namespace ShaderForge { + + [System.Serializable] + public class SFN_Log : SF_Node_Arithmetic { + + + public enum LogType { Natural, Base2, Base10 }; + public LogType logType = LogType.Natural; + + public SFN_Log() { + + } + + public override void Initialize() { + base.Initialize( "Log" ); + base.UseLowerPropertyBox( true, true ); + base.PrepareArithmetic( 1, ValueType.VTvPending, ValueType.VTvPending ); + base.shaderGenMode = ShaderGenerationMode.Modal; + } + + + public override string[] GetModalModes() { + return new string[] { + "LOG", + "LOG2", + "LOG10" + }; + } + + public override string GetCurrentModalMode() { + switch( logType ) { + case LogType.Base10: + return "LOG10"; + case LogType.Base2: + return "LOG2"; + default: + return "LOG"; + } + } + + public override string[] GetBlitOutputLines( string mode ) { + if( mode == "LOG2" ) + return new string[] { "log(_in);" }; + if( mode == "LOG10" ) + return new string[] { "log10(_in);" }; + return new string[] { "log(_in)" }; + } + + public override string Evaluate( OutChannel channel = OutChannel.All ) { + + string inner = GetConnectorByStringID( "IN" ).TryEvaluate(); + switch( logType ) { + case LogType.Natural: + return "log(" + inner + ")"; + case LogType.Base2: + return "log2(" + inner + ")"; + case LogType.Base10: + return "log10(" + inner + ")"; + } + + return inner; + } + + public override float EvalCPU( int c ) { + + float inpDt = GetInputData( "IN", c ); + + switch( logType ) { + case LogType.Natural: + inpDt = Mathf.Log( inpDt ); + break; + case LogType.Base2: + inpDt = Mathf.Log( inpDt ) / Mathf.Log( 2f ); + break; + case LogType.Base10: + inpDt = Mathf.Log10( inpDt ); + break; + } + + return inpDt; + } + + public override void DrawLowerPropertyBox() { + EditorGUI.BeginChangeCheck(); + logType = (LogType)UndoableEnumPopup( lowerRect, logType, "switch log type"); + //logType = (LogType)EditorGUI.EnumPopup( lowerRect, logType ); + if( EditorGUI.EndChangeCheck() ) + OnUpdateNode(); + } + + public override string SerializeSpecialData() { + return "lt:" + (int)logType; + } + + public override void DeserializeSpecialData( string key, string value ) { + switch( key ) { + case "lt": + logType = (LogType)int.Parse( value ); + break; + } + } + + + + } +} \ No newline at end of file diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Log.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Log.cs.meta new file mode 100644 index 00000000..2a172634 --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Log.cs.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 61c69de42939c63429fcb6359f2b7953 +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Matrix4x4.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Matrix4x4.cs new file mode 100644 index 00000000..2e3fa623 --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Matrix4x4.cs @@ -0,0 +1,93 @@ +using UnityEngine; +using UnityEditor; +using System.Collections; + +namespace ShaderForge { + + public class SFN_Matrix4x4 : SF_Node { + + + public SFN_Matrix4x4() { + + } + + public Matrix4x4 mtx = Matrix4x4.identity; + + public override void Initialize() { + node_height = NODE_HEIGHT; + base.Initialize( "Matrix 4x4" ); + base.showColor = false; + base.UseLowerPropertyBox( false ); + base.texture.uniform = true; + base.texture.CompCount = 4; + base.canAlwaysSetPrecision = true; + base.alwaysDefineVariable = true; + connectors = new SF_NodeConnector[]{ + SF_NodeConnector.Create(this,"OUT","",ConType.cOutput,ValueType.VTm4x4,false) + }; + } + + public override bool IsUniformOutput() { + return true; + } + + public override string Evaluate( OutChannel channel = OutChannel.All ) { + return mtx.ToCgMatrix(); + } + + public override void NeatWindow() { + PrepareWindowColor(); + GUI.BeginGroup( rect ); + Rect r = new Rect( rectInner ); + r = r.Pad( 4 ); + r.height = 20; + + DrawGrabHandle( r ); + + + Rect tRect = rectInner.Pad( 2 ); + tRect.yMin += 28; + + tRect.width /= 4; + tRect.height /= 4; + tRect.height = Mathf.FloorToInt( tRect.height ); + + for( int i=0; i < 4; i++ ) { + UndoableEnterableFloatFieldMtx( tRect, i, 0); + tRect.x += tRect.width; + UndoableEnterableFloatFieldMtx( tRect, i, 1 ); + tRect.x += tRect.width; + UndoableEnterableFloatFieldMtx( tRect, i, 2 ); + tRect.x += tRect.width; + UndoableEnterableFloatFieldMtx( tRect, i, 3 ); + tRect.x -= tRect.width*3; + tRect.y += tRect.height; + } + + + GUI.EndGroup(); + ResetWindowColor(); + + } + + + public void UndoableEnterableFloatFieldMtx(Rect r, int row, int column ) { + float val = mtx[row,column]; + UndoableEnterableFloatField( r, ref val, "matrix [" + row + "," + column + "]", null ); + mtx[row, column] = val; + } + + public override string SerializeSpecialData() { + return mtx.SerializeToCSV(); + } + + public override void DeserializeSpecialData( string key, string value ) { + mtx = mtx.DeserializeKeyValue( key, value ); + } + + + + + + } +} \ No newline at end of file diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Matrix4x4.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Matrix4x4.cs.meta new file mode 100644 index 00000000..0d05a31f --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Matrix4x4.cs.meta @@ -0,0 +1,12 @@ +fileFormatVersion: 2 +guid: e3bfdd39d540f4846810495c5c353993 +timeCreated: 1436168471 +licenseType: Pro +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Matrix4x4Property.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Matrix4x4Property.cs new file mode 100644 index 00000000..f9b17465 --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Matrix4x4Property.cs @@ -0,0 +1,98 @@ +using UnityEngine; +using UnityEditor; +using System.Collections; + +namespace ShaderForge { + + public class SFN_Matrix4x4Property : SF_Node { + + + public SFN_Matrix4x4Property() { + + } + + public Matrix4x4 mtx = Matrix4x4.identity; + + public override void Initialize() { + node_height = NODE_HEIGHT; + base.Initialize( "Matrix 4x4" ); + base.showColor = false; + base.UseLowerPropertyBox( false ); + base.texture.uniform = true; + base.texture.CompCount = 4; + base.canAlwaysSetPrecision = true; + base.alwaysDefineVariable = false; + + property = ScriptableObject.CreateInstance().Initialize( this ); + + connectors = new SF_NodeConnector[]{ + SF_NodeConnector.Create(this,"OUT","",ConType.cOutput,ValueType.VTm4x4,false) + }; + } + + public override bool IsUniformOutput() { + return true; + } + + public override string Evaluate( OutChannel channel = OutChannel.All ) { + return property.GetVariable(); + } + + public override void NeatWindow() { + PrepareWindowColor(); + GUI.BeginGroup( rect ); + Rect r = new Rect( rectInner ); + r = r.Pad( 4 ); + r.height = 20; + + DrawGrabHandle( r ); + + + Rect tRect = rectInner.Pad( 2 ); + tRect.yMin += 28; + + tRect.width /= 4; + tRect.height /= 4; + tRect.height = Mathf.FloorToInt( tRect.height ); + + EditorGUI.BeginDisabledGroup(true); + for( int i=0; i < 4; i++ ) { + UndoableEnterableFloatFieldMtx( tRect, i, 0); + tRect.x += tRect.width; + UndoableEnterableFloatFieldMtx( tRect, i, 1 ); + tRect.x += tRect.width; + UndoableEnterableFloatFieldMtx( tRect, i, 2 ); + tRect.x += tRect.width; + UndoableEnterableFloatFieldMtx( tRect, i, 3 ); + tRect.x -= tRect.width*3; + tRect.y += tRect.height; + } + EditorGUI.EndDisabledGroup(); + + GUI.EndGroup(); + ResetWindowColor(); + + } + + + public void UndoableEnterableFloatFieldMtx(Rect r, int row, int column ) { + float val = mtx[row,column]; + UndoableEnterableFloatField( r, ref val, "matrix [" + row + "," + column + "]", null ); + mtx[row, column] = val; + } + + public override string SerializeSpecialData() { + return property.Serialize() + "," + mtx.SerializeToCSV(); + } + + public override void DeserializeSpecialData( string key, string value ) { + property.Deserialize( key, value ); + mtx = mtx.DeserializeKeyValue( key, value ); + } + + + + + + } +} \ No newline at end of file diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Matrix4x4Property.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Matrix4x4Property.cs.meta new file mode 100644 index 00000000..0001a42b --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Matrix4x4Property.cs.meta @@ -0,0 +1,12 @@ +fileFormatVersion: 2 +guid: 638c5b214d6a1b14ea3a6ef2a69d0b89 +timeCreated: 1436192974 +licenseType: Pro +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Max.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Max.cs new file mode 100644 index 00000000..6e55781d --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Max.cs @@ -0,0 +1,76 @@ +using UnityEngine; +using UnityEditor; +using System.Collections; +using System; + +namespace ShaderForge { + + [System.Serializable] + public class SFN_Max : SF_Node_Arithmetic { + + public SFN_Max() { + + } + + public override void Initialize() { + base.Initialize( "Max" ); + base.showColor = true; + base.shaderGenMode = ShaderGenerationMode.ModularInput; + UseLowerReadonlyValues( true ); + + connectors = new SF_NodeConnector[]{ + SF_NodeConnector.Create(this,"OUT","",ConType.cOutput,ValueType.VTvPending,false), + SF_NodeConnector.Create(this,"A","A",ConType.cInput,ValueType.VTvPending,false).SetRequired(true), + SF_NodeConnector.Create(this,"B","B",ConType.cInput,ValueType.VTvPending,false).SetRequired(true), + SF_NodeConnector.Create(this,"C","C",ConType.cInput,ValueType.VTvPending,false).SetRequired(false), + SF_NodeConnector.Create(this,"D","D",ConType.cInput,ValueType.VTvPending,false).SetRequired(false), + SF_NodeConnector.Create(this,"E","E",ConType.cInput,ValueType.VTvPending,false).SetRequired(false) + }; + + + SetExtensionConnectorChain("B", "C", "D", "E"); + + base.conGroup = ScriptableObject.CreateInstance().Initialize( connectors[0], connectors[1], connectors[2], connectors[3], connectors[4], connectors[5] ); + + } + + public override void GetModularShaderFixes( out string prefix, out string infix, out string suffix ) { + prefix = "max("; + infix = ", "; + suffix = ")"; + } + + public override string Evaluate( OutChannel channel = OutChannel.All ) { + string retStr = "max(" + TryEvalInput("A") + "," + TryEvalInput("B") + ")"; + + // Loop through all chain childs + foreach(SF_NodeConnector con in connectors){ + if(con.IsConnected() && con.IsChild()){ + retStr = "max(" + retStr + "," + con.TryEvaluate() + ")"; + } + } + + return retStr; + } + + string TryEvalInput(string s){ + return GetConnectorByStringID(s).TryEvaluate(); + } + + public override float EvalCPU( int c ) { + + float maximum = Mathf.Max( GetInputData( "A", c ), GetInputData( "B", c ) ); + + // Loop through all chain childs + foreach(SF_NodeConnector con in connectors){ + if(con.IsConnected() && con.IsChild()){ + maximum = Mathf.Max(maximum, GetInputData( con.strID, c ) ); + } + } + + + return maximum; + } + + } +} \ No newline at end of file diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Max.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Max.cs.meta new file mode 100644 index 00000000..a28ed222 --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Max.cs.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: a4a4eeb60c3655748ab34f85aaa9eca6 +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Min.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Min.cs new file mode 100644 index 00000000..f41f798a --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Min.cs @@ -0,0 +1,78 @@ +using UnityEngine; +using UnityEditor; +using System.Collections; +using System; + +namespace ShaderForge { + + [System.Serializable] + public class SFN_Min : SF_Node_Arithmetic { + + public SFN_Min() { + + } + + public override void Initialize() { + base.Initialize( "Min" ); + base.showColor = true; + base.shaderGenMode = ShaderGenerationMode.ModularInput; + UseLowerReadonlyValues( true ); + + connectors = new SF_NodeConnector[]{ + SF_NodeConnector.Create(this,"OUT","",ConType.cOutput,ValueType.VTvPending,false), + SF_NodeConnector.Create(this,"A","A",ConType.cInput,ValueType.VTvPending,false).SetRequired(true), + SF_NodeConnector.Create(this,"B","B",ConType.cInput,ValueType.VTvPending,false).SetRequired(true), + SF_NodeConnector.Create(this,"C","C",ConType.cInput,ValueType.VTvPending,false).SetRequired(false), + SF_NodeConnector.Create(this,"D","D",ConType.cInput,ValueType.VTvPending,false).SetRequired(false), + SF_NodeConnector.Create(this,"E","E",ConType.cInput,ValueType.VTvPending,false).SetRequired(false) + }; + + + SetExtensionConnectorChain("B", "C", "D", "E"); + + base.conGroup = ScriptableObject.CreateInstance().Initialize( connectors[0], connectors[1], connectors[2], connectors[3], connectors[4], connectors[5] ); + + } + + public override void GetModularShaderFixes( out string prefix, out string infix, out string suffix ) { + prefix = "min("; + infix = ", "; + suffix = ")"; + } + + public override string Evaluate( OutChannel channel = OutChannel.All ) { + + string retStr = "min(" + TryEvalInput("A") + "," + TryEvalInput("B") + ")"; + + // Loop through all chain childs + foreach(SF_NodeConnector con in connectors){ + if(con.IsConnected() && con.IsChild()){ + retStr = "min(" + retStr + "," + con.TryEvaluate() + ")"; + } + } + + return retStr; + } + + string TryEvalInput(string s){ + return GetConnectorByStringID(s).TryEvaluate(); + } + + + public override float EvalCPU( int c ) { + + float minimum = Mathf.Min( GetInputData( "A", c ), GetInputData( "B", c ) ); + + // Loop through all chain childs + foreach(SF_NodeConnector con in connectors){ + if(con.IsConnected() && con.IsChild()){ + minimum = Mathf.Min(minimum, GetInputData( con.strID, c ) ); + } + } + + + return minimum; + } + + } +} \ No newline at end of file diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Min.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Min.cs.meta new file mode 100644 index 00000000..e1bced11 --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Min.cs.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 24a991d2351190f4f88d3c06eabafb58 +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Multiply.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Multiply.cs new file mode 100644 index 00000000..b09016e4 --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Multiply.cs @@ -0,0 +1,72 @@ +using UnityEngine; +using UnityEditor; +using System.Collections; +using System; + +namespace ShaderForge { + + [System.Serializable] + public class SFN_Multiply : SF_Node_Arithmetic { + + public SFN_Multiply() { + + } + + public override void Initialize() { + base.Initialize( "Multiply" ); + base.showColor = true; + base.shaderGenMode = ShaderGenerationMode.ModularInput; + UseLowerReadonlyValues( true ); + + connectors = new SF_NodeConnector[]{ + SF_NodeConnector.Create(this,"OUT","",ConType.cOutput,ValueType.VTvPending,false), + SF_NodeConnector.Create(this,"A","A",ConType.cInput,ValueType.VTvPending,false).SetRequired(true), + SF_NodeConnector.Create(this,"B","B",ConType.cInput,ValueType.VTvPending,false).SetRequired(true), + SF_NodeConnector.Create(this,"C","C",ConType.cInput,ValueType.VTvPending,false).SetRequired(false), + SF_NodeConnector.Create(this,"D","D",ConType.cInput,ValueType.VTvPending,false).SetRequired(false), + SF_NodeConnector.Create(this,"E","E",ConType.cInput,ValueType.VTvPending,false).SetRequired(false) + }; + + + SetExtensionConnectorChain("B", "C", "D", "E"); + + base.conGroup = ScriptableObject.CreateInstance().Initialize( connectors[0], connectors[1], connectors[2], connectors[3], connectors[4], connectors[5] ); + + } + + public override void GetModularShaderFixes( out string prefix, out string infix, out string suffix ) { + prefix = ""; + infix = " * "; + suffix = ""; + } + + public override string Evaluate( OutChannel channel = OutChannel.All ) { + + + string evalStr = ""; + + evalStr += GetConnectorByStringID( "A" ).TryEvaluate() + "*" + GetConnectorByStringID( "B" ).TryEvaluate(); + + ChainAppendIfConnected(ref evalStr, "*", "C", "D", "E"); + + return "(" + evalStr + ")"; + } + + public override float EvalCPU( int c ) { + + float result = GetInputData( "A", c ) * GetInputData( "B", c ); + + if(GetInputIsConnected("C")){ + result *= GetInputData( "C", c ); + } + if(GetInputIsConnected("D")){ + result *= GetInputData( "D", c ); + } + if(GetInputIsConnected("E")){ + result *= GetInputData( "E", c ); + } + + return result; + } + } +} \ No newline at end of file diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Multiply.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Multiply.cs.meta new file mode 100644 index 00000000..65c2daae --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Multiply.cs.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: e4fb4b834fbc00e4bac700df8f98ea7c +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_MultiplyMatrix.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_MultiplyMatrix.cs new file mode 100644 index 00000000..1774a633 --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_MultiplyMatrix.cs @@ -0,0 +1,91 @@ +using UnityEngine; +using UnityEditor; +using System.Collections; +using System; + +namespace ShaderForge { + + [System.Serializable] + public class SFN_MultiplyMatrix : SF_Node_Arithmetic { + + public Matrix4x4 mtx; + + public SFN_MultiplyMatrix() { + + } + + public override void Initialize() { + node_height = 58; + base.Initialize( "Multiply Matrix" ); + base.showColor = false; + base.UseLowerPropertyBox( false, true ); + //UseLowerReadonlyValues( true ); + + connectors = new SF_NodeConnector[]{ + SF_NodeConnector.Create(this,"OUT","",ConType.cOutput,ValueType.VTv4m4x4,false), + SF_NodeConnector.Create(this,"A","A",ConType.cInput,ValueType.VTv4m4x4,false).SetRequired(true), + SF_NodeConnector.Create(this,"B","B",ConType.cInput,ValueType.VTv4m4x4,false).SetRequired(true) + }; + + base.conGroup = ScriptableObject.CreateInstance().Initialize( connectors[0], connectors[1], connectors[2] ); + + } + + + + public override string Evaluate( OutChannel channel = OutChannel.All ) { + string evalStr = ""; + evalStr += "mul(" + GetConnectorByStringID( "A" ).TryEvaluate() + "," + GetConnectorByStringID( "B" ).TryEvaluate() + ")"; + return evalStr; + } + + public override Vector4 EvalCPU() { + + return Color.black; + /* + SF_NodeConnector a = ConnectedInputs[0]; + SF_NodeConnector b = ConnectedInputs[1]; + + if( !a.IsConnected() || !b.IsConnected() ) { + return Color.black; + } + + + bool am = a.inputCon.valueType == ValueType.VTm4x4; + bool bm = b.inputCon.valueType == ValueType.VTm4x4; + + Matrix4x4 mtx; + if( am && bm ) { + return Color.black; + } else if(am){ + mtx = ( a.inputCon.node as SFN_Matrix4x4 ).mtx; + return mtx * GetInputData( "B" )[x,y]; + } else if( bm ) { + mtx = ( b.inputCon.node as SFN_Matrix4x4 ).mtx; + return mtx.transpose * GetInputData( "A" )[x, y]; + } + return Color.black;*/ + } + + + + public override void NeatWindow() { + PrepareWindowColor(); + GUI.BeginGroup( rect ); + Rect r = new Rect( rectInner ); + r = r.Pad( 4 ); + + Rect texCoords = new Rect( r ); + texCoords.width /= 7; + texCoords.height /= 3; + texCoords.x = texCoords.y = 0; + GUI.DrawTextureWithTexCoords( r, SF_GUI.Handle_drag, texCoords, alphaBlend: true ); + + GUI.EndGroup(); + ResetWindowColor(); + + } + + + } +} \ No newline at end of file diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_MultiplyMatrix.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_MultiplyMatrix.cs.meta new file mode 100644 index 00000000..91806432 --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_MultiplyMatrix.cs.meta @@ -0,0 +1,12 @@ +fileFormatVersion: 2 +guid: adea9494f4e8c5a4a9e044ebb72374ee +timeCreated: 1436175018 +licenseType: Pro +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Negate.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Negate.cs new file mode 100644 index 00000000..7dc9b9bc --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Negate.cs @@ -0,0 +1,30 @@ +using UnityEngine; + +namespace ShaderForge { + + [System.Serializable] + public class SFN_Negate : SF_Node_Arithmetic { + + public SFN_Negate() { + } + + public override void Initialize() { + base.Initialize( "Negate" ); + base.PrepareArithmetic( 1 ); + base.shaderGenMode = ShaderGenerationMode.CustomFunction; + } + + public override string[] GetBlitOutputLines() { + return new string[] { "(-1*_in)" }; + } + + public override string Evaluate( OutChannel channel = OutChannel.All ) { + return "(-1*" + GetConnectorByStringID( "IN" ).TryEvaluate() + ")"; + } + + public override float EvalCPU( int c ) { + return -GetInputData( "IN", c ); + } + + } +} \ No newline at end of file diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Negate.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Negate.cs.meta new file mode 100644 index 00000000..f767f4f8 --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Negate.cs.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: e3df968e03820c742ab7e8c36642dca2 +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Node_Constant.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Node_Constant.cs new file mode 100644 index 00000000..2173e943 --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Node_Constant.cs @@ -0,0 +1,57 @@ +using UnityEngine; +using UnityEditor; +using System.Collections; + +namespace ShaderForge { + + [System.Serializable] + public class SFN_Node_Constant : SF_Node { + + + public float constFloat; + public string constStr; + + + + public SFN_Node_Constant() { + } + + public void PrepareConstant(string icon, string constant){ + base.showColor = true; + base.UseLowerPropertyBox( true, true ); + base.showLowerReadonlyValues = true; + base.texture.uniform = true; + base.shaderGenMode = ShaderGenerationMode.OffUniform; + constStr = constant; + constFloat = float.Parse( constant ); + + connectors = new SF_NodeConnector[]{ + SF_NodeConnector.Create(this,"OUT","",ConType.cOutput,ValueType.VTv1,false) + }; + base.texture.CompCount = 1; + base.texture.dataUniform[0] = constFloat; + node_height = Mathf.RoundToInt( node_height * 0.6666666666f ); + node_width = Mathf.RoundToInt( node_width * 0.6666666666f ); + InitializeDefaultRect( rect.center ); + + } + + public override string Evaluate( OutChannel channel = OutChannel.All ) { + return constStr; + } + + public override float EvalCPU( int c ) { + return constFloat; + } + + public override int GetEvaluatedComponentCount() { + return 1; + } + + /* + public override void DrawLowerPropertyBox() { + GUI.Label( lowerRect, texture.dataUniform[0].ToString(), EditorStyles.textField ); + }*/ + + } +} \ No newline at end of file diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Node_Constant.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Node_Constant.cs.meta new file mode 100644 index 00000000..91aca117 --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Node_Constant.cs.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 7c4dd42ed9362ff43a8f530348653ef1 +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Noise.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Noise.cs new file mode 100644 index 00000000..dfdf7665 --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Noise.cs @@ -0,0 +1,87 @@ +using UnityEngine; +using UnityEditor; +using System.Collections; +using System; + +namespace ShaderForge { + + [System.Serializable] + public class SFN_Noise : SF_Node { + + public SFN_Noise() { + + } + + public override void Initialize() { + base.Initialize( "Noise" ); + base.UseLowerPropertyBox(false); + base.showColor = true; + base.alwaysDefineVariable = true; + base.shaderGenMode = ShaderGenerationMode.CustomFunction; + connectors = new SF_NodeConnector[]{ + SF_NodeConnector.Create(this,"OUT","Rnd",ConType.cOutput,ValueType.VTv1,false), + SF_NodeConnector.Create(this,"XY","XY",ConType.cInput,ValueType.VTv2,false).SetRequired(false).TypecastTo(2).WithUseCount(3).SetGhostNodeLink(typeof(SFN_TexCoord),"UVOUT") + }; + } + + public override int GetEvaluatedComponentCount (){ + return 1; + } + + + public override void OnUpdateNode( NodeUpdateType updType, bool cascade = true ) { + if( InputsConnected() ) + RefreshValue( 1, 1 ); + base.OnUpdateNode( updType ); + } + + + + public string Skew() { + return GetVariableName() + "_skew"; + } + + public string Rnd() { + return GetVariableName() + "_rnd"; + } + + public override string[] GetBlitOutputLines() { + return new string[] { + "float2 s = _xy + 0.2127+_xy.x*0.3713*_xy.y;", + "float2 r = 4.789*sin(489.123*s);", + "frac(r.x*r.y*(1+s.x))" + }; + } + + public override string[] GetPreDefineRows (){ + + string p = this["XY"].TryEvaluate(); + string r = Rnd(); + string s = Skew(); + + return new string[]{ + "float2 "+s+" = "+p+" + 0.2127+"+p+".x*0.3713*"+p+".y;", + "float2 "+r+" = 4.789*sin(489.123*("+s+"));" + }; + } + + public override string Evaluate( OutChannel channel = OutChannel.All ) { + string r = Rnd(); + string s = Skew(); + return "frac("+r+".x*"+r+".y*(1+"+s+".x))"; + } + + public override Vector4 EvalCPU() { + + Vector2 p = GetInputIsConnected( "XY" ) ? GetInputData( "XY" ).dataUniform : Vector4.one; + + float tmp = 0.2127f+p.x*0.3713f*p.y; + Vector2 s = p + new Vector2(tmp,tmp); + + Vector2 r = Vector2.Scale (new Vector2(4.789f,4.789f), new Vector2(Mathf.Sin(489.123f*s.x),Mathf.Sin(489.123f*s.y))); + + return SF_Tools.Frac(r.x*r.y*(1f+s.x)) * Vector4.one; + } + + } +} \ No newline at end of file diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Noise.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Noise.cs.meta new file mode 100644 index 00000000..17817a63 --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Noise.cs.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: e1b0f1ce950794145888c8e0552a1bb0 +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_NormalBlend.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_NormalBlend.cs new file mode 100644 index 00000000..87a79ac4 --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_NormalBlend.cs @@ -0,0 +1,101 @@ +using UnityEngine; +using UnityEditor; +using System.Collections; +//using System; + +namespace ShaderForge { + + [System.Serializable] + public class SFN_NormalBlend : SF_Node { + + // SF_Node tNode; + + public SFN_NormalBlend() { + + } + + + public override void Initialize() { + base.Initialize( "Normal Blend" ); + base.showColor = true; + UseLowerReadonlyValues( false ); + base.alwaysDefineVariable = true; + base.shaderGenMode = ShaderGenerationMode.CustomFunction; + texture.CompCount = 3; + + connectors = new SF_NodeConnector[]{ + SF_NodeConnector.Create(this,"OUT","",ConType.cOutput,ValueType.VTv3,false), + SF_NodeConnector.Create(this,"BSE","Base",ConType.cInput,ValueType.VTv3,false).SetRequired(true), + SF_NodeConnector.Create(this,"DTL","Det.",ConType.cInput,ValueType.VTv3,false).SetRequired(true) + }; + + //extraWidthInput = 5; + + } + + + public override void OnUpdateNode( NodeUpdateType updType, bool cascade = true ) { + if( InputsConnected() ) + RefreshValue( 1, 2 ); + base.OnUpdateNode( updType ); + } + + public override bool IsUniformOutput() { + return ( GetInputData( "BSE" ).uniform && GetInputData( "DTL" ).uniform ); + } + + public override int GetEvaluatedComponentCount() { + return 3; + } + + public string BaseNrm() { + return GetVariableName() + "_nrm_base"; + } + public string DetailNrm() { + return GetVariableName() + "_nrm_detail"; + } + public string CombinedNrm() { + return GetVariableName() + "_nrm_combined"; + } + + /* + float3 t = nrmBase + float3(0, 0, 1); + float3 u = nrmDetail * float3(-1, -1, 1); + float3 rnm = t*dot(t, u)/t.z - u; + */ + + public override string[] GetBlitOutputLines() { + return new string[] { + "float3 bse = _bse.xyz + float3(0,0,1);", + "float3 dtl = _dtl.xyz * float3(-1,-1,1);", + "float4(bse*dot(bse, dtl)/bse.z - dtl,0)" + }; + } + + public override string[] GetPreDefineRows() { + return new string[] { + "float3 " + BaseNrm() + " = " + this["BSE"].TryEvaluate() + " + float3(0,0,1);", + "float3 " + DetailNrm() + " = " + this["DTL"].TryEvaluate() + " * float3(-1,-1,1);", + "float3 " + CombinedNrm() + " = " + BaseNrm() + "*dot(" + BaseNrm() + ", " + DetailNrm() + ")/" + BaseNrm() + ".z - " + DetailNrm() + ";" + }; + } + + public override string Evaluate( OutChannel channel = OutChannel.All ) { + return CombinedNrm(); + } + + public override Vector4 EvalCPU() { + + Vector3 bse = (Vector3)GetInputData( "BSE" ).dataUniform + new Vector3(0,0,1); + Vector3 dtl = Vector3.Scale( (Vector3)GetInputData( "DTL" ).dataUniform, new Vector3(-1,-1,1)); + + Vector3 cmb = bse*Vector3.Dot(bse, dtl)/bse.z - dtl; + + return cmb; + } + + + + + } +} \ No newline at end of file diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_NormalBlend.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_NormalBlend.cs.meta new file mode 100644 index 00000000..152c2591 --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_NormalBlend.cs.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: ed09b5422155445199a1bb8aa27d9d78 +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_NormalVector.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_NormalVector.cs new file mode 100644 index 00000000..91e7e30a --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_NormalVector.cs @@ -0,0 +1,78 @@ +using UnityEngine; +using UnityEditor; +using System.Collections; + +namespace ShaderForge { + + [System.Serializable] + public class SFN_NormalVector : SF_Node { + + + public bool perturbed; + + public SFN_NormalVector() { + + } + + public override void Initialize() { + perturbed = false; + base.Initialize( "Normal Dir.", InitialPreviewRenderMode.BlitSphere ); + base.showColor = true; + base.UseLowerPropertyBox( true, true ); + //UpdateIcon(); + base.texture.CompCount = 3; + base.neverDefineVariable = true; + connectors = new SF_NodeConnector[]{ + SF_NodeConnector.Create(this,"OUT","",ConType.cOutput,ValueType.VTv3,false) + }; + base.lockedVariableName = true; + } + + public override Vector4 EvalCPU() { + return new Color( 0, 0, 1, 0 ); + } + + public override string Evaluate( OutChannel channel = OutChannel.All ) { + if( SF_Evaluator.inVert || SF_Evaluator.inTess ) + return "v.normal"; + return perturbed ? "normalDirection" : "i.normalDir"; + } + /* + public void UpdateIcon() { + if(perturbed){ + texture.LoadDataTexture(this.GetType(), "2"); + } else { + texture.LoadDataTexture(this.GetType()); + } + base.texture.SetIconId( perturbed ? 1 : 0 ); + }*/ + + public override void DrawLowerPropertyBox() { + EditorGUI.BeginChangeCheck(); + Rect r = lowerRect; + r.xMin += 3; + perturbed = EditorGUI.Toggle( r, perturbed ); + r.xMin += 17; + GUI.Label(r,"Perturbed"); + if( EditorGUI.EndChangeCheck() ) { + //UpdateIcon(); + OnUpdateNode(); + } + + } + + public override string SerializeSpecialData() { + return "pt:" + perturbed; + } + + public override void DeserializeSpecialData( string key, string value ) { + switch( key ) { + case "pt": + perturbed = bool.Parse( value ); + //UpdateIcon(); + break; + } + } + + } +} \ No newline at end of file diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_NormalVector.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_NormalVector.cs.meta new file mode 100644 index 00000000..a829cc97 --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_NormalVector.cs.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 60dad608f3107a142b0f959e8671cf81 +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Normalize.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Normalize.cs new file mode 100644 index 00000000..2ea9432f --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Normalize.cs @@ -0,0 +1,44 @@ +using UnityEngine; + +namespace ShaderForge { + + [System.Serializable] + public class SFN_Normalize : SF_Node_Arithmetic { + + public SFN_Normalize() { + } + + public override void Initialize() { + base.Initialize( "Normalize" ); + base.PrepareArithmetic( 1 ); + base.shaderGenMode = ShaderGenerationMode.SimpleFunction; + } + + public override string Evaluate( OutChannel channel = OutChannel.All ) { + return "normalize(" + GetConnectorByStringID( "IN" ).TryEvaluate() + ")"; + } + + /* + public override float NodeOperator( int c ) { + return Mathf.Abs( GetInputData( 1, x, y, c ) ); + }*/ + + public override Vector4 EvalCPU() { + + Vector4 v = GetInputData( "IN" ).dataUniform; + + switch( GetInputData( "IN" ).CompCount ) { + case 1: + float val = Mathf.Sign( v.x ); + return new Vector4( val, val, val, val ); + case 2: + return (Vector4)((Vector2)v).normalized; + case 3: + return (Vector4)( (Vector3)v ).normalized; + default: + return v.normalized; + } + } + + } +} \ No newline at end of file diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Normalize.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Normalize.cs.meta new file mode 100644 index 00000000..36856509 --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Normalize.cs.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: eaaa4d2409678fa4aa98dd05538841e7 +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ObjectPosition.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ObjectPosition.cs new file mode 100644 index 00000000..4741261d --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ObjectPosition.cs @@ -0,0 +1,39 @@ +using UnityEngine; +using UnityEditor; +using System.Collections; + +namespace ShaderForge { + + [System.Serializable] + public class SFN_ObjectPosition : SF_Node { + + + public SFN_ObjectPosition() { + + } + + public override void Initialize() { + base.Initialize( "Object Pos." ); + base.showColor = true; + base.UseLowerPropertyBox( false ); + base.texture.CompCount = 4; + base.neverDefineVariable = true; + connectors = new SF_NodeConnector[]{ + SF_NodeConnector.Create(this,"XYZ","XYZ",ConType.cOutput,ValueType.VTv3,false).Outputting(OutChannel.RGB), + SF_NodeConnector.Create(this,"X","X",ConType.cOutput,ValueType.VTv1,false).Outputting(OutChannel.R).WithColor(Color.red), + SF_NodeConnector.Create(this,"Y","Y",ConType.cOutput,ValueType.VTv1,false).Outputting(OutChannel.G).WithColor(Color.green), + SF_NodeConnector.Create(this,"Z","Z",ConType.cOutput,ValueType.VTv1,false).Outputting(OutChannel.B).WithColor(Color.blue), + SF_NodeConnector.Create(this,"W","W",ConType.cOutput,ValueType.VTv1,false).Outputting(OutChannel.A) + }; + } + + public override Vector4 EvalCPU() { + return new Color( 0f, 0.7071068f, 0.7071068f, 0f ); + } + + public override string Evaluate( OutChannel channel = OutChannel.All ) { + return "objPos"; // normalize(_WorldSpaceLightPos0.xyz); + } + + } +} \ No newline at end of file diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ObjectPosition.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ObjectPosition.cs.meta new file mode 100644 index 00000000..34c6c1a6 --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ObjectPosition.cs.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 258f9aa8e54fb9646858e46b7fd133dd +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ObjectScale.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ObjectScale.cs new file mode 100644 index 00000000..172e1255 --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ObjectScale.cs @@ -0,0 +1,70 @@ +using UnityEngine; +using UnityEditor; +using System.Collections; + +namespace ShaderForge { + + [System.Serializable] + public class SFN_ObjectScale : SF_Node { + + + public bool reciprocal; + + public SFN_ObjectScale() { + + } + + public override void Initialize() { + base.Initialize( "Object Scale", InitialPreviewRenderMode.BlitQuad ); + base.showColor = true; + base.UseLowerPropertyBox( true, true ); + base.texture.CompCount = 3; + base.neverDefineVariable = true; + connectors = new SF_NodeConnector[]{ + SF_NodeConnector.Create(this,"XYZ","XYZ",ConType.cOutput,ValueType.VTv3,false), + SF_NodeConnector.Create(this,"X","X",ConType.cOutput,ValueType.VTv1,false).Outputting(OutChannel.R).WithColor(Color.red), + SF_NodeConnector.Create(this,"Y","Y",ConType.cOutput,ValueType.VTv1,false).Outputting(OutChannel.G).WithColor(Color.green), + SF_NodeConnector.Create(this,"Z","Z",ConType.cOutput,ValueType.VTv1,false).Outputting(OutChannel.B).WithColor(Color.blue) + }; + } + + public override Vector4 EvalCPU() { + return new Color( 1f, 1f, 1f, 1f ); + } + + public override string Evaluate( OutChannel channel = OutChannel.All ) { + return reciprocal ? "recipObjScale" : "objScale"; + } + + public override string GetBlitShaderSuffix() { + if( reciprocal ) + return "Reciprocal"; + return "Default"; + } + + public override void DrawLowerPropertyBox() { + EditorGUI.BeginChangeCheck(); + Rect r = lowerRect; + r.xMin += 3; + reciprocal = EditorGUI.Toggle( r, reciprocal ); + r.xMin += 17; + GUI.Label( r, "Reciprocal" ); + if( EditorGUI.EndChangeCheck() ) { + OnUpdateNode(); + } + } + + public override string SerializeSpecialData() { + return "rcp:" + reciprocal; + } + + public override void DeserializeSpecialData( string key, string value ) { + switch( key ) { + case "rcp": + reciprocal = bool.Parse( value ); + break; + } + } + + } +} \ No newline at end of file diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ObjectScale.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ObjectScale.cs.meta new file mode 100644 index 00000000..3d278bf7 --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ObjectScale.cs.meta @@ -0,0 +1,9 @@ +fileFormatVersion: 2 +guid: cdfee0322d93a3349a5b3cb98e76c9ca +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_OneMinus.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_OneMinus.cs new file mode 100644 index 00000000..326afe8f --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_OneMinus.cs @@ -0,0 +1,57 @@ +using UnityEngine; +using UnityEditor; +using System.Collections; +using System; + +namespace ShaderForge { + + [System.Serializable] + public class SFN_OneMinus : SF_Node { + + public SFN_OneMinus() { + + } + + public override void Initialize() { + base.Initialize( "One Minus" ); + base.showColor = true; + base.shaderGenMode = ShaderGenerationMode.CustomFunction; + UseLowerReadonlyValues( true ); + + connectors = new SF_NodeConnector[]{ + SF_NodeConnector.Create(this,"OUT","",ConType.cOutput,ValueType.VTvPending,false), + SF_NodeConnector.Create(this,"IN","",ConType.cInput,ValueType.VTvPending,false).SetRequired(true) + }; + + base.conGroup = ScriptableObject.CreateInstance().Initialize( connectors[0], connectors[1] ); + } + + public override int GetEvaluatedComponentCount() { + return this["IN"].GetCompCount(); + } + + public override bool IsUniformOutput() { + return GetInputData( "IN" ).uniform; + } + + public override string[] GetBlitOutputLines() { + return new string[] { "1.0 - _in" }; + } + + + // New system + public override void RefreshValue() { + RefreshValue( 1, 1 ); + } + + public override string Evaluate( OutChannel channel = OutChannel.All ) { + return "(1.0 - " + GetConnectorByStringID( "IN" ).TryEvaluate() + ")"; + } + + public override float EvalCPU( int c ) { + return 1f - GetInputData( "IN", c ); + } + + + } +} \ No newline at end of file diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_OneMinus.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_OneMinus.cs.meta new file mode 100644 index 00000000..ae830191 --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_OneMinus.cs.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 553497763edc19b4a854a3f6c55a2782 +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Panner.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Panner.cs new file mode 100644 index 00000000..8f832670 --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Panner.cs @@ -0,0 +1,161 @@ +using UnityEngine; +using UnityEditor; +using System.Collections; +//using System; + +namespace ShaderForge { + + [System.Serializable] + public class SFN_Panner : SF_Node { + + // SF_Node tNode; + + + public Vector2 speed = new Vector2(1,1); + + public SFN_Panner() { + + } + + + public override void Initialize() { + base.Initialize( "Panner" ); + base.showColor = true; + base.UseLowerPropertyBox( true, true ); + base.shaderGenMode = ShaderGenerationMode.Modal; + texture.CompCount = 2; + connectors = new SF_NodeConnector[]{ + SF_NodeConnector.Create(this,"UVOUT","UV",ConType.cOutput,ValueType.VTv2,false), + SF_NodeConnector.Create(this,"UVIN","UV",ConType.cInput,ValueType.VTv2,false).SetRequired(true)/*.SetGhostNodeLink(typeof(SFN_TexCoord),"UVOUT")*/, + SF_NodeConnector.Create(this,"DIST","Dist",ConType.cInput,ValueType.VTv1,false).SetRequired(false).SetGhostNodeLink(typeof(SFN_Time),"T") + }; + + } + + + public override void DrawLowerPropertyBox() { + //EditorGUI.BeginChangeCheck(); + Rect r = lowerRect; + r.width /= 8; + GUI.Label(r,"U"); + r.x += r.width; + r.width *= 3; + //SF_GUI.EnterableFloatField( this, r, ref speed.x, EditorStyles.textField ); + UndoableEnterableFloatField( r, ref speed.x, "U speed", EditorStyles.textField ); + //speed.x = EditorGUI.FloatField( r, speed.x ); + r.x += r.width; + r.width /= 3; + GUI.Label( r, "V" ); + r.x += r.width; + r.width *= 3; + //SF_GUI.EnterableFloatField( this, r, ref speed.y, EditorStyles.textField ); + UndoableEnterableFloatField( r, ref speed.y, "V speed", EditorStyles.textField ); + //speed.y = EditorGUI.FloatField( r, speed.y ); + + //if( EditorGUI.EndChangeCheck() ) { + // OnUpdateNode(); + //} + + } + + public override string[] ExtraPassedFloatProperties() { + return new string[]{ + "Uspeed", + "Vspeed" + }; + } + + public override string[] GetModalModes() { + return new string[]{ + "REQONLY", + "DIST" + }; + } + + public override string GetCurrentModalMode() { + if( this["DIST"].IsConnectedAndEnabled() ) + return "DIST"; + return "REQONLY"; + } + + public override void PrepareRendering( Material mat ) { + mat.SetFloat( "_uspeed", speed.x ); + mat.SetFloat( "_vspeed", speed.y ); + } + + public override string[] GetBlitOutputLines( string mode ) { + string distStr = mode == "DIST" ? "_dist.x" : "0"; + return new string[]{ + "float4((_uvin.xy+" + distStr + "*float2(_uspeed,_vspeed)),0,0)" + }; + } + + public override void OnUpdateNode( NodeUpdateType updType = NodeUpdateType.Hard, bool cascade = true ) { + if( InputsConnected() ) + RefreshValue( 1, 2 ); + base.OnUpdateNode( updType ); + } + + public override bool IsUniformOutput() { + if(this["UVIN"].IsConnectedAndEnabled() && this["DIST"].IsConnectedAndEnabled()){ + return ( GetInputData( "UVIN" ).uniform && GetInputData( "DIST" ).uniform ); + } + return false; + } + + public override int GetEvaluatedComponentCount() { + return 2; + } + + public override bool UpdatesOverTime() { + return true; //GetInputIsConnected( "DIST" ); + } + + + public override string Evaluate( OutChannel channel = OutChannel.All ) { + string distEval = this["DIST"].TryEvaluate(); + return "(" + GetInputCon( "UVIN" ).Evaluate() + "+" + distEval + "*float2(" + speed.x + "," + speed.y + "))"; + } + + // TODO Expose more out here! + public override Vector4 EvalCPU() { + + Vector2 inputVec = Vector2.one; + + if(GetInputIsConnected("UVIN")){ + inputVec = new Vector2( GetInputData( "UVIN", 0 ), GetInputData( "UVIN", 1 ) ); + } else { + //inputVec = new Vector2( x/((float)SF_Node.NODE_SIZE), y/SF_NodeData.RESf ); // TODO: should use ghost nodes... + } + + + float distance = GetInputIsConnected( "DIST" ) ? GetInputData( "DIST", 0 ) : 0f; + return (Vector4)( inputVec + speed * distance ); + } + + + public override string SerializeSpecialData() { + string s = "spu:" + speed.x + ","; + s += "spv:" + speed.y; + return s; + } + + public override void DeserializeSpecialData( string key, string value ) { + switch( key ) { + case "spu": + float fVal1 = float.Parse( value ); + speed.x = fVal1; + break; + case "spv": + float fVal2 = float.Parse( value ); + speed.y = fVal2; + break; + } + } + + + + + + } +} \ No newline at end of file diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Panner.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Panner.cs.meta new file mode 100644 index 00000000..2f12f188 --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Panner.cs.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 42c03a582f7865e4ab828b6649d825a8 +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Parallax.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Parallax.cs new file mode 100644 index 00000000..9d5a46d2 --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Parallax.cs @@ -0,0 +1,142 @@ +using UnityEngine; +using UnityEditor; +using System.Collections; +//using System; + +namespace ShaderForge { + + [System.Serializable] + public class SFN_Parallax : SF_Node { + + // SF_Node tNode; + + public SFN_Parallax() { + + } + + + public override void Initialize() { + base.Initialize( "Parallax" ); + base.showColor = true; + base.shaderGenMode = ShaderGenerationMode.ManualModal; + UseLowerReadonlyValues( false ); + texture.CompCount = 2; + //SF_NodeConnection lerpCon; + connectors = new SF_NodeConnector[]{ + SF_NodeConnector.Create(this,"UVOUT","UV",ConType.cOutput,ValueType.VTv2,false).Outputting(OutChannel.RG), + SF_NodeConnector.Create(this,"UVIN","UV",ConType.cInput,ValueType.VTv2,false).SetGhostNodeLink(typeof(SFN_TexCoord),"UVOUT"), + SF_NodeConnector.Create(this,"HEI","Hei",ConType.cInput,ValueType.VTv1,false).SetRequired(true), + SF_NodeConnector.Create(this,"DEP","Dep",ConType.cInput,ValueType.VTv1,false), + SF_NodeConnector.Create(this,"REF","Ref",ConType.cInput,ValueType.VTv1,false) + }; + + //base.conGroup = ScriptableObject.CreateInstance().Initialize( connectors[0], connectors[1], connectors[2] ); + } + + + public override void OnUpdateNode( NodeUpdateType updType, bool cascade = true ) { + if( InputsConnected() ) + RefreshValue( 1, 2 ); + base.OnUpdateNode( updType ); + } + + + public override bool IsUniformOutput() { + return false; + } + + public override int GetEvaluatedComponentCount() { + return 2; + } + + public override string GetCurrentModalMode() { + + + bool uvCon = GetInputIsConnected( "UVIN" ); + bool refCon = GetInputIsConnected( "REF" ); + bool depCon = GetInputIsConnected( "DEP" ); + + if( !uvCon && !refCon && !depCon ) { + return "REQONLY"; + } + + if( uvCon && !refCon && !depCon ) { + return "UV"; + } + + string s = ""; + if( refCon && depCon ) { + s = "DEP_REF"; + } else { + if( refCon ) + s = "REF"; + else + s = "DEP"; + } + + + if( GetInputIsConnected( "UVIN" ) ) { + s = "UV_" + s; + } + + return s; + + } + + public override string[] GetModalModes() { + return new string[] { + "REQONLY", + "DEP", + "REF", + "DEP_REF", + "UV", + "UV_DEP", + "UV_REF", + "UV_DEP_REF", + }; + } + + public override string[] GetBlitOutputLines( string mode ) { + + string uvStr = mode.Contains( "UV" ) ? "_uv.xy" : "i.uv0.xy"; + string depStr = mode.Contains( "DEP" ) ? "_dep.x" : "0.05"; + string refStr = mode.Contains( "REF" ) ? "_ref.x" : "0.5"; + string vDir = "mul(tangentTransform, viewDirection).xy"; + + string line = string.Format( "({0}*({1} - {2})*{3} + {4})", depStr, "_hei", refStr, vDir, uvStr ); + return new string[] { line }; + + } + + + public override string Evaluate( OutChannel channel = OutChannel.All ) { + + string uv = GetInputIsConnected( "UVIN" ) ? GetInputCon( "UVIN" ).Evaluate() : "i.uv0.xy"; + string hei = GetInputCon( "HEI" ).Evaluate(); + string dep = GetInputIsConnected( "DEP" ) ? GetInputCon( "DEP" ).Evaluate() : "0.05"; + string href = GetInputIsConnected( "REF" ) ? GetInputCon( "REF" ).Evaluate() : "0.5"; + string vDir = "mul(tangentTransform, viewDirection).xy"; + + return "(" + dep + "*(" + hei + " - " + href + ")*" + vDir + " + " + uv + ")"; + } + + // TODO Expose more out here! + public override float EvalCPU( int c ) { + + //return 1f; + + + if( GetInputIsConnected( "UVIN" ) && GetInputIsConnected( "HEI" ) ) { // UV and height connected ? + float hei = GetInputData( "HEI", c ); + float dep = GetInputIsConnected( "DEP" ) ? GetInputData( "DEP", c ) : 0.05f; + float href = GetInputIsConnected( "REF" ) ? GetInputData( "REF", c ) : 0.5f; + return GetInputData( "UVIN", c ) - ( dep * ( hei - href ) ); + } + else + return 0; + //return Lerp( GetInputData( 1, x, y, c ), GetInputData( 2, x, y, c ), GetInputData( 3, x, y, c ) ); + } + + + } +} \ No newline at end of file diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Parallax.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Parallax.cs.meta new file mode 100644 index 00000000..ac9cd6b8 --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Parallax.cs.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 45449b9f1a89a1f419300f90e557f9b6 +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Phi.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Phi.cs new file mode 100644 index 00000000..2f6d6733 --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Phi.cs @@ -0,0 +1,19 @@ +using UnityEngine; +using UnityEditor; +using System.Collections; + +namespace ShaderForge { + + [System.Serializable] + public class SFN_Phi : SFN_Node_Constant { + + public SFN_Phi() { + } + + public override void Initialize() { + base.Initialize( "Phi" ); + base.PrepareConstant( "const_phi", "1.61803398875" ); + } + + } +} \ No newline at end of file diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Phi.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Phi.cs.meta new file mode 100644 index 00000000..0c3c0988 --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Phi.cs.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: d74bd6a57e872b440a8754bf05a4e9cc +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Pi.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Pi.cs new file mode 100644 index 00000000..a4d2869d --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Pi.cs @@ -0,0 +1,19 @@ +using UnityEngine; +using UnityEditor; +using System.Collections; + +namespace ShaderForge { + + [System.Serializable] + public class SFN_Pi : SFN_Node_Constant { + + public SFN_Pi() { + } + + public override void Initialize() { + base.Initialize( "Pi" ); + base.PrepareConstant( "const_pi", "3.141592654" ); + } + + } +} \ No newline at end of file diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Pi.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Pi.cs.meta new file mode 100644 index 00000000..f4dd274f --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Pi.cs.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: f2b0c407da0b7b8439fdd2e019fed284 +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_PixelSize.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_PixelSize.cs new file mode 100644 index 00000000..bb37d554 --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_PixelSize.cs @@ -0,0 +1,38 @@ +using UnityEngine; +using UnityEditor; +using System.Collections; + +namespace ShaderForge { + + [System.Serializable] + public class SFN_PixelSize : SF_Node { + + + public SFN_PixelSize() { + + } + + public override void Initialize() { + base.Initialize( "Pixel Size" ); + base.SearchName = "Pixel Size"; + base.showColor = true; + base.UseLowerPropertyBox( false ); + base.texture.CompCount = 2; + connectors = new SF_NodeConnector[]{ + SF_NodeConnector.Create(this,"PXWH","XY",ConType.cOutput,ValueType.VTv2,false).Outputting(OutChannel.RG), + SF_NodeConnector.Create(this,"PXW","X",ConType.cOutput,ValueType.VTv1,false).Outputting(OutChannel.R).WithColor(Color.red), + SF_NodeConnector.Create(this,"PXH","Y",ConType.cOutput,ValueType.VTv1,false).Outputting(OutChannel.G).WithColor(Color.green) + }; + //base.extraWidthOutput = 12; + } + + public override Vector4 EvalCPU() { + return new Color( 1f/1920f, 1f/1080f, 0f, 0f ); + } + + public override string Evaluate( OutChannel channel = OutChannel.All ) { + return "float2( _ScreenParams.z-1, _ScreenParams.w-1 )"; + } + + } +} \ No newline at end of file diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_PixelSize.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_PixelSize.cs.meta new file mode 100644 index 00000000..354ab356 --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_PixelSize.cs.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: a2079e0d7a4d6dc4daf9b1214f41b8fb +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Posterize.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Posterize.cs new file mode 100644 index 00000000..8f6e6436 --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Posterize.cs @@ -0,0 +1,48 @@ +using UnityEngine; + +namespace ShaderForge { + + [System.Serializable] + public class SFN_Posterize : SF_Node_Arithmetic { + + public SFN_Posterize() { + } + + public override void Initialize() { + base.Initialize( "Posterize" ); + base.showColor = true; + base.shaderGenMode = ShaderGenerationMode.CustomFunction; + UseLowerReadonlyValues( true ); + connectors = new SF_NodeConnector[]{ + SF_NodeConnector.Create( this, "OUT", "", ConType.cOutput, ValueType.VTvPending, false ), + SF_NodeConnector.Create( this, "IN", "", ConType.cInput, ValueType.VTvPending, false ).SetRequired( true ), + SF_NodeConnector.Create( this, "STPS", "Steps", ConType.cInput, ValueType.VTv1, false ).SetRequired( true ).WithUseCount(2) + }; + base.conGroup = ScriptableObject.CreateInstance().Initialize( connectors[0], connectors[1]); + base.extraWidthInput = 6; + } + + public override bool IsUniformOutput() { + return ( GetInputData( "IN" ).uniform && GetInputData( "STPS" ).uniform ); + } + + public override string[] GetBlitOutputLines() { + return new string[] { "floor(_in * _stps) / (_stps - 1)" }; + } + + public override string Evaluate( OutChannel channel = OutChannel.All ) { + + string mainInput = GetConnectorByStringID( "IN" ).TryEvaluate(); + string steps = GetConnectorByStringID( "STPS" ).TryEvaluate(); + + + return "floor(" + mainInput + " * " + steps + ") / (" + steps + " - 1)"; + } + + public override float EvalCPU( int c ) { + float steps = GetInputData( "STPS", c ); + return Mathf.Floor( GetInputData( "IN", c ) * steps ) / (steps - 1); + } + + } +} \ No newline at end of file diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Posterize.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Posterize.cs.meta new file mode 100644 index 00000000..f244fa48 --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Posterize.cs.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: ce4916dc08f684bff93ce9a9f0c72f79 +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Power.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Power.cs new file mode 100644 index 00000000..bf806501 --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Power.cs @@ -0,0 +1,56 @@ +using UnityEngine; +using UnityEditor; +using System.Collections; +using System; + +namespace ShaderForge { + + [System.Serializable] + public class SFN_Power : SF_Node { + + public SFN_Power() { + + } + + public override void Initialize() { + base.Initialize( "Power" ); + base.showColor = true; + base.shaderGenMode = ShaderGenerationMode.CustomFunction; + UseLowerReadonlyValues( true ); + + connectors = new SF_NodeConnector[]{ + SF_NodeConnector.Create(this,"OUT","",ConType.cOutput,ValueType.VTvPending,false), + SF_NodeConnector.Create(this,"VAL","Val",ConType.cInput,ValueType.VTvPending,false).SetRequired(true), + SF_NodeConnector.Create(this,"EXP","Exp",ConType.cInput,ValueType.VTvPending,false).SetRequired(true) + }; + + base.conGroup = ScriptableObject.CreateInstance().Initialize( connectors[0], connectors[1], connectors[2] ); + } + + + public override int GetEvaluatedComponentCount() { + return Mathf.Max( this["VAL"].GetCompCount(), this["EXP"].GetCompCount() ); + } + + public override bool IsUniformOutput() { + return ( GetInputData( "VAL" ).uniform && GetInputData( "EXP" ).uniform ); + } + + public override string[] GetBlitOutputLines() { + return new string[] { "pow(_val,_exp)" }; + } + + public override string Evaluate( OutChannel channel = OutChannel.All ) { + return "pow(" + GetInputCon( "VAL" ).Evaluate() + "," + GetInputCon( "EXP" ).Evaluate() + ")"; + } + + // New system + public override void RefreshValue() { + RefreshValue( 1, 2 ); + } + + public override float EvalCPU( int c ) { + return Mathf.Pow( GetInputData( "VAL", c ), GetInputData( "EXP", c ) ); + } + } +} \ No newline at end of file diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Power.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Power.cs.meta new file mode 100644 index 00000000..73d8ad91 --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Power.cs.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 186b007e983e194498489dc426592f34 +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ProjectionParameters.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ProjectionParameters.cs new file mode 100644 index 00000000..b34c2170 --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ProjectionParameters.cs @@ -0,0 +1,40 @@ +using UnityEngine; +using UnityEditor; +using System.Collections; + +namespace ShaderForge { + + [System.Serializable] + public class SFN_ProjectionParameters : SF_Node { + + + public SFN_ProjectionParameters() { + + } + + public override void Initialize() { + base.Initialize( "Proj. Params" ); + base.SearchName = "Projection Parameters"; + base.showColor = true; + base.UseLowerPropertyBox( false ); + base.texture.CompCount = 4; + base.neverDefineVariable = true; + connectors = new SF_NodeConnector[]{ + SF_NodeConnector.Create(this,"SGN","Sign",ConType.cOutput,ValueType.VTv1,false).Outputting(OutChannel.R), + SF_NodeConnector.Create(this,"NEAR","Near",ConType.cOutput,ValueType.VTv1,false).Outputting(OutChannel.G), + SF_NodeConnector.Create(this,"FAR","Far",ConType.cOutput,ValueType.VTv1,false).Outputting(OutChannel.B), + SF_NodeConnector.Create(this,"RFAR","1/Far",ConType.cOutput,ValueType.VTv1,false).Outputting(OutChannel.A) + }; + base.extraWidthOutput = 7; + } + + public override Vector4 EvalCPU() { + return new Color( 0f, 0.7071068f, 0.7071068f, 0f ); + } + + public override string Evaluate( OutChannel channel = OutChannel.All ) { + return "_ProjectionParams"; + } + + } +} \ No newline at end of file diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ProjectionParameters.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ProjectionParameters.cs.meta new file mode 100644 index 00000000..c9cbbf47 --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ProjectionParameters.cs.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 6725d93fa4d8e5a4eadd259e63cf8914 +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Reciprocal.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Reciprocal.cs new file mode 100644 index 00000000..92da5d87 --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Reciprocal.cs @@ -0,0 +1,59 @@ +using UnityEngine; +using UnityEditor; +using System.Collections; +using System; + +namespace ShaderForge { + + [System.Serializable] + public class SFN_Reciprocal : SF_Node { + + public SFN_Reciprocal() { + + } + + public override void Initialize() { + base.Initialize( "Reciprocal" ); + base.showColor = true; + base.shaderGenMode = ShaderGenerationMode.CustomFunction; + UseLowerReadonlyValues( true ); + + connectors = new SF_NodeConnector[]{ + SF_NodeConnector.Create(this,"OUT","",ConType.cOutput,ValueType.VTvPending,false), + SF_NodeConnector.Create(this,"IN","",ConType.cInput,ValueType.VTvPending,false).SetRequired(true) + }; + + base.conGroup = ScriptableObject.CreateInstance().Initialize( connectors[0], connectors[1] ); + } + + public override int GetEvaluatedComponentCount() { + return this["IN"].GetCompCount(); + } + + public override bool IsUniformOutput() { + return GetInputData( "IN" ).uniform; + } + + public override string[] GetBlitOutputLines() { + return new string[] { "(1.0 / _in)" }; + } + + // New system + public override void RefreshValue() { + RefreshValue( 1, 1 ); + } + + public override string Evaluate( OutChannel channel = OutChannel.All ) { + return "(1.0 / " + GetConnectorByStringID( "IN" ).TryEvaluate() + ")"; + } + + public override float EvalCPU( int c ) { + float val = GetInputData( "IN", c ); + if(val == 0) + val = float.MaxValue; + return 1f / val; + } + + + } +} \ No newline at end of file diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Reciprocal.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Reciprocal.cs.meta new file mode 100644 index 00000000..1e1e4260 --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Reciprocal.cs.meta @@ -0,0 +1,12 @@ +fileFormatVersion: 2 +guid: 9f87f5b738b04eb4d8d512131e680f39 +timeCreated: 1436199973 +licenseType: Pro +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Reflect.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Reflect.cs new file mode 100644 index 00000000..53b60e09 --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Reflect.cs @@ -0,0 +1,34 @@ +using UnityEngine; + +namespace ShaderForge { + + [System.Serializable] + public class SFN_Reflect : SF_Node_Arithmetic { + + public SFN_Reflect() { + + } + + public override void Initialize() { + base.Initialize( "Reflect" ); + base.PrepareArithmetic( 2 ); + connectors[1].label = "I"; + connectors[2].label = "N"; + base.shaderGenMode = ShaderGenerationMode.SimpleFunction; + } + + public override string Evaluate( OutChannel channel = OutChannel.All ) { + return "reflect(" + GetConnectorByStringID( "A" ).TryEvaluate() + "," + GetConnectorByStringID( "B" ).TryEvaluate() + ")"; + } + + public override Vector4 EvalCPU() { + Color i = GetInputData( "A" ).dataUniform; + Color n = GetInputData( "B" ).dataUniform; + int cc = Mathf.Max(GetInputCon( "A" ).GetCompCount(), GetInputCon( "B" ).GetCompCount()); + float dot = SF_Tools.Dot(i, n, cc); + return i - 2 * n * dot; + } + + + } +} \ No newline at end of file diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Reflect.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Reflect.cs.meta new file mode 100644 index 00000000..fdcd0cec --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Reflect.cs.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 133722a37716917478fcc26301e64759 +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Relay.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Relay.cs new file mode 100644 index 00000000..07c61ea6 --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Relay.cs @@ -0,0 +1,69 @@ +using UnityEngine; +using UnityEditor; +using System.Collections; + +namespace ShaderForge { + + [System.Serializable] + public class SFN_Relay : SF_Node_Arithmetic { + + + public SFN_Relay() { + + } + + public override void Initialize() { + node_height = 24; + node_width = 40; + base.Initialize( "Relay" ); + lowerRect.y -= 8; + lowerRect.height = 28; + base.showColor = false; + base.discreteTitle = true; + base.UseLowerPropertyBox( true, true ); + base.shaderGenMode = ShaderGenerationMode.CustomFunction; + extraWidthInput = -9; + extraWidthOutput = -9; + //base.texture.uniform = true; + //base.texture.CompCount = 1; + + connectors = new SF_NodeConnector[]{ + SF_NodeConnector.Create(this,"OUT","",ConType.cOutput,ValueType.VTvPending,false), + SF_NodeConnector.Create(this,"IN","",ConType.cInput,ValueType.VTvPending,false).SetRequired(true), + }; + + base.conGroup = ScriptableObject.CreateInstance().Initialize( connectors[0], connectors[1]); + + } + + public override string[] GetBlitOutputLines() { + return new string[] { "_in" }; + } + + public override string Evaluate( OutChannel channel = OutChannel.All ) { + return GetConnectorByStringID( "IN" ).TryEvaluate(); + } + + public override float EvalCPU( int c ) { + return GetInputData( "IN", c ); + } + + + public override void DrawLowerPropertyBox() { + Rect r = new Rect( lowerRect ); + r.yMin += 4; + r.yMax -= 2; + r.xMin += 2; + Rect texCoords = new Rect( r ); + texCoords.width /= 7; + texCoords.height /= 3; + texCoords.x = texCoords.y = 0; + GUI.DrawTextureWithTexCoords( r, SF_GUI.Handle_drag, texCoords, alphaBlend:true ); + } + + + + + + } +} \ No newline at end of file diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Relay.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Relay.cs.meta new file mode 100644 index 00000000..ca9d5abb --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Relay.cs.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 7fb81051589734669a06831b008982b6 +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_RemapRange.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_RemapRange.cs new file mode 100644 index 00000000..a1c53754 --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_RemapRange.cs @@ -0,0 +1,151 @@ +using UnityEngine; +using UnityEditor; +using System.Collections; +//using System; + +namespace ShaderForge { + + [System.Serializable] + public class SFN_RemapRange : SF_Node_Arithmetic { + + // SF_Node tNode; + + [SerializeField] + Vector2 from = new Vector2(0,1); + [SerializeField] + Vector2 to = new Vector2(-1,1); + [SerializeField] + float multiplier = 2f; + float offset = -1f; + + + public SFN_RemapRange() { + + } + + + public override void Initialize() { + base.Initialize( "Remap (Simple)" ); + base.SearchName = "Remap Simple"; + base.showColor = true; + base.UseLowerPropertyBox( true, true ); + base.PrepareArithmetic(1); + base.node_height += 15; + base.shaderGenMode = ShaderGenerationMode.ValuePassing; + UpdateMultOffset(); + + } + + + // n-p*m = x + + public override string[] ExtraPassedFloatProperties() { + return new string[]{ + "Multiplier", + "Offset" + }; + } + + public override void PrepareRendering( Material mat ) { + UpdateMultOffset(); + mat.SetFloat( "_multiplier", multiplier ); + mat.SetFloat( "_offset", offset ); + } + + public override string[] GetBlitOutputLines() { + return new string[]{ + "_in*_multiplier+_offset" + }; + } + + + public override void DrawLowerPropertyBox() { + //EditorGUI.BeginChangeCheck(); + Rect r = lowerRect; + r.height = 15; + r.y += 2; + r.width /= 3; + + Vector2 befFrom = from; + Vector2 befTo = to; + DrawRemapLine(ref r, "From", ref from); + DrawRemapLine(ref r, "To", ref to); + + if( (from != befFrom) || (to != befTo) ){ + UpdateMultOffset(); + } + + + } + + // x = n/p + + public void UpdateMultOffset(){ + float oldRange = from.y - from.x; + float newRange = to.y - to.x; + multiplier = newRange/oldRange; // Might need to warn on division by zero + offset = to.x - from.x * multiplier; + } + + public void DrawRemapLine(ref Rect r, string label, ref Vector2 target){ + GUI.Label(r.PadRight(4),label,SF_Styles.MiniLabelRight); + r = r.MovedRight(); + //SF_GUI.EnterableFloatField( this, r, ref target.x, EditorStyles.textField ); + UndoableEnterableFloatField(r, ref target.x, "lower '" + label.ToLower() + "' value", EditorStyles.textField); + r = r.MovedRight(); + //SF_GUI.EnterableFloatField( this, r, ref target.y, EditorStyles.textField ); + UndoableEnterableFloatField(r, ref target.y, "upper '" + label.ToLower() + "' value", EditorStyles.textField); + r = r.MovedDown().MovedLeft(2); + } + + + public override void OnUpdateNode( NodeUpdateType updType = NodeUpdateType.Hard, bool cascade = true ) { + UpdateMultOffset(); + if( InputsConnected() ) + RefreshValue( 1, 2 ); + base.OnUpdateNode( updType ); + } + + public override string Evaluate( OutChannel channel = OutChannel.All ) { + string inVal = GetInputCon( "IN" ).Evaluate(); + return "(" + inVal + "*" + multiplier.ToString( "0.0###########" ) + "+" + offset.ToString( "0.0###########" ) + ")"; + } + + // TODO Expose more out here! + public override float EvalCPU( int c ) { + return GetInputData( "IN", c ) * multiplier + offset; + } + + + public override string SerializeSpecialData() { + string s = ""; + s += "frmn:" + from.x + ","; + s += "frmx:" + from.y + ","; + s += "tomn:" + to.x + ","; + s += "tomx:" + to.y; + return s; + } + + public override void DeserializeSpecialData( string key, string value ) { + switch( key ) { + case "frmn": + from.x = float.Parse( value ); + break; + case "frmx": + from.y = float.Parse( value ); + break; + case "tomn": + to.x = float.Parse( value ); + break; + case "tomx": + to.y = float.Parse( value ); + break; + } + } + + + + + + } +} \ No newline at end of file diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_RemapRange.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_RemapRange.cs.meta new file mode 100644 index 00000000..f15e85d4 --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_RemapRange.cs.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 4dd68e3505e874a599219c31449c75c7 +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_RemapRangeAdvanced.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_RemapRangeAdvanced.cs new file mode 100644 index 00000000..4d9e804c --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_RemapRangeAdvanced.cs @@ -0,0 +1,94 @@ +using UnityEngine; +using UnityEditor; +using System.Collections; +//using System; + +namespace ShaderForge { + + [System.Serializable] + public class SFN_RemapRangeAdvanced : SF_Node_Arithmetic { + + + public SFN_RemapRangeAdvanced() { + + } + + + public override void Initialize() { + base.Initialize( "Remap" ); + base.SearchName = "Remap"; + base.PrepareArithmetic( 5 ); + base.shaderGenMode = ShaderGenerationMode.CustomFunction; + + + + connectors = new SF_NodeConnector[]{ + SF_NodeConnector.Create( this, "OUT", "", ConType.cOutput, ValueType.VTvPending, false ), + SF_NodeConnector.Create( this, "IN", "Val", ConType.cInput, ValueType.VTvPending, false ).SetRequired( true ), + SF_NodeConnector.Create( this, "IMIN", "iMin", ConType.cInput, ValueType.VTvPending, false ).SetRequired( true ), + SF_NodeConnector.Create( this, "IMAX", "iMax", ConType.cInput, ValueType.VTvPending, false ).SetRequired( true ), + SF_NodeConnector.Create( this, "OMIN", "oMin", ConType.cInput, ValueType.VTvPending, false ).SetRequired( true ), + SF_NodeConnector.Create( this, "OMAX", "oMax", ConType.cInput, ValueType.VTvPending, false ).SetRequired( true )}; + base.conGroup = ScriptableObject.CreateInstance().Initialize(connectors[0], connectors[1], connectors[2], connectors[3], connectors[4], connectors[5] ); + base.extraWidthInput = 6; + GetConnectorByStringID("IMIN").usageCount = 2; + GetConnectorByStringID("OMIN").usageCount = 2; + + } + + + public override bool IsUniformOutput() { + + if(InputsConnected()){ + return ( GetInputData( "IN" ).uniform && GetInputData( "IMIN" ).uniform && GetInputData( "IMAX" ).uniform && GetInputData( "OMIN" ).uniform && GetInputData( "OMAX" ).uniform ); + } + return true; + + + } + + + + + public override void OnUpdateNode( NodeUpdateType updType = NodeUpdateType.Hard, bool cascade = true ) { + if( InputsConnected() ) + RefreshValue( 1, 2 ); + base.OnUpdateNode( updType ); + } + + + public override string[] GetBlitOutputLines() { + return new string[] { + "(_omin + ( (_in - _imin) * (_omax - _omin) ) / (_imax - _imin))" + }; + } + + public override string Evaluate( OutChannel channel = OutChannel.All ) { + + string val = GetInputCon( "IN" ).Evaluate(); + string iMin = GetInputCon( "IMIN" ).Evaluate(); + string iMax = GetInputCon( "IMAX" ).Evaluate(); + string oMin = GetInputCon( "OMIN" ).Evaluate(); + string oMax = GetInputCon( "OMAX" ).Evaluate(); + + return "(" + oMin + " + ( (" + val + " - " + iMin + ") * (" + oMax + " - " + oMin + ") ) / (" + iMax + " - " + iMin + "))"; + } + + // TODO Expose more out here! + public override float EvalCPU( int c ) { + float val = GetInputData( "IN", c ); + float iMin = GetInputData( "IMIN", c ); + float iMax = GetInputData( "IMAX", c ); + float oMin = GetInputData( "OMIN", c ); + float oMax = GetInputData( "OMAX", c ); + + return oMin + ( (val - iMin) * (oMax - oMin) ) / (iMax - iMin); + } + + + + + + + } +} \ No newline at end of file diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_RemapRangeAdvanced.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_RemapRangeAdvanced.cs.meta new file mode 100644 index 00000000..431d0dc6 --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_RemapRangeAdvanced.cs.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 5a2bcf3599de6412c9ed20eac230ef44 +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_RgbToHsv.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_RgbToHsv.cs new file mode 100644 index 00000000..2d504028 --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_RgbToHsv.cs @@ -0,0 +1,130 @@ +using UnityEngine; +using UnityEditor; +using System.Collections; +using System; + +namespace ShaderForge { + + [System.Serializable] + public class SFN_RgbToHsv : SF_Node { + + public SFN_RgbToHsv() { + + } + + public override void Initialize() { + base.Initialize( "RGB to HSV" ); + base.UseLowerPropertyBox(false); + base.showColor = true; + base.alwaysDefineVariable = true; + base.shaderGenMode = ShaderGenerationMode.CustomFunction; + connectors = new SF_NodeConnector[]{ + SF_NodeConnector.Create(this,"HOUT","Hue",ConType.cOutput,ValueType.VTv1,false), + SF_NodeConnector.Create(this,"SOUT","Sat",ConType.cOutput,ValueType.VTv1,false), + SF_NodeConnector.Create(this,"VOUT","Val",ConType.cOutput,ValueType.VTv1,false), + SF_NodeConnector.Create(this,"IN","",ConType.cInput,ValueType.VTv3,false).SetRequired(true).TypecastTo(3).WithUseCount(3) + }; + + connectors[0].outputChannel = OutChannel.R; + connectors[1].outputChannel = OutChannel.G; + connectors[2].outputChannel = OutChannel.B; + } + + public override int GetEvaluatedComponentCount (){ + return 3; + } + + + public override void OnUpdateNode( NodeUpdateType updType, bool cascade = true ) { + if( InputsConnected() ) + RefreshValue( 1, 1 ); + base.OnUpdateNode( updType ); + } + + + + public string K() { + return GetVariableName() + "_k"; + } + public string P() { + return GetVariableName() + "_p"; + } + public string Q() { + return GetVariableName() + "_q"; + } + public string D() { + return GetVariableName() + "_d"; + } + public string E() { + return GetVariableName() + "_e"; + } + + + public override string[] GetBlitOutputLines() { + return new string[]{ + "float4 k = float4(0.0, -1.0 / 3.0, 2.0 / 3.0, -1.0);", + "float4 p = lerp(float4(_in.zy, k.wz), float4(_in.yz, k.xy), step(_in.z, _in.y));", + "float4 q = lerp(float4(p.xyw, _in.x), float4(_in.x, p.yzx), step(p.x, _in.x));", + "float d = q.x - min(q.w, q.y);", + "float e = 1.0e-10;", + "float4(abs(q.z + (q.w - q.y) / (6.0 * d + e)), d / (q.x + e), q.x, 0);" + }; + } + + + public override string[] GetPreDefineRows (){ + + string c = this["IN"].TryEvaluateAs(4); + string k = K(); + string p = P(); + string q = Q(); + string d = D(); + string e = E(); + + return new string[]{ + "float4 "+k+" = float4(0.0, -1.0 / 3.0, 2.0 / 3.0, -1.0);", + "float4 "+p+" = lerp(float4("+c+".zy, "+k+".wz), float4("+c+".yz, "+k+".xy), step("+c+".z, "+c+".y));", + "float4 "+q+" = lerp(float4("+p+".xyw, "+c+".x), float4("+c+".x, "+p+".yzx), step("+p+".x, "+c+".x));", + "float "+d+" = "+q+".x - min("+q+".w, "+q+".y);", + "float "+e+" = 1.0e-10;", + }; + } + + public override string Evaluate( OutChannel channel = OutChannel.All ) { + string q = Q(); + string d = D(); + string e = E(); + return "float3(abs(" + q + ".z + (" + q + ".w - " + q + ".y) / (6.0 * " + d + " + " + e + ")), " + d + " / (" + q + ".x + " + e + "), " + q + ".x);"; + } + + public override Vector4 EvalCPU() { + + if( !GetInputIsConnected( "IN" ) ) + return Color.black; + + + Vector4 c = GetInputData( "IN" ).dataUniform; + Vector4 k = new Vector4( 0, -1f/3f, 2f/3f, -1f ); + Vector4 p = Vector4.Lerp( new Vector4( c.z, c.y, k.w, k.z ), new Vector4( c.y, c.z, k.x, k.y ), Step( c.z, c.y )); + Vector4 q = Vector4.Lerp( new Vector4( p.x, p.y, p.w, c.x ), new Vector4( c.x, p.y, p.z, p.x ), Step( p.x, c.x ) ); + float d = q.x - Mathf.Min(q.w, q.y); + float e = Mathf.Epsilon; + + Vector3 rgb = new Vector3(); + + rgb.x = Mathf.Abs(q.z + (q.w - q.y) / (6f * d + e)); + rgb.y = d / ( q.x + e ); + rgb.z = q.x; + + + return SF_Tools.VectorToColor( rgb ); + } + + public float Step( float a, float b ) { + if( a <= b ) + return 1f; + return 0f; + } + + } +} \ No newline at end of file diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_RgbToHsv.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_RgbToHsv.cs.meta new file mode 100644 index 00000000..0466de18 --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_RgbToHsv.cs.meta @@ -0,0 +1,12 @@ +fileFormatVersion: 2 +guid: 2ba73c676a37ca34da27f7f9c13ae5ed +timeCreated: 1436522064 +licenseType: Pro +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Root2.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Root2.cs new file mode 100644 index 00000000..2e51ebd4 --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Root2.cs @@ -0,0 +1,19 @@ +using UnityEngine; +using UnityEditor; +using System.Collections; + +namespace ShaderForge { + + [System.Serializable] + public class SFN_Root2 : SFN_Node_Constant { + + public SFN_Root2() { + } + + public override void Initialize() { + base.Initialize( "Root 2" ); + base.PrepareConstant( "const_root2", "1.41421356237309504" ); + } + + } +} \ No newline at end of file diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Root2.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Root2.cs.meta new file mode 100644 index 00000000..a84e6ba0 --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Root2.cs.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 478e80eb771ee3e4d8ee8a4fa1bfa141 +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Rotator.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Rotator.cs new file mode 100644 index 00000000..a911c536 --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Rotator.cs @@ -0,0 +1,179 @@ +using UnityEngine; +using UnityEditor; +using System.Collections; +using System.Collections.Generic; +//using System; + +namespace ShaderForge { + + [System.Serializable] + public class SFN_Rotator : SF_Node { + + // SF_Node tNode; + + public SFN_Rotator() { + + } + + + public override void Initialize() { + base.Initialize( "Rotator" ); + base.showColor = true; + UseLowerReadonlyValues( false ); + base.alwaysDefineVariable = true; + base.shaderGenMode = ShaderGenerationMode.ManualModal; + texture.CompCount = 2; + //SF_NodeConnection lerpCon; + connectors = new SF_NodeConnector[]{ + SF_NodeConnector.Create(this,"UVOUT","UV",ConType.cOutput,ValueType.VTv2,false), + SF_NodeConnector.Create(this,"UVIN","UV",ConType.cInput,ValueType.VTv2,false).SetRequired(true), + SF_NodeConnector.Create(this,"PIV","Piv",ConType.cInput,ValueType.VTv2,false,"float2(0.5,0.5)").SetRequired(false), + SF_NodeConnector.Create(this,"ANG","Ang",ConType.cInput,ValueType.VTv1,false).SetRequired(false).SetGhostNodeLink(typeof(SFN_Time),"T"), + SF_NodeConnector.Create(this,"SPD","Spd",ConType.cInput,ValueType.VTv1,false,"1.0").SetRequired(false), + }; + + //base.conGroup = ScriptableObject.CreateInstance().Initialize( connectors[0], connectors[1], connectors[2] ); + } + + + + public override void OnUpdateNode( NodeUpdateType updType, bool cascade = true ) { + if( InputsConnected() ) + RefreshValue( 1, 2 ); + base.OnUpdateNode( updType ); + } + + public override bool IsUniformOutput() { + return false; + } + + public override int GetEvaluatedComponentCount() { + return 2; + } + + public string Sin() { + return GetVariableName() + "_sin"; + } + public string Cos() { + return GetVariableName() + "_cos"; + } + public string Spd() { + return GetVariableName() + "_spd"; + } + public string Ang() { + return GetVariableName() + "_ang"; + } + public string Piv() { + return GetVariableName() + "_piv"; + } + public string RotMatrix() { + return "float2x2( " + Cos() + ", -" + Sin() + ", " + Sin() + ", " + Cos() + ")"; + } + + + public override string[] GetModalModes() { + return new string[]{ + "REQONLY", + "PIV", + "SPD", + "ANG", + "PIV_SPD", + "PIV_ANG", + "SPD_ANG", + "PIV_SPD_ANG" + }; + } + + public override string[] GetBlitOutputLines( string mode ) { + + + string pivStr = mode.Contains( "PIV" ) ? "_piv.xy" : "float2(0.5,0.5)"; + string spdStr = mode.Contains( "SPD" ) ? "_spd.x" : "1.0"; + string angStr = mode.Contains( "ANG" ) ? "_ang.x" : "_Time"; + + return new string[] { + "float ang = "+angStr+";", + "float spd = " + spdStr + ";", + "float cosVal = cos("+ spdStr + "*ang);", + "float sinVal = sin("+ spdStr + "*ang);", + "float2 piv = " + pivStr + ";", + "float4((mul(_uvin.xy-piv,float2x2( cosVal, -sinVal, sinVal, cosVal))+piv),0,0)" + }; + } + + public override string GetCurrentModalMode() { + List all = new List(); + if( GetInputIsConnected( "PIV" ) ) + all.Add("PIV"); + if( GetInputIsConnected( "SPD" ) ) + all.Add( "SPD" ); + if( GetInputIsConnected( "ANG" ) ) + all.Add( "ANG" ); + + if( all.Count == 0 ) { + return "REQONLY"; + } + + return string.Join( "_", all.ToArray() ); + } + + + public override string[] GetPreDefineRows() { + return new string[] { + "float " + Ang() + " = " + this["ANG"].TryEvaluate() + ";", + "float " + Spd() + " = " + this["SPD"].TryEvaluate() + ";", + "float " + Cos() + " = cos("+ Spd() + "*" + Ang() + ");", + "float " + Sin() + " = sin("+ Spd() + "*" + Ang() + ");", + "float2 " + Piv() + " = " + this["PIV"].TryEvaluate() + ";" + }; + } + + public override bool UpdatesOverTime() { + return true; //GetInputIsConnected( "ANG" ); + } + + public override string Evaluate( OutChannel channel = OutChannel.All ) { + return "(mul(" + GetInputCon( "UVIN" ).Evaluate() + "-" + Piv() + "," + RotMatrix() + ")+" + Piv() + ")"; + } + + // TODO Expose more out here! + public override Vector4 EvalCPU() { + + //return GetInputData( 1 )[x, y]; + + float angle = connectors[3].IsConnected() ? GetInputData( "ANG", 0 ) : Mathf.PI / 8f; + Vector2 pivot = connectors[2].IsConnected() ? new Vector2( GetInputData( "PIV", 0 ), GetInputData( "PIV", 1 ) ) : new Vector2( 0.5f, 0.5f ); + Vector2 vec = Vector2.one; + + if(GetInputIsConnected("UVIN")){ + vec = new Vector2( GetInputData( "UVIN", 0 ), GetInputData( "UVIN", 1 ) ); + } else { + //vec = new Vector2( x/SF_NodeData.RESf, y/SF_NodeData.RESf ); // TODO: should use ghost nodes... + } + vec -= pivot; + + + float cos = Mathf.Cos( angle ); + float sin = Mathf.Sin( angle ); + + Vector4 mtx = new Vector4( + cos, -sin, + sin, cos + ); + + + Vector2 retVec = new Vector2( + mtx.x * vec.x + mtx.y * vec.y, + mtx.z * vec.x + mtx.w * vec.y + ); + + retVec += pivot; + + return new Color( retVec.x, retVec.y, 0f, 0f );//Lerp( GetInputData( 1, x, y, c ), GetInputData( 2, x, y, c ), GetInputData( 3, x, y, c ) ); + } + + + + + } +} \ No newline at end of file diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Rotator.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Rotator.cs.meta new file mode 100644 index 00000000..9adaa225 --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Rotator.cs.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: b18d65c11cc5afe449017a80a6ea966e +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Round.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Round.cs new file mode 100644 index 00000000..46fd93fb --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Round.cs @@ -0,0 +1,26 @@ +using UnityEngine; + +namespace ShaderForge { + + [System.Serializable] + public class SFN_Round : SF_Node_Arithmetic { + + public SFN_Round() { + } + + public override void Initialize() { + base.Initialize( "Round" ); + base.PrepareArithmetic( 1 ); + base.shaderGenMode = ShaderGenerationMode.SimpleFunction; + } + + public override string Evaluate( OutChannel channel = OutChannel.All ) { + return "round(" + GetConnectorByStringID( "IN" ).TryEvaluate() + ")"; + } + + public override float EvalCPU( int c ) { + return Mathf.Round( GetInputData( "IN", c ) ); + } + + } +} \ No newline at end of file diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Round.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Round.cs.meta new file mode 100644 index 00000000..e0c0185d --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Round.cs.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 5965b04db15c4d243b3a4d5ea44c2e4c +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_SceneColor.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_SceneColor.cs new file mode 100644 index 00000000..de58f220 --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_SceneColor.cs @@ -0,0 +1,51 @@ +using UnityEngine; +using UnityEditor; +using System.Collections; + +namespace ShaderForge { + + [System.Serializable] + public class SFN_SceneColor : SF_Node { + + + public SFN_SceneColor() { + + } + + public override void Initialize() { + base.Initialize( "Scene Color" ); + base.showColor = true; + base.UseLowerPropertyBox( false ); + base.texture.CompCount = 4; + connectors = new SF_NodeConnector[]{ + SF_NodeConnector.Create(this,"UVIN","UV",ConType.cInput,ValueType.VTv2), + SF_NodeConnector.Create(this,"RGB","RGB",ConType.cOutput,ValueType.VTv3) .Outputting(OutChannel.RGB), + SF_NodeConnector.Create(this,"R","R",ConType.cOutput, ValueType.VTv1) .WithColor(Color.red) .Outputting(OutChannel.R), + SF_NodeConnector.Create(this,"G","G",ConType.cOutput,ValueType.VTv1) .WithColor(Color.green) .Outputting(OutChannel.G), + SF_NodeConnector.Create(this,"B","B",ConType.cOutput,ValueType.VTv1) .WithColor(Color.blue) .Outputting(OutChannel.B), + SF_NodeConnector.Create(this,"A","A",ConType.cOutput,ValueType.VTv1) .Outputting(OutChannel.A) + }; + } + + public override Vector4 EvalCPU() { + return new Color( 0.3f, 0.6f, 0.3f, 1f ); + } + + public bool AutoUV(){ + return !GetInputIsConnected( "UVIN" ); + } + + public override string Evaluate( OutChannel channel = OutChannel.All ) { + + string UV = ""; + + if(AutoUV()){ + return "sceneColor"; + } else { + UV = GetInputCon( "UVIN" ).Evaluate(); + return "tex2D( "+editor.ps.catBlending.GetGrabTextureName()+", " + UV + ")"; + } + } + + } +} \ No newline at end of file diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_SceneColor.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_SceneColor.cs.meta new file mode 100644 index 00000000..61cc2c34 --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_SceneColor.cs.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: d6a693eff9dba4958966e3afe0905bbb +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_SceneDepth.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_SceneDepth.cs new file mode 100644 index 00000000..a9aae779 --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_SceneDepth.cs @@ -0,0 +1,40 @@ +using UnityEngine; +using UnityEditor; +using System.Collections; + +namespace ShaderForge { + + [System.Serializable] + public class SFN_SceneDepth : SF_Node { + + + public SFN_SceneDepth() { + + } + + public override void Initialize() { + base.Initialize( "Scene Depth" ); + base.showColor = true; + base.UseLowerPropertyBox( false ); + base.texture.CompCount = 1; + connectors = new SF_NodeConnector[]{ + SF_NodeConnector.Create(this,"OUT","",ConType.cOutput,ValueType.VTv1), + SF_NodeConnector.Create(this,"UV","UV",ConType.cInput,ValueType.VTv2) + }; + } + + public override Vector4 EvalCPU() { + return new Color( 0.3f, 0.6f, 0.3f, 1f ); + } + + public override string Evaluate( OutChannel channel = OutChannel.All ) { + string infix = ""; + if( GetConnectorByStringID( "UV" ).IsConnectedAndEnabled() ) + infix = GetConnectorByStringID( "UV" ).TryEvaluate(); + else + infix = "sceneUVs"; + return "max(0, LinearEyeDepth(SAMPLE_DEPTH_TEXTURE(_CameraDepthTexture, " + infix + ")) - _ProjectionParams.g)"; + } + + } +} \ No newline at end of file diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_SceneDepth.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_SceneDepth.cs.meta new file mode 100644 index 00000000..7df9f496 --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_SceneDepth.cs.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 48380218bb14f4f9fbc3764914c2ffb1 +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ScreenParameters.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ScreenParameters.cs new file mode 100644 index 00000000..a993549a --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ScreenParameters.cs @@ -0,0 +1,40 @@ +using UnityEngine; +using UnityEditor; +using System.Collections; + +namespace ShaderForge { + + [System.Serializable] + public class SFN_ScreenParameters : SF_Node { + + + public SFN_ScreenParameters() { + + } + + public override void Initialize() { + base.Initialize( "Scrn. Params" ); + base.SearchName = "Screen Parameters"; + base.showColor = true; + base.UseLowerPropertyBox( false ); + base.texture.CompCount = 4; + base.neverDefineVariable = true; + connectors = new SF_NodeConnector[]{ + SF_NodeConnector.Create(this,"PXW","pxW",ConType.cOutput,ValueType.VTv1,false).Outputting(OutChannel.R), + SF_NodeConnector.Create(this,"PXH","pxH",ConType.cOutput,ValueType.VTv1,false).Outputting(OutChannel.G), + SF_NodeConnector.Create(this,"RCW","1+1/W",ConType.cOutput,ValueType.VTv1,false).Outputting(OutChannel.B), + SF_NodeConnector.Create(this,"RCH","1+1/H",ConType.cOutput,ValueType.VTv1,false).Outputting(OutChannel.A) + }; + base.extraWidthOutput = 12; + } + + public override Vector4 EvalCPU() { + return new Color( 0f, 0.7071068f, 0.7071068f, 0f ); + } + + public override string Evaluate( OutChannel channel = OutChannel.All ) { + return "_ScreenParams"; + } + + } +} \ No newline at end of file diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ScreenParameters.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ScreenParameters.cs.meta new file mode 100644 index 00000000..5dec4f79 --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ScreenParameters.cs.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 8ffce1d1cbd31b6438a435cfbc89f838 +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ScreenPos.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ScreenPos.cs new file mode 100644 index 00000000..33dccd49 --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ScreenPos.cs @@ -0,0 +1,83 @@ +using UnityEngine; +using UnityEditor; +using System.Collections; + +namespace ShaderForge { + + [System.Serializable] + public class SFN_ScreenPos : SF_Node { + + + public enum ScreenPosType { Normalized = 0, Tiled = 1, SceneUVs = 2 }; + public ScreenPosType currentType = ScreenPosType.Normalized; + + public SFN_ScreenPos() { + + } + + public override void Initialize() { + base.Initialize( "Screen Pos.", InitialPreviewRenderMode.BlitQuad ); + base.showColor = true; + base.UseLowerPropertyBox( true, true ); + UpdateIcon(); + base.texture.CompCount = 2; + base.neverDefineVariable = true; + connectors = new SF_NodeConnector[]{ + SF_NodeConnector.Create(this,"UVOUT","UV",ConType.cOutput,ValueType.VTv2,false).Outputting(OutChannel.RG), + SF_NodeConnector.Create(this,"U","U",ConType.cOutput,ValueType.VTv1).WithColor(Color.red).Outputting(OutChannel.R), + SF_NodeConnector.Create(this,"V","V",ConType.cOutput,ValueType.VTv1).WithColor(Color.green).Outputting(OutChannel.G) + }; + } + + public void UpdateIcon() { + base.texture.SetIconId( (int)currentType ); + } + + /* + public override Vector4 NodeOperator() { + return new Color( Screen.width - base.rect.x + x * 0.66666f, Screen.height - base.rect.y + y * 0.66666f, 0, 0 ); + } + */ + + public override void DrawLowerPropertyBox() { + GUI.color = Color.white; + EditorGUI.BeginChangeCheck(); + //currentType = (ScreenPosType)EditorGUI.EnumPopup( lowerRect, currentType ); + currentType = (ScreenPosType)UndoableEnumPopup(lowerRect, currentType, "switch screen position type"); + if( EditorGUI.EndChangeCheck() ) { + UpdateIcon(); + OnUpdateNode(); + } + + } + + + public override string Evaluate( OutChannel channel = OutChannel.All ) { + // NeedSceneUVs() + switch(currentType){ + case ScreenPosType.Normalized: + return "(sceneUVs * 2 - 1)"; + case ScreenPosType.Tiled: + return "float2((sceneUVs.x * 2 - 1)*(_ScreenParams.r/_ScreenParams.g), sceneUVs.y * 2 - 1)"; + case ScreenPosType.SceneUVs: + return "sceneUVs"; + } + Debug.LogError("Invalid screen position category"); + return ""; + } + + public override string SerializeSpecialData() { + return "sctp:" + (int)currentType; + } + + public override void DeserializeSpecialData( string key, string value ) { + switch( key ) { + case "sctp": + currentType = (ScreenPosType)int.Parse( value ); + UpdateIcon(); + break; + } + } + + } +} \ No newline at end of file diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ScreenPos.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ScreenPos.cs.meta new file mode 100644 index 00000000..f0916d04 --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ScreenPos.cs.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 6c8f79b55a93b5645bea8d939b688ef1 +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Set.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Set.cs new file mode 100644 index 00000000..77f35004 --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Set.cs @@ -0,0 +1,83 @@ +using UnityEngine; +using UnityEditor; +using System.Collections; + +namespace ShaderForge { + + [System.Serializable] + public class SFN_Set : SF_Node_Arithmetic { + + public SFN_Set() { + + } + + public override void Initialize() { + node_height = 20; + node_width = 120; + base.Initialize( "Set" ); + lowerRect.y -= 8; + lowerRect.height = 28; + base.showColor = false; + base.discreteTitle = true; + base.alwaysDefineVariable = true; + base.UseLowerPropertyBox( true, true ); + base.lockedVariableName = false; // In order for it to serialize + base.shaderGenMode = ShaderGenerationMode.CustomFunction; + extraWidthInput = -9; + extraWidthOutput = -9; + //base.texture.uniform = true; + //base.texture.CompCount = 1; + + connectors = new SF_NodeConnector[]{ + SF_NodeConnector.Create(this,"OUT","",ConType.cOutput,ValueType.VTvPending,false), + SF_NodeConnector.Create(this,"IN","",ConType.cInput,ValueType.VTvPending,false).SetRequired(true), + }; + + connectors[0].enableState = EnableState.Hidden; + + base.conGroup = ScriptableObject.CreateInstance().Initialize( connectors[0], connectors[1]); + + editor.nodeView.RefreshRelaySources(); + } + + public override bool CanCustomizeVariable() { + return false; // Never allow using the dropdown varname editor + } + + public override string[] GetBlitOutputLines() { + return new string[] { "_in" }; + } + + public override string Evaluate( OutChannel channel = OutChannel.All ) { + return GetConnectorByStringID( "IN" ).TryEvaluate(); + } + + public override float EvalCPU( int c ) { + return GetInputData( "IN", c ); + } + + + public override void DrawLowerPropertyBox() { + Rect r = new Rect( lowerRect ); + r.yMin += 4; + r.yMax -= 2; + r.xMin += 2; + Rect[] splitRects = r.SplitHorizontal( 0.75f, 2 ); + EditorGUI.BeginChangeCheck(); + variableName = UndoableTextField( splitRects[0], variableName, "Set variable name", null ); + if( EditorGUI.EndChangeCheck() ) { + editor.nodeView.RefreshRelaySources(); + } + Rect texCoords = new Rect( splitRects[1] ); + texCoords.width /= 7; + texCoords.height /= 3; + texCoords.x = texCoords.y = 0; + GUI.DrawTextureWithTexCoords( splitRects[1], SF_GUI.Handle_drag, texCoords, alphaBlend: true ); + } + + + + + + } +} \ No newline at end of file diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Set.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Set.cs.meta new file mode 100644 index 00000000..42d72ead --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Set.cs.meta @@ -0,0 +1,12 @@ +fileFormatVersion: 2 +guid: 962662ba043415346a05959ced04f0f4 +timeCreated: 1447436935 +licenseType: Pro +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Sign.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Sign.cs new file mode 100644 index 00000000..40773df9 --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Sign.cs @@ -0,0 +1,29 @@ +using UnityEngine; + +namespace ShaderForge { + + [System.Serializable] + public class SFN_Sign : SF_Node_Arithmetic { + + public SFN_Sign() { + } + + public override void Initialize() { + base.Initialize( "Sign" ); + base.PrepareArithmetic( 1 ); + base.shaderGenMode = ShaderGenerationMode.SimpleFunction; + } + + public override string Evaluate( OutChannel channel = OutChannel.All ) { + return "sign(" + GetConnectorByStringID( "IN" ).TryEvaluate() + ")"; + } + + public override float EvalCPU( int c ) { + float v = GetInputData( "IN", c ); + if( v == 0 ) + return 0f; + return v > 0f ? 1f : -1f; + } + + } +} \ No newline at end of file diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Sign.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Sign.cs.meta new file mode 100644 index 00000000..5b80faec --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Sign.cs.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 23a3e4987bfdf3944b39de15059fd63e +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Sin.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Sin.cs new file mode 100644 index 00000000..6f29d481 --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Sin.cs @@ -0,0 +1,26 @@ +using UnityEngine; + +namespace ShaderForge { + + [System.Serializable] + public class SFN_Sin : SF_Node_Arithmetic { + + public SFN_Sin() { + } + + public override void Initialize() { + base.Initialize( "Sin" ); + base.PrepareArithmetic( 1 ); + base.shaderGenMode = ShaderGenerationMode.SimpleFunction; + } + + public override string Evaluate( OutChannel channel = OutChannel.All ) { + return "sin(" + GetConnectorByStringID( "IN" ).TryEvaluate() + ")"; + } + + public override float EvalCPU( int c ) { + return Mathf.Sin( GetInputData( "IN", c ) ); + } + + } +} \ No newline at end of file diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Sin.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Sin.cs.meta new file mode 100644 index 00000000..de8a3d37 --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Sin.cs.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 7fafe81ac61f44348b70f30fd8959cab +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Slider.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Slider.cs new file mode 100644 index 00000000..c6e42c19 --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Slider.cs @@ -0,0 +1,170 @@ +using UnityEngine; +using UnityEditor; +using System.Collections; + +namespace ShaderForge { + + [System.Serializable] + public class SFN_Slider : SF_Node { + + + public float min = 0.0f; + public float max = 1.0f; + public float current = 0.0f; + + GUIStyle centerFloatField; + //GUIStyle centerFloatFieldDark; + + public SFN_Slider() { + + } + + public override void Initialize() { + node_width = 256; + node_height = 58; + base.Initialize( "Slider" ); + base.showColor = false; + base.neverDefineVariable = true; + base.UseLowerPropertyBox( false ); + base.texture.uniform = true; + base.texture.CompCount = 1; + base.shaderGenMode = ShaderGenerationMode.OffUniform; + property = ScriptableObject.CreateInstance().Initialize( this ); + + centerFloatField = new GUIStyle( EditorStyles.numberField ); + centerFloatField.alignment = TextAnchor.MiddleCenter; + + connectors = new SF_NodeConnector[]{ + SF_NodeConnector.Create(this,"OUT","",ConType.cOutput,ValueType.VTv1,false) + }; + } + + /*public override bool IsUniformOutput() { + return true; + }*/ + + public override string Evaluate( OutChannel channel = OutChannel.All ) { + return property.GetVariable(); + } + + public override float EvalCPU( int c ) { + return current; + } + + public override bool IsUniformOutput() { + return true; + } + + + public override void NeatWindow( ) { + PrepareWindowColor(); + int labelWidth = 28; + int sliderWidth = (int)( rectInner.width - 4 * labelWidth ); + GUI.BeginGroup( rect ); + Rect r = new Rect( rectInner ); + r.height = 16; + // r.width = labelWidth*3; + // Upper: + //float normSlider = Mathf.InverseLerp( min, max, current ); + //r.x = normSlider * sliderWidth + 0.5f * labelWidth; + + bool inverse = min > max; + + float prevValue = current; + + Rect valRect = r; + //float t = (current/max); + valRect.xMin += 80;//+134*t; + valRect.xMax -= 80;//+134*(1-t); + if(inverse){ + current = Mathf.Clamp( EditorGUI.FloatField( valRect, current, centerFloatField ), max, min ); + } else { + current = Mathf.Clamp( EditorGUI.FloatField( valRect, current, centerFloatField ), min, max ); + } + + // Lower: + r.y += r.height + 4; + r.x = rectInner.x; + r.width = labelWidth; + + GUI.Label( r, "Min" ); + r.x += r.width; + //min = EditorGUI.FloatField( r, min, centerFloatField ); + min = UndoableFloatField(r, min, "slider min value", centerFloatField); + r.x += r.width; + r.width = sliderWidth; + float beforeSlider = current; + + string sliderName = "slider" + this.id; + GUI.SetNextControlName( sliderName ); + //current = GUI.HorizontalSlider( r, current, min, max ); + + Rect sliderRect = r; + + sliderRect.xMax -= 8; + sliderRect.xMin += 8; + + if(inverse){ + current = (min+max) - UndoableHorizontalSlider(sliderRect, (min+max) - current, max, min, "value" ); + } else { + current = UndoableHorizontalSlider(sliderRect, current, min, max, "value" ); + } + + + if( beforeSlider != current ) + GUI.FocusControl( sliderName ); + r.x += r.width; + r.width = labelWidth; + //max = EditorGUI.FloatField( r, max, centerFloatField ); + max = UndoableFloatField(r, max, "slider max value", centerFloatField); + r.x += r.width; + GUI.Label( r, "Max" ); + + // sliderRect.x += labelWidth; + // sliderRect.width -= labelWidth * 2; + + if( prevValue != current ){ + OnValueChanged(); + } + GUI.EndGroup(); + ResetWindowColor(); + //GUI.DragWindow(); + } + + // TODO: Refresh node thumbs + public void OnValueChanged() { + texture.dataUniform = current * Vector4.one; + editor.shaderEvaluator.ApplyProperty( this ); + OnUpdateNode( NodeUpdateType.Soft ); + } + + + public override string SerializeSpecialData() { + string s = property.Serialize() + ","; + s += "min:" + min + ","; + s += "cur:" + current + ","; + s += "max:" + max; + return s; + } + + public override void DeserializeSpecialData( string key, string value ) { + property.Deserialize( key, value ); + switch( key ) { + case "min": + min = float.Parse( value ); + break; + case "cur": + current = float.Parse( value ); + OnValueChanged(); + break; + case "max": + max = float.Parse( value ); + break; + } + } + + + + + } +} \ No newline at end of file diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Slider.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Slider.cs.meta new file mode 100644 index 00000000..4620b2d0 --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Slider.cs.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 9987079b02539a14288441b9a1078362 +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Smoothstep.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Smoothstep.cs new file mode 100644 index 00000000..becac226 --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Smoothstep.cs @@ -0,0 +1,64 @@ +using UnityEngine; + +namespace ShaderForge { + + [System.Serializable] + public class SFN_Smoothstep : SF_Node_Arithmetic { + + public SFN_Smoothstep() { + } + + public override void Initialize() { + base.Initialize( "Smoothstep" ); + base.showColor = true; + base.shaderGenMode = ShaderGenerationMode.SimpleFunction; + UseLowerReadonlyValues( true ); + + //SF_NodeConnection lerpCon; + connectors = new SF_NodeConnector[]{ + SF_NodeConnector.Create(this,"OUT","T",ConType.cOutput,ValueType.VTvPending,false), + SF_NodeConnector.Create(this,"A","Min",ConType.cInput,ValueType.VTvPending,false).SetRequired(true), + SF_NodeConnector.Create(this,"B","Max",ConType.cInput,ValueType.VTvPending,false).SetRequired(true), + SF_NodeConnector.Create(this,"V","Val",ConType.cInput,ValueType.VTvPending,false).SetRequired(true) + }; + + base.conGroup = ScriptableObject.CreateInstance().Initialize( connectors[0], connectors[1], connectors[2], connectors[3] ); + } + + public override void OnUpdateNode( NodeUpdateType updType, bool cascade = true ) { + if( InputsConnected() ) + RefreshValue( 1, 2 ); + base.OnUpdateNode( updType ); + } + + public override bool IsUniformOutput() { + return ( GetInputData( "A" ).uniform && GetInputData( "B" ).uniform && GetInputData( "V" ).uniform ); + } + + public override int GetEvaluatedComponentCount() { + return Mathf.Max( this["A"].GetCompCount(), this["B"].GetCompCount(), this["V"].GetCompCount() ); + } + + public override string Evaluate( OutChannel channel = OutChannel.All ) { + + string a = GetConnectorByStringID( "A" ).TryEvaluateAs( GetEvaluatedComponentCount() ); + string b = GetConnectorByStringID( "B" ).TryEvaluateAs( GetEvaluatedComponentCount() ); + string v = GetConnectorByStringID( "V" ).TryEvaluateAs( GetEvaluatedComponentCount() ); + + return string.Format( "smoothstep( {0}, {1}, {2} )", a, b, v ); + } + + public override float EvalCPU( int c ) { + + float a = GetInputData( "A", c ); + float b = GetInputData( "B", c ); + float v = GetInputData( "V", c ); + + if( ( b - a ) == 0f ) + return 0; + float t = Mathf.Clamp01(( v - a ) / ( b - a )); + return t * t * ( 3.0f - ( 2.0f * t ) ); + } + + } +} \ No newline at end of file diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Smoothstep.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Smoothstep.cs.meta new file mode 100644 index 00000000..90b4730c --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Smoothstep.cs.meta @@ -0,0 +1,12 @@ +fileFormatVersion: 2 +guid: 289a8fc8292655944a478a667b333850 +timeCreated: 1443603669 +licenseType: Pro +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Sqrt.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Sqrt.cs new file mode 100644 index 00000000..1e11ec92 --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Sqrt.cs @@ -0,0 +1,26 @@ +using UnityEngine; + +namespace ShaderForge { + + [System.Serializable] + public class SFN_Sqrt : SF_Node_Arithmetic { + + public SFN_Sqrt() { + } + + public override void Initialize() { + base.Initialize( "Sqrt" ); + base.PrepareArithmetic( 1 ); + base.shaderGenMode = ShaderGenerationMode.SimpleFunction; + } + + public override string Evaluate( OutChannel channel = OutChannel.All ) { + return "sqrt(" + GetConnectorByStringID( "IN" ).TryEvaluate() + ")"; + } + + public override float EvalCPU( int c ) { + return Mathf.Sqrt( GetInputData( "IN", c ) ); + } + + } +} \ No newline at end of file diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Sqrt.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Sqrt.cs.meta new file mode 100644 index 00000000..997e0fb5 --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Sqrt.cs.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: c77bd2f2aab8059488ee83b49ccad0ca +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_StaticBranch.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_StaticBranch.cs new file mode 100644 index 00000000..94347b6c --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_StaticBranch.cs @@ -0,0 +1,80 @@ +using UnityEngine; +using UnityEditor; + +namespace ShaderForge { + + [System.Serializable] + public class SFN_StaticBranch : SF_Node_Arithmetic { + + public bool on = false; + + public SFN_StaticBranch() { + } + + public override void Initialize() { + base.Initialize( "Static Branch" ); + base.PrepareArithmetic(2); + base.showLowerReadonlyValues = false; + base.alwaysDefineVariable = true; + base.onlyPreDefine = true; + base.showLowerPropertyBox = true; + base.showLowerPropertyBoxAlways = true; + base.property = ScriptableObject.CreateInstance().Initialize( this ); + } + + + public override void DrawLowerPropertyBox() { + EditorGUI.BeginChangeCheck(); + Rect r = lowerRect; + r.xMin += 3; + on = EditorGUI.Toggle( r, on ); + r.xMin += 17; + GUI.Label(r,"On"); + if( EditorGUI.EndChangeCheck() ) { + OnUpdateNode(); + editor.shaderEvaluator.ApplyProperty( this ); + } + + } + + public override string[] GetPreDefineRows() { + string indent = " "; + string[] rows = new string[]{ + "#ifdef STATIC_BRANCH", + indent+"float" + GetEvaluatedComponentCount() + " " + GetVariableName() + " = " + this["B"].TryEvaluate() + ";", + "#else", + indent+"float" + GetEvaluatedComponentCount() + " " + GetVariableName() + " = " + this["A"].TryEvaluate() + ";", + "#endif" + }; + varDefined = true; // Hack + return rows; + + } + + + public override string Evaluate( OutChannel channel = OutChannel.All ) { + if(!ShouldDefineVariable()) // TODO: Isn't this already handled on the node level? + this.PreDefine(); + + return GetVariableName(); + } + + public override float EvalCPU( int c ) { + return on ? GetInputData( "B", c ) : GetInputData( "B", c ); + } + + public override string SerializeSpecialData() { + return "on:" + on; + } + + public override void DeserializeSpecialData( string key, string value ) { + switch( key ) { + case "on": + on = bool.Parse( value ); + editor.shaderEvaluator.ApplyProperty( this ); + break; + } + } + + } +} \ No newline at end of file diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_StaticBranch.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_StaticBranch.cs.meta new file mode 100644 index 00000000..133134d4 --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_StaticBranch.cs.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 7139eb5003a7146d1a075fa9811fc5c0 +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Step.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Step.cs new file mode 100644 index 00000000..1e01f63a --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Step.cs @@ -0,0 +1,31 @@ +using UnityEngine; + +namespace ShaderForge { + + [System.Serializable] + public class SFN_Step : SF_Node_Arithmetic { + + public SFN_Step() { + } + + public override void Initialize() { + base.Initialize( "Step (A <= B)" ); + base.SearchName = "Step"; + base.PrepareArithmetic(2); + base.showLowerReadonlyValues = false; + base.connectors[0].label = "<="; + base.shaderGenMode = ShaderGenerationMode.SimpleFunction; + } + + public override string Evaluate( OutChannel channel = OutChannel.All ) { + return "step(" + GetConnectorByStringID( "A" ).TryEvaluate() + "," + GetConnectorByStringID( "B" ).TryEvaluate() + ")"; + } + + public override float EvalCPU( int c ) { + float a = GetInputData( "B", c ); + float b = GetInputData( "B", c ); + return ((a <= b) ? 1.0f : 0.0f); + } + + } +} \ No newline at end of file diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Step.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Step.cs.meta new file mode 100644 index 00000000..e80e6a78 --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Step.cs.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 040227aa4fb888540b24aabbda43bf84 +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Subtract.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Subtract.cs new file mode 100644 index 00000000..a6397b75 --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Subtract.cs @@ -0,0 +1,31 @@ +using UnityEngine; + +namespace ShaderForge { + + [System.Serializable] + public class SFN_Subtract : SF_Node_Arithmetic { + + public SFN_Subtract() { + + } + + public override void Initialize() { + base.Initialize( "Subtract" ); + base.PrepareArithmetic(); + base.shaderGenMode = ShaderGenerationMode.CustomFunction; + } + + public override string[] GetBlitOutputLines() { + return new string[] { "_a - _b" }; + } + + public override string Evaluate( OutChannel channel = OutChannel.All ) { + return "(" + GetConnectorByStringID( "A" ).TryEvaluate() + "-" + GetConnectorByStringID( "B" ).TryEvaluate() + ")"; + } + + public override float EvalCPU( int c ) { + return GetInputData( "A", c ) - GetInputData( "B", c ); + } + + } +} \ No newline at end of file diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Subtract.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Subtract.cs.meta new file mode 100644 index 00000000..e8b87e67 --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Subtract.cs.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: f800be44f0a6bcb4db234f16ffbb3c4c +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_SwitchProperty.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_SwitchProperty.cs new file mode 100644 index 00000000..dd7556da --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_SwitchProperty.cs @@ -0,0 +1,161 @@ +using UnityEngine; +using UnityEditor; +using System.Collections; +using System; + +namespace ShaderForge { + + [System.Serializable] + public class SFN_SwitchProperty : SF_Node_Arithmetic { + + public SFN_SwitchProperty() { + + } + + [SerializeField] + public bool on = false; + + public override void Initialize() { + + base.Initialize( "Switch" ); + base.node_height -= 20; + //base.lowerRect.height += 4; + base.showColor = true; + base.shaderGenMode = ShaderGenerationMode.ValuePassing; + + base.UseLowerPropertyBox( true, true ); + + + + connectors = new SF_NodeConnector[]{ + SF_NodeConnector.Create(this,"OUT","",ConType.cOutput,ValueType.VTvPending,false), + SF_NodeConnector.Create(this,"A","Off",ConType.cInput,ValueType.VTvPending,false).SetRequired(true), + SF_NodeConnector.Create(this,"B","On",ConType.cInput,ValueType.VTvPending,false).SetRequired(true) + }; + + property = ScriptableObject.CreateInstance().Initialize( this ); + + base.conGroup = ScriptableObject.CreateInstance().Initialize( connectors[0], connectors[1], connectors[2]); + + } + + float smoothConnectorHeight = 23; + float targetConnectorHeight = 23; + Color conLineBg = Color.black; + Color conLineFg = Color.white; + // Color conLineBgTrns = new Color(0f,0f,0f,0.3f); + // Color conLineFgTrns = new Color(1f,1f,1f,0.3f); + + public override string[] ExtraPassedFloatProperties(){ + return new string[] { "On" }; + } + + public override void PrepareRendering( Material mat ) { + mat.SetFloat( "_on", on ? 1.0f : 0.0f ); + } + + public override string[] GetBlitOutputLines() { + return new string[] { "lerp(_a,_b,_on)" }; + } + + + public override void DrawLowerPropertyBox() { + EditorGUI.BeginChangeCheck(); + Rect r = lowerRect; + r.height = 24; + r.width = 26; + r.y -= 26; + + if(Event.current.type == EventType.Repaint){ + smoothConnectorHeight = Mathf.Lerp(smoothConnectorHeight, targetConnectorHeight, 0.6f); + } + + r = r.PadTop(1).PadBottom(1).PadLeft(2); + + r.width = r.height + 2; + //r.xMin += 3; + + //Handles.BeginGUI(rect); + + bool hovering = rect.Contains(Event.current.mousePosition + rect.TopLeft()); + + + + if(hovering){ + targetConnectorHeight = on ? 43 : 23; + Vector2 p0 = new Vector2(rect.width,23); + Vector2 p1 = new Vector2(0, smoothConnectorHeight); + GUILines.QuickBezier( p0, p1, conLineBg, 12, 5 ); + GUILines.QuickBezier( p0, p1, conLineFg, 12, 3 ); + GUILines.QuickBezier( p0, p1, conLineFg, 12, 3 ); + bool prevVal = on; + GUI.color = new Color(SF_Node.colorExposed.r,SF_Node.colorExposed.g,SF_Node.colorExposed.b,GUI.color.a); + bool newVal = GUI.Button(r,string.Empty) ? !prevVal : prevVal; + + if(newVal){ + Rect chkRect = r; + chkRect.width = SF_GUI.Toggle_check_icon.width; + chkRect.height = SF_GUI.Toggle_check_icon.height; + chkRect.x += (r.width-chkRect.width)*0.5f; + chkRect.y += 2; + GUI.DrawTexture(chkRect,SF_GUI.Toggle_check_icon); + } + + GUI.color = Color.white; + + if(prevVal != newVal){ + string dir = on ? "on" : "off"; + UndoRecord("switch " + dir + " " + property.nameDisplay); + on = newVal; + OnUpdateNode(NodeUpdateType.Soft, true); + editor.shaderEvaluator.ApplyProperty( this ); + } + } + + + //GUILines.DrawMultiBezierConnection(editor,,GetEvaluatedComponentCount(),Color.white); + + //Handles.DrawLine(new Vector3(0,0),new Vector3(32,32)); + // + //Handles.EndGUI(); + + + + + + //GUI.enabled = true; + + + + + } + + public override string Evaluate( OutChannel channel = OutChannel.All ) { + return "lerp( " + GetConnectorByStringID( "A" ).TryEvaluate() + ", " + GetConnectorByStringID( "B" ).TryEvaluate() + ", "+ property.GetVariable() + " )"; + } + + public override float EvalCPU( int c ) { + if(on){ + return GetInputData("B", c); + } else { + return GetInputData("A", c); + } + } + + + public override string SerializeSpecialData() { + string s = property.Serialize() + ","; + s += "on:" + on; + return s; + } + + public override void DeserializeSpecialData( string key, string value ) { + property.Deserialize( key, value ); + switch( key ) { + case "on": + on = bool.Parse( value ); + break; + } + } + } +} \ No newline at end of file diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_SwitchProperty.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_SwitchProperty.cs.meta new file mode 100644 index 00000000..cbcde250 --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_SwitchProperty.cs.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 2975b0d64d9d5418bb473f40734754c9 +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Tan.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Tan.cs new file mode 100644 index 00000000..618d9e19 --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Tan.cs @@ -0,0 +1,26 @@ +using UnityEngine; + +namespace ShaderForge { + + [System.Serializable] + public class SFN_Tan : SF_Node_Arithmetic { + + public SFN_Tan() { + } + + public override void Initialize() { + base.Initialize( "Tan" ); + base.PrepareArithmetic( 1 ); + base.shaderGenMode = ShaderGenerationMode.SimpleFunction; + } + + public override string Evaluate( OutChannel channel = OutChannel.All ) { + return "tan(" + GetConnectorByStringID( "IN" ).TryEvaluate() + ")"; + } + + public override float EvalCPU( int c ) { + return Mathf.Tan( GetInputData( "IN", c ) ); + } + + } +} \ No newline at end of file diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Tan.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Tan.cs.meta new file mode 100644 index 00000000..02d93a4b --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Tan.cs.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 194e3cc730febb44196573c2fd1a4ff8 +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Tangent.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Tangent.cs new file mode 100644 index 00000000..c2b5c6fa --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Tangent.cs @@ -0,0 +1,35 @@ +using UnityEngine; +using UnityEditor; +using System.Collections; + +namespace ShaderForge { + + [System.Serializable] + public class SFN_Tangent : SF_Node { + + + public SFN_Tangent() { + + } + + public override void Initialize() { + base.Initialize( "Tangent Dir.", InitialPreviewRenderMode.BlitSphere ); + base.showColor = true; + base.UseLowerPropertyBox( false ); + base.texture.CompCount = 3; + base.neverDefineVariable = true; + connectors = new SF_NodeConnector[]{ + SF_NodeConnector.Create(this,"OUT","",ConType.cOutput,ValueType.VTv3,false) + }; + } + + public override Vector4 EvalCPU() { + return new Color( 1f, 0f, 0f, 0f ); + } + + public override string Evaluate( OutChannel channel = OutChannel.All ) { + return SF_Evaluator.WithProgramPrefix("tangentDir"); + } + + } +} \ No newline at end of file diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Tangent.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Tangent.cs.meta new file mode 100644 index 00000000..b7d1e87d --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Tangent.cs.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 139600edd90131c43842df0965b82082 +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Tau.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Tau.cs new file mode 100644 index 00000000..4821ea85 --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Tau.cs @@ -0,0 +1,19 @@ +using UnityEngine; +using UnityEditor; +using System.Collections; + +namespace ShaderForge { + + [System.Serializable] + public class SFN_Tau : SFN_Node_Constant { + + public SFN_Tau() { + } + + public override void Initialize() { + base.Initialize( "Tau"); + base.PrepareConstant( "const_tau", "6.28318530718" ); + } + + } +} \ No newline at end of file diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Tau.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Tau.cs.meta new file mode 100644 index 00000000..d93b5594 --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Tau.cs.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 62750aaecd1cee044b767f00ed0605bf +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_TexCoord.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_TexCoord.cs new file mode 100644 index 00000000..6917a8de --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_TexCoord.cs @@ -0,0 +1,122 @@ +using UnityEngine; +using UnityEditor; +using System.Collections; + +namespace ShaderForge { + + [System.Serializable] + public class SFN_TexCoord : SF_Node { + + + + public enum UV { uv0 = 0, uv1 = 1, uv2 = 2, uv3 = 3 }; + public UV currentUV = UV.uv0; + public bool useAsFloat4 = false; + + public SFN_TexCoord() { + + } + + public override void Initialize() { + base.Initialize( "UV Coord.", InitialPreviewRenderMode.BlitQuad ); + base.UseLowerPropertyBox( true, true ); + base.showColor = true; + base.texture.uniform = false; + base.texture.CompCount = 4; + base.neverDefineVariable = true; + + connectors = new SF_NodeConnector[]{ + SF_NodeConnector.Create(this,"UVOUT","UV",ConType.cOutput,ValueType.VTv2), + SF_NodeConnector.Create(this,"U","U",ConType.cOutput,ValueType.VTv1).WithColor(Color.red).Outputting(OutChannel.R), + SF_NodeConnector.Create(this,"V","V",ConType.cOutput,ValueType.VTv1).WithColor(Color.green).Outputting(OutChannel.G), + SF_NodeConnector.Create(this,"Z","Z",ConType.cOutput,ValueType.VTv1).WithColor(Color.blue).Outputting(OutChannel.B), + SF_NodeConnector.Create(this,"W","W",ConType.cOutput,ValueType.VTv1).Outputting(OutChannel.A) + }; + + UpdateConnectorVisibility(); + + + } + + public override int GetEvaluatedComponentCount() { + return useAsFloat4 ? 4 : 2; + } + + public override bool IsUniformOutput() { + return false; + } + + public override string Evaluate( OutChannel channel = OutChannel.All ) { + + string s = SF_Evaluator.inTess ? "texcoord" + (int)currentUV : currentUV.ToString(); + + return SF_Evaluator.WithProgramPrefix( s ); + } + + static string[] float4Names = new string[] { "uv", "uvzw" }; + const string undoCompCountSwitch = "uv component count"; + const string undoSwitchUvChannel = "switch UV channel"; + + public override void DrawLowerPropertyBox() { + GUI.color = Color.white; + EditorGUI.BeginChangeCheck(); + + Rect[] rects = lowerRect.SplitHorizontal( 0.5f ); + + currentUV = (UV)UndoableEnumPopup( rects[0], currentUV, undoSwitchUvChannel ); + int curVal = useAsFloat4 ? 1 : 0; + int newVal = UndoableEnumPopupNamed( rects[1], curVal, float4Names, undoCompCountSwitch ); + useAsFloat4 = newVal == 1; + + if( EditorGUI.EndChangeCheck() ) { + UpdateConnectorVisibility(); + OnUpdateNode(); + } + } + + void UpdateConnectorVisibility() { + SF_NodeConnector z = GetConnectorByID( "Z" ); + SF_NodeConnector w = GetConnectorByID( "W" ); + if( !useAsFloat4 ) { + if(z.IsConnected()){ + for( int i = 0; i < z.outputCons.Count; i++ ) { + Undo.RecordObject( z.outputCons[i], "disconnect" ); + } + Undo.RecordObject( z, "disconnect" ); + z.Disconnect(); + } + if( w.IsConnected() ) { + for( int i = 0; i < w.outputCons.Count; i++ ) { + Undo.RecordObject( w.outputCons[i], "disconnect" ); + } + Undo.RecordObject( w, "disconnect" ); + w.Disconnect(); + } + } + EnableState enableState = useAsFloat4 ? EnableState.Enabled : EnableState.Disabled; + z.enableState = enableState; + w.enableState = enableState; + } + + public override string SerializeSpecialData() { + string s = ""; + s += "uv:" + (int)currentUV + ","; + s += "uaff:" + useAsFloat4.ToString(); + return s; + } + + public override void DeserializeSpecialData( string key, string value ) { + switch( key ) { + case "uv": + currentUV = (UV)int.Parse( value ); + break; + case "uaff": + useAsFloat4 = (bool)bool.Parse( value ); + UpdateConnectorVisibility(); + break; + } + } + + + } +} \ No newline at end of file diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_TexCoord.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_TexCoord.cs.meta new file mode 100644 index 00000000..8728b296 --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_TexCoord.cs.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 848317c8e7955f44da670e263a6c0603 +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Time.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Time.cs new file mode 100644 index 00000000..aeb77f9f --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Time.cs @@ -0,0 +1,53 @@ +using UnityEngine; +using UnityEditor; +using System.Collections; + +namespace ShaderForge { + + [System.Serializable] + public class SFN_Time : SF_Node { + + + public SFN_Time() { + + } + + public override void Initialize() { + base.Initialize( "Time", InitialPreviewRenderMode.BlitQuad ); + base.showColor = true; + base.UseLowerPropertyBox( false ); + base.texture.uniform = false; + base.texture.CompCount = 4; + + base.alwaysDefineVariable = true; + base.shaderGenMode = ShaderGenerationMode.OffUniform; + + connectors = new SF_NodeConnector[]{ + SF_NodeConnector.Create(this,"TSL","t/20",ConType.cOutput,ValueType.VTv1,false).Outputting(OutChannel.R), + SF_NodeConnector.Create(this,"T","t",ConType.cOutput,ValueType.VTv1,false).Outputting(OutChannel.G), + SF_NodeConnector.Create(this,"TDB","t*2",ConType.cOutput,ValueType.VTv1,false).Outputting(OutChannel.B), + SF_NodeConnector.Create(this,"TTR","t*3",ConType.cOutput,ValueType.VTv1,false).Outputting(OutChannel.A) + }; + + } + + public override bool UpdatesOverTime() { + return true; + } + + public override bool IsUniformOutput() { + return true; + } + + public override string Evaluate( OutChannel channel = OutChannel.All ) { + return "_Time"; + } + + public override float EvalCPU( int c ) { + return 1f; + } + + + + } +} \ No newline at end of file diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Time.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Time.cs.meta new file mode 100644 index 00000000..801914cf --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Time.cs.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 28440b6a8c7a9fa4c9d4d8f5dfa12015 +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ToggleProperty.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ToggleProperty.cs new file mode 100644 index 00000000..4589e385 --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ToggleProperty.cs @@ -0,0 +1,146 @@ +using UnityEngine; +using UnityEditor; +using System.Collections; + +namespace ShaderForge { + + [System.Serializable] + public class SFN_ToggleProperty : SF_Node { + + + public SFN_ToggleProperty() { + + } + + [SerializeField] + public bool on = false; + + public override void Initialize() { + node_height = 24; + //node_width = (int)(NODE_WIDTH*1.25f); + base.Initialize( "Toggle" ); + lowerRect.y -= 8; + lowerRect.height = 28; + base.showColor = false; + base.neverDefineVariable = true; + base.UseLowerPropertyBox( true ); + base.texture.uniform = true; + base.texture.CompCount = 1; + base.shaderGenMode = ShaderGenerationMode.OffUniform; + + property = ScriptableObject.CreateInstance().Initialize( this ); + + connectors = new SF_NodeConnector[]{ + SF_NodeConnector.Create(this,"OUT","",ConType.cOutput,ValueType.VTv1,false) + }; + } + + public override bool IsUniformOutput() { + return true; + } + + public override string Evaluate( OutChannel channel = OutChannel.All ) { + return property.GetVariable(); + } + + + public override void DrawLowerPropertyBox() { + PrepareWindowColor(); + float vecPrev = texture.dataUniform[0]; + //int strWidth = (int)SF_Styles.GetLargeTextField().CalcSize( new GUIContent( texture.dataUniform[0].ToString() ) ).x; + //lowerRect.width = Mathf.Max( 32, strWidth ); + Rect r = new Rect( lowerRect ); + r.width -= 75; + r.width *= 2; + r.yMin += 4; + r.yMax -= 2; + r.xMin += 2; + float fVal = texture.dataUniform[0];; + + //GUI.enabled = false; + //fVal = EditorGUI.FloatField(r, texture.dataUniform[0], SF_Styles.LargeTextField); + //GUI.enabled = true; + + //r.x += r.width + 6; + + + + bool prevVal = on; + + GUI.enabled = false; + r = r.PadTop(2); + GUI.Label(r,prevVal ? "1": "0", SF_Styles.LargeTextFieldNoFrame); + r = r.PadTop(-2); + GUI.enabled = true; + + r.x += 18; + + r.width = r.height + 2; + bool newVal = GUI.Button(r,string.Empty) ? !prevVal : prevVal; + + if(newVal){ + Rect chkRect = r; + chkRect.width = SF_GUI.Toggle_check_icon.width; + chkRect.height = SF_GUI.Toggle_check_icon.height; + chkRect.x += (r.width-chkRect.width)*0.5f; + chkRect.y += 2; + GUI.DrawTexture(chkRect,SF_GUI.Toggle_check_icon); + } + + + + if(prevVal != newVal){ + UndoRecord("set toggle of " + property.nameDisplay + " to " + newVal.ToString()); + fVal = newVal ? 1f : 0f; + connectors[0].label = ""; + //Debug.Log("Setting it to " + newVal.ToString()); + } + + r.x += r.width + 6; + r.width = r.height + 18; + Rect texCoords = new Rect( r ); + texCoords.width /= 7; + texCoords.height /= 3; + texCoords.x = texCoords.y = 0; + GUI.DrawTextureWithTexCoords( r, SF_GUI.Handle_drag, texCoords, alphaBlend:true ); + on = newVal; + texture.dataUniform = new Color( fVal, fVal, fVal, fVal ); + if( texture.dataUniform[0] != vecPrev ) { + OnUpdateNode( NodeUpdateType.Soft ); + editor.shaderEvaluator.ApplyProperty( this ); + } + + ResetWindowColor(); + + } + + public override float EvalCPU( int c ) { + if(on){ + return 1f; + } else { + return 0f; + } + } + + + public override string SerializeSpecialData() { + string s = property.Serialize() + ","; + s += "on:" + on; + return s; + } + + public override void DeserializeSpecialData( string key, string value ) { + property.Deserialize( key, value ); + switch( key ) { + case "on": + on = bool.Parse( value ); + float fVal = on ? 1f : 0f; + texture.dataUniform = new Color( fVal, fVal, fVal, fVal ); + break; + } + } + + + + } +} \ No newline at end of file diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ToggleProperty.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ToggleProperty.cs.meta new file mode 100644 index 00000000..8a300c35 --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ToggleProperty.cs.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 103e84f5af0dd42d492e08d62f85e2c2 +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Transform.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Transform.cs new file mode 100644 index 00000000..877d1ed7 --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Transform.cs @@ -0,0 +1,248 @@ +using UnityEngine; +using UnityEditor; +using System.Collections; +using System; + +namespace ShaderForge { + + [System.Serializable] + public class SFN_Transform : SF_Node { + + + /* + public string[] matrixVars = new string[]{ + "UNITY_MATRIX_MVP", + "UNITY_MATRIX_MV", + "UNITY_MATRIX_V", + "UNITY_MATRIX_P", + "UNITY_MATRIX_VP", + "UNITY_MATRIX_T_MV", + "UNITY_MATRIX_IT_MV", + "unity_Object2World", + "unity_WorldToObject", + "tangentTransform" + }; + + public string[] matrixLabels = new string[]{ + "Model*View*Projection", + "Model*View", + "View", + "Projection", + "View*Projection", + "Transpose Model*View", + "Inverse transpose Model*View", + "Model to World", + "World to Model", + "Tangent" + }; + */ + + + public string[] spaceLabels = new string[]{ + "World", + "Local", + "Tangent", + "View" + }; + + public enum Space{World, Local, Tangent, View}; + + public Space spaceSelFrom = Space.World; + public Space spaceSelTo = Space.Local; + + + //public const int tangentID = 9; + //public int selection = 0; + + public SFN_Transform() { + + } + + public override void Initialize() { + base.Initialize( "Transform" ); + base.showColor = true; + base.vectorDataNode = true; // This should really be renamed to "Always draw as 3D" + UseLowerPropertyBox( true, true ); + base.shaderGenMode = ShaderGenerationMode.Manual; + //UseLowerReadonlyValues(true,true); + + + + connectors = new SF_NodeConnector[]{ + SF_NodeConnector.Create(this,"XYZ","XYZ",ConType.cOutput,ValueType.VTv3,false).Outputting(OutChannel.RGB), + SF_NodeConnector.Create(this,"IN","In",ConType.cInput,ValueType.VTv3,false).SetRequired(true) + }; + base.node_height += 14; + base.conGroup = ScriptableObject.CreateInstance().Initialize( connectors[0], connectors[1] ); + } + + public override int GetEvaluatedComponentCount() { + return this["IN"].GetCompCount(); + } + + public override bool IsUniformOutput() { + return GetInputData( "IN" ).uniform; + } + + public override void PrepareRendering( Material mat ) { + mat.SetFloat( "_FromSpace", (int)spaceSelFrom ); + mat.SetFloat( "_ToSpace", (int)spaceSelTo ); + } + + + // New system + public override void RefreshValue() { + RefreshValue( 1, 1 ); + } + + public string GetInVector(bool tangent = false){ + if(tangent) + return GetConnectorByStringID( "IN" ).TryEvaluate(); + else + return "float4("+GetConnectorByStringID( "IN" ).TryEvaluate()+",0)"; + } + + public override string Evaluate( OutChannel channel = OutChannel.All ) { + + if(spaceSelFrom == spaceSelTo){ // TODO: Add warning about tunneling variable + return GetConnectorByStringID( "IN" ).TryEvaluate(); + } + + + // From world space + if( FromTo( Space.World, Space.Local) ){ + return "mul( unity_WorldToObject, " + GetInVector() + " ).xyz"; + } + if( FromTo( Space.World, Space.Tangent) ){ + return "mul( tangentTransform, "+ GetInVector(tangent:true)+" ).xyz"; + } + if( FromTo(Space.World, Space.View)){ + return "mul( UNITY_MATRIX_V, " + GetInVector() + " ).xyz"; + } + + + // From local space + if( FromTo( Space.Local, Space.World) ){ + return "mul( unity_ObjectToWorld, " + GetInVector() + " ).xyz"; + } + if(FromTo(Space.Local, Space.Tangent)){ + return "mul( tangentTransform, " + "mul( unity_ObjectToWorld, " + GetInVector() + " ).xyz" + " ).xyz"; + } + if( FromTo(Space.Local, Space.View)){ + return "UnityObjectToViewPos( " + GetInVector() + " ).xyz"; + } + + + + + // From tangent space + if( FromTo( Space.Tangent, Space.World) ){ + return "mul( "+ GetInVector(tangent:true)+", tangentTransform ).xyz"; + } + if( FromTo( Space.Tangent, Space.Local) ){ + return "mul( unity_WorldToObject, " + "float4(mul( "+ GetInVector(tangent:true)+", tangentTransform ),0)" + " ).xyz"; + } + if( FromTo( Space.Tangent, Space.View) ){ + return "mul( UNITY_MATRIX_V, " + "float4(mul( "+ GetInVector(tangent:true)+", tangentTransform ),0)" + " ).xyz"; + } + + + // From view space + if( FromTo(Space.View, Space.World)){ + return "mul( " + GetInVector() + ", UNITY_MATRIX_V ).xyz"; + } + if( FromTo(Space.View, Space.Local)){ + return "mul( " + GetInVector() + ", UNITY_MATRIX_MV ).xyz"; + } + if( FromTo(Space.View, Space.Tangent)){ + return "mul( tangentTransform, "+ "mul( " + GetInVector() + ", UNITY_MATRIX_V ).xyz"+" ).xyz"; + } + + + + // TODO TODO TODO: + return GetConnectorByStringID( "IN" ).TryEvaluate(); + + + + /* + if( selection != tangentID ) + return "mul( " + matrixVars[selection] + ", float4( " + GetConnectorByStringID( "IN" ).TryEvaluate() + ", 0 )).xyz"; + else + return "mul( " + matrixVars[selection] + ", " + GetConnectorByStringID( "IN" ).TryEvaluate() + " )"; + */ + } + + public bool FromTo(Space from, Space to){ + return (spaceSelFrom == from && spaceSelTo == to); + } + + // Pass through + public override Vector4 EvalCPU() { + return GetInputData( "IN" ).node.EvalCPU(); + } + + const float dirLabelWidth = 28; + public override void DrawLowerPropertyBox() { + EditorGUI.BeginChangeCheck(); + + Rect r = new Rect(lowerRect); + r.width = dirLabelWidth; + r.height = 18; + //r.height /= 2; + GUI.Label(r,"From",SF_Styles.MiniLabelOverflow); + r.x += r.width; + r.width = (lowerRect.width-dirLabelWidth); + + spaceSelFrom = (Space)UndoablePopup(r, (int)spaceSelFrom, spaceLabels, "switch transform 'from' setting"); + r.y += r.height; + spaceSelTo = (Space)UndoablePopup(r, (int)spaceSelTo, spaceLabels, "switch transform 'to' setting"); + r.x = 0; + r.width = dirLabelWidth; + GUI.Label(r,"To",SF_Styles.MiniLabelOverflow); + + /* + r.width -= toLabelWidth; + float popupWidth = (r.width /= 2); + spaceSelFrom = EditorGUI.Popup(r, spaceSelFrom, spaceLabels); + r.x += r.width; + r.width = toLabelWidth; + GUI.Label(r,"to",SF_Styles.MiniLabelOverflow); + r.x += r.width; + r.width = popupWidth; + spaceSelTo = EditorGUI.Popup(r, spaceSelTo, spaceLabels); + */ + + //selection = EditorGUI.Popup( lowerRect, selection, matrixLabels ); + if( EditorGUI.EndChangeCheck() ) { + OnUpdateNode(); + } + } + + + public override string SerializeSpecialData() { + string s = "tffrom:" + (int)spaceSelFrom + ","; + s += "tfto:" + (int)spaceSelTo; + return s; + } + + public override void DeserializeSpecialData( string key, string value ) { + switch( key ) { + case "tffrom": + spaceSelFrom = (Space)int.Parse( value ); + break; + case "tfto": + spaceSelTo = (Space)int.Parse( value ); + break; + } + } + + + /* + public override Vector4 NodeOperator( int x, int y ) { + return base.NodeOperator( x, y ); + } + */ + + } +} \ No newline at end of file diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Transform.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Transform.cs.meta new file mode 100644 index 00000000..42ae709b --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Transform.cs.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 124d80ea9a58a4246b0a4a6cccdaac62 +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Transpose.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Transpose.cs new file mode 100644 index 00000000..77998e92 --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Transpose.cs @@ -0,0 +1,53 @@ +using UnityEngine; + +namespace ShaderForge { + + [System.Serializable] + public class SFN_Transpose : SF_Node { + + public SFN_Transpose() { + } + + public override void Initialize() { + node_height = 58; + base.Initialize( "Transpose" ); + base.showColor = false; + base.UseLowerPropertyBox( false, true ); + connectors = new SF_NodeConnector[]{ + SF_NodeConnector.Create(this,"OUT","",ConType.cOutput,ValueType.VTm4x4,false), + SF_NodeConnector.Create(this,"IN","",ConType.cInput,ValueType.VTm4x4,false).SetRequired(true) + }; + } + + public override void NeatWindow() { + PrepareWindowColor(); + GUI.BeginGroup( rect ); + Rect r = new Rect( rectInner ); + r = r.Pad( 4 ); + + Rect texCoords = new Rect( r ); + texCoords.width /= 7; + texCoords.height /= 3; + texCoords.x = texCoords.y = 0; + GUI.DrawTextureWithTexCoords( r, SF_GUI.Handle_drag, texCoords, alphaBlend: true ); + + GUI.EndGroup(); + ResetWindowColor(); + + } + + public override string Evaluate( OutChannel channel = OutChannel.All ) { + return "transpose(" + GetConnectorByStringID( "IN" ).TryEvaluate() + ")"; + } + + public override Vector4 EvalCPU() { + return Color.black; + } + + public override void RefreshValue() { + RefreshValue( 1, 1 ); + } + + + } +} \ No newline at end of file diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Transpose.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Transpose.cs.meta new file mode 100644 index 00000000..b6416903 --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Transpose.cs.meta @@ -0,0 +1,12 @@ +fileFormatVersion: 2 +guid: 443238bf8445e494fb3ddbb7a7e3651e +timeCreated: 1436201790 +licenseType: Pro +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Trunc.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Trunc.cs new file mode 100644 index 00000000..47d169b2 --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Trunc.cs @@ -0,0 +1,27 @@ +using UnityEngine; + +namespace ShaderForge { + + [System.Serializable] + public class SFN_Trunc : SF_Node_Arithmetic { + + public SFN_Trunc() { + } + + public override void Initialize() { + base.Initialize( "Trunc" ); + base.PrepareArithmetic(1); + base.shaderGenMode = ShaderGenerationMode.SimpleFunction; + } + + public override string Evaluate( OutChannel channel = OutChannel.All ) { + return "trunc(" + GetConnectorByStringID( "IN" ).TryEvaluate() + ")"; + } + + public override float EvalCPU( int c ) { + float val = GetInputData( "IN", c ); + return val < 0 ? -Mathf.Floor( -val ) : Mathf.Floor( val ); + } + + } +} \ No newline at end of file diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Trunc.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Trunc.cs.meta new file mode 100644 index 00000000..8d0542cc --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Trunc.cs.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 1d73655491ef04b4ea839fe65ab4831a +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_UVTile.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_UVTile.cs new file mode 100644 index 00000000..5cd6f5dc --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_UVTile.cs @@ -0,0 +1,128 @@ +using UnityEngine; +using UnityEditor; +using System.Collections; +//using System; + +namespace ShaderForge { + + [System.Serializable] + public class SFN_UVTile : SF_Node { + + + public SFN_UVTile() { + + } + + + public override void Initialize() { + base.Initialize( "UV Tile" ); + base.showColor = true; + UseLowerReadonlyValues( false ); + base.alwaysDefineVariable = true; + base.shaderGenMode = ShaderGenerationMode.CustomFunction; + texture.CompCount = 2; + //SF_NodeConnection lerpCon; + connectors = new SF_NodeConnector[]{ + SF_NodeConnector.Create(this,"UVOUT","UV",ConType.cOutput,ValueType.VTv2,false), + SF_NodeConnector.Create(this,"UVIN","UV",ConType.cInput,ValueType.VTv2,false).SetRequired(false).SetGhostNodeLink(typeof(SFN_TexCoord),"UVOUT"), + SF_NodeConnector.Create(this,"WDT","Wid",ConType.cInput,ValueType.VTv1,false).SetRequired(true).WithUseCount(2), + SF_NodeConnector.Create(this,"HGT","Hei",ConType.cInput,ValueType.VTv1,false).SetRequired(true).SetGhostNodeLink(typeof(SFN_Time),"T"), + SF_NodeConnector.Create(this,"TILE","Tile",ConType.cInput,ValueType.VTv1,false).SetRequired(true).WithUseCount(2), + }; + + //base.conGroup = ScriptableObject.CreateInstance().Initialize( connectors[0], connectors[1], connectors[2] ); + } + + + + + public override void OnUpdateNode( NodeUpdateType updType, bool cascade = true ) { + if( InputsConnected() ) + RefreshValue( 1, 2 ); + base.OnUpdateNode( updType ); + } + + public override bool IsUniformOutput() { + if( GetInputIsConnected( "UVIN" ) && !GetInputData( "UVIN" ).uniform ) + return false; + if( GetInputIsConnected( "WDT" ) && !GetInputData( "WDT" ).uniform ) + return false; + if( GetInputIsConnected( "HGT" ) && !GetInputData( "HGT" ).uniform ) + return false; + if( GetInputIsConnected( "TILE" ) && !GetInputData( "TILE" ).uniform ) + return false; + return false; + } + + public override int GetEvaluatedComponentCount() { + return 2; + } + + public string TileCountRecip() { + return GetVariableName() + "_tc_rcp"; + } + + public string TileX() { + return GetVariableName() + "_tx"; + } + + public string TileY() { + return GetVariableName() + "_ty"; + } + + public override string[] GetBlitOutputLines() { + return new string[] { + "float2 tcrcp = float2(1.0,1.0)/float2( _wdt.x, _hgt.x );", + "float ty = floor(_tile.x * tcrcp.x);", + "float tx = _tile.x - _wdt.x * ty;", + "float4((_uvin.xy + float2(tx, ty)) * tcrcp,0,0)" + }; + } + + public override string[] GetPreDefineRows() { + return new string[] { + "float2 " + TileCountRecip() + " = float2(1.0,1.0)/float2( " + this["WDT"].TryEvaluate() + ", " + this["HGT"].TryEvaluate() + " );", + "float " + TileY() + " = floor(" + this["TILE"].TryEvaluate() + " * " + TileCountRecip() + ".x);", + "float " + TileX() + " = " + this["TILE"].TryEvaluate() + " - " + this["WDT"].TryEvaluate() + " * " + TileY() + ";", + }; + } + + public override string Evaluate( OutChannel channel = OutChannel.All ) { + return "(" + this["UVIN"].TryEvaluate() + " + float2(" + TileX() + ", " + TileY() + ")) * " + TileCountRecip(); + } + + // TODO Expose more out here! + public override Vector4 EvalCPU() { + + // GetInputData( "ANG", x, y, 0 ) + + Vector2 uv = Vector2.one; + if( GetInputIsConnected( "UVIN" ) ) { + uv = new Vector2( GetInputData( "UVIN", 0 ), GetInputData( "UVIN", 1 ) ); + } else { + //uv = new Vector2( x / SF_NodeData.RESf, y / SF_NodeData.RESf ); // TODO: should use ghost nodes... + } + float tile = GetInputData( "TILE", 0 ); + float w = GetInputData( "WDT", 0 ); + float h = GetInputData( "HGT", 0 ); + + float ty = Mathf.Floor( tile / w ); + float tx = tile - w * ty; + + uv.x += tx; + uv.y += ty; + + uv.x /= w; + uv.y /= h; + + + return new Color( uv.x, uv.y, 0f, 0f ); + } + + float Frac( float x ) { + return x - Mathf.Floor( x ); + } + + + } +} \ No newline at end of file diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_UVTile.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_UVTile.cs.meta new file mode 100644 index 00000000..8694c0ad --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_UVTile.cs.meta @@ -0,0 +1,12 @@ +fileFormatVersion: 2 +guid: b76724c3c29f6ba49b2898ad57abf498 +timeCreated: 1439735875 +licenseType: Pro +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ValueProperty.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ValueProperty.cs new file mode 100644 index 00000000..687b3397 --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ValueProperty.cs @@ -0,0 +1,102 @@ +using UnityEngine; +using UnityEditor; +using System.Collections; + +namespace ShaderForge { + + [System.Serializable] + public class SFN_ValueProperty : SF_Node { + + + public SFN_ValueProperty() { + + } + + public override void Initialize() { + node_height = 24; + //node_width = (int)(NODE_WIDTH*1.25f); + base.Initialize( "Value" ); + lowerRect.y -= 8; + lowerRect.height = 28; + base.showColor = false; + base.neverDefineVariable = true; + base.UseLowerPropertyBox( true ); + base.texture.uniform = true; + base.texture.CompCount = 1; + base.shaderGenMode = ShaderGenerationMode.OffUniform; + + property = ScriptableObject.CreateInstance().Initialize( this ); + + connectors = new SF_NodeConnector[]{ + SF_NodeConnector.Create(this,"OUT","",ConType.cOutput,ValueType.VTv1,false) + }; + } + + public override bool IsUniformOutput() { + return true; + } + + public override string Evaluate( OutChannel channel = OutChannel.All ) { + return property.GetVariable(); + } + + + public override void DrawLowerPropertyBox() { + PrepareWindowColor(); + float vecPrev = texture.dataUniform[0]; + //int strWidth = (int)SF_Styles.GetLargeTextField().CalcSize( new GUIContent( texture.dataUniform[0].ToString() ) ).x; + //lowerRect.width = Mathf.Max( 32, strWidth ); + Rect r = new Rect( lowerRect ); + r.width -= 32; + r.yMin += 4; + r.yMax -= 2; + r.xMin += 2; + float fVal; + if(IsGlobalProperty()){ + fVal = 1f; + GUI.enabled = false; + EditorGUI.FloatField( r, 1, SF_Styles.LargeTextField ); + GUI.enabled = true; + + } else { + fVal = UndoableFloatField(r, texture.dataUniform[0], "value" , SF_Styles.LargeTextField); + //fVal = EditorGUI.FloatField( r, texture.dataUniform[0], SF_Styles.LargeTextField ); + } + r.x += r.width + 6; + r.width = r.height; + Rect texCoords = new Rect( r ); + texCoords.width /= 7; + texCoords.height /= 3; + texCoords.x = texCoords.y = 0; + GUI.DrawTextureWithTexCoords( r, SF_GUI.Handle_drag, texCoords, alphaBlend:true ); + + texture.dataUniform = new Vector4( fVal, fVal, fVal, fVal ); + if( texture.dataUniform[0] != vecPrev ) { + OnUpdateNode( NodeUpdateType.Soft ); + editor.shaderEvaluator.ApplyProperty( this ); + } + + ResetWindowColor(); + + } + + public override string SerializeSpecialData() { + string s = property.Serialize() + ","; + s += "v1:" + texture.dataUniform[0]; + return s; + } + + public override void DeserializeSpecialData( string key, string value ) { + property.Deserialize(key,value); + switch( key ) { + case "v1": + float fVal = float.Parse( value ); + texture.dataUniform = new Color( fVal, fVal, fVal, fVal ); + break; + } + } + + + + } +} \ No newline at end of file diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ValueProperty.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ValueProperty.cs.meta new file mode 100644 index 00000000..1cc0c92b --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ValueProperty.cs.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: ad7dec924ed5ebe4f80cca8439af7294 +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Vector1.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Vector1.cs new file mode 100644 index 00000000..60c8d02a --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Vector1.cs @@ -0,0 +1,91 @@ +using UnityEngine; +using UnityEditor; +using System.Collections; + +namespace ShaderForge { + + [System.Serializable] + public class SFN_Vector1 : SF_Node { + + + public SFN_Vector1() { + + } + + public override void Initialize() { + node_height = 24; + //node_width = (int)(NODE_WIDTH*1.25f); + base.Initialize( "Value" ); + lowerRect.y -= 8; + lowerRect.height = 28; + base.showColor = false; + base.UseLowerPropertyBox( true ); + base.texture.uniform = true; + base.texture.CompCount = 1; + base.shaderGenMode = ShaderGenerationMode.OffUniform; + + connectors = new SF_NodeConnector[]{ + SF_NodeConnector.Create(this,"OUT","",ConType.cOutput,ValueType.VTv1,false) + }; + } + + public override bool IsUniformOutput() { + return true; + } + + public override string Evaluate( OutChannel channel = OutChannel.All ) { + + string str = texture.dataUniform[0].ToString( "0.0###########" ); // At least one decimal + + if( texture.dataUniform[0] < 0f) + return "("+str+")"; + return str; + + } + + public override int GetEvaluatedComponentCount(){ + return 1; + } + + + public override void DrawLowerPropertyBox() { + float vecPrev = texture.dataUniform[0]; + //int strWidth = (int)SF_Styles.GetLargeTextField().CalcSize( new GUIContent( texture.dataUniform[0].ToString() ) ).x; + //lowerRect.width = Mathf.Max( 32, strWidth ); + Rect r = new Rect( lowerRect ); + r.width -= 32; + r.yMin += 4; + r.yMax -= 2; + r.xMin += 2; + //SF_GUI.EnterableFloatField( this, r, ref texture.dataUniform.r, SF_Styles.LargeTextField ); + UndoableEnterableFloatField(r, ref texture.dataUniform.x, "value", SF_Styles.LargeTextField); + r.x += r.width + 6; + r.width = r.height; + Rect texCoords = new Rect( r ); + texCoords.width /= 7; + texCoords.height /= 3; + texCoords.x = texCoords.y = 0; + GUI.DrawTextureWithTexCoords( r, SF_GUI.Handle_drag, texCoords, alphaBlend:true ); + + texture.dataUniform = new Vector4( texture.dataUniform.x, texture.dataUniform.x, texture.dataUniform.x, texture.dataUniform.x ); + if( texture.dataUniform[0] != vecPrev ) + OnUpdateNode(); + } + + public override string SerializeSpecialData() { + return "v1:" + texture.dataUniform[0]; + } + + public override void DeserializeSpecialData( string key, string value ) { + switch( key ) { + case "v1": + float fVal = float.Parse( value ); + texture.dataUniform = new Color( fVal, fVal, fVal, fVal ); + break; + } + } + + + + } +} \ No newline at end of file diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Vector1.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Vector1.cs.meta new file mode 100644 index 00000000..72ef9a79 --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Vector1.cs.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: c5a90f9239f419d4f99c9b73ae51f110 +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Vector2.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Vector2.cs new file mode 100644 index 00000000..7c1d97d4 --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Vector2.cs @@ -0,0 +1,79 @@ +using UnityEngine; +using UnityEditor; +using System.Collections; + +namespace ShaderForge { + + [System.Serializable] + public class SFN_Vector2 : SF_Node { + + + public SFN_Vector2() { + + } + + public override void Initialize() { + node_height /= 2; + base.Initialize( "Vector 2" ); + base.showColor = true; + base.UseLowerPropertyBox( true ); + base.texture.uniform = true; + base.canAlwaysSetPrecision = true; + base.texture.CompCount = 2; + base.shaderGenMode = ShaderGenerationMode.OffUniform; + lowerRect.width /= 2; + connectors = new SF_NodeConnector[]{ + SF_NodeConnector.Create(this,"OUT","",ConType.cOutput,ValueType.VTv2,false) + }; + } + + public override bool IsUniformOutput() { + return true; + } + + public override string Evaluate( OutChannel channel = OutChannel.All ) { + return precision.ToCode() + "2(" + texture.dataUniform[0] + "," + texture.dataUniform[1] + ")"; + } + + public override void DrawLowerPropertyBox() { + + if( selected && !SF_GUI.MultiSelectModifierHeld() ) + ColorPickerCorner(lowerRect); + + Vector4 cPrev = texture.dataUniform; + Rect tRect = lowerRect; + //SF_GUI.EnterableFloatField( this, tRect, ref texture.dataUniform.r, null ); + UndoableEnterableFloatField(tRect,ref texture.dataUniform.x, "R channel", null); + tRect.x += tRect.width; + //SF_GUI.EnterableFloatField( this, tRect, ref texture.dataUniform.g, null ); + UndoableEnterableFloatField(tRect,ref texture.dataUniform.y, "G channel", null); + if( texture.dataUniform != cPrev ) + OnUpdateNode(); + + } + + + public override string SerializeSpecialData() { + string s = "v1:" + texture.dataUniform[0] + ","; + s += "v2:" + texture.dataUniform[1]; + return s; + } + + public override void DeserializeSpecialData( string key, string value ) { + switch( key ) { + case "v1": + float fVal1 = float.Parse( value ); + texture.dataUniform[0] = fVal1; + break; + case "v2": + float fVal2 = float.Parse( value ); + texture.dataUniform[1] = fVal2; + break; + } + } + + + + + } +} \ No newline at end of file diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Vector2.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Vector2.cs.meta new file mode 100644 index 00000000..25c0b637 --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Vector2.cs.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: a4a9e941838527c4ab45dac110a4c10c +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Vector3.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Vector3.cs new file mode 100644 index 00000000..6d7792eb --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Vector3.cs @@ -0,0 +1,89 @@ +using UnityEngine; +using UnityEditor; +using System.Collections; + +namespace ShaderForge { + + [System.Serializable] + public class SFN_Vector3 : SF_Node { + + + public SFN_Vector3() { + + } + + public override void Initialize() { + node_height /= 2; + base.Initialize( "Vector 3" ); + base.showColor = true; + base.UseLowerPropertyBox( true ); + base.texture.uniform = true; + base.canAlwaysSetPrecision = true; + base.texture.CompCount = 3; + base.shaderGenMode = ShaderGenerationMode.OffUniform; + lowerRect.width /= 3; + connectors = new SF_NodeConnector[]{ + SF_NodeConnector.Create(this,"OUT","",ConType.cOutput,ValueType.VTv3,false) + }; + } + + public override bool IsUniformOutput() { + return true; + } + + public override string Evaluate( OutChannel channel = OutChannel.All ) { + return precision.ToCode() + "3(" + texture.dataUniform[0] + "," + texture.dataUniform[1] + "," + texture.dataUniform[2] + ")"; + } + + public override void DrawLowerPropertyBox() { + + if( selected && !SF_GUI.MultiSelectModifierHeld() ) + ColorPickerCorner( lowerRect ); + + //Color vecPrev = texture.dataUniform; + Rect tRect = lowerRect; + UndoableEnterableFloatField( tRect, ref texture.dataUniform.x, "R channel", null); + tRect.x += tRect.width; + UndoableEnterableFloatField( tRect, ref texture.dataUniform.y, "G channel", null); + tRect.x += tRect.width; + UndoableEnterableFloatField( tRect, ref texture.dataUniform.z, "B channel", null); + } + + public override string SerializeSpecialData() { + string s = "v1:" + texture.dataUniform[0] + ","; + s += "v2:" + texture.dataUniform[1] + ","; + s += "v3:" + texture.dataUniform[2]; + return s; + } + + public override void DeserializeSpecialData( string key, string value ) { + switch( key ) { + case "v1": + float fVal1 = float.Parse( value ); + texture.dataUniform[0] = fVal1; + break; + case "v2": + float fVal2 = float.Parse( value ); + texture.dataUniform[1] = fVal2; + break; + case "v3": + float fVal3 = float.Parse( value ); + texture.dataUniform[2] = fVal3; + break; + } + } + + + // public override float[] GetVectorWithCompCount(int cCount){ + // if(cCount == 3) + // return vec; + // else + // Debug.LogWarning("Vector3 not convertible to vector" + cCount); // Vector3 is not convertible to any other + // } + + + + + + } +} \ No newline at end of file diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Vector3.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Vector3.cs.meta new file mode 100644 index 00000000..bbaf116c --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Vector3.cs.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 9641f0761fe611c47bbca6329cbedc20 +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Vector4.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Vector4.cs new file mode 100644 index 00000000..7c9f060f --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Vector4.cs @@ -0,0 +1,89 @@ +using UnityEngine; +using UnityEditor; +using System.Collections; + +namespace ShaderForge { + + public class SFN_Vector4 : SF_Node { + + + public SFN_Vector4() { + + } + + public override void Initialize() { + node_height /= 2; + base.Initialize( "Vector 4" ); + base.showColor = true; + base.UseLowerPropertyBox( true ); + base.texture.uniform = true; + base.texture.CompCount = 4; + base.canAlwaysSetPrecision = true; + base.shaderGenMode = ShaderGenerationMode.OffUniform; + lowerRect.width /= 4; + connectors = new SF_NodeConnector[]{ + SF_NodeConnector.Create(this,"OUT","",ConType.cOutput,ValueType.VTv4,false) + }; + } + + public override bool IsUniformOutput() { + return true; + } + + public override string Evaluate( OutChannel channel = OutChannel.All ) { + return precision.ToCode() + "4(" + texture.dataUniform[0] + "," + texture.dataUniform[1] + "," + texture.dataUniform[2] + "," + texture.dataUniform[3] + ")"; + } + + + public override void DrawLowerPropertyBox() { + + if( selected && !SF_GUI.MultiSelectModifierHeld() ) + ColorPickerCorner( lowerRect ); + + //Color vecPrev = texture.dataUniform; + Rect tRect = lowerRect; + UndoableEnterableFloatField( tRect, ref texture.dataUniform.x, "R channel", null); + tRect.x += tRect.width; + UndoableEnterableFloatField( tRect, ref texture.dataUniform.y, "G channel", null); + tRect.x += tRect.width; + UndoableEnterableFloatField( tRect, ref texture.dataUniform.z, "B channel", null); + tRect.x += tRect.width; + UndoableEnterableFloatField( tRect, ref texture.dataUniform.w, "A channel", null); + + } + + public override string SerializeSpecialData() { + string s = "v1:" + texture.dataUniform[0] + ","; + s += "v2:" + texture.dataUniform[1] + ","; + s += "v3:" + texture.dataUniform[2] + ","; + s += "v4:" + texture.dataUniform[3]; + return s; + } + + public override void DeserializeSpecialData( string key, string value ) { + switch( key ) { + case "v1": + float fVal1 = float.Parse( value ); + texture.dataUniform[0] = fVal1; + break; + case "v2": + float fVal2 = float.Parse( value ); + texture.dataUniform[1] = fVal2; + break; + case "v3": + float fVal3 = float.Parse( value ); + texture.dataUniform[2] = fVal3; + break; + case "v4": + float fVal4 = float.Parse( value ); + texture.dataUniform[3] = fVal4; + break; + } + } + + + + + + } +} \ No newline at end of file diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Vector4.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Vector4.cs.meta new file mode 100644 index 00000000..dc1a5ce7 --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Vector4.cs.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 6cd58b55cabc56347876d1fad012dbb4 +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Vector4Property.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Vector4Property.cs new file mode 100644 index 00000000..f23b7520 --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Vector4Property.cs @@ -0,0 +1,112 @@ +using UnityEngine; +using UnityEditor; +using System.Collections; + +namespace ShaderForge { + + public class SFN_Vector4Property : SF_Node { + + + public SFN_Vector4Property() { + + } + + public override void Initialize() { + base.Initialize( "Vector 4" ); + base.showColor = true; + base.UseLowerPropertyBox( true ); + base.neverDefineVariable = true; + base.texture.uniform = true; + base.texture.CompCount = 4; + base.shaderGenMode = ShaderGenerationMode.OffUniform; + lowerRect.width /= 4; + + property = ScriptableObject.CreateInstance().Initialize( this ); + + connectors = new SF_NodeConnector[]{ + SF_NodeConnector.Create(this,"XYZ","XYZ",ConType.cOutput,ValueType.VTv3) .Outputting(OutChannel.RGB), + SF_NodeConnector.Create(this,"X","X",ConType.cOutput,ValueType.VTv1) .WithColor(Color.red) .Outputting(OutChannel.R), + SF_NodeConnector.Create(this,"Y","Y",ConType.cOutput,ValueType.VTv1) .WithColor(Color.green) .Outputting(OutChannel.G), + SF_NodeConnector.Create(this,"Z","Z",ConType.cOutput,ValueType.VTv1) .WithColor(Color.blue) .Outputting(OutChannel.B), + SF_NodeConnector.Create(this,"W","W",ConType.cOutput,ValueType.VTv1) .Outputting(OutChannel.A) + }; + } + + public override bool IsUniformOutput() { + return true; + } + + public override string Evaluate( OutChannel channel = OutChannel.All ) { + return property.GetVariable(); + } + + + public override void DrawLowerPropertyBox() { + + Vector4 vecPrev = texture.dataUniform; + + if( !IsGlobalProperty() && selected && !SF_GUI.MultiSelectModifierHeld() ) + ColorPickerCorner( lowerRect ); + + PrepareWindowColor(); + if(IsGlobalProperty()){ + texture.dataUniform[0] = texture.dataUniform[1] = texture.dataUniform[2] = 0.5f; + texture.dataUniform[3] = 1f; + GUI.enabled = false; + } + Rect tRect = lowerRect; + texture.dataUniform[0] = UndoableFloatField(tRect, texture.dataUniform[0], "R channel"); + tRect.x += tRect.width; + texture.dataUniform[1] = UndoableFloatField(tRect, texture.dataUniform[1], "G channel"); + tRect.x += tRect.width; + texture.dataUniform[2] = UndoableFloatField(tRect, texture.dataUniform[2], "B channel"); + tRect.x += tRect.width; + texture.dataUniform[3] = UndoableFloatField(tRect, texture.dataUniform[3], "A channel"); + if(IsGlobalProperty()){ + GUI.enabled = true; + } + ResetWindowColor(); + if( texture.dataUniform != vecPrev ) { + OnUpdateNode( NodeUpdateType.Soft ); + editor.shaderEvaluator.ApplyProperty( this ); + } + + } + + public override string SerializeSpecialData() { + string s = property.Serialize() + ","; + s += "v1:" + texture.dataUniform[0] + ","; + s += "v2:" + texture.dataUniform[1] + ","; + s += "v3:" + texture.dataUniform[2] + ","; + s += "v4:" + texture.dataUniform[3]; + return s; + } + + public override void DeserializeSpecialData( string key, string value ) { + property.Deserialize(key,value); + switch( key ) { + case "v1": + float fVal1 = float.Parse( value ); + texture.dataUniform[0] = fVal1; + break; + case "v2": + float fVal2 = float.Parse( value ); + texture.dataUniform[1] = fVal2; + break; + case "v3": + float fVal3 = float.Parse( value ); + texture.dataUniform[2] = fVal3; + break; + case "v4": + float fVal4 = float.Parse( value ); + texture.dataUniform[3] = fVal4; + break; + } + } + + + + + + } +} \ No newline at end of file diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Vector4Property.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Vector4Property.cs.meta new file mode 100644 index 00000000..322dfb3d --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Vector4Property.cs.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 23b7c804c8bc56748a714271c303569f +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_VectorProjection.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_VectorProjection.cs new file mode 100644 index 00000000..5e623e7d --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_VectorProjection.cs @@ -0,0 +1,59 @@ +using UnityEngine; +using UnityEditor; +using System.Collections; +using System; + +namespace ShaderForge { + + [System.Serializable] + public class SFN_VectorProjection : SF_Node_Arithmetic { + + public SFN_VectorProjection() { + + } + + public override void Initialize() { + base.Initialize( "Vector Project." ); + base.PrepareArithmetic( 2 ); + base.shaderGenMode = ShaderGenerationMode.CustomFunction; + GetConnectorByStringID("A").usageCount = 1; + GetConnectorByStringID("B").usageCount = 4; + } + + public override string[] GetBlitOutputLines() { + string dotLeft = "_b * dot(_a,_b)"; + string dotRight = "dot(_b,_b)"; + string retStr = "(" + dotLeft + "/" + dotRight + ")"; + return new string[] { retStr }; + } + + public override string Evaluate( OutChannel channel = OutChannel.All ) { + + string a = GetConnectorByStringID( "A" ).TryEvaluate(); + string b = GetConnectorByStringID( "B" ).TryEvaluate(); + + string dotLeft = b + " * dot(" + a + "," + b + ")"; + string dotRight = "dot(" + b + "," + b + ")"; + + string retStr = "(" + dotLeft + "/" + dotRight + ")"; + + return retStr; + } + + public override Vector4 EvalCPU() { + + Vector4 a = GetInputData( "A" ).dataUniform; + Vector4 b = GetInputData( "B" ).dataUniform; + + int cc = Mathf.Max(GetInputCon( "A" ).GetCompCount(), GetInputCon( "B" ).GetCompCount()); + + float dotLeft = SF_Tools.Dot( a, b, cc ); + float dotRight = SF_Tools.Dot( b, b, cc ); + + Vector4 retVec = (dotLeft/dotRight) * b; + + return retVec; + } + + } +} \ No newline at end of file diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_VectorProjection.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_VectorProjection.cs.meta new file mode 100644 index 00000000..63c93aff --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_VectorProjection.cs.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 50e107124a8704b46bc0d1757615d87f +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_VectorRejection.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_VectorRejection.cs new file mode 100644 index 00000000..29b01aab --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_VectorRejection.cs @@ -0,0 +1,59 @@ +using UnityEngine; +using UnityEditor; +using System.Collections; +using System; + +namespace ShaderForge { + + [System.Serializable] + public class SFN_VectorRejection : SF_Node_Arithmetic { + + public SFN_VectorRejection() { + + } + + public override void Initialize() { + base.Initialize( "Vector Reject." ); + base.PrepareArithmetic( 2 ); + base.shaderGenMode = ShaderGenerationMode.CustomFunction; + GetConnectorByStringID("A").usageCount = 2; + GetConnectorByStringID("B").usageCount = 4; + } + + public override string[] GetBlitOutputLines() { + string dotLeft = "_b * dot(_a,_b)"; + string dotRight = "dot(_b,_b)"; + string retStr = "(_a - (" + dotLeft + "/" + dotRight + "))"; + return new string[] { retStr }; + } + + public override string Evaluate( OutChannel channel = OutChannel.All ) { + + string a = GetConnectorByStringID( "A" ).TryEvaluate(); + string b = GetConnectorByStringID( "B" ).TryEvaluate(); + + string dotLeft = b + " * dot(" + a + "," + b + ")"; + string dotRight = "dot(" + b + "," + b + ")"; + + string retStr = "(" + a + " - (" + dotLeft + "/" + dotRight + "))"; + + return retStr; + } + + public override Vector4 EvalCPU() { + + Vector4 a = GetInputData( "A" ).dataUniform; + Vector4 b = GetInputData( "B" ).dataUniform; + + int cc = Mathf.Max(GetInputCon( "A" ).GetCompCount(), GetInputCon( "B" ).GetCompCount()); + + float dotLeft = SF_Tools.Dot( a, b, cc ); + float dotRight = SF_Tools.Dot( b, b, cc ); + + Vector4 retVec = a - (dotLeft/dotRight) * b; + + return retVec; + } + + } +} \ No newline at end of file diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_VectorRejection.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_VectorRejection.cs.meta new file mode 100644 index 00000000..3c81869c --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_VectorRejection.cs.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 5e6f56ecc8b1f4edfbfa9eae75988a2b +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_VertexColor.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_VertexColor.cs new file mode 100644 index 00000000..ae5b7ada --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_VertexColor.cs @@ -0,0 +1,35 @@ +using UnityEngine; +using UnityEditor; +using System.Collections; + +namespace ShaderForge { + + [System.Serializable] + public class SFN_VertexColor : SF_Node { + + + public SFN_VertexColor() { + + } + + public override void Initialize() { + base.Initialize( "Vertex Color", InitialPreviewRenderMode.BlitSphere ); + base.showColor = true; + base.UseLowerPropertyBox( false ); + base.texture.CompCount = 4; + base.neverDefineVariable = true; + connectors = new SF_NodeConnector[]{ + SF_NodeConnector.Create(this,"RGB","RGB",ConType.cOutput,ValueType.VTv3,false).Outputting(OutChannel.RGB), + SF_NodeConnector.Create(this,"R","R",ConType.cOutput, ValueType.VTv1) .WithColor(Color.red) .Outputting(OutChannel.R), + SF_NodeConnector.Create(this,"G","G",ConType.cOutput,ValueType.VTv1) .WithColor(Color.green) .Outputting(OutChannel.G), + SF_NodeConnector.Create(this,"B","B",ConType.cOutput,ValueType.VTv1) .WithColor(Color.blue) .Outputting(OutChannel.B), + SF_NodeConnector.Create(this,"A","A",ConType.cOutput,ValueType.VTv1) .Outputting(OutChannel.A) + }; + } + + public override string Evaluate( OutChannel channel = OutChannel.All ) { + return SF_Evaluator.WithProgramPrefix( "vertexColor" ); + } + + } +} \ No newline at end of file diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_VertexColor.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_VertexColor.cs.meta new file mode 100644 index 00000000..d18a436f --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_VertexColor.cs.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 8e5d87afa7814f644a9e0493dd32ca91 +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ViewPosition.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ViewPosition.cs new file mode 100644 index 00000000..9361a500 --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ViewPosition.cs @@ -0,0 +1,38 @@ +using UnityEngine; +using UnityEditor; +using System.Collections; + +namespace ShaderForge { + + [System.Serializable] + public class SFN_ViewPosition : SF_Node { + + + public SFN_ViewPosition() { + + } + + public override void Initialize() { + base.Initialize( "View Pos.", InitialPreviewRenderMode.BlitQuad ); + base.showColor = true; + base.UseLowerPropertyBox( false ); + base.texture.CompCount = 3; + base.neverDefineVariable = true; + connectors = new SF_NodeConnector[]{ + SF_NodeConnector.Create(this,"XYZ","XYZ",ConType.cOutput,ValueType.VTv3,false), + SF_NodeConnector.Create(this,"X","X",ConType.cOutput,ValueType.VTv1,false).Outputting(OutChannel.R).WithColor(Color.red), + SF_NodeConnector.Create(this,"Y","Y",ConType.cOutput,ValueType.VTv1,false).Outputting(OutChannel.G).WithColor(Color.green), + SF_NodeConnector.Create(this,"Z","Z",ConType.cOutput,ValueType.VTv1,false).Outputting(OutChannel.B).WithColor(Color.blue) + }; + } + + public override Vector4 EvalCPU() { + return new Color( 0f, 0.7071068f, 0.7071068f, 0f ); + } + + public override string Evaluate( OutChannel channel = OutChannel.All ) { + return "_WorldSpaceCameraPos"; + } + + } +} \ No newline at end of file diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ViewPosition.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ViewPosition.cs.meta new file mode 100644 index 00000000..397438ca --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ViewPosition.cs.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 2aeeefb42d9a9784dabd94b3d82c05bc +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ViewReflectionVector.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ViewReflectionVector.cs new file mode 100644 index 00000000..683551f3 --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ViewReflectionVector.cs @@ -0,0 +1,31 @@ +using UnityEngine; +using UnityEditor; +using System.Collections; + +namespace ShaderForge { + + [System.Serializable] + public class SFN_ViewReflectionVector : SF_Node { + + + public SFN_ViewReflectionVector() { + + } + + public override void Initialize() { + base.Initialize( "View Refl.", InitialPreviewRenderMode.BlitSphere ); + base.showColor = true; + base.UseLowerPropertyBox( false ); + base.texture.CompCount = 3; + base.neverDefineVariable = true; + connectors = new SF_NodeConnector[]{ + SF_NodeConnector.Create(this,"OUT","",ConType.cOutput,ValueType.VTv3,false) + }; + } + + public override string Evaluate( OutChannel channel = OutChannel.All ) { + return "viewReflectDirection"; + } + + } +} \ No newline at end of file diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ViewReflectionVector.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ViewReflectionVector.cs.meta new file mode 100644 index 00000000..2438c958 --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ViewReflectionVector.cs.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 2f7ebdd9ba1b27c4e8f26cc468d8d810 +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ViewVector.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ViewVector.cs new file mode 100644 index 00000000..35fdc2ef --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ViewVector.cs @@ -0,0 +1,32 @@ +using UnityEngine; +using UnityEditor; +using System.Collections; + +namespace ShaderForge { + + [System.Serializable] + public class SFN_ViewVector : SF_Node { + + + public SFN_ViewVector() { + + } + + public override void Initialize() { + base.Initialize( "View Dir.", InitialPreviewRenderMode.BlitSphere ); + base.showColor = true; + base.UseLowerPropertyBox( false ); + base.texture.CompCount = 3; + base.neverDefineVariable = true; + connectors = new SF_NodeConnector[]{ + SF_NodeConnector.Create(this,"OUT","",ConType.cOutput,ValueType.VTv3,false) + }; + } + + public override string Evaluate( OutChannel channel = OutChannel.All ) { + return "viewDirection"; + } + + } + +} \ No newline at end of file diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ViewVector.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ViewVector.cs.meta new file mode 100644 index 00000000..2a52258c --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ViewVector.cs.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: e6425e0019e46fd429bb6fb731bfb0be +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SF_Node.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SF_Node.cs new file mode 100644 index 00000000..209d3b24 --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SF_Node.cs @@ -0,0 +1,2661 @@ +using UnityEngine; +using UnityEditor; +using System.Collections; +using System.Collections.Generic; +using System.Linq; +using System.Xml; +using System; + + +namespace ShaderForge { + + public enum NodeUpdateType { Soft, Hard }; + public enum ShaderGenerationMode { + OffUniform, // No shader written + Modal, // Requires modes or C# intervention, Array of suffixes & Array of custom outputs + Manual, // Fully manually written + ManualModal, // Manually written, with modes + ValuePassing, // Floats are sent from the node to the material before render + SimpleFunction, // Generates a name(inputs) + CustomFunction, // Generates a custom output line + ModularInput // Generates 5 shaders for different input counts + }; + + public enum InitialPreviewRenderMode { Off, BlitQuad, BlitSphere }; + + + [System.Serializable] + public class SF_Node : ScriptableObject, IDependable { + + public const int NODE_SIZE = 96; + public const int NODE_WIDTH = NODE_SIZE + 3; // This fits a NODE_SIZE texture inside + public const int NODE_HEIGHT = NODE_SIZE + 16; // This fits a NODE_SIZE texture inside + + public int node_width = NODE_WIDTH; + public int node_height = NODE_HEIGHT; + + public ShaderGenerationMode shaderGenMode = ShaderGenerationMode.Manual; + + public int depth = 0; // Used when deserializing and updating + + public string _variableName; + public string variableName{ + get{ + if(string.IsNullOrEmpty(_variableName) && GUI.GetNameOfFocusedControl() != VarNameControl() ){ + ResetVariableName(); + } + return _variableName; + } + set{ + _variableName = value; + if(IsProperty() && property.overrideInternalName){ + property.UpdateInternalName(); + } + SF_Tools.FormatSerializableVarName(ref _variableName); + } + } + + public bool canAlwaysSetPrecision = false; + public bool isFloatPrecisionBasedVariable = true; + public bool lockedVariableName = false; + public FloatPrecision precision = FloatPrecision.Float; + + string[] _precisionLabels; + public string[] precisionLabels{ + get{ + if(_precisionLabels == null || _precisionLabels.Length == 0){ + _precisionLabels = FloatPrecision.Float.DisplayStrings(); + } + return _precisionLabels; + } + } + +// string[] _precisionLabelsSimple; +// public string[] precisionLabelsSimple{ +// get{ +// if(_precisionLabelsSimple == null){ +// _precisionLabelsSimple = new string[3]; +// for(int i=0;i<3;i++){ +// _precisionLabelsSimple[i] = ((FloatPrecision)i).ToString().ToLower(); +// } +// } +// return _precisionLabelsSimple; +// } +// } + + public bool isGhost = false; + + public bool selected = false; + + public bool discreteTitle = false; + + public bool varDefined = false; // Whether or not this node has had its variable defined already. + public bool varPreDefined = false; // Whether or not this variable has done its predefs + public bool alwaysDefineVariable = false; + public bool neverDefineVariable = false; + public bool onlyPreDefine = false; // If it should only do the pre-define, and skip the regular variable or not (Used in branching) + public bool availableInDeferredPrePass = true; + + public static Color colorExposed = new Color( 0.8f, 1f, 0.9f ); + public static Color colorExposedDim = new Color( 0.8f, 1f, 0.9f )*0.8f; + public static Color colorExposedDark = new Color( 0.24f, 0.32f, 0.30f ) * 1.25f; + public static Color colorExposedDarker = new Color( 0.24f, 0.32f, 0.30f ) * 0.75f; + + public static Color colorGlobal = new Color( 1f, 0.8f, 0.7f); // ( 1f, 0.9f, 0.8f); + + public void UndoRecord(string undoMsg, UpToDateState tempOutdatedState = UpToDateState.OutdatedHard){ + SetDirty(tempOutdatedState); // This will only be in the restored undo state + Undo.RecordObject(this,undoMsg); + if(texture != null) + Undo.RecordObject(texture, undoMsg); + if(property != null) + Undo.RecordObject(property, undoMsg); + if(status != null) + Undo.RecordObject(status, undoMsg); + foreach(SF_NodeConnector con in connectors){ + Undo.RecordObject(con, undoMsg); + } + SetDirty(UpToDateState.UpToDate); // Might need to comment this for Redo to work, it seems + } + + public void ResetVariableName() { + _variableName = "node_" + id; + } + + + public Color colorDefault{ + get{ + if(SF_GUI.ProSkin) + return new Color( 0.8f, 0.8f, 0.8f); + else + return new Color( 1f, 1f, 1f ); + } + } + + public bool showColor; + public Color displayColor = Color.black; + + public SF_ShaderProperty property = null; + + public SF_NodeStatus status; + + public SF_Editor editor; + + public ShaderProgram program = ShaderProgram.Any; + + // User typed comment + public string comment = ""; + //public bool hasComment; + + public bool showLowerPropertyBox; + public bool showLowerPropertyBoxAlways; + public bool showLowerReadonlyValues; + public bool initialized = false; + + + //public int depth = 0; // Used to sort variable initialization + + // public static bool DEBUG = false; + + + public SF_NodePreview texture; + // public float[] vector; + + + + public int id; + + public string nodeName; + private string nodeNameSearch; + public string SearchName{ + get{ + if(string.IsNullOrEmpty(nodeNameSearch)){ + return nodeName; + } else { + return nodeNameSearch; + } + } + set{ + nodeNameSearch = value; + } + } + + public Rect rect; + public Rect rectInner; + public Rect lowerRect; + + [SerializeField] + public SF_NodeConnector[] connectors; + + public SF_NodeConnectionGroup conGroup; + + public float extraWidthOutput = 0f; + public float extraWidthInput = 0f; + + public SF_Node() { + //Debug.Log("NODE " + GetType()); + } + + // Quick retrieval of connectors + public SF_NodeConnector this[string s] { + get { + return GetConnectorByStringID(s); + } + } + + public void OnEnable() { + base.hideFlags = HideFlags.HideAndDontSave; + } + + #region IDependable implementation + + private List dependencies; + public int iDepth = 0; + void IDependable.AddDependency (SF_Node dp){ + (this as IDependable).Dependencies.Add(dp); + } + + int IDependable.Depth { + get { + return iDepth; + } + set { + iDepth = value; + } + } + + List IDependable.Dependencies { + get { + if(dependencies == null){ + dependencies = new List(); + } + return dependencies; + } + set { + dependencies = value; + } + } + + + public void ReadDependencies(){ + (this as IDependable).Dependencies.Clear(); + foreach(SF_NodeConnector c in connectors){ + if(c.conType == ConType.cOutput) + continue; + if(!c.IsConnectedAndEnabled()) + continue; + if(c.inputCon == null) + continue; + (this as IDependable).AddDependency(c.inputCon.node); + } + } + + + #endregion + + public bool IsProperty() { + if( property == null ) + return false; + if( string.IsNullOrEmpty( property.nameType ) ) { + property = null; + return false; + } + return true; + } + + public bool IsGlobalProperty(){ + return IsProperty() ? property.global : false; + } + + public virtual bool UpdatesOverTime() { + return false; // Override on nodes like Time, Panner and Rotator + } + + + // TODO: Matrices & Samplers? + public string GetVariableType() { + + + // HACK + if( this is SFN_Transpose ) { + return precision.ToCode() + "4x4"; + } + + if( this is SFN_Matrix4x4 ) { + return precision.ToCode() + "4x4"; + } + + if( this is SFN_Matrix4x4Property ) { + return precision.ToCode() + "4x4"; + } + + if( this is SFN_MultiplyMatrix ) { + if( GetConnectorByStringID( "OUT" ).IsConnected() ) { + if( GetConnectorByStringID( "OUT" ).valueType == ValueType.VTm4x4) + return precision.ToCode() + "4x4"; + else + return precision.ToCode() + "4"; + } + } + + if( this is SFN_Code ) { + if( GetConnectorByStringID( "OUT" ).IsConnected() ) { + if( GetConnectorByStringID( "OUT" ).valueType == ValueType.VTm4x4) + return precision.ToCode() + "4x4"; + } + } + + + int cc = GetEvaluatedComponentCount(); + if( cc == 0 ) + cc = texture.CompCount; + + string precisionStr = precision.ToCode(); + + + if(cc == 1) + return precisionStr; + return precisionStr + cc; + + //if( texture.CompCount == 1 ) + // return "float"; + //return "float" + texture.CompCount; + } + + public string GetVariableName(bool createIfNull = true) { + if(IsProperty()){ + if(ShouldDefineVariable() && !neverDefineVariable) + return property.nameInternal + "_var"; + else if( neverDefineVariable) + return property.nameInternal; + } + if( createIfNull && string.IsNullOrEmpty( variableName ) ) + ResetVariableName(); + return variableName; + } + + public virtual void Initialize() { + // Override + } + + + public SF_NodeConnector[] ConnectedInputs{ + get{ + return connectors.Where(con=>con.IsConnectedAndEnabled() && con.conType == ConType.cInput).Select(con=>con).ToArray(); + } + } + + + // Used for 3D data like normal/view vector, etc. + public bool vectorDataNode = false; + public bool displayVectorDataMask = false; + + public void UpdateDisplayVectorDataMask(){ + displayVectorDataMask = CheckIfShouldDisplayVectorDataMask(); + } + + public bool CheckIfShouldDisplayVectorDataMask(){ + if(vectorDataNode){ + return true; + } else { + bool disp = false; + foreach(SF_NodeConnector con in ConnectedInputs){ + if(con.inputCon.node.displayVectorDataMask){ + disp = true; + break; + } + } + return disp; + } + } + + public InitialPreviewRenderMode initialPreviewMode; + + public void Initialize( string name, InitialPreviewRenderMode initialPreviewMode = InitialPreviewRenderMode.Off ) { + this.initialPreviewMode = initialPreviewMode; + editor = SF_Editor.instance; // TODO, pass in a better way + status = ScriptableObject.CreateInstance().Initialize(this); + Vector2 pos = editor.mousePosition; // TODO: check where to spawn first + AssignID(); + this.nodeName = name; + if( SF_Debug.nodes ) + this.nodeName = ( "[" + id + "] " + this.nodeName ); + texture = ScriptableObject.CreateInstance().Initialize( this ); + texture.Fill( Color.black ); + + + + + GenerateBaseData(); + + + texture.LoadAndInitializeIcons(this.GetType()); + + + + /* + // Try to find icon + if(vectorDataTexture){ + vectorDataNode = true; + displayVectorDataMask = true; + texture.LoadDataTexture(this.GetType()); + }*/ + + + pos = editor.nodeView.ScreenSpaceToZoomSpace( pos ); + InitializeDefaultRect( pos ); + } + + public void GenerateBaseData() { + if( initialPreviewMode != InitialPreviewRenderMode.Off ) { + bool preferQuad = initialPreviewMode == InitialPreviewRenderMode.BlitQuad; + bool sphereWhen3D = SF_Settings.nodeRenderMode != NodeRenderMode.Viewport; + bool canRenderQuads = SF_Settings.nodeRenderMode == NodeRenderMode.Mixed; + + if( preferQuad && canRenderQuads ) { + vectorDataNode = false; // ? + displayVectorDataMask = false; + texture.GenerateBaseData( render3D: false ); + } else { + vectorDataNode = sphereWhen3D; + displayVectorDataMask = sphereWhen3D; + texture.GenerateBaseData( render3D: true ); + } + + } else if( texture.uniform && IsUniformOutput() ) { + texture.GenerateBaseData( false ); + } + } + + public void AssignID() { + this.id = editor.GetUniqueNodeID(); + } + + public virtual void OnPreGetPreviewData() { + // Override + } + + public virtual string GetPrepareUniformsAndFunctions(){ + return string.Empty; // Override + } + + + public virtual void Update() { + + // TODO: REALTIME + // + if( SF_Settings.RenderNodesInRealtime() ) { + if( UpdatesOverTime() || initialPreviewMode != InitialPreviewRenderMode.Off ) { + SetDirty( UpToDateState.OutdatedSoft ); + GenerateBaseData(); + } + } + // Override + } + + public void InitializeDefaultRect( Vector2 pos ) { + + + this.rect = new Rect( + pos.x - node_width / 2, + pos.y - node_height / 2, + node_width, + ( showLowerPropertyBox ? ( node_height ) : ( node_height + 20 ) ) ); // TODO: This seems a bit reversed... + rectInner = rect; + rectInner.x = 1; + rectInner.y = 15; + rectInner.width = node_width - 3; + rectInner.height = node_height - 16; + + lowerRect = rectInner; + lowerRect.y += rectInner.height; + lowerRect.height = 20; + + + } + + + public bool IsDescendantOf( SF_Node other ) { + foreach( SF_NodeConnector con in other.connectors ) { + if( con.conType != ConType.cOutput ) + continue; + if( !con.IsConnectedAndEnabled() ) + continue; + foreach( SF_NodeConnector oCon in con.outputCons ) { + if( oCon.node == this ) { + return true; + } else if( this.IsDescendantOf( oCon.node ) ) { + return true; + } + } + } + return false; + } + + + public bool IsChildOf( SF_Node other ) { + foreach( SF_NodeConnector con in other.connectors ) { + if( con.conType != ConType.cOutput ) + continue; + if( !con.IsConnectedAndEnabled() ) + continue; + foreach( SF_NodeConnector oCon in con.outputCons ) { + if( oCon.node == this ) + return true; + } + } + return false; + } + + + + + + + + + public void UndoableToggle(Rect r, ref bool boolVar, string label, string undoActionName, GUIStyle style){ + if(style == null) + style = EditorStyles.toggle; + bool newValue = GUI.Toggle(r,boolVar,label, style); + if(newValue != boolVar){ + UndoRecord((newValue ? "enable" : "disable") + " " + undoActionName); + boolVar = newValue; + } + } + + public Enum UndoableEnumPopup( Rect r, Enum enumValue, string undoPrefix ) { + Enum nextEnum = EditorGUI.EnumPopup( r, enumValue ); + if( nextEnum.ToString() != enumValue.ToString() ) { + string undoName = undoPrefix + " to " + nextEnum; + UndoRecord( undoName ); + enumValue = nextEnum; + } + return enumValue; + } + + public int UndoableEnumPopupNamed(Rect r, int enumValue, string[] names, string undoPrefix){ + int nextEnum = EditorGUI.Popup( r, enumValue, names ); + if(nextEnum != enumValue){ + string undoName = undoPrefix + " to " + nextEnum; + UndoRecord(undoName); + return nextEnum; + } + return enumValue; + } + + public Enum UndoableLabeledEnumPopup(Rect r, string label, Enum enumValue, string undoPrefix){ + Enum nextEnum = SF_GUI.LabeledEnumField( r, label, enumValue, EditorStyles.miniLabel ); + if(nextEnum.ToString() != enumValue.ToString()){ + UndoRecord(undoPrefix + " to " + nextEnum); + Undo.IncrementCurrentGroup(); + enumValue = nextEnum; + } + return enumValue; + } + + + public int UndoablePopup(Rect r, int selected, string[] displayedOptions, string undoPrefix, GUIStyle style = null){ + if(style == null) + style = EditorStyles.popup; + int pickedID = EditorGUI.Popup( r, selected, displayedOptions,style); + if(pickedID != selected){ + UndoRecord(undoPrefix + " to " + displayedOptions[pickedID]); + selected = pickedID; + } + return selected; + } + + //EditorGUI.FloatField( r, texture.dataUniform[0], SF_Styles.LargeTextField ); + + public float UndoableFloatField(Rect r, float value, string undoInfix, GUIStyle style = null){ + if(style == null) + style = EditorStyles.textField; + float newValue = EditorGUI.FloatField( r, value, style ); + if(newValue != value){ + if(IsProperty() || IsGlobalProperty()){ + UndoRecord("set " + undoInfix + " of " + (IsGlobalProperty() ? property.nameInternal : property.nameDisplay)); + } else { + UndoRecord("set " + undoInfix + " of " + nodeName + " node"); + } + return newValue; + } + return value; + } + + // (r, ref texture.dataUniform.r, "value", SF_Styles.LargeTextField); + + public void UndoableEnterableFloatField(Rect r, ref float value, string undoInfix, GUIStyle style){ + if(style == null) + style = EditorStyles.textField; + float previousValue = value; + SF_GUI.EnterableFloatField(this, r, ref value, style ); + float newValue = value; + if(previousValue != value){ + value = previousValue; + + UndoRecord("set " + undoInfix + " of " + nodeName + " node"); + value = newValue; + } + } + + public float UndoableHorizontalSlider(Rect r, float value, float min, float max, string undoInfix){ + float newValue = GUI.HorizontalSlider( r, value, min, max ); + if(newValue != value){ + if(IsProperty() || IsGlobalProperty()){ + UndoRecord("set " + undoInfix + " of " + (IsGlobalProperty() ? property.nameInternal : property.nameDisplay)); + } else { + UndoRecord("set " + undoInfix + " of " + nodeName + " node"); + } + return newValue; + } + return value; + } + + // code = GUI.TextArea(txtRect,code,SF_Styles.CodeTextArea); + public string UndoableTextArea(Rect r, string value, string undoInfix, GUIStyle style){ + string newValue = EditorGUI.TextArea( r, value, style ); + if(newValue != value){ + if(this is SFN_Code){ + UndoRecord("edit " + undoInfix + " of " + (this as SFN_Code).functionName); + } else if(IsProperty() || IsGlobalProperty()){ + UndoRecord("edit " + undoInfix + " of " + (IsGlobalProperty() ? property.nameInternal : property.nameDisplay)); + } else { + UndoRecord("edit " + undoInfix + " of " + nodeName + " node"); + } + + return newValue; + } + return value; + } + + public string UndoableTextField(Rect r, string value, string undoInfix, GUIStyle style, bool readPropertyName = true){ + if(style == null) + style = EditorStyles.textField; + string newValue = EditorGUI.TextField( r, value, style ); + if(newValue != value){ + if(this is SFN_Code && readPropertyName){ + UndoRecord("edit " + undoInfix + " of " + (this as SFN_Code).functionName); + } else if( ( IsProperty() || IsGlobalProperty() ) && readPropertyName){ + UndoRecord("edit " + undoInfix + " of " + (IsGlobalProperty() ? property.nameInternal : property.nameDisplay)); + } else { + UndoRecord("edit " + undoInfix + " of " + nodeName + " node"); + } + + return newValue; + } + return value; + } + + public Color UndoableColorField(Rect r, Color color, string undoMsg){ + Color newColor = EditorGUI.ColorField( r, color ); + if(newColor != color){ + UndoRecord(undoMsg); + return newColor; + } + return color; + } + + + + // UndoableTextField + + + + /* + public int UndoableEnterableTextField(Rect r, ref string str, ){ + + SF_GUI.EnterableTextField(this, r, + + }*/ + + + + + + + + + + + + + + + + // public virtual void OnConnectedNode(){ + // Debug.Log("OnConnectedNode " + name); + // } + + public void MakeChildrenOutdated( UpToDateState state ) { + foreach( SF_NodeConnector mCon in connectors ) { + if( mCon == null ) + continue; + if( mCon.conType == ConType.cOutput ) { + for( int i = 0; i < mCon.outputCons.Count; i++ ) { + SF_NodeConnector mConOut = mCon.outputCons[i]; + mConOut.node.dirtyState = state; + //mConOut.node.MakeChildrenOutdated( state ); // Recursive is super expensive + } + } + } + } + + public virtual void OnUpdateNode( NodeUpdateType updType = NodeUpdateType.Hard, bool cascade = true ) { + + //Debug.Log("Updating " + nodeName); + + + + if( conGroup != null ) + conGroup.Refresh(); + + if( !InputsConnected() ) { + //Debug.Log("Detected missing input on obj " + name); + texture.OnLostConnection(); + } + + // Update texture if it's uniform for things like Color/Value etc. + if( texture.uniform ) { + //Debug.Log("Blitting uniform " + texture.dataUniform); + PrepareRendering( SF_Blit.mat ); + texture.GenerateBaseData(); + } + + RefreshValue(); // Refresh this value + + if( IsProperty() ) + editor.shaderEvaluator.ApplyProperty(this); + + if( cascade ) + if( connectors != null && connectors.Length > 0 ) + foreach( SF_NodeConnector mCon in connectors ) { + if( mCon == null ) + continue; + if( mCon.conType == ConType.cOutput ) { + for (int i = 0; i < mCon.outputCons.Count; i++) { + SF_NodeConnector mConOut = mCon.outputCons [i]; + UpToDateState state = (updType == NodeUpdateType.Soft) ? UpToDateState.OutdatedSoft : UpToDateState.OutdatedHard; + mConOut.node.dirtyState = state; + mConOut.node.MakeChildrenOutdated( state ); + //mConOut.node.OnUpdateNode (updType); + // TODO Null ref + } + } + } + + UpdateDisplayVectorDataMask(); + + editor.OnShaderModified( NodeUpdateType.Soft ); + //if(!SF_Parser.quickLoad && !isGhost) + //Repaint(); + + } + + public void ChainAppendIfConnected(ref string evalStr, string op, params string[] cons ){ + foreach(string con in cons){ + if(GetInputIsConnected(con)){ + evalStr += op + GetConnectorByStringID(con).TryEvaluate(); + } + } + } + + + public void SetExtensionConnectorChain(params string[] cNames){ + + SF_NodeConnector con = GetConnectorByStringID(cNames[0]); + for(int i=1;i 1){ + if(c > cc-1){ + return 0f; + } + } + } + + + + //return GetInputData( id, x, y, c ); + return GetInputData( id ).dataUniform[c]; + } + + /* + public SF_NodePreview GetInputData( int id ) { + + if( connectors[id].inputCon == null ) { + Debug.LogWarning( "Attempt to find input node of connector " + id + " of " + this.nodeName ); + } + + return connectors[id].inputCon.node.texture; + }*/ + + public SF_NodePreview GetInputData( string id ) { + + SF_NodeConnector con = GetConnectorByStringID(id); + //SF_Node n; // TODO: What was this? Quite recent too. Define and undefine ghosts? + + if( con.inputCon == null ) { + + List tmpGhosts = new List(); + con.DefineGhostIfNeeded(ref tmpGhosts); + //n = tmpGhosts[0]; + tmpGhosts = null; + + Debug.LogWarning( "Attempt to find input node of connector " + id + " of " + this.nodeName ); + } + + //SF_NodePreview ret = con.inputCon.node.texture; + + + + + return con.inputCon.node.texture; + } + + /* + public SF_NodeConnection GetInputCon( int id ) { + if( connectors[id] == null ) { + Debug.LogError("Failed attempt to find connector [" + id + "] in " + this.nodeName); + return null; + } + if( connectors[id].inputCon == null ) { + Debug.LogError( "Failed attempt to find node of connector [" + id + "] on " + this.nodeName ); + return null; + } + return connectors[id].inputCon; + }*/ + + public int ReadComponentCountFromFirstOutput() { + if( connectors == null ) + return 4; + for( int i = 0; i < connectors.Length; i++ ) { + if( connectors[i].conType == ConType.cOutput ) { + return connectors[i].GetCompCount(); + } + } + Debug.LogWarning("No component count could be read from " + nodeName + " (" + variableName + ")"); + return 0; + } + + public SF_NodeConnector GetInputCon( string id ) { + SF_NodeConnector con = GetConnectorByStringID( id ); + + if( con == null ) { + Debug.LogError( "Failed attempt to find connector [" + id + "] in " + this.nodeName ); + return null; + } + if(con.inputCon == null) { + Debug.LogError( "Failed attempt to find input connector of [" + id + "] in " + this.nodeName ); + return null; + } + return con.inputCon; + } + + + public float BoundsTop(){ + + float top = rect.yMin; + + if(this.IsProperty()) + top -= 20; + if(HasComment()) + top -= 20; + + return top; + } + + public float BoundsBottom(){ + return rect.yMax; + } + + + public virtual int GetEvaluatedComponentCount() { + // Override + return 0; + } + + public bool CanEvaluate() { + //Debug.Log("Checking if can evaluate " + nodeName); + for( int i = 0; i < connectors.Length; i++ ) { + if( connectors[i].required ) + if( !connectors[i].IsConnected() ) + return false; + } + return true; + } + + + public void CheckForBrokenConnections() { + foreach( SF_NodeConnector con in connectors ) { + if( con.IsConnected() && con.conType == ConType.cInput ) { + if( con.inputCon.IsDeleted() ) + con.inputCon = null; + } + + } + } + + // public MaterialNode MakeDotProductNode(){ + // connectors = new MaterialNodeConnector[3]{ + // new MaterialNodeConnector(this,"A",ConType.cInput), + // new MaterialNodeConnector(this,"B",ConType.cInput), + // new MaterialNodeConnector(this,"Out",ConType.cOutput) + // }; + // return this; + // } + + + public void DrawConnections() { + foreach( SF_NodeConnector con in connectors ) + con.CheckConnection( editor ); + } + + public void Repaint() { + //SF_Editor.instance.Repaint(); + } + + public bool IsFocused() { + return rect.Contains( Event.current.mousePosition ); + } + + /* + public bool CheckIfDeleted() { + + if( Event.current.keyCode == KeyCode.Delete && Event.current.type == EventType.keyDown && selected ) { + Delete(true,"delete " + nodeName); + return true; + } + return false; + + }*/ + + public void PrepareWindowColor() { + + if(IsProperty()){ + if(property.global){ + GUI.color = colorGlobal; + } else { + GUI.color = colorExposed; // colorExposed + } + } else { + GUI.color = colorDefault; + } + } + + public void ResetWindowColor() { + GUI.color = colorDefault; + } + + + public void OnPress(){ + if( MouseOverNode( world: true ) && Event.current.isMouse ) { + editor.ResetRunningOutdatedTimer(); + if( !selected && !SF_GUI.MultiSelectModifierHeld() ) + editor.nodeView.selection.DeselectAll(registerUndo:true); + + StartDragging(); + + //if(!selected) + Event.current.Use(); + //Select(); + } + + } + + public void OnRelease() { + + + if(isDragging){ + isDragging = false; + Vector2 tmp = new Vector2(rect.x, rect.y); + rect.x = dragStart.x; + rect.y = dragStart.y; + UndoRecord("move " + nodeName + " node"); + rect.x = tmp.x; + rect.y = tmp.y; + + } + //isDragging = false; + + if( SF_NodeConnector.pendingConnectionSource != null ) + return; + + bool hover = MouseOverNode( world: true ); + bool stationary = dragDelta.sqrMagnitude < SF_Tools.stationaryCursorRadius; + bool placingNew = editor.nodeBrowser.IsPlacing(); + + if( hover && stationary && !placingNew ) { // If you released on the node without dragging + if( SF_GUI.MultiSelectModifierHeld() ) { + if( selected ) + Deselect(registerUndo:true); + else + Select(registerUndo:true); + Event.current.Use(); + } else if(!selected) { + editor.nodeView.selection.DeselectAll(registerUndo:true); + Select(registerUndo:true); + Event.current.Use(); + } + } + + } + + + public bool isDragging = false; + bool isEditingNodeTextField = false; + public static bool isEditingAnyNodeTextField = false; + + public void ContextClick( object o ) { + string picked = o as string; + switch(picked){ + case "prop_global_toggle": + property.ToggleGlobal(); + editor.ShaderOutdated = UpToDateState.OutdatedHard; + break; + case "doc_open": + SF_Web.OpenDocumentationForNode(this); + break; + case "cmt_edit": + editor.Defocus(deselectNodes:true); + GUI.FocusControl("node_comment_" + id); + isEditingNodeTextField = true; + SF_Node.isEditingAnyNodeTextField = true; + editor.ShaderOutdated = UpToDateState.OutdatedSoft; + break; + case "taghide": + property.tagHideInInspector = !property.tagHideInInspector; + editor.ShaderOutdated = UpToDateState.OutdatedHard; + break; + case "tagnsco": + property.tagNoScaleOffset = !property.tagNoScaleOffset; + editor.ShaderOutdated = UpToDateState.OutdatedHard; + break; + case "tagnrm": + property.tagNormal = !property.tagNormal; + editor.ShaderOutdated = UpToDateState.OutdatedHard; + break; + case "taghdr": + property.tagHDR = !property.tagHDR; + editor.ShaderOutdated = UpToDateState.OutdatedHard; + break; + case "tagprd": + property.tagPerRendererData = !property.tagPerRendererData; + editor.ShaderOutdated = UpToDateState.OutdatedHard; + break; + } + + } + + + public bool HasComment(){ + return !string.IsNullOrEmpty(comment); + } + + public bool UnavailableInThisRenderPath(){ + return editor.ps.catLighting.renderPath == SFPSC_Lighting.RenderPath.Deferred && !availableInDeferredPrePass; + } + + float commentYposTarget; + float commentYposCurrent; + + + public void DrawWindow() { + + + + + + + //Vector2 prev = new Vector2( rect.x, rect.y ); + //int prevCont = GUIUtility.hotControl; + + if(Event.current.type == EventType.Repaint){ + commentYposCurrent = Mathf.Lerp(commentYposCurrent, commentYposTarget, 0.4f); + } + + + if(UnavailableInThisRenderPath()) + GUI.color = new Color(1f,1f,1f,0.5f); + GUI.Box( rect, nodeName, discreteTitle ? SF_Styles.NodeStyleDiscrete : SF_Styles.NodeStyle ); + + + // Draw lock + if(UnavailableInThisRenderPath()){ + SF_GUI.DrawLock(rect.PadTop(3), "This node is only available in forward rendering"); + } + + + if(!UnavailableInThisRenderPath()) + GUI.color = Color.white; + + + + + ResetWindowColor(); + //rect = GUI.Window( id, rect, NeatWindow, nodeName ); + NeatWindow(); + + // If you didn't interact with anything inside... + if( SF_GUI.PressedLMB() ) { + OnPress(); + } else if( SF_GUI.ReleasedRawLMB() ) { + OnRelease(); + } else if( Event.current.type == EventType.ContextClick ) { + //Vector2 mousePos = Event.current.mousePosition; + if( MouseOverNode( world: true ) ) { + // Now create the menu, add items and show it + GenericMenu menu = new GenericMenu(); + editor.ResetRunningOutdatedTimer(); + if(IsProperty() && property.CanToggleGlobal()){ + if(property.global){ + menu.AddItem( new GUIContent("Make local"), false, ContextClick, "prop_global_toggle" ); + } else { + menu.AddItem( new GUIContent("Make global"), false, ContextClick, "prop_global_toggle" ); + } + } + menu.AddItem( new GUIContent("Edit Comment"), false, ContextClick, "cmt_edit" ); + menu.AddItem( new GUIContent("What does " + nodeName + " do?"), false, ContextClick, "doc_open" ); + if( IsProperty() && property.global == false ) { + menu.AddSeparator( "" ); + menu.AddItem( new GUIContent( "[Hide in inspector]" ), property.tagHideInInspector, ContextClick, "taghide" ); + if( property is SFP_Tex2d ) { + menu.AddItem( new GUIContent( "[No scale and offset]" ), property.tagNoScaleOffset, ContextClick, "tagnsco" ); + menu.AddItem( new GUIContent( "[Accept normals only]" ), property.tagNormal, ContextClick, "tagnrm" ); + menu.AddItem( new GUIContent( "[Accept HDR only]" ), property.tagHDR, ContextClick, "taghdr" ); + menu.AddItem( new GUIContent( "[Per-renderer data]" ), property.tagPerRendererData, ContextClick, "tagprd" ); + } else if( property is SFP_Color ) { + menu.AddItem( new GUIContent( "[HDR color picker]" ), property.tagHDR, ContextClick, "taghdr" ); + } + // taghide tagnsco tagnrm taghdr tagprd + } + + + Matrix4x4 prevMatrix = GUI.matrix; + GUI.matrix = Matrix4x4.identity; // Odd hack, but, works + menu.ShowAsContext(); + GUI.matrix = prevMatrix; + Event.current.Use(); + } + } + + + + + if( isDragging && Event.current.isMouse) + OnDraggedWindow( Event.current.delta ); + + + + string focusName = "namelabel" + this.id; + if( Event.current.type == EventType.KeyDown && ( Event.current.keyCode == KeyCode.Return || Event.current.keyCode == KeyCode.KeypadEnter ) && GUI.GetNameOfFocusedControl() == focusName ) { + editor.Defocus(); + } + + bool codeNode = this is SFN_Code; + + bool mouseOver = rect.Contains( Event.current.mousePosition ); + + if( IsProperty() || codeNode ) { + PrepareWindowColor(); + Rect nameRect = new Rect( rect ); + nameRect.height = 20; + nameRect.y -= nameRect.height; + nameRect.xMax -= 1; // Due to reasons + //GUI.color = SF_Styles.nodeNameLabelBackgroundColor; + GUI.Box( nameRect, "", EditorStyles.textField ); + GUI.color = EditorGUIUtility.isProSkin ? Color.white : Color.black; + string oldName = codeNode ? (this as SFN_Code).functionName : IsGlobalProperty() ? property.nameInternal : property.nameDisplay; + + GUI.SetNextControlName(focusName); + //Debug.Log(); + + string newName; + //if(codeNode) + // newName = UndoableTextField( nameRect, oldName, SF_Styles.GetNodeNameLabelText() ); // newName = GUI.TextField( nameRect, oldName, SF_Styles.GetNodeNameLabelText() ); + //else if(IsGlobalProperty()) + // newName = GUI.TextField( nameRect, oldName, SF_Styles.GetNodeNameLabelText() ); + //else + + + string labelType = codeNode ? "function name" : !IsGlobalProperty() ? "property name" : "internal name"; + newName = UndoableTextField( nameRect, oldName, labelType, SF_Styles.GetNodeNameLabelText(), readPropertyName:false ); + + if(codeNode) + newName = SF_ShaderProperty.FormatInternalName(newName); + else + SF_Tools.FormatSerializable( ref newName ); + + + + + if( oldName != newName ){ + if(codeNode) + (this as SFN_Code).functionName = newName.Replace(" ",string.Empty); + else if(IsGlobalProperty()) + property.SetBothNameAndInternal( newName ); + else + property.SetName( newName ); + } + + bool focusedField = GUI.GetNameOfFocusedControl() == focusName; + + mouseOver = nameRect.Contains( Event.current.mousePosition ) || rect.Contains( Event.current.mousePosition ); + + if( focusedField ) + editor.nodeView.selection.DeselectAll(registerUndo:true); + + if( selected || focusedField || mouseOver && !editor.screenshotInProgress ) { + GUI.color = new Color(1f,1f,1f,0.6f); + nameRect.x += nameRect.width; + if(!IsGlobalProperty() && !codeNode){ + GUI.Label( nameRect, property.nameInternal, EditorStyles.boldLabel ); + } + nameRect.y -= 12; + + // Right: + if(!IsGlobalProperty() && !codeNode){ // Global ones *only* have internal names, display as main instead + GUI.color = new Color( 1f, 1f, 1f, 0.3f ); + GUI.Label( nameRect, "Internal name:", EditorStyles.miniLabel); + } + + + // Upper: + nameRect = new Rect( rect ); + nameRect.height = 20; + nameRect.y -= 33; + GUI.color = new Color( 1f, 1f, 1f, 0.6f ); + GUI.Label( nameRect, codeNode ? "Function name:" : !IsGlobalProperty() ? "Property label:" : "Internal name:", EditorStyles.miniLabel ); + + + GUI.color = Color.white; + } + ResetWindowColor(); + + } + + + Rect cr = rect; + if(HasComment() || isEditingNodeTextField){ + GUI.color = Color.white; + + cr.height = SF_Styles.GetNodeCommentLabelTextField().fontSize + 4; + cr.width = 2048; + cr.y -= cr.height + 2; + + + commentYposTarget = cr.y; + + //commentYposCurrent = + + if( IsProperty() || this is SFN_Code ){ + commentYposTarget -= 19; + if( mouseOver || selected ){ + commentYposTarget -= 8; + } + } + + cr.y = Mathf.Round(commentYposCurrent); + + if(isEditingNodeTextField){ + + + bool clicked = Event.current.rawType == EventType.MouseDown && Event.current.button == 0; + bool clickedOutside = clicked && !cr.Contains(Event.current.mousePosition); + bool pressedReturn = Event.current.rawType == EventType.KeyDown && Event.current.keyCode == KeyCode.Return; + + bool defocus = pressedReturn || clickedOutside; + + if( defocus ){ + isEditingNodeTextField = false; + SF_Node.isEditingAnyNodeTextField = false; + editor.Defocus(); + } + string fieldStr = "node_comment_" + id; + GUI.SetNextControlName(fieldStr); + Rect tmp = cr; + tmp.width = 256; + //comment = GUI.TextField(tmp, comment, SF_Styles.GetNodeCommentLabelTextField()); + comment = UndoableTextField(tmp, comment, "comment", SF_Styles.GetNodeCommentLabelTextField()); + + SF_Tools.FormatSerializableComment(ref comment); + + + if(!defocus){ + GUI.FocusControl(fieldStr); + } + + } else { + GUI.Label(cr, "// " + comment, SF_Styles.GetNodeCommentLabelText()); + } + + + + } + + + // Tags + if(IsProperty() && !property.global){ + + + cr.y = BoundsTop() - 18; + if( mouseOver || selected ) { + cr.y -= 8; + } + cr.height = 15; + Color c = colorExposed; + c.a = 0.6f; + GUI.color = c; + + + TagLabel( ref cr, "Hidden", property.tagHideInInspector ); + TagLabel( ref cr, "No scale/offset", property.tagNoScaleOffset ); + TagLabel( ref cr, "Normal", property.tagNormal ); + TagLabel( ref cr, "HDR", property.tagHDR ); + TagLabel( ref cr, "Per-renderer", property.tagPerRendererData ); + + GUI.color = Color.white; + + } + + + + + + + + + Rect ur = rect; + + ur = ur.MovedDown(); + + + // See how tall/which ones we should use on this node + bool showPrecision = ((ShouldDefineVariable() || IsProperty()) && isFloatPrecisionBasedVariable) || canAlwaysSetPrecision; + bool showVarname = !IsGlobalProperty() && (ShouldDefineVariable() || IsProperty()) && !lockedVariableName ; + bool optionalVarname = IsProperty(); + bool showPanel = SF_Settings.showVariableSettings && (showPrecision || showVarname); + + + + + ur.height = (showPrecision && showVarname) ? 46 : 26; + ur.y += 1; + if(ur.width != NODE_WIDTH){ + ur.x += (rect.width - NODE_WIDTH)/2f; + ur.width = NODE_WIDTH; + } + + + + + // #precision #variablename + + if( showPanel ){ + + // Background + PrepareWindowColor(); + GUI.Label(ur, string.Empty, SF_Styles.NodeStyle); + GUI.color = Color.white; + + + Rect varNameRect = ur.Pad(4); + Rect precisionRect = ur.Pad(4); + + if(showPrecision){ + + if(showVarname){ + Rect[] split = ur.SplitVertical(0.5f, padding:4); + precisionRect = split[0]; + varNameRect = split[1]; + } + + precision = (FloatPrecision)UndoablePopup(precisionRect,(int)precision,precisionLabels,"variable precision",SF_Styles.BoldEnumField); + + //GUI.SetNextControlName(VarPrecisionControl()); + //string[] labels = split[0].Contains(Event.current.mousePosition) ? precisionLabels : precisionLabelsSimple; + + } + + + + + if( showVarname ){ + + if( optionalVarname ){ + Rect[] split = varNameRect.SplitFromLeft((int)varNameRect.height); + varNameRect = split[1]; + UndoableToggle(split[0],ref property.overrideInternalName,string.Empty,"override internal name", EditorStyles.toggle); + GUI.enabled = property.overrideInternalName; + } + + GUI.SetNextControlName(VarNameControl()); + variableName = UndoableTextField(varNameRect, (IsProperty() && !property.overrideInternalName) ? property.nameInternal : variableName, (IsProperty() ? "variable" : "internal") + " name", EditorStyles.textField, false); + GUI.enabled = true; + + } + + + + + } + + + //GUI.Label( nameRect, "Test", EditorStyles.toolbarTextField ); + + } + + + void TagLabel( ref Rect r, string tag, bool tagOn ) { + if( tagOn ) { + GUI.Label( r, "[" + tag + "]", EditorStyles.miniLabel ); + r = r.MovedUp(); + } + } + + +// public bool ShowPrecisionEditField(){ +// +// } +// +// public bool ShowVarnameEditField(){ +// +// } +// +// +// public int GetHeightOfLowerPanel(){ +// +// } + + + public virtual bool CanCustomizeVariable(){ + return ( ShouldDefineVariable() || IsProperty() ) && !lockedVariableName; + } + + public string VarNameControl(){ + return "ctrl_" + id + "_varname"; + } + public string VarPrecisionControl(){ + return "ctrl_" + id + "_precision"; + } + + + public void UpdateNeighboringConnectorLines(){ + foreach(SF_NodeConnector con in connectors){ + if(!con.IsConnected()) + continue; + if(con.conType == ConType.cOutput){ + foreach(SF_NodeConnector conOut in con.outputCons){ + conOut.conLine.ReconstructShapes(); + } + } else if(con.conType == ConType.cInput){ + con.conLine.ReconstructShapes(); + } + } + } + + + public void StartDragging() { + isDragging = true; + dragStart = new Vector2( rect.x, rect.y ); + dragDelta = Vector2.zero; + } + + + public static int snapThreshold = 10; + public static int snapDistance = 256; + public static Color snapColor = new Color(1f,1f,1f,0.5f); + public Vector2 dragStart; + public Vector2 dragDelta; + + public void OnDraggedWindow( Vector2 delta ) { + + + + editor.ResetRunningOutdatedTimer(); + + //UndoRecord("move " + nodeName + " node"); + + dragDelta += delta; + Vector2 finalDelta = new Vector2( rect.x, rect.y ); + rect.x = dragStart.x + dragDelta.x; + rect.y = dragStart.y + dragDelta.y; + Event.current.Use(); + + + UpdateNeighboringConnectorLines(); + + + + if(!SF_Settings.hierarchalNodeMove) // TODO: Snap toggle + make it work properly with hierarchal on + foreach(SF_Node n in editor.nodes){ + if( n == this ) + continue; + if( SF_Tools.DistChebyshev( rect.center, n.rect.center ) > snapDistance ) + continue; + if( n.selected ) // Don't snap to selected nodes + continue; + if( Mathf.Abs( n.rect.xMax - rect.xMax ) < snapThreshold ) { // RIGHT SIDE SNAP + delta.x -= rect.xMax - n.rect.xMax; + rect.x = n.rect.xMax - rect.width; + } else if( Mathf.Abs( n.rect.x - rect.x ) < snapThreshold ) { // LEFT SIDE SNAP + delta.x -= rect.x - n.rect.x; + rect.x = n.rect.x; + } else if( Mathf.Abs( n.rect.y - rect.y ) < snapThreshold ) { // TOP SIDE SNAP + delta.y -= rect.y - n.rect.y; + rect.y = n.rect.y; + } else if( Mathf.Abs( n.rect.center.x - rect.center.x ) < snapThreshold ) { // CENTER HORIZONTAL SNAP + delta.x -= rect.center.x - n.rect.center.x; + Vector2 tmp = rect.center; + tmp.x = n.rect.center.x; + rect.center = tmp; + + //GUILines.DrawLine( rect.center, n.rect.center, snapColor, snapThreshold * 2, true ); + + } else if( Mathf.Abs( n.rect.center.y - rect.center.y ) < snapThreshold ) { // CENTER VERTICAL SNAP + delta.y -= rect.center.y - n.rect.center.y; + Vector2 tmp = rect.center; + tmp.y = n.rect.center.y; + rect.center = tmp; + + //GUILines.DrawLine( editor.nodeView.AddNodeWindowOffset( rect.center ), editor.nodeView.AddNodeWindowOffset( n.rect.center ), Color.white, snapThreshold * 2, true ); + + } + } + + finalDelta = new Vector2( rect.x, rect.y ) - finalDelta; + + editor.nodeView.selection.MoveSelection(finalDelta, ignore:this); + + bool moveAsHierarchy = SF_GUI.HoldingControl() ^ SF_Settings.hierarchalNodeMove; + if( delta != Vector2.zero && moveAsHierarchy && ( GetType() != typeof( SFN_Final ) ) ) { + MoveUnselectedChildren( delta ); + } + + } + + public void MoveUnselectedChildren( Vector2 delta ) { + // Find all child nodes + // TODO: On click or on connect, not every frame + List children = new List(); + children.AddRange( editor.nodeView.selection.Selection ); + children.Add( this ); + AppendUnselectedChildren( children ); + foreach( SF_Node n in editor.nodeView.selection.Selection ) { + n.AppendUnselectedChildren( children ); + } + foreach(SF_Node n in editor.nodeView.selection.Selection){ + children.Remove( n ); + } + children.Remove( this ); + + for( int i = 0; i < children.Count; i++ ) { + children[i].rect.x += delta.x; + children[i].rect.y += delta.y; + } + } + + public void AppendUnselectedChildren( List list ) { + + // Search all connected + for( int i = 0; i < connectors.Length; i++ ) { + if( connectors[i].conType == ConType.cOutput ) + continue; + if( connectors[i].IsConnected() && !list.Contains( connectors[i].inputCon.node ) ) { + //if( connectors[i].inputCon.node.ConnectedOutputCount() > 1 ) + // continue; // Only unique children + //if( OutputsToAnyOutside( list ) ) + // continue; // Only unique children + if( !connectors[i].inputCon.node.selected ) + list.Add( connectors[i].inputCon.node ); + connectors[i].inputCon.node.AppendUnselectedChildren( list ); + } + } + } + + + /* + public bool OutputsToAnyOutside( List list ) { + foreach( SF_NodeConnection nc in connectors ) { + if( nc.conType == ConType.cInput ) + continue; + foreach(SF_NodeConnection con in nc.outputCons){ + if( !list.Contains( con.inputCon.node ) ) + return true; + } + } + return false; + }*/ + + public int ConnectedOutputCount() { + int count = 0; + foreach( SF_NodeConnector nc in connectors ) { + if(nc.conType == ConType.cInput) + continue; + count += nc.outputCons.Count; + } + return count; + } + + public void UndoRecordSelectionState(string undoMsg){ + UndoRecord(undoMsg, UpToDateState.OutdatedSoft); + Undo.RecordObject(editor.nodeView.selection, undoMsg); + } + + public void Select(bool registerUndo) { + if( !editor.nodeView.selection.Selection.Contains( this ) ) { + if(registerUndo) + UndoRecordSelectionState("select"); + editor.nodeView.selection.Add( this ); + selected = true; + } + } + + public void Deselect(bool registerUndo, string undoMsg = null) { + if(!selected) + return; + if(undoMsg == null) + undoMsg = "deselect"; + if(registerUndo) + UndoRecordSelectionState(undoMsg); + editor.nodeView.selection.Remove( this ); + selected = false; + } + + public void DrawHighlight() { + + //if( Event.current.type == EventType.repaint ) + if( selected ) { + + Rect r = new Rect( rect ); + r.xMax -= 1; + if( IsProperty() ) + r.yMin -= 20; + GUILines.Highlight( r, offset: 1, strength: 2 ); + } + } + + /* + public void OnSelectedWindow() { + Debug.Log("Beep!"); + }*/ + + + public void ProcessInput() { + /* + if( IsFocused() ) + Debug.Log( "Mouse over " + nodeName + " rawType = " + Event.current.rawType ); + if( Event.current.rawType == EventType.mouseDown && Event.current.button == 0 ) { + if( !selected ) { + Debug.Log("SELECTED"); + Debug.Log("Rect: " + rect + " mPos: " + Event.current.mousePosition); + editor.nodeView.selection.DeselectAll(); + Select(); + } + + }*/ + } + + + public virtual bool Draw() { + + + ProcessInput(); + + + DrawHighlight(); + + //if(status != null) + + if( SF_Debug.nodePreviews ) { + Rect tmp = rect; + tmp.y -= 20; + tmp.height = 20; + GUI.Label( tmp, "State: " + dirtyState ); + } + + + + PrepareWindowColor(); + + if( showLowerPropertyBox ) + if( showLowerPropertyBoxAlways || ( showLowerPropertyBox && CanEvaluate() && IsUniformOutput() ) ) { + rect.height = ( node_height + 20 ); + } else { + rect.height = node_height; + } + + + DrawWindow(); + + ResetWindowColor(); + + return true; + } + + + + public void DrawGrabHandle(Rect r) { + Rect texCoords = new Rect( r ); + texCoords.width /= 7; + texCoords.height /= 3; + texCoords.x = texCoords.y = 0; + GUI.DrawTextureWithTexCoords( r, SF_GUI.Handle_drag, texCoords, alphaBlend: true ); + } + + + + public virtual void NeatWindow( ) { + GUI.BeginGroup( rect ); + + if(UnavailableInThisRenderPath()) + GUI.color = new Color(1f,1f,1f,0.5f); + else + GUI.color = Color.white; + GUI.skin.box.clipping = TextClipping.Overflow; + + + if( showColor ) { + texture.Draw( rectInner, UnavailableInThisRenderPath() ); + GUI.color = Color.white; + + /* + if( SF_Debug.nodes ) { + Rect r = new Rect( 0, 16, 96, 20 ); + GUI.color = Color.white; + GUI.skin.box.normal.textColor = Color.white; + GUI.Box( r, "ID: " + id ); + r.y += r.height; + //GUI.Box( r, "Cmps: " + texture.CompCount ); + //r.y += r.height; + //GUI.Box( r, "Unif: " + texture.dataUniform ); + + }*/ + + + } + + if( showLowerPropertyBox ) { + GUI.color = Color.white; + DrawLowerPropertyBox(); + } + + //GUI.DragWindow(); + + + GUI.EndGroup( ); + + + //if(rect.center.x) + } + + + public Rect LocalRect() { + Rect r = new Rect( rect ); + r.x = 0; + r.y = 0; + return r; + } + + public bool MouseOverNode(bool world = false) { + + if(!editor.nodeView.MouseInsideNodeView(offset:true)) + return false; + + if( world ) { + return rect.Contains( Event.current.mousePosition ); + } + else + return LocalRect().Contains( Event.current.mousePosition ); + } + + public void ColorPickerCorner( Rect r ) { + //bool prevEnabledState = GUI.enabled; + //GUI.enabled = MouseOverNode(false); + + //try { + Rect pickRect = new Rect( r ); + pickRect.height = 15; + pickRect.width = 45; + pickRect.y -= pickRect.height + 1; + pickRect.x += 1; + Rect pickBorder = new Rect( pickRect ); + pickBorder.xMax -= 18; + //pickBorder.xMin -= 1; + //pickBorder.yMax += 1; + //pickBorder.yMin -= 1; + + float grayscale = ((Color)texture.dataUniform).grayscale; + Color borderColor = Color.white - new Color( grayscale, grayscale, grayscale ); + borderColor.a = GUI.enabled ? 1f : 0.25f; + GUI.color = borderColor; + GUI.DrawTexture( pickBorder, EditorGUIUtility.whiteTexture ); + GUI.color = Color.white; + + + + Color pickedColor = EditorGUI.ColorField( pickRect, texture.ConvertToDisplayColor( texture.dataUniform ) ); + SetColor( pickedColor, true ); + + } + + public void SetColor(Color c, bool registerUndo = false) { + if( (Vector4)c != texture.dataUniform ) { + Color newColor = texture.ConvertToDisplayColor( c ); + if(registerUndo){ + if(IsProperty()){ + UndoRecord("set color of " + property.nameDisplay); + } else { + UndoRecord("set color of " + nodeName); + } + + } + + texture.dataUniform = newColor; + if( IsProperty() ) { + if( property is SFP_Color ) { + ( this as SFN_Color ).OnUpdateValue(); + } + } + } + } + + + public string FloatArrToString( float[] arr ) { + string s = ""; + for( int i = 0; i < arr.Length; i++ ) + s += arr[i] + " "; + return s; + } + + public void UseLowerReadonlyValues( bool use ) { + UseLowerPropertyBox( use ); + showLowerReadonlyValues = use; + } + + public void UseLowerPropertyBox( bool use, bool always = false ) { + rect.height = ( use ? ( node_height + 20 ) : ( node_height ) ); + showLowerPropertyBox = use; + if( always ) + showLowerPropertyBoxAlways = use; + } + + public virtual void DrawLowerPropertyBox() { + if( showLowerReadonlyValues ) + DrawLowerReadonlyValues(); + } + + public void DrawLowerReadonlyValues() { + + if( !texture.uniform ) + return; + + if( !InputsConnected() || !texture.uniform ) { + GUI.enabled = false; + GUI.skin.label.alignment = TextAnchor.MiddleCenter; + GUI.Label( lowerRect, "" ); + GUI.skin.label.alignment = TextAnchor.MiddleLeft; + GUI.enabled = true; + return; + } + + Rect tmp = lowerRect; + tmp.width /= texture.CompCount; + GUI.enabled = false; + for( int i = 0; i < texture.CompCount; i++ ) { + GUI.Box( tmp, "" ); + EditorGUI.SelectableLabel( tmp, texture.dataUniform[i].ToString() ); + tmp.x += tmp.width; + } + GUI.enabled = true; + } + + public virtual void OnDelete() { + // Override + } + + [SerializeField] + public UpToDateState dirtyState = UpToDateState.UpToDate; + + public bool CheckIfDirty(){ + + if( dirtyState == UpToDateState.UpToDate ) + return false; + + + + foreach( SF_NodeConnector con in ConnectedInputs ) { + if( con.inputCon.node.dirtyState != UpToDateState.UpToDate ) { + return false; + } + } + + NodeUpdateType updType = NodeUpdateType.Hard; + if( dirtyState == UpToDateState.OutdatedHard ) + updType = NodeUpdateType.Hard; + if( dirtyState == UpToDateState.OutdatedSoft ) + updType = NodeUpdateType.Soft; + + OnUpdateNode(updType, true); + dirtyState = UpToDateState.UpToDate; + return true; + } + + public void SetDirty(UpToDateState dirtyState){ + this.dirtyState = dirtyState; + } + + + // CURRENTLY ONLY USED BY GHOST NODES + public void DeleteGhost(bool registerUndo = false, string undoMsg = "") { + + if( this is SFN_Final ) + return; + + //bool leadsToFinal = status.leadsToFinal; + + + if(SF_Debug.nodeActions) + Debug.Log("Deleting node " + nodeName); + + + + OnDelete(); + + + Deselect(registerUndo:false); + editor.nodes.Remove( this ); + if( editor.nodeView.treeStatus.propertyList.Contains( this ) ) + editor.nodeView.treeStatus.propertyList.Remove( this ); + + for( int i = 0; i < connectors.Length; i++ ) { + connectors[i].Disconnect(true, false); + //connectors[i] = null; // TODO + } + //connectors = null; // TODO + + + //SF_Editor.instance.CheckForBrokenConnections(); + //SF_Editor.instance.Repaint(); + + texture.DestroyTexture(); + + + + + DestroyImmediate( texture ); + ScriptableObject.DestroyImmediate( status ); + + ScriptableObject.DestroyImmediate(this); + + + + + editor.OnShaderModified(NodeUpdateType.Soft); + + //if(leadsToFinal){ + // editor.ShaderOutdated = UpToDateState.OutdatedHard; // TODO: Only if connected + //} + } + + + + // TODO: Channels etc + // Override if this node has unconnected, required inputs + public virtual string Evaluate( OutChannel channel = OutChannel.All ) { + return GetVariableName(); + } + + + // Used to see if it's an already defined variable or not + public string PreEvaluate() { + + if(varDefined) + return GetVariableName(); + + // If it shouldn't be defined, get raw value + if( !ShouldDefineVariable() ) { + return Evaluate(); + } else if( !varDefined && !neverDefineVariable ) { // If it's not defined yet, define it! Append a new row + DefineVariable(); + } + + return GetVariableName(); + + } + + public void DefineVariable() { + + //if(this is SFN_If) + //Debug.Log("Defining variable"); + + if( varDefined || neverDefineVariable ) { + //Debug.Log( "Already defined!" ); + return; + } + PreDefine(); + + if(onlyPreDefine){ + varDefined = true; + return; + } + + string s = GetVariableType() + " " + GetVariableName() + " = " + Evaluate() + ";"; + + if(HasComment()){ + s += " // " + comment; + } + + SF_Editor.instance.shaderEvaluator.App( s ); + varDefined = true; + } + + public virtual string[] TryGetMultiCompilePragmas( out int group ){ + group = 0; + return null; // Override + } + + + public void DefineGhostsIfNeeded(ref List ghosts) { + + //Debug.Log("Checking if ghosts should be defined on " + nodeName + "..."); + + + // Super duper ultra weird and shouldn't be here. Find real issue later // TODO + if(this == null) + return; + + // TODO: This will prevent multi-ghosting + /* + if( editor.shaderEvaluator.ghostNodes.Contains(this) ){ + if(SF_Debug.The(DebugType.GhostNodes)) + Debug.Log("Skipping ghost define for " + nodeName); + return; + } + + if(Connectors == null){ + Debug.Log("CHK. GHOST: [" + nodeName + "] Connector count = NULL"); + Debug.Log("WHAT? this = " + this); + if(this == null) + return; + } else + Debug.Log("CHK. GHOST: [" + nodeName + "] Connector count = " + Connectors.Length); + */ + + foreach(SF_NodeConnector con in connectors){ + if( con.conType == ConType.cOutput) { + //Debug.LogError("Ghost node defined on an output: "+nodeName+"[" + con.label + "]"); + continue; + } + con.DefineGhostIfNeeded( ref ghosts ); + } + } + + + public void PreDefine() { + if( varDefined || varPreDefined ) + return; + + string[] preDefs = GetPreDefineRows(); + if( preDefs != null ) { + foreach( string row in preDefs ) { + SF_Editor.instance.shaderEvaluator.App( row ); + } + } + varPreDefined = true; + } + + public virtual string[] GetPreDefineRows() { + return null; // Override this + } + + + + public bool ShouldDefineVariable() { + if(neverDefineVariable) + return false; + return ((UsedMultipleTimes() || alwaysDefineVariable) /*&& !varDefined*/); + } + + + public bool UsedMultipleTimes() { + return ( GetOutputCount() > 1 ); + } + + public int GetOutputCount() { + int n = 0; + foreach( SF_NodeConnector con in connectors ) { + if( con.conType == ConType.cInput ) + continue; + if( con.IsConnected() ) { + foreach(SF_NodeConnector inCon in con.outputCons){ + n += inCon.usageCount; // Make sure it counts some as multiple uses + } + } + } + return n; + } + + + public virtual string SerializeSpecialData() { + return null; // Override! + } + + public virtual void DeserializeSpecialData( string key, string value ) { + return; // Override! + } + + + // n:type:SFN_Multiply,id:8,x:33794,y:32535|1-9-0,2-7-0; + // Deserialize is in SF_Parser + public string Serialize(bool skipExternalLinks = false, bool useSuffixPrefix = false) { + + string s = ""; + if(useSuffixPrefix) + s = "n:"; + + + s += "type:" + this.GetType().ToString() + ","; + s += "id:" + this.id + ","; + s += "x:" + (int)rect.x + ","; + s += "y:" + (int)rect.y; + if(IsProperty()){ + s += ",ptovrint:" + property.overrideInternalName; + s += ",ptlb:" + property.nameDisplay; + s += ",ptin:" + property.nameInternal; + } + if(HasComment()) + s += ",cmnt:" + comment; + if(!string.IsNullOrEmpty(variableName) && !lockedVariableName){ + s += ",varname:" + variableName; + } + if(isFloatPrecisionBasedVariable) + s += ",prsc:" + (int)precision; + + + // + string specialData = SerializeSpecialData(); // <-- This is the unique data for each node + if( !string.IsNullOrEmpty( specialData ) ) { + s += "," + specialData; + } + // + + if( HasAnyInputConnected(skipExternalLinks) ) { + s += "|"; + int linkCount = 0; + int i = 0; + foreach( SF_NodeConnector con in connectors ) { // List connections, connected inputs only + if( con.conType == ConType.cOutput ) { i++; continue; } + if( !con.IsConnected() ) { i++; continue; } + + if(skipExternalLinks) + if(!con.inputCon.node.selected){ i++; continue; } + + + string link = con.GetIndex() + "-" + connectors[i].inputCon.node.id + "-" + connectors[i].inputCon.GetIndex(); + + if( linkCount > 0 ) + s += ","; + s += link; + + linkCount++; + i++; + } + } + + if(useSuffixPrefix) + s += ";"; + + return s; + } + + // This is the data per-node + // n:type:SFN_Final,id:6,x:33383,y:32591|0-8-0; + public static SF_Node Deserialize( string row, ref List linkList) { + + + bool isLinked = row.Contains( "|" ); + + string linkData = ""; + + // Grab connections, if any, and remove them from the main row + if( isLinked ) { + string[] split = row.Split( '|' ); + row = split[0]; + linkData = split[1]; + } + + + string[] nData = row.Split( ',' ); // Split the node data + SF_Node node = null; + + // This is the data in a single node, without link information + // type:SFN_Final,id:6,x:33383,y:32591 + foreach( string s in nData ) { + if(SF_Debug.deserialization) + Debug.Log("Deserializing node: " + s); + string[] split = s.Split( ':' ); + string dKey = split[0]; + string dValue = split[1]; + + switch( dKey ) { + case "type": + //Debug.Log( "Deserializing " + dValue ); + node = TryCreateNodeOfType( dValue ); + if( node == null ) { + if(SF_Debug.dynamicNodeLoad) + Debug.LogError( "Node not found, returning..." ); + return null; + } + break; + case "id": + node.id = int.Parse( dValue ); + break; + case "x": + node.rect.x = int.Parse( dValue ); + break; + case "y": + node.rect.y = int.Parse( dValue ); + break; + case "ptovrint": + node.property.overrideInternalName = bool.Parse(dValue); + break; + case "ptlb": + node.property.SetName( dValue ); + break; + case "ptin": + node.property.nameInternal = dValue; + break; + case "cmnt": + node.comment = dValue; + break; + case "varname": + node.variableName = dValue; + break; + case "prsc": + node.precision = (FloatPrecision)int.Parse(dValue); + break; + default: + //Debug.Log("Deserializing KeyValue: " +dKey + " v: " + dValue); + node.DeserializeSpecialData( dKey, dValue ); + break; + } + } + + // Add links to link data, if it's connected + if( isLinked ) { + string[] parsedLinks = linkData.Split( ',' ); + foreach( string s in parsedLinks ) + linkList.Add( new SF_Link( node.id, s ) ); + } + + // Update image if needed + node.GenerateBaseData(); + + + return node; + + } + + + private static SF_Node TryCreateNodeOfType( string nodeType ) { + SF_Node node = null; + + // Renamed nodes + if(nodeType == "ShaderForge.SFN_Binormal") + nodeType = "ShaderForge.SFN_Bitangent"; + + + if( nodeType == "ShaderForge.SFN_Final" ) { + node = SF_Editor.instance.CreateOutputNode(); + } else { + foreach( SF_EditorNodeData tmp in SF_Editor.instance.nodeTemplates ) { + if( tmp.type == nodeType ) { // 1 is the type + node = SF_Editor.instance.AddNode( tmp ); // Create the node + break; + } + } + } + if( node == null && SF_Debug.dynamicNodeLoad ) { + Debug.LogError( "Type [" + nodeType + "] not found!" ); + } + return node; + } + + + public void TrySerialize( XmlWriter xml, string key, object val ) { + if( val == null ) + return; + string str = val.ToString(); + if( string.IsNullOrEmpty( str ) ) + return; + xml.WriteElementString( key, str ); + } + + /* + public virtual string SerializeCustomData() { + return ""; // Override + }*/ + + public void DrawConnectors() { + + + + int yOut = 0; + int yIn = 0; + + int spacing = 20; + + if( connectors != null ) { + for( int i = 0; i < connectors.Length; i++ ) { + Vector2 pos = new Vector2( rect.width + rect.x, 16 + rect.y ); + + + if( connectors[i].conType == ConType.cInput ) { + pos.y += yIn * spacing; + yIn++; + } else { + pos.y += yOut * spacing; + yOut++; + } + + connectors[i].Draw( pos ); + + + } + } + + + + /*if( DEBUG ) { + Rect tmp = new Rect( rect ); + tmp.height = 20; + tmp.width = 250; + tmp.y -= tmp.height; + GUI.Box( tmp, depth.ToString(), EditorStyles.largeLabel ); + tmp.y -= tmp.height; + GUI.Box( tmp, "cCons: " + CalcConnectionCount().ToString(), EditorStyles.largeLabel ); + tmp.y -= tmp.height; + GUI.Box( tmp, "Conctrs: " + connectors.Length, EditorStyles.largeLabel ); + tmp.y -= tmp.height; + GUI.Box( tmp, "Editor: " + ( editor != null ), EditorStyles.largeLabel ); + tmp.y -= tmp.height; + GUI.Box( tmp, "Property: " + IsProperty(), EditorStyles.miniLabel ); + tmp.y -= tmp.height; + if( conGroup != null ) { + GUI.Box( tmp, "C Group out: " + conGroup.output, EditorStyles.miniLabel ); + tmp.y -= tmp.height; + GUI.Box( tmp, "C Group ins: " + conGroup.inputs.Length, EditorStyles.miniLabel ); + tmp.y -= tmp.height; + GUI.Box( tmp, "C Group hash: " + conGroup.GetHashCode(), EditorStyles.miniLabel ); + tmp.y -= tmp.height; + } else { + GUI.Box( tmp, "C Group is NULL", EditorStyles.miniLabel ); + tmp.y -= tmp.height; + } + GUI.Box( tmp, "Type: " + GetType().ToString(), EditorStyles.miniLabel ); + tmp.y -= tmp.height; + GUI.Box( tmp, "Hash: " + GetHashCode(), EditorStyles.miniLabel ); + tmp.y -= tmp.height; + if(texture != null) + GUI.Box( tmp, "Unif: " + texture.uniform ); + tmp.y -= tmp.height; + }*/ + + } + + public SF_NodeConnector GetConnectorByID(string s) { + int number; + if( int.TryParse( s, out number ) ) { + return connectors[number]; + } else { + return GetConnectorByStringID(s); + } + } + + public SF_NodeConnector GetConnectorByStringID(string s) { + foreach( SF_NodeConnector con in connectors ) { + if( !con.HasID() ) + continue; + if( s == con.strID ) + return con; + } + + Debug.LogError("Unsuccessfully tried to find connector by string ID [" + s + "] in node " + nodeName); + return null; + } + + public bool HasAnyInputConnected(bool skipExternalLinks = false) { + foreach( SF_NodeConnector con in connectors ) + if( con.IsConnected() && con.conType == ConType.cInput ){ + if(skipExternalLinks){ + if(con.inputCon.node.selected) + return true; + } else { + return true; + } + } + + return false; + } + + public int CalcConnectionCount() { + int i = 0; + foreach( SF_NodeConnector con in connectors ) { + if( con.IsConnected() ) + i++; + } + return i; + } + } + +} \ No newline at end of file diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SF_Node.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SF_Node.cs.meta new file mode 100644 index 00000000..50ae0b1a --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SF_Node.cs.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 5aedfe1c90dc2284b8220346c3a38f39 +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SF_Node_Arithmetic.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SF_Node_Arithmetic.cs new file mode 100644 index 00000000..47f95a70 --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SF_Node_Arithmetic.cs @@ -0,0 +1,60 @@ +using UnityEngine; +using UnityEditor; +using System.Collections; +using System; + +namespace ShaderForge { + [System.Serializable] + public class SF_Node_Arithmetic : SF_Node { + + public void PrepareArithmetic(int inputCount = 2, ValueType inputType = ValueType.VTvPending, ValueType outputType = ValueType.VTvPending) { + base.showColor = true; + UseLowerReadonlyValues( true ); + + + if( inputCount == 2 ) { + connectors = new SF_NodeConnector[]{ + SF_NodeConnector.Create( this, "OUT", "", ConType.cOutput, outputType, false ), + SF_NodeConnector.Create( this, "A", "A", ConType.cInput, inputType, false ).SetRequired( true ), + SF_NodeConnector.Create( this, "B", "B", ConType.cInput, inputType, false ).SetRequired( true )}; + base.conGroup = ScriptableObject.CreateInstance().Initialize( connectors[0], connectors[1], connectors[2] ); + } else if( inputCount == 1 ){ + connectors = new SF_NodeConnector[]{ + SF_NodeConnector.Create( this, "OUT", "", ConType.cOutput, outputType, false ), + SF_NodeConnector.Create( this, "IN", "", ConType.cInput, inputType, false ).SetRequired( true )}; + base.conGroup = ScriptableObject.CreateInstance().Initialize( connectors[0], connectors[1]); + } + + } + + public override int GetEvaluatedComponentCount() { + int max = 0; + foreach(SF_NodeConnector con in connectors){ + if( con.conType == ConType.cOutput || !con.IsConnected()) // Only connected ones, for now + continue; + //Debug.Log("GetEvaluatedComponentCount from node " + nodeName + " [" + con.label + "] cc = " + con.GetCompCount()); + max = Mathf.Max( max, con.GetCompCount() ); + } + return max; + } + + public override bool IsUniformOutput() { + + if(InputsConnected()){ + if( connectors.Length > 2) + return ( GetInputData( "A" ).uniform && GetInputData( "B" ).uniform ); + return ( GetInputData( "IN" ).uniform ); + } + return true; + } + + // New system + public override void RefreshValue() { + if( connectors.Length == 3 ) + RefreshValue( 1, 2 ); + else + RefreshValue( 1, 1 ); + } + + } +} \ No newline at end of file diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SF_Node_Arithmetic.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SF_Node_Arithmetic.cs.meta new file mode 100644 index 00000000..4e783c30 --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SF_Node_Arithmetic.cs.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 7ff67b8320fb71341a7e68fac5f5560c +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SF_Node_Resizeable.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SF_Node_Resizeable.cs new file mode 100644 index 00000000..143ee1a5 --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SF_Node_Resizeable.cs @@ -0,0 +1,263 @@ +using UnityEngine; +using UnityEditor; +using System.Collections; +using System.Collections.Generic; +using System.Xml; + + +namespace ShaderForge { + + [System.Serializable] + public class SF_Node_Resizeable : SF_Node { + + + public int minWidth = NODE_WIDTH; + public int minHeight = NODE_HEIGHT; + + /* + public void Deselect() { + editor.nodeView.selection.Remove( this ); + selected = false; + } + + public void DrawHighlight() { + + //if( Event.current.type == EventType.repaint ) + if( selected ) { + + Rect r = new Rect( rect ); + r.xMax -= 1; + if( IsProperty() ) + r.yMin -= 20; + GUILines.Highlight( r, offset: 1, strength: 2 ); + } + }*/ + + + + public override bool Draw() { + + + ProcessInput(); + + + DrawHighlight(); + + + + + PrepareWindowColor(); + + if( showLowerPropertyBox ) + if( showLowerPropertyBoxAlways || ( showLowerPropertyBox && CanEvaluate() && IsUniformOutput() ) ) { + rect.height = ( node_height + 20 ); + } else { + rect.height = node_height; + } + + + DrawWindow(); + + ResetWindowColor(); + + return true; + } + + + bool resizing = false; + int xDrag = 0; + int yDrag = 0; + + public override void NeatWindow( ) { + GUI.BeginGroup( rect ); + GUI.color = Color.white; + GUI.skin.box.clipping = TextClipping.Overflow; + + + + + + // Resize handle + int size = 10; + + + + + Rect topLeft = LocalRect().GetBorder(RectBorder.TopLeft,size); + //Rect lowerRight = LocalRect().GetBorder(RectBorder.BottomRight,size); + Rect topRight = LocalRect().GetBorder(RectBorder.TopRight,size); + + Rect left = LocalRect().GetBorder(RectBorder.Left,size); + //Rect lowerRight = LocalRect().GetBorder(RectBorder.Center,size); + Rect right = LocalRect().GetBorder(RectBorder.Right,size); + + + Rect lowerLeft = LocalRect().GetBorder(RectBorder.BottomLeft,size); //new Rect(rect.width - size, rect.height-size,size,size); + Rect lower = LocalRect().GetBorder(RectBorder.Bottom,size); + Rect lowerRight = LocalRect().GetBorder(RectBorder.BottomRight,size); + + + /* + if(!resizing) + SF_GUI.AssignCursor(lowerRight,MouseCursor.ResizeUpLeft); + else + SF_GUI.AssignCursor(new Rect(0,0,Screen.width,Screen.height),MouseCursor.ResizeUpLeft);*/ + + + + SF_GUI.DrawTextureTiled(LocalRect().GetBorder(RectBorder.TopLeft ,size, showResizeCursor:true), SF_GUI.Handle_drag, local:true ); + //SF_GUI.DrawTextureTiled(LocalRect().GetBorder(RectBorder.Top ,size, showResizeCursor:true), SF_GUI.Handle_drag, local:true ); + SF_GUI.DrawTextureTiled(LocalRect().GetBorder(RectBorder.TopRight ,size, showResizeCursor:true), SF_GUI.Handle_drag, local:true ); + SF_GUI.DrawTextureTiled(LocalRect().GetBorder(RectBorder.Left ,size, showResizeCursor:true), SF_GUI.Handle_drag, local:true ); + SF_GUI.DrawTextureTiled(LocalRect().GetBorder(RectBorder.Right ,size, showResizeCursor:true), SF_GUI.Handle_drag, local:true ); + SF_GUI.DrawTextureTiled(LocalRect().GetBorder(RectBorder.BottomLeft ,size, showResizeCursor:true), SF_GUI.Handle_drag, local:true ); + SF_GUI.DrawTextureTiled(LocalRect().GetBorder(RectBorder.Bottom ,size, showResizeCursor:true), SF_GUI.Handle_drag, local:true ); + SF_GUI.DrawTextureTiled(LocalRect().GetBorder(RectBorder.BottomRight ,size, showResizeCursor:true), SF_GUI.Handle_drag, local:true ); + + + // -1 = left / top + // 0 = static + // 1 = right / bottom + + + + bool clicked = Event.current.type == EventType.MouseDown && Event.current.button == 0; + + + + + if(clicked){ + + xDrag = 0; + yDrag = 0; + Vector3 mPos = Event.current.mousePosition; + /* + bool[,] dragGrid = new bool[3,3]{ + {topLeft.Contains(mPos), false, topRight.Contains(mPos)}, + {left.Contains(mPos), false, right.Contains(mPos)}, + {lowerLeft.Contains(mPos), lower.Contains(mPos), lowerRight.Contains(mPos)} + };*/ + + bool[,] dragGrid = new bool[3,3]{ + {topLeft.Contains(mPos),left.Contains(mPos),lowerLeft.Contains(mPos)}, + {false,false,lower.Contains(mPos)}, + {topRight.Contains(mPos),right.Contains(mPos),lowerRight.Contains(mPos)} + }; + + + + bool leftSide = dragGrid[0,0] || dragGrid[0,1] || dragGrid[0,2]; + bool rightSide = dragGrid[2,0] || dragGrid[2,1] || dragGrid[2,2]; + bool topSide = dragGrid[0,0] || dragGrid[1,0] || dragGrid[2,0]; + bool bottomSide = dragGrid[0,2] || dragGrid[1,2] || dragGrid[2,2]; + + + if(leftSide) + xDrag = -1; + else if(rightSide) + xDrag = 1; + + if(topSide) + yDrag = -1; + else if(bottomSide) + yDrag = 1; + + + bool contained = xDrag != 0 || yDrag != 0; + + + if( contained ){ + resizing = true; + Event.current.Use(); + } + + } + + + + + if(resizing && Event.current.type == EventType.MouseDrag){ + + if(Event.current.delta.sqrMagnitude > 0){ + UndoRecord("resize node"); + } + + if(xDrag == 1) + rect.width += Event.current.delta.x; + else if(xDrag == -1) + rect.xMin += Event.current.delta.x; + + if(yDrag == 1) + rect.height += Event.current.delta.y; + if(yDrag == -1) + rect.yMin += Event.current.delta.y; + + //Debug.Log("RESIZING X " + xDrag + " Y " + yDrag); + + ClampSize(); + + Event.current.Use(); + } + + if(resizing && SF_GUI.ReleasedRawLMB()){ + resizing = false; + xDrag = 0; + yDrag = 0; + if(base.isDragging) + base.OnRelease(); + Event.current.Use(); + } + + Rect insideHandleRect = LocalRect().PadLeft(size).PadRight(size).PadBottom(size).PadTop(Mathf.Max(15,size)); + DrawInner(insideHandleRect); + + /* + if( showColor ) { + + texture.Draw( rectInner ); + + if( SF_Debug.nodes ) { + Rect r = new Rect( 0, 16, 96, 20 ); + GUI.color = Color.white; + GUI.skin.box.normal.textColor = Color.white; + GUI.Box( r, "ID: " + id ); + r.y += r.height; + //GUI.Box( r, "Cmps: " + texture.CompCount ); + //r.y += r.height; + //GUI.Box( r, "Unif: " + texture.dataUniform ); + + } + + + }*/ + + if( showLowerPropertyBox ) { + GUI.color = Color.white; + DrawLowerPropertyBox(); + } + + //GUI.DragWindow(); + + + GUI.EndGroup( ); + + + //if(rect.center.x) + } + + + public void ClampSize(){ + rect = rect.ClampMinSize(minWidth, minHeight); + } + + + public virtual void DrawInner(Rect r){ + // Override + } + + + + + } + +} \ No newline at end of file diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SF_Node_Resizeable.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SF_Node_Resizeable.cs.meta new file mode 100644 index 00000000..7b800443 --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SF_Node_Resizeable.cs.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 9a79950ae6ecc41439f30ac282389f9f +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_ShaderProperties.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/_ShaderProperties.meta new file mode 100644 index 00000000..6b6604de --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/_ShaderProperties.meta @@ -0,0 +1,5 @@ +fileFormatVersion: 2 +guid: a539d47bbd8db459ca996ac18a58303b +folderAsset: yes +DefaultImporter: + userData: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_ShaderProperties/SFP_Branch.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/_ShaderProperties/SFP_Branch.cs new file mode 100644 index 00000000..3cef0758 --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/_ShaderProperties/SFP_Branch.cs @@ -0,0 +1,39 @@ +using UnityEngine; +using System.Collections; +using System.Text.RegularExpressions; + + +namespace ShaderForge { + + [System.Serializable] + public class SFP_Branch : SF_ShaderProperty { + + public new SFP_Branch Initialize( SF_Node node ) { + base.nameType = "Static Branch"; + base.Initialize( node ); + return this; + } + + public override void UpdateInternalName() { + + string s = nameDisplay; + + s = s.Replace(" ","_"); + + Regex rgx = new Regex( "[^a-zA-Z0-9_]" ); + s = rgx.Replace( s, "" ); + + s = s.ToUpper(); + + + // TODO: Make sure it's valid and unique + + nameInternal = s; + } + + public override string GetMulticompilePragma (){ + return "#pragma multi_compile " + nameInternal; + } + + } +} \ No newline at end of file diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_ShaderProperties/SFP_Branch.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/_ShaderProperties/SFP_Branch.cs.meta new file mode 100644 index 00000000..f0b8b8fd --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/_ShaderProperties/SFP_Branch.cs.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: caf1e1fe0d9a241339086202fccb2133 +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_ShaderProperties/SFP_Color.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/_ShaderProperties/SFP_Color.cs new file mode 100644 index 00000000..a02d760b --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/_ShaderProperties/SFP_Color.cs @@ -0,0 +1,37 @@ +using UnityEngine; +using System.Collections; + +namespace ShaderForge { + + [System.Serializable] + public class SFP_Color : SF_ShaderProperty { + + + public bool isBumpmap = false; + + public new SFP_Color Initialize( SF_Node node ) { + base.nameType = "Color"; + base.Initialize( node ); + return this; + } + + public override string GetInitializationLine() { + return GetTagString() + GetVariable() + " (\"" + nameDisplay + "\", Color) = (" + GetValue().r + "," + GetValue().g + "," + GetValue().b + "," + GetValue().a + ")"; + } + + Color GetValue() { + return ( node as SFN_Color ).texture.dataUniform; + } + + public override string GetVariableLine() { + return "uniform " + node.precision.ToCode() + "4 " + GetVariable() + ";"; + } + + // TODO: Unity UV offsets + public override string GetFragmentPrepare() { + return node.precision.ToCode() + "4 " + GetVariable() + " = " + node.Evaluate() + ";"; + } + + + } +} \ No newline at end of file diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_ShaderProperties/SFP_Color.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/_ShaderProperties/SFP_Color.cs.meta new file mode 100644 index 00000000..58e5026d --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/_ShaderProperties/SFP_Color.cs.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 7e0f81cb63fbd57449cda3f78bbf4407 +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_ShaderProperties/SFP_Cubemap.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/_ShaderProperties/SFP_Cubemap.cs new file mode 100644 index 00000000..ae89acb0 --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/_ShaderProperties/SFP_Cubemap.cs @@ -0,0 +1,32 @@ +using UnityEngine; +using System.Collections; + +namespace ShaderForge { + + [System.Serializable] + public class SFP_Cubemap : SF_ShaderProperty { + + + public new SFP_Cubemap Initialize( SF_Node node ) { + base.nameType = "Cubemap"; + base.Initialize( node ); + return this; + } + + public override string GetInitializationLine() { + string defaultValue = "\"_Skybox\""; + return GetTagString() + GetVariable() + " (\"" + nameDisplay + "\", Cube) = " + defaultValue + " {}"; + } + + public override string GetVariableLine() { + return "uniform samplerCUBE " + GetVariable() + ";"; + } + + // TODO: UVs + public override string GetFragmentPrepare() { + return "fixed4 " + GetVariable() + " = " + node.Evaluate() + ";"; + } + + + } +} \ No newline at end of file diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_ShaderProperties/SFP_Cubemap.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/_ShaderProperties/SFP_Cubemap.cs.meta new file mode 100644 index 00000000..ff31f756 --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/_ShaderProperties/SFP_Cubemap.cs.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 89bae648dacc8ce46bd4441582e727a3 +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_ShaderProperties/SFP_Matrix4x4Property.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/_ShaderProperties/SFP_Matrix4x4Property.cs new file mode 100644 index 00000000..01a9df50 --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/_ShaderProperties/SFP_Matrix4x4Property.cs @@ -0,0 +1,35 @@ +using UnityEngine; +using System.Collections; + +namespace ShaderForge { + + [System.Serializable] + public class SFP_Matrix4x4Property : SF_ShaderProperty { + + public new SFP_Matrix4x4Property Initialize( SF_Node node ) { + base.nameType = "Matrix 4x4"; + base.Initialize( node ); + global = true; + return this; + } + + public override string GetInitializationLine() { + return "";// GetTagString() + GetVariable() + " (\"" + nameDisplay + "\", Vector) = (" + GetValue().r + "," + GetValue().g + "," + GetValue().b + "," + GetValue().a + ")"; + } + + Color GetValue() { + return Color.black; + } + + public override string GetVariableLine() { + return "uniform " + node.precision.ToCode() + "4x4 " + GetVariable() + ";"; + } + + // TODO: Unity UV offsets + public override string GetFragmentPrepare() { + return node.precision.ToCode() + "4x4 " + GetVariable() + " = " + node.Evaluate() + ";"; + } + + + } +} \ No newline at end of file diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_ShaderProperties/SFP_Matrix4x4Property.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/_ShaderProperties/SFP_Matrix4x4Property.cs.meta new file mode 100644 index 00000000..5139912f --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/_ShaderProperties/SFP_Matrix4x4Property.cs.meta @@ -0,0 +1,12 @@ +fileFormatVersion: 2 +guid: 053697bbbcf06d047bee1332920a9ab4 +timeCreated: 1436193035 +licenseType: Pro +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_ShaderProperties/SFP_Slider.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/_ShaderProperties/SFP_Slider.cs new file mode 100644 index 00000000..4a282d50 --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/_ShaderProperties/SFP_Slider.cs @@ -0,0 +1,49 @@ +using UnityEngine; +using System.Collections; + +namespace ShaderForge { + + [System.Serializable] + public class SFP_Slider : SF_ShaderProperty { + + + public bool isBumpmap = false; + + public new SFP_Slider Initialize( SF_Node node ) { + base.nameType = "Slider"; + base.Initialize( node ); + return this; + } + + + + public override string GetInitializationLine() { + string defaultValue = GetCurrent().ToString(); + // name ("display name", Range (min, max)) = number + return GetTagString() + GetVariable() + " (\"" + nameDisplay + "\", Range(" + GetMin() + ", " + GetMax() + ")) = " + defaultValue; + } + + float GetMin() { + return ( node as SFN_Slider ).min; + } + + float GetMax() { + return ( node as SFN_Slider ).max; + } + + float GetCurrent() { + return ( node as SFN_Slider ).current; + } + + public override string GetVariableLine() { + return "uniform " + node.precision.ToCode() + " " + GetVariable() + ";"; + } + + // TODO: Unity UV offsets + public override string GetFragmentPrepare() { + return node.precision.ToCode()+" " + GetVariable() + " = " + node.Evaluate() + ";"; + } + + + } +} \ No newline at end of file diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_ShaderProperties/SFP_Slider.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/_ShaderProperties/SFP_Slider.cs.meta new file mode 100644 index 00000000..727d5da6 --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/_ShaderProperties/SFP_Slider.cs.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: d8fff7db79c3ac549a795dc95865193a +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_ShaderProperties/SFP_SwitchProperty.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/_ShaderProperties/SFP_SwitchProperty.cs new file mode 100644 index 00000000..192a6135 --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/_ShaderProperties/SFP_SwitchProperty.cs @@ -0,0 +1,31 @@ +using UnityEngine; +using System.Collections; + +namespace ShaderForge { + + [System.Serializable] + public class SFP_SwitchProperty : SF_ShaderProperty { + + public new SFP_SwitchProperty Initialize( SF_Node node ) { + base.nameType = "Toggle"; + base.Initialize( node ); + return this; + } + + public override string GetInitializationLine() { + string defaultValue = base.node.texture.dataUniform.x.ToString(); + return GetTagString() + "[MaterialToggle] " + GetVariable() + " (\"" + nameDisplay + "\", Float ) = " + defaultValue; + } + + public override string GetVariableLine() { + return "uniform fixed " + GetVariable() + ";"; + } + + // TODO: Unity UV offsets + //public override string GetFragmentPrepare() { + // return "fixed4 " + GetVariable() + " = " + node.Evaluate() + ";"; + //} + + + } +} \ No newline at end of file diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_ShaderProperties/SFP_SwitchProperty.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/_ShaderProperties/SFP_SwitchProperty.cs.meta new file mode 100644 index 00000000..7569fc45 --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/_ShaderProperties/SFP_SwitchProperty.cs.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 310feff246d89480987042663b16e1e1 +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_ShaderProperties/SFP_Tex2d.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/_ShaderProperties/SFP_Tex2d.cs new file mode 100644 index 00000000..85113e86 --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/_ShaderProperties/SFP_Tex2d.cs @@ -0,0 +1,50 @@ +using UnityEngine; +using System.Collections; + +namespace ShaderForge { + + [System.Serializable] + public class SFP_Tex2d : SF_ShaderProperty { + + + //public bool isBumpmap = false; // TODO: Is this even used? + + public new SFP_Tex2d Initialize( SF_Node node ) { + base.nameType = "Texture (2D)"; + base.Initialize( node ); + return this; + } + + + public override string GetInitializationLine() { + //string defaultValue = isBumpmap ? "\"bump\"" : "\"white\""; + + NoTexValue noTexValue = NoTexValue.Black; + + if(base.node is SFN_Tex2d) + noTexValue = (base.node as SFN_Tex2d).noTexValue; + else if(base.node is SFN_Tex2dAsset) + noTexValue = (base.node as SFN_Tex2dAsset).noTexValue; + + return GetTagString() + GetVariable() + " (\"" + nameDisplay + "\", 2D) = \"" + noTexValue.ToString().ToLower() + "\" {}"; + } + + public override string GetVariableLine() { + string varName = GetVariable(); + + string s = "uniform sampler2D " + varName + ";"; + if( !tagNoScaleOffset ) { + s += " uniform float4 " + varName + "_ST;"; + } + + return s; + } + + + public override string GetFragmentPrepare() { + return "fixed4 " + GetVariable() + " = " + node.Evaluate() + ";"; + } + + + } +} \ No newline at end of file diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_ShaderProperties/SFP_Tex2d.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/_ShaderProperties/SFP_Tex2d.cs.meta new file mode 100644 index 00000000..fbda6187 --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/_ShaderProperties/SFP_Tex2d.cs.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 30072d9ca7304e4419000143e2124c81 +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_ShaderProperties/SFP_ToggleProperty.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/_ShaderProperties/SFP_ToggleProperty.cs new file mode 100644 index 00000000..f123f31d --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/_ShaderProperties/SFP_ToggleProperty.cs @@ -0,0 +1,31 @@ +using UnityEngine; +using System.Collections; + +namespace ShaderForge { + + [System.Serializable] + public class SFP_ToggleProperty : SF_ShaderProperty { + + public new SFP_ToggleProperty Initialize( SF_Node node ) { + base.nameType = "Toggle"; + base.Initialize( node ); + return this; + } + + public override string GetInitializationLine() { + string defaultValue = base.node.texture.dataUniform.x.ToString(); + return GetTagString() + "[MaterialToggle] " + GetVariable() + " (\"" + nameDisplay + "\", Float ) = " + defaultValue; + } + + public override string GetVariableLine() { + return "uniform fixed " + GetVariable() + ";"; + } + + // TODO: Unity UV offsets + //public override string GetFragmentPrepare() { + // return "fixed4 " + GetVariable() + " = " + node.Evaluate() + ";"; + //} + + + } +} \ No newline at end of file diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_ShaderProperties/SFP_ToggleProperty.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/_ShaderProperties/SFP_ToggleProperty.cs.meta new file mode 100644 index 00000000..b92f23a4 --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/_ShaderProperties/SFP_ToggleProperty.cs.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 576fd6450a0cb4342ac9df49954d9802 +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_ShaderProperties/SFP_ValueProperty.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/_ShaderProperties/SFP_ValueProperty.cs new file mode 100644 index 00000000..2f166f50 --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/_ShaderProperties/SFP_ValueProperty.cs @@ -0,0 +1,31 @@ +using UnityEngine; +using System.Collections; + +namespace ShaderForge { + + [System.Serializable] + public class SFP_ValueProperty : SF_ShaderProperty { + + public new SFP_ValueProperty Initialize( SF_Node node ) { + base.nameType = "Value"; + base.Initialize( node ); + return this; + } + + public override string GetInitializationLine() { + string defaultValue = base.node.texture.dataUniform.x.ToString(); + return GetTagString() + GetVariable() + " (\"" + nameDisplay + "\", Float ) = " + defaultValue; + } + + public override string GetVariableLine() { + return "uniform "+node.precision.ToCode()+" " + GetVariable() + ";"; + } + + // TODO: Unity UV offsets + public override string GetFragmentPrepare() { + return node.precision.ToCode() + "4 " + GetVariable() + " = " + node.Evaluate() + ";"; + } + + + } +} \ No newline at end of file diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_ShaderProperties/SFP_ValueProperty.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/_ShaderProperties/SFP_ValueProperty.cs.meta new file mode 100644 index 00000000..3a90a022 --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/_ShaderProperties/SFP_ValueProperty.cs.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 43479457355519949a7175ee9526d96e +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_ShaderProperties/SFP_Vector4Property.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/_ShaderProperties/SFP_Vector4Property.cs new file mode 100644 index 00000000..f2299ccf --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/_ShaderProperties/SFP_Vector4Property.cs @@ -0,0 +1,38 @@ +using UnityEngine; +using System.Collections; + +namespace ShaderForge { + + [System.Serializable] + public class SFP_Vector4Property : SF_ShaderProperty { + + + public bool isBumpmap = false; + + public new SFP_Vector4Property Initialize( SF_Node node ) { + base.nameType = "Vector 4"; + base.Initialize( node ); + return this; + } + + + public override string GetInitializationLine() { + return GetTagString() + GetVariable() + " (\"" + nameDisplay + "\", Vector) = (" + GetValue().r + "," + GetValue().g + "," + GetValue().b + "," + GetValue().a + ")"; + } + + Color GetValue() { + return ( node as SFN_Vector4Property ).texture.dataUniform; + } + + public override string GetVariableLine() { + return "uniform " + node.precision.ToCode() + "4 " + GetVariable() + ";"; + } + + // TODO: Unity UV offsets + public override string GetFragmentPrepare() { + return node.precision.ToCode() + "4 " + GetVariable() + " = " + node.Evaluate() + ";"; + } + + + } +} \ No newline at end of file diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_ShaderProperties/SFP_Vector4Property.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/_ShaderProperties/SFP_Vector4Property.cs.meta new file mode 100644 index 00000000..6dcd36d2 --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/_ShaderProperties/SFP_Vector4Property.cs.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 8d2eadd39bae92549a09c1cb3349c112 +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_ShaderProperties/SF_ShaderProperty.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/_ShaderProperties/SF_ShaderProperty.cs new file mode 100644 index 00000000..a81104c4 --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/_ShaderProperties/SF_ShaderProperty.cs @@ -0,0 +1,297 @@ +using UnityEngine; +using UnityEditor; +using System.Collections; +using System.Collections.Generic; +using System.Text.RegularExpressions; + + +namespace ShaderForge { + [System.Serializable] + public class SF_ShaderProperty : ScriptableObject { + + public bool tagHideInInspector = false; + public bool tagHDR = false; + public bool tagPerRendererData = false; + public bool tagNoScaleOffset = false; + public bool tagNormal = false; + + public string nameDisplay = ""; // The displayed name in the material inspector + public string nameType; // Used for labeling in the editor + public string nameInternal = "_"; // The internal shader code name + public SF_Node node; + + public bool global = false; + public bool overrideInternalName = false; + + public void OnEnable() { + base.hideFlags = HideFlags.HideAndDontSave; + } + + public string GetTagString() { + string s = ""; + if( tagHideInInspector ) + s += "[HideInInspector]"; + if( tagNoScaleOffset ) + s += "[NoScaleOffset]"; + if( tagNormal ) + s += "[Normal]"; + if( tagHDR ) + s += "[HDR]"; + if( tagPerRendererData ) + s += "[PerRendererData]"; + return s; + } + + public void Initialize(SF_Node node){ + this.node = node; + SetName( node.GetVariableName() ); + } + + public static string FormatInternalName(string s){ + Regex rgx = new Regex( "[^a-zA-Z0-9_]" ); + s = rgx.Replace( s, "" ); + return s; + } + + public virtual void UpdateInternalName() { + + if(overrideInternalName){ + nameInternal = node.variableName; + return; + } + + string s = nameDisplay; + + + s = FormatInternalName(s); + + s = "_" + s; + + + // TODO: Make sure it's valid and unique + + nameInternal = s; + } + + public void SetName( string s) { + nameDisplay = s; + if( !overrideInternalName ) + UpdateInternalName(); + } + + public void SetBothNameAndInternal(string s){ + s = FormatInternalName(s); + nameDisplay = s; + nameInternal = s; + } + + public void ToggleGlobal(){ + + + + string undoMsg = global ? "make " + nameDisplay + " local" : "make " + nameDisplay + " global"; + Undo.RecordObject(this,undoMsg); + Undo.RecordObject(node.editor.nodeView.treeStatus,undoMsg); + + List propList = node.editor.nodeView.treeStatus.propertyList; + + global = !global; + + + if(global){ + + if(propList.Contains(node)){ + propList.Remove(node); + } + + } else { + + if(!propList.Contains(node)){ + propList.Add(node); + } + + } + } + + + + + string[] replacements = new string[]{ + "_r","_g", + "_R","_G", + "_g","_b", + "_G","_B", + "_b","_a", + "_B","_A", + "_x","_y", + "_X","_Y", + "_y","_z", + "_Y","_Z", + "_z","_w", + "_Z","_W", + "(R)","(G)", + "(G)","(B)", + "(B)","(A)", + "(r)","(g)", + "(g)","(b)", + "(b)","(a)", + "(X)","(Y)", + "(Y)","(Z)", + "(Z)","(W)", + "(x)","(y)", + "(y)","(z)", + "(z)","(w)" + + }; + + public string GetClonedName(){ + + string oldName = nameDisplay; + string newName = nameDisplay; + bool done = false; + + for(int i=0;i< replacements.Length;i+=2){ + if(oldName.EndsWith(replacements[i])){ + newName = oldName.Substring(0,oldName.Length - replacements[i].Length) + replacements[i+1]; + done = true; + } + } + + // Numerical increments + if(!nameDisplay.StartsWith("node_")) + if(!done){ + if( TryGetNextNumericalName(ref newName) ){ + done = true; + } + } + + // Fallback + if(!done){ + newName = oldName + "_copy"; + done = true; + } + + + return newName; + + } + + public bool TryGetNextNumericalName(ref string sOut){ + + int digits = 0; + for(int i = nameDisplay.Length-1; i>=0; i-- ){ + if(char.IsNumber(nameDisplay[i])) + digits++; + else + break; + } + + if(digits == 0) + return false; + + + string strWoNum = nameDisplay.Substring(0,nameDisplay.Length-digits); + string strNum = nameDisplay.Substring(nameDisplay.Length-digits); + + int number = int.Parse(strNum); + + number++; + + sOut = strWoNum + number.ToString("D"+digits); // Makes sure it's 01 02 etc + return true; + } + + + public bool CanToggleGlobal(){ + if(this is SFP_ValueProperty) + return true; + if(this is SFP_Color) + return true; + if(this is SFP_Tex2d && node is SFN_Tex2dAsset) + return true; + if(this is SFP_Vector4Property) + return true; + //if( this is SFP_Matrix4x4Property ) + // return true; + return false; + } + + + public SF_ShaderProperty() { + // Empty + } + + + public virtual string GetVariable() { + return nameInternal; + //return "_" + node.GetVariableName(); + } + + //public virtual string GetVariable() { + // return nameInternal; // Override for textures + //} + + public string GetFilteredVariableLine() { + //if( this.nameInternal == "_SpecColor" ) { // TODO: Why? + // return null; + //} + + return GetVariableLine(); + + } + + public string Serialize(){ + string s = ""; + s += "glob:" + global.ToString(); + s += ",taghide:" + tagHideInInspector.ToString(); + s += ",taghdr:" + tagHDR.ToString(); + s += ",tagprd:" + tagPerRendererData.ToString(); + s += ",tagnsco:" + tagNoScaleOffset.ToString(); + s += ",tagnrm:" + tagNormal.ToString(); + return s; + } + + public void Deserialize( string key, string value ){ + switch( key ) { + case "glob": + global = bool.Parse( value ); + break; + case "taghide": + tagHideInInspector = bool.Parse( value ); + break; + case "taghdr": + tagHDR = bool.Parse( value ); + break; + case "tagprd": + tagPerRendererData = bool.Parse( value ); + break; + case "tagnsco": + tagNoScaleOffset = bool.Parse( value ); + break; + case "tagnrm": + tagNormal = bool.Parse( value ); + break; + } + } + + + public virtual string GetMulticompilePragma(){ + return ""; // Override for branching + } + + public virtual string GetInitializationLine() { + return ""; // Override, textures need to unpack before usage in the frag shader + } + + public virtual string GetVariableLine() { + return ""; // Override + } + + public virtual string GetFragmentPrepare() { + return ""; // Override + } + + + + } +} \ No newline at end of file diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_ShaderProperties/SF_ShaderProperty.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/_ShaderProperties/SF_ShaderProperty.cs.meta new file mode 100644 index 00000000..f8c2375a --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/_ShaderProperties/SF_ShaderProperty.cs.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: d8c935ac774257c49ad63340aa7af37a +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Utility.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/_Utility.meta new file mode 100644 index 00000000..8fc8229f --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/_Utility.meta @@ -0,0 +1,5 @@ +fileFormatVersion: 2 +guid: 8159890c121914a839942f4820d9ce63 +folderAsset: yes +DefaultImporter: + userData: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Utility/GUILines.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/_Utility/GUILines.cs new file mode 100644 index 00000000..ff5935ba --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/_Utility/GUILines.cs @@ -0,0 +1,478 @@ +using System; +using UnityEngine; +using UnityEditor; +using System.Reflection; + +namespace ShaderForge { + + public class GUILines { + + public static Color connectionColor = new Color( 1f, 1f, 1f, 0.3f ); + + public static void Initialize() { + + } + + + + + + public static void DrawLine( Vector2 pointA, Vector2 pointB, Color color, float width, bool antiAlias ) { + Handles.BeginGUI(); + Handles.color = color; + if( antiAlias ) + Handles.DrawAAPolyLine( width, new Vector3[] { pointA, pointB } ); + else + Handles.DrawPolyLine( new Vector3[] { pointA, pointB } ); + Handles.EndGUI(); + } + + public static void DrawDisc( Vector2 center, float radius, Color color) { + Handles.BeginGUI(); + Handles.color = color; + Handles.DrawWireDisc(center,Vector3.forward,radius); + Handles.EndGUI(); + } + + + + + + public static void DrawLines( SF_Editor editor, Vector2[] points, Color color, float width, bool antiAlias, bool railway = false ) { + Handles.BeginGUI(); + Handles.color = color; + + + Vector3[] v3Pts = new Vector3[points.Length]; + for (int i = 0; i < points.Length; i++) { + points[i] = editor.nodeView.ZoomSpaceToScreenSpace( points[i] ); + v3Pts[i] = new Vector3(points[i].x, points[i].y); + } + + if( antiAlias ){ + if( railway ) { + DrawPolyLineWithRail( width, v3Pts ); + } else { + Handles.DrawAAPolyLine( width, v3Pts ); + } + } else { + Handles.DrawPolyLine( v3Pts ); + } + Handles.EndGUI(); + } + + + static void DrawPolyLineWithRail( float width, Vector3[] v3pts ) { + + Vector3[] pair = new Vector3[] { Vector3.zero, Vector3.zero }; + for( int i = 0; i < v3pts.Length - 1; i++ ) { + + Vector3 dir = (v3pts[i] - v3pts[i+1] ).normalized; + dir = new Vector3(-dir.y, dir.x); + Vector3 center = (v3pts[i] + v3pts[i+1] )*0.5f; + pair[0] = center + dir * 3; + pair[1] = center - dir * 3; + Handles.DrawAAPolyLine( pair ); + } + + Handles.DrawAAPolyLine( width, v3pts ); + } + + + + public static void Highlight( Rect r, float offset, int strength = 1 ) { + + //float width = 4; + //offset = 3; + //Color color = Color.yellow; + r.xMax += 1; + r = SF_Tools.GetExpanded( r, offset ); + + /* + Vector2 tl = new Vector2( r.x, r.y); + Vector2 tr = new Vector2( r.xMax, r.y ); + Vector2 bl = new Vector2( r.x, r.yMax ); + Vector2 br = new Vector2( r.xMax, r.yMax ); + Vector2 dn = new Vector2( 0f, width * 3 ); + Vector2 rg = new Vector2( width * 3, 0f ); + */ + + //Color prevCol = GUI.color; + //GUI.color = color; + + for( int i = 0; i < strength; i++ ) { + GUI.Box( r, string.Empty, SF_Styles.HighlightStyle ); + } + //GUI.color = prevCol; + + /* + for( int i = 0; i < strength; i++ ) { + GUI.Box( r, string.Empty, SF_Styles.HighlightStyle ); + }*/ + + + //GUI.Box( r, string.Empty, (GUIStyle)"flow node 0 on" ); + /* + for( int i = 0; i < strength; i++ ) { + DrawLine( tl, tr, color, width, true ); + DrawLine( tr, br, color, width, true ); + DrawLine( br, bl, color, width, true ); + DrawLine( bl, tl, color, width, true ); + + + DrawLine( tl + rg, tl + dn, color, width, true ); + DrawLine( tr - rg, tr + dn, color, width, true ); + DrawLine( bl + rg, bl - dn, color, width, true ); + DrawLine( br - rg, br - dn, color, width, true ); + + }*/ + + } + + + + + public static void DrawCubicBezier( Vector2 p0, Vector2 p1, Vector2 p2, Vector2 p3, Color color, float width, bool antiAlias, int segments, bool railway = false ) { + Initialize(); + Vector2 lastV = CubicBezier( p0, p1, p2, p3, 0 ); + for( int i = 1; i <= segments; i++ ) { + Vector2 v = CubicBezier( p0, p1, p2, p3, i / (float)segments ); + + if( railway ) { + Vector2 dir = ( lastV - v ).normalized; + dir = new Vector2(-dir.y, dir.x)*2; + Vector2 center = ( v + lastV ) * 0.5f; + DrawLine( center + dir, center - dir, color, width, antiAlias ); + } else { + DrawLine( lastV, v, color, width, antiAlias ); + } + + lastV = v; + } + } + + public static void DrawCubicBezierOffset( float offset, Vector2 p0, Vector2 p1, Vector2 p2, Vector2 p3, Color color, float width, bool antiAlias, int segments ) { + Initialize(); + Vector2 lastV = CubicBezierOffset( offset, p0, p1, p2, p3, 0 ); + for( int i = 1; i <= segments; i++ ) { + Vector2 v = CubicBezierOffset( offset, p0, p1, p2, p3, i / (float)segments ); + DrawLine( lastV, v, color, width, antiAlias ); + lastV = v; + } + } + + + + + public static Vector2[] ConnectionBezierOffsetArray(float offset, SF_NodeConnector startCon, SF_NodeConnector endCon, int segments){ + + + Vector2 start = startCon.GetConnectionPoint(); + Vector2 end = endCon.GetConnectionPoint(); + + bool reversed = (start.x < end.x); + + Vector2[] points; + + int pCount = (segments+1); // Point count per bezier + + if(reversed) + points = new Vector2[pCount*2]; // Two curves + else + points = new Vector2[pCount]; + + + + if(reversed){ + + // Calculate new start/end positions! + // We want an S shape, which essentially is two curves with a connected center + // Let's define the new points! + + + float midVert; + + if(startCon.node.rect.center.y > endCon.node.rect.center.y) + midVert = (startCon.node.BoundsTop() + endCon.node.BoundsBottom())/2; + else + midVert = (startCon.node.BoundsBottom() + endCon.node.BoundsTop())/2; + + + + float deltaX = Mathf.Abs(start.x-end.x); + float mul = Mathf.InverseLerp(0f,100f,deltaX); + mul = SF_Tools.Smoother(mul) * 0.70710678118f; + + + Vector2 bAp0 = start; // Start Point + Vector2 bAp3 = new Vector2(start.x, midVert); // End Point + + + + float tangentMag = Mathf.Abs(bAp0.y-bAp3.y)*mul; // TODO: Scale based on length if smaller than something + Vector2 tangentVec = new Vector2(tangentMag, 0f); + + + Vector2 bAp1 = bAp0 - tangentVec; // Start Tangent + Vector2 bAp2 = bAp3 - tangentVec; // End Tangent + + + for(int i=0;i end.x) ? 1f : 4f; + + float xHalfway = Mathf.Abs(end.x-start.x)*0.5f * mult; + + Vector2 p1 = new Vector2(start.x-xHalfway, start.y); + Vector2 p2 = new Vector2(end.x+xHalfway, end.y); + return CubicBezierOffset(offset, start, p1, p2, end, t); + } + + public static Vector2 CubicBezierOffset( float offset, Vector2 p0, Vector2 p1, Vector2 p2, Vector2 p3, float t ) { + Vector2 a = QuadBezier( p0, p1, p2, t ); + Vector2 b = QuadBezier( p1, p2, p3, t ); + Vector2 origin = Lerp( a, b, t ); + Vector2 tangent = ( b - a ).normalized; + Vector2 normal = new Vector2( -tangent.y, tangent.x ); + return origin + normal * offset; + } + + public static Vector2 CubicBezier( Vector2 p0, Vector2 p1, Vector2 p2, Vector2 p3, float t ) { + float omt = 1f - t; + float omt2 = omt * omt; + float t2 = t * t; + return p0 * ( omt2 * omt ) + + p1 * ( 3f * omt2 * t ) + + p2 * ( 3f * omt * t2 ) + + p3 * ( t2 * t ); + } + + public static Vector2 QuadBezier( Vector2 p0, Vector2 p1, Vector2 p2, float t ) { + float tsq = t * t; + float t2 = t * 2; + return p0 * ( tsq - t2 + 1 ) + p1 * ( t2 - 2 * tsq ) + p2 * tsq; + + } + + public static Vector2 Lerp( Vector2 v0, Vector2 v1, float t ) { + return ( v0 * ( 1f - t ) + t * v1 ); + } + + + + + public static void QuickBezier(Vector2 p0, Vector2 p1, Color color, int detail = 12, int width = 2){ + + Vector2 prevPoint = p0; + for(float i=1;i(); + _blitCamera.enabled = false; + _blitCamera.clearFlags = CameraClearFlags.Nothing; + _blitCamera.orthographic = true; + _blitCamera.orthographicSize = 1f; + _blitCamera.nearClipPlane = 3.5f; + _blitCamera.farClipPlane = 4.5f; + _blitCamera.enabled = false; + _blitCamera.cullingMask = ( 1 << 7 ); + } + return _blitCamera; + } + } + + + + + + + static string[] defaultInputNames = new string[] { + "_A", + "_B", + "_C", + "_D", + "_E", + "_F", + "_G", + "_H", + "_I", + "_J", + "_K", + "_L" + }; + + public static SF_Node currentNode; + static Material _mat; + public static Material mat { + get { + if( _mat == null ) + _mat = new Material( Shader.Find( "Hidden/Shader Forge/FillColor" ) ); + return _mat; + } + } + + static Material _matColor; + public static Material matColor { + get { + if( _matColor == null ) + _matColor = new Material( Shader.Find( "Hidden/Shader Forge/FillColor" ) ); + return _matColor; + } + } + + static Material _matExtractChannel; + public static Material matExtractChannel { + get { + if( _matExtractChannel == null ) + _matExtractChannel = new Material( Shader.Find( "Hidden/Shader Forge/ExtractChannel" ) ); + return _matExtractChannel; + } + } + + public static void RenderUsingViewport( RenderTexture target, string shader ) { + LoadShaderForMaterial( shader ); + RenderUsingViewport( target, mat ); + } + + static void LoadShaderForMaterial( string shader ) { + Shader s = Shader.Find( "Hidden/Shader Forge/" + shader ); + if(s == null) + Debug.LogError("Shader not found: " + shader ); + mat.shader = s; + } + + public static void Render( RenderTexture target, string shader, string[] inputNames, Texture[] inputTextures ) { + + LoadShaderForMaterial( shader ); + + for( int i = 0; i < inputTextures.Length; i++ ) { + mat.SetTexture( "_" + inputNames[i], inputTextures[i] ); + } + + Render( target, mat ); + } + + public static void RenderUsingViewport( RenderTexture target, string shader, string[] inputNames, Texture[] inputTextures ) { + LoadShaderForMaterial( shader ); + for( int i = 0; i < inputTextures.Length; i++ ) { + mat.SetTexture( "_" + inputNames[i], inputTextures[i] ); + } + RenderUsingViewport( target, mat ); + } + + public static void Render( RenderTexture target, string shader, params Texture[] inputTextures ) { + Render( target, shader, defaultInputNames, inputTextures ); + } + + public static void Render( RenderTexture target, Material material ) { + ApplyComponentCountMask( material ); + + blitCamera.targetTexture = target; + Graphics.DrawMesh( blitQuad, Vector3.zero, Quaternion.identity, material, 7, blitCamera ); + blitCamera.Render(); + blitCamera.targetTexture = null; + + //Graphics.SetRenderTarget( target ); + //Graphics.DrawMesh( blitQuad, Matrix4x4.identity, material, -1, null ); + //Graphics.DrawMeshNow( blitQuad, -Vector3.forward * 0.5f, Quaternion.identity ); + + //Graphics.Blit( null, target, material ); + } + + static void ApplyComponentCountMask(Material material) { + int cc = GetComponentCountAndPrepare(material); + Vector4 mask = CompCountToMask( cc ); + material.SetVector( "_OutputMask", mask ); + } + + static int GetComponentCountAndPrepare(Material material) { + if( currentNode != null ) { + currentNode.PrepareRendering( material ); + return currentNode.ReadComponentCountFromFirstOutput(); + } + return 4; + } + + public static void RenderUsingViewport( RenderTexture target, Material material ) { + ApplyComponentCountMask( material ); + bool sphere = SF_Settings.nodeRenderMode == NodeRenderMode.Spheres || SF_Settings.nodeRenderMode == NodeRenderMode.Mixed; + SF_Editor.instance.preview.DrawMesh( target, material, sphere ); + } + + public static Vector4 CompCountToMask(int cc) { + if( cc == 2 ) + return new Vector4( 1, 1, 0, 0 ); + if( cc == 3 ) + return new Vector4( 1, 1, 1, 0 ); + return Vector4.one; + } + + public static void Render( RenderTexture target, Color color ) { + matColor.color = color; + Render( target, matColor ); + } + + + + + } + +} diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Utility/SF_Blit.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/_Utility/SF_Blit.cs.meta new file mode 100644 index 00000000..841e3dd0 --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/_Utility/SF_Blit.cs.meta @@ -0,0 +1,12 @@ +fileFormatVersion: 2 +guid: 03fa839fa4cf8e146aef035b18b2fe8c +timeCreated: 1444468702 +licenseType: Pro +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Utility/SF_ColorPicker.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/_Utility/SF_ColorPicker.cs new file mode 100644 index 00000000..1348d5b8 --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/_Utility/SF_ColorPicker.cs @@ -0,0 +1,863 @@ +/* +using System; +using UnityEngine; +using UnityEngineInternal; +using UnityEditor; +using UnityEditorInternal; + +namespace ShaderForge { + public class SF_ColorPicker : EditorWindow { + private enum ColorBoxMode { + SV_H, + HV_S, + HS_V, + BG_R, + BR_G, + RG_B, + EyeDropper + } + private enum SliderMode { + RGB, + HSV + } + private class Styles { + public GUIStyle pickerBox = "ColorPickerBox"; + public GUIStyle thumb2D = "ColorPicker2DThumb"; + public GUIStyle thumbHoriz = "ColorPickerHorizThumb"; + public GUIStyle thumbVert = "ColorPickerVertThumb"; + public GUIStyle headerLine = "IN Title"; + public GUIStyle colorPickerBox = "ColorPickerBox"; + public GUIStyle background = "ColorPickerBackground"; + public GUIContent eyeDropper = EditorGUIUtility.IconContent( "EyeDropper.Large" ); + public GUIContent colorCycle = EditorGUIUtility.IconContent( "ColorPicker.CycleColor" ); + public GUIContent colorToggle = EditorGUIUtility.TextContent( "ColorPicker.ColorFoldout" ); + public GUIContent sliderToggle = EditorGUIUtility.TextContent( "ColorPicker.SliderFoldout" ); + public GUIContent presetsToggle = new GUIContent( "Presets" ); + public GUIContent sliderCycle = EditorGUIUtility.IconContent( "ColorPicker.CycleSlider" ); + } + private const int kHueRes = 64; + private const int kColorBoxSize = 8; + private const int kEyeDropperHeight = 95; + private const int kSlidersHeight = 82; + private const int kColorBoxHeight = 162; + private const int kPresetsHeight = 300; + private static SF_ColorPicker s_SharedColorPicker; + [SerializeField] + private Color m_Color = Color.black; + [SerializeField] + private Color m_OriginalColor; + [SerializeField] + private float m_R; + [SerializeField] + private float m_G; + [SerializeField] + private float m_B; + [SerializeField] + private float m_H; + [SerializeField] + private float m_S; + [SerializeField] + private float m_V; + [SerializeField] + private float m_A = 1f; + [SerializeField] + private float m_ColorSliderSize = 4f; + [SerializeField] + private Texture2D m_ColorSlider; + [SerializeField] + private float m_SliderValue; + [SerializeField] + private Color[] m_Colors; + [SerializeField] + private Texture2D m_ColorBox; + private static int s_Slider2Dhash = "Slider2D".GetHashCode(); + [SerializeField] + private bool m_ShowColors = true; + [SerializeField] + private bool m_ShowSliders = true; + [SerializeField] + private bool m_ShowPresets = true; + [SerializeField] + private bool m_IsOSColorPicker; + [SerializeField] + private bool m_resetKeyboardControl; + [SerializeField] + private bool m_ShowAlpha = true; + private Texture2D m_RTexture; + private float m_RTextureG = -1f; + private float m_RTextureB = -1f; + private Texture2D m_GTexture; + private float m_GTextureR = -1f; + private float m_GTextureB = -1f; + private Texture2D m_BTexture; + private float m_BTextureR = -1f; + private float m_BTextureG = -1f; + [SerializeField] + private Texture2D m_HueTexture; + private float m_HueTextureS = -1f; + private float m_HueTextureV = -1f; + [SerializeField] + private Texture2D m_SatTexture; + private float m_SatTextureH = -1f; + private float m_SatTextureV = -1f; + [SerializeField] + private Texture2D m_ValTexture; + private float m_ValTextureH = -1f; + private float m_ValTextureS = -1f; + [SerializeField] + private int m_TextureColorSliderMode = -1; + [SerializeField] + private Vector2 m_LastConstantValues = new Vector2( -1f, -1f ); + [NonSerialized] + private int m_TextureColorBoxMode = -1; + [SerializeField] + private float m_LastConstant = -1f; + [SerializeField] + private ContainerWindow m_TrackingWindow; + [SerializeField] + private SF_ColorPicker.ColorBoxMode m_ColorBoxMode = SF_ColorPicker.ColorBoxMode.BG_R; + [SerializeField] + private SF_ColorPicker.ColorBoxMode m_OldColorBoxMode; + [SerializeField] + private SF_ColorPicker.SliderMode m_SliderMode = SF_ColorPicker.SliderMode.HSV; + [SerializeField] + private Texture2D m_AlphaTexture; + private float m_OldAlpha = -1f; + [SerializeField] + private GUIView m_DelegateView; + private PresetLibraryEditor m_ColorLibraryEditor; + private PresetLibraryEditorState m_ColorLibraryEditorState; + private static SF_ColorPicker.Styles styles; + public static string presetsEditorPrefID { + get { + return "Color"; + } + } + private bool colorChanged { + get; + set; + } + public static bool visible { + get { + return SF_ColorPicker.s_SharedColorPicker != null; + } + } + public static Color color { + get { + return SF_ColorPicker.get.m_Color; + } + set { + SF_ColorPicker.get.SetColor( value ); + } + } + public static SF_ColorPicker get { + get { + if( !SF_ColorPicker.s_SharedColorPicker ) { + UnityEngine.Object[] array = Resources.FindObjectsOfTypeAll( typeof( SF_ColorPicker ) ); + if( array != null && array.Length > 0 ) { + SF_ColorPicker.s_SharedColorPicker = (SF_ColorPicker)array[0]; + } + if( !SF_ColorPicker.s_SharedColorPicker ) { + SF_ColorPicker.s_SharedColorPicker = ScriptableObject.CreateInstance(); + SF_ColorPicker.s_SharedColorPicker.wantsMouseMove = true; + } + } + return SF_ColorPicker.s_SharedColorPicker; + } + } + public string currentPresetLibrary { + get { + this.InitIfNeeded(); + return this.m_ColorLibraryEditor.currentLibraryWithoutExtension; + } + set { + this.InitIfNeeded(); + this.m_ColorLibraryEditor.currentLibraryWithoutExtension = value; + } + } + public SF_ColorPicker() { + base.hideFlags = HideFlags.DontSave; + this.m_ShowSliders = ( EditorPrefs.GetInt( "CPSliderShow", 1 ) != 0 ); + this.m_SliderMode = (SF_ColorPicker.SliderMode)EditorPrefs.GetInt( "CPSliderMode", 0 ); + this.m_ShowColors = ( EditorPrefs.GetInt( "CPColorShow", 1 ) != 0 ); + this.m_ColorBoxMode = (SF_ColorPicker.ColorBoxMode)EditorPrefs.GetInt( "CPColorMode", 0 ); + this.m_IsOSColorPicker = EditorPrefs.GetBool( "UseOSColorPicker" ); + this.m_ShowPresets = ( EditorPrefs.GetInt( "CPPresetsShow", 1 ) != 0 ); + EditorApplication.update = (EditorApplication.CallbackFunction)Delegate.Combine( EditorApplication.update, new EditorApplication.CallbackFunction( this.PollOSColorPicker ) ); + } + private void OnSelectionChange() { + this.m_resetKeyboardControl = true; + base.Repaint(); + } + private void RGBToHSV() { + EditorGUIUtility.RGBToHSV( new Color( this.m_R, this.m_G, this.m_B, 1f ), out this.m_H, out this.m_S, out this.m_V ); + } + private void HSVToRGB() { + Color color = EditorGUIUtility.HSVToRGB( this.m_H, this.m_S, this.m_V ); + this.m_R = color.r; + this.m_G = color.g; + this.m_B = color.b; + } + private static void swap( ref float f1, ref float f2 ) { + float num = f1; + f1 = f2; + f2 = num; + } + private Vector2 Slider2D( Rect rect, Vector2 value, Vector2 maxvalue, Vector2 minvalue, GUIStyle backStyle, GUIStyle thumbStyle ) { + if( backStyle == null ) { + return value; + } + if( thumbStyle == null ) { + return value; + } + int controlID = GUIUtility.GetControlID( SF_ColorPicker.s_Slider2Dhash, FocusType.Native ); + if( maxvalue.x < minvalue.x ) { + SF_ColorPicker.swap( ref maxvalue.x, ref minvalue.x ); + } + if( maxvalue.y < minvalue.y ) { + SF_ColorPicker.swap( ref maxvalue.y, ref minvalue.y ); + } + float num = ( thumbStyle.fixedHeight != 0f ) ? thumbStyle.fixedHeight : ( (float)thumbStyle.padding.vertical ); + float num2 = ( thumbStyle.fixedWidth != 0f ) ? thumbStyle.fixedWidth : ( (float)thumbStyle.padding.horizontal ); + Vector2 vector = new Vector2( ( rect.width - (float)( backStyle.padding.right + backStyle.padding.left ) - num2 * 2f ) / ( maxvalue.x - minvalue.x ), ( rect.height - (float)( backStyle.padding.top + backStyle.padding.bottom ) - num * 2f ) / ( maxvalue.y - minvalue.y ) ); + Rect position = new Rect( rect.x + value.x * vector.x + num2 / 2f + (float)backStyle.padding.left - minvalue.x * vector.x, rect.y + value.y * vector.y + num / 2f + (float)backStyle.padding.top - minvalue.y * vector.y, num2, num ); + Event current = Event.current; + switch( current.GetTypeForControl( controlID ) ) { + case EventType.MouseDown: + if( rect.Contains( current.mousePosition ) ) { + GUIUtility.hotControl = controlID; + value.x = ( current.mousePosition.x - rect.x - num2 - (float)backStyle.padding.left ) / vector.x + minvalue.x; + value.y = ( current.mousePosition.y - rect.y - num - (float)backStyle.padding.top ) / vector.y + minvalue.y; + GUI.changed = true; + Event.current.Use(); + } + break; + case EventType.MouseUp: + if( GUIUtility.hotControl == controlID ) { + GUIUtility.hotControl = 0; + current.Use(); + } + break; + case EventType.MouseDrag: + if( GUIUtility.hotControl == controlID ) { + value.x = ( current.mousePosition.x - rect.x - num2 - (float)backStyle.padding.left ) / vector.x + minvalue.x; + value.y = ( current.mousePosition.y - rect.y - num - (float)backStyle.padding.top ) / vector.y + minvalue.y; + value.x = Mathf.Clamp( value.x, minvalue.x, maxvalue.x ); + value.y = Mathf.Clamp( value.y, minvalue.y, maxvalue.y ); + GUI.changed = true; + Event.current.Use(); + } + break; + case EventType.Repaint: + backStyle.Draw( rect, GUIContent.none, controlID ); + thumbStyle.Draw( position, GUIContent.none, controlID ); + break; + } + return value; + } + private void RGBSliders() { + bool changed = GUI.changed; + GUI.changed = false; + this.m_RTexture = SF_ColorPicker.Update1DSlider( this.m_RTexture, 8, this.m_G, this.m_B, ref this.m_RTextureG, ref this.m_RTextureB, 0, false ); + this.m_GTexture = SF_ColorPicker.Update1DSlider( this.m_GTexture, 8, this.m_R, this.m_B, ref this.m_GTextureR, ref this.m_GTextureB, 1, false ); + this.m_BTexture = SF_ColorPicker.Update1DSlider( this.m_BTexture, 8, this.m_R, this.m_G, ref this.m_BTextureR, ref this.m_BTextureG, 2, false ); + float num = (float)( (int)Mathf.Round( this.m_R * 255f ) ); + float num2 = (float)( (int)Mathf.Round( this.m_G * 255f ) ); + float num3 = (float)( (int)Mathf.Round( this.m_B * 255f ) ); + num = this.TexturedSlider( this.m_RTexture, "R", num, 0f, 255f ); + num2 = this.TexturedSlider( this.m_GTexture, "G", num2, 0f, 255f ); + num3 = this.TexturedSlider( this.m_BTexture, "B", num3, 0f, 255f ); + if( GUI.changed ) { + this.m_R = num / 255f; + this.m_G = num2 / 255f; + this.m_B = num3 / 255f; + this.RGBToHSV(); + } + GUI.changed |= changed; + } + private static Texture2D Update1DSlider( Texture2D tex, int xSize, float const1, float const2, ref float oldConst1, ref float oldConst2, int idx, bool hsvSpace ) { + if( !tex || const1 != oldConst1 || const2 != oldConst2 ) { + if( !tex ) { + tex = SF_ColorPicker.MakeTexture( xSize, 2 ); + } + Color[] array = new Color[xSize * 2]; + Color black = Color.black; + Color black2 = Color.black; + switch( idx ) { + case 0: + black = new Color( 0f, const1, const2, 1f ); + black2 = new Color( 1f, 0f, 0f, 0f ); + break; + case 1: + black = new Color( const1, 0f, const2, 1f ); + black2 = new Color( 0f, 1f, 0f, 0f ); + break; + case 2: + black = new Color( const1, const2, 0f, 1f ); + black2 = new Color( 0f, 0f, 1f, 0f ); + break; + case 3: + black = new Color( 0f, 0f, 0f, 1f ); + black2 = new Color( 1f, 1f, 1f, 0f ); + break; + } + SF_ColorPicker.FillArea( xSize, 2, array, black, black2, new Color( 0f, 0f, 0f, 0f ) ); + if( hsvSpace ) { + SF_ColorPicker.HSVToRGBArray( array ); + } + oldConst1 = const1; + oldConst2 = const2; + tex.SetPixels( array ); + tex.Apply(); + } + return tex; + } + private float TexturedSlider( Texture2D background, string text, float val, float min, float max ) { + Rect rect = GUILayoutUtility.GetRect( 16f, 16f, GUI.skin.label ); + GUI.Label( new Rect( rect.x, rect.y - 1f, 20f, 16f ), text ); + rect.x += 14f; + rect.width -= 50f; + if( Event.current.type == EventType.Repaint ) { + Rect screenRect = new Rect( rect.x + 1f, rect.y + 2f, rect.width - 2f, rect.height - 4f ); + Graphics.DrawTexture( screenRect, background, new Rect( 0.5f / (float)background.width, 0.5f / (float)background.height, 1f - 1f / (float)background.width, 1f - 1f / (float)background.height ), 0, 0, 0, 0, Color.grey ); + } + int controlID = EditorGUI.GetControlID( 869045, EditorGUIUtility.native, base.position ); + bool changed = GUI.changed; + GUI.changed = false; + val = GUI.HorizontalSlider( new Rect( rect.x, rect.y + 1f, rect.width, rect.height - 2f ), val, min, max, SF_ColorPicker.styles.pickerBox, SF_ColorPicker.styles.thumbHoriz ); + if( GUI.changed && EditorGUI.s_RecycledEditor.IsEditingControl( controlID ) ) { + EditorGUI.s_RecycledEditor.EndEditing(); + } + Rect position = new Rect( rect.xMax + 6f, rect.y, 30f, 16f ); + val = (float)( (int)EditorGUI.DoFloatField( EditorGUI.s_RecycledEditor, position, new Rect( 0f, 0f, 0f, 0f ), controlID, val, EditorGUI.kIntFieldFormatString, EditorStyles.numberField, false ) ); + val = Mathf.Clamp( val, min, max ); + GUI.changed |= changed; + return val; + } + private void HSVSliders() { + bool changed = GUI.changed; + GUI.changed = false; + this.m_HueTexture = SF_ColorPicker.Update1DSlider( this.m_HueTexture, 64, 1f, 1f, ref this.m_HueTextureS, ref this.m_HueTextureV, 0, true ); + this.m_SatTexture = SF_ColorPicker.Update1DSlider( this.m_SatTexture, 8, this.m_H, Mathf.Max( this.m_V, 0.2f ), ref this.m_SatTextureH, ref this.m_SatTextureV, 1, true ); + this.m_ValTexture = SF_ColorPicker.Update1DSlider( this.m_ValTexture, 8, this.m_H, this.m_S, ref this.m_ValTextureH, ref this.m_ValTextureS, 2, true ); + float num = (float)( (int)Mathf.Round( this.m_H * 359f ) ); + float num2 = (float)( (int)Mathf.Round( this.m_S * 255f ) ); + float num3 = (float)( (int)Mathf.Round( this.m_V * 255f ) ); + num = this.TexturedSlider( this.m_HueTexture, "H", num, 0f, 359f ); + num2 = this.TexturedSlider( this.m_SatTexture, "S", num2, 0f, 255f ); + num3 = this.TexturedSlider( this.m_ValTexture, "V", num3, 0f, 255f ); + if( GUI.changed ) { + this.m_H = num / 359f; + this.m_S = num2 / 255f; + this.m_V = num3 / 255f; + this.HSVToRGB(); + } + GUI.changed |= changed; + } + private static void FillArea( int xSize, int ySize, Color[] retval, Color topLeftColor, Color rightGradient, Color downGradient ) { + Color b = new Color( 0f, 0f, 0f, 0f ); + Color b2 = new Color( 0f, 0f, 0f, 0f ); + if( xSize > 1 ) { + b = rightGradient / (float)( xSize - 1 ); + } + if( ySize > 1 ) { + b2 = downGradient / (float)( ySize - 1 ); + } + Color color = topLeftColor; + int num = 0; + for( int i = 0; i < ySize; i++ ) { + Color color2 = color; + for( int j = 0; j < xSize; j++ ) { + retval[num++] = color2; + color2 += b; + } + color += b2; + } + } + private static void HSVToRGBArray( Color[] colors ) { + int num = colors.Length; + for( int i = 0; i < num; i++ ) { + Color color = colors[i]; + Color color2 = EditorGUIUtility.HSVToRGB( color.r, color.g, color.b ); + color2.a = color.a; + colors[i] = color2; + } + } + private void DrawColorSlider( Rect colorSliderRect, Vector2 constantValues ) { + if( Event.current.type != EventType.Repaint ) { + return; + } + if( this.m_ColorBoxMode != (SF_ColorPicker.ColorBoxMode)this.m_TextureColorSliderMode ) { + int num = (int)this.m_ColorSliderSize; + int num2; + if( this.m_ColorBoxMode == SF_ColorPicker.ColorBoxMode.SV_H ) { + num2 = 64; + } else { + num2 = (int)this.m_ColorSliderSize; + } + if( this.m_ColorSlider == null ) { + this.m_ColorSlider = SF_ColorPicker.MakeTexture( num, num2 ); + } + if( this.m_ColorSlider.width != num || this.m_ColorSlider.height != num2 ) { + this.m_ColorSlider.Resize( num, num2 ); + } + } + if( this.m_ColorBoxMode != (SF_ColorPicker.ColorBoxMode)this.m_TextureColorSliderMode || constantValues != this.m_LastConstantValues ) { + Color[] pixels = this.m_ColorSlider.GetPixels( 0 ); + int width = this.m_ColorSlider.width; + int height = this.m_ColorSlider.height; + switch( this.m_ColorBoxMode ) { + case SF_ColorPicker.ColorBoxMode.SV_H: + SF_ColorPicker.FillArea( width, height, pixels, new Color( 0f, 1f, 1f, 1f ), new Color( 0f, 0f, 0f, 0f ), new Color( 1f, 0f, 0f, 0f ) ); + SF_ColorPicker.HSVToRGBArray( pixels ); + break; + case SF_ColorPicker.ColorBoxMode.HV_S: + SF_ColorPicker.FillArea( width, height, pixels, new Color( this.m_H, 0f, Mathf.Max( this.m_V, 0.3f ), 1f ), new Color( 0f, 0f, 0f, 0f ), new Color( 0f, 1f, 0f, 0f ) ); + SF_ColorPicker.HSVToRGBArray( pixels ); + break; + case SF_ColorPicker.ColorBoxMode.HS_V: + SF_ColorPicker.FillArea( width, height, pixels, new Color( this.m_H, this.m_S, 0f, 1f ), new Color( 0f, 0f, 0f, 0f ), new Color( 0f, 0f, 1f, 0f ) ); + SF_ColorPicker.HSVToRGBArray( pixels ); + break; + case SF_ColorPicker.ColorBoxMode.BG_R: + SF_ColorPicker.FillArea( width, height, pixels, new Color( 0f, this.m_G, this.m_B, 1f ), new Color( 0f, 0f, 0f, 0f ), new Color( 1f, 0f, 0f, 0f ) ); + break; + case SF_ColorPicker.ColorBoxMode.BR_G: + SF_ColorPicker.FillArea( width, height, pixels, new Color( this.m_R, 0f, this.m_B, 1f ), new Color( 0f, 0f, 0f, 0f ), new Color( 0f, 1f, 0f, 0f ) ); + break; + case SF_ColorPicker.ColorBoxMode.RG_B: + SF_ColorPicker.FillArea( width, height, pixels, new Color( this.m_R, this.m_G, 0f, 1f ), new Color( 0f, 0f, 0f, 0f ), new Color( 0f, 0f, 1f, 0f ) ); + break; + } + this.m_ColorSlider.SetPixels( pixels, 0 ); + this.m_ColorSlider.Apply( true ); + } + Graphics.DrawTexture( colorSliderRect, this.m_ColorSlider, new Rect( 0.5f / (float)this.m_ColorSlider.width, 0.5f / (float)this.m_ColorSlider.height, 1f - 1f / (float)this.m_ColorSlider.width, 1f - 1f / (float)this.m_ColorSlider.height ), 0, 0, 0, 0, Color.grey ); + } + public static Texture2D MakeTexture( int width, int height ) { + return new Texture2D( width, height, TextureFormat.ARGB32, false ) { + hideFlags = HideFlags.HideAndDontSave, + wrapMode = TextureWrapMode.Clamp + //hideFlags = HideFlags.DontSave + }; + } + private void DrawColorSpaceBox( Rect colorBoxRect, float constantValue ) { + if( Event.current.type != EventType.Repaint ) { + return; + } + if( this.m_ColorBoxMode != (SF_ColorPicker.ColorBoxMode)this.m_TextureColorBoxMode ) { + int num = 8; + int num2; + if( this.m_ColorBoxMode == SF_ColorPicker.ColorBoxMode.HV_S || this.m_ColorBoxMode == SF_ColorPicker.ColorBoxMode.HS_V ) { + num2 = 64; + } else { + num2 = 8; + } + if( this.m_ColorBox == null ) { + this.m_ColorBox = SF_ColorPicker.MakeTexture( num2, num ); + } + if( this.m_ColorBox.width != num2 || this.m_ColorBox.height != num ) { + this.m_ColorBox.Resize( num2, num ); + } + } + if( this.m_ColorBoxMode != (SF_ColorPicker.ColorBoxMode)this.m_TextureColorBoxMode || this.m_LastConstant != constantValue ) { + this.m_Colors = this.m_ColorBox.GetPixels( 0 ); + int width = this.m_ColorBox.width; + int height = this.m_ColorBox.height; + switch( this.m_ColorBoxMode ) { + case SF_ColorPicker.ColorBoxMode.SV_H: + SF_ColorPicker.FillArea( width, height, this.m_Colors, new Color( this.m_H, 0f, 0f, 1f ), new Color( 0f, 1f, 0f, 0f ), new Color( 0f, 0f, 1f, 0f ) ); + SF_ColorPicker.HSVToRGBArray( this.m_Colors ); + break; + case SF_ColorPicker.ColorBoxMode.HV_S: + SF_ColorPicker.FillArea( width, height, this.m_Colors, new Color( 0f, this.m_S, 0f, 1f ), new Color( 1f, 0f, 0f, 0f ), new Color( 0f, 0f, 1f, 0f ) ); + SF_ColorPicker.HSVToRGBArray( this.m_Colors ); + break; + case SF_ColorPicker.ColorBoxMode.HS_V: + SF_ColorPicker.FillArea( width, height, this.m_Colors, new Color( 0f, 0f, this.m_V, 1f ), new Color( 1f, 0f, 0f, 0f ), new Color( 0f, 1f, 0f, 0f ) ); + SF_ColorPicker.HSVToRGBArray( this.m_Colors ); + break; + case SF_ColorPicker.ColorBoxMode.BG_R: + SF_ColorPicker.FillArea( width, height, this.m_Colors, new Color( this.m_R, 0f, 0f, 1f ), new Color( 0f, 0f, 1f, 0f ), new Color( 0f, 1f, 0f, 0f ) ); + break; + case SF_ColorPicker.ColorBoxMode.BR_G: + SF_ColorPicker.FillArea( width, height, this.m_Colors, new Color( 0f, this.m_G, 0f, 1f ), new Color( 0f, 0f, 1f, 0f ), new Color( 1f, 0f, 0f, 0f ) ); + break; + case SF_ColorPicker.ColorBoxMode.RG_B: + SF_ColorPicker.FillArea( width, height, this.m_Colors, new Color( 0f, 0f, this.m_B, 1f ), new Color( 1f, 0f, 0f, 0f ), new Color( 0f, 1f, 0f, 0f ) ); + break; + } + this.m_ColorBox.SetPixels( this.m_Colors, 0 ); + this.m_ColorBox.Apply( true ); + this.m_LastConstant = constantValue; + this.m_TextureColorBoxMode = (int)this.m_ColorBoxMode; + } + Graphics.DrawTexture( colorBoxRect, this.m_ColorBox, new Rect( 0.5f / (float)this.m_ColorBox.width, 0.5f / (float)this.m_ColorBox.height, 1f - 1f / (float)this.m_ColorBox.width, 1f - 1f / (float)this.m_ColorBox.height ), 0, 0, 0, 0, Color.grey ); + } + private void InitIfNeeded() { + if( SF_ColorPicker.styles == null ) { + SF_ColorPicker.styles = new SF_ColorPicker.Styles(); + } + if( this.m_ColorLibraryEditorState == null ) { + this.m_ColorLibraryEditorState = new PresetLibraryEditorState( SF_ColorPicker.presetsEditorPrefID ); + this.m_ColorLibraryEditorState.TransferEditorPrefsState( true ); + } + if( this.m_ColorLibraryEditor == null ) { + ScriptableObjectSaveLoadHelper helper = new ScriptableObjectSaveLoadHelper( "colors", SaveType.Text ); + this.m_ColorLibraryEditor = new PresetLibraryEditor( helper, this.m_ColorLibraryEditorState, new Action( this.PresetClickedCallback ) ); + this.m_ColorLibraryEditor.previewAspect = 1f; + this.m_ColorLibraryEditor.minMaxPreviewHeight = new Vector2( 14f, 14f ); + this.m_ColorLibraryEditor.settingsMenuRightMargin = 2f; + this.m_ColorLibraryEditor.useOnePixelOverlappedGrid = true; + this.m_ColorLibraryEditor.alwaysShowScrollAreaHorizontalLines = false; + this.m_ColorLibraryEditor.marginsForGrid = new RectOffset( 0, 0, 0, 0 ); + this.m_ColorLibraryEditor.marginsForList = new RectOffset( 0, 5, 2, 2 ); + } + } + private void PresetClickedCallback( int clickCount, object presetObject ) { + Color color = (Color)presetObject; + this.SetColor( color ); + this.colorChanged = true; + } + private void DoColorSwatchAndEyedropper() { + GUILayout.BeginHorizontal( new GUILayoutOption[0] ); + if( GUILayout.Button( SF_ColorPicker.styles.eyeDropper, GUIStyle.none, new GUILayoutOption[] + { + GUILayout.Width(40f), + GUILayout.ExpandWidth(false) + } ) ) { + EyeDropper.Start( this.m_Parent ); + this.m_ColorBoxMode = SF_ColorPicker.ColorBoxMode.EyeDropper; + GUIUtility.ExitGUI(); + } + Color color = new Color( this.m_R, this.m_G, this.m_B, this.m_A ); + Rect rect = GUILayoutUtility.GetRect( 20f, 20f, 20f, 20f, SF_ColorPicker.styles.SF_ColorPickerBox, new GUILayoutOption[] + { + GUILayout.ExpandWidth(true) + } ); + EditorGUIUtility.DrawColorSwatch( rect, color, this.m_ShowAlpha ); + if( Event.current.type == EventType.Repaint ) { + SF_ColorPicker.styles.pickerBox.Draw( rect, GUIContent.none, false, false, false, false ); + } + GUILayout.EndHorizontal(); + } + private void DoColorSpaceGUI() { + GUILayout.BeginHorizontal( new GUILayoutOption[0] ); + this.m_ShowColors = GUILayout.Toggle( this.m_ShowColors, SF_ColorPicker.styles.colorToggle, EditorStyles.foldout, new GUILayoutOption[0] ); + GUI.enabled = this.m_ShowColors; + if( GUILayout.Button( SF_ColorPicker.styles.colorCycle, GUIStyle.none, new GUILayoutOption[] + { + GUILayout.ExpandWidth(false) + } ) ) { + this.m_OldColorBoxMode = ( this.m_ColorBoxMode = ( this.m_ColorBoxMode + 1 ) % SF_ColorPicker.ColorBoxMode.EyeDropper ); + } + GUI.enabled = true; + GUILayout.EndHorizontal(); + if( this.m_ShowColors ) { + bool changed = GUI.changed; + GUILayout.BeginHorizontal( new GUILayoutOption[] + { + GUILayout.ExpandHeight(false) + } ); + Rect aspectRect = GUILayoutUtility.GetAspectRect( 1f, SF_ColorPicker.styles.pickerBox, new GUILayoutOption[] + { + GUILayout.MinWidth(64f), + GUILayout.MinHeight(64f), + GUILayout.MaxWidth(256f), + GUILayout.MaxHeight(256f) + } ); + EditorGUILayout.Space(); + Rect rect = GUILayoutUtility.GetRect( 8f, 32f, 64f, 128f, SF_ColorPicker.styles.pickerBox ); + rect.height = aspectRect.height; + GUILayout.EndHorizontal(); + GUI.changed = false; + switch( this.m_ColorBoxMode ) { + case SF_ColorPicker.ColorBoxMode.SV_H: + this.Slider3D( aspectRect, rect, ref this.m_S, ref this.m_V, ref this.m_H, SF_ColorPicker.styles.pickerBox, SF_ColorPicker.styles.thumb2D, SF_ColorPicker.styles.thumbVert ); + if( GUI.changed ) { + this.HSVToRGB(); + } + break; + case SF_ColorPicker.ColorBoxMode.HV_S: + this.Slider3D( aspectRect, rect, ref this.m_H, ref this.m_V, ref this.m_S, SF_ColorPicker.styles.pickerBox, SF_ColorPicker.styles.thumb2D, SF_ColorPicker.styles.thumbVert ); + if( GUI.changed ) { + this.HSVToRGB(); + } + break; + case SF_ColorPicker.ColorBoxMode.HS_V: + this.Slider3D( aspectRect, rect, ref this.m_H, ref this.m_S, ref this.m_V, SF_ColorPicker.styles.pickerBox, SF_ColorPicker.styles.thumb2D, SF_ColorPicker.styles.thumbVert ); + if( GUI.changed ) { + this.HSVToRGB(); + } + break; + case SF_ColorPicker.ColorBoxMode.BG_R: + this.Slider3D( aspectRect, rect, ref this.m_B, ref this.m_G, ref this.m_R, SF_ColorPicker.styles.pickerBox, SF_ColorPicker.styles.thumb2D, SF_ColorPicker.styles.thumbVert ); + if( GUI.changed ) { + this.RGBToHSV(); + } + break; + case SF_ColorPicker.ColorBoxMode.BR_G: + this.Slider3D( aspectRect, rect, ref this.m_B, ref this.m_R, ref this.m_G, SF_ColorPicker.styles.pickerBox, SF_ColorPicker.styles.thumb2D, SF_ColorPicker.styles.thumbVert ); + if( GUI.changed ) { + this.RGBToHSV(); + } + break; + case SF_ColorPicker.ColorBoxMode.RG_B: + this.Slider3D( aspectRect, rect, ref this.m_R, ref this.m_G, ref this.m_B, SF_ColorPicker.styles.pickerBox, SF_ColorPicker.styles.thumb2D, SF_ColorPicker.styles.thumbVert ); + if( GUI.changed ) { + this.RGBToHSV(); + } + break; + case SF_ColorPicker.ColorBoxMode.EyeDropper: + EyeDropper.DrawPreview( Rect.MinMaxRect( aspectRect.x, aspectRect.y, rect.xMax, aspectRect.yMax ) ); + break; + } + GUI.changed |= changed; + } + } + private void DoColorSliders() { + GUILayout.BeginHorizontal( new GUILayoutOption[0] ); + this.m_ShowSliders = GUILayout.Toggle( this.m_ShowSliders, SF_ColorPicker.styles.sliderToggle, EditorStyles.foldout, new GUILayoutOption[0] ); + GUI.enabled = this.m_ShowSliders; + if( GUILayout.Button( SF_ColorPicker.styles.sliderCycle, GUIStyle.none, new GUILayoutOption[] + { + GUILayout.ExpandWidth(false) + } ) ) { + this.m_SliderMode = ( this.m_SliderMode + 1 ) % (SF_ColorPicker.SliderMode)2; + GUI.changed = true; + } + GUI.enabled = true; + GUILayout.EndHorizontal(); + if( this.m_ShowSliders ) { + SF_ColorPicker.SliderMode sliderMode = this.m_SliderMode; + if( sliderMode != SF_ColorPicker.SliderMode.RGB ) { + if( sliderMode == SF_ColorPicker.SliderMode.HSV ) { + this.HSVSliders(); + } + } else { + this.RGBSliders(); + } + if( this.m_ShowAlpha ) { + this.m_AlphaTexture = SF_ColorPicker.Update1DSlider( this.m_AlphaTexture, 8, 0f, 0f, ref this.m_OldAlpha, ref this.m_OldAlpha, 3, false ); + this.m_A = this.TexturedSlider( this.m_AlphaTexture, "A", Mathf.Round( this.m_A * 255f ), 0f, 255f ) / 255f; + } + } + } + private void DoPresetsGUI() { + GUILayout.BeginHorizontal( new GUILayoutOption[0] ); + EditorGUI.BeginChangeCheck(); + this.m_ShowPresets = GUILayout.Toggle( this.m_ShowPresets, SF_ColorPicker.styles.presetsToggle, EditorStyles.foldout, new GUILayoutOption[0] ); + if( EditorGUI.EndChangeCheck() ) { + EditorPrefs.SetInt( "CPPresetsShow", ( !this.m_ShowPresets ) ? 0 : 1 ); + } + GUILayout.Space( 17f ); + GUILayout.EndHorizontal(); + if( this.m_ShowPresets ) { + GUILayout.Space( -18f ); + Rect rect = GUILayoutUtility.GetRect( 0f, Mathf.Clamp( this.m_ColorLibraryEditor.contentHeight, 40f, 250f ) ); + this.m_ColorLibraryEditor.OnGUI( rect, this.m_Color ); + } + } + private void OnGUI() { + this.InitIfNeeded(); + if( this.m_resetKeyboardControl ) { + GUIUtility.keyboardControl = 0; + this.m_resetKeyboardControl = false; + } + EventType type = Event.current.type; + if( type == EventType.ExecuteCommand ) { + string commandName = Event.current.commandName; + switch( commandName ) { + case "EyeDropperUpdate": + base.Repaint(); + break; + case "EyeDropperClicked": { + Color lastPickedColor = EyeDropper.GetLastPickedColor(); + this.m_R = lastPickedColor.r; + this.m_G = lastPickedColor.g; + this.m_B = lastPickedColor.b; + this.RGBToHSV(); + this.m_ColorBoxMode = this.m_OldColorBoxMode; + this.m_Color = new Color( this.m_R, this.m_G, this.m_B, this.m_A ); + this.SendEvent( true ); + break; + } + case "EyeDropperCancelled": + base.Repaint(); + this.m_ColorBoxMode = this.m_OldColorBoxMode; + break; + } + } + EditorGUIUtility.LookLikeControls( 15f, 30f ); + Rect rect = EditorGUILayout.BeginVertical( SF_ColorPicker.styles.background, new GUILayoutOption[0] ); + EditorGUI.BeginChangeCheck(); + this.DoColorSwatchAndEyedropper(); + GUILayout.Space( 10f ); + this.DoColorSpaceGUI(); + GUILayout.Space( 10f ); + this.DoColorSliders(); + GUILayout.Space( 10f ); + if( EditorGUI.EndChangeCheck() ) { + this.colorChanged = true; + } + this.DoPresetsGUI(); + GUILayout.Space( 10f ); + if( this.colorChanged ) { + EditorPrefs.SetInt( "CPSliderShow", ( !this.m_ShowSliders ) ? 0 : 1 ); + EditorPrefs.SetInt( "CPSliderMode", (int)this.m_SliderMode ); + EditorPrefs.SetInt( "CPColorShow", ( !this.m_ShowColors ) ? 0 : 1 ); + EditorPrefs.SetInt( "CPColorMode", (int)this.m_ColorBoxMode ); + } + if( this.colorChanged ) { + this.colorChanged = false; + this.m_Color = new Color( this.m_R, this.m_G, this.m_B, this.m_A ); + this.SendEvent( true ); + } + EditorGUILayout.EndVertical(); + if( rect.height > 0f ) { + this.SetHeight( rect.height ); + } + if( Event.current.type == EventType.KeyDown ) { + KeyCode keyCode = Event.current.keyCode; + if( keyCode != KeyCode.Return ) { + if( keyCode == KeyCode.Escape ) { + this.m_Color = this.m_OriginalColor; + this.SendEvent( false ); + base.Close(); + GUIUtility.ExitGUI(); + return; + } + if( keyCode != KeyCode.KeypadEnter ) { + return; + } + } + base.Close(); + } + } + private void SetHeight( float newHeight ) { + if( newHeight == base.position.height ) { + return; + } + base.minSize = new Vector2( 193f, newHeight ); + base.maxSize = new Vector2( 193f, newHeight ); + } + private void Slider3D( Rect boxPos, Rect sliderPos, ref float x, ref float y, ref float z, GUIStyle box, GUIStyle thumb2D, GUIStyle thumbHoriz ) { + Rect colorBoxRect = boxPos; + colorBoxRect.x += 1f; + colorBoxRect.y += 1f; + colorBoxRect.width -= 2f; + colorBoxRect.height -= 2f; + this.DrawColorSpaceBox( colorBoxRect, z ); + Vector2 value = new Vector2( x, 1f - y ); + value = this.Slider2D( boxPos, value, new Vector2( 0f, 0f ), new Vector2( 1f, 1f ), box, thumb2D ); + x = value.x; + y = 1f - value.y; + Rect colorSliderRect = new Rect( sliderPos.x + 1f, sliderPos.y + 1f, sliderPos.width - 2f, sliderPos.height - 2f ); + this.DrawColorSlider( colorSliderRect, new Vector2( x, y ) ); + z = GUI.VerticalSlider( sliderPos, z, 1f, 0f, box, thumbHoriz ); + } + private void SendEvent( bool exitGUI ) { + if( this.m_DelegateView ) { + Event e = EditorGUIUtility.CommandEvent( "ColorPickerChanged" ); + if( !this.m_IsOSColorPicker ) { + base.Repaint(); + } + this.m_DelegateView.SendEvent( e ); + if( !this.m_IsOSColorPicker && exitGUI ) { + GUIUtility.ExitGUI(); + } + } + } + public void SetColor( Color c ) { + if( this.m_IsOSColorPicker ) { + OSColorPicker.color = c; + } else { + if( this.m_Color.r == c.r && this.m_Color.g == c.g && this.m_Color.b == c.b && this.m_Color.a == c.a ) { + return; + } + this.m_resetKeyboardControl = true; + this.m_Color = c; + this.m_R = c.r; + this.m_G = c.g; + this.m_B = c.b; + this.RGBToHSV(); + this.m_A = c.a; + base.Repaint(); + } + } + public static void Show( GUIView viewToUpdate, Color col ) { + SF_ColorPicker.Show( viewToUpdate, col, true ); + } + public static void Show( GUIView viewToUpdate, Color col, bool showAlpha ) { + SF_ColorPicker.get.m_DelegateView = viewToUpdate; + SF_ColorPicker.color = col; + SF_ColorPicker.get.m_OriginalColor = col; + SF_ColorPicker.get.m_ShowAlpha = showAlpha; + if( SF_ColorPicker.get.m_IsOSColorPicker ) { + OSColorPicker.Show( showAlpha ); + } else { + SF_ColorPicker get = SF_ColorPicker.get; + get.title = "Color"; + float x = (float)EditorPrefs.GetInt( "CPickerWidth", (int)get.position.width ); + float y = (float)EditorPrefs.GetInt( "CPickerHeight", (int)get.position.height ); + get.minSize = new Vector2( x, y ); + get.maxSize = new Vector2( x, y ); + get.ShowAuxWindow(); + } + } + private void PollOSColorPicker() { + if( this.m_IsOSColorPicker ) { + if( !OSColorPicker.visible || Application.platform != RuntimePlatform.OSXEditor ) { + UnityEngine.Object.DestroyImmediate( this ); + } else { + Color color = OSColorPicker.color; + if( this.m_Color != color ) { + this.m_Color = color; + this.SendEvent( true ); + } + } + } + } + public void OnDestroy() { + if( this.m_ColorSlider ) { + UnityEngine.Object.DestroyImmediate( this.m_ColorSlider ); + } + if( this.m_ColorBox ) { + UnityEngine.Object.DestroyImmediate( this.m_ColorBox ); + } + if( this.m_RTexture ) { + UnityEngine.Object.DestroyImmediate( this.m_RTexture ); + } + if( this.m_GTexture ) { + UnityEngine.Object.DestroyImmediate( this.m_GTexture ); + } + if( this.m_BTexture ) { + UnityEngine.Object.DestroyImmediate( this.m_BTexture ); + } + if( this.m_HueTexture ) { + UnityEngine.Object.DestroyImmediate( this.m_HueTexture ); + } + if( this.m_SatTexture ) { + UnityEngine.Object.DestroyImmediate( this.m_SatTexture ); + } + if( this.m_ValTexture ) { + UnityEngine.Object.DestroyImmediate( this.m_ValTexture ); + } + if( this.m_AlphaTexture ) { + UnityEngine.Object.DestroyImmediate( this.m_AlphaTexture ); + } + ColorPicker.s_SharedColorPicker = null; + if( this.m_IsOSColorPicker ) { + OSColorPicker.Close(); + } + EditorApplication.update = (EditorApplication.CallbackFunction)Delegate.Remove( EditorApplication.update, new EditorApplication.CallbackFunction( this.PollOSColorPicker ) ); + if( this.m_ColorLibraryEditorState != null ) { + this.m_ColorLibraryEditorState.TransferEditorPrefsState( false ); + } + this.m_ColorLibraryEditor.UnloadUsedLibraries(); + EditorPrefs.SetInt( "CPickerWidth", (int)base.position.width ); + EditorPrefs.SetInt( "CPickerHeight", (int)base.position.height ); + } + } +} +*/ \ No newline at end of file diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Utility/SF_ColorPicker.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/_Utility/SF_ColorPicker.cs.meta new file mode 100644 index 00000000..24d752e2 --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/_Utility/SF_ColorPicker.cs.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 58e7b6eb98a25e6459f959ec5d0ed3bd +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Utility/SF_Debug.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/_Utility/SF_Debug.cs new file mode 100644 index 00000000..5b925de6 --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/_Utility/SF_Debug.cs @@ -0,0 +1,23 @@ +using UnityEngine; +using System.Collections; +using System.Collections.Generic; + +namespace ShaderForge{ + + public static class SF_Debug { + + public static bool nodes = false; + public static bool window = false; + public static bool evalFlow = false; + public static bool screenshot = false; + public static bool ghostNodes = false; + public static bool nodeActions = false; + public static bool performance = false; + public static bool nodePreviews = false; + public static bool dynamicNodeLoad = false; + public static bool deserialization = false; + public static bool renderDataNodes = false; + + } + +} \ No newline at end of file diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Utility/SF_Debug.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/_Utility/SF_Debug.cs.meta new file mode 100644 index 00000000..46444f6d --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/_Utility/SF_Debug.cs.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 193f27cce31804ce9bc01ff6947651da +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Utility/SF_DraggableSeparator.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/_Utility/SF_DraggableSeparator.cs new file mode 100644 index 00000000..5ea4ba70 --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/_Utility/SF_DraggableSeparator.cs @@ -0,0 +1,102 @@ +using UnityEngine; +using UnityEditor; +using System.Collections; + +namespace ShaderForge { + [System.Serializable] + public class SF_DraggableSeparator : ScriptableObject { + + + [SerializeField] + public bool dragging = false; + + [SerializeField] + public Rect rect; + + [SerializeField] + public bool initialized = false; + + public void OnEnable() { + base.hideFlags = HideFlags.HideAndDontSave; + } + + [SerializeField] + int minX; + public int MinX { + get { + return minX; + } + set { + minX = value; + ClampX(); + } + } + + [SerializeField] + int maxX; + public int MaxX { + get { + return maxX; + } + set { + maxX = value; + ClampX(); + } + } + + public void Draw( int yPos, int height ) { + + rect.y = yPos; + rect.height = height; + rect.width = 7; + + GUI.Box( rect, "", EditorStyles.textField ); + Rect rHandle = new Rect( rect ); + rHandle.xMin += 0; + rHandle.xMax -= 0; + Rect uv = new Rect( rect ); + uv.x = 0; + uv.y = 0; + uv.width = 1; + uv.height /= SF_GUI.Handle_drag.height; + GUI.DrawTextureWithTexCoords( rHandle, SF_GUI.Handle_drag, uv ); + + if( rect.Contains( Event.current.mousePosition ) || dragging ) { + SF_GUI.AssignCursor( rect, MouseCursor.ResizeHorizontal ); + } + + if(Event.current.isMouse){ + + if( SF_GUI.ReleasedRawLMB() ) { + StopDrag(); + } + if( dragging ) { + UpdateDrag(); + } + if( SF_GUI.PressedLMB( rect ) ) { + StartDrag(); + } + } + } + + + void ClampX(){ + rect.x = Mathf.Clamp( rect.x, minX, maxX ); + } + int startDragOffset = 0; + void StartDrag() { + dragging = true; + startDragOffset = (int)(Event.current.mousePosition.x - rect.x); + } + void UpdateDrag() { + rect.x = Event.current.mousePosition.x - startDragOffset; + ClampX(); + } + void StopDrag() { + dragging = false; + } + + + } +} + diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Utility/SF_DraggableSeparator.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/_Utility/SF_DraggableSeparator.cs.meta new file mode 100644 index 00000000..d800eeff --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/_Utility/SF_DraggableSeparator.cs.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: dd68a761edae39b44918ba61f5f84440 +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Utility/SF_Extensions.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/_Utility/SF_Extensions.cs new file mode 100644 index 00000000..a31592e8 --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/_Utility/SF_Extensions.cs @@ -0,0 +1,531 @@ +using UnityEngine; +using UnityEditor; +using System.Collections; +using System.Collections.Generic; + +namespace ShaderForge{ + + public enum RectBorder{ + TopLeft, Top, TopRight, + Left, Center, Right, + BottomLeft, Bottom, BottomRight + } + + public static class SF_Extensions { + + + public static bool GetBit( this int value, int bit ){ + return ( ( 1 << bit ) & value ) == ( 1 << bit ); + } + + public static int SetBit( this int value, int bit, bool bitValue ) { + if(bitValue) + return value | ( 1 << bit ); + else + return value & ~( 1 << bit ); + } + + public static string ToColorMaskString( this int value ) { + // Indexed in reverse order + // A = 0, B = 1, G = 2, R = 3 + string s = ""; + if( value.GetBit( 0 ) ) + s = "A"; + if( value.GetBit( 1 ) ) + s = "B" + s; + if( value.GetBit( 2 ) ) + s = "G" + s; + if( value.GetBit( 3 ) ) + s = "R" + s; + if( s == "" ) + s = "0"; + return s; + } + + + public static float Average(this float[] floats){ + + if(floats == null) + return 0f; + if(floats.Length == 0) + return 0f; + if(floats.Length == 1) + return floats[0]; + + float avg = 0f; + for(int i=0;i(this List list, T obj){ + if(!list.Contains(obj)){ + list.Add(obj); + return true; + } + return false; + } + + + + // RECT CLASS + //----------- + + public static Rect MovedDown(this Rect r, int count = 1){ + for (int i = 0; i < count; i++) { + r.y += r.height; + } + return r; + } + public static Rect MovedUp(this Rect r, int count = 1){ + for (int i = 0; i < count; i++) { + r.y -= r.height; + } + return r; + } + public static Rect MovedRight(this Rect r, int count = 1){ + for (int i = 0; i < count; i++) { + r.x += r.width; + } + return r; + } + public static Rect MovedLeft(this Rect r, int count = 1){ + for (int i = 0; i < count; i++) { + r.x -= r.width; + } + return r; + } + + + public static Rect PadBottom(this Rect r, int pixels ){ + r.yMax -= pixels; + return r; + } + + public static Rect PadTop(this Rect r, int pixels ){ + r.yMin += pixels; + return r; + } + + public static Rect PadRight(this Rect r, int pixels ){ + r.xMax -= pixels; + return r; + } + + public static Rect PadLeft(this Rect r, int pixels ){ + r.xMin += pixels; + return r; + } + + public static Rect PadHorizontal(this Rect r, int pixels ){ + return r.PadLeft(pixels).PadRight(pixels); + } + + public static Rect PadVertical(this Rect r, int pixels ){ + return r.PadTop(pixels).PadBottom(pixels); + } + + public static Rect[] SplitHorizontal(this Rect r, float t, int padding = 0){ + return new Rect[2]{ + r.PadRight(Mathf.RoundToInt(r.width*(1f-t))).Pad(padding).PadRight(-Mathf.CeilToInt(padding/2f)), + r.PadLeft(Mathf.RoundToInt(r.width*t)).Pad(padding).PadLeft(-Mathf.FloorToInt(padding/2f)) + }; + } + public static Rect[] SplitVertical(this Rect r, float t, int padding = 0){ + return new Rect[2]{ + r.PadBottom(Mathf.RoundToInt(r.height*(1f-t))).Pad(padding).PadBottom(-Mathf.CeilToInt(padding/2f)), + r.PadTop(Mathf.RoundToInt(r.height*t)).Pad(padding).PadTop(-Mathf.FloorToInt(padding/2f)) + }; + } + public static Rect[] SplitFromLeft(this Rect r, int width, int padding = 0){ + return new Rect[2]{ + r.PadRight((int)(r.width-width)).Pad(padding).PadRight(-Mathf.CeilToInt(padding/2f)), + r.PadLeft(width).Pad(padding).PadLeft(-Mathf.FloorToInt(padding/2f)) + }; + } + + + public static Rect ClampWidth(this Rect r, int min, int max){ + r.width = Mathf.Clamp(r.width, min, max); + return r; + } + public static Rect ClampHeight(this Rect r, int min, int max){ + r.height = Mathf.Clamp(r.height, min, max); + return r; + } + public static Rect ClampSize(this Rect r, int min, int max){ + return r.ClampWidth(min,max).ClampHeight(min,max); + } + public static Rect ClampMinSize(this Rect r, int width, int height){ + if(r.width < width) + r.width = width; + if(r.height < height) + r.height = height; + return r; + } + public static Rect ClampMaxSize(this Rect r, int width, int height){ + if(r.width > width) + r.width = width; + if(r.height > height) + r.height = height; + return r; + } + public static Rect ClampMinSize(this Rect r, int size){ + if(r.width < size) + r.width = size; + if(r.height < size) + r.height = size; + return r; + } + public static Rect ClampMaxSize(this Rect r, int size){ + if(r.width > size) + r.width = size; + if(r.height > size) + r.height = size; + return r; + } + + public static Vector2 TopLeft(this Rect r){ + return new Vector2(r.x, r.y); + } + + public static Vector2 TopRight(this Rect r){ + return new Vector2(r.xMax, r.y); + } + + public static Vector2 BottomRight(this Rect r){ + return new Vector2(r.xMax, r.yMax); + } + + public static Vector2 BottomLeft(this Rect r){ + return new Vector2(r.x, r.yMax); + } + + + public static Rect Margin(this Rect r, int pixels){ + r.xMax += pixels; + r.xMin -= pixels; + r.yMax += pixels; + r.yMin -= pixels; + return r; + } + + public static Rect Pad(this Rect r, int pixels){ + return r.Margin(-pixels); + } + + public static Rect Lerp(this Rect r, Rect a, Rect b, float t ){ + r.x = Mathf.Lerp(a.x,b.x,t); + r.y = Mathf.Lerp(a.y,b.y,t); + r.width = Mathf.Lerp(a.width,b.width,t); + r.height = Mathf.Lerp(a.height,b.height,t); + return r; + } + + + + public static Rect ScaleSizeBy(this Rect rect, float scale){ + return rect.ScaleSizeBy(scale, rect.center); + } + public static Rect ScaleSizeBy(this Rect rect, float scale, Vector2 pivotPoint){ + Rect result = rect; + result.x -= pivotPoint.x; + result.y -= pivotPoint.y; + result.xMin *= scale; + result.xMax *= scale; + result.yMin *= scale; + result.yMax *= scale; + result.x += pivotPoint.x; + result.y += pivotPoint.y; + + return result; + } + + + public static Rect GetBorder(this Rect r, RectBorder border, int size, bool showResizeCursor = false){ + Rect retRect = r; + + // Dimensions + if(border == RectBorder.Left || border == RectBorder.Right) + retRect.height = r.height-size*2; + else + retRect.height = size; + + if(border == RectBorder.Top || border == RectBorder.Bottom) + retRect.width = r.width-size*2; + else + retRect.width = size; + + // Position + if(border == RectBorder.Left || border == RectBorder.Center || border == RectBorder.Right) + retRect.y += size; + if(border == RectBorder.BottomLeft || border == RectBorder.Bottom || border == RectBorder.BottomRight) + retRect.y += r.height-size; + + if(border == RectBorder.Top || border == RectBorder.Center || border == RectBorder.Bottom) + retRect.x += size; + if(border == RectBorder.TopRight || border == RectBorder.Right || border == RectBorder.BottomRight) + retRect.x += r.width-size; + + + if(showResizeCursor){ + + MouseCursor cursor; + + if(border == RectBorder.Top || border == RectBorder.Bottom) + cursor = MouseCursor.ResizeVertical; + else if(border == RectBorder.Left || border == RectBorder.Right) + cursor = MouseCursor.ResizeHorizontal; + else if(border == RectBorder.TopLeft || border == RectBorder.BottomRight) + cursor = MouseCursor.ResizeUpLeft; + else if(border == RectBorder.BottomLeft || border == RectBorder.TopRight) + cursor = MouseCursor.ResizeUpRight; + else + cursor = MouseCursor.MoveArrow; + + SF_GUI.AssignCursor(retRect,cursor); + + + } + + return retRect; + + } + + + + + + public static float ManhattanDistanceToPoint(this Rect r, Vector2 point){ + + if(r.Contains(point)){ + return 0f; + } + + Vector2 clampedPoint = new Vector2( + Mathf.Clamp(point.x, r.xMin, r.xMax), + Mathf.Clamp(point.y, r.yMin, r.yMax) + ); + + return ChebyshevDistance(clampedPoint, point); + + + } + + public static float ChebyshevDistance(Vector2 a, Vector2 b){ + return Mathf.Max(Mathf.Abs(a.x-b.x),Mathf.Abs(a.y-b.y)); + } + + public static float ManhattanDistance(Vector2 a, Vector2 b){ + return Mathf.Abs(a.x-b.x)+Mathf.Abs(a.y-b.y); + } + + + public static float ShortestManhattanDistanceToRects(this Vector2 point, Rect[] rects){ + + float shortest = float.MaxValue; + + for (int i = 0; i < rects.Length; i++) { + shortest = Mathf.Min (shortest, rects[i].ManhattanDistanceToPoint(point)); + } + + return shortest; + + } + + + public static float ShortestChebyshevDistanceToPoints(this Vector2 point, Vector2[] points){ + + float shortest = float.MaxValue; + + for (int i = 0; i < points.Length; i++) { + shortest = Mathf.Min (shortest, ManhattanDistance(point, points[i]) ); + } + + return shortest; + + + } + + + + + public static string ToCgMatrix( this Matrix4x4 mtx ) { + string s = "{\n"; + s += " {" + mtx[0, 0] + "," + mtx[0, 1] + "," + mtx[0, 2] + "," + mtx[0, 3] + "},\n"; + s += " {" + mtx[1, 0] + "," + mtx[1, 1] + "," + mtx[1, 2] + "," + mtx[1, 3] + "},\n"; + s += " {" + mtx[2, 0] + "," + mtx[2, 1] + "," + mtx[2, 2] + "," + mtx[2, 3] + "},\n"; + s += " {" + mtx[3, 0] + "," + mtx[3, 1] + "," + mtx[3, 2] + "," + mtx[3, 3] + "}\n}"; + return s; + } + + public static string SerializeToCSV( this Matrix4x4 mtx ) { + string s = ""; + s += "m00:" + mtx[0, 0] + ","; + s += "m01:" + mtx[0, 1] + ","; + s += "m02:" + mtx[0, 2] + ","; + s += "m03:" + mtx[0, 3] + ","; + s += "m10:" + mtx[1, 0] + ","; + s += "m11:" + mtx[1, 1] + ","; + s += "m12:" + mtx[1, 2] + ","; + s += "m13:" + mtx[1, 3] + ","; + s += "m20:" + mtx[2, 0] + ","; + s += "m21:" + mtx[2, 1] + ","; + s += "m22:" + mtx[2, 2] + ","; + s += "m23:" + mtx[2, 3] + ","; + s += "m30:" + mtx[3, 0] + ","; + s += "m31:" + mtx[3, 1] + ","; + s += "m32:" + mtx[3, 2] + ","; + s += "m33:" + mtx[3, 3]; + return s; + } + + public static Matrix4x4 DeserializeKeyValue( this Matrix4x4 mtx, string key, string value ) { + switch( key ) { + case "m00": + mtx[0, 0] = float.Parse( value ); + break; + case "m01": + mtx[0, 1] = float.Parse( value ); + break; + case "m02": + mtx[0, 2] = float.Parse( value ); + break; + case "m03": + mtx[0, 3] = float.Parse( value ); + break; + + case "m10": + mtx[1, 0] = float.Parse( value ); + break; + case "m11": + mtx[1, 1] = float.Parse( value ); + break; + case "m12": + mtx[1, 2] = float.Parse( value ); + break; + case "m13": + mtx[1, 3] = float.Parse( value ); + break; + + case "m20": + mtx[2, 0] = float.Parse( value ); + break; + case "m21": + mtx[2, 1] = float.Parse( value ); + break; + case "m22": + mtx[2, 2] = float.Parse( value ); + break; + case "m23": + mtx[2, 3] = float.Parse( value ); + break; + + case "m30": + mtx[3, 0] = float.Parse( value ); + break; + case "m31": + mtx[3, 1] = float.Parse( value ); + break; + case "m32": + mtx[3, 2] = float.Parse( value ); + break; + case "m33": + mtx[3, 3] = float.Parse( value ); + break; + } + return mtx; + } + + + + + + public static Vector2 xx( this Vector4 v ) { + return new Vector2( v.x, v.x ); + } + public static Vector2 xy( this Vector4 v ) { + return new Vector2( v.x, v.y ); + } + public static Vector2 xz( this Vector4 v ) { + return new Vector2( v.x, v.z ); + } + public static Vector2 xw( this Vector4 v ) { + return new Vector2( v.x, v.w ); + } + public static Vector2 yx( this Vector4 v ) { + return new Vector2( v.y, v.x ); + } + public static Vector2 yy( this Vector4 v ) { + return new Vector2( v.y, v.y ); + } + public static Vector2 yz( this Vector4 v ) { + return new Vector2( v.y, v.z ); + } + public static Vector2 yw( this Vector4 v ) { + return new Vector2( v.y, v.w ); + } + public static Vector2 zx( this Vector4 v ) { + return new Vector2( v.z, v.x ); + } + public static Vector2 zy( this Vector4 v ) { + return new Vector2( v.z, v.y ); + } + public static Vector2 zz( this Vector4 v ) { + return new Vector2( v.z, v.z ); + } + public static Vector2 zw( this Vector4 v ) { + return new Vector2( v.z, v.w ); + } + public static Vector2 wx( this Vector4 v ) { + return new Vector2( v.w, v.x ); + } + public static Vector2 wy( this Vector4 v ) { + return new Vector2( v.w, v.y ); + } + public static Vector2 wz( this Vector4 v ) { + return new Vector2( v.w, v.z ); + } + public static Vector2 ww( this Vector4 v ) { + return new Vector2( v.w, v.w ); + } + + // Do the rest as needed + public static Vector3 xyw( this Vector4 v ) { + return new Vector3( v.x, v.y, v.w ); + } + public static Vector3 yzx( this Vector4 v ) { + return new Vector3( v.y, v.z, v.x ); + } + + + + + + + + } + +} \ No newline at end of file diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Utility/SF_Extensions.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/_Utility/SF_Extensions.cs.meta new file mode 100644 index 00000000..505a53f7 --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/_Utility/SF_Extensions.cs.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: a985ed724d90c4d4dab68acab8a7817d +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Utility/SF_GUI.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/_Utility/SF_GUI.cs new file mode 100644 index 00000000..daedc907 --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/_Utility/SF_GUI.cs @@ -0,0 +1,718 @@ +using UnityEngine; +using UnityEditor; +using System.Collections; +using System.Reflection; +using System; +using System.Linq; + +namespace ShaderForge { + + public static class SF_GUI { + + + + + + static Matrix4x4 prevMatrix; + + public static Color[] outdatedStateColors = new Color[]{ + new Color(0.7f, 1f, 0.7f), + new Color(1f, 1f, 0.7f), + new Color(1f,0.7f,0.7f) + }; + + + public static void DrawLock(Rect r, string tooltip = null, TextAlignment align = TextAlignment.Right){ + if(Event.current.type != EventType.Repaint) + return; + + Color pCol = GUI.color; + GUI.color = Color.white; + SF_Styles.IconLock.Draw(r, false, true, true, false); + + if(tooltip != null && r.Contains(Event.current.mousePosition) ){ + + GUIStyle style = EditorStyles.miniButton; + + r.width = style.CalcSize(new GUIContent(tooltip)).x + 8; + r.height = style.CalcSize(new GUIContent(tooltip)).y + 4; + + r = r.MovedUp(); + + if(align == TextAlignment.Left){ + r.x = (r.MovedLeft().x + r.x)/2f; + } + + + GUI.color = new Color(1f,1f,1f,0.8f); + GUI.Box(r, tooltip, style); + + } + + GUI.color = pCol; + + + } + + private static Texture2D LoadTexture(string path, string name){ + + //AssetDatabase.LoadAssetAtPath( + + return SF_Resources.Load(path+name); + + //return (Texture2D)Resources.Load(path + name, typeof(Texture2D) ); // TODO: This has to change into something that's not using resources + } + + + private static Texture2D vectorIconOverlay; + public static Texture2D VectorIconOverlay{ + get{ + if( vectorIconOverlay == null ) + vectorIconOverlay = SF_Resources.LoadNodeIcon("Data/node_3d_data_mask"); + return vectorIconOverlay; + } + } + + + private static Texture2D handle_drag; + public static Texture2D Handle_drag { + get { + if( handle_drag == null ) + handle_drag = SF_Resources.LoadInterfaceIcon("handle_drag"); + return handle_drag; + } + } + + + + private static Texture2D logo; + public static Texture2D Logo { + get { + if( logo == null ) + logo = SF_Resources.LoadInterfaceIcon( SkinSuffix("logo") ); + return logo; + } + } + + private static Texture2D icon; + public static Texture2D Icon { + get { + if( icon == null ) + icon = SF_Resources.LoadInterfaceIcon( SkinSuffix( "icon" ) ); + return icon; + } + } + + private static Texture2D toggle_check_icon; + public static Texture2D Toggle_check_icon { + get { + if( toggle_check_icon == null ) + toggle_check_icon = SF_Resources.LoadInterfaceIcon( SkinSuffix( "chk" ) ); + return toggle_check_icon; + } + } + + private static Texture2D screenshot_icon; + public static Texture2D Screenshot_icon { + get { + if( screenshot_icon == null ) + screenshot_icon = SF_Resources.LoadInterfaceIcon( SkinSuffix( "screenshot_icon" ) ); + return screenshot_icon; + } + } + + + + + + + private static Texture2D shader_preset_icon_custom; + public static Texture2D Shader_preset_icon_custom { + get { + if( shader_preset_icon_custom == null ) + shader_preset_icon_custom = SF_Resources.LoadInterfaceIcon( "preset_custom" ); + return shader_preset_icon_custom; + } + } + + private static Texture2D shader_preset_icon_litbasic; + public static Texture2D Shader_preset_icon_litbasic { + get { + if( shader_preset_icon_litbasic == null ) + shader_preset_icon_litbasic = SF_Resources.LoadInterfaceIcon( "preset_litbasic" ); + return shader_preset_icon_litbasic; + } + } + + private static Texture2D shader_preset_icon_litpbr; + public static Texture2D Shader_preset_icon_litpbr { + get { + if( shader_preset_icon_litpbr == null ) + shader_preset_icon_litpbr = SF_Resources.LoadInterfaceIcon( "preset_litpbr" ); + return shader_preset_icon_litpbr; + } + } + + private static Texture2D shader_preset_icon_particleadditive; + public static Texture2D Shader_preset_icon_particleadditive { + get { + if( shader_preset_icon_particleadditive == null ) + shader_preset_icon_particleadditive = SF_Resources.LoadInterfaceIcon( SkinSuffix("preset_particleadditive") ); + return shader_preset_icon_particleadditive; + } + } + + private static Texture2D shader_preset_icon_particlealphablended; + public static Texture2D Shader_preset_icon_particlealphablended { + get { + if( shader_preset_icon_particlealphablended == null ) + shader_preset_icon_particlealphablended = SF_Resources.LoadInterfaceIcon( SkinSuffix("preset_particlealphablended") ); + return shader_preset_icon_particlealphablended; + } + } + + private static Texture2D shader_preset_icon_particlemultiplicative; + public static Texture2D Shader_preset_icon_particlemultiplicative { + get { + if( shader_preset_icon_particlemultiplicative == null ) + shader_preset_icon_particlemultiplicative = SF_Resources.LoadInterfaceIcon( SkinSuffix("preset_particlemultiplicative") ); + return shader_preset_icon_particlemultiplicative; + } + } + + private static Texture2D shader_preset_icon_sky; + public static Texture2D Shader_preset_icon_sky { + get { + if( shader_preset_icon_sky == null ) + shader_preset_icon_sky = SF_Resources.LoadInterfaceIcon( "preset_sky" ); + return shader_preset_icon_sky; + } + } + + private static Texture2D shader_preset_icon_sprite; + public static Texture2D Shader_preset_icon_sprite { + get { + if( shader_preset_icon_sprite == null ) + shader_preset_icon_sprite = SF_Resources.LoadInterfaceIcon( "preset_sprite" ); + return shader_preset_icon_sprite; + } + } + + private static Texture2D shader_preset_icon_unlit; + public static Texture2D Shader_preset_icon_unlit { + get { + if( shader_preset_icon_unlit == null ) + shader_preset_icon_unlit = SF_Resources.LoadInterfaceIcon( "preset_unlit" ); + return shader_preset_icon_unlit; + } + } + + private static Texture2D shader_preset_icon_highlight; + public static Texture2D Shader_preset_icon_highlight { + get { + if( shader_preset_icon_highlight == null ) + shader_preset_icon_highlight = SF_Resources.LoadInterfaceIcon( "preset_highlight" ); + return shader_preset_icon_highlight; + } + } + + private static Texture2D shader_preset_icon_posteffect; + public static Texture2D Shader_preset_icon_posteffect { + get { + if( shader_preset_icon_posteffect == null ) + shader_preset_icon_posteffect = SF_Resources.LoadInterfaceIcon( "preset_posteffect" ); + return shader_preset_icon_posteffect; + } + } + + + + + + + private static Texture2D inst_vert; + public static Texture2D Inst_vert { + get { + if( inst_vert == null ) + inst_vert = SF_Resources.LoadInterfaceIcon( SkinSuffix( "inst_vert" ) ); + return inst_vert; + } + } + + private static Texture2D inst_vert_tex; + public static Texture2D Inst_vert_tex { + get { + if( inst_vert_tex == null ) + inst_vert_tex = SF_Resources.LoadInterfaceIcon( SkinSuffix( "inst_vert_tex" ) ); + return inst_vert_tex; + } + } + + private static Texture2D inst_frag; + public static Texture2D Inst_frag { + get { + if( inst_frag == null ) + inst_frag = SF_Resources.LoadInterfaceIcon( SkinSuffix("inst_frag" ) ); + return inst_frag; + } + } + + private static Texture2D inst_frag_tex; + public static Texture2D Inst_frag_tex { + get { + if( inst_frag_tex == null ) + inst_frag_tex = SF_Resources.LoadInterfaceIcon( SkinSuffix( "inst_frag_tex" ) ); + return inst_frag_tex; + } + } + + public static void DrawTextureTiled(Rect r, Texture2D tex, bool local = true){ + Rect tCoords = new Rect( + local ? 0 : (float)r.x/(float)tex.width, + local ? 0 : (float)r.y/(float)tex.height, + (float)r.width/(float)tex.width, + (float)r.height/(float)tex.height + ); + GUI.DrawTextureWithTexCoords(r,tex,tCoords); + } + + + public static string SkinSuffix(string s) { + return s + ( SF_GUI.ProSkin ? "" : "_light" ); + } + + + /* + public static void StartZoomPanel( float zoom, Rect rect ) { + float zoomInv = 1f / zoom; + + GUI.EndGroup(); // Leave parent group to avoid clipping issues + Rect clippedArea = rect.ScaleSizeBy( zoomInv, rect.TopLeft() ); + + //clippedArea.x -= clippedArea.width * zoomInv * 0.25f; + //clippedArea.y -= clippedArea.height * zoomInv * 0.25f; + clippedArea.width *= zoom; + clippedArea.height *= zoom; + clippedArea.y += GetEditorTabHeight(); + GUI.BeginGroup( clippedArea, EditorStyles.numberField ); + + prevMatrix = GUI.matrix; + Matrix4x4 Translation = Matrix4x4.TRS( new Vector3( clippedArea.x, clippedArea.y, 0 ), Quaternion.identity, Vector3.one ); + Matrix4x4 Scale = Matrix4x4.Scale( new Vector3( zoom, zoom, zoom ) ); + GUI.matrix = Translation * Scale * Translation.inverse * GUI.matrix; + } + + public static void EndZoomPanel() { + GUI.matrix = prevMatrix; + GUI.EndGroup(); + GUI.BeginGroup( new Rect( 0.0f, GetEditorTabHeight(), Screen.width, Screen.height ) ); // Remake parent + } + * */ + + + public static bool AcceptedNewShaderReplaceDialog() { + return EditorUtility.DisplayDialog( "Delete existing shader?", "This shader was not created in Shader Forge. Are you sure you want to remove all existing shader data and open it in Shader Forge?", "Yes", "Cancel" ); + } + + + + public static int GetEditorTabHeight() { + return 21; // TODO: This is correct when docked, not floating + } + + public static void AssignCursorForPreviousRect( MouseCursor cursor ) { + EditorGUIUtility.AddCursorRect( GUILayoutUtility.GetLastRect(), cursor ); + } + + public static void AssignCursor( Rect r, MouseCursor cursor ) { + EditorGUIUtility.AddCursorRect( r, cursor ); + } + + public static bool PressedLMB( Rect r ) { + return ( PressedLMB() && r.Contains(Event.current.mousePosition)); + } + + public static bool PressedLMB() { + return ( Event.current.type == EventType.MouseDown ) && ( Event.current.button == 0 ); + } + + public static bool ReleasedLMB() { + return ( Event.current.type == EventType.MouseUp ) && ( Event.current.button == 0 ); + } + + public static bool PressedMMB() { + return ( Event.current.type == EventType.MouseDown ) && ( Event.current.button == 2 ); + } + + public static bool ReleasedRawMMB() { + return ( Event.current.rawType == EventType.MouseUp ) && ( Event.current.button == 2 ); + } + + public static bool ReleasedRawLMB() { + return ( Event.current.rawType == EventType.MouseUp ) && ( Event.current.button == 0 ); + } + + public static bool ReleasedRawRMB() { + return ( Event.current.rawType == EventType.MouseUp ) && ( Event.current.button == 1 ); + } + + public static bool PressedRMB() { + return ( Event.current.type == EventType.MouseDown ) && ( Event.current.button == 1 ); + } + + public static bool ReleasedRMB() { + return ( Event.current.type == EventType.MouseUp ) && ( Event.current.button == 1 ); + } + + public static bool HoldingAlt() { + return (Event.current.modifiers & EventModifiers.Alt) != 0; // Alt is held + } + + public static bool HoldingBoxSelect() { + return HoldingAlt(); // Alt is held. TODO: Make a toggle for (Alt cam) vs (Alt select) + } + + public static bool HoldingShift() { + return ( Event.current.modifiers & EventModifiers.Shift ) != 0; // Shift is held + } + + public static bool HoldingControl() { + if( Application.platform == RuntimePlatform.OSXEditor ) + return ( Event.current.modifiers & EventModifiers.Command ) != 0; // Command is held + else { + return ( Event.current.control ); // Control is held + } + + } + + public static bool PressedDelete(){ + if(Event.current.type != EventType.KeyDown) + return false; + + if(Event.current.keyCode == KeyCode.Delete) // Windows / Mac extended keyboard delete + return true; + + bool holdingCommand = HoldingControl(); + bool pressedBackspace = (Event.current.keyCode == KeyCode.Backspace); + + if(holdingCommand && pressedBackspace) // Mac laptop style delete + return true; + + return false; + + } + + public static bool PressedCameraMove(){ + return ( PressedLMB() || PressedMMB() ); + } + + public static bool ReleasedCameraMove(){ + return ( ReleasedRawLMB() || ReleasedRawMMB() ); + } + + public static bool MultiSelectModifierHeld(){ + return ( HoldingShift() || HoldingControl() ); + } + + public const byte ColBgPro = (byte)56; + public const byte ColBgFree = (byte)194; + public static void UseBackgroundColor() { + byte v = EditorGUIUtility.isProSkin ? ColBgPro : ColBgFree; + GUI.color = new Color32( v, v, v, (byte)255 ); + } + + public static Color selectionColor = new Color32( (byte)41, (byte)123, (byte)194, (byte)255 ); + public static Color selectionColorBright = new Color32( (byte)54, (byte)162, (byte)255, (byte)255 ); + public static Color selectionColorBrighter = new Color32( (byte)175, (byte)218, (byte)255, (byte)255 ); + /* public static Color SelectionColor { + get { + if( selectionColor == null ) + selectionColor + return selectionColor; + } + }*/ + + public static int WidthOf(GUIContent s, GUIStyle style){ + return (int)style.CalcSize( s ).x; + } + + public static int WidthOf( string s, GUIStyle style ) { + return (int)style.CalcSize( new GUIContent(s) ).x; + } + + public static System.Enum LabeledEnumField( Rect r, string label, System.Enum enumVal, GUIStyle style, bool zoomCompensate = false ) { + return LabeledEnumField( r, new GUIContent(label), enumVal, style, zoomCompensate); + } + + public static void MoveRight( ref Rect r, int newWidth ) { + r.x += r.width; + r.width = newWidth; + } + + public static int LabeledEnumFieldNamed( Rect r, string[] names, GUIContent label, int enumVal, GUIStyle style ) { + Rect leftRect = new Rect( r ); + Rect rightRect = new Rect( r ); + int width = WidthOf( label, style ) + 4; + leftRect.width = width; + rightRect.xMin += width; + GUI.Label( leftRect, label, style ); + return EditorGUI.Popup( rightRect, (int)enumVal, names ); + } + + public static System.Enum LabeledEnumField(Rect r, GUIContent label, System.Enum enumVal, GUIStyle style, bool zoomCompensate = false) { + Rect leftRect = new Rect( r ); + Rect rightRect = new Rect( r ); + int width = WidthOf( label, style) + 4; + leftRect.width = width; + rightRect.xMin += width; + GUI.Label( leftRect, label, style ); + + return SF_GUI.EnumPopup( rightRect, GUIContent.none, enumVal, EditorStyles.popup, zoomCompensate); + //return EditorGUI.EnumPopup( rightRect, GUIContent.none, enumVal, EditorStyles.popup ); + //return EnumPopupZoomCompensated( rightRect, enumVal ); + + } + + + + + // UnityEditor.EditorGUI + + public static Enum EnumPopup(Rect position, GUIContent label, Enum selected, GUIStyle style, bool zoomCompensate = false) + { + + + Type type = selected.GetType(); + if (!type.IsEnum) + { + throw new Exception("parameter _enum must be of type System.Enum"); + } + string[] names = Enum.GetNames(type); + int num = Array.IndexOf(names, Enum.GetName(type, selected)); + Matrix4x4 prevMatrix = Matrix4x4.identity; + if(zoomCompensate){ + prevMatrix = GUI.matrix; + GUI.matrix = Matrix4x4.identity; + } + num = EditorGUI.Popup(position, label, num, TempContent(( + from x in names + select ObjectNames.NicifyVariableName(x)).ToArray()), style); + if (num < 0 || num >= names.Length) + { + if(zoomCompensate) + GUI.matrix = prevMatrix; + return selected; + } + if(zoomCompensate) + GUI.matrix = prevMatrix; + return (Enum)Enum.Parse(type, names[num]); + } + + /* + public static int Popup(Rect position, GUIContent label, int selectedIndex, GUIContent[] displayedOptions, GUIStyle style) + { + int controlID = GUIUtility.GetControlID(EditorGUI.s_PopupHash, EditorGUIUtility.native, position); + return EditorGUI.DoPopup(EditorGUI.PrefixLabel(position, controlID, label), controlID, selectedIndex, displayedOptions, style); + }*/ + + + // UnityEditor.EditorGUIUtility + private static GUIContent[] TempContent(string[] texts) + { + GUIContent[] array = new GUIContent[texts.Length]; + for (int i = 0; i < texts.Length; i++) + { + array[i] = new GUIContent(texts[i]); + } + return array; + } + + + + /* + public static Enum EnumPopupZoomCompensated(Rect r, Enum selected ){ + + // TODO: Custom enum popup proper zoom positioning + + if(GUI.Button(r,selected.ToString(),EditorStyles.popup)){ + + GenericMenu gm = new GenericMenu(); + //gm.AddItem(selected); + + Array enumList = Enum.GetValues(selected.GetType()); + + for(int i=0;i < enumList.Length;i++){ + + gm.AddItem( new GUIContent(enumList.GetValue(i).ToString()), i == Convert.ToInt32(selected), (object o)=>{Debug.Log(o.ToString());},"Test " + i); + + + } + + gm.ShowAsContext(); + + + + } + + + + return selected; + + } +*/ + + public static void FillBackground( Rect r ) { + Color pCol = GUI.color; + SF_GUI.UseBackgroundColor(); + GUI.DrawTexture( r, EditorGUIUtility.whiteTexture ); + GUI.color = pCol; + } + + + public static void EnterableFloatField( SF_Node n, Rect r, ref float val, GUIStyle style ) { + if( style == null ) + style = EditorStyles.textField; + string field_name = n.GetType().ToString() + "_" + n.id; + + + GUI.SetNextControlName( field_name ); + EditorGUI.BeginChangeCheck(); + val = EditorGUI.FloatField( r, val, style ); + + + bool pressedEnter = Event.current.keyCode == KeyCode.Return && Event.current.type == EventType.KeyDown; + + if( pressedEnter ) { + EditorGUI.EndChangeCheck(); + //Debug.Log("Pressed enter with focus on " + GUI.GetNameOfFocusedControl() + ", should have been " + field_name); + if(GUI.GetNameOfFocusedControl() == field_name){ + //Debug.Log("Pressed enter!"); + n.OnUpdateNode( NodeUpdateType.Hard ); + } + } else if( EditorGUI.EndChangeCheck() ) { + n.OnUpdateNode( NodeUpdateType.Soft ); + } + } + + + + + + + + public static void EnterableTextField( SF_Node n, Rect r, ref string str, GUIStyle style, bool update = true ) { + if( style == null ) + style = EditorStyles.textField; + string field_name = n.GetType().ToString() + "_txt_" + n.id; + + + GUI.SetNextControlName( field_name ); + EditorGUI.BeginChangeCheck(); + str = EditorGUI.TextField( r, str, style ); + + bool pressedEnter = Event.current.keyCode == KeyCode.Return; + + if(update){ + if( pressedEnter ) { + if( GUI.GetNameOfFocusedControl() == field_name ) + n.OnUpdateNode( NodeUpdateType.Hard ); + EditorGUI.EndChangeCheck(); + } else if( EditorGUI.EndChangeCheck() ) { + n.OnUpdateNode( NodeUpdateType.Soft ); + } + } else if(EditorGUI.EndChangeCheck()){ + n.editor.ShaderOutdated = UpToDateState.OutdatedSoft; + } + + } + + + + + + public static void ConditionalToggle(Rect r, ref bool value, bool usableIf, bool disabledDisplayValue, string label){ + if(usableIf){ + value = GUI.Toggle(r, value, label); + } else { + GUI.enabled = false; + GUI.Toggle(r, disabledDisplayValue, label); + GUI.enabled = true; + } + } + + + + + + + + public static int ContentScaledToolbar(Rect r, string label, int selected, string[] labels ) { + + r.height = 15; + + Rect rLeft = new Rect( r ); + Rect rRight = new Rect( r ); + + rLeft.width = SF_GUI.WidthOf( label, EditorStyles.miniLabel )+4; + rRight.width = r.width - rLeft.width; + rRight.x += rLeft.width; + + GUI.Label( rLeft, label, EditorStyles.miniLabel); + + + // Full pixel width of strings: + float[] lblPxWidth = new float[labels.Length]; + float pxWidthTotal = 0; + for( int i = 0; i < labels.Length; i++ ) { + lblPxWidth[i] = SF_GUI.WidthOf( labels[i], EditorStyles.miniButtonMid ); + pxWidthTotal += lblPxWidth[i]; + } + + // Scale all buttons to fit the rect + float scale = rRight.width / pxWidthTotal; + for( int i = 0; i < labels.Length; i++ ) { + lblPxWidth[i] *= scale; + } + + + + + GUIStyle style = EditorStyles.miniButtonLeft; + int retval = selected; + + Rect rTemp = new Rect(rRight); + + for( int i = 0; i < labels.Length; i++ ) { + + rTemp.width = lblPxWidth[i]; + + if( i == labels.Length - 1 ) { + style = EditorStyles.miniButtonRight; + } else if( i > 0 ) { + style = EditorStyles.miniButtonMid; + } + + bool prev = selected == i; + bool newVal = GUI.Toggle( rTemp, prev, labels[i], style ); + if( newVal != prev ) { + retval = i; + } + + rTemp.x += rTemp.width; + } + GUI.color = Color.white; + return retval; + + } + + + + public static bool ProSkin { + get{ + return EditorGUIUtility.isProSkin; + } + } + + } +} + diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Utility/SF_GUI.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/_Utility/SF_GUI.cs.meta new file mode 100644 index 00000000..d9933b0c --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/_Utility/SF_GUI.cs.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 729a144b29ff13241b778e1946cde443 +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Utility/SF_Link.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/_Utility/SF_Link.cs new file mode 100644 index 00000000..14910d30 --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/_Utility/SF_Link.cs @@ -0,0 +1,55 @@ + +using UnityEngine; + +// OLD: [Source][Con] <---- [Con][Target] +// NEW: [Target][Con] ----> [Con][Source] + +namespace ShaderForge{ + public struct SF_Link { + public int sNode; // Source + string sCon; + public int tNode; // Target + string tCon; + + public SF_Link( int sNode, string linkData ) { + this.sNode = sNode; + string[] split = linkData.Split( '-' ); + if(split.Length != 3){ + Debug.Log("Invalid link on node " + sNode + ". Expected 3 entries, found " + split.Length + ". Link Data = [" + linkData + "]"); + } + sCon = split[0]; + tNode = int.Parse( split[1] ); + tCon = split[2]; + } + + public void Establish( SF_Editor editor, LinkingMethod linkMethod = LinkingMethod.NoUpdate ) { + SF_Node source = editor.GetNodeByID( sNode ); + SF_Node target = editor.GetNodeByID( tNode ); + // Debug.Log( "Linking " + target.nodeName + " <- " + source.nodeName ); + + target.GetConnectorByID(tCon).LinkTo( source.GetConnectorByID(sCon), linkMethod ); + } + + + + public void Remap(int[] oldIDs, int[] newIDs){ + // Source id switching + for(int i=0; i(string name) where T : UnityEngine.Object { + return (T)AssetDatabase.LoadAssetAtPath(InternalResourcesPath + name, typeof(T) ); + } + + public static UnityEngine.Object[] LoadAll(string name) { + return AssetDatabase.LoadAllAssetsAtPath(InternalResourcesPath + name ); + } + + public static Texture2D LoadInterfaceIcon(string name){ + string path = InternalResourcesPath + "Interface/" + name; + Texture2D retTex = (Texture2D)AssetDatabase.LoadAssetAtPath(path + ".png", typeof(Texture2D) ); + if(retTex == null){ + retTex = (Texture2D)AssetDatabase.LoadAssetAtPath(path + ".tga", typeof(Texture2D) ); + } + return retTex; + } + + public static Texture2D LoadNodeIcon(string name){ + return (Texture2D)AssetDatabase.LoadAssetAtPath(InternalResourcesPath + "Interface/Nodes/" + name + ".png", typeof(Texture2D) ); + } + + + private static string internalResourcesPath = ""; + public static string InternalResourcesPath{ + get{ + if(string.IsNullOrEmpty(internalResourcesPath)){ + string path; + if(SearchForInternalResourcesPath(out path)){ + internalResourcesPath = path; + } else { + Debug.LogError("Unable to locate the internal resources folder. Make sure your Shader Forge installation is intact"); + SF_Editor.instance.Close(); + } + } + return internalResourcesPath; + } + } + + + + private static bool SearchForInternalResourcesPath( out string path ){ + path = ""; + string partialPath = "/ShaderForge/Editor/InternalResources/"; + string foundPath = null; + foreach(string s in AssetDatabase.GetAllAssetPaths()){ + if(s.Contains(partialPath)){ + foundPath = s; + break; + } + } + if(foundPath == null){ + return false; + } + string[] split = foundPath.Replace(partialPath,"#").Split('#'); + path = split[0] + partialPath; + return true; + } + + + + + } +} diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Utility/SF_Resources.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/_Utility/SF_Resources.cs.meta new file mode 100644 index 00000000..2a7a25bd --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/_Utility/SF_Resources.cs.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 93a8198ea76894b6c89ca317cc15acb9 +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Utility/SF_Styles.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/_Utility/SF_Styles.cs new file mode 100644 index 00000000..654313fc --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/_Utility/SF_Styles.cs @@ -0,0 +1,337 @@ +using UnityEngine; +using UnityEditor; +using System.Collections; +using System.Reflection; +using System; + +namespace ShaderForge { + public static class SF_Styles { + + private static Texture2D _iconErrorSmall; + public static Texture2D IconErrorSmall { + get { + return ( _iconErrorSmall = _iconErrorSmall ?? EditorGUIUtility.FindTexture( "console.erroricon.sml" ) ); + } + } + private static Texture2D _iconWarningSmall; + public static Texture2D IconWarningSmall { + get { + return ( _iconWarningSmall = _iconWarningSmall ?? EditorGUIUtility.FindTexture( "console.warnicon.sml" ) ); + } + } + private static GUIStyle _iconLock; + public static GUIStyle IconLock{ + get{ + return ( _iconLock = _iconLock ?? new GUIStyle("IN LockButton") ); + } + } + + private static GUIStyle miniLabelRight; + public static GUIStyle MiniLabelRight { + get { + if( miniLabelRight == null ) { + miniLabelRight = new GUIStyle( EditorStyles.miniLabel ); + miniLabelRight.alignment = TextAnchor.MiddleRight; + } + return miniLabelRight; + } + } + + + + private static GUIStyle largeTextField; + public static GUIStyle LargeTextField { + get { + if( largeTextField == null ) { + largeTextField = new GUIStyle( EditorStyles.textField ); + largeTextField.fontSize = 20; + largeTextField.alignment = TextAnchor.MiddleLeft; + } + return largeTextField; + } + } + + private static GUIStyle smallTextArea; + public static GUIStyle SmallTextArea { + get { + if( smallTextArea == null ) { + smallTextArea = new GUIStyle( EditorStyles.miniLabel ); + smallTextArea.wordWrap = true; + smallTextArea.padding = new RectOffset( 5, 5, 3, 3 ); + smallTextArea.fontSize = EditorStyles.miniLabel.fontSize; + } + return smallTextArea; + } + } + + + private static GUIStyle largeTextFieldNoFrame; + public static GUIStyle LargeTextFieldNoFrame { + get { + if( largeTextFieldNoFrame == null ) { + largeTextFieldNoFrame = new GUIStyle( EditorStyles.label ); + largeTextFieldNoFrame.fontSize = LargeTextField.fontSize; + largeTextFieldNoFrame.alignment = LargeTextField.alignment; + + } + return largeTextFieldNoFrame; + } + } + + private static GUIStyle richTextField; + public static GUIStyle RichTextField { + get { + if( richTextField == null ) { + richTextField = new GUIStyle( EditorStyles.textField ); + richTextField.richText = true; + } + return richTextField; + } + } + + private static GUIStyle richLabel; + public static GUIStyle RichLabel { + get { + if( richLabel == null ) { + richLabel = new GUIStyle( EditorStyles.label ); + richLabel.richText = true; + } + return richLabel; + } + } + + + private static GUIStyle instructionCountRenderer; + public static GUIStyle InstructionCountRenderer { + get { + if( instructionCountRenderer == null ) { + instructionCountRenderer = new GUIStyle( EditorStyles.miniLabel ); + InstructionCountRenderer.alignment = TextAnchor.MiddleRight; + } + return instructionCountRenderer; + } + } + + + private static GUIStyle codeTextArea; + public static GUIStyle CodeTextArea { + get { + if( codeTextArea == null ) { + codeTextArea = new GUIStyle( GUI.skin.textArea ); + codeTextArea.font = SF_Resources.Load( SF_Resources.pFonts + "VeraMono.ttf" ); + codeTextArea.padding = new RectOffset(3,3,3,0); + codeTextArea.wordWrap = false; + } + return codeTextArea; + } + } + + // Bitstream Vera Sans Mono + + + private static GUIStyle miniLabelOverflow; + public static GUIStyle MiniLabelOverflow { + get { + if( miniLabelOverflow == null ) { + miniLabelOverflow = new GUIStyle( EditorStyles.miniLabel ); + miniLabelOverflow.clipping = TextClipping.Overflow; + } + return miniLabelOverflow; + } + } + + private static GUIStyle creditsLabelText; + public static GUIStyle CreditsLabelText { + get { + if( creditsLabelText == null ) { + creditsLabelText = new GUIStyle( EditorStyles.label ); + creditsLabelText.alignment = TextAnchor.MiddleLeft; + creditsLabelText.fixedHeight = 16; + creditsLabelText.padding = new RectOffset(0,0,6,0); + creditsLabelText.clipping = TextClipping.Overflow; + } + return creditsLabelText; + } + } + + private static GUIStyle boldEnumField; + public static GUIStyle BoldEnumField{ + get{ + if(boldEnumField == null){ + boldEnumField = new GUIStyle((GUIStyle)"MiniPopup"); + boldEnumField.fontStyle = FontStyle.Bold; + Color c = SF_GUI.ProSkin ? (Color)new Color32( 161, 225, 87, 255 ) : ((Color)new Color32( 161, 225, 87, 255 ))*0.5f; // Used for variable precision + c.a = 1; + boldEnumField.normal.textColor = c; + boldEnumField.active.textColor = c; + boldEnumField.focused.textColor = c; + + } + return boldEnumField; + } + } + + + private static GUIStyle nodeNameLabelText; + public static GUIStyle GetNodeNameLabelText() { + if( nodeNameLabelText == null ) { + nodeNameLabelText = new GUIStyle( EditorStyles.largeLabel ); + nodeNameLabelText.fontStyle = FontStyle.Bold; + nodeNameLabelText.fontSize = 11; + nodeNameLabelText.alignment = TextAnchor.MiddleCenter; + nodeNameLabelText.normal.textColor = new Color( 0.8f, 0.8f, 0.8f, 1f ); + } + return nodeNameLabelText; + } + + + private static GUIStyle nodeCommentLabelText; + public static GUIStyle GetNodeCommentLabelText() { + if( nodeCommentLabelText == null ) { + nodeCommentLabelText = new GUIStyle( EditorStyles.largeLabel ); + nodeCommentLabelText.fontStyle = FontStyle.Italic; + nodeCommentLabelText.fontSize = 16; + nodeCommentLabelText.alignment = TextAnchor.LowerLeft; + float col = SF_GUI.ProSkin ? 1f : 0f; + nodeCommentLabelText.normal.textColor = new Color( col, col, col, 0.3f ); + } + return nodeCommentLabelText; + } + + private static GUIStyle nodeScreenshotTitleText; + public static GUIStyle GetNodeScreenshotTitleText() { + if( nodeScreenshotTitleText == null ) { + //nodeScreenshotTitleText = new GUIStyle( NodeStyle ); + nodeScreenshotTitleText = new GUIStyle(EditorStyles.boldLabel); + nodeScreenshotTitleText.fontSize = 14; + nodeScreenshotTitleText.alignment = TextAnchor.LowerCenter; + nodeScreenshotTitleText.clipping = TextClipping.Overflow; + float col = SF_GUI.ProSkin ? 1f : 0f; + nodeScreenshotTitleText.normal.textColor = new Color( col, col, col, 0.5f ); + } + return nodeScreenshotTitleText; + } + + + + private static GUIStyle nodeCommentLabelTextField; + public static GUIStyle GetNodeCommentLabelTextField() { + if( nodeCommentLabelTextField == null ) { + nodeCommentLabelTextField = new GUIStyle( EditorStyles.textField ); + nodeCommentLabelTextField.fontStyle = FontStyle.Italic; + nodeCommentLabelTextField.fontSize = 16; + nodeCommentLabelTextField.alignment = TextAnchor.LowerLeft; + nodeCommentLabelTextField.normal.textColor = new Color( 1f, 1f, 1f, 0.3f ); + } + return nodeCommentLabelTextField; + } + + + private static GUIStyle nodeNameLabelBackground; + public static Color nodeNameLabelBackgroundColor = new Color( 0.7f, 0.7f, 0.7f ); + public static GUIStyle GetNodeNameLabelBackground() { + if( nodeNameLabelBackground == null ) { + nodeNameLabelBackground = new GUIStyle( EditorStyles.textField ); + } + return nodeNameLabelBackground; + } + + private static GUIStyle highlightStyle; + public static GUIStyle HighlightStyle { + get { + if( highlightStyle == null ) { + //if( Application.unityVersion.StartsWith("4") ) + highlightStyle = new GUIStyle( (GUIStyle)"flow node 0 on" ); + } + return highlightStyle; + } + } + + + private static GUIStyle selectionStyle; + public static GUIStyle SelectionStyle { + get { + if( selectionStyle == null ) { + //if( Application.unityVersion.StartsWith("4") ) + selectionStyle = new GUIStyle( (GUIStyle)"SelectionRect" ); + } + return selectionStyle; + } + } + + private static GUIStyle nodeStyle; + public static GUIStyle NodeStyle { + get { + if( nodeStyle == null ) { + //if( Application.unityVersion.StartsWith( "4" ) ) + nodeStyle = new GUIStyle( (GUIStyle)"flow node 0" ); + nodeStyle.alignment = TextAnchor.UpperCenter; + if(Application.platform == RuntimePlatform.WindowsEditor) + nodeStyle.fontSize = 9; + else + nodeStyle.fontSize = 11; + nodeStyle.font = EditorStyles.standardFont; + nodeStyle.fontStyle = FontStyle.Bold; + nodeStyle.padding.top = 23; + nodeStyle.padding.left = 1; + //nodeStyle.margin.right = 8; + //nodeStyle.border.right = 25; + nodeStyle.border.left = 25; + if(SF_GUI.ProSkin) + nodeStyle.normal.textColor = new Color( 1f, 1f, 1f, 0.75f ); + else + nodeStyle.normal.textColor = new Color( 0f, 0f, 0f, 0.7f ); + + } + + return nodeStyle; + } + } + + + private static GUIStyle nodeStyleDiscrete; + public static GUIStyle NodeStyleDiscrete{ + get { + if( nodeStyleDiscrete == null ) { + nodeStyleDiscrete = new GUIStyle(NodeStyle); + nodeStyleDiscrete.normal.textColor = SF_GUI.ProSkin ? new Color( 1f, 1f, 1f, 0.75f/5f ) : new Color( 0f, 0f, 0f, 0.7f/5f ); + } + return nodeStyleDiscrete; + } + } + //NodeStyleDiscrete + + + private static GUIStyle toggleDiscrete; + public static GUIStyle ToggleDiscrete { + get { + if( toggleDiscrete == null ) { + toggleDiscrete = new GUIStyle( GUI.skin.toggle ); + toggleDiscrete.fontSize = 10; + } + + return toggleDiscrete; + } + } + + + + // Thanks to Tenebrous! + public static void ListStyles() { + foreach( GUIStyle ss in GUI.skin.customStyles ) { + GUILayout.Label( ss.name ); + EditorGUILayout.LabelField( ss.name, ss ); + } + + FieldInfo f = typeof( EditorGUIUtility ).GetField( "s_IconGUIContents", BindingFlags.NonPublic | BindingFlags.Static ); + Hashtable ff = (Hashtable)f.GetValue( null ); + foreach( DictionaryEntry fff in ff ) { + GUILayout.Label( fff.Key.ToString() ); + GUILayout.Label( (GUIContent)fff.Value ); + } + } + + + + } +} diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Utility/SF_Styles.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/_Utility/SF_Styles.cs.meta new file mode 100644 index 00000000..ba5bfa19 --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/_Utility/SF_Styles.cs.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: efe449f52e390bf4f846e213fd973d30 +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Utility/SF_Tools.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/_Utility/SF_Tools.cs new file mode 100644 index 00000000..dbf37e21 --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/_Utility/SF_Tools.cs @@ -0,0 +1,486 @@ +using UnityEngine; +using UnityEditor; +using System.Collections; +using System; +using System.Reflection; +using System.Text.RegularExpressions; + +namespace ShaderForge { + + [System.Serializable] + public enum RenderPlatform { + d3d9 = 0, // - Direct3D 9 + d3d11 = 1, // - Direct3D 11 / 12 + glcore = 2, // - OpenGL Core + gles = 3, // - OpenGL ES 2.0 + gles3 = 4, // - OpenGL ES 3.0 + metal = 5, // - iOS Metal + d3d11_9x = 6, // - Direct3D 11 windows RT + xboxone = 7, // - Xbox One + ps4 = 8, // - PlayStation 4 + psp2 = 9, // - PlayStation Vita + n3ds = 10, // - Nintendo 3DS + wiiu = 11 // - Nintendo Wii U + }; + + + + public static class SF_Tools { + + // Versioning + public static int versionNumPrimary = 1; + public static int versionNumSecondary = 38; + public static string versionStage = ""; + public static string version = versionNumPrimary + "." + versionNumSecondary.ToString( "D2" ); + public static string versionString = "Shader Forge v" + version; + + // Misc strings + public const string bugReportLabel = "Post bugs & ideas"; + public const string bugReportURL = "https://shaderforge.userecho.com/"; + public const string documentationLabel = "Node Documentation"; + public const string documentationURL = "http://www.acegikmo.com/shaderforge/nodes/"; + public static string[] rendererLabels = new string[]{ + "Direct3D 9", + "Direct3D 11 & 12", + "OpenGL Core", + "OpenGL ES 2.0", + "OpenGL ES 3.0", + "iOS Metal", + "Direct3D 11 for Windows RT/Phone", + "Xbox One", + "PlayStation 4", + "PlayStation Vita", + "Nintendo 3DS", + "Nintendo Wii U" + }; + + public const string alphabetLower = "abcdefghijklmnopqrstuvwxyz"; + public const string alphabetUpper = "ABCDEFGHIJKLMNOPQRSTUVWXYZ"; + + + // Constants + public const int connectorMargin = 4; + + // User prefs + public static bool absColor = false; + public static bool advancedInspector = true; + public static int stationaryCursorRadius = 7; + + + public const float minimumUnityVersion = 5.3f; + + private static float currentUnityVersion = 0f; + public static float CurrentUnityVersion{ + get{ + if(currentUnityVersion == 0f){ + currentUnityVersion = float.Parse(Application.unityVersion.Substring(0,3)); + } + return currentUnityVersion; + } + } + + public static bool CanRunShaderForge(){ + return (CurrentUnityVersion >= minimumUnityVersion); + } + + + public static bool HasUnityPro(){ + return UnityEditorInternal.InternalEditorUtility.HasPro(); + } + + + + + public static void UnityOutOfDateGUI(){ + GUIStyle st = new GUIStyle(EditorStyles.boldLabel); + + st.alignment = TextAnchor.MiddleCenter; + + GUILayout.Label(string.Empty); + GUILayout.Label("You need to install Unity " + SF_Tools.minimumUnityVersion + " or later in order to use Shader Forge", st); + GUILayout.Label("You are currently running Unity version " + Application.unityVersion, st); + if(GUILayout.Button("Update Unity")){ + Application.OpenURL("http://unity3d.com/unity/download"); + } + GUILayout.Label(string.Empty); + } + + public static int ComponentCountOf(CustomValueType cvt){ + + switch(cvt){ + case CustomValueType.Float: + return 1; + case CustomValueType.Half: + return 1; + case CustomValueType.Fixed: + return 1; + case CustomValueType.Float2: + return 2; + case CustomValueType.Half2: + return 2; + case CustomValueType.Fixed2: + return 2; + case CustomValueType.Float3: + return 3; + case CustomValueType.Half3: + return 3; + case CustomValueType.Fixed3: + return 3; + case CustomValueType.Float4: + return 4; + case CustomValueType.Half4: + return 4; + case CustomValueType.Fixed4: + return 4; + case CustomValueType.Sampler2D: + return 4; + default: + // Debug.Log("Invalid component count check of custom value type: " + cvt); + return 16; + } + + + } + + + public static Color VectorToColor( float v ) { + if( absColor ) + v = Mathf.Abs(v); + return new Color( v,v,v ); + } + + public static Color VectorToColor( Vector2 v ) { + if( absColor ) + return new Color( Mathf.Clamp01( Mathf.Abs( v.x ) ), Mathf.Clamp01( Mathf.Abs( v.y ) ), 0f ); + else + return new Color( Mathf.Clamp01( v.x ), Mathf.Clamp01( v.y ), 0f ); + } + + public static Color VectorToColor( Vector3 v ) { + if( absColor ) + return new Color( Mathf.Clamp01( Mathf.Abs( v.x ) ), Mathf.Clamp01( Mathf.Abs( v.y ) ), Mathf.Clamp01( Mathf.Abs( v.z ) ) ); + else + return new Color( Mathf.Clamp01( v.x ), Mathf.Clamp01( v.y ), Mathf.Clamp01( v.z ) ); + } + + public static string AssetToGUID( UnityEngine.Object asset ) { + return AssetDatabase.AssetPathToGUID( AssetDatabase.GetAssetPath( asset ) ); + } + + public static UnityEngine.Object GUIDToAsset( string GUID, Type type ) { + return AssetDatabase.LoadAssetAtPath( AssetDatabase.GUIDToAssetPath( GUID ), type ); + } + + public static float Smooth( float x ) { + return x * x * ( 3f - 2f * x ); + } + + public static float Smoother( float x ) { + return x * x * x * ( x * ( x * 6f - 15f ) + 10f ); + } + + + + public static string PathFromAbsoluteToProject(string s){ + return s.Substring(Application.dataPath.Length-6); + } + + public static void LinkButton(Rect r, string label, string URL, GUIStyle style){ + if( GUI.Button( r, label, style ) ) + Application.OpenURL(URL); + } + + + public static void AssignShaderToMaterialAsset( ref Material m, Shader s ) { + m.shader = s; + } + + public static float[] VectorToArray(Vector4 vec) { + return new float[4] { vec.x, vec.y, vec.z, vec.w }; + } + + public static float[] VectorToArray( float vec ) { + return new float[4] { vec, vec, vec, vec }; + } + + public static Vector3 ToVector3(Color c) { + return new Vector3( c.r, c.g, c.b ); + } + + public static Color ToColor( Vector3 vec ) { + return new Color( vec.x, vec.y, vec.z); + } + + public static float DistChebyshev(Vector2 a, Vector2 b) { + return Mathf.Max( Mathf.Abs(a.x - b.x), Mathf.Abs(a.y - b.y) ); + } + + + private static MethodInfo _doColorPickerMethod; + private static MethodInfo DoColorPickerMethod { + get{ + if(_doColorPickerMethod == null){ + Type t = Type.GetType( "UnityEditor.EditorGUI,UnityEditor" ); + Debug.Log("Type = " + t); + BindingFlags bfs = BindingFlags.Static | BindingFlags.NonPublic; + _doColorPickerMethod = t.GetMethod( "DoColorField", bfs, null, new Type[] { typeof( Rect ), typeof( int ), typeof( Color ), typeof( bool ), typeof( bool ) }, null ); + } + return _doColorPickerMethod; + } + } + + + // private static Color DoColorField(Rect position, int id, Color value, bool showEyedropper, bool showAlpha) + public static Color DoColorPicker( Rect position, Color color, bool showEyedropper, bool showAlpha ) { + //int id = GUIUtility.GetControlID(); + //return (Color)DoColorPickerMethod.Invoke( null, new object[] { position, id, color, showEyedropper, showAlpha } ); + return Color.red; + } + + public static Color FloatToColor( float f ) { + return new Color( f, f, f, f ); + } + + public static float Distance( Color a, Color b, int cc ) { + Color v = a - b; + return Mathf.Sqrt( Dot( v, v, cc ) ); + } + + public static float Dot(Color a, Color b, int compCount) { + + float retVal = 0f; + + for(int i=0;i s.xMax ) + s.xMax = i.xMax; + if( i.xMin < s.xMin ) + s.xMin = i.xMin; + if( i.yMax > s.yMax ) + s.yMax = i.yMax; + if( i.yMin < s.yMin ) + s.yMin = i.yMin; + return s; + } + + + public static void FormatShaderPath(ref string s){ + Regex rgx = new Regex( "[^a-zA-Z0-9/s -_]" ); // Only allow Alphanumeric, forward slash, space, dash and underscore + s = rgx.Replace( s, "" ); + } + + public static void FormatAlphanumeric( ref string s ) { + Regex rgx = new Regex( "[^a-zA-Z0-9-_]" ); // Only allow Alphanumeric, forward slash, space, dash and underscore + s = rgx.Replace( s, "" ); + } + + public static void FormatSerializableComment(ref string s){ + Regex rgx = new Regex( "[^\\w\\s_\\?\\.-]" ); // Only allow Alphanumeric, dot, dash, underscore and questionmark + s = rgx.Replace( s, "" ); + } + + public static void FormatSerializable( ref string s ) { + s = s.Replace( ":", "" ) + .Replace( ";", "" ) + .Replace( ",", "" ) + .Replace( "/*", "" ) + .Replace( "*/", "" ) + .Replace("\"", ""); + } + + public static void FormatSerializableVarName( ref string s ){ + FormatShaderPath(ref s); + + s = s.Replace(" ", string.Empty); + + if(s.Length > 0){ + + int tmp; + while(s.Length > 0 && int.TryParse(s[0].ToString(), out tmp)){ + s = s.Substring(1, s.Length-1); // Remove first character if first is a parsable integer + } + +// if(s.Length == 1){ +// s = s.ToLower(); // Lowercase the one character +// } else { +// char first = s[0]; // Lowercase the first character +// string rest = s.Substring( +// } + } + + } + + + public static Rect GetExpanded( Rect r, float px ) { + r.y -= px; + r.x -= px; + r.width += 2 * px; + r.height += 2 * px; + return r; + } + + + public static bool Intersects( Rect a, Rect b ) { + FlipNegative( ref a ); + FlipNegative( ref b ); + bool c1 = a.xMin < b.xMax; + bool c2 = a.xMax > b.xMin; + bool c3 = a.yMin < b.yMax; + bool c4 = a.yMax > b.yMin; + return c1 && c2 && c3 && c4; + } + + public static void FlipNegative(ref Rect r) { + if( r.width < 0 ) + r.x -= ( r.width *= -1 ); + if( r.height < 0 ) + r.y -= ( r.height *= -1 ); + } + + + public static float DistanceToLines(Vector2 point, Vector2[] line){ + float shortest = float.MaxValue; + + for (int i = 0; i < line.Length-1; i++) { + shortest = Mathf.Min(shortest, DistanceToLine(line[i], line[i+1], point)); + } + + return shortest; + + } + + public static float DistanceToLine(Vector2 a, Vector2 b, Vector2 point){ + // Return minimum distance between line segment vw and point p + float l2 = Vector2.SqrMagnitude(a - b); // i.e. |w-v|^2 - avoid a sqrt + if (l2 == 0.0) + return Vector2.Distance(point, a); // v == w case + // Consider the line extending the segment, parameterized as v + t (w - v). + // We find projection of point p onto the line. + // It falls where t = [(p-v) . (w-v)] / |w-v|^2 + float t = Vector2.Dot(point - a, b - a) / l2; + if (t < 0.0) + return Vector2.Distance(point, a); // Beyond the 'v' end of the segment + else if (t > 1.0) + return Vector2.Distance(point, b); // Beyond the 'w' end of the segment + Vector2 projection = a + t * (b - a); // Projection falls on the segment + return Vector2.Distance(point, projection); + } + + + + public static bool LineIntersection(Vector2 p0, Vector2 p1, Vector2 p2, Vector2 p3, out Vector2 intersection){ + + intersection = Vector2.zero; + + Vector2 s1, s2; + s1.x = p1.x - p0.x; + s1.y = p1.y - p0.y; + s2.x = p3.x - p2.x; + s2.y = p3.y - p2.y; + + float s, t, d; + d = -s2.x * s1.y + s1.x * s2.y; + + if(d == 0){ + return false; // Parallel lines, no intersection + } + + Vector2 pDiff = p0 - p2; + s = (-s1.y * pDiff.x + s1.x * pDiff.y) / d; + t = ( s2.x * pDiff.y - s2.y * pDiff.x) / d; + + if (s >= 0 && s <= 1 && t >= 0 && t <= 1) + { + intersection = p0 + (t * s1); + return true; // Intersection! + } + + return false; // No intersection + } + + + + // Returns the first intersection it can find + public static bool LineIntersection(Vector2 p0, Vector2 p1, Vector2[] points, out Vector2 intersection){ + intersection = Vector2.zero; + for(int i=0;i 0; + + } + + + public static string StringToBase64String(string str) { + return System.Convert.ToBase64String( GetBytes( str ) ); + } + + public static string Base64StringToString( string encoded ) { + return GetString( System.Convert.FromBase64String( encoded ) ); + } + + static byte[] GetBytes( string str ) { + byte[] bytes = new byte[str.Length * sizeof( char )]; + System.Buffer.BlockCopy( str.ToCharArray(), 0, bytes, 0, bytes.Length ); + return bytes; + } + + static string GetString( byte[] bytes ) { + char[] chars = new char[bytes.Length / sizeof( char )]; + System.Buffer.BlockCopy( bytes, 0, chars, 0, bytes.Length ); + return new string( chars ); + } + + + } +} diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Utility/SF_Tools.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/_Utility/SF_Tools.cs.meta new file mode 100644 index 00000000..de8c40ea --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/_Utility/SF_Tools.cs.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 57c34190e3ef7294a906d4f71d8764ac +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Utility/SF_Web.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/_Utility/SF_Web.cs new file mode 100644 index 00000000..ffef9532 --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/_Utility/SF_Web.cs @@ -0,0 +1,32 @@ +using UnityEngine; +using System.Collections; + +// Web data and access with Shader Forge +// Used for documentation, and perhaps later for update checking as well + +namespace ShaderForge{ + public static class SF_Web { + + + const string urlRoot = "http://acegikmo.com/shaderforge/"; // ?search=add"; + const string urlNodes = urlRoot + "nodes/"; + + + public static void OpenDocumentationForNode(SF_Node node){ + OpenDocumentationForString(node.SearchName); + } + public static void OpenDocumentationForNode(SF_EditorNodeData nodeData){ + OpenDocumentationForString(nodeData.SearchName); + } + + static void OpenDocumentationForString(string s){ + Application.OpenURL( urlNodes + "?search=" + StripExtraChars(s) ); + } + + + static string StripExtraChars(string s){ + return s.Replace(" ","").Replace(".",""); + } + + } +} diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Utility/SF_Web.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/_Utility/SF_Web.cs.meta new file mode 100644 index 00000000..ec43d3bb --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/_Utility/SF_Web.cs.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 149fd1a15c5e14ecab3711504e2fad2b +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Utility/SF_ZoomArea.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/_Utility/SF_ZoomArea.cs new file mode 100644 index 00000000..c8687ed5 --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/_Utility/SF_ZoomArea.cs @@ -0,0 +1,43 @@ +using UnityEngine; + +namespace ShaderForge{ + public class SF_ZoomArea{ + private static float kEditorWindowTabHeight = 22.0f; + private static Matrix4x4 prevGuiMatrix; + + public static Rect Begin(float zoomScale, Rect screenCoordsArea, Vector2 cameraPos){ + GUI.EndGroup(); + kEditorWindowTabHeight = screenCoordsArea.y; + Rect clippedArea = screenCoordsArea.ScaleSizeBy(1.0f / zoomScale, screenCoordsArea.TopLeft()); + GUI.BeginGroup(clippedArea); + //if(zoomScale != 1f){ + //clippedArea.y += kEditorWindowTabHeight; + prevGuiMatrix = GUI.matrix; + Matrix4x4 translation = Matrix4x4.TRS(clippedArea.TopLeft(), Quaternion.identity, Vector3.one); + Matrix4x4 scale = Matrix4x4.Scale(new Vector3(zoomScale, zoomScale, 1.0f)); + GUI.matrix = translation * scale * translation.inverse * GUI.matrix; + //} else{ + // GUI.matrix = Matrix4x4.identity; + // prevGuiMatrix + //} + Rect offsetRect = screenCoordsArea; + offsetRect.x -= cameraPos.x; + offsetRect.y -= cameraPos.y; + offsetRect.width = int.MaxValue/2; + offsetRect.height = int.MaxValue/2; + GUI.BeginGroup(offsetRect); + + return clippedArea; + } + + public static void End(float zoomScale){ + GUI.EndGroup(); + //if(zoomScale != 1f) + GUI.matrix = prevGuiMatrix; + //else + // GUI.matrix = Matrix4x4.identity; + GUI.EndGroup(); + GUI.BeginGroup(new Rect(0.0f, kEditorWindowTabHeight, Screen.width, Screen.height)); + } + } +} \ No newline at end of file diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Utility/SF_ZoomArea.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/_Utility/SF_ZoomArea.cs.meta new file mode 100644 index 00000000..0dcf3af4 --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/_Utility/SF_ZoomArea.cs.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 2de28fcf3e7de48dd97865761bfa9eb2 +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Utility/SerializableDictionary.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/_Utility/SerializableDictionary.cs new file mode 100644 index 00000000..6f7c3db7 --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/_Utility/SerializableDictionary.cs @@ -0,0 +1,64 @@ +using System; +using System.Collections.Generic; +using System.Text; +using System.Xml.Serialization; + +namespace ShaderForge { + [XmlRoot( "dictionary" )] + public class SerializableDictionary : Dictionary, IXmlSerializable { + #region IXmlSerializable Members + public System.Xml.Schema.XmlSchema GetSchema() { + return null; + } + + public void ReadXml( System.Xml.XmlReader reader ) { + XmlSerializer keySerializer = new XmlSerializer( typeof( TKey ) ); + XmlSerializer valueSerializer = new XmlSerializer( typeof( TValue ) ); + + bool wasEmpty = reader.IsEmptyElement; + reader.Read(); + + if( wasEmpty ) + return; + + while( reader.NodeType != System.Xml.XmlNodeType.EndElement ) { + reader.ReadStartElement( "item" ); + + reader.ReadStartElement( "key" ); + TKey key = (TKey)keySerializer.Deserialize( reader ); + reader.ReadEndElement(); + + reader.ReadStartElement( "value" ); + TValue value = (TValue)valueSerializer.Deserialize( reader ); + reader.ReadEndElement(); + + this.Add( key, value ); + + reader.ReadEndElement(); + reader.MoveToContent(); + } + reader.ReadEndElement(); + } + + public void WriteXml( System.Xml.XmlWriter writer ) { + XmlSerializer keySerializer = new XmlSerializer( typeof( TKey ) ); + XmlSerializer valueSerializer = new XmlSerializer( typeof( TValue ) ); + + foreach( TKey key in this.Keys ) { + writer.WriteStartElement( "item" ); + + writer.WriteStartElement( "key" ); + keySerializer.Serialize( writer, key ); + writer.WriteEndElement(); + + writer.WriteStartElement( "value" ); + TValue value = this[key]; + valueSerializer.Serialize( writer, value ); + writer.WriteEndElement(); + + writer.WriteEndElement(); + } + } + #endregion + } +} \ No newline at end of file diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Utility/SerializableDictionary.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/_Utility/SerializableDictionary.cs.meta new file mode 100644 index 00000000..440dcbbc --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/_Utility/SerializableDictionary.cs.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 7a1a116097ee8bf4f89ff5b55aced743 +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: From 3baa5c7a9ea3965773c903edaf7f824a69638207 Mon Sep 17 00:00:00 2001 From: Ryan Date: Sun, 16 Dec 2018 23:20:38 +0800 Subject: [PATCH 09/27] Removed: Substance ProceduralMaterial and ProceduralTexture references. --- .../Editor/Code/SF_EditorNodeView.cs | 914 ++++++++++++++++++ .../Editor/Code/SF_EditorNodeView.cs.meta | 8 + .../Editor/Code/_Nodes/SFN_Tex2d.cs | 486 ++++++++++ .../Editor/Code/_Nodes/SFN_Tex2d.cs.meta | 8 + .../Editor/Code/_Nodes/SFN_Tex2dAsset.cs | 362 +++++++ .../Editor/Code/_Nodes/SFN_Tex2dAsset.cs.meta | 8 + 6 files changed, 1786 insertions(+) create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/SF_EditorNodeView.cs create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/SF_EditorNodeView.cs.meta create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Tex2d.cs create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Tex2d.cs.meta create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Tex2dAsset.cs create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Tex2dAsset.cs.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/SF_EditorNodeView.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/SF_EditorNodeView.cs new file mode 100644 index 00000000..bf02179d --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/SF_EditorNodeView.cs @@ -0,0 +1,914 @@ +using UnityEngine; +using UnityEditor; +using System.Collections; +using System.Collections.Generic; +using System.Xml; +using System.IO; +using System.Linq; + +namespace ShaderForge { + + public enum ConnectionLineStyle { Bezier, Linear, Rectilinear }; + + [System.Serializable] + public class SF_SetNodeSource { + + public SF_NodeConnector con; + + public SF_SetNodeSource( SF_Node node ) { + con = node.connectors[0]; + } + + public int NodeID { + get { return con.node.id; } + } + + public string Name { + get { return con.node.variableName; } + } + + } + + [System.Serializable] + public class SF_EditorNodeView : ScriptableObject { + + SF_Editor editor; + + const int TOOLBAR_HEIGHT = 18; + [SerializeField] + public Vector2 cameraPos = Vector3.zero; + + [SerializeField] + bool panCamera = false; + + [SerializeField] + Vector2 mousePosStart; + public Rect rect; + public GUIStyle toolbarStyle; + + public List relayInSources; + public string[] relayInNames; + + public SF_SelectionManager selection; + + public SF_NodeTreeStatus treeStatus; + + + + + + public SF_EditorNodeView() { + + } + + public void OnEnable() { + base.hideFlags = HideFlags.HideAndDontSave; + } + + + public void RefreshRelaySources() { + relayInSources = new List(); + for( int i = 0; i < editor.nodes.Count; i++ ) { + if( editor.nodes[i] is SFN_Set ) { + relayInSources.Add( new SF_SetNodeSource(editor.nodes[i]) ); + } + } + relayInSources.Sort( ( a, b ) => a.Name.CompareTo( b.Name ) ); + relayInNames = relayInSources.Select( x => x.Name ).ToArray(); + } + + // Only the node ID is serialized - this is used to ensure proper display in the GUI + // Returns -1 if the relay ID is missing + public int NodeIdToRelayId(int nodeId) { + if( relayInSources != null ) { + for( int i = 0; i < relayInSources.Count; i++ ) { + if( relayInSources[i].NodeID == nodeId ) { + return i; + } + } + } + return -1; + } + + public SF_EditorNodeView Initialize( SF_Editor editor ) { + this.editor = editor; + selection = ScriptableObject.CreateInstance().Initialize( editor ); + treeStatus = ScriptableObject.CreateInstance().Initialize(editor); + rect = new Rect(); + cameraPos = new Vector2( 32768 - 400, 32768 - 300 ); + toolbarStyle = new GUIStyle( EditorStyles.toolbar ); + toolbarStyle.fixedHeight = TOOLBAR_HEIGHT; + return this; + } + + + // Erasing nodes with cut line: (alt+RMB) + + public Vector2 cutStart = Vector3.zero; + public bool isCutting = false; + + public void StartCutting(){ + isCutting = true; + cutStart = editor.nodeView.GetNodeSpaceMousePos(); + } + + public void StopCutting(){ + List disconnectors = new List(); + for (int i = 0; i < editor.nodes.Count; i++) { + SF_Node n = editor.nodes [i]; + for (int j = 0; j < n.connectors.Length; j++) { + SF_NodeConnector con = n.connectors [j]; + if (con.IsConnected () && con.conType == ConType.cInput) { + if (con.conLine.aboutToBeDeleted) { + disconnectors.Add(con); + } + } + } + } + + if(disconnectors.Count == 0){ + isCutting = false; + return; + } + + UnmarkDeleteHighlights(); + + //Undo.RecordObject((Object)con, "cut" + string undoMsg = "cut "; + if(disconnectors.Count > 1){ + undoMsg += disconnectors.Count + " "; + undoMsg += "connections"; + } else { + undoMsg += "connection: "; + undoMsg += disconnectors[0].node.nodeName; + undoMsg += "[" + disconnectors[0].label + "]"; + undoMsg += " <--- "; + undoMsg += "[" + disconnectors[0].inputCon.label + "]"; + undoMsg += disconnectors[0].inputCon.node.nodeName; + } // = disconnectors.Count > 1 ? "cut "+disconnectors.Count+" connections" : "cut connection " + disconnectors[i].node.name + "[" + + + foreach(SF_NodeConnector con in disconnectors){ + Undo.RecordObject(con, undoMsg); + } + + foreach(SF_NodeConnector con in disconnectors){ + con.Disconnect(); + } + + isCutting = false; + + } + + public void UnmarkDeleteHighlights(){ + foreach(SF_Node n in editor.nodes){ + foreach(SF_NodeConnector con in n.connectors){ + if(con.IsConnected() && con.conType == ConType.cInput){ + con.conLine.aboutToBeDeleted = false; + } + } + } + } + + + public float zoom = 1f; + public float zoomTarget = 1f; + + public void SetZoom(float setZoom){ + Vector2 oldWidth = new Vector2(rect.width,rect.height)/zoom; + zoom = ClampZoom(setZoom); + Vector2 newWidth = new Vector2(rect.width,rect.height)/zoom; + Vector2 delta = newWidth - oldWidth; + + Vector2 normalizedMouseCoords = (Event.current.mousePosition - new Vector2(editor.separatorLeft.rect.xMax,editor.TabOffset)); + + normalizedMouseCoords.x /= rect.width; + normalizedMouseCoords.y /= rect.height; + + + + cameraPos -= Vector2.Scale(delta, normalizedMouseCoords); + + if(delta.sqrMagnitude != 0f){ + + + // Correct in here to prevent going outside the bounds + BoundsAdjustCamera(); + } + + + if(zoom == 1f) + SnapCamera(); + + } + + + + public void BoundsAdjustCamera(){ + /* + Rect wrapped = GetNodeEncapsulationRect().Margin(256); + Rect view = ScreenSpaceToZoomSpace(rect); + + Vector2 toCenter = (view.center - wrapped.center)*0.5f; + + float camBottom = cameraPos.y + rect.height/zoom - 22; + float camTop = cameraPos.y; + float camRight = cameraPos.x + rect.width/zoom - editor.separatorLeft.rect.xMax; + float camLeft = cameraPos.x - editor.separatorLeft.rect.xMax; + + Vector2 deltaTotal = Vector2.zero; + + if( camBottom > wrapped.yMax) + deltaTotal -= new Vector2(0f,camBottom-wrapped.yMax); + if(camTop < wrapped.yMin){ + deltaTotal -= new Vector2(0f,camTop-wrapped.yMin); + } + if(camRight > wrapped.xMax) + deltaTotal -= new Vector2(camRight-wrapped.xMax,0f); + if(camLeft < wrapped.xMin) + deltaTotal -= new Vector2(camLeft-wrapped.xMin,0f); + + cameraPos += deltaTotal; + +*/ + + } + + + public float ClampZoom(float in_zoom){ + return Mathf.Clamp(in_zoom,0.125f,1f); + } + + + public void OnLocalGUI( Rect r ) { + + + //r = r.PadTop(Mathf.CeilToInt(22*zoom)); + + + + + + editor.mousePosition = Event.current.mousePosition; + rect = r; + + + + // TOOLBAR + //DrawToolbar( new Rect( rect.x, rect.y, rect.width, TOOLBAR_HEIGHT ) ); + + + + Rect localRect = new Rect( r ); + localRect.x = 0; + localRect.y = 0; + + //rect.y += TOOLBAR_HEIGHT; + //rect.height -= TOOLBAR_HEIGHT; + + + + + // VIEW + Rect rectInner = new Rect( rect ); + rectInner.width = float.MaxValue / 2f; + rectInner.height = float.MaxValue / 2f; + + + // TEMP: +// Rect btn = rectInner; +// btn.width = 64; +// btn.height = 24; +// if(SF_Debug.renderDataNodes){ +// if(selection.Selection.Count > 0){ +// if(GUI.Button(btn,"NSS")){ +// editor.TakeNodePreviewScreenshot(); +// } +// } +// } + + + + if(Event.current.type == EventType.Repaint){ + nodeSpaceMousePos = ScreenSpaceToZoomSpace( Event.current.mousePosition ); + + } + + + + + + bool mouseOverNode = false; + + + + + SF_ZoomArea.Begin(zoom,rect,cameraPos); + { + selection.OnGUI(); // To detect if you press things + if(editor.nodeView != null) + editor.nodeView.selection.DrawBoxSelection(); + + if(Event.current.type == EventType.Repaint){ + viewSpaceMousePos = ZoomSpaceToScreenSpace( Event.current.mousePosition ); + } + // NODES + if( editor.nodes != null ) { + + // If we're repainting, draw in reverse to sort properly + //if(Event.current.rawType == EventType.repaint){ + for (int i = editor.nodes.Count - 1; i >= 0; i--) { + if( !editor.nodes[i].Draw() ) + break; + } + /*} else { + for(int i=0;i 0 ) { + Object dragObj = DragAndDrop.objectReferences[0]; + if( dragObj is Texture2D || dragObj is RenderTexture ) { + DragAndDrop.visualMode = DragAndDropVisualMode.Link; + if( !editor.nodeBrowser.IsPlacing() ) + editor.nodeBrowser.OnStartDrag( editor.GetTemplate() ); + else + editor.nodeBrowser.UpdateDrag(); + } else { + DragAndDrop.visualMode = DragAndDropVisualMode.Rejected; + } + } else { + DragAndDrop.visualMode = DragAndDropVisualMode.Rejected; + } + } + + + + + + + // If release + if( MouseInsideNodeView( false ) && Event.current.type == EventType.MouseUp) { + bool ifCursorStayed = Vector2.SqrMagnitude( mousePosStart - Event.current.mousePosition ) < SF_Tools.stationaryCursorRadius; + + if( ifCursorStayed && !SF_GUI.MultiSelectModifierHeld() ) + selection.DeselectAll(registerUndo:true); + + + //editor.Defocus( deselectNodes: ifCursorStayed ); + } + + if( SF_GUI.ReleasedRawLMB() ) { + SF_NodeConnector.pendingConnectionSource = null; + } + + // If press + if( Event.current.type == EventType.MouseDown && MouseInsideNodeView( false ) ) { + //bool ifNotHoldingModifier = !SF_GUI.MultiSelectModifierHeld(); + mousePosStart = Event.current.mousePosition; + editor.Defocus(); + } + + + if(!editor.screenshotInProgress){ + + Rect logoRect = rect; + logoRect.y -= 14; + logoRect.x += 1; + logoRect.width = SF_GUI.Logo.width; + logoRect.height = SF_GUI.Logo.height; + GUI.color = new Color(1f,1f,1f,0.5f); + GUI.DrawTexture( logoRect, SF_GUI.Logo ); + + logoRect.y += logoRect.height; + logoRect.height = 16; + + GUI.Label(logoRect, "v"+SF_Tools.version, EditorStyles.boldLabel); + GUI.color = Color.white; + + + } + + + } + + // For connecting procedural materials to the main node + public SF_Node TryLinkIfExistsAndOpenSlotAvailable(Texture tex, string propertyName, SF_NodeConnector connector, string outChannel, SF_Node prevNode = null){ + + if(tex){ + SFN_Tex2d tNode = editor.AddNode(); + if(prevNode != null){ + Rect r = tNode.rect; + r = r.MovedDown(1); + r.y += 64; + tNode.rect = r; + } + tNode.TextureAsset = tex; + tNode.property.SetName(propertyName); + tNode.OnAssignedTexture(); + if(connector.enableState == EnableState.Enabled && connector.availableState == AvailableState.Available && !connector.IsConnected()){ + connector.LinkTo(tNode[outChannel]); + } + return tNode; + } + return null; + } + + public void UpdateCutLine(){ + + if(SF_GUI.HoldingAlt() && Event.current.type == EventType.MouseDown && Event.current.button == 1){ // Alt + RMB drag + StartCutting(); + } else if(SF_GUI.ReleasedRawRMB()){ + StopCutting(); + } + + if(isCutting){ + Vector2 cutEnd = GetNodeSpaceMousePos(); + + GUILines.DrawDashedLine(editor, cutStart, cutEnd, Color.white, 5f); + + + foreach(SF_Node n in editor.nodes){ + foreach(SF_NodeConnector con in n.connectors){ + if(con.IsConnected() && con.conType == ConType.cInput && con.enableState != EnableState.Hidden){ + Vector2 intersection = Vector2.zero; + if(con.conLine.Intersects(cutStart, cutEnd, out intersection)){ + + con.conLine.aboutToBeDeleted = true; + + Vector2 hit = editor.nodeView.ScreenSpaceToZoomSpace(intersection); + + float scale = 5f; + float scaleDiff = 0.95f; + //Vector2 rg, up, lf, dn; + + + //Vector2 localRight = (cutStart-cutEnd).normalized; + //Vector2 localUp = new Vector2(localRight.y,-localRight.x); + + //rg = hit + localRight * scale; + //up = hit + localUp * scale; + //lf = hit - localRight * scale; + //dn = hit - localUp * scale; + Color c0 = new Color(1f,0.1f,0.1f,0.9f); + Color c1 = new Color(1f,0.1f,0.1f,0.7f); + Color c2 = new Color(1f,0.1f,0.1f,0.5f); + Color c3 = new Color(1f,0.1f,0.1f,0.3f); + + GUILines.DrawDisc(hit,scale,c0); + GUILines.DrawDisc(hit,scale-scaleDiff,c1); + GUILines.DrawDisc(hit,scale-scaleDiff*2,c2); + GUILines.DrawDisc(hit,scale-scaleDiff*3,c3); + + //GUILines.DrawLine(rg,up,Color.red,2f,true); + //GUILines.DrawLine(up,lf,Color.red,2f,true); + //GUILines.DrawLine(lf,dn,Color.red,2f,true); + //GUILines.DrawLine(dn,rg,Color.red,2f,true); + + + + + + continue; + } else { + con.conLine.aboutToBeDeleted = false; + } + } + } + } + + + } + + } + + + + public Rect GetNodeEncapsulationRect(){ + + Rect r = editor.nodes[0].rect; // No need for null check, there should always be a main node + foreach( SF_Node n in editor.nodes ) { + r = SF_Tools.Encapsulate( r, n.rect ); + } + return r; + + } + + public void CenterCamera() { + + // Find midpoint of all nodes + Rect r = GetNodeEncapsulationRect(); + + // Move Camera + cameraPos = r.center - new Vector2( 0f, Screen.height * 0.5f ); + SnapCamera(); + } + + + + + public void ContextClick( object o ) { + // Add node + SF_EditorNodeData nodeData = o as SF_EditorNodeData; + editor.AddNode( nodeData, true ); + } + + + + public void UpdateDebugInput() { + + if( Event.current.type != EventType.KeyDown ) + return; + + if( Event.current.keyCode == KeyCode.UpArrow ) { + HierarchalRefresh(); + } + + + if( Event.current.keyCode == KeyCode.DownArrow ) { + Debug.Log( GetNodeDataSerialized() ); + } + + + } + + + public void AssignDepthValuesToNodes() { + foreach( SF_Node n in editor.nodes ) { + n.depth = 0; + } + // Recurse some depth! + // TODO: Run this for disconnected islands of nodes too + //Debug.Log("SFN_FINAL exists = " + (editor.materialOutput != null)); + AddDepthToChildrenOf( editor.mainNode, 0 ); + } + + void AddDepthToChildrenOf( SF_Node n, int carry ) { + carry++; + n.depth = Mathf.Max( carry, n.depth ); ; + for( int i = 0; i < n.connectors.Length; i++ ) { + if( n.connectors[i].conType == ConType.cOutput ) // Ignore outputs, we came from here! + continue; + if( !n.connectors[i].IsConnected() ) // Ignore unconnected inputs + continue; + AddDepthToChildrenOf( n.connectors[i].inputCon.node, carry ); + } + } + + public void HierarchalRefresh() { + +// AssignDepthValuesToNodes(); +// +// int maxDepth = 0; // Deepest level +// foreach( SF_Node n in editor.nodes ) { +// if( maxDepth < n.depth ) +// maxDepth = n.depth; +// } +// +// +// // Relink everything +// int depth = maxDepth; +// while( depth > 0 ) { +// for(int i=0; i 0 ) { + foreach( SF_Node n in editor.nodes ) { + if( n.depth == depth ) { + //n.RefreshValue(); + //n.OnUpdateNode( NodeUpdateType.Soft ); + } + + } + depth--; + } + * */ + + } + + + public void ReconnectConnectedPending() { + AssignDepthValuesToNodes(); + + int maxDepth = 0; // Deepest level + foreach( SF_Node n in editor.nodes ) { + if( maxDepth < n.depth ) + maxDepth = n.depth; + } + + + int depth = maxDepth; + while( depth > 0 ) { + //foreach( SF_Node n in editor.nodes ) { + for( int i = 0; i < editor.nodes.Count; i++ ) { + SF_Node n = editor.nodes[i]; + if( n.depth == depth ) { + foreach( SF_NodeConnector con in n.connectors ) { + if( con.conType == ConType.cOutput ) + continue; + if( !con.IsConnectedAndEnabled() ) + continue; + if( con.valueType != ValueType.VTvPending ) + continue; + con.inputCon.LinkTo( con, LinkingMethod.Default ); + } + } + } + depth--; + } + } + + + + + public string GetNodeDataSerialized() { + + // TODO; move parts of this to their respective places + + string header = ""; + header += "// Shader created with " + SF_Tools.versionString + " \n"; + header += "// Shader Forge (c) Freya Holmer - http://www.acegikmo.com/shaderforge/\n"; + header += "// Note: Manually altering this data may prevent you from opening it in Shader Forge\n"; + header += "/" + "*"; // Hurgh! + + string sData = ""; + sData += "SF_DATA;"; // TODO: Multi-pass, shader settings etc + sData += "ver:" + SF_Tools.version + ";"; + sData += "sub:START;"; + sData += "pass:START;"; + sData += editor.ps.Serialize() + ";"; + + foreach( SF_Node node in editor.nodes ) + sData += node.Serialize(false,useSuffixPrefix:true); + + if(editor.nodeView.treeStatus.propertyList.Count > 0) + sData += editor.nodeView.treeStatus.SerializeProps() + ";"; + + string footer = "pass:END;sub:END;"; + footer += "*" + "/"; + return ( header + sData + footer ); + } + + public float lastChangeTime; + + float GetTime(){ + return (float)EditorApplication.timeSinceStartup; + } + + public float GetTimeSinceChanged(){ + return GetTime() - lastChangeTime; + } + + public void DrawRecompileTimer(Rect r){ + + if(!SF_Settings.autoCompile) + return; // Don't draw recompile timer when autoRecompile is unchecked + + float delta = GetTimeSinceChanged(); + + if(delta > 1.12f) + return; + + r.width *= Mathf.Clamp01(delta); + if(SF_GUI.ProSkin){ + GUI.Box(r,string.Empty); + GUI.Box(r,string.Empty); + GUI.Box(r,string.Empty); + } else { + GUI.color = new Color(1f,1f,1f,0.4f); + GUI.Box(r,string.Empty); + GUI.color = Color.white; + } + } + + void DrawToolbar( Rect r ) { + + } + + void UpdateCameraPanning() { + + + if( SF_GUI.ReleasedCameraMove() ) { + panCamera = false; + } + + bool insideNodeView = MouseInsideNodeView( true ); + bool dragging = ( Event.current.type == EventType.MouseDrag && panCamera ); + bool connecting = SF_NodeConnector.IsConnecting(); + bool rotatingPreview = editor.preview.isDraggingLMB; + bool placingNode = editor.nodeBrowser.IsPlacing(); + bool draggingSeparators = editor.DraggingAnySeparator(); + + + if(connecting){ + // Pan camera when cursor nears edges while making a connection + Vector2 mousePosInNodeViewScreenSpace = ZoomSpaceToScreenSpace(Event.current.mousePosition) - Vector2.right*editor.separatorLeft.rect.xMax; + + float areaWidth; + if(SF_Settings.showNodeSidebar) + areaWidth = editor.separatorRight.rect.xMin - editor.separatorLeft.rect.xMax; + else + areaWidth = Screen.width - editor.separatorLeft.rect.xMax; + float areaHeight = editor.nodeView.rect.height; + float dragPanMargin = 32f; + float panSpeed = 0.2f; + float leftMag = Mathf.Clamp(-mousePosInNodeViewScreenSpace.x + dragPanMargin, 0f, dragPanMargin); + float rightMag = Mathf.Clamp( mousePosInNodeViewScreenSpace.x - areaWidth + dragPanMargin, 0f, dragPanMargin); + float topMag = Mathf.Clamp( -mousePosInNodeViewScreenSpace.y + dragPanMargin , 0f, dragPanMargin); + float bottomMag = Mathf.Clamp( mousePosInNodeViewScreenSpace.y - areaHeight + dragPanMargin , 0f, dragPanMargin); + cameraPos += new Vector2(rightMag-leftMag, bottomMag-topMag)*panSpeed; + } + + + bool doingSomethingElse = connecting || rotatingPreview || placingNode || draggingSeparators; + bool dragInside = dragging && insideNodeView; + + if( dragInside && !doingSomethingElse ) { + + //if( !SF_GUI.MultiSelectModifierHeld() ) + // selection.DeselectAll(); + //Debug.Log("Delta: " + Event.current.delta); + cameraPos -= Event.current.delta; + SnapCamera(); + + BoundsAdjustCamera(); + editor.Defocus(); + //Debug.Log( "USING" ); + Event.current.Use(); + } + + + if( SF_GUI.PressedCameraMove() ) { + panCamera = true; + } + + + + } + + public Vector2 nodeSpaceMousePos; + public Vector2 viewSpaceMousePos; + + public Vector2 GetNodeSpaceMousePos() { + return nodeSpaceMousePos; + } + + + public bool MouseInsideNodeView( bool offset = false ) { + + if( offset ) { + return rect.Contains( viewSpaceMousePos/*ZoomSpaceToScreenSpace( Event.current.mousePosition )*/ ); + } else { + return rect.Contains( Event.current.mousePosition ); + } + + } + + void SnapCamera(){ + cameraPos.x = Mathf.Round(cameraPos.x); + cameraPos.y = Mathf.Round(cameraPos.y); + } + + + public Vector2 ZoomSpaceToScreenSpace( Vector2 in_vec ) { + return (in_vec - cameraPos + editor.separatorLeft.rect.TopRight() )*zoom + rect.TopLeft() + (Vector2.up * (editor.TabOffset))*(zoom-1); + } + public Rect ZoomSpaceToScreenSpace( Rect in_rect ) { + Vector2 offset = ZoomSpaceToScreenSpace(in_rect.TopLeft()); + in_rect.x = offset.x; + in_rect.y = offset.y; + in_rect.width /= zoom; + in_rect.height /= zoom; + //in_rect.x += -cameraPos.x; + //in_rect.y += -cameraPos.y; + return in_rect; + } + public Vector2 ScreenSpaceToZoomSpace( Vector2 in_vec ) { + return ( in_vec - (Vector2.up * (editor.TabOffset))*(zoom-1) - rect.TopLeft() ) / zoom - editor.separatorLeft.rect.TopRight() + cameraPos; + //return in_vec + cameraPos; + } + + // az + b + x(z-1) + + + public Rect ScreenSpaceToZoomSpace( Rect in_rect ) { + //in_rect.x -= -cameraPos.x; + //in_rect.y -= -cameraPos.y; + Vector2 offset = ScreenSpaceToZoomSpace(in_rect.TopLeft()); + in_rect.x = offset.x; + in_rect.y = offset.y; + in_rect.width *= zoom; + in_rect.height *= zoom; + + return in_rect; + } + + + } + +} + diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/SF_EditorNodeView.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/SF_EditorNodeView.cs.meta new file mode 100644 index 00000000..15f64940 --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/SF_EditorNodeView.cs.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: b1e7c52e807954f07b3d3f54461b3cc2 +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Tex2d.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Tex2d.cs new file mode 100644 index 00000000..1b4ffe63 --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Tex2d.cs @@ -0,0 +1,486 @@ +using UnityEngine; +using UnityEditor; +using System.Collections; + + + + +namespace ShaderForge { + + + public enum NoTexValue{White, Gray, Black, Bump}; + + [System.Serializable] + public class SFN_Tex2d : SF_Node { + + + public Texture textureAsset; + + public Texture TextureAsset { + get { + if(TexAssetConnected()){ + textureAsset = null; + return ( GetInputCon( "TEX" ).node as SFN_Tex2dAsset ).textureAsset; + } + return textureAsset; + } + set { + textureAsset = value; + } + } + + //public bool unpackNormal = false; + public NoTexValue noTexValue = NoTexValue.White; + public bool markedAsNormalMap = false; + + public SF_ShaderProperty shelvedProperty; + + + public SFN_Tex2d() { + + } + + public override void Initialize() { + base.Initialize( "Texture 2D" ); + //node_height = (int)(rect.height - 6f); // Odd, but alright... + base.UseLowerPropertyBox( true, true ); + + + property = ScriptableObject.CreateInstance().Initialize( this ); + + + connectors = new SF_NodeConnector[]{ + SF_NodeConnector.Create(this,"UVIN","UV",ConType.cInput,ValueType.VTv2).SetGhostNodeLink(typeof(SFN_TexCoord),"UVOUT"), + SF_NodeConnector.Create(this,"MIP","MIP",ConType.cInput,ValueType.VTv1), + SF_NodeConnector.Create(this,"TEX","Tex",ConType.cInput,ValueType.TexAsset).WithColor(SF_Node.colorExposed), + SF_NodeConnector.Create(this,"RGB","RGB",ConType.cOutput,ValueType.VTv3) .Outputting(OutChannel.RGB), + SF_NodeConnector.Create(this,"R","R",ConType.cOutput, ValueType.VTv1) .WithColor(Color.red) .Outputting(OutChannel.R), + SF_NodeConnector.Create(this,"G","G",ConType.cOutput,ValueType.VTv1) .WithColor(Color.green) .Outputting(OutChannel.G), + SF_NodeConnector.Create(this,"B","B",ConType.cOutput,ValueType.VTv1) .WithColor(Color.blue) .Outputting(OutChannel.B), + SF_NodeConnector.Create(this,"A","A",ConType.cOutput,ValueType.VTv1) .Outputting(OutChannel.A) + }; + base.alwaysDefineVariable = true; + base.neverDefineVariable = false; + base.texture.CompCount = 4; + connectors[0].usageCount = 2; // To define a variable of UVs to use with TRANSFORM_TEX + + } + + public override bool IsUniformOutput() { + return false; + } + + public bool IsNormalMap() { + + /* + if( textureAsset != null ) { + string path = AssetDatabase.GetAssetPath( textureAsset ); + if( string.IsNullOrEmpty( path ) ) + return false; + else + return ( (TextureImporter)UnityEditor.AssetImporter.GetAtPath( path ) ).normalmap; + } + + + if( property == null ) { + if( GetInputIsConnected( "TEX" ) ) + return ( GetInputCon( "TEX" ).node as SFN_Tex2d ).IsNormalMap(); + } else { + return ( property as SFP_Tex2d ).isBumpmap; + }*/ + // TODO: Is this right?¨ + + if(TexAssetConnected()) + return ( GetInputCon( "TEX" ).node as SFN_Tex2dAsset ).IsNormalMap(); + return markedAsNormalMap; + } + + + public bool TexAssetConnected(){ + if( property == null ) + if( GetInputIsConnected( "TEX" ) ) + return true; + return false; + } + + + public override string GetBlitShaderSuffix() { + + bool uv = GetInputIsConnected( "UVIN" ); + bool mip = GetInputIsConnected( "MIP" ); + + if( uv && mip ) { + return "UV_MIP"; + } else if( mip ) { + return "MIP"; + } else if( uv ){ + return "UV"; + } else { + return "NoInputs"; + } + + } + + public override void PrepareRendering( Material mat ) { + if( textureAsset != null ) { + mat.mainTexture = textureAsset; + mat.SetFloat( "_IsNormal", IsNormalMap() ? 1 : 0 ); + } + } + + + + public override void DrawLowerPropertyBox() { + GUI.color = Color.white; + EditorGUI.BeginChangeCheck(); + Rect tmp = lowerRect; + tmp.height = 16f; + noTexValue = (NoTexValue)UndoableLabeledEnumPopup(tmp, "Default", noTexValue, "swith default color of " + property.nameDisplay ); + tmp.y += tmp.height; + bool preMarked = markedAsNormalMap; + + + UndoableToggle(tmp, ref markedAsNormalMap, "Normal map", "normal map decode of " + property.nameDisplay, null); + //markedAsNormalMap = GUI.Toggle(tmp, markedAsNormalMap, "Normal map" ); + + if(EditorGUI.EndChangeCheck()){ + if(markedAsNormalMap && !preMarked) + noTexValue = NoTexValue.Bump; + UpdateCompCount(); + UpdateNormalMapAlphaState(); + OnUpdateNode(); + } + } + + public void UpdateNormalMapAlphaState(){ + if(markedAsNormalMap){ + GetConnectorByStringID("A").Disconnect(); + GetConnectorByStringID("A").enableState = EnableState.Hidden; + } else { + GetConnectorByStringID("A").enableState = EnableState.Enabled; // No alpha channel when unpacking normals + } + } + + public override int GetEvaluatedComponentCount() { + if( IsNormalMap() ) + return 3; + return 4; + } + + public bool HasAlpha() { + if( TextureAsset == null ) return false; + string path = AssetDatabase.GetAssetPath( TextureAsset ); + if( string.IsNullOrEmpty( path ) ) return false; + return ( (TextureImporter)UnityEditor.AssetImporter.GetAtPath( path ) ).DoesSourceTextureHaveAlpha(); + } + + private void UpdateCompCount(){ + texture.CompCount = IsNormalMap() ? 3 : 4; // TODO: This doesn't work when opening shaders. Why? + } + + public override string Evaluate( OutChannel channel = OutChannel.All ) { + + + UpdateCompCount(); + + if( varDefined ) + return GetVariableName(); + + + bool useLOD = GetInputIsConnected( "MIP" ) || ( SF_Evaluator.inVert || SF_Evaluator.inTess ); + string uvStr = GetInputIsConnected( "UVIN" ) ? GetInputCon( "UVIN" ).Evaluate() : SF_Evaluator.WithProgramPrefix( SF_Evaluator.inFrag ? "uv0" : "texcoord0" ); + string func = useLOD ? "tex2Dlod" : "tex2D"; + string mip = GetInputIsConnected( "MIP" ) ? GetInputCon( "MIP" ).Evaluate() : "0"; + + string variableName = this["TEX"].IsConnected() ? GetInputCon( "TEX" ).node.property.GetVariable() : property.GetVariable(); + + bool useTilingLocally = IsProperty() && !property.tagNoScaleOffset; + bool useTilingByAsset = this["TEX"].IsConnected() && !this["TEX"].inputCon.node.property.tagNoScaleOffset; + if( useTilingLocally || useTilingByAsset ) + uvStr = "TRANSFORM_TEX(" + uvStr + ", " + variableName + ")"; + + if( useLOD ) { + uvStr = "float4(" + uvStr + ",0.0," + mip + ")"; + } + + + string s = func + "(" + variableName + "," + uvStr + ")"; + if( IsNormalMap() ) { + s = "UnpackNormal(" + s + ")"; + } + + return s; + } + + public void UnpackNormals( ref Texture2D t ) { + Color[] colors = t.GetPixels(); + for( int i = 0; i < colors.Length; i++ ) { + colors[i] = UnpackNormal( colors[i] ); + } + t.SetPixels( colors ); + t.Apply(); + } + + public Color UnpackNormal( Color c ) { + Vector3 normal = Vector3.zero; + + normal = new Vector2( c.a, c.g ) * 2f - Vector2.one; + normal.z = Mathf.Sqrt( 1f - normal.x * normal.x - normal.y * normal.y ); + + // TODO: Check color clamp method! + return SF_Tools.VectorToColor( normal ); + } + + + + public override bool Draw() { + + CheckPropertyInput(); + + // If Tex is plugged in, make sure this uses the same asset and all + if( property == null ) { + + SFN_Tex2dAsset inTex = ( GetInputCon( "TEX" ).node as SFN_Tex2dAsset ); + + bool refresh = false; + if( this.TextureAsset == null ) + refresh = true; + if(!refresh) + if( inTex.textureAsset != this.TextureAsset ) + refresh = true; + + if( refresh ) { + this.TextureAsset = inTex.textureAsset; + //RenderToTexture(); + } + } + + + ProcessInput(); + DrawHighlight(); + PrepareWindowColor(); + + DrawWindow(); + ResetWindowColor(); + return true;//!CheckIfDeleted(); + } + + + public void CheckPropertyInput() { + if( property != null && connectors[2].IsConnected() ) { + shelvedProperty = property; + property = null; + if( editor.nodeView.treeStatus.propertyList.Contains( this ) ) + editor.nodeView.treeStatus.propertyList.Remove( this ); + } else if( property == null && !connectors[2].IsConnected() ) { + property = shelvedProperty; + shelvedProperty = null; + if( !editor.nodeView.treeStatus.propertyList.Contains( this ) ) + editor.nodeView.treeStatus.propertyList.Add( this ); + } + } + + + public override void OnDelete() { + TextureAsset = null; + } + + public override void NeatWindow( ) { + + rect.height = TexAssetConnected() ? NODE_HEIGHT : NODE_HEIGHT + 34; + + GUI.skin.box.clipping = TextClipping.Overflow; + GUI.BeginGroup( rect ); + + if( IsProperty() && Event.current.type == EventType.DragPerform && rectInner.Contains(Event.current.mousePosition) ) { + Object droppedObj = DragAndDrop.objectReferences[0]; + if( droppedObj is Texture2D || droppedObj is RenderTexture) { + Event.current.Use(); + TextureAsset = droppedObj as Texture; + OnAssignedTexture(); + } + } + + if( IsProperty() && Event.current.type == EventType.DragUpdated ) { + if(DragAndDrop.objectReferences.Length > 0){ + Object dragObj = DragAndDrop.objectReferences[0]; + if( dragObj is Texture2D || dragObj is RenderTexture) { + DragAndDrop.visualMode = DragAndDropVisualMode.Link; + editor.nodeBrowser.CancelDrag(); + Event.current.Use(); + } else { + DragAndDrop.visualMode = DragAndDropVisualMode.Rejected; + } + } else { + DragAndDrop.visualMode = DragAndDropVisualMode.Rejected; + } + } + + + + Color prev = GUI.color; + if( TextureAsset ) { + GUI.color = Color.white; + GUI.DrawTexture( rectInner, texture.texture, ScaleMode.StretchToFill, false ); // TODO: Doesn't seem to work + if(displayVectorDataMask){ + GUI.DrawTexture( rectInner, SF_GUI.VectorIconOverlay, ScaleMode.ScaleAndCrop, true); + } + } + + if( showLowerPropertyBox && !TexAssetConnected()) { + GUI.color = Color.white; + DrawLowerPropertyBox(); + } + + //else { + //GUI.color = new Color( GUI.color.r, GUI.color.g, GUI.color.b,0.5f); + //GUI.Label( rectInner, "Empty"); + //} + GUI.color = prev; + + + + if( IsProperty()){ + + bool draw = rectInner.Contains( Event.current.mousePosition ) && !SF_NodeConnector.IsConnecting(); + + Rect selectRect = new Rect( rectInner ); + selectRect.yMin += 80; + selectRect.xMin += 40; + Color c = GUI.color; + GUI.color = new Color( 1, 1, 1, draw ? 1 : 0 ); + if(GUI.Button( selectRect, "Select", EditorStyles.miniButton )){ + EditorGUIUtility.ShowObjectPicker( TextureAsset, false, "", this.id ); + Event.current.Use(); + } + GUI.color = c; + + } + + + if( IsProperty() && Event.current.type == EventType.ExecuteCommand && Event.current.commandName == "ObjectSelectorUpdated" && EditorGUIUtility.GetObjectPickerControlID() == this.id ) { + Event.current.Use(); + Texture newTextureAsset = EditorGUIUtility.GetObjectPickerObject() as Texture; + if(newTextureAsset != TextureAsset){ + if(newTextureAsset == null){ + UndoRecord("unassign texture of " + property.nameDisplay); + } else { + UndoRecord("switch texture to " + newTextureAsset.name + " in " + property.nameDisplay); + } + TextureAsset = newTextureAsset; + OnAssignedTexture(); + } + } + + GUI.EndGroup(); + + + + // GUI.DragWindow(); + + + + + /* + EditorGUI.BeginChangeCheck(); + textureAsset = (Texture)EditorGUI.ObjectField( rectInner, textureAsset, typeof( Texture ), false ); + if( EditorGUI.EndChangeCheck() ) { + OnAssignedTexture(); + } + * */ + + } + + public override void RefreshValue() { + CheckPropertyInput(); + base.RefreshValue(0,0); + //RenderToTexture(); + } + + public void OnAssignedTexture() { + + /* + if( HasAlpha() ) { + connectors[6].enableState = EnableState.Enabled; + base.texture.CompCount = 4; + } else { + connectors[6].Disconnect(); + connectors[6].enableState = EnableState.Hidden; + base.texture.CompCount = 3; + }*/ + + + + RefreshNoTexValueAndNormalUnpack(); + + + UpdateNormalMapAlphaState(); + //RenderToTexture(); + editor.shaderEvaluator.ApplyProperty( this ); + OnUpdateNode(NodeUpdateType.Soft); + } + + public void RefreshNoTexValueAndNormalUnpack(){ + bool newAssetIsNormalMap = false; + + string path = AssetDatabase.GetAssetPath( TextureAsset ); + if( string.IsNullOrEmpty( path ) ) + newAssetIsNormalMap = false; + else{ + AssetImporter importer = UnityEditor.AssetImporter.GetAtPath( path ); + if(importer is TextureImporter) + newAssetIsNormalMap = ((TextureImporter)importer ).textureType == TextureImporterType.NormalMap; + else + newAssetIsNormalMap = false; // When it's a RenderTexture or ProceduralTexture + } + + if(newAssetIsNormalMap){ + noTexValue = NoTexValue.Bump; + markedAsNormalMap = true; + UpdateNormalMapAlphaState(); + } else if( noTexValue == NoTexValue.Bump){ + noTexValue = NoTexValue.Black; + markedAsNormalMap = false; + UpdateNormalMapAlphaState(); + } + + UpdateCompCount(); + + } + + + public override string SerializeSpecialData() { + string s = ""; + if( property != null ) + s += property.Serialize() + ","; + + if( TextureAsset != null ) + s += "tex:" + SF_Tools.AssetToGUID( TextureAsset ) + ","; + s += "ntxv:" + ((int)noTexValue).ToString() + ","; + s += "isnm:" + markedAsNormalMap.ToString(); + + return s; + + } + + public override void DeserializeSpecialData( string key, string value ) { + property.Deserialize( key, value ); + switch( key ) { + case "tex": + TextureAsset = (Texture)SF_Tools.GUIDToAsset( value, typeof( Texture ) ); + OnAssignedTexture(); + break; + case "ntxv": + noTexValue = (NoTexValue)int.Parse(value); + break; + case "isnm": + markedAsNormalMap = bool.Parse(value); + UpdateNormalMapAlphaState(); + UpdateCompCount(); + break; + } + } + + + } +} \ No newline at end of file diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Tex2d.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Tex2d.cs.meta new file mode 100644 index 00000000..5569807d --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Tex2d.cs.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: cb7203f0faaf7274fa89fa02822dd483 +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Tex2dAsset.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Tex2dAsset.cs new file mode 100644 index 00000000..d74becd7 --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Tex2dAsset.cs @@ -0,0 +1,362 @@ +using UnityEngine; +using UnityEditor; +using System.Collections; + + +namespace ShaderForge { + [System.Serializable] + public class SFN_Tex2dAsset : SF_Node { + + + public Texture textureAsset; // TODO: Use a parent class, this looks ridiculous + public NoTexValue noTexValue = NoTexValue.White;// TODO: Use a parent class, this looks ridiculous + public bool markedAsNormalMap = false; // TODO: Use a parent class, this looks ridiculous + + public SFN_Tex2dAsset() { + + } + + public override void Initialize() { + base.Initialize( "Texture Asset", InitialPreviewRenderMode.BlitQuad ); + node_height = (int)(rect.height - 6f); // Odd, but alright... + base.UseLowerPropertyBox( true, true ); + base.texture.CompCount = 4; + base.showColor = true; + neverDefineVariable = true; + isFloatPrecisionBasedVariable = false; + base.shaderGenMode = ShaderGenerationMode.Manual; + //alwaysDefineVariable = true; + property = ScriptableObject.CreateInstance().Initialize( this ); + + connectors = new SF_NodeConnector[]{ + SF_NodeConnector.Create(this,"TEX","Tex",ConType.cOutput,ValueType.TexAsset).WithColor(SF_Node.colorExposed) + }; + } + + public override bool IsUniformOutput() { + return false; + } + + + + public bool IsNormalMap() { + return markedAsNormalMap; + } + + + public bool IsAssetNormalMap() { + + string path = AssetDatabase.GetAssetPath( textureAsset ); + if( string.IsNullOrEmpty( path ) ) + return false; + else{ + AssetImporter importer = UnityEditor.AssetImporter.GetAtPath( path ); + if(importer is TextureImporter) + return ((TextureImporter)importer).textureType == TextureImporterType.NormalMap; + else + return false; // When it's a RenderTexture or ProceduralTexture + } + + } + + public bool HasAlpha() { + if( textureAsset == null ) return false; + string path = AssetDatabase.GetAssetPath( textureAsset ); + if( string.IsNullOrEmpty( path ) ) return false; + return ( (TextureImporter)UnityEditor.AssetImporter.GetAtPath( path ) ).DoesSourceTextureHaveAlpha(); + } + + // TODO: MIP selection + public override string Evaluate( OutChannel channel = OutChannel.All ) { + + //if( varDefined ) + return GetVariableName(); + //else + //DefineVariable(); // This lags for some reason + + /* + bool useLOD = GetInputIsConnected( 1 ) || (SF_Evaluator.inVert || SF_Evaluator.inTess); + string uvStr = GetInputIsConnected( 0 ) ? GetInputCon( 0 ).Evaluate() : SF_Evaluator.WithProgramPrefix( "uv0.xy" ); + string func = useLOD ? "tex2Dlod" : "tex2D"; + string mip = GetInputIsConnected( 1 ) ? GetInputCon( 1 ).Evaluate() : "0"; + + if( useLOD ) { + uvStr = "float4(" + uvStr + ",0.0," + mip + ")"; + } + + + string s = func + "(" + property.GetVariable() + "," + uvStr + ")"; + if( IsNormalMap() ) { + s = "UnpackNormal(" + s + ")"; + } + */ + //Debug.LogError( "Invalid evaluation of " + property.name ); +// return ""; + } + + + public void UnpackNormals( ref Texture2D t ) { + Color[] colors = t.GetPixels(); + for( int i = 0; i < colors.Length; i++ ) { + colors[i] = UnpackNormal( colors[i] ); + } + t.SetPixels( colors ); + t.Apply(); + } + + public Color UnpackNormal( Color c ) { + Vector3 normal = Vector3.zero; + + normal = new Vector2( c.a, c.g ) * 2f - Vector2.one; + normal.z = Mathf.Sqrt( 1f - normal.x * normal.x - normal.y * normal.y ); + + // TODO: Check color clamp method! + return SF_Tools.VectorToColor( normal ); + } + + + + public override bool Draw() { + if( IsGlobalProperty()){ + rect.height = (int)(NODE_HEIGHT + 16f + 2); + } else { + rect.height = (int)(NODE_HEIGHT + 32f + 2); + } + + ProcessInput(); + DrawHighlight(); + PrepareWindowColor(); + DrawWindow(); + ResetWindowColor(); + return true;//!CheckIfDeleted(); + } + + public override void OnDelete() { + textureAsset = null; + } + + public override void NeatWindow( ) { + + GUI.skin.box.clipping = TextClipping.Overflow; + GUI.BeginGroup( rect ); + + if(IsGlobalProperty()){ + GUI.enabled = false; + } + + if( IsProperty() && Event.current.type == EventType.DragPerform && rectInner.Contains(Event.current.mousePosition) ) { + Object droppedObj = DragAndDrop.objectReferences[0]; + if( droppedObj is Texture2D || droppedObj is RenderTexture) { + Event.current.Use(); + textureAsset = droppedObj as Texture; + OnAssignedTexture(); + } + } + + if( IsProperty() && Event.current.type == EventType.DragUpdated ) { + if(DragAndDrop.objectReferences.Length > 0){ + Object dragObj = DragAndDrop.objectReferences[0]; + if( dragObj is Texture2D || dragObj is RenderTexture) { + DragAndDrop.visualMode = DragAndDropVisualMode.Link; + editor.nodeBrowser.CancelDrag(); + Event.current.Use(); + } else { + DragAndDrop.visualMode = DragAndDropVisualMode.Rejected; + } + } else { + DragAndDrop.visualMode = DragAndDropVisualMode.Rejected; + } + } + + if(IsGlobalProperty()){ + GUI.enabled = true; + } + + + + Color prev = GUI.color; + if( textureAsset ) { + GUI.color = Color.white; + GUI.DrawTexture( rectInner, texture.texture, ScaleMode.StretchToFill, false ); + } //else { + //GUI.color = new Color( GUI.color.r, GUI.color.g, GUI.color.b,0.5f); + //GUI.Label( rectInner, "Empty"); + //} + + if( showLowerPropertyBox ) { + GUI.color = Color.white; + DrawLowerPropertyBox(); + } + + GUI.color = prev; + + + + if( rectInner.Contains( Event.current.mousePosition ) && !SF_NodeConnector.IsConnecting() && !IsGlobalProperty() ) { + Rect selectRect = new Rect( rectInner ); + selectRect.yMin += 80; + selectRect.xMin += 40; + + if(GUI.Button( selectRect, "Select", EditorStyles.miniButton )){ + EditorGUIUtility.ShowObjectPicker( textureAsset, false, "", this.id ); + Event.current.Use(); + } + + } + + + if( !IsGlobalProperty() && Event.current.type == EventType.ExecuteCommand && Event.current.commandName == "ObjectSelectorUpdated" && EditorGUIUtility.GetObjectPickerControlID() == this.id ) { + Event.current.Use(); + Texture newTextureAsset = EditorGUIUtility.GetObjectPickerObject() as Texture; + if(newTextureAsset != textureAsset){ + if(newTextureAsset == null){ + UndoRecord("unassign texture of " + property.nameDisplay); + } else { + UndoRecord("switch texture to " + newTextureAsset.name + " in " + property.nameDisplay); + } + textureAsset = newTextureAsset; + OnAssignedTexture(); + } + + } + + GUI.EndGroup(); + + + + // GUI.DragWindow(); + + + + + /* + EditorGUI.BeginChangeCheck(); + textureAsset = (Texture)EditorGUI.ObjectField( rectInner, textureAsset, typeof( Texture ), false ); + if( EditorGUI.EndChangeCheck() ) { + OnAssignedTexture(); + } + * */ + + } + + public override void RefreshValue() { + base.RefreshValue( 0, 0 ); + //RenderToTexture(); + } + + public override int GetEvaluatedComponentCount() { + if( IsNormalMap() ) + return 3; + return 4; + } + + public override void PrepareRendering( Material mat ) { + if( textureAsset != null ) { + mat.mainTexture = textureAsset; + mat.SetFloat( "_IsNormal", IsNormalMap() ? 1 : 0 ); + } + } + + + public void OnAssignedTexture() { + + /* + if( HasAlpha() ) { + connectors[6].enableState = EnableState.Enabled; + base.texture.CompCount = 4; + } else { + connectors[6].Disconnect(); + connectors[6].enableState = EnableState.Hidden; + base.texture.CompCount = 3; + }*/ + RefreshNoTexValueAndNormalUnpack(); + editor.shaderEvaluator.ApplyProperty( this ); + OnUpdateNode(); + } + + + + // TODO: Use a parent class, this looks ridiculous + // TODO: Use a parent class, this looks ridiculous + // TODO: Use a parent class, this looks ridiculous + public void RefreshNoTexValueAndNormalUnpack(){ + bool newAssetIsNormalMap = false; + + string path = AssetDatabase.GetAssetPath( textureAsset ); + if( string.IsNullOrEmpty( path ) ) + newAssetIsNormalMap = false; + else{ + AssetImporter importer = UnityEditor.AssetImporter.GetAtPath( path ); + if(importer is TextureImporter) + newAssetIsNormalMap = ((TextureImporter)importer ).textureType == TextureImporterType.NormalMap; + else + newAssetIsNormalMap = false; // When it's a RenderTexture or ProceduralTexture + } + + if(newAssetIsNormalMap){ + noTexValue = NoTexValue.Bump; + markedAsNormalMap = true; + } else if( noTexValue == NoTexValue.Bump){ + noTexValue = NoTexValue.Black; + markedAsNormalMap = false; + } + + } + + + public override void DrawLowerPropertyBox() { + GUI.color = Color.white; + EditorGUI.BeginChangeCheck(); + Rect tmp = lowerRect; + tmp.height = 16f; + if(!IsGlobalProperty()){ + noTexValue = (NoTexValue)UndoableLabeledEnumPopup(tmp, "Default", noTexValue, "swith default color of " + property.nameDisplay ); + //noTexValue = (NoTexValue)SF_GUI.LabeledEnumField( tmp, "Default", noTexValue, EditorStyles.miniLabel ); + tmp.y += tmp.height; + } + bool preMarked = markedAsNormalMap; + UndoableToggle(tmp, ref markedAsNormalMap, "Normal map", "normal map decode of " + property.nameDisplay, null); + //markedAsNormalMap = GUI.Toggle(tmp, markedAsNormalMap, "Normal map" ); + if(EditorGUI.EndChangeCheck()){ + + if(markedAsNormalMap && !preMarked) + noTexValue = NoTexValue.Bump; + OnUpdateNode(); + + } + + } + + + public override string SerializeSpecialData() { + + string s = property.Serialize() + ","; + + if( textureAsset != null ) + s += "tex:" + SF_Tools.AssetToGUID( textureAsset ) + ","; + s += "ntxv:" + ( (int)noTexValue ).ToString() + ","; + s += "isnm:" + markedAsNormalMap.ToString(); + + return s; + + } + + public override void DeserializeSpecialData( string key, string value ) { + property.Deserialize( key, value ); + switch( key ) { + case "tex": + textureAsset = (Texture)SF_Tools.GUIDToAsset( value, typeof( Texture ) ); + OnAssignedTexture(); + break; + case "ntxv": + noTexValue = (NoTexValue)int.Parse( value ); + break; + case "isnm": + markedAsNormalMap = bool.Parse( value ); + break; + } + } + + + } +} \ No newline at end of file diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Tex2dAsset.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Tex2dAsset.cs.meta new file mode 100644 index 00000000..a5bb751e --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Tex2dAsset.cs.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 9869459e0257d034e93856da292f741e +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: From 0529164061bb0e2d12cb03c9a3b6c8b4be455008 Mon Sep 17 00:00:00 2001 From: Ryan Date: Sun, 16 Dec 2018 23:20:56 +0800 Subject: [PATCH 10/27] Fixed: Preview window crashing. --- .../Editor/Code/SF_PreviewWindow.cs | 506 ++++++++++++++++++ .../Editor/Code/SF_PreviewWindow.cs.meta | 8 + 2 files changed, 514 insertions(+) create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/SF_PreviewWindow.cs create mode 100644 Shader Forge/Assets/ShaderForge/Editor/Code/SF_PreviewWindow.cs.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/SF_PreviewWindow.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/SF_PreviewWindow.cs new file mode 100644 index 00000000..a7995bf2 --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/SF_PreviewWindow.cs @@ -0,0 +1,506 @@ +using UnityEngine; +using UnityEditor; +using System.Collections; +using System.Reflection; +using System; + +namespace ShaderForge { + [Serializable] + public class SF_PreviewWindow { + + [SerializeField] + public SF_Editor editor; + [SerializeField] + public SF_PreviewSettings settings; + + // Preview assets + [SerializeField] + public Mesh mesh; + [SerializeField] + public Material internalMaterial; + public Material InternalMaterial { + get { + if(internalMaterial == null){ + internalMaterial = new Material(editor.currentShaderAsset); + } + return internalMaterial; + } + set { + internalMaterial = value; + } + } + + [SerializeField] + public RenderTexture render; // TODO: Why is this separated from the RT itself? + [SerializeField] + GUIStyle previewStyle; + [SerializeField] + public Texture2D backgroundTexture; + + bool previewIsSetUp = false; // Intentionally non-serialized + + + // Input/Rotation + [SerializeField] + public bool isDraggingLMB = false; + [SerializeField] + Vector2 dragStartPosLMB = Vector2.zero; + [SerializeField] + Vector2 rotMeshStart = new Vector2(-30f,0f); + [SerializeField] + Vector2 rotMesh = new Vector2(30f,0f); + [SerializeField] + Vector2 rotMeshSmooth = new Vector2(-30f,0f); + + // Light Input/Rotation + [SerializeField] + public bool isDraggingRMB = false; + + [SerializeField] + public Camera cam; + [SerializeField] + Transform camPivot; + [SerializeField] + Light[] lights; + + //public bool drawBgColor = true; + + Mesh _sphereMesh; + Mesh sphereMesh { + get { + if( _sphereMesh == null ) { + _sphereMesh = GetSFMesh( "sf_sphere" ); + } + return _sphereMesh; + } + } + + // Reflection to call Handles.SetCameraOnlyDrawMesh(this.m_Camera); + MethodInfo mSetCameraOnlyDrawMesh; + + public SF_PreviewWindow( SF_Editor editor ) { + settings = new SF_PreviewSettings( this ); + UpdatePreviewBackgroundColor(); + + this.editor = editor; + this.mesh = GetSFMesh( "sf_sphere" ); + SetupPreview(); + } + + [SerializeField] bool enabled = true; + public void OnEnable() { + enabled = true; + SetupPreview(); + } + public void OnDisable() { + enabled = false; + CleanupObjects(); + } + + public Mesh GetSFMesh(string find_name) { + UnityEngine.Object[] objs = SF_Resources.LoadAll( SF_Resources.pMeshes+"sf_meshes.fbx" ); + if( objs == null ) { + Debug.LogError( "sf_meshes.fbx missing" ); + return null; + } + if( objs.Length == 0 ) { + Debug.LogError( "sf_meshes.fbx missing sub assets" ); + return null; + } + foreach( UnityEngine.Object o in objs ) { + if( o.name == find_name && o.GetType() == typeof(Mesh)) { + return o as Mesh; + } + } + Debug.LogError("Mesh " + find_name + " could not be found in sf_meshes.fbx"); + return null; + } + + + public void SetupPreview() { + + previewIsSetUp = true; + + // Create preview camera + GameObject camObj = new GameObject("Shader Forge Camera"); + camObj.hideFlags = HideFlags.HideAndDontSave; + cam = camObj.AddComponent(); + cam.targetTexture = render; + cam.clearFlags = CameraClearFlags.SolidColor; + cam.renderingPath = RenderingPath.Forward; + cam.enabled = false; + cam.useOcclusionCulling = false; + cam.cameraType = CameraType.Preview; + cam.fieldOfView = targetFOV; + + // Make sure it only renders using DrawMesh, to make ignore the scene. This is a bit risky, due to using reflection :( + // BindingFlags bfs = BindingFlags.Static | BindingFlags.NonPublic; + // Type[] args = new Type[]{ typeof(Camera) }; + // mSetCameraOnlyDrawMesh = typeof( Handles ).GetMethod( "SetCameraOnlyDrawMesh", bfs, null, args, null ); + // mSetCameraOnlyDrawMesh.Invoke( null, new object[]{ cam } ); + + // Create pivot/transform to hold it + camPivot = new GameObject("Shader Forge Camera Pivot").transform; + camPivot.gameObject.hideFlags = HideFlags.HideAndDontSave; + cam.clearFlags = CameraClearFlags.Skybox; + cam.transform.parent = camPivot; + + // Create custom light sources + lights = new Light[] { + new GameObject("Light 0").AddComponent(), + new GameObject("Light 1").AddComponent() + }; + for( int i = 0; i < lights.Length; i++ ) { + lights[i].gameObject.hideFlags = HideFlags.HideAndDontSave; + lights[i].type = LightType.Directional; + lights[i].lightmapBakeType = LightmapBakeType.Realtime; + lights[i].enabled = false; + } + + lights[0].intensity = 1f; + lights[0].transform.rotation = Quaternion.Euler( 30f, 30f, 0f ); + lights[1].intensity = 0.75f; + lights[1].color = new Color( 1f, 0.5f, 0.25f ); + lights[1].transform.rotation = Quaternion.Euler( 340f, 218f, 177f ); + } + + void CleanupObjects() { + GameObject.DestroyImmediate( cam.gameObject ); + GameObject.DestroyImmediate( camPivot.gameObject ); + for( int i = 0; i < lights.Length; i++ ) { + GameObject.DestroyImmediate( lights[i].gameObject ); + } + } + + + public bool SkyboxOn{ + get{ + return cam.clearFlags == CameraClearFlags.Skybox; + } + set{ + if(SF_Debug.renderDataNodes) + cam.clearFlags = CameraClearFlags.Depth; + else + cam.clearFlags = value ? CameraClearFlags.Skybox : CameraClearFlags.SolidColor; + } + } + + static Vector2 rotMeshSphere = new Vector2( 22, -18 - 90 - 12 ); + const float fovSphere = 23.4f; + + public void PrepareForDataScreenshot(){ + + // Reset rotation + // Reset zoom + // Stop auto-rotate + + rotMesh.x = rotMeshSmooth.x = rotMeshSphere.x; + rotMesh.y = rotMeshSmooth.y = rotMeshSphere.y; + cam.fieldOfView = targetFOV = smoothFOV = fovSphere; + + } + + + public int OnGUI( int yOffset, int maxWidth ) { + + if( enabled == false ) + return yOffset; + + Rect topBar = new Rect( 0, yOffset, maxWidth, 18 ); + + + GUI.Box( topBar, "", EditorStyles.toolbar ); + + Rect r = new Rect( topBar ); + r.width = maxWidth / 3; + r.height = 16; + r.x += 10; + r.y += 1; + + //EditorGUILayout.BeginHorizontal(); + //{ + EditorGUI.BeginChangeCheck(); + mesh = (Mesh)EditorGUI.ObjectField(r, mesh, typeof( Mesh ), false ); + if( EditorGUI.EndChangeCheck() ) { + targetFOV = 35f; + //editor.Defocus(); // TODO: This is a bit hacky + } + + r.x += r.width + 10; + r.width *= 0.5f; + EditorGUI.BeginChangeCheck(); + GUI.enabled = cam.clearFlags != CameraClearFlags.Skybox; + //GUI.color = GUI.enabled ? Color.white : new Color(1f,1f,1f,0.5f); + settings.colorBg = EditorGUI.ColorField( r, "", settings.colorBg ); + cam.backgroundColor = settings.colorBg; + + GUI.enabled = true; + //GUI.color = Color.white; + if( EditorGUI.EndChangeCheck() ) + UpdatePreviewBackgroundColor(); + + + r.x += r.width + 10; + r.width += 10; + + + GUI.enabled = RenderSettings.skybox != null; + SkyboxOn = GUI.Toggle( r, SkyboxOn, "Skybox" ); + if(RenderSettings.skybox == null && SkyboxOn){ + SkyboxOn = false; + } + GUI.enabled = true; + + r.x += r.width + 10; + settings.previewAutoRotate = GUI.Toggle( r, settings.previewAutoRotate, "Rotate" ); + + + Rect previewRect = new Rect( topBar ); + previewRect.y += topBar.height; + previewRect.height = topBar.width; + + + UpdateCameraZoom(); + DrawMeshGUI( previewRect ); + if(SF_Debug.renderDataNodes) + GUI.Label(previewRect, "rotMesh.x = " + rotMesh.x + " rotMesh.y = " + rotMesh.y); + + return (int)previewRect.yMax; + } + + public void UpdateRenderPath(){ + SFPSC_Lighting.RenderPath rPath = editor.ps.catLighting.renderPath; + + if(rPath == SFPSC_Lighting.RenderPath.Forward){ + cam.renderingPath = RenderingPath.Forward; + } else if(rPath == SFPSC_Lighting.RenderPath.Deferred){ + cam.renderingPath = RenderingPath.DeferredLighting; + //pruCam.clearFlags == CameraClearFlags.Depth; + } + } + + public void UpdateRot(){ + if(settings.previewAutoRotate){ + rotMesh.y += (float)(editor.deltaTime * -22.5); + } + rotMeshSmooth = Vector2.Lerp(rotMeshSmooth,rotMesh,0.5f); + } + + public void StartDragLMB() { + isDraggingLMB = true; + if(settings.previewAutoRotate == true){ + settings.previewAutoRotate = false; + } + dragStartPosLMB = Event.current.mousePosition; + rotMeshStart = rotMesh; + } + + public void UpdateDragLMB() { + rotMesh.y = rotMeshStart.y + ( -(dragStartPosLMB.x - Event.current.mousePosition.x) ) * 0.4f; + rotMesh.x = Mathf.Clamp( rotMeshStart.x + ( -(dragStartPosLMB.y - Event.current.mousePosition.y) ) * 0.4f, -90f, 90f ); + } + + public void StopDragLMB() { + isDraggingLMB = false; + } + + + public void StartDragRMB() { + isDraggingRMB = true; + } + + public void UpdateDragRMB() { + + if( Event.current.isMouse && Event.current.type == EventType.MouseDrag ) { + float x = ( -( Event.current.delta.x ) ) * 0.4f; + float y = ( -( Event.current.delta.y ) ) * 0.4f; + for( int i = 0; i < lights.Length; i++ ) { + lights[i].transform.RotateAround( Vector3.zero, cam.transform.right, y ); + lights[i].transform.RotateAround( Vector3.zero, cam.transform.up, x ); + } + } + + + } + + public void StopDragRMB() { + isDraggingRMB = false; + } + + + public bool MouseOverPreview() { + return previewRect.Contains( Event.current.mousePosition ); + } + + [SerializeField] + Rect previewRect = new Rect(0f,0f,1f,1f); + public void DrawMeshGUI( Rect previewRect ) { + + if( previewRect == default( Rect ) ) { + previewRect = this.previewRect; + } + + if( previewRect.width > 1 ) + this.previewRect = previewRect; + + if( Event.current.rawType == EventType.MouseUp ) { + if( Event.current.button == 0 ) + StopDragLMB(); + else if( Event.current.button == 1 ) + StopDragRMB(); + } + + if( Event.current.type == EventType.MouseDown && MouseOverPreview() ) { + if( Event.current.button == 0 ) + StartDragLMB(); + else if( Event.current.button == 1 ) + StartDragRMB(); + } + + if( isDraggingLMB ) + UpdateDragLMB(); + if( isDraggingRMB ) + UpdateDragRMB(); + + + if( mesh == null || InternalMaterial == null || Event.current.type != EventType.Repaint ) + return; + + + + if( previewStyle == null ) { + previewStyle = new GUIStyle( EditorStyles.textField ); + } + previewStyle.normal.background = backgroundTexture; + + + + bool makeNew = false; + if( render == null ) { + makeNew = true; + } else if( render.width != (int)previewRect.width || render.height != (int)previewRect.height ) { + RenderTexture.DestroyImmediate( render ); + makeNew = true; + } + + if( makeNew ) { + render = new RenderTexture( (int)previewRect.width, (int)previewRect.height, 24, RenderTextureFormat.ARGB32 ); + render.antiAliasing = 8; + } + + DrawMesh(); + GL.sRGBWrite = ( QualitySettings.activeColorSpace == ColorSpace.Linear ); + GUI.DrawTexture( previewRect, render, ScaleMode.StretchToFill, false ); + GL.sRGBWrite = false; + + } + + + + public void DrawMesh( RenderTexture overrideRT = null, Material overrideMaterial = null, bool sphere = false ) { + if( backgroundTexture == null ) + UpdatePreviewBackgroundColor(); + + // Make sure all objects are set up properly + if( previewIsSetUp == false ) { + SetupPreview(); + } + + + // TODO: Override RT is used for screenshots, probably + if( overrideRT != null ) + cam.targetTexture = overrideRT; + else if( cam.targetTexture == null ) + cam.targetTexture = render; + + UpdateRenderPath(); + + SetCustomLight(on:true); + + Mesh drawMesh = sphere ? sphereMesh : mesh; + + float A = sphere ? rotMeshSphere.y : rotMeshSmooth.y; + float B = sphere ? rotMeshSphere.x : rotMeshSmooth.x; + Quaternion rotA = Quaternion.Euler( 0f, A, 0f ); + Quaternion rotB = Quaternion.Euler( B, 0f, 0f ); + Quaternion finalRot = rotA * rotB; + camPivot.rotation = finalRot; + float meshExtents = drawMesh.bounds.extents.magnitude; + + + Vector3 pos = new Vector3( -drawMesh.bounds.center.x, -drawMesh.bounds.center.y, -drawMesh.bounds.center.z ); + cam.transform.localPosition = new Vector3( 0f, 0f, -3f * meshExtents ); + + int smCount = drawMesh.subMeshCount; + + Material mat = (overrideMaterial == null) ? InternalMaterial : overrideMaterial; + for( int i=0; i < smCount; i++ ) { + Graphics.DrawMesh( drawMesh, Quaternion.identity * pos, Quaternion.identity, mat, 31, cam, i ); + } + + cam.farClipPlane = 3f * meshExtents * 2f; + cam.nearClipPlane = 0.1f; + cam.fieldOfView = sphere ? fovSphere : smoothFOV; + cam.Render(); + + // Reset things + SetCustomLight( on: false ); + + if( overrideRT != null ) + cam.targetTexture = render; + + if( sphere ) // Reset if needed. // TODO: What? + cam.fieldOfView = smoothFOV; + } + + + + + [SerializeField] + const float minFOV = 1f; + [SerializeField] + float targetFOV = 30f; + [SerializeField] + float smoothFOV = 30f; + [SerializeField] + const float maxFOV = 60f; + + public void UpdateCameraZoom() { + + if( Event.current.type == EventType.ScrollWheel && MouseOverPreview() ) { + if(Event.current.delta.y > 0f){ + targetFOV+=2f; + } else if( Event.current.delta.y < 0f ){ + targetFOV-=2f; + } + } + if( Event.current.type == EventType.Repaint ) { + targetFOV = Mathf.Clamp( targetFOV, minFOV, maxFOV ); + smoothFOV = Mathf.Lerp( cam.fieldOfView, targetFOV, 0.5f ); + } + } + + + public void UpdatePreviewBackgroundColor() { + if( backgroundTexture == null ){ + backgroundTexture = new Texture2D( 1, 1, TextureFormat.ARGB32, false, QualitySettings.activeColorSpace == ColorSpace.Linear ); + backgroundTexture.hideFlags = HideFlags.HideAndDontSave; + } + Color c = settings.colorBg; + backgroundTexture.SetPixels( new Color[] { c } ); + backgroundTexture.Apply(); + } + + public void SetCustomLight(bool on) { + if( on ) { + UnityEditorInternal.InternalEditorUtility.SetCustomLighting( lights, RenderSettings.ambientLight ); + } else { + UnityEditorInternal.InternalEditorUtility.RemoveCustomLighting(); + } + } + + + + + } +} \ No newline at end of file diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/SF_PreviewWindow.cs.meta b/Shader Forge/Assets/ShaderForge/Editor/Code/SF_PreviewWindow.cs.meta new file mode 100644 index 00000000..8d9fa4bb --- /dev/null +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/SF_PreviewWindow.cs.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 143d65d02bb214ab39919bad663ed37d +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: From 6a8860a24b5d1d3240182388fe6d9392fb15633c Mon Sep 17 00:00:00 2001 From: Ryan Date: Sun, 16 Dec 2018 23:21:16 +0800 Subject: [PATCH 11/27] Removed: ShaderForge.dll --- .../Assets/ShaderForge/Editor/ShaderForge.dll | Bin 438272 -> 0 bytes .../ShaderForge/Editor/ShaderForge.dll.meta | 34 ------------------ 2 files changed, 34 deletions(-) delete mode 100644 Shader Forge/Assets/ShaderForge/Editor/ShaderForge.dll delete mode 100644 Shader Forge/Assets/ShaderForge/Editor/ShaderForge.dll.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/ShaderForge.dll b/Shader Forge/Assets/ShaderForge/Editor/ShaderForge.dll deleted file mode 100644 index fad8c09cf3932c1e3385eb13f01fdf2406efe41b..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 438272 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 diff --git a/Shader Forge/Assets/ShaderForge/Editor/ShaderForge.dll.meta b/Shader Forge/Assets/ShaderForge/Editor/ShaderForge.dll.meta deleted file mode 100644 index 6fb4050b..00000000 --- a/Shader Forge/Assets/ShaderForge/Editor/ShaderForge.dll.meta +++ /dev/null @@ -1,34 +0,0 @@ -fileFormatVersion: 2 -guid: 08443a5b77d963441a8fd8ae06b00101 -timeCreated: 1503340689 -licenseType: Store -PluginImporter: - serializedVersion: 2 - iconMap: {} - executionOrder: {} - isPreloaded: 0 - isOverridable: 0 - platformData: - data: - first: - Any: - second: - enabled: 0 - settings: {} - data: - first: - Editor: Editor - second: - enabled: 1 - settings: - DefaultValueInitialized: true - data: - first: - Windows Store Apps: WindowsStoreApps - second: - enabled: 0 - settings: - CPU: AnyCPU - userData: - assetBundleName: - assetBundleVariant: From 7afe4472f97986f63bb3a1a29cc20bc46a69f631 Mon Sep 17 00:00:00 2001 From: Pyro_akm Date: Thu, 3 Jan 2019 15:04:19 +0100 Subject: [PATCH 12/27] Fixed dark background problem when using professional editor skin. --- .../Assets/ShaderForge/Editor/Code/SF_PreviewWindow.cs | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/SF_PreviewWindow.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/SF_PreviewWindow.cs index a7995bf2..641e235f 100644 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/SF_PreviewWindow.cs +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/SF_PreviewWindow.cs @@ -389,9 +389,10 @@ public void DrawMeshGUI( Rect previewRect ) { } DrawMesh(); + bool b=GL.sRGBWrite; GL.sRGBWrite = ( QualitySettings.activeColorSpace == ColorSpace.Linear ); GUI.DrawTexture( previewRect, render, ScaleMode.StretchToFill, false ); - GL.sRGBWrite = false; + GL.sRGBWrite = b; } From 3c685bc01f7d6cb6aba1ffebb5936cdda82ac1dd Mon Sep 17 00:00:00 2001 From: Pyro_akm Date: Thu, 3 Jan 2019 15:29:02 +0100 Subject: [PATCH 13/27] Added Nintendo Switch support. --- .../Assets/ShaderForge/Editor/Code/SFPSC_Meta.cs | 6 ++++-- .../Assets/ShaderForge/Editor/Code/SF_Dependencies.cs | 11 ++++++++++- .../ShaderForge/Editor/Code/SF_InstructionPass.cs | 3 ++- .../Assets/ShaderForge/Editor/Code/SF_Parser.cs | 3 +++ .../ShaderForge/Editor/Code/_Utility/SF_Tools.cs | 6 ++++-- 5 files changed, 23 insertions(+), 6 deletions(-) diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/SFPSC_Meta.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/SFPSC_Meta.cs index 5a4fe813..799634c8 100644 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/SFPSC_Meta.cs +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/SFPSC_Meta.cs @@ -36,10 +36,11 @@ public enum BatchingMode { Enabled, Disabled, DisableDuringLODFade }; psp2 = 10 // - PlayStation Vita n3ds = 11 // - Nintendo 3DS wiiu = 12, // - Nintendo Wii U + switch = 13, */ public override SFPS_Category PostInitialize (){ - usedRenderers = new bool[12]{ // TODO: Load from project settings + usedRenderers = new bool[13]{ // TODO: Load from project settings true, // - Direct3D 9 true, // - Direct3D 11 true, // - OpenGL Core @@ -51,7 +52,8 @@ public override SFPS_Category PostInitialize (){ false, // - PlayStation 4 false, // - PlayStation Vita false, // - Nintendo 3DS - false // - Wii U + false, // - Wii U + false // - Switch }; return this; } diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/SF_Dependencies.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/SF_Dependencies.cs index 3d5f297f..a0764289 100644 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/SF_Dependencies.cs +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/SF_Dependencies.cs @@ -278,7 +278,16 @@ public bool IsTargetingAboveDefault() { public string GetIncludedPlatforms() { string s = ""; foreach( RenderPlatform plat in includeRenderers ) - s += plat.ToString() + " "; + { + if(plat.ToString()=="nswitch") + { + s += "switch "; + } + else + { + s += plat.ToString() + " "; + } + } //Debug.Log("Exclude Str: " + s); return s; } diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/SF_InstructionPass.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/SF_InstructionPass.cs index 1302e28b..0103ecc6 100644 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/SF_InstructionPass.cs +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/SF_InstructionPass.cs @@ -35,7 +35,8 @@ public class SFIns_Pass { new SFIns_PassPlat(RenderPlatform.ps4), new SFIns_PassPlat(RenderPlatform.psp2), new SFIns_PassPlat(RenderPlatform.n3ds), - new SFIns_PassPlat(RenderPlatform.wiiu) + new SFIns_PassPlat(RenderPlatform.wiiu), + new SFIns_PassPlat(RenderPlatform.nswitch) }; public void Parse(ShaderProgram prog, string line, bool ignoreMin ) { diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/SF_Parser.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/SF_Parser.cs index 209a59cb..38942306 100644 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/SF_Parser.cs +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/SF_Parser.cs @@ -271,6 +271,9 @@ public static void ParseRenderer( string[] arr, bool only ) { if( rndr == "opengl" ) { rndr = "glcore"; } + if( rndr == "switch" ) { + rndr = "nswitch"; + } int enm = (int)((RenderPlatform)Enum.Parse( typeof( RenderPlatform ), rndr )); editor.ps.catMeta.usedRenderers[enm] = only; // Disable or enable one } diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Utility/SF_Tools.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/_Utility/SF_Tools.cs index dbf37e21..2b58228d 100644 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/_Utility/SF_Tools.cs +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/_Utility/SF_Tools.cs @@ -20,7 +20,8 @@ public enum RenderPlatform { ps4 = 8, // - PlayStation 4 psp2 = 9, // - PlayStation Vita n3ds = 10, // - Nintendo 3DS - wiiu = 11 // - Nintendo Wii U + wiiu = 11, // - Nintendo Wii U + nswitch = 12, // - Nintendo Switch }; @@ -51,7 +52,8 @@ public static class SF_Tools { "PlayStation 4", "PlayStation Vita", "Nintendo 3DS", - "Nintendo Wii U" + "Nintendo Wii U", + "Nintendo Switch" }; public const string alphabetLower = "abcdefghijklmnopqrstuvwxyz"; From 831d769dfc889eabf321d49d1bf4ef1f71d32437 Mon Sep 17 00:00:00 2001 From: Pyro_akm Date: Thu, 3 Jan 2019 15:30:02 +0100 Subject: [PATCH 14/27] Fixed access to null object sometimes. --- .../Assets/ShaderForge/Editor/Code/_Utility/SF_Link.cs | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Utility/SF_Link.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/_Utility/SF_Link.cs index 14910d30..39ab3521 100644 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/_Utility/SF_Link.cs +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/_Utility/SF_Link.cs @@ -26,7 +26,10 @@ public void Establish( SF_Editor editor, LinkingMethod linkMethod = LinkingMetho SF_Node source = editor.GetNodeByID( sNode ); SF_Node target = editor.GetNodeByID( tNode ); // Debug.Log( "Linking " + target.nodeName + " <- " + source.nodeName ); - + if(target==null) + { + return; + } target.GetConnectorByID(tCon).LinkTo( source.GetConnectorByID(sCon), linkMethod ); } From dcf7123cabf7d17a2c1474ab6d6fdc22ddb56e9b Mon Sep 17 00:00:00 2001 From: Pyro_akm Date: Fri, 4 Jan 2019 14:57:21 +0100 Subject: [PATCH 15/27] Updated version to 1.39. --- .../Editor/Code/_Utility/SF_Tools.cs | 976 +++++++++--------- 1 file changed, 488 insertions(+), 488 deletions(-) diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Utility/SF_Tools.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/_Utility/SF_Tools.cs index 2b58228d..339a6ef8 100644 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/_Utility/SF_Tools.cs +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/_Utility/SF_Tools.cs @@ -1,488 +1,488 @@ -using UnityEngine; -using UnityEditor; -using System.Collections; -using System; -using System.Reflection; -using System.Text.RegularExpressions; - -namespace ShaderForge { - - [System.Serializable] - public enum RenderPlatform { - d3d9 = 0, // - Direct3D 9 - d3d11 = 1, // - Direct3D 11 / 12 - glcore = 2, // - OpenGL Core - gles = 3, // - OpenGL ES 2.0 - gles3 = 4, // - OpenGL ES 3.0 - metal = 5, // - iOS Metal - d3d11_9x = 6, // - Direct3D 11 windows RT - xboxone = 7, // - Xbox One - ps4 = 8, // - PlayStation 4 - psp2 = 9, // - PlayStation Vita - n3ds = 10, // - Nintendo 3DS - wiiu = 11, // - Nintendo Wii U - nswitch = 12, // - Nintendo Switch - }; - - - - public static class SF_Tools { - - // Versioning - public static int versionNumPrimary = 1; - public static int versionNumSecondary = 38; - public static string versionStage = ""; - public static string version = versionNumPrimary + "." + versionNumSecondary.ToString( "D2" ); - public static string versionString = "Shader Forge v" + version; - - // Misc strings - public const string bugReportLabel = "Post bugs & ideas"; - public const string bugReportURL = "https://shaderforge.userecho.com/"; - public const string documentationLabel = "Node Documentation"; - public const string documentationURL = "http://www.acegikmo.com/shaderforge/nodes/"; - public static string[] rendererLabels = new string[]{ - "Direct3D 9", - "Direct3D 11 & 12", - "OpenGL Core", - "OpenGL ES 2.0", - "OpenGL ES 3.0", - "iOS Metal", - "Direct3D 11 for Windows RT/Phone", - "Xbox One", - "PlayStation 4", - "PlayStation Vita", - "Nintendo 3DS", - "Nintendo Wii U", - "Nintendo Switch" - }; - - public const string alphabetLower = "abcdefghijklmnopqrstuvwxyz"; - public const string alphabetUpper = "ABCDEFGHIJKLMNOPQRSTUVWXYZ"; - - - // Constants - public const int connectorMargin = 4; - - // User prefs - public static bool absColor = false; - public static bool advancedInspector = true; - public static int stationaryCursorRadius = 7; - - - public const float minimumUnityVersion = 5.3f; - - private static float currentUnityVersion = 0f; - public static float CurrentUnityVersion{ - get{ - if(currentUnityVersion == 0f){ - currentUnityVersion = float.Parse(Application.unityVersion.Substring(0,3)); - } - return currentUnityVersion; - } - } - - public static bool CanRunShaderForge(){ - return (CurrentUnityVersion >= minimumUnityVersion); - } - - - public static bool HasUnityPro(){ - return UnityEditorInternal.InternalEditorUtility.HasPro(); - } - - - - - public static void UnityOutOfDateGUI(){ - GUIStyle st = new GUIStyle(EditorStyles.boldLabel); - - st.alignment = TextAnchor.MiddleCenter; - - GUILayout.Label(string.Empty); - GUILayout.Label("You need to install Unity " + SF_Tools.minimumUnityVersion + " or later in order to use Shader Forge", st); - GUILayout.Label("You are currently running Unity version " + Application.unityVersion, st); - if(GUILayout.Button("Update Unity")){ - Application.OpenURL("http://unity3d.com/unity/download"); - } - GUILayout.Label(string.Empty); - } - - public static int ComponentCountOf(CustomValueType cvt){ - - switch(cvt){ - case CustomValueType.Float: - return 1; - case CustomValueType.Half: - return 1; - case CustomValueType.Fixed: - return 1; - case CustomValueType.Float2: - return 2; - case CustomValueType.Half2: - return 2; - case CustomValueType.Fixed2: - return 2; - case CustomValueType.Float3: - return 3; - case CustomValueType.Half3: - return 3; - case CustomValueType.Fixed3: - return 3; - case CustomValueType.Float4: - return 4; - case CustomValueType.Half4: - return 4; - case CustomValueType.Fixed4: - return 4; - case CustomValueType.Sampler2D: - return 4; - default: - // Debug.Log("Invalid component count check of custom value type: " + cvt); - return 16; - } - - - } - - - public static Color VectorToColor( float v ) { - if( absColor ) - v = Mathf.Abs(v); - return new Color( v,v,v ); - } - - public static Color VectorToColor( Vector2 v ) { - if( absColor ) - return new Color( Mathf.Clamp01( Mathf.Abs( v.x ) ), Mathf.Clamp01( Mathf.Abs( v.y ) ), 0f ); - else - return new Color( Mathf.Clamp01( v.x ), Mathf.Clamp01( v.y ), 0f ); - } - - public static Color VectorToColor( Vector3 v ) { - if( absColor ) - return new Color( Mathf.Clamp01( Mathf.Abs( v.x ) ), Mathf.Clamp01( Mathf.Abs( v.y ) ), Mathf.Clamp01( Mathf.Abs( v.z ) ) ); - else - return new Color( Mathf.Clamp01( v.x ), Mathf.Clamp01( v.y ), Mathf.Clamp01( v.z ) ); - } - - public static string AssetToGUID( UnityEngine.Object asset ) { - return AssetDatabase.AssetPathToGUID( AssetDatabase.GetAssetPath( asset ) ); - } - - public static UnityEngine.Object GUIDToAsset( string GUID, Type type ) { - return AssetDatabase.LoadAssetAtPath( AssetDatabase.GUIDToAssetPath( GUID ), type ); - } - - public static float Smooth( float x ) { - return x * x * ( 3f - 2f * x ); - } - - public static float Smoother( float x ) { - return x * x * x * ( x * ( x * 6f - 15f ) + 10f ); - } - - - - public static string PathFromAbsoluteToProject(string s){ - return s.Substring(Application.dataPath.Length-6); - } - - public static void LinkButton(Rect r, string label, string URL, GUIStyle style){ - if( GUI.Button( r, label, style ) ) - Application.OpenURL(URL); - } - - - public static void AssignShaderToMaterialAsset( ref Material m, Shader s ) { - m.shader = s; - } - - public static float[] VectorToArray(Vector4 vec) { - return new float[4] { vec.x, vec.y, vec.z, vec.w }; - } - - public static float[] VectorToArray( float vec ) { - return new float[4] { vec, vec, vec, vec }; - } - - public static Vector3 ToVector3(Color c) { - return new Vector3( c.r, c.g, c.b ); - } - - public static Color ToColor( Vector3 vec ) { - return new Color( vec.x, vec.y, vec.z); - } - - public static float DistChebyshev(Vector2 a, Vector2 b) { - return Mathf.Max( Mathf.Abs(a.x - b.x), Mathf.Abs(a.y - b.y) ); - } - - - private static MethodInfo _doColorPickerMethod; - private static MethodInfo DoColorPickerMethod { - get{ - if(_doColorPickerMethod == null){ - Type t = Type.GetType( "UnityEditor.EditorGUI,UnityEditor" ); - Debug.Log("Type = " + t); - BindingFlags bfs = BindingFlags.Static | BindingFlags.NonPublic; - _doColorPickerMethod = t.GetMethod( "DoColorField", bfs, null, new Type[] { typeof( Rect ), typeof( int ), typeof( Color ), typeof( bool ), typeof( bool ) }, null ); - } - return _doColorPickerMethod; - } - } - - - // private static Color DoColorField(Rect position, int id, Color value, bool showEyedropper, bool showAlpha) - public static Color DoColorPicker( Rect position, Color color, bool showEyedropper, bool showAlpha ) { - //int id = GUIUtility.GetControlID(); - //return (Color)DoColorPickerMethod.Invoke( null, new object[] { position, id, color, showEyedropper, showAlpha } ); - return Color.red; - } - - public static Color FloatToColor( float f ) { - return new Color( f, f, f, f ); - } - - public static float Distance( Color a, Color b, int cc ) { - Color v = a - b; - return Mathf.Sqrt( Dot( v, v, cc ) ); - } - - public static float Dot(Color a, Color b, int compCount) { - - float retVal = 0f; - - for(int i=0;i s.xMax ) - s.xMax = i.xMax; - if( i.xMin < s.xMin ) - s.xMin = i.xMin; - if( i.yMax > s.yMax ) - s.yMax = i.yMax; - if( i.yMin < s.yMin ) - s.yMin = i.yMin; - return s; - } - - - public static void FormatShaderPath(ref string s){ - Regex rgx = new Regex( "[^a-zA-Z0-9/s -_]" ); // Only allow Alphanumeric, forward slash, space, dash and underscore - s = rgx.Replace( s, "" ); - } - - public static void FormatAlphanumeric( ref string s ) { - Regex rgx = new Regex( "[^a-zA-Z0-9-_]" ); // Only allow Alphanumeric, forward slash, space, dash and underscore - s = rgx.Replace( s, "" ); - } - - public static void FormatSerializableComment(ref string s){ - Regex rgx = new Regex( "[^\\w\\s_\\?\\.-]" ); // Only allow Alphanumeric, dot, dash, underscore and questionmark - s = rgx.Replace( s, "" ); - } - - public static void FormatSerializable( ref string s ) { - s = s.Replace( ":", "" ) - .Replace( ";", "" ) - .Replace( ",", "" ) - .Replace( "/*", "" ) - .Replace( "*/", "" ) - .Replace("\"", ""); - } - - public static void FormatSerializableVarName( ref string s ){ - FormatShaderPath(ref s); - - s = s.Replace(" ", string.Empty); - - if(s.Length > 0){ - - int tmp; - while(s.Length > 0 && int.TryParse(s[0].ToString(), out tmp)){ - s = s.Substring(1, s.Length-1); // Remove first character if first is a parsable integer - } - -// if(s.Length == 1){ -// s = s.ToLower(); // Lowercase the one character -// } else { -// char first = s[0]; // Lowercase the first character -// string rest = s.Substring( -// } - } - - } - - - public static Rect GetExpanded( Rect r, float px ) { - r.y -= px; - r.x -= px; - r.width += 2 * px; - r.height += 2 * px; - return r; - } - - - public static bool Intersects( Rect a, Rect b ) { - FlipNegative( ref a ); - FlipNegative( ref b ); - bool c1 = a.xMin < b.xMax; - bool c2 = a.xMax > b.xMin; - bool c3 = a.yMin < b.yMax; - bool c4 = a.yMax > b.yMin; - return c1 && c2 && c3 && c4; - } - - public static void FlipNegative(ref Rect r) { - if( r.width < 0 ) - r.x -= ( r.width *= -1 ); - if( r.height < 0 ) - r.y -= ( r.height *= -1 ); - } - - - public static float DistanceToLines(Vector2 point, Vector2[] line){ - float shortest = float.MaxValue; - - for (int i = 0; i < line.Length-1; i++) { - shortest = Mathf.Min(shortest, DistanceToLine(line[i], line[i+1], point)); - } - - return shortest; - - } - - public static float DistanceToLine(Vector2 a, Vector2 b, Vector2 point){ - // Return minimum distance between line segment vw and point p - float l2 = Vector2.SqrMagnitude(a - b); // i.e. |w-v|^2 - avoid a sqrt - if (l2 == 0.0) - return Vector2.Distance(point, a); // v == w case - // Consider the line extending the segment, parameterized as v + t (w - v). - // We find projection of point p onto the line. - // It falls where t = [(p-v) . (w-v)] / |w-v|^2 - float t = Vector2.Dot(point - a, b - a) / l2; - if (t < 0.0) - return Vector2.Distance(point, a); // Beyond the 'v' end of the segment - else if (t > 1.0) - return Vector2.Distance(point, b); // Beyond the 'w' end of the segment - Vector2 projection = a + t * (b - a); // Projection falls on the segment - return Vector2.Distance(point, projection); - } - - - - public static bool LineIntersection(Vector2 p0, Vector2 p1, Vector2 p2, Vector2 p3, out Vector2 intersection){ - - intersection = Vector2.zero; - - Vector2 s1, s2; - s1.x = p1.x - p0.x; - s1.y = p1.y - p0.y; - s2.x = p3.x - p2.x; - s2.y = p3.y - p2.y; - - float s, t, d; - d = -s2.x * s1.y + s1.x * s2.y; - - if(d == 0){ - return false; // Parallel lines, no intersection - } - - Vector2 pDiff = p0 - p2; - s = (-s1.y * pDiff.x + s1.x * pDiff.y) / d; - t = ( s2.x * pDiff.y - s2.y * pDiff.x) / d; - - if (s >= 0 && s <= 1 && t >= 0 && t <= 1) - { - intersection = p0 + (t * s1); - return true; // Intersection! - } - - return false; // No intersection - } - - - - // Returns the first intersection it can find - public static bool LineIntersection(Vector2 p0, Vector2 p1, Vector2[] points, out Vector2 intersection){ - intersection = Vector2.zero; - for(int i=0;i 0; - - } - - - public static string StringToBase64String(string str) { - return System.Convert.ToBase64String( GetBytes( str ) ); - } - - public static string Base64StringToString( string encoded ) { - return GetString( System.Convert.FromBase64String( encoded ) ); - } - - static byte[] GetBytes( string str ) { - byte[] bytes = new byte[str.Length * sizeof( char )]; - System.Buffer.BlockCopy( str.ToCharArray(), 0, bytes, 0, bytes.Length ); - return bytes; - } - - static string GetString( byte[] bytes ) { - char[] chars = new char[bytes.Length / sizeof( char )]; - System.Buffer.BlockCopy( bytes, 0, chars, 0, bytes.Length ); - return new string( chars ); - } - - - } -} +using UnityEngine; +using UnityEditor; +using System.Collections; +using System; +using System.Reflection; +using System.Text.RegularExpressions; + +namespace ShaderForge { + + [System.Serializable] + public enum RenderPlatform { + d3d9 = 0, // - Direct3D 9 + d3d11 = 1, // - Direct3D 11 / 12 + glcore = 2, // - OpenGL Core + gles = 3, // - OpenGL ES 2.0 + gles3 = 4, // - OpenGL ES 3.0 + metal = 5, // - iOS Metal + d3d11_9x = 6, // - Direct3D 11 windows RT + xboxone = 7, // - Xbox One + ps4 = 8, // - PlayStation 4 + psp2 = 9, // - PlayStation Vita + n3ds = 10, // - Nintendo 3DS + wiiu = 11, // - Nintendo Wii U + nswitch = 12, // - Nintendo Switch + }; + + + + public static class SF_Tools { + + // Versioning + public static int versionNumPrimary = 1; + public static int versionNumSecondary = 39; + public static string versionStage = ""; + public static string version = versionNumPrimary + "." + versionNumSecondary.ToString( "D2" ); + public static string versionString = "Shader Forge v" + version; + + // Misc strings + public const string bugReportLabel = "Post bugs & ideas"; + public const string bugReportURL = "https://shaderforge.userecho.com/"; + public const string documentationLabel = "Node Documentation"; + public const string documentationURL = "http://www.acegikmo.com/shaderforge/nodes/"; + public static string[] rendererLabels = new string[]{ + "Direct3D 9", + "Direct3D 11 & 12", + "OpenGL Core", + "OpenGL ES 2.0", + "OpenGL ES 3.0", + "iOS Metal", + "Direct3D 11 for Windows RT/Phone", + "Xbox One", + "PlayStation 4", + "PlayStation Vita", + "Nintendo 3DS", + "Nintendo Wii U", + "Nintendo Switch" + }; + + public const string alphabetLower = "abcdefghijklmnopqrstuvwxyz"; + public const string alphabetUpper = "ABCDEFGHIJKLMNOPQRSTUVWXYZ"; + + + // Constants + public const int connectorMargin = 4; + + // User prefs + public static bool absColor = false; + public static bool advancedInspector = true; + public static int stationaryCursorRadius = 7; + + + public const float minimumUnityVersion = 5.3f; + + private static float currentUnityVersion = 0f; + public static float CurrentUnityVersion{ + get{ + if(currentUnityVersion == 0f){ + currentUnityVersion = float.Parse(Application.unityVersion.Substring(0,3)); + } + return currentUnityVersion; + } + } + + public static bool CanRunShaderForge(){ + return (CurrentUnityVersion >= minimumUnityVersion); + } + + + public static bool HasUnityPro(){ + return UnityEditorInternal.InternalEditorUtility.HasPro(); + } + + + + + public static void UnityOutOfDateGUI(){ + GUIStyle st = new GUIStyle(EditorStyles.boldLabel); + + st.alignment = TextAnchor.MiddleCenter; + + GUILayout.Label(string.Empty); + GUILayout.Label("You need to install Unity " + SF_Tools.minimumUnityVersion + " or later in order to use Shader Forge", st); + GUILayout.Label("You are currently running Unity version " + Application.unityVersion, st); + if(GUILayout.Button("Update Unity")){ + Application.OpenURL("http://unity3d.com/unity/download"); + } + GUILayout.Label(string.Empty); + } + + public static int ComponentCountOf(CustomValueType cvt){ + + switch(cvt){ + case CustomValueType.Float: + return 1; + case CustomValueType.Half: + return 1; + case CustomValueType.Fixed: + return 1; + case CustomValueType.Float2: + return 2; + case CustomValueType.Half2: + return 2; + case CustomValueType.Fixed2: + return 2; + case CustomValueType.Float3: + return 3; + case CustomValueType.Half3: + return 3; + case CustomValueType.Fixed3: + return 3; + case CustomValueType.Float4: + return 4; + case CustomValueType.Half4: + return 4; + case CustomValueType.Fixed4: + return 4; + case CustomValueType.Sampler2D: + return 4; + default: + // Debug.Log("Invalid component count check of custom value type: " + cvt); + return 16; + } + + + } + + + public static Color VectorToColor( float v ) { + if( absColor ) + v = Mathf.Abs(v); + return new Color( v,v,v ); + } + + public static Color VectorToColor( Vector2 v ) { + if( absColor ) + return new Color( Mathf.Clamp01( Mathf.Abs( v.x ) ), Mathf.Clamp01( Mathf.Abs( v.y ) ), 0f ); + else + return new Color( Mathf.Clamp01( v.x ), Mathf.Clamp01( v.y ), 0f ); + } + + public static Color VectorToColor( Vector3 v ) { + if( absColor ) + return new Color( Mathf.Clamp01( Mathf.Abs( v.x ) ), Mathf.Clamp01( Mathf.Abs( v.y ) ), Mathf.Clamp01( Mathf.Abs( v.z ) ) ); + else + return new Color( Mathf.Clamp01( v.x ), Mathf.Clamp01( v.y ), Mathf.Clamp01( v.z ) ); + } + + public static string AssetToGUID( UnityEngine.Object asset ) { + return AssetDatabase.AssetPathToGUID( AssetDatabase.GetAssetPath( asset ) ); + } + + public static UnityEngine.Object GUIDToAsset( string GUID, Type type ) { + return AssetDatabase.LoadAssetAtPath( AssetDatabase.GUIDToAssetPath( GUID ), type ); + } + + public static float Smooth( float x ) { + return x * x * ( 3f - 2f * x ); + } + + public static float Smoother( float x ) { + return x * x * x * ( x * ( x * 6f - 15f ) + 10f ); + } + + + + public static string PathFromAbsoluteToProject(string s){ + return s.Substring(Application.dataPath.Length-6); + } + + public static void LinkButton(Rect r, string label, string URL, GUIStyle style){ + if( GUI.Button( r, label, style ) ) + Application.OpenURL(URL); + } + + + public static void AssignShaderToMaterialAsset( ref Material m, Shader s ) { + m.shader = s; + } + + public static float[] VectorToArray(Vector4 vec) { + return new float[4] { vec.x, vec.y, vec.z, vec.w }; + } + + public static float[] VectorToArray( float vec ) { + return new float[4] { vec, vec, vec, vec }; + } + + public static Vector3 ToVector3(Color c) { + return new Vector3( c.r, c.g, c.b ); + } + + public static Color ToColor( Vector3 vec ) { + return new Color( vec.x, vec.y, vec.z); + } + + public static float DistChebyshev(Vector2 a, Vector2 b) { + return Mathf.Max( Mathf.Abs(a.x - b.x), Mathf.Abs(a.y - b.y) ); + } + + + private static MethodInfo _doColorPickerMethod; + private static MethodInfo DoColorPickerMethod { + get{ + if(_doColorPickerMethod == null){ + Type t = Type.GetType( "UnityEditor.EditorGUI,UnityEditor" ); + Debug.Log("Type = " + t); + BindingFlags bfs = BindingFlags.Static | BindingFlags.NonPublic; + _doColorPickerMethod = t.GetMethod( "DoColorField", bfs, null, new Type[] { typeof( Rect ), typeof( int ), typeof( Color ), typeof( bool ), typeof( bool ) }, null ); + } + return _doColorPickerMethod; + } + } + + + // private static Color DoColorField(Rect position, int id, Color value, bool showEyedropper, bool showAlpha) + public static Color DoColorPicker( Rect position, Color color, bool showEyedropper, bool showAlpha ) { + //int id = GUIUtility.GetControlID(); + //return (Color)DoColorPickerMethod.Invoke( null, new object[] { position, id, color, showEyedropper, showAlpha } ); + return Color.red; + } + + public static Color FloatToColor( float f ) { + return new Color( f, f, f, f ); + } + + public static float Distance( Color a, Color b, int cc ) { + Color v = a - b; + return Mathf.Sqrt( Dot( v, v, cc ) ); + } + + public static float Dot(Color a, Color b, int compCount) { + + float retVal = 0f; + + for(int i=0;i s.xMax ) + s.xMax = i.xMax; + if( i.xMin < s.xMin ) + s.xMin = i.xMin; + if( i.yMax > s.yMax ) + s.yMax = i.yMax; + if( i.yMin < s.yMin ) + s.yMin = i.yMin; + return s; + } + + + public static void FormatShaderPath(ref string s){ + Regex rgx = new Regex( "[^a-zA-Z0-9/s -_]" ); // Only allow Alphanumeric, forward slash, space, dash and underscore + s = rgx.Replace( s, "" ); + } + + public static void FormatAlphanumeric( ref string s ) { + Regex rgx = new Regex( "[^a-zA-Z0-9-_]" ); // Only allow Alphanumeric, forward slash, space, dash and underscore + s = rgx.Replace( s, "" ); + } + + public static void FormatSerializableComment(ref string s){ + Regex rgx = new Regex( "[^\\w\\s_\\?\\.-]" ); // Only allow Alphanumeric, dot, dash, underscore and questionmark + s = rgx.Replace( s, "" ); + } + + public static void FormatSerializable( ref string s ) { + s = s.Replace( ":", "" ) + .Replace( ";", "" ) + .Replace( ",", "" ) + .Replace( "/*", "" ) + .Replace( "*/", "" ) + .Replace("\"", ""); + } + + public static void FormatSerializableVarName( ref string s ){ + FormatShaderPath(ref s); + + s = s.Replace(" ", string.Empty); + + if(s.Length > 0){ + + int tmp; + while(s.Length > 0 && int.TryParse(s[0].ToString(), out tmp)){ + s = s.Substring(1, s.Length-1); // Remove first character if first is a parsable integer + } + +// if(s.Length == 1){ +// s = s.ToLower(); // Lowercase the one character +// } else { +// char first = s[0]; // Lowercase the first character +// string rest = s.Substring( +// } + } + + } + + + public static Rect GetExpanded( Rect r, float px ) { + r.y -= px; + r.x -= px; + r.width += 2 * px; + r.height += 2 * px; + return r; + } + + + public static bool Intersects( Rect a, Rect b ) { + FlipNegative( ref a ); + FlipNegative( ref b ); + bool c1 = a.xMin < b.xMax; + bool c2 = a.xMax > b.xMin; + bool c3 = a.yMin < b.yMax; + bool c4 = a.yMax > b.yMin; + return c1 && c2 && c3 && c4; + } + + public static void FlipNegative(ref Rect r) { + if( r.width < 0 ) + r.x -= ( r.width *= -1 ); + if( r.height < 0 ) + r.y -= ( r.height *= -1 ); + } + + + public static float DistanceToLines(Vector2 point, Vector2[] line){ + float shortest = float.MaxValue; + + for (int i = 0; i < line.Length-1; i++) { + shortest = Mathf.Min(shortest, DistanceToLine(line[i], line[i+1], point)); + } + + return shortest; + + } + + public static float DistanceToLine(Vector2 a, Vector2 b, Vector2 point){ + // Return minimum distance between line segment vw and point p + float l2 = Vector2.SqrMagnitude(a - b); // i.e. |w-v|^2 - avoid a sqrt + if (l2 == 0.0) + return Vector2.Distance(point, a); // v == w case + // Consider the line extending the segment, parameterized as v + t (w - v). + // We find projection of point p onto the line. + // It falls where t = [(p-v) . (w-v)] / |w-v|^2 + float t = Vector2.Dot(point - a, b - a) / l2; + if (t < 0.0) + return Vector2.Distance(point, a); // Beyond the 'v' end of the segment + else if (t > 1.0) + return Vector2.Distance(point, b); // Beyond the 'w' end of the segment + Vector2 projection = a + t * (b - a); // Projection falls on the segment + return Vector2.Distance(point, projection); + } + + + + public static bool LineIntersection(Vector2 p0, Vector2 p1, Vector2 p2, Vector2 p3, out Vector2 intersection){ + + intersection = Vector2.zero; + + Vector2 s1, s2; + s1.x = p1.x - p0.x; + s1.y = p1.y - p0.y; + s2.x = p3.x - p2.x; + s2.y = p3.y - p2.y; + + float s, t, d; + d = -s2.x * s1.y + s1.x * s2.y; + + if(d == 0){ + return false; // Parallel lines, no intersection + } + + Vector2 pDiff = p0 - p2; + s = (-s1.y * pDiff.x + s1.x * pDiff.y) / d; + t = ( s2.x * pDiff.y - s2.y * pDiff.x) / d; + + if (s >= 0 && s <= 1 && t >= 0 && t <= 1) + { + intersection = p0 + (t * s1); + return true; // Intersection! + } + + return false; // No intersection + } + + + + // Returns the first intersection it can find + public static bool LineIntersection(Vector2 p0, Vector2 p1, Vector2[] points, out Vector2 intersection){ + intersection = Vector2.zero; + for(int i=0;i 0; + + } + + + public static string StringToBase64String(string str) { + return System.Convert.ToBase64String( GetBytes( str ) ); + } + + public static string Base64StringToString( string encoded ) { + return GetString( System.Convert.FromBase64String( encoded ) ); + } + + static byte[] GetBytes( string str ) { + byte[] bytes = new byte[str.Length * sizeof( char )]; + System.Buffer.BlockCopy( str.ToCharArray(), 0, bytes, 0, bytes.Length ); + return bytes; + } + + static string GetString( byte[] bytes ) { + char[] chars = new char[bytes.Length / sizeof( char )]; + System.Buffer.BlockCopy( bytes, 0, chars, 0, bytes.Length ); + return new string( chars ); + } + + + } +} From 7c021e38fee689a4d3dac5a568741b035135dda5 Mon Sep 17 00:00:00 2001 From: Pyro_akm Date: Fri, 4 Jan 2019 15:14:27 +0100 Subject: [PATCH 16/27] Added Vulkan support. --- .../ShaderForge/Editor/Code/SFPSC_Meta.cs | 684 +++++++++--------- .../Editor/Code/SF_InstructionPass.cs | 251 +++---- .../ShaderForge/Editor/Code/SF_StatusBox.cs | 655 ++++++++--------- .../Editor/Code/_Utility/SF_Tools.cs | 6 +- 4 files changed, 801 insertions(+), 795 deletions(-) diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/SFPSC_Meta.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/SFPSC_Meta.cs index 799634c8..8181097b 100644 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/SFPSC_Meta.cs +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/SFPSC_Meta.cs @@ -1,342 +1,344 @@ -using UnityEngine; -using UnityEditor; -using System.Collections; -using System.Collections.Generic; - -namespace ShaderForge { - - - [System.Serializable] - public class SFPSC_Meta : SFPS_Category { - - public enum Inspector3DPreviewType { Sphere, Plane, Skybox }; - public string[] strInspector3DPreviewType = new string[] { "3D object", "2D sprite", "Sky"}; - public enum BatchingMode { Enabled, Disabled, DisableDuringLODFade }; - public string[] strBatchingMode = new string[] { "Enabled", "Disabled", "Disabled during LOD fade" }; - public Inspector3DPreviewType previewType = Inspector3DPreviewType.Sphere; - - public BatchingMode batchingMode = BatchingMode.Enabled; - public bool canUseSpriteAtlas = false; - public bool[] usedRenderers; // TODO: Serialization? - public string fallback = ""; - public int LOD = 0; // TODO: Serialization? - - public List cgIncludes = new List(); - - /* - d3d9 = 0, // - Direct3D 9 - d3d11 = 1, // - Direct3D 11 - glcore = 2, // - OpenGL Core - gles = 3, // - OpenGL ES 2.0 - gles3 = 4, // - OpenGL ES 3.0 - metal = 5, // - iOS Metal - d3d11_9x = 6, // - Direct3D 11 windows RT - xboxone = 7, // - Xbox One - ps4 = 8, // - PlayStation 4 - psp2 = 10 // - PlayStation Vita - n3ds = 11 // - Nintendo 3DS - wiiu = 12, // - Nintendo Wii U - switch = 13, - */ - - public override SFPS_Category PostInitialize (){ - usedRenderers = new bool[13]{ // TODO: Load from project settings - true, // - Direct3D 9 - true, // - Direct3D 11 - true, // - OpenGL Core - true, // - OpenGL ES 2.0 - false, // - OpenGL ES 3.0 - false, // - iOS Metal - false, // - Direct3D 11 windows RT - false, // - Xbox One - false, // - PlayStation 4 - false, // - PlayStation Vita - false, // - Nintendo 3DS - false, // - Wii U - false // - Switch - }; - return this; - } - - - char[] splitChars = new char[] { '|' }; - string SerializeCgIncludes() { - string serialized = ""; - for( int i = 0; i < cgIncludes.Count; i++ ) { - serialized += cgIncludes[i]; - if( i < cgIncludes.Count - 1 ) - serialized += splitChars[0]; - } - string encoded = SF_Tools.StringToBase64String( serialized ); - - return encoded; - } - - void DeserializeCgIncludes( string serialized ) { - string decoded = SF_Tools.Base64StringToString( serialized ); - cgIncludes = new List( decoded.Split( splitChars ) ); - - // Remove empty entries - for( int i = cgIncludes.Count - 1; i >= 0; i-- ) - if( cgIncludes[i] == string.Empty ) - cgIncludes.RemoveAt( i ); - } - - public override string Serialize(){ - string s = ""; - s += Serialize( "flbk", fallback ); - s += Serialize( "iptp", ((int)previewType).ToString() ); - s += Serialize( "cusa", canUseSpriteAtlas.ToString() ); - s += Serialize( "bamd", ( (int)batchingMode ).ToString() ); - s += Serialize( "cgin", SerializeCgIncludes() ); - return s; - } - - public override void Deserialize(string key, string value){ - - switch( key ) { - case "flbk": - fallback = value; - break; - case "iptp": - previewType = (Inspector3DPreviewType)int.Parse(value); - break; - case "cusa": - canUseSpriteAtlas = bool.Parse(value); - break; - case "bamd": - batchingMode = (BatchingMode)int.Parse( value ); - break; - case "cgin": - DeserializeCgIncludes( value ); - break; - } - - } - - - public override float DrawInner(ref Rect r){ - - float prevYpos = r.y; - r.y = 0; - - - r.xMin += 20; - r.y += 20; - - - EditorGUI.LabelField( r, "Path", EditorStyles.miniLabel ); - r.xMin += 30; - r.height = 17; - r.xMax -= 3; - ps.StartIgnoreChangeCheck(); - GUI.SetNextControlName( "shdrpath" ); - string prev = editor.currentShaderPath; - //editor.currentShaderPath = GUI.TextField( r, editor.currentShaderPath,EditorStyles.textField ); - editor.currentShaderPath = UndoableTextField( r, editor.currentShaderPath, "shader path", null, editor, showContent:false ); - if( editor.currentShaderPath != prev ) { - SF_Tools.FormatShaderPath( ref editor.currentShaderPath ); - } - if( Event.current.keyCode == KeyCode.Return && GUI.GetNameOfFocusedControl() == "shdrpath" ) { - editor.Defocus(); - editor.OnShaderModified( NodeUpdateType.Hard ); - } - ps.EndIgnoreChangeCheck(); - r.xMin -= 30; - r.height = 20; - r.xMax += 3; - r.y += 20; - - - - - EditorGUI.LabelField( r, "Fallback", EditorStyles.miniLabel ); - Rect rStart = new Rect( r ); - r.xMin += 50; - r.height = 17; - r.xMax -= 47; - ps.StartIgnoreChangeCheck(); - GUI.SetNextControlName( "shdrpath" ); - prev = fallback; - fallback = UndoableTextField( r, fallback, "shader fallback", null, null, showContent:false ); - r.x += r.width + 2; - r.width = 42; - ShaderPicker( r, "Pick"); - if( fallback != prev ) { - SF_Tools.FormatShaderPath( ref fallback ); - } - if( Event.current.keyCode == KeyCode.Return && GUI.GetNameOfFocusedControl() == "shdrpath" ) { - editor.Defocus(); - editor.OnShaderModified( NodeUpdateType.Hard ); - } - ps.EndIgnoreChangeCheck(); - r = rStart; - r.y += r.height; - - - EditorGUI.LabelField( r, "LOD", EditorStyles.miniLabel ); - r.xMin += 30; - r.height = 17; - r.xMax -= 3; - LOD = UndoableIntField( r, LOD, "LOD"); - r.xMin -= 30; - r.height = 20; - r.xMax += 3; - r.y += 20; - - - canUseSpriteAtlas = UndoableToggle( r, canUseSpriteAtlas, "Allow using atlased sprites", "allow using atlased sprites", null ); - r.y += 20; - - batchingMode = (BatchingMode)UndoableLabeledEnumPopupNamed( r, "Draw call batching", batchingMode, strBatchingMode, "draw call batching" ); - r.y += 20; - - previewType = (Inspector3DPreviewType)UndoableLabeledEnumPopupNamed( r, "Inspector preview mode", previewType, strInspector3DPreviewType, "inspector preview mode" ); - r.y += 20; - - r.y += 10; - - - if( cgIncludes.Count == 0 ) { - Rect rBtn = r; - rBtn.height -= 4; - rBtn.width = 100; - if( GUI.Button( rBtn, "Add CG Include", EditorStyles.miniButton ) ) { - Undo.RecordObject( this, "add CG include" ); - cgIncludes.Add( "" ); - } - //r.y += 20; - } else { - EditorGUI.LabelField( r, "CG Includes:" ); - r.y += 20; - - - int removeTarget = -1; - - for( int i = 0; i < cgIncludes.Count; i++ ) { - - Rect smallRect = r; - smallRect.width = 20; - smallRect.height -= 2; - - if( GUI.Button( smallRect, "-" ) ) { - removeTarget = i; - } - - r.xMin += 22; - - Rect textFieldRect = r; - textFieldRect.height -= 2; - textFieldRect.width -= 3; - cgIncludes[i] = UndoableTextField( textFieldRect, cgIncludes[i], "cg include", null ); - textFieldRect.x += 1; - GUI.color = new Color( 1f, 1f, 1f, 0.3f ); - GUI.Label( textFieldRect, "" + cgIncludes[i] + ".cginc", SF_Styles.RichLabel ); - GUI.color = Color.white; - r.y += 20; - - r.xMin -= 22; - } - - if( removeTarget != -1 ) { - Undo.RecordObject( this, "remove CG include" ); - cgIncludes.RemoveAt( removeTarget ); - } - - Rect buttonRect = r; - buttonRect.width = 20; - buttonRect.height -= 2; - if( GUI.Button( buttonRect, "+" ) ) { - Undo.RecordObject( this, "add CG include" ); - cgIncludes.Add( "" ); - } - } - - - - r.y += 40; - - - - EditorGUI.LabelField( r, "Target renderers:" ); - r.xMin += 20; - r.y += 20; - r.height = 17; - float pWidth = r.width; - - - bool onlyDX11GlCore = ps.mOut.tessellation.IsConnectedAndEnabled(); - - - for(int i=0;i cgIncludes = new List(); + + /* + d3d9 = 0, // - Direct3D 9 + d3d11 = 1, // - Direct3D 11 + glcore = 2, // - OpenGL Core + gles = 3, // - OpenGL ES 2.0 + gles3 = 4, // - OpenGL ES 3.0 + metal = 5, // - iOS Metal + d3d11_9x = 6, // - Direct3D 11 windows RT + xboxone = 7, // - Xbox One + ps4 = 8, // - PlayStation 4 + psp2 = 10 // - PlayStation Vita + n3ds = 11 // - Nintendo 3DS + wiiu = 12, // - Nintendo Wii U + switch = 13, // - Nintendo Switch + vulkan = 14, // - Vulkan + */ + + public override SFPS_Category PostInitialize (){ + usedRenderers = new bool[14]{ // TODO: Load from project settings + true, // - Direct3D 9 + true, // - Direct3D 11 + true, // - OpenGL Core + true, // - OpenGL ES 2.0 + false, // - OpenGL ES 3.0 + false, // - iOS Metal + false, // - Direct3D 11 windows RT + false, // - Xbox One + false, // - PlayStation 4 + false, // - PlayStation Vita + false, // - Nintendo 3DS + false, // - Wii U + false, // - Switch + true // - Vulkan + }; + return this; + } + + + char[] splitChars = new char[] { '|' }; + string SerializeCgIncludes() { + string serialized = ""; + for( int i = 0; i < cgIncludes.Count; i++ ) { + serialized += cgIncludes[i]; + if( i < cgIncludes.Count - 1 ) + serialized += splitChars[0]; + } + string encoded = SF_Tools.StringToBase64String( serialized ); + + return encoded; + } + + void DeserializeCgIncludes( string serialized ) { + string decoded = SF_Tools.Base64StringToString( serialized ); + cgIncludes = new List( decoded.Split( splitChars ) ); + + // Remove empty entries + for( int i = cgIncludes.Count - 1; i >= 0; i-- ) + if( cgIncludes[i] == string.Empty ) + cgIncludes.RemoveAt( i ); + } + + public override string Serialize(){ + string s = ""; + s += Serialize( "flbk", fallback ); + s += Serialize( "iptp", ((int)previewType).ToString() ); + s += Serialize( "cusa", canUseSpriteAtlas.ToString() ); + s += Serialize( "bamd", ( (int)batchingMode ).ToString() ); + s += Serialize( "cgin", SerializeCgIncludes() ); + return s; + } + + public override void Deserialize(string key, string value){ + + switch( key ) { + case "flbk": + fallback = value; + break; + case "iptp": + previewType = (Inspector3DPreviewType)int.Parse(value); + break; + case "cusa": + canUseSpriteAtlas = bool.Parse(value); + break; + case "bamd": + batchingMode = (BatchingMode)int.Parse( value ); + break; + case "cgin": + DeserializeCgIncludes( value ); + break; + } + + } + + + public override float DrawInner(ref Rect r){ + + float prevYpos = r.y; + r.y = 0; + + + r.xMin += 20; + r.y += 20; + + + EditorGUI.LabelField( r, "Path", EditorStyles.miniLabel ); + r.xMin += 30; + r.height = 17; + r.xMax -= 3; + ps.StartIgnoreChangeCheck(); + GUI.SetNextControlName( "shdrpath" ); + string prev = editor.currentShaderPath; + //editor.currentShaderPath = GUI.TextField( r, editor.currentShaderPath,EditorStyles.textField ); + editor.currentShaderPath = UndoableTextField( r, editor.currentShaderPath, "shader path", null, editor, showContent:false ); + if( editor.currentShaderPath != prev ) { + SF_Tools.FormatShaderPath( ref editor.currentShaderPath ); + } + if( Event.current.keyCode == KeyCode.Return && GUI.GetNameOfFocusedControl() == "shdrpath" ) { + editor.Defocus(); + editor.OnShaderModified( NodeUpdateType.Hard ); + } + ps.EndIgnoreChangeCheck(); + r.xMin -= 30; + r.height = 20; + r.xMax += 3; + r.y += 20; + + + + + EditorGUI.LabelField( r, "Fallback", EditorStyles.miniLabel ); + Rect rStart = new Rect( r ); + r.xMin += 50; + r.height = 17; + r.xMax -= 47; + ps.StartIgnoreChangeCheck(); + GUI.SetNextControlName( "shdrpath" ); + prev = fallback; + fallback = UndoableTextField( r, fallback, "shader fallback", null, null, showContent:false ); + r.x += r.width + 2; + r.width = 42; + ShaderPicker( r, "Pick"); + if( fallback != prev ) { + SF_Tools.FormatShaderPath( ref fallback ); + } + if( Event.current.keyCode == KeyCode.Return && GUI.GetNameOfFocusedControl() == "shdrpath" ) { + editor.Defocus(); + editor.OnShaderModified( NodeUpdateType.Hard ); + } + ps.EndIgnoreChangeCheck(); + r = rStart; + r.y += r.height; + + + EditorGUI.LabelField( r, "LOD", EditorStyles.miniLabel ); + r.xMin += 30; + r.height = 17; + r.xMax -= 3; + LOD = UndoableIntField( r, LOD, "LOD"); + r.xMin -= 30; + r.height = 20; + r.xMax += 3; + r.y += 20; + + + canUseSpriteAtlas = UndoableToggle( r, canUseSpriteAtlas, "Allow using atlased sprites", "allow using atlased sprites", null ); + r.y += 20; + + batchingMode = (BatchingMode)UndoableLabeledEnumPopupNamed( r, "Draw call batching", batchingMode, strBatchingMode, "draw call batching" ); + r.y += 20; + + previewType = (Inspector3DPreviewType)UndoableLabeledEnumPopupNamed( r, "Inspector preview mode", previewType, strInspector3DPreviewType, "inspector preview mode" ); + r.y += 20; + + r.y += 10; + + + if( cgIncludes.Count == 0 ) { + Rect rBtn = r; + rBtn.height -= 4; + rBtn.width = 100; + if( GUI.Button( rBtn, "Add CG Include", EditorStyles.miniButton ) ) { + Undo.RecordObject( this, "add CG include" ); + cgIncludes.Add( "" ); + } + //r.y += 20; + } else { + EditorGUI.LabelField( r, "CG Includes:" ); + r.y += 20; + + + int removeTarget = -1; + + for( int i = 0; i < cgIncludes.Count; i++ ) { + + Rect smallRect = r; + smallRect.width = 20; + smallRect.height -= 2; + + if( GUI.Button( smallRect, "-" ) ) { + removeTarget = i; + } + + r.xMin += 22; + + Rect textFieldRect = r; + textFieldRect.height -= 2; + textFieldRect.width -= 3; + cgIncludes[i] = UndoableTextField( textFieldRect, cgIncludes[i], "cg include", null ); + textFieldRect.x += 1; + GUI.color = new Color( 1f, 1f, 1f, 0.3f ); + GUI.Label( textFieldRect, "" + cgIncludes[i] + ".cginc", SF_Styles.RichLabel ); + GUI.color = Color.white; + r.y += 20; + + r.xMin -= 22; + } + + if( removeTarget != -1 ) { + Undo.RecordObject( this, "remove CG include" ); + cgIncludes.RemoveAt( removeTarget ); + } + + Rect buttonRect = r; + buttonRect.width = 20; + buttonRect.height -= 2; + if( GUI.Button( buttonRect, "+" ) ) { + Undo.RecordObject( this, "add CG include" ); + cgIncludes.Add( "" ); + } + } + + + + r.y += 40; + + + + EditorGUI.LabelField( r, "Target renderers:" ); + r.xMin += 20; + r.y += 20; + r.height = 17; + float pWidth = r.width; + + + bool onlyDX11GlCore = ps.mOut.tessellation.IsConnectedAndEnabled(); + + + for(int i=0;i plats = new List(){ - new SFIns_PassPlat(RenderPlatform.d3d9), - new SFIns_PassPlat(RenderPlatform.d3d11), - new SFIns_PassPlat(RenderPlatform.glcore), - new SFIns_PassPlat(RenderPlatform.gles), - new SFIns_PassPlat(RenderPlatform.gles3), - new SFIns_PassPlat(RenderPlatform.metal), - new SFIns_PassPlat(RenderPlatform.d3d11_9x), - new SFIns_PassPlat(RenderPlatform.xboxone), - new SFIns_PassPlat(RenderPlatform.ps4), - new SFIns_PassPlat(RenderPlatform.psp2), - new SFIns_PassPlat(RenderPlatform.n3ds), - new SFIns_PassPlat(RenderPlatform.wiiu), - new SFIns_PassPlat(RenderPlatform.nswitch) - }; - - public void Parse(ShaderProgram prog, string line, bool ignoreMin ) { - - //Debug.Log("Parsing instruction count: line = " + line); - - // String style: - // "// opengl - ALU: 29 to 35" - // "// opengl - ALU: 7 to 15, TEX: 1 to 3" - - string[] split = line.Split(new char[] {' '}, StringSplitOptions.RemoveEmptyEntries); - - if( split.Length != 7 && split.Length != 11 && split.Length != 15 ) { - Debug.LogError( "Error parsing instruction count. Line did not have 7, 11 or 15 elements [" + line + "]. Length is: " + split.Length ); - return; - } - - if( split[1] == "flash" ) { - Debug.LogWarning( "Flash is no longer supported by Unity, and was removed from the shader" ); - return; - } - - if( split[1] == "ps3" ) { - Debug.LogWarning( "PS3 is no longer supported by Unity since 5.5, and was removed from the shader" ); - return; - } - - if( split[1] == "xbox360" ) { - Debug.LogWarning( "Xbox 360 is no longer supported by Unity since 5.5, and was removed from the shader" ); - return; - } - - if( split[1] == "opengl" ) { - split[1] = "glcore"; - } - - bool hasTex = ( split.Length == 11 ); - - object enumObj = Enum.Parse( typeof( RenderPlatform ), split[1] ); - - int enumID; - - if(enumObj != null){ - enumID = (int)enumObj; - } else { - return; - } - - - - if( prog == ShaderProgram.Frag ) { - if( !ignoreMin ) - plats[enumID].frag.min = IntParse( split[4] ); - plats[enumID].frag.max = IntParse( split[6] ); - if( hasTex ) { - if( !ignoreMin ) - plats[enumID].fTex.min = IntParse( split[8] ); - plats[enumID].fTex.max = IntParse( split[10] ); - } - } else if( prog == ShaderProgram.Vert ) { - if( !ignoreMin ) - plats[enumID].vert.min = IntParse( split[4] ); - plats[enumID].vert.max = IntParse( split[6] ); - if( hasTex ) { - if( !ignoreMin ) - plats[enumID].vTex.min = IntParse( split[8] ); - plats[enumID].vTex.max = IntParse( split[10] ); - } - } else { - Debug.LogError( "Tried to parse things in invalid program [" + prog + "]" ); - } - - //Debug.Log("Instr: " + split[1] + " "+ prog + " " + line + " ig: " + ignoreMin); - - - } - - public int IntParse( string s ) { - s = s.Replace(",",""); - return int.Parse(s); - } - - - - } - +using UnityEngine; +using System.Collections; +using System.Collections.Generic; +using System; + +namespace ShaderForge{ + + + public class SFIns_PassPlat { + public RenderPlatform plat; + public SF_MinMax vert = new SF_MinMax( 0, 0 ); + public SF_MinMax frag = new SF_MinMax( 0, 0 ); + public SF_MinMax vTex = new SF_MinMax( 0, 0 ); + public SF_MinMax fTex = new SF_MinMax( 0, 0 ); + + public SFIns_PassPlat(RenderPlatform plat){ + this.plat = plat; + } + + } + + + public class SFIns_Pass { + + + public List plats = new List(){ + new SFIns_PassPlat(RenderPlatform.d3d9), + new SFIns_PassPlat(RenderPlatform.d3d11), + new SFIns_PassPlat(RenderPlatform.glcore), + new SFIns_PassPlat(RenderPlatform.gles), + new SFIns_PassPlat(RenderPlatform.gles3), + new SFIns_PassPlat(RenderPlatform.metal), + new SFIns_PassPlat(RenderPlatform.d3d11_9x), + new SFIns_PassPlat(RenderPlatform.xboxone), + new SFIns_PassPlat(RenderPlatform.ps4), + new SFIns_PassPlat(RenderPlatform.psp2), + new SFIns_PassPlat(RenderPlatform.n3ds), + new SFIns_PassPlat(RenderPlatform.wiiu), + new SFIns_PassPlat(RenderPlatform.nswitch), + new SFIns_PassPlat(RenderPlatform.vulkan) + }; + + public void Parse(ShaderProgram prog, string line, bool ignoreMin ) { + + //Debug.Log("Parsing instruction count: line = " + line); + + // String style: + // "// opengl - ALU: 29 to 35" + // "// opengl - ALU: 7 to 15, TEX: 1 to 3" + + string[] split = line.Split(new char[] {' '}, StringSplitOptions.RemoveEmptyEntries); + + if( split.Length != 7 && split.Length != 11 && split.Length != 15 ) { + Debug.LogError( "Error parsing instruction count. Line did not have 7, 11 or 15 elements [" + line + "]. Length is: " + split.Length ); + return; + } + + if( split[1] == "flash" ) { + Debug.LogWarning( "Flash is no longer supported by Unity, and was removed from the shader" ); + return; + } + + if( split[1] == "ps3" ) { + Debug.LogWarning( "PS3 is no longer supported by Unity since 5.5, and was removed from the shader" ); + return; + } + + if( split[1] == "xbox360" ) { + Debug.LogWarning( "Xbox 360 is no longer supported by Unity since 5.5, and was removed from the shader" ); + return; + } + + if( split[1] == "opengl" ) { + split[1] = "glcore"; + } + + bool hasTex = ( split.Length == 11 ); + + object enumObj = Enum.Parse( typeof( RenderPlatform ), split[1] ); + + int enumID; + + if(enumObj != null){ + enumID = (int)enumObj; + } else { + return; + } + + + + if( prog == ShaderProgram.Frag ) { + if( !ignoreMin ) + plats[enumID].frag.min = IntParse( split[4] ); + plats[enumID].frag.max = IntParse( split[6] ); + if( hasTex ) { + if( !ignoreMin ) + plats[enumID].fTex.min = IntParse( split[8] ); + plats[enumID].fTex.max = IntParse( split[10] ); + } + } else if( prog == ShaderProgram.Vert ) { + if( !ignoreMin ) + plats[enumID].vert.min = IntParse( split[4] ); + plats[enumID].vert.max = IntParse( split[6] ); + if( hasTex ) { + if( !ignoreMin ) + plats[enumID].vTex.min = IntParse( split[8] ); + plats[enumID].vTex.max = IntParse( split[10] ); + } + } else { + Debug.LogError( "Tried to parse things in invalid program [" + prog + "]" ); + } + + //Debug.Log("Instr: " + split[1] + " "+ prog + " " + line + " ig: " + ignoreMin); + + + } + + public int IntParse( string s ) { + s = s.Replace(",",""); + return int.Parse(s); + } + + + + } + } \ No newline at end of file diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/SF_StatusBox.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/SF_StatusBox.cs index b9949efc..e223abfa 100644 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/SF_StatusBox.cs +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/SF_StatusBox.cs @@ -1,328 +1,329 @@ -using UnityEngine; -using UnityEditor; -using System.Collections; -using System.Collections.Generic; - -namespace ShaderForge { - [System.Serializable] - public class SF_StatusBox { - - [SerializeField] - private SF_Editor editor; - [SerializeField] - SF_MinMax vCount = new SF_MinMax(); - [SerializeField] - SF_MinMax fCount = new SF_MinMax(); - [SerializeField] - SF_MinMax vtCount = new SF_MinMax(); - [SerializeField] - SF_MinMax ftCount = new SF_MinMax(); - [SerializeField] - public RenderPlatform platform; - - [SerializeField] - private GUIStyle labelStyle; - [SerializeField] - private GUIStyle labelStyleCentered; - [SerializeField] - private GUIStyle holderStyle; - [SerializeField] - private GUIStyle headerStyle; - - public SF_StatusBox() { - - - - } - - public void Initialize( SF_Editor editor) { - this.editor = editor; - labelStyle = new GUIStyle( EditorStyles.label ); - labelStyle.margin = new RectOffset( 0, 0, 0, 0 ); - labelStyle.padding = new RectOffset( 8, 0, 3, 1 ); - - labelStyleCentered = new GUIStyle( labelStyle ); - labelStyleCentered.alignment = TextAnchor.MiddleCenter; - - holderStyle = new GUIStyle(); - holderStyle.margin = new RectOffset( 0, 0, 0, 0 ); - holderStyle.padding = new RectOffset( 0, 0, 0, 0 ); - - - headerStyle = new GUIStyle( EditorStyles.toolbar ); - headerStyle.alignment = TextAnchor.MiddleLeft; - headerStyle.fontSize = 10; - //headerStyle.fontStyle = FontStyle.Bold; - } - - - public int OnGUI( int yOffset, int in_maxWidth ) { - - Rect r = new Rect( 0, yOffset, in_maxWidth, 18 ); - - //string tmp = "Instructions: "; - - //if( Compiled() ) { - headerStyle.normal.textColor = EditorGUIUtility.isProSkin ? Color.white : Color.black; - //} else { - //headerStyle.normal.textColor = new Color( 0f, 0f, 0f, 0.75f ); - //tmp = "(Shader not compiled yet)"; - //} - - GUI.Label( r, string.Empty, EditorStyles.toolbar ); // Toolbar - - Rect iRect = r; - - //Rect rTmp = iRect; - //rTmp = rTmp.MovedUp(); - - //GUI.Label(rTmp, "MIP USED; " + editor.nodeView.treeStatus.mipInputUsed); - - iRect.width = 64f; - - - GUI.color = new Color(1f,1f,1f,0.5f); - if( GUI.Button( iRect, "Select", EditorStyles.toolbarButton) ) { - Selection.activeObject = editor.currentShaderAsset; - EditorGUIUtility.PingObject(editor.currentShaderAsset); - } - GUI.color = Color.white; - - /* Instruction count disabled. - if(!editor.nodeView.treeStatus.CanDisplayInstructionCount){ - InstructionLabel( ref iRect, SF_Styles.IconWarningSmall, "Instruction count unavailable"); - } else { - - InstructionLabel( ref iRect, SF_GUI.Inst_vert, vCount.ToString() ); - InstructionLabel( ref iRect, SF_GUI.Inst_frag, fCount.ToString() ); - if( !vtCount.Empty() ) - InstructionLabel( ref iRect, SF_GUI.Inst_vert_tex, vtCount.ToString() ); - if( !ftCount.Empty() ) - InstructionLabel( ref iRect, SF_GUI.Inst_frag_tex, ftCount.ToString() ); - } - */ - - - - - - - - - - //if(Compiled()){ - Color c = GUI.color; - c.a = 0.5f; - GUI.color = c; - r.xMin += iRect.x; - r.xMax -= 4; - GUI.Label(r, SF_Tools.rendererLabels[(int)platform],SF_Styles.InstructionCountRenderer); - GUI.color = Color.white; - //} - - - - - - - GUI.color = Color.white; - - return (int)r.yMax; - } - - - public void InstructionLabel(ref Rect iRect, Texture2D icon, string label) { - - iRect.width = icon.width; - GUI.DrawTexture( iRect, icon ); - iRect.x += iRect.width; - iRect.width = SF_GUI.WidthOf( label, headerStyle )+2; - GUI.Label( iRect, label, headerStyle ); - iRect.x += iRect.width; - } - - - private bool Compiled() { - if( vCount.min == 0 ) - return false; - return true; - } - - //private enum LookingFor{ }; - - public void UpdateInstructionCount( Shader sh ) { - // Compiled shader string: - string[] css = ( new SerializedObject( sh ) ).FindProperty( "m_Script" ).stringValue.Split( '\n' ); - - Debug.Log( ( new SerializedObject( sh ) ).FindProperty( "m_Script" ).stringValue ); - Debug.Log(css.Length); - - if(css.Length < 2){ - return; - } - - ShaderProgram prog = ShaderProgram.Vert; - - - List passes = new List(); - SFIns_Pass cPass; // current pass - - for( int i = 0; i < css.Length; i++ ) { - if( css[i].Contains( "Pass {" ) ) { // Found a pass! - - bool ignoreMin = false; - i++; - - // Shadow passes - if( css[i].Contains( "Name \"ShadowCaster\"" ) || css[i].Contains( "Name \"ShadowCollector\"" ) || css[i].Contains( "Name \"ForwardAdd\"" ) ) - continue; - - if( (css[i].Contains("Name \"PrePassBase\"") || css[i].Contains("Name \"PrePassFinal\"") ) && editor.ps.catLighting.renderPath == SFPSC_Lighting.RenderPath.Forward ) - continue; - - if( (css[i].Contains("Name \"ForwardBase\"") || css[i].Contains("Name \"ForwardAdd\"") ) && editor.ps.catLighting.renderPath == SFPSC_Lighting.RenderPath.Deferred ) - continue; - - - //ignoreMin = true; - - cPass = new SFIns_Pass(); - - for ( ; i < css.Length; i++ ) { - - if(css[i].StartsWith("// Vertex combos")){ - prog = ShaderProgram.Vert; - } else if(css[i].StartsWith("// Fragment combos")){ - prog = ShaderProgram.Frag; - } else { - continue; - } - - // Program found! - i++; // Next line... - // Scan following lines for shader platform data - for ( ; i < css.Length; i++ ) { - if(css[i].StartsWith( "//" )){ - cPass.Parse( prog, css[i], ignoreMin ); - } else { - // No more platform data - break; - } - } - // Leave this loop and start searching for the next pass if we just found the frag data - if( prog == ShaderProgram.Frag ) - break; - } - // Add the current pass to the list - passes.Add(cPass); - } - } - - - // All passes scanned! - // Show, some sort of instruction count - // Show sum of all passes min for now - vCount.Reset(); - fCount.Reset(); - vtCount.Reset(); - ftCount.Reset(); - - // Find which program to display instruction count for! - // if(mac) opengl - // if(win) d3d9 - // else gles - // else *any enabled* - - - - platform = GetPrimaryPlatform(); - int primPlat = (int)platform; - - - - // Debug.Log("Primary platform: " + (RenderPlatform)primPlat); - - - - foreach( SFIns_Pass p in passes ) { - vCount += p.plats[primPlat].vert; // Only d3d9 for now // TODO - fCount += p.plats[primPlat].frag; - vtCount += p.plats[primPlat].vTex; - ftCount += p.plats[primPlat].fTex; - } - - - //Debug.Log("vCount = " + vCount); - - - - - /* - int programID = 0; // 0 = vert | 1 = frag - for( int i = 0; i < css.Length; i++ ) { - if( css[i].Contains( "instructions" ) ) - continue; - if( css[i].Contains( "# " ) ) { - if( programID == 0 ) { - string[] split = css[i].Trim().Split( ' ' ); - vCount = int.Parse( split[1] ); // Vertex instructions TODO: Textures in vertex program - programID++; // Search for fragment - } else if( programID == 1 ) { - string[] split = css[i].Trim().Split( ' ' ); - fCount = int.Parse( split[1] ); // Fragment instructions - try { - tCount = int.Parse( split[3] ); // Textures - } catch { - - } - - } - } - } - */ - - - - - } - - - public RenderPlatform GetPrimaryPlatform() { - - // Let's check our build target! - BuildTarget active = EditorUserBuildSettings.activeBuildTarget; - - // Mobile platforms - // 9 = BuildTarget.iPhone // Unity 4.x - // 9 = BuildTarget.iOS // Unity 5.x - // 28 = BuildTarget.BB10 // Unity 4.x - // 28 = BuildTarget.BlackBerry // Unity 5.x - - bool mobile = ( active == BuildTarget.Android || (int)active == 9 || (int)active == 28 ); - if(mobile && editor.ps.catMeta.usedRenderers[(int)RenderPlatform.gles]) - return RenderPlatform.gles; - - // Standalone / Webplayer. In this case, it depends on what the user is using - // Pick the one that is currently running - if( Application.platform == RuntimePlatform.OSXEditor && editor.ps.catMeta.usedRenderers[(int)RenderPlatform.glcore] ) - return RenderPlatform.glcore; - if( Application.platform == RuntimePlatform.WindowsEditor && editor.ps.catMeta.usedRenderers[(int)RenderPlatform.d3d9] ) - return RenderPlatform.d3d9; - if( Application.platform == RuntimePlatform.WindowsEditor && editor.ps.catMeta.usedRenderers[(int)RenderPlatform.d3d11] ) - return RenderPlatform.d3d11; - - - Debug.LogWarning( "[SF] Unhandled platform settings. Make sure your build target (" + active + ") is sensible, and that you've got platforms enabled to compile for" ); - // You're using some weird setup, pick first active one - for(int i=0;i<12;i++){ - if(editor.ps.catMeta.usedRenderers[i]) - return (RenderPlatform)i; - } - - Debug.LogError("No renderers compilable, defaulting to d3d9"); - return RenderPlatform.d3d9; - } - - - } +using UnityEngine; +using UnityEditor; +using System.Collections; +using System.Collections.Generic; + +namespace ShaderForge { + [System.Serializable] + public class SF_StatusBox { + + [SerializeField] + private SF_Editor editor; + [SerializeField] + SF_MinMax vCount = new SF_MinMax(); + [SerializeField] + SF_MinMax fCount = new SF_MinMax(); + [SerializeField] + SF_MinMax vtCount = new SF_MinMax(); + [SerializeField] + SF_MinMax ftCount = new SF_MinMax(); + [SerializeField] + public RenderPlatform platform; + + [SerializeField] + private GUIStyle labelStyle; + [SerializeField] + private GUIStyle labelStyleCentered; + [SerializeField] + private GUIStyle holderStyle; + [SerializeField] + private GUIStyle headerStyle; + + public SF_StatusBox() { + + + + } + + public void Initialize( SF_Editor editor) { + this.editor = editor; + labelStyle = new GUIStyle( EditorStyles.label ); + labelStyle.margin = new RectOffset( 0, 0, 0, 0 ); + labelStyle.padding = new RectOffset( 8, 0, 3, 1 ); + + labelStyleCentered = new GUIStyle( labelStyle ); + labelStyleCentered.alignment = TextAnchor.MiddleCenter; + + holderStyle = new GUIStyle(); + holderStyle.margin = new RectOffset( 0, 0, 0, 0 ); + holderStyle.padding = new RectOffset( 0, 0, 0, 0 ); + + + headerStyle = new GUIStyle( EditorStyles.toolbar ); + headerStyle.alignment = TextAnchor.MiddleLeft; + headerStyle.fontSize = 10; + //headerStyle.fontStyle = FontStyle.Bold; + } + + + public int OnGUI( int yOffset, int in_maxWidth ) { + + Rect r = new Rect( 0, yOffset, in_maxWidth, 18 ); + + //string tmp = "Instructions: "; + + //if( Compiled() ) { + headerStyle.normal.textColor = EditorGUIUtility.isProSkin ? Color.white : Color.black; + //} else { + //headerStyle.normal.textColor = new Color( 0f, 0f, 0f, 0.75f ); + //tmp = "(Shader not compiled yet)"; + //} + + GUI.Label( r, string.Empty, EditorStyles.toolbar ); // Toolbar + + Rect iRect = r; + + //Rect rTmp = iRect; + //rTmp = rTmp.MovedUp(); + + //GUI.Label(rTmp, "MIP USED; " + editor.nodeView.treeStatus.mipInputUsed); + + iRect.width = 64f; + + + GUI.color = new Color(1f,1f,1f,0.5f); + if( GUI.Button( iRect, "Select", EditorStyles.toolbarButton) ) { + Selection.activeObject = editor.currentShaderAsset; + EditorGUIUtility.PingObject(editor.currentShaderAsset); + } + GUI.color = Color.white; + + /* Instruction count disabled. + if(!editor.nodeView.treeStatus.CanDisplayInstructionCount){ + InstructionLabel( ref iRect, SF_Styles.IconWarningSmall, "Instruction count unavailable"); + } else { + + InstructionLabel( ref iRect, SF_GUI.Inst_vert, vCount.ToString() ); + InstructionLabel( ref iRect, SF_GUI.Inst_frag, fCount.ToString() ); + if( !vtCount.Empty() ) + InstructionLabel( ref iRect, SF_GUI.Inst_vert_tex, vtCount.ToString() ); + if( !ftCount.Empty() ) + InstructionLabel( ref iRect, SF_GUI.Inst_frag_tex, ftCount.ToString() ); + } + */ + + + + + + + + + + //if(Compiled()){ + Color c = GUI.color; + c.a = 0.5f; + GUI.color = c; + r.xMin += iRect.x; + r.xMax -= 4; + GUI.Label(r, SF_Tools.rendererLabels[(int)platform],SF_Styles.InstructionCountRenderer); + GUI.color = Color.white; + //} + + + + + + + GUI.color = Color.white; + + return (int)r.yMax; + } + + + public void InstructionLabel(ref Rect iRect, Texture2D icon, string label) { + + iRect.width = icon.width; + GUI.DrawTexture( iRect, icon ); + iRect.x += iRect.width; + iRect.width = SF_GUI.WidthOf( label, headerStyle )+2; + GUI.Label( iRect, label, headerStyle ); + iRect.x += iRect.width; + } + + + private bool Compiled() { + if( vCount.min == 0 ) + return false; + return true; + } + + //private enum LookingFor{ }; + + public void UpdateInstructionCount( Shader sh ) { + // Compiled shader string: + string[] css = ( new SerializedObject( sh ) ).FindProperty( "m_Script" ).stringValue.Split( '\n' ); + + Debug.Log( ( new SerializedObject( sh ) ).FindProperty( "m_Script" ).stringValue ); + Debug.Log(css.Length); + + if(css.Length < 2){ + return; + } + + ShaderProgram prog = ShaderProgram.Vert; + + + List passes = new List(); + SFIns_Pass cPass; // current pass + + for( int i = 0; i < css.Length; i++ ) { + if( css[i].Contains( "Pass {" ) ) { // Found a pass! + + bool ignoreMin = false; + i++; + + // Shadow passes + if( css[i].Contains( "Name \"ShadowCaster\"" ) || css[i].Contains( "Name \"ShadowCollector\"" ) || css[i].Contains( "Name \"ForwardAdd\"" ) ) + continue; + + if( (css[i].Contains("Name \"PrePassBase\"") || css[i].Contains("Name \"PrePassFinal\"") ) && editor.ps.catLighting.renderPath == SFPSC_Lighting.RenderPath.Forward ) + continue; + + if( (css[i].Contains("Name \"ForwardBase\"") || css[i].Contains("Name \"ForwardAdd\"") ) && editor.ps.catLighting.renderPath == SFPSC_Lighting.RenderPath.Deferred ) + continue; + + + //ignoreMin = true; + + cPass = new SFIns_Pass(); + + for ( ; i < css.Length; i++ ) { + + if(css[i].StartsWith("// Vertex combos")){ + prog = ShaderProgram.Vert; + } else if(css[i].StartsWith("// Fragment combos")){ + prog = ShaderProgram.Frag; + } else { + continue; + } + + // Program found! + i++; // Next line... + // Scan following lines for shader platform data + for ( ; i < css.Length; i++ ) { + if(css[i].StartsWith( "//" )){ + cPass.Parse( prog, css[i], ignoreMin ); + } else { + // No more platform data + break; + } + } + // Leave this loop and start searching for the next pass if we just found the frag data + if( prog == ShaderProgram.Frag ) + break; + } + // Add the current pass to the list + passes.Add(cPass); + } + } + + + // All passes scanned! + // Show, some sort of instruction count + // Show sum of all passes min for now + vCount.Reset(); + fCount.Reset(); + vtCount.Reset(); + ftCount.Reset(); + + // Find which program to display instruction count for! + // if(mac) opengl + // if(win) d3d9 + // else gles + // else *any enabled* + + + + platform = GetPrimaryPlatform(); + int primPlat = (int)platform; + + + + // Debug.Log("Primary platform: " + (RenderPlatform)primPlat); + + + + foreach( SFIns_Pass p in passes ) { + vCount += p.plats[primPlat].vert; // Only d3d9 for now // TODO + fCount += p.plats[primPlat].frag; + vtCount += p.plats[primPlat].vTex; + ftCount += p.plats[primPlat].fTex; + } + + + //Debug.Log("vCount = " + vCount); + + + + + /* + int programID = 0; // 0 = vert | 1 = frag + for( int i = 0; i < css.Length; i++ ) { + if( css[i].Contains( "instructions" ) ) + continue; + if( css[i].Contains( "# " ) ) { + if( programID == 0 ) { + string[] split = css[i].Trim().Split( ' ' ); + vCount = int.Parse( split[1] ); // Vertex instructions TODO: Textures in vertex program + programID++; // Search for fragment + } else if( programID == 1 ) { + string[] split = css[i].Trim().Split( ' ' ); + fCount = int.Parse( split[1] ); // Fragment instructions + try { + tCount = int.Parse( split[3] ); // Textures + } catch { + + } + + } + } + } + */ + + + + + } + + + public RenderPlatform GetPrimaryPlatform() { + + // Let's check our build target! + BuildTarget active = EditorUserBuildSettings.activeBuildTarget; + + // Mobile platforms + // 9 = BuildTarget.iPhone // Unity 4.x + // 9 = BuildTarget.iOS // Unity 5.x + // 28 = BuildTarget.BB10 // Unity 4.x + // 28 = BuildTarget.BlackBerry // Unity 5.x + + bool mobile = ( active == BuildTarget.Android || (int)active == 9 || (int)active == 28 ); + if(mobile && editor.ps.catMeta.usedRenderers[(int)RenderPlatform.gles]) + return RenderPlatform.gles; + + // Standalone / Webplayer. In this case, it depends on what the user is using + // Pick the one that is currently running + if( Application.platform == RuntimePlatform.OSXEditor && editor.ps.catMeta.usedRenderers[(int)RenderPlatform.glcore] ) + return RenderPlatform.glcore; + if( Application.platform == RuntimePlatform.WindowsEditor && editor.ps.catMeta.usedRenderers[(int)RenderPlatform.d3d9] ) + return RenderPlatform.d3d9; + if( Application.platform == RuntimePlatform.WindowsEditor && editor.ps.catMeta.usedRenderers[(int)RenderPlatform.d3d11] ) + return RenderPlatform.d3d11; + if( Application.platform == RuntimePlatform.WindowsEditor && editor.ps.catMeta.usedRenderers[(int)RenderPlatform.vulkan] ) + return RenderPlatform.vulkan; + + Debug.LogWarning( "[SF] Unhandled platform settings. Make sure your build target (" + active + ") is sensible, and that you've got platforms enabled to compile for" ); + // You're using some weird setup, pick first active one + for(int i=0;i<12;i++){ + if(editor.ps.catMeta.usedRenderers[i]) + return (RenderPlatform)i; + } + + Debug.LogError("No renderers compilable, defaulting to d3d9"); + return RenderPlatform.d3d9; + } + + + } } \ No newline at end of file diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Utility/SF_Tools.cs b/Shader Forge/Assets/ShaderForge/Editor/Code/_Utility/SF_Tools.cs index 339a6ef8..e422a8d0 100644 --- a/Shader Forge/Assets/ShaderForge/Editor/Code/_Utility/SF_Tools.cs +++ b/Shader Forge/Assets/ShaderForge/Editor/Code/_Utility/SF_Tools.cs @@ -22,6 +22,7 @@ public enum RenderPlatform { n3ds = 10, // - Nintendo 3DS wiiu = 11, // - Nintendo Wii U nswitch = 12, // - Nintendo Switch + vulkan = 13, // - Vulkan }; @@ -30,7 +31,7 @@ public static class SF_Tools { // Versioning public static int versionNumPrimary = 1; - public static int versionNumSecondary = 39; + public static int versionNumSecondary = 40; public static string versionStage = ""; public static string version = versionNumPrimary + "." + versionNumSecondary.ToString( "D2" ); public static string versionString = "Shader Forge v" + version; @@ -53,7 +54,8 @@ public static class SF_Tools { "PlayStation Vita", "Nintendo 3DS", "Nintendo Wii U", - "Nintendo Switch" + "Nintendo Switch", + "Vulkan" }; public const string alphabetLower = "abcdefghijklmnopqrstuvwxyz"; From 92f34c692c18996cb70866bed5069925bc89edbe Mon Sep 17 00:00:00 2001 From: Pyro_akm Date: Wed, 16 Jan 2019 12:27:57 +0100 Subject: [PATCH 17/27] Simplified project. --- .../ShaderForge/Editor.meta => Editor.meta | 0 .../ShaderForge/Editor => Editor}/Code.meta | 0 .../Editor => Editor}/Code/SFPSC_Blending.cs | 0 .../Code/SFPSC_Blending.cs.meta | 0 .../Editor => Editor}/Code/SFPSC_Console.cs | 0 .../Code/SFPSC_Console.cs.meta | 0 .../Code/SFPSC_Experimental.cs | 0 .../Code/SFPSC_Experimental.cs.meta | 0 .../Editor => Editor}/Code/SFPSC_Geometry.cs | 0 .../Code/SFPSC_Geometry.cs.meta | 0 .../Editor => Editor}/Code/SFPSC_Lighting.cs | 0 .../Code/SFPSC_Lighting.cs.meta | 0 .../Editor => Editor}/Code/SFPSC_Meta.cs | 0 .../Editor => Editor}/Code/SFPSC_Meta.cs.meta | 0 .../Code/SFPSC_Properties.cs | 0 .../Code/SFPSC_Properties.cs.meta | 0 .../Editor => Editor}/Code/SFPS_Category.cs | 0 .../Code/SFPS_Category.cs.meta | 0 .../Editor => Editor}/Code/SF_Dependencies.cs | 0 .../Code/SF_Dependencies.cs.meta | 0 .../Editor => Editor}/Code/SF_Editor.cs | 0 .../Editor => Editor}/Code/SF_Editor.cs.meta | 0 .../Code/SF_EditorNodeBrowser.cs | 0 .../Code/SF_EditorNodeBrowser.cs.meta | 0 .../Code/SF_EditorNodeData.cs | 0 .../Code/SF_EditorNodeData.cs.meta | 0 .../Code/SF_EditorNodeView.cs | 0 .../Code/SF_EditorNodeView.cs.meta | 0 .../Editor => Editor}/Code/SF_ErrorEntry.cs | 0 .../Code/SF_ErrorEntry.cs.meta | 0 .../Code/SF_FeatureChecker.cs | 0 .../Code/SF_FeatureChecker.cs.meta | 0 .../Code/SF_InstructionPass.cs | 0 .../Code/SF_InstructionPass.cs.meta | 0 .../Code/SF_NodeConnectionLine.cs | 0 .../Code/SF_NodeConnectionLine.cs.meta | 0 .../Code/SF_NodeConnector.cs | 0 .../Code/SF_NodeConnector.cs.meta | 0 .../Editor => Editor}/Code/SF_NodePreview.cs | 0 .../Code/SF_NodePreview.cs.meta | 0 .../Editor => Editor}/Code/SF_NodeStatus.cs | 0 .../Code/SF_NodeStatus.cs.meta | 0 .../Code/SF_NodeTreeStatus.cs | 0 .../Code/SF_NodeTreeStatus.cs.meta | 0 .../Editor => Editor}/Code/SF_Parser.cs | 0 .../Editor => Editor}/Code/SF_Parser.cs.meta | 0 .../Editor => Editor}/Code/SF_PassSettings.cs | 0 .../Code/SF_PassSettings.cs.meta | 0 .../Code/SF_PreviewSettings.cs | 0 .../Code/SF_PreviewSettings.cs.meta | 0 .../Code/SF_PreviewWindow.cs | 0 .../Code/SF_PreviewWindow.cs.meta | 0 .../Code/SF_SelectionManager.cs | 0 .../Code/SF_SelectionManager.cs.meta | 0 .../Editor => Editor}/Code/SF_Settings.cs | 0 .../Code/SF_Settings.cs.meta | 0 .../Editor => Editor}/Code/SF_StatusBox.cs | 0 .../Code/SF_StatusBox.cs.meta | 0 .../Code/_ConnectionGroups.meta | 0 .../Code/_ConnectionGroups/SFNCG_Append.cs | 0 .../_ConnectionGroups/SFNCG_Append.cs.meta | 0 .../_ConnectionGroups/SFNCG_Arithmetic.cs | 0 .../SFNCG_Arithmetic.cs.meta | 0 .../_ConnectionGroups/SFNCG_ChannelBlend.cs | 0 .../SFNCG_ChannelBlend.cs.meta | 0 .../_ConnectionGroups/SFNCG_ComponentMask.cs | 0 .../SFNCG_ComponentMask.cs.meta | 0 .../_ConnectionGroups/SFNCG_MatrixMultiply.cs | 0 .../SFNCG_MatrixMultiply.cs.meta | 0 .../SF_NodeConnectionGroup.cs | 0 .../SF_NodeConnectionGroup.cs.meta | 0 .../Editor => Editor}/Code/_Enums.meta | 0 .../Code/_Enums/SF_VarTypeEnums.cs | 0 .../Code/_Enums/SF_VarTypeEnums.cs.meta | 0 .../Editor => Editor}/Code/_Evaluator.meta | 0 .../Code/_Evaluator/Pass_FwdAdd.cs | 0 .../Code/_Evaluator/Pass_FwdAdd.cs.meta | 0 .../Code/_Evaluator/SF_Evaluator.cs | 0 .../Code/_Evaluator/SF_Evaluator.cs.meta | 0 .../Code/_Evaluator/_NewSystem.meta | 0 .../_Evaluator/_NewSystem/DependencyTree.cs | 0 .../_NewSystem/DependencyTree.cs.meta | 0 .../Editor => Editor}/Code/_Nodes.meta | 0 .../Editor => Editor}/Code/_Nodes/SFN_Abs.cs | 0 .../Code/_Nodes/SFN_Abs.cs.meta | 0 .../Editor => Editor}/Code/_Nodes/SFN_Add.cs | 0 .../Code/_Nodes/SFN_Add.cs.meta | 0 .../Code/_Nodes/SFN_AmbientLight.cs | 0 .../Code/_Nodes/SFN_AmbientLight.cs.meta | 0 .../Code/_Nodes/SFN_Append.cs | 0 .../Code/_Nodes/SFN_Append.cs.meta | 0 .../Code/_Nodes/SFN_ArcCos.cs | 0 .../Code/_Nodes/SFN_ArcCos.cs.meta | 0 .../Code/_Nodes/SFN_ArcSin.cs | 0 .../Code/_Nodes/SFN_ArcSin.cs.meta | 0 .../Code/_Nodes/SFN_ArcTan.cs | 0 .../Code/_Nodes/SFN_ArcTan.cs.meta | 0 .../Code/_Nodes/SFN_ArcTan2.cs | 0 .../Code/_Nodes/SFN_ArcTan2.cs.meta | 0 .../Code/_Nodes/SFN_Bitangent.cs | 0 .../Code/_Nodes/SFN_Bitangent.cs.meta | 0 .../Code/_Nodes/SFN_Blend.cs | 0 .../Code/_Nodes/SFN_Blend.cs.meta | 0 .../Editor => Editor}/Code/_Nodes/SFN_Ceil.cs | 0 .../Code/_Nodes/SFN_Ceil.cs.meta | 0 .../Code/_Nodes/SFN_ChannelBlend.cs | 0 .../Code/_Nodes/SFN_ChannelBlend.cs.meta | 0 .../Code/_Nodes/SFN_Clamp.cs | 0 .../Code/_Nodes/SFN_Clamp.cs.meta | 0 .../Code/_Nodes/SFN_Clamp01.cs | 0 .../Code/_Nodes/SFN_Clamp01.cs.meta | 0 .../Editor => Editor}/Code/_Nodes/SFN_Code.cs | 0 .../Code/_Nodes/SFN_Code.cs.meta | 0 .../Code/_Nodes/SFN_Color.cs | 0 .../Code/_Nodes/SFN_Color.cs.meta | 0 .../Code/_Nodes/SFN_CommentBox.cs | 0 .../Code/_Nodes/SFN_CommentBox.cs.meta | 0 .../Code/_Nodes/SFN_ComponentMask.cs | 0 .../Code/_Nodes/SFN_ComponentMask.cs.meta | 0 .../Code/_Nodes/SFN_ConstantClamp.cs | 0 .../Code/_Nodes/SFN_ConstantClamp.cs.meta | 0 .../Code/_Nodes/SFN_ConstantLerp.cs | 0 .../Code/_Nodes/SFN_ConstantLerp.cs.meta | 0 .../Editor => Editor}/Code/_Nodes/SFN_Cos.cs | 0 .../Code/_Nodes/SFN_Cos.cs.meta | 0 .../Code/_Nodes/SFN_Cross.cs | 0 .../Code/_Nodes/SFN_Cross.cs.meta | 0 .../Code/_Nodes/SFN_Cubemap.cs | 0 .../Code/_Nodes/SFN_Cubemap.cs.meta | 0 .../Editor => Editor}/Code/_Nodes/SFN_DDX.cs | 0 .../Code/_Nodes/SFN_DDX.cs.meta | 0 .../Editor => Editor}/Code/_Nodes/SFN_DDXY.cs | 0 .../Code/_Nodes/SFN_DDXY.cs.meta | 0 .../Editor => Editor}/Code/_Nodes/SFN_DDY.cs | 0 .../Code/_Nodes/SFN_DDY.cs.meta | 0 .../Code/_Nodes/SFN_Depth.cs | 0 .../Code/_Nodes/SFN_Depth.cs.meta | 0 .../Code/_Nodes/SFN_DepthBlend.cs | 0 .../Code/_Nodes/SFN_DepthBlend.cs.meta | 0 .../Code/_Nodes/SFN_Desaturate.cs | 0 .../Code/_Nodes/SFN_Desaturate.cs.meta | 0 .../Code/_Nodes/SFN_Distance.cs | 0 .../Code/_Nodes/SFN_Distance.cs.meta | 0 .../Code/_Nodes/SFN_Divide.cs | 0 .../Code/_Nodes/SFN_Divide.cs.meta | 0 .../Editor => Editor}/Code/_Nodes/SFN_Dot.cs | 0 .../Code/_Nodes/SFN_Dot.cs.meta | 0 .../Editor => Editor}/Code/_Nodes/SFN_E.cs | 0 .../Code/_Nodes/SFN_E.cs.meta | 0 .../Editor => Editor}/Code/_Nodes/SFN_Exp.cs | 0 .../Code/_Nodes/SFN_Exp.cs.meta | 0 .../Code/_Nodes/SFN_FaceSign.cs | 0 .../Code/_Nodes/SFN_FaceSign.cs.meta | 0 .../Code/_Nodes/SFN_Final.cs | 0 .../Code/_Nodes/SFN_Final.cs.meta | 0 .../Code/_Nodes/SFN_Floor.cs | 0 .../Code/_Nodes/SFN_Floor.cs.meta | 0 .../Editor => Editor}/Code/_Nodes/SFN_Fmod.cs | 0 .../Code/_Nodes/SFN_Fmod.cs.meta | 0 .../Code/_Nodes/SFN_FogColor.cs | 0 .../Code/_Nodes/SFN_FogColor.cs.meta | 0 .../Editor => Editor}/Code/_Nodes/SFN_Frac.cs | 0 .../Code/_Nodes/SFN_Frac.cs.meta | 0 .../Code/_Nodes/SFN_FragmentPosition.cs | 0 .../Code/_Nodes/SFN_FragmentPosition.cs.meta | 0 .../Code/_Nodes/SFN_Fresnel.cs | 0 .../Code/_Nodes/SFN_Fresnel.cs.meta | 0 .../Editor => Editor}/Code/_Nodes/SFN_Get.cs | 0 .../Code/_Nodes/SFN_Get.cs.meta | 0 .../Code/_Nodes/SFN_HalfVector.cs | 0 .../Code/_Nodes/SFN_HalfVector.cs.meta | 0 .../Code/_Nodes/SFN_HsvToRgb.cs | 0 .../Code/_Nodes/SFN_HsvToRgb.cs.meta | 0 .../Editor => Editor}/Code/_Nodes/SFN_Hue.cs | 0 .../Code/_Nodes/SFN_Hue.cs.meta | 0 .../Editor => Editor}/Code/_Nodes/SFN_If.cs | 0 .../Code/_Nodes/SFN_If.cs.meta | 0 .../Code/_Nodes/SFN_InverseLerp.cs | 0 .../Code/_Nodes/SFN_InverseLerp.cs.meta | 0 .../Code/_Nodes/SFN_Length.cs | 0 .../Code/_Nodes/SFN_Length.cs.meta | 0 .../Editor => Editor}/Code/_Nodes/SFN_Lerp.cs | 0 .../Code/_Nodes/SFN_Lerp.cs.meta | 0 .../Code/_Nodes/SFN_LightAttenuation.cs | 0 .../Code/_Nodes/SFN_LightAttenuation.cs.meta | 0 .../Code/_Nodes/SFN_LightColor.cs | 0 .../Code/_Nodes/SFN_LightColor.cs.meta | 0 .../Code/_Nodes/SFN_LightPosition.cs | 0 .../Code/_Nodes/SFN_LightPosition.cs.meta | 0 .../Code/_Nodes/SFN_LightVector.cs | 0 .../Code/_Nodes/SFN_LightVector.cs.meta | 0 .../Editor => Editor}/Code/_Nodes/SFN_Log.cs | 0 .../Code/_Nodes/SFN_Log.cs.meta | 0 .../Code/_Nodes/SFN_Matrix4x4.cs | 0 .../Code/_Nodes/SFN_Matrix4x4.cs.meta | 0 .../Code/_Nodes/SFN_Matrix4x4Property.cs | 0 .../Code/_Nodes/SFN_Matrix4x4Property.cs.meta | 0 .../Editor => Editor}/Code/_Nodes/SFN_Max.cs | 0 .../Code/_Nodes/SFN_Max.cs.meta | 0 .../Editor => Editor}/Code/_Nodes/SFN_Min.cs | 0 .../Code/_Nodes/SFN_Min.cs.meta | 0 .../Code/_Nodes/SFN_Multiply.cs | 0 .../Code/_Nodes/SFN_Multiply.cs.meta | 0 .../Code/_Nodes/SFN_MultiplyMatrix.cs | 0 .../Code/_Nodes/SFN_MultiplyMatrix.cs.meta | 0 .../Code/_Nodes/SFN_Negate.cs | 0 .../Code/_Nodes/SFN_Negate.cs.meta | 0 .../Code/_Nodes/SFN_Node_Constant.cs | 0 .../Code/_Nodes/SFN_Node_Constant.cs.meta | 0 .../Code/_Nodes/SFN_Noise.cs | 0 .../Code/_Nodes/SFN_Noise.cs.meta | 0 .../Code/_Nodes/SFN_NormalBlend.cs | 0 .../Code/_Nodes/SFN_NormalBlend.cs.meta | 0 .../Code/_Nodes/SFN_NormalVector.cs | 0 .../Code/_Nodes/SFN_NormalVector.cs.meta | 0 .../Code/_Nodes/SFN_Normalize.cs | 0 .../Code/_Nodes/SFN_Normalize.cs.meta | 0 .../Code/_Nodes/SFN_ObjectPosition.cs | 0 .../Code/_Nodes/SFN_ObjectPosition.cs.meta | 0 .../Code/_Nodes/SFN_ObjectScale.cs | 0 .../Code/_Nodes/SFN_ObjectScale.cs.meta | 0 .../Code/_Nodes/SFN_OneMinus.cs | 0 .../Code/_Nodes/SFN_OneMinus.cs.meta | 0 .../Code/_Nodes/SFN_Panner.cs | 0 .../Code/_Nodes/SFN_Panner.cs.meta | 0 .../Code/_Nodes/SFN_Parallax.cs | 0 .../Code/_Nodes/SFN_Parallax.cs.meta | 0 .../Editor => Editor}/Code/_Nodes/SFN_Phi.cs | 0 .../Code/_Nodes/SFN_Phi.cs.meta | 0 .../Editor => Editor}/Code/_Nodes/SFN_Pi.cs | 0 .../Code/_Nodes/SFN_Pi.cs.meta | 0 .../Code/_Nodes/SFN_PixelSize.cs | 0 .../Code/_Nodes/SFN_PixelSize.cs.meta | 0 .../Code/_Nodes/SFN_Posterize.cs | 0 .../Code/_Nodes/SFN_Posterize.cs.meta | 0 .../Code/_Nodes/SFN_Power.cs | 0 .../Code/_Nodes/SFN_Power.cs.meta | 0 .../Code/_Nodes/SFN_ProjectionParameters.cs | 0 .../_Nodes/SFN_ProjectionParameters.cs.meta | 0 .../Code/_Nodes/SFN_Reciprocal.cs | 0 .../Code/_Nodes/SFN_Reciprocal.cs.meta | 0 .../Code/_Nodes/SFN_Reflect.cs | 0 .../Code/_Nodes/SFN_Reflect.cs.meta | 0 .../Code/_Nodes/SFN_Relay.cs | 0 .../Code/_Nodes/SFN_Relay.cs.meta | 0 .../Code/_Nodes/SFN_RemapRange.cs | 0 .../Code/_Nodes/SFN_RemapRange.cs.meta | 0 .../Code/_Nodes/SFN_RemapRangeAdvanced.cs | 0 .../_Nodes/SFN_RemapRangeAdvanced.cs.meta | 0 .../Code/_Nodes/SFN_RgbToHsv.cs | 0 .../Code/_Nodes/SFN_RgbToHsv.cs.meta | 0 .../Code/_Nodes/SFN_Root2.cs | 0 .../Code/_Nodes/SFN_Root2.cs.meta | 0 .../Code/_Nodes/SFN_Rotator.cs | 0 .../Code/_Nodes/SFN_Rotator.cs.meta | 0 .../Code/_Nodes/SFN_Round.cs | 0 .../Code/_Nodes/SFN_Round.cs.meta | 0 .../Code/_Nodes/SFN_SceneColor.cs | 0 .../Code/_Nodes/SFN_SceneColor.cs.meta | 0 .../Code/_Nodes/SFN_SceneDepth.cs | 0 .../Code/_Nodes/SFN_SceneDepth.cs.meta | 0 .../Code/_Nodes/SFN_ScreenParameters.cs | 0 .../Code/_Nodes/SFN_ScreenParameters.cs.meta | 0 .../Code/_Nodes/SFN_ScreenPos.cs | 0 .../Code/_Nodes/SFN_ScreenPos.cs.meta | 0 .../Editor => Editor}/Code/_Nodes/SFN_Set.cs | 0 .../Code/_Nodes/SFN_Set.cs.meta | 0 .../Editor => Editor}/Code/_Nodes/SFN_Sign.cs | 0 .../Code/_Nodes/SFN_Sign.cs.meta | 0 .../Editor => Editor}/Code/_Nodes/SFN_Sin.cs | 0 .../Code/_Nodes/SFN_Sin.cs.meta | 0 .../Code/_Nodes/SFN_Slider.cs | 0 .../Code/_Nodes/SFN_Slider.cs.meta | 0 .../Code/_Nodes/SFN_Smoothstep.cs | 0 .../Code/_Nodes/SFN_Smoothstep.cs.meta | 0 .../Editor => Editor}/Code/_Nodes/SFN_Sqrt.cs | 0 .../Code/_Nodes/SFN_Sqrt.cs.meta | 0 .../Code/_Nodes/SFN_StaticBranch.cs | 0 .../Code/_Nodes/SFN_StaticBranch.cs.meta | 0 .../Editor => Editor}/Code/_Nodes/SFN_Step.cs | 0 .../Code/_Nodes/SFN_Step.cs.meta | 0 .../Code/_Nodes/SFN_Subtract.cs | 0 .../Code/_Nodes/SFN_Subtract.cs.meta | 0 .../Code/_Nodes/SFN_SwitchProperty.cs | 0 .../Code/_Nodes/SFN_SwitchProperty.cs.meta | 0 .../Editor => Editor}/Code/_Nodes/SFN_Tan.cs | 0 .../Code/_Nodes/SFN_Tan.cs.meta | 0 .../Code/_Nodes/SFN_Tangent.cs | 0 .../Code/_Nodes/SFN_Tangent.cs.meta | 0 .../Editor => Editor}/Code/_Nodes/SFN_Tau.cs | 0 .../Code/_Nodes/SFN_Tau.cs.meta | 0 .../Code/_Nodes/SFN_Tex2d.cs | 0 .../Code/_Nodes/SFN_Tex2d.cs.meta | 0 .../Code/_Nodes/SFN_Tex2dAsset.cs | 0 .../Code/_Nodes/SFN_Tex2dAsset.cs.meta | 0 .../Code/_Nodes/SFN_TexCoord.cs | 0 .../Code/_Nodes/SFN_TexCoord.cs.meta | 0 .../Editor => Editor}/Code/_Nodes/SFN_Time.cs | 0 .../Code/_Nodes/SFN_Time.cs.meta | 0 .../Code/_Nodes/SFN_ToggleProperty.cs | 0 .../Code/_Nodes/SFN_ToggleProperty.cs.meta | 0 .../Code/_Nodes/SFN_Transform.cs | 0 .../Code/_Nodes/SFN_Transform.cs.meta | 0 .../Code/_Nodes/SFN_Transpose.cs | 0 .../Code/_Nodes/SFN_Transpose.cs.meta | 0 .../Code/_Nodes/SFN_Trunc.cs | 0 .../Code/_Nodes/SFN_Trunc.cs.meta | 0 .../Code/_Nodes/SFN_UVTile.cs | 0 .../Code/_Nodes/SFN_UVTile.cs.meta | 0 .../Code/_Nodes/SFN_ValueProperty.cs | 0 .../Code/_Nodes/SFN_ValueProperty.cs.meta | 0 .../Code/_Nodes/SFN_Vector1.cs | 0 .../Code/_Nodes/SFN_Vector1.cs.meta | 0 .../Code/_Nodes/SFN_Vector2.cs | 0 .../Code/_Nodes/SFN_Vector2.cs.meta | 0 .../Code/_Nodes/SFN_Vector3.cs | 0 .../Code/_Nodes/SFN_Vector3.cs.meta | 0 .../Code/_Nodes/SFN_Vector4.cs | 0 .../Code/_Nodes/SFN_Vector4.cs.meta | 0 .../Code/_Nodes/SFN_Vector4Property.cs | 0 .../Code/_Nodes/SFN_Vector4Property.cs.meta | 0 .../Code/_Nodes/SFN_VectorProjection.cs | 0 .../Code/_Nodes/SFN_VectorProjection.cs.meta | 0 .../Code/_Nodes/SFN_VectorRejection.cs | 0 .../Code/_Nodes/SFN_VectorRejection.cs.meta | 0 .../Code/_Nodes/SFN_VertexColor.cs | 0 .../Code/_Nodes/SFN_VertexColor.cs.meta | 0 .../Code/_Nodes/SFN_ViewPosition.cs | 0 .../Code/_Nodes/SFN_ViewPosition.cs.meta | 0 .../Code/_Nodes/SFN_ViewReflectionVector.cs | 0 .../_Nodes/SFN_ViewReflectionVector.cs.meta | 0 .../Code/_Nodes/SFN_ViewVector.cs | 0 .../Code/_Nodes/SFN_ViewVector.cs.meta | 0 .../Editor => Editor}/Code/_Nodes/SF_Node.cs | 0 .../Code/_Nodes/SF_Node.cs.meta | 0 .../Code/_Nodes/SF_Node_Arithmetic.cs | 0 .../Code/_Nodes/SF_Node_Arithmetic.cs.meta | 0 .../Code/_Nodes/SF_Node_Resizeable.cs | 0 .../Code/_Nodes/SF_Node_Resizeable.cs.meta | 0 .../Code/_ShaderProperties.meta | 0 .../Code/_ShaderProperties/SFP_Branch.cs | 0 .../Code/_ShaderProperties/SFP_Branch.cs.meta | 0 .../Code/_ShaderProperties/SFP_Color.cs | 0 .../Code/_ShaderProperties/SFP_Color.cs.meta | 0 .../Code/_ShaderProperties/SFP_Cubemap.cs | 0 .../_ShaderProperties/SFP_Cubemap.cs.meta | 0 .../SFP_Matrix4x4Property.cs | 0 .../SFP_Matrix4x4Property.cs.meta | 0 .../Code/_ShaderProperties/SFP_Slider.cs | 0 .../Code/_ShaderProperties/SFP_Slider.cs.meta | 0 .../_ShaderProperties/SFP_SwitchProperty.cs | 0 .../SFP_SwitchProperty.cs.meta | 0 .../Code/_ShaderProperties/SFP_Tex2d.cs | 0 .../Code/_ShaderProperties/SFP_Tex2d.cs.meta | 0 .../_ShaderProperties/SFP_ToggleProperty.cs | 0 .../SFP_ToggleProperty.cs.meta | 0 .../_ShaderProperties/SFP_ValueProperty.cs | 0 .../SFP_ValueProperty.cs.meta | 0 .../_ShaderProperties/SFP_Vector4Property.cs | 0 .../SFP_Vector4Property.cs.meta | 0 .../_ShaderProperties/SF_ShaderProperty.cs | 0 .../SF_ShaderProperty.cs.meta | 0 .../Editor => Editor}/Code/_Utility.meta | 0 .../Code/_Utility/GUILines.cs | 0 .../Code/_Utility/GUILines.cs.meta | 0 .../Code/_Utility/SF_Blit.cs | 0 .../Code/_Utility/SF_Blit.cs.meta | 0 .../Code/_Utility/SF_ColorPicker.cs | 0 .../Code/_Utility/SF_ColorPicker.cs.meta | 0 .../Code/_Utility/SF_Debug.cs | 0 .../Code/_Utility/SF_Debug.cs.meta | 0 .../Code/_Utility/SF_DraggableSeparator.cs | 0 .../_Utility/SF_DraggableSeparator.cs.meta | 0 .../Code/_Utility/SF_Extensions.cs | 0 .../Code/_Utility/SF_Extensions.cs.meta | 0 .../Editor => Editor}/Code/_Utility/SF_GUI.cs | 0 .../Code/_Utility/SF_GUI.cs.meta | 0 .../Code/_Utility/SF_Link.cs | 0 .../Code/_Utility/SF_Link.cs.meta | 0 .../Code/_Utility/SF_MinMax.cs | 0 .../Code/_Utility/SF_MinMax.cs.meta | 0 .../Code/_Utility/SF_Resources.cs | 0 .../Code/_Utility/SF_Resources.cs.meta | 0 .../Code/_Utility/SF_Styles.cs | 0 .../Code/_Utility/SF_Styles.cs.meta | 0 .../Code/_Utility/SF_Tools.cs | 0 .../Code/_Utility/SF_Tools.cs.meta | 0 .../Editor => Editor}/Code/_Utility/SF_Web.cs | 0 .../Code/_Utility/SF_Web.cs.meta | 0 .../Code/_Utility/SF_ZoomArea.cs | 0 .../Code/_Utility/SF_ZoomArea.cs.meta | 0 .../Code/_Utility/SerializableDictionary.cs | 0 .../_Utility/SerializableDictionary.cs.meta | 0 .../Editor => Editor}/InternalResources.meta | 0 .../InternalResources/GPU Rendering.meta | 0 .../GPURendering}/Common.meta | 0 .../Common/ExtractChannel.shader | 0 .../Common/ExtractChannel.shader.meta | 0 .../GPURendering}/Common/FillColor.shader | 0 .../Common/FillColor.shader.meta | 0 .../Common/ReadPackedData.shader | 0 .../Common/ReadPackedData.shader.meta | 0 .../GPURendering}/SFN_Abs.meta | 0 .../GPURendering}/SFN_Abs/SFN_Abs.shader | 0 .../GPURendering}/SFN_Abs/SFN_Abs.shader.meta | 0 .../GPURendering}/SFN_Add.meta | 0 .../GPURendering}/SFN_Add/SFN_Add_2.shader | 0 .../SFN_Add/SFN_Add_2.shader.meta | 0 .../GPURendering}/SFN_Add/SFN_Add_3.shader | 0 .../SFN_Add/SFN_Add_3.shader.meta | 0 .../GPURendering}/SFN_Add/SFN_Add_4.shader | 0 .../SFN_Add/SFN_Add_4.shader.meta | 0 .../GPURendering}/SFN_Add/SFN_Add_5.shader | 0 .../SFN_Add/SFN_Add_5.shader.meta | 0 .../GPURendering}/SFN_AmbientLight.meta | 0 .../SFN_AmbientLight/SFN_AmbientLight.shader | 0 .../SFN_AmbientLight.shader.meta | 0 .../GPURendering}/SFN_Append.meta | 0 .../SFN_Append/SFN_Append.shader | 0 .../SFN_Append/SFN_Append.shader.meta | 0 .../GPURendering}/SFN_ArcCos.meta | 0 .../SFN_ArcCos/SFN_ArcCos.shader | 0 .../SFN_ArcCos/SFN_ArcCos.shader.meta | 0 .../GPURendering}/SFN_ArcSin.meta | 0 .../SFN_ArcSin/SFN_ArcSin.shader | 0 .../SFN_ArcSin/SFN_ArcSin.shader.meta | 0 .../GPURendering}/SFN_ArcTan.meta | 0 .../SFN_ArcTan/SFN_ArcTan.shader | 0 .../SFN_ArcTan/SFN_ArcTan.shader.meta | 0 .../GPURendering}/SFN_ArcTan2.meta | 0 .../SFN_ArcTan2/SFN_ArcTan2_NOTO.shader | 0 .../SFN_ArcTan2/SFN_ArcTan2_NOTO.shader.meta | 0 .../SFN_ArcTan2/SFN_ArcTan2_NPTP.shader | 0 .../SFN_ArcTan2/SFN_ArcTan2_NPTP.shader.meta | 0 .../SFN_ArcTan2/SFN_ArcTan2_ZTO.shader | 0 .../SFN_ArcTan2/SFN_ArcTan2_ZTO.shader.meta | 0 .../SFN_ArcTan2/SFN_ArcTan2_ZTOW.shader | 0 .../SFN_ArcTan2/SFN_ArcTan2_ZTOW.shader.meta | 0 .../GPURendering}/SFN_Bitangent.meta | 0 .../SFN_Bitangent/SFN_Bitangent.shader | 0 .../SFN_Bitangent/SFN_Bitangent.shader.meta | 0 .../GPURendering}/SFN_Blend.meta | 0 .../SFN_Blend/SFN_Blend_ColorBurn.shader | 0 .../SFN_Blend/SFN_Blend_ColorBurn.shader.meta | 0 .../SFN_Blend/SFN_Blend_ColorDodge.shader | 0 .../SFN_Blend_ColorDodge.shader.meta | 0 .../SFN_Blend/SFN_Blend_Darken.shader | 0 .../SFN_Blend/SFN_Blend_Darken.shader.meta | 0 .../SFN_Blend/SFN_Blend_Difference.shader | 0 .../SFN_Blend_Difference.shader.meta | 0 .../SFN_Blend/SFN_Blend_Divide.shader | 0 .../SFN_Blend/SFN_Blend_Divide.shader.meta | 0 .../SFN_Blend/SFN_Blend_Exclusion.shader | 0 .../SFN_Blend/SFN_Blend_Exclusion.shader.meta | 0 .../SFN_Blend/SFN_Blend_HardLight.shader | 0 .../SFN_Blend/SFN_Blend_HardLight.shader.meta | 0 .../SFN_Blend/SFN_Blend_HardMix.shader | 0 .../SFN_Blend/SFN_Blend_HardMix.shader.meta | 0 .../SFN_Blend/SFN_Blend_Lighten.shader | 0 .../SFN_Blend/SFN_Blend_Lighten.shader.meta | 0 .../SFN_Blend/SFN_Blend_LinearBurn.shader | 0 .../SFN_Blend_LinearBurn.shader.meta | 0 .../SFN_Blend/SFN_Blend_LinearDodge.shader | 0 .../SFN_Blend_LinearDodge.shader.meta | 0 .../SFN_Blend/SFN_Blend_LinearLight.shader | 0 .../SFN_Blend_LinearLight.shader.meta | 0 .../SFN_Blend/SFN_Blend_Multiply.shader | 0 .../SFN_Blend/SFN_Blend_Multiply.shader.meta | 0 .../SFN_Blend/SFN_Blend_Overlay.shader | 0 .../SFN_Blend/SFN_Blend_Overlay.shader.meta | 0 .../SFN_Blend/SFN_Blend_PinLight.shader | 0 .../SFN_Blend/SFN_Blend_PinLight.shader.meta | 0 .../SFN_Blend/SFN_Blend_Screen.shader | 0 .../SFN_Blend/SFN_Blend_Screen.shader.meta | 0 .../SFN_Blend/SFN_Blend_Subtract.shader | 0 .../SFN_Blend/SFN_Blend_Subtract.shader.meta | 0 .../SFN_Blend/SFN_Blend_VividLight.shader | 0 .../SFN_Blend_VividLight.shader.meta | 0 .../GPURendering}/SFN_Ceil.meta | 0 .../GPURendering}/SFN_Ceil/SFN_Ceil.shader | 0 .../SFN_Ceil/SFN_Ceil.shader.meta | 0 .../GPURendering}/SFN_ChannelBlend.meta | 0 .../SFN_ChannelBlend/SFN_ChannelBlend.shader | 0 .../SFN_ChannelBlend.shader.meta | 0 .../GPURendering}/SFN_Clamp.meta | 0 .../GPURendering}/SFN_Clamp/SFN_Clamp.shader | 0 .../SFN_Clamp/SFN_Clamp.shader.meta | 0 .../GPURendering}/SFN_Clamp01.meta | 0 .../SFN_Clamp01/SFN_Clamp01.shader | 0 .../SFN_Clamp01/SFN_Clamp01.shader.meta | 0 .../GPURendering}/SFN_Code.meta | 0 .../GPURendering}/SFN_Code/SFN_Code.shader | 0 .../SFN_Code/SFN_Code.shader.meta | 0 .../GPURendering}/SFN_ComponentMask.meta | 0 .../SFN_ComponentMask_CC1.shader | 0 .../SFN_ComponentMask_CC1.shader.meta | 0 .../SFN_ComponentMask_CC2.shader | 0 .../SFN_ComponentMask_CC2.shader.meta | 0 .../SFN_ComponentMask_CC3.shader | 0 .../SFN_ComponentMask_CC3.shader.meta | 0 .../SFN_ComponentMask_CC4.shader | 0 .../SFN_ComponentMask_CC4.shader.meta | 0 .../GPURendering}/SFN_ConstantClamp.meta | 0 .../SFN_ConstantClamp.shader | 0 .../SFN_ConstantClamp.shader.meta | 0 .../GPURendering}/SFN_ConstantLerp.meta | 0 .../SFN_ConstantLerp/SFN_ConstantLerp.shader | 0 .../SFN_ConstantLerp.shader.meta | 0 .../GPURendering}/SFN_Cos.meta | 0 .../GPURendering}/SFN_Cos/SFN_Cos.shader | 0 .../GPURendering}/SFN_Cos/SFN_Cos.shader.meta | 0 .../GPURendering}/SFN_Cross.meta | 0 .../GPURendering}/SFN_Cross/SFN_Cross.shader | 0 .../SFN_Cross/SFN_Cross.shader.meta | 0 .../GPURendering}/SFN_Cubemap.meta | 0 .../SFN_Cubemap/SFN_Cubemap.shader | 0 .../SFN_Cubemap/SFN_Cubemap.shader.meta | 0 .../GPURendering}/SFN_DDX.meta | 0 .../GPURendering}/SFN_DDX/SFN_DDX.shader | 0 .../GPURendering}/SFN_DDX/SFN_DDX.shader.meta | 0 .../GPURendering}/SFN_DDXY.meta | 0 .../GPURendering}/SFN_DDXY/SFN_DDXY.shader | 0 .../SFN_DDXY/SFN_DDXY.shader.meta | 0 .../GPURendering}/SFN_DDY.meta | 0 .../GPURendering}/SFN_DDY/SFN_DDY.shader | 0 .../GPURendering}/SFN_DDY/SFN_DDY.shader.meta | 0 .../GPURendering}/SFN_Depth.meta | 0 .../GPURendering}/SFN_Depth/SFN_Depth.shader | 0 .../SFN_Depth/SFN_Depth.shader.meta | 0 .../GPURendering}/SFN_DepthBlend.meta | 0 .../SFN_DepthBlend/SFN_DepthBlend.shader | 0 .../SFN_DepthBlend/SFN_DepthBlend.shader.meta | 0 .../GPURendering}/SFN_Desaturate.meta | 0 .../SFN_Desaturate/SFN_Desaturate_DES.shader | 0 .../SFN_Desaturate_DES.shader.meta | 0 .../SFN_Desaturate_REQONLY.shader | 0 .../SFN_Desaturate_REQONLY.shader.meta | 0 .../GPURendering}/SFN_Distance.meta | 0 .../SFN_Distance/SFN_Distance.shader | 0 .../SFN_Distance/SFN_Distance.shader.meta | 0 .../GPURendering}/SFN_Divide.meta | 0 .../SFN_Divide/SFN_Divide.shader | 0 .../SFN_Divide/SFN_Divide.shader.meta | 0 .../GPURendering}/SFN_Dot.meta | 0 .../GPURendering}/SFN_Dot/SFN_Dot_ABS.shader | 0 .../SFN_Dot/SFN_Dot_ABS.shader.meta | 0 .../GPURendering}/SFN_Dot/SFN_Dot_NEG.shader | 0 .../SFN_Dot/SFN_Dot_NEG.shader.meta | 0 .../GPURendering}/SFN_Dot/SFN_Dot_NRM.shader | 0 .../SFN_Dot/SFN_Dot_NRM.shader.meta | 0 .../GPURendering}/SFN_Dot/SFN_Dot_POS.shader | 0 .../SFN_Dot/SFN_Dot_POS.shader.meta | 0 .../GPURendering}/SFN_Dot/SFN_Dot_STD.shader | 0 .../SFN_Dot/SFN_Dot_STD.shader.meta | 0 .../GPURendering}/SFN_Exp.meta | 0 .../GPURendering}/SFN_Exp/SFN_Exp.shader | 0 .../GPURendering}/SFN_Exp/SFN_Exp.shader.meta | 0 .../GPURendering}/SFN_FaceSign.meta | 0 .../SFN_FaceSign/SFN_FaceSign.shader | 0 .../SFN_FaceSign/SFN_FaceSign.shader.meta | 0 .../GPURendering}/SFN_Floor.meta | 0 .../GPURendering}/SFN_Floor/SFN_Floor.shader | 0 .../SFN_Floor/SFN_Floor.shader.meta | 0 .../GPURendering}/SFN_Fmod.meta | 0 .../GPURendering}/SFN_Fmod/SFN_Fmod.shader | 0 .../SFN_Fmod/SFN_Fmod.shader.meta | 0 .../GPURendering}/SFN_FogColor.meta | 0 .../SFN_FogColor/SFN_FogColor.shader | 0 .../SFN_FogColor/SFN_FogColor.shader.meta | 0 .../GPURendering}/SFN_Frac.meta | 0 .../GPURendering}/SFN_Frac/SFN_Frac.shader | 0 .../SFN_Frac/SFN_Frac.shader.meta | 0 .../GPURendering}/SFN_FragmentPosition.meta | 0 .../SFN_FragmentPosition.shader | 0 .../SFN_FragmentPosition.shader.meta | 0 .../GPURendering}/SFN_Fresnel.meta | 0 .../SFN_Fresnel/SFN_Fresnel_EXP.shader | 0 .../SFN_Fresnel/SFN_Fresnel_EXP.shader.meta | 0 .../SFN_Fresnel/SFN_Fresnel_NRM.shader | 0 .../SFN_Fresnel/SFN_Fresnel_NRM.shader.meta | 0 .../SFN_Fresnel/SFN_Fresnel_NRM_EXP.shader | 0 .../SFN_Fresnel_NRM_EXP.shader.meta | 0 .../SFN_Fresnel/SFN_Fresnel_REQONLY.shader | 0 .../SFN_Fresnel_REQONLY.shader.meta | 0 .../GPURendering}/SFN_Get.meta | 0 .../GPURendering}/SFN_Get/SFN_Get.shader | 0 .../GPURendering}/SFN_Get/SFN_Get.shader.meta | 0 .../GPURendering}/SFN_HalfVector.meta | 0 .../SFN_HalfVector/SFN_HalfVector.shader | 0 .../SFN_HalfVector/SFN_HalfVector.shader.meta | 0 .../GPURendering}/SFN_HsvToRgb.meta | 0 .../SFN_HsvToRgb/SFN_HsvToRgb.shader | 0 .../SFN_HsvToRgb/SFN_HsvToRgb.shader.meta | 0 .../GPURendering}/SFN_Hue.meta | 0 .../GPURendering}/SFN_Hue/SFN_Hue.shader | 0 .../GPURendering}/SFN_Hue/SFN_Hue.shader.meta | 0 .../GPURendering}/SFN_If.meta | 0 .../GPURendering}/SFN_If/SFN_If.shader | 0 .../GPURendering}/SFN_If/SFN_If.shader.meta | 0 .../GPURendering}/SFN_InverseLerp.meta | 0 .../SFN_InverseLerp/SFN_InverseLerp.shader | 0 .../SFN_InverseLerp.shader.meta | 0 .../GPURendering}/SFN_Length.meta | 0 .../SFN_Length/SFN_Length.shader | 0 .../SFN_Length/SFN_Length.shader.meta | 0 .../GPURendering}/SFN_Lerp.meta | 0 .../GPURendering}/SFN_Lerp/SFN_Lerp.shader | 0 .../SFN_Lerp/SFN_Lerp.shader.meta | 0 .../GPURendering}/SFN_LightAttenuation.meta | 0 .../SFN_LightAttenuation.shader | 0 .../SFN_LightAttenuation.shader.meta | 0 .../GPURendering}/SFN_LightColor.meta | 0 .../SFN_LightColor/SFN_LightColor.shader | 0 .../SFN_LightColor/SFN_LightColor.shader.meta | 0 .../GPURendering}/SFN_LightPosition.meta | 0 .../SFN_LightPosition.shader | 0 .../SFN_LightPosition.shader.meta | 0 .../GPURendering}/SFN_LightVector.meta | 0 .../SFN_LightVector/SFN_LightVector.shader | 0 .../SFN_LightVector.shader.meta | 0 .../GPURendering}/SFN_Log.meta | 0 .../GPURendering}/SFN_Log/SFN_Log_LOG.shader | 0 .../SFN_Log/SFN_Log_LOG.shader.meta | 0 .../SFN_Log/SFN_Log_LOG10.shader | 0 .../SFN_Log/SFN_Log_LOG10.shader.meta | 0 .../GPURendering}/SFN_Log/SFN_Log_LOG2.shader | 0 .../SFN_Log/SFN_Log_LOG2.shader.meta | 0 .../GPURendering}/SFN_Matrix4x4.meta | 0 .../SFN_Matrix4x4/SFN_Matrix4x4.shader | 0 .../SFN_Matrix4x4/SFN_Matrix4x4.shader.meta | 0 .../GPURendering}/SFN_Matrix4x4Property.meta | 0 .../SFN_Matrix4x4Property.shader | 0 .../SFN_Matrix4x4Property.shader.meta | 0 .../GPURendering}/SFN_Max.meta | 0 .../GPURendering}/SFN_Max/SFN_Max_2.shader | 0 .../SFN_Max/SFN_Max_2.shader.meta | 0 .../GPURendering}/SFN_Max/SFN_Max_3.shader | 0 .../SFN_Max/SFN_Max_3.shader.meta | 0 .../GPURendering}/SFN_Max/SFN_Max_4.shader | 0 .../SFN_Max/SFN_Max_4.shader.meta | 0 .../GPURendering}/SFN_Max/SFN_Max_5.shader | 0 .../SFN_Max/SFN_Max_5.shader.meta | 0 .../GPURendering}/SFN_Min.meta | 0 .../GPURendering}/SFN_Min/SFN_Min_2.shader | 0 .../SFN_Min/SFN_Min_2.shader.meta | 0 .../GPURendering}/SFN_Min/SFN_Min_3.shader | 0 .../SFN_Min/SFN_Min_3.shader.meta | 0 .../GPURendering}/SFN_Min/SFN_Min_4.shader | 0 .../SFN_Min/SFN_Min_4.shader.meta | 0 .../GPURendering}/SFN_Min/SFN_Min_5.shader | 0 .../SFN_Min/SFN_Min_5.shader.meta | 0 .../GPURendering}/SFN_Multiply.meta | 0 .../SFN_Multiply/SFN_Multiply_2.shader | 0 .../SFN_Multiply/SFN_Multiply_2.shader.meta | 0 .../SFN_Multiply/SFN_Multiply_3.shader | 0 .../SFN_Multiply/SFN_Multiply_3.shader.meta | 0 .../SFN_Multiply/SFN_Multiply_4.shader | 0 .../SFN_Multiply/SFN_Multiply_4.shader.meta | 0 .../SFN_Multiply/SFN_Multiply_5.shader | 0 .../SFN_Multiply/SFN_Multiply_5.shader.meta | 0 .../GPURendering}/SFN_MultiplyMatrix.meta | 0 .../SFN_MultiplyMatrix.shader | 0 .../SFN_MultiplyMatrix.shader.meta | 0 .../GPURendering}/SFN_Negate.meta | 0 .../SFN_Negate/SFN_Negate.shader | 0 .../SFN_Negate/SFN_Negate.shader.meta | 0 .../GPURendering}/SFN_Noise.meta | 0 .../GPURendering}/SFN_Noise/SFN_Noise.shader | 0 .../SFN_Noise/SFN_Noise.shader.meta | 0 .../GPURendering}/SFN_NormalBlend.meta | 0 .../SFN_NormalBlend/SFN_NormalBlend.shader | 0 .../SFN_NormalBlend.shader.meta | 0 .../GPURendering}/SFN_NormalVector.meta | 0 .../SFN_NormalVector/SFN_NormalVector.shader | 0 .../SFN_NormalVector.shader.meta | 0 .../GPURendering}/SFN_Normalize.meta | 0 .../SFN_Normalize/SFN_Normalize.shader | 0 .../SFN_Normalize/SFN_Normalize.shader.meta | 0 .../GPURendering}/SFN_ObjectPosition.meta | 0 .../SFN_ObjectPosition.shader | 0 .../SFN_ObjectPosition.shader.meta | 0 .../GPURendering}/SFN_ObjectScale.meta | 0 .../SFN_ObjectScale_Default.shader | 0 .../SFN_ObjectScale_Default.shader.meta | 0 .../SFN_ObjectScale_Reciprocal.shader | 0 .../SFN_ObjectScale_Reciprocal.shader.meta | 0 .../GPURendering}/SFN_OneMinus.meta | 0 .../SFN_OneMinus/SFN_OneMinus.shader | 0 .../SFN_OneMinus/SFN_OneMinus.shader.meta | 0 .../GPURendering}/SFN_Panner.meta | 0 .../SFN_Panner/SFN_Panner_DIST.shader | 0 .../SFN_Panner/SFN_Panner_DIST.shader.meta | 0 .../SFN_Panner/SFN_Panner_REQONLY.shader | 0 .../SFN_Panner/SFN_Panner_REQONLY.shader.meta | 0 .../GPURendering}/SFN_Parallax.meta | 0 .../SFN_Parallax/SFN_Parallax_DEP.shader | 0 .../SFN_Parallax/SFN_Parallax_DEP.shader.meta | 0 .../SFN_Parallax/SFN_Parallax_DEP_REF.shader | 0 .../SFN_Parallax_DEP_REF.shader.meta | 0 .../SFN_Parallax/SFN_Parallax_REF.shader | 0 .../SFN_Parallax/SFN_Parallax_REF.shader.meta | 0 .../SFN_Parallax/SFN_Parallax_REQONLY.shader | 0 .../SFN_Parallax_REQONLY.shader.meta | 0 .../SFN_Parallax/SFN_Parallax_UV.shader | 0 .../SFN_Parallax/SFN_Parallax_UV.shader.meta | 0 .../SFN_Parallax/SFN_Parallax_UV_DEP.shader | 0 .../SFN_Parallax_UV_DEP.shader.meta | 0 .../SFN_Parallax_UV_DEP_REF.shader | 0 .../SFN_Parallax_UV_DEP_REF.shader.meta | 0 .../SFN_Parallax/SFN_Parallax_UV_REF.shader | 0 .../SFN_Parallax_UV_REF.shader.meta | 0 .../GPURendering}/SFN_PixelSize.meta | 0 .../SFN_PixelSize/SFN_PixelSize.shader | 0 .../SFN_PixelSize/SFN_PixelSize.shader.meta | 0 .../GPURendering}/SFN_Posterize.meta | 0 .../SFN_Posterize/SFN_Posterize.shader | 0 .../SFN_Posterize/SFN_Posterize.shader.meta | 0 .../GPURendering}/SFN_Power.meta | 0 .../GPURendering}/SFN_Power/SFN_Power.shader | 0 .../SFN_Power/SFN_Power.shader.meta | 0 .../SFN_ProjectionParameters.meta | 0 .../SFN_ProjectionParameters.shader | 0 .../SFN_ProjectionParameters.shader.meta | 0 .../GPURendering}/SFN_Reciprocal.meta | 0 .../SFN_Reciprocal/SFN_Reciprocal.shader | 0 .../SFN_Reciprocal/SFN_Reciprocal.shader.meta | 0 .../GPURendering}/SFN_Reflect.meta | 0 .../SFN_Reflect/SFN_Reflect.shader | 0 .../SFN_Reflect/SFN_Reflect.shader.meta | 0 .../GPURendering}/SFN_Relay.meta | 0 .../GPURendering}/SFN_Relay/SFN_Relay.shader | 0 .../SFN_Relay/SFN_Relay.shader.meta | 0 .../GPURendering}/SFN_RemapRange.meta | 0 .../SFN_RemapRange/SFN_RemapRange.shader | 0 .../SFN_RemapRange/SFN_RemapRange.shader.meta | 0 .../GPURendering}/SFN_RemapRangeAdvanced.meta | 0 .../SFN_RemapRangeAdvanced.shader | 0 .../SFN_RemapRangeAdvanced.shader.meta | 0 .../GPURendering}/SFN_RgbToHsv.meta | 0 .../SFN_RgbToHsv/SFN_RgbToHsv.shader | 0 .../SFN_RgbToHsv/SFN_RgbToHsv.shader.meta | 0 .../GPURendering}/SFN_Rotator.meta | 0 .../SFN_Rotator/SFN_Rotator_ANG.shader | 0 .../SFN_Rotator/SFN_Rotator_ANG.shader.meta | 0 .../SFN_Rotator/SFN_Rotator_PIV.shader | 0 .../SFN_Rotator/SFN_Rotator_PIV.shader.meta | 0 .../SFN_Rotator/SFN_Rotator_PIV_ANG.shader | 0 .../SFN_Rotator_PIV_ANG.shader.meta | 0 .../SFN_Rotator/SFN_Rotator_PIV_SPD.shader | 0 .../SFN_Rotator_PIV_SPD.shader.meta | 0 .../SFN_Rotator_PIV_SPD_ANG.shader | 0 .../SFN_Rotator_PIV_SPD_ANG.shader.meta | 0 .../SFN_Rotator/SFN_Rotator_REQONLY.shader | 0 .../SFN_Rotator_REQONLY.shader.meta | 0 .../SFN_Rotator/SFN_Rotator_SPD.shader | 0 .../SFN_Rotator/SFN_Rotator_SPD.shader.meta | 0 .../SFN_Rotator/SFN_Rotator_SPD_ANG.shader | 0 .../SFN_Rotator_SPD_ANG.shader.meta | 0 .../GPURendering}/SFN_Round.meta | 0 .../GPURendering}/SFN_Round/SFN_Round.shader | 0 .../SFN_Round/SFN_Round.shader.meta | 0 .../GPURendering}/SFN_SceneColor.meta | 0 .../SFN_SceneColor/SFN_SceneColor.shader | 0 .../SFN_SceneColor/SFN_SceneColor.shader.meta | 0 .../GPURendering}/SFN_SceneDepth.meta | 0 .../SFN_SceneDepth/SFN_SceneDepth.shader | 0 .../SFN_SceneDepth/SFN_SceneDepth.shader.meta | 0 .../GPURendering}/SFN_ScreenParameters.meta | 0 .../SFN_ScreenParameters.shader | 0 .../SFN_ScreenParameters.shader.meta | 0 .../GPURendering}/SFN_ScreenPos.meta | 0 .../SFN_ScreenPos/SFN_ScreenPos.shader | 0 .../SFN_ScreenPos/SFN_ScreenPos.shader.meta | 0 .../GPURendering}/SFN_Set.meta | 0 .../GPURendering}/SFN_Set/SFN_Set.shader | 0 .../GPURendering}/SFN_Set/SFN_Set.shader.meta | 0 .../GPURendering}/SFN_Sign.meta | 0 .../GPURendering}/SFN_Sign/SFN_Sign.shader | 0 .../SFN_Sign/SFN_Sign.shader.meta | 0 .../GPURendering}/SFN_Sin.meta | 0 .../GPURendering}/SFN_Sin/SFN_Sin.shader | 0 .../GPURendering}/SFN_Sin/SFN_Sin.shader.meta | 0 .../GPURendering}/SFN_Smoothstep.meta | 0 .../SFN_Smoothstep/SFN_Smoothstep.shader | 0 .../SFN_Smoothstep/SFN_Smoothstep.shader.meta | 0 .../GPURendering}/SFN_Sqrt.meta | 0 .../GPURendering}/SFN_Sqrt/SFN_Sqrt.shader | 0 .../SFN_Sqrt/SFN_Sqrt.shader.meta | 0 .../GPURendering}/SFN_Step.meta | 0 .../GPURendering}/SFN_Step/SFN_Step.shader | 0 .../SFN_Step/SFN_Step.shader.meta | 0 .../GPURendering}/SFN_Subtract.meta | 0 .../SFN_Subtract/SFN_Subtract.shader | 0 .../SFN_Subtract/SFN_Subtract.shader.meta | 0 .../GPURendering}/SFN_SwitchProperty.meta | 0 .../SFN_SwitchProperty.shader | 0 .../SFN_SwitchProperty.shader.meta | 0 .../GPURendering}/SFN_Tan.meta | 0 .../GPURendering}/SFN_Tan/SFN_Tan.shader | 0 .../GPURendering}/SFN_Tan/SFN_Tan.shader.meta | 0 .../GPURendering}/SFN_Tangent.meta | 0 .../SFN_Tangent/SFN_Tangent.shader | 0 .../SFN_Tangent/SFN_Tangent.shader.meta | 0 .../GPURendering}/SFN_Tex2d.meta | 0 .../SFN_Tex2d/SFN_Tex2d_MIP.shader | 0 .../SFN_Tex2d/SFN_Tex2d_MIP.shader.meta | 0 .../SFN_Tex2d/SFN_Tex2d_NoInputs.shader | 0 .../SFN_Tex2d/SFN_Tex2d_NoInputs.shader.meta | 0 .../SFN_Tex2d/SFN_Tex2d_UV.shader | 0 .../SFN_Tex2d/SFN_Tex2d_UV.shader.meta | 0 .../SFN_Tex2d/SFN_Tex2d_UV_MIP.shader | 0 .../SFN_Tex2d/SFN_Tex2d_UV_MIP.shader.meta | 0 .../GPURendering}/SFN_Tex2dAsset.meta | 0 .../SFN_Tex2dAsset/SFN_Tex2dAsset.shader | 0 .../SFN_Tex2dAsset/SFN_Tex2dAsset.shader.meta | 0 .../GPURendering}/SFN_TexCoord.meta | 0 .../SFN_TexCoord/SFN_TexCoord.shader | 0 .../SFN_TexCoord/SFN_TexCoord.shader.meta | 0 .../GPURendering}/SFN_Time.meta | 0 .../GPURendering}/SFN_Time/SFN_Time.shader | 0 .../SFN_Time/SFN_Time.shader.meta | 0 .../GPURendering}/SFN_Transform.meta | 0 .../SFN_Transform/SFN_Transform.shader | 0 .../SFN_Transform/SFN_Transform.shader.meta | 0 .../GPURendering}/SFN_Transpose.meta | 0 .../SFN_Transpose/SFN_Transpose.shader | 0 .../SFN_Transpose/SFN_Transpose.shader.meta | 0 .../GPURendering}/SFN_Trunc.meta | 0 .../GPURendering}/SFN_Trunc/SFN_Trunc.shader | 0 .../SFN_Trunc/SFN_Trunc.shader.meta | 0 .../GPURendering}/SFN_UVTile.meta | 0 .../SFN_UVTile/SFN_UVTile.shader | 0 .../SFN_UVTile/SFN_UVTile.shader.meta | 0 .../GPURendering}/SFN_VectorProjection.meta | 0 .../SFN_VectorProjection.shader | 0 .../SFN_VectorProjection.shader.meta | 0 .../GPURendering}/SFN_VectorRejection.meta | 0 .../SFN_VectorRejection.shader | 0 .../SFN_VectorRejection.shader.meta | 0 .../GPURendering}/SFN_VertexColor.meta | 0 .../SFN_VertexColor/SFN_VertexColor.shader | 0 .../SFN_VertexColor.shader.meta | 0 .../GPURendering}/SFN_ViewPosition.meta | 0 .../SFN_ViewPosition/SFN_ViewPosition.shader | 0 .../SFN_ViewPosition.shader.meta | 0 .../SFN_ViewReflectionVector.meta | 0 .../SFN_ViewReflectionVector.shader | 0 .../SFN_ViewReflectionVector.shader.meta | 0 .../GPURendering}/SFN_ViewVector.meta | 0 .../SFN_ViewVector/SFN_ViewVector.shader | 0 .../SFN_ViewVector/SFN_ViewVector.shader.meta | 0 .../InternalResources/Inspectors.meta | 0 .../Inspectors/ShaderForgeInspector.cs | 0 .../Inspectors/ShaderForgeInspector.cs.meta | 0 .../ShaderForgeMaterialInspector.cs | 0 .../ShaderForgeMaterialInspector.cs.meta | 0 .../InternalResources/Interface.meta | 0 .../InternalResources/Interface/Fonts.meta | 0 .../Interface/Fonts/VeraMono-Bold-Italic.ttf | Bin .../Fonts/VeraMono-Bold-Italic.ttf.meta | 0 .../Interface/Fonts/VeraMono-Bold.ttf | Bin .../Interface/Fonts/VeraMono-Bold.ttf.meta | 0 .../Interface/Fonts/VeraMono-Italic.ttf | Bin .../Interface/Fonts/VeraMono-Italic.ttf.meta | 0 .../Interface/Fonts/VeraMono.ttf | Bin .../Interface/Fonts/VeraMono.ttf.meta | 0 .../InternalResources/Interface/Nodes.meta | 0 .../Interface/Nodes/Data.meta | 0 .../Nodes/Data/node_3d_data_mask.png | Bin .../Nodes/Data/node_3d_data_mask.png.meta | 0 .../Interface/Nodes/Data/sfn_bitangent.png | Bin .../Nodes/Data/sfn_bitangent.png.meta | 0 .../Interface/Nodes/Data/sfn_depth.png | Bin .../Interface/Nodes/Data/sfn_depth.png.meta | 0 .../Nodes/Data/sfn_fragmentposition.png | Bin .../Nodes/Data/sfn_fragmentposition.png.meta | 0 .../Interface/Nodes/Data/sfn_fresnel.png | Bin .../Interface/Nodes/Data/sfn_fresnel.png.meta | 0 .../Interface/Nodes/Data/sfn_halfvector.png | Bin .../Nodes/Data/sfn_halfvector.png.meta | 0 .../Nodes/Data/sfn_lightattenuation.png | Bin .../Nodes/Data/sfn_lightattenuation.png.meta | 0 .../Interface/Nodes/Data/sfn_lightcolor.png | Bin .../Nodes/Data/sfn_lightcolor.png.meta | 0 .../Interface/Nodes/Data/sfn_lightvector.png | Bin .../Nodes/Data/sfn_lightvector.png.meta | 0 .../Interface/Nodes/Data/sfn_normalvector.png | Bin .../Nodes/Data/sfn_normalvector.png.meta | 0 .../Nodes/Data/sfn_normalvector_2.png | Bin .../Nodes/Data/sfn_normalvector_2.png.meta | 0 .../Interface/Nodes/Data/sfn_tangent.png | Bin .../Interface/Nodes/Data/sfn_tangent.png.meta | 0 .../Nodes/Data/sfn_viewreflectionvector.png | Bin .../Data/sfn_viewreflectionvector.png.meta | 0 .../Interface/Nodes/Data/sfn_viewvector.png | Bin .../Nodes/Data/sfn_viewvector.png.meta | 0 .../Interface/Nodes/sfn_ambientlight.png | Bin .../Interface/Nodes/sfn_ambientlight.png.meta | 0 .../Interface/Nodes/sfn_bitangent.png | Bin .../Interface/Nodes/sfn_bitangent.png.meta | 0 .../Interface/Nodes/sfn_depth.png | Bin .../Interface/Nodes/sfn_depth.png.meta | 0 .../Interface/Nodes/sfn_e.png | Bin .../Interface/Nodes/sfn_e.png.meta | 0 .../Interface/Nodes/sfn_facesign.png | Bin .../Interface/Nodes/sfn_facesign.png.meta | 0 .../Interface/Nodes/sfn_facesign_2.png | Bin .../Interface/Nodes/sfn_facesign_2.png.meta | 0 .../Interface/Nodes/sfn_final.png | Bin .../Interface/Nodes/sfn_final.png.meta | 0 .../Interface/Nodes/sfn_fogcolor.png | Bin .../Interface/Nodes/sfn_fogcolor.png.meta | 0 .../Interface/Nodes/sfn_fogcolor_2.png | Bin .../Interface/Nodes/sfn_fogcolor_2.png.meta | 0 .../Interface/Nodes/sfn_fragmentposition.png | Bin .../Nodes/sfn_fragmentposition.png.meta | 0 .../Interface/Nodes/sfn_halfvector.png | Bin .../Interface/Nodes/sfn_halfvector.png.meta | 0 .../Interface/Nodes/sfn_lightattenuation.png | Bin .../Nodes/sfn_lightattenuation.png.meta | 0 .../Interface/Nodes/sfn_lightcolor.png | Bin .../Interface/Nodes/sfn_lightcolor.png.meta | 0 .../Interface/Nodes/sfn_lightposition.png | Bin .../Nodes/sfn_lightposition.png.meta | 0 .../Interface/Nodes/sfn_lightvector.png | Bin .../Interface/Nodes/sfn_lightvector.png.meta | 0 .../Interface/Nodes/sfn_normalvector.png | Bin .../Interface/Nodes/sfn_normalvector.png.meta | 0 .../Interface/Nodes/sfn_normalvector_2.png | Bin .../Nodes/sfn_normalvector_2.png.meta | 0 .../Interface/Nodes/sfn_objectposition.png | Bin .../Nodes/sfn_objectposition.png.meta | 0 .../Interface/Nodes/sfn_objectscale.png | Bin .../Interface/Nodes/sfn_objectscale.png.meta | 0 .../Interface/Nodes/sfn_phi.png | Bin .../Interface/Nodes/sfn_phi.png.meta | 0 .../Interface/Nodes/sfn_pi.png | Bin .../Interface/Nodes/sfn_pi.png.meta | 0 .../Nodes/sfn_projectionparameters.png | Bin .../Nodes/sfn_projectionparameters.png.meta | 0 .../Interface/Nodes/sfn_root2.png | Bin .../Interface/Nodes/sfn_root2.png.meta | 0 .../Interface/Nodes/sfn_screenparameters.png | Bin .../Nodes/sfn_screenparameters.png.meta | 0 .../Interface/Nodes/sfn_screenpos.png | Bin .../Interface/Nodes/sfn_screenpos.png.meta | 0 .../Interface/Nodes/sfn_screenpos_2.png | Bin .../Interface/Nodes/sfn_screenpos_2.png.meta | 0 .../Interface/Nodes/sfn_screenpos_3.png | Bin .../Interface/Nodes/sfn_screenpos_3.png.meta | 0 .../Interface/Nodes/sfn_tangent.png | Bin .../Interface/Nodes/sfn_tangent.png.meta | 0 .../Interface/Nodes/sfn_tau.png | Bin .../Interface/Nodes/sfn_tau.png.meta | 0 .../Interface/Nodes/sfn_time.png | Bin .../Interface/Nodes/sfn_time.png.meta | 0 .../Interface/Nodes/sfn_vertexcolor.png | Bin .../Interface/Nodes/sfn_vertexcolor.png.meta | 0 .../Interface/Nodes/sfn_viewposition.png | Bin .../Interface/Nodes/sfn_viewposition.png.meta | 0 .../Nodes/sfn_viewreflectionvector.png | Bin .../Nodes/sfn_viewreflectionvector.png.meta | 0 .../Interface/Nodes/sfn_viewvector.png | Bin .../Interface/Nodes/sfn_viewvector.png.meta | 0 .../InternalResources/Interface/chk.png | Bin .../InternalResources/Interface/chk.png.meta | 0 .../InternalResources/Interface/chk_light.png | Bin .../Interface/chk_light.png.meta | 0 .../Interface/handle_drag.tga | Bin .../Interface/handle_drag.tga.meta | 0 .../InternalResources/Interface/icon.png | Bin .../InternalResources/Interface/icon.png.meta | 0 .../Interface/icon_light.png | Bin .../Interface/icon_light.png.meta | 0 .../Interface/icon_normal.tga | Bin .../Interface/icon_normal.tga.meta | 0 .../InternalResources/Interface/inst_frag.png | Bin .../Interface/inst_frag.png.meta | 0 .../Interface/inst_frag_light.png | Bin .../Interface/inst_frag_light.png.meta | 0 .../Interface/inst_frag_tex.png | Bin .../Interface/inst_frag_tex.png.meta | 0 .../Interface/inst_frag_tex_light.png | Bin .../Interface/inst_frag_tex_light.png.meta | 0 .../InternalResources/Interface/inst_vert.png | Bin .../Interface/inst_vert.png.meta | 0 .../Interface/inst_vert_light.png | Bin .../Interface/inst_vert_light.png.meta | 0 .../Interface/inst_vert_tex.png | Bin .../Interface/inst_vert_tex.png.meta | 0 .../Interface/inst_vert_tex_light.png | Bin .../Interface/inst_vert_tex_light.png.meta | 0 .../InternalResources/Interface/logo.png | Bin .../InternalResources/Interface/logo.png.meta | 0 .../Interface/logo_light.png | Bin .../Interface/logo_light.png.meta | 0 .../Interface/preset_custom.png | Bin .../Interface/preset_custom.png.meta | 0 .../Interface/preset_highlight.png | Bin .../Interface/preset_highlight.png.meta | 0 .../Interface/preset_litbasic.png | Bin .../Interface/preset_litbasic.png.meta | 0 .../Interface/preset_litpbr.png | Bin .../Interface/preset_litpbr.png.meta | 0 .../Interface/preset_particleadditive.png | Bin .../preset_particleadditive.png.meta | 0 .../preset_particleadditive_light.png | Bin .../preset_particleadditive_light.png.meta | 0 .../Interface/preset_particlealphablended.png | Bin .../preset_particlealphablended.png.meta | 0 .../preset_particlealphablended_light.png | Bin ...preset_particlealphablended_light.png.meta | 0 .../preset_particlemultiplicative.png | Bin .../preset_particlemultiplicative.png.meta | 0 .../preset_particlemultiplicative_light.png | Bin ...eset_particlemultiplicative_light.png.meta | 0 .../Interface/preset_posteffect.png | Bin .../Interface/preset_posteffect.png.meta | 0 .../Interface/preset_sky.png | Bin .../Interface/preset_sky.png.meta | 0 .../Interface/preset_sprite.png | Bin .../Interface/preset_sprite.png.meta | 0 .../Interface/preset_unlit.png | Bin .../Interface/preset_unlit.png.meta | 0 .../Interface/screenshot_icon.png | Bin .../Interface/screenshot_icon.png.meta | 0 .../Interface/screenshot_icon_light.png | Bin .../Interface/screenshot_icon_light.png.meta | 0 .../InternalResources/Meshes.meta | 0 .../InternalResources/Meshes/sf_meshes.fbx | Bin .../Meshes/sf_meshes.fbx.meta | 0 .../InternalResources/Shader Presets.meta | 0 .../ShaderPresets}/PresetBasic.shader | 0 .../ShaderPresets}/PresetBasic.shader.meta | 0 .../PresetCustomLighting.shader | 0 .../PresetCustomLighting.shader.meta | 0 .../ShaderPresets}/PresetPBR.shader | 0 .../ShaderPresets}/PresetPBR.shader.meta | 0 .../PresetParticleAdditive.shader | 0 .../PresetParticleAdditive.shader.meta | 0 .../PresetParticleAlphaBlended.shader | 0 .../PresetParticleAlphaBlended.shader.meta | 0 .../PresetParticleMultiplicative.shader | 0 .../PresetParticleMultiplicative.shader.meta | 0 .../ShaderPresets}/PresetPostEffect.shader | 0 .../PresetPostEffect.shader.meta | 0 .../ShaderPresets}/PresetSky.shader | 0 .../ShaderPresets}/PresetSky.shader.meta | 0 .../ShaderPresets}/PresetSprite.shader | 0 .../ShaderPresets}/PresetSprite.shader.meta | 0 .../ShaderPresets}/PresetUnlit.shader | 0 .../ShaderPresets}/PresetUnlit.shader.meta | 0 .../ShaderForge/Readme.txt => Readme.txt | 0 .../Readme.txt.meta => Readme.txt.meta | 0 Shader Forge/Assets/ShaderForge.meta | 5 - .../Assets/ShaderForge/Example Assets.meta | 5 - .../ShaderForge/Example Assets/Meshes.meta | 5 - .../Meshes/sf_example_meshes.fbx | Bin 106112 -> 0 bytes .../Meshes/sf_example_meshes.fbx.meta | 90 -- .../ShaderForge/Example Assets/Scripts.meta | 5 - .../Example Assets/Scripts/EditorLabel.cs | 81 - .../Scripts/EditorLabel.cs.meta | 8 - .../Scripts/EnableCameraDepthInForward.cs | 22 - .../EnableCameraDepthInForward.cs.meta | 8 - .../Scripts/SoftNormalsToVertexColor.cs | 99 -- .../Scripts/SoftNormalsToVertexColor.cs.meta | 12 - .../ShaderForge/Example Assets/Shaders.meta | 5 - .../Example Assets/Shaders/CustomLighting.mat | 43 - .../Shaders/CustomLighting.mat.meta | 4 - .../Shaders/CustomLighting.shader | 187 --- .../Shaders/CustomLighting.shader.meta | 11 - .../Example Assets/Shaders/LightWrapping.mat | 83 - .../Shaders/LightWrapping.mat.meta | 4 - .../Shaders/LightWrapping.shader | 377 ----- .../Shaders/LightWrapping.shader.meta | 9 - .../Example Assets/Shaders/Parallax.mat | 66 - .../Example Assets/Shaders/Parallax.mat.meta | 4 - .../Example Assets/Shaders/Parallax.shader | 412 ----- .../Shaders/Parallax.shader.meta | 11 - .../Example Assets/Shaders/PixelRotator.mat | 80 - .../Shaders/PixelRotator.mat.meta | 4 - .../Shaders/PixelRotator.shader | 189 --- .../Shaders/PixelRotator.shader.meta | 9 - .../Example Assets/Shaders/Refraction.mat | 43 - .../Shaders/Refraction.mat.meta | 4 - .../Example Assets/Shaders/Refraction.shader | 350 ---- .../Shaders/Refraction.shader.meta | 10 - .../Shaders/TessellationDisplacement.mat | 103 -- .../Shaders/TessellationDisplacement.mat.meta | 4 - .../Shaders/TessellationDisplacement.shader | 772 --------- .../TessellationDisplacement.shader.meta | 13 - .../Example Assets/Shaders/Tiles.mat | 192 --- .../Example Assets/Shaders/Tiles.mat.meta | 4 - .../Example Assets/Shaders/Tiles.shader | 393 ----- .../Example Assets/Shaders/Tiles.shader.meta | 10 - .../Example Assets/Shaders/Vegetation.mat | 85 - .../Shaders/Vegetation.mat.meta | 4 - .../Example Assets/Shaders/Vegetation.shader | 436 ----- .../Shaders/Vegetation.shader.meta | 11 - .../Shaders/VertexAnimation.mat | 97 -- .../Shaders/VertexAnimation.mat.meta | 4 - .../Shaders/VertexAnimation.shader | 437 ----- .../Shaders/VertexAnimation.shader.meta | 11 - .../Shaders/VertexAnimation_blue.mat | 97 -- .../Shaders/VertexAnimation_blue.mat.meta | 4 - .../Shaders/VertexColorRounding.mat | 21 - .../Shaders/VertexColorRounding.mat.meta | 4 - .../Shaders/VertexColorRounding.shader | 103 -- .../Shaders/VertexColorRounding.shader.meta | 9 - .../ShaderForge/Example Assets/Textures.meta | 5 - .../Textures/sf_alpha_circle.png | Bin 32947 -> 0 bytes .../Textures/sf_alpha_circle.png.meta | 45 - .../Textures/sf_alpha_circle_02.png | Bin 34168 -> 0 bytes .../Textures/sf_alpha_circle_02.png.meta | 45 - .../Textures/sf_conc_floor_01_d.tga | Bin 4194348 -> 0 bytes .../Textures/sf_conc_floor_01_d.tga.meta | 45 - .../Textures/sf_conc_floor_01_n.tga | Bin 3145772 -> 0 bytes .../Textures/sf_conc_floor_01_n.tga.meta | 45 - .../Textures/sf_gradient_light_01.png | Bin 3511 -> 0 bytes .../Textures/sf_gradient_light_01.png.meta | 45 - .../Textures/sf_gradient_ramp_01.png | Bin 3468 -> 0 bytes .../Textures/sf_gradient_ramp_01.png.meta | 45 - .../Textures/sf_gradient_ramp_02.png | Bin 3167 -> 0 bytes .../Textures/sf_gradient_ramp_02.png.meta | 45 - .../Textures/sf_leaves_01_d.tga | Bin 4194348 -> 0 bytes .../Textures/sf_leaves_01_d.tga.meta | 45 - .../Textures/sf_leaves_01_n.png | Bin 924690 -> 0 bytes .../Textures/sf_leaves_01_n.png.meta | 45 - .../Textures/sf_noise_clouds_01.png | Bin 396918 -> 0 bytes .../Textures/sf_noise_clouds_01.png.meta | 45 - .../Textures/sf_noise_grain_01.png | Bin 128100 -> 0 bytes .../Textures/sf_noise_grain_01.png.meta | 45 - .../Textures/sf_parallax_test_ao_height.tga | Bin 65580 -> 0 bytes .../sf_parallax_test_ao_height.tga.meta | 45 - .../Textures/sf_parallax_test_normals.tga | Bin 49196 -> 0 bytes .../sf_parallax_test_normals.tga.meta | 45 - .../Textures/sf_rgb_overlap.png | Bin 16671 -> 0 bytes .../Textures/sf_rgb_overlap.png.meta | 45 - .../Example Assets/Textures/sf_texcoords.png | Bin 3393 -> 0 bytes .../Textures/sf_texcoords.png.meta | 45 - .../Example Assets/Textures/sf_tile_01_d.tga | Bin 3116 -> 0 bytes .../Textures/sf_tile_01_d.tga.meta | 45 - .../Example Assets/Textures/sf_tile_01_n.tga | Bin 3116 -> 0 bytes .../Textures/sf_tile_01_n.tga.meta | 45 - .../Assets/ShaderForge/Example Scene.unity | 1437 ----------------- .../ShaderForge/Example Scene.unity.meta | 4 - Shader Forge/Packages/manifest.json | 4 - .../ProjectSettings/AudioManager.asset | 12 - .../ProjectSettings/ClusterInputManager.asset | 6 - .../ProjectSettings/DynamicsManager.asset | 15 - .../ProjectSettings/EditorBuildSettings.asset | 9 - .../ProjectSettings/EditorSettings.asset | 15 - .../ProjectSettings/GraphicsSettings.asset | 76 - .../ProjectSettings/InputManager.asset | 246 --- .../ProjectSettings/NavMeshAreas.asset | 133 -- .../ProjectSettings/NavMeshLayers.asset | 133 -- .../NavMeshProjectSettings.asset | 133 -- .../ProjectSettings/NetworkManager.asset | 8 - .../ProjectSettings/Physics2DSettings.asset | 11 - .../ProjectSettings/PresetManager.asset | 6 - .../ProjectSettings/ProjectSettings.asset | 607 ------- .../ProjectSettings/ProjectVersion.txt | 1 - .../ProjectSettings/QualitySettings.asset | 174 -- Shader Forge/ProjectSettings/TagManager.asset | 67 - .../ProjectSettings/TimeManager.asset | 8 - .../UnityConnectSettings.asset | 29 - Shader Forge/TesterManual.txt | 55 - Shader Forge/UpgradeLog.htm | Bin 16766 -> 0 bytes 1168 files changed, 9018 deletions(-) rename Shader Forge/Assets/ShaderForge/Editor.meta => Editor.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/SFPSC_Blending.cs (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/SFPSC_Blending.cs.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/SFPSC_Console.cs (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/SFPSC_Console.cs.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/SFPSC_Experimental.cs (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/SFPSC_Experimental.cs.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/SFPSC_Geometry.cs (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/SFPSC_Geometry.cs.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/SFPSC_Lighting.cs (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/SFPSC_Lighting.cs.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/SFPSC_Meta.cs (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/SFPSC_Meta.cs.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/SFPSC_Properties.cs (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/SFPSC_Properties.cs.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/SFPS_Category.cs (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/SFPS_Category.cs.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/SF_Dependencies.cs (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/SF_Dependencies.cs.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/SF_Editor.cs (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/SF_Editor.cs.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/SF_EditorNodeBrowser.cs (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/SF_EditorNodeBrowser.cs.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/SF_EditorNodeData.cs (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/SF_EditorNodeData.cs.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/SF_EditorNodeView.cs (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/SF_EditorNodeView.cs.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/SF_ErrorEntry.cs (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/SF_ErrorEntry.cs.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/SF_FeatureChecker.cs (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/SF_FeatureChecker.cs.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/SF_InstructionPass.cs (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/SF_InstructionPass.cs.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/SF_NodeConnectionLine.cs (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/SF_NodeConnectionLine.cs.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/SF_NodeConnector.cs (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/SF_NodeConnector.cs.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/SF_NodePreview.cs (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/SF_NodePreview.cs.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/SF_NodeStatus.cs (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/SF_NodeStatus.cs.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/SF_NodeTreeStatus.cs (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/SF_NodeTreeStatus.cs.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/SF_Parser.cs (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/SF_Parser.cs.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/SF_PassSettings.cs (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/SF_PassSettings.cs.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/SF_PreviewSettings.cs (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/SF_PreviewSettings.cs.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/SF_PreviewWindow.cs (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/SF_PreviewWindow.cs.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/SF_SelectionManager.cs (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/SF_SelectionManager.cs.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/SF_Settings.cs (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/SF_Settings.cs.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/SF_StatusBox.cs (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/SF_StatusBox.cs.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/_ConnectionGroups.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/_ConnectionGroups/SFNCG_Append.cs (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/_ConnectionGroups/SFNCG_Append.cs.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/_ConnectionGroups/SFNCG_Arithmetic.cs (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/_ConnectionGroups/SFNCG_Arithmetic.cs.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/_ConnectionGroups/SFNCG_ChannelBlend.cs (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/_ConnectionGroups/SFNCG_ChannelBlend.cs.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/_ConnectionGroups/SFNCG_ComponentMask.cs (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/_ConnectionGroups/SFNCG_ComponentMask.cs.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/_ConnectionGroups/SFNCG_MatrixMultiply.cs (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/_ConnectionGroups/SFNCG_MatrixMultiply.cs.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/_ConnectionGroups/SF_NodeConnectionGroup.cs (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/_ConnectionGroups/SF_NodeConnectionGroup.cs.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/_Enums.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/_Enums/SF_VarTypeEnums.cs (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/_Enums/SF_VarTypeEnums.cs.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/_Evaluator.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/_Evaluator/Pass_FwdAdd.cs (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/_Evaluator/Pass_FwdAdd.cs.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/_Evaluator/SF_Evaluator.cs (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/_Evaluator/SF_Evaluator.cs.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/_Evaluator/_NewSystem.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/_Evaluator/_NewSystem/DependencyTree.cs (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/_Evaluator/_NewSystem/DependencyTree.cs.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/_Nodes.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/_Nodes/SFN_Abs.cs (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/_Nodes/SFN_Abs.cs.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/_Nodes/SFN_Add.cs (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/_Nodes/SFN_Add.cs.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/_Nodes/SFN_AmbientLight.cs (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/_Nodes/SFN_AmbientLight.cs.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/_Nodes/SFN_Append.cs (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/_Nodes/SFN_Append.cs.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/_Nodes/SFN_ArcCos.cs (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/_Nodes/SFN_ArcCos.cs.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/_Nodes/SFN_ArcSin.cs (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/_Nodes/SFN_ArcSin.cs.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/_Nodes/SFN_ArcTan.cs (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/_Nodes/SFN_ArcTan.cs.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/_Nodes/SFN_ArcTan2.cs (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/_Nodes/SFN_ArcTan2.cs.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/_Nodes/SFN_Bitangent.cs (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/_Nodes/SFN_Bitangent.cs.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/_Nodes/SFN_Blend.cs (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/_Nodes/SFN_Blend.cs.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/_Nodes/SFN_Ceil.cs (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/_Nodes/SFN_Ceil.cs.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/_Nodes/SFN_ChannelBlend.cs (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/_Nodes/SFN_ChannelBlend.cs.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/_Nodes/SFN_Clamp.cs (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/_Nodes/SFN_Clamp.cs.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/_Nodes/SFN_Clamp01.cs (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/_Nodes/SFN_Clamp01.cs.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/_Nodes/SFN_Code.cs (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/_Nodes/SFN_Code.cs.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/_Nodes/SFN_Color.cs (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/_Nodes/SFN_Color.cs.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/_Nodes/SFN_CommentBox.cs (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/_Nodes/SFN_CommentBox.cs.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/_Nodes/SFN_ComponentMask.cs (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/_Nodes/SFN_ComponentMask.cs.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/_Nodes/SFN_ConstantClamp.cs (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/_Nodes/SFN_ConstantClamp.cs.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/_Nodes/SFN_ConstantLerp.cs (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/_Nodes/SFN_ConstantLerp.cs.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/_Nodes/SFN_Cos.cs (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/_Nodes/SFN_Cos.cs.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/_Nodes/SFN_Cross.cs (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/_Nodes/SFN_Cross.cs.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/_Nodes/SFN_Cubemap.cs (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/_Nodes/SFN_Cubemap.cs.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/_Nodes/SFN_DDX.cs (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/_Nodes/SFN_DDX.cs.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/_Nodes/SFN_DDXY.cs (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/_Nodes/SFN_DDXY.cs.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/_Nodes/SFN_DDY.cs (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/_Nodes/SFN_DDY.cs.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/_Nodes/SFN_Depth.cs (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/_Nodes/SFN_Depth.cs.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/_Nodes/SFN_DepthBlend.cs (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/_Nodes/SFN_DepthBlend.cs.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/_Nodes/SFN_Desaturate.cs (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/_Nodes/SFN_Desaturate.cs.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/_Nodes/SFN_Distance.cs (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/_Nodes/SFN_Distance.cs.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/_Nodes/SFN_Divide.cs (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/_Nodes/SFN_Divide.cs.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/_Nodes/SFN_Dot.cs (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/_Nodes/SFN_Dot.cs.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/_Nodes/SFN_E.cs (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/_Nodes/SFN_E.cs.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/_Nodes/SFN_Exp.cs (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/_Nodes/SFN_Exp.cs.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/_Nodes/SFN_FaceSign.cs (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/_Nodes/SFN_FaceSign.cs.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/_Nodes/SFN_Final.cs (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/_Nodes/SFN_Final.cs.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/_Nodes/SFN_Floor.cs (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/_Nodes/SFN_Floor.cs.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/_Nodes/SFN_Fmod.cs (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/_Nodes/SFN_Fmod.cs.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/_Nodes/SFN_FogColor.cs (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/_Nodes/SFN_FogColor.cs.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/_Nodes/SFN_Frac.cs (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/_Nodes/SFN_Frac.cs.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/_Nodes/SFN_FragmentPosition.cs (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/_Nodes/SFN_FragmentPosition.cs.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/_Nodes/SFN_Fresnel.cs (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/_Nodes/SFN_Fresnel.cs.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/_Nodes/SFN_Get.cs (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/_Nodes/SFN_Get.cs.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/_Nodes/SFN_HalfVector.cs (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/_Nodes/SFN_HalfVector.cs.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/_Nodes/SFN_HsvToRgb.cs (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/_Nodes/SFN_HsvToRgb.cs.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/_Nodes/SFN_Hue.cs (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/_Nodes/SFN_Hue.cs.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/_Nodes/SFN_If.cs (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/_Nodes/SFN_If.cs.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/_Nodes/SFN_InverseLerp.cs (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/_Nodes/SFN_InverseLerp.cs.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/_Nodes/SFN_Length.cs (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/_Nodes/SFN_Length.cs.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/_Nodes/SFN_Lerp.cs (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/_Nodes/SFN_Lerp.cs.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/_Nodes/SFN_LightAttenuation.cs (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/_Nodes/SFN_LightAttenuation.cs.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/_Nodes/SFN_LightColor.cs (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/_Nodes/SFN_LightColor.cs.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/_Nodes/SFN_LightPosition.cs (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/_Nodes/SFN_LightPosition.cs.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/_Nodes/SFN_LightVector.cs (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/_Nodes/SFN_LightVector.cs.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/_Nodes/SFN_Log.cs (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/_Nodes/SFN_Log.cs.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/_Nodes/SFN_Matrix4x4.cs (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/_Nodes/SFN_Matrix4x4.cs.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/_Nodes/SFN_Matrix4x4Property.cs (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/_Nodes/SFN_Matrix4x4Property.cs.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/_Nodes/SFN_Max.cs (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/_Nodes/SFN_Max.cs.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/_Nodes/SFN_Min.cs (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/_Nodes/SFN_Min.cs.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/_Nodes/SFN_Multiply.cs (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/_Nodes/SFN_Multiply.cs.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/_Nodes/SFN_MultiplyMatrix.cs (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/_Nodes/SFN_MultiplyMatrix.cs.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/_Nodes/SFN_Negate.cs (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/_Nodes/SFN_Negate.cs.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/_Nodes/SFN_Node_Constant.cs (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/_Nodes/SFN_Node_Constant.cs.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/_Nodes/SFN_Noise.cs (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/_Nodes/SFN_Noise.cs.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/_Nodes/SFN_NormalBlend.cs (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/_Nodes/SFN_NormalBlend.cs.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/_Nodes/SFN_NormalVector.cs (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/_Nodes/SFN_NormalVector.cs.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/_Nodes/SFN_Normalize.cs (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/_Nodes/SFN_Normalize.cs.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/_Nodes/SFN_ObjectPosition.cs (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/_Nodes/SFN_ObjectPosition.cs.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/_Nodes/SFN_ObjectScale.cs (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/_Nodes/SFN_ObjectScale.cs.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/_Nodes/SFN_OneMinus.cs (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/_Nodes/SFN_OneMinus.cs.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/_Nodes/SFN_Panner.cs (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/_Nodes/SFN_Panner.cs.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/_Nodes/SFN_Parallax.cs (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/_Nodes/SFN_Parallax.cs.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/_Nodes/SFN_Phi.cs (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/_Nodes/SFN_Phi.cs.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/_Nodes/SFN_Pi.cs (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/_Nodes/SFN_Pi.cs.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/_Nodes/SFN_PixelSize.cs (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/_Nodes/SFN_PixelSize.cs.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/_Nodes/SFN_Posterize.cs (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/_Nodes/SFN_Posterize.cs.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/_Nodes/SFN_Power.cs (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/_Nodes/SFN_Power.cs.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/_Nodes/SFN_ProjectionParameters.cs (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/_Nodes/SFN_ProjectionParameters.cs.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/_Nodes/SFN_Reciprocal.cs (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/_Nodes/SFN_Reciprocal.cs.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/_Nodes/SFN_Reflect.cs (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/_Nodes/SFN_Reflect.cs.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/_Nodes/SFN_Relay.cs (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/_Nodes/SFN_Relay.cs.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/_Nodes/SFN_RemapRange.cs (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/_Nodes/SFN_RemapRange.cs.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/_Nodes/SFN_RemapRangeAdvanced.cs (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/_Nodes/SFN_RemapRangeAdvanced.cs.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/_Nodes/SFN_RgbToHsv.cs (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/_Nodes/SFN_RgbToHsv.cs.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/_Nodes/SFN_Root2.cs (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/_Nodes/SFN_Root2.cs.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/_Nodes/SFN_Rotator.cs (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/_Nodes/SFN_Rotator.cs.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/_Nodes/SFN_Round.cs (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/_Nodes/SFN_Round.cs.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/_Nodes/SFN_SceneColor.cs (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/_Nodes/SFN_SceneColor.cs.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/_Nodes/SFN_SceneDepth.cs (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/_Nodes/SFN_SceneDepth.cs.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/_Nodes/SFN_ScreenParameters.cs (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/_Nodes/SFN_ScreenParameters.cs.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/_Nodes/SFN_ScreenPos.cs (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/_Nodes/SFN_ScreenPos.cs.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/_Nodes/SFN_Set.cs (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/_Nodes/SFN_Set.cs.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/_Nodes/SFN_Sign.cs (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/_Nodes/SFN_Sign.cs.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/_Nodes/SFN_Sin.cs (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/_Nodes/SFN_Sin.cs.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/_Nodes/SFN_Slider.cs (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/_Nodes/SFN_Slider.cs.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/_Nodes/SFN_Smoothstep.cs (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/_Nodes/SFN_Smoothstep.cs.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/_Nodes/SFN_Sqrt.cs (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/_Nodes/SFN_Sqrt.cs.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/_Nodes/SFN_StaticBranch.cs (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/_Nodes/SFN_StaticBranch.cs.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/_Nodes/SFN_Step.cs (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/_Nodes/SFN_Step.cs.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/_Nodes/SFN_Subtract.cs (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/_Nodes/SFN_Subtract.cs.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/_Nodes/SFN_SwitchProperty.cs (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/_Nodes/SFN_SwitchProperty.cs.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/_Nodes/SFN_Tan.cs (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/_Nodes/SFN_Tan.cs.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/_Nodes/SFN_Tangent.cs (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/_Nodes/SFN_Tangent.cs.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/_Nodes/SFN_Tau.cs (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/_Nodes/SFN_Tau.cs.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/_Nodes/SFN_Tex2d.cs (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/_Nodes/SFN_Tex2d.cs.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/_Nodes/SFN_Tex2dAsset.cs (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/_Nodes/SFN_Tex2dAsset.cs.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/_Nodes/SFN_TexCoord.cs (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/_Nodes/SFN_TexCoord.cs.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/_Nodes/SFN_Time.cs (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/_Nodes/SFN_Time.cs.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/_Nodes/SFN_ToggleProperty.cs (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/_Nodes/SFN_ToggleProperty.cs.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/_Nodes/SFN_Transform.cs (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/_Nodes/SFN_Transform.cs.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/_Nodes/SFN_Transpose.cs (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/_Nodes/SFN_Transpose.cs.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/_Nodes/SFN_Trunc.cs (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/_Nodes/SFN_Trunc.cs.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/_Nodes/SFN_UVTile.cs (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/_Nodes/SFN_UVTile.cs.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/_Nodes/SFN_ValueProperty.cs (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/_Nodes/SFN_ValueProperty.cs.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/_Nodes/SFN_Vector1.cs (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/_Nodes/SFN_Vector1.cs.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/_Nodes/SFN_Vector2.cs (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/_Nodes/SFN_Vector2.cs.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/_Nodes/SFN_Vector3.cs (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/_Nodes/SFN_Vector3.cs.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/_Nodes/SFN_Vector4.cs (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/_Nodes/SFN_Vector4.cs.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/_Nodes/SFN_Vector4Property.cs (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/_Nodes/SFN_Vector4Property.cs.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/_Nodes/SFN_VectorProjection.cs (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/_Nodes/SFN_VectorProjection.cs.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/_Nodes/SFN_VectorRejection.cs (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/_Nodes/SFN_VectorRejection.cs.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/_Nodes/SFN_VertexColor.cs (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/_Nodes/SFN_VertexColor.cs.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/_Nodes/SFN_ViewPosition.cs (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/_Nodes/SFN_ViewPosition.cs.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/_Nodes/SFN_ViewReflectionVector.cs (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/_Nodes/SFN_ViewReflectionVector.cs.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/_Nodes/SFN_ViewVector.cs (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/_Nodes/SFN_ViewVector.cs.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/_Nodes/SF_Node.cs (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/_Nodes/SF_Node.cs.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/_Nodes/SF_Node_Arithmetic.cs (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/_Nodes/SF_Node_Arithmetic.cs.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/_Nodes/SF_Node_Resizeable.cs (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/_Nodes/SF_Node_Resizeable.cs.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/_ShaderProperties.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/_ShaderProperties/SFP_Branch.cs (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/_ShaderProperties/SFP_Branch.cs.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/_ShaderProperties/SFP_Color.cs (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/_ShaderProperties/SFP_Color.cs.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/_ShaderProperties/SFP_Cubemap.cs (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/_ShaderProperties/SFP_Cubemap.cs.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/_ShaderProperties/SFP_Matrix4x4Property.cs (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/_ShaderProperties/SFP_Matrix4x4Property.cs.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/_ShaderProperties/SFP_Slider.cs (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/_ShaderProperties/SFP_Slider.cs.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/_ShaderProperties/SFP_SwitchProperty.cs (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/_ShaderProperties/SFP_SwitchProperty.cs.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/_ShaderProperties/SFP_Tex2d.cs (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/_ShaderProperties/SFP_Tex2d.cs.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/_ShaderProperties/SFP_ToggleProperty.cs (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/_ShaderProperties/SFP_ToggleProperty.cs.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/_ShaderProperties/SFP_ValueProperty.cs (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/_ShaderProperties/SFP_ValueProperty.cs.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/_ShaderProperties/SFP_Vector4Property.cs (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/_ShaderProperties/SFP_Vector4Property.cs.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/_ShaderProperties/SF_ShaderProperty.cs (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/_ShaderProperties/SF_ShaderProperty.cs.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/_Utility.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/_Utility/GUILines.cs (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/_Utility/GUILines.cs.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/_Utility/SF_Blit.cs (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/_Utility/SF_Blit.cs.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/_Utility/SF_ColorPicker.cs (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/_Utility/SF_ColorPicker.cs.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/_Utility/SF_Debug.cs (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/_Utility/SF_Debug.cs.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/_Utility/SF_DraggableSeparator.cs (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/_Utility/SF_DraggableSeparator.cs.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/_Utility/SF_Extensions.cs (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/_Utility/SF_Extensions.cs.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/_Utility/SF_GUI.cs (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/_Utility/SF_GUI.cs.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/_Utility/SF_Link.cs (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/_Utility/SF_Link.cs.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/_Utility/SF_MinMax.cs (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/_Utility/SF_MinMax.cs.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/_Utility/SF_Resources.cs (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/_Utility/SF_Resources.cs.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/_Utility/SF_Styles.cs (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/_Utility/SF_Styles.cs.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/_Utility/SF_Tools.cs (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/_Utility/SF_Tools.cs.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/_Utility/SF_Web.cs (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/_Utility/SF_Web.cs.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/_Utility/SF_ZoomArea.cs (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/_Utility/SF_ZoomArea.cs.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/_Utility/SerializableDictionary.cs (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/Code/_Utility/SerializableDictionary.cs.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/InternalResources.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/InternalResources/GPU Rendering.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/Common.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/Common/ExtractChannel.shader (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/Common/ExtractChannel.shader.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/Common/FillColor.shader (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/Common/FillColor.shader.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/Common/ReadPackedData.shader (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/Common/ReadPackedData.shader.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_Abs.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_Abs/SFN_Abs.shader (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_Abs/SFN_Abs.shader.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_Add.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_Add/SFN_Add_2.shader (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_Add/SFN_Add_2.shader.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_Add/SFN_Add_3.shader (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_Add/SFN_Add_3.shader.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_Add/SFN_Add_4.shader (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_Add/SFN_Add_4.shader.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_Add/SFN_Add_5.shader (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_Add/SFN_Add_5.shader.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_AmbientLight.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_AmbientLight/SFN_AmbientLight.shader (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_AmbientLight/SFN_AmbientLight.shader.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_Append.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_Append/SFN_Append.shader (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_Append/SFN_Append.shader.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_ArcCos.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_ArcCos/SFN_ArcCos.shader (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_ArcCos/SFN_ArcCos.shader.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_ArcSin.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_ArcSin/SFN_ArcSin.shader (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_ArcSin/SFN_ArcSin.shader.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_ArcTan.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_ArcTan/SFN_ArcTan.shader (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_ArcTan/SFN_ArcTan.shader.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_ArcTan2.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_ArcTan2/SFN_ArcTan2_NOTO.shader (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_ArcTan2/SFN_ArcTan2_NOTO.shader.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_ArcTan2/SFN_ArcTan2_NPTP.shader (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_ArcTan2/SFN_ArcTan2_NPTP.shader.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_ArcTan2/SFN_ArcTan2_ZTO.shader (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_ArcTan2/SFN_ArcTan2_ZTO.shader.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_ArcTan2/SFN_ArcTan2_ZTOW.shader (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_ArcTan2/SFN_ArcTan2_ZTOW.shader.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_Bitangent.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_Bitangent/SFN_Bitangent.shader (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_Bitangent/SFN_Bitangent.shader.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_Blend.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_Blend/SFN_Blend_ColorBurn.shader (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_Blend/SFN_Blend_ColorBurn.shader.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_Blend/SFN_Blend_ColorDodge.shader (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_Blend/SFN_Blend_ColorDodge.shader.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_Blend/SFN_Blend_Darken.shader (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_Blend/SFN_Blend_Darken.shader.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_Blend/SFN_Blend_Difference.shader (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_Blend/SFN_Blend_Difference.shader.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_Blend/SFN_Blend_Divide.shader (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_Blend/SFN_Blend_Divide.shader.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_Blend/SFN_Blend_Exclusion.shader (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_Blend/SFN_Blend_Exclusion.shader.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_Blend/SFN_Blend_HardLight.shader (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_Blend/SFN_Blend_HardLight.shader.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_Blend/SFN_Blend_HardMix.shader (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_Blend/SFN_Blend_HardMix.shader.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_Blend/SFN_Blend_Lighten.shader (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_Blend/SFN_Blend_Lighten.shader.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_Blend/SFN_Blend_LinearBurn.shader (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_Blend/SFN_Blend_LinearBurn.shader.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_Blend/SFN_Blend_LinearDodge.shader (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_Blend/SFN_Blend_LinearDodge.shader.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_Blend/SFN_Blend_LinearLight.shader (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_Blend/SFN_Blend_LinearLight.shader.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_Blend/SFN_Blend_Multiply.shader (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_Blend/SFN_Blend_Multiply.shader.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_Blend/SFN_Blend_Overlay.shader (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_Blend/SFN_Blend_Overlay.shader.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_Blend/SFN_Blend_PinLight.shader (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_Blend/SFN_Blend_PinLight.shader.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_Blend/SFN_Blend_Screen.shader (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_Blend/SFN_Blend_Screen.shader.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_Blend/SFN_Blend_Subtract.shader (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_Blend/SFN_Blend_Subtract.shader.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_Blend/SFN_Blend_VividLight.shader (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_Blend/SFN_Blend_VividLight.shader.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_Ceil.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_Ceil/SFN_Ceil.shader (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_Ceil/SFN_Ceil.shader.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_ChannelBlend.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_ChannelBlend/SFN_ChannelBlend.shader (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_ChannelBlend/SFN_ChannelBlend.shader.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_Clamp.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_Clamp/SFN_Clamp.shader (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_Clamp/SFN_Clamp.shader.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_Clamp01.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_Clamp01/SFN_Clamp01.shader (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_Clamp01/SFN_Clamp01.shader.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_Code.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_Code/SFN_Code.shader (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_Code/SFN_Code.shader.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_ComponentMask.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_ComponentMask/SFN_ComponentMask_CC1.shader (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_ComponentMask/SFN_ComponentMask_CC1.shader.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_ComponentMask/SFN_ComponentMask_CC2.shader (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_ComponentMask/SFN_ComponentMask_CC2.shader.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_ComponentMask/SFN_ComponentMask_CC3.shader (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_ComponentMask/SFN_ComponentMask_CC3.shader.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_ComponentMask/SFN_ComponentMask_CC4.shader (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_ComponentMask/SFN_ComponentMask_CC4.shader.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_ConstantClamp.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_ConstantClamp/SFN_ConstantClamp.shader (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_ConstantClamp/SFN_ConstantClamp.shader.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_ConstantLerp.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_ConstantLerp/SFN_ConstantLerp.shader (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_ConstantLerp/SFN_ConstantLerp.shader.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_Cos.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_Cos/SFN_Cos.shader (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_Cos/SFN_Cos.shader.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_Cross.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_Cross/SFN_Cross.shader (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_Cross/SFN_Cross.shader.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_Cubemap.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_Cubemap/SFN_Cubemap.shader (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_Cubemap/SFN_Cubemap.shader.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_DDX.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_DDX/SFN_DDX.shader (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_DDX/SFN_DDX.shader.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_DDXY.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_DDXY/SFN_DDXY.shader (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_DDXY/SFN_DDXY.shader.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_DDY.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_DDY/SFN_DDY.shader (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_DDY/SFN_DDY.shader.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_Depth.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_Depth/SFN_Depth.shader (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_Depth/SFN_Depth.shader.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_DepthBlend.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_DepthBlend/SFN_DepthBlend.shader (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_DepthBlend/SFN_DepthBlend.shader.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_Desaturate.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_Desaturate/SFN_Desaturate_DES.shader (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_Desaturate/SFN_Desaturate_DES.shader.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_Desaturate/SFN_Desaturate_REQONLY.shader (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_Desaturate/SFN_Desaturate_REQONLY.shader.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_Distance.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_Distance/SFN_Distance.shader (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_Distance/SFN_Distance.shader.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_Divide.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_Divide/SFN_Divide.shader (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_Divide/SFN_Divide.shader.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_Dot.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_Dot/SFN_Dot_ABS.shader (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_Dot/SFN_Dot_ABS.shader.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_Dot/SFN_Dot_NEG.shader (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_Dot/SFN_Dot_NEG.shader.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_Dot/SFN_Dot_NRM.shader (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_Dot/SFN_Dot_NRM.shader.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_Dot/SFN_Dot_POS.shader (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_Dot/SFN_Dot_POS.shader.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_Dot/SFN_Dot_STD.shader (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_Dot/SFN_Dot_STD.shader.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_Exp.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_Exp/SFN_Exp.shader (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_Exp/SFN_Exp.shader.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_FaceSign.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_FaceSign/SFN_FaceSign.shader (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_FaceSign/SFN_FaceSign.shader.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_Floor.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_Floor/SFN_Floor.shader (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_Floor/SFN_Floor.shader.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_Fmod.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_Fmod/SFN_Fmod.shader (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_Fmod/SFN_Fmod.shader.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_FogColor.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_FogColor/SFN_FogColor.shader (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_FogColor/SFN_FogColor.shader.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_Frac.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_Frac/SFN_Frac.shader (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_Frac/SFN_Frac.shader.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_FragmentPosition.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_FragmentPosition/SFN_FragmentPosition.shader (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_FragmentPosition/SFN_FragmentPosition.shader.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_Fresnel.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_Fresnel/SFN_Fresnel_EXP.shader (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_Fresnel/SFN_Fresnel_EXP.shader.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_Fresnel/SFN_Fresnel_NRM.shader (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_Fresnel/SFN_Fresnel_NRM.shader.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_Fresnel/SFN_Fresnel_NRM_EXP.shader (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_Fresnel/SFN_Fresnel_NRM_EXP.shader.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_Fresnel/SFN_Fresnel_REQONLY.shader (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_Fresnel/SFN_Fresnel_REQONLY.shader.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_Get.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_Get/SFN_Get.shader (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_Get/SFN_Get.shader.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_HalfVector.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_HalfVector/SFN_HalfVector.shader (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_HalfVector/SFN_HalfVector.shader.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_HsvToRgb.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_HsvToRgb/SFN_HsvToRgb.shader (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_HsvToRgb/SFN_HsvToRgb.shader.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_Hue.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_Hue/SFN_Hue.shader (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_Hue/SFN_Hue.shader.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_If.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_If/SFN_If.shader (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_If/SFN_If.shader.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_InverseLerp.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_InverseLerp/SFN_InverseLerp.shader (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_InverseLerp/SFN_InverseLerp.shader.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_Length.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_Length/SFN_Length.shader (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_Length/SFN_Length.shader.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_Lerp.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_Lerp/SFN_Lerp.shader (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_Lerp/SFN_Lerp.shader.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_LightAttenuation.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_LightAttenuation/SFN_LightAttenuation.shader (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_LightAttenuation/SFN_LightAttenuation.shader.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_LightColor.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_LightColor/SFN_LightColor.shader (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_LightColor/SFN_LightColor.shader.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_LightPosition.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_LightPosition/SFN_LightPosition.shader (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_LightPosition/SFN_LightPosition.shader.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_LightVector.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_LightVector/SFN_LightVector.shader (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_LightVector/SFN_LightVector.shader.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_Log.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_Log/SFN_Log_LOG.shader (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_Log/SFN_Log_LOG.shader.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_Log/SFN_Log_LOG10.shader (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_Log/SFN_Log_LOG10.shader.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_Log/SFN_Log_LOG2.shader (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_Log/SFN_Log_LOG2.shader.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_Matrix4x4.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_Matrix4x4/SFN_Matrix4x4.shader (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_Matrix4x4/SFN_Matrix4x4.shader.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_Matrix4x4Property.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_Matrix4x4Property/SFN_Matrix4x4Property.shader (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_Matrix4x4Property/SFN_Matrix4x4Property.shader.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_Max.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_Max/SFN_Max_2.shader (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_Max/SFN_Max_2.shader.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_Max/SFN_Max_3.shader (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_Max/SFN_Max_3.shader.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_Max/SFN_Max_4.shader (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_Max/SFN_Max_4.shader.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_Max/SFN_Max_5.shader (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_Max/SFN_Max_5.shader.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_Min.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_Min/SFN_Min_2.shader (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_Min/SFN_Min_2.shader.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_Min/SFN_Min_3.shader (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_Min/SFN_Min_3.shader.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_Min/SFN_Min_4.shader (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_Min/SFN_Min_4.shader.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_Min/SFN_Min_5.shader (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_Min/SFN_Min_5.shader.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_Multiply.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_Multiply/SFN_Multiply_2.shader (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_Multiply/SFN_Multiply_2.shader.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_Multiply/SFN_Multiply_3.shader (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_Multiply/SFN_Multiply_3.shader.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_Multiply/SFN_Multiply_4.shader (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_Multiply/SFN_Multiply_4.shader.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_Multiply/SFN_Multiply_5.shader (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_Multiply/SFN_Multiply_5.shader.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_MultiplyMatrix.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_MultiplyMatrix/SFN_MultiplyMatrix.shader (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_MultiplyMatrix/SFN_MultiplyMatrix.shader.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_Negate.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_Negate/SFN_Negate.shader (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_Negate/SFN_Negate.shader.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_Noise.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_Noise/SFN_Noise.shader (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_Noise/SFN_Noise.shader.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_NormalBlend.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_NormalBlend/SFN_NormalBlend.shader (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_NormalBlend/SFN_NormalBlend.shader.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_NormalVector.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_NormalVector/SFN_NormalVector.shader (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_NormalVector/SFN_NormalVector.shader.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_Normalize.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_Normalize/SFN_Normalize.shader (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_Normalize/SFN_Normalize.shader.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_ObjectPosition.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_ObjectPosition/SFN_ObjectPosition.shader (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_ObjectPosition/SFN_ObjectPosition.shader.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_ObjectScale.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_ObjectScale/SFN_ObjectScale_Default.shader (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_ObjectScale/SFN_ObjectScale_Default.shader.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_ObjectScale/SFN_ObjectScale_Reciprocal.shader (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_ObjectScale/SFN_ObjectScale_Reciprocal.shader.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_OneMinus.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_OneMinus/SFN_OneMinus.shader (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_OneMinus/SFN_OneMinus.shader.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_Panner.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_Panner/SFN_Panner_DIST.shader (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_Panner/SFN_Panner_DIST.shader.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_Panner/SFN_Panner_REQONLY.shader (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_Panner/SFN_Panner_REQONLY.shader.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_Parallax.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_Parallax/SFN_Parallax_DEP.shader (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_Parallax/SFN_Parallax_DEP.shader.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_Parallax/SFN_Parallax_DEP_REF.shader (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_Parallax/SFN_Parallax_DEP_REF.shader.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_Parallax/SFN_Parallax_REF.shader (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_Parallax/SFN_Parallax_REF.shader.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_Parallax/SFN_Parallax_REQONLY.shader (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_Parallax/SFN_Parallax_REQONLY.shader.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_Parallax/SFN_Parallax_UV.shader (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_Parallax/SFN_Parallax_UV.shader.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_Parallax/SFN_Parallax_UV_DEP.shader (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_Parallax/SFN_Parallax_UV_DEP.shader.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_Parallax/SFN_Parallax_UV_DEP_REF.shader (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_Parallax/SFN_Parallax_UV_DEP_REF.shader.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_Parallax/SFN_Parallax_UV_REF.shader (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_Parallax/SFN_Parallax_UV_REF.shader.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_PixelSize.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_PixelSize/SFN_PixelSize.shader (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_PixelSize/SFN_PixelSize.shader.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_Posterize.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_Posterize/SFN_Posterize.shader (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_Posterize/SFN_Posterize.shader.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_Power.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_Power/SFN_Power.shader (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_Power/SFN_Power.shader.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_ProjectionParameters.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_ProjectionParameters/SFN_ProjectionParameters.shader (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_ProjectionParameters/SFN_ProjectionParameters.shader.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_Reciprocal.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_Reciprocal/SFN_Reciprocal.shader (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_Reciprocal/SFN_Reciprocal.shader.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_Reflect.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_Reflect/SFN_Reflect.shader (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_Reflect/SFN_Reflect.shader.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_Relay.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_Relay/SFN_Relay.shader (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_Relay/SFN_Relay.shader.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_RemapRange.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_RemapRange/SFN_RemapRange.shader (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_RemapRange/SFN_RemapRange.shader.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_RemapRangeAdvanced.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_RemapRangeAdvanced/SFN_RemapRangeAdvanced.shader (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_RemapRangeAdvanced/SFN_RemapRangeAdvanced.shader.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_RgbToHsv.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_RgbToHsv/SFN_RgbToHsv.shader (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_RgbToHsv/SFN_RgbToHsv.shader.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_Rotator.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_Rotator/SFN_Rotator_ANG.shader (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_Rotator/SFN_Rotator_ANG.shader.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_Rotator/SFN_Rotator_PIV.shader (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_Rotator/SFN_Rotator_PIV.shader.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_Rotator/SFN_Rotator_PIV_ANG.shader (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_Rotator/SFN_Rotator_PIV_ANG.shader.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_Rotator/SFN_Rotator_PIV_SPD.shader (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_Rotator/SFN_Rotator_PIV_SPD.shader.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_Rotator/SFN_Rotator_PIV_SPD_ANG.shader (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_Rotator/SFN_Rotator_PIV_SPD_ANG.shader.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_Rotator/SFN_Rotator_REQONLY.shader (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_Rotator/SFN_Rotator_REQONLY.shader.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_Rotator/SFN_Rotator_SPD.shader (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_Rotator/SFN_Rotator_SPD.shader.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_Rotator/SFN_Rotator_SPD_ANG.shader (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_Rotator/SFN_Rotator_SPD_ANG.shader.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_Round.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_Round/SFN_Round.shader (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_Round/SFN_Round.shader.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_SceneColor.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_SceneColor/SFN_SceneColor.shader (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_SceneColor/SFN_SceneColor.shader.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_SceneDepth.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_SceneDepth/SFN_SceneDepth.shader (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_SceneDepth/SFN_SceneDepth.shader.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_ScreenParameters.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_ScreenParameters/SFN_ScreenParameters.shader (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_ScreenParameters/SFN_ScreenParameters.shader.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_ScreenPos.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_ScreenPos/SFN_ScreenPos.shader (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_ScreenPos/SFN_ScreenPos.shader.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_Set.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_Set/SFN_Set.shader (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_Set/SFN_Set.shader.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_Sign.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_Sign/SFN_Sign.shader (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_Sign/SFN_Sign.shader.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_Sin.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_Sin/SFN_Sin.shader (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_Sin/SFN_Sin.shader.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_Smoothstep.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_Smoothstep/SFN_Smoothstep.shader (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_Smoothstep/SFN_Smoothstep.shader.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_Sqrt.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_Sqrt/SFN_Sqrt.shader (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_Sqrt/SFN_Sqrt.shader.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_Step.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_Step/SFN_Step.shader (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_Step/SFN_Step.shader.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_Subtract.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_Subtract/SFN_Subtract.shader (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_Subtract/SFN_Subtract.shader.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_SwitchProperty.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_SwitchProperty/SFN_SwitchProperty.shader (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_SwitchProperty/SFN_SwitchProperty.shader.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_Tan.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_Tan/SFN_Tan.shader (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_Tan/SFN_Tan.shader.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_Tangent.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_Tangent/SFN_Tangent.shader (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_Tangent/SFN_Tangent.shader.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_Tex2d.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_Tex2d/SFN_Tex2d_MIP.shader (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_Tex2d/SFN_Tex2d_MIP.shader.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_Tex2d/SFN_Tex2d_NoInputs.shader (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_Tex2d/SFN_Tex2d_NoInputs.shader.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_Tex2d/SFN_Tex2d_UV.shader (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_Tex2d/SFN_Tex2d_UV.shader.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_Tex2d/SFN_Tex2d_UV_MIP.shader (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_Tex2d/SFN_Tex2d_UV_MIP.shader.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_Tex2dAsset.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_Tex2dAsset/SFN_Tex2dAsset.shader (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_Tex2dAsset/SFN_Tex2dAsset.shader.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_TexCoord.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_TexCoord/SFN_TexCoord.shader (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_TexCoord/SFN_TexCoord.shader.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_Time.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_Time/SFN_Time.shader (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_Time/SFN_Time.shader.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_Transform.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_Transform/SFN_Transform.shader (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_Transform/SFN_Transform.shader.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_Transpose.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_Transpose/SFN_Transpose.shader (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_Transpose/SFN_Transpose.shader.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_Trunc.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_Trunc/SFN_Trunc.shader (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_Trunc/SFN_Trunc.shader.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_UVTile.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_UVTile/SFN_UVTile.shader (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_UVTile/SFN_UVTile.shader.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_VectorProjection.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_VectorProjection/SFN_VectorProjection.shader (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_VectorProjection/SFN_VectorProjection.shader.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_VectorRejection.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_VectorRejection/SFN_VectorRejection.shader (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_VectorRejection/SFN_VectorRejection.shader.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_VertexColor.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_VertexColor/SFN_VertexColor.shader (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_VertexColor/SFN_VertexColor.shader.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_ViewPosition.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_ViewPosition/SFN_ViewPosition.shader (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_ViewPosition/SFN_ViewPosition.shader.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_ViewReflectionVector.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_ViewReflectionVector/SFN_ViewReflectionVector.shader (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_ViewReflectionVector/SFN_ViewReflectionVector.shader.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_ViewVector.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_ViewVector/SFN_ViewVector.shader (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering => Editor/InternalResources/GPURendering}/SFN_ViewVector/SFN_ViewVector.shader.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/InternalResources/Inspectors.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/InternalResources/Inspectors/ShaderForgeInspector.cs (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/InternalResources/Inspectors/ShaderForgeInspector.cs.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/InternalResources/Inspectors/ShaderForgeMaterialInspector.cs (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/InternalResources/Inspectors/ShaderForgeMaterialInspector.cs.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/InternalResources/Interface.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/InternalResources/Interface/Fonts.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/InternalResources/Interface/Fonts/VeraMono-Bold-Italic.ttf (100%) mode change 100755 => 100644 rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/InternalResources/Interface/Fonts/VeraMono-Bold-Italic.ttf.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/InternalResources/Interface/Fonts/VeraMono-Bold.ttf (100%) mode change 100755 => 100644 rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/InternalResources/Interface/Fonts/VeraMono-Bold.ttf.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/InternalResources/Interface/Fonts/VeraMono-Italic.ttf (100%) mode change 100755 => 100644 rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/InternalResources/Interface/Fonts/VeraMono-Italic.ttf.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/InternalResources/Interface/Fonts/VeraMono.ttf (100%) mode change 100755 => 100644 rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/InternalResources/Interface/Fonts/VeraMono.ttf.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/InternalResources/Interface/Nodes.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/InternalResources/Interface/Nodes/Data.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/InternalResources/Interface/Nodes/Data/node_3d_data_mask.png (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/InternalResources/Interface/Nodes/Data/node_3d_data_mask.png.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/InternalResources/Interface/Nodes/Data/sfn_bitangent.png (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/InternalResources/Interface/Nodes/Data/sfn_bitangent.png.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/InternalResources/Interface/Nodes/Data/sfn_depth.png (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/InternalResources/Interface/Nodes/Data/sfn_depth.png.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/InternalResources/Interface/Nodes/Data/sfn_fragmentposition.png (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/InternalResources/Interface/Nodes/Data/sfn_fragmentposition.png.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/InternalResources/Interface/Nodes/Data/sfn_fresnel.png (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/InternalResources/Interface/Nodes/Data/sfn_fresnel.png.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/InternalResources/Interface/Nodes/Data/sfn_halfvector.png (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/InternalResources/Interface/Nodes/Data/sfn_halfvector.png.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/InternalResources/Interface/Nodes/Data/sfn_lightattenuation.png (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/InternalResources/Interface/Nodes/Data/sfn_lightattenuation.png.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/InternalResources/Interface/Nodes/Data/sfn_lightcolor.png (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/InternalResources/Interface/Nodes/Data/sfn_lightcolor.png.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/InternalResources/Interface/Nodes/Data/sfn_lightvector.png (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/InternalResources/Interface/Nodes/Data/sfn_lightvector.png.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/InternalResources/Interface/Nodes/Data/sfn_normalvector.png (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/InternalResources/Interface/Nodes/Data/sfn_normalvector.png.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/InternalResources/Interface/Nodes/Data/sfn_normalvector_2.png (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/InternalResources/Interface/Nodes/Data/sfn_normalvector_2.png.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/InternalResources/Interface/Nodes/Data/sfn_tangent.png (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/InternalResources/Interface/Nodes/Data/sfn_tangent.png.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/InternalResources/Interface/Nodes/Data/sfn_viewreflectionvector.png (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/InternalResources/Interface/Nodes/Data/sfn_viewreflectionvector.png.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/InternalResources/Interface/Nodes/Data/sfn_viewvector.png (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/InternalResources/Interface/Nodes/Data/sfn_viewvector.png.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/InternalResources/Interface/Nodes/sfn_ambientlight.png (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/InternalResources/Interface/Nodes/sfn_ambientlight.png.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/InternalResources/Interface/Nodes/sfn_bitangent.png (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/InternalResources/Interface/Nodes/sfn_bitangent.png.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/InternalResources/Interface/Nodes/sfn_depth.png (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/InternalResources/Interface/Nodes/sfn_depth.png.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/InternalResources/Interface/Nodes/sfn_e.png (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/InternalResources/Interface/Nodes/sfn_e.png.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/InternalResources/Interface/Nodes/sfn_facesign.png (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/InternalResources/Interface/Nodes/sfn_facesign.png.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/InternalResources/Interface/Nodes/sfn_facesign_2.png (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/InternalResources/Interface/Nodes/sfn_facesign_2.png.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/InternalResources/Interface/Nodes/sfn_final.png (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/InternalResources/Interface/Nodes/sfn_final.png.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/InternalResources/Interface/Nodes/sfn_fogcolor.png (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/InternalResources/Interface/Nodes/sfn_fogcolor.png.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/InternalResources/Interface/Nodes/sfn_fogcolor_2.png (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/InternalResources/Interface/Nodes/sfn_fogcolor_2.png.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/InternalResources/Interface/Nodes/sfn_fragmentposition.png (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/InternalResources/Interface/Nodes/sfn_fragmentposition.png.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/InternalResources/Interface/Nodes/sfn_halfvector.png (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/InternalResources/Interface/Nodes/sfn_halfvector.png.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/InternalResources/Interface/Nodes/sfn_lightattenuation.png (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/InternalResources/Interface/Nodes/sfn_lightattenuation.png.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/InternalResources/Interface/Nodes/sfn_lightcolor.png (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/InternalResources/Interface/Nodes/sfn_lightcolor.png.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/InternalResources/Interface/Nodes/sfn_lightposition.png (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/InternalResources/Interface/Nodes/sfn_lightposition.png.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/InternalResources/Interface/Nodes/sfn_lightvector.png (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/InternalResources/Interface/Nodes/sfn_lightvector.png.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/InternalResources/Interface/Nodes/sfn_normalvector.png (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/InternalResources/Interface/Nodes/sfn_normalvector.png.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/InternalResources/Interface/Nodes/sfn_normalvector_2.png (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/InternalResources/Interface/Nodes/sfn_normalvector_2.png.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/InternalResources/Interface/Nodes/sfn_objectposition.png (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/InternalResources/Interface/Nodes/sfn_objectposition.png.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/InternalResources/Interface/Nodes/sfn_objectscale.png (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/InternalResources/Interface/Nodes/sfn_objectscale.png.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/InternalResources/Interface/Nodes/sfn_phi.png (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/InternalResources/Interface/Nodes/sfn_phi.png.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/InternalResources/Interface/Nodes/sfn_pi.png (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/InternalResources/Interface/Nodes/sfn_pi.png.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/InternalResources/Interface/Nodes/sfn_projectionparameters.png (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/InternalResources/Interface/Nodes/sfn_projectionparameters.png.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/InternalResources/Interface/Nodes/sfn_root2.png (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/InternalResources/Interface/Nodes/sfn_root2.png.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/InternalResources/Interface/Nodes/sfn_screenparameters.png (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/InternalResources/Interface/Nodes/sfn_screenparameters.png.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/InternalResources/Interface/Nodes/sfn_screenpos.png (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/InternalResources/Interface/Nodes/sfn_screenpos.png.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/InternalResources/Interface/Nodes/sfn_screenpos_2.png (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/InternalResources/Interface/Nodes/sfn_screenpos_2.png.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/InternalResources/Interface/Nodes/sfn_screenpos_3.png (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/InternalResources/Interface/Nodes/sfn_screenpos_3.png.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/InternalResources/Interface/Nodes/sfn_tangent.png (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/InternalResources/Interface/Nodes/sfn_tangent.png.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/InternalResources/Interface/Nodes/sfn_tau.png (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/InternalResources/Interface/Nodes/sfn_tau.png.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/InternalResources/Interface/Nodes/sfn_time.png (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/InternalResources/Interface/Nodes/sfn_time.png.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/InternalResources/Interface/Nodes/sfn_vertexcolor.png (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/InternalResources/Interface/Nodes/sfn_vertexcolor.png.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/InternalResources/Interface/Nodes/sfn_viewposition.png (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/InternalResources/Interface/Nodes/sfn_viewposition.png.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/InternalResources/Interface/Nodes/sfn_viewreflectionvector.png (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/InternalResources/Interface/Nodes/sfn_viewreflectionvector.png.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/InternalResources/Interface/Nodes/sfn_viewvector.png (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/InternalResources/Interface/Nodes/sfn_viewvector.png.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/InternalResources/Interface/chk.png (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/InternalResources/Interface/chk.png.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/InternalResources/Interface/chk_light.png (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/InternalResources/Interface/chk_light.png.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/InternalResources/Interface/handle_drag.tga (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/InternalResources/Interface/handle_drag.tga.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/InternalResources/Interface/icon.png (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/InternalResources/Interface/icon.png.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/InternalResources/Interface/icon_light.png (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/InternalResources/Interface/icon_light.png.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/InternalResources/Interface/icon_normal.tga (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/InternalResources/Interface/icon_normal.tga.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/InternalResources/Interface/inst_frag.png (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/InternalResources/Interface/inst_frag.png.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/InternalResources/Interface/inst_frag_light.png (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/InternalResources/Interface/inst_frag_light.png.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/InternalResources/Interface/inst_frag_tex.png (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/InternalResources/Interface/inst_frag_tex.png.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/InternalResources/Interface/inst_frag_tex_light.png (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/InternalResources/Interface/inst_frag_tex_light.png.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/InternalResources/Interface/inst_vert.png (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/InternalResources/Interface/inst_vert.png.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/InternalResources/Interface/inst_vert_light.png (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/InternalResources/Interface/inst_vert_light.png.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/InternalResources/Interface/inst_vert_tex.png (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/InternalResources/Interface/inst_vert_tex.png.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/InternalResources/Interface/inst_vert_tex_light.png (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/InternalResources/Interface/inst_vert_tex_light.png.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/InternalResources/Interface/logo.png (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/InternalResources/Interface/logo.png.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/InternalResources/Interface/logo_light.png (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/InternalResources/Interface/logo_light.png.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/InternalResources/Interface/preset_custom.png (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/InternalResources/Interface/preset_custom.png.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/InternalResources/Interface/preset_highlight.png (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/InternalResources/Interface/preset_highlight.png.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/InternalResources/Interface/preset_litbasic.png (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/InternalResources/Interface/preset_litbasic.png.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/InternalResources/Interface/preset_litpbr.png (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/InternalResources/Interface/preset_litpbr.png.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/InternalResources/Interface/preset_particleadditive.png (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/InternalResources/Interface/preset_particleadditive.png.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/InternalResources/Interface/preset_particleadditive_light.png (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/InternalResources/Interface/preset_particleadditive_light.png.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/InternalResources/Interface/preset_particlealphablended.png (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/InternalResources/Interface/preset_particlealphablended.png.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/InternalResources/Interface/preset_particlealphablended_light.png (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/InternalResources/Interface/preset_particlealphablended_light.png.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/InternalResources/Interface/preset_particlemultiplicative.png (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/InternalResources/Interface/preset_particlemultiplicative.png.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/InternalResources/Interface/preset_particlemultiplicative_light.png (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/InternalResources/Interface/preset_particlemultiplicative_light.png.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/InternalResources/Interface/preset_posteffect.png (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/InternalResources/Interface/preset_posteffect.png.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/InternalResources/Interface/preset_sky.png (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/InternalResources/Interface/preset_sky.png.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/InternalResources/Interface/preset_sprite.png (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/InternalResources/Interface/preset_sprite.png.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/InternalResources/Interface/preset_unlit.png (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/InternalResources/Interface/preset_unlit.png.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/InternalResources/Interface/screenshot_icon.png (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/InternalResources/Interface/screenshot_icon.png.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/InternalResources/Interface/screenshot_icon_light.png (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/InternalResources/Interface/screenshot_icon_light.png.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/InternalResources/Meshes.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/InternalResources/Meshes/sf_meshes.fbx (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/InternalResources/Meshes/sf_meshes.fbx.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor => Editor}/InternalResources/Shader Presets.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/Shader Presets => Editor/InternalResources/ShaderPresets}/PresetBasic.shader (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/Shader Presets => Editor/InternalResources/ShaderPresets}/PresetBasic.shader.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/Shader Presets => Editor/InternalResources/ShaderPresets}/PresetCustomLighting.shader (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/Shader Presets => Editor/InternalResources/ShaderPresets}/PresetCustomLighting.shader.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/Shader Presets => Editor/InternalResources/ShaderPresets}/PresetPBR.shader (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/Shader Presets => Editor/InternalResources/ShaderPresets}/PresetPBR.shader.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/Shader Presets => Editor/InternalResources/ShaderPresets}/PresetParticleAdditive.shader (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/Shader Presets => Editor/InternalResources/ShaderPresets}/PresetParticleAdditive.shader.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/Shader Presets => Editor/InternalResources/ShaderPresets}/PresetParticleAlphaBlended.shader (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/Shader Presets => Editor/InternalResources/ShaderPresets}/PresetParticleAlphaBlended.shader.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/Shader Presets => Editor/InternalResources/ShaderPresets}/PresetParticleMultiplicative.shader (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/Shader Presets => Editor/InternalResources/ShaderPresets}/PresetParticleMultiplicative.shader.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/Shader Presets => Editor/InternalResources/ShaderPresets}/PresetPostEffect.shader (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/Shader Presets => Editor/InternalResources/ShaderPresets}/PresetPostEffect.shader.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/Shader Presets => Editor/InternalResources/ShaderPresets}/PresetSky.shader (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/Shader Presets => Editor/InternalResources/ShaderPresets}/PresetSky.shader.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/Shader Presets => Editor/InternalResources/ShaderPresets}/PresetSprite.shader (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/Shader Presets => Editor/InternalResources/ShaderPresets}/PresetSprite.shader.meta (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/Shader Presets => Editor/InternalResources/ShaderPresets}/PresetUnlit.shader (100%) rename {Shader Forge/Assets/ShaderForge/Editor/InternalResources/Shader Presets => Editor/InternalResources/ShaderPresets}/PresetUnlit.shader.meta (100%) rename Shader Forge/Assets/ShaderForge/Readme.txt => Readme.txt (100%) rename Shader Forge/Assets/ShaderForge/Readme.txt.meta => Readme.txt.meta (100%) delete mode 100644 Shader Forge/Assets/ShaderForge.meta delete mode 100644 Shader Forge/Assets/ShaderForge/Example Assets.meta delete mode 100644 Shader Forge/Assets/ShaderForge/Example Assets/Meshes.meta delete mode 100644 Shader Forge/Assets/ShaderForge/Example Assets/Meshes/sf_example_meshes.fbx delete mode 100644 Shader Forge/Assets/ShaderForge/Example Assets/Meshes/sf_example_meshes.fbx.meta delete mode 100644 Shader Forge/Assets/ShaderForge/Example Assets/Scripts.meta delete mode 100644 Shader Forge/Assets/ShaderForge/Example Assets/Scripts/EditorLabel.cs delete mode 100644 Shader Forge/Assets/ShaderForge/Example Assets/Scripts/EditorLabel.cs.meta delete mode 100644 Shader Forge/Assets/ShaderForge/Example Assets/Scripts/EnableCameraDepthInForward.cs delete mode 100644 Shader Forge/Assets/ShaderForge/Example Assets/Scripts/EnableCameraDepthInForward.cs.meta delete mode 100644 Shader Forge/Assets/ShaderForge/Example Assets/Scripts/SoftNormalsToVertexColor.cs delete mode 100644 Shader Forge/Assets/ShaderForge/Example Assets/Scripts/SoftNormalsToVertexColor.cs.meta delete mode 100644 Shader Forge/Assets/ShaderForge/Example Assets/Shaders.meta delete mode 100644 Shader Forge/Assets/ShaderForge/Example Assets/Shaders/CustomLighting.mat delete mode 100644 Shader Forge/Assets/ShaderForge/Example Assets/Shaders/CustomLighting.mat.meta delete mode 100644 Shader Forge/Assets/ShaderForge/Example Assets/Shaders/CustomLighting.shader delete mode 100644 Shader Forge/Assets/ShaderForge/Example Assets/Shaders/CustomLighting.shader.meta delete mode 100644 Shader Forge/Assets/ShaderForge/Example Assets/Shaders/LightWrapping.mat delete mode 100644 Shader Forge/Assets/ShaderForge/Example Assets/Shaders/LightWrapping.mat.meta delete mode 100644 Shader Forge/Assets/ShaderForge/Example Assets/Shaders/LightWrapping.shader delete mode 100644 Shader Forge/Assets/ShaderForge/Example Assets/Shaders/LightWrapping.shader.meta delete mode 100644 Shader Forge/Assets/ShaderForge/Example Assets/Shaders/Parallax.mat delete mode 100644 Shader Forge/Assets/ShaderForge/Example Assets/Shaders/Parallax.mat.meta delete mode 100644 Shader Forge/Assets/ShaderForge/Example Assets/Shaders/Parallax.shader delete mode 100644 Shader Forge/Assets/ShaderForge/Example Assets/Shaders/Parallax.shader.meta delete mode 100644 Shader Forge/Assets/ShaderForge/Example Assets/Shaders/PixelRotator.mat delete mode 100644 Shader Forge/Assets/ShaderForge/Example Assets/Shaders/PixelRotator.mat.meta delete mode 100644 Shader Forge/Assets/ShaderForge/Example Assets/Shaders/PixelRotator.shader delete mode 100644 Shader Forge/Assets/ShaderForge/Example Assets/Shaders/PixelRotator.shader.meta delete mode 100644 Shader Forge/Assets/ShaderForge/Example Assets/Shaders/Refraction.mat delete mode 100644 Shader Forge/Assets/ShaderForge/Example Assets/Shaders/Refraction.mat.meta delete mode 100644 Shader Forge/Assets/ShaderForge/Example Assets/Shaders/Refraction.shader delete mode 100644 Shader Forge/Assets/ShaderForge/Example Assets/Shaders/Refraction.shader.meta delete mode 100644 Shader Forge/Assets/ShaderForge/Example Assets/Shaders/TessellationDisplacement.mat delete mode 100644 Shader Forge/Assets/ShaderForge/Example Assets/Shaders/TessellationDisplacement.mat.meta delete mode 100644 Shader Forge/Assets/ShaderForge/Example Assets/Shaders/TessellationDisplacement.shader delete mode 100644 Shader Forge/Assets/ShaderForge/Example Assets/Shaders/TessellationDisplacement.shader.meta delete mode 100644 Shader Forge/Assets/ShaderForge/Example Assets/Shaders/Tiles.mat delete mode 100644 Shader Forge/Assets/ShaderForge/Example Assets/Shaders/Tiles.mat.meta delete mode 100644 Shader Forge/Assets/ShaderForge/Example Assets/Shaders/Tiles.shader delete mode 100644 Shader Forge/Assets/ShaderForge/Example Assets/Shaders/Tiles.shader.meta delete mode 100644 Shader Forge/Assets/ShaderForge/Example Assets/Shaders/Vegetation.mat delete mode 100644 Shader Forge/Assets/ShaderForge/Example Assets/Shaders/Vegetation.mat.meta delete mode 100644 Shader Forge/Assets/ShaderForge/Example Assets/Shaders/Vegetation.shader delete mode 100644 Shader Forge/Assets/ShaderForge/Example Assets/Shaders/Vegetation.shader.meta delete mode 100644 Shader Forge/Assets/ShaderForge/Example Assets/Shaders/VertexAnimation.mat delete mode 100644 Shader Forge/Assets/ShaderForge/Example Assets/Shaders/VertexAnimation.mat.meta delete mode 100644 Shader Forge/Assets/ShaderForge/Example Assets/Shaders/VertexAnimation.shader delete mode 100644 Shader Forge/Assets/ShaderForge/Example Assets/Shaders/VertexAnimation.shader.meta delete mode 100644 Shader Forge/Assets/ShaderForge/Example Assets/Shaders/VertexAnimation_blue.mat delete mode 100644 Shader Forge/Assets/ShaderForge/Example Assets/Shaders/VertexAnimation_blue.mat.meta delete mode 100644 Shader Forge/Assets/ShaderForge/Example Assets/Shaders/VertexColorRounding.mat delete mode 100644 Shader Forge/Assets/ShaderForge/Example Assets/Shaders/VertexColorRounding.mat.meta delete mode 100644 Shader Forge/Assets/ShaderForge/Example Assets/Shaders/VertexColorRounding.shader delete mode 100644 Shader Forge/Assets/ShaderForge/Example Assets/Shaders/VertexColorRounding.shader.meta delete mode 100644 Shader Forge/Assets/ShaderForge/Example Assets/Textures.meta delete mode 100644 Shader Forge/Assets/ShaderForge/Example Assets/Textures/sf_alpha_circle.png delete mode 100644 Shader Forge/Assets/ShaderForge/Example Assets/Textures/sf_alpha_circle.png.meta delete mode 100644 Shader Forge/Assets/ShaderForge/Example Assets/Textures/sf_alpha_circle_02.png delete mode 100644 Shader Forge/Assets/ShaderForge/Example Assets/Textures/sf_alpha_circle_02.png.meta delete mode 100644 Shader Forge/Assets/ShaderForge/Example Assets/Textures/sf_conc_floor_01_d.tga delete mode 100644 Shader Forge/Assets/ShaderForge/Example Assets/Textures/sf_conc_floor_01_d.tga.meta delete mode 100644 Shader Forge/Assets/ShaderForge/Example Assets/Textures/sf_conc_floor_01_n.tga delete mode 100644 Shader Forge/Assets/ShaderForge/Example Assets/Textures/sf_conc_floor_01_n.tga.meta delete mode 100644 Shader Forge/Assets/ShaderForge/Example Assets/Textures/sf_gradient_light_01.png delete mode 100644 Shader Forge/Assets/ShaderForge/Example Assets/Textures/sf_gradient_light_01.png.meta delete mode 100644 Shader Forge/Assets/ShaderForge/Example Assets/Textures/sf_gradient_ramp_01.png delete mode 100644 Shader Forge/Assets/ShaderForge/Example Assets/Textures/sf_gradient_ramp_01.png.meta delete mode 100644 Shader Forge/Assets/ShaderForge/Example Assets/Textures/sf_gradient_ramp_02.png delete mode 100644 Shader Forge/Assets/ShaderForge/Example Assets/Textures/sf_gradient_ramp_02.png.meta delete mode 100644 Shader Forge/Assets/ShaderForge/Example Assets/Textures/sf_leaves_01_d.tga delete mode 100644 Shader Forge/Assets/ShaderForge/Example Assets/Textures/sf_leaves_01_d.tga.meta delete mode 100644 Shader Forge/Assets/ShaderForge/Example Assets/Textures/sf_leaves_01_n.png delete mode 100644 Shader Forge/Assets/ShaderForge/Example Assets/Textures/sf_leaves_01_n.png.meta delete mode 100755 Shader Forge/Assets/ShaderForge/Example Assets/Textures/sf_noise_clouds_01.png delete mode 100644 Shader Forge/Assets/ShaderForge/Example Assets/Textures/sf_noise_clouds_01.png.meta delete mode 100644 Shader Forge/Assets/ShaderForge/Example Assets/Textures/sf_noise_grain_01.png delete mode 100644 Shader Forge/Assets/ShaderForge/Example Assets/Textures/sf_noise_grain_01.png.meta delete mode 100644 Shader Forge/Assets/ShaderForge/Example Assets/Textures/sf_parallax_test_ao_height.tga delete mode 100644 Shader Forge/Assets/ShaderForge/Example Assets/Textures/sf_parallax_test_ao_height.tga.meta delete mode 100644 Shader Forge/Assets/ShaderForge/Example Assets/Textures/sf_parallax_test_normals.tga delete mode 100644 Shader Forge/Assets/ShaderForge/Example Assets/Textures/sf_parallax_test_normals.tga.meta delete mode 100644 Shader Forge/Assets/ShaderForge/Example Assets/Textures/sf_rgb_overlap.png delete mode 100644 Shader Forge/Assets/ShaderForge/Example Assets/Textures/sf_rgb_overlap.png.meta delete mode 100644 Shader Forge/Assets/ShaderForge/Example Assets/Textures/sf_texcoords.png delete mode 100644 Shader Forge/Assets/ShaderForge/Example Assets/Textures/sf_texcoords.png.meta delete mode 100644 Shader Forge/Assets/ShaderForge/Example Assets/Textures/sf_tile_01_d.tga delete mode 100644 Shader Forge/Assets/ShaderForge/Example Assets/Textures/sf_tile_01_d.tga.meta delete mode 100644 Shader Forge/Assets/ShaderForge/Example Assets/Textures/sf_tile_01_n.tga delete mode 100644 Shader Forge/Assets/ShaderForge/Example Assets/Textures/sf_tile_01_n.tga.meta delete mode 100644 Shader Forge/Assets/ShaderForge/Example Scene.unity delete mode 100644 Shader Forge/Assets/ShaderForge/Example Scene.unity.meta delete mode 100644 Shader Forge/Packages/manifest.json delete mode 100644 Shader Forge/ProjectSettings/AudioManager.asset delete mode 100644 Shader Forge/ProjectSettings/ClusterInputManager.asset delete mode 100644 Shader Forge/ProjectSettings/DynamicsManager.asset delete mode 100644 Shader Forge/ProjectSettings/EditorBuildSettings.asset delete mode 100644 Shader Forge/ProjectSettings/EditorSettings.asset delete mode 100644 Shader Forge/ProjectSettings/GraphicsSettings.asset delete mode 100644 Shader Forge/ProjectSettings/InputManager.asset delete mode 100644 Shader Forge/ProjectSettings/NavMeshAreas.asset delete mode 100644 Shader Forge/ProjectSettings/NavMeshLayers.asset delete mode 100644 Shader Forge/ProjectSettings/NavMeshProjectSettings.asset delete mode 100644 Shader Forge/ProjectSettings/NetworkManager.asset delete mode 100644 Shader Forge/ProjectSettings/Physics2DSettings.asset delete mode 100644 Shader Forge/ProjectSettings/PresetManager.asset delete mode 100644 Shader Forge/ProjectSettings/ProjectSettings.asset delete mode 100644 Shader Forge/ProjectSettings/ProjectVersion.txt delete mode 100644 Shader Forge/ProjectSettings/QualitySettings.asset delete mode 100644 Shader Forge/ProjectSettings/TagManager.asset delete mode 100644 Shader Forge/ProjectSettings/TimeManager.asset delete mode 100644 Shader Forge/ProjectSettings/UnityConnectSettings.asset delete mode 100644 Shader Forge/TesterManual.txt delete mode 100644 Shader Forge/UpgradeLog.htm diff --git a/Shader Forge/Assets/ShaderForge/Editor.meta b/Editor.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor.meta rename to Editor.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code.meta b/Editor/Code.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code.meta rename to Editor/Code.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/SFPSC_Blending.cs b/Editor/Code/SFPSC_Blending.cs similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/SFPSC_Blending.cs rename to Editor/Code/SFPSC_Blending.cs diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/SFPSC_Blending.cs.meta b/Editor/Code/SFPSC_Blending.cs.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/SFPSC_Blending.cs.meta rename to Editor/Code/SFPSC_Blending.cs.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/SFPSC_Console.cs b/Editor/Code/SFPSC_Console.cs similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/SFPSC_Console.cs rename to Editor/Code/SFPSC_Console.cs diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/SFPSC_Console.cs.meta b/Editor/Code/SFPSC_Console.cs.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/SFPSC_Console.cs.meta rename to Editor/Code/SFPSC_Console.cs.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/SFPSC_Experimental.cs b/Editor/Code/SFPSC_Experimental.cs similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/SFPSC_Experimental.cs rename to Editor/Code/SFPSC_Experimental.cs diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/SFPSC_Experimental.cs.meta b/Editor/Code/SFPSC_Experimental.cs.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/SFPSC_Experimental.cs.meta rename to Editor/Code/SFPSC_Experimental.cs.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/SFPSC_Geometry.cs b/Editor/Code/SFPSC_Geometry.cs similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/SFPSC_Geometry.cs rename to Editor/Code/SFPSC_Geometry.cs diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/SFPSC_Geometry.cs.meta b/Editor/Code/SFPSC_Geometry.cs.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/SFPSC_Geometry.cs.meta rename to Editor/Code/SFPSC_Geometry.cs.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/SFPSC_Lighting.cs b/Editor/Code/SFPSC_Lighting.cs similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/SFPSC_Lighting.cs rename to Editor/Code/SFPSC_Lighting.cs diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/SFPSC_Lighting.cs.meta b/Editor/Code/SFPSC_Lighting.cs.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/SFPSC_Lighting.cs.meta rename to Editor/Code/SFPSC_Lighting.cs.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/SFPSC_Meta.cs b/Editor/Code/SFPSC_Meta.cs similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/SFPSC_Meta.cs rename to Editor/Code/SFPSC_Meta.cs diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/SFPSC_Meta.cs.meta b/Editor/Code/SFPSC_Meta.cs.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/SFPSC_Meta.cs.meta rename to Editor/Code/SFPSC_Meta.cs.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/SFPSC_Properties.cs b/Editor/Code/SFPSC_Properties.cs similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/SFPSC_Properties.cs rename to Editor/Code/SFPSC_Properties.cs diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/SFPSC_Properties.cs.meta b/Editor/Code/SFPSC_Properties.cs.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/SFPSC_Properties.cs.meta rename to Editor/Code/SFPSC_Properties.cs.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/SFPS_Category.cs b/Editor/Code/SFPS_Category.cs similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/SFPS_Category.cs rename to Editor/Code/SFPS_Category.cs diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/SFPS_Category.cs.meta b/Editor/Code/SFPS_Category.cs.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/SFPS_Category.cs.meta rename to Editor/Code/SFPS_Category.cs.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/SF_Dependencies.cs b/Editor/Code/SF_Dependencies.cs similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/SF_Dependencies.cs rename to Editor/Code/SF_Dependencies.cs diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/SF_Dependencies.cs.meta b/Editor/Code/SF_Dependencies.cs.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/SF_Dependencies.cs.meta rename to Editor/Code/SF_Dependencies.cs.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/SF_Editor.cs b/Editor/Code/SF_Editor.cs similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/SF_Editor.cs rename to Editor/Code/SF_Editor.cs diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/SF_Editor.cs.meta b/Editor/Code/SF_Editor.cs.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/SF_Editor.cs.meta rename to Editor/Code/SF_Editor.cs.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/SF_EditorNodeBrowser.cs b/Editor/Code/SF_EditorNodeBrowser.cs similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/SF_EditorNodeBrowser.cs rename to Editor/Code/SF_EditorNodeBrowser.cs diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/SF_EditorNodeBrowser.cs.meta b/Editor/Code/SF_EditorNodeBrowser.cs.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/SF_EditorNodeBrowser.cs.meta rename to Editor/Code/SF_EditorNodeBrowser.cs.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/SF_EditorNodeData.cs b/Editor/Code/SF_EditorNodeData.cs similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/SF_EditorNodeData.cs rename to Editor/Code/SF_EditorNodeData.cs diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/SF_EditorNodeData.cs.meta b/Editor/Code/SF_EditorNodeData.cs.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/SF_EditorNodeData.cs.meta rename to Editor/Code/SF_EditorNodeData.cs.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/SF_EditorNodeView.cs b/Editor/Code/SF_EditorNodeView.cs similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/SF_EditorNodeView.cs rename to Editor/Code/SF_EditorNodeView.cs diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/SF_EditorNodeView.cs.meta b/Editor/Code/SF_EditorNodeView.cs.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/SF_EditorNodeView.cs.meta rename to Editor/Code/SF_EditorNodeView.cs.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/SF_ErrorEntry.cs b/Editor/Code/SF_ErrorEntry.cs similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/SF_ErrorEntry.cs rename to Editor/Code/SF_ErrorEntry.cs diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/SF_ErrorEntry.cs.meta b/Editor/Code/SF_ErrorEntry.cs.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/SF_ErrorEntry.cs.meta rename to Editor/Code/SF_ErrorEntry.cs.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/SF_FeatureChecker.cs b/Editor/Code/SF_FeatureChecker.cs similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/SF_FeatureChecker.cs rename to Editor/Code/SF_FeatureChecker.cs diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/SF_FeatureChecker.cs.meta b/Editor/Code/SF_FeatureChecker.cs.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/SF_FeatureChecker.cs.meta rename to Editor/Code/SF_FeatureChecker.cs.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/SF_InstructionPass.cs b/Editor/Code/SF_InstructionPass.cs similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/SF_InstructionPass.cs rename to Editor/Code/SF_InstructionPass.cs diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/SF_InstructionPass.cs.meta b/Editor/Code/SF_InstructionPass.cs.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/SF_InstructionPass.cs.meta rename to Editor/Code/SF_InstructionPass.cs.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/SF_NodeConnectionLine.cs b/Editor/Code/SF_NodeConnectionLine.cs similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/SF_NodeConnectionLine.cs rename to Editor/Code/SF_NodeConnectionLine.cs diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/SF_NodeConnectionLine.cs.meta b/Editor/Code/SF_NodeConnectionLine.cs.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/SF_NodeConnectionLine.cs.meta rename to Editor/Code/SF_NodeConnectionLine.cs.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/SF_NodeConnector.cs b/Editor/Code/SF_NodeConnector.cs similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/SF_NodeConnector.cs rename to Editor/Code/SF_NodeConnector.cs diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/SF_NodeConnector.cs.meta b/Editor/Code/SF_NodeConnector.cs.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/SF_NodeConnector.cs.meta rename to Editor/Code/SF_NodeConnector.cs.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/SF_NodePreview.cs b/Editor/Code/SF_NodePreview.cs similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/SF_NodePreview.cs rename to Editor/Code/SF_NodePreview.cs diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/SF_NodePreview.cs.meta b/Editor/Code/SF_NodePreview.cs.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/SF_NodePreview.cs.meta rename to Editor/Code/SF_NodePreview.cs.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/SF_NodeStatus.cs b/Editor/Code/SF_NodeStatus.cs similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/SF_NodeStatus.cs rename to Editor/Code/SF_NodeStatus.cs diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/SF_NodeStatus.cs.meta b/Editor/Code/SF_NodeStatus.cs.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/SF_NodeStatus.cs.meta rename to Editor/Code/SF_NodeStatus.cs.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/SF_NodeTreeStatus.cs b/Editor/Code/SF_NodeTreeStatus.cs similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/SF_NodeTreeStatus.cs rename to Editor/Code/SF_NodeTreeStatus.cs diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/SF_NodeTreeStatus.cs.meta b/Editor/Code/SF_NodeTreeStatus.cs.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/SF_NodeTreeStatus.cs.meta rename to Editor/Code/SF_NodeTreeStatus.cs.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/SF_Parser.cs b/Editor/Code/SF_Parser.cs similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/SF_Parser.cs rename to Editor/Code/SF_Parser.cs diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/SF_Parser.cs.meta b/Editor/Code/SF_Parser.cs.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/SF_Parser.cs.meta rename to Editor/Code/SF_Parser.cs.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/SF_PassSettings.cs b/Editor/Code/SF_PassSettings.cs similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/SF_PassSettings.cs rename to Editor/Code/SF_PassSettings.cs diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/SF_PassSettings.cs.meta b/Editor/Code/SF_PassSettings.cs.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/SF_PassSettings.cs.meta rename to Editor/Code/SF_PassSettings.cs.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/SF_PreviewSettings.cs b/Editor/Code/SF_PreviewSettings.cs similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/SF_PreviewSettings.cs rename to Editor/Code/SF_PreviewSettings.cs diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/SF_PreviewSettings.cs.meta b/Editor/Code/SF_PreviewSettings.cs.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/SF_PreviewSettings.cs.meta rename to Editor/Code/SF_PreviewSettings.cs.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/SF_PreviewWindow.cs b/Editor/Code/SF_PreviewWindow.cs similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/SF_PreviewWindow.cs rename to Editor/Code/SF_PreviewWindow.cs diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/SF_PreviewWindow.cs.meta b/Editor/Code/SF_PreviewWindow.cs.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/SF_PreviewWindow.cs.meta rename to Editor/Code/SF_PreviewWindow.cs.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/SF_SelectionManager.cs b/Editor/Code/SF_SelectionManager.cs similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/SF_SelectionManager.cs rename to Editor/Code/SF_SelectionManager.cs diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/SF_SelectionManager.cs.meta b/Editor/Code/SF_SelectionManager.cs.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/SF_SelectionManager.cs.meta rename to Editor/Code/SF_SelectionManager.cs.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/SF_Settings.cs b/Editor/Code/SF_Settings.cs similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/SF_Settings.cs rename to Editor/Code/SF_Settings.cs diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/SF_Settings.cs.meta b/Editor/Code/SF_Settings.cs.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/SF_Settings.cs.meta rename to Editor/Code/SF_Settings.cs.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/SF_StatusBox.cs b/Editor/Code/SF_StatusBox.cs similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/SF_StatusBox.cs rename to Editor/Code/SF_StatusBox.cs diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/SF_StatusBox.cs.meta b/Editor/Code/SF_StatusBox.cs.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/SF_StatusBox.cs.meta rename to Editor/Code/SF_StatusBox.cs.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_ConnectionGroups.meta b/Editor/Code/_ConnectionGroups.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/_ConnectionGroups.meta rename to Editor/Code/_ConnectionGroups.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_ConnectionGroups/SFNCG_Append.cs b/Editor/Code/_ConnectionGroups/SFNCG_Append.cs similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/_ConnectionGroups/SFNCG_Append.cs rename to Editor/Code/_ConnectionGroups/SFNCG_Append.cs diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_ConnectionGroups/SFNCG_Append.cs.meta b/Editor/Code/_ConnectionGroups/SFNCG_Append.cs.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/_ConnectionGroups/SFNCG_Append.cs.meta rename to Editor/Code/_ConnectionGroups/SFNCG_Append.cs.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_ConnectionGroups/SFNCG_Arithmetic.cs b/Editor/Code/_ConnectionGroups/SFNCG_Arithmetic.cs similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/_ConnectionGroups/SFNCG_Arithmetic.cs rename to Editor/Code/_ConnectionGroups/SFNCG_Arithmetic.cs diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_ConnectionGroups/SFNCG_Arithmetic.cs.meta b/Editor/Code/_ConnectionGroups/SFNCG_Arithmetic.cs.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/_ConnectionGroups/SFNCG_Arithmetic.cs.meta rename to Editor/Code/_ConnectionGroups/SFNCG_Arithmetic.cs.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_ConnectionGroups/SFNCG_ChannelBlend.cs b/Editor/Code/_ConnectionGroups/SFNCG_ChannelBlend.cs similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/_ConnectionGroups/SFNCG_ChannelBlend.cs rename to Editor/Code/_ConnectionGroups/SFNCG_ChannelBlend.cs diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_ConnectionGroups/SFNCG_ChannelBlend.cs.meta b/Editor/Code/_ConnectionGroups/SFNCG_ChannelBlend.cs.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/_ConnectionGroups/SFNCG_ChannelBlend.cs.meta rename to Editor/Code/_ConnectionGroups/SFNCG_ChannelBlend.cs.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_ConnectionGroups/SFNCG_ComponentMask.cs b/Editor/Code/_ConnectionGroups/SFNCG_ComponentMask.cs similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/_ConnectionGroups/SFNCG_ComponentMask.cs rename to Editor/Code/_ConnectionGroups/SFNCG_ComponentMask.cs diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_ConnectionGroups/SFNCG_ComponentMask.cs.meta b/Editor/Code/_ConnectionGroups/SFNCG_ComponentMask.cs.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/_ConnectionGroups/SFNCG_ComponentMask.cs.meta rename to Editor/Code/_ConnectionGroups/SFNCG_ComponentMask.cs.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_ConnectionGroups/SFNCG_MatrixMultiply.cs b/Editor/Code/_ConnectionGroups/SFNCG_MatrixMultiply.cs similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/_ConnectionGroups/SFNCG_MatrixMultiply.cs rename to Editor/Code/_ConnectionGroups/SFNCG_MatrixMultiply.cs diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_ConnectionGroups/SFNCG_MatrixMultiply.cs.meta b/Editor/Code/_ConnectionGroups/SFNCG_MatrixMultiply.cs.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/_ConnectionGroups/SFNCG_MatrixMultiply.cs.meta rename to Editor/Code/_ConnectionGroups/SFNCG_MatrixMultiply.cs.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_ConnectionGroups/SF_NodeConnectionGroup.cs b/Editor/Code/_ConnectionGroups/SF_NodeConnectionGroup.cs similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/_ConnectionGroups/SF_NodeConnectionGroup.cs rename to Editor/Code/_ConnectionGroups/SF_NodeConnectionGroup.cs diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_ConnectionGroups/SF_NodeConnectionGroup.cs.meta b/Editor/Code/_ConnectionGroups/SF_NodeConnectionGroup.cs.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/_ConnectionGroups/SF_NodeConnectionGroup.cs.meta rename to Editor/Code/_ConnectionGroups/SF_NodeConnectionGroup.cs.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Enums.meta b/Editor/Code/_Enums.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/_Enums.meta rename to Editor/Code/_Enums.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Enums/SF_VarTypeEnums.cs b/Editor/Code/_Enums/SF_VarTypeEnums.cs similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/_Enums/SF_VarTypeEnums.cs rename to Editor/Code/_Enums/SF_VarTypeEnums.cs diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Enums/SF_VarTypeEnums.cs.meta b/Editor/Code/_Enums/SF_VarTypeEnums.cs.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/_Enums/SF_VarTypeEnums.cs.meta rename to Editor/Code/_Enums/SF_VarTypeEnums.cs.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Evaluator.meta b/Editor/Code/_Evaluator.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/_Evaluator.meta rename to Editor/Code/_Evaluator.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Evaluator/Pass_FwdAdd.cs b/Editor/Code/_Evaluator/Pass_FwdAdd.cs similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/_Evaluator/Pass_FwdAdd.cs rename to Editor/Code/_Evaluator/Pass_FwdAdd.cs diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Evaluator/Pass_FwdAdd.cs.meta b/Editor/Code/_Evaluator/Pass_FwdAdd.cs.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/_Evaluator/Pass_FwdAdd.cs.meta rename to Editor/Code/_Evaluator/Pass_FwdAdd.cs.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Evaluator/SF_Evaluator.cs b/Editor/Code/_Evaluator/SF_Evaluator.cs similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/_Evaluator/SF_Evaluator.cs rename to Editor/Code/_Evaluator/SF_Evaluator.cs diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Evaluator/SF_Evaluator.cs.meta b/Editor/Code/_Evaluator/SF_Evaluator.cs.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/_Evaluator/SF_Evaluator.cs.meta rename to Editor/Code/_Evaluator/SF_Evaluator.cs.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Evaluator/_NewSystem.meta b/Editor/Code/_Evaluator/_NewSystem.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/_Evaluator/_NewSystem.meta rename to Editor/Code/_Evaluator/_NewSystem.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Evaluator/_NewSystem/DependencyTree.cs b/Editor/Code/_Evaluator/_NewSystem/DependencyTree.cs similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/_Evaluator/_NewSystem/DependencyTree.cs rename to Editor/Code/_Evaluator/_NewSystem/DependencyTree.cs diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Evaluator/_NewSystem/DependencyTree.cs.meta b/Editor/Code/_Evaluator/_NewSystem/DependencyTree.cs.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/_Evaluator/_NewSystem/DependencyTree.cs.meta rename to Editor/Code/_Evaluator/_NewSystem/DependencyTree.cs.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes.meta b/Editor/Code/_Nodes.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes.meta rename to Editor/Code/_Nodes.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Abs.cs b/Editor/Code/_Nodes/SFN_Abs.cs similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Abs.cs rename to Editor/Code/_Nodes/SFN_Abs.cs diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Abs.cs.meta b/Editor/Code/_Nodes/SFN_Abs.cs.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Abs.cs.meta rename to Editor/Code/_Nodes/SFN_Abs.cs.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Add.cs b/Editor/Code/_Nodes/SFN_Add.cs similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Add.cs rename to Editor/Code/_Nodes/SFN_Add.cs diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Add.cs.meta b/Editor/Code/_Nodes/SFN_Add.cs.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Add.cs.meta rename to Editor/Code/_Nodes/SFN_Add.cs.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_AmbientLight.cs b/Editor/Code/_Nodes/SFN_AmbientLight.cs similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_AmbientLight.cs rename to Editor/Code/_Nodes/SFN_AmbientLight.cs diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_AmbientLight.cs.meta b/Editor/Code/_Nodes/SFN_AmbientLight.cs.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_AmbientLight.cs.meta rename to Editor/Code/_Nodes/SFN_AmbientLight.cs.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Append.cs b/Editor/Code/_Nodes/SFN_Append.cs similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Append.cs rename to Editor/Code/_Nodes/SFN_Append.cs diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Append.cs.meta b/Editor/Code/_Nodes/SFN_Append.cs.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Append.cs.meta rename to Editor/Code/_Nodes/SFN_Append.cs.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ArcCos.cs b/Editor/Code/_Nodes/SFN_ArcCos.cs similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ArcCos.cs rename to Editor/Code/_Nodes/SFN_ArcCos.cs diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ArcCos.cs.meta b/Editor/Code/_Nodes/SFN_ArcCos.cs.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ArcCos.cs.meta rename to Editor/Code/_Nodes/SFN_ArcCos.cs.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ArcSin.cs b/Editor/Code/_Nodes/SFN_ArcSin.cs similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ArcSin.cs rename to Editor/Code/_Nodes/SFN_ArcSin.cs diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ArcSin.cs.meta b/Editor/Code/_Nodes/SFN_ArcSin.cs.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ArcSin.cs.meta rename to Editor/Code/_Nodes/SFN_ArcSin.cs.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ArcTan.cs b/Editor/Code/_Nodes/SFN_ArcTan.cs similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ArcTan.cs rename to Editor/Code/_Nodes/SFN_ArcTan.cs diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ArcTan.cs.meta b/Editor/Code/_Nodes/SFN_ArcTan.cs.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ArcTan.cs.meta rename to Editor/Code/_Nodes/SFN_ArcTan.cs.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ArcTan2.cs b/Editor/Code/_Nodes/SFN_ArcTan2.cs similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ArcTan2.cs rename to Editor/Code/_Nodes/SFN_ArcTan2.cs diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ArcTan2.cs.meta b/Editor/Code/_Nodes/SFN_ArcTan2.cs.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ArcTan2.cs.meta rename to Editor/Code/_Nodes/SFN_ArcTan2.cs.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Bitangent.cs b/Editor/Code/_Nodes/SFN_Bitangent.cs similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Bitangent.cs rename to Editor/Code/_Nodes/SFN_Bitangent.cs diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Bitangent.cs.meta b/Editor/Code/_Nodes/SFN_Bitangent.cs.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Bitangent.cs.meta rename to Editor/Code/_Nodes/SFN_Bitangent.cs.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Blend.cs b/Editor/Code/_Nodes/SFN_Blend.cs similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Blend.cs rename to Editor/Code/_Nodes/SFN_Blend.cs diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Blend.cs.meta b/Editor/Code/_Nodes/SFN_Blend.cs.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Blend.cs.meta rename to Editor/Code/_Nodes/SFN_Blend.cs.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Ceil.cs b/Editor/Code/_Nodes/SFN_Ceil.cs similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Ceil.cs rename to Editor/Code/_Nodes/SFN_Ceil.cs diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Ceil.cs.meta b/Editor/Code/_Nodes/SFN_Ceil.cs.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Ceil.cs.meta rename to Editor/Code/_Nodes/SFN_Ceil.cs.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ChannelBlend.cs b/Editor/Code/_Nodes/SFN_ChannelBlend.cs similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ChannelBlend.cs rename to Editor/Code/_Nodes/SFN_ChannelBlend.cs diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ChannelBlend.cs.meta b/Editor/Code/_Nodes/SFN_ChannelBlend.cs.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ChannelBlend.cs.meta rename to Editor/Code/_Nodes/SFN_ChannelBlend.cs.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Clamp.cs b/Editor/Code/_Nodes/SFN_Clamp.cs similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Clamp.cs rename to Editor/Code/_Nodes/SFN_Clamp.cs diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Clamp.cs.meta b/Editor/Code/_Nodes/SFN_Clamp.cs.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Clamp.cs.meta rename to Editor/Code/_Nodes/SFN_Clamp.cs.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Clamp01.cs b/Editor/Code/_Nodes/SFN_Clamp01.cs similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Clamp01.cs rename to Editor/Code/_Nodes/SFN_Clamp01.cs diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Clamp01.cs.meta b/Editor/Code/_Nodes/SFN_Clamp01.cs.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Clamp01.cs.meta rename to Editor/Code/_Nodes/SFN_Clamp01.cs.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Code.cs b/Editor/Code/_Nodes/SFN_Code.cs similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Code.cs rename to Editor/Code/_Nodes/SFN_Code.cs diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Code.cs.meta b/Editor/Code/_Nodes/SFN_Code.cs.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Code.cs.meta rename to Editor/Code/_Nodes/SFN_Code.cs.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Color.cs b/Editor/Code/_Nodes/SFN_Color.cs similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Color.cs rename to Editor/Code/_Nodes/SFN_Color.cs diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Color.cs.meta b/Editor/Code/_Nodes/SFN_Color.cs.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Color.cs.meta rename to Editor/Code/_Nodes/SFN_Color.cs.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_CommentBox.cs b/Editor/Code/_Nodes/SFN_CommentBox.cs similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_CommentBox.cs rename to Editor/Code/_Nodes/SFN_CommentBox.cs diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_CommentBox.cs.meta b/Editor/Code/_Nodes/SFN_CommentBox.cs.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_CommentBox.cs.meta rename to Editor/Code/_Nodes/SFN_CommentBox.cs.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ComponentMask.cs b/Editor/Code/_Nodes/SFN_ComponentMask.cs similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ComponentMask.cs rename to Editor/Code/_Nodes/SFN_ComponentMask.cs diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ComponentMask.cs.meta b/Editor/Code/_Nodes/SFN_ComponentMask.cs.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ComponentMask.cs.meta rename to Editor/Code/_Nodes/SFN_ComponentMask.cs.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ConstantClamp.cs b/Editor/Code/_Nodes/SFN_ConstantClamp.cs similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ConstantClamp.cs rename to Editor/Code/_Nodes/SFN_ConstantClamp.cs diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ConstantClamp.cs.meta b/Editor/Code/_Nodes/SFN_ConstantClamp.cs.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ConstantClamp.cs.meta rename to Editor/Code/_Nodes/SFN_ConstantClamp.cs.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ConstantLerp.cs b/Editor/Code/_Nodes/SFN_ConstantLerp.cs similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ConstantLerp.cs rename to Editor/Code/_Nodes/SFN_ConstantLerp.cs diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ConstantLerp.cs.meta b/Editor/Code/_Nodes/SFN_ConstantLerp.cs.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ConstantLerp.cs.meta rename to Editor/Code/_Nodes/SFN_ConstantLerp.cs.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Cos.cs b/Editor/Code/_Nodes/SFN_Cos.cs similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Cos.cs rename to Editor/Code/_Nodes/SFN_Cos.cs diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Cos.cs.meta b/Editor/Code/_Nodes/SFN_Cos.cs.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Cos.cs.meta rename to Editor/Code/_Nodes/SFN_Cos.cs.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Cross.cs b/Editor/Code/_Nodes/SFN_Cross.cs similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Cross.cs rename to Editor/Code/_Nodes/SFN_Cross.cs diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Cross.cs.meta b/Editor/Code/_Nodes/SFN_Cross.cs.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Cross.cs.meta rename to Editor/Code/_Nodes/SFN_Cross.cs.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Cubemap.cs b/Editor/Code/_Nodes/SFN_Cubemap.cs similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Cubemap.cs rename to Editor/Code/_Nodes/SFN_Cubemap.cs diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Cubemap.cs.meta b/Editor/Code/_Nodes/SFN_Cubemap.cs.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Cubemap.cs.meta rename to Editor/Code/_Nodes/SFN_Cubemap.cs.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_DDX.cs b/Editor/Code/_Nodes/SFN_DDX.cs similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_DDX.cs rename to Editor/Code/_Nodes/SFN_DDX.cs diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_DDX.cs.meta b/Editor/Code/_Nodes/SFN_DDX.cs.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_DDX.cs.meta rename to Editor/Code/_Nodes/SFN_DDX.cs.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_DDXY.cs b/Editor/Code/_Nodes/SFN_DDXY.cs similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_DDXY.cs rename to Editor/Code/_Nodes/SFN_DDXY.cs diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_DDXY.cs.meta b/Editor/Code/_Nodes/SFN_DDXY.cs.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_DDXY.cs.meta rename to Editor/Code/_Nodes/SFN_DDXY.cs.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_DDY.cs b/Editor/Code/_Nodes/SFN_DDY.cs similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_DDY.cs rename to Editor/Code/_Nodes/SFN_DDY.cs diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_DDY.cs.meta b/Editor/Code/_Nodes/SFN_DDY.cs.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_DDY.cs.meta rename to Editor/Code/_Nodes/SFN_DDY.cs.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Depth.cs b/Editor/Code/_Nodes/SFN_Depth.cs similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Depth.cs rename to Editor/Code/_Nodes/SFN_Depth.cs diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Depth.cs.meta b/Editor/Code/_Nodes/SFN_Depth.cs.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Depth.cs.meta rename to Editor/Code/_Nodes/SFN_Depth.cs.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_DepthBlend.cs b/Editor/Code/_Nodes/SFN_DepthBlend.cs similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_DepthBlend.cs rename to Editor/Code/_Nodes/SFN_DepthBlend.cs diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_DepthBlend.cs.meta b/Editor/Code/_Nodes/SFN_DepthBlend.cs.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_DepthBlend.cs.meta rename to Editor/Code/_Nodes/SFN_DepthBlend.cs.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Desaturate.cs b/Editor/Code/_Nodes/SFN_Desaturate.cs similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Desaturate.cs rename to Editor/Code/_Nodes/SFN_Desaturate.cs diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Desaturate.cs.meta b/Editor/Code/_Nodes/SFN_Desaturate.cs.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Desaturate.cs.meta rename to Editor/Code/_Nodes/SFN_Desaturate.cs.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Distance.cs b/Editor/Code/_Nodes/SFN_Distance.cs similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Distance.cs rename to Editor/Code/_Nodes/SFN_Distance.cs diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Distance.cs.meta b/Editor/Code/_Nodes/SFN_Distance.cs.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Distance.cs.meta rename to Editor/Code/_Nodes/SFN_Distance.cs.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Divide.cs b/Editor/Code/_Nodes/SFN_Divide.cs similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Divide.cs rename to Editor/Code/_Nodes/SFN_Divide.cs diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Divide.cs.meta b/Editor/Code/_Nodes/SFN_Divide.cs.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Divide.cs.meta rename to Editor/Code/_Nodes/SFN_Divide.cs.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Dot.cs b/Editor/Code/_Nodes/SFN_Dot.cs similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Dot.cs rename to Editor/Code/_Nodes/SFN_Dot.cs diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Dot.cs.meta b/Editor/Code/_Nodes/SFN_Dot.cs.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Dot.cs.meta rename to Editor/Code/_Nodes/SFN_Dot.cs.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_E.cs b/Editor/Code/_Nodes/SFN_E.cs similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_E.cs rename to Editor/Code/_Nodes/SFN_E.cs diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_E.cs.meta b/Editor/Code/_Nodes/SFN_E.cs.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_E.cs.meta rename to Editor/Code/_Nodes/SFN_E.cs.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Exp.cs b/Editor/Code/_Nodes/SFN_Exp.cs similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Exp.cs rename to Editor/Code/_Nodes/SFN_Exp.cs diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Exp.cs.meta b/Editor/Code/_Nodes/SFN_Exp.cs.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Exp.cs.meta rename to Editor/Code/_Nodes/SFN_Exp.cs.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_FaceSign.cs b/Editor/Code/_Nodes/SFN_FaceSign.cs similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_FaceSign.cs rename to Editor/Code/_Nodes/SFN_FaceSign.cs diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_FaceSign.cs.meta b/Editor/Code/_Nodes/SFN_FaceSign.cs.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_FaceSign.cs.meta rename to Editor/Code/_Nodes/SFN_FaceSign.cs.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Final.cs b/Editor/Code/_Nodes/SFN_Final.cs similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Final.cs rename to Editor/Code/_Nodes/SFN_Final.cs diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Final.cs.meta b/Editor/Code/_Nodes/SFN_Final.cs.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Final.cs.meta rename to Editor/Code/_Nodes/SFN_Final.cs.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Floor.cs b/Editor/Code/_Nodes/SFN_Floor.cs similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Floor.cs rename to Editor/Code/_Nodes/SFN_Floor.cs diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Floor.cs.meta b/Editor/Code/_Nodes/SFN_Floor.cs.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Floor.cs.meta rename to Editor/Code/_Nodes/SFN_Floor.cs.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Fmod.cs b/Editor/Code/_Nodes/SFN_Fmod.cs similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Fmod.cs rename to Editor/Code/_Nodes/SFN_Fmod.cs diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Fmod.cs.meta b/Editor/Code/_Nodes/SFN_Fmod.cs.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Fmod.cs.meta rename to Editor/Code/_Nodes/SFN_Fmod.cs.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_FogColor.cs b/Editor/Code/_Nodes/SFN_FogColor.cs similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_FogColor.cs rename to Editor/Code/_Nodes/SFN_FogColor.cs diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_FogColor.cs.meta b/Editor/Code/_Nodes/SFN_FogColor.cs.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_FogColor.cs.meta rename to Editor/Code/_Nodes/SFN_FogColor.cs.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Frac.cs b/Editor/Code/_Nodes/SFN_Frac.cs similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Frac.cs rename to Editor/Code/_Nodes/SFN_Frac.cs diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Frac.cs.meta b/Editor/Code/_Nodes/SFN_Frac.cs.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Frac.cs.meta rename to Editor/Code/_Nodes/SFN_Frac.cs.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_FragmentPosition.cs b/Editor/Code/_Nodes/SFN_FragmentPosition.cs similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_FragmentPosition.cs rename to Editor/Code/_Nodes/SFN_FragmentPosition.cs diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_FragmentPosition.cs.meta b/Editor/Code/_Nodes/SFN_FragmentPosition.cs.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_FragmentPosition.cs.meta rename to Editor/Code/_Nodes/SFN_FragmentPosition.cs.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Fresnel.cs b/Editor/Code/_Nodes/SFN_Fresnel.cs similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Fresnel.cs rename to Editor/Code/_Nodes/SFN_Fresnel.cs diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Fresnel.cs.meta b/Editor/Code/_Nodes/SFN_Fresnel.cs.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Fresnel.cs.meta rename to Editor/Code/_Nodes/SFN_Fresnel.cs.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Get.cs b/Editor/Code/_Nodes/SFN_Get.cs similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Get.cs rename to Editor/Code/_Nodes/SFN_Get.cs diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Get.cs.meta b/Editor/Code/_Nodes/SFN_Get.cs.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Get.cs.meta rename to Editor/Code/_Nodes/SFN_Get.cs.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_HalfVector.cs b/Editor/Code/_Nodes/SFN_HalfVector.cs similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_HalfVector.cs rename to Editor/Code/_Nodes/SFN_HalfVector.cs diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_HalfVector.cs.meta b/Editor/Code/_Nodes/SFN_HalfVector.cs.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_HalfVector.cs.meta rename to Editor/Code/_Nodes/SFN_HalfVector.cs.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_HsvToRgb.cs b/Editor/Code/_Nodes/SFN_HsvToRgb.cs similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_HsvToRgb.cs rename to Editor/Code/_Nodes/SFN_HsvToRgb.cs diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_HsvToRgb.cs.meta b/Editor/Code/_Nodes/SFN_HsvToRgb.cs.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_HsvToRgb.cs.meta rename to Editor/Code/_Nodes/SFN_HsvToRgb.cs.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Hue.cs b/Editor/Code/_Nodes/SFN_Hue.cs similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Hue.cs rename to Editor/Code/_Nodes/SFN_Hue.cs diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Hue.cs.meta b/Editor/Code/_Nodes/SFN_Hue.cs.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Hue.cs.meta rename to Editor/Code/_Nodes/SFN_Hue.cs.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_If.cs b/Editor/Code/_Nodes/SFN_If.cs similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_If.cs rename to Editor/Code/_Nodes/SFN_If.cs diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_If.cs.meta b/Editor/Code/_Nodes/SFN_If.cs.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_If.cs.meta rename to Editor/Code/_Nodes/SFN_If.cs.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_InverseLerp.cs b/Editor/Code/_Nodes/SFN_InverseLerp.cs similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_InverseLerp.cs rename to Editor/Code/_Nodes/SFN_InverseLerp.cs diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_InverseLerp.cs.meta b/Editor/Code/_Nodes/SFN_InverseLerp.cs.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_InverseLerp.cs.meta rename to Editor/Code/_Nodes/SFN_InverseLerp.cs.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Length.cs b/Editor/Code/_Nodes/SFN_Length.cs similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Length.cs rename to Editor/Code/_Nodes/SFN_Length.cs diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Length.cs.meta b/Editor/Code/_Nodes/SFN_Length.cs.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Length.cs.meta rename to Editor/Code/_Nodes/SFN_Length.cs.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Lerp.cs b/Editor/Code/_Nodes/SFN_Lerp.cs similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Lerp.cs rename to Editor/Code/_Nodes/SFN_Lerp.cs diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Lerp.cs.meta b/Editor/Code/_Nodes/SFN_Lerp.cs.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Lerp.cs.meta rename to Editor/Code/_Nodes/SFN_Lerp.cs.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_LightAttenuation.cs b/Editor/Code/_Nodes/SFN_LightAttenuation.cs similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_LightAttenuation.cs rename to Editor/Code/_Nodes/SFN_LightAttenuation.cs diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_LightAttenuation.cs.meta b/Editor/Code/_Nodes/SFN_LightAttenuation.cs.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_LightAttenuation.cs.meta rename to Editor/Code/_Nodes/SFN_LightAttenuation.cs.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_LightColor.cs b/Editor/Code/_Nodes/SFN_LightColor.cs similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_LightColor.cs rename to Editor/Code/_Nodes/SFN_LightColor.cs diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_LightColor.cs.meta b/Editor/Code/_Nodes/SFN_LightColor.cs.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_LightColor.cs.meta rename to Editor/Code/_Nodes/SFN_LightColor.cs.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_LightPosition.cs b/Editor/Code/_Nodes/SFN_LightPosition.cs similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_LightPosition.cs rename to Editor/Code/_Nodes/SFN_LightPosition.cs diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_LightPosition.cs.meta b/Editor/Code/_Nodes/SFN_LightPosition.cs.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_LightPosition.cs.meta rename to Editor/Code/_Nodes/SFN_LightPosition.cs.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_LightVector.cs b/Editor/Code/_Nodes/SFN_LightVector.cs similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_LightVector.cs rename to Editor/Code/_Nodes/SFN_LightVector.cs diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_LightVector.cs.meta b/Editor/Code/_Nodes/SFN_LightVector.cs.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_LightVector.cs.meta rename to Editor/Code/_Nodes/SFN_LightVector.cs.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Log.cs b/Editor/Code/_Nodes/SFN_Log.cs similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Log.cs rename to Editor/Code/_Nodes/SFN_Log.cs diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Log.cs.meta b/Editor/Code/_Nodes/SFN_Log.cs.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Log.cs.meta rename to Editor/Code/_Nodes/SFN_Log.cs.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Matrix4x4.cs b/Editor/Code/_Nodes/SFN_Matrix4x4.cs similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Matrix4x4.cs rename to Editor/Code/_Nodes/SFN_Matrix4x4.cs diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Matrix4x4.cs.meta b/Editor/Code/_Nodes/SFN_Matrix4x4.cs.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Matrix4x4.cs.meta rename to Editor/Code/_Nodes/SFN_Matrix4x4.cs.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Matrix4x4Property.cs b/Editor/Code/_Nodes/SFN_Matrix4x4Property.cs similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Matrix4x4Property.cs rename to Editor/Code/_Nodes/SFN_Matrix4x4Property.cs diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Matrix4x4Property.cs.meta b/Editor/Code/_Nodes/SFN_Matrix4x4Property.cs.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Matrix4x4Property.cs.meta rename to Editor/Code/_Nodes/SFN_Matrix4x4Property.cs.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Max.cs b/Editor/Code/_Nodes/SFN_Max.cs similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Max.cs rename to Editor/Code/_Nodes/SFN_Max.cs diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Max.cs.meta b/Editor/Code/_Nodes/SFN_Max.cs.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Max.cs.meta rename to Editor/Code/_Nodes/SFN_Max.cs.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Min.cs b/Editor/Code/_Nodes/SFN_Min.cs similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Min.cs rename to Editor/Code/_Nodes/SFN_Min.cs diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Min.cs.meta b/Editor/Code/_Nodes/SFN_Min.cs.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Min.cs.meta rename to Editor/Code/_Nodes/SFN_Min.cs.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Multiply.cs b/Editor/Code/_Nodes/SFN_Multiply.cs similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Multiply.cs rename to Editor/Code/_Nodes/SFN_Multiply.cs diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Multiply.cs.meta b/Editor/Code/_Nodes/SFN_Multiply.cs.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Multiply.cs.meta rename to Editor/Code/_Nodes/SFN_Multiply.cs.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_MultiplyMatrix.cs b/Editor/Code/_Nodes/SFN_MultiplyMatrix.cs similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_MultiplyMatrix.cs rename to Editor/Code/_Nodes/SFN_MultiplyMatrix.cs diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_MultiplyMatrix.cs.meta b/Editor/Code/_Nodes/SFN_MultiplyMatrix.cs.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_MultiplyMatrix.cs.meta rename to Editor/Code/_Nodes/SFN_MultiplyMatrix.cs.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Negate.cs b/Editor/Code/_Nodes/SFN_Negate.cs similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Negate.cs rename to Editor/Code/_Nodes/SFN_Negate.cs diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Negate.cs.meta b/Editor/Code/_Nodes/SFN_Negate.cs.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Negate.cs.meta rename to Editor/Code/_Nodes/SFN_Negate.cs.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Node_Constant.cs b/Editor/Code/_Nodes/SFN_Node_Constant.cs similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Node_Constant.cs rename to Editor/Code/_Nodes/SFN_Node_Constant.cs diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Node_Constant.cs.meta b/Editor/Code/_Nodes/SFN_Node_Constant.cs.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Node_Constant.cs.meta rename to Editor/Code/_Nodes/SFN_Node_Constant.cs.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Noise.cs b/Editor/Code/_Nodes/SFN_Noise.cs similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Noise.cs rename to Editor/Code/_Nodes/SFN_Noise.cs diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Noise.cs.meta b/Editor/Code/_Nodes/SFN_Noise.cs.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Noise.cs.meta rename to Editor/Code/_Nodes/SFN_Noise.cs.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_NormalBlend.cs b/Editor/Code/_Nodes/SFN_NormalBlend.cs similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_NormalBlend.cs rename to Editor/Code/_Nodes/SFN_NormalBlend.cs diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_NormalBlend.cs.meta b/Editor/Code/_Nodes/SFN_NormalBlend.cs.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_NormalBlend.cs.meta rename to Editor/Code/_Nodes/SFN_NormalBlend.cs.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_NormalVector.cs b/Editor/Code/_Nodes/SFN_NormalVector.cs similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_NormalVector.cs rename to Editor/Code/_Nodes/SFN_NormalVector.cs diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_NormalVector.cs.meta b/Editor/Code/_Nodes/SFN_NormalVector.cs.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_NormalVector.cs.meta rename to Editor/Code/_Nodes/SFN_NormalVector.cs.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Normalize.cs b/Editor/Code/_Nodes/SFN_Normalize.cs similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Normalize.cs rename to Editor/Code/_Nodes/SFN_Normalize.cs diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Normalize.cs.meta b/Editor/Code/_Nodes/SFN_Normalize.cs.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Normalize.cs.meta rename to Editor/Code/_Nodes/SFN_Normalize.cs.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ObjectPosition.cs b/Editor/Code/_Nodes/SFN_ObjectPosition.cs similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ObjectPosition.cs rename to Editor/Code/_Nodes/SFN_ObjectPosition.cs diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ObjectPosition.cs.meta b/Editor/Code/_Nodes/SFN_ObjectPosition.cs.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ObjectPosition.cs.meta rename to Editor/Code/_Nodes/SFN_ObjectPosition.cs.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ObjectScale.cs b/Editor/Code/_Nodes/SFN_ObjectScale.cs similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ObjectScale.cs rename to Editor/Code/_Nodes/SFN_ObjectScale.cs diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ObjectScale.cs.meta b/Editor/Code/_Nodes/SFN_ObjectScale.cs.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ObjectScale.cs.meta rename to Editor/Code/_Nodes/SFN_ObjectScale.cs.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_OneMinus.cs b/Editor/Code/_Nodes/SFN_OneMinus.cs similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_OneMinus.cs rename to Editor/Code/_Nodes/SFN_OneMinus.cs diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_OneMinus.cs.meta b/Editor/Code/_Nodes/SFN_OneMinus.cs.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_OneMinus.cs.meta rename to Editor/Code/_Nodes/SFN_OneMinus.cs.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Panner.cs b/Editor/Code/_Nodes/SFN_Panner.cs similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Panner.cs rename to Editor/Code/_Nodes/SFN_Panner.cs diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Panner.cs.meta b/Editor/Code/_Nodes/SFN_Panner.cs.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Panner.cs.meta rename to Editor/Code/_Nodes/SFN_Panner.cs.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Parallax.cs b/Editor/Code/_Nodes/SFN_Parallax.cs similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Parallax.cs rename to Editor/Code/_Nodes/SFN_Parallax.cs diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Parallax.cs.meta b/Editor/Code/_Nodes/SFN_Parallax.cs.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Parallax.cs.meta rename to Editor/Code/_Nodes/SFN_Parallax.cs.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Phi.cs b/Editor/Code/_Nodes/SFN_Phi.cs similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Phi.cs rename to Editor/Code/_Nodes/SFN_Phi.cs diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Phi.cs.meta b/Editor/Code/_Nodes/SFN_Phi.cs.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Phi.cs.meta rename to Editor/Code/_Nodes/SFN_Phi.cs.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Pi.cs b/Editor/Code/_Nodes/SFN_Pi.cs similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Pi.cs rename to Editor/Code/_Nodes/SFN_Pi.cs diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Pi.cs.meta b/Editor/Code/_Nodes/SFN_Pi.cs.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Pi.cs.meta rename to Editor/Code/_Nodes/SFN_Pi.cs.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_PixelSize.cs b/Editor/Code/_Nodes/SFN_PixelSize.cs similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_PixelSize.cs rename to Editor/Code/_Nodes/SFN_PixelSize.cs diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_PixelSize.cs.meta b/Editor/Code/_Nodes/SFN_PixelSize.cs.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_PixelSize.cs.meta rename to Editor/Code/_Nodes/SFN_PixelSize.cs.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Posterize.cs b/Editor/Code/_Nodes/SFN_Posterize.cs similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Posterize.cs rename to Editor/Code/_Nodes/SFN_Posterize.cs diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Posterize.cs.meta b/Editor/Code/_Nodes/SFN_Posterize.cs.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Posterize.cs.meta rename to Editor/Code/_Nodes/SFN_Posterize.cs.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Power.cs b/Editor/Code/_Nodes/SFN_Power.cs similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Power.cs rename to Editor/Code/_Nodes/SFN_Power.cs diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Power.cs.meta b/Editor/Code/_Nodes/SFN_Power.cs.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Power.cs.meta rename to Editor/Code/_Nodes/SFN_Power.cs.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ProjectionParameters.cs b/Editor/Code/_Nodes/SFN_ProjectionParameters.cs similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ProjectionParameters.cs rename to Editor/Code/_Nodes/SFN_ProjectionParameters.cs diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ProjectionParameters.cs.meta b/Editor/Code/_Nodes/SFN_ProjectionParameters.cs.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ProjectionParameters.cs.meta rename to Editor/Code/_Nodes/SFN_ProjectionParameters.cs.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Reciprocal.cs b/Editor/Code/_Nodes/SFN_Reciprocal.cs similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Reciprocal.cs rename to Editor/Code/_Nodes/SFN_Reciprocal.cs diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Reciprocal.cs.meta b/Editor/Code/_Nodes/SFN_Reciprocal.cs.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Reciprocal.cs.meta rename to Editor/Code/_Nodes/SFN_Reciprocal.cs.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Reflect.cs b/Editor/Code/_Nodes/SFN_Reflect.cs similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Reflect.cs rename to Editor/Code/_Nodes/SFN_Reflect.cs diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Reflect.cs.meta b/Editor/Code/_Nodes/SFN_Reflect.cs.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Reflect.cs.meta rename to Editor/Code/_Nodes/SFN_Reflect.cs.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Relay.cs b/Editor/Code/_Nodes/SFN_Relay.cs similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Relay.cs rename to Editor/Code/_Nodes/SFN_Relay.cs diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Relay.cs.meta b/Editor/Code/_Nodes/SFN_Relay.cs.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Relay.cs.meta rename to Editor/Code/_Nodes/SFN_Relay.cs.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_RemapRange.cs b/Editor/Code/_Nodes/SFN_RemapRange.cs similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_RemapRange.cs rename to Editor/Code/_Nodes/SFN_RemapRange.cs diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_RemapRange.cs.meta b/Editor/Code/_Nodes/SFN_RemapRange.cs.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_RemapRange.cs.meta rename to Editor/Code/_Nodes/SFN_RemapRange.cs.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_RemapRangeAdvanced.cs b/Editor/Code/_Nodes/SFN_RemapRangeAdvanced.cs similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_RemapRangeAdvanced.cs rename to Editor/Code/_Nodes/SFN_RemapRangeAdvanced.cs diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_RemapRangeAdvanced.cs.meta b/Editor/Code/_Nodes/SFN_RemapRangeAdvanced.cs.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_RemapRangeAdvanced.cs.meta rename to Editor/Code/_Nodes/SFN_RemapRangeAdvanced.cs.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_RgbToHsv.cs b/Editor/Code/_Nodes/SFN_RgbToHsv.cs similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_RgbToHsv.cs rename to Editor/Code/_Nodes/SFN_RgbToHsv.cs diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_RgbToHsv.cs.meta b/Editor/Code/_Nodes/SFN_RgbToHsv.cs.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_RgbToHsv.cs.meta rename to Editor/Code/_Nodes/SFN_RgbToHsv.cs.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Root2.cs b/Editor/Code/_Nodes/SFN_Root2.cs similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Root2.cs rename to Editor/Code/_Nodes/SFN_Root2.cs diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Root2.cs.meta b/Editor/Code/_Nodes/SFN_Root2.cs.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Root2.cs.meta rename to Editor/Code/_Nodes/SFN_Root2.cs.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Rotator.cs b/Editor/Code/_Nodes/SFN_Rotator.cs similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Rotator.cs rename to Editor/Code/_Nodes/SFN_Rotator.cs diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Rotator.cs.meta b/Editor/Code/_Nodes/SFN_Rotator.cs.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Rotator.cs.meta rename to Editor/Code/_Nodes/SFN_Rotator.cs.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Round.cs b/Editor/Code/_Nodes/SFN_Round.cs similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Round.cs rename to Editor/Code/_Nodes/SFN_Round.cs diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Round.cs.meta b/Editor/Code/_Nodes/SFN_Round.cs.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Round.cs.meta rename to Editor/Code/_Nodes/SFN_Round.cs.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_SceneColor.cs b/Editor/Code/_Nodes/SFN_SceneColor.cs similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_SceneColor.cs rename to Editor/Code/_Nodes/SFN_SceneColor.cs diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_SceneColor.cs.meta b/Editor/Code/_Nodes/SFN_SceneColor.cs.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_SceneColor.cs.meta rename to Editor/Code/_Nodes/SFN_SceneColor.cs.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_SceneDepth.cs b/Editor/Code/_Nodes/SFN_SceneDepth.cs similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_SceneDepth.cs rename to Editor/Code/_Nodes/SFN_SceneDepth.cs diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_SceneDepth.cs.meta b/Editor/Code/_Nodes/SFN_SceneDepth.cs.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_SceneDepth.cs.meta rename to Editor/Code/_Nodes/SFN_SceneDepth.cs.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ScreenParameters.cs b/Editor/Code/_Nodes/SFN_ScreenParameters.cs similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ScreenParameters.cs rename to Editor/Code/_Nodes/SFN_ScreenParameters.cs diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ScreenParameters.cs.meta b/Editor/Code/_Nodes/SFN_ScreenParameters.cs.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ScreenParameters.cs.meta rename to Editor/Code/_Nodes/SFN_ScreenParameters.cs.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ScreenPos.cs b/Editor/Code/_Nodes/SFN_ScreenPos.cs similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ScreenPos.cs rename to Editor/Code/_Nodes/SFN_ScreenPos.cs diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ScreenPos.cs.meta b/Editor/Code/_Nodes/SFN_ScreenPos.cs.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ScreenPos.cs.meta rename to Editor/Code/_Nodes/SFN_ScreenPos.cs.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Set.cs b/Editor/Code/_Nodes/SFN_Set.cs similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Set.cs rename to Editor/Code/_Nodes/SFN_Set.cs diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Set.cs.meta b/Editor/Code/_Nodes/SFN_Set.cs.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Set.cs.meta rename to Editor/Code/_Nodes/SFN_Set.cs.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Sign.cs b/Editor/Code/_Nodes/SFN_Sign.cs similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Sign.cs rename to Editor/Code/_Nodes/SFN_Sign.cs diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Sign.cs.meta b/Editor/Code/_Nodes/SFN_Sign.cs.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Sign.cs.meta rename to Editor/Code/_Nodes/SFN_Sign.cs.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Sin.cs b/Editor/Code/_Nodes/SFN_Sin.cs similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Sin.cs rename to Editor/Code/_Nodes/SFN_Sin.cs diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Sin.cs.meta b/Editor/Code/_Nodes/SFN_Sin.cs.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Sin.cs.meta rename to Editor/Code/_Nodes/SFN_Sin.cs.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Slider.cs b/Editor/Code/_Nodes/SFN_Slider.cs similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Slider.cs rename to Editor/Code/_Nodes/SFN_Slider.cs diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Slider.cs.meta b/Editor/Code/_Nodes/SFN_Slider.cs.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Slider.cs.meta rename to Editor/Code/_Nodes/SFN_Slider.cs.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Smoothstep.cs b/Editor/Code/_Nodes/SFN_Smoothstep.cs similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Smoothstep.cs rename to Editor/Code/_Nodes/SFN_Smoothstep.cs diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Smoothstep.cs.meta b/Editor/Code/_Nodes/SFN_Smoothstep.cs.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Smoothstep.cs.meta rename to Editor/Code/_Nodes/SFN_Smoothstep.cs.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Sqrt.cs b/Editor/Code/_Nodes/SFN_Sqrt.cs similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Sqrt.cs rename to Editor/Code/_Nodes/SFN_Sqrt.cs diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Sqrt.cs.meta b/Editor/Code/_Nodes/SFN_Sqrt.cs.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Sqrt.cs.meta rename to Editor/Code/_Nodes/SFN_Sqrt.cs.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_StaticBranch.cs b/Editor/Code/_Nodes/SFN_StaticBranch.cs similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_StaticBranch.cs rename to Editor/Code/_Nodes/SFN_StaticBranch.cs diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_StaticBranch.cs.meta b/Editor/Code/_Nodes/SFN_StaticBranch.cs.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_StaticBranch.cs.meta rename to Editor/Code/_Nodes/SFN_StaticBranch.cs.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Step.cs b/Editor/Code/_Nodes/SFN_Step.cs similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Step.cs rename to Editor/Code/_Nodes/SFN_Step.cs diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Step.cs.meta b/Editor/Code/_Nodes/SFN_Step.cs.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Step.cs.meta rename to Editor/Code/_Nodes/SFN_Step.cs.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Subtract.cs b/Editor/Code/_Nodes/SFN_Subtract.cs similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Subtract.cs rename to Editor/Code/_Nodes/SFN_Subtract.cs diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Subtract.cs.meta b/Editor/Code/_Nodes/SFN_Subtract.cs.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Subtract.cs.meta rename to Editor/Code/_Nodes/SFN_Subtract.cs.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_SwitchProperty.cs b/Editor/Code/_Nodes/SFN_SwitchProperty.cs similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_SwitchProperty.cs rename to Editor/Code/_Nodes/SFN_SwitchProperty.cs diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_SwitchProperty.cs.meta b/Editor/Code/_Nodes/SFN_SwitchProperty.cs.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_SwitchProperty.cs.meta rename to Editor/Code/_Nodes/SFN_SwitchProperty.cs.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Tan.cs b/Editor/Code/_Nodes/SFN_Tan.cs similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Tan.cs rename to Editor/Code/_Nodes/SFN_Tan.cs diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Tan.cs.meta b/Editor/Code/_Nodes/SFN_Tan.cs.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Tan.cs.meta rename to Editor/Code/_Nodes/SFN_Tan.cs.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Tangent.cs b/Editor/Code/_Nodes/SFN_Tangent.cs similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Tangent.cs rename to Editor/Code/_Nodes/SFN_Tangent.cs diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Tangent.cs.meta b/Editor/Code/_Nodes/SFN_Tangent.cs.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Tangent.cs.meta rename to Editor/Code/_Nodes/SFN_Tangent.cs.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Tau.cs b/Editor/Code/_Nodes/SFN_Tau.cs similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Tau.cs rename to Editor/Code/_Nodes/SFN_Tau.cs diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Tau.cs.meta b/Editor/Code/_Nodes/SFN_Tau.cs.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Tau.cs.meta rename to Editor/Code/_Nodes/SFN_Tau.cs.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Tex2d.cs b/Editor/Code/_Nodes/SFN_Tex2d.cs similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Tex2d.cs rename to Editor/Code/_Nodes/SFN_Tex2d.cs diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Tex2d.cs.meta b/Editor/Code/_Nodes/SFN_Tex2d.cs.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Tex2d.cs.meta rename to Editor/Code/_Nodes/SFN_Tex2d.cs.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Tex2dAsset.cs b/Editor/Code/_Nodes/SFN_Tex2dAsset.cs similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Tex2dAsset.cs rename to Editor/Code/_Nodes/SFN_Tex2dAsset.cs diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Tex2dAsset.cs.meta b/Editor/Code/_Nodes/SFN_Tex2dAsset.cs.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Tex2dAsset.cs.meta rename to Editor/Code/_Nodes/SFN_Tex2dAsset.cs.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_TexCoord.cs b/Editor/Code/_Nodes/SFN_TexCoord.cs similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_TexCoord.cs rename to Editor/Code/_Nodes/SFN_TexCoord.cs diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_TexCoord.cs.meta b/Editor/Code/_Nodes/SFN_TexCoord.cs.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_TexCoord.cs.meta rename to Editor/Code/_Nodes/SFN_TexCoord.cs.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Time.cs b/Editor/Code/_Nodes/SFN_Time.cs similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Time.cs rename to Editor/Code/_Nodes/SFN_Time.cs diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Time.cs.meta b/Editor/Code/_Nodes/SFN_Time.cs.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Time.cs.meta rename to Editor/Code/_Nodes/SFN_Time.cs.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ToggleProperty.cs b/Editor/Code/_Nodes/SFN_ToggleProperty.cs similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ToggleProperty.cs rename to Editor/Code/_Nodes/SFN_ToggleProperty.cs diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ToggleProperty.cs.meta b/Editor/Code/_Nodes/SFN_ToggleProperty.cs.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ToggleProperty.cs.meta rename to Editor/Code/_Nodes/SFN_ToggleProperty.cs.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Transform.cs b/Editor/Code/_Nodes/SFN_Transform.cs similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Transform.cs rename to Editor/Code/_Nodes/SFN_Transform.cs diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Transform.cs.meta b/Editor/Code/_Nodes/SFN_Transform.cs.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Transform.cs.meta rename to Editor/Code/_Nodes/SFN_Transform.cs.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Transpose.cs b/Editor/Code/_Nodes/SFN_Transpose.cs similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Transpose.cs rename to Editor/Code/_Nodes/SFN_Transpose.cs diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Transpose.cs.meta b/Editor/Code/_Nodes/SFN_Transpose.cs.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Transpose.cs.meta rename to Editor/Code/_Nodes/SFN_Transpose.cs.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Trunc.cs b/Editor/Code/_Nodes/SFN_Trunc.cs similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Trunc.cs rename to Editor/Code/_Nodes/SFN_Trunc.cs diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Trunc.cs.meta b/Editor/Code/_Nodes/SFN_Trunc.cs.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Trunc.cs.meta rename to Editor/Code/_Nodes/SFN_Trunc.cs.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_UVTile.cs b/Editor/Code/_Nodes/SFN_UVTile.cs similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_UVTile.cs rename to Editor/Code/_Nodes/SFN_UVTile.cs diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_UVTile.cs.meta b/Editor/Code/_Nodes/SFN_UVTile.cs.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_UVTile.cs.meta rename to Editor/Code/_Nodes/SFN_UVTile.cs.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ValueProperty.cs b/Editor/Code/_Nodes/SFN_ValueProperty.cs similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ValueProperty.cs rename to Editor/Code/_Nodes/SFN_ValueProperty.cs diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ValueProperty.cs.meta b/Editor/Code/_Nodes/SFN_ValueProperty.cs.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ValueProperty.cs.meta rename to Editor/Code/_Nodes/SFN_ValueProperty.cs.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Vector1.cs b/Editor/Code/_Nodes/SFN_Vector1.cs similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Vector1.cs rename to Editor/Code/_Nodes/SFN_Vector1.cs diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Vector1.cs.meta b/Editor/Code/_Nodes/SFN_Vector1.cs.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Vector1.cs.meta rename to Editor/Code/_Nodes/SFN_Vector1.cs.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Vector2.cs b/Editor/Code/_Nodes/SFN_Vector2.cs similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Vector2.cs rename to Editor/Code/_Nodes/SFN_Vector2.cs diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Vector2.cs.meta b/Editor/Code/_Nodes/SFN_Vector2.cs.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Vector2.cs.meta rename to Editor/Code/_Nodes/SFN_Vector2.cs.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Vector3.cs b/Editor/Code/_Nodes/SFN_Vector3.cs similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Vector3.cs rename to Editor/Code/_Nodes/SFN_Vector3.cs diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Vector3.cs.meta b/Editor/Code/_Nodes/SFN_Vector3.cs.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Vector3.cs.meta rename to Editor/Code/_Nodes/SFN_Vector3.cs.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Vector4.cs b/Editor/Code/_Nodes/SFN_Vector4.cs similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Vector4.cs rename to Editor/Code/_Nodes/SFN_Vector4.cs diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Vector4.cs.meta b/Editor/Code/_Nodes/SFN_Vector4.cs.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Vector4.cs.meta rename to Editor/Code/_Nodes/SFN_Vector4.cs.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Vector4Property.cs b/Editor/Code/_Nodes/SFN_Vector4Property.cs similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Vector4Property.cs rename to Editor/Code/_Nodes/SFN_Vector4Property.cs diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Vector4Property.cs.meta b/Editor/Code/_Nodes/SFN_Vector4Property.cs.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_Vector4Property.cs.meta rename to Editor/Code/_Nodes/SFN_Vector4Property.cs.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_VectorProjection.cs b/Editor/Code/_Nodes/SFN_VectorProjection.cs similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_VectorProjection.cs rename to Editor/Code/_Nodes/SFN_VectorProjection.cs diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_VectorProjection.cs.meta b/Editor/Code/_Nodes/SFN_VectorProjection.cs.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_VectorProjection.cs.meta rename to Editor/Code/_Nodes/SFN_VectorProjection.cs.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_VectorRejection.cs b/Editor/Code/_Nodes/SFN_VectorRejection.cs similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_VectorRejection.cs rename to Editor/Code/_Nodes/SFN_VectorRejection.cs diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_VectorRejection.cs.meta b/Editor/Code/_Nodes/SFN_VectorRejection.cs.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_VectorRejection.cs.meta rename to Editor/Code/_Nodes/SFN_VectorRejection.cs.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_VertexColor.cs b/Editor/Code/_Nodes/SFN_VertexColor.cs similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_VertexColor.cs rename to Editor/Code/_Nodes/SFN_VertexColor.cs diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_VertexColor.cs.meta b/Editor/Code/_Nodes/SFN_VertexColor.cs.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_VertexColor.cs.meta rename to Editor/Code/_Nodes/SFN_VertexColor.cs.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ViewPosition.cs b/Editor/Code/_Nodes/SFN_ViewPosition.cs similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ViewPosition.cs rename to Editor/Code/_Nodes/SFN_ViewPosition.cs diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ViewPosition.cs.meta b/Editor/Code/_Nodes/SFN_ViewPosition.cs.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ViewPosition.cs.meta rename to Editor/Code/_Nodes/SFN_ViewPosition.cs.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ViewReflectionVector.cs b/Editor/Code/_Nodes/SFN_ViewReflectionVector.cs similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ViewReflectionVector.cs rename to Editor/Code/_Nodes/SFN_ViewReflectionVector.cs diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ViewReflectionVector.cs.meta b/Editor/Code/_Nodes/SFN_ViewReflectionVector.cs.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ViewReflectionVector.cs.meta rename to Editor/Code/_Nodes/SFN_ViewReflectionVector.cs.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ViewVector.cs b/Editor/Code/_Nodes/SFN_ViewVector.cs similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ViewVector.cs rename to Editor/Code/_Nodes/SFN_ViewVector.cs diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ViewVector.cs.meta b/Editor/Code/_Nodes/SFN_ViewVector.cs.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SFN_ViewVector.cs.meta rename to Editor/Code/_Nodes/SFN_ViewVector.cs.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SF_Node.cs b/Editor/Code/_Nodes/SF_Node.cs similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SF_Node.cs rename to Editor/Code/_Nodes/SF_Node.cs diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SF_Node.cs.meta b/Editor/Code/_Nodes/SF_Node.cs.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SF_Node.cs.meta rename to Editor/Code/_Nodes/SF_Node.cs.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SF_Node_Arithmetic.cs b/Editor/Code/_Nodes/SF_Node_Arithmetic.cs similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SF_Node_Arithmetic.cs rename to Editor/Code/_Nodes/SF_Node_Arithmetic.cs diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SF_Node_Arithmetic.cs.meta b/Editor/Code/_Nodes/SF_Node_Arithmetic.cs.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SF_Node_Arithmetic.cs.meta rename to Editor/Code/_Nodes/SF_Node_Arithmetic.cs.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SF_Node_Resizeable.cs b/Editor/Code/_Nodes/SF_Node_Resizeable.cs similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SF_Node_Resizeable.cs rename to Editor/Code/_Nodes/SF_Node_Resizeable.cs diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SF_Node_Resizeable.cs.meta b/Editor/Code/_Nodes/SF_Node_Resizeable.cs.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/_Nodes/SF_Node_Resizeable.cs.meta rename to Editor/Code/_Nodes/SF_Node_Resizeable.cs.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_ShaderProperties.meta b/Editor/Code/_ShaderProperties.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/_ShaderProperties.meta rename to Editor/Code/_ShaderProperties.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_ShaderProperties/SFP_Branch.cs b/Editor/Code/_ShaderProperties/SFP_Branch.cs similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/_ShaderProperties/SFP_Branch.cs rename to Editor/Code/_ShaderProperties/SFP_Branch.cs diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_ShaderProperties/SFP_Branch.cs.meta b/Editor/Code/_ShaderProperties/SFP_Branch.cs.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/_ShaderProperties/SFP_Branch.cs.meta rename to Editor/Code/_ShaderProperties/SFP_Branch.cs.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_ShaderProperties/SFP_Color.cs b/Editor/Code/_ShaderProperties/SFP_Color.cs similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/_ShaderProperties/SFP_Color.cs rename to Editor/Code/_ShaderProperties/SFP_Color.cs diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_ShaderProperties/SFP_Color.cs.meta b/Editor/Code/_ShaderProperties/SFP_Color.cs.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/_ShaderProperties/SFP_Color.cs.meta rename to Editor/Code/_ShaderProperties/SFP_Color.cs.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_ShaderProperties/SFP_Cubemap.cs b/Editor/Code/_ShaderProperties/SFP_Cubemap.cs similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/_ShaderProperties/SFP_Cubemap.cs rename to Editor/Code/_ShaderProperties/SFP_Cubemap.cs diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_ShaderProperties/SFP_Cubemap.cs.meta b/Editor/Code/_ShaderProperties/SFP_Cubemap.cs.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/_ShaderProperties/SFP_Cubemap.cs.meta rename to Editor/Code/_ShaderProperties/SFP_Cubemap.cs.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_ShaderProperties/SFP_Matrix4x4Property.cs b/Editor/Code/_ShaderProperties/SFP_Matrix4x4Property.cs similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/_ShaderProperties/SFP_Matrix4x4Property.cs rename to Editor/Code/_ShaderProperties/SFP_Matrix4x4Property.cs diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_ShaderProperties/SFP_Matrix4x4Property.cs.meta b/Editor/Code/_ShaderProperties/SFP_Matrix4x4Property.cs.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/_ShaderProperties/SFP_Matrix4x4Property.cs.meta rename to Editor/Code/_ShaderProperties/SFP_Matrix4x4Property.cs.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_ShaderProperties/SFP_Slider.cs b/Editor/Code/_ShaderProperties/SFP_Slider.cs similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/_ShaderProperties/SFP_Slider.cs rename to Editor/Code/_ShaderProperties/SFP_Slider.cs diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_ShaderProperties/SFP_Slider.cs.meta b/Editor/Code/_ShaderProperties/SFP_Slider.cs.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/_ShaderProperties/SFP_Slider.cs.meta rename to Editor/Code/_ShaderProperties/SFP_Slider.cs.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_ShaderProperties/SFP_SwitchProperty.cs b/Editor/Code/_ShaderProperties/SFP_SwitchProperty.cs similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/_ShaderProperties/SFP_SwitchProperty.cs rename to Editor/Code/_ShaderProperties/SFP_SwitchProperty.cs diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_ShaderProperties/SFP_SwitchProperty.cs.meta b/Editor/Code/_ShaderProperties/SFP_SwitchProperty.cs.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/_ShaderProperties/SFP_SwitchProperty.cs.meta rename to Editor/Code/_ShaderProperties/SFP_SwitchProperty.cs.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_ShaderProperties/SFP_Tex2d.cs b/Editor/Code/_ShaderProperties/SFP_Tex2d.cs similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/_ShaderProperties/SFP_Tex2d.cs rename to Editor/Code/_ShaderProperties/SFP_Tex2d.cs diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_ShaderProperties/SFP_Tex2d.cs.meta b/Editor/Code/_ShaderProperties/SFP_Tex2d.cs.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/_ShaderProperties/SFP_Tex2d.cs.meta rename to Editor/Code/_ShaderProperties/SFP_Tex2d.cs.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_ShaderProperties/SFP_ToggleProperty.cs b/Editor/Code/_ShaderProperties/SFP_ToggleProperty.cs similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/_ShaderProperties/SFP_ToggleProperty.cs rename to Editor/Code/_ShaderProperties/SFP_ToggleProperty.cs diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_ShaderProperties/SFP_ToggleProperty.cs.meta b/Editor/Code/_ShaderProperties/SFP_ToggleProperty.cs.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/_ShaderProperties/SFP_ToggleProperty.cs.meta rename to Editor/Code/_ShaderProperties/SFP_ToggleProperty.cs.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_ShaderProperties/SFP_ValueProperty.cs b/Editor/Code/_ShaderProperties/SFP_ValueProperty.cs similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/_ShaderProperties/SFP_ValueProperty.cs rename to Editor/Code/_ShaderProperties/SFP_ValueProperty.cs diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_ShaderProperties/SFP_ValueProperty.cs.meta b/Editor/Code/_ShaderProperties/SFP_ValueProperty.cs.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/_ShaderProperties/SFP_ValueProperty.cs.meta rename to Editor/Code/_ShaderProperties/SFP_ValueProperty.cs.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_ShaderProperties/SFP_Vector4Property.cs b/Editor/Code/_ShaderProperties/SFP_Vector4Property.cs similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/_ShaderProperties/SFP_Vector4Property.cs rename to Editor/Code/_ShaderProperties/SFP_Vector4Property.cs diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_ShaderProperties/SFP_Vector4Property.cs.meta b/Editor/Code/_ShaderProperties/SFP_Vector4Property.cs.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/_ShaderProperties/SFP_Vector4Property.cs.meta rename to Editor/Code/_ShaderProperties/SFP_Vector4Property.cs.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_ShaderProperties/SF_ShaderProperty.cs b/Editor/Code/_ShaderProperties/SF_ShaderProperty.cs similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/_ShaderProperties/SF_ShaderProperty.cs rename to Editor/Code/_ShaderProperties/SF_ShaderProperty.cs diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_ShaderProperties/SF_ShaderProperty.cs.meta b/Editor/Code/_ShaderProperties/SF_ShaderProperty.cs.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/_ShaderProperties/SF_ShaderProperty.cs.meta rename to Editor/Code/_ShaderProperties/SF_ShaderProperty.cs.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Utility.meta b/Editor/Code/_Utility.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/_Utility.meta rename to Editor/Code/_Utility.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Utility/GUILines.cs b/Editor/Code/_Utility/GUILines.cs similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/_Utility/GUILines.cs rename to Editor/Code/_Utility/GUILines.cs diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Utility/GUILines.cs.meta b/Editor/Code/_Utility/GUILines.cs.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/_Utility/GUILines.cs.meta rename to Editor/Code/_Utility/GUILines.cs.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Utility/SF_Blit.cs b/Editor/Code/_Utility/SF_Blit.cs similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/_Utility/SF_Blit.cs rename to Editor/Code/_Utility/SF_Blit.cs diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Utility/SF_Blit.cs.meta b/Editor/Code/_Utility/SF_Blit.cs.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/_Utility/SF_Blit.cs.meta rename to Editor/Code/_Utility/SF_Blit.cs.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Utility/SF_ColorPicker.cs b/Editor/Code/_Utility/SF_ColorPicker.cs similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/_Utility/SF_ColorPicker.cs rename to Editor/Code/_Utility/SF_ColorPicker.cs diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Utility/SF_ColorPicker.cs.meta b/Editor/Code/_Utility/SF_ColorPicker.cs.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/_Utility/SF_ColorPicker.cs.meta rename to Editor/Code/_Utility/SF_ColorPicker.cs.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Utility/SF_Debug.cs b/Editor/Code/_Utility/SF_Debug.cs similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/_Utility/SF_Debug.cs rename to Editor/Code/_Utility/SF_Debug.cs diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Utility/SF_Debug.cs.meta b/Editor/Code/_Utility/SF_Debug.cs.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/_Utility/SF_Debug.cs.meta rename to Editor/Code/_Utility/SF_Debug.cs.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Utility/SF_DraggableSeparator.cs b/Editor/Code/_Utility/SF_DraggableSeparator.cs similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/_Utility/SF_DraggableSeparator.cs rename to Editor/Code/_Utility/SF_DraggableSeparator.cs diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Utility/SF_DraggableSeparator.cs.meta b/Editor/Code/_Utility/SF_DraggableSeparator.cs.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/_Utility/SF_DraggableSeparator.cs.meta rename to Editor/Code/_Utility/SF_DraggableSeparator.cs.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Utility/SF_Extensions.cs b/Editor/Code/_Utility/SF_Extensions.cs similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/_Utility/SF_Extensions.cs rename to Editor/Code/_Utility/SF_Extensions.cs diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Utility/SF_Extensions.cs.meta b/Editor/Code/_Utility/SF_Extensions.cs.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/_Utility/SF_Extensions.cs.meta rename to Editor/Code/_Utility/SF_Extensions.cs.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Utility/SF_GUI.cs b/Editor/Code/_Utility/SF_GUI.cs similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/_Utility/SF_GUI.cs rename to Editor/Code/_Utility/SF_GUI.cs diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Utility/SF_GUI.cs.meta b/Editor/Code/_Utility/SF_GUI.cs.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/_Utility/SF_GUI.cs.meta rename to Editor/Code/_Utility/SF_GUI.cs.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Utility/SF_Link.cs b/Editor/Code/_Utility/SF_Link.cs similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/_Utility/SF_Link.cs rename to Editor/Code/_Utility/SF_Link.cs diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Utility/SF_Link.cs.meta b/Editor/Code/_Utility/SF_Link.cs.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/_Utility/SF_Link.cs.meta rename to Editor/Code/_Utility/SF_Link.cs.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Utility/SF_MinMax.cs b/Editor/Code/_Utility/SF_MinMax.cs similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/_Utility/SF_MinMax.cs rename to Editor/Code/_Utility/SF_MinMax.cs diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Utility/SF_MinMax.cs.meta b/Editor/Code/_Utility/SF_MinMax.cs.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/_Utility/SF_MinMax.cs.meta rename to Editor/Code/_Utility/SF_MinMax.cs.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Utility/SF_Resources.cs b/Editor/Code/_Utility/SF_Resources.cs similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/_Utility/SF_Resources.cs rename to Editor/Code/_Utility/SF_Resources.cs diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Utility/SF_Resources.cs.meta b/Editor/Code/_Utility/SF_Resources.cs.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/_Utility/SF_Resources.cs.meta rename to Editor/Code/_Utility/SF_Resources.cs.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Utility/SF_Styles.cs b/Editor/Code/_Utility/SF_Styles.cs similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/_Utility/SF_Styles.cs rename to Editor/Code/_Utility/SF_Styles.cs diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Utility/SF_Styles.cs.meta b/Editor/Code/_Utility/SF_Styles.cs.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/_Utility/SF_Styles.cs.meta rename to Editor/Code/_Utility/SF_Styles.cs.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Utility/SF_Tools.cs b/Editor/Code/_Utility/SF_Tools.cs similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/_Utility/SF_Tools.cs rename to Editor/Code/_Utility/SF_Tools.cs diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Utility/SF_Tools.cs.meta b/Editor/Code/_Utility/SF_Tools.cs.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/_Utility/SF_Tools.cs.meta rename to Editor/Code/_Utility/SF_Tools.cs.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Utility/SF_Web.cs b/Editor/Code/_Utility/SF_Web.cs similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/_Utility/SF_Web.cs rename to Editor/Code/_Utility/SF_Web.cs diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Utility/SF_Web.cs.meta b/Editor/Code/_Utility/SF_Web.cs.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/_Utility/SF_Web.cs.meta rename to Editor/Code/_Utility/SF_Web.cs.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Utility/SF_ZoomArea.cs b/Editor/Code/_Utility/SF_ZoomArea.cs similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/_Utility/SF_ZoomArea.cs rename to Editor/Code/_Utility/SF_ZoomArea.cs diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Utility/SF_ZoomArea.cs.meta b/Editor/Code/_Utility/SF_ZoomArea.cs.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/_Utility/SF_ZoomArea.cs.meta rename to Editor/Code/_Utility/SF_ZoomArea.cs.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Utility/SerializableDictionary.cs b/Editor/Code/_Utility/SerializableDictionary.cs similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/_Utility/SerializableDictionary.cs rename to Editor/Code/_Utility/SerializableDictionary.cs diff --git a/Shader Forge/Assets/ShaderForge/Editor/Code/_Utility/SerializableDictionary.cs.meta b/Editor/Code/_Utility/SerializableDictionary.cs.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/Code/_Utility/SerializableDictionary.cs.meta rename to Editor/Code/_Utility/SerializableDictionary.cs.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources.meta b/Editor/InternalResources.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources.meta rename to Editor/InternalResources.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering.meta b/Editor/InternalResources/GPU Rendering.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering.meta rename to Editor/InternalResources/GPU Rendering.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/Common.meta b/Editor/InternalResources/GPURendering/Common.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/Common.meta rename to Editor/InternalResources/GPURendering/Common.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/Common/ExtractChannel.shader b/Editor/InternalResources/GPURendering/Common/ExtractChannel.shader similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/Common/ExtractChannel.shader rename to Editor/InternalResources/GPURendering/Common/ExtractChannel.shader diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/Common/ExtractChannel.shader.meta b/Editor/InternalResources/GPURendering/Common/ExtractChannel.shader.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/Common/ExtractChannel.shader.meta rename to Editor/InternalResources/GPURendering/Common/ExtractChannel.shader.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/Common/FillColor.shader b/Editor/InternalResources/GPURendering/Common/FillColor.shader similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/Common/FillColor.shader rename to Editor/InternalResources/GPURendering/Common/FillColor.shader diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/Common/FillColor.shader.meta b/Editor/InternalResources/GPURendering/Common/FillColor.shader.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/Common/FillColor.shader.meta rename to Editor/InternalResources/GPURendering/Common/FillColor.shader.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/Common/ReadPackedData.shader b/Editor/InternalResources/GPURendering/Common/ReadPackedData.shader similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/Common/ReadPackedData.shader rename to Editor/InternalResources/GPURendering/Common/ReadPackedData.shader diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/Common/ReadPackedData.shader.meta b/Editor/InternalResources/GPURendering/Common/ReadPackedData.shader.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/Common/ReadPackedData.shader.meta rename to Editor/InternalResources/GPURendering/Common/ReadPackedData.shader.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Abs.meta b/Editor/InternalResources/GPURendering/SFN_Abs.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Abs.meta rename to Editor/InternalResources/GPURendering/SFN_Abs.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Abs/SFN_Abs.shader b/Editor/InternalResources/GPURendering/SFN_Abs/SFN_Abs.shader similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Abs/SFN_Abs.shader rename to Editor/InternalResources/GPURendering/SFN_Abs/SFN_Abs.shader diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Abs/SFN_Abs.shader.meta b/Editor/InternalResources/GPURendering/SFN_Abs/SFN_Abs.shader.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Abs/SFN_Abs.shader.meta rename to Editor/InternalResources/GPURendering/SFN_Abs/SFN_Abs.shader.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Add.meta b/Editor/InternalResources/GPURendering/SFN_Add.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Add.meta rename to Editor/InternalResources/GPURendering/SFN_Add.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Add/SFN_Add_2.shader b/Editor/InternalResources/GPURendering/SFN_Add/SFN_Add_2.shader similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Add/SFN_Add_2.shader rename to Editor/InternalResources/GPURendering/SFN_Add/SFN_Add_2.shader diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Add/SFN_Add_2.shader.meta b/Editor/InternalResources/GPURendering/SFN_Add/SFN_Add_2.shader.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Add/SFN_Add_2.shader.meta rename to Editor/InternalResources/GPURendering/SFN_Add/SFN_Add_2.shader.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Add/SFN_Add_3.shader b/Editor/InternalResources/GPURendering/SFN_Add/SFN_Add_3.shader similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Add/SFN_Add_3.shader rename to Editor/InternalResources/GPURendering/SFN_Add/SFN_Add_3.shader diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Add/SFN_Add_3.shader.meta b/Editor/InternalResources/GPURendering/SFN_Add/SFN_Add_3.shader.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Add/SFN_Add_3.shader.meta rename to Editor/InternalResources/GPURendering/SFN_Add/SFN_Add_3.shader.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Add/SFN_Add_4.shader b/Editor/InternalResources/GPURendering/SFN_Add/SFN_Add_4.shader similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Add/SFN_Add_4.shader rename to Editor/InternalResources/GPURendering/SFN_Add/SFN_Add_4.shader diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Add/SFN_Add_4.shader.meta b/Editor/InternalResources/GPURendering/SFN_Add/SFN_Add_4.shader.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Add/SFN_Add_4.shader.meta rename to Editor/InternalResources/GPURendering/SFN_Add/SFN_Add_4.shader.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Add/SFN_Add_5.shader b/Editor/InternalResources/GPURendering/SFN_Add/SFN_Add_5.shader similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Add/SFN_Add_5.shader rename to Editor/InternalResources/GPURendering/SFN_Add/SFN_Add_5.shader diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Add/SFN_Add_5.shader.meta b/Editor/InternalResources/GPURendering/SFN_Add/SFN_Add_5.shader.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Add/SFN_Add_5.shader.meta rename to Editor/InternalResources/GPURendering/SFN_Add/SFN_Add_5.shader.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_AmbientLight.meta b/Editor/InternalResources/GPURendering/SFN_AmbientLight.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_AmbientLight.meta rename to Editor/InternalResources/GPURendering/SFN_AmbientLight.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_AmbientLight/SFN_AmbientLight.shader b/Editor/InternalResources/GPURendering/SFN_AmbientLight/SFN_AmbientLight.shader similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_AmbientLight/SFN_AmbientLight.shader rename to Editor/InternalResources/GPURendering/SFN_AmbientLight/SFN_AmbientLight.shader diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_AmbientLight/SFN_AmbientLight.shader.meta b/Editor/InternalResources/GPURendering/SFN_AmbientLight/SFN_AmbientLight.shader.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_AmbientLight/SFN_AmbientLight.shader.meta rename to Editor/InternalResources/GPURendering/SFN_AmbientLight/SFN_AmbientLight.shader.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Append.meta b/Editor/InternalResources/GPURendering/SFN_Append.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Append.meta rename to Editor/InternalResources/GPURendering/SFN_Append.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Append/SFN_Append.shader b/Editor/InternalResources/GPURendering/SFN_Append/SFN_Append.shader similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Append/SFN_Append.shader rename to Editor/InternalResources/GPURendering/SFN_Append/SFN_Append.shader diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Append/SFN_Append.shader.meta b/Editor/InternalResources/GPURendering/SFN_Append/SFN_Append.shader.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Append/SFN_Append.shader.meta rename to Editor/InternalResources/GPURendering/SFN_Append/SFN_Append.shader.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_ArcCos.meta b/Editor/InternalResources/GPURendering/SFN_ArcCos.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_ArcCos.meta rename to Editor/InternalResources/GPURendering/SFN_ArcCos.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_ArcCos/SFN_ArcCos.shader b/Editor/InternalResources/GPURendering/SFN_ArcCos/SFN_ArcCos.shader similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_ArcCos/SFN_ArcCos.shader rename to Editor/InternalResources/GPURendering/SFN_ArcCos/SFN_ArcCos.shader diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_ArcCos/SFN_ArcCos.shader.meta b/Editor/InternalResources/GPURendering/SFN_ArcCos/SFN_ArcCos.shader.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_ArcCos/SFN_ArcCos.shader.meta rename to Editor/InternalResources/GPURendering/SFN_ArcCos/SFN_ArcCos.shader.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_ArcSin.meta b/Editor/InternalResources/GPURendering/SFN_ArcSin.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_ArcSin.meta rename to Editor/InternalResources/GPURendering/SFN_ArcSin.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_ArcSin/SFN_ArcSin.shader b/Editor/InternalResources/GPURendering/SFN_ArcSin/SFN_ArcSin.shader similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_ArcSin/SFN_ArcSin.shader rename to Editor/InternalResources/GPURendering/SFN_ArcSin/SFN_ArcSin.shader diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_ArcSin/SFN_ArcSin.shader.meta b/Editor/InternalResources/GPURendering/SFN_ArcSin/SFN_ArcSin.shader.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_ArcSin/SFN_ArcSin.shader.meta rename to Editor/InternalResources/GPURendering/SFN_ArcSin/SFN_ArcSin.shader.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_ArcTan.meta b/Editor/InternalResources/GPURendering/SFN_ArcTan.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_ArcTan.meta rename to Editor/InternalResources/GPURendering/SFN_ArcTan.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_ArcTan/SFN_ArcTan.shader b/Editor/InternalResources/GPURendering/SFN_ArcTan/SFN_ArcTan.shader similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_ArcTan/SFN_ArcTan.shader rename to Editor/InternalResources/GPURendering/SFN_ArcTan/SFN_ArcTan.shader diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_ArcTan/SFN_ArcTan.shader.meta b/Editor/InternalResources/GPURendering/SFN_ArcTan/SFN_ArcTan.shader.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_ArcTan/SFN_ArcTan.shader.meta rename to Editor/InternalResources/GPURendering/SFN_ArcTan/SFN_ArcTan.shader.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_ArcTan2.meta b/Editor/InternalResources/GPURendering/SFN_ArcTan2.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_ArcTan2.meta rename to Editor/InternalResources/GPURendering/SFN_ArcTan2.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_ArcTan2/SFN_ArcTan2_NOTO.shader b/Editor/InternalResources/GPURendering/SFN_ArcTan2/SFN_ArcTan2_NOTO.shader similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_ArcTan2/SFN_ArcTan2_NOTO.shader rename to Editor/InternalResources/GPURendering/SFN_ArcTan2/SFN_ArcTan2_NOTO.shader diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_ArcTan2/SFN_ArcTan2_NOTO.shader.meta b/Editor/InternalResources/GPURendering/SFN_ArcTan2/SFN_ArcTan2_NOTO.shader.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_ArcTan2/SFN_ArcTan2_NOTO.shader.meta rename to Editor/InternalResources/GPURendering/SFN_ArcTan2/SFN_ArcTan2_NOTO.shader.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_ArcTan2/SFN_ArcTan2_NPTP.shader b/Editor/InternalResources/GPURendering/SFN_ArcTan2/SFN_ArcTan2_NPTP.shader similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_ArcTan2/SFN_ArcTan2_NPTP.shader rename to Editor/InternalResources/GPURendering/SFN_ArcTan2/SFN_ArcTan2_NPTP.shader diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_ArcTan2/SFN_ArcTan2_NPTP.shader.meta b/Editor/InternalResources/GPURendering/SFN_ArcTan2/SFN_ArcTan2_NPTP.shader.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_ArcTan2/SFN_ArcTan2_NPTP.shader.meta rename to Editor/InternalResources/GPURendering/SFN_ArcTan2/SFN_ArcTan2_NPTP.shader.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_ArcTan2/SFN_ArcTan2_ZTO.shader b/Editor/InternalResources/GPURendering/SFN_ArcTan2/SFN_ArcTan2_ZTO.shader similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_ArcTan2/SFN_ArcTan2_ZTO.shader rename to Editor/InternalResources/GPURendering/SFN_ArcTan2/SFN_ArcTan2_ZTO.shader diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_ArcTan2/SFN_ArcTan2_ZTO.shader.meta b/Editor/InternalResources/GPURendering/SFN_ArcTan2/SFN_ArcTan2_ZTO.shader.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_ArcTan2/SFN_ArcTan2_ZTO.shader.meta rename to Editor/InternalResources/GPURendering/SFN_ArcTan2/SFN_ArcTan2_ZTO.shader.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_ArcTan2/SFN_ArcTan2_ZTOW.shader b/Editor/InternalResources/GPURendering/SFN_ArcTan2/SFN_ArcTan2_ZTOW.shader similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_ArcTan2/SFN_ArcTan2_ZTOW.shader rename to Editor/InternalResources/GPURendering/SFN_ArcTan2/SFN_ArcTan2_ZTOW.shader diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_ArcTan2/SFN_ArcTan2_ZTOW.shader.meta b/Editor/InternalResources/GPURendering/SFN_ArcTan2/SFN_ArcTan2_ZTOW.shader.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_ArcTan2/SFN_ArcTan2_ZTOW.shader.meta rename to Editor/InternalResources/GPURendering/SFN_ArcTan2/SFN_ArcTan2_ZTOW.shader.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Bitangent.meta b/Editor/InternalResources/GPURendering/SFN_Bitangent.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Bitangent.meta rename to Editor/InternalResources/GPURendering/SFN_Bitangent.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Bitangent/SFN_Bitangent.shader b/Editor/InternalResources/GPURendering/SFN_Bitangent/SFN_Bitangent.shader similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Bitangent/SFN_Bitangent.shader rename to Editor/InternalResources/GPURendering/SFN_Bitangent/SFN_Bitangent.shader diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Bitangent/SFN_Bitangent.shader.meta b/Editor/InternalResources/GPURendering/SFN_Bitangent/SFN_Bitangent.shader.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Bitangent/SFN_Bitangent.shader.meta rename to Editor/InternalResources/GPURendering/SFN_Bitangent/SFN_Bitangent.shader.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Blend.meta b/Editor/InternalResources/GPURendering/SFN_Blend.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Blend.meta rename to Editor/InternalResources/GPURendering/SFN_Blend.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Blend/SFN_Blend_ColorBurn.shader b/Editor/InternalResources/GPURendering/SFN_Blend/SFN_Blend_ColorBurn.shader similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Blend/SFN_Blend_ColorBurn.shader rename to Editor/InternalResources/GPURendering/SFN_Blend/SFN_Blend_ColorBurn.shader diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Blend/SFN_Blend_ColorBurn.shader.meta b/Editor/InternalResources/GPURendering/SFN_Blend/SFN_Blend_ColorBurn.shader.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Blend/SFN_Blend_ColorBurn.shader.meta rename to Editor/InternalResources/GPURendering/SFN_Blend/SFN_Blend_ColorBurn.shader.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Blend/SFN_Blend_ColorDodge.shader b/Editor/InternalResources/GPURendering/SFN_Blend/SFN_Blend_ColorDodge.shader similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Blend/SFN_Blend_ColorDodge.shader rename to Editor/InternalResources/GPURendering/SFN_Blend/SFN_Blend_ColorDodge.shader diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Blend/SFN_Blend_ColorDodge.shader.meta b/Editor/InternalResources/GPURendering/SFN_Blend/SFN_Blend_ColorDodge.shader.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Blend/SFN_Blend_ColorDodge.shader.meta rename to Editor/InternalResources/GPURendering/SFN_Blend/SFN_Blend_ColorDodge.shader.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Blend/SFN_Blend_Darken.shader b/Editor/InternalResources/GPURendering/SFN_Blend/SFN_Blend_Darken.shader similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Blend/SFN_Blend_Darken.shader rename to Editor/InternalResources/GPURendering/SFN_Blend/SFN_Blend_Darken.shader diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Blend/SFN_Blend_Darken.shader.meta b/Editor/InternalResources/GPURendering/SFN_Blend/SFN_Blend_Darken.shader.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Blend/SFN_Blend_Darken.shader.meta rename to Editor/InternalResources/GPURendering/SFN_Blend/SFN_Blend_Darken.shader.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Blend/SFN_Blend_Difference.shader b/Editor/InternalResources/GPURendering/SFN_Blend/SFN_Blend_Difference.shader similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Blend/SFN_Blend_Difference.shader rename to Editor/InternalResources/GPURendering/SFN_Blend/SFN_Blend_Difference.shader diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Blend/SFN_Blend_Difference.shader.meta b/Editor/InternalResources/GPURendering/SFN_Blend/SFN_Blend_Difference.shader.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Blend/SFN_Blend_Difference.shader.meta rename to Editor/InternalResources/GPURendering/SFN_Blend/SFN_Blend_Difference.shader.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Blend/SFN_Blend_Divide.shader b/Editor/InternalResources/GPURendering/SFN_Blend/SFN_Blend_Divide.shader similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Blend/SFN_Blend_Divide.shader rename to Editor/InternalResources/GPURendering/SFN_Blend/SFN_Blend_Divide.shader diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Blend/SFN_Blend_Divide.shader.meta b/Editor/InternalResources/GPURendering/SFN_Blend/SFN_Blend_Divide.shader.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Blend/SFN_Blend_Divide.shader.meta rename to Editor/InternalResources/GPURendering/SFN_Blend/SFN_Blend_Divide.shader.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Blend/SFN_Blend_Exclusion.shader b/Editor/InternalResources/GPURendering/SFN_Blend/SFN_Blend_Exclusion.shader similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Blend/SFN_Blend_Exclusion.shader rename to Editor/InternalResources/GPURendering/SFN_Blend/SFN_Blend_Exclusion.shader diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Blend/SFN_Blend_Exclusion.shader.meta b/Editor/InternalResources/GPURendering/SFN_Blend/SFN_Blend_Exclusion.shader.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Blend/SFN_Blend_Exclusion.shader.meta rename to Editor/InternalResources/GPURendering/SFN_Blend/SFN_Blend_Exclusion.shader.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Blend/SFN_Blend_HardLight.shader b/Editor/InternalResources/GPURendering/SFN_Blend/SFN_Blend_HardLight.shader similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Blend/SFN_Blend_HardLight.shader rename to Editor/InternalResources/GPURendering/SFN_Blend/SFN_Blend_HardLight.shader diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Blend/SFN_Blend_HardLight.shader.meta b/Editor/InternalResources/GPURendering/SFN_Blend/SFN_Blend_HardLight.shader.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Blend/SFN_Blend_HardLight.shader.meta rename to Editor/InternalResources/GPURendering/SFN_Blend/SFN_Blend_HardLight.shader.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Blend/SFN_Blend_HardMix.shader b/Editor/InternalResources/GPURendering/SFN_Blend/SFN_Blend_HardMix.shader similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Blend/SFN_Blend_HardMix.shader rename to Editor/InternalResources/GPURendering/SFN_Blend/SFN_Blend_HardMix.shader diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Blend/SFN_Blend_HardMix.shader.meta b/Editor/InternalResources/GPURendering/SFN_Blend/SFN_Blend_HardMix.shader.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Blend/SFN_Blend_HardMix.shader.meta rename to Editor/InternalResources/GPURendering/SFN_Blend/SFN_Blend_HardMix.shader.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Blend/SFN_Blend_Lighten.shader b/Editor/InternalResources/GPURendering/SFN_Blend/SFN_Blend_Lighten.shader similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Blend/SFN_Blend_Lighten.shader rename to Editor/InternalResources/GPURendering/SFN_Blend/SFN_Blend_Lighten.shader diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Blend/SFN_Blend_Lighten.shader.meta b/Editor/InternalResources/GPURendering/SFN_Blend/SFN_Blend_Lighten.shader.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Blend/SFN_Blend_Lighten.shader.meta rename to Editor/InternalResources/GPURendering/SFN_Blend/SFN_Blend_Lighten.shader.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Blend/SFN_Blend_LinearBurn.shader b/Editor/InternalResources/GPURendering/SFN_Blend/SFN_Blend_LinearBurn.shader similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Blend/SFN_Blend_LinearBurn.shader rename to Editor/InternalResources/GPURendering/SFN_Blend/SFN_Blend_LinearBurn.shader diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Blend/SFN_Blend_LinearBurn.shader.meta b/Editor/InternalResources/GPURendering/SFN_Blend/SFN_Blend_LinearBurn.shader.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Blend/SFN_Blend_LinearBurn.shader.meta rename to Editor/InternalResources/GPURendering/SFN_Blend/SFN_Blend_LinearBurn.shader.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Blend/SFN_Blend_LinearDodge.shader b/Editor/InternalResources/GPURendering/SFN_Blend/SFN_Blend_LinearDodge.shader similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Blend/SFN_Blend_LinearDodge.shader rename to Editor/InternalResources/GPURendering/SFN_Blend/SFN_Blend_LinearDodge.shader diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Blend/SFN_Blend_LinearDodge.shader.meta b/Editor/InternalResources/GPURendering/SFN_Blend/SFN_Blend_LinearDodge.shader.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Blend/SFN_Blend_LinearDodge.shader.meta rename to Editor/InternalResources/GPURendering/SFN_Blend/SFN_Blend_LinearDodge.shader.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Blend/SFN_Blend_LinearLight.shader b/Editor/InternalResources/GPURendering/SFN_Blend/SFN_Blend_LinearLight.shader similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Blend/SFN_Blend_LinearLight.shader rename to Editor/InternalResources/GPURendering/SFN_Blend/SFN_Blend_LinearLight.shader diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Blend/SFN_Blend_LinearLight.shader.meta b/Editor/InternalResources/GPURendering/SFN_Blend/SFN_Blend_LinearLight.shader.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Blend/SFN_Blend_LinearLight.shader.meta rename to Editor/InternalResources/GPURendering/SFN_Blend/SFN_Blend_LinearLight.shader.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Blend/SFN_Blend_Multiply.shader b/Editor/InternalResources/GPURendering/SFN_Blend/SFN_Blend_Multiply.shader similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Blend/SFN_Blend_Multiply.shader rename to Editor/InternalResources/GPURendering/SFN_Blend/SFN_Blend_Multiply.shader diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Blend/SFN_Blend_Multiply.shader.meta b/Editor/InternalResources/GPURendering/SFN_Blend/SFN_Blend_Multiply.shader.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Blend/SFN_Blend_Multiply.shader.meta rename to Editor/InternalResources/GPURendering/SFN_Blend/SFN_Blend_Multiply.shader.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Blend/SFN_Blend_Overlay.shader b/Editor/InternalResources/GPURendering/SFN_Blend/SFN_Blend_Overlay.shader similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Blend/SFN_Blend_Overlay.shader rename to Editor/InternalResources/GPURendering/SFN_Blend/SFN_Blend_Overlay.shader diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Blend/SFN_Blend_Overlay.shader.meta b/Editor/InternalResources/GPURendering/SFN_Blend/SFN_Blend_Overlay.shader.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Blend/SFN_Blend_Overlay.shader.meta rename to Editor/InternalResources/GPURendering/SFN_Blend/SFN_Blend_Overlay.shader.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Blend/SFN_Blend_PinLight.shader b/Editor/InternalResources/GPURendering/SFN_Blend/SFN_Blend_PinLight.shader similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Blend/SFN_Blend_PinLight.shader rename to Editor/InternalResources/GPURendering/SFN_Blend/SFN_Blend_PinLight.shader diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Blend/SFN_Blend_PinLight.shader.meta b/Editor/InternalResources/GPURendering/SFN_Blend/SFN_Blend_PinLight.shader.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Blend/SFN_Blend_PinLight.shader.meta rename to Editor/InternalResources/GPURendering/SFN_Blend/SFN_Blend_PinLight.shader.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Blend/SFN_Blend_Screen.shader b/Editor/InternalResources/GPURendering/SFN_Blend/SFN_Blend_Screen.shader similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Blend/SFN_Blend_Screen.shader rename to Editor/InternalResources/GPURendering/SFN_Blend/SFN_Blend_Screen.shader diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Blend/SFN_Blend_Screen.shader.meta b/Editor/InternalResources/GPURendering/SFN_Blend/SFN_Blend_Screen.shader.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Blend/SFN_Blend_Screen.shader.meta rename to Editor/InternalResources/GPURendering/SFN_Blend/SFN_Blend_Screen.shader.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Blend/SFN_Blend_Subtract.shader b/Editor/InternalResources/GPURendering/SFN_Blend/SFN_Blend_Subtract.shader similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Blend/SFN_Blend_Subtract.shader rename to Editor/InternalResources/GPURendering/SFN_Blend/SFN_Blend_Subtract.shader diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Blend/SFN_Blend_Subtract.shader.meta b/Editor/InternalResources/GPURendering/SFN_Blend/SFN_Blend_Subtract.shader.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Blend/SFN_Blend_Subtract.shader.meta rename to Editor/InternalResources/GPURendering/SFN_Blend/SFN_Blend_Subtract.shader.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Blend/SFN_Blend_VividLight.shader b/Editor/InternalResources/GPURendering/SFN_Blend/SFN_Blend_VividLight.shader similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Blend/SFN_Blend_VividLight.shader rename to Editor/InternalResources/GPURendering/SFN_Blend/SFN_Blend_VividLight.shader diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Blend/SFN_Blend_VividLight.shader.meta b/Editor/InternalResources/GPURendering/SFN_Blend/SFN_Blend_VividLight.shader.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Blend/SFN_Blend_VividLight.shader.meta rename to Editor/InternalResources/GPURendering/SFN_Blend/SFN_Blend_VividLight.shader.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Ceil.meta b/Editor/InternalResources/GPURendering/SFN_Ceil.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Ceil.meta rename to Editor/InternalResources/GPURendering/SFN_Ceil.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Ceil/SFN_Ceil.shader b/Editor/InternalResources/GPURendering/SFN_Ceil/SFN_Ceil.shader similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Ceil/SFN_Ceil.shader rename to Editor/InternalResources/GPURendering/SFN_Ceil/SFN_Ceil.shader diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Ceil/SFN_Ceil.shader.meta b/Editor/InternalResources/GPURendering/SFN_Ceil/SFN_Ceil.shader.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Ceil/SFN_Ceil.shader.meta rename to Editor/InternalResources/GPURendering/SFN_Ceil/SFN_Ceil.shader.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_ChannelBlend.meta b/Editor/InternalResources/GPURendering/SFN_ChannelBlend.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_ChannelBlend.meta rename to Editor/InternalResources/GPURendering/SFN_ChannelBlend.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_ChannelBlend/SFN_ChannelBlend.shader b/Editor/InternalResources/GPURendering/SFN_ChannelBlend/SFN_ChannelBlend.shader similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_ChannelBlend/SFN_ChannelBlend.shader rename to Editor/InternalResources/GPURendering/SFN_ChannelBlend/SFN_ChannelBlend.shader diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_ChannelBlend/SFN_ChannelBlend.shader.meta b/Editor/InternalResources/GPURendering/SFN_ChannelBlend/SFN_ChannelBlend.shader.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_ChannelBlend/SFN_ChannelBlend.shader.meta rename to Editor/InternalResources/GPURendering/SFN_ChannelBlend/SFN_ChannelBlend.shader.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Clamp.meta b/Editor/InternalResources/GPURendering/SFN_Clamp.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Clamp.meta rename to Editor/InternalResources/GPURendering/SFN_Clamp.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Clamp/SFN_Clamp.shader b/Editor/InternalResources/GPURendering/SFN_Clamp/SFN_Clamp.shader similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Clamp/SFN_Clamp.shader rename to Editor/InternalResources/GPURendering/SFN_Clamp/SFN_Clamp.shader diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Clamp/SFN_Clamp.shader.meta b/Editor/InternalResources/GPURendering/SFN_Clamp/SFN_Clamp.shader.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Clamp/SFN_Clamp.shader.meta rename to Editor/InternalResources/GPURendering/SFN_Clamp/SFN_Clamp.shader.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Clamp01.meta b/Editor/InternalResources/GPURendering/SFN_Clamp01.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Clamp01.meta rename to Editor/InternalResources/GPURendering/SFN_Clamp01.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Clamp01/SFN_Clamp01.shader b/Editor/InternalResources/GPURendering/SFN_Clamp01/SFN_Clamp01.shader similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Clamp01/SFN_Clamp01.shader rename to Editor/InternalResources/GPURendering/SFN_Clamp01/SFN_Clamp01.shader diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Clamp01/SFN_Clamp01.shader.meta b/Editor/InternalResources/GPURendering/SFN_Clamp01/SFN_Clamp01.shader.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Clamp01/SFN_Clamp01.shader.meta rename to Editor/InternalResources/GPURendering/SFN_Clamp01/SFN_Clamp01.shader.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Code.meta b/Editor/InternalResources/GPURendering/SFN_Code.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Code.meta rename to Editor/InternalResources/GPURendering/SFN_Code.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Code/SFN_Code.shader b/Editor/InternalResources/GPURendering/SFN_Code/SFN_Code.shader similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Code/SFN_Code.shader rename to Editor/InternalResources/GPURendering/SFN_Code/SFN_Code.shader diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Code/SFN_Code.shader.meta b/Editor/InternalResources/GPURendering/SFN_Code/SFN_Code.shader.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Code/SFN_Code.shader.meta rename to Editor/InternalResources/GPURendering/SFN_Code/SFN_Code.shader.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_ComponentMask.meta b/Editor/InternalResources/GPURendering/SFN_ComponentMask.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_ComponentMask.meta rename to Editor/InternalResources/GPURendering/SFN_ComponentMask.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_ComponentMask/SFN_ComponentMask_CC1.shader b/Editor/InternalResources/GPURendering/SFN_ComponentMask/SFN_ComponentMask_CC1.shader similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_ComponentMask/SFN_ComponentMask_CC1.shader rename to Editor/InternalResources/GPURendering/SFN_ComponentMask/SFN_ComponentMask_CC1.shader diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_ComponentMask/SFN_ComponentMask_CC1.shader.meta b/Editor/InternalResources/GPURendering/SFN_ComponentMask/SFN_ComponentMask_CC1.shader.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_ComponentMask/SFN_ComponentMask_CC1.shader.meta rename to Editor/InternalResources/GPURendering/SFN_ComponentMask/SFN_ComponentMask_CC1.shader.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_ComponentMask/SFN_ComponentMask_CC2.shader b/Editor/InternalResources/GPURendering/SFN_ComponentMask/SFN_ComponentMask_CC2.shader similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_ComponentMask/SFN_ComponentMask_CC2.shader rename to Editor/InternalResources/GPURendering/SFN_ComponentMask/SFN_ComponentMask_CC2.shader diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_ComponentMask/SFN_ComponentMask_CC2.shader.meta b/Editor/InternalResources/GPURendering/SFN_ComponentMask/SFN_ComponentMask_CC2.shader.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_ComponentMask/SFN_ComponentMask_CC2.shader.meta rename to Editor/InternalResources/GPURendering/SFN_ComponentMask/SFN_ComponentMask_CC2.shader.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_ComponentMask/SFN_ComponentMask_CC3.shader b/Editor/InternalResources/GPURendering/SFN_ComponentMask/SFN_ComponentMask_CC3.shader similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_ComponentMask/SFN_ComponentMask_CC3.shader rename to Editor/InternalResources/GPURendering/SFN_ComponentMask/SFN_ComponentMask_CC3.shader diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_ComponentMask/SFN_ComponentMask_CC3.shader.meta b/Editor/InternalResources/GPURendering/SFN_ComponentMask/SFN_ComponentMask_CC3.shader.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_ComponentMask/SFN_ComponentMask_CC3.shader.meta rename to Editor/InternalResources/GPURendering/SFN_ComponentMask/SFN_ComponentMask_CC3.shader.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_ComponentMask/SFN_ComponentMask_CC4.shader b/Editor/InternalResources/GPURendering/SFN_ComponentMask/SFN_ComponentMask_CC4.shader similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_ComponentMask/SFN_ComponentMask_CC4.shader rename to Editor/InternalResources/GPURendering/SFN_ComponentMask/SFN_ComponentMask_CC4.shader diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_ComponentMask/SFN_ComponentMask_CC4.shader.meta b/Editor/InternalResources/GPURendering/SFN_ComponentMask/SFN_ComponentMask_CC4.shader.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_ComponentMask/SFN_ComponentMask_CC4.shader.meta rename to Editor/InternalResources/GPURendering/SFN_ComponentMask/SFN_ComponentMask_CC4.shader.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_ConstantClamp.meta b/Editor/InternalResources/GPURendering/SFN_ConstantClamp.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_ConstantClamp.meta rename to Editor/InternalResources/GPURendering/SFN_ConstantClamp.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_ConstantClamp/SFN_ConstantClamp.shader b/Editor/InternalResources/GPURendering/SFN_ConstantClamp/SFN_ConstantClamp.shader similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_ConstantClamp/SFN_ConstantClamp.shader rename to Editor/InternalResources/GPURendering/SFN_ConstantClamp/SFN_ConstantClamp.shader diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_ConstantClamp/SFN_ConstantClamp.shader.meta b/Editor/InternalResources/GPURendering/SFN_ConstantClamp/SFN_ConstantClamp.shader.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_ConstantClamp/SFN_ConstantClamp.shader.meta rename to Editor/InternalResources/GPURendering/SFN_ConstantClamp/SFN_ConstantClamp.shader.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_ConstantLerp.meta b/Editor/InternalResources/GPURendering/SFN_ConstantLerp.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_ConstantLerp.meta rename to Editor/InternalResources/GPURendering/SFN_ConstantLerp.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_ConstantLerp/SFN_ConstantLerp.shader b/Editor/InternalResources/GPURendering/SFN_ConstantLerp/SFN_ConstantLerp.shader similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_ConstantLerp/SFN_ConstantLerp.shader rename to Editor/InternalResources/GPURendering/SFN_ConstantLerp/SFN_ConstantLerp.shader diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_ConstantLerp/SFN_ConstantLerp.shader.meta b/Editor/InternalResources/GPURendering/SFN_ConstantLerp/SFN_ConstantLerp.shader.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_ConstantLerp/SFN_ConstantLerp.shader.meta rename to Editor/InternalResources/GPURendering/SFN_ConstantLerp/SFN_ConstantLerp.shader.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Cos.meta b/Editor/InternalResources/GPURendering/SFN_Cos.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Cos.meta rename to Editor/InternalResources/GPURendering/SFN_Cos.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Cos/SFN_Cos.shader b/Editor/InternalResources/GPURendering/SFN_Cos/SFN_Cos.shader similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Cos/SFN_Cos.shader rename to Editor/InternalResources/GPURendering/SFN_Cos/SFN_Cos.shader diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Cos/SFN_Cos.shader.meta b/Editor/InternalResources/GPURendering/SFN_Cos/SFN_Cos.shader.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Cos/SFN_Cos.shader.meta rename to Editor/InternalResources/GPURendering/SFN_Cos/SFN_Cos.shader.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Cross.meta b/Editor/InternalResources/GPURendering/SFN_Cross.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Cross.meta rename to Editor/InternalResources/GPURendering/SFN_Cross.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Cross/SFN_Cross.shader b/Editor/InternalResources/GPURendering/SFN_Cross/SFN_Cross.shader similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Cross/SFN_Cross.shader rename to Editor/InternalResources/GPURendering/SFN_Cross/SFN_Cross.shader diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Cross/SFN_Cross.shader.meta b/Editor/InternalResources/GPURendering/SFN_Cross/SFN_Cross.shader.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Cross/SFN_Cross.shader.meta rename to Editor/InternalResources/GPURendering/SFN_Cross/SFN_Cross.shader.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Cubemap.meta b/Editor/InternalResources/GPURendering/SFN_Cubemap.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Cubemap.meta rename to Editor/InternalResources/GPURendering/SFN_Cubemap.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Cubemap/SFN_Cubemap.shader b/Editor/InternalResources/GPURendering/SFN_Cubemap/SFN_Cubemap.shader similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Cubemap/SFN_Cubemap.shader rename to Editor/InternalResources/GPURendering/SFN_Cubemap/SFN_Cubemap.shader diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Cubemap/SFN_Cubemap.shader.meta b/Editor/InternalResources/GPURendering/SFN_Cubemap/SFN_Cubemap.shader.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Cubemap/SFN_Cubemap.shader.meta rename to Editor/InternalResources/GPURendering/SFN_Cubemap/SFN_Cubemap.shader.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_DDX.meta b/Editor/InternalResources/GPURendering/SFN_DDX.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_DDX.meta rename to Editor/InternalResources/GPURendering/SFN_DDX.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_DDX/SFN_DDX.shader b/Editor/InternalResources/GPURendering/SFN_DDX/SFN_DDX.shader similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_DDX/SFN_DDX.shader rename to Editor/InternalResources/GPURendering/SFN_DDX/SFN_DDX.shader diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_DDX/SFN_DDX.shader.meta b/Editor/InternalResources/GPURendering/SFN_DDX/SFN_DDX.shader.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_DDX/SFN_DDX.shader.meta rename to Editor/InternalResources/GPURendering/SFN_DDX/SFN_DDX.shader.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_DDXY.meta b/Editor/InternalResources/GPURendering/SFN_DDXY.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_DDXY.meta rename to Editor/InternalResources/GPURendering/SFN_DDXY.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_DDXY/SFN_DDXY.shader b/Editor/InternalResources/GPURendering/SFN_DDXY/SFN_DDXY.shader similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_DDXY/SFN_DDXY.shader rename to Editor/InternalResources/GPURendering/SFN_DDXY/SFN_DDXY.shader diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_DDXY/SFN_DDXY.shader.meta b/Editor/InternalResources/GPURendering/SFN_DDXY/SFN_DDXY.shader.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_DDXY/SFN_DDXY.shader.meta rename to Editor/InternalResources/GPURendering/SFN_DDXY/SFN_DDXY.shader.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_DDY.meta b/Editor/InternalResources/GPURendering/SFN_DDY.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_DDY.meta rename to Editor/InternalResources/GPURendering/SFN_DDY.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_DDY/SFN_DDY.shader b/Editor/InternalResources/GPURendering/SFN_DDY/SFN_DDY.shader similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_DDY/SFN_DDY.shader rename to Editor/InternalResources/GPURendering/SFN_DDY/SFN_DDY.shader diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_DDY/SFN_DDY.shader.meta b/Editor/InternalResources/GPURendering/SFN_DDY/SFN_DDY.shader.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_DDY/SFN_DDY.shader.meta rename to Editor/InternalResources/GPURendering/SFN_DDY/SFN_DDY.shader.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Depth.meta b/Editor/InternalResources/GPURendering/SFN_Depth.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Depth.meta rename to Editor/InternalResources/GPURendering/SFN_Depth.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Depth/SFN_Depth.shader b/Editor/InternalResources/GPURendering/SFN_Depth/SFN_Depth.shader similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Depth/SFN_Depth.shader rename to Editor/InternalResources/GPURendering/SFN_Depth/SFN_Depth.shader diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Depth/SFN_Depth.shader.meta b/Editor/InternalResources/GPURendering/SFN_Depth/SFN_Depth.shader.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Depth/SFN_Depth.shader.meta rename to Editor/InternalResources/GPURendering/SFN_Depth/SFN_Depth.shader.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_DepthBlend.meta b/Editor/InternalResources/GPURendering/SFN_DepthBlend.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_DepthBlend.meta rename to Editor/InternalResources/GPURendering/SFN_DepthBlend.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_DepthBlend/SFN_DepthBlend.shader b/Editor/InternalResources/GPURendering/SFN_DepthBlend/SFN_DepthBlend.shader similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_DepthBlend/SFN_DepthBlend.shader rename to Editor/InternalResources/GPURendering/SFN_DepthBlend/SFN_DepthBlend.shader diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_DepthBlend/SFN_DepthBlend.shader.meta b/Editor/InternalResources/GPURendering/SFN_DepthBlend/SFN_DepthBlend.shader.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_DepthBlend/SFN_DepthBlend.shader.meta rename to Editor/InternalResources/GPURendering/SFN_DepthBlend/SFN_DepthBlend.shader.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Desaturate.meta b/Editor/InternalResources/GPURendering/SFN_Desaturate.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Desaturate.meta rename to Editor/InternalResources/GPURendering/SFN_Desaturate.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Desaturate/SFN_Desaturate_DES.shader b/Editor/InternalResources/GPURendering/SFN_Desaturate/SFN_Desaturate_DES.shader similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Desaturate/SFN_Desaturate_DES.shader rename to Editor/InternalResources/GPURendering/SFN_Desaturate/SFN_Desaturate_DES.shader diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Desaturate/SFN_Desaturate_DES.shader.meta b/Editor/InternalResources/GPURendering/SFN_Desaturate/SFN_Desaturate_DES.shader.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Desaturate/SFN_Desaturate_DES.shader.meta rename to Editor/InternalResources/GPURendering/SFN_Desaturate/SFN_Desaturate_DES.shader.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Desaturate/SFN_Desaturate_REQONLY.shader b/Editor/InternalResources/GPURendering/SFN_Desaturate/SFN_Desaturate_REQONLY.shader similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Desaturate/SFN_Desaturate_REQONLY.shader rename to Editor/InternalResources/GPURendering/SFN_Desaturate/SFN_Desaturate_REQONLY.shader diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Desaturate/SFN_Desaturate_REQONLY.shader.meta b/Editor/InternalResources/GPURendering/SFN_Desaturate/SFN_Desaturate_REQONLY.shader.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Desaturate/SFN_Desaturate_REQONLY.shader.meta rename to Editor/InternalResources/GPURendering/SFN_Desaturate/SFN_Desaturate_REQONLY.shader.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Distance.meta b/Editor/InternalResources/GPURendering/SFN_Distance.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Distance.meta rename to Editor/InternalResources/GPURendering/SFN_Distance.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Distance/SFN_Distance.shader b/Editor/InternalResources/GPURendering/SFN_Distance/SFN_Distance.shader similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Distance/SFN_Distance.shader rename to Editor/InternalResources/GPURendering/SFN_Distance/SFN_Distance.shader diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Distance/SFN_Distance.shader.meta b/Editor/InternalResources/GPURendering/SFN_Distance/SFN_Distance.shader.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Distance/SFN_Distance.shader.meta rename to Editor/InternalResources/GPURendering/SFN_Distance/SFN_Distance.shader.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Divide.meta b/Editor/InternalResources/GPURendering/SFN_Divide.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Divide.meta rename to Editor/InternalResources/GPURendering/SFN_Divide.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Divide/SFN_Divide.shader b/Editor/InternalResources/GPURendering/SFN_Divide/SFN_Divide.shader similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Divide/SFN_Divide.shader rename to Editor/InternalResources/GPURendering/SFN_Divide/SFN_Divide.shader diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Divide/SFN_Divide.shader.meta b/Editor/InternalResources/GPURendering/SFN_Divide/SFN_Divide.shader.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Divide/SFN_Divide.shader.meta rename to Editor/InternalResources/GPURendering/SFN_Divide/SFN_Divide.shader.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Dot.meta b/Editor/InternalResources/GPURendering/SFN_Dot.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Dot.meta rename to Editor/InternalResources/GPURendering/SFN_Dot.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Dot/SFN_Dot_ABS.shader b/Editor/InternalResources/GPURendering/SFN_Dot/SFN_Dot_ABS.shader similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Dot/SFN_Dot_ABS.shader rename to Editor/InternalResources/GPURendering/SFN_Dot/SFN_Dot_ABS.shader diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Dot/SFN_Dot_ABS.shader.meta b/Editor/InternalResources/GPURendering/SFN_Dot/SFN_Dot_ABS.shader.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Dot/SFN_Dot_ABS.shader.meta rename to Editor/InternalResources/GPURendering/SFN_Dot/SFN_Dot_ABS.shader.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Dot/SFN_Dot_NEG.shader b/Editor/InternalResources/GPURendering/SFN_Dot/SFN_Dot_NEG.shader similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Dot/SFN_Dot_NEG.shader rename to Editor/InternalResources/GPURendering/SFN_Dot/SFN_Dot_NEG.shader diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Dot/SFN_Dot_NEG.shader.meta b/Editor/InternalResources/GPURendering/SFN_Dot/SFN_Dot_NEG.shader.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Dot/SFN_Dot_NEG.shader.meta rename to Editor/InternalResources/GPURendering/SFN_Dot/SFN_Dot_NEG.shader.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Dot/SFN_Dot_NRM.shader b/Editor/InternalResources/GPURendering/SFN_Dot/SFN_Dot_NRM.shader similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Dot/SFN_Dot_NRM.shader rename to Editor/InternalResources/GPURendering/SFN_Dot/SFN_Dot_NRM.shader diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Dot/SFN_Dot_NRM.shader.meta b/Editor/InternalResources/GPURendering/SFN_Dot/SFN_Dot_NRM.shader.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Dot/SFN_Dot_NRM.shader.meta rename to Editor/InternalResources/GPURendering/SFN_Dot/SFN_Dot_NRM.shader.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Dot/SFN_Dot_POS.shader b/Editor/InternalResources/GPURendering/SFN_Dot/SFN_Dot_POS.shader similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Dot/SFN_Dot_POS.shader rename to Editor/InternalResources/GPURendering/SFN_Dot/SFN_Dot_POS.shader diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Dot/SFN_Dot_POS.shader.meta b/Editor/InternalResources/GPURendering/SFN_Dot/SFN_Dot_POS.shader.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Dot/SFN_Dot_POS.shader.meta rename to Editor/InternalResources/GPURendering/SFN_Dot/SFN_Dot_POS.shader.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Dot/SFN_Dot_STD.shader b/Editor/InternalResources/GPURendering/SFN_Dot/SFN_Dot_STD.shader similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Dot/SFN_Dot_STD.shader rename to Editor/InternalResources/GPURendering/SFN_Dot/SFN_Dot_STD.shader diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Dot/SFN_Dot_STD.shader.meta b/Editor/InternalResources/GPURendering/SFN_Dot/SFN_Dot_STD.shader.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Dot/SFN_Dot_STD.shader.meta rename to Editor/InternalResources/GPURendering/SFN_Dot/SFN_Dot_STD.shader.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Exp.meta b/Editor/InternalResources/GPURendering/SFN_Exp.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Exp.meta rename to Editor/InternalResources/GPURendering/SFN_Exp.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Exp/SFN_Exp.shader b/Editor/InternalResources/GPURendering/SFN_Exp/SFN_Exp.shader similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Exp/SFN_Exp.shader rename to Editor/InternalResources/GPURendering/SFN_Exp/SFN_Exp.shader diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Exp/SFN_Exp.shader.meta b/Editor/InternalResources/GPURendering/SFN_Exp/SFN_Exp.shader.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Exp/SFN_Exp.shader.meta rename to Editor/InternalResources/GPURendering/SFN_Exp/SFN_Exp.shader.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_FaceSign.meta b/Editor/InternalResources/GPURendering/SFN_FaceSign.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_FaceSign.meta rename to Editor/InternalResources/GPURendering/SFN_FaceSign.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_FaceSign/SFN_FaceSign.shader b/Editor/InternalResources/GPURendering/SFN_FaceSign/SFN_FaceSign.shader similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_FaceSign/SFN_FaceSign.shader rename to Editor/InternalResources/GPURendering/SFN_FaceSign/SFN_FaceSign.shader diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_FaceSign/SFN_FaceSign.shader.meta b/Editor/InternalResources/GPURendering/SFN_FaceSign/SFN_FaceSign.shader.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_FaceSign/SFN_FaceSign.shader.meta rename to Editor/InternalResources/GPURendering/SFN_FaceSign/SFN_FaceSign.shader.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Floor.meta b/Editor/InternalResources/GPURendering/SFN_Floor.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Floor.meta rename to Editor/InternalResources/GPURendering/SFN_Floor.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Floor/SFN_Floor.shader b/Editor/InternalResources/GPURendering/SFN_Floor/SFN_Floor.shader similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Floor/SFN_Floor.shader rename to Editor/InternalResources/GPURendering/SFN_Floor/SFN_Floor.shader diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Floor/SFN_Floor.shader.meta b/Editor/InternalResources/GPURendering/SFN_Floor/SFN_Floor.shader.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Floor/SFN_Floor.shader.meta rename to Editor/InternalResources/GPURendering/SFN_Floor/SFN_Floor.shader.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Fmod.meta b/Editor/InternalResources/GPURendering/SFN_Fmod.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Fmod.meta rename to Editor/InternalResources/GPURendering/SFN_Fmod.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Fmod/SFN_Fmod.shader b/Editor/InternalResources/GPURendering/SFN_Fmod/SFN_Fmod.shader similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Fmod/SFN_Fmod.shader rename to Editor/InternalResources/GPURendering/SFN_Fmod/SFN_Fmod.shader diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Fmod/SFN_Fmod.shader.meta b/Editor/InternalResources/GPURendering/SFN_Fmod/SFN_Fmod.shader.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Fmod/SFN_Fmod.shader.meta rename to Editor/InternalResources/GPURendering/SFN_Fmod/SFN_Fmod.shader.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_FogColor.meta b/Editor/InternalResources/GPURendering/SFN_FogColor.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_FogColor.meta rename to Editor/InternalResources/GPURendering/SFN_FogColor.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_FogColor/SFN_FogColor.shader b/Editor/InternalResources/GPURendering/SFN_FogColor/SFN_FogColor.shader similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_FogColor/SFN_FogColor.shader rename to Editor/InternalResources/GPURendering/SFN_FogColor/SFN_FogColor.shader diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_FogColor/SFN_FogColor.shader.meta b/Editor/InternalResources/GPURendering/SFN_FogColor/SFN_FogColor.shader.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_FogColor/SFN_FogColor.shader.meta rename to Editor/InternalResources/GPURendering/SFN_FogColor/SFN_FogColor.shader.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Frac.meta b/Editor/InternalResources/GPURendering/SFN_Frac.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Frac.meta rename to Editor/InternalResources/GPURendering/SFN_Frac.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Frac/SFN_Frac.shader b/Editor/InternalResources/GPURendering/SFN_Frac/SFN_Frac.shader similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Frac/SFN_Frac.shader rename to Editor/InternalResources/GPURendering/SFN_Frac/SFN_Frac.shader diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Frac/SFN_Frac.shader.meta b/Editor/InternalResources/GPURendering/SFN_Frac/SFN_Frac.shader.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Frac/SFN_Frac.shader.meta rename to Editor/InternalResources/GPURendering/SFN_Frac/SFN_Frac.shader.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_FragmentPosition.meta b/Editor/InternalResources/GPURendering/SFN_FragmentPosition.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_FragmentPosition.meta rename to Editor/InternalResources/GPURendering/SFN_FragmentPosition.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_FragmentPosition/SFN_FragmentPosition.shader b/Editor/InternalResources/GPURendering/SFN_FragmentPosition/SFN_FragmentPosition.shader similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_FragmentPosition/SFN_FragmentPosition.shader rename to Editor/InternalResources/GPURendering/SFN_FragmentPosition/SFN_FragmentPosition.shader diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_FragmentPosition/SFN_FragmentPosition.shader.meta b/Editor/InternalResources/GPURendering/SFN_FragmentPosition/SFN_FragmentPosition.shader.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_FragmentPosition/SFN_FragmentPosition.shader.meta rename to Editor/InternalResources/GPURendering/SFN_FragmentPosition/SFN_FragmentPosition.shader.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Fresnel.meta b/Editor/InternalResources/GPURendering/SFN_Fresnel.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Fresnel.meta rename to Editor/InternalResources/GPURendering/SFN_Fresnel.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Fresnel/SFN_Fresnel_EXP.shader b/Editor/InternalResources/GPURendering/SFN_Fresnel/SFN_Fresnel_EXP.shader similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Fresnel/SFN_Fresnel_EXP.shader rename to Editor/InternalResources/GPURendering/SFN_Fresnel/SFN_Fresnel_EXP.shader diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Fresnel/SFN_Fresnel_EXP.shader.meta b/Editor/InternalResources/GPURendering/SFN_Fresnel/SFN_Fresnel_EXP.shader.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Fresnel/SFN_Fresnel_EXP.shader.meta rename to Editor/InternalResources/GPURendering/SFN_Fresnel/SFN_Fresnel_EXP.shader.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Fresnel/SFN_Fresnel_NRM.shader b/Editor/InternalResources/GPURendering/SFN_Fresnel/SFN_Fresnel_NRM.shader similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Fresnel/SFN_Fresnel_NRM.shader rename to Editor/InternalResources/GPURendering/SFN_Fresnel/SFN_Fresnel_NRM.shader diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Fresnel/SFN_Fresnel_NRM.shader.meta b/Editor/InternalResources/GPURendering/SFN_Fresnel/SFN_Fresnel_NRM.shader.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Fresnel/SFN_Fresnel_NRM.shader.meta rename to Editor/InternalResources/GPURendering/SFN_Fresnel/SFN_Fresnel_NRM.shader.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Fresnel/SFN_Fresnel_NRM_EXP.shader b/Editor/InternalResources/GPURendering/SFN_Fresnel/SFN_Fresnel_NRM_EXP.shader similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Fresnel/SFN_Fresnel_NRM_EXP.shader rename to Editor/InternalResources/GPURendering/SFN_Fresnel/SFN_Fresnel_NRM_EXP.shader diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Fresnel/SFN_Fresnel_NRM_EXP.shader.meta b/Editor/InternalResources/GPURendering/SFN_Fresnel/SFN_Fresnel_NRM_EXP.shader.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Fresnel/SFN_Fresnel_NRM_EXP.shader.meta rename to Editor/InternalResources/GPURendering/SFN_Fresnel/SFN_Fresnel_NRM_EXP.shader.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Fresnel/SFN_Fresnel_REQONLY.shader b/Editor/InternalResources/GPURendering/SFN_Fresnel/SFN_Fresnel_REQONLY.shader similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Fresnel/SFN_Fresnel_REQONLY.shader rename to Editor/InternalResources/GPURendering/SFN_Fresnel/SFN_Fresnel_REQONLY.shader diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Fresnel/SFN_Fresnel_REQONLY.shader.meta b/Editor/InternalResources/GPURendering/SFN_Fresnel/SFN_Fresnel_REQONLY.shader.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Fresnel/SFN_Fresnel_REQONLY.shader.meta rename to Editor/InternalResources/GPURendering/SFN_Fresnel/SFN_Fresnel_REQONLY.shader.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Get.meta b/Editor/InternalResources/GPURendering/SFN_Get.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Get.meta rename to Editor/InternalResources/GPURendering/SFN_Get.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Get/SFN_Get.shader b/Editor/InternalResources/GPURendering/SFN_Get/SFN_Get.shader similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Get/SFN_Get.shader rename to Editor/InternalResources/GPURendering/SFN_Get/SFN_Get.shader diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Get/SFN_Get.shader.meta b/Editor/InternalResources/GPURendering/SFN_Get/SFN_Get.shader.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Get/SFN_Get.shader.meta rename to Editor/InternalResources/GPURendering/SFN_Get/SFN_Get.shader.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_HalfVector.meta b/Editor/InternalResources/GPURendering/SFN_HalfVector.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_HalfVector.meta rename to Editor/InternalResources/GPURendering/SFN_HalfVector.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_HalfVector/SFN_HalfVector.shader b/Editor/InternalResources/GPURendering/SFN_HalfVector/SFN_HalfVector.shader similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_HalfVector/SFN_HalfVector.shader rename to Editor/InternalResources/GPURendering/SFN_HalfVector/SFN_HalfVector.shader diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_HalfVector/SFN_HalfVector.shader.meta b/Editor/InternalResources/GPURendering/SFN_HalfVector/SFN_HalfVector.shader.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_HalfVector/SFN_HalfVector.shader.meta rename to Editor/InternalResources/GPURendering/SFN_HalfVector/SFN_HalfVector.shader.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_HsvToRgb.meta b/Editor/InternalResources/GPURendering/SFN_HsvToRgb.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_HsvToRgb.meta rename to Editor/InternalResources/GPURendering/SFN_HsvToRgb.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_HsvToRgb/SFN_HsvToRgb.shader b/Editor/InternalResources/GPURendering/SFN_HsvToRgb/SFN_HsvToRgb.shader similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_HsvToRgb/SFN_HsvToRgb.shader rename to Editor/InternalResources/GPURendering/SFN_HsvToRgb/SFN_HsvToRgb.shader diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_HsvToRgb/SFN_HsvToRgb.shader.meta b/Editor/InternalResources/GPURendering/SFN_HsvToRgb/SFN_HsvToRgb.shader.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_HsvToRgb/SFN_HsvToRgb.shader.meta rename to Editor/InternalResources/GPURendering/SFN_HsvToRgb/SFN_HsvToRgb.shader.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Hue.meta b/Editor/InternalResources/GPURendering/SFN_Hue.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Hue.meta rename to Editor/InternalResources/GPURendering/SFN_Hue.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Hue/SFN_Hue.shader b/Editor/InternalResources/GPURendering/SFN_Hue/SFN_Hue.shader similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Hue/SFN_Hue.shader rename to Editor/InternalResources/GPURendering/SFN_Hue/SFN_Hue.shader diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Hue/SFN_Hue.shader.meta b/Editor/InternalResources/GPURendering/SFN_Hue/SFN_Hue.shader.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Hue/SFN_Hue.shader.meta rename to Editor/InternalResources/GPURendering/SFN_Hue/SFN_Hue.shader.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_If.meta b/Editor/InternalResources/GPURendering/SFN_If.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_If.meta rename to Editor/InternalResources/GPURendering/SFN_If.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_If/SFN_If.shader b/Editor/InternalResources/GPURendering/SFN_If/SFN_If.shader similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_If/SFN_If.shader rename to Editor/InternalResources/GPURendering/SFN_If/SFN_If.shader diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_If/SFN_If.shader.meta b/Editor/InternalResources/GPURendering/SFN_If/SFN_If.shader.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_If/SFN_If.shader.meta rename to Editor/InternalResources/GPURendering/SFN_If/SFN_If.shader.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_InverseLerp.meta b/Editor/InternalResources/GPURendering/SFN_InverseLerp.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_InverseLerp.meta rename to Editor/InternalResources/GPURendering/SFN_InverseLerp.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_InverseLerp/SFN_InverseLerp.shader b/Editor/InternalResources/GPURendering/SFN_InverseLerp/SFN_InverseLerp.shader similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_InverseLerp/SFN_InverseLerp.shader rename to Editor/InternalResources/GPURendering/SFN_InverseLerp/SFN_InverseLerp.shader diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_InverseLerp/SFN_InverseLerp.shader.meta b/Editor/InternalResources/GPURendering/SFN_InverseLerp/SFN_InverseLerp.shader.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_InverseLerp/SFN_InverseLerp.shader.meta rename to Editor/InternalResources/GPURendering/SFN_InverseLerp/SFN_InverseLerp.shader.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Length.meta b/Editor/InternalResources/GPURendering/SFN_Length.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Length.meta rename to Editor/InternalResources/GPURendering/SFN_Length.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Length/SFN_Length.shader b/Editor/InternalResources/GPURendering/SFN_Length/SFN_Length.shader similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Length/SFN_Length.shader rename to Editor/InternalResources/GPURendering/SFN_Length/SFN_Length.shader diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Length/SFN_Length.shader.meta b/Editor/InternalResources/GPURendering/SFN_Length/SFN_Length.shader.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Length/SFN_Length.shader.meta rename to Editor/InternalResources/GPURendering/SFN_Length/SFN_Length.shader.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Lerp.meta b/Editor/InternalResources/GPURendering/SFN_Lerp.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Lerp.meta rename to Editor/InternalResources/GPURendering/SFN_Lerp.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Lerp/SFN_Lerp.shader b/Editor/InternalResources/GPURendering/SFN_Lerp/SFN_Lerp.shader similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Lerp/SFN_Lerp.shader rename to Editor/InternalResources/GPURendering/SFN_Lerp/SFN_Lerp.shader diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Lerp/SFN_Lerp.shader.meta b/Editor/InternalResources/GPURendering/SFN_Lerp/SFN_Lerp.shader.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Lerp/SFN_Lerp.shader.meta rename to Editor/InternalResources/GPURendering/SFN_Lerp/SFN_Lerp.shader.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_LightAttenuation.meta b/Editor/InternalResources/GPURendering/SFN_LightAttenuation.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_LightAttenuation.meta rename to Editor/InternalResources/GPURendering/SFN_LightAttenuation.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_LightAttenuation/SFN_LightAttenuation.shader b/Editor/InternalResources/GPURendering/SFN_LightAttenuation/SFN_LightAttenuation.shader similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_LightAttenuation/SFN_LightAttenuation.shader rename to Editor/InternalResources/GPURendering/SFN_LightAttenuation/SFN_LightAttenuation.shader diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_LightAttenuation/SFN_LightAttenuation.shader.meta b/Editor/InternalResources/GPURendering/SFN_LightAttenuation/SFN_LightAttenuation.shader.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_LightAttenuation/SFN_LightAttenuation.shader.meta rename to Editor/InternalResources/GPURendering/SFN_LightAttenuation/SFN_LightAttenuation.shader.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_LightColor.meta b/Editor/InternalResources/GPURendering/SFN_LightColor.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_LightColor.meta rename to Editor/InternalResources/GPURendering/SFN_LightColor.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_LightColor/SFN_LightColor.shader b/Editor/InternalResources/GPURendering/SFN_LightColor/SFN_LightColor.shader similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_LightColor/SFN_LightColor.shader rename to Editor/InternalResources/GPURendering/SFN_LightColor/SFN_LightColor.shader diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_LightColor/SFN_LightColor.shader.meta b/Editor/InternalResources/GPURendering/SFN_LightColor/SFN_LightColor.shader.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_LightColor/SFN_LightColor.shader.meta rename to Editor/InternalResources/GPURendering/SFN_LightColor/SFN_LightColor.shader.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_LightPosition.meta b/Editor/InternalResources/GPURendering/SFN_LightPosition.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_LightPosition.meta rename to Editor/InternalResources/GPURendering/SFN_LightPosition.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_LightPosition/SFN_LightPosition.shader b/Editor/InternalResources/GPURendering/SFN_LightPosition/SFN_LightPosition.shader similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_LightPosition/SFN_LightPosition.shader rename to Editor/InternalResources/GPURendering/SFN_LightPosition/SFN_LightPosition.shader diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_LightPosition/SFN_LightPosition.shader.meta b/Editor/InternalResources/GPURendering/SFN_LightPosition/SFN_LightPosition.shader.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_LightPosition/SFN_LightPosition.shader.meta rename to Editor/InternalResources/GPURendering/SFN_LightPosition/SFN_LightPosition.shader.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_LightVector.meta b/Editor/InternalResources/GPURendering/SFN_LightVector.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_LightVector.meta rename to Editor/InternalResources/GPURendering/SFN_LightVector.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_LightVector/SFN_LightVector.shader b/Editor/InternalResources/GPURendering/SFN_LightVector/SFN_LightVector.shader similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_LightVector/SFN_LightVector.shader rename to Editor/InternalResources/GPURendering/SFN_LightVector/SFN_LightVector.shader diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_LightVector/SFN_LightVector.shader.meta b/Editor/InternalResources/GPURendering/SFN_LightVector/SFN_LightVector.shader.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_LightVector/SFN_LightVector.shader.meta rename to Editor/InternalResources/GPURendering/SFN_LightVector/SFN_LightVector.shader.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Log.meta b/Editor/InternalResources/GPURendering/SFN_Log.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Log.meta rename to Editor/InternalResources/GPURendering/SFN_Log.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Log/SFN_Log_LOG.shader b/Editor/InternalResources/GPURendering/SFN_Log/SFN_Log_LOG.shader similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Log/SFN_Log_LOG.shader rename to Editor/InternalResources/GPURendering/SFN_Log/SFN_Log_LOG.shader diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Log/SFN_Log_LOG.shader.meta b/Editor/InternalResources/GPURendering/SFN_Log/SFN_Log_LOG.shader.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Log/SFN_Log_LOG.shader.meta rename to Editor/InternalResources/GPURendering/SFN_Log/SFN_Log_LOG.shader.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Log/SFN_Log_LOG10.shader b/Editor/InternalResources/GPURendering/SFN_Log/SFN_Log_LOG10.shader similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Log/SFN_Log_LOG10.shader rename to Editor/InternalResources/GPURendering/SFN_Log/SFN_Log_LOG10.shader diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Log/SFN_Log_LOG10.shader.meta b/Editor/InternalResources/GPURendering/SFN_Log/SFN_Log_LOG10.shader.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Log/SFN_Log_LOG10.shader.meta rename to Editor/InternalResources/GPURendering/SFN_Log/SFN_Log_LOG10.shader.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Log/SFN_Log_LOG2.shader b/Editor/InternalResources/GPURendering/SFN_Log/SFN_Log_LOG2.shader similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Log/SFN_Log_LOG2.shader rename to Editor/InternalResources/GPURendering/SFN_Log/SFN_Log_LOG2.shader diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Log/SFN_Log_LOG2.shader.meta b/Editor/InternalResources/GPURendering/SFN_Log/SFN_Log_LOG2.shader.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Log/SFN_Log_LOG2.shader.meta rename to Editor/InternalResources/GPURendering/SFN_Log/SFN_Log_LOG2.shader.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Matrix4x4.meta b/Editor/InternalResources/GPURendering/SFN_Matrix4x4.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Matrix4x4.meta rename to Editor/InternalResources/GPURendering/SFN_Matrix4x4.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Matrix4x4/SFN_Matrix4x4.shader b/Editor/InternalResources/GPURendering/SFN_Matrix4x4/SFN_Matrix4x4.shader similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Matrix4x4/SFN_Matrix4x4.shader rename to Editor/InternalResources/GPURendering/SFN_Matrix4x4/SFN_Matrix4x4.shader diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Matrix4x4/SFN_Matrix4x4.shader.meta b/Editor/InternalResources/GPURendering/SFN_Matrix4x4/SFN_Matrix4x4.shader.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Matrix4x4/SFN_Matrix4x4.shader.meta rename to Editor/InternalResources/GPURendering/SFN_Matrix4x4/SFN_Matrix4x4.shader.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Matrix4x4Property.meta b/Editor/InternalResources/GPURendering/SFN_Matrix4x4Property.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Matrix4x4Property.meta rename to Editor/InternalResources/GPURendering/SFN_Matrix4x4Property.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Matrix4x4Property/SFN_Matrix4x4Property.shader b/Editor/InternalResources/GPURendering/SFN_Matrix4x4Property/SFN_Matrix4x4Property.shader similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Matrix4x4Property/SFN_Matrix4x4Property.shader rename to Editor/InternalResources/GPURendering/SFN_Matrix4x4Property/SFN_Matrix4x4Property.shader diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Matrix4x4Property/SFN_Matrix4x4Property.shader.meta b/Editor/InternalResources/GPURendering/SFN_Matrix4x4Property/SFN_Matrix4x4Property.shader.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Matrix4x4Property/SFN_Matrix4x4Property.shader.meta rename to Editor/InternalResources/GPURendering/SFN_Matrix4x4Property/SFN_Matrix4x4Property.shader.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Max.meta b/Editor/InternalResources/GPURendering/SFN_Max.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Max.meta rename to Editor/InternalResources/GPURendering/SFN_Max.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Max/SFN_Max_2.shader b/Editor/InternalResources/GPURendering/SFN_Max/SFN_Max_2.shader similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Max/SFN_Max_2.shader rename to Editor/InternalResources/GPURendering/SFN_Max/SFN_Max_2.shader diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Max/SFN_Max_2.shader.meta b/Editor/InternalResources/GPURendering/SFN_Max/SFN_Max_2.shader.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Max/SFN_Max_2.shader.meta rename to Editor/InternalResources/GPURendering/SFN_Max/SFN_Max_2.shader.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Max/SFN_Max_3.shader b/Editor/InternalResources/GPURendering/SFN_Max/SFN_Max_3.shader similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Max/SFN_Max_3.shader rename to Editor/InternalResources/GPURendering/SFN_Max/SFN_Max_3.shader diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Max/SFN_Max_3.shader.meta b/Editor/InternalResources/GPURendering/SFN_Max/SFN_Max_3.shader.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Max/SFN_Max_3.shader.meta rename to Editor/InternalResources/GPURendering/SFN_Max/SFN_Max_3.shader.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Max/SFN_Max_4.shader b/Editor/InternalResources/GPURendering/SFN_Max/SFN_Max_4.shader similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Max/SFN_Max_4.shader rename to Editor/InternalResources/GPURendering/SFN_Max/SFN_Max_4.shader diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Max/SFN_Max_4.shader.meta b/Editor/InternalResources/GPURendering/SFN_Max/SFN_Max_4.shader.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Max/SFN_Max_4.shader.meta rename to Editor/InternalResources/GPURendering/SFN_Max/SFN_Max_4.shader.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Max/SFN_Max_5.shader b/Editor/InternalResources/GPURendering/SFN_Max/SFN_Max_5.shader similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Max/SFN_Max_5.shader rename to Editor/InternalResources/GPURendering/SFN_Max/SFN_Max_5.shader diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Max/SFN_Max_5.shader.meta b/Editor/InternalResources/GPURendering/SFN_Max/SFN_Max_5.shader.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Max/SFN_Max_5.shader.meta rename to Editor/InternalResources/GPURendering/SFN_Max/SFN_Max_5.shader.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Min.meta b/Editor/InternalResources/GPURendering/SFN_Min.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Min.meta rename to Editor/InternalResources/GPURendering/SFN_Min.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Min/SFN_Min_2.shader b/Editor/InternalResources/GPURendering/SFN_Min/SFN_Min_2.shader similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Min/SFN_Min_2.shader rename to Editor/InternalResources/GPURendering/SFN_Min/SFN_Min_2.shader diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Min/SFN_Min_2.shader.meta b/Editor/InternalResources/GPURendering/SFN_Min/SFN_Min_2.shader.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Min/SFN_Min_2.shader.meta rename to Editor/InternalResources/GPURendering/SFN_Min/SFN_Min_2.shader.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Min/SFN_Min_3.shader b/Editor/InternalResources/GPURendering/SFN_Min/SFN_Min_3.shader similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Min/SFN_Min_3.shader rename to Editor/InternalResources/GPURendering/SFN_Min/SFN_Min_3.shader diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Min/SFN_Min_3.shader.meta b/Editor/InternalResources/GPURendering/SFN_Min/SFN_Min_3.shader.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Min/SFN_Min_3.shader.meta rename to Editor/InternalResources/GPURendering/SFN_Min/SFN_Min_3.shader.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Min/SFN_Min_4.shader b/Editor/InternalResources/GPURendering/SFN_Min/SFN_Min_4.shader similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Min/SFN_Min_4.shader rename to Editor/InternalResources/GPURendering/SFN_Min/SFN_Min_4.shader diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Min/SFN_Min_4.shader.meta b/Editor/InternalResources/GPURendering/SFN_Min/SFN_Min_4.shader.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Min/SFN_Min_4.shader.meta rename to Editor/InternalResources/GPURendering/SFN_Min/SFN_Min_4.shader.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Min/SFN_Min_5.shader b/Editor/InternalResources/GPURendering/SFN_Min/SFN_Min_5.shader similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Min/SFN_Min_5.shader rename to Editor/InternalResources/GPURendering/SFN_Min/SFN_Min_5.shader diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Min/SFN_Min_5.shader.meta b/Editor/InternalResources/GPURendering/SFN_Min/SFN_Min_5.shader.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Min/SFN_Min_5.shader.meta rename to Editor/InternalResources/GPURendering/SFN_Min/SFN_Min_5.shader.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Multiply.meta b/Editor/InternalResources/GPURendering/SFN_Multiply.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Multiply.meta rename to Editor/InternalResources/GPURendering/SFN_Multiply.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Multiply/SFN_Multiply_2.shader b/Editor/InternalResources/GPURendering/SFN_Multiply/SFN_Multiply_2.shader similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Multiply/SFN_Multiply_2.shader rename to Editor/InternalResources/GPURendering/SFN_Multiply/SFN_Multiply_2.shader diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Multiply/SFN_Multiply_2.shader.meta b/Editor/InternalResources/GPURendering/SFN_Multiply/SFN_Multiply_2.shader.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Multiply/SFN_Multiply_2.shader.meta rename to Editor/InternalResources/GPURendering/SFN_Multiply/SFN_Multiply_2.shader.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Multiply/SFN_Multiply_3.shader b/Editor/InternalResources/GPURendering/SFN_Multiply/SFN_Multiply_3.shader similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Multiply/SFN_Multiply_3.shader rename to Editor/InternalResources/GPURendering/SFN_Multiply/SFN_Multiply_3.shader diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Multiply/SFN_Multiply_3.shader.meta b/Editor/InternalResources/GPURendering/SFN_Multiply/SFN_Multiply_3.shader.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Multiply/SFN_Multiply_3.shader.meta rename to Editor/InternalResources/GPURendering/SFN_Multiply/SFN_Multiply_3.shader.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Multiply/SFN_Multiply_4.shader b/Editor/InternalResources/GPURendering/SFN_Multiply/SFN_Multiply_4.shader similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Multiply/SFN_Multiply_4.shader rename to Editor/InternalResources/GPURendering/SFN_Multiply/SFN_Multiply_4.shader diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Multiply/SFN_Multiply_4.shader.meta b/Editor/InternalResources/GPURendering/SFN_Multiply/SFN_Multiply_4.shader.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Multiply/SFN_Multiply_4.shader.meta rename to Editor/InternalResources/GPURendering/SFN_Multiply/SFN_Multiply_4.shader.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Multiply/SFN_Multiply_5.shader b/Editor/InternalResources/GPURendering/SFN_Multiply/SFN_Multiply_5.shader similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Multiply/SFN_Multiply_5.shader rename to Editor/InternalResources/GPURendering/SFN_Multiply/SFN_Multiply_5.shader diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Multiply/SFN_Multiply_5.shader.meta b/Editor/InternalResources/GPURendering/SFN_Multiply/SFN_Multiply_5.shader.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Multiply/SFN_Multiply_5.shader.meta rename to Editor/InternalResources/GPURendering/SFN_Multiply/SFN_Multiply_5.shader.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_MultiplyMatrix.meta b/Editor/InternalResources/GPURendering/SFN_MultiplyMatrix.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_MultiplyMatrix.meta rename to Editor/InternalResources/GPURendering/SFN_MultiplyMatrix.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_MultiplyMatrix/SFN_MultiplyMatrix.shader b/Editor/InternalResources/GPURendering/SFN_MultiplyMatrix/SFN_MultiplyMatrix.shader similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_MultiplyMatrix/SFN_MultiplyMatrix.shader rename to Editor/InternalResources/GPURendering/SFN_MultiplyMatrix/SFN_MultiplyMatrix.shader diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_MultiplyMatrix/SFN_MultiplyMatrix.shader.meta b/Editor/InternalResources/GPURendering/SFN_MultiplyMatrix/SFN_MultiplyMatrix.shader.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_MultiplyMatrix/SFN_MultiplyMatrix.shader.meta rename to Editor/InternalResources/GPURendering/SFN_MultiplyMatrix/SFN_MultiplyMatrix.shader.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Negate.meta b/Editor/InternalResources/GPURendering/SFN_Negate.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Negate.meta rename to Editor/InternalResources/GPURendering/SFN_Negate.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Negate/SFN_Negate.shader b/Editor/InternalResources/GPURendering/SFN_Negate/SFN_Negate.shader similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Negate/SFN_Negate.shader rename to Editor/InternalResources/GPURendering/SFN_Negate/SFN_Negate.shader diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Negate/SFN_Negate.shader.meta b/Editor/InternalResources/GPURendering/SFN_Negate/SFN_Negate.shader.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Negate/SFN_Negate.shader.meta rename to Editor/InternalResources/GPURendering/SFN_Negate/SFN_Negate.shader.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Noise.meta b/Editor/InternalResources/GPURendering/SFN_Noise.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Noise.meta rename to Editor/InternalResources/GPURendering/SFN_Noise.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Noise/SFN_Noise.shader b/Editor/InternalResources/GPURendering/SFN_Noise/SFN_Noise.shader similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Noise/SFN_Noise.shader rename to Editor/InternalResources/GPURendering/SFN_Noise/SFN_Noise.shader diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Noise/SFN_Noise.shader.meta b/Editor/InternalResources/GPURendering/SFN_Noise/SFN_Noise.shader.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Noise/SFN_Noise.shader.meta rename to Editor/InternalResources/GPURendering/SFN_Noise/SFN_Noise.shader.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_NormalBlend.meta b/Editor/InternalResources/GPURendering/SFN_NormalBlend.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_NormalBlend.meta rename to Editor/InternalResources/GPURendering/SFN_NormalBlend.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_NormalBlend/SFN_NormalBlend.shader b/Editor/InternalResources/GPURendering/SFN_NormalBlend/SFN_NormalBlend.shader similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_NormalBlend/SFN_NormalBlend.shader rename to Editor/InternalResources/GPURendering/SFN_NormalBlend/SFN_NormalBlend.shader diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_NormalBlend/SFN_NormalBlend.shader.meta b/Editor/InternalResources/GPURendering/SFN_NormalBlend/SFN_NormalBlend.shader.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_NormalBlend/SFN_NormalBlend.shader.meta rename to Editor/InternalResources/GPURendering/SFN_NormalBlend/SFN_NormalBlend.shader.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_NormalVector.meta b/Editor/InternalResources/GPURendering/SFN_NormalVector.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_NormalVector.meta rename to Editor/InternalResources/GPURendering/SFN_NormalVector.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_NormalVector/SFN_NormalVector.shader b/Editor/InternalResources/GPURendering/SFN_NormalVector/SFN_NormalVector.shader similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_NormalVector/SFN_NormalVector.shader rename to Editor/InternalResources/GPURendering/SFN_NormalVector/SFN_NormalVector.shader diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_NormalVector/SFN_NormalVector.shader.meta b/Editor/InternalResources/GPURendering/SFN_NormalVector/SFN_NormalVector.shader.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_NormalVector/SFN_NormalVector.shader.meta rename to Editor/InternalResources/GPURendering/SFN_NormalVector/SFN_NormalVector.shader.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Normalize.meta b/Editor/InternalResources/GPURendering/SFN_Normalize.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Normalize.meta rename to Editor/InternalResources/GPURendering/SFN_Normalize.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Normalize/SFN_Normalize.shader b/Editor/InternalResources/GPURendering/SFN_Normalize/SFN_Normalize.shader similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Normalize/SFN_Normalize.shader rename to Editor/InternalResources/GPURendering/SFN_Normalize/SFN_Normalize.shader diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Normalize/SFN_Normalize.shader.meta b/Editor/InternalResources/GPURendering/SFN_Normalize/SFN_Normalize.shader.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Normalize/SFN_Normalize.shader.meta rename to Editor/InternalResources/GPURendering/SFN_Normalize/SFN_Normalize.shader.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_ObjectPosition.meta b/Editor/InternalResources/GPURendering/SFN_ObjectPosition.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_ObjectPosition.meta rename to Editor/InternalResources/GPURendering/SFN_ObjectPosition.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_ObjectPosition/SFN_ObjectPosition.shader b/Editor/InternalResources/GPURendering/SFN_ObjectPosition/SFN_ObjectPosition.shader similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_ObjectPosition/SFN_ObjectPosition.shader rename to Editor/InternalResources/GPURendering/SFN_ObjectPosition/SFN_ObjectPosition.shader diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_ObjectPosition/SFN_ObjectPosition.shader.meta b/Editor/InternalResources/GPURendering/SFN_ObjectPosition/SFN_ObjectPosition.shader.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_ObjectPosition/SFN_ObjectPosition.shader.meta rename to Editor/InternalResources/GPURendering/SFN_ObjectPosition/SFN_ObjectPosition.shader.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_ObjectScale.meta b/Editor/InternalResources/GPURendering/SFN_ObjectScale.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_ObjectScale.meta rename to Editor/InternalResources/GPURendering/SFN_ObjectScale.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_ObjectScale/SFN_ObjectScale_Default.shader b/Editor/InternalResources/GPURendering/SFN_ObjectScale/SFN_ObjectScale_Default.shader similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_ObjectScale/SFN_ObjectScale_Default.shader rename to Editor/InternalResources/GPURendering/SFN_ObjectScale/SFN_ObjectScale_Default.shader diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_ObjectScale/SFN_ObjectScale_Default.shader.meta b/Editor/InternalResources/GPURendering/SFN_ObjectScale/SFN_ObjectScale_Default.shader.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_ObjectScale/SFN_ObjectScale_Default.shader.meta rename to Editor/InternalResources/GPURendering/SFN_ObjectScale/SFN_ObjectScale_Default.shader.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_ObjectScale/SFN_ObjectScale_Reciprocal.shader b/Editor/InternalResources/GPURendering/SFN_ObjectScale/SFN_ObjectScale_Reciprocal.shader similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_ObjectScale/SFN_ObjectScale_Reciprocal.shader rename to Editor/InternalResources/GPURendering/SFN_ObjectScale/SFN_ObjectScale_Reciprocal.shader diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_ObjectScale/SFN_ObjectScale_Reciprocal.shader.meta b/Editor/InternalResources/GPURendering/SFN_ObjectScale/SFN_ObjectScale_Reciprocal.shader.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_ObjectScale/SFN_ObjectScale_Reciprocal.shader.meta rename to Editor/InternalResources/GPURendering/SFN_ObjectScale/SFN_ObjectScale_Reciprocal.shader.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_OneMinus.meta b/Editor/InternalResources/GPURendering/SFN_OneMinus.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_OneMinus.meta rename to Editor/InternalResources/GPURendering/SFN_OneMinus.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_OneMinus/SFN_OneMinus.shader b/Editor/InternalResources/GPURendering/SFN_OneMinus/SFN_OneMinus.shader similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_OneMinus/SFN_OneMinus.shader rename to Editor/InternalResources/GPURendering/SFN_OneMinus/SFN_OneMinus.shader diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_OneMinus/SFN_OneMinus.shader.meta b/Editor/InternalResources/GPURendering/SFN_OneMinus/SFN_OneMinus.shader.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_OneMinus/SFN_OneMinus.shader.meta rename to Editor/InternalResources/GPURendering/SFN_OneMinus/SFN_OneMinus.shader.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Panner.meta b/Editor/InternalResources/GPURendering/SFN_Panner.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Panner.meta rename to Editor/InternalResources/GPURendering/SFN_Panner.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Panner/SFN_Panner_DIST.shader b/Editor/InternalResources/GPURendering/SFN_Panner/SFN_Panner_DIST.shader similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Panner/SFN_Panner_DIST.shader rename to Editor/InternalResources/GPURendering/SFN_Panner/SFN_Panner_DIST.shader diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Panner/SFN_Panner_DIST.shader.meta b/Editor/InternalResources/GPURendering/SFN_Panner/SFN_Panner_DIST.shader.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Panner/SFN_Panner_DIST.shader.meta rename to Editor/InternalResources/GPURendering/SFN_Panner/SFN_Panner_DIST.shader.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Panner/SFN_Panner_REQONLY.shader b/Editor/InternalResources/GPURendering/SFN_Panner/SFN_Panner_REQONLY.shader similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Panner/SFN_Panner_REQONLY.shader rename to Editor/InternalResources/GPURendering/SFN_Panner/SFN_Panner_REQONLY.shader diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Panner/SFN_Panner_REQONLY.shader.meta b/Editor/InternalResources/GPURendering/SFN_Panner/SFN_Panner_REQONLY.shader.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Panner/SFN_Panner_REQONLY.shader.meta rename to Editor/InternalResources/GPURendering/SFN_Panner/SFN_Panner_REQONLY.shader.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Parallax.meta b/Editor/InternalResources/GPURendering/SFN_Parallax.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Parallax.meta rename to Editor/InternalResources/GPURendering/SFN_Parallax.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Parallax/SFN_Parallax_DEP.shader b/Editor/InternalResources/GPURendering/SFN_Parallax/SFN_Parallax_DEP.shader similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Parallax/SFN_Parallax_DEP.shader rename to Editor/InternalResources/GPURendering/SFN_Parallax/SFN_Parallax_DEP.shader diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Parallax/SFN_Parallax_DEP.shader.meta b/Editor/InternalResources/GPURendering/SFN_Parallax/SFN_Parallax_DEP.shader.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Parallax/SFN_Parallax_DEP.shader.meta rename to Editor/InternalResources/GPURendering/SFN_Parallax/SFN_Parallax_DEP.shader.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Parallax/SFN_Parallax_DEP_REF.shader b/Editor/InternalResources/GPURendering/SFN_Parallax/SFN_Parallax_DEP_REF.shader similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Parallax/SFN_Parallax_DEP_REF.shader rename to Editor/InternalResources/GPURendering/SFN_Parallax/SFN_Parallax_DEP_REF.shader diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Parallax/SFN_Parallax_DEP_REF.shader.meta b/Editor/InternalResources/GPURendering/SFN_Parallax/SFN_Parallax_DEP_REF.shader.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Parallax/SFN_Parallax_DEP_REF.shader.meta rename to Editor/InternalResources/GPURendering/SFN_Parallax/SFN_Parallax_DEP_REF.shader.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Parallax/SFN_Parallax_REF.shader b/Editor/InternalResources/GPURendering/SFN_Parallax/SFN_Parallax_REF.shader similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Parallax/SFN_Parallax_REF.shader rename to Editor/InternalResources/GPURendering/SFN_Parallax/SFN_Parallax_REF.shader diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Parallax/SFN_Parallax_REF.shader.meta b/Editor/InternalResources/GPURendering/SFN_Parallax/SFN_Parallax_REF.shader.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Parallax/SFN_Parallax_REF.shader.meta rename to Editor/InternalResources/GPURendering/SFN_Parallax/SFN_Parallax_REF.shader.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Parallax/SFN_Parallax_REQONLY.shader b/Editor/InternalResources/GPURendering/SFN_Parallax/SFN_Parallax_REQONLY.shader similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Parallax/SFN_Parallax_REQONLY.shader rename to Editor/InternalResources/GPURendering/SFN_Parallax/SFN_Parallax_REQONLY.shader diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Parallax/SFN_Parallax_REQONLY.shader.meta b/Editor/InternalResources/GPURendering/SFN_Parallax/SFN_Parallax_REQONLY.shader.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Parallax/SFN_Parallax_REQONLY.shader.meta rename to Editor/InternalResources/GPURendering/SFN_Parallax/SFN_Parallax_REQONLY.shader.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Parallax/SFN_Parallax_UV.shader b/Editor/InternalResources/GPURendering/SFN_Parallax/SFN_Parallax_UV.shader similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Parallax/SFN_Parallax_UV.shader rename to Editor/InternalResources/GPURendering/SFN_Parallax/SFN_Parallax_UV.shader diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Parallax/SFN_Parallax_UV.shader.meta b/Editor/InternalResources/GPURendering/SFN_Parallax/SFN_Parallax_UV.shader.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Parallax/SFN_Parallax_UV.shader.meta rename to Editor/InternalResources/GPURendering/SFN_Parallax/SFN_Parallax_UV.shader.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Parallax/SFN_Parallax_UV_DEP.shader b/Editor/InternalResources/GPURendering/SFN_Parallax/SFN_Parallax_UV_DEP.shader similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Parallax/SFN_Parallax_UV_DEP.shader rename to Editor/InternalResources/GPURendering/SFN_Parallax/SFN_Parallax_UV_DEP.shader diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Parallax/SFN_Parallax_UV_DEP.shader.meta b/Editor/InternalResources/GPURendering/SFN_Parallax/SFN_Parallax_UV_DEP.shader.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Parallax/SFN_Parallax_UV_DEP.shader.meta rename to Editor/InternalResources/GPURendering/SFN_Parallax/SFN_Parallax_UV_DEP.shader.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Parallax/SFN_Parallax_UV_DEP_REF.shader b/Editor/InternalResources/GPURendering/SFN_Parallax/SFN_Parallax_UV_DEP_REF.shader similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Parallax/SFN_Parallax_UV_DEP_REF.shader rename to Editor/InternalResources/GPURendering/SFN_Parallax/SFN_Parallax_UV_DEP_REF.shader diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Parallax/SFN_Parallax_UV_DEP_REF.shader.meta b/Editor/InternalResources/GPURendering/SFN_Parallax/SFN_Parallax_UV_DEP_REF.shader.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Parallax/SFN_Parallax_UV_DEP_REF.shader.meta rename to Editor/InternalResources/GPURendering/SFN_Parallax/SFN_Parallax_UV_DEP_REF.shader.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Parallax/SFN_Parallax_UV_REF.shader b/Editor/InternalResources/GPURendering/SFN_Parallax/SFN_Parallax_UV_REF.shader similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Parallax/SFN_Parallax_UV_REF.shader rename to Editor/InternalResources/GPURendering/SFN_Parallax/SFN_Parallax_UV_REF.shader diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Parallax/SFN_Parallax_UV_REF.shader.meta b/Editor/InternalResources/GPURendering/SFN_Parallax/SFN_Parallax_UV_REF.shader.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Parallax/SFN_Parallax_UV_REF.shader.meta rename to Editor/InternalResources/GPURendering/SFN_Parallax/SFN_Parallax_UV_REF.shader.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_PixelSize.meta b/Editor/InternalResources/GPURendering/SFN_PixelSize.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_PixelSize.meta rename to Editor/InternalResources/GPURendering/SFN_PixelSize.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_PixelSize/SFN_PixelSize.shader b/Editor/InternalResources/GPURendering/SFN_PixelSize/SFN_PixelSize.shader similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_PixelSize/SFN_PixelSize.shader rename to Editor/InternalResources/GPURendering/SFN_PixelSize/SFN_PixelSize.shader diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_PixelSize/SFN_PixelSize.shader.meta b/Editor/InternalResources/GPURendering/SFN_PixelSize/SFN_PixelSize.shader.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_PixelSize/SFN_PixelSize.shader.meta rename to Editor/InternalResources/GPURendering/SFN_PixelSize/SFN_PixelSize.shader.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Posterize.meta b/Editor/InternalResources/GPURendering/SFN_Posterize.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Posterize.meta rename to Editor/InternalResources/GPURendering/SFN_Posterize.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Posterize/SFN_Posterize.shader b/Editor/InternalResources/GPURendering/SFN_Posterize/SFN_Posterize.shader similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Posterize/SFN_Posterize.shader rename to Editor/InternalResources/GPURendering/SFN_Posterize/SFN_Posterize.shader diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Posterize/SFN_Posterize.shader.meta b/Editor/InternalResources/GPURendering/SFN_Posterize/SFN_Posterize.shader.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Posterize/SFN_Posterize.shader.meta rename to Editor/InternalResources/GPURendering/SFN_Posterize/SFN_Posterize.shader.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Power.meta b/Editor/InternalResources/GPURendering/SFN_Power.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Power.meta rename to Editor/InternalResources/GPURendering/SFN_Power.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Power/SFN_Power.shader b/Editor/InternalResources/GPURendering/SFN_Power/SFN_Power.shader similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Power/SFN_Power.shader rename to Editor/InternalResources/GPURendering/SFN_Power/SFN_Power.shader diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Power/SFN_Power.shader.meta b/Editor/InternalResources/GPURendering/SFN_Power/SFN_Power.shader.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Power/SFN_Power.shader.meta rename to Editor/InternalResources/GPURendering/SFN_Power/SFN_Power.shader.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_ProjectionParameters.meta b/Editor/InternalResources/GPURendering/SFN_ProjectionParameters.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_ProjectionParameters.meta rename to Editor/InternalResources/GPURendering/SFN_ProjectionParameters.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_ProjectionParameters/SFN_ProjectionParameters.shader b/Editor/InternalResources/GPURendering/SFN_ProjectionParameters/SFN_ProjectionParameters.shader similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_ProjectionParameters/SFN_ProjectionParameters.shader rename to Editor/InternalResources/GPURendering/SFN_ProjectionParameters/SFN_ProjectionParameters.shader diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_ProjectionParameters/SFN_ProjectionParameters.shader.meta b/Editor/InternalResources/GPURendering/SFN_ProjectionParameters/SFN_ProjectionParameters.shader.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_ProjectionParameters/SFN_ProjectionParameters.shader.meta rename to Editor/InternalResources/GPURendering/SFN_ProjectionParameters/SFN_ProjectionParameters.shader.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Reciprocal.meta b/Editor/InternalResources/GPURendering/SFN_Reciprocal.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Reciprocal.meta rename to Editor/InternalResources/GPURendering/SFN_Reciprocal.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Reciprocal/SFN_Reciprocal.shader b/Editor/InternalResources/GPURendering/SFN_Reciprocal/SFN_Reciprocal.shader similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Reciprocal/SFN_Reciprocal.shader rename to Editor/InternalResources/GPURendering/SFN_Reciprocal/SFN_Reciprocal.shader diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Reciprocal/SFN_Reciprocal.shader.meta b/Editor/InternalResources/GPURendering/SFN_Reciprocal/SFN_Reciprocal.shader.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Reciprocal/SFN_Reciprocal.shader.meta rename to Editor/InternalResources/GPURendering/SFN_Reciprocal/SFN_Reciprocal.shader.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Reflect.meta b/Editor/InternalResources/GPURendering/SFN_Reflect.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Reflect.meta rename to Editor/InternalResources/GPURendering/SFN_Reflect.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Reflect/SFN_Reflect.shader b/Editor/InternalResources/GPURendering/SFN_Reflect/SFN_Reflect.shader similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Reflect/SFN_Reflect.shader rename to Editor/InternalResources/GPURendering/SFN_Reflect/SFN_Reflect.shader diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Reflect/SFN_Reflect.shader.meta b/Editor/InternalResources/GPURendering/SFN_Reflect/SFN_Reflect.shader.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Reflect/SFN_Reflect.shader.meta rename to Editor/InternalResources/GPURendering/SFN_Reflect/SFN_Reflect.shader.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Relay.meta b/Editor/InternalResources/GPURendering/SFN_Relay.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Relay.meta rename to Editor/InternalResources/GPURendering/SFN_Relay.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Relay/SFN_Relay.shader b/Editor/InternalResources/GPURendering/SFN_Relay/SFN_Relay.shader similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Relay/SFN_Relay.shader rename to Editor/InternalResources/GPURendering/SFN_Relay/SFN_Relay.shader diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Relay/SFN_Relay.shader.meta b/Editor/InternalResources/GPURendering/SFN_Relay/SFN_Relay.shader.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Relay/SFN_Relay.shader.meta rename to Editor/InternalResources/GPURendering/SFN_Relay/SFN_Relay.shader.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_RemapRange.meta b/Editor/InternalResources/GPURendering/SFN_RemapRange.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_RemapRange.meta rename to Editor/InternalResources/GPURendering/SFN_RemapRange.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_RemapRange/SFN_RemapRange.shader b/Editor/InternalResources/GPURendering/SFN_RemapRange/SFN_RemapRange.shader similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_RemapRange/SFN_RemapRange.shader rename to Editor/InternalResources/GPURendering/SFN_RemapRange/SFN_RemapRange.shader diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_RemapRange/SFN_RemapRange.shader.meta b/Editor/InternalResources/GPURendering/SFN_RemapRange/SFN_RemapRange.shader.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_RemapRange/SFN_RemapRange.shader.meta rename to Editor/InternalResources/GPURendering/SFN_RemapRange/SFN_RemapRange.shader.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_RemapRangeAdvanced.meta b/Editor/InternalResources/GPURendering/SFN_RemapRangeAdvanced.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_RemapRangeAdvanced.meta rename to Editor/InternalResources/GPURendering/SFN_RemapRangeAdvanced.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_RemapRangeAdvanced/SFN_RemapRangeAdvanced.shader b/Editor/InternalResources/GPURendering/SFN_RemapRangeAdvanced/SFN_RemapRangeAdvanced.shader similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_RemapRangeAdvanced/SFN_RemapRangeAdvanced.shader rename to Editor/InternalResources/GPURendering/SFN_RemapRangeAdvanced/SFN_RemapRangeAdvanced.shader diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_RemapRangeAdvanced/SFN_RemapRangeAdvanced.shader.meta b/Editor/InternalResources/GPURendering/SFN_RemapRangeAdvanced/SFN_RemapRangeAdvanced.shader.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_RemapRangeAdvanced/SFN_RemapRangeAdvanced.shader.meta rename to Editor/InternalResources/GPURendering/SFN_RemapRangeAdvanced/SFN_RemapRangeAdvanced.shader.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_RgbToHsv.meta b/Editor/InternalResources/GPURendering/SFN_RgbToHsv.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_RgbToHsv.meta rename to Editor/InternalResources/GPURendering/SFN_RgbToHsv.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_RgbToHsv/SFN_RgbToHsv.shader b/Editor/InternalResources/GPURendering/SFN_RgbToHsv/SFN_RgbToHsv.shader similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_RgbToHsv/SFN_RgbToHsv.shader rename to Editor/InternalResources/GPURendering/SFN_RgbToHsv/SFN_RgbToHsv.shader diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_RgbToHsv/SFN_RgbToHsv.shader.meta b/Editor/InternalResources/GPURendering/SFN_RgbToHsv/SFN_RgbToHsv.shader.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_RgbToHsv/SFN_RgbToHsv.shader.meta rename to Editor/InternalResources/GPURendering/SFN_RgbToHsv/SFN_RgbToHsv.shader.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Rotator.meta b/Editor/InternalResources/GPURendering/SFN_Rotator.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Rotator.meta rename to Editor/InternalResources/GPURendering/SFN_Rotator.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Rotator/SFN_Rotator_ANG.shader b/Editor/InternalResources/GPURendering/SFN_Rotator/SFN_Rotator_ANG.shader similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Rotator/SFN_Rotator_ANG.shader rename to Editor/InternalResources/GPURendering/SFN_Rotator/SFN_Rotator_ANG.shader diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Rotator/SFN_Rotator_ANG.shader.meta b/Editor/InternalResources/GPURendering/SFN_Rotator/SFN_Rotator_ANG.shader.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Rotator/SFN_Rotator_ANG.shader.meta rename to Editor/InternalResources/GPURendering/SFN_Rotator/SFN_Rotator_ANG.shader.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Rotator/SFN_Rotator_PIV.shader b/Editor/InternalResources/GPURendering/SFN_Rotator/SFN_Rotator_PIV.shader similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Rotator/SFN_Rotator_PIV.shader rename to Editor/InternalResources/GPURendering/SFN_Rotator/SFN_Rotator_PIV.shader diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Rotator/SFN_Rotator_PIV.shader.meta b/Editor/InternalResources/GPURendering/SFN_Rotator/SFN_Rotator_PIV.shader.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Rotator/SFN_Rotator_PIV.shader.meta rename to Editor/InternalResources/GPURendering/SFN_Rotator/SFN_Rotator_PIV.shader.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Rotator/SFN_Rotator_PIV_ANG.shader b/Editor/InternalResources/GPURendering/SFN_Rotator/SFN_Rotator_PIV_ANG.shader similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Rotator/SFN_Rotator_PIV_ANG.shader rename to Editor/InternalResources/GPURendering/SFN_Rotator/SFN_Rotator_PIV_ANG.shader diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Rotator/SFN_Rotator_PIV_ANG.shader.meta b/Editor/InternalResources/GPURendering/SFN_Rotator/SFN_Rotator_PIV_ANG.shader.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Rotator/SFN_Rotator_PIV_ANG.shader.meta rename to Editor/InternalResources/GPURendering/SFN_Rotator/SFN_Rotator_PIV_ANG.shader.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Rotator/SFN_Rotator_PIV_SPD.shader b/Editor/InternalResources/GPURendering/SFN_Rotator/SFN_Rotator_PIV_SPD.shader similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Rotator/SFN_Rotator_PIV_SPD.shader rename to Editor/InternalResources/GPURendering/SFN_Rotator/SFN_Rotator_PIV_SPD.shader diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Rotator/SFN_Rotator_PIV_SPD.shader.meta b/Editor/InternalResources/GPURendering/SFN_Rotator/SFN_Rotator_PIV_SPD.shader.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Rotator/SFN_Rotator_PIV_SPD.shader.meta rename to Editor/InternalResources/GPURendering/SFN_Rotator/SFN_Rotator_PIV_SPD.shader.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Rotator/SFN_Rotator_PIV_SPD_ANG.shader b/Editor/InternalResources/GPURendering/SFN_Rotator/SFN_Rotator_PIV_SPD_ANG.shader similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Rotator/SFN_Rotator_PIV_SPD_ANG.shader rename to Editor/InternalResources/GPURendering/SFN_Rotator/SFN_Rotator_PIV_SPD_ANG.shader diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Rotator/SFN_Rotator_PIV_SPD_ANG.shader.meta b/Editor/InternalResources/GPURendering/SFN_Rotator/SFN_Rotator_PIV_SPD_ANG.shader.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Rotator/SFN_Rotator_PIV_SPD_ANG.shader.meta rename to Editor/InternalResources/GPURendering/SFN_Rotator/SFN_Rotator_PIV_SPD_ANG.shader.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Rotator/SFN_Rotator_REQONLY.shader b/Editor/InternalResources/GPURendering/SFN_Rotator/SFN_Rotator_REQONLY.shader similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Rotator/SFN_Rotator_REQONLY.shader rename to Editor/InternalResources/GPURendering/SFN_Rotator/SFN_Rotator_REQONLY.shader diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Rotator/SFN_Rotator_REQONLY.shader.meta b/Editor/InternalResources/GPURendering/SFN_Rotator/SFN_Rotator_REQONLY.shader.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Rotator/SFN_Rotator_REQONLY.shader.meta rename to Editor/InternalResources/GPURendering/SFN_Rotator/SFN_Rotator_REQONLY.shader.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Rotator/SFN_Rotator_SPD.shader b/Editor/InternalResources/GPURendering/SFN_Rotator/SFN_Rotator_SPD.shader similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Rotator/SFN_Rotator_SPD.shader rename to Editor/InternalResources/GPURendering/SFN_Rotator/SFN_Rotator_SPD.shader diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Rotator/SFN_Rotator_SPD.shader.meta b/Editor/InternalResources/GPURendering/SFN_Rotator/SFN_Rotator_SPD.shader.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Rotator/SFN_Rotator_SPD.shader.meta rename to Editor/InternalResources/GPURendering/SFN_Rotator/SFN_Rotator_SPD.shader.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Rotator/SFN_Rotator_SPD_ANG.shader b/Editor/InternalResources/GPURendering/SFN_Rotator/SFN_Rotator_SPD_ANG.shader similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Rotator/SFN_Rotator_SPD_ANG.shader rename to Editor/InternalResources/GPURendering/SFN_Rotator/SFN_Rotator_SPD_ANG.shader diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Rotator/SFN_Rotator_SPD_ANG.shader.meta b/Editor/InternalResources/GPURendering/SFN_Rotator/SFN_Rotator_SPD_ANG.shader.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Rotator/SFN_Rotator_SPD_ANG.shader.meta rename to Editor/InternalResources/GPURendering/SFN_Rotator/SFN_Rotator_SPD_ANG.shader.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Round.meta b/Editor/InternalResources/GPURendering/SFN_Round.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Round.meta rename to Editor/InternalResources/GPURendering/SFN_Round.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Round/SFN_Round.shader b/Editor/InternalResources/GPURendering/SFN_Round/SFN_Round.shader similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Round/SFN_Round.shader rename to Editor/InternalResources/GPURendering/SFN_Round/SFN_Round.shader diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Round/SFN_Round.shader.meta b/Editor/InternalResources/GPURendering/SFN_Round/SFN_Round.shader.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Round/SFN_Round.shader.meta rename to Editor/InternalResources/GPURendering/SFN_Round/SFN_Round.shader.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_SceneColor.meta b/Editor/InternalResources/GPURendering/SFN_SceneColor.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_SceneColor.meta rename to Editor/InternalResources/GPURendering/SFN_SceneColor.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_SceneColor/SFN_SceneColor.shader b/Editor/InternalResources/GPURendering/SFN_SceneColor/SFN_SceneColor.shader similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_SceneColor/SFN_SceneColor.shader rename to Editor/InternalResources/GPURendering/SFN_SceneColor/SFN_SceneColor.shader diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_SceneColor/SFN_SceneColor.shader.meta b/Editor/InternalResources/GPURendering/SFN_SceneColor/SFN_SceneColor.shader.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_SceneColor/SFN_SceneColor.shader.meta rename to Editor/InternalResources/GPURendering/SFN_SceneColor/SFN_SceneColor.shader.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_SceneDepth.meta b/Editor/InternalResources/GPURendering/SFN_SceneDepth.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_SceneDepth.meta rename to Editor/InternalResources/GPURendering/SFN_SceneDepth.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_SceneDepth/SFN_SceneDepth.shader b/Editor/InternalResources/GPURendering/SFN_SceneDepth/SFN_SceneDepth.shader similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_SceneDepth/SFN_SceneDepth.shader rename to Editor/InternalResources/GPURendering/SFN_SceneDepth/SFN_SceneDepth.shader diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_SceneDepth/SFN_SceneDepth.shader.meta b/Editor/InternalResources/GPURendering/SFN_SceneDepth/SFN_SceneDepth.shader.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_SceneDepth/SFN_SceneDepth.shader.meta rename to Editor/InternalResources/GPURendering/SFN_SceneDepth/SFN_SceneDepth.shader.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_ScreenParameters.meta b/Editor/InternalResources/GPURendering/SFN_ScreenParameters.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_ScreenParameters.meta rename to Editor/InternalResources/GPURendering/SFN_ScreenParameters.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_ScreenParameters/SFN_ScreenParameters.shader b/Editor/InternalResources/GPURendering/SFN_ScreenParameters/SFN_ScreenParameters.shader similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_ScreenParameters/SFN_ScreenParameters.shader rename to Editor/InternalResources/GPURendering/SFN_ScreenParameters/SFN_ScreenParameters.shader diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_ScreenParameters/SFN_ScreenParameters.shader.meta b/Editor/InternalResources/GPURendering/SFN_ScreenParameters/SFN_ScreenParameters.shader.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_ScreenParameters/SFN_ScreenParameters.shader.meta rename to Editor/InternalResources/GPURendering/SFN_ScreenParameters/SFN_ScreenParameters.shader.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_ScreenPos.meta b/Editor/InternalResources/GPURendering/SFN_ScreenPos.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_ScreenPos.meta rename to Editor/InternalResources/GPURendering/SFN_ScreenPos.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_ScreenPos/SFN_ScreenPos.shader b/Editor/InternalResources/GPURendering/SFN_ScreenPos/SFN_ScreenPos.shader similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_ScreenPos/SFN_ScreenPos.shader rename to Editor/InternalResources/GPURendering/SFN_ScreenPos/SFN_ScreenPos.shader diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_ScreenPos/SFN_ScreenPos.shader.meta b/Editor/InternalResources/GPURendering/SFN_ScreenPos/SFN_ScreenPos.shader.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_ScreenPos/SFN_ScreenPos.shader.meta rename to Editor/InternalResources/GPURendering/SFN_ScreenPos/SFN_ScreenPos.shader.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Set.meta b/Editor/InternalResources/GPURendering/SFN_Set.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Set.meta rename to Editor/InternalResources/GPURendering/SFN_Set.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Set/SFN_Set.shader b/Editor/InternalResources/GPURendering/SFN_Set/SFN_Set.shader similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Set/SFN_Set.shader rename to Editor/InternalResources/GPURendering/SFN_Set/SFN_Set.shader diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Set/SFN_Set.shader.meta b/Editor/InternalResources/GPURendering/SFN_Set/SFN_Set.shader.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Set/SFN_Set.shader.meta rename to Editor/InternalResources/GPURendering/SFN_Set/SFN_Set.shader.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Sign.meta b/Editor/InternalResources/GPURendering/SFN_Sign.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Sign.meta rename to Editor/InternalResources/GPURendering/SFN_Sign.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Sign/SFN_Sign.shader b/Editor/InternalResources/GPURendering/SFN_Sign/SFN_Sign.shader similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Sign/SFN_Sign.shader rename to Editor/InternalResources/GPURendering/SFN_Sign/SFN_Sign.shader diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Sign/SFN_Sign.shader.meta b/Editor/InternalResources/GPURendering/SFN_Sign/SFN_Sign.shader.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Sign/SFN_Sign.shader.meta rename to Editor/InternalResources/GPURendering/SFN_Sign/SFN_Sign.shader.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Sin.meta b/Editor/InternalResources/GPURendering/SFN_Sin.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Sin.meta rename to Editor/InternalResources/GPURendering/SFN_Sin.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Sin/SFN_Sin.shader b/Editor/InternalResources/GPURendering/SFN_Sin/SFN_Sin.shader similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Sin/SFN_Sin.shader rename to Editor/InternalResources/GPURendering/SFN_Sin/SFN_Sin.shader diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Sin/SFN_Sin.shader.meta b/Editor/InternalResources/GPURendering/SFN_Sin/SFN_Sin.shader.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Sin/SFN_Sin.shader.meta rename to Editor/InternalResources/GPURendering/SFN_Sin/SFN_Sin.shader.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Smoothstep.meta b/Editor/InternalResources/GPURendering/SFN_Smoothstep.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Smoothstep.meta rename to Editor/InternalResources/GPURendering/SFN_Smoothstep.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Smoothstep/SFN_Smoothstep.shader b/Editor/InternalResources/GPURendering/SFN_Smoothstep/SFN_Smoothstep.shader similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Smoothstep/SFN_Smoothstep.shader rename to Editor/InternalResources/GPURendering/SFN_Smoothstep/SFN_Smoothstep.shader diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Smoothstep/SFN_Smoothstep.shader.meta b/Editor/InternalResources/GPURendering/SFN_Smoothstep/SFN_Smoothstep.shader.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Smoothstep/SFN_Smoothstep.shader.meta rename to Editor/InternalResources/GPURendering/SFN_Smoothstep/SFN_Smoothstep.shader.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Sqrt.meta b/Editor/InternalResources/GPURendering/SFN_Sqrt.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Sqrt.meta rename to Editor/InternalResources/GPURendering/SFN_Sqrt.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Sqrt/SFN_Sqrt.shader b/Editor/InternalResources/GPURendering/SFN_Sqrt/SFN_Sqrt.shader similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Sqrt/SFN_Sqrt.shader rename to Editor/InternalResources/GPURendering/SFN_Sqrt/SFN_Sqrt.shader diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Sqrt/SFN_Sqrt.shader.meta b/Editor/InternalResources/GPURendering/SFN_Sqrt/SFN_Sqrt.shader.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Sqrt/SFN_Sqrt.shader.meta rename to Editor/InternalResources/GPURendering/SFN_Sqrt/SFN_Sqrt.shader.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Step.meta b/Editor/InternalResources/GPURendering/SFN_Step.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Step.meta rename to Editor/InternalResources/GPURendering/SFN_Step.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Step/SFN_Step.shader b/Editor/InternalResources/GPURendering/SFN_Step/SFN_Step.shader similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Step/SFN_Step.shader rename to Editor/InternalResources/GPURendering/SFN_Step/SFN_Step.shader diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Step/SFN_Step.shader.meta b/Editor/InternalResources/GPURendering/SFN_Step/SFN_Step.shader.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Step/SFN_Step.shader.meta rename to Editor/InternalResources/GPURendering/SFN_Step/SFN_Step.shader.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Subtract.meta b/Editor/InternalResources/GPURendering/SFN_Subtract.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Subtract.meta rename to Editor/InternalResources/GPURendering/SFN_Subtract.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Subtract/SFN_Subtract.shader b/Editor/InternalResources/GPURendering/SFN_Subtract/SFN_Subtract.shader similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Subtract/SFN_Subtract.shader rename to Editor/InternalResources/GPURendering/SFN_Subtract/SFN_Subtract.shader diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Subtract/SFN_Subtract.shader.meta b/Editor/InternalResources/GPURendering/SFN_Subtract/SFN_Subtract.shader.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Subtract/SFN_Subtract.shader.meta rename to Editor/InternalResources/GPURendering/SFN_Subtract/SFN_Subtract.shader.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_SwitchProperty.meta b/Editor/InternalResources/GPURendering/SFN_SwitchProperty.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_SwitchProperty.meta rename to Editor/InternalResources/GPURendering/SFN_SwitchProperty.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_SwitchProperty/SFN_SwitchProperty.shader b/Editor/InternalResources/GPURendering/SFN_SwitchProperty/SFN_SwitchProperty.shader similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_SwitchProperty/SFN_SwitchProperty.shader rename to Editor/InternalResources/GPURendering/SFN_SwitchProperty/SFN_SwitchProperty.shader diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_SwitchProperty/SFN_SwitchProperty.shader.meta b/Editor/InternalResources/GPURendering/SFN_SwitchProperty/SFN_SwitchProperty.shader.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_SwitchProperty/SFN_SwitchProperty.shader.meta rename to Editor/InternalResources/GPURendering/SFN_SwitchProperty/SFN_SwitchProperty.shader.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Tan.meta b/Editor/InternalResources/GPURendering/SFN_Tan.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Tan.meta rename to Editor/InternalResources/GPURendering/SFN_Tan.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Tan/SFN_Tan.shader b/Editor/InternalResources/GPURendering/SFN_Tan/SFN_Tan.shader similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Tan/SFN_Tan.shader rename to Editor/InternalResources/GPURendering/SFN_Tan/SFN_Tan.shader diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Tan/SFN_Tan.shader.meta b/Editor/InternalResources/GPURendering/SFN_Tan/SFN_Tan.shader.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Tan/SFN_Tan.shader.meta rename to Editor/InternalResources/GPURendering/SFN_Tan/SFN_Tan.shader.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Tangent.meta b/Editor/InternalResources/GPURendering/SFN_Tangent.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Tangent.meta rename to Editor/InternalResources/GPURendering/SFN_Tangent.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Tangent/SFN_Tangent.shader b/Editor/InternalResources/GPURendering/SFN_Tangent/SFN_Tangent.shader similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Tangent/SFN_Tangent.shader rename to Editor/InternalResources/GPURendering/SFN_Tangent/SFN_Tangent.shader diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Tangent/SFN_Tangent.shader.meta b/Editor/InternalResources/GPURendering/SFN_Tangent/SFN_Tangent.shader.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Tangent/SFN_Tangent.shader.meta rename to Editor/InternalResources/GPURendering/SFN_Tangent/SFN_Tangent.shader.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Tex2d.meta b/Editor/InternalResources/GPURendering/SFN_Tex2d.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Tex2d.meta rename to Editor/InternalResources/GPURendering/SFN_Tex2d.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Tex2d/SFN_Tex2d_MIP.shader b/Editor/InternalResources/GPURendering/SFN_Tex2d/SFN_Tex2d_MIP.shader similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Tex2d/SFN_Tex2d_MIP.shader rename to Editor/InternalResources/GPURendering/SFN_Tex2d/SFN_Tex2d_MIP.shader diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Tex2d/SFN_Tex2d_MIP.shader.meta b/Editor/InternalResources/GPURendering/SFN_Tex2d/SFN_Tex2d_MIP.shader.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Tex2d/SFN_Tex2d_MIP.shader.meta rename to Editor/InternalResources/GPURendering/SFN_Tex2d/SFN_Tex2d_MIP.shader.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Tex2d/SFN_Tex2d_NoInputs.shader b/Editor/InternalResources/GPURendering/SFN_Tex2d/SFN_Tex2d_NoInputs.shader similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Tex2d/SFN_Tex2d_NoInputs.shader rename to Editor/InternalResources/GPURendering/SFN_Tex2d/SFN_Tex2d_NoInputs.shader diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Tex2d/SFN_Tex2d_NoInputs.shader.meta b/Editor/InternalResources/GPURendering/SFN_Tex2d/SFN_Tex2d_NoInputs.shader.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Tex2d/SFN_Tex2d_NoInputs.shader.meta rename to Editor/InternalResources/GPURendering/SFN_Tex2d/SFN_Tex2d_NoInputs.shader.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Tex2d/SFN_Tex2d_UV.shader b/Editor/InternalResources/GPURendering/SFN_Tex2d/SFN_Tex2d_UV.shader similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Tex2d/SFN_Tex2d_UV.shader rename to Editor/InternalResources/GPURendering/SFN_Tex2d/SFN_Tex2d_UV.shader diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Tex2d/SFN_Tex2d_UV.shader.meta b/Editor/InternalResources/GPURendering/SFN_Tex2d/SFN_Tex2d_UV.shader.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Tex2d/SFN_Tex2d_UV.shader.meta rename to Editor/InternalResources/GPURendering/SFN_Tex2d/SFN_Tex2d_UV.shader.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Tex2d/SFN_Tex2d_UV_MIP.shader b/Editor/InternalResources/GPURendering/SFN_Tex2d/SFN_Tex2d_UV_MIP.shader similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Tex2d/SFN_Tex2d_UV_MIP.shader rename to Editor/InternalResources/GPURendering/SFN_Tex2d/SFN_Tex2d_UV_MIP.shader diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Tex2d/SFN_Tex2d_UV_MIP.shader.meta b/Editor/InternalResources/GPURendering/SFN_Tex2d/SFN_Tex2d_UV_MIP.shader.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Tex2d/SFN_Tex2d_UV_MIP.shader.meta rename to Editor/InternalResources/GPURendering/SFN_Tex2d/SFN_Tex2d_UV_MIP.shader.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Tex2dAsset.meta b/Editor/InternalResources/GPURendering/SFN_Tex2dAsset.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Tex2dAsset.meta rename to Editor/InternalResources/GPURendering/SFN_Tex2dAsset.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Tex2dAsset/SFN_Tex2dAsset.shader b/Editor/InternalResources/GPURendering/SFN_Tex2dAsset/SFN_Tex2dAsset.shader similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Tex2dAsset/SFN_Tex2dAsset.shader rename to Editor/InternalResources/GPURendering/SFN_Tex2dAsset/SFN_Tex2dAsset.shader diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Tex2dAsset/SFN_Tex2dAsset.shader.meta b/Editor/InternalResources/GPURendering/SFN_Tex2dAsset/SFN_Tex2dAsset.shader.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Tex2dAsset/SFN_Tex2dAsset.shader.meta rename to Editor/InternalResources/GPURendering/SFN_Tex2dAsset/SFN_Tex2dAsset.shader.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_TexCoord.meta b/Editor/InternalResources/GPURendering/SFN_TexCoord.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_TexCoord.meta rename to Editor/InternalResources/GPURendering/SFN_TexCoord.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_TexCoord/SFN_TexCoord.shader b/Editor/InternalResources/GPURendering/SFN_TexCoord/SFN_TexCoord.shader similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_TexCoord/SFN_TexCoord.shader rename to Editor/InternalResources/GPURendering/SFN_TexCoord/SFN_TexCoord.shader diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_TexCoord/SFN_TexCoord.shader.meta b/Editor/InternalResources/GPURendering/SFN_TexCoord/SFN_TexCoord.shader.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_TexCoord/SFN_TexCoord.shader.meta rename to Editor/InternalResources/GPURendering/SFN_TexCoord/SFN_TexCoord.shader.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Time.meta b/Editor/InternalResources/GPURendering/SFN_Time.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Time.meta rename to Editor/InternalResources/GPURendering/SFN_Time.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Time/SFN_Time.shader b/Editor/InternalResources/GPURendering/SFN_Time/SFN_Time.shader similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Time/SFN_Time.shader rename to Editor/InternalResources/GPURendering/SFN_Time/SFN_Time.shader diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Time/SFN_Time.shader.meta b/Editor/InternalResources/GPURendering/SFN_Time/SFN_Time.shader.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Time/SFN_Time.shader.meta rename to Editor/InternalResources/GPURendering/SFN_Time/SFN_Time.shader.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Transform.meta b/Editor/InternalResources/GPURendering/SFN_Transform.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Transform.meta rename to Editor/InternalResources/GPURendering/SFN_Transform.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Transform/SFN_Transform.shader b/Editor/InternalResources/GPURendering/SFN_Transform/SFN_Transform.shader similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Transform/SFN_Transform.shader rename to Editor/InternalResources/GPURendering/SFN_Transform/SFN_Transform.shader diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Transform/SFN_Transform.shader.meta b/Editor/InternalResources/GPURendering/SFN_Transform/SFN_Transform.shader.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Transform/SFN_Transform.shader.meta rename to Editor/InternalResources/GPURendering/SFN_Transform/SFN_Transform.shader.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Transpose.meta b/Editor/InternalResources/GPURendering/SFN_Transpose.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Transpose.meta rename to Editor/InternalResources/GPURendering/SFN_Transpose.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Transpose/SFN_Transpose.shader b/Editor/InternalResources/GPURendering/SFN_Transpose/SFN_Transpose.shader similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Transpose/SFN_Transpose.shader rename to Editor/InternalResources/GPURendering/SFN_Transpose/SFN_Transpose.shader diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Transpose/SFN_Transpose.shader.meta b/Editor/InternalResources/GPURendering/SFN_Transpose/SFN_Transpose.shader.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Transpose/SFN_Transpose.shader.meta rename to Editor/InternalResources/GPURendering/SFN_Transpose/SFN_Transpose.shader.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Trunc.meta b/Editor/InternalResources/GPURendering/SFN_Trunc.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Trunc.meta rename to Editor/InternalResources/GPURendering/SFN_Trunc.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Trunc/SFN_Trunc.shader b/Editor/InternalResources/GPURendering/SFN_Trunc/SFN_Trunc.shader similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Trunc/SFN_Trunc.shader rename to Editor/InternalResources/GPURendering/SFN_Trunc/SFN_Trunc.shader diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Trunc/SFN_Trunc.shader.meta b/Editor/InternalResources/GPURendering/SFN_Trunc/SFN_Trunc.shader.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_Trunc/SFN_Trunc.shader.meta rename to Editor/InternalResources/GPURendering/SFN_Trunc/SFN_Trunc.shader.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_UVTile.meta b/Editor/InternalResources/GPURendering/SFN_UVTile.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_UVTile.meta rename to Editor/InternalResources/GPURendering/SFN_UVTile.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_UVTile/SFN_UVTile.shader b/Editor/InternalResources/GPURendering/SFN_UVTile/SFN_UVTile.shader similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_UVTile/SFN_UVTile.shader rename to Editor/InternalResources/GPURendering/SFN_UVTile/SFN_UVTile.shader diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_UVTile/SFN_UVTile.shader.meta b/Editor/InternalResources/GPURendering/SFN_UVTile/SFN_UVTile.shader.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_UVTile/SFN_UVTile.shader.meta rename to Editor/InternalResources/GPURendering/SFN_UVTile/SFN_UVTile.shader.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_VectorProjection.meta b/Editor/InternalResources/GPURendering/SFN_VectorProjection.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_VectorProjection.meta rename to Editor/InternalResources/GPURendering/SFN_VectorProjection.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_VectorProjection/SFN_VectorProjection.shader b/Editor/InternalResources/GPURendering/SFN_VectorProjection/SFN_VectorProjection.shader similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_VectorProjection/SFN_VectorProjection.shader rename to Editor/InternalResources/GPURendering/SFN_VectorProjection/SFN_VectorProjection.shader diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_VectorProjection/SFN_VectorProjection.shader.meta b/Editor/InternalResources/GPURendering/SFN_VectorProjection/SFN_VectorProjection.shader.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_VectorProjection/SFN_VectorProjection.shader.meta rename to Editor/InternalResources/GPURendering/SFN_VectorProjection/SFN_VectorProjection.shader.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_VectorRejection.meta b/Editor/InternalResources/GPURendering/SFN_VectorRejection.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_VectorRejection.meta rename to Editor/InternalResources/GPURendering/SFN_VectorRejection.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_VectorRejection/SFN_VectorRejection.shader b/Editor/InternalResources/GPURendering/SFN_VectorRejection/SFN_VectorRejection.shader similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_VectorRejection/SFN_VectorRejection.shader rename to Editor/InternalResources/GPURendering/SFN_VectorRejection/SFN_VectorRejection.shader diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_VectorRejection/SFN_VectorRejection.shader.meta b/Editor/InternalResources/GPURendering/SFN_VectorRejection/SFN_VectorRejection.shader.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_VectorRejection/SFN_VectorRejection.shader.meta rename to Editor/InternalResources/GPURendering/SFN_VectorRejection/SFN_VectorRejection.shader.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_VertexColor.meta b/Editor/InternalResources/GPURendering/SFN_VertexColor.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_VertexColor.meta rename to Editor/InternalResources/GPURendering/SFN_VertexColor.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_VertexColor/SFN_VertexColor.shader b/Editor/InternalResources/GPURendering/SFN_VertexColor/SFN_VertexColor.shader similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_VertexColor/SFN_VertexColor.shader rename to Editor/InternalResources/GPURendering/SFN_VertexColor/SFN_VertexColor.shader diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_VertexColor/SFN_VertexColor.shader.meta b/Editor/InternalResources/GPURendering/SFN_VertexColor/SFN_VertexColor.shader.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_VertexColor/SFN_VertexColor.shader.meta rename to Editor/InternalResources/GPURendering/SFN_VertexColor/SFN_VertexColor.shader.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_ViewPosition.meta b/Editor/InternalResources/GPURendering/SFN_ViewPosition.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_ViewPosition.meta rename to Editor/InternalResources/GPURendering/SFN_ViewPosition.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_ViewPosition/SFN_ViewPosition.shader b/Editor/InternalResources/GPURendering/SFN_ViewPosition/SFN_ViewPosition.shader similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_ViewPosition/SFN_ViewPosition.shader rename to Editor/InternalResources/GPURendering/SFN_ViewPosition/SFN_ViewPosition.shader diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_ViewPosition/SFN_ViewPosition.shader.meta b/Editor/InternalResources/GPURendering/SFN_ViewPosition/SFN_ViewPosition.shader.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_ViewPosition/SFN_ViewPosition.shader.meta rename to Editor/InternalResources/GPURendering/SFN_ViewPosition/SFN_ViewPosition.shader.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_ViewReflectionVector.meta b/Editor/InternalResources/GPURendering/SFN_ViewReflectionVector.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_ViewReflectionVector.meta rename to Editor/InternalResources/GPURendering/SFN_ViewReflectionVector.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_ViewReflectionVector/SFN_ViewReflectionVector.shader b/Editor/InternalResources/GPURendering/SFN_ViewReflectionVector/SFN_ViewReflectionVector.shader similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_ViewReflectionVector/SFN_ViewReflectionVector.shader rename to Editor/InternalResources/GPURendering/SFN_ViewReflectionVector/SFN_ViewReflectionVector.shader diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_ViewReflectionVector/SFN_ViewReflectionVector.shader.meta b/Editor/InternalResources/GPURendering/SFN_ViewReflectionVector/SFN_ViewReflectionVector.shader.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_ViewReflectionVector/SFN_ViewReflectionVector.shader.meta rename to Editor/InternalResources/GPURendering/SFN_ViewReflectionVector/SFN_ViewReflectionVector.shader.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_ViewVector.meta b/Editor/InternalResources/GPURendering/SFN_ViewVector.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_ViewVector.meta rename to Editor/InternalResources/GPURendering/SFN_ViewVector.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_ViewVector/SFN_ViewVector.shader b/Editor/InternalResources/GPURendering/SFN_ViewVector/SFN_ViewVector.shader similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_ViewVector/SFN_ViewVector.shader rename to Editor/InternalResources/GPURendering/SFN_ViewVector/SFN_ViewVector.shader diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_ViewVector/SFN_ViewVector.shader.meta b/Editor/InternalResources/GPURendering/SFN_ViewVector/SFN_ViewVector.shader.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/GPU Rendering/SFN_ViewVector/SFN_ViewVector.shader.meta rename to Editor/InternalResources/GPURendering/SFN_ViewVector/SFN_ViewVector.shader.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/Inspectors.meta b/Editor/InternalResources/Inspectors.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/Inspectors.meta rename to Editor/InternalResources/Inspectors.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/Inspectors/ShaderForgeInspector.cs b/Editor/InternalResources/Inspectors/ShaderForgeInspector.cs similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/Inspectors/ShaderForgeInspector.cs rename to Editor/InternalResources/Inspectors/ShaderForgeInspector.cs diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/Inspectors/ShaderForgeInspector.cs.meta b/Editor/InternalResources/Inspectors/ShaderForgeInspector.cs.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/Inspectors/ShaderForgeInspector.cs.meta rename to Editor/InternalResources/Inspectors/ShaderForgeInspector.cs.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/Inspectors/ShaderForgeMaterialInspector.cs b/Editor/InternalResources/Inspectors/ShaderForgeMaterialInspector.cs similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/Inspectors/ShaderForgeMaterialInspector.cs rename to Editor/InternalResources/Inspectors/ShaderForgeMaterialInspector.cs diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/Inspectors/ShaderForgeMaterialInspector.cs.meta b/Editor/InternalResources/Inspectors/ShaderForgeMaterialInspector.cs.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/Inspectors/ShaderForgeMaterialInspector.cs.meta rename to Editor/InternalResources/Inspectors/ShaderForgeMaterialInspector.cs.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface.meta b/Editor/InternalResources/Interface.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface.meta rename to Editor/InternalResources/Interface.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/Fonts.meta b/Editor/InternalResources/Interface/Fonts.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/Fonts.meta rename to Editor/InternalResources/Interface/Fonts.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/Fonts/VeraMono-Bold-Italic.ttf b/Editor/InternalResources/Interface/Fonts/VeraMono-Bold-Italic.ttf old mode 100755 new mode 100644 similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/Fonts/VeraMono-Bold-Italic.ttf rename to Editor/InternalResources/Interface/Fonts/VeraMono-Bold-Italic.ttf diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/Fonts/VeraMono-Bold-Italic.ttf.meta b/Editor/InternalResources/Interface/Fonts/VeraMono-Bold-Italic.ttf.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/Fonts/VeraMono-Bold-Italic.ttf.meta rename to Editor/InternalResources/Interface/Fonts/VeraMono-Bold-Italic.ttf.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/Fonts/VeraMono-Bold.ttf b/Editor/InternalResources/Interface/Fonts/VeraMono-Bold.ttf old mode 100755 new mode 100644 similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/Fonts/VeraMono-Bold.ttf rename to Editor/InternalResources/Interface/Fonts/VeraMono-Bold.ttf diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/Fonts/VeraMono-Bold.ttf.meta b/Editor/InternalResources/Interface/Fonts/VeraMono-Bold.ttf.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/Fonts/VeraMono-Bold.ttf.meta rename to Editor/InternalResources/Interface/Fonts/VeraMono-Bold.ttf.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/Fonts/VeraMono-Italic.ttf b/Editor/InternalResources/Interface/Fonts/VeraMono-Italic.ttf old mode 100755 new mode 100644 similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/Fonts/VeraMono-Italic.ttf rename to Editor/InternalResources/Interface/Fonts/VeraMono-Italic.ttf diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/Fonts/VeraMono-Italic.ttf.meta b/Editor/InternalResources/Interface/Fonts/VeraMono-Italic.ttf.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/Fonts/VeraMono-Italic.ttf.meta rename to Editor/InternalResources/Interface/Fonts/VeraMono-Italic.ttf.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/Fonts/VeraMono.ttf b/Editor/InternalResources/Interface/Fonts/VeraMono.ttf old mode 100755 new mode 100644 similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/Fonts/VeraMono.ttf rename to Editor/InternalResources/Interface/Fonts/VeraMono.ttf diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/Fonts/VeraMono.ttf.meta b/Editor/InternalResources/Interface/Fonts/VeraMono.ttf.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/Fonts/VeraMono.ttf.meta rename to Editor/InternalResources/Interface/Fonts/VeraMono.ttf.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/Nodes.meta b/Editor/InternalResources/Interface/Nodes.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/Nodes.meta rename to Editor/InternalResources/Interface/Nodes.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/Nodes/Data.meta b/Editor/InternalResources/Interface/Nodes/Data.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/Nodes/Data.meta rename to Editor/InternalResources/Interface/Nodes/Data.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/Nodes/Data/node_3d_data_mask.png b/Editor/InternalResources/Interface/Nodes/Data/node_3d_data_mask.png similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/Nodes/Data/node_3d_data_mask.png rename to Editor/InternalResources/Interface/Nodes/Data/node_3d_data_mask.png diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/Nodes/Data/node_3d_data_mask.png.meta b/Editor/InternalResources/Interface/Nodes/Data/node_3d_data_mask.png.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/Nodes/Data/node_3d_data_mask.png.meta rename to Editor/InternalResources/Interface/Nodes/Data/node_3d_data_mask.png.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/Nodes/Data/sfn_bitangent.png b/Editor/InternalResources/Interface/Nodes/Data/sfn_bitangent.png similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/Nodes/Data/sfn_bitangent.png rename to Editor/InternalResources/Interface/Nodes/Data/sfn_bitangent.png diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/Nodes/Data/sfn_bitangent.png.meta b/Editor/InternalResources/Interface/Nodes/Data/sfn_bitangent.png.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/Nodes/Data/sfn_bitangent.png.meta rename to Editor/InternalResources/Interface/Nodes/Data/sfn_bitangent.png.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/Nodes/Data/sfn_depth.png b/Editor/InternalResources/Interface/Nodes/Data/sfn_depth.png similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/Nodes/Data/sfn_depth.png rename to Editor/InternalResources/Interface/Nodes/Data/sfn_depth.png diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/Nodes/Data/sfn_depth.png.meta b/Editor/InternalResources/Interface/Nodes/Data/sfn_depth.png.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/Nodes/Data/sfn_depth.png.meta rename to Editor/InternalResources/Interface/Nodes/Data/sfn_depth.png.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/Nodes/Data/sfn_fragmentposition.png b/Editor/InternalResources/Interface/Nodes/Data/sfn_fragmentposition.png similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/Nodes/Data/sfn_fragmentposition.png rename to Editor/InternalResources/Interface/Nodes/Data/sfn_fragmentposition.png diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/Nodes/Data/sfn_fragmentposition.png.meta b/Editor/InternalResources/Interface/Nodes/Data/sfn_fragmentposition.png.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/Nodes/Data/sfn_fragmentposition.png.meta rename to Editor/InternalResources/Interface/Nodes/Data/sfn_fragmentposition.png.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/Nodes/Data/sfn_fresnel.png b/Editor/InternalResources/Interface/Nodes/Data/sfn_fresnel.png similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/Nodes/Data/sfn_fresnel.png rename to Editor/InternalResources/Interface/Nodes/Data/sfn_fresnel.png diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/Nodes/Data/sfn_fresnel.png.meta b/Editor/InternalResources/Interface/Nodes/Data/sfn_fresnel.png.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/Nodes/Data/sfn_fresnel.png.meta rename to Editor/InternalResources/Interface/Nodes/Data/sfn_fresnel.png.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/Nodes/Data/sfn_halfvector.png b/Editor/InternalResources/Interface/Nodes/Data/sfn_halfvector.png similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/Nodes/Data/sfn_halfvector.png rename to Editor/InternalResources/Interface/Nodes/Data/sfn_halfvector.png diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/Nodes/Data/sfn_halfvector.png.meta b/Editor/InternalResources/Interface/Nodes/Data/sfn_halfvector.png.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/Nodes/Data/sfn_halfvector.png.meta rename to Editor/InternalResources/Interface/Nodes/Data/sfn_halfvector.png.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/Nodes/Data/sfn_lightattenuation.png b/Editor/InternalResources/Interface/Nodes/Data/sfn_lightattenuation.png similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/Nodes/Data/sfn_lightattenuation.png rename to Editor/InternalResources/Interface/Nodes/Data/sfn_lightattenuation.png diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/Nodes/Data/sfn_lightattenuation.png.meta b/Editor/InternalResources/Interface/Nodes/Data/sfn_lightattenuation.png.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/Nodes/Data/sfn_lightattenuation.png.meta rename to Editor/InternalResources/Interface/Nodes/Data/sfn_lightattenuation.png.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/Nodes/Data/sfn_lightcolor.png b/Editor/InternalResources/Interface/Nodes/Data/sfn_lightcolor.png similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/Nodes/Data/sfn_lightcolor.png rename to Editor/InternalResources/Interface/Nodes/Data/sfn_lightcolor.png diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/Nodes/Data/sfn_lightcolor.png.meta b/Editor/InternalResources/Interface/Nodes/Data/sfn_lightcolor.png.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/Nodes/Data/sfn_lightcolor.png.meta rename to Editor/InternalResources/Interface/Nodes/Data/sfn_lightcolor.png.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/Nodes/Data/sfn_lightvector.png b/Editor/InternalResources/Interface/Nodes/Data/sfn_lightvector.png similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/Nodes/Data/sfn_lightvector.png rename to Editor/InternalResources/Interface/Nodes/Data/sfn_lightvector.png diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/Nodes/Data/sfn_lightvector.png.meta b/Editor/InternalResources/Interface/Nodes/Data/sfn_lightvector.png.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/Nodes/Data/sfn_lightvector.png.meta rename to Editor/InternalResources/Interface/Nodes/Data/sfn_lightvector.png.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/Nodes/Data/sfn_normalvector.png b/Editor/InternalResources/Interface/Nodes/Data/sfn_normalvector.png similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/Nodes/Data/sfn_normalvector.png rename to Editor/InternalResources/Interface/Nodes/Data/sfn_normalvector.png diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/Nodes/Data/sfn_normalvector.png.meta b/Editor/InternalResources/Interface/Nodes/Data/sfn_normalvector.png.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/Nodes/Data/sfn_normalvector.png.meta rename to Editor/InternalResources/Interface/Nodes/Data/sfn_normalvector.png.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/Nodes/Data/sfn_normalvector_2.png b/Editor/InternalResources/Interface/Nodes/Data/sfn_normalvector_2.png similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/Nodes/Data/sfn_normalvector_2.png rename to Editor/InternalResources/Interface/Nodes/Data/sfn_normalvector_2.png diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/Nodes/Data/sfn_normalvector_2.png.meta b/Editor/InternalResources/Interface/Nodes/Data/sfn_normalvector_2.png.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/Nodes/Data/sfn_normalvector_2.png.meta rename to Editor/InternalResources/Interface/Nodes/Data/sfn_normalvector_2.png.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/Nodes/Data/sfn_tangent.png b/Editor/InternalResources/Interface/Nodes/Data/sfn_tangent.png similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/Nodes/Data/sfn_tangent.png rename to Editor/InternalResources/Interface/Nodes/Data/sfn_tangent.png diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/Nodes/Data/sfn_tangent.png.meta b/Editor/InternalResources/Interface/Nodes/Data/sfn_tangent.png.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/Nodes/Data/sfn_tangent.png.meta rename to Editor/InternalResources/Interface/Nodes/Data/sfn_tangent.png.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/Nodes/Data/sfn_viewreflectionvector.png b/Editor/InternalResources/Interface/Nodes/Data/sfn_viewreflectionvector.png similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/Nodes/Data/sfn_viewreflectionvector.png rename to Editor/InternalResources/Interface/Nodes/Data/sfn_viewreflectionvector.png diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/Nodes/Data/sfn_viewreflectionvector.png.meta b/Editor/InternalResources/Interface/Nodes/Data/sfn_viewreflectionvector.png.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/Nodes/Data/sfn_viewreflectionvector.png.meta rename to Editor/InternalResources/Interface/Nodes/Data/sfn_viewreflectionvector.png.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/Nodes/Data/sfn_viewvector.png b/Editor/InternalResources/Interface/Nodes/Data/sfn_viewvector.png similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/Nodes/Data/sfn_viewvector.png rename to Editor/InternalResources/Interface/Nodes/Data/sfn_viewvector.png diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/Nodes/Data/sfn_viewvector.png.meta b/Editor/InternalResources/Interface/Nodes/Data/sfn_viewvector.png.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/Nodes/Data/sfn_viewvector.png.meta rename to Editor/InternalResources/Interface/Nodes/Data/sfn_viewvector.png.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/Nodes/sfn_ambientlight.png b/Editor/InternalResources/Interface/Nodes/sfn_ambientlight.png similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/Nodes/sfn_ambientlight.png rename to Editor/InternalResources/Interface/Nodes/sfn_ambientlight.png diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/Nodes/sfn_ambientlight.png.meta b/Editor/InternalResources/Interface/Nodes/sfn_ambientlight.png.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/Nodes/sfn_ambientlight.png.meta rename to Editor/InternalResources/Interface/Nodes/sfn_ambientlight.png.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/Nodes/sfn_bitangent.png b/Editor/InternalResources/Interface/Nodes/sfn_bitangent.png similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/Nodes/sfn_bitangent.png rename to Editor/InternalResources/Interface/Nodes/sfn_bitangent.png diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/Nodes/sfn_bitangent.png.meta b/Editor/InternalResources/Interface/Nodes/sfn_bitangent.png.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/Nodes/sfn_bitangent.png.meta rename to Editor/InternalResources/Interface/Nodes/sfn_bitangent.png.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/Nodes/sfn_depth.png b/Editor/InternalResources/Interface/Nodes/sfn_depth.png similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/Nodes/sfn_depth.png rename to Editor/InternalResources/Interface/Nodes/sfn_depth.png diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/Nodes/sfn_depth.png.meta b/Editor/InternalResources/Interface/Nodes/sfn_depth.png.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/Nodes/sfn_depth.png.meta rename to Editor/InternalResources/Interface/Nodes/sfn_depth.png.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/Nodes/sfn_e.png b/Editor/InternalResources/Interface/Nodes/sfn_e.png similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/Nodes/sfn_e.png rename to Editor/InternalResources/Interface/Nodes/sfn_e.png diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/Nodes/sfn_e.png.meta b/Editor/InternalResources/Interface/Nodes/sfn_e.png.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/Nodes/sfn_e.png.meta rename to Editor/InternalResources/Interface/Nodes/sfn_e.png.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/Nodes/sfn_facesign.png b/Editor/InternalResources/Interface/Nodes/sfn_facesign.png similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/Nodes/sfn_facesign.png rename to Editor/InternalResources/Interface/Nodes/sfn_facesign.png diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/Nodes/sfn_facesign.png.meta b/Editor/InternalResources/Interface/Nodes/sfn_facesign.png.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/Nodes/sfn_facesign.png.meta rename to Editor/InternalResources/Interface/Nodes/sfn_facesign.png.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/Nodes/sfn_facesign_2.png b/Editor/InternalResources/Interface/Nodes/sfn_facesign_2.png similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/Nodes/sfn_facesign_2.png rename to Editor/InternalResources/Interface/Nodes/sfn_facesign_2.png diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/Nodes/sfn_facesign_2.png.meta b/Editor/InternalResources/Interface/Nodes/sfn_facesign_2.png.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/Nodes/sfn_facesign_2.png.meta rename to Editor/InternalResources/Interface/Nodes/sfn_facesign_2.png.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/Nodes/sfn_final.png b/Editor/InternalResources/Interface/Nodes/sfn_final.png similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/Nodes/sfn_final.png rename to Editor/InternalResources/Interface/Nodes/sfn_final.png diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/Nodes/sfn_final.png.meta b/Editor/InternalResources/Interface/Nodes/sfn_final.png.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/Nodes/sfn_final.png.meta rename to Editor/InternalResources/Interface/Nodes/sfn_final.png.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/Nodes/sfn_fogcolor.png b/Editor/InternalResources/Interface/Nodes/sfn_fogcolor.png similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/Nodes/sfn_fogcolor.png rename to Editor/InternalResources/Interface/Nodes/sfn_fogcolor.png diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/Nodes/sfn_fogcolor.png.meta b/Editor/InternalResources/Interface/Nodes/sfn_fogcolor.png.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/Nodes/sfn_fogcolor.png.meta rename to Editor/InternalResources/Interface/Nodes/sfn_fogcolor.png.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/Nodes/sfn_fogcolor_2.png b/Editor/InternalResources/Interface/Nodes/sfn_fogcolor_2.png similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/Nodes/sfn_fogcolor_2.png rename to Editor/InternalResources/Interface/Nodes/sfn_fogcolor_2.png diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/Nodes/sfn_fogcolor_2.png.meta b/Editor/InternalResources/Interface/Nodes/sfn_fogcolor_2.png.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/Nodes/sfn_fogcolor_2.png.meta rename to Editor/InternalResources/Interface/Nodes/sfn_fogcolor_2.png.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/Nodes/sfn_fragmentposition.png b/Editor/InternalResources/Interface/Nodes/sfn_fragmentposition.png similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/Nodes/sfn_fragmentposition.png rename to Editor/InternalResources/Interface/Nodes/sfn_fragmentposition.png diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/Nodes/sfn_fragmentposition.png.meta b/Editor/InternalResources/Interface/Nodes/sfn_fragmentposition.png.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/Nodes/sfn_fragmentposition.png.meta rename to Editor/InternalResources/Interface/Nodes/sfn_fragmentposition.png.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/Nodes/sfn_halfvector.png b/Editor/InternalResources/Interface/Nodes/sfn_halfvector.png similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/Nodes/sfn_halfvector.png rename to Editor/InternalResources/Interface/Nodes/sfn_halfvector.png diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/Nodes/sfn_halfvector.png.meta b/Editor/InternalResources/Interface/Nodes/sfn_halfvector.png.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/Nodes/sfn_halfvector.png.meta rename to Editor/InternalResources/Interface/Nodes/sfn_halfvector.png.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/Nodes/sfn_lightattenuation.png b/Editor/InternalResources/Interface/Nodes/sfn_lightattenuation.png similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/Nodes/sfn_lightattenuation.png rename to Editor/InternalResources/Interface/Nodes/sfn_lightattenuation.png diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/Nodes/sfn_lightattenuation.png.meta b/Editor/InternalResources/Interface/Nodes/sfn_lightattenuation.png.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/Nodes/sfn_lightattenuation.png.meta rename to Editor/InternalResources/Interface/Nodes/sfn_lightattenuation.png.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/Nodes/sfn_lightcolor.png b/Editor/InternalResources/Interface/Nodes/sfn_lightcolor.png similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/Nodes/sfn_lightcolor.png rename to Editor/InternalResources/Interface/Nodes/sfn_lightcolor.png diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/Nodes/sfn_lightcolor.png.meta b/Editor/InternalResources/Interface/Nodes/sfn_lightcolor.png.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/Nodes/sfn_lightcolor.png.meta rename to Editor/InternalResources/Interface/Nodes/sfn_lightcolor.png.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/Nodes/sfn_lightposition.png b/Editor/InternalResources/Interface/Nodes/sfn_lightposition.png similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/Nodes/sfn_lightposition.png rename to Editor/InternalResources/Interface/Nodes/sfn_lightposition.png diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/Nodes/sfn_lightposition.png.meta b/Editor/InternalResources/Interface/Nodes/sfn_lightposition.png.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/Nodes/sfn_lightposition.png.meta rename to Editor/InternalResources/Interface/Nodes/sfn_lightposition.png.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/Nodes/sfn_lightvector.png b/Editor/InternalResources/Interface/Nodes/sfn_lightvector.png similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/Nodes/sfn_lightvector.png rename to Editor/InternalResources/Interface/Nodes/sfn_lightvector.png diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/Nodes/sfn_lightvector.png.meta b/Editor/InternalResources/Interface/Nodes/sfn_lightvector.png.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/Nodes/sfn_lightvector.png.meta rename to Editor/InternalResources/Interface/Nodes/sfn_lightvector.png.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/Nodes/sfn_normalvector.png b/Editor/InternalResources/Interface/Nodes/sfn_normalvector.png similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/Nodes/sfn_normalvector.png rename to Editor/InternalResources/Interface/Nodes/sfn_normalvector.png diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/Nodes/sfn_normalvector.png.meta b/Editor/InternalResources/Interface/Nodes/sfn_normalvector.png.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/Nodes/sfn_normalvector.png.meta rename to Editor/InternalResources/Interface/Nodes/sfn_normalvector.png.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/Nodes/sfn_normalvector_2.png b/Editor/InternalResources/Interface/Nodes/sfn_normalvector_2.png similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/Nodes/sfn_normalvector_2.png rename to Editor/InternalResources/Interface/Nodes/sfn_normalvector_2.png diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/Nodes/sfn_normalvector_2.png.meta b/Editor/InternalResources/Interface/Nodes/sfn_normalvector_2.png.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/Nodes/sfn_normalvector_2.png.meta rename to Editor/InternalResources/Interface/Nodes/sfn_normalvector_2.png.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/Nodes/sfn_objectposition.png b/Editor/InternalResources/Interface/Nodes/sfn_objectposition.png similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/Nodes/sfn_objectposition.png rename to Editor/InternalResources/Interface/Nodes/sfn_objectposition.png diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/Nodes/sfn_objectposition.png.meta b/Editor/InternalResources/Interface/Nodes/sfn_objectposition.png.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/Nodes/sfn_objectposition.png.meta rename to Editor/InternalResources/Interface/Nodes/sfn_objectposition.png.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/Nodes/sfn_objectscale.png b/Editor/InternalResources/Interface/Nodes/sfn_objectscale.png similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/Nodes/sfn_objectscale.png rename to Editor/InternalResources/Interface/Nodes/sfn_objectscale.png diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/Nodes/sfn_objectscale.png.meta b/Editor/InternalResources/Interface/Nodes/sfn_objectscale.png.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/Nodes/sfn_objectscale.png.meta rename to Editor/InternalResources/Interface/Nodes/sfn_objectscale.png.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/Nodes/sfn_phi.png b/Editor/InternalResources/Interface/Nodes/sfn_phi.png similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/Nodes/sfn_phi.png rename to Editor/InternalResources/Interface/Nodes/sfn_phi.png diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/Nodes/sfn_phi.png.meta b/Editor/InternalResources/Interface/Nodes/sfn_phi.png.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/Nodes/sfn_phi.png.meta rename to Editor/InternalResources/Interface/Nodes/sfn_phi.png.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/Nodes/sfn_pi.png b/Editor/InternalResources/Interface/Nodes/sfn_pi.png similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/Nodes/sfn_pi.png rename to Editor/InternalResources/Interface/Nodes/sfn_pi.png diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/Nodes/sfn_pi.png.meta b/Editor/InternalResources/Interface/Nodes/sfn_pi.png.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/Nodes/sfn_pi.png.meta rename to Editor/InternalResources/Interface/Nodes/sfn_pi.png.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/Nodes/sfn_projectionparameters.png b/Editor/InternalResources/Interface/Nodes/sfn_projectionparameters.png similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/Nodes/sfn_projectionparameters.png rename to Editor/InternalResources/Interface/Nodes/sfn_projectionparameters.png diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/Nodes/sfn_projectionparameters.png.meta b/Editor/InternalResources/Interface/Nodes/sfn_projectionparameters.png.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/Nodes/sfn_projectionparameters.png.meta rename to Editor/InternalResources/Interface/Nodes/sfn_projectionparameters.png.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/Nodes/sfn_root2.png b/Editor/InternalResources/Interface/Nodes/sfn_root2.png similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/Nodes/sfn_root2.png rename to Editor/InternalResources/Interface/Nodes/sfn_root2.png diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/Nodes/sfn_root2.png.meta b/Editor/InternalResources/Interface/Nodes/sfn_root2.png.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/Nodes/sfn_root2.png.meta rename to Editor/InternalResources/Interface/Nodes/sfn_root2.png.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/Nodes/sfn_screenparameters.png b/Editor/InternalResources/Interface/Nodes/sfn_screenparameters.png similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/Nodes/sfn_screenparameters.png rename to Editor/InternalResources/Interface/Nodes/sfn_screenparameters.png diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/Nodes/sfn_screenparameters.png.meta b/Editor/InternalResources/Interface/Nodes/sfn_screenparameters.png.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/Nodes/sfn_screenparameters.png.meta rename to Editor/InternalResources/Interface/Nodes/sfn_screenparameters.png.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/Nodes/sfn_screenpos.png b/Editor/InternalResources/Interface/Nodes/sfn_screenpos.png similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/Nodes/sfn_screenpos.png rename to Editor/InternalResources/Interface/Nodes/sfn_screenpos.png diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/Nodes/sfn_screenpos.png.meta b/Editor/InternalResources/Interface/Nodes/sfn_screenpos.png.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/Nodes/sfn_screenpos.png.meta rename to Editor/InternalResources/Interface/Nodes/sfn_screenpos.png.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/Nodes/sfn_screenpos_2.png b/Editor/InternalResources/Interface/Nodes/sfn_screenpos_2.png similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/Nodes/sfn_screenpos_2.png rename to Editor/InternalResources/Interface/Nodes/sfn_screenpos_2.png diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/Nodes/sfn_screenpos_2.png.meta b/Editor/InternalResources/Interface/Nodes/sfn_screenpos_2.png.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/Nodes/sfn_screenpos_2.png.meta rename to Editor/InternalResources/Interface/Nodes/sfn_screenpos_2.png.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/Nodes/sfn_screenpos_3.png b/Editor/InternalResources/Interface/Nodes/sfn_screenpos_3.png similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/Nodes/sfn_screenpos_3.png rename to Editor/InternalResources/Interface/Nodes/sfn_screenpos_3.png diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/Nodes/sfn_screenpos_3.png.meta b/Editor/InternalResources/Interface/Nodes/sfn_screenpos_3.png.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/Nodes/sfn_screenpos_3.png.meta rename to Editor/InternalResources/Interface/Nodes/sfn_screenpos_3.png.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/Nodes/sfn_tangent.png b/Editor/InternalResources/Interface/Nodes/sfn_tangent.png similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/Nodes/sfn_tangent.png rename to Editor/InternalResources/Interface/Nodes/sfn_tangent.png diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/Nodes/sfn_tangent.png.meta b/Editor/InternalResources/Interface/Nodes/sfn_tangent.png.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/Nodes/sfn_tangent.png.meta rename to Editor/InternalResources/Interface/Nodes/sfn_tangent.png.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/Nodes/sfn_tau.png b/Editor/InternalResources/Interface/Nodes/sfn_tau.png similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/Nodes/sfn_tau.png rename to Editor/InternalResources/Interface/Nodes/sfn_tau.png diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/Nodes/sfn_tau.png.meta b/Editor/InternalResources/Interface/Nodes/sfn_tau.png.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/Nodes/sfn_tau.png.meta rename to Editor/InternalResources/Interface/Nodes/sfn_tau.png.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/Nodes/sfn_time.png b/Editor/InternalResources/Interface/Nodes/sfn_time.png similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/Nodes/sfn_time.png rename to Editor/InternalResources/Interface/Nodes/sfn_time.png diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/Nodes/sfn_time.png.meta b/Editor/InternalResources/Interface/Nodes/sfn_time.png.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/Nodes/sfn_time.png.meta rename to Editor/InternalResources/Interface/Nodes/sfn_time.png.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/Nodes/sfn_vertexcolor.png b/Editor/InternalResources/Interface/Nodes/sfn_vertexcolor.png similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/Nodes/sfn_vertexcolor.png rename to Editor/InternalResources/Interface/Nodes/sfn_vertexcolor.png diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/Nodes/sfn_vertexcolor.png.meta b/Editor/InternalResources/Interface/Nodes/sfn_vertexcolor.png.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/Nodes/sfn_vertexcolor.png.meta rename to Editor/InternalResources/Interface/Nodes/sfn_vertexcolor.png.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/Nodes/sfn_viewposition.png b/Editor/InternalResources/Interface/Nodes/sfn_viewposition.png similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/Nodes/sfn_viewposition.png rename to Editor/InternalResources/Interface/Nodes/sfn_viewposition.png diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/Nodes/sfn_viewposition.png.meta b/Editor/InternalResources/Interface/Nodes/sfn_viewposition.png.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/Nodes/sfn_viewposition.png.meta rename to Editor/InternalResources/Interface/Nodes/sfn_viewposition.png.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/Nodes/sfn_viewreflectionvector.png b/Editor/InternalResources/Interface/Nodes/sfn_viewreflectionvector.png similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/Nodes/sfn_viewreflectionvector.png rename to Editor/InternalResources/Interface/Nodes/sfn_viewreflectionvector.png diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/Nodes/sfn_viewreflectionvector.png.meta b/Editor/InternalResources/Interface/Nodes/sfn_viewreflectionvector.png.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/Nodes/sfn_viewreflectionvector.png.meta rename to Editor/InternalResources/Interface/Nodes/sfn_viewreflectionvector.png.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/Nodes/sfn_viewvector.png b/Editor/InternalResources/Interface/Nodes/sfn_viewvector.png similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/Nodes/sfn_viewvector.png rename to Editor/InternalResources/Interface/Nodes/sfn_viewvector.png diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/Nodes/sfn_viewvector.png.meta b/Editor/InternalResources/Interface/Nodes/sfn_viewvector.png.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/Nodes/sfn_viewvector.png.meta rename to Editor/InternalResources/Interface/Nodes/sfn_viewvector.png.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/chk.png b/Editor/InternalResources/Interface/chk.png similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/chk.png rename to Editor/InternalResources/Interface/chk.png diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/chk.png.meta b/Editor/InternalResources/Interface/chk.png.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/chk.png.meta rename to Editor/InternalResources/Interface/chk.png.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/chk_light.png b/Editor/InternalResources/Interface/chk_light.png similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/chk_light.png rename to Editor/InternalResources/Interface/chk_light.png diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/chk_light.png.meta b/Editor/InternalResources/Interface/chk_light.png.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/chk_light.png.meta rename to Editor/InternalResources/Interface/chk_light.png.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/handle_drag.tga b/Editor/InternalResources/Interface/handle_drag.tga similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/handle_drag.tga rename to Editor/InternalResources/Interface/handle_drag.tga diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/handle_drag.tga.meta b/Editor/InternalResources/Interface/handle_drag.tga.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/handle_drag.tga.meta rename to Editor/InternalResources/Interface/handle_drag.tga.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/icon.png b/Editor/InternalResources/Interface/icon.png similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/icon.png rename to Editor/InternalResources/Interface/icon.png diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/icon.png.meta b/Editor/InternalResources/Interface/icon.png.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/icon.png.meta rename to Editor/InternalResources/Interface/icon.png.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/icon_light.png b/Editor/InternalResources/Interface/icon_light.png similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/icon_light.png rename to Editor/InternalResources/Interface/icon_light.png diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/icon_light.png.meta b/Editor/InternalResources/Interface/icon_light.png.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/icon_light.png.meta rename to Editor/InternalResources/Interface/icon_light.png.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/icon_normal.tga b/Editor/InternalResources/Interface/icon_normal.tga similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/icon_normal.tga rename to Editor/InternalResources/Interface/icon_normal.tga diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/icon_normal.tga.meta b/Editor/InternalResources/Interface/icon_normal.tga.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/icon_normal.tga.meta rename to Editor/InternalResources/Interface/icon_normal.tga.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/inst_frag.png b/Editor/InternalResources/Interface/inst_frag.png similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/inst_frag.png rename to Editor/InternalResources/Interface/inst_frag.png diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/inst_frag.png.meta b/Editor/InternalResources/Interface/inst_frag.png.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/inst_frag.png.meta rename to Editor/InternalResources/Interface/inst_frag.png.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/inst_frag_light.png b/Editor/InternalResources/Interface/inst_frag_light.png similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/inst_frag_light.png rename to Editor/InternalResources/Interface/inst_frag_light.png diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/inst_frag_light.png.meta b/Editor/InternalResources/Interface/inst_frag_light.png.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/inst_frag_light.png.meta rename to Editor/InternalResources/Interface/inst_frag_light.png.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/inst_frag_tex.png b/Editor/InternalResources/Interface/inst_frag_tex.png similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/inst_frag_tex.png rename to Editor/InternalResources/Interface/inst_frag_tex.png diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/inst_frag_tex.png.meta b/Editor/InternalResources/Interface/inst_frag_tex.png.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/inst_frag_tex.png.meta rename to Editor/InternalResources/Interface/inst_frag_tex.png.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/inst_frag_tex_light.png b/Editor/InternalResources/Interface/inst_frag_tex_light.png similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/inst_frag_tex_light.png rename to Editor/InternalResources/Interface/inst_frag_tex_light.png diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/inst_frag_tex_light.png.meta b/Editor/InternalResources/Interface/inst_frag_tex_light.png.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/inst_frag_tex_light.png.meta rename to Editor/InternalResources/Interface/inst_frag_tex_light.png.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/inst_vert.png b/Editor/InternalResources/Interface/inst_vert.png similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/inst_vert.png rename to Editor/InternalResources/Interface/inst_vert.png diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/inst_vert.png.meta b/Editor/InternalResources/Interface/inst_vert.png.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/inst_vert.png.meta rename to Editor/InternalResources/Interface/inst_vert.png.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/inst_vert_light.png b/Editor/InternalResources/Interface/inst_vert_light.png similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/inst_vert_light.png rename to Editor/InternalResources/Interface/inst_vert_light.png diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/inst_vert_light.png.meta b/Editor/InternalResources/Interface/inst_vert_light.png.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/inst_vert_light.png.meta rename to Editor/InternalResources/Interface/inst_vert_light.png.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/inst_vert_tex.png b/Editor/InternalResources/Interface/inst_vert_tex.png similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/inst_vert_tex.png rename to Editor/InternalResources/Interface/inst_vert_tex.png diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/inst_vert_tex.png.meta b/Editor/InternalResources/Interface/inst_vert_tex.png.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/inst_vert_tex.png.meta rename to Editor/InternalResources/Interface/inst_vert_tex.png.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/inst_vert_tex_light.png b/Editor/InternalResources/Interface/inst_vert_tex_light.png similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/inst_vert_tex_light.png rename to Editor/InternalResources/Interface/inst_vert_tex_light.png diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/inst_vert_tex_light.png.meta b/Editor/InternalResources/Interface/inst_vert_tex_light.png.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/inst_vert_tex_light.png.meta rename to Editor/InternalResources/Interface/inst_vert_tex_light.png.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/logo.png b/Editor/InternalResources/Interface/logo.png similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/logo.png rename to Editor/InternalResources/Interface/logo.png diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/logo.png.meta b/Editor/InternalResources/Interface/logo.png.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/logo.png.meta rename to Editor/InternalResources/Interface/logo.png.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/logo_light.png b/Editor/InternalResources/Interface/logo_light.png similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/logo_light.png rename to Editor/InternalResources/Interface/logo_light.png diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/logo_light.png.meta b/Editor/InternalResources/Interface/logo_light.png.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/logo_light.png.meta rename to Editor/InternalResources/Interface/logo_light.png.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/preset_custom.png b/Editor/InternalResources/Interface/preset_custom.png similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/preset_custom.png rename to Editor/InternalResources/Interface/preset_custom.png diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/preset_custom.png.meta b/Editor/InternalResources/Interface/preset_custom.png.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/preset_custom.png.meta rename to Editor/InternalResources/Interface/preset_custom.png.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/preset_highlight.png b/Editor/InternalResources/Interface/preset_highlight.png similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/preset_highlight.png rename to Editor/InternalResources/Interface/preset_highlight.png diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/preset_highlight.png.meta b/Editor/InternalResources/Interface/preset_highlight.png.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/preset_highlight.png.meta rename to Editor/InternalResources/Interface/preset_highlight.png.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/preset_litbasic.png b/Editor/InternalResources/Interface/preset_litbasic.png similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/preset_litbasic.png rename to Editor/InternalResources/Interface/preset_litbasic.png diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/preset_litbasic.png.meta b/Editor/InternalResources/Interface/preset_litbasic.png.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/preset_litbasic.png.meta rename to Editor/InternalResources/Interface/preset_litbasic.png.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/preset_litpbr.png b/Editor/InternalResources/Interface/preset_litpbr.png similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/preset_litpbr.png rename to Editor/InternalResources/Interface/preset_litpbr.png diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/preset_litpbr.png.meta b/Editor/InternalResources/Interface/preset_litpbr.png.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/preset_litpbr.png.meta rename to Editor/InternalResources/Interface/preset_litpbr.png.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/preset_particleadditive.png b/Editor/InternalResources/Interface/preset_particleadditive.png similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/preset_particleadditive.png rename to Editor/InternalResources/Interface/preset_particleadditive.png diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/preset_particleadditive.png.meta b/Editor/InternalResources/Interface/preset_particleadditive.png.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/preset_particleadditive.png.meta rename to Editor/InternalResources/Interface/preset_particleadditive.png.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/preset_particleadditive_light.png b/Editor/InternalResources/Interface/preset_particleadditive_light.png similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/preset_particleadditive_light.png rename to Editor/InternalResources/Interface/preset_particleadditive_light.png diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/preset_particleadditive_light.png.meta b/Editor/InternalResources/Interface/preset_particleadditive_light.png.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/preset_particleadditive_light.png.meta rename to Editor/InternalResources/Interface/preset_particleadditive_light.png.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/preset_particlealphablended.png b/Editor/InternalResources/Interface/preset_particlealphablended.png similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/preset_particlealphablended.png rename to Editor/InternalResources/Interface/preset_particlealphablended.png diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/preset_particlealphablended.png.meta b/Editor/InternalResources/Interface/preset_particlealphablended.png.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/preset_particlealphablended.png.meta rename to Editor/InternalResources/Interface/preset_particlealphablended.png.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/preset_particlealphablended_light.png b/Editor/InternalResources/Interface/preset_particlealphablended_light.png similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/preset_particlealphablended_light.png rename to Editor/InternalResources/Interface/preset_particlealphablended_light.png diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/preset_particlealphablended_light.png.meta b/Editor/InternalResources/Interface/preset_particlealphablended_light.png.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/preset_particlealphablended_light.png.meta rename to Editor/InternalResources/Interface/preset_particlealphablended_light.png.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/preset_particlemultiplicative.png b/Editor/InternalResources/Interface/preset_particlemultiplicative.png similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/preset_particlemultiplicative.png rename to Editor/InternalResources/Interface/preset_particlemultiplicative.png diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/preset_particlemultiplicative.png.meta b/Editor/InternalResources/Interface/preset_particlemultiplicative.png.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/preset_particlemultiplicative.png.meta rename to Editor/InternalResources/Interface/preset_particlemultiplicative.png.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/preset_particlemultiplicative_light.png b/Editor/InternalResources/Interface/preset_particlemultiplicative_light.png similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/preset_particlemultiplicative_light.png rename to Editor/InternalResources/Interface/preset_particlemultiplicative_light.png diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/preset_particlemultiplicative_light.png.meta b/Editor/InternalResources/Interface/preset_particlemultiplicative_light.png.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/preset_particlemultiplicative_light.png.meta rename to Editor/InternalResources/Interface/preset_particlemultiplicative_light.png.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/preset_posteffect.png b/Editor/InternalResources/Interface/preset_posteffect.png similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/preset_posteffect.png rename to Editor/InternalResources/Interface/preset_posteffect.png diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/preset_posteffect.png.meta b/Editor/InternalResources/Interface/preset_posteffect.png.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/preset_posteffect.png.meta rename to Editor/InternalResources/Interface/preset_posteffect.png.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/preset_sky.png b/Editor/InternalResources/Interface/preset_sky.png similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/preset_sky.png rename to Editor/InternalResources/Interface/preset_sky.png diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/preset_sky.png.meta b/Editor/InternalResources/Interface/preset_sky.png.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/preset_sky.png.meta rename to Editor/InternalResources/Interface/preset_sky.png.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/preset_sprite.png b/Editor/InternalResources/Interface/preset_sprite.png similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/preset_sprite.png rename to Editor/InternalResources/Interface/preset_sprite.png diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/preset_sprite.png.meta b/Editor/InternalResources/Interface/preset_sprite.png.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/preset_sprite.png.meta rename to Editor/InternalResources/Interface/preset_sprite.png.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/preset_unlit.png b/Editor/InternalResources/Interface/preset_unlit.png similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/preset_unlit.png rename to Editor/InternalResources/Interface/preset_unlit.png diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/preset_unlit.png.meta b/Editor/InternalResources/Interface/preset_unlit.png.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/preset_unlit.png.meta rename to Editor/InternalResources/Interface/preset_unlit.png.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/screenshot_icon.png b/Editor/InternalResources/Interface/screenshot_icon.png similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/screenshot_icon.png rename to Editor/InternalResources/Interface/screenshot_icon.png diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/screenshot_icon.png.meta b/Editor/InternalResources/Interface/screenshot_icon.png.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/screenshot_icon.png.meta rename to Editor/InternalResources/Interface/screenshot_icon.png.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/screenshot_icon_light.png b/Editor/InternalResources/Interface/screenshot_icon_light.png similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/screenshot_icon_light.png rename to Editor/InternalResources/Interface/screenshot_icon_light.png diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/screenshot_icon_light.png.meta b/Editor/InternalResources/Interface/screenshot_icon_light.png.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/Interface/screenshot_icon_light.png.meta rename to Editor/InternalResources/Interface/screenshot_icon_light.png.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/Meshes.meta b/Editor/InternalResources/Meshes.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/Meshes.meta rename to Editor/InternalResources/Meshes.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/Meshes/sf_meshes.fbx b/Editor/InternalResources/Meshes/sf_meshes.fbx similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/Meshes/sf_meshes.fbx rename to Editor/InternalResources/Meshes/sf_meshes.fbx diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/Meshes/sf_meshes.fbx.meta b/Editor/InternalResources/Meshes/sf_meshes.fbx.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/Meshes/sf_meshes.fbx.meta rename to Editor/InternalResources/Meshes/sf_meshes.fbx.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/Shader Presets.meta b/Editor/InternalResources/Shader Presets.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/Shader Presets.meta rename to Editor/InternalResources/Shader Presets.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/Shader Presets/PresetBasic.shader b/Editor/InternalResources/ShaderPresets/PresetBasic.shader similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/Shader Presets/PresetBasic.shader rename to Editor/InternalResources/ShaderPresets/PresetBasic.shader diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/Shader Presets/PresetBasic.shader.meta b/Editor/InternalResources/ShaderPresets/PresetBasic.shader.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/Shader Presets/PresetBasic.shader.meta rename to Editor/InternalResources/ShaderPresets/PresetBasic.shader.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/Shader Presets/PresetCustomLighting.shader b/Editor/InternalResources/ShaderPresets/PresetCustomLighting.shader similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/Shader Presets/PresetCustomLighting.shader rename to Editor/InternalResources/ShaderPresets/PresetCustomLighting.shader diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/Shader Presets/PresetCustomLighting.shader.meta b/Editor/InternalResources/ShaderPresets/PresetCustomLighting.shader.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/Shader Presets/PresetCustomLighting.shader.meta rename to Editor/InternalResources/ShaderPresets/PresetCustomLighting.shader.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/Shader Presets/PresetPBR.shader b/Editor/InternalResources/ShaderPresets/PresetPBR.shader similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/Shader Presets/PresetPBR.shader rename to Editor/InternalResources/ShaderPresets/PresetPBR.shader diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/Shader Presets/PresetPBR.shader.meta b/Editor/InternalResources/ShaderPresets/PresetPBR.shader.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/Shader Presets/PresetPBR.shader.meta rename to Editor/InternalResources/ShaderPresets/PresetPBR.shader.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/Shader Presets/PresetParticleAdditive.shader b/Editor/InternalResources/ShaderPresets/PresetParticleAdditive.shader similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/Shader Presets/PresetParticleAdditive.shader rename to Editor/InternalResources/ShaderPresets/PresetParticleAdditive.shader diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/Shader Presets/PresetParticleAdditive.shader.meta b/Editor/InternalResources/ShaderPresets/PresetParticleAdditive.shader.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/Shader Presets/PresetParticleAdditive.shader.meta rename to Editor/InternalResources/ShaderPresets/PresetParticleAdditive.shader.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/Shader Presets/PresetParticleAlphaBlended.shader b/Editor/InternalResources/ShaderPresets/PresetParticleAlphaBlended.shader similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/Shader Presets/PresetParticleAlphaBlended.shader rename to Editor/InternalResources/ShaderPresets/PresetParticleAlphaBlended.shader diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/Shader Presets/PresetParticleAlphaBlended.shader.meta b/Editor/InternalResources/ShaderPresets/PresetParticleAlphaBlended.shader.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/Shader Presets/PresetParticleAlphaBlended.shader.meta rename to Editor/InternalResources/ShaderPresets/PresetParticleAlphaBlended.shader.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/Shader Presets/PresetParticleMultiplicative.shader b/Editor/InternalResources/ShaderPresets/PresetParticleMultiplicative.shader similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/Shader Presets/PresetParticleMultiplicative.shader rename to Editor/InternalResources/ShaderPresets/PresetParticleMultiplicative.shader diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/Shader Presets/PresetParticleMultiplicative.shader.meta b/Editor/InternalResources/ShaderPresets/PresetParticleMultiplicative.shader.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/Shader Presets/PresetParticleMultiplicative.shader.meta rename to Editor/InternalResources/ShaderPresets/PresetParticleMultiplicative.shader.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/Shader Presets/PresetPostEffect.shader b/Editor/InternalResources/ShaderPresets/PresetPostEffect.shader similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/Shader Presets/PresetPostEffect.shader rename to Editor/InternalResources/ShaderPresets/PresetPostEffect.shader diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/Shader Presets/PresetPostEffect.shader.meta b/Editor/InternalResources/ShaderPresets/PresetPostEffect.shader.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/Shader Presets/PresetPostEffect.shader.meta rename to Editor/InternalResources/ShaderPresets/PresetPostEffect.shader.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/Shader Presets/PresetSky.shader b/Editor/InternalResources/ShaderPresets/PresetSky.shader similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/Shader Presets/PresetSky.shader rename to Editor/InternalResources/ShaderPresets/PresetSky.shader diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/Shader Presets/PresetSky.shader.meta b/Editor/InternalResources/ShaderPresets/PresetSky.shader.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/Shader Presets/PresetSky.shader.meta rename to Editor/InternalResources/ShaderPresets/PresetSky.shader.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/Shader Presets/PresetSprite.shader b/Editor/InternalResources/ShaderPresets/PresetSprite.shader similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/Shader Presets/PresetSprite.shader rename to Editor/InternalResources/ShaderPresets/PresetSprite.shader diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/Shader Presets/PresetSprite.shader.meta b/Editor/InternalResources/ShaderPresets/PresetSprite.shader.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/Shader Presets/PresetSprite.shader.meta rename to Editor/InternalResources/ShaderPresets/PresetSprite.shader.meta diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/Shader Presets/PresetUnlit.shader b/Editor/InternalResources/ShaderPresets/PresetUnlit.shader similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/Shader Presets/PresetUnlit.shader rename to Editor/InternalResources/ShaderPresets/PresetUnlit.shader diff --git a/Shader Forge/Assets/ShaderForge/Editor/InternalResources/Shader Presets/PresetUnlit.shader.meta b/Editor/InternalResources/ShaderPresets/PresetUnlit.shader.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Editor/InternalResources/Shader Presets/PresetUnlit.shader.meta rename to Editor/InternalResources/ShaderPresets/PresetUnlit.shader.meta diff --git a/Shader Forge/Assets/ShaderForge/Readme.txt b/Readme.txt similarity index 100% rename from Shader Forge/Assets/ShaderForge/Readme.txt rename to Readme.txt diff --git a/Shader Forge/Assets/ShaderForge/Readme.txt.meta b/Readme.txt.meta similarity index 100% rename from Shader Forge/Assets/ShaderForge/Readme.txt.meta rename to Readme.txt.meta diff --git a/Shader Forge/Assets/ShaderForge.meta b/Shader Forge/Assets/ShaderForge.meta deleted file mode 100644 index 90fca34e..00000000 --- a/Shader Forge/Assets/ShaderForge.meta +++ /dev/null @@ -1,5 +0,0 @@ -fileFormatVersion: 2 -guid: 2d430c5bfdc804d0abab4ea9f96aa950 -folderAsset: yes -DefaultImporter: - userData: diff --git a/Shader Forge/Assets/ShaderForge/Example Assets.meta b/Shader Forge/Assets/ShaderForge/Example Assets.meta deleted file mode 100644 index c6cb0f0e..00000000 --- a/Shader Forge/Assets/ShaderForge/Example Assets.meta +++ /dev/null @@ -1,5 +0,0 @@ -fileFormatVersion: 2 -guid: 029ca6d0d38f84838936b5e5bd9bc3ea -folderAsset: yes -DefaultImporter: - userData: diff --git a/Shader Forge/Assets/ShaderForge/Example Assets/Meshes.meta b/Shader Forge/Assets/ShaderForge/Example Assets/Meshes.meta deleted file mode 100644 index fb256922..00000000 --- a/Shader Forge/Assets/ShaderForge/Example Assets/Meshes.meta +++ /dev/null @@ -1,5 +0,0 @@ -fileFormatVersion: 2 -guid: 07107ae0fb0d85f42ac9b24330d08cb8 -folderAsset: yes -DefaultImporter: - userData: diff --git a/Shader Forge/Assets/ShaderForge/Example Assets/Meshes/sf_example_meshes.fbx b/Shader Forge/Assets/ShaderForge/Example Assets/Meshes/sf_example_meshes.fbx deleted file mode 100644 index 2ce8db7b16838b74b026473da92516ba1aec2087..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 106112 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

8bW-_8u*$%t1%7?3r>E8B*CWU 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

fenu?kN0edIg%m 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 rQ9Q3cEhH|`)d4w`Zn^sqsAQCC)9WW zFpyk-f(xt}O*9l9xz636?EBw&$>e)|a=NPr=%Qg*?s}g^RzKvwv^sY=;y<&xEWrBW zRyPcE@%dJ_1E`>;Sq}&pS%sC8=gf_}@gyHlSwxk^?)S?8Oi30JEIy2E@{-9vCd+BB z8la7ohv+B_!}f!MK~zx;Q~G(+j|%cXD{fHv+w>e*eCQ`)dFkKvlZu}Q`~)q1C_d*>4<>{7{<@<)wdDn>Y6iXwwjADzurLV~GgcqJ=TgroU_-2j_&oh=y|` z1maff|g>wwL*$Cv2ivCOII3q{@9Or0}_vi~chZ!j2%Q{EI zhZO&Tb3B(x9-L#)O#x8+H=JWw*vFh>{3^l+&avn{=U8&^6V8E?SNx@OPzGVY?;O2{ zKj9o4K>C8t@x!4H$bF7;cmui5aE>H7`sX;uNRS*7&=+)$Epn1yZsfS}A;r&hj%J|v zZ#c)-5g&7obt2~voWtln=dcI2LPm^Q^=6R(O{=K#iobM@GlQ_-caF)>CPjK@+rsA zvIo31wy;$K+Zkv=;IM(^dC#{*Vle7!= zYkYLjBR^sH%$4Nbt^^$mA0GmgZ6pNx`t2t8=y($F{sbSKt{%>Lp|2|*=)FxFp-HH< zs9B@zd~f79cj`HxSTDtv})4V+UN` zrk#-kivJpll;!fWI+`?dASj~EIJxTOb+R>t^e5nPu;A;G?x zQ#^!Bxx4~xK#h@OStH4Q$nN?nB$$EpPJq;d3PczkVgo}$``yd@cEg&5ubkjg(3Ue= z0FoKmdmDj>pqre++yM%RnB68g>hq2*BEW%V6J)CBoyoCsv_Z>z$Y>O6R0!-NdzFaJ zn^XuSP`A(~_VBd?XLr18QE9M`8J>P?5;Dt^$>)n(-o-&|{y(t1GGK@H0?;bcMA_n; z-KIgC6U(7kmfqZa1=guR7$--NZyCv92Can62Vf*t6pkj#tpI1?>E(vU*^>QsI}KQZ zHSBcS0VGlsI(jm48H5$t{|P}xN#^!%|Dd8b>FJpPSD6DP<19$-u!{ia!)$%=P99c2 z-q|ul2@ke{YsUY|rxsCab`@d=V6%l$~U`%Z8n zpv6DJ-(#OHr=UN;ek}Yz@K#Xx8%+R&Po!CA2PCcy^=~CETe7v%J^!;U5~nRv;!?a1 zK~_8K?O1nj^?ntoA3Pr&88v{n@IT7lbJWnH+>W= z;paUvqk5x_kdJ~XHY(nLUHmB6_)QmN!>E;#TxpL!3id+2vikgIAAY0T|1mgRH0EVH$cWQUYYteB0 zcC1A$QSzJJ$?l!#ZWX#7GF^$eiMYP6an?lAh@w_0^!GDfyLiReHrnip8i=% nNTPTDtl6bae}nT1o&Eg(DG9cO?W*a1PJ7*?!tslkJLdlYi+CJE diff --git a/Shader Forge/Assets/ShaderForge/Example Assets/Meshes/sf_example_meshes.fbx.meta b/Shader Forge/Assets/ShaderForge/Example Assets/Meshes/sf_example_meshes.fbx.meta deleted file mode 100644 index 2a65ad75..00000000 --- a/Shader Forge/Assets/ShaderForge/Example Assets/Meshes/sf_example_meshes.fbx.meta +++ /dev/null @@ -1,90 +0,0 @@ -fileFormatVersion: 2 -guid: 17819e54aa185472089096cf688428a9 -ModelImporter: - serializedVersion: 15 - fileIDToRecycleName: - 100000: //RootNode - 100002: sf_filledframe - 100004: sf_lightcone - 100006: sf_mat_platform - 100008: sf_plant - 100010: sf_vertex_color_hexagon - 100012: sf_frame - 400000: //RootNode - 400002: sf_filledframe - 400004: sf_lightcone - 400006: sf_mat_platform - 400008: sf_plant - 400010: sf_vertex_color_hexagon - 400012: sf_frame - 2300000: sf_filledframe - 2300002: sf_lightcone - 2300004: sf_mat_platform - 2300006: sf_plant - 2300008: sf_vertex_color_hexagon - 2300010: sf_frame - 3300000: sf_filledframe - 3300002: sf_lightcone - 3300004: sf_mat_platform - 3300006: sf_plant - 3300008: sf_vertex_color_hexagon - 3300010: sf_frame - 4300000: sf_plant - 4300002: sf_lightcone - 4300004: sf_filledframe - 4300006: sf_mat_platform - 4300008: sf_vertex_color_hexagon - 4300010: sf_frame - 9500000: //RootNode - materials: - importMaterials: 0 - materialName: 0 - materialSearch: 1 - animations: - legacyGenerateAnimations: 4 - bakeSimulation: 0 - optimizeGameObjects: 0 - animationCompression: 1 - animationRotationError: .5 - animationPositionError: .5 - animationScaleError: .5 - animationWrapMode: 0 - extraExposedTransformPaths: [] - clipAnimations: [] - isReadable: 1 - meshes: - lODScreenPercentages: [] - globalScale: 1 - meshCompression: 0 - addColliders: 0 - importBlendShapes: 1 - swapUVChannels: 0 - generateSecondaryUV: 1 - useFileUnits: 1 - optimizeMeshForGPU: 1 - weldVertices: 1 - secondaryUVAngleDistortion: 8 - secondaryUVAreaDistortion: 15.000001 - secondaryUVHardAngle: 88 - secondaryUVPackMargin: 4 - tangentSpace: - normalSmoothAngle: 60 - splitTangentsAcrossUV: 1 - normalImportMode: 0 - tangentImportMode: 1 - importAnimation: 1 - copyAvatar: 0 - humanDescription: - human: [] - skeleton: [] - armTwist: .5 - foreArmTwist: .5 - upperLegTwist: .5 - legTwist: .5 - armStretch: .0500000007 - legStretch: .0500000007 - feetSpacing: 0 - rootMotionBoneName: - lastHumanDescriptionAvatarSource: {instanceID: 0} - animationType: 0 - userData: diff --git a/Shader Forge/Assets/ShaderForge/Example Assets/Scripts.meta b/Shader Forge/Assets/ShaderForge/Example Assets/Scripts.meta deleted file mode 100644 index cc043b07..00000000 --- a/Shader Forge/Assets/ShaderForge/Example Assets/Scripts.meta +++ /dev/null @@ -1,5 +0,0 @@ -fileFormatVersion: 2 -guid: a2f343278b7594f4cbd9ff7b1d48da5b -folderAsset: yes -DefaultImporter: - userData: diff --git a/Shader Forge/Assets/ShaderForge/Example Assets/Scripts/EditorLabel.cs b/Shader Forge/Assets/ShaderForge/Example Assets/Scripts/EditorLabel.cs deleted file mode 100644 index a3cefa58..00000000 --- a/Shader Forge/Assets/ShaderForge/Example Assets/Scripts/EditorLabel.cs +++ /dev/null @@ -1,81 +0,0 @@ -#if UNITY_EDITOR - using UnityEngine; - using UnityEditor; - using System.Collections; - - public class EditorLabel : MonoBehaviour { - - - - public string text; - - private static GUIStyle style; - private static GUIStyle Style{ - get{ - if(style == null){ - style = new GUIStyle( EditorStyles.largeLabel ); - style.alignment = TextAnchor.MiddleCenter; - style.normal.textColor = new Color(0.9f,0.9f,0.9f); - style.fontSize = 32; - } - return style; - } - - } - - - void OnDrawGizmos(){ - - - RaycastHit hit; - Ray r = new Ray(transform.position + Camera.current.transform.up * 8f, -Camera.current.transform.up ); - if( GetComponent().Raycast( r, out hit, Mathf.Infinity) ){ - - float dist = (Camera.current.transform.position - hit.point).magnitude; - - float fontSize = Mathf.Lerp(64, 12, dist/10f); - - Style.fontSize = (int)fontSize; - - Vector3 wPos = hit.point + Camera.current.transform.up*dist*0.07f; - - - - Vector3 scPos = Camera.current.WorldToScreenPoint(wPos); - if(scPos.z <= 0){ - return; - } - - - - float alpha = Mathf.Clamp(-Camera.current.transform.forward.y, 0f, 1f); - alpha = 1f-((1f-alpha)*(1f-alpha)); - - alpha = Mathf.Lerp(-0.2f,1f,alpha); - - Handles.BeginGUI(); - - - scPos.y = Screen.height - scPos.y; // Flip Y - - - Vector2 strSize = Style.CalcSize(new GUIContent(text)); - - Rect rect = new Rect(0f, 0f, strSize.x + 6,strSize.y + 4); - rect.center = scPos - Vector3.up*rect.height*0.5f; - GUI.color = new Color(0f,0f,0f,0.8f * alpha); - GUI.DrawTexture(rect, EditorGUIUtility.whiteTexture); - GUI.color = Color.white; - GUI.color = new Color(GUI.color.r, GUI.color.g, GUI.color.b, alpha); - GUI.Label(rect, text, Style); - GUI.color = Color.white; - - Handles.EndGUI(); - } - - - - - } - } -#endif diff --git a/Shader Forge/Assets/ShaderForge/Example Assets/Scripts/EditorLabel.cs.meta b/Shader Forge/Assets/ShaderForge/Example Assets/Scripts/EditorLabel.cs.meta deleted file mode 100644 index 7b4e7999..00000000 --- a/Shader Forge/Assets/ShaderForge/Example Assets/Scripts/EditorLabel.cs.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: 9aa8c0bd4777c43ba983f5819ce0f5f7 -MonoImporter: - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: diff --git a/Shader Forge/Assets/ShaderForge/Example Assets/Scripts/EnableCameraDepthInForward.cs b/Shader Forge/Assets/ShaderForge/Example Assets/Scripts/EnableCameraDepthInForward.cs deleted file mode 100644 index 382bfd26..00000000 --- a/Shader Forge/Assets/ShaderForge/Example Assets/Scripts/EnableCameraDepthInForward.cs +++ /dev/null @@ -1,22 +0,0 @@ -// -// Attach this script to your camera in order to use depth nodes in forward rendering -// - -using UnityEngine; -using System.Collections; - -[RequireComponent(typeof(Camera))] -public class EnableCameraDepthInForward : MonoBehaviour { -#if UNITY_EDITOR - void OnDrawGizmos(){ - Set(); - } -#endif - void Start () { - Set(); - } - void Set(){ - if(GetComponent().depthTextureMode == DepthTextureMode.None) - GetComponent().depthTextureMode = DepthTextureMode.Depth; - } -} diff --git a/Shader Forge/Assets/ShaderForge/Example Assets/Scripts/EnableCameraDepthInForward.cs.meta b/Shader Forge/Assets/ShaderForge/Example Assets/Scripts/EnableCameraDepthInForward.cs.meta deleted file mode 100644 index 9140ecb8..00000000 --- a/Shader Forge/Assets/ShaderForge/Example Assets/Scripts/EnableCameraDepthInForward.cs.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: a67cf5608eb6c4b228afc4fd355b7a0d -MonoImporter: - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: diff --git a/Shader Forge/Assets/ShaderForge/Example Assets/Scripts/SoftNormalsToVertexColor.cs b/Shader Forge/Assets/ShaderForge/Example Assets/Scripts/SoftNormalsToVertexColor.cs deleted file mode 100644 index 1045fed1..00000000 --- a/Shader Forge/Assets/ShaderForge/Example Assets/Scripts/SoftNormalsToVertexColor.cs +++ /dev/null @@ -1,99 +0,0 @@ -using UnityEngine; -#if UNITY_EDITOR -using UnityEditor; -#endif -using System.Collections; -using System.Collections.Generic; - -[RequireComponent(typeof(MeshFilter))] -public class SoftNormalsToVertexColor : MonoBehaviour { - - public enum Method { Simple, AngularDeviation }; - - public Method method = Method.AngularDeviation; - public bool generateOnAwake = false; - public bool generateNow = false; - - void OnDrawGizmos() { - if( generateNow ) { - generateNow = false; - TryGenerate(); - } - } - - void Awake() { - if(generateOnAwake) - TryGenerate(); - } - - void TryGenerate() { - MeshFilter mf = GetComponent(); - if( mf == null ) { - Debug.LogError( "MeshFilter missing on the vertex color generator", gameObject ); - return; - } - if( mf.sharedMesh == null ) { - Debug.LogError( "Assign a mesh to the MeshFilter before generating vertex colors", gameObject ); - return; - } - Generate(mf.sharedMesh); - Debug.Log("Vertex colors generated", gameObject); - } - - void Generate(Mesh m) { - - Vector3[] n = m.normals; - Vector3[] v = m.vertices; - Color[] colors = new Color[n.Length]; - List> groups = new List>(); - - for( int i = 0; i < v.Length; i++ ) { // Group verts at the same location - bool added = false; - foreach( List group in groups ) { // Add to exsisting group if possible - if( v[group[0]] == v[i] ) { - group.Add(i); - added = true; - break; - } - } - if( !added ) { // Create new group if necessary - List newList = new List(); - newList.Add( i ); - groups.Add( newList ); - } - } - - foreach( List group in groups ) { // Calculate soft normals - Vector3 avgNrm = Vector3.zero; - foreach( int i in group ) { // TODO: This can actually be improved. Averaging will not give the best outline. - avgNrm += n[i]; - } - avgNrm.Normalize(); // Average normal done - if( method == Method.AngularDeviation ) { - float avgDot = 0f; // Calculate deviation to alter length - foreach( int i in group ) { - avgDot += Vector3.Dot( n[i], avgNrm ); - } - avgDot /= group.Count; - float angDeviation = Mathf.Acos( avgDot ) * Mathf.Rad2Deg; - float aAng = 180f - angDeviation - 90; - float lMult = 0.5f / Mathf.Sin( aAng * Mathf.Deg2Rad ); // 0.5f looks better empirically, but mathematically it should be 1f - avgNrm *= lMult; - } - - foreach( int i in group ) { - colors[i] = new Color( avgNrm.x, avgNrm.y, avgNrm.z ); // Save normals as colors - } - } - - m.colors = colors; // Assign as vertex colors - -#if UNITY_EDITOR - EditorUtility.SetDirty( this ); - SceneView.RepaintAll(); -#endif - - } - - -} \ No newline at end of file diff --git a/Shader Forge/Assets/ShaderForge/Example Assets/Scripts/SoftNormalsToVertexColor.cs.meta b/Shader Forge/Assets/ShaderForge/Example Assets/Scripts/SoftNormalsToVertexColor.cs.meta deleted file mode 100644 index ce67f188..00000000 --- a/Shader Forge/Assets/ShaderForge/Example Assets/Scripts/SoftNormalsToVertexColor.cs.meta +++ /dev/null @@ -1,12 +0,0 @@ -fileFormatVersion: 2 -guid: 2b52095f465a0ae4b96dc9e985ba34c1 -timeCreated: 1442143168 -licenseType: Pro -MonoImporter: - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Shader Forge/Assets/ShaderForge/Example Assets/Shaders.meta b/Shader Forge/Assets/ShaderForge/Example Assets/Shaders.meta deleted file mode 100644 index efa7db9b..00000000 --- a/Shader Forge/Assets/ShaderForge/Example Assets/Shaders.meta +++ /dev/null @@ -1,5 +0,0 @@ -fileFormatVersion: 2 -guid: 9940df91279f7664ead55ed8f0f277e8 -folderAsset: yes -DefaultImporter: - userData: diff --git a/Shader Forge/Assets/ShaderForge/Example Assets/Shaders/CustomLighting.mat b/Shader Forge/Assets/ShaderForge/Example Assets/Shaders/CustomLighting.mat deleted file mode 100644 index 328e51b3..00000000 --- a/Shader Forge/Assets/ShaderForge/Example Assets/Shaders/CustomLighting.mat +++ /dev/null @@ -1,43 +0,0 @@ -%YAML 1.1 -%TAG !u! tag:unity3d.com,2011: ---- !u!21 &2100000 -Material: - serializedVersion: 3 - m_ObjectHideFlags: 0 - m_PrefabParentObject: {fileID: 0} - m_PrefabInternal: {fileID: 0} - m_Name: CustomLighting - m_Shader: {fileID: 4800000, guid: e570c2adf90d6a24b8634788025bb2bb, type: 3} - m_ShaderKeywords: [] - m_CustomRenderQueue: -1 - m_SavedProperties: - serializedVersion: 2 - m_TexEnvs: - data: - first: - name: _Normals - second: - m_Texture: {fileID: 2800000, guid: c6dfb00dbee6bc044a8a3bb22e56e064, type: 3} - m_Scale: {x: 32, y: 32} - m_Offset: {x: 0, y: 0} - data: - first: - name: _Diffuse - second: - m_Texture: {fileID: 2800000, guid: 8993b617f08498f43adcbd90697f1c5d, type: 3} - m_Scale: {x: 16, y: 16} - m_Offset: {x: 0, y: 0} - m_Floats: - data: - first: - name: _Gloss - second: .410714298 - data: - first: - name: _Bands - second: 5 - m_Colors: - data: - first: - name: _Color - second: {r: .551470578, g: .981440127, b: 1, a: 1} diff --git a/Shader Forge/Assets/ShaderForge/Example Assets/Shaders/CustomLighting.mat.meta b/Shader Forge/Assets/ShaderForge/Example Assets/Shaders/CustomLighting.mat.meta deleted file mode 100644 index 15f40b7e..00000000 --- a/Shader Forge/Assets/ShaderForge/Example Assets/Shaders/CustomLighting.mat.meta +++ /dev/null @@ -1,4 +0,0 @@ -fileFormatVersion: 2 -guid: cadfde2f3ef294043affa7194ae69b94 -NativeFormatImporter: - userData: diff --git a/Shader Forge/Assets/ShaderForge/Example Assets/Shaders/CustomLighting.shader b/Shader Forge/Assets/ShaderForge/Example Assets/Shaders/CustomLighting.shader deleted file mode 100644 index b45aaa3f..00000000 --- a/Shader Forge/Assets/ShaderForge/Example Assets/Shaders/CustomLighting.shader +++ /dev/null @@ -1,187 +0,0 @@ -// Shader created with Shader Forge v1.38 -// Shader Forge (c) Freya Holmer - http://www.acegikmo.com/shaderforge/ -// Note: Manually altering this data may prevent you from opening it in Shader Forge -/*SF_DATA;ver:1.38;sub:START;pass:START;ps:flbk:,iptp:0,cusa:False,bamd:0,cgin:,lico:1,lgpr:1,limd:0,spmd:1,trmd:0,grmd:0,uamb:True,mssp:True,bkdf:True,hqlp:False,rprd:False,enco:False,rmgx:True,imps:True,rpth:0,vtps:0,hqsc:True,nrmq:1,nrsp:0,vomd:0,spxs:False,tesm:0,olmd:1,culm:0,bsrc:0,bdst:1,dpts:2,wrdp:True,dith:0,atcv:False,rfrpo:True,rfrpn:Refraction,coma:15,ufog:False,aust:True,igpj:False,qofs:0,qpre:1,rntp:1,fgom:False,fgoc:False,fgod:False,fgor:False,fgmd:0,fgcr:0.5,fgcg:0.5,fgcb:0.5,fgca:1,fgde:0.01,fgrn:0,fgrf:300,stcl:False,atwp:False,stva:128,stmr:255,stmw:255,stcp:6,stps:0,stfa:0,stfz:0,ofsf:0,ofsu:0,f2p0:False,fnsp:False,fnfb:False,fsmp:False;n:type:ShaderForge.SFN_Final,id:0,x:34330,y:31982,varname:node_0,prsc:2|normal-83-RGB,custl-64-OUT,olwid-255-OUT;n:type:ShaderForge.SFN_LightAttenuation,id:37,x:33872,y:32026,varname:node_37,prsc:2;n:type:ShaderForge.SFN_Dot,id:40,x:32931,y:32250,varname:node_40,prsc:2,dt:1|A-42-OUT,B-41-OUT;n:type:ShaderForge.SFN_NormalVector,id:41,x:32722,y:32344,prsc:2,pt:True;n:type:ShaderForge.SFN_LightVector,id:42,x:32722,y:32223,varname:node_42,prsc:2;n:type:ShaderForge.SFN_Dot,id:52,x:32931,y:32423,varname:node_52,prsc:2,dt:1|A-41-OUT,B-62-OUT;n:type:ShaderForge.SFN_Add,id:55,x:33872,y:32288,varname:node_55,prsc:2|A-84-OUT,B-187-RGB,C-265-OUT;n:type:ShaderForge.SFN_Power,id:58,x:33133,y:32523,cmnt:Specular Light,varname:node_58,prsc:2|VAL-52-OUT,EXP-244-OUT;n:type:ShaderForge.SFN_HalfVector,id:62,x:32722,y:32483,varname:node_62,prsc:2;n:type:ShaderForge.SFN_LightColor,id:63,x:33872,y:32155,varname:node_63,prsc:2;n:type:ShaderForge.SFN_Multiply,id:64,x:34056,y:32155,varname:node_64,prsc:2|A-37-OUT,B-63-RGB,C-55-OUT;n:type:ShaderForge.SFN_Color,id:80,x:33368,y:32178,ptovrint:False,ptlb:Color,ptin:_Color,varname:_Color,prsc:2,glob:False,taghide:False,taghdr:False,tagprd:False,tagnsco:False,tagnrm:False,c1:0.6544118,c2:0.8426978,c3:1,c4:1;n:type:ShaderForge.SFN_Tex2d,id:82,x:33368,y:32002,ptovrint:False,ptlb:Diffuse,ptin:_Diffuse,varname:_Diffuse,prsc:2,glob:False,taghide:False,taghdr:False,tagprd:False,tagnsco:False,tagnrm:False,tex:8993b617f08498f43adcbd90697f1c5d,ntxv:0,isnm:False|UVIN-272-UVOUT;n:type:ShaderForge.SFN_Tex2d,id:83,x:34056,y:31966,ptovrint:False,ptlb:Normals,ptin:_Normals,varname:_Normals,prsc:2,glob:False,taghide:False,taghdr:False,tagprd:False,tagnsco:False,tagnrm:False,tex:c6dfb00dbee6bc044a8a3bb22e56e064,ntxv:3,isnm:True|UVIN-272-UVOUT;n:type:ShaderForge.SFN_Multiply,id:84,x:33573,y:32160,cmnt:Diffuse Light,varname:node_84,prsc:2|A-82-RGB,B-80-RGB,C-264-OUT;n:type:ShaderForge.SFN_AmbientLight,id:187,x:33573,y:32280,varname:node_187,prsc:2;n:type:ShaderForge.SFN_ValueProperty,id:216,x:33133,y:32423,ptovrint:False,ptlb:Bands,ptin:_Bands,varname:_Bands,prsc:2,glob:False,taghide:False,taghdr:False,tagprd:False,tagnsco:False,tagnrm:False,v1:8;n:type:ShaderForge.SFN_Slider,id:239,x:31984,y:32591,ptovrint:False,ptlb:Gloss,ptin:_Gloss,varname:_Gloss,prsc:2,glob:False,taghide:False,taghdr:False,tagprd:False,tagnsco:False,tagnrm:False,min:0,cur:0.4511278,max:1;n:type:ShaderForge.SFN_Add,id:240,x:32722,y:32640,varname:node_240,prsc:2|A-242-OUT,B-241-OUT;n:type:ShaderForge.SFN_Vector1,id:241,x:32554,y:32728,varname:node_241,prsc:2,v1:1;n:type:ShaderForge.SFN_Multiply,id:242,x:32554,y:32578,varname:node_242,prsc:2|A-239-OUT,B-243-OUT;n:type:ShaderForge.SFN_Vector1,id:243,x:32141,y:32661,varname:node_243,prsc:2,v1:10;n:type:ShaderForge.SFN_Exp,id:244,x:32893,y:32640,varname:node_244,prsc:2,et:1|IN-240-OUT;n:type:ShaderForge.SFN_Vector1,id:255,x:34056,y:32288,varname:node_255,prsc:2,v1:0.05;n:type:ShaderForge.SFN_Posterize,id:264,x:33368,y:32344,varname:node_264,prsc:2|IN-40-OUT,STPS-216-OUT;n:type:ShaderForge.SFN_Posterize,id:265,x:33368,y:32475,varname:node_265,prsc:2|IN-58-OUT,STPS-216-OUT;n:type:ShaderForge.SFN_TexCoord,id:272,x:33121,y:32051,varname:node_272,prsc:2,uv:0,uaff:False;proporder:80-82-83-216-239;pass:END;sub:END;*/ - -Shader "Shader Forge/Examples/Custom Lighting" { - Properties { - _Color ("Color", Color) = (0.6544118,0.8426978,1,1) - _Diffuse ("Diffuse", 2D) = "white" {} - _Normals ("Normals", 2D) = "bump" {} - _Bands ("Bands", Float ) = 8 - _Gloss ("Gloss", Range(0, 1)) = 0.4511278 - } - SubShader { - Tags { - "RenderType"="Opaque" - } - Pass { - Name "Outline" - Tags { - } - Cull Front - - CGPROGRAM - #pragma vertex vert - #pragma fragment frag - #include "UnityCG.cginc" - #pragma fragmentoption ARB_precision_hint_fastest - #pragma multi_compile_shadowcaster - #pragma only_renderers d3d9 d3d11 glcore gles gles3 metal d3d11_9x xboxone ps4 psp2 n3ds wiiu - #pragma target 3.0 - struct VertexInput { - float4 vertex : POSITION; - float3 normal : NORMAL; - }; - struct VertexOutput { - float4 pos : SV_POSITION; - }; - VertexOutput vert (VertexInput v) { - VertexOutput o = (VertexOutput)0; - o.pos = UnityObjectToClipPos( float4(v.vertex.xyz + v.normal*0.05,1) ); - return o; - } - float4 frag(VertexOutput i) : COLOR { - return fixed4(float3(0,0,0),0); - } - ENDCG - } - Pass { - Name "FORWARD" - Tags { - "LightMode"="ForwardBase" - } - - - CGPROGRAM - #pragma vertex vert - #pragma fragment frag - #define UNITY_PASS_FORWARDBASE - #include "UnityCG.cginc" - #include "AutoLight.cginc" - #include "Lighting.cginc" - #pragma multi_compile_fwdbase_fullshadows - #pragma only_renderers d3d9 d3d11 glcore gles gles3 metal d3d11_9x xboxone ps4 psp2 n3ds wiiu - #pragma target 3.0 - uniform float4 _Color; - uniform sampler2D _Diffuse; uniform float4 _Diffuse_ST; - uniform sampler2D _Normals; uniform float4 _Normals_ST; - uniform float _Bands; - uniform float _Gloss; - struct VertexInput { - float4 vertex : POSITION; - float3 normal : NORMAL; - float4 tangent : TANGENT; - float2 texcoord0 : TEXCOORD0; - }; - struct VertexOutput { - float4 pos : SV_POSITION; - float2 uv0 : TEXCOORD0; - float4 posWorld : TEXCOORD1; - float3 normalDir : TEXCOORD2; - float3 tangentDir : TEXCOORD3; - float3 bitangentDir : TEXCOORD4; - LIGHTING_COORDS(5,6) - }; - VertexOutput vert (VertexInput v) { - VertexOutput o = (VertexOutput)0; - o.uv0 = v.texcoord0; - o.normalDir = UnityObjectToWorldNormal(v.normal); - o.tangentDir = normalize( mul( unity_ObjectToWorld, float4( v.tangent.xyz, 0.0 ) ).xyz ); - o.bitangentDir = normalize(cross(o.normalDir, o.tangentDir) * v.tangent.w); - o.posWorld = mul(unity_ObjectToWorld, v.vertex); - float3 lightColor = _LightColor0.rgb; - o.pos = UnityObjectToClipPos( v.vertex ); - TRANSFER_VERTEX_TO_FRAGMENT(o) - return o; - } - float4 frag(VertexOutput i) : COLOR { - i.normalDir = normalize(i.normalDir); - float3x3 tangentTransform = float3x3( i.tangentDir, i.bitangentDir, i.normalDir); - float3 viewDirection = normalize(_WorldSpaceCameraPos.xyz - i.posWorld.xyz); - float3 _Normals_var = UnpackNormal(tex2D(_Normals,TRANSFORM_TEX(i.uv0, _Normals))); - float3 normalLocal = _Normals_var.rgb; - float3 normalDirection = normalize(mul( normalLocal, tangentTransform )); // Perturbed normals - float3 lightDirection = normalize(_WorldSpaceLightPos0.xyz); - float3 lightColor = _LightColor0.rgb; - float3 halfDirection = normalize(viewDirection+lightDirection); -////// Lighting: - UNITY_LIGHT_ATTENUATION(attenuation,i, i.posWorld.xyz); - float4 _Diffuse_var = tex2D(_Diffuse,TRANSFORM_TEX(i.uv0, _Diffuse)); - float3 finalColor = (attenuation*_LightColor0.rgb*((_Diffuse_var.rgb*_Color.rgb*floor(max(0,dot(lightDirection,normalDirection)) * _Bands) / (_Bands - 1))+UNITY_LIGHTMODEL_AMBIENT.rgb+floor(pow(max(0,dot(normalDirection,halfDirection)),exp2(((_Gloss*10.0)+1.0))) * _Bands) / (_Bands - 1))); - return fixed4(finalColor,1); - } - ENDCG - } - Pass { - Name "FORWARD_DELTA" - Tags { - "LightMode"="ForwardAdd" - } - Blend One One - - - CGPROGRAM - #pragma vertex vert - #pragma fragment frag - #define UNITY_PASS_FORWARDADD - #include "UnityCG.cginc" - #include "AutoLight.cginc" - #include "Lighting.cginc" - #pragma multi_compile_fwdadd_fullshadows - #pragma only_renderers d3d9 d3d11 glcore gles gles3 metal d3d11_9x xboxone ps4 psp2 n3ds wiiu - #pragma target 3.0 - uniform float4 _Color; - uniform sampler2D _Diffuse; uniform float4 _Diffuse_ST; - uniform sampler2D _Normals; uniform float4 _Normals_ST; - uniform float _Bands; - uniform float _Gloss; - struct VertexInput { - float4 vertex : POSITION; - float3 normal : NORMAL; - float4 tangent : TANGENT; - float2 texcoord0 : TEXCOORD0; - }; - struct VertexOutput { - float4 pos : SV_POSITION; - float2 uv0 : TEXCOORD0; - float4 posWorld : TEXCOORD1; - float3 normalDir : TEXCOORD2; - float3 tangentDir : TEXCOORD3; - float3 bitangentDir : TEXCOORD4; - LIGHTING_COORDS(5,6) - }; - VertexOutput vert (VertexInput v) { - VertexOutput o = (VertexOutput)0; - o.uv0 = v.texcoord0; - o.normalDir = UnityObjectToWorldNormal(v.normal); - o.tangentDir = normalize( mul( unity_ObjectToWorld, float4( v.tangent.xyz, 0.0 ) ).xyz ); - o.bitangentDir = normalize(cross(o.normalDir, o.tangentDir) * v.tangent.w); - o.posWorld = mul(unity_ObjectToWorld, v.vertex); - float3 lightColor = _LightColor0.rgb; - o.pos = UnityObjectToClipPos( v.vertex ); - TRANSFER_VERTEX_TO_FRAGMENT(o) - return o; - } - float4 frag(VertexOutput i) : COLOR { - i.normalDir = normalize(i.normalDir); - float3x3 tangentTransform = float3x3( i.tangentDir, i.bitangentDir, i.normalDir); - float3 viewDirection = normalize(_WorldSpaceCameraPos.xyz - i.posWorld.xyz); - float3 _Normals_var = UnpackNormal(tex2D(_Normals,TRANSFORM_TEX(i.uv0, _Normals))); - float3 normalLocal = _Normals_var.rgb; - float3 normalDirection = normalize(mul( normalLocal, tangentTransform )); // Perturbed normals - float3 lightDirection = normalize(lerp(_WorldSpaceLightPos0.xyz, _WorldSpaceLightPos0.xyz - i.posWorld.xyz,_WorldSpaceLightPos0.w)); - float3 lightColor = _LightColor0.rgb; - float3 halfDirection = normalize(viewDirection+lightDirection); -////// Lighting: - UNITY_LIGHT_ATTENUATION(attenuation,i, i.posWorld.xyz); - float4 _Diffuse_var = tex2D(_Diffuse,TRANSFORM_TEX(i.uv0, _Diffuse)); - float3 finalColor = (attenuation*_LightColor0.rgb*((_Diffuse_var.rgb*_Color.rgb*floor(max(0,dot(lightDirection,normalDirection)) * _Bands) / (_Bands - 1))+UNITY_LIGHTMODEL_AMBIENT.rgb+floor(pow(max(0,dot(normalDirection,halfDirection)),exp2(((_Gloss*10.0)+1.0))) * _Bands) / (_Bands - 1))); - return fixed4(finalColor * 1,0); - } - ENDCG - } - } - FallBack "Diffuse" - CustomEditor "ShaderForgeMaterialInspector" -} diff --git a/Shader Forge/Assets/ShaderForge/Example Assets/Shaders/CustomLighting.shader.meta b/Shader Forge/Assets/ShaderForge/Example Assets/Shaders/CustomLighting.shader.meta deleted file mode 100644 index 0609b53f..00000000 --- a/Shader Forge/Assets/ShaderForge/Example Assets/Shaders/CustomLighting.shader.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: e570c2adf90d6a24b8634788025bb2bb -ShaderImporter: - externalObjects: {} - defaultTextures: - - _Diffuse: {fileID: 2800000, guid: 8993b617f08498f43adcbd90697f1c5d, type: 3} - - _Normals: {fileID: 2800000, guid: c6dfb00dbee6bc044a8a3bb22e56e064, type: 3} - nonModifiableTextures: [] - userData: - assetBundleName: - assetBundleVariant: diff --git a/Shader Forge/Assets/ShaderForge/Example Assets/Shaders/LightWrapping.mat b/Shader Forge/Assets/ShaderForge/Example Assets/Shaders/LightWrapping.mat deleted file mode 100644 index ec14fd5a..00000000 --- a/Shader Forge/Assets/ShaderForge/Example Assets/Shaders/LightWrapping.mat +++ /dev/null @@ -1,83 +0,0 @@ -%YAML 1.1 -%TAG !u! tag:unity3d.com,2011: ---- !u!21 &2100000 -Material: - serializedVersion: 5 - m_ObjectHideFlags: 0 - m_PrefabParentObject: {fileID: 0} - m_PrefabInternal: {fileID: 0} - m_Name: LightWrapping - m_Shader: {fileID: 4800000, guid: 12dc48c8a56df784b93db42c5d582f3e, type: 3} - m_ShaderKeywords: - m_LightmapFlags: 5 - m_CustomRenderQueue: -1 - m_SavedProperties: - serializedVersion: 2 - m_TexEnvs: - data: - first: - name: _Normal - second: - m_Texture: {fileID: 0} - m_Scale: {x: 1, y: 1} - m_Offset: {x: 0, y: 0} - data: - first: - name: _node_1 - second: - m_Texture: {fileID: 2800000, guid: b66bceaf0cc0ace4e9bdc92f14bba709, type: 3} - m_Scale: {x: 1, y: 1} - m_Offset: {x: 0, y: 0} - data: - first: - name: _node_2 - second: - m_Texture: {fileID: 2800000, guid: 91730f8ee98c48e42aff09048fbbfaaa, type: 3} - m_Scale: {x: 1, y: 1} - m_Offset: {x: 0, y: 0} - data: - first: - name: _node_18 - second: - m_Texture: {fileID: 2800000, guid: 28c7aad1372ff114b90d330f8a2dd938, type: 3} - m_Scale: {x: 1, y: 1} - m_Offset: {x: 0, y: 0} - data: - first: - name: _node7 - second: - m_Texture: {fileID: 0} - m_Scale: {x: 1, y: 1} - m_Offset: {x: 0, y: 0} - data: - first: - name: _node_9 - second: - m_Texture: {fileID: 2800000, guid: 80286949e259c2d44876306923857245, type: 3} - m_Scale: {x: 1, y: 1} - m_Offset: {x: 0, y: 0} - data: - first: - name: _node_11 - second: - m_Texture: {fileID: 2800000, guid: 28c7aad1372ff114b90d330f8a2dd938, type: 3} - m_Scale: {x: 1, y: 1} - m_Offset: {x: 0, y: 0} - m_Floats: - data: - first: - name: _Gloss - second: .839999974 - data: - first: - name: _node_8 - second: .0653950945 - m_Colors: - data: - first: - name: _Diffuse - second: {r: .742697775, g: 1, b: .566176474, a: 1} - data: - first: - name: _LightWrapping - second: {r: 0, g: .751724005, b: 1, a: 1} diff --git a/Shader Forge/Assets/ShaderForge/Example Assets/Shaders/LightWrapping.mat.meta b/Shader Forge/Assets/ShaderForge/Example Assets/Shaders/LightWrapping.mat.meta deleted file mode 100644 index 9775d63b..00000000 --- a/Shader Forge/Assets/ShaderForge/Example Assets/Shaders/LightWrapping.mat.meta +++ /dev/null @@ -1,4 +0,0 @@ -fileFormatVersion: 2 -guid: 0baa0be77ffe0ec4bbba3c06cb8f887b -NativeFormatImporter: - userData: diff --git a/Shader Forge/Assets/ShaderForge/Example Assets/Shaders/LightWrapping.shader b/Shader Forge/Assets/ShaderForge/Example Assets/Shaders/LightWrapping.shader deleted file mode 100644 index 7f37e513..00000000 --- a/Shader Forge/Assets/ShaderForge/Example Assets/Shaders/LightWrapping.shader +++ /dev/null @@ -1,377 +0,0 @@ -// Shader created with Shader Forge v1.38 -// Shader Forge (c) Freya Holmer - http://www.acegikmo.com/shaderforge/ -// Note: Manually altering this data may prevent you from opening it in Shader Forge -/*SF_DATA;ver:1.38;sub:START;pass:START;ps:flbk:,iptp:0,cusa:False,bamd:0,cgin:,lico:1,lgpr:1,limd:3,spmd:1,trmd:0,grmd:0,uamb:True,mssp:True,bkdf:True,hqlp:False,rprd:True,enco:False,rmgx:True,imps:True,rpth:0,vtps:0,hqsc:True,nrmq:1,nrsp:0,vomd:0,spxs:False,tesm:0,olmd:1,culm:0,bsrc:0,bdst:1,dpts:2,wrdp:True,dith:0,atcv:False,rfrpo:True,rfrpn:Refraction,coma:15,ufog:False,aust:True,igpj:False,qofs:0,qpre:1,rntp:1,fgom:False,fgoc:False,fgod:False,fgor:False,fgmd:0,fgcr:0.5,fgcg:0.5,fgcb:0.5,fgca:1,fgde:0.01,fgrn:0,fgrf:300,stcl:False,atwp:False,stva:128,stmr:255,stmw:255,stcp:6,stps:0,stfa:0,stfz:0,ofsf:0,ofsu:0,f2p0:False,fnsp:False,fnfb:False,fsmp:False;n:type:ShaderForge.SFN_Final,id:0,x:33560,y:32563,varname:node_0,prsc:2|diff-270-RGB,spec-1906-OUT,gloss-8495-OUT,lwrap-272-RGB;n:type:ShaderForge.SFN_Color,id:270,x:33250,y:32393,ptovrint:False,ptlb:Diffuse,ptin:_Diffuse,varname:_Diffuse,prsc:2,glob:False,taghide:False,taghdr:False,tagprd:False,tagnsco:False,tagnrm:False,c1:0.9117647,c2:0.8760425,c3:0.8179066,c4:1;n:type:ShaderForge.SFN_Color,id:272,x:33250,y:32735,ptovrint:False,ptlb:Light Wrapping,ptin:_LightWrapping,varname:_LightWrapping,prsc:2,glob:False,taghide:False,taghdr:False,tagprd:False,tagnsco:False,tagnrm:False,c1:0.9058824,c2:0.4941176,c3:0.4901961,c4:1;n:type:ShaderForge.SFN_Vector1,id:1906,x:33250,y:32541,varname:node_1906,prsc:2,v1:0;n:type:ShaderForge.SFN_Slider,id:8495,x:33093,y:32628,ptovrint:False,ptlb:Gloss,ptin:_Gloss,varname:_Gloss,prsc:2,glob:False,taghide:False,taghdr:False,tagprd:False,tagnsco:False,tagnrm:False,min:0,cur:0,max:1;proporder:272-270-8495;pass:END;sub:END;*/ - -Shader "Shader Forge/Examples/LightWrapping" { - Properties { - _LightWrapping ("Light Wrapping", Color) = (0.9058824,0.4941176,0.4901961,1) - _Diffuse ("Diffuse", Color) = (0.9117647,0.8760425,0.8179066,1) - _Gloss ("Gloss", Range(0, 1)) = 0 - } - SubShader { - Tags { - "RenderType"="Opaque" - } - Pass { - Name "FORWARD" - Tags { - "LightMode"="ForwardBase" - } - - - CGPROGRAM - #pragma vertex vert - #pragma fragment frag - #define SHOULD_SAMPLE_SH ( defined (LIGHTMAP_OFF) && defined(DYNAMICLIGHTMAP_OFF) ) - #define _GLOSSYENV 1 - #include "UnityCG.cginc" - #include "AutoLight.cginc" - #include "Lighting.cginc" - #include "UnityPBSLighting.cginc" - #include "UnityStandardBRDF.cginc" - #pragma multi_compile_fwdbase_fullshadows - #pragma multi_compile LIGHTMAP_OFF LIGHTMAP_ON - #pragma multi_compile DIRLIGHTMAP_OFF DIRLIGHTMAP_COMBINED DIRLIGHTMAP_SEPARATE - #pragma multi_compile DYNAMICLIGHTMAP_OFF DYNAMICLIGHTMAP_ON - #pragma only_renderers d3d9 d3d11 glcore gles gles3 metal d3d11_9x xboxone ps4 psp2 n3ds wiiu - #pragma target 3.0 - uniform float4 _Diffuse; - uniform float4 _LightWrapping; - uniform float _Gloss; - struct VertexInput { - float4 vertex : POSITION; - float3 normal : NORMAL; - float4 tangent : TANGENT; - float2 texcoord1 : TEXCOORD1; - float2 texcoord2 : TEXCOORD2; - }; - struct VertexOutput { - float4 pos : SV_POSITION; - float2 uv1 : TEXCOORD0; - float2 uv2 : TEXCOORD1; - float4 posWorld : TEXCOORD2; - float3 normalDir : TEXCOORD3; - float3 tangentDir : TEXCOORD4; - float3 bitangentDir : TEXCOORD5; - LIGHTING_COORDS(6,7) - #if defined(LIGHTMAP_ON) || defined(UNITY_SHOULD_SAMPLE_SH) - float4 ambientOrLightmapUV : TEXCOORD8; - #endif - }; - VertexOutput vert (VertexInput v) { - VertexOutput o = (VertexOutput)0; - o.uv1 = v.texcoord1; - o.uv2 = v.texcoord2; - #ifdef LIGHTMAP_ON - o.ambientOrLightmapUV.xy = v.texcoord1.xy * unity_LightmapST.xy + unity_LightmapST.zw; - o.ambientOrLightmapUV.zw = 0; - #elif UNITY_SHOULD_SAMPLE_SH - #endif - #ifdef DYNAMICLIGHTMAP_ON - o.ambientOrLightmapUV.zw = v.texcoord2.xy * unity_DynamicLightmapST.xy + unity_DynamicLightmapST.zw; - #endif - o.normalDir = UnityObjectToWorldNormal(v.normal); - o.tangentDir = normalize( mul( unity_ObjectToWorld, float4( v.tangent.xyz, 0.0 ) ).xyz ); - o.bitangentDir = normalize(cross(o.normalDir, o.tangentDir) * v.tangent.w); - o.posWorld = mul(unity_ObjectToWorld, v.vertex); - float3 lightColor = _LightColor0.rgb; - o.pos = UnityObjectToClipPos( v.vertex ); - TRANSFER_VERTEX_TO_FRAGMENT(o) - return o; - } - float4 frag(VertexOutput i) : COLOR { - i.normalDir = normalize(i.normalDir); - float3x3 tangentTransform = float3x3( i.tangentDir, i.bitangentDir, i.normalDir); - float3 viewDirection = normalize(_WorldSpaceCameraPos.xyz - i.posWorld.xyz); - float3 normalDirection = i.normalDir; - float3 viewReflectDirection = reflect( -viewDirection, normalDirection ); - float3 lightDirection = normalize(_WorldSpaceLightPos0.xyz); - float3 lightColor = _LightColor0.rgb; - float3 halfDirection = normalize(viewDirection+lightDirection); -////// Lighting: - UNITY_LIGHT_ATTENUATION(attenuation,i, i.posWorld.xyz); - float3 attenColor = attenuation * _LightColor0.xyz; - float Pi = 3.141592654; - float InvPi = 0.31830988618; -///////// Gloss: - float gloss = _Gloss; - float perceptualRoughness = 1.0 - _Gloss; - float roughness = perceptualRoughness * perceptualRoughness; - float specPow = exp2( gloss * 10.0 + 1.0 ); -/////// GI Data: - UnityLight light; - #ifdef LIGHTMAP_OFF - light.color = lightColor; - light.dir = lightDirection; - light.ndotl = LambertTerm (normalDirection, light.dir); - #else - light.color = half3(0.f, 0.f, 0.f); - light.ndotl = 0.0f; - light.dir = half3(0.f, 0.f, 0.f); - #endif - UnityGIInput d; - d.light = light; - d.worldPos = i.posWorld.xyz; - d.worldViewDir = viewDirection; - d.atten = attenuation; - #if defined(LIGHTMAP_ON) || defined(DYNAMICLIGHTMAP_ON) - d.ambient = 0; - d.lightmapUV = i.ambientOrLightmapUV; - #else - d.ambient = i.ambientOrLightmapUV; - #endif - #if UNITY_SPECCUBE_BLENDING || UNITY_SPECCUBE_BOX_PROJECTION - d.boxMin[0] = unity_SpecCube0_BoxMin; - d.boxMin[1] = unity_SpecCube1_BoxMin; - #endif - #if UNITY_SPECCUBE_BOX_PROJECTION - d.boxMax[0] = unity_SpecCube0_BoxMax; - d.boxMax[1] = unity_SpecCube1_BoxMax; - d.probePosition[0] = unity_SpecCube0_ProbePosition; - d.probePosition[1] = unity_SpecCube1_ProbePosition; - #endif - d.probeHDR[0] = unity_SpecCube0_HDR; - d.probeHDR[1] = unity_SpecCube1_HDR; - Unity_GlossyEnvironmentData ugls_en_data; - ugls_en_data.roughness = 1.0 - gloss; - ugls_en_data.reflUVW = viewReflectDirection; - UnityGI gi = UnityGlobalIllumination(d, 1, normalDirection, ugls_en_data ); - lightDirection = gi.light.dir; - lightColor = gi.light.color; -////// Specular: - float NdotL = saturate(dot( normalDirection, lightDirection )); - float LdotH = saturate(dot(lightDirection, halfDirection)); - float3 specularColor = 0.0; - float specularMonochrome; - float3 diffuseColor = _Diffuse.rgb; // Need this for specular when using metallic - diffuseColor = DiffuseAndSpecularFromMetallic( diffuseColor, specularColor, specularColor, specularMonochrome ); - specularMonochrome = 1.0-specularMonochrome; - float NdotV = abs(dot( normalDirection, viewDirection )); - float NdotH = saturate(dot( normalDirection, halfDirection )); - float VdotH = saturate(dot( viewDirection, halfDirection )); - float visTerm = SmithJointGGXVisibilityTerm( NdotL, NdotV, roughness ); - float normTerm = GGXTerm(NdotH, roughness); - float specularPBL = (visTerm*normTerm) * UNITY_PI; - #ifdef UNITY_COLORSPACE_GAMMA - specularPBL = sqrt(max(1e-4h, specularPBL)); - #endif - specularPBL = max(0, specularPBL * NdotL); - #if defined(_SPECULARHIGHLIGHTS_OFF) - specularPBL = 0.0; - #endif - half surfaceReduction; - #ifdef UNITY_COLORSPACE_GAMMA - surfaceReduction = 1.0-0.28*roughness*perceptualRoughness; - #else - surfaceReduction = 1.0/(roughness*roughness + 1.0); - #endif - specularPBL *= any(specularColor) ? 1.0 : 0.0; - float3 directSpecular = attenColor*specularPBL*FresnelTerm(specularColor, LdotH); - half grazingTerm = saturate( gloss + specularMonochrome ); - float3 indirectSpecular = (gi.indirect.specular); - indirectSpecular *= FresnelLerp (specularColor, grazingTerm, NdotV); - indirectSpecular *= surfaceReduction; - float3 specular = (directSpecular + indirectSpecular); -/////// Diffuse: - NdotL = dot( normalDirection, lightDirection ); - float3 w = _LightWrapping.rgb*0.5; // Light wrapping - float3 NdotLWrap = NdotL * ( 1.0 - w ); - float3 forwardLight = max(float3(0.0,0.0,0.0), NdotLWrap + w ); - NdotL = max(0.0,dot( normalDirection, lightDirection )); - half fd90 = 0.5 + 2 * LdotH * LdotH * (1-gloss); - float nlPow5 = Pow5(1-NdotLWrap); - float nvPow5 = Pow5(1-NdotV); - float3 directDiffuse = (forwardLight + ((1 +(fd90 - 1)*nlPow5) * (1 + (fd90 - 1)*nvPow5) * NdotL)) * attenColor; - float3 indirectDiffuse = float3(0,0,0); - indirectDiffuse += gi.indirect.diffuse; - float3 diffuse = (directDiffuse + indirectDiffuse) * diffuseColor; -/// Final Color: - float3 finalColor = diffuse + specular; - return fixed4(finalColor,1); - } - ENDCG - } - Pass { - Name "FORWARD_DELTA" - Tags { - "LightMode"="ForwardAdd" - } - Blend One One - - - CGPROGRAM - #pragma vertex vert - #pragma fragment frag - #define SHOULD_SAMPLE_SH ( defined (LIGHTMAP_OFF) && defined(DYNAMICLIGHTMAP_OFF) ) - #define _GLOSSYENV 1 - #include "UnityCG.cginc" - #include "AutoLight.cginc" - #include "Lighting.cginc" - #include "UnityPBSLighting.cginc" - #include "UnityStandardBRDF.cginc" - #pragma multi_compile_fwdadd_fullshadows - #pragma multi_compile LIGHTMAP_OFF LIGHTMAP_ON - #pragma multi_compile DIRLIGHTMAP_OFF DIRLIGHTMAP_COMBINED DIRLIGHTMAP_SEPARATE - #pragma multi_compile DYNAMICLIGHTMAP_OFF DYNAMICLIGHTMAP_ON - #pragma only_renderers d3d9 d3d11 glcore gles gles3 metal d3d11_9x xboxone ps4 psp2 n3ds wiiu - #pragma target 3.0 - uniform float4 _Diffuse; - uniform float4 _LightWrapping; - uniform float _Gloss; - struct VertexInput { - float4 vertex : POSITION; - float3 normal : NORMAL; - float4 tangent : TANGENT; - float2 texcoord1 : TEXCOORD1; - float2 texcoord2 : TEXCOORD2; - }; - struct VertexOutput { - float4 pos : SV_POSITION; - float2 uv1 : TEXCOORD0; - float2 uv2 : TEXCOORD1; - float4 posWorld : TEXCOORD2; - float3 normalDir : TEXCOORD3; - float3 tangentDir : TEXCOORD4; - float3 bitangentDir : TEXCOORD5; - LIGHTING_COORDS(6,7) - }; - VertexOutput vert (VertexInput v) { - VertexOutput o = (VertexOutput)0; - o.uv1 = v.texcoord1; - o.uv2 = v.texcoord2; - o.normalDir = UnityObjectToWorldNormal(v.normal); - o.tangentDir = normalize( mul( unity_ObjectToWorld, float4( v.tangent.xyz, 0.0 ) ).xyz ); - o.bitangentDir = normalize(cross(o.normalDir, o.tangentDir) * v.tangent.w); - o.posWorld = mul(unity_ObjectToWorld, v.vertex); - float3 lightColor = _LightColor0.rgb; - o.pos = UnityObjectToClipPos( v.vertex ); - TRANSFER_VERTEX_TO_FRAGMENT(o) - return o; - } - float4 frag(VertexOutput i) : COLOR { - i.normalDir = normalize(i.normalDir); - float3x3 tangentTransform = float3x3( i.tangentDir, i.bitangentDir, i.normalDir); - float3 viewDirection = normalize(_WorldSpaceCameraPos.xyz - i.posWorld.xyz); - float3 normalDirection = i.normalDir; - float3 lightDirection = normalize(lerp(_WorldSpaceLightPos0.xyz, _WorldSpaceLightPos0.xyz - i.posWorld.xyz,_WorldSpaceLightPos0.w)); - float3 lightColor = _LightColor0.rgb; - float3 halfDirection = normalize(viewDirection+lightDirection); -////// Lighting: - UNITY_LIGHT_ATTENUATION(attenuation,i, i.posWorld.xyz); - float3 attenColor = attenuation * _LightColor0.xyz; - float Pi = 3.141592654; - float InvPi = 0.31830988618; -///////// Gloss: - float gloss = _Gloss; - float perceptualRoughness = 1.0 - _Gloss; - float roughness = perceptualRoughness * perceptualRoughness; - float specPow = exp2( gloss * 10.0 + 1.0 ); -////// Specular: - float NdotL = saturate(dot( normalDirection, lightDirection )); - float LdotH = saturate(dot(lightDirection, halfDirection)); - float3 specularColor = 0.0; - float specularMonochrome; - float3 diffuseColor = _Diffuse.rgb; // Need this for specular when using metallic - diffuseColor = DiffuseAndSpecularFromMetallic( diffuseColor, specularColor, specularColor, specularMonochrome ); - specularMonochrome = 1.0-specularMonochrome; - float NdotV = abs(dot( normalDirection, viewDirection )); - float NdotH = saturate(dot( normalDirection, halfDirection )); - float VdotH = saturate(dot( viewDirection, halfDirection )); - float visTerm = SmithJointGGXVisibilityTerm( NdotL, NdotV, roughness ); - float normTerm = GGXTerm(NdotH, roughness); - float specularPBL = (visTerm*normTerm) * UNITY_PI; - #ifdef UNITY_COLORSPACE_GAMMA - specularPBL = sqrt(max(1e-4h, specularPBL)); - #endif - specularPBL = max(0, specularPBL * NdotL); - #if defined(_SPECULARHIGHLIGHTS_OFF) - specularPBL = 0.0; - #endif - specularPBL *= any(specularColor) ? 1.0 : 0.0; - float3 directSpecular = attenColor*specularPBL*FresnelTerm(specularColor, LdotH); - float3 specular = directSpecular; -/////// Diffuse: - NdotL = dot( normalDirection, lightDirection ); - float3 w = _LightWrapping.rgb*0.5; // Light wrapping - float3 NdotLWrap = NdotL * ( 1.0 - w ); - float3 forwardLight = max(float3(0.0,0.0,0.0), NdotLWrap + w ); - NdotL = max(0.0,dot( normalDirection, lightDirection )); - half fd90 = 0.5 + 2 * LdotH * LdotH * (1-gloss); - float nlPow5 = Pow5(1-NdotLWrap); - float nvPow5 = Pow5(1-NdotV); - float3 directDiffuse = (forwardLight + ((1 +(fd90 - 1)*nlPow5) * (1 + (fd90 - 1)*nvPow5) * NdotL)) * attenColor; - float3 diffuse = directDiffuse * diffuseColor; -/// Final Color: - float3 finalColor = diffuse + specular; - return fixed4(finalColor * 1,0); - } - ENDCG - } - Pass { - Name "Meta" - Tags { - "LightMode"="Meta" - } - Cull Off - - CGPROGRAM - #pragma vertex vert - #pragma fragment frag - #define SHOULD_SAMPLE_SH ( defined (LIGHTMAP_OFF) && defined(DYNAMICLIGHTMAP_OFF) ) - #define _GLOSSYENV 1 - #include "UnityCG.cginc" - #include "Lighting.cginc" - #include "UnityPBSLighting.cginc" - #include "UnityStandardBRDF.cginc" - #include "UnityMetaPass.cginc" - #pragma fragmentoption ARB_precision_hint_fastest - #pragma multi_compile_shadowcaster - #pragma multi_compile LIGHTMAP_OFF LIGHTMAP_ON - #pragma multi_compile DIRLIGHTMAP_OFF DIRLIGHTMAP_COMBINED DIRLIGHTMAP_SEPARATE - #pragma multi_compile DYNAMICLIGHTMAP_OFF DYNAMICLIGHTMAP_ON - #pragma only_renderers d3d9 d3d11 glcore gles gles3 metal d3d11_9x xboxone ps4 psp2 n3ds wiiu - #pragma target 3.0 - uniform float4 _Diffuse; - uniform float _Gloss; - struct VertexInput { - float4 vertex : POSITION; - float2 texcoord1 : TEXCOORD1; - float2 texcoord2 : TEXCOORD2; - }; - struct VertexOutput { - float4 pos : SV_POSITION; - float2 uv1 : TEXCOORD0; - float2 uv2 : TEXCOORD1; - float4 posWorld : TEXCOORD2; - }; - VertexOutput vert (VertexInput v) { - VertexOutput o = (VertexOutput)0; - o.uv1 = v.texcoord1; - o.uv2 = v.texcoord2; - o.posWorld = mul(unity_ObjectToWorld, v.vertex); - o.pos = UnityMetaVertexPosition(v.vertex, v.texcoord1.xy, v.texcoord2.xy, unity_LightmapST, unity_DynamicLightmapST ); - return o; - } - float4 frag(VertexOutput i) : SV_Target { - float3 viewDirection = normalize(_WorldSpaceCameraPos.xyz - i.posWorld.xyz); - UnityMetaInput o; - UNITY_INITIALIZE_OUTPUT( UnityMetaInput, o ); - - o.Emission = 0; - - float3 diffColor = _Diffuse.rgb; - float specularMonochrome; - float3 specColor; - diffColor = DiffuseAndSpecularFromMetallic( diffColor, 0.0, specColor, specularMonochrome ); - float roughness = 1.0 - _Gloss; - o.Albedo = diffColor + specColor * roughness * roughness * 0.5; - - return UnityMetaFragment( o ); - } - ENDCG - } - } - FallBack "Diffuse" - CustomEditor "ShaderForgeMaterialInspector" -} diff --git a/Shader Forge/Assets/ShaderForge/Example Assets/Shaders/LightWrapping.shader.meta b/Shader Forge/Assets/ShaderForge/Example Assets/Shaders/LightWrapping.shader.meta deleted file mode 100644 index 7f704f51..00000000 --- a/Shader Forge/Assets/ShaderForge/Example Assets/Shaders/LightWrapping.shader.meta +++ /dev/null @@ -1,9 +0,0 @@ -fileFormatVersion: 2 -guid: 12dc48c8a56df784b93db42c5d582f3e -ShaderImporter: - externalObjects: {} - defaultTextures: [] - nonModifiableTextures: [] - userData: - assetBundleName: - assetBundleVariant: diff --git a/Shader Forge/Assets/ShaderForge/Example Assets/Shaders/Parallax.mat b/Shader Forge/Assets/ShaderForge/Example Assets/Shaders/Parallax.mat deleted file mode 100644 index a629dc5d..00000000 --- a/Shader Forge/Assets/ShaderForge/Example Assets/Shaders/Parallax.mat +++ /dev/null @@ -1,66 +0,0 @@ -%YAML 1.1 -%TAG !u! tag:unity3d.com,2011: ---- !u!21 &2100000 -Material: - serializedVersion: 3 - m_ObjectHideFlags: 0 - m_PrefabParentObject: {fileID: 0} - m_PrefabInternal: {fileID: 0} - m_Name: Parallax - m_Shader: {fileID: 4800000, guid: 848a7fd7a01ca494bbaad23b3f926b42, type: 3} - m_ShaderKeywords: [] - m_CustomRenderQueue: -1 - m_SavedProperties: - serializedVersion: 2 - m_TexEnvs: - data: - first: - name: _Normal - second: - m_Texture: {fileID: 2800000, guid: cf20bfced7e912046a9ce991a4d775ec, type: 3} - m_Scale: {x: 1, y: 1} - m_Offset: {x: 0, y: 0} - data: - first: - name: _DiffuseRGB - second: - m_Texture: {fileID: 2800000, guid: 5fb7986dd6d0a8e4093ba82369dd6a4d, type: 3} - m_Scale: {x: 1, y: 1} - m_Offset: {x: 0, y: 0} - data: - first: - name: _HeightA - second: - m_Texture: {fileID: 2800000, guid: 5fb7986dd6d0a8e4093ba82369dd6a4d, type: 3} - m_Scale: {x: 1, y: 1} - m_Offset: {x: 0, y: 0} - data: - first: - name: _node49 - second: - m_Texture: {fileID: 8900000, guid: f466cf7415226e046b096197eb7341aa, type: 2} - m_Scale: {x: 1, y: 1} - m_Offset: {x: 0, y: 0} - data: - first: - name: _node113 - second: - m_Texture: {fileID: 0} - m_Scale: {x: 1, y: 1} - m_Offset: {x: 0, y: 0} - data: - first: - name: _AORGBHeightA - second: - m_Texture: {fileID: 2800000, guid: 5fb7986dd6d0a8e4093ba82369dd6a4d, type: 3} - m_Scale: {x: 1, y: 1} - m_Offset: {x: 0, y: 0} - data: - first: - name: _node114 - second: - m_Texture: {fileID: 0} - m_Scale: {x: 1, y: 1} - m_Offset: {x: 0, y: 0} - m_Floats: {} - m_Colors: {} diff --git a/Shader Forge/Assets/ShaderForge/Example Assets/Shaders/Parallax.mat.meta b/Shader Forge/Assets/ShaderForge/Example Assets/Shaders/Parallax.mat.meta deleted file mode 100644 index 1da45a2a..00000000 --- a/Shader Forge/Assets/ShaderForge/Example Assets/Shaders/Parallax.mat.meta +++ /dev/null @@ -1,4 +0,0 @@ -fileFormatVersion: 2 -guid: 3ee7d13d3dbe94b459c2935d8b993866 -NativeFormatImporter: - userData: diff --git a/Shader Forge/Assets/ShaderForge/Example Assets/Shaders/Parallax.shader b/Shader Forge/Assets/ShaderForge/Example Assets/Shaders/Parallax.shader deleted file mode 100644 index 8196b843..00000000 --- a/Shader Forge/Assets/ShaderForge/Example Assets/Shaders/Parallax.shader +++ /dev/null @@ -1,412 +0,0 @@ -// Shader created with Shader Forge v1.38 -// Shader Forge (c) Freya Holmer - http://www.acegikmo.com/shaderforge/ -// Note: Manually altering this data may prevent you from opening it in Shader Forge -/*SF_DATA;ver:1.38;sub:START;pass:START;ps:flbk:,iptp:0,cusa:False,bamd:0,cgin:,lico:1,lgpr:1,limd:3,spmd:1,trmd:0,grmd:0,uamb:True,mssp:True,bkdf:True,hqlp:True,rprd:True,enco:False,rmgx:True,imps:True,rpth:0,vtps:0,hqsc:True,nrmq:1,nrsp:0,vomd:0,spxs:False,tesm:0,olmd:1,culm:0,bsrc:0,bdst:1,dpts:2,wrdp:True,dith:0,atcv:False,rfrpo:True,rfrpn:Refraction,coma:15,ufog:True,aust:True,igpj:False,qofs:0,qpre:1,rntp:1,fgom:False,fgoc:False,fgod:False,fgor:False,fgmd:0,fgcr:0.5,fgcg:0.5,fgcb:0.5,fgca:1,fgde:0.01,fgrn:0,fgrf:300,stcl:False,atwp:False,stva:128,stmr:255,stmw:255,stcp:6,stps:0,stfa:0,stfz:0,ofsf:0,ofsu:0,f2p0:False,fnsp:False,fnfb:False,fsmp:False;n:type:ShaderForge.SFN_Final,id:0,x:33740,y:32624,varname:node_0,prsc:2|diff-123-RGB,spec-46-OUT,gloss-42-OUT,normal-47-RGB;n:type:ShaderForge.SFN_Multiply,id:35,x:32898,y:32736,varname:node_35,prsc:2|A-37-UVOUT,B-36-OUT;n:type:ShaderForge.SFN_Vector1,id:36,x:32701,y:32828,varname:node_36,prsc:2,v1:8;n:type:ShaderForge.SFN_TexCoord,id:37,x:32701,y:32682,varname:node_37,prsc:2,uv:0,uaff:False;n:type:ShaderForge.SFN_Vector1,id:42,x:33559,y:32729,varname:node_42,prsc:2,v1:0.7;n:type:ShaderForge.SFN_Vector1,id:46,x:33559,y:32673,varname:node_46,prsc:2,v1:0;n:type:ShaderForge.SFN_Tex2d,id:47,x:33559,y:32821,ptovrint:False,ptlb:Normal,ptin:_Normal,varname:_Normal,prsc:2,glob:False,taghide:False,taghdr:False,tagprd:False,tagnsco:False,tagnrm:False,tex:cf20bfced7e912046a9ce991a4d775ec,ntxv:3,isnm:True|UVIN-110-UVOUT;n:type:ShaderForge.SFN_Parallax,id:110,x:33299,y:32714,varname:node_110,prsc:2|UVIN-35-OUT,HEI-111-A,DEP-112-OUT;n:type:ShaderForge.SFN_Tex2d,id:111,x:33095,y:32608,varname:node_574,prsc:2,tex:5fb7986dd6d0a8e4093ba82369dd6a4d,ntxv:0,isnm:False|UVIN-35-OUT,TEX-113-TEX;n:type:ShaderForge.SFN_Vector1,id:112,x:33095,y:32793,varname:node_112,prsc:2,v1:0.15;n:type:ShaderForge.SFN_Tex2dAsset,id:113,x:32898,y:32571,ptovrint:False,ptlb:AO (RGB) Height (A),ptin:_AORGBHeightA,varname:_AORGBHeightA,glob:False,taghide:False,taghdr:False,tagprd:False,tagnsco:False,tagnrm:False,tex:5fb7986dd6d0a8e4093ba82369dd6a4d,ntxv:0,isnm:False;n:type:ShaderForge.SFN_Tex2d,id:123,x:33559,y:32544,varname:node_577,prsc:2,tex:5fb7986dd6d0a8e4093ba82369dd6a4d,ntxv:0,isnm:False|UVIN-110-UVOUT,TEX-113-TEX;proporder:113-47;pass:END;sub:END;*/ - -Shader "Shader Forge/Examples/Parallax" { - Properties { - _AORGBHeightA ("AO (RGB) Height (A)", 2D) = "white" {} - _Normal ("Normal", 2D) = "bump" {} - } - SubShader { - Tags { - "RenderType"="Opaque" - } - LOD 128 - Pass { - Name "FORWARD" - Tags { - "LightMode"="ForwardBase" - } - - - CGPROGRAM - #pragma vertex vert - #pragma fragment frag - #define SHOULD_SAMPLE_SH ( defined (LIGHTMAP_OFF) && defined(DYNAMICLIGHTMAP_OFF) ) - #define _GLOSSYENV 1 - #include "UnityCG.cginc" - #include "AutoLight.cginc" - #include "Lighting.cginc" - #include "UnityPBSLighting.cginc" - #include "UnityStandardBRDF.cginc" - #pragma multi_compile_fwdbase_fullshadows - #pragma multi_compile LIGHTMAP_OFF LIGHTMAP_ON - #pragma multi_compile DIRLIGHTMAP_OFF DIRLIGHTMAP_COMBINED DIRLIGHTMAP_SEPARATE - #pragma multi_compile DYNAMICLIGHTMAP_OFF DYNAMICLIGHTMAP_ON - #pragma multi_compile_fog - #pragma only_renderers d3d9 d3d11 glcore gles gles3 metal d3d11_9x xboxone ps4 psp2 n3ds wiiu - #pragma target 3.0 - uniform sampler2D _Normal; uniform float4 _Normal_ST; - uniform sampler2D _AORGBHeightA; uniform float4 _AORGBHeightA_ST; - struct VertexInput { - float4 vertex : POSITION; - float3 normal : NORMAL; - float4 tangent : TANGENT; - float2 texcoord0 : TEXCOORD0; - float2 texcoord1 : TEXCOORD1; - float2 texcoord2 : TEXCOORD2; - }; - struct VertexOutput { - float4 pos : SV_POSITION; - float2 uv0 : TEXCOORD0; - float2 uv1 : TEXCOORD1; - float2 uv2 : TEXCOORD2; - float4 posWorld : TEXCOORD3; - float3 normalDir : TEXCOORD4; - float3 tangentDir : TEXCOORD5; - float3 bitangentDir : TEXCOORD6; - LIGHTING_COORDS(7,8) - UNITY_FOG_COORDS(9) - #if defined(LIGHTMAP_ON) || defined(UNITY_SHOULD_SAMPLE_SH) - float4 ambientOrLightmapUV : TEXCOORD10; - #endif - }; - VertexOutput vert (VertexInput v) { - VertexOutput o = (VertexOutput)0; - o.uv0 = v.texcoord0; - o.uv1 = v.texcoord1; - o.uv2 = v.texcoord2; - #ifdef LIGHTMAP_ON - o.ambientOrLightmapUV.xy = v.texcoord1.xy * unity_LightmapST.xy + unity_LightmapST.zw; - o.ambientOrLightmapUV.zw = 0; - #endif - #ifdef DYNAMICLIGHTMAP_ON - o.ambientOrLightmapUV.zw = v.texcoord2.xy * unity_DynamicLightmapST.xy + unity_DynamicLightmapST.zw; - #endif - o.normalDir = UnityObjectToWorldNormal(v.normal); - o.tangentDir = normalize( mul( unity_ObjectToWorld, float4( v.tangent.xyz, 0.0 ) ).xyz ); - o.bitangentDir = normalize(cross(o.normalDir, o.tangentDir) * v.tangent.w); - o.posWorld = mul(unity_ObjectToWorld, v.vertex); - float3 lightColor = _LightColor0.rgb; - o.pos = UnityObjectToClipPos( v.vertex ); - UNITY_TRANSFER_FOG(o,o.pos); - TRANSFER_VERTEX_TO_FRAGMENT(o) - return o; - } - float4 frag(VertexOutput i) : COLOR { - i.normalDir = normalize(i.normalDir); - float3x3 tangentTransform = float3x3( i.tangentDir, i.bitangentDir, i.normalDir); - float3 viewDirection = normalize(_WorldSpaceCameraPos.xyz - i.posWorld.xyz); - float2 node_35 = (i.uv0*8.0); - float4 node_574 = tex2D(_AORGBHeightA,TRANSFORM_TEX(node_35, _AORGBHeightA)); - float2 node_110 = (0.15*(node_574.a - 0.5)*mul(tangentTransform, viewDirection).xy + node_35); - float3 _Normal_var = UnpackNormal(tex2D(_Normal,TRANSFORM_TEX(node_110.rg, _Normal))); - float3 normalLocal = _Normal_var.rgb; - float3 normalDirection = normalize(mul( normalLocal, tangentTransform )); // Perturbed normals - float3 viewReflectDirection = reflect( -viewDirection, normalDirection ); - float3 lightDirection = normalize(_WorldSpaceLightPos0.xyz); - float3 lightColor = _LightColor0.rgb; - float3 halfDirection = normalize(viewDirection+lightDirection); -////// Lighting: - UNITY_LIGHT_ATTENUATION(attenuation,i, i.posWorld.xyz); - float3 attenColor = attenuation * _LightColor0.xyz; - float Pi = 3.141592654; - float InvPi = 0.31830988618; -///////// Gloss: - float gloss = 0.7; - float perceptualRoughness = 1.0 - 0.7; - float roughness = perceptualRoughness * perceptualRoughness; - float specPow = exp2( gloss * 10.0 + 1.0 ); -/////// GI Data: - UnityLight light; - #ifdef LIGHTMAP_OFF - light.color = lightColor; - light.dir = lightDirection; - light.ndotl = LambertTerm (normalDirection, light.dir); - #else - light.color = half3(0.f, 0.f, 0.f); - light.ndotl = 0.0f; - light.dir = half3(0.f, 0.f, 0.f); - #endif - UnityGIInput d; - d.light = light; - d.worldPos = i.posWorld.xyz; - d.worldViewDir = viewDirection; - d.atten = attenuation; - #if defined(LIGHTMAP_ON) || defined(DYNAMICLIGHTMAP_ON) - d.ambient = 0; - d.lightmapUV = i.ambientOrLightmapUV; - #else - d.ambient = i.ambientOrLightmapUV; - #endif - #if UNITY_SPECCUBE_BLENDING || UNITY_SPECCUBE_BOX_PROJECTION - d.boxMin[0] = unity_SpecCube0_BoxMin; - d.boxMin[1] = unity_SpecCube1_BoxMin; - #endif - #if UNITY_SPECCUBE_BOX_PROJECTION - d.boxMax[0] = unity_SpecCube0_BoxMax; - d.boxMax[1] = unity_SpecCube1_BoxMax; - d.probePosition[0] = unity_SpecCube0_ProbePosition; - d.probePosition[1] = unity_SpecCube1_ProbePosition; - #endif - d.probeHDR[0] = unity_SpecCube0_HDR; - d.probeHDR[1] = unity_SpecCube1_HDR; - Unity_GlossyEnvironmentData ugls_en_data; - ugls_en_data.roughness = 1.0 - gloss; - ugls_en_data.reflUVW = viewReflectDirection; - UnityGI gi = UnityGlobalIllumination(d, 1, normalDirection, ugls_en_data ); - lightDirection = gi.light.dir; - lightColor = gi.light.color; -////// Specular: - float NdotL = saturate(dot( normalDirection, lightDirection )); - float LdotH = saturate(dot(lightDirection, halfDirection)); - float3 specularColor = 0.0; - float specularMonochrome; - float4 node_577 = tex2D(_AORGBHeightA,TRANSFORM_TEX(node_110.rg, _AORGBHeightA)); - float3 diffuseColor = node_577.rgb; // Need this for specular when using metallic - diffuseColor = DiffuseAndSpecularFromMetallic( diffuseColor, specularColor, specularColor, specularMonochrome ); - specularMonochrome = 1.0-specularMonochrome; - float NdotV = abs(dot( normalDirection, viewDirection )); - float NdotH = saturate(dot( normalDirection, halfDirection )); - float VdotH = saturate(dot( viewDirection, halfDirection )); - float visTerm = SmithJointGGXVisibilityTerm( NdotL, NdotV, roughness ); - float normTerm = GGXTerm(NdotH, roughness); - float specularPBL = (visTerm*normTerm) * UNITY_PI; - #ifdef UNITY_COLORSPACE_GAMMA - specularPBL = sqrt(max(1e-4h, specularPBL)); - #endif - specularPBL = max(0, specularPBL * NdotL); - #if defined(_SPECULARHIGHLIGHTS_OFF) - specularPBL = 0.0; - #endif - half surfaceReduction; - #ifdef UNITY_COLORSPACE_GAMMA - surfaceReduction = 1.0-0.28*roughness*perceptualRoughness; - #else - surfaceReduction = 1.0/(roughness*roughness + 1.0); - #endif - specularPBL *= any(specularColor) ? 1.0 : 0.0; - float3 directSpecular = attenColor*specularPBL*FresnelTerm(specularColor, LdotH); - half grazingTerm = saturate( gloss + specularMonochrome ); - float3 indirectSpecular = (gi.indirect.specular); - indirectSpecular *= FresnelLerp (specularColor, grazingTerm, NdotV); - indirectSpecular *= surfaceReduction; - float3 specular = (directSpecular + indirectSpecular); -/////// Diffuse: - NdotL = max(0.0,dot( normalDirection, lightDirection )); - half fd90 = 0.5 + 2 * LdotH * LdotH * (1-gloss); - float nlPow5 = Pow5(1-NdotL); - float nvPow5 = Pow5(1-NdotV); - float3 directDiffuse = ((1 +(fd90 - 1)*nlPow5) * (1 + (fd90 - 1)*nvPow5) * NdotL) * attenColor; - float3 indirectDiffuse = float3(0,0,0); - indirectDiffuse += gi.indirect.diffuse; - float3 diffuse = (directDiffuse + indirectDiffuse) * diffuseColor; -/// Final Color: - float3 finalColor = diffuse + specular; - fixed4 finalRGBA = fixed4(finalColor,1); - UNITY_APPLY_FOG(i.fogCoord, finalRGBA); - return finalRGBA; - } - ENDCG - } - Pass { - Name "FORWARD_DELTA" - Tags { - "LightMode"="ForwardAdd" - } - Blend One One - - - CGPROGRAM - #pragma vertex vert - #pragma fragment frag - #define SHOULD_SAMPLE_SH ( defined (LIGHTMAP_OFF) && defined(DYNAMICLIGHTMAP_OFF) ) - #define _GLOSSYENV 1 - #include "UnityCG.cginc" - #include "AutoLight.cginc" - #include "Lighting.cginc" - #include "UnityPBSLighting.cginc" - #include "UnityStandardBRDF.cginc" - #pragma multi_compile_fwdadd_fullshadows - #pragma multi_compile LIGHTMAP_OFF LIGHTMAP_ON - #pragma multi_compile DIRLIGHTMAP_OFF DIRLIGHTMAP_COMBINED DIRLIGHTMAP_SEPARATE - #pragma multi_compile DYNAMICLIGHTMAP_OFF DYNAMICLIGHTMAP_ON - #pragma multi_compile_fog - #pragma only_renderers d3d9 d3d11 glcore gles gles3 metal d3d11_9x xboxone ps4 psp2 n3ds wiiu - #pragma target 3.0 - uniform sampler2D _Normal; uniform float4 _Normal_ST; - uniform sampler2D _AORGBHeightA; uniform float4 _AORGBHeightA_ST; - struct VertexInput { - float4 vertex : POSITION; - float3 normal : NORMAL; - float4 tangent : TANGENT; - float2 texcoord0 : TEXCOORD0; - float2 texcoord1 : TEXCOORD1; - float2 texcoord2 : TEXCOORD2; - }; - struct VertexOutput { - float4 pos : SV_POSITION; - float2 uv0 : TEXCOORD0; - float2 uv1 : TEXCOORD1; - float2 uv2 : TEXCOORD2; - float4 posWorld : TEXCOORD3; - float3 normalDir : TEXCOORD4; - float3 tangentDir : TEXCOORD5; - float3 bitangentDir : TEXCOORD6; - LIGHTING_COORDS(7,8) - UNITY_FOG_COORDS(9) - }; - VertexOutput vert (VertexInput v) { - VertexOutput o = (VertexOutput)0; - o.uv0 = v.texcoord0; - o.uv1 = v.texcoord1; - o.uv2 = v.texcoord2; - o.normalDir = UnityObjectToWorldNormal(v.normal); - o.tangentDir = normalize( mul( unity_ObjectToWorld, float4( v.tangent.xyz, 0.0 ) ).xyz ); - o.bitangentDir = normalize(cross(o.normalDir, o.tangentDir) * v.tangent.w); - o.posWorld = mul(unity_ObjectToWorld, v.vertex); - float3 lightColor = _LightColor0.rgb; - o.pos = UnityObjectToClipPos( v.vertex ); - UNITY_TRANSFER_FOG(o,o.pos); - TRANSFER_VERTEX_TO_FRAGMENT(o) - return o; - } - float4 frag(VertexOutput i) : COLOR { - i.normalDir = normalize(i.normalDir); - float3x3 tangentTransform = float3x3( i.tangentDir, i.bitangentDir, i.normalDir); - float3 viewDirection = normalize(_WorldSpaceCameraPos.xyz - i.posWorld.xyz); - float2 node_35 = (i.uv0*8.0); - float4 node_574 = tex2D(_AORGBHeightA,TRANSFORM_TEX(node_35, _AORGBHeightA)); - float2 node_110 = (0.15*(node_574.a - 0.5)*mul(tangentTransform, viewDirection).xy + node_35); - float3 _Normal_var = UnpackNormal(tex2D(_Normal,TRANSFORM_TEX(node_110.rg, _Normal))); - float3 normalLocal = _Normal_var.rgb; - float3 normalDirection = normalize(mul( normalLocal, tangentTransform )); // Perturbed normals - float3 lightDirection = normalize(lerp(_WorldSpaceLightPos0.xyz, _WorldSpaceLightPos0.xyz - i.posWorld.xyz,_WorldSpaceLightPos0.w)); - float3 lightColor = _LightColor0.rgb; - float3 halfDirection = normalize(viewDirection+lightDirection); -////// Lighting: - UNITY_LIGHT_ATTENUATION(attenuation,i, i.posWorld.xyz); - float3 attenColor = attenuation * _LightColor0.xyz; - float Pi = 3.141592654; - float InvPi = 0.31830988618; -///////// Gloss: - float gloss = 0.7; - float perceptualRoughness = 1.0 - 0.7; - float roughness = perceptualRoughness * perceptualRoughness; - float specPow = exp2( gloss * 10.0 + 1.0 ); -////// Specular: - float NdotL = saturate(dot( normalDirection, lightDirection )); - float LdotH = saturate(dot(lightDirection, halfDirection)); - float3 specularColor = 0.0; - float specularMonochrome; - float4 node_577 = tex2D(_AORGBHeightA,TRANSFORM_TEX(node_110.rg, _AORGBHeightA)); - float3 diffuseColor = node_577.rgb; // Need this for specular when using metallic - diffuseColor = DiffuseAndSpecularFromMetallic( diffuseColor, specularColor, specularColor, specularMonochrome ); - specularMonochrome = 1.0-specularMonochrome; - float NdotV = abs(dot( normalDirection, viewDirection )); - float NdotH = saturate(dot( normalDirection, halfDirection )); - float VdotH = saturate(dot( viewDirection, halfDirection )); - float visTerm = SmithJointGGXVisibilityTerm( NdotL, NdotV, roughness ); - float normTerm = GGXTerm(NdotH, roughness); - float specularPBL = (visTerm*normTerm) * UNITY_PI; - #ifdef UNITY_COLORSPACE_GAMMA - specularPBL = sqrt(max(1e-4h, specularPBL)); - #endif - specularPBL = max(0, specularPBL * NdotL); - #if defined(_SPECULARHIGHLIGHTS_OFF) - specularPBL = 0.0; - #endif - specularPBL *= any(specularColor) ? 1.0 : 0.0; - float3 directSpecular = attenColor*specularPBL*FresnelTerm(specularColor, LdotH); - float3 specular = directSpecular; -/////// Diffuse: - NdotL = max(0.0,dot( normalDirection, lightDirection )); - half fd90 = 0.5 + 2 * LdotH * LdotH * (1-gloss); - float nlPow5 = Pow5(1-NdotL); - float nvPow5 = Pow5(1-NdotV); - float3 directDiffuse = ((1 +(fd90 - 1)*nlPow5) * (1 + (fd90 - 1)*nvPow5) * NdotL) * attenColor; - float3 diffuse = directDiffuse * diffuseColor; -/// Final Color: - float3 finalColor = diffuse + specular; - fixed4 finalRGBA = fixed4(finalColor * 1,0); - UNITY_APPLY_FOG(i.fogCoord, finalRGBA); - return finalRGBA; - } - ENDCG - } - Pass { - Name "Meta" - Tags { - "LightMode"="Meta" - } - Cull Off - - CGPROGRAM - #pragma vertex vert - #pragma fragment frag - #define SHOULD_SAMPLE_SH ( defined (LIGHTMAP_OFF) && defined(DYNAMICLIGHTMAP_OFF) ) - #define _GLOSSYENV 1 - #include "UnityCG.cginc" - #include "Lighting.cginc" - #include "UnityPBSLighting.cginc" - #include "UnityStandardBRDF.cginc" - #include "UnityMetaPass.cginc" - #pragma fragmentoption ARB_precision_hint_fastest - #pragma multi_compile_shadowcaster - #pragma multi_compile LIGHTMAP_OFF LIGHTMAP_ON - #pragma multi_compile DIRLIGHTMAP_OFF DIRLIGHTMAP_COMBINED DIRLIGHTMAP_SEPARATE - #pragma multi_compile DYNAMICLIGHTMAP_OFF DYNAMICLIGHTMAP_ON - #pragma multi_compile_fog - #pragma only_renderers d3d9 d3d11 glcore gles gles3 metal d3d11_9x xboxone ps4 psp2 n3ds wiiu - #pragma target 3.0 - uniform sampler2D _AORGBHeightA; uniform float4 _AORGBHeightA_ST; - struct VertexInput { - float4 vertex : POSITION; - float3 normal : NORMAL; - float4 tangent : TANGENT; - float2 texcoord0 : TEXCOORD0; - float2 texcoord1 : TEXCOORD1; - float2 texcoord2 : TEXCOORD2; - }; - struct VertexOutput { - float4 pos : SV_POSITION; - float2 uv0 : TEXCOORD0; - float2 uv1 : TEXCOORD1; - float2 uv2 : TEXCOORD2; - float4 posWorld : TEXCOORD3; - float3 normalDir : TEXCOORD4; - float3 tangentDir : TEXCOORD5; - float3 bitangentDir : TEXCOORD6; - }; - VertexOutput vert (VertexInput v) { - VertexOutput o = (VertexOutput)0; - o.uv0 = v.texcoord0; - o.uv1 = v.texcoord1; - o.uv2 = v.texcoord2; - o.normalDir = UnityObjectToWorldNormal(v.normal); - o.tangentDir = normalize( mul( unity_ObjectToWorld, float4( v.tangent.xyz, 0.0 ) ).xyz ); - o.bitangentDir = normalize(cross(o.normalDir, o.tangentDir) * v.tangent.w); - o.posWorld = mul(unity_ObjectToWorld, v.vertex); - o.pos = UnityMetaVertexPosition(v.vertex, v.texcoord1.xy, v.texcoord2.xy, unity_LightmapST, unity_DynamicLightmapST ); - return o; - } - float4 frag(VertexOutput i) : SV_Target { - i.normalDir = normalize(i.normalDir); - float3x3 tangentTransform = float3x3( i.tangentDir, i.bitangentDir, i.normalDir); - float3 viewDirection = normalize(_WorldSpaceCameraPos.xyz - i.posWorld.xyz); - float3 normalDirection = i.normalDir; - UnityMetaInput o; - UNITY_INITIALIZE_OUTPUT( UnityMetaInput, o ); - - o.Emission = 0; - - float2 node_35 = (i.uv0*8.0); - float4 node_574 = tex2D(_AORGBHeightA,TRANSFORM_TEX(node_35, _AORGBHeightA)); - float2 node_110 = (0.15*(node_574.a - 0.5)*mul(tangentTransform, viewDirection).xy + node_35); - float4 node_577 = tex2D(_AORGBHeightA,TRANSFORM_TEX(node_110.rg, _AORGBHeightA)); - float3 diffColor = node_577.rgb; - float specularMonochrome; - float3 specColor; - diffColor = DiffuseAndSpecularFromMetallic( diffColor, 0.0, specColor, specularMonochrome ); - float roughness = 1.0 - 0.7; - o.Albedo = diffColor + specColor * roughness * roughness * 0.5; - - return UnityMetaFragment( o ); - } - ENDCG - } - } - FallBack "Diffuse" - CustomEditor "ShaderForgeMaterialInspector" -} diff --git a/Shader Forge/Assets/ShaderForge/Example Assets/Shaders/Parallax.shader.meta b/Shader Forge/Assets/ShaderForge/Example Assets/Shaders/Parallax.shader.meta deleted file mode 100644 index 59fee484..00000000 --- a/Shader Forge/Assets/ShaderForge/Example Assets/Shaders/Parallax.shader.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 848a7fd7a01ca494bbaad23b3f926b42 -ShaderImporter: - externalObjects: {} - defaultTextures: - - _Normal: {fileID: 2800000, guid: cf20bfced7e912046a9ce991a4d775ec, type: 3} - - _AORGBHeightA: {fileID: 2800000, guid: 5fb7986dd6d0a8e4093ba82369dd6a4d, type: 3} - nonModifiableTextures: [] - userData: - assetBundleName: - assetBundleVariant: diff --git a/Shader Forge/Assets/ShaderForge/Example Assets/Shaders/PixelRotator.mat b/Shader Forge/Assets/ShaderForge/Example Assets/Shaders/PixelRotator.mat deleted file mode 100644 index f203826d..00000000 --- a/Shader Forge/Assets/ShaderForge/Example Assets/Shaders/PixelRotator.mat +++ /dev/null @@ -1,80 +0,0 @@ -%YAML 1.1 -%TAG !u! tag:unity3d.com,2011: ---- !u!21 &2100000 -Material: - serializedVersion: 3 - m_ObjectHideFlags: 0 - m_PrefabParentObject: {fileID: 0} - m_PrefabInternal: {fileID: 0} - m_Name: PixelRotator - m_Shader: {fileID: 4800000, guid: 3c2ff98dd53924d0b85358d999cf6890, type: 3} - m_ShaderKeywords: [] - m_CustomRenderQueue: -1 - m_SavedProperties: - serializedVersion: 2 - m_TexEnvs: - data: - first: - name: _Normal - second: - m_Texture: {fileID: 2800000, guid: bbab0a6f7bae9cf42bf057d8ee2755f6, type: 3} - m_Scale: {x: 1, y: 1} - m_Offset: {x: 0, y: 0} - data: - first: - name: _Diffuse - second: - m_Texture: {fileID: 2800000, guid: 6a985dfcd1d3ca94e9753748ed65c697, type: 3} - m_Scale: {x: 1, y: 1} - m_Offset: {x: 0, y: 0} - data: - first: - name: _node32 - second: - m_Texture: {fileID: 2800000, guid: eb6f3d7f90ac0d14186a8ea5a44e1b3e, type: 3} - m_Scale: {x: 1, y: 1} - m_Offset: {x: 0, y: 0} - data: - first: - name: _node10 - second: - m_Texture: {fileID: 0} - m_Scale: {x: 1, y: 1} - m_Offset: {x: 0, y: 0} - data: - first: - name: _SpecMaskR - second: - m_Texture: {fileID: 2800000, guid: b66bceaf0cc0ace4e9bdc92f14bba709, type: 3} - m_Scale: {x: 1, y: 1} - m_Offset: {x: 0, y: 0} - m_Floats: - data: - first: - name: _Gloss - second: .0983606577 - data: - first: - name: _NormalIntensity - second: .258196741 - data: - first: - name: _node9 - second: 1 - data: - first: - name: _MIP - second: 2.85714269 - data: - first: - name: _node67 - second: .625 - m_Colors: - data: - first: - name: _Specular - second: {r: .99999994, g: .425458819, b: .156017184, a: 1} - data: - first: - name: _Diffuse - second: {r: .415291131, g: 0, b: 0, a: 1} diff --git a/Shader Forge/Assets/ShaderForge/Example Assets/Shaders/PixelRotator.mat.meta b/Shader Forge/Assets/ShaderForge/Example Assets/Shaders/PixelRotator.mat.meta deleted file mode 100644 index 63f321bd..00000000 --- a/Shader Forge/Assets/ShaderForge/Example Assets/Shaders/PixelRotator.mat.meta +++ /dev/null @@ -1,4 +0,0 @@ -fileFormatVersion: 2 -guid: ad0f5de566d7147fe91238a7111958f1 -NativeFormatImporter: - userData: diff --git a/Shader Forge/Assets/ShaderForge/Example Assets/Shaders/PixelRotator.shader b/Shader Forge/Assets/ShaderForge/Example Assets/Shaders/PixelRotator.shader deleted file mode 100644 index a34c8d30..00000000 --- a/Shader Forge/Assets/ShaderForge/Example Assets/Shaders/PixelRotator.shader +++ /dev/null @@ -1,189 +0,0 @@ -// Shader created with Shader Forge v1.38 -// Shader Forge (c) Freya Holmer - http://www.acegikmo.com/shaderforge/ -// Note: Manually altering this data may prevent you from opening it in Shader Forge -/*SF_DATA;ver:1.38;sub:START;pass:START;ps:flbk:,iptp:0,cusa:False,bamd:0,cgin:,lico:1,lgpr:1,limd:2,spmd:1,trmd:0,grmd:0,uamb:True,mssp:True,bkdf:False,hqlp:False,rprd:False,enco:False,rmgx:True,imps:True,rpth:0,vtps:0,hqsc:True,nrmq:1,nrsp:0,vomd:0,spxs:False,tesm:0,olmd:1,culm:0,bsrc:0,bdst:1,dpts:2,wrdp:True,dith:0,atcv:False,rfrpo:True,rfrpn:Refraction,coma:15,ufog:True,aust:True,igpj:False,qofs:0,qpre:1,rntp:1,fgom:False,fgoc:False,fgod:False,fgor:False,fgmd:0,fgcr:0.5,fgcg:0.5,fgcb:0.5,fgca:1,fgde:0.01,fgrn:0,fgrf:300,stcl:False,atwp:False,stva:128,stmr:255,stmw:255,stcp:6,stps:0,stfa:0,stfz:0,ofsf:0,ofsu:0,f2p0:False,fnsp:False,fnfb:False,fsmp:False;n:type:ShaderForge.SFN_Final,id:1,x:35749,y:31801,varname:node_1,prsc:2|diff-748-OUT;n:type:ShaderForge.SFN_TexCoord,id:544,x:32941,y:31716,varname:node_544,prsc:2,uv:0,uaff:False;n:type:ShaderForge.SFN_Multiply,id:545,x:33168,y:31794,varname:node_545,prsc:2|A-544-UVOUT,B-546-OUT;n:type:ShaderForge.SFN_Vector1,id:546,x:32941,y:31928,varname:node_546,prsc:2,v1:10;n:type:ShaderForge.SFN_Frac,id:556,x:33395,y:31872,varname:node_556,prsc:2|IN-545-OUT;n:type:ShaderForge.SFN_RemapRange,id:559,x:33622,y:31873,varname:node_559,prsc:2,frmn:0,frmx:1,tomn:-1,tomx:1|IN-556-OUT;n:type:ShaderForge.SFN_Length,id:561,x:34530,y:32037,varname:node_561,prsc:2|IN-585-OUT;n:type:ShaderForge.SFN_Floor,id:562,x:34984,y:32043,varname:node_562,prsc:2|IN-607-OUT;n:type:ShaderForge.SFN_Rotator,id:563,x:34076,y:32056,varname:node_563,prsc:2|UVIN-764-OUT,PIV-574-OUT;n:type:ShaderForge.SFN_Vector2,id:574,x:33849,y:32159,varname:node_574,prsc:2,v1:0,v2:0;n:type:ShaderForge.SFN_Multiply,id:585,x:34303,y:31993,varname:node_585,prsc:2|A-586-OUT,B-563-UVOUT;n:type:ShaderForge.SFN_Vector2,id:586,x:34076,y:31906,varname:node_586,prsc:2,v1:1,v2:3;n:type:ShaderForge.SFN_Clamp01,id:607,x:34757,y:31992,varname:node_607,prsc:2|IN-561-OUT;n:type:ShaderForge.SFN_Vector1,id:641,x:33622,y:32093,varname:node_641,prsc:2,v1:8;n:type:ShaderForge.SFN_Floor,id:736,x:34076,y:31720,varname:node_736,prsc:2|IN-545-OUT;n:type:ShaderForge.SFN_Noise,id:737,x:34530,y:31533,varname:node_737,prsc:2|XY-736-OUT;n:type:ShaderForge.SFN_Noise,id:739,x:34530,y:31701,varname:node_739,prsc:2|XY-743-OUT;n:type:ShaderForge.SFN_Noise,id:741,x:34757,y:31824,varname:node_741,prsc:2|XY-744-OUT;n:type:ShaderForge.SFN_Add,id:743,x:34303,y:31825,varname:node_743,prsc:2|A-736-OUT,B-546-OUT;n:type:ShaderForge.SFN_Add,id:744,x:34530,y:31869,varname:node_744,prsc:2|A-743-OUT,B-546-OUT;n:type:ShaderForge.SFN_Append,id:745,x:34757,y:31656,varname:node_745,prsc:2|A-737-OUT,B-739-OUT;n:type:ShaderForge.SFN_Append,id:746,x:34984,y:31707,varname:node_746,prsc:2|A-745-OUT,B-741-OUT;n:type:ShaderForge.SFN_OneMinus,id:747,x:35211,y:31991,varname:node_747,prsc:2|IN-562-OUT;n:type:ShaderForge.SFN_Multiply,id:748,x:35438,y:31899,varname:node_748,prsc:2|A-753-OUT,B-747-OUT;n:type:ShaderForge.SFN_Power,id:753,x:35211,y:31823,varname:node_753,prsc:2|VAL-746-OUT,EXP-754-OUT;n:type:ShaderForge.SFN_Vector1,id:754,x:34984,y:31909,varname:node_754,prsc:2,v1:2;n:type:ShaderForge.SFN_Posterize,id:764,x:33849,y:31973,varname:node_764,prsc:2|IN-559-OUT,STPS-641-OUT;pass:END;sub:END;*/ - -Shader "Shader Forge/Examples/Pixel Rotator" { - Properties { - } - SubShader { - Tags { - "RenderType"="Opaque" - } - Pass { - Name "FORWARD" - Tags { - "LightMode"="ForwardBase" - } - - - CGPROGRAM - #pragma vertex vert - #pragma fragment frag - #define UNITY_PASS_FORWARDBASE - #include "UnityCG.cginc" - #include "AutoLight.cginc" - #pragma multi_compile_fwdbase_fullshadows - #pragma multi_compile_fog - #pragma only_renderers d3d9 d3d11 glcore gles gles3 metal d3d11_9x xboxone ps4 psp2 n3ds wiiu - #pragma target 3.0 - uniform float4 _LightColor0; - struct VertexInput { - float4 vertex : POSITION; - float3 normal : NORMAL; - float2 texcoord0 : TEXCOORD0; - }; - struct VertexOutput { - float4 pos : SV_POSITION; - float2 uv0 : TEXCOORD0; - float4 posWorld : TEXCOORD1; - float3 normalDir : TEXCOORD2; - LIGHTING_COORDS(3,4) - UNITY_FOG_COORDS(5) - }; - VertexOutput vert (VertexInput v) { - VertexOutput o = (VertexOutput)0; - o.uv0 = v.texcoord0; - o.normalDir = UnityObjectToWorldNormal(v.normal); - o.posWorld = mul(unity_ObjectToWorld, v.vertex); - float3 lightColor = _LightColor0.rgb; - o.pos = UnityObjectToClipPos( v.vertex ); - UNITY_TRANSFER_FOG(o,o.pos); - TRANSFER_VERTEX_TO_FRAGMENT(o) - return o; - } - float4 frag(VertexOutput i) : COLOR { - i.normalDir = normalize(i.normalDir); - float3 normalDirection = i.normalDir; - float3 lightDirection = normalize(_WorldSpaceLightPos0.xyz); - float3 lightColor = _LightColor0.rgb; -////// Lighting: - UNITY_LIGHT_ATTENUATION(attenuation,i, i.posWorld.xyz); - float3 attenColor = attenuation * _LightColor0.xyz; -/////// Diffuse: - float NdotL = max(0.0,dot( normalDirection, lightDirection )); - float3 directDiffuse = max( 0.0, NdotL) * attenColor; - float3 indirectDiffuse = float3(0,0,0); - indirectDiffuse += UNITY_LIGHTMODEL_AMBIENT.rgb; // Ambient Light - float node_546 = 10.0; - float2 node_545 = (i.uv0*node_546); - float2 node_736 = floor(node_545); - float2 node_737_skew = node_736 + 0.2127+node_736.x*0.3713*node_736.y; - float2 node_737_rnd = 4.789*sin(489.123*(node_737_skew)); - float node_737 = frac(node_737_rnd.x*node_737_rnd.y*(1+node_737_skew.x)); - float2 node_743 = (node_736+node_546); - float2 node_739_skew = node_743 + 0.2127+node_743.x*0.3713*node_743.y; - float2 node_739_rnd = 4.789*sin(489.123*(node_739_skew)); - float node_739 = frac(node_739_rnd.x*node_739_rnd.y*(1+node_739_skew.x)); - float2 node_744 = (node_743+node_546); - float2 node_741_skew = node_744 + 0.2127+node_744.x*0.3713*node_744.y; - float2 node_741_rnd = 4.789*sin(489.123*(node_741_skew)); - float node_741 = frac(node_741_rnd.x*node_741_rnd.y*(1+node_741_skew.x)); - float4 node_6513 = _Time; - float node_563_ang = node_6513.g; - float node_563_spd = 1.0; - float node_563_cos = cos(node_563_spd*node_563_ang); - float node_563_sin = sin(node_563_spd*node_563_ang); - float2 node_563_piv = float2(0,0); - float node_641 = 8.0; - float2 node_563 = (mul(floor((frac(node_545)*2.0+-1.0) * node_641) / (node_641 - 1)-node_563_piv,float2x2( node_563_cos, -node_563_sin, node_563_sin, node_563_cos))+node_563_piv); - float3 diffuseColor = (pow(float3(float2(node_737,node_739),node_741),2.0)*(1.0 - floor(saturate(length((float2(1,3)*node_563)))))); - float3 diffuse = (directDiffuse + indirectDiffuse) * diffuseColor; -/// Final Color: - float3 finalColor = diffuse; - fixed4 finalRGBA = fixed4(finalColor,1); - UNITY_APPLY_FOG(i.fogCoord, finalRGBA); - return finalRGBA; - } - ENDCG - } - Pass { - Name "FORWARD_DELTA" - Tags { - "LightMode"="ForwardAdd" - } - Blend One One - - - CGPROGRAM - #pragma vertex vert - #pragma fragment frag - #define UNITY_PASS_FORWARDADD - #include "UnityCG.cginc" - #include "AutoLight.cginc" - #pragma multi_compile_fwdadd_fullshadows - #pragma multi_compile_fog - #pragma only_renderers d3d9 d3d11 glcore gles gles3 metal d3d11_9x xboxone ps4 psp2 n3ds wiiu - #pragma target 3.0 - uniform float4 _LightColor0; - struct VertexInput { - float4 vertex : POSITION; - float3 normal : NORMAL; - float2 texcoord0 : TEXCOORD0; - }; - struct VertexOutput { - float4 pos : SV_POSITION; - float2 uv0 : TEXCOORD0; - float4 posWorld : TEXCOORD1; - float3 normalDir : TEXCOORD2; - LIGHTING_COORDS(3,4) - UNITY_FOG_COORDS(5) - }; - VertexOutput vert (VertexInput v) { - VertexOutput o = (VertexOutput)0; - o.uv0 = v.texcoord0; - o.normalDir = UnityObjectToWorldNormal(v.normal); - o.posWorld = mul(unity_ObjectToWorld, v.vertex); - float3 lightColor = _LightColor0.rgb; - o.pos = UnityObjectToClipPos( v.vertex ); - UNITY_TRANSFER_FOG(o,o.pos); - TRANSFER_VERTEX_TO_FRAGMENT(o) - return o; - } - float4 frag(VertexOutput i) : COLOR { - i.normalDir = normalize(i.normalDir); - float3 normalDirection = i.normalDir; - float3 lightDirection = normalize(lerp(_WorldSpaceLightPos0.xyz, _WorldSpaceLightPos0.xyz - i.posWorld.xyz,_WorldSpaceLightPos0.w)); - float3 lightColor = _LightColor0.rgb; -////// Lighting: - UNITY_LIGHT_ATTENUATION(attenuation,i, i.posWorld.xyz); - float3 attenColor = attenuation * _LightColor0.xyz; -/////// Diffuse: - float NdotL = max(0.0,dot( normalDirection, lightDirection )); - float3 directDiffuse = max( 0.0, NdotL) * attenColor; - float node_546 = 10.0; - float2 node_545 = (i.uv0*node_546); - float2 node_736 = floor(node_545); - float2 node_737_skew = node_736 + 0.2127+node_736.x*0.3713*node_736.y; - float2 node_737_rnd = 4.789*sin(489.123*(node_737_skew)); - float node_737 = frac(node_737_rnd.x*node_737_rnd.y*(1+node_737_skew.x)); - float2 node_743 = (node_736+node_546); - float2 node_739_skew = node_743 + 0.2127+node_743.x*0.3713*node_743.y; - float2 node_739_rnd = 4.789*sin(489.123*(node_739_skew)); - float node_739 = frac(node_739_rnd.x*node_739_rnd.y*(1+node_739_skew.x)); - float2 node_744 = (node_743+node_546); - float2 node_741_skew = node_744 + 0.2127+node_744.x*0.3713*node_744.y; - float2 node_741_rnd = 4.789*sin(489.123*(node_741_skew)); - float node_741 = frac(node_741_rnd.x*node_741_rnd.y*(1+node_741_skew.x)); - float4 node_9092 = _Time; - float node_563_ang = node_9092.g; - float node_563_spd = 1.0; - float node_563_cos = cos(node_563_spd*node_563_ang); - float node_563_sin = sin(node_563_spd*node_563_ang); - float2 node_563_piv = float2(0,0); - float node_641 = 8.0; - float2 node_563 = (mul(floor((frac(node_545)*2.0+-1.0) * node_641) / (node_641 - 1)-node_563_piv,float2x2( node_563_cos, -node_563_sin, node_563_sin, node_563_cos))+node_563_piv); - float3 diffuseColor = (pow(float3(float2(node_737,node_739),node_741),2.0)*(1.0 - floor(saturate(length((float2(1,3)*node_563)))))); - float3 diffuse = directDiffuse * diffuseColor; -/// Final Color: - float3 finalColor = diffuse; - fixed4 finalRGBA = fixed4(finalColor * 1,0); - UNITY_APPLY_FOG(i.fogCoord, finalRGBA); - return finalRGBA; - } - ENDCG - } - } - FallBack "Diffuse" - CustomEditor "ShaderForgeMaterialInspector" -} diff --git a/Shader Forge/Assets/ShaderForge/Example Assets/Shaders/PixelRotator.shader.meta b/Shader Forge/Assets/ShaderForge/Example Assets/Shaders/PixelRotator.shader.meta deleted file mode 100644 index 5c7b8ef3..00000000 --- a/Shader Forge/Assets/ShaderForge/Example Assets/Shaders/PixelRotator.shader.meta +++ /dev/null @@ -1,9 +0,0 @@ -fileFormatVersion: 2 -guid: 3c2ff98dd53924d0b85358d999cf6890 -ShaderImporter: - externalObjects: {} - defaultTextures: [] - nonModifiableTextures: [] - userData: - assetBundleName: - assetBundleVariant: diff --git a/Shader Forge/Assets/ShaderForge/Example Assets/Shaders/Refraction.mat b/Shader Forge/Assets/ShaderForge/Example Assets/Shaders/Refraction.mat deleted file mode 100644 index 66661d5b..00000000 --- a/Shader Forge/Assets/ShaderForge/Example Assets/Shaders/Refraction.mat +++ /dev/null @@ -1,43 +0,0 @@ -%YAML 1.1 -%TAG !u! tag:unity3d.com,2011: ---- !u!21 &2100000 -Material: - serializedVersion: 3 - m_ObjectHideFlags: 0 - m_PrefabParentObject: {fileID: 0} - m_PrefabInternal: {fileID: 0} - m_Name: Refraction - m_Shader: {fileID: 4800000, guid: 6562ed1722964fc4fa4eba1d756e19b7, type: 3} - m_ShaderKeywords: [] - m_CustomRenderQueue: -1 - m_SavedProperties: - serializedVersion: 2 - m_TexEnvs: - data: - first: - name: _Refraction - second: - m_Texture: {fileID: 2800000, guid: bbab0a6f7bae9cf42bf057d8ee2755f6, type: 3} - m_Scale: {x: 1, y: 1} - m_Offset: {x: 0, y: 0} - data: - first: - name: _node78 - second: - m_Texture: {fileID: 0} - m_Scale: {x: 1, y: 1} - m_Offset: {x: 0, y: 0} - m_Floats: - data: - first: - name: _RefractionIntensity - second: .285714269 - m_Colors: - data: - first: - name: _TileB - second: {r: .426470608, g: .426470608, b: .426470608, a: 1} - data: - first: - name: _TileA - second: {r: 1, g: 1, b: 1, a: 1} diff --git a/Shader Forge/Assets/ShaderForge/Example Assets/Shaders/Refraction.mat.meta b/Shader Forge/Assets/ShaderForge/Example Assets/Shaders/Refraction.mat.meta deleted file mode 100644 index a1037f96..00000000 --- a/Shader Forge/Assets/ShaderForge/Example Assets/Shaders/Refraction.mat.meta +++ /dev/null @@ -1,4 +0,0 @@ -fileFormatVersion: 2 -guid: 2eced452d5ec44e49985d30395b1e7d3 -NativeFormatImporter: - userData: diff --git a/Shader Forge/Assets/ShaderForge/Example Assets/Shaders/Refraction.shader b/Shader Forge/Assets/ShaderForge/Example Assets/Shaders/Refraction.shader deleted file mode 100644 index c575bf2b..00000000 --- a/Shader Forge/Assets/ShaderForge/Example Assets/Shaders/Refraction.shader +++ /dev/null @@ -1,350 +0,0 @@ -// Shader created with Shader Forge v1.38 -// Shader Forge (c) Freya Holmer - http://www.acegikmo.com/shaderforge/ -// Note: Manually altering this data may prevent you from opening it in Shader Forge -/*SF_DATA;ver:1.38;sub:START;pass:START;ps:flbk:,iptp:0,cusa:False,bamd:0,cgin:,lico:1,lgpr:1,limd:3,spmd:1,trmd:0,grmd:0,uamb:False,mssp:True,bkdf:False,hqlp:False,rprd:True,enco:False,rmgx:True,imps:True,rpth:0,vtps:0,hqsc:True,nrmq:0,nrsp:0,vomd:0,spxs:False,tesm:0,olmd:1,culm:2,bsrc:3,bdst:7,dpts:2,wrdp:False,dith:0,atcv:False,rfrpo:True,rfrpn:Refraction,coma:15,ufog:False,aust:False,igpj:False,qofs:0,qpre:3,rntp:2,fgom:False,fgoc:False,fgod:False,fgor:False,fgmd:0,fgcr:0.5,fgcg:0.5,fgcb:0.5,fgca:1,fgde:0.01,fgrn:0,fgrf:300,stcl:False,atwp:False,stva:128,stmr:255,stmw:255,stcp:6,stps:0,stfa:0,stfz:0,ofsf:0,ofsu:0,f2p0:False,fnsp:False,fnfb:False,fsmp:False;n:type:ShaderForge.SFN_Final,id:0,x:34414,y:32442,varname:node_0,prsc:2|diff-5610-OUT,spec-75-OUT,gloss-76-OUT,normal-215-OUT,transm-29-OUT,lwrap-29-OUT,alpha-22-OUT,refract-14-OUT;n:type:ShaderForge.SFN_Slider,id:13,x:33580,y:32752,ptovrint:False,ptlb:Refraction Intensity,ptin:_RefractionIntensity,varname:_RefractionIntensity,prsc:2,glob:False,taghide:False,taghdr:False,tagprd:False,tagnsco:False,tagnrm:False,min:0,cur:0.1,max:1;n:type:ShaderForge.SFN_Multiply,id:14,x:34145,y:32724,varname:node_14,prsc:2|A-16-OUT,B-220-OUT;n:type:ShaderForge.SFN_ComponentMask,id:16,x:33975,y:32651,varname:node_16,prsc:2,cc1:0,cc2:1,cc3:-1,cc4:-1|IN-25-RGB;n:type:ShaderForge.SFN_Vector1,id:22,x:34145,y:32651,varname:node_22,prsc:2,v1:0.3;n:type:ShaderForge.SFN_Tex2d,id:25,x:33737,y:32566,ptovrint:False,ptlb:Refraction,ptin:_Refraction,varname:_Refraction,prsc:2,glob:False,taghide:False,taghdr:False,tagprd:False,tagnsco:False,tagnrm:False,tex:bbab0a6f7bae9cf42bf057d8ee2755f6,ntxv:3,isnm:True|UVIN-27-OUT;n:type:ShaderForge.SFN_TexCoord,id:26,x:33379,y:32505,varname:node_26,prsc:2,uv:0,uaff:False;n:type:ShaderForge.SFN_Multiply,id:27,x:33550,y:32566,varname:node_27,prsc:2|A-26-UVOUT,B-28-OUT;n:type:ShaderForge.SFN_Vector1,id:28,x:33379,y:32662,varname:node_28,prsc:2,v1:1;n:type:ShaderForge.SFN_Vector1,id:29,x:34145,y:32577,varname:node_29,prsc:2,v1:1;n:type:ShaderForge.SFN_Vector1,id:75,x:34145,y:32430,varname:node_75,prsc:2,v1:0;n:type:ShaderForge.SFN_Vector1,id:76,x:34145,y:32486,varname:node_76,prsc:2,v1:0.8;n:type:ShaderForge.SFN_Lerp,id:215,x:33975,y:32524,varname:node_215,prsc:2|A-216-OUT,B-25-RGB,T-13-OUT;n:type:ShaderForge.SFN_Vector3,id:216,x:33737,y:32445,varname:node_216,prsc:2,v1:0,v2:0,v3:1;n:type:ShaderForge.SFN_Multiply,id:220,x:33975,y:32803,varname:node_220,prsc:2|A-13-OUT,B-221-OUT;n:type:ShaderForge.SFN_Vector1,id:221,x:33737,y:32831,varname:node_221,prsc:2,v1:0.2;n:type:ShaderForge.SFN_Vector1,id:5610,x:34145,y:32366,varname:node_5610,prsc:2,v1:0.2;proporder:13-25;pass:END;sub:END;*/ - -Shader "Shader Forge/Examples/Refraction" { - Properties { - _RefractionIntensity ("Refraction Intensity", Range(0, 1)) = 0.1 - _Refraction ("Refraction", 2D) = "bump" {} - [HideInInspector]_Cutoff ("Alpha cutoff", Range(0,1)) = 0.5 - } - SubShader { - Tags { - "Queue"="Transparent" - "RenderType"="Transparent" - } - GrabPass{ } - Pass { - Name "FORWARD" - Tags { - "LightMode"="ForwardBase" - } - Blend SrcAlpha OneMinusSrcAlpha - Cull Off - ZWrite Off - - CGPROGRAM - #pragma vertex vert - #pragma fragment frag - #define UNITY_PASS_FORWARDBASE - #define _GLOSSYENV 1 - #include "UnityCG.cginc" - #include "AutoLight.cginc" - #include "UnityPBSLighting.cginc" - #include "UnityStandardBRDF.cginc" - #pragma multi_compile_fwdbase_fullshadows - #pragma only_renderers d3d9 d3d11 glcore gles gles3 metal d3d11_9x xboxone ps4 psp2 - #pragma target 3.0 - uniform sampler2D _GrabTexture; - uniform float _RefractionIntensity; - uniform sampler2D _Refraction; uniform float4 _Refraction_ST; - struct VertexInput { - float4 vertex : POSITION; - float3 normal : NORMAL; - float4 tangent : TANGENT; - float2 texcoord0 : TEXCOORD0; - }; - struct VertexOutput { - float4 pos : SV_POSITION; - float2 uv0 : TEXCOORD0; - float4 posWorld : TEXCOORD1; - float3 normalDir : TEXCOORD2; - float3 tangentDir : TEXCOORD3; - float3 bitangentDir : TEXCOORD4; - float4 projPos : TEXCOORD5; - LIGHTING_COORDS(6,7) - }; - VertexOutput vert (VertexInput v) { - VertexOutput o = (VertexOutput)0; - o.uv0 = v.texcoord0; - o.normalDir = UnityObjectToWorldNormal(v.normal); - o.tangentDir = normalize( mul( unity_ObjectToWorld, float4( v.tangent.xyz, 0.0 ) ).xyz ); - o.bitangentDir = normalize(cross(o.normalDir, o.tangentDir) * v.tangent.w); - o.posWorld = mul(unity_ObjectToWorld, v.vertex); - float3 lightColor = _LightColor0.rgb; - o.pos = UnityObjectToClipPos( v.vertex ); - o.projPos = ComputeScreenPos (o.pos); - COMPUTE_EYEDEPTH(o.projPos.z); - TRANSFER_VERTEX_TO_FRAGMENT(o) - return o; - } - float4 frag(VertexOutput i, float facing : VFACE) : COLOR { - float isFrontFace = ( facing >= 0 ? 1 : 0 ); - float faceSign = ( facing >= 0 ? 1 : -1 ); - float3x3 tangentTransform = float3x3( i.tangentDir, i.bitangentDir, i.normalDir); - float3 viewDirection = normalize(_WorldSpaceCameraPos.xyz - i.posWorld.xyz); - float2 node_27 = (i.uv0*1.0); - float3 _Refraction_var = UnpackNormal(tex2D(_Refraction,TRANSFORM_TEX(node_27, _Refraction))); - float3 normalLocal = lerp(float3(0,0,1),_Refraction_var.rgb,_RefractionIntensity); - float3 normalDirection = normalize(mul( normalLocal, tangentTransform )); // Perturbed normals - float3 viewReflectDirection = reflect( -viewDirection, normalDirection ); - float2 sceneUVs = (i.projPos.xy / i.projPos.w) + (_Refraction_var.rgb.rg*(_RefractionIntensity*0.2)); - float4 sceneColor = tex2D(_GrabTexture, sceneUVs); - float3 lightDirection = normalize(_WorldSpaceLightPos0.xyz); - float3 lightColor = _LightColor0.rgb; - float3 halfDirection = normalize(viewDirection+lightDirection); -////// Lighting: - UNITY_LIGHT_ATTENUATION(attenuation,i, i.posWorld.xyz); - float3 attenColor = attenuation * _LightColor0.xyz; - float Pi = 3.141592654; - float InvPi = 0.31830988618; -///////// Gloss: - float gloss = 0.8; - float perceptualRoughness = 1.0 - 0.8; - float roughness = perceptualRoughness * perceptualRoughness; - float specPow = exp2( gloss * 10.0 + 1.0 ); -/////// GI Data: - UnityLight light; - #ifdef LIGHTMAP_OFF - light.color = lightColor; - light.dir = lightDirection; - light.ndotl = LambertTerm (normalDirection, light.dir); - #else - light.color = half3(0.f, 0.f, 0.f); - light.ndotl = 0.0f; - light.dir = half3(0.f, 0.f, 0.f); - #endif - UnityGIInput d; - d.light = light; - d.worldPos = i.posWorld.xyz; - d.worldViewDir = viewDirection; - d.atten = attenuation; - #if UNITY_SPECCUBE_BLENDING || UNITY_SPECCUBE_BOX_PROJECTION - d.boxMin[0] = unity_SpecCube0_BoxMin; - d.boxMin[1] = unity_SpecCube1_BoxMin; - #endif - #if UNITY_SPECCUBE_BOX_PROJECTION - d.boxMax[0] = unity_SpecCube0_BoxMax; - d.boxMax[1] = unity_SpecCube1_BoxMax; - d.probePosition[0] = unity_SpecCube0_ProbePosition; - d.probePosition[1] = unity_SpecCube1_ProbePosition; - #endif - d.probeHDR[0] = unity_SpecCube0_HDR; - d.probeHDR[1] = unity_SpecCube1_HDR; - Unity_GlossyEnvironmentData ugls_en_data; - ugls_en_data.roughness = 1.0 - gloss; - ugls_en_data.reflUVW = viewReflectDirection; - UnityGI gi = UnityGlobalIllumination(d, 1, normalDirection, ugls_en_data ); - lightDirection = gi.light.dir; - lightColor = gi.light.color; -////// Specular: - float NdotL = saturate(dot( normalDirection, lightDirection )); - float LdotH = saturate(dot(lightDirection, halfDirection)); - float3 specularColor = 0.0; - float specularMonochrome; - float node_5610 = 0.2; - float3 diffuseColor = float3(node_5610,node_5610,node_5610); // Need this for specular when using metallic - diffuseColor = DiffuseAndSpecularFromMetallic( diffuseColor, specularColor, specularColor, specularMonochrome ); - specularMonochrome = 1.0-specularMonochrome; - float NdotV = abs(dot( normalDirection, viewDirection )); - float NdotH = saturate(dot( normalDirection, halfDirection )); - float VdotH = saturate(dot( viewDirection, halfDirection )); - float visTerm = SmithJointGGXVisibilityTerm( NdotL, NdotV, roughness ); - float normTerm = GGXTerm(NdotH, roughness); - float specularPBL = (visTerm*normTerm) * UNITY_PI; - #ifdef UNITY_COLORSPACE_GAMMA - specularPBL = sqrt(max(1e-4h, specularPBL)); - #endif - specularPBL = max(0, specularPBL * NdotL); - #if defined(_SPECULARHIGHLIGHTS_OFF) - specularPBL = 0.0; - #endif - half surfaceReduction; - #ifdef UNITY_COLORSPACE_GAMMA - surfaceReduction = 1.0-0.28*roughness*perceptualRoughness; - #else - surfaceReduction = 1.0/(roughness*roughness + 1.0); - #endif - specularPBL *= any(specularColor) ? 1.0 : 0.0; - float3 directSpecular = attenColor*specularPBL*FresnelTerm(specularColor, LdotH); - half grazingTerm = saturate( gloss + specularMonochrome ); - float3 indirectSpecular = (gi.indirect.specular); - indirectSpecular *= FresnelLerp (specularColor, grazingTerm, NdotV); - indirectSpecular *= surfaceReduction; - float3 specular = (directSpecular + indirectSpecular); -/////// Diffuse: - NdotL = dot( normalDirection, lightDirection ); - float node_29 = 1.0; - float3 w = float3(node_29,node_29,node_29)*0.5; // Light wrapping - float3 NdotLWrap = NdotL * ( 1.0 - w ); - float3 forwardLight = max(float3(0.0,0.0,0.0), NdotLWrap + w ); - float3 backLight = max(float3(0.0,0.0,0.0), -NdotLWrap + w ) * float3(node_29,node_29,node_29); - NdotL = max(0.0,dot( normalDirection, lightDirection )); - half fd90 = 0.5 + 2 * LdotH * LdotH * (1-gloss); - float nlPow5 = Pow5(1-NdotLWrap); - float nvPow5 = Pow5(1-NdotV); - float3 directDiffuse = ((forwardLight+backLight) + ((1 +(fd90 - 1)*nlPow5) * (1 + (fd90 - 1)*nvPow5) * NdotL)) * attenColor; - float3 diffuse = directDiffuse * diffuseColor; -/// Final Color: - float3 finalColor = diffuse + specular; - return fixed4(lerp(sceneColor.rgb, finalColor,0.3),1); - } - ENDCG - } - Pass { - Name "FORWARD_DELTA" - Tags { - "LightMode"="ForwardAdd" - } - Blend One One - Cull Off - ZWrite Off - - CGPROGRAM - #pragma vertex vert - #pragma fragment frag - #define UNITY_PASS_FORWARDADD - #define _GLOSSYENV 1 - #include "UnityCG.cginc" - #include "AutoLight.cginc" - #include "UnityPBSLighting.cginc" - #include "UnityStandardBRDF.cginc" - #pragma multi_compile_fwdadd_fullshadows - #pragma only_renderers d3d9 d3d11 glcore gles gles3 metal d3d11_9x xboxone ps4 psp2 - #pragma target 3.0 - uniform sampler2D _GrabTexture; - uniform float _RefractionIntensity; - uniform sampler2D _Refraction; uniform float4 _Refraction_ST; - struct VertexInput { - float4 vertex : POSITION; - float3 normal : NORMAL; - float4 tangent : TANGENT; - float2 texcoord0 : TEXCOORD0; - }; - struct VertexOutput { - float4 pos : SV_POSITION; - float2 uv0 : TEXCOORD0; - float4 posWorld : TEXCOORD1; - float3 normalDir : TEXCOORD2; - float3 tangentDir : TEXCOORD3; - float3 bitangentDir : TEXCOORD4; - float4 projPos : TEXCOORD5; - LIGHTING_COORDS(6,7) - }; - VertexOutput vert (VertexInput v) { - VertexOutput o = (VertexOutput)0; - o.uv0 = v.texcoord0; - o.normalDir = UnityObjectToWorldNormal(v.normal); - o.tangentDir = normalize( mul( unity_ObjectToWorld, float4( v.tangent.xyz, 0.0 ) ).xyz ); - o.bitangentDir = normalize(cross(o.normalDir, o.tangentDir) * v.tangent.w); - o.posWorld = mul(unity_ObjectToWorld, v.vertex); - float3 lightColor = _LightColor0.rgb; - o.pos = UnityObjectToClipPos( v.vertex ); - o.projPos = ComputeScreenPos (o.pos); - COMPUTE_EYEDEPTH(o.projPos.z); - TRANSFER_VERTEX_TO_FRAGMENT(o) - return o; - } - float4 frag(VertexOutput i, float facing : VFACE) : COLOR { - float isFrontFace = ( facing >= 0 ? 1 : 0 ); - float faceSign = ( facing >= 0 ? 1 : -1 ); - float3x3 tangentTransform = float3x3( i.tangentDir, i.bitangentDir, i.normalDir); - float3 viewDirection = normalize(_WorldSpaceCameraPos.xyz - i.posWorld.xyz); - float2 node_27 = (i.uv0*1.0); - float3 _Refraction_var = UnpackNormal(tex2D(_Refraction,TRANSFORM_TEX(node_27, _Refraction))); - float3 normalLocal = lerp(float3(0,0,1),_Refraction_var.rgb,_RefractionIntensity); - float3 normalDirection = normalize(mul( normalLocal, tangentTransform )); // Perturbed normals - float2 sceneUVs = (i.projPos.xy / i.projPos.w) + (_Refraction_var.rgb.rg*(_RefractionIntensity*0.2)); - float4 sceneColor = tex2D(_GrabTexture, sceneUVs); - float3 lightDirection = normalize(lerp(_WorldSpaceLightPos0.xyz, _WorldSpaceLightPos0.xyz - i.posWorld.xyz,_WorldSpaceLightPos0.w)); - float3 lightColor = _LightColor0.rgb; - float3 halfDirection = normalize(viewDirection+lightDirection); -////// Lighting: - UNITY_LIGHT_ATTENUATION(attenuation,i, i.posWorld.xyz); - float3 attenColor = attenuation * _LightColor0.xyz; - float Pi = 3.141592654; - float InvPi = 0.31830988618; -///////// Gloss: - float gloss = 0.8; - float perceptualRoughness = 1.0 - 0.8; - float roughness = perceptualRoughness * perceptualRoughness; - float specPow = exp2( gloss * 10.0 + 1.0 ); -////// Specular: - float NdotL = saturate(dot( normalDirection, lightDirection )); - float LdotH = saturate(dot(lightDirection, halfDirection)); - float3 specularColor = 0.0; - float specularMonochrome; - float node_5610 = 0.2; - float3 diffuseColor = float3(node_5610,node_5610,node_5610); // Need this for specular when using metallic - diffuseColor = DiffuseAndSpecularFromMetallic( diffuseColor, specularColor, specularColor, specularMonochrome ); - specularMonochrome = 1.0-specularMonochrome; - float NdotV = abs(dot( normalDirection, viewDirection )); - float NdotH = saturate(dot( normalDirection, halfDirection )); - float VdotH = saturate(dot( viewDirection, halfDirection )); - float visTerm = SmithJointGGXVisibilityTerm( NdotL, NdotV, roughness ); - float normTerm = GGXTerm(NdotH, roughness); - float specularPBL = (visTerm*normTerm) * UNITY_PI; - #ifdef UNITY_COLORSPACE_GAMMA - specularPBL = sqrt(max(1e-4h, specularPBL)); - #endif - specularPBL = max(0, specularPBL * NdotL); - #if defined(_SPECULARHIGHLIGHTS_OFF) - specularPBL = 0.0; - #endif - specularPBL *= any(specularColor) ? 1.0 : 0.0; - float3 directSpecular = attenColor*specularPBL*FresnelTerm(specularColor, LdotH); - float3 specular = directSpecular; -/////// Diffuse: - NdotL = dot( normalDirection, lightDirection ); - float node_29 = 1.0; - float3 w = float3(node_29,node_29,node_29)*0.5; // Light wrapping - float3 NdotLWrap = NdotL * ( 1.0 - w ); - float3 forwardLight = max(float3(0.0,0.0,0.0), NdotLWrap + w ); - float3 backLight = max(float3(0.0,0.0,0.0), -NdotLWrap + w ) * float3(node_29,node_29,node_29); - NdotL = max(0.0,dot( normalDirection, lightDirection )); - half fd90 = 0.5 + 2 * LdotH * LdotH * (1-gloss); - float nlPow5 = Pow5(1-NdotLWrap); - float nvPow5 = Pow5(1-NdotV); - float3 directDiffuse = ((forwardLight+backLight) + ((1 +(fd90 - 1)*nlPow5) * (1 + (fd90 - 1)*nvPow5) * NdotL)) * attenColor; - float3 diffuse = directDiffuse * diffuseColor; -/// Final Color: - float3 finalColor = diffuse + specular; - return fixed4(finalColor * 0.3,0); - } - ENDCG - } - Pass { - Name "ShadowCaster" - Tags { - "LightMode"="ShadowCaster" - } - Offset 1, 1 - Cull Off - - CGPROGRAM - #pragma vertex vert - #pragma fragment frag - #define UNITY_PASS_SHADOWCASTER - #define _GLOSSYENV 1 - #include "UnityCG.cginc" - #include "Lighting.cginc" - #include "UnityPBSLighting.cginc" - #include "UnityStandardBRDF.cginc" - #pragma fragmentoption ARB_precision_hint_fastest - #pragma multi_compile_shadowcaster - #pragma only_renderers d3d9 d3d11 glcore gles gles3 metal d3d11_9x xboxone ps4 psp2 - #pragma target 3.0 - struct VertexInput { - float4 vertex : POSITION; - }; - struct VertexOutput { - V2F_SHADOW_CASTER; - }; - VertexOutput vert (VertexInput v) { - VertexOutput o = (VertexOutput)0; - o.pos = UnityObjectToClipPos( v.vertex ); - TRANSFER_SHADOW_CASTER(o) - return o; - } - float4 frag(VertexOutput i, float facing : VFACE) : COLOR { - float isFrontFace = ( facing >= 0 ? 1 : 0 ); - float faceSign = ( facing >= 0 ? 1 : -1 ); - SHADOW_CASTER_FRAGMENT(i) - } - ENDCG - } - } - FallBack "Diffuse" - CustomEditor "ShaderForgeMaterialInspector" -} diff --git a/Shader Forge/Assets/ShaderForge/Example Assets/Shaders/Refraction.shader.meta b/Shader Forge/Assets/ShaderForge/Example Assets/Shaders/Refraction.shader.meta deleted file mode 100644 index 3907daad..00000000 --- a/Shader Forge/Assets/ShaderForge/Example Assets/Shaders/Refraction.shader.meta +++ /dev/null @@ -1,10 +0,0 @@ -fileFormatVersion: 2 -guid: 6562ed1722964fc4fa4eba1d756e19b7 -ShaderImporter: - externalObjects: {} - defaultTextures: - - _Refraction: {fileID: 2800000, guid: bbab0a6f7bae9cf42bf057d8ee2755f6, type: 3} - nonModifiableTextures: [] - userData: - assetBundleName: - assetBundleVariant: diff --git a/Shader Forge/Assets/ShaderForge/Example Assets/Shaders/TessellationDisplacement.mat b/Shader Forge/Assets/ShaderForge/Example Assets/Shaders/TessellationDisplacement.mat deleted file mode 100644 index c6bcaaee..00000000 --- a/Shader Forge/Assets/ShaderForge/Example Assets/Shaders/TessellationDisplacement.mat +++ /dev/null @@ -1,103 +0,0 @@ -%YAML 1.1 -%TAG !u! tag:unity3d.com,2011: ---- !u!21 &2100000 -Material: - serializedVersion: 5 - m_ObjectHideFlags: 0 - m_PrefabParentObject: {fileID: 0} - m_PrefabInternal: {fileID: 0} - m_Name: TessellationDisplacement - m_Shader: {fileID: 4800000, guid: 5e81283b11113de4295d1943aec0a765, type: 3} - m_ShaderKeywords: - m_LightmapFlags: 5 - m_CustomRenderQueue: -1 - m_SavedProperties: - serializedVersion: 2 - m_TexEnvs: - data: - first: - name: _Diffuse - second: - m_Texture: {fileID: 2800000, guid: b66bceaf0cc0ace4e9bdc92f14bba709, type: 3} - m_Scale: {x: 1, y: 1} - m_Offset: {x: 0, y: 0} - data: - first: - name: _Normals - second: - m_Texture: {fileID: 2800000, guid: cf20bfced7e912046a9ce991a4d775ec, type: 3} - m_Scale: {x: 1, y: 1} - m_Offset: {x: 0, y: 0} - data: - first: - name: _DiffuseRGB - second: - m_Texture: {fileID: 2800000, guid: b66bceaf0cc0ace4e9bdc92f14bba709, type: 3} - m_Scale: {x: 1, y: 1} - m_Offset: {x: 0, y: 0} - data: - first: - name: _AORGBHeightA - second: - m_Texture: {fileID: 2800000, guid: 5fb7986dd6d0a8e4093ba82369dd6a4d, type: 3} - m_Scale: {x: 1, y: 1} - m_Offset: {x: 0, y: 0} - data: - first: - name: _node9 - second: - m_Texture: {fileID: 0} - m_Scale: {x: 1, y: 1} - m_Offset: {x: 0, y: 0} - data: - first: - name: _node3 - second: - m_Texture: {fileID: 0} - m_Scale: {x: 1, y: 1} - m_Offset: {x: 0, y: 0} - data: - first: - name: _node4 - second: - m_Texture: {fileID: 0} - m_Scale: {x: 1, y: 1} - m_Offset: {x: 0, y: 0} - data: - first: - name: _DisplacementA - second: - m_Texture: {fileID: 2800000, guid: 5fb7986dd6d0a8e4093ba82369dd6a4d, type: 3} - m_Scale: {x: 1, y: 1} - m_Offset: {x: 0, y: 0} - data: - first: - name: _DisplacementR - second: - m_Texture: {fileID: 2800000, guid: 28c7aad1372ff114b90d330f8a2dd938, type: 3} - m_Scale: {x: 1, y: 1} - m_Offset: {x: 0, y: 0} - data: - first: - name: _AOR - second: - m_Texture: {fileID: 2800000, guid: 5fb7986dd6d0a8e4093ba82369dd6a4d, type: 3} - m_Scale: {x: 1, y: 1} - m_Offset: {x: 0, y: 0} - data: - first: - name: _node254 - second: - m_Texture: {fileID: 0} - m_Scale: {x: 1, y: 1} - m_Offset: {x: 0, y: 0} - m_Floats: - data: - first: - name: _Depth - second: .215384617 - m_Colors: - data: - first: - name: _SurfaceColor - second: {r: .164630204, g: .423464477, b: .639705896, a: 1} diff --git a/Shader Forge/Assets/ShaderForge/Example Assets/Shaders/TessellationDisplacement.mat.meta b/Shader Forge/Assets/ShaderForge/Example Assets/Shaders/TessellationDisplacement.mat.meta deleted file mode 100644 index dbf34114..00000000 --- a/Shader Forge/Assets/ShaderForge/Example Assets/Shaders/TessellationDisplacement.mat.meta +++ /dev/null @@ -1,4 +0,0 @@ -fileFormatVersion: 2 -guid: d753811ecd38cd149b3a958022853c18 -NativeFormatImporter: - userData: diff --git a/Shader Forge/Assets/ShaderForge/Example Assets/Shaders/TessellationDisplacement.shader b/Shader Forge/Assets/ShaderForge/Example Assets/Shaders/TessellationDisplacement.shader deleted file mode 100644 index 5719a2a5..00000000 --- a/Shader Forge/Assets/ShaderForge/Example Assets/Shaders/TessellationDisplacement.shader +++ /dev/null @@ -1,772 +0,0 @@ -// Shader created with Shader Forge v1.38 -// Shader Forge (c) Freya Holmer - http://www.acegikmo.com/shaderforge/ -// Note: Manually altering this data may prevent you from opening it in Shader Forge -/*SF_DATA;ver:1.38;sub:START;pass:START;ps:flbk:,iptp:0,cusa:False,bamd:0,cgin:,lico:1,lgpr:1,limd:1,spmd:1,trmd:0,grmd:0,uamb:True,mssp:True,bkdf:True,hqlp:False,rprd:True,enco:False,rmgx:True,imps:True,rpth:0,vtps:0,hqsc:True,nrmq:1,nrsp:0,vomd:0,spxs:False,tesm:0,olmd:1,culm:0,bsrc:0,bdst:1,dpts:2,wrdp:True,dith:0,atcv:False,rfrpo:True,rfrpn:Refraction,coma:15,ufog:True,aust:True,igpj:False,qofs:0,qpre:1,rntp:1,fgom:False,fgoc:False,fgod:False,fgor:False,fgmd:0,fgcr:0.5,fgcg:0.5,fgcb:0.5,fgca:1,fgde:0.01,fgrn:0,fgrf:300,stcl:False,atwp:False,stva:128,stmr:255,stmw:255,stcp:6,stps:0,stfa:0,stfz:0,ofsf:0,ofsu:0,f2p0:False,fnsp:False,fnfb:False,fsmp:False;n:type:ShaderForge.SFN_Final,id:1,x:34362,y:32994,varname:node_1,prsc:2|diff-162-OUT,spec-165-OUT,gloss-66-OUT,normal-160-OUT,lwrap-237-OUT,disp-13-OUT,tess-8-OUT;n:type:ShaderForge.SFN_Tex2d,id:3,x:33597,y:33194,ptovrint:False,ptlb:Normals,ptin:_Normals,varname:_Normals,prsc:2,glob:False,taghide:False,taghdr:False,tagprd:False,tagnsco:False,tagnrm:False,tex:cf20bfced7e912046a9ce991a4d775ec,ntxv:3,isnm:True|UVIN-6-OUT;n:type:ShaderForge.SFN_Tex2d,id:4,x:32986,y:33006,varname:node_798,prsc:2,tex:5fb7986dd6d0a8e4093ba82369dd6a4d,ntxv:0,isnm:False|UVIN-6-OUT,TEX-254-TEX;n:type:ShaderForge.SFN_TexCoord,id:5,x:32078,y:33020,varname:node_5,prsc:2,uv:0,uaff:False;n:type:ShaderForge.SFN_Multiply,id:6,x:32307,y:33100,varname:node_6,prsc:2|A-5-UVOUT,B-7-OUT;n:type:ShaderForge.SFN_Vector1,id:7,x:32078,y:33232,varname:node_7,prsc:2,v1:2;n:type:ShaderForge.SFN_Vector1,id:8,x:34051,y:33620,varname:node_8,prsc:2,v1:3;n:type:ShaderForge.SFN_Tex2d,id:12,x:32759,y:33284,varname:node_803,prsc:2,tex:5fb7986dd6d0a8e4093ba82369dd6a4d,ntxv:0,isnm:False|UVIN-6-OUT,MIP-15-OUT,TEX-254-TEX;n:type:ShaderForge.SFN_Multiply,id:13,x:34051,y:33418,varname:node_13,prsc:2|A-14-OUT,B-17-OUT;n:type:ShaderForge.SFN_NormalVector,id:14,x:33824,y:33442,prsc:2,pt:False;n:type:ShaderForge.SFN_Vector1,id:15,x:32532,y:33364,varname:node_15,prsc:2,v1:1;n:type:ShaderForge.SFN_Slider,id:16,x:33213,y:33639,ptovrint:False,ptlb:Depth,ptin:_Depth,varname:_Depth,prsc:2,glob:False,taghide:False,taghdr:False,tagprd:False,tagnsco:False,tagnrm:False,min:0,cur:0.25,max:0.25;n:type:ShaderForge.SFN_Multiply,id:17,x:33824,y:33620,varname:node_17,prsc:2|A-23-OUT,B-26-OUT;n:type:ShaderForge.SFN_OneMinus,id:23,x:33597,y:33379,varname:node_23,prsc:2|IN-153-OUT;n:type:ShaderForge.SFN_Multiply,id:26,x:33597,y:33537,varname:node_26,prsc:2|A-27-OUT,B-16-OUT;n:type:ShaderForge.SFN_Vector1,id:27,x:33370,y:33478,varname:node_27,prsc:2,v1:-1;n:type:ShaderForge.SFN_Vector1,id:66,x:34051,y:32948,varname:node_66,prsc:2,v1:10;n:type:ShaderForge.SFN_Tex2d,id:152,x:32759,y:33099,ptovrint:False,ptlb:Displacement (R),ptin:_DisplacementR,varname:_DisplacementR,prsc:2,glob:False,taghide:False,taghdr:False,tagprd:False,tagnsco:False,tagnrm:False,tex:28c7aad1372ff114b90d330f8a2dd938,ntxv:0,isnm:False|UVIN-161-UVOUT,MIP-15-OUT;n:type:ShaderForge.SFN_Max,id:153,x:33370,y:33276,varname:node_153,prsc:2|A-152-R,B-12-A;n:type:ShaderForge.SFN_Subtract,id:154,x:32986,y:33174,varname:node_154,prsc:2|A-12-A,B-152-R;n:type:ShaderForge.SFN_Clamp01,id:156,x:33370,y:33108,varname:node_156,prsc:2|IN-154-OUT;n:type:ShaderForge.SFN_Lerp,id:157,x:33824,y:32948,varname:node_157,prsc:2|A-159-OUT,B-3-RGB,T-156-OUT;n:type:ShaderForge.SFN_Vector3,id:159,x:33597,y:33061,varname:node_159,prsc:2,v1:0,v2:0,v3:1;n:type:ShaderForge.SFN_Normalize,id:160,x:34051,y:33082,varname:node_160,prsc:2|IN-157-OUT;n:type:ShaderForge.SFN_Panner,id:161,x:32532,y:32984,varname:node_161,prsc:2,spu:0.4,spv:0|UVIN-6-OUT;n:type:ShaderForge.SFN_Lerp,id:162,x:33597,y:32875,varname:node_162,prsc:2|A-163-OUT,B-170-OUT,T-156-OUT;n:type:ShaderForge.SFN_Vector3,id:163,x:33370,y:32790,varname:node_163,prsc:2,v1:0.4117647,v2:0.3826572,v3:0.3602941;n:type:ShaderForge.SFN_Multiply,id:165,x:34051,y:32746,varname:node_165,prsc:2|A-156-OUT,B-172-OUT;n:type:ShaderForge.SFN_Multiply,id:170,x:33370,y:32940,varname:node_170,prsc:2|A-3497-RGB,B-4-RGB;n:type:ShaderForge.SFN_ComponentMask,id:172,x:33824,y:32770,varname:node_172,prsc:2,cc1:0,cc2:-1,cc3:-1,cc4:-1|IN-162-OUT;n:type:ShaderForge.SFN_OneMinus,id:174,x:33824,y:33284,varname:node_174,prsc:2|IN-156-OUT;n:type:ShaderForge.SFN_Multiply,id:237,x:34051,y:33250,varname:node_237,prsc:2|A-238-OUT,B-174-OUT;n:type:ShaderForge.SFN_Vector1,id:238,x:33824,y:33150,varname:node_238,prsc:2,v1:0.5;n:type:ShaderForge.SFN_Tex2dAsset,id:254,x:32532,y:33145,ptovrint:False,ptlb:AO (RGB) Height (A),ptin:_AORGBHeightA,varname:_AORGBHeightA,glob:False,taghide:False,taghdr:False,tagprd:False,tagnsco:False,tagnrm:False,tex:5fb7986dd6d0a8e4093ba82369dd6a4d,ntxv:0,isnm:False;n:type:ShaderForge.SFN_Tex2d,id:3497,x:32986,y:32833,ptovrint:False,ptlb:Diffuse,ptin:_Diffuse,varname:_Diffuse,prsc:2,glob:False,taghide:False,taghdr:False,tagprd:False,tagnsco:False,tagnrm:False,tex:b66bceaf0cc0ace4e9bdc92f14bba709,ntxv:0,isnm:False;proporder:3-254-152-16-3497;pass:END;sub:END;*/ - -Shader "Shader Forge/Examples/TessellationDisplacement" { - Properties { - _Normals ("Normals", 2D) = "bump" {} - _AORGBHeightA ("AO (RGB) Height (A)", 2D) = "white" {} - _DisplacementR ("Displacement (R)", 2D) = "white" {} - _Depth ("Depth", Range(0, 0.25)) = 0.25 - _Diffuse ("Diffuse", 2D) = "white" {} - } - SubShader { - Tags { - "RenderType"="Opaque" - } - Pass { - Name "FORWARD" - Tags { - "LightMode"="ForwardBase" - } - - - CGPROGRAM - #pragma hull hull - #pragma domain domain - #pragma vertex tessvert - #pragma fragment frag - #define UNITY_PASS_FORWARDBASE - #define SHOULD_SAMPLE_SH ( defined (LIGHTMAP_OFF) && defined(DYNAMICLIGHTMAP_OFF) ) - #define _GLOSSYENV 1 - #include "UnityCG.cginc" - #include "AutoLight.cginc" - #include "Lighting.cginc" - #include "Tessellation.cginc" - #include "UnityPBSLighting.cginc" - #include "UnityStandardBRDF.cginc" - #pragma multi_compile_fwdbase_fullshadows - #pragma multi_compile LIGHTMAP_OFF LIGHTMAP_ON - #pragma multi_compile DIRLIGHTMAP_OFF DIRLIGHTMAP_COMBINED DIRLIGHTMAP_SEPARATE - #pragma multi_compile DYNAMICLIGHTMAP_OFF DYNAMICLIGHTMAP_ON - #pragma multi_compile_fog - #pragma only_renderers d3d9 d3d11 glcore gles3 metal d3d11_9x xboxone ps4 psp2 - #pragma target 5.0 - uniform sampler2D _Normals; uniform float4 _Normals_ST; - uniform float _Depth; - uniform sampler2D _DisplacementR; uniform float4 _DisplacementR_ST; - uniform sampler2D _AORGBHeightA; uniform float4 _AORGBHeightA_ST; - uniform sampler2D _Diffuse; uniform float4 _Diffuse_ST; - struct VertexInput { - float4 vertex : POSITION; - float3 normal : NORMAL; - float4 tangent : TANGENT; - float2 texcoord0 : TEXCOORD0; - float2 texcoord1 : TEXCOORD1; - float2 texcoord2 : TEXCOORD2; - }; - struct VertexOutput { - float4 pos : SV_POSITION; - float2 uv0 : TEXCOORD0; - float2 uv1 : TEXCOORD1; - float2 uv2 : TEXCOORD2; - float4 posWorld : TEXCOORD3; - float3 normalDir : TEXCOORD4; - float3 tangentDir : TEXCOORD5; - float3 bitangentDir : TEXCOORD6; - LIGHTING_COORDS(7,8) - UNITY_FOG_COORDS(9) - #if defined(LIGHTMAP_ON) || defined(UNITY_SHOULD_SAMPLE_SH) - float4 ambientOrLightmapUV : TEXCOORD10; - #endif - }; - VertexOutput vert (VertexInput v) { - VertexOutput o = (VertexOutput)0; - o.uv0 = v.texcoord0; - o.uv1 = v.texcoord1; - o.uv2 = v.texcoord2; - #ifdef LIGHTMAP_ON - o.ambientOrLightmapUV.xy = v.texcoord1.xy * unity_LightmapST.xy + unity_LightmapST.zw; - o.ambientOrLightmapUV.zw = 0; - #elif UNITY_SHOULD_SAMPLE_SH - #endif - #ifdef DYNAMICLIGHTMAP_ON - o.ambientOrLightmapUV.zw = v.texcoord2.xy * unity_DynamicLightmapST.xy + unity_DynamicLightmapST.zw; - #endif - o.normalDir = UnityObjectToWorldNormal(v.normal); - o.tangentDir = normalize( mul( unity_ObjectToWorld, float4( v.tangent.xyz, 0.0 ) ).xyz ); - o.bitangentDir = normalize(cross(o.normalDir, o.tangentDir) * v.tangent.w); - o.posWorld = mul(unity_ObjectToWorld, v.vertex); - float3 lightColor = _LightColor0.rgb; - o.pos = UnityObjectToClipPos( v.vertex ); - UNITY_TRANSFER_FOG(o,o.pos); - TRANSFER_VERTEX_TO_FRAGMENT(o) - return o; - } - #ifdef UNITY_CAN_COMPILE_TESSELLATION - struct TessVertex { - float4 vertex : INTERNALTESSPOS; - float3 normal : NORMAL; - float4 tangent : TANGENT; - float2 texcoord0 : TEXCOORD0; - float2 texcoord1 : TEXCOORD1; - float2 texcoord2 : TEXCOORD2; - }; - struct OutputPatchConstant { - float edge[3] : SV_TessFactor; - float inside : SV_InsideTessFactor; - float3 vTangent[4] : TANGENT; - float2 vUV[4] : TEXCOORD; - float3 vTanUCorner[4] : TANUCORNER; - float3 vTanVCorner[4] : TANVCORNER; - float4 vCWts : TANWEIGHTS; - }; - TessVertex tessvert (VertexInput v) { - TessVertex o; - o.vertex = v.vertex; - o.normal = v.normal; - o.tangent = v.tangent; - o.texcoord0 = v.texcoord0; - o.texcoord1 = v.texcoord1; - o.texcoord2 = v.texcoord2; - return o; - } - void displacement (inout VertexInput v){ - float4 node_7816 = _Time; - float2 node_6 = (v.texcoord0*2.0); - float2 node_161 = (node_6+node_7816.g*float2(0.4,0)); - float node_15 = 1.0; - float4 _DisplacementR_var = tex2Dlod(_DisplacementR,float4(TRANSFORM_TEX(node_161, _DisplacementR),0.0,node_15)); - float4 node_803 = tex2Dlod(_AORGBHeightA,float4(TRANSFORM_TEX(node_6, _AORGBHeightA),0.0,node_15)); - v.vertex.xyz += (v.normal*((1.0 - max(_DisplacementR_var.r,node_803.a))*((-1.0)*_Depth))); - } - float Tessellation(TessVertex v){ - return 3.0; - } - float4 Tessellation(TessVertex v, TessVertex v1, TessVertex v2){ - float tv = Tessellation(v); - float tv1 = Tessellation(v1); - float tv2 = Tessellation(v2); - return float4( tv1+tv2, tv2+tv, tv+tv1, tv+tv1+tv2 ) / float4(2,2,2,3); - } - OutputPatchConstant hullconst (InputPatch v) { - OutputPatchConstant o = (OutputPatchConstant)0; - float4 ts = Tessellation( v[0], v[1], v[2] ); - o.edge[0] = ts.x; - o.edge[1] = ts.y; - o.edge[2] = ts.z; - o.inside = ts.w; - return o; - } - [domain("tri")] - [partitioning("fractional_odd")] - [outputtopology("triangle_cw")] - [patchconstantfunc("hullconst")] - [outputcontrolpoints(3)] - TessVertex hull (InputPatch v, uint id : SV_OutputControlPointID) { - return v[id]; - } - [domain("tri")] - VertexOutput domain (OutputPatchConstant tessFactors, const OutputPatch vi, float3 bary : SV_DomainLocation) { - VertexInput v = (VertexInput)0; - v.vertex = vi[0].vertex*bary.x + vi[1].vertex*bary.y + vi[2].vertex*bary.z; - v.normal = vi[0].normal*bary.x + vi[1].normal*bary.y + vi[2].normal*bary.z; - v.tangent = vi[0].tangent*bary.x + vi[1].tangent*bary.y + vi[2].tangent*bary.z; - v.texcoord0 = vi[0].texcoord0*bary.x + vi[1].texcoord0*bary.y + vi[2].texcoord0*bary.z; - v.texcoord1 = vi[0].texcoord1*bary.x + vi[1].texcoord1*bary.y + vi[2].texcoord1*bary.z; - displacement(v); - VertexOutput o = vert(v); - return o; - } - #endif - float4 frag(VertexOutput i) : COLOR { - i.normalDir = normalize(i.normalDir); - float3x3 tangentTransform = float3x3( i.tangentDir, i.bitangentDir, i.normalDir); - float3 viewDirection = normalize(_WorldSpaceCameraPos.xyz - i.posWorld.xyz); - float2 node_6 = (i.uv0*2.0); - float3 _Normals_var = UnpackNormal(tex2D(_Normals,TRANSFORM_TEX(node_6, _Normals))); - float node_15 = 1.0; - float4 node_803 = tex2Dlod(_AORGBHeightA,float4(TRANSFORM_TEX(node_6, _AORGBHeightA),0.0,node_15)); - float4 node_7816 = _Time; - float2 node_161 = (node_6+node_7816.g*float2(0.4,0)); - float4 _DisplacementR_var = tex2Dlod(_DisplacementR,float4(TRANSFORM_TEX(node_161, _DisplacementR),0.0,node_15)); - float node_156 = saturate((node_803.a-_DisplacementR_var.r)); - float3 normalLocal = normalize(lerp(float3(0,0,1),_Normals_var.rgb,node_156)); - float3 normalDirection = normalize(mul( normalLocal, tangentTransform )); // Perturbed normals - float3 viewReflectDirection = reflect( -viewDirection, normalDirection ); - float3 lightDirection = normalize(_WorldSpaceLightPos0.xyz); - float3 lightColor = _LightColor0.rgb; - float3 halfDirection = normalize(viewDirection+lightDirection); -////// Lighting: - UNITY_LIGHT_ATTENUATION(attenuation,i, i.posWorld.xyz); - float3 attenColor = attenuation * _LightColor0.xyz; -///////// Gloss: - float gloss = 10.0; - float specPow = exp2( gloss * 10.0 + 1.0 ); -/////// GI Data: - UnityLight light; - #ifdef LIGHTMAP_OFF - light.color = lightColor; - light.dir = lightDirection; - light.ndotl = LambertTerm (normalDirection, light.dir); - #else - light.color = half3(0.f, 0.f, 0.f); - light.ndotl = 0.0f; - light.dir = half3(0.f, 0.f, 0.f); - #endif - UnityGIInput d; - d.light = light; - d.worldPos = i.posWorld.xyz; - d.worldViewDir = viewDirection; - d.atten = attenuation; - #if defined(LIGHTMAP_ON) || defined(DYNAMICLIGHTMAP_ON) - d.ambient = 0; - d.lightmapUV = i.ambientOrLightmapUV; - #else - d.ambient = i.ambientOrLightmapUV; - #endif - #if UNITY_SPECCUBE_BLENDING || UNITY_SPECCUBE_BOX_PROJECTION - d.boxMin[0] = unity_SpecCube0_BoxMin; - d.boxMin[1] = unity_SpecCube1_BoxMin; - #endif - #if UNITY_SPECCUBE_BOX_PROJECTION - d.boxMax[0] = unity_SpecCube0_BoxMax; - d.boxMax[1] = unity_SpecCube1_BoxMax; - d.probePosition[0] = unity_SpecCube0_ProbePosition; - d.probePosition[1] = unity_SpecCube1_ProbePosition; - #endif - d.probeHDR[0] = unity_SpecCube0_HDR; - d.probeHDR[1] = unity_SpecCube1_HDR; - Unity_GlossyEnvironmentData ugls_en_data; - ugls_en_data.roughness = 1.0 - gloss; - ugls_en_data.reflUVW = viewReflectDirection; - UnityGI gi = UnityGlobalIllumination(d, 1, normalDirection, ugls_en_data ); - lightDirection = gi.light.dir; - lightColor = gi.light.color; -////// Specular: - float NdotL = saturate(dot( normalDirection, lightDirection )); - float4 _Diffuse_var = tex2D(_Diffuse,TRANSFORM_TEX(i.uv0, _Diffuse)); - float4 node_798 = tex2D(_AORGBHeightA,TRANSFORM_TEX(node_6, _AORGBHeightA)); - float3 node_162 = lerp(float3(0.4117647,0.3826572,0.3602941),(_Diffuse_var.rgb*node_798.rgb),node_156); - float node_165 = (node_156*node_162.r); - float3 specularColor = float3(node_165,node_165,node_165); - float3 directSpecular = attenColor * pow(max(0,dot(halfDirection,normalDirection)),specPow)*specularColor; - float3 indirectSpecular = (gi.indirect.specular)*specularColor; - float3 specular = (directSpecular + indirectSpecular); -/////// Diffuse: - NdotL = dot( normalDirection, lightDirection ); - float node_237 = (0.5*(1.0 - node_156)); - float3 w = float3(node_237,node_237,node_237)*0.5; // Light wrapping - float3 NdotLWrap = NdotL * ( 1.0 - w ); - float3 forwardLight = max(float3(0.0,0.0,0.0), NdotLWrap + w ); - NdotL = max(0.0,dot( normalDirection, lightDirection )); - float3 directDiffuse = forwardLight * attenColor; - float3 indirectDiffuse = float3(0,0,0); - indirectDiffuse += gi.indirect.diffuse; - float3 diffuseColor = node_162; - float3 diffuse = (directDiffuse + indirectDiffuse) * diffuseColor; -/// Final Color: - float3 finalColor = diffuse + specular; - fixed4 finalRGBA = fixed4(finalColor,1); - UNITY_APPLY_FOG(i.fogCoord, finalRGBA); - return finalRGBA; - } - ENDCG - } - Pass { - Name "FORWARD_DELTA" - Tags { - "LightMode"="ForwardAdd" - } - Blend One One - - - CGPROGRAM - #pragma hull hull - #pragma domain domain - #pragma vertex tessvert - #pragma fragment frag - #define UNITY_PASS_FORWARDADD - #define SHOULD_SAMPLE_SH ( defined (LIGHTMAP_OFF) && defined(DYNAMICLIGHTMAP_OFF) ) - #define _GLOSSYENV 1 - #include "UnityCG.cginc" - #include "AutoLight.cginc" - #include "Lighting.cginc" - #include "Tessellation.cginc" - #include "UnityPBSLighting.cginc" - #include "UnityStandardBRDF.cginc" - #pragma multi_compile_fwdadd_fullshadows - #pragma multi_compile LIGHTMAP_OFF LIGHTMAP_ON - #pragma multi_compile DIRLIGHTMAP_OFF DIRLIGHTMAP_COMBINED DIRLIGHTMAP_SEPARATE - #pragma multi_compile DYNAMICLIGHTMAP_OFF DYNAMICLIGHTMAP_ON - #pragma multi_compile_fog - #pragma only_renderers d3d9 d3d11 glcore gles3 metal d3d11_9x xboxone ps4 psp2 - #pragma target 5.0 - uniform sampler2D _Normals; uniform float4 _Normals_ST; - uniform float _Depth; - uniform sampler2D _DisplacementR; uniform float4 _DisplacementR_ST; - uniform sampler2D _AORGBHeightA; uniform float4 _AORGBHeightA_ST; - uniform sampler2D _Diffuse; uniform float4 _Diffuse_ST; - struct VertexInput { - float4 vertex : POSITION; - float3 normal : NORMAL; - float4 tangent : TANGENT; - float2 texcoord0 : TEXCOORD0; - float2 texcoord1 : TEXCOORD1; - float2 texcoord2 : TEXCOORD2; - }; - struct VertexOutput { - float4 pos : SV_POSITION; - float2 uv0 : TEXCOORD0; - float2 uv1 : TEXCOORD1; - float2 uv2 : TEXCOORD2; - float4 posWorld : TEXCOORD3; - float3 normalDir : TEXCOORD4; - float3 tangentDir : TEXCOORD5; - float3 bitangentDir : TEXCOORD6; - LIGHTING_COORDS(7,8) - UNITY_FOG_COORDS(9) - }; - VertexOutput vert (VertexInput v) { - VertexOutput o = (VertexOutput)0; - o.uv0 = v.texcoord0; - o.uv1 = v.texcoord1; - o.uv2 = v.texcoord2; - o.normalDir = UnityObjectToWorldNormal(v.normal); - o.tangentDir = normalize( mul( unity_ObjectToWorld, float4( v.tangent.xyz, 0.0 ) ).xyz ); - o.bitangentDir = normalize(cross(o.normalDir, o.tangentDir) * v.tangent.w); - o.posWorld = mul(unity_ObjectToWorld, v.vertex); - float3 lightColor = _LightColor0.rgb; - o.pos = UnityObjectToClipPos( v.vertex ); - UNITY_TRANSFER_FOG(o,o.pos); - TRANSFER_VERTEX_TO_FRAGMENT(o) - return o; - } - #ifdef UNITY_CAN_COMPILE_TESSELLATION - struct TessVertex { - float4 vertex : INTERNALTESSPOS; - float3 normal : NORMAL; - float4 tangent : TANGENT; - float2 texcoord0 : TEXCOORD0; - float2 texcoord1 : TEXCOORD1; - float2 texcoord2 : TEXCOORD2; - }; - struct OutputPatchConstant { - float edge[3] : SV_TessFactor; - float inside : SV_InsideTessFactor; - float3 vTangent[4] : TANGENT; - float2 vUV[4] : TEXCOORD; - float3 vTanUCorner[4] : TANUCORNER; - float3 vTanVCorner[4] : TANVCORNER; - float4 vCWts : TANWEIGHTS; - }; - TessVertex tessvert (VertexInput v) { - TessVertex o; - o.vertex = v.vertex; - o.normal = v.normal; - o.tangent = v.tangent; - o.texcoord0 = v.texcoord0; - o.texcoord1 = v.texcoord1; - o.texcoord2 = v.texcoord2; - return o; - } - void displacement (inout VertexInput v){ - float4 node_5581 = _Time; - float2 node_6 = (v.texcoord0*2.0); - float2 node_161 = (node_6+node_5581.g*float2(0.4,0)); - float node_15 = 1.0; - float4 _DisplacementR_var = tex2Dlod(_DisplacementR,float4(TRANSFORM_TEX(node_161, _DisplacementR),0.0,node_15)); - float4 node_803 = tex2Dlod(_AORGBHeightA,float4(TRANSFORM_TEX(node_6, _AORGBHeightA),0.0,node_15)); - v.vertex.xyz += (v.normal*((1.0 - max(_DisplacementR_var.r,node_803.a))*((-1.0)*_Depth))); - } - float Tessellation(TessVertex v){ - return 3.0; - } - float4 Tessellation(TessVertex v, TessVertex v1, TessVertex v2){ - float tv = Tessellation(v); - float tv1 = Tessellation(v1); - float tv2 = Tessellation(v2); - return float4( tv1+tv2, tv2+tv, tv+tv1, tv+tv1+tv2 ) / float4(2,2,2,3); - } - OutputPatchConstant hullconst (InputPatch v) { - OutputPatchConstant o = (OutputPatchConstant)0; - float4 ts = Tessellation( v[0], v[1], v[2] ); - o.edge[0] = ts.x; - o.edge[1] = ts.y; - o.edge[2] = ts.z; - o.inside = ts.w; - return o; - } - [domain("tri")] - [partitioning("fractional_odd")] - [outputtopology("triangle_cw")] - [patchconstantfunc("hullconst")] - [outputcontrolpoints(3)] - TessVertex hull (InputPatch v, uint id : SV_OutputControlPointID) { - return v[id]; - } - [domain("tri")] - VertexOutput domain (OutputPatchConstant tessFactors, const OutputPatch vi, float3 bary : SV_DomainLocation) { - VertexInput v = (VertexInput)0; - v.vertex = vi[0].vertex*bary.x + vi[1].vertex*bary.y + vi[2].vertex*bary.z; - v.normal = vi[0].normal*bary.x + vi[1].normal*bary.y + vi[2].normal*bary.z; - v.tangent = vi[0].tangent*bary.x + vi[1].tangent*bary.y + vi[2].tangent*bary.z; - v.texcoord0 = vi[0].texcoord0*bary.x + vi[1].texcoord0*bary.y + vi[2].texcoord0*bary.z; - v.texcoord1 = vi[0].texcoord1*bary.x + vi[1].texcoord1*bary.y + vi[2].texcoord1*bary.z; - displacement(v); - VertexOutput o = vert(v); - return o; - } - #endif - float4 frag(VertexOutput i) : COLOR { - i.normalDir = normalize(i.normalDir); - float3x3 tangentTransform = float3x3( i.tangentDir, i.bitangentDir, i.normalDir); - float3 viewDirection = normalize(_WorldSpaceCameraPos.xyz - i.posWorld.xyz); - float2 node_6 = (i.uv0*2.0); - float3 _Normals_var = UnpackNormal(tex2D(_Normals,TRANSFORM_TEX(node_6, _Normals))); - float node_15 = 1.0; - float4 node_803 = tex2Dlod(_AORGBHeightA,float4(TRANSFORM_TEX(node_6, _AORGBHeightA),0.0,node_15)); - float4 node_5581 = _Time; - float2 node_161 = (node_6+node_5581.g*float2(0.4,0)); - float4 _DisplacementR_var = tex2Dlod(_DisplacementR,float4(TRANSFORM_TEX(node_161, _DisplacementR),0.0,node_15)); - float node_156 = saturate((node_803.a-_DisplacementR_var.r)); - float3 normalLocal = normalize(lerp(float3(0,0,1),_Normals_var.rgb,node_156)); - float3 normalDirection = normalize(mul( normalLocal, tangentTransform )); // Perturbed normals - float3 lightDirection = normalize(lerp(_WorldSpaceLightPos0.xyz, _WorldSpaceLightPos0.xyz - i.posWorld.xyz,_WorldSpaceLightPos0.w)); - float3 lightColor = _LightColor0.rgb; - float3 halfDirection = normalize(viewDirection+lightDirection); -////// Lighting: - UNITY_LIGHT_ATTENUATION(attenuation,i, i.posWorld.xyz); - float3 attenColor = attenuation * _LightColor0.xyz; -///////// Gloss: - float gloss = 10.0; - float specPow = exp2( gloss * 10.0 + 1.0 ); -////// Specular: - float NdotL = saturate(dot( normalDirection, lightDirection )); - float4 _Diffuse_var = tex2D(_Diffuse,TRANSFORM_TEX(i.uv0, _Diffuse)); - float4 node_798 = tex2D(_AORGBHeightA,TRANSFORM_TEX(node_6, _AORGBHeightA)); - float3 node_162 = lerp(float3(0.4117647,0.3826572,0.3602941),(_Diffuse_var.rgb*node_798.rgb),node_156); - float node_165 = (node_156*node_162.r); - float3 specularColor = float3(node_165,node_165,node_165); - float3 directSpecular = attenColor * pow(max(0,dot(halfDirection,normalDirection)),specPow)*specularColor; - float3 specular = directSpecular; -/////// Diffuse: - NdotL = dot( normalDirection, lightDirection ); - float node_237 = (0.5*(1.0 - node_156)); - float3 w = float3(node_237,node_237,node_237)*0.5; // Light wrapping - float3 NdotLWrap = NdotL * ( 1.0 - w ); - float3 forwardLight = max(float3(0.0,0.0,0.0), NdotLWrap + w ); - NdotL = max(0.0,dot( normalDirection, lightDirection )); - float3 directDiffuse = forwardLight * attenColor; - float3 diffuseColor = node_162; - float3 diffuse = directDiffuse * diffuseColor; -/// Final Color: - float3 finalColor = diffuse + specular; - fixed4 finalRGBA = fixed4(finalColor * 1,0); - UNITY_APPLY_FOG(i.fogCoord, finalRGBA); - return finalRGBA; - } - ENDCG - } - Pass { - Name "ShadowCaster" - Tags { - "LightMode"="ShadowCaster" - } - Offset 1, 1 - Cull Back - - CGPROGRAM - #pragma hull hull - #pragma domain domain - #pragma vertex tessvert - #pragma fragment frag - #define UNITY_PASS_SHADOWCASTER - #define SHOULD_SAMPLE_SH ( defined (LIGHTMAP_OFF) && defined(DYNAMICLIGHTMAP_OFF) ) - #define _GLOSSYENV 1 - #include "UnityCG.cginc" - #include "Lighting.cginc" - #include "Tessellation.cginc" - #include "UnityPBSLighting.cginc" - #include "UnityStandardBRDF.cginc" - #pragma fragmentoption ARB_precision_hint_fastest - #pragma multi_compile_shadowcaster - #pragma multi_compile LIGHTMAP_OFF LIGHTMAP_ON - #pragma multi_compile DIRLIGHTMAP_OFF DIRLIGHTMAP_COMBINED DIRLIGHTMAP_SEPARATE - #pragma multi_compile DYNAMICLIGHTMAP_OFF DYNAMICLIGHTMAP_ON - #pragma multi_compile_fog - #pragma only_renderers d3d9 d3d11 glcore gles3 metal d3d11_9x xboxone ps4 psp2 - #pragma target 5.0 - uniform float _Depth; - uniform sampler2D _DisplacementR; uniform float4 _DisplacementR_ST; - uniform sampler2D _AORGBHeightA; uniform float4 _AORGBHeightA_ST; - struct VertexInput { - float4 vertex : POSITION; - float3 normal : NORMAL; - float4 tangent : TANGENT; - float2 texcoord0 : TEXCOORD0; - float2 texcoord1 : TEXCOORD1; - float2 texcoord2 : TEXCOORD2; - }; - struct VertexOutput { - V2F_SHADOW_CASTER; - float2 uv0 : TEXCOORD1; - float2 uv1 : TEXCOORD2; - float2 uv2 : TEXCOORD3; - float4 posWorld : TEXCOORD4; - float3 normalDir : TEXCOORD5; - }; - VertexOutput vert (VertexInput v) { - VertexOutput o = (VertexOutput)0; - o.uv0 = v.texcoord0; - o.uv1 = v.texcoord1; - o.uv2 = v.texcoord2; - o.normalDir = UnityObjectToWorldNormal(v.normal); - o.posWorld = mul(unity_ObjectToWorld, v.vertex); - o.pos = UnityObjectToClipPos( v.vertex ); - TRANSFER_SHADOW_CASTER(o) - return o; - } - #ifdef UNITY_CAN_COMPILE_TESSELLATION - struct TessVertex { - float4 vertex : INTERNALTESSPOS; - float3 normal : NORMAL; - float4 tangent : TANGENT; - float2 texcoord0 : TEXCOORD0; - float2 texcoord1 : TEXCOORD1; - float2 texcoord2 : TEXCOORD2; - }; - struct OutputPatchConstant { - float edge[3] : SV_TessFactor; - float inside : SV_InsideTessFactor; - float3 vTangent[4] : TANGENT; - float2 vUV[4] : TEXCOORD; - float3 vTanUCorner[4] : TANUCORNER; - float3 vTanVCorner[4] : TANVCORNER; - float4 vCWts : TANWEIGHTS; - }; - TessVertex tessvert (VertexInput v) { - TessVertex o; - o.vertex = v.vertex; - o.normal = v.normal; - o.tangent = v.tangent; - o.texcoord0 = v.texcoord0; - o.texcoord1 = v.texcoord1; - o.texcoord2 = v.texcoord2; - return o; - } - void displacement (inout VertexInput v){ - float4 node_266 = _Time; - float2 node_6 = (v.texcoord0*2.0); - float2 node_161 = (node_6+node_266.g*float2(0.4,0)); - float node_15 = 1.0; - float4 _DisplacementR_var = tex2Dlod(_DisplacementR,float4(TRANSFORM_TEX(node_161, _DisplacementR),0.0,node_15)); - float4 node_803 = tex2Dlod(_AORGBHeightA,float4(TRANSFORM_TEX(node_6, _AORGBHeightA),0.0,node_15)); - v.vertex.xyz += (v.normal*((1.0 - max(_DisplacementR_var.r,node_803.a))*((-1.0)*_Depth))); - } - float Tessellation(TessVertex v){ - return 3.0; - } - float4 Tessellation(TessVertex v, TessVertex v1, TessVertex v2){ - float tv = Tessellation(v); - float tv1 = Tessellation(v1); - float tv2 = Tessellation(v2); - return float4( tv1+tv2, tv2+tv, tv+tv1, tv+tv1+tv2 ) / float4(2,2,2,3); - } - OutputPatchConstant hullconst (InputPatch v) { - OutputPatchConstant o = (OutputPatchConstant)0; - float4 ts = Tessellation( v[0], v[1], v[2] ); - o.edge[0] = ts.x; - o.edge[1] = ts.y; - o.edge[2] = ts.z; - o.inside = ts.w; - return o; - } - [domain("tri")] - [partitioning("fractional_odd")] - [outputtopology("triangle_cw")] - [patchconstantfunc("hullconst")] - [outputcontrolpoints(3)] - TessVertex hull (InputPatch v, uint id : SV_OutputControlPointID) { - return v[id]; - } - [domain("tri")] - VertexOutput domain (OutputPatchConstant tessFactors, const OutputPatch vi, float3 bary : SV_DomainLocation) { - VertexInput v = (VertexInput)0; - v.vertex = vi[0].vertex*bary.x + vi[1].vertex*bary.y + vi[2].vertex*bary.z; - v.normal = vi[0].normal*bary.x + vi[1].normal*bary.y + vi[2].normal*bary.z; - v.tangent = vi[0].tangent*bary.x + vi[1].tangent*bary.y + vi[2].tangent*bary.z; - v.texcoord0 = vi[0].texcoord0*bary.x + vi[1].texcoord0*bary.y + vi[2].texcoord0*bary.z; - v.texcoord1 = vi[0].texcoord1*bary.x + vi[1].texcoord1*bary.y + vi[2].texcoord1*bary.z; - displacement(v); - VertexOutput o = vert(v); - return o; - } - #endif - float4 frag(VertexOutput i) : COLOR { - i.normalDir = normalize(i.normalDir); - float3 viewDirection = normalize(_WorldSpaceCameraPos.xyz - i.posWorld.xyz); - float3 normalDirection = i.normalDir; - SHADOW_CASTER_FRAGMENT(i) - } - ENDCG - } - Pass { - Name "Meta" - Tags { - "LightMode"="Meta" - } - Cull Off - - CGPROGRAM - #pragma hull hull - #pragma domain domain - #pragma vertex tessvert - #pragma fragment frag - #define UNITY_PASS_META 1 - #define SHOULD_SAMPLE_SH ( defined (LIGHTMAP_OFF) && defined(DYNAMICLIGHTMAP_OFF) ) - #define _GLOSSYENV 1 - #include "UnityCG.cginc" - #include "Lighting.cginc" - #include "Tessellation.cginc" - #include "UnityPBSLighting.cginc" - #include "UnityStandardBRDF.cginc" - #include "UnityMetaPass.cginc" - #pragma fragmentoption ARB_precision_hint_fastest - #pragma multi_compile_shadowcaster - #pragma multi_compile LIGHTMAP_OFF LIGHTMAP_ON - #pragma multi_compile DIRLIGHTMAP_OFF DIRLIGHTMAP_COMBINED DIRLIGHTMAP_SEPARATE - #pragma multi_compile DYNAMICLIGHTMAP_OFF DYNAMICLIGHTMAP_ON - #pragma multi_compile_fog - #pragma only_renderers d3d9 d3d11 glcore gles3 metal d3d11_9x xboxone ps4 psp2 - #pragma target 5.0 - uniform float _Depth; - uniform sampler2D _DisplacementR; uniform float4 _DisplacementR_ST; - uniform sampler2D _AORGBHeightA; uniform float4 _AORGBHeightA_ST; - uniform sampler2D _Diffuse; uniform float4 _Diffuse_ST; - struct VertexInput { - float4 vertex : POSITION; - float3 normal : NORMAL; - float4 tangent : TANGENT; - float2 texcoord0 : TEXCOORD0; - float2 texcoord1 : TEXCOORD1; - float2 texcoord2 : TEXCOORD2; - }; - struct VertexOutput { - float4 pos : SV_POSITION; - float2 uv0 : TEXCOORD0; - float2 uv1 : TEXCOORD1; - float2 uv2 : TEXCOORD2; - float4 posWorld : TEXCOORD3; - float3 normalDir : TEXCOORD4; - }; - VertexOutput vert (VertexInput v) { - VertexOutput o = (VertexOutput)0; - o.uv0 = v.texcoord0; - o.uv1 = v.texcoord1; - o.uv2 = v.texcoord2; - o.normalDir = UnityObjectToWorldNormal(v.normal); - o.posWorld = mul(unity_ObjectToWorld, v.vertex); - o.pos = UnityMetaVertexPosition(v.vertex, v.texcoord1.xy, v.texcoord2.xy, unity_LightmapST, unity_DynamicLightmapST ); - return o; - } - #ifdef UNITY_CAN_COMPILE_TESSELLATION - struct TessVertex { - float4 vertex : INTERNALTESSPOS; - float3 normal : NORMAL; - float4 tangent : TANGENT; - float2 texcoord0 : TEXCOORD0; - float2 texcoord1 : TEXCOORD1; - float2 texcoord2 : TEXCOORD2; - }; - struct OutputPatchConstant { - float edge[3] : SV_TessFactor; - float inside : SV_InsideTessFactor; - float3 vTangent[4] : TANGENT; - float2 vUV[4] : TEXCOORD; - float3 vTanUCorner[4] : TANUCORNER; - float3 vTanVCorner[4] : TANVCORNER; - float4 vCWts : TANWEIGHTS; - }; - TessVertex tessvert (VertexInput v) { - TessVertex o; - o.vertex = v.vertex; - o.normal = v.normal; - o.tangent = v.tangent; - o.texcoord0 = v.texcoord0; - o.texcoord1 = v.texcoord1; - o.texcoord2 = v.texcoord2; - return o; - } - void displacement (inout VertexInput v){ - float4 node_5112 = _Time; - float2 node_6 = (v.texcoord0*2.0); - float2 node_161 = (node_6+node_5112.g*float2(0.4,0)); - float node_15 = 1.0; - float4 _DisplacementR_var = tex2Dlod(_DisplacementR,float4(TRANSFORM_TEX(node_161, _DisplacementR),0.0,node_15)); - float4 node_803 = tex2Dlod(_AORGBHeightA,float4(TRANSFORM_TEX(node_6, _AORGBHeightA),0.0,node_15)); - v.vertex.xyz += (v.normal*((1.0 - max(_DisplacementR_var.r,node_803.a))*((-1.0)*_Depth))); - } - float Tessellation(TessVertex v){ - return 3.0; - } - float4 Tessellation(TessVertex v, TessVertex v1, TessVertex v2){ - float tv = Tessellation(v); - float tv1 = Tessellation(v1); - float tv2 = Tessellation(v2); - return float4( tv1+tv2, tv2+tv, tv+tv1, tv+tv1+tv2 ) / float4(2,2,2,3); - } - OutputPatchConstant hullconst (InputPatch v) { - OutputPatchConstant o = (OutputPatchConstant)0; - float4 ts = Tessellation( v[0], v[1], v[2] ); - o.edge[0] = ts.x; - o.edge[1] = ts.y; - o.edge[2] = ts.z; - o.inside = ts.w; - return o; - } - [domain("tri")] - [partitioning("fractional_odd")] - [outputtopology("triangle_cw")] - [patchconstantfunc("hullconst")] - [outputcontrolpoints(3)] - TessVertex hull (InputPatch v, uint id : SV_OutputControlPointID) { - return v[id]; - } - [domain("tri")] - VertexOutput domain (OutputPatchConstant tessFactors, const OutputPatch vi, float3 bary : SV_DomainLocation) { - VertexInput v = (VertexInput)0; - v.vertex = vi[0].vertex*bary.x + vi[1].vertex*bary.y + vi[2].vertex*bary.z; - v.normal = vi[0].normal*bary.x + vi[1].normal*bary.y + vi[2].normal*bary.z; - v.tangent = vi[0].tangent*bary.x + vi[1].tangent*bary.y + vi[2].tangent*bary.z; - v.texcoord0 = vi[0].texcoord0*bary.x + vi[1].texcoord0*bary.y + vi[2].texcoord0*bary.z; - v.texcoord1 = vi[0].texcoord1*bary.x + vi[1].texcoord1*bary.y + vi[2].texcoord1*bary.z; - displacement(v); - VertexOutput o = vert(v); - return o; - } - #endif - float4 frag(VertexOutput i) : SV_Target { - i.normalDir = normalize(i.normalDir); - float3 viewDirection = normalize(_WorldSpaceCameraPos.xyz - i.posWorld.xyz); - float3 normalDirection = i.normalDir; - UnityMetaInput o; - UNITY_INITIALIZE_OUTPUT( UnityMetaInput, o ); - - o.Emission = 0; - - float4 _Diffuse_var = tex2D(_Diffuse,TRANSFORM_TEX(i.uv0, _Diffuse)); - float2 node_6 = (i.uv0*2.0); - float4 node_798 = tex2D(_AORGBHeightA,TRANSFORM_TEX(node_6, _AORGBHeightA)); - float node_15 = 1.0; - float4 node_803 = tex2Dlod(_AORGBHeightA,float4(TRANSFORM_TEX(node_6, _AORGBHeightA),0.0,node_15)); - float4 node_5112 = _Time; - float2 node_161 = (node_6+node_5112.g*float2(0.4,0)); - float4 _DisplacementR_var = tex2Dlod(_DisplacementR,float4(TRANSFORM_TEX(node_161, _DisplacementR),0.0,node_15)); - float node_156 = saturate((node_803.a-_DisplacementR_var.r)); - float3 node_162 = lerp(float3(0.4117647,0.3826572,0.3602941),(_Diffuse_var.rgb*node_798.rgb),node_156); - float3 diffColor = node_162; - float node_165 = (node_156*node_162.r); - float3 specColor = float3(node_165,node_165,node_165); - float roughness = 1.0 - 10.0; - o.Albedo = diffColor + specColor * roughness * roughness * 0.5; - - return UnityMetaFragment( o ); - } - ENDCG - } - } - FallBack "Diffuse" - CustomEditor "ShaderForgeMaterialInspector" -} diff --git a/Shader Forge/Assets/ShaderForge/Example Assets/Shaders/TessellationDisplacement.shader.meta b/Shader Forge/Assets/ShaderForge/Example Assets/Shaders/TessellationDisplacement.shader.meta deleted file mode 100644 index fc12fb54..00000000 --- a/Shader Forge/Assets/ShaderForge/Example Assets/Shaders/TessellationDisplacement.shader.meta +++ /dev/null @@ -1,13 +0,0 @@ -fileFormatVersion: 2 -guid: 5e81283b11113de4295d1943aec0a765 -ShaderImporter: - externalObjects: {} - defaultTextures: - - _Normals: {fileID: 2800000, guid: cf20bfced7e912046a9ce991a4d775ec, type: 3} - - _DisplacementR: {fileID: 2800000, guid: 28c7aad1372ff114b90d330f8a2dd938, type: 3} - - _AORGBHeightA: {fileID: 2800000, guid: 5fb7986dd6d0a8e4093ba82369dd6a4d, type: 3} - - _Diffuse: {fileID: 2800000, guid: b66bceaf0cc0ace4e9bdc92f14bba709, type: 3} - nonModifiableTextures: [] - userData: - assetBundleName: - assetBundleVariant: diff --git a/Shader Forge/Assets/ShaderForge/Example Assets/Shaders/Tiles.mat b/Shader Forge/Assets/ShaderForge/Example Assets/Shaders/Tiles.mat deleted file mode 100644 index 3897df91..00000000 --- a/Shader Forge/Assets/ShaderForge/Example Assets/Shaders/Tiles.mat +++ /dev/null @@ -1,192 +0,0 @@ -%YAML 1.1 -%TAG !u! tag:unity3d.com,2011: ---- !u!21 &2100000 -Material: - serializedVersion: 5 - m_ObjectHideFlags: 0 - m_PrefabParentObject: {fileID: 0} - m_PrefabInternal: {fileID: 0} - m_Name: Tiles - m_Shader: {fileID: 4800000, guid: 05eb3a2c382b4154cb71394a349d0909, type: 3} - m_ShaderKeywords: - m_LightmapFlags: 5 - m_CustomRenderQueue: -1 - m_SavedProperties: - serializedVersion: 2 - m_TexEnvs: - data: - first: - name: _Normal2 - second: - m_Texture: {fileID: 2800000, guid: c6dfb00dbee6bc044a8a3bb22e56e064, type: 3} - m_Scale: {x: 1, y: 1} - m_Offset: {x: 0, y: 0} - data: - first: - name: _Normal3 - second: - m_Texture: {fileID: 2800000, guid: c6dfb00dbee6bc044a8a3bb22e56e064, type: 3} - m_Scale: {x: 1, y: 1} - m_Offset: {x: 0, y: 0} - data: - first: - name: _Gloss - second: - m_Texture: {fileID: 0} - m_Scale: {x: 1, y: 1} - m_Offset: {x: 0, y: 0} - data: - first: - name: _Diffuse - second: - m_Texture: {fileID: 2800000, guid: b66bceaf0cc0ace4e9bdc92f14bba709, type: 3} - m_Scale: {x: 1.5, y: 1.5} - m_Offset: {x: 0, y: 0} - data: - first: - name: _Specular - second: - m_Texture: {fileID: 0} - m_Scale: {x: 1, y: 1} - m_Offset: {x: 0, y: 0} - data: - first: - name: _Normal - second: - m_Texture: {fileID: 2800000, guid: bbab0a6f7bae9cf42bf057d8ee2755f6, type: 3} - m_Scale: {x: 1.5, y: 1.5} - m_Offset: {x: 0, y: 0} - data: - first: - name: _node2 - second: - m_Texture: {fileID: 0} - m_Scale: {x: 1, y: 1} - m_Offset: {x: 0, y: 0} - data: - first: - name: _node_1 - second: - m_Texture: {fileID: 2800000, guid: b66bceaf0cc0ace4e9bdc92f14bba709, type: 3} - m_Scale: {x: 1, y: 1} - m_Offset: {x: 0, y: 0} - data: - first: - name: _node_2 - second: - m_Texture: {fileID: 2800000, guid: 91730f8ee98c48e42aff09048fbbfaaa, type: 3} - m_Scale: {x: 1, y: 1} - m_Offset: {x: 0, y: 0} - data: - first: - name: _node_18 - second: - m_Texture: {fileID: 2800000, guid: 28c7aad1372ff114b90d330f8a2dd938, type: 3} - m_Scale: {x: 1, y: 1} - m_Offset: {x: 0, y: 0} - data: - first: - name: _SpecularIBL - second: - m_Texture: {fileID: 8900000, guid: f466cf7415226e046b096197eb7341aa, type: 2} - m_Scale: {x: 1, y: 1} - m_Offset: {x: 0, y: 0} - data: - first: - name: _Blend - second: - m_Texture: {fileID: 2800000, guid: 6a985dfcd1d3ca94e9753748ed65c697, type: 3} - m_Scale: {x: 1, y: 1} - m_Offset: {x: 0, y: 0} - data: - first: - name: _node1 - second: - m_Texture: {fileID: 0} - m_Scale: {x: 1, y: 1} - m_Offset: {x: 0, y: 0} - data: - first: - name: _node18 - second: - m_Texture: {fileID: 0} - m_Scale: {x: 1, y: 1} - m_Offset: {x: 0, y: 0} - data: - first: - name: _WetMask - second: - m_Texture: {fileID: 2800000, guid: 28c7aad1372ff114b90d330f8a2dd938, type: 3} - m_Scale: {x: 1, y: 1} - m_Offset: {x: 0, y: 0} - data: - first: - name: _DiffuseA - second: - m_Texture: {fileID: 2800000, guid: b66bceaf0cc0ace4e9bdc92f14bba709, type: 3} - m_Scale: {x: 1, y: 1} - m_Offset: {x: 0, y: 0} - data: - first: - name: _DiffuseB - second: - m_Texture: {fileID: 2800000, guid: 26c22711225093d47bd4f1294ca52131, type: 3} - m_Scale: {x: 1, y: 1} - m_Offset: {x: 0, y: 0} - data: - first: - name: _NormalA - second: - m_Texture: {fileID: 2800000, guid: 91730f8ee98c48e42aff09048fbbfaaa, type: 3} - m_Scale: {x: 1, y: 1} - m_Offset: {x: 0, y: 0} - data: - first: - name: _NormalB - second: - m_Texture: {fileID: 2800000, guid: 80286949e259c2d44876306923857245, type: 3} - m_Scale: {x: 1, y: 1} - m_Offset: {x: 0, y: 0} - data: - first: - name: _Diffuse2 - second: - m_Texture: {fileID: 0} - m_Scale: {x: 1, y: 1} - m_Offset: {x: 0, y: 0} - data: - first: - name: _node141 - second: - m_Texture: {fileID: 0} - m_Scale: {x: 1, y: 1} - m_Offset: {x: 0, y: 0} - data: - first: - name: _BaseColor - second: - m_Texture: {fileID: 2800000, guid: b66bceaf0cc0ace4e9bdc92f14bba709, type: 3} - m_Scale: {x: 1.5, y: 1.5} - m_Offset: {x: 0, y: 0} - m_Floats: - data: - first: - name: _Metallic - second: 0 - data: - first: - name: _Gloss - second: .372999996 - data: - first: - name: _Specular - second: .125 - data: - first: - name: _node_8 - second: .0653950945 - m_Colors: - data: - first: - name: _Color - second: {r: 1, g: 1, b: 1, a: 1} diff --git a/Shader Forge/Assets/ShaderForge/Example Assets/Shaders/Tiles.mat.meta b/Shader Forge/Assets/ShaderForge/Example Assets/Shaders/Tiles.mat.meta deleted file mode 100644 index 9827f925..00000000 --- a/Shader Forge/Assets/ShaderForge/Example Assets/Shaders/Tiles.mat.meta +++ /dev/null @@ -1,4 +0,0 @@ -fileFormatVersion: 2 -guid: 393931f1639a1fe40b68d72551bef241 -NativeFormatImporter: - userData: diff --git a/Shader Forge/Assets/ShaderForge/Example Assets/Shaders/Tiles.shader b/Shader Forge/Assets/ShaderForge/Example Assets/Shaders/Tiles.shader deleted file mode 100644 index 8895fb73..00000000 --- a/Shader Forge/Assets/ShaderForge/Example Assets/Shaders/Tiles.shader +++ /dev/null @@ -1,393 +0,0 @@ -// Shader created with Shader Forge v1.38 -// Shader Forge (c) Freya Holmer - http://www.acegikmo.com/shaderforge/ -// Note: Manually altering this data may prevent you from opening it in Shader Forge -/*SF_DATA;ver:1.38;sub:START;pass:START;ps:flbk:,iptp:0,cusa:False,bamd:0,cgin:,lico:1,lgpr:1,limd:3,spmd:1,trmd:0,grmd:0,uamb:True,mssp:True,bkdf:True,hqlp:False,rprd:True,enco:False,rmgx:True,imps:True,rpth:0,vtps:0,hqsc:True,nrmq:1,nrsp:0,vomd:0,spxs:False,tesm:0,olmd:1,culm:0,bsrc:0,bdst:1,dpts:2,wrdp:True,dith:0,atcv:False,rfrpo:True,rfrpn:Refraction,coma:15,ufog:True,aust:True,igpj:False,qofs:0,qpre:1,rntp:1,fgom:False,fgoc:False,fgod:False,fgor:False,fgmd:0,fgcr:0.5,fgcg:0.5,fgcb:0.5,fgca:1,fgde:0.01,fgrn:0,fgrf:300,stcl:False,atwp:False,stva:128,stmr:255,stmw:255,stcp:6,stps:0,stfa:0,stfz:0,ofsf:0,ofsu:0,f2p0:False,fnsp:False,fnfb:False,fsmp:False;n:type:ShaderForge.SFN_Final,id:0,x:33638,y:32808,varname:node_0,prsc:2|diff-138-RGB,spec-145-OUT,gloss-144-OUT;n:type:ShaderForge.SFN_Tex2d,id:138,x:33259,y:32700,ptovrint:False,ptlb:Base Color,ptin:_BaseColor,varname:_BaseColor,prsc:2,glob:False,taghide:False,taghdr:False,tagprd:False,tagnsco:False,tagnrm:False,tex:b66bceaf0cc0ace4e9bdc92f14bba709,ntxv:0,isnm:False;n:type:ShaderForge.SFN_Slider,id:144,x:33102,y:32979,ptovrint:False,ptlb:Gloss,ptin:_Gloss,varname:_Gloss,prsc:2,glob:False,taghide:False,taghdr:False,tagprd:False,tagnsco:False,tagnrm:False,min:0,cur:0.5,max:1;n:type:ShaderForge.SFN_Slider,id:145,x:33102,y:32879,ptovrint:False,ptlb:Metallic,ptin:_Metallic,varname:_Metallic,prsc:2,glob:False,taghide:False,taghdr:False,tagprd:False,tagnsco:False,tagnrm:False,min:0,cur:0,max:1;proporder:138-145-144;pass:END;sub:END;*/ - -Shader "Shader Forge/Examples/Tiles" { - Properties { - _BaseColor ("Base Color", 2D) = "white" {} - _Metallic ("Metallic", Range(0, 1)) = 0 - _Gloss ("Gloss", Range(0, 1)) = 0.5 - } - SubShader { - Tags { - "RenderType"="Opaque" - } - Pass { - Name "FORWARD" - Tags { - "LightMode"="ForwardBase" - } - - - CGPROGRAM - #pragma vertex vert - #pragma fragment frag - #define SHOULD_SAMPLE_SH ( defined (LIGHTMAP_OFF) && defined(DYNAMICLIGHTMAP_OFF) ) - #define _GLOSSYENV 1 - #include "UnityCG.cginc" - #include "AutoLight.cginc" - #include "Lighting.cginc" - #include "UnityPBSLighting.cginc" - #include "UnityStandardBRDF.cginc" - #pragma multi_compile_fwdbase_fullshadows - #pragma multi_compile LIGHTMAP_OFF LIGHTMAP_ON - #pragma multi_compile DIRLIGHTMAP_OFF DIRLIGHTMAP_COMBINED DIRLIGHTMAP_SEPARATE - #pragma multi_compile DYNAMICLIGHTMAP_OFF DYNAMICLIGHTMAP_ON - #pragma multi_compile_fog - #pragma only_renderers d3d9 d3d11 glcore gles gles3 metal d3d11_9x xboxone ps4 psp2 n3ds wiiu - #pragma target 3.0 - uniform sampler2D _BaseColor; uniform float4 _BaseColor_ST; - uniform float _Gloss; - uniform float _Metallic; - struct VertexInput { - float4 vertex : POSITION; - float3 normal : NORMAL; - float4 tangent : TANGENT; - float2 texcoord0 : TEXCOORD0; - float2 texcoord1 : TEXCOORD1; - float2 texcoord2 : TEXCOORD2; - }; - struct VertexOutput { - float4 pos : SV_POSITION; - float2 uv0 : TEXCOORD0; - float2 uv1 : TEXCOORD1; - float2 uv2 : TEXCOORD2; - float4 posWorld : TEXCOORD3; - float3 normalDir : TEXCOORD4; - float3 tangentDir : TEXCOORD5; - float3 bitangentDir : TEXCOORD6; - LIGHTING_COORDS(7,8) - UNITY_FOG_COORDS(9) - #if defined(LIGHTMAP_ON) || defined(UNITY_SHOULD_SAMPLE_SH) - float4 ambientOrLightmapUV : TEXCOORD10; - #endif - }; - VertexOutput vert (VertexInput v) { - VertexOutput o = (VertexOutput)0; - o.uv0 = v.texcoord0; - o.uv1 = v.texcoord1; - o.uv2 = v.texcoord2; - #ifdef LIGHTMAP_ON - o.ambientOrLightmapUV.xy = v.texcoord1.xy * unity_LightmapST.xy + unity_LightmapST.zw; - o.ambientOrLightmapUV.zw = 0; - #elif UNITY_SHOULD_SAMPLE_SH - #endif - #ifdef DYNAMICLIGHTMAP_ON - o.ambientOrLightmapUV.zw = v.texcoord2.xy * unity_DynamicLightmapST.xy + unity_DynamicLightmapST.zw; - #endif - o.normalDir = UnityObjectToWorldNormal(v.normal); - o.tangentDir = normalize( mul( unity_ObjectToWorld, float4( v.tangent.xyz, 0.0 ) ).xyz ); - o.bitangentDir = normalize(cross(o.normalDir, o.tangentDir) * v.tangent.w); - o.posWorld = mul(unity_ObjectToWorld, v.vertex); - float3 lightColor = _LightColor0.rgb; - o.pos = UnityObjectToClipPos( v.vertex ); - UNITY_TRANSFER_FOG(o,o.pos); - TRANSFER_VERTEX_TO_FRAGMENT(o) - return o; - } - float4 frag(VertexOutput i) : COLOR { - i.normalDir = normalize(i.normalDir); - float3x3 tangentTransform = float3x3( i.tangentDir, i.bitangentDir, i.normalDir); - float3 viewDirection = normalize(_WorldSpaceCameraPos.xyz - i.posWorld.xyz); - float3 normalDirection = i.normalDir; - float3 viewReflectDirection = reflect( -viewDirection, normalDirection ); - float3 lightDirection = normalize(_WorldSpaceLightPos0.xyz); - float3 lightColor = _LightColor0.rgb; - float3 halfDirection = normalize(viewDirection+lightDirection); -////// Lighting: - UNITY_LIGHT_ATTENUATION(attenuation,i, i.posWorld.xyz); - float3 attenColor = attenuation * _LightColor0.xyz; - float Pi = 3.141592654; - float InvPi = 0.31830988618; -///////// Gloss: - float gloss = _Gloss; - float perceptualRoughness = 1.0 - _Gloss; - float roughness = perceptualRoughness * perceptualRoughness; - float specPow = exp2( gloss * 10.0 + 1.0 ); -/////// GI Data: - UnityLight light; - #ifdef LIGHTMAP_OFF - light.color = lightColor; - light.dir = lightDirection; - light.ndotl = LambertTerm (normalDirection, light.dir); - #else - light.color = half3(0.f, 0.f, 0.f); - light.ndotl = 0.0f; - light.dir = half3(0.f, 0.f, 0.f); - #endif - UnityGIInput d; - d.light = light; - d.worldPos = i.posWorld.xyz; - d.worldViewDir = viewDirection; - d.atten = attenuation; - #if defined(LIGHTMAP_ON) || defined(DYNAMICLIGHTMAP_ON) - d.ambient = 0; - d.lightmapUV = i.ambientOrLightmapUV; - #else - d.ambient = i.ambientOrLightmapUV; - #endif - #if UNITY_SPECCUBE_BLENDING || UNITY_SPECCUBE_BOX_PROJECTION - d.boxMin[0] = unity_SpecCube0_BoxMin; - d.boxMin[1] = unity_SpecCube1_BoxMin; - #endif - #if UNITY_SPECCUBE_BOX_PROJECTION - d.boxMax[0] = unity_SpecCube0_BoxMax; - d.boxMax[1] = unity_SpecCube1_BoxMax; - d.probePosition[0] = unity_SpecCube0_ProbePosition; - d.probePosition[1] = unity_SpecCube1_ProbePosition; - #endif - d.probeHDR[0] = unity_SpecCube0_HDR; - d.probeHDR[1] = unity_SpecCube1_HDR; - Unity_GlossyEnvironmentData ugls_en_data; - ugls_en_data.roughness = 1.0 - gloss; - ugls_en_data.reflUVW = viewReflectDirection; - UnityGI gi = UnityGlobalIllumination(d, 1, normalDirection, ugls_en_data ); - lightDirection = gi.light.dir; - lightColor = gi.light.color; -////// Specular: - float NdotL = saturate(dot( normalDirection, lightDirection )); - float LdotH = saturate(dot(lightDirection, halfDirection)); - float3 specularColor = _Metallic; - float specularMonochrome; - float4 _BaseColor_var = tex2D(_BaseColor,TRANSFORM_TEX(i.uv0, _BaseColor)); - float3 diffuseColor = _BaseColor_var.rgb; // Need this for specular when using metallic - diffuseColor = DiffuseAndSpecularFromMetallic( diffuseColor, specularColor, specularColor, specularMonochrome ); - specularMonochrome = 1.0-specularMonochrome; - float NdotV = abs(dot( normalDirection, viewDirection )); - float NdotH = saturate(dot( normalDirection, halfDirection )); - float VdotH = saturate(dot( viewDirection, halfDirection )); - float visTerm = SmithJointGGXVisibilityTerm( NdotL, NdotV, roughness ); - float normTerm = GGXTerm(NdotH, roughness); - float specularPBL = (visTerm*normTerm) * UNITY_PI; - #ifdef UNITY_COLORSPACE_GAMMA - specularPBL = sqrt(max(1e-4h, specularPBL)); - #endif - specularPBL = max(0, specularPBL * NdotL); - #if defined(_SPECULARHIGHLIGHTS_OFF) - specularPBL = 0.0; - #endif - half surfaceReduction; - #ifdef UNITY_COLORSPACE_GAMMA - surfaceReduction = 1.0-0.28*roughness*perceptualRoughness; - #else - surfaceReduction = 1.0/(roughness*roughness + 1.0); - #endif - specularPBL *= any(specularColor) ? 1.0 : 0.0; - float3 directSpecular = attenColor*specularPBL*FresnelTerm(specularColor, LdotH); - half grazingTerm = saturate( gloss + specularMonochrome ); - float3 indirectSpecular = (gi.indirect.specular); - indirectSpecular *= FresnelLerp (specularColor, grazingTerm, NdotV); - indirectSpecular *= surfaceReduction; - float3 specular = (directSpecular + indirectSpecular); -/////// Diffuse: - NdotL = max(0.0,dot( normalDirection, lightDirection )); - half fd90 = 0.5 + 2 * LdotH * LdotH * (1-gloss); - float nlPow5 = Pow5(1-NdotL); - float nvPow5 = Pow5(1-NdotV); - float3 directDiffuse = ((1 +(fd90 - 1)*nlPow5) * (1 + (fd90 - 1)*nvPow5) * NdotL) * attenColor; - float3 indirectDiffuse = float3(0,0,0); - indirectDiffuse += gi.indirect.diffuse; - float3 diffuse = (directDiffuse + indirectDiffuse) * diffuseColor; -/// Final Color: - float3 finalColor = diffuse + specular; - fixed4 finalRGBA = fixed4(finalColor,1); - UNITY_APPLY_FOG(i.fogCoord, finalRGBA); - return finalRGBA; - } - ENDCG - } - Pass { - Name "FORWARD_DELTA" - Tags { - "LightMode"="ForwardAdd" - } - Blend One One - - - CGPROGRAM - #pragma vertex vert - #pragma fragment frag - #define SHOULD_SAMPLE_SH ( defined (LIGHTMAP_OFF) && defined(DYNAMICLIGHTMAP_OFF) ) - #define _GLOSSYENV 1 - #include "UnityCG.cginc" - #include "AutoLight.cginc" - #include "Lighting.cginc" - #include "UnityPBSLighting.cginc" - #include "UnityStandardBRDF.cginc" - #pragma multi_compile_fwdadd_fullshadows - #pragma multi_compile LIGHTMAP_OFF LIGHTMAP_ON - #pragma multi_compile DIRLIGHTMAP_OFF DIRLIGHTMAP_COMBINED DIRLIGHTMAP_SEPARATE - #pragma multi_compile DYNAMICLIGHTMAP_OFF DYNAMICLIGHTMAP_ON - #pragma multi_compile_fog - #pragma only_renderers d3d9 d3d11 glcore gles gles3 metal d3d11_9x xboxone ps4 psp2 n3ds wiiu - #pragma target 3.0 - uniform sampler2D _BaseColor; uniform float4 _BaseColor_ST; - uniform float _Gloss; - uniform float _Metallic; - struct VertexInput { - float4 vertex : POSITION; - float3 normal : NORMAL; - float4 tangent : TANGENT; - float2 texcoord0 : TEXCOORD0; - float2 texcoord1 : TEXCOORD1; - float2 texcoord2 : TEXCOORD2; - }; - struct VertexOutput { - float4 pos : SV_POSITION; - float2 uv0 : TEXCOORD0; - float2 uv1 : TEXCOORD1; - float2 uv2 : TEXCOORD2; - float4 posWorld : TEXCOORD3; - float3 normalDir : TEXCOORD4; - float3 tangentDir : TEXCOORD5; - float3 bitangentDir : TEXCOORD6; - LIGHTING_COORDS(7,8) - UNITY_FOG_COORDS(9) - }; - VertexOutput vert (VertexInput v) { - VertexOutput o = (VertexOutput)0; - o.uv0 = v.texcoord0; - o.uv1 = v.texcoord1; - o.uv2 = v.texcoord2; - o.normalDir = UnityObjectToWorldNormal(v.normal); - o.tangentDir = normalize( mul( unity_ObjectToWorld, float4( v.tangent.xyz, 0.0 ) ).xyz ); - o.bitangentDir = normalize(cross(o.normalDir, o.tangentDir) * v.tangent.w); - o.posWorld = mul(unity_ObjectToWorld, v.vertex); - float3 lightColor = _LightColor0.rgb; - o.pos = UnityObjectToClipPos( v.vertex ); - UNITY_TRANSFER_FOG(o,o.pos); - TRANSFER_VERTEX_TO_FRAGMENT(o) - return o; - } - float4 frag(VertexOutput i) : COLOR { - i.normalDir = normalize(i.normalDir); - float3x3 tangentTransform = float3x3( i.tangentDir, i.bitangentDir, i.normalDir); - float3 viewDirection = normalize(_WorldSpaceCameraPos.xyz - i.posWorld.xyz); - float3 normalDirection = i.normalDir; - float3 lightDirection = normalize(lerp(_WorldSpaceLightPos0.xyz, _WorldSpaceLightPos0.xyz - i.posWorld.xyz,_WorldSpaceLightPos0.w)); - float3 lightColor = _LightColor0.rgb; - float3 halfDirection = normalize(viewDirection+lightDirection); -////// Lighting: - UNITY_LIGHT_ATTENUATION(attenuation,i, i.posWorld.xyz); - float3 attenColor = attenuation * _LightColor0.xyz; - float Pi = 3.141592654; - float InvPi = 0.31830988618; -///////// Gloss: - float gloss = _Gloss; - float perceptualRoughness = 1.0 - _Gloss; - float roughness = perceptualRoughness * perceptualRoughness; - float specPow = exp2( gloss * 10.0 + 1.0 ); -////// Specular: - float NdotL = saturate(dot( normalDirection, lightDirection )); - float LdotH = saturate(dot(lightDirection, halfDirection)); - float3 specularColor = _Metallic; - float specularMonochrome; - float4 _BaseColor_var = tex2D(_BaseColor,TRANSFORM_TEX(i.uv0, _BaseColor)); - float3 diffuseColor = _BaseColor_var.rgb; // Need this for specular when using metallic - diffuseColor = DiffuseAndSpecularFromMetallic( diffuseColor, specularColor, specularColor, specularMonochrome ); - specularMonochrome = 1.0-specularMonochrome; - float NdotV = abs(dot( normalDirection, viewDirection )); - float NdotH = saturate(dot( normalDirection, halfDirection )); - float VdotH = saturate(dot( viewDirection, halfDirection )); - float visTerm = SmithJointGGXVisibilityTerm( NdotL, NdotV, roughness ); - float normTerm = GGXTerm(NdotH, roughness); - float specularPBL = (visTerm*normTerm) * UNITY_PI; - #ifdef UNITY_COLORSPACE_GAMMA - specularPBL = sqrt(max(1e-4h, specularPBL)); - #endif - specularPBL = max(0, specularPBL * NdotL); - #if defined(_SPECULARHIGHLIGHTS_OFF) - specularPBL = 0.0; - #endif - specularPBL *= any(specularColor) ? 1.0 : 0.0; - float3 directSpecular = attenColor*specularPBL*FresnelTerm(specularColor, LdotH); - float3 specular = directSpecular; -/////// Diffuse: - NdotL = max(0.0,dot( normalDirection, lightDirection )); - half fd90 = 0.5 + 2 * LdotH * LdotH * (1-gloss); - float nlPow5 = Pow5(1-NdotL); - float nvPow5 = Pow5(1-NdotV); - float3 directDiffuse = ((1 +(fd90 - 1)*nlPow5) * (1 + (fd90 - 1)*nvPow5) * NdotL) * attenColor; - float3 diffuse = directDiffuse * diffuseColor; -/// Final Color: - float3 finalColor = diffuse + specular; - fixed4 finalRGBA = fixed4(finalColor * 1,0); - UNITY_APPLY_FOG(i.fogCoord, finalRGBA); - return finalRGBA; - } - ENDCG - } - Pass { - Name "Meta" - Tags { - "LightMode"="Meta" - } - Cull Off - - CGPROGRAM - #pragma vertex vert - #pragma fragment frag - #define SHOULD_SAMPLE_SH ( defined (LIGHTMAP_OFF) && defined(DYNAMICLIGHTMAP_OFF) ) - #define _GLOSSYENV 1 - #include "UnityCG.cginc" - #include "Lighting.cginc" - #include "UnityPBSLighting.cginc" - #include "UnityStandardBRDF.cginc" - #include "UnityMetaPass.cginc" - #pragma fragmentoption ARB_precision_hint_fastest - #pragma multi_compile_shadowcaster - #pragma multi_compile LIGHTMAP_OFF LIGHTMAP_ON - #pragma multi_compile DIRLIGHTMAP_OFF DIRLIGHTMAP_COMBINED DIRLIGHTMAP_SEPARATE - #pragma multi_compile DYNAMICLIGHTMAP_OFF DYNAMICLIGHTMAP_ON - #pragma multi_compile_fog - #pragma only_renderers d3d9 d3d11 glcore gles gles3 metal d3d11_9x xboxone ps4 psp2 n3ds wiiu - #pragma target 3.0 - uniform sampler2D _BaseColor; uniform float4 _BaseColor_ST; - uniform float _Gloss; - uniform float _Metallic; - struct VertexInput { - float4 vertex : POSITION; - float2 texcoord0 : TEXCOORD0; - float2 texcoord1 : TEXCOORD1; - float2 texcoord2 : TEXCOORD2; - }; - struct VertexOutput { - float4 pos : SV_POSITION; - float2 uv0 : TEXCOORD0; - float2 uv1 : TEXCOORD1; - float2 uv2 : TEXCOORD2; - float4 posWorld : TEXCOORD3; - }; - VertexOutput vert (VertexInput v) { - VertexOutput o = (VertexOutput)0; - o.uv0 = v.texcoord0; - o.uv1 = v.texcoord1; - o.uv2 = v.texcoord2; - o.posWorld = mul(unity_ObjectToWorld, v.vertex); - o.pos = UnityMetaVertexPosition(v.vertex, v.texcoord1.xy, v.texcoord2.xy, unity_LightmapST, unity_DynamicLightmapST ); - return o; - } - float4 frag(VertexOutput i) : SV_Target { - float3 viewDirection = normalize(_WorldSpaceCameraPos.xyz - i.posWorld.xyz); - UnityMetaInput o; - UNITY_INITIALIZE_OUTPUT( UnityMetaInput, o ); - - o.Emission = 0; - - float4 _BaseColor_var = tex2D(_BaseColor,TRANSFORM_TEX(i.uv0, _BaseColor)); - float3 diffColor = _BaseColor_var.rgb; - float specularMonochrome; - float3 specColor; - diffColor = DiffuseAndSpecularFromMetallic( diffColor, _Metallic, specColor, specularMonochrome ); - float roughness = 1.0 - _Gloss; - o.Albedo = diffColor + specColor * roughness * roughness * 0.5; - - return UnityMetaFragment( o ); - } - ENDCG - } - } - FallBack "Diffuse" - CustomEditor "ShaderForgeMaterialInspector" -} diff --git a/Shader Forge/Assets/ShaderForge/Example Assets/Shaders/Tiles.shader.meta b/Shader Forge/Assets/ShaderForge/Example Assets/Shaders/Tiles.shader.meta deleted file mode 100644 index 7de6f97e..00000000 --- a/Shader Forge/Assets/ShaderForge/Example Assets/Shaders/Tiles.shader.meta +++ /dev/null @@ -1,10 +0,0 @@ -fileFormatVersion: 2 -guid: 05eb3a2c382b4154cb71394a349d0909 -ShaderImporter: - externalObjects: {} - defaultTextures: - - _BaseColor: {fileID: 2800000, guid: b66bceaf0cc0ace4e9bdc92f14bba709, type: 3} - nonModifiableTextures: [] - userData: - assetBundleName: - assetBundleVariant: diff --git a/Shader Forge/Assets/ShaderForge/Example Assets/Shaders/Vegetation.mat b/Shader Forge/Assets/ShaderForge/Example Assets/Shaders/Vegetation.mat deleted file mode 100644 index cc6d638e..00000000 --- a/Shader Forge/Assets/ShaderForge/Example Assets/Shaders/Vegetation.mat +++ /dev/null @@ -1,85 +0,0 @@ -%YAML 1.1 -%TAG !u! tag:unity3d.com,2011: ---- !u!21 &2100000 -Material: - serializedVersion: 6 - m_ObjectHideFlags: 0 - m_PrefabParentObject: {fileID: 0} - m_PrefabInternal: {fileID: 0} - m_Name: Vegetation - m_Shader: {fileID: 4800000, guid: e17d9c256530145c39caf8efc8c94a16, type: 3} - m_ShaderKeywords: - m_LightmapFlags: 5 - m_CustomRenderQueue: -1 - stringTagMap: {} - m_SavedProperties: - serializedVersion: 2 - m_TexEnvs: - - first: - name: _Diffuse - second: - m_Texture: {fileID: 2800000, guid: 66321cc856b03e245ac41ed8a53e0ecc, type: 3} - m_Scale: {x: 1, y: 1} - m_Offset: {x: 0, y: 0} - - first: - name: _Normal - second: - m_Texture: {fileID: 2800000, guid: cb6c5165ed180c543be39ed70e72abc8, type: 3} - m_Scale: {x: 1, y: 1} - m_Offset: {x: 0, y: 0} - - first: - name: _Normals - second: - m_Texture: {fileID: 0} - m_Scale: {x: 1, y: 1} - m_Offset: {x: 0, y: 0} - - first: - name: _node7 - second: - m_Texture: {fileID: 0} - m_Scale: {x: 1, y: 1} - m_Offset: {x: 0, y: 0} - - first: - name: _node8 - second: - m_Texture: {fileID: 0} - m_Scale: {x: 1, y: 1} - m_Offset: {x: 0, y: 0} - - first: - name: _node_1 - second: - m_Texture: {fileID: 2800000, guid: 66321cc856b03e245ac41ed8a53e0ecc, type: 3} - m_Scale: {x: 1, y: 1} - m_Offset: {x: 0, y: 0} - - first: - name: _node_18 - second: - m_Texture: {fileID: 2800000, guid: 28c7aad1372ff114b90d330f8a2dd938, type: 3} - m_Scale: {x: 1, y: 1} - m_Offset: {x: 0, y: 0} - - first: - name: _node_2 - second: - m_Texture: {fileID: 2800000, guid: cb6c5165ed180c543be39ed70e72abc8, type: 3} - m_Scale: {x: 1, y: 1} - m_Offset: {x: 0, y: 0} - - first: - name: _node_4 - second: - m_Texture: {fileID: 2800000, guid: 80286949e259c2d44876306923857245, type: 3} - m_Scale: {x: 1, y: 1} - m_Offset: {x: 0, y: 0} - m_Floats: - - first: - name: _Cutoff - second: 0.64285713 - - first: - name: _node11 - second: 1.5357143 - - first: - name: _node294 - second: 0 - - first: - name: _node_8 - second: 0.065395094 - m_Colors: [] diff --git a/Shader Forge/Assets/ShaderForge/Example Assets/Shaders/Vegetation.mat.meta b/Shader Forge/Assets/ShaderForge/Example Assets/Shaders/Vegetation.mat.meta deleted file mode 100644 index e5cc20ce..00000000 --- a/Shader Forge/Assets/ShaderForge/Example Assets/Shaders/Vegetation.mat.meta +++ /dev/null @@ -1,4 +0,0 @@ -fileFormatVersion: 2 -guid: d2accf36f48355a4cbd925162706dbb1 -NativeFormatImporter: - userData: diff --git a/Shader Forge/Assets/ShaderForge/Example Assets/Shaders/Vegetation.shader b/Shader Forge/Assets/ShaderForge/Example Assets/Shaders/Vegetation.shader deleted file mode 100644 index 38937c99..00000000 --- a/Shader Forge/Assets/ShaderForge/Example Assets/Shaders/Vegetation.shader +++ /dev/null @@ -1,436 +0,0 @@ -// Shader created with Shader Forge v1.38 -// Shader Forge (c) Freya Holmer - http://www.acegikmo.com/shaderforge/ -// Note: Manually altering this data may prevent you from opening it in Shader Forge -/*SF_DATA;ver:1.38;sub:START;pass:START;ps:flbk:Transparent/Cutout/Diffuse,iptp:0,cusa:False,bamd:0,cgin:,lico:1,lgpr:1,limd:1,spmd:1,trmd:0,grmd:0,uamb:True,mssp:True,bkdf:True,hqlp:False,rprd:False,enco:False,rmgx:True,imps:True,rpth:0,vtps:0,hqsc:True,nrmq:1,nrsp:0,vomd:0,spxs:False,tesm:0,olmd:1,culm:2,bsrc:0,bdst:1,dpts:2,wrdp:True,dith:0,atcv:True,rfrpo:True,rfrpn:Refraction,coma:15,ufog:True,aust:True,igpj:False,qofs:0,qpre:2,rntp:3,fgom:False,fgoc:False,fgod:False,fgor:False,fgmd:0,fgcr:0.5,fgcg:0.5,fgcb:0.5,fgca:1,fgde:0.01,fgrn:0,fgrf:300,stcl:False,atwp:False,stva:128,stmr:255,stmw:255,stcp:6,stps:0,stfa:0,stfz:0,ofsf:0,ofsu:0,f2p0:False,fnsp:False,fnfb:False,fsmp:False;n:type:ShaderForge.SFN_Final,id:0,x:34000,y:32640,varname:node_0,prsc:2|diff-322-OUT,spec-3-OUT,gloss-270-OUT,normal-2-RGB,transm-7-OUT,lwrap-6-OUT,clip-1-A,voffset-394-OUT;n:type:ShaderForge.SFN_Tex2d,id:1,x:33572,y:32631,ptovrint:False,ptlb:Diffuse,ptin:_Diffuse,varname:_Diffuse,prsc:2,glob:False,taghide:False,taghdr:False,tagprd:False,tagnsco:False,tagnrm:False,tex:66321cc856b03e245ac41ed8a53e0ecc,ntxv:0,isnm:False;n:type:ShaderForge.SFN_Tex2d,id:2,x:33572,y:32818,ptovrint:False,ptlb:Normal,ptin:_Normal,varname:_Normal,prsc:2,glob:False,taghide:False,taghdr:False,tagprd:False,tagnsco:False,tagnrm:False,tex:cb6c5165ed180c543be39ed70e72abc8,ntxv:3,isnm:True;n:type:ShaderForge.SFN_Vector1,id:3,x:33777,y:32641,varname:node_3,prsc:2,v1:0.2;n:type:ShaderForge.SFN_Vector3,id:6,x:33572,y:33075,varname:node_6,prsc:2,v1:0.3275862,v2:0.3275862,v3:0.2911878;n:type:ShaderForge.SFN_Vector3,id:7,x:33572,y:32976,varname:node_7,prsc:2,v1:0.2824138,v2:0.3137931,v3:0.1568965;n:type:ShaderForge.SFN_Vector1,id:270,x:33777,y:32701,varname:node_270,prsc:2,v1:0.4;n:type:ShaderForge.SFN_VertexColor,id:321,x:33330,y:32501,varname:node_321,prsc:2;n:type:ShaderForge.SFN_Multiply,id:322,x:33777,y:32508,varname:node_322,prsc:2|A-330-OUT,B-1-RGB;n:type:ShaderForge.SFN_Lerp,id:330,x:33572,y:32478,varname:node_330,prsc:2|A-331-OUT,B-337-OUT,T-321-B;n:type:ShaderForge.SFN_Vector1,id:331,x:33330,y:32356,varname:node_331,prsc:2,v1:1;n:type:ShaderForge.SFN_Vector3,id:337,x:33330,y:32410,varname:node_337,prsc:2,v1:0.9632353,v2:0.8224623,v3:0.03541304;n:type:ShaderForge.SFN_VertexColor,id:389,x:32886,y:33347,varname:node_389,prsc:2;n:type:ShaderForge.SFN_NormalVector,id:391,x:33073,y:33231,prsc:2,pt:False;n:type:ShaderForge.SFN_Time,id:392,x:33073,y:33586,varname:node_392,prsc:2;n:type:ShaderForge.SFN_Sin,id:393,x:33479,y:33548,varname:node_393,prsc:2|IN-413-OUT;n:type:ShaderForge.SFN_Multiply,id:394,x:33729,y:33420,cmnt:Wind animation,varname:node_394,prsc:2|A-562-OUT,B-389-R,C-393-OUT,D-403-OUT;n:type:ShaderForge.SFN_Vector1,id:403,x:33479,y:33699,varname:node_403,prsc:2,v1:0.016;n:type:ShaderForge.SFN_Add,id:413,x:33298,y:33548,varname:node_413,prsc:2|A-519-OUT,B-392-T;n:type:ShaderForge.SFN_Multiply,id:519,x:33073,y:33457,varname:node_519,prsc:2|A-389-B,B-520-OUT;n:type:ShaderForge.SFN_Pi,id:520,x:32919,y:33494,varname:node_520,prsc:2;n:type:ShaderForge.SFN_Add,id:561,x:33294,y:33171,varname:node_561,prsc:2|A-563-OUT,B-391-OUT;n:type:ShaderForge.SFN_Normalize,id:562,x:33479,y:33280,varname:node_562,prsc:2|IN-561-OUT;n:type:ShaderForge.SFN_Vector3,id:563,x:33073,y:33131,cmnt:Wind direction,varname:node_563,prsc:2,v1:1,v2:0.5,v3:0.5;proporder:1-2;pass:END;sub:END;*/ - -Shader "Shader Forge/Examples/Animated Vegetation" { - Properties { - _Diffuse ("Diffuse", 2D) = "white" {} - _Normal ("Normal", 2D) = "bump" {} - [HideInInspector]_Cutoff ("Alpha cutoff", Range(0,1)) = 0.5 - } - SubShader { - Tags { - "Queue"="AlphaTest" - "RenderType"="TransparentCutout" - } - Pass { - Name "FORWARD" - Tags { - "LightMode"="ForwardBase" - } - Cull Off - - - AlphaToMask On - CGPROGRAM - #pragma vertex vert - #pragma fragment frag - #define SHOULD_SAMPLE_SH ( defined (LIGHTMAP_OFF) && defined(DYNAMICLIGHTMAP_OFF) ) - #include "UnityCG.cginc" - #include "AutoLight.cginc" - #include "Lighting.cginc" - #include "UnityPBSLighting.cginc" - #include "UnityStandardBRDF.cginc" - #pragma multi_compile_fwdbase_fullshadows - #pragma multi_compile LIGHTMAP_OFF LIGHTMAP_ON - #pragma multi_compile DIRLIGHTMAP_OFF DIRLIGHTMAP_COMBINED DIRLIGHTMAP_SEPARATE - #pragma multi_compile DYNAMICLIGHTMAP_OFF DYNAMICLIGHTMAP_ON - #pragma multi_compile_fog - #pragma only_renderers d3d9 d3d11 glcore gles gles3 metal d3d11_9x xboxone ps4 psp2 n3ds wiiu - #pragma target 3.0 - uniform sampler2D _Diffuse; uniform float4 _Diffuse_ST; - uniform sampler2D _Normal; uniform float4 _Normal_ST; - struct VertexInput { - float4 vertex : POSITION; - float3 normal : NORMAL; - float4 tangent : TANGENT; - float2 texcoord0 : TEXCOORD0; - float2 texcoord1 : TEXCOORD1; - float2 texcoord2 : TEXCOORD2; - float4 vertexColor : COLOR; - }; - struct VertexOutput { - float4 pos : SV_POSITION; - float2 uv0 : TEXCOORD0; - float2 uv1 : TEXCOORD1; - float2 uv2 : TEXCOORD2; - float4 posWorld : TEXCOORD3; - float3 normalDir : TEXCOORD4; - float3 tangentDir : TEXCOORD5; - float3 bitangentDir : TEXCOORD6; - float4 vertexColor : COLOR; - LIGHTING_COORDS(7,8) - UNITY_FOG_COORDS(9) - #if defined(LIGHTMAP_ON) || defined(UNITY_SHOULD_SAMPLE_SH) - float4 ambientOrLightmapUV : TEXCOORD10; - #endif - }; - VertexOutput vert (VertexInput v) { - VertexOutput o = (VertexOutput)0; - o.uv0 = v.texcoord0; - o.uv1 = v.texcoord1; - o.uv2 = v.texcoord2; - o.vertexColor = v.vertexColor; - #ifdef LIGHTMAP_ON - o.ambientOrLightmapUV.xy = v.texcoord1.xy * unity_LightmapST.xy + unity_LightmapST.zw; - o.ambientOrLightmapUV.zw = 0; - #elif UNITY_SHOULD_SAMPLE_SH - #endif - #ifdef DYNAMICLIGHTMAP_ON - o.ambientOrLightmapUV.zw = v.texcoord2.xy * unity_DynamicLightmapST.xy + unity_DynamicLightmapST.zw; - #endif - o.normalDir = UnityObjectToWorldNormal(v.normal); - o.tangentDir = normalize( mul( unity_ObjectToWorld, float4( v.tangent.xyz, 0.0 ) ).xyz ); - o.bitangentDir = normalize(cross(o.normalDir, o.tangentDir) * v.tangent.w); - float4 node_392 = _Time; - v.vertex.xyz += (normalize((float3(1,0.5,0.5)+v.normal))*o.vertexColor.r*sin(((o.vertexColor.b*3.141592654)+node_392.g))*0.016); - o.posWorld = mul(unity_ObjectToWorld, v.vertex); - float3 lightColor = _LightColor0.rgb; - o.pos = UnityObjectToClipPos( v.vertex ); - UNITY_TRANSFER_FOG(o,o.pos); - TRANSFER_VERTEX_TO_FRAGMENT(o) - return o; - } - float4 frag(VertexOutput i, float facing : VFACE) : COLOR { - float isFrontFace = ( facing >= 0 ? 1 : 0 ); - float faceSign = ( facing >= 0 ? 1 : -1 ); - i.normalDir = normalize(i.normalDir); - i.normalDir *= faceSign; - float3x3 tangentTransform = float3x3( i.tangentDir, i.bitangentDir, i.normalDir); - float3 viewDirection = normalize(_WorldSpaceCameraPos.xyz - i.posWorld.xyz); - float3 _Normal_var = UnpackNormal(tex2D(_Normal,TRANSFORM_TEX(i.uv0, _Normal))); - float3 normalLocal = _Normal_var.rgb; - float3 normalDirection = normalize(mul( normalLocal, tangentTransform )); // Perturbed normals - float3 viewReflectDirection = reflect( -viewDirection, normalDirection ); - float4 _Diffuse_var = tex2D(_Diffuse,TRANSFORM_TEX(i.uv0, _Diffuse)); - clip(_Diffuse_var.a - 0.5); - float3 lightDirection = normalize(_WorldSpaceLightPos0.xyz); - float3 lightColor = _LightColor0.rgb; - float3 halfDirection = normalize(viewDirection+lightDirection); -////// Lighting: - UNITY_LIGHT_ATTENUATION(attenuation,i, i.posWorld.xyz); - float3 attenColor = attenuation * _LightColor0.xyz; -///////// Gloss: - float gloss = 0.4; - float specPow = exp2( gloss * 10.0 + 1.0 ); -/////// GI Data: - UnityLight light; - #ifdef LIGHTMAP_OFF - light.color = lightColor; - light.dir = lightDirection; - light.ndotl = LambertTerm (normalDirection, light.dir); - #else - light.color = half3(0.f, 0.f, 0.f); - light.ndotl = 0.0f; - light.dir = half3(0.f, 0.f, 0.f); - #endif - UnityGIInput d; - d.light = light; - d.worldPos = i.posWorld.xyz; - d.worldViewDir = viewDirection; - d.atten = attenuation; - #if defined(LIGHTMAP_ON) || defined(DYNAMICLIGHTMAP_ON) - d.ambient = 0; - d.lightmapUV = i.ambientOrLightmapUV; - #else - d.ambient = i.ambientOrLightmapUV; - #endif - Unity_GlossyEnvironmentData ugls_en_data; - ugls_en_data.roughness = 1.0 - gloss; - ugls_en_data.reflUVW = viewReflectDirection; - UnityGI gi = UnityGlobalIllumination(d, 1, normalDirection, ugls_en_data ); - lightDirection = gi.light.dir; - lightColor = gi.light.color; -////// Specular: - float NdotL = saturate(dot( normalDirection, lightDirection )); - float node_3 = 0.2; - float3 specularColor = float3(node_3,node_3,node_3); - float3 directSpecular = attenColor * pow(max(0,dot(halfDirection,normalDirection)),specPow)*specularColor; - float3 specular = directSpecular; -/////// Diffuse: - NdotL = dot( normalDirection, lightDirection ); - float3 w = float3(0.3275862,0.3275862,0.2911878)*0.5; // Light wrapping - float3 NdotLWrap = NdotL * ( 1.0 - w ); - float3 forwardLight = max(float3(0.0,0.0,0.0), NdotLWrap + w ); - float3 backLight = max(float3(0.0,0.0,0.0), -NdotLWrap + w ) * float3(0.2824138,0.3137931,0.1568965); - NdotL = max(0.0,dot( normalDirection, lightDirection )); - float3 directDiffuse = (forwardLight+backLight) * attenColor; - float3 indirectDiffuse = float3(0,0,0); - indirectDiffuse += gi.indirect.diffuse; - float node_331 = 1.0; - float3 diffuseColor = (lerp(float3(node_331,node_331,node_331),float3(0.9632353,0.8224623,0.03541304),i.vertexColor.b)*_Diffuse_var.rgb); - float3 diffuse = (directDiffuse + indirectDiffuse) * diffuseColor; -/// Final Color: - float3 finalColor = diffuse + specular; - fixed4 finalRGBA = fixed4(finalColor,(_Diffuse_var.a) * 2.0 - 1.0); - UNITY_APPLY_FOG(i.fogCoord, finalRGBA); - return finalRGBA; - } - ENDCG - } - Pass { - Name "FORWARD_DELTA" - Tags { - "LightMode"="ForwardAdd" - } - Blend One One - Cull Off - - - CGPROGRAM - #pragma vertex vert - #pragma fragment frag - #define SHOULD_SAMPLE_SH ( defined (LIGHTMAP_OFF) && defined(DYNAMICLIGHTMAP_OFF) ) - #include "UnityCG.cginc" - #include "AutoLight.cginc" - #include "Lighting.cginc" - #include "UnityPBSLighting.cginc" - #include "UnityStandardBRDF.cginc" - #pragma multi_compile_fwdadd_fullshadows - #pragma multi_compile LIGHTMAP_OFF LIGHTMAP_ON - #pragma multi_compile DIRLIGHTMAP_OFF DIRLIGHTMAP_COMBINED DIRLIGHTMAP_SEPARATE - #pragma multi_compile DYNAMICLIGHTMAP_OFF DYNAMICLIGHTMAP_ON - #pragma multi_compile_fog - #pragma only_renderers d3d9 d3d11 glcore gles gles3 metal d3d11_9x xboxone ps4 psp2 n3ds wiiu - #pragma target 3.0 - uniform sampler2D _Diffuse; uniform float4 _Diffuse_ST; - uniform sampler2D _Normal; uniform float4 _Normal_ST; - struct VertexInput { - float4 vertex : POSITION; - float3 normal : NORMAL; - float4 tangent : TANGENT; - float2 texcoord0 : TEXCOORD0; - float2 texcoord1 : TEXCOORD1; - float2 texcoord2 : TEXCOORD2; - float4 vertexColor : COLOR; - }; - struct VertexOutput { - float4 pos : SV_POSITION; - float2 uv0 : TEXCOORD0; - float2 uv1 : TEXCOORD1; - float2 uv2 : TEXCOORD2; - float4 posWorld : TEXCOORD3; - float3 normalDir : TEXCOORD4; - float3 tangentDir : TEXCOORD5; - float3 bitangentDir : TEXCOORD6; - float4 vertexColor : COLOR; - LIGHTING_COORDS(7,8) - UNITY_FOG_COORDS(9) - }; - VertexOutput vert (VertexInput v) { - VertexOutput o = (VertexOutput)0; - o.uv0 = v.texcoord0; - o.uv1 = v.texcoord1; - o.uv2 = v.texcoord2; - o.vertexColor = v.vertexColor; - o.normalDir = UnityObjectToWorldNormal(v.normal); - o.tangentDir = normalize( mul( unity_ObjectToWorld, float4( v.tangent.xyz, 0.0 ) ).xyz ); - o.bitangentDir = normalize(cross(o.normalDir, o.tangentDir) * v.tangent.w); - float4 node_392 = _Time; - v.vertex.xyz += (normalize((float3(1,0.5,0.5)+v.normal))*o.vertexColor.r*sin(((o.vertexColor.b*3.141592654)+node_392.g))*0.016); - o.posWorld = mul(unity_ObjectToWorld, v.vertex); - float3 lightColor = _LightColor0.rgb; - o.pos = UnityObjectToClipPos( v.vertex ); - UNITY_TRANSFER_FOG(o,o.pos); - TRANSFER_VERTEX_TO_FRAGMENT(o) - return o; - } - float4 frag(VertexOutput i, float facing : VFACE) : COLOR { - float isFrontFace = ( facing >= 0 ? 1 : 0 ); - float faceSign = ( facing >= 0 ? 1 : -1 ); - i.normalDir = normalize(i.normalDir); - i.normalDir *= faceSign; - float3x3 tangentTransform = float3x3( i.tangentDir, i.bitangentDir, i.normalDir); - float3 viewDirection = normalize(_WorldSpaceCameraPos.xyz - i.posWorld.xyz); - float3 _Normal_var = UnpackNormal(tex2D(_Normal,TRANSFORM_TEX(i.uv0, _Normal))); - float3 normalLocal = _Normal_var.rgb; - float3 normalDirection = normalize(mul( normalLocal, tangentTransform )); // Perturbed normals - float4 _Diffuse_var = tex2D(_Diffuse,TRANSFORM_TEX(i.uv0, _Diffuse)); - clip(_Diffuse_var.a - 0.5); - float3 lightDirection = normalize(lerp(_WorldSpaceLightPos0.xyz, _WorldSpaceLightPos0.xyz - i.posWorld.xyz,_WorldSpaceLightPos0.w)); - float3 lightColor = _LightColor0.rgb; - float3 halfDirection = normalize(viewDirection+lightDirection); -////// Lighting: - UNITY_LIGHT_ATTENUATION(attenuation,i, i.posWorld.xyz); - float3 attenColor = attenuation * _LightColor0.xyz; -///////// Gloss: - float gloss = 0.4; - float specPow = exp2( gloss * 10.0 + 1.0 ); -////// Specular: - float NdotL = saturate(dot( normalDirection, lightDirection )); - float node_3 = 0.2; - float3 specularColor = float3(node_3,node_3,node_3); - float3 directSpecular = attenColor * pow(max(0,dot(halfDirection,normalDirection)),specPow)*specularColor; - float3 specular = directSpecular; -/////// Diffuse: - NdotL = dot( normalDirection, lightDirection ); - float3 w = float3(0.3275862,0.3275862,0.2911878)*0.5; // Light wrapping - float3 NdotLWrap = NdotL * ( 1.0 - w ); - float3 forwardLight = max(float3(0.0,0.0,0.0), NdotLWrap + w ); - float3 backLight = max(float3(0.0,0.0,0.0), -NdotLWrap + w ) * float3(0.2824138,0.3137931,0.1568965); - NdotL = max(0.0,dot( normalDirection, lightDirection )); - float3 directDiffuse = (forwardLight+backLight) * attenColor; - float node_331 = 1.0; - float3 diffuseColor = (lerp(float3(node_331,node_331,node_331),float3(0.9632353,0.8224623,0.03541304),i.vertexColor.b)*_Diffuse_var.rgb); - float3 diffuse = directDiffuse * diffuseColor; -/// Final Color: - float3 finalColor = diffuse + specular; - fixed4 finalRGBA = fixed4(finalColor * 1,0); - UNITY_APPLY_FOG(i.fogCoord, finalRGBA); - return finalRGBA; - } - ENDCG - } - Pass { - Name "ShadowCaster" - Tags { - "LightMode"="ShadowCaster" - } - Offset 1, 1 - Cull Off - - CGPROGRAM - #pragma vertex vert - #pragma fragment frag - #define SHOULD_SAMPLE_SH ( defined (LIGHTMAP_OFF) && defined(DYNAMICLIGHTMAP_OFF) ) - #include "UnityCG.cginc" - #include "Lighting.cginc" - #include "UnityPBSLighting.cginc" - #include "UnityStandardBRDF.cginc" - #pragma fragmentoption ARB_precision_hint_fastest - #pragma multi_compile_shadowcaster - #pragma multi_compile LIGHTMAP_OFF LIGHTMAP_ON - #pragma multi_compile DIRLIGHTMAP_OFF DIRLIGHTMAP_COMBINED DIRLIGHTMAP_SEPARATE - #pragma multi_compile DYNAMICLIGHTMAP_OFF DYNAMICLIGHTMAP_ON - #pragma multi_compile_fog - #pragma only_renderers d3d9 d3d11 glcore gles gles3 metal d3d11_9x xboxone ps4 psp2 n3ds wiiu - #pragma target 3.0 - uniform sampler2D _Diffuse; uniform float4 _Diffuse_ST; - struct VertexInput { - float4 vertex : POSITION; - float3 normal : NORMAL; - float2 texcoord0 : TEXCOORD0; - float2 texcoord1 : TEXCOORD1; - float2 texcoord2 : TEXCOORD2; - float4 vertexColor : COLOR; - }; - struct VertexOutput { - V2F_SHADOW_CASTER; - float2 uv0 : TEXCOORD1; - float2 uv1 : TEXCOORD2; - float2 uv2 : TEXCOORD3; - float4 posWorld : TEXCOORD4; - float3 normalDir : TEXCOORD5; - float4 vertexColor : COLOR; - }; - VertexOutput vert (VertexInput v) { - VertexOutput o = (VertexOutput)0; - o.uv0 = v.texcoord0; - o.uv1 = v.texcoord1; - o.uv2 = v.texcoord2; - o.vertexColor = v.vertexColor; - o.normalDir = UnityObjectToWorldNormal(v.normal); - float4 node_392 = _Time; - v.vertex.xyz += (normalize((float3(1,0.5,0.5)+v.normal))*o.vertexColor.r*sin(((o.vertexColor.b*3.141592654)+node_392.g))*0.016); - o.posWorld = mul(unity_ObjectToWorld, v.vertex); - o.pos = UnityObjectToClipPos( v.vertex ); - TRANSFER_SHADOW_CASTER(o) - return o; - } - float4 frag(VertexOutput i, float facing : VFACE) : COLOR { - float isFrontFace = ( facing >= 0 ? 1 : 0 ); - float faceSign = ( facing >= 0 ? 1 : -1 ); - i.normalDir = normalize(i.normalDir); - i.normalDir *= faceSign; - float3 viewDirection = normalize(_WorldSpaceCameraPos.xyz - i.posWorld.xyz); - float3 normalDirection = i.normalDir; - float4 _Diffuse_var = tex2D(_Diffuse,TRANSFORM_TEX(i.uv0, _Diffuse)); - clip(_Diffuse_var.a - 0.5); - SHADOW_CASTER_FRAGMENT(i) - } - ENDCG - } - Pass { - Name "Meta" - Tags { - "LightMode"="Meta" - } - Cull Off - - CGPROGRAM - #pragma vertex vert - #pragma fragment frag - #define SHOULD_SAMPLE_SH ( defined (LIGHTMAP_OFF) && defined(DYNAMICLIGHTMAP_OFF) ) - #include "UnityCG.cginc" - #include "Lighting.cginc" - #include "UnityPBSLighting.cginc" - #include "UnityStandardBRDF.cginc" - #include "UnityMetaPass.cginc" - #pragma fragmentoption ARB_precision_hint_fastest - #pragma multi_compile_shadowcaster - #pragma multi_compile LIGHTMAP_OFF LIGHTMAP_ON - #pragma multi_compile DIRLIGHTMAP_OFF DIRLIGHTMAP_COMBINED DIRLIGHTMAP_SEPARATE - #pragma multi_compile DYNAMICLIGHTMAP_OFF DYNAMICLIGHTMAP_ON - #pragma multi_compile_fog - #pragma only_renderers d3d9 d3d11 glcore gles gles3 metal d3d11_9x xboxone ps4 psp2 n3ds wiiu - #pragma target 3.0 - uniform sampler2D _Diffuse; uniform float4 _Diffuse_ST; - struct VertexInput { - float4 vertex : POSITION; - float3 normal : NORMAL; - float2 texcoord0 : TEXCOORD0; - float2 texcoord1 : TEXCOORD1; - float2 texcoord2 : TEXCOORD2; - float4 vertexColor : COLOR; - }; - struct VertexOutput { - float4 pos : SV_POSITION; - float2 uv0 : TEXCOORD0; - float2 uv1 : TEXCOORD1; - float2 uv2 : TEXCOORD2; - float4 posWorld : TEXCOORD3; - float3 normalDir : TEXCOORD4; - float4 vertexColor : COLOR; - }; - VertexOutput vert (VertexInput v) { - VertexOutput o = (VertexOutput)0; - o.uv0 = v.texcoord0; - o.uv1 = v.texcoord1; - o.uv2 = v.texcoord2; - o.vertexColor = v.vertexColor; - o.normalDir = UnityObjectToWorldNormal(v.normal); - float4 node_392 = _Time; - v.vertex.xyz += (normalize((float3(1,0.5,0.5)+v.normal))*o.vertexColor.r*sin(((o.vertexColor.b*3.141592654)+node_392.g))*0.016); - o.posWorld = mul(unity_ObjectToWorld, v.vertex); - o.pos = UnityMetaVertexPosition(v.vertex, v.texcoord1.xy, v.texcoord2.xy, unity_LightmapST, unity_DynamicLightmapST ); - return o; - } - float4 frag(VertexOutput i, float facing : VFACE) : SV_Target { - float isFrontFace = ( facing >= 0 ? 1 : 0 ); - float faceSign = ( facing >= 0 ? 1 : -1 ); - i.normalDir = normalize(i.normalDir); - i.normalDir *= faceSign; - float3 viewDirection = normalize(_WorldSpaceCameraPos.xyz - i.posWorld.xyz); - float3 normalDirection = i.normalDir; - UnityMetaInput o; - UNITY_INITIALIZE_OUTPUT( UnityMetaInput, o ); - - o.Emission = 0; - - float node_331 = 1.0; - float4 _Diffuse_var = tex2D(_Diffuse,TRANSFORM_TEX(i.uv0, _Diffuse)); - float3 diffColor = (lerp(float3(node_331,node_331,node_331),float3(0.9632353,0.8224623,0.03541304),i.vertexColor.b)*_Diffuse_var.rgb); - float node_3 = 0.2; - float3 specColor = float3(node_3,node_3,node_3); - float roughness = 1.0 - 0.4; - o.Albedo = diffColor + specColor * roughness * roughness * 0.5; - - return UnityMetaFragment( o ); - } - ENDCG - } - } - FallBack "Transparent/Cutout/Diffuse" - CustomEditor "ShaderForgeMaterialInspector" -} diff --git a/Shader Forge/Assets/ShaderForge/Example Assets/Shaders/Vegetation.shader.meta b/Shader Forge/Assets/ShaderForge/Example Assets/Shaders/Vegetation.shader.meta deleted file mode 100644 index 2b099fb4..00000000 --- a/Shader Forge/Assets/ShaderForge/Example Assets/Shaders/Vegetation.shader.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: e17d9c256530145c39caf8efc8c94a16 -ShaderImporter: - externalObjects: {} - defaultTextures: - - _Diffuse: {fileID: 2800000, guid: 66321cc856b03e245ac41ed8a53e0ecc, type: 3} - - _Normal: {fileID: 2800000, guid: cb6c5165ed180c543be39ed70e72abc8, type: 3} - nonModifiableTextures: [] - userData: - assetBundleName: - assetBundleVariant: diff --git a/Shader Forge/Assets/ShaderForge/Example Assets/Shaders/VertexAnimation.mat b/Shader Forge/Assets/ShaderForge/Example Assets/Shaders/VertexAnimation.mat deleted file mode 100644 index 5aadb318..00000000 --- a/Shader Forge/Assets/ShaderForge/Example Assets/Shaders/VertexAnimation.mat +++ /dev/null @@ -1,97 +0,0 @@ -%YAML 1.1 -%TAG !u! tag:unity3d.com,2011: ---- !u!21 &2100000 -Material: - serializedVersion: 3 - m_ObjectHideFlags: 0 - m_PrefabParentObject: {fileID: 0} - m_PrefabInternal: {fileID: 0} - m_Name: VertexAnimation - m_Shader: {fileID: 4800000, guid: 6dedef75fd0484cdf8557f522ceaa8bf, type: 3} - m_ShaderKeywords: [] - m_CustomRenderQueue: -1 - m_SavedProperties: - serializedVersion: 2 - m_TexEnvs: - data: - first: - name: _Normals - second: - m_Texture: {fileID: 2800000, guid: bbab0a6f7bae9cf42bf057d8ee2755f6, type: 3} - m_Scale: {x: 16, y: 1} - m_Offset: {x: 0, y: 0} - data: - first: - name: _Diffuse - second: - m_Texture: {fileID: 2800000, guid: b66bceaf0cc0ace4e9bdc92f14bba709, type: 3} - m_Scale: {x: 16, y: 1} - m_Offset: {x: 0, y: 0} - data: - first: - name: _node72 - second: - m_Texture: {fileID: 0} - m_Scale: {x: 1, y: 1} - m_Offset: {x: 0, y: 0} - data: - first: - name: _node85 - second: - m_Texture: {fileID: 0} - m_Scale: {x: 1, y: 1} - m_Offset: {x: 0, y: 0} - data: - first: - name: _node108 - second: - m_Texture: {fileID: 0} - m_Scale: {x: 1, y: 1} - m_Offset: {x: 0, y: 0} - data: - first: - name: _InnerNormals - second: - m_Texture: {fileID: 2800000, guid: cf20bfced7e912046a9ce991a4d775ec, type: 3} - m_Scale: {x: 1, y: 1} - m_Offset: {x: 0, y: 0} - data: - first: - name: _node116 - second: - m_Texture: {fileID: 2800000, guid: 5fb7986dd6d0a8e4093ba82369dd6a4d, type: 3} - m_Scale: {x: 1, y: 1} - m_Offset: {x: 0, y: 0} - data: - first: - name: _node117 - second: - m_Texture: {fileID: 2800000, guid: 5fb7986dd6d0a8e4093ba82369dd6a4d, type: 3} - m_Scale: {x: 1, y: 1} - m_Offset: {x: 0, y: 0} - m_Floats: - data: - first: - name: _GlowIntensity - second: 1.79999995 - data: - first: - name: _BulgeShape - second: 5 - data: - first: - name: _BulgeScale - second: .200000003 - data: - first: - name: _Magnitude - second: .230769247 - data: - first: - name: _Sharpness - second: 2.61538434 - m_Colors: - data: - first: - name: _GlowColor - second: {r: 1, g: .239148095, b: .110294104, a: 1} diff --git a/Shader Forge/Assets/ShaderForge/Example Assets/Shaders/VertexAnimation.mat.meta b/Shader Forge/Assets/ShaderForge/Example Assets/Shaders/VertexAnimation.mat.meta deleted file mode 100644 index 74b11ae9..00000000 --- a/Shader Forge/Assets/ShaderForge/Example Assets/Shaders/VertexAnimation.mat.meta +++ /dev/null @@ -1,4 +0,0 @@ -fileFormatVersion: 2 -guid: 23fc898268709d346b696ab505c07656 -NativeFormatImporter: - userData: diff --git a/Shader Forge/Assets/ShaderForge/Example Assets/Shaders/VertexAnimation.shader b/Shader Forge/Assets/ShaderForge/Example Assets/Shaders/VertexAnimation.shader deleted file mode 100644 index f0fc2708..00000000 --- a/Shader Forge/Assets/ShaderForge/Example Assets/Shaders/VertexAnimation.shader +++ /dev/null @@ -1,437 +0,0 @@ -// Shader created with Shader Forge v1.38 -// Shader Forge (c) Freya Holmer - http://www.acegikmo.com/shaderforge/ -// Note: Manually altering this data may prevent you from opening it in Shader Forge -/*SF_DATA;ver:1.38;sub:START;pass:START;ps:flbk:,iptp:0,cusa:False,bamd:0,cgin:,lico:1,lgpr:1,limd:1,spmd:1,trmd:0,grmd:0,uamb:True,mssp:True,bkdf:True,hqlp:False,rprd:False,enco:False,rmgx:True,imps:True,rpth:0,vtps:0,hqsc:True,nrmq:1,nrsp:0,vomd:0,spxs:False,tesm:0,olmd:1,culm:0,bsrc:0,bdst:1,dpts:2,wrdp:True,dith:0,atcv:False,rfrpo:True,rfrpn:Refraction,coma:15,ufog:True,aust:True,igpj:False,qofs:0,qpre:1,rntp:1,fgom:False,fgoc:False,fgod:False,fgor:False,fgmd:0,fgcr:0.5,fgcg:0.5,fgcb:0.5,fgca:1,fgde:0.01,fgrn:0,fgrf:300,stcl:False,atwp:False,stva:128,stmr:255,stmw:255,stcp:6,stps:0,stfa:0,stfz:0,ofsf:0,ofsu:0,f2p0:False,fnsp:False,fnfb:False,fsmp:False;n:type:ShaderForge.SFN_Final,id:1,x:33430,y:32397,varname:node_1,prsc:2|diff-149-OUT,spec-4921-OUT,normal-4935-OUT,emission-166-OUT,transm-133-OUT,lwrap-133-OUT,voffset-140-OUT;n:type:ShaderForge.SFN_Subtract,id:18,x:32114,y:32340,varname:node_18,prsc:2|A-22-OUT,B-19-OUT;n:type:ShaderForge.SFN_Vector1,id:19,x:31935,y:32422,varname:node_19,prsc:2,v1:0.5;n:type:ShaderForge.SFN_Abs,id:21,x:32286,y:32340,varname:node_21,prsc:2|IN-18-OUT;n:type:ShaderForge.SFN_Frac,id:22,x:31935,y:32288,varname:node_22,prsc:2|IN-24-OUT;n:type:ShaderForge.SFN_Panner,id:23,x:31597,y:32288,varname:node_23,prsc:2,spu:0.25,spv:0|UVIN-5169-UVOUT;n:type:ShaderForge.SFN_ComponentMask,id:24,x:31764,y:32288,varname:node_24,prsc:2,cc1:0,cc2:-1,cc3:-1,cc4:-1|IN-23-UVOUT;n:type:ShaderForge.SFN_Multiply,id:25,x:32461,y:32390,cmnt:Triangle Wave,varname:node_25,prsc:2|A-21-OUT,B-26-OUT;n:type:ShaderForge.SFN_Vector1,id:26,x:32286,y:32476,varname:node_26,prsc:2,v1:2;n:type:ShaderForge.SFN_Power,id:133,x:32665,y:32453,cmnt:Panning gradient,varname:node_133,prsc:2|VAL-25-OUT,EXP-8547-OUT;n:type:ShaderForge.SFN_NormalVector,id:139,x:32892,y:32957,prsc:2,pt:False;n:type:ShaderForge.SFN_Multiply,id:140,x:33119,y:32787,varname:node_140,prsc:2|A-1924-OUT,B-142-OUT,C-139-OUT;n:type:ShaderForge.SFN_ValueProperty,id:142,x:32892,y:32789,ptovrint:False,ptlb:Bulge Scale,ptin:_BulgeScale,varname:_BulgeScale,prsc:2,glob:False,taghide:False,taghdr:False,tagprd:False,tagnsco:False,tagnrm:False,v1:0.2;n:type:ShaderForge.SFN_Lerp,id:149,x:33119,y:32115,varname:node_149,prsc:2|A-151-RGB,B-8608-OUT,T-133-OUT;n:type:ShaderForge.SFN_Lerp,id:150,x:32892,y:32285,varname:node_150,prsc:2|A-267-RGB,B-265-OUT,T-133-OUT;n:type:ShaderForge.SFN_Tex2d,id:151,x:32892,y:31949,ptovrint:False,ptlb:Diffuse,ptin:_Diffuse,varname:_Diffuse,prsc:2,glob:False,taghide:False,taghdr:False,tagprd:False,tagnsco:False,tagnrm:False,tex:b66bceaf0cc0ace4e9bdc92f14bba709,ntxv:0,isnm:False;n:type:ShaderForge.SFN_Multiply,id:166,x:33119,y:32619,cmnt:Glow,varname:node_166,prsc:2|A-168-RGB,B-8677-OUT,C-1924-OUT;n:type:ShaderForge.SFN_Color,id:168,x:32892,y:32453,ptovrint:False,ptlb:Glow Color,ptin:_GlowColor,varname:_GlowColor,prsc:2,glob:False,taghide:False,taghdr:False,tagprd:False,tagnsco:False,tagnrm:False,c1:1,c2:0.2391481,c3:0.1102941,c4:1;n:type:ShaderForge.SFN_Vector3,id:265,x:32665,y:32301,varname:node_265,prsc:2,v1:0,v2:0,v3:1;n:type:ShaderForge.SFN_Tex2d,id:267,x:32665,y:32133,ptovrint:False,ptlb:Normals,ptin:_Normals,varname:_Normals,prsc:2,glob:False,taghide:False,taghdr:False,tagprd:False,tagnsco:False,tagnrm:False,tex:bbab0a6f7bae9cf42bf057d8ee2755f6,ntxv:3,isnm:True;n:type:ShaderForge.SFN_Vector1,id:4921,x:33119,y:32283,varname:node_4921,prsc:2,v1:1;n:type:ShaderForge.SFN_Normalize,id:4935,x:33119,y:32451,varname:node_4935,prsc:2|IN-150-OUT;n:type:ShaderForge.SFN_ValueProperty,id:8547,x:32461,y:32537,ptovrint:False,ptlb:Bulge Shape,ptin:_BulgeShape,varname:_BulgeShape,prsc:2,glob:False,taghide:False,taghdr:False,tagprd:False,tagnsco:False,tagnrm:False,v1:5;n:type:ShaderForge.SFN_Vector1,id:8608,x:32892,y:32117,varname:node_8608,prsc:2,v1:0.1;n:type:ShaderForge.SFN_ValueProperty,id:8677,x:32892,y:32621,ptovrint:False,ptlb:Glow Intensity,ptin:_GlowIntensity,varname:_GlowIntensity,prsc:2,glob:False,taghide:False,taghdr:False,tagprd:False,tagnsco:False,tagnrm:False,v1:1.2;n:type:ShaderForge.SFN_TexCoord,id:5169,x:31434,y:32288,varname:node_5169,prsc:2,uv:0,uaff:False;n:type:ShaderForge.SFN_Relay,id:1924,x:32892,y:32697,varname:node_1924,prsc:2|IN-133-OUT;proporder:151-267-168-142-8547-8677;pass:END;sub:END;*/ - -Shader "Shader Forge/Examples/Vertex Animation" { - Properties { - _Diffuse ("Diffuse", 2D) = "white" {} - _Normals ("Normals", 2D) = "bump" {} - _GlowColor ("Glow Color", Color) = (1,0.2391481,0.1102941,1) - _BulgeScale ("Bulge Scale", Float ) = 0.2 - _BulgeShape ("Bulge Shape", Float ) = 5 - _GlowIntensity ("Glow Intensity", Float ) = 1.2 - } - SubShader { - Tags { - "RenderType"="Opaque" - } - Pass { - Name "FORWARD" - Tags { - "LightMode"="ForwardBase" - } - - - CGPROGRAM - #pragma vertex vert - #pragma fragment frag - #define SHOULD_SAMPLE_SH ( defined (LIGHTMAP_OFF) && defined(DYNAMICLIGHTMAP_OFF) ) - #include "UnityCG.cginc" - #include "AutoLight.cginc" - #include "Lighting.cginc" - #include "UnityPBSLighting.cginc" - #include "UnityStandardBRDF.cginc" - #pragma multi_compile_fwdbase_fullshadows - #pragma multi_compile LIGHTMAP_OFF LIGHTMAP_ON - #pragma multi_compile DIRLIGHTMAP_OFF DIRLIGHTMAP_COMBINED DIRLIGHTMAP_SEPARATE - #pragma multi_compile DYNAMICLIGHTMAP_OFF DYNAMICLIGHTMAP_ON - #pragma multi_compile_fog - #pragma only_renderers d3d9 d3d11 glcore gles gles3 metal d3d11_9x xboxone ps4 psp2 n3ds wiiu - #pragma target 3.0 - uniform float _BulgeScale; - uniform sampler2D _Diffuse; uniform float4 _Diffuse_ST; - uniform float4 _GlowColor; - uniform sampler2D _Normals; uniform float4 _Normals_ST; - uniform float _BulgeShape; - uniform float _GlowIntensity; - struct VertexInput { - float4 vertex : POSITION; - float3 normal : NORMAL; - float4 tangent : TANGENT; - float2 texcoord0 : TEXCOORD0; - float2 texcoord1 : TEXCOORD1; - float2 texcoord2 : TEXCOORD2; - }; - struct VertexOutput { - float4 pos : SV_POSITION; - float2 uv0 : TEXCOORD0; - float2 uv1 : TEXCOORD1; - float2 uv2 : TEXCOORD2; - float4 posWorld : TEXCOORD3; - float3 normalDir : TEXCOORD4; - float3 tangentDir : TEXCOORD5; - float3 bitangentDir : TEXCOORD6; - LIGHTING_COORDS(7,8) - UNITY_FOG_COORDS(9) - #if defined(LIGHTMAP_ON) || defined(UNITY_SHOULD_SAMPLE_SH) - float4 ambientOrLightmapUV : TEXCOORD10; - #endif - }; - VertexOutput vert (VertexInput v) { - VertexOutput o = (VertexOutput)0; - o.uv0 = v.texcoord0; - o.uv1 = v.texcoord1; - o.uv2 = v.texcoord2; - #ifdef LIGHTMAP_ON - o.ambientOrLightmapUV.xy = v.texcoord1.xy * unity_LightmapST.xy + unity_LightmapST.zw; - o.ambientOrLightmapUV.zw = 0; - #elif UNITY_SHOULD_SAMPLE_SH - #endif - #ifdef DYNAMICLIGHTMAP_ON - o.ambientOrLightmapUV.zw = v.texcoord2.xy * unity_DynamicLightmapST.xy + unity_DynamicLightmapST.zw; - #endif - o.normalDir = UnityObjectToWorldNormal(v.normal); - o.tangentDir = normalize( mul( unity_ObjectToWorld, float4( v.tangent.xyz, 0.0 ) ).xyz ); - o.bitangentDir = normalize(cross(o.normalDir, o.tangentDir) * v.tangent.w); - float4 node_7291 = _Time; - float node_133 = pow((abs((frac((o.uv0+node_7291.g*float2(0.25,0)).r)-0.5))*2.0),_BulgeShape); // Panning gradient - float node_1924 = node_133; - v.vertex.xyz += (node_1924*_BulgeScale*v.normal); - o.posWorld = mul(unity_ObjectToWorld, v.vertex); - float3 lightColor = _LightColor0.rgb; - o.pos = UnityObjectToClipPos( v.vertex ); - UNITY_TRANSFER_FOG(o,o.pos); - TRANSFER_VERTEX_TO_FRAGMENT(o) - return o; - } - float4 frag(VertexOutput i) : COLOR { - i.normalDir = normalize(i.normalDir); - float3x3 tangentTransform = float3x3( i.tangentDir, i.bitangentDir, i.normalDir); - float3 viewDirection = normalize(_WorldSpaceCameraPos.xyz - i.posWorld.xyz); - float3 _Normals_var = UnpackNormal(tex2D(_Normals,TRANSFORM_TEX(i.uv0, _Normals))); - float4 node_7291 = _Time; - float node_133 = pow((abs((frac((i.uv0+node_7291.g*float2(0.25,0)).r)-0.5))*2.0),_BulgeShape); // Panning gradient - float3 normalLocal = normalize(lerp(_Normals_var.rgb,float3(0,0,1),node_133)); - float3 normalDirection = normalize(mul( normalLocal, tangentTransform )); // Perturbed normals - float3 viewReflectDirection = reflect( -viewDirection, normalDirection ); - float3 lightDirection = normalize(_WorldSpaceLightPos0.xyz); - float3 lightColor = _LightColor0.rgb; - float3 halfDirection = normalize(viewDirection+lightDirection); -////// Lighting: - UNITY_LIGHT_ATTENUATION(attenuation,i, i.posWorld.xyz); - float3 attenColor = attenuation * _LightColor0.xyz; -///////// Gloss: - float gloss = 0.5; - float specPow = exp2( gloss * 10.0 + 1.0 ); -/////// GI Data: - UnityLight light; - #ifdef LIGHTMAP_OFF - light.color = lightColor; - light.dir = lightDirection; - light.ndotl = LambertTerm (normalDirection, light.dir); - #else - light.color = half3(0.f, 0.f, 0.f); - light.ndotl = 0.0f; - light.dir = half3(0.f, 0.f, 0.f); - #endif - UnityGIInput d; - d.light = light; - d.worldPos = i.posWorld.xyz; - d.worldViewDir = viewDirection; - d.atten = attenuation; - #if defined(LIGHTMAP_ON) || defined(DYNAMICLIGHTMAP_ON) - d.ambient = 0; - d.lightmapUV = i.ambientOrLightmapUV; - #else - d.ambient = i.ambientOrLightmapUV; - #endif - Unity_GlossyEnvironmentData ugls_en_data; - ugls_en_data.roughness = 1.0 - gloss; - ugls_en_data.reflUVW = viewReflectDirection; - UnityGI gi = UnityGlobalIllumination(d, 1, normalDirection, ugls_en_data ); - lightDirection = gi.light.dir; - lightColor = gi.light.color; -////// Specular: - float NdotL = saturate(dot( normalDirection, lightDirection )); - float node_4921 = 1.0; - float3 specularColor = float3(node_4921,node_4921,node_4921); - float3 directSpecular = attenColor * pow(max(0,dot(halfDirection,normalDirection)),specPow)*specularColor; - float3 specular = directSpecular; -/////// Diffuse: - NdotL = dot( normalDirection, lightDirection ); - float3 w = float3(node_133,node_133,node_133)*0.5; // Light wrapping - float3 NdotLWrap = NdotL * ( 1.0 - w ); - float3 forwardLight = max(float3(0.0,0.0,0.0), NdotLWrap + w ); - float3 backLight = max(float3(0.0,0.0,0.0), -NdotLWrap + w ) * float3(node_133,node_133,node_133); - NdotL = max(0.0,dot( normalDirection, lightDirection )); - float3 directDiffuse = (forwardLight+backLight) * attenColor; - float3 indirectDiffuse = float3(0,0,0); - indirectDiffuse += gi.indirect.diffuse; - float4 _Diffuse_var = tex2D(_Diffuse,TRANSFORM_TEX(i.uv0, _Diffuse)); - float node_8608 = 0.1; - float3 diffuseColor = lerp(_Diffuse_var.rgb,float3(node_8608,node_8608,node_8608),node_133); - float3 diffuse = (directDiffuse + indirectDiffuse) * diffuseColor; -////// Emissive: - float node_1924 = node_133; - float3 emissive = (_GlowColor.rgb*_GlowIntensity*node_1924); -/// Final Color: - float3 finalColor = diffuse + specular + emissive; - fixed4 finalRGBA = fixed4(finalColor,1); - UNITY_APPLY_FOG(i.fogCoord, finalRGBA); - return finalRGBA; - } - ENDCG - } - Pass { - Name "FORWARD_DELTA" - Tags { - "LightMode"="ForwardAdd" - } - Blend One One - - - CGPROGRAM - #pragma vertex vert - #pragma fragment frag - #define SHOULD_SAMPLE_SH ( defined (LIGHTMAP_OFF) && defined(DYNAMICLIGHTMAP_OFF) ) - #include "UnityCG.cginc" - #include "AutoLight.cginc" - #include "Lighting.cginc" - #include "UnityPBSLighting.cginc" - #include "UnityStandardBRDF.cginc" - #pragma multi_compile_fwdadd_fullshadows - #pragma multi_compile LIGHTMAP_OFF LIGHTMAP_ON - #pragma multi_compile DIRLIGHTMAP_OFF DIRLIGHTMAP_COMBINED DIRLIGHTMAP_SEPARATE - #pragma multi_compile DYNAMICLIGHTMAP_OFF DYNAMICLIGHTMAP_ON - #pragma multi_compile_fog - #pragma only_renderers d3d9 d3d11 glcore gles gles3 metal d3d11_9x xboxone ps4 psp2 n3ds wiiu - #pragma target 3.0 - uniform float _BulgeScale; - uniform sampler2D _Diffuse; uniform float4 _Diffuse_ST; - uniform float4 _GlowColor; - uniform sampler2D _Normals; uniform float4 _Normals_ST; - uniform float _BulgeShape; - uniform float _GlowIntensity; - struct VertexInput { - float4 vertex : POSITION; - float3 normal : NORMAL; - float4 tangent : TANGENT; - float2 texcoord0 : TEXCOORD0; - float2 texcoord1 : TEXCOORD1; - float2 texcoord2 : TEXCOORD2; - }; - struct VertexOutput { - float4 pos : SV_POSITION; - float2 uv0 : TEXCOORD0; - float2 uv1 : TEXCOORD1; - float2 uv2 : TEXCOORD2; - float4 posWorld : TEXCOORD3; - float3 normalDir : TEXCOORD4; - float3 tangentDir : TEXCOORD5; - float3 bitangentDir : TEXCOORD6; - LIGHTING_COORDS(7,8) - UNITY_FOG_COORDS(9) - }; - VertexOutput vert (VertexInput v) { - VertexOutput o = (VertexOutput)0; - o.uv0 = v.texcoord0; - o.uv1 = v.texcoord1; - o.uv2 = v.texcoord2; - o.normalDir = UnityObjectToWorldNormal(v.normal); - o.tangentDir = normalize( mul( unity_ObjectToWorld, float4( v.tangent.xyz, 0.0 ) ).xyz ); - o.bitangentDir = normalize(cross(o.normalDir, o.tangentDir) * v.tangent.w); - float4 node_3933 = _Time; - float node_133 = pow((abs((frac((o.uv0+node_3933.g*float2(0.25,0)).r)-0.5))*2.0),_BulgeShape); // Panning gradient - float node_1924 = node_133; - v.vertex.xyz += (node_1924*_BulgeScale*v.normal); - o.posWorld = mul(unity_ObjectToWorld, v.vertex); - float3 lightColor = _LightColor0.rgb; - o.pos = UnityObjectToClipPos( v.vertex ); - UNITY_TRANSFER_FOG(o,o.pos); - TRANSFER_VERTEX_TO_FRAGMENT(o) - return o; - } - float4 frag(VertexOutput i) : COLOR { - i.normalDir = normalize(i.normalDir); - float3x3 tangentTransform = float3x3( i.tangentDir, i.bitangentDir, i.normalDir); - float3 viewDirection = normalize(_WorldSpaceCameraPos.xyz - i.posWorld.xyz); - float3 _Normals_var = UnpackNormal(tex2D(_Normals,TRANSFORM_TEX(i.uv0, _Normals))); - float4 node_3933 = _Time; - float node_133 = pow((abs((frac((i.uv0+node_3933.g*float2(0.25,0)).r)-0.5))*2.0),_BulgeShape); // Panning gradient - float3 normalLocal = normalize(lerp(_Normals_var.rgb,float3(0,0,1),node_133)); - float3 normalDirection = normalize(mul( normalLocal, tangentTransform )); // Perturbed normals - float3 lightDirection = normalize(lerp(_WorldSpaceLightPos0.xyz, _WorldSpaceLightPos0.xyz - i.posWorld.xyz,_WorldSpaceLightPos0.w)); - float3 lightColor = _LightColor0.rgb; - float3 halfDirection = normalize(viewDirection+lightDirection); -////// Lighting: - UNITY_LIGHT_ATTENUATION(attenuation,i, i.posWorld.xyz); - float3 attenColor = attenuation * _LightColor0.xyz; -///////// Gloss: - float gloss = 0.5; - float specPow = exp2( gloss * 10.0 + 1.0 ); -////// Specular: - float NdotL = saturate(dot( normalDirection, lightDirection )); - float node_4921 = 1.0; - float3 specularColor = float3(node_4921,node_4921,node_4921); - float3 directSpecular = attenColor * pow(max(0,dot(halfDirection,normalDirection)),specPow)*specularColor; - float3 specular = directSpecular; -/////// Diffuse: - NdotL = dot( normalDirection, lightDirection ); - float3 w = float3(node_133,node_133,node_133)*0.5; // Light wrapping - float3 NdotLWrap = NdotL * ( 1.0 - w ); - float3 forwardLight = max(float3(0.0,0.0,0.0), NdotLWrap + w ); - float3 backLight = max(float3(0.0,0.0,0.0), -NdotLWrap + w ) * float3(node_133,node_133,node_133); - NdotL = max(0.0,dot( normalDirection, lightDirection )); - float3 directDiffuse = (forwardLight+backLight) * attenColor; - float4 _Diffuse_var = tex2D(_Diffuse,TRANSFORM_TEX(i.uv0, _Diffuse)); - float node_8608 = 0.1; - float3 diffuseColor = lerp(_Diffuse_var.rgb,float3(node_8608,node_8608,node_8608),node_133); - float3 diffuse = directDiffuse * diffuseColor; -/// Final Color: - float3 finalColor = diffuse + specular; - fixed4 finalRGBA = fixed4(finalColor * 1,0); - UNITY_APPLY_FOG(i.fogCoord, finalRGBA); - return finalRGBA; - } - ENDCG - } - Pass { - Name "ShadowCaster" - Tags { - "LightMode"="ShadowCaster" - } - Offset 1, 1 - Cull Back - - CGPROGRAM - #pragma vertex vert - #pragma fragment frag - #define SHOULD_SAMPLE_SH ( defined (LIGHTMAP_OFF) && defined(DYNAMICLIGHTMAP_OFF) ) - #include "UnityCG.cginc" - #include "Lighting.cginc" - #include "UnityPBSLighting.cginc" - #include "UnityStandardBRDF.cginc" - #pragma fragmentoption ARB_precision_hint_fastest - #pragma multi_compile_shadowcaster - #pragma multi_compile LIGHTMAP_OFF LIGHTMAP_ON - #pragma multi_compile DIRLIGHTMAP_OFF DIRLIGHTMAP_COMBINED DIRLIGHTMAP_SEPARATE - #pragma multi_compile DYNAMICLIGHTMAP_OFF DYNAMICLIGHTMAP_ON - #pragma multi_compile_fog - #pragma only_renderers d3d9 d3d11 glcore gles gles3 metal d3d11_9x xboxone ps4 psp2 n3ds wiiu - #pragma target 3.0 - uniform float _BulgeScale; - uniform float _BulgeShape; - struct VertexInput { - float4 vertex : POSITION; - float3 normal : NORMAL; - float2 texcoord0 : TEXCOORD0; - float2 texcoord1 : TEXCOORD1; - float2 texcoord2 : TEXCOORD2; - }; - struct VertexOutput { - V2F_SHADOW_CASTER; - float2 uv0 : TEXCOORD1; - float2 uv1 : TEXCOORD2; - float2 uv2 : TEXCOORD3; - float4 posWorld : TEXCOORD4; - float3 normalDir : TEXCOORD5; - }; - VertexOutput vert (VertexInput v) { - VertexOutput o = (VertexOutput)0; - o.uv0 = v.texcoord0; - o.uv1 = v.texcoord1; - o.uv2 = v.texcoord2; - o.normalDir = UnityObjectToWorldNormal(v.normal); - float4 node_2313 = _Time; - float node_133 = pow((abs((frac((o.uv0+node_2313.g*float2(0.25,0)).r)-0.5))*2.0),_BulgeShape); // Panning gradient - float node_1924 = node_133; - v.vertex.xyz += (node_1924*_BulgeScale*v.normal); - o.posWorld = mul(unity_ObjectToWorld, v.vertex); - o.pos = UnityObjectToClipPos( v.vertex ); - TRANSFER_SHADOW_CASTER(o) - return o; - } - float4 frag(VertexOutput i) : COLOR { - i.normalDir = normalize(i.normalDir); - float3 viewDirection = normalize(_WorldSpaceCameraPos.xyz - i.posWorld.xyz); - float3 normalDirection = i.normalDir; - SHADOW_CASTER_FRAGMENT(i) - } - ENDCG - } - Pass { - Name "Meta" - Tags { - "LightMode"="Meta" - } - Cull Off - - CGPROGRAM - #pragma vertex vert - #pragma fragment frag - #define SHOULD_SAMPLE_SH ( defined (LIGHTMAP_OFF) && defined(DYNAMICLIGHTMAP_OFF) ) - #include "UnityCG.cginc" - #include "Lighting.cginc" - #include "UnityPBSLighting.cginc" - #include "UnityStandardBRDF.cginc" - #include "UnityMetaPass.cginc" - #pragma fragmentoption ARB_precision_hint_fastest - #pragma multi_compile_shadowcaster - #pragma multi_compile LIGHTMAP_OFF LIGHTMAP_ON - #pragma multi_compile DIRLIGHTMAP_OFF DIRLIGHTMAP_COMBINED DIRLIGHTMAP_SEPARATE - #pragma multi_compile DYNAMICLIGHTMAP_OFF DYNAMICLIGHTMAP_ON - #pragma multi_compile_fog - #pragma only_renderers d3d9 d3d11 glcore gles gles3 metal d3d11_9x xboxone ps4 psp2 n3ds wiiu - #pragma target 3.0 - uniform float _BulgeScale; - uniform sampler2D _Diffuse; uniform float4 _Diffuse_ST; - uniform float4 _GlowColor; - uniform float _BulgeShape; - uniform float _GlowIntensity; - struct VertexInput { - float4 vertex : POSITION; - float3 normal : NORMAL; - float2 texcoord0 : TEXCOORD0; - float2 texcoord1 : TEXCOORD1; - float2 texcoord2 : TEXCOORD2; - }; - struct VertexOutput { - float4 pos : SV_POSITION; - float2 uv0 : TEXCOORD0; - float2 uv1 : TEXCOORD1; - float2 uv2 : TEXCOORD2; - float4 posWorld : TEXCOORD3; - float3 normalDir : TEXCOORD4; - }; - VertexOutput vert (VertexInput v) { - VertexOutput o = (VertexOutput)0; - o.uv0 = v.texcoord0; - o.uv1 = v.texcoord1; - o.uv2 = v.texcoord2; - o.normalDir = UnityObjectToWorldNormal(v.normal); - float4 node_6916 = _Time; - float node_133 = pow((abs((frac((o.uv0+node_6916.g*float2(0.25,0)).r)-0.5))*2.0),_BulgeShape); // Panning gradient - float node_1924 = node_133; - v.vertex.xyz += (node_1924*_BulgeScale*v.normal); - o.posWorld = mul(unity_ObjectToWorld, v.vertex); - o.pos = UnityMetaVertexPosition(v.vertex, v.texcoord1.xy, v.texcoord2.xy, unity_LightmapST, unity_DynamicLightmapST ); - return o; - } - float4 frag(VertexOutput i) : SV_Target { - i.normalDir = normalize(i.normalDir); - float3 viewDirection = normalize(_WorldSpaceCameraPos.xyz - i.posWorld.xyz); - float3 normalDirection = i.normalDir; - UnityMetaInput o; - UNITY_INITIALIZE_OUTPUT( UnityMetaInput, o ); - - float4 node_6916 = _Time; - float node_133 = pow((abs((frac((i.uv0+node_6916.g*float2(0.25,0)).r)-0.5))*2.0),_BulgeShape); // Panning gradient - float node_1924 = node_133; - o.Emission = (_GlowColor.rgb*_GlowIntensity*node_1924); - - float4 _Diffuse_var = tex2D(_Diffuse,TRANSFORM_TEX(i.uv0, _Diffuse)); - float node_8608 = 0.1; - float3 diffColor = lerp(_Diffuse_var.rgb,float3(node_8608,node_8608,node_8608),node_133); - float node_4921 = 1.0; - float3 specColor = float3(node_4921,node_4921,node_4921); - o.Albedo = diffColor + specColor * 0.125; // No gloss connected. Assume it's 0.5 - - return UnityMetaFragment( o ); - } - ENDCG - } - } - FallBack "Diffuse" - CustomEditor "ShaderForgeMaterialInspector" -} diff --git a/Shader Forge/Assets/ShaderForge/Example Assets/Shaders/VertexAnimation.shader.meta b/Shader Forge/Assets/ShaderForge/Example Assets/Shaders/VertexAnimation.shader.meta deleted file mode 100644 index 7b1e8a12..00000000 --- a/Shader Forge/Assets/ShaderForge/Example Assets/Shaders/VertexAnimation.shader.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 6dedef75fd0484cdf8557f522ceaa8bf -ShaderImporter: - externalObjects: {} - defaultTextures: - - _Diffuse: {fileID: 2800000, guid: b66bceaf0cc0ace4e9bdc92f14bba709, type: 3} - - _Normals: {fileID: 2800000, guid: bbab0a6f7bae9cf42bf057d8ee2755f6, type: 3} - nonModifiableTextures: [] - userData: - assetBundleName: - assetBundleVariant: diff --git a/Shader Forge/Assets/ShaderForge/Example Assets/Shaders/VertexAnimation_blue.mat b/Shader Forge/Assets/ShaderForge/Example Assets/Shaders/VertexAnimation_blue.mat deleted file mode 100644 index 008bf587..00000000 --- a/Shader Forge/Assets/ShaderForge/Example Assets/Shaders/VertexAnimation_blue.mat +++ /dev/null @@ -1,97 +0,0 @@ -%YAML 1.1 -%TAG !u! tag:unity3d.com,2011: ---- !u!21 &2100000 -Material: - serializedVersion: 3 - m_ObjectHideFlags: 0 - m_PrefabParentObject: {fileID: 0} - m_PrefabInternal: {fileID: 0} - m_Name: VertexAnimation_blue - m_Shader: {fileID: 4800000, guid: 6dedef75fd0484cdf8557f522ceaa8bf, type: 3} - m_ShaderKeywords: [] - m_CustomRenderQueue: -1 - m_SavedProperties: - serializedVersion: 2 - m_TexEnvs: - data: - first: - name: _Normals - second: - m_Texture: {fileID: 2800000, guid: bbab0a6f7bae9cf42bf057d8ee2755f6, type: 3} - m_Scale: {x: 16, y: 1} - m_Offset: {x: 0, y: 0} - data: - first: - name: _Diffuse - second: - m_Texture: {fileID: 2800000, guid: b66bceaf0cc0ace4e9bdc92f14bba709, type: 3} - m_Scale: {x: 16, y: 1} - m_Offset: {x: 0, y: 0} - data: - first: - name: _node72 - second: - m_Texture: {fileID: 0} - m_Scale: {x: 1, y: 1} - m_Offset: {x: 0, y: 0} - data: - first: - name: _node85 - second: - m_Texture: {fileID: 0} - m_Scale: {x: 1, y: 1} - m_Offset: {x: 0, y: 0} - data: - first: - name: _node108 - second: - m_Texture: {fileID: 0} - m_Scale: {x: 1, y: 1} - m_Offset: {x: 0, y: 0} - data: - first: - name: _InnerNormals - second: - m_Texture: {fileID: 2800000, guid: cf20bfced7e912046a9ce991a4d775ec, type: 3} - m_Scale: {x: 1, y: 1} - m_Offset: {x: 0, y: 0} - data: - first: - name: _node116 - second: - m_Texture: {fileID: 2800000, guid: 5fb7986dd6d0a8e4093ba82369dd6a4d, type: 3} - m_Scale: {x: 1, y: 1} - m_Offset: {x: 0, y: 0} - data: - first: - name: _node117 - second: - m_Texture: {fileID: 2800000, guid: 5fb7986dd6d0a8e4093ba82369dd6a4d, type: 3} - m_Scale: {x: 1, y: 1} - m_Offset: {x: 0, y: 0} - m_Floats: - data: - first: - name: _GlowIntensity - second: 8.51000023 - data: - first: - name: _BulgeShape - second: 5 - data: - first: - name: _BulgeScale - second: .200000003 - data: - first: - name: _Magnitude - second: .230769247 - data: - first: - name: _Sharpness - second: 2.61538434 - m_Colors: - data: - first: - name: _GlowColor - second: {r: .110294104, g: .410953432, b: 1, a: 1} diff --git a/Shader Forge/Assets/ShaderForge/Example Assets/Shaders/VertexAnimation_blue.mat.meta b/Shader Forge/Assets/ShaderForge/Example Assets/Shaders/VertexAnimation_blue.mat.meta deleted file mode 100644 index 51f81369..00000000 --- a/Shader Forge/Assets/ShaderForge/Example Assets/Shaders/VertexAnimation_blue.mat.meta +++ /dev/null @@ -1,4 +0,0 @@ -fileFormatVersion: 2 -guid: 4a36ae71b48f14d6fb2eae31da682a32 -NativeFormatImporter: - userData: diff --git a/Shader Forge/Assets/ShaderForge/Example Assets/Shaders/VertexColorRounding.mat b/Shader Forge/Assets/ShaderForge/Example Assets/Shaders/VertexColorRounding.mat deleted file mode 100644 index 74170e8e..00000000 --- a/Shader Forge/Assets/ShaderForge/Example Assets/Shaders/VertexColorRounding.mat +++ /dev/null @@ -1,21 +0,0 @@ -%YAML 1.1 -%TAG !u! tag:unity3d.com,2011: ---- !u!21 &2100000 -Material: - serializedVersion: 3 - m_ObjectHideFlags: 0 - m_PrefabParentObject: {fileID: 0} - m_PrefabInternal: {fileID: 0} - m_Name: VertexColorRounding - m_Shader: {fileID: 4800000, guid: 49227bca0885f49f9898c7a9ba353bc1, type: 3} - m_ShaderKeywords: [] - m_CustomRenderQueue: -1 - m_SavedProperties: - serializedVersion: 2 - m_TexEnvs: {} - m_Floats: - data: - first: - name: _Divisions - second: .523076952 - m_Colors: {} diff --git a/Shader Forge/Assets/ShaderForge/Example Assets/Shaders/VertexColorRounding.mat.meta b/Shader Forge/Assets/ShaderForge/Example Assets/Shaders/VertexColorRounding.mat.meta deleted file mode 100644 index 5e4ddc07..00000000 --- a/Shader Forge/Assets/ShaderForge/Example Assets/Shaders/VertexColorRounding.mat.meta +++ /dev/null @@ -1,4 +0,0 @@ -fileFormatVersion: 2 -guid: 5d9b849895144ea4983f3b1f36bbacae -NativeFormatImporter: - userData: diff --git a/Shader Forge/Assets/ShaderForge/Example Assets/Shaders/VertexColorRounding.shader b/Shader Forge/Assets/ShaderForge/Example Assets/Shaders/VertexColorRounding.shader deleted file mode 100644 index 830c1a0a..00000000 --- a/Shader Forge/Assets/ShaderForge/Example Assets/Shaders/VertexColorRounding.shader +++ /dev/null @@ -1,103 +0,0 @@ -// Shader created with Shader Forge v1.38 -// Shader Forge (c) Freya Holmer - http://www.acegikmo.com/shaderforge/ -// Note: Manually altering this data may prevent you from opening it in Shader Forge -/*SF_DATA;ver:1.38;sub:START;pass:START;ps:flbk:,iptp:0,cusa:False,bamd:0,cgin:,lico:0,lgpr:1,limd:0,spmd:1,trmd:0,grmd:0,uamb:False,mssp:True,bkdf:True,hqlp:False,rprd:False,enco:False,rmgx:True,imps:True,rpth:0,vtps:0,hqsc:True,nrmq:1,nrsp:0,vomd:0,spxs:False,tesm:0,olmd:1,culm:0,bsrc:0,bdst:1,dpts:2,wrdp:True,dith:0,atcv:False,rfrpo:True,rfrpn:Refraction,coma:15,ufog:False,aust:True,igpj:False,qofs:0,qpre:1,rntp:1,fgom:False,fgoc:False,fgod:False,fgor:False,fgmd:0,fgcr:0.5,fgcg:0.5,fgcb:0.5,fgca:1,fgde:0.01,fgrn:0,fgrf:300,stcl:False,atwp:False,stva:128,stmr:255,stmw:255,stcp:6,stps:0,stfa:0,stfz:0,ofsf:0,ofsu:0,f2p0:False,fnsp:False,fnfb:False,fsmp:False;n:type:ShaderForge.SFN_Final,id:0,x:34043,y:32815,varname:node_0,prsc:2|emission-585-OUT;n:type:ShaderForge.SFN_VertexColor,id:4,x:33627,y:32845,varname:node_4,prsc:2;n:type:ShaderForge.SFN_Slider,id:38,x:33095,y:32967,ptovrint:False,ptlb:Divisions,ptin:_Divisions,varname:_Divisions,prsc:2,glob:False,taghide:False,taghdr:False,tagprd:False,tagnsco:False,tagnrm:False,min:0,cur:0.5639098,max:1;n:type:ShaderForge.SFN_Power,id:42,x:33443,y:32990,varname:node_42,prsc:2|VAL-38-OUT,EXP-44-OUT;n:type:ShaderForge.SFN_Vector1,id:44,x:33252,y:33034,varname:node_44,prsc:2,v1:2;n:type:ShaderForge.SFN_ConstantLerp,id:137,x:33627,y:32990,varname:node_137,prsc:2,a:0.5,b:12|IN-42-OUT;n:type:ShaderForge.SFN_Posterize,id:585,x:33845,y:32915,varname:node_585,prsc:2|IN-4-RGB,STPS-137-OUT;proporder:38;pass:END;sub:END;*/ - -Shader "Shader Forge/Examples/Vertex Color Rounding" { - Properties { - _Divisions ("Divisions", Range(0, 1)) = 0.5639098 - } - SubShader { - Tags { - "RenderType"="Opaque" - } - Pass { - Name "FORWARD" - Tags { - "LightMode"="ForwardBase" - } - - - CGPROGRAM - #pragma vertex vert - #pragma fragment frag - #include "UnityCG.cginc" - #pragma multi_compile_fwdbase_fullshadows - #pragma only_renderers d3d9 d3d11 glcore gles gles3 metal d3d11_9x xboxone ps4 psp2 n3ds wiiu - #pragma target 3.0 - uniform float _Divisions; - struct VertexInput { - float4 vertex : POSITION; - float4 vertexColor : COLOR; - }; - struct VertexOutput { - float4 pos : SV_POSITION; - float4 vertexColor : COLOR; - }; - VertexOutput vert (VertexInput v) { - VertexOutput o = (VertexOutput)0; - o.vertexColor = v.vertexColor; - o.pos = UnityObjectToClipPos( v.vertex ); - return o; - } - float4 frag(VertexOutput i) : COLOR { -////// Lighting: -////// Emissive: - float node_137 = lerp(0.5,12,pow(_Divisions,2.0)); - float3 emissive = floor(i.vertexColor.rgb * node_137) / (node_137 - 1); - float3 finalColor = emissive; - return fixed4(finalColor,1); - } - ENDCG - } - Pass { - Name "Meta" - Tags { - "LightMode"="Meta" - } - Cull Off - - CGPROGRAM - #pragma vertex vert - #pragma fragment frag - #include "UnityCG.cginc" - #include "UnityMetaPass.cginc" - #pragma fragmentoption ARB_precision_hint_fastest - #pragma multi_compile_shadowcaster - #pragma only_renderers d3d9 d3d11 glcore gles gles3 metal d3d11_9x xboxone ps4 psp2 n3ds wiiu - #pragma target 3.0 - uniform float _Divisions; - struct VertexInput { - float4 vertex : POSITION; - float2 texcoord1 : TEXCOORD1; - float2 texcoord2 : TEXCOORD2; - float4 vertexColor : COLOR; - }; - struct VertexOutput { - float4 pos : SV_POSITION; - float4 vertexColor : COLOR; - }; - VertexOutput vert (VertexInput v) { - VertexOutput o = (VertexOutput)0; - o.vertexColor = v.vertexColor; - o.pos = UnityMetaVertexPosition(v.vertex, v.texcoord1.xy, v.texcoord2.xy, unity_LightmapST, unity_DynamicLightmapST ); - return o; - } - float4 frag(VertexOutput i) : SV_Target { - UnityMetaInput o; - UNITY_INITIALIZE_OUTPUT( UnityMetaInput, o ); - - float node_137 = lerp(0.5,12,pow(_Divisions,2.0)); - o.Emission = floor(i.vertexColor.rgb * node_137) / (node_137 - 1); - - float3 diffColor = float3(0,0,0); - o.Albedo = diffColor; - - return UnityMetaFragment( o ); - } - ENDCG - } - } - FallBack "Diffuse" - CustomEditor "ShaderForgeMaterialInspector" -} diff --git a/Shader Forge/Assets/ShaderForge/Example Assets/Shaders/VertexColorRounding.shader.meta b/Shader Forge/Assets/ShaderForge/Example Assets/Shaders/VertexColorRounding.shader.meta deleted file mode 100644 index 72ea7569..00000000 --- a/Shader Forge/Assets/ShaderForge/Example Assets/Shaders/VertexColorRounding.shader.meta +++ /dev/null @@ -1,9 +0,0 @@ -fileFormatVersion: 2 -guid: 49227bca0885f49f9898c7a9ba353bc1 -ShaderImporter: - externalObjects: {} - defaultTextures: [] - nonModifiableTextures: [] - userData: - assetBundleName: - assetBundleVariant: diff --git a/Shader Forge/Assets/ShaderForge/Example Assets/Textures.meta b/Shader Forge/Assets/ShaderForge/Example Assets/Textures.meta deleted file mode 100644 index fdc6ce7c..00000000 --- a/Shader Forge/Assets/ShaderForge/Example Assets/Textures.meta +++ /dev/null @@ -1,5 +0,0 @@ -fileFormatVersion: 2 -guid: 8b42b5734d3d1bb4d969021d0ce7d016 -folderAsset: yes -DefaultImporter: - userData: diff --git a/Shader Forge/Assets/ShaderForge/Example Assets/Textures/sf_alpha_circle.png b/Shader Forge/Assets/ShaderForge/Example Assets/Textures/sf_alpha_circle.png deleted file mode 100644 index c409d5220de37c3afbe9708f77e54c7ed8910ea5..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 32947 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

>l--sPKZAW2jAB4+DZ2L)%ir9V8Gz0n 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 h6R?>$Gtd9TzYwhrh%6@4 zjBGZOyvZC&41L~ja=3@w1A zmU#jz#>0%Dd+UBUrROW0#oL>7e!*d!6NOm}&!BYG1sK>De)d2I=-gF(+~{K7_9)vBF`tMk1^SUzFNo(G)M4M%6DAiffzqI$xe){7cc@!z4k9XNh0iNY6KqX5^*198MH9lM1jC1`;c!9H1Dy~= z9A+ljc<#ybnR|TqJ*}*lXKS70)IP-`8RB?>#0Z360)c2++8x%J8L%dBB~qOt4u%3m z(dPXA7E@~(71IvE_o86?+PrL%-0wMv;wIrePrJ~m-l9Rf;|NXW_t)%&*vBW;+j6A4 zc6$kqf{y_!KhS7ob*f!HyLhB`RTX4SvOdxjo(_VU+2*x6Q4=WVO(r$jrFalz*Oa6R z97d$&tRb*G`8$U2a^gU@Wesp1LO#N%C-US;Nby8AYY(h zyv*~XoMCVwT4rQX=l)rLu@~3H6=iLS%(dD`iUmf!;zvU#9@g!>G9RA-6uY>7L+J4C zB8Nx2**~e@Lg(y={|WAF`{(sT^rT#eQ(*l zUeT8{X-;jEk7uUCVRYuZfF$qzB_rJ2^4$Q>KZLOqnwR$NA4vC)=qd?{l|g)h7GEVhP&uQ zCr9P}ndiJ^u5QQZJIXtj?8U8)*(3Cg!|?Qtn%aNJyEy}^Tr%tKwgl=9T=PD98gvpk zm&U)}@6V zQym0~-1aOnKr3vh!uX2{=lqZW{Fj|pR?aM|EGbS_2G`%wJ0y}^ld&UjzsgY_Ncrnj zajcQ*9_Z<@6>9#yd-JLJ2agX0^_hBQSB2)<*X2$9AD5$WP)zx9n(GN?zsUasVDH26 diff --git a/Shader Forge/Assets/ShaderForge/Example Assets/Textures/sf_alpha_circle_02.png.meta b/Shader Forge/Assets/ShaderForge/Example Assets/Textures/sf_alpha_circle_02.png.meta deleted file mode 100644 index 00c178da..00000000 --- a/Shader Forge/Assets/ShaderForge/Example Assets/Textures/sf_alpha_circle_02.png.meta +++ /dev/null @@ -1,45 +0,0 @@ -fileFormatVersion: 2 -guid: 6a985dfcd1d3ca94e9753748ed65c697 -TextureImporter: - serializedVersion: 2 - mipmaps: - mipMapMode: 0 - enableMipMap: 1 - linearTexture: 0 - correctGamma: 0 - fadeOut: 0 - borderMipMap: 0 - mipMapFadeDistanceStart: 1 - mipMapFadeDistanceEnd: 3 - bumpmap: - convertToNormalMap: 0 - externalNormalMap: 0 - heightScale: .25 - normalMapFilter: 0 - isReadable: 0 - grayScaleToAlpha: 0 - generateCubemap: 0 - seamlessCubemap: 0 - textureFormat: -1 - maxTextureSize: 512 - textureSettings: - filterMode: 2 - aniso: -1 - mipBias: -1 - wrapMode: -1 - nPOTScale: 1 - lightmap: 0 - compressionQuality: 50 - spriteMode: 0 - spriteExtrude: 1 - spriteMeshType: 1 - alignment: 0 - spritePivot: {x: .5, y: .5} - spritePixelsToUnits: 100 - alphaIsTransparency: 0 - textureType: -1 - buildTargetSettings: [] - spriteSheet: - sprites: [] - spritePackingTag: - userData: diff --git a/Shader Forge/Assets/ShaderForge/Example Assets/Textures/sf_conc_floor_01_d.tga b/Shader Forge/Assets/ShaderForge/Example Assets/Textures/sf_conc_floor_01_d.tga deleted file mode 100644 index f7429473eea80f35f1c80b55c96e6fe129db98ad..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 4194348 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

SKc z9PvYuKyvHjFRp$1?#EXyeR=!AjnA*$eSi#)o|f+MDfIp1;VCMAV2Y#~o@YCtH4H%m zlESPi-9AQ1fCF2Yph~L?eB)sn0J+lUqsRS|23~`$NwRcvhN<39Z9F=!96Wh~8R}Ey2t5O*`vSQa zPr+t;V)mq-t?WF1gIv%z*{vsUv15Lfs6GBVQaybNt_;Fvy<7Ig>TaZRx`Wzmqqy~C z2aMuf_{4S!wZkeGFdeY=Hnz@Rm$Cap9dVHbqB22KdIHd*M#={-QKwhKm>v3|<90zS z>)JYd;|`=t#vUS5B`_t-$X$Scx9B;1{!KWzdfQEKY~Jz%)m0@o6Q$`(!P$ zdb|QaMh?HvES{SJSfqJdd?TTD=D_iEg<<24La-PEFgOCwU@Wuw*gr5bYi5enZrlr? zv%X2dAMZm3ryc#f8#-_|SmYLsJ+9^HeH!Qp3=Dx8h~RZ62Anp`OO#7og&x`^XS}or zuW$k$RI73K#ji1AtGSW=Vgn--Udgxvfps=3=EGpGAn$Nf?Sf_)_cSs>i_pK#4Yl-+ z&u$!^N<5*g7CoEG4KKLAbd-=-lhCSW>)iirY433%uyPy)N6G_Uu`gITabd4y#ta<% zSr_`fb%i&P;|)xcmWQS(gsZn(NBYMWz~Y(hX&GAVX2{&Y`YSpRzR+~Hxvve(xrxNa z6J$Te>K?ZxxjQurU-TsA$)j|&w-vgb+hV!?7L}v?a*-~*L}Q3P9U7hc*$0;&{dVc2#vSIQCOE{kezamXhxKoLZ z(>&sJQwC2igv^I92AW{9K*wi^YN2;kL)XP6iS!Hp;@&)FEB#&5q{|;%zVi;e$v?aH zp#6gnuHL)cJ4SxU6zK=9-fbm59GI7akrBlEmSw{yMClc zvNu;NmX2TM?fLB_*q#yeXc1d>7els)eO~0SxQd4s=y$<_aVZU`LglB#Imrro5+RQ-%g6;)|gXE%!MoWI_6;t71jIyc@(S8%z760auLA& zJoK|`#oec?8fP*MhE@joT6y?6V){@agxOdK`Z+I{A|7+F;1zwl7$pojxNb9?zDXpuC>`+C=L9sVl}F~A_<#mr%#f3y))v?!c^+40VhNO32Raf0 zWZ8&}z65`fqY=Qbs6Ku93l;K(1c_6@FWtGr52oga9V*v^r232IIQ<^RJrj zjxBOKpg|r3dw=LwQ+GFV5DDNDaLj=;WZgM|zz`In{*vQ@LTkM)!F&U{{{-5%vKZ_g zFe_n&v_)B9EpotIVdBqR_c6`0mF`*iITw+WMaFkT-+uIl4xa83&afHqkH+BV=|-;Z z&4%8IPwM>1c?$mutY^0{V{hWBJ$G+458s9UANBw~abT9i)JHbd7?7H!=CBQOggQ$y zq;%)qM3&YBkE{(kAUDoWhbd65YXraqOqhh0pdPah9r6Rz@bsy{|He)!i#DNzb<_$E zIbAHwXux01E<@TGPZ}|MygRb|-<~Y|3o_vSGkr|M?vSYg7Dgj>Z zX>boGXpoQMa3G@AgT7)5V_N?hdc6rSpr)`>n8Nu!!B%;}77PwU^D%<`&p7sKBLY*r z4~)zn%!0bG=j_B;*p{k2evn!_{S+REKfvAd2SmF1k9#HkLic!7R^kf0)R+$Ds3?@mI(EBDi*slLJwh%Is_)z1d}Qt zP{|x3mn|a95En<0XE<`FePH&%0Fj5nSu;AdAph)Uvu<#n8|WIINwstimxt$=J7dej zCkk`;I|#aeqj0AF0e#MY$2s^f;ljcH14iP1!!!H0nDhS4-s|7|O%4N3FjFq-Vhd|1 zTcogM&ik#M%Hio{)e_gJ@5c~hjKVcQi)CBl8?98C!$FqW9eoQtD**yr%zneU^@GZH zzy14FvB49i$U$=0*hfxG%tvI3Ef4zVHT}~xy)9C8sv_&2o<)HVy=A6${(S{CQ88aT z&B79xz`j0Wixi{ir4Xln?z!IFDgVi5*JZc*<}7S|!tYLRVPC!(ac1{J*!u^e|MsCj zaaE398^KcL-|ZZx-fSDBU2h%aZPCGXrv5IlGtF)DUnYj@0w+cSsJ$n zdv41FUFjGg$^BrCq*1%%aQ+vNQCkV5H`j0;l>vFlaWwW!eRgT|uO`6ph@p8+BZni8 zWm5(gtV_wLBUX15VZ3$$^FhL#|>YSVyenP|=uVb89 zkq{Y5?y|rn^yc=|9`HHyJI}P>v8nTWFQm}%ut{tM8@o$+Ah%(toW3<9pGgbe9%8W( z$)2g{k)5Mo*?FRgmiBO5tVz-H)MZy}cyt)x9Z>N3FG7=#oTNnkj+{f!Nyg8m$n4>| z50}A}I!RQ4k%VjsCVB;yJ5ggm2f%=~WqFuDpJd1#1k`v$@OTN<(CR!S9dlx>ea@Gx zLGyb?0ncL*p1?WmA;A$`pMyPhHog9sn5jLUa3?p0pdac<6l-lj$K412?K1c&e}eh; z?+Y}(Kcol@KLjJ?M{T{6?;sQGdU^L{53)u^z-OB<2Fhb|H0gjq;~lRYJX_3fp5S8* zPvG2}^knzu0;MC|{j0O_^+z)=zyIs;RP9Ma{{-cOk-_nInN-eulM}>uJG=Vc@9Q7_ zyt8}c+VmWwnaPs&Q|ZDHCQm*oQWz)amKgn4Z!~pWz1P~;+%q=W(NCO%_6uBpnXGj9 z0{iv2>FVtk)i8l(!fe2aKxjWSfKl`tVcgw8{MoUZJM}@3ZUN^-i+~+f_28+HuQV@y z{^fnbwR>IE1)ffVWre(JY*ELM8=cs1_;H5$rl=w>bYKy4awm)ZH2iWAuzG#ib;|+i=pFJ}_<*%KN7Mwahb@|~xuMra=3v>2oQ{yT&N%X>Q6nF~ z(*Hbr^z1FPxCdEy;`6IVU$0>2wSv!K4VvOLF$Q9oYt+!6?8P>Ywt~4@1^n_ne1C`E?eXF^(27;A!i;%Lsitv7*PwN(rnb)4k&RLYuPN)y zfg|S2`JB{_;Ce&H;63oHI=jaygZTR-c;mC<^Xvuq>^Ye4qIB8z7q=dP zl=B+0#TQA8g(2En^CL6G1@D(0@Do|<;2isd%eUx_T|@ZFO3uTVzxE;P!4B<{13()G z*eJH$i|-J%cA|s6LSTqi7yF5{zUf(7JBcA}nOo*H&XG7xGYg!?o}rm08co>7U+sKEqdV?r~ubfO(%2U?4lVXlCS28OqxyMr1e` zu?#dMO54z%*Rv(ou>Pzl!TDAfcb@4G94JSQC-U7+#+2HX?^imbjcvozSKtA^+%>voV&{DpR5YjOVHtpR=&If59tm z9+9xf8~Oa+U^nvZ#?GF-SqkRXiO_cpd6VUizVU^Y&e7%0hyBD6sz67cTo%cY+2_Gb zD(OmWK#P;C^Eb+vpOlcV5Mjwp+WTD-5~1E_um|JD#-4F=a^*M!UFRz1k$8`{%h2Ly zkzJZzWQkMm z`DPGv94|atUOW$8ESa6I)T#wO3KKkp7VKB;@Y^C2K4k}+Krd8Vp+WT+pgp$1Luf;9 zV%9ig4ud=Dg(WFeK6&d#Mz|$Y*>_mnX|u)_K@=Zax_D6r52FCO!{vt7;b9E;rY4uz zv`?=!34|J_t$O+j2CY&IwNg~&$$$ZqPQf3aL7$sSBX1Snd4Cl<7--hv^{!|zn^j;p z!@tuxyg0BxpNF1f2|L1BcxGnGCvT>aHQLudMZxNgg*`2=Ta27Pc*K{WL7|EbA>_cx z=J1>>LRUTwUce|_Je7#`!A5wne;48CzzruzLFSN}+a?f*%!s z{^KxMAKqwj3(}@ttrjdNi7QP9i(}4}+ZsdgP~!(z?tk>&r5iu}^m@}fpImKx|BG8K zUt(_CvCNVUJ!l^yT)EqW!&K?_m5<6oOJW_`$X$D8>kv$DWXK*Iptsw`^IhQ@!+G?% zITW!8Xf{J&Tt~17_cIJ(AXZ-h+jneP;;9tKRn>sUs|Pn67N2z~G6R5BNs}>49%<~K zd)U=C+0uq=*XDlW7%~Co1|~_fy%Ut>F_MtqOQdOyfs7CLL=sHXBJ?{Y=!wdXc&&na zF0XbZaw|J$d2=WmNw#5Z)Syy;2!RVHTW zB1B1($HBq}sxTqI-yxAM${+|)Acsc|ji#8V4~rzW6xQDB@>K0yqHrczn2SR%;Kc5< z1W8Ang8qVRjTT8vxoHu4N{T00#ay7whJKTt-#CFsw=@BdRv-K^O|vxdmHw%vOCwX{ zFQ=E-H*p@cqr~X!8J)k29d*my*5UDG0ak#nlw4v8>G|4#6-7VtMYDdGn31jEx5~|a zygJ7ocxUVqt;YzaqzTW53EDp+_PGZ5d^Hd&snK64z)BWDe*v3%6q&4>u>F+i@FgsR z*|msgg#hosaJF{dj(hIQ_ddP(=>kJ`KUz8I6B;6eI`s26YY5ma&OqBa3(v@`ExJBK zl{yJVe}!lWtxjTh2X8~6&KaM;Gc}_3uZ+85)uF+0Vh8Gt0c4wvK$kQCu45neNZr`| zbog_-&4K*xEtNg>;lMcQ2UqU4|8HYU0_+Kme~SEpAL6ec5lEuY=) zEr@P)jL~k7FK`gXGe-niRR8C{ZI@SJPED(^h~`?tUT z>;F^Z$^T!N0sW7S(>MPUUblbY>3shckfi?uI;?+))gJvlICQ^;Hua@1wQ>x<&$>5O z4x+!%K~AhC(v?QMT*l5Nrh%cbJK!ULe@kjd{a7D#yJxuu3|*+shU_y6>#;m9{a1F@mXaLfh1)>m&euyo!rGJ9|aCBK9uqOF@y`K+Xh-5)zQGq!Lc1+1iSNn{; zvn>5IOX-~A8e?GY7BpBI!vln@s{N`x5Lqz;)FQ?M2o_Q$UOXsc&y>ZCwN%`EvR>YN zyt()Mmz(jmlMUzxR$)3QL)V;B*l=lj5^?lBapcQKFfT>sZpjuc!f)t^n$fFT(5qNv z<^ZhkFY~}^r?58+<6ZDOBiS&H~GSp>C zt-quI)UVDJRX}S6%u`W}{4O#2colR2dQ)T#tJWinBT++-m(>863KZOyA-;ZWSU-CW zz2zgh(U;=FN5zJoQLwiElxqu>DcITKXbaB4cd&$c0Rz@yl-BVj2>r?Nl|y9ORv0XE zoCanK4f`~DsB%DqP-qVC*#y4I84OC6u!CI=myhaRsAVvum%+ED7dKC-(5cMV^-YFg zhTzC;&)BmEMC|^j!8#iQ$fp+?wBGF2MOS9y>;bOHFOYTeLm)SQk3g6IV2&pFPeaqR zAKre@`>xs^zW4Ii|1gY9`Z4IN$34l-2{0E&abAsM&W0JIa{~VR3Ft}ZQ5P@Z%$n8s zkdat9m^*m-a{^{V%>&cakB0h2e=;~Y{FBkK$)64kj=tN|J@`p;$KY3BfVD7~(t$-1 zdyK*o6IeV2k;N5_eR}2QAaM9&jc8o%wG7c`sRH2)0*$fkbk0&`PWTtyg9NhuZtIA< z&b$kj4r^epuYgsML2s4Ayg7mJ9v|kz4$Rt&(C_qIvrU!g|cmkp}+;2AYq9$lwwW#Ifd~Hw$S&alU13qTq zyx7|QGBg5{0-}7Qj_9%&1`zYqnK4b<&G54urc6fmM zV84E`l=i?`a12Mg)Acur;|6i?5!Ba5uV;cV&Ur0v6DHhdEF*0AHj9 zF90)+yn&;1Yw%(i0+|(iI9G88Gwbm9RK3VW@F-nbA3j4c?`r6lpJX@A-emDSrCgb6 zHno0Ggg&JJ4I2K+u4K0!SK(=>qUfnYh*L%OTotC;0%mB5(!rB3c%a6c?W3Y=ts|EZ5ueu%vP6%=xy?i9E)OFW94_le7vPd!=mME1&<9@NetiUA!YOLR zGp53R1m5>4H2hD+X8$>k9IQkVyX@m$)76rmbC2Ql)Q zL;|HlG(OLy-EJLT!2g6rUq1()^c1-EPl-Um2{p#x4I~@ zY|$0=otDA5P0X>kDMC%<=7a81Yv1&q&YgXMEab0|`T7_d(XF;2V(PumzX}ZyDVb%d zxjae|uTo^rE#yrfDjcyFXy|?p9?dT`!P0l|?)(C};a_1n|8uY<-oVTLU3g{pJAJtH z79hs2aSuO5*4PvH%pajoKF~YkTkb>|OIiei*n(y36m#IUm%N3YH9XfP+$Z4DMN`gj zE}^#iqR@zj(I5J;!}4RF7J%R0r}1Q6nEgAz+wj06=CX%ZEK+?CxtejiD_L=XJ!0YN zB38L0<3v5|fgZsHACkLr{48|-?O(#W``8^RZ=0khhl(jRs&~&{>lId?1fHULeu)O} zpAu)46#1PhU`AA?=&CYVI{|LAAmuwULa{x`Mz}jOS~(UZHjcT_Khkmc({cB+upedH z6J;uZz4M0P8o?M`>tEz5ZeP0b@bmV8`Rlk7n(>_UEDBB7L9OwM`_CoXP#IbBaRFIm z5FzJQiT$bySWg*h5Jg=V<4;#KTCm0dw~(QplVTUaGWjFqokw3UvQ)wG2fc)T@Lu|d zNrJJ$-o?!7_Q}BK*P9x_)9HurYXVssi-7nFSSma6NjGEQAf~mBc%r!ZD1Y?qo3z{% zu#YdY&PMaDi_J`vQB7O)%mPD;VUL(4XY+`_D+>p~gF$2am1p5v%hW z0PZTL1eRz5^?JhKNhgzQySPqYWw7{*V(${deloIo_#_6;Df-ov7r6^QYiP}lotq6v zjk>?ohM9p!<%qhyrDJbu_oc@ktD2}HjYgn%nBY@#!oO~sSb~K)TJdkc{>#kH+rJ8P z6;=~wg3##~Z17<5VhB5uoQWuLy-Zw-xcA>MZ!MIt1 z&Z>YJS_w5w5zC!C21}Jd<#g2&trjftwE}#iMPyfJ>*G0a0E6gvooZK9gI-STOmA|* zpIn$1nFld@cmU|zW$YZ@yL_|xCm(+G;GKq^sgH5ye0B9+%Y#4p;Bq%IMrJxDX@a&1 zniFSD84T*3{ii=a#@_49iVzS(Z0!I!xx1ml-n!J5${{!tT>fwjeP9TB`k+2s@QbZ+ zuPI#dKnHGOz=I${<{mz9T|Mgs=dTtl0Rhf`2H1LpTV2y_f~Cb~+Hhy{k3P84-aIfj zJ~+d|yWwC__-cOp=%R8-YQ?-fk-JM7BPw_2tXhtChJ3c1O-%N(oOIW?LT2 z%Y4`;1?o8?e2vqA|GVD*JLJ}&o-4Cz6y|`=8p*4T?x;v@4Y0`q9UFcoF=}{;SmzW$ zGbceFl^85)5#JaTgLN&&nIxi#O?)tt`N+%?iA~VidU8_iGbGrn3-H|Y!Mqiif&~FQ z>m2CY=q#lJIai4psXa9fPs$*?-Cbbl4P$OI(K|^VSmLS2(c3PvG+~y^krhG4A;b5m z#JefwsT@+|6Dif+q7<_Z2{g4*eIUz6ox&h-)k_oL#z+lbDpTpEG7VA88_G;*V<;wH znikA%v9OPao?(Rn9q=;V`)QuaIRxEJ-|Eg;(=0{uRnHXj+Qa_28{MOeO~+5)^qbtF zmg^7N8(X_4$Cz?EC$e&&fuGa>_K6Klf0tPA!AR*WQrfu)+QJ2=!4bAAjczkn>(mQO zVFNgXM*LbPc$v}v=d_r=D#0m~VJ?K)FeXsc^ECoF4z$8_U6?&r~WIlCL zg@)S=JqtH+mvxo)FUFv48Ntt=Kz%c#u*YZ6TP(&_4oT2FETRV{a`lmEg*`ikZ1ZvC zB#%S$fc)^%sN9|&!!C1>FV}YmN_!)&+&(-Ofj%&3`Y?;_)A&klraM}G zw*KG4ufPBQP`~~QOYQxysG0tIAhY?;*!TWt?4tg%di3Jk^2XsA^sboC#p2UskpuQY z+X6>!?4P0Nt~`G87u&l}zuOLH%PR<*E=Mb;>nZRG@!l12#}&=d)wT5Y(@prJYw#1Vq37GE z9KPBq?LOWr9lqWG$DkZ7?c~wBrsd{PNC0#!_B~;LVKV?729CgsAoRC3EB$^j2W~%PM^W@vV znt@JttZ$k*iD4!qva(m#geGFoFvSJiN{7DipCgGAC z*+wz}&aWk|UW9yGRdVAIayyDz{CbA`))RYp?Zi>seQt-x%Ir(8>F~~B1a)Y{{$F2O zKUTm;B7ojN2(Ew_eT5)i*kpo}3ItGe3HoRl3-fpO_6ZkFwx_&((8xVsa&wq)l-HeTA^h(PH5$wN6P>_5pmuU zeCciAu{@(HUttV8{9&A@y@{3MKGZ4g@X+1Ee)o#np7`l9Q}z1|ox}fTm`MHsg`@t_ zy@&npDNKQe%;xEUFHs!D>}*`=NKM$YI|Oh+$7adG0jb_I2Co7U`{g<8APMND7Bi_^{*Xtx;R8g>Y{~!EBCrvl|}VcXoK_?Zw?E^?i>To=7Ef^)$GP zmEcdwp+OX)KBvtxWivNh`e!=Yx^_^; z{2_0x-xmpA}#{gIk9_)W?ETzY!@)qoo z+L;Z#jULanMqmi&v*kl`JX^(>q-+EH(B+L+y|Lo9FO=W%z)$Mb_+oBY^ZmBaO27%7 z1opHZ_#lGddnTaUNWpKBhAuOYuW&`<&z1206;TsZ&{tK^=VHFIn@MjRMPPg~Hun;w zgL4c8dNeDt5HOSVB&kAe2ETvgte5xjc^`Q25=2Uy=gG?MQ?Q?&=>3^9`1wwFTF)Ld zf4hV8tWD&-ZgQ2bW0A=RF2KqKv<2rV%bwuue8QJoo>q3w-(;$L&r}xAsViDI38X6f z24{E!JNy*_OH(_=6rE!i={B$5Tp(It*ptoI@I zWY+^GVgLwduiP1SIpQl$%sWi@v!EoeNl+7Wpj%o5JZNN^CTd4EZX5V5y-Ss7+j^#{$bpuir!ceJ++-kseZoxfhlRC3j%s!wsHJkBX*iqxSF;@g8{c#w4c3g>@Hq67!IcVtE3cGZH zrR0O*A;Anp|Ma`R2CHOKK~?!>@FZ(7+feaz5jixISQ+oipyLvI^M|myuk!4XEE8wq zGDT!2vvfe=o8t8xz-46P%t5m<4Q}2bc$N1XIz}$H^iJGZ;%eH_?~Gthx=_~+!=DGa ze+JUXijXGK^EfitN&*G7${tt3GpEFiUExiwsc?3vk^5Qa^N6uGXCgCju6>5NfO!%H zdxLp|OOAAoW2VHE4PhVC`=Dp+A?mmuKzv7u6afJ~4&;MrrNE##4lmxsk6wPCD(+lF zg$B1{1j|Qwdu3e{^D=L;pq!-$R3w4P(nFwn_y{&faNr7R=&}>LQ$W26I2TLM?B&UP zT?%(d27BQ=yt6qhHPae@J_XiS!W+wFS9c#5;Gc?%biN>9{~ zo93B9UEKqdcd2yA?K!IK`t-8!3XP@wyuEAWXFvYv<~vP2#7m1yteb3(_=!KV_>{_V7~EYQ{UC=|369Z{nvJ$=Xw4Kce}T{vwO2Qvoq7vxvRRetL(DN z5n~$@3lO~p6;8+bnndG-t9f^ad*47 z`?%SAviAdzu4=msmh}C6-r@CnzHXHL_`=mY-}~rx<#%98eg8&P%TGVLS^2@mTjf`; zS2kB%xLMPB`A)6${TtP=aMMdGr=RcBn;uLBvd1&A;_?9u#GFq@F$ z(&gw1OwA?y^wL50MSiYhhs+YRqPHXaad8SpgoRliwS1EQ*&c@>A+yDb-Rhb7YQ@07 z?b7SlZ(JzB^3pA>W0c%AIBt{U5mfQd`eBRDm)v}wIM>c~iZmgzQDZ|I>mvO942+ls zo{OY$E)`?87GOv1!-woQ&1e0*BrbmMEa$x&VbJuD%3^?RX+m2xK^USOrp(aDq+2mO z=~gpqQ_9q)QM^}UhWQo!BpyfZYb`rF?dViU#e6}5_XeG9R3+8BmHL?g60@uZZKIl< zl?pz*!W}Ir@$G>dEew-C(66!1cf$(qMyK4=+9R!K=o_vcHMnYiLSS+w_oT(28zhtB zTpzE21E51^q8}W0Xmryd9d)n?qcIr;aTRl|QK{Z8m8z%2I;&sAJc@C`tQeoaj7XMY z`db;gJbCfxQ}xEd3-ZQ2Lb8GfU_$re2k!7Cx7vT=Pn2G|QTt(4v-mRpyi#9$ z<#vyBjIRkIXq!vRt6Ll4pQ@hx_CMIjN1b9fV>5de-SqRmKzb{PhSX>EV|85FbK?tk zjJX!4mD4c`vn#Ii;uNe?BTO(j-PO3|qK8a|v7o`D8eINQdaq!s@Q+KKrNy*<`NBu>vvV0i#`47shDuAvEEE4ql* zvDsvkaMW6F_GVgUYsMY4BuNl{QL*ZRQ?s(>VI0_PF8r2{NFV7YyM3|eczvda^wDAV~Y6cgC^mH z+AjG==)W$B#iKVQ5=|-DKX(U*R8eA-6{tBsBUfbH-Ut3q-RWFmN8~b_( z9{k|V_wRn^M;9u|*r@-}o0mFZdr4uAzyWNqJ*ex6GK1MhWBBW@fBO&r=h4}h|1p?9 z{?BB$|6^wJ=|AQ+PyaEvwEthCD^LEPh2rUd0t5ZO<6rzEytv=Pr~hV-p#ZkgJatc$ zbI&_$_WCuBs1uN*t+2X3CsLR__|UwVQ|20b6~4YvYna`6P^>luCuZlv&0_7mV8r55 z8@*0^C_c1x-onA>ZpQnT2kkrEw{w>BCeHJL z@YAMN?PNq4(eY@QF-Y#$3*-vj?AXAlMbk25P@~;9FwVm_Y_Sd*=4P$z41{BjIdob6 zxo9p<4pfFY@EW;&TjZT=vNzn&)2N`&-HH}pY>dw>7W|pb)nM*qozL8wi9i~LX?dB^ zyFzZq&c@#JgXNRg2=Euy&;+bf2WHRfaL&{y43#+d#C#jySZ?x%PhR~Z4v#H}C?K9# z-COWRm*exP_4r(NJION`qtA%1AD$&G)R%y2g5h*Am|)km^Yp6-GpRXPm`?P}PI_cA z0@fYuBgnjp&9J++BMzj$-n2%t>%0`}rrh2OBmI|JVRDU-(Kfogb2hed{8GsZP{wm6 zIe7lHxUm1K`}Tv54uNuNh`q%a`B;YC)6dM__?m%LjUlvrIIeYN;hD^jGz-)+Sg_0j zGCFh*6SMI(a(Qz)&1~F2j_Ne+gbhfey>Rk{7nYNcJsGQp6Gw96@ieu91r4SZwx?z5 z;FU2`JjJ54q>dC$#^x4x)P?P5qi6)BtT@prY!CEGwQ&40{p>Q(0Te}gGIe;qdZ{NAlZ! z!OT_;Yw4c&OIU?Pu{{2VkB!SryFS*`{w86`+Ccx?WZ{#0+?X zUGy~ly46ij&YYEX&ocLHQg*GhN^q_0k)*P|cl1H)psHSg0ynwlMlq?73G7nn09$r~qP=SAY#m%oXk6Y;|OaN{AJMUQ00$2ZAmfwy$c%re}( z_vGsd?#OdiPS3rE?LFxE6mT`{>7Cb68m=Tv*~AD6PkLfJ3EyPe#G1t5m~C}o*SPfqJPPw6H226S>o@$ zsG4#o@S>*hg`}A+E_yQCnayWkXYo|TU7=hEj)afQOgFi1JZ8^5d`~;scIWI`3)u*h z{hBHB%HcCdcI(hF<6WHPFYCguhyGz@j$B2zGn}@M*@82wsqoAwnE_IRW3sM$*f6Lt zT8yp`JxvzS)MAucCr&SuawIm>22cFlpB4D#@-k*(}y)8-=PB_#wM!5|3%K4yOI_{n`2W!L%>2MLtrls!hBEKRK_m zcy|3jIyvs2c+=}I;S8LS#rKTEyOp2CI|Z@+NLX|RkgRPTU!V{28XNfCy#UB<9m;W1S8`*oy|AHXTZf9z%U@| z!ME+AmcVD2HX6MNa!V5<{OtUpbFGqb=YyI~*}Xoc<$ePm`&(s=mn)kGZldie!`EI# zreN8fnpSiHUAN)rSKfWl+;kJDFFKu}hCY=N&y<%17lW#Xf>vXFAL^7@P`a z@r0bt!C9I%&8MfB-&&}Z=@B>OU4y!=kFMTnBy6DNYH3x=hga`5l~y>ZXw&j`jC7pB8ygRq`%zN_kTRYDYme|5LeeNU~73OfJXo(k( zje1|HRg3lr=|c`P?4&?GXV+gGzwk#T>^Jn1c3jj(8N!Y_nBFuZj93dtA-8EQFfh3 zUe`gg?ZfO})bs18Ei+@bKvG3kGkDYFP@{0XyIDNm?Mmc^;E+n`ZG?gR5$&3-x*RvwBb3 zB}HRu^QFAx()nP`!E|Q#Ivtw97d_4A*E*oF*wB5?F~j9}J>}0#(@Si4xcgmrGtC0| zgwpCsNzeoKmeq7LHg*a57+X5(dR0Q^P)bY|I`ROG{UZ}o4gIRAhaD0#{s#*!s6l`R zWOQOyUe`4!uIV6Sr&-hsP`LYELoXIK$DnLtMm(T0^;Ea@wN*9uv;)FpeLvGZ>52&P zoJcd~k1xkny*f-hHu*wm&+knhY77{zX_v zS(7iZsGCcofr~AAlSNiH?4-PlvB~*m82s@W_I$b#Yfw&JLLYeF%6C{p-Yjo==fi6i zKls7Bm%nr2#=Y;tJp9o|*DBt+bi4Y)tM_Wpb5&|i?&@|aI7VcmJntHWjYF@(poov6bT8Czcuw!24rE#StqT`OBMo#PL`^V%) zFLS=M+B~07a#t#;JsD4DwAi%9^^T;LnoK=vi>dIhsM%R7FbNDZ%aLG?6p)A0g`b_8 zGTTtoC95oJ=x5ETtYKc>B%N>zdIlBZ9+84^QwXVYjxoj-NRd?|`>b9t=>6_cGt> z;`x3EN9|fwL;r`@%9=0r465&JJ^!*CzTGu+sh`|?P*?K(pI)dlxFf2VnzNe!!}BSSn_LeBYa*3*y1X2Z3qwa4XmtJ*(#*eWQ+1JxAHY;+Pj(Pxiu zb~Eei;A|#NV4fDxf1VpTzDodnUKbLN$CuyGcW^2g`s20KW zP?-YNlg?E2uyMWuP1s$u0N1D~E{sghztulxe}gOS1K5Ta;YPoeUEcY#>!nry{7z-l zpSJZW|B|!!&p-O)?w`JQ>F!@%yjA^^`reTb+r?v7==-mUM5DKu@s+~;C|4>c%I+cM zYwsE?@9Pv+cXf(udU_=F%3;l;j@ItVH{bvG&PUhoR>CcQM80OnCpRm^pWL`N_NZ0p z>=KP}x3{nN4eLIePc8p(p|JgbpxgMr#yyMwW$pO$f6Nq5{xPt$_5UvKzWB%V&e?zT zX1D%V_L6^G*?#u>9FX<~fueY;vNc)LF%;??HU;Izxgc}Jd9nlN9f4#}KkM@g)b@bF z77D|jiIR_-3b232yBo!07!@!?Svz>0G`fSKez`vW;>+KyY(D)q>q+lK@%scvJ%wcP z*)P@(U;bi)9KV&+&Wjud_dL-+S-d<+|Ke7J`@##O)J{;m(@TD`GnlkbI)bp1vtjr; z5g5=h=8su-YP-m8XY=sWU%(Gp%8(tL$ZS0cOgJJom|I2_ql$_qp|-H~1m1YT!W_de zpf*qR4v$;dHP}a{{OFWDKAj^G&B8lLEbrw4sTCMFyPTcbqTU`U!kFJO`U@MdxHjlV zwj#@i>wMPM*v}X7uN0YIZpN3Nob$yttjr6j8Mg5auG5pR!?Y;!nO|Mnds*=3cd}?% zQZzQ<0ktovoJrAMKg))ewiejOrWUrIWacy5OYr9K9ULsuYcFIro+M%6N73p>Ihq3J zxl;HD@gc7U;R^X-68p$U@}RBu_!c*uoLfXzZ`<)8*ulKgQti%=+l`%NcLooO1?@18 zY|gO#^ec1m@U@vNBzYQlSM&+oqU_*R~JR~~=qUp@JPxa=c$ zZvD^^TRTLfkhb8lpF)#krrt4;{XPa>LXJjV&GV>)qp8eq9g_>VA_0Ujz_ZmkpV}70 za(g1q(w@rJq58l4!TVL!kJ{m(tjhf9T?HC*73{U~&6Cf@SC2j&o6qhmVU;4mPmaQu zRFYFHcQ0-sVNUiBk;O#IG5~X^kJ(D=_-vw$R|LO2kU*yUoqLKNR#1ez)mS>t9xu*M7IU z>d{Yc-m19R#Mv&EYMc8-iq7tSX}?ZCGuSVZ_g%PhS0vHeOlZqJz)*Zdd<9rE`Ben4 zW!4{O$ZO5fryt>cc!j?EHFVpT+&eGM{~5mG3-$m{nGKx4_1VoHeu{uDAGP|^^Z3sl zzWDkW{nrphIez>L~8u)B~|KI-Vc1yq_dO^q#e*X~u#EGA!KTMMo{23=`IUZvNcpS)XA5k;x!lK?nAGr>@bDcTF203SI zcvN!K8Ce)j1!he-{QC>&6Bh8qrQpx=&-i{0&hqB@bb=XiZ2j=lD87L?GXH$Jy{7^4 zl^ke`rUtck6SE-G#B2;H!KQ=Hk`q3j%{-T|QCB$d$a%Q8T>ix(2-d9`CEhsv3<1u07p0s7H(MTOZQfSEXad+{4D69NCKb zo>6li-(0R&VO}M(VqZRCJ7u5r9DUPs=1b4`jGQsoI8#l{ouTV^%6) zLL9x@xL=tkv; zP-!;drL}VfdFR?WdD9qjgb`D*xPPnSQCE31v)O2MM{BuiE3YvSsBafbVI)v8tuxnLnK=*4G&zIk z`jaFK(geLn!~q*JnA;1ncXY#7npRi>2Ik7=oN5)m;`5B9&U3sbxq)?4&d9?{*Gc~o zX&UIKt8d?LIPdZAb@fV0yZeW4_YaQV>Fkx2RMxhaP#fGE98{F`_6^+~6e{lY3x}_M zaHZtq>gKNNAK$op{U`5UymRsT-CFDs^d_T9o<{>aEnBNdJ;&TWfc7rZH!>Nk?;1{^ zuUHg~+cHAcRJv(EwbU*(Y*L4wBsZQs;SAq_sTu#l`=7XgAqV(;MVbY}!2#J=ir=3n z_jIv+Xgo!2nnM$`(jrjql9%*py!iN+n7+Pc?(sM4r(gb^(G&kIzWLw9R*!$r?Bj3X zK>ms%{adYj;cJ~c_L(b`eL)`0^XT@==c&!dM+Q%V%Ot#pPHCOTb)CCw+2G1#?aB4D zg`7@&Bl9|Y#OH_<=I7!?pL{CdR?I}^==r=7Q^19n%Y_ET!;4=m{{nPHg)N>BjQUJ6lfn5Ci1sOrb3eN z+EW?EIHAPo?U@NK_vUt=bw}5a8ptLtfoJj|EWWD}jTNHBaBcIDuGQ>`OVyEd|BURYXUuyd%=DK2Tkpl{#~aG7c@R^&qS-wM+Q8{SmD${{G@fU} zxyhdLko5@L;n+h5_C@xJ7K!$8CR+V&>txV;bWs;H`cXt1QZMcya3 z=;)m$WqP{-HoJk(x1mpI*41^(M*)Gzx(77_b)7?kA(d6wDbe?kx!3;g)%$I4T)NYG zv9zYStgfT+YWbt)9@#_>ecT|-YALmj0--0P>j;wBfRN9%5C~fj{ax3juh8iTWt!P% z*3=EC@0`yfN5&mD`emk%(e{1NCsw{)QPuc^@4R*6hu6zHK49p1RVvk#C`KploNEAn z^6ur!KX~i%U9#>w@ze81Zq4C=i7}AM<9pkTuO9Ev>uu2kZqi3?k9iAw_V~tuKV95| zF||X!7GWmYEVbAIxelojma=AmhUCqmcT1+(yDX(PkKoE~Bm>LG;hFG?gMLXTG9ZEX zEcUZ=MbV_a{QlMQx8J{3`NN-Fy!F?3TE2T3_W#A}Wp7`-Q+xShX?^M2m&)oC6VrX? zJ!eTx$M}uv4i9taLVW$%5qO@*uJrEX_}24NBze2&{g=sU$WAa!8JhIDv~YHHo<-Q-;py{?U8OZ_$?lv%EHCQja|e)aB|l04_p zlF1ocJfCBc2bF*e9ia!0;OAx68S?NP`u1M_Y@WK)Mjyd?f7gT$Ow-&a6$=%UieP4s zv!ZBZw=^!%%&5uB9;at9&P0o_MdD)$_Tn%rN0}WcnNN1;}W zVPDG}UfD6Ik#erenPExT!wC55rT^@rCaG@{NFQZzncQHqt#TQ{mgWy2R zF~cm^thYst<1;}cJ6{8yRlR90Juz-iFu+-+Y~NAgKO1(1mL#*mf`D~wJ1nj`G(X%BbsKJ;S;6`+gi9M;;pH1?PPFaH4AoPJohedry!l~WO-R6I?X zCmN}Fn%H$Tv%_xT?0%$jCTsAZR}780E9iU6B?kZ9KDFy6J@OUqiOb5V`OD}~KAxP< zeauYbqxHk*ALh4Dkka1xX9yAgMM*{bpVjxs{tEs4U)?Bc`HRc9>%Ui0-T4lYbeDwv zvQPR2@*C*?VvFX$bpfcJa%()F^c z_pg*Tq01NCD1S6``EHe(tn^tzA!2H)ZxeRI(RC27r~>m zubf?CrS3t8#7K@&0Ip8>=~us<&u<@1H}*-4L*q`DJ-HT8Ooz}5rx#9MeOcVtKU*DV z34;E3gM7JdW+Pkpp|;rTu2WOc?=Kd|rUJ`-Bhz_--o2u<1z{lvw+~)^dHVdD-yE@{ z-()Yifd+q#86o*&D;xNHH(-fwGsh%nbq~$%UY2_`8!w#X=F-I_vp2fP%rDKnKgWze zk5wz5T035%uFOR8dr7%@K75|Vm{?j5s`ZhnbHzzyC!bv2i>H{{+nXjy;gyouPNKMDj=0!v4#t)s}NmD0QJay!p1y2^5aM1}Tf>e2XYvcu@hcX^WAJ=7>&Vy(R!Ew?ZYdl9aF z!+8eO4E)7DneM&n2aP}KY8UY}@T1n&{x>_@2HwAW@8M;3dDTL(s+BzOZg^k=!wUV7 zXhn4>Wm$cj>4Ph!(>LxtblrZ?5^5h*XVhlLO51>HJHB>wh8FWvc0=E6 z9KZfeV)OaWN9_w=F_-)q?D((aYX{G$mk!Wd?4V^^hNHPyIC_Pyq+o3s7*$@mU8PbP zZTRc*WN9zVTD_TR^xH<|^t?u>GKp_LXzIKH@UQIrVe+Mn_&2G;175u=8#eiu0L=O$ z0ITBML5q0qm*D$k$zj9OPL@D!Kgn*`&wS0VpN-9%&g*tpf;%B%<9xRWRc3v^$}&OC zL3y%eq~_Hb<`zeq`{crlB@ai&nG0o=?3&8+{Jmi`2<%41%a<8f{&sh2HNel{N5AA(PlZC%bwRBo97g*QMVlOEUlWiU=Vn_6_4;cS%`oU% zOr7HK**gtlC+yWZ?%)u+hJ+MhW5>`$q_#_%U{9LG$CoI5&=zSCj^%i{4%QE!?c<-? z9MsNIyhNX&t$!(-bUy_s^o$CpsDK$niv}ZQ(hE#bX!BC)hzIXPNuk z&V7G+^83iDFxVowiEw^Lqn{2+CT9Ke`0_40&!n__*eI;)kqd8EHc3Yw%Y9;+DFM{vrY^}?@ppuaTJBkIv4DXC$HW5rVu^+jXP&{(xlF;RiRptQbCaJS@P zTj{ks4@(9_@;iO~vOC=ZX{kUYzuVd=Dy@9ja$EfW_x@!9f#j}KqP#aEAG`j}h0E{% zoA15((Ut3E*DrojQpV7th39^#u6;jXUw<%r*8%y;ZHE0CjE*eMhvqZ*-x1 zbZUwBGl%ad*C{t|aK9ZnfRO}O54OAHhR7QqmpQ6Cr2*KhadOcE%mDm#y`u@&@CBTvhXI^!fQFs2r{?|Np@IK zUdJ%2xzKs7NRQ$fHOx6^N1g1D+!VMTQ+Q=gJ{7_Xu;5$Xc^OPCAHoGW3NqISz`}9B zd7Bu}Op_tEF{?DsPYE?v;$q2`gCm00afTV79j?HvY=Ty^aOhfGKe4iB(8`TIjZp0z zgRjLsw`20<4^8-=C;2``xb`My)%;b~#zv=tO8hk{=Kn}s(^6w_O*Wg{C1xWxhzDh0 zKEBe2{iYKpU@dVhH?G`%aH&Bsa-+3>^nSm>)C|8)XmZD-laA0RtW^z{<+-hpYjfQo zp9*XGR5RrK2G|Y8Ca8TTV!2HPd*ng1kwXY`g>6zD$RoQfwY;U;IDH`(sSLg7hy+Kk zev~46zkBJ%wFh;bm33{RwicnXf7s-f%1kaf`)>u-&T$Si zv&rS3fc2=nUEQI0P~WNUSDMWjXYHN5NbKa<#rRT+$+?Wdp2$((FO#{vN;X0c*nWQh z?2BdKvRUr@{Pwf2bMO&D1HABrErj412I#f@Xe5J5Cmfa78so~xe(h|)K~Fc+kHH@w zet2Q)MUq*1P;Qy?l1&_-HVUBqcO$=c!9MW9Uz`i2H)lC{Olb^G))#;XO`7#+<$lCf6d=wxrtu%0%}Gl*DYm@FrCec#B~(D>{G z;5H*?=|qD_GbYkZkx^VcuOUX{6Ltx&<)}Zs&v-l`roR^ANf6>^6#CM;{c!7ghsLG_ zEH{SPL8#eJkK$jF09X^ljT77FV*`4-zjw^B*fnhQH{l6vfI(Svw`J(&gBI}(_7b-Q zQqz@gvF;;*So7Y4nwB4b_w5@$zWuQOqG)LB=74DAwnV16CzESR=>4z#^unzQSYutE zRJ33%&->AbEx;aFixiFygKNi+(a)U2b$5A=4+_Vhp2EmFq2Ad?6SkWu>~8Y&uLaWE z1&;Ay?R*W5-@#my{WEFT?>{hNvq8@IwRm z!smu2yl&^>&fHY6;6T>{BW}TrX?{XC9f6~=A|}}F;q`kpC5;`ux8D5l`mK*k9#qtI z$-C6keo=k*kQkt=>S6295cP%?2xn=t4<(c_~HDYyEnR~BA3&%xt zY2*bbxkz#g)1h=+X?92OQrV9IWuC~I1JhdLz_ zV_Xo}d5UKL!iEul$OQac16gd7)CLorIU0%9p#WwB(l0%Zra*_cUJFM}J24&7XSS$e zy-B`JR!z-WVG);!W7om-69a*$nv2yJ4g2uqq^M9*VvZo6IE-N|Qln3;_hy`zDw zq4Pb_`EJH)aHdS?KlBssw2E47)EHS)t876P^#nOz(epf=QO+GL9sxD0++ji$<*J#u zLhVcp%f{`J30ruGJSWByv3`7BUF^|Y5^HC5+`TuimR5hz&^2^{{HIHTQPW*AV=EfE zq*dI>ZPhKqBDg`?5E}p7=8+fH>g>2RU>nxj?QquT7*6;M?t~j}!|do(VAkl({I{HF zl{GX)q?1{V{R^$F0WH8Jx@H3!7sG6P8-@A`yz$5g^9VV8>|kc|RJeZhDe(^Wl9s;V z%jI=#SMk?Y*u!hEw|D#bybE}cyU#giyhh?=@hO(WvZC)^-mb+FiXPbBmeV&E=y{(E!*#!sB>(Dz<)2 zYfoNaUig#NLCs&h{ZZ+kJZu^GAF0Luyj?W@9Y(C*hpqknnik2AAN7pBeXp+jLZ3i- zd03*p2H*3hNUXeLnw%}UboI`a()$lf$O5Yz?3dRJ4UE)l6x#Z(&c5>R{OIjFZ@ho4 zx=k?LUfm=RR|#eE+kGOvV0_v})`qXHU6docZ>#cA&q-77=ojdfe$gUS{kpud=Wo%u z{Chs*|L~|!`L~h@_a9QL$A3?5&u@mtrd~48+o^7s6uKn3G@QR!b^CCjc|aX7z`>~Q z9QL>IqO=Leyky0P=z)?0qt-;TKp87}&>C+NXcl{vGfS{h^6VKmmNuVm<#wJIW!Cwk z&YRj<-v9LR{*$kEfi{U!^hf>_iGt?GGivUVI{fpq{#CHk0zePR~ug}?uGGjx;v$M z^lYOxtc2m>({IxF+%hk|`c25>4q0o_p1K#dB3he2+#@qAt{j}LPtF8ay^-b3^|NpH zU}*l7S zMNeR9-vboO#r&Q#I}DoYlwSOmkA1})bMv{igEPjvw3htngDba&4YSSkcSA_XhP?}0qk+txigQVYxJeg5 zMhcs0irELNog<`$dwTpN=laPp@`jb3!{hQ z;m%bDmQO0s=-&$Ek1pDR`M-Yi!yEtPle>@pd8<(QSNvRW1T(vDbV^Iz|5C{CsuexJ1A}+*dR24R zTMug*-{|cc{AqWm=&g>H{`dR3C6~&|8?Lu>4n6D@NZY!4qUD@DF=u-~8Q7 zeDzoK#=qpX`8huG7m~5*ea^VU<)_~sFq>QEy^fAMqGZ~q4fm?s)adxl=w9rq>2rO$ ze+oUj0b?qeHr4@hFgxzow6|BZ2*o`k6BEo5&-vQ${__!P`6$0X!mKKe2qjHWMFwp` z3SB^wnrM++boBJ==h>d~!KJ+*%r^g&Z^`A1t~s5Fq8-1VI?w%*c-)cZp3Hkv#Z~wz1sK*@SeN7} z6JWGuJLu+nH(F;Wt|ani*Xgn%(LS*;F?g0DiV0`|u=e z?eo_vL5{oc^1V7&i%=cF964XnEC`}O&Zkz7PM*I0*;BJSv^S`oIV8vYg*{YwjmG9B z_wFmScc0IMvab*>zMS$dd`=Dga!4_G0`r*uKXt0mS@(xj=0h_%G7N-X((jxxzda@H zXrHD&!J!l?d&u{lEY?4K>H^(gAiLcM)MQ=#mW3hz` zV;Wm<6h73WO-F{-`(1d{;FY}wV^|# zY+E~gbq@aPx&>6n>c3kD$_pd6VL2E|1v?gS;`(;i{bkZyB4=2q2iNy ze5E!Rux4gvdWKk|aGRvD;t%(+cUw1EsHOkpAE0ZI6Hy@wUs=c;v#dlczyS91aVmg4Oo_aKo$$z+9R2HtE@|L zP|++sLtplb*vj$m=t2G#z3D$B)*k;mbm)J-as2A<$YcHus=%Mevc+$=AAkDu?B46I z&=I{}-hKLt+1UyFtv&b+Tcbwbik0ureYZ>xz-5!nqPNTFeYun)zL6jwFos7c6h8Mm zP0o4dVrz5c+IZP%d1sQFK0E<#{B-_}$DhW~GP768lBc^H@TE3=u7zFaY--ESXMC1E z+KQHN2Gsa@P2oW^=!tJWnLB*-?c6y#XVRZ%PM5RjY^e#Ib75k!cuaP6%9z@FVU4bz zn)%#~j~cx2_mC>5_t51ZXfH@>)eY6vW@tNWzJp&{-|rP(PKYOH{S3i8&WaVfiSV&ZK=^vdGm$?IXfa6M=@ zSaoYkE|xyJy|n+TLTQ-3`QvvlU+d_XJ?I}9XP4(6>{S~Fk-tm($7j_88mkW9q|RWE z=!D8CEj9hbh|y;iPq=Lr%_0Z9!XTR5m|Sm5(9h=$q4hQN+pDk?R>`-5ggz)b2Ia-b2uM6T62zzq-5&Y49Ji;$!~kO>aMT=-p8=R?{Xl{xjZK&c43))CND+pfI~9 z_n&@defjO*nn0cm!|v&L)Fo^wt?O#3?~(VIJy9uuHOYgvK@s`fLtP^}HJ%kix5_#J z5=W0V&9b!q#NrI)7-?_mc;8sR&mg%<>VoNA-TcC)nq7=~VdE)d%q1D;ln~t%5p-dx z%;1)FOLY>3JuRCIt;w|0Ua?e-Okpa}E7H2i8gtfRx~@dGcelK;|5`(*R-gx8Ez1B;uJ;Uc5(0d~z`U>gDSlOi;_e$UWsHBFhJNDW_ zLvZ;ZVVKLWup8edSLI2h_~dLpclZRJ(E;q8#|LL$K7(s`NLjy&PG+B(^Bz8dP4WQ> zcOFri;Pn{!21mdWB=l995=ygX`hL?SQ^BV-oOtES`L z$>{bxnm=aeCr*HzhNc0Tn9pL^KXq`%ufs^YR$9|`x3WW8`=CqFe&f9kz+5w;0au704!7 zRLulq^saGqY)R&FL7C3!Bwxcr_LOVJo1$!5wMcb#1LxT|+Ph)qqY4bN6Zp!=dff-r zwK0V^(LkohB-h^r{9>)z5>jy{kMt`Hj5?OV-ftLSnrJb^>OxDKlhg$~_wG@2o~l0O zj2yPElz(S>zA%j5N`iJvh)%BK&ZFK2`nR^aUWH(A!ad4)Imryi%=pL3?=vC`Bp-ay zjCa{WGTWp-y=|C|t&NY`6B_2zYW756ITnHWk;Lw%csaiC`(sm)o9G{IP~#)TZ~YNEyLa5_gHM9X&#vsf{M9>svdKUD-kVqc zq;E+3=VdkRe}-1^FWM#gAJum$-t3S}zS};ie-B3YyJY))JS^2*>*|wS9~xAb8uT+a zVfbIXUi#o#OH+5*K(C}~uz$FAM53Md5$*LA|WBt#9H+ zzjXFyOQ-u_u1zN%Hg(`Rydx?;ylJ%VDO^uAO|Avdl%? z4?2eI?Ss!?7>D|C#!P98eTnMMtBHEd=FjDHhycg z|M~UB&1ZYeEOyb5u;e~Gn9pwSGjH2wmb9PQIy)dIWdmMEF}QrZ6H0IGq5V6|9)5N> zzjU%2T0U4Omuh3@@n`!7&pz8pEbpvw&aB`eU**gxW;RZX)XsTw1hTQhQNDQm=^{Ji zXgs$Ae|IYZdn|^QoDuHR7`;@)mDvq58}u?igGO)^2(LVuM>tJRgO^@v$xcmS8?z<7 z?S9EaeIb{x2ioNTmmAY=qy|8Uc zZJz5W5B1#BV&JH95mQ_UK0c^4_O?YfpYwSJo!F_{K-q-e_s;d8@xi@=j-K z|9d^H%=-JJSAmb;Ztf7(_YTN9y9M$A!O)mQIcAb|_6+v_)sNrluYA<0BIwCF<4^i6 z?qK9%New0@<0c-{$IL}P#b@v{JTJfI+4`T+hx~E(>1ThxcKGZM$hCimKIB_|&u0tk zr!Oego)~GCEup2=F^ez3y&4#u@=RSTZ-BKD=a-M1v#}MdmRsi`>1Sbq}*4@7B}L=KuuQ=$R&^lb#7`HzUujwtYw|zF*rRV%9Q7 zf8|_Qe*#NjFHH}#6kR>o_~N&J-0{RRSr%OA_YvI3R!`wQoUm&-kWGb-*eRSwb9;}O zjU8D5VA5-D@VQxs$FK`8VH-XAI-1sHdW<}CjwSY;=emLdy72-$o@M;E1$=Ky+#hM? z#u?@o8TMObEuEyOvBIu}ok(Ks*l+VM;PWp`4^MceoT23@_MK)8?0Ad-#MiFb9k7&O zBBFIzbWqovv+8)ecC6GdllXVQSFUN8A;_0^pGnXa^fFKysA!hp$qQO%BU$IUHkSJ* z$R1&SHn8NUU-D3+&muN-8GVaR*TTA$I!u4*UV{-fRp8*&w^_2%$TbQklZCA$Jd*kP zUioxMdGpkRmH|h{pf*s}B#hs0?8<9R?tS!fC)8cf&|hyXF%Gzz`#yuLSM zLe#4*F3bLluk60$@>oel^H4(vMCfqd3AcKleTWzTs!M~ukZejDyLjU$wG+HxY}b)4 zy#Cev{z|;$4`2;cRn+y}JLmo1s%W}>r@Hmd!*(PWt$h_Y%A0B)v`gAyh2k%a^}T)Z zPTSSe8i^&4Fw9arJ?K=7R@HS*1Tvd`^vxmlbSS{xK&kiwjN~`|KE8cMF*uB67dE%>Ol&j>)aL`=-*AllEzjNW zc^>~j_U*qzclYly8^?ceFK+&h@AIqWoztIh?wx$aKIJp|@z3Gcz1})`^^{rVA)cgt zJas!OM_+8?^F|AhSdNl=>0R6?IMPRHy>}_a+%z>E$dK>h@jKDHz?cb>dpWPR20iqZ zUO2RK=tjtx%gn21qUX9IQZG)JN#=aqVV>zw)`<^#R&9;U;!SWdV{oE1a5E?J6CM}H z?VQc?|2sye0+tC!$}$~Tv)baD7VZQSyKWPfDl5`<5ME-k&8A-F69JwxCZ;E z7S@P?Gi6L|o>Q5eaixCRFC7`55#!Ss6pz`(%wJZ-Ub_9@VqHi7Cxl2`YwMO>Zt5Do*e}t4RPnI=t?$2g>!)`f_I*qa zcL_P5tOkTuKqbX^Ow|HXa1$_ zv*PLJXK2`tdX$zO*z0>!T!3Vb?!hS8Lho9{^SH@wXlG&VWRonu6}c^nFCaw*Uv`20 zN)ky&0-kito!k!KW3?Im3*+=(=lPa(SMJna{N9f*ym$Xme~C4;R#igJUE8mI7(e-K zE8ga&Y@yiOC)Wtyx>BiuPvCYg6ythdIzOA--lI2sJfGQr8qS?OHqe-%;o0DOE~7EZ zbjXYgScy|JWW<=faq_m~AwEYTxKttST*gPA>H^n|#w%qR=RHA}I07$6xnwWzlX-n(bM{Ah@DPc~k&b9y4qDFcl zL!ZK=;U3n9bB7b`Vn+d8DfG^yN<8jV`W9Blk{hRE+&9DL`!dcXa9FMmc=A1HYbiU@ zYW@!A^Kq>6dv=(KQ|x>vs$s&ppv5B$sxX7TD56v`mKVq; zM@A-G3W;`hgk07Uvugolb!-?NrgY5W9#EUyeR7izl)Am$9$09?3sHvQg6!Oy_gV$A zOKp8ar5ejzJ>e-`)cN8evrpVA9+OVOF6Hc>Vo$_QGHHV!1fw`&Cl|m4PiUTXK@k7< zoLD_;W6ugMY28VkG)o`Gakw{2uQ|o{oX|}9Cq1#^6uUi>EwQ2HtXGAX4o2`MikNrw zQx~%RaNN9J-tzuCAAEALqPDG4hv%QVR~*eBN_nQK1!5A;R{D&D#D%8<{plcc-@)m` ziDWMQScpckQ)3C%li66KF#GGtO@3$#|5pM6qV^RF)7s{ISyZ0v`C2H$AzSHA;u?!ykL z>HVsv{&y+vFUkg$p9luz*9M2ww-m$U*RGXRe1!M!YImpbPD6c5SyMyD1JQt_Ry-(s z@WVGQlz)7^to9Qgwwq-Qy%#Uv5r6nextb+{rLsrpfl(5vY?TzqrP%A0O`M2zGtUL% zj@JV!+l#WA-e&^E^lS8`ue*jPUpEPqXPqOHPer=f6JFq|SQTgAiYx!bj!@#ewtH5kaxj$eKI+!e_j z36-{8KC_R>n0=0B^K@bD;OXM}lgESlxjpzNkC{WiaK_e8c>nhBl<&sZp6vLzJ4}J> zk|ng3M#~kKvH(H{9$^>9?r<&1tUr!UH-`Q$K$fE8KO6=5PMEI5alt z`tWv*rB`8bD}fSaHXpA&{rp!OtNTw2^f4Ls2}yh>UUaf9b{N5F`Va*l@WST7-hchC z|M~gi>fWw$D!PuZXdTYzCjHE&NHx7a;l;$8SlxkTwYzru#ay2p4^tro!mKi{w1@3rA^y>euFHaE%a5J;}-V@dg`6x$)}H3j$a+)tKKE|cz-Uo zy33Aio4?-%dc<|~gs@tYYj~TBmDzOU~3Xjo<0P_FnjX3K9D(3v9lZI^B{Jo)?dY(Y@M6@Fd0)nRf14T7b!yG`*%|*eEbc$+7|?u=8R)xn(ZVHfr0{l0 zdBYFtJER|=tt!p#zOKjL-q0&EJe24h4d|j^jmA5v8+yq$9H2h!F?q8+pMCo~!QRuK zJ*sGze@q?nZg1DnJKb%# zw_hsy$p;?`FW$JXx?a{Wdmf(HF)*@(FJUuUIC_C!iK z8s?&ZAV25d68H8;YLH*^+5XzKQ2f%fxcP$G`N+4py~RvBhbArNj4jQ;KOdJHoYU5D zVTOI*gnVLFT~^;I#YapD;uz?bs@uB;hC3Mqi~2{W6zzlB@!C$22_5x0%PofIJqbG_ z$*wBJJ~oODA;!!hiGM6kPaX3nHxudYmvQbzbc=Bquqp41FX^FH_wa0Z`20H1Yfa5B z6iu;oabhmIq`1@2(^u6j7-$!bDVb+a4buk@=Dk3To#D^TqlI51gDidFR?Pz8YV?q+m;I!u43D|6hzTQ|D_Z0H4n;P+6?5 z==#j~OvnVA&HxL<4By+rjC*R@%Njnt&2DwE6`jcWU89q3CxOBq*i8Za1s-Z&2lbhIY5jPnu|qia z$=x~~qtkijW10C>ArncjC4mV<*=NnG%+47Ya>gn$;wv8Ydu}~w4cx73k6*k~zbqQF z9nqgZpAIa3>PxPEHfr{~7*v|h#2WMGWU%}Ud(*dQw0_2n?`Lz#^`9|H`G)<-R{>1Z z{A_0qf8q=v_iOIiSFY6Z6YBGQ810+f+j)uBx`?p(|KsRAqa#1lD?hEYKJr-~uYDw2 zUhit;)k-s(AP$FQH=CUk(8xLG3{({=CsfWk=bRG?g(_44Pyh-!HPE@)Ov9Ps%xHpU zSF&Wud#umC(1$)G51VXM_`mNH?)}}gKJ3@Ee8PeDZgPmg8H5jEM4)vK3)G&T8H%9cc3sCKa6O-ZpVI*FUsFrp zbQfx%5!8#59TUV^+!w@2qF`oVVv%jw#1Xw-MCkO{X0Ln_Q|zdj~a+f z;SgJ-SwIF93%n}@vWScfp3=n-83W@~Sp++WJajbJHww^wFa(tQ6c zt4tJ_kSo6ZYI*(eEA)Opf$!z#xMzNiI_tk;miRlRfAv@H?B3si&G8LFYrb>@voGLJ zc#2uz3!ydk%#RRXWP%(c!(|UT{%y>$z|g5eD`H;*W4;7UY$>=}%fmyHLhl^KPAdZa zf5ha=As?q01%EE+No@GhH+aD~@;j3ikHX-v%k^$I=8Jw;9Qho+ycd31Cpi3enJsPO z=_58g+F);Nx=^z_klo_jzW6+hy^$9^g+*owX&Evg99N+qKYV3HGpP^e4uBlrG+aH$ z?rcqa#nPe3{1UbyrbMQ>3i@vzO`u!E-kHqSdMKz5sg}q(0~!IU&=w`Yr#g$--0&n- z*3>*ed`M(T>l%8e+riZv1>cXXkCvCfwL%tH1ZbeD6g?#B`&AjZH|j{~P%U%DM0By9 z$I$qMfL-$`63Y@pV#n^QA_F5qglBV!r}v0gN?Y36OmFNO9sBTh z-AH}s=-z;K$IEPCj#D z_ljL)(k23%l_|3rOp$^SvrY}NKjHZ(tC3+YMc>7T&IZrqnl-Xt3{Xx3`&`6BLw{*NDa-v8)+`$zxoTi^X)c#3eB&6GTxC-Cl0 z&arRJF0yZ8w)eq%A2)p1(l>j5Xp+!~e6TJWT{6TL=mu}sxA%W|w{hmy;~wPpB%y)1 z%CHabK*ElF`tGY#_2eabz)O92?FG)(XEJO27@UqH1j^UI$gQfca$uIL2ROqIma7*> zsPpy=(frQx_W2HGFlA`*^O(P_AvbGPY>%g0>CFTlPe9qT4zQ*TunURdNt^4RXEuNM zpyS@n`p(Dq5YPIZn{7?s1-Rzh*Pcvc{zrEQqSQbB)^}+)o(x>&J|_$NFUrtrZGd-I zQ~Ptr+Gyp>lHNH>Y#!}nZo7f!r^rybbC?kW6cdo`&&zKP>=-H44E3dkaA?KK32=6s1_ zf+;rnX%KhC*Uv&=8{4V);-F-=+oBZ<@+}P5aVe<+Ik$aehKIR<7H14*`zu%MYcFaq z_f>8HUXxBAKz^;%D#sjL4lkqx`w|hJJsFs{~y<4j;li!u-@oK2^P;QkZmd@3Cw($mw1@jA?`RWv;=TXyVC--J${vi!gHjm z0-Ti`WbV)mp%R5IG0({Lt`WTP?d=1^2W^83ciM**?>uO`il?6J1UqvY`eQ1*-S9%F z=oEpLPoT@?3rt9e6BP?uJNT{=cD(ma3>3g_Nd~%YYwxTUStT||KwiFN8kI= z%?EU`Wh_)WWx%h_L2wV++!%O1l_gv~JoGupR!AczAx_oUQgmp_>ClQ171q=^*d~KZ zdf$*QvpM2TZVn*tuN&W^7HG(tpbKva=MNuZg!cX@iT@wr$NBf*1^sbd+wh;Z4b1=f z@D%Mo-MruQM?bnz_rGI4_HC}l`{4vx^3lSQ{*$>S!_B5)>POuZ)Q@SjrQ3M6@68if z4>%loy@;=RP~X&ZYh+^aAz_}@2~fAL=T&@_EgsIo8IsqdV> zQ`bet{Ga!*zDtGk&AlKGq=#AdB6v*INiu&My2r!OMbQzsjK>0%>jXo}W6UY`duG{3 z6ovg5*(L{LME*W)=V$SYrJyGR61sd7J?v`T`=@3*=Q?uJ6Bi1uyv}M;q8< zC|!FRU-A^$s3+$5#z7prbd}X#fe)mla%S?lyOw>)0(`gGB)oNCET>Upr!vrWF5`Yk zg7Xry#Mb>3iCO>soA)Ju{{BtfELGxx-@}IZD<^7dgu^=%T%~*M@Xgmd@Wz)>kLHn? zoo33Qmt`uPOtm{~PgJ4n@vpu9{L7<%{OAAv93H8*{Z_&zm1XV z7G8hF5G`)Q+rA^#N2=I;ZQ8@xO@n`}7GA&DlLPDqEev={(GB!P7361Bp%2=U18!pv z!u%dc?&WJ2XV|Bl#R}U;IBxgB+NeQ;wT0qh8#{_E^cEG&Gs}o@*?>NN6Ns`BBnhk5 zz)A*8v{W#?mJTg%WMXSOS$m=whX*H&9cLo2dWbCQlVtJuRl*vtgdsf$g1dATfQ8-) zb_4hY)(&4KT*+z}HMHNix*Nb=!0V2e9oAsplB^sUa0kNrzGX>Njvc!fpE>ipuN;NF z*JivXB_Qk)XfEYoudBH#k3Lq~$H=g%N55u(UdxCX1pK-I9rX0LC)aeyS(41r6k^nK z3c3=K*~$@Ua77ccIdQaXXfa<#>$f3-{)bNDDCtWw6MK%KVB#FWCzC)nVU~f};UY_7 zofK&NQ;4M?W~wJM=w%)W0B2ULAnyQdc_ZH(Mow@L zQlhGsXYk6o+Mpavr7Nw061h?e#7~Q1JL6?Gp0e>e*yYoA44yGEB{F!1Q5T|jU+p#e zms^9GO5?`mPaYW}<@fH_cm5gpTHizeawApRy=(PmuDA7$|FE@p`Y!6NF7%S)<-MoS z_W1_DdmY68YYf>tQzBzx9=_8>FzXh*sqJ}RVsnD8a&-~}=Ew6(hFeqPr0c{P@(t<& z^Y;AI;=|dA#m3&g>5l0|-X!|}MH)-OSfC0xT!ChZOykmjaP1})c{^e-ovja>`oqu= zmC^4%j~8lRfnWJE)bqapTj@8(VDWGHhQP1U$Nm=5l;44W^jkD5zX}(2{|4D{UqfI2 zS>@=}8|`ihD6YV#nqnW6z-%nm=a0sd?U!n zi9mms46N+Np@|JjjeZALX1dA(bRbCpO#G+~IZlw9SJlXz6rq`7bCecB^Wf|P%-F0> zG+q>$)u!_=NAUBfp>4^c=1Rh=9lZ6VF9FT%*f1vbY|ZUkBkXBPvqmKG2SbI84MX_Fe`*ch6{1tEZ9oJ@84{gr}1?X z=*>*X9Wg^YVTI?~3QvOvduliCXcII9CVU5!-J^4y?_GbyZ5m!QSQDjqY5#n6b?amq zdW8UT5)FUx-iN9=22T%0tEHi9%8lIf6k?!C;0;z)p7^oOmpZ2k43{uWzrqgVrP$zj z#uV#cVh{R7W_|CMdr#l}5_-C?U8(X<;N|+MAzJwgUidFF)x%FQ%XtYD*b8f5`2u-d z$4f>(c1@WoJcX;+=O?g(h+|P1<0~u?eCEi9jHi+3mBQx}MPC&L!#Rjtc>Bm4Q;%J< zJ-7eDXT_XEWC;MNa_GV5<3PTIb@Sx4g)O&B2XSz?5^El4UqaZih1d2kBk|(CANm(3 z<`ZUnybSG6Ljg!9BP@~F~VZ5ye~@TclczUn$k8jPipR);zw83A<5eJ0*DIsL&`3* zr);=yteDAYum=$$K!p>`Rf)s1)ZT%q#g=)Ns(p^F#hhX8Vc+;-9nP>P<1>r~c>mD* zvm3^y$PKe|)aJ>n{=a>&na<>Q)9L&kI*r%KWlK8weA$zGk6Uj1)qB@J`S^C-leU4$ zLEQiI?E|xHFb!2;kRiLw;#y!!eNz;H|9)eqx2b0=f<|wJA+zsbrhKBb1$T%HG48a$ zA$)xYb8P7jcnIZTA}@t3&+rUO6-6dRcn-$sM;#N^roK_vqCgr1nF>q@V>oU-a7vrdZ*98arz40?4LnM|0^une}#Srz5n^&;EetWe5{{}Er}O;U-nY( zj9)ln`3v-XPXo)&)md0M~&b z3LNj2R%K5hRtu8r?3NTepd}2n7Xfq}Z|a|(;AlJ)%qN)0+onLrw164d6y}R#g`HR3 z({xE)&**$z?=-tzpcUC(L2;cxL7hT98rt{!(^!=0Kb0_OG@|x5@8HQgG`0PGs9N<;l+!CS9Qfa3Yuc; z31~TDT;xE?EPn8iPqOPLp8{=t?1TTqh-Y7LyRMByU@4ZWXYW+dafrlP_x#NV&E1_t z)19sTQ|%4yqb*O`hFY3>r#joli37dU^pTDM!f4AV3FUYYavUEAdF-tIX&PsY$Wh_> z1)Hqm#H`Wcik0l}v)aVwfC=nM3;1u43?BiBv#+Ep+{lzxEy1@bfMs}!LuA2dGQTyjSv!03!TqKW?>%Vw1be>+3k1d; zWPskH(}gz&My5Xe&Ib=Z1kmguh0JLoF0#773LoNdl_L)tyN7=8@dE;K9PoWS&H#8= zR=N^3|H{s@)cWaL=pSCg@AeYU`YV%v^?9^VyTEMZ9CzeC{Or5_{P8L3uQN#A&huMm zC#bP^kk_~auI0Xe<*1h3dA|Mh_2--LSQb37^=!Pjx18KKih|F4#k~W{`xNt!6czp1 zxFx#YGdMx4`~J1Njmpr@P(MM~Ti@6?yu7+b`p@6_5$P{}c$3pPMzccyy8=B{6;`ks zYOy_>FUOdjJ;j@SihFNYAz6$S1YDpVPBDXDty-5tZpCAOP0kv~E z2+dvy9zKuQk+tIj)d@9D0X|2D%oUqn;K;j>P1N+DZKSPxj5q-3`%o0F?LR%jdsW5kzNAH{1-wj^Kzef(9`D4G z!V-6-D=~p3f$wc5=t))Fc=jytse>i5g6!j@4w`()9I^&(JnV$_BcTUg*j1>Vp+q?H zNv&Zgv}#U(u&=z1M!wpo!da(A&Xf}RA@C;5A{P30+*vw!)HNKfSAo4OBFMHihEPEx zb1f^8Eud7G{c?fcEk@5EMQOu9mgRi^9G8eb4c|MPVs-1n248>~=b{ySwAe5I?!TwE zPF~muOTg&IR`o)CP|q>Ok&haOjj^cqrAkWFBU0>XL`(XB1bhQI_7xJ$F0QzyuxhS} zsWP`1SRZMyxDSo)1{=LE6`ZzNfx_N9Ns+a}cGiZSZ`1gqpdLR@D;->diADY#ADIMT z&k}~gMTB-h>Rx+lNgjV;o2N^4Oo`2k7mHo3-?^mqx#9Wn$5ywlm}eoNMX<9hxiN2c z!UJl@>$hVzV3AvbdU#7UfL>}bW78nRP0H8%FxpxZ_>vWNXnC6qKln6yj`lGU|K<-q zx_7g=cd7$(76SAXK-p#S7ROoOt}Wq==3&;tg!YsPO)#A+vy)MP(d;WV3bes9flOrz z`;E!a^46Fmw$_Kwrxia-lhhn(fcE^6&YQnwiYY+6U&p1@Hg&h6uvncZKWISy*TBfa12U2IWMpu%adL8@ivrYkQ$t7B{g(bQ%%xdYUxNC>Pae+I zw~tUCH1%-XI!ENA^GmKlk|;5>q+03c2ns~5w7kfXZ-VK*BR5Bm4bH&cwR=tLi(JDN zfur2+oTYB|3=_A6YUeJp;cCdr*j!xFts!4&b%M%Ur3#D%s>WNGzyn{DV6 ziqO2LFrRg|jF4?ZM4=y^g%lIRQ;u9)&aBstj^F(BV*kZg$IBc0J2ZuD6FHN+m5Z;B zwBh15{735mp=?W0)L^$#0$;5H0ZDmbNmBvCXdCR6Dl~jmO#mjBOl1pu{B38rxSN5m zHoJ5Fw0imO8F)k&&^SL$<3O;6GKbNX%0U!9WXO$cm~YpxqumCpZYNzitmVKF0RIN2 z`82ef)--$!Ijc9ijD9?~vU!}h26Gt;G+I9B0&piM@V=y0cFt0U;Bo~1f@rFE5Xa0e zivA-8-_O;*!=7zB70&G?bNjDTvGtQ^cH_Wzm6r{TpB48SW|T*s{pVl6s&wiG9_(sI zX%rfQ7+J0%+dZU2h6z0237sXFvlX!J6WMY`oDX^&BFMU`7|_EQF^9kvv9IH(ycpST znQG78!ES!&j1-O>8)t7ExOR;2<0`Y&b3~pNIaA~%;?x3@in#^{Onxrr8Ej~v8PKg` zWays7tbP_cb|Sb-v*7iQz#G}|!Gq?;hJoopunOt;Sw%vvU##)wl)=n~-kvO)J=rTg z^_mtnoeEwKpvZxDh;FE?!J-^G(yRVoUOae-(drs6=os7Kt20QJWoG^ zzwwKB`QTINZ7#q^IK)3!q3J6mibrw8IO~w-Bbud&z+K5f-cVI$HjjB@v(&lPf!P_% zw`K=tsFU^0eRCayGpxlWl@cB+hdZ_D!a3>kWjDd8-0;m}fHO?sfK9oZFvQA9?1>Y| zyNIHP4kPn7hPFEnA4$j&EjVamGivQMC)j#+=rAncG@7xmSAmltik45DWTe2>oXeLE6a z{D)xooZ{@c@Mm`}uKWSmXPkgHa|)fvS*m(=Y6!3H&au@6>^Aer`GBTkf0Lzf7PUSE zhNUX&xTgwIYkV!Vvb_#paOr9mkSL$7p}ty$pE9$u`z(dnfp{og@xa6j)@9BPkB}8R z4?Sud+*wK3-ZqV33mdR+HDG}O8N$95HSm>JTpeAj>9F8ZS;ILgo=bS~(mZdnK!xvp zqP}xtw61584F9|Y`g{cqStjmCUWa}PImk&pzUOM}F2y~_szY5!Zl7RKe{{c%4>7V0 z4BaSr2MJfY=mP&+^1-b~g1WX|P1neRt!<1H#x7?)mOnW1#!IK(WbxV7`PbRGfb3DU& z^U?yIEcDC=Y;B-sM3ZIuE5 zkJ<)bz6HDma1S$K@OixOmss<=BiYdQal`Tel*sS%vpSCIll9y^|lB_5eoIk>ti< zNb65KFtasaMxq3Jl80du9Sajgjd;f=sgmAXb$wmqi@bim#@^F6x!CK97ssL12J*%* z+&e)YCi9gfl+ze7An%GTpSa)LKl-F|WOitdId{KlaB6UxPM9PM*+i~F(mO$vkCAvP z1deDJBAt9-jwTvd;6S&jW1$@~2mQdM^JF2U1hTCopB-@xm{S)vRAEAA( zXCVW44jzD+IeG&L9Ki8OVq-(=Kogz8?`F{XeRL|Xn*}cbgT;ID$=%1FeD}TUw;nZi zG$0$X=OKc?;csRR&9fC?U|SXt5HUK>c281x-mZ}u59)(R*93VD`p!e&%EpDxn>?Lk zs1CvDIESw89Pi5^v?#kc^DA7rJu^n2M+t020+8htxVFJ@BFBNl*o$7(KSdMx=Q+~I zB2Sr~W69RRjXi=F_#B#|SN3q}GwgFd*vHVpozi{{q@|BWZVdF%_UZu>A>cjGyB zgZ1o2&FjK<#t9uRGU9ShjH9fx6s1w923n(d-~bQY0-u}_IzS`#dXUX*S=7!IWRI`v zrSNrN(W@)%KR4FSU*Rz+NTInChRVlG2xKRan+ycDmxwcm2G0S_nXHnQbb%>}F*uC6 zs0%%FeeXE&QQsuFU1*I@V17z~mY9y2AI8?JBIus6X3s0U$+FrOToJ=-zeM8Mm%!~< zLe@7=WC)1BX%T}(EX7V<3SJ(v2i=;|_OUI#{mNm^otd@%Wj$Ei)|X%YjRjT;5lLXg z-fKhn^zG-IwVm_Hg(YqCjk=D9b*)47J)@+$2Myi#Kf2xUq<@MzLX%p_Y_)?2f4vrb zJuRL?$s9`w>GKt9VFg?znRSt?v-M6fjSV9dJxT1)->UCX4^L6t`R$W5p8Gg1)(9O7 z0V-GJN61+O``ZNcJ=xXT1@h&VVJl6jZg1=ye{#Q}t5K|RcY%-I(KAKr9-5-}Uc1{mh}<+HaxCazlF+GK zIkT>9NProwt$g}fP~*!v^`4X+qe~l4ZO8sUfR#tpRlWGq4(){s`wQ>@GFXWsTGN*i zKqt!OsC_K>zM=PV(Q&R{>5bXoO;E`a>tZOoMWG6f1i3p&{_-ckVEp4h{I@AjAo}Q| zkM4fV;YjY0h|D_+v(#HlZ1L@}(Yb3M-f6l%K1F>DPhcyF%+6fqM<9mjXceDT4e!Mn^l2|qe!fOO`WiFwPuI3j-k|Pyfqw2e_7j)bV_x`{cg~?( zK8H{J9QW>1@EP#el|yR?U_)bM-<3W%3}rTUgPC#_d!#i9Kor*SY8w8mIA-}?%*D)@ z13_8nHo^8l zI7$)_I4t7O)1Qa1Si@}RSY(Lqnu7?HGWp63WvFb3tQXV+QLk3TSo5t!XB8pdZB3<9iHRN_f1eZ$XW&~ zKnz__VHx*$1v>71ZE)>)N#{F)*Zu^vnqxPH*kA&jV5eS#&Y*%lN(uJ{L_Eec{5)~6 zHe>EYJ_RpuLgh>aklW+Md+EXXWrLo{r1BLox-N>~J*U*S4rBEi)qrz}Xr6=MN@d>% zt&aojDZ~k!`EVaQz_rlMGv!J=(^`CfI`~c%B11^7w8zz8slj6sR=|I%!hTxEv&1kq zt>`eTQ3IWM zg_ax7OTvPkw-rEB6PVa0c83kY3ej0 zYUbL8W;g)uY0y*ZQD^JH^R%GOqkB^)B{{XwV-@o6~|8IN72>*VH zCixE&3*2uF&o6x&p7|fb5cUDs_1DHo!fUvvKZdv9lc7oG_1QVv4I+tsYi^!(mkI4Z zk0-nLu&(1qSKstK!aSv(Ft^w+K0ML7I7{m4Y3uE2>zSO^*h7q4k6KCn;QzU!YeKL% z1&^A0B!CuKaE1o@sFG+miJ7AC6}jOVW&wtX4UXKheXpUnfdJuv`H3Owt)`XfThR0$!5el4kJY){nR=%7uDk*t=#?vyy|hG@pJEqy zifp7kXq6Av_Ad^>dEU!xobP})zosxcb7-dvx?o`ivmP9(4rtyJE8FLvmyj(`fUPkB zo-@#KIS^0uPEdSw zvDrrvTahae4uVOQ6k1X%J>VBMjF5nRetq%$>t8=lA)A1u4Q~42>yKBC4v^!E^L4ux zTHVC^;?GYJ*?E6%vx+%gRU0mC$UG|>Je9lZOjO_-s$k!>x(mI^9*on6?s(zUoms!k z@0`DmuVV-oD_=yj)yuWL%gcCS_dHuZJcDoL2ztfC!tUjqvHDU_=gF(X(@6c0=2Yt~kGo|f`k$9e3^m+}6l!TAmm*zzF!JxSEgSh8nR zcpft7>6Rn;EwB?em%%_+=AY&D3TH`>M;7=mdZI52*FV8wxXs}avV zMmPIr%oFrWdXF0Ij{&+1i#AxaDg7lY-?{>?e-#$zO*3Y1W>>0YM!$^w^O!lkb>`eS zdI2x@p%3#0e_;L0V*`f?ug{1+47k3M8u%%x#OPxhoKf!1(|0oXg~ga{@Pp|Mx>)0w z$NmWz70<%z<{4#m`(hzjI2!CkCf2RT9gSTRv;p{RDaC^qQg~M7m_w*V_P8#+d1M9a z)?toU(0ZL1p#j%wfE^2#j^=It;1{km_X%!yK9W_U82PP39NIs@eF==|8eIB@J~O9t)GoSdp89Q z!u;0ZB^ex~IsBdptvfb`f$IcV`_qnaX#zV?lzt4fUQ_qM(XOM(J@+O?=RYP)k#5aS zQywf5nGFouQhQt1XfK(gnwuf!au>D z`75xh->6*6m)LJ3h+%n045%LV25HQ2T*LDWDV49qc>X{uGJE-hQv?bYq$KD&8TfAV z4llo8b0j*_llH;ICmqB5(M7&?97#vuMBC8sd2uItjp3ZJb#P8SvcR!xyz!tWki|SI zAA`>;j^00tnGN!t!XB_YonZVs!PIc!&$pp;G-4iMzIgWyqSU~D_oV3}t$qBXd(C~_ z6XbF1UJ1y^6NGbHc6WLs2>Xza1gKR*&xC1�|l}REDqP9P*r}LPPj8Ts(f3**?2~ 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%0A_C`|@TQdkVOi(2K*8QA); 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

`3zb1&)|3Yd1>#- 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

9FOE1daik(wR1$>bGoUwk9q${ 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

Y~4O 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%0DJ-5mb$K)|;|Ek4y_iIc9nSep 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

1?8h1iz zPodXL=2kfEq&jb&ywoyTtntBFsp(g@`xLhxjpNk}T7Pllp6<{7qVG(Yqg!zHFoCYfaj}T03x~i?j|~oEn~b5_wKxU_3>BP&7(^{%y^Jt8~9HPOP*9y zf~VU6=hnJ@_{3_D<#j*%U{LXJT5Vzv;bPupM~`o&76|M;{uo_ot()PL@MJa<^hO{> z_rjb9UglN-{JbumJ)q(>D5&?ie(M&reC%dZX66B8*PnTH-i(twiM8g1ue^Kdz^|lN zTHwhRw#?MJrnQ4>4LcGk8XRqN?}^PGEt<01m!=ZTE__JB$tAt8XH+Qa8J+FU{^er= zotB5gvaE4Zj-O;MzWncbb{XymgEMyOp%}W%4Bx4wB~nUKrxab;?FxCcrD&m5P?$mp zOp+-)!wH!o5as)yVE!FZ(QDGrxK+&Qs9pS_!j6x_m>;Oyn^f`QyN8FWeX&+FKj zj*xX6`k4Ru*?qW;-n11Rr481p2j7hYUpIH-CgZ8oV6w99=iK)dH_y8Ie%FdI=;nD3 zla&_YZ1nT}52KNbnDP6uAPk^`j`2CgD(!PvBL{wGYQu#e#(|%On7acj0~aHD3bQA_ zX(V$H=6w@+W<$lyQpuc0f?sGJSm1Q3x;?#n@%a#b!W(bj8TrYA%=i`z`&;;tZt6U_ zo3NMOztJ;y6AxlvH*pVtTZmN)MM#t`xL%i(1X9hy{vTVe|Gbca(Y>3uWVif^Kg}zSq9Jpks;ag!6y&b zcc1!Ho`P9sOLN4rTk_?c`{&QFZ$5Wg;~n%-B_(HtX5;h=Wu^0Mc5GC1cXD9*pZ5Ro zfA22P{|^n!j*ZVqgd(|FF)uOd#%C2)0vBC9kA_{$IZ`|qYxf2hus(hJ#rY?{{>Sv% z?zfG-t6$^K`cg^e9~oSy7*Q|qF`u)jIz$_AV2u>^$nD$2?6t=scu4;FKK;lZOtO7; zGuxON8Ge-;_)N-)=6(r(a27oiHFnX7e!|JK#|)?ug9{#$Swac+U}+dqDQl#h=+2Cl z&WL+hsI|kL^ULj#1jSa7{dP6byr`kaE{98-h_X8AV6uTGs}(_0i)`&Iu(o&YM!$`< z^ne*s(};Hj6xW&teY1vhS;sG;M5&mlE4lkS4s#&yuXT>&@ybTRmu@8Rlrf*)4)WT) zGNaGqE$w=3g?*lUof!r44z3`EZ?jB#(hsiXl!i!j= zXQ_~RUBd5|Cs-tJ3D?nEm%HI(MP}+XwBj{be|d7=(h74Z4Tm8^9gqrEwj=ID)wZHA zDbPu-kjXLhi}xSiCgb73z_fJe&gkOwjLa;DEeiiUp=Y*fZ67>?wGq(GDxIcV{c}F{ zGR*uB&|jAdtF|CHEo*h&$2CV{y#;T6gPFiOchClR`wrjrP5LNUiXS-~O9J-7o%((afKK@%| zwxgj)h}4b@v&Rxe5ImE$It5xCu6`3eP-EHXukv2h;YYO7&66gKq#}OGB0GmH`V6vy zlPP!=_$T%Q;V6|6>cV2P)@*C6M z^%uIz&gCjS#WH(=Is6y1rJbv3W}(CE9*3Bhjxjf#tnOaTG>)E4s=WDLcvkmd3*B+2 z+BdODyv6?Rr|I^^_b0`s|7~VL@~;;b<>>zv-{s%mgZcG`y(6=K)H5*sAISUrfk32q z9X`-o^8(q;!I9~EKYab|2?@;Q>;^i=)@h0TafN+yz0e|qmM_i0^*4LuBEjnq)kE3# z8hVa3?&NiEvem%rl}Fc?Ojq`NORHw(&u>0hd@wY<@D4@cZT0}Y4$r1q%SEY?+NlvT;oJ@#O~J?>e<@rM`Q{yeE*#x6Vp% zbc^&ZX|k`Ac+lhINk#cSN8rOmo$2)?&v%j-j>M{`l2nrYYV>3xMm(SJ`NA^2Hwf1# zfDRyH3KzoYQ3DK?x}I4-JR0m#CqauZ?&31UmT}-g+h~>Q90p6UU_>X&SFUb=<7meB zV&WV$k@03_-|eD5rB;6GGP=?hY8|5^*)Z|kSU1i-GoL;CR@y(lF!tWv-YK{}qPZ2_ z;?0NSvmZVjnPHZ)I5e+ZWpAK`?WunKSNAoyd*>Z!E+Z7UQR125;LPims{xT)TQHl)ZIE=;s#e>`AOSlLV_R~M0>)#KqbgLjeI_^ zMg4{qwZmZYB;k4G9n6f(^HQ_o=A%h@FM|#Caz2~c0r?-LISn>t(J9z6F9!I+2Cr>>P$ZUBjyczlI z+L_H7$dS?cQcWF?no>fZ^}R9i3cN|#tjsD~lABi+LB`oOR)^CddLX{GXU@H=FAbHQ3&FsQ+MaBq=Syn3e`f38F-VT4T;<8H$X%I5 zK9ePPdQ%*%9IxmjwRvP@v+OVC;C@Z<>e?7zgxu1INoq^d+qO6QFIF?Mi3thR)c@Uiy>ubHdcm(XTy8mA0RUGnJ>=TIa>)=@%d4{d@?`ZSd`r18}VO#7_e0+9^Z(W9Fp?c+n2MzzrlS_jUwf+|J3f(_&-q z5a#zTVHKN+a=Q`D*Sk8!qQ;&`2(>Q6O2vdJTu;Ei08O#a<9byLWE=U$@yCV3tIyL7 z>Zzm4PfZg`a>3hoCxwP^-PAhy91F~e-Ri-LnQhWG?z#M#7JIC!wYGh2?dk{b&MGv; zjSC0ab}n_W>|?$it+o!*o5zon=vUEa?!~V@`8LrxzH+hmR>O!;kT0!;6|RN9W?&cO z#PdgHMLUL`B~GSa9Di$!9aWH-kiXbG^=OFaU@WSfk|Tpl)RA?zOxy|DWt~S(G@piF zPX?719c(jm`tr9qa+81=W)u1Ci^AEf-gh=VFXHq?luP?$q3oOZJFaRy3E{(W$;$AeStWNQ ztoe2JC$0S`x}kuXjBICWJ>ZB`0{E+_t%?zXfng42!r&j`)W<=z2u}J6|Jv^32sM(I z^BBHU6|Hg6P1c2NN@B;WnRoo|zx`ja)90Uu(fqm;u5>qN(?OW{fd|GppTsqf2TbwaaAT> z7goo8crYo4!kzVK0|h@`#W3Dh_6nO}vdJUlEv3i;OB(zoY)WU5ZZ1``bBYw@&@0mW zz@pXR{XdRbQ?LP&8%Qtk|NA+^VpUhJb?iXX!8ojhNdAqN=s;)l6p?8bH#;d z>O_H9ae@15G0}QF1=qX}mc>M6?|P=bdp*fNL+n-Wv-f|O{n?LtW|e>3KeqJ0&P*-- z{>+5%JAwt-chLX;3wH7Ua(P+*y`{y~KM@I6|3b2&`a6+O`O{H>`liqjdVmi15n5Yh z%$8xG=tBeJk|8vnljy4_<<>-B-=ygFtG~Q``|p2w2PuJkxNlxM`q7YJ))}hI^^PqK zzWT-o19y7HC+AjJM_NKEA9@XTe&$7$L-E#wQ5~!%UnJ8AiM9T?#+%Li^Xpw-aM>9y z$;%!`%N2Y=2l)(7nalS>w%+7;le$@6`zvb!l$GF0eS>degArOw5M z#g}ixli%RG+@?`&(qC6=yXPbf@B1&Fe`XJ48p;`onTW``Ue6h@!tRzCnabslYvrDp zRn1(8yO4QO)Z4^YOuduixz6R+PqO}GDP7;h2eW%c$^A5jb`ZPSA&=Y{tl)}?85DZ# zh66solhx))uR(M zlcDLm{`&t6;x9syxS{0k!V;ZZyw^V|aE3FhN^?L@|L%sJ+szQ9G`oo7TMPuyE->2< z=>wINDOyP(Gmohqv6MPg%`vM@3uMN)&Kk_%398l)pO?^?B@mCN$coP}M~J|W36N10 z;<=A9j|$=Ug56sT!Fi7a`Od7c4?_FJ`svKi&>U8h%hvr4@_NkJ5O@prm>X=lO@S== z$W0GAfA0Sz{+9;F`%VB)xF1brz@1qSyAut73$3sxwN56+R*?6?%ibth+Pq3oE5*>% z5p8o7Vu|7j=Qf>QG6ML%nbEarRrZLUnU|TGh={|sj$hmDvnd(NLWYKd{mU;F@%6Fx z5BDY4_U_ED=-(WjTYc9WtKNkv`O)36mA8Izh){7Krcv5DaUeNf3ad36hJf)SPMdR$PA>s6`VWEipMm2g*vSx~4pf~U{)a_`{9NghH z_CaPa6-IWmCj7AMa_T5C)=VoJmjka>q_KIFX5O7c!;=hW8ez^Ge>m6X3h&r3{pgmI z4kP!a8%B$l&(~Y+oO;=z`rv5?*blg2Z(GD)1b}wG|LfIA^g)I}czs44* zC=&H!d8~3cLzvq=KsO(bjxKyOGb6rF-be4lo{7=12@$kkr&=Jh8fFCW|8-8s;P{N? z$G?2vGc>bO;2ztxC!3$v_n-bJe7yfTw|V-lHe7z8aOSRH0Gykn(OHb|OH z7AD*5(zn@t9N>N2U)K7!*wgHwciBf@*3ktD>+tQ?&^1+&{Ny?JGH5-su;E#IJd3e_ z_BQesg^9{L}d6$x~*t9VgE^Oo}S#$}NkXJC+^30fszR-3A$7NfQ7c zj-{OdyD~H=J26+P7K_5#f*T#BR}0z5a)l*}WVG!9{9&cnQjZF?QWz4eGBUo{iE|uu zEE1znjeSf)6)%!Our$xry*ja?)%0NCAsE~=CDE&41scE``7O~_sKsZfwui0n zJ(}QiZTMm7`v&HuF0Ct_**^QM(PgcJNG^p+?Yt$JP00Xgsr}WGyRcVB#|A4cQ>Jbx zdUBg3dQljFS0(P(G_0y1UPb<19rzGiQiCfsc6Vs@&RZY#Vf9$-BJ^!E_O6>~*6RNJMva{hdi(M^+^HrR<7IfR-2lq2 zxOn~gi~qU>gQubQ=km62F-t~A%A0LQsTaxaYQw>3*$SH{=lR)Mqo!}>TIXHnTU`oBfEuRBd*5I$ zv4$qKMK)g@Pj-=635=LZft`7l9ZhDDniiHlbE2&x_Zz$EW{I6$)m_-wXg~eUE?Ua^ z(5$o}b7YSUvD!6$!_RoVUy>2>4JeHNynp@GfA*y}eiN=`eUR*6PkF_2#C% ze(;RZ*p3!vu|(y{%3wOG>0ikA+}EQ4(018g^cqXdix$|e&uRSSahQN3hH!bJ+_{>~ zZ=TE*cdsVk<@fX6JkU6kA8^jR!(85sTi{_uX^v%${0 z#jtCgu;vZssO!{X>%3PRaNrsujjO~yx5PfB%ax0m+)48-=3_%-+T9zNo_gc`hm+*m z&wSK7yE46`Qw;$G99vMDyG%KBM?St!fvy*0dc_b%+mM6{pX~1NVgD5QTL#60N@Vey>Vyj^HO)6u)(AK&J4(9!jp;ro~pXC7iP*DqD<5 zHv(iA1oZAW44chdx_(e(4^TkYkY@&!hsP6}mpen&NHvkd^ADRbD7B@j=PzQhTq_Lo z20i?4?C|16taJQ~VxewEr=eX^JGEpns_-pH-n%y{9hlRuk}bUqw|wbF&&DhjlBSZ!^1j@^!09_90T{l|p#40)a>) z5=ab+!sfZHw7%zp^XcV>1tNIFn0JKPBZio@`C(6afEfm0(?%2M8RCs&H@W6SQSNFt z4lftI(R|NqZ{7Q#e^zl1ZRVX{eKh#y+qe7Qfzu4iNkt9fSSs$l(C=PMT0xDa6F%N6)?( zCWGt!`+ZYCo)};F;nd{P4`*kVUt#C}lfiMpo5Rz>54-gM=fb2|q7kVSdhLQh?4FaD z@SGj*Fl#;Ky*Pt=dZBe^PcW&RQX5^`L%B2j!ROVDqsLMHH=trXfV)pP|DLnse2UlX zT4na1Yi#~&W+gAlA$rLy;(4icbj`f&Ok?%z%9Pe^qdmUQ{cxhohkJ|Jd~1FGY7HL^dLL87k*p+DzGNC+aQ@=u z7iCwZP%PH>%5aoRwoE4ri-i@}MfVG+e&hC#P+|^ZmC0F))jU+bFDUpXR9{)0y%H z45d;KO^cJhkTSfrN{;BlPu}fWnh+b+oT)Z=GF*X|rK=ZT*UMyBGnmYJV)>NOl}ged zXUGxCF~3O&HSX?=JkHrf&fh_t`6m37T9SGon?WN$cxs0Ie2O|CW=pqXxt(Xx^}TZs zdSfF)ZpEU~zI1nJVTGNY*+oyloe7$Bhj3o-kEf!>Jw;?h8^MR0Q=q^YV{lJ zOrSM`}Z%=1^nQ_!_ilN zb!+f#S8AgVo&1Qx=pUi(o`IP$qeWMwvZiLxpw4TYi79WqJ`&8W_rrnd*Eypz`Q`zr zoiwJ-^qk%io#-1~=zHy#H+p~c(|1N*{nZ^IJ69w3mTg7r)G-e>A>j5b>0JJKxhtj* zHA-kU8tucEYiK2kWHMwNv9&y0nH)V~n%uK&xUj?H^RlpWcAaIm1b@0-;(Jr$*(=X4 ztFo|iYxcy(7VlAq-fJrWIJH|bdDG8BE-HXz(0O+?a>l<+|l?Hgt#VqL}vMqfBx=NFk4en*O-`7lTW@K z+Pruf0a)x?(bG=jQBjzJ0e1K?5Zpk!Hxe+3lUOL@GZ;GQOZaiu7232aHFKFAEG(~l zni+MDyF39)I0QK%+Uu5G`UPvwa=HcWD=Ez3%$a$9N(ecESu8*{#{} z1Y53oW;MW)(MG(ehpNpAYYj z3U5Cg6F*w9MW^O8K7mLZlv*Qo&9XU)ro$x1qpFnJ59oWec2m4*6Y9feGHoqlbCB|@>8!9%C~+pyH#@k$ zoapkL_}XmQwH;ey_lc#eb|Qh0xQa;dj(aC&rP zY@yr#YnGJ`lVDkI)9CDu(WyoAt8d)2kpCGTSyZ+Wc|Bi0e)?^>bN<`h#_6xgBltYo zJbPvgW={Yn?~q@)%bn3#)w)_s8qX$N^aF;_htcx(E}G{K`}G~PogMsvo9XuX25&+G zK~qs`N#xio@ys2Tx;tXliCHwzQM@7EIk_`J-GRq!EpLld^Y}B zS`3~g=jc73BR%hP&5!HjuxF3fYfH9|=smU-C{nUSilUe^IYUkk7yyHuGrECB zqk(R8&N=6tGrAEPIZtE`l5P1^?eVGFs;%0p{TudbePER>N;5$B`##Sv-1l_{$>xkP zR}U{y%7=@4F*M|1f4TzuuIj_5?~M}~kB-|)7KomKftI;}63;bAiXv;HvKFnp#t_J& zw@Kk!!$X>?Bc!lAHq>Sny?L{uRbJ1@7QH z{b`=>HiP#h&hr^!W)mR4vy(%JSyZHTruqESDqAecd?!J6TatPtjfXo!Et@lkD+TuMMZCdf{=N#c z(8j@Mf7m3~IQRO;-D#LnEuP~GYWv6J(0j5qhbSE?+6~T-8G&=_DSI>{79f+EW>=>Be|{fF<)hG z2w!9$wPJswc{<2!uuE=_U5BA`6(+!Cb~W$Ni@j`&)P6cDRD8ducl3MXlcN89WMc6z zC+C)bu(YDa|KI<87y!=zmwR?31JWw@n94=9e8CAHgk;4U1ReS^lb9cd9{&TOKUfWFS-pk7o3CLudTa(%zFK1 zhZFyQcy!4WwFJ{qncfzFrQt>NMb4l*Jhq_n;eij%D4azVR4G@qkY@&6@MbnE!E`;3 zW+zD|SbH{9-8y(wV^^J?K-hP0WXX=G+Xu5CfW|UF4GM@p8}y{sLwaX2z{?sShYB4{ z8F}#2By9KqJA2N8jbQWmNs#Pfk0o3SoPPGNVX~o}=*P{>63hg~n$6UuypwiBYh>6Q z*j3i3Zq4A-L@F&K_kuA~+t;s|0!n%)1wKLrEFP7b9UnEPeu{Pm4WW^<(m1QK8_?XE zW4V@z+FOmLVU5v-1U`a*xxP^A42j8ClcZ}qGP2I4!NTDR@0VzF4i>n|B8UIUez9f8 zEM+M)k1YmzVOzLiF(!5li)ypD-ESk1U4^Zv2yH%O-MlYtd;iCljdJ!!+U_Z-np(sR z_X`yENr-$MFFQ=KgU-_I3Df*tiEw5kNv>c5je8KSxX<9t_&7*?6rYHDx=dIvQ>y9z$r(zV{nY4nZ)L~IMx&@%<*bux!^(Jv#--}aUdKlf5!I)ItCeFl0)gc{~tYGxVax$Vou#?ZozKEc$4NF&5& zAWsxqMrOknd!i1jAY&(s&PfKigIrD zc9Jvx-nH9(zZmEre{KN&A0B{zM)Uid?!L*_I|n8{qW`}Q7p$L|z|5j>MKU}*rM)vK z^t;pB>+opzIj8sWPaW98)!qIn(T3dM+U0D*v%h}mO_kvO`1h%Cj?uE7;Z;6k=67mv z#7^Xv;32y43+BpCyz#;V`qT@HFMX`B1o!R1^e)ft4s6;3JhFR;tM^NrXUFJc4$uYc zxPbxEyzlc_ZllF%26OAx`DJBREH|()Xjb71mh;WMES!Phz^uZnw8lfzfQVRG#dm<6y%QLvhJI8)CetEku54B3V0={2i}h}EYV*`VCXW@ZAx!H$ z7T}tJtSLReGLn!Ti^LeUv^DC~$nf!7nbMXb9rz^q^bJTk$!%@WZ;9y$8sLjN*|DuNwV9YW`?-=PVJ(G(rJ%IF4x1 zj2}}YR@qk3BM3Xtd14`+zScJ{CdZJKd&A55$o_OA%^W`MNN+~r)Wc9r`S~5lcPaYO z&^np7I%JNBi=mpY%~D{;hj)G zX~(c|;)84VA&#bC+WC!AdxVILcIH9VNw3>xg}Ts**W{PzeLYI|L=Zw(dK2n%goHz z!Tc4A-;o2IvKifhGP2nId`KVKPc{ zwl!PY#+aOp>MC=9HrqVMD)_)kS%k&A2GhJ|CMSYi&<$SIT|Ki36<@w4m|0gS?7T;m6{NpF;=0(jM7t_Zk&8MQ`$KjM}t1d{GykAcZV}tzLl&W zeGD()6~F~Q9uunmsF=-=h+PgU^t$u^0b z*9>0Ht&)*>x^YS6wxB0)vA6Nl6NJgu46#Ra_s&T@%%wA>t@F&d$b=s-pJXj4 zkkX2Eel?sQ13FeaJ_#CIFkrb2J(su&O)|&ow%Zh}xHXQ9oqG;U+NO_lFVuYaUBH!W z;vXuJ{Zn&jyzEV48_vx7sgs>9h{+9;hTS@Q6SdwEm#fJJ@u#=jx(L>M)m8L7iz1C% zK;J3eeej)_?|AH1|I{7W%D3o$?(=hW_Kq)p^vRup51HfMgo|<$|7Ayg_hC0|i|aRg zW-i?wUB1q<+D-n!F#A$U-o)~ns~}@XEESQ1O&_hO(r@FHkgr-|ON)kp1UBcI0QRF) z=aL(6LKHb2K{&y4hezqIou zwaMq%`oRN@E3zxnx*PZ=n)LeH|5TINfC1)|u~~Iq0LPq1pcj za~kxvy0!+ zGmqek&K>e*8!!+z5SJvf%vuWg^-A&elRWoRoEI$0a48%u@A`N*tclXLBAnlX={0@> zt?B2}FERUY1Z1^#~> zZb=Q#Pi}+^7JR2kvH%ifd!zF&gcsyC&pWpVoD`y7*f~D-8XIuLrsdiDaT%{KptL( zdpPGzG>dEYU}^jOX@fay2@g_23LlOdD!<5b1;2fYxm_L~Q5mmjHC$@d=;6tU-Do=U zt<4}h6<=m!y`5t~9!0cwY9)(LWWTuc^n7Ybe~d=(NvLxCHNyR`Xaaw~`{e6?Wq@4VS|L&^91P6ooE3Z_z00qvLDE9p~tZ4 z=E#{Nwe)mQ`!4HitH1EMDKAj?|8( zO_9oYu(&;ho`HbaP#6Ec$DQA~C$)yI`Erfx%+fC7(SDtbx)<1=|DV5o_sU<+%q{)Z z?40DUCZ?AD4<>&<5Q-IlbNx>5_hA7)Gc_&xDgW*l`fH@EWgV4p+!qV9w>srbTLZQa}?XQ2TP!3MClr zC8axC!K+bm$8xz*fhv<-->YxzpViopBOUl!@aO*0_^tLPb32{ix~>&Rc{g`1!Y9iY{VU^kv zHngbrP-WM{S&e>Z9mY$+i2sAUuZ)@;PdOeAEgp5&bk+8(Sj*pqMk&tyA2hO4wrHIR z13K2WR>XiWQ#&Ft$XD$NWiYd~HnU<9qst?Qr=rZ)_SNBZgZX$841A6KLk+}wS_6t5 zeQV5uCe6W2!^6&je;Q6*c*DMA$?DCH(DL-cnxJc3EGEuYD)r{H+u#0&c4S^5T_EFb zLSok8!_YJ5^dR|8Rga%0DPTk7j)b|VljJR>IaA>_=M(t&lkxgVTRZ=LVM?cUBXb3Oz&Xy&JK3Oh$jb z1`l9qa#21F>tXKhI6JsW@yeW7qab^Qxotx43YC#+HCXwUb&-6F-#xR6XJ`S2|1w@k zap%aw5_{{lFf&?m9Sne+EVksjGrxK6Ep9*X(7WR0P1|6s+Sq*{Z`wCZiM1;q!}w$2 zu*RLIWNxFRcvUPa9c^7>d&l8)#TpL!3p?MF%@l1|+0$D~@S|ZX8D*9rvxx)ry_=NL zRSA1oVRqxexKQD`ivR2VRO8@X_QWssO)kGQwy1sO^-K3&xz;g!*%_$}#n+EH#*zZO zutN4F5|JUcLQN#C@19eZm4*7q`n(5TJ-*o~PiAM=(l$^Dkbz+55`%yZ!G2mb@*X|DT^< znG!8Zm+=8>`ln<*gTGW}7P}?U1-6$|-aS_QNA!&Q{Qi4nmmfsyr$dmK~wgxX*6oj1~U*ywq|Q&TW0Vd-3__<*ma9=mB=FbWUvJB{*UKagHYR0XyS! zS2%k@_SY#I#=~H?b%dUrOu_2DE!Eu3Z=UX^%B_u9af5kYrA+o*m0qu8a7QEE<4Yd+ z@|;7d1V;ZPXuve#T}AG^Qog#AEtPjtPo91qS>JyE3(GEf>+;=MSmmps?3O-W-eT2T zXC78UzJ2Hk7j~V@UTvQIp2G&yYF_Tpnq46i4XF*?zr$BK^%HCrU=9$9miEF(6GFVF z+`$`u!1$iM^Up0(gIn^}wSK_>oY_g41%7l`iH4Xp>b6N_MGp*fVnCo(p?h2Fn-t4= z7xXYm;KeuW0K?33SDIaMnGA~rlAkS;8a5#FP(9on*!T?(b4oWp7(e^9D6^I@d*62c zaoiOzMVNDi3e7VgJ)~I%W80mqNy%}ag%LW3env``lZH$aGnu@Bcxf+&J}_pDmtwF@ z;Q7}gd>0|Ky?$mO9`<<-IBia5?jGjLu>Yc7H~&6aKa9e`4au!hkJO&@z(@ACeeZbK z-Oe-`UTYkFT3&;eLBTn@NG&mSvv+ohzR`&9l?b9Xhu2|YfA1vo$;B0IV@GM_yt3*% zaSOkz&5_>n5_aTacIU7}HeBSuIq3Jz7+;OlQ_5R?0@aMtX=c{I*?JP)z4$iL&U#=r z;w*0-kr!RokzKlq=vGC&Z88PZChlK5`g0fD13Pt8n>T81dxG#PGB2~;i-Sq7^x!c=6o!cF%&QtSIZ&S5_y#egwf zaksN53BPd{wk|x}!>-)=i5o_;jf2HrJN(pp{PcG=cE1{PsBE&Qw@unWiE-IFh=>gx z_q#TfBI}Ggo+bc^_4*pRKA9<)S*2GauCW1&-Z>YppDg-nX9Br3Fv(#w9!zbHqe&dZ zSltbC=??z?>y?A2Z!6r%AK$n){k>ZqBY!r~Kk=v2)8hZsac}T{xplXX{(teW$0kJ2 zj7>^@G(97E{`#Gs7p`=TzKgD^17CIjqQ)_Z7ZdhSa1!3Z!lSSLO`x#`z=()@Vej_g zX&hYD2Pc{TF?RHdn3=BSH!l<{XIEg9u9UYPtVBxt3$UlBCl_Q>9lbO2orA)ajwz|C zUu30^1nb;94X!($Ij`o95vPVjJ5rfb`>9EZAlVt`3cWj^cd{e8p zM;70|a)09X@S+e;!|I~ayLx?KQH~kR1lP_J-8xCcniq*Vs8nG%L-_EsIFXEO^%_qd4Fg_uQF~HGR$}z!MJyX76D$Qe>>HU# z>d=e}RcK1=w(aw;9Xvx?X4VF{ugrrI24=bHcJId=M}R~J94THU?rz~N?XFIv}bMea<_#!6+6!~xlCpgehkx+#%uG# zte{3QvDedy6<(v>SApA~)-#9H!5q>P(@c(E8XbSy%J~Ghu4dsb(9)Z!$r{!pWUy23 zyP4Ai;7WPpwY})>!*Ao{^|4I%8DaP6Va=Fe-LmT0w80TGE^D2tHJwkz`3y3ss9^6W z$EU+osHP}ypUKHxTIAQj{f<}!?W@$EVyo7>6+IYAB zBE4JOHzSA9oRCX&zBT6l>Og6q`0kcwMxxh<)h_Mas!qG84O?N+;bGWC8(6l(r+0;l zJ1*{MOFILU>`$}WhBwUSLmqXgA>u;5p!I`+si=iA(=v0ZMZVKDG!g0`tkWr2gCg{0 z{=ydA6T9&CfN=a;-|RF_HbK{@Xp!7Pd9HD!&TX8n(TkyJv5u(h+3xGN2Cv?u|L+@| zy3*f2b$zIR>Tbuq;ohFXx!FmfVx@0Xq8j1JT9FzoBa=dlP+@U#`M9ri4?AD`=vJ(I zL{z&wEZ%2k@`T)-PtkB*L@RqI>|A%ICAvnmwzmT&cqg`gy1^c+Fe+Rt#_IbNTbVk# zniBe_3f`3>{HaoI`=SCLIgJh_-rikT4xi-MztBHsL(GMFpIly;HBt2T>Bjz}G+9Pb zvRotd$^=LaS8yDZ2Kl_*esexrJzB4SE5t(Dl%ogS3pD4({QFo0A{BRgb@j#Wv0&?(9Z*mCO_iS^&I?Q3~b=E0Qd_z!Dz!q9#zxp~+67uTK)C6lX8z zCtC!IRZGW?MbtATxqoL&Nc_{x?U&xTdVfTu76j3?x?$U(htu2}Tu{%;Y%Xi8oSFgT`8F*6o=y-!^anAR-8yyk0R(5g7i6I_#qMW z((FeIQRc)UgckvH*+DpFE|HE^1ztbA)E@d*AD>4UMrxFKeVp$Lv2HEROgo2%Iy28w zp7Viu3X7hrLe(3X^#`;@IT zT4;#ZxfeFPfV~NJ*x~cqW=FQpZZP)lC!OBG+12>vdy{2>!nG4E9bC9`txv&Ne1VSm z3-W2cVutci5Sd7XNBwLhu8jXzg!dfc>DOd-R#vS;E&Vquo6?-^f`kiR)Q3RmoQ&uHhXA6&h8^>**gw?DXk^XI>L>+TyL-s-!2 zYhdiP4{r&2#>MhmeUsWDKxLDJ-t^8Xym0?q6d6`Bs~vDKeEsulF}ykH`88|!&e&2A zrc`WNtP7J*-_FTMllM{EJo&r^E-)`#a}-RTY=!KoBJ=iQqP$tc9|Qk3RcanTt}w4m zuIjyR^nYz#5E(dL56`BLJZB$y?LM>z9+A@S5v`g1{25VZ=t=ZKF?KjXsXh?$=GG(W zjbq?-WVkwVLAa0sW;ub@!|z~u$BpE>BLUoZ(z82k%oF*(Jek&+i+aF>mrKtcOK}|* z42VM=fkRezvW{jvXJEmjWABZWxo*KfZfACGg+paww$}CmX_oO8qG{DgO(FTB+AhTg z0SY9`_`hf{dD2*sn+EhUdTJ8v*iG`L_8lhfVfHIdxI13XB#)8(J6wo%&Za3*+|~t( z8`5h%Q}b_J>YTgQJtes}x-8|plcJMC`-qrQW8^}#aT(9*GW?2M%dc~$<$^}5`v4D@*;fku>W(>7dtpOEh~D^P1(8=o*Uu<{_HAIwJN1m&qMr=b}MQgbD-$A_NXT_XKPR7& zS(Mc1YBV6SzNyufF_C)dtxxXF)2A;nPnR(l5YYpTz4XqtshMTHcwD$9hJ7ks(D;pf zM|ckXX7)#DG>_UlM+Y@NW6wSEX0nPg;o6EnT{E6O{hjB@*MD$$qXi9tI?QDY%nCML zI`$#t4d7!fQ`79ZJn5R5oLVh4q=EZKFSVrLjqhmiM#v1IGOu{JpF#&j#sy^ON%YYT87wj7ldu0>frn1yNUtw& zzb?W_6`ef!P6Bszf%kD9HvODCRUL=HKIVpfL_OAx*77=@&DT46CZ6x_8GUwWX!_ai zp3&z=M};q3zuEWlCpYfDJ2xY`H8;J~J3X~Du_{rDr>BH!@{7Inn*}suP0n^SeVYfV z^}}QO^L_Fbc9=~bxiZ_wGjbRFzwi!*`(wE+u#cCrHM^qQB_HQOW$WzGlEQfmi}(>* zsn5`*pTp=lLXUkyJ@z11-+hv->^`L)d~EWiFj^PSVeg-#vpdFaaD*my8*SK5u6cOC zUbh7wb%R+@BU@|L^7Wm9(HRfHe|JxC;4NF?>KEIHR`#!IonR)u$`aQyhI+;{)> zABkjr-|)(%+w&bm^Fk~`a=s4}55J>!{F#Tnmb;x10JGZ5{LJepo%pq}O;@D2YaAEK zv>?jB5}f)7L-DNG5`KC?qS_wQ6CB42TMxr>cJgpKoO^KU6xNXVrFXAS<4apcufzzk zVyxglWZrM({I3ib;F!B@2FVoi0Xj0{IYQD{S5OEd{+w8# zKh|;2IneaFV0eUgk3UPgQuT<`5)AQNhS{@30A+@#mHm7M;EE3Y)E4aEOKtrinM^?s ze)u4nnW1=TI|O6LuW%PV_~V@LJ8blTcD%6Mx=k}%xU6pG=RmnH{5r*@q)eL=`TMUo?`jNjz5~)a8uVi&{$}Ig3IAT@N<-mu#3$qcg%{R#-R*W zob5kT>&@8FH8=y=mLJAaz#iXlQ{yqe2*DZ2dLq@s0Bko;q`2iM?w(obH8{@K73_Cc z7YsouIsqlzEkn4t>%ed0;v9Cf+j1LYHR6}gkYAp(b*IiXSI!O}*qv`4qJ3_Gs5+e)y?T8>lG7mN*|(cA2@d1eT$M z`v|#fQIg;LY6W)5oFiGAVk9>qv&M!vm-=Cr-Y;!FxZOPc?0q;A&)({s{LB0I$NwDP z&!5fAuKd}Zy90l6?Z*ATn4DVr{>Z3++5hs7mzESizkP4uSMc`U6ev8mrX2eJ%049CA+>4 zgQ2FO{?)G^J<*XVD`6k7Our*tR9Kgk);BJkgfTOR-%`OWdhNAOdS&>% zoayFi+@0G>Md}Yy^vp4YSP2jVDKj-GEV(qk&vd47KyGd;h&IY@3#E0_i*hy5Ud)5S zj&$wVg{Q_MH3y9BNR8-JEN)m5Fl@EVhUCCnl?zg%2Hq&r-YvZECD4FJWL~D(r{`ha zXEh57+ZyMpiru%$m#E7SpD)95U9KHISs0#K8hYcS>qEDDC+23Bwae5>a+o+u^p+}` zR%Hh~cYKw~ba~f%{`t2NgEQp3H?&}u!3$yE)b(&8`z9a?PyC?T|+`-oY^(}PWZ+I z(;wX#p2F8UO)ofyo_1kX<5=N+GMs<$-%Z)gGa0^H(bS5O8K4Krb$qI8bY*OCPBT8X zsGb(99pYT`L?N}tMZL3%NjL!GT6dxAy$^3+>gyT5+=cJEw|D&dVBcg%XXj{tSO4_< zyjUxnUC?PK7qu4gs@6sxFkDN>Jx8DAF{*~%y>id}=H**tv|LLc58wcMYU1<-Ki;2q#=kEiJ0Gwc;JxkLMqz;#S)O7=#-is_#AU{V^jaz3st!YWE~7Hfn7L-hB&PU!LKl ziCJe`i{Z*O_FNQ!+`n}XnP#9x4*dSihE1@h(dw=Eas4@Fv}pU?jLD)!HOw3(TnHI6 z7Y%hk5`>m!T&#uLQy>>J#r`K`!t`lkNM(UBL&^MW)_o7Zk?CHrM)tJFq;2L&7Q2($QrJ~aHx^R zR1H)PN>WEWgEk;THeZsRcbu7a8Xi)*y&q)GPG&(eiocUZUnYhwCk7iT0!uf-;3dee z0oc!anDZh)4n`Qxe3ZgJs>0Jn9h5KcKQ0GhA95b1mF`p${!bF&TNa-!e*a>dBavUx z2hyt)6fk*m%w4LborhHzY&rJ+dGrufdZH>nLxsAa3WK7Grnmwduz@eD z{JP5KPYW@d-Rz(9y?MDK{Qlk1Iyr<7H&4F&ob&#(NagSgX2)N`BKn-O_EWT&k4Kjb zC(No(V3$7FJp1xtvfg^M{osp-N1y-uDg2Zzd%RXe_mVGcpA@SHk8>;_!pqixzjE+t z7&fQ_0WWRkZW!NqfQJC>Nzs*ZG>$)GMZ3Ak zIV;>fcqnM@J{-k%(Yb7J-{=>}udoZas&mDzaDQLsb9ryo;CUOb^Lv@i$FDHg{fD06 zx$g@^@*j}<^Mi>Q@!yJ9w13yxJJHSn{2_h+Ptg89H#NKR3(2bHmz_QRKl{ZCum19# zOSeBnyWfY$e(F~L^zxF{W5CyH9T6&xgY&C~sbw`xo;lfj*Y8WZCq+H ze`;t>J~lEd>-qR*|E;SX!&hE>?fpwHzW&}PFTMHU&6nT0($_O8o`wk^xOBUJ<;uMg z)w>_vG2HH+aCVG|L)1Ab?${(Om*Aya{obJkC6Uxm8l01bI|H-q{xwNBIyrQQDdx)s zJUi=X;Hn0K#+dVz$XhG%f0n3M^BP+q&n%7Fz?=2twhHhvSE((nD<`!y$4zyi%XQbd@&SG7le#g)3VBUg!ZPS${E1UDxq{BA}N8Lb? zrbnl#nwM(jDo++4Z$yqhV~wau1@|U#&lQy~Sy8L)Z4X64MNfn5JS*uMouBRKpO`{> zETq<4F}f2HkIq0N!OyL6*>UJ5Hf-F~Kr1q$PwL~lla?cf>V z{A(W>d*l^v+jztr{^UBeixx*kb%H?G1jF2ELyF-e)ZX0LPnoY%hNAnVca4%05RQA&qo$mtp?ifjlTRDDjidFw2VbryHZKbN>`7`pAKD%HCm4RnYgnC> z=;cEzHhu4s!$CGjfE*a!;f(-ZO8f(rKz#i)oNS&1(GWNV@UXcvST$3xW-D&8oZMlw z_t9!AfuAtO?-JBG!=BpqDf6REyytn@q*x^!n3j>5vAVjXcA3$bcw?28XY2G+FB~ry z{1>M+-EzA#Ej+Y&dfdF*6s_TT%QB1fyU6_UkwN6cXrR!F#~Wu!W*M<$wH4t^3J@6LP}svJ4SA#NrsT}s+B^cus==qT2a4?+Q!o8h z7*9~#8^ufL%}1G=#3H%PC^cJwZ|jZZyqS>JJM&f|dWBbL;S-ldIPtw`W!O)Yi}~EMDpuofo3TCp*c;UYWS>Er;Cb zGqKae3%%|QmiF)rrSS%4-QGmm1-ICZ2G0|zAG(<{(O(rUux0c^bE>tjX~o){(rIe! zUHD7Q{h->B@&hvoa>fOz_bCOp$spXc@a(p|{aW^TdNlFY+&WypaKY)X9(&i2tg75a z;$QcCk=j83?UtWxQa^n0AiE78UT?myJwF^S-^R(Of#%Uuhs+$5Ps_|w{=Aj0Nh$og zyatb$g?YV`*{_3nyxSJ7yFIB*R?nyY#KwgeZ=r)680)N>7AJwWIaaa5!E|CHb^hCcU(r^ z-pL=1w2*jQpazfByS}{Zs#WU~u{`X69D@ zyt8}cKehXRv;aSt925RM*}p##2xPywdvEZC_pf%pIWjB1v8oGpFDM)Xo_KwPz4?8m z(R=lWKYi}qzxl`KKkOM6^#RYs7cBky{)~nlFwnI{xnMTE`4R^ z)RHK-4D6%GjmxVSWhR9^P|>ij)x(Xl^NhOg_RrZz=45{A-ZXyPB%aqOJJh($nnx#^t&Weo!q2r)-GAIHZJyM^*=C76@i@Ah5a)TQYj`0rBv3}! zKV^Wyrp1P6f=e_G5F@hp_;&$v3AD63;_(HA;QbrDOZO&Mm2%iE@PO$}HxizFD{YH4 z5>v~%h{zO9_=*QvYSJvc?kvNgWU3)L*$wUdq457o}z0ZYsr~F}f^wcgvv`}yjDvo)v(i|^r zIM@T)=QIHeJuaENb*sW2Gpn2_{JZUZ^s0498{oV4zyvPY@r*g)b=a64TRCein2lhj zMGfe7wFW%=a4c4t)5 zT|T+07f+zKS9$U(Utvc@*0n5xJ`N^KJM(Dl-7DQ4-Q&ym1_YWR7+5o~%I5J#&!(z- zv+MyT74-HZnQZhg&~T+xtM z7%FZNoz}E54>6%>hsjjep^1@_`$1%Qf!DRcJDWAA+*t$uZ(i{oXZ`5Qc0Prj-WToV z7M|9SVRTW)uBL>QYTa4fd*W=6FYHfMS78z@;*A-7{lktyh0!|<1AY*_{RDcFdD#53 zGg8AckO>_&eErtJr|mms-WV(h(f-YKjj!MV^iG(Kwc@(ANL=P2L#l8}GP&qpR=!;EZ4nR?_^EMlXPj36>d>`H#bl^#IcM^_%b3|+% zT+-WxDkom!O3LI*q?vc;(a;vr;pedg=6t-DXfl$a(pI9KLnAc>eeC2NODdO5%+8R{ zGJw{KneLXK>;)HfHTk$r*1hEakO_^Z6dxTvKS$IgH3jgAMabu_I=$(27d^70?M)@z z#gnP+`_PD!%b?S+Ye()|YinFo=vcKi{9yRPv?FtJP?}-=)}wF8e0^+D!TaQlV-A$! zzByoi@77PRS@L~ zpZ?w{xA--1_!+I0G-OwhUmY`dv*3O4jgO@t-RvPp(@d?*SnRShuhRr4OqYxi78&oY&>WvyqU6`EnXb<8-DmAdrEQ` z_Huarll*y6d~7LniAl80F+6~AeBtO3w&O=6Ot zFPmzfRe0yg{>ze~S4`u}P2ojIwP(Dk^`jCyvK*Y+G@oG>cz$MHPPnK)S9T@K6*Pq8 z0p|WVv!M1x99*a|D`~*xt1CVE8goqc{edR)&`q+ew%Gfvb0(IkLvj+WFT{>0>MQKl z1#0J>))PN>r?(!{tUd8&>z}eed3b+Tenf`N5t@pJ-~C_z&v#FL_aEOTN?T8>K$zqC z#shLG&(@Eh?mH2x!aS*_N;@nF3wdk2oNb+aRych0ZI-=aC{o$-lS=_h_5`-vNkAXU zyWsx0E4vRosmd-Rk`0~Q7Dif9=BuwEJ>8~7ZLYA6TjEX?l65l4o@W5@GmNiXXL^0V zn|HH=_wqW6glo*wKQ>0|9|X&Xufgd2$-t=azs`%~e>XEP{ksK`{D+HT^$+iKkNwS! zd&AF6&n^FCRw(`1@YK@t%m<#o-#h%{e}3t;XW#wk#;dQqbLGm1H+uRps|ZKtBxFfT zr0_l!aMoq_M}$l8{e+WCO2Li3sp-3eg0T;-b@#ve-qr38Zx45UaHId`Z(hB8`F+kH z{V6-#sjt`RHcn;;-MnF2gHexIZ-K;J%156v-!w`_))(yM(7X zes^3HK_i{x^Vq8HKWQb3TQ&T?MOc09MO$@|Sp* zi_0|U_zvl1YH5)^n8bq-gH_?4RhYeKOhd3nV*C@G*Z6`wV`yM=VRr0c7!)ziuM{7C z7%wgRwT%=$#Uwpd3=MP?|5<23?(_(xRx*Lg!L~QH)Vkn0I`YzoTdAL5_*Ib!#+Kmzd9>uDkh4>OL7#&O;{k)dj+E)#4pZKYw#UYoZAE8eV!v)gxNe4Z z$_^|^K1oE&OxqaCZ<;xn3~E;dSIh=I>V}zm2@Y}8$g^j)1WLBHzn0J=JDwPJV|9OZ z_em&I+x6PHs}=0k$g*{$t9uSl>AXjojUuo9Pa0oSTMPNy^nHRLC;`fnOoz-rm|gHWju zyHPiWG8-nXoe^TRL|;?lc&Tg6{`8ujyd98qQlmdD!T>I>IZJ?eo=a?O=XVC?CEx zFgtv6V1Dek@7x&S+2jh3$OjixDlxhXb~MONcYV}<9_|(odugA+lZShru)CsF_JSFQ z)a0{LAK=|B!E(ys<-^klQ;gn?Ec2X|-bKIWE~wSM0(ji2vUUEYDplE8QkjF}xReGp z!RpoPJ=4E@@9OP;AoKFa-NTE|4b98pbBdm49`7Vs<4*saGXY8kc?Ej}kFWw)R`R%pa{cjHqO)<6b_Jn?o1uTb?LPzVq2d-9vViZKmqC`TF6PnQH6v{j7%DxD>_?#a!HkmWE*YBPONu!ExbT@E?(6d%;!yXgakh3 z)^|=nYvO+>rZ*3Q0=d}$>qdr_Qb}*8;oeks&MI{)_8h#pvq-#t6vN{mhTZ5#JLYe* zKs@Zi(GCV9wOtSYnUg!rS7{xESUh>U##J7GY{5WwJ)W)ZM|fWS)%`O{h$AyxWQ71` z|2x#-0brbDFe! zUYqpR4j;F5_Z;mF`|hJJ$Ra9wILiEd4N+%qC(hj;V>c2(dlm{8YOwgqKF$b`qjhl8 z4Lw}!HCUMd*~jXg4nD@Sl&nD?Z(&1xauSxub)NH)dbPHgwVKB zOE&#m2Nx~|rpo?#mAFr!6!*-mNduW}LyW#)83Y&As(sp80PtJ^#{MA8@}7ef>ZFzgh0%(avGv z=;-{~{LGR@f~TG9w92*6a^l&r!a>l}%W|*P&G;%TF!2oro1gqEw!ry4j+0&Yippxe z-7{epuHe1%<&xwxCKSeS97t=1utiv5n9@Aif{HLuh0#~ye5>g^g$BOjDl-}Kd@4=m z@eO>5dGcoxrf@wrB6kOvz4_22*-=a^pYt^U6}w|hNsX){~t-SS1RW>&kFJC0l8MqB=fJJfXtD$N0$AR zlf8=>&Kx`TAnc7e+=x^BZb#UQ_Uz0@^~{1zdT+tXZp?FJRr!!lYQ1ItMDhd26H(B2yk9{(P1V;=2(%tkhzOKAzX`K8&57DKS} zL&#};5?8?oH`7a|s29PSRVXu>obeL$Jcbcd~b|!P8=& zS~9^kF_33$TDByu3#KI6{}L>uh=HsRJ(@VZ8yx`oQ6{xBX2B0+Cr8A)eeqo|RM>H~ zS;-9K?BsJ}(K)q5@;iFiP3QrmlK#o%#Zi$~jL(z&n=Cnrwk7oOL^K!L%m(3&o|)kr z_h$yEjYi$c<^;Tm;X7lJ5wg9600u?2E!EdGCc2GA?rP_R z<;d}tI&Gva%47j9}pBd&n%1g z4o*zkM6YGBlP}A?ZzJN?!Q94*hsR>0rqMVO@Jdt0WtH2U-@0IY!w$jh)35J6H0@k` zspKr3_~=^a-4AXIc99{(?B3kVebuuhH4YC>tc*|_jNctz5+XoSz)n_JeY_U_vT$VC zHbtJxIQ#Tz=Ek!UOJo+$|1>)G8R~@zwD-NUQtNHl{-4~wJ$UJU@6^@)p7EQbL(})r z`tqe}G|5{-$$eg)48Zxxl)e3Xj3fWV6PkbG2d@Zf; zBtl)I0uOo3zW%ut`{>M?g*)(jva=`4J((xFyTo~% zhpmM^D3?UDlFqkI5}eb)c(Lu%3Zgp;Sn;QN`L2EBE-**%S?Q&n_#b_nr(cBVjl3|7 z96SeB0(Fclj*Ju;QeYi zZT^gv|GlZrAVAk+Z0Em3OYjN86|*(Ej+Cxxljz+BmA7c~XLq=(cDx&BU$Kflw-D8! zWCx>oV#GEq*P-Z!KE`b)yQ(CaD<;Wi#K)gYAxumg zL-`zhg`zQ3%1CX|G(7=oo=p1!ttD%RO>%?k_%o{9#Wi}3b?(>=YOp$UzuK}k zuugx}GzIf@as?}#b46Z*MDL7*x>B0M!&6^k1^{E_bW!I&LDzV6Yh+>P&d|ah7d0N3 zoi8lW%2)XIzT7;1{CRHU;4!=4hj^tQ)(#$@t?!=iac{JT1QgPOkc;mSjBEn5iK7oJh>f4^Cc1c z?0I~XGr|1c6n_UZ|D9p#ia|@X-a}^F9cCN1_+4*>Do0mR8y9c#pguP-E&lsOvGN&a z0M7^(<^133XF7T&|L$JT%->I<0i2kTJUc0n{fr&Kvpqc{|L{-G{_-E+ztZvRd;L=% zb_~pQlF2rK9c8wAcy3`;>t5mBUuNzmnv>atBLdZI_r&rj1w&uw;QYN;-o0_-Ztui( zW{j7A_3C@?{_3^&-oM(}cj?W`H?F+;_LaM@y?V?-XQ{EvLDQ`uok6<>& z>D#mG?0uT(TMM@bW)q#`;w<_+43Y>nGaLJG!44AT-Q573QMo123T0cn>-&$kSnqi8P8mpyA{#9jl0x_ z7tq4pW5l3rVW(H=mAxl!c+|F4bIe30ff+vw z(8iP%&7+OK%S`@7n@<3Xeb?0T>Yc$^ z8L|!&v(XUyaC|=b7Z-g0TtC&qipJVh5W`ZO z=p2{!T|TBKK;85U|rx$|d`75Y4D67X8Fe*xcKf^O@H``EJLfbT$3^lCV>?;nUd6v=n z<}SSOEww#)$TM@!3;lqZ`D3^`516x`FfV(UtM7e=2JA6tj>p_L-)tN`{v9LJuXsnF z#B=M9;W?fPm7ZhxR1eqp&X4J1cSEVt9)7VsbU!VdCsq^5%{j7qip9;NJoQ&(0vHp4 z%jNpvqwUitU+=e0o@{3uyUm@`C+jfu@_awetM|raT~jjotlEckVBM@Rc?^r(?=aUw zp43icPUQ=mBh?7Ksh^o5dE_pba@7!d$MNO~UczY2hsHC&emLqc?7=BY`-7QH+SwB# zh|cl6)Y^T6pZSIfEve}3Yxn26re#Y)wNH9yMAXj3LTghA!r^GMw_}at$1z8;62|ix zbEUQ-fpjw%OgBUD9U|B;{vl?0Zi6dLKb~~S^llIbJ7o54M}4Vg zm|07J8L^K&9Z@Cc{viCh-SaQWo@=pdtjNcg4WjO8$?~93qo&8kPP663RO6=Z5Ar)j zHI8T)Z3qCXvEEVvd=z&dTi81@u7d9=x!D z*}YesvnvJ%9%VfLskYd{!wkrSe%0>Jl$mA1L8Sj*K+g{YhMuTkhn0@Us1gRG93h98 zpSy*;;3==k=K;#icAtaxxZ#R#T)6R-o8cbVXe?Z?MbKf^ytI#CU=M=Pbi=nSw>jH> zio(u=bZ+ZGnzJwpKR$pi+)FqBN87IF@bNbmd>7Kb870}#ISsiJ$VW@IT;q`bzvY}+ zF~TtPT3`>@7@5(W1hmWT>^E3&+yyr7D65rOFW;e&nJ=E{yp{LELH|zexND_%Fmq8D z6lRYOuL1eMWER+>I=HbKr6s09v!yF+92(R>51~aVk;JmUhEpt~ap=y!YSO&ddLPX{>`=78L_VbD{lu~%INS41W(ubv(t)?;? zr^(#bX#_1QAs~3>eR-2Rv*q7^_yx1DOmJTAgC)L`PE>X>#&98J2-kAS=0zp7^`O+= zSFw}!_l!*2m^W~x9C*o^u@ORNC9lKIyvvNQl|H2EY-<7NmCf}2Fn?2M$7^=#dk5bw zIWZBNHNNR)H|pW;AfxQD551y=JYndEbuuH;dV#_sms^8!>S;0lu;CY8zdV_$wv^;Q#+{9JeVg(6p2rcYx;%*{9FDR>LUyNx zoEyA+a7s!pUt)vjciXOYrC^@~^-{G<54h4KHpcO{Z(8lCO$#~-`kNG3@wy%lPrG(8 zl4)%Plwd|f0XHXVfw9;2N?Xv!w^^I;ld}eVi%NDR?SKK{#IkOVI&+Dg^a?sa;l!d` zz#?D?FU1^QiE(#)eWt$uP_+H&AC`>io$0RWwNXBMVIaLpyOvtAg|lKZiA1qnbD?$e zxq$sx-@xq39d?nO=o9X64&EG{mtFqt8y{U_rqwaAsO`PkGdsfFEgBSPlrnwLTHb!_ zi#H$o3%if3cCzA`t!t=D=>4~CFk!9CstiK8&B!~0m%OceNSG)>%*?8-PR;@LMU*!O zZe|E*zH%Bgg$e+MV&-Eb*E@#VOtw1+&xc{k4BYCQxqankZ>Pzd8-;H(3bSS$kIX_e zx4uHJBQ{5yc>aoW{4BG&aD5i@_B8of6Zk}C*ncm0@B>{PUcK|q_5P3V56pht(>?Za zSJybA+lgCa!*g9||Azj5j^495?(+0ax^jZqNRD(>VEuqHViI;Zwi<^f#uo|0243*w!q0W-M zx*#(bSC!WM?f&t^+aFy`2(4Pf^`Je}#`X#~l9&T7;b< zGwTd}ZJKi~1CNb5y%O@oDsFr=7FeEUYB6%13*<`_ZE)XB{On*yW|6-h!f4s_)ec_x z^Nn36do`=Ku;(CS*Up__mYbs{o&y*=6&HRS^1HJRW;!l(U4Sdeo5Cy5*niAUB(0c} z7-i&_sPXsc+2305GunwNcEU4o(C6E=zPy#Wy9rhk*3kV><=}BRzk43SQ`F^g2AKJx z^-DVNjxrBy@{TmjXkksf2lnn99p9L3P3uB$Q+B~}>U!+_N_>ZKZ$WKegwQy6s-1K8 zcM;7U4)@DFBl4+rjYeV&XohAb@=Lb{W%oxHyWAjV^!WfkHqV;YVP{@RMuycU|m7i)U&8H}R~=C)_(st@^dEiwk{%txB>+G!QNe1>^sDc*csFK$0B zC9C^6Z*d#%#xXvZZ4QfypSsP%+``584G*^2^%8@ZEi2F{%Gob$2-I!?`x5~(6Ctx( zfiKZqz>78myK3B>-5Q5KGh_?qA8^L>;03-Jt{i;0qICT8_@v-Xsod~=Sd(u|FKm2Q zu%UkA{=?aCe|~rLjoC%N!^u_s^u(fUQKWGSMrK9JeKX>fX|Z`_Vo5oV7h-B?e&fNf-uvwH_de^n+B-6P z`H!F8{P;J2xbg=i{~vvN^TB6i0o>r<`+ElF=E;^64bDkTynD(C4Q^Pv+yhy(VH$HlF~^Y;FubJ(4aT1PKV8Bra=Z`~HRJ3D<6>AO+~3{261d_OvPp75k>2g&oC_ENwUE-D@~jKM5_}C&X5~>1H~)q%-~`!# zCOPUchf97~n_h)EY@JHH*6{9s))&ay)tL;&Z7^V_AO|1TQ4D8F4i%OS- zJ<Ox5bEZmXE)E{)a?Pp0scaB z583%4I@Rp}y!A+Z=gf~m*iPnSm-j+%lhrOMZ5n2qV2aC-tjp-RYH)cXQ}a@L|Fz-e zTj-^3GAF+b|N7T_#^3wn)t+x7mHF=bmu~*>O3&a=N9HBJ<4Aw^y+3~b_N6-mA1p}B ztOBG1%#mhw-ohg9@-o>#3(GRc!(V@J?G8uzNThPGKz})9@Z<)i#=t{9=YD#g8{Df` z$V9(N9sd5%)ap;}-yeQ+cyRiMy?qlu86KJc#r=WVclw4GKc1ahxq*?iPau#@t_!8h zQ&S5P@+G_8xES-q0?hT&+^QCqc5R2g`p}y!?@^!cF}K?xlzi6_%AOY6r>7FFdk0X> zAqKZ|-rdJ=@}Ai;?Pr`>=SpkjB9?2tBs<|1`+#S76<;LF%`Y|1;0u{GctM$Pff3}C z9_k3g3Ymh{M=<+NLb>{WzHxX^Y8`A_e3^=d0Hx~o;|2`-q8LsXei1xxsVd;RPV?~M zptk?yVC(q#&ePZb);xdl=WN%ni8o1jwRc)Nuk=wq?%)RNuwOn5S32iO{HbKadIHSL zV;Hw#k0pZEKt9BtHNq}CN@i$S#m*guEo`?+knu1hDf;$Et;@ts@_c1>&%aDDcVI1d zLjFWV_{;aM%yS0Fn477tBIJZ$(tVF2;rdBB-#X61=gcHJkF$8olYB<8NTD5NJ{gfX z3lV%}co1@4c6;=~U?A&GxuwIEuow@kg9lW z!L*BFhnVdn6LS~Y_^M`=S)O2gRV{@9Xu=QW;@yD3o$#Sa@u4mDp_A#t=0oT%gUlX7 z>`;Os{EDyxsDr}Y9luxS%F+v003p=8YubPdPegZ*1uvmQMqm=2f5`>k#6?E1+lP*+ z%OF5YZ$O*3e&^xr!nMBXE`t*pQ`rF%12#(5F$DyG9icy3-uB6KPAB!HCkhkXhhK?? z#ep!AIcUSIcSK=>7Ib7Ps27xOG!|_y_aFYuRs;tfZ1W&ox04k7tyHwKA4Q|-WnbZx zpnF13;g#NB96UEyp)Hz_pY_ib>swyfx5EbQH^FoLaeThNT)z*gMcck_3+6uy#)S+b5Z zQ_qalMEzvutTN*%LGzh2POO`Ba5a(X6OX-l<|P}GzA9#LWt*17)=L|^bfkt2W9#s_ zHB>(}D%^Qi%q=6CX?*KjhJ(l7n6k|y@`IZoBimx;Iik&@=NmADS2&wyHV-d`+NZB> z!l?M|!_k$0?Cl-j6Ns84m@PjFyCI1S?o%4#4E8D!lrm9 zO0AiIwUwZ+j?#vN#|5e=dOP^S+KeI6XcP`!ZsQkkt{RecQ@Gt=1l^zpCiHQyWsbIL z&SJgzyG#M#DCkUo{U zToS(Tt`{Gx4Xu#{9V*$DEhl^|>(siK}S{&x8)UO9|SdOl)w zjsp0dU6EYdj?TcrERH*^pyIqyW!h(&($3@cf!X!0r&2@@gfzNgbK<3g0nJM6#6u5c zp}#a^+~##D3O~8gJAQX~X?99vUU@jLS{+-_!LrZetq+*kZ8)08FR?zofPGT2Eis>j z4NPs2#K+*a!`idXORQEgnnCm<{%C&3i(kgWyv1Rqo`5M$BxK9YuGCxZTzKfStoVK{ zHgJ+7pM_(zprzO-^ z>j);6@V(D3$XyFCq~^&g6tG89LEZ&U^-m8i$VJrLtbLl^aQ%#Y&zcJio`d;_nVqw-%R|5m zYEnA03D@j+$sELES&%5(`PsSQTsk-pObSoVo^3sGJ2D+3I(P{lEcSTyA(*(= z2WCWfL75MGBKcu-54|JHss|fd-zYPLX=cFF;{wezS~P(tw=LxPUWV_qj0SlIM$Dwr zk(fd&KEd2=9*)N1?Q!wwf;#d*WDH;X?D8Eleip9|4$NL31bI0zJlA`-XK-|2La@5D zrdCcZicCvuN&=S@;kjj50bRy6HPkML+@9PTJG2F|$7sin(G(n#Lvma@czFn0r^7qg z;2tUp6vo77J!8o+p)NbIBn`du(dTyR8RxCRDL?xaX7q?3Ld7)iV`xccBi}8HRx0a2 zcV@>M==2u0U`0PlTjKQ;IXx+6rztcwh3MvKJ>NO2qX#JA@hp;|L*D#pj#@H~&nSkD zG|HVF#CHp?0v>a;&}FK@^(jyX=WJ?E-n6Uju z#h+`2Pk_s~;|!J$9pvlk?_p5p_q?&{QJ5VuLe*T5ztg941iZj)w6&pH_T0 zl0RO(KlhtIem?i%mHW%^RRo_i{2QH@t9xfQjH4Ls$egnFPOck=7o}!_+-xWKh}~Q` z;z~D@wpcZdw<-hUq{!T{W@VX!#&nDKZVMkr2fy?-zjnI)zbn4EzjgZMAy_JYX|+jYqzRLFF&1J)BWt>;LH!!#o8at zEQ-H3yCnXeK&1Zey@Ba(-*_WGfou68iSsr}w>8-1<{;&M< z_m@7qIXM66$Dcp^=$G$*`r-fj?H@m3_kZ&jzyEB6UA&@s_<}I!Yy{0#fqzFw z?!?Qj2JC~1)*i0nL8&5$EhwSMq6JEke-RpAlpFYd)Wh@Zc9V~o@YZQY?@ZtgOe6s= zXYel<$=j$=s~6GNcUcrEr6m;a`eK+PC7AUm@M)yk!=n8C%ovx zIp4}Y;t1Tx8tvr2aMq=43Zu`+okSg2bi$-^0HEvo-S`n6I?yC*`p4$vH2wy-Iac-- zFm!Sjo*^sRGwNw}2F|n@Hma5Vo43R)nmH^Ufv}za#6GsHGw~V0RA$tX?zpnmBPTpm zX6fY7`_klD*IdksTq{bSRq3r*36!wVgPQP zp~h}`mgNoyTn-P}9ihX=&wYVZ(FzB^iVn^~=7>pVj97H8h(&628)RCC9>0c(pEcU7 zv{h~-TM3^edIA^P8g>;m#|R)kc8&gc1Fvmm*A*uxh#J_8QO{s<$5~+(3_MHh9g5cE z<|F2-X;yr7Wi;0&;wUGQ8vURjbHqh9_4wC}-CP2^m_QklK0a%_-#bjYci6F_uO{b- zeWIVt8+yO}7@C|=cX#QHH$1jT9-m{{THShN=WK+T7*i2gtYRjh;H;LH_n&U?GvuQU zj?v={@q0sXeEORwFR$~y|ABMom%U?4Kls_(AASGR>-|5z`C#;?eG@Cc>YWn3eP>MY zF5J$KXV*>F$JZ=<%v5J;r(Z1vsz(!3>*jmQQp;VuZv$vB$LNnnq>lIiwF%ze+?|01 z#Z}nqpYyzYCbLA}om>?EQ(xccn}Y*WKj`n9`0>!-^v`eH8F>53jlPejrk8K6tjY&g zh03XgIpNC8^s0P%O>3DESwk{wA}?cLwV`s?(NpYjmma8Xk$qpPb;zFb02ad@0*;f- zy~k(x)DBmb?tOHaCu}#Kc-1O?#W2aErMLyMRQAceOY#HfQDTOaX9m zN#;(Wr)t#jZgs_@M11~v7k_oVb^0p7&qw>oox!DdKDxcOAhE*R+6kdCPlU^RNzV9G zuyT;#{tk0CutGn{uvd;_IEgV!jvIWXXrQ!Bd&Cc;&cpY>EZrSqrkr53n?e(p z!c*7vuaTEsw6JHB{_dkYOYqL*>8&#ZnsF6eXEWbUl-Wa;oo^c7Z8}^%%5g3vneU+| zh_J&hgr}AMV6e0sa)&m1`Q@7N%O!qD4o*oZd$yvyYjr zhdr+w`z4;`EI__SSO?eC87~LW9?)m!-EaszWD^u3K$vmxi*+q2q323aFj3@U! z>^9x>aPA;14~xHOql7@~dJGFGzjpKC!Yp^Hkh;srjMl})<~9a0E^18tkj+q{+6lt5 zz!zB}HuE^BcjsI}jR*aF(rWNzbyxf6<&$fA<;{^*4RZ)r3V*WFoeWqwn^c}GBcWD4%`kq~ zQkHl#yLi>{g5? zbsc@&3c0Ma`S#Ip>(Ljt$YJ}lrJ-;9kf|MkMW_^mPd;Z4! zoZv?bGlE|TrH=P!MUD^NyWIB?@75im)bdcOclNX2>kX$`Q`@IsO~)&pes8RJt9MFx z`DY}ST)96o*gF1Fnj>c>+&IMN-?F8fNA_V+*hCBy`HEf*yb3L~yPlteQG>*v%v(D( zF7xq96ut?1|3Z9;Vi;3HbY16-aL2}AbR^y3EZI_l#JEtGSyH%5QiL8WayNl;)pmXV zd57Iu6V7}a9!d+%PIq{{xqbY6)0S!$6s|&o`BoIpZiMA;R6@5&e^AJ7pI1uTPjhN( zJgkP@Bl6@T@#bl!bM|Fg?@oo_?S)}ZN0$gI$A_Qh{>k}rQS#o{T>;rOeW@58) zmzRDwz}FvQ8SKTx;o^?P3s7=%Sh!&JdC8`Cvm3Uf2e)xw(~qQWt7@NRSzaOWv33PLA*Jp+5DVR5mGh8dnBIELnhs%rCd*@c~3{8uA=QhYN zi(8ow+Btv8Eu@AZ4_9Ig<8enb=+D@@Uk9@#7oV+DAh+4)B`)MChrV*>4DSGVwaT8` z_GEyQoM!*mCHb_Va>Nrx{P7NvfQScSeD7@OOe{wm1|_M3{H#I?hY+% z(A!GbVNwE+b8jUd8LuCFB4%X;W*H@Gv2%vkp3J{MQLZvZHpmeqTE-`I#+!0#6Qws% zQ=sos7Pn5-jl(B0%$3WFGUx1!%mY~~$(NQDnfyfs`*3}I|EU31yb1x-y3G?=0wOd` zX7wb`!N{z{F$lY0h_KKHH+yHm?(9=ljJv&j|b0sVS*#k``<#T|b?m7rJ}%_Ry!?`Bz{7 z-WVL5>lq%J@4IsS!N~BWK)4`~tLD0fHJY!r4NVk}aF*k?r48hcnW>zi&%}&TIfK)3 zj(_{imaIH-CYvYBpZ1tI~STfeG?f~sC*4Q1N#F6sLU0JMV=aKHcWQ*jw zEJ6<%f^PnNaR0@>h1k*CnYHN$7bVKxiB%OiWBfE#Slt<)${O(VJdvYS38QPES87C7 zbZ#FEC^vjeH;^i>@gp5Q{mkFJ@mAlDfBxR+=!$aH=u3!u2Itp4yge*iR9TEuD;f*D zLMNJO`1_S80PYw)Kn4a`1#Nhhe3cqH!pgeF)!q1Y~BjBchM5g!`@HkRgOrGom!rrD@V2(n*9zsE;0)FeRsTA zaKtObGCiqf+NV`!?DhJ|E9OY8{2~A}xVkw$tS(D{Khr9bp-1lEW)VI@26k{3zD@x@ zK^{Fs4*q3{eF@o;wFaDy3L3!*&*ml`gGQ>p->U6jFbl|b^$BIPOAVfd+N{LHT%kx1 zaAgZ`)+Wze9<5ZetN$LFUh@pkZFpwZbje8bqG5>E>NiJ(VW>2o8SdyC8 z@Gy#V+fQWp$Ry}t@B)`N(3Fbs0T4-ASW47(Rv1OB^1LlFcN~W;(0}s9e_p3v`Sru0 z=^revNPe)gu6}c6P4VW2O#i*R4=2A(?$~!`=huHYF}d>A%$)G8#YNGZ0}n_4{<}Z? z=fA(vGyId!ZuGrPR^%tJ{CfsxL_=dM^6~rQOVg8U#>EA>V{roZDEr3Qffd8p^`WJE zpWW=gzPzEiF*LJ&9R~J|8L|D^XFcPeeSH1i0*#qTu602^Vb0(j$pLv83_ncPa0)N;OnB7nCn>=Cnec?~k&ULok31IPBPRELu|R-@}ez!FrF2^t0=|+8LobNUlIi z%Ft#-X-m?JX3+^2xW8-MsX*W=St-Q^^Qjaw=d>CpCmO-DKf9g5tJlrFNWhSeqwS60 zR|!ciaX)iJKeID03`QsOtS%#t-Cf1T-_5;Hw`NwXS-= zq5*z@1CN4dTA=s2l3Vmd^#0~BxgKf1P+{`I!wuu3WoMd-;t7sxZ4ub4)hwQZJp8a6 z0{U)VN0hy^Uv7=N(Fc+(6b)Xy{`c-V=A0E7@HC{mI%UhM)^A4GOeA5}%)G`-E~sHt zpx|7ym^8MSjrzf%bZ6*uavt;m^gTuI-uc&2rKb_H#@c>-Kh7n&-IlBGIq5HK)b(ce z4rX{}c5Ad~r|u@RxQS5H@wUbh94@tyE|2p1x z0rRURU%t7BpLcS(bo)|>?ImEAfJ(Fu! zz{FfZJNh|n!cW;ZzB@6u_LKYfhQ2>MH1lSE|KyK`2WNhI>rVf#uU^0Z;n>8&?G2f6 zgztAwAP}#PjLs?nBRF}cV$>c5G*A`huA5>@v^^p7w9$<0g_E@tJRHZIQ~T7-`^=<| z(8L_sFw5aj*@NZq2v*~T#hrPPENs6nZympavHHXjOg%@u{ZecWz91j&1tORyI%o1} z`{4W;F55@UzIX8e?XYj`49y6tV*+huRpWv?BrA*v4SD8NNqF`Vc7tg&`(=BgQ7s~kS6JaVt>=IN^pyNzV$=o!y_!%q$2;e~OcGj!4`hBuF2U;%oP^%b_0 zbJ|$c7Hi-iKe021l>F|~yNkWka;d^yG)|DAiI&=dHa*6kFRrym;E8VLU_uw1sU0$G z+GLnlVq_FYbiNdFx<}D;^$_+@$KHJp*dib~Y&fj`yhR{2n9z$-PCoM3qj~&0eoHvh zw#;o9wF?_M)xgAxin)VkNupPwxll6C65X3vUAZ&5ygDY(h-J2DH}}|L^%dN(C8%vu z9_U;@3k7j81_*oRs zet6AHFCQ%UdH;NT-DvbfnGUO_<4HY;$xoY#Xl7AM2i9D zAz@}Qmg{_kUT9RxEz7&Imkc3&h2Hs)UQwpEA`xzipYB~y?6B}MvBcB^shqhg5 z3OnKY`MIaa$Juf-KP1nbJ*GWlgn6pLSEz)iXiU@&b$GO;XdF%CAvkQlIGNDwmV$XJ z{4V$>6?>QUg3;NCmd5Cglq~y?Upp%Y&v~`TtAZt-ZJjg7Drm#`Eq!_Sg)!Z}z@r>O zVjmOWc@)-Qp<_HBjMpFCbmuy6U+)?F$In0S`DY9&Bi5> z#zkgk0xf117;QRRYcmH6#x22W5>7~x-Y>=cAO-U-iM}YlEVpFX2g3Ky)VW{UcrLcc zP{W^k(kX16wz(^ct2%cX>_;8rY>9q6i>Ew^K|CyX#DgSRhlN~}Xkp^yHzx7nrBdzV zv^Lfx6ZkZjuI#1M@TX`H;wt>9N>?$>^PeSmw8Xrq0MjOeM=8E;@+Qdr$-o7R@wLFg zNrX0R1_~ja^oN z2dy9F_)hoP^mM)T)X>b63&th6Q)dcQyZ#v!-Vzb4F-8VyF>xd-AKrK-FefC5vM1^hcNP!eEvzE=r9{v&+i)%lF2Y?oJ3dZX>+B ze0M@IHYd_Cd$Ut|;R$HFJ>XODBa>Cva>t6>%q3#f9W@8DKxelf^5xsUXrble?zAnF ze<@OX*sL(qi&e~=-AK6GXdJU9`Upm06+QQ&isu<#ly3db$bztEXkqF1pWdB^^CChE zs3B)bN&SKRxoL#I&aRf3n89yUJLBm8%2r#jjE*L&UbiKb`OXvF=Kc$f+8mal6Ibd& zWeK(U%J`aL-5zf#;rz*+*@N|=HMZuof))IgL=yVL!w&;=*Jc{8lg7W)dX5sWEOMRgK1>H94j5#nO_+uMMe!CJ|h|) zO(@q~fSq*f?e{PJ;j_>0{s|oR4cIb$snYIbsdYG4-#wWk=e+;jtHV8`%bG#h{#b22 z{{wd%?)l(Pw?2jcaiy_-3K!u^$1-4INWaajLrO9HuiQ9uCvs?v``EB;_$CjDSqvPmY+8T_LslzC_5sGbpM zaE=f55kAm!7%(Srop;%_Z*z`zhRXT{A3UC8t;F$UP;Ah%E-%sCVr?<3; z?O{9YNnaUe?}k2zX20%53`6Yj(-3EubIqP{r~+klcRt&)1}i;!d(I4)CPfDtICr#u z;@f%lZ$A8DPIm8R89Xj}Vhw&EJzjurW;d&fZBMjz=!3_PHm@3Po_v{rmmdWP5YPp) zUi=h3E>|w_q6eJ|kiVqn;iOQ?yP)?J5B=WqQ4p;kKD$y-Y>tG{Da4q+#+YkI5_oIr z^#b^B$Sup*R^&ETBAej03bP+vx;gmP&)%Ify5j5PSgdi?NSN0uKltpPmN`GX(xWVz zmptcpPGNB61S((6ncdq-wa#|osjz>|b;u$)Qu)%y?7vSlTaSMj znXR51%6&;bXgh)xyJA1 z%AB2bd}B?muT&R9Ou%o)pWCnE!zv?QEOG}F*aH_8o@@@*e-15C20wF}oPoS9kk8J^ zY$?Q?MLz#3wRDx9q{116f1p(F&IHf`*YK>C8tX_h7CZvF&CPP$%6RgW9=WDWG1 zO?u>tCAJys#Si{)a>a!{*ne+K6u33MkzCcgi)ex>(?VsfcV=y;uzCD)|MAz~1WQ|A zz@_}UbNc*W9O2qm5?$y8n#QLrAv-gpZg+ZQkQ_PG|%rhZ;<+zK3Jqdh4Hm`FB@u zKm5t6ME_3z#PXjWObTzI#UGg8FpTxjie`9bR~BWq#fQ@yGw2JZ?~bhu-5Qwc=^dH7 z_1?#~Zv64moom1O;KmKKO}EJUyLqE`;`YZ^?>%6@IrXPogX=d2m+41a=)zDz$J=eS ztGb6?DWYGHI*e%gtn5tDmnGT%C+xfzHX(DyIoLex`e4(?9UkgU=A-EB6Alx+LAVn3 zZf-TY*ly;ull_rRVh$M5U0d0ixbaW^w;n2(>v-6~nU^G59X+BgzjbaSk5+Z%-WZH@ zy^?Gv9h}6jzTO9K25vwqC{a2Bp~5a6|6G_obC~}=4B=GR084lSpvk%cC&A9+5*YU) zx`l+u;1AJj;~~!b*0dq~3OShKUiYfj>w+)pX8-4qqMsA0T}I9<{8bq;l*im zsM*u>@w3;=2=gJ%mk`-fJ~J~N>IMgzLwvm%_FX|^Y3Gs6Upg{t0|j-oxI@WUTqFDn z_PL$B&IVeh!({1a#NCAj#X zaPEDC{^$>|Hh%ZZ53au3odeK!+~!Q})4KA#OH%tC{1A6}hVCh?;X8MR<}dyB(%lb- z=fszp$zEf1eg&`5`{WG$=+@1??>_9GdUI%a_D3Tlb3c1HH1+oFo+0@ED?NBBCnkid zrFErYV{&>~LuRWV4_1!7U13dOt8~Nbc%noMKCKB>N<0@C zu|5>128;#AKx67jjmgrc&fNU&oX4@ zrYc*fS@bsre`zlZ+csO>e^Dv#zbK>k&Q*5Lven%uT^0!3yt2bg&vvW+yS_0dGZ19Xl=}O|$ z4ccKEJJ*c?7kN@{l|ABRS%J5w6k?YchSlR=m2>)ToyXzV2H?EfwC;qPd9$B6yhmvc zx=qd~JKRDLrV=^CB@Y@}D;^v3oYW2*+p9rFt(;!Btl#XLob8_yF5yR#q3cGf)N<0h zgZMj%!o&}5;GGiNb3rHE5cDm+MU@@@WYR^yXdhnEs^`Vs=)Q^>Mjls0$0av;JdMMr zaWr#DG=z8{Qeg%pF_k$G!#I`5Hji_=kG{;H*^ID52-y;wVc6|tx3q(iR6WQ}#S0tH zDKq#T)camvrWu$P*^WIv0ZYS)H0rptF`#oJ()zllFOtfJvz zC!Vuzw)Sn|bO8<(x~=@K)62CJfdRO#uo6+9v5=qVLR*0UYm??GYhu4^!S`*=)V2&; zWQ!OBaDfYZ9H9mLOxr^0gSFcJ)5X^D%hCG5tK0Yie|NWk=8c})Lx0=%aQbgY#sz;% z-T!xkBTL^|UJ}0r(C4R96N0xl6pjz>KAia&rq@mSp9l9x7J6w+rtxJ8=j4tBbh?Xn zU!KPD_<&4QSat8+&Ngn$oUbAP;>> zw0B820Se2xNT_c?C3D?BS-iWw_xE^ z`TwswmAciGF2Cq9LZR zXjZr~9<8AEEJ*QDEXVV0adqoNj;DKrI({8pqLLkz z4$Z$2ehE8-h>82x#{AODzMZVPsEyr%opat!*qNOjnG?nwXGX}z{Luzy%nH|+U2DzB zE{>yd*Z=hOe|h+KgVGr_#cKP;S+P+;eWZ4Ut7<-DiCE*>;1CmWck`>Z!46l3Mnl8= zQ3LPE0H@PNEoj5TVZsk+;5jm4BR5Af9UG__i-q4$HP0QDy;qhEjZ=mmLlG<;s_~(T zwBg43hBLb%FvVor#J+4?Ye1ZXS3k>pvZaIvycSB}YZlz^4{lSb{nRSQc8msT)8M zXLPP;AD)X(fB3WC{{H^(%vFOYKEN|S0b^<8;ex#H?$Aol@SLPaAIgugn;nBCF=X&( zhsZb>9GX}3-5Qv`uW=U#(ds?yossq}DZRt}i`vn3Lu3pj_I=*>%R~K>m;2fO4-C!U zo1R)9dN{N&d9QC$xU#0ytcujOrBy{hxS@&n4bA1q%9t(N-|$0Q))la)!Z?+iwQKoxWb)I!NSZ*fqv=(nLKqXT(?>gt!EA+Wprp^9hkE} zfcC*RC$Zo;iMV+#nO$!NoavfZ6U-yOIkX8?9xW?$V&+RG3;Qqp{zT($o5}Lhtg~ZN zxbkK+To$y&l#mBrm{LCOq^|#uy7nN*OxYta2D+YI@?~52R%2v1WZY=I;nI|SfkGQ* z*m=a0+YKUSVc=0Vh(HBMsm)dYbiBIJj}y4)YW zupnbQc5)3EK26WE(%$tH+wkeaiw`aS;`f(E$yZyrIWV{S>pxr-{Qi^MfSq+_n0cWM zV>mv(s-<7aRM{ohVdHJ0;oU>4e~5nU7$(s%{H#N`!e^=W`9%Q1ZDH@p30XF~_z&8g z6K$jbXtZ~?*cX(UUsE4a$Uu?2tX*wgdIvV_v&XX#0ch$q)tU!}D%^o#F zCU5~yaz(*q7%m@d#VY%4U*Vvg+C-zDX`%_Jme||VV>Q{?wo>Sd64dhv{%qItk-%e| zTGe?H3Tr5>ra@yq#;l-Krxt0zZK(MRod%4E3cG~NlFFWigI`8ZmuE+jWp2s*Er2%+I4;o8*3dnBTd$J}b5S zwr_a;CwP2+Fg3OE{h5XJH`hekH<<~%akp>cyK@WTAHe|l@#M_vTT9EL@89nq`WF2E zzx~yFm)`okXXv+RxIP(}mEP=~TtMmJlg zC#`dqw%Ltu&8=&;$v6SIu_`sNMN6+I`2=s#Mi8IA@e< zoFRJa3_F!de)FIO^Qr|Orj99(Fz0GTiXotTpim!H(Xv-U>1LT+_7c9;?sJ?=R=2X@ zWI4|4E^LaFm`~QDFa^RqZ+Rr5d+#NoX7M(iJ zGI~&_73QV4vU6r9KhI?Jq^&$VHs**H6O8;YoKZYXMi}fSU?A}GlXhytE<@iX&`0bd zN7fZiH{8}>)~*i}Y|JB=S(e$BoH@xUx1*DBnId%;Ic^TL1x~U)!FY9?xz=MxH@o)k z;Qac8P%Tv?>t#e=8cgcK4p(SR?RLTuqjoM^WhSpds&^al z>X4HgvZBwi!_s5CcIfdJcD;P2cpSU=g+;f-7;tuvKZ%a~Mqf6l36vtvSR)2+IpWT? z{LA_TbC#Z6z1v7qXaI%m2 z<;%cKsZj54M#R=g0B>(3UTP<(b;5>l%}>UPmtMrJV*g6+jkVD3KB_zX)g3Fl69e^w zwtnzJhvr9$)^u5@axRkvfD|();A~jMH!9#c!p~otV75HwPPT@$!O8=CV)sJ%-Fu!? zy9Y1x9ke|+`M+;wn&;Qq$9(X|YyJQ0-q7st#Cp%C%=xb_D6F?T7vJ>iUFmCYe{_>H z*O5z}SpL%VsuDZc=qJpUZw5+-S0`l7w{P5={K37Rq3;e1&b)~Z=&j+gnV;UiKl*l0 z@A$_s0q)_0nRR9wYcNlxi@?~lwit7=?IJUzf&~Ivs?^yEBA&?Cw)e#v$F|uM-J`ZX zjaN?}caC2^az)Zx>k7lB-WG1JsmyJ(hzDq<&W!HZbLxd}B9;CB;B)%RqTKQ-klFmE z+&cUhG$7xwb9-HEAAQ5_;Q5l;b!d;5(GOd)jFSU?qJ*wt*pOn$Aw>A04d!!plP z4{>h&@`D>PdN`*pn1fkViomOlZJ)g)+V{v`-g#o;KH9iCuq1piCzGvcJle5!vprMa z3oyqBOI=y=Z_^1hhbi>oIdV1AKqkYMa4mw5Iyk?kG%tztmIAv4#^UPFhnCmKnvrro zQA=ixXl9hx`{xu>0<~&-U8kf@)dVta4H`=YJ7zUHBNJIiCgyM~U31F86~#IpKsmk* z8`}M@wutj5?BwipJISZ#&$-YxxYrCG5Bt&pWk8ggg6DlVjMq6t=B|gmyPF!si!LS@ zDeeX|PFNnkw2#j|WDcNBOg31FAA9+ETJfO5HH~QKSwxrbP0n5EnVg~TM;e)st{MVe zO+we#Ob?zygWvQk4K^3tfdIU!WUl=viif}p@Y4k`!92VmCsW;IV2@zq%EoI`2}bgb zus2?dp~;TI!VL3wMW_S9{O|A!++oUs1Rnb|UrQ>B59#>Hmnm{_BIu00up`_$o7d%u z6vw^*Xh1$eui8fHOAHV@S zz%yMi&WZHQbV7KWs?>e^zD-I6&NA#32hP^%OP4iVwa{Ofn|l|?;t#E$F3e<|GuC(l zOW?RW8zBqeSe9v@ic*(uZU+hn@AV8We*eLPv2P6y%zSHPLh!9y zJtKd2`}W`)ON*j^T3QhQ0t4|oGF{+fG&PrCso#?6-2DQXZt%hQ+7!O8jacnK%3cVZ zLS2fcXhZ9WNb>E+9Ca-TrmD3yg;gvvM>R|4lu3u)ip)aT5m6@|E^Ds7!|_o?!xhmh z41N=USIhF6#xzZlJc9w1`X(DI>{hT9l}(Xaf$uk~b0pHRLNe@tGvVxZ2|alM{c3Up zQ8K#JI{5+(8H3p2MMaMKxkQdgi!;71GX}G0RI}7W1g1KpLY*hf{5des=6qmI;@i-N zqhxJmsiSfNjXQAd{-RRoLBBq>fyU9r4p$9NfKj>J00K&TFMkb<(@JbTIA74>947)lCWYCJ)?7 zn091!HvO=++yvmcnMwJ`XETryEnZkt%Mjno?u-e=qw`X(_Oy!G1^$%N;5q_sr zv_E#;h9O|0PNa5;nyAms+$s1i3tf|$jpxGZi`MPjBkpe2huV>2_L?zrZs-Q5M2c{( zu4Miq_QV@Y=oTjNfcNxGY3#JjQf{pJDy6--bXx47q$Io&sF673JsARGJRUqqg#00_sFzq8N!u<$Pz)r6H9wJ zhbLB*(Ro|E>RL2bgsv>jm0M!cyxz zT3=uky4B+SUij02HEyqFLbKjEE>7pLSZ*?31*6Y>=OS%cXVnV%FOFhSEX^T;H zRUa*G>zLV*mz~fG;m8tkZw#awWIA-*ycfRW{__B{Cm*YBKkNn%HI<$ImHM>cLaXQ! z+v4b5lL2_3A%ZAigudvNoiM3i}Z@=HH{ii2YxN`cG*>_+$pj* zO5L3xeutwtzKjHIVU#_!M-Quu0@ZZw!MKcjkonRxgs^EpIT#`4#UY{A6=0^0hqe*r zo<}&>jEJ-j&opoqvc3YaZbO;?e4aoasraFny^wxvS++JOQj6exDwj8max~QdK$G}* ztUfWtl|Gcs@;udG{_f;DkM}l=-d!{oC$Y`5C#mMyg_q$IXUi#f@i`)jbAP^h#{G6e z9_Eff>+6Iodk16$90c+^Ef|r-CAp=9wztk6w*>=rQ=oNM*$vm>s5PvSLY;jEb=zT+ z@1d%+B?`Q>MFP7@<11>;{r#Pz=YL`LaJpOBf70SUt>D$D(9ad{>8AD0RD6K}!{nM8 zZDK4UH~E9Zvl}peGjTGFVYB5j?7{II#7gdTqiXUO%J_+@`2A`;kC}l*S(q~??a6JX zCFW2VCW`yr%Xe(}5j|*113jZFo|_M6Y~)W^c}DG@_f9%>PTHEvR)X3mb7M@Hzda_{ z%66W<2$T-Kwx`-(k)84-`Ndz$ZON~B|G&Y<^RI=*{+INxPbiU}(fAchuuKJOXrT@)Kf=l)wSus*`MK8?3-;Y#n+^6<1+ zGP|nM^-rxiM>b4}HEX8K4gn2-kBcJQo)zl%HcY`M`R$9>>Bh-xW&~d%LH-im?ALrq z-;@9Z);s6VVWpgV)0>a8%|}n4fBm12*k^a(ux|6c9~HMB?Z8p0QI8gx8|Crxq&R1y zoa+(hv*E6;w#zwRLWIwSm?!JHgx9CR9;_w93>wI{+VmwY>X-_Q-!k6f8a|k+7U&g_ zmlB@WGG|MPezt&kJRK?|BQ2Xg`Zb5RTTs6`tnld&B^M+OTZQnPMoJh1Z8Cj2#K zaSEazxQF~O}>>S*_@_`q= zlFtRd2mL=Wg+_YtTf^Z{_UwQJ@51k>JJ3d*}(=)S)oZqVT1C4vjqk$GjL~9u_52HJWZ5 z#NqeFx?XF17I?Pv(b~@A1e*LHb3oR??QZrle=cKZZi6>7>47~GLE9CEdmi>=x5M1? zLAYb#OnsNp#c9%;?nKn~bP(Qmgt=ps8a1SJ=ezlauGtld5nd5|4l>KrTW&Nt=IJ#( z7^9M2>rHFXv&qRCU8f#cr$-c%8MaRLgaEG80vdT(KDn7}=g};+#wfkaAouIY_T#U{ zx6i&B;T-9YmUj9|JJ0T;m%7bt^Qy$?dw*<6{`S>-6TkVzAFlr9{ZDUvWDUgcfVsHF z-}h;0|Ke6<@7ay<6~)J#$(MblgFA}g=9LX=`ge0H${*dm-T%Fzq1iV_M;CrHIyV2) zYquZ%=KAe{kJ$m)z(M-LkkM%|)TU0b8qecUIB4H@z=@!ifudrdt7LbYI_$K zFu@;X8b^mIcr6NsbW>~U*snjj8<>|`QlU(_C^Nd!%={x0EIj538W!k-zWREhOLU!>BB(=$fh@n$@b*i50x$Zwv$tZtsXs4z>) zXX-~uYE+Pm%^lM-}vEYnD`!K zgNv&5(N(>a+!!5RFMBxC2;fPJQ4dBf{&av$FW>BjDMSWZs&eoY9edchq;Od5p|lZ( zTvz*}xHY&!oi7w#x;H7jIk+V0o0ltRq;{1+KB>a1b9#VZuAt)>jLilRuEBSh-{&7qOuoZkrL)^M;dkD<7+1?vt&-y z_Sj#hL_$Mwbxvws?im*f78MR@-?Uf-lT1G(P+QSmdEf!~i_L=w(U9p#^?*yS6@>ZW zM(60j=VOBrLM~XvsIcEYw`(dW-^2k4D`8eq5N{va zu%?@gZI?DswMhLXOSHI$p9|Syu4!WIW|=ip%eo5+V3uO${p*-Q)&z#|k~Q93W>!9L zPqqdFmBZWV=J|(H%bFkc+#mS|*dPBeF}?N=J^hn^fAjXh8~FVGd0|%g8|s1gS0v^? z-5FZCJhq~~i=K3FY(+aVw5XY3wj$bo{90>I?di}IGt#cBe5tl3UD?$UaH?EZ**8`; z)az*U@o4C^cstCNKmxA!h;m6{F~U}IDA*Y@+^|~FJ7_IoyV;#`;pOx3%tkl^Gw9w+ zXa)-FERbMQrkN{nSLZS?g%h)4Q`Vboc6C4*?vETglA=)M&A?NI0kv7-XVzf<-B1y% zE;7e+N^3khJS_=Rb8ueQqWFb;BP%M8K;ewipQ1l5b#*=&<|`TQjwp~yys*Up8b-&o zP~*kd7C~#2u>{K%*fsUk=4sW;Tta4vW@#qK#@Zng=0y?tYSQ2iqto1q%n;bJEVKC) zo_tUdsN?Z1`82NXelmkst?WV1h8HA*H>S$0%VURy>hf|=cjr-BYrx0*CF|J;$3?v)waWPL6`W@ZygtH_d6AeojD?wEAO=5;9Mu5fV=g{V z7aT$F;p0~vpSvFJJ|{;eR?3c@J*ORgy`6f}fgZs_UEa-~_QIxfv&(fb!?95#;5(|= zWtN1^2q#eIOxW1F!kgG)_a8LFVnGVlq!)_1)nt+|&+v7bqWCPa)3?>{U%In^{&@ZY zVR2}+RcMa%T^6YsUVh)KSgNo_i6@4Y8!VZvnH{{;bvyNf)tB0Y^^rzPleV%7vhrD@ z(cX2N<4q?%B?ohJaud=ffkdN+o9aZP;SSdxS=mt<6Xk7*P^_6AoL-;B3MP`fDpI+( zAf-PgQly}SpU7QYQ;JP-DPCkLnPftGqUBkIPsl!6Mjxam>qXZ*c%f(iO50i{>L{~- zZe`@-D|ZH%&CEWWUSH>HGw+=L#g85k(7ssN3{-(Xk4&K|#J)5cESjE4q&luwRrT3y?Dp=MXG#sNOZzIA9(Wcut^?_B!eM*rO9 zJ3}j1rv=(;La_-<&&;jM_a^T2Pb~GwOrBnyEkcZu=FY0xabt95!0qL`D!ERh;=II(9s zX8?_yb4664P=(4l=bUpc#6r$Mr;|AymlzKS2XL`@I78&&W7Ja^dp z+AjuY@&C`#|IhY6d^9*dI4P3w?&`#1wPRVZ77|I+neka^kE40S-}wrD#T9z}YvutL z%yqBu6agbGU%|DzB=`7&cj<&Z{XPPaE&AUL&cF`27UXjT%P{x~Yqmg&vn29#T;iVx zemx>s4-Cw$g~g^&ig|Dr-AD%ZQdDjZM)C2-;6x|k#HZnVXIwBh`R{o+&G|@Wx5N$s zEvb*3+l?4Pm9W-R@b~bsL!=(^UHU<;NAM7Pn8_G;*Fo%5bZEWQ%&`EbPW1L}=2RZ$(+>6v4g@=X0GlCqx)Wjsf#)Y3 z)_6;a{jdLf>G;q8JvS!Tks^|He|f=ka9f#*ZG4uQP{m!Bq^SpTRzKnJDmo$pP^8>Ta~B)Sl(&vc};P zC@mg_YUpVFAvCt}-fUpi6c1|b$xt|t|A_fH9C>oR4|r9N*=v>Yv};_m60MIpe}Ww= zL7D(G9Pw?+xMMODfe`MVo1-0u%=HVzvgc@Uj`==M$TK*j?m5B3b3*TOk!hcuqZ2;F z|FTQpx{Y^wlN=#LEu~HJXLp!)Z(0f3SXS9;NU=KXqqiK1dIxQ73zk|dh$b8DUx&QX zMj%yfqTk;@x4#Wjdxy-&mZk^m$!=E2Y{^byh~slaM3f2R1>^I}!D5aD@B{}m_E=0r zcnF&Aw85Xr_I%s;Yzy=b1v9%|bdE)I1ZiUBeG>vD+NzBIC%?UA>YI^T(f>IH=2q$V zoz_{YUjLgv-eq26w~Z{VIYcI3kkLgURoyJZk}VF-D=Xxg@A*oHuhCPzgSGIEOZ^ME z)&Ckl@;m%Rf3_!TU*miDYWMW*mjpDv&Te14rmug=ocJ1T%5|!F^tN;Q?zJvZf{9f; zj1+gf0kX9N9{lJVjB)oC&{$t%+?qPtk?$&NS^$m3>zY7D#jCS|^-Q_}drf}#X>cMC4( z9vpb|Cc$GEU9aJ$zT*6U4SVHFysB^EV0_WoKKp8W|N4vW)mInH`Mb+X+kUSn>3NcP zSGL)y?r{%qtm5BbH(jQdBS$m^bE}lbuN+gsHfKLeX1&S&bacT-kHOr(0B`iP15|E< zx@C)ZX9vyC2Jh+S=HbgNYU>t9T!S4}Wew;W9_I?4m?~bga&LZs=cm-Y`np72n8Ejw zK=T#rWdq>f_Z#q|s_cnCB)<*IqvqqQc7ZZ;Dvds?T<2vU9b{)0vH|mO!pXIx%eAc- z+!l$>XETK=jx}4v$^r=8UBECpr_gaXTkuJn(7_qx2DeG5vh{pvO!W?e?9X82mA%E* zfzRg4IF)9?X3laJ3tRo#a`w1dVujR4-;%WDf@BrGj;j zO0@3MKAsR6B<7$~VvhKDwnF}RJr0{Kx?=Q);kHG|6G%i#TS>G?Q7QX3Z!8z*yojr8 z=_K=o6rUd+fw&*uQ*h0mf~$8N3(z~j7z(8-TmIe-V|Lx=pnrC<%d((IC&AsREPxQh0Q2>p-7Jh%fcc>CP=o*UX{84 zmRl)iNo^!byDy{gdwO#Ok4)!ramIV8H$vzY;*I@_G}$g`=Bw20%?LbzIP=aVT7o1x z%Q*LTl)YjEjsQ&fJbLFGIc{f>#vXW&&2zWH6tQuZk~@hWnq5K^Cp&7xtdjy{E2=n0yykOJJ4JYxU472keVjnxe zv-JdD%HzuJ`5n%b_l0WLuV2i_e>F5I{+(ED`;?sY+X{2!4(IKIWu@m1XW?yXqzBZa z_k`xqt^CHtAJ%l9A3di3hXK^<|Gzsvwm{zZ#4r1XWZ;wTy1Zv-Vv(pb>6FuOr^Uk(|9&~G(FX=%M-OV*j=-Dwr!#GmOoM7WOZHt{P`5Q zzs)@^*F);RbM}y5;_>(kx`DqEDfCxtI)8#c|2CLwd=t&q|D&{d_TQLWea&kB6-ddG zQK4pcU{1NuIeJrSpS%qgyRVsRykvH8%Iu)|cwCabJ+P1@XNg>yQVFkEEd=vR%tGhM zv@9mI$Fi_eiuQOTBh-1L3VS4k@YEwv2i){8rlDD>CWuv9dOrg<*4SI~t`qZ~`@y=S=In(c4zEcS`uEob=0?sm%VgU># z&6$@>u^^0T`|yHn?fLYId|4M%!LHT}t(Y}qGNTFoB9`C}X zFnjU$yBtPW+Rxr6o~iH0U^54(0lXrO*CR0meRx5_`OaYoKfgz;^PG6;0C?9Y#k=wR>)o03t_ellA{wVZJs8>xi(D3TryGG$g(e>|7#}EAkbc4 z<=As(nG>ezosn&yr@g6i+yv7nQQGOTr<1|fO~O|>385wQvLE&PQ}qaXdv-AG7<u{Kvd(gLn3pftB z>GyM;!!SDXXr#Ci;r$DdfgMbs>4-NEJPXVo-u~%7JY;2>$0T|a8uY;4+3QIA;LIN^ zw7vNJd%ItLkF!XI^No3~eN`W_TSIjR^M0$+oi_G*C$Y+@(*|mKsV%hz^HC0meT5nP zvME{?ke#;3zI!3wJewo)qo2Lq9T@ZPP0X!)|LK#_zk~n%zl=?Z|Bn0o@A^0gc;|mS zF)sMk#I*E%JY1ilsrme2-}nQ(Mnf-_EYovJ{}S2*DLL^q1wv(<%8oLVm=;3 zkA}vin&h5I!Z*uuX6Cd25nzbN&^D)-ZzqSBRAlySRPcM00n%hGuy@uB?%0A%$Bf6z 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

9@CPyZ&Q>CqL_- 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

FVf-D&J(UYGcb}GGOj@8KNt91f$ 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

g(XGs}#Mc)1I!Ls=)^xFIyo{KNB-}}hsPoBa9 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

p#suhVH9S9{P$dJx3SA88za?bo;qz%4b+ zFnFmK=~8v7zUglrJ&$zryi!Xd5UKA)0P+hYTE}jUuLur*Kmn$c)SYfAQtd|yu!1>Y zB+^J+HJ2(ih-eCjjG=HVSqi5HUI^`q+-ATz)zCY+q6gc|zx(<3DP%6<;pSn)ooEKo zbMGr|pG47>j*7b@H@f^(;JwIkZZ`T$dj@!XWs7{BcmM^F=zS0(f5W}nJ3$9ZfrlN8 z%oi^TXc8NJNnl!mz(TKVogkZdf(2!S!&cf@EQOm7KcN86B)-lOEo+V`d~jI`3!JDOT=v^O%oi?aEN2m_ z%ofaUey|{8{=zQ2rMVP57N&E(VLl~JL5{9Q&NZ@HR(Fe$8K?6{z z&5W7ZrTMo{e>VGYYMFZJW*_6jGgr}*ki^=0AMy34cI;twGK)uXsb^65`mf*bvH+z# zy;}m#Am?`PDDU>bq#WIPMmv1-cqaQHa64#Hlcr~oAiI8VK!2luIv}^l@@$Q}3`Tze z&*><3>3*iz-!9!*Dp36 zfAt)f^KrDgyVrU0T?_oV)QUh~MCPYCwn$Ch8J!EPN=!a*1+3_()lO01s*aYd;NLsN z;QEmSX6*0xqJ@o=3uT6$ky8EhuAO4a2m%M99G@U_ z!k9M-#%QgMOmfR#SZg3>T|tJjit}n2J)@Z4x02{Kim80rOm}}BDzq}_jn73Y`{iI| zw}h-@9$j7qN3xuS-!6j;L_XF&$O()Q^p9+2(EAr%;vv`o&IB~{sM?(fAOsXZ7AL?% zZwIi&Ub!XWLT27&@ML^AR|mkq#as{#A%l*3{gL^I{BC*}0o zQ695I0{>nS42V{7>+=>mHM+itDmw8>bc8dJsc43ZYwOTv*5Ijc7<`3BxV+oK?_0=u zG@x}=(E)-Szb}rtAOkLQ4jJVfX6jn)=qvc}8#&k^a+$_{sl0gtk3>8RjWLIuX%aqx zG<1wCJe+Aqs!@RFvxu(LQU$C|}xw@Z+9t*7jd) zqlcue2YftH*{S3EF5>K#g_cx~RJN+9Y^xymSqe-%x%9`VbXd)g@?Fi*i>QktFL3at%cIiU{Dn-p9Ok72c(frx)4pj?YlvCantI zAyN77Ez`swkXCu`-Mszq-O-VSPl;e94-OG~h|`oI;xviaKQvE=9Z&}iB#69m2u!!I z$&)Fg`>(0>7VF4U)WK|TAivZ~R`%MZwS#UDJPCemOk|5k@DhfYVq1`c!h`{eJgbj3 z8==Z}9hH7LG3IvoT8hYY<#ayq8lab8xs`K8ig_(?+SW*|o8?Qd2-F!o4@!W*=Wx%@ zCo0=zsm@h!gbLMUWv%QEX3~76F|x{)g`NIf8k#{CCaHX)u%02z(a=Ap>%P|owKE3> zM6-(ARuz3xMH;$Aq1)rA`9;f%;X0hFRG=%>tLu-;hCmX%VUc1ayVby&y#}9r&6n9( z3*~p)9GSK005AwWLmMcZ*vVDb*EKkN%k7C0dI77cQm27nbamt8RT15FvFmq-!yKtL zE7Ca%=wr^#(ZzYTR8?k5%{A=uYI2h$56@yj2~oDqDsqatf6 zW{R{@-gF1AcPE9NT!aT-&a%MlX3Ok8y(b?Q+LG~fb1MxgBIOKcQ(!QpG`@5K?2#lq z#vy2kZj!{&?K-mK_ij9oJ?Kufhw@D;y3N7v+p|FjR|&z|?efXNPLzj|b?_=eOuaj^ zij2Y{hMuvzLo*}b^UdNjyi(hG#DFi8E>IY0IBmHW>yRrOcL61+wdg z%EnV&H*W<)rUd<-LZQDdi8LO`;Q1Fq%V6LvPSN;MB2dW+6i{^ZiVhkteB!OY)bAMw`g3jZVG0`n|5 z#%Iso9=s}4*+z@)qXn=D=B)nIoWUIwW##?oSc! z4K2>z?4P0#D107r>XMOJrlfCbRX(=J*P=JaIKITS!lvO;vvA(kxD$nRc|8Gtj~xqPO{BD`0K!6~ghh5@MM|1wsOPcEo1U5`6O|&} zBKH3aT()#hC{WIl7FH)m2@BIog?UN9m67-y*^)wGBH{1muH6}!zCTW)V7Dp+$3weu z^wMyDf-E|J?YgBg{cn|`6jqWk6BXXHe1#)g+g=mH{3 zuk=mHh;)TQX7=+g^$aZwq!!W~LpDcbX%;bquA)P98RwZLs?15keH6csF_3X!ur*HF zJX=G9G(wwL5i?OQz(*caibn@Zme-8KM7j)}jLLbQ5&M6e1zu|#Sk}(TWsx7fLvfrp zli)sOk=v^hD7<W(f#@r^83$qzRZ(I zq5U{o**ZqQ-Z6MWT?POQv*kv8=V=8V*aZ6Skok{>7-F*r-Z3CWkK*Wh4j_VHhwtBp zdB$Q7=Jn7tmAD*5B(9u~Lxf16b)il>r4s2wMoXw}#yPfGJfrS2rIU z*h-5`Y79#C&ZGieJvhs^B)B$3ncA)d`3fO?FCwsA!TBz6RwZ@@^aL*0JT%NO%k|AC ztIMG!dRyErmL#1-c;LtF2`%ff{x1spMmB}lt|%1a~7<_32&r~%1GAj zDVp>Fx_4$VU()LbUs6$^Jqv%;cwy~P&j6A6F=om$3ZvuVrlP_}vw(>Kuhx`(my8m|V?%1DPzdLs7t@qEI>Kj@( zb?rX!)Th^nPCXc%KQ%SIbZTyP>D1M0cTSKmN= z@W#F2bJuPUTpu1^?7Mlp@4;)Yzxi-vY-W0RinQ=>oJ3k&6_R=eM(2Bnr^q+^XIB;( zD(dtSlRmdBWJ9wR_+nY^-H|2QGF8CWs%o#1U(eBHC!u(8 zPi6D3BY(S&&&gIO*I5SxqRc~?HH<>#=@nt2pU4DDD_pH^9M{10MJ9^irZA;Gh`xa( zo+XLwT~TQC)xp)=Ds+xFgUQC4H{EJ=9}LJ6Wr;LdW^9R-7wi3X@Y3r{rKdQ<)HQqv z_UwG|&yOPQXNS*z`#%mkkH1;Ney9X)Qn|eQJcE5?2yp?dpO4Vkb!fOdvA_cdPr3j6 zcP=wJo4Ynql_PB@^9@#b_MPaq_d@gbhEwGL`aJ;W_gUBqy8&~D1=(}&#{N_A2)8`4 zK-H!UH1x>i%HXk=Kywo3){dEzH2LDhvV_<-&71+#3CK+K5~`%An31S>&N8(AA`Lz# zGFKm3!5)x>{}%@gDYnQIV`9&}iZd7S{OysEPp=OXF{je8i{injC}|(QPy|v{K6tTQ zTciz?;BWVpHXd6A=siFLL&4R8K^!cq71pR2zAyF?-yi^AtIJ9hEU;uufx^VmJEH9A z6$up#92%YtD}6K6Wn>vv@fl;_9K*wmBnCrV2_BImn69H=y9}FTL_kCXu0Ul|?L7U; zhR$<~!JoIFU;r%J1n%jm7Tb6h%V`)8H_S?)4;#o&_)QCp-#p3WgP`8@7q#Xh;rl)d-qO#$>fmC~8CxpI3h z_~hUR&}yM$IIA0vLioL(tq*v?#BoqXdQ@ai_^_$pS}h z7TFU)e7zL(f6NV@B9L5d06#adn_aWV%WZg7+xgB@cyten*crso8R#3Oa9yJdoG50X zY9PPW3fFfV*sFng=k0RvYTyia`S%&jpV(7J;^+`eDG?Z!;jo4KPY%1@f;-nKx|7We zO{~XU=}S0Mt*pQtNr5?<#j`sDZ8F5xdi>afhYY@SNQE9iXjB26J?S@ia~=$n;7*p@ zSge87m-Iq^2*T?bz;iEvOaeIQ`w9H}VKsX3uqzBf2MOc86f#H3U>du<=vnb1>*Yk} zr5+lM!3-||=6f%&EP>40VIs43kic~x50$nv#$YuG+dVo%+Ig^EDuDMFl+H*3`!aa) z3uWw>>;A$v_U(--{E#(tp5Rxff;py)>`fDWs5Pdp&*zcZ2Zei{L>o zQe~!jTz5LSx_ze8_K3&Qji9Tw=aMBD3EmFLOSa zTcEyo>(0pgL&NiDi8ISrrza_QCnrdwOAEC50R%KTDyI=_s-O(>Ja*M7oePIrX!Fp3 znqHW^k)3Vfg0C(MO(o2xWly|W0EZ`y>n`n2l%gvfWnh7=jfyPkJa`YyV&|k~3T6sa zzCO)HHvVa*Y1*33?FEdBA)=&moV;MC*P^< zeZGY=X$R+)4dgi1FoXZsXVQ+HgDqI7bbm&mCK9+$cyIPkxbLD>3`Qe>I036KACmh@?p~6}#8vs7 z>H2;sTG{Zy2WS=P-4IWKy(qNIe1jiHigk?l4JAcj5K46(q1j&&ps<$}&No)=zRWZ@ zvIMy~Kyie#G=d($zz5io$mi-iG*!S;!ODn@`+s~F&mdHxFyh-(^TPwJ4l5l+z*>d|}@8r_${;B0VSB7T?z?Po2dQ*#F zcFo=Fn_M24AhYfc5ZUnP@JF!;8knXlz*^UW?{6C?iS5wD9bnkI7GP$-GqUKwXUaZB z7W;@yZTP_)J%l}RXhmehc(~;UU(pTCNCORmkDMX+#+t>!CDHT(i903Xif6e@F_FWP z%)rb~Tv}Y7AWSSwDV63WYiUG0l*f<-+=M=62%iw(cAX~ ze2F9M+;*TrZsOkD4j0#(km1n%2X;*$7eS^4nz_#}wL}A`BZ)%8Mkh)UwxJ!^`1k$T z1-J|AM__Fvl{!~M%2R<+9V%)IYmW^IYg`RKtOn0AokZ_dF=S>H&U*+WrcKDy0FAz( zRXNf57pTChwvK3X3vq}tB!L3D>D#c+rG=5=x)^&TRIy|j7+7iWmvQO`uQu6iTI zm3;evx_SJ994)j7;FJ#Fo^cnsx=Sj1?1Om<`;80Ndw>1-D5-@Q2?fvI$SG+)x8l1DJcbS9FWDb7+p^!Z>pZEYAAXP#w#qgIKNBP<^CW64 z2R{7l>cblYgsFi!)-2duByeSzmDau>)!apGQU+LgI~m=Qk_LzU6_CucAAotm8Iotj-1o_gz} zOQ+6Xxq0fswY#To-WtKLzEkhK`|+u(H+%nVU}Wlt{X>&K9~heX^_6RP-no9O_v5|? zV^_(`tlPx-l{;t7TKL^a(Pbhdvf5 zYGMTUrdGI2zEY$?&%9V{P-D1JOC);r63Sa149!SI5}kMKE1+*6!MD_`~s;=%+UxfXR<=i^*5GKShrtcMvzb6X7Kq%ZI#ncu8Q(G8DEl zNu=pK{r2CU9e(lK7yHk?dx|Xbqd@gwZ}-)|Zlaf|JV93`he(2qBi<~N`NsT;(o?l% z*S4IQjRRL<@6rB?Z;$XEZ{eI+lUux5qbHUWs9h1TKH?|8{qM18Z5tP?UvlL>K_b?< z?2lgl&JPxpjVv@97Wo=8?g2n8jhKim=dZNC= zZ5@5d^`zJ6%M!;bSM9~BKS}2pg0y^NhgIq9FALVe~BynX$<1`u163nC8FRi9ZEgH;kU49+z(?u(m#}4$GJ8+N1W&PNj>O8Wn zN(`clw?_mDYf6VMBNO};R@{Hw@GH476QSqDi`!5`%axlICLh@Q`IZ8&gIH>hE8uAd zegJW`?79&gVFUgf6Y`=aXq@I8@~!4@%`7(g;J3Dgn~%OOfIFB23kocibf$UuWwE~d zWeyrc94xVbD_+HM_SnEtIHh!(s8S8Z)sfT*YgdZtG3qif-f4*Xm4TM~dAP z7dJ%~K0|DHNf_wRTSnLOGO$N@9;*3{R5vrfX*hoRtr6V`3Yp0xR%6x$FG7ZWvI#vv zcFdbr=q+}f&7J6L^f!-Qh9ix`Fgg?huyA|8itwf?ouEBd^+8WSq-ZmU(uWZ0V@>az zy&;=eV%d?)j3Rd)g`Xsedt44Y%v`FvT>!tMfX_&-xbq}~jCd5^YcSUBjjbLe9noeS z`_;JG8U#aNJ<>e>CV?KiAm$M_m~;-Tm#nzwTaeMTw6-2w3Tr1i)I^C^1;*9>2?`0l zE+nuISCRQ8}Cyv^Qf|0k8RL#47hgC;h6H`T<^IvJfr!WUw^Cu)W?}ze-sdy68Jth zlI^3Hak(q$XQ(_OWD?PRx!&cg1;DxXvXw47_PMq>rbKz}#vRVttGyz0_^PJJEd2sg zVS+`;gnn`hLk-eXaVy9WnOu`hg^$EDL`i&ga%72{1rM->^VA-?w;rRD>=?|tt65~n^`TC;PpRa=N-%8gH*PzcgkWH!ji`aDri-{?w)-^~HThTe|!v7Oz z??@KRLu(a-h{^16PKLi$35~Ewfo2o&NsAt6Bwm=8TU`_&`uw8`VF$@1i z5}l1n07#3${04Fl%`)_?Qli|h)gvJ;N$wNHp+%s^liT)VYoc;eWhMo7T1CFM)YKG8)2F1<(#M#LngZVn-;lgc)ED zP_ZMYxKeAVCpAt&W}ZfY)I4THqF5iC!83~JD{W5U+8d2Gj_=Jf6dz%({55%%{Wgij zdIyEe?=Di!<|y&%Pv8lw`mD=yGF0jI2%uq!TNo=mrucm&U(P`=y=Euu*3%@04bjm@k=H`+q( zWpCYyED^jAtzfd&?3zWmT1OS1om#fF*90T80v}KsR-ja-c@%~A9dO1fL3qX8=yP!? zZHchlkqnzX>EHrQ29HkIk3kVx0Dn+v@dg9oOc*@(&=P`8o@6_sG6#L&HTl7AcBA*t znQQGsi>?PO39tiF>!@A;*SxlE7pNVWQw_R!W!JHJ@{MU#X&21V<@`jZtvGt}Lh4VJ zII(<({BVjk1ztF%y7z)>3FVM!)gY(p6+qGyA@a@xJDUS-m5IThNfBsRt0Jw?6UnN( z9X>p{fkk2~=m{{vu^;43a(!(0a+qSXZ`BbikbT+O5@xj7RAq~ROyGT*%5n|d%ySHZ z`a_Y%d=>|h%ZPDb#(D32qTG4o_Q3QHC+3+yI@3@1Q4e9}Cl*)W=gU0VPy45-KSs~b z|D0)Uyf(5({lzjv@DFBJ__g;wz50V8BK^lCj^Q=pvheT6W>?=p$Na}sh4mJ4)B`BD zyxTW5e}9(Dp5m!|D;UHX&Pa&@U)T&oVjf=<7zXc6FWehk=Js9~pBbbH<%_M|XKbZ6 zOgek_{!Gu{7#VD0CNyC-_Wt~ViB-`&L#`Ml2~-be7?^EUCc4CCfp5f!J%)aUt}>5P zM3xyCIi@Lm^T0gEg*;dUyV+P1*{rplV_T`drHtg)!7#Fs7R1(>ISOZzOXp862gt28-+StmL${N>K$05Sm~WM4u%M=yeF z2hVVfTQ?WlN2c8;Uu%$A7lC2UfS$OBJ=r+UF8FaR6N5y?*zg=}0=xW$d*f8nB64>b z^fqHa6ppQkSr3Q|<~@`nB0nJ{i47w3916g87oqoEft`g8{t4scipYhXWn_ts-Vco{ z53gPY*@886cpn2J^6j%%|MYK(;wD&Soqw+%efb}){g=PTe*1gqzu(}@^$NU}XUH#{ zV25#t{Mt6Uhc+<(w{YgFBa>OhOkc1Evr(Sf5%eNE(|+`Ay6dq+Oeu_e6?B002)Ms~ zunS=~+;yVEL=U}84JLvC^QGT>ha5O=VO(PS=?u* zurr?oPk$P|gvDy-cqtgK%)(1Z)Q3tWSG>85-QS8STw~f|b&kpryw@RPqH5axa{GCubY*L(Wky4f@E(cl>I z^86C>de80t>o@NX_pY$jqm%QiWA_K=Mtk}uCMj$c8U7b4fyAMly?lQaue+qy-r!%q zKg?iolwyfcuT;scDv{WzmdXsOB?Rx0ACT|`8ZElNwJf$=BNQ3c-JRdNpY_n*Idg$^ z_R?KR|G>07ID$LCpf#2Bi`+_oh+ zu+hZE_=E99|EHJkMR6}I>qCVG&M;Z9QsS+hr@##yXRs!S;rmEUtVk++gYN(g{cpEV zUVYK@AyXtEST8!VxZzJnS0aOc@~ zkHV$(9S2NH=)hQqwpYXRtQ5_zrGNp7yE833E92hs_6zIi5=VUY`haHp$+uzTRsC9j z&gxFBxsfCCVrF#V-05Cc`W=qUy05bRBxFLLJI=k1aSGo!v?MZ7#4hl~x*YLGSXCW* zun%;#4qg~7;k+UT9{@bnyi(_YgMB2ovj2)fm0L;ER0(B8>{yv)>FBTucA0>vCrAS? zpJo~(4d#;AzN&PFX%ekvMWnJWh)sb792r)z<3#p3Gouu&EFC;g#?0Ci)aY$lE$AVGC&wD9ZrZYq9V6}yuuNrz=ziy8M~ZsD z829+)Z()D2(Kt#ExAXWbO}MmjgIx5N7loaztzG_%%DjuWc&cIYxwD4Eplp4 zf5&xX8uP>@#t;jAt1Py3lrPavV9!6^H!?W_7C4zB(lfb2HHX2G^TcukcY(y9UA;fX z=$oJ@ZVeMLIz5Vb@|!VVelw2F>frF~ss%eV@7l??3EXp{=wnI*OKXK>W4nlFX9mwB z_`OR>SF{iVQz?LqN)UZnUVzMv^9-?chM|%eLq!EoX%<|()yo;0p()55m422cF`$jX zPNa#v6f9rnVO++(BZQq#e1WS=t6d3rX!%u<(X+u-**mjzX$yPK2EvI=bY)d>ug;;r zJtMKi;o-^U?6Fe8on9+o9?5`N9@o11e%vl>QZkByiwG!R-8voxUr*>OMm2Q!Y; z8s_(nGJG`PilS#cv)=6=>uQzJ1%PT0;q;2EQO7)#DT+|+vRjR!-1w*fzW9lPr? z{Cq{FCzCfPs(I|eyZdY~?u*#_r!t6FXTVd);4_^P8vJn$bPZFmoN~rmNx3tVkk}J( zaQ?w#-h|&^BMMu67^6@K+PV)}PA6t=w+gxkQ)Y6>t)URI z|0($JQYbn}fU^+8zQPY?o(H;LxO(_S6rEdM@Z5b^``RAPF;yhK*${6Yd)%42hb6Z; z)V7!px?Wi6N`PnC0v9ox0s|q7j*S9VC`IT1d2}-5fK$pSt;rO!9a-=J^Kw%pi@X5- zyk0_&TNynp6?6txaLyT8PiC^&%myf59(VeZL;9az?Q z^JVA);65JJB$ikSIms%#__b~i2f8&H`OahHGu9gL&6eT$t|16j0Anu;?WUS*J*uO} zvVuKDEx&Q{U)ci-mWqyetqIT5dUpL}E8TvyiCj<{tb``cE)DPsYSggAJBoZ{AULjgi;nxjiqw_HW#XEkOD*Hbr%v#7&T%mF zr(L=A*Y+$l2w)`+2iF)Le>ywQ;^;@D77n!N=Bz%s}wwBe<#BXEV>o}&uCU)$h} z*1`5_V1KrSaMXSpOMmpa@8CS!Srj@^AiK8R*nP1bgclwG^P&O`lVV*UM-ysO!Av!W zZoDkIxU-&kqsY@m^D=WJ3q2^ObRduwuI7-7OH!rAZXO=&4SNC1uBs=|%#APblkn(P z!Z_1|p<6;mrl`X&^kS9Jc~CI;QvdZea1O|0#|lq>wozK&+kzIf4yJJv+TNNI908Hp zQ&gIqIq(Nc*mqUowaqH^?gU3}MDJk{>HWO|&K3oPDT=mG9vQGb=vnzP`Va6d$d+uu zeAOL*=BF^n^^RaNhWrAaMbHd_&Rc^-C;H=}bcwD2zk5AZJzNJzX3d=})p2GAi?R$p zVZ59wcM3LtHVG*t%2j(HCZ+x0nRunvB>ZV!`y5qlV@oY=bSArTgmbZ_`aolCJBE2U zZa~+l))Pnet`tJHIlwn1v06NggmTpY>IZ#JczxiVK#xex&(;Mzx#ku+e+#}yzJs55 z&j#O;7J7oIzWvAwCYc&ILz%&ql7mAag~dm-fAS^PZQjL2mW&LL5FcDV#_;6AvQX#b z7ci$HpC?}y+j!Wm10fVams~|0%{9?E-&O=NMTsMlVd1$?o~CeC!6v42G(OZsmFYZv zl!`(CianI0&%v{ERb+`>!rXSDy7lCZTZ7X- z0I=@|!?UEHfJ5;Ma58^>e|X_$vM zUS$2~vs(=3T-(JZ!5&WDa9;Rfa4t zXn?MSbVXzk-X59dPoY?L67?!L2TO51t7uZ29=!$XW%S;`W1<5+8mH&AfH$7@Fi?sG zYm7y0@=E(gmR9c)mgm4go}8RsnH2JrQ(TsKg3S<32=FCIi!{R2^zx)aVwgvfAD95T z1%=cw$K~>eKRAD(AO66}{)rVDG*!^I>XuyNFtBy^nL?skLA)^C2ut_nAk|k;^%bwk{`v>f=duz{8AMuE- zZlF;0e&6T0_kONy2ECliD63+rEPftYXyD-t=Fq@yK7SLXjaRz~47r5^ZVj)0no37+ z2xoSgE=HHNa&(1j0$apBJWunYJ30w&cpiMP3QO%ew8z)KtnQrt9=`T(!F>Ni`}B+d z+&X;rE&QWj7(>MudQavl{6CLPf#NZK?|u;3LgW-1$UaxGz{o4ip$u|*DUHP+#2MzZ zfajFne2_+uQ5Yr_A3SV9aO8dP5V{<(CcfPr8*n3V3+HiWP1 zK0eqzzEoo*Rox!9c#~r$XMDyUE-qv4rJ#<4BG#f;(3fPyi!DwtRp&PMA8}!8WPt5N z3FX`5Y~z>|EpHQ$hgvYY(+gnpFSwJndGtWc$c>J1p29dKH~1C|&e#%ql$MdTTgJ1G zl&K#x;Dg}AirXCI{n^-SFwn8X!cK?{mI~96C}SP$S=HFWWN4;jteh8>M*lSOSX0(O zY7}~Gf1zOlil#Gb!Bl>c z!qd#)J~Isj%?KE4eaL(c!zVt9TxTz?6L-wfQ87h##w_0E}(@b3ox4F3PWxqNHz z`#0{7|M=?d{-0mG)%!;G!07uQ-|W56J4(7WxyZPGePE$?jv^eHSR{`RPZOtR3AClL zdD_DJ7jDhb`5LOxVkiC0cfU8gxCFbi#v$eN)e;U{C6S2rlG%AO7y3V!2Mw4?7t7Yj zLNSXe6H;hm+RxtlaPgH3S68m}jByr`3jid+g8APuy(V@b_wN9k!-5VO*{g4yq5s`K z{)BPq_K327jA*{xJz~X<*GmR(1G~>c-!w6W8M9{e=JxMSQ}<>W%0u{2o_z7!|NWRq zlh)4No+vIcR8_vlUA4ywb<}Y*{OLya?kLgs&ZVBPH@m&Q_4uout%qOLC8lt6XptPi z{Xa@zNh5TTE&+YA2>;OT<4=G6Icz##;$HS8m`PumBDp8nyFWa6_M4}L_UVJ2$6vNz z{Of;KR;9Y&#ok$Tf>e6Vb_4N%tQ_7!cuC;F zeuVt$whcZJ;e|V+LPxabY#w~#!)MC^t;K?w13GZn%+Up{$ksa}m3>rMo%%5U8;9m; za`bA;NfNsuxAoK$K_ntvX*W;gnqaJpAovDVx+Uz@k$Exv_k8VEZ=;nwZ^I%_@uO$UG=!b8DrIb zCq8djku~+kV1+-nL|r*|Ylw~xFJtTY3zO6mmeQnV2`;5FaI%$DkwZE~mT-{IdclIc5Fygo6fz{uf6g5o;|w0t!GLsD!jGq>DCG2Q%`a) ze*MQhvK-mM=5b-~$>&+*76Zxhu6O&<7w$~+Sij7W^6!ig`0zOE8~dL+GPPqTu&#D< zIB$ZkVu0t}9IqVMcAotjz|4pMj4ZY>vcZNYmj=%i1EvP@^qOe7f0jg;yG#DlI&Y%THzf}TFTnk*l%vQN(w=mTpMPCu0)8e}lV!!(9)=uYqG z;P^b1KxWISRECUBWk^^&fr>f3xJH8yk%tVd7PFIk=h^R4h25vnR?~rj1)5`lrSf8) ziF35x2now{pVvlAmc;B0dQ`at%%`{n7Ti< zoL!{ID~Ja*B-UW1b1#NnC=b5}=Ehth*M3%tRSr7Ps4x}XyzpB4X31 zk6!Fn672SvJ+YAp7WZQCxkvIlkCM>hW68!z2(vZ%^FrQq;{=brJrDF|SmL(LU?1tA zi7W9L5G}D4!Zndm0bh<8FNGgEToQP%PA_>!tA^(|8=WKZ{d#oM0frnX?>`F`w~p+C zvovM@9Lt*Dc?f1)Glfh@3j4+kdiFBV9@6;wQo-U*)(^%Vm~Y8Yc{_<+N0=hCL^4g> zHPZDcxEg+Msu4whPzW9dFXl2YOJ(!9v-JS>V{V#IV~3B|1^%ZG^KcN7xfgzWSI5r} z4!=ufPa*#swy;$e3uYS|Jl!_%gIv%-g2>m0E$D0qQwL1SI(Q8}3o_0&oQn?l^z1h5 zHlbH3nM$Xw{rD>jiqwnyxWg@(=C9CJRx+UB*1&jAXk*pfrV)T zr_3I!B{26V!2FM)Zzs&x_`=A}L&pc_P;HN6e$HEx&AiBr9KJta1dpSPpFs{YVg~;| zbm4Xw%#k?wGD&~Bnbvtz2~=t%afapbvj;<_fQ))FCwHZgEohYW{!&3?h!o(-FYBY# zB1i4XVuw%+!Q+qYL>8}01`Ov6UZ*Vd3;eLFRd6BJ!DcRjPgF;jLeq~9M{jPc#!|UT z_&(Or>A8-*K><6{49?Febnng%D2rziyzto=-m?+>-I)EKCcyUe(iKiKb|bKUHF3q- zHro;nQ*rmXwbFiS#SX)u@#Hlf&Zq>j2zX>=?nGS)tzWJU;L89D89O}|{yt!Ff-BHn z2$pzl9(9M~n6roRx)0#*AF?Owqu7}YtG)R?)Z$zN^5VT2viMDOsJ?c8aPFl=BJEY; zGV={EeBYX1puBarXZ)Sv(S`F%3*;Nb1!~Xi?8^Am#3BLRXuMUP-hi3i#f2H4Ez*Pl z0!iYzmxs5rVsHejDs!*~Hgp3&n<`HiFCYV%l|#_&86^eqTu(~jp(nBQIdr3x?SU); zK&di;r7nRRQ1in(0cLkWtnsgV;I9p*S}kj&u!TN@HnhV7=*@@mT6-I3S#^o2Yj`qS z?Lg&Zi>D1j7()=slguzg`nVQMLNN8RI?U(jxWT?JkhDjOY224n;C01ur|xuTM4{;? zI;?;EmJB|GrFdmGYjDS6Dswo##MC5k(FXJ;n(1@`z^s$vDh zl)$2lq~R4Ump6CIY5>RJ)z7G{zHBgEM=wD(7thy{LWMqr`8?(bm$BC>cFtE9@=@0J zFL&E}C)T2Yc%_VfuXSW}%CY=L*%PZk5cGD6B4e0Mf^3<|NksYh|G$sc*^$-HIVd87 z5qV-AG)#-!9KvY^DTIYQk@yj%8;1#M7|DowFfSE{|yv@4y-e~(jPCWtlp^1?9GWq)}#<~lwkAd z30Ln5EM2=dI3-l-;jP_Z;%vgT)6C2_+RDP_o}9|nu*5nK2WN>Sl&Q&r@Di$QUXDm_ zWt;s;b_lZwZ179)gQ31sM?iPxiqVr^OE(Tz)9ah7wcUpV@HoayflNQxj`yOO$~BeI z{_eHj(YMm&_62aD&bLlpoBVF zP^vtF8iz5t*^gQGnkEM`8vm-!S1?8V=Hc49G^Y+^35A(-x}_{bYT>1?}3q_ z6|RKf30KH0sSS>L^L)<`VfNPe;=-*_0%2%|M#4Npxj#W#K|X*uI681nD6jQ*p+O6ES#0WXND0vFXAekT!TNw!RMEOepCi#bS`>K1-LVF;L)K< z4IYZ#5v9V{!~m;?4I?r;(>&n8@5pLDctLMJ{Di)B^n{wL?Gojd_-vxIJ?D=XX5rJD z&o$e`WO-*9`qYX$UR@FC>?___p1J?{b1qmVbdxK|&DVCtxND+@!b6K?tL)~%Q(mUF z%ZQe?$;jvsRHonzm8Y0O-eL~s<9W5+KLcMCBF3h92vp0+I8o63u!_6ts>YdQK~Lf* zYX^MXPuS2G=l7U4~e97rCTvc$V(qYrgJ?6h8K4>t~Vm`0P5+!--+2wo)K{tppZyDb z0pCGiU)N7xd%x@Lcg}X<4c~S9ZhzOMtGBz(U%J(G{d!N=jXV8auf6%fpMCVv^}o4s zd+3K(Z}k57!u7tNe|)p&&EAp8k9tQ4*Y5Pr+`fEw;{MH^nW3Qx!r1Nm!y{L&+?mAt zfARhVkubBwSW9IKq?cbmGt)mfO+lH2n9Wg%Ib4-kDA0>%7bu**kvT4hqn5FlN*RM8 z6Y)3-K8qz;`QblDL)-(P(3yZ`uAe(%`}ctv2^ z4m6|ny*9YY+wgXxS0`P^GAw)f{up$wQ03^ww{2j9w;jn^%ahs8UA{A7fA`XD51!*G zc*D{Xqo+7VWbc6K^JxP>zb}6OfBj+m_{BGPzCDLl_epK{^b@S>AHtt;^5n}uY}>#D zzCFGYklIs4-0L^gp3-iq{rCX;>P@hT>)K#_11#>QJKrk7|DJC>`Yg%Pc)ZBy!X~n* zy4F9#XUII(umAA>1i`&EvlLcc2d#?^DkuE7u26B;7p?AxlFcJOJct(P+QyAXzj9@E zPW{E*XW_l4Uq|Z?KldZs=zs^*0oIf&Ti-K7zfwuead~Frf$sFvuMH2My-=-h9|@%T z00-xts0^PJc2P8RU@YpnV@C={vcu=!sDL=cp0Lhy z#w+CRIrcnq&C99s_8Nx5`JrX*HjM#PDaYym{{S(kx9PDz~2+^xmu-Y-h+*MKSX9?E8~6p4?rMQ`Maq8v3i_ zbv^DBCVME4taTQ3ZwC(O>^3?)@`iBT34bkg&?FGcEnBX!Z-h5dPZC0f-#Ew~Km4?e zJ9j=@In2U`pWZ+HBDS&r%vahxGA&ZMykDHVfo?v%0y{i6vi5#_udoIj1&^P9gN`CZ zKXXm{(I?-ybGy$h$ok4$$#vN83p{HKJ~)AHd4;EemyJDlt$%irz|mn|=CN?qlGyxN zDTylPiH$Cq+?7=0&ZWlrqf^-u)_C)g7c-)Lm9I65k&#eXLKft-?1k0?x6YTb&(YOZ zc&xBq*aKfZ?+WMZ9$$LH#sfPZeN!5-0egvH!HDOQdK}#}z=;L$Eqll!qmwGNc6jWa z87qR_b{PAwaICx&z`ntatftSGZh3{epxu?M*n6;rHC>RBL9d~mCOfJzq)Gnk?wI!87{XNpHSJQ@1`CWnV6 zmofj#Xk@0G$>b=wGMSMxI5tiH==QLXYX~}uyH7Ef+5AMd)Qj#7?*dC1z?_wgmA7)> zlILu>-8{k?S>#jG$j!m$zL6D}V@dduqtKQ8YIg$ph^zxzoEf_S6PzpOhtFVOTQTIjLg3VeeE6A^wobzE47ics zH-TfX)p;|r(IpnUdx8WRGNnQXh6#HSE0HbpV$Tu7{tq4KsTi!o!8w}D15Zi>Swd*_ z36H?wv5c+=l<1$*V|N#dm$u_VoimCett2#eWYxVX_z}SMZ=>g~n#JpyvP8-Wu`QA? z#WzwSOFRYsWD+})C`aoLLyiqgoeA#>M}yfu>XW%*(CDLHoI!4p!R3Ib%7qy_fZd-5 z?>C3o7;pkC@0Ni1C(yafESbRwe~ca8a~EcNm&%pFzF^&tdDi1eR=pU7op^nb`B^ui zzr~>Tq>KQOs)mU?WuUNQ$Isr0oEGvDUaKQfaUv(*@lAL!fI#mF&>_HWB-YQ2NJi0^{uR{^l1n45Dq06sXF@~~W|2M1fh19I+ z&8DZ&u46A#Ew)b^@U>LIXeeU8l|?2WehqYdB(^ig=q9}Fesrb!!gwyE9O=y%^hy_W zS|hU2TCv_|!VblP*Vl?gsEH~vXl;Rl5jziay7fqp42cZ;Q#rWLa+xhEb|hP3=>9@1 zq`84oo38ifR`9hhVc#~-Qaa%M&yC`19^iI7rN1(p8L}I_WMB===LSnvqzh@kk<}()-XI5@4&aC#&%&bfiW>-i9!$cud zj!Lh1CG3k8VtkD^2_I<|9o_|j)>Q;suPD&C>aohv4t(P^bnq28YDX4+OK=sfaV4Cu zT&X>846RqKkxT;}?+wgaHAK9Sqit-W8*AGhEjRFUt3iWrd1J*LiN(LAvv|jZ5jb^~0Fxl+mxC<^9uar| z0LT*Py>allBiPd>I(s9tJDSEFudx68*A<}ovtUc%>rBK1rWm|fg$#7NJp5ldp(&cg zAD4#bHG$skPB%mVKKU>kK#Mh@IT_4u=iyt);+Ybq0351w7qX?T2U#)94pOZx4xKBh zvWLQQTPmKY?iK>Y7CJspkSz$r=mJg38?O}Xfn-Jna;zts&92hrDeMCZwVe}mDo4`L z;gZ2*5q=3@9A2I%&Ydvw3xQ>hAq=)^Vv#OQ;0};dTij`zFN!V@^cNzu3#~pN)wu1D z_^n2CaE8)VyVepg@zL*r_p^nkvX~U6fDLoAjYyYR&Ax=!>`Mg%nqV+l-b1E29m2E9 zgI+AVIgs%bHjcn&;ps4YnefM(kyEo+10@I8wq~5gdhq>>fOXlD>wB)k)>Eq`Tve|@ z8^Gln*7lUl6w1oL%#h$`&A|-6*gG;ij*j|ebdU<+=M;d4*6HCAbF?n0P-T%ManCYG zit1QpM_buAkYJ!;s%;(`jU%TUy;&yMLlkJUtJqOM;UeqZ=T%UXdj;+BT#<<&jaTE*av2(@0H$h!r!02HT73_Mppm&QqT1FWG3&= zEZ+3XcqaT{nIZn(#@6ol!IS*6cP`%Qx-&A@CDOS59OvDikCQlmIlCtOo3RDv54m#V z8wO|K%EKq0^&dWZKIDz%27rC(A#&6=uYsX4M5NprqOz`i)HiT(WR-pC28s32>mvha z{<-_w`#(8*{^C3DeS8o4{Guyeq8Za!*rr@d-9t-L19Ob2tKE}RqXfqM#0r1@@~yGS z8~xMM*Lx=xk+EOtpCYZ^>=~nsE>OUeUlk57Fp(Een!pd$^iGpS;4VqPKt+$}rY2S1 zP~_Lq36$NYlV$e#q0z-rE*NCbm&u-&4b60+U{dm_#eZe^Dyp;} zlT`WG;F4gVe`@Vs&-hZ$@DgJXJ91PpONr>HVKLNh_7X?ac{JiGQI?`#5Y->Pm0SIj zbMT>3;Pc{P=gdL3Blq4IQA%Jd_3$d$@h^N*F~?F^rr=eZ#az7TiWOJj|3ys3O8~=&3{9Si z3_3U9+Q;#O;c%sLsiur)Bn$T-GVES@MKSlV5Z zc}p`UZ)OUf1n~Dl{m2A&&oLzThNjjAlxFW@th&R@Z#`h8N?Vk}M=yw2%JzSFbKpYX z6!FT1#fkBg)8v<>-@*pyWRvB;L4TzUFR>} z?7DE_`hUIGJNn(;f$<+usN8=!cj4MkE?*mX?edMjGap{Leg5vi^sR|yMn5t#W2X8;r4KHi<}NP#`GtnJkqMB|>6_!Xln0Knxt2=kj=3 zDU&IeFjxv9m#g8?r~=aK?|wA-@;e{RUAomzz6GS*0!5&jWvGqIJcAy*dIioM`8W_<~zkPRTuFcVVPmzuOI$b~d zTH!7{uN^!&lAB!{@T|82>E;%Eo12-9<0c+hnd<{{>BPp-c7F5G0oW-mXg*tyzx=l? zXQ&tj>%oKlObYyl)P>taIrIg$*JQR&(3kYPdi(JoPhR}$4;#my{%dCI@i+B@XP;v> zc?u@v>F(37cBOy}<9rR_GgY+uQ#AlOw$ja`efagZ-I?ZwCDy1>749+y%5{IXhI{5# zS`(~73)}Wai<|lnulJ(pa!?X3AK0-Iw^~C56J~MKs>p)+@V!vBxgP`HIEbvK7rQAB zGPc3&#)BvrQekU$GgRGw65D?AMHnG*RE)IUvGulh=joSj+*x3`*)SG1_w9R+K5;$# z?AMOn$6pxm`Ipz)kCdhMLq)ayNP@f#AJ1Ak<}#|%9;bp|NmtquSUn|JY;6eRW)VH~ z8*;NZBZNl?>;E_#U04j{AL-$217|{D5j{p=t|}()&d_Hkh^&=6{nM-01{b*T+M)UQ zlYe!?(`%O5qk5G)sli=N38*PLTdQ1jvaEt#vy4s|w!xbRFVHSz>w}^WgKuPo%b`lF zDrCbA-dqh*cO6<**@F9w5j!z6@)h<_X$Kl%&57KP180{VzHG>2n>O^5>IQIwMSj`B zQCa=lC#UI+ldrSj;KiYRMb~#uBj9XXZVt?H&R*@OOi{#q53<;a`Z4NIw*$5IX?XL& zFQb|D-4Iy!uqd2*P0_Lq3q>7fekF8hq1fc*A|t>O7{Wwk>#&P7%z@v&0B;=?K4z{+ z=jli%VwoW%f_GVj8AK}9yQHf$o(x`p1Mc)rYph{gWSh}Ey>7!!#EQM35x)l>5Ra9w z3p*s%qz`&w03KsIO`wGr!Dq&vP`j|k6Qg5KJPOmw)!rH5{egKod|*~%xa`JUCUwRUok8I#r8It8T)@55}^w(J% z2Txtt!Qy@B6+z1qq7Rw_t_mzWp2b;;WU6~~5gGs49vY25v`S_VEw8eN7);5SM5-IT z*FQQ8Mm7<;Kb^{yv1vRdUntS>Cuaz(%RS>l=)1{Ed6qM(b^DhDrqw~j9;fu4zQM`sgR<57qMG5F;Ibfv>aV9NEA%M8^J$QC${ zxHtM|C=(f6Ihdc*%u(W=1Q#-dgOAMg6nOYzcd;anJeiXgHeZVI3p z8hhM_Y^oi1V=JEF4lwP^^9(h#_jnLd=Q!AU(N(b}j%N?#lg}&lqfg7B{6-Fv1LkI! zB}BRiX4sT2R8PB8tu#FSag+du!DYbSVj~Q&kOyoJf3&h0#LNdDN!-U!+QH+uInjaV zgJ;1TC~PAKP<4UD=d>m2PVlfW|C@~+UEdt9IgtgligbP_G6)XL($G)>Hstl}cyAlU z8mj`{S1Ddc1tJ>?Wa5qBq&UFkG?v2c! zxji!f&LUg+=I8?BmHy%Rmu42JujAKS^905j(kkn{o3{tf^z~0%T$m!>nVTRC%uFuL zF3zoz2S%2p*h6}db4w@J4~xkB=Y+`qyTZkFJ;Xh5H;OA zVlvqC6r=T%TIaIPmKrOt5H=H~MjIL6HoO`e9EH8XQ94`LqqQhfV~wG3Hm&~b7G}yF zuq6(x{=z;}?QKI8+Q;m0f)0n1NNIO(P3mk3^r0OvxOUN-xC4D>r&!x+C5t=jm}PS? z#b%K;$%(Yy1e0rsxuex|FjY$$-O&gWodf76PbsnRN9Gu;jdU99)i_V%@8taw25=(4 z?dbG1g5yw1t>Vo@kvYS3h0o7{0U61(AQL75G9LQSW+U*q#g@7H$QoMjao(i;iAtyOhXKw5MK;=tyrh;5Uy_b$n>h4uQEl18cQ5AN`fIUBr&t6(Fs@r z+rN@s->x`Ai7eO)DauA9WHg1!__*X`9Jxh^{D?SJ-IXCf$Kpwi^OtXrj@=quBIrC>(fanWB9O0& zt-+#Xo^1loq^{pSev1008mwehU8Jz3_Qo1G%3}1HHP$LsW@lg)V_`pm{a2cb*OUr= zBh})MEe_9-C&dQWoF`eChDYo^`nYeve|be~^PPv^;4Spj{sMgpZ@azGpWW)8`v=S; z-yd4!es7Vf{AX~7UorXOKRkP-`@0|aOn>M0$kLy@_Q92|k(t#l0-5_?*EsS&?VTfa z{rK#AT|fKa+<$xX^8Nq*%BAanf1#%zed+wOL<;v>wXxG}aD{J;_cUZyWf3nXz2VacZY9Z7@ZxT6Umn*7=pQ*gVPgZ ztGvnHiPh0N{fncci=2tk1=e`~3~A`2Yj+3m3?2n1asjz`5?0PMaBk=?y?Ktk!jb7t zo_*s5aLx)prZKzuiOZhYaz;{BlgSfSV@5(9Yn2C1%+lC2d5lFDjd8L6r>yY?1w8rC z!oq6b;K<@2mnEBI(ZK%WtLLRc&D_isVVWV(uIxVj8pDHf^~L~7;V<4rdD@b(zVkHp z@Wr>e?UOGO3Tx1hyiYXKILY}7o2f{lk$d{Z?<&x>bJ6N{CSN_sKugZ}lj|{w-i;Ob z!{qMcFXPZdfyCK?EjdOXnxjvn+W<1*FQ~L9#|4E#@8gARk2YpO_9pL|JF}0bIkA;yP?&D zk!y}YzsQXe*wsm@^f*}A`#O}a{{~w5*IHNn*YRTef5CtH`)qUfSGdH!h*l1tA*=cT zUe`TGqPBxfcms#>dZ@5bRM~xi8lqd&mrlXgmv$!W9UUP9Eir?AZPL@ZKV&!JINL(* zWYZ6inG^R&6GveMBB<(k_Vw>Pp;Xa~zG$u9nbskLixIsg=PHa~{d;84m5}Aw0vNz6 zpo^^>a07TocZ7$zl_j+XIq+g|p^NjNn<872z|A7fOH{F6bBD=%g>}smDY4KIB(T6Q z0A8mMGc6x^MEUOH&%xe~B32M(BFoN#|A33TrZCkw6yfJ5K)#n7$hO$X=rR524XkjZ z;O>JZo@($q-2<3|v2*b8(UB<0){lh%m~qqPZDISta{)Nwtc}Cx6x>%A!J?Ui=YEbQ zHY~-nP4GXfWN?T{_QX0Jdq<|pmtrN$EjDsCIQ{|@vCc{LCMzuHtSopIXqXi!u4s*d z=rTxCdSkK9Gh`X*+|bN&4cA!eQzAhz&qH9U%xf9e1D3>pM#H=?M&8$_FxXH>=<8Y@bN>%ec0+s z*rQk|wpgAFUpL7fE-b^Zu?TiIv9^Co(mUg`Qd4joO!86iA$qBN^>v&>*Q~zW74(T* z6l$I4u+Mql5h=fpUCs~g4$S`f#an}avA~f3)ht!^7jrAj|1!1A?0Wa?)vh!o%NEDACA$>Af^g3W_Hr%#>H%pvX*&9P;Eah9RTAsbL`oqXQ3c1%@w2jjCe zMIArOJ@`cr(;G)ecz^CyAADNDUN7*A5AOzH`^g|zSsh%K?@1i_Umm^q_3v^2`h9Ne z;UCcl{>RGE^WU%UKl?R$wZC}u`L~~)eDd`P{{Aw$#xNMW^X2W67WQ4+$ZqeHw;vsR z@%w+@HH5Ozhk}Lt_9?t|>v?0il7a6tnQXK>_w&v@T{JMW%(~LEAi|wM2hCcKx)$x4 z)NVnCR0kCr!`&tX-7|pqa5UaLLdN@19Nerhaz-KeGK1dqW&ks=n+{VO3Upoh-6yaf zKl7Ki9=R0INYOEDFYi2u{q})9SlThBYP-fXX5@HnPocM`k^M>Wa@!9jdyl^sA@I&b ze+FW0CBYKcz`8%fV$+pQ5$+u#u&#LCR9)bTRK%&;iNKqzF>v0HW#$l(Dlvl*Z5q3H zt7oJiGrca-kS3as^x*SrQ6`|E%AK%!x8M~F;p$&gMr-?WH_isJKDhkW#d`~*%R)L{ zLr@^|Ql35_!rf8?ebW%lw;VzAs6!96a5a7t_R?n9u`S3i!5XyTa7RiGTmfCh%_A6K z8@6KmxdolqvRk7|Joplo;FB3KA0ZzR^{$DnZe$Ar<;_PPsz@*W@cIz#-UO8mpQRjZ zJJtPZss{Ro3p*Sy7mFl#Lfy#5`(qoAynI{6g3qxI=dKd^j}W>TAKqKOJG;dYniE9i zuII*An6vO_lF|1hf$3XnjOL`l!lsl!*KpA_%hlPuB9Y1}!RxE0!{G@il2K!iGpipV$OUaQPl{18T zIbZ|^?4^9jaQe}siATrs&OxF!2U&d?-=gp<YTnD9o7x)$t>4YLRf z+#H(J_RUjWxKrj1o_$k=PM(^kh+``}ZO)Z#whDXCcHPO1CUPD{vfP>{@pT34rV27! zG6&5L-uZ9_&*m)ldr8c83CzHWRi3WH1}IjJKdr$hP=>CWhpw8B6n0Vsx*~{qJ8nyq zVwkPM$n-_v*YG1V;0F85DRX2Th4xb;TWRJG5Li5T1eMS}Ww@)zJDwI#Vaq4eRN7Dc&<|`J1w6Dol@;0X0G_o`%y5Z#<6&j< z@mDn%X)@4@lVFc0;H?iMmmC&pyy&=3rr<@-K$nk6EdlWVB2jdE#lhl$-U!BitQf{D z9)f>Ah4Ezf^N6hhPq?(*;e5fL;xO@bPLlxMen_`=SSP?tk{S``cA$5| z2~NFHXo(pxCmWGtm7TrO%er)Tm`f7smD*4hE6yD!7zlO+y6iCvIN%F%NGu^6?&eOO z+U)@!GYB0!s`922sz9lufv3ROkE<{Tfgy*lw~qT#D~6dKo|0U|o@j(%RdBNuPB-Q; zeBG&tIklPYFcE=igRdi-LuMrJ&on#Ud$9PPR4^y!u`fvA0+q%cB?IplG<=tM#EI^yg|m;if1CdjOnSOUmf`QR~1n=;@5pw|FoxSA1j4m}YVJ4$NdnSU5IFDWS6m~45xRVU08V^x1&AoJQeBmto{=jxk zy?cL*@FsMEw>{=>*Ld_=q_75v%1Flpu1=EgW-|6%QNGPcjqRF zL(7Yl`K9?)Dj?i)_}hF+UpWh1xd^SLfc#RiLnMxXareRGqw_u6i0H?nWIliTJr`q6Y?IHWLi@ib}eYQ2s_#4o=H(=-4Ao0x` z5_7bTjLk`{eexhw*gQbCY8MB_K7_wRM>u~REo|&#;k}C;-68nud(Loa7thRXnIqM- zM;f(2re2^+bkH56Sx=;vrU;GcSRP%O(Bh$Chq3pMv*fNQUmuL~QKW-iZW5hV5zNqj z0WP$-52mbs+$y(@a>#hbl(uxF(_MibTYw?<;=EJ2C=!#Kp$_;(rbrk+pP0y=19u{y zP?@|D+!w>hZ~13Q5+{~4Zl2NWo+5D^cqluTs2t1S6xn!xc+mvlnOh9QQs*+h#!)Bm zy%n&~u7HDI_Q&!SZ@gR**)zFiu@hiye;#}P4*#zNO}>Erbk^W2;8!MztU?0j;TZ0v zLFmz5zQW`|j?J#K1}#=k!bGBrwF;w8kDhom-^9E#kl?|ODTjt8gZ3|% zJ2G00FJ}rROSV#N(}o5`6Z$!Dl(gjN(tymAU}Ijv^S{%5o?w6(Oj_m2SL2l(W;jz= zrCmtS6GD&L=6;+(lLyzu(X8RBc#));SG zT4B8L{^<1UZ}*S9a^^%+U(?vJ5vTd;_T+}ho7B7KP}t9$Pv% zJ-gi3KQuqc=PIWdG~t|(r(Tc}3#|bRlDO`pD0^77Au{n`Z^mb3I z1kq8GT@siY(=7EtwA6S356&0x9(@VV+HXo*4}b5@G=3W_Zhq6)J^d1T(I??z`%x&{ zIz;ZJZ3|bokcHa}6dF}ex&mhDHtrXWC}8!_IkIWFHJQdeB7@l*^FMNh$!g3RDTU!d z3*u~W;Ld79W(hKV%M~j$9gbka(8&aFRX#nWNPV)hr4(uHTH5AHh7S=q+W33oG`<#@Wvz#ZF3=^J!3Swax9q|^ zkD^d!vbxLhrqK}71)?H2)~z^LIHoQiH$B~bIbF57Kd|#$6!hHnR%oK3=nk5QP zOF-6R89U--+_9Iyg`X!2)w9r6r{yN^s56orHhPo2@P^${B}h3hi3rHig` z;UiC~`VM@uKjka!f5(wn{t^tlKRNsHVAsp8<;`jc;XUeBtBze?{Mry9aQV)-f1JRMUg@0-UAi|D3l{ck z>$}f(A>|)$JpN*ztF%_G4os$o7CFgKem941>^ij4P4Ecz;lcb0vHw3r%bWj}**g7W zxc1=R)7wve?_WRoCenEDRpa=x&%qWr#h!N``S?2gshNQlZrNWu*@iED6IYbo)ANW~*j2w_EPE*j9uPSv}oUn%t7JWphc3H<01 zkXREUj>0Rf?mkkNw~sYoZApk?0~?trwl!K50dXjR=Z6IkGZlFtN^S26VUkE2dh6od zc~5>D9=%QFB1b0{n8J`DH?#u1Pd-dQDlJ+BBd;I^zl_w)A zH&0iH(d(uLv&00pp(|8qd!UgykpXuG(pwJP6|CTUVMII5=#!A{Hl5f7<1DusFtcDz zjYI!;+mQe8<9gO%MMTj#6SOBc9LSp+p%Eh{TQY#5s>8ENiyRE(orV!UAT#DY7uaS# zL`w0}AIDEV|6l23^GOIj0#3|P9=yN3=&^Jn;|YfDa|amXdT2+YYxgI4B6C2A_k#*O z*%BgOBgUOey>CyT59meCP! zpgy}{WGhUnd4^O;M7O{USs+6vgBBio8@hSS@RHy*f9y2{bH=+P3yN!f(^gxgfXB`A z{47-rjogq<)gRXEsm;c!%-%rJVhe>8)sC+ldyg!5_j!>in#atP<`{ixi9LZ_LaSWZ ze^&8iHZenXvIK!FICvH8%RSSyDUv`iM&t+7ONG8>vklo>8(ZfJfL9S0VuxUl7a=!) zlJOUI6ZT9q0$#lzo^AAmdaPP^%nWv$=HAGxUSSLP!JB{&AelwSK^{J$gvk$9Uc8=0 z-C;Ud*@~khJ`DC*6o#V|xB&^wtr0QUC|Fx24dHU4;~~I29>KX5L1-cB%Wg!WPe%-) zk{_a)8~1d00b(xXqpk2+=tRhpNbC_4iiH3cXra%qX+u@0d2gX1;1cqN6ePNmG z&chsbgBhbYmq4DnqxVNJ-$pxpLhuRv_?ZR4Iqu|Myy)~pZX^>F=!4)8Ho%?8BIh4S zzo3+F@RahK)u&Niq7l7w8 zSc30k9i0eed_5&gv|2{aw}PC11wPNb%p6WCJn57ceN$$C9vz;+FtXcmWV0g3Qv{HQ zfxjnXr}5P~a9y?_#gJXNI{{VvaS< zp?V8hp%&17d+kS`?Bn~|TH$D$*oE%24xS#M!hRd?<2v$`txRpF4Tx)tB{tS^X6|6# z+*j$$ZL!9EfS=(J_8YqbwQa9@bb4BDA3uV}^e|Q2ISv(@hqyoPkfn|-`15wG(dL!| z%m%#w^4P6{_mIymFx7G7Pt(E7dO~e-g}`T(_ED!HA&!R z;cI}<7AS+|Q^DQ42%l>n`Xzi%r3(JevJBy3^b!;t!AhyJby!pa9%l3B3PrFA%$`u9 z(AZ5JpMDz08X*`h)Vz9c!WqnMy6oYSiO7(s;3Lr@qb|SNJ0}6(RR*uMa&!?Mfmx;r zc{DpqW^vP%F83VAV4H`B8oqSM1{Ie%RCXW-Wl?()h830qZKD|@{H{854C>LpX-BTg zI8Q^zYana122%!PU$E+`fs1Mb%A%xb>_0)pLx>K4=fdr=*_o+TI?WSF%k=hu5<3ko z{5?jl)~=K4Oom*!iHPpH4ZH-sA(&BPH6+t^W)uY~cdc=*DNx{=TtS*AmZ#u+rs7;$ zQ#;}-*pHH8wKfsE$Z7b8hx4t&`&w`A5=HKL&*X`})-%5Hk1wCS@jtH*Fa5)np6Q?X z;*~dHLVUe{dgbR}6#W!C{U0n)q}36))c_T9hh`p(~eziXU8{}V^{ z%!MTOi z-u{8<0Uk#-4GnMs8sL&xpd=C(NyNda)ivyim}7wRXskX1?$Fk9>w%6XH%ni6|GeOh z_b*64`uLs(XN?tI%Ax(IU*oLb@{JM%ZurT8On;cfv&_%aIz8}y2jD%6LsJjxy(w39 z_o?^z`LC?@aGt*^G_G}icG&R~$#U1!^%2tW5P?4}(zpp=$E+!R8S1h?OMyp-g=d`r zW^>li9C`UY6gJ)%T$}@gc5#j(U7MjuX%}ygFlICVKz+YjnPGlEp;GKkf1+=H8f3uFH*!r)(2knBoJR^0blK7 z&rq}+oM|$^&ajrRaUg%u;R9e}2BlAv*d(RNOSAZk&;$MG(C{$DCLb4G0f95RF2zGy z2CY%VR=Lspm5`!G27R+JNhg=1wnrf5>3C{K202+^Z;^v-9h@q`J&{?Vjmxbejy;m) z$4YHUD7zy=mw_w}-3D5jOk@cmDiG>jauuN0aJYYdG)8=-dNWuT9^7@Pd;lZL-|4 zB5(8fsRTYO9&$kZ;^qUaCQ>|b5%_pXx!8}eF*CC9sNguGB{o8qQ8kc`zu6__S(H^+8rWGJAnKAK+oh# zALjjm!5Px6>-UFm7#xxN-GkG2;b|Xc$lYWxd`0j!h<)jGF$~!f=)*jUP_qiJ{^Bf& zH_H)e=kX0Li7ior!V;JPLwzz@+*l}Vp3G<*kwKbRe;@hqduu|&J$Itim#pq}!$Woz z7Oso2QsX`BU0-%Zi$6jR?SJ5U{HM!wN!R6jQ(c(XyQUUbyH;r8E}1rne_rc)^%w7T z{ruH8yWV>D!>-Gh?{(ckH^Ajf*Zz->E?oQG-M)#JZ;z~g$dtQo=4$)*Waik7YkiAX z?ha3Nub{`{PTwrlc{~5N|M&l^-+lCn7_0@{rrk93KGFuKiHj4HM3PLRXVV!{4t%~m zzEICc|1Yz5V1~uzDMVB%AM?M2$K@*76dG^&o%2^FUORJs_TIo8b#RWx@1I$d;~}Ex zpIG9)_5Ky^+rx9#aUwGe9jdu~@@zl3UT>!=t<5(t z4Q|6D^U2o9C*PEI9{+0NpeI{&MHO58w7)1TsSaOyscAhP$~r7Ox&Z&nCAXrXtmoNVvA|g*DL$-4S-zXYkl< zVSIla5ZU6M^6nFV``NGDDvQ@rY3w0mkhiG3WozrfFQLaZbP9i2DYhl$(DjvIMT>8a zuQ8S-Rz7mys>=Qg^RsXM4OYz^u+wU&l-ox{bW=)}SU7Zv3E1$g7+Fh?t0pH`!G8lZ0v%85+?4XLLsLW_Umy(A2j~>D9Fey z%~55`6uFI}^;ek4OmOAaI3IayG4|E4Jk@17|GHG5_X`OunE>X0B|OTwa_pMmwKCA; zc4Mr#X~S7z!x?YEPSN4d@A@%Up(8UCj8>1LvHFo8c`kdZe(3NdY8GVRbm+*|{(l_3 zXLRKEecro{9V^GN6ox!Ssgdz4tzY zsTlO$c7ZKic2cw~xx~3~?n!QZPwqMQ8O zoG?_#SZ92EaDrsA!*m*?L)F7PEJ{8vQO}^%<{VS{Z9L}9V``7Bp<7@a5YKDyRm*y( zbRsxKl3}S$+|)KUexadb_*_HB)QH5WOjHiBHLWSa`E9NN=|Qy8`_z2gYI-$9bJy?7uH75f;`=gpOi1nMxzX(EK??09 z?q&WYYZo>8vPkMrgY1&s>@W=M(R47k<}HD|QSAt6Zc*MlruEpEkz9PY9cW+PI&V&D z@S50PTKnh$B)=c)8ka`k8|HZiFVg9=aJ^%?MAyV-cJ0{~9K~fg?N##6W%7GvXKJ;g zqRU%kjO6jVSL3z)W!NDlm<>hx?MfzJwut|vtn=mQ^ez|ZD$c5dr5vW0g~fx9i*)BE zg?euY5iUZ`I-m$tnEfBYze*d>K*aq*&1~C{M8y6|$}UOL&^`*Dw(29BA7;m%gCx0FKbnQd9Im+VH&VDH*3qHC-fJU{hd%+QIE80rA-i%| zz~7hkFRZ4OCP!2t(}wFErLgLf(+pbNb5jOyhTgMkww^!77my*F2Fn2EzCRU*Umo|u zmf-J&;IYA|OnTuqy78{N;Rf2ss+rio=*dUeax2H=0Tvu%3YW2GR;{0qn>Da%L^oRp zB=*FLiQJQu-3D6Zo-b9~_p|!u7daLmOu$f`8;}cF{P}<_mSwfQ>%~m$&c>k*H5;j2(%(oe3@(#9k68k3mYrG%z7=eaoDUS; z_zs+8rCmI8EOR=qp6mrti52(a;m4rVpLm>L^CZ5>SDrfK=IFYCE z7XSD``@l=|d;D}{Qu^A!i1_u+?$I~zwsgPK-Z6Bkvwh%ZZ|BIpu7`ttLp|fuE%*D? zqf#4PHYGa$LPb5{nR!=g6;I6u+^by>3HxMF_wl0~u%kQVoOt9%Bqn#ZBele~m?yWG zXAcnm4z=EeJu*%^c7JShXl!Ctq_J+IgKonT*fRU$+fu!6U2gKNvA!ncX4{-o>Nnt} z?r>*4qC4r4#g{rxR5zc8bF0tUu^ofCJfdIZP-^t4{C=0N9&EI?0L0{%k1$2&ep0fF2Q2+gQm5qh{1@L%a0 ziNqw|yDNQRK z=t|jg$FL|TQ<*BT$kzDTmY7LudUvdrTU=W-kjW71d`0eOwXNe1me&uSl@+E?+7Vlb z!`lnt84j9awXo1$3ZSL)I68FS9gt~mcMNGMC9s=(87q5HGdnYf)f;s)bJ5l6bWf_i z9z2gePrTxtGx$8__>!AB4HyOw_@lE8eczq4MPFW6+WHxHz8^7@ z{rgwmy7F&fntUHG<}36`y@Ze8_u>4X0#NsxS6h4kMdyU%n~{a(Kf!nOod;uczw!N7 z-#GQhuf1{V58izJ)E~U{=0AV+?ycXu+THW7uRiGe)+^_({+pNXG<@gvhl79me(TT= z8rw(y{l(_qAHLH!^5ZwUyI;LJHTCwHyB!zaIDh-%xywzL-n-p#>CJPu-h21GhWFpU z^YB_j>)5q3=kL7#`ny*zzjdkM_PJ{hTHn6%pd0VPxII#sr&A9fFNI+takQ(gcjWS&E@67%NbKan z&)sP4VvjR4t#yxfPpQV6`sXIjkpxGpR?%l`rXP&_pwhu-C`A7#+#pL1uW^+e^R6$m z@|4`dM=&vdL8kl{__jZz&*ZQ0ll%hC=LZ!(@Xmyat==NNA>r^$+N)Y zqyhyFiQUE-fe%54jyE?U)=aebO^ZYSW$(F;erqLNt%`+}1C1-ZpkY6) z4HdTL>8#SB!>ifF)19uu#%2L z=I%9CG`xJ#N}c&B^rk8^dS`gb>P=01lO+K@q_JsjctBwZ4Uu0S^+XFp`P$wf`anOK z{@!e9wX0CuY#NstE_Dm^@3D(~4{!Y?SP!>gE#9S*ym3sZYoH{&k$`X`0_1hNGzekz_-w`zFyvZ z@tZQe>(ncF|H<2(y5H7w>UML-so(p?zd7~Y@BR=SKzIsfz^U_>uAX|(+I{NXbJu?N ze%I6=-+3_n6QM46k=$bQ-t#YbEQ{Xz;j8bTYrH>vb6`T+`Ualt?kSD@<6r+54_PY< zd`Q*S(Wlx^e*KTq+nsQH?{*E*=`lMuXZYXqKVqPCcuX>Tz44(yEYZoPr{%JlS=HQ} zcwQtDsYlTDI$n9}QvcOEox&^k`}BqN$HAlLe;olFYuro#Cf?TZp)N6ns_-y)3R}+;@WA<+KF{ww{k**V_~V6SbuS^(`$BR@ zG)7!ClP>QR)=oYxu08){29J|>NHp(RKK?3>r#{4eyS|U}lJ^N#HlGojIt~U4%MLpB zZ19q8bV-rT&6+ubjM4J0!5piB5UzoIu1VPs3*o_u+D6s*dn%67?y;}1_0*f$c}__=U-P+uv3@EYDZ$Uv5}r>MNj*vq>D^PSJ$X`j6I<$TG=%umyh%o z_TcCj3V4Lr(>64mzfzb(ljjh4-njB$fZPSK%)F#q>L!X=n&5*K{{rWou12aFUubBLKdpbD^+hE6lRBe|#6e`l|5ki(ltbwY}K#-bt8Ds+V0K zk=!~Lf7MmleP$8zOrA+zA*9Jx=Z%s@{8~X>Qng&N_TBS05$JJZ++IuIpV`H%Y z#svz|#Ee`fk!Tgo?fuIBIg7rB(-=&Bf_ZO|Y|RoLspaD4!7}@x1>U1@bKk7Jb5x@1 z8J?5gZ0VJtGpM*P&7;*Zl5Hhfzo&S;lJvYGneB)BXLSx(J!W`&ws`HpwXlA|gUzFD z9TY1EMOxLM*kFL6ZE5Zm7&>P3)+ZXkwAYQw={x1|59dBq-XgENR`e}wl*qy5=Hc#uNLVhO1UFGE3*bBIWIuIrKz*X(*2j~Cj{EgeA+CsXKtXM zoo#Fzd6OQ^GlOE&yF#t^?C_lBt*Z})-{_c>zm3oSOmp|-Pg>jif85qF^74a+Bd@i0 zjlI#`Gj_V6`QbZlZT*+J+6QmJ1Ha$bGuk)WH!kStn$+US_raXa!7VNew08RDoy+7c zw*vs^;gf7lYkWK01rOlv@3EWSlj+^N^s?^av)bnw0qAPwk4--AFkbTr&&JRkok#379q1VT zzA3e9oPar(Sy)81s3%@b`r_B`WLuz?e*n=eCRwraWhi_uls)Tv^@zozXl?g6Qd-##k+t>GscL@v@;w{ep9uU}yvxOaJyP^5Z7H|f9<>Tp z2IiHDneHoE9+v9&O&7U*YiZ-qO*go0Q0g>Sw?A-YD%(!Z3LD&F1O7B!-If(At!o&Y zR?p7K zLF&iU)=){w{X({T^0CSa-wb2kbSSenF*0Kufmtwl^1&Aq%%#2l(snC2l{=nj{+h`j zyWorGPHP;QpZTK2ACmF=<8#eD-=C1{Ur`%8!rgyf&Sdbj1&H(q_^ z)VsHue}`Vce+9q)UtjB+{PyYA-hX?obL@M!2F2fhx$(jG{_@_vKmYN)rXRoAeDAeu zJ%gt&w|2gLrMdsy<(7d z3hO5&mV}CYj1%s85dLd~?_M~NsL(IE2R30BRNIq8y*tO5TlM0c2laC}^4*6W@jXe^(+@-0kWdyu(1zq?8#tMFM%Ra9Td3!qR*1UgtR6K?#{Wsx{UF zWKF!BgW+&tEmCLLVrUIiwvK(V0y+MrLsz1-p}X5YFh^EXfgMlvenXcM2BmRGq%{oB z=q!A87~eL$fCFg&+4W?~%k$0slhdauaDOsLB5 zgTr(4c(4mYce-c0uCc|`Ic>)P!w9m6kCOj;}^No+DEVjKXJs$Uu0MJe^K5z{)I2S@-h8# zCsK{;1TFK4D_(xYEWYoKFYe)8*oH~H70Ruw^PO4&)=Bwgxhi+0iZDxfzAxo;?gSX< z53}jT{lx!%t$gXAEmB1b$h%dxkPR?~lUc}{THbf7>>&$#8WVj2I=ZIjn;Dwk22TO zqgN5}Gf3mvRUKY_J!sJc9<9A{OopR-R{inJr-`tsYy` z3oAyOFEL+O**0V<>pISR6^sz1zMLHY!W_GC_Wel}|E$`Vs3=m4I|{!1SlaSPoJqK2 zc_FX2U_xb|!A8wBD+=Z&uHc-RPcH7M@enG=@+iquD%g>!;OQyo_nm{cEl`_0ld#LC z5h`c%tB+>!4Nu}H7zrkqM=YWIAYT1`bkG6L%1*00(yTT(Znllhy)Q6^E(=udiw}oI z7keb88$x5S1&;PZvp@BK^QtXbT5mOb6SrD>M=zbZaQhbX{Q$bA6i*;_zEz&V88sTV zoSp=U!JFo~6dK_*9}}t_gFq99cn*)S!x{)?*ZSxU?!d2dA8%0$8vp%BakteTpa-zL z()!6?|3hne``LAvMW=b@{TR0D_Yq9KL)7dWMtA;em^MzGIe+QY*|YDTx_htZ)Rj98 zr`|Yo{!~L#>#5rf9j6-ZkDNMl@z$x+bOH2^3ctY;@B8;gG_R9|y2812$LvjBztZ^d z-81hsU0^J@eYb1;0n+qfOV`xwki>3UJ^qD%@8om$&XdpdlXBhkMGU?|v2J{JMmYoL zPc%NEmMG@~@-cx%)YvvOD<<1BD^SU2XVnt1NGB2qsjkhFJdG)rS1F=DxLAjrE{!Mz_<{FI##0Mr#3c5sYpZ+J<%zu|$I`}oLh`-|V_K_=AdMW;NtwMKl5|$OBRygC$ZDvfdazf+J$GB1k2UYm`M&+jW?+=27U-zQprQ(YR z8FoDBNM(Z^*U2LH>k@3P9Nx{utTmi)=T4I9Yz_WFbTQ;IIY0;|mwe9Cvs#c}UcS2LR%E(!k z3k(s}s6GTrWYzch!!M(&$Dc;<3VG|lR*yeoSGR*-JvX@+ zBp;m7>*#7RA@?%lCp`FGJ@l7f>`lDVEPkw5pE&5p~CeY@RHm>Fm`;7c)c>1`2?S z)ul0oIs4{?TfTR%G&_4{4fc*PiJ5GUft`fvI+>U&ciN@*dd7@WODN!C@2vMF!^5I^ zzu4dpbWLb%Z3D9=xjBkoaK%YavG(fyVM)iB63>!B**zwbw{(pu>G#vpk6>a?ZS9ws ztaPS3;pBN0?re;iHF~9`--j163@<(nB49yo3(~<>TgTJA43A=wIjttpx~h2RR;!P{ zTm|2q!*i0NA1}`iH-`?BV<%CBTZnfGoWAFL$N28aNC&c1lL zNVg_D%cW9b{So}GCve7#5gw93a@j7&94l- z9N9p22@YW(z?VP7&mHBTP2-8p!oAD6(zOgeoD}z~0=e}f-}4OI%{aO782OekT@Y@{ zgFFWMi0l2`WQAR3f7Z_2Y36gT;k&2CXsK?S;JT4sG0%IznP-+PbfH`416ee*oP(UC zlSQ>#WsT7VPzgFRn_)|2(eH>?J+MHW%cGemb}#Fdh<|Ul}rlc^H9(aAmK6 z=P6Ith^&4g#XOn7loUpr4N6Rr09sAZlUohzL-~;08VYl;#l^-*lAkGqFDEst^Cyfx z{FNA8$%T~3LM_>oYs+xm7vWBk>sT-2gGhFaNFs9-yrJt=(f*eBUak;0+95o0fS-B? zKfw-O<6W&QwY$3Wbcbify38D2@uXHZRvv%0!(C*P^LB;cQx%_gnSW-He9kKSof_w9 z6&_?e5H~l>!z$tQ_jGmMyRvse#zniF6(*T86}vUYDSC%$gHR z)4sy)By7h1L6NDIbLzg*m2Kv3e|k`0+HbCg;- zdFn*ePpv(9Mz7`J(5z--LTuRPJv^YEVNawBY|=fs4Nh-sZa%bW_2;&<7SFoE=-RLc zl6w|+>;P}=0q@nJ)RsP+RJjjkHSRq+#tzxl9CHsiX5@W>4ts3yCJ(sR*82hut?A8! zcyVi+4E&lgP}zjJut}Hf>eB9uio_U=)s2#qGK=3!M;A2)aVbL|EF-@mzL`lbAE&?? zhnOdm%sTP@Ifs8n9rR7Bop9|ct{J#3ojm*o0eDIcAtyOPuf&>)@EM84tLx!8t<4GV z)i$LJ*hLzr$>5FY@sw-(C$)N+A#5HK>*oiiB=b_8(>y+>xAjhlouiaqign%u&%CU{ zaCP@ZQcL#;zMp6+ zQ%TZ)n~c@=VTY6{iW9k3c23gx4B?qCN5b@$67G(WQFf0D53E2C2N=!GB7cCLF>L?rp*5jSy*fnA6+rr>l%|V3+UD#f3Ba>2BdHh=9oF8 zb$%H_hDhbg(~X=NS3Bb)#$dizX7abu^VIA~FW&J+vX_}b-esQr`KVa?6RCRsFVrU2 zpACx@e=#^EdWk}^S3pdjTi<(pk;;)bM--OVyy?no4uAZWOsVp6X?_1C@~Ypy)^Pu~ z{>8Vxed_I-&0o9G-1GHpY55QT>wo|M{v=!7{g-cEyngDB{`|F5mm52Or*m-ToA-x= z-@4r=_|ChHL*KnPrTmlc-n{yUe{$*UAOGa`wI95G=kAX%`~U3x?FVPb%wD+M*!|wk z`y*t4_fyY#B;l#0 zVx`p>nplu?DgfKoIim~c(MnY^Yl78ZVz_5ecz6?1cKP|#*A;tGB{^6O+BKCM%^7Qt#y%)~4y{8)X`y(%( zy*+^BG{ZTpCMTp_+&ETl>^^}xsPBd`PNXC-I51}&(AeUG=tUiGU1@4Lef9pset~Yd zPoNtc5E`fHv7H$f8>eRUez`fZsKu@(z0)O7u?NOCh^S27?q1&vc^zj8Z~j8lkaT&< z5PnQP^aXptkIAfkM*rPsGH3J!&!T7Ob;t9b*fD1muaHk!@@H47^v0AImX1n`n~#gcnbLgrB5GJ5Fk!i~t}@TqEe2=Yj;{uv zSJff2MNQlVOq^wUe1A%*-Y)2ykW68Ck+VnAr7PR@+>6>8TUJk~9AcO;BJ%8VdRU}< zwuO>;r+{pdm}jt9=LnCEOv{JytIx1gulI)wnVG0R%4p1yf)1TrTlWd$Wi)_pHPXom z0(IS5+j{K8(qNTY62>|2lGR(-v4@gH6I?`NJ(uH6Q`MTP85UNK4E1^?p09%5Nu?OJ z{`}&`A%DN73uMl@mF8Ctq-*=n#eBCW8P11bos5*%_eQhT ztpT*b`|X3X?>Dv$zc(c}T^^TNt}3mGt0N-Qo#|+*b0C60a?+GY;Er$oS`<#En6amt(%eZ;e}9c<2AgR zKcIKwTm93z-;?Wuzd0e&pL+GJ3#b0*yMKA=+Rgi?E?sUqb?JKBsfL!WQ{VfumrivJ zOHZl2`G0=?=7ZmO^{w~*<*j?Y-(^1g`Gh)j_FCKM+sx#ruifoDJ18_gpTqCG0UXtqSOhYma;N`*lk4p@ahdt9${DrEfu2KEnd&BnbVNvKx!~H1SuQXhg;*?NH zsbyrN*vY|iy}8o`kIK^vaGU2?z~=RvfB4GlTKsR$ zdqdK2->g1yyLBWnIcH4K;gT0<97o$9{_2;T&wu%M?5+Qvng8$k9R2O?)35%Xp1NPt zFZ{W8VdI11_6JYk*>1kq(4PLu>8todGaIGtr@QQgH@V-h$Cmb%>CmcjS1u;YyIFWx zG47^uOSqb3{)(Vi`SE)CLyP;~38mT6O!?iI#uHLI(`oMErTEfriKTN1KT8GQbE)n* zhJjb8?!74TUB~;okqcK3((Gjd?9d`BkH5&2Hjfh-r(JiwZmmhr* zq*o-$_d1*;o126Kvv%|%5GikhuR1iv3fo$0#w0Q;aVSS@3?|(uS@)ryX?=h5fM~FF zR62a8eRPt&w(v5bd&u~-{l#NXD(CSRhHKtBmWe|JiJBp08!ysG~v~C*rQ86 zdur87Zqb9SlNj+y2(Y17YVupvX0M&s#vRCSyXYsdJ2+GDh|0xkJ2l@4g(X_lfX`Cl z$6)1=SGXb-89Yr%D7QXyp=n^WeP~9x`}8y7wojv>(k3+>CkyC?<-o!k%gInWUR=$? zgGx*rVnO_55%h6B4xc3AwZkC#ELQPdcXj8f@BjKA|I>-rPxSKnTm7A5!g084QgUi4 zx`CCk>Xy{xNsC1qmju3(490*Mj_h=gKr`JjE}2CumCa~fqH7HuHuXX4uH4Fzk35%$&TYq((rROIVQ1%LhwJE|!vv3X*$orc?TVD#%p5MMG3c^} z%YI(tkU6pxPpmwT)7ySa^Tnxoc7d;RprbWVaH+d+ceO@tC-b!N6uWn|B!uO z>#)SsrSlc~2E^u`5xHX!kzky@n1ODAu9NqswS7={z4_tDwej)kTf@VX4THmimeDbB zTYL9d+qrAd|75nQkr}OUXiO{~o02Hxa-F(oaB`kKpZRXju!-&f7tE1Z!=M!7*g}l} zUaqBQEDYB%hJQW6Oo>hTkte%;;;QaF(YExAOQ$4e9euvm#y)|gv1i)ZJ0*2=PRN{M zLxecm5!kLhICFB%o9{I$X4Gyqnw+9@QYmA0k-=?|^-U?%_4yy4u?-%jO+4>&(6Q(X z6t`20dr#8zMZ(If*5RV6l)y%zG>yW+!FTSfHfZ5Qq!z?0OMSe%=``CDB1*Q#yZ;Gbg}v ziGGS|KyD6r{JCXcZT}-L^SP0^N;NcRRy1}A6jD=6PbS}rUg4lm&N?bHn25eRxlg-h zbZ$4Cgb??J5P3Ksh9e)o96!heFPCsPehBZh)`iE>?xUwP!8Iuba43PMo}o`E2ZS0X z(prK2d5%7_`ky@+Sv*W~9|%eGhn;&8M6D#Xmjwe$z{xJ!7wqO-N3UPRZXH7@2$f^7VUfH8pi!>S!If-O|!^5B7gw zf7j^b&D#&vI$O+34m!;2p0kii*E?cMLak?stNd!Ru)L?RB=#qifdlerM^kdg&ZN@6 zi+28)OwChti|6J*@fjDqNBD=grxdO|wX66TME{{s6WAsfxx*cEAHU^+)xWT7bVj%4 zw2t-8!O3-?*n4CSj(DCwM#nlpW87!wbp-e6P=&rgAIM{TANJFWT1kMJB%q20pkFDB$hUvOY-#yx@{$g?Zw$t(k|mGQ7I(qFb{pJux&rw}uW{hLvND@H zV0*iR`KsFzOgo0=Y&MBG?zG1i&_ukZ%;KKK8n2SH$Wkljn{Dl#npMzwCZ4y?cQLFC zD7`LnMnUi`p~Zs_xVAiol~iE7d`#Exv6I~@aji{DoyRj{N~*|dNd-#qOWyb#gN1<1 z^c36>us69eXKKBlEcQb@LH7w&HKofdH@wNpd+-omzkILjCwP0`T-`o?6?XRbo4Y3d z62|On-80(r%ll7ntv&ka8k+w(ODOxcBT_j7LgtNNuJrR*VeKUt>)$+k{q}F+dH)7n z_OFwZ{YIj&`n}4=qdyW!biet|<%U!D`^JCkM#H_|x!F7R`&WmA-#$Mu{%v5J-}?7A zul}2#+`j&AUvIkmz1N$Y|MHDXw|;uoDtzW)%32O-nm3*e8V1ViRus9{zcYH|Pvyqx_=o?>OaI*oK?zp!c!rQj@_D zDJ|+$Ws{otGICvcXkbKse|&VdNu#zj%}mJ}=Gg!D_m4L;wsbemiM3r)v3d|)U`#x# z5|9Csit+r@Gvpt^sA~!3qU3jCoH_AmX(Q!|7o&)hexZea-)O~$eq#p?HBWz=D!aHP zljy9o26sfVe)!3JG`B3d)80P<({QR^pa!!UmiJFnUTCVTD;NCpt3N8okzPRgyF%s9QHvx=U3gW}rD@E8?&CR z&+*B91n>8m)>rrd*3k=RyzqEhVL#5VKK=l2>61{lyhpxu8(-KaGxP?&ur(M^EA-`U z?mqr#o6qVBIoHKVakJu1mh;AVF$EJk7Aqdc0Yk;;#PYIOwvhd?!3%MqL)(nLylGrw znipxkI@mQDJYaLuGGr0$6wrVn4$#>89j^K96?@N25(=&zvMLlF~aJGLgCa;~r?hschjm!*bW$+8YvZLIJ->&QP)TR*8d-vIEym#&X==o`t z^YY-V=`#218^J{WM(>3BD%#N1s|_6u{zSQ5W%Aym8>R(j*70u7sQCSnIqPlw(~W1|xzsW&HB6X1;3#|Oq8m%y(bIw%X=NZsDgQawtYw>ZtfbD-h42u zg)iZ7htiI_&F!|UO`YD3(YeH|R9*dV|NZ~nIr`wsox>MjuECC}eg3O|T#RHF6O%Gy z1Z^?egQMro3ys>g{t5fy=A+pE{9peoRjjQUfB3UAbA!`5W6Pk#-aDc5fFuvy9~MRl zgJnlWnpG!$o#QY6<1f)`zT|%UB?b0hwHb^qB4d&N9Vx@6a+EX!xQ#QadpY@AfM+vimNLSg;IuSy#yzsOeh zUZlyDW*>k4Hz`cNo^iRuRL@OM>qB;XdW|dRuE&vCwu#Mg+wSvUf*e_8hhR}=77tVc zjaN7*wa|r`o1Rd+h1@r#X#A4Xx4VUSKjzh*f|nZQ5PD~{_UME7;`Y-p{y`50ANS6) zFFc%^Mzjx!i>}aMer?7ZtxV0Rts`9%iXqt9g7v3g%(6Efgk>|p&oNEr7;nz5i5-%T zpu8@P77<(Av6gmTSnRPHnPI;Hc8a~8Wlyd=W`2DN$M7gx+5ePkm6Is<5ud~ov66*% z6qX;knH{Y7Wz1w)u`Tb@lDwo=n}c$$K}v-sfF-k{!walohUPJnnuS+0O1I1K+czFe z-R%=7AB;(j0=3hPXF8$}mor;We^EMo{$&An=t6qsxKP@8o`vT?f7@1)IU`ls|0IT= z-dDGGkQsBqXPv*=IwEKo5Kj5il{pxzN_@E7`+t};b1X`P`vhg@fH-v9?-sc*TI9y^wsO}$OwXz>&UJVBeJ7M;hK6Zdkm`3DE zo&tzmxAqB*TtllSmdSdd+9@-8Vp9(XXXyr3wN1^L+c;ag@h%Vc2@Jj6lk+{y5q$!c zt;Z59ce7h-#ba~pUf1Zgk&&relM^$I!y|%wo!t{{O`U?yrq0QJG_~12v_MK%r2?T! zrBKdmJ9@{Ac$q!$PM!DzVlV#spH?H4y)}3RoBJR9YJ2(Q%N24Yi}lx>*(S=F<+Gyy z@K`i9b_~qjX&X@UytLxEx0!=g@8)fqK=ae$eXNtS}MlD|3+u+w4-?0_7 zC%+S{9PG36-zLMi!To%tUbaJ5T+NeSssz$Y3-IOAWMGnWz-q|PX1NzFXuYLOogIgs zk7mDGUD$q7ai?nweE<1t#cZ9~=gqCe)y`xHott>&Nr;e$2c6x|YBC8Sn_+-%;I4=xUjy!pO0RkaumJ5FVHw$1PKt33g|+4 z7tb1AGrJxx2N|xipFdB;omq@Q8$(m17jU2W{gVJ$TMzzwTc60Ng{La#GfQP;!4S!B zSm}4OlI3@3oC&+mow3jAd`@&23J^CVxy{GP+{WW%eE9$_O4f^4+5?Z@3)A06zQ`BK zE_%r{hRD?=n6ct8@Z)6a)9~&S?4{y$mIS>B8CP;C3Fi;q|7vDo^J#|XN<>a}fZ4|_ zo%i`TBYZ-wGk{MfA~Jcc?vP>3zBb_wax2lQB3TE3}te+1tUxxJBQ~ zR;+fgUD$rIVUARn=onby9=2o&6&JZ*)yU;9ai&%9K@`Y2&^3_aGnHJBaG8T8k&jmn z%IVd|Wx5ShaOWfQflPvoeq7^3*RUu3JTrX8P|-!^gd_e4wno-MHKb9=ZylFe)gxk+ zn!Eixqu#tdT2<>qMVUbBnIj7#<7eY#KxVK+hRG51!&B(g`ST61UC!TX>HPWSTdl7( zJ{*3N+|pT?BIoego#okb5pTwOutCn@(K^#ID1Q0c?Y1BF^p3sS*EjiQXYa&2ltsV$ z{*Bgmn#n~{ICh&Hz&-Z=y#w826IX8BlalMR;t`49!7rBA4weOSb4{T3En$>eHF;Be zMsN9%##MYo@8yxgS2&KA_nyLjIz}fu1X%D0p7c|EUmuvmizfg`cS4WM5of?Y z+|>gR+T{BejwnFiozZ*u{K@K}Etua!BRcdXYA5VFk6}|D%;{YRHecr0pIkg9t9`_t z;7Gs@4?fPbaB=gwIaqpZ4;LO$nsd-MHNT5rb6;SI?BJu>&y=^e?a@pPZ(Eh4qJl=f zfL@lya}ep7kolD+S1gdMWbnVG$T=m+90Yk!{diY`({iJeyqbA*&TbLHyC0L=4L#G? zX_G~_J(%N8GG`bT8?5;2To9mB*(sMZyf= zsc^QID=zOZlvno`=q}3QQOp=U*&JNCoXs0g8QtkLT?<)rC>h5W92%F{g7|3B-j8C@ z!e%&BSoIAEEq1LH85qoFoexN+8c(y&m0#WUa0harTRYN~9WP5BH)Y2*bbSkb-gelo`Hpw@2`M%>%RFbcNI3(px>hd#kbY)b+dVztPe=^0hmo zvtNI&d-V6uw08dftG60||L2V@fAIFb)<3#DF!Y1-J?$@D>g)d5oxX{;&)<1?_IAhM zCHjG{{pm|@+-Ytd>@s;W0OMHL65H-Jx`Gz zj|X!b=%ZPm(VMla9BDdSN(TBml+y}_h`G1E`tHBqI@vNbAZV0`)p!6Dccv!94V@js zcVL1x&k9vt)6>#HIsqrh3JY7BI^^RBPD}gG;=W8RAvGt_Y-?#pdMSklk*uyCBn`o0 zNMefl9HE?-khp^#DcTl~gh*bStFCH-$(o8z3vGU7Umeb@@J9z0HmGk5z%BW)9EBK)ELmR>XUy;3>B3Vt>p-&%vmZ%5 zoYbV-$5r{3QN_xT*!~#3?6dsF(HB5hJ_%>nKcS2K6a2Ct&Y66V*k3;i=U1MgcRbMt zatAiDOJw~vEr^}fjpLod((xv|n)O_5Yin`$$p$=t<>JO+)k?>xD^|(YbC39I0t{ur z{Nk3M4icN%5wS=O9wXj!6ZaFd(&W=yd^tk|X@UKvmR*Mo?yrKqzlLR)tb156%UPr( zKy0F`MyqjUhzG!{vId3xeKBXP+#O$#kToZ7zdT0Lb*}C|4}@|{V74}0eAa9VGo7AfXiIC4yy?;w{@scd zpQ|&scEUR2z)tSNk}Pjq(AF*70nOMUtYi)B=w~(<@0QZ~p>=8J#JT_UGswM526|Ua z%lpUR#5b5B4lL|84P;7m^dpi@uBwqMl@eP<3aeAfok5M|LV?aP1IMX;SD)eapTq+= zQ z=1UU_=eGq)%fGS(QvbZMWBk;2UwZ2lUD3bs;&1-x8#^EU`s-q?{nXH;?9{Yacj`y4 zz4w~~BI7qArM>S=Dy-kR@nHB5uiqW~ceh%)e*nw>FPl5ZU!Ia`UcY*)>CLlO@11XK z8^3z_&fQxL5Bu61AM^~pdxJJnV_3Sp`)uaQt(N|uzjL*}t9NojDl-U2CKPkCVv}61 zw97lX#zgI1;}Qlh)r>%;0I(q$nUITwGm7yazwvhO4_-Yp-j2bS?`RP3a^0Z1$p0>e zxg*0yL4Nrl!X96J?nc|}@Qg={_+3*9|^GnP?|fE*giVRs*UFI zfBL8YXYa!=f4S~YWOJi)hJ_bj{{7O*?os^h%eRf!@Aew5w~QFaMMhlzCI)e}GAGyNfZ-;Zs< z=o5H9Czu<L@1JS$@N|4xuk1TXx zdGg!OsP_JdNBxJ{rN^J8*`N8RD2p+AupZ(c!!zqczxP<+N6?d_5h(0Drq*nk^+#sz z(rTgBr7(r5US8PX8ofTxmrw&YMj|r$$9t#LqYV#7hHrOHOm&P&WpqU79^$|3mzsFi zwc7c_LRo5&v+@pqfZxm&?U8N~1%$Y*PqGo)O7XPw!d8G|q1&)&ZyQrhgL+Ntx( z!>NaNIwm^ax!%@u;ZEDonTvNOTe_!2gVPEr{q(Z-VX2Chx3QjK=kwuT-hUpYZ>7H5 z_n5*feoJ&E#7;57=c3*L5OAleUKlP8bbT_y5%<#WGq;5E`u+%b{{T43>=GE&xeg2lU>tF-yk#2Fz;>8!x3>i{C;u)k{0xayVH{SoBh4R zH}L@6ZEo#tdC(*1HbrVuAMdvxn;@w%*|+pprI+fG#X4qy`Q z!-Cv~N3qG?Zxz;M1+QHN2FJn}3vQ_`n#9+h6sk>d_VPJLcDLltY~tH4W<~r3?Bw*8 z?-zN_r`LsvKtT9c0H{*O}OH=fnQgV!)QDxMa3~{#IKr zpX*#$$b%fVcovRLiE8tr&YwF6lL#3p7x!*2`wRHoCC8+Ao?geCLu`&% z!4}z>fxY~UWP~%G;R%sL1|JWOe-yS})Zj~nrAANGNxukMRT|@dlFo$`T>muQC9=yD z@x{w@NbaWLfhJ>>oj@OM$!rXlV?3djl*k$Nq zc#s!Ufyuk5be65V93-sY}GacQyMJ+}cym@R($C1Miei6|H3J!YcjO2oh_V}U!KZTa=46G{a=8cnI8qu{RQj=E< zcTq|XUC8S^9muW^j!BFUVaT=xN?W&J{=NCex!XS-5U5`R;{4{olbu!;YcLo$Z6SyE;ej z_jZr>_4iCo;7b(K>1mo&vD6Ng%Pt(?6Jlc(ZF2=b(gu8ijY*|vKaksgVhL4_C)B=^ zaB=-PX0KzpC3!e9XWr`<%^%GNmp^o7H$P(LeyTLbj;HbM2@HY9c;1d-T^(_cJ%rnM z$i5syY3kUwK*6m$_k^C@r}!+7^{zC2g8U=8s~@={wI{)3=~!bAJR(Hs;-b)#fmi7h?J4JfF*iBfO9a zXO}Z{VbJxLPG=T(Vw0HixqRYZ3%KX>K3nIg#@IJ&H7n@kA#z{Or5nfROh)8BO?&UG zMs4+2;r?0&1@k)gQ7X77imqWHeOqahD^W0#`A}VG?9rl&xtVnw@T!ecxF764J!l63 z;{73bUa$t;3HJV}aRg0#v1N<5t^?#MYeyf|Ox{F+yi5*HLcViSmdCHKh}K<$4N&!< zQyEcUWfX>xORb_ASDDKez^BB=<}@KL8BxHUQF|aB@&%({{2mnxd!LnM=2(_vD!;IK zQel5pSy(;D3MlWwe-$Es6(_%+h*r1JOA}$0-W}xqh>|ak@s$drfq0oW0_1ao_;frI zYKK#3jJQM^kHh5fJ5mda9(w4B^d0-TM?0LMl(oEiU=bO7D#Z5Lp()AG-L`?LTzOS3 z)j9N>L0)c7gZ%JnOV{L2(aK&M z5Sh=$@{8|lY_9k5)L)TVGuHxz&70+&C)a$*!bM+p=|ZNq{SJHP*U2~h7{>OuUV8h= z@3suhepBO$exs?a_iJa~yZxKjn|goa!u6JacC&lxcN+R6zk98v=XWnX82nc)V^iNe z-~RBMKYaJXw_kbx+V|ePc=<CDE5x!BTC%H&Ijedxt1V-$qKvJ*|m zLIh67`7DJwJcYMo!keh{clFIQj}Of@%uGoegaSo_T&!*A>>R#xuWhJhdRoynIw~53 z|2HWXYs3%Qx|DDt+)MSHN_n%GTzyi6g_94&3#m9+5&Gj2WXPiEEA?y~ea@>s*zn{U z3wn5)YQB>?4_Q+9WWwG_#T-5&IjjQ7|4-6;2FIP>XP#Pny(i0Iz4EOst%IahvLs70 zBTXI-^Drk61VH4Rb2qwy&N=6tb4H^9G;$z7kYE}PXEZaCY&q`LRk`k}?%rM9y}kRu z_d-mo#+4=VoS2iII<*2fFVM zi3fN^jFWqtjaN2A_CQupT-}^9c%$HVd|fTQGtIZ!$9nKzj{;5@>=)=}nuZq^Ce=Qz z)KPFNqHE#M*2|y`Esfp>3tsOaXBLLvYU*0|bhde1UcKHiz3t0yy;?tf{ws`FpVC$M z%UE^$Q&2z8!uk4B{O8B;d=Ba4eU#k({8_lPcZC0Sk2!gh&X`T^!%bgidClZcuEMLR z^9orF=ay>l63PL(ZRxkmaD7HR=}Hj4x_5lRVCEcSq0`AmHq^{}%7iv%V8>@HuO83| zy`>)!X=UKgG|380rYn1eR-!joOiG8KlS3Ta-pGn zw~jsz)^;B8XO!9fZTKF)`qJ-?7wxIaj*|>77MyK5L@IX9Fm_mHR_?#e3@|K-GAt&=K9=);=9=e7vPex~<1l>l=j3!K1cc$sD8D$n2g+VrgcVZA0W-lJb zZcn1vOJ{8V{_`(;@*5A?ALh^Fg?if&EB&y0Z2rHTzTEP)1*Pi`(C~hDa7O!;o-z4< zAd~X7fmy}Z@Ob>rPv1HR_wUA6E?&I$AMxaVQ|T^$=XUqZH_qMe{?n^ByS~viIREY2 zozvgF)ztHY(`T;!5FPrp+a1I2UAftGroDIkD&B#H+f6-9@0_~Q)iJOj`al2g|5ueO zREFPp>s&`~zi>=6ubZ0{Y7zJ?a+%sC@9v!zbKft>+(ep5Mq@v?BWp*`fS2C z8#-e@diz4|X6N(@ezy+NT&q}?Q9WBo3%WQ<*8VQW2E+u2GKH@4tp?L7SaxBK)AZjt+`vqM;0KYj(a|6jLY0@UE#XC?Mn%9>cD zPdE}~Rtbal@!&t<=>|3-(E_-?1}|!_%JZw))`NmuA>`=Hk|4H$G8l=uZQ%N?gWd%^qJpGK@>~syV$| zF)(LP(!;4u73+9wO0$;K^3;sVJvAyd3()vP-9iw>zJhQ_NKLTbFI_wOr8!pFw()x% zXtS1{88vqGJqKf+f!x1kW$%Tb*&)2xA3 z+mwj)VG-K5Fj3wg;ri&IfTjCJ+jtu!#P*g!Q9JvIZup230*zBZ#uFQ$2d+_C(K~BU z4vTCi<^r$W5%a48l>mFaF#eM$-r$hb5`qnuVt!ijk&|%D=>iUIpzKmxq7Jh^LnX?# zk%Nswr1oNu$V+;sWn(}2`PnY|ZTq76>M%R5K6LZ;Yb}GV9pmzTyc(0i?9$-0)ZBch zYy1xW``d7F@AQw0Z;p>m-$M6mAXC^(r`3o#vN%hR&_v&aOgtr2$>+ps)r>%H&}tp# z*3JR$>$?V+W1h3u8a-F;_2uEi9uzm9JRy(rh|J$XuKsw7oLBio|HSqjZyOO>#zjVT zW9NjD?n50}ALAHiS97G`BD861#}IwD3w3Jcp|808+^u!T*ewQC>?#xu?L)Gbo(VV* zF~Wx?`Sqq=DLe*s6WDq5>$tbD9=zH*WWmqo9-h@i#w5-H?~E1Z_*M4Vo9WeqU3y!$ znGtvKbL_KA-zHzZ!Om{omRPM$sT?_>(w@OW{{OQ*^noP%fpo04Rq*H6N{onkdIuBC zd@20K<)sHNs%VONlP{NszX+qgng~@k;&fp870y_g_dyb-60`MQl6P&KGkuh~CjukR z&!}W;?42>4@a*|0X?B7c_V5{I#1sWPaq>2CSe^-Zz+tH~E692qqJKYAbEAkGW0S?}U z9<+4qfQPUKGG18rTzo+vb99I-a+FMc3iv_BlCH;%(M5dIt6@uQ#V<6*=-!Nb^!Cr5>KziDzS-P= zwy~xAa%cPCo%Z(OR`vq}><1>#UTm93AGMf5xun<>E6p22Rp!4MdCL`cSDVb`n|K!1 zsb}3cI#Q2h=Gap*v(GiI#PNb7^Ke=n-5ZzKcG*Q7&T0Zr*bzL(kM`UeUVOs5`6s&tc|vya@^OjmXbo>(;-%h!_VmSMP|KApSZcV#xb^YqZnn}R0Te0CPP z7T9{4Nx4-ATg1TGS~sV#YVay)_^!2*>9xk0fdr>CHp&s89cJYyf(?ZE`!$3OE<{jzE;Vt9_4!`StbiqWPC#5Nz6EC92uTZaf!hnj^<#K1~U=n z`HlB;Uk zIsOu&$I{fBr?2$&j6k9=`>-Lec|G~v@TA%w;{HpJA&gT_9?n!Yh%!FOtUowT;GqkM zjd3^K^S;gfC)~~tiTSP>_K#oaEA*C|{rQPrvf=m;r`Zb*PKp&B%ru=~VOrD62e-OM z#1{)o8`oAIJOX9i_p`elQ*ZLFJ;TrJO#g)F^yIwi6g;5!8~Vg&!OL8;C(2hQ#k$j@ zBJCNIKYb2=@7d+OXQ#+>{TRQ>pMQ9@@sBQDzyH-!m+t-U&6d&Mp}*}bZ=bpJmAk!y zKOh_UpZPn!cBysf4?nos@}GbH(e}*ZGOD8vVBzc#)@evotY{P&iS+S*$MUbn8Xn%Ea2f6F4iB6!w9(lHp0mi zJAhG{du&{89|O`nGokX41n~|J%}S`z^-SqKnR({Xd19VZ(+kRBwAc})J>1P#bdSEB zri%@oodY7xKy%OZ$kmpS>9#Ss0^YQ#0f2GKh}^~d!A*|SIi<1(W_f|YyN-2_OVfQq z-D2ywa!cnazT7%|`RjPD_Br$Om!-|8zgd6u*%#>QukeFBV;}ht&cgBX!6%>KeR;OL zdwi5zIoyF`vPQORjk&N+nZYv8lVvEUd=(buS)1 z6VC@*dE=4K6<>7VM?yPaG>P;cEq!eoIeRf=6J*sauj5?<-UI{Hsz!RD)cl?WIuPb( z$vJ>ik_5{qE6z0~9Vp}+W!KxH z#sPuGSlWE##{c8y*=4nOlV;8yCYX08oGw;+d+aP~;Z$`y97@&v>}S3Fw1apfLMKea zBJ2lxjsozFeU5lJw7P%H$9!_qI}s?YAB5KrpZZxEI7-V~P-9kHfCJqRo_*nmd+V)i z9l_|XxbX3~_zd3I$`hw8waUM>tRvis7k5)n52Kd;bN%x6V@ev3*F~J-T3FpWv6^v%!{m=;j>YfFETmZ$9_`+yDN5`4UUJIzF@F zB!6d<kh3I@PGfVf@n2C2W21^7aV4^8xs#U5Qe?Ct2MYs2zUV%}Ck6uHX`VgKrt# z(eDlmr2mC1^&jAe`@_sIreR#*7c3^AKm);2j{N;HxBmS?dqHU-pz)d@1MQV{*!whW4~zY z8a_n{+f}MAZeP3CbNhNjcXQvkYOK8VT-4Gx(fj&4XIneF$3~TMJK27nWNzLlpO;z{ z!=qwJE8@0rPN$j`sFlN`Qkht6SP;!ACdvQz|M<;QV`nclO4()FM}*2$ZuwvdZ%3tX zbSCu1`!}qV4LP2D_G`z$m|)>*WA6f9P+jlHg8pvni1D3^cdgx{k}$dT68q@Xh1*?0 ze5K*LT_X+{+1iGtUd>zYUzGmUkKUG#DIEHHJ(Ke0u5mfOLPo(&!yw&rFv~=@+J_g; zUTzS>YLs(k)ZDn=FZ%v#?@fRAr|*f+Tx&ISLwgw&8lxJrujs(V;W>SwZCYPx7ur`S zr>;lK^(qe-GUDMPIfHD=*g{I6b!5r@mC)cy20EJ~`C6WS$y~I&i5={5LZbD0t)Y^A zcuuCf+}vX_#nAO&pI8D>I?n}Qj~^^P`PIL!bIx4B`?HmSD@_l;z6;R+zSS1zKyHw= zP4H|752;-=R2kp608r3wFi&qJH}i=FjCxbvCHKVw&@3h z6~UK_&Q(j`TaTb`hhS+1*cE#;zLL{K77b>eQ*NXG)RD5G``dlV6*KoFyivGm4zOPF zMWZEHHlQc#jozG=J~HL3&Wql?r6*g>5xXkm95L_7)J}Q>l+A;4GED9o&SMt*f-d;T zcD&?Px{S?N+Q+Q)y?OM`m}kM@aS#S{!gF$RuC@%yoyJjxOUrepGe#K`st?E%rfkeK z&eY-#nf!pIXI5k6d}6 zQT~o$=In8$Ga+OTEw*~os_n<08R(gj-Rnd>ixzDfchtqMBnZbbgvZw}H2A#ydwqdy zJs2!(1p>KEk1Mh4BBEv)5^0Q?m0icfkAKYycwY-^d0uG>PQQKb)*#%w$*t#KD4u=( zj|!bTJ4KFkm=R`_pZzF0=Fo!9(SE;whE?Fq^{y%Tjiw>d^`24DjfwH;n>TKE+-Vt> zcZ$u)iNRU*_|3-NvEFg{ya3<-tXQTIh~=1r^tR^KJ~NpfC*I<)#t{mf{^+{zor?_x z^uDcWmG?n;@70roSHC^d5vXk&mz}WYQtTb@IL95W7-x8=TM8QwtvB2IeT%v9tm*_6Gj#I0wtr|&8y=TAb3ljd@DaAw9(}$C+kKl{$Oepw9WoU=zBbB@*R>^=AO{3-JIH%_DsAqMdB4)WnO6QKEH5ZDp+M^|3d8bIW zHwjxO1>87JZ2|AMa+FRFdfj5liK>zzWz-=IX@CQCMv7ktL6KSeys(&IIK4P!tbcoNfSL_q6PUOBmzqLdU>LjQhtg zGJ37u(@F#UXdNC1bqnx?OLzORnNX9yd=PY`mi;IC9q&vh^S_t)aENSDh*tDx=+}$>k*!!1=-g%U`Q!>} zi^SB+^e5)&{Ve1+pA?n0WQw_z**_754lY>;>+MPOYnUh zqhu$B>5}Ltd(%$8!u96p6CiAJ7Z<+LfDaKj~!lXz!hTr*BYns%K#O^p%^fXIt9`uk`nfHuQ9iv-m}aZYy(ftmdYI7Aj7^oFr(T;7d<3*e(a4Eo@(&k z!C8MuPUivI}r{ozvMyr2;C-mb`w)RPhB3HDdmuMxh0@6?D zZF~yT_L%(tFzK+*|msq7@VgUfpsDe;kp_(Ai z-vu9_8kZQOJa5b%p81Tb+g`OJ%ns6MnkEB4j#({KI<-jI-pa5kOD!el~W}E~Puej2-by$Qo#@;h>w0ekfju&5AW~ zPbi(mJDS5|kc7RM;@OcH6RTsrbM{oP#Ge_GdUMm7Z~@+S1z%Z}p1mbY2r)igt(`DT zg_=-7VnE39r*mHTf2;`tqYE1Az_8GCuWiWG)H!UM5GVkq1yVD5fAW6sR2Z)v5x-9g z3S%(XJEacP_a3KU;b-vt+#TCGi}Wh_jWTxwesK0?x(t8F{;>xZ_rqfeA{6%POR*G~2I&&s5D;CNS; zUEKn$i+eH-mn($^7q-DEh~;WotQ^^5eHYp9K@^X6xW4~93_r}rIf3oPvYt$;JW*Ji zBf~if&vl55ZPVLtzk8d{-68a>cZe;i8&_L;KiWQe+?cJdU;4=}&i!Iaq(2>B+_}Pz z=3*?jc=g2>zr7|hcuzNUPriBP+WmJXRQ59qO3SIf3CRcaQ=T)rA{X!}UO;4dPwPwn zh&mOYC!^^i? z{|sKw5AF_&es=0s*ZZ&`Z*CqOx5HTPUEX}uhyAOE8+y2JQa*?uSbtF9`H`GAh2qjcHOlgXEWmEqp5B7Jlt0-aTDT@vVvS48=beQyGKmLk z+M8V;>>FNa93K|mR!Q{@QnBied|utq-#2!f9`Hu-oVHgms~Qms)l-TE{d`ZykeYde z$KYX+eQ*VxtU{i-!r3_sn>l9o=C}q{6Wp`W)!oODXujsdcjL;f?0MGrpJGGXFxi3$ zh1%?!pVRvnoRLL29viyiQq#^*W>l!Qb=>ZlXcfxMyo zE!THXb_D{us^;*vFCdQ z;fXGZ56uW)+R)e|v|hUJwMrLGUGna0E;5Wei&Qa*(0B|L6*Hv2}V_-b(J{B zR`CYbQnlTc+Rnpeasw6or&+Bl9M9Kw6YLEl?DFhWax+YYHIFY@aZ1cVx{}vy_DIzj zE3T+od#A*MLL>OF4QqPsiOm)%7+{g;=^M})-7z`OE(zC#j9s6c?3jvfuoG?;4Xt@r zehI1@%tD?;3u-KshfSR=futDqk+{&&7Ek|OD)P(-b(oDFpGX3(iUk^D#>E=<9ii)tgi?DvrcTXtK zPD-rjXBLd-n!3k6ynLtQ0#bAX9obFfqic2k9U0CBxFA4J~%lCDg{jt}(y7bECYr_kr3R_2Uia_Z z>mL8=tlaw58+W?D(m5pgkFA5Eub#Pl_xE@Ye{E1;_=d`r`;Oe2{9$SD^Pj0)(eJ$T z!Nos$>%G(e^~3WwzV+Vu#=o&fYHxDQzxJayPW{cPi?`k!7FsU03@%)~+e=mRkhrmX zSj@dO-gV}7Puod97;x|rnba(v6YC`l60>|>VpjC^3#85MV^YDKRy8(`S9w+^7s3FX zm=I3={OrZS@4xoW*qQ513;i>4!-eau&eNCgh0zP6jh$n@&LNTGQsbZ%2C==1a*w+m zBZ}LtBkGo6srqL7q(-c?+GnKd(6}y`PHm%w1k0K7{%7gZ#v?y5ZquMZi^t!p=$n9&bnZ@nL*}FZn@fm$I?@pCUboiclMDrq3AkjTJAGp~z8o~;f-FfuM zVtxO(THk*G0^rjk9B$6Z%bD`_^E~zrFzT9tNP+07kyVS5X0blsC$*)T+Fb+IkAT-tqA$9rFu^T32L zL`my@L}YY(!b`h><-<=sd_*muLA`POsgBj77_ML658l1f$-ZwQyY^&$@8f?|z`~SO zHlNJF;u*WsJvGKmBh7C;RpW=jUc9Wq6RK1N%9`T#GgU+P*j(3)R@^T%E{xCX1=l+! zM(>X)N6~<0fNLyB=n>_aDn1Kc=1TiGKYGhF_uD)RFsVMWsPdJzRf7wn$ z`^BDvZZjjx9mmGe7lHK$FBti^EzFWgcs1+F-ZKYW8M8aLV#cRu#CxYz*fV;#=w>pz z*3jaiHCTOUnzzLbs}Ek9IUC5YH1|kU_V5Wd+D$jAmFI_kXhtS`|7x4$O8c~SO69VV zi-426NN-Ke54XidUKEed6W{XwOTRg}>YUbjt-Ui!8{H2+SE2&LKWf#5N>=(IZ41od zNQ_2j3?@OSEYrBMBF^Fhr6)ha{Mm`N-g>)zv@c%W724Bv0m2+diGYAoE)o55oR}AN z%!aZ%6xMT&#ST!%aFF-nukfPtyXFlc7u;-*K;!iWi*ywf*W3!K0D2~snh}Xb%c8_W zzQM%KP>Bgl+}t}g`mLY5J<7RN^XRjGbf6)ca`j_XZh2q!>2Lm7arEjR1X7c?qitaN z7R=5oH#)~JH;_1;t(o_VGA;6+jI4h6pTqqp2QTL!Y6W7l0NhM3yn-jv!^<2+lY z@U9#xZ)fp!gjv?Or{z}L1f|gUT#ZtlZ{hNt&dI-d`;2fxZq>3UG-~LH9+*+;U@oc0 zBo-CV4yjaaQw$0f>h4*!fnRfQkA?7a7Rb(&v+GB>2%Va+MM4Af+Cba5C}BN0+<)@- zd*s1)$cNVFbk0?F$eSiio3X{cEem2eHC;7y^g0@R&EU@!4B=84zg`9YcqO*}w4!#T zGHBZ=VMkh}`cxGN1#ov*Y0_Ki z%x{O)>?7d|`sqRN(8u9}7aSx96mqBQVdmZtyM+ME&|tK>8>h!0fo7gWb4#=Sj1ao@ zqDhCM<=rqBy+^3_x$rr7U+KqA=tlqN>_0HjGdayUN=7EfsjwyEbEa5sc)?gCn7fE? zXH8=bZW>(C4WYun);FWwU_H0b&h^;tO&<*k+`T4|(@)v=0b3*;O8evun>~ z*3eV_&Bx<1(-USp4qe5U@j~qt`GSuJW(`lU*u3zi>!0Q8$DhJVc+O1mL}5)ngFEi<#2#LZLqFlwNs(+x zps+2g0dy&?k!Ae$YxunC^mMG2SN2yz$;C1(m;xnN^yr21Cw&@Ht3QUvBmmdI1M}Kl zT-pgm@^v?S7Nf=zG@875Bi#pjxGOq#bnIx2a-rNPo8x&sG;h`LF3>Zx8^~Yj;Rcw| zKFPnAY?NtQ$K_5Nb!1*glo`6P7L@92-f4v`2x};Y4j5qx9yYte3AhJweDG*(`54`G zG4?QF@)qIFF1vC z2{(|SAZG#)C3pe-=_Pw<=ZSe~_Z3;M$)4~1?A-y@mnvVpYG=lFATRrs-Z)>+ev0`d z;f|Kl`T7ZqrONJcGa0UIhlxn|=$i9Z)*m2;>={`C$YeJE9J|ZOIhDCvDA%{JOKyen z)>l3JoT#wv%DJ2O&nu0N>wTm1m-$&s!yJL87gTF?B;qF*u#wOAd<*Z_n7R+l^g~3k%ww=_%;`9)&$7x{Cr#F`fK#}N)o)P=w*)D$EDmH=X5c3F z(IJlY+Sa8odHDzn0}~3zSi_KXLgh}2>1$N4?Y}S{KKqjT#e~%AiJ@u7C1k55#g+Y0 z&gD%XHI3Z4+%k0iwNsaF4a{h|dZx7}^Zz*K**QE>3UV~MA)!*!&^4uR=n>e?HFVpr z+#e0VMksKotiTgr6k6hY_>W%jZus@?(=Y!qx4QpN_1&j`pDe9>$?W&*?MJVEMQ-&K zXNG4Ou^w9^OGnAd&Ov^4cQ2Y>-OSYX>aIw!qJh`J`@Mo!b_uDmqNHq;?&Bit#0Um|F^+@IqP!1my6ecII^F$$1#|8+hRz``Z2!-Lym_ZX1=!$-i3?l~o%(C#F z;x7mp@GP0>6d@*EvD0nh&;*J$;N3R(u=MsOT{3Ibqp-&V>_a1w+-ekla1`Hs9E~$d zS4sq*P>B6q5dS-w!$puPN2LwUhK2P<8TKAYJPv8R{RuKgbfPZ0@Ru6V7v=PcQVUe# zwSE*OH%|{@*3b74EG%z>X4-}Iv4U;&MF=gT+Sop7?43SM7r^Q9dGkl~4qicjx{h4a&^jc%+de95 zrJKEncTHns_r&$C{+YX@vx?SB_lIF-8>IVBUb)vFJPF1Z*CJbwK8-K#zkvH1w=L+c zrbwphs6YA);_U+i_qH;Us|$gI4^whD7%%ONnj(usQd6X#bK!uqaM0c~sKGYmyywpC zv~VWAQ>Y(&gfICGvW|aow`2GZKDyiWKYeiZ{_oys>Hq4S+V#hMW0J47_Rsy^tzO~p zw@n%U1W(O>g*W!?jYq%w`Qy+2<(=f}gE!D)zIW^X_&3g7YyGQ9nf<4s!rpt)+JjT% z;NR@*pZ@WM8%;m!7?GU1*E@6WazoE0GRQYB-ne_?17KwmL$teTP}tka{4bd|2$}UI zLXloBmY9`;Ln3Kw*Q5;opJr-WsT!G-%O_@J(wT|*6Q0KShu4~?&-4E80AzFVT8rhi zch5SmH4X&YMno|Y?g>=|!0^$Osr&CDuY^H=Y72s;>;@P^L+;I&he z*X|FV^p@HKshVwKR!WDC*B+_thSnc_5jpteAKdt0)o;9WUVi6(zk~cx;9kdMa9nIk zPKY$g=DxYmwdS!9=e-bpthRS9wYtRUPIS|y1V(@C>iz!k6z-Y(qYJ)CrOVqnKJWa+ zM>j1O?hn{or!-EfHEtUfo9wX70zy+Hgzr8A@3zSOUG5lDX4{9wx%T0iMLe+^zQpog zdiCf*q_VTa`)$pe-ChSrww7EzTqaXfBHxgN#~wq9$V50+f?lxU9rEDWcab|aNNh=! z%3IJRmJZd3(t>`Gb?WHz|Dk;H_y1-*c<~!uZe>S_4;t=A9-K>JmOc>$`8^ddTtzUu zsy%-78zcIocIn_#C4Pj-@4b7bZ)m|ZLa))#hj$11uihUX>YY~5A01l2FD)CD*~K%O zpt!L5SWXWc^1-TFW{p#sTsF9}YnpBWj8=DA_wciS!gpMCP%`2|-$N&aN0wX;(mU z#~!?xW_zsUSbg{k*4?6oxxN-4VqdU^A(h^p19Q)CRe=r99jQVruT3{}?;6Z_9T zi)&%<_lRwlIYZRF{gltV{2;=d5=yQf_~8&bW3>ajCRjGnziv?bieM6!;RVEJC*-c_ zWbJSo{jld==U6vD)=9z?0*Z{Va#zS-CBP*uDd|5~4hywXvby}pR>)`2_ic_jr1lgA z@ylL3iEfcDCc(7YC88G?gh)_&@bRx5 z>_}bAwYKWcGh1cnnX$YV7AGnX4K z-fkbi&9&RvGb$Sxoe~dRxY97xJuoYp6Dd`A01P7F+w&M;+6Sj%{`__=xBX(vo!h9x zlglZr0pI)QuK7l1BsrnVw%j}}t<75!b*Au5GA}CvV>B-^1d?dpNuu~6l`G~XUyW3_ zZO^Yh)C>w$VtjX4%<=~ErOMX+*#$fbqKggp=gwVkQKH$};PN@pihX!IBKYnSvnqRz z-(N_rk8JPdOre(h21x*YtL-_R~ob5x+k~36{>7)ki}oCKYY1C zKPU#0)Dl|sBDvz_#hn+cJX4l^i~BW4s#Zy@>=hIMteFpB)P>;arQ*X2h6w!!$?V$0 zEW=om3n`&-Cllx>SxjbEyaxXr-ggIPE(u)+cgmW%BO!e1WN0{v# z!Dw+k0Xvplehn?Ho(j=Z!7LV1I->Xl(sYQ#L;k`})RwGA@R;KTVK<(tIbnU^$Ekp%s|fY6+hRn z<$Vs7OXxtt7}|#7$(0g*tD9`zwkD7@RkG{p?UfI!D&a>v2l8&yl*PSRk zhbg(o6JjMBjb&ihgAc{lHK|n5{jKO1XiWoRgB|~ai+>C3#h97Bq79CawX*v$vDIA( z=i(V=uTl1l{aky!cr@CxYe)A|OZ#VUHuwGwT+$ztje3i{(%S<<{oB(j--i-&{KJk( z<@-|#_XmR_{X17%M}BtoPWMmn|G&}GKl3*KIW;)O>iur_`G&^+Yh4|qciTD!TJN_F z4Rm#kOkKIwC>xVn@srfku#q!kVnd!_SQ(Gg(#V{4Wm;xt&$hZp*Zt;%P`Tqz*Pfz# zya=YtkLFF`BeIbX$L19D`i1s`ndRr9+}iVLiTRP%7CI(G|J3M;GS>&5P#=6mm+Y}X z?SIbB{v|r$7loyrFY!%$LSMqmM1J{YFj@LIQLcR)FVAL{MVBS$d( z*cvK6mRRBsMiwkP>|gf7mE9vU9f!Hq-5oTPWgx9fl=dzwoS7ww#lIvqcxoDZe1*@v zLKeL=IH%8e;zf1~q|5osta_76HJBYGo?$5&7j&_9SS+s{rJ2p$6C%B-XH1~Ea;I4Z^WLKJ<)W0a zq@6H1&4EI?Uu=jCP?i!dZba|*&$|2PEKyf{C2w#BvKqp_iz_=h_Vd|9Wh0l$FD2~3 zL=?_WT<)TiRPXVh_=U3Q^65&Qdwwb8&2NR>l?Ra%^d>$pe`@8>AI?`@@a!Gydyk!! z^=)%FTUKN%n^Tt>+Pc2^y`K*CPf8V1mBVWC#E4jJ#_*5CnPFj$9%k{!q&=Bs@>ZoN znV*o8Gl9;X#7p5dk@w*}c+69~DrVLk6H9enfq0>}vh#cZPe7O58@qeErRNfUlB>Pr z%Bww7+FN|qw#@QIJFNF+_Q}m;)!HJ}gAQ}7-mLOvZ=#`}pPo0KmRfx8zj^-3&+qq7 zoP{-dlbP-#JZ5KAzTyXD6W>ZNZ~h3z__w9H@L%-J=)SqQ|Lm_Lh0Q-hC;v}xk?H;6 z+wcCTGuQ6@DLp)Y-PAeo!{)Bhw;NgpFSZPcnprbX@SL5C7B(kadd7Rv(?*yj6&y_+ zOY8g5^6G;VK1Fm|>xr@dPEo>;hNqv!`;$p5?xvPD4}y3|Y-r>*G-qlw*2q%g8S-Z! zHkRh-YaM5{?xioUrFTehdunX%=H#gG2J`<-g;am1vvc@XLsNI7T%zj{PD_VpW~5V+ z1e!&KKa!@Z?j{lU2Ykvv-^JW;N=&8 zU*CQF57mvw|G?Sw@AWO3_@Wc|S>)B`_pq}QJ;9lm_VS?eL3n=LXGYmP{1 z#S>p#^rsffX?A3EY!sM}bJ)XjF!G9AkA*~WCjk?I-i(TOPGPr7&3+4Pawj^zm1THxK{h2;EU&k!4VTL<7hCyY+_ zi4TeQUXUDenEN(fSUE_cwZ{n#gvqwYnah(f)uR9h{ak0PYxnaopo-+27pwb^%Xr?> zoR8vo2jcrrKZ!s7^veJp5IXw8#dxL_^H>+rt;o6N13Uu*WECTr>!XBsVt6UYDy~FJ zTgQAyt6p-Kpo({?$l5Y%LN$%nUr@m6U2rDqW9S?`k^EAp(HXdTt9jte)#kCYXk}OY z`T7;^$&2iKE>Fy9ZqmKgNMBKN*Mz)jLha}-Z5<8i9N{j#JH;(5X>RME>|*|&oKZOF z)u=hs)!h*GjcEPhCt28O$@I#eiyfqqy^7hDS^~SXYa**5W3~{WF-<$;CHzIXaYLj! z>P@Z>yYt)q6Z&N1&)&X%;q;B+>%*GleR_IZ>IX0GR3AJ)mtNlc>9o}N=Uro>uY0rg zuhaMO)z;qeKPjy}`fplm=#M|Ra{mv8<=(#}Q}SIhV1Es_>-+e@wT%~*Mt@qA1{B&?y^~TM%;Wt`G=iXtrc(!+V;o|M)fs5b! z@mp7v=4gAgwAuU4sgK%+hG!vT7=%KhenEu)Um~|D`vzvD_wn4b6VQ%MNHt^A3e|$t zL?OFE^x@5WQ?Gq=OZe`YtIF5kxn#N3GT`f)n2!$5n+lbkCs>t!$vW_hD$J@VKVK)^ zasJ}w(^R2;6s5D0tZ2-3@y>wxM%%2bPoNDhZSKbuMrUxr7_h&2?uJ2Yj|2~%{R(c? zn!9C~rjSHM7cSQIc$s8xpKlPtDPDkKIe+11`#g*fd_-A~m9Eiz{U~Pe6_e}}QmM7W zF#p|$(sjm z_Dop*`&%FA@m;v4G(k@b0r|iD>6?;wE;cD|b<$orZ~?h&^772-tw8FOE&lxM!Zt? z1#`lpaYStRtl&4sUF4QM)dwGYO`$~>bF-W0u2b#I@_Q0it1oJXS%=KI>GPNOz-}K0 zeAy~8{{9IM4cqR%eM%EH$i2mr`_j-qr&HYRpO=cQQN!w^S8noECV|YTQCoawvR{@_ zh23?+<0|dE0#*2BMr!f|ru6~$sKW0CBNoc8?I)Qf5-`q_d&i#=<9QKezhx&^ZL!4b zra4nspIO;wjZl}P1w@k{MMo^Omv`%wuY1;%7kS>H3x@@%g zac)hMxm7>^&HsuWVaLs%hvo8td;RDYmgNIz_O-dmIc@i?rv8S@x7)9Lc{hoq^82>ABfCg=$J5H^KmN&dqE5 z4Q+ifI%AfcnYB&459|5Or|VCD^{=J2!Aa*|e&=s(A6~c}7a9Xqr8`^awmM;^Z33NK zW(F*#*%i*C>pRDvuP<&LFV143 z)i`5mX6!uN_rxSYI{a@5Uw%EkKo{sqj~z39#$Vh>quV85M#RWvGWP~;=wv2*cK&#I zBMy5YM!?(0eX9NNdb5U%n9t8O#Xcjh^l*+PD{hWflJwT2oduY`lOdS%QO-{hf-a$X zYdoNh)I%`6oeMgff&89{c)Nue)<&`4esB0^R_POjqQKna(^>*g6lFJCUKaKyrd2wua@K~*cD!Xf?{ZH1(dM}YxE}{FC z(ML`^U0L4$MYs*C{7ly9?W;4NufgBnB%`pi_vDKme_?%HA1JQ!Y+A+7u!8rZriD~a z|Hu;T@D(i8Rf>uzNzTC(+^y-OOJ%q}z=9(QW~&(ARVG(I%HorWITID~3ORP-A$*gi zlkX@*X5P;=XlI$tdCQ}tqfap`Q0kb2Su1RN9rVekY6lkHmFl5+lWIiaFqwD`GPhDE zabV;AF>xl-@w1T2>~R5|B4cE%N8uTa*b}uLd^D};`oT%}@O5U`ciDIT49))+Vy)+` zyWLZ7z;AnZO5yqd?f*SGvfqXe@;cs+pIp7&`Qy%>@z;9?X5Q`{ocUmQRCxAYOaJ+M zu##I^$L?|_XlrVp7-(xBnL2l&K{l`U`q^cqDIQ4kJS*G6#hS($UK*R%R>wv94I_(E z&fB|EU1(QoiasWW@p5DT$%_e@^GIY)J(QXK50k~^$DB_ebFV&}le_8CTK|}P`UU#c zQ+%yYOwQON^2(0|I`0cxsQRfdQTe6W6aOVy<6j0-3+0V%5f5N%pDO}mdu&|s_^c=pf-i_`Ox zqSop{n9Q#*q^u^FwoW=iN^r2U^rzwj+%9@j8#%PyBs-%po(n&`H|LPZY!_<0c9_qs z9BP)q$ptmsBQ3c%1KA869p#{pYKB>*Sv@H+Sm31jO3b|A!WmaQwces_SY)tD z^&acw9EINsk4NrE2mP@^P-FD?Sikz&uhWGAL@$t!!r&qUA9UVs8#hhK+;r|m10q&} z{X$!`ebSmVI70=vXyrL}rG2x;0`IV@Ggc|e31`tsnV3@el5mXiGPr${GM9Z=U@)ER zFhmBAdrISpB{-Lm{mFBlNa5#;lkH9>3M;7zi6t-~)Wp{Jo)wKwK!Ww%BK+@CAW?%u zK;Ni6oWP)!%xpYO!>irqftj0TT4J^XR2zU1gv84*tx8Z1AZR!(VM~uER zAk^N$i_?aVJBW@lKvt-SOj8%T%MS9*y%lUL>?j-AecmWm*6uw0;wPvL)z4i8Fsj=~wejON?fNw_sb|e`T9cIu&Db&jQ{@ zkJ_2;%hb>w=f;Jw$|KYep@eC|3L-}Sj!=}jf`e{bK!t(y()cjXJZ9c&X*>C?}?{B?Ef;5VGn z{|*-5->*M>@+zpm_myYdKv=kvTW=jiHEL`kJxeQ-Eou788T(7+d4E% z!R5OhBKrHZ?0XELKnw;~%!r3b5Az24%DPGCO=#$LRzzV_vsZy;P*$9Lr5st(^K_|7`2T8BRNrnLJa^F(iyt#@lxVD4n58Z>cZ1gj_kgEJFnK1eu2#T5O4IacX~V0OJy-aKA}#aAwKcEVGg zDQ!If6}RT!fAUMi2Or&?A$uyNUy&ZDj5|`O`S2r92k?M7E*qs+A+`4KlMDy@C^`Xh z;t@E7Lw_i{>hxsREvnF>W}I_0=3*JSWFE1pPS`~d(H5?D4lP`4>YcqvWcB9K<`eE! z^EL3smu|NWTp5^>-qYB^ZJjgPwmCy!V0riP1iQXrxjEc@r)#3^ZrAuAF){h#`mq6i zqzw;gFtxNBcAux}d&dFp9gEJFF_R&*Ezx&oaHp00+~@{8pogb83u}7{FXkkS zAaztC4s0j7#Vlk>dx@O$t={If+d-FE**CCg?}1#Fnxkh|)Zd6RF~g zKNKq}fAsSYMOW|j+lur~GneJkwZlbv;K<*UGEus-cVGT051%hr+<2C%ZNKo}>L1kp z;DhsexKmzW`vIjZVN*IHy8bDJQD%v`g+_m1kb@i7kB=;QGDhbCJIM9i=F?4B&UMPY z>j`?tSPX3xH=gdgvzvR-^4>l(@2)OTT4Qy;s6a%n?!H{{l@Het#kZdP>VH|!*AI$# zX<>)0N8v%8oRfWY2sm@~T@&-PYJ9;$C!J4%mMbBnD<%u8BxkG1u09es^-T?3zduO# zWOR-^o*d@76rF3XbxbZm9uULTo^9%x?0Nmv)lS~qgR^q;FguiKSSGUK?kklku_1?j zy#RJmL{3dA^CS&iw|Kmay(N%N`wj<(UVzyM&mKjU2M;99{Ym1 zI@|y>5oglM``SrojdxaIv*EY&Za(=U%x=Xc(Yp4g zGxfuq*q#cEO5MOF3K4y<5L37k>>}&vxBFBkKTXrS8iM2If`dZlykem{0ISdTNk4#A z=19sl>`~~VpGWhVp<{0vuAzWst8hr5XKXHOIG=;o2`K#8nwl`AdPeP%QoStW`J|NV zT|Dx$tYfx4Id&nTeBC*tbek0Lr981EJNy+Zx}k|qIO^&4^~{W-53b#tO)aijcAk70 zq&vz(N4c*`hJp7XnXZyza^5(0@pjvNw8Um$OdVYJZEz)<)HeT(dp)z48#~4?wRBD2 zY8{p~-)kSgKR7tsy&%=}U%Ya=|789bF#per6-MEl!Zj;Y1X?-=<1<=sg?VEYAL|;u zGn*{q%Z-CV9}i#C4}SWVL#T9@m|fR^#cXXp{&YXOw7;RItBU?z4(h;ZExD0jpq3NGFvJRsG;&gHT~qUTGRKRJWg}UjF7^S62^S)^qj8tFh(% z70Qj4$Qu@?7R-4((bY#^{7Z>vrtfO=pckfm4u2TEol8r2P?z25Rk-du>pYy7U;&gw zT6bwmI{<0E5m#()Bc1c1{-JB&$Vh**uuuf!8tQNA~!qeAYQc)-c(1= zghX@da*K_ucG4DKjI)D;VO>eUfKQ>_CYWDiC$m2`hKS0QpiiJ2lG#E&o+$xJK)rP4 zS*8CUNALX{`F)>x{(2JBwf5H9mSkC?D2f#0aF`}@@(gB>a}JFL8jVJG zqjSzV=bXENM#cabOy+QgL9}ek>8iHw%74ba+Er4CMT&#a-|r_p@8@|vmavH&fSDYK z8Bf0npSf&gUM9Rrj|Cw?GrEAQy!*txq;gp~^IGWBwL5crAb$6>cY7xm-}>+ixS4%( zp8z_hH&sQ?mz&wB&mAS-{~t5`aL^peM&M#bnfJ$u#dmxa0s2A1+=tOT>LGf)eDw4B z@JW(U$OR*f!zdaF-FEp9-uD=qNX(bt36lB4J5UUwMfk}rdgy?6<8y#Ry5W`RoDQ8U z4Tr!V(gpG{N`E@JiB13^va0t-JlT3OSwBp|$V`xrNKrhL4(2wq7?VH(_dDeXx{HH6P?mfov3zke@kqa{tBe3S_p@d{$9%`aUwDHZlkXlP}FI$|Syu z8D6M$fwXGb(R7(}9K%!j%ARRIG1FUXz)Qebx9!TbAK5#7C@Wg#JnOa(1ER zdmn$fwj^cZlWV3#+%H+TE9h5EfJ}AP?b_6ernRc`?F!}Aefo?JCnb(!JTDI?R`ief z-9BM`Jr!#Gr=fKHu{n@>I4dl{L&B5H) z@E2Z5G_KdtbnQF30bj!jc*Q&L8jtr&t2gyT>xe$06YC+BcBiZXPv`=A>oyBp|Fb?ifRZ?aXO zBP$21tH@`bp@=)Iuy}m^LOpqwxSQT$7vG-?pNyL47t&#xJ6UH#Jr zes>PC2yWr3$uUF8q0H8z9w{;R1cbHglE#KG| zz-pfW&W((fuvybPK}(_*^uS+f?LA7t>x^*E@r=!{Sm6u1$P;GAeJ`4;UrAQlx7+*2*YUcX z#gF{9C!G45?%}Eb_R)pge|qlL;9uMt5&r0{Gnf9$g{$5FS#EOw$=s^q&o18R{fn;A z)xZ7da?g7cOR8(`V0Od|OMG$NIgdYlSz`^%p1E>wdQPg6pmFJ$r|>B6<77LE6TrX| z7of)>8|w7U7~Ii7b?bx@KGC6Q2iX-TkpWqnP3t-ELR%j>rXZmmmoL-_tDSC09n z@&x-+7N%6kZ`Wa;WXVvLn8l@Fw+4;jil2^UKkpEF@PhzanFD{h@Av=u|3wO|LkF6u zYRwQ_qc4Jlp>6h^Ggk(_xG~WG#oe({bc?xcbw>oxK*ahW<@kV4Ag)hUwx|fGTe(Y{ z%>E?3nGO~GDLQZ+dh!_>@)9a~vSbHOzQPmf?s@OrjjNaLjo*duHE?@$Y4p8wcW0UV z%9x?)uJ_Fwd!}V>`f&1OCU((w4)E)5;JaxF^`5OcrSpjA@P#w8@eSjGZ%p3UD>%E~ z(1ZD!1KA6@7M_~DsZ+B%e#C3_05r^@C6sAX&L&C`n(=R+e1HV&QzU^!S8ly(?h6_m%5&e_k*oL^0LL^i&pl%UD2$I9DgJYCMl z;d4j4*hU6x@~hpph6}s@p$VgJ^RJY!6;;(5cY?@FN|i3}sL=tS!_)uP<0o>*3zob;PAK#Jm1it%SA$f_k^9HlzlYGea| zY!+EVG7;_)0gW{lW9Wq5olG%5$X9lsl(>iGgV}Z=UvC%Sw-oYQPcy5gm(3HI8N0>ZAJ#3kEUJ05WCi?KA}Kp=bF?17ZxEKF!;;M) zyIl2}yjl7UQjD&4V4AYc=bMI&gJ)cgYI3@u#QxNVko(jeW8f)t(J_1BWK=W4w zcVOk-hC|xL@AWRMhpW+I>(fxC`X;)=pI^H_@~7PsqCdITJ^iQG2WI{|_qo56>4SfP zcl}R3xiR`9u_^MGBDMR!-t3+FgEJTJ{=tV|4*c|Jse^|NG~^6u*O_gn4>-X9Xo~g6Flz+8GJ!e zN305OM(3o*C>U)%at;e*(l_7xO#J5A%iysZu8~=(dl*AH_ogJDbp~Him^rig3dSsS z77Km#j*hP0H!X2I{N2A-p8Wpb>)HB2mf36$|54JHsD|*fcwlcDy9OpCpIq)X)(@WL z>W8oDjR#*03)fBkb{ZAQme-~Vgs_}RB9ex~@N zZ~q0RZQOLeYt$$)hy9i9M{&@CF?)I=pKTu0(P+bwE9?o`o|K+YBwz0$Wy9GbH9jQOuE$u$pLF28%_AW51Ou$7A@}5MGzWJwQ zX5$3DM%BnHUF*qjafGNK(|H#A=2aqC+tNjqeg0Rhn>Tx>$KcQk$nT4(DwFh2Nfrl% zx_JPBLVDk3yM`Bg-~Rme{c8iWlXQD5yJA(Y?@g_XX|9|+A}L#hik4T`)eEGAgc3Z+~jux({vZSeeteI=TAq;;wNTR z?pUmT5_95LVlI)4R1XrI{p0r3W|DWAt|Kh$`;P;RzFqW|o1O8d1^w4Ro?)Gwl$07N zIrC)dDRUx$!p3rn)^3fhu#c}Otw|~K$91yiYVMAT={1uGU1ecdpc3GDCvxef7q`=; zTD7x?Te)9b1nX`SXC@Q(G8?%tGrS}{IXMHfSEk%8#W1=85&6!#4|Vn!uXT+r_JL~= zPXYVl%Ctl~`Nf@q0a#yS)$P++*4GK0H_?j?`3BF(`Eyt9e0JsXz4Mo@-uv=?&&Zvz zalycd451ShT>(Fu%N}n-i?qS48XH>$m$OlQK(*yJ%}sZmUl$>&kt zJ^}3Y#SmJZ2SdyC? z&fL}phI;z4DUsWGyv6rcrw5|OUAm0+m*Y&CC8L()Yscv;kFlpF?8(iHCApRJWOovb zK>c!S$UZW&tRKV7%-PpMudtzKL1mHI<6iD<{&iCTeKTny=Vju(j&45rHjCFOLPuRl zYEMM@n(jL6%owTf>X^Su z;d-q0%}Nz2GyrF$YD3d7z^J58H;->5pnU(+D@#}J!S}c~w&0AFS41-N(v3lZj6(pG zVut}=rWH;%kCJe0Qm}acV|I-{KFJ;!M+*q5oH73lA|`(?LI+0(P0O$GrUFuCJ-joq zjgwai?o%N&%OH2;Fg=MOn4dv(yui98>{-?NT+G%zoIkh+1iWaS9bX|Vyo8TCL=e78 zfZ>HtVfOj(X9V!HM_Kz)XfFvqn>Z|@Bnx4(!zP27l=bB{s(6xX_!Gue^Q`*nP07)A>j{CbILgwLCULe`@sv)qlkHB4D?uu!MBu7=jvpI)=5!QW{4nl5{~WyMp*_@RjfzKn09y_Vm7wnC@CG`i;)=cFn!4A*$&*bJ@oJBRF@arc3n$%C zW`Lx(hUV8wb8DvR__CpaSAPSB!Intj*jv?k4n>yeG5XR&y*qje$LEwx-$RVZ4~@>~ zLvl?ga&Pq!nYG7QI-WAadq&^i$*e?kB-J|}%3=NKU8$$&F)yUX=u4wB@l80@_zp^;~XrKZe)vbj=cY%KOM)M;_S%xhKp@pQ2ek(Rhk<0qz{Z z$KM-V)VEj7@ooA7+h%v9$@A%s6BA;6 zi1&>ifQVme@Ozo3yU~(8^!~W}fw!q_QH#|bvdphr>BVi@jQ+G?8IKnSUES=8LES$q zMf-_6)h4fTTDY!|8yxa4@AR*Y3Y4meRg+;tVl^*mJ$4Q}h(bx*m{4xOS7AY0K|3pZ zM0lqdVzaCsMx&W>KyQmUMM{UA?k|VZ=yc1?Uf!i>xOYlIm#C}5)<_#2ktA9eeeJ#& z{)Z%bWP*Pdo+1RSFo#LQ9A`llXN2l7ewBFKnXKeF;}?v9bVkGBd`@D?wXFw5 z%AC?zzVmu6K~7($i1w1x`Vtw2msxsp(MgM8G8aKQyF&CScJjhu*3kgK9*tHmh%R7&h5oQ|RSbqM@Ls3gCPcM{ve5_6rEA}{0xWbF-W?|?~_Zc*zq3gX2dGu44W#3h*J2COX!54zmlV| zVtYXAh+HQ(brHkfUG6shYENOzli8mK<2274k8!AbgucZQd$cxAreK_~@+6RvN!S3R z5@&v(*l6|R#k@bHOnk|F>7v5m{+u)UC+M1&0=eqN(#HPBggt(B;m+7!4or#vnk?qe z(M$h^CG^K|(SEsk^y(L%-<$dK&uX)UY1{860BWb5z4;o?;X3+ z)iZfpF3}CGiWQTh6~&y0n&f+3Lvk2$j_S_i%+`ZvMMt8NrvtnM$E{?Fl(WpXlUlrE z@KZd@AMEpM1}B|_jN`U_;8lFA$3EubEMNONa-0$v;tN-MXD6=p%#FbC9cMH%$7fAO zA+ydML!Bw_XsrIc8h?XkQoOF?;$h}4YfD!)to~G)KEsNc%NV|q6tZ#K$oWUN`{2o1 zAdw!rIxuq^=GEPgulC$yzB_nxXla(t-ZiDwy^aUh0NXb(EHY;}YqpqO?H9IB_u*D< z4vX{~aMt$d(Kwu5w;cn~drBw$*GPxorU6sH+k3=4`f;qZ@dPpBVWxI`Wb$S9kP+!V zq3|%<+=L0Zk#Fu-VY!y!TxHn@V)PIZA$Sxu`jQs1m`Zq>X6DGYWwo6-A4lWD7WLX& zHb6akSah;`lgk{-Q^w<$e^2jjif-)yBZgz_dJjE@j=Yv>;J|5_(JpmxY77cjQU^a! zMGjroJt>x%yh;83$qQDjnnJ8HuS#{GgM(!a?}HA11e#>n%>HMdk(f1fi0EO`8>Sf! zqpf>w(OLpeI`jOkJo-(6?=$O0Lx^x4&cd9-u59z|De=M<1?foG%{fD7uM zTh)Xy+osVrvh;VSVERURfBn8(ldNxzFH_@)-P9y1yNX2pa3x+poDge0H$J_5_w%!t zdoIwOcsrP>cdcn1UF;9t37I;4bXuwJR&lVtr|SDnQD6iKl!~6KD{xh zuqKvAMf!DTBx65%{f{AhtieETBa+#A9OjJSCj0DWf2GoK&-d`_zw>DEZNMsZoP6~I zmgo)D_M@-m90!(`Op(QS<8aZJ-I~=#;BRNQ$M6z$&r1xqVPkf~UF;&ucB8TP^qj)v zf8+AK$^U-k{?vaP6Y2iPm{9XqAnM-8w@=@JZSqUbuRoq%v;IZjgT za`))}@z#gu{!cjkfBNzDp`Up(8)w3W=9x3sdf&R$zxZyvwD&P1yAN*<2!8$1`CD&x z)9G{NcK^G-c>ALdZw)P9;m^Bs`Oet=q0xmAp>TZx6Cn&hopg20B<~%VmfY^1ki!Dd zPq9x;&&l*~0F2B6)o*_Mx#VZ>omGDH#SQPY*tp?MZ$5T~ORp+Br@zf_Klv?wfS33d zPZX}i~p9A@T^9QSz}Kr7P~UCu`20(OKzFnA49fuB-bd zMdl0lr>xgT#9=t*h2q9Rn!>4AZST~5b70ya)VM9|S*8(y81H>@S#L?V63_nm-%IQ# zan{rXjEER^Iwze1-qyhjw?M31|DSKXujZYOb8mvxoU4#osd+LxE%INR?c=Yif>mvJ zcv0r=omn&dZ$J96?2G&3cDSjTFh0|0vBABs5FVIUS>FEqz8*h*z>#j|$*~uR&=p}a zRq>Km@gkMit-jX5lh@nm-1Rwyy+JO0ySo4EFw!_ajBh?ZC~ZF6!5^~YF7NJ8(=EGNLQ4Oxpy9$FVzWCnx z?x~vt3v>AK=QuOZ=j(e*c%T<9-d~uLnBuFE$^&^~^Pz-$pOE?6yjbTM{_sNAAQ^|n z!v0rscX3yXkJn5%Lno$NP2q}BOIBPTU)GQT(COOG{tiz6fens}R&DheLz$9kVo|Q_ z1~{JEc^b4PHbMq^KGw}q2RUme>~DJYHbZn3dRO4qt(l@;vc@jXzz)uT9$4C82i|5f z2%%0-T7L6kY~%Rrc%-oHh3Rcu)CE9!?^=xR1RVtxn>J8z1j~mkQ>VUI^}q!S%)$Vj zjufX!<1ISKN_$s1d!bQAb{>7hkNPsiY}<*JiHCWQUJ6~O*HEVm72NnRe233|XM(#d z@1K_$=-~F3woc;B$FEYs+5_)(%%Y#)9kal4^yAmdJpAVOWm~ev9U~N@Gb+uQI?Xvd zsSY#}FwvqaUoN2a<~^apzLU8oSBRF`lc*`DSF~%f(*8Q!z7ArN@mEPSwPs%8tS!bq zDkU$vHYc^M!J<-;UsgpcyV4b{e-_~H;Cp8;VHs74*YqAW>zIxXF$0}xW@b%Rn%GQp zYX-A5TCh_bXMwe%Rhq*pXRx5UKe8g7ky^ME&3DoVG(XEC|qSY#07qzS>|MM*7*QTGAG_QdNj*qZssLZOKQmo9Yeo5 z^X1|f*9K)>BMa8MV}ihdPzlGa(F&CJHYC8-*4=ctXSd7D9nxr`F!Xg{e9QsnV&N5i zIHL_zDrnZtMC*7H&qr-gpvj92p=y5Xaf{Eg&Yo8$i(W)8>##serf6d`yYpg)_hAFh z-v-bAHgn%iN3ve$87s*dJmWtvxRM(==DSIWB}nEno`7wbqpL4Y{wucs?1vaWVT*80 zqs9lVmzx6?E^_8R`U(u;TIBefe~Gbwc>zZ7fHXbmaXh+U-mZk7;EY$nChu65R8|e0e)`kz{#S>Quy(V1SU5Pj zxN;Ad56_uK=1Az2)`(habgg}S>4tE8LAlyIdaZ)Dqk?g!-8ubAeioj~Pv81Ph9BC4 z=PATlG7gI)9WL#rLiq6LlZ&z0;w?>w$okVU81>3b;Q(4C9-o*`g}#iOOM^u0bDsb}xHWz@OV<9#ry*O(Ey3%`kC_IuRj2qa1u_QB+oHJ3+!zs#96&e466iFX2*%*V56nH_Lx2yF_@v~492#0<>0G9y&Y^iD2LoWC<97!<6_L~4t! ze)Q6{@#ycY^p4>359&%gkC9T29C#{>^qp()SEzVK6?i&i$=0cG-4>aGw=n^$skdiF zdV^X2HMk6)e12=_7t9oXfu8uA0fFkB5ux%oreN`1*1Iz}H&;JqU6@fs%8SM0&h&Eeb&wJZLFGv*_7(PuKf=h4E7?qLvL0NmiC zg*D|iT#Q|^A-m`j8=SXm^hcoq)Y@cx8jDI-l^jZWR%Xj0=VkGFWv0Z&7>tvc$(>5T z6^P?637I^xfSWlUvm)Q&b*CDFSTdS^%jzeYPK&>Qf$nBle?2mR13}l@*#|u!F!#?r=AJt z>Z#EcV;B}^)E&;Iv-N#g0oej9oqW9U0NzEmi2hLGnJS1e&(E$|vQ9XH%pR-w%Zp^R z@`%~F4xHN>tC#Qs6e{h5+&UagN2CClOl7IiYeK{xr9Lgh}=J0zWc_w!p*aN8y0b1OV~ zSt1Af;rVrQIGC=+wZVGSoaopupTZ}px>e4ogITLB+c-3F=GO9im%&b4#Y?+rh}7oN z?UO0=fjeB-zxe#>y&L5G$3*txjLcoef|i-%el%NX?M*Xi9YLEO=6N0^Q#=M(c$)ow zg1xM7Np9@IQ_+QhdOz1b?czDOM5o=EkpqL`XZTk z=U0{Q!WsE+YTf-l_lLLP)&KO)z|2o?_D#LLY7BmQb5L*rHpac<=U*+<_Z}>;XOCYW z63iv44_GQ1lCxI_L@=oo%rOjbdyLCcv!~QNj+I;ck#xBkfrk@;am%l#;mWs;YGg_W~*CAC7$a{wz*p-tC3&S29tDC#Mjg|axqR= zCUqygbqo8WyK?Y6j3>C$8EcqWRA@R~Zi_Pg;$Oe~N}K79Ow z3el=AUI8P*ted;Fj)At8nW-7Be5W_kQK2s`UD0&dJ?vG~J`x z?&&_hk(R_5+hYG|U+$aPV7BuRR@}F_`rbDfcV2|@&F5sdpX2{{o@(wtBFA?KAbvkz zJJ>_JYQu2ZgaNq8TGEJQn^lHb1!f;;Zsk~_+z!(xXdRiC(pi32cM}0cx z8wU8QI%dZzAbBdf=Zw3jFD!8N)CzM%uC&G&-^@YDO|Q&fx;wPM8B)qfQH$rtlWXpW z$t(mlo^+7>M7*<3u~(*mgr}p$&D7!3Z-`?Z`4D|9cw+VJ9V)m$vRHLr_V~MhUc?V~ z>+Lg_zR=sexADIWNcHa9clyR|=&X^!jlD??p*)W%6s%-zSB3k z@&QP{4=>*w{g|GYON*=On=t$D-n&0KBoe9T>Gu$=tm@X*$oUTp&8>Cy%qYYXgFz(H znr7HImR7Vj?g)mT{pyS!%`~890}-f0TT*N43G3^3m9697r8f_M;6D3}DO!JpSNyfV z_~2^-i;vLj4w?TP)OQ}YZVybxdIeHg@Y%rNoWwRby=<%0w~S;>adXy;SB932V^Wuk z&`+$?*ew>DJNZz#nZO6*`r`Jmk-lz=)*dpAF03kG8;k$sCvR!kqrgBtk8(y0?LU5v z|0(Xwqr(>}b;sPAPW9RCAuSquNa+aEy+jr?RHzp=AJ*aNmgvXKJ7IQnFLW^ruuUrL zrVG6jHuRwwUeX*od-Tqz$S*R6!+86{N_wvG;v_kr7GYpl^`T;|u=}h<_jUzOLJ4M3 z*-YXWKXaAN``wqn`?uqhumAqAaq{}8jvs>APn+jw3ug6UX5;7qjJ|ETr?Ty=o>DB) zZZVgv!Bs1I3y1kw?sdrwv%z0SB=b%*iOI!i7%VZa4d#1z_eC-uDT^jzrf$m~kaqHAHwQ5np z7}w($hm#vuk&iWS&h^j{W(Na|IoNNodSVuTs$mf*Tu#{HG3?*;mOSA&`Z`(O|0+!1 zh;KpZb*r6e4_Q#h3~43uSon3a_=8L276U;~Zj;|>Jp!XTf}WVnZ9Ig){4|W0+Qk6V zPR_@&EH~dEY|w}lP95xbBj2~(o!M}*-ZH|_JbjEC=yDYbNV1%3=xK?kSu;~hnn)beL?T*0jiML(41tmx--nHT z%L?Pd%;%PHmx~6AW`h`of;qw=7jP{Q$iB`l)D1^j!7X%Njzp>fV^ZH83G`^iE0L(|`rJzZc?_2UYSXHE-!~lPp%9dsd0Py#{-*vaI(M z*KEmx(v`{4@sOcYtd`sTYRi*tZK&M2I`gpxI?HyVcCdw(Qio|=W{z6nK1q*OKF9rz z9A72vNpEKH#b+7B#&mA#KlY!*aAH`=HyHR#z>?I=O5UBT{fj1Y;v54G6Xak*tc{_e zMX5)q@diV=-6VI+bg1?q3mY*GlhRKIgn!){3B&*C@C7`RD;nFf(&}W!kP%>zwn*2`#P+&4^YPWCqEN{%OH`=Wi}$c3+y4 zt%pwfCP5bO^L=gUeTkCjS0A36KX<)P!=2jCEITMry8QD1X7k&pWO%dTHDfqP<~>L* zD5wpTf*r0GegrQpKlh5xO`lhVK7hKPAi9@qg5MY^27Jk?pYw_z=%ttUmP|@3gr4H> z^jqQ$=onahWD1%8H-dQUJqt3cQ)2YG6_#L!14PGA+dn6F`Zy1SI$e3JEs;$7G=T{! z1jjCHjTGqvh$PV-m^;=BhCnvItaas>l~qiE6rXjh%ssQbefqkQZyy!#PDNljdZ#Hs z;|v*NHk_b7JtxIvUD$d`AK*?CIjDwzppL}^A3?K~svWe*7+1($SM1?(i}_y*)>xIS zQ&DP8q$lZMQ#yi4dZ#=52WBJ193GVdjQ@NfyA2DenO?QUliWvA^eqAuspFB{jHkCw z{MhFWn1a?l^t;N5ICv`qF&!?U0~e`jKKlI}S8ixz)w!&y6e zZC|Ggb!15^W4%(qkWs*s6))>tv&{acm{Sgr1-QFv3SL`O+CI5Du<$GTZ{A#7v%d5B z&5<`Q-W&TR?1XojO~2DKE%_z-!Y}TPE&ufVm3u$#ADsThz_8%g14Hxgk4y;8TZ9Qa8GUz z?WkR`JwHW@Vx?nedR0xQR_3uQR(nE*?1UWhvDDx>b_CMLGQDGeVrhM6NuuAAsGNtq zXUFg=_h(kL+vtS*Qxf}wC8gt7C^Mbn4Spn8Gd@=s!>{SM{Z1FGzGe>mQe_H$jWPN= zW>(*)Dm&k2s(as}Nq)u5?K$3*XEtB_5p3GW_<5h>ojqCCy7t1A-4mEG2h(C@6K@#n z3gx4*TAROaz`JNNt7srm=FoBS=+Xu5t%)V2A!=|ZGI%%OQ|4kYX#y(>J#6b@(By%2 zk!}SH@tPm4j7|W%9UiO$?>Y4p554q#px^p+BDGaJD$?p_SIuVTaaOgrWI!L)!rU?N z9_Yn}utA{o7?)*cm;ojOy}O-$JjeL5);2FOJB_}S5A8FcvW7h?a-25?<;fG=NSIHF1IE+K7bFG^yW zF6B*B(kzB4-p>eJWsiu98+^C`8SxOFt1uY~FZo3Hh7PCR9^%^6cKZ@V=epiyp*O<3 zO2uEcjK?=y)iSqG%8Wkdm=VFy_~I}fSHnO5u=7|)P3@Cc5yq`i;?`02g{01#iot@6 zSOVz?R?Bdvy5ZG0LUv}LR26PpL+O@!Sz%e#+v8%!Fw06$YLX7CyFY*X^UK{6%Xef3 z_XKl+*?S{1BXc6vv@^A_%nW^*JLoJN-;q_0z=--|GIwEyb$5cSNIzW?_XkDhdoU*M zt*C5W_*d`kJ$iMWqWVv+-yePd;+>ISeez}R&u7t8$n*cYZ(8)LPcGhmZ*Y9&GkP+vAqMrZ7W900;eOATJpv*jNr}whU!~j# z9IsU}xG0yCL)F6Zb0u;$VsWSBugd;aL##6^a>5F5B#Ij*xM*tD#8tdk^ArJ1PcP}F zn0Zf8N<5;_+Xe&WUF`pwFL}q$!T!4-m=j;(5c6es@A#D~*L!a;1L$8`l8>Vv%&m%5 zqW->d=>StELnzN2JCo5m5*hB7WJ`ic&N;BVHj{8i0(Abk@xD4?T3X<5*!|pLxzAbP z9jWMd!oE|GOSQIz&#v{3%}Oky>efRY_iF<_9fO>FzR910T@bg0s}EeRRMWy*X(aQ& z&VSJ9oVB}&?!nb_`=VJ-dE>y(`P7Tg0PFe@vy#$!BHx@>7(CRLi0{EZx1CoOt6N+vj> z&4cHq1dLmBCZ9cAv?oft8nMze|L)l@Mmhg2^iRuIVW#1SP|Cp1yvR*x;k-NBjZt9>)G3&7U61*0y?Qh0;4l zM|6M#1sx*ZzMfHG4?4@FDOg*wBsRo>Ok*uo-d>0AzY2S0{`Tm~(wfPytL#4VvbP4{ zng`APBI|5|xkQUt$G(Rdf|GtfpQm)<_ZE+UN1PCg+%{IWPV{(HnXT+eVY7*W`HJvV zE<4hjb7WDc4_^Er*nj-(49v#C%+AYRveP&5DxW7S|H1t+!HiJ%!z-)RwAxa(m5J|M35AZasWnLVAyp zPxQ-7J{$9O#z_0dt%u)P+E2cv_rSHre0YsnniOxmg6zM7GrCmgigU-zD%0&JI(!#~ z7vKGpI@Q=&xD%w5+^wip)Yo)Pa*M@s~$aO&bS(l0A5 zI<+NehCOPfTf*CZ{9R`M`S&^c#8R=1(*n7Q4Cf~QtkUPg3+W*@=w36&yrrEd(P;fB zZclD?w2Kfqrvwa(1jniwdSlud7SWFVF!-B@(fB7!4IIg={I564L!8aM;H33)Merz&_D)NO@od}<$m>en= zg{q8Mt_**b6fZY6=M4>dfeHr1I_EqEqh<~IrFdjfJAC#+ci+2buS`s@$fUshjABy| z&SA~MTJO-=Lw3Lbc2l_GIDGbaTGMHk=F zq)5Mn4|au2nrPMJU4~<@lBygC=5pA5LZV%4c z2Bt+Y6ZZT)Q**9+EAx@{V5aOV9<18lV;c7nl z=J(psdGY*@-}(rYTcDFS_jfwF*3BV5d4LE%FYKRogflR+|8R(BEQV*dlm8F8avMQ1 zF9GIQfsO`94vm0Ho*s`a-yD!^W}$A4E8|mn(tdNS9_HucT$rFYAcsFFfmW6C^IUNM z&w8XrzimNbu?v-UFXyT-egn7%5kL322=8HFPUY~dntgs|!tRloHL^usJb78pQ)B}0 z1CYZ`Gn31({$;rz@HtgVh-DpvP6=-TxMk;Uv%Youll>csWF>6r_+1{MWsyLf0(iCmF0!eX+T!X>ji)6l6M5d}Sq#N#V#<6`X+ z^E45i7DDu_F_|;lM?Rw~SlGF`Y6+bk6RY3(vTN+k+XJ(2jx8yFJuFcFx_e6W*0@mh z*0q6ovVzk;xqPkXrvn2sZ;XzM-Wi@){$O-^`J*d02hZNVJ91&5cl26!_sHFW{>i~f z9;Zte?=0hCw-(xu63l`!R&TsGDO{_Nd)Vf@a)^&= z+9zLoLZ!wdbl+2n&bANpV~?}$f!gTb70L|TvjuX=q9t8?O3tZhA~km zA6wuZ%5?7iDEyg zZ?+$=GCg=MP2cE@9AAQ3X^k53%9&Z`U>e!fb5aXhUeK^+fL&(|8<@{&C+4LZcylJ9 z8YZnHW?zunY;a6H8b`o~2ic!2Z3WScy=q&)BjE6}$b=8hY)l#143Yf_fWHWm)9_Bs zi(Epf&OZ)-12&=e+?U-hfmjtw)po0)e7%ewkQDO*ITJhRU4+G*$+Ew6uuUdyRwDx=?SFe*fZ*&4E=o;u{^#(cV8lJ|I*+(WPQO~$y;9PH+$oVt%Uzw`#YT`hPC%mbM||;oJXLJOR&9x>Exi@@L<>RKhAy-q zU%qwVG5fM+W^*dML<&Z>T%*HNqw{j2!lnT<(@Dz>cha6Vg8>CXetI1fAWQ;OccpsepRi#tk{_k}mE_e_4o z9(cZMc=_^`LE*J)%&%|s&W(-;4fAx*tZwX`s+o(@JCNk^of zC7YQdAC}}CA2+ztG3Ei$V7B2#j)xOfu$z4)3qeTjm_VtV5vkURMJbq{GQU_@BqS;F zrJBSt8hWwOqa{kCTQ~cRYS>%uNXfzZ$3w=;3;V|lL!*mg!Vgje?mArx~vk?zbK*qz{$Na zy{w}=j{#hM_wn)0z&hYf7{x7{KMCO z_s`#zwvL{%ot$`+jU(3PeWf?COIG!u+&<`+v@WN{$Li18;T-elH-hkO!*24ga6jpJZs%-)RA=uhah|BbPHEr=fQ?(IqG{K8 zXDZ7;d+=+e&}kDwg*QQnJ5JX#+<*>?t(lRT{R!T^cwzG>@#OVC1k&YA`K7MmDS{bO zWIh%+N3L*&Q;1Y{cX8_kYw)+#K)zK%CoJbSPHXiCFUn-CQrv+O)!j$QaB(+?F_?O? zV<$DTX7~Z%4(c-WjwR0ESeU(c?(|P})prgjc2Ay9=9{}Cj$nEa0i+M@xMyH$aqvd> z%zUc-Oj+GIRt8fQxhGnY!iW?tYkg8R-OBJN{mJ@qkn(fq0>T97Howf7A)dQ~l+bn= zh#y*$8@}@X3#69=3wd{X*4jGq@5*TPft2q}T-`bqMT$EjSmsNa)(4ITpMKNq%YR1J?W$PkzXkgNoPpqzv)2Yc zf~)c=pwqMGul9ZP@%j57pZ&7`lb^ix8FK%~?fJ#E;T4f;PB1TDS`w-xQkg+EJiaKq zb$?1FTG5+@+#nWtD(B|bJQT3R81~kv$R*(HYySGf3oY1H&v{1vfwB5Ox)Sw&B*5~| zwS#B>7R+t@o?g=L(XqdV=ko-w4?I|*5J&xT}3aW&sblgx2D}Vd9{PCwZW{ax@z*|foPWSs<-%@x9SgGZsRv^ z;yLc{gGw^OUTS}_NH1J*6m4N-K^jLqj-9_g7=HWA^(+Sd!-E%p_k=s}3El3GO9wBX z(dBqdc4rU%*EZ+LRRoFV+$e|s2)Ahmv2V1;Dak}kNaL`hRU;PkHl=t1naLv@Y zAMvbe_;Z!Zx_~lNJ}|KU8S%~QVOr~9npn%bPwmyi=eFGD1I3hBE8;w&rYB3s8ll66 z;NE=r0tQ>bAh$+z3bS8(qkl%5X`lGGuLrHcf@N7{)30bfhB1-a%=aB6Z<9jLNeNVe zxHs3zp_S!0bJ0`Q@CgvnmCgutPLJd9=20rQ^(Yl7?8L}4ggB>%@eD=jN)8jXa8E5M zJ@6bt%`tpj-YMs3IA&ODAx zq)G=`)x_+Ct+;Kb1X0#KBa^qE{euy9zKU#{lJS|MU#K;<9=@U*@^|pz1Nz^5(Pd#~ zn1bt0ZtW>rO*%cJ@+R?5WXYbE@f@{yo||+wR?)3$@#b;8`rxZte)qH#ukYi1YQhC< z1Y*@4##?PCV`VFz2{WCRN|=TcsVyRgWgw>4UB>JXD}RZ|U0p>fgA!k}5}&a`Zi=Yl zwPPb+UyI#ji5%u6v-261B_Oc{v+!9`Mt&#*b2gpU7G!i&v643>B2m@P%j}{z-@iOL zC)TXOA~bQlwpzk9BOSInxU`Ig((@l)yg3BxY~udZ+RVJ%F2Ell_UD@dvDPvSpyb}< ziuT&g-kB@?!&6tMW)^Qv&x*SlEDY20H+KHY?eVF3$;yIIqL>3#ya4QTMIv|gj7*`Dpz?bV};5pigQ!j~mjp12cRA&9ua3Y(M(J(K#o-efFYu zU{2b(AGZ!(|I1PP>32uPz2|LjejB#+x`VaO#hw+sGqz~IG&JHG5UY}$HEU=Lbs$qP z+}o9@RcjUxNWq(LRmq$e@!Jxn^ro1fa1YE^6ZPY!CE2QJ!qo~up@ubF-t-lBV04^p zq7T;T2dHs&t@C|X>7=i~S1)Mc9)*g#1^i(dw1RlDbxbb4MA|#ASe{-r zaRn@c=5Cnq2^ePNcB?D5<@VE|seoTe&Rzo-SaNSjDMad$?FcZYgv1SN8F8~{d4&R&yZ;XfBj9X#yfj!y_u;%;c zRW`TEp9_WxdolL!2wo7_-9-=n7`gxgZr(p1vm_Xz9)~?a?Rx7pg1^ttxG_i>Y&6+8 z?&L}BV}RGt2OON)=^05y=z`DSF^k?EUGfetC}8U~v)uJE_#g|(#!0Py^i_$RSz2yO zB*}03$0^~vGc54XxsXQhEFh#5n8#F^FTo6GY~UZ=K(E^jyDY1#H4mqdkTO*>;b9X0(KD|CLNq9>{cd^1>-0Jk9 z+Uaf4nEYv7^Z2EabFosS_lblW*D_s5T!XU9FjMC6aEzi+_Xmr6J=x8NcMrb)hs!&cliA0{80IV~I9)ncuWA(si;xn`>HcX>!$&1=U%AHD6p(y3;Fa3VX-`vW#F_FNJxp ze9RZ!B1%J@;am{*O@Q^7_{oDP{B18E@Wu527I^L1*t{} z*H|^api<*+(ewS85O)o51&ruRHu%;Ku!Byzu57Tbtc(1x%Q7=L;8YNe$_ww`rPR7z zYFj9T$0BJB*W!2tgLYrkyT%s~ir1Yp%yAYZ2pGi{#p(8tL}^YreBqJ~a3Ac`yc$8u z5o@$y>NjEDwBTwrS5=;xJ(z0X$E?Y8wgMezwQ#0hQy82jnBR3@y4jT2lf^leH%~^l zNTw$}FLwtgBo?oL?mzCD=$Te8@0@Q&X7zY84L^(|x7^WT{U_Y8bNy<2*iCNS6DjR^ zi_Klz%(7CCeu5{o!TmKNlk45fYZ}Ky-;{80L86{IbNT)X{9u#OllH)e@Ceq-0X&Lv z`jFGgKsk*yG!?mg}=GkJA1~HtX)QjJl{LHd=9VWC9(i# zhXre&Zylaq)EFJV`Rr=fFWAf8>z!EoWMR#CerQSij?86&32ggk831>Ax z$qkw6zByOfVh`||(TkXs)Lbyj9kuq6-AP@^{W-CegY_3n$z1s~-6$E8D;?&J?}JAaARF$agVyfJH0?TDKszDQ z%Xuf1K{&LZmXlUuqGmR|ih)Qv_%#^KoyzF?(J)HYImO#qm#v=x| zC+w#Svvv5KN982Q%qjp|I+UvI1Uu(2ohRnDL~`ER_NlkIb7I{-dAhbBl6C)=KmNLg7GmWSC*G__&trIN4hl$$uAw0BW=D-h# z745`J?TvhGr%~8As=8x^Lb0`r58!c%IRq@cv>865Vq#t$MQGg@mPZ$b~n z(qFa1-E_i{wXwEZE#9;by&!Cl6=4b2d{$q^AyQiLRzx}(BO7@~EKU^=LOV9H?-qhI z#BlaKurs{H%~MaLyhUd>uXcWiE5MSsxg9QYt3sDV2{uKBj8uwyYntBBJl#P# zr7M-@Zjymt#dzj1k(;jq>#z(*go-(M(bL0=Y9U?4^xw#JcqrZI#)*9Ew2XJCNS9bK zxA~}^YaP|#w-IkH7Y9J$&V;ZlCBk51%Nb#cdJ#%kcEl z`kjSkd9T*u8|JJ%3;g!0oJV!WJtH!7=X5wvMk2&Pw0!Ur@Y52l$8Zs6UnI z!=GcH_+on1Z~+bGDr^6Bn0D8)t%uhNTTiZ(wolK9WX2zNkF5OZ`{%F!=Rf?PfBi@2 zy2gHT;nvVwfBV*_?~?QRWMp#bv#$R6k7q^Nvsdm6ocZF?y^q&*p3kQjq@R9%edKfa zoj0xi!r+R`I7+^E`akafOB#tpZtD2|r7(Y#t5Tz7mP`6H!I(t^va!**$ge;6A~Pj1 zZ{bDRyV^Bz@c)zaR$Z3o>2>C}7|*gjYsMol&(c`XYN&R1RToz!RV8ykMg}v}VT{Af z%*+r6f-y4^iyI`hrDe(T$fF)xS93kj@m!>;OVwR@^28s0@4NSYHqV!DI+TxHz>lkzt_YySqW*70Sf=~mx_;lu0w_;}3`dJ2*lE5i3imwh^S4t8=kvyQSw&tJUIc^2cWd#f-evgEYBTCFGA^0VJYUqw&MSF_FIhAr0E z<~-PfY0-uw)#!PRIo}oW)mF)4R-}$}UhPY#$=)UPwit!Knb^#_CVc7kNOoCe?S?4F z=$w7~oH_TDtovd8`1Nt+=ncGNT_s;@*V489^5e5i95Pj; zmnCBKH4S|*8hyBAE9_igv@d99Hk88agR_E>O%u0Q*9(^~7^xh%_n!aYLZdc6n&#rL zguQ&X5uP^@{K+u6Qpv*3i!9HW1pQti=4T(XPmuo0xW9auz{3@m8e9Qp{16_zAZ&17 z&&wb+20^%V1JAzt4LbZu5WZP2L+l2<;xhQl4)$pdbR;`F88hFlQALgtFB944D7e)U zXy&Gl{I;5$liC=}>fmMR;d3ai_VY&7dyqqN>cK^YbZyJ86zW21e5yS?ot1n$R6G6F zdv|C>d+pJ*t8(z1Jd-!sKc`68GCQ@->)*G7rQHTy+x1mrtOk3nRoi>k_GQ}@yx|3A zvz*u(i?dJ3UDM&V7-}u|wv`>KD{rD$DoOx=>k6?roEItppy7m~)&2kGp~% zYZ+%Dq?58HSlBmUR?~Z;WgY&>E%un8rfS6Y6C5Mr@=dx00orKbC2g@^)kpIkom}UY zlVt>#oSgfM_dXl`qJMT_Ug{9f(F@DtSw%OY9Hx&XyS+c(H@Vn%e{2oT>FN+%jZyT~ zss0(!h+OX;F4VhE&Gn>&BIQk#o97s>DYpb!^X&Ws%&(9`8*a8OMvS(yb;v?T1!rLEV z*AU&HP>Xj(c17hZ!Y$f9`R+fp;`M_9^L|2N@;5h0!T78QuKOe(mI&E`Ieq5i>721nbDE)&pmcJV`aknKVpJ zD%SI9F8>1pZEZ*EMp4&*+iPs6<1wPKKn{%|&N(Us~ z)UB}vp^|{NmaH9no~)5~lo`&X*_A9RZVb!_@UZuKDD`5kTMAQB*f+BwxG^}*na?g^ z##i?`iwB8ncg5>jy@r|dhS!V&=7R8uC&oPV1ZT1j2`u+Du=;P zq0{5JIytBMqU8D0?emZik3W4#Hh7RGdSUGTY}+5M9KwkXyH+&59$&@<`_fCc%1i#z zg{JS&y0TWJCkxSgH(FkZ{cQOE_mVk0_c0Et(1Mj`M+{F-i8&_=U?~aPJHu#%pCw*FUuV9rSJ?gK7v%P=!JjXY3n-zLl~lGk z8I)$-p6=8s{ixzQLn{URnBK1VGVQ9yn9?!;r%Q1c0_cQB{y_|h$C8$ka-T0 z`*3LeSsUJ8^Qy|KBQKzZ)u!O@WjvQ9UYLHd+Q}LjiMing>GZvkC2ZtDg~F9IhAVsa z)+rIxY+DC!5MO6V2K!vdb+I|Ru3ZtE0&9mC-)-PUpQf+jDG`o-xR;OPjnfC?LhI$R zbR)<28O49H28G-XX6uV?~XG6-@H5YVgHkv zOL&8?%Dsty@o)Zofh@L}b4_AZY0cu*Ef6p(POmE~LY1)<%Wv<% z|8G1Tohv^ao~z@{>N>;O_R#cNnNEQQnUEvqzf-W`@c4~wvOqiRRd$!f=K9EtqlSroR`<>mvjU(b}L!1?&1;(SqLxllN>Z@4F4&Tgolp^MTV z7=9(Ugx_-h`kw3TH|5sR_ZoZf4cGDoxuXj_2^Vx+Kf~L3?u``=Ru#q;&!%k;W^aYw z*;-ZmI$~42$MR~xuc_l>ZUoAwb^IMAEJH;CxLM}$l-!<3(|v%kHXYaaON8WNeg?4s z=jtHmi~v6${4+WD(P0;!dT{+MZy?!pkbyFyA&Gza@y+D{vcFvCy$)_9_Kb3RMJ$0+ zrCd@tjr3($$X8kC#X2K%ubFw?jnC3!4HO(eX02$_wt11oX>f*JX#3W|iDk1`Wp?}M z%5SYIbUYyz68gG*Hcu$xlU5wI}?((U4@G| zv%IOCPZe7NvLc(XC{}saFIz)}1u}f|EG=f}km%)z#}oD4X`?eVVe{w5leNw$fVaVQ zwWl8~?`fdW8Sb3C>T`!mS4U>nKXZf_a0)^Dz zAjZ_Nph=jWk&4k4%9G4!8|1E>a#rq;06Y}p!&sBC<5-1Bj8}Ngk?k%{Nt{#gY)9}r zKbV}8T^oHm_xZx?+Gk7ig3IeG(rb?%3|+Z%_sLDUSPyARfKo4-TUnBB+<81NdoZ?X z$)o3z$%;|q9W?|B3C_3?cDCLHJYV#cSb6tb5K-YerVV&h<&$EgL}^VbxptLk&ce@b z4KA~5mUNEaS~8WkMP>1u;*}$hH@kz+EN&-5z_@=L0F%w=wimRrQ$r7<;_4)fwn)E0 z*|i`s*`!*Bi?dUZU-Ur~+zh?+K&6P~B-zMCCTG{=4=&y4e?*RO=(7i-!?yHto z6x?ecqC9BK2Khb1=JbY2h}TuaJ4>@=i|X*&(}z{COST*qy)$Z4IYKu45DwV&9s|GV zKyYj9VLMrTe1JKt&R@2p@!R}~eDC|Va_^gYFBrsnr->sNxX-#f-#8#5vCF;aG*Xyo z>fK-HwmS0EDzz;Lk0fn2u_Fh(ANC}+;r*s!=;FPzO^W?B?4x=f>}ifgS%F^9GMwDP z`j)TAdAX(!RLTlhE~m7H(sYkxEW9(}9_G1^;`D|z0-Wt*L<=&UOG=!H%9uV%-e|R$X&e;zPLez$V}ksgH(cPE6PH*z(=u_{IHTyqqJs$s`zqtGKUtD`I^1nZw7ys$-JWJRbSk{U>wi z{^n2cN`8F(!N9L5!2Fyr`EBOWFFw36a_RBt{H@WM&4J}L#n|GKUy5DgtS|tbD{!^=@A?0yfAw$tKl|iXO=u21FYaD^U)lfa_r84lKWBC> z{wu7ye_(<4pU5l!L;dWVzr(Nm8+bKeCu*nP!OD0GOX^e;t{%bJKIEF|#!I`UV7wBX zTay}Z!3|qcTCMo2=(l#8&?zi^v%;QFGBeFfL+i`u4_|y=VLzK9Z<3}9|L!2Ki zbeky9xR$QKtGs>k zb+gbt$LH6nGZ&YZRlXv9VWkm)r5bC$?(V($Z8w;1)l?iJVb(JfHrxBpzTIKp*m1_& zZT3%1q0U}4U~a_YQitV5;Huit(HqSEInlDwXhzUydO$lMoZI^jytbEMMu`VYhndXwc{W<^CdmuNLZy>9c8Itk)=Y%5ov1st9bu+Pp1k@k zYuh(r*l8~GsQ_NpDDSHvI+foLE_sBes6*n&JG`Z1w<%h4a4i{?uDHP*DVy;YoAC=9 zIp5nae*5*H9(cJg*EBGjZe4yn zuUb|*95Ba2p6s^$df$w3U|#I`vVS^4*0_Rxw->LU?5Taljy_oKD9B_e2o|Dewb>oD z$+?s?zH~0$c~L0sy-hn3?GXMEKfTR9eX!^?FpW7qL4XMdC2 zl3V@woXQgV(-(e0VCt8jUVVxmbgpkwv_OX#QA;|GsXC)40HlX`;`*b}2e%#$+<7uS z|7b~W>?d#a;N8m)Za*DcdZf@>2k^(-yFW62V{Bsn4*CCwV-qX=Q?o0>s~e)R%U|A| zn3!2#pJib_zp$d7Ti!IUZbg zcK`I6`@zT@yeU&6UO!6C!g9SoG#@0x5u1})bHU0%Gf_Wi!F(-|?T8G{%fs8JU#HWp zXJLG&w&4|-0ZrNnBT)B6--K#jq}Q>lqmJTv1Xfo3&d^-+_Q+Z>R5@yK?yi#K$TEwE zVJFcwT#Vvx8hU`@ue#hvq#kOu`?L=FyVg~E7VmZ>ZpnUu&JN^Ifb7VCYH zfoWlcYd*uwlwMRgvT*6>^~g7))st4CecoahS;xQI(|`-?%ks8(CC|N^qHrU|yqI7& zO!rldd=$6r&I!BXhQ$$UXx0@b;k%db&BuzD&5_fxgV3#P zc_f$lLw|C!Z|VN{>L$D{Id&ssw)@h|jH?%FEQ}p3GWSig1xffEDJvNn6Wmlac>}dC z*V3k%2cj>)8SaL8-Z0D z0t4xV%jD#YYMBw5O?bc9JtjOBIt`=slL(qBCYBU)ddefQMm>amd~{ei*j*XOH=D?- z`SDYQ>9=&Rs6BT0@h)cfK%{m?e%WkSqYvO4x8aS0iyozWFyMpX;9t=N{Std741X=A z4HV*N@p1B#VWG|)vBoQLblTu1q9|FKC@jO^Fk<=eiagl!E5n7$_I8+4oBBAc_pF0% z7<9!RAUO|nAj{{^;{z%3>?y2jJVkJ?m00bl*Ar0D_%ao)oeG@A64yyd?JE?Ou5^J8 zr#$y%zOeheN?%_NT{!HbKLlPjJmsnv?b*JmcCpK(GP%&T!l2WPF3BW>*mxA=VR?_5Uz2|UX zVso6|rqbKz6Z2|!AN6hz*iAk3XFCsJZo?^S+;L^wm-%e};o+3gDI8B z%Pu6)*z;D*DgwEwD%Dy$-IG_RJc~N);i@KgqRBqA?Twdq*2LNhU1@o^MB5PT4`Ju- zu1E~+4V9(KBC1QazcRI|F0O4k%VgLqV;lN9yU;fKpElK%^lLc}VAGvRweC~&qUV8R zotIbbH4K7h8*1kTOyakeK;|tx-q-6&*IThB_|2lk@D={SZ_sjoxh*s=Mr4_Ei2tn;zdCN3ykp=e5D*RHpZ^A~T0_ zlLA}X>M!Iyi2|jp@g#YGBp$i=ipCpez9mc6q$e~LruZfZTida?DYGcqk8zB#0FmAj zsO{_TU%tP(qOdCP0qDrWYZNA@_{z-zk&^cVd<*mNlFGoGYLx3;cFyfydd5PnJs9G6 z=Vzo=8!QM9U#}0X941)Rg&)9%zHFJ_P&hHlc?kKr=*)Fu{`JA%jBuZY)H+)Lrhg)y zZCA{_;@+rbv;!Km}d5TiHI@^H8|vj8|$RwW9#{u*8hjJve){6Rz$xg!Ufu zC|1;YBGu~7QM1}UsdD|NMdoOjpO=rHJ>4I54`*69^fjj#*2|2@Y!z7ImQ}gUC{>%y zFbmA1KoGV}K3A}C5D-~2?yXSMo$kK$(5Y@CH)tSRt5#alf*FBv1#aWQ(;30U;GAp@ zt!HCVqKCEWH_&Hi)zLF(_9fs79VX+j!|7~{@m>#3uPf}ZZ(Zy!J?_fRtFggd#u=YVV`yL&J2`xp8N5zqoYw;iFmU80^8BFCR{jxAGa56*eas(ZJZ6CIfeW``O#y?c&pETzWWDp-Z>L z4Eu`x4ME`3A1dwV-)$eh{>m9nzd}=Z<%&06px<9a%B^$!7Dvo|hje-#gfq=uynF(d z9f(@Nmet5!(q{C=oYdVooWZmS%cNeU^gDbk`MKQ! zJyaQrx{I~Fi)ha<4~OQYW9;abU`dOFTCZquTDaEp4&%R8&%$4& zpH91`wj1c(;l8ri$wYb;uA+zBk|Ug{TI`{cR$vTEnNimt%?g+C>P_DpS{#~Qk@bCW z?cTljuin4iH@bS_^>qPGZ~igWJp1bvmGygX zru&!sXRm)vQRz#$Id%q{7q%af0lVZ)a;>ruT(dO@iCLE9VE$~VF!8XX2w*(2V8jo5AEr)QbU&pN==8g=&=pH zH-!(^skY9iz+B1NYc4u_U0YXv3!QBqL;iQ)Fdg)MEF#UgP%Eb{Ymm3Jz0T zpbtcaFtB0PrOG=O=^g`%^F$(A?53miGxGNVr91E6q*HU8Kn0dVe}4aMI9xmR21`dy zdd)3#xtP#th$T_W)_LZ{n`MB*XE=KMI~RFlE6+G~8zlw2ehK%B=+W@nh7bl?=lpwp zZ|=YK6d!;oL|=hWwxqCbt*gDNYyHded7)l6wz6e&W}5zsuYc$G>HF7pGn=Z=@mGJ@ z!XvbYFJnjM$nL~z$0uiB|L&CM=?)&-ozm`$1O6OA#(57&p-b1A!oc%=8*-K0`p69 z#}X{U4YA3yd~bYh>dAt96#vk`gTCQg@4f%o%}0~#5ATgG-M{m6@y5^IyK?P=D-UiC zuWXS4P~DrHUcAe0@6p86TK~-K+VG}OKK}XDI}>BmYwNRfYqGh8wJo|oEgJ&4^Xm1x zp1UI}nQZ69PPY5v8MEYb{MDx_cj7EkJ~?w`y3KW^IYyU9Xx)H+tNWrz&M-2M$u3lA zp@VwkqbplczVie;&J5@C#O9VKiY}MHH;o!zo z19>usDNu2)${l8y0w%dFZRTvILtorN+p-+K`5hgTmJK`wA{c~bj4B*yk9;d)jd^5V zVAncRVKTBXJX$dZ+C;R_it~(3uuqGaBLyEv9gj2Janoh$09M`O6~X8}42hlDaDuG( z-iz-d&P2;AHiYR)&pM3Zf{pWr3GcC$U7{QP+RHxEiYc~imFM$P#9FM%t;sSS z=5$YF%be$XUP$;7Ww@=)5;I1D{ZDq4#RwVwLZSg<#GDAh2=L=&^^y}dO>uMM*S7R# zAv6vbT87mL>zcEuLWTd6?ld)hCyGr|Si#-+#;?ErkO0nT%GV98vA z9r7U_m7nyDEdJTk;h7&z&2Rqn$>`!cPe$i{Ik&L+{@q98AKrT~^7+Kj^!4Gv$$NwS z;{zj4W=Ahyc`yfqACHq-{Kr4}K=kpoe)G_jG{HW!L2phABWl}74gejmizlf)x2|lF zi|B}qksZA=*=2FjoY^$g=f&0z8sRR_w)W_XqQy1ShCjW{Uc3$`yv|;xx*|8%;RZC9 z#M&0;n|7}cAe^n8O)ZM|;71+v{&+)G@Jo8PpVQ0oa!&5LU}yMjMY8pbv;8ZWEZ_J` z``^=F{XGomuQuf7=TcqZB`d+#oL?@;fgMP<%s}2$+hj~Sk;3kd%IMmr2Drs}cTedl z9`K&u)4Jkaa`jz4-ZuAqm7Q~$S)_=rQBGI8C11Rhp+hhU8awHZmy+}mrpO#5@V>_Q zy+cc4qYd~tozVp=djPFMYd65o)2_+Qy)FeIx;Q)DkZO2dCYoH53i+8R#@Dn4u45Z# z0S7-T*UY-s$$7>L`@$==gSwc4U0;%Y-C9x;`t(4H^+qYy0}>3 z;P#IerTEI$1;)Vgyhu9_-+|b^dqJl2EJ$>r1$6FN4p4KmGS8gNUs@mwGNU$!o<5{= zndi<3yZ_NumA!vWZSBj|4~AXQ!T_FzdsbiW7F@(z(NgR3rCWnP{)?Y~{-f)C)Mi7f30tP{mY>RVV^5ep54^CmekJl#*)GxaMm&> zF!%@O6lrUsR$o!s>H|yK`l8a^iRDo-fBU!JpS=3+cZbiu{oVG_%iop{pMPtNRbSIn z@TR_Z@rsU-XUWFVb8eRt`fv8hHt!)DbcI^~cBHVsQ`tLj@%al199!(5a&*^a$gL)P z@F`$Q2NSImpEa1%bHB@$VSN(#qe`=AP#b-Ef!vNqzvyEB5sc+`LUK#gMX#s>pNm_@ zz6=iy4A6|1>zD5#W}_qB%CpLDiZskhiX zxeFG04vf}7-lQ=3b#%{a@TuyTWJc2xiv#kJzD+|Q%>5n3QWOzTzG4X$)6B3b5rr)x z%-Bk3m~I~BBiU90 z4|;&}MSyGo)q8so>GtjL2B?@Xsn|Uznx}78$=E*~o|oJjo)KLB=*rEHe){njpIo~0 zW@$P8I|->5$M;*o;CYVT4M*gq{X4K66G zy{^(txm7bby(awWr?(b=^~t@tkwxhO{)*LX>tY3;#Q4m{*8MB@hHqTGJ92AsS$*qI z-ue8CpM3bmjrYIkyG2jVBN%3b3RCdT?SZ+^KfXTn34GWu#fH#bd#Li{s~`Smymj<^ zi05DbmNPe;s6Lx!UogSZbkLvP>379y5AbB(!k2M_Zh&jSQs-B2cmC+#|HZrix^F`G zBdOm1?vh~Z7q|Lm-W!^ge1w1QSD)P(efP@kq0f-&d$ngv&(ANhCmaTo!tohyPy05{aSXI z-#-6tQlR;PIqg3h+`0eaOg8>d?!NrzP=4>9V1WN)x_$BAPG0}^AK}#g9xvqY^UeLg zuI`+DPq_Q}y2^9P&-*;zJlMrMQ!DMfqH8AO{_xf?uj75MQs;KFkFhY7I-#5r_70{2;%*3hZ-~KJP(QE4`cgG|n>sU*;XG(i7g6x2O=&K(5 zf40#jfreax_R{@H&pPERhcCa~*4hK5r}MH>q<&VnGTJkL)SU6gcAl zZ3lDh?l-^t+g&`B>;ei+o=i#{-%H?9;dS_WY2bd0(;T{_k%Ur zp1u3*8%KTbm0?n#Q;`ujlIzi6?-wiWq0M(bxxO;7tWXvYzDBZX;RVW>yQg1Sozar) z5lt`T%_Y-ft5FxK1mK;pL)VzsWF~8-+VN|B*`Uap=yjB*QuWi+B>L8v$Piv*h9Nec zLa!pXQBE?uXP9jg3o>U^X3He-cBZ`XUY}??0x#4f)P-I4?6xOVK44sU9U_10={=Kp z$11Ph8&=StVgs@2!JqA9hh$ns&LFd@CG$X~NJGuuQo111(-$9Ef3hH58eLTj;Wo=2 zOl%6qmSrM(e$<<0dSk39s*j5X&a0qLt2%t*I?k2$`r$JVXB|`DqySdE0Tx7N8?VDY zd)Xscov+{i^&j5C069_nvj>4n=csY=`nZ1l6*`qWJ0mfr;mf69ltt**iKbfT;T{hJ zMu^3p?wIJoRnomIWEN2}hU(~gqHD2XVn<@uvmT{3$;^Cbmm7odTT({$x9YxGF?Q36 z6(5-yFS81twvrh{HZm_2;oX})uyO9qyuhW=HheGt~&kS|euqHzWuFyr06KfaCyK=xo{eCFQF-15Vv zRq^1$l5k{gO+0?}%lnfPvx1GqWs!WAuBG_}k!^8N=)Q9OZkY3SGuC)^hMss~Pu5?P z3xCd@?uawxkt+@0@8B!;-sSB0rY@IgzixQ*-GU>=4w+x@*Msl?Jh1AW=-_C<$ruCoE7aY!-C)X{l^5M`0vz(JkGeQHiez_tiAWrvpQNm&$Pg0TnO)=GZmeF}) zfhoWs8ei6r7syK{JrHZ0uwbuQ$>_=$CU41y0iT0jVG%E^C~fWHW5GH6*AB(Q>(Id_N4%W96Eit zY!sTpdi)5)VXLYYsTqkgV_+_I@|kU94s>W;I(!X)A5=y%W>&Q$VS~eO248Qsgew-Q z)o5=I!NvB;Eg`=O z-!;1=xIJF}b1bl`wtM({KhKtMZ!d$F8ool!#}3O$zBpPrc$3A?k;DfIUnrh|Nd<2; znPW$n<#VJs%O>$EWYBuE1bfQ<%6Y?1)_+}VCpQ$t7nZBA7bxS)D3f_B!obQbU>aD& z$g!dK$F1~5#_P|bu==gAmdw02bg;p-Had@azPY27T`V4l?&98s1B*Gf=eicZt48Zj zsVOeqqW5fz-y8IN$I8Cg$^sEhIAl8e{y$Q$uy3SWRIYNxl)SrC?$+u z3n}OG6&N3r=pobWU578-8NM^QuIVf6y&CnVD)%?!hAYgdAKx8W{wW;LKYj3MkSk1GusT^9&wFzV0BnRiabXh!Efg1&gp z=LlrImFBU>5l-3d{ut!=tlb+KKT+`Tu5_w6XKTDU6P?){Z5q_8HDv4} zHhkga)MwZG`!C&QTP4sglG$0qU&TlD=p*Tpi{}L_gkT7KQw%mkglOfAuD)+sM2;WF6-j+cvU9oTo~E%WGCXq`Xsx3 z)?1drEtBIZd#BNGu}w~3?+G`5U-jVC?dy*xe)%WwUi*!8G#Xyqo6GNf{$K+hfszHSd}dv>F|no<^|Fqz#~NWEnLyZmRN&KElZ6PGeZ3++35aNh2{3xocPN4=;CK{GwYvDj4zS_ z*tq=U>D09ck0x%fugIUk1e{o&7cQ=>%0>73W>vR_mR!a5MHZfLR$&V#+|gPR&P%el zABKnF!yE4qfzO>NcZ1}6Jg!*L8%S00i}{>rfu2yR;%3ip zMT0i${bb(YSy#Hx1cQ@nL+^Zi^Kt*=#?w!34i4k}0cKmf?|LhH3-E(|DC*(s< zna57}zK_H3yxq}8i(FHyy?5Md?w+C#`ch)GCB``~$t^~w*CE}y%>aH$FSET( zjOgh!Fp9M{4SasBQ0=j3Z4n30F(-^wuPjS~{&Z=bQ8zzhIu@;NbTvQUhYOyi zWnJwyt}AT%Wr=ocYE_{NrQ2rqeFj(z(L%__l7_7t5t%mYDc{oy>yYlxI^Zqw;wzZVHr|$0A8xMH{y~Y`WubvPkihCk@ z+&N<8B%Fz)d}NXRvp%Ra(#;; z{p|&T_9h&f+jQ?;7HR!I`QYl~Kl-CT{`ntIugZVfKPmdf|Mufge)e!`?X%AFA8szo z?H~QifAgbX-0h#g2F~bi|Dph_@6wI?Lko{)<^@p1w`M07)vHrWD#7BaM*N^}N_6MZ zgdF}K^S{J8w=8k4uF3qfv+IFB{?X49gLC4;0A^pFZGY)Ycm5u2`~P;P>wlnA{J+`5 zmH$@RfA!Ds=l;2R`1+r#N8kJtOveAb_w4mQ{O)i5{%>N1#@FnkVen+mE8X)G4B>5= zEnTi3eoelA$1^Y|cC1P)PPyLcniiS7+CV9?W%s3c#?muVvKWSrR4xz=_5xIke_)BTsl zYfuW+PPQZUrFxvM+p-tDt*obU*=%%Cc{C87%F+k(6O zPiOmvX66T`1R^p+MxvDTR^BE^rRa#h`)B+{cWR4ARzb%~2O@w~T>{+%1dbf&w ziH7~7@bg;(OMP>)&FaZF67sYw*B;L-FaxjgERs_myG0Kk9RLA12UbI{dg8#wZ(Wwz zbaW+b^-qhm<3gO#{EqklH@g;g5masHe&> zCXVK}#q1B4I2sOq_T}UIHy?};?U9e75lt?Mb;EZCW{B6SCt&JMqq9%0DD1P<{pYK6 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

{G`ha2`LqhMxuCXv* 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%0DSL>RO6TB=eu93(a&teh(%f~kC)N!u*p*V9Yl*pf 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࡚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

_7iInj_sK zS`)1Wi#IzJ$#!P)y{A*bT<=jJ)dQc@yOe0}pE0-+KVG8<{v0^}ThLy;wSaycp6RzH z=V@=vt+4+Bz5ic>8$?E+;fLTRe#}-newAz;oyVFy@6ENoN;bC7qOSX}xc=g8tc$mn z>GHQe|LXc%fBC(4-g-Pmc`MyMct_<<{0w}}PjtTAkImuoPt>l|+dQ532dJIi2EP0K zNh0gd0B^qaU}E*pu0NjnH}}RC|J}$8>92=oNPlx{eEHvx6L>$q_Gtcnro{9GaEtSc z6yc{cB+h3z(k=>&?kf^&=psw$xF|IEuPk#^7soJPdx@>Qyo`@Y0{7AqLwo}`%wyas zqoz=C7;6o+cJr|zn7wE87w%dkmAk;j?wI_!d+t>8u{Ba2amMT8!Q%R)-d`AV#A>5@ zZ+ckmNTA-WOgNL(Ia{K(?8&r&mFJf2iOPyQ*&w(Rja5siu!O!FcUN`Ao9!%na-AjA z?2Eo!Z(iriOla)!ao{#{&SZT)ROn1Y8#D@xZQK&6i~+~Ex5$)S8JVY^nDZc!j#{bTw&duLdMQGfji1lI%hd*`#ffE&w<;V zrU*3?*o5P3g?$2e#~A+Z0r-*2nA?7Ce3@|th0z^gQIAZ4{QY^Fp>bD+TXW?O7;s!lWd zlGH-?fQ5dA=}xui`OYD`eejak-G9jqmj-Narp2&F3Uqv5ZujULexka`H2U*YAHFu2 zZPPue3N3;?7_0BBxxqtNBc%oO7PGcUc?Ou-B5IKpd%V7yZ0wWE8_y}J_AV*cKO}dK zenXDcc2+B!&sPflqs8jh$pSc*g?#sLp$0soGcHT)jp4`x(m>d zU&P$cYw&{Kfd}~!GD=2~<2{9(ky-Hn%OYclstr~-hDeR84HUTUbdMh_ZSezz0axqE zv30>B3s?Z#lk2m6#SKodxXI7=kA<=3o*>aZ7NpvTT-;HtNM)N7u57V@3(@iKY5vmY zn!h-pK~u*JS9e(93UJN(4mVuh z-za+U8L2ID%5zcN+1?szI11Jc$sDYZta%faHttSeccMz1g#uWk+5WA%rwc;k^L)x4+m zq%MyvvpxgAf8G(T-C!y0m!>GvYvJP+JEB+i#o1~r zzX}`Tuq9BM^QPO2fqZ`n&uY<|ZY|iO<;75;w+wuJC0^ZF_9kkJ_DFFa=k^>lXW#=j zrhs|eC-C&QR{4epB%x^}nD0+#+WXVF{_(gg)fsUl+ry4neFU$63_o)mXXQA~?kP*S zGK0UL1Kv5u(|V`)`oOF!(_Zpqn+qJ3ZA$6MOsM?D385u6X$h65z$Z@GVvSk6wi%om z<63uen5FSNk~!1&*edr;mezA)nj*gZc!qiv7{fiOIs8~*iw&V?nZjOQwBcu=$DWVZ zcUN=mBa$mnt^CLlT?b<{JV(An;5-TBIv}^k|Xw6Pn8Np)=9?)RAm` zidynhcP#%2?uHL-;rcJZEq@rzcRp|@Ywua3wReHF|3m`a0fDLfp~8}QM`#Sa>xx%@ zfqvwpM5+I2^Wd8=+ehD>OW^f2w@$9+`$yMH-Tj;Uum0{9u#W4`fBzq^#v6N|JenZ> z4EgLIz|Zi>X+|oUraUt=L-`Dv@Uv2`^rDC@y9%G%4a`HhjVy_4AANe^GBPM0>MY)= zPcPhDfaj0Def+IeqI1H3Ycr4qI%{Y1rGI_v$ThM=vsKsk6FVnwqVPZZ3%&h(WBX-o zaQIEu>WTSZW-?g2)^}s|EsXSVX-#0o-aNM{*;bDo*ag{Y31rO($ zCkp+jQ4>O=+k0ztL3?L(QN6^J8=!&IFEgZ~D|g0dUtN2EQ93T(3P*`?)E*8^sAo?j zfo+y7WGyr0j5&%BHe>u~XIwnA0E5vCNxRArxr7>L(i}|I!r5BO;*Qphj%ZzD^|heI z>_;-4-Fk2T==k+-53vV#B8ByyIgqVc!-X2wOB39A)t~E>Qnjsesk2=yx3>zr&%P~` zd;95Fv7hMeJWthnPf(`qMjL}el%_jDf4<|zKKHF3ya`k~yDndm2KF&gp{ruCB55R1b~`mfxZZytx)QpB@;7M(>K@>tm9^!HKTF_d;ur zmsAI@ehY{>D-C8Evg0>@lE+JJVKmbgK|2AR@qmY#lmp&`8!runovo*WNU4XrV1rp` z?J*;{Iz3Tn)0N1bnxOx+CP2Fy7MIv6DzwkC_VyElHBz&us#`v#EgHZb zkUTi~8fC)kOrp7)Kn)V}SGE(DOh1m_F+MnYlWuJvr^~$^v`Tx?+SXCHw(%s;*?a1J z{_P*Uhp)c1=Qoda&TL2F3gsmBV3K=de3ddfOQynh5Bs}AisnPMCNgM&GuSfFV?%3Z zI(qSKsJC+x4rJTjdjG&vZ*Q3;YOBfCrNKd5R_>FNh4ZE3>QA3zJK0L-Vw?8HR*@f11Qt;^+iCgHOD|kqeg@Uwc9)iqu!p-$c=Hk)fE|^n)hKIX9SrT36(?< zlZxa~y~+@h2qdoS_ePvXcPwTIC6W`%YvB)m^<~PJXl?&*|L=eO=70Uq|My9;)2nfn z#xOt^2e3=i_uZZC4Dc2s1Q@&95RMPFTzkQ;SyIariu-S`U~lyyEl6hH6t1Md22$0!5GMx1Bs%6 zDKVfLoI;MyW$1+VE@T9wW=U$@Zt!Gb?t-WpNz}vCPMl)64&KukbFZ7}|TQDE+L<`=B6N@fz z;0d!go7JJ2*n0ZA7NCy8y$ND7*WNoxHFjU2j()xU?7KIpJD#9EJct+C$NARb)9%rC zC%OK?UZl`o2OqxGIr?rFoNm|P%~T`h&1xXqt>V5fL4TLaG@lkro3GPGe>ND+_k9|B z$Og@##h>rHtLrB|97-O0DC0D`a%jby_Cou>1r3YE6v(PLYPUk5cByT?oZg>m>#d=j z*5oT1?2)QDR_U2?^??@mvkc#hjr9(Rwt-aLc+QO%d*H>JOiQ@V)Hzd#^U%<&;j#c+ zgqWvwvLLiUJ=YciV-)0DdwiWc#nE~*nAVcu`_mn++!AKt>+v-mp4nf(>hVJZ6+;UW zqNCYnLYL2vq3@0sI|6&4#C1n1Oym}zckk0Yu^JWqJk{b((9EGc-4UzMjGipT8mdvP z!5R&90mT}~5M9wK31cKk7zIPrJCl@CZ4t`~n*(_v z>NcSk8Uc|Zz{Bsy7i*j%n=d7IM2bqQKdqE#ocNqIpf<5V>*dI`53noC2BR;lHM`PU zXE?9J@qENX2_fAUq}CP))}t6i@c|Qd+Pg#AL%XRBEJQH+FQ^w z|M>!u|5unP_5+qs`wsFF-iJr?W9UjRg1^1vO4sj3D)^jgU&pz5uC)I2v(nbd55K&2 z_pQ_aUA#N>7HYSj#v3~yX?^Km;r;x)&^!7vS{t0fI{iFW-u~2^>3kY24n9V`4*n$d zwn*>#{tQ|0H>+&r57|=VPob%QhbGj$&sI7=#(Ml*X^&il&gQz&m%EC4{t^{A(ZKR< zs@>`PI&by?<`+FgPj?@@@g3;qZc#+0oA@`-fvT^~5ZHH7d(H$){W;X5Gw3Vl(6`P- zO53xj^QKV?qaLnILw|yPv$*I11`U153TkT9mZb%aJG$V{G*`lUk(FHJ_TNYOarBA zDz=yLx)y*pO!;%`!}xrAg(15L{{P~d#B!Ajoho|&i_o%NoF=fLSvA~Mx-t{so@Y^m z%;?;SS*1O;sB&dirPlDO#+_WIOH8l~tLJUe@)EQU^WdCjB$n``(v=)lyJC+e2G3)} zs!re;EWjhO0DNu~{-pbl<|xAyfo7hK85My-hZ(PLG5y6pi6J#DaurqrFbx*)OpFD0 zqs5HzUGa*@7S4;Tv63iS+Z0%_{vae`C!5>cY-@+EaYxn!Mi(8pBM*JE7~HuSb&k-J zt_q-w5XNeol4yA#w1rEsq9k~^-hnXH+!p|MVOygm8qNt?w!2To_avd-AwxevhrfxP zf#wK32{%ya@zB!?a@_+#qP_#JV}lLP)hYI{=1exIiVwEZMeKUb#Zw{En z9I(A{?CCLJU*n--XS}ifVpQ+X+yO3j4ZXuH^rtu6>HbAqqH`AO@bhT>;EW+s{Y2?X z{2J@?ti+N$?<;LySd-bm(71~i-HFcS=GOB||LOnvuUAg~@IU-otaH3Qy-NQfRbqV? z9QwQ9q<_Rz``+d|lRp)j<8RLrh0q&of3U(;|7d}!`1cPNX+Pkq{qM}u#qYrP@IFm! z{di_g{0V`t``nwZoiqEhXHfrqG{+Qw2+Zg+#MNAYUg-kg(7AS$ zT5nEn4cFw*zsS)~$)IzUn?q#O^B-4ehKFccna#@5!Q-4JmkPG4_e* zbbYwfZ6WY#kvrX$#2foE@ZeHkwkLu1RfK&c#91Q*md3Y4D;#^giL<%Qu!bvZ#$cX^ z8k`u&cL;dKBvY_N3+C6ESSt+ZR%rO3YyDY-)TDd6So{Ltk6$vrymCy~!p8 zoD&5Y1_iH+>`2y0&Qy~Oe1MW}Y^}xMaYNlt%r!TcQNu39D;o>&SIwsDyOZe6hS6I- z!1uWVyzVRLr>~$+yCJhh9|j8>v$4wVVy1PtaN6So_gDlbv1pA}p@o5tCe~O%Z@J=# zHdfJ3lW<0YBimeyl{cu+<5EL~0TtR|T50f%S>AX?O{4dXRd-jyz#@R7j`=d(an$Iu z(4{STlFb$L=tN)#B!8hp1dd7c;oON7`xJbTqXl^Ds+&ZdIV-MMb-Y z#g^!}H(j4YtwXGCo`AF4BSDKpZ0~>#XX1 z*#(6oxd6Oi6=&#@E|6P@G!K_$zS5#4-dw_-S_baBh~I6=4_$~a-I}Bd4G+me^J8te zHoPP>-B&@wUlQNARQYhai z;r%56TO@>vJ)8-~Kd3yx>?`ZGvvxF`*HeXx|=h~MH&gfTo?=L!%{fqug<3heR zI3FvmpTqm|C3?-zP!oIr&E;CfK8tRy9?TzOT zAWeN>j+Gwv4qp%B47`i?JYe3SG=yz_dP^%qnNf?CK>thGokv zfjO2Y$&fp%xbN5P-b6nTFK+nK?S0g~Px=Qhp84XrCxy<=lNaCp!%<`NctdWFw{b4@ zYFjUQmQbaE+O;0YHmeFtsEEe0f`+jSJ!i4E_p(&(Y-L~&h}px{IQqUMu+NA+-iow$ zp2dODg{u9-Kxg|TkZ$gH&B1~voa^{IThGJmdoLoJ&)!5{{`QZ7c7NaI38pQrotF;W zdwSH8a)T$MgpOaqQQCz}nNbw0^i}J7FIE0*LzbxYrBYi|#L@;OsoFpTZ?6#=1!Jx; zK)K!4IMZ!NPmAE0+DIQOsv#th;S5(N>H}lCzHKe8KXV8Ec(PCQ!96)3Vmigc&;fGDpQxy7mX4{3T=d`@8tK6o%iICu5t<1v`detNw-F4$U`f1 zDQth5l?9H5ov!tDp-j_h4wb@he*32^FprEY-_PS-FXMR@q4Ud_{Q1Ju@BXRY+eMp3YGOEv^z)1Xr&t|H`n9OzW!}AQEs?UyIVZ*g2wELisgD2?cB|w#e0+F zWd>%h-yK^f-@~+lQ397=>mQo`_y6m^xTr$C`oRKI=gT$%?pP&+o+bR^)wftZecdF9 zC4%2q9!b_%V=L6jTa$!gaP~vP3shJgIiT?+Q}8FwE>dO7<1`s*f~%p1DW$7Cy;P)iNM~SHC2*A* zuF7VXnfw;E&}fqD!*=L)U21#CDK`16bcw}+ygP@{5%%g_v4F}MP8FIvjn>9tJD8~! z2@G+ZA~I(|4$C=lmMA-<#s#=}X)jC%)|95ZuIG`{0|Mt&_j& z*ZN0Uj3)HJFB)ub9>w@FL&y;<7TcT88%7YC@Q{?z?-aNiPrJMO>goEkKfbQ-yn2=E zY`;j>cTTkS#DODJe6s)Y4=;h!JpnKL6UptkdTA9vHb%p7UPDw|#4X>DMH z%~WNpZ1(1h(8*Mwm&vzxpC@pShtOk$p#6(N7ZftNq7LY$Y?eUPSKNFR08Z$#go}2J zUjWS0FrZg7I3s0)Bb+n9+ir@Mwyfx1%b#tAu7@6bT@=hU z_~0q{_!`i;MLsYDF8u3)aB*D->jnNBdW~XV;)<6A4rl@N-Yh7yFasO_+vLqK;OShG znnQHd11u}JNqCYt5Mwb7z#`ynV#UfmCN%OiwL7_Hk5$*8wWaFqVXDpQzLD=k56ji3N}5?og?8OCiOQZp*kx}wTJrlYs|i$;|- z3g=nb3_pMgy`Ubxe?9UO^pQf}oNMk|n_JK98&7`+XyMSv*9S3HGA2tmcI2py1>lr9 zx%xIc4E=*8kR?lW-WB`~tH5lD;Z%tLf7@!hb-dKydpU_7>lQfcvle&i=g1`gYs@(N zbL1%f8RlU9cbI+k=fgA9f4f8yd>^32J6wtJ1I&Rq%~bzNtasjqR`Qf9nn*YHCxDR+ zC2HGuQIlNpq+9QQa{ks^w}%)1BGWs1A3E-{sJXs^M*2MZx66TC=ejG=xCYPa6;rTy z1$;a-`n8M6=D`IJ1Yd%4{ybLO{S3A7=gxTT3*5iwfiYZxR`zDRxpN0l**(;fkASa@ zW;+L?z!yeQca8&tnhL-}hI?%`SX!U4M2gd>V`tHaPNT=208aiGnB;BfCP$pn$}%*o zr~bE9fa}Ciaf1Y&Zv{Q!Ak%Ru;$OT8CXY5 z=2UioRwZ+L>|S8uw<&{Hp}E{JPlezwb;n9%Bz7nt*uu{`krboZq9? zNO8rRZ=(jzQBOTE=tWt0Pq>xM6F&4vY!fmg@tSDRJu~rqXjm6ylrm&rzW3kie_y(> z0*@Pdh0{KvL4Xf##hYo)EVC3tj~3{V&M6nrf77$w12&%D8uU|uWLy+`tjxvl3=d;g z2rgf$_h)7JIdatJO5BrjTfD{xhQi9Vw&+xWV(IL)`_rFZdN_Y?j!sz-==jcfRn^{k zt^toDW@+4#P-URDL`tA|%5t2SO5kUx5w?`r>*x!6zySt)^oM+41YE$W98bCd?ND13 zDRiaD#t!;>Tu-LSh9`*E-2Dcb z8(nIC{fO+%brzKN_ykWMo)A0JGw4MZz$s49)!q@{B~#$dmU7+0#bB{J2YzDCo~SRB z`v-G6M-bd-ee%@jk!o&Eh6>Fw6jVd#aUY=%eF%-#1N33{p##4cE)H&lvhB+lg?(mt zRrnc0ZvPS*p>qmr=sa0$JkQYtu80lM>!|bZJpaQ#-`{)n?b*rE(eK^7ar-Z6QsX;; z^2Ub>PvJeH*!I&ow&tfxeBDoRe!Pok{+`s8{uxnd`6*Fg`pNwn>QCnxiubr$|A$Nk zat#E!kH=}^&)7=aSKz|Fph+yBFR|4hPY?y4EwPke!Q*^UVh&wq>)huEbj(kn3BSaQ z%JcB$Bj-|cb%Dse`gn?X3o}wjgcAKUX6`Pk^d1uCX_Lq1X-sJAl?qQ@r}U)t@UWVo z1S~C<|NK5=rYV&cgBeR*8&fl)syX*z~vg@+cJRv&;_y`jT_hi z_Mpm{sAF1q8Tde7gJ+@zj&q7FsG%#u8Y#+fUQ11(iUfa;y0b4tug}N(%FT55S*|p& zfJl`NJb-2lOHn0ym+- zGswWRVfvw^0sqU3G!A(2>JArN9M*mZI*KmKk*L#g&Qa6NeR8zCLBum8LQ_o)z`yH= zl;L?RtpPKjhYDR9&SJVN(V_!WVTAHsM!48zzz;`Hl>2MmWP=30oM?&^2zcKJx!&?YLjWdIms&7$Iqfp$* zHc_Y#KwWE{m%Gv{0!L!i7_Jd5;TrJIHVGQ^Ww9l)ps**V)uFfSxX$nwdo-*eU@Y4V{I1N(;28MI z3A4WQhEeE0L7q{M0E}e?@AGo9I#@0aP8Qvn&P=S>#eVM$D_yBOT)qD~aHgB^Bi@0Y z;s!AAE1_KXB6_}az!uJUQ|(_!4Bj715}Ds0UuC{albAl3rHJ2Wsy)B1tUtf#%5=_5 zF_iDGuvNbjS(9Hd^?`H1$*-WMxEadSZ^iTd+t41|f(G)MCt18v?j7BV=G!;Y^{s2b zD=(s_{}OtPGvElm$ksP6C7L_e^^wLEp($}m>C9aP7JP-JbX^0VanBhkJ_=OUhoL!v zwyl0w=gM8SMJm6ZU1j|YGd13oa23cGmHu2N*ZvGyZSPzi<9;x*Ec@i~$jqmhQE(nJ zD=)Dy@ALYthhKeu<^FYO^B$hRe0y?ynT>HN7CB34Qazej(n=Ke;Nk1v=b=Lbx0UwI ztuU=OAI;hpslos-gYZ{39(%sJcHg-`7Wro>yx=SeQ1RArqNT!+RT#k z_QR>row3y-TjO2#C2I#yzxl(n_Wr9ErNQyZ^Y8xY9M}QY=*L8j#1J!~L$;g=?yb6%Kb4pz1uCMIT?GGak;dcw%Efx~4EF9+3Fj zS-#x%c!lY?J3&f2Ao_%keaGsF@3l8io+m3CFHvhg4`v(B8yklw&T#H1RvYZ&EZPA6 zJ}9jpZv!71xRc#3&iytp$GXy8Q`)B+=X#} zZjge{D3Pf3qJc~$94fR!mS8RfT_^IrzR84g?fAywi`2o(Z&&FczR-TmX=_?)Re z=%SWBT^qn+T2>;ukF_F0Sg!Pzlz7iIdT-J&IQiPv+I?Y0 zouPN8dq(UbJfpJCov!O~W*dM@njMJ>WJwz?_-noRHNBxy2QsG}$Ii3wTsu!**%IZB z))`7Dp<|b_Gyw(jyR5(YyT5lk;w2l-af>}%M*cz1nr?2}67?+`yc3qe(KF+zw^eA* zDa)HL)wrjX;p&D&>PQLk_adC7LQk>^d1r7bcR#*6I{(GcGyxdEDr6(n(P@%! z5wR2uquGH-OpnDF%18E}JTF5dShZxjWdu1?61BZ5&Wmz>{aH0p*{oW^nPQ^SE{F5o zO18CEu5TWf62(p~RohMAJc#wSpN17?kIm#snM$o4L#@99ZNW1P5a7%_m?qBL87D2n zn@UZ!kLjcHRGPuz!w61?e2OF#t?>0~jlW=r-^u&tyFbSNr~l(W`zTzwWR$?eI1V#o zo+2RJoF+~$3zg&Zn74fG&cvfR0)KLv$eX$KcxDB$sS!|@s}|5jUv`5NPMMgaZRpSWXkpMb6Sys=E!91`s2AAeC@dvxjH$+;`*nSX)Y3idN707sxk-l$hMMPyz!W?w1>q+sg66d z%4P$X5v}rcGI*mTODvUmmMjuXq5of@3ndJJPR3B0We=Cgl0}MGvvK^j(G^NaCswJ9 z(HR2i!T1t!a+O883uFKA9EnQgX(TFJLW$W~!m)XxXpte411nH6L=NRLQza+xRZ?UE z$rcD4t<>N(Qv^DT0zQ9e-W+$Axh~)?|4r8c4AM$i6S@T&b5!XFB;PNC z-^l{s%ppHCJ2XvcK@)lmz03)8!>^Fj_q*2q>)-kdgExUJfU|h>32LI_(%|H%v;B0d zy>-|uclMHxCRV+eUl6yt6Def=7oi90RXTf}YVV-B;i6wh<(gAc@hG5w9JIN6)xC-9ok#FuN?KkvCb9F%WUA-iss(~ZLmN`wDr6f*yN zs|5C6;N#CRBkSK_-t}KT94GwM%9{9XiNf*=24D3FUt;a+=PT@O$a}~o0PdjAyMrF>7W%4Nr~z+-f4hl%!aLxy9%7vh!G{7Kwl<~@WXC`UOz8dTX?)Dt z|@#R_sXfz4yb$pv{3g_1F zy~)7b2x?Dq{xrW4IaPp;nKzc%^1JBKM!9DCof%j#Lf$ z>!uJ|4D>{GDe6yoxX_jPG7S;9PysT*;Nja8#A{pF8x3|Kj~*gkVW7rjx??paFbSFk z7y>x4HBYX!B6q}QfXPi^)XD4;OFl0!dWkY<3MPo`xtTT5^5`;)vci_LHSQFm#7au3 zHK^d}eM)P%s`ll(DtPk627iWp`R?c>{2b$Bi;SsxigbY{cac{FW;RV}1JsvNG89e) z)&^|#J-|TF618`Y$O}R(Q_}d7O>MFNLD&m@H&N{aqN63Ta=bzIj# zmk+7=K#$(UR302zT6-@nh4m-KbbC(+>{N@IK^ZOgWR<}aIrIUNSbb9jzLSq<#cCbB zVn8plczuL8sj?@Re8p{YZRZvA9Q_qzqyqhQcL_QL;AI1HY2$iok~Ym!IM1&yWa8}Od@$G{&wM9|Y+U>FbUd(ZFMBAKheO|QU*ekEAl zxMuccE+PN$+%iLU37JwiQU5)FC;ef*y?+as;HUGeYj3jz>K~wQ|KWp0#!sb=#0St= zzDE+9-=WA|?<=6^U*TwfDK>^bQae*0sa&ZKaG$*gAM8gwQ}ovio#%75HF$<7bDUYA zs?O46wy$_v_vLW+#U-9G`uQx8_u0fM>&(~^6B%!g^JK2-OPC|SgwE#zho`~3HT6~a zey$8?~9r30c zod4+uO5ic$kUzOCG53Xtjke&yKdc|TDu7^_#||} z(Biki@3+D0_o(=tkP};@;_js5cVpt;v!DxOf|q7_QXLNT1^jRZm{(~-92|TnbJtIh z&)XD1cPoOoUx3^(UKDvbH4z)(L!M zQ-FI|Q0N?p^6djbFyH0|O1N9g10M3mc&OcZ<@G1fQmj)!6heDsMx?xU*`4iEk!3(( zDxK*6dvtxEOjfwEtNK7`*%T^I6Ore*%GHlCGuK-&lL0_}xNtUV5x--$s zaN!x|2eVB6vu0O67>7xZ2M4x`bP$TrVQAU z#GTue`petMG~N{AOyNNz#4YxZSQ>X4QmVij_B#u;8p{!DfS3brHUYu>hp3;5i=Dhc;0yRQMD$+>xr%d`V|VuA^?RRvcJ9Wx`$JQ=&R@Gf zbm`Xc{MpNQs5d7TMGt2P>f1x}PIygIcs;2ly1+L)PjSHe>$p9#;GQA#LfA*qV7%;` zB(S{GBwk=mq)(uRZ1_1uXgsIeNzi23jxf+FkKs7)6dX^MwY^8MNjN<6}H2@ zXMco6=&5mqEkgvliHAB%KosbCa~vu6#xjY2okA78_h?9dd2|MHrj7W6iKQ~`ylw1{ zlT@Mo61?`;iAwKHy0-Beb^VFLl|O{nWnbe-??AJ&jWc7%UubXR3>v`K(nGeyI_1FcAm9s>nAmETDe%MlS5`m1{Yu2pIuKQUn{9{XOfBPAeCutM znQaVQrQW_5{v!`EeVmR^!Jez{x{8}G9dbtsn1V+};wnVQT#yKiF+_hh9fj_$H&osB zB9q0twg1cw5r`AKjte}xyU{;%f-^Iztr4X@R8b?VOP4Np6-Iv=?aS~?BzV+fXfY)9!6A#Ka4agIX;j!_4|LAh z1ujSU;e~5=fB9&E@;N+|mk2EB?RmOln8Y>ALCZ~n|5ikhnDn?qf`9n?|4`gM`5M-X z=LP5s^4rgUS4%gyN(&5Ga(IcA)Hq{B_%vGZ%pik(zn*U$lw#RluG-&=V_=$x1t1|; z?YZ6Yw7tH0WHh-G(tKlsI=xDrK!_|j9Ov8`Ux`*$yK-x2e(}!mJQ4E_XwY?X;ct>I zb2J)oOE%zk4u)8xnkMmiETw~XYj|nl;=}1_l1M%83}xrW)_B7=$Cn;Kw=#|fW}YiE zV|Z0-i{I_Nz-WY)*YAul&Eg z#Wksk!cl9<9GT?7*c|5(_S-m>%?F0T8=IpGmsn~A>K2Va?@^xmB#^HsMJB5PO^pI; zOtQQt7Q^(Qa6@~J(RbqEIU?inIDvHI{w$F$G*RbiJj&P-iALh8gk*62vm~K-g{qbi z*jhPFYEXHj1r4%mWfMfcc!A83%&!Sm$ksJ8)h;VCgDm4juAQy+gwo}$Osc+_1QzDH zJ-lFLDRe=u(vm`RTEw|tLoHFFi!FJ9(q3drEENw9eQ5ii0t0`Iyv=WLCVd;LZGDGq zr|+ukFTa64^<{1I>9bU2eIGsM0616=TJHjhtqMyK)K%MfTD6C>KhgQK=>!teS#-8guWYCU;X-+S}gn{7OW25cAp zhYfHm+sGc+@<0HPukCGnlKt&a?Rf9&fBau|^S$Fb@Pi!g>LPIP60~6j%n``K7lgR5 z*BR)UlbPCj9KB^US=$SRlFdMEa02@6*bl9s6NV(4Ias%w{1qoM>0JIy*V8}x#@pI^ zV|RoLDk4YC*Lw4EXqwcxzh%}yN#;*=WIUyvyF%r&pktHZ9)kS>`GLuXs@6NuTKyRb z{9p3w;Mjo7MC6_fFy`j8|IhM(&v5uEI~O_%e9uie{B%MO`eZK!ZJ)*ZX2sQ*ZmFt+8=zE;Ki_o^Vkv)_5e)T`DRY&lN^w1w?X9 zDKrJJ9u(vTZyuu*6ADYPrho@c#NdiVT8meyFo(6?L<7iNNe@gwV-F-@RcTw%=UTM( zBrw(rsMbx_tH1jX?#|vT^gIWe=I%?i7g|~PS2>tTK-1YmB%?h@!tZ{XYrss`_u0^v zFrZN(M=E>Edr!Zc+CKjJy2c)RpT?B_?FxbUZ!rt)FPSvaUy=xHH}3^m)hH`kp&zdmk@S4Z*Z5pZEc=;a^VZkp$eGBQWT1wHcO}O(_)<*x09YDV zhJ*e9JYtaxJ;Eu6E%2slB5>wnT$&I{O3N%SRPOWfXD;*u z9CM`1LGQzX#)cipHQ3NHu&|yPzI1KP63VSYqrL#&4Wv+pdt*zi+p9eFBc9ebfn4l) zZ?=i7f$lQupB3m_C|JWx)Q~)9vIZGo7S_^&0(H9@8bl3db*Q7obrsgQ+?Q!dz`Mb^ zpAZ0h;=><;TD~oWz83vXndeSdxRGLq15S_$O&tZ#a7k{D&Viqvd@w~Enj-V3&G0OY ztgvUs2z-=_8qzXX!N8d*mRVzJX!GF<9O!Vq!I!wH>>R!k@U^z3OLvAxMwb}lj~AG; z$Rh_Y7^3k^VKz}}5t1cl1@H)SzJ25bNAAdVj~pmyZ0>BsWQ`T|@GR)?-a;eS(SS=) z;yFu!JA&`umO*nMQM==?GUV0JGnk-fFrx;yomV!>oi`EPY@EYj8YT>P|s-HB;R@h z|8oHMuq&KNr_>tt0Q(9+5{r*U5ZF!#+;KUoKd&?1^yAF% zfwOm`7xtjXMWo3Vq(S>m^mBIH7gliapeVNyUD`K;lQ%kJbshS89lnWxB$YT1h|uUr#gXCtpR)lH1xeh z@T!YA2WD|;jzZJ;5PM@fhHL`dYh-v>sPNJ-fNijF*0CJXCL0=A9yEFaXbhm2sq^s} zXGjzJwx$GHD22bYtpK+z3*_6lMw*>e)9(rYNAlpZdLY;$i0loM( zKUUd+R;JHGy@DL^E?w$w+H7U1%@JpMnejmTn3MX0&54fT3H62 zgd$qpQsMnkV0}uo{-O-}M0uurC^Uz2ENCTISeMjgj&5a+ts^VkIVR5#ri&~w8o(yH z+MT89BUK7CE<}yLv?4S|7l3olDx9fV_~zz=&}sn_nZx-$4P6qv0h=S4-obrjBV5Ex zg)?$n^bB$qKAIp2-$fqbPZwFbpDuF^A1dsrvrM`3EJ3J0!<1PssEob~B8~GLfhGTP zaZPeLRq8#;w|9nc{yuZAQA4h)72y#${Lz%{CYy0U4c!c}lQyzfZxrf(u4d?pp zcx~rCdczweWcLFze~_#V9y(IJ`^Z1KD>izNV^VwIja5gsp1dCOXL=7D<)^n?)g8>0 zWWK{?D}KTkD1VH3u5Sx@>K|fGq&;5|a6#jxn;eEnd6MQa2Mu$yU4%0MA8#E zGT+n^CnYxeHlBU^$Cn5!c+)+2{+mK`@S99!`!^*3704)gs<1@%fFErG^WT9FW*7T@ z*PW_vf)E1=epd5ldPNw?3*N#;4huD536@gu zs1<6vuW|?vOe71vl+=<-X@m9r?yKKd^6gFN0GbI~x)}$SA5B&UA-s>lSbfVny$W43 zTd0iIcdgaVo(&i@%JsetS(w&TbK5>ReBsL1HyrKVXIAVRJq%e|^j0Qh`cHL8@|@IUofeih8~Y z>F|MzsgJvmQyQ#qJqaDc4z3|HTaJG7CgQxELVBaLSh7^uqUIh)33Rt>GV+-)T zksPqqst_CrKi627Y#zTBa^!$2v_=|o)G@jx$xY8*(!P%?tUAQ&;i-|?%=W{g472rR2X?)Wt=77wt@{|O!#Kxm311g5p zX4N>u0Vam7FocFMGL@rf=M$JM7h_3n37I{fYj3}4xZ7CiXvhnyOmGm8D!`0PV+HbiHTm9$&i_-Fci<9y)irro#zx=Zkn5=NvGzR zvWc-J>Nqm(=h=EUagxF%O^~^3D?BY@geU~>&!R8zjNApGlRL7?V+>7@nBZ!-(?X44 zS!@&wbwL^Y2=XRVxh#Lk!x*sozxyiaezQn&fJj*|S>ydbTnXa2%;g~T~z&5-e2}0Y{$SqW} z6;?H0<52@UR?e&m*&Jjf2-f%hf12JixY7K+^W5_7 zUhP^=k}S&}SsFT z@lVWVR=0Ebpcl$JPm>03JaWHF7HJ;RPt(Vi3yr6i$wpXS0R<=kV;0$CJflFrK}Mbg>HeT*{UA$@<$Vk#$ia zFMdT~@Z`gjnKC&O>rcP>n?hu2Iezih{lKlp-pDU5)+O03mkl=mVnf$(B|!)>IayC4 z^X2D-&GYB%Ko3*JgEP3zW3<&r%n-+v3LdAIw@-ou7o)*B+Ijf($y9!?VhYSG&g80j z?@X~UzI3o0nVip%1Dl2CSTK4M^Xc+Y7Cmj6^C~%!U7emvuS|v~)A8v1O3Xc;jX1^@ zB5*uWcwJ!c2MO}L62+|t5l?j9VGGXMOFIw!=o~_&gQv*$cF8HpnMTwu4Lqe8`2rT@ zWhcj^*Ezo81sf$YtzuQ_{d%o!)JpiKC%Ja&gg-KY4`@u@xQvbvg)^E);<{$Gjm{a^ zo6TSoPUd`DlHQI)YFUTxK!-*YRn-cRB;0yDQ_J1gPb}_e=`B?9-6@zg<&Nm0d~|A2 z?g~zcU6GWOtR5A)`sDNH73lQkHg8;xw?P?Wh9oaQ=^0BY{qdX*9Mw#pq6yEU7QK{K z=bogVBV)zm?cne6W{Z1)ncNnz!ityq$;WK!@lEEuV4uO6OvRVTRGeHoCbB#YV{=6d z9fw8$0HE|B7KL<8GwoR2eL__HmKD6;NHB%Y00v<9*Urhb9sd&;!-B)&9k+Q#=RCRc zF&eiuq65oea&*Sf(nshdfyzD$T1J<6O%*G8cwKOOQEYX`hojSrBZcygkX{ubIeS91 zw(^~`mkK&$M&OIO!9JT0AAI_W%|G*MOY86-3=K&B9X-dt-`6Yq#^8|V54#3c-)iX) zzoOQ7exgRJtT*~Tp~v(#IhtMD4}YyCW`7f zoESOUdirRX!`BU5b6{F424*}xo&f_`ype0d!0gI(vu(f+0c~5A^Lo@hU7Y8gc zJOr~V@O(w7H<44&Nuj0Z2f0mBk9e9fd%4D$d+;H-nE}|5*0>B(SW0v3Hd#E@IkI{Z zYM%Q#_6Bk(vdrzfx*9HkA4XQw^P)c<06=Ra8ycCn?)ISC*`RSxcJe0syt8Fy_5(1D zs+Jkk4Dad0zt62vak5X?3p)>>k$i(6T&-`t-z_GlKGjuUUMW1)KHIR5OnHoU$n zsWl=i?L#egd(actotms+p^&|l0Y;dkTgC8OZznz?1+)kovpM|%aVc(z4Z9Sajdrq*U zOu$7>gj3}>e0U7~dXzmp!nHWc`HwW`5IfBdTvyf0S>gGYYooB|;<;hRb8qGugDzxW z3kFAJxv%$b>rgwHp}k7yxYQY6QY!s(%1CZk$FomonO)VoXDZY`W)uQzOg8KoSNZ0* z4eWddI&J91t>Fo)CVmZUQZ(YL0dp!Fc@bzkiqYXQ3&z`rKoy@<&akn!(-$+STaK=diktCq2h1N^>WZh1?OhFQv_VviF2+jx!Bj8T1)t4WDUEXQ3vesD@cc$Rs1yD%x%fC%e!(^{~$lXhKOL zd$Prsnx}}| zN$1SU0kJzJdc2Noh25vz``cQ89g)Zws{I`!b-mg?jeA;9!%xt#slc2R^ahYsO8?s8 zwv72o!uK%(9yy5DXo#+7VQKpb{)>I`7>@_=Ec7m{9e3gjYytbIqwD4p=k`0`$!{-h zoxd(IhyGGziF{vZ9{WMR%Kw_!G4+<(KlhH@G4a;rrja+B=wC2EpQ` z$!uL$xMnUJ1IZf;mDBnFoeo^UH-whaYv5nE(8bijncn7^d^=frbV+6({c%^n_&X|@ z@!M*(<(p!W>W`iF;2+aV{`(CLU4JANsQ;qBSM)=<()d%k%=9x2|9mD?Z%$|mL9pRPvbP!_Xr*6o&E1!Z5#uKOr5;^Pr2Ep%H+M4{sX?*#`K11k0We;IbfM-#Ch zy>}%nHU`u9C5jt+4~py^sM%%7B@Y)peNj zCD#`5;Vw<4H!_A$GPm>im#g~^K40d3Oo2C2HSh?O;XKK`I|V*IYW9pd@zML!<M+m$OW%EgVv9cFIkczBy zYXVMuX8YvX4B7Y-iTu`>FFqFxP0#xRbEQCL?aU8X=}kpn*$4+7L-C9`n8=#JXm!kY3OYNLvkPVP zy&H-li5l%~yyjh%M`v;}-iwAAOA}{~$}q2!k*L}~d!|4O+XGhCI5l5rK`&j8Pw}GM z;3a!i|AXswE#JF(yY(j{YTpNKL+UGJ+}FdQv=7Sd-8HX#^RQmUE@-OfuCMP>hP94~ zaX8Cq{@#SqJ~rhYPtDWOlm~07pd~JonYy~NzDqD-BrCJU=KQ(SbZYH(`nFZliZ^TP&^jbPS05ETgj`U!p8-AJO%_ zceQ?CKyDV(=Oa>>ec~a7O-R<*Ft4MV9_B{;F-^^bN+O^vZCw&$`~4wpTeCpdc~7M2 zZ< zUFnM0>$`?6jR1vmQ*bO29*>U(BXK7Q27YfSMh8Hsy>rApFsuyfWV*0ksSBF)mO$7O zaci|k&ClQcP&y z)Q~5ux>(n(sBaUhwYGqMKxWW)jc5(@OKs1h^4_qkhicBL{-&tTF$&W$y`R`WZUg1Hc~d99%D$kWqKG|0o%*@d-&Z*+E! z9)d7cg>LdpJwJT?eed1IzKO?;L(V5LR zbGE$w=y9TW@CYvM(cbyzkI}9i!AI}n{odkSDo4f_a=k;MG|{HZc1=T{vsfA{?|(W@)=+qMvFah0%e!^*d0-~J>NI)A?4hYVtJQY6cS6Z8_;WaWU}Pt-gfa6`r>9Yd0B%HUC8r-GZO|u`n1=1n@RU zzi1#^K6mQfQ^vyDuA#Vbq!>*s2z=4$;n9hV5dKrdJSYY?kr%3`WTYJo)pDBgD>md- z_AaM#)t|I?4F8c}So!^H8h8-&r6m!c3%dGJzi)i0rn?`&H#rD*-3tfa!(KPQ3{9VG zr5Db+3-1J-aO*wjth*v}1^niP4zQ+nx+FX4@ao1B-vuAt3vNEd`~{D;G0f%6thPDA zE;#In)9;Wj3%ULT{A@9LR4F=o5&n7+bEb^fCU;Nf#P|k;&e$TnPEH7)j|Xwb?8J2BR8{!%m0)RbgGGF!8(Q=T8hCkT?j;>_q!Da`_{t^I===)O=Mpi{ zE2bI`i6_C#^Vq@+&g@<^!(W-nGti@vSHu0Q!Ijj3$(#~h2DsKdynP9tt|AANmylsW zMrC@yHago$0B_Tf!hTQh8%OiM*yR|T?;}$W{X%9?W(kduKd8Vj-=B z=tA{40)7*Uq*g-A-pJ1P0^kGw;@)F#diBsnPpKU~)kyB3!cUfP@!+Wu-HZ_oO3y5& z$2Xv3w$!d2zfjE-w}xa6DsnY}dx$#j+-&OmWI$%Uj3w+k{)X%Dp4Zim_$SP(SN-G3 z#^p`&%AS4M8A~tMjc6TL(Xw5}XL5-}@!I_17xlB%C)Wu${7_~JUZjuWvcwX+$qn6@ z-h9-v|Lm`N_s+j+qX({G7|x$`xJBmN_SY4k_y%q8}*_XNh!g%+Xe zy=H;_L!l-7UXR@RbNq7eC>-H;`!&v=^$9d@vN*qu?*A7m`p}hX=f~u8U82+bn%3xR z)EeBKdXsm+>551+YK!d3?KZ70mXC~9Kbs-wbOKGpxY?gf06e7<=vL{@OS{IGQkXO5 zeY2}6cDxi>EUD4y(tKoYJ&orhL$+NS-gX{s(A;=_XBG{>3_D_iFKryWCC;83=X;OA zlSkRZ#?WSuqT>qU!S=Hw6V0;WW_EUfbJ_5PnDf;$WtY&Q*GZCBIH#q7 z%(iK^`ph=9dS*367xfa)lt$y5)o8p^^jxLnBl>_$8%nDcfdzwgVj0eR+X_!+VJ7^S z`{w`O!Bgb}GhPH^cxqV>|D~N--q(`rtLE9Hn9OZU;JyW55X0m}faA@RIpt_ZKY;gr zS%^+w4mZZLXj5IwwLt@oRgy;D4#sc5h=1!$X&(NAHAApkm~+sB!dWK3@~LS|n8qx z6F;YhXIqjhTUMU!7FH88dM5G~*6r*cPIgK+IG~4f%+22KO0Dj?z`C2)$CMOwx(XJE!50c}eg3JSv z+&M0!pFm1}fR_0IoMGEYu7Z(0#{jOZXBO1)Yc0=96>@J?Y5$3uEFsnM=BWZ7x-3^c zmw+n>m*_R)zx6=FG^1^}%e6wcZ0s$acj_nXk$>4CFugjU5C2r|O1u@!Y<{2*W$^Ep zE+Rbnz%{#irF8JPK3mzZBNzJ4OtxH4Zrpt`R{3YC8BG?xlC>sJWd5FWbh-)6MoTKc z*~ko8$Ix{ro-W*;&aU3zX1Io4{-$%Ha66V-yMs>s-pc;-d+zDQo6K&vFv{Pf59%I% zgZiWAzpcj?^^wNx|3TM);@fhW;hP4H^^X;D;~yFg-f!Uf|2Iu7J>O6(P2UxaD8G*u z_{V|~)lZc&-D~fCaQW5uF5Q0PMt%2(Z3E)#mmAyeUATI$Pwg1f*SuKl86LSU9H?s- zg$AXjBsof%t`SL$uE5BU(l%`i#4_Z^&2#3AHFb@Q39YUvJkFE&ffFr*l4Sd^I@j8( zEMINtIxX%!`(5Sa<^RGQ@%Mb@|CHZ8`QLNv`~R3KZ2cXcfd4tadHOeWU;k!)Z4Y7S z%zowI@&3cle!VVH=@W0fa|M3tw1hrt15e9(W&eD2I=@Do&7<(3SfjepJS@4~J0$$L zXJGil{-Kd;y&`E{>wu=ES72`$6ofv$-8NOmA!|XXg4Zg zUnTNL3X9eA0`UQh)^IW%naZc>;Ys7`PMc$kONGtDLaDl6C{|Ak=yMi%hArS@O|ef- z;WwP2r*8%x5zEohWUjb7Nq6pqX{H)Aj4qAxj1IdK3qf=%L4<+sc7)gysk}cnx8#$W zgKqA-0J*Y^`g_=$cgFz?qA@%f`L*Mz>D<~(wzNG{+B%z_T|FK{s_d4VeGd2-AZS&-r72ZS3EDHyhCfjRG<&7nU4qse6nOfCGrV9F%tp}E^C%?4k ztEYx!wyYRWuE@|8h{^x&66rj5?=%fuQ5ii~%X<$m(#`(*{T}HL?lg6M?|$d-Yj{rH zxz*bD!S$BjYb||>MzuNIBi8x{Tl$qEI9%bB?P z*_W1+C%+!LR^NF8&EJ)q&3!ku?ob=rjlTM}kzTyoit5QrJ>BDiOZDwtXibQr4~d7g zUI{p`3}SEa#=Y*=mR@;luf*KOUfWXFJ>1mTE1}P6y1yF@!R--EKYgsjBj5#H5}SC) z5R{Q$DQ@hRiSc7-b-ro6z!KJptYc{4EqXp5Lu0pCeWhhk-6k@bcrMvmhji9ffzeG7 zMmXq=jD@_T(NJJ)%x(8XJnnGdRztUQWKiL=X)Gb~{~>A3KDQ(6RH^jJH{X75@TV6p z3j4$wLzLX7dre)+kFVX+wFpdZa)-hSdoWBlvA=ad7HAvMNB-mA{#{sOG|B(?J3s7x z|4Mz|_4rFxdyC=!vA{3CKH#6_Tc2u~2ICh&ho@9a9<>M<2154_Rz19X*7m;*lLnf}NbnSTJ^{TLqL)2ZU|i@is` ze7XPdiUF3oK|-+uh-|7ovErz!YaVRF8-3}2lm zvwXo8D`c4ivh225x{v2;S*7@u#@T}=k_+n-qw)E%aC9bU^u~RCJmAk>{BD-c0PcfF zQ)qoA(Zcg6+ZZeCJ&NI<4YJfa@IH8gQ;SrRmqsf)kH!l-=W+5kBg@qj-{gGWZt_i9 zy^|%fNO$b|%<)rt}6iF-^Yxn_K6MBLaHQs1a7l_RRA!UsA(IirboE^=l8?6C- zuS-OruQ}j$JmklEz?^uj<(;#+sv9qeXDU|-pj`+BC-Z(ZW5km0gvl)QM5l8eyem#P zZsTh8*torOrZU(ABlwzz9pR*ij2Ricnv`dZ2);(VwDDksT!c>atPRLhuAmS2>4-r6 z&A|cLHwa4k#=xNbTY5Uk+I!`H(JwOmNM{MXBRBXi8XV!9bZs`W7!8*XURv_I=dR59 zv14)b#EOpDi2t8_?us1kG9LMYkQXRq4;O-$2+)S3$1je+;sfGRT_XNz6|cn_<7wH3=CgOyf^s6ywE?H8^*Ih6qK)d zMCWQ^NA0wZ&GwPmGsNd1B#VATVh9S*8`iSGv~&z=>9>Ht%abv=X~%!cy|dxMQ^p@% z_27^9qFr$DXPul8*b>p7ByuMH4ih;9M*7YS_$v(HNXAIbXM?tZVM2koVnk{S_dve2 zYdw=q-7?Fa8%_N;?{rIBn3W~)o8}_@7jT5+4zIwQW>sQ?PfW1oa9!tMCtOaa$lxDJ zy9#gSZ(WyK!5yA-Ik(k^zp4VyUD78kWJquf>qwG%{U0dO3rWgdXp|X1~ zvU>Dvbb6&q)NqxEkQHZmDsR@g;#yvhK2tfdplvkMZw#KXU)!Pdi#w+V8dtT;Tc={9 zf3lNYm-}#OcO|CK^?r%@WB$3+&?WgqX7pZ>S;N;w=EzOn|826&?ure5ye#>~0j=Zq zh%tO!Y>(XVPNZ(}XYPg<_uE$=e%)#arLWRM@uAc-dKoXsO*oO;XcFu2M7FLSKkqnr z`m5%>$G^Pon%(+PKelpV=h3e|!Tb1Lwz&Q(9o~Q1Au@hz#1Q_@uqpiK1SNl$?5$Vu z487(UOTMo1O#cjy`)49^;Ky`9z9!N~ekL-7emEcw86ZwTkdqbMt;W zY2kyiWJqVxuq=>im*YFjlHr$~+kBWso1I?Te3XLkod%Pd1c#eI+cklvD9%n816zxt z?H=X%>SuojfMRFmCkxI zh0NwavSK0g#70M?mFzrohRhmUETb0N6B>7F(>$8qut#P}Ht<9{{T1xr`?mD@i5)!? zIM*siY{>}kZ$c|)0x#F2WmR#}*7nz0KAjNnO+Wm9o5&vPpd5i*(UO?647{(bnV4TE z&!&QowT#YSvzC>KOuT4;<44D^WhcuYzYAWP;vqGZHT}*OIbH{~U)wk*E%dvYYB(Nv zl^KrBjE;yichk(@YXQr()-1_WOH~^E*mD-zB3kf=r_eh{!LHNI*q zT)7SX31|1doi1_*nVnY7bPHU7nM_bq4eJ0$FoLHT$k;Q0Q|S53Yq)?qSw2?45lizs z=Og^L?zPjGP2ew=IwjUOMikB;-f09EV}(NZ+O3ARAH8wm@*DI$eLO7I-@4h*O+}fskG?Fe-W&7ws;$9xkvU3MZmerq zIl;U$BjBldwW%j`ySYCK%|3psV{p7rW|$aM7~=HuP2yjgX&h80TZQ`U#hWclUBia8 zTg@Y95=;0$9K8Iie_&?$M{lC^PqEy_|G{ke-%?9!|G+i+59Ph5|Le)8zx+?8Q2d$B z9esHC@QY{V-P1#pGq6OCSblZye1GTs%ah{P+1|>|@y7h>_9Ap%)E=3#H1{dww+AG` zJM^dD5~wB3Vy*0x+pQ{z(rE4K7ctiw`8gv z^eG_q;jq%QNgnvVZ)W8j{mwbs{8MJKV~XXE;i!&@<~rFtetvTF=~sAiSF6+c-3_$* zYhYlj@b5(j9bNqSdHkUBI`8`n#Cf8y%zPWU{n%I$PR$FpEcM5*}@wGkTJ~oH)Lr0LB2fYbzDfBr}=Hr_k!mfvr!&&Bf`XjIJL%iLdOON62tN z(zxqAdHEYpJXtXK(f#AItmS=c<_nwD%X*pRmNev#nZUj*rR@{P`SV}e%iAX!<|PUH z_6XYhHfM0M9?s;N-9Pm)JJWmczdyRwI`YZ~SL$D>>k_?oy;b_N_pdj;bEkFi(!CBz z-JsIZsdvN&I|g*n;NwcAC!zcJ{*Xy*aQkikXjG(kk6mdVj7{a%GrOlx%k#^XReE>` zq@AgNXKo#3n<_kk-f?VFL?r;eGIXJ)>d2D=_MFhr+dg zT+XoP+MQ;L7-HRFbO!WVqgSgoxjnX^!)CIp-oAcq=$)pHmGn!WaIl6k0gu38cA6*MvZtRU)gOhV6 zdt}M(o!-KXcoLXicoffVf68wBl)3u}-5-zXXL~Zca`u$2z1p6BIG!qR4T*KD4CB>! zy0pc8weA_utSBt8w1gJimwR0|nL={OQum-~5-Q*~N`% zxK8Z6XOnRIQ8@e%Gks_xQw%4v&?yRnPdnk~1)owvp@Og8w7? zE^Fqz!5g2p<#`_0avjN%b)G)`!UH#K_f3@@X!V@vp^(-uG1rt#_Rx&M`7Fsm;9W?VX{b|IQNOF*c~mCH9!WPi}&b2duhg0tHU!;^E3#j zb7eW*GurL5&sAi~3h4zJoXV{Us}H^q(rMGlYrY46aoOydd99;M^e0_if^W2U4E;fO z_sBQ#0snai+(p;0<|hih`xh#s?~+_&yG2Go)1cBVT7U4R3*B9SoHk$S@F}bN7CUgo z#O!6v)OucPd2^XnIoE3~Lt8gSNdaV=q_mtWrQKE8rwG#AX=Kx$0&X*41R=Dg8xqbqPH#5<@cY_}*>!je!YPUA1c#uFMJ6j~t-_?NzjaYw+KT)DAA1 z*vn1e$p-wUdbl_@PIRI`J<66FN zEf*MjYRSr3W#Ki@5mW|mDq*oJG4F0z^VJjLGM3=a=7o3*1@sH_fm5`qZKHK}JBI4- z^~ihK>D0`+7I<|dzGKCpJ}|^HrH9b(wp%R&O&`~_w>RKP+kWsBeLv5kD{@M5n1%fc ztEgLMlEY==QQ61uzd4Tgc#_X*l05DSavIt5s&PJ}C_Bz5djgh_gJ8CD;$K)lAogKZ zL(blaz!)UgeOYCUE-KrlR;9?~x58^dmmc9CuZGbhguoMsAl@WOu!@BCfO?Ap`6BDi zxyq5vKU=m;mv*e+BGz2>wD#+ozuCCF^*~3CzjCHfl~^OQMDux@_%iQnz2i6A2V|Gv z>#td3nLF{!)?Jlj?0UnH`kKl+aRpaqX~J*P zwX*-BKfV2|H=NtQ&w_c~G?u;TnJ(Uf@V#!2&tK;`aMKaX(`9jV*B?t=>=2pW=~TEc z#$LA zuU{kXQFu2hDIv>cF)-G(GE8E3pVZX|wN#Z{v)6bKwKJ?-TzIBv1uwGK_H1-WHoh+l{F?!6 zN{yaK5znoW6S~?557H*Fj&;*ZE&#)l!HcU#$+9Ke&&b?o##3M+m&3w2XBh)OYx}l`YaiKC6*)}Rjjr9z{7DD*roDzkPcCmk7Z$)E7fo>THtrXDZHFh%gIt7d zC$Gy%ue*DB_bHdcCa-_fMh1Y5-Q7mcuMNJ7oxkd)O9eaBmKQA63nz}uYSS~8Ua#rU zoc8dPJue_UJ=#8Ej&yX%>>XfX zy*f{V{M3?AY!3E|%%Q#kt$$c*iz)a#4EWIKhFk(>w0J4rrMXTOKpGJ1lH8x8_V2T+Bm4^JHItiIR1nl+@I0! z`R!qFf2G3w4Vl#VZ^8fm^_|A9e|4v!>)*&Ex<3&PE556csK2jN=zk=Zs9t^Z!lhTq z@_S2d30z?|xZ5SrH(kHi(sl7hlT4ruILH?ZqNkhPJbpIcB~V5`yww(^(|AgW02G-( zMDLv$Zyi>THTDT(UHJdogu1Cdg)@1xWoTZk50)3I=ZDx>kMDO2Pg;geU++Bp^*=%) z|8IQH|NQXf*Z=R+FMjv`RQ8|!Ga0P^4KKkz>_7bcZ^#{cCN=t=foFb!zy8JQ=Gi&? z^$EJLb7r%rhYw$#7b<%@3zgj>*;UizIl1b)go=-D+!r?Vh~)H&>*eNuHrH_p;%I8%nvY|@RMDpNVjdeYVTNOofm z>@Tx<_HsTxUz#9)cpTh(0^&WwyoJ_ohvV!#v9NPK$@ww9w*PDz{xHFgJ;{AG&Ha+v zIQn#+b7BTOaGd;<7_(S3LWbY``e|eu3{c}9vx2EO!FIIw`{l$&j9JkOhQrydN$Y5K z$`M_jSapwV;X<5u3(HBXin~aW7J^khNa4i=Hq{i27 zcM8AXD>r|i4$8l{Qs43F{UOU+*ILCN4w<9ZMTTHKTJCnvr2&M9Lr|*{r9G@73SJGq zqq}gU#nw(4?~uX6rW&Bd~L#`E*OPfoj z?W1}B^nBbgHXF`tKEb|tXx%%1IWi#CUjN=3zxZ%S?!2wg`S0HA7-}?yX6b9$((FI^ zjhU`l6@Bzj?3TX!eab<6Y0C8nUuh6l4Bl)XY?nGmkux~kF5l~JN36uljP+b^8|-N5 zSM~Sly@FPqQ&cZ9i0Sv0fDy>ivT4MofU=t$HmN0K;Me*)ErhbGZTca#!_+6Yn?%N- zmD$9C_uWVzg1J}ecA@|G`+Z{px6K={n>+!##UCI8z;*Rjqe%ofVAfl`3YpraQyQIN zSJ-Ay>6AZfxi5HEG%UI_FeLuuR-^E}3!jMYHg%{v`^Cn(K7pm4H!acFJ;eAsTPOf% z>XGZovKC*w)7o9v($oCLdmlG`c)g+X((UG<`<(*W0Q!G+cT;2Mpp*Q*XleJ^44&zT zD?H&Q@6XmDHS0SEwR*U6Fb%bu*Uc(2A+>qO275;2eIlJ}u&rO!*WNAYACl-t@P!al zY7yV-5{L)oCZtUcg+%XBO0^!PT<=vWEfL*_+N~#Z(by}sStN#lOJ@&w?sW@X4edhL z2iMv|XJ7wa@~i*)f0A7~;x6HHo3Axbyh9eE4#gZrVz6VYNv9Op)CDa{2JZ1{}iL`swqP)xAdxWV`|PCCA~; zC)B<~9O3kMY4cHX=jb_|Ci64t<+Us^DOi9%Bg15OhWnpx%bhrUdkp?E41X0|+B~U6 z8pc!1`uUBs@o})h>e2I9EW72#5O1`4qvmiTZ9{WIW>>{Jo?5l%N;MsP#*r!Qd&zM1 z;dOQvHjZn0J}UAJ0B7&viSxJyXrwPws*t z6ra;;tzkndPe(xM(BTRvjTYY|IK-sh zX9MI8M9aI6V(6Aa5St#jV^?ndoH=pNf{#HRBlDT-MvAUV0X|Ij;GT+kPD~EqFygO% z^n?Rrv*ixQ=`w$Enm-*Jl>d=Xp!uWW0qM6Ca`SgvJ4Am80QtJwgKBr1H$Bo z%N(s{KSdi*mH`fd1+2o?tjOsKkTG|H5o}5E$%)uwMa(&5<(DMvsS@~Aw4`$q^qdMj zw8+16O5gN~irrhyV5h=+PZso=mY+ioUq!=gt$`C%#mKA1Z!2dJhkvVxB^H10rTU&O z`Zd|Jb6^7{6-$A}&u-4SZpx4?#m`hZ;%QzRp8uJG7MxCt2eqaLwNElf$17mc#Xn$jlmX99W2@q7!@u@!l>c3dCJ5P=3 zP)gP?q$Ap8)JP^ewudcXjQvqO;b;NY7@@X9%#5t!RX=mTH(BC+(oH;BICUmVyY{8c z19aCLCeAh!?@v#T1Dxfuz#hx=qEToP8oUh%Jnp;W>6=&XbY4>XXYYpQH(Kycb(RjE zcjL8eBa@+pKhsREL9=5b*G#b3efj_zWR}tU%)-s&68COC`bvEA;&;-G^DhPQm7~6y zjZZsFQ=1LSKRB7cQl{lhka^hiVDD%DH@}Pb|AJg; z`G^jjOAT#;>oS$I(P;5^8jRk4t34>zXsq&E4gCgPV3xVEIBSpQ=3Ns@IlTLMdg*i4 zNM>Fim}T!@FSw@)%kHU_Jlc{1XTmbRAAsSV6?C(CmdPb}{$((=W&Hhx>B8=kYdn|X z*_57M-o_iSImfw*FJNmHE@%o}(F9z1j0`-y9$P**b~AbsHD(rVXb$Z=SuOk>Hn3*r z5}hdQI5mvU1U7Di$M&b;!oVf5bR9!!?ee1z=%zaGv)6gq_0hTSTP@=`oz|N`r(SZv zUo+~jxf09!9GRGMK*x@c-kGZ$ab|CEjudO$J9hSUq_rDF)>IiAN*-`Y zA9;0NctyuVX2Y2&9lO{;ooFZQWB3Eu{rUYhC%mF7xwPfs9P@J4gK_M77_?nv(zvtb zBR4t)7k+ss`yo2BO)lFi@qAl&h7W>xZG!B$+&|ks_7#5b(1YI63fJIbXQsPx#~aU- zfLY7v5)K^TCuTTUat8_$f>Ha>;I|Q>)e1q?OrCNJ+;0cL3%x@+cVF|6rk~k##4wf> zc1Y}ExqVz?3C|k@dcP6VfurW*U{>*g1^WQ(=nmiZCG)%f`Qkoa<0Iev+JT!+PZ#^S zgPj}9WzWHLpPl^3!Mx&}Up;oB#RjJbn@F$mc^zTh+V+EmakOsJjq?y2;La!{X|%Hc zh??>f;K9?e_2W-R^P3O7ob5KiQa3)uFtbINJds+zPLQAN=N$Jf@0|PdRYtnpHu%ey zD^;$2{$MP{eRL4dJah;+GL-|%%I*{6^4=pgdMC-s?$cf{?YpkYrH{er-h=P`g^YWd z43!V|pZ(^lJ}`5!MQFOnOmTd_|F(J|D#vT@q8R5|SCx!t07MB3p>`eLb- z{^hN`e)jf0^x@s<<=uAn(ju93TaMAWD_~$B^IgAba)ka=Fr;MvxBNSVwEv@AZu`B4 z=DvT0uJ?Z!5h(t!yL0&48ino^v&r#lZ_nUg{N?L!z4F2JrniI|$2I1)dyQSf=1aF* zx*EI0(z+hNLV-FUQkmwCPCqYIPhZS^e6z{-(|0e224&`PA+Abz;iNq<9>3cqiK16d z3@dEY4SnL-`~9-aoep6+OL4%n-~P>KBP!E*UGvaa<)deRk2n0E(#zHV>+I7n|9h%( z`rl_ur~fy(b^pvr{SVWNYk%D?P=1d2?d$UH`R`V@kN*8S28YG1r@y9e{>#0yXP@)$ zXW(83TnuYOXe}VR3Eb-%*0%Rcm7OC-JzY{(rDfDTO;2f`(rOn|{zV5>yiaP5qA8ye z>pZJdi)*K~&h62};t9D@$C0`GAU~NU7n=9Z?1w53?c=8D6-p%uK zm%*I)a|`oiV9f76{&F!mS4_4@98<38(gK)MK8&s^IA6&WcFq>JAO3Q2Y2$bfKhG5R zRAOv47qbT9aWsI_;Fr_r2B*-jOw(yH!vk@KjWT_p3n90q^vSu*^^Ap<@?F?Zc*DqcgJRzZu_UQAJI4ZqxWyNeD_B4 zz$^5s|K*+g9pAs%GW?c5k-A#idt6uFEw7`uqlG=Vo9wM&GPK2=LmGJ~p3)3!ojR>& z+Ag(^hppoawOob5#=)c2>1=5wkuFuxgm1wKR^bP?c!qB$iu;vRd8c&ph9-nTi^cpcH`B$w)RhMH+NsSdV9EQSfOg@7-at+ag+N#vGeGQG|!e;Q@6x9 zBDXs5x;u~$;RTTCZnq7qjlMCBROgoT3e|me&0QUz5I`zcTYB$zjdat!*xxmz9PSvB zj||EUf?LgfVgeKtUGV-bJu-E#z=%#krc|4KTA9&lWTrCRXc{s#4@gb437GpOdZ*YD z35U@g8obfK$2S`-=mY#@W`-L&1<|Fo{j5;$S|nQ@Ez!;q*%L=Gygze1JSJ16hf|rA zb4&zhnAG>l_}^t0+v6F1kY795)mr@PfUl7^Rax7Av@isthbO`#)p^F^ z^J_8qvA}pT?@?IXu9g8wSfFwx=rowaFTOgvxJlPv@hSSf7t^`z7qR5(^K@zZ<<#=V zbM$i0$a{G)Hn;WF&hd+1G4p=GO!OIh1EU+MC}{0jLbYljE$wR^esv*XI% z;}iVjZ-hEgt?>?xKNyY1YUgTMdX0tfu2u(&>`{X`ePmui0$)(l3 zMY2Ll51#*~Kn6(`b9x%@e~#yFhQDi?`D1b-T^@tr_Gz7?bgLXBCeo`@tDEOD^ow8x z*hQxIaNIY$LYCAjnG9|X7zkeboZU4#XCvR!iPoOzgp_kUz2b$l_0pr|qj%2}j;HMY zXv%C4O`7m|IhYx2ZuEtr#3ETqo5-57SlK3w>_TQRalOf%&`f1FjFXv?iC!IJI8iX7 zkG8NEJJKtgp5+am`EWylMA2mlCEW{^!$2C%U~Qg=(?JDx36;F&o?F`XdgBY^8)kj< zB!qe~Lip}KR>D-!YHe0lTB^W(pGse{NhBbv| zb8Mzy83m^>xhM4G`)GCchz6WjqcV6jkd|i76F2>$POE3ah3_(iM>a4zQ}U;3GtJ@_ zF{@Rd&KYC%*mh4X?YnB)BC>roXf5T0tw`A$$#&n?%#m$0nc0xd=Ql-UPV`~~>s+oJ zcI4Jh8=}ksh`4_|)F=B62^!y$N_5{G?h$_*E#RNkHFSTky-)TAK`kFDjs7bVmHqCp zNY_%|B_Mu$+CbhFIkVfN{1YV09!c|#8^5ca?mqhjnsoSFteER&_%wPPwx~i{LVLYI zUQ=0vR$2{btIMs!yVCE3C```qhF*U~PM(aMj2$AR=H<-8O7>PaVuL|V1LaB_hRiA5vbTxMnn3j;4+ zSNN;tZTLcPiJ3(*^z$C{4Ic6bYdb&o(NYZ$U=QA-S8W6MYsJl8;RX(&;4j$>z(n@Z3Nys!` zL4Q#R@cD52ua7NmKZw!U7h%cs<97fq+VL{C1G5$E=$mb^+`5g=-!!wduA}cs9hfah zFmw!Js^}ikxEec#b#-djcmw|9d(FLyTXg8$F^*>2$OP{OFzUgBE?hhLTwZ=1ubYzlsF_vzO^wgslX{l``%6P|0(d9cRv8Su#3Qg6om*RBrd=V6w7^cBXaCKSQI`eJ%h2nP zrq3<~H=aZ*G7AX_V3mW>xuq&u5vu{`;<491zv-aMLq{&NoJ@MO=(}D# zOFp=JV8AsO`FBoqU~Zn@U~B6{Pi(o!0I1z_?DAU{?jr-_yM+}MHCo}|l-IICQ zeE9^APLce;Dmwp~M`z28p8*TZx(D3BPsY8U>$&ziec%jU&Nm-i9CaRB?4bL|jdy+A zw+`@O3)ruN-aR+oFgKVA_w2fxnSlLt!;5FekEel%w|$O`9WOkhhkFcOzlwaY#NNLJ zM!Cg~z2zNW-135d`oRmrbX<(G2Zrf54}!h%|L^+woV{clpbOXo)7&Pzw`gZ4wk>Tv zw$Nuyzf4}lDAtY0p~o{*>24g*-FyF9GqPJp&9Vb%$kp^h#*)A$G{#(^+9ZDomH)T5NGj6dbvv)+k>g< z>1WsdKe*y2uo3=ULg6S$ojS_tuGqv4uC?1Qt=_{Ojlhs6&6#SloNk zj4tw?)ID|0kyyDL&2D`h&6M7dsBC{KlNkO$Z*cxQfl&Kz)N1GNb@mAURdf5m@AdUd ze;;kYH%A5}e~(yp{syE|K_cTQvP1tbU(MDM*ff&@Vn5=8HfB-rcpnXQs6ImLG3 zBv0;~Ty##H<~Y9Rxqt74%^!Sbc6NpYe)#>q-|y#Lr&P;##^eclwz3~}bZ4)1Pi(JL z_nw2zJ%@bxv~x=SFITH4|EaqD_^(U*PyVMpQv4sqtp|UzdGz$J)~Xx7LhJr#^o#wo zOzrUB96bH}|4dX`f0o}k{g>!G{-n@4`lE8|=;xecKM7Y4Psy#`L=TsvQ*en4N&3lj zx-p4S+dVd`8JkrZ;bc7YDtpKVvwm>1!$R!1=iaDf@!Y+U)tf`&sw z2BZJY9-nKAG1*Ox8cr;asEv}YB;3R(ETFtAqdK?Jj!AtiY@D_TyljOJP zY-fgVV~IYv`bB(|5wx@`c<0tu3hRl@{nO;hqi2ceN+CoJ+B|v(Vjs3$&Z(27&nofa6-7zd{cQb0>DfQ!X zRxP}Yu3uyVH{CI>W-ErC5vk_#ph$IXT&|<*z-%@-%xZoQa>~)(Vo9IqM^RfSlN8w+&%r&iWW+Wo`3lA?SVUI zuiUwPw|BBWVFzs{I{Roxzi{a4&A!18F5DZv)jc^qGOLy-?F;19>``?dnY(!N zuIToFP}Xzfiio6@mbmNAn+e{L_Ex!gH^jRePkE;#H1?1U|(L zgTm<1_(H3OSf*~zH4dmw-FEu%5IGmt^p?O1_TQXtd97|-PL*{I|B}kLl+!?hs@=gg z1+%pRd{squi(IO4%<1ewWv0GoO42{-UCwL4WVPh=8OQ>#u=i3uw&5U$)e6?iZBnvv zSai_o?2G?v zKD40GGvR|WlT*cPmQlmmYru@K0mKx98%WIVWf^mhoJa_${~$h~v<&l=N@ELY$vYtb zZ^giY5NS!nZuG2L)V7d?zsu`fZRa#u6XiqvnRT6eAulIDZ4P`>q_hNu;Y2~iYnUNV zQREEKYqyXP>>NKECzr5`LF^Ve12^$ed`R)acW>Ps_!^ymUmX~j`l?`L<^{Tdzj^lZ zy>E5H5lX1j5r_?E`CzV%j!W*rqpoxQg?d3Z4raPljy#ypm2ewCg2i_q>!mJ38#kWLIy=zzpEVOV~V%%=>vV z_{h1UrnN!8zC5NxguQxT}!Y01b2LD}=qp>Axzc5`p z`fM5wzL&1jj$5OWKB2}l&DmSYUP*RVT}6%`dEW&x{tC0~NfRBzq9L+Ar*1?P*itH1W*I!?Tg3U*?ci>}8tZoacvOtn?VQ)G5NKWDF}W=?VhQ7mh?l16`VgVFp))WwOK0Gm$`uyt zJj-)taxUr4RnYybhS*aBKxjFr8o3Eg{x#0kk*pD4fDvuEiNTn>^bIT~l`mg2I%Vu3 zbvtK68?%!G9v>)W1N%vhNQw&Q{w;fX=RO}-8NRKhZeuj)8m7_Z4bAAh-RK;l`pkFk zP3rE9N}ZkLP~4%9_Tu@QgO|Gnnywi`U{t7aj+4DQa_-LPz{Sp?VY2Wh!JLT=P7+m8 z@xY4&>G59XtQCQakKvoeE4a^*;K4FEKvZmQ2G>tM^(t(Ox?3ZXxsH)JX@V|4^0w?r zbk1-PnskXA^34ZwfgvzEW1ZJ{R!h8}22eoD$FE3EPN>h^<0EZh5vn7NDi{Db$YrSL zmWwSt`Y261?~i{sDKh%{8UCr~vEI7UJ%0K6fbepUNOz-KpuTo@TycF^)944$27deWyd8~4YnM<0)@AAi!t%yu=sasMOMouA-2dplY_`Y2R6JY!ofy+&91 zk4?ec%abbKABe3>FL{%#SJ1$`Ot0*BwXT(KP)hc~klg;l<=bPw)io;pjZvBT>ws*( zJEflg{UKHK2c1IeOLP{!B2al=pS4EbHZ9ja&;;}EPiXva33UE9Mpd3yy9C;oMg)o< zN@a#0O$pVnN~P8}DLQ$(yMOBKo1J4HDYUK*rOwkmD>L`w4IZDKRSNI)0mzsaooaU? z4Cc1RJ=EszGx$?7JhvHy5%f*u;cu%Wg^ZRYE z>Q=xttVR56xN`h|bY~v8=)okOcAX0QrkUI{ zBU*YoK2P=4gJ(*FM$-bNV{|}d=qGoo&z;;H@g~;?x+c{f-BX%7Xk*97`4f|eC*`a* zOWC4O70AuGQrj|JFeBk-s5vZi_6H{|?>kuMdB05{`gKNxZ6BHpAHGE|dxwwf<_qU` zJbZp+mZ!mI>L#@>VZak%%WOPA`d7EHr-Jn~9hv4y8^>@1Zn(Gy@EEr{BsQ4)t8C-j zi`-A(MjK0ToDnk7m*7|z`TacF69@A*uxkrT!F?V6`1P2akYA&=HE#}`5hrS@5A^8yTF5Qk#lhF zQs>y~blUx-V?=pY=S|(nteV`w;W-c439X=mI|K1BX(21t;F8AtP zx_)laGjSC^=2ddnuFl8TFH7vvkCdMH`-$q&yXYfdl4)IEpA^jfmQ<$sJJTZN|1OhR z{`S?5-mfq;ePwi1{2TNEeU(|@>wUfB-w;knzVYT;XJ7om>+gRDulyV5I|j~m2_(0O z^cuL;GXXB0v6H#%9S}$s%&yRyKbk2Weg0?FM0soJd$0Y({QbAiIq=;FhD54`>%D>y z=jSL!mQ|_IPX=BHAlp}jr>oPiwl_4Re$df9{^;zjfuD^^Eq}go^vPc{$Nx3w-TzVB zdiXcYVSmM*`WLQ9{?EOU;-6P{PJWeZ?*0dOrGK}3|MP!$|Kp$jTRf?My4E=UrF*6N z30k&C=s$MYH_Lbeas+-a5?NpwK_E=nx=y4pnb8Tm&|=Kv!}MJ4>NT9d)n~hWZ+spt zOXU6Q1IfWzZG*jck4@}=0Fq-*ynd>6MUKg3y^jd;8NJ%iIIBG5?C~I$MjIS19qZ>) z2Z#kRmZo=nt7s6`n!C~bZj0`z#>Vj{>&1=JT;G%;+&5!b%QOy~1Q>3_vbC~CfhST z+O~{$Z8JsJ>>AhrwH1%}IVWqJ*WwiHMD)H)#1P2F)$YhDp4>Hn$OQag=I4L>XDPZB zmY695?r_@ckClC73m~aGu+ncQzdkspUt7PAgm*X6ICvI=8w<}ELecvENv3uG)BMrn zpVK#1j^Klu$FmY_9X%l?=AplReqvp)(qrjJ6dPuI%|ysKTWKOSkom zE4=W%@%ztyR=^*ew|FBZNQnkq#s+zs>#N1R&Hbmp*d%A6WDM65ia;?^**eC$bmAoo z$qZ*I*V_GEZ=Ah#v1`hB>H47fgF8Lr?}{Xb3*;hQF*p}*PDu?nF5K+D4zJ%qcJLi~ zo;v#`Wj$mI_2X9?9F`b{I{T*w;he{uOZl;`DMjy^46F{aSf1QTxu|QoB@+rXEEs1R)f{-H(Jb2&CT20@~KIwP9xEn)H1a}A=T;~ zCZB3I*|>;Od2}|rVPD8mEqFue(m+X zDb2OcG5LpAx;XDQEdTmH{=bgh(`SQ+qN zP)I{|2-nJq&(L@afy9)|Wa7~3qkChiymc~P+&r~4cb`bxBl@>rdhPo8OH?I{i~4W& zjtuwC=qG0lfyuMidPi<_kB!|K63t90Y)USTS|BxR9P?4FL}gRF{lN_hd4a~`=f7Oo zfAH}Ve9}Cdy)T-n`@k2xtT#?yIHA3Kw_njWDK|>A^In}Jwlpj@!~`iBt>P&w>g&KtNKYoHX?6cD5@l)216E-=t3LD4Fo+oRi zy<47vILgEMwZ!ILsA3R&KvRZ^B0-B>4Z%# zC-RLLy1W?pcBry`u=L3<|0GCOfco8Y_t18T=e*&x4&%FiR%27^iIrN(ZaT@*bNH8& zcKr1YatPYqJ~M=&k?TrzTHdf2&uf{DHT)bMd!)|fTT@}6R~nolrG0))Nk+d)iT;KB zW_ zQiJ0xpT)Zb#s6S*eD=k$k=d_xcaMK{XmIMqS&{l%mpX>O-8~?BNieHx&;RGuM(>Sb zfdn|xB4D18P3znWIz51$#C1J&>sIyR}ccTa2FgKdog z*u4~Qew+7KqdTB(r$C&IhExTG@>DgH+kNzK>RF^EW$Yyl2iKk> zblu50&jnXb?P86`tY)LDhy49Ik1V}-nI>>di66!LPBrvxj|B56*61oe;2K+DW)==? zn(KxoG%!kp+PHhQBxI(a<_I+d&N!p>glBjb#Jq1f^}G~JKnjM01|rGw5LLD_0N^h5 zy#99nzY*iG(HTy&eP&FY1^$;0HbIvYbqvo2=RXCVn@*XXjfNZe2WgbEtzn zr>+lg4tMuV>jv=76U7!3OzYjE3AIg*$B`POtsvO_61wLo`qdaYg0cB@Gs^lI!T-FB z=YMgvx-;K?EoiZ|WIAY)%|kP&A&D(wgkII<&K*jgF+;y z;u{nOcH<2nV4WLWq_4slOidJb9xKSp(xSgqRdydKz*_Ky9O|n_pBeG~>MMIs)aV&x zybft)|A{Q!+?AB~pGeF5&t#ePeHk-^BwpDjyK-|1pTcDG@YzIZ_rXAU|55kRCx3L4 z<^7#=_a(4{dTVP=-s1dzkCbt?)Q}L z$k#i^)xX(0srilm8U1hdPOAR_-3Z^D()fOFNbdSh*OdAtUhCUSneDeaXDn}k*}Mf8 z@UAD8{{Rf_%m~?lBQopDLjw5^h0}_c$0il8h(y{qWisnKeS@=alR@*LNNl)1Ez;d3 zc)b^naAat7dg9)YSndYLVXj{i8G=!TJCVjDnrEKMhw|HnrQ%Ko9b4qWt)Up&{3@C6 z4KU@3Z7Ek{=4-Ch;o(aA8(`ISw7nI${L*}CBhT=f!Q-7K*FJ^zKFL=K&L_#55Jxw@ zY?@Dp;qpUm4;ot51$tx`m=6Qwh6MP&^T9+pz=uDNE`MP$)k2q9ZJ##-_*#PKV-}f@ z7vR|!V}-p%v`X`QFCeHLqPl8s_&BFMbKoSW!I7?RVzgzR&g}rr?Yievjdso}V^quO zjOFdDJ@l>Yfj2cRXw8XJthG69HTfrG18&H9enbk(f`GkM${wYr-;1?r=S$r^Ynzkq zAYW$du@~)u(;qFi@oW#Xq#v#jD8Gf}c8@>WvHvY;*#&{ry(>L1J~Q_ypQ|gALQH z#;LT&&YbiTLoebVh!&W&8)_EYIl@9_$jlOSPDuN1^iSQp+&$SjsS6BD z85f2nw&f9Dq&!A806DYk^k9smdCb1i$Vp}cD$x9bX*j~%Q#x-pqmMQ)4*FNZ6? z^`MRSLFevZ+1T+etgRE5yB%P*;eM#ilP9o%&teJOElkEhB-1>l*!y4^j3dlvMD|G2 z&pqPfnI(&43k%Xw7>!~Wj|KL_eXK)=$k>j6LXHE>|96|yMqH$zb&3ty`YsDzd180 z{`$+Wz5UhizyAL3-5U_Te*MnK2RD1hJ2=M=U+J0@-5nBdch^~3t7 z|KeBc15?sv1|SceY2GvEZ#c;e2=q)U7B6>=FG)BI5sZ|4=hEHu;IyvBe!9)sX8UH> z#4fzp{d;4wr|7zWNx#7Vz5U>mziu5p|NriP{6~ModHO%Why8^on*9s=QsFceRT|uVBXcg5H5_2x4AHj|M&Gu=9#PNM_YUE6j+{%y2drt2?aPJx zQrq&WB~*OOIp-NO{1f9s<`}KZ9zw`NbWTTxU>b2L!5#>oH~?%~Am4e`+k&_Ccy7H2 zAr!sdJ+&-SJBw&a*U@R#z~zdF3UkiIM3#K#95;9YZ&5i?+%H86`?=**b#+$bi^|>U zH2}yAoOI5;+DzMG)pVqKoH3%qg3C)emy=2OiWF;XX035Q$Go28U=<~cGtQd52FA9A zZe~^IU0K1$NX`Aj{7QbaNOpMn!54p&!6F=ulkaB@XXkxujKa+$&*-cHKWvN+>W8t_ z%JwSPHJNGbB>?dfaQNA5eJ2x)2~JGX{rUml#+zTP8Hz0)-zJvSgw-B1`8x-kZi zBno8wnEZm?VVWVVH|0OctE?>COfB8!1*flcd?(|Qp`!M;Bx|Z`31&YDLiHJ%B9$~oFK zrRx2tYpj!ezn*);=>Pj?yI;H0*Y%UT!vpV;U3qMkO1(;^)!9vM=70I*EAN~gc;{-z@Vl38j(7Bq3(5bSqvKdR zsWMy1P_!`KDr2z0_qufEjxH^FLjc86DmaF5R>Y2_$yLbKt~gV14(&f;*I40J_75v$F*D?wl|hN#-FI(L*!j_wJKbHQ;!)NhtPd+nxPCRBDTPpJoTJA`O{Scgc}hPtr81|h z2QF_YWf7~aj(DyasqH>WY#u&~23B%`#TDu{N;~tWK+OF9#oMyZK`}Gml5JdSc7v@f zU@DB80;x5~s)WJ4xO}s7Xcd27oj#~d{8>#jsfhPdEf+>PS17T``i|D8+QbN4qb$5a z2U1nDZIHDk5{y@4iDGkMQm*ri36;U|84W$5)rQU! z-}2BafJf{J`toPV>h`CQ1fRuoJD-8Qwz~(OqoMpHwAT2X?u?%mTMvFp&c-KbvLA7% zzE6M81Ln`uGyrI+ad4#ft?a_H5RTj2!^5+UE_l-y%T>`B6gl&j$P6e~){ir27s5lc zh>~aZ0arA=x_$C-f&7aCp7(OBuvyM+EI#UDwRJzsvmEt>Ghy38HcX(= z68vl!e_aHUV@bpJ1M^F+KmG;V*YiZ{@M-+PXMYsbdZOB~Iipx>56D-GTLun7=GDR; zHR(+UIDwNKd>5GlE?XesTHk#HMY`4IEv=Dk-I6M8SreSGEdCYxlJev?ZBW-z(umbo zg_k@(_&aN)bYQ0YhmSJ@B#<(YX8;CJvd~LtH8_{d45;V`E6&o^1M>A+E^x}AkKeN4WB~y1Utri^gIog$GpM~rI8;2b%06Ax| zb>Bligq_dGYWA*hUM%Yw%+%h+gnA)f!hRN)1!7sLMC%Zv_XnN|NqK#;`B+}2cZKjO zq;v~0W?Zu8jIKpB-&ZX&%&S~W$Sp!^TJ4uOM_fr~pgg#o5&>ceBdNv==NOU27aMoY zN2lOrB)Rnm(~w+4sp{Tvar^!~vD*9r8MS99Vf)d*knkJBgTmht&uL!}2l1wI zR?pP$_ppu%M7lG=IrBxnI=cHOJ9`C60UU-lgVkk7tdr5lj(2>^14qwwTDF)M66ns? z%!a^<8NC?(^NiVx9|A1}*Q`Rn)FwxgrU@KY%eB{`@kE+Z(t~SI16`qade0EgH;GVO zB~me?=Kj@i<|D^y!{}Nr7~0>5^D0~KX8Q~O=pHfDP2{$lZBCA^sx3Sb4J~{dS=pP= z9c8HzU%z2~Ws3b~l1#`c4#~6R_|7p9EBs{Q(;-U+&AJNShaPS+1y;+G(^?lY-en2r zZ9Kd9W>Zac^lZyHc)?uL$@voaq>kpi!BKw;X-B)>r;P#Bt>AFHox0fvHp2mxQ_hz- z4!@SLnbo!EQ|YAMW`xen@HIv5z_>{79?|>bg5X+n+PRdP=DrZojlg)?uB45M(W=P! znF`L(P5@CK6Kzoul)SCf?k#!%EFPUc#Ii*YT$2Tb^dup1Q}=o_5$sk`Y+V03DE zm`U8sF1*Zb=#HirZUvrnqy6XTIS%mNGvAPV!5LYH2bo@t=m@wvw77pzsP*@wN9voi zhDI1fCg`^qMEiROtgHvm+%TO4qg>MoM9!1^y{Q?4U&6V^z-#cWKlo{^a`-IHIUB3g zX@cCnReZ=XG>mZn>r2c}^D0lwC9yBD6>mAKdyibn#({$j6K%46MBasbA z&C@pr=VnBDuX-`tpoV_O2j9mSwntRTI#QqwZ+81Jp6@-o$`di7e})s?w}O#qZObVc zorxUNVuJ*eA)Rwxf9L#-i(^tt*Y2}Fo;~^WkL9)FPvni0&lKDfGIAftia#*Y-)v4+ zwm4Q-4cm`??%aL&b7yhq6m7zuzO?g@UbH<0yooefZprta{!9fHKvqLWoL%3a0|yjw zZWqF{3gK)7bcT)4LD0)*a4Wz4@B&)xH|4g)A8S1;uW{49OkVGIdM6Y=1mit>@aaFl zY>iev#6SPh*8ML&NYr*;O%z+dr!WP+Ixe^TCOG-8U%WH=>yt{`?~qaXO}YVIygf4a zUFOfXma>hvIwuXUPHKE_;QK$Lbj3a-x9VLwcVD~ED|%^Eq7NV zQ1jNvg#1kJ;OvL9V#AdgvGJBjV(gMDOoIZUbmXIJy|X%h(#7n(h-M|E^RKP>*4B$? zpV^?d@^JB4&uT4pxo0X!9$adr{-6m4P({n%*1I-1tG1Y-Hf)Q9nmL%REM;0%X44{_ zAsJ&Jm1bSd@XV$OkIBLrwKW0s1k~f)(=jj^yZ{?y%ogdvsw{Cshrszl@W){~9>Z-gq=Hu`JaXZYEL03BuD^U;O^$)REgB|39U`avNEc$FKK72$Td}`k1>ZyORu#c>! z<;9caWd_AgbP!->05aR-QQjx(rS9VMbF= zW@>-q=y?zyu@AhCwWh6Y*dt!=(1*|5!~N{T^9^>e(bf#GoZ=hEuA^6Pu@p4T$=acn z`ITINEo&RISgRda`S!k%;cwXabJo%pQu3yi=Lbl*qE`Fq2o05l?_L|~ zdG-CPx50Dnf{%3$N{!u|my!KAN6~mpM{_$8v_ul-$vMst66Shv)P@`|LPGheSZEB% z6y)ci{X=S8wZq%n$y0Q)j(Pbvc!74m%>6(o6#(a*U&wAQpmSJQ&bH`)Bo8#b0aU*a zEWd5xp;e&Ck@brVTJ-U33r!+nx4});y*%GoueQN}>f}Uh%ySk3?^$Q0I*QWw5#t_< z@Hs@{PX(gC2v%0_)E(+m!gp`m? z#-Z?)6W6h0=z`&L6!HDPkFP*WI2Nfb9cbROM(51UWk&dCc zwVnxe)fP(cf%|V??V3PfxAqXz*3&EZ1kWz^PW^K<(7$5-{-5aM{~DbAKgTnr|44TG z|ATM-zmV_oKeq3G{5OY>Kl>|q=U=h!{a@A1y?+x;*Z)}xO>Cri@NBhqcv{9q|##TY5>Gl*UI|^XE3{Zdqkd4ngiwaos-RAc5j{D%L?;J8UCrlep90l zw-K+N)MDl15_n$9=!>t~WA!w`zKk_e&Y>O4`;(1~E77FCej~#IwFXAAhTk%?l-By#8r}8uYGE@2ewyU0lF4ozm($Io8X4dfIKuYti?Pa9%DqyG238A; z6nxE(NQ@qOeEsSAX_U;=RbQ%^W)II-wjbnU=|&nrG=(@TN&mnaex9}B=0Wlg|Kwk< z_?FT>e5^KmXw|H=xO8%R#Oli)L2;CjzZ6ZZ{U+a1*07S@(9WtH3VKUad|!Do-xL)Z zI|4Ef`!3xXxn>TeZjx7e6GP7j!_&$iy>s#Qx8J{V?|0rh-|@8}vF4k-Bhqhubfy2> zWK8}6&)zG9v7Q-|=+5@fs;)|mfvy?d{9wnx+)&@7YPfq`J~<*WNPA`sO4bze@s{1> zV7%XJgkwgP+u->7uXXL)z)s9QZugzzx>3kUM|u4r1pil zP$1TIest{~(tr8Yn?o{QXYK0Pr0RoL-oEq!y+{{0JYDSQ8NYD;X8*-2T@%;2-|n2d zE$A7NSSCuXqZ#tQC%T2Yk!yXE!#z`qQ80wz4{r?ioVz{L(<9LIlNH*3xku1@sb_ld z%;oNh-ibLenSSayT>u@_qv*-wFV@I#TNbKamal#1HR-uK1ID9gUxYsX#h(%hwQIVJ zaqDKUNJ&PBVN&VPYn3Lwd{(YkE3JA4A{`;>%8ok&Qo*EDtC*1+)H01hCDZ8~Cbv>D zD-*o_-r0V7o`yfXaBBkL=j^>Pv68-H)3m~3?;V%AIw>BycxTvO1vhoiFWX;!>w<1p zH*ZB?>vV-v=F2y_g|EJKc4S1Po}?>UJT+$`7Cq^K9}Ay6{Vcv1O}TqVru8#Qv!!=h z<)-g^DVlC9YaL7Bo#Q9*ouenq3(>6YqpR0M*C_#v;3uvheljyIvkU>Yj*W{|(?cS) z(ivK_Mzb|L8V)TUW<8zmR3*3O(Vt--K3dRuVm{kK0^93W6rFmMjMZhwQYs)b&AZL+ zu#17yI67mH4ozz`;H3__DcuT7&_`y%5=2@8UtH4Ujf6V7#sc^=BOQIh)e)gQNz7?M z<6Lg8mAAISluEX}{&2=s_d>kd9u_#%*3Il@mPP_?+MfiBb#7$^U(oXnnSfEaKEv2`bmCs_hT@|Cys^uCz;y*=gd4G z(-Zy_-|92=_RnkkPkv5c&u8>!g@Olr*Sl6UfSV&f3)%FpPaG} z??tlPn{;fJWu)UWrvN2CFXPdQk;M=+`l3i$A19b~)8OLO`tFkk+DaIe|7I1;>>s?tYSn$BC!0 zM$t`U1$!`|>9>&MXVuyx7RN%`Roi{Sj9vF)qd@an@uDGZd-t4+t4O5qcSe$Rt1B1* zN30=pBSQ&4bH2Wf�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 I`!%I>BiGHRC>Ni^7SL$Y$F&d z9fa8lStnnH0Q^`DpZO2I{=o|lU?nroKo0_*>6FUPvw=Q5Dc90GS$E@jCmx|aztu4; zywo+mbdkO6Dw#!RrV`%8dA)*x>j~y_Nn#=gxd)iMKv^Fg*9+qbc#( zXzkhk{O+p`a_!FZT>CQ8d~;D|OMW&gTz#MW_k*5!<-4=$jrY+7y#IJq`rg3g%17i< z|9VL7{1P1e+{0eMrO_Gr{TYe2m+b!u`e}p<%X-E9qHY}>yi4PV#kjC@>^W8LowinI z+n3qjL3_il-q!b!)gP&m-@mtq)U1u`wSVj*t~umhIz~=FQyPJfkvabD^;P zGK=0L!Lu+zzYF|y*$dz022*n~I=k>7xZ#A|u2_*jc0!E&b8w=gFdpk5dANSCI4?V{ z!{AF=xt}b2&s40o*0HN;=hT~O#YRY9Jb3M>pMK-79eqom;EpqxYiuPeXaFm_CVT*E z?8XXPv?hXI9_t!f7@Ck87vO_c98xnPnUn(x1F(K zyT^h)y*jVC!I@D-|DOjlY+BJg(Fs`G$y~K_?%2?C zTKKP(z8VXhwS}{16TMj*mNkRJ(r?)^5L~jxa~vqN1wU7|@%*$}==TGUXzTvT@+ev$A7&u?p>@ZIlPKKCo!sxIg;Hz{&wnALXWY5zjK(_$ zKNQLhkKo82M~kg)vW2=Mh5ZMdqxZqWZsIq;NMF*gAB~FN`QpmGUvgG`m2AGehMwsn zU-xXRdh#h+#s6}>XY#KH#)N;Nl&$>v9Nm7S6LV)4msDrQrON`M}&YCTjOkG2>>Scpl-hs*b97Sah$7R#^2PUVVOp9mf9TCA1 zN!SM#yN4H-o=hw$CKk1-yFJs&OE({A*zwmsK6_OMkGYvB?Rxc_erNZXWb@{u5o^!H zqW$KRX(!L30CD543wL{M9sLUwqDtI!&U?^^;*srKr;outqqMpw#41VWG44di^7!)dU`abmy=rx3K1^j>ydW^`jTB)5YyKXn@|r zMgN}N^k2~a{|m?1Z+XVPwz;FPxV~O-?tcyD_!6DV5m_H~*+zh~s9JYMsyX~acnuV# zt!QHpeD;8Hm=n&Br|3YB+MQfeOY2oah098#vk320GP>jWl?``#jRCG-LN;H0f%INMYF^*aW-0<9Fe>8$>e*^|i7ofrD5vp+a3U&|@iwn_t&qN3X9YoN2( zhNo+ZSDic4lC^z{C-aQ+<~9D^x8N4vQTg{fn?L>yx}aCv$6tSs4&Xbwir*f-{QkS$ z7vH^v>)7RWw%|M98uRGC^5`Q@ceAyq$| zdNmWyl&5)nC*lv-uKsD-+MeRy?E)?;|uruW^cgB-@7+B*EKI+?=jjVz3}JVHy=&*-0GVd#RDmN z@$DZ4o&A$tpPajWm;8VS_j|^AzPkBvnEXGHP-|Zw6{#KIs(yM*f7BAQe|o8AH;EL6 zrOO?I3t(7MavDX0Q^LW^_j~)tq-*2z3ezN-=c%3<^%U6y(*yGgQNKvLbhA$&SFBh_ zD~p;Imvn1dwNbBIHR#oH%}QVYm|9HvoO&6--;!cuU9-AjHJAVeR28D;wN8S6?OBn(02>3Js6n- zQ(Nep5epyoPc8_RHuB26QZzSMi#BBxpel!Fm*u^)a^-^3tRW{+^$;L{9Dg<0op^y1 z^a6z zlA3&5(Okpkix!OdCst-8tNI{w_+}uriAT(!(0lZ7(S~rks$a!R&<2iHKv zS>ve-q3`Uy{{VDWicX#|pbOqs?0+ zx4yzmR|l`J;L$0Q)eFg(E%F@9q6x~C_Fk70<%9I?$D^JFggHF3=rlYm`4g3*!eB3h zz3&7I$EWS{g6G>)^rTP8mONcl=(m^D#-=lx+b?aO9uzCP`?==v0odzyB-3o<_g=Pg ztrum9!Vdo*iji@W!vCDjHJ|1POCr486-$=(($(E(31g75($hPV(x?|uZ>9?o?yeyA{p;s`h~ ze8>S>#~e8U4SJ3DfGAG3R7UqkDBIY2{fB>Zy2E*c-WGux-(Fv{*U3pgT1ymnwahdc z3?6cc%CyLHXi;wsFOc~^W3~t2`(3l_bn|oo&TX;(b8XF#KQkE3?{%)4L+6Kw=if&I z@D4b@FDEC&AB>L9e>yxSJU1y=zA+|P?qdHR5Q)^&qhs?+lS_JoIa2fB8}n;z5ubb` zK<;&0M_F}Wygy)@)mW3s=8Fn_Q}FXyNaj@2pKI1SNPA6JdC%80SPc0uadfUGpLbOf)1Kv-6 z#>>p=Z(}d)*Koe@z2Ur%*B&IFEl8F*J=0B}Cx-_d4=&I(QSZ;)Jc#I@FSj-8Ta-F) zYF%-1w6Z_OWH7^$+m~5cTK6d=2B%!H=~a*epkg=GkY$Emw4&yISCbW>UUx-RvUN9> zjtsm>-2?~T_QG$lN1!jLZXv6IgRE}B%h|yffZdzS-4(L73MMkO=#tJDc#jOs_69Vw zM)dzi=4UJ|1>(3Ho9(w6&W%oqiV3~Z1|0)>^l?~S%4)RO3OGXvS)cRkj>z=tR(NcN z?svMX`=3n9hK9szQ)*jSglBe%{a6e}AtLWkMCJq0kQTwXL_2eDa9%hr)vL&QY~v6n zGR=%+KAYfCoB$ro*2Sc+(8{--e^bphpOekTE>_yBr0OSiG!s>F^vku=Z*eC6P(Z^R zSvI=KPd~+W_+1{4e+rF!5{VFAf`csUWEQ=A)|uVTz}aWX56nmL64EnR0v9NQ@m8Ys zlL{GFWi;m%c6|2zueb4zZ|C_h85-N=gV!zmyVBB3d~WlPxbG4`CSm;r^p> z>3O_-Up|?V{Q6GM#0Na*e|q+I|4#(+^7DUq<9p;#zk8{3{DUct{|j=< zzZ_gNpX;4pzi{Wl$fd`F({}}nD}4*n^+_~Q;$^K(B@nNy^&meh&Qm41OQ{a2x!vaYPR% z#f!x~v|ZbHWSjW%YW8rw0-lK0q)?>GrpUQbLUvjvkFtj5ph=8(vyCs1nOWhpFX0i& z`!n?K0QvgF@SwRbI(aQl zc5t}ryp40fidK=>?*?@Gww32OodDTQH2+pK7dB#kY+XJYcfqCnzi-j=;w1wA>)RaE~GYjZI2ErH*VsYy$^2 zl`U@Lx&=3GIKX@?;1vdVNzUVh9-K$3Fp|Y;i^}kzEs>ibj#o}+!P|zWmDVmgyzmtZ zu3YWvzceV2T`|@_r*jb*DSBi(E!bICzX@$FLIB5#kKPr z&diTyW#)eXOaG7Z730637!jOV5X#OhF0Pyri)3ed(EoSP0f0%CTmZ$t7YIauN&f#| zY1R5OAARxbB2|G%^N3g zfA5}?$Si9cTaHq5+hK5q3=8r#*~J@=<}pNwCPj*wYu#fL*E)x%@AnGGIai4AJ=*m(N{)AOp)-eK0g{Lfh$OHjkN|aUWbgnP9Wl$1_Tg)aZ$lft13) z5~43`t7~k@p|Qn6`!9YUrDNRu%U^x2#!GAwpk2Cn=kX>w1qWP36z;#>0T^X{!V6$b zt=N)TW`wM_u$L381ykMQk`&n%6>GA2gna$EKVE%lu=`)(v;Gcl?vFf&{t(YMexE4q z{eYC|t<30rfe-8zbI$8<`S=w&(qp{x?F?&rPx0*s@>Mv@JTpd}{Kh6>J580z*P0Tk zTI35fM-&@XG>8rA)f-a1BQ-LwOsr$9rIV*X3|7G&NYI^!7|@%Dql@s-JIS0A4j4RK z;`JlHcEjZ`Z26q&+V0k(%50olaT+LyGYnBYumHL*rx(%W2$YE3CZ9Xj^q?^yXS|{? zILHVLmLQc2tOl|ByqzoYf5$YJ?8DN>8p9k z=lRSYNWKatbFUUxw_Y*Re;3SDejwiEd!EbR(Wm<@9+g+2{Pq!iLyN4+9ebj22sU?! zU*G^NWjCB{HMk#3@LM@YFr7h*n?lz}M$2A`aS@KL6pj}f(cPzSkWLT-TRn7uA<}W0 zvm|TV2DGoMjl-`snfjs7;E0WY13q~?EWY10Eb7~N{(6obVp?enkAMdak;U<7L9uc5 z%gc8@N854MnP^={$8mmHYyIbsKEL#zeslTG-(Bw-`00%Y{qJ@4jemUQ&ZEz7KODOF zWJGj}>-53Ig7(qFp@l~sLkoR$c@kT{+CyGn*UiVHchBDJzH_f{uCudm=FZ1oUi<3W z{hsp=hG(z!38XhJb`0H~lCJeKhm6oo`RH=T(8C8Kq9O2&xka6QdQwa!-K_Kh_)FK> ztDTQ-cl8f(pU>awol}x)Z;qFCkw$-=AUi!+X&n>2ceHkqLd?5^g4uO@eC{g>1+G8n z8<>*nM>@tAN1q6!<5x9)UNPO_+%iliGW@|6vxOkp&x8Fh1lg~d;QeQx@zi??UbUA{a2`K9aPvsdme zU%GlTd*=BT3;O#t>}cx)zxvaRyQSFS?xwxy1eGpZ#aXhFD~Dg zk_)gRQkgYm881H=U6`jkbczg;F|rw`-}9=-7pAhYus%A!OrBL(!_T#V0P3|(j|Ly~ z3Ok-sAYWT19Bo;wvB|+~q5g96zVSuT*n&cC^CgYT#vpYmuRNG!?PLSnz^rZPh}X#; z(M&9^u3G~s9%=h7>@}Oh6_?2tMpl#FrlTvQ1jAH-KW{vJ`vb9&6+7LY?)2^(&&iuV z*)!#qE|#h&e6bq2FRlslOUCErIstuuA~+3MSO2tZU{14MJ9z1-?>#3MKDH*+Iixop z4vD$nRcOW0idBqAXO&B8{e1tpkhrXnWK5`>zHt5C(1=Ji);qB{Cev9*!0h@z`|4Kz zovyJ-fmF9JFewxd%qdjELXEzAbYZjO@uWvAGiC9g?xbsQH-v72&sN&JD>{3`T8ayf z@Bn0TbmYXyn4-6!-uC$fF5Vq*(1jOIly-^+f3A$DhtQ!!1)hMO=<-3Luya~%Jw4KG z2KKCh>>+dcA-v52Gs%`!50Jnxd1d`1No9HIHur-9S3QY?_MX8)+YY zQ8=0$XG}taAt{onrQitCo8fJ|0EM_aT1hfnrP%%W+RZfBY=(O>#f%vNP7biVg!$eB z_yOExQaYAMqqGOo#DRUC+<);y9RA*mkkV@l7X9=9dA0OV!8Zk2`suwgej zFZu;5x&=#uk(Te@;>zw4>sQ-|=Z;P2Hw^fyw0wUGUpOr%P+iL2Kc_W$=IM!9Fgrri z)~)cA%^91ov`**2&nDNbk+E>PF^q<)OKXmt9~%>X$d&l+(BSO5eSMQ3^z@8Nz1(T%zDUDS zk=s{mXFV|BR@ezDhs=P7?8OIA_=oiG955@;4@>ACzo&P_4!}DO>3`bgo@>Ibw><+p z_E@d83RuogPKVeo*mW7-SiTJ4LGfL*2xd@(!%wS_T%bLTp!p9{fEQeIMEqKOfkKse ztAAFtIgCh=Y9BAzcj!s!_l^~V?9J??dA#J??OiSaU*v_~@q+p1!`F4} zH`G%U!5dvfYDN{BO`n3C0F}|7R;_yzWJkvpVy#0(E&wmTow=1a;c3`dcO^H`-f$T- z9lm^P3!dJJo)BGb%?=l4X?u71w>RiMH1awOTfscAM`?p>0(!VoJi!}40!<4#h)wnZ z;t_W?$X_5vqQE1)qT#)lqnlmkeHGJBFr&5j#@R6kMkVWgcu)s`i+e6TnCK&yY4oKy4KbiFKl(C7ncK^brqRGZ*$>v&J2RD88U$p=w{!do2Ak^35SI z>=F8$+6D-uk#MpNxcZ%vBUP+aj$b!R$8VbX{TKDx$=gcxGRHkOhn3uS-RfS zXn9ki@?Hj=ZZ@<1ERSb8Pj*lNZ$5r+Iz{UzW#)MN{ZA`&_*Hy`{d)57+lD>ftfDJw zAbH$@@82sPzTV?A+-<%1-QL05KXF|hl+bGD(HR!-)aS_l&#+6yx8Mw2*@Hx|yr0bO zJWt{)jB#B?dCd{T7hnSii9qo%2^P@q2x;rb)A7bhrh58K20dbu>pAAkG@{w{5$*8#F3xrI+`>H40zy#LH}@bb57=+Bi{+NI_FH$r>?Q{mddK;`(mht1RP z?|_4y6R%i5;cWVZOtSX|W@W!X-}(`{_0QSIel;vy|K)>G=`U3l->;VSjt}oVnSBrL z=M(%mU(9H?J{PDhpAXH-fAwf|@g13N>s@$(cSl6}cb|+e5y-4m!o%?UwnQrgqwLLsk zX!^nM5@huuQ0LE(*;hMk@BF+M$Lvu2T|MIL;9f@)5U=i`rQhb~HSnh**`Nj9 z*GxNyLA+{nc8!X{oEtUv+&%OlhspZWr+mF^wCz2Nks6;Dqe{sYV4Tu?i<%2N!Ck>d)z$*{x?ACpCK1D(U)D`fFM#_~{t; zcbNSw1Ww2~QSt)jxtY^E?Xw!qYY^TmLSIZ24y&CR5n&(*Yy>l4j#;-Sxx;Lbwvkyv z+~6+%jc>{fP&c(>>XF)yvFH5#ia%1?MeDcI=E>R9i<_&qAT@YJ9lQ4`9(yf1cm-M| z;sR2uPRjObRbqAk?16**+>d(OE=b<==Kg(`gDcr=)wqwT6 zM?PK4#9Xj)<-xFwpwo?5`NR!I;G)Nb?39Z4$M-2z^zv^6_&$T+-~o2-Ao~v(Ks$rK z5hL#=!M`5|AB*EpkMrje_FxIluNucn5@&CZlaZa^Ge!qcj&AsKQAUsm`*sWi4VwOR z5IiQx`xfD|igM0?!|cYnE~4lgqVz?88|0$&G{*hu8rVW5#yK7VKMwKt0tWI)_0A>j<)8u!ksTd<5SBe!h$kT>+nG4$K!EI8^ZR?|acgc=+>lJfI89?K(Mc%u-We zRk-F?Jerg%>44>uY{BjC8+jj;4@body|XLg`BjIK{5dLr8@3f^0*wIKh@pxTFNUN2 z`O{-*LEB|S=dw=Tz$*9}da>9tx-kj;G$OS%Bp||Rj2_$}Pj2ra-AC8Q#QJmO2!8sT z8xP<6>Tb`wJyVhoq0Qd!9GLy-@Vxw==2u-m>lhKf^H?DNXiBm92^rHL<4OAkSv~(q z*6rU4rSSU#3EqG5|7MrYU>N+3`?v70)=y2tnu~FtAcQdVLEO@4@MTlkEfN%MT5V(`}Y6dm2|N zfhOoV0Q=#(JF~m$WI6C=TDmP?h3@&b_GkywUjq)ajCZw&)~Td4g=%Fv06VZS^eqsv{)CoPnW?0W&^y&0g2Ad&L8w!{K+7iSwf*APO^UNMptUHEv zZRj0I8(t8nKUs3;Tc@EP{`mheAa9vBeTmI*reu_@T9p%XN~H)Le)rg-9G|yTZ}Ew? zyz!a-@%gEXcX}lZ-TH90xxV3|vYn1BjWw)W+jMJYC7P9X&J7~W&HVmr%d>C(Xn-SF zZ9My(@%gv^wo1PK-2EQG{E9uHn$fscXEm-3a@1VSqu1WkZ+`FCbcS`;?+4MDb zc22)h^o&f6e|qlv$nYc?4|kpne0Af&lbc-*APemo?_$$Ahzj*X}+Z zLBAsC85fGtkSfSP(cXD5WSCe`xcMA1X!9HFXH_gx1$Ox2y2V#?^I?Mdq5IF(>-coR zU8{C~qRM;QaD?)WZ1td~GP!d`ibb{piM)X&Bm&pAxE?N%Lt7yLyTSO^V)m%A)0dbj zvbwEI5)LND*LB@_GG!Z_Q-<*KXM?$&60(9SoKC|PE;J}ZYrWHLt3H>B|H7XjL`CTAqc%#~7Ff^oe0 z$wc8OsnDD0`m1Kb#pA5f9853|rO~7n3aumhTz7MP`82r%2|iCh&!eCZ-6Q9d2ds7r zp92=2-5|XpA^uLR&G)zU{$vaK;Y(bE0J}GWWq-7A=;-Mg(Hk~hM4caanNeL7pqtU+ z>y>7&8P3h-k5;XT%AT1UM#tx@T2$MXH3sK0JtA^sVe^L|u*zoLo(^I1N+5g|ad#~@)@u}sD69VZiibNhx zFKC9Q=9Du}`lpxifg!0q3T~pwGzE)MINb=(EPP3YX#M#Qfhi1P6p=879%UJHtFCmd z-qr`V_X7IUj{?R0WB9jY_SHk43rBcrPuQuB=nLFu2iPOyu&Lh)*TD(4xs2L96)nC- z16@dc)yZH)=`oo~?Vf-VBzXxfBMWvur`?L70f@%&m_+fmhP3t&xsF?IdJ4(Ms-x@Q zZfmte%!yIvtQb1)IJJk5K|1(+@Kzo;a5v9r7afrFMrY^{-1#wc3qNYRJA_qY$KE)7YsV9gjz6nsMqlIa zVFxWK7guacaOV=0HMorKhe(i=9L`(;_77!HG=iVCy9UhQTy#%Y?C1^P*(!FvN1&@3 zJX6uiEV9Y0`eWY~`>ln1hYj`<`T>gI22s<7Ke>UInYahEzkxj2+_@ifz`-F<;Pi$tm!d{ZfHhj?&}&CKYlPG>>-D2kY441hhvKa_s|vfkW2Gua&evv zCGmpJCD(cLD>@Hd2+*(a-yn&{;nwrtM*O)Jl9U(NvA2^LeGbiCTtwqP(xL zTL=^m+TEdTuD=|u9F);Fw6#ZM$n93zyB<7oBfR@|JGuLMJKK8ID$rfRYuihJJBvXWwpf8CGqvW-;43DRADxwH)OlmD5b5cATc)FYV6mCXp+q$csy&{f#G@ zr%AF1lHd^uxV{9}Qz}(E$#TtS$aqM?ttHrzQmMxCbhL2_1o?uO|C+R?SHwen9cG^M z5&J}aPK`BUXCt@!%)sl{giCvJb}0$>*DOUp<7i=qGutov(2RHDm%JG+?qAz|`G<>+ zWcA|_q2~SJIpqhpdMDqdCg*+T%=hqI{Cq~b_6`=QC(O{Na6>1I)rWAx`)H*1xX<^NT*NI{JiWvh^Gt$nz%iV!gEYtP;fY#l4h7f|elPFv2_%#0MTEch65} z5V`W?%@b>bH$KRXO@Cl1!m}$1zQz%@sWQEr6{0W3Q;VCY>t zID{P!yc3O>2RW|~-AcRX&Pz|?kG&M&Z|(DrJkzwD*JMWvVP|i(acEE>bmIBAaPbHN2ow zl8?9+E}z)R$47Heant44-jRLiJm~D(!KYgCwxuy$@+?d1w=TvV$4w~ zBwpmjX4>aAxxKXnT|)7#XfX~R$&XTkEQ17^CVq__K3=28r4R$th~P(zfEVBo$hN;$ z6c0(9=%F8V1pK`?p9_D#5Cxl!@%hKmIJKV(5poB^`1(TZ*M9OGy;7ssLuQE|{2_#X zB!XTf!of&(K$RSzdVpdmvORMFG*5nmFU@CG0skp_wf2~sfF2KaHtUqkY#{q`L+8oj ziSYAys#($H;e86p@Al6wbWbcx`sTIrZo!Jy7^-chsE4=!sRnd67`uU{ZnT~#)M}U=VgB;m=gc_%#7&I+5gWBkItO=$uB-Q^S3|w<(W&@ zJO1L)kl=s+_{%FlxpA-evr9L-JGnp?%O~G~SrfUDZTYy4!*DAxy*EoPug^aZVZ37W zm=$YQ9lGm<4?n*&2+uk|&)n!&Hy;e~^WkgvdM7&j1+%>qlEuy;_5z7kjonxK2%|4u zXU0B(!bYdM<7VI37Cq(;JW`I1;du}5e=1rzD#&!^=(R^<;UyF)BAq)tEi>_OvN>fN zq0L@_Vhz4mKP}SQ#cG?YYjD;jp%usEj>qWUj!r2yB2$u;(1nh^xKL{@v76=k=hV50 zrH#gd#<5Q>|MP6^@TJOVCo8}B7L5HZS#)31&+y9Vuf8^iYOm1boi49C59pshRBd>7 z1#)9^$>84QEZRk1SRbBQ%G@83V4^92J2qR(^lFjqmSy%S z015K9l4K;tr^VVJ*+71o!Qq2D^uq@Pbk?wUT)gI#Q9|gCqger?)Y{|L8KrrZT~vC% zXG%G{Y@pbk`b#ovBbi1Boj=%HGr??19x!`+fsoGs%J6;wddnmn68P^_tYJ2!|>2k@}@xfI& z*DB#$EvH3T0B(>%OOWC*lVEN{3seuq3wu8JtF1MAglM%k#n{pTyeZO^JxQv(GmVe8 z2d(|xJKZDq;2HY)cly^%_TI|Q@i-cS0m1U>tvgR9u5xYM_ht9HGqt16T>bbO5rrR- z1NncRz53w)xN!T)-{JlL$Bv${pWS*q`Y|54^Wb?GZ}yB|TTt8Xp{u@ge{lNd<&M7F zmu~moyYXPW8|~J}v$ubo|KY#>_t~d!{?JQ^$CV3r2G4enih<}RFFqL)UccErd6#U9 zM`VJHXDf%JJp$?D3wNLNU*_U}`P=`tM99qe$6wufG%zitnpZV9D%LJ{jV%-JS;p4* zG{_n6C{_=M?RSg6ynMT#-oXAF-J{TRvc4x{;=bFxlf85w4s?u&#~w~er~2kqQuuo=W$RhFDcfAb7H-8VR?<; z(+Fn73xD^IKbgG#SRh?6SLDAsdu!&(%`RaNgUFabyn6rffck?k&dYm;MrBuTb}oJL zn`<&5m*(Sfk>D4<{9^R%mClI)fn*wfe0Fw8zaUkcMUxA%h2d$jxR-=bot=1Ao{RK1 zX1@9UU-Nq>ukwe_UuPPJFCu|d(Oca=cC+f4`=^&QWa((olIy@q*0h$OLZ;pnZ`cD1 z<3hRc4gd$a)EcGUx^m~?uzFFoxk`4wPPJ|~7FsWDNY1TjJzUw^vn{nfwUKPR#G_YO zRT}N0VS#prz7FB!^4ek#9waxsTC{KgrdG0O*6pkK8T5(T*Z!^KcG$!DwtxI0%ys6? zHBP({vH~-W6BqoF72~~;d%*eh^$&q`rQv3!B|B{2(|rC1e7lFxnMHZD&=N~m|38l2 z`?>8jzw^|tJ)S+^&Ux4Nme(G8JbBzf9n?`$w{lL*IY*EnzyN^A1d(&jIcE^eq^R7% z(=+2ehuzw({rRfyZ@8cDg{~TvrX`95@cn+D=lQ&&gN%l)@l9KDu5WgI?(xuqh_1P9 zy3h=p+YU`E+t9%&%V(B0r@pw+H9R4ZF2Ku+MrOq`fBBPN^?r8kF>VU^B&CvL_j+bV zxM4=Vpr}%735WuT(gyMC!d10p^zVLkq4(0w-svr~f0Zz2(PuZhsdm+>c?Qhf&u%n) z3HIb-3=O2wlP$t!ms8btS#9wax9sTsBgGaRbJHCw@Sr8iWaE|*16F-Rc%c`jU!+-F z(|F*?%Ox~bgqMX%^b^7T*IRI*C#O==w?}-Q&JtlMEQeS z^W@tGe0$LoE@hIHqm%;g6CJ_!yQtmvmt~7Mh=lF2Tk^bVr z!_l{f2WEdWJ1u-`a!UB_*o5co7{UUzm<9Gyywde_;pRUD8Yc zkB9pXX!?MAxkVh+3EqOH3(td#vpo{!V|PcQ41Wn{Ux1UZ8q>|EMznKVXlUU4qv92< zV|j7Yw7e)ct&pj(CREv^coDdZn`UpOPUc^QdB5r4T#g!W7oWkd13!R`&j4*M8e@MJ zA8!HcZOcy9q7AHqzMK@JLItgViCWA?=kF|VYs5Zuxc`zK2u~NU?5n|@WN2@taNDb7 z2`srHx!E7<@D?=q_H-3x-cVXjKfE-{t&hB985~|K|?5ueC4Y~zWutH z-g&`{*2xN~)X3+nXZK!~Tc_V-dEefi*>xbJJu2S5$^-pD(|?^$wVoBwW|WHuFS);- zRl#-3N#_4_>!hA;J+FCkyESIRIy3do(Kr9JUpjcR8>t+%ll4>jhxhi-037gV`{??2 z3J0&6}CAdS!;kEMNo6BT^f7my( z{!99G-#&ix&!57JytA-r`X%1+U*dcG$%E15pOM%1o55-Eub0%$Pk#6R{C{^cXa9V0 zN@_We=kf|mFV>I?b%oz`R^0vvTL>19 zcj4L(;H!_B{ZH_?9D~6evF{wP2JEqZ?9%ViMjsCUUj%n7Gwau?Joi=3fOYgD4PfO4 zn(qdCT?@QsC%5yw$>&z(|Ch)f$dId^1jkD-??vIt!<4r%{}n@U!1%-)%!pd%04f*Sm^t)GK0IpLIWIk@v)MFN1g;^0GL9~ zhlYm?zp5L(6j>s>wvH|zjSl@DJ9K{1Llhw+&X;2*%+MK;w7~Cm=5ZIfI9_sT{A6L_ zRWEtj)4cj%(S@7FjYK17QhT!i;ri*$1Mzn|a3#Td9_f^3k^e4pg-mjb&>0~{wP5+tXu z6vxk$U~NmF3nBNjl;r)O2grBk|2R5AI(aJJ`vbt>qv(BOd@gZ5iv+WD9AAH;(*?|$ z$^S2dFBIcs{KdiZ`MP3=8I7*MEUzu?Gmult&kupWhM@r>;8<}xUW7#RIX|mJR$w{U z!Gk*(2J2@eQa%Zxc_X8@#iRTRKTO6VHb<@C0=8)J(8jt%-a=DPC*a!0xB8aG*9_}Z zQmcI3Ox|L$g+HX}17G<57uU&$K8{R*lAX=MNZ#1_mHIH#WI^j@;jKGMVy^R>%Nc zSXlWZu}FSyiuwPq{{H9ZKECnj+|Z2VPniY({M!AVpL~4f&WHW8s}IK(Hy6>!p1U#EdOyMb8+tIj;1a3qZnfF#po_}5ytbudvy^Nojgvon=cC>q|N6b&%QqhnTq4Bp zUhmAz=;EeeWN8D>@UWOF0D0e>M2)UN3$JAuVz7m4CDh35m|Qiu#|R_2KRjdaot1{U zw{u&LP?Bzih?wwfIwQ-DNG(1m(z*Jk#RhcVstecdtH>lbi4->1j7aI-HoJnH>%&9K z%6Nyn$<*5MFCX-~fAQhX7}$EvK+zgr&-&=PX%EfF89vMBn@?>{+xfj}i@D+0NatjIv0-sz>vhA-dZJG;m z+Jl(oi(IQb9Up})Upl>vBTsD#rCpIiieA0wyjUBQ>bwE)ln_~yVQ=vyOvk8qenaPi zyCR<==CS&d9>T_W7Rl;JH1uSRZ{F#hmIyW-z?D0kO&Vdk`NIBq-fwV*{r-3fZq@7} zm)<6nnVnnyhNo{qW%}9q%Uj4TJPLC#I65m1@cef2b_xKK2`)igAk(LNCl=CQ-0sbi zP1xKyc}0*#syV-^sRhzI$ILxXm!#W=Yg+fwvchmMvn1Vxx80`$@X+9i?Q^c)m+M{R z!4&p6L+?{+c7SL9z{P*NNL1lj-63bF#W9e>N;*&WT{;Xdiyk*eEdvLKk4!Ht_$U6Y-;9Vxxw}D$>{7g^7L+cqUAncrq)MxL06*O>eG9o z_nGUzcsw|BJKugbnA<%YV$JH#)(-9+e)ap$$!Pz(k1yT%(R-g>{j=_o>Axm3;-`4g ze)V{G{@q(ohCjI8HT>xpPew1ZFI~COJ#!6CBsrySR>u~$%wIEm9T~3u+bJ^-1 zufvBbfBDn9{qrBOmwnPVCivpZ`$MCRYY| zCI)z3`tJ|U4tI^OPxQ=6W(jm!99)*qUFsQI7+6t>9?wXmWW%e`G;0@El`5rNt5Qfb z-~ik5+Yfssi;E)FvS39sH9o6WY^XGHnRat{WMbjhZ=auA-n4FNJZ1d#o8n8??h5Zc z?w5Rg@wU8cWJNVNx2f!z5=n1%jfpA0O`;S)3dbDCeGx%uf$a zEKlCLH!w{=!NP{tDqLKZuXT?IbhZ8Gq4Mr&_N(9jTXE;;MGpQl_wslDR%{+VPj&td z(84;lAk~wXWAQ|DcKV`hJXTv4Pf9A&*jFC*Pc7ja+Ms7jz9NSzb%fQyRM9{Wpk8Z= z+S8Sn9j~>W`OXec<^p#%%eNic4ZT}|Moq>uu{WR&MdB1P4dva;?$-wN`jR%9Hs|wS&V%s}Lj{TTSYoAY4_QYrsM5=Aq5H1c?OZr&BmZlbM`4o$4C^p7ufyboLJYODU{<6$EiPmxmlc?oS*3k?0uO&gUg17^_vRMiIrQ~4 z$Tg{QsL7h$@hn_;natvfL?5bzi^mmki`=TplEQD2)rOimu6a_9*WVhO4`2+7?HLl8+U3ODxSmLW%skH|+S1?Q}ak3dI1=Tomj=W=Q+0S7p=i@}c8!~-8) zo?d2sGF-MzGK1I10l;W-r>u$cp^dH>gIMj}7HxT1_l|93z!_BBZ^`P@ZM+=l>w;^^ zd~114u|2jdQ4i~^kxBUear7Bu;1%P*jyZ(5XsOsS=9bQ$Pg+g(ITecnc`#s#^KA7 zoMqyCUOo(f#&LmE{r=@Uy1waEFl%>-8^6UFco#3*9(&Xwd2J`4D#xMx{t>>`1N6HG zk;?HN=bO6L5z2OrE+vK+q)B{e3G#um{F^!yUyHL)UCG9dKA?^st71#=;S9qj`rMHH zkqc1rvp&-`T@I1?AL0BR!NVNG*G8UH^ZPSA11Y-0od9PZKhJc4m;*m#H<)w{O#pe( zXmsHoJ!I>7fXe8?YEZq?wsSVLG5&OV1)&z3+F1Qi4sRo(S8Z{0MKODSL@+-rkc*X$ zI2B_xsMS3yXLBq0ezr~yS^elMU%Yli4pj+0FK5NCOD{ml%=yO*_<%jHZ3nk7Ll&Cw z+;LRiwU9?<1RpTLy_qcGEMvkR)tyb%s@AbKx+JGY#l!8C7Lo}vFV@+n7Nok-M`KGv zvvj{j%EwELR3fe`v_pnA*l;H!Pzk4RDIUFXk%Nq;`H+g?Q?z-{670`u^z`{;>#S5f zdR>f__jCB`^YokNQniCjzI~eCd;R+yba7;s5P799k*9~Rwg2*W?ds82b-d$MWa5=r z?YNw3o#xR2#K=1JtZLlB4t}F{1j9>8eHaf!T<=Syvpc8d*4cOUWb>p(CP0V#ulboH z$!c!kLulgbXy*2w?zWzNi$}fL!b`i`IQwR=Gxvi}Hpx40Ru5ma(Cjp_?N>FRMf4;& zJm~cz9)$v2UKYG1$K07ATPu}nJkNm*WXYSL*D#SJ?=gdBD;q8GdwG}h$$mPwLythB z$b48&<@aA^$#sKXARF-L6_L@;V`xQ#@y3a-a{9(oKY8P*9={K>Q4oU=Cc`e5)-A}7bEb&eP9?}#lzQ+qP3%YXn1e%{Cv)u_bDQ$FH-g6&&ZN~ zk9qGm(@U}+-|CtCn<1g*my<%}+w@<2&YXSe&iLy2d!s9FuN#9O&d43_56?*7o|q7w zADk9_GP$;WRiO0U=pI_U`nZ4Q{?e*;WO-FLzalY+7gm%CI6N~s7GYDgR)lNmghsXy zxF6zmeHt#GJY{}`kKcvYuOGu}((}|lX8u3nb3Sz^TBq=qr`-Q%@Z_iD(Vcd*KP=nF z(aPx&dlmTsJ1w}|3Ug$U-ZS(=#}Sd%ZhAO0tH0en209FcBj9VPIpQ&I-Mca%8JICSJ;AOFrp@Ybi8Z3P4Jo~n!GwQeg$lR z_mj!u7f+){Nb20_j?W_rwv-^dG{WcB(S%3vf5Qi(wMEB{FCYdU5a&LLa36%hnj#&2 z5Hnej05`A1;CHgFxVSbx^kgA#q7fkA-OsEYU@iy%iwF2zeDGnOPL3Z~nup8>7x{s9 z_&FN~26{&G1~b2SJqEQiZp0^KAzROmmcR+V=fdyg*>Wa*$fErCntb$gxWQx`c$nP2 z%x=e{?qHoFkFQ|m`&i)q&1mAy%;09dFJ&e}zoQ@O=l~q>eP94pwxE6Twb2at(pIv% zSz9VrccN)T8-Omoyyefglz6IEM;7H$W@E#u&Sl!P2FO3DG2>Us?A!(CYlY$X0!DAz z&-eE;&-?kA0dfh+>FZ?m=ObJPu#-j{9d3-ZEQzNFEkG+n#z3;e+2f&1d_T8`3kg0~ zG&c244^NT>jeVz?M6ciB_v7e3VsH#m-pltI0KR_=EC3-zHem_j@e3B>oeThc4sm(| z;@ltf|5d`QB>_NlA7=nR+y|L|`2e{r0g2wrduXQ$$G^?TcfZcqlkJGo67`|;q|>8; zCxq;v^bYG!9uF8JPxHBt_0TpdQkwwp9B3ctiz(X!xjo}LS-iLV=U1jBW*MU@YwoU1 zxXPp639aR+VE-Yl|E?6?rdGv|8(6NJRG6SI7WZ zN;aO)^BTrDKlFpQb$hdW_rafTMT*DQecAnsU`iLfiRuU3=kI}6yiM2Fujs#i2R!2g zbRho#cJNbcdgs5)iDIw>2tk9v*#omiXW^jOMb9`2Vhg7 z|6}8}<=ijc`{3L=H}9Xj);sm5%zyv+LC@shU%L7DgB!hLx9O@FeKa_~iAKrAGepnB z4&25r9COr*zt)S%#7X9s$>2(xx9#EW`p&5=o^8(dPA(68al5DQ>b-#x^!~GCr!8Kj zwB+WKiIuyE`v;d)+C_y;#|&i{T2fl3)=joWsouUQ(>vf}Z4bu;*1LoA&Wra3@B|1F zWNH;wxBX@Cw;Epj`~o5snZal4Wr%(-G^6R6SkW`Tng?cAoKplcJQ@{vdKM&6^feWV zm~!-I2kwomMc0hs1|G+qdAXxWfbYIPQ+?{s)X(U)KPC(7Dfz0edA^>4s~(WIcmPJW z%QIP-T$X3?-`1PYe!EYZ#tv&!%adyp+M7mmZ_T6Ku9?D>YVV9Jv#$4+&@TXX8Hnv7U`&X4VE4Y`1 zygd1@&tFzbH8u}<<>7@jrEfv9g;S2c}Qm94#^vhJ$Q?tS{g_N98~KC{y?{$aFXxg)YT zkI}pzS=qetV78GN?*zeW@d;JHB1>fV6@%$AdEAu@IBkXuwT@4hXE*Pn64q61pE%B5 zeWzbn7=&FDf(dK1F*?0!y8H9@E`L5SwQ_BIS$PW&{S7i6Zp$?0oA-xiF5T&x{QOSe z^bNcZ{mp}uVf-px^ef!lvid%_cfSl^O>#v3zTotov?w@Sf>q*;qJLnVwlu4c!@9 z7@1g6&yl~hrgUe~uJ1eAXW!a4bZ+(Jl3Lg`A{e>$Xt;N1UOdG5G&+W7^DY>`q%H3Ys)bfVx_QUSA3m31^)hRUX zz4(3T=&OH@|KtDse*koS;KDu;wd}>KKJ10_2^$g7pUB2;n zxOYlC(>*>vOP9dhBe1H)^)1sHn%zxHAgDFF14d^!M&??!xp$T+le4?7bJ%)jHpsHc z`eK=Kpwig$;8C-X5wn%6?yh}w<>u^1*B|rodz2!XL5XQmy|ke>?>zmEUYtW8xjjhq z+dlfQz}oldF|ONfWMli2wJn7?tRja=0_nYVDN| zJ)?`9Xe+ts8u}a7nWN{);~R#XA#!D95Ff~d%HmrXS(Xc#(PW-jL5`Mcvwrw$by~PF z`rgIs#6YQs$L6IYsQ1FvruFggCJ7w|) zt5`W}#YzXrlf-t7~FB5&1$9CJ}s`Rj47=nowvjrxh3gVQnuwN z!FBGH@$_u3 zA;YV#*tS$KtkhHGqf>nFPthzL7n=uX#l08DDmFlo+)#DHrsF|x;+?2l1L>kOnlE@F z`J!+`Sv+|DZL59uhX&qR%F|P6vD%zm1;D4=D5a$@Kw}T5z42;BLSZ0tL!o)}68}T7 z2u4(-N1zzyz3R-tIJjoi7%3O1Of2F@%5v@~F#DIi(L&K1FBX}x3V0E-c=OYVTq`c$ zve7+PAR^`@MFCnA{iKg>3Af3e@Te?Nr%-9L7?|s&TW%{DkX51g!0~4Azf{TjtJwHD zWGy*Mx^`k!ZhH)LUT%{Y2wl-K!;zV7(H*PCN=KYMj85dx;Et7523u@hXN!x-U|4jA z)6-x_(-0C<8dGST66Xnjv@l`u#D@tcA1v&gJ<(XAUoH#fA1us^-w`aVzDwrM2NUB< zA3f?Czc@ZEzRgn5Lk`FI^n#T6f4P%m?{K8s5t%g-x5a81&LHIGB$CYM1j$7s>>~kq zZ6b7Dn!ridfAp6>k^I9aH|S8xRlsic(E{wj$+fB3*@e5que-AstDUqFsI{}ZuXe!# z@*m%M;``$MU_hj_CBZ&2%rhnC_9lG)4rcltbYQy>FKq&~n&`2coY5Of#Kdq>W%T&@ zbp}QNy|m7k&T(EV#w&+KIJLCa9_h?#MdZl^&hvDFm$G00X|M$Rqm2lje?J-hKK`6u zgP0GVk35EQnAaZhvgi2ohaK%e)ZkAAWafYmFLMaUDa1V!L|-3(N2f2o?c>}}W_XF- zfEHbYSvSv&oAWc>+$AU6vkSV?&S$`w(AY+ApyGTh!M`9BX>D^OOY#|VWkm{mOggo$ z-6R7~XAI@d3R|?3!{s3335f|FU1kL4e(bS(b~thi7=el2KGQb&gAmJPiB(OUea&!` zCNldvx=h~A4wjdyj^4q|;T6r=)P_Nbv~po!eq)|9{KC9UH`zTU8t$6e7+p}{|BlOWG@aSjvzWQ$^G82kiPq_GJ6=WS1 z@byZHEWX&(nm;Gr`3 z0cyf;(`Z~mI!}_!$(VOUDEBf;gyBb{a1s8&IZ+VpDe{u&D(dbI*DbDv9yd)`OFq?pnOEddsz3}{@h2q6d5Q7B1#?Z~2di#8tns!VB8&MnEzB6PKeaHWX0y@rOMMIYTEJ)Y$7 z?Vh2%KV>F5MlN*#K68XO`jj5D6ExjV!P}ma|8~k}d@okLkk|}X9jp*=>Kzw6>DGuonKY@Au192de8^#L=%;hke(b- zwBjTXJ`2N%1;OnC_6R<5IwOG2efYmTJVSowIX};ECqKl)Z0!Zx@q%5T#YeXvD_h8z zH)@>8?G1fEx4s=PkPia?pL4L(xyTiCGNX6a7C(I&o!Q%uci#s`=H@eSbu<8c?oNU@ z9B|)c7?rKe$QE*9vHCRO_ABK3llM>7KfkQ28V4SQj2(E@Ne_b^{LqHif&9M;^}Y=g zxCPK{O}$Qb3FkHuU3TF~xXKcmQf}{iOt*lxPde30@l*Kt93uM>|}l3!oB(V-2G_ z;I-9)%>SHMqXA~(fXoyQ@U;;{Ip{x%nP3&Hul1_)vxDdjJ9zI6n12)`3UsgbWkmEB+ z_z;JIp`Q5BNV>tZY~0txHMX~TZyGQR1(+AxZDk!Dnwb4k$dPA}*D!^yd<1-UC|o(| zRyb34ZSlrUYrJ}m+y5fDZXaMExWFU#5uG{jk=^iqX7|OrQiJ48!ofj$o zgc<+eiA0;{W@m-p=K!MpIoC5VcTOZ${9tlI@PqXg`46}Cjvp$w4Cnst?eph8yn5%{ zXV>oj;QU9IfAp(&KlWi1?h6G>FSyh2$rg5v@9dLP-) zPBKI-)cIK~bV|UjAU{uuddaK4e!s8(+JnInvixW0=U$`(V5x6vP5fwdUNX0)Q{!RQ zV4T)U^==y?XeV>O`O$>fbbolsIt!_eN5FY!K;R$*F$kAlL2J~sMd~eb(&{ExEQ=s5 z3g>M8;Lmu(bjVbf<%Wz@Pl=?zK;~Ag2!E0z$1p8p;lO*EwnegWu)zo> zX7n=I7;r1y-Kn77mG!M}yKKGVOBVPlmrU<*v3gmu>ofM$QwE|V@=8u3bbqlv?DKi<5k1z% z1KuQqtxRTVx!QhKbcYJrXrZ0<xLkgePJ%sLU~64sSPN47Zw7TrzN z{iT6v(Pfd+d}T_kzW8{2<>SludM-Q|S@?8vW$W_eN%0jj9&Qig=f__`72xI zT)Rf*#@)w*vrp&(?7seR|)ivHTFuOkRa8xkSH?s;I>Qlofn0Ws> zx&@`1w)oo7v)?X>6uSQRuiSd{aCour?(ou}Q0<(m9(=nnziynMb7S=3$n5m=nr=y~ z3odm}Z3sBq347)x>kHB?xlEx~5qhuM)*97Y>TQ)up_1Kr+`T?Ky`++?ZR(UV)z*es zqS9;hn}UU9!QcG!=M#VT>$m3K{_wLE9{A0kkwwkWywn1Q8Bd}a$JAVj=c_qx`7rrb zZXzdbW`9~UFtse~!u$UPK^*9O@cHx%od4u%Kive=WKGRK9$ucC5Nd@FhvwJ8G*lv$ z*&slmeEY$mMS!qdZuEt*nfoSIZro%@zeeHV zj8Lhr?7T2^H13_;#Bg@UPY)mZv{DEiY80)UAHk)&Gcu5iMXkoJNsZ>Je)O$6l&UOV zyHEWhbGF_cAL|~S85hY-;_AuowzcMvQKVpsBA*6*Z!xv=vJx+!6v+X}W*dh@<2_4} z@f4~Ye`RE*UGJHZY%VCAY&E;~-IK2!x%vsv-zl8m3n}_}luhP=dwtX0s|xd=!r&Yp zoDz+RHTH#Nty?&~wzW!Esu(TQK`-KYINbl?ha?Pzdx>XfNuYV^SU)r3% z*E=Un7k3m}W{+I9?V`>hpqA+zO0r3m3bRjz&OvPnWYl(FLW_>gfbNYkw7R{j532By zZIhLy`S^?b($8;pYajH@IlH1-Y8HOCIgJQb6UvQ$C2NNigpV#5LOL)l%JxDSG zr}Lca3jTC8E0pNsR&OE)S6D>0pXCgiUfHzZ1!&UYv|G+Kj|yb*#&7n{+eeqw9$)b! zp?9SsV6GwbpD8q-DFBM7U|mg@i#;?ib4G6VOoeaV?+ech6$_)7U#w6@Cs<@7E|N)5#CMR@@lALQX>+7m)VUK` zenu8-w7_haE&3VU|eeG6KB!?r7~T|hs_;lj)s zjK91|Ct%*hwK3Ip&&=WUuFe~)Ds$C+31zS%r#~woE_NQQVutXjNpfQ+wk?6NZEJ9t zLbBmxVYiDMkT0gESKnV)Tz_|NR{Sm=fcN_QCqKA(tNXLjN#SksHhQN7@(DBmOJmb3 za`dAvx{J`frW5euDg5_o{D&Fz=o#jn_=eHj$yN%oS9;OhYreeGE&S;_pUO9_(b(}f z|GER7wcF`n!#~{u?rovHuR$bbyC;OH`HijYgYo6~kU&As6W$9t9npbS0X(W3+n$Qd z5@^t;x5t`)R6O|hFi<$!>G%PN!KD+RQ0;UMZgTilVo+nh$+2}5(e0JcZdbq>3e3?t zw4p`*yg;8@4*oIExr_U^k>KBQzE8u+)dC&vpL+8E_+UrR8X#jPU z4CsE1$PA%AkQC5O01e?A?_by)pWQSqar144%X?V+YdTw^Yy^8J_Ggd0le8V2h9l+k z1e|ITyeC7qT@kH+m7M-s>F9MM-KJZu^|VgbS)ID#YN~nKDD6FKkda@(dtCu9DD(Fv zG%IPivB<=lK1n`rp1i|ixO!AV!_~>~NUCkY(D0JnHMc=wQ=!f2fNJH#mua+AnWH!V zlE4G)x%z0xe)Y+?Z&Iv@p%Y4LJh8mm6)#9BSYr0bFQ{zEX}L8C#**wB7cn0cD)rNE z_forW_7Vr*?Q%wDR?HL;T$J;BZ|F67UeB~&cHT!7-F+!kImr_{Pw&7{8vH2IZwBE_38jEU;0u5tKAQ#yPpCo*F_RNNDTL9E29XA8^~Q~u)a1U%sg z+T%WYTAn1T2i<$mf7czWpWU{^OP53G>PPe$|N65#13$SpwD?QzyAMyl{g+Qywchii ztA_JhPxgY$7CXOc@V`y0_HUjHPW@_Pdim|Sg^dpdOR9@B=3K*QcH;?IMnb7!bVXuZ zSlu+Q3Rktt;Rz8rcIc&2;A~*6_Ht@6T;1h4-#cQ+G?0{D_0lCO~tTdU^YUuLO{Wt2&r447S zQA5X4CwrlR$D_*gSA-+Z(F;JXL@PzlM~prb^y!5d?+G0EkiG9Th1LMAc|8^`9>ti~ zLvY!FEmsUbcs>lz9$_|x_b-D7R5~31bjwEqTV#f?enrT=jxuw0a_X7Q+aYv9bk>)A z@X#JUBM*KBAN!skTmVcfKR(k%d#QTy3Sj7*J zr}M8&u4o&dS=!8VVFL?sz`fhSJjn>?d(Q<|13;Dc~`0FbK$K?EQ@%WU}0bU3Btl=PWz3}PH zj{ZMMENGImf2x!F$Mua9TABcR;m>wc{BnN|EvMJ&wTjN-}RJSPQ?;5x@sV#z3u;1AwM06Gqz*;dO<1%^_2$8stnJV1J-P z0B-^qf-BZYf(67W--+N$!vj$0%>C#;NbYaF*{r z85Lkp9eHq@JpUDiOM_;@xoP&=#+TL&_}wi47%qc5;uJ!REA;_es&eWAQ#Rlm7yRun z-s>lCe(-kh#3&tolMe?M=B_^;U1By^@5h7NJ1JI<%t=+(9u3g}wx}ah%{sEIvC>}x zhcB^GE9l|b4+*vI(4<%wS2#134O67W9=t;qRFjD68b0eBx)C?CnqIo)uq%vq3%Lb) zW+vO<{DwlvO7+#M3;t;xo|)fe3lVz#QDesx0DQN3?Y zR)#BR)AiG$#J7$|rHbAsyG(H_oyCE^iAC$B+dZxgoj1ZB?z#SO$bRW|pKEMU9x;Rp zc?IS^dR3C>_tVG?(9(u;i!yT-{y){>qOjLz#Rz@?-6H%qol%hxezG746aM~)b3w9g zW}gGk%R6~r3>XzVb2hqvaQ|?5Ye{C261T7+RG1~`Td^3#<%=6z61mQ``fzY^{!4&} zB_!S=>GnDyYILqCHwGsJBFgR7#+PMV{LeD8EOT+N3`=y55WRQ7MTtHI&syO%)pV|C zgFdR=T=TFFUz$;%;T@h4hR2pSBN8r#5s?HOZHe`&h=0ATH27L-OQ@3zbK*wqrLkvE zz{8)?CwROlw;$qDJ|*Yx86f@{J(VY%i4Ohg#yOR-%*G0h zvsmNkb&zucyh_1_@7h*>_6I}l=xYgIw@^QNJxU+mt*cLlKf-hWxzZNC_-I;k9&PvA z-D3;y-|n6MY(%L1a&%dK<;uem>exg#IM>`n>wA&zf%EXrKSdw$XTLiC+5dUte(!&x zXa27S7FEBISR(H-v;D&tcl+P#pIrHDXnOrJx|6H$-M5(eZ-08D``*3&`G@Si_b%M% zx<(Jc)zNwRrH`)O|B#rz_xbzx@AOZ9@?cnS>E7_tm0NwYSFYUaCu(5q@}u#UD|eoZ zUA;fFaO=Ua@WHLe<4>LpEet&9ot?hZx3Icy3~1uTrdqmXU!#+G6@FImV0gOs!D0rq`4Mt7N6~lBBYPH*mpR`*y|GB&zzVgH8{j~j>MgxuVM(G; z$#tr2jZvkPD5S*5tuHMyyoxq--(vt0jaI8LD1^e*r60fZ&cxdveLnxz` zDbU(v+ny+0>7C5RMy7hW6Hb*Yof$Bct|SC1n;%b~8v&f9vj0rGWp<0F1k(9Av3BOp zj@jyRn@sw8KcAeHAJdi!d+MAq?SY$yyt-Rs}~Ps^+C z{zb>VjXkTr1`#-~*tYkP)A3j&GYvm`^UWCkn*Oedm636=W(H1s9=dg!Y>1IjfqYmj zw~eqi4%{1<>$^8NJ4Ol58k+potB*#P;Z0PH!&heZIX&H7I*P*#kI5*Ho0k<1BRU+DLT3Tujp!&>(W5Ug%&ux|BQqj<*Wk2$WLD%^ zRT{`U%EmZ=C!C>FI@dTXmiM3MC6rCk1)oEkmli_;QsX3l_XlJ@SUC+FMh2k zTtb$7mb}vDZx|!>wpi_L$TY6H$s220LsfF&o9%3EZ-<DS3-|Ren`MMrR7RfNoWI5a9$xA9|35LfnR12hPjbMhXDEh;7 z_F!q}>9>u>!OIdFf(-j|jvTT)p^jO6`)SURDFWB&YKf&dW2Dfx#n2!`wDv?8Og4^o zDTP2fYIM;jgl-ergp0$Tx6nFs^SX?f!VTNbq<%%I*WtU;D=jfSS&ursGi5ZQ)6`mn zMm&%v&NoJrE2$I8Ogd&*@LzhJ$#BlLUpR8jr#8q^Vqly2XihYxof9eg4m^4yMi*kFLU(Q`wSigRo@^ADQ}WEb9Xslf!qJYl7#M!n2 z$6E!%DoG8#B4_?eAirB=Gt5y^RUq@P$o7;YdmxKumFrfCa*uX84MOl>-92TjV;c7d8#b4Xs0i?s5x#A^qGTExFIy zbwdCFkV_>{I@O%_>8U>Lj7S>#4Asmzie&9{0}fJ*w_K=lM(28FR+r4tvKsBVfoovk z%xq28k3DD&Jb3@T0cJwul`U-)lc#AgaSIU)h5V6n!_wezlrb0!~T#nUC&u_dzne`b{MT& zU={)R%%;_Qw|CYFRv+nbFlg}G`D60`s!to4_G|hA_Q5I68s+1!ntTpb-g_n8I4h#H z&!M|WlTDP)kWW)T`^Ri%=S50~ZiJ&7u*g?g-YZ_11pb#&5?fM=**!)!7kcMnfO$Vu zd-fe`XvI0VuD5gT{h9Vz7@a}@Pl=nH_fBr4EwlH^TG)SSL?g4EKYFdLoPMi7D!+ji zLd-q22*xu7mplQ6GzLyG08iV`=hwYy@I6F-{t$1)b-Wwzes;V2XZUu0F(pu(r=RW` z8MoJ&PcN{vzcnsWzpL`(E=cT&_c$;AYHVih7sDfqzZo7|es5W*{&Zn}J zELhhP++mM3>eO-7$<(a*GrRNw;uppz#Q7PWcs_=IEv)n8I=O!2!^fBp3*^SPQ(zHs z=EE2|f&}&jv_Is7hKj+?%m}6yGDk}hW-mNs_{ZsbL8BBTLodv85e4Uql3&M~(j@=9 zMdn{U6w0=ObS3zVzJeEg#E%Za&%Vw4pZAcL=VA8jcmSOI-qH7TwEEk0U}*6JnL5ut zXFey|9uMCKte{E8!KwJbV=n< zpm*0{_rt5O@9p>+CoR z4V%gTmji7eaRw;=Bk>Tp_oyLjIgcKQ7W*$X)5Y*G`83 z-hvw4(K!##tW6*>nc#uxh^+*`MFJho0DgV;m0BlDko%|{@SaD7w(Vpuc zof1e2E5j2jn&l@G>yo?u0u@4&t&J^*>RR_C)J4USE$ujicuZ1d`cHF> zEv3n`_|B(S`r+mKF5l@JLPS0O`K|7$Yh9xPc)JbOO8JvX1jAyDwwvGYc1>&U_fBs= z9u=7G4$PYG4hw9<%NkGDY?BL%JFz%0y(Zuqu3G$2CjO*pRcSIaaydum z)|@j-63^1QCIX+D+0fcc3X`v*u?1_fQo9b%lov|2B6C7{U`etS7+YKoEXy>}%`JOc z?+EAMOX&lv?>ZAZhiIM-wa)ahH`zKf`;sSUHOPmpo#MTJ=1*16&?7zNjDUx%d03(k z0L|tOQDQZohoXW-3jKQlUsfhv-Aj1ljaaIBN_KY9jo-x$uS9fF!&pCjuF6*S1Z0$q z#LGL67bNOW@s^xN^Y+Ybl-@^1Iof4$Q?`S)F;!e4yy<=tOC=pB2PjJS{c zCRZ=@j4WK86l~rZSyVi{{$%_y*J=nY!w6cJE`i+Kg`fMumybt2dGF$#4>*5Z`0RG? zhYv@DpU`2+x9a|2cxLJ2fobtYy!#jL^v_)GnG{_gm|o@kZ9V{J>$=-DIZXe>JaLS& z=HUwk&(zBBf_(BS68iTsD|C%7J>uU##xvVHCf1HTo)nEdnphsZ_IPXvalz!+;@V8# z#PaOWtYnVNg2nEcjWy&-o7!!QLM)caH#byDo!X=%15|SNN&kjWxSEWS+D< z!Bl~3lLLcEgTF<|g$%y<=AT?-@9B%XFEwBN;eW`yk<7y78z?EHTl4E0n_y0A5)96Y z7M4~uEBNNc?_a$sAj5K<&v~m87xiFt(X1d-Jw?8{A8lCk;AN5w80_^2{#^6Gvbwn~ z>z`cWh@Uo-vkz5BK0kX5JrZEOg)lyq5FB>Y5iCaXji-dMXI&zN)kYo(dbhIK6sm9G zW0B&eSw^Ea$2v6wIWvYwW{8_+@_ygs`l`ZYM)Mzs4=TR?r~l5qUCi=aW@=A=Tkz%g z(0M-fnLSaHCqb=Uy1DVm*g{ieCXU_jpC4V@a!)_|>bqI(wsn|8-Y^*B z^pk-JA)0^eA2loMhZTPxcJ_vy>_EHK9XFvV*W-?BuUo6b6@Zo`JM~bji4;vf3vQ`@Qx47lxY;`t3rw0hZ_6 ze6IafhBdL{t4?Yhsg%EPl2^GBNoy#b#QT*cqdWt~pCs@wxe2z(ESR1JxO_6U5^!hR zh0M{ z)oQhU)@~oXXnN!1jwR|9&Y*R;hpJTXE2I5r)(&6om)p2u@^zufgA4q8_mVXHzgy5o0iU z%chP_z|LHV{sf+;WN}B!CeDL~B6(u;5US$E{dL5lLIj+PI!APBU1=U6^J94178thq z(!F3ncV!ye=TlS5=O-qGZx4?N{-M8r`kjHn*$?hK9R7S{TzDJZfA7@1Y;t;DD(o4W z2TStWb%A0;?MkPZzv2F4X*3IXqw{$*jRm+iFqd{>%@6=|%DO6tZ!9ZHuup2^Y?)V*)-mYue`8io1^og_vbDGQS{*c&Q3<`AL| z+D6|0HhT5#Sou)HxkQfdcoRQ_%p5DPPOj;wh9Pc(wF9p*{Q(Vh!T31il@NOV7`pQ$ zqaLvruS$)lU)NX@Yh|+d;`D+f8wbt&?o-ZT$IU|fWvg=dx&`;yM4R4156}RUtC5pf zLqk;t_b4%|mqYpeQm*~F(tP&2QWkEVucssMfLOrqiZB20zY6)ouOsW*e$Tu_7Xaf2 z!g`$^UQq{R&P=Sl`*jvCUFP(=|DHi#5DTU&@%^v7tOSJCrU@$y&jAC~b3l$fP*%oRyy40Pay7}pA3 zupC!fqoGy3&nH${-9rmvkJ=gt16@SX6UX4&Vt6h>h$Xyov(GxezHJ;{QW=NW&AQ=L z-8LA3oyrkB+!?#dm12HsI|}=6ko%rOfwvh!jtuNCI=T_iXEmh3LSvOYfhBI^IhN5$ ztur~~ki z{8`V`>aWIy+IN??yzfh$$+ssKH-0fbw)Csv(Uo^F8-6%Dw|Z%4a^*(%sNmt^ihOu% zZf$;P&A|3=P_Z9axgX<>WUI36D>OCk4B6I{l_YCqv)1tP)9b;7h0DeBUpYZ1@s!@b zXPr48t`zMoq+g(TLKnbOJl1FMnfz*=(y4mP+<)Ne=st6MJMd`@c=bBZ3&TP+4;P#= z2g~HLron=(rpu3p?cfkOJh&}*`#N)N9p1jq9^PO%XlMy$WCm}+t+$v<8_cvdpaFVl z8da`O5r{EQRsfnMX3StdN??1(mmUOX3=${mUsf92^qF<$GPLQnI35Ppg#vS730-?F zOzuh85p9Oh4lwK2L#zwvjuQc9;SlR@r{gXHXC9$DCrkubG(+tHU47)?7X$3i0oEaZ zr)QM+N~V08SvW-oK$BS>j4)E7yRYO#|88gY?_}_sfx&cAOTZYTTG5|uaNccz!;u@9 zDEq(}{a`^@f)Y3NK%a2B7A`oAkY}9~{_%;IX6ir#CBS#_(@O zOC3!W8hRZDa$I6~{F}N0E)OF46;7 zPl6+$2f&XJEy34U`R^PvQz`{NmtuWS)5%*P(+m$+B?|_Y;d#n{vu5z?Wdg}o7XMQg z4jtbZnLgkKR=Ruel%(+KBzb@I#HOO;_jj%-`GNTevtk%Lh)&ODgvB?Amn=$mVUoQk z0iGQ-(Q!lm9=uZ}$bAyP+aA!^W7fO$Q5l?XUg2uwFbo`;7# zX(KuE<_%-W+rb8y*`gg8G@T<+a3u0&3nB17?x|)F%*z9AWyiN-=5sP2XJnk*)A{oI zYVMg$N1`ruXLi=Py+z;xOXLX7f-8(F?1^4<_I>C<2lD&R9*XsW>wLC1=&ZZ4p>%w@ z?FwHY3jbZ`kau4G_TPR%rt|;RBa;8okburVGXIvy_ZKcn&I!l>7#)g!Z#-IND?T>#%=hR={>>m5|{obhyWAhu= zZ*@;RL<7)&^}*mI-ul&4mXa<_UCwvt&ap56-TwlZlP^P^|2pSl$BHHLmG`cFs)Z^H=X|e|oFGljZH_ z^Y>i3H|QCgUrTatz!g;YIs*bZEIXS_Z8vwI^>F@lj0=S?z}l5;Xs>}vNE>qK+6y!U*M`toq$ZzXa6zJ3lIiu)%AS$_ZS|e5QFZ^!3U=r!_r-2p z#eQLOgu+Xb?U2MAj*!Qa0AtGUzxZu2-#UniH}&pE<6k*(8sb6qx?HarnikN#KC7qR&B{M^2{>R3&98-p zN=pV(wTyn1^LQwSCpFRW@9ONKsLh`U;VtN73OX^fyZguH!ZMvJ2e#VEG@hOMSm){b zK7uzpl5RVXSUaA@YG<#=W_o7y#*dggPI%sr(Ua~wQ>}f@W%L15>!I9!t+OwC)Ab@V zS-ySrEaeQP!*XNT%V+HXXYS;ovPJJ1L+P3_maDEX;7ySk*E7Gib@|rgv3D4(-{t3g z%IE&>XV)J6YS+2jSvUqQo3L^BtN-wf8?kAGtysNeK7RPx#jhDM`uMBz^p#I-#hu`$2Yoe_RosDX4Z{k zQfqvH*=iZQYcX5dUC1|%C-DP<$zn>TWW}-+nSCAYwo^aI1fQa$KkuYV3XySFarTr+4zY@UH%!re{N*Rr_S095y%%S(Y<-W4h@C{aSv7nAf0Ew&JI=$r z_hf7*Th5-%y?ak?oY;lxBnJ`55n_!tWT5<<#e4djEUCA zIS)tY*7Y-8!}HVQOWWdLy1Wk8Ol_HQgjcyLVfgBBC|yMx)}RE? zZWX-JqjM`8SMEKOsf->opSjoKNx1R7kR*N-WiO1nqSY{7(uf<5Z%uBtNp>t&G;$8E zDHJRF&^rejtt}{Bl$#d8xy6BWbs=3po9v%n?jiG`=T7UuL`&b;I(h)Ib7SGdC$BKr z#=_*hgz%^&8G*or<^9YD zy|c@TCOk|JO~G^*xJvu-ww1%V)j`Z*|BBi%239#TGP^QNQ26x8lkZpSC(lA?(0%H2M~eP!gWJ6#+i@cR4Wc&;(>E06&qKl-7{%@iDQ+bX z#{ef{pg+t67o)ZL(#ma}eRF(Kj$b3S3(mDeM&FJRJ-5olc$%o0&~+H-m?}EEVqqQ&qVH#|ec^)6ReaXeC3^p}TZ{KP zM&u9sr*_ahDXu-}Q4K99!11Sz@Xd~86{411R{?IO27h#jHlI9kf>kVc9*4HFEc|=^OLlyfnGe3NTvEG}W%k$_yIO^FuZ%Xi;!Yh@c%Bsa|00s) zB9KLf{<{o6CTULyJW)>YdHCv`cOYI>89s>>K0)l)()$XnboPAPXn{XB%^;6(6yg8B^%- z)4@5Q+m9%j{TbUbbfE+#=nqyVR(E(HyA;|$K`&_hz*X#I;5a$1Zf~ka|5TOgn?vGH zOKSY4Kmiq`EW{*a_o%R{?Pm9%?XtgbqpuM>2HXycBqMW=^CYQ&K*E^bGoXjoF#{{v zUFGasN<0Y)JkRSKm*shd8QDdisz)-NQdK*gvx`WiApO=c`0-SF|7jNQP%d0PET;CK zmWACvLH>TIuvg~5SIGUVMyqEvj$aiyc#U3wda!s@CS$P}Djk>EXG&!06=RJjMRTN- zwxoG7$ffYT9=gE(c!guz~e?(J_XTixerI$I1 z2h%x&*NX!ASUF$uEE}nuW$CHRf$3%gh2!X&#^psj;TCUOUDF6u7P&a#0t4U*0j^ye z^ORv}+e)Pgzxx>uo~a93g07~H)H{nQ~aDL`4b^wr)3^8kf-b< z4=0D)Aht2>idnldXcWlo8rg7&-Bv)$(}6GhDxTiz*5DUV0i5 zJ{6fI0yoQ^>5>_I4zND*v?4C{Zl5FB2=RO(Gd|;kTl2#4`@lJTx2ciBVeWj4?fu~@ZRvt9vv6}2j7j}hzvlX_oe6} zm(FRSOB8RbkjIaGt8V3)K|FR%j~+%1-fK>jPk7%+2N(fx_K}-w-$l2bi|3IGKf4R8 z&h3s>++-Ai2^5{&clfti8#soIXQP##QVZQWMmT-4025%#1rF1mf&bSd9@CRkZUnn9 zvp1VKj>L7<;6*ZObWhv7*DWyVwVsL9#SzgaA5}_^&ff}mkIpHF2B75Op2z2yc9VtU z=Gt)4KkD|RDsFrQPVxk~e;n}tMaPaMVBIDjhgnJR-23(3Ob{+L%ndD!MlQtn5HbLw zU?MR%m?$|7QRdkwzOxvQ^908K1^xuoeHNHYH?IerA`Wx)aRNhDuM^#2L;F>$mN zbax&lg-lp<8&P~CvE&R_QLH7nh&AN1HTWR0e2=q z)R716vyf-!K)0+Nnp-1>YlD21qL-moLf&+m z^C#g4M-b-45dKqq5@+N{HiV2xpF3W5a4$B4IS84Hdh9G3&SRiLasd1V8J;i+=guk_ z2utV)<{k09X}ox2?5F+wc^B`cgPfFR?(etdj_^%Bm+J(}TtesZDH$XmgO$7scJhyN z67Bzfxo6};$K>nlcP5mf`nBf3YB5|I2x?wcymxu@(>t9rpI(17N6!D;&DN30+wH@{kGdvChUewuqw|}i9fPx@ z;FGf*<0}hy*`&xm-|U@{$@>9)3B@t5sQoUv(d8T?mkymrG+jMPuMvQ`y6aCeDrdfnXIqm84>N+Uf5y1T6ds*aI)HNJTre3P0S@|}fk^S021 zMuw#V@2VVYrep=ZKRny&FUe(&?U_ge;9 zL@Ubf`<-JQ^oMtM3@=Ue%qSLHFl}&JOGl>HH_3Zdt!x|g(cZF<{%f!=Or2pn;?|*XjKcP$c zhaG3?V(H}7M}w2gzj^!j*WMnPm3-XPK5~ir%9~(K%~v1xwX}{bjl*$E3VSD82T#6H zl=q%W>G)f0Jpbnz>}{PhQq5g(-TSt1?hgCY75JEsZ?ug3?!!yhe{=nQ$NT7AKBjNr z^3crsmD?SY*GFeJng+4OKkS_zWM`X)hY^vBJ%VGj~e8p1VI@cw zbVkzUS^`(kx)!z!CbK)KUEkKr+lQv)Gs|+z-udfDG+PY}2OSVUeyV*=2E_=aS+*tD^&1-DPDcD!*gp1>};H8^Qc1O>FFO|N2{^; zknh(F2Gl&fu+`ioEYJr>qDi^wB|L-`KmKy~_9ODmpVXiI;c2#Z#%$X-Mc;Qy4no7? z%azfKm)wy?#^x_Zq`H7#VGM=fTS5w>FAz*s!{JmTU?T6B>Qq1T9Di4eU?7N*{S}5+ z^w|ArN3wL_a7FXRO}(4LP}JDHNyXUwhLk;Hb79k{SliSq{fQcod2EL$j2(Znq@Ts} z7N-C0@z;NH<*H|3!8LN6^BSqfubO42pxa27u0LfTtYUB6+jgXmH#YTwS&?*?PDuZB zcJI|3I<^V8x&daW4xKagK)&m`+}k(#&hXIO+vNVe)7v}sPV=L|i*0?=UyRPIJ(ymQ zcTdc2jEzjJE(`)x33|mytA>P5e$N(?Yn6Vq|b2Yr% zLT?}?sx`EGu{7sOntdR}t{zj<8D$EW!_M>pS%4)!LvcWe;z9TC$K&tcamD;{ix*BS z?DwSiqwHbyRUPn}Ya#f*0J#=)f7LwnOnL(OeR7?%ZZHV`_%UA5tUH+7ccZtbqq{&q zV9kbSM&Qj1a+6=9c1CxZ`BfWw?>4)L!X7FDVZ}Gm?&B58?NDoGHTb223)sw@i5>W7Yyk&OfoBwayI>3g=8+)dpM3nI z9C}M^!SmYjH~(6r4*;&UQ1GMm_vQ~Ok^18b^J|%7%XQNbI@wEL6!7dvWb}Pi z%OAh2qNOi8vxg-&+5O@2k$~NxBRDC=Yv;vq@idPtJjYI6*njm$G(*q5EknzuRh`$5 zRv>%u_*Eg0Z{%4y3*-eA51xKg#d}}L9lg$@K>|P6%ThU+c0}`0w6bV58nJye1^ih8 zZM~m<+B>B!UPnk*FRg(~a{uSO8z2a7eXo1M8@+aQfQBF*B#?FOVdk?4s-3Ww$rw z&%Qy@`_gPr?Hdf?vcZ);0zy5|kyE3lyKpym@IsY2c%dLBX_Ei}3Ao8J=ffO14pU@( zOFxA!$9TqMK`N=YvK6y1G+_T;IqEIrVrkb8Y4G0ZP72}?&L>P>$+cm z{-BF~K+&%krP?7{8EEz5_Nr8=aaR>{n=LNPkI zikJlbf3TF>@|fM^4FC8kJJ1=PEx7&KIo{=S_{&qcQ6VSb z4FCEm`{;=yRX^q2IAO;*u}AACeEkW3e1vae4^Ms_{HG2+UqLIA!#|TIFCxLS2pvYj z3BPDYA46`;Q661%QRhn**_%r6&iDW*!tmv*V9-JbZ3T>^N(M-k>$b?fF-sOe+7hZJ z*uTS=V0;8e!QCfZTRi*Vf9<>EmBaHo(e=8(59qPW1-Mty?}whC10EhuG)KJNw3B<8 z3%$38otGTa3jHNnC&$1gcy<7g;s5hibhZ}wH#7V``u?w=&54W$?*pR)` zEy~X}vLhSV@pXDvN)7&@;(H@$POP;Kio`QA?FRQaK7t0afPL(2dq^j_$3@EEy-^35 zZ%+QwDfAoA&*#K;CGY@FJRolJ;hhFIIrs*z4ecENpYjSh3LFo1@k|g+0Gxb8_-_cj z1YK4Fk47>Awh`xiN}%URSOeu0#{ym8ah7KdnE>S^dM3EZR2-MTP8w{&4?W#hsM`~4icf1djnW*0YpMB?~g&dsg-WO73M zqjibuN0Vp-{{Gi*U-%Um06WKpE4SPKx?^PN7wDPaywf`LcJqMf;ujBkKVxpE`fA|; zyyK&$L2*~d_*&1G_d41?ynLr~cwRBoIv^Uja<8MWb#QUuLH9&obJsB1=BZIA`RO@{ zZtCIC{49Rgr4g}Qwq*&bI;YpS+bK|-l;~~OI>#Ijx+X%!gIA?&<7u7FyDFXbd*q>< z1gmG@jE85;v!_6ehh%~k7NnZ+)T&bGUk>Z+LCc#LuaS%8)JT;Ueb?ZEStK`D>2f#S zd^Bicws$V6oWXUy$B*B}HMX?r-B4S7ciM;CAK&iwiRGpwls}$!f0%4|?f?0=|ERp* zK4O`bXz_r|?4VQL{PfEG6*|yGw;py(!*9&o>71Nz?wP`4?~)G8E2U(|ZO(4$<=rET z3{@+tzKNyXhh1Y@(JCbxwvb!Ap=Dq0F?EcHEL}4aV@vOhVO!@iz}2eJtnK3I+nrh2 zmiJC9W8+Pz=>pzW=mR{ctx`1p%gmeW;9_f{RrTDwOglBXte6^^S(%)imrd*JaSniic%C<>1HoGhnuWs$C zj9$yS!eAE@P6#IzAWtuV4myZ`G$_~EUA-eSmhss&htlBltF3_$y=6gsuOV&rDXYZBaz*kLod|U zI=u2Fc+!>rHPdB@KKfz%;Ov{1Z$127u738#`Ro7oW!sSGGP#pYU;oShLw0|zo!s}k z7GJt4l-p~fNBefZdj1I|>VFUK{Wrtn&3B0^y9j^&7X2q5v=1$Qa=UH(%DU3pcJ}hS zQH10DE&bwgjWr_UI~`p>)Y1TwO^mdO>E03+(-p4dh1S*tyqYbL|}OFY+a zUAfcwD?IUUjW5YRY#Uj+`1$Sjk9wz8zIfO2DdF>1iPcaCBZV_ONGi>}JdO z%;17@d1J>aGpbE;jZ&xBQD_wM&D|}rcwPFawSQw~azQOy+cIs-R94xl!nVD&V;LNs z*!eHN{OvAU54cTr7+fj^w^>Dhd}I$~9+SuRB3V26n*PFXeDTWHflU3m(H%TN>vbBf zK7Yc_ed>v1bL9Ggz2=kg(i5z}96REAoWwrybxZwI3&U;wQv-LJ+WH@~k4}s(Di#-{ zJF9wIXkD}_U;W^-`x1H$OxfCb2pxQkVnFYhXw8Jy#T-nQwB5sV@<#*W9npr-P8WNO zp1BlQYXm(v#CH}wS0l>(n;wls0Ito0roe3vrM-AfyzEO(_z5&`*1;ChQL2t0HId#0Cv{CDcD z%i@o(5o|gq?Ol=?yO0jFN;JM^w7It~UcP;`eSGnH&&2W$s0n4Yu#W>*l8K-HtBDNgjj8=u9}#NjSj3(Bzfq0xkIbaq^4tYcux{)3E2u*Pi-v z)l+7ftjpl9y4ca3@J%lCK6VNQgk$B-HlFztWk$UGzEP&}C@00zHYK9?M0l3-nM4(c$aIcaQpo!mnU;i=2t?Vds_2*t^v&hT z#;H(zUPPZ%NY&3On_5?ntW?Uo_p8kA4aU~}DBXf|;Z=8SfePnD6<(x{cJe^&NFOo_ zJpSfS|Kk-}mZ$90XZ0uFo|5};NJd0u7Y+HU!W6gplL@>%ad5#1^H`LbDn=h-Jd6*- zfd`VjL0>3Y3+$RgLF{NjvID%FFYpHuyE8}zKrl@tV-f9TT&=bQAJ?VDc8B= z?qF7heuj5h*;$flx8~NAJM=7?BJ?wHJS}|oHVVOH=dMgiIli(0k!d9-`Ms#Al`2s2s459iADzl$8)@ z%f6l$@-di$5>#>lJ{33@OHTH1JH1PGdb3>YkZxl*7a#{l(B3D>gUjK2E`z7n;9K^X z%?`-dJ7k7DM#D;8%)tp>S$bsjh51cGk@JXMzg8DWZ-oV+B%D9^Kv|-5m&orc;hP~B zz*8pYufdG9N0xMr=zt2Zvw-+LM-VhmXAa1***gG!=#P|+kq|u#;0y2ui+eu${*a;_`^f*I z2P^GC=Ir$s4)6t((0FETaF=FltYYAF)$)7lA4_WTrC~FQtmow&cuA5os+?*$a{TC( z&K(LqUZ*8mcNv3aa#b4KX3zcXg=8(ByWn4~%<$xf7l1EL%={c9US@8~Wjz^i8eh7G z#2~Lx+at{KNi|pqo)fQ%oM9~&Vo;a52;xW|y zi!l3i1iT?tKL4fw&RO7?l`7|7S96EYYbo|_=H)ycX?eUdC9shqb9d2`ITCjMlCami zvvl(n&r5KyMgFY9Zd)TGroy#b#s*jg4<<93L72wk^)IfE|z{RN%Fw2{&aoD3MV@K4q+iuehG# zePlBACkbb)EMQLVX{p}OGcD0ElIiYujqkp9`PS~e_E9}qD^~I>ePF{8bP*9Sj~LuU z%$8_GI8P(c*-?63V&E4^aEoMW|8X)=Jxg#aiE=FbWMMnZWY_U$c5-9PbjFz-$-0R> zM!md+91CbNT7PO~-!&or*W+Q<(TArO_J7V_-4XQ}-NS-AVko|uh9()O} z*&I0V6!^>(_r$4S;qfHb-7wboe)KtgrQ?@f6q&T8s!twi!u30oa@X}h=IAE+)Xzj) zrZ+#n{^+NVMizd#u&H}^c{;_PCtx z8%71E1B{7``B3HN5FLt@BVOkjd;K}@;~dZZ<3R4{ocDU}=l}WrIe&ku^Jb6P zb5GclPVv7Bx}Hp zZhpRi6VjQ|@URzqczyvFUh;UUs6BMEPx5yq7n%?Un3Gv;5ApS7D;f+i!wTNVlHdiLdceh32{XJm<%h@q+MqRmippOVt$v$CSHZIPowpGeih{lm^{b=o3j zK97VQ{gRC=76&`7p!aA0PujT;JGmzC$%N21#2mb40o$-MgV|*|pWvnU8$21m;KhI+ z^C=8|A2+`M8i24qkdDxO7`2D;F>;?`g5DqRL4td4lDr)O!%dQnkU*=H;9i{|dn`d8 zOA^d7?Mc+rd{LxU#zakFLd^dUijIs-nsC`TOVHd;Nz4OiGNJ;YF3ccXrFxKC$e9XU)K| z9p~U>(32jAGu5ZuYF?o)e-+LhKgXx}glE(d_t5+{USW*UhU?8;J49&9-@Wu;Yne=C z^!PeD)eSQ;ql%7C>x$Bg?MFu% z2;twf^o-AMz4zH&L7$-R6KyK+Agq(AwsI4K|I)3_shiC`6YpQXODMvSm~&d%Hnq0g zG&;F7wj^Kg9$AofPpod-Y8~CU*)pn}+AvyX5a{1;A2!PMemgz99yGjeU$Wu~mk&I- z`g0ffqXjRJ7JZ6hWLe3GgG@4eY$Q)lwYh7Nie&}~-Jk1l!Sj8it24ah*@*?|_|PQv zVKV*9(vEYET%B3w%n63ZA=!?#?fQeh7WRWtdcjApJ?!bhJ3S&^Q;YG$uVTAcADNd( z7bH7;e}{g4O>R^goYpA{V3rkTFvhxHY4EtF#1iv}NMfe*S-=K@T1y~8ZaMRBK1tVY z3J+v(YI)n)HzNtGYW!*ZFnPgyD>Hjba*LnLZvWnn(YueA_k?TcaX5b{*x{j31>6RX-T-e1XA88ShklL*X4?2U7kqJUOaqkT2UI5yi9rJKt3V-Z8%3 z#eIDaAHl-J8Xoq!tu?$%YB)u$FW=B54qooCdje;K=h2AGplutWsJR!7Q5&BA8~A=N z4vMyZccXdW*I(Xm`wh6*J8ff&?|=EIkL<$5t4%$lx9@k4w_bfTGKgnU^z_?5i9{Pa zU1Vl8^^D9n)5H1jv)i4mWIH_i;$C}mYyWJwblW;GG%M{z>(Xjk7&ptejupaiqz|&GP$%Bb4*Ra(gC1XOyAhzNB*WeC|=tXx|kAKj{S>0Rw}Y z(9RQcFn#A<%i_p1MVY1JK>h4h09~SSVjfB{mN(9tYaLzK(9WoxnT6?v&4qjIL+d@$>l&Rc$ZGP0PT;ZwDGa);k}gv{ zlaH_NOm>Vd^(@NNop_sCZa*4m7RgMlODcO4c*gbKq1h|sjC|hQGxq7DzR9Z^d+^TC z!`4C+|*kSbYcx;?{=uEJn0hf~n zv$eE^=fDU3Ti!=`dFG+3!Zssb*U<&9yL`LdB zCsIrhLXtq@lrTBMA%o59gD~Nj-z#MOpg$1un&^jv-|@suyGFm>>`H1G)YQ&!PC>6M z_BbM>UCC|c6(zyHD(;m^g)s8ImbYz0gt&Xr1#~bgJlwTJz8D{yf48r9{C8s` z^KXrfir($)9QmlNd+N&Y*!Fncv zN8V#GgLfev$e-lNOv|%}X0Qe)-RZqB(u)B92A$)cUq=_#rX}Dd-w&N> ztV-lSU0=bB7tX;4 zKkU(Z;x1-6kDL4xboAsu(F=fI7GHsdMcqVyp&khX(UcV}Jf?>IpWQsIHU+a9zMfi$ znh^~JTHu-uK9TN#1~Yw;UwLMPg1>b16))*4KkvoP@wURpTfrY~dSpDy|2SBq9ay=&cK4vgfAE$3t0qv8mZo+lIp#DivuSZm5<{X zP1GL?dD}63&~#nY^Qp#DuC2W?K7eZO=tY(PhlkDNz)TBhlS|+PMec>4P!Suu3!?YfcaO*7N~@)kE>+xRp9VS-uzKHS$S3} zoPC|)c!%)7htU^g@DJo;^~WVJkP>rWa!4cz?l{6}{w&WNoMN^nQz@I`c&5{hXW1xx zVK{$GuKY1Ku)Q!?lRrSUGhGrE_&e=@Sh3wdzp2`?hLElwqau1NXguioI}(n4ip;(w zI{KI?SdQV#O?q?3Ni&V95 zr3Q)+l`|usiO#Bw5!yiseh(8+`Te$VGbEa)WX`9$KdY5LF6f()C zPAkXvw?LqVE>OnVdwH6HWKf6RGt?nqY8>D>eqXwaFxe+IsD!nqBO zSLIsXKLO7^7D5iZ>Ely!_D}HT9I-PU;j2Dk&)K&`3k@)hI=fDV?h17KjSBr(JP+V} zgV`AOnGn3RtB2*FYhvBauAgT2&!Vr+^NXy>Mg{#DSYM&Sy|02Ep~AI~2BlsEm&$WK zrqNR;$Q=-{z5shG&%tAlfC134XUDH(=Nv~5m$bttqsb@34h|n(G5P%k?&Uc*$IB(; z?twqM$SZ)qC-Z~85Mj^bp6zB%{UHyI_v-hc4H9rbxH&gFwTtV_g;*8to;-Z|M!06& zg0CDt&riRGpX`5cFjYgtUvpUkX$Lcs0}dL$PsO^a4;tC0(F9b`9i*M;`CVwr++>k> z$azKkPagm?6%TV?w*J_Uc23CNM{0KD5+reC9a(us+PRn7`1jCiRcys&1DuzJpbrh2 z7Y)3-mR@9Nmz*Ark`Am(%V)G}@nw}9b4lOy`ij;X+m4pcjr_R@&cn?9ZQ~f&;QnpA z7aP7k8yY71mFiBg3^Y%52m8Hk+Z?b^vunePhAuH;V^_DUEKxzb;Kh@Gz5<^FQD69< zyyO!2f6xKA$?%U>z^l;lcIlNp!*VP?eJO zRDul%JAWxAWDT>QN0E4kx7q8-|BrBWybE5u z03M#{Xiehy$YNf0d!awT$9>z&`Q}02?*$8Ug2fP5wQuAzrCTvC;D9Q8g1|GyO|Avv zK1wTKo(qoD{v6!@BvR=BNv8#3N7o@UGGwzrtd23GL_geB<$TvROZ|hO)n1 zRJi_b*OUG0Ihpz=;x)AYvuou4uUr_PT(~ejyF&i|^o7Z}mA{Zm;r~UeKbaS;{b+Sn zd4UD~!Y|)=hhM+D@C$SR?EgQ$-Q4q^I|irz?((&!zyILV>;G`|Zrj@}{Zqfc(K_(y zmrdPQTKlGN-fJ79=WMHqo&NTv>rFR__PhJR=eO?Q`M>|}r#Ei@_T$g*ec9C6b-!oT!xoTe!qV~yS!sJGe@%TA4l@+MVad3WU7H?v~o=TNC6#bnZDtMS!VR9 zCN~UpIMP zW~HktL-@^K{qCdx^2z7de%?PS`pxAVt?#4BzjCi@j$HZSnN=4*7K}i(AHd?pyQZ-_7|F)lsm(Zgz<#IM^>{mbTux*3|O`7}~Gy zw)X#aR-${KQi2cA^IvM|o4P^H-b1c|0WuP1$!QUhjXrd*eY|~YS=lSuarC#2F7?3~ zjOeV9-Ya+7+8*_eb@flJ^!JRe^fz@(_uXn4>?e0_^x@E=XmVA(rlc!=cUvu6muzpY z;QyD)l#2DW4cV8snxyk{Yr1*Sl9l{__x7eHtliN?THAXA^l@a-Ry^5%_J?mVDZU<> zm%ZZt{s**1e~#x4|ID%YGneL{@lE|HS~&eDU!wkfFyHt#TYLOsW5;%6^`(!K<@0^` zggnPFU!;Sra_}-)Jb2=f>{zwI!aj1}qRf{l%{}ZK8YGXL*FQgw&RaApTAgiaA6(c_ zId+eqf9Lk6t9Ae_W#8nA9BqUO9CBN(bML6>#|XuXVY&!nL{pF0mIP?H?Q$)8#PPvZgfkpt&75fAM{n*B^QSFL!rCWBL4kOW&vHOt1G(ORtTHwyzCO zOYd}ztUbEjHOogJ8Hcln-R2C&-SxAteLQ&Vk{uUOhX-V%#~l-EAfRXrQ+wy=HyY0T-eb-5>edR`%qx8p zYchI7ww;kI4eW*8rj8*=bMM&3wMYGWyl41spRhL;;p+FwDjv#kL8av_bB;`!tihMa zYMk-(wlPQ-Uy#B=UqZ-X!9x(76s`Ht1cjI_Bka6EwIv#q8v^0k)t#ux6HW0~=}pR{ z$s(`0*aZRJO4Aa3R?99}IevBs=XY2-ctXenM5({9hfa1+!-Y+kWGR@b)+pfJ4`mMz zdCnh%vxmot;>i)a)Ilg)JKlTz`h?ec2nVyLv<6CaRM9b*&yc5|kQ=-axq))YScPyF z@JUxPN%unvOo|4RvoOn;j~T~{FN2+Mk3QU};CZB_W>3h$HM_zk&5qHd!01o5o=wQE zRL~QkAkSJsMwN2g7@{yNDvJ`gn1D^XCy8|h)Q)1 zf`v$FL+?Sen?EFz?iBATS>h#d;lc^~_AztoF}%hBx|RlU{mEZ!)&wd`~INute??A38}*b#PkI>C!U{03xw70Ce0`q%;e=oGx*(=NQ- zE;0q&%qV1iF^`k)%xiMvD{!)>lJ%XlaXzsQ9OyZxG8(u&3YV3dfbcu7G92>BP-;n!T+XA;68T51_3??#LG|KXLJWtYlgO@9on! zlhJS4qIichKwxz}pC=IOftGU;Y#^%+6ppDNJJ1Lk09WQfojH1~tDbzV#&e?JbKfc+ zzLe1+unHcti1eQ8dv7jMJ)I3z&d0W$iGH;&*9RZn&AQ&fF4R*w`KmiuIz-c0z6N*t zLF?!|S;q4}ebCzfcXRXWZ_La}-yRwge>gq4@_FB|=yprrY?m`wnrFybn-s~`CovJN zP!P%eE5`L$Ag`|ujYH@}^2ix$AO@?SaZRH2ube^>AA`A^aB`orkD%?Zkr7xuvPUaN z@ZCq`mmV?C9>HrKfxR8!%RhiGZlIUgcgGw1U|V&#;Tq578aq#gxvmlbGvf2h-~))G z+X<1s>g=E0(6$aQn$hFO*|W2ZmRWRPC4Ov`-M)gBpu{}^T}Yk`fl7hb@`GLkZGMU< zuLM4@82SpT%3p-y<#RIqN-hotJAYQ#W$j!m?6C<4dmlS~$|dA`(0BX8f7$ijc-1}h zJb1x{+`{XDCwJS>@DA=BB{x|x z{CUj7b4{!_fq1W}08{;D17yf=9%~aWr&dDOx2QA>{4*W)R|B)|B&PcNM1iyJv z@Y17cEO^o5^Ys-U&uO|z_dICc+;DO(FS-IU3GD3T*wFTD0Qwd?`XXn%DCCH+Z)WM7 zNo(;}YRTjRD=g~3JT!tfi5y0((n$&RY{Ytd6u~_FW2i{4U=|FkX60*bU>r7%n;qTJq9c3I-7O zq9yR_xCRC7KKF?v*8^JqOpKj8PPStle-s&inHa~1ezF{UcOuTYlZ0nW;h|50|NU@{ zf=}@bs>Hyn!tie)jUyp=3)rnnLdQTzX%2k60~XiV8fLN+6=T` zHTe31V{~z6_wvow9RVNObik!pLLM^RgJ7^>v?mcbc`&L9SVJz11|rDMqf;X00|)k@ zgCIjN>EZR#5s>zBErAQ<1V0E_A!$KJ095kSh7U{&mIWSM#m-p+E~v=)J~DJMQuc-w zI&c>`$3+MOCir*g|H1qM#ZGhw4|z7+oR+FTdNi=`_Mlkx5!s?wDrc`gK^yctba}rb z59@D+7UVyk5J@hqE=w;=PAy#+8y8<71NcHqH~YVcOhD1fk7uWsf3hLj{xL#wbOGZR ze*Wg$7vBBkb20#1FZ}cuZ(aDCU%vh0cR&8(KaGmEe*w4u^Y<@Z`-f{yz3;M9{r+C( z(4_}mV^_Yo-F~%mZ2eaAz~t4BuiyFP!z;Hw`M-Yg>ra0A#=BRCXP55Wc-VULXK%ju zppPAt=>M^yxsAEri6!xs`(2_-Up6nd3@xbWz_pC8s{KPtyK(Zd%K7?}=V+?FW_^4O z4)U6r>1!hYzGKh$I$1h-Os7LFQaR2wp1gKlyZdPE-QQnZL~|>nR7>b1Fsvwz=7$5b zhTe%a%P0XtL-Pt}_vD)W;mD#_#?+eMKTjIy`TX=|i+OrY&GCzIZ;9v824~rQGjz~q z89SnQMNF*&bDJZJvR!xslSJz=alf+eJ^dq57EkoVoKi;}l_CfhxAjj?JnEjF?w^;> zU1=H+&uv*`lQO-MxmV{3=P2Te37Ns1lX1E$Gbyfh@{|)$$}h;S*e9E!;P&$T;F{S* zbGbFTum#_ySK-0ZL0M_=L~fDAB||5$i4Ivp&z5*zqL~54ShU8f>z-(FaZzRvk%2Q$ zzW)sU;Nxgs`_LUX-|rl5TiDbO(Md2x#*|1bRnPU0%r1ymw`J%hwq?7v?KOTDod6oC z+NK{}Q0hm>y+B`}n_J&8NOw$@Ri()`u_SjaA@Jenr@-lwYZQ$vY#AefjQ(NqmS4)7 zLt7A^TvesO=8JLw??r{BjHjZ(vv!~Es~Y@G1AMT?eWF2jY<*qpD`DF#c%saf^aJ5} zB@d(!SlThsH(K`7dm-H4tZ>s>?hpSAT(Tw<{P z43YE2>+tNoLo;sU{WkLjHf`kqeg_dC@Vs~R*s**{;0Ay=& zg-p7&b>m^j=G^R(eo?$?ldQ^o@c)#_TGQ`j;GK-{sR+|4hH!H`dU>OT8_5MlU%5M~Qv>)3pGc z5cz(&SO$HTKOIIV&iP+A;t5kIb&j>wE%gGJ9_R4Z*n5|*k8G;U^DL(;WJwTN@6|R= zUR$asuhdfutE*q!?vzM(eR!V_Z1_=(_d3R{>`*)-vJAVKBv=5M;JHjVUFVrEWXfct z+1d%o#9zk=j}C5VL%vYy)Xy^#A03+6a8bqew#IXDlx)m4vK2derq;X0SGJL{?2h7@ znIvO!tao&7XlzC{ySS;AQIM+!``3D7Rb8(7csIWPS{mPbHPt>i+0Ff@`%%wSzs;YR zIDhf&Ts&8sE$%;_!t*e|eZGS%G4RldPX@*pF0U%B*XN{$+nWaeeX^w=vMxqm?+O_P^TK(27t<}nP zTM4j*&0_Q|NJy2w#Zmg|+bMue72#~wix;#85 zTbq+8C0FistB?t?2OVWyv0|RypS+b`aCU&a6cM(@9!*11WZ*ke?r0%lbjKq2kV5d+ z(P;5Z$aeK%Kk{$vx- zUmaIZULKc^o}WJX{(qhlXz`TS>(D-p%sccLa8X({xRYA!Qy$Yz)pgGESs*J zLDhYiSl{*XxmE*>(^o+{MV-t|W-?&mVCqN!azGvxwZ-YqA) zfbO=?_PWL=-!etFnVWaXPtt_p1(Kyxp_4&wvNN`LGO8tod5d{%d++IYbn3XJOB+TB zbGS@t3`-E6uaUX5tT2Ta-QkkR=pZh(9?fEo41hedewLju z$+MGvITqV82P5p!A$)Xj>A4gfIy~)J5=x>0?FJU-Kx&xw7g*6r@4=#%qzDNc@ zMa%HZ?05vWKrUDgy>Jn4aq$>0*C7ki5kKny5BWYB`v54#ANGDYs=5K=1>9YYS&W4# zPDUW6d6p%#=SO4$?x9z%!~1~;)NAfcgY3t0mdvCyTx*&?Pcm2I^%OF`^C7e-bWf+l z+w@ZM432;~#nCdP&;=#gKVop&5p)MZ`~-9c7JU3na=l{g`B~=dnin|3$=+pWw!^2( z%;H^ncZv$pu|N z4rr)hVMaG2NVk9qSlE&2qATDN$Qtb63oH@TSfBooD=26a=u@|YFNE_aFJsjLksM2=zEnrM{c2VYmqC*S3? z+#5LF@pS!hf!V)+Zm5{#`=bjhS5CjK(#=?)PcMs4K1&Zqfv+#(%_z|kT;P<*q8H7O zdzfNQjuSt}_saWSnFi36=mYe~;#tl2ch#=Aig_RUp{izxBwl<^gAPHLIee++b*soC*)E+v-^$d_ zB)-()D%s=9yhky;3v(QsN#u1yeD47`mVPt@gYNXnpttn2H&{4mEuOr-Ew{wqfB#y` z&u_F2|J|d`p`Wd-D1JRPwf^?#_|ip@NP4ArNPLH!+OC;Z)y(RaX?0z0laU9tGd(YN z?AYQ-v@7&-X6ods9kBPG_|u1H>|Q6#oX2FEAL~4MwEnqc_UL0~xD$AZ6MeAQXdhoI zt*Jc?TeyDAvtGEC_W`5GTWRc(NsFE*Q-kMj*!;N~Ste-rt2H!DWcruOczfZ14zuh} z>}L58*pO!z4b`Jjv1VXy+l2;!nYohVv&MgtD8Q$(`&aM*REnJ6dH9?xctZwUk-U#| zOrrBe=mCtg8^w7B1-a(vb<4YX&4RBU&3YWYeG%VA#f}bC@Z*!amuIgp;<3l)9;>_2 zG`PrD5OO}*?dx>6%XHwjLxs4UQah+ z$;SKTwN-4pwm3U})QaYa9P^l&J=-K?-m;Sz&!W%kI7=0Lj2Ob|R zk_V6x^4#&O)f0S8j9(F@H4(;>6%J$$1wSF2NJ_{WAavEi^D3J_>xE{mPXDk^$cGTT z|B+2H+POG=F0UF>maAl7LRa##?bmi+37>u_ILol zh|n?MXV3TRJXyRVDG%4Y2Ydo=T#@XFpo3ltyPesp_Vk}zXq$Ct;&#y$s5!<+3u?gW zl`U|V4elY#rj;c!H|Ei@O@k?pyEBJF_QYNnzi&p{a&=Yh`cSI(|F&;#^Np!><8KCL zxBjtzcKzoF&3;an(|@LK{wJd4-3#LRWItID zNq@Y!AiFSvPvF1)!`m0;B)b=8mo|R9D&798*1pjn{U3k(%l~C&Rs9bpcj_O1fA!wq zefhBajoYpL?=`oNfBdLt?z8U6ReY|?S0D6Getxrk_>+rQ?tMfK{qKME-lfZHO8vdb zMd>|s1kHB^Sz!Kzi88xgO@qf*+b{< zX!dosasDmW$7?bfU!g_$nm&XV;BBXS=U-RS^s^cr0sXtb|9tVcAAGiOr>#$N>tWAk zTi@(XbMJ(1Of0vkEHMvQnopwlIXXtg);WdM(?2isFDeWXyrWSGMb2AhPn5pf3|tY< zqK42fl-b6i#e7J%1pXdh*1T@;n4X)(J!eurfZ!;qS249 z-5=?hrf;ujR`hU4yf(6;q1Q*~ugiNRYL`d6vFpXx8j_oXG4hF$ytfpZmjuuIpv)9; z^E|dPXKTo8*_v8Y%T>0}4)dZ`AFk_GjbW8=jk;51r7MC~#2H=eygzm%X9&+8cv6EG+}hbqw9!I(ErD@ z=0F5}Kwwqn2-B?;CsQStJN~Ll-%DY5QH_r@R<<$A8A7ERo|qc~tc&{>_qIdm^CK794~|rkj0EqNE0WnD`6h=3e|9%pIh!cepDrd!$KX6!IX&xY z%p+gGQ(-8An%(M-Q zr)Q+5mGa38)wh58A4+_8E6L)~yvY$6Zy#CcV`rw?Yh@blRXnx4JJC8YKQ%ThSyU?Z z5}8D~Az9s$$)qaz%Hq0wbeix;@rr?55QlVqE4V36#DhlN~3?B?vB+tnUPhoF!cA)sW^V+e&2#8@&B>(-v4di`JE@T z*~{iOcav-`yZcDlnN6l-JRW;y+$BqvB}=xtL{jX%7XSo_PJkc^LG<2x?*IXIs=H3{ zWZF(iGMn4v{*-%ub@u}wvSg7Wf$#V8eZOC|p_UnJ8&fNqHS!(TCEKRizxl@Z`g_O4 z<6tBb{$WMA{a9J+KHPw>6658br$>I2xwDt&+=cU(@BCm!qCN*cc4=r{`GHvLys@#h zdwWK_dH4S0+7QKl)7uXJq*&*k-u70PduQcb!rqO;CqFh}Hl|0chW%pCnJDbLP0o}9 zAHA21yAYZjzn!cOcHGz+MtJl$Ve}bEy(1k~TSD}cbwlK%2FNM#q8suU+))phmD}vj zx>cr-mz;_q-kC_LbsXJ0dKMMDKZ2(%UTC|R6YS~ofjwC|BsZZfcSnm7I%t>abC`Jl z*7%&#?3K;0>g4ZU8&dTz${pq)xyxiQ^LiJvdygt$WVuaCD8qG}=eb=VFaWK_QJN6^ zFnM=jfp1mQABbEi>5ewyYGWWme^E@eWeJJp+HkVm$+9b>|11=kNlT7Eu7+Q)1&`OM z??34}S?*1grBcFl)P4BrQM!EC@kdHc>iH^L3=>AgepY`1ooKNs-wC#ubq?`%pQdZw zqxR|ZLvW4`XK0I_q{b!>)>Q3bo!PX4={oPmm#9Q|U~oiJXaTaGTnEzsVKqqxUb*$C z9IQUg?S^X6WT74@@IEm6xbQXLgQy4@%;qJjhCCX_mNQh+^BNFW8&gvnyvb6i1*_31 z4Bky!VsDH42pMk$z9D7ER`z%BA@1Nk)hfwoA)r~yG0UfykWEyyWX;R*h01s>+3#H&=i=5+GJhf5w_AnSg2y;SkUSW!QvYi||c!`;-%I7vLh!(uL#(^hO zKZ4siV#hjWHa*n4BOSVnJ7gOlfQ=J$Q0Rgcbm8~*=;CPOm*6A2$6nqc0=&zw`>ZGI z{tYq&N*(mNZ8Gck@E^43hOXjkEz#FhfP=$(kjk+Cu?rs26ID;5M^CXMqvIsoGg(d1 z(MR`GG6h$jh9^%lm&M_sVkUnojMp8JJUJULIRA`S*z=JrGs`7i%)EH{QXV7sp*2w^ z`>I0ZM%PbnmK(W)6K_5_+l3vxI0pJ34a~3jJqx?(2Ac464KGq1eywcQSYu{7CwGj_ z=q~fL9n8cHZyIFp#cx2~I6Na|r(yiKK}0!0uoFL6fJfM0$o(QWupxBJbGde*;2(O} zxt;9&4)z^~ookV=IX_>2+cv!C;ecZ^>J6Je)Rz-I}Z&)c$M4f>BkQ=(6 z0=r1!!G`CrN7=6;BULMt{NJNVQFL8JNkFN2YLS;Jwu+8YlYd@y9|pfHGD-kn#Gi$0|n>_^1`G z?*%jgGrruxbfo@x3e05^{B0soIU6CPrmuGL`AxJyufKlf!C&7PS@^4oS;^OCXC&X4 zoRYpYLH_^ZlH%Q&WzC0l1@|Eso!&J0);NpRA{k!XC8diz)+`(;8lCDMoYy|r$}#uo zDH-p_=&KL89}d||(Cm~C!SxPP^@k^Dln)JD7)mk&!A-iM;^7f_e1~}EJ8;6BxwRJi zaUH!$RVSRs!Fs55V6<(Jj+8;s79S5gFi(T`qoBZa>_ot0h5-sxf zvjW&tLFbC)(dx7Fm+>j&xjtHGeJXimrg(?X@?0(@B@#M_0e?8EFlN46|u%`{0IdhmoC6FBg}gdLC_FI2NdSt4KdGz(Qpuz zd=!qN2_WY>#OoC1Izrde^)Y&T@E*DG5z`IOpt7K43uRkW)RcEP(~urft&^LGI zxXJKc2UH&R@8Niro8YFjM9vnK%_6a&zU@O+GbKZM!+gIr5NbOJ(Vq~ISB z@FucxDndtqlY7faH=30yIs>1FM6Qm_uEE4p*(7^Y#XTfvr$htL5OK~egJaHuw~Yb4 z4WKu=#n-)n_wALT#f`sy`^wEfgM0c< zi~XOFxSrKjdC#qT6FqRFJ@EejZhCULXLxwFN67vk8l3I<`b%&2kd4wqUiJU+@YA3D zO}fY|zWZQO{7&EK%Goe=lIzYgCVU7ET*zPfUWO7Pp$8yb7E zV+V(EeKfpcd;RKgP_`3lcAtE4YIOJx;0Paa&VG&#;^rj-{z8d6U!YmDgHZQw-y4O5Ve$9R&J+U*b~Ox0Ko^iovO+$=5ON&dDr`!*d$(q{OJ0*)SRCCv%bC5TaK( zAW;L1g>uXwl{8ptlJg`(w@{XQGX`!$j|R_l@;KHvZJX%ww+!w$JQ4XR_Utg6wQZr~|hnUidit+2DeF1bQp`5Ga?i{y-rfn|;F_+tIn?mW2h(SzB( z;n}sZ{*n1PvBDtXK2$*M%O&b9t;Nm!Vey;fMyG+WaT9%9-qCha3nB>RK=!!v*L%~#*}n|ChX zc=_UoeU}mCOvX#y4S2!LRQ1f1te=_jf9M&K4Xhwq)zf_S`AihFiz>?Ccef*Pu-laE9N#Eq;x8Hbgg1K>4q;n7d zIRn_Judgy5%NmpV^=Uq1Z!U(k&Iqg1u?3-lsC2Lt{!&%|HvgloSk z?mhe+852Ke{{0bI>R(W9_6d0JQ-n>=jz0b6)8^6hlU%LSHo7u`?~_c&Hsw@_L@3vY zpMCbz(2gT)EAO4yOYLK8y8h6hcV;%$be5$hrD5isi#JB!dGE&5gh;-I4ne*wR;-@C zc3U(l+SHRx=SooL9iNx~lh3~$7Y2vkuw`MNi8k;k?lBp7DcW74e-pI1{+PcnlpL-GOg`t0N zK|V^R$-K%GUQz7^m&u-3MMtd5)K00eXxLKKBlq6%b00nM>-U7{Z-{KsuZO>%bGDoS z43E$$5n7h(DIgBS&@F%$?3cmuE8E^Y9MOJr%NA-Poa!1J@ebPb4*5}C4+9ZDN7tJ| z6CSNL!7!>+u#_F)LWAqC$wA#@u4s_KP~(0gct5-chSui1Dp5C8Aj_vH-SXu0_Cyg5 zp7Nz)MsE*9$pMVw7hukS1I+Ff!nsD?9ZVOBt&@VlL3GYOO&WL)Ruv`(*P)Yh-Kw<) z&4jFN>n#DKKnbnU9@c`-lCl}r@LEyzTG%90R0ZC!2}i{)kk;YN)WOGW>75}Rj|pCq zGTO3~Hj-(8k#)CNg*R2kpaL(I49o>MHYOvhP(hHBJd$ax8?Avw{jP5z-FmhFM=_>0 z2l~JOZcz4iZfs)Z<$-1EjrVU47hic+$_(8SYuyAnE<4lU@wTX(=)SI$Uu(U zF5Mp9CL6;|RwQ$IqX>rsA73KpG2b+D;0pT#T@dsxoSwqZ9a(}Y!F$o=3^@`s#9S-; z@c#SktNYAeZKTN@{<*Fr);J(<{QwOon&Z|Xa~8kfKR_S7FXRVu2{d^Qp*cUOvWJ!Q zWJPH`DIo)ZE+4!A6H`lPx@#jL*?+$vu1>cc{?ypuHuh zt4w$Jo}bq+$V?o?JDTS9$>J5xa-ZkmDDl;o@?di%xbG6*a|MrK6&|~W$D_$^QAe9m z%XOc?#h=#69jo$v)!|;NXl%(}s}w!i23&uqn5Z2U6YS*R6?yh5N=X|9JmW<)c@@4+ zl?5YgP=NZd1Vm}23q@kneK@Ln6kl>;-pKetpz4}Qk6 zkl#epqs{C+-Yg$IQ(=>lC7X}eOWjW-ybsItC@d!0PZ#6$hqF*slkw`o6nO&UL}@-C zFY-3m_xXW&<=20}yng-8$bXxkU;D=B1X|%K@%N|a*54hOkzTzwymEhjl}eKJZCD@#&fYT$M?>OQNx{z931 zn=Z&BuDx6wy+{~ux1YVzymRe=5ua2jQ0fSI4|(>(A{xFToN9slmX8M4SBLEQ ze1d(CEZ{a>y;UKLn4JDr7`{Hhi%$kH{k`6T2TaDpIpg9?5$Bplf&G3vh$;k+E0vIt85o_dNG8S^wnwr5XXjFAE0XWiIvzSvr;=**uA+ zpTJhS@`^#8)zJX{JFtle_g&PBwun5GC}&0lJyclGp2KxTl9dkY{4qN}o#6BpaF4T= zpM(W1EczEA=a@&}$El-Ff1P5#4U-QLA`dVU!kfgiFUU+3!~z!v+X^SE2f<`{|3yw9 zc!&pF5>&p;M@O(&+5FkYE}1vbcX?!8^)2>xIUL!tbkip1{WgHlpbJPF>CQIcz? zhJu@VQfN&QbR&{g%+H3WB4qVvBVdpC^y^7s|L58gJY;b68R31Td#Ij(=TFcZ6Nl4J z@?NCTLzDXtZW|W%`X;`d8XEt7vH*(obL3;pK5^dn7`sOTOgF{X0Vl|(dA6W6D3A*a zUO=Z2I8c)7n%`GqJo_SB&SYRk=MHd+wWb>qJuUpM~2{EDn+VQQgga(t<0Y;2DHzxAH`z0*CD_yJZ|HhRXv0j8&x z`EzN{;K+2(>*ucah!v(kxcK4SKmMR^@-NwszWwEwzx?X8+jsu>zkKcGKe;!&{MXm+ zPW<;#vP5UZYu}|K?*}&q=ib6Ye{OcoaG{q>;hX)VZ{O;he(O80UwHHT=RY{lUh^Tj zWxaGHj+61X_`!ok$-uG>&0};|M~{Rp(eUH{cfNk5mrUJO8xHS`>sY`XA93z}3~%#1 zU2J`vs}a7-oKWjN-Xq^Bac^`+{TF}rw@cr84Mrza=93z?CR;T}up{t9p-L zVG2gzzhc||V!|A(L`5>A^S$dscx>|Vd6hk_b7TZhT0_tc#>)a$nQnlg*U4TLd~5|e z#0rV}Q5NmJe{f#r278DSD+LZ!^ozGVcJ?8T$3q@1H96VllOOiaPDnOg%NsiHIz92q zJJW01c#Zw_gQsLpCL&;(NoJ@#dH1<+wvz%AOOl|a8f}9=F@jXodQVEMGs^R2!XoI77pvM7zCd4ebV# zJnAbQhru2)-0dCJ&WV&3nZe@+M+tx(`{mp2klf@Bt;o$mGacC)dpJHS(#4es5%8;k zzgNoWo(uST%XIZNWZW=Y&U6lK0G?5ViqTS)Ij2HiUXBjN96q{IcJFD4oVJWNRtTuf z4sUVqC=^H*-Bc-M&;iJzM2-@vO3;yAX!g58TcYJXC@lS5$ zYWwfKhezf1@Z$H$=R0q3#9sesVD6RoZjFBL!qvVvUc2zoRi)7}iY9v*jkF}!JY3>@ z9wiUuwl9&qNFM#)|Lu3)`s>#(Tz={N2RAPEPs@gYwW08XD$Y3*{y==22S#?0E%-VO z`8hJQLsFePB~cn&B6Q7b)CaGQuW06z#r7gX^jY*QWA;#Xgv^A2=F!vMeD&}OJ$OX> z-+TG$-N`p@(#18nr1YbjIn^)19uj$lA>AFm_AzGD#0Vq@=kyLf@ z!`qv1|JIE)l^_3qd{d<>s^r`C8+V4f5{>Os&Z=M8{i%QC!ST<5Sm8HQOPXJpT*=>( zL-jA5KmW{m`5V=i=U0wk`Il7t{2cA`KO_qWKXOM(pTa+UmTI1Se*F9=AJf}$2shR4 zJpS=sBwfoZb>@gGn2rZhg|NZm^?4)Ef_o2rzT$yhtaa)1_P7Q=jRxId&$ zp14l<$esIxa}UN>R>Vq+My%Z0F**X=GW!9+}Nz5nA8Sa?Z6-Wk-9{(uS zee~ljdGd@7pQMuIZUT!`bjP0z3G+pwazZ|RCB&=~3}@Otv|PSo;{;3~?-A)-p3i># zOSY;fA)eD7j08T2eorV~@>jZ#d;H=a3pZYjU@%oMVPP!FPt!=s#@Et0--lZ}-6KcMm z8thYJaK@ElxmiIz)E1bhf$S$e@q{EK6jdf$P)1M?)}J&94GEb)TBo)pBn5|DCtGC& z-Oao=(OAIpFagHcPY2>{@@y`QPp-T|_V;(jr$pbKm|6SY0RFvOy_4_q-ycoR%O8;a zKRvsmUK_@QN3U{({PR3>Nzv#l6cs!mH(hCppi08Io`)|_4@iFrrhkU$CaQy-O0*B0W-Az|)k6G{l|L+m^JDFsA{7R6ACv$)= z;|Pv-9}KIFwzffjRE^o8iZ8B+mLQAnJPik!0Y(ryr04?7q2H_|n8i|XD;WwbGUUl+ zzy}f<2R_k!OUMYs`(K6o$pv_(;p44&DQj>t=Q{8a3HjF!G%Zdvze0wXkdN&X_&>Nb zFPXMzjEhd-ZmXdAmz%xx|HX_tM`*{MsN2!TJHVUm>?#hj$I$7+&u3b0XS&JSe&}bH z4BGJe^5;QzZ}P^IA+!KchEEd#A}iq6!@*LAD4h7pTEeny+GGM5xliPrbFIM z4+F0gIeJw(-X0fthJXX6zyiue_Kq_B%_TUI#QfSO^M9q#diW`0!_P``Q-FEB0ItjK z-#n@FJ=Mq}uYx7igd9P12o3f;dI#Ig6L<;I^)h-yx<`**@cEI_aX#05mSfh8!qr9b z0;J(Y|NoCep*yUAM!1NVp~TN5T;C~;Gb-@;DSR&}_B6bi`x(AB^2G50WauEHYXIMV zo=Y(genG|@ei3>wdC!u><0TuXUqtYd`pN1K!0E#iS71Dj`8dHkePqFtVX`I4NTA!~ z1D=@B7#O+iP4UJxa;r(3l z`oyIYFQoF)(0F1Z2V17zJbJzxgp+$Y`e z*FJoqbl#!W$IB0P#7Bkyu9No$Z%^hO*BLy2JIam`g`X!UwHh`Bav|~tLhwO!i#8)@ z9wK!1#>h;jQsxB6`Vn~rRdNTi{O_YUd9Vq*E7C5FHl z@FUcNoJW3iM?vA=1s6jnc|e!Q3DSax0lo*JSHOw()tPNRbRgOInQ1I9=TLhea)7rnm?ZKjo6G8?mm13VmzJm&_Z_MoHi;=K?w67(mMtr{jvFO-XMj>b)a zl8_0Q(BmiDb|#}jZa>feIQj#+cuEQKAlS#tN#2tb7*d*ZDg9#qXRqhnB*V0vfP+L& zoF}(W$P-P`+trlABkg}YYfb)76a#s@az)uMuNOn_(Ae$I`+KG^>i|T z_Xdhq?(H3}KNHx3fe#&dJ!-y3HJl6cZ;PXRH~fbwk^T?Khwnj?-?Oyorsr?7XJ%}^XN1hZ@$rS8 z4RZcR#+Q4h=GS^=(fco<4UmeYJ!*xnhwLr9{}+1f?&$w^^Ui}m{Kl*2|3qgAe{ET& z{mZ|7^^O1i!qwid&}05r^vQpfJio7ByEppM>`}mchIEvoOoePLO>ZINEQ zc3ClPXk=`@e@U&Q=cZ3b-aCR{k!VhG@jS3cYMJ9MAJj^9( z-cwSQ-mxIn>`o3$t&A^AHM3jx$ZD{3ykZX~hx^ADufKfm#x-&pd(k4ytm_>s60LKc z@s^RQs9#*ussQ{pO^&ExPO9G)X>B|75IT0;al6{$HZ!Dd-R_$-K=S}YJxOF6597Pu zR2VOCV2(URaI&b>;E#|w7Xcqg!nfzpRh5{<$^o=|reFbYc7d*_Mwxr8$UTDxI9Gt1 z$g}e#=Vcb~xm+e*JII(^!6+Sl^eLBpI`UG`H#?c#>7)%Bz(I6$Q>odvrB+{TMQ`)Y zl8e_ryrj4jil*m=E3#z9}c{8Wnk%Cq5b#+JQ5d278I|(eXaMUNs;b#iNf^u zz~u6|Z@&5AbyJ`?Q#pJhPFMDp(N0aFBkv=#ec4yp^r*UlM67uagV#`uL*q!r+Yf+R%ccA07BoegACx=fD3q zTekI-?sdc3H(q;3?1|@0zx?h0?MxTzWDWY%=pYol?`!B2*WsL%t;6Rly(4pj^tF$U ztZG&idY4oo)2)f%(H9riWE%OFdQ+uUe{iRNQzlj0Hbe@)Tr7_%WtxIfXRZ^1*Z#17 z@e?$QzxBuSznNT={cKvI{l%Kj^K15+ez~+|M0xB|MaYO@OVFzsg}W|v&m8?sWDjmv#Toi)^03> z1~;<4<@Mzo$M~WuR&T7jOZTIhZliSq6GpH1jZSE-{-yEx_2qNddd1`!YuU9NWU_h2 zR<+i*-n(tQe7(=#dH7kacJxV$W1||T7luywv@3T)Hu)nUfM=}3PeSCvy1B=Q%WvD$ zrS4As_~}-@b+UT1Z+g-lEs6FX{!oF3SynmzbcO44_}=jJ^$S<-eFR6+r?Liz>GT}B zJuIF?Td{(GPLZme8aPMj+RE%yk3I!LKiIJZYC^_09ljM4+E`;a+lI<5h%M3bLZosw zohTg)?AQZW?+;AAb9;34eY~$X$ld%9OyMqmzcJqHak~HJ@d|)9h2`1$DKJ{qMCXqc zjkl9?z+v%aoD#hgP9n={dJsfY5(%WLSofdi*$*=0BEF#+D#UCmnT#i%~7&CA`AqJVw$8 z;EP;md*#mK1NtetJfru(!|0K2957q&BRFV>;Usm463Ga_)QGT}uqHd9Dz$^>hX;>; zbimKKM_yeWt9Y5$p-cy8C6a9wENFbm^~i=Z)jWFE99Un>8!tq|nPyDR0laDSge|@# zb3`Js>&p|umrA*ljSTld%8qVJruR5qbluaPY(@9E!>(zBT+vH5o!V`8T4QtuRh~%R zkgFb>@xpFq=auChVEx4TXQ`4eX=Vrw( zv-f|8(vVjlJeYj_#{IGLqm$z6GmB~xCKNL>iz+GCxDom<8mm1lGN%;C0xTLr#S+@y zGTFrfho6<1gGuIbbdXi}^E_vDkzTEoOJj>TC0j1L%0gCjq;9Vre?||FM*g+$yrCQy z>6kY=aRa_hd$Lhr=PXH$zA9g%ji;*141Eahh?jWp7<0}cnf6^cPx#8?P5^DlU2BY-xoCw_hj>ng*mt>2A1C066KEp2Ck~_J z;gc(!^KyoG(Hf9VR`R2xr=OgxF;Bt=oc+1hMdzO(+c*nukpXAO;1kI5dKBPri)3&WfNSV(JgxHgYF>74p?ec7pqbr&hS2Dw z7OEUnLgoF6;28lAE4@|QbR{w}0ML%?+!mBZ()Ec|~k+o++@e4#tw`CH_= z5dJ+ho$UfS1?U$J$a83>(E17ee!_b$bjxMPBLLqx%E3LMbvP`s%a_pO7MQQ_6<0EN z^fNB9!U^V&D|drrf7X+n^C^3>k`{IcGO5ydOwb)S*a51kaH*RvbsiH7{6ivVzYuuF zAX;6zzR6EX)?8>rU75}!7ub)Los=4~y&W_GyPR9Qh5ct1vT3lEcd>nUw&}9d^SZ0a z5to6hsL-)!lC_5_@PZBYnzh{CV@b4pD#8P>gcfIxJ$gz<-zPeqk@lk>Kj7@VeBt)+ zJI7!A`fBU>uiv`aKmB(L3v1t)TadlHxUBlY^tAZg=;Z3<;aTaOg*Dx{SiXyXbW4us zbZcTpY+KX0(cV|UKO%Q@qo9;jz@zO zs|j3Uggr70StI1I`Or+$cU$ptuDa;U5IWeMXiV)T@r13$_5E*q2G2f&*B#-pl3%P;Gs((oc9V|eXt6@iL8HYN@Rgn`KW}zv%=`@ zqrr3|3O+?HZ!yesnY}+BARGpMITr>8iGgj!0-TZHJ&9Dc8^@0qN6Uhz4T_x(e%5(BW!5ucKG{5`8G{F-}THen_Hfw8caa7Jd z&-Hx!dvEu=dH#bQ0Kz}I+Bfl)*RS>e>9x_>KYjP+y{~-x2N(aZEB7Y9`u@GiZ(P1L z@~w9--+7sStJg;s2@87=m!M(}8`xEQa zeM@@Lok@v&MM(uEeVh9ae~5zbap2<3QTzSL^$5?Ox&yIg_2B6l860Q+B0}GE?a)qG z4ADa^cdSq=?49QEy?E7nr{awZSC(d$MB+;~de`rci!AJXzP_=!-SGvfLuvN=mMN23 zRN5m$%bM^yOMWb0FTfqfvN0y@hjo4Y!y57)A0PEBPXV@ zdV?d&@&I!~63v*9Q9)1c^EkfffYcB&lI5ZbB=e$yS?SpAktMv?%hPKnk7Pl>tv(ZN)p^Cs`C|N!Q4Jtm15A7+w-{-RqKYqyCvI+ z=+w68wsg~OAn(D#P3FLR=*;dt=P`O}+45y{n>P5M-QX$&^z5`)H@+y{n%vm-%y0V& zi<}SR_lBqL-0YjYGrk}n7HM7ca~lQ`+1pCa^DUh-s<*hpI;TIe4WDUd$2Tbq4l}c} zb%hSaCB8EMrpp#&=i2d*X^fsGn2Ix$Ms`B!*e*I8^g(ejyogA(6V~Dd08_~6JemBK zzfuMpETMbM$hPgNEj(MuH_MT1yJ&RBlW4gTV7?hNPO+`saD*tqK;OgyQsWx3grhJ% zTF!`+yM6Xq;NaPpK<~$9p4rMRyLWM3tePOZX7IJkefMYO#s}=6gM1J7?oY3NaJhf( zefH2>+2%=ata@;RL+{+h>knRHFMdU$b-cT6k6gMxr@Z{p@Y=m)m2omtX)ogioKf!v z2f0LgF+|<~Z+hp-&E8jT56-3$0#FTBG+S*UQq*FDi#8160-44j` zG00T*lpKAgg8g1bUZo_{IF-X|$V~3InCn@@t~d`~H|0y#hOngH^F{L4#hcdi{j=+D zO^GxYZjFgQ7+%ueefz_K@ePAhVGEUv%;0)*8RW|woAMlxdNfn>6q^sJmuZ{I-G}6X zM((%kMF*R6}B zwvE+wpIoAh$v3olja*l~d3&feCNg|nJNWoFpuE=O4j9{|DIcFMXN4U!fuWd8W4i6L$H}-Lc~HeCznLgU4SyZyY{8 zR6&}6=N8C8PhohCZF^%8wG-*&(I**4FcZ%;P7_pn1-2a_XQA=Pd-C*$W|Q5sNEX1< z@YFh8A;a{BK3I9{(mmy>!fMg%cpOU#vr}OXxz-I1zu6PcA3y%0)ja*8!7P<`g;I%a zM=Hrqo+-4BQ@O@b$Pz12Xp6kJd_a_X#gJ@0((0Y5mG|$AkI!vv&uwfuR#_WYx9ri` z@kP~;V$0D-(O>VZWV`R~sAO<*b$d!{OG)<5exhL>-%d6k?eaWj{cGFdr(8jve{yq@ zT-}0!>rsyu&QRz+H8vjpL_-IGgp8iW>fV!)k=YI6A0$^e-|uxEeKu(ICvQ(LDQ=;| zAL0I+7@3hwPK&mdhZj{c!*0aXKK;UphRD@Ee8PIM=Rr%1MeT%3v>U`f80M@9;ydvv zw%yTa@i5KxmE>Mdpb3ew$E4^^No(DlG4@y#Vj+=g9H9;9MwyNL7GJ^-9ugo--i?n1 z9KYy0eEuU8+K;@h)SeA*A2$BNHh4ERciD}*12ePq98SSAEc1+B;ToAEGk&~(e06eQ zPCDN=u_PIpTi1ZK8YUz<%fyP(OBQK7lB>tbcnB$t!KjnGT-l~MXmmy*aF7vZiom)d z3wx}gJL*;u4%ho2my$Jlp9Dy{a(XWh=TpS0-8E5&kq)qMML1-v;Q zOqVmBC_5s#rt$Jo8a^k+S>XflajW(2AQ`7Guw#FUO7yeOim}q8JnwyiHzj}u%B9{3 z+rT(1yKcIcoe2ZEAV7dA-EJ_g#mlkfiB*l1yy?j**hIsuHMml0g*hn47qSkXCDmGj z60OOzDw63%V6igxRi!7L=fmqYlt$p<5^CP98phJ8xN z*FH_7t4J`HM974XPW98!@&q#7NI@|Bx8C!e(y*sMGC7F3>QM!A7V%askqzbPi zVgt*r>JWoy9nn2z+XIy|b|AM#4w$nJ!4>w=mF=SuJU~Bu2$y~gw{}SG1HaD+n7~oE zdVFFfYiu`C6LJFDXyBXdB^5NgMe>=@DkL*{Zw60)IfWjReLs_gGZV7@6YL{VNUo?o zR!pFg5&Zw;0n#~F?4yH66~>Jeq1?I56|pPh$X!UC`Leh|Js zgy=kocRhsGKZKqd-M}7EnnwZrxqg8k#5*72_d@=*m)({~{D%p&^cnsib8jcZ>zpAw zF~fkC^}?&dHx}V(%5($J(buhmBT!hEt@1k8D`%gzn7eCejVjTK&=x0H~d;&n7z^KmeXK98E}g%=M($)KDht~S#lRLXdck}cj^1w%cH5!qt8i; zwbq0!Rw$x%sDrJLLHMxMI{9?3y8pCAE@_>Z$a?ei^9HXC`f)NUqO~lXS_Z8Zb9*h# zj?c_iO3~Z!qUVwKBF%N0gJVu@T4Q8C&>c{u>!N;IB7-C^^Z=mM2Rk?tc>W}No^V!1 z$tsV#$%#Z~!q;u2(B-mc2-@KqyGARM!Y`29dzNLdPep4FW8v~C7)yr?qdoi~>)!a9vn~x01#zW*iO$}ZGRkV7bV#npz$0}E* zyTNWEtsZ@{ZcnyW*}E3Go))v+=W~4SI1!p7xz5wOcgRA%MMu|?#{PEy%GRql?~Q$P zO{95gW?uH)>3R8Ut0L7o&Vcu?-5I|v)!3%dNJ_*?^M*)j(9JI@?BsuNUkg30nKs#I z2h6+Z{Trv?ZfEQrr|e0`LT(4&<1t$0Ble<0@W?JZc87ha%@2aMr`TY(sk>rzq3o~< z_gNu|mF|af3C&HJuUSLiTo` zvdyhqEMu$NZk}bVu+K^eV#MxO z_ID?{zu*gSLU}pKnWsk}FXRKzb6@hKeFz9S@VsVp12&^PucGAS$Jp&-T>tF;g`hW8 z3&E{}0ThCK4-s&-7`e%Dx(MRr^Tre9P6CZvl6y13{X+(5GYM{$&b1$<(B?+Aogwdv z%0ym6fX?Pl6g(utc^U*O38JImelG@iuY|nI7@8t{2JHw?E7`xDaH4`-qj5@<)uAif zd4vSx*f=HLmM^PzHzSoUviP=@of~iF5xrXt_VAmq}%XDIQV}~xHL3WS^P-gCd?xA zFu+%oBXEZiA+rx5RGc#?2Hzh?i;w_Y;dQ7b@NdMy^Wx|<6FcEb66}W@=mI?fm9)iQ z#1p}epK5U4XUTH`?@QJb_^T3nH`xG@Qkt`sy}g)aPp503O$I}d+x&X zi#Akn{Am5z^M&1inf||<`2QhqdX$Q-Kah$PJt8~;qkK;P#4`DR-|D%B4&c(w2R(1S zcm3bpoml#h@AXgopYQjL{@LZb{eSw-rQ3gT?ZL{|F5aE{w!{#8rFVMc<*T;`zBjch ze|us@{q_gFW9P2k8@u@4^}#DzgZ);%+~~ErytglZbpKB8lyq`IX+ zwVXxAlA4q4v583RC+u+zy+V!PCxs(R=jDL>z!B|lW1&X_s{`AvM+wvHzPx;WXpCxiK5ktZdgLT zX_+Z#a77c57aqz|8hj`PCY*+=M|0ASp*INfp8CKD>^!reliF5Gpky{U(*|%e?xzw~ z;+BUjAR$A-Mt+XPk!o%u`qji6kEAMVbVks0jm}AlNZXkK+nBmJw9t2BY;`zLI9SAw z4)o%cIwNpP!Q9rG-f0NZhfWbOBV*GlHuwY%){aNV2Cuhk4`j&~CYv->2{5mFIdcLU zNcv@kC5&Gt!x;j%*TEZ`iD9{jF=&vNTgh{uWp$2ZT7~$B-mEnG{3sfi1X{fU{9g`C zAcn~;vS~}j$pMK*@Gto?-5}2jH#mbA-Z9|I0QENygY+W=gVfG!dCO=hQ|!fwg&DDW z;O@}kJtD~Oujw2VkJZLz<<{QbY3bdQPre-3P#f=)56}muI*7*qZvF7n_a;^}uU@`6 z_}bjM;nMV)?lKtB<%_q5Z*wnBGiuKBT1~Q3Pv+ZCN5~<%cK!a~tN-nrufEndzI4Oj z2v5;XuKQME#!)ho26*}2um-N}{H8IkG> zrQY^SGAsUtOs9XvboS3H>fPTdUHO0U7mxlG4*j2HChu>_h4~%C*gu_p{L}y0K796D zcf9a3o;hEVk^e*H<4==?=Ewec`O$8?c?e(9z#CD}Y*~}*IvZTm!)jsgNtrI!JiB>5 zk#8e%t0mb*BbCnM@Wba{cq*-<&1I>M*aDOI?g(xp^{z@|b{h?LBz=XBA592;zG9+v z^jQM&OL!gcDECG=(|lZR9z9Mu0(8sT!y!i~6Qr9);NHdi&wkarqIQ=7!sp2>1n;laqV`{tM(Q?^JGZZjVxlOc+?JjPBQ zLMssn(=miL(8IYyUU0_~Ojo>QKe)-^G4J||+srxo?vo#B{fUz3{^-&S?~y27J&>U- zUw22!a|1JLqpKRnmv+Ix|$A`K7kL?J4mo6>^!XHnO1TP$VcXl3&~M6w##YRS!PJM_%l*w0Gbj8cqWF z5mVJ{WZQ#}mcZNdCQl;E^(^cRDVsk@Ur;XTPjzByv)4_w3Z(pQfGqulT+KJFzXt#Z;iZ6snMMlskYs#bWIR5;aFYW&`azjrE-TmihUT`W(R9J9S5mFV?PTLIhUG$q96&U? zr7F5;_}1eZIU8l>%sjiUpy`GW`Tu+!j%1bmr93@LEurH|(8F3+G)_7WeA;!BN7p~T zBLD99E-1(<$EPS{JOu=qv_y;Ky_bc& zrx@L|QD*8mdvgLE0`GY`igXRnKj#pB_|n0nlrXd7%Z>p*1Jy~|aL(`vCBf{s% zjsMj_m=Axi4%gHU!wrY<1_bf)hsaV8aLX_zL%hOu{N+apdKB%|-BGMLB;W_yNN4+F=l!!h?pz$IgwXpz4zv++Kc-fM+M+DDkkj zvYcyqvI}1D^PJ%syzB)u?iD2775K~wYhWFZK?97Wo@}0=0XV38@$q3=EQj)SG6K34 zFWDJ*H}e#OVeo3^`0or}-;}_s@m_;7;L(l1xxt;WU%~em;BEJq$LoUj0L-CIr&ocj z*g}qHcaFS;1ZQF{-8`*V_aC=9Pd@L^Q?Lj2+Rk+!x6m>)%jEyTAy;_K$me@3_`wNf zPNP#{A4qpz_<_NPlK4RQsHDiCNb`DUvvdTIN0?=IKrhg)z{OYbXO>xIi(s~S-k%(J zOB%d4s&yrTo33OOj3v$NO(sA$VTG6EnoZDepJa{`{KqLiKZRB|&YmB##v4Au{o$C8 z>2y3`#XWV=InKIt#^riQWDPQv^8PNbjhT!IfjZw}huB1;uu0#bhU^SAoUV#znu>mb z4c;$l>-4jA?u}K7bQj1gSjcoA&+~mwWNIga$n8J6JG}Cybj$uWdi%E~HcT(|4o-iA zg6i+gEh=7_n3KOYza&35HMf2R9Qv+QZJ9!AM5c{#L&E+K2585hpNiBT*LT9z78?65 zJIE0~*9qM8DKVUaZKK`{!Edp_}Yeb)ox-KdbTiRd(%) z;QvQ|LkCD%$c3r0)70tJtFh}9H5?l7q6KE%0zSDs8Jb!4&lEb87`%FrY!)GV%1RZN zc~Rq~+r9(z^Q;`>TJvX{rEs}Z48zy){K^wFoFjWF$-O~#Cb^l3COcfs$64rQW_5$V z!QB^KaLwd*3!Qc3|M`n9a%lwrKOaRG9f3l>z0j%Q<~s41LwP(tc@O6rdX753He8&q zLgu}bY0zAAXW2yEe-Vn8d@+*Qf~iUx4p3 z%=Z?}HP0gGZ-T%r0W>5buIVuQa0JgmRL~OOjfsScf>)qMrxp^r`l%N$q^r<=Xd)L& z1xIS2UY*F56PGvHaFT84Vpg)F(SX;d?>E~))1NTFO&WM4?;uV@j@bd%JV6sxBGa@D zecH7O7y$R0h5epKRAZNO)ryzHM#i9nuj@j)FJu5X_4bGh?A*)T@8`?{x1ejq77uCB z6!SBoyQw9}OiXf?q8-bjOR3?P?k3S7#Q55AupKf2^C`X-8UAGf-vd)@p#!K2dLsd! zW9})@XIV|@oGJ1k%HWQzEN5K~Z%!Vpi2icCVg47L69T7?Pplw#3h<4RrL40D+1C@` zA9*mX0)Dl;$(PS@ZDf(jfE{ErJbN-i9>5MgGH5PhJQIcINCd1P!gUV*l=tJm^71w9 z8+bV3>UQ{f%;;ja4es0)7(1g-iA=Mc3e5}^?*;h4sxpyLx}*Pw$N^{pafs7XI>D@AOxvSJW?qZM-=y)qn5Gt>IUuSLJVkIllAm zjlpyD172K_Dz1EZqGNVuqDpqPNjAFaY?=7iH|KS1)eH^j@n)79-7v)+u~af zCMG85RwgcAy+3o|g9poRy?;|mC!uD1MZ2Rk1iUM}n)Aw?D1O#-v2k3kfbA|RcjA+4 z=A?MrpA%^vmFB^dz4qD1UCx{~y5|O+d6hM_9eltL-+%sPu6g=AxI;lx?77w5Aw&{jq-xW)g=7|;Q*0{kLnOfY~8vC$!c4$%U zoWpJ@<+_y03~r*QVw$xrrZZ7Ia z%M(x=y?&*^9Z*`MF-N*hk5{>nuN@We>8H%DU;;ii&AprB*_K&c(}X5O+Yy=3AIFy( z#n&7jSyY6iI!g>M54yTgXqo~+k;)O=cE`bLvjLs~4)P_8qw{L}rYk}BX(vEAuG^og z?rb` zkCF>?zu0(q{`+rTdg)r<#GB0Zm-V~eOE(_OzJGgYxsPZ09G7HO?3;Mr32B@%RqtMH0TrS`LFbF?<-j%Dv;%iRx#r&eEo`K`;Z_07uPV`sWH zzNESR-ko9c2@0}U{y_T?VVkdAy#@AA+p$IKUSFz+1oPDWa-LYWP;4KU(3$09`C7{03 zzN>*7&}KVNH}jpR8@auc>7@NKB0L62M!mDW<0~W6E1Hpy`lg3&56lkt zPlzVYU+bSecjeC7hSp{ZCTd>%AdF{E>EmgK^^PdSc-XUL4}0(+c+s0WX2kkkv1(@* z-2k&$8BKYGjP9z?d!E)i<1u_bakLqEW{#5ClP!^TQO0*uA{V6y?vY)Q8?#9LYv6KC zJT_(Y`~_b3GLMj!Kat$eq$qhik2RG;x~*Eyc<${3K9f?5}x-G zd|qO^KeuY}CKqQ{6!Q!QygDH{x&}?Y{YXJjfP|bRu!5)vENww!iOkc{IB&FvW-Q*! z47u#{XpsJ2lHS9;@%z5>8bXW9+d}LUH_XFn0Nx%?J)|!rx5%_Ob5Ljb8c1>kk$OL<^=FjX5f4y6Ng}Yz2!= z=F^>JlV_K?34WiBF~Z=%ZVu2f9OB{LgG)K2=lKww@E&{h9=koee|e8Rm97AcJ&|IA z`JAqqn$THD_J5howg!6QDt&FG7hci@gC~S0AiUvcP7CFuoM}qv7 zO@~#bO~O%3nJOwCs8=^u#28fds65gtP7bP z^p=syfPQ#0kPD-U51}1~%i95$s0R3K*zb>`Wc86f$L`O+!;6mwx)Oo9jiT=l!_kMB zGuTOr_yrnXohRW|b06~WqeQ%sdst#;-Om>fKgOR|$gqFp$OI@Ro5v;oeFe_H3a?)! z7l4faojSs;Mq%$sGgZeAkgRf_Wy$C}V|PBP08ke&Eaxd8&H1wRESPKtE)U&&DTDW( z+@nSs{x1dZo1t(pgBAeoZ6yQWokN?Dg+EC1Jp~;CI7B4}XPHH7pCMbaT--TnRu7-H z@~zV*5D>j_g<7(H!s|G$kyF5HJtzvk1@H+0Pe}1vQoh0-JWGMkKEX9vAh$b_*zl#{ z?|1Wf&FHnLqXj7P49OJPN9j2@t+A(-OYLWZEQ z5W;~OPo*hd+~=}yW2dZQr70mf%BZ+*RGw^OiO**-!v62g?aX77k#kMVq92yf2_PmQ zWSn_rC|Nn~VivkQy==I!5y)MP*Pp!CEnj{4^8KDalgd=Dh^Cibn_~Z;o>_c%STui? zzTpSrS@qDkSTikKGAZX4H`nM3x9Obeq&2luGev4m^7nR_^Y;wF$^l&Kk&8mgV1Dly z9{iAgyaRUiJviDOu(KB40K8b+WONqE^)J+c^Il~B!EKf~)5~z5W!{epx;H@b61}iH zb$)ls4-+{&U|F7dIWVz2dp7>jWF}cZ&an3;ILCxcIH9}NgPhm=h>|dsDFkPCM?t=!}2;|u#CJU--*6yW~TLTVyUS#HG(FtM9=KZ%@4t`T3!i`8gSX!;U=pgbP6+NTME-3EJR}0{9A*v;u?L{D-V^WwKldg3|EX<3Z_$m)_1YC{!bnfEr?&Ul zj||)ErhkEZfUdtPS*3L{{!3PL5=QzB(6E=txk;G0798$mi|01|BFUy59NWSkY~oxq z(Y0V=Kelkjn!$L?=q+sQzcwu%0HPoqWF|VcoN*y*(F5NpXchu|O%S|>yrOChVj?MM z9@ul~olWzssFAl*Pw;i<0Ln4$fAs$)L8Aj6w=L-UvqB~>c`<3QA8>#od4QF)FWcrB zP{V&zW7iUVBCVW&Gl5%W;e^Rz&w&$^$@$>C!ZRdf0Kj2}dnOd_xiv=^yf_Q~K=(u~ z56%PbUCgrAXVB+n*io`VrvUFooQ&fb+J_jJPy|dP%(WEc`_lhNrV?HfwLL-RUCM~& zk<7)iko~6z7gz%~TjhGACcTW$r@72?3ki2xj;~J2|DHvUBjTJFay|y(P`l8>+`>n6 zX=N+$1|4Lt!9%@T-#__JzG(Rm_`H9Q9=47#m92wZw~onSa{uW6lcD#Yo}TaM7WV&{ zr4A+g|B6!AA)1nQ$ffFzkuh1v@BfFdb^P(yzS;57-QJG#mu_@iz0>z^9*$1`A8%f{ z^KU=6J@l3PL$a^;PA`9JPGflGZqM)!@BqBlGqLanT_SJa8IZhl^WoTgVEfn2p3r^W zn)aT0Mf1Sr_4NjP?!J3nBmEcekBgGUmMR>}sV?0cRQ8N1RrCUC9uCZ`-+3f4z4y^0 z>&3f6_AB=%9M^g#UFWZLI^O-@w(ZLOA;T;0Tw1+$e|W8LOtJj-mFtqXKe#692V#&aJm#&T6ADqD&8(STpTiqC%U9)zMEqGmMIVyCv1X8tPrFoQlx zkIEA~rz*K}t3mc`4PL4^xv-uGKP#gv%EP6@7c{cyv667tE_9K$d6O3{P?c5ekXxcn z&p<%_^6M7|-@0^rz~GLITzN3mf3sK8f0bJqr&xD87wO!i56^)q(4n*VEY48I%9&tfghM0PR=(Qe6SH+-wOPM7%lJ=Lcj6%3I6XK5RVBM1!f)|U8!X_bmHDTY68Yr z2&`W-dLkxgEN8cP0Adr^ZY-N1zy3_vM1+Z=gRi)I6xSI1 zK`wgoQ!9STFFY$IFBojXx}PpXn4=<3XI7ha#ROiX^_mw#` z8na}Xi|8mHbA(e}_}Xr3OriI$-0FLk@b}kyX4Dt@#mkq$*vQKqrq*wnNDY_t+=q81 z6U#bHeg8T5a@>vo#sB;-ejQ-uG)8mvd5y_8c>YEgGKJ-Vp}Dn@2cz>NJ>$xW*#*sv zer-!8mo3U=Qk8OXesu-C&&r*L!`e9l@8|+?EXY-Ug>)&ts9aB7ymBk{+FKXP>dp8k zI!Er8WL5u~xW?bQf~DWZN<07k^v8es&)h@5CDZ&j==1)ec=*{rN9)J`g!l2c_*s4x zN|pa6U2XmC&;I7uf4%qklP|%Ie_a3g7oUWxM@Q(db`v|#w`Cjd>=gTdBG=p|6SJMH z)~ey0u*)UOLT7w==cGW_2ReWj+VGm=qwWDyX7_n$`^gu+Yh9y;F~vHMv}1aqb}~yk z3jvrAl7~;qcvsWl=wVMZ6S4(Ue$c{zOfO7i1ODfn00wjxDX3d-_Ia zx?I83P_ce6?jjdbjE7}fZRs1C(~U?~=GpOiql%r*Ko*dVo&|VD;zEkYLN}0SdCTh} z^UjABz_Y0LI8DxoKc1_EjbLnLGR$_5KTU(b$9WFtvz2x^-#RJQ_CL-i3hhj$vX|kr zq0c@Uc14@f%I?$H?&&8Ha{K5KtD5c9yNl=6G|L-4Exjq~rA_Zb--KfNX1{pikytxD zqcY28md#SS3&kdHb{0%zymM&!(Y@ZWz6sgtm@g`HYHZK3(@O_uR_3lf997LMZWt*P zK(kN?PU~nT~3v+d8n;g)_ zx-C{z;X#F)EWs0%C>70?n#Z{!oFSNQI#u4rmUR|Vt(k3Po?2IpVJ`(W-i0-bdrnPJ zBK!fKYG#LeY|HEk=Bs;XJ1gE*qsO998-?5>vjg8GpRs<^79qW?W+C$e_d;Vsq||HZ zZ&@c_V2im$>rGWuXegHWJrqWFe2#3;IY+!CTUvL`%&nNG*9^WH&hQzz+A=+-vCT3= zD!HH(>Mfs)G8oyqJu<`jB4#F=2J;XSNkzJidiRZ|** zbtgTZXrx>4m@S}yofkT}c(n!XF8tX>-_l^Ftg`c?325ZV&Q5Uc)3=lsI+LCA8%~Q% zXScB9I>J zUhW8t;F$gBn7!?Y{eGW}wOy4tyvzI2hJ)N?7vF{(Z=#v2vxf-!^a9*Tj#)fQ7C?%b zH4gtCX7__@D~Hhk3%$TWvYCJuDvXdF9VOo|#QWf7F81@RqN5>6 z9$G2FE-!Q;rupya!8;}k5AA)fRlrkI0gu3!-6+A=Rq!0(_1|ycJ!+CQ!Qrvj$h1xy z_#tY^+Hpnb{ezz_l5Jc7n;^%56OU?C$v;_Wxpxc`nQx5KlJGvgy{dEIYKIza)=I==IyfM_w#f-M|H68#@Xk;Xz;8l2zdbbu~RX$+e^lfTeQ6C;kw}3sH0CW()U%209D1&86?R> zj3b+mFtbPL&_koq4x;%d&tcnx=ATvJOy~pfkePr*{HZhFeoh?5nU%f`6FZ)va`cle z{+XW7iW;4-n){BCBEP_npujV%U_X#sLuDCQk_3EtHe5ZNrRR1MYyL3!+Jgb9_7d~& z2P=-`g%PFojYrDO@7*1n`ZnRgFOQASzdAOld_%6#zBeLLT!#0!J2o-jKP6oy8o)R& zl4@3G=2RB)JuoQcOFD19ffv4oCYcuAHP@Tv6r)zJ_oi|jPQKUV-cO8j$$U9JLtR$zx?r=sH(ewE)b zYxWhvh$?CD%LHdXnZea)qISf({}Vd2H;q?2$E;Mfq`u3ec#s7y&5Xa_L}sFi-d4J7qdXg9X1zUTfxn~g zBts`a2CqfQfw$NxU@W|^UbMJAehwHWnu+RR99)U4zfzK}i8S*Mm|;CZe0ZGCF~Mh= zM30cG!25FOW67JWvHKUY z|S%^zn{o*ZJ>sToc$T zDq8dmD`ZDot0E42A zS(&P%r+=d3Yv1~A#~=LBS3AD(omVj!<*fse{}i&_&0{; z&ELJ#5)DMSewCJI?WGglgx#UT9t~7mtk-Lw?A@bxyk`+@(iWV6yXK_($%+Iaa=&Mc^ z=C&dQPj0`;9A5#)A=e=vOV-cg$<|Y>#2-85I=jAmdU-v)eQdNR8mf=F$40;Y?N__u zQAQOy>-e=^@i^zz?36+`E7RJP<-L=YtM_^rsBYUVoqWb45gM(Q9o$7zJIfS)0>o%C#nSt)fhc76*{UF_`#LwB?CUv zz}mdtwlS-*80R#b)XA59>@42JHHRB*Zvfv`*jqRvcl00zw;00D>SaF;1kp&wvfJ76 z-p2(!IT*8QXLNFYBQUGAN66`p4NEm-cvNE>_FzcpUIbr9vi%s%Wy}lr=OdFlykUt1 z=(6$&nkim8=PuZ+H*KTTz)JtOjlKuFGXj1{WGp=BM!dYeyy5VO(1ec@1t~(0(09LY z_J04=LJzvIksh&j7H_OFTWc@iwO`0q_vXO(rqJ{bac=iyng@5tG<)mYufF}Q_iy#S zHm@~Z)EYb=JRDbC>>88ZW&a!}b7%@b$OOG9WAqO8fkj`t-Z}mwdf?u@-7C7mAm3ly zc`70!YXaTzBpE1^LlWf#I{!KHj~1Bs<%l|^h!keAo6MoxmZ5!>fd9#=`%k84l&ifn zi<@1MT(fi25&aM?!fPMg=y|z&aQfAo5BuI6Us(TOd?oNv=al*$Hksaww+6-^O{*5* z&due$GhgfIi68C1pv52$;lxyE9BOxue>^ibyV!NNZ@gQgG7PZ)4_vxEG(0SlP3hJ) zrL(h(@_D&>VNt1FmJl|F#&>mWN?}rKwp`*Vxkn5h+)F%f?V-df66qgernwrbMnrehuXr{@23J@$<&B z&;FvEsD!a!P#AusKn*j};_65a?acV%U z8l7HTp8)%t!apvWlCO>7g%KTn{G|+>dz?LYV0dPAa%S1G)H?gZynFUzBfcX2yvDty zH3p5V_JEydBe&=tHjN{nFWGRywcFSwjC6+>@xYRyTU;l{eGLpxAzL;~F^^2b;g7Bx z-6O^N{#2&6J3K1W^^j|T4tsf6vTBu}iP!K9wxTU?x|u7$34QGI;j>Tw0)28l0IwQ~ zlAXsaB|OW+E^;~00HpFePm24`f5!XQNV`JW+|lzd%CX{3j(pPO;@V~iUYynVd6wNI ziU%Noo`Fcm$I;yGGap(FBW2W@Nriq1}R0^!#K4I+s>WM)F%N@a{~TXFeAkifY5^&{_h1ycZEGIna7XBnd8%!HXZ)8off+ zNE|Ob2V@nlIgw&c%+ZTfN|xFce2o>J!$my{kS&}pf$x{duqg9+)WB(~cn1nv6pCP_ zRq_JM5qjz9K>!Ol%DF=6sNU}PqQP*i8ACRi%50+c#DQiJPJ$dbxL|Ap$t7bTiqA2E z_B5y^6BWMF?F{@?WLy_B1int{ZK0_Jy=xlXrIg)PYV{W-b80KbOsnDa&7X(=mFY21X@0H1McE&KOr~o z5N>~;-kaT3TXGjXeve$VUGx;&XgQmFk2?D-y5mBT`5Z4=IqO8X0k)9fwMEh5hrt5S znMMQr47l}jaK+^Fqpb)QE&vf!95}GFM&Td&a55-R^Y#9#xCcg`BoMkcNYFn(8y+(ZOH>@5n=P=0{m;1Gxo*5M`MxW&$!UALLvsRrgNH<%6>_y{84{g%Ur%#?D`cM=j#NE`o_vl8wg|W|us>4mm^3 z9I+o+UQe1Fg(P!alIIp(54BW+ZcDDeJUYcVI*2rQ0=s{e0<=_~J+2JrUMt`$05@%b zhg9HL>6Aaf+y6MBGz2_z8!m6SdLVR>MbVRotwP2;-XOt?9BZ7W&`KoGbw}~&hv6>- zKQ?<-Tj2lP?rh^l7b7`}NE6OD!cMUHwN2m<>-5B}=eAD_bOvsw$fn_1)nr;{8fL5| z_EoHzX&Jk~9JxjcG8^QMcvDJ`{0#mr(azJKj`90G7?@pspEBfk;GN!CuqNKPuUz{c zBgD6*V&(VP^?xujx$wG7uB8uDdg)e==q8;XeX^y^DGnQjOu4RpG$7gp~i zH?$V8&z`8a$?4mN-`yvR3`{Pwk1pqk-rW=4rz3Xn10EvaaFuOKu-qU+pS{0a$75Zk zo4v|4SOq^SvyT?^_}Zf$qshg|oZ_K2<=6jt*cqL4Gv%dq&`| zge-n^*m=1BnuD3m3jSy2{pSh1+ z&5JJCOW%ROS-aQ^!3t^ue(pm1gr6r()?3|&M!^Rr8RBfBuVWW|$aa+667I<|8NAIX z8BsxDFHh7?qG;97^3xHR+ZM3N0690oV5%Cc?LSG;XPrb#nJ6@l(7MxQPiCn%QAsiD zr^#K)B%6=3;BP4~K=7xd1iyQno(OUV&g%Kl?z?*;=X&2l9lA(Y<0s+ zx;NZOdJ}U2uv@fG<;aVCmPk2)yoCM#C=<-@lhcxn@fo7E&ymG0WQw#nyXfvr)`fFM z;Q8_CH?!y{vgEZE$WJT^n3AxkLqip~=Zc(zS$6O=*G-0ezbxNBMQ&!`?vTt)OneN_ zN%Tgq*vZ@z*mEjNmfn1XPKaMXT%Dx}v z>&Ta>hIoy1Ll(%8C_BIsY+z{I^LaWIQp9Oj*1?7J=n1r3UuvFb%U}cxJeR1Li_hrM zJM-U&z@^6c`hM`{hiGzcIb++G5Fo!ksb2f`>zA&5^-AZ!SLNFEe|P;s|Nr#vjlPb~ z@wtvkiLzswyC08Lhn-JNnCv6;$0~3j1g^suepB;^zdZUGLxM>b>${r0?Y)T^$?}Er}(I8w>Yf>=ty!4TZ*JCrr!z{>kzj*(c4XpZ$3g{SLcDset$;Pscd=u%l@2gwlZ* z!E^l6U!c8iXy3WsH78os&EM{oh(EkLFx)$_Fh;libm!>&%*5j6!v3?*^w~yRX9}eC z+3geZG6KuzuXZYDHCAhW_c0j#QD}C<=ixf@5gvw={PabCEOQAX-E%ZcJ0UvD-Ry_n zSgz`$56ZL28N)Sa(^(?x6N_7G=w!(-D{g&9SoG5GF(-`f+)TUUj)=kgrO>iP)hLnOE&RCFV zcW8ludl}as6tN{-D80OoMaq7ZAz&#Md=`mXKE)gIiy)1MH1!RIDOo4 zmBAmOOA8NWE3shkhgNN2YUOtP3e|>VR)wRp(DcewMh78@ZoJAKc7FkXCThHHgXiOj ztZkCbzvhqSl)i9Ea`{$IKbn(AE1TX?w6BkP(NW*&m-GxwtH;2M=6~|@zo9-ozhVt% zm*{d|4&)AG!PNGMGnnoQXUaF0^_Cx(WK%%eHA`QbmEaMP(ETPRduRrq<2ZeDT}qwv4!xZpDK+Ld$=LYTg)8^I z{h)vHW%_ttyE80%Z+atsV@P4XHz8Z=?wefTEp@Gwcc0pKPe1dcvj~)1`(8Q@9cVL& z9H^~~&1uKJfBy2F|M1Eiccj|QfjO;t=>F*3@RUL`rC&2jl?u(ALb^P^FsE8V@4t*! zM$J93C7)Te&rB-Z^9of^v$7F+_r2>;@w~Qf52v0vf{DK%$Nle;g~s2}d+;0b-2V$_ z^FO7VPyYq|@Bd(a{;%NPzYCWRe-|qr{v*2Rf7pKf`EN_dpZ)EcE%fE8BlbDjQ=gHo z`!Qb5Bh8j~H`P4dHUp&d9#p_E%5tr(ik^9woOim}s{Gty73>A=4Vk`CI^z8C;Jn6Y zzxH6*$-a|0`sB}>2akW!L=s$&mv^D^KWm^tulSSYQj`8>?%@bJX7j?D(;myUTr!Pi zOS)nCNtmY0>`uWr``4L9O0e! zrOkM~&7pMD1V>@Om$y-Dovv;lf4U4;Gmj5xX4U8%@rJVF#hrtZ(RpnzK7>Jq)-|p+ zha}=9)AEuY+hMBY!Z+*}e7xjR@u+^DMEe?xq4yW~jb~r{b*^#xvlRW5abLEP&F`F1 zb?^mCeJx*X9TgI2T)AhH=#CQ3U@Ej~@`uPvOSPW;JVnQ+pCUQ(6FpAm8#g(u7C>k1 zvN4Dp#H;8YTN2&rpBWve>u_e-CY5TO(pjx*c1GopqYYl7S9qQ?LCnfHIl63>;fZ7K zFRwX*c^%h1M@VkVi3TuNJ+Y$KH?0xn2lfljXtSeV@^Euo9`QgyT5q5q(+-dCB-hbq z_C{Ugv-r@pg`D9^+!bc77IIg?0_Y+LFK-Z7Y6}RSuK21c6sKP_I@w);k54}ka zc6_TyX&`HA)k1)u-xI6HV)+&_m&a*l&X_H}9WCzvIEbjjBAlB-SBi^#$#VM%5MvEW zqi#X4WFVJu1FhE<_vse9`1+U@ukG%EsF6gi0KWGID>g9{Yx|UU|Ga0J+b90j;3m-L)=e~ z%$`g)M&bv0OW?-Zmg{{mz&9wCI5#=1d}Crt@#gIZgXcT@C07uf+#M4yV-sAOnwnWw zboNZI_RnbC>79=Y>=WCe^5H&tH%I>5{vo-VNBG*0$RR)U=l2ibTn<9zV|MTD7Q3&I z1BW-fUB;uH2m4K|Iul`yB^o40JIL!LVf2x2%ih~Wquyd>uA4_>+Ko$h2h9)1 z7eYFBrr=8N)bN4TkOgeRLmw~??XTKGd*}%;tL`3?$Gyk-vWLcI4;|^A@LJ$q_t@XI z!3~;lG7b3m8oN@NZgup)+j%4)WY8Cq;F9qBg)mz1;ETB|vn%lFL1rvJ=QVs>CcJ83f>~0_-t?7`dW&I+&#!A$00dGV){GgE4#& zA+&bhHG9Zo4rIJ&e);eAg82BoVIOZti9w9P4d9_@ zCGg+8$d)f1KFgF3o-_0B#L4JOvZJR0WK`n!Pa%Iuan7=jlIc-BNbsH|nIWRgm-LOd zV{ph3do&NGqG z*IK~?fQa&_2F6eY%V>ZDZ3j!OdbHH4q0N5L$;a;u2Y*~f*If{He}7i!WE1lEN;ywv zH_LmTVJ|O$@m4bU3iug$cHAu5fNUhcn?om%i1qZ$GaQOv0AK;I14*Gl72PS^t3%;ArJ z4sLM9wNS~C^OR+l7IHq(Cp5D712Sq`EVC6T7SXfRcu(tKBX}NmD%jgg^aJLwnWVwI zqHCU9h}RzD@1v$@A>uFWffrTqBd4Q6#su+rNr;{}XLbY}jBCB-=X2y&IrXANAP3;U z1=iw7Z66ay+P19PV;k^*I`ASrx*0t@_eQRHrnkf@YCc~L+|LR-pc0Hn&a+I8FGkKz zIbT2h$$T(ZpMfh8?LPftf(*3>k3{NAv&&l-qS>7f&57pQZ;y$-eWk1aKaCAbUK$t> zy*x4|{o(Aa>iok;q6?R9^<6`Y*E=oKPRf=Hvhmp^)u?FEpxO+EEb#_=dZxNcxYUNf zuxp7m@!?=tpuB3$m1%42^m1l*kE(~Co}jrp0Gry4l=tZUE7jR)YUrhF_}i=CT~&7W zDx7MWT(=^74LzdyBD)&cY^?~7T0(zO#kW$zn~|q4Ay4kHz^e*fp&2rI%q;K0 zW8?*o_QDOh@UjWse>ae&hxvspyQ-UW$wRKN2OJX47yq|AN#9>R9;u!s$R~~RY~Z@c zhP`<8IA@~aTq`1EjB+o8;DiHfj#NOv`h48a7QeuMm*f1B$xP!A?qfH~`5uMaBKNKw zhks9U-sZ@t$l*;$ryIv>JU-U1h5HWFaT2|?@6S(?C$lR%S_Ko*t_f*pb>fc5NT z(Kcnk*}xAQdGs`3Ks!Y|H$@^WN<6!`j}Pc2tLM4aa`dQ@KU++ZJDBn&!I=`xAbJ0` zd!zF%bRj;`lFO-Z zdf5A5L^eJo-<-KMAQQcI>F&(EVWm=Ii*7WIK0zCoiy{jmQ?ZaEgO9$2iqO3fRht83 zOzd#2CCS9wHJ*O{ODwx}g)d$mxpJ%f{<-s)JA23EWAKZ!Ilv^w464sb0Hm`IJ zTb4{dXV1ivTe|8@9z6TJLKbrY9x0=-`trVXsm}hBRd+4T!)IIR z%HC4%m{g2+U>+~kl0s`-w0I(FW^E09(>kt2Lr}YuGDYG2u;cIfrLeZX0Kq-tMKNG!x^@iHTP>-J^1?&yi>) zR9pT89CZRLHzr%s2e&K%0k@1M@h6dg=#i?{t#Gq$9ev{xmBl7oG27sn(E{b^5Gh&; zty3bp${Tt|3fpW%_PsaG_y4C?e$?APwb>kx;BumAYtBJu*Y{MHf`RA7I*N&%blaIUGJQDb zN|#nIe)U^#TqomfV)w}>b7DsZ_7R-#1&pl}KX9oyd>LvpJ zCb{1iCKTH5e*4uo|Ac&jZ*-2zzV~oK^%^|tTO-rUA9M}LZcHilT@S~UV_Y+f>FS=D z>_@VBy;e^w;{aO`dL=ft+`0Li{WBv|Ds$(XAKba~U_#k_e^C19!NlB%e8nWzYqnbn}agYfDq&`NiwEdzQziRhx?njTQZmOQlo=b?U9~I~P6*-FWz@aKCS2e@LYK z3=a3NXP35qIj^<-3Ju?HvCaHF-Cn<2F~$Eo8mj*%UqAilSfTYhgD3W1R7U@A*p2^g z@9BU3b+XXGLlSnuj0nrYgHE_nAD{ zb_PkX|0Z6WcRuQ0h5y*pT7tTJ{i0=h_Q(CdQ*Nl7qsy30q=3bDmdsoBN6SFtlM%uk2cn6URKK9Ya>qQ6SaR`~e zctg=)1`FFKJht0{Uydq|wuAmY2VGUR((W_l>+Q|z{&Rh$bwrL^WsaQTsSR6bgpQ3z zw}MbW<*N{Ij=<*FYJ1%JCDO~)zMhvadO37LU+@Ms&$qi9C>p8*_S2y zIMQHDDRMgLvfjxqt!<@vACa*B3~gm0i%uksmMDdu6un#n&1x>pULBzWF#w%zo1E8d zQBY?lCxD)TJ;A5G&?j1$omsKU*wK`sY-<@^Bwo~(CS5*%QIyAQ9!WpBdS2pxFlaJuH?U~{G`^aQ(OHu!XM5_#WJb%)j-HAvA1 z5P+v2k*amwlX8xVgp=M*pTQmvkb4>pBx`Zbs>qr-6tMth$SA{GShWgsRcy@`i7ykT zCxqsbO_IQ$6r%?tJU*)o(P5GS4=AFwq3f?&Qf)em=z;1_e)5ZEn9T2ajXASvkLHZ- zXj}@hJ}6$cV}^1ElMR=E)h?RD*2x82_j}RaWGY%#*Z|Ke{52<=@BJL`%;^) zAl93L6J%UY(l0e(awdk>o#B4wyqEohHy(74 zz4M@N=JM#2^6v1|LLc7$sp;93`OdzX^>ueHlG=Gz!C%-U)2R(!eFR5&$h@<^>B}Fm zyC1Sg@9W&@HgozOG5kC1=71d8D*SWR9LkcvR>D77iqYj5UNJ?3U`he7-7q@?&$*hw zV>9dK19H6wuC3zK*u$2qUE`MSsbxR2K!#nTf?lYOo*X}MvZb|$cK~${z!y&0PY>Du zckyx41CTpl{u4s14&Y&T(B$p-GJ8!h{tCwGiVfX*xO`m12aw^lr{GKzf?k{afDoP0 zAvB=@a-oCFmuUY}LCQJ>y?q=mFb&t8A|ev~F+2_$8$r{Lw^+~%_?2iw=@tyKzX=*! zIQu%;TSx3CS;}-`ToT8AW*L{-9CVUL=vl|t zwV-nV7NtTya0Eev!0tiTUoFAcl0~(h0z*!ds{;nmNV1D2!7UQ-#%S}}$!zPCp8DN5 z+#&knY8;(JbbixAmS8)PYCK6WJ4WJYj$@6(U=L=dsU;%kwog;}y=OVR0q|nmDY~SD zjs$R$a?X{h=l$TYcuh+Ln^wrdCycjMW$$I5Yu3=ZHPC<6;kM!a_bI}}f1ls3;?1bA zgB97S@ddUEWY^{4^770N%+Nw#d$S~Hwb2t+Ug+)73UE)-F^~hRD`nxig*~P~7BLwD z^#U_s5ifzD<0uGT0&F~4dS&q9CbPUR1^B&Uq`F^WUahC=Psspi3%$d51)6xs(^)v# zEVDR105Ao#K6o5*>n2|WDZF>U%I&}MU8qah)~xr*6y7tO{lSWcT<<7TLK@M*Ym z@<|Xqhldah2L*r@xMN_trV+#cMyRyU4p7$do~+UJpyPY$c#Z4=IbvVRE0yC<)Mx_8 z1aB$UJ$aedm5^~8D)10V_}oN==ILZ<=UJ~}!+RZ{@-=eOuIYl6^F1q@FMZJ2_syws z`FBP~X1_N&EO~8aTKQJrsO$on!Pf@IkV)#@JkLv7yEHhW5&V5>I#EB}sspLlr(Yy$i(SBDd=*~1mCjqMs5<}&+O z8N9dbjgiUW&lk{h7r=K5U;#z${SwdR5?EakoTxy~1^7%Y$Ih4KOc635ll1Y#(R6Vy zkY9_g2)vPQjzf6v1MiSbYZ;lhA@uXm z0DJJcyFOc>P4RpJjU6|jOZJ1F}21XxqT94*G_i;UAdnk3LHiJmqF#ziFM$6m7Y z(0pvH&T4FHgR@#aK4&ZZa)6x5cxoHWBHN6o>L&>S2jKg0u2tz$%)9W<;Q7zJc>mC+ zx!^{f`1Kr)aLK{WYa{o-%>68M2Uz(1&G=GG8)%i$_gm?D7JLHyoPrfR)&}NE*8*CK zP=TCgdJz)UApaayrBc9^LJq%{@;=UH}XU=c# z_ePOCha$dE^h-5#OqCb?6ZS}5$Op~w_jFO_Qi8{XXC1rBHX5qBN3>*iXk8gU`AfpN zpTeUdWQ1~UmdnUt%3PZzo=;r6)jWGT_X)lLd}jDr$TBHq(7I&s_0x}Ai=i*03m`+D zYc;_B?-6_wYFh-%qhul9!^HE`$k%W3eRObYR37EkJQoH2U+E|7122=z8E?$M4Nt&9 zjc`v68UpzqzV|)O`zso==SLg%)c1qAv+uXge)@7KUHlfh*{=t4?SDV5GW_eIiP;YE zq^x5K{(lVqe{@{Y(K9sHK@Vt$T(;6NLGFL&gQ1STAz8=y%lA6I_GjPkz~}tG4oY=@ z)Hl2S70#)zd*Y?9U3ob4$2SM1|MC9N+@IchB>Lv{hZEn%v;5NAA3pfbtX*8(7;%WcI1`!sRvpOqc)T#D{E9>-@fPmE`3IPXRWg7oXu zNGyp`wdET4_Nza-N8VK5tN9FdUH7-p7pxh52A=%;p)Ag49YP-%_IGpFt--c=YVE zk8bx({oum2t{>QZ$sggB`~J)C-g@QHnB;B3*DqYWGjRFxy}|A+S6F0@)x|1PWZd8g z52EvYxM&W2I3(5l@Vjqa_}(|a`^L+!zjf){`44WrLvH+sFTH>D>YbtK?$Yij;&pdM z#B4Yr(>bTeGM&a(K1w!OAMbnD=#1(%8i`wUgk8hC_}1M~$)A4n-1&d^^7#+Ha{2DS zpAAVguMWv{Z`>c45juN6=$??@2ag?M|CcAryPIf?4RcznenPpmF|YG(WgAb{@U2J* zBM^lvM`J^hl?S(a#CPAn_2~Y^+kJf^sY+xsSY>+crhH|2eL<~SUmTy5E8oA?wM3BN zx=f<9%t{uVOY^G0oLn2ecDpz5m2bQhy+1I$gSP(D5t-)aYtGCs7LDG&0eAY1)*Sw| zWI^|Tp&|JleP91C_vXKpny3FnLEPW*4Eqgz*}o!};cw9@{DKVpFY$`}I8)wv?unP_ z@@(wy930m_>K@7Rnb%Y0<~|(wezLgJq!+HJhQJj1J?OK?r{0LoF0Q)4n4IJoN5BOO z#0OT`^XquucHkEF3eB^F`p!vf2||&cu_DB5Os=!p@G)+!*^=vcLbMZ7jhZ}<#qLps z0$cNPD8H=_B}-akIJ;6ge5xYqQ+f3CGi77{F&S)y$;%H0hlZw?CPZ_qq##EZG|rTe z!?b}9&wlv)OGeB9i(k;mzkpKrBuK}{y*dD3HrSj8lkGwOD+dGO)NzF z4xWj&RQ=4#b90ktiLSD9vKG#^7VW{}tks_!rI)jJRJ!%3U$WBIHzgmLXaCpQqKbhT z6}Ldl-Z=Rz3f3QCMvm~@AhTpAfv+Y^ent|{YY{I){^Z%`MfmB0pp)QtNtYUj%*L$( z`AxZe`xCsljU;$nbe-&fdu%%bz8cV*{ciS6B7qLvrNf_qt!6hxGOdO)k##z{4A#6F zWiDmD+lW^m8>n?O@1K5Rq)%}bzr701k@}X@LNC<}WZy&Y{r_4AccxC9ehsU^wi$lT zw6cli8+`%qi-%{o+ZM^XJ+V9zkVE_uO&8zOYV*g}=(t!Uk5kn>CPgzJaxbhoykZK< z@C(KWDo(uc+`AGXv;smtWN>A}9o|5zr!|D)vHUL2>0Hts5&8l=0Xz(T6@hMxt41M! zxQM?#&$XL@oG6h~S!UPDu35qaGFYNITOf=t->2Sk+vZg3=I&9M=~kb_G%}~RYYYK5 zT_s-bfsnw(#IyC-hBZX@QY=K4hzDJaHCCvZxnJ~>`E@l#l3IHFHt+>)fO+vg6ij@^ z#%Q*_g=R+w9v)0$rluXBTSK>G|tbMK;JcC_N0c;Mm!>*vWtuD?uI>Z zO}*iMcVJ-p-0hw-+sk?fSzpC)zkc zKad@p*Jl(PzB2nMzG4DA@E!9IIl;fa4==Z81zYswTF1V8^MKu}&2HL8v(SP^t?=xv z!2ML|N-FXFv+&z#SGtvEuNHd#*!MF6zw{zskC`jTTo$CDLD25g@wP{|Q;8n<9ro`1 zRHA-}ew++$p3U?h1Xs*{pD~n0^WQ?_S;Ak7FF%wHnF1-W_)3tSQt%qX>6ZhW;2i9E z0r*|NF_`hQ(+in@aD;IOommcg&V}wVCtQ=8-!teZ*H3K=(XW$-Pp%|*59zV4Crp8C z9F8CUtD4|{CwUK&;mQFWR~2%_TJ+oPC79Qk(OYqFk~r_Rpi57XZHqSeBoVJ4MiHTS zCKnA(@Y@L5g$$WwxfD5}?4?-(>C@!Yq}kOokO?_HdNlg=VhEi*AAcErMTs4(;xFyg zy!mE5wf(G_*gk8L0f1Kiw9c-E|G!!S7bt-lG9MT7_(238K%O~)z3fQP>zBY!83c~% z@WmCr2CepfCDT4D^B(2Nwamgt?$RmHF@+DS#XuC;1fgtP!u%(%y2oOtAZH`ez1=ISMURu zv!T*af$W9?I{?{%?J_t3zh|?I$D;zrUnY0IL{4EbS=}cue3$Dt8^QaZ;P=l6d_Ni% zJpWBJ7rO~E454j41`pVYqL+^Fc}CHOMe!$vg`NgJ3;ypD553;_pVLqxdyM?M26mVY zb_{)X=VQjeZ7tWY8ZWn+T|!;hqXQt@RN<{(0#8?>ahM0MlBddTMW%5g<7bO&2cJx` z=k+a`Be&<)y;mR2t$nZ=Z(LmTBwxMqpzqJ-=QQ6Hix*!RpOC#O7AxPv2k`!l2cy>} zrk6TLrj$d&Giu3%WO?af|MV8U7$G83=x9n-*f*NyNUa4=x?>Di+U7`Q*GzaR*Yz$l z(hhq{i`mxd@oj(! z;Mal^EATUfyiPLKOF8rq8AC9e246~(qnES>%jl|03C^GxI%vG}g%_MOSfFP>vg*)S z!qG(IgzKzP;QcO=*;wFfv*0f&p5akA^ytpnPvd-k0dln6_|M(UD?)Y;9DahCx8cRp z;I**pvonU!ZbZZ7BWCa_{<=nh`-Cn>`Z0oBq@HKqwG2wM%S_y!~(Q%MN+msdb`W|Ky#^e((ISpVbbSseS2k&F$kA-u~!Z{-B z{mcV-;g1FGpDv?}jXl;z4v7`w+Xi;(6ui%nEbK8=zlrR8c!w}E4`+2Y1fCoP4?qu5 zjG|MH!Pg6Z`!rlaTF4jS`pF16o}8QL^(#60F}TLEXp!nAG*M-=MUx&alhd5Il+82*2*1Cq4kPS145_|zhO0N??`GaZk5 zCpzvwn(lbx{kt7s{npDJaDKnPpm%(4BzORUVQKFfQ%0FmD}V2AVFU5lBg|R;03)S^7WAc zseS}H9zC;7^il8B95|jHZ`&qbV|BlHUiC<%+87Wmxxk`g_-FEnRI8j1RV;x;^t=VK zj#A6!Xe?Sgh=6$qxR!0p=7_F-`o)qnnjQMuORwI)e1C)=>yX`Im=0F<%?~H!7B&6g zp;Vn7*lJd)wWj)}7Bf3fKC2a5hXr0=F5Nh5l#f2%rqi^_`&nWz%^O|e1OflSrHz2| z&ZyFG>E3|mr5|3LKmXCAIq`~7SwH<;TWmjDWvAE1sXb{NoH+&m&f&A4B_4nAizFCs z7~P*69uzCdF?zof4;{9Qe{}<#z$RS@NXsjvQ$LB}1q!0q51^Y5;z5tW)d_xA`eviS zT=OW7Zj{&Ia&Efgp7QPyy5DvcO^B5o$!i zH|e#^B+w2fv)hm3Xnb8Fm@6O?$MU+{`fzm4N)}BZRyjlemh}pzRrKFcI&isXiYYj$ zG<92XDM5)~_A#_i333Mg)FL<}D^{ymWw65iy8X$zhx5Ts*9H=yy{!jBvkT@S}%QE0c`t3!Kqfo-6Cg@(wWS zHndS;k>UqQAW>wF-o7)g+VetST2p>tsN`pn|i z-Miz9y$kH{>@1?C&Cuwkr_jgudWe_f>VSCR+_mnJA3PeD{fLb43$o?S3-4UM`|hjn ze0WWUz`mG?do!)a-Bxe>BXHXf^_K8?+2Y#EHy)0CJ zpS*d!>nk7J9{lErZ1wxhW83 zT?T){<*qUGC(^M*>+#gwimm7Uo4t32mL$bc1aml#P;gacBw-idbW?s9ruIw9{ zp2xehESXX26|)N_rCjaQEUx(_5>@cR)%)Se`PIz0OtpjNyP`C>O!+9?r&Mn`lZOKyKEoGSY9B^&Pa zOqpbAQz(?LmJ+3AEtYRK5y9`e5<5G=Os!$}aRX(WbiEO5x#skDjmV9CV%64+%4*!S zGuo5Wmuo#U@0|X46>pO4;@v?wbT-Aqu zkkRf zGHmc9CCUxA?Cy|M(K)%Ghl2~0_dlioR?t7@1)Mr#^`|pvTuQ~=C$-wqPnyRce^E0a z2qzz?`mLZ-OQLi{KFx{?2ge{ z&Fb`$iL>IsKt7R?*KdF?F~ND7$<4QKAAQOw-?r8028dOT429i~x5#N&m9Lste5uMN z&nj!Cc534@G_Tvk=0xeprng0n$P0)@t+?<@`pE|LIf5xqt^GKZsT>7`_bgT0rE{=h zat2D;p~>atN8?H@(R<|RXYotdupvE8Z67{Qvuj7;)Wi7t$WJoh39SUono6^*8}%F#(1!C{?Zxq4g1&yqSr)RoAfA5*d^zRv&Ge{ewD_k9iVr(qQz;^?27VU@AT%p-pBQELdV-dOPKFhY>6E^Ip5?H?ZM>>;*TsynD0H+%>V_9+}gHX4kx_*;Qw5P^!(1$T!(7a))r? zhgxgs#s1Ip=@9N79t}f~4zhfY6!R3Xw;Tui6uPL;&+DKYPf~D(LdJigc<{7HUK$?vlN{Q0 z_^S%JM>#V3+IgtmLI56(S+fjoA#}8tW7U0h@vSO9s|t=&!>rjLx4#ZH0zXy z&n2TTgGV+4_g`jzKB$t5PyZ%bP!bFNUNT7t%#R1kN!I+}w#e0N2GE!X(Da8mt1mW2%cEbloBub9Gn5#zc>;^kh1z26ImVi0S*nt8cd zL;sO!+ZJ_@XYY|4Bi;?IFUbFngV`m>(!objkAY7_nOVa89CX3;02&%FlPWT(^AP-u zSKvIsiQLTDbfXmDK$F5=ZsR)GSXZoiPtpQz4A)n%v(Gv3(L2D}T>QPDqj0mY3K)QQ z+ZX~PO$C_!L(JT~-wL`L!Dmy5;KjmA9FI|&Nw-)k$$gQ+JBH@0My6jOL*@*4Ci#5P zl7Iu1U3_sCE3@#ij#KQ)^q_afT>#%AyA& z`!8SE^^i5n{Lg$*W+s361%6W!);VTJvMUOFUl9zVK-OuK9zo{+P%#FsP5wmA&o%I} zU%Tn774$zgH05UW2PXDdq>goJwVG;l0QmnK|9=Mn835pa>*h#hnQVdu@PIk+?+G*$ zLu5Mjd!v&sH||HPLT`RX5DzVz0W`bT@X8LEueA~w9{fg`E|O}+8O~S9P^yPZokp_OtDtwt zVcsPxrUq_U@{+M&7HwNJ%i9hW=Ndhj8Qc1agU`X$Tqxi13?o!1A0n7$F7$VEa2+8N7GEm zffUt!aRmkSo9G-hWVGx$1963DLq^0D6o0g8BFNLMaU>n+1UzJyLbDyhwZR*Z3yf_z ztg!ld_Od+pjU+xL&Lamt&RP7JvYm`OPc2G``n*^M#Q@aaXBYih$7o)m4`CuStN=}-FSmsbs8RjwgKL{TSI z?r~JFDComlPuEYT&HgNv54*qk<;S;v_-Jh5ha!pQ2cO;@dR3zJzXMydo#HtWbOItM@7)L5>P zV|B|MOwF)nFT$D3z_$*sY+E0adHo2?>kj+Z4Y>067sb0je(S@}{_4u@!T*Y8=C2=4 z%l_ukl=yESPOZNxQkdQxTGjvJ{aX`n4a}@u?Vnk@d-?O>kvXwm(mngyXpFY>>!vu_ zVICRB?UiAXa^%X*zDJjD_YL&V%LX3J$RE;)FxWr0Iko}?Zqyi-71A9#05;b#fk*)Q zH$M4%K)$vj*DQ(F%^NF9Cx0JUUfm46|Iw`^+-hUX;BJ3(vu}TFPW&QS-2ZRMLhlc2 zO7kDk)%}lP;oyHtl=go{>-?|Wum3N8ng56N^?#D5^Ka$W@xRvg&i^RWI=^O3d`@oh z#fH{(LU+tSOt*hPj^XI?Y!=KnmSN0lin(NdiPrkf=UL;$Nma%)xe4)F=RC>G>!lRZaBFzp z;E9(!=U@FU)YyOG+rM~j)jQ)#=BbSbqsuFU(;KpM!Trd6&hPQwSE_I&ZKWQ7+RW^;v6x61Ln&?88 z$i1q~9m-hX9xbdZ7S4L+ZLQs?HiyYB344O6qA!O}0(>mW+`t*48lZ0nX}}qu=$>hH z+q%R3qmil17BUs1h5fHM`_)pRWFet8`-MI>d_|cQ+8Rw3zVrWRV!1 zI%~*x@c0}05qrt{-eIsjWUrZVo_M*jA;!uH;aONr$xZbiRBH&wAC9~B!_lUzU!Rh zUJ;QM1}qw$#-|0ZpPP30Q&SdiYI4&Yp0EZ=<2qMzRKON}vFZf58sqT$)Y00 zbQ!}GjE#`D&_}-D=T>+6s$|>ri-&z9Kbja{`0?2I!t1lMYrpIpoO^#@V(l6^K=;7C zMkeMY^Aoch(g!1pdYK^<^`rMj&(`9M)l_4~-evA*uJ3XG9|*nQXj>2In?C>x*yBv! zVYaWc9}2T}5pF8Wc`e5oDZA^3q>K^z z;S%7@(Taaf<1|mM@90*yP3EaJHRsS^Y*t}Uj<0GHpAIZ%#5!+_z@$Su{EnI5PU$H; z3l>j~;amhVbsv52KAqTPkvAG}mb@mxXUx1oZ!;dAf-k>EwtNllh+HYOt?;hG%nv@D zW@ax%@jWN#_{%WI78A{r5}a!uEpx`3sil~u(;4PIqz?)B z#o+d1yPiZu$dZD?PLds;Ax|#Bc{Gj~G9lje!H4Z-3j1HuLk%Y#g%|TC<8awzW7kvU zaV6oK&@Jp|YA0WklhwrEs&@SL}4oziFZGsFE2AM^{IjRLl!F0A236 z02ly%W$=VL*u?>U;0$_*S_WSMd|#u)S)+`npLw#5hySn?Ds>9XKzX>;A{nzK{LW-} z)$`~Evh*L*+tn_ln&%}nibbw#0m1;SKm(ufL51@+n&Dc7T!|W=ZKZhl1^wTJ6gW&K z**uR`1oAd^(NCnx|1$y6p$g z@sJ1R_7(PQfBsV}|j+HlE>5hWEND(d`$Pl8* z>PKHn;bqskPHX7xmc6<5*o@407tP{b&Z4*AJwM%craqk7a{lb@@bnKC=2w3tT9myu zzo>Xaw5WLN;o!o1^elfeF(-a7zpR>=URGlwl*#(WR}5=A-ms@|RMG`Xgt-8slc{Nr z)Z0AE9eBwu^K={EeuJL&2G4ernW)8Cw+%Pjf*-EKJ(8Vp&_MTH>n9EUxCxju$E+)i?eX=@VqrVJdG3? zKzP3*c#2X%_*T!1%wXFz2ZP{ZnN01N@2g@%Jk1n4=P4nB4X)WQ*7>|}{C;#2MB_h> z;Q52Y&IvvMug;Sdx~7ACj^uK;=jzd zO7W8)_c9LvUz<HfPC4>Y2SC>!SWlEZ zhq&O4;o;&^jF80cb;x6$NcToID$PKvU?-%P~rH$p>iQ|LbPZ z!(_Nevc=w$4Ew8)5y1Dh&^`20JY(PidxD>Uo>QQ%=6Mhv*)bur8kv9D?<+QDR|gmv zdWXYkw*4$l*Nu>KN&bCD=-DHOA;arzCs-e1yazh^UUm-9J(v%JYtXS!_HEfBF1#UL zH1hN$63JOTa`Sx-FdwT8?jIepWy>D1fa}=F+;_6(^2M2njwbM6u4~!F*_p2#+2(04 zzW9JU(Fn5!N5P-SFRXx_l)~s0h0epM;49|yW7aOy(Q%ezog@1{n;{d4=f6guX+`Mu zDAOZUX5K6FyGnEq3OVm3Tdr4P-^uZN3Dj=W*_R{dC2YNNdzgNCX8?Tx9cLA^NENW{ z6gh(QSdv+ZuD`L#|rI4^HW! zmxZ3ACjIVd)0Q=AU|-jRDd_lJ$UW;SFaRYw89DtCV&4B6_`nL9t|k1W^Sl=N&D$en zBt23Z0}tp(xa)|OKGoQgSGafHHw98}@H<}(q&t5H*YqE!$on51p1Z`pkN2PaKQMs7 z@zqOYfL>Z%UI!Zxz3c!O8e6$U_ui$ye&vlz-+SYu|1dPK{61k=Ke+K=>^q-6nEIRR z_r|`rruDx%IIDOKVDio7&E2109a#9q(7N&RirRA(0n^oidF6W_-kW^CZ+7#>s>=0H zVh9dBoRbf|b8~Ry-CLuKSY8FBl_{BPSPRvC@*lWun`a?#GMlv=$s(L!p zm3?z^g)NlPpw-^ddGcEuYNv8b=iFA4{Xe`QmJZJ@ZLRHCO!jEjNydW55iR=5twUt0 z2gxj*qPgZ-0QA`jT8C+JQKp?2YYiGl#Du=xME9Q+9t{1p z-nOcS)~FxyOvZx5efz-kBC%pGivQKOuGF~{2EUM(611hd0p#6otjx|Ob=WD|cA^8Q z(vehmP!ppSNlhDawO35Xwt{?f85-A>d9iAC(-NHDFa#Iqxt${uY%y0qSYA_E<_8uO z%O*#dsK%mh)socgxMFI4mJ02rtk61HfUA4Re*Nwn?|l5-E4K!J@LB)-t0Qw8Ki#oM z-(N)B?rKJ9%^jC+nmj>ZQ2qa%k}=Z&A!ABZ{8pN zPnWOW`cHR<7XEs0R{A}9M!x@GV&he^)P8>X!Rnir?=QSPy0rZf`I(>HcmU+FzC9aB zmp7x8Q$t#bZ1?)rI(5&D#^#6K9Gv$#p)R{07VPycDY35o1NbX-o8JY#)Q-bJ3m~K?Y4h* z`Pu;*jBm*6`<+B#_|2kN^9QXh@qYtU{j0(h{ui*;|Ah|Ze}S3&4?5lcyCabO=lbE- z|A+?fYa%1gR|>?E%Qo+Z1A%T8o~rQ zE3r)dC?aH7>RmA>`!zkU35Ow2b~lfoyV2#_=uNbeCG8|H$+h?Rg*jU4suVV~IgW(P z7b{Dc(^tvDTv*%Gjolks7`itinxsc%d308`$=YP1FFc+u@8@DUW?TBU$cS#`>j$k; z>$JOf_U!Qd`L{=4Rc+4bwL<%(L0?r3&c6V!kma*U*LoKzv}~LuvJrYIf(pIcqjkj5 z8?_>GYVFdsgYfZJe@}O9%}@Wl%Si?vXCV)MLpQl0bg~HhbKMJH?rj}hxY00~N4Gt@ zlW+#SehcSoS8@Nb3!RWfqVt*P^RVD;wCG)NODI*g;rVo;*>lo8#53Lv5|ZHGAscPS z758uk@R7-jCNp8$*fH;#-Eq^l$!+6#_c8y*=q8LCTw%^kY53Pp7BUTAeyeWQi zFGHS0$B+NO4VP)dx1pErSal{BGSy7WFeg^4^yDCb5t+$nA+oTrg$_#|$aFT8TGy;p zWtu@8u~h1uu7;DG5wKC_Y`WAH`-8a5YdV!dA6LeCAg}EK9n6qsw!S^uRmoo4HWJMp68PUmuf5VH@sgYp@p_`sg zzqFvuhaOGF(bba4FX-{X19IeebzaBfnIzg4_*k(3zRK8fBF>^}P~y=sXR9hlijsa*hk zE0QH!4wl+Q_AzGuiqM&tMMIlmF3I3&%30&ZEVFX~?L(Qr7dW+2q};2))z{f$>37e= zy&u%c;cM`3ssc6u#!}-i;le%{ zOucsJ^vfohMrHEZ^LPRBXwLFv0p-(;!xH%^Mfm$Xy@z??=*fIJ%LViMc|j+@>w){{ zwUJrCdWqgwnB@;k@UTVt7Att2D`dSf`zNyA(os3}_>VPL2HroE&4XK%m_>_VR0Uo? z*@sp11n`8>GWmz+^~U30m%w}QK~|Ias-tVWF305BmdlS{l`~|P+|9`e1lD<7Swt5-O?=?FA9xSZyOw6yU7pIrDWORb+ z$$1TF{G|fxJ^I^b6Q4{IZnd>#Pqfgsci^|%aHdUopoR{K105Dk#8@OVTtxSm!tm;9I#S?uNAb_WJR`0=q8xgYGg-}7wJr< znSatOK|HgiEc3XK2S^6PX%2lU{`Q{0mxsW>eB`y7Zw!d^Yk0;ghtJc+-cunnHij0K z-i$_oJRcY9keBBj9X6Sak#dOj*-t@@8(tQhgMa!2{*T$#%URdQxzNWN6Tl-yXJ;eCXBgrcMYkq& z!WW`cDn@;DL*i3KBm7by9uss5%sy$M^8-zN6s-wZK`So!0w73ZXfMf>Xn_q>;otF= z;5|Z<0WVmN&><5=rwJyq2lseNcl}Wo4FUat&r)1xeg|Ix@WDu#dA$;*rzU`2&R^+1 zaYHg_uRWTl8n=whtQU-y57Ap5#Mm#%73gJn&a&=wD+!)~XDSt?KL@??zRW`-9RxRVkd`LG>~$gVK@@kZsrY`S5xCc=V7jCGtYgI)|gBg#30wL8T%$a8i< zw-l`iYdgJvm6zRqyf3lwL&l2SSMOkma0kdSlwCJE{`ZP|kU$77EYYQ41BOXmXd=n7|O&+DTnt!Vx&PWQz zAm*B^qElMtURuWMA>zKAiC6Z<4DQ5$D_ZL-wom#xM^Ep0eyGJNRFiExz;F!2EaK`SiixJ(ym9^})pYYgZr6zHx72{VlWrA4p8G zE6jMG%x~GRj;-lF9$Mc1@bkXuPsZkD_ZGM9!wC+&3gu$n6E zdjG{LrdZ zn|NSqT;wbo>l7IPd3=+3`n2=F1Z2vV^1;ec2HrQBEVh#H-N{V#C{x%wNrGp`;bL=i zMrYB|(<2bMN< zl=0D&TqB2nD<3_f1GGUM)p-K_SR6ldXxAQf;lmMnHvG-rxpQb{edq0K54MLHd=+Ts zb9+w{XJ7s{4dwt}bLivy7^lkGvAGQ~ng>~;)X~8cY4KjF6grP$QLNfrl$(^qzHRN= z18SMUWn_MKqFDjgEQOQBcFc>1QDtz4_&g#8d`2THyB>+w=Tp*irLqOR9`HJN*WIb5 z%^fZni4`+Ao49%FxtO`}yPa^VNyW`P_$RSqQd_s_YG+Phs zoqiQY|KMFUM?IV70CaEFPkEYe*B+r4tm#8vM92NH6(N9XNxrM#54RC3$W>;~DtzyJ z-;8{2d`%~k>3vJ&m#tYmk+oH&X?bL6djs!=8t%ln?aAxi@rD+^mzt~(DSoX5^hx9R z<*wa)H1hpdfByd84bN@9c6)gK^~;|R{QUhJ!|y*BTfNOZH;tBY5u8>OZ(L0FFKpj^ z@8<9wrO`Ktmw!;_DGo7H4C#ZZfo*4Uh-Z9+bKVHv$$qUZaN~P#T)rkXdWU%~r?xG@ z0S3(b+FHJ7(t^aM zknQ^L{|A0?`FeC?$I>RF@tp4R{o5l`t-B*LXBtc7o0-+^uO~#(uO=3x-;z1`&t%{K z3qG!YqXY7PRys%j%Ix~jXutje&Es#ucD|+;@Cly9BWEDJUp@Sqo-ThHeGXYSwOXrp z+`#8m@)r(@$6x$D|IP3JIRP|e`it+pve`c_Qq3$$)pQrAXV+A_!?SYZlF~#coYOxz zx8{E|xe<%yyOq#EEP;wlks9BNltE*=O6^f z8^WL9fxk8d5~WSb5!T526N?Q&DRa!)jMOyo`M~nv*t}#)V|6c0Ey~vyk#t!gkAwDJ1)j-UOi*E)LAARrZ-x`>ChQ4VsJcLr10 z!zaHg@GQi|dXFCr&~IkOAd4bkBu}|`^qe*1Jc&*-3J)HPmG+4VJjL>N!m;BxhA!QSd>7 zMbJZ_kM#QEH6Jq%y(M8M0iO=3QfE=oEW?!-6C20MWZX01t!Yz{(y3xwaFRjFpsx$t&0|%L=#P9i!(@v z>$k_6-K!ry+anjS(?0&PhmWi#k{U7?05XYUC*=s$QqD*@Q*NCXik*|J(hy3~H&v?k zE{f#xMYc>n^iatt8v8I>M*oH(<|kJ<;E9(5m4h!(%Rjb^Q=*}^c#VLm;2t@hOzY9$ zr`vV-lWK+9tcawma>yw;z^yo0-djPNvc%`O>WSo*)Q*S+k& z{RhVZ7{<4a-jOZ6Yk1q_8=?YXV2xon`|JJrG-hs2*XC^p=TNir3_Th_!jy^I1Pddybb@a;>{w#;?C$)tD z5zHsO4GzHllIOfsVoyYKS1-d?m(`wp6>VcZSn8GxXa$G>O*5;rj}{!9k9P6$sODrw z-L1hn!-uzr-J2#aUd&kb?vy0;Xh~gO*s|}_x&FkSJ9r*xKY89b|J4)x-1{54KwB3q zcg^S$n7bNiu*)hoG<5kzEDU5bB~#=9q|gv1&|~72KS+?#jwZGqN9P$+IioSXKb;ah z4CL0I zCAOG#uJz4$;P-N97>fM-V(sXw3cP&Lou)S<-zugX#|3z7vh|u-vQEhxZ>Q1yW;rtD z@DK{!dO58to&{GdpqoasU8mEMvR)gyJCg)qY zVh$PQ?p|^4{6P4s9Xvg(96UKd`?r^>9Cd34kGrkoFI(IvtY39<09tu^igI8xbTOTk z$Th>?y`Lp#0Y64H2fk9kyM&fJnPrbJFdMz(`0xx=c>NV-P|o}H5}bL3b6|ye2Ax1V z4<}!87Edd>K(4@NSrYI9GQ|ZSK#2~85_2hfhpO=JN_uGz+v~4 zMC0anu*lak@T7Prj&o>6GF*=|XYn+-ifAv65_Cw$d4K3SYZ0)E5FA8+@AKoyrdIE% zo3pLG&^fo0BBiHQylw{|I+LOLX%=HbWGx3SslYMt)efzc1;n`Qn|NF_z?E24U=f!W2Os;*< zKe2veW@-B&bN|@vqEfUb-IdQ#9)RvUq@`1pIiw1f&;aLenL^|MM5-;FztB{3Lo<8Q z@mFrZ2MZpM1~^F*KT4D9)@1%`Fk@Hg<|uKNC-YzE{L2+s0}8AWMdq&pq*tEzmd7u| zbrt#|8znR|FRweATXNa5IZK3G#%%i~pUS_dQ?yFHT1Dve%aRS6?L7WAm#!Yi(1ZEF zS{w*owYNrBwMtvq{vx*m(2F0}WbZ4L_N8 z0WULUvh_^hk^^ABbiR=HNvM^C;a|RFEh25vzQOu$O|V7ubYBL zE0GUSLW^4ofC2KeD{%ki5Il95^Js+i36FVKm=U6U&|t~+IGP(WKDz1r{*w$D9)iXw zjvgdN*9F*jJLU}KqwGmB^#5dgv|{M?z%=R+!KVv`N9IUT$ij#V&nlQPW>(%^Sl zVa;QvPor&5_*rLI&tqut$sp;b)9@dx6BwLpU}C)#x}GHX6dmSm!QT+ZlMrV12{D)Z z&>6$)HQnSR*xAR0jzBx)3K@V|JJ-g+&v&4$aKg*mcWhB~F)y(JdKpr79a&*&ThxzE z20Z2v4NW(Sri)B~Ola4c4e9;#xj5rougc3@6!aDJ0%kMlo3rTa(QeV*M}{W{FFXKM z{@bit6OB6RzXp2NDwquSVU`?#65R;L!Fie9biIGx!ubt5mC_EXNjzu;yceuRsWjLXxgd4=8cR{;UCs=d5cg>SuNV1{HF^%R z**bpDyh0pWPq)^ixtaBm@%EGx*q z3^+`#aDSrExrg83W}tX<4czZt$floyQ+=Ox;Lk?r_8T3XMguU<*8=^2;!6XgLJy$$ z(%O>b()x<*l1Q|6>E46sOK<$*>ZPB&`Tn2i?6E&r8a#jb=G9w&@ydHwzq6_|zS2J_ z`rGgP=*_<)bM5CNWR!h6F!f8W)5ltO?gpIW6{`H+d+)}>_il}?T;V)*?fUKho41Bn zM%J}~75XPtwf)CN=1Cl>wP5G?S%OTvgq4}v5J)A2UWah5nhG`Sy?h*24$Wpwg*c+dr$51zvDROG&!+$l}UsZV#=<#isDC+LzTYZtB(V z-x{S`F&^r`+mK6KV7;&MT(#&?Y138SqN}CBwXKrHl;2^{l;~|4xgLWaYks=Wtil;r znEkV|U0VWPiZe_k8_XT#(G`>LkjvtmMaNXi(r z(e8o!ag)*P-g3sBn?}C_eT$20XI$GdYBscP{iZo&;5jkOE6rNYraNORYUR7v2UQy? zGjM4;ObM84QE9N^zx09+2Gy2G5G`h4Q}1!E_& z^taRO*~@eSuAm=Z;W#<+LBEK|4CS30k7hr6@5a5)9!;+gRL_1lUpfEn0%x5GGW|yb zsr(QF(A`nd)<-{i>&7)_C_8lg^jG8L;SYd|-`r5!J``*Hzr^7C{kJY(|IZ?Y<1fke z`%5x-zcaM3_1gNb?-ykK|MczaeLuc8vGV53hUW5|-1N!xhT+q(6%Dn3x(D|rqz`Wo zFAOb6b|#mk+Hro@2;9=(ARUMktLposi>ilsZU%;yRKvH%SI3tmyR%BUdO<2yE^^^k zp*I4Y9O&aG~*;4+sJZmy7OJj*Lv-giH|>7QQN1PCsk_z*QNNYuS$h5m$W zcryI+zh<5PE!nldV{ZFz+?R_{O_;mtbK0w<Nsid0cQtvM8iq6u@UH2$2m&$SN7h`)RNe zdOVL3zHBeT&-3dYUMQ^-{Ezz~ex?_!(9<~n%3tc9xpK8bv&J6Q;`!Hu1DVN1Fd3au z@<_h%;=#8lHEtc+4-*FuitdVqSWG zadij0Nhz9~mr4gY46dl%K^>e2XWc4%eG4$Atwyj6rng7tJbZui04-jRGx;8x`aSr- z{lfn99{6<)oS*%)jsDa&Wsh5C!jo87m`k1{J6}8x z;)cQc{{&CM2^u>gt9&m}KigyGXD-QA;e~|FmVU4%XSo>je<_L2IKJ(OCF0G~G~U9L zA1#k1l8>_6|G7KUilZfnkPk|3TNX`hIRfq! zW!_H48fR&u+sN)YiOG$A&$P@0_42q-J^8AJf4#!YN+w^e#MvCJeFco8g+HQ0$6htf zJfFf}LH0!~N}nbe7QglAx{0$wO&7}8UhD+qHx`HVT% z?Hv0bo{=(|&b_e2=ygS4zehIkjpc3URWhBgaPM8)bm!im6>YwT2l!Rd zg6yaBqRpSr&CA|~@4Ni@qnYcoE6o2Q<@gNGKUyH!=+ugCb;lDlC)(tvcWTV;brl_e z?o6*s_D4%*3gZW;HniS6{hWm7r(58IB`~&f(-CX6@Ko@;<>A=!f=0T8W~e~#2K^4@ zJeU-`XeQ76DCGR*xp(OKs}{M}gkC@}>q?OsD98MkBbz3N&b*KYhsAeIW=Jl>oK2o% zJqstA7Ungw`_SKY5_GqQ$(Mlo+P7_J+}l6@o)(0QkDa{uV+2gxtHoEIz;~mh>zkR=4;K|8lbzYW0aj4)v7X`guh9Qj zCHF4xVV3m>-T~%nA2YcZ--j1`(96H^5$YiH1_lI=9nUzr_-YtUx{wDE;XRP4htD@w z5iHR1)$6g}iON2xTF=AkNRBI}nU7CS(Y7W2tf{O7}6H zDm~%(45Dq0fMq11FzHHY#hI}M+#t-J2&ca%U>;tc0cP+#y^}{on^$!33_A*2$|5mE z@iOd@iPB6Hg`Q>K&(l|$hu6>UfgQwVeWCb07gMHKq7Q(T)?NHew zRuj1aV6t}f%hnxp$j%z+;kXwBQxn#;5ZYdR`thK_oegb~X~dcvW&cUCW~2mtlD3W75U5{K@5OxBnx# zXn#4hDF53vmHmxmq5F>B;rq#(AAI`VJ0nX!qbKg2{^|8!())Dz{?g=cg#9+1V;D;$0KyK=Vo zq`+35l@U&xC66ZEI)Q&rW>c->BIoS*yPrM`dt=2K^HjUkI)wY`Rf(O+NAd?e_D>_^ zv>8ACd{lOOTCO(5>Q=g(jJKzi4*13F#h2gI$XqMoJEZ^laKC%}?9dWUw>5xq;5iL4 z^~sHGSEA{5rPR5of$vs0=hmW)<7WNvN&U%-Usb@l^E&|7_*n3`p$BW6<0)*EcxFon z7cVNz2RXzu>0J9sT1)0bq;Ue}2cMQG#^|w$u}26zLrlmQ_GTNAc&S4tWZq}zXxe-H zjZ3Ms?~E@pkUK*T8T$%*O%VTcfHlTP_KpvczY}c9TCN{k@Vx5g6&5QxVD6<{uzc`E zl#H$bMer_$8{^0K24r{oXOw7+4Khnet2Bpo_F#cqvu)ZXql$y2njSwb=R~TwDlT$) zT}zt=2VPZ=#OU{;TMnYbj9U}!s2{BYc~c&qD?eILFCInfj96=y8oXxo0EVS4lWuv_ zOvP0bc=59|r@K54-_IVt>I!G& z;cQc}x^0mTFKU&ZWQRwu!P~3bvyBrd%RK`xPC=l~3f|mVQ>-7#kEsh@7jM-Mo|Pl@%9mbV;zee;R|?vG)ahDGRgM3WJ9_B{>PthNF|Cb>6(0ZQ@m~3l4Po7~Tw!NhOS!TclG*?;qA>wln={ag8t=~w8Je@|ZcAL#b^4IbAQ z_0t#63)SA~j@jK@606D_W~<=LxrzA=pGd5;4UEkh-nn|;g4V&eu&%P->=)^#Wll9( zciEkx`Hi7jiA7uuz;de|fZ+du5F&};%e>_`(Uu}Q&+kZNK z{N?YC_RpWU>7wHXYBrCbeRJ48Jnh=~<-mnap4&P)#C)z!_idr)B^*Etud0x!j8Z=T z4W-$;Oo!fDy3}17CR^gIkM2$`Y`NF)6Uy$5iFU->HZMAR&in^RZJrmw+?h9v`0RQq zSEh?uw-aY>#$Ni2Ua`C%%@4A-b9w-pg0IGf77|TB(}AWB-5XU$g*Nt$iq+!JnwVpd zL+|ewsXveMm==V2_krY9B}A%9lC$`YV?!^ zZ)xv2y2-3p?eviGqqj7}mYLl<-jS}#^cX8ag_;#PU zr%p#j72RzsnC&$Lvnp!G~0MO zn`)d-49_kEdZHo21@ugmmrOinJo0{8cWhkaA8 zpaFRO;iJj7?+uHtj?c;NPtPgFCKk6uGmD$j0fbeH+fKjAnG$%n8a#PZ>5R2?3`Xu$ z_kfv?uCK;E`Bpv7HC?`^%iOx>PPaSgG%IxODRkgba5bUl4^RJoIwtVBXw2b#)0`LK_?yD}$)Hb$i_Flq zeUMAl_p?IQ7T=Qq=Z&HNk22RsT=61Z0?81VMwHCo7&0AxZWHVq48WJhx7eh*`dQGP zD7)3JnB9OUl&)?M8H#T3aWAug7yW=8-H1yUNV`YZHFRaBgYdrzf;i~)YSaJ6xx0QS zaCCylKTf9%8QCTB&{FgaWY7<^WAOiRboMXvlIIwjiNqi$xR+;!ti(#)Dja$hohZ3| zb@cDGBIo!5pACFRoD76U0_|yVYIWN^xvKH4s@)OJF=!i`S$DQcmO?wv`cZ)UD>Ji} z;oOSMGvxR;>5i=6>nK;~xvrQvPXX~XIs13f8tju}a>812;wR(?y}?=U@z>|A(=Sd6 zdyfxdrNg!-U8xCrU1p~uf|`O8{0-b*$k)noE#Y1&DKs*vK)RlZl83_U&*4=_lO2R6 z;-t)cEo2pz;qLI3cS_t(;69x)XU`IxEnc5E_(nMomR*2*E$RFzGQ1ObAWq9@+UcDt zux574LAq$c0rKQ^k!O+3&}Ej+cP{80JBZ+2@^k(VGq)yyz|j471uQZT@1G~9G0*kP zg7IX?hJe%U3ZE01F^`4wAn~uKNR=+4d_XnuoMhQf^LIMu-aOA@9{EuZWH4hx_*4Q{S+PFM>BYf+~Qk!g0JJld~aTE zdRHVjzu7k;dUbAY^~WmApg#-v@Vx=08Qx_i%JpIySwyy*R(RBO94s z(@v9pzUwdN;pJ;Q-*q%UO>zs!|1Y%&zG|Y`Y2jsUFdNmtn;PII4M7(`cN!T0oi=`l zI)9J%zgA(^FTrP$zt}`y8%fCk_~_@M>#<(o`sK-i17jh(p|D>DUo3z(|PW6wbHzXh5pP<-4 z%-C3V=G*5%N0d&vSQTx02QTU#TKod|Ts4f|TFBiGGlK?=u|~up`28c~_9ZKvuM2SZ zwIJ9YSvh3-F}tDT^ssN^8OR88w1-*J%gje6K%E}b0vUouukdGjciIQv={KXH1s@3G zTZr&|VX(3YYb71L1+?p#82DrgJz$Fb49w6q`14j$z`2>TW6XW{1=0d<9|1$73!uil zU*=pck7X zGJt&}!QfjXB875BZZW%ad%bB58X{Y z$=aHrBO->LDb5e$S!`zUVheeTS@16YH#r2nH!vCeNfp+ma**dF03YNP`hN+0<4n+U z^8B#&WgX;<(;HYq>zs42j@SjR7~h1Qz1YUqYeggOG%!1m0}>GY*Wk-O-b)BhFS6^3 zlV@^-H=-f@u7r@k!5W<=PZCeg9(w$IR+#a@0t?{Ke_1fwmGXJ7Y?(YF&an%4iDycU!o&68Qr%lHa1& z;0>uU^g~^+@}Ea%*Zy>{e-hpQ(xtiC^-GfztCt><^@rZ~Pd6poe>y#}^zWyqm;U{u z!O1`QLb`y)P`~!>{1! zOCk6%=#|qvnRa{*wS2VD#YfgH?c%%Q86}_jkX!|HSNR5e5qhoGSyl`~_F3O(Xm)ig z%K@|$%9ab%jpj@3i_Gcs-v_le@9x_-`{Xin+<@QBrFKM}tNKvL5UuB#javuc2D`RE zMW!}3(d!+7AMKOj*CYFiE|X$o#}%oO*Gyh;p`qtS=3Kpp=bqf-P=ke9$Tz8ZzzXQ{ z>Q;`w+KV+#TX0it)>T&F-MB7+2BnY z=GQgq`%@cQa0V|LfJm~`44QmNAo~lKBURS?^2*)yDbePRHJrs$@P*qFN?R@NIGyoz zht`)elf?&}&~&gjkvklB?3jHn{DsW@aW5RdPic$bd#bYz9LF{dUccHJBNN*waR07N zd(x@$7Hu0^tWAZM-4@NG(M7HQewORx}v+V-kA!3?koB zJLCn(R+Q!qxgj8C{av40+uR5x@^UzI>8#SJx%l-zB8%AP*@^%uG^}_+Ep*I5Rp(`R z16Sxhnk6&6Z)02g?hk(Y-p`ih=Ih;)=l56T+UxIMeRO?dd285`Iap)=6_dlXjILub z*E*PI&K*X_^8noP4*rK5KmG7FxB1GWZHs%%m#s~bPeSijv|r;&^w*DHJm6uzdS^uR z-p{T*e3zWWk2+^xUml&`{E=Mi{;O5B^Dl0Wtp3H_(WU=#dvxW8)aYJD8*vp6;EnUI zet(l()@!VhACHL?m*+QjK0uT4;rNpB%9KR+>EN9F#=Kbb`GQP$XJD4N?g{B#d;<6G z&B*TEot8ctTUGb>&&dbJ#oAH6Z&D`Po!MAb&aW?S4wua;Qn{F z}OwzH@8l%ecpG97whX(?c^)=zcY!()cW*RU+%NJLy3C>)1gm3yYKtt=6%0dI3?w+ng=y^oJJW<>Pqc_&K;#dv|zZNwQ<|ZuQQd00+br;cQ!3?wl^a{?66W zD~}czm$sY=rOv;7qklmUSA@*}Ne&(^$N4!&-%|My?6P+9E#A@Nl!ZKEd#DuFa7NFx zFQV;>-_YON1d2W4%usQ&Z@AbGocPpiCQsa!CTq`=XxPdJU)!3Ge*-LixKlm)M!X>1 zo&50T@c5$AxgsWm0Ph-|qF+LJ9Ys^s1EFgyd+_+V@LuZXXtSPdoww;SXr~(ot%Jue z+U4FEdfrx!yn$S*(8|LPq_zxx=9)+}l&cFKCUU`QWct)noMBRehAGo|Rw6H`L|$MP zZ$!$;{FQG#iA4$rc*KoIiKTWp?K7bR-d-H~O*%Eso7!ymxT-E))2 zV1J0|ihGwx_fz)giVK~CRb>rX!O@%qmU<7*zjUq14L1J2o3pAnUF~`CzuGo-+$Qoe z?3}M`O1;mrYY*AgmXH(goMUCjX_M@Fe1v9Ws?SFjWQG`ilL9;;o#2gPvVgA-Ftdaw zg5LX@(&R6(=GDs0<6b1+?ZE}K$xG~V?{@j~mJ87cSj_?bt_`wYYh=CFf~it9*FCRD z%<&vE51AB|f(FidZcUrw+?Nk$JM>myG{j#Co|n*CLNWM-xP>k%bQ}pXmI7NwpA`=S z@3Z7H`;spDc+hm6_&E1+#!1*tzxb^kEr2k~5^)%pC^YuvjV<#E{by408Q0M-u5I-;>e;Q$H~=o&@~jpK=MrZX zqZ11X(ZZTqc7J$9x4h*Mw5vH4;xcB*27P~If93b^iS-PCUi5yEwO`$5PVV8gCKJ5X z;rr_3@t4S1gzGEiH(4;r($A2wjMleQF-2-ZhaYU~)W|0Q*V+WiqE_e-3LY4gs z=73WSH%IhU93fjiAZw19r6_2UTl7S?$j+}aR~M7@Q~1Sb6#g~}2bF?5N(xzA8yc&h zHJ;v^T9Sk(%1Fc?9EvnF#z3F!@;J;kn{*&W!d=jFUluXx}6dZ3|mA+p^l@Bu|VCta^+!D30HdZs~Y}Fip11XL&N}GD+@3I$_`jI|1?$ zJ@D2Z@DAbO^sVo@oKsSRV{l0ou*PdyI`zurx7M?r(?*0We_lf+)jlmVl9P+o%z%+F z|JMaSCVXWj2v!p$P#0Z9E)K?!A{U)p>_QfuLq3Lf-b0=ypGQ%FLDm{8RPmwKxh7R^ zn;M^E4Vp~Ihv;(FJAlYJp|kZAZ_WvscW0by&%2MmITfBs=HHexQ>~{Or&ZPwJm_S_ z`}0{K%^aD_d2j}_wedLDB|)z$8HQE*iSTNK^V!PL7lO|}5AITcD=pKphv&Bo?@#7j ztOU=TM;BGhqjfBxPX-U@!Q)j*jIia#>DP7og=)-*^cD(T^re?QhG>Qb?LRr<#cW~k zB2O0<_)k&L^ag>qqFkedIh0G2%bMp*^|CL4&w`AW<2-v#o?glf|AwvoX*Sn9Ome*w zX>!>ry^91nhp}w;85#BsKlre(_w3icy|b^}M^C;bBjz{Agb(NhIHbF|qsVtp$Y&_SXR64_RUIfRt}y%%C?X0(Bb#)<=f*w`uQ!WMZ1`4=AkY_W*Uc!Gn zJ}@L^|E!zyj)x@=4?s=G{Ub}T?Bltm1EAp}f6>QzGvEe4fO{t+rV8l&|B>{b-*M*W zndW$AY}t}Emd6^~BahXxlDpNCTHTa7H_2vB00EEyN#vXhKozQhDxe}N=bUrSRVZYT zVCtl3@7S})b9VRahyAwS_FvfR<$T}~)$9g=s<+~5|$V^|w7g-@QTnTZ`gc+YjM=S-oR)h4M3f~j6e~Dj}5c6}0zni}LlF-ow zXQCD+`!BHm$OlwI=uTm>G5ozn*o0*|4pJ6oQxp4fBkNGr(1b{Qy?<(Ta$PGqe`jzD zT^BX?jINLt_q8TjI)RtImnHuITceTTXCm*^Oj+;;;MpMCvWMmgJH?rb&}|*X7mXhS zZV37pIf682pA`8f`cvC+K7&!14Pnj*Eb=1o{1RB!n%wi+PG)#3{ylmCDt7XUWdHF7 zcym_tAuC#=1&@anJ;jW7-hvKd=RV-zOyT0S_HgZa@g>3ps74a?$8me8z;n166YgDT z!*uWE_v=3dtqq3*isaBBaTh=X0R6n_S(f>D3{(te`O---;yPkphKjMDy$D$?i*QUmo{$yc#^-l*MO@EC7^grS3 z`{$3Aw!XWlw7-E5;!Wn0cizIN;WFW0o5kJP^0#jZ)&r;`fD^;xC&4l_d6 z$kOJu>ksBH-5X!Obm{Kc<+sn@xdFqc|Hgxvxfz*JrSs%mbVfznPri)nY+hJ3nFL<4 zFzhq<4X_%c4fX`5MLg_9GLbNuVYLVxAuEW9lP|M)!vhy@54y${#HbAZ-_JGGh zmD#cL^Y^Z9jBl9LbnaR3tyEo2efkks~|g zzP5{&)u1n%!s>7p{|QX3{Wd%GeQ$2BjXufjU#W9$t!N3lpxN$sp8e)1yLZ;2uNiIN zpsI%-xU6wynF;b-?`h7HG0vjCX$rjXry$RrhNL>D2Zk|{_Tw}jHW-~Xyrui-dsVLy z9whg35PTiY?V+Xh-qA%Rzju&Z@VAbh;kk{Qm~r$oG8pWsJa1o;>h)3$*?xHAbS#D0!TIpT*x9exIYzq`X1~An z_=}L)mvo5aJ0`lGU9h0NMt9Q1x!1dnJKlG1KAQdM?ZMgC z#~0*3@pd`e>ph4{HFxJ9qxxjO5c><4afiCZ#tPH!a=FC3i9Y-R@tIcTb9Sechv? zd%bjeliL|tU6GH87G#s+wXIp%x^i)GPO{M5J0x0L+SpiMkt=6s*Hp99E1KmcndbhZ zVbwdAuWMdE_p!PE;k55&_dx98jh-TV`1Xz7iO$I4=Ba4Q^jxfRJQ<#sbk3c>RDAE_ z>xKTI*=ES9U03&y&&%k8SIo=I+6OZ-li>f7Xq?u* zv3VmH43FAf%5XNJTPOzuztvV6t#zf@Rb^-0+I#%$kbXjTODB&{UjFXv`LF-!xOVWQ z8O_%V`MtBu{>$I9+wGXT?@h~b!|E%CpE)v>#|FG+n)>lerQM%gTasy)`^H3TTvyUd zcSjX#WDrW7=k#fpn4I(FJF*5rw_H!P3 z&fI80PQ5efOji!QrPi^_M*pijvkMBY&B)i`1l2MmYx|qy3(}bnKkXi&S9OB&)TxiI z_08RRG^c=B=&9_zh$pMNG3Nh7G~dp^p3mT|%#l^8@pCrP&C^;q*DS@#M}^wyZ|T3P zM1?+&p_w(?CpRD1(as~agR@KlhB(jLFrV*4e(#yE|H{xQnf0dj((E83YZ`x;`%f&I zr+X|_$GdzIVrGJA*6`!C26uJnhUcdrU)tQH&s|e#pBZ)dm(dYyW^V!8e%pqD)y{c@ zxO&6J+1#YFMfHnvgV7etdrm(8gWuvxvD?o&@d2~@I>1+%x6}7yn1%Vs{bvX60=K-X zX=-WHMBku0T08NQ;exT0hMANNZ|MCYA9EXAjg-L^&p6Hm){q0L z?CYvhy}t@`w-qb2_7O-9%B_JIAaovC$@sgZ<({?8Vowo{Kn35j!sX$M=YypkvUXb za>pCfLo=HXrq^}`G>+8Z{JLS#70QgjlpIw>k*jMx;h4FJ|Yh?B50i@7?!!)zwF1x-qd%re+OctPyFQDFFCatjd$Zzt% zMGMHRaj<5d&vG`%Nc7%3+4vf}%Nm{D!gIZh*Oa-uj0YfF=KNOW94j!y@LJ^a%-bAB z>v299e$I$C-Ydl~FWeSi=o(egaboM4SPPLeD3I%Dk_Bj^5$!Q+oECOpJf^#ApMCEx zqe~}HIN-rr=lf4q9I1LO)_7dWwx5y<-%aD?rNb`|&pJi_Uz2`9k56d}2tNCu%AE}2 z{UKi(iLe8V!}-Gln!(6YO0bv0=g<5L3(%R|O?&fuNziEYY(|*(bL2%E0?V6OKjX)f zj=#9fE)E8;C&3;d9^||qh24*rw-n%|qHi$d;pgxUMxW1x(G6mm_LI24Aq=cmAOo-$C0iQaA~(TvJOR%w8!8M{3{VX&PBVAp$jau)i|4pbvdlbi z|FiG}8qAvXf#G||?mdT9Un_AQD8q^?^Yx1H(ta8L6P|@kp4p%XXSK}zmG7mQgZ-T6 z-k5g9@?rYCLPSsm<~aRES-c>J`P%;TLbSA>kK(za+bSpc65u%|EN~R@A*Sd@PthHN z&$vmSax0eSo({eOkMy1|T55Xf$O-H{{oFzR3A<`jUp#oC?>zlV%}XTD?mm&CE3BYJ z%&`}p5NllzXC(Sp&wj4Qe)0i*=oo$IRQH*a@4&hGYUbr_bx;i*6zPBtjj!iA8X8Q*h)`rGJ8nTGqop3E}z`G+XBAH=o z^m8=yLHsn4T8r7W!F$l)GbhaX)g4c+YVa3p!o32$r0$G2;RF^doSiFVSxXohajZQ<3CBxrAW+wcDFn3OowOoQx|>_7dZ(xy@ozG10nvM zFn()cZ%%HUy}vsf^uuV}afJftQ|N1@5d6U)JVF?pZ64ESVKf@Fx2m7rwhtYSnYt=u z{hj#MopfQi;KAVOX?S_~lkdfk>(8MDWIf(wOSp$I_lD`R%?Dsf;K7Rp1s^m%nJBsj zIsH02!QBWRg9y4ugzqoJIg-3k&d;0~Km!P&0ih4nV2T!l>@0(LN%1ViLTK*fgljMa zIxs+Yxu=!T09p|QCiMF{%(;?_*AhK3Z$>|-N~^5u9hnz#|6h=5y&K{3-qyh6igaW_ zuICKz$BPF~Apwt|mSo0E8epLF^T9_;zUsK-J&MCDga??7p{vHY9^e%;<8*As@ukz# zP^CnykzwDS7V<*Ebb@ zu`@s0c@3;Q@cyc=Iw{dxGJ?jNYCZ{US|Y~FeKRIz9^bHJCkPuP z2|Gc^4B#&;7MTHx?BwahhzT8l0t-Ok{-Gn}^4trvXu?@EAM|g!QUawkOiO`BD0H#l zr;O4eQSkF~;VUWQ5y?8Zo~&@XG&3?YkDRt%X^ZK|w`=HJQK6}Ai`}4+*Bldc#y8rjHi}FA1 z>m6eDpZ}xz+0{Rqo?iWra{!&8m-qqIUH704D9emBXyu=MzqnE+eTNoCeyp?)E-fSRcQxG$DM5JS&MT_1>&$p-!^;Q z>+^E`My$|K z;-{6;b3c7&V0PyIXQ{0RC z1}2t2cui&>o|Ko4PT9Dn3U z`ShO$BDv=E3%3V88km;eV3&EH?Dc@a&{1v;m?+ngMe%Lj#{By3^_az$Fg+;mk{N3@@kA|1k zAB-<5-(Qwl-+eH(@{9K_-}wdm|MwrwD?Yw8w(`l{nYGJ{+r~R$ox7WEO6+_ax9R@t z8WwH!+#FuG_h3@;XkDTn6|c%CM9Z>i(elRp(!6Bu#G~vOH1q9vvX^z zwH1Zx?!e&YKfL$h=7+bsbXTtTI6nUPn&-Wbu7=NDxRbrs^`LP6YG0LET+q%QZ>lYg z2NP@g;f3|&-~Hg{;UE3{Fn_&c4ffU8 zLZgP!JuA_eu5>@N%Cs(+t`VZ(XXzvyV)77)y=T8o!rAxBbY3a|k0R(zA+00sh07=S z60z?e1{#M?LZ>gk0ylp|1}sj;Ma9OfW5M^Uix=9&S)wx+Z}bg6gvHK$KR2SO`-Fd$Ko%z^X;eP9y1PKqG4w* zV8cUdLmM%VixfIK23cQq$Z-2zJH8}{iDSRUk@e6k>f%K*HZ{A^VXfk<|269A( zO=G~JA*TtC*rzc1;WlSNAvp1Ph(e^u-%3GGZN=e-xWkcfHX}jop5k?wuNZr8@n{MLG+zc#B|~#d3JPGO}$?Y@HAg zEVVK`0p*&L3xrkBlu z>Qbn5I>nA}P-_Z2G}vN;^dd~qGdo3|X$T#16c6B-(&Brlgf|Mi=RO{jdm2ZyOQv&O zHn>xtEVKXb>l^uAfB*PvH+n|DfA!9z*RR}saPGm_%BREA>v!?~4vo%k%#P2>B=?3E zbP8uO1nM8}ZMlpt%ekJy>hf_1&l`mq@fQ2GmKGz(wmsIwkBbgaZm@?b$ymzE$;n9p zYSV*2w--L_M4fp*2FtCCUnN&z|3aoXSM%len)K>5$PUz)Uut;IYmDsl!SBHw$Oud@ zdb>(KUTXup1sOX9$*4%Jq#V;Yx~6rbI_`(;T>mT_d|^k#>{^a-4x{7hkPg6Xz!A-dV)WkvUib4WfS)eH z{)^py6@Pb~&s2>JvcUX1!2jM%7^1aQsB(%Yh&{Pq=%>!Y<4y{EH=l{;Dx3i?S|4Y2 z_H^{=TH$%|cfuQN#d3RRa1NsEutILmfgY`oeZ4(mW6xz(+9PK8gXS%Bz__NiqkHG6 zG;jIv75HH91pImWzhKP6Jx80U#5gm?!89hq#WsBaukr@uZL@ar+Pd*Ije;DfymxX% z$r+0k?lES;R*t=F1)Z`;hH|4NwiHvFb6JC=N&^H33gFSB%~!v3|2hp(D!KB>FXow|`Z5RI#}Y4VmiBf*2& zJt%a}j`RD^kFg6J*AJdO{ilEXzn>DOJYdFc;UlPU{wR<`&PNNKJQ)l@r_93shXt79 z@63>Cpc@S?8s69x16k> z)Y$Vh5)E|I@&Sy(YJuZ>0WW?PMqt^(zlXk8hG$dBw9cxqgUf<76hBuMJCUG`#Q1mO zT>s=$pX8XM3Y>LH^a&Q>K^Cm+Q03Mbe$c}tw-tfQhK_iWhQpA;Mib}g7;m3`k>Yjd zuJkx^{PK5Ue2Bir@l$MVWwqQKkSi^I1x8tAuKhyJPIi?u(cFs0H9EMs1sYR7z~_Eo zPGRn$KcYWbI~u8<{cafDqmO&??cKAluHjRE`~2Op9}Z5f{CIe1;q~E><)4jBh|Ud< z&3!OFE4@6q1XpNMd>+J6|2LdAqxRF43D~ELD3x_F!J}H*{%KLd=KY zS`N_4I*~;AD1xTWwUmdGm%|ef^K&mIvtJIePmX5lClNd&0rUbqa257jB_aDkH+`7B zdfJJH+|2=#UwIC-bsyiC4^6_0Zvovpd#>d=EW+(;cFT?)70za%sj;In~&Jcd?5E+qIIUO>yQD*HJ zJJuK;g9!Q&T4as$N1gdU%kI2jWQNs>Rrd9sLDAy)ifWCYRmI<<<+;20U}jxO#@NBm z%npWihFpH+i{$GJUqZ^ z8s1)pdqu{ZYo*Zv=}oDmxGy9_<^6cFb_y50<)_oq&Arg6cV`{Ee(=7MHUoPBv@s{2 ze<#@;;h)1%&RNi8tqjPfm2JC0Ym1T#DB96<9V%Nw=xro!{TW&N65TB=cnYO3k000y zg$Vy$n7*{I-jn6EjYSovAibtlvJAU9m^I{la#?%|@I}huDY3?We{S14Eq6PnrB=_f z#^axqnG&INr$m=t8J(wyW?$rM7uo9G~fPR%{7m=l}v;f~S zEA$W~D7hEBDna}Uespf;|B@3voMp=tGV^{L(IWU&GqNM!;b+t0?a*)&Ad-|-!bnoJ zPM>WDa&-xrlBF$IW^UUOn?gt&H^piXWyV;aHCn%m-hCAY@`sy7?>X4_Zvqm0Gg99B z-uS%q>wUc=e>6Eh_aEkFR{q1t=)%A6?wkCN3yT|HUs;fTb9P$v&6!EjU*72+`S!<` z`(I-j{WG-hpY~2jeoA5A`{-bw3{H#Qe)p4G?}(N5i!j`;%xvnfJ(!Z+7#Lscn%OY+ zU4OXHGcPv`kTV(Myg07&MJH{6*x0Ww^^Ek-ZZ0!(Z$6xsDEemHPxs;`R&0M|N4LI$J#H-s~TTy+w2Rj7{Wnauo}X<6xy<<@cR_e z^9mvK2DlKZn8XkjKJQUqx)Z?z7Jw1#MBB5Yg&RGwyzDlE=r7K9uPv*+TFziviN+z{ zGJ0Xbv^OsGjxXGw5=-HF87=-K@!Glt-<$=5zmlEu#=|AKfdPX|K-wS3HT=vWKKRpa zsn&*nwiu*8A*6Q3yj+VuN2(o(w4UK#%LWvdXi(+NN7=>2V})aQE6J$L7!Gj{^-FYa zAD{0a=Z28LMNt@hUOM354aGfVPCOj-@Cl~^22VbKFW*D2n2&B1_t@&Tbz{fr)w`kr zGV)%cy1r<+?UgDmb~5Jnb&bQiB)7mouEIEIIr+Rgv$e-|y3pvvDcaQTw0UApug42x z;LNFGkF|N@0dROrU<)R=YJSTs9upfx_@l&2oBGu&cgM+d>r}9@Ok~k4fXZ!nzij9v zR&+_7c*`c|-YSEsvIw(nym9>N?h7~Xz5m|D>*vuOZo!_rcIUxV*Ot~XIK8k5a^JtW zWr?pi{DnojHm7*cCb5~0qEUCf_3q^l9*m1VWHtRMy#tqqXVl*jFL$e#dc>i+m>(}~c-ejJG6S(r;*pl+&frYIL12dA# zy`v)PIajWaEpBy5jsEUWAI#kP=>BN;!x`CtXhl7|uqYjypIe_?6>ZI}t!>VJdg;zA zd4KWZj94LA+g8eCD)r*x=JxHrk@eT!|7iVJcW&#%8(S_|VZQe-cgH40$|AX%T0lk!tT+tV7mCU&^&p< z40nu{-{G36*E^4kz;B~nV`2|ymvExgNwBj|uz!idf1}y#vk=@)e<)QB>_7RnA1{)t zdHBM6`0Te{dUnkVYuozq#SQDsy4F1>)_dq0vELb-b%qM9Nc;F@M93Dx`lHvR&ic0# zBAf1KSLNf(7fw_TLNJB>)x8(2(Chf!ih|CiSJ|mVE9`EFHn(T*KA4!aN9$tx4HS_~ zWo=XEUY_4DNXU|Gt;jSc9So7Zv){%Om1DZ78%gGIR(_vn(3sMP&wrDC^7-!~R)5ld z^TCAX?!ba(O>V^|UJujpo$@B=JcA3)y(VUHv;V}$9AOvA+!SM$L{d9Oa{Mw5Uk^bs z;oi1~98z*WI(yu`L#7yJR{+t0OvA2&-JuzOCDLV^9Y~xsTr+U={Hp-nb$C2t4!rMn zbWVppShXw6VKcsUJ?99E%ouW+(`~PSS{13n-hAU(u-bX-)i~0Ybwk*|{KNRRZ-RND zrSooQL2frQiwXWkugR08udv2FC>q)_1^pU(+;5_<57vDE)GaV(fh4wv9vgEozqm~PvW5R1KU``O{P!`H+(WOv zjb3sYGvSBgP0LSi+#YzXuYcluckhk;fWnYB`W{aGviH%#r~SjC?y1G?A))_kdOvCJ932dT` zrMSUfy-GheT=HC*^I8EGc|qWdu}@F%bKv=B9~3FY>E;fz!wIpkrz5ycmNn%cz%+4c2!%$ z%iGeMk7ndc3ZpHviw9`$MUkJq94_y-V9vL(bu^i$>wItc?hgu~d>aN^GQwQ>YEI%C z2s1;&H7GD|rNYdA^p(}vvE`%mJVfzyq&Z9H&{D{Hrwin{%bXQpYd6a51PYwpi_A?G zI@@aQ{C*Q2N{g9zm$zx3XZImJ98aGA=3mapa33&l^XIiX_cgSjY5{gnA=`Xft{lEB zRq*%wGBvyxr5IlPxZrhWXBmWvfnPc)c$y+)5W{p2MaU1u?6E>R-8{~7Nx=T9<+J-Q z%Jf&3V5wEn85+#`O)?O5=D9MnP1&38lsV?11=PxP24W_!SJ>TFm;n-!}qQ(Uj( zc<6_?9}bga9GYG?_HgFEAFb|>GHVR7SM7n5eJ52rxjZx{d%I_1^&cOMF8ye1Wa0Ip z;f0@#jxV1Z9b5SD(U|DU^s=gZbV@ofyQ&*skmwhtmlcw!d6{}bq;;v?`J~dBhK-P8 z&PkQ|J8N+K>Tt*#NPPQ8ggyutsk<2&K(Ty3BkRnY(|=u9<%_X#tE zK8O}<$Ob$Hp-(NJ#ZQ(;11t#Kf1#&Q$WO56<)n$=8#mFT&!_ z2iW(8*-uCCNx-YG$Fhyb@l@@UTum{+bsgYyZe8m?6A)BHZZLc;1tOX29;dMh67@eY$o8wkDs2 z2z~s$o;*QULplUM z1iARtFaCdqvqlO%Ar(U>jaHA7=()P=a4wc^`=4MTp~mm_DL4&p-sSNH;MBK`_zJb*Sr2TLx* zb;9hGgO891%`?#OGpFnkJpBPdYf7bA5+>Pa#L|sZ*P|tkiTIm&cvbIQQ2T;1b2J$* z9+mN7m4GG`0iD4!NfcqD6on1|9Vt@y1pKp%z@y2l@nddTV_D|-9N)LlpFz%rov`{3s_cFRp62hSXG4Oz3^m9p?2S$M3PV5jQ2=67KBYP9wQ5vQV>E_UtS+2<&&-Jb_|E;QKN%TY{Knd%_%CKA7XNZ=bm70;>>B;fJ0ITuF$`yB z{_2P0679QzMB$<*5dMUY`nS6t&Yxo*xyUSdV@YA|A`j5LxUT6LTHF9Hur!h`b(ZqG zXKQewR~@0`;-qMEW_8;($Ng)))I2g2n}-I@mFC9Dm)=cB+%d6Xv94*o+-FjLU%D0G z^`av&&8_-zl+UK0ZanV}d}Yz5!8OMKJiNNYHJ^ri)h;FLPs+v4(`=!A6o82gH=?W= zoRf$@ywtVy@wJCCSeC|ni(7X32z~P#R=R9THI4^+`0kInzn^IR`6DxN>iDOJ?vA3uz14B|Jc#sMZk*E~}h=_^d(rgP|RPQB2ll+d!#z2pJsrM=-)->|jO{)UNpY%rm^y>7g2CSV+LAQ&HbIum$ z0O8NY-D6_OhQX&n520S}zzMh8x@8NR3IC(BVVRDWsUxW18>p?jVwFXnk(g4vSKoN& zgI|5;t#>|o`|{nZJtND#>FU9_bjvt0Few@5cr))!mKNbl&+^=!eEP-j28ldgeC>^M zznEU!dVfJ~{Ag0Fejfn;Mb&_|HZcwtsrFfBL7F?@zq5ps;*2BeQHx#?bs7xJ~`DbDM*6v$B!JdD+CKWP5g1v_Ade`CHS|(<^Im0pwE2wrXQT ztyz(1x3ArLAbI`#dGUXJ`)%dr+XG&5Eakn^&-UnMJg|rIkM}3tRT~!OP#DkUyz?c=dji`9BGdubL{i>N^%!Gmxwv zw;z9XjCZ-S|Kzhqq}WK!ElK=`Prit8mWiP&g|-Z2)eXK#IL%7GbriJ_(OrdvJ^k{3`>c8J@)^~GXYP3R6m9pI zXZca}=*wdmcWoB&S-}4hbf*|g|14R$T(WjhI6V8T2;Utq82(;gJd!T&(e+%6w+@~p zbM>PnT45M(ZlJt>My3yj*}p+9 zR7TERE7$w&uz~$NOu_`PlKIx-q*xz{fntw);nOOO0nYj1DEZ5HB;QWaK@uklMgLLE zzOrpKlP$3@y9w+dZ+Y(-8OAa-Wv4Fu38qPj)|@RLc-UQo(r2yLJPA;V;2`Vh;DKg? zZHQMdW@C;vVQ9C&cj390al`2epx2-gR(r-acUM-NbhGW*;3mA3E~Y$i*)$UgSP zLhEdibIO#)86BRN+xlf{#~?nMN#2J+w2l5?vNZrWxR>|;uG$jl#-nl@QR*52tdHPV zzH#Z+z~A5Q8TlUE-ye;RE&k;0{jqah{nHl*C&b;e%gq0a^0{&N|K0beHH%75kTY6w z2gaAqUu+sEZzl`c=APd&uvh2*w|TBL(HQ6j%d->AHeu~HVW44RE2Fcdnf-R_u*~6x zSI`AAB_Z?AS+By*q)cZFzJj>WC)Q#Q!!KqBa{6%ADr6_i_&U9t?HC?(>P!_`6Z@sU;^;a3d=+MH+AOGCfvFPyY?o#T>8oL6|_)h7tU#(^eYZI z+4bb)x*^7F!q~?O#Xh(|7izjXXcK!pB09W{~u|dd_hM4D8*Sf z#-1!D%+L7QW9%Qpu>W82H90@|*pboySF_QbXyAFLhmYo9j|vX5jii3etkcHtOa7NE zG2VhOJcY1<&O(6;fUh>phcM($RXo%r*Z~Y!* zcQw%^cFEtj$(c9ejgy)u*TfrNP6_#HJ(|DP9jCXh2y3hs!G9V71sB18ibo$=#)nb){x-M9*F>q9OFbSiL?)uSX z@lo%Cb391Y5BIb6!#3xOM!dLJFYP_4qIZ<=@0HL_i=ljzEO;fst}g~yDC$k(l}4A~ z>x9T3(=`;P4=mtU+X6v@FC`Re!+DIS`EPP~l?(J5mihTBXbx3+QtD&@Y8<+_QMW4m z{|c-x;TkR26Xhb;Y?0?iCEt2l4;2pqx)y82{bzKEwhAhH5++z9pYJ?FD}g~0ujY7P z1kM1T|Dz(ACEyOV9C^Q5u1b-@gR+m)HCO ztc!l;&7N5G`1;VS^xRM0z5G-3ski4O`ky>}F!TD@xajAjqs!-}rbHi&PD`!~PT>`t zTpJji-kg{cX_iK&q!NH#s_8YoOYJKrl-^uk>not!l`8mqs^oy`%r*^n_6^u|b*@d} z^WT6MCFFw|{Jzd>(}2&{rklEj*P{Xtq|BcStPc1OjS4=7GMYdEkyq#e%)^v`wNNgQ zb1JYihoc5--Ji>%mGHV&vYgw}Ir0*Pk&%Z=)!~LR}I445?FwAN$f>!_=n(v&=bA~!>&YdA;oz;!`H6hNvgc+ z?&E)j8~}T?H0+R4Fj(k>1pPv|A9$11Fn)!wJ+&W;RUgOMWk&c&`O#CHTlR=iZi(-h z<4vvFm)|Bc&r6e2^BKU>n%B@7A|PFO#zwVE3X>ksq8-MHV?*zDz}0u}po5Z&4skz# zvlsP~-^Cx04|0|W!$oJV&9X!2q~O-jk6a*UpG%`l&>_;u3d~0|(=_+@6ghSxUMaDCSU_*EzHkm zcCR*kM=msHAy4nc7a?>j1kmEibEL^mWCG}@Av{ueHN(Dz4TFb5jW9ll6xve88mho> zE~M~dB>5btU;Oj`6nTa!;0Y00a=ZBu3Nk@JFt6Y;=u%yPLsLWS8o9ry4u$si}qqBKDfAhM`^6|jX_%A=b-TzB6 zXdhqd9sT5!uFzMXha*kPk&AK znpa6~!x*h}oJfcs@{hjRZI65181+S~2a(p3&yzwv1dSyk<_!{9AEEMNI(lN!ScyKW z+F>}7uK1VaCjW%Q6r;;NwWf3D4?q9sDp{dfuYWcI@|IhWVq3NlcJtGriE86A$HH&muq*1~}&`mC{OTT~aQ)b$#nQkf8Qu`77 zhn!Qg!Z{`GCo2du8;@c!&MjN$Wr~_Skr+^#l-5@y#|Tq5Sx)d-4r?4?GEtr|y~A7 zV<=PL5+*~){S8*9m;JkkZV)f`F1P`7JzG2`>^DZ(mIioNdRT&L>9#{I+R)1+O1+FM zh;&6^6Eio9`X*(obi=K$&|%1MrOQ@38hkIZ8xI#(yM|XcJcR>utbXEPPi52kE4C$l z+`@Cr%>BU!12FIyAmDzhVB%yCaK# zeyMNlo1-Glw{P^%|Mm4pQ~#BG{dfDPCEvUKaOwNwBHbIJZTp+!^XsoOYyPBraN(_? zxsCUix9lHY?3w%k=HJD&ZOherV@uZt7v;C5JAtli59X;BT)Vfru6;B+vp!6|e_SS2 z&MYlSr*HO-%`PoU#VgAjn=8w*?fH3`Mnc5?>aB;;pI^Kr`@wr3sQ=5~{|w8~`1mX&xT(d1=7Y=iZvh%Q#$z>3Yu8_H%($DT~iC z$2^wc5bIu%8%?4Oqkafc-{gzgOs;_8X78|$+063E^Pmwrck974Y}QQWcmMt0TG?6${&=Cr-n(`D;;RbJ z#1yQ`bfVlTWE&^Nqi4S>=h*QUTPJB`2CRgiXXy|~Wf~_*dZ!Zf#D^;T&%x{OS!P$2 zKpCgBbpJVbpZu0HNt2zyE*03%Ld^0(`t`!q{j(r5Cz+o-`TsoweRtdND^(}Yf2Vjf zu{3jUVtFxJ@2Du^+sTxV1Qvo8yO(R?O!vOmc zJc?B~%SG<(K_~sS*7a?ZL7}1YfNV3nEH^r13*$+-kaqIsZ9G z3z_8lAkl#84!I^3xuk90`yKQJdK7aGJOoZ9MlR-m_A;puGkX-a9=pG=A77piy~2w| z023x0-!=ylBDpPv$3JgIbAZjC zO>F98;dS0MR-fT`elLJGz^!(qTsHI%coU`#oqNaRqE^ipQ_%&Z3FT_qNVclU(hY!L zNJ(c35!pj^wsNxN45n#ZanHwdttHMvGt6e=JR?UP!SWCV@x)FBfZY-f3`#sk6tg zqYpP<=>ma5lQR##;1<5%dJA@Wi!)o99dSXyA&Rq8h22S+opgm+qRKi3Z$Y)i4zR_w zL9ckMyv0F)eV5Q*nId;A=*iCEg$>2|+e52l45gp;jBMW>T{iYkh+RucM+nA18jetf zJzkyjA6)WmgPD|UL9=d&mdot9@q5>WZnun#0wOhXjuEyYKNl=<_Ew1|`Rr;O4{LZ? z?ecOq^|8a^tX~f?i-aV4PZ;eZj;}PqE{mS7CcRRX1n0&$d+I21d0^A(7rOldoMk<0 z8i#$2EF0R0W6K_O1F#50(1beAe-C%?D9t<==Ov0~I*;jvYoPv)nHyuK|=Kf8GBTd_JjakK$?4>MeA zu&Z(rq0c~%N78R$y6TnWe%G?Goo)@BVx*IJYwb5CdWTRW~fIE>wv(22=z;{*4!SiId zNglsbVCKr8zi~#Pw-NsjeWQNZL3DoQL-@jjusr>g#rR+h`S7W+PfCTEog;F+H;!g0 z^b}_4pTPH9EU|B`aHgrC5tQ)CRPaAk@GO+b80E>?WZ(!fALNVp*{ad{dHDPVmK;TN;XFH=Ec0!a_kww~oq^q#;r+^1 zj$goxeOWko@w*HRghZxs%*Xv{bnp3Zf}OM9(2v#7t!`-m_x-2pIp25kC(fKULRS}yfr$% z`R4tB>7PtYt^Z~0x%E#Tjld5YTDmhlBY7~susyjfGcOY^kWS2QsOL5;F1ah4 zP_oCQM@-1?b00vT^A+m+9-mH*?0==f``F-l(8TNC+!1tuNVSP1*y43;!Od%vlWF3& zu5mA*A29!l_sRXM3In0a>rxW>8SoC|*>%6#nVLh)|DJpX@9L`_O7@?^`#`>?ltDWn z3sBFogU`{QkP$o-^t+S!&WD+m;p64;^;gNrwB5YkHac)L(~=#vF;H?8+s~P!i*)$q z0(j%2+$lv(I?OfFb8`D??3PPtDXS%cOE?99$Tp5WpC&utKi|d#J^MGc?W|KJs9?H z0KY0o`#qKl^dCfV>|M0snmkpFkrd z?7D?tzH~d{$sYt)G;X)apZ4P?!7os-u&Y&XyK@?)H?PJ=rw--zh!zQ`#=4HLr{nwC zLBG-s&&#%Y$Cgz1*R6a#JKi6=5`R6OeDZ%;pV}7mNVP5xd1W6t8~)B%fPF5nTRzTf zMQ6}%l36wmt3S?e9nGsDbcy81I%SZ6(#+vWt{XA}^(fivkQ!~*0SkcaA-&FFddMnH ztuy1m+wrPb0X@M<_o)*N!G-qWK$o+lzu0+(zy-`%xi4B_Q_zc+a-m1k%}}CSHRXmW zOa3sA?;-=UsK$M~5#+${0f>%gqYN)13(vKZLUTzu;GpvPO$L}h@lE(AR(G`b=eCqo zofsuM0ms0M+`C4|n;dBszCu;duLXUZM_2`K6|;Y$jGj?~wOK&tD)7$=%>J)<0Ngus z_@vV46$!c-V(j!IXb&Ow%|Zu^ljot$;K{%=NSOFN`b&b#sBJ{|+d*dlNzl~s^_BP@ z6dHR>&hdCt@Gi5XUcq)SXZA(0a=0IH4|+&8P;u{k)tKV9hU;Fmdc(3+Fub@q0wQ51nA=~g z9X?mFL*^3RWwa}4^{$Az*m`1IH^t55|FDhiIb3`WyxCp<8X0i%`+ht*WL5Ub%$8E2 zOf@mJt`qo437*?RFF+QLOe$90PYZLU)f4eOoLY5H6H@0jfe*Y#pKGF0+kaU^Cy$8e zrQr+~|LR}o^UYHVTN*96%{4v?6{4Sb42w0HCBYdbT12nO zuPe>@EklrVVYA77xdIcX#6G@)O@tnUP7Z!+29|W_;pCE+pD7(F9p^EFX0Rb-bIr#& z`p8pQ7ejO_`=rJ=dSRMMn?onpsHwPnro|U1Sy9>Ndq)L79Y;Fp^d}NVZ#0D%kOq9LysQot;i4`Z?zbq|UBu;5mC- zoTuD6M+Dw+%&gFR^z51q7H`BrMps8(XG@}TtlS@8n!C_7wzQ;hu05LBTzv0x_x!@f zjx?Cfqls|NvG2$XQM1Glx8ezaAyTj)eCp{x zRBAXj9zXv|jW--=CpYIyS03TxzH_O2Xdsk7Sd8VHYn<<4|DB1+?JVkDu}L(Ep>1pE z{*uyun`ryRi8;xy9!xB~bLY{*&#&E^fAh-S;Wsf4{Iq9c{T;5mU;XNG->+^yn)?8D z=7&QI@}GXvHTbXvW&KZ=y9WOZuEu{FS={*6+@}7onBl+OKPvi9 zAKkeB7t>nHy)$fhYOMkp1)BmJzWaX!K2N%!vjf&p8GqUjR zxhwZRxH+`ZgMnYkosRUO#z4Ch<4S{=bbCc7KD<;tRSc zp7HrPIs47Oo*q8?&7LcgEsQNm^8I70g{}wlxt>RJrM{tsIysU9{Ae$~`lo;UqT1R! zld3GIXtqzt1)Wt}htES4R**+K`ydn_yj6^{tKzfaYp!8g`EBn z!(i`&2_+nhojdo(6mP!$iDE^jwl2$5u3Pt~c>YxJk-j{`Fa0FH|MCfF_fwV0b>fZ{ zPHe!$T?BVZyC)sy&ZY%}KU&oO=fC^kkJ+K_^89M~6V=_y{?j%yU)dL_v}Z5_+U~d5v$x%a+{)`z4OW3)w`oh zePhe(Q)GVO2dktShpKOEb!SGRb8gu}L8&ef!8adOTSFnZ3UH81QMiC%ojnRa_XyT^ z#ycxEpu6W>>^^MUMi2A9&jSC)!F|)AFofvf$+;RQU-paH`oHzj`FK;!g_m?z85B2E7i9aw0!VdU3PlEW z%(C1m#qUJNXqe|z%-~C;RK=0wtdius+yWKnf-D`J8zkm7m&_BNY-nF;x4oqI0TUOnj znvo99F0N0{F37|KBg@)Vy+5!MEM+$sJcT_yI&zD1b{ozK{{L)4nEAy!zB(R(CQOJ1 zUPyew={iilI=kJbfq9NIV3U8`P&yOr`vb3-e|Uh&`Pb@#Pk?h=O|0|c&o8x@CtEx# zV2Q`s&$h~(6$GvluVa;d=>+>Vs+I&+dnH%_Hn|uxSlBEiJ(IPq25_@e}=Ki!Zy<1E)pB8z>li5BJIL+|LW5Q0KJZph| zw%sV>4gG_8&f}G!+8L&|J4}|ekU&dMF(=Y()kyMyOC(#z@HmS>{O^AD*?5YpLO$P# zAm+rVO4@VOI9Q z@uD9pYLM)B^zS^;5C_6bv{4;ERF9FUu&g?&eGs}gL(Y4jc>P3zkDUxcwAs- zkYx6cl9!M0e&RDI_=ji3P8hU7G8^pth3tD?;A&@LWZrk5|DHWD`4~7E|0};;$|ITO z$wBN|wqPVR+2c0LohOZGL0~u4 zVfZ(*oD;}hgro4TL+GGBe$TEyEHD(=_s4nd5UgFFKAgBnduu@|0C}<1?^pdQM!Hi2K&yGUK0&wQfSFyU+nExB- zzpe7oXLXn>W%hX`JQPI}9rpOCbAjSPF;JjmGFHjMt;%!8&G8(|mkvKGqOIhS&iNRh z6{?5Ni)UZ`Q{m|4A5z?lVrVXr>d6;=){Dm3O}$*Eu}VF$@+Q6q7~q}F9e+W}d0tG{ z!z%uem0;;mgg(AN#myABjj>3jGmIahA1$mmlyBW85Aea|zVSEi42gd7a9R12YdwQM zx_-XvI9-orDH!;0>{?X{t)dv&n-4pYQ!DXpwdU{zYTHP?p*JMU5bB|qSO~lFn zj?d>MoCq<1tWf!TWcGCO%rXX9WI{0 z)!J*|cc>xnq5YHvZ%~bEw9M|F97+YhNi9nbj^4jyhOdnWFDvYqGDdGE#pelcc|HwG zD=Yl+r&|Kk8y|T&MT8_lzg?7BHi8x*c;@{cbZTBV7w@fMdE2U-Tvh8})d<{p{PzVv zUaJr`h6rZy5ZVP9fA;awauCm$PsR1aj2Pltq}!!Jwty@b8YJIK7_V7`T^D_PFel=T zAo?X;IQ1aDxiDNkw7FJ*m&p%m)Q=a($1F&Hch<{n?SsGXBX8=Z=ULzn;Ax^~kiVOs z%@6m3`%63k|KHE-7eI#y(Ro5gU>#O`mi>6ihd0{CZXI?Z`T`m{{sB4(iaz|iJ~T1B zfDJz!VAug^*Mh=sS=IV%WZkVRaz5;fcA@YbwYr@|9u#S08`Cu~FKatqytbmuy$UUK54VRx7Fp@VqgQ;^N_!5~bK zt&hSa$|k|1CGcCsP4w;s3x~O2elLenQs{HZ(8DM6$;R;mMfrDxj#RoBDn2wNf#vV8 z)A{WPSDidd9KLLa`Je(nJ!a>bKqjE#!Y|-7`b+o&%69Y_JDD$X0VNx=u7m5)#k1AL zd*gzG;35;?;`!j=?-O1_A6_n>A0L1bwi)v|yU|h{{~8)@mhR@N&|MgU?PnbkX%ruH zjjWS3le4Q+{rqaL0qi*)jsHJK@AVz&dEa^7?XE0amSou)Th1O!vPnr4C6S^So4IrD z1{yhM6o5jZa?UyD9N)@SDCE$YO^TB29q-H>U(8xvf&Z8(9vMjdU6~;T3GzbJd#BvepLm~rHm}N4KkiL z;`O~HgF7}3X7a$5-@UtS4qdj#o1c=;_TIYM@@tN+ZE^ zmH%U6dgU84Gm=00^vcLLN5>Ywv%S9aUl!&!{(5YD@t^MBn}6l4cdx$%)^bDW9o~@| zTvzPL#>Y1w%>DYcH$MC|8G9Etw4R%EwT>x`&Y`QLOXK*_xAL`pO(5IQv-g_OS1K_(sj7>cA`2g#9(C7{am5x-HECn%Rj%Pv0qA$ymyDy+?Xwpd`fTK4< zwSzhy(J~nhtoOYVRn-adAY%AcvS^=*(yUhx^ZuMV{C56JU=TnFD7K^w`wxTUinuk71U&!=r@|Vt!qZtf8(1CDf|23L zkgW}j=pYr-D~h=v|MLCe_b-o5e0Y0t?$Yr3!qS#b!n*)OU)L?kEE)t8CQq!Syl{O2 zn@Lhdezpd9L9aDCbqkv+t=0~v5U)5PPu$U5%PylnO6!X1@!(m-{De~HSjQeO1y5a) zsBPm97I$XSowFSt1r>SW$j$RIxPk3z_jHTrc{N$xooO9EpM3G(|L^-472dmW@$PGP z$5(#(*`29Z-nw}I$G^EU_UhQG`seg4{OprE3qKoKlE01?=9lpLzd(-i8obx**;4nH zd*?5H!rt+h?_PfJzyJE;o&W8@+{U*fY2hz*p7>wj>HpS;x2FI2#>D!cPi*M^;=RxB zes6ek@dpbE=RbaUXYrq?rvKsX>CIQkZ+ZPbJw9N#7s!Zs?~{?Ww{I=VFAx|1`JB{p zd2C&CWoAuvOR}LER;Vmva+zULEjP}rt!~d;y*a+HvLchLE=YDZFr9C0sSRs#oAIrS zw^eVv^RZcL^(8J3Pn9N@Wc%gr;g{?+U$f7A&3pX2cxCU!vdVTQ(Kt`(xjgS4Kkbh% zZsn(!HRaiDZ-e~NCL;3#xT@|*~41*>=6-SXYQDA zh&Nvx&mKV zBnv$2r3VWPIoE#p`@C@cBE{L*2bXCYp50JOvZA|oe^PUAd{J*<&Hv&L z{~6%@fTHW^nX47(1|)lXaEUhVK36vlu#SwHcJ-5TH~ela&c zMjsEj8QlQoxR@D)?k|S!IuUZdEaofzA znk;{#O=St%?#;-IOLDUd3?-T%8ze{Wkf>8!)%bnn+xWOXWO~%Rws<3qHWHqLY;{L8 zxS?{eSLf*`Z$vz?BF)iz9=X9|25T@F+*$p$Evk{40;+YHML{;b*6z#L(Hgta1qOI# z!U~foptA>qdRHclKb>r%bi(9LMxB8;*&`A6{DzX8$W)A5h`%9_k{ev;4~3eT6Q_5k zdI+rc5K|AtqE&J&+N?X2HZV6*%t|goZCmfJ8AFvO9aSxK>vg3q(u%`P*1D%Xc;>o9 z?J1ExP{h|*p=(rNZ6yyVj$XA@LBB5MjhFXMe_yl*3gk*RM4gkL^M{MU{t_03OKNB2qjAlg}f1ua% zpJu=iZw<}<_`^&0U%NB5^8WO^?CRL`#_;6a<}95+8$)CC|Eb(!cWw!9TaB#7I%k|V zyi5!3?u#6~1?`1x6t1EX7>rG~IyY<_Qse*yMXvZ>!jaje3|5nk1Rz2B-AA<4Xu z$g~g8#L|(AZWygV5Q()%=}y?B_L!Y(OU(xs+WIIvP)67LG{VHQ_9qoGy3wPU} zuD8%Oz|S`YyyO)y&pcc$+1})P=etRCwf?zH4c(U62-hYF29$#L&fu|S{y%GUAOCyP zN@ts$tbH+K3*SE(0{H^o+yeQd1(`Ki0p6*@%Zs=}BVIcq|Di|rW3f*50>8J_;ym6; zSNomz(UTsYs}7iHlYY<&X9mK6OKG~Dz!{U#9eV`Z#N#A;UzCo@5L!EOB2#exX?oUM z3GkT&oL?NCGAZgbwEjfSovESCKO)QTtWGwCc%CogD=LAxz(LolU{Fo_7(uJT zBVWNo0q!K7~NNwnW0Wz8{YLn9iFBJzh6x?4h66rG54YZ4pI)% zF@_JYnnFv4$D%^6Y6bqe#JN!9uk+*tkYT$UXHH_q%e!=R(SVN{(5MqVj>IP0))acD z9K$Nx#&B^9&xVxywiT)Eud^2~qQ#%j_a4r0h8*E@-=S0BGWpE!UKv_?L!uAl<>b^1=A3 zerQhaF-7YcxhqSqc|p|wH<=6D%uVq5@cU?XL@f|=aR)6G-v7GD_3zRT(Ic;T7k9_JOE4$1|_sS*_E(*o;zTKqmmb0Qdt$-9Ng0JOMep5>Dc1Jji+A%((anpGSM6|b8+{(;*C6K~u#I$Z z#~caj-8oT15tG^DaaXiP9`b1pZDWdV0y+YUcwX8C^b-ZJlpNW_xlHqf^|h1oXW9uc zpcvq z4#u*R3^)h)jT`LA51;8rGvJ<++N@I&h{#+w#5x(`UPcp@1N0T>xi@&-xz4l)(4{iSa#hbbnohxkfXY)HoUm2}`!@y>R)({*Z-(c+! z=L-uJMJJ$>=iSLO z}{2M$E#pw)6RI|{<}z`_|CiiEoS!&whiBzdsruU;gIR+f#osHM9D? zjm3?>nwePo+xz#Xet753?9bl+`1U(f8@d}5UX1&bjdA>ccQ^xn^!CTsKf-HuCtK@I zwswyuZjQ|l-IT_V1&^W+hdu5X=o?HOf=)fSa4Xrvq5B(6^@I|k`xNMwa2yuBnduU@@3H$nH=$i2yx@#`aV zQxg*H8oYrPKGwLVw5qlYPK`fa(5o#W*#}pLR(|%*XT;oFbqR9*m!(Rz#_2bcG2&R- zF_JCkrZW1#!}YXrzb*JXjYhXv$y7I@3)6KEpOYCMVUe$RLbDl_MLKr-}L+{+DWSxG1DEyr*L*Un(ZQeb6`a9ks?dx>7y}``; z_ROaCO>o(FQ{~2ot-Z4g&E1pto4aSfoZYtk-MtmMuYZ4ZP5V#xmvukdRC!)i8@)fHm*eL*=nFu%{b{6p z`01S)>3dUa+6%X5q@UcIlU-UemZ{>dNu zXJ7q$ps@EPv(58*|M*$8d+;b)8JxgD?QzX_cTb*m@%z`J`HFxRy58&`6}{oK9}T-* zX$^>-@kTuD`arVkLyzxQ=$uxt7O&JAi40Ay$HwL)#kFl+o06LWbHibvynDhrd%~II zargMe7uCVz$6i`Px3!*KI@?ap9{ui7Xa6ynK<^|g9PY6Pb?n|GT_KMLXvez2RIN*w z({8+Z)}zn6jc->#D=2V=1P{#R6$Ayaj^*ivDltlCIbTHSE(p+_=Np{8uxlhXQB{!^QnXzI9Foz>@+Ri8Nx` zN7`Ps$jK96NpOa%k@{|q(R4C5t;P{9{ilbang>w3G^ zmhgf>hT+xVDmmAnaU^#m4z`PbPzaFO;9Xa_Jj@qfxEiP06vPi7)#5=^OxW&8z>hS8>n6X4QN_2u zV~xOlC;Z8BmV%YMRO>3pOs*Q)x^&jJ`>Tc^+10iF;P}}-){#DCgdO@uT7I#Y4nZ&H z&!*Czs>_Vw2G^`lhICKI5Fke&fj6olke{B&cN%oaRXFDgY$R7dPe8izF+PYl+v(>xxtyHh;;<=jOcCu&eD+Ywz%(tJFEOn<9c9 zzp4KC;TO8W>0>y-^0FsdoWqwn0cSD_E;WSD?zYXJzOK-@FDeY)PdAk2kK`KXClnA| z_=*yfhu*?>^@3zbu>yYo>Mc><|Yo*q&k#P>tx!7e;%7tL7<4x@=4 zpB(yrMdwSCL6%4wgIN)qiooOeIV+LtQgh8}zR2Uf+OPzzVl@)SD_>H+Y2_p0DeW#)bG_@+2pRmNvr%8GhKVi3Um1-h|X8D`RynB4^y9eon4<5V#I>47X zyv!D1X4T-#w$Z;ts3iNX_O3p%rk_TQeiKn(;5&?BpFHsqk~; z4CvfZKRNc1bmK_;JR&}kpzjm!LL&+1nB;vEI{}kq_(hHW6k5Uo$4#*ZIAf%(Z5#AfJu;5-yr9^pGvhJ#sS}> zqW0gGsHD;OXHB7EPRj7gd|yV}U-Q!gh~BEqy~FogE#hJ2+?*BpaB!DhxL-T~%+Bnk zb!)sK&{0sK$E+fH@!{0lSz*wo7p7D09JZ2`uE6k8^d^e=61{%#Ln$}|a1@rd;BEGFS4Gf~d;;yn{}zA3cVS>{FVZ7v7a0WMb;&`H-toj#f9MR?2-=dB9Y z7K})!!YRW&wQ6L=3E&_v|C^buN^fD!#Q)6t-xBi);k3Hs)rojXot(-#St9jfebA`& zA2#CE!+N2${}Kwc#HQKbZgN^sMBK$*HvurdPCAW;U&N zCl=)+Gs~Kp$wkH5+=@~@IkRb8;r(}HI(Y5{F*maYmrpiF8Q#Cv4P<*g`f56I3cK<8 zbiq7(@Wgb2RQk+byL1DR?O5rdiQR?g?y+Qa%+V@m^=t#}Op_eVrYq4xQ&F!mI`N!j zi_CjqM$H2KXn8R+4K6>=Je1|x&*8ZuccXxZx|}AHGtIn=_N19%rc3eu;GJ(|$f?RP z+vVWjGOWKz`Zgoz^#jb}9{5!;3&1L~L`4sIC`F$wvmbMQFOFV6%KjbYeTU<1F_R7w zc;OSwbIkRXI9eL!|0+CIFU1@tW^AUIB~ppfAf2x6qbn)Ln7zepK(V(EuRt>?uKCPq zu}HBKhcAi+L=QiEAlHQXy+$8jBZN0L2p%4R3un%+Mj0uS&C{>a<-Lb-uw=AE%&Yhb z$oTLv<5Bn83BY^$c}D!)e=vch550h!K4kmEn#RWa=R#xUCJWz(2P2qlAbYIsyWpao zbP*vH>)XkjG37gFCU7V-0wgoJll1pwmGnr+H_-`h>3sTCeb7J_x|p@?;>_SCZ_Z7Z zHkPzLaTcfWwwZv9?ly4FAp38K?-pmaNhn-tu2(6|*(d|Hk#uvd#PbE(IWY@Y#7yAX zTksBamGayZBa=+jkCWljUX(S1%!DG|xUvTikcZFg;rh6-?Rk-wp#5)>{aZx80d-p4 zCj+(bVJ>xpHF>%3WCoV$Nr_v*kHwws+l#d*AuSh_^uT= z2yq=~;u~nY<4tsN`3Cp80k$J%0|B&@8{kn5{2T%rhblS+);=)Ma4E;WltRZA6Q4J- z0YnT4Jwq7}K+(x_Y{!#r1z({Cp>2WRH1baAl;$YXi?WvfVI`VmMgQz~YPf0ip{-T4 z+jF*9ahPj+ZE4GR0l)COtYH_{bb+_%?|5xZ<$HBoANu=+73FtsTp#|%~cuBoL*RHzOJGD0U9(jNNKmJ!hXZ7koyECCxfJrIs zu^=;lKxPROABL2^d6XbSA+*UiGKe}Z-g9&!WX9&o=&Gu$p=FHgIRYrNzG#Uss6z7M z=z3@sGeqv%etFpH{;^-=~{n&zk9UOpykl5bJlYU2Gja$)s{s z&$W?x$LNM3rSlOaTttlD%I>Yh2Kf8x6jiVZBQ8yr450L}TT)U*ySS zm4TSoV*sy{qqCFN`e)N0T)KJv=Wl;{cW7EN3&*)Uv7%g?SXFP`nvrVYWZgplBo)oH z(DUcBjz}KAR0j=Pr@{Io;N7l~t5QvnL(64NqBBY8-02uz!;q+{Lv#{e+_8q}q>kec z$fCW;$?UP5l!uf&#wwb4vRj%Bce34LP2p$asRIb(9#qKoDe&j`HJT+d?@DQ*9e0Mo zwC!Qz+=f>Bn~V2#qsvNHrE?VI4C8{EvH;>4@&0QTB?{?->D8s{L({Y9;b&ia=koZC z;aTW!*McRGTsC^+YhXY!^q(46l*-t2!vIdBMJK0*=To5Z+CcZP4Mt_A-vP|n5tWtGPOeaxD7<^@BgTPbCj-PEhrHFgc11O_}zM&=)6tOq*ut6FFzV<=NM!^t5R z>ROl`#Cb%9K4B+V*+qlhS#d>kGjOxhNQUooKDtTo?{!bK@R=`Jx)iVMUYeEK-`ml9 zJ}9^PpPItC59fC5pJbbdHy(ZcZ#U3&e17uet9Km1;*VF2p}!$B>CZmCJ@t)G?k{}v z(>v3D@?d`JPsW$E-$LL0?K{((e?BA8et&dv=dUgfFa6`TDf}uvu1#!RU6vYeNjH?Yr4r@6mF3L`vTfDG>XKyq z{g1CrEX{AO(*Loelqpop4A}Q4whX`d=$i4KSHbUl;`vzIZ?-%O81B^g41g6+^u2CM3ZJFLd@?Ogsy}umQxDtMPLfJm|y)vuU z%)Vysoczv~Y@8!?+tcTpyRu8S#}?oD^zI`04~w7Qot{-0eGAt|mlrM$&8$e3X4!_) zD!V$mygoFuDUoSCn_~+*>%8L|3E@CBc=~%s;Lyc2%g&G8Q{(wAbMXuuZAdy9<|A6`G}l2og@HNK(?W?KIC=~waov;PRK zD=p?}0x)fXl2fJ+c<>DbZDjp%s3r5b8y7o?fzXK}c*<@6LOi2+;Ncun{P0RcP$xJ0 z6hItOv^`2XJXH54*LKJNG;-na2UY^`iXjfbz=g+X=n}ylZaL@vu-fcH`tUeJ?7nF$CiGXCzI6WYP;!x~((n77sR_r}-oG3{I( zo0kqvE$+Xa+Y z1U2|qvc_t49b}prPXW4QI_SC$&ZmOtMF1kGGmE3=?$zPO>8mdn$$Kl1?^l3}%G0e? z5ViW;_7r+-F&{i#?49M{>9fpig+lj)J~F%jWB`PUt&}y2hQHLKN30*yc@t551<8Ep zII8g^{lMt~yqaivYcV1dV=i>ToSpp~56B142f_bBMsmL3q3OR!(m9ay@f>=YS8TI# zn+biNjoB3H`6#4y#eHbmiLl)xXSYU&U@sM|4KhGkWK^|8jXV8c?R05ymWc{#rtTbrqBuZfXUa3@M=JCa58 zLFGLDLa37zGfOht+{=Nha84|y!ps$s@G`->cB8*zlywO}q*1 zO#QG=|3WWB{}bB%HvRG~@z2qh3c2Q9J(6t+iDDfr@UUL$oz^*1)|-cq>ix%GHNd~? zWC#|SYf|6=ak3Hv;3;l$laW6Ukk_1g&_UQm-WtxI?W<>w)b~Y8jkeT3*JN6!J6LJf z`CKc!b}Q&@7vq)v8F!|0pFW`vuaB+2H6hWxwXkh@XMV@=zOR1vk*$3EYy5IQymo!$ zN5c;memXI^{03bB?~l&Nt`J#!e{sVwu`aXX2{cIX0w|^zl$Pl&OIS}=hWHMm8Rgxn zk&!B9G&H*8xpwGM$L}h<%>86G?~0s18Sp(YyWK#pCw6ak$P4a(VRR@mXj>yfn^~{L z-y?%H{}TIQj^jL9!N*HqdXy}7d?a{`^6XP&Jhtg=Y%w2HvW`@Zo{l=$dOZtvpMl>` zqwP+?DdHn9C&5hVr57^nFZA%X=>;f*g^{UI-jCoH2tW~f;qJlWs(xRtkLJ7?gFlYh zBSMTEc)G}oQJw+x--S5OViKY`2@ag({);{G3A%6b$Q4p}S<-0RIHL<`vLbW%R^YVz zDLnXMpN@z_B*}kC`jS1&4-NQF0woHpVZl}(h_3qfC@Zt%FMDMnN9XY{X zMQwwR{TBaFKZ>;y9-=Ca!A*Kn?IiOr z-@8R8X*UIKo)r0Ya`D6XvdA(>N66v`Ghc}MoH*}b0?T{?uTwl;+m8^-OFnWF&41O) z{LeYP<6)jhYg7Q@JM@t;AZnqVcyl~xK3oXr9J~~8=0!Wce|pfHHZVPrKeyt+BS*g^ z`p)g*cLuj|;Mu1~pyc8?qYpjp=2=2xP;_rCgdF$2LdIeZZAgpH+X3@$!QG3`v#14Nk#02L?s>MWb#x(h zx{%48EtGgy^UQczd<|)OXyg2Ml(~uw0P-NwMuHDGWtNDI&us-ev%oVF=_?rZu9Rj) z=~0rmpsjWfwLEKbjW;I+qu#)Sx?1h*gZ*_!*-vgPOLZ64cC7D6l#X{s*7R@9t6Z!YJLlveI9-^}79w*iMD|v)d;X$`4l2EEbVc9}Qnom~$?0mj zb#P8**r0~?x2QIIqI8wepA(B-8=m)1t!tyTqvt~7;AyYaKIz4qr#(ly(^^%z@Ncym zoEJLi5b+od`T$-{f4W-rH8d4yE$6s_MGT`Z?mLGQb>ja^^5++J7P>XGVxJCG_g!SNeA z&R82CG+9!$)~YqtG-tYPaNjz8JtZ}M5T1V_#vWoz;$N%m72(lRYAW1k7mjoMdib>*+h#AMA7#IJlpl%HY&y38k>Wbqv+RXZl+AMCMP_R<-`ZJegkO zvfa+M6ITjYx0AP4U{Bg8fK@Ehg9<2&usFNd1P&+Zg^$5$CeKlCN) zKc`>hpC;C{-+Swm>)*V;u=A(m8}>iFJhJx9TceAAME38W-dfgu_p_me@7-Nc{q^{! z^`C*}ekun18=x+A~*R?b$0(la`zvRp>j66u0BC?eiq_AnwF?L^E>uth){F0&0C{?qf8#> zE_2$$GG92Bt-gRG|9Wu#;y()Qy+80yei@3_UX<#4FItCZU-C{qJ9_%%8J_B+4)6Ge z#$KTBBa7d<5QvvD)JH~_m6m|s7IN7_73<`d$-KH_HIA<;jU$NP?@dW8GQG<)wXUF3 z-k%&_l9#}R`gBhnq2E76m-3|2e~8xL{7GKef3$n{#d*3|J+OMCd*IXb5H$9$kIc6u z8qYx3JwNN5JU;K9esLBp?H+N)J>U#80ITRSi?%7t5y({+XS*6&-wNji`eVx_Vvq|G zf@jDz&9Qc~@72O+!tk*rJiO~}nbB{zf$#F&%*bx+&;Rg0t>jK@POYeB?oLW(7U^A5 zm}Bce8LMQ}qVL={;4!u0fx*7oP-|>{QG%ml-O_t2 z^vK-y^ca~SM{<77Mj?7vKxy`U;9-W#_ZJl4RK_Kh z+aDHAeGg_g)fcYZSIW^4a%OR9>@ly|m#0Um7N&zffaV7Hs2@u=_F`zqL+Bno1Rhwp zwkBh!YM9wDsAO83!k=j9;huHkJIm&P1=m7=oftU6< zo1rOdv@Co{xW%3@c+%l~Ai(=KZEVPD?!7N5H1Qv`=xx9g5U!zpYo=>`lq_HGoqh3j zmux^Gkf@MtT_F26pQ3v(9?8}s{4Wlf%DOW>yH5RvdTV1xzdeWVCYUU_2B%*J&>Z;j zUA_97jCcZO!s|IfdA z`R4d9M`yM!Ow3EKp#8r;F)f*%oY`2v^4>*>9LbJ?{v3C4f6rIg-Srpu&3eyG}k6JfqB%5q&UCE?G5-gq#_m8V!}Z5o;tD7S{7zb)h2sXph;hQzj?}{rYYlsJB4`avk4v zg)@559xs(5)j^q_>>|G}2dA1PMi2u-cNOrc5KjUnYXSONOGgM;6ptG%6X0D=h zAzux{hln~0u2B^pl^n)u6YEC@+qN>F zvz-wJJ@RXNa5;T=-Q7a#XqT*}9_PdkorFz)PJr{vR*4R*k!K>nvDD+W-3IwK_2&Mg zIvH7Y^83qN`)s0hoJzHi$$&3-(QP5K+GiU%f%fXV$wjjBOtanf?Ai9Q9sLz23 zMI_#JIkuZEXS%-5bzMbIvA{era(!~^DtpIgT4(B`RfX&Q*$v|d)>z}C1-0+}HB0=> z+oLP5T)#8-ulGk*el|9~^2Yf1;`{f<)-J*y+!>wT9G_ZHF4F(EH7hZyZVj(l7UZs| zIn}E0+BePLLfei$Ct51z=jwC4}zdT#C==k9_7O^aRUP1(RocrEuy z=-B0)`^R#45)jwKM5nrYm@SRqI$#IOqUM2f%s4@EN4I9mTjt zXqpZK8fV;%9v|)>jeiVW9GIPKb`RMdSl_x1ybfjryYwZe&E(LUz%!7)cEk)NGi$n; zH4uAc&q7WGy2P9XeTj*A-vFLzVjnPU8N-@orCSR}qn(y$HRR11;pKJwOvS3!v+>!z z#i@5bxjXdho1>$zUmu%)`^tpEMu#K&344r~ZPKiV3VUt5A!6U`%h{i^O$%&*4pD*m zzd#;fP5=+6p~YY=&Eqe6nQOr_oJ)gCq`0qfQHMgNOAzl+fcx*nD`(?b0KZ6?&@32u z`3>ZkAT_RNkRfXGty5jJ+Lvz{ysOJf`@Gy1pH*5DQ|Pcph~d2(5l*h6$-J<%W%|vU z#_^WS8hV5NreCJp=RaXx_^aXJxo_kD|JL1m)8Cqy-u%wJk(EE2nUnnG_{jX<+`BhR z9`M}HZrxdW>+QEMe!3#FOtlW4>_Dc-=^EXllUcH9POdXwufdV;oW0Z(4X`G(g!HYzuv`e)AV;Gh56uC(WcRUZ~R;IIhkmtT;;;l#JhrjzD zb-Mg2=;x~(#f8qvlX9XcL~ac)I;Yk(bjNu@W^YXF$01uGU3H?rGC=^W7-Dt!h9;V| zw%ma((VpsJHQsL@J?pEjzOo!p&6@1xkS4~YI=kzie({NWLFq2Si}iL)-qz%%sZECM z08Q?m%9bE6tobBaZaqbd{2XlT33Jh0gJAxxU+3 zS2|nK+TL!aHR!XRaJJa(MvCoDAlq%A@u)b_)75&98hWP5byJ`is_vD=V+U(TmeHa>~KEaFh-K_%Ly>aAo+J*Fp;2e{Dl6_tckO@j;UJPJ^qrT zSZ?l4IQlaPTE6O;Mu~%{7ET zwpO73Gl?z(Jw`DGHy+xyN5fn8WN23A4uK6M@S(@?fyDHPKj^LnGw)Sh7*Hrf=LO4F z>FmR&F%Ui40vtwh8xf!QtfTcQbE}GES7p6%aQV`{*pX&i+BV8oW#*kNy-zLCxOLu0 z(F)gS_aw_ErP--+Me|BD*b46R+Le1VGqbCTB|NfQbog$&LOD6vqlyKoeg_?=LS>K1 zXC+#By4=xZDoxc4-NqA(+tP~<78Q8JEM>TkHI0k)jZO_u%Eo)-;@!7CnBP%usvK&t zXgyg|Iv9F98bGW_+J;?3a8xj0J=pV9V=wFJqwQ`Ia?aFo1AFGj=APSd z9GA&d_>gP=Ci%s$a*p~tr8D~7b*1^c>)PP=(Mf+F&)s()tn2@j4E=A9FDt(HU}5Jk zuTMz+;qLs-tE>fY_aDCa&G?e^)yqSxuM97$UV}S+{no_RTjML53(;Kna=5a8`O5hE zClhm$OM12O=IYYsZOOWv!Avu{C6SJP{MnuHjn(aC$+Ao;-BKyXCf0T9n+Ef>yA$^J zua1F*XPQ<|xH~#0?P+X@6MFNWHjkb?;bQGwygS_-o|O&uj-DQo#@1pT70_{4-}vx) zd2PqkxO#7@{qe1-L%f*J%dNxTCTgAE?>&6}AGPN0zx56t{w`bTeCZ6NpXjWCQ-eFS zcWZ1`_~_cb@}g8*yfd~K`~3D~Xl6|lzBV-LyFRjLLr-McR65=KefyF^uOD4gYd;@a zRDO74LUDa~PIv3UoRz&LsC4Di^9l#=na~FyqDZ-UUf+BA0$lIQ&e8KPp!grR56+J@ zW>@p>l(fN2(Z^Zd8edWfQe$8joc$r4AdkqEJw@Mng4gU&V~Z045$Uil^uq8x_(lbC z_46wVYhG&bmC!I&$;~NpD1p?k01B z%IblhU$;p%#N5sCwS{SkVSU@+mJ>~2N!L%^oTIz~Ss5u|&x0?~0zhx3x7fit=>}VN zqN6jLJP93n=>~N9=BK~=Pd)F$+Up-&nfUC+^xW9u&f4U%3JD4|AK69#j5(w<`C~D< zv*A3`yr(g;7SYTmqO5i~(}Ffzt{G27m_PS3E)o}_QsZpVx7F*=g?ee&eK#Qk*N zgbc1^aArg2crYimlFe;bI%Ax7TTZ2?XkFL1kuBFPEO4exQ^c^Mc4;S;r6w%5fmrz< z%6TAYawY-}e?FkldpY~m!)T6Jr?PM><%r&w@UO}(j)_H?joBSs-H*>G>fR*R-3>NF zuSXV4B8}EDOa5QQA_@vJWLB|0vfc{l%Ie@ARhiBstSjxpmM(x!AlcY42kP0{KIWlv zeO=?JGON`1Idyle*hV|DOK0tXJmkjej=6|=vP6$jk#lh#J#!W^Cc=5rsWFGuBt&vx6 z-J1CO2g5UePw(#!hv5G|x^(XsH-?rzAn*Ii^z6pH`333J)ZEtkoskvIyv*TO`HNY( zGhNpC^EEp51gR<5AbX%gE>2g8F_}JEasU!-rLWL4C)#_CY=0lDb%5TZt0DxKoIv`* z3JtsfP0r46|21?2xh{L}F6XlWc~Ap#00(pl?wVL=o#=?s1mFRvw(Y5AJ5b(hJLwC< zI)JZ_KIL#B2M&=17sv;S{Ve-id=a4?{)7w}{TV!s_$Xw&i5 zO(K(yxw7>LhwCVFQWWky${C03|1-1$`#x|?)11_7l-Uvv{1jg1JfF-K^1;)Em|de> zhZtHM@%QH7wM&KmLo&8^>FH@?;IY$qsp76gl{|oYoP#~On3$ill6TwWw+t(+?JVSmuOz1nWl53uK zk#FLuA3XI{4xW4POSnsWkKN_L6JXMP0{{W@zkn^LvqK*tF+16nM16l@QRTirzN)&} zJ$ioMmuOsDRX9IfRX9EXqx(o@Pro~~p#H_^{LW72ON9^8>*cYqZ>%UN4Z}>zgA2n*TVsUZ%tP z)Pt+b2%kC39v=n+4dGo8djiq+mjifr=>Z-1 z!99H710J#S{=u?BzpN&Tud?gq_xO3Y{a|DvFa-1s-7wgF7=3aC{(%g_U3w7kAZDAy z;hv)tYKHjzesBRld_Ug#nqwP09f_}%duiugcH<-T(Q`zV>A7`j$EkvYQcIm_9d+xP zYg1A!GpCIlMi1TgVxC@<^HB^=5Pd@pO@Etw-AYpBEhN!DrOCQLQ=EyCpAm=C1@CBv zWTuE~Y*l9lTQbgVT1+GBTJyw~(Kai!Iq{B>bzb)I-h06VL@l5jyd6pQz~fC+#cV%# z|1!LP4@hpGJ)POz9@W6@XrE zJ4!0J)(Ya9Wz0yMZ<&EV^h-ak58`tU})Ga}*19B7ITt3E<;yoFCEH*;wv(^^ zyITeKY7Q0s{nIDFqK|XvFw^uF#qpm~-TEXoy{ZV&E13dU2jeS~C10+T=}N)JTT0+b z&*7_M;EUW_HHaEGq}6*Fvb%CtcPz81wWo&XH&Wz%m+a{I@&{k_;LF?G_m-DH@ zbMO>`_k72Ze#oBnh+2(MN`c|n|B8-b-koxPR7Gf7PB$r<`9@-t4Kdo368SDx`_s{ zowm?t0-TyIG!GIfyt5P<2EiEuJl9}nYK__!((gU|!opglleu@%|Is@kI* zUNLCNig$pmrO~?Az~AfSIEcNiHSjkf*Vu2CJ9{+?0@pyMo#K56(=QYxl0UR*2!_dG zrq3f9Mb{afL$JAmxRYyA;F+r6<0!L7)iT0fgJ-eA^H5R%x+z&~c)!XLwJVF?F%OMAFzZ!n?{m*CaPOS4dM3oY?UAb-YsEW;fEf}sGztg6{5ug^(y)831HZIO-nbj|s=zTJY#wBw{3+ht)*n}<} zNp0Omwvn^Y==)pyk0Pu$As5*pc(3q24MKEuc^mu0*Ozv63R`SDUTjF4htH73B^H|(V`Rg%qJ(j*%FQj6CA^1` z`)E<3?%f$(Xsju0&2fpL{@IP;>a7P;wc)9?>bsxbDNe5`s?)3TKDf>?9nNP+x6jCr ze5G@1#b*;MbW2ieKx0p2R@JtO zDUj-As(Z(o>fw|9$6voFBfv&4|G3yadWbh>PY1YqcTU4|+i#36Y;it&w6}Zu=;iIVLaGKca3xC_7DnegK;j~qVvLjX<{>-Lc)R_rRK7G;aW^Ri{~`lS|s z!T@RKDbxl&M=<9HWRH-S!}$0lgty3t-Y^K15e~$Q&MlqShAWCA`U%p;V<%@w`~H)! z4Vm_l3~&3|)%$Y`pWmL@>YqNdu{U^_X-KUdgq856z2oOOIQ=x^QH;*T(2BwtAk&uF zWG_b_Rhn#v=my?-I&-m74A4Qg z78A3+k6m)lY4YZ*R)5hvD>ax@mVg^QToC*>xMT1KSUWR$w0D`q^ z1UG-OqqTpaws_vhL-MZ46?xkg%>Np1#j7`&|L@+N{D+yD)gLV`Y`%Kq*2L?dT%CA# zWMcjD%eMe6{X=il?^L>V`cjW9a%0)fG2CDy&9j|kK8i<$eu9~po*ujbh*CaZkkD(hU0^LLd!tW1|cfp?$G>Ov7K zcZD;28T_DJ?46XD?Q;4+noJ-}z@RM6*=?Of|hj(N5u>J50O#B7CPFh@5Wx$yKT zf)CWlf9jUVUMrAmNGE)`fN8oC7EX$I;o*dfDLzAr-;=?6LBC_J#NsGs`_*3J55;bi zZoU?eT9Y$N6F*l2k7SeI*8-Di!P|C|!d{=V!XC5JAzFw-Foc6B9U*8lcJZ(twhy15 zHcy_NL@T{Ru-$#~&JJ5g&-TgX+pX?C?vWeN0#j)X&cEn%4j;AfEY!P4PwUnGNrfzA zdUBbUf(5$U2VzDfK9G`+JbNEG44xqTgTfkg7CXm8mObzT2;m_{X4t`4qVE2;;%kpomX#N{b zy*J+^(-6L>UKeMiV6MwOsfgKs_%ehd8zNc_veJXuJjcpB>r4*Z5AMIo+*Em)waG=u zq8niLZ_(#iBd@cD)}xkmqdmt*P4`6!Or?=viAurQC*c`m`1M7upL+4<31)rH(_%+w zh0M)XD%&~}d&kifbQA0=QL@0n5Q=29Wm5P&()9CX`B??L7e%t`N@Ty3sERG3#Srsz z@}W$N&sNQ`cjkGX@^pHGS(Nbw^b58Ac@d01$8v~XMM#2o#KAP;L>wi_%8ui=iEvHP z0f1jK^TYqY>e#NExi?RzhCN<=iIPnUFBgH-V+-98pnoPuI zYTK5K%N$vF%bs}665Jy)4Ju*$-(I#|C;P9Jh$ai1y$wy6l?*4=wU)~iF4!I{D-Gl8 zIx{+V^Zg~Yam^64;3;(&$@>ArAj_=n;MuTwQY|9Yh>|RkhnJ{n$Pi zQ_49k$;)dR@6^xVzjo{Md$YIk(A@j<#>9hP{N}U8EmP3QUd7omDf&#rb*993DjD6F zgvqld!a32vBg(CyX)0;uy|)Hn}R(ISeSvnAG^B4@2Uvt|}NfEx5ktyip``CDn(I@BhI)6@0zJo$;4(tGY$m!i?v@C9Lw%qLOK3ZdooSIeGhgWx; zcUP3I>zuPMOV#enbOT+65Bg-)5Pp|y{ie#3_*XiLe{l2W*q@C)SorSj^xB_IPpy9M z=G~d^PfV@-4Ku($j*ZOx=-&P5pWhu`eD9;rZ(rRsxaY9)DDbcv(GXc;!YL3$RgIru z2QBQ@s@l3nP=#b}UA=gB0UM(^re&@&!M8fv2Tud`a1y_1K6U)`cZGZtJjj>F8#hS0 zbA#}*=rJe5BU{Hi=Fj8`^}W0+oJ>zGDU)RUpJctmcV^;5S|D&rY z)q-E&)w>B~?z$VUaIpc41O1#L!}@U(A5RT^y09iQBw+vp9jOo|kEiwnN%Cm;oKnrS z!V-b^7e(t%=eU0s(3i8^XEHE4GR*!l!sqnt^nyI1(1=QoJ@TM@SB!X%jj+g!wa%fY zQt!xa&x^#1O8c(d6t?kw_25HHvZE-IIcOT9ot81yZg4NEQQ%dr@HBPMjo ztY1WL=M2#(pqUi-j^@dMpmyLoGJb^X@Z zq7t5%nSH*Q@2z1!m{E%j&W(w+oh2Y=B4&40INdOCrqyw8V}z>g%6IKsVzpJ8YaUBp ze)G!Q#zQf_G`%L5zz$Vmw$V8Rru>G|$b9K^WjcO3&gpP11j?P$AiAvwzLFC?+RS^U z&9%?e#C{|qg?Yi|%`B+)g0sjbv&6}l@s=->S6wF3x)7~*XHwOJahNu@VXR%nyZa&e z>^IeW-V2UU?iJ&H_%|>Ho?B8{zW46X(*JsQ!}#pD*!)j0-v77h_1$MVPyZC~=a2AN z|9E^u_ixuHH=nzFbMj{+Gn>!PN_D@Ql^TAvEHnNm*?^ZOH%+e&&B*yej= zf-Y~X4A;bB&CShK`E8|advtwWeDCVb@u~GC$qK)`RI;(Xy(Q7?DikLDORs;VyD>6P zKV7ZJ_1>iWZvfl9&74{so7+gg_WsQbbtrB2Xtkd{|3dWo$b2c^JR2~3^$#9=c?4YU zL4}}Cqj!q;zx>6~gC~E6clae8IDWP3)PydV45B-aAQVyTNnzyw-p8m`nH(&!qcSU+NGxzyaUUmRxI3;L&-=dHNIdn{$&hcnEv=z?;bRt?mHqx4}WCetLlJ-zN9bs`Vex zZQf|$Z!W_YDuO*I!2Hhm>CF~xn*xG)g?ka%!XlmBVZYhKGrQ39usb38+cWG~{L&AB z8lb1h(1LZj+Mxs8Lg?6a?fbDCS9@WLJ4QxsKyThbgnO?~sdsUXKL{r3=Yc?B;3dP1 z#pi&ou(*xBdgsaGZ^{1*w7Z_7^zN)=b81PZ_Qq;dfp&b}Xu)R>;5){%CvX50coOk2 z1n9~PvEK~C(vPvz`;GjA=7yst2_HP82WVgHpA?GKm(q|_`TuuN8L(GzyVXrUFzKrpnk=>+E5_T!Y8}XBtLyCEs~m zkChKgc7a4B~cp!2xC$oy({h~8eteZHTiFa&8x@(IHbFdOjR_LG^ z;C-z&;6T;TdCNN{PaXqe5w1%Koh}E&H3dsB#6iKw!Qt6$8P**PH;3n!Ue2ZVMiou%1Ev&;jdrE2R6U8Z5kFU;d`i! zH!ZICEnBE^gVM(j6*~L7e8=B{3G@c+f;WLdy((4h{p#-M?7vP;tv+|}-tzNf6N|qd z8lL?FJ;1L|%!n>8F3ImMt}18em*k?`!}F>+nbD2bn1Y*=lM$R>RXa*@Qvjxa2)}Qp z!`HpL7pwPesotS8Js9we@2Xko%Prxi)ZnY571X3ge+3QT>HN?6SC|R9u=o0y9Qx?T zU07e;9Y>ll%dXu@EGpiZ7*-u9Os1_&>j{s!`bN)^IM%+{fJ6VAjYbm{Sux>*0(g8oak7yl{2ybH?>jNEt zji4)Cg-teK9%y)!mXJ;F&pM;kfzWwGr+78Mc`-yDlX<6*z=xX=X7WhBA+UVV0Qx0% zAH{V0ej#2vNNVXU6qo};%EwOEX{s92aAoJEE%Uvt>8_zi|itb_$Ttr=>?!n_`~z?8L~x~%f)TJ@Vw?C zdSQ*Zm7c$5opW!441~ag;B1_)gJW!?7xWtEU$pAviEVjjOpk(nbe^u=MpWyes>q19&i8GK&(Bp!hzT>wd)D@lP? z7C#5PX#D@M9V?uR{(t{LD2H#S#QwiqhiS~b-f4&EfDMiQ`qV!NLI&q zEKbmfPU*irX%6n+ZybI0FxxslV-`Cp5AL7!?tgI(HtH0n-(mgaiyq8_R;Xv0o+M{f4fZoI%w`~Y;Dr|C9NG5fa# z7Jvg@fV0qlX!8|1dajclvf>JSD{_1kjD}ee@9i47`vv8Gbe!+|J+#;{GOgEP!M{1Y zsC;e95_x5QQ~kT)k=fr&&8+`^a%$~Q^Yh|&h9}l8UmDrCBcsC`|E6eJx+kAs*X_<= z(56EuOs7!Ao9%Nw4!U@tJLH$!c%3`!tUH`#xSsRu`RmO7^)9+VoBck$0HqE)YPviK zVdD8`H&$o2509f(PgYMFoPC*@GG$w+Oy^>)OunSZ^Du`$48MOa&2^cki{@!JJG_uI ze{Y)e8=q+|MP4igAOYrMJ!y|t;+);1_|@oCqo0qxK69+ltrkY}6MX&XyyY;rl?Z;(cL_WpE+1(`SLFKCAZrU36_5Ik9k+wjxQd*Quc2gvL1z#OcSGl|;CVc8vc>H~E7 zayxe#g**Y@u|)mU!NEemxNY5$?!`6tRy8|PV_-MeI5+M(QmU10n@X(n81AjAteleq zbhO0qm*BlB@}8r!#OY7S^za3g&{&Foo)NBDvDSje8vIiot6`nDtK&k8f%n@+Za)U4 z^#JSIfsJP#k-e6MjK6{TWp`R?(vI>y6dA*&U2odV`N@Q4j6~em!y6$2-(+Mc$s}6W z`jX7JG9%G16GL2@-Lfy-Uf7u$n%m?q&20Sf?#S|6Z@ho=I)Jrhdn_lr zx3;6Q#M+LdPrh}^*|%-!{VH}}JN%v!LY$(R)vcvziA6+yRDNfALpC%kQS&^vYCL%d z&kP^j<3#)Pn|$N+%LF-XdLA?A*nY3hCU9C4;l{yvOrkagE|0AGRy^P!% z$!+NUNkA7dyC?3wJ-xAibwcD(Gl=t?5}rq$3_Y%!T5D71%Jt*L{-I{y+vf{<$TfUK zr{)ptu|vatWI(R%7+&2mc;T+z6XV>En3m~u;6~ANT*OP*ZP6jsN>+|qWZ#+sAG*{z zYisSkBKg!Ddyg!g?YzzBO6JBYZ))vvw z(Mk-WZ$($7yBM zqhgWl-qq`4lQOYld3{AH7Oih7)>foijoPBU@YY4;A6|XmbbDqkM9*8kef+SsE>-1U zzVKmWeM=XgUX~?CXGQrtldENk%2ctrqg_}I_u)Q#4jGxdY}bU5Dkgi9y*HwKwyVkWA1yWy3zfma4jv#_zunsD=lGbrFyA^AA1o90 z3+yziIV~O>JON+^Pg3}tqOj?L^pOz>K5+*VCF8Q(ASd6jK033$IkvK`lA8lIL1W^! zLqAO|oT=hV3?xHvOJe;8U+3cWb2!#jz;}(<`4@lBq?_kLmkb>;^vHVBZg2#QRu6pe zs2t>>%+7Sra&-TTT|8Q{vH2~XBam^0GRWqGy*#S}c%=QX;_$1NecV4i z_zGP+&ZNhYYLOd=Y|tA5Gmz|I(ibaq0vup`wm`{C9&&$KrZLW}ZS8Fveco*C zD5%*By4ICOhc{kwi`7o}12B`_36IScg+=2F$Ppn;t|)NTQb9?e6_#b18p#BlLAvA{ z6>=7U(;6jo_X4^Qe}tWX1mkGCRUJI)u#c+a^{ZMLI=u8lB%!nr4A1@6BS|B;&vm4`jPFIyQ9o4g;XpFW8& zocZVnbodiRI~}+VdNa)&1QqmA$k`dMsrMt(o=9a}rry6r$L~$_kz4EA#>-ngPQB^= zCEkm7wvCQA4c5?`R!`UbvG?D~3~S9@gjnJ4lc&QWdrc5r)(Z9N0f zE&i{mi%|)nrU|TdadHss3+rj}1-VG=AdB9RV9trq z6A?jbqSr4=Z$LkXmtA0)3*CbF;tCPC;UVVZXp9{R7KsoY!l4-5e~LYyZH!OYooNN| zz=w>!xF2sCysaYumvyr4)f5#BSx*YCU8P%wRZ)Y9TtnZ0Gk;h){_MLVyLxs2#Tedn za>txA6Ezr=M`0uwA3SA`&Y#1U^GN|#VIDt1k(@cKz5{muEw~5O4DSa!_B`(=Tt4Q1 zUT1+G!Xo)vdKB^{_UIM7pm+>9x45Etey0NGJAu1Yj@6DEDcC?lAEU|^sNkz;Mysdz zM(}IKU~HtC-TdIwUZBuN8%h_@6AD6(Ak})1T9WDgi(+*cX(_|GBZ>T$X5YtbnCJYQ z$a)K%QlfTLrhkufOe2SvgY1C7AgE?x3uO50(rB4!b|+bUwFUMmW&XK@2UpO0@cOsv z%*Rz{yi|obUgsX(L{sZ9gZG)sg`NL-vO0KJ>EFK}M97b@FiJO%AH>R?`*_+O;NN^$ zLI(hAcfWh~`J>aXzI%NB_1_+T_U-?1);jyV4>yuxwq_N^Pqp{x%PJO^5__GDptqpw z#Oa8MB^#$shzceb(OREX1XAV5*!v z(MM`WDz%$qZnPrVOVl^5v5JWO*NVYgoW&P15iWE`oyqo%m2LaG=r`}Ua)Z}zPObd* z#?8s!j8Ck+I5#JGjUIq^dG=i=W_xdBMmoPB(ur1Odx}M|QMa(ZyLWY51edZ<~mbLNSw&-eWu`lW{&vcAjWXv~BK8rTHCiKC41HKbXbb15%gJxHQ z-B9Jm|lcxCl(j2n|ZhC_IKKcG~%9rY- zI721)dFXI?X0mb=Z%q`f4^C$j7Jr8GY)Y6x15ep{zC0fJuF&@vWOw5esqGFbVX$N# zBw=2#|365>drF64Tf)nyf4rNHmHQcCKZ*XD!f%rnx(Mit&0z=5vpX!{5hO4O+uo&-Rm13_ z(!%rBjvr@VZV6gAcVfF~!+$+>;uqedC&f-)Dj>WD`Z%btCfAP_552_C97Jbi4lhqR zM9zTzz)FD6CSdkgp0f719^s0{={u|i`F{BKA|*FJ+imAeMduah%(jcqXdjLu$DE#N zgI>UQDU=#pR4CYc=+G)m`0}Vd@A4KOSQeya9lC&FO1|gXPj{mBR13~#AfWYRf?`9! zx4Z*~Nn)^#0qL6C)bFz|cQEHZ5(pXF0Sy0~4bz`3 z**LZ+Z4oVJ810U`pjXpdpv8F__?cOD3;+)E(X$Y^6ZgY>^iSpyfO3Ps~3l^U%0+7{PF18 z(8r^zHzzj@!^11PV?(ps8Exlu9d{Hvb&Tx56i5=49o)r*AW?yL@9c!8_ z*oZ{$z0URWF-2t`DfW{ekq>%Dv~BsL+8+J&!n*3mw}+;lnVwyJW_o({naPROXRqCy z{=wAr`cD>SSATKu-u$n}?k&7LJi7Gug*Pu>TiM=QG`R9|*)AhmbYy@XM(Vrq6ZJ2 z1kIk1V|rd@QyJaX+w*JIOLwOBsl#$E$gT7t<~X{3nt{)eCSQ}~0Gy_?Il-g8l{e%z$G$r`<&Jgy%}FO+QT=U5}pOd{G}L77$6}_f}+n@|kFXRqu_7 zRR@gYutZ}n0IzIw9__F{Y?I6Bajt33u5Z;8Mn5xt`Tz}JK!;LOzH945$|tAk#_36{ z)aq<%tT2h2O#>plf}s~}9ZpQXD$@DuVh8Yz;$at!s_TuGo6M|L7wrE%n2{1h&2@wZ zUvZEZLCaPGMdcnM^b}<1Mo&A~CoIc!WSeSvOSGBQ`7;S>#S+|C5_qQQr-TtQa_E=?})kUd+vPx&Bly05iwK!&u>qX)8SlL}` z@qU@`1Q^rR!4^L9`Cq;G*4*$SI4gGw=4B2f0`(2}-2&;dot{an)*7S_gIHLO)dAK8 zyj&W3Zxr{IwngLfo6Azo-nwGfzCqWUSfsVDe|&Fco$hiK&j9U*Bde;}ja|K!NCN$2 z`VFm31ydg8+Sb(X2&(`17cYD~G`4UH&EW3PjQH-&na#`g@4{p1q;i?gQvz(Sb$e?OF4 z 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%0AQ&yFulAtIj1?9k|<6u*SDWuZy$d$ zI;;PRqWEt{L<`S;_R58K>N}^tgjx3wG`s)yQhm!8&E12aH}?*G*)Ll9c4XfCt10Qq zXFY>sAH4AD#ZPCKjemUS#_kQ})8&A51CO_6# z1K;f2eEj!YN4LNA#)}_V0;&6SZy&+_DAab1MC7JuykkNh;v5~LLq1*CK9q$ozq@n# z*8SxA?j1C_J;tB%uuxGR5-KV!qjRM*b-fj`*#y1 zMSn%T->+9K(JwsspYaHP$SnP_iyQzR)@S%bp9mMt5AiI&g|71et?aFhx~@7m=y$0S#Fl&S&@zQ$h64Sa$OW=I(aT zo80o#iNd=5$VPlkWAW!?FjwZ_A}x1en!_LILi50PllDUtk zmE$p!v<}UQ#^zMSQe5LB5^d+%y6)D_LE#|0gQ=SKaRGc#R;&f{nj`EiADsAD$Gf$* zfH%5+Gf2kKA52&LbgsJN>j!*Zc6GcT3$O|0!EA-UBd|830LzRfUS(g?d8frgO^;gw zMERzAd{!-a^-}XJJwC=FI4wgcYgSql_GyI$&S=)lXFU?%z8k}f6AHoptn$L7I=>N( zMkSJ|SKzv>vD-4clO+pg96hh^>hO$GcCn#{ssU^d;o|D$#;&DIp<=LlQmQwuv`RY% z$5utMRjbYx2!`|9N%GU-`o3vL-^84|u6L51zb3hJ<9>P;aq;<=&+7*;iJ!gNwg$J& zj5g+h8;}A=Rpe2cZyu0kU%T3o8J>}E(phsWRoK5veq+CJa3*)=Vq>DFZ772cc>@o| zfjxV4&@-jjz_(QB9hoiQM=Di00+%}`*DtjU7MKh3?r3%$=1uxa(}??O>#)rcDq3Yq z>r#7j&-D1f#LO7LQsKB{UN|b2HMaCC#xPZj=hS+ESfQ6I)(oPVMb(d9cwKp^so#Vj zBsjZbDZ0X$t=FzL?DvWkoXIO6;U)iw&bUuQxxKI1r++Rt1wWxz9?yTUdZzz`UERm{ z+MlrpdPaZNGp#T4RP9N;gKql{d$Ffjcb|fFdWRmUC+zPYGwVO53-=L^*hkEe)%pKU zdh_NT5MQToSr2T%!Y(@X7C!MZ&(!MvCWX%?!OlLkY!8x63wYTr`SAVvIZ}Gqp?i2H zRXtx`_BKAw$*{bF&g%S+j$v0@qv*;>3p2l&-Jt;uc@5tHBX>n5)4Am1i#oYf=UG{C z#MBH|YW$un@cfq1-j|dHzns@Z4p(3q-F<~Q9@1jQ%(=r!4U`vuXtmEf$Se`mc#{FX z-yjcJpJc@f7q%D;6%W~ig{ytNHhgsCUYr*G3@)uLhdo-hFk|QyX8)QokWrJNP|WFk zQsObfv-MqruU>8*0AfFZmuiN+x4dysV&K^v2o;a;?xw3ApokI{D4)+H=Yu5K(HJvG zlq@oPwp5V$0^e>Tz%C*{he9O2aU__SLgXxnC(Gwi@=62~v-w5FUch0GtYr~@D zB|1SCiQvq?e7<$&Z(hDMbG=)z2**J?vtog@xf9#I{e+&u49qQui(Y6ad?5!c8cXYl zSaYp?WP!~6T%Sn3G`r^3Oe;+*y#l%7TBkq(H;Jl(b*efyy=rU3OEwT6agKhTL)iNp zt}3%Z>yDXc)lMTmAw1e?GH?g**-HL+<#rH8gpa(g2VcB9xBtLFFCK3-m(1oZ>{dIB zuoZQ*a(hK?jf=@O46|3Aa>my=@@H4rm926=S}$2HFAWTc&I}EU-{={ZoF5uryxP?-xPHB5v>A+KU+>h?_>e#; zCL1TO>zGpG#idKSlw&U2T7yZ8K6=0`cR&_=m+bi_oaHR65hs6#Wm;~ub&X5S-1AHq z>-!D$JtDV2=_xoeH+JFW>?>UBchsTEL$TI(pG?M`F`4e6HM02uuhl1>#KwnYem-Dk z`~Y3y17<9AMIZV9+#|9N?Efoo!jvTwwR?vwLUsRth^OZe&G7(x^&UPGzP5ZdqfI}- zW{KCl2rDqdyh>kEbuLZYi8HKq2-KSKrGWZ;!>Dpb<<#3!drniR>?Tvd&N}XOruRa0 z1BcN|JnSN>jEN9C^{6Mw=K@X*`dYx7-1d_<@{qU3FOzdGyEFVV0V6W+V}|o`zI4L_ z@G$%NxK7#sZw0wN0z5zb6wR_f+wgLagin%oROc%05q7R|8@iF1Io$vkZuMH**nE$0 zWwvc}ex`3qKFu?Dx^+xCH>tEP!(@a7pf=B_?bV$f^JNwuUB1NXy2MQRy?>oPsC9UH z1v0Hgyza2_OV#{*8g4;`_m2E~k-4{$#1lXlAbEd!LD_G|IWr^~zvJx7tDT@px>%Di z^s93}^M4U`UIv44CeC|L*;O{Op!EgV@8L6A52IZK;g1BFqx{VBetumLeKr82*U$MT z$nUMP2GCU!ezHSVCZLZ!oR`ivALDqC?>ox9m|f>)hUY>Cj!PQ77M@=^jn68BKfc;? zoa1Y&@(#0jK?-O_1$O;8{55$-^is5NqvVKe@&(4{&x=TJImLYfv=J!TTnooD&h^P z<`i=DGi6M8HDLm#=~zyHGKfTq`%!Rl;V?cFy6N1UA<25=j0l|iNb!g@bww#wx#tbO zq7*jcG_0cunK?eT?8=UDEswyC=oPKlTF_0Jqxrq&RAv8)Y}NSli#6SU-Pb1M)rTBVugx(`O@HsWZ|{fFH0_7?<5mhc1tKmDCAx%(YC*Z+4$<^I1Xq}pG7IOA*ERLt zl`g^4nqJZ4AHH6H@A)&=Z+DK&-C`eoOJxlnlRMZGDUF-34>s8OZ%;@R8=SYwbO%&s zl&12;qIrwY;gQ{+J#|KN$3}nRkbbd4cDeg7-L|A=?>0H$!`#N{9)9x8+}7c`+TzSH z=C5tA~D#rmK9?5Az7y!`W_i&w5MD6MG+-G_K`Lk{-r)y^UZ+PR_1;Nr|l?+r7)(d)$H z>kH+!nHM%ZCU?dK9|9!)j(JJ%(`#)(!>YlhGdd!MHCNPR2<5-`RmrUpBYlEqGy<4L z>tqb0ba%r`)p<;4boj2)CT#c`{D^9L7Ra5*VC$>3d~V_BZQ+66^zi!f`@-JJt+&H- zmUsX!T7-2_V!@V#Rl1Qfdh>BhWIN8DKZVaG6UyuXM?B1G(5T}Zr_^lTgT<6_j9|h@ zmG^B2ci(Zt0JU&-G2mr%(y>6UuIylkW`><_GkP-a&BF)o?B=O;`_>a6*sw2|NbUmT`rg zYiE8;rV;+|%%%SS;|I_8UF{qmuWKC}`P&!I_WavF{f|ApgA+rqU##!>H~;R>x|@3i zBdxuHp|e+-yU$+l?7~;qk3F)#qhHv?zjWe%>FJtS?h`Gp4TzVW!@WZF5Z-|PmVQAW zKQTDG;25m!neD?X+k+m^aILhHh!%Zra#N50eCKKSmynCRoiuF+3le7*MLo>AfFedD4p+XqBn z^o~lt=n=@jR;+oxhI#lYqsyn)T8Do_7w&(@EAT(}Zol=foDu#xklFpmc3?|c&h^%Tr)sP3v(nzp&no-3o-P}`cNa|IBjKuZy}m~nX&n+LI6EcVM;9XGOmpSK zTbnT0D??L@`;koL1poa${m_-(G4bZaf_j(iZIxScjP7~THXypWsIuLo3+k~WR(PM> z_=hVd@0Ye<_E&J4zD*t6`-AT0b5_|eXx~5K2JGb}g058ue&81*|AHMSb zHa(AFVzsiiU!v+9SD5JWv$KOUzE;z@{NgV! zFJ7qcT)f;mxKQ6cC4Ti{-RR}I_WsvuI(lIgQzNVBYZ(@I4NpnCueJ>IpKs`6Q>j;= z)1$e$%nABEb6;TP!3G1)GJ1hDYt*yq_$_3y^}IYJwSh$lA2I< zclBz0_uTNr{KDn>p2gmYd3jUUh-z50V615yv0rH&bvF*qy66S4!H95@L-3GM3k=Sz z_!*H+s9M=0$J{2ZCmbQbAJWi z)9#2!QK8o$d$DOaez|2V-9NQZ7A~6)=u$i8JhvlRwygJ$$+M#pRkn9(F)vwh6zESW zWh(pIr*|H0t1X<9ECFx#=!^lst4_LNQ+70WOGf)A#iM;wvw~rfj2wWxt$TcVfEjIC zqB6|NG)B2xXPjpK|J$Fxs`&FC{6v4TvAfy{zsE}BSh#9E;k^Es8Sj0;lKDgKonIip ze8rjlORjTz36fv1&-zSF7J&2Rhn%ZFU>1I#>+pTf@6Xt=y~|GTUCyHK!;OXipL&;E z`MY>4pJ=_ww>VEdfJ352iOfVcjtUno*r|W2Zj?ofQ%QeqX*xrC$fH2Yxo4z%;ziQ;oO5NZ`$l{LHhZE(#<%2W7e_WWAH<&zZzsYmTMmLRAX^sml2P@p(G6Z@e=S)fR=$1< zxlCu`Vst}K{BvX=4rsTVFb^B?*R-mjS;VUj=g}ey*ix!9oPe$mtpya%E!T2<)#lV zi34A`4G%fDmOUfBB%P~xyj(XjFCLMZMD&r&l6zA7sg;0#w1!vO7~VKp6DjoK*Dqcl zY-nifzIMH-v#G78r?ItXq-RJVnv^Wf8=VOaa|YdRaqk?4i5a;e>xdM$1F-J7j(24S z_deJ95tj4={EAy^n53`>Z*ZLy)|{bI;o#1eA1-Hd_f{#lcRRsO%ly+fnwBrMkLxoB zZw1_`y}N#a12UyIIz{TE<`Mbnq|9)i{pS;Z zcKbd2q#uw;`G~yUCv?Wb1x?Zgl6h*5``|ckf?7HU%E$*M1VcCC+^$#&r#6h<&;tz*!uIuPYfs zg9-BAu>9je{yog!S>^uwV69g@03q_aK{8oh_UZ8LcY;Kw$p<8>JqYA20wMPM)eHif zxIe-D3=cvs&7X~@Kg8ZYk>~3z@ZTApGtASDEP0oF)eAs}NFFYDNgv7=@E7OlMWgp% zJ!KE)qr}pKQjLSG@eV$kVho)>0pBI$ls>{t zwSO_kbpW(4mWB71CyN8OpqO_hxAJ(i^5N1^9{oI***eXH3wzbRk0_p)FnR0%Uxq`W zcUmeZ55PPho2m#7SaD19`jB)^<&j`Xkg)Tg)_Dt)BXa8iEaV=z2R%G{yJ0VO!jfqL zMSorI48L60(Em4G9m78u9TNO#W^(?g<3pmKw=(|^4hdfujEOIe4A0b#Pt3H?1=x1= zT5}6?e|Jsi*vRWOU7}9G!u%WcJyQBoWY?Oz7izo47iQ)9rD=h5{--a!CcDtssjKUp zvb6NgSZg`wbWh0L?C-r78he6dZPT?qGlh8%jqh9$J4gIj4T$i><$fN%Wy~#d@-=5A3ts z-JaLj%bjDhxl7Fh8Ns}Mos3XLtTdL!B)SbaK>PUFPnkRKq)LakR-DOGG@V;4)ehy3 zfbRL+B=A3> zw*`ar07TFOqK@!7=ZaLdpTRn>^%-GY82HQ@HO`C?R;eDI*g{?B#H@VH0~S55<+-49 z$2ZmZ%jQ=M_O2iQ?Q<7iedU!4FZ}$a>(4*`lb%WO;yjEI3(rYa$6m~=w`Xb+$~m` z&JBW*uS)(85$dv z^wre1^_)9NmM;CpkrCSqEv>HC z>w1D+z0;|#vAM#_XRoby4NCT9YVXM}ueKaCbx$034+-yfjffsK_KZHMYwvxxv1k0* zmB#*$$7d8@;)nklUGA&v?Gs;D2rm z?r846FcE7`lJ4vH$MKtm+OPFti8VR^#9tUavs1wz(@n z?{T=XTa@6lUZNd?to>MiR46Z9s_m}8W8YcPyS9dA6gv|#^$`q&n`3j@2NIR#2|W-W z(kuFDIJfaR%(ZV|m4AbG`0K*f@!ucZe)K!M`F{r==}WpEKg*PMKE_}7ELz-o3VZ(X z=#u*p%*UsdlP6CtvCaEZmHQ-CI=!)k;Pmq|7d`BVBlSI#37DdJ&Ix;Dx^LnMy+@w< zgb(vJLvn=-{&ui*jAzPOz>Zpomu_qX(#7Hm6`5oUb4!L0+I}*%^WYOg^qCm@ru2@5owgKVjD{s_|HuQ?-)$XimegC1` znc8$~eCu9wWHVSkxEryDiy?M|#INsq>25PGn<7hn6Z5mn2KU0myjC_cy{w4kwzWE2 zNCg8Pi$PR6wWyh0T(vK9W0ke^&rJR782g+1qLI$W~~Q?#~qGzu#)&7YBO=pIc< zR&B*$v8o7Dvv9pvP&(JpzmCVcaJhXd-#Ik5-ZDDBIjeCW%r0AQz)YZHHoZ-U+`3q< z&Gt^tr}2B`C2B90gJ;Ld_5JO6UNpE#QD-Pc-aBL%5GWMAZ3B{t{waxgd`>DrXl4Je z7#tF<3=E646F}@m;uVurrZtlPSN-_KGxDFka&GO1Klx>_aaeXxe)|tkESZyc{fW&F zs3`jgPvj?@zdoN{v3`N)^J{YFUz1t*DqK4K$`H(c!hHS__7r}Uo^j55kF)4|^ku(` zuKNzpm8VKu{3++>r-9u5`?H_jUXTArJ9rcsY5m01pT(Y}k3bbSe7q z2`61-cj?Y%_IJf#;m0jJBhC1O%>MKipMi=VhQA7btgH!k23t~~2EFO_ zG4WLWz>JLNAzcO`8{Z4hG%}>#cvwhb1Ug6}Ts%m@p-b>guQI(k?*^;@|H;?u6I)?_mPmPXm&hFp!)6*A>6!xqAe;!Y6&+Uh2#_MHd7i8qjW5q_!17G`HJ83jMr4SC@tzUlQKyMJ=SsSx`M_;>4gxpM)NHywfv9*b0NzyaQl z)BBg;&x5l-=Ad*`WOvtUq9t1w_n}PDl<6QpmA+tj{<;(3Q(K@0lmMFZmGF>JSx7-}DbIn_= zp`67S+%z%&>CjJ<7_;Wdri-d9a5Au6cqVGvCgm3wO|kRb8_%?~4gI2jSo-?NsPz1V zP<&^|0#i>$f}>k^%>(mXV`-78!=X5IB5 zoIiYr{qg&O^v*}w&6^)FM}B~2_#qnAhyL9DGd$@}nC;L3^N-mHhgq8t>Hsd+j6JY zxwWtX|G&u)*|ByBSB+$b9q1Dwd+|83<|_udp9IX2as+=)1pj`J9d4M~g9w@Hh&{0t zW)KVTYkYRz2XwQ5iTla2If|~B_xTG4Av#a0`+n{(1&_{?^>Q6}*}?mKnLTp<6%QH( z_U;omdWVJ2;@Y&*w%Ri#SJbqRO6xkuB}3vBDca65UD&I9&&$jNa#+&}9v4e}qE*$% ziqkT+;_$+-NyW>@rPStWh1nNIU8O=kqohJnU-Ko`(KX9xA0@sPcGLyD0L2^{RTjQ? z7M}_$+++K0Scj<81ho`s0(|eQeWs{r+et>9+J$qGWDVl?+BKmca>pIyZ zTyW#f2xidk=;17)ZRKq7^&WtLno66?%fC)OdlF> zANbT>*oNKqK(+-h`&DL$S2}vef7sVM`P}&E^pB=SBtMy&ko>H@d+epY0l{lz|2eYH z*1!d87#J9D?CqIo9T3X9;dS-54$V%@s_k>*v#WD(kj3mi#Lc}k^PDB*b&Xwf7cX6x zoWIt#jK5Ql4s2?hSaFRioPiOs(%;cH6=?1m57)HzCB;fxxv5`V!9!fA?ViXDOEslY zsb-yi@LYSpFxxXBTc;1K(mpEQ5-nM7pxfM?Ub5UD6fM2gGr92gjKcQbtjhV`5X?}C z!u+08WqpcA^+|KD@ZHWS<){6U)vw5me+8%h>(=pwU-b!>{+_StS1(>}{;Fwc_FK+j zU)8h?f4-pcf7Q@0`jmahSG%W=e@6uWTlU#s!dCkn=GteTZ~WxfAC zJMUX$JP$NFXT|J^=9-6usbQ(E0Q;-7s&|#)n^cAt4f`;LZY9?b?t8-<_qitT@1EX& znA<$QrGxv=j&9!>&+X#_-&qTmtA45y+ISAGNEwD}NeAymVU40sxg&78!wS9C4eQRW z1WJe1C&KeI#`6!(P9?zX?VMZl*qH;kHJv!{u^GwZm>sb#8~r5A+a(pga+%H+R_a_4 z<&;dNARo7ct|Xk6D(imy!{^St`iqx;`HPody7c_dUhITHuox>H8rK3PJI@VEuRx{4 z|8D|^N%lUe>xOv?B1*%)&5ZVLm8g9dfx=qN=bD(o^}`a?>bO*^sOuV?t!*Ehz1}e? ztpNr*EL~fLv8)lxw9501gH)_%EF9&W_?9d@pJDh`*jsp&gF?B4nNG}JV*zbom8`Uu z{EmK6u5}p3Q4d@Tx(||Gg*6$36<*CBu`5Ug5*vpwC~Z#sKu-QF z{Af!ShGNH%Kx&;5%T07GIF-({8=nCj0y>t=At$^edRoXFuer?lckKGm227R$JpD}z zd@>W6A25--X8gd*ZJd|u1|$li)r^;MUA%PYy!-a2!D#NlZHD1WPR=S(dDgVfm>Lw< zYUSuQSvpB?^YF|NT!>-1v|3)hSl=vC*g9%k``V@#RRip?rX$%cakg?SBHJf0IOD_Q zsR!}K538*40k{jjI%}|QPWorZ6i_5<}-*BP1fBJf3-(+LQgtV1CB9UW8HklsD z%+%X4Ea@5*E_T8=Z+_)+V{J$KaI9-OX}g_q4B2w>)-$2!k_=e53l@(zy3+nnR7M$jcvmda3!b7`Y)P25mm25 zrg*KTS9YO&P=2msK=I3~&5D;BTbF)XU#q$>G-7z6p~?8lg=?0Ynr83S=B{W{k03KF zQj}|3`^&#LTVJ}?(7B8E@N{@mc5h%@`tW>B+as|||JjqL@BbRV($}@^BcH!=zWy6_ zPyd+Oz5P##;@0n%_4coR{>Jr>&RuQ%VrD`8pYW;wtHm4pZ+ctopBdKvLAap(c3$KC z+UDQ<`qBGeeHvZge#D$~Q@Uc>yVf{VeDU>~OxN&CwI`+|S~4cCwGM^nm4>8PuFLd| zNt2fwhpM~x9N%Zb;E3+nIiy^y@7$*E;G}&_ejm;7z4e_t-)1&Xf1fNL|K1ZS{zf>b z{*^17`>i#c{~bHBzc<+Zf46FJe`E9|fBn&C-~Pj||Ni&i{{I}k_j9B7o#*)%TwPt& zZq@DX-0am(Sm!LsYDpc`IglNga{v>-gg_FBAV`2jPDIW*gE^C(*g30}Y)fj(_IhSz z?Tp7Wwr^)cu-0nxw@^$v6%425!hv0YB-m^o= zymN~@^;PEfT(@u{&^{y!;f=}ARk_Ztz6*zOgKWM-y)ATL#|Q0&^hb}ggf2PXIXn^X z84_nAh3#c{^0Gg-R^(BaCyOvO$<`tm(?w-U1G|1G&Rm>}6t=Q4G)6pIgF?da@!!XG z?!3q%6%5j?XBr*Xn)AzhuC@I;3nLRcDSQ!i5yq(z<-CIYEj8VybM8oP9!=W(VrpYv zPwq7Rh4bq-AI~ez5tYImoGh*1f;ygUK7;1u2XCINCj+vzzP-OgFsd9JmYXJqq?(yo zYe0(!M1JBz%jBEqo0OdUv+@~}_EJN)g6EEc9(ILrQZKiA6El(AnxVL{XUeVKS|DFm zN5-3ON>Aqb@?G2J{g2J)bJS#>4wG}=@%p=$`k3n#jHvnrSJF7=iXfrd@ZhU*SOkVODdI`w%4;Adx7nr6c*}^kOLKt7#T2ym7K-zO8TE zj#kV`-Wa)R{-Ahj&QsecaCHc$0-b}C(Fu(yJ!f9bVgE_hG!N(c#^)+^ox|nYw!xJ} z76o$dcF}h4@VQ+t?LRsUk2fgqH^VA9&`7*O=wf7o*YCKF< zQzTs4jgSZC?i`-7RlNXsGlT5=K^LA%_HjQQfj(EH=%x$TfhWMpOi12j0KdJD4wamX z{mJEwmo0GA3*=eOD;B)-Qq&VldWrgO(EXh}^>!Wq)G6tf8evepV;kyd7_VrRuY(_W99ew9qV)Yx?Q;U|jd` zjPyg=2cW^xJuG|K7d(OdCVA&&J30d!$CHhoLOWVLvrul*F+-7ivw>D4)j`U@K|X7sR-<=3Cx$(F7^E$}|2+_8KzTG&mJ?TMdhC4dLiN$!Mh z#_FF7W>*Z^t$X_M8N2MYlUGIbzD@>9YYXn|n%x;+C4Okn!?jG7aunUqAu$tW8D9U< z_|oo_H?u68Hn~UnOyuTBS&PPXW%iur8V{=yzzxKIH6T= z!xcO(OSV9^;*J(8V7F!Xr~*04S+a|Bq11ZLliNyUH*b3**){F4^UdQY&bP?OkkFC| zV7S^lVG@jMeS!QQ*i9kAZXDt>3E>5<@~9s8X&3vI-4V(|ajsEUvTlx*w`f4xgrcuZ z@t%#vmkx$2I}f{%H`O>(D;E^5_{mGHf({e%{kiZbnuww_ zT<#pwpSakdfBjUQLr4Mce4tWkAJgP7HVu=Rp1qB(`x##Cm+th|2kg}!g3WzMhQRw^ zelOWYU!qHYACLSq_U0$-@>O5ZLpbL9U;ua7l<+F zn_!O{7INCzuPdA%IcB(IAiIgDdetk|+Ra)|(K72Tm>LJC^x)q%xE`Bi#$~B`_Vs9V z(7J;!@r4G)8Czw}UWXS?1eo1}aOq^;ZiQL<*k5B_a^QWD;w~7}4&I)Wm$S&rJn!t0 z8tCxId&!^jusgfp(B0tFo=|>wk=>h4*{}ugkQr~Gp>up@u68xo?ZL8jk)$6Xz^}j?W4(7eJWzNwG z??H)sg)RWP#i+rihouNsRv<$$NA5pafu#)BQwknBf&PGQY;ym=h|#cDJLuy4xfq`V z*}l;T9Rd-!YjpJ41X&0P*6$?WBWVhj;+&u81)}r;l=w51YVJq?KHQK0u9|h?2eYVV z{)fO1su~LP6iFXlRX%=y5Ue7=d*C6X0PG~}k&*$xUQaejBFOV12$UWo^CUtZN(^6P zf;^=p-z$j+IR$2tM_*RLmR}(6FK5JX8_91i(b-wBhca1vD4(Jii2T3QpK=UFXWbEA zcZ>|eIL~VG407aZB$DV2=rx z4Rg4%rr{yQ&$7hskN+%L27BPETmp+J;!}&GDM$Y|!UI|$ z(ECO!~B>8n?;L}3g83t5oqGJgqO+SNbzh*%!9$f zkH(Z}U?w@oCx|DMLhKHsF&zLS?H^G)yU``JlULvF2xQt9L)k_&spq8Xg*UD?bfWto z`?hFE_H9Ae@OOnm>Gv;R>;7R!hv=L%Hc!d5*(dDN8v1_eDSwn|Na`tMMthHY}`QwvUlzo#6c(WF*^wL`1sp)mq zb%^`}qskDoPpo%jI@u}K<+_J8*}85?MyNEF;882xV8?%*!yAI;M7myYd-}8`i#DT&-!HxubKxZKGQqHe_L9+ z{#!EYznEO`{O#t=r(c2<|3a>Fl1IAwi95OcG4JtnyyuV5>D>duB{09TPPBgN`^PRu zdS$bjK8ZRHceA8M#_YYRG6e4AS8hLKM1#LryUn?L09L!DwL~`2m~YPp zD;v}9!m=5hj?cYBDHm8$BF+7pKzkR1hzR*oWxuP6EzU2xXIv5gv^yP5uH20JlSQA# zZ=E4^a^UU)lJ$mF+_1)V0>W zNiY;OeeAP!0@ds!XBcN9*?x=Q#Da;l4FeM*rEyAS^2o@^9d8>FOVOt*Cv{fksVgm$ zV^j0;R)JWfGKP&hcXUBAYo3$OlWlAcs3&v|^epDFrUA)lYrjH*rdB?#n46t31x>cd zsvVt5zW1IreT^Mwb@g3J^CtM zVJCAK?#m+8n6Zy;`vb*ok8H+n6~AC~$~1i&ng$W~tUO z-y@x$XP+=kFE|w6KXzI?uC-{~@q#H)*><3>#*3Wyc@kyUweAr!l`D=&e%nSwn=w}0 z(2Ln%ts}1;zj)-`OI@e9mTQhT3u=Xm*?Otk(bCYT zYC3jRPTtF3Llrc}&!ipP~bW5biZ<0BISu~^yL*xb{3^3ef$Qk!7#KNosdb{E zTQpryLEOd8L3Dz3(l;+$l^wa-IPtBES0=w(b4l@o<7d=wox7?N$kgVyPS==@p1I_p zKRpO`7`;^28ohX}C3*fzQ{m+K`sI@s8@F2o(!12dJrPc*KQcH2pSSjjKZno#C7PlC zmR`N_KX2ZD{?*3b-G5oT@#uF@o}XWA==|v9rMAzRm;S*LO#OF9IQs`oD1YyYWdCcT zwEk;^DxYeNj+gRT=Oet9_Y3O>I~T5Yqy>`cG`o7);z+HjSx~0T-a>KXR=#&c6}r$o z7$#pfi@zsTQ`ebbM=P=Ot)cLxu@-G45 zev4l7clho8Mxva11*!C3GOGt)EN|cXlGpz$`Yt}=ne_qtzzdx<_=t1tj*R?vUwq{O zJx;fI{hQ!=OVpVqPu8}CJBAf`jWw`c+&R2Hp?B^M$ql=zdFLK_lj~^LZ|&ZFwga$N z?Iwt+<{j|;o|49%UCD0TSzq11x0+kKNe)mdp`7=I^j1G)c`C|U7cne`<7Rg(y5Nij z7FB#hmdIW6F6=I8nB&9XxhN zmJWzxI&{-X%Bo4`)?$2~d3y#wjfTNmom#pj4Heb|XVA0Yi|OVp6SfXY22WmU7Li*n zL%XO#^D}YbTHhEL%-A~@o5c9+#jSngqdZeY#}UC!&o53Ti|ZPPKda#eospBbE>c-l z%xg2~B^DAJ_f7aIb&J8=lx*56_~Dx;8!xb!lUqBfFa%VMeG|%FiGB{xf~~l7&jk-| zo;8QCZIy3jz5W=HqA z<^e&EbWS)tZ5Lf_6$)E>M#fInwkXF`1}kSraMs9xldRF%8;@4@pt8j~9y-hA-kdwN&mPOoU<272fRzVzlHdG`l!m^YXA?%uxf-~;?;OG{0C zvb2ay3%trn)toJXi7HGEpk1oAXu4Vjl77O=yD{H^0ZjGxiWGGX-P7y>^RkIKvskLJ zU~spHrOLS@$1lv(G<2K3`^GW<=}YYudPnY{oq3dCf^;j`1cblHy_~Hyvgvpj~8thFZ?FB!3O%%b+~Erms3S{%e*<1P3oMHDDzR2 zJc25Z<%Q>7qzjuo>X47_b|1Jr^L;LeZ!6IZ*1l)I`3`ZcO-VVf3!g^Y7&t9%c5S zLJ$rrfG&W!KIbC?lnk?+mj^$cI4jgq?US!iv}w#y3!nW0Sj9}ge13ubkR0_5zc05Q zfG_jS(D!SNmb_dOKKhjw`F=L;Q>)e*cGA7)LQ7#9(^}0{U5487r@jC`8mchZNr;@t zDwh~TFPu&;-^jxCr{GlSDqhVe*6vnft2Ybq_i16`%_a7VS3&V3w-avlWPd-E-RN6uxlCYC|K$hTLYLNDjF0bk$#m!kP z=i0^O@-#DzyrE-IB^Xg?TYJTG*IET8#FXJ!`Jjv@VP)QzTxH)`<-K2;$GC!DeT6&= zdd1@5X08D_fZB9-GzUk+Swr zSr$jNPIn)|5`0d)r|Z7-@(myStc&Z<%4@gcXR@K2GShKvDDU6b`6~xg=wyecjjq0E zVYLH489agL?4ZWNQP%TTbDQuTd_^aE`Xr}%1>@(@8P;5G5;lm$`tAXddO$cnJ94FU zT=LHO4&`^=IBy(P+wmT3S9>>CxxY5;5aZxP8)OiafziTk{S&tHjeQ1zOlQSzWIubQ zN&od9oU%$yk-V*VusQ2pTE-t%tZ5nAT}*F2|W2S8UQ-k?{hQULyv#RGxR3=+X4NS2juYW!wqbsbKab>C)VlfM5n#I z9>{Jlv5#lDIIF(uD4KN-nr_EzV8uypq>1lgF-A8WWWn3e^x(nwE%KT8sy=pf>f!X- z9r6~|Bjo%C`Fpv3GeI!;Fj!ZJbInJWCb%NLe(*&0Sg^4){*-ke`G~GzmCM4<<_dsg zaacI1e{|qEG!Lk)hS3?NMZ4UXC}ch$oDIj!G)ILiC4$~T!Nb~v!hmd z|B}I1sOBJK*{_pm>eKvP8FutETy+*t1sVYQ5kr+~wq!LY0q)%wQ;!=!V3F2s2Y=MhP9 z4%3ko%Ai%wa{p&}uQF(kvcBAA-WIH+M^*Mj--IFCC)Jg>ZZ`0c@A@(;yMe;at|z;_ zO-H~g=h-rP2eKw|6(@cHTd+_F=C|`+a#qhY54y%?-68gc^caC3e7<@53aWjKMfS(y zBCngzpuja;zK@=4fc+GtG845?ZLkB@1DEZ^8L2)TN@o>HR3>t@ zEmxZau5(vf0|OKK^yr+Y01lWYb355Kq$;3Es)!W}MKn)&CcPqAu$3{DZKY>av(hu7 zTpd;!cj#=rEtzvanpz0K8!SG(+%@(@YYRL#F9sj>2&Ht1x8EU??;&3IC++=`XFVf| zC+!0hPuuYZbcv^*Uu^1siVxv^G`l|)D$Spglklo_MEg0}h`*xO>C0?o{kM3%|1r6G z`wwVye>?Av{zhg9|9UaK{wuihUvcJthW`9Lu!F~Vm1S{iDtOIT{!sW$=YGQje@KfQ)=b9 zD_z;Kk|Sh*6PzEO&@Rl`eTHGh+&nXyL9DSE4X&hReA=Ra^K7G>-bsZ-HK#RsW45h( zFTHZQjVEVKNVg9BG4gigWD~Ko)7_F@lp8&Z5j2WCqS0z4?6zS=g-HBo9C}|4ZroBcg`KT(m8&btp5uWvz9up?Y)!*8RL-4Ju~INb$LE-6YEUE;51hZ!+&!qW3NN0k z8pPV~>74o!;lJfSA+!Gv4_|)z z`;GlOzez8xeo8dc3$rVJ>(bTE&AL{>s!*mVq3+vd_TKOWgb?^7gF@LoB%YP)2 z?4K*UhyQ|q=Z~4K2fq(jZu}j%|KE^N_XVEwFSrJNjhXWo?ASjcpZ^6p?GNGO@IJ0T zLJNDBJiQ0-Pmh)l9vvpp^W(*gzIEzq96kS+G3G;l+{;HFb_@80U} zy}N0`^Qb^u!c$z(A{b*XrvqSblbp$|SYc~z){-a%vwH>jv=sipcqoTP&!0qQvKI^I z=#he33uM-VRUadGo0EJX=JTQ#eGoaKNo-2xd6nLw8c`S|9wNRr)p^r4(=2jS(mzER$r zY13j{cku8fy=qBdjo8GXSTQbDn`On-8&h(veRODQwx3?v0sI)l;LXA}k6-FLUk~7{ zu}Ip66w<+|1=+~d{ABmATsAyq96fQVwd1wp=Nm6I_jR1B7Yuacmn4gK=7V4VZeB9G zsJYfHn~N6r4d8J)G)R*dTZa12Uh5JF#ClQnt8G**5^0>0)Y5@eK4%k==RvHWeWbB# zw2w@i-hQ#F`+W02cT4}&P@hace5t8#sG)OcY+R{VH};Iq9XWZ~GH3Ng@M`4do$)+9 zV#VUxe%7Dc4xVckT0032VHY>Qd%jNJ-Y>TGj%mGpW12w6fFy9brY+RgKbaj@SXRhK z*`P0QXWkioSUPz8A?NbPJGUQyTHd+yF@}fd?7r{ORreIE|B*Ml`C{$%d++%RI}a&~ zxeN=9kuDjYI8SNX92)l*S{vN_W zI|h{PUBlWT3~fWhljbqX3@2nWmf_)v`6DMU%zo?jW2SF>|7eH-V<)?N|LN$g;|02| zk64gC<6wM6Z__I-!B+-P;#2Y%KO^Vv=k`S9Gv=zFFbBS5?tI2x`k0Q|M@Dz*$t2x> zMBP5)Tzd{5@>pRGJ!YvS9bWF1<287=+_ zIDHvR7hP)>k7YJZ&P{?ouo#|oI3T4`d5i3?0$mDaXKDA) zhJHccEt$i&kaTel`0Vr`R&y87JGs&MIhfIGra+33W82X!lIsV?wO9eR7vXfRcowMq zT=nAZ_L)3!pDmEYQyl%%=gH3;gKNl@51y3a=u3&pevuhG&oxpi?mt=1Za>IZb;_K# z5ip@3+G-aW`U_&US$y(L?ZBz?*Mw+UN8s#cLd9Jty8lI98+vTI4)8*S(RzpI>P0)f zSj}%|%wI&`WYzHVfJe>E+GEO-r)$QJoj5x=GBs=9y!U|nhJ&TuEWQ!==F*BMwS?wo z84Mt?j1OQ1zHoKkm#NTUm{$R|un*?lspV?USdRTA1LweuR|!nvJ6ylYTElHrA%&@Uo+E7{;geth?EhoX zH`1nIv9^0?R6QUNszzD`Q` z?QkvN6jleB-*)oCZDax18wOP&nU&C#KzW^f!zH+aGPC|Rxla!k$o=4R`;ct2pU|`R z5jhOtiKX|MWnc0Dd0EZ>2a7@rP6@UX^`- z=xvQ9x`w}R4UNz`{B@Q8N7IHkG`$(%e5aRi%4`f*(9C)r#22`l#_ZM(@w|oH4*R4b zxJXWwpItM+u8jA3Ju)bFc{_&<9&`u+as-0BmLT{;fcxAJhwg=&_iC(BIy4dgnxM739YCMU^NkgIG_9sL1BN~~I{ z8QJjA7WC;>xOF>r^lGjH9i z&t@4-&k|=&nccfoy*KzL8Tqj!`p__*imH}B%{`DIcRtI%C)Ji%!V+3Zk!t{lU-X@* zZ8vv{G;Xp4tD2!GUXuiRiX`|$f;}G{KrRkOk^qlOfC2DlOL0E4DA@;i3d=Dx8WHp_ zVRDU6k@>YqNKG%`q|Ot7 zKMk?}N5LYJoLy-=op}AD8U8)Y9l z8#j_m2M3M55Ap6bC@=I<3Vzy+#>|Yz~86AVloqa z06c@hU~(n!2KpJZCHA8t=X?(BMc(L17tk$LI~w!;{8|o;Vg?Kt`}n;$($ioxzY|C= z-Ee`m8_|i)XP36;Q@|3+`m$T$1@$G;^Y2k_F>mhW}-h<;4>*D)GTPK^vn&y9~t z&mKK-_SBhkHMN6eiMewJqa0~t9sLu1N4VLcW`svCwu$k^5{a9nyG5=g5P5+vV&l8l zdX0_!6XyE1e&dm2=d3OLqrveRbGDkf)jw&-T%%JZ=BUE3!}zhw8g~O9_WcpH^}&@c@x8%0-?QY_qmOgtt*003I&U=gNe*|b!P`7eRrVh9-rRG?vT%G$w=tJpr_*Ya zjIgcr#+`jfFuN7at!;q)uaZGkVh+wu5JUivov`?Fnb_LR)YzQUueAn|qiy;P-Xwj0 zo@(a5A8i168FnY#o{QjF_}miJ4kIh~3mAOb%IsoKEpJ-`@xm0oY!XoR$g zHK9wcbDcSU;^Yth&wulO{HUR$zZRHkXcF#gK&+A1b&jaf<;_awoHJUJTZs-^i5_Jh z%@-rVhJo`?3#Q2JNIvqclS?3`rN4Y0y^A4|-vHl?=*Xg7a7QW&lMBJwDQjew{Bx8x z%fy(K<`x{$sjHo$35`8DqqoIp;3~*dil~Ma=7~|6c5G~NcHAB+q6M&uFSiTD-+J@h z)U^(gRyZ-ItM8|qT4|Y^HoA?Fj_@pA!?fAMeUY@G=P@Edm>HDJXwhyM;1kG0@Y*2b z>HczBMr6~DbZLvskJZ48+3Q3vLJat}PccsoVRpldzQ=_o)CP8lCZOPe_ppOUTCL1u z^RBo)P~4sElV~RJvrmS}@u$Pgiax?lP6PdA0jEUcaN)fOIg`aeq_XWsyMyI(V*#zy z4En!`rM-Lo$FFrZ;$smkZQhjH+>v2|(MFK>svUGn(=TFynzIEhu{n4&|$vI-hYcDho)?V(eM)znN zWiz&h3AL`id1$iXWPR^d_WU~WsG@UZWU@~&F*6|S8x=99P6YNog4Z>VHPki_jSPrK zgo6_z#nepiK>y&C|MZt%JN51Fy?O2jZyc@t%Wr?b?niH)=y>C;6mNl8=GVP(!6u*jON&x zi#m2Edxt>ke*Mkk{wvM>1)DFo-Pk^`@%r1RZp=Eu?+YhqKmP0QzW&n_m%Dyj-h2Ah z?dPA;XK?9{V8_2tuk8OF|L>Jx z%JLJT!t@-y!S!p+Ju7567muE4s7z=r>#j&@xmhrhdh=9Gtfoa=@aFb6HV&Vc+XW-; zKl_VsS-<((vBlcPzHpO3niI+A)_R1KhxGP-h==nP)9M$@8-GA=`2X;%`PYMo&%dJg z>MQv6f5zJNPocv4Z+ZTFVew~v15Wp)b}{`cvd4bzOP62iovDw^p6oNd)BjK`U${4> zu-LFQqUu%;i4%3MEF z**QdhykWt^JC9LS%lk5mc2!HC50pQZzy9nLdhT)cf_JD-qU%3>rM>IimFD*Pj=@g! z1HBjPd;93b=>F!9-tO!WhzAvV&oDliK6Haa=q$(3#t&U=?#GgEliA{BH9eT(b62~^ z=mAi#-T7cHxp7}|u4$mNV?fr${2&;bGW7OM5uq~c9^E>)FV>hn{l{wBiQ3l<_Dg36 z=?@;Fk7b}+tnI-++;xV~^_m932){ltIH^~{#Li6XZD^Pmyyz1{twMPSZCHeCwuorT z9Hu|T@%1C;OuaIlvzj;mt=G>ioWIuXAXmbBuC~S9-X{yTbdM%3*Z1bhNLX$Y$#0TF z{Q*7kufQXIQP_I?3zcEy0*4?ry?~a675ohe_THAt8CwOkI3}uD>cnxL6=Y>=oCr2+6E?v`Uq@j z8`KUAN)|*T^6LI?mCJQD>4b9O2X7voBZJg>?0h3W@%*hw<;MFQ{_o=-`FPG9`xN2f zCzA&EXXwm-PT%`0`0UT%vVM+G>r-7Ri(Kd^ zv{W>NZuItOIDe>>~!5}V|7uQ4dC zsmzfT^w10e`ITU1wPFwCOTpY`K|F0qf~%(DOFMZ>bSXjZ0zD)fA$nlLyANJCc;9B( zg{H|1nqy$I?c90fE3NPOqWSH>>WwGR5x1@ASZ8>~&G-{|uwrFsqcuG%$n>M9r~F-EX~q^!$%nJ4fEGZyr3>&?Y+BKcu+O*fw&R zyx~S6=UeyC)L`G}%qWj_>8Yy%`SF@grqY$v%J!Wlc$g)$jU_O|R88kdWY!T2+r3HG zk<*tAO@ngVyH`3bZ(nS+(}k4`uisyF=JwZn#B-IlA=wi1*e`0DqoU+mWJb5Fm|p7fH>;RQI)Q}h9kt-;a*bkK(igZ~B`>MeHN zTimxd@d+Hj)oznrzkzOjjor3FPkIi`KAsnk<;2Ct8S;MhWJkl1Mev3O9CZ8IFiJRP ztg%JT10T6C0YV}|_~*lX1;ld!Hy&3q{_=PSTpqMWe(v)CoO9Ll@8xHAvp+8~Z!hw_ zU0jn+UZdUQFPg{`(9#V(-83Xul6#w0x^^6LY|oebFq^j&A+ zl9$V1!xdgf1^)tGi+qWDu1JPT9_>k*`M9d}N%6kYnOeewp2&caq{;hB=-oLoLd%>B zmEefd>O^l32A8jTA0qsJ^8Ql^eD+nnP|_J+t7-<~%s4Tw?`l3@ocAru2`0Cuq@bPmKiXIo-7T| zn&3ta4-k~6qBoFSh60|df+bigGNaHBQK*n%TkWq{;qP4n^J6zJl-a$@vC8!#SV^jh ztlh%igPY)uhdd*0#3~0j=-;@WTD!iNUB9^nN4$imElrPTg51Yg>#)Lo;!3BB7~N`r zB>9TVIZiwD2L2p6ma?y~U7?GXoVRR&vo1&eQVvf>F@!e=J~CI$Edb-rpa;q%$z_hD z*Fr?ylE1pLNdE@;VioC>mLocO_;r_QyK5l->Z;PG>HonQank2~-r!4mk#k6mdQJy+MKnzN_O zI(yI-P8J;lV`|f-wh=Qu2i6M>eTH{0x7r1gnQ;5CJjI-p6Dt?;?e%d)G zd(b(ox<}sq!+yEpky!0`O!wJi`mLTWSUeATsdt+O)z4;KnUBZR=ASUoeIlB+y+VKU z^IqvZU1Emcpo{uFInsY%XZ=_5r~g-W{rW%q6P17Tr^>&hzxMBVcK+J#&;OG5_LuDY zpX!~F_qosC!{_k?=;x3wxy{ZIMd572P=Wb;6Cczq@aFqO8$NPGGLOuj#1nYPC!zH6 zeX@#fGf!M6ICqEHbSIiw-@_NS#r?D{*SjiUVR;3H6ET8x71ZB`WWg>-pFDov*MW#m0ZMS*gc876YhWv|EM{bC@sv( z#|A!z%x}xYEUt%RgeqS*bAFq2o;b z>IS7c9lSO_$~JwxbnI!Y({%k1QJAGC$))zCS9SD~X(cM1l1z+gHTXK&J2LVX6xF24*!Q`9llBDZLSlhR&|6neH&Vuduaf z43u5)K6a(iWm6mcF5dgV((c`OdFMuqLB+4o*<2QP)DuWne7@|8cSz@TqT92P!R92_ zsG6>N=J(Jv>7=C>w!ZY$<(UL{@~6=Hv)qf+W% zYDw+Rtg9A$B{_txxMx(^{hc?@H1T}vDQ_JPrAr%q*~(_)w8e7{Z^B8Q*=Gdfii`bX z%|-GqYWt+~&A#Mvhi1;y)G{zpcd1)kS4-A_RHEpVjLQ2J(&@o*(fEkU5>t6MU(Pnw zw~t9jWn+E4LnDI&W5Zg-+(36{f5X4~^S?OzmtXtlrQ@eBHJ!Xv-%c($TIhPwk)vnF zE;M&e;w4o4@W;pH_nPM*5F)!ZR`bh&l#{NZ$8X znaYi?@Y;QK`^kr2WlJl+J$}0WzrZQ~)*a3L19;kR`Xn>IQQEV=W6u10@;F`{Io<9k55dnASNyLtplVBUt?1oHhK%cxm(hyZ-RySKj>2 z|0`Ws{6li(;E&<*-am@9wlDC7eaUm>H+X}8iN@#^T>CE)t2aL<&+j9xY4NeupM1bQ zeUDCq`$k9Pj?ozeXWrT?ZeA~+zT8TFjb{tpz#-SeO%J{zX4BjDNa0{mJhQ`d>(0CiD&hzT&^P zsOBsNJo%bam%FF?Cw00$sYb^~qZ^#mX*-5hvU69uMVAnCHTOuwms|SATYJYQgwk0J z9H|8k%g21}#lPUeOBhb9-U+I7b}PZ3WadY#8bi=3Q9J0-Td`$!9$3(O&N3g$(BDo4 zxpz2A>~K0{?}ZkaN#+NqEOTi7I9|5&a(!T0s$En$g_X@97-f3#~vrtZN{Fo17IOlOXIw*=tFvc@b;O`i%oq3o>N_K zpSjjapUaSBAvDT8GXVG4&C91FGtkvOJk#>-H9>RhpuD4@Q`k$F41E8Lz~BlGkxK+5 zW)ezftRw84q6^K!?qjEGy2!BrdXLi=pqivtcdD*ks3XVRiq62^+&yl;+CJo{?HqHR zYZ&n15vq3jhB!;Z*YCX-XzU(0zI&<3+&&=jpz{w`Z^X;({gG=;J(-~~^~Q+S`@p^a z_!IcQU$E-_iW%!u!HDW(`U+lwD}O?d%_r&Q+dqdh`e;~bdV+`cX{faK7;fyr_RU8R z5`>IbHgDZnzWw4LwDG($IOFq?XqM6yBPb74A#%c zuz98TBt9cQywK-I4+`2hY4L-#h2Y ztmNs>OMv%9!UhyP&Le&RQ&Dle>7i*oHp zxXxnmyh*g;DLC~MyK$P=%$%Pru=173&Mq(mr12u;*iZ2`=kd{p=!GRMK9i}-UE?yan(5^F&6&dbO*w(6BXpb72c%*5j}5Kd zdNw%gPBdNVoj7xWzPq*47nOmV3YlD6KCNCT=Z23`QdG{G!v*+lBo_S7tG2}*l!=fX+NNb;2wVXJM4|O(WT#FzPicYz0Z!k zO$Ok)kNuzCbU5IO`*PdR4D*QsEMLz~jUFdc#dKVjK-SHS?O`{ii!%$SRzxq94B=%8 zq2~yI3!xRt`_V9Y!2>+(pMEgx0B5WZOp51To*6UeVn=oGn(b)Kt@H-W4@@qo+lDn$ zV{^W#ZrOsQwo5EyuSHL5ogtG-!yG|>M9BoULFZN8MCYv;U%ic-KL^?sC*A=kxgt(@ zayR;4FFUvsoWRD8Z6P0Fu9ou5lUKWD;nVTatftXNL~n|#n{jQ1f5mKw1H%XDfN!+aiL{bDvU z=S)S>InWIlj#c#nbX%st7UI0V7`Y5_ycuY2N|6zSUuccUC(p(4Oh*R^@zO446Sl-g zf;_PZ2Ud{hCpn5sQRcL2*FczaJ;dxEWR4HAW8evh1$nQkzecY>qUtG#k-VWF9P4V8P$rnwbiAa#s5FLYyALpVmD_x7FS z>h+u6%-VG>v+LRQ!#z6K*1;PKN>eC74|=FwsBj#wX>;OzigPw*!ACM+_4E|Rc}A_5 zxo($uE)~H9vhcb&Fz7sZM71+8?ID}Nlc=QVfK8N^_VPQopJWru2T^!ik0X+1wb`&m zx$m8!^bGsK^qe`YL_{U07I#vicZ?ermaS=X4`oM_oh*4V|p*6k!D(Idbya#M$}*EC^W#Gp!jdxRKA@-iBeR zQ>eBz3&gH#onwKz9$8$hHf6`8n*79!seo@P-P}8tV{R{x$>&RL{jySraC%iRqON9w zZ=b9e?6rudZwJ%m!%_L{-nCxYZns3U_xkY*+egpUA29Pg(Ad+@$JLIf$_3w(VWsgQ z{)dO;1U|wu{1AQbqgIjnS&wAyWuH|0VV8L3C+#EJPli;M&(SUZf{v!Yr4aUaT1)tk z22bpNq{>@g71s9u2bzpOrq&MsJ9^%KwD{A1Yxcx{Z42i93ta9ms9So)^W>9MW%q;R z+U^riJhzVrbLpyJaud$tkbEj;8!uem#*5X1!}rK@d|uhQ`2~ID^jI?27XIHHDWwi-~o2vaszS2c0`(L)SerJ#oHqKs;xQ$k9(r(Af7# zb?(b2&Rlxy&;H%N{ZU;*$H~{;y>j(pV_y%~-W0~Ng;-(JhIh?@my}2Iw$tEF8dW-I zy(qoL?zF|~%Ms7JX`i;oO<-JTl9EQwLPoN!c|M1kF||cIqA)YKIF0K!?$Q0@H`1ws zym3i~zFuSYCDj8`jfxp#hTN7J{`@ooM$SdAN}^j-&Dg`!(?-8SAe&d(f*BoN+Ig^I zLw55K(Pujr@IgHp4m!2bwZI%;QtEx|;ih>@AZ2%_%CyoR2I)WW;}!KFQKMri>{Rle zMT(4gi}BJ6w(XHbo4_e{5FLQhZfTuW!a zZg50y5DZW1I}pRrYp$+s>QUmMSJgCjYv|ILowNF9>pOt9o)wbWf)GqpfzKg$S=l`D(bpJAq<16N>ugFXOsn4gi3w%%$0WE(F+ZWUE_0!^}8Pwhoq_mQuTDJK)Tc* zknD_Wt&ho`c;$8N7irx-#$$*f%eX?khv16wHngk9ueAYHjTWAyA}Oy9|_ZLc(T z4QAAO&w6S5{;f!1<0jtD+mYP*O|ar^=DMW;@$9;2Vs=Y7F}o_CHI)V=>Wo-rO7b42 z(4S@KN65itl1rOTv6lx&CiUJqlgF*mJM1#$yiut&>qjKhT9I^GMaG|++!a-AQ?KmE zsRqgA?y(7aBgE&fboRb+{PI9kpBPForU@q3b&5HU5uG`>nBP0&j-lK0d8Pp7(v=&* z?g5F_6V18E26WKbYE~Ou)EVw9T0_gW39U4#kf~VNg-uPJBh&C^x;R;& zF>IXRAlzaZy_hp()}ENf(9THmS8V_Kqm7eE*#bHCLMl>O_-{X^!mkC{_GXO{gH z8l=y_&VQmbdOv5!`4!st&k$e#ys~xYRb}_dM*u3%Sj!&!aY1H$d;PYFM8SUeT-gycK&L&oR?d~!*keO?Q&O<$8Yo}7Y*df z&e2N^-u9ll0<&_rSM# z(F&0J9k+ChD2;G>PQ5Sfp7X^P7s2b<7udnnwD=ZyY%|!*0vd<8iFuC-tVRa^ zF{!XK{>E1pW<99|oi}L+=Qf}tH^~I_AtNcwOqznq`a!k4e_~c|2xZ-isntllyq9pq zOK5k)elkP6V=U!(jk4q$(>GP3Z@Qf0c~;e;XUW7w2fWPOv62OAO|b)Ka=d@J?OR!V z*=f9vX>#Y2^!CvOo(&>sBdgo%LSw;9S`48}#)p{o@!9*CT3te=!GwzP59zZrZ*owj!h~UFWqOYKH zJego-ryDt&l<8avc9U$dw1sACvw#n|i0(OC#WAY-UbN6DcCrXMbwB5(XY0;m8~yN# zufK7+|IK%6hwz(6rKih+t0uQo&Xl#M}JNqU;%Aj=C(Vv zc?-?YJ|6mwD%XnkE{XTU^2X_U)v2r9YLUWf0wW;jan(;YpSQ}V;r;jFsq%A11ZL5v zBc=!-P6?WP1vDY)0M|+o&r}e;CxDj+y?@Bdtm|Xm_n|SWVh46GN*j7!3p=!yonxw| zZCHxjYNAJOm34{@60kXG(~v@eCRWFePA*1#fwRnvRsz#JQt5|>y9^J}}s;}<<>TtWj^(gHMMIfm0Q9@1-(X1QmAn0)Cxp zUtOd^Os`m^ig(i zG64!;iSY=#O$41knW2>=n*P}2yq7a3#=TNVkdMgkuXX{ZBMa>8COiSm=~24Glh(vq zYL=aby_(K|9N(i5=d-M02~jkaQEX}f9lg}0c$IpOQ zEpe7C(ak}AU%Ue5vH}LZ&KbB7FYm4y0g}0Qm%&+ZOx-jrm*RPgtw=)#N=Wa5M0^SHrIy{U~HKO@*gD9fINc)DD~LsVqv zFOUwr_U{B(Dz(C*B?vO&)D;A39Dy*zwcnYLC3} z?&-I_@%^_>G2>q$F1VTS(9Sl&X#cg={(%d%O~MoBu8JFbB-&Ah)$qoN+8O!+=jsI# z8;UjOz}U3&!sT|`x%yr&{6=b2Wy!PG6@}92?B(XZ6q!$H_@I1~K(a!A)Y|2a;njC* zJJzT>-(`-t&;I%T!To0+?%aIHjF7p}I;`0|UE98L?pnu2P0QddiN^I|_Tma5O1h04#{Mm5!*z<+c{ zGXH(f5&Rdfk^eX@2echiK4Wf~E7?v-ijnx(8oy7p(L; zxo`*g<#w4b=o54=bFHq1ihJvfI7`mRN}edo1YKw7Wqj4_$_!ccG0vW_H(m)l{Ba+U zvk#sOLOvhFX9^bJb_Fx!1jb5!G`!ybpQQJSj`Te5Jg@d*=j_#9c+br7?ir8mu_aQJ zNQ#u0I_C^DQa5srg-}QZR6yk%P&wyZg+k6~pmSj7Zc?O}MM^ZSWZKrq@_0OR_E($> z95%^rbfN0|-tT$-5q-d{lkDK)#&t#auw-!mxyu7Ke`cK5Bmi@&Zygvv_QDT-^!m#$ z|L7h3+rU4A_2l0T@mx{B{p;XU7?I}4|Gwc6sag8%sAY_6qw_}Y%OmA9ME)wOki z0S+pSUX{%q)gC@uD?f6+L3^&M$@KQ|ixQx}>N)osIz=zz9Q zU97)*qN3qbtT6wruygN!lH2&-#aj3O^d{H-7i-O*Mir*7>RN}sq-yi;n*`D?fEzxm zX&?UdY)#ikV>7x>{OS2$a8G;!cl>jDEk22*7d~=@3Lobdc0NXk{#au5-;3pz@0HfB z-V877Y|y!qt!^CfH}*{iMkU5X&$u#Kix2K@`v`(!r0 z^mjA*;BRK^$={A?-M^pKy8k7;c*bx#MyU_ zUphl4#l?p9p*k|HsEAQ_@*L@7?kmUn4Api{jyS``DOY%I693m^&$LyB7EOx(O*%BG zl%BoZJA>z5(=C)6`=?Z=aj`YUu_X_3w(eM4}E&0A<7u58EILOToDqPaoy-#OX~ z&ePX1FfrIYJWc+2l82F>B=|w=DyK-)4!BEGry!B>?`Q_PZ@VUL1X%nNaubJ-}_VIm!84lK8Nmj z#-DpiZsa3yjXNVVmK&p**_&v^@4_+Pl~{u}RBk%HT&ZjLQLd_;iCt#CUGmR&&EffN z_^);5&{cdltG>+U3c1^J%;QNkpXHq|3b!95e=-aP7e!ZD&WkR4!I?|(uj4s|r}MEl zhS6*WXG}r5V&ZOm3LbWD2RvihuSIuW+<}kN$+hl6is#Zfqhx$#-6Avt?9(nh)OI)v z+c=qeyo@OM^NG~r4jTD6G_F1m*hg7kU?0=E@Q_FCU$pP^rJ=L+-BaZ(0Z(Q%7+u;f7Xk&??cGCCqpK4`9$pN5rP&O8SsJ})4lKSv z=3c==ejB_xJz=>t?^BY8T3HjE1!paDgmJj*82t_O0%XFGxho+)Yd;+#{_;LVZmySJ zD-WNuLuT=z@sC*PfuI-23OC?G51q1;xnL{5zi1?!?DS==g#(HX%q8ML3uCEk>QPiT zv}w_CxwuE|XbY@#IIw%gqMU_EcV;n(ej|ppH^FO8Q1u3=CO4O*bR_x!svqpqp^b&(BC6 zL?*y4P1d+KgeRF^#Nu~35?V*t1MgyIr!+;Fx#5$?Pn;+FrlN*8gRFI6Tx$CMi!a-0 z1Ii+~;hJ38#9z5X#orbkl-u|cuE1Gt&@sGDN837c;5|?^4^`q;_ls0D7R__2bpP|&`x$v8po@<#Zz=Y$e53&YdeKQ)h+b0jw?n7B>F*m zCcC(O8_3&l1eojz7uSJ%t!>Av+Ux0Up-M(keeg^J72N$Ns24oZHXu9F(l&VT(&gU6 zc<_!lwFx=zhA&h#3ToPWC!1Tk$Gf`(GlQ2~#)WSjsh&7>sZWg_(i2E51;|l#s@*wD zt6)O@z1Q|lzj?e``NOwPTI%{_5lvvBsPz{Y#IyOOOM}W~vSF^Q-g-hk*M zbnp+s3Lnsk^T?H2ePjxj-u36V?uF;J?{H1uLYsYy?32AnZhf_kvCxMTgX^+14bG?r zWHt@{V+)yS;5}J-;8K2gHJ^d~zMTEQEE%NZjm-K0nvZxngU(NOypOY#{)xFjStlaW zyPRaRv-=l3=+8ZP0G;e~Rw!fxd#j92fnm7czRG6d@Qf=fY7-fSRXtN9o#VRkA%#mk zuJfzN<<@hSm9YXNIs`QT87rQ4bV5NJT)M+VR{(pz1B}cC$L`{Nal*5e`!Z&A-n<2# zS<^ADlvcJ4DaeTgBbtk$O-OTqJ1NiyKr7 z@j~|nl7)VQJKS&erur=2NDo=jU4g`W6W4eJWo7$n;s3kZhFwkf~Z!`dXe~T~o zdl#ykU+wM~eygu@=p9PP_jUJ-ynXQK@z?&-_g;Flwz>OcV{3QC>-$b!eBsr7wdbna zI;Gm#p{}7x!O5C7!5b%QCL6lN@{0Oi>A_Rg(lfPPT67TR4oJ5%wXLS=R)M>FOhH$k zCL^=Q$hY?8ne)>v15*X9Ex3XfZnwC$w>vSTT{&3UyvB3l-n&me`7ph-`99CA_rP49 zkeRu6p=ofTs;Rehxocvjbx5&A*8kO>Y2B^<3C*3(f$3|fFSYH_F@EcOv=% z&HYhf^8X%9=BJ8eY;LS!YcwqEXIy-T6S<{rpZp3S3su?nA z>-to@x~vHfT{oe1sz%f<&4kLOA%B%xwM8A68l1dIH6b;s$FyM`-ee;jr%s}=$u)H7 zwy^I{s2oc4_y#<}N;>Uj#$aCQNiS%@HB{uBL087m-Ir}NE9@N`HnN%wlwBI|T${zV zq*-Lik&luzGDp(c=R@c3Hg}H`5a`YNwSoDNd^Q(U&L+ZmUgPv-`FkLM#^vU+j*I@> za^BBU$P_Mldc_tSeL>|sBFCu4ZdZBIZgpVJ1*T~Qiqqq9P?4KFLoC8n70Y0A_aL_a zh#H@Y5#1j)kR`eoQuHszW|`5+c*>i=MK$A!S>B|qqDy2J)wGWCt>YpvLeZ$qHl`=X zDL%J05y&hFD(gGD&$mpDA?;R#iaT;kd}We8-~swN`{+yP9i1@_dkZ^anP*N)Mv)l5 z(i9lv_}tP4(1E|UZrpLQu3K~f?(%KAIgi45U+5auU%b>Msi)By0H*`!i zD8$;fp^>RhLd&{GhQ)nkee{r*-c2s(0C=Eqct|up*fTaEAD0O`nmfAw>U%GBRyB5v z9X)$_hI|7zI>h*lVbD}xg>u0EYI16{YvC_XWhy7b5v-Yo^*xWx867`LMj?YuI?Vni!sn5HICw_Lk zvgso~nR~_cz2ABgg= zGIRrFYMT2}Xx~$njRTpkaphca;T9R9D_d3qV&LJIfvcCn6qeGZoq3BZo*_Rafi^GY zORlDf5(x9(97cPz1D(Tnn&PKU{)4WLc);QjZp%s6bGl$D%H zE8a03+AU3X^OgfF)r-&4CY0*5WO5>BUMAx>rRx*v4dgVL$wJex%qt~YmnxiFHPGQ@ z!t-EG%xzeW`fxzDf$Hwn1^!v)-!BXDbbKvJqCR}iOEMw1*;sc zU=knE5ZuG)?%n631g8#Umv;KY#ie$&*L zLsfP0bWL{^zO`1kLgHh616^Wce|6g!)30@MT01*-;LPQb#sP^mn3y+Szd@B4! zwsV@U6h-@}MmM1_8WmczsiSYgbhM(=-bvqLJtgjB7)W1z^N{rDg*ts}&yb_0xhF{X zZC1%}bh%5oDpA{R6xOdjn=!e6=86|TkIr5BCb@j$Yx=0ZBm?bN^hJD4cGxeMu0Qw^ zPuS0`f%)h3U_BJh*vOnIJ_;9h9_QDt-y<(#ozPx-2sWbdwEEYN*NmR8Z4>si4U7$U z3CDZU{?q#@?(Z6zsc+~}~~VM2KCE zzWDh7bFYV3JSY8qWPHV4UUH`BbwohjFT#x9$r9)#ur^& zSTV96k zSLaKTeZJ^oudXG~`Y;KA zVK|+W3ac0WRhX>r1T$IEnO=@SPaNP6v-nJ%lb*I)l>_YYrreSA`3()Nsq z^l$DvM3l<%ToNrAl+HE+z}-NW882Ski{#g@of5kC zf-5GRqwMS8gVfOFQ5YQ5zZTI`AB3fq4lW@A#m?H!@~Tll9QiRaHOG`o{iq zP5Vw%cCmj5RgTmUd{SFe|70!Csz&^7g87}hee{krgQK=*SFbmoYYb=eDk8fpH_O|FGhW$=I+Nx9M;2fZOn2_XVBAUx!((c z%nJRl=`^2H0*zIYPTv%E9J)2~8FsBSp(tti*VHt*|GXDTwKJL}k2B9+j?X_j$1{db zi|`!yONmT_c{FGx-v1Ils5!o85fAh{zK(g`m*oBnjS+G;7Gm?)cl?FT?=k>_`L!i{ zRK>-scT4n(B#u^h+Ag#Yp$%Ee(4m@Bd-7Q_{?f=VlM@)A=!Y!lG!((I@?`ZT$Tvx6 zm-goArowj+iCTT}=;oEX;F{4mQ8&>&xfjT36CbjIwPwgl1> zQ%cJS*D;nnuK-JDpV=21kZ9}!v;JKFxWdwbzrEcXU1*+-EmpF}?7vjo@uT*Zo)^2i zhhHe?0CabbeE&jK^Y<>)H2tW#vHPceUBhpY2mH=Jm+-9%6?L!vhyUl#UwiY=sZ;1+ zs}G;8uWe`_tcTZYKULM*Prmq2W6z`zf{`rcHuS(9GWL39C&BR}(^|v9b9H1KH5$=1 zI^g(&U`?qWa{mS8~+zHs{cHx znf)hpr~fFFnSX2WrGD>7Zv2jC^VeLzUm5(xU*K!|6qx9PNN)8B)yntDb-zx>;l`z2 z$u*u=Pjf4~?_?M?-dOeOokLo-=r8(p`I^%F|@gR}1A@nCf z#Q#C`3jyvcGBvU;o@Z2`l?-%2OZz6YLucwodI|6w*}nNi08U)>*1m%W|F8e^|JZlB zqOLNtep|q$DdU;0L7=at!&ndgp%68YH{;fAczE3U+W7 zd{;>)alJ0iX{*8&wI|oF5tFcmS2Ks5X^AMnO?g%Gz*yUmR7BQ+(i6+;m~{;uCsjP~?sl z;PeaRoA>pwCr#mJqyj88I;FAn(d9Hy+d4R)GC7b0rDSqPo@$S!nR2E>C|MG3T)hcq zu+%9~_^JjZrXz>WRKM}|@eBJe^-P^SS=Dp8s(tjrz?8nGXG~LfxT39wjIk!I($qOB z6n72?Sc^s_y#sy1uER&qb#!+Q4wC;l*3~gQ(cdi;DaG&(9X)-2{?~uo{mTAh(+5sg znrd1G!=cpT%F30yo8|0EvBtWYn%~)jU%o=8`IX(9k9KqOo6B&>@pJW^)}J0aCBNL( zFFta*X6%i3jt-tYUpsK*bd{j4xqsx)soJ3<=W2$}RyR!?I&^C4r~6MTetP)4>ADALNesubTSBW#0Ykjhjz?nc2Ac z0lgS^;A_?zdxx`NN2S=p^$kO0aS07}mfbD-=CKRjljrIKZ9T#)*Ul23#|k>ootED5 z+nuAzhbJ#}Kd)#R{*Y_qBmAMilH1e&>?>aVQ*LSRk9c|iDZ54=;B4p{jXm%snJ1r; zBmN24?icyB-Cuw~eK=!HJhg}C9`du@BKL8dF3^RR9w9pGR`-SGA>TV^YlHX~Q;}3* ze%2EyfahhP^omMLa2e0l23;uYv*GlbKeMt+w+Hg&uGtJbUq|-A-na1dzktp;ssmd-LnKnwonI#z<>iE&~fWH(E zM2qW|rM-s%o~wSkW`ZkM?nHpbiJaLAThRUCYYpRx3vqV1O|F=CVe>{{>)N|6waKlo zZ0J@DPGh4ld^ikT(ypXc2sUO z(d{vdCeMz&mX&48%Lr`;XCm`Drq%c|D!C`8AU{flCqtumVfUkZFt>6QI-xW}&cOuP ze&ck4On?iCo&NX~dAVb*XkoB-LesOdceiJL^D6q-M2$@Ayf`2>*NiHhm)Ev$wBEe) zxS{HD&xtnVAG&XjIPa)UDzSi z$)h=Tp>euHsF2rmiWD`iW6Fk}N%e_}W<_Ovzr4C>Sk=%qsf3G@HSvu*`=`|x>beYc z)Xtu&Y7UWYS|r$ajXm}T9T(5$wjX?yU4Qp8^3lJ5_x*fmLj4ihOrP=df5pu3EAW&r z(1gCPw8fq!7p^=OYn}JV(z*}-e;*w7Mkuqgxq0Jpk-jJQ;qz_E%0|KD@$>cQ{=3Hq zy9Ou8`<&|U6iB*SdS}=P)E(VIqhNR%-hawA%7-Hu8rA;gORvj+@cKdh{*#s7V;7q; z2hLtzL$`Np|Cz@3&NdJKGBUsOE&I{$;Jv>gFaK+1xX=0Z$MnVjoHOzxGUPtOfB!!F z|9e<7pFo`6M}u=0PWU$5=ykGhuA;ZRh92)K=l32R6ni`~cF>q^v#(sb&Gjz z9iDnKJa=USJ@7m|Qd$06hO;p?s;~v&Jj3|4qhx4BiMx!jce4Ly;$YTs@Y*nYUx2Jx zJgrfD<#Y4|CVgnOT|ARr%&_p&Zn(FIllk6B&a#6(TK*Zu3!Dk+9N_>nsvnN6+(RG6 zza4VLN@bmWlGzwN`ew?NU5=t720+WyhEu(>knZIPAQ37w;onY2H0;_Bp4}Pr$J;qvZVHFkX7D0`zr% z@T*>b{cYVOg-UR$DWgA~Mz5cQ7YfJo>puKJ#@2qJ(&~4 zyM@TjwwK5w+@gDVoBX9~vAOkI$b)af>0OUOawJ!-?P{EnRVq3+Z#?|@CK%G3EkZrW z&W%ED?P_lA#{JCIhtDHud@UE6`!qpf?BI>G#Er|*T8uUh%Ddp0n)VT@Gb%B(p!;iW z8J2dk=Z?>9+?$Lo>p=53tGCTMo*k?6VX2fO}grY z6LPSV>Q7&6oc#U|-x{y1A68a(Oj(CDzR;9DSm;#-R!1FkTcg&<`k9uYt&SH5n(W5<4G4wUfv&ppPgasNASzkiM#kmMb50dB#;-hunQN7lpL zDXsr57{GmrF>;^%_5mG`57;{&;L(1Jzv3|%_yaUFcPVzh9Zav>#FM?td%n;%B=euF z>!CYw){Va25048*h`z%R2$RVe2Y*VyAII78$d`|V$+yGL9*!IitbtZO-(9rJYJ6(FRcw9937=-{%7NM@DMsRvo3V_+%L?i&XgC7v+Own z1IW18%jv4}oAI(6yCoJ&kHq4fF^4(l5*hRX<*vVCdAD@LmWxJTF$ZRdwm+N3JCXrY z&B)NsbARW_Vkm%pW|iOu?7wMnf)u!Gidi=ecSTNJF2#9R-j~arpk(jG$pp#A@lC|Y zYoHS}PESBFA~gm>;LYFV^RdUrWu^%4BN_s-%gMn`%1x03b9h;kpTtW54_?k3jDN?8 z)0vPayM_$@#WeeVoDSBwEnJL}j}RP|I|6Y00d&OW%)lVmf{&h)*;5rw4m#fhqcUrX z&%TKNs=#cY<(^5G@dPl51bOXr0YvfC=fFBL`02|&r*uLvV~=wUrJ1eyz2R~nLY^#% zIeZiI;3_3PfASLJC0;vyow)@|pj0B4A^O%A9gbPf!c4hmkY`DfOpi2O!}Po*GUGB^ zikv?zsQ2f>`IUTj@k)xhEkagM47@)9XBt5-=BKBW*tSi#Ets;SS2eL{z@Y}GU7_S? zW9I-h=w2av*eE`bA@nW+TQEPAoZEsrbaqJe{*Kk%`|X^E7cMsSztP;>_i_iB|1HgZ zFZB0}zK9m!g{qpiA2hWKUT$gZe!Z(*@Mddk@7sgDV{e@~U-QbJ{l#Cs`lB}wA7jUE zq^oowIk!3@)7yJqe0^WX$;zgo>c;-b)989n*0hUGV@$2-7O9&Eow?Z3r|%jPTdcFe z*>}#?m=9OBJNtw);riauIJt1?s+N&FyXhLyG<%~m1ABkq27Kx*sor;+j(~eTQ--Id zt=m6C-*&I6Yhn|*;vzKU99?$Bst(}-olvW7ebYM=3g@*3xPP>;H|l$)ZZ!`{ABA&^ zpQcM2pN&ZjPmi6iyF*|7U3y9GSG5j5>SX^PR=R#QAhrCC-i1GU;|u=^CXeqw_usiz z{{`*te?ueo2XyPd8J#hFEt?I0Jt)@&Nei4RPq0N znO~;Sl|$te=r=ZLbl#|utVj!ZfdRd)9tucbKC2w54RVbazU$~gLqk?^)=XBOVN~YC zn!1c_w`A-cld49<`m#YYp7~1`$uApcLvxzOemNR?zk;ki zR)mB`Fs)aSnX089(?n0Od0gu^arWblO4%fI-!RZyxpxfY1JJ7!xAE*SgM;emY1fmn ztnV7vn!pyF;0*3Tsg16uDCc)7gdU=t8ywb$3V4l@0as!<6e(;6h>mibBRT7cSgIY8 z=#66vn~5rW){{+#E4JbgnIquE5mvG_GrNt!7EH>K6pwcam9pf*4rz_crb)F&(>12m z&Y70%m4-Tjf*v2iQF8O$(NvL8!z=wo{44`k9G?t51y$TIefBu;8;WN7`MsT#h!6}9bV_^{fAG~X=J+2;r@v( zd_G+xBa&X>$aL4+`;ND@qbD5gpPcCJ9GWEmV_G()o^EaJ8v5IpUK#k_i$9iBH}|-~ z-b*%L<_a2>o1D9MOB;KSa>dmLDwFpXfeCl=3tP7&TFdgu+Rg+xNXQvX`HE{-A($OA z!fDlb_vp;nxyxNcM=!PxvA++#eehWK4_`gdd-!)@R-|xtF_!fNppU~O=dThqVENogY@XRt&y{P59+?d>W4YZ2T; zSM;z~V*MFf%;*30h1Z_^^-J%3M6b#3l8bx)f;RCV+0%bDFs}HFdkGGA?W@$n#^*Xm z@FViCKPJ22!_3Owdk{a5{ghV)Q*-N5ohk8?gQwhGgEN7a0a@VC`TDTN93bNV?v;h@ z+gCUfx6%unYhtB!kqo?L_`enWH!Dtxl5FBA3jVX9U9%30ZX1mKBu2|^ne_|r@y9sXuM@aJyQd&(LQcao~rGdI#<^% z?w-)eE;b272ToN@w)ad?qSZ*AZxUE*+sBpc0nYn~dQ&+#p+S4~-6>$>}3^~ttR@H3ScjSWWz^U2{IRaZ3 z8vAdbZ5n<)rgDD;PW}&SPvRfQcKbEF{Wt8ZUrp&ve$p!4W3uR?oSaNj&JA{Ei6NF_F;l_|aMX^;9?n*k8dG zQek?yBj}pbWbbF#_Y+_jQS_zoEkvs^=G}g zHC^k7R8-kCQ0~|jkrf~&Zwd?TBI1~ojql;WEAC`g<{6kUqcf&gEN2qhbBnDZU%7`0&NGc(tdv^ZTXH0qm)QN6INz3;5th)v zm+&CW!LQGOe;1>rt(-5rnr2MJvm1%=bHry8^KnC{5XG+@^P{Oo-w+h=fJXxmhbNEm z-UPw^e0*m38k}?*`0e=f%9&{%-b)WXi5?=g{rKSN1uv4Vw;E>t4}uSb$PmR(oTICI zIf4H$#?OwvI2D7#Oo6lH@XBTREVJm|3d}wkINgK_zp^>H5Jj^cK*H;6>l?SDp$e_u zc|R2_tVPgx2k2Jt*+NNAaqIT%1>_V1(`GtJOJ;UDBOJ4ZLIo!oe*xxeAKa^bM5a^i zJ8+1u+6fmNMv~`62F*|s4R8Y8enigs)yxBF{nm4ResxdW(AG6UrlSd+BloN<zIuyX*gNo0cj60}`PuGc3%gh0{MR^>SCUItR+$Uu3LDpo&p!Tg?%nr3 zPv_Tf(w~-?g(uYWElf9_eZY*du5gA+P%-hogOwfi@0_Tup;NndWJcczzSxQuq?2Bt z0W8F$=9xCd2n*eT zvzNyI%WDS(FCRTO{Fg89mz-}KcZ?f?@jkJoFl|Y04C_-j79W3e&y?M~IjHj9b)~l7 zv&UB6_a>H~vwJ;-w;|g<_l(Z;XI!*TO`+mbcKAnNy!Xi6yNmqk9@qOVnaR61u5?@@ zqwW^h?``(hyLeOXu|wYHoO{5mcOT5?KHTqpvSjZEQ%iTj(+I38UB@%MmtNdmhI>hJ zK84AeL-&ox-Ih$SN3#b8V{%gatuIw(^3QVKrg=pOn< zT#m%5Q>gY>dLfOGk6rryMGB!QHir-j+yg2y*YY~6nz76e1!O9 zQuN$qbA0cd(w)voZLyR{?@xhyWbj&K$P-M1H)LmHOIb2kQgje}$K9iKi1R+g;qk!) z@KrezF`rfMy?`vndp#Gb2J)V3_?sgwZufW=H__iJMF~BN@Af6XzT3cnixI zLlKQZep2J3D2O4N8SqCUpVuj3k{1i45E!7)LzTjtE((aFG`nNTXpW>muk5 z41=`?O5i&Sc!lQZ&L}V&7V%@0IB)04cPPU9<_x|=@vIR;wkiFF@eGnfUAk7N>{M0UJ1hEI_Z$Nk#S<;I?%=QE6@XTQv9%E zbfArqLnUISnIz{!sF{rqd*X9K!dZuX@kIe=PY-=htz@d7$E)e{?#s$1f{6WSu#NApK3n&uli$JU`mu8!&5SDX4o+m$T?TWFcC zf}h=itKEY?S*)n{qsv{B4_gLj-aFAS@F`g{zhSogQ=+i)?>x)@ogMLi;34|A zPwh zI)gqTV35s5tY{rAlUkpS&q$-R`ZYsR6EMU|S=%ytp}tqld|`q!F!oLvRhN6kD$Z7Y zx$lU1*I-Ys8hPyo^ub!Z0~%~f8oHT?!!F1v2A9xR4UCbT6v(WT;IlY75)-CCax%4g z1G#p%i$$ZgOCajWt=}9$AKQKWLPHlZToXojT%IVctHb$qHQG3tNMRM391*(Jvtz4! zce+Q#x{Ff1=TvLI=+LREmV?ZOC$Qe1IeDq;{Nd`3+G(AqzNdHS(&(V5Z4m#za7f%e zDU|i}bq#gA^Ul$>`i8C{LHEdnpm$_SI3$wFrj(L)#DU-c!H>uO>kodSK5@P=WIzlP z%q`s1&H8UEOu@%-c)c4pAADR~+j<_#EIcB=?xxBb-1ddi%R;fHfcGnhnJM89r!4J) ziK&<0Iy!Q+s(pfIzAUq_F~0B6v6jDl;q}%N=PwH?>YB$YYFou8Dw=fXYFb^LUH$Ps zp?n1o#Z|IKuD)^b)b^kM#S7Q)n|#C`{K0DnPT%Mqk=|?3qUqkT3zwgC zj~hNm3jB@KquS$sTZve1o6qfe_g`BhV@S(U~TU{cDejlQ^&E|VEz;zaZ~kK@ao>>i#PN6$Xp z&?!{)QIbBTCG$^a@H&FIu+9*X47llz4ahVEidL{-z+D;=EH zaa*iegc7|9>ohXzCA%-NHVfXR=e<&OjmQ)eGiG&a{)!E)f)%|Jncz!yp6_G{Sp4&w z*W-BI4cdjO?o@_a%$+%^P=Se94tDfk;nfti2mfse5JTdK2LGxzkNU2VOgH;f+_{I{xbS zU;6Q@74;oZ-n}PIU2GxRXY%re*5T&r=Dt?CX?sUxuEE;2;h~NZ`6OqspSRBZ0_wpTh-KmlKj=lb#6r!w@A zUJ>a$&y$P0ze2C|TdBeId%|D;nT+^alV-EvvEA@QRe9= zyJm#0y)vg4pqj}?{+~-Iw>a=~xp+Q$=&&FcAmC#s2(f2I>0*h)cPB&S2Tbdno(a7> zsB*`{Tv!qET2ka7mi6Z;w1G+b1!H`L@&5<$6woEU81!V9%emKh^D++l!Dsokndg&H zW=|@~WE)3ADH@!y%F&;y!8D8-PimG7L$c>{t}>5JuAg&QF>4x;+fC?G%{+4qZ~FM7+Kdi2v?`cTn~XZ$itARsmRg6I=t%*t^vn26LG2;++{^RP+$ z<>-P7^khd9aEobIdNBv@p934u^SmtZ^Ud+l&Z7f|o6mz6tR|Lky%*#;qj~YgS0#kj znH94Ek3ghylP%zLWmZD-J9oV3r3`gsTA&?pITPh>o&_&Gr>iTNt?MgVM;n?2(l+LyPK`ZQKO{DsdgEBl z;hKhl6P@itC)+!QPImW=pA`&ERn)f)RaG_&UTW)?w0HDN`+A2}gY5$|!ix=qbo}%y z@*DTe-BSwjpTBiT@RR1j;lDmvJ@SJi=cdRfwDrn8k*YpPdPLz`?wPjijp*X{wTZQN z`^AoXDo^35)}Mb4H~EZn=^_65hiCwv7~RPy=yo3CU3!8R=MmZKfI@OhtRR#W&gj+eR2oh`ff0@awj&wbJLw#yUJ&@ ziPm~SY>Cb}l52DD#Cb5$EZu=QG_nOW69xQXIkZYS`c<;rPZ=9n0IOb{{QvJf>EI1v zdMJYA9iSJA(G8Iey3=a`w0q@@5DUXH(HB(mCKqHUYT8G~v;nckHz(?o*an-03TW84 zT;rq*VRP7Q-HGq|H$<4DBZ$<=b#9a)&GB~NN~0bO|sjZzVgzRdq; z%6@n-r5G7{as2&hIQla8O;~q6%WKQ>I?@t~MdAE&e9=)~fSXPeNHUkjk5%T%$*)hR zSOoCh#9~roD9Ya#8Y5{u`dM&=3|*-79{H1abrRqP@ezcc;2&h}$5RrmC&~;JWd9E~49Ms>2!U

#XaUJ+9o~T=)b9mV&p*?opT6@A`2+XlR< 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%0Dm9(Wr=C_FOq6EjCyNmoac!O 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

#g~4p-8K*XmuqWWr9)A9KZU1Qq114xf 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

k`B5gi1n?o^am7ZSNM`1thv$K}=RyC< z1wMm001q3(l}yyvbmS{i(NB|=IxA7CHg=$IhyTfu2a2^#qA<3hmv6)TaXaQWI#Bnv zqp!x-Htc=wHuRk>=r)YesngZ{2_EkgJpO0U3>-7)ZJ*(BK7*Fvm;tx|YR<30?|-8+SiaR7 zY$uRIcT%A-p8yzh5yQ8gX4oP_ejtC zfAsvo2cQqoBVQBP1Ni&@qxC(~1s~P%N8JDa(fot&#~h9dx*NS2+5-G7ofiK_|F6It z!I4H7eJuL?Bdx)a<{xth_+8BA;BUJtpe2F+r~40h-`+KtJntDyz7L@p_>0=$IEER3 zFY$Zd;rpj?Z(TqydKH}J9bgod3T+qihi#2GC)))Q1HowZP%&r0My{C{8DkRkCQ>01 z0nz^&kjY@C(}i8||Fu&)RUUXc`KU~VpCds?wNTpwKaC)~kwWn33Bw0I1RuR#B2C=e z(7_5ewKGFBrZfU?%y0)q8fvBpdkHjNFO4tng%?ifK z27f*)d~i+hYSp(hWE%J%su(P>vazXCL1Rgk9Tct{-t#J87kZK0Xy{}}^sOCS9UfPU zId?65;MGiyTESqer0}hiK;wkSNShdI2kW+*hdd+(xN-_SDhc3cp?7h%!XKweuCmu* zZu>C{zR`5Pu@YF@L(~8dfKA*M%PlvcA-{&c1^3~ zwordrB6nQE_s_tH7@l|1vv_~b!wda9{P^&DsxxAV`7C^wPQyR#6rH0v&EcC*lR9N5 zn@Pfx@K`^?5h%}4=#tYkrtB=d>(1B1uMh9tMJiKunZi(9g2(A4_!C^hdvysuOPARA z3|{*Z`r!-kl04N;6r5%-m1kSpnWt$C86Hz{P6W*WjUhf$-`shc&61yiC+1lKfqPcO z*PrjCOV1PV_a!pxWfn_wk;YWQ%hPa)OqX9IkVF^ooG)?tx=VG9vJ(bQD~x*B$D6+xl?kI)G0ni?i8Im@)YT0DB!~=J&B(FB>4K1 z@E1J+fBzFai5Xw(kHfd>8wySK6@KSS*x-N35*favvo)W$lX#y|>7rxMQXGTV=P~%a ze8ytQK4o)dpWKjl& zBdmgMMP+w|wdgJMp~#2x<>3H}WM2p+a#V?F%! z>fzU3hm5Q`Av~=4V$)*=PhAb~Pk8GoAAxhJL0$A1dw;b^Zg>dI5i&!}_kpWdN)?7G za2?gqEmi?zdx&|GYIt#1Bip`OqB#26QZ2-1=tv#|d#!^mtDYw{*TGY`QDO4J56snw zJZSi_`Hp5z+kxk`Ys|jiXPDt1-vMuaWYoJmkmClgGWd@{mnT)38=*<62gY6}km_qC zN+ae^p}&MyRRiAdNZ*U-q9$axG$9YY6}k@e1HJ7>eY~r?uN^#pEBftrySJ~y9USWL zhlip4jT%10B61Qv@^kRErC` zV{aeyxZwt!BZdrccn#S58r(g}qxsw;-vP`X#~N^dHo5}Cjldupbhc0f`1(d?DA{Za zB*BHonr;3;XcYQe!O3IBBGwM=1$fX%JNPfmISjM|tAXEnPs@?N8&6?sI`Tr)xCT4q z_Wm}B1saF&*bx?Uq_w~tH+m~qf4$iq1rF4Eq_O{f4g_8aRnTAF#|->!8F&tj(S8e> zt~sY0eDun~Wq6Znn~oV6P`66WyBh=bL0*iM*WONUR;4dMtb;pIia8d|96MEHQp0_v2_4SVMx}zzM z$r)mzPDU1=i;3sX0*1tb2MEjNim;$JXB({DOzW_!a)F5X{`FFeZe z9R00Gn(OaNv+%s==;!J7?!ivnH=XF|=)D6Ioxs^BMmIA1Y(XmK%R6m>5t^-Mm}U*c zX(msM3J-n6l9-5y^de)Pg$gY-^7`N-0NoHg5(%I{2+-~jkrUV3kjH!hx2H+<||Ey$Z_;wrnE;pf+a*VC%C z1=`HO6p{l?#d{iOk3ipV>$AY;!~gPbKiC*33X7Cwe=-p zWg1U%2_X(wus2^t9d?By)L(*k|3&y4UPNBf1@JAGz-wHFSMMeGie5rZd7+)ef=9CS zl33@sj@t1W>b$EouIdI8eq&^|{4V?_?lHKUJMd7y4G&cOTX!F`UDZbDd9c^iz|yUj zhs;0;vOk5${^Tm{O?0URWvZf<#@E&&PoRz~HrF8Q3Os%{JW_(qz-};`6=|30+^xt6 zX@SRWGtP%*pKPC^Y5fu`?p+~=_`05e*wMfCnAOU zLvY0J@yYE%YL6p6iBsyMDOr1JU2cE z2KsfE$@d+ytxst5UGTcHUxcRn24?^6;r}YpGe5!^UhndTTRdLOjXC^nUG|=Kt;I<| zgdY($c|-gblDMo^;P*CNx`fLQ^v+3d9dPqo^e=*^wrV&R{0i86EdMGKLg%mOz8t5fz+5>j~nqOVaR@5n5MXR{DFVtmvzLS$Ns;M2y3CYFbK7aogRHiNHZ z3KeE1{OpnPZlu6#p2QRD2t0|lgTYs{b0wM%u2@Tiev}LyDH;6@k;zpMfCmu3^|mAX zs~H}R4fvb&z$_XtJKU(!dF$b$U&9k>9>d4(G1fyhi>s`JZ{mFfw%ms}0X?P_b2{Dk z8C=C3a8I{^H(=(?bqiegHSpXQ_?X>C-qUw1zUnLNpP%EN{tN!z$9%E+Lwx=~DATeunk)p+IhUmm}7^!w0{Qny!K;QdKay zvUkvz{1N=|A4m*%|A}>f;NWX`=)FTb@&n|^-$6dlAC58r@Ls>e7HHnV>pRj7yd%ci zgI*Zknu-c!2~X8H>B4L3zf<2|*(Rt?U+9@_mDaA*XcP)2pT{A}PKd}sy) z$aWXvy%b!ydWV1MVU2>IG#HxLa?_nUvgzu*Iy1tO?AKaJj_Vy1`>l4e?b@Se`<*7D z^JXj2d8Mk>^^hm@-e7Uu-`%TpoUN*J-zL-jD3JZ9>zZ8G+KKL~RGQ~@Gr@WDQKR)z zRh{YFttwLsTWD><27I-)ReR}Cqw-2^v*Jc$hpZAN@K+wz@z39T%zKDHyZa3!QEdlb z3jcf+S!mSVuBT{`Lu?x zR$f>p77p~o`4zbFUco7@SzH9Lld&rV1-}!^8Po&hYphJoa5*ICUdBQn)!hxp31F z9Jvaa!!=KI{DwC+dfn`gU-yJF*P%(i3cm5Cw?BI~JW{wHN|f%qqS-t4Na{|{@YFs3 zK>n_)KYPm-N#72qW-8YYe|-Gphrd6JB#JlG&e%0)EPKP&J9f?N8@_7t3|toLJQwIv z>v;h@WidW+6}dRqbWtJYs^6S-+?CL{vZ~DGHGXB6fSbXRnn5s1R2Oso} z&Qy)$mmjY^`|G24cHuTx<+&iGyaH+-~&en!Ai*-FC)3u&h{&8Ta_{iNi@u(+JsxoyaD!qLZmGB39;Od{aqj3-2 z>n;;7?w|y!h2F|L|2$Y~nh8?k29&O+$C$dU$N%R)2QswmmX& zGc>w*yC*qwLvD>;fkyc%vWTws3{PJV#;30L#tYYC`PEB2z5lE&GJYO^LRYyrGeba1^-atY*%RPv?-80#nbst$XvsxEuqX=OCWg$*W#QtJbo@Zv3A~{nmgke zm^|G(zI4VtR66M$%%8w>z~`xNdz0mFacz$GPp*C&7@j$%bjCj!DQ+Gcn%ekFS9tu- zTF>CSxGsOjef6F*n*9LR;KRU3>BC@Z_G3ri&)-aq<=i+^%P#wt)pSF`{ps72-v ziq#4#azjW$V+9#A1XQu|54BX`pPM`79}$?EW6e~_*BVFkj3b=BZ1TsibOna47+o>o zJYDCYAvljbnv1|JuCdwjd&mW906tC!2PJ|hlN4Nz)bEc8=mI(Y>VwC$>LwDimdIiw zsE%7l;_zz;Tv0tmAVr-jM}C3uUJa33*+dl51!`$4l`neOK;l<5k_7eWypfY9Z6MO6 zHSG)uiLX-)POj=bg9T-~K+mi0;PUu-uZXR%LSEtIQN>112Vch`3G{%eyzIW@G~g*G z&DuKxXv;`wWvhrpo{^@uMHujJryBwZ4%Q;Gl_4eFZ)T8)LL);T7~z?FQ)~@%!ktnR zMQZCI3(S53U+*KR!1;5u?gqZj`>3^3aPP*0x(5t-SCcsaFRZ|Ds{(wm6!X6NK&nmQ z9&A-X6KaW!wS-dB^@uO1mRP!LRqpp{eTPFdhXAWg*m5#nDno$1$xgFJ(V5)U&2^(aZ`(>l<$4>Amg#krGAc8>X0oDQZt@h8{}I;&10E zzQF?R=xbLjL&2J*3{5UmdWLfZ>>)&7EKhaCCa7J|QUr#JoKSW}FuHgs$}BwP`G%)i z-k~BRGCt27%B?Vb!-dZ7p(1^7YKt{6xyl&GuQ3OvcbKuMb$Yz8L-!5M(qh>~T6Aoo z(?2v#?Vntr1yeH=TWE~fJzO9KMvA2H*gUC!e6d68inaBoW{9!W3>iO1DQv!_=T=|Q z`zBXt*sD8-3hPw79#T(gp3;|J?~F_=(XpQK91Ap8Uz$1h>^ITa@(V$5e1R9wtqVqH zp9qtSPx!;-U2b=3p04%|ll8$g#St$sQcF*H>E-9#aBht?P~2kRaXb5`Ryt$3_0B+g zkrGHRkb1`#2{=RAtl_aH=RmG0xBaFekea_Q(z`F*denUSK?C`G9g%aHz*S#sV=8Xc zcgpUHyP}ny$XspWXl}M5yHujL-ym^SS36bq3q+yjL=#K$)q{50=au!OFWYF6@7kEk z6CGUb369En+8N87Y9I^0bB9uA14EN1E?2f3t0VEgYUvbyUDZVSx|u3C-b|AmuWDtS zz}IK-`ubnD#Q3nJxTTz}1Y}AwP2C;feTm@R;e+ERVP=I4 z%{>|VHzG%BrNNI9od1!RMpz7hM=}pg>26Id1;i)C_jTAQZy{TDUUuIDk%P#5qCztgD`E@<^WZn4ufdS{JAv1rV$C;|> z&#fp2CKna)+@d_3E=va{7Q{UxdGX-HqBJ?R0cIc}3MHnclkb; zbG!1;XjwM7xUU$QT9J>Iw`B3j661E5}|dNzLtw2McRLcYKncp4$=6?0qke zX68Ar{tVMQkY#lb<$0sC`=YUhr=r2ax*#^O#0!nia`3)$2B$UzqjLwMWNAk*I? z8(-pt#~0Wm>v&hAL&FPz1VfT(Nu;PUcW`AzA(;1tj_=k(sz{oVUd!$Ileoe&p zI=aGR?V;p!n>9GnAk;Z)6z~Di`$ymbT4?dcvP~-Z<{|r|hOc(kV;^e^;C}av6p7y9 zV!J(*ZZUNawuIAj?Vl1;9&8I`DUrn zUDL{x*J6&OtqXplGFwlZJ3c{nL^IT2vP6q!7idR&OLsg^?aM6CETJ?toSE;8W*0lV zvCbR=If8p|s$J_HY*qkQQvn0R+HdO~F1A^M$!2S4v@MjH>A>r3HA2s14#eyAzIcN( zHqnH$t^w~^ZTC>F)*sJ4(t4uz70~!$FT5@?d9U)cu1kEK^OD@;Mn5k<-zm~xHU)-n zij9Hme68!U)Ed0PhtCpE=eVTk>b}C&xi1sM#!F(8=ZY43d4(f#1$ikKkmYz;E)|kEZ2FxsVMKgr% zM2Ql^9@3XxrgV=?cj$d1EuMJ3bzow?QKGX~i`8a$zxFg5;E@Upv>g`M*av&ap|Mh@ zH9Ah!btfpcz6>=sx!Bp8nx;DYvn0It1k^pPI`3dB&Tj(VFG5!|+kwAN7?@lk^rmOq zf}^v|(TU}T{`_jKvwxxzA9q~?lehG^2K`g3cd)13Lall^Fj_wEis#O_-^%q+x{Xrm6_!H{33Y9BXVF`^^c!x{x^i3>PSR?5QefMw$?!O9C&q#$F z+&|yYU4iVI3Jv&vsinJu0?%=*>k5l+r~SKA=wrR$#4o z)IzFgpdyQy&i@ngzCWUaJ7tJ9-_W_ruWK5JU)_G#aJ-GeyNnFjnHUs@%U2A7G zdfxgDx(LxniaHb*wGRZm`ujX~{Z(Rn!?pH~=37-Y?T_m_XmxEAZX1&?YNYZd$c~cN zw$U`e;07r+CP({#$Op|nY&E%q`U|%n z%I?<_RS3h-R<%%6_a3z)SeL7%aMcFnUzr3Nr>U8NF#0wc=+=tyO&EP>I-rAti$kL5|y1Z);nF1=l&adfBl#IQp65y+hF_Q&AIX7AGTC^QzP!`mc#oOQ5-{>{)u^QFrL?@3+vj**o-omoK_|Z z>x!OaN#g3y^VH5T)8y-CsBGa*vEEGw4#*kGFG=FLB?%r=5FVT1C#Tmr@I$6FP{ah> zchupjbuvY4Xkn`C?asa|1wOVNB)+i?^#U2Mfts1yL5`}oo-Q%fp$}>uEpE0PWq=yG zM;dTGG{wf3nnz2!P3hVF#-*pfRqMU+%WZ7+X%A{_^jv4W{gaAOU}=Fd$u;h%0ksCyST+$UOR z{M!~fbl2UnOOf>4?a1i-9S?e$SbE{^*v!HG%-YMl@u}4-*jvwy&F-Izx`e~x7q-|rirf8Q0&ydO@_e>gC) z@`1MxUnh$n4dqrp?awS93npj2z#02hC{_L%@9(!bA5RYESI=UL3;ODMBkhwdFd_s%NJq}LtkJ)wtgMer_Br!_O+HP3;*nhOm$m&KAW zzPogtUM&zytE5JR$EytYG5CM;QM0awz&6vs22|1oma7Ds;Z|dZ0b%rpYmXX@cWRrv zY8iazeJa~kD^odPIOe!dW_cO_a6Tl_9rqjBZIwi(qng07R<@8$2yHcYuodP8GS}3I z4^aNPst%^2gC$jf#FHWvSNMR!;M~CaB=Pj34z5Z{lR8u)bFZ!iVbCosy+vw?bf@RG zhSy&HmL8qi9vLpK4VSiFj|@(&#D|LOvFOBNbZqfy-^B8>$Y6e@cjftS!RhrE-t5A@ zV|-!Xo?AJz=2s3a6Duzb}GAMyw$M$4f*9y{~(SOH|o1b=N_Rytcg#o;P34|!u?&@H@RFrv;R}g(A0W$@94}U zJWl<@(i7Aa*{0POe<#oE|4i}>6pb}7e^C1;R)|xpuSuE3r?jcf zSB%pBPt3)qzc33MuNYICZy5VO{Cj7jxK1jsJ*Uhb{6Jee{Dn5R`<8n6xBsLqJ^yFB zJ3igG{QTFB^(SvSW;UO-miK;YU3l_aYjNXMLv(z;Zgg(HY3uEOYg>8w&(`I`zqQQm z{}tD5tu8b=*N|U+-ZV6`*N~on+K^p%(wJR6tm{b@9}i6|)Fh`jABQtbl{ix$gp!4O z@FTm6z6f~9TGhbh+QX6Qt^4kwshiIJ$(tk7+xG^hwyVZhUp&I&Ri(;1)!F4&kJD>! zYqHzlKgR2-LQhmVT-tsx^W^6T@%-xD+|uElP+{PQ6@q1SczTvZ*uYSAw z@?ZY1E5pUD6Ijn*V~u|02&KRD4&=U@Ir!<^#_NBcjb@jQM<-Xm8<^VoCRW_~Cb#+K zGkYlcdk&z&8my4O2S}jv{lVz&`#`Moeqs)%zwV#f`I-qILz=|&ohv?lHM8>KLI1?s zL*O!%c(3ltY_TiIU_A#7##t(|C&B+;VzU*u8rzxh?(tK)g9#oqivsAA`Oq&jnuv_X z55GD6==kM3^;aG?v{tnno~|~{h$h@=R~f-0w4d!>qjpzvHDV!Ebnq+*%gYnzt{#`}?z<+9-t>G&VdFKWueeR>&21C<$I>H)1hO^-@a@L1_<@)vhSj)RW|oFFjEu=l3+J`KOwh zgTHEW+utiD)?Q1?2Y(d~miO4v>?%D`-s_BvFVlugJIvDd8#c}a^xy03{^Bk-n4V+w zXXluSnOz?C0Zw>qjyp1QAQ_%L5O*hMIEJ1C1N9{nJpvnj61yic%`o>2Q8e&b1HQ%t zR>AfSmU#o&CCT9QhH`xQP?K4Gp~n9Luc;ddFt@=wJAwa9?etxTRZq@voNogP%>kldIa^+=ePJz9LJM4`dU|&t;*pd2w)bMvA^q z9-rQl4bSdL0?D!fb%`Lm{9Ih#`&l$l+Ts_sf8cZ{%M>}h^Glm=$cu-+lFPf_KSr$c z*?W)Mzip=Q&LDpky~^NSb0GNuebGa?qwld2Ga&ZC;$yXM_#RPYyxrA@9E0%KEr!Z{ zN$HB6Z0?kN{;-|-Sqn??c`Z@&6=qP5n*u{8WVYTfTc9;EIsISzV#%)?sM3$y8LE$o zeBCE)Y~`mMrQ>UnIrz=PHs0rTB+*y3?cDEfR1wbrXS%NP4BV=2VctUq{i9~OqOOT= zX<>UtNnBSPI`|%<*BvIo3z7s)IT?PQWbj#pPQHPPnRGtpkHyez$e>?VV}{z$nK>in zaSY{`?eW~QE5CZ^$uIAt&7E_kW_KNt?4lX##Q@yaI5xX$N=$EITbR+|9y1J1E*q2O z4de9YD@$f^-;yYR9$bfpbn)=+Qjsx0r!_a zQCii+^GmA8SV<8{Ppd|zH&jD~RY^~xDDVzU2)YMz;yCaJycTt8dP|uqZYf5~n~KS$ zr<&sCYaMzq?dbfzW_1p+Ii80EYX&$&L71M~ zmrO41NhTI{Maj8cKI%En=*%XoKRZJo$Su)O>yg9bGuT5GY5w7SXJUGX(F+_5_bP3; zu-ZA8TW0o8EU@GGW%l6IItS006&{_Thf`&&g&8KE3my0e0oS_$JwO$aqquSW{LLFO zb8kao^L6Lk-fPzE)+>5!a)~xl+F zcQD7cMU$Mq%nW~UYE6(`eJ-3>dBzPSrkSWUSg4CQ*|q1~kz@U=^(XAHg*|#=dZTk}ZkM(E>=(|=?pwy#+%|P$X^)g!dD1pGwcL=J-Ks%fQJpAl zKJdp!;c3x*9oXhAb5HVa@8}UfF!8W^r0{U0wDr&$N!~}Vi;whOWB1SQi1}{ROAA{XIP}kZ$R+`)f2^-nuRy zW+~u>qR`o(jc`#%OKYOi)+<$VW?P;B{xrGvQZc>tN|9fCDoGUAgpz5Rx?bof`|^0QxCab4=myKn0Y z8_#P|uUF^SUR6%4JikA_w0CEE^W}|HY3JflVdKnDapOcZv+zx_y!|z5(l6q<)z7hi zeStmwbJQ50%|H9~F9XHRKlkU?{#4w4{im7T?kpcaGmgBa6{Z^y-`#Aci0%p1_F6k;VCh8C{8`msz}eYulV zb-tsu`X-ZES4m?uJti~SAGOhFT!onj4F$ilfhwR2HF6qXrIXvDMwu;Y0)As;$!$j9 z@FsSb*GTNL>+VV<$~$C^yq+Rb3Dh>d#N;yw^=?(CP_G~gbxMjvqhLu53WnIMm72Qs zZCsg_uXUTSQ5k`qX>H-8j-j;3Is|GVM{49EZ<}7zM(b=O^O?Y3c^%-@mG%(!p4ZOq z{)~Nedd-ttJ@k&v?R52LW?&DLRe^sKn|e|VssPetzK+0BIuSeF1$qPe#J&vAo0t|l zA{oG5gBUsPQ;p8;S+EZDT(whNP2^#8V9>jA_-p^f@?k8Pnhy<6ZS@Y9HvG|4-X_!A z43SjPwfgMuJ*o1x*VCW(jFq;#r&bPvx#cGwi78-KI-`!o?Kh#lw|^Vhd;8BAFaTdL zQ8XwlUgO}zjAv@&nZJK>-ZQ;+=-+txS5I&-Ys=5=*hkA7))XuSfT~fT?tn2s|BG>*?p^SDs6< z^LygL^1gii@F&gQ_y3|;eex5(u=Seh9Gs#EjR6ukJ6dl2CAYlyhQD&~J#S|7IXk=f zl!02EGBCMRgI?@GY2)>sV6uG0J)Aqi(bzsi_UC6TrTs5VS=XoF1dkzl`Xh}y`hiew zeINS1kCD;yG0)QTemnU21~R{*zJpoONann&arb=zJo6M;f|+Ss?=|d44cp)UYg=G! zxuGXL+w}UM|C6xvi~gP!Ir_L1{g`3eK7d)RR?VL-OH%~{#XHTMbI)!uMICzB< z3(x<43OK^Isp-vc(3gDU9GLtPwbWNQr;cZrpPd{kY#yInIXs1X<_vm^bET~xt}N{T zavj(6I`*PllPk||k1syG1MK-8FzrX1um9Ot+IriVp5JfCZ@p~*Ze0moz)j3Q-i2Ra zCHVgu%zPoEQ{Nv1_tykZHSgnpNGBs1! z=KD=#vryx5boC6`ZxTC=4FGH!I+zAzp&M)4=$I7{y5UdZCnIF~5u4{}pmKbjB2$p1 zvUN9+IBu#y?`10NUY^qIgs#jX(0W}If!>A;Z7W;uu+ijpBeIvZbe={{kQMEs$PrO_aCWV`DSzW7C@*nYndhYHFDPZj*@TKmi_vk7aUis!U1dHz<8$ zGo&L9VQ^xdIxxOO!P!j#w?PRe^Q8XV8gXLvEx{Mhwe*dZTXAN$;qe=LlI5mYW}dL} z^k;H<;YqtIKG8Oe$A~1RNCTNU#?0PNOmlFQ?2cr~0bu`;@j3Jg3(UdX1{Ycg{`~%1 zPIo*@8%URErHyA)aE_!zVS@(Dk2yNG&Gg47Xgz~dovG3`@7Z7fQ?hdSGwO*aoU!=> zZf^AjACJXO6j!+AogYN$xu-l}Fk}oPwa3QG?Bd!pL2hw}zx@0+$=b_*%9jp)mM=Z~ zRfc|C6dhX@71m!%3(E(5qobQXQdko1|NK9cvzxD_>xVzcUi|GpRr^2vhtM6HppBN6 z8I$D|RvNX<+}>MGe(jKz+jz|Yu0sut&yj|5i2SG zS6}}tW9`MSoyqA95Z4Nn_g%b zE^gL$h0_n&YWD+R@eQMk&sy#Mxz@t!Vf)15L0eyDrG2ot+a51&wk4*wTY5*P8-$7X#7 z@Be9?ci>EaX7*BMcK0%R{j&25y0nPL`Zn#m-(;PIE|uH8Lx{XymR`wjJ6 zg^fs3T4|5y5*DygVOMaJ51yNjW`op96?TGq;_AIIsm30XGNe|F)$}XTL(0KT%jpW2 zT4C+eHdBQPVD)mE*sQ?Fj!a?+$Q9OJsX*hB>U@Lp*!Y|rdPY8hqhLv_QGwhu%w=f< zJK5XKAZ+@t$DF@K1DbCv^Mk`JwjV0i8+cVv2v(Lc4uNX_muP$$#T z-_o)7)56(BMl`$3aF5JT2d8&Q25&#MElsV&6l!(!jT4>ynGPJZZTi3v!5mJtG8NWF z4syw9avRAI80HS<*Az!QsvjKe_{vL1e&e+xz4+8Rx$(+~b+1P4ufl#WL#-znUwSI( z&n-(vrdDNh2R}+96DtDnQ2hAhl4xq}P|`a#hhDcVDQ~=xM>31@njc zxFtdsARkz_2w0{RxSnEW^Nk|2xFf@Q#LurNrq-V;dWQ2N-$+5+o0*s5j6LFg6~pBn zIj|OS06lyV*bnj*)#xMj1BDH10ed-cA4lKRx(&Un4ZV*QS_Bg?0|Pi{BXl^1q3JD+ zCs9)P6J>?9e?m1_-qwuG@2f)N%L)L-a%c~vz#(MgOV5PRN1&Hmq>ju#p?DKB&8QFV z5g3wll{LhZ(EDDJTBG-{=4zm^s)gRSMq!UOSz>uYU~G}P`1Cg-v_@bo77 zvL}pArJVpD1tMne$#xg?|6M+k(-Ed%CWVOKr6O-p0DpTaeBG4Dve3g@$_mXHBot5j zfknsQ7Zw>Qt_LIOSuZdoJ8;yl?%{kF&M!xzxPejTq6_*S-}u~aPj+!9I5xYD7GugC z9iR1~R}SQt_plYMdC}|n#^?9k*k2uZ5A3PwZ98fnTcWgP?a$6zGqYQ^?Cho^xAx36 zIw%l= z&_nCcpJ|h&4d4Saig0>Hf_gxVT3HHy1-gP2HC~e%&szZuScQ623*JbV#NW&T8)$7Xiq(XlysUv^H8+E+Ecu!r?nmd3KPB4BJNz503fa1uI*HF>$h!V3qSidD%Zh23&^Y$OA;rx<#d}dpiEUXCQxp|!B zPsMl-(f_WoCzkes-#ww?aoYkzxyIq*YJFEv92zO#UFhYi)ZW-bM`Yx2a5&d6GQHYt z=oxD09W6DWhi=5{uaAtDYlEq&`qA07dSE;Cp;WOkxAvrQD8E?c3?(Y@{A+;6Gz8P7 z*6?_V937ix&27EFwF2gex?}0!dro?Om!2$dlA%c;xdtW}M;HfiP;mtNM{;&cF}MFl zhHETLO>Z!RgK1enH&6?$>~rupSh%*# z!um`4;=wPZ;lg@zU?gAHmzk}_dsUO3->Jd%s~!cHFgCw;d$_cIC73Rs?;W2#6P;W^ z@33$h_w8xmS7(4}oCG#^V*bg`$I+u4i%u+kl3v*VEWh^RlbN0GKLD;!5zQ=B*urD* z6mwSie6fmdXbJ89kqQ^|0tA|t>4ZxoB zf!yr-LeUjCVUK1{LAUn}_P(!c+gRV;ts$IlCULKjd5W7Nt>Ye%D}D&u?gntCEfR3T zO*~0;olNl(&&5@k1aOJLxWi*v>{ULTPj;9>2MDf-3nXC zDlrEvs0(aTYrw)VcrehSRT0D{wE$cKG}daXH>~HYta_o!p<&958o9McueFEtBAwTu zboJ_CZl@**w8r3Y-llVhjZN6-+8I(6Q|(YmEJ0B_Q%1e_xS3{fhB!>IfsbqmIbZKF zh>b2-O^gP>-GM$h8~|qrsqUH|wYX!fv|$16B_|4Wv^JKCru7UlmDUi(P>s-@Wrfg2 zNmPzL5%h*qr6UT9{Sd5+M=aT;mlk9i8N@oDXX(k$aqK~Z*@dU^fr+)4XQU8x_QVmw zW`y0y5V*;MD9*CpaC#vKzBtr9oC`-%b3F!kzZ-iBY*Dh2p~?Ay-1_rD)a7A#x4;0< zY0IxXi_Go)*k_B5^}v(0H^2NW4DLUGv)zmP)H}7j@5#(=JEG$=kb&e);4+QS=pyE3 z7_jd+E`8a0gvmm)tmNxmBDTsV#u`-vfN0Ih+OO{PFy0UwrB$ zc-~Xc7@fiSd49OCaRI#TMLhS5k<`pZUu5*!l0u03z@L?<7@A02)S?z@;@eSo!I4G+FLk;K@D8J7fJarF-QVpT1lAXh1`Rn;mkUcRTJux0Lv*-byzx3ifkw6|(?mU}H^BP70E ze7Jcwk-4@Ow$ev|XsVVk@wd`=-E4&=#MOEGB-Y-T)Z7z=t}Q~9SVD4Zu$QlM1lU?v zKwu3AAUN?*c{-QYIpE^!JP5ROStQ5_!+@Y(ZVh16Ct?sN>;|o~&jMYOg{!nVRnB0@ z7)%WXGpp%|x!qiLW;2hPBsVs{RhZp+Jq;apes=H29L~?NzOmW#!ro8g;3JY_i~EW3 z+5M61{F9;b_S<-2^`LL#>D%bbU;cY|_3#(}_{^rccW_*t$S>*hOZ$4@f6CnAQ)y=L zP|#o4;b0APh7*&W^E*GH7k$oN*m+6O!7t0|?<0+sHko4!PnZkaZ#qXN*T}K4S#o}H zk1~)fk$Mva^!hWM@v&J(qOigm$ggsML2!q1>nvzwn9z=NM#svG%-k+JxBQfoS=eI@ zOe}W-_ospfIKtXHV-s^EH+l!)gH)U&WKVpu-5O34!EewUu?!8`#ZL6#on767RP>dc z$z?oe=oSN`3;go-52C5{XMAfY$wiGJa74y%CN4?l_P;;UI`F{@aMQC}9MnFX(b55G ziV_?94YzM{RS-zb2)(hKZ0+!8?N9&yU%Kq_Q^mymo?`RaPfB0{3UK+##pi!hEk5}{ zi2aZT?W16R_l3+7ic6-pUZ{t&^Q!1bQJq@U{cy5^8ePvpC`lAVFq;C7o-<4Qb64VwF;0f}Dy&vSm(;K4xscq44`H66RexG~r z!#~)`;wr5d_=#^Y1KgwBiJF@oDWW%9c!s)Zp%a)i1$#Gh{l#xAYh;|7nBMI~4SJ*{ zrr^5Jrgz?Sg6pD{w_ej0p8b^yo|!m%@Jk2uk4?}`wOab8+M%uMm|oeZLEAx%j?Yn3 z(>tBmgsE7^q{wKIFi_YcqaW$$9xS%z*ItuHmtGJ9$+;GA`EAMa0b&39e<9>|eyA0@ zhi*HDldThrj;EMHjS1 zC$Cigk)v{bwf^#-R|{*e&Tuupufda_!%Xcp%y8cbCrh{EnZO&Hpqo~ z4|@Gx*pz22YIn3NU08JPJbPoO2(-FdvJ^4XLzdjqQ@gb{trwf4TIj`%N@t&1Zj0zQ zp8aA}Sp1?6mPTNV=H;g7gmUHOZ!&1$=v1k_twm^PZD2@1h1!`(@X2CRw*dN0#n{qw zV;`_>Q)CPh`GN`jqGbdA zZ!44Y&!AJDHgej|kko0D4OvhKxj| z-M7l@`YYAqi@z&z|I3EUxF-v1&<^hk!sGKC+>?y{u@VCuGdQ(vir5@%#J*RD8HCpG z=qw#rZl@_Q(hf~Ws|odzK<8-zzd#0WK=+PJ%b+VUqTYk0_heUQY2TBa-Sy2s{nfwn z;_q%~+09r72H?b+;o`amy|}7-Xj??F zGdkcM=H&D?#t6zr*U*#!xVEu>YD15nUI(sJk26Xiome%E&L0|ap6k%#X)z0+!hDMy zoP!L+hBCeMRP7&~RROdSZGRu!eEGMYk(qUO zWOBiknMKbzwdsTo5Fkp7{uo%4sfcKV-SX7Qm|>;4p)#A76`_A`sO|0}7<_YIMw{E{Zn ze?#Z1Pt|vDF0^#YuamgShsdyKPUIHYfB&EVOEI@`$Ysi1$N=c49OdlU96cnf%})X! zNI~u?9Cf&q^9 z2FB+Q;}y4}$8+Oe?C#6XcSCy;z!@7tT^fN-E(9#LCzhS>9iQKY+&6NF#!g2sS zdJonKZi8*l$n=UUQCM=Le?slM=grLTcr%L!kO-{0(fhl>jXQf%B?qu|XKrEFIZ{}* z0q3$N^Q&D0nI+S3e%08YSug`H>q2j4icQQL(U+S>imTWPCp6%Ebl^y!ja^biQe_!1 zW#C>#RcdNgeY9TiTD0hm_0iFib|5>i&&=-{!|9R^GYVR7yr2PQt_P=pr8;duEoU6c zEtxV42PSa6dT?zz^n|AA?bnv^#RCJLgBJa~x^H|=aa8+8fIDC&4A|C^1ZS%peX=|- zG9^L3D-DbkWP=l{%7NUn!WTy`nORifIjX=@sDZht(L<_^@C)=Cs_guMa%ulZ)#B41 z<>2Xf`L$=^w(xw{cy%Ha4Tq`{|ZC!F^O9iY$F+RJkPLx*Ez{7AY zxAf)hmxjf?*ZR4g?=`?xq=XlhA{-;>VmzLw1HyapDqj&riy0qsXyc5%0H zsIXK&IJMel_0UjkvZQ`NdsYJUh!yl{cWn*h4?RB1Y{X&#fIC?b&?n zu{_*={J?Nt2wX^V^m=ezw0Mph%zj8l=XN+f$tkogJnK8XqoXfP2d*jsholFl z(-kkST7mu9a27i-Q({N$)fLaL8KEJ@p0}h=6gM@F@Q8dMThc5Z{-lrPSCqi+73lHg z;8^9eJ8x7A2j3rI1H9;XiH&>ns4imz2kXQ&>%cwPg!--#wOvDSyj+(kuh(O5uFI?* zR-t#ggL~;3?u%=s?YGyUL%4+NdJ*{5MLfrg*`#zU&+ffF1OD|pXjMLsjLjd* zEFFFZ+~Pg_y$Z}`{hlA@c84mw@B$3PG8Mkw)bHLxZDclPpOIYzp8(`IS0JaWLJ3bY z@beXzdJ2X@dXrWw~U$o2gehX95WnjuodT92Ha&ySg<%#N428ZVV=jgq@ z+sxBDPi~x4i%-6RLVJ!k{HFD6LQXp$Qc9)5+DeW1V{n|34#I4 znaZlzxyL>2+1azZXYclI|Azh07dkqUC z2>o75CpBhr*J!uc6zB_0<|U&uYw`|>Mb4b2b%ZDFxvf`Wc)rk3crr4U+Z|m#`Ywt` z$_=h+K{HPMMhaSd)yvN3K~L{xM+mXk2OZH_4_Lep|5K3XuwUa&a7pj`(Wlt?ng+RJ z%$-`?jex<1;0v)~!7sU|R*zliTrG*YbqhNNbmEF0Jdz6Aab02S zrDdjctmFG8MmH=%+l;LwEuSqND#vqcVu8swsId>r%z=d3GLq48O&ZQH-4%AG>EgZ$ zF<74uJbk`=Dqq-osSGCyBKB1DSSv_7i=zDYTOnsa59dM$TIrVJ(RWocWB8+=e|YJK zjop&>q}Gx5du7)5ng+G+npk(mY3P>yho(N|e^8iwf6*ne z{U!M2U*m83JH=4=@4ChMAM{EM?;}+ENMi7Pj7I9B(&E26o?U-rhBJk)zRTWp#+P0< z1`_A$=^uaGBK&cSNc&?n+rL=Ydi@!?sdFQ<8<%*FTt<6!DLlD!eRkvIF3-H1p7Dhn z6AOE{;00f|b zf57bZ^NIZKM?AMbWET7oyx^CPaO%UzWbPc#!;9={mpLb{f!$mm&u!mjr@4=&_#Wrm zgYn!}CD_G%TWIDBGRr?D6Y`u=YrROu;bnT%uhaE#n=HA9Ev^0ZL+TsQ|J1j(^wm|@ zwLkso`7fTFzy7ef=2`auyMVC1xl`8AAt2ss!rjoPFn`w2thvVyJe$v*jztY@p z_`J5saJ9PGa;vf1ey6?PQPVo;>ruJGol0j!r1wT;7XOIA6o?S>7hoOh>YkvECN%|fL=o@prgD`>986-5w~(E z64Ci5<9gr3B>cn_d;avu^kT*yot(k{on6|0HwWgL0%J|0shY-TGs*6mz)urLKNZI} z7>lNsBJ<_vk<;(~6vk`s&TpO?(WEPVsTIZi_G_LO-zmx`Ux`MuE8Pa)bSt{iwz=|g zCwz4KNT$%buyxYn9bc&P45#X5OM9(o3ESdx<<@-p^jRP=UyFvd-oXwZiO<((R`*+` ziW_bCD9`qUE?$s_MXd<^DE+|%@Zke8gFZAU}j}cvaoq7&1}38xRS+zh0W(;xJdct>t8F}qbVWp zi?p!uQVIScHhIPe@jQwHvs36C6nEXnwPe{k@rdg=hTU z$WGSk9G`39x!Q!!q6K~gjlOZe|Z}nq1y*@nv@#J*ky?_Bn8u-G=!5 zMuT%KQ_EackA9<$PPPVk;r7X;qc;0kt^rS0eXOwGC{97>Ee+19}fO+o|X3S6VuY6)1&VEcs+J|y;;1fKqUs!^Z*Inat zH>}a@P5;FFJ3IN=l^r9oqVad z*U;P6(4%EHo0Lkdqp~iQTOqT@Gy^)9re0t)!a=y_)^;3lJeI=lSKjS6e+Y!8*W44u zgQ2m7Efce}PG*ZLT;nB7eZHmq- zA`9DcG%-TGC)HHdB59ghJ(My#D)BC>ayu_gVE)F`>WO~utAEj_fZ}0wx9ZFv`b=tzJVQraAJ1*pD;&d*JLI-UbzKVL9W+hB%$jJr{F2JI zX_+xFp+et;y`W&vZ@qAHR@n=?Z;kfEg335Ni%$BGsDivi>W+*3)9bQuYE?eH@?4Jg zNW}l`(+4Me!2$<3FU~l65xAmcvUDKzjpu|~@0egXw}Wo6Yhz0%SmzcvBIY%`cP91`qsB98-GBE-e_`*n z7wpR!pWEeevt>j;;TUyhz?iN zsIi2)G?u^s`@e*qJ2jb$R#RXCcz8cPS=foA@rr@NMw9u?0J?kZFxx{aM@01yGq>6i z)(6rBJJ*+kUCrqj%et7C{OIe0i9*@S{_epe>17}Butz%Biye5b9bB^xG}z8qrep;# zwy=Y9WUt#Zt4DUU_7<)|Bbqo-YPw*1!*u-l7?rBl5l2O>`N}OdoK!^D<$#5rYy0zbB37-;roTd*=1oMSrBvI zNWfCaO~}h8i@S=*bV<(qAqPv5bM7k9CTg-PC+ghBsfuewaduy1HclnkwF4pgJ0b4} zc>Jy;l39kr92)?i0asn-xmi?97l4Z=wY__LT_QgACN zypa?Sfs8yQe(o(LUJfN^xD0=snEOq(`RY4O>FAZ(6`Pi`Lo3-o{|$p&*m*8p-hU;9 zx8~WhB`oc~KGOkpMrP0jZk#ry^5rK~vE7D)y6Nz9T+++Z39(uD8<@V)foJ2jW%u z0BSw4nfCP39zN%pzPa+D0FUP&ex`2QNQP{QOjjV8>xnOH4)8q*l7&sl(%x(7WN~kR zv$owfI`i~aLoXQt<2CU0?WyIx0lqdk=DZwSUzNzMnQ|M?hy3X!TXJdJ%3NX^pWiUV z@sRq{MfLR39u@1p0oO=M3@)PtkL7t*6tSBL!3+e`D|-Skr9S4ncD*mwJUUlyLmS=d z9Gk0Wm#ZUV=_%gKDt6MU2p&-ItGf%kZ|*bKU&qt?1<%fllS}&-7mvRB+?!frPniED z*ZMEq-~wp4K4upEaOL>RUxFL{G&WoQp*52FTR#4KL$SGk4<}M#kLN1Li5aS{CT%j^Rv4(tv|=_|7la7=G^%!4?n)~sNwvLs^%|l zSGV8f0se46HdINb?c=rq?NjpWh#rzYYZ*`zZD#0f9Z(K73ly?WwEPNtRMOb16g_#? zFClYL*{`(gST=QiN}H-ps8PZ@Dti?+WuL~WXcXurRjq@`Vg zI}HB1XqhVQ+IcpZ*sGP~>T0uV`_`qM7elLiZ;5K1L-RdME$N7s&oh)Mzw)4Kwu5g# zZ)_s#+Z|ficxg)F4?`QN#q+F9FK%l~yDyanPfR?9Zf1V#g{rv!7CdsLzqt3VXY=H{ zmW8e7_dN0Jh4Hz~i{bR@IdViklv=`Mq{Tj>ljSp>x0kqAKSC$__w*Y7wZSp^SDkcI zwn>eD0T%u}vSt5Xq_h99xnKRmM=gT)(31YVs;=kfPoDLC+$}R*8PL0~KWZMhboXiN zC4B2QIAic#XRkC1^&fVMET5p!xiVGSzZp(0-Ad&5Zj zxTn)A$CX1Pnfqvr9)h`5&22n?I5Jhd1CIiRfAVmCoT*^1$g~);IZf6RL<~*&(S1*PCmnDfq3!r-1e)>Q)?%e*kR7G z4}Ai5^C=w6Sw6@ofI^?f7xzBrJv&d{z-PAM>5FK%uUi7i>kvY>V+(r^qv_>`&gk4D zJmOXCYmdlUyU*`e=`Hw-ZisVacU~Z;_zSw#t|3mjRo5bVKwkJ$mD1dxQkojNx`nj_ z0zdi3&n{N|^xWl!o0WC_I{GnmHm5;uu-WP%`YJ_o%ekIj)59K_`DuNZsjg3GdB6kY zd~2umMnk*(aqFPB15<9RSU(Id6%!ePqj>itw`x0wt9#Y4L6axeDlv_6U&N%QP^{Y) z9BJ2k15Y}nF8mwLPN~HuvPM0va=W8RV6yh9Jx)t-+S9FeI5hs0Q|C+no1b7n{^EnQZ%h6--j<=h`$!>H7 z1LPLIfzm+op?qWC@j<@padtWvaGB()FRld?T4)%_dKx zZ8)`pR(GYxI-G_JnCr`}pA61#oDA^Z_QIKUgW-1C@uBj$T1|n;7Ib2*cq|*)K^oAn zG@%DNtH2ec z=z-<^$>HI1C60;qPU`!~D@1m{>%2x!xX~S#GuY z$J*A8zwSQEKN-t!b&t$#bq!Cib(nndRs^l>{#3CY&sj@gX1xPmuZ_&cXXLB3c=N|y z!P)Irb6~R3h3A-zh%PYoF8nxM;A(9MTU)d1N9ZAUdxs+P@C$QoQ)@@vocUe8#3Fo8 zsmnjJi3fVWYnuO)T0LzW8ee#p+kE}(&9DAkom$$v4_9)>KecwtIk9xj5nuSi;7wc% zCKfNEr~ZPU_X~0W&v{a7Kl|)P)ekyF`uE_oKhJHxykeVJ{UTO+acyz;#WnP#UocmI zGw$ACmb}&@cV6YaxDR(+g^&Fa-s)QtgX0RH`+Sek^nP_+$3M~a^B#EMkK5Y@e^yn~ zdXCQA+jLw%rla|ZhI}x$cjRG9m+;DuKe}}3>Vx`Q7p^_H{YwIW!1rr==%DFRSf#wa zdV$WRAg@eB9+8+ulS;6JwnrZ@n4=4pK~vbOa3`FItG#t%vsWF=L{ESFf6koz>c6Gk z$>nIGco@4fkhgB^&-q6uj*nU@%Y6a8vW zyn~FICeFNC$g9emHJvqsRES1r(ROF{4S~5mV`zSpYQ71zAuy?n6%WncbkQ`vxCaMZ z)Clnb%AGMe-YqqL6dpg*ea3J~f{sSVJZH?753PxO*@9Nwf)3ph&u{CPqm;qyhQtF# z7D_I{)vXA|bGyipk^(x<#bh>#WxgbSgPf3gT1Y0OU}Sz>Kt70Ia{0KMyf|tE3^i>c za}D!N0~~J?UiU^8rWO_!bOh=4(DZ5-*>kN1{5e%xjqA^oHP+ z5kHV~X8qI`oL+HQ!jmRPylC*utn1mOb!dsSW9TY|=XbTy*&Q{{Bjs3jU51ZXi0*li zU4D@LbkH10i_knvL&*gh_pV4_3X6Cz6+D}ioP|6VXT@~ApXCM#(b|jAAxb!R*s02@ z;ADyFtQ7LTX;$!z(iP8ZM&`=;RO!f&S%0Aqr&q9%XVmx-^k`zVuH=$BI=7|9zozt0 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%0Dpfp{Baea&|fXHT(8$gq4 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

! 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

05U-i%pr_n)PhntKyKl}6mnu35n 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 +HVxy8^M5~;=9y!28og;pb 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 z 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

#qNhcJdb3{_22yMZ>2^gt`?u&4xH>U`6=k5 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Ý-Qq$mUv)B|Gy4NudgqyLD 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 ~R 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 diff --git a/Shader Forge/Assets/ShaderForge/Example Assets/Textures/sf_conc_floor_01_d.tga.meta b/Shader Forge/Assets/ShaderForge/Example Assets/Textures/sf_conc_floor_01_d.tga.meta deleted file mode 100644 index 0c28d52a..00000000 --- a/Shader Forge/Assets/ShaderForge/Example Assets/Textures/sf_conc_floor_01_d.tga.meta +++ /dev/null @@ -1,45 +0,0 @@ -fileFormatVersion: 2 -guid: b66bceaf0cc0ace4e9bdc92f14bba709 -TextureImporter: - serializedVersion: 2 - mipmaps: - mipMapMode: 0 - enableMipMap: 1 - linearTexture: 0 - correctGamma: 0 - fadeOut: 0 - borderMipMap: 0 - mipMapFadeDistanceStart: 1 - mipMapFadeDistanceEnd: 3 - bumpmap: - convertToNormalMap: 0 - externalNormalMap: 0 - heightScale: .25 - normalMapFilter: 0 - isReadable: 0 - grayScaleToAlpha: 0 - generateCubemap: 0 - seamlessCubemap: 0 - textureFormat: -1 - maxTextureSize: 2048 - textureSettings: - filterMode: 2 - aniso: 3 - mipBias: -1 - wrapMode: -1 - nPOTScale: 1 - lightmap: 0 - compressionQuality: 50 - spriteMode: 0 - spriteExtrude: 1 - spriteMeshType: 1 - alignment: 0 - spritePivot: {x: .5, y: .5} - spritePixelsToUnits: 100 - alphaIsTransparency: 0 - textureType: -1 - buildTargetSettings: [] - spriteSheet: - sprites: [] - spritePackingTag: - userData: diff --git a/Shader Forge/Assets/ShaderForge/Example Assets/Textures/sf_conc_floor_01_n.tga b/Shader Forge/Assets/ShaderForge/Example Assets/Textures/sf_conc_floor_01_n.tga deleted file mode 100644 index 619dc07e4405837162bc520cba3125468b13d61a..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3145772 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%0At{#0?_+mWjsFLY+QqG3KNB*QW$uR>dj7 zqTeHvI;N3U1|6Ue_Cp_FnWlmwyl3sj2$ATYKB~C1-aRQSonVGhiP41JDJ!*;Psm*i zt7Y#4RB#mWJpS1X$Y^+{bjNzLO*x%GX({7h1V|A)JCnpA(atF0E2Z=m-Y+JfT67

MNv%5Xkvyg_YWi-cP`) zNS)Dg7@29t=B)n|?`1M!`I?v*px!;jlDL)8na2egO$Ru7(4hrNh=@@ftwBi^T z1;QXEYuY_hCk9JrMt5HFZ@&=VdC9hWs0$j5TGy376e=F~FxX)NhEWs=tK?E4BXRdL zxz%c6DM;ci4i^dl-9D#QA%OJY7-e(8vPNX{39~@VSZBw5tV<-X7RWPxI_yh!JgQ*s zXn_$9F<(kb4ws8zI6)iW^2qKSE7qMSJVmP;7VOnICo8bxmF{vorrmUT%!CYBX|0#P ziW9yUx(k^Ch)?*%ZRIY>9%7?fs+!VjvRX|ary@%PV~W~4AmOu2%VYMvBpHZU(UTHp zjjkRMzF_|Y^eK!-gvMhT!yO}KZD3I1*KI67fqq*N%*ax}8k60hIf>6&w>5B>tF_~j z65?d&M|MmKSEkl9MoQ`K%4vpFdUjE`oshkW>Ifr(jgZj6a6^_~wgIe>`Z%&2lRZ-Lmy{49Ts8gyEBCwBf4)1 znfIPGfMZ<{0j-@#k|a=o;a-bZuOn-zzi?)8>(upqHyJPNc_Nj|y-WsJ3?WNn@#IptY5_N` z+pxg&E0I$_^86p4*}j%L+*WL$GA}Vw86+g(Lo7`k{|WHh^Cmr zWdhKF1ZOdt%+Frqch|cn3#Zz*Utk#uR~bf)R~e|3dx3j7)d{Wi!Qb>h_#0c{x~Xuv zr94IOD=^0XFP5J`R3PHC6iGLbFwNLhnKSHVhm5(DvNlA?jX_=+xyX&i8-e5=G^LCd zV~O$vK8R7Wx`^qaLt*v>vVe!M*l@0BzQ&A5tFx( zGn9gP_Z`K4dc*s)lqjCz;>mG@0pMOm5eHhqIaf~g?5rN!%seX;@LG7A;sHoImrH6j>= zqI;=6XFco~S4RcvH}m*gF{h=sh!3BLGYo zC`maNMO-l`F0gPPNj)!Z|C{q)cKvVBa?%j-o-+SI&6sx|)IIeKROPL=4gk&AZ90bkYp40O-^aiH z;rO5Y*8ksR8isjcxejTN=zjUY(JHt{0dyedF9vUX>G_9}|5~}1nE*mT3+C}+;OLiQ z-`dH%1j&TnR*9Vv+Bu(IY-+E+pVF&5hCYPLJ!wqZ^r=yO7=kf~&a6J!hMyFpE}>5O zh0BFwBV6md0|!A~qb4n9P3j6k2?=c+QxfABBF>W%*T^6u9g#E{*rCX5GLR&*Xnu^&di_V7bY7Fas}LIg^G_Q#>=Xaq9NY*=xIPM-UR+KmW9djy$~u2ZJ~dIC=^j z26S4ysxW<844xKNX8huDMu-xI2bo3rm|Q?rG>V+Gd{X;A}{WIC6pqxt^ZEcG6He@b!k!1@G; zGc7FPg8h z&jU-=E^(zCm>k06vGN31Fmjd$@U6g%1uMrqlkJ9l1q0-m5CYDoiC~4a0A?d`2D#jl zTVpQ@Bn`1#B(gV1S~nLTsiUx1StWz93hOh&u*dnW=}*gJ+;RPEtc)2qd`qeNpx;D7 z+VE0wd09FF$hsqpjx%H?Dl^O4d1f`!GA>KR)YQe2`zpN*3Js)9rR-_u|62E4>6B^r zWc`Cu;P~|8OFIX&ETf zZum_ta1M=`bXzf@$H?CwPb;xg8F_A z%D?=>;fFsDfAx3n&;Gt~^S#ckAH`WVp>vaINxEA(*NwJ^Wj6sRAYYiNicqkfz&o$e zh|bL=!$2qi`tp}*j}<66`$3+!CvC}uO>7ufE;oAbTB zd)xHrqn3@25<72BZN6EfobSd%WX#4TDbJkQ8+KtLP!elKdb&7Up)L0nFSd~U$o^EZ zR*P=^sX84r&!MwyDt|zF7x^5 z&ibPLm>>${W@CiY-bv&fk)UFN9;MzuLg15?Q$GSE0yMcq(60CEp#>@6ZI&-@JX0J3 zpTff*WJ=F;Mb<9p){qDESPC;&aa$Kpx6{;%aFJ*yU_?F_qD|;bBJT;DM`)+a)$jGj zw8oMB3}0bc2$DB6%Ds=-K``CC?A1MmlhY!ScPH+3{6Y{$Bh?Il$cWF)9zn$fSJRjY zDDAaMh(c}@rU#`9P zjv_L5a2Mb^E)Vrc01$5zNscJNI^666v|8u>Og@r3&|5r?Fq@B*;9w8KG~6`oPxs9x z>mAj)NJDFq=In2zN!Oo*+7IUu-qO8_yeWk<+CbuZlFdFbV z(8%iz7NvHMb!53Cot{^1Q9vog7otH!g=0Lt!2sLV@x6a(O^G)-{#8;;IfGTP%Fvf<0_}f zVcki}aF#a|?FwrVu70(KWp@znlcYRHLpXOt;A-#J!sq`v`3b^oY2_@e5^N&Db)QvT zmAb0|up0z*eqb$B^~YZHa}%X++4urq0p3lNGJ&?R9Vu)8rP zvf45T8k1yMnpn=(mFDYqFRyZ<3YuWl%qr8E4R5}A4*eJ!5_Pu4m?j|wRU4x@y!@!G ztR#SN3*<)MgtaTQpYcIPqiP-785g!?;fscdZfO^hNw8O+U>$&=+fp=L-)MZ7eRpZ{ zZ1I|P>x1-zpJ#H{>T>-DHr8Hau>xG0b*g5m#}%&4k17`jWWMBQBNo&a1aM86D$6g{ z95r^Wb*j{Tkql6#&1Br`ZIXW^Oxm6i8A&AumEH?D_l47FgZN62O<1I@E^qO~0De+d z1`@{M8%3vqS8HeG2<;5fauix{Cs>h`Y**FgDdkE~x6zBaH!mFA9(u36sMp7sMxv0 zLz4pB7=UVy448Te3u>P+-UnL)I~c+w{EsrPON~fT6axN0F3*reQG3|^Wu+VPWndap zd5Xx*Z&#WYH)`+Z=dNkVjTb(a$J6~Y;A%g8B8)RgS0jaeJA7Lp^h*gkwb!KlY z$f`veHzs4Yez6#IoA-J=GO$fWX#>^jLD?Aga;{Qmro~m%hO-GBKE(rxLP605c?ST8 z!sTGr0S$)KMJ>7duc6--oVNsR#FE`XLbMGzXu)|{>8sQ&jmTfw?9;Y9u7Ccg-}=@k zf6=ejcmLhYfBea<{{+QaR(qc2T>6#$B>E)f0lhqn&ce$1jk$N%7vEzOA%J42fFTG26e*9htJ zI{pxM;xuPd02rLgnK}U#AB+*?tXMW!W>IkRu1V^p$${TZw>HYaflAwwp`H=&6#oDt z-3`@*OLG`+kr78)kOgNXqPUgVPUKy>zm4S6MeA`4akK_%FYLZaHGW=;uPDLGT%8Z% zPw-_a)-?*A!p)>H?=8pMaq7`u7)>x(?AnS|S#8mlK|c+mv|+HLUQB9JGxryNqMpxw zmHHM&T9J12^oToVg5m+YRzmb1Sr6<24t&a8X?WukMCpmkuL~zH!7KAf0ja$iKVotO z8;*@7?>(dq)Jl9w7X2#rA{%xO$!sN1hT-<${`i{4a1gB~TQ(dnS?Zti80SA-1~GO4 zV`88w}&y8IJ-lQUs=C(ulh-J zefn_IgT*JI+HSvNy8n}UBGGr3Pbe3Ag)Sa5sTWC;>g6DFIwuH^N2aj!r&8gnkghCi&on9YM&LAqLndRXD#RCCA%6@JraUI49 zP)l=kgR0|vC^gc{j40DJpkqXw<3lnrF3oi;%;1shp1GplI3P@B^Z+Kos+4<%_yg3^ z51T&9pTc;UDP4#B<0%hXa(6oNZ}?@!fY99@N3{iF&KMpSq$Fs&U?)m%rMW)$ij}j1 z?q)AIj0Q~F3ipgu)I@2F4hZyVh?WqISxA0spG4l7A2?K=M0uVp z4V>Qby(D4x{a8XUdStkCb`CA%DlY@CF3nY=%>#a`PmCMc34O_{t%NWO3&H}1!=Rs@ zOYL4YI>s1OZa*K|e!=$DUj-jO1%?!vdJxt(E06r~w%wB}>`BG1;o{ouCi9fqfVQ#Z zIjMLmKmcj3YRz2*tL=f~iJiVzw3arJa^a?Ik5T;V%~sksNyfnhitaQH_HamCKYSpp z-O~W6f?8^o^G)(qgK!$#F-o%olJ6)m{VxaiR){et7WCaju5k0dwJG zJ6!-z8om{h*>_&@(TqUhNmbTOF{;{ z&4buU4UeV*-y-4WBa=wrIOUYf?$Y%jOJt+Fw`4iP3Qtf}U|ktIKpjaShEK9u#m}xS zStuTO<|RiD^dBvTg}R+kj5Lo^&U06r=_o8zKow&U1i??AH{;Bb6Qgy3HM%}SOa=ur z!PA`iOe}G*0^5LVBpMUNd|$S)#22{-W)tTv=Kp;wHRoY%zBkO=ab6mAjeh(vh= zU|nJ2y13EV|N3o|0p$t8(HP(`$=_EdTTqXnY!3jl6$%Z`M;^jJ9{@e2dQz(!A<-C~ zu*PHn2Npx!PFvwHJ&s>eyt{xZSP@GI2iW2lfl!ReTUzyAEDm1#P4HiH;kSjO1qR2( zB0E|19it8;^oryi!Nx+8w6*=-{k2~${MUc}>C@{Uwka2Ta&Pr+z29$4bQO+T9=~*6 zk1r6+tz3i@&2Z1O{d%>8&dkOf<3+Jl0-?fp(Drxg zC+6>eZ?bUIjPi%>zIZ%lWIHxyUMNP7?ZjV1X2$T1Xk*Y5kXXu{Sh-=%g%!^w@sH33 zMj>Zrwee=;H^$I7GMiG>JPTsYS1b1&DHV9Q`odcCG>j}gJ4dIspZXf&JOpo8c3{4C zv(Y9$j@yvxMd;<>3D8)3{+{Awg^a(D>7o|%WJ``~j}t$oCf^u-#%S+RYFc*^FKMeF zvIm)d=nG!ym4-6ZA(|P(h)ax(n2hTBv|1AD_|VX^jc`QEoonio$!8RTv4xXCpCufV zr;f4*owExgDk(hZYJ3-~I^(-j<%l9n5%-e5cB@kVoo4(10^JT~J5@R3O)O*%Gs!E{T z|8)49zv%q;ThIAF{U0NkJO0-@U;pioo-Hod7Mssfa?>#Cb7pOH5z20H_TtuCi}&BV zx;szmho{^X7kqcXtU0UMCKppj8E@`ftGsvT)$JRV+t<%BF3|f3yhdu(zZa%}$9}j! zz)217tiJx)`*$~gWG`GFFI*qpzT1gThB6NE}VdGP#*KrhKnk|NmM#^ zp)|Y&kbM|?*MDp$s(bq#bK$0~oEbww&2PtztX>H6=}E$1$c4*Tbdrvg)-ppSM*b1C zM0vPh8LQsDauWCzZ42voF^f?l+w7df>^kXO5cINW=EuO0$bf>~4Pzp`fmk<(R^N?r z4*|9|kF|k!&84;ABVf#eoDw4y96wp=iCM-D97EbM#&n_$uwGUwvChsT{=h#c;vab}cbZOb8;_M~d!P;QGk~m#xIb(F#wK_ZqgJ^4^S(dIx zxI{ql6Za$Vy79S3vmcd59gh~Dc|7(c;zKab`p67RTX=@Tm<1J1HaCP2bUq;u;}>+E z+@3Oai@+8`xsA3NM=F}(aYPp~c1wk!mm4@|xj5Y24DNW;_eKd^3vkY8wk5HqqBBX1 ziJv9Ru{LcCPU;JTBpFfvm-~6wSVW4GRIMJ}?s_LTdZ%Qnb**mO%-os z^o6uUawpQfDdkkVV7{Ee`@K&T-N)(WNr%x^e5memJaImN^7!h~Q|s?HY0Le_;8gMQ zcxn7nsdo*)X>qwmnXN~uC@a^+=+-;k%uZFyIsQc`4+U+J=rxi}+?#ld)?+_pGEmO; z;0ut^@qp`pFa6mk)BgjRJp+?`>L3>Z1)dT-1KYN6rFnO)8U(1mh}0HoO&458ZM1&3 z;}FgutXo(}N~4wRD+TpKd4oTZDQJ&PrXLt-yVB)0upT2|d=N-TG3oCVl@5XFPQ)`b zXnZ3PaZJQwT;f=mIT&Rc2J4l;FRR2xbCol16r>4J$Zj%8@ii0K#!Qdn7Y;U~_2EC( z#wZXddQq-wiF2BHDSvEy=g3m-$Q&?Oqr+S}>DB!!AeDCC^gjN$Ls_1NnS+i9#VNLe zqKnSd!LK9pG-S#C9+B}|S?I*egY13amu9qD48km!FmRaxp|CI&z)q%7_bubR6BRVu zY6n>-W^Qo8N`#b^oT46vPQX|g|((1Qs+}n<28oHnPwXz0t_S~NTm3!Lm>h$fHmn|9Wre&B@O#5mWMC8|9&qrnp-~3 z?g@3AHb)4rTbpRwK7Um2Zx#bM9xjp>;NgsoKc4uAN=cb*C|$Mb3jr#M+|^Zm(Iz!N z-!e~ypLv=KE)you+_5EyrZQgZ4U^u5gNfz)M&RSp^f@B2wlgp6_}(cxZ|LEA9CK{( zr2c18oeY*j$EE&9{Nt%^>Spw#txHGQ z%P65Uf|nsVA|BSG4O9y zeOn)d*MAaz_%p{>KWp51C%*Akb#Cbx6JVIJOjQ1m@?eqXEEPbOKMQh=u_U$~scBOf ztk|gXtaP5!`xi=!D`L_Ys4splFv0-?lytfsZ628vyf{?vuu=glCcYnNaWVGD5^_+3DlU2np1K} zM=}sgM4LLwU=XqE6w^7egvZ$$+YKxFOiCuiu4u;gb(oCG0jl&}!2c_ifv7g)v3*`0M8{ydz`resJCIVknVN=V)K>y2d^A0*p3=q zX4c#o?HL`5KCsiPoF6V-^+=2+!>H~Ia3@i}L>V&pBosI`W()((Ko0}77FtnQ0tcCE zxn}pGcJw636(s&I6B3+eA6Xj=2AK+yl#wxJBCO-fT|{iSkkB(0*d?siGHIj-Fl67hPXn{+ReAe9iZ|zO!3%Ms1kpCr4?(LIm-A zc>WORB`Lwj6!t5mKTTcUvO=eh4I zoab?}cLwK9`t4-wFjuNYFYP1{hyIsaMv0OOIRI5gyv*Y=U*+E-wLu$N*#W(NimPAv zZ~U^gg62SgZA|b~bd$uPbS(=5vuj-QoqJ;abj$l5wKsqx+ESr*xGFbY`_gt3!sfKC zN~U(Ew$-MWKI{2EH!2RK&JM&*k;ZHL;%BdX_4X@Y-F`)8eO5-zjSO{}sIT{b7$3V1 zm=~k5R0Z}{fG1C$Z`nLp1Kw@p%qhI3a0774|JQ$J|LxPmo7c1Tt{J0ubT^9qq))e& z@)!^t8Naab?K|&mj=zJM5oIs5B5GG;)zp?umeOOLJ8xA#`KA5yKa{O~RHx57NQf5I z7PkN{p{7X)XTbWS(qp7}&EblfO_iwph z)1y;ba9$rBS4PioEWNpL{SuQCjr7BaFLkj&T?%R8bLi43u{OJ2OZAD0+-SY89_RaX|F>Kf5AY(m{ zg-dWMZ5fhu`w5&%14h^+$ggf%iKHjGV4)_~M3Y%#8~YlP*(UJCoBO)AULQe#EzYb?M$P>I#&^5PL1@6)LAj^}3Lkr( zGhE~%A@*pLok-C4Wa8z&y!F)9(n;N2Y}C|K%qvZ~8-<6}Y?of>SDm@~XeHf;7Alsx zT)$&;;?Tq8pK>^)PNQL{Nc5l3?WLjt!!b=p38PLlt6}<@0hCna-_dh%%Tvba#pqLKUC&+|C5&+l2LR><` zME2iL-OIq!&!x%49@P{4QejvH#?k{}AvvGw+&;oE&5UO6;qiAkc4$oCf2R&WMCMiSPFBFJudhFBGBge!7cxO#=@fOAZ4$X2?nyskVs0}xH!lTFmvD&sZ7l& z9%@^kUQ7pJ#eS0Pxu%a)Zg(EkItnDZeaMuq#VQ`vr=qm&YE`M^lJgilx>ftK92an+ zu+=ws>2#=OMRp!>uo_^gCua+CV$=?(vKv^fcJVby;c6Sx2SH@CiI2nH%`}G3jrQ~F z=09jn=g77IfWu9}x0zarVx-;d*|#};h&3x!5ZeT8d}{6DZRNr+%?l%X>Of=KfnY%J zO-@tVQOmehpSNp6Wm-8iim32{ENHW_#9GKKW{gZ}r?xIVwEiYheU*9I+TCJUmx7%~ z>K`p5!oSoX98&E5NqwbRNf@PRRj6}R46eO3n zk*o^5rKlQ+FF^$da*)4`>aJNYCW8REK2g7|!hrI!JEnSv{@n$NoJ>8!1w;T0Rh0(0 zxt~=UwyArkKjI60(D!u8mO%-zYlEppGj8827wPXXoH|7L%-M(rl3tijvttUB4aXPV zklHYxu-(AzC^Y!aR%KyQo37<|T>q$L>qfzU{qD@y|C+z{bNAMrQEj1xkb>l;k>nMA zWt+SvP=DDX`IwNi_yebde}RLvoeGmtBvG(Tv5Y<>3LW=a{%w8WLv^ke*G9sW!NMI6 z=^nZPF_MpIi3AH`(__xx0ULZO>Ajw~5nTVor!KWA%NF9%jVZUf>{jQ-5=(OuiIP8r z`{~K8lML#OX?|IP%uxKYeZXVe4s2Z1MBq#re6h!5a!U@8mzJCX5wUAQ6r@;z5bYSA za`>xkq90xO;L$tRVsE>WSJCK(l!-zyutXhtXm&gN4x}TVbNT9f%y>OSJ=O1J0g)cV zAt;Tr3{03d$ndrwdp?UBq>RA#fCT{?BvzhdoSK>YSCmmOf}*{2RlIBI&S6Au5>@OC zBF~enAE=Z7FRy37G^g79KGoqT{y{4{$Z-xt6u{#~EF@X|+5{cvqx zC7@cZFz`*zv+)x(x??`=GRaRk>W&=?KYXTV?Nw;i*i!Hb3SC^CtHy4YoX!=XM9`}C z!9=KJd`Viq__UZ4S^9wM^=aOD_tj1;eR=nb^$fuNI$Tz|H|K z;Mq#NB#?4D6F2RWy35muQve290~qI^Vk!`{GLvv0%PHQhCcO$tIXX$IJ7yHr)m>@d zaH{2^);*7CpA(XB6Ww3BO9j%yUXO`^OAexH;;5pkX_mayZTmqABqk(c;EFbD3w;31 zRx3Z;syGaJgYJ^50PU0LOnNPZIIy~nMQ*8)e1hP)D`h!Yk3IyYfmxrb!yO}eG!DY+ ziE#B1z$AAfq~aknmI|5b69-1*8Q{CVKBo7u4b_@C;qc&Q8t9R`+gB%fvg2lL-kh{u zBSRcBxX9j^aC*_HGLi72Oh#azbX`La5Nm%!R7N9Xh;UM6^J|fhX;MBv_|i_^S*hO! z+2eFFZ$!buLj~I>HJF8f(5N7=o(9dT*D!_(@nz9UQ!LTLYT-H6yMjaMq^j=&D1Mn4G7@+1G~A}+)A9+%MYxm-V`RYTkfaG#snFNhAEt?Vo=6@f-I) z&fK}zGpsb3i03F$#_=$o13G{j2IY#ublj*V=e$$j)%W-@1*RCn_7cyYeH z^5S=Q4sP77*2B{bQjmQb!;Pd-Cqq~6UH*9I+Br!B$%V9RR||(W4@BAEuw`aACa7>8 zImZ}wmCt{5?9uHL+7T#q`m==2-^t=Xi2=Qa~wS5z*%m{uo^2!ta zCm9{f3<~m|Z$z(~REtMr^BKwOcD;KR6ti>dxFrkqHGFm<}b} zH%WFg1}2byZ#Df)_6~#ybOSkegYBY$#S}nqp6olF4%DGYMEAHcaZsBhe+NX2AM~`k zKxS5mGz13nqUj3t=rgV8d8F;F>Qr+aUp<|D|0xe1sI`~ek6#@5?#0Uq+f7+CaEW`Z z>7b1Ikq9!Yp%{DE@igih0f|6FWHsE`6AvDH z$2yEkB#vPu3JjVck#hZ|du!J&9(j0WKh$w{VM;Jd8?E320T(Hj8UE@BvpZ%z3ZhMj zG2kU#4pCa#a1BgJ8`Y00GMK2oEPEO9fI1v9<_$PF3?ZL0=m1>9V-M5jV!N zmbTuQSbJj`ic4%EGkKj{=~1n)1%oZ*F0F2Qd+JznHjg0*s~osAI0pqXKya`ZjZKew z0j+N<04ssapxdF)5|IEUK_}rLqMYyb#V+KKl4Fbx$=DonhcOPpmubi>|f*;@5a>6xC3V0IHes^O;)#9hRN@KSn%;yM#iIj82+;UfaXdNn9#@} z;REx>kLe}EU*o)1I-rt5v7UyHCVhI`i`t0kQZz7|@{#H&HoDx}P4x<)< z6!wWQ%*RLCp*PP`S2L2`bvMearpAL5S!4(SWb?|E zM%G~%EB{_VxnJHtmLG7QNOJHApYx-y=J-98M4 zUX~!+^>4>(uW!x1rB9KZTO*YcFDd3zzmSS$?Q63r?HLjQ=3)4sr+P@!Fnt&NA;335 zXu9ep1G%^(3}jcgxaWz)W9CszyI&HFF$LDT`EwgN{vvJ%pA&@x3hV-NU%jIvuK!0 z_@@YYmoesE_BwSt8bu@r>>3)u+NcF2#Nj@mk%7xBvh&a$wyR(CJS-;AeFgdx?QfEOkha$8y)($kwvNMc@hJHt+I$-Y9#bY% zjvF7?Ha_xv_q)*M-GPm}Rrh{f9J}2s(F2oyZ2>C2XXlP<=Z-~L=~Nei_Oxw$b*MmX(dY(6LiwqAfd(AuL)(b#&< zEj0O10hxg?W9KnoGDgutaub+e!(sx%xI5S#zfr@YUtMe_U4@SeIg{KMxN-*Sk!|ed zmBZ+>>9fqeiJWHa??FqDt^zBH_R^IOn>T(op13yr_{OdE$-AO!qErjo$=TVsk)bVi zCN56tktw6hO{vMXp6EW#e4c!2*_Q>{we#Ni^*RC?;1K~IK(Zy)NNU%XPR3c1ui9Zr zw+;iMmyHtLYqJ|egrq*zTX$Kw`?((*jZ!w1B)^Zq;$SHzXdpO9Eo0x-{qEbQ|KP{w zMgzCIi-pAFQ+yeUBa`|c6%e8Yh!cM<{D-x&{qXilzI*sm{*xmV=TU&wN^W!FRNcnW zyx6h&htF94`ghTP|G$=3Um8rDuxuWhREvf<|1tjx3#g||smT>w1K6lGID1S-_q>)7 zoQZWtv`$&Eq*eyweQ$Dp?wAiTeFCsUl8$KmJDRZ7GtXB_%D+1E99v^vbJ#3`F|V;P zCnv>KwV!90qj)k6QzNT+w8wO;Tqs!A;Y^D8uC`^jou~!7Sdhd)#(W7_2gS_ZcM)ca zf|`!?N2?LQbV*`btI;{dMnElN4;%hl`0v-oUPViQ_}}o(03;W_v~55xVyyk7(j(kz zvcNe(RwQN$I~wUuqXyBtIUS*^Vs4Lii!DPdog?=(v1P(QFf-Nn>107-5e-6pgl`Em zpUJ<=m?T#sK((OH*mo{u(zP+PmzTN)-qaW$j#hzS#*;c<$$SaHB+2iBi|5!6qn_>E z$yp(Hn0<}dPiXL2mqUwX&e=;hgrqhk>U|yqwhVssnJxi7!$6=KM`75`P|nOO8p8|2 z5Y+x!V1dOJxtSyx@Xhy}c-t*CF&cO$nuQEBIO2^Qmmr)fcEKVfG!nt9VY9L6%T7%*`->2_ZptM zTmC;ktojMt1jV!%%U(h=td18yx^wcu2O0PNy?Nuq0NQ|!_am{}A;I?ck;Ls)a+$C- zvN$G4dh<2&<5x<_qGBaVdKbTrQoX2*6>MBNwSBv4>t_TX09>_liXx4BaP7S(Lq9i6 zO;29Wdi)d1&hc?IpJ+>4@>CCSQPsDk_m(JGHnNzvYVRa3*L?NvzAt}yeB07W_v24YsVhNbjbfD@?#1e;&xNSB zzw&*S?7y1!*KS)5Q0ww~e&hKkt+S98HNIRZ8)pk*S1&Cy`%Nf($~-yUWds3`ji?p0 zNEo7}RWE7RssO(X@i{PEV?ME9tB&#^irxDEF2_N{T`Lq;?7 zLas;&;Wetm6vOL%A7VU#dO<6?bG+(rFC5%_&7x*8(+F-9-$5}5_9Wprp*u^#K<#$% zk4&+1SNtnTU%vibnX+t7MOKnCi*Ux`EjJlnJy?F_%MbQ%T_GTq%?J(%OyWLq6fW8& zzkn(c3r5r-DHVex12SHyq8?_al9{I=M2j`il@9%A@I@ z8#C?3l#k8qu9K(N#!8ej4;zbW0+xt_xGg!7nFt)G*}=Gx@EpTe!jq=vbi|KYw~tOF zGl#X}ddVmW5P!zvqbJpKChe(3RIs|QB#~2u^fC4Z*1r&mGjYq!zm)%3iqC#@#TI6U z!Y1lO?c-Ft^X`Y9;xR*?V7Mx1<)}Ko$$jSYefxH;mhUE>x)=Hp6IX5xVp|iF8KBow z=jL{YT!xQ%mpdJ-G6uo3kT6oQd8gvRZ>l%1X31=Guv9>!A(mxO%9$7kB!JklH6K8vNGWkK+9|GZRBG=%Rj0WwT-Ll}HOn-5gfJ9N3EntM_t9(yKDR+BV%1izQn; zP)Fr#W$s2r3!HJ`y8$r_nJD^cWi* zLJp;D2Gs!*b?JHcT5p`ol*-A*%cwq#5i)jxa|Y5D)-)jdFo?NPdgEBs%=3T_^dgi( zNFs^Mpc8a4?vOnQi(@AUpl+dmhk&Bk)!+p^JhM}LN@-(U#;MqI|AFGmPL0 zFI68CY37q!l=Ngoh7DBaY*;AOz`PUflq^55O;jdFGEx)y+GMpc-7a)u;D=qrU-JHf zQt{BN(R#>R;AqwA_TnT&8MP#8E4nQdo<6wiY@*vyfPiSAXAzw?-(ycG<-RO)l@=2O zfIaV66J=+z69*^IM?u^`0O!<`JP#lxtGwM(g0?6dRRVJbcm9?r# zS|qknslw7^X5D7q4WnUWSg$XSg^wbFrAQNKyuXE(guh36u3!L!vTmRK zYVZ%q&^6s%#1K-(^7vspMgKqw27wNgi{j5B0?bpSIr9aFXs`IH_6Lvao=>+yG^G~? zEoGDP!`(n|;cgGgXE-))T&sFXfOP;hzc``nV`2}HgsDB76^d3k!;TUbvJyOGiKIPn zDuVDF){iW292gf5_;6=xGWYABAOG^-a=-iNWa45uHwErC;7b&o^!4QU$VM{QBW>e2 z=2oIc$jk+#0MM^p=WVTBWPKbnMk`Y+VKR8|N( z=`#3xf(+J#dvAB@z0-tR8r>vSG0+plP^v0#r~8oJRxGM=2qz{EOp+j{-gcLr_PNJgHJx~-n?D1eZ5Fq2&p6I zAa@y|an`12w)Josq$#nono5n@I!5d9YbKJ9@V$ydwkII5IJU^P`Ofx<+4#xY#0kDi z_7`p?!`uf6@#7&y7>3PEpWr7LK~uVl|Cc0`y<~^Hd9?_vHwR+} z{zs#n3a1*GkeUMlFCamatsQ9_n+teH?0p!Z$v=or82CAN3eLwrSNvtid52{;L87$t z{84fHv6P)zUyf?Y)9m@+>p!3P?~nb@?Nl90W!0qH>b4pWGQoz5oT$irxGy7i*qO*M zsRcl@gIjM*e)IJC)EPk&Q-CR1t~ZL&NwI)UmO@t#lyck& zYP;E*I^)}UBa*DlVV*{*Ci7qRc+rT6sFsi z9;ihUz;<53a9zmcxQ}cM9MX-USo!Il*^>`%ABo?xr4}Y-SHkR~jO-o;=8Ou-+GA!8 zCL+rImpKEV4^f=~oo*eKm~3LISd9@9jm0(GhozCi24gifzcKEhW`l@MtT{Lix!uSQ z;%1~D=`+W?x7qD(%)HKoQ*)dbCyT`5gaLif_L56wj5bliiQzZUV02fY!2nvw-O7Qc zWH=-N*@4lfovTNZ-zz-4%R<5R49IRmg5l7_!WL$6<0p^0o<${2vbmby0!>=Y@hkbHrZ&i_V#VucC$##>}$jEDqR%}iawxHFz|z%Cq~n#BqX}0boV@| z9|GVF`E}lr*x$}6&M8=6Azuo_(@Bh0K z{-0u=!|ah0$Lx;|UfDQxi3(7guHLw7+PdpXE))>*wLbrDYQ9{iLk$*UT(p{50?VGX zK2HFXUT5Nw}23hlgKSsnlFK}yp>XY!RWb+IiaU2b#sFlZyCK8L+C z=NL)BaIVz8MZAH$p18;*hZ-OrStnMq49NT%lR-*L7=xZXY~F!b=&eWLPay`QX{>wo!|liP=yw8DNwGHT<3)_qPAU2RRt{xcl=60_xW z=(Qt;ZE9=y-OagMjK|mRn_1&EKn(!QM|5w29tc^*^h_VjUdHSzgu?24(_dh%P z85bGC21z#Qte17I*P(lh9tVHIb7goy!0~}t)#BRU9{PK|wo>n!eK7vq7k&Rg<-a#R zwI(hUs^?pnOXy9cxYlDOW|HHRqw7hzE}7_7WpfBlQwz3tS5)+OR;v!ets&c4aQZkpUHhVwqcRpUo|WJ+>xN)6NGAud5Lf+%Q5 zTQ1rLH!>9m=?|E#L^s|-Wg-i7#K2rzf*0$Qd^Z_5kXmA!)bf4MQCO0y<;c}sKyS7zxCzg92&!Z5Pdm1p^V|L@HXI_*DpOlDgUjt_F#I-(Uj8N$gE>`xW zvilpd0}C=jQv$Vib+p@J+U3 z0%u^y*Dv?4$7R%_y|f_<6cp-Y7aakHGBgRS_9WY#6h#210gq@PEqmM{A{abT9Q3fn zxz;&FMFvTjDY-n(kdin0!1SxF!kd(-Oy1(hnzs*Hli3s0X^$@*Of8nPiKdv5uW!(1 zOtAN4c;!$UbA^H5(EZhqFC;Rj_2vrkm5?aZn9mX!je2^Jy^LR*t}!OrdqxO##bw4- zsCAzIrtUxES#wCy^u97d;y~1q;8GC^^M)u z7FoNr)vBc+L?T33rm>^i#eE>NK0k_XrXL|5OISKw=t_B^B$CttSRjiE;ej3VHEU?W zjCT`2JR+yMcgz@!GCbTowy?3EAuR%9YiuEF^;X7rzsUOf!@~?7Wx!k0$5xK1g3*O* zDIyO8*sgvP(24XAw>-JkqB9rvY!@qx2=aR)SV`(79yEr=lH%=jkR-*=BMJ>c7DJtC zmP6a?rCforu;(D_RHxYBH1kEnh~7K;yu#$S*2G(nO29YTl1QVV8_eUf@Fl7ei93Wh z;w_wEWo`n(FjyWLhO=zy^1#m3YbUo%Z}T2)TK1_e`O+`nLYl$t9>R?X|Y>ukgafvir#@3P%$ZVRu2crZ=O z98hc9*c5EPPWlpYV=d6Fw~tJ$A38_2cw#bZ`$nPYqJfVAR16@ww6RF?_PNKgE=tYAR2iB|8$lJ6sh#rfbYkfpMWW30`e)zgTdupZn{KNU_lMI%@dF=Q zb>(7v(LIGcKc9{Lx35C~xIO%aGE*)QA>H-r+~``y(MJc*0O3(e%PHYxyuiGr+Ri*@ zweDlyba_M(R9LJqF?L+96P~Cow5Bdwj45~yc6gWsE2ud{A~x#{m9pd_?A2cewOcPG z%c))M%whG6dWy!JR%^ZP)$N?K5F^DESU#8<$=w|wyRBOvnBAVcDG~Ek{+-hWMh!K8 zPz*{PVLBQVjOdpnCcAlpQ8Uqd%$$?iRk6cN%#eZ$jtspGv}g8)h&H)p46FyuI6Lan zwRYV(Yp_#x^~Fa|vq_21XE9_*6_pYQNK=q*g1vy2o-G@$v<`i?HytGitVf?Dce2HB zU|}Aj9OAa!Z6DyZC74nc(@+_^+M(a*p4qf@Ov<6CMSvj_1kk{%?3cz62cich7)%N0 zPVS{db_q@pZG3`Glek#nclq#J4JE8M7*VSI`RRd1WV%XAHo#9Y5t!I?HyFdU#A@%_ zBN)tuwS|p^h&>m|NyM2F+b5nxu2&N7utGOQMPo+BT$uipg93VRyFP_hgxM4qaY(i& zmJtkM%upFFiXGUuS!0m|tqmjVwdg&?Xj+U3EC0qs^oro);Mm|GYqpXdV2t%A z=NBH&e?;KIcI1t3E<6*PIfYt7qWT(IjmFwU&OAr7MDA9zLF*JKu?0jxwTudx!P>zG z1&p>)7AtDqIn|5)zXk9bt^okjAfJo)b8a@BVh?$9Hf4Z~yh? z(`r*b)0=qBwOH1|X4N~1*6W1SZ@yWWTq=v->PQc91~vjb+3f`QX+n(ygEUrgO0j1s z=4_(Lg=X9)fCYk1wkqG=J_&*V-I_VwPqom*+*r8)7|o2KjLu7G%BFct_tI4Ms7;H~ z>{wfIwI}N@v5ZrzOBmceD*hx@d%+msf-uDnxAFIEzg@q2w?JKt?95-23`a{aam=S= z1s@**qkUbUG3(Qfgg9{Gt==ts^c&Z=zjyxSZ_fL_u6*=Cu0GwpeeU{$l@DV#N0Ih{ zE#)eC=>KsdcwC?AqpG=oj(=(K; zUirrSdnufVC$ko8XJ$V6NidOBM$5VRYWt&Sg6ltRRI-D5NryhwfOtOsrW;eOQB8;5 zE=xTMRDYM4%EQcgT<})~W5O!~lbNw|Q`b)66}@@_(;Q>`) zQ47Gfcjy(YS3I#>1KXFE9{i?$_2(U1H_ydx^{D4YSI0kEn|fcLs8J`&;N(M|VW*Z@ zSS0E$o|m(_uk_m=;dQdFy~JSOhg@OX`Ysei{F2G3oUO^j%4iGtwAI& zsq6jTG6oup|P6r zh`5Z=(pZ?Z0~_q;B?1H|W4B(wEVBG1PFnOr#CDjl4dTW62`vs@A(pQ44FM(_*5Wtl54yu=?J7YNejNt@Ls1 z%g8)+!T=erV~!P2S_IN=P}9;QGwd%MCh^^*94La^Fs3j z?#GV4o%@AJKI(27CH}y6tt^@4(ZKqH zt~MPB3l+`Ohv{A#1U9M;sL@fq$c6AbR&njoe!>v>pqyx9;+;p8+I*xt(z#P11nc=l zq*$s$k3`-F+gPqnG|5&Z=&^wGD;!9GK3x)~iMo4Cc{JSjmN+gG$2bUAw0YW>ljdbq3;L-x{7JCB-U)P&H()N$T?u!!$OK9cpVS5 zV@N5UlqAPG2b2H;;}CrA935rgtmX*lKJ5~_D<7J=#6KwX6`A`Hebr0tgb23Y=r!rH zZXQUbgl2@@E+}B8-$-=YXwZ@wQ6;kns0jHWTJZp}(L}RR^$ByP-bRJMLXfHnq9ch# z8wV$LPNQ&Z!j^(l0O)k;idVS^^s*({S9a!5OCk?M)^(B2?CD9i$ZcIBc!aTWHCjmDpu!^3Br*IsT;9B(I5^Lv|D zFOLxUB#NvSEIdIWoJiOZ(WuB^8c9R~o5QZ3@_;xzZMuQ5Y$g=~udBo09})3G3zIa` z6GD3(s8_F*HVT2X)-aE*6r_p#R@5?~@E@K|SqOi?`f zTs_zaH19ch3u@EC_SMDjexAV@yE%17_s@VmNp+lIVX^B6Ic3+J=a9o~=bfUEFvK5Y@G zFBbS-$8JY2K`N4#7&fPts&}l10GMd!;2f5t>JcEnUy3)3oZyC}C~CvsDj~U08Yq%! z1}UfIc4!7SM5-gp^se1TToMsP5ym7_G7e7{$^oVXSTk746N`+1Uuj-O>$~<+`;%8D z1nJX3@{UEIZIsHGy!x=0!utv_oq(GsT~$xHm@6Zsw0EvXKaP)G)%}H>t6M{_ug>qI zhDZKE5`oObT!Tv8d1iegn`~kc-zI{_W{AO{>`^n~kFbe!oV-iheEiH57I^+<9CHAI zWMeMs)*w$Q@C~(kj+$RDCej5z7dws~{u`Df7?8;u6?Z55X#e15%ln^O{uHyn{k=tc z4KYMp>#;(|JB}%?EMi~y^|>^W5GQI+e>3&e&))ezzPS2ydep@OkZ8Jr&-BUb7atwJ zt| z=GSR6NJ|`paq3cCc_4Oqe-XKnkRtFCh;22_l7E`5ANch0G0Cd69G;_%MkZThAs z`wH*B@y6Ecb>BX-@ZB@B@ncP?yzx>(mm0K&^TbzNMZT7k_H|>bEQFH!kn?((|5DMhoCw$GeW|B-eB|rTd2C zH|oAxdP;DYWL`Tg?D**7@0ow3dGm~j3DPgS4<0$ywzQYw(#jH+xFsopm@Rjc*@}Hb zXxr!(7!gQLeV~g@O}Ea(I^ItAjBOVmSIbM)(NaAy%MOtn+Hze$P^ZmBuHCy7` z(u05NN-WRCiY{*-s}O&BKlzo-NOR$VKX@febYl6o)LGlsfj+HvQn9Y2x-P|PZfcd| zynse!`?~uTt-MNcXWSopCKfuv9K#sv-o6v2R#Y$e5UW7e`tm2oxAt2=S4nno#<8_i zCt+K$CFIdfS2^&x5cd!_zqw_(`*`q|TE`*|K`|$~m}WQO41(>j9(X0?J3~1H0G1U1 z>fg2Ym$)E!47jhqy7Ju4jf&(?J+Sr`Lh}nDiDb6+Ca;cewQ_9yo_7)fl;m z)_tIk9VMtY@$-6};&J1?2v~W9sGtNW>SBX~6{uV6%#Oaad(7x#zr%Qn@mEObh%nMS zgOo8y#Kj%p!|qM3*r^x$g>Fp&z~|ExFw9tNIR)p7eP|asA;;fqUH0o^A)o z-$@C*)$%T94!84q+bhz)AW7}P>>m-KyQ2jduduAiMQui9B*9X$0q+OE?gu-7eN3MJ z{vax7v~!{fq3{5L>hDE$ql7PLmO?d@CsI%M1Ud(Gxji*Ihr6GgXjGcO7Lr+@ON3UG zoLEjrgQPL0$_jVNPHK7W$qYFyS6_-U9Nw-zf-#C_XOF%fM93jlf~FO8CTu0R%9FKc z#R7u|li52lj(&7m5_2p&;VBF(-ik}gM1g!I4BrI7j&b&L_2BoE&6PW(O)U<&h{vp zC@L%ZP&KzrEgEImr8X8KUKLHC6;uV0VG&{7w1$kD2;hC@b*g_kwKTpnbeN$Z&oHx{ z^-ITgrcPqf#oHoG4?p8OR`z%waJunq^F8ui!*z5@QX#x7vkeapwU8*sTC3se>;*Ky zH((q=Z-V{@$2xtqM+zYv;t`DVQ8EQ~2T0XKG8cqB1#Lqsf=|^Czl%GXi9xC=S8QKq z0xys>bD@&~0kCLTB)ELh10>z|q)ZpmHHew9_RztJgFyaj59{7}XxJF0WG37mrsibZ z#riB^JtB`8RRurI%T`z_G|e_uz1C=%#84h!zd6JTODbYvu2g!?<~?*cgk*m0=5`GD=)x z-HdjWUO1rS*QhxN+dMehVCE+quV5TVL{71?p+X>>6gY`mD7!Xxj_jc%eWSrn-Am%| z_bzy(m>eDH8Vg?d?TWYJRoA{;_!sU(GRhw=y@K2kH0QQ1MkDLDw; zA<2LDx{+{54GDCy0ssqidKfi)(a1-mviO5R)C`q+T$HOJiX0Mw`%omx776Y*dC)Gq zF-89lxPatMzur2h<$Kj^zPC(}Pb&KGA{;8_oN^+ka&BC3CFqxZu<}`nBF7*}(R5S(7#uLL-M&M1(i67CR8~ zajo0Y@T4O>%0)LiAC5lO_cC^1jLeYDKETgI#0JqJ+GyqG+okICIN}r8?@v;WLVk!E z6CFgn8IvIO99l7$*arc{lbNz+=pfp4-$~H8ytwealy+_op96*R^5A%NyE9v`1 zKZzY}e6q0bga7!^{dW!<6Zpuc)PlZb@#3R{*S>l6b~;d-n9CMCEaOdR-p)d9ZLJjM+nlPb0qDllmwr#WeN$Z6vA6IXP)S>0Ujc)Y?TN$ znXxq5DcIn?3b((fM<1_O=4OB`kiEi``0-ELvWh!>W`nmPL@$1EP9LjXGrx>j7ZiyeDaS}fFR6QHb;~pi z1ol3Bt@yHy3Bjz%u{q=xWWnelTNqk{u>5bc}bKToiRU=^ZV zBnWso<-AH>cCzrCF=>s>U)mmgn>C6IU_1MEE-j`K(l26pa*__g~KZ_Q0V; zF=H9Rpn^1H4zE4m_kO|J5&t{z$eOBLXol;i>eQVHtti(0qAo zz8BR%Hlujv4>Y6+$MFZAAMZ8+hF#RAY6(W)nK+)nq1kglZ>*32+@u zeDhV0R?LvxymPiNm1jz}UQPEl{O6q?Bo^}72r!u9FTJ}Mbct@A{T?O{`UIdNT^4!0GRleIF}MA8RRyBAvpa0;$C8w_y}`CL#*Xf8-XpQAkTcCy*#u zSg*Jnued5BEK)xE7^K*hh8$!_hLb=sPGfKE7T>=Fs%+hd0X18XrMQxSAO{SJ=Nejl4z?A4eB_ErE+ z2@SFCQB^_zAxa7LARl5B4;5ss()8g<2%qWBDCoS+ zcP5fo10bfU$tg0K#%r~pBznjRO@wajx*Bja+<*0SvLv5DkY=7UOdt?l@yt0A36+{c zb~FNn;iqk$Qftm>1>KMLo!@#rx{-AvS&<`nt0wL~P>Peg-lo(Ut6DaNnl70)yXyNz zeB_!K{H@J2$bieF4x#?1l6RXpa9~zoCuA+f{6FP60|V_|*|VGWSINa-jKgCo;*HK; zS@`x?)M%k}uXH-_=$vgvLp8ZD_%8P-F?{}T_H1cb7A;{W2BM#&ORWunnMHLEZv-cx zSjNmYM!Tupv5k!D>&I5K)&j(Y%&&l4DMNV=hn^!}n8_zp=?cZ5^- zM2*oto-1QKyxSYbcq?gisLpus8aztf60yjLthR!{C8)vp1DQYbR@#}?%4DyReKFI> zL0&+DjWF#RQ&5SldMS=$f`EApIx#G#&UzE4hLUF@N>1a}iG|gJ7XYIf0jOn|k6KdA z8H6z@Z7W7s1-c#id~CyLR8kp;w_6})%j%)QDYpr&I;)~y^mQI2prS(~+o-CYSWHxN zj0gFqlpK_bW8%U)9g1a~OBOExK8p7oM@;_s;Kj9r3lEBD0x`XlJv))hB=6Ic;=tL49OFhpRl@B$%YWpsyCOipMok3=#tGZ`YRfL zt*#W;x$J^#`hlhr$BAJl-f;cT#eYheZ=kBei@JwN??~8>Yqlbzy+X1e>HQ=2Kd=1b z@80|8FaKD-`F_{7{lJ$s|45t9PX+s$dscO4>!WqrIY{8u=tG#Lqg+i^uEgF5-g~-o z^#w=rqk zSjiFJNdq41JG$G~q@Hgz#=;D-^?@m&`SsCH*~lmaTPp0tId^g_ODMi|e%b+sRN}N6 zlnJVYpyh&m}P1KaJm-IB8gNHy>e8mEo1M)s2}nt z;2J(L_K9+%5suk|Fg_ryrh_3fr@GpcO_YF)<_J-x((@7uPndgidf1hmJ+F)`DC6@ydk^}4{AJsJPo1?J zW$i|UI-eI4p%J=^vGf?ggecdLG1?&Ep}iP_2#JGV?M1w&4l<==b7vtPLkCdPhf0=a zoasuJ9-bl>7+0DoOvc*bfPsZn%O*r#-fI?@v1f!cL@#EK(11eKXc|EWtGF)ySJPi& z)?4CzhHwHU!*3AW(>r^|6FLOQr5Qy4j(LCN6&0c`ul*07cL=Cmy>Kvoqrn&n^L-g3(eIW%O^u(|`iiz3`|rPggawC| zPdkR835Y=-y80*QKA<^G*I8nnM}$Enan$T|rrm+(35CZbV|a`;_jmp8&xp_FBY%z8qf7>!*zho~E+Vrpoa6|LI63^Ya? zDIuF1iYYTa9G8!JpG`Nx3G7vi>V+cGz)a6iVG}R8lsaQiWKMj0@SX2oyOqd2$6W?j z0Sf@1So~(g+9ya)ISo9ztvFtsxte__-CV2BT4M9q6S_9a4=P1vGCHP(_ja)bV?iuK zs_A}Z^4#A-e^x__LK(6WUcf;F0<=-Cb#KX&&ga!&4h9hJ0!#t1o+D3&U)s7gn^>Mn zdQRgE3D|thSg}gt# z{ggUVqEEq!aWNF)TE|Mp#8pJp`DWs~$N|VC+ZGS~DI; z>MRCWiJBsDpuGemD1vk?BhmNSK?$O zdD??OC|R_~N>QKVboIshkLZ0RG&M#Q`8!+<0wHIbA&euO=IzZ1(?!UTM%|#%RL2RU zHY}3aAv6_aa(*yb1QoF?8&En(GPS0=k?uI5@$g^Df`I0Q^QyC3lo;+XcP_302ERK~ z*BP5^%^uye{X#8p@w>}M2Vhoy<@R)>Uz;7o(rZk)$f*&bPAfiE;8z|-Koou=cnc1! zw|>Obg^eER5~;2;ySTGEm?pJ|P8;PC5$EJ$M?5SMzV8I|M=TNYo?d-o2yH3>uSPHG z$40|7j+Q%h)=!^J$9nvBEz?xn-xsRl}mvK?_EjFoHM3^>IL@f+>g{MMKVqY zkQ*G`Ixz6{KUaP6!r^#!fnjo_t=v$I>8yNiEH%`^TK1{{Em3FjY?G9f%8aUc5Hd%1 z4u#ZQ$UGThbj1m7jcB&>d?xx7&`ZqtftdI0ubqEXTq}(Ig;{5jl2x93a7F}jxf*vp zbp$o0yk|6P5$ZueD8&3d@;<9I%S1Femq#0gxs29qZ<%hFGz2s!2$jhI4VxKfF(*lT zs^QL2ze!kF0{|#c8+g*&8CDCb#Zx1TMb56~0i|gf*bDP#>H!4XYEJKW&z}4GpZYdl zMcs<{Es~thdD!_3!aVlH)Ni|87Sb^!3bWoxgpFcbp^n9WN@)$LTYi!-Sy#B;Ff#NA z3a_?;bfLW@N|bLbdQ4aaDSi+YNY&RD0v%5w2h7~4A5PbkK8BBj4Hq^X>Tm}-AFXsW z-5{A(U^yj0a;nCttClG)A3|@x-Z{6Is)=_a%4nMXAjn@v>pID3)(ITz>0z%VP@|OY zLOjVt4!rPrvEG;q5*^2dJkZ42h(RLH68$6DqZpBBVKDm#q$Ou9>)6XPMbAJpYo_&} zTnCWCh>QShoDM7w5Ciumik6evV_br2R~{s1aP;c3Q}3cw=GWxmltHM-X{y{Z1!D0k zKa5-OCQVG^y|}t$UjxY`3Q7h1G7wh|v=O!;B%TO(vkcu`0A(ZktJujgnoU$jJ1aD~ zU8&44iB$2d+28;0-M{_A*prtll`QYp(XzFdEd+~f?(2;muiH8pj-7@P%IdHMn+7aR z4BEVa)bktrO{=A^DwPE&1NBn7UW(tppT>|eonFMn)RqpSQDFuP!`!Ck1~*SG$Bu+~ zW>Q(<)t3e~kDQaB69y4=K{yz=x8Ur-&_GkielU63#>|#~koHZjJtuSTrikWRRNc$p zdH!>~^+S1<(Eq^0@%Uoy!^DUK;}V)ssF}NX?b^xz`0Yzi?&f_P`Ij$?f2ee2>jNTs z+`M|0k-N5FRnOZns0x3k8{H9OijkD%vRYQAR2S$)PPJe_&1-q`;_&8cVYQ-y2Pr+! zFJZM+m7G!hNa?_c@DEAosHsv1a@i`vgw!Wd;*lTPVRTfGI1n2@LCPd|F4lFFgp?Dw z{9y1(J50ibr&Eob=gUeogX620k%*Pb&7%&VGbUO@uF=)r|So8i8QHNM64Z|&02wb=vY!No4mrw4f$aC#zN z?-t%Hjel7ePI(z9**U}QPo57weyM`NyHpO{tvu3HZcy|orwO_eJ{VFQ7H9rJBRWLl z5_1@|QnK8E>R@)In_BeBC?_W*PmU%CFoY*!UEvMI(a)^}T|^JgA~2>@!w!s2Qpzv} zJ{~W};I0EHG7wZZXbZ_Ob(hP=u%TN#P(*M>FyoIfMn=7FjQ68T(n=cB%>uLL_ASOn9sjiIla6r9a73ma#jH9En zTxPxQasij-`%*hDBu6jlL*uKHuYPp>f7b>}q=#y+QR|9z-@Gy20O>I;`VdsXe6ZL6 zolqTEc7U#uwMh3oWwRD6z-_@FxEo@L&#}+I0W^I?_%QWsZ3L3M>y9EsiG`2xoq_VmMNhabIEykUNIx3`;{=*dq@ zl0}89hqBd%0<|w!K2IMrw*kzRMqnlxxuT6vl9crD+$V{?Ye?WwE-2dR|merSr{`!NJ z^;a8}LeoahQCU9rbt+w145$gGCNYx)G)fxfqV@5|rQ7dVzI<>0gWHEw7tI(1b_Z{*%!2YjX#r(??K2J|;bdedf`nyUG~02zW2{R9%+gt%PmDk&-H3 z(2H?x11s)=gaA}3X+EtK)F_!<%+|ExzEoC&lI2vh(f*-@z(eXyS6O9-;D!*=Eii{s z5@y3tYAF%%fO8bcU1=MV#Q}uCQL9M!xaq>sSK86!(=RX$PP^(va1t5@LT(H-YPGY} z+oVjc4t&CLoEdeh>U`pa_x>~E_g=afKkC}a&Rl)FjR7eV)0F#+NU%(!Qq17>Yn$Pi z62?33;0CrlJ|T;OgMeh%%;=06LIZ>B@ea4G7DiL%DS`KrkT%?qp|t=_?OSWxpN4iGI|&@Zko;8rHL!G#%QZF zUp~A5HW>tgnhbXU!A6IGLsMwazOWb^Y~u(lQT$Sq!+@0}acmteVd%$#`mysocN$|% zo7-fE*v<(l6DMSrqONRh+6ld_j4skCbFOYqzAim7YF-LX7qoWxKTbU|iQSBc94$8p zYtn_p#pz@ajrUEWGufddl_w>6tNPA%-c_w5FKIccwBo`;5aJL}cA!ym1__p`9~bgQ zlYMWE(nTHt<2bUF499>u)la^SnUxtvYK(^(X&1pC?S!O{8&Fo1PqIEy`n#Px((Ae9=F86 z3AJQ0aeCOOXdwVvcMwnCD@)JjsL@(ZwMihRvVs8|38k!8;Hw+s!PL~^gRx&H8!n?Q zM~aW%M9}Cge_c&7a=}0DZbovDvY!T+Ni&P^n3dK&|BtpD2P9+2%1pjdbcQVASGH(kqLePU8}b5VxqV#LPMGJwH^ss>qt z#NpwTaRbC~Yv*lDn5mj1Fw2ERb^<;Oq*L_yyJ5sX_%&?22vq4*<8tp?n+*0-7UaIP z5-l=~2Q+u0$C-UHrLQzX@NNvT^D54+he1hf8f@mRq$sG8j+$H55)hDj{s$zd9HDka4< zuQtrbtFM09{6}6%$&ZlDHO%=?%y$^j5c(5Y1b6%N!AW(f;L+#{8-4pepZmebzy86a zJ0}u1np4Ze8+U8g-Yo>rh4~KSB>6|IpX6$`&S*toi<Ph8|6W%I$ zvOZJ1Btrrnuy@%boPH>6V0z1FtCQ3!Xw1FX`6b*Wd<>?0U!_n$I{Ivvm;0sjd-A3=~04* z#-Y0-`4%Hd3nDkj(tZfr>0zLST^M+G2OWvU#dL%Vu_I}@9*^F5eDlZ`@4oW4zxp44 zI|`a_ zB1jg}Fh#ym#o7Y7QIFVlJ@taB3nE|XSFD%PJ&lR63?}(nbpQbAHrn`fitgN^X}dbpA$1*$xy zD?{92CZ_SN>A zpfcYj2?#3n5OGWGs1rq#z>yWTQcr4K=Zv8to^W_ssl^JN>`PBbDmSR|5#Vy7Ef*Y6 z4+nCGR!XjAH-3}kWdz})=^6&k0-%#^IFqglnJS2i%(J4lod0w1^O*g%#H`4Vir?P> zx=oytwz9OVMtVl59le1K^S<@{rtOy3*Lz>4AK_2XW|2t~+!oTj`8b7f>m*J$ZoDcr zCl`0D@>KkE_4Z+tR$t5(i5nq#v5Jg?bjtvf5G8UUIeZB$-sb#moDs}<)(_0UnnoVU zv_DyvyK~fp+emU5f*!KAx9@WVbB{>HUyC;s$V&Nsi#U41tXle;nr zh7?j|J1Q(m7mZN)5I+F`1XvS*1qW+l)wgU|Fu!xr4=Il2hwZ^673l2=1}9=}$n zUU0|9uRIC<5^IcV&ez)Www6z)f@evd61_nnsP-@2@Bdek7J zwso$G?E~G(EXgtup>Ojjx)fA24>CV|^x8$FxTVLD$AVb}bDu#X{Wpu#;wdI5$%y;UQplZ(<~H^@964FiUE7A_=q(N+s%jY%&jr_!5+R8_PeP*8e7 zPtI?nK_G8mMlw_ zJ+^1;$@a13pg>Y0NFsIkV#DWp;41&%@kk`l{eAEIg!{g3{zajag?dHn=mf~jjguDq zKEFbum*^ji!0OuQ(^oGVp#{}fu^Y0g0~LjtbMV9sbFrB|$u zMuQVox%^-*f8k(Q7+<~B+KP?*KBcJ=7G=2|-!aIV46|LH)0w-wvRLRR-zYJqd$Q1F61Z2Kk{H||94boAs5*vlY-y+M|SqO=*YP%<%Q z6gvqMv#>+yIa!*mkn6HDz=yCKzzK^8tp_W2ISrI@no1iSD0?gHoct?BVnGaU-add- zA`bWXSti2Fp|@g2S6ZlgxcaOag8)ya7)Wy;GD{{Zbcjm#RUweu@vfqw4HA_lTUVk3 zJ=3HQ2nUQBz=htJs~mTBgm;Rv-<)LAXBVlVBQ6>wnq}5HY2r)zI0?zVk)hw{BmgU% z+Bi(j$|@58mjtS529jI)?U`$mkeDI}CMo9KB&Ck$-{P;z{N$hJHs6?1FQwW4 za+~8yC{7-iHp=N{QKg-ubFrZX6(%Id4#i2IzjUmZDHC1;hWUkKQ$|e!iQ3baw~<7G z?|@fhj*p_ZG+MdxJjzMuM(s<*+DdAE8Ab&is9!imwU&9dgo0{!aV240B!i5VB~-My ztV?`s5c>7_8Xyj%YhHrJraM3r7>zE|DHu0CcBTCiASRaYP;N}iP`RD5(5-izXXjYz zzW%%L?>0T}3URTA{Sov3MA3UhOPnnyI%LcePh#BACz=7i-A{da+w#&z|8tM7Jijx2 zm?UmvDSUtWYo*w+Qs%h)V6nJx4x8;|#~9`>IzjML%o~;|u4B{IQEnG1vf7Gl6*8xtSAg$b89HUoqhK5+y+{O* z;2qp4)-mP`9U|D+Tw(Yyyf4Y281yk;!hedKo3dwjut!_-n8Tg=bSo|ubZ!J&$kd3C zblw+yI=wtU15(iqGq$2DXQiHC4P;t)2mx}sghSYP54#Yi5A`w{8(Z;K_oKJZY`+=P zSMY3}!_5KCi?}Ym9?@nW4oY>oU0b#pi`jB!k^oRyggT$_kzBt4f zT%t@^=8}=hjRqf}4+P(mIoFGqU$@K`me1= z+e>o409mz-k_LqsgPK;nGXW6Oa$d2mV7SB-&alqHwJ6oB$ZwhqvPI&?7eEjRs)IaW zP#l?w`3&?wxOI>K^%AMfvF0aUTpw6swo@LpYq1ND+J8*PB(ulRG-=UFYbC-GR6RiC zBw5B2EsrP5Qvr&-QumGR=~p-BUk4(w?tTWeLaFB%*`S2|DOcTS$k8C7vt?Py;z`P_ zU{JaPtS&6XV{VC|!IU&KLg)h(ARZ+|k8=Lt1En1%WiJCq4vM%NUnE0sAUSY{4<^(1a>5{y> zzTS`Lzr1qkmA9L5qCV$d9E=VxO(NscF}tmd>=OP|$jt9;HIk?#R!DIRa9 zgcej?^MYRG*Uq<=ZpEkxaYo>S&=>p7j`5uX_#7RI^$LHrG1|&ixN+t%-xnWs{^&H5 zIv5K;>KG^iWY~Elp1-ulT58L;k5`pZ1Lh#=c?26+PIv{xb!&?ljf2dcaPv_SmAwj+|iNmyX zDAVU~d7$LSU?n@;&>E5P`9tmb%1c{sIzE2yrH}sc_@lQ@lh>oIxwZKjT}1SxmE!_5)F*Y?dEB z)Q_4%?OK!FF-J7*b2zFEt{5{Qo#DWvu4hBRFffkhnVr|(Y?ccVLyd6xnD(%k6CNNy z`_qF;1=fRzTGs@fNjV;SeC(CtIWhrl8KqgcvctfHC z!z)Vr8gc59pFUJuc5rz?x9C>q>R^k}i=dU79Mq0?K|` z?)T(~9#}4BZaq$Y$lE6#XO!Mi=iWHZt4C|Ly!({U3G9$`BFrmjavz_4Q8}H3>swl` zSs#4n5B*>I?83J;GS3y;Png{uMy!TD8g$j4qdwvZ%+4;gNzY+@B048e$2?KHf=IqpyWC3tXqF`hgND(V+ zpHMe|II03!CAgDD>&R}fpZTP6oGpKf+;(iI=EMlazwp5#Lq-!BB1B!FksHSJgoX!V zAqO&-vSPck$D*0q>9|YDw0`4Y=~6Q}gKS7;8=D;EdVM(j3#y$R`++U{3nKAC-#9@b z?FGRh!=+?W);&QIA_(nGz*&9r{POy@M`4wq$;sbtEnKM;Nh;E18@G>Tr|t$54>Vxd zC*cT@{h?ScNy?$qBW^4>>XSW`c4DIrO-Ncnmf&49nSE5tf_K2f7zWaUqA973t$e=n zzP>!5je^bTf`nXf9@08%2!$z62HE7A;d$M?O8Wp%UF?C~6o-BK&>}4=37h;Ydgp>T znn_+88Idn55+}Na%(YGHzI@;SJ`36_JbePjhb&6;038{?qFAV$9;H~4TuA>AB_+C0 zbX>eR0{HUxAY+jGB@@wy&Z`%}v*dQVUu7U)>N+W3fychJf2`DefrJsUDyM^Df`<21 zb67nS&}$hbq5WuwC2IuhL_*(93~^%D8ZLJ`pyV;9)f>mqx#0>d$Dq3ejld#_DgxxO zS@fE)&?yP{^X8P3j2(JF(}1}^wnuVzzWugbD}CPbSloy#bJhuY548gkVBt<#0R*i4 z;>E~eng8>jz&VI0_s70UhN-|pdniyz4jrZRD$SllIHz~aA!%m#DV&NVY6K#gEKu%| z4q``TGP&za^VXwQDqETQ(y`(*^&)D*pSv5Ngq}gi!pmN6V=?V1+ngvj^m;Nt!%u48 zdeHiFb)~H^fAaD0chKNLpODHB$SUDDgMP%8TI@2L9m2wP1Jo*HnW0C@nM2V3P{{N` zEkHQLNytwt6J6*NlH<%+0Fzw@cLA~-u&zd6Sytz)2(h2T*u>F4o5RMnI~*%r>D0$y zrA8l2eH}3df*Be>Q8ck}h+#j8qnZ|1OUIa2M>;AS-UQffqaBGd*~DXFOo)#1cq4BX z>rKRlnTS^p7aqzMHGG;86Z|w-BIpTmP}1$n{VwkXCd6UFp+vl4#hijK638llHL(%M zqWTd|uox99A23D>)u2u4UQ*aPW>o71?7fW0h>R&(PZ-@OnI)f{iA6m-N`M`^2|gTI`3*pZNeRW5g|_ic{}#zuhV}h^xnfcg}0*I zO(~Ksg^qFy%d> zS!SifO77Ln<}~5L7#M+akd&9jr^(N+4>usrlodb#c!v70yQ6~2EJAHH(gXRRxc}dXV&4S?r+r*qE@fp>( zpEgim0EU*4RM6xkfO<)lO~v&temoz{ZQOQzZm>+%QI_m>44yP}YWlJfVQ>`TQYP?7 zuv!UHDfty}(e7FBdV!+ji^n@KfO?Y^t)8ti7J7tR0@&Hb+fAY3=UhVms?D)7!!_J% z^wbLAD{GUm=ESJk192|2Q+I3Q#-ff|$3l0DR)<7jEflwpm|3=J{{H#oD+w7wjA^b;2hNtB96O(^D#`F?$7 zn!I&$$}ItQiT9{vSPIZXDcxtxcq{ifc`L};S-8VAE-f#q7oEmpa%be;N29+nCMHl0 zZ~I;-0tzX79978`bL&jc3aaiy%9KPC95F3B<8XZaLrNNa^C& zXI;hJhrF{Fs(@5Q4wLFvK6 z`|t6OK_H5MjS9-wAy-&9UUVLnHY8x@cVW`SHJ4vJ@%hyss3Vo!-2fTNz5J$Lb2gU0 z-L72e)-FZ2?=~A#om)36l&cw-W{T$o6Qu3NLx=$3#FE7ZxU2-jAHiE}a8Hvt4JFcy zH|^Sc*oX2pQG^$2PZz48&=4OP7WSHJ8l#7-cOl7OOo-334mO(Xj}IS1tRp^B5M5%(uP-$4!dzV3Th`_9qfnf-2h^)fteRAym!MMR14I-LCPpgEk zl^i#8XN?>+{sHo*jQJsLjPIqBbq1x~o*dMp&!ge=pa+jMI1f{pIOC4o`XkV{EcKox&HUkIWZWmp9h# zs?#gt1P2R)0R(+%cBS}AL{BcmUJwEad<^G+vRMDo&kuk4Pc0w+dt&3A(ZXF%;lc$5 z#oL_+HuqWBa3O7yx!E8Cx9+Xyvn&p9oJsg5m<3lrRu4lw!&oe{jFi4SG$;a4`nS;xWHZk-Nw0lR0@GKEdGw90=l#(|%?$pIb zd21MD_Y+-#blnb0azWeYzEuoNVMLo&FS4Db4x=S2C;K`E9_+R*``%7a%dX*l~c zPrpynfHpT50I(;E4oXmE&9M zH-=|OEhKSOv7agAUS=o4kX);TFXTX8z8e^lxGNu_u2W*fYYa$J&>brtac}-0yK`Vj zIX8{~WAo-|b%kLRlobX_iBiX9=^FZ~#d{Tj8W$})M{!&d>MbY|5#epR#yJC-hi{~R$l9xP5)WpKpi;&r8!HD1JQ7UMpiN)s3YPI#qcXkd(7#a@GZMt+lTAbrg~ZI!b)wYU>Ic9f!$S*@8n}L%VOaIbS|1i%}8ma zPfZaJygSJ23E$OAAP$|H_$8D0{Rd$hi1F5%({n4VhxYb9S(tK)^BVdG5n$IjwAKa1 zcU?+Q8T+F%w=hqjMlFP2hWW2W&#_XG_bAr(`QXOFj^#+EK1joQ$v#WIoI?i=;)J zSgU!AIbEgEYvnOKWeIMsbu;PcPkLl2 zPuN6mLF>Du*SPSl!@?E9a2;}Do8f8reEJ!BOuafTBq9I^BxuJ5Fean2Mr9{kD%alO z*6W}!CcRNy1GW{g?V=7P?~i?=dkV0aRuKW4V2*W~GZ^JY87!c7W&t7csvh#Tc=kXo z4VV4nO5%F4@6PYszuk$wA$pH)oCwgHb4AB7%I{q_YH%AnpknJ)-P&k$H9ze8>OZgk z*H3G{zIpC2Ib6t@iVYXbp0?lK`n#uZHLU+6P0~Sr>}6_Zb||~SA!M9d_8d0?1;275 zy!D0!28(t}>=6nTbqr4g)s>v%P{K3C zj9R_QrrQP`LaeXLGL&O$gPj~V1O_E6KQh5ik-t+T8)q6`Bm&`MwLAiE1ez|>ZzL!|bH<~sb|Gjt$0p1`1MYsJsFmfpjoVkq7AIF% z^iD{m>^-|SEDZcoo&2)Kd`7w6SDs85A0t z@cV2h0hCeF=lUd3n)04C1chtDU&>zJ?H{D!+LJ`447^d9EY1#DCW7lBVZ=3ts#B&J zPS+FrcZF1JY1XU5EY{6te4{pzuy$|=ghhQ9O>#a+(R&^b8XW8-p{v}9LeGn{U*?nK zQ9)8D(O?XS(DLEG1MkB)aW`p08YH6PaZ+wEM+BJMlE$vAo|i?xC;Ml2s2Do3JDed4 zNuPy%8dE)&wg+A>UYTcr!#_|QyZ%}1pN-%m#sA}u?-E6{Q-2KUZ0Sr(@fgugA$=LL z8NO*3MZQEQds>n47?uvX79Asc^9<*SRwY5_teCMv?{@WyJiD6>*A(zZiBn|C+J@$(Vy3=u7|!=p2id{6;5q;-ut z%wQ{zeQD+*SDpkTcJ<+P7~wqMsqna$_p#Q(IH}cWu-pz|1i{#Y^_% zdX0DM+)Y{`bSYxD$1K^0xn@k<2OYSNDH&7ED_wSEpPG1i{bPAG~`^5`+hH z09(w#X>IU=Hn7HauP}NGA>76bE!!`VQ5#U(s&~CMI(ku(_q)_J>nAt9{V#XEBpMju zZ?O7D>cg|$%?q+M_NF-(FXfJz$r+#!3=(mHJ;?r(xD4W06q${?L=6=p$D#3I{HxSI z02|q%vrN&ttDeNa!(+Db(()HyheQ{H1p9I1Z?@AfeEiyT8&mrv2#J}z*NyoC9IJTi z1d`cRwnRz6LyLuikxP&{Hs^e)|HPBmDt5^(A4C9?EwzbFMoN8{3>IcDXiMnCu_VW( zKl1FQH`ZHM_qIUOfa&9rw=ek#T96V8+ga1t)|p>G9K(_BCTB@ z+ys?1CmvQf{sfdoN!`D~C(K1Dq`_!9pS#EAS2pqvHv}Z3d0Y>yAOps#uZFI2d*Z27 zoo8vdkf#z<#Po^l70VlLNBD%ij8dWlG$yKylq)2)kb5otB-@rwKpyMS&Npjo2wZ#h zwUDtGSL^2~R)L+uJr*WF(uur*n;JWbj5Q)7EFT&7Ar$~dCmVK@{Nj~BQ#vl`v92*r z>4N#c21 zjvpx;=CQ%8=F{6+HTN2dK8XTECCI?RiG>6~I2rU&iOcL6MKJ{oO|(5@cC=DNz!{kIQE7(zoNWEU7U60 zAo0YWo#2aL_du~Rpq6QBtn*>l*Yl2p?0U!~l{iZvlh)97<6TiOPE-Lnk|NgQr=3xK zr|4qvIr2h@s5nY~Hw+N6$%v;(5bFaulWvQZlh6iyBU1TyCDB;Q{<^bKImPcgA%>Bl z08AhW>>OJ(+R!hxJ%0T(h*1WWg}WqQ#HFhZ=gcgRZkSG)b_0qasC+ZpESN8Gc1yV> z;WC+au#lz|x&9=#Ih<-^0pkPH3BTBBF{B86IxXW$8;OBByi&oG=Jag|rK8>1gkBd|aHvdD<^U?!6KwueeA!rmESp&h6A{ov=WpBwgh@c0z)G;Va7ED*sVnr$qnpzA<61MimLc_=ns zLSsNY*@pXv8`rOIyxXr`h!=0i`F7|mO7UY4UpTz;Qg^=cqEYY1NL4yDvGEdMhm4p* z-3TT#dCOtL(ZEPY#u1@W@gL#Qo(<8GOL|E1(x>mf4EGo_6r2ZRbPDSM2R`4g=2}DU zYc|l-^W=C6=|i8y|EI_;dT=^}1@333Y1#to?5>{svqs{trwNIXFRZe>U*#G~2xblBKS>3;LwMx5~(TA28 z&B6A^Wbyce@y!cIet+R_b%>pmn(iUVWJ$I&@i2$R3!YbsSDK5roy1!sn^)$l#C2|S z=#3ppLye?T0;&pitCMSJ#>6%3Y}yI$XJWb8{sxN@j75d{(-i6iD(RyQ%C%_zwRm~D z7vhkN;yVI--H@?$KiPsPkL&xL-Uh04yg!v2V72~tqZoWs12cZvU< z(cG{(M*vX9oWq|Lr*qMlxG!An(*+Sms8)`M)zytxE|o{p+wm6)1BZp8*~=9Vi4IpI zi&;Lze;mmkA#H-~YzWy+)dX8$DUEly7UK*sX2tm%Yf z){D4^#7sGjVLT=m^lIh+A`lWxL=;DWpJk{-8KNGX4~Rm8eC@!RQqjKIaKNy((yB=0 zM>jd+bo5zCmPE1!s1yAX5r@~em7xNU8lA1<=xRB$Ax++Rl1dWJosbg z9;Nh6v2+n(%ec=(-FCV|FK({3)QUFs`MR;c6Ek1y|k-2d!nb6+j> z9pn7jvlI5P#bedWpp_TD=)aAUzc79qrmHeRY8zEw+tJD* zBODXjEqo_F4R}pUU<^^sg}B7UJ7dAQ*1LHeED6`pK*4*j+(mQhqkt4P`&3L>Y1UVB zfK5Sz@$CKe9lbIiy4y(ksJrs)9D`R zPnjfRqGzZQ#KlZI5C5>2#NyoJiu=0RiBS=S z60RH=?*KF7%B2x*9CMDk6gnkd`-sspM)sNJyR`Lc}tKiNx{dn>JfD!cA|LhmmZ^_uxhTE=#1Z{Z^9o;4X78f#uPB~lXVL4ko zlBXkTmRQu7Xf3YQ>9e>k99!NWAlrb!1?QICibyh2Ua4({JNY_TcZwj;4athnpYoEG zjStu__nJ^>kd8zld!w%=z{n=GVizSM4lFo1q-$}r3?O#p?c<3OnK!P1F8uHPVh!#+ zZ}=DY_CzDljDc23#C8teeot}c6!W5j>kfiUqi4Aozr*FIS!)5rF`Ne%FBKXxPU5FU zu?dz?;WN{E;ipAVK}a99D3M`ok?=c+v84+uD@Y%T#xy%z&3(b>o`EON`Mec=n>+OB z==bpoaX37D?VvWpo8mkz+6-H-Xw(y! zrjb8+b_e%%no;ELA*qwOJ;xcd(}3VKVarLfA*pI^=9!W=#99sg7zxXu5(Zqz$<*Xk zarE0EX7FXDP%&);e^hwcS2{+7ahG1(U8uYIpyL;kycV=$osd~aq?seMkyo*g(`!eK20kLL=6ccdHwSjC2MixLck-LUID%z0 zVD}35((jfaT?;}EdKq9Ni2tpO+>vVv;Gzz7dd}===DgzbB&k^^^LJ#FuSv_U8nc5O zVl?9$Q_ssHBh2ijni+x^(CFGYi}=M6#fkQe=`rh=Abv~|rUZxRvK#I??o&}DrbdM^ z!f+!O(g%@k5aPU7MzT!jt%)O$17^r(EhlTH$YkF4ngmOY)^ieS3vHyrDgG0To1_P1 zXi2kXV`D|XoF+^hT?d14vnl)ddo%0Lj&3|RxOHIG=$JsKt<){aKa6gn&5JS$UXU8R z%IG_vKB&WlLDfv$C(EzS0CIPF2Z@}sMa@=U=_F7rzITKQa8BrJ*vQA^f$vD0v;F*^ zyal+w1?yeI){pV;kY-t2KX#8Pw>n!3=}2*$Vpb!$NQ1mwoZbO}7CHlb2&KqP5vw}} zKX3iXZ)^WkL=K^L?OYJ-60PFKk<(kzeGEhN%1HiztbLKxYRz-S_Uod$q^0t>j9@MD zMb>{J4Fy~l9Do%syNThjkz;FvdNcCm){&j-Rr>6-IGRIlp>ny>CHu8r(M0oKhMy~%Y0sK zt3|7`{%-Am{_;TarmJ`zUAG@@u(mWxv=C!ewSg5?5JXsE?qq4MQqR=nTaOlwx9u^a z*?jeCnN@RyS*{Na1JgET>TLcFW&ALBB0ai-S*f&G&69wPhsh)>d)-@8v>r38$p7$> z4M6ub>fr-W(jZHdEPJ-zSV*XUI6_4xK`F&nC7lwF-eAgDM9LMQ5+;yWge9z%`#GFh zY`H1CVHYF)D$JcIPa|MR!lK+9e=FbrDwQD!n*7RXJyR=i_%!RhjBvL+c$y$Qb2tnO zq20-!93v3Q@Uq`=0zlxU!)$K$5{U(GfxRueRG{eW+Wg@DU=>ow;>jX2R}SQUKdJH5 zCk!yby-K!GH#<|@ixxyp`s}23ezrW6LpIMOA8#yIvk|B>2RiVii)zK@m0>vY?+A() z21@kx7j-l`BHEC#fG(jf*un8luQC+uUVq3Ye87e+7VmNz@nPStW9uf$Dbbd3a@o z{W~XW^vVEGrr$mD1}h9rI)cGc9sFJ&>ZXTRzIT7&8xJSHfgBh7X*t)yJd^z( zgG7>6Hf--GzN^&yg`;dm!)je~@eF~y1Dg}i8>20h{e)jgE)s}xWa_aj+9yV)yx#<(IG8pu~nOUr%aM6yMR3l*F;Het+X%L7ObCU!?~2_c}GH2rh9zh&Sb=i$Vg zljGD9S$lS`PqYK^j&kQRB~aUz5hgwLyhndT0v)njQ9KSNlxq=!b=1kKt+zeK$(aaxL@4yXU_6QT4-LI6nF3i9h~l>UY2OJo<-V z;cljQC#)@x{o6mkzV+G^LDM;Frm-URj@gA5k#`5(d2L0#c%$r%P`X zUU9J?7W*M*eyVeK$XD)bH{$iO-IFG<8)it^-31$;ibY=>Q!j_Ok!8aL@&(un7!#n8 znIYr6pXf<#bOln1y4+$$@ElF6%QMD8jLc1zbWB%@SNT63fPl=IFe%uKYRxo{ma{xT zv^u_Nl2}oba-#MDW!3xEjLdm32*k~Z)sD$P%!c4o>m=NnH7MfnUSnjM!;ODYSzLPf z3(u1e5<9OYAN<4l$3M>G?-HSF(=PUHzU$G?TWJ|KF5h{4{cd?=@J}BceDYrVM*n+6 zB;;R<=2x!njNjwd=4RIy#>^>RcD%ao!st=$V$7Hx=K%ctn;qLPI<(r3-_QL`vG)jF zgE>jGv?D)v^WlwmfO#Sez)Qj`(G1O#8lyz6e`NW!*pB*W8^!;N^NTG2BgFO4Gx^v7 z8KA{#seE=E`ybf8hAho!qI4X_&AR#h^iF2~AFhA>)A7IiQ}%CgoJn=$^Wud>C?Y(B zv|mmP4g{jpC@))<$j(OPPLQ!N+$eoe!oi1DI%Uz^=SY8Gk14a7-XXPZRqtpv8ggbQ zu|&*-xwD4#^Bke{`>aP1xdBue!je@aAbnmnqrhS?}3RJJWXd_EZkR*C06Dp4&rs@`I{SbR$ zAAd`EBE9ua@bL$Z$3IDY_S1`>{`Au3I|IgYv^>~t_P1>=zpO7hK`Bb@J&JWyqLbxI zVYX(S!plQWJ(E}gEX1hHGx|!(oDbz+O>g{gn8qJp9y`08d*k=tM@AB)ZREISL;d+T zEuVg+RXqbOf23@||Le#fWOU5vlFTe-zZd~rvd4jS>5569!!V^R;ys-B1AGqUQMwP0 zm=;;LF(v5kL;L_*1lNGH>P$pA?a{g?qDBide~ifhjwp#qVTf=1V61o~g>+fypgFG= zxVYZ%BUnH@6}w@05goF>>#-I?hfBWWeB+w`ELo7IujRAo-abbn< zpgifNqBC0}Fg6)PtBs9Div?~ui350%*u^kxmv1)J2Rwn{1N$$@mIYDX?vM=;!0G_5 zmIyT=8OmjEXW8P!wuxSy@vIiSP#$&fBwl9}24Ro+HYj_w|BO<*#J8#BPV(nSmIU_{ zC3JYWJmM5nVUXblN^f30P=4KPvT&;r%E>W;uSC6ID-YofOv)NG+l`W^+>QqjQ5@Lk z5tf^zPHew1qOS$b@rj+;J8+dLKhTjvsQc`N{dyf+^^m+oo&ZsdqF%sJk|vXpofkEO z9T_&W;?4cDJBMaB8(&jvXN?vHn5+O0c!Q}2g5($4m5YBqQ%oN&&72kOfhR6MgNuDc z9BTlAB1!_Yqm!u=Q+lH|#;OQ}FHI$`86(+%>RYcJG~3x;Ipy5InGS$Ga{;I$y;ae7 zTkl>r?X5e({c7+Oaw)24iI*MOYs5IEnYhNLOz*4=#$yvD>-9e!eE;FT+o-=ZZw1L> z$_aPzD6(z40rbGfFmRCI31B6rMP1G43 zQzDI?CRZJ?B5GmG)KUI?j-z7mm46F;Qgq!C$dVTcmSmvk58ZoN5z$4&bLhU*mD#P=rnj%JVFwoQOJ^s92V;>U zu#1OKAD`9hM@cDyGQ<|B>>0!d9NZo5nkW-iGxPG)`1}9MPFl@K!ls#WW4i96gD8 zIbFCuuZ=GiQ->+r)U}TFJ4ZI(>e5%->^`&S@uwq;QnYx2dE6q!EtF)01aVw$WF08 z0gb|9Ut(f7o@+33j@QA{y z6Ea>5WDvI!2STZ45d*%knA#Cn5Ai9nfkHnZcHnMu&Da+pflE>klS>Okk^H0W^qWfG z4S8ieL6IuOIIGip0%;o?Vfmv%Q)XEa+|f{zCs@rs9a=@PKR|UH;^& zix0nD^ZUO}fBNMiHX10tin*g7IsW>Kz&B{G#LpFIq3O`h&+VquMt#51a^cYr)(GTP zPseBhFzitEl`2G1lAk!lGDWadpiV4(tT{xH757L0O0-#~jse2d2KHS1815qFPLcFT z#vGqX3e7N<3N-EP2uNKVmW_GVPf#7R7p;S5ZvxpWgGy}0TFo#3eA!UrbAiEYM-k^S z$HxSt0Q09URdlM*#h~E-~4qQqSsDlCR9G!Sba#ZP?Y}5HeqwC*k1+cdD zBK&Pnc?>w7Z`aqQ&s$2@2TRvROV_jNl}O=M$M##%jrXFDKA6T2E{}IKO~MNrDrj}U zgm>Ka5K;VmKWvm9Iz%n92nQ;bV7WTJyyKQ^wctK?&{h(V0-fSmhHn0 z`In)Mp*8Z;XAw0*aFyte_<KT> zYAJY3cN1uiAG`-Hgt6!)lS0DC`qJu!vEq#p{;{oB7S?ayDcl;%-wQA%<;&HpVw`n5 zui3X>A7B4)@YA21y8o-}!w*)Bsd3S74~%^A&gso}qxWBZYv*+z8y0ow0#>!+Z3h{7 zc(G*$6?5#4^pFLKKlf?Pi$((kKUk(Ch3R8|eDyop>X5dIWWrknCKNrV*y>lj5loMd4u`6-t$Z;c}!2#@F%10+pvHCk@H*p1AIyw z&kf~Yh7{D#Y4(TN|M^?@e|wPr3jGu#2zjYJDW&hE5y1{jr{L2qpyu&15DFZH8>wfP z3#q$$rdoWR3BTexQL3xbYOK8PVud5)9@7>|0FW1heJJGwi8BxeoysMs^q*orENk&J z))KziK?ZtQ|D>#92*X$)HfH#0)p@Wph!WYrf-)den7xDKd!Ih=ez)g`Vl7e z3-dfS&BPVREsQcE_DZRvGSVDINrGAl$5tPSHcy>DqK?{e?l09>a&GVDcm@JORD)4A zI3QCd8^9tznN#ZNG)=dN)8P4_hbQ#|^cJm(xT`Yde$iE;{YKcob9_agXnFctrE=BD zhi|y%k?`$y`SkD_fiI#2Nc)U>wjK=hm~E2$!mBD^aE6ekds3_lz~z!FrQ}VTR@sC` z=k%F&UOIi%D`4}9=Jg-e;rJ%Znz=49VcT!y?*Gd7;FrPtJqRZQ+i&*m+?gxf=?9Ks zoR0&66yXHJgmh2-ZdYlwPF-q)Vp_OZrCsPZ&O0QV04NiF=V%WbMrs%s0{ZzO9zURb zrR9~+uRym3tvnle@zjcJ zp<=Ocd>ZXa*#Scj`bvTbY|XmFqpmhr8?};L3Gs=nD@m}zP1f4;u`k>VtnsJRHCf_V_uy3d$(E zV?v7g=NT_#z@#8_#0E$usii9<>$7!_xkPiF^@^UPcZ|?31}w_JRb}Wh7LwwP30`m` zSx@$aQJa2H`%J0#nD}!YF8nnT9ubd;-~?^$G;=BzHxw;hu!8mBS}lHIr~h?5wJH}V zfwQhz#HCVUGMB@L3*yzsEE-9Mj~FSKx@_~26iNbu=oMiZ;h5%j6G00(J~VNhleE1! zn6Ms$_oPY@`fev~FH}-QTEx|>lvT_nvb;DT&S3v4r<{6sJ@r5QSnlOrE4y#!UYfR? z7&y2YV50vaOO&d9`^@E!PXCHoP~LM8*8t8eeCYXuj-A7;W^J%ecHS&i z&J(mMZ>yW2Ob@Mr;IJ}r(>bd|Z#-Q5aF2ZADNkXzfLs(|Py>Y=damZRk;H4Tc1Z1R0}~07M_URu;-M5o7@~55ddNW&wmRww+Sq=10Nb?zmr< zT9IiCXlQqOkNR67A!4>hiO6j8eBANBk+bUcpz8dks)fQ43nRxry}b|fBd;Vdu3aZ) z@F0~il;EP}IH@ioAQ{ZS|6v1#*0DH!lJPYbW)}CH?fOUq>lk(D+!xE=RaeKJti29R zln+Gno#WLr76SOJ36xPQ+qtvWp9wtpTF2*Klb~mo1&>bexuf;utHmVf)^3J<@CV1r4ckwikI2ti@#T*zt@i}EvjMw#uK zGf{26jbvLaB*2C8msU$xJ7~vHFB^-f9EX5mO5f3IFHgWwazJJ3w-39V zuRP5m6JZdjJo^FN{hfHq*!nLuc`M_UBIq-)CKm zgT9>YWaI*n!-)QbHD2=bSvV9$Y$_j7Y;MK>qass`<-M!bmjpBbsS&BWQ0pi zMCBr7v7*lusUL3?;Hz81LBndmi7s*}&T_SZI zC#q!S^kg9nYl%y0^zzg2`)I%Sme)ZJF4-LUdSz>avoFkM#LvcokfvhrFd4o`-#6O! zY4y$Ml%CY@%eNio2rX1BL)u4JX!bM~&n@b?Wl-l^=Z^le@vk1&{J?C-f9jIe?erY~ zQMyhO@BvzLv+6ELgknwQ*0BpvPyo3bLDCJD^K(bF$vShyDnn*Cd%!m^`oYl4gi6ul zT&bccc3RX5qTW0eJJYRwG0nN6*ACtPRxPkF-@i=b76g@w{!y( z3F@*00}Zj3Sg^iMnbQGDrAa~iA#X9tHi|zD;3P&KrD8&>2ydUn4dI3GAY0C~OQI{r z;nKHl_`auEs|n#1e1XpnjKXa4?;L6?9^r@}^WAMUVlqk?Ir(^j)*2&o>+dygyxF9# z07~^rFnVuy{%{+HCg^ZReE``8IuO%0N8u-+`1pWoxq!$-JKwI1U)*{-ym<$w43>zl7!SpQ&5y)cT8L$8jI_M%p} zipT8vgV~MFcZ8PaN~y6c#Y;_$Pvsow@I&w1em=Hy=8}53zi@q)j>DYkWfl1N+o{c$ zu+8?8_C>iO6%iD1cS4I+Y|if27A@u+^w&`qSow>UJFj{4Tn*C?aaYy2ik2J1-m&B* z6$JpGIW+y*_4mKH@{R~%qiE?-FXMN>Hxxlw^(gvH5kJQ()##~`_xK~7}|M=*`7q{-z=rgVAQnSnidi=%9P1?nXIodAi1AS;Pg1c!J zC>bL?uQ;wEq{p3#P()~8?$d0a`IW{0%T}eE#^SUff76^Cevh}9>4%NC?=!y{8sjD-Cp<9`(0*MylZgkWCTHI zR0Nkn7z`KmZxN8VI}x3t1eT~Tn8N@JC8#>CTNjY`FqLKU$)QILz-!3Kthz2EiPy4~ z>RKn7Oc{C%yO9Tjq!t*3->oeoGe}F0XA`()AvPnaVkwNe7)!hAzqGY*_tEP&l&gJs zh>E#8W*?tFM#y%~WSk2eymVfYn4Ip@W@cqqo*}L!v-z%b<1KFIG#g=R8|742{zU!e zbN>6^T7J53u5@m`Y{@AX+xQO@yN%cDpZ+LBmx}IJ1WT8PnAdH-%bn{ij@?jJ=Ky+B zLV(}d_P>RH1n8^MSYywB+&KU*vL-s^~W|yV&Eb>9AE zxORK^O>OM0s6&d?)w}jSfu3Rcv{iH7iv5IN#78P(1N0#(f!%J}uFJ^O>(!}pHyJC0pbctG^I+V} zrl3e+`3KrNgrto+&g&4!`DCw(`r`*wovr-!QC=NIos))NEmwH4pO1OoErEF(nDXhift)!M*Q#vk+7X}!3 zQ?__&Ry+=!F^sf&Wwdl+RH;HX7SwvrZqK}oFq>OUT3r?^@Jp#NC{zf}qtAk92V68c zip@|x%Qwz4otAKf#e`gW>1=6rF@JT5;7EOn2$)oU>NeVDrR^-KUZ@T8&Vv&B?i`n1 ztQK;&0+(vp~dqzH)p#vV@o?CH>Zn;6UVCfJ!9f$%K<- z3dt|YGM;|-tv z!U%p1 z6OBZD&6o{+Mza+u7l(|p++@xLcZZ|sEs;CQC>yxPG;Ad}^BBaKCZ$UK*F|eIW;178 z`Fq}-d!wLfSb1pY_zF73a@ZU)`j$AN^%|s2)Q2hXt!4Kp-9&NX1hZ?pAzDkL9#tXa z2d2cG;^dvkYKv{9o00sh+^}%1p<9!|5jGaQ`dZ@gJ4=X;==k6c$$2%9FsH?qUL3i( z{YJlfxtj3H1C9tEH&4nKT2;(@(sc%O@KPHxoh-#KngbKPv?8B1J=vNOh!~wXA<<@;{>g_wVYzq*&opJHU!6scSqEe+CQ~U*-$t zBtelSb5}}zgkD2YZPhNjFy9zeE@~DC;k!xf5`!#9#JMmqPPv8uR}Q5CE_yoOe#1vc z5SQV906?5{aDVQD^@QMRi0K^kEfLqn`h~#hUVae%Cp@ZhS<`OdRgAZ>t0mY-$W-Ay zlAC{mJ9^8%Z$0>}eET8p1wCE8aqQ&!@q=nx6=R&;7y`l}wPDU!aIe1uUnRM1-M`cJ z^6!HGZ7Z=)EQ&aVb40;T6pmUX*10FZ8kF3Y?H32tlQGSHVg1l;vms=T4@3K*<3MSz ztTaI@qB!AvlY`xY($&ovR!f~Nw{uScm0~nH%6J5Y2`7WZ_w+NoCDNS-16?k3h&@?a z6j1>-bEL3gh-${bd8S?>6lCc<3^@VmGO8gs@ZIduz^jU$ffINzv+aA+Yz(VaR99=|o30d2wCq~_h2XuNnj6@8 zV25u0Ah&sFO{t-9#i1~%T?#R8G?sfvpf(mV`oui9Kaa5}w38^B>|E2**tWWqmMXAv zP*xQ8wZfTNqb3SRfL0GHN;S2SKUqjJ%q6 z-a~R+JnSV7a{C1rD-yM894?0hB1cA*6H%gyx1DcF)Iz!%7vvYubgVz)R?iLJulecv z@z=D9J|wTKN4F;r=u5;gj68i|i4-Bc-U3KLr^hSlwIPxOnaKFNE7GBP?|HRgvZQIG~o1El#SV zX!6N;8bg6E!y?(pV>XOof@ASCf^(m1T|LuB6ky4F1IaG$NZDpJXOQW-fJe!?JQ>W7 zy`pws#A;m(9NJB?6@`oeWmkq~;znfAkd9*R7OW6snGCc*mh2HJir{2skX2)>hK4sU z`#6S6&8u=Iq|&AH7Z{a1`JPohMd36eP5Nl3B%aLl?{Nr|NG_oYlOrS3o9HlVL)qY` z$hR7i$|^j)bN<%v=Kh0dbr>U(62e~%6*QXrl}q&Q9$aUr2%zr)P^BH1EJO0 zmY~xckF5vN!~%sqs&&p-!4!3 zgvjBXg(AfIA$QT6+o?!PwJVQay7~DtO`9*a5__~eN(dmnRKHp~_4v?@&C@rP z@bM=n4sV~V5NHNTb1oMx70r=mUp5@gT0=WX#$xT7sJ1YgIXjI;iIWqkY-1F{WO)?% z2k&@R&#b7m&9HqiK#9s_u*V$5?MO?DuQLp+i9u^Qg5M!y1Z$8Sqn|{0FN&!iCU0I^ z36%CkHekc2lqyAUKh3-^C>ttd6pwxkEKS>?7pVVL&l$yiQgNKt9F@Pferc=fu-@FF zS7lKU6%KXlH95U=4mtsjFm}g`O7yCvUKK{CU2Y4h(KEWMnkPiwuVh%MYBU(1etXZ!g*g1WnL^kwT*VfpJ z`b5KSx|`t`j#>%!%35xTAb^o!tRn!6Nn1-YFWtUyogFK3 zh5Utz()EG-^li1R#^`7j*n-!h1b|Yy@iptULd>Jo7fT57B7jU0oAG85w-H_}xoNuZ#Pt$hjJCfExwA0$jI;ZZMGcdoBcsPK6j;~mgt1=hqWGugcxq_pP#BA9GA ze^44R;`TVNB*-rmLEg;!ZgyF)kqSK$#lAg@c8)Kd386GumZZ^u=P@O$4=OibukNl! zPo;ETMiPc}7QrNi5Y;cI5J}(K>^$3<-zI*?H7%2_DCuwPl7gzELb0DVyV?v-BOYhf zd-{>}+iFEOfgmE^ax%{u=2!z>QMLw(3upiIqXX+d4JlU#cP^iM^iyB{9%-Qg^|BL% zr#RemPSf2Ywj)Fi=$S)F)O09yjmcKTfx`SBZkFnWELVFRH4a%bJJl!iC+k!zWL;p1 z-ApskVBL=IPgjwF1hRy;X0dc&2&lP&Kj^o^WYThG&`K>^huWi>zgh zx`#75Z7Sg?tc6rgrY7R5++DGn8ZkY$3fjZqXYFoBN9~Kgr=w z@c`Ea8iTqj^g?qg#Y)In3T+O&O#vySHD81exp*X(Kj^{5V_4^QjxkK;7O*2F;@1@R zS10uwG{_L`hBz1SN#(rk9F8Tj^;Al2t&!+D@2oO-B_DcKt(wy7*zjhw&YB0ozbn?P?z9~KP3XTGnL6q9 zQgge0%F7@^YjMyAq$n--kD7B{7CKD-c=)x;5oDix)jLRV2t_@@Cq$tX;b+4*;}TV# zdtMGw>=NFD**Ax>S3<+HLwh+jIHbr`lv9*$ojHK&xF|R>>!9vf0x|Kx_e&tF+!{jr z3A+Bmj#HDT_lij-t0+!~5R72~`#k-%Cy{5hu3EsSLaVe4 zXnt~1>+*f6?Ny++kaMfv3Sv+sA%sEL>PMM(2P+Z|rOP z=)VUZJ%f(}k1!2jP-|ac6}xrqk}+$?^{<4l6)o3`N1Y!(du08<3Cw^9dKuhpow)qR z|26mj{q@3w?_5F#$*O`t6YYG9It?>wly^ahjv%!ylzDVaU{7fO6XkJad;X2deXwO% z`hRxgyV@efhKvH#$mR9aPY5p5S8}_dF?Q=4wXexeA8t9rG$MgQHvWqdZFmxYR*9cL z^gXsyubd@vw!%-35Guyz8=5V^5Cbn z%7u2sx|pXJ9e@1GM)eX>gd7}KvfFguvJyDKS61piUTiwW!LBW~?hdi#C+IdJ%-bka z-;~%+p#a4pOv)gOTG4E$3?>B(YY%%&^aCl8RTD1k6zWbP`-)6B9jtQvn7idEa(4*) zmbr0i@4Z72LDm&e8WM+l=6FYd9GbH!C3zjW^^?>GC`l>EVrPJ*rcVHoNb8mH z?E~%X{)B791_}_(P%joRBFq>-mHnL%T0o!(72iIDiV~EZIl=n{c5iP+%04bVB&4;N z+i0Iw8_v^dmRvW|pfTUwAnS!TZkL5=SWDqlgIa-;tDhH; zFhnY0y?(4zv&5iyJM_F@m*SmfqJgkTQAC75m||CVZFjx?ABX-`kf);+(2O@mid2_C0#i^MU4tV%51k0!p=H?r7tT&yaRq?A0ihG%T8!Nnr#k&vem&H z8wUiFVIr$AwCeQ?-w>!f_JF9ptgFD85^V_`8pa@ScDuku;QVovgYXW6<&_(t*u&b1x5xUQA}4GOIU&G z_{h&1WJ<8zaOd-;4*??-=1yt-RoI%~FesKYP)Z~`F-83VP$;VpFVG{`k$fP$r-lFg;^t{Z0!$MQyw?(7`3^u8f6;cV z?CciPeT&s_))V_nBLG$fUq5_l+Ghd71}9lSBYfgCFf0>F;JW7EC`$wQ68cBTu65Oz zjcE+ak_Ov3AvtBt(kcAHvya+-Om)hD1;;4bX@MvBgG%Q`pbC##f4ouudO2(XaRwDc zBsx}R6fPOq5>=4kFC~GOfuv6zKerkDzHA5J7Fs!1o&0y6QXT`df0pibFQJ(BFb=3$ zFl8VgNwbX*5rS=p{8QX;R0RM4@gY)p^urA^ol{)9)RPQnB&=;RuFvE6%g7X${bP_8 zI3+;i0Y3kXlDYcv_`ei-UZJN(p~L{6a#!g&QHmVJmSs9yv9xHBbN3Tp##kp227t~; zSZgIumIZxKJr&k1bLjkcE}bb)gbR0r#=KMhU1B@hhShY1ISy*T&1l+aZ^e5h#iu8# zMbCn@ERXut_-Q&L5vwC0CqEioMo$mhhkW9o8ast7huW0~kI7GYI;1yu6i=YQ;k!s^ znKd)jR65m3tE)FnYE{7So5hU<900LdGhIB3yl&w#Ir;%{6b~o1j#Xk#HzG^SCuJ## z8m$AP0RTOGC2qCCty${IzV=;`88HhJ2#(!}6&sQ0IpQX%x*2h&3LUo?yFCehCqMEs zV-qF-q+=jeV#^~}KQ>I4gdw7a(i@nf`^-!W&bz;`G^sh6Jd@gKPJqb*)q%a!^uW$Cr48(@3 z(X(^C20D%0%RK=qC}LO{M1#uw%Yb(`lSD?&a9D78BzlkFoZ`QPB|Ku#%W@6jC98HE z!RSoN16Zhn+-q`Rx*(XvxCcdH%Vp}fn602PnL$P6J?&m$doFsjXtzw906w?#h5CUR z5|>6>jp0-Z$Y}S@$!a=BN)Ey!{@C?5`1p7>WLx2$fJh*qB+hE@yqTC~b0;&v9!PPW z{4WHv$|Z}gk8xiFzqwmh5}5vg`9R*tp>2){CAf7-sFF>M@@r{cYKbg7Z!j*nD|tDY30nKE>> zV9jGBi(mQY%7dzSdmmmHiC-y#K0%U%aU*zGp4Hn>&1G=VBH_}SzkycWWikrJ95iVB3*&D6`4IJ{ zlB$)TJk|>(o;8CNLKWjUZ!yT z*svW0IlGW4kKXy>;tv_Rei8bMg8z&_M=hAqn8PPTQ{*Mp4yP4RwUlTStXzq6FJ1(CLU(kqBiA zZz&((FDdMMqRfzW+Zz1{9U@yuzCk*U!p&`}BNhrsQy3bc{M5{>IDxz&bctc2VZ(Lw zkqh8J=|1!ub}JbS{_w_`kb}F|M%IyUeQEvmvGW5l{xCEk=m(C0tp^b}pc~G*vi~Ar zZT|DW1pniU#CQ1}#dl23CVor`LX#KUverWPE%+41bizvVV>9vb?F*@UGJcBN;_#(>M`i*5|_BxFBw|2!y~>Qgo2yO^1X#N3q0SCvg?Wip*8;R=Cn9#H?_; zNrD6TsSz3S`-X_YVpmT4V}!|uz+*oByT-qH@%CNPElay?#rey7t#7F2mJ<`0IP!w0 zHBTdTOQmHQKLQnkEYMv^J-E&u8MhI353y;?1k~jfV>Mb`lwG#bnK-`KMuN8CSrwD! zAQjqbY2dEXyQPNfpe^wb3V_|m#+>#I^WCZJhlQ*a*P)BT37Zo0VOeLi;Uk_b+wL0P zg;MN29F8*L4!gAUCL(ab^f|9^VjI>0z93ZPU#^c zGv~MP*?O&nA1_@itReQQ1RZ?=ZBF%Pz>O^B%TK6yJR0Y zpk*Q@;!g`xivq#JHGnci$X$p+7bvzNA}%ubF72$9Hg=wj{;KSIS1LWK9k>dC7^6!f zeKmhGdkq#bEYp8y{S##nb6kS*n5{ZF?>Mzd5N0o_4sI0Ada$J*Jz6YJUoDuF8(H9iOGf#*~8?XsBD*6~mPTV^RgUA}4p2VJQ}Cc%Ij zS%UreVu#vlf}DnoL2VF2mbQrzm>pS~FS?qU=E`Ob1aC?P0w5R2pBe}JYt6LOXhC~FkH+Yt57I|SmUXL$*D;q z5)(iEBxR4C}y1=-HS(f z9Mzd}En7I3gW(2?p0SSz-Z;8F6Gx*Ts@WSycXkL1Rw$V5FIRH6PW;1vKkx^~*)#Gl zO-4zFM=gdIRph%N&~U3Hw@OwWUkZ?iY1pJJ0cl-H@0u5%lnb0GMLw+%@6nW)PXi(V z2Jb*ej17u>1ga6e8=N&k>QSb|dJB$hGD;>{oM9_w+>MHZiHf+tV@t>B4-mSm-W^(U zssB+vFc=K`D#5Ef#?ld!_U=Y?5Gr2oQJc-b$^YSg>Ia8`SH2wmTGiF}RR+m~w7^&h zWzm`0C1{|WuYoyFSi_#<`v<01IUjI9NFH?9B-xIP_pP`pMv?b0+LH9i=!U=(Tp1;H zQwiSY$&Y{|d~ly68!GUW!`jRMf=U@S?bg2bTHt3tR!_7C@C zFo|bJA~k~%;xkZFXq#g~l1E}aHHp@awnC5;jLL)j{35hInSezZ)6&~j|1{3)!uGBR z4|+4il&ju)DNg7{*(@g@E~b7v_D9ls0B0WQmp7LQvze4VDThwr+|q3kn&6TC0@;$@ zLTO<^V_fOqA-qZam`Rs5vZe-ZV7}(EhCjpT_=}%5?0vEXSMwwcA|r&2v@myG6q59Y z3}?E{O4s^c?#G;RND+#6yVaeDc&7hbWv^IAa~%to0B3uV-@!d$L2`VQYd zmxWB{z=^wu7`^g%qYVSsARSqM7F_3xb9cWu_n6{=$lbD^+#I6c^c9Zx1^E)Jr+x}856 zvqR5@DJ{v}0T@l_9^n+(8P!U3j+@@xQ8DjAjN!u(KQ)~fS*Q@IT@gkH#G`ZU^NlmW zuZ-NnZ7LA#=uBb#uAW&Jeao~I7LGKR1;4U1eGV~zyWuXPioxZ<|MDYvU!Nxb z^o#Xxso4e@*gBwe@<`jO69{86+}Hep5caU`Nbw1}A7REM>}cxG8JY9@Y>Z8)+;nHV zgt^m(!+-*s)SpAb3RO}hK%)clmQf92FqG5}lH#4l3|cIN?qk*dgn)TbQ;!Ub2{(a- zb`&vTA@qJVBKpH}_YQ>tv>e4w-c4vf`h%kHEHFmH)yrX3vR!21tBEzLhw+G95f8vJ!Hm#|Ga`P$P)2IYj0{ z$$ss?{)#M2ZO8zkj3BDk+)?fAzq|Z@AS9EARat3;vw@r7u;vy(!m1UR(zNQT<3hoo zxNmu>9K9%hRpihv_Af{~`~q+1I6~YWj+L6WWmBId6C|ZH_X_SH2qz>;PiJ&6-($JP z*~MN1#XGRacqx1z{fTbrss`uK@=37!2y+#`zLL`CdC?NcNVNGyoM?x4cR|4%WWBSTpT^GSz8f2ARhvxL+r~xjr?JyyHRUNmanl&@Nw^R5|%Dcv80yBZ0p3q z(uc-kU_bGL(%6OST!80f|6%>{>_bM2M+;{$WvELXcxsL(&XBVvo|NH!5MID5;A_cq z>w!K!sjXWo?iw~hgiIZ5zo)GY9_8LNR=mi%3|ALxQ-;8-Cos_Q0kYQTz&{zcsyF-? z69nF#PRaPLYlgrbGC0&_h%3I+kzE#*nqgn!@AAZ^#*`Vdp`k>kq)?Bs4MdGk<4hb< zH-uPabqyLDjSrlBf@$<2KJ9?9;0DXX6yhNBBUuib-!!HNweeQGDsZKgt^Sj|crYb& zn~X~w@e=`DY4X(!a|lEj`Vqq+;gxozK^DA7)d3bL6y#%q+FOc=ZZqU$UMI^zAhaWS z=>cKTLF0jqGd%%P5A_I$Z!Rg3f^ZkmZvyZiV`MjsVMp)GsG$ZHj@q_cSp`Qw@|8V; zj7PmegM(ctDxhZE`tX9XkWLxoW~#F!;4nIvk;womeY$KQNa#gTj3cKZ)Y2D|Xq61& zw>)BLAvxO;^b{i58uCH&Bf16k8auCo;}O+z#d1|Lm}p7DQ-`6CpND_JC>2#<$$nl> z04*FpY<~Nh=UXM~CAmh4*7d*;CNjocW$j`KXcOyF)b&Gw!?Hn*F=;GXFe(bQCQe}1 z5UU-I3@+{DLDhr(|v7co~ALqhnLAva_&vY#*x zP>E55Fm6&@w_ezPrr3!lXUy)EN+4$EelPnj8y=d$(_+j`-caZ;^h)8aP@&_>r{jON z=l|Z(!dpNBPsURyu3767o^_b}sC09Q{lfnEOUH>bh4!mQ9dDNs7i2Q;Kec;!Ef^j- zYNQ_wlR)8MbELR$o=z82I5F7_B0|O*MoMgDXPTp4N!9_YBnT406%ms>@Z600!T@nI zz?p$ou~QH-fK5WC=pUu__%|`8l;2XPVH z0FLOi_%b|zP^?uG`H}!gVYZ_xjEI4HD}mZjT3Ty_4HScjg7<@x>%qas`=xu+dYI4( zKbzw6T~qO1zdq3oSWL||AKh;+zYAl>Q@Yjj#gFeO@m*B?0(Tv=kf+1TTkUfe>ss}$ z2|lI5%=v@0w<>qNrR$sOPVDc0_Wc*{U6pmi7|zF_x;9^)xc9sK|4{8s2aV@>-@#f6 z^=^>C4r^JM@L5j&YI1<~9EF%zX8a54(1y}TXaZFuYLPr#9ZKFJhV-70L$_NGuYL9=T%Z`)KDqoq|4r&DjWou9`rYp$)H>2JRJx9uUrWG;l_1hDz=I z{dewt`RZNW*@_%X9cn#zHNW@0Na>=3D5ZnOw+YEDw{4LjQt8>kNAryEpyiw~hsHi! zwIhy7Vv7LnC7YKKOh8me6#t|2YqV)-gI~nHqm4mLRH0h0vqx4U*Hm*OrM}D$<+5Ob3(Ibb@Hlh= z98FLWnEA6=t}?oppjEp2NeJ8EK_puQAhVBGBL?u06B2fcF_>fij~yGI!r`r}r8_+w zXnF?QxQFNGBmbjLKLb#fL&gqg-%8ZH3%WDFtUr3d0G}N5aE(+$tRw~{(8UX zhtIz^^qW7cDO@1SZ}P<(&BcZ$Ezn}*XT@&M1Ie7$5yfvytHR6>C4-D^+MTet0Z=1g zmQ@7{3-ktlkdiSPrNg%Ol)>xA_BWNmM*Op2ix@a7*OEX5g}X@KWb#Szkib8l(h`jf zw>e$;Qs@woOc$?h$Z}x>o)6+!m^?ISz1*!_CHksES?iSH9!xd@-G~eZW(7eJ16l;o zYsy%OSL0-AkdvD_<@g0O0E7_aM z>?U09!dnRi!)XU3Nw3z^%bbc%UyS*D2#z!>fJ5IWhk=jfGQua~F`<0W-5oUYGXHm7 z69kaI{y6x?KRW*JinXSi9iZ(MEzKm&FF^n#fDqgXRog8hG)Au;Y!`L`UYSN{orIAX z8)4i;Gy|uNh#auuX55%Y`5%gCnH47qSp$>OQiUYH5~MR}9op17U}0@(QMs8pynD-7 zc0bF1N4)1TR@E%v&|U&f0t6Swk}07@Iaw2nAl#hQ+gzt^4!pgIqqB1eHjMtE(uHuj z2J;IvLK`zuk#SmZI_LEs%J|dNZ&Y?nl@?vi0~n zf1#=4)hh-bF?^$lQtK01Z};BJ%S6`+J2B+}XwTH5Qa8skU0OE8Fb*%11TcWe@IaIc z65p297blMw9#TmXKFiZ(xH^pxWhdlVB-8YyPH4$2Yxsu|3rSIt99R9jsE$jk*OZMe zHdA^x@Ue9n%|$469{lDn?y(&Pmr;zIWAYDn1}!u&foeatV*H^Ys%r?AmB?jMTG%@P zWu<47^+W`qO-5q8k~VE|fwee7rs@D%^aN;D5kF5+CGtn{u<>b&!G~>#98F*$QA*eX z&|=lK1^nZz?2XVWYJY-eO7}Ai9+l3O;{3hi-5Y?r*|r?7y;}~GeooCsmreGxt15xn9Oc9X+fz8EmNoyrm`0MwXByk>b>hz8hy z)Cg6NSdCKOl}Zi=beahXfC%0=3R-EpS%o-e<@pQ`hyv4Qt^}^|kVr_Pd=!3+md4l| z=szIg_}qbJ$lN=SA~X|uygIio9j=?{9Q^|IxmRt$8#TeiSTF)qhK>}jXQ2m>?MPaL z9pI#_evm#gJ|*<(u<;V32E5w{M;Y%J=_O7Z(CA3fHZvk-!4X2Z1=m;Gu<4VlCpj<77Thjk&#{n>kv*9r zj&Mo#bPi+&=ouseOePW>ts&+rQOQS`#8y0^t>*-}oB@L$<)S>XkDiP|{?DoT7CqOE zbVRokm=cnzN9zWKuSozi(vF%@&BRcl_!1QV(w8IzerEVivtyb4p-eCuiOEn$M7GqVh&6nFQz=P zu_cNbo;UgkG4inU?V2wWC6E}>mq*2%I~hXyOAAKIFnojZYQ4VULgvQ=(#RvBVMc)? zet}Yi!j*;*5p1#lo?1_u8wn9?4dTkkE(aH|DLEw^S>BP8X--Rks7^vfCD{#pcVHT; z8kY_s4us&yFq1iF0Ae205r^(?$AF1f9jW%y%r}7)RVPi7w?51Ombj}it(Oot68%gk zv7A1`4`W4BBwnFVrZRBj)Py2R0NHUftjjJQMnCzd%-_@h0=47MDL1UrNYc6<+^s3! z?2$8nrkD0#xfR_1aYnt4>;Zu>cM7!j=&5sdkb#ms4~cCK^Mk}oEXS$;1$7?wGDH5y zpS*OuTT3lh*@1W&EG8a)ng8{3+joohbJ!oM$$olLk%i-8AQn7~Y@sKO;MLqMNc+l{9L1}h9IDlRK->)O(DcF}a&f7VtRVwr z3s|sO&9VuryySks*1oWC(eNQTwqOwc{PlErE{@oQi1zVtsI{c$OOi55WJ2_8L~JHE4BdIvF25X*z&uYs7VCp$j-SuGMWjJG(u zPm4^>)s|{{0NP3EfxUQtM4#%Ra4JVHYYyCz;8LRpA9Mk2z@q#7(G`-LgeWo(8v!{q zL(z~}!r_Ur?r43CHgWv@EDQb@mFosAuQh*>_SS=J>g)YT&c!yy2nt`jeL zWUWZSMZC?D#l-c&$%7=4u<1m(wT1O1IzX97W7vTSX`2%PUOWnmm|>upe?248Dh`iV zef$=f>}&`&2!lK9`Jhz0h+zs4?%t0_4&S+sqjvvC)`O2&b~q&hnD~Gw!+bh27h+%< z78xQr#wBGSK4C`kjA3#@F){x~a}_Rm?kmAt$K;+z$lXg&zwywr zrz6f4c?J^z<`uF}L3?J42|SIZfG0{NEVaZKfjDF{WjSo6bsBNdkQzNuVj#PU4u`i` z!pfaYf$)%mH^<|Em5^|WwpMZN% zzgKz|Dlu;tf0gVPD(~<*tVE)hSF0j4!aeqQAoZil>G>xaf6L_;)~P^2R~iV8uBOa~O06V`p^!cs9Rs z#t$cch>WDrSoiz7Zz`q+^vsgX9syPfP&Zr+^N#aSk*yGeJuBn86iR?JjyX{!&3Wa6 ziURAi8^KQD;Sd$Kh$N3EB!oFsG^Ob&)xE2m7ZhKO%-rzuv)w>p#dd?GMiNsPp?KI9 z+%!s>A4o`m6|LIMk}h4?xFa%nl#>hFrTjf%afHp>T)gHWTY(;6z9T}qVyjUT3;}?S zj>{}=G_AEnWN&V!NrpEfj+gM+8T%_M(0NRUrh}_9bsH%bfan@Gl)7T z&qkgXO0n!J`5ToROX9o^4-`hukRdABy>qU26V5Y6G-N9t@4?uHzvTQN#T@BDN{Sj>~(!^T3KB^e9&CEo%(X_SH|SD z-e-cXT^hU3YbBF9MyV`c+^&M}Oxb=#wbiT621Z_`-YdW9|D#GrD}5!z9<{-vw#_Ov zELC}P5i+5AGFO_G{^i==l>2K7{pXM0NR*lyiNhcXh#G0%_Yx-_SDWT&6?>+cH^^BT ztD$|6aNbZ<8NVigzR@uePsUQjp^|N_C7ZO~eynY!wuVAYo7#ui8o0WKgiZ-~tAq?z7_vYt1AzP`Odr#&No#=K+9Elo*$?=#%^SBH&3{gn9%w z!!t|?AzJH1E48b<#dbeMilswzZQR*=mm zo;{hacpcTeLk0_^KgX}gkl*4KrV~@>NLHELVN3*;M^*!TYfdlkov|SDQJyFcc41pJ zk_AKhN#3x4FJO@uXKJK03~TL!f(}3sILKcik(8UzvQDEVV+w67Iss_NE`x{DB;*8k zTeKm@QiP94#t|VFyI%Ou{Q3;`X>)|%%PP=2PKdC$zr$X^{W-5> zd50RtswJDN?%`6;)fXMF{_C}`Yr}0U^eb0=m1`4X=Hf0+PpH{#9Ec=ku-cY)B#sej z8XF-0nQ0+ZE0JNlT$RBF#*F+w;dBWnoL|$*2A0H0DlvAlnL_`4#?&JF$MxyXG2@c) z6iLmX@cbhP8QE@%ZK5C8jy)Oq#zFiQYUY!arMTV5 zra;}{i=I+vH}!QNI~oZm1q{NPm^onxtMVAn#(iH{8gjh=XUr5@nS{?&UjEDf29cY7+UZSV|@1qL8N30AFOW0~`qC76sI<1>j(YlS~A!NaMzA zj9;`k_PUU=*k<^a54#>=23O}=it`t%BvINz+KNe3xO^#N0Dj@=%>fHCvh%;c@hdfU zqmsN@S!mL2?f8IjAsHQEqZgVA=2pK!mn$wX2v*Lq{T>glm7YFcmLf#J@|V0UH{=nGm?fp zYE#-4WI^c}&=O7RWRo6VD{R;9&Av>N^6cEj7e5#*Urtx;Q^mkpv2*q>5guJ!ykabv z3maEqOA;J^_(OJ)o@aO7EIi7T7HSKtml;s7m*l1vX{et9z^jjUv-v{PB2!j|hsYOW zpw}0vA*IeF#A<3x-DNeI7l=xj+Bi!#qOmxtEwKlTE8BymJLt>_4X35`vR&1e2DR&y zlu6M2+StZPWa=RE2`3?0#uV)UM)WoG?TFjS^O{C$v0r~qf{lQ@K|*$>CBYMh-Z-?1 zE_O6B4Yo4k7LMX+U?vMd0W?$^ zx~I%-LSz+OLpsbN?DNNGu<4!dr%;T_bz4<%jlPZOkIz++Y5X#eqsN zans=5TaD$q1&s%lEh;b~G5Ek7U{)+OgCs9A%p~jCglIMo7fbF_25bDCjO-ws2WHDD zRyn-#N(0QC$)e-oVfd4SJQ{E*9(>VLVtG(s zhK`Fw3R$n^B$Ox0gx!{?dW3!{r8|a4t+(gIB$OLi5X2D*wSZ8qQ7Us5lxZfwyriPF z1C@`+fngVVTAM`=3jQ760cSY(yKECCvsfWO91u`jog*Lsv1Rsf^F6BEqca1Aw-}s; zg`3LWkV`XeVz4Q_kIikQ7W6n~fm|{4=)mnUQ5D8SpwQD5%K58|EaZ8n_rZkapC-73u^uu2kfD_vMA>|K^e%ICVhCOg{XmV@ zGif}TU?LX=ye6p`Zi(0c?j)dQ7b^xH&IIvTGSMB5N=L>9)-@+n7vPhYE*Y}`!>?!D zkw+G#E%kAHVHq=~1_Z-`ci4nL2+%j4wQPCj=F!r_pIRzS1;V_NNNDOG4_bc*M6uHs3KF3`tnmWV1qD<@_=ig@$pzeks zc#CY?Gz@?R{U4QCrig2=z(0v>`~G;`X}kWMW|q=c?kpi1p!2BAjXrh>1g^*b;qZ# zAq;bBmMy5r&jP8(V<}ahy@Lr(&#vH=;0-O`8LWEHZ)a3w zXVqYxya>KC{~G^eM!sUi8z$_PN(_Er5QJCd3Q8(W-y_vDYWC}2e5<2yjh@R}olO!C z$|kGQ+IhHirWiYmT(h#-iNHo}>toQZN874-lDYg^OR(Hqi}r?9uTqydcsX$NdPHp) zC)Tr&J^SS4I{rYtcSu&QC=Egr)iEN)hY^ArfmOzpO#hGs8`*v;km{V%SPJNtWvbt= z0`k&9Q2=xRXhjYpbDHl(gw~GH(+28v)jo<7#3KtP9z~O<8XT1Uaw?{6hPCTp)qSFe z2S<p9ZQ;blEAOQ{lxN=61ukqMdhxuuJr*g+2Oa}S! zAoj;;sBsFAH8X}VfM{3VM0L62WZZ7dBG&=u9_JX;Tf?ObY2r~zcbPoI$V?GdfYqYA zh?=#06&f=ZlhPw3Rt!tO>?@&VT4orOmEVm${o(Dy+cztB+yovSzSs8o#}^Ji=p_Z| z=%ZxeeRt*h;)|b!p8woee2`PuXA1N0f+Rg!I;$+VX?eD0i-6`}*gk3hS)uQ~veA2( zeXTTn<+$_WmmS}J*6<3NYP`Lbv09j}T1$rGs~VZ6@-a*^hQABXGD9b0a)4Q%X5Hcy z6ImuMo`z`YDgx9P=|z}Q8U9nwiKPw-nJX=dQ|Pr*SN?wFYk0~ z+d+LjiSCXSPvv?y+iFg>Dipy9kDgs7^jT;XG>O?H@2`k&O)fRufb8Mm{5BF4B%|uh z2r_Igg=%7uTfmqdHJ15Z;^OOZk^P6Bf#VbqsH5s+?niyXN;;yaSB&_A_~P@N5>dms zOf`-sq1d>i)|30@WWg$CPfB+`w#Vx)nm=OC$oN|D)LoF`#>CmZnk+5e1|e7pUna|@ za1M?-R{B=LWT_8vU&_oj5vop&6C{DqjzNK3A6EX3FdO(`8h1b?ahp9F<4~krx^n|J z;_v(a76@Ubu}^JeN*3qSQqbmL@ zl1y3f!7zjgP-%ep=c~-r34qn$o_QA~~GSzd!LW7>9V9mVk!;;}>%#o|V) z!LgLKIjZ@tACG)+60+^hzap9nD-98g8*0C_o@X1IU_cGxM)BPI?d<HS?*lK z#vm(?cUb>1e{eoq{r{$csX0DYgbzOF{dMLVZv~9 z>l&v$_y~lBh0R(}^XhCX6^IB+*qit#cs{E>G7Y&I@fwHt7tzq^D}qBSINo@#tX zpC`2tbr7ngDYRZ7M`%AGqJT1}=F!?k*)N>BbwU7|^aa?+d9X;;IT8jvy#9EiwfQA9 z>O{NJ)k1@jUVgb>+nC^;ectq1rK1^%U9}&nsthx!Cnbf`66en}rbmp4e&%Vir$ZcT zn-{LvfDbue#dC)%o5?MH2PL~B-%Her=7dw7rW@)4-wQIK6Mv2eY#n#5my+#|3V}gmg6Ye6)I$ZNiIfyEjnGfS8(z0Uw1--|QAzd3~ zcTZVJs~%D3fi|-;AQYJ5*;}atEj}$!rU~o8-P_t~uI#>uj2XQLF|w6bcxwP%;fTgD z%P=VtzDFRh1-Cgr54|53Q|}2r%WY*z&H2enz34e7@P9{x>S@&R9>)4VPyG48{Od>8 zFIR_1vXgBBgF8Lc#*!MZht}#4G#1(thTBjUiLpyhDeGOvlIRaPkpS$-ZEm+=FfVky zqYO79Q_;I~z)OiBBpg}3fpJb)It@4Tq8<@+Vt zn9G+fC-8p&yuH`yg4uIviR;3sC&>jsP|6~sZ-zf!%4reVvRT%KDB)oIlHNO^x`DZw zbx*5QXpq~Z?UVu9@T$?5A^%r$Kbgh{XW@!S3|890mgIQ)(ecJRPy%G3nPV1>wFgla zz@O1_y#P5ie+yO)R`9|W9!ga0Ggt%YwPnBH!Ch!UDx;4q9}hpmI?AZFGJK09XwBPn zxXvhP1bQ<-cq$DP;~X-~wW{#bOaa}zBpl<+blLlk%-OJOnInkViVr<#3z_yv;LFsV zFDL(6YbIvMLJKD809{^|yhpDGh;%u6J@ew+9VUAvD1T(+1KAnz8C6>a2{h;F9;(o|nb_U{*j1ixZerE|s9vCosA??=HUQ zQ+9IN!V*&mrV27i9@)WnL)WZaBQ?yS_-;S-{E|Ntg9F1KX|zNBgT%|E-11C-}u z#o)Q$`~HOgO6>DFLb^Tt#a!aJzMffh`Rerk8|_cOIr+Q)C;R-nX04fsl=_FSh6`^6KmXd|!E5tR zJHLlkHDc6ElV6Mk`)M0j4jq_tL4eNxuO`gsh*bp~A+vK5evN7mm&qZy_6cK=`-obEym((pw)%+ZT9g&WQK%TOVLaQ^% zORZ0=DmBrAmx=csQ~TP{IS9L8&}8^}wfu^hD8)@r&=S*WI_Lz)lz~B;aRFxhdDJiS znAUkEaTm&IY2i6fRmU)-aIb-5#Y*Xu6rNNZp+2{mF|r7BLRbe3ni5u#yrMN7gH?sH z1-Sxwnj^--IHDKP>Qig^oYH{AgZg~Ghyy(q7&5?N3c>dwj)LG&*BC>M7>>f8pQ8+iOtfa@cjER{a{o1TCD>udU2sJylQ`~PV> ze$1Uh#8|*s3gcNrgQqq)h%W&ZsOQm$day04&g*DLf7|r8+(h_sj+1W|f@i+$`-Y(P zDZd#}ax@|7F(>5b2lG3e#J7tyj_#)1yjH#hwh`5s6XS5JT8_|Gq_-z$w={M7ZQN=N(go2eJCuJ4__ z$yNwo6_XaDD^7)6p1oGiT&CYK^26GulWRy_=_U;pA$sKwRK_u^9Qt&xwmcwh8gu&v zl0f;!r$nh9&43WE&d`QO8BJ7%1VPM7QSDo+w5+LhPQtLDrt7f|UST*q5cs8WCgeAq zW_>JlcL;207yr8IEDJAO27(4PMi;cymL6yqf8P*fu)LA$txim8p>1)}g)z>!SwQn( zz=bZ>tnU9HUb%{_0%&TQE2DB{tbA>eAE46PaD2I0a@NclXwoq70bX(90h}lMgF{Jt zXCYR}46!M#36x=8m(fwUF&afpVIL?@-QL#DMEWVb1{9`Yd%um@zkU=#f8{ONs- zj5&}mw%wG)6Q&qTjNlkn0JtI03!RRH(nFCRS(Xg=`REO3HbLX1o-jU@I z@IzFKOoO{un87LoTWn;GZr*$v{Z*yb!kP&=S*31B?dt%EEWwwkLx+HG-Wuc=1;U#(!bPGsxQ{&}(<0M-Z{O|MdOX5aUa*IT89_%@cysE|;SOgfp zF6cn|aL>WTdKmase}7^5(x(q!<_`y|px%g;?vE41c2sjs?zlH|#&F-W^&e2as@tcY zUl+)9m)>hK#wkDCrOW+VvrX+?;q#~ESE4oQTsy0Ot|x+(4<5Gu%TM2W@wllvpVSvv zHPUL)bBXbXNwP%tj5EQGF}!6{sjs5*aS(kA8=s4>d~<2<$Fs@?tUO9e-Vqlmz%qef zimA(8+DdY97h(Z|-&@cPQN=QC=_pv^Z@ep*q;x6 zpWjYMm8JkQKv~`5!9?D`K9O8S=H6-ck4f1JFB2MqNi8hvW~7_FvBJd#i7xfoY0wJi zrh!OsGfF|5gzr6uU`#GG^GapxmO8N|D+6?o!2yDCS+bL-ym$9vWrHk2@o6%otxo02 z)3=Uq+|st-Y)^doSF4pm@WCGZE`=(qmod z+$6)-J%Hbnpe`ZW1!tw>bMg?vvRhi{hy@0$r#>8I|xkzzLM*R1(BMi6Wql8ObHhzXiU2Z|+BB_dTZi zr^!&mJng{8fPYq;S2-@&0+1+;F6fKiuNPWsz}0FKZH)1WV$oX>LWdX|s`Z@Md3>+@ zW8~yYQ{xO0AqobWYfc-6tvXWebEEj8NZ_pIz1BOzJdmhcmDXjlDN$S_P!SGQn1r}x zR*jl-3tm}yXGz)R^yn&G>txW%G6EI~ZXM#q55`{x%*D{4;=UuBxPc}_hWu&FX3@P6 z(JM-Zoam7R1xe99KyMZ1NoIq_DwfH%)-|hlWEcp@kj(=g5Y}RZpFzmXtLgIgx|-Nw zoA9~+&-ty<6<3F_+R3UE-WNXxdP^zS1==u-w;eDPt3b`O$*uv(I(kLSk7Cv{hYi!P z+|faw2&5A%+5Hk&KatUT=S6Ab&r*9M2w{pVLgkc08*gSA#H)edkf=4aAyakFOM+_u zSgCOX2_=z0PsV>;p5N71oCvmMjXp=87*pE2DuZ=m5Aj0eZe$$CpkROVEhdJD7E(hIE!!TGfCiZ5(Eh5(p(AeLHxg1DPZ-Om$U)Eq<1l&F zjKmU(J6wdqD;xLGm~i)jWd?4nPplko-PQZ&pMKl?>7Uy6U!Ks~Oy#Byt!oIip_sW+ zc|Em;pWPTI+Nnu2rNC4HEfT82+rjoE5n@(QcD$=?CX2Vk#Em^u%-v*kj$~kb!R3=4 zHX1o`Olg^I8R8N78W@BAXDm(@Z?8*Hm%gK}&Wkc+Zd%K)YFlpQmR%cTpz2nG4It4d zGkEMji~e_cXCbYj^<@L-^%gv5NO@-1s0ErS8!#{YqyG=|;XV`>WZWyZIyP}tvq{hd z7MIZxskF7L4I%Oqjcy6#tqkrkKS8t)F+klV-xhV~NM);2bOqOk3hOnT5>?Nz?&=ip zXBIu@;NH1fttot(yG^b%x}9k8TKvv+#L0>8X*jHp zbcv>MhAP@CO(O6vbPo8lQq*`NHRLeitI^YI%;>7UarBmC`bd_vd-i193xWm{G}>&+ zJf3GGwG2iHW-PNEap>?W`Gf2t_2?Q`f3dNF+=}AmCEPT!LhZL6HC|R*awxCRQVNce zn#V~)hmQlvIo%@8u@DboqJ zpqES#goW@T2ur06F`c3hz-mE!!e1N%@}sY2S@Fny7hwX!@E?IIZe=rCak4l$9!vG> zmF86j#if;NmFqpizILayz$U%0);m|oKU8-@bkk3MZGHOFPKKq0rFU6{sCAx7ZLV+z z)hN4|4J?+Wt)~5VYoBj?Qhbo!pLvDKQ<=D_+$O-6tIb}zVAt9witSesz>C3idc3^8 zU0K;W3Vwv^PpO>L6&}Nf}2+y(odjDKi?DOj9pq+a)RoCfxhg#>GE>`VXG zutOf$UU_2w29wOwHgkOc+I^Ck3U3cT|8AZD+=JK9;{^^^&hFhlUwqf3&*F7LUgD}u zUNd})Bv(nV~Bm72;`i;qc+3ABlWQJoKBi})7X20n=Rh_x? zE|Osvstdd?9LOn=SVJ*NM1BDLUYnaT*2XZ7H7Mg36Zn)EvqA{}u zL_g-nrsq2GK`Wwizyrt@K&TWFWkN2Yb6(UbBe&6+i>cW;FBoS8Y}VOw?=CeGdP}yD zl-AVD&`<#{Yp^aOgbht&re-dr%rt4ML&iLsI=jATI(2}0N{)++(V!xz9m`s-joqKJ z-7ke=z=go9P}d|`6%!r?0x0v@YaOrlV%X=m@RqNP zG71xAh?lq=5TGI1!cbj|xfvO$R_T&BC?rX02q6%u>-f{@3PVgbMD*(wG&C}&iv4bN z0r+R1);dw`^Q+!E;nEXOmG<+tin${^r!P(o7J~1m_9M6q5VU`GW+cgySO;`%e}>owst0Q!BtmwcN0bz*}qbs&!tq z5$Lyr1)K!I2dBvO)7QjS#vlu811bpg&mya!FHTG!XWy@mPgb^8waHE1N_q!@HAPTy zgP7|*3cRKT8uefsUMfg;hrMrodEt%2*M~8XLYdxsSoic7Cgs+tT*R3o9jrWcMcpE8 z)?B(EQoZ9FHHUX=>EqN?9e$jLl7pE^O@w)276rU0j zJ1{|?{<8kFzp9r+54w^FIu=43voz*->)=`d2M|g;HB5d`Umh#pOIGd%%A1=n?moct zUY!_{B`gR*A}yvoO5zsBl)Bno*)@?WLaQq?y&QVHxN_U~;=!Hr?jjdNb$Fz3&ICV) z;T2nNc9hRA-X~nCY`$D*xyr!Gh<4E_i`;7rnvhizh)5_v+8s-=yf{e$8e&MrT@wd|v0WF!%kt}st4C(e|M$mZrp2dHOjuEIGPBfOquwqo# zb$;5)bbWcF<@mjx^4$z8>GI7*8E$7bP?*Rk5dVXhuuK}dN#sNei4>jl1)Fw!~>iispwPH z7{b>G1b$&Lkpk(NA)17i*;pJu{E$n5KU^Y}wM?@x;=BO0%xcFx28z>JVq6HlsVqT4 z_*;)UAKa-Z_CFI z$!@FgR!nV%+mA*oMJWPckP^D&y?@yL@aXD|<8!@-wKWI=HAhR;KBz5r8|h^vJui08 zJem9^KZD*st2ISYstfbP94U6))2*F&0krlR?j~lHvL)#U5kH3ILCS1&{#N|Id>u#* zs4lR8B?TxA0%9YfEziIBX!H5cBf?9BZ61vtre8f?xmXQyVd3+F97rAqoDdXBv=|UI zIcESIrID>lH{_myD!?}aP6TSS(VbEoTuOt9F7Gs%ZWO8p3nO-RGUbt{{D9EySo+AZ^QIQo% zWC4XOTj}a-NL}dx4UNpQFn=C5JsTDg<3%Q=-WZ9(vf$FxmgXwayD-d+7*pIi?jzO* zT#F3oq;0`D=p0oo+muxzvq>*OO+j^_Mt9Y*ZP8;u6B@_h0|AoT!NvKnZssIMW7u47 zY?t<`BU!nE5t}&%PzYq_IjR?SA2?_X>*CS92Iw*DqyTY<-orY|g8>SF{s<3<;=RSF zP|Y^7D8$wzh>~amdLE4!D_TJXPA&=x0MNwJWaZ9Sd1qN!AeeZD4XJEq`*O^D_zI3& z?;@+l!Xr!@8zl|WM`&X`8m*l{~-D_+Q#FH1xkeA?<9dK)fKM*1;jt&==BK|r_iuS-cJmKQT1;*g9mF2X|qkz`kh zGM|tmpjB)P{kRVpH6&Ozab{}Gh&hR#kwF1^Liu54Bh~b5skKQ@cB1G5-GCiKbVLq& zB~?R$r=*PaIniYaRhS{(SWp72fi$vo*!3OWZ<0M}6!_#A$}4>(i_})a)JS#DVp|x& zxpSIpi9nPyfpeJdSZYqgvn-p$q+ReVCj4d02RNYeSeDpga8!yReIifFdF7s8-QaeM z>Z?{`1woM=&m9L2I|9m1-MlPdJv*V~7InQ(Uza3YrkaR;pZorbi3AmRrFj|obmguK z^R;juQdWVG1MxPkSFXg$wF_#`Dw_pm`UbO|Qwh2aJy8O9n}7=oK){K&2($c+hIN^he+Je{*qelSLGX6U9d=*ip? zcFmMmUyC!G0WS=R2sX8_(7~z2hB+G*NCl zcQoU?Wo%gFH;u^({xI~a7HQQLBQQ*%E8Y`a4bR8>K zKmmudZ-Djq^rJI{8x4A56IU#ygF?^k{XiOjw{oS&73Ii;CvI*x2u28^~@%|V>5 zOtz1Q9-%W)cil%H`Su^TN}J>Mmjn072`b*}u55Rf?~NLZE|j8`8waH!vc<@&lsMQu$5k- zhzOXo!oT{rUHoYU&MPT`2mS%sUj!$J>f=JuLz}0Lq)2rrj(7~R4O&My$<_Rn-bsq0 zOJ7Cb!Z;|hxBg)@=OTCu{f4^ZJbvscydNoVZs;WR&59$EXeU`xSZ0csyDK&3vgr!n z2>%wN7poxs7Y}LzETJ4tXqMv8=^?6-t0jv7$(w+m<7Q0lK}L&d0wP$V0a>V# zx57$2GcNm0H_5_yRB>&9PlxyfTOcS}xR4pr4*x@eLw4qHV?kpL)i%3;LV-a;q zH=1H(3U>%qgOOM~nTl22P(XQXIP+&!>y2t?_Sx1a2k&j+pht@Ds2Fk%3-}=vzE%Iox(Q3MG?k*~etk@N_GgYdC^gwII8dToP7PS=7SldDy{al<=+M ztyO)~OE{*suq;YKXFFfF+B{Wm=t7XjsU=z<+nPFh-B@twGqYkET1eo?s5oykIuo)w zI-I;iy-xApi|7m16Gj`NRa6rh#EW9owK?=wfM!@k<03vcqt@Hzq9Jgcr1%%_T%gUb zPFRe|K3OH?S13xg=%zqF2muKv%Zv5Z1-N;P7Z_hKbHHlHq!HU%LUvfO?Sn^KhaYFk zxAWS@_(?v9l~NQ+mSI|ZwUItF1LkP|x(QkK)!laEPi&*7u>hStIM<3*# z{W7WSOjaG!P`{XRKzr5$t?Eb%RDU!chM5c$gx^=Sv1Y@^8Z^kbxYE*zq=8k7ZX*$o zonXA$&sKd@AMS!&R~ouZ6(M6@I%`V7coqykcbu%r`lqzkG4yf*n4R@%TRyE-bie3k zAr3LmQR*kvIzpppDkI=E%2y}o7f@uCE~d+^*H4C_4KGQJ7a1o)BATf!qz%;Ec ztXC)HFqglAUIt~Qp4w7fr)t{9088rLLx z0|9js!0JK4o`T~CQ30Zhc>R*HdeEXpXB|xO+^Rj3mCQq zwmc$lPO#FFTZ!ifRGMbn&|4ukM+qz|HWQ3HqYk$iW^&kjWtZV1FOr{R4yg=)N99_q ze9^W4($vA3Rj~ZJv#r!sSH2u6b=Q!YC=-<^Bs!;g~*wM z+1E>(&87SHqkD~qk2)CJo{YoBM-`JG$^_jzc&L+c3ww=fo(&G~K8gz&?~?^tJWoaB zkjsMAVdT`u9rI}2GbB*UG951rKdqlJcm__gtcS%cp)7{vB_du?OKJ6V078pK=B?` zO*VlK6Jt#ygYPCZ`6TnJ&lCTR8t+BT*@KJMu;6L!xk^uyEWG#!h!tZGh}x6*;PeCw zO|)Aaq!^<_BJQyw1cIPwxORcf3#4QV~px={Iw7&&RgwB|HC-cx`cj}S_;tg?p2 z21r+Dq3cq0*sXV@WunE6W@D8s8QEpmy`#Vn4{aZd2$Q6BD)8W_cm~5^H2Fu7*D;|0 zKd0JJEe%iY-#7@oOd@=>KUnlX0>`0u5nF@fc%XE<4_n`{{|yQQD#<7Bo$$a_oU5o>zg&OV`84ab9 z$hRa9Xts_*g{c>ZCv~j6q~zLr7diO>!egJ2WYRcw8cJH$i@ca;wV4+%hPv?)9+&67NW8}4oDLL51y10 zNBk)Mk#ak6ynRJo>n<(cp{Xyr-WGQu-d<`gj))+?f+cd65!!hrA`l2URmyNcZFJDE%k(Lj2V`38yz`{)#|(vt11>IH zHl_#Ahg9ykPNq@B;l1S{=T&0LZ6$Y1JeyHOP@F|mvIqd8$f$wv!68=Lv{6>9_xS0g zrVY2s09jt83;+;@Ic!NpC2MB3>|~z^#*<@#hL>W7S5Jx%<^ZT(({_1;@*BJ+kkT2U z9PB(WCJ8?s(t8JwFLalmAOnUipKQSnMN07tGZA)xy{vlyn>-u8s6PEIq)o)GnKI1L<$GZ3_X zbqFGgzv#JMuKweD>(#krdANpw8x}3}w@-f3y!T08@jWZ{83tce z_=o1#$*(-gIXTRwB@9@#?j?1A!#{G89HnLu=?HQ%4(frBtmA<-`J)7m=%Y*Jk-PhC zkB=Jf>aI4RuRNLiE}GNzjsMY9p$L5(9<5QRpX)m~bO-LBe3#C|pEVZy9;j>j9hqx91{%xIlJhc(Y@?9ymxr*Ua3_QyLjG&_Q@)?D<T*hzt;0`UoT9 zfVRZ~caf-?qelx=+Q*N5h4;Os$#>X)aVyE3EjdMil)gBitxi|{eN?&nV6Vj6C8p_3 z$R3ge8Lm{;!OjHeq;l7dis@#>d#BLzt}!+E`}e*tmcYELbl*|gBmx^@7{O#y#$wvY z&H^+p-!l^vFLLYIxUuZlHZ$7ll(sr+%;qpbsF|JW#5C6~)(MONtV_W9RR_sb6}}Bo zygZ^Own@n6TI*=BX2s~E5ySh#@@3+w|JQVaGXKXj%UUO7EBVfA;U?iZB`>Wv(HI!flWl@f4)xQl5emTXUUA&6CTB6YmHT$3>0?xzX0|_$PU)!cEoG!Z z>1o%-+nB4M9@P3f`F5V)Ia{8oMFqi=EQ5OUsVz5QM%g9zySqbd!h`fL;#Cws5pPy# z7~q>&z!ErQ`3z}V9cXk_4_bnt5nMVRIHy@#$Qc(l^$-x7|DUDzV2<-V({z8!shZt7 zXZF;1#yehXY}uA%Wie+GIcK2JK%;X&qtWPu2GGbk6C{`^CW*?jY}uAQwr4yJvSekD z1Q9xasiAW{m{aB2@~kWp=>ERPE@dgMij zc8OUPdVgcLRvN=HKvtAeHpK*0vy|%PL39**J_3B%!Lg&KLzN~AuCRUbP5#eAH?o(xAY+Ui)vx6X*>Ufy%iURJJFIm z!VJX5{7N;K04FC-B44{IlSz|L^Q{0)f+Cf!IF@fcBS8ZLHf^F7z~lC7Rhe}`!h&|x zXNgF|=EJoJu-7HwVz3%8KD$xxH-m02G)FWNuIsBwy)k^#oL8Jnh?*eDi`S!T5DzqR&rxfq`P^T#;=1y@~(i&_<|XxAw43OIhd9k1_r-{OZ92|YTWKFJ=H ze5LM}_W~k>Hk`GhlyHwe2!8*e|N9%$Km6*=Lj+jUW9q|W+I&Z0gdNiWWDoq#q$+3= z^?UvV*;Uz#b=#BocPC#;%^u#lH?{j(D~e63^sP7Rv!hJv?CkhBg($FPOvHY6(o63q zJ2-?TwteS9ue*?7mcDOr>%j&E2Y}%}mY~hE|tAPAv6;84Y@-QYF z;yJ~OCzX}S!8a%yD911*pHS=Z`v=Gvl8_gg2)zq;CpuOBUd-u4R=E*#BF08{w6C=Q zCgaStoS>3KN`zpNO*cvmI0=gD6blRZDryy32~ohI`aq2c6pOJWu$UkuC|>Aq{+3@P zP9edH1g8(%?S2CIQn5SSk9rx}P8*pWnPZd0At3z2XjVKLYr(7{Kl_u)^fIf&)ixnPiCTn{9R(--`Ku}7jfN*h`H4SbQ zHV&=dMqDCSV^B=Cdk-$`aXvJ}2BJW-4KX#M%!8K;fQzwAc5QBF@fKo+ub-$$9xVla z!f=4TNj*m}Hv*(~F&YFM0LozK0qMnwDfI)H9pG*(aWOtKuYfG=ZjryejxcN1lrRBW zVL@oM6GG(hH{?zv;QO(a*7}#wlXDIj>^NEpPb@|rPt721CXm{(s60Q3X*IT@wk|)Y zdQS);y~KW@J8i=Ni%Nl^S|84n01t&)c<$ z2?lY9pt!_QZs#Y9F?S;rPhBfdU#(VW>%|>BOBg5&H$ z&N5wad6tlJZe;tw>h@2E38v4STP1t+)8CftzTUch{?+u-dg@kN=1LvL9AcHw(i15q zVq@13r?=)U(dS|hZ(WDVqW4u$;pDD4@|UAziPFiE3yEl-JU)!N$bKZkpqs`MM;`FK zkTDT3rg=g*&$&QlmLhqJLvApqY;UC<;6GOKSb0=XeNgL?R5f8txdbiPF(6uz_GyBa zQU}NNnz(YxO_`MS+$2?yxvQ-HNhogZNgk}+{^?k%?bcSq8|jz(3oRY$1-Cwj-rj@@ zMiPWA#PD^1)XtsZ@|ps9r`56-fcP{bBk1WCq{jp2?0XKwq${bCax?jZodbrlon$(@LKr zBL8q3hz#fi44?!_F&y-k&jyDu$awX3vsw(vVRKHrOMLESO z8lv(?hC#rk#CcQJ2B(V5S3+1%_o0)`N2P%RP(yQhwQbCmd9c6yQ`$@KBye zl-^_;(Op79U}}VuI>IK@L*vHaLdYa$AGQ&RE^@;(cIcHv8?;m0GKgknO#MLI2JJkG zCZfIf;!(Z=A`JFy#I4pawgnI&v{>M@=*(Lr^K>uTUl@yMOAg^zAW|h6%|3ylh7d^Q8LSe+C&5o$coggcX=?F9Y+#(w>bUq#qf$Y_e^qp>IjG3EZeJ-Lc#&~uOx&!f*ujxgCi90byQq2VC+JnBgh0I1xr$Mp$3Tf(csTHL z^uVJ3Cz;OY=EzEiU(o_ZdY}vo0INEs|IAl&-{)@4MvsD*0T2oXmexCW#hIErN-+s^ zMU8?BcB$vwn?LkDK6Hf^fE}yI$QuYEuSJ)&XJeBX(5ma%%4J@G3GCfnIFRo}RBatB5-O0lh znIkYFIE4Fz7mZA!iSR7o=S<@ne0d3mVA`q{1P?gb7y3@mU&mD8x;7@zXw zfG;qMmmjN3y~MSk3B>zgbYp{swS~%kfU`xYp7hRrIAz>={WxlNJy5DQHDFqo)u#i= z$1JbEQDxOfDcCrcIVI3TQdD4DMv&=Hibjy5F!Gh>HfYIrTv97Wsaj!z3C9MzSp=ou z7{lQLXPtk{7#KCC@wr2=vE|2$@|Sw^lPi$!_^1D^87@qassk{jQF9l6>tQ9wR^VZ=|Fk#5Gyw0VmnJ1q!Q-qtUB4%rgAszjIr)g_$>U$I-6xvoZbK zi#T(YJnHC|Py?dp3B#b{=QJA7qKp~MYqL?2zCS1v~8WXRlz(B>~5b zmNI*zM_z`lxSOx(c*iULBLvv_IU52918SXV^&@;0$9hP4N zdvBD4MAKfBVGf(YK6TZuPhqp-t`RScB<&Jxhe;F@Qw&h6pzd=M!t1 zWnQglP|rqE$Ctn%vY=#wfx&@60fRCE+=Z#a?G~!T_M)zNIo@&VsYM-|PewO?XnXL~ zx$F^B?x=P9Y5NyX-}>}Nw~YqwJJ4RXuVVi@>pWCwjcK0JP1_F(<1CokiTFgmg?Du? zVumQSZ=i4#T;tez2s(raK~c0{kPI+WLZ>7%Tdo5%6^MEKabv7Q4g|7V?5NS8N#MWk zfI%mnX(UWX38Nsrc8=nTeFPL-ZFGum;^9xvKKfCkR_tcY%Fjl=JQh){lwEucWueSn zZBa-9(rz~f5pYV{sWeT@43ANx4uihkqQgpUxmM!Io}5Y_9!nmaqkqY*)hXvYfu)mD zgvcB#4aGKvN`9u~vs*vjzH(yY_AAC@XCd06EY@b`FLFTXGkxeQMA~N^&7VSN)ozSS zrDseyGuIk7-)Z>rS5*)09i<%r6u%ebnxJ$HO3G4%r4rOxx8_*R7tb1I{MSy}K)7&P z!z9iia(llV|0s3W``14;eev7j%*BQL72nSK33ag4nC#_M(if2Yb&J-T$k$L^ew=*j zp+ajb{SKz}{K^y?VFncJl{l#~;e*V~jiC{ve-vl~o)nSl^$zP(acKZCe?@y_l`ytX zb?6?Yqt^o!qIT$k3F$#UAW9hg2>mGkow{=#SzUo32~)rbOpA&J6hPBp@}*Jai>h;t zpa;Uxxh|QrA^A=nu0l1<^N=Z7*?Do|;SYv3kKQm^5;7l)I+eMaP4kmnsTe24yV?+C zeyf~>>{3ixwZJ=q)hVevuN31l_6PnTkR z5oIRBrQBGUa1+Xa)sZeBKemcc5Kbd+v|w}C0TI<5ZITTmlI#)>A~7-0+40WzY&YLG z+~l3Hvvx`%7`{2wu+9KLNX|n&K4}a!X9jPuL)7c*A00lFZ$eJorB;libmDJ>n;~Ny zqF0;nO9I_mLIA@=LaxFgFRJ?;+gmx?HN+2MWx|scf~m|vh^{nh?I zcRkON3!~YJDG~RDRV2Gn@H5ly!2Tx7i$OYzPPVSRTm?rn(0Iv&D(^y{Uogk%!39X= z7-w82ZU}FSJo$rUeAvm7Q^PCtQ}DhhQCMCGdAMx|+rswAYmchmX3GzP8)CC$VBtUV zJGA(mHaEb1p_+fei)xZerY;Aave&8R*IymRx2eV z0GPQ)T{7u&oWm9+bVh4J#?wjbjm%(c=DGCZNr8q9`FY28)~|f>_WeKp*M;Qm5oM}O zlGAFr&|8=0E{5Uj{8a@W23oQ<*{0*0ji zdA#|#(n6dB%(i?hc*9vK>e$V>n|WnqP>B@E9fa5h4TBvPHF>6TJz0B;YD$Tp&90V9 z0ogO2yY9|k>dM?mu&)B$cOG`=}bm4daW5E_wkz29q$$KVEUb-u$n#*}+s{Dbb!o9=xX zHS3Wm@(PZXIP!egrM%^YGE^iWP>5R-KGB2^HRj^Sxt-BV zLnso^O_x_vn0uHTP@dT-+t_)5q~Pqzb+CLP2!@Ej3Dyl6(;=Bu0PSIR+U*8*A@dDJ zNql`~V$J&sog;dMi*ugrC$w{lb&YF6IY-(oM8QtMgmzE{!}?&6*Mb(S0QtuiB|l5) zIE|@Cd@eBDCd;`cMPJ1{Jh}PW;;0$`bH9srID_Uz!bnOvbjz&l?ElhIrQ z86($rl9rhuHa@idQw4cm09!pnW_}&k{Y(aEZI}hgN91V1QkQF5-`{RKfThb%i}@Wr zaMPfKp3r~M;DoTZL<_M&rv3C>djA~iP--VZRTEs>NzCF5svb44_I3C-dG{p_>Tg{@ zpIDTT|6Z4Op5TlvI2#aW%KyK&XUqB%DtV)~`jgQABLvRiIZ11>kKo2)oQ|W1fc5QX z8V&9qC1`YE@Y?<>t<@OjOt04}anO{P!KufzXJ` zLCWtKmlPh*c5J~!4d^G-KBSB<%Wulgl(B6;!A3BenELXVc|rXkMWZ1CV?~1lGYU7E z+&+jF5V2t8LrES6vjE-)#r}xlpCwO3n;9n!ockT%nBb{NBLe&wurj_A1OY+k;W1+x zJtxx8galYSFv?ZRY0MPD?q&bQPz&}oZ(?@vs6=dFvc}3`V+GuWkX~BI4noa(1y0+* zryUb>$3EDBZ35eh%)}KLkh0wDo{ zO!(OxWgG_|U3ocs!v#dlkFd2V#-b%}h@IH)C_E_Ncw zrS$O@2*6S~P^5uEvIG$MiyW@6T}Ihn%u^%CXq7dF+gz`$WLL?1-DH#Ac|b~KX8Vu< zI9Db4u6_!ylkQl+tF_hpjuDuondSQxQoRSYb{8|=UGK9p`S+cb`rmu#Yv*^Bu2Z@C z3%QDODeFsGBUHV1WOZ8Ylu|OX^TK52=&06EEsL0?_UuwoVXz&s_kP`O$*op?`LolX zzkBG5caQAew>|nG%rpKG&CAKb=`PmAqB| z_3H<6>s*C43}T4)*k{QVykKW@L8&P;fZFa{>Ma$d+hwlqb5IWqlJ%Gz@opaX@@b1v_OyLynu3O$rr-o6HV!y)lw7 z`sN7T&m|<{0dEc((V%KsW$iAtx03<*fNq`1`ft(#aLa7Ja&G%6Tjo@`s30T?jRfj( zZh3f9+XHVB+pSeMB%hRKuvz!}5X^8%ZJ`1KLWhALIAes}|>NUNY6bbZW zb^fnjwVU^V4ZE96vc}* zp)MqhNpHbCoGv?w)J-VmbY#wipxs;AMDIs201U9V+n7TBVb51C81*5*6!0RLEvJTV z=RDU$&+ozf(qK4ic(v1AujDN!p`B>%BHdMrxB741|9i*z48Se|Ohxc-_i9xwd+prX zESeGcG3ASrB@Jmux;c9dZ5_|BR^22ZWxQ;bamj1z=>t=p~OXeRkw$U;XdVufA)_pCItU4wVtV1FrzMHlz;u-V;pP zLHuo9I;>AZ|Ff#g=G^5DW3r3uOrlblnKO97P=*zn|L!J)w4cp2k`LJt1X>GGCPIj) z0fQ`)&$2UepWF@Ig20jmQ@fB5qJ%49k76a=rq5b|?Z9d)#AADL4}vSCGTZ{9HR|wi zupp-d--)yiO@4oYgd;d=44UJOvLiNto z(`xi=vhVr*a@{SgRDSV}VaXE-4S8`JAcse6v}wQ6;>gL9HY z41FeKJZ-c(>p2Kti>sge3r&~aiZP$awjR{5Ms$)lQS?GxgV+!l+7A0F`9M!t>%fRoDb;uzs+dpfBS1j|xs%O%@y>1cQ)HAVL#x88AFNDY zD$|F-NERCj3V17iJ$a~t=psmhXqLjJi;(LsRt5q!ZJY%p$XXnI!p`|a{8N2CRv1Q| z>qNXNJfD%MvIP1bHznqvivK@2vd6B5*2E)BUbZ==)v%g0@qp>w^Wqf7gFj%?J>}?) z_2Fr)!lXAg?I$b{4jy9AW+i6Nba zh1@qXRmHu6L4zWh31qvAi7v7(4sG2(&)LFru8m-_qktz4V*&dWofq}08Y#vv%rX~x zC#^9W0AYp)#vir4&wh$_SX=B8B}v3m7)Py5^d3DRSQs`z`*g}7Ixixz_LuKm1U7ab z(tz-3XoIubGFxM(vK~+_z}0lo&>4w(_TX&m9tMB$7yDn?k3$9Fu|c5+1=X? zV}-7FXDiMqWi`m8QS5Ne7`5!|c+=sK2l2Pke&Q&XY&!|<0xJjgv5j#edLcNUjJX)# z%lYF*PYZpHRStl%0DNqGJxFon&az_e7}VYKB5%O(;*9R=J=*AY74vyo04=z*;rvz3 zeNEQ)=%V4mA=m6_n9c z$w=*I4@!)(Sf9S*-FiDBD=^R^Si-$XbRweUNAn-|>#5Rv5F%-sv z+6s>@W;c&9Z7Gae0TL314pUl;-Xt1y^TGB50b>&ZY!l2K!dloz=x-5PBRZ1VwE*|f zC}I9oIaKB;y5&2Mm~dSfQC7w6z$OZli8cshr_&pUz#Z-!pX*H-ps5s6wOLDVk?)ACn|bib2f6 z%@|TzR_O&OOBixew~*kh*N*0@&Wpz%QDrTpvVJi(GCD)30|5!|30P*Z(w?~DTvwgv z_u9LV4R1Zw{@}S|+2ak{Pdl|DoENAu6U@5#Bt;~Qr?{h6E25KS_Smn(gohVOC^r60 zOEhb`CK@@VP?q5Cb->!zT|7}{KXCcAd{M zy8vXAx1Gq_k3)eb0)t4A-DhpN@)E7Hj6;U+NJa!L4wMz?1M#gN2N*^nrB+AF#kQ6} zL}wDjU(aAJek?t7AbqW7`^|POR)%&0P#!UYsmViHqzr^0XC^biT=9IW_%iDc&Qf#& zO5$uP_7Y!8_EPQRi!XB~2t&h6bT2%I3Hlmi(x-N#W?>y>OV!@Yyu#z!`$hD3zrXMo zQi1mDtu*O|ZAwl~n9sdVWwkXoUqX4WtPL`_$W5G9E`;@24+6;a%Ei=OvJ^2^1owrG zOwziI?%KjYv$kl~mdvCaCSP-AuTlazWkxjAsrP_Z^Bc36n5eXUNP_u|kU}v?M0tfm zm3$cqA?=6j4yT=wX|ITg(DQS$VJ-t}CTKD)O=z@ECR*D|x0LBcFa^b)#c9~t54M`) zP8MN3h*G+V1|Y?oH9EFRqbV-LkACtafAss=XZKY6=p$B?M&k%POQeN@tlgC6h znTy$bpI(VMI*fQvInxE+lNF4hJlcGlruTO44}bEX&5wTWdie8>FMn&=eBbo=Jx}UZ zBW6-LGsok&6iG$NHJ;EL>jXs`cNpVQ`V@>U;x-Cd3LRXylH(?m1iM5P=gSvqsAVin z6VjwUuE9Km`Q2{!d;1@QLYv z>7A8Kt${pz3&b8c6-qF_MUq%~ap2)tL3nwQrBMU(kCf^PrdT4#v;>eG7-n2fTr>c< z#2hVmz5GTD+y<2k?MARl9+JKovoCRrR6}lYYjvV>Nu65FpB@4@pfoO`)ugIOb9 z-5)V|uqh_7KuU61CVpLsoaYQI_?v(vv)N(Rgal5c8f$J@VKbqfv0*nri;gcfH+2?i zG($zoFr%$LUol^3MM6eSC^R{|@!cf6`l~W%6PY9)I z`N-~>tLc*qVsu4V7&|I-tN=;GR^@_8G!g@W-TT($YaK-QZjQaX5&5O4^4dA}-Pzzl z{*xL#kQ{#nAsIFwZIPbHf&9$qnBY?5!1=55FAqGwM6Ad>EqU=`=2kDPKZ;nXPKUeG z7mC#d63VPQL(gKEm9v+@0zf(3g>jx1q3!Vs8)z3HW;j@24J)gOY~(s`97!CyYtERA zsOLbM;04}~Wb(7tln^)cGq~R1)X{J9D9Y`Cm7{xDXbBtyhOvWX^11kIJYIQ;1HZMmQ^S@#m<#;DVq@f=kArx4Cb z-bY_E_5Z`@6Rg;j`6?}3il0|nLWf27l_6sg(dG$1mzp|R4FNcJtRs7~3e?H!udO5+lTByTxEHO8t%?mQ}wW8w%ZYJw9Li9q&r#pq} zFt8uR+hNxub94lf8QKtr`6H?KgXBC88Vx3z6n;DQQ|c5m>L{-Rzb_bDeR=?Hv+BCA zU3SL^)kq$(qf1-t(3X1`L_iIdJoj#}LYy!NPMqxckWhk`5!*OioiQp9=F&?HZFq}Q zcW572!d4q2c=-w3Y|@s)sheZj_3=-geFh0;~mcJBPW#8 zv{62Q?UJVCY7;+r{VaniidAw#5xvL&%}*Z$B;Sq;MhI8yBj7K@ZiXDfJ4?SNh$L`o zxZa#RKdwD{f+GkD0roL4aWeXDAHpwBMGE~@E8R!o@kI|0h^gPZ`l$QoY3FV9jWP@Y zf=ybJrxj&85DBVH!vd-TE_6iooc_x4FHES^@@B{++Ek-qYTBnOaHx7|awXfPy$>oZ z17{=_0)=P-7ZVmIW*a-ZAr^l|C1dK@y!$ezZvN~jWW}#9J*8Z5=Fc@8Ot;P90^m>Pau+31?|`}zBlw=(4UQp{|2XWp zH+MUq%bsX7dZ+WPr#DJ|oGCvAz>`0du`^U>qoob`XufQYbCL=0!*g%^?bxpo_F%z) zek?s*y^UAkvl~xJ2S>c)G(RvaE#hFp=#%B@X&)BsPngTpj@U`9B)k|@7i&j(_c7vW z?F%|PJMr_j3v!?3P8^yX_I&1YfSU$*xstEJZ}DXg4`fe@EPu1@N4aB^BCVwJC~jhx zne18hDx|Qi(QW(dS~yEkK^Vr8289g)ON$jhvhJEi4kzgnZM{;Ecd_oohCuO8G`SBL z#ojpy`uEVFbzdvO}_A=6r|49&C9nHbyZrm5`J_N}#7 zjKLAjvy^YX@Qv#uy?aq!KsU<*#@9%!EhIZ^zsqywW3<1XmM|7;Rq0I81sOoZ_h$no#d4 zZWgU=ffjOi@cCT#QN6u#&qXpt16@2|SQ1r4W_B_xKyUXkiAo99r+Q!9iS5T~dr1KZ z<6$Qli!uZ8TfSpGeXBotwTLz|GkWb026|m$ z^+xwY_j&D;O_P#x!V}1n)RD*~){_JG@fd?rOby!FcHGAFh%3+fyiyj!14P~?j@$_IKH(=_h# zA<|W7qGd!0R0JSoJ4XI)p^iII4LQ&-pzM_#iiQ}jRS>CCKbHd*U}q61co10fbRlo< zeH8xSvF$x$%%aUS8k1OzyRUqpm9Ju#EA-~_@U|NDeqljI`yImhGwh_ zv6te*0!e`(A|zR*wDZ)2@J``9iUOxeu-I3|HHr+9~SSvZikA=&>jJsEPX%#;j@l(r8U>zIPSjM<#sUM>B>;MC|EALSbX)QBo8q<9*8-So~ zPPlVQS#ACtCt);yW{kxvOX__2!e>w4g@Hz1Ee8?qBqef&S;WR$XLc{15_1st`~)8k zw*&7>G#9^;G~N5Jr$0!RT*W}T+jF1KZKLstVkChp$3RZdG8=lS6kmUtd+vV`Kwn)vQuc_Mpoi3vIc8!)Y_9KD zPI-l}2bQECcngYX68d!)sJ_t3C*m{}^z{r#z^&!221+h3jq-cy_C5}G%Py zxe~CI-d~Mim>n_Q-|lOP)YWo*q#lBIrtUbkE+Fg7+(ndi-#mXfdzh@NF?lTO>h%hQ z1g%um{0~Su=U_P%Sxgrjp-g?(~U5_C%Xz?i31)8kJ(};Q9!NmnL4;N81Sv#uEFv%2XMJFz31!dB?))^I ztvpL`1B56vllbw~;WEJTitnP_nBkuMdTje0Z}z$)chzAGH({uxg;dt9dha43fJSUW zA05eDs!H9gOW$l#SGw}+R^?)kGCilRkWD=Nu;T4x^m#4Dw8WuIAq+rpYXPdWeeAg2 zjI*$&!d_=fp4GG;eBSZ4ZGOmyOPbR~5kn$iwkcfkf2x7TnLYr~lWaY&ABiD9i^UaD!ZMX=7{WqhBE%<5FD$brCm2tv1zJug znTdN*mc^}l?}E}V%su%)65#mI;j=R6g^eakA^2B~nBazt8fFfRxg4_K=rU1h!$MSQ z%a9NolTki-rSk&Q9;vu+F}T(;2i#g?HB+F+kib^V6#aK)Eub(>?P_aGjro zHFWO$tTvM{W|(0*(VQT);`k-Ham)2%V}dO8(B`oNdR+^FUqWALZ`7;c8KR+OK7f~m zr0+$weKk{j{*Nzy^yPE6jY;+tO}is6C`~15<6>&=@F%nXB%V0dySoNLGs%4#}8|(ePG`S@s46X|C8VfD0fe zh5s&soI20Lo+s4yBIb~VCJ!o2A`an;5@I3}qZ%e=&3H5EJ$V8PZiwg}WN#Jz7BWcMNM4 z^5FdO&g7vP{v3+fT=z^OGpP)^UnAFx*qm?L65)g0*x*(OMU$XHqz!=BQkU3z_9E|5rLApcA zIG`tLpyXv|&$6-NIz}d{TPqnK(Ys|%FJ=Y~Z%;m-TP$H1E?mBFXR7@U^*jezQpYNgqsv9+WsdCt>Y|>HAn$)T{K58{tzZ30xLezyw>PRjNS!&K zJ3YS7ablaucU)ioYwgDOTwnc*4@@G7a;cLmTR#px{5Q*2->XX> zXrrY9JTBHq2mhj7pY`qDw=h~KayNZtI(xZcV+!grddtyo-oE(o-5KBp zpRRvT37@8am-PqwiXKW(1ePO`frZBwrCGlp93lu=er0?I0#4~~(ZlnYLzR=>%^wYB z4x)aih7^wjWj20xslnV{P!-z~_t|g4Ay<3PZ`i+=^gYkmMCrPiJa>6}_Ql=hL)4Az z*BCDY+SPiNg&pA0=4b){0(LXNSy~mBoecc|g9xXE>V@D8D~U_&qy$$ho8>aM z%px3|x&hs_D3028=8$MXLqZ95^6CFQNGmBoAjL2Y&-#v39^38i^cU~>dTpQU~eVW0K;dsD86&#!ta0l%T(!QY)9#f#i^l}2p`d>n>Vh%ki2IClZ$&UzdD||<%8fS zm7Y7gZGG#Lsz0zf+B|kE`9eo7c$9jHsPsahQDhPbGCc#x3DAlYfVDgR66+O4?nYn= z!VIni^lV6dXs-2{(9XpxP=HvSE9NtLTa8*erktkpa**P!R7}wa;oFkfIG{!itlm%_ z5>QL%rxVN?_b-A*-aBF7Be3z48VU9XpF2@Og!BOx0FvVaP{SNaA0JiwS7jw_?v>7~ zXUJ$0(tg1={#Dy=SksGP5IdC@iHJKBJb?dK)Xu@Gy?&22KK{k4Pyg!ee|r2zCB(wq zaz*-<`O(iT$y-aq|@SF)aODwQ+NNk_D5~8U0Lh+?AIl^3ymzlwqGC1FIJ^OFYE&YZTlu-KB9z@ zSf*AiBp9w@pou7L#!4v$J-`}~h&C{%4bE>~d`X|e!rYf_0Nv(7#a$R>s>TL^yf*55 z2NP*Bb`3X^2PjDa&9Nl>mPkYv3f6wrx3-6@g>SQKif9AaBMgYdEn??H?V=_Zp1^<; zg*HkUI1;i%BOA{{r7*NEh zbK)c88r6#J%DG{jBa*+??*eQqI=$c+@+ro# zaBjZu{PYjCfBKv4@Bh*D@t?ha`;W=3w>x-FQUiAw$mFLmlC%{Dp{5WRVSy!{nL2^G zkBt~*81P0cU_g*$-W7;)GUJJ(Kt=M6%{hC+zx8f6>ww&GvsT{5)Lp#2{vlR!1@{ZtWq2xV2Nv1k>wPitf%rnvDOGj=8KtlkPpv=bbGxp{#jD7m= z^B@1IedAZbzyD|V=f7)x^g-8ypAUcaThH!&SMr`^_YIpd#h?;`v`;8b z;)od*fmu@+6P(sVuySucw$8JfI$D`}1t@(VUmqIg%^xRNc%f!A>TTPlcjN?f_a_~% zq3ohr)0|`)qVFQ_q9og|+*7XYLy7 zm>^8Zt=6Y9?FS2uU3)Eduxx5+LamvVDHhu4vk_UWP}S^Pij?|AqaL)W7cK;~G~uUk z8xZh|365YI8|xVGag?$_ZEOm;CM<4cWi+=sle(~i6A;EG+$Rw35EsRH-3r1nh%8Dq zGZm*>38N~hgM4%8`zxls)l?Or^dzS+jmLtAoU&c&E7sefUoa>1W^wK+Fe zB(|4$*XGJ|k5-=*$x0uY*Fh3YcCW2Gy1)GJ=dnlEZ=w)TW-6ih8iCp5f$49an0ox< z{xAO}{-6Ia`Q<ou+W$Uz@q9KE!g$?(o|&0qdY>&`Qd z)Jy%zBMaHXj1ApJZ4WjUkP&+=y~;(`_WfZaGQmoE^R?nf_lucJkiWw+>x;Ku{rtmK zZKjE_@T2q3fBM#QnH#9_xkMuRG=fGfc(Gjh5=s>cMZrlyrDnG^GX|`iDJWY5j%Z=5 z*|^P}FyuM7gbrcp-~h>YUy;P3A^-N=J!%HT9>#co`sJQS2aaaUhh*_&i=TW{oBTs(Nka8i5GQNRFghKW`ZW0L8j++_ zifX4^L+m#>>P7nNjHV~9fBE5J?izwOSgha~ZQpeN>*mWR^T){xfYscqw1E+$mWG^w z^cSKs5h`wm?JPQt8WKi;;Bh*Eb!7n>%y(TzbCv79mhrtRa0w>%OgMW=5jH2gpU(sj zl18W5OBLrS#eDW-_y61oeGekKEX|o+kdThbCFY=?5;saa4k_^Lc$rt)_M|t)9`Sq^tx7wk5Nw!5__?!33{{0UxqFGJf>QEONaN9{{ zN1Spc3iqC1EEIZNDDsA`3kx^`vj&9Tk<%gO~P5T=~#SaR)nel4M{STa`|Io9%h z>o|8joRX1#135m(*oX`e=Q3>45ag_ROJy^h>?;CX$NPYSrsU8K!Yf zklP|&U=CXwQL|(pguy%KPoVRmzi1c8k8M^nF9^}yZ_&Ifg(37Lb!eZ4x0oGEHvdOON{ZbGE($ykA+15ZtKTSdQva) zq6L)mP;tt%S}LWm){kP1sEZ~_8X1gW`R`%+2VCeZXju$XdzQZ3F?t`i0F=sIdr{y6 zriV8VWv{ciM1U=R84_TX!805_;5+cq=L1*NiP_CdxBf8r_isM(ef+1$fBm)TgKw(- z^s#O0UC$TyU;5`Ds!9fHD>lV5?YM(NXYxDie#To0I7~q0~KZeqml+ zjXt_|0OhK-1ozKH>k8p#clFxGA6?nLSM}wqKYj3CW%dRfgLY#IA=ADk!Oq=^Mrc6m zT{J>7dT+Th#ffp6;|MXyw@jg<7OCx#Tmprd9M%`fU+5u?8jqE>7^5E~n?N~f*URjP z^wef*yakcH*_tGH$idtLy#Wa+PGge92dqzs9udhi%WV)ah!x@ltR4@LB03RhRP=o; zzTtat?BHABEY*9<_OYV)e36@yf{h{3X6&Gxu_5!Oe+P@oD2B8|LWgsg;}36NMR~q`VTkPS0$cd*XT z>iD92_MAgf8S<0211$vV0_Z7-tW=Ok*5G6Nd!M@g2!>Z2YUuo(j2T&^)@MD3`8laA zb$bOiJ@(7n{-@H%s{j1`7dDT-qLsEY$7Zmjl_CQ7NORg-EB7V?^Ekq6C|mR$=o?W# zl1ISOAG1RU{~9{vbo5q!VpSCQAxif^`emP17M6)lL0@icedqe>?!9KPLaCb*pZ#|3qd(t#{B9z7yDoRt#-*dI zJ6THV^Bg-i%~wqQsg^csWgW00nF+|SYt)ljJcqu~nCPe7CRAFVcj)t74{l%o`rV5= zcdH+K=tHWVS}%s3PEpPAD4t@5hrUjDRx(&4TRDR4A5uMnK&+sH+V~`7Zz_K#S9}p% z?%L=yCbHa72@58@i|lN*p7=tmQRT;dZ`3jobz?ds)G6P3aVzw$h!yQ-=s*m_awnP% za}ARU8Oyh_@54J8V5hd_`H9+Ef^?aWT`+O=mO>b+TNi}~Etsg4!Xd@FPG!PmGTC}( z<0t1Izp}>SV0-m|$XPplpS|_spMQHeeWQU|QIZ$f@;ATk`|3B*jh{_Fey4foP9>O# z%;?c?M!%o!IsC250}jiWvYo~>i|)a5VAe!16U z-Wqxe{sX5Odi&kzbJ@irDqdqWZp0fT_Qhvm(4iC3}#8ZC}3b9CUF~7sa)0r7sH^O#_Atwh8HJc5z2K_@F{8@|X-D zG!n^WQ+&IXzbJ;?uP}xm-=BHa`q^))vNx<->o+zo-RI22IcP*{^=L)va_NKDj!})v zni5FnP&4upy>V2jT0pM_ybe>p_#YACwk^v@$JwFTOXx>rU5J*32=&&G&Y%*KXWJ<0c*E=irajDQ9@on{Pp1r4(ji;85eR1cfva9Wy0K=s< z&G20m+~XqK>)=;*fFGA-tA+Clz-Cw;tr{=-0frcw3$k<%DT?9;L~IrjoGG^7Z^7HP zSoM|}y=RVuXq5c?sJLt86h#VRju#q&Y16Aab@#r0>eBABeY?-M)7|HecBT&0KmJMM z=F_$L6L#HH134jEbCDxR89A3t9Loj|1FsgVov&gK>r*$~2SS=2Q8>Fi6qZzsc<>n} z%S2tv{v#Q-o_ z1b^!J#|_8#3Z7a}Glr#FQczvOsS}iCFVs^E9fW<5YC&wV2d$ClzA#M$P>+~oy+Tkd zG3WuZJIBDOp)F)_fMgflJNsxE+gj^&e|bJ|Nfu9iM0nHtQ+sm@x2P3khyeA5aY{IJ zDPsMrb7U*dvKKa5M+??r`lEcqdA)W-RFs1zDn_j|%p)y_%ut^`RGqgRHzqyl3nlQc z)Md-goBrgj@yyMTBq>8J^Y*~pmNU7SO@v)7V`JVWeWKr#t3JE)Oe|A&N-3>Roml1M zSI)$CpC8N|8B@xq$gX{SuUMTQfzm@~@$qj@J^ES4XCIY4_@z7ZDmFkjbM^csf9kII zb|1ZV;meOE9{$4h_>Gz5{B0(#m)$Y3>TV5Y@wNh_WUsh-~smC zFbRS1$O66IqMi+r+`6Bx-ltVGlLKPZV@!+E1>{bTiq669SGq6kdfs4rF0gKUz0!P6 z{N^NZ(L2!HaO9FA=MJOl&s8iZ&t3WQ$@MRPdP{F?ppwt7*8zl=2pf1xg9Jj6=shk0 z7J-0n1ywqX#Z0N2XZ1h}4DK@X3U)AuI$fg&fthKW zx)j%ESuPBwUxiO%(u!Q7?P;B6#fgPqDQdxIhoe)k=wOVWE1ngi6dE?#@DPo8z-Vj( zVgtHC*rXu_V*dOoP<4cK_Yf?imQNCPCJhdeNdp0`Z&|Az2dbve5KJ&a3n>+j4K)JJ zrU6pP@>NSXt&H9oHMGi#R-#v3=(-`m*l@dOD9O9)(MhrnW(S==E2L^rYpPs&++bv3Mkf0tUTIv z_-}|kB!s%tu8-6z-qQl&8}bxJi4N~JT$rOfNn^yhfZiZ=H~7h~j*GgigMk3<@^F5& zP9Lok;asRMAH9?xxv(+$!H3sA$LLYW?M@ z*&_nJAVCK6rr(ZcMw@L_S9<}EQ>&xQB*_j(He-CvQ6fTd8<^7p-eP3l*}8Ssi-?Z2 zB}x&%_&wrf4vezblYjs(W9l%&DA67dvMeJED}i)Dikrw@U?Pa5{hUQe_ zr-_>kHxVr=623m5xMpM4o4#5D*?8woclNqf9asVA#I^F(Yq!<4AnrdT?lP9_H$Pf` z5sH)ypu!=-q_psYIyI|JO{7K+?99EaS(hdDm;Q(t8q@;b7)E#jE>*?haH7maNGZLu ziDTIhU=8AvVV_RAU;E7Q2f`Qj>wi{kbUkJc7P3N+C{R#w&ZBk!67pHacQ?wORBB7I z=EH(1ZUSZI0d8j0`jyjg>;YDHK#vrYEHc`lU(#%GC0Gg88Nz%jmj%Q2u8GIycj%s! z*jeTeT5%Wh4?IoDm+Q5L8Y!f~Uz_FoW&4@A(Xw^71YBO~<=E~|EoxD}q%jgtfNwn* zNj2Wem~V1;CSUh_^UHzF^RI1Rxs+dT&tI~zrD841(W)hgi3D$AL8ULu-k#2HBf=R# za-*CkuWE|Refv$*=FfcJ{JLl3SGLWcg+BQ&-(UW)rmPMdlU8G5Aam35;H`7pmyQU9 z6;LfSQLZpD(a@YXB?P{NAEX}>8I6fJHF6E>#zYMKnl?YU^F~x%^B3y6^~QQUgY;q` z1*mzH;!(9^pwMh5??&&KrM^W#3jlD(|5m#5Rou18;3}r4WaUBSEXG6NMXiNqGVkoX zo?59TbM9QK<}m8(+)*HeexrN81VszS!`#|$#9?2%1auGtq&aT%PUULI+=*|rdWdHy@dZTTXtCfR-isX{ z+GCr{W*u|{R)nueDVRKGuf?+0B47MsW#hxa&p(=b^wwhT3UWc_2JLuDwdM*u%U_@W z(ZjJHVuPaC)62WnVvFc2qKw7xW15Y+ewoeE(_yafCd;e|xiXRusx`fF1Us4cataA^8Ke-h#LbV zT7MZLI>PQVH?8TVlN5g1QYT(TSP;^8;87hTblWUUfPL=be{%A z#S2BI!|vUY%=MA{I^d3(RQwKqkqo*W%&eLbUS`jg@sLB}O&=b`gD+}!;{PD6x!ak0 z1Fl46O7UjYdbJWSsS~ip_BST5E1U3wkuD)FEjoAN8yZQ4=#i|(Sfb#Z*gd$YRVFYh z@?$f9&=-OaKJ40jcNAEJIEK2Kgdr9rC$v$UYIwB#OlIJaT&zB~F$UMvYBZ1WJuf&MXXI!Rt9gl9w%Xm41N3(%&onSzIODhf-+AiI-yK41M%oI!zpRsg$~ z&;0G(=NZizRb1SVzI-?cSfi8jsX2<$E2v=+TMp`;Me*RENa@<2^W)(~Y{qV}CnR_) zo>dRKR|$E<yePQq~|0DL`3Cs3R6T8n3Wr)m4)CT;7^H#`pyUN=K%6h4<+3@(bzJ zGX$wijFi7#Qv8~mczJ0jh21?IXUHs#HX|%YH(Ae^MzbTA|33Zix^uSR9MOksw&Twz zmQ$(v140q$^YazU+uDwaf+hsA?dBU5` z@20GGh1BF}hWf(hi~0xJ11&(_e_Z#Lv8o{I^l#1oxY71~I#3Dh#;YFbL)tBZC4?F5 znn^ni*Fp@&tDd@RHYRzB>XiikQ`&>Istyd0R6l_&M*F z8vsT~XOj?iJ4x#^{H9vGG;^^`TaG9Y*Qbi)1_{H}?_*qsr;^=k?s(_p=gJ>G;Y~ir z#H^o&OZda}-QC(i`;P4?bwhyz1bOg@&h3 zwI=VGx8Ct4ua#i-XGpkpZ+`a;U+!`nInG({b$ynlzbkjD;o*~$TQ4r<&Q78U$&a5y z-d2bM*yD>t`e=K9Mr1tKmgY93gBdPqDO)iNlMhLQaQ(NZuj)1%_sZv zr(#@`eE9mjGx=(bveJy}c`rt;6R1_02r)uIZ=hHAYb6nwy7{vs>6hGFKXGn7H4Gae zbEH{4S-d{hOdvVf!s03HsDqe+F`EIio=j(aLZEh(zG&$#cu)?bI(5@;TpB5 znsL+kBv-}UEsY^a=Ll)$cC>IJ`v()`Ko`%~>LcyrW)j z)n>=TqGzyhe*NURjh__jmHjB+@wdH%L+_tKNMnq)r!Jn` zn13=ebv(Ut>Q8U{TlT66Sa}>%O{{I-t$6fqZRTcBi!PwFFARlY`KDj;?7TFG zZYp=QXY1q*eBYV1^33%n^?X3>TSa$Gl9yJ(E?B^=`T5F?4_led(oJu_?fvG%hR=Up zmbvMsr6rs((|rKiPxgG7_~Pxz5?m-`P+w{z{kgCNUXTSBRbzsV&b2a|XPz z0{KDL1S!rDVt5D(7leX<_mO-Ad)O?0b^85Ji#~#6#nSDIhTovrPp_QTM%a=(v%Q3J zvN=0+mFF{UeVHmq$2tm8zgN^dD1o`z`9j$SQg`jVVcGaaBc8;a`>pv)Fb!h6v$r

?xN|&9|&6NcoG2&LnSw?NU98(fBMYIgOm3u9+*O;*UlzyH)#tI zb-XM;TTCsQZ92wOyfA?R%}P5U!-TGJ$myXpDRx4|iQ`Thp;oW1WvuDeIa?59Hx8Mwwk3G^X;egJ5a%xcDNsTm0zDAfa zxYD}1V|rt&{I%5Bf$a;280V&1Zj-spws-q}!{eLBlWQjdO0%tl9+14O!Qg z&xKR>T-u^f0-DEUW1@{uB<~LI-tXIebrx5((a@4@xtcX!SN*G*nRRWpf$-=;2tAk$ zd;ta`cA)vzBl=; zk0W1}goS}F3E=BY8i8dBegUnJDb^FmB_~jemXuaT_eT?o7l7n<0HpJ@sKN$mT}K@) z*$qZa!eL;<$VFgg=Ke-os;cob= zpY;3#{3YqR@MwEHT0?)Bni$w>Llw$Z2kUZuwh5)Bavtg(gszB;GE%5~nPc?n12xLnSpj1=*qk;hN3j>_`5LE!W2wG`vs+Ke{BS^Tz2x1R^L+AA3sv-@)(^#RwzBN~?fW2eOF>Vb8LThu@KDqhJHQa~7k+a)g{#WdZ` zO39Sgw6gEvyKw0Bwu8PPj_*(K120iZvN?;|OOLI0z_4+SC9!&S!w+jng1wjjeMc#^Nny_ zzN{KGtmI538)>d-eB{E4j)~F68#N~;(II^1{N;y%4}^PA?nO8usFva9x8qM2;wP!z zMcveg-z|-5&TQmqXPqizJ#yTY2JYG6(5I?yp zMr;)en4YQ_bHbMtR*$R=f3Hwp<3($8Z7rD^&I=okYy%L{MP@)F_cO!)wC-W#N zc09jBDCnM$+I5M6Gr{P@HJV6VoB?47w4>`Q2N$s4Gicd|aAYu(Qe}lQ$L+lQKXjyD^Ciof5_D;2$p3cchBJ&x~hAgdmA)ECX z_6A0{I98OisQWzJM+eKP0m3Pix^u`N0dfE7#6R(_k|JC{*3g9b!JEhO^_S^hmD8d8>6xvkhjyNGWlzj8bGF8rsPt-M zRT9w9a{+M|wU$!i%9pLu0_2ZH)w2n;BuZkGRyOqDTmHx2W31=hJLJk8gYeJ;wTYf0 zdvu(Aac-kpo2{d+E|j6EOB!7bQUim?=p5IZ+ITXhk@UL+nipDxIe>0~gPjjw2Gp)* zc1A3BWNhnz7ZDJJ%m^A?AKSNmXeZ#XJY5WJ3jUjl?GkN*tnGZ@RoC|2Bm5#-4JwXd zwRAvhSz-prC5W7u7?D5M|5CspcIp$a;NOF>eE1m5Td?hBXPf186l$unRV7@@>8=lX)UsmGg_)wX5n_dDc}_h@O0~@hs(~ zxg^$={XSwn!_bxx+i0z;zp41`?Qj1PbdpddiHIWR!`u02;Jev{<7)WKZumI};lO|7 zU}@=l-1eS1HBJ&JSxZ(+C|fl4;K?N|Sb-c7kPab|^pab#_YB7(VgRGBo;R9vUJqVC z2WW=tVca3Wlh1QJqD@q3l%3PCbllLb(OsBJY;)#8kw~u7Oy}bZFYdl(+k1T|cWX3% zZD#9j8?)BW-yhFk?^IXnci+h5Z>5QQqa{?j&majvw`TNnmB452)dnuHn%Q@x^{QT_ zbeg*u4oSZ1oK`m{@C^h!9-kRn;#c6!rBY>>%-aD&p5BlZ5)?-{SgP>ip#lYc;KPc= zQzXuDcNYhp&>K8l1OXQJjHbm^?SZLlj`NJvSZ{y$tR^ovlEu`^npf9{sf2SR7VrYIe&`<82Wc8$|sG zyBiYvVq0%C?Y@!9-<&d5!EsEJ5M)fXA@R+>)cyEJnQyUay|>t3t7-H0s993JRBj{6xKEPZ`)vCw^;8WQ)k z)rJ%&Y4y%P4F#Y9iswV$Z*#r3#R|t*0Lg*R!6BIq9M%KXAn8Qm;Biv_|Jn8T58A(r z+Ll5Bj0|}$TDY8aOMVQ&luZRC252a$`_Ey_6q8677b^oaXb+4Tne+~0wi3yu`}*Aq z6nBGC{0yJj4>MQ;jNlT#hART_R-{VFMcfV8`H@TQ^gOE!5ns-e4~rv(Uy^kLas{<< zWw-GaK%Ikk&4r*o+XCQ-ql}k}nYq5^G?u#Zkz4A}hEiLz_hPSJ2~m^O9&9g&UYJ1kSn;X- z0d7gJq!z{qm>$wvmb1xMLDp~k-%;Y%1l3zhptD0ZFX7IeBQ<-+=1EK-@=|H8+;;^C zq9vf*Xd^EYCo=k8z(n}M==%`gdPSvdcYymSbY3@u^OCt4ol_H6w#VPnCs&c!<)%*L zZgmk$rwv@(nR?NfYS|4wFF~Kx^v(zEZ4|&DbU^}1lU5%&P_y@c-goa`-1(b!HjMde z^X3?e9jKvct%4{J_$Skas&k(ndHX@-yH=zPf(;-neT9%&J6cwR)*pwyEOz5`7w85$ zeT0Yr!)fR^YCvSrauQ3#7C_vBZ7Er)u$ZPi^A8)N3r2dG$Ho|1B6<=ej=nez{|Z&7 zQ4OI0SRj7K0-GF=m|p;P;_*UAvOYGl5L5(-0gUczeRM&%e922?TsB~s)I#N zA70f*YDD8Y>DN}85lKoDH%R_PP@gB}$xq4jMNbGUHaaC%S9|3p%(0E(MMQ%HZ{aal z>dzaE;As40O(GS}H($Y1{IKT<$^ILeqf#Yfg>{J#EPKf41Z#s^ig5=iIfTxm6Z0Je zwe%yLU}$W11BQ*ti$Jh%61-%Z>Ou)zXHEr%f{}>PLZ=Y3?4w)V@2Y2GJIAW1cppBs za{rs@&8O|z!y$&=*&?tT7^s;adUvmteE#E-&37Gt{I3KKg?m4DeEzd~?flq-J1^gR z_X>D?bIew#FGrRjh-M$lohU>XxzkAyV`nivl)J&~2pioH?)Z0nQ8{`CEqUVyG?)D6HuGv=m^`A+c}t%xCo2>=3h7&RgxBQK`8OLV6Yt`ZT>Rmkw7 z%Jvf%g62O+>;=Xp_MWoD36AO2B-7zH$8G23SrVxR6K_9WV1|Uaef#jpGmkx3up(68 z>>3~%Osk{z?j;iw2BuLLUw-b??xoX+;&S%m z!qtooib)XlDbp}wh6x~7IR`8SElHVotX#0pY2B9ME@!E zf4Bo?pcXHs^2gqr4cgx@Z(oE(u|W-cQrPlSZ|VtXGJO zNq7EOn6N^mi3nG~0ua|C^1Q_)zy3Zpy$p!*0cO`C)$;{JZ4NJDI3gO$Zj3n#l4i@h zQ;!A1M?NX1T%q-fNSHd)s_h*4!ZZc=&X~=LIG^^vsSBSw(iHkQI{n9?pCb8tSakC7 z_agVcp8E6OB|rPx%pblq`N>zCl{4K03UE7^Lru!59s(2f$}k{>LPfp&I<0ADjQPe5 zy?cE>hs;T2%?tfm2}2nqq_5iy46*)d;TTE7$+{#4B=x^a%Wfg`?s= zvt3h!)Fj(*10N;AHtKENL2bi5n985l5E1!H9aD7HsOhW@{sDQC(YA>_4WTbg01p+~lsa;0bNU@#Z5C}( zZN@s3xeAVA(9^Qs8tyQb*?=6L z)8~{^?1h~>mrf!Tkf0*BQ^0))@W{r+qV5?JjVpq;0gj!datcNSVGXE#2tkGpM|_e^ z{Hp#ajerQey<9_#GJ+KIf`dRI6Y3(3m#G(SXesB|&_(Bwh^uD<=)pMm_+gZik!169D@>%%u^y-U~+W8Um?GoJ{X(Iy08lJQUrf6aG>8SC5Jg#5+nZ18hLHhk{Q;lFg9cL3@?qmXv(~i0p1U=spn# z0^@}|6Yz4XV=ZC4Cg2ws`yrl((7wly+gd^lJqNMu0fOydVP%Zy3S%Ofr2~1B2@H$^ zmPD9XsSw66&oXE-{L9-NZ{BnLi|#vbwS@PMPJj5N+0AF`cVB=65@r;TcNFJ4PMP*j ztJ^`4C5TtyX`rS{PqUlWF7}Gp7_JM;O~2Pj*M8C4kIqx7cj8uq5aW9VEIb+kA^7a&f^Rb*SF4Yage6t@!chlE{YG@_=XJZCAXfpg`a^p?qRLu6CDx)c$u^x%bYW z)~2eoP${1zh%HJN!Nanqfe?!a~V~AVK#sDwNR`K;ee0laae>wBpza0DEuLd7K*}3y#+k9X9)~B`C?3^yiIgjRRFFt(nYBqhCo*iL% zw!93ngc+tU>lRBagN|-D-Yz+oyT{4tQ!9x_8AKtbHA2k=o;(fc=`+tSv0F-TRsBus zuKe{`wsM8p(tPUJ{f=*Q#al7#z2JFyLqSV*tCxphUgb7c^DCEVd)YD*Q_DAN)^jlh zh$Yf%h$;y1CzG7T_shuT-r+l+{6l=_nO@~g*Y2T?{Be&~9@s7^RvN1xjy$nB|E##e z;}bm6v}Vkc#SB;*g5E3y*B*f3{bIfjOv3Gf-j7s_#82E1OgZ$KMQ!4|I&gB!UrOT;2O|B#S=wcYD1rp#M?hC567?TNer zjU#*42^z6pAc_Nia@F~_s2q&g8igo}28rs6dhxr_!tAcy%AdQS_Fl14lhniNOqDWM ziNNylk2Bh(0W6l*IH>I*BU)#sAixKxg5(J zIm`x!5i4MUobxvvx3nJPX{`DY=Itjk zl$~Nj7!Q4s=18XnAoB%LF*>NYh|kB+EBcxFpw}WEOJD6Ure+l1HDSsPIgRyReQkh~ zTsl@bqHaXgXsduFj?(F)%~nfAaw+SWgZhVXOzD>sb}fRlav04s&aK4B3Dv_W7y8V6HP;6Yu0A zw_)9o|IU<&{jVObhD?(8A7}Om0;>=_q4b{mUC&=XYI+I>9Ph6TlL_7S@_um|fMf|t ze>99oDZ$~7-jyAn_=3?5BHkw5#*H7J1wpU;*TjI3i0F}_;uC}G=~c%rnR7#h1X~P0 zI7c2N3_;XmA~@^??B+8E;Li_30OLvKtrx8t!cOdI?d=3T1N9|wW3P!R)<9u>U5Q=K z7B?{V)T{jPcoD%W#r?a_2eQYe<(aP?EZDAXM!yejNv}x4$=@t02U7-2p7VkI<963u zxPiEyv~=0Sm8Z-^y?}62w*9mh)lL2cDkG5BKE3}uzODVhxJk%@V{+@zxvggz$Hhn- zz%i6f9x{Ecl$v{o2GA;Sw3J6bokS~Za8d79pXpp8evhdFsc82Fn%$&l*jPPKKvXluM*NV}M*DubLZzu3puI`%R zz5=aL^OcG;x3@*_uM*>D2ZbD!ljfD%)yug=v6_pfd-@xFA3T$+2AazU;z$ulgDOm(mOXes{C{{yF)_oAVYP5G>XGROin}%%kRa4A;ig7d6T^ueWHZPL zp2Ze*FHNz$J}o2C%yL#x?ZE6665SL^$O8p{Zh~qdG7D&hdfjVr3tM;~~x#|7U&g|>iJ6(X75U`2=@#Y{hOJ%Ag>n##{6#0XTK6A8r zKlb0JH+<3Qe8u`_C*S+ztMh;S>gE6Z#(NLHJM+Q!zxTVZ9)IwJQ|Ug9G$s3LfFMqC z!Hn5St8WIb^4)KAspU4yF~Wij)yIE3Ly1ny*Ifp}25M>VXe$mT?o)nED5g8l5zYdn zC$730;yZz%1me~=(oYgpE-Qr=IZaq7+9+X+AH};qfj8GHiSK;gMA+J?s}KO4FQm|JC@rY~WR_ zK(hZ0K-hKy7CQ)hX$5zW+XdZwK6Cu{WB-F&INyKl(_>HP$}2g&jYdQcBYJw>T*B{< zb_m%&*j0&rVaCg-T;5y)l@j8lz;?>?CfjtA+KdP9;qg}WwY~qkP*v6YK3As$s-5B&n`K~$i(9-9N$Au#6?*}ZSHZIHM zSWFDZ$j);^N=-crN~5}8^^|bzh_krejvhuBQ=UG#@kfTp5T~Nh`Yr+oW&_J=PXfzY zlY1vuKREF#x{}9}PcaM4+Kw?jCJ_0vcaA@PqjG-~1g?)zr~GXwHz9O=Td$tmyS0LJ z5T_OKJrtJmP+>5PdxQ|qW|NqSC^9yo&~!}ugT5W_+q=i%7*vq?qD`;oZ%2uhF~*xd8~N&^)OU=L25><6Tb}G|N&S33 zF|S*1&F#M72cSyW8JlsL=n}k3|1}KBAt}>80+lF-BI6vMh&H)`x1O7$Z&FSV>>X=) z^i<>Ci-VirXWG_jjMP&<6w)VI4WMn-YS`s5_7C%wNie#7jg1evR7l0RkGN$lc#NR{ zU|~{bSW4!XFPY<$%KSwpMftM2{7E~zAtGYId`S$eZ6IH=WHu&0t@yT9(WO)`7EY#U z>i`~#X&T2I9c6nj`VDDjxysXH%s1F*bIWK=OJ-yVSnFr@e??;;h_GHr3sfd@U*m$= z>wi&6pVktk>R^d7e&+7-w}1Kimp5mh$$EuZBLxlok!og+uRw-W@v|4Qp zqo9gq@Z@erew-xg9ME)U!8)3B+*?zvQaJH4&9*r*5rr2Bh z&&nOzK}NtZbtz$U!tiN#11y!QUea$v*m5OAl@&uAghJ3v;ggMt^?)llIws>6A#jq7 zl3?~uOAcgPOac99bO%)L2FwA3_oS9%--8jPl?Q=O8ubZ|Xr4N=KDt*lwfX!Cix2e@ zL=+p0DRVKbuMHJ$rq%N;^0(6hOb72?ds>^TrxydhhZuYN&FT9;4{yDf+c+$KZ=q&EgPJQ6Q!u~g-ix99nU;LRSvq2zh9I>S|FxX`mI$LCv2o>EvT!q^Ei|BDXV_>>CBz2- zYm{h-4F@l~1c=Wkh*Z#5?euXHOBBI6nvya#MC9}!V@%8L(lGe9Ls}**AWi%q9CCEC zeC&vk3fFrWl7j-KGRYlt>=jLGWhnZN<$Oo;b7!r&q%|8=uX1jL_d^T^nAMK}P1RDD zbniKBVd<0C-$LY&J<-e{W$(s0xWp`KAB;btrb>lW8NfR%+Bv!A&?!kMtslIeWEzHR zv2iiJ#&;v%FSac9IPE~mmJ5z+*~F`QY+bh7xbOh`M4PohdA8?pK6G617mNNad{S|r z`nSMeY`LGtroot9Qg~vloRVru7!!?{cX)uENlrPk&T-nB3tp>>m7+&)Srq4KJ7RAJ zQ`pJz;_;th67q0%2};O6rbMo@1Ox)PKZH+*zS2gZh7`b%>w0Enslk*fI3xuI`4L2n z!Qph+m3m1frYhE|nfHz`iqCf5E{tE*?e+JbJe1z_b&i=(QKdGhe1 zXKD+{6K1dl;DFJHb8SYRc}hfg|K7ms0`PZ`4dJH2+_`$zm}e*0jV%Hqkl+z~lj`sW z+va&(5ihoL8oK#e|CM_!>`ht&%;0`G{Q2w+UFB2#Z&!iP?5 zpBmmUGAj%>m;*Cl0TNZ{JpowkV1UpgsyuS3A_=C8V&!1S2HV-mWRl90IV6-e2L%Zu zQ#wHuEShcI=w4y}uDLI$Eo+}Q|NM&{e=c*3J{QJ_s4PM-pCPLd2HJy5`imqL5s*wV zmhx2+wut^#3zcQdH%$Aapg(YnM29s8iK4^GY2R*93vgzWgeJ6t?hKua%<#Q_p?0*h zJVKM;<6vRv%5#XUnsQpcFF*W1pcD8332;QVgzX}TuvV%R_EQnIkl>-PkoQ|-gNU4Y z0_F4$r`T&~4WuhF;3C@^zlMh}W$`TVW8*Od*-f&xf7J9Yh%q_UP!qnA2&Hh_1MDt6rC)v~NqqAY$lvReW z4i|vokw)@i)01$~kt^_U62r8gWLr%=>{II&wa#^kG|04R>%q zZNE~Jd)bj+DdYattD}Vz{YJ7L6y$!F+w!&%@@sX_Aj6XkVb38~?(y(Xc57ZLoaoE8 zoDk#H;G90)l(U`KEIp!k)sjab?RIBOnI8r#Hzy>)!!;qjLVeS7ru^5Z9m zHj7G?c4|(n&;gR;=*mgPkscf}fHy*@A5En|-JygvFk|HgeU@#zm8-d;H`vUM zb}2lViub0CNVUAz&@D(VXz&-B5S5|ka?wlb)oBK&Ms5FI-3hiWw7T0*N4INVlN1uF z)}em&LK~61ZoVkQ&PIvGvcf{&}O8#5%f&8aMD7Os3^xy0O~lMU_#XLDWE!jh?*jrJxJbU z4yG+G7{p1piOPDn_0Fe_zo4JZ)}Ml41|10ADS_;ow?geIBVLv&%NWJn>X!$ej3Fi@ zzA1A0kj<-ClCV-$_gTx~DmYGou41fBXd3SeG=>dZI}HNWjuBq5>|MOAd}T~rRr>|(@Y2IN zdf~tQThAvLnFTY8<jwjB1SDj4dKl(sjJhGc zVG3#!5F5H|!I1XA9rYtrHXB3i(BT{!^{uUy=@wRWgrKP4Okax@r1##|&&OKidL zAYqh3`Wj2IchsX-;^ro1Xjm=p+HF6C zdO7Y1lhxba!8z5Uo+#&2^wQ*BHLqgNPY6dP_!4 z5aNx9$Kpt^Mi>w=UzI^3?<|m2d>JfEaiKc#Sujt8%w+J3Vm`|7~fYcS7&gk*N!j^=MnqK3Wy z^U&to^V_eja)zrVJqSLT{j#>$db(%p`{C^$^gw_oEKC#&ZPbLBtwY>LA)oXs5V)R$`N=bUNFu*@g(vIw^HOV-+)zkpe^UqaLn=Z zka5p!76psB=vQuFs9~AH#G{FQ`sS0dz2aJ<$tEu{rmemdg%GPBkp#1i9po}%6qZr_ z8=u7gJv(>@`9$Gd&ApkQ<<>40W=m+Rccx!_l=&|9F8L?%(lW-3#pESLNt+(ECh>cc zltF>f%`Ss?4bdH65VfVmWP7GJYkv5-<9!?@Vt$E&I7UR>2KFZxDN^FaN~9S6Z7x`} z<9hys&cEJ`KF1>a;LhdzXKu#2Ax4xE`XXkDY-#`$aI9%%s7E~1vDPfrem|06Y6gN5 zP?t#-%tS=+G80||LI)YXT=c^LX>oio)j>L9WNNJ`aA7=1aik+c69v->5<={iOj-#2JdiDQgZscZxz+z3b2ZulfV+$Qi-|4Hf%PBF?yvKu<<*9ZM6ojV%6@juLb}MgtNi7F+ChrZ6U} zsVe|awv+Gh8Umgox>2)NZ@YfLc!wYiN;T2*_(uqoloX7xP)4}~jTk{rV<^c*Jb;~_ z**K|2qhWzIOt3X3FMbtnq1t;DPZnYKh|)=rm%JWlwJ6+x@H-! z5AcfllDYwxz^}Ko><5Ktfvslycxmp04Qq+nid&YRkw$>>EJK;ilZK^^M{geZ( zDLJY_xFt#19y-u!CS|M|i1Bxcn62N&@yHUB6a$zu*d)zf))qZlJ;##jY_7baucvq0Ue#(Rwf-{8YsV|04s7TxO=E_i3s%2r( z->c6o0aRf%FA1c@vmm>v67}(VR%ylxd87T9zGc>dx3r6W3JJEJeOCyU1(6NRH;52o z6|T*!{ciO4+rf7Q;NSy=N|HM%PVJ&F_cTy1S)o=|49q<~UH|5T)u%p+e(BSRuOI|s zgiB9tc$V1`QU(B=fmw?0n92v4lh`?dTEyn$J&kq{plqe4*}jP!1u8EpM95?HQKL4N zEnb0BnqRM^$TyokxFp!+p(^3I(wi2P61e(ZdaBwQXd}SL%GfcU$XL=9XO?pC2Sz3L z*}q0ogYYg~a590+B7HNeuj8>4qSI3_Y@Wmw8sfGQ{sW`ShASw@bW1}Iqc#Ch1N zh0-P@e>^sbc~FxwYC{zC$@g#P%W84{8mkd%R}6hj82}v%Aql=VX|9Vg>#G z=Uu@O*bCgR{65e;W{+gJ=+%tk*}U}ahdZI_ z88ZwjJN91dmapEOE_kk!Va-n>Q~}$(xYf=~Z2e&D{CJhO8KVKIGeP#dh7$- z1q=byN>YhkdD|(qwL&6S$n?QBLIj%&(h)K_vWEHVXzhsufW|q5zzpj*rvw=sGC6nl z6i$snF4e1DW}AzgIK6H%TX$`5>`;FAgzl}8(U#ALK|u22C6Izb6mlICITt6elDLW# zgiMpojh7$2wZ6OZvO0f`h)KA@+H{q!t}6fnqrw{$=FFG}<}m4Lt=V{Q-} z)b@y=a`B^jUxhYUPJSQCUh>m_z4(`J-2UG_y8P8by7&un5{bAa@n^i7;6Lso%jThj zVA_KW73wVS8bOnvUirtp^Vb9>Fq$F(Q(3N7(x=#mip?|GLhLUx27yBRFm^eiL&&CJ zMm#2r?nSf5Nt=kGc%i7na`I^U$sNzLk9KX?X$`(c)w68&R!Wcb-wMnLMbM#i)KuVEJ6 zD=9G>-MN!f55F_I`D9$L875QS=qK*ho;%Xbh(n;YeN+et%))B*oS>^_1jAwuwUD=^ z1g;^&fKy>Kj3K92N^NQx|5lX6pV8H1v>J4Lss&&AC zSVy4{uyn|^789pVyphq$p~uw1DHBLa3rZlg)1=XneS@z#$@4IkoxZgddJh#J(VTzy zkD5RId_!GXfJl=YK3bSQ{qe@vvEw1Q;x`pxkC#CcOyEhHeNj^dwFg)obiXn4lQx)k1?Y2b;O$ z%nl@lX^w8r;cdrT6#wEhp+bl|%}Kj<&XK!Pi&%w;3f2jsBQA97j%B5C84eU2S(d;Y$fmfTW%}$%1u4Z4RR|hS38+tZzNuzS_8aBoj%&}QLcn-VnZuAX8%+;aN z{LnE%BF@RCZeDJuW-q5(XwytA7SB0g+QCbmU3`XG^`zdpYWT2=MtNqiq;V25kheOS4~JOX<7Jcm zj>kztarW3aP#`!AB+H0H4SZa%A7K)~)0;nvvvel>2;{8Z+=BCkf*-H6WVJ`5R&rLd zFi2}9T^jx&Y7p`!LOx>&;2X!(Ai8MNj&7e&umJiiar1?S0B+Dl8f_rulQJuCLqf(G zF`;&xfBe0a)zvL&)ahYUSDEd-<*@QnAIf|@ECW>}s6%or1@?t=9UEt|8Jqx+sJA1Jo?hp1b zod6L-PFB9HSO&tx5%ve*humv=Lh2tnHNVSjjG+9X4M(|wT3BWme&Hm`oZQ8{9h`5P zd9~%}v^t{u!~N!>M4V&JHM{1B??JU?IU%Tc(Sgu4Q(fmSlo90&pM#Detol^y!wltwQ zM39n_bCh(8eaubkl;oL_+9L{&jtC_7jL0)+c+mz+#s`vAwz^iQTV8x>i6LxpG_d`c zp!LxCyRY9?&*O&ffw;TV^A^kvj5eIu`J?fjL(N9V9AuCD*hy`q%ABy1C`a86HG(-9 zr9R20S}9}+-r*g}5gY09X!oFK8N4`Rkme*`Wt<=ZN0dqI$Hrmo0 zLqaYNT5JhGY2=Yh7>$fiX?c>?JP}uZYbK&xYPAN5eH_C0&!t6T;kX%y#LrD_*YOj(!_3^cDynp@wzB~O5Q2g2j zhCc(W9SLOA=h-n0NF&KUl(S;027THW19XdnJkr9}VCH}gHquMhkMLK?x^lZImLR%g zI?x&x*$L*ICm~dz@nHGR#f0XH5Kp6qa($3b)fj5vPG?065)k;6u{Ed?In$^RIdCYpVbqu&^akwgq8Pm?2?z!i7X9F&=ql3~BIZ#kaGMlt zXMr}b#4#KTdL=?ZzT7m=cHy)=d(@_!38|HBjJ^xyEBW%3%^&xF`m4bYKj`0mr6G5r zyl}o=PoG1^{BY%I&M1y$nXINr!DcFwP{vEGc$?G)PQtUGkZ~*Z>9Grx&`Q%f9dx1L z;^*~0`=jeOO5b%VL)akPak+4jK3Tgz3Kx!d5Hm&Z-Lfb58js0lDgx`0IXn+%1~DzW zP6p$mex$|7^zFXd`uQ)Mc|wFIR?I{LiNkmX5h~M2GWkakyXUxr!Rq1jB}Q|H+EPFW7cTFzm(8D~B_Y0qE08z4>Et z(9P_yFoJ1SF1<2@Dv8l?cKT(t|ICBV?^vErhG{Zb>-HkGlFhY?X(vTvM%3xiej~h| z&%E^L#}k{kH}bRBNxKFG%#%Z~nsWNUq{HHytxA{<8c}Fif-;*@dsWw|NknPZ?*)L# z1Y2{TXFM*6w~juu&CX;JgCSBAZ1U1LyVgM{aNZ))W=gNluRcEaMj`Q%_zJ;KMX3KF zDZ!p{XZwou{z~%1fp#)dCXnTim%s8)EC1`i&i%#K%8OL^R;H8PI@cDdLt3VCzi%{u zb-`F;N)RXfF@I_0{_Q(|zVVL)tXmW0xuB|bYO%8H=n-YL7PvGcAcg~cs#Xsj4f?=Q zW5vs2LY=QM1|Zu<*do!-GQcsLec<}3lZk$N{L%@?w0adJAD&gWR= z=6Ye|nlaO=F9GQa%Mcswgp*lK9JmlpVJ=gFtj03>_?lqS8(YOLM@<{3R%;dv_p-6Z z7=%-f5)KVE4@`h@H$qu3Da=tZ2w=123NUII9HHoDoZ^>a50)C~ff0_NfTUK1ru1#CWlF|w_rb=J=$J4fdhTCP+LI=6xu?uf_8B?P0=q97%G~a zZn_nIWgLars1c3C(0YB5hzs{d7LifmL6yusI(Cz7IMtd~o?);|WE&sj?yZ{5cUrSA zcNi-HnXIz!#^r=-IONmg=VVMBn88_)z3o(P#Pkceu?Bh3xYWeY*xM~1OBZL+1b!u> za{>D&ZK+(lu3@NUM!ip|Xv#I8I-noWl`zoY4r1p*u@@J>kqupRKZH-_^9U^UxyAk7 z;Rk`AeKPec3T8k+gv3#LAxqo7S-LxY_+j{o?C@bGFxC`GOJqwn0K$x1Bm{@BCnxX$ zCQh(+;W46XMY{kKG9t8w;3czXx8igJr11Z}BtO0=lDSzY}8TLFVSj zB(f_qUbRZMTH!#7ueH>f^&z;9*fTMcTCFLZuN0As>K zrgcTSPnaNuC;}VWM&Kv-LAIygAhaDL3_>;CTPfPeK<9z#W{M+S^laR5qFM4l3z71^ z8@CHgJPJ#$el{-&NdgULvWeHE9Kt=#_ZSMp$jVn#5|xX>gv?WOftCFP+-YhIj6z!L zvMBL<0TC59O-oO0>t*ANffN@uO97xC`<=wWFyQ4@0xzFJ{cCuZtmr(&xt?0bacS7* zl*)P_b*wEkd!@i02fGE(!KA`FB3>1|@T4_SS0ht_Q3-RE=R`Kh_>5$LFFf;D*s#xv zGjuSW?|Yd-9dqKI^VQv<7jh#<5k<%-56NqiTxR+vYG9TK)c;)CHl(PbVIqpXLs;}_3Ftgst6P88*^6@jUg4I zb^t8}+Ropt*MNH>1d6~2zWM;uQBnBN{_r21Gc1%X53!-_p+XS;_q(_m(FL)K=M_K; z4dsAsV49#qK@f*Bx%Qj*m>vcHF_(CSR!fpB{2VXQT=*#aFN%Nms^Fc~K*>kmFJ}{n z>7lSHOQ3CM7qU0dXA&mcg%X1uYu{dRjoD?B1G&0WIn|p#HTTK4FMs^EY0#Rgr=H>9-H1|gQKWTR^fy-7jWe>VRNAJ(rcN?(+GI=hE~JYrko;5jJYl&QwLp} zT0WNRKEk0vBP?+|Ns1pYQKX!HM#qBEzCohv<0_#1XtIHP2^j-_l2GjHPbnLbJZkz5p&CZ5=%S z7Ge&}L<{FRGh`kc)n2++by|a_vmRnPX}VJXzqFwf7Hi}+mc zsMjkaEEh~yE3;6zI#gfG=f6lsbbBo*IbHqXsUMw-m!hw?Wp8)D3}G>ZB}5s$%E`a!`Vl*ttoPL% z;s-dZn6pr$;Zulq=KaU?-U_BV5^{6;&N)llzn-th(UF~{( z=YcYr(vD+Fn-kan-PaVPfd zcJ1MN&z;yyd>&8ttb2^*ATnBObcFgpf2Ha1yL0)gbLv{NdL^7+y1ezug@-rpDD#)h zsR{jjAJ!Oa%u$#sQCI2;>$Q7>hcs^)Tx%0JWG9bth+H$#2KZZ99fH23CnAdai-4a4 z8LB_`#eN60y#Qw;zqPy$F*FiwoQ(if*^C>}8Y8}{g)Zd$uV5lJ`WS)#9o3zT* zC{HzXM?OX}1m#fmu%IVso((KF2*;+^nxwS8Cet%!H35_xeJnxPTH=+~>!HdgScyVp z0^>|(nbm>{XhLMkXm>-vRNaCPWsJsDFdnl;WXU4wrS?lgd~JgYPR2TdPu4Mg!Xj=T z-+tDqma@eriyY58>oCRz%;-jPzT1yZzry-y_vKo3!>`U%6rwK)Eg9i!d#`fV{_w;R zqZNP#c&j07+Qv$cROVoOQhjWc_>)A^O>p>blK2PO(9}%c{&vSFvWvq?7 zb9#E`4X1Lk)tt5ifz-}JttaoEaD;I(p-7e?K87-ej9`+jKzwHpdp`P7c>5XBz1^&7 zBvsHJA+C3SaEND*{@t8*8B1xaZ^{^Hv?kEsu4p|Mxso0)zWq_)*T%9(b#DMXk&`?V z%3W#r{iVPEWbA*UF<=Rfkd@s%hbQij!s&5z5n5T4>55k2SI%~Er2<&nJ-WcpBQ(p- zpy67~rEY&T@M~OqP%9b8qj1=db#U5jC!Ya?h__McI|T@c7U09)zX4Y+(1U4c9*xY? z^jZW4#9r_v28`YnKzyPD9EQ*pz}1fV(QF#xpVwp6aJkua;(`Z6iJpNR5WTL8&7EvT z!%?#_E?BvCE(;_gP(B3mz$^kd584mIyPO}p!Mv9T09KDy0lL=7lP`xS>OSWHqL7;$rmVK}Dis>*AYJ#T&FokWQrTI5%(iMNti#D5uZ=;Sff#O=A5|i zk>a$`Bt{u8@F}r`%{Je{9|Xpq646XITT|V}K&?!5@Ci=!nsKW4UZVp%I9@PV*~CVJ zfA1zEV6W<$HP?@yT?}aKDAA*KaD3qw8A5Of4^ZTe!w_jeE%h5H0Br#rXN9UY+5VFV z6HJSKqkWz~+2~sO-1h#5-VfBi4aRgh7eo^h2qAvPvnk^LNF9zpJzV+G@Rv8k-$&C$ z6ga{a^}J0xXVc~vbLTGY{?J{x88y?5My%HCY9S;J6~XS|DYaw-b>h8mj(qlw#r(-J zB8fS-$qrU0E0|*x8p?R;_WL|mhDQ{YmlKH&2zRuXoTyq;JxY5-3z8E$G=rR}a5Bzy zDLX7)2VVU2pgE7+odkIbR2SfSfn#`5+1l$n6}KLiyn$F$nJ&$r#90|qGG_~wwYkbN zHX3|!7=Os};5o+}Bv5W786HuRYZL3%IB#nQpb`nS>}JjeT?DovB=7)3cmV|QH;%NT zpw6u#8(3uvAQ0DH2u_2RcZMg2``74Npr}KUu?=~L_&rhAdJRLA6hs3E4=Bln`R$60it|NqGPGk z$bgIX!?*cw5V7bGn)ts5@LmZNh{`a*rl6NcT^h8cw{XQ~LJjIfJfGnEqIusR9xAwR zS_3nLukBBS@uYB}>(fid!YJhdZ<+Ab;f2zjjiZ-D}T(-k;2Kj*K`ZR z4%0;n1N<^tO{-B8He34j3n3aYzB^zk!h%EN!Dkz^$@Ll>+|T%}>15&hxN_aA&(ChZ z8~^w}9d~~|o4dBapF_FAXtz+hxR0AA(}vG<=gL*SZsvjcmqW@GhdNthv`pxk^~Y21 zarit+{S;`1l<0BpaW7ggcB6{_6#Og6dF*ax!AFSd=ijZk|IL);YyHiSzO%PczLR+_ zzW|^<#bAm(1>iv`9TRORra1GB&}w1mB-M*K1h$R{csLt8?SNPZ^?`Hdyi0_Oz7)HZ5#tTmtkC zq|C7?{z-|kqk|L06c7vwxs3Rl*>tno!;3VQHfP3#w$wYQ3|p&rjGMSdrKxoEsud{MxtO5vvB~v_QOilJ?L3}4 zbSWZGj9_3y*51Pu)Ee(Z!NOgpRgckSqX9szLFM*E1W^!vE_y&b&R+gu<~#^3fa-6> z-?Jt?JJ(Ks{?oEYuN13QZLqM!BpwLT&P!4}Qn#Mr!s+tN8f4@sIz0=HAzn zo6jy}Pp=p?NqB2Qr65Qyo~AtG=P8Vy)~mY!@bY`nqHY%7%pMxh+Z*`eSV!{Y9n zotEp;o8b55+OkH+t=YJCIYp>}#Fx)zaNhAp(PI4eg`X3ZC2((g&mi$zP7WWIjD^@q z0!gh@tJT-OKg^sV{&4ZhpPm1U|G4#~yZ>DO$v>A+bZHm5m5otjHLPw#H-ES;xj%0P zw%+UBdgapYOY8dNk}|Sk%*=|=;+)@_^A~2$D8r{Y5OzkNFHD^^#_E-cQb_~xx|Pxi zKqa8CnEAhrmxab)cgUX9MH!3~db}=4IUXbO&O63Bs zNiHb?CJ>W7$yBG8p3#cTF&)*SmqCf*Y?2j;PdFHiRmHX(aIlxheNXRZxzKFOe@1x@ zVHJy|@Bjl2Dj$K}xrq6L3gQ=KshbF)xWHcMmnp_X88WQ5NLUXzDef080w#pU+?Y(o zeGT9TA3s|wUkqRWoB{F^lJ0VLk5{|&yWDZpN;);@e zR)jd16qhL~okGodh6Z}Y0d3MjEg{7lqM*X5aafU3@KC+G>>@J&9yOgIgP36V-P@~V zTjTL$bO8BTpI-j_CnY;?I&*h=AHG|?`D%rFwU20fD~c;$LY<&Evd4K){Myb7?YY(y z7)}XO;B%%%GGg_zDC8$(s2;JieAhbGDe@Wa@v-lZfiWKjBv=UD0Fv{O>(}bk`JJ~| z(ay?eKEmF?|GS%C`R(nmY`;{h&$m#`>f<#Oy)43{Sq_g2%+`;VvW>+Y3Vbq}g*;4e z?!}}wo4+xg8^3io^S(g)*{#q6!vBo6lLE&4A={4y;1v0H=zo-O@kg;Q?Zlt4!Zw^Z zmZx0~w?PSf7kC9b!O*Cfre}hPD+IJ+Z!3gPn4x8iZ-n2moix)6dR0GUc(b#eEkD*3 zF@!o(H0eTz9tp~ymKevR&j^>+l5e+i>DqlP|6cB7KL=;TZoBoJ0>THvyPsm{n0tPr3i!_~;2 z!|+Y&@ZLqH>%cQV_W#-nw21a2(nwjtNFSRIQXJ!+~1N-(BZl-@K)mam@|etM7Gf&CvX!?2%dtPFa}2@ zsm`tel~U{LHCwgBx21`B?KPZ>2#3hkV&F{IhM{Snj9}KdG1Pzo3s91S3KrdXx9nuo zNufEF)1DwLptlvXSm9(E37i>RLd!ualfZx6F0BL8oQJ|v{u~&^T>c|6!wq{-Gn zJdk8`jJ1l;I%1ct!A?lFg3$wkNMZ})*`Aa@>KX_gUNjr}xkFh8vv>mdL-+;U$gLMw zxJTI0SoQ(bK}P#5tn#}(zxX%%CkJ$N{EzfjajLR>@R;f^F@iM=ZxPrqEB<)+Z+AwY zqeQ{VYPL@pa}y8$$@AfFW_Ir^FnQBv8?y7ql~i%oew5%g&0C6KCVPCIdA`-*+c`9| zRdiwJaFcSn->6R`hrYM+U4ly>f{J#uztwCbl@B>RLZ&{3HWVIU!6a5G;6{srR}m*^ zp>$pr_oSqedpns>uBIhPd8N--4T*z(j2#(YSsygl&EwY|IewzGtSG)yxYy0VoaU^2 zIOjY^6WfaJb}V0$B&XKAt+?h(mB zU>_jI&V5h7=&lovHzs0t1_&M(5GxyzSu!0>K(L(Ao9Fdv$Iht@sL^{@E7kdGZLQUu zb239?T(4XkF;<4M?!!6vQSCw^dux}7NVs8RwK^9(;YeN=r z%3O?DgOj>r6%7@9BvScEx3^}};=7L$AH$>_9%ht=k+zf%+3>DCYWq=s{;HMk$Tplr zS|ATw^HBcS0EQYoN&*;xyxo%C@xQHgU(nZkq*d%KGiGg6K@TRL(EF;0mSCk$ZTUrt zV}Eq7{Hg#g(=D2(LMGKoMz3+Lq*pDs>lFbebr`XM3?NT3=K}H$I+8rYxuI9gr3hxv zN4IZgZ_O93yZ2rXSW}E6x>zbHlV<@?Z=Sr4fk>_)=L9o7bTR_240{UGCF(|I`|>S) zY>l9YkHfzfgd-&)Yv{0hKWsSSkpGT;YT?p5EfO12AqafKka}hPyCs)3GZ{z8m zYbB6r1;d+S`!Gp&k6hN844b4>c!!NBuExY0#YWTdd zk`Fw>a*&1&Ein%>bsZ*6>MkO3QnZ;+91F!hvkB${-}pg54@(o5o2G!x6st5MR>fEs zWPe1PCVeQJ$%FR@UkP9wa8=Wk_xoPzA`nkln;CrZXaRNz$z%qgG=F=zAG3eH<7Vz8 zK8q+4p!?}>K3aH+ARYl>VLj_1D0V`<8qilJEZ6wsC+#~g*cl9p5-$={+s`YGt0cshxArBes%ipHO%5_Jb(pt8AxNYkP0OV&e zn%%cOf!6fli96gHicOx($KQ?a)tnN;^}G}V+=loLWWHhVHaKYu9Y*9T|q_r7o#xTO@nCDYVTvlUOb1gUS#oqrz-*4569r=w$ zX`I1WO+>bafAFWw-{~WDJM)Lleo`bl&ABd!&`dkE_I24P4cG)wJmSLkDB*5=8tJGy zd%m!Ekq|VL|M$B7#q3{T{*U=ZVo!q|TmiZ05r`ACz*qos{YMG|#ebgppWCC)=;$~%nzvmwb5!Jx=alb zOn_}ihUYD#O6F}m zkr}jm`XUdo-e}{86lOx)N5DPOHEK)H6WmsuiXbDv0-I?pW@}=dj?Zz)vTBr7JK?{B ztZU&_ve)3>!cjt33)%vO5@-TCO2FL=d2r>xDD%v^)Z#Do_4$YdK*bs&8>=vOP3*nIbEoQXPXpVbX=PX;B1{y9oJF{4GUKB6hO9fnuTQEPTSW)Z z2^4xl)bDKl?`Tn?%)z-(uY&7DVarWnwT9G+Ddb_)349;~ve1HwBbEBrF#rRKEX6|X zCCJjd-LLF1=CjSY;$~pE>Qu%5Pt$vU$9dm(zJJF4aL;Wgd(PctH|yjkwq;AU zx+t-T4Im29dmBu}^a4yTzyKKZUI=!IqC}Baaf=nNz0TTB;@sHlI5$>hMW6Dt8Qs?h zIrkj@pfC~%&OFce`zi1D>#a?7aGp!lf)hz0J5Y`q&*6nj>O~7gYXsZ*ldi)z2QUnl zXHnFL3L|fdgEhlJ%9?{}^N33yZqimTf(^^NY@X$tVil-dNa@WXss)HH;tmtx(1_B} z#+pFl>c*U+b@zId!K)A2KHh(Q935S8_JZ2m`si3yshxN!nIwzfHXhT5T18qP;L`>I znbu>Z?y?vq_~5pD+9Ni6D>6;(o0d5e%zU8wL7wv@?hFoaQ0f&6BhVwyHLWOe3zBq9 z1i%f8oF+P_u1zEOkxU|A_ThKexzx1YE^20VrnNE}D_mbG-3pQY9Qwz~C2v$jQ^piny`w;hHs7ImS1#g&;$!eFtvMPveh82tmqo@Dq^&Vijwl2XlP zTrh(vf-vY2C_9e|dkC@am{7$s$n0H0f*SQnokI{XcpqkH&Pj%ZN82Bg(^K>*2=n+E z^r;?W4wEt?pd1VIgS)d|zWsfDa7pcMXK<&?HXRiweziUW>4Ie|b~erd77C@Yn~%dk zWq(JOgq~_A<%hmw|I)eL+$$;zHR7@CqvhV9K=}gm_-;z|y~SR}>Cibc5`#WKzGR>5 z8HdM=X*@Cuup%W0&pJo}0QqXSS+_|Gq;f)=^xr}UB+przpwLX0B)WJKQ zl}Ki{D&(i&G$iCD>(f?d89`767*jL&Qg2V{j!7x zdfMb59kg(WJq%KRD_B6^K-Y)T@zrviGs zMGhh~b;Q-#xQ=H;frIpMWenCIg!Y5!_ryQ7;WS3)m0C~X+(4nP3gIaAB!Vt^Z3Sc37MdpHRPo^X2#y9X+A9YRBT^#vknUzyI{a_22(x)vx~du7CPJ{J;M% z&7b^b_k-u!9=&mv4uv%Y<9ex2ko@({Ldlag7K%9UJS$gLhg#eRK9_Ufg9gzgoi`f&~4nT}i4sfm6Av&TVGfN6`m$)UlSh=V84Cx4j%oCoIu_{~X zVaiT%0q|&{EE1KVB$mnqMlLD%QP8TfSWfVM(J{qz{~FU0wRJ`r*kYUr+KwEn!^<^9 zd}zi!fW@hrU>`b&I?|`GeAFgj=M&aEfZCWiT40 z^OECCNrn&QKtlt3$m+f|tz!x*OYsboC70SXi&_;A zKD2iJz6aL(dv@@W+)aG-*mDG;#amPIRO#V1Q=AJU}jOPOOgXO;|?20Ulu7LE(XJ!7qb_T(mqljAm8JOW@T(yD^t~ z`1bb-H|Gmm8~=3mxBqYMHxN|xMN?^u?jwMR9W?R7 z1W@c8sS1Bc|LM-i^Xdi&M5i8YF3%wH!E`yuf5m2#zUiPA6mUT5nJ7a-r|{NnF0wXQ z4a>lgPu@ANc&de8-9sFMgz`|bO3-I=OmB4;8`cbeJH~K1^M`$E1^4ry-*RbBnc6G;}MeU_tPKjT)TsaLTy9S8%AtTRARpCoTQHhIM!x>iin0G$7AVN z8>dP&6M9R`@OAKAYfVt)hloDGkR>N4Y9f*Z1Mifkt`$;ubXSY&zPO)#9cvHRB1lkZ zt0;je<|S%y5H~RnCcsC~FM;UNr?|LW5CG(x>cpi8g$bP3kRAO1a~={%>9zzX8(hF> zfC?SMX3=?De#PHW2)?NY5x@Y@bMTx~Bm=2nS;Ni_pM|_=*@(W*UnIdeRF?Iy1Y=fo zzo^{BYsP~;NUk3%1FlY4I+q6~iXB&qt()4=B^vXc#EX?U@>DB58m*|&2i+woHZI(D zZp8mQ{PYxAEwuq83UD#InDPMC`|zISRq~)=w^HFV)i*j)#pX?s5BZ>N#1T9w^;07J zCf0$GGG?wJBw_pvh>$a=*F@IRZ38?DxlxR$P8m~|2ChD7_)xBlU>HBFZfP?H*?hqc zrSJd28qa5rK;{*9QqIqm8fdc<+XONb+xfndqwl0ERm+ zPk-_?>!)9fLu@Xd4LyA22C{(z+w0iLAO7vq;l1cV`gOo%(wpFDMmL^LP#hlNYs9Wq zo)F?IQQAUE>9DiB;L#G0wU_scIb@C&@@S4Ufl!=ho9kHJFn^WCXb_YFz=I0_f4Y|` z6O{%Lx&jFySJxkB(j~*j5Kii0L4(4{0d^N()i=V*l|gwLT}kayxO8I>&A|5cca)he z<^WHhbML$WdWDFkW(+J~)rR;UqtO#Od z*UTay#=VmQt8#F2Yj5eEVnhE!i-(~`m~33=dCy7B*PwfwB?7}fsQ2_f==rwV-@;UX z_tfU6-@KGR-^ElJwCVo+zWooprCZ+p4}#1g+4UEyX3$uw8-3+T9x!Wp6qr D?l zJX||J^!(dDjVPOQl??oc5yf0rs_TPe!)!;Y6kq~!j8MwrM9zr|8$C9^&U@sXf-5cq z^GLs3aM>}mPn6JXl+X}zBLE{pAu01cmcnQwgK;VH$01FbWL{0lI_5;4gi>9`hFE|H zv1A67wT?Qehtf z`o^FnI#n6z0R8Ag_3G1F%xYcg^Vjb09~&3o^H%tue|7TVe;e3+`-*xsMrByM-mPqO z81r$~^c3^lm_(HB27aKpuRVU{;y?Xa)!yp^558f4`d!!V@#cdQ16s2MO)oA{gCy}; zzC`pec3KQ-B;F4Bi(~H{W2DJR$i)iU4yZ3BABt!K)A5f$IwgEZ1}UP|CvS_rm?NMy zyTp%7lrXzy!YTaVMm4s+DRRB`zH+GpQreeg^_@>-sMIN^%p3L~=O zz=ge<^MkHT!k>LH)fo2W>6@sp&9IQ)cg|a z6b;j}BMB(jZ;OWBwJP5$Ny1acKsfsfv>dds3n*}?_3wlQJFGsqN3#y}AV#z_?8D@VMqrYQqmv`MotfeI`7M!Px zuCttt$mbaH^Sep@HLL2Z6XhElbE@~^Sp=U58^9n>^5WANN)`;QhllBFip?D}DA6o& z)rOY@?@8`Mkm3RSdrA&KGp%kCxuA5xu*U;diVdY@8GohxJg#N26j_Ib%w~$>BcLLp z>jYEz_|13KhDp7{RCv>=b#^QBP1|j+DHr?YKO7?TXA*f25w08y>@0YLv=)w?3l02&+2yWR6o6TT%YSR=EsPLs*Fbp*B5qw;N?LDk*&_J7}Mi&N?4<% z>`nP7{JDqGpDV#@EWD)t4|gMa0RdXHoh^9ZgdU^#E?|cQ3;!?X{{#yWZ7|!GarA-r}N3wMx8(BZ*f9?+pj%e?5UAS6nV!%N!mhiCv6j6P% zSY5u1{oU^3_b}P1eNCvLl*x-bE61RGz~U&?nzXJNyy^f{kFZXl=^^unB`@IL0oo}H zXvD;OWFQtB5%37hCT6Dq)5e(ba+`C+O^9!LXhm^eD}?V(Qz0wxZ&x$rrjEY34gpqUq`+b4pK}$HQPcDJ8d-x6im(O%FR^?rTim!Ec89=CpQ{3hVDTVmN z37=ZcFR`AcTHt5SqGv!aCl6r+*BJT@zcDo_k8Up{L%MQOW9aNaYLL_><9cZ#Oc}*| zRTwyf!|)G<;^iAA;Ps&4)|ZRV6kKl_R77ni8H3bh7-!L?ve8iPoTBMyj!(y>}N9V%9lA%&K8v^01FpJQpLN_saF@aF&)xl&aK$?oIs zpNNdVGg7KwKq94$Y^j+BqCF%mJ6`?d@-ZT2(9a8I&=WswzOnrR+lL-&Zt|#~2}&G2WUj2gfJ(UJf6;9)0vJ+y1evb}=f_tVCw#z52)RomFyI^o88s zht{1R`w6qtSEwI+rR)s^Z}^c9o%g!T~o0i<68r;{BLax8WpHa;=ZAsyO8v$4$R0I82ep9o&2iz0AbUS~7I z0g2dPXpHDfYlJ;GSqY&~1s^d{Y}*tOOB_>}Nqk{p*#Jrz5M)J?1IEIeMM=QJCWm&A z_aa7JzqKFNhK;g}Fv3BmsYghE9*rSho z9{eJBa6h;ILHfzZwg*4Hs9ZIxSCH0E84F0KBrS-|-NQ4l6JS*Cv+2DQPF_9}xvg+9 z1Sv!*9uj4n<>*gg0nrUVYUjiyF-?RJOJ~ZHEF6gqg#^x=%7bj1B3Y8i{Cw#=QA}w< z4T>4nSEw6Ped1OHv99uC4M|miMvL-2U`cqk9sl%mn+IVw0Jy@P|A3+1G>>n8> zYwpeb$X(_tl?f7Nai+}6B4*gc#uGyFPWx+rc>a~&{^#0Xz5KO@-OqxRCXobI(qUb# z(m2CBs#NX42DoQ?RlP{pDNF!aa1X?hEeVJKw^0w2Ma;Y$4#;4zXo1M{iPpPSy@EB|8@-%$`JwlXxH;Mg1E!G-_+yx6!xz2bBHTV!upp1;Xw1FWhyu(4t zUG1Weg(d_ZMlk|!pG9lO$4)&K*E=V8WhA;CxqblHqq}%@sglA53x<)opNmPjw7UNE zj`N4Y42*X^i9T0wzlnSuW*2>HxeJ!Xpj=yIm72^9%~;lx7gOrLDmHfTkNs;hMYnS} zz;YSZTC+lDorZEeh)tF4r?kdapUB%l9t|NW;Q^qI0&gWsFg!jLTTqxM1Cxa_jLy<} zE1e^H65wns)P~DeGsk}Z!WwTS^78zdxx#5jsiA{7^1>PGLGX2{;=)H_ejlo1TsB8G zhc=8c@GNpvjEffCvUcERi_|8Ce8r5_QWWSR~;;$2K7*0bS8!P1;y1XSGZ}>=7bJ zp2Yt4H|akbGt-BQXB1yGG_!*@oP`=vqEL3tipI?6#OWy`4jFn3Qq(?&2%H{-zOFj!iH{WExnwx9mzfaM2}^md zX@cZ{7%-hCTqY$afS64Z5{*rFpe^+=F=kQ1OdGEm5Je~`@q_tyOOw})QSM(0 zi>(rfk{Jg$bRd2x@eqj>-nJWyz_`4;i5#$a(iy-a6aiBvOD+~?P6A2Uz&aU*pnydq zBvG5<}3Qa?dmLjZeavp^$11ngzF63NM}k<5?; zQJzeobi&|M=)Az#0r{U?B4kB55PqNqMP)aI_EKg_BWw`Z82a@#Xxk`=Xq>r382&&W zj;f7TqnG0aPj>{u9-?$aDVU&TjZWTu*E@`Ts4k?ur}mztX^LtML?B_!b|7FDR4MST zte?~jCM|Hx_yEBX%gI1hoT5jL8umE`U-{}bt%uhqF1kkx?jG_rnD+)K%*dgjHj^P6 z$AyEj0F#g?n-|@-O6DU7lwZd`BQ}B!Cglymi0D{Kjw*)vL~Sbe8VJ42jy?qrTmj68HX>4}be-m(`a3?Q16=|FD@v7#0Eh{l~?3;Koaii;&ebSlSsDky?Kn zoWv(ZmKm=J)zCCZX=L=lQV1Rq zN0VARq$9TBJRyGMy8r}?R1aSkK6FI6+SC$XC5$Wq8Z_XZcESK>#ej<$#h`S5LqtJE z%j0&wVoEhNezjCjNU<9uA)YLmW{_SAGkL%wie(HswLvpraLPcgt*u!xJ@#M2F3o2 zOEl(|=QcY|$0V;n>Zo_-0U+A~Q}arYrw-PxKGm%)_UymAs%*@ulTCW6O;*DR@NRY~ zc&uR}p(Rev5>p4(7l|k%@*I4l6EW)?R7%4D3sw>AwfNCdh!VJQv`{t2MY(@sZu_Mf z=B3Jw@Zs96(yh3%)}_yqX4^0L%KkKwBAheD^O^lu1BKJEotOLf&eb!eWG+PE&AK0d zdL?d^FPABb&^G*fc2U&MV@M153FCx+p`k5PEdZcKKo0T1Hx2@tC-Vru;M3Nf@F9UE zA|E1Pnn|6Y%Pka#Uh#voUUAtq>$*0Cvx!gxx6;1O%`SLAxNzi7W?($>kb^1C>Anrk z+FBYuFU|<)%A=?sCr~l5oDz&fA9;=`ePp$gnt-qbl$#SzWOZJIf0WkLkUp8Qcw$Ck zkpr3Q{^0cTgNr}jzn}Z;*RIkn{=b&eTs;}z`yUXOX+=lMK8v4RsfQ-rqcnCMoMd+< ztzX&IPxJ`~sR-23k%C%su#8|h&$dFSBTQQMEFX$BhK(M3%u!o82EU!{AxL?eAbFw~ z$cU(nowb>&4}>G!Y%AzUI%sVJl=qS337IZkFs8!Pk!p@~MI;Iis{mxOFdoIB`PEQB z@N{_nhNhUdaUDowp0r;LTPlDw`iEo1*D)L`dq6+t1|e0O=C zvU3yw$oAk1MygY;Q9^<`yOAUnw$`anXy5oZ>9FW5^d?`aN<1&*eQ51-%5b&Vhf`Ev zZo@)H~8;CpcBhxdfjQNNPSk+5Jf!!Y*SBe?5zAts#^@Gfm#2 zEKJ)!e(LxexiW~vqF`q1CX3)OwhJ+2#qCE^vNS-&!r1BU$qT@WY_N`$8ZW+CLe;hAW_;J zMQkHoAjXcHaewg?O$r}^V7EhN#_7~Ed|9e#U6MYyMyZM&l6y<8hJ9XQF?siumIW4MtOG=a z9`9v_wtI4ea3y2OYhGMWiYe0sx7~_(K?W=m*IzC!d1$ z3e!Em1DWhol}RjSGctimh~ofZfb2EUK(hG_jeud7;=ew-|7y5&K9)bf@DKmjjUW7n ztN-vPYlWIswX+=~sy5rs)gU^n(Y{9?R&T#o`}p3u{AxAg@WS*h*m`Qipq6UXHfSqY zQ9=JsDRUd*jPM84)RlwG{gM}`7h7_~FuizQSZyDKj~%#QFIvv2wg%SIhqjYDgD+tO zJ_2t0`9+XZC56S5C|o5~rVpp5?+4jxM|c5Ak^u@*Oz`SP>FhArkUJ@`7bu@4 z3zv`Ci$2o}TMv1LOmQhqtx1uHOtUmxl+}aHE@#Cc?@L0|rzWouuFMu;y>b^I3bOe0 zcEE8s(MH&*mAyH`y{JU4KlcCh=aGke>1;zPHu?p2<=&F*f?};z?e&ViPO;0l>8bU* z2P3bu$HWIws_iXwRzE&=+^1g~%by+ib^V`w*7%Ijr-wzxFAIGLt0I^u z!-dO{XI?;OMyAK;H?zrN075H7+>*TJtVBg8BguxGmNbk-_Ppn>>x-m2Q3m~goPhLo^!U$6GxOVxJd*F zIp9P|TDrbEN)5&YtUMn!W{Ia6gbOE$f#dVqx>N#qrnIFw&<#63qN8*X(~P1)m~?}|hux~TLvDr0p!TPH~s77URX-5e#ioETvm7Ah;LG=%FO_VKjCOdvK(Y`>8A zsMra?=?RbyOtk>ajX{LIO7Ls4>;R;IRFbVqs?@l6_(lkZ54DyQOOp~nj}xC(T4`&i zA(CU(>!iaiTc%|36v1#BqAUd6pr*FUky+60`dE9hh3E>lHu&YSWr5S={NV;fq&>yq zBY(%t_^$n<-`D;~G$##L#lH8jCa3EmKFCn81_XNMX+ijt@Cq zo&_3Af#KxmWOIu5fk~s%u|ZWV@lq&W81g`xV)V-DJeFnbK-tWknIl(fNHj2E5l)5akckQE6baA&EbhrQ~I1xx^4lV`5=NE_!~kIoQ#(5F1Uy6#+IAkkBH7i>VGD{T<-p;8mi|I2DBp5xKNyzx0I>c^Sq*js-H}Kr!aO_Pc}mu z;g}Nfo)5Jollf6CyIM@Wbwn>2V(B@4YR3@lgFq%Jn;aAQD}&j5U&W)n~z`8bG9kwcKG9AJ*e zJ}ZF)3sk-gB^Yw@IWYNQH0qm`Wke@+EUR{=xTA953+ctLHkkPFboaV!NuW}*iGY0N zb@GGZr!HrqE35zR*idTs`hc;wPCPJ%xp>`>!MTr!}ngJje%{D_t zql*NtU}5B)lJ9(e^#Z?0F+iIsaC>x082L>hsAVz%05vRh3-(YLUIdLxWylT-3Jnho z9T~A}h!PJ+?h$EJ?xpLY^b*Om?9{r0qOzER{sfSOkDYgx)giIeqs7K%xdhQ*+fpQq zvpR%tL-c^O8>G@peoahmB2Jyke?lr2rZ;vg?-cA!z9Z=@*s2G_l`J82A*7gJ{#aZh976r2G|f>pJ$ZKYpTGIh z&;R6|-~P$aXMd4CJRT|3w3h1o)H>0vF-&{#quSs6`uL~68dNS#LH%V~B7e0B<|HmA zwELIeQZJ23{tirL&-`}(4@!}nT->5D0Php%(gUr#ftR+eFYKG%U<{%R)$BWuZ4bP7 z*m+hUpRB6gr1_vxcYvX0dd5LY>&Hf;GA2t>Iu|2HQmR=(fUu7T31jEqUBaV_N%wJfGvp!y=%HjOBnHX#t7?In!7OYwOf4!M&T+ zrRy0zy!yq=Fa9|8kBHU|vTr<2eH#@GxCX(Xg?!YU+C@geP82wTg#kik;!zncJ7@Lu zs*H59X+DsA?-`8n5?|13Eh~b;NRENB6h#5f)+MXHY+@In%`TL#3>2@;?|m>)css3c5adUS zC}e|?g5_;^I|RGuFV<=O?Z~d=PozR7n1%_JlZiBhG$=q|IcYastne6KF@}}HS>)L+ zF?F)N!b)RL@PL8ZVM0u z)qYX2)#<)gYTcchHzBrZ@uq|7hTT{Dr9Fpgb;0rE*}!l9VR#ObT0q$%TxT=xDMtzW z;EP5Jjbtu_w1fS=z@2=QM&knV?Mq;E;(10Dphs4f(Q9g^UYckplq!#;B(N1qI)v;Y zlOpaW#Fo(8EZTG%Ul6`mxHmv-1WGCHGmLmivP!izzg zu~;xiBFxS!GoL*7_Ceh>J=-R^+x5(FlI7uU7Ui-!j1G!DE!oW>%+)4L-7tcRA%1g- zv#~?_AwwL+7owevzChWGu5SRQN3r_~)tBghMzh7+XvpcpM!8e;nOSWsqK~qn7|8dX zmfcVkQZC?qFCCwF>QSzOuow+sxF#e;t@G@?;y}5p9xItc|& z$G%IYA@d*nIAp<(TqHYKl+`R;kWqz4G)N2Mba1>x?1}jNV

lE)+y@dlTNK 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

Vw^|^-M`GSZ@B8T`PTa%)T+zvT7^G- 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%0DdMS|krgTnQ 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

  • y>r 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¨=^3g=ouG5SBhQ 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 z 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

    -rZ{JfW1AOF7WlQrkJpLaj}v+2vf)@?jM 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

    VXU7O}6k?{=}UrQ)R;MIaw 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 #h$8n%^?Qw>nZ3av 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≈CVHMhI+Dt3s)hI&*X*ib)8d`Deb$oCx+eB0~5H!OFm@xkLgyC=>t zX@zb9_QKJpH6k`4R0WH8I&?3_fJ|3QsVnM*gt8q|u0%=xV(g2lHTKu|*n^o14AMSS zIy0p-Et2!DdF#dH%*rW2<^>dsm|>kYEWKivH!y{KfJ26$ADUdD19gGhtcCUX(~wm^PNSr?Hwm=zeLp=h;&f!HsImxT?k2ww4+ z$-vAZx0mL66hk?|@IBUI_crG0$>yNDgCIh)Q>Cep_1vemOw48A1nPoYY z!g1|F0A02+S<6?;oj(7t{T-=ENbP}+1^?d%{y$s{a;k6?O^dNGSQ)w+y4=+ORodqp~o~?z?L&;Xx=D&FR z;_j=f`I|Gp{L#rr?}wprYLLBedkVK4EM1KFN>@YLN>Ay^h`wS+!(vWFae(Bm|Lo3l zdpB$07v-)sONi~D3o5>rUDLuF=z5f~D)hEI0lEINZXW*5-Sfrkc37|Gv|m|kD=pQC zs|F5)K(a8e=$A**+Wb;!eMxNC108ZSaotdS4n;~cRc6=7PSa~fN7@{n*3Kh;PSR+Y zy-=xV`KIN5FZX^acumIE7@c7j5r&h=T#xwLgq+M0Vlr;brijVLgV*fCj7uV5j4nFF zA&!MFI={Q$dAF20RhT@A?&%+~2*SS|O5zlW4q0HUZ*gzZ%O(LQyoCKq|p2(@EGX$}(# z)BLgJt2;MO-TTMnr~f=uyk^5=bNBTBPttpT$9bP;-hamX!|uMDvw5>8dA(^av9*e= zMp2?9Hjp4d5=8I4PA|YTUQfAJ7!pZ*4@Ct6d2DUa z?}Uw}i101(ziOi`LLo>M=V$$p1uQrI5Q!d`*Es}~g99wB1YdysO>k6z242OdX(RWRtFROZ=2BBIEl%%B_OAL6-_-{kL|`T~iaM z>8y#l|IY|#=?qs!-g$gCwExM4*Yax(d;SjQ*9_VaVTp1Fyu}Y=87%`~EVlq3s29jZ zt(rmbLgq!jb}ipw`>?X}t>Ls{jJygGJAMD&6 zh!#@QsdmtG2!_x5g-ODv?Cj1BT_cGDHkWWz+!%xcrw2t^*yB;k z(CJe@5XJ|ip5l|5zffUcWiV_jU{%&3Ll7Dw*d27rJVqwel2^hglklKa z=srjhZ4{j^^}oal+nRRV`?5oa)bMGE0}hre1I16gf5SvTRN?+^x=2B5?LJblL6*qn z$uBMGZS^wdquF$_4)KPR>)l$`2|u%BKK!5HhOp+JyWMcZI7BvK--w zl&|!Lym&Y>Al~$+h_WHxW0Ks%Tm~=JsB&ub*{jRxw*vXHTBQ_f%1Ex5k_qWFk*}k$ zPuWLW!|cw9OR!(kb4B8*;&0519?mo~*RB@y08fjqUCl5=Jd%mSS93Muman0|9l@pI_~_?p7B1ydsqAF||J%)5P}(O{{FBACBnNi&b* z&2mCQ{|f=)38EPGVne-s{#t%>4HUr7A>|LA}IVu*TJ29Cffp*FHaH@aTh8QITuCX0dSWCsHa82;>B zJgm^UGYSVe4za%V3g6j@i#QoC(~WHX#f{F7mEQG2hD#@I0K_nH{)2p~ zHu!HPiv0v*uV04#=f7G1N6PyKXTEHxKsX;bPK8M%sH|t#5GN0Ki{3(*8o?q^kGyz+ z8nw89+F<`O7vL|6SjCM8^BDQ(8qJ@<7AM2oUCi(2uv$)x$?zC-x(7pAM|LNcR(szB?8@^xtyCr?k zw>9y-)Y^ru)wi|9RyIp!W&O(w9~yOim?OzG7jizYclyt**}%S#e^?9}lPA z#|=eQ55eoI%db-nd~Wgb4R1Y~NsC_aQI=I~Ad^2N6WKcBU7` z0wsqzDrRVk>ta4~$q3D*EpMmV4`5{}ZUA1Qa0YQ}H~Q*jvV$*{NM>NLVB^_~H4O|6 zxmEoGx@CSZ>;M9NzVcpfWf6a4W$e_$(XV|T`d>TY*Qvu1s!Jg0SQL0cdXRuqr0a-l zx>||Rq+>OrO&}Qg;}Hh*j50-z=Wo}$7q~PQ@shOmnzgO#Ej;m27$O!2>Ri zVxWOOu?vid2AoFYKW%hXA&FOm{E2*E5=RAmZhMVdd%pe@Z$~W0oo6A@DW}?Z>+kSN zwAQLj%`vmH4UOl7>k3)w-3lPcqkEHwG(*4!MFN%dVQDQ;+cJhtvrMmp& zsm+m>e;@jbo#4K$i$_w+$JIb7QEM^V}=rn?nHiy#cJ0;4&q z*3JusMz&-KgeTj6HP?PgpX>eN?mlf1=0DhSXZ{K|mpxm(u8+(a@rmsV*B^d*Ve`Gk z{ADam<8Y8jbK}N&_WfRCyoG_jIZ3qfv~-sfd_ZE}NVg*3TYsaLY|PD_+`ZS7x!#^# zJ^lP{F=Tky%S!zUTRt;!L`|H5c5Y7iGqGFdr1SZEYx%{qAnIF}i)f&X?m8n>YsT9d zbVAj}Ja8`(Fv8R6>FYqON>!bh+QF^DT><3H66Mk~<{ZlSIbOEXeqN-DE>3lB0l(fk zkF}{7dj{iLQ*sYU>>z9kY|pv+={s1x9P<3~nSrDpJZlD8jn39=!)1or^lN;$f-3Zk z?pEA*eERPITC>w)o@s_BV34A|*`9whw^$AlJvDtxJ?~f6F%+#*hEFPs)g-{?=GLEn z@8p-Cb)??4p?DP#vcsjco+Qm#Xy*=Kgf9Hz&}igqS6B~>GerALq1cy%LP-Ez&Uw^m zZ#H_TQb*?W$_N&P2#b`4WfGlmz7;3xNS8>n0}a${O3PZR1~?rP8%ke^YavmWa1dDK zaAu5|9(`#rcRiTDnAo1XuP+35SBtjqoY{G|b$8}%G{SNRMSHS`1L?yJnDlap3H>iI zpI=_uUb<6ohNJ>S)aliih~WcW@ly_Q4q$1e&-D<=B(s%BADtlfN?663<3s8?hDEsk z2DWaN?A+!g!D$MjrUlas#!Op-AL;#P3DJX4N*T{yGlyE3f)RLx!xfI`biqu1vxy@c zACGN)?9^jbslXdgJ735)6w8Dz3Tq4E6P~?rY=CqkqP2nZLtQ8Ko^UyagdPCeFYHIY z46AKwa=X#U@V%fG#9F^w6reKBV=h*Q2NV)=pz=v=C=|ury_HxQFf=EL zgdDI$!x!vg90YI(&&>)zf#QHU0yr=%S&<3~c8%NsGzMfwM&xu8RuBW(Ed4>U;Up3Q zmlbb(clr)z>9Z4W=KG388pd~EF2L7|s;=J{r1J&M04U(S@UvvH{GS6nH{86rxG_Aj z@M?wT1gR#>YoILgOB5F~O>(}306@iF2%bYYV}W%q;|U`+t&E&kPWCcPk+wPrH`r=6 zGYH^3rI_TYxZsVju8HZB@!Jf<5lG3yA7 zNTwdyb3GGk`>JNC5NQLlGC8GPYznokTPd+=~sBcr<;O zsN++Lijyf4Xe!++^er&S#g_c0g1G%g5?8O;< zZd|OhTk5I*3tSE`Y7koFepLQqX(fV9cxB?GL?4HZfJbH=SV4-ol}@dIz=xbX5aIl@ zkRbfyvB^XLPCooA2o1tFZz0&>(aD701{&mI}ZPk`VXT4v>BJYPCR#EEdXNH^=C zevT1v36f@btJTH9BVZ$);CPM#Kjcq zGISI#3VnF{Xa}U;V-Iq(qoQS5($P5C=~OIKBLytl!lZyg9b8=^|D4 z60`2zr|;Z)@St3m7gJt28)t^b95j1rZg8E7(xX)DXNdAmF_qa_4b5 z=rkF)@UG#e@->{mynR{#<^}wL2UQs7aoPZc+CqBg9M0s70G`-CQ?2J1n9`>kwmQh$ zl$|+i5u_blL~?yc(~h@(=J}&v`~H;0uX#_yz%**a@DPF!1T6|tz1j+di@gAsk+dEW zUI1IbE?^FDG#V%(7*JXVFQTngNCC4 z%NJTFqY0aLx(t-LP>Vw(n9EWpwgzL{AhPb^jdw0>zCN#=;cksJqGhheRx68p#f{A^9Dc)4VP>>dmK|2WQJO_ zT!!@|>D+bx9)CaKzCbtEWp6*|en+tlOEn&Fl^vNbh>ezalo$YEGng!uxg8)#zdP;u_NpzC;vpw0W45j2b9=(W5#Vx)0T4Y zfaZbmGAVPZ-D`Si5o>Xv35JrS(>@yb>f`7)7AERtvh)y$os10&LreyiaHwV+l zs*MgbjIMn5g@-*q5&i~(8VV2O9$wrqhBRk+-g`_BR#5qfBM{8M;BapASjv82)AgOK z@8IL%Z{$P8kbj;JzKH)VV%ThH)$V>DN^`a23>Ng}1bKpS$vA)ufr&@lN%fdHGLdPz zs?`8~vg-)~8%=xfi2$KLmR>w=1ZoJOhSS9zoxW6&Kf9QA-Q8Ng_vqa_+8phno7g+P ztvLZXzg%6MBEW9rc5(J*D0{w|&zJQ><)&M!gfc;R3K|42?M#~y!osxPjQ1$Zjp>`s z58iu2k0NkeA@!2LZb5q69I9&_@G8GLyLWS8!^`jL3qMJ@QK)*$m5J5j1 zRA=V&!Nq)UF|lg`zu;uTB%Kq+LYNWmY6Jny88vV-yxF1zL11e8@?I3m&;ZI};oM@& zj5$E(j8W^+E4+w7N(PI9QjkAzI=#XBvvbql5|nk z)~g+xFSnb`q!BTxFBsGWh8PL4oU%m|c!;sVY0u#{WQ(WNs-}FyDM1nY`l)Ty<|TaU zvT&1=5g335zhzN$y4$)4Hu=SJEffW$FqK6Fa;9L4C1DU1%io9*)+|-MNjA zrXK!eI0x}>&|(bL!_m#wAKz?z4Jo>EiqN|5l>1H8{c>oF?c`uCeC@&I@9T@qd1Y3@ zp}|%HRnX=d)aAClcm$_Y#7g>1r#Wra7nnv_=miiaXyfzRS_q3FxlsCsw2BUBczT4M zTGSA^D{*5yp6R%e9=IpN+yIdr-DJ+1{#NuODgT>>zlJPMkjZK#qW5aD*ret#U`BEe(?yG>FDZ zs&_Ddbd+=l1zx&LCnIifY}qw(t`0K8$_-rA>oC6V;f^rsdzp1gq9_)B(1);00r0_| z!aphGTOdP4@7rE8}7+DDdiqdLzlRSUi_jk9`;G#U%)%&q z1Wq*%O{Bhz2jmmhUT$i{=on z&TU42y*?l$hfLy7-gitQ-~(l9;G{NK{$TvCcOv_YiB9|k^x0T$c?tVXlG&AFeDf^% zvN{Q4vcvP?p}!?Q(4LpoA>Vmf`sbJ};Af%;oq&4A+DK z$P|Ezm!^QGen_>isZC26*Fim6BUQQ>ZP7B&1qf+eMkkDW2)uSfGXVLA*Mz|!l{0uF zdWz)UaNHao-M(_^@x413{_F*Mjk#V10f6d?uY?AQmm#Uvgzf>nqk3SV$qKYHxg#h+ zunV-DNLllh3;7dW`4hcLiGOFG@5^t5pT1zvywjtUpt^$Z*RT64phk-V#SN(gh6aM) zuq;|s2`n2<7^veBtW*1B3E>w+n6+#NoNO5h$@ovE8+2aCSaAL%-iw5K%+JwB{{g08 zLjAGa2GA8S~{qLjJBqH zcQF>Yly-`(c*nZ$-z|Uq>%KqRYWSf%r;b-b#L^n;&_^H-M72lIlIV8n z`X-60m+xj1mPIQK3xEPtPM!TQoiC3i2Esh7$qj{r} z9K_u{5Zj%+o10&IZhJA+`zBkMCRc(uBjD#9d!5+MIJ7h1PJ>v}ivdLo#+zsoks9IZ zKoV1zuorwI=3p}+JHiOg)MTy%LyY+cM?O(q=RxGO70_&d zexZ_a=kvc!&|>F?uYd*^os(uVK;?|f;;+APGx)NZ;AfhGoF48`mS(|fe81It-`O+{+*<3wJ&DrN~ zUscMda+T#|?HMiYsA$tiX474_AOC~>`NvbgTKX3)v50jHU}?^BP4%2p*ZkZ~EIeG1 z1uY4>w5b|1*u));kdtX6mTPjbFlid;Q_kXF+9YhxDGQ?Sy|IC<^9O(Tqmu3WNdR88 zx)GqjoVI1+H*+0V^TEsL#VE$qDI$`cxs|F1A0NtGsoRS<_Ywn?lo<8Hj!>uP&FKMc zq*B6zuw5E(3gwb1B()8PBr|KLn@zW8PY8k+9|0WZ=%bWXn%5-dIXVPL#R!a+lNle* zx>D*>Hpk$Yh4F=E9fGS!h!4=skbuV88B*XSITYRN_WA2u7j6=HjFL!Q@6(pzB+ci>-Z4+xt47zi5B(S7X2bi-Fz!p63UTq$`i%uZUV9SBjmW zgmP-NlPEYOX9uNxd&qPq3;PATc*4czjqU~`SSy7PI+1=$uKv8)%=Fv_c>pP*I0o~Y zX>xlz^g85hK{a&BaLr^JE-4lBQ0Xuwh6|z8Eb6nZ`SVlHZeM%ySzzn^N%g!Bg$QC> zrc{*E4=TU0Q(9!U*o@ZZ%t3UKj444dK)M2O!*-JQA6fqqXhl8eRo14NyGgN!nG9-| z3A?^ToEaX-2x=xJHqixnBgAcmwwlSB_$P!~%${cTOq)^5e0BhaGuub$y$F`Y%Fm8o zf9Cvw1e)N0iVO#PB2Qc1a~y`45v-A#lc@Jt+xGPnhzhYle7NwLWp!AL~FLln3m z{IEnM1QQh=)g8h~b~HRvFhJ(ojK4AX;xPBJt%MWH9_JfU&h=UZVuFFgKo;stu$y>U zx$C`FGl6NC%pwIlb6MEMzzcs_qp^l9yf^QsOW{ zA?oNEdRX9DGeU+P5;KIZk_IcHv*9=jxXi_+2mf&PKYq6Mi(kZl^ON=LwNW%IQ06jg zCzT7mJJ(Kby;}pT@E1Qml)eDZf$D0msNIguH4FH=&0$ z8v%0=@+=uMPGhRwnD_6E`?aZgp(G7<@WxqAd$A$8GC~ZPLZTrBl=cNp%Y;}3GAtk% zx*1zh@WY7FKt~VS7SwA{#E%rBte~&ZZFvzR^TA1q8J?~K!^TvCnK+>v&u!n&_THfK zF@3F)AvjP8+b!!plnWeD{3W`r0zth#Sn1J<&Skg_P)Bs;aJzZu@Z?OOL)R0)!)%HzTh7XEyY6hGc$SoHP01;p35NZ~92 zU68gBp->dHH3=8Aco5(L*_c1lT~ZixUWw+q@Sjv!j2%HXc-qJuKuCxb1PZXqqwqpO z;S}X};P-<6gSe#9-N$Ks6z9dX?e6n|PbHQJ(hm5%y^9_h!)L`(%5K$cWt1hUj<7R41icg z!&Ls*=tYeM5IG2YJWmgmq|ia_&A8nvo#)NoW{^X(y8|>yZ9co#3X8s=>k0bR;Cj|~ zOFb2SQ1(rnWMpRA(}zISsOv>ZZMJul_hh<~aEy&Q4@7h}EciS|ph6Ms#XKJ#K8#J~ z&UU#MnEL=!R^zYL$!uLD=MI8gM?~w5)nVP(^ONs>{`&hnmAA=yW45dJ)IJG*la-mR zSbzT3CD{=ay6!lJMZfg^$&U4Ppnj4rb3I3MMfkG;IEY3Je9|0&-#%(MYb4iTU=x2*BAAU z8oj3)h*+<(5h0Xcs9>xKW==ULRM^lMiKt}trkZbYr!XcKrA*JrUQAqe6~_hG;{=p! z4}FiRVk-E?rt77A(`mJ{3=uBlNXF~*_2g#a^8;lIZ7D6PxNY>d;Pi<7BQGX@#Q~X0 z#v-i{08j$b==pK&MlmXekWA%}cj3p<#LXTiAQB?(r?pgT>X_N(J(nMce=JHXAT^uS z^tSG~m_IV9ETjGxotL+5FN~sr8R)P&Q~PM{n_Gh~EB4Z-p>O@P{lEU}n}5CeTH}|m zo=6>P!0KOVtjJdbkvY>x>(o-GRxYs-xL%OsY=(d(QA2>`+V*S~m@wIfD{5&lb7U5PkK{3#3Mw{X77j)C&nrK9tlw^gO1ik50*4rhB&^NewrDNQ8j9F)4R9l2qxRPa`EB4`}uQIQjmC2 zvj&X`8K;u4v)99zCM*#Q0bjO7s%W*U{_$%?S~(tB?c1+*@9ZDle$Bn{oxzO*r$m?J z?bZg$7}~03F+^wdVuk}nISZf@p1i=tgf|g&G?HM)DYaFC!BP%k-9w(QNnT&Ff!(_m9pH^r+6+=NMk4}GVR!))?EoWV+NY?r<1wUi%{a# z=<2ThyKFS!Hv2k+Md|KRhDvt=`=oyiwnAQl?Vu-WvhKsIZOA|W;s4`Y{}C~E#&=h4 zA}%cSgV5|gX>?*K&B0WnQ&3yF&k zHjmJ0h{_Eh=VV?FwCIrBQb>IeT&dz{!Ki-W18^F62q4D2gt$*ieF|3~XfX|wrpXtP zcml>5IAh}g6BmnhGL$iXkt&5NAn20*2wD!xJ8(AUF3y_B?gCP_ZN-|i}Q7&;RUP=_^J_XxzmNafEG{VeJ;jebUrN{q}z8Eep&xV7galRe_XJ@U>OKC8QPlu2__J$@}^PNt>&IHObx0NG|4LrjuH~ zKnuAW+|P-jPA=!xs>~7WfI$9-80NCCwYka1A71{K&p!U;Pp)l!Z!CK$X)Mq!28|h) z7CECV)R3c*zH}ykzAbh3=FmlXGd=5 zOInQC_f}GJHg|Spn5_w5I8G??YhR>N( z9`v@`7m#n|5ve>M82B%cs@5Pp@EwSnN(TR}Z5)TN8q^;GaV2zG@`oMYZ4H^IRN9G`5Hf+#v~}*D(YVB-vc6T7Lm1o%orb6 z&L=jmUw?idO`^;ijHa&LBGI-8=cBG{B4f4_YBf>@&irM9CD;TLRY#x8O)h^nq13xb3g(oP5U zMdGOV1&+bE0nRNjZ&%zgn7$iJi0=MOx8vC1qAxfsE7_~3fl&S?Yhnjr#T zfX$Jt`~oqa$3;&%SWsb48R5B<^ZpahXS!!e9w~uP?l#kk^JgWRaoAZZu^0A(l>NW8 zf90qB|3z_^KnBL{Qf49zk=--b@rWZ^9Lo!}tc%u0QsFvi#(kP~8C(%Tt{^8sB{n~p zEy5q9L$Wem^&s|a79Ov5ntq%#G*PU;+2;B~qhy8~C6SH7Of+;OT%-BP^SGv@OU|f` zm4F6nO}$!5D9nV}(~d$M^Fw2%OAW8W_tRQx^-7P@Pyr4s3xxggXJdGT(Y3)o|+<$9~Ei$wUus9y_cyRhyH2z)icI z_u`|q-MS%^(N6nZS*jp0V+LMI|(Vd=CJ zs7mt%q-^Co$OzJg#ppQO1i`-eJX?p1X{*sT#_$fScKpV{DmQyxVy76B9mZsfnM6Do zQUd33STz$d2tQy5qI2ZDWdaN1uD8!<0(^7ovrtXA9IY_eMTpb}3uXLC@H4ukO#EOr za2QuxCVfT&1$LY6sggby&n`#6sE;Dar_0FMugf>&O~u;8OMznz4PF0SuI~z-AvmHS zqkt*{|0g~87Aj+`5?Dw`U)4l8%t=l*kX~`ZZ-FF+`ITT(xESdTW7z%iMs{!2D$`{U z8s)A8sE>QJvti-lIZHQaR6B)sNq&4uhiZ@w7YLl=S?t$fI+W0Cvtu@}ZZHG?k#nJVMD%?wL# zX<| zF782NvMsk#QK)J#Rp9QR_~|5~4r@y2AI6L&eeNVRvoc$Wu}}VD-;=+q)#e*z{dk75 zuA9FY{v~v;jmwAhv3hPpMCdRvHs7!N@<+XoKCAovkC*=ScO#E})RbFTRW5XG-aEB* zvs7JUvVe&SA)a=SLu1ZmB!%Ou2Ns0$;P*ii!=)d^s}j8kAJ1rTWR4|4v}m*q52;?5 zDv)qGMY+gQMDIh%sA8Noc6Me32smt$~WFQE)X(oJ(6+s)pD z9$cg>;pGV*HNcG6DPDF>19|UNb+S_PmLa;-Ydf%X6K@|k3FdBWCvo^ute4cX;hjSj z^c2~$6%pvgTF_WAXr|s!Ps2>+QnPBoHDhA(*DL?DbMCrwJ__h92X(-cZa$c6JHA_W z@XM}mZdC2t>#{%>R}*D=ax~vrtXE?ZJT57j?!}Dn&d-y-Bxp>iYf_K#E`kht;Ed&t zH$Q)+=IIN8?bpGO{dAY`IZ@f{g&|)TkJ-#L70A>14gJ$T^=LljRst=iS3qN z+UWRLnOYNM8#h!?P@tQjg@M_9zpKAX~+JASe=8b&!3F*YU7^B;; zT9p<6=Ma3TVwg$^aY*iB>>v3iUPc4X0^T@e+9#PK$asRX-|G`=ai$ok6sZ%q&Lrj8 zB88mrV<}W9Z@_->oFAj8kl{OdPvqtK90YdAQOT#wTvF)DT294xU=K5&n zMgrl#ZmG)o5AVf-dEaHdzZ{MVj!(D{a5mD~Kf8VX>Givc=YoLk^HatQ954ubXfe7O z+A4JwMlCR@)d<(-qs7msUm|XP`&x;ffbwe($RJhR zeGxd*9YowltXUMkUW+zAonN0;7aDSNr+~f*1QD7Fv=BEK9nSw4TVdXg9N5PuQmdx( z$LacEP><#YuB9SqVeI+jx;Z%jQVrT{G~lGlFN@jaAk7nAoL=RFlc1K3qz)!A@eoo? za0pkc{AFMMDj^sC{MG){y@+}qr?0;J)nNXLP@_dcjt?z+vk|ja2Xh%CKCRD8=)F`U zquO+GXXt&%-rQV!-gW{X$wSEpk7c~?XwEXE(CDnSAkbECI{Nlz%PTuaPwK4=5>CX` zL&irlWGxU~8db1drj`Xc15_WFV@!xBQ<1BPE{3&K=+;r8Qp4j}icgd{r}6iN`X9a= zbw0WPI{Jsgn3D3oQm>Mjk%JHmor4ZT_A% zgz^c$cVw#La{E}OA>CnK1SXb0SD(5o4&HhR0i<$kwU4(@1 zCEkL~&c-LjI81sJlN!ywnswd~mUu^7rv6yQ{*D>OwvkL*`fkcIb{1C&zepluYzKM< z!Xv=D%;7syf^ zzYe&3#=xu^S_dD)%zQ6MTa5t%PZ)%480b*ZUXWJ)8IT|QArJt z-il+5UJ1fKKcdhLN!v>t1{oiJ@LOhl5TVvJ`sefgSDsmZp!F=vf^ot8Y!MNkvqp2B z;U-mF#VN;|yPnq{xc~C!Lw}qdKCEEIRfl&<4+1^)G)BQ8(kHdbcBy#)o#f+)k)EhCippPH|gI~e) z_^sX9+opZmh&F65zhgpaV|E|06Dx*^I^K!qxC`GonJ+}iB&8NgLMjj?yKs&E@Hq}K zFf}^Ho*lY{ejJ1iV>Iw^-BC@cjPosY6yYnj_@Ek!>ovZ+_$qXCfFPl!6eE;&JJMzx zpNL#%H1qu4i7!7nqtA!A`v?a?n1+cBdD*i2;@Du4Tn0!8e_&Mat&!`a9}~O|(aSU2 z8p0ov%aJ)?2*IpTZ%6$~5+BZrsdpW@^NozFn2M6|gfYH!(72#S2ehTG>@9cZj>niz zJRJIoxT}HuqtK-O=WOxx!}o*yz*1xT`+T zeDE5!|5zU|(D}^^w|@TTmr?(v?|O3=p?vq^zXAO$zgj~o(--gG-S{*>#_rDdoFtxP zZae?ur$?S#KcJoM;?_3Cn$58Y2WjR;3q>ZjPVnthG3bs&jbz*i&19}7zr6n4&8ye4H(hi<%KB*L zHq8#^SG9({jtc^J+4S+MbkU;TG?nQ*q_tGki8gT=I0jPJ^G5Z5$(kg)dP#X~? z5Fs@TB_JbmNnBlKU_B}s(4&-v{2D}|Blp@sBGq*ls=&t5zCB9^cOTax7@by2KkE|@ zLn~Gr(bSs($wP-|*E*6uJPXpuJ0f(6En^PxZCxTRvyX4YKl#nYAL{|)!@9N8m}~j7 zC#!bP9DQm4&^qLgCcz_Rqh<4??M+B-(Ou{5jC2#%u!w;|^!)Q@HQy7n3 zKA3XP_Ln?`2&#;^}jxxutTNi~s2QRW@*wKv;42JYZ0hs#ZE@1b}$!i_?? z1Z2igo##9ahJZYZ3mS$qLkG$*WWt=oD6lviIT&$ML_@)=f*@xRLI_AK*QJv*sBtBD z2{2^m^ij#;;r7IZ29hCTM5Y)~TmddO^5*sIk#MKM-MF;|Q1)vAJ0NBbZ zmgx|KN8Re#sr0#XsXNdxI{3M`TPQ1y+9D=JVdMi?shGp##D!#U^vQG}w4OaY%z9vQ zwAJ?!3>Gm~4d6rZ zkcfcQU0uTG$A}M3vX~czwD$R2`LcSZ!?4zaj*8zYoF$e7vv?pl#(cvL`h95!&=LE? z;)YEl!2jZn!0$!%KZJq?@hL+Y8V8&ea?7qaGXs;-y#IK52Fw z4l(kgf`!P0s05A;>^L~>>|A1z86EQSu-5Fxdy3EvRL@v-c~CmYU=&}DCbw3JO&qx% zs0KLs;}ZGZ12Ti$BPJovu+i`$gTD>CvQ4C;k}e@0R=j@RHP{H^&5$`}6J3Bj9A*KG zB)B*6C4iO6+GZ92s3LYlG9JP^h+Y6YP;hS=7SRMjeJK>BPO7*eu>u$z(_Ks1fg79g zk4)b*Wwr!c*jnj-VLlTWME#$)732T8<9O}2j<5X6@~1mJuj2^B-^==M>%!ksZ91#> zRU%N`w1Zi|5MqL!Vm*hcans|~J^i2xFB> zwG%u6MT1MRUXYjVfbW;U7$Gx#jbeDK^srjpz;fcqh474+j_Uv%42~s85zI8bBMF0O zqwy7{8~V_K<~vRLkMI*>>@u2e_Wr1V7@UESy6vO@j0!P~R!%60yjng=k~;>Co>}^3 z5(o09lACWXKPmkH;`A5SUjj!>Us*suyIXqV%Qp{!mWx+XV;?cZnS=PJwW{kwnR91M z3$zw=9Ly^*$hDz)L@<~?1_h#9xd8o%vX+`0F;v3jREK&eBsUkHY-|k*r)<}CY{t!a zH^?Vdy$I91(XFZ1aFm6_qKzyPk4s}{kYnqdl|6+M?*PUcK6%1iG*M`%J<@s);B+0= z&f*AEh=v&nf_?3FzPr`)p}r6&+CJU!j_NHDVn!l};+vZkss_?O5Mux(4rd5OtVz7t zWtDPpp{ap-gnJ=)dv!3?a(m~*mEHYeM3hgXFJ$@;3eds)sJB^$=4?`DKlBW91V$N2 zPn`fGh@E9{36CNiH3sIi=7p^LhH@eP4!a@7 zm+~COXc7sBijak>o_FLgd$vYDz=H@5_MWF*4j;a=KO~ut0~IundxHcA_t1JU7S#Ky zn3z16`+E9f`EMeB_AvO>$7|nycJ}38jr=J}Nr_a$m9gEX_MC$HWws5&0M{yTZo~)Hna_aB*f>DBU zw##nk8ZSyH%y2JlZ01(a?wv-?I=z}D-A!G}a7r*kf+k%SjNK?Ra=s#oJslWUPcuEC z?;xQMrh2F0#s;M4N#a{vG`W$hyVuKq|D&><_dVLG#SAq*{r2oH|N8R7uZ{2QgTu^0 zVOOdb3XQFG*YRB_5SiPSFMfC?ccBgmNq({XH`o6rbGbfqvxkxW<|p3NwX@`ieer2= z`gXgzkThdsaxw#7*eTmk@sAkuL43%Sxy7Ap=Th(5>0XUwIQ4E|>tiqZT-tIldu>cz zfm%a;WdeXsU7q~%=KY5sf|-ZtcGZcqyWbtyd4FK{UAsD6V?-LDP!d+2K3YrVsdb#q z)vc#H-+pv>-=jC)5@);;S%=6vAe3r@WoT05atsa_W0TB-a>*0O4YILo(wB9ktRaA4 z84yEAiL{@5@vti&x~fDjKD)So_xc%g5(#!WVkK%G@MlqlaQlP^1D%jzcR!RBBIhEx z-YZhscG)#2x*iTX7c)M9ozKVqiSjak%q}(s)rqGsHg9~p>)C;0&)+KEX*#e~{uV7H zb9Q5RmRx4NvC)|G8S|KI$CSl|pMUg&r|a*VogHEt&^{vKrjDNNLuJ4J&cRF(hGRYI z$q3vGEJKyzz{Z>BQU_;KN0)@NVecTAfWaTIM(&7xXa5*56bXQs!)UHGp#J9#b@ghuJi#Tt<1A&yw`4a=_g7d>Bjp9WkBOz}ncYfBKLic{l*f_9TnR~-u_-2{QQWR zu`pubBxf+np$fNQxPak<-UG|`VfEQBJYEVFNJqR#XJJf$Se{`7wK2p_Y6eCdL@D*7 z1!h=g6Tda5O)3gl1kidNkcA@1520q6%~s@lP*UZ#;+!1fj%WqIGzX{AdF|er-S}ua zzdWl~cj|QvWcvhXu=GLdCfXj2kG>cp!ei^w^^H$@j9KEjoAJ*~*Ixf^!@q33v4A7D zh_ay&4EDqG*}Pw-o(D0(aMT?6sY-H}c6->Rb)VWl@6oo1k8R911*QNf^#K zaB`z(1`h!O-3m1xMhCn*cY6I?_UaUN^!fTSkso3-w^W0Vfowp@ilRVbB*aLOi7K>Y zvT`O(m!QPt>|_=%JWhU=i(IAtH%HsE$LmuSMYv`Gp0K2)kfvpzc!t9a|4LGyz_$_q zQWPO$9L7;lE03yYCIBI|)BS`CBQMRLoYczj!5XQD|0)TzB{PRO=V{; zLnGwy5!)r2zIlh9NQy}m4sxyr-CdzNPjlMi{Hc2@X$QCjO-IW^=U2b5{gv6>EPP|w z1`Tp?eZ2Olw~#IMuTzf%-|~#rp`1ms_vk0Rk^5=$7FTn+01- zga*PuV{i~+aH;j2*ggFBUXoaWlr+AVra;fKCC= z$#Hqh6esK^aAs=)Do);eS@V+P(4yAVh_@l0Z0_MdZ5rhn|`?$w(FLX$82>6e$AX7is7r|j%M>w&? z)ZMu#lp8<&5hv>KPSMHCkv6T|LDZL!@!EkSP_hfV62w@lEWk#0pM1&|Asj+n7cZbb z%mjE)7T!v4o#R-HzH_#LM{J$Y%rsOj=)z zNJJ*Wav;#@KwI(>y;qP|!w@6)kS@EIKzT4I22ZRXo&y$wSQaBN=Zjf6GzEW{u|odG zU5C>W*dP0XkQjn-q>zY>lEOt7kbs*i1*&&!+xo$C`}gJhNHzx^4t=b1rKbe9M$K_1 z=PKd~*s{IyTiaLux#Pd5tBWv2GzM!4y27&&nz7kTWK{xd2ol_QnDi!+mX0}FJ1Oey zS!}`FMz~=wTv)CMF`#XakQ7XG-GmXD)8o}zOAT*X%sCrb&o-k@bkM@E?F7RaGDfCy zi!0jr98X}^wI3&Zf^LcQqO%6-F{2$2T*YY_U;%q@+l<;&j!}#`41y{bZ#{@U7+H#yM6X|;Ov0SxY(dVz06o`rl^`3fc6z7$=Jt{G$FE*d zS30)eZGy|1udMjut$q39G|OR(-x(OOeYl!YpQXyLrt6LU*^foib)a5YpzSQ^5cLGd zepCI=S?`U_#LKC=!-7RbFq%Mi%BqImOxgkhSozTc!18Td`h^>VqQ}CA3r2yVQy=^y zJ+P$O)|8Uy?(4w^e`(!*y(2$*!kF$hM%&bpQ!=!2I_L{vP>9E`w|5UG4M{u!DTQCe z)k&b?xE`NRd+yst2jmxu$U(r;gf>-|i5_|ueKFsA{LASV9-V#R zN&H*CZvV4~yK=F2dUGT6ck09nNpqQno&AAYJ)@M4px?xsBHMZ`->}LD1PN2= zURRRk`1z<~6?{yH3shGrBn>e^wNvU3un0Li=;wQ9U1G3J-}ib*J^=4=cAnV1;}45_lfQlnX8i zyqiaw8Y5auSzO$iy{E2Q(^qS@uU*`^Gq?SL|H+T+pZ{y$qkkCB+$7Y@`{cvbt?$ld zuS~FU(nsgDG9U9|Vmj%*q2Ym4<2ozYb+k6;IgDgahOjm%;CGu3eBSz(>E=TaZ^U18 zAcFBVj1(jZ48Ac%QRbJ_&a| zya%Y2>3>^oD_0wr*f_>e9clHtbpg62I~0Wl+$T&O_2ks{;0I^~q~P>*VoxD~NB#;7 z&nbjNY=xPF3nsuc3{SQDl-5!4&zAr9q4lp35J4r9u?Qls9=usVkc1z|9nBSN4shu+ zOreov4np(*;_eP@CaH~_g-0r|b^!DnhAN|Q>LtJFLn;DT$KVVM6I>d-*a%b^xxu-@ zxLduvU`#ClOmK35S4{AFjaWBebTft46^;kD0F@Z7p}5v~WZo@OU(jG*p{@x1;r~jZ zj+~Hhf||nycq=uV{MpSAmU|fuxQp|gD_%0M;lKc_(Jb^)b`J6o1lt)TE(Ac5p#b$5 z$Qx!UWN-Bfk^{|vRfj17qeBd5;6Kwf(91w}^13B=wHIVnd^W`K18@($F!c-x;GQKa zaON*qS{WnFd!2m(4B`|7$(d-dsqx+Q%i7eO+2qO=*JX-p^xA~DSK*c9?pIevQuhOt zxanIH>09H*7~DdKk~o=9p2Yn)cWVBNqEEI;ZshG(Tbk`Nq}5V$l}p64SXDt6e<0NuZ!BS0@)C&;rBmMfmvqlv@i9}_ zd7W^aOz9bVZD0!NgZjsImyhJ;O2rXk0?{;89K8~@DxTccNb268dTuy-Etb84vgurI z^a>7pYTJr3U$x=*wpNRT1X2xHmJ80g43WLyuGB>o(!z$~51>8Bc7#+$Y2?8FCn8e- z%4x53RZvW|##!mVyijyl8}w6My!iZOHxlFY;5`%*`hpYxz}@J(>RQN1T6lRBHm0YM zd9LOuSA50!{v!U&j1?DLFro+czx=%K&rJ&>ryenOpiaYal*I$RhvJ#R5MvB$Wqr)y8=+-NKbEwK84jHteZmX3h2$as+V^yH8vA5 z@hIpaY?rTx(S+s8kQBpw4aus{6I^>$0H zNI+@KL$LFr%TppH+ISUi(jp1~;SW+Z(Zv@a{Sa;paBtwx^W8+%BGo?RH0E~zMAX=f zx@ZAHl-w*=)&sz}xY-C}pNSZAF7_aslvfDz4LF)h*^w~&Cg@7kdiYmuT3a%M6Olf*4)Oqy!$BrU(2%DkN2S{PcAbe>*%y!c|DFB6)nGX9M;p>}_XC%hh!*k=+$f=#G8nBWUQ^QnE(7A=YLh4CyX{suek+hMM3;TkhD(iv%lx7DKxXi!Uo-v^>VV`i4essPV=qd-JM#yXpUMkMGc#WPH@TM1}Q;-7}T=|!*-Hhr32zva~D|F zosF{Bm`TB;?SV_*YfMb&XM_42QGkV@#xX{>Sje)Fn6r~9(1QhswlvJV00fxX2N07! zh8J`~A_HOxqi;5UdST2seXo-e;9x@@x49WB}!K3^{|0>%#73f7BENe1^?eMX%`gF!-*pF7Up z={KUYyOHl2ja^1hoiv-FVSS!ufdBu6FHd}s>pi;T-v<+kNrW+6$7s()pwUb9TX2)> z2CyY}32q+bI!OD-Nnri?jXGJ4oD4?SG-NitW>BlI&mHT?l`rwFa>K{a$g9(p;!7W_ zmUa?H4hCUXtI^xQIv3dsIc0$G;4p;2vxJtJ`nPqz>1L-THu2 zptDd5lL%A*j4)`-89*4b5q*x(&mQcOGV@mi#RcRX=rF_0*h6vn;I^s+O6drg8VG)f zmEUL#7r0!Y=y(3FY<9hrEh~Q<`NnStzw+zkS2oVQv2o+*){PUAznQS&7?-|VL6_wg)Tcl39T=Bv$L17eK$7W zT*;rBR$5k>;6K}U?%CVd6z3(gs~ggb;<{vxhqdW?M7Y^&?by9$*Q<;qLf{_eV)^O{ zt**(a?R)t4{=B1zgE!NC>tXyKsde{4ojL-*sR2O0&3DgaZ!)}gXm;>ANXwns@L_cB z=wZokk_Nnw!PDr2iJu}E0iQ&6YRrSixU_P+MBBT1^`-Fhn@64#LojD2jZ{BN5&=pa zPG+*$LQg-befDYl_We42Zp;i%tLyYcPGcs#dFMPO%Fg(^>bf_7xl2Ix@?quFSpL)u z!yOZ^x$$Nav6(#~?#4C^VG*k8RQKK8;CGe41+{INt4*<%fWzqhmC8s-Zr}(Vfstfz z3>6`!#7aM3`FeV_*qrP!Cj+o1%wUT#=f$>Nk5#AdknS`iNlzgU0Z+31hfs(Fi1}03 z?D|ZLI=af;hySp?i1%G0*Lsl{9n+oEW}E;0&etCNeJPxrLXCk>>12NRvJtMMh6H=m zYiLx_;4lIvc^1t(lum#?NoLO^uWU|#&up}9?yKGSTl?A`Bczp${*A^7-vgq&8>+_O?PN!b2*NXMjK;wKaY#s{tB+-?OP?G#{P@&&e(C=c!&z^( zQ~Y-d%7J3E&4JO7JRBG!oUw5D3G&9zbC|3vyussSE@!WkAx`Z?rUru{e8mYwaG)*X z?v^oGJB1BndPd88e`b%L4CVOvP! zq9~;Y8G=4dRRDzmuU*FCzz)>0d?-vMIE$E`JEbpx&kU4j;mhD-7wU7^I5-C)w)Kn@ zsLqA5O%!C*w7fx7)jfM?>x8-qRSX!v(4JtE6^9EEhB+oMHK-%;zLZQo0;C8GTZYku zjS(U9ZkgcI9AO-U%{!O1kRl4VKO85|xSniLmXOZTJ=usgRL+m))|Swe?H*{CIdU_q zXD8;O|2YI69!_04_xRHlY0oFCh3iiG6>d3QXztu(e`M#1G51Kf-`YNX>&sWxH(s7H z+k5nuI_*p-f83X;JRyUdb{lpOJPit`jeDi3%V#!k7XSVS$5S_|mGz#zF}AaZ3ltL= zWGU$jYs}r`sfr;vmseC>8``{d6Uy9n;~OF!mB?U5nQo&sLG=PMkh$&1U$Lj|b!Tq` zFu%=S2auoE&${J4f>TP?eEY1@woX^_?2SvQH#`qpzHU0G1|d!(-xDAjZwJ9(Au~gO z7eifuS&%xC2;!7m(w7m7jMmsS3K3M?zwzI8kRCn+iC2b?q)40fKvm9jl=>fezV53sT-BI>{i6GSes1|+OqOM< zlAXcu9jZ?s4lP`rOune_c{>pGLGP*F>1z383syGN8~j1+efUol0sJS}EWgXjkrsef z0`d?1e*k=D*_81-VeF^4-=(mJf<-9LC{VmCRQdWrh&}Y1l3DD;%ar^SzAa;sf`b_( zH!4QJbD=lT9Yl5OSy&l)+i_eDXjHYyTJUPkdRFzE$KXPpu2#>s=PorVD@}VtR3rF+ zL3g1Ip)sKpmws6aVE8JGw4k){m%Iz_py=qS(q$aLey2!a$i?0PXT}(Fn9-OBTfn#J zpc!&m$U~=Ng7hMMOI+4-rE$L`f~jF14-?W7vYx7JV6DK0An=Ti}ZKj>y!$o7#hwMmxi)MRm8l|8qz?TfOGHC%svSINsQrBm(Pi)^C9F>ALM1XjB&mSj&6t#j@ zGY#t)9Uq6bauT!|Np&X=T&wO7FpXOhcLiI(aLlp%$d~{aH^Y;LYhkDRy?p1Tt%^4v zzHvZ1jnfOQ6L1Z7n%GHAfq6niq+i~1^rEl;8!4#msOtOV)92D0A>C#Lu9Sp}h1{a> zt&v0$anNpPq@N{`wkGkk`V*uaN@Mv( zPHY=VC){V6wQD2hK1;6DblqIrQyJ7U%COQ;mN zG9=jD)~R-{%BU;AWQX89haLqIzq=RdX2!~1Qx+Dusez-PNB)-X*aUZi8tN4$s_Gzn z)FXZ)Q^VrNMgQw@Vx%B^KLQ9MiS)%aZGIeNSi&*w3EjH{CqcwYz47hF_mCcMt-WoI z$4Mc~O%&%AP8-tz`v6dEXStVU!Q%w(z_7Ql@(0++R#M5B@0d;CW?16}X;OejkrJ4F ziQJhb$_9#Fqo)C%AKiggNJ0`>kSG>0QNdwY@?ZQ>(>lh+6eP2EM(>`@Ij%n)_~BlA zFxytNbD%zdvPDUjlOQ$@APkmA z9=NZ7sHi?cZe?Ul2@wf$6c`Iq4~P+&!>td`v-QM8df0-glpb0T+e4(Fz?j}nQ9BNM zkwPfJ5)t4qG>P^>zh_dWhEKu#e^~!F|Ka`P?b5@0t*+nA|J4^4UwrW4J5N5X`Iny` zfBex2ebJY>)tkKmI5r4*>0bN3lNUYR<-vG9=n{zfRevp6ga;YoA`dzcKc)OwZ|g;d=R-xKbIT z81@>_T@i{7cJcDk?eFlcWSrd>Mes#AogKZpG5ATg<*HUOLL8M=naEX^F`dsG>dPM= z+B|d-Y%n)=Opn!~d?ERZ=S;LN%De33Wo^YyT-w%$ea}CrQCFjxD>JG4jt4)U*Oo>p z@8Mx$i3a%-pp`R(b`J%2?pPFp3bb|!6R)ByK|F=U?zkFXN%h}XdM;#7%xBuJ<3Xx~ zPoPvH+X9>S-GxIeLXr9o_hGI@=+%R%zfO(5B`lPfI0B)lHD);q28j+#-Dg69Mu~_$ zi`bunA&*R>6*VSD04}iT7q_TZ_<>_0?(@jb%?)1LO1^K*_U_)S{MpZr{oD7yL%@XL z5X(5c!k9&BvkiOJc4Bw1B2?>U<^1=KYPCc^#OXVfwTbl14d{-!(nhVZRHP4IP1=3JvTvwvJ$8KxnLKBFHiWy1X}qv0e9mk`(sbn5Qw6AKZ<=!9|H3%*C$YFkFa?^m1oO zMZ}Do;qNG;0<~U?mrk0F@$sr|}0}PG8XoRTT!qkC&Fc4A2#;vli zK~1R^z&wGThJb@;{2}~fpy8zcq0riMbVwKAK;q|=Vn85$3QOoHs3DNJf)EC!P-h%K ztwnGck^x}kXb4*^EcC^rI1Yg65t=SHDF7e@PArb)`#}GI+cu19DfO-!R-rio(FJ>0 zJcy`^z=ZL@34vgkEq+Owph|?j%r6Q>x}<=Ve6TbDz97jP;CuzO1Woe|* z%t+!4hnWCL07T9?b#8RdjnHW1oCpxid2-UoV`=52wbyoetu&cK60zfr(EFU$t71)2 zBM#W%-upY}89Daq-!YHVWsx109f>HNFjRs7q3wC%i8uWpTG-tefK z!_VH~wDL)C9Eo%E7rR4hZ0pN6ALj3j6jS0L7VjIe?JQRG5%_tGOo;_MK&U&U0G3s! z7_7(xcMt2aWymAEFh+|{vu)^gjIVLsy{cUFH&p6HkE!Lw5w-MX6>e%5Su0;;(I@hFd zm?P{hv|xal`xqhkuUJc&)=H>5bB+W>j^Ioe*31jq01LpRC#G6{m9lqAmlne?!yzA$ z1KmX&VTNo*?s0vU6bND=)5WPvT%yMCEGY`4qtF<_38F1`A^kGqO`yaQ9T4dUz7tJ5 z?&%?Vs6kMvwBx;i)3O@i$%R!Z1vzpVv)v)zm{9Ss9fy_Ut+e& zZeG%d>j61&qs!grrhSt8i!D1zz81AUd}x5}>?sn_-!v*o%fxz6%hiHJ%}c;0x)CTX zyfZR|29PE6$+hRVAn*ep;C$2<2lQ13X#-p*Vpwpe^`SLwW_jnvBW3KGT4^gZRy}Kb zzHlyy0UU#*dda6oD`?bJwyoJm?%d5LdVUQDO$Xcv?8USu&4SPt6J^|4(geigCWJh^^ez-6z}cewO$psJIkE1V*W$hgHGaiLQwm zL+!4Gh%sh*)#+L?|JAj&Cz~(rze{AaWB0?r-lGj;e72Mo$;Iq5y`3ya#G3IN7y+?4 zPYkIGEeES7^<}F$HNf(oox8vDLHd)wTmRzyTbb)ujqx^4F|8(v+8hW%Uk+;P18}Ja zr#CW}Drou^$M+=W+^DhOE8KDA9)XL>fOHg1s~dfXZ-vx_l_&3CQ8)V0Y$)AZJjq3e z>24D`riVr$at=vlad2^J);0N;{qsP?X0)Sld4=4M{i^#))pY*+)K}&298}%aMys`{ zhTPQ}SP$x^p~Yz4pjrs)&v@@C2g`6S0FhCJD?;M{}WvJ3krw;%95DjYR2^$S29hWSL@vBH6gb zlC3|-{)ntjcdn>?>+t4k|HfYJ>v}u)CT4cnH_jkVw-BweWQj#P+kp zy1V*pXK|I#$W(sxUSaq)=``TskYCi^5#5$^oD>(lh~khGy0Jv5Bb6Vo{r6vm|L9rQ z_l>?*m=2oDjL{aOy;rWKG!O)*Ee1CVB4zkD2c|$I!2K9Mc#*kNW5tSgu5%IFVD;iI z9+YL12bXw`kPJ<6Ui%>_SU<(vg*P1aPKX)aD@`}>1=2;ucmSpc=93mt0SBuW7=+LX zWFhDiSSz^fB^g5s!bsO4x7<$iGIleDMp4_c7c*`NU;>;-rZ^XIo=_e~o_>jtO>(YDE0aXx z^9V)Cizl&-5MFo%LuHjP^;o7ePvM*J_Hle7T37r*D>j z{Nbyg{IBt+AK4Dy9M!H2@6Q}F7CfMc`qD7*o1b0%o5#x^8KZ5a#qQrK%U-Xg;aV7< zBvNh0u+kUAOhONu%z=%RdI$%Qkq`a9^gy8|oi|Ku;xOv-G) zVI-{qk u9jN+y?;pUUc=5HBGs;8ZVIF(cuB}S)P42j|Eoil1@}44Qw4yA?S({8 zEm89u@7F$ef72LhglQFN3cL?CUOc(r;fz?=x&h~j_XGx~#f%x40UlUY4CV;4Vda?o z868W?5RAhP4p|1vQh5aK0BVbI_R+^d;uD(=xH=|xMmR()tOi`_>;fV?7eT&Uy|M~% zgEM2ZfTM=Oy@Do$S(inF-Jzu5Ed}E4& zDo*mY(`Jaka}4i1pW8$Wj7Wo z4~|4X2$iFV5Y(kMsm`SH1sNNr<1xUiE%B10PE5H<)fl)$OR_HesMa=zckf{J0eGNN z)wOf>G`_-Y{|UYw08D8Zw;||4acal*&L_Y}fj`TLHp)zb^$94fcZ7sMuv5e*BoW~& zM+Gq`lmqH?>QOG#WL_2&IE?t7o;3;s!8NKA9JIS0ue8>Y9JXRDz zBnmQSg#Bi6(&+ACfH5bN06_%N8~%A&xQ2Voi4-qY>dSHR^3%w(O+rrj@{@NyTlvM# zn_IM#7n`dN&sUHGz`AX;cu{>6%2I`MQ4xQRZ~?pY#h!!Lx!9-xC|&1}ERLvBJC7!c zX0fAj=*5wvUQXK(3Bx6u8*TE4?ns=VgpLOe=r=bGQA^lTaMnZ!twNT(Yx@8~1Op4) z1U;vsCBuFaY=`!xHd-wIl+bZ8#DiZZzLgm`zQ27|pKPWy^V6mO@#)AnijCE@Q!#5H zIN5uDkixjkYdzW5Y+wC+VCTaG3J_zu|2L1mYs_01=@I1~HovOYw<*=sxX_h3OvCa) z?_1a;&1jc+&nM<(t_Y9s^}T0yBGQZJD%aT`e>3$jx%hnqFbGj3tDK6)WQQ@;Va!WmJ8ipfRPVi3L&NpcI}Z%_LmGlbj{08fUuBL}&c)A_T6;#yE-0d?jZwle3|l%}=p+`;UJBf~_!fu~1u`d)1{> zb{#gIlthK@o@~<@y{TUet**4zziL`0%@i}?@WIJdQa!Pn${C8>1tJXQcVG&&Eyoko zGZ1|~a9{1)C|sBnv^)_gI&T*JHzn^S)K4;iR8jky3b8YV&^a-TyD{CsN_z?y+A>|Q z{!{2bJqdnWsG`6Can{Hoj1VpW>AI4fH-z5~w0T5FhD`f3ZP#+`Stwo)@I2S5fjfZO z;KWO*lFWo~+*EV&JOnvJ1vFw4DJF>x5&W=zdaLE!XP&{B0S!2UaGGzHWO zN%sJXB zw$^M7@}K9X&%jC}!{+vvqp)SNSh?`z+y1A|_3S=xKlq{h@Yoprq%=#4Z^D`=)U2u1 zm?Gy6Uu!ca+FAS$-|XM}z+1T41JB6!^3~6+zx%t2>}%e=x92mjC)D}nL+9JvR(g^) znQlU>gy^*5NhB6h6zN2V36$+136_cw9>Pp^@=6Ce2)Ag`6#&cERn-gD{MV% zkp&w~nk7p$k@#pD)1Vw95)cgx&dfs|Bdm}#-+}Kj?XZr~Ak2O0mRjL{BIuF1jvBE! zz86VK9Eup;MT&UnL8deTqh+S*CZ~@;Qr4xTK9}B_F4}K0t&vS<*oYKs1)?mv%2aQq z78DnNq=4F+xQl-i{Mzq4|BZAM@gT5$aLI8Y0sDjYBjBg%3wR%$2@p54Iz3IG-ymt? z3PH?M%CM3tk^i?O+~wah*)pxcTLCrWzAtr12?$I^C=)NyQb6l|9IQ;sxpq1wlQ z=_F#8Zn9ywyjjqdBr5=SWr?ukfrc)KzesQf?gH|E$RLILE6sbXJTl4irNFH5+W42; z`}mAN%+lch%If0&8;caU@FGR5*yI&m8G|44Enu;B2J!$|#3fLIuZ%mFlmN8iFfx7- zCQ*S(+A8=1`yHAhm=_iw?7$YjWwe5H+_U=e=ol_eUoBqilJxro?S};3maYmUVPJ`L z-~u)9VFK^-qj(IG`b!}K`~nO}FMa4z<05LGenuur^uS$%%&zh;39jT($@J3e6TzFE ztq?AT>yXPp=2h8u&_scP&cw9PCTW2}tnkFZ>N`f_3Q`B+k}Oa^vQ@>Ym0TWf!qgNhJ8`UM-grTH(7ZZk~xr0C_@*yL-qaz5w9Y?Vj%)Er_iUz4+}|4 zCa0DBOJe1yu^1iA&)ibo+hFMj^(UU5K3TZf2B1VNhS|o&#%<^joj<8KV*sk$xkTb8 zHG2)i($N?R_IP2qXc4DDz>OJA5iDj}8?Zx^xHi3U7*h{sJ;T*NmzmnLL2$QvHJZOS zn4i1xB=t9hRspRSt~Bgzo8B%k)g0`H@z=u*`c#Xg(+p3ViB58l zkH$#UnU=(caXYePpbR-K$;cHqeTq-a=$X(PiM6zwF|0`#qDid6y5fd2&0MQs)e>pV zxJM$e65XOk11pHqeU>uj$9CUX|Kg`tmGP}i*@h8o*-iZ*?>$ZLF!K^Im;zrUyoCQi z<7$l)#WG*Ma=p-W$sFtg;t;tGhTJP*bJD}pUZ2Gg;K0+3v|eArq4S4SWSb;rLwkj3 z|0MK-We`RKv|Rj&oT}ug6cV@e)FS1o@@AO9>@`}3GACw#{jJ*{ ze`B%GxT)9MaG>vgXy5z5s$LCoA5p|9()Zwmvae=E&dfKD=A2Mk=-B8W=2I;Qa?zp1yeSurg)|4@J59|$9_bc2`ost z$urt)voRmsf2Z@=U)wT|CNrtmk+G3X0zZX`6#;{mYA{lruobv7=oAo1C+u)Ag498| z!FWk;qmz7Nd`xUE##oD}q|$U%OCSsnVSTQ?G(6pD38EqEA4ph>B8`x&xijZ zdwa=@P8<;m;jurN{_dy2uNTUCSbTI#9ihkQm&hmQnQw#_@W>d0bdAje8VGn839Id^ zW`7zYlCN7PVbtdCpx!xy6%^qI=*Mp7dn__q2Likmb|q>B_8sr?dPMy1@8nTH^K~(J zF6TQ*{vi?|A>BMZyY)ZLoM`(z@Xg1GZ)qbEkcCWI65C)5A@wA)&Mn&1Ap$X&y=7nk zVAT8Ph&4zqww8?HOXg=1Ome^bU*WtklpCF82|`sNJGbnVJ$RjPS~^sJY^w5 zMU1JQBWlXYIb^~Q5aUK>EGQQ71@sO8szcV(^$8Hij6s$x1T^y!;2Sz^1V{`OaN=Ik zrV36A`wYMcNJ#h_5%JiBaW7Iv?2$5y6yk>w@hqp)#@IZX2U5^A*9O2*31-3b2ouV@ z$HV6jEI$JP3kU*ro9Gh&rkK@{E(5ZmK>{YF$&1o1l2Jv$3sDcra5(eTW&NN*&QyE~7a}*qvUNl<;i?2JskH zDf%Xmq>|0ZzHo4@Ox+wbCuu1XYfScDo3=4(_DkHyvybc|bLwN{o=|C`>GUd7m0J9= zlB{5U7GMq0xE}xzDmKQ00^&xn*g^XvtKJXc3Qs zmg$}bVl;l``lH`C|3q#mE+I4+42NP#;O64pk>kN{N@YyI^33)e%A7b{CsOAM9*&}e zfq_>AB+JBJvdseCMjS^TsG^vt+T75xvDR6`AdlyI9@4s z6=e>yA3ucGGvpys10k*uC27D+^eRlSd<#QTFk~bDGla$o^C^9)`T&7x1I(Nd5JdH& zJl8sxfu_}TRWW@D^Q_3oDKcQ&;v#3s;uqxw(kM;p0VuA`3ejIWaHGhz@&> zFbU;3`V+hf{4so;EwCh>QaDV>N5k%e%8{4ko-TH58SUegQA!iRDjOo&@3_b*qjYW( znTtAt`HF!SD8nsOV1)af&5JPuTCilym)(kMOzJ;mu0|sSk25^-dwQ=}zR3R>Cfy5n z+lW5AT%6uwF)slcW5hwr4QL&vMZ#<)ua(XPzZh?ETMJ+Up@1$6pn#cydzNPu*BkmG z-U37hs~p3OqhxT9RhLy1N3&q^*p9+UrE9Bj0T)##*t;Z{i9k_&;&Pp^(ZCV#vL(K$ zWR>E@d!-CT92P|P^CSeG|hrxn`;#d~3|_eHM!Unl-p?Y~Srz)_%Et?E0XY@**o!XZvuvy07$Jta_5 zp+tqy_8~zm}G?D%~ZbarrFoeQO>N$ro*=>Aws}+ zt0@jRWW%hDA{3lxH*WK>QV(SAWy&Ca!+~6T$AeyF2IZij>P9&zxC) z{8zJZLuj!M{4ePXy(mJJ8$3TzJ;AJ@kHUo=Ld9oJb9$0B8f4wjCYROqG&WBRWpIcR z9|!773J3i-_*oL1gW-J79T7Zx`s4{f?D;^z7-+%gr7kp@$!;?>W+cg!?v%aT?!_B! z%=`7}RI8@XL>C_Fr4ZX#&&1d(7W=n-eiQxxmczWsAOqwBDkv^grJI zL4K~RaBCp*TCZ{)@qnK|s(jZiI#isweh2E@4JkF=H|N`ZDvU3fHF#lh?C>S0I?oE=X7+ z%N!6f#hTS(!-m=BMdfac&Os05PlW}gtf6wzvsZREUvs56brH*w90Y+OxC7b{a%iVl z&?yl~YSoGxX^~;E2u>$X-VJ2!7=mw{cGP7A2 zyiJf!cIo`#$T4G}4FrG-Te(0P2bE7HIfNUSHzL*8ac<9)HnCbr-+Vmzb2Yfd|KzDf z-+HF{+-LD`?gqZETyX6?=RG`CpF7nr4VCej!L-xs1+OM$$ebK8hGh8RD3raX#f$jC z9PTj3(4~M;xD59^6cTE7lpe*7ZBn5Q9dG6C%(A{IsVxEd@&ATf#RVB@Ekw>_gU5+e z!wVo&wAb>b@6QQJ-Sa<>3WC%QkV)_4dbeN>m&B?b(Z~-$s+ZKMD zlKcQ#8O9vqwO^F~u)T~=ST=a_l**pu7^RN}B4FALg^K1G`arZmi9vBoAtYc>iA2p= z7iG9YQUf+7S%H1p+6ZY>gxMBuCABq5Hx>#vCNi(vwCM#N_*&?)5ciaiuq+T!!p}i& zgcgF*cHDmsvO$n@FxoMYp!8t&D`|0EKDH`BedU8z%g>F_G+$hwpD$|#D zw~o{3$5JEEQ!kAM3^~0101xxx?Vxfkk$n`&J&fk&?>za*%Co;tnsinsJ87TU`CjD7 zx1%V^`0EO1oqBsGYX}s%+IxlemdxaFiknOIMo=fEImgC}ammO{TO5#7YZxW4#5WDH zG8^E`^~)j*u+Ds*cM{ zLOdoorUQm&9)3LYpj}%}7VLMh6#YKpROe|<4;7j=IXjI0cE%pyeH7`MrCPJq>LFPK zXgj4a1z+2*od5OHz}H0%$B1b6VTBWwX+Uz$1q7CpRGcaN0#(NJQIh?D{W6>3i6AYX zFN#h`sER<1bICeT( z>50x@9pDRPn_#UddG|QD`7~(I6Kilpgvt#0&=3HdJV3+{5s-M#X-EOyIB6S@2qbhR zj>f4>3Tu-~B_|_fv=`J`B6L{TxgT-Vg1u96itwJeRAl^k30WmD0pX!WGR-Z_|CB|5 zsT=5(S(iNyupMn7*Qanm43Lc065xY;i?!E+b)5wSc|Tt(p9z%&^77>E!+?<6kA8{M ziX|6IS8&0c1;+!ra0@KJ}qAi7elccgyK2=_-l#H0&Wb%-ILN6`SFDC*#kl{k|&X>u*HSNTx0!9r= z@`J053&6B@D(><^;B4M{YR~q3 zOlNnYtT$iYws*3E|5t11Ce|Z!jA)vK6j?fY3Zv(EQ_|}+1N{`>nlxs{$vFN9KC7s$p_WO1u+W`gv4^r7U>{{s1FE5Zy;M^Mz*K!J_)x!v#L3+ z7}mC2<<@W7{u!&nUhhk=A%*Z6bD&eJ8Ixoi9&z3jR6A3#o|-p$m?5oNU;|R4*ec+^ zh_`)x^kIpNEe3Njs<#nPfWFIxgB22Aygb0mJwdIT5F2s{tmNv@wQ=~$lvbNmE26pT zt51Hg_V_zZB)SN9pNJCqvVXrqBdcU-+?;X|?`h1ANECLO=jsS!d2wQ!F@T32Ez+v3 zO0VTfMRg8I5nxjhBRz%b0KGjL0O~g6619dTycAtoIHr5+SQgB#Qifj4YAo0YH6qPk z>sls~f-(hBlDH=I1?uw#3EWn1vA|7#e+9GpZqNL z<^Sw@@@84~K__SW;g#D`r<=T3TAhXo>*i#Hj05;RTz)|3HBozdUjr!tkIUXYD8J6y z$hKZ+-3H3$oPzJbFR*vv%jGQDFpPgQZNKvz#ev?d0JrlZDI6OgP1wCbe#c zQBc{MP(}d^Jw_8<8@8R3=W{2ADHYxONl^FK(%z+RT5+RG$`jTzuZ0j5y(P^jKvb+g zuqcYVl&By`|3hc4H;jCB_AMC0XPZAlb|MJ?#LiC!NR(BsJJqXUf<3|NjfpNH5Syxj zF-b>M*QWF($+*z2;4=+j>erik@)gVK<2_r~CP5tv{fU0`%4B z>N0z+e3jrlFq?FzB5N#>%OS(Ll$*L!7`y%XmA|1o4BrhjdZG2w)3dKWK5_h$p05|X zE-Dw$BM~~veHzp}n@CU~6qsJ9Kgd_E5obqRA0a1&vMKcvE~GKi(NQexjY&Q+*@N0g zaRK9N*1HyX?0h!zkNJ+9s6#1M6EKrV`EUo9hlqhAr}x4y@EhuY#eVB`KaPA0z_w^D z`();uloS(`p$%43{v!Sw+;&Xhd|ByMIkrIO@Z;MiP^HQ@!k}W|X^&xN_$ZFSBm^Ug zj8Me?;CoE($g@*eFvyM=r%297Pe|bi!z$_#iCD3fgr+F`rD9UBdca|k*)VPa!-96Q zzA+=&bZkOPz`5;~0N2nfMPfL{8b7e$$my9%!dcLb9DS+86S6XbhC^Cb?p z?mYQ$Y3JR>%p0NH!$jfwEJeEXE6H=rHfTCA%X4j{*nD{nLVPoXKw*dt0Sp#g7lZ*_ z2e2fe=#at~f$hZdXJ5y`)F7ub!&o{D*n()89(KdEgc<5^{vj<7pTBqN@!RJPU+>P} zw`rSh^-4Owy{xbK%~|REC0yM|&Sf8tnDaiMAu1I4SPJbI^ZwI@vl)_9ZwM=w+XOa2 z77I#A%5>KP7l7$$SJpf96+4k}+1I_wY>i~lks=5pgxRfMJf0vb2(+XIC<>zPCc1W~ z@55r>H6p(EZ=OFQP|k1TPN7)jBRkFSk^lVh^w(vU zV_A-q#tb1+%7heTa_DFrB`T6kco1|ak!2@Ng019@%j`HHZ;-G$i`$V z#_+^&q2(&t+QN-45v(ARX~;nVh)+NfYXu z*6JqIi@|(*Il^zyF#bBxmY}wcAf*O-=W0iNG!D~*ZIc;WaDHjQD`{hT`2>*l#-!+n zk=W@LsF`y)MlSBCc$$dohfD|hPQVTEBGYg;$Q_l5O@>%A)+M1RG44T(rKowM#L;JP5GWuLm@)+7U=d)C;70+~;>*VL z#Hdduc~W@W-gzV11Xf@A#!Ht3TOVlh>!ss_`vBdho%H9q70F0l^8LV zV}fw9=&@PPLd5e>LVA~w-Df1g-6~WF^j{36B^M`dZuU*WTPERWbHfjcv0GH1lu||s z4d_9(qy?%G$!L9bit}RDb9~SB{Ku|8eQN!VVQV{_I-aRJ%Z3Xbrd1OrGt6)(z7K~x zf68@myxHjLQL1Tfsz!V$I8P(>USn#@l5#1AINywS%2?$Yhd5@Wlv>`lF;cQI{~}E% z1Vd}+((B^bOL5dPCqu+A31?4EwLNL!(;lAX80Y`r1)1Iig)C5(SEZ-+WE00}i^fY%y98Tv@#gT}`yPF+N4pZ|faa(* zhKc88sz*QR;sh~f(y-?+*IM|>(Kx!q9-;7f7u;xwUEM^)OA|UWIS??l(ym;x70Zx2 zj>zKXh^e)0$k-ka{Q_6GIQ!^>h*3$?iItm89I&pKynr{hB=L11>(aw(=2%ZYbtX4{ z>R|fVvyGQ>^JkyVet-AM%Pe<{!3>sgXOhnV+sJ@HD&UY^IwE6Xb)%a;xwp*wvx`@8Q0Rw!XFWU**~@S(j>F7-e5u5s|7a>{O{&c z_xBdx)S_2#X&nvs6CtZr1qovm6P!ehruHY_)*>}(yb2YNI(nH$C~%q4jsy`YauB48 z@risqd9K>r1i~DRSWwQG-e}!GSgPy&2+7908)mD4)O^EtpIzc-g z_XV9kh2|}JBjGu!5JVe^M8rS$r1k@>EBouO9u2bqCJ%l*ZusVjvydY-+{YtYo2dV4 z`vqM2>Q>AcYvnRP0zv7vULVcYl!N@haB;E_3nsv67Z1rnV0=1vSW>6 zazSK!#8g5O0m#c;?D8p#bqqOdVa3Ibg6Hne%m>-jBTQI4C5-m&y%Uu?oiF_E%y)8? zRk@aPRCVaxv!a9#vN5gjMB-_NVG1e}sVc?L!f;uGdiSCpS|OzUXvA&wLaC?OO2Da% zW+yd#`SUY{i}Qg0`>k&>1wB6hju=n4`27PC=@4u;qpi8biT&`4;Di(h$V%?&*&TUa zS*X(&yFW?%za&;^zRQG^O7y)CGkA}{O~{!NJ^DQ98K{8R^pi$(0q9lSUPEl?Q_!HI zm}Mo00T&6qXkajXLr)XNtB)?~Q-b`9z?fr>y#OsMa%DS|B3&x*9pe2II0fkrP_Ui; z9iAk>cSwu*>j=gX-KHR-%mZL_l2t-gWkP5~Y%fxTia$4QPAAO?m%hXz5YQ&@t=I~8 zyoYZMdtbp@TdNdF{lEOD+m*Ptls!4W6&`|(7@t4V5gdl||<{PYJ#UWT0_+3K=eFodaqEo`SHv* zxGH35L8^`5fytjMfhm*=fPSk$fCK}5Wh}dPQ{8kt-FQ)-=^%hBAAZ0cap?asumA>X zTEeAO4fzVBHsTgOQoeMiU(h+Mc3}RL%F%s{djdZ=e+AbPGnID&NopzN2Ql_I`y-A* z2{9(6HW zI?@05DsTa4p(-QM^zrbYed7ExDl#PmKI#?S3l9V?Gn9uOO3lEyM4)ckCnas3+YkUB z+6#sP7@5XcHdBcJLTJq}fcC89pY@}(C(n~>6%ZTDoOTIPc}rpbUcO3ZJeVwY1f(F4 zM+}fe%An&Ci4jjEq`V^gXGUe;M10Oricp6xDl&4pRzdi=ad@DiFy}Lg(@f#l8oOj2 z2-BbW3#RD#*=3O9 z4oYN=mxj=&$lW0$xFbk7w6ROF0CFgk_QQBgrEf}1(HH8B4$-C z1Cr#)h|^d7%9S=uH~Jd46$60y{v_{xl8-%s(@jABVWMnsl)w!MCoBHGFfcyX1Ad>N zF+2wuYEJa3^NW%*6Pe82rS`>F?7hUuCrTl*xd6<0`>bh57Q<*_1!0iSkm+6a8YoM) zHoV(h!@N_L1%P)qOOu%C02WB*u>qUN1Fb}bSb@dJo|SDBKvhZ#u&iYu0@^i!FKO^=u_f%nlw@y01uizhJt3$1{^ zAUHwb8;>%5F1S*Qc*{Q4t2LAw~QfQ$+g|x z8+c!oT|>gPk=p~^EM$G~1X*n)gB1qOJ##$wnf)7|`@czB`jfM-upMw`8IC4N?V#4P zZ&WFd?7z~eR&rJIK(;Fu3a|)qrHmNWcNj(+4Geg!*0F@r5BZrOLLsZR5mD#r+3N|u z5Wu#RUmnBJ%2K9OP3pA{jtmK0r8mmv#W*GhZhsO95D6g!iUM~aOTZGV_p~CUCt(A; z(d-2Mi1HhzU(h+-z61t^*Fe-klUy*6)P&*iXo7sF;@OR9OQuhH7H8r}KxqSXf#fwIFJMC9$g_{UI-L*_kAh$dv1*B!_&67q8tH-c%0ZS(7 zXS^54wLmHNz{3G;Iyy@MWzbb@({?d{yVIDPj5#OT5@1^t>1@P^zzIPWriNcm$;rp* zS@La-3tJS3D7{-m9fGu&QzA`~PLtY+!-j|I#Ff4GhYsGH(pO^I!VHrh6RA1tAb7dB z)k^j|B?!e0^hhany$eCUF&{2YUSm1ZE%ms?b9cMAeqhR!mB##iFZJ={!V!E|xNRfC z@yXBa#hcdsx4U*f4CU{K^kq!G2|cl5CezAnwZO$b!1KwYF;Eei1b8A*mZy$@5Te^m zk-34DgLfwzJX-t+!y?+AzHm)}#JTC;wdQiE6bJ<1Sqj;(4o0w$EWk1Dh!)HjkAnnpa zWP_+fSYh{){Oa)zeX|?Vh}GkfDN?nItbLKhy}zg1|tq}6sCZQYXoF+!{{^B9^yKam;&R*c4kw;HkNQyq$@ zoO4a@TPV(6F3wl0vnyCdxFE4M(~2uoZqGEHWwmBftBDwmcK(U-N2y&hl*H zv#*ZqpSf15GvHfbPr(ZuBBF}3pyXQ_6RN^rO(-aSb9B7F_gYDe&&3{m7WrkNvQe$> z(HjUa8Y-L{(JsgHC&Nm0CsYLu&YU=e?CFy;#pw!E0er~XT;J>pM-AhG?O!{WQ%1Q!qtf+bq`B6NAj&WZHXpIMeh5)kQq@Vb!gpR5*9NRx(@A zw-XxKA3)tlG?o@$mn+BJ2h1yaGmw@TWlZB={bcP|AHKVHf157j?6u3k8vkRQJNy#2 zwZ9e+jL3b=DQZU@bCG0~xU9-{IDd6j*^U!9^YPp-^|7U+VJ>E?YOkP;G1qy95|Hd_ znc^!ya`(eIW{<;h(^m!83?69Fy{i)C$34g{>>ktB9hB=4QmWgQVQjeon40)rM$QuT{$^BpulJpIgY7YVVjY&qYn2cehn_VT&m3*b>x7(T}Y zcr?`aFZ2ITZe6muND$%?r%m8?k;q3pI}8Sdn~A%@7eudR2Is_ZNB%%`PUcMdjIa=r z;Y+2hcU48SSC>;upVanHnp(u45{8=yol zf{F2^FyU}w0-^%q0lAPg4#2{h3+gqFMJKptHRo4GB5>iL=PVymmr1E)U)tM*|L?w zIf%;^|?xod9PhKWdg~mi17tjjGMf zl+law1jxvW9)K?6>5?uYV%qV;g2{;bg71a=4WoTPU$JDjt{zSwM_DQ?20TkLp@)~v z!D)4Qk>n6Tr(=GUoCI9wPE8n1Nj12Qlrg(`F*k9B7+Bp&n_(|YG2{r653_rWw(D%~ zquk7y-Hn$;dO;#?e_HejXu{c&h$tC}5*LuUa_jKTF>PfEfyd#@@xrzC;*D5gX_GuR zg7svu=dtgtMMx$etkW-HEaZPO+_F_A+<=EBIZG*WHp0?8g@Y2q3x-q1UFKT{rz$o~ z6e)3i5X_$$6?%xuMQYGT)ysXD3iIcuzj*2HZ~w3mOZIT{?Hz zS!4(=^*Rai@8QucT6AfbC>2bIVw^xE*lpAx*naI$0ATw_j7ZQO!wv}nq$aEA;?W0J zc(W2s&k`*H7KxVj$<8R z0P+~I;>rt4579uOY<8;aeKMSLc?i(Wl|YU?!W*I3WQG@e1E@TlC$s&VmDSH#uRtYWVLK2mcY;y>l`0ijd z5H_&S@=rE>xqoGnw}bQJj|R$Mh9BhYmT!$ui93$-^363gC&FsQ1DDy zR8df~F+mXU=h*=T+Z!b70hMpK*uDWhdjYb6ugCWoNa zt+zrcvI4u9yU_6S$q>zoXwVFH$So%J|1gxdNM4b$%O%~aUhbwS&FpfkRk6a^DD6d{ zj+7pP?Tht0kkV>x{B^41s>tD(PGbWAbS&=-oJRwUe6f zN@Jt+p>z#WSoZA2Wxd|QBrHDVL3jR4pV8tX#+(GOl9_ryy=+k~ko4#%*3~N&6Y8Y^ z-dm$JWu!We#$%O;yb`o(iJ9?{YbnfS|SfsUfR{B^2ttC+k_ zKB^MApoGga$yav!Uf2mdw;O%_lfkcR9nHuo3pMq*6T!k+deWIsxW^e0FT<^y?X)~d zurPm2i&vvU*{itEQ=+(1Ck0H5TOIDgSw8Ui;mO8gS*UnEQYgdTzQ6<7=s|ona?t;l zYS|!{qg1tV@KN=yjnx{y zM(DiE$SVhlA7YTt^uMlkt9Xiga*4-a^G1GMd%^t_l zzU#eA`$I0F-1(N=i7-)Jh4bUZ3*!vc#qtF8#JP*>M0D!T<=jbP`mDRJS1H@$*s&jP zzmUK0JiNn%+^MxUVT{$g=7{oByRK-xt7?5KLk?DbfdsqaYSTi-^(IdP0-!j3B$ThG zA04}>_(<(okN-Y_!P)in!!q1mXin z{D6)^!_kbWK&~|3B!^oknUe68dvSyknFpt zbX<~D!@B^urXWnZ7Xhg(38R4-HOO-bP8{u}QaSbH;yX&k__Njzo;m;eh@M|$9)V6G zVWGgX{#P)if|bFoh%Y|sIT(5=A3KF+=KtLI`lo+=URi1=jF<74HPc`PDDweP19X;| zlTLN278yUEhRB`?E~95;TB7QNp##w!iU5WP2+0b-Y#;+qN+0Conq?~E(_jiJ5o8q8BPK>PvogO9y8KNNT!&s|)l1#`4!i4Ehi^2r#QHpnoZa|<*L?>EtazRJI zxCAYPv>op;7USqAjoH)}@7?+JKVJLYza$UdOruC4fr=W7{q+;Y;c{~4r0EGmHvxSe z=%&Dy8I6GEN`N!nA{65iy`C80G?#t>nF-+?5{Q?K#R%08oGGY|#f3fAE3E6NMVoD+ zwi^snvWC17V{A%IU(sS4fUbp03zE4mZz< zOM29>Z?Og@YRn2}5Q=3vJM6k-uk?jF+K6 zF?>#6_8dN%+xcnY;L7RzT)D`<{oRto3}}p~IMxgF&2R#3DyTS#snd3SdRq7+*1+Hp zAd_cmD~@#cS&hl-hE|b=bR7$ zB{48wiFIlwqz}c{q&x7uw-!e)5PkxkA-QLPI%LC-(|_^L6aN|flS2WtN1VLy6qF6I z;P89gns{3fUon&>Kwq)+%0wq~BRVC_3k-^a3I9P%=#%S*NLyql(GWTixqfJZW_o1m z!~Q`24EkhN05m_cJ}{Y=0`^e~$$|{LKOvwxb0+ehl1f}+PkIQDNtAj?a0(+?hkBr% z82jfa536GD4e3mbT!5fNttSRm**>7-UC6>29YwOjyO5hp_)ueh#F$A+i(+z6Jf}#l z(ELOQoab)@9%pms!xt5nEIVEoA+CDQoN$7}7`>&=L-I>u89W|wG&87&hqUO1k(%aS z#vUSO&z`v2T`PyRm1!poH!TX@j(}bhWFtUbW_CzEJTZg%0+ue9L_5a75+|_9Xq!G` zDM-$PwjRmf3uNvsYnxtul@r{Ff=Hj80SNv7tpQ}SHwSXnTNpyAJw@LoZxj9n*&c}j zd<7`{$t+^2K~l)u=l2qJisXqopO?*N4r{}vDJzWJSrMpPyKF#6dRRj+_6E3Cp*c!{ zqGoDSvejv86nyS!vTi z<(zkBoDju?x-EDw0z#xvJd|YNf;^3-RsVLecG>J6(0UrM^RPt<3OCp%f$&@yXr8%5 zA*4!MiC7YN%R^DpDu8gY^*yuywO9#oYWVsYR!vt2(IRAUDgFz@n;$rT_+;>}em(HD zFKWM&Ki{Se)apIW>SeTfHhk!MoipEdo++0=9<8B+<^`#JZeoXxnJyu3f z`w^y8RAzoQIwM+DO5#_UPy8k*clyk`$}}1MHXr?j|5qh z#RS2DB^6^q8|;7(Nw#pIdR>TvRDx-la}&Wl7`r?rc*1asAp`4;DHQ{m=>Ek8@On*t!IpueyzEg0|FJ6(Tx0T$ZU(}&!x4NS-o`< zD<3S0G?WpeVfEoCWHM)^QW_faX9n?0a;?f6vD=i&@%-6TvCN-&rC+%e=T_peiCCJ( zc4H}2xZ1q`p6lT5WyI1vpQ%s*P9d2P@C3w0B>nh19K%L$r&==w9WM{|p<$%XrF`ZP zR5ks-Xzdu@P{(u)JN$1xeKzMgksmz$AMQV5@K&uA=v{L+>d?K@ zS)V!C^3}Ifhp$X)4WuC@G*30biKTdI*f-jXY=*rN1eJ^n&AMU6S}9dwN7y-kib*(s zDj=3{+Xz~2)~>_T>xD8fOb;bfjLlD8y`O2k%Sf|-V*TOQez|{qNw?L3f)Y}<-*6lu zO`&35YnuA>g@*^nrnG9i-UMlDlL(9MTK-bqQMbE(Oxp<2_Rg7za@c6*gCf3zX9!Wf zFoP+hi$OwM$%XLQoa@Bi)=5@)9IQt7^zN~Zy%Sa0Gp&VlqojqvO61EIaK!>7s`WEU z-O|Cy_1zaH^Cvw|Pd_yLOZkmz=v`%@j)R_H&qCy^;w_hXkDW^buci)MG5~5!N)^db8Ot|cFIKe|FQ)RXH}E?YZ&{V=egqQAwo6%E z-nnx(w|Y%m9W`f%wDmr9t(`@cz&e~e`3ueaFFNw&tr#fCcF<}9#es6^F8B8UsPc@( z(XZ4u3fDl54!9O(E~s-9{uWfSQ(|6&+U^S*eN%etlu`|RO+o^Ynj4BrhCpYexUvCg zf4E(qU$0{5Rj!Q@+M|ZH$r(6`rp5LoJ$&HjP+*+t2r#hh zL8OAqDei09W*{^F@XPVP74HK|A(B$4x3<;D9OA#I_Fl%2yYG4-Q-4N`Y&=rzUOqqx zc1WQUb`;w-K?Q*$XyP!27mVaQ>9uT~bav|vE&^esvZFkj% z+28j6%TxQ`lyW|uN4_3{p->nW0;gF4fQZF?gN(}O&W)ZTIu+q!ezoe0jqmRDy{Lz3 z%#mK6hvXyi6~JZ+?l%!CELTd!c9iHjRBFR~ovA4)h~1 zg+YKT$M7!m0GF5Ahs+*L5x6})o~Uk8#cQ2trN}7L*Gg)`kVAr(UHmk>y->O|R%0J< zi2-VoagnhKOaNX0m;wPg=OzmUj@mHG5!B4De{uI;fBxRio%=Lbg4nP|(Pm3Ec7F8q z?%a!_k?uft;-qtjAx9EaaGnA`f-3tU%EzF61tDY-pee~h)gbn5@+vvmZq4-m)Ebp$y_p$Wq=hungYWV6$W$WuD0ogFfp@wXrXA9R?Z zSsn#i3xUj-_@D{Ug@P^;I*P`CeT1)!={C_JM;sgi)i>>W1j3z@as z>P%g3luC%ff=?VG@7XW{NiO7rl{MvJ5qe1se7_#IAfldSP264TKxSGF+uMc4}usP{` zbgoSTvtYPJzr@JRL9oR03VvBMKTKJ6kKQ&ds6N?HJsi8lLxG~xuvSVAL^f}a9bUSz zd-0(;6UDTJ_krmb@jnG6B&sRhmw7ml)5ZMH|5U@3;NedOzVmOE|Ds1~@FjsIiYSFL zV&Hv7blk6i!vdbib>A{7IFY-c@esW?GXRwYJd>HUQSu{U#VIM}J|C5Uu9s$caLmiwN@3-VH2D)VZC)1{vNF^Y2 z^6EudBo{L>yKwn2K+Xt?&I>~Y#E!$xJ{&Oz*g;BHAWS+Q5b?+`x=6&0RBy!NW^|fo z6r_L*HZjU@DSCqnDNSWqo}C0Z5PHCa!X+}Bem}6PR*hNGE*d9h)C7ApBuj)Sx#IQF z+(UczH5VYivOcG;x&+ki;d)@rXO9@u>mVt{*`TpclCHzilRfT*cb1b~@*La}bHwT) z2!Dx28DOcw6ae)=_Dhn1xg-l=XfNIAurTsAab7SNu_Cc_m)jGAKpAV(8#cB4dLEz>e*M$cRf0wq=-A zT_jipDfrVwN0#~uxeTl*w1t$xDhN(KIA*j!%`^8B#l~k9(mUIvlY*Va#-_l6g8>1v z2|u4LgKr0wdx|Uw&AVAw2}0&3jQ%+`M-DzfQOR8#z#EP$nf_Lb zdU;&A2=CCG4Zq45pE(vQUg{=_5M2!-XNit+EXWvUOXN>Rz7`~-KMI#A9tnEte zESY9z=Rm&shF%vfl(!?cLCi+@7$-QjAgD@mu7_lLGxKoaDedbL`{Rrnt-}n!#9Ij< zMh;sKHEKBKEOMQvuqOGawm}0UHztJU9G@W#1uKUSmma@)k5gD{ZP$C74?12}TB`+a z3QW>licktA7?7IQGKWkHxR3BXqlK>wZ@vvTff&gptBR|FBm{^aE*?BAL5@Xjk?Df= z^Q3w;K)0*}=A>NOCc_?(LQET6=TSyF4V@j}rFxB9z0BeXpy9}$9VnLJ674j*xIKwt z8~yUzv!DLx4OS8)E1AZ7Txsg~dNFi6S6^1_zbGK;0D;)VT0)VOQe??_vnBzNa<4|R zr%-!B)Y5}Cj5?y!%abCwiGhR*OuP)VSmIxxS~P7DM8y)&mneVv)TC4w5~nY$J68&m zH{?$5Z_L+T=5iu`j0cYB(iyadxPU1z!V>Po6Ctx)ES?R%My3$QoKo2>E$~nY#8P?s zSqCJ@QJ%&)O~}@k9B(ju=Axs4K@^Y5H5=L(RMXnnI$IUh!=HQp@n}NQ?+GlTd;~cM z_=XW_J`Da?Y@W$J=6`i~tLVLjm$nc+`z-ZbCUoqH=iAxolbPtt1y zr67Amxs=MBUH#2>9vZ!qQXos5nyb@j9UvlR|7MvGf=-9gY%kWpaQP@XA|wZ3hk?Q9 zojn|QL%rnRxqM7->((2h^dn%*;g6xoG+Ibz4r!}n1@9ecusvrlRL<+}m4kO2xd*Yr zGIoG){*;%S-JA~Pmdgv1Ww~m|BO9clI26eKwe+iwN@ifVEj&ad=Sxv_eMs+UC&k5_ z3sZWlwyg?Mm*BBaiUL&^(}sTl(6mG!r+%R=&J{Kr zKmUimfB%(z|6Lj%Xw&m^JwKcKz*tP|-8r9eAEPww%kIC(x{ezQc-%^1Q=?w`N<<&k zWoL{jULVPhJu1##J$y9#)zV^$H1n(AIGY`Mg$NXu5qiO3d!GfL+dX@}*t(hTJp0>gkd4 zCSqo2hMz-t9r|0;N=Vj4P{eQ|(H0@XyQr9l^4q(4PM_^TxM=MM_kX3WuX&30L8N^r*z z#Mjkrb~(ZU`VbWHJooB7&{a&-F0t{#CeToZkH!nc(ZwM`ZKcqKfuuOR zkY=HQ#5Ev#41AP4Jfnov5nhB1#29K3bt2#=fsOX*;>>pOri+7*C~QzWvyHLeA`>Q6 zbTSoqu(Z%DfI>!wNpck|h^3jVh&^E%VRV6Kr}2kdyHtWeHx{uc<6>+yI;C+{MjEdl z$TwSaUF)w`Lgh!EZoQF;>Q-PP5tfi1Z%t~UD`1;kGprbDWr6?@f}N2rz!OPxO&8GI zXfb|63N#(vh4s3p_fO?ED>*R*W*my^vE|)~_YqEH&ec*fwKx8fX=SuyG)0<4sA&|c z&KRFWX7;q_BV)l;T(8g1U%pK_jjD>b?5n4%x|+hGwa#e9ZR;Xku6!>Qs=;C z&IE~^V<8kO=YT4pG733^AOPmjBs;f))w1Oz%i|e&d{$#gotp_nsPM*u_H#=S0POPG^cGB&Arh=J|&x z=V4l^sxlO2FHHe63zUPH>@jzsM`Ml;!+E?iFjVP6fPlplAC)5;-rYs5b48X}aD315 zHlBM@+(v0agP22t`~%&v@-ad*Ef%ST{EZxHOvFBQe&e^EuU7&cOrU6!1w97SMu{Wj z96`~g+rmDsXIzLD0jtcUP=sOTkN*ZoEk{)jO1x7pT1<%3a!=Xz$Fk>uJ+{UT6 zWQ^F;tr zvgQRDZp00;66PWOh_9T!H6L$1sgx#Z{+z9Ul}^OSL7#lY6+;7 zpaf%(ezCPD4zG~D&w~K-mNfwEfQ3HnKFI&tV8i3y@9zx1@?`k?|786?w?faEj!s|! zvuj8X)Zsu*g)b%yko?)AxdL1qJ4gaJhR2AsFg%ii%4!9TG}=iU>;Zv?nNOASc=ct| z-cIVhgupg?cMrE4Ed(>AcyP?t5g0+D*^FF)TS&$|EC_6WSdf_iGpc4ZW+ax4Rt*2i zx5Dy;md!=YKf*r=}~X-Q#ks5gMOj}}fW63fWGK}>+&+z;xjH=$ET0W?T5vR=o0A@Q{3y^p_t zSLOn<7ZHG{*T?n;qU2IlLYwdEu7!f0!f;jX zXcnW+0UOtfFNNDbM|Q;y`^9UtPl$cDr=NmNPpvAc)36#$%Y^iF$&ttPAHeo0Cr<8N zIIDNH0);{NgnPz9B9uYaDl#;*#xq{XOS0e-Y~!J-{nw<34MUT~i8l?;MXa1OYb_pY zxELw^Q({HcKd!blK~kcRCQpjGOVS^PBKqQF?bX~PvC>-k|0`R{Lm$zPB`tna5PhOn=^58prqX)|A6OUh6 zQ<_&9D@fHHpCaGQ47KW^I>s58(#YPMaa8gSL;)mP!fw(p;bWiPJ2?E=w^s_s7sM>6 zz3201YXAAav=+}cZ69jfJGNvrVg1@6jq@;O_yL}J(>9M?o9Tx=Gn`O@PJ6jZRO0h-jYE9jLNYza;hh?v+>4n)e0 zYlTB&xMqo=I=OgQx;YpiF3Z#Hv%%B?2dKnns$)K@(KGv`=AGS>o1mbCZ3)EP65i{7 zTLi+EnkVfq?|Ba39A2tvMU7<)wJ2xsvi2hZ)`#HR6Ng8+;xQK~)FXK6;yI%)_87~= zh;x841;|M46c)y{cAoHviOLi^C(j6x?s5=dl_TKQq)WY$qqB<+QP4FU_8k zLMyyjUcIEwv!qk1yXHacJA2{R_xuM)XQsN7iVG{+blO~qibj4UP>$YaS3v}{9r@v- zTW=dn8CWsc(J&sudq({~S)dq8x$eLs)Gj4r>VMH%6D( zxE1R*q~_^O>UCkWg%LcSoKbNANCX8bBF87>G1>>s{#hfiQfR#md%Vzj=d<`f;t3{{ z8xNaXztsQ14#q%b?{RFk=%lK&$?%t>fA;9&ix7z))V!qG&hJhgD6F4_gQsqi3_EH} zccD4bFNGyinMk|*0K-AJg35LN9of&0io`OBO`KI6JjTJ{V{nA@HIl(I=DaxliV&E1 z1;`#q7{VKsnM7qA1sQ3KNpl?5M;-z{655?>r-WcXkH1!jv0%mSsWO3aC5AHy14k>7 zNulLrAO>W`3M0yM2brANL|nR$c%G^E=Qn@y%lCe6Tx78U(f8q>BX8kpr(+dsCTlmc zi-PMQLP(GzA=#o9aodrDVbd)z9a_{tf|)Y&h5d+C#>ccdSbPIKqOe0;gT0A0XtZX? z4&!kKB{thA;32U%m8lwYdf<1-C{d)9sWcwZJNfqzYW~YlM}A}`JBiT6`{I+;Kh>fas7}c=7p!|SZG=`q zLQ0uCpQrzU${D4t5RFWo(vLs@|u=22u5rVW_Tg2o1X_euFRvp$B z>xx$so;l7lRRJ$I9XS9!AZ5QufFY9$@k5GRrXk!`cU~GmbV;l|aAO$YL6zhW zCtv7EjH`G&r5!`;549{X1sX4sSivX7f~nfDGo}F&42fok&jzwe7ZVTjI2V_%kx)k0 z15AO1yIMy9$%GCI9WGbZcps@aU;?Ne(l9;}A`7}#z7(t#`W;yJ0QE%pL7Va7Ge5&= ztJY7OJz1vwEJa*{3Ri34+TryIPN*+Wh_ILVZx}w}fy1-OB#2Lr%P3EDKU`(_2Gt1& z06rBvyDkE1I%|3v2s~bC!FbZ~mSNE5C4q}u#wN*=NZpR5Qbvtmsf>ybhWt;$kH%;Q zp?iVaF~9Kdhiu}!fdM1ehvZ-Ce?AZ5vO)S{7(vv`JZ@rBAd+f?61*(e$Dbj@R;&`R zZKpk?M;jjHiKCn20F?@pSOK1KX@_GXl4X(5o$*l_a?vaGqi^Cu!QWuui|U+AM*bE= zIOz>xjf($L9t2~YVLk4Pd+v8-oD_6mY%BbqV5jD;MRbO`aL;~V*Z8VbNBY6a=!|Kd zgN}mw078q_*h|a-69LE!Y|h*xqrt!1aUWK{u=HVWI8gVD>gh&+L@a{@6KkirV}4`@ zCr2G=jI0ugC~G4XEX~{imnht9efZ8TjC87l%RcsYrofN8o-3x0k}x7FX3%&%tQh-7 z?W}w=w#eWW{}W*g!+9es3i}uP2z$FRu_)r=013IY(kPf%z+Q-L$O=sVQgM9)qPuq4 zQ@)i19x(&$>SUcv)8O4%dyqq#z4?7h#OT14G%ll9C;p0^tYLhOM4scprzousZqhu$ z=lSZ;TaS+2+rIE7vkA>pBNb!6TZx{MHs3jlP+IT`rw`;GUaRKc6axQred*+sHn>jS zw5%LkM0YpHrXlh=&JhQuh{FG&dhba|8^Zp7Zn0F;%y<#fj$m}d9@TketKmJQWKY(~ zg%6vlZV1Dg^Md5t;;TQ&uE>@P6(=vVPKH*bpL0}&*#`L*F)eKOA^fhbu%&mny0KUNe#oeA0dgf=P8*ihoO?*LJL-EsR6&z=P5rx zW=3c(fLOsFL_xDmQZrB(wMPi52JzfPCln^{{d4Nqj6U_zdVq08q9SQegy9E5k`y6i zs*g&;7+t|-XnW#SV}U2V|Ix@Z|2qG*?aRlRk)Z`BO`P~D^PR5(-~QLo|4VaZbWWE~ zX1{#(E?t16oaAjt^91N#ZD9nnZ-=UlH@>CNcCv7`UO5#~E_5>-Va7+#i_Q+EhCaB0 z(I1teTy{sYcxHv7PS$oy7B#FxUBupdSEc;uyjaD6ujw*uoN*OxCoR>)PinUK0t>w{sbmA@bLjH?muY7s%4G{9D zFIg&9OxR+@LnC?})iPUI)hCd&5#r-JCvagBUlf1V=orViOia(@!vNZ((2*H^vyWPS z%<9#`7c}by_A9evRBLb1oV5_cjQR1>{0(JpeLs!xb`0l30jV4bGr~hOhV2aC53bt# z0|~)wLE{JAzy;<4sXfqdaGZ0AzuANs#b`s9RR47jEMuUJGPvZr%QN`s(D6@Rd0nls zGXE+yqsxZrv;596^_U4b^$RxCoNv|?7~#=<;D_ckJBMk7 z%Gr~9lZT7m!-TLKZfL7+HFRb#@H#vb!5D4Xa{eY(*m7S2S={WYqKh?aq6>DqWX=xP z6o3w!aVKO9OcDsY34x7cUaHwHvmq;eS4x@Nzv}*%-QIVkdK3(B5Q-+Q{>9K?C2)$L zh4qA%D&;Fo9C>o{Na5n?a`-r%vNB(bev{dj&|U24HL&9M03&do?hgWtgN4S4VbwM= z#kbr$A9}S-HiV$Iktp3|%$h_JRk}H=+yr6nW&|mghNI9~`M|KSGP-}Ac2Wc~Gh^_+ zM3F(wkf0s2m)7dEb)ruKg5b>{)^Jb&n~P`!Xq>5vAy{U)4yfehujh%k#@Q^5)enZB z=6q5czx0LU=bsJ!!d&D=^a)KR=imtiZ>J5>)AgVYJE2#~eW%$O2)m(b-5-DqfWBZ{ zG#5aENcKnx2S^boG(f*V)!!HZ6EPsp22#DqQ9c$#g-SRM+YXQvmg#1Xc;ss1wc@Fc zBU325d+i#tNT#lPt;gVA$`%y1QGK4kgaAm5hI^>NKqZpeYnK!0pP%%Jb z5Y&;r0MV1Uh2VFGDY{3})&>FP04ibNP-XxH^UO{Zj?R>8Tj4iq%N3ls2F9ypSL5%NeI>46D%Gc6PZt-7ra7koGWhDfAW)~l}S7MJV6QD z)(=@@yKkY~_dSX{vz>c|q7Gkf`M|`{1`;wOnEv5T>;vjp)81L`Jf{qSd?Sa1x%p5<@{>B44>c^0Sq?`6M~ zj&uhcKrsxvBpLv9CpXlNlNfUuOva$}kV6E|lV4*Yfs>0+LViF6fZGgkI=plmiZ~@S zbVQ&q;^bfiM+l%ZMoLrds{4&OvVHw;H5&)4GNEw_HN;c)LW1PvX9QXF* zesoY9ub0#$RxiK9Ny-_)_<-BZe`1!-$N0DWG8%K7VOS3osL&^%Ni%YyUZpXK0tHn0 z(gm)0kI)^HcpW;(HIuD$5DBgG4fgW0hW;@P1ucv%4x?apMR?_v96WM1;Mt zVrX5dnxNL>z|WQ<6Tq;1LHcM0C44qaa&YMsioVQu*oXDzT=~=l(-u)5FZDgWe?i;C zTl@CjyICcBhJY%w(+PP-8Y^xM6b?ty^evGsh+!Amj-qa$$K-TH3Wps%1uZt^v_$Fvl;LM6Bs#{La6A}x!2DtN^Kyug5+bDtFCxLs z2qGXr28A~QatkX@b`mcqU{bP*SV)L9K=S*EP0S#`F`7wvU@_Ap0B$oS!91<{*Tt-c zv6_St&~wo^%NPifAqj*1@Gj5?MdcWU_AiT*WyV#d%YgrbIv|bGO16c_nBiZ2I{D$= z%su&2k6V=Qe#DGDivKicjbb}niX7Vszx=@Y?O%@k$48^jGFAYj)dTfV!tmQ6G)fEC zNaKbBWI{6RIIMZJWrEr7QyRzz$uR50$wazZKV>aEAIccA;8C);#qMUjube;47)4S@ zQiODPMD`e1#G#0@!a?TM9J0Kqy#S>{Kanha`pK5y##E+wK8N@n}MAYBPHV2?C~pWt?sF zFYL$i1maM`5Cf_#uB$oZNVODl2=}Tka}joCt$o?(o7aPvFpBx?`!{!wUjiI3lFg!H zB3n6N!_L&~1bc)A1C1wOxK>o_RccGkbza@bSNyXgx9q`2k8zBZ$X%m}jF<#Hi@w54 zoc0HG8yyN%UY-S}zzlO^rKU|9bGjkbva#EIPj8voTRpB$)oGbp!`s3hZma~&*_4@V z7eW`fADP8If*9zssk=yo!7(p}ZddSC$3!`ChZF6yz&DT#QI4MSac8k70m%QqfO{EV&49Kpp`4bcH7@79Gg*2jXY@o>67$F<@IK5vXS1I zAXf@qdJyyxN=xI;iSx=?i_wgY8z+bhUj@{)#lzkQZydu*#0<1a@Qw45-rFL6s>6up z!jc+B4gz3^BPuW&APly~%q1NOs(opDolq3g9KoCjNYBdFn@^kGG5R`;KGGa$^elip zmAqBG9>7`zqNW5)rv@q$gL-|EK~goIepx*5LFaD!VC=xAl$TI{}6>GH!@-|Bivs~;#g)m1BA=o~)jSXski`WNu4 zK6A8P(z=JMNDGTIZUy=SzXiG}&0nkJ`Wb!F(QDIdpqgU#n?^dffH?s5yomj+RE!ye zq+O`0fpN{f0k1}>Ybzd`+&O-k*`GOUr)7I^=)Tdvs6{S(?D!+3LxAChsiQk@wpWQH=2IRK?l+eR7QtwO^hw4FqvmqNSWb{e4Id0jk9s|7T=YtigxgPRCTf>hw&=O{ z&#k{Ih2JFN7EgONACmjjD;PNUvU4(|dzks|Uh05wHgdR%RYQn^5hxkLtU#BC1rWHX zs7jeLQuzS>kfkUt2mkhTSbgFe>cAB_h|dF{x)AK`1LX7(c#56^mz(`$y0CCZnY>~S zbeHR!aGRv_q8laRoK-ELDB=Y+E6S=AcIz;ja6TkIF~s8o_-{t%@mIlT34xXLCe#n$ zOQKK)r^VfwRgho$s1E$Uwzc1-k<{t?t3!j{+ooj6;p>X zkKNjQqbiEW=K+($5xNgVE?jxVehotJ?y2*f>=lcnblh1w(=xfH_X6}BXe zFmo%2rcz3QPf{u)kMb`HHcnau@z&Oyk?+92R9kGtj)}Eo*s1x62ZF`a6I5wiygOsp8~w|tbyc9CY^xQ6wEmP zK&qiZ0J9yYJcC<~jU)vgQlM(_4~2%35@9$u2-_ci#wwF>3_nn%Qv`y~Giabjg=#KL z5)87cx){92LD*p9i(d_lwQ+{&0C9|r#qv?=e@bP>YH3PPeRx$o-~0g~g_2hy^T8@M zj!boo&`fwEl!AOPzNc4tA#P>G<47?mOe;>ftO*Dph1Q&RBct5J)t^b1mM9l zL272HW2<_6$j{p3nz{*w-~i8&(LCn!y$;zZf=C#k^kCEEl4lK{BHDkJD7Hcbk$e}$8RxH!ofyl4rm-42~6fu5LY^xg+3sRZOz)QDYWIq%F307bc)D84LG-%Y-R2P))+&;>FKzn8lbZ5LZpgLciivy(` zzLSKE2;0OV3JD` zIIE);WWSmnIZj*Nh_V?Z3JY-obGib0?&6a> zcd&gcSx)Y=+b{x)ky)7)ud|tDV979ad!hMu1=)Ble2_g(+%*ecQJ+b@ds*ze!CpRcgs7WfF5wi^?3%Cl#P@Ym- z%@_603X2=2y1!Y*8QgS-M??qQwZsf8BeQQ@n_fXUAWgk!&@xc$_On*gg67eS7?uM9 zvH?D6a@Jp4lQ*(X77r)4UqmcCQ0WdT^&REo1OqX$gx3_*TPEZH4U86h-vpemSo+nW ztA)ek#kyJ+l|F+HNx}#cGukJog9GBkMxpL1lmOLnWoPhxX>SL6%}|G$I*Xk?zXq|V ze7c`uH2pi$1HElV%orEorPDVdVj@D9=ZD^a76??z7(EjAkNy22AF;#|Pa@x%)l!F0^2jX;T zIcfUjl;nMLGLWkD<)C?Jy=z9>_~(iLhHMZ33JV>^?zl4n`v_*3ha(*^mL@=N#3j{6 zlF>8*t9|G?6U?>YtY)btr2isZc(soMmlhaDcZnt^$VuXl(Iripll=mPMZzfEfJ~|X z^^uKj&yV0tR>B>^6NnB7eJBJ|x4$%Ugm&O}aY;5OVOdYEndvTd?95K`)!mU-cU`Z4 z+4{_O{N-Z)xH51?O`I*~PVKB7{_^f?Uw%}(w|2VX=>wfm8Wx|Py}LK~HvP4b>#PGv zarI0CX_AjJ&vMqtU~U9S3vyJxatv~#-nWQ7J4Q6+nt7wur8Up(^}Y>=YR)EMfa@b` zwAh5@ZND}{3MUjJHgmHxBVbNXN@-nVeDGD{NB{Kv-|F=-oImxIL1q>->C*dHEn6o} zJUV<_ZCavGWJAM2Nb%l)Tk>hcw~O@`q(t<(%8}#JQjwA-wr?D@aH~cukn1>oh?wys zKZLyoj{=gj%NUy1yXI-cm|AMRD-{cCb+l-Cv)p$bcFNARGn~IP1=L6^6%kRoCIu%M zN>6XpXbdhg-P<3@ zsxy~B<1xlm&J3IFuEOb6)pm7v;m~KfZz`<~T0^%uDx=f!TFjAFf^PMO5CarJ58&?R zM~qafX(a$LVx(Gle%buZMfh6NT1zL$HbKBJa^ahagoI@0NuV1*vjHj%w=Zp^YyNzi)JPe;)W|CE2aI&H)7Ny=&c@IV@3A zL7RYA({UV?m5z;no&Dt(f4!nzPU!Os#MZFt$oNw)+c71;{eIW>`j`H10sAv$+l{@Z zwATVqS7JycnB!oFp2Z#(2!&6(ePDU}#khzp&bW)`*V#|1VrMcqAQB)66qpD&+Gx*# z#}c>7VO>d&KZ^g=ubuy^1c=B$iAjrqB|W92ZhR8> zA5UA}M;=1NEiN?FNSNUp@#g)sleyT_;0vTtNZddGaWV8EDS;%=HYAXph`f+?0vICX zgq!L^(?JR$$16$%4-90pg8^j%g`FJqSRW9?+)A00DBmJ88rdLOTBC){D}~#O^jxLZ zbEc)o9Aq=cQDjgYGobE78RZa|VlXyin zPw_A14NyODE;R$XGofmWG&nIT!|vsTKHVl#O~)7qMCo=v9TvhU0Xpa)sDDyoJ_B0` z;sNFZPk%UAzKMNtg0Z{N+s(s55ruj0zAr-?rLW}F&8gk@QlH*^9?ZuK%wv_N**8kb zXNXAWwx!S;Fm( zgFWI8gUCg6tRoTuAUPK>=*XeALJGpV(+fb2^S^WoJ|ZE=N63O*kS{C>)BLcSJS!%F z5`D$w0_qVAc9--QENqmj@}|Jr7~?ac;Dbd773B$%YF6|M^ejl5s|jUdY6^6K9p$L7 zcj#y&_brYRQ<@#9&W;6PYv+5|@qln;zKr+I@85+!7bJ=nBM3(qg#vTcVd*k`Z2vLOV9rGfO!fc1sk_588{_^#1 z{Sw^`C4CjwrM1Kit&?dZ!U_cAeEll>_skB!|M`yWguw4?4k8NRPi1a`IzRw?UR-S1_*4vo zI2O^D(Qd$o!Y+pO5SGX`!9#Ea0{s7d?l2p;i1IkdDqV3Y{=3*n$2f(Bscs>NfoTrV zw9v!kt@&U~OqhH{0+L_D&OpOOBC~IihLNNp&As`!|05w>MTQ`@LH?Ke-&0q1A6J8C z3yy=k&eyiw&;3jE4|YN?!|vV-zFrI z9lh^DC+jj>IfHEC08G$EU=WS4u#$Xq!ILmdiz$T-|^t^ zA!DdrrYhVuWH0eieSWSKxmWBvrn~EKPKLcu?mS0dhL{n`E7C0)EC$$Asq<$fGbp?) zne2f886}iA)YVL{;C={(5DjDMuBA6g2heK9wqBb3_>VJ>pX)6hAJ{p(sx+;dj`rQt z7e0RR0Mki20yxG*1B(wfOc-WW#KnfDMXg3%2dQ%KzS!;3;d*d&7Ojo3fOHghf)Nox z5V{A9KkrvAPh!rARgu~0W_FAn%DyFPbax}mqUb6G?uq!?Tc_JDiR6%2pP?1Kjz<7A zDN2H;jGk=~$w!-|zXMZ3jfi-8jwckvuh4u$4{WgbpS-$;JCkOu*Bh*CWmx{wWbL~L zjNTdLY>r_;C70pih%X#eANoY!pybh`ud$H~;;BS?x$IaZm5%2yc*Gt@TH1uy>_}=Y zbEtF$n2N@Tq`_PoqMdRksa*&vr)+z#$BM`El!cf;?%u2=7*U8@?k@4m1sK6xCF|i7 z7O@_WHen(G3o=g%UC{E~<7+UA%l;E;AE*>#P`oTW=GX!j=uGq=O6{kExLG386E@TU zj7qOOp`yTopc{qB2^fniyfVP3ogH$NLVDjjK*fSUbw2@a#z~FAQFW^vahsi^+Q?;W zNgn%uDxs)}4oS%&@nob=j@oc{Y4n)53le0UAn$cni(baZ5;6wJ|5oI=-?+bqD8AzB z-FChNSfu1@c9st*6E)gg%g*AVM;BlE>TjJ}KM9v_$4i%&%f8!s*CN4NTY=}cUSJlJ zDrHVQy?kVQVm_uG!9>5CmMMqbCjkdnKb|T5DVS^2KZa`1QBTgE#awFV3He`!qt};>h9O z)_n_DesB2>M(g;o7w_8%QvCevb6=i&p)!C}cC38DRk6ZA$O?`DyOn`8Bi$$lkGR0m z?B^hX2pt->DgY65SLl;R6D-Pe?wHy$OkExt&5w4)VG=Urj z9#+en*^11dL7W=kcS4;7z`K9FtfxJ59bY z!$+q42$UFwtG+X|A?DyLniQ?4Nm`f@494-^Bnb|XEdpgulzL9G6tmDU%%L8@6QTH8 zBBmuTuydD_P(sA52!6poIs26B*h!5-w|@FUl#4(}tI}R?3@?Ed?99G_ON==)#HA2* z|LW*xf4B57^H-(D4K@U`J&96@xu>>1P*^%aIia*)P={)^CSEFd4>5cFJorr{Q9z>= z>!1Y9WFX9^je$kRrs($xW5W6v<5tcf-L_ipy>4_2@I`oQNe5%L&Y_%favcg&_aJcY zd&jY41eN`?`xj4o|3VHOa-U%Z2m68ji@_s>=o@I^?w>KC4TtRIu2Dy#}WTmmTwt=n06$7oCM z99n`JUB28VGUq|}esYK%MjJg3YpWbO4lSP;M4|Vy@rF`RdgKS@V$@VYILXy<39Lc^ zPrM>Bav+w8ihWHiV2mz_uMu)5Dje4^NS)Gs#cU-N-7b6S)I>RYhp^qU?WEe#SQ)ek zkI{*k6ykKSlIX?}LORW?Q)CecNI6eoT)4uVhWn!k+%Pf%bEYyR8|e2bs{?Y-gCWDW zgttRVvh-q*gsH5+neo-6Fv~G+llZE*59gEp*o3i6Bizi*-A@s;hhaN20yrdiw2Eqb zXY#$$?aY&fm&DL7MiYUA6JJLU3{0?kdiLVb-O}1d`L+u!@W($nOiBx+GJOc1{{S>9 zl6;M5lQf37FUIG}m*=#r+{B^ckz}ds=H8_n>T=uG=0Sahe#gfzh;VzTk8Ht8x?fpi zsAuQc<+L&`dcL~#3ZDne*6hH_lJ+Mn4jXuu1|!CFH|h^rMYAz;7IWYQF1xxmTe?OT zl84!izK)chp`o>Kx6fQc7#I<==tO*P_Fggk78Z7NIy}qt5G@0SALoxZIBt&-~)ze^LWy_q~G>Bqt-wVOsCs1-(*~g6%u;8liSs_X(mQ!4A8Q`=08r3iNjwt}IPqB^fC15gj zIC~=<6TD)0uvj$HFN1hP8g$BhDmWqVH~=-2a)|fX2!~ida7)A{v|^tWEd~R3QWX7> z(&Q;4+E^8R2qapdN@u>;^0|c@Z8`H-Halr<8Wm-Nit`S zLpUFz3j=~S+OQdP5hX*SH?tU?GL9|bzhx1m+cq$h>DFhn&(2L%Y{3l0Pk=14w}w+t*wRfwRCdQgp2OY@@vXz z?^g}qds_d7VEA?$p~lL&DWVeuN}?D*5k^$s?`>WE33Xrt!LL3yOOzz;`nq+M#}fjE zB(+WY_wLVCrg_r+1k;#p5IN|H;;^J>ShPCG?aYGhAktd@C4yau&j57Q>lim+t!&qu zI2`kGuNfkAQZ@^rg@6DSyzKlbJ8vXypf#&?uWr@61t+I;dT!_V=2qW}YJC?OF}rPt zdB;i~=U7~ebE@l_SS9xc(EzfN0XjtY$G{HDuVDydL3~m4;RdrEz+nvLNu`fv46?*y zMR5r8aG1l(Om+x?$4R<+%xn+ptr*!s)uWqB6pxN$(Dd}qncx2C0JI00Tr)uk*ufmc zV*zz-u(yhP@D%%vW#U;!;E-s2YX}y0-LHyJIz#A2)sHdg)14R5Wy8LP4{v6~mK?H~ zw6Umbd);OW4G~t!WHC&T2gmtKO$DlnxRRYpuNPlLgm`M*tX>C>fs~uy#}wU9M2P0v z1Zn>w^bfEx^>7`rN-!V5c%dvZG$}_;h}RZ1Fgk+Bq#C-;AC*E!cjK=<9ed%k>2E!_ z_R8M;(MQf_9@V_M{bHCJ^3mm2)P?5ajh0XUuIa(wL_hxr+oQi6Qa3~)MQg8|$rdAr zwwDhUy6+M)QVbk^68-*m;6*)BPsyYYt`^<*jHyl|wkqKW{ry-(>h05**o*40H&!|} ziZ8lalZOJNH{Nzpi86A3#0n-%#v(|dHoWn>kj=0+QOGI7*LMOxFdD*J2O3P`W> z@`;R43x0qIW`({B_w1|-<%>YjIfouw*DSc-2Mgmzetqw|#tbg&2#&nMQ1W(a^R3Dz z;g9&xVkzmA`S^5>64$V{%2Z+!KD-wyT_rg{K`tj<4^J!LKgXhb<0l1Rl4Z(ZDHn2y52m)DZ(Qd?q; z$Ubv5jFm3xIdgVcYo0B(-1yS+x1ZVnQAX(( zod-P@b6qb~|Kfe$!;j{a^*Nv+)YcDvRQuqk?d7Yz_=TDyoe-xh31VUMOnV?LI0%SR#06=cQgn=s^H$lu0XFxOn~*R|j)yYp_(-n~v45Re06KQEAA?~Fd# zT*{u{^6DvqEyxz^*tt_H29L4DLj3K@RKQq)!7{a<$cpq}tbTtoM4UaQuRIHggY>z1 zj%EzjP`pZ{<}B%`;|%EO{kMNGRJt>$ENm2(ZzKO--cH3tiVk{F@|YZ7>n8V}DL zz-n}A5WM?IUrInx7Cs4;B#=JEKZPrFdQ^lk-f@@#a-s90?5xs?~1CR@V zOclp1hI^A>gcOs%0_VgE=bRovqQ`_CjjB{c+-R;zJ)<&2)X8w1M~wG{E1uyqP@n6) zJWA_|?KA>^5f|WTnc$Vd&EUZBIP;FYT9tVP3y2=gevKcX$IBW6 z>_xy!Pl_%$02fi)uOOqG9}M1Y26gkc3Pn-HckmG7m$`m zYE)soaMqBcO<@nB9v~Ewf}F}3E)7iwkUL_52rEs9@$d=xQ^p*O1K`qAHV5G*!4gkl z;~-Skv`w3C!eWtNL^Xdwzcjp`4Z^Y6w-1W=E;(D7gq+Nl0y2q2u{!Jy(tmMhd05!T z*ssvn)8NqcQ0nu9hN)-7f5}cwn-kMZ{P6Klqn81($Bwl+3Y70CKv|W0PjBMoHLG8T zYM%(yVMuXQFI>8+?nCbTNM(Qt4%9&`eLzT909`A5DMZ2+QdshozDfr%zsUI5o zP!DGrU4R~~+l{{l2es%uv=eywk^j5@!}%Y!9MA8^hqRey)m2mJc4`+~YJaWP+k{BL zY(c9C@;}8QS89ll@7W)w;D=Q*K;=U|ZzX4|GHUqlt}2-!gJ!3cxLe6gA?n=L~0)neWBErtCgpG>yW7P|jr_r9*MYxKD5I6zCfgcrO{j95bBJ%Va>yB}K$az6JtJqZ_ExtAuWF zPch8{WW#QPj#Y2zCus}keByWn^@=&rH&Hw@Gm_9Tn%syB9v2B3yq%F~VMw9*u5iYI z1?fX;Fqh0;=H?@)l`GLs<}8Z!8oLeiVkQC{>tgN2Ue`OWwl1;qdAdtY=PRx*qpMGE zMpH0ow7>@jz=VoV78rp?83@L*iU3cD(3(gZ^L_iIOQf9u+B(r)L9i@nX*jCE&<4;W zlfnlm4fjLLtbk0X`ps^_$Fl&r5|`#$)bp)kDdvxBeV2BRuU681pZ(;7^oe5wNNz

    ACkLgxZ*CI=$@vfety1A?oYSSJm@qOk&@ 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ⅇ`ykePu*$F6#n@6$H(Y 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

    F1`ZHcp1o8fhJtpV zQe2-dDAUd(=yE_+7!}@p>wu6HO<-Jpeip5mk)8=ZY}7=I3O|;jr+b$FmIQwLjj z4%B9kwR@**Q3x3}{*0`>4-tJZV$@FKHk%-)48Vj#N8nE{HSwIWsn;t23ilcz){ zV@&T}*eSWGTG!~`+{HYJ2Sn|_iRwVTmJ6LGD;R>0TO%JKiq@?R6y6*A&cm@E!c#vQ z`r+^9{_2k(?D^`>K5cLjsoPG?fz;vQ3T}p?iJbR$I=C)4@H%)5PaWbKwsS zpaVqPFOPYvH+3-b)wjZrp7A{0yP7^MVp<-no!4eKQnZOmP#WblmY*iZcyfNs!B%j> ze4E8=?nH?pnNj$OI?(PCR#Rm*H-m&5P0gf`<(*B^eAn5X={uq)@C)>5)m3U4+IWlE zfsUH*p^u9U+*LTEZU<#B}HEXz~?qxx2hhuEqF1+s!(QiX#{r56fGIHLxK)?WH& zw~N^xgR@>fz{LkdgCkOJpM$26Xb5tF2!9xw(x=%UN4aWwI}BSjM-#!1xZuIK%nlA! z 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%0DTDY=EgvcBtanx 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

    {0rEkcLbGSE=*BV!YzW+EUA z7Z))xzjoXftd>}}^6&y2^75*}*YG(|mJya)k{jwElM}%(T2S^=Cm;{HELeaE4u1(9 zmH8hs0;vxQZ80T@<_a~DlfD4bTJq4=9A)CNL1T%M7SrWm0T&f>6vw0V_5$KbB}Z2L zI1E=IX%z&Dmp7ENUDn3Q1^`!hx)GY?cdL%wp~&wW)6e#X-r-zDh9nt893~!8fY9N) zL7}Cl$2nQI-!ROkn(O3~&~uMV&sDNVHCxBd=~MNdHbOiepFI5R#r~Zat$VMH7`*|t zh0ZB60x<1jp>`s?_cEoc7;_w?&2x97r=_ZiPFpGd@YtAL$uq|;K{bOGYvY$O0M||y z)blpIk4}LA{EOa4(lvX*nBiJPNys`N1vhQ!ox|(2uvNlGfn50G_WO^5SJQroJ^_6i z^NCb;+Ce*WTF;ze9u&Nb%_z@fz|26^njFZAr$tzM`Xg{MQpX(e>9#&&&`MNeW5Uet zNlM1ATRvk;t$R*s{X>l0wOf|@<`Uu!c6M#J8-qEoOzlo)|Gja5l5Sj1Fr5aB=?_x(G;N z3hsvpH=Pe0=miC%Lk85win|0(6g06VI1zM@Y;Q8y5-|E9w0NaYWEN zHQ_{j_uPgMc~Zr~T#fjjG;+PPC=4})HNhpFEG)vPnTui&%6{Fks+_~xGh+CA7$oF> zo0ZOp#weJH1UU0ZgX0N!PA=Ri046&=8b74Vz^xJ!dQc<+j#R^-o?k}dt_3d3I_8;? zqmRb4(Jmvf{25Y$bn4&T0HByp}`*7g1o!8dNt>@97D{WJx?yKhu^$YX6 z!|zw!cY(0Di$%+g0KjKw&X=H3&YuXFhD#50NoN){ugDQ4$f8gmJN+c|-LL1r{Ve&t zAKm_6lr=2aNTKv6DAObf2WzTGI}#SH zZ=QWzOJ6P*-g!9j=l@Ue3w=HN_{~EcEb1kT^qZu65Jh9(Mue#hwUw7oK=&{&3Go^s z=UfP4I7Ea2ta31(a=%l{m`*hOSU$Phh@KoWt5DT({z4wBZMydO!D z95R?bfJZpc;0vI%>=ZiWcIV!!=I;S(*Gy-suH#Bef%XTzm+m>iqx5;s(v;Q<&&VZ3 zxg;NBsu7#hy>xoAn{!ElS-GgJlC%Ub-O~gYAizd6!sf#N1ZXRPNs3x2<*NNRAb0p8jL}gRLo!Sb9Co=G(`MbaO2&n(V5T6)l$5iNmc+f78UdD(MVMNd zf>kPm@u{JMB1f8t#UaqMaU^-%<7CFFT{C(IbU8Vqq=>|f9^}M8E}Z9%Mk%M6X$j|p zauJ3v@J^<=*pi|EqdG7xk%n#*<`|hFHMl`YuVtZTkaGf7)5{5!DX0bQmc)0A;ZP=$ zomv)NUapul0{#O#^~X^E403)w(RGlbffS=zfzJmO5#Dq`}(%~2iO&%OYjovYc_o?s;>hJ zj|<=o9U1k)G7tw>em(#B?~W+_7k|C@Ey;?vd8llV06-R1{Hkv5U%C|e^&CgUf-R5+ zCYpJyvZRO*kAPoHYQE7edyPSq#=)kNwppo(Ay+8x1r%j_E!QOy$GN1%w~+k7tCruP zv~&o?Ba?%?^}(Tf@YGJriRy9SDVN?`s-2<8#zBRRIAZvs?I-{lQ^z2rI3l!RZgA6q zk8=REEy~F;>8$b06C_wZ?5Lj#k7r%J#h25pY9A)~VNze31YCQ*<k5iH498RGDI0Zp35doTD z8zr>~&5U?9hf_vxkb*fGVC*=IXbvLH60s0M0&Le10sKo8s}%el-w}zITw$Uo=SXJ- zfRvFWQV?vIBj$m$1mwbwQT+q=BpQIII=seeERv^Ox7bYJCgKV76?(B3yzU?a))e3n z5Y>vfbV-+@c$Wq`?l{noD84g!O5s^3f(J$>`ZbDl1hD~oHxn}PXz-p;2`mf1Q>21~ zxywWVLuMeW>)0&KSpwtGXvv})Pali}I#HSf;v_X32a{PcLdi>%jXpfuh!5(~Zi(U? zbIFlN7#cqs+YJ$Fllk(MtM$dpdbdwGi|Lr;1bf3SvWI(;R&HS!CBj8%2DFNV$qq0}ObT(Je8te*(xr%bllfe> z`!FvrHO=D0lutNG3W@~D(v{G>aQW(a%SdN}-y{M$M-U>S9a+6OC6E}&Rg&hwXIY@h zPGmx%=C|M`k78C_D!_ComjYb48&${M$Elx{BkzcogUy|aOb!J6GWHQsiF0}oG+`=1 z_oIBPSx@hd9NMwH_$>K-C3?0RKc)rS>s=ic%TdEIq>c1YGKEWmN?f|YNG%pQH@EOG z4H1Cw>^t-uI%H6xU)9?!K@$VS>-7nVL!)t@zu_FhCUam0BMqYBfXx@$*WJTcskZX1 z;ap49&)BqfD*Tp+KCYZzRtHwL7hi6~hictzSh-bFcBv5@_R6nE-qs~NBgZU~07hcI zdaY}kmQ0yoL%g;@32HzXAMuesivJzH!{~*AL`&}$l}MNvXN;DPa`fG@`yIS*7<;9a z9<|J}Wb^Ki9!A%JO6|`z3!CX-}W>L;bASc5lsi$JU9SbQJd#k4yljva|gE0|p z0AqtAq75w>J(7`*V@~avXC8+Cg;lQ{EhuLI8|SoqyE<_mVh)20RUmr*%vayLsdt9< z6R+xB(8`H#^53ZyPSU(44nYFADDpOM4bwP90JKDc7sqj3+NM0LzLtt+9GJt zLKsXtq09z+=@|}BPVxi|Q{}@R4Fqn08oeL5Ri$Zm{L{IA&Y70WdeZ?tT?Vj=*6ZHqPs(rA16PIc2FuYjC{ zj32x~b5rEfNFbYAf@)E z%$9n8QSF@FK64l4BsqIjttqYKjAiK<+V1_}Y1fbVC>RvU)Dp^->k0WK5kLf$2pQxQ za~XCpEC6ngd{%+vWBYfjJ*|7uSAG@!&0nW~@7dME9I!|-gfPuS>#ozd5i7o<`)AH8 zEj9#Hm3t#Jju|USJ$&&X0K$eYg1X_jy2)kaRwpj+Ub$DFyssZMM?n*A=i z0%9liWs|Z-ro=_1y&sg4KSGW;^0x`k;h(6R=2NNV8Y4g^iL(QMh__V)46zK+&5apG zeJ|b9O{bO1=#7gB)CR~*HX1H4A{WMKPp+L?M5m;$1q?GkT?U*7?p1JxLaNpw$O(pG zgEb^c*U=S4!6kN+&Yn1nwj1e{`bOvaFgqtDWbCNsRfW0+?*B z2|I=nIvj;15A#Jg2NIAFD}|UNye8s`8YN0)%vczcSqK_5nxkTdTb_^*>8rYyKK)Qj_ykq#NholA=BDB(o}Ari?FBk%_e zKe?Eo-_%so7Y`$q<~4tsg-*#0fd>}fT54HqgpSi%zJiU;nCOi4C! zs92A^DUx{G*zV?0JVbJUWc-3B$k0Md7YW8p?AUe3srA8<`SA7EE3f<2o@JydUtIk* zHb!JHVyBJ!jRhyxS}_Sm$rlpu0Q4)fC5Hg|f6?)Rl~HLyNDiTww6Dr7%%lWyUot!t z6L7wHbLsw@9a@1veiktljEK*%C{m5YlpdA9w*d6I$S1h0;Q@79H|zsGWn{hT z_?4RX_I}4H@iX$3lvXU${xmDR>&=CcRjbiY?2#gfa-^iI|(x7sk_X~Q6nFLb+ zIW0jt5tuWjeO2Oypg5sZi*9_fEHy^|1bIYsiV3AF01<&&$hNb1ZyBMr(UofJ21U=0 zZoT^K{Z4Idw0@~qxkh`kO_cKlb|KTX|Ig8G9RGrhxV8)`Wtp!+CA#Nu6f!v&BiP}| zSAl?T>XhQdyd;6+WFU+uMTao5TvM?Ra|kl@f)Rb^k5#yX8m4E)gj` zzW>IJ~?XZe5wR_>4S8kI=g?C2lAEdlS`p#@X`fTW&U0nSr zG^82R;7I4c@uZoqwaa005{U8PW<)Y1@;@YD2#|O-M5Ky&6CmAT^hOX_i9yLieli^j zE6}4P%rqP1{iI${-^Rr)LzjntP{pGr;-G-CM1x_0V8Gs3I-2UiBJ@&pXO+lfXz5CK28lk(Yp;oR(aCG6iiS}l@vWK z0yF-0IWdb&%PL0T;3)GZ)xIiQRQbp+w<{hs<+^uq|wF->st#H)dO zQj|R9(U+`G-a7U0gX8t-mIgsvg%TMZMq)|W)f^;s9IXz*34}d{6$BtldxFeYPV&r! zwlfAKX#_r9+YE50ATS02XrgxDt2Ct05-2e#s6CMnHHuSm0l@-OUP+u+#Lq`$q_|%B z(0G2P<--XQrc~e`aR_RykP|lO16-S<0Zyg1iVAKch=7Z(x2l|th8OhCXO0#TewsoN` z`~?n7!oGm)w9evw+fBao>U!(`>Mw=p0m&!w55;5G}A?y z(4ek}Mj3_{_ZkCv{zdMT02>@3W^4r1!BYZ@BAVL-z?Oe!_oM@nf>f6MaS8pHMXcUb zJ0rZzjFU853*4nQp+0^ZDU?(oaRQ8cj71VEBspCEs^l01;!N+d%qGGISft5K^@0qz z*b9Us=Aa8q(ZUHr1#~9sBq<7UKAAk#gxU&=TfkWH@k-K;iYRf{^Z{^$;Txb3P3xEd zKT(D@tGzd$p1NOm+-ejju%sP~(T*+hA;A-Ta2)9WgM_~wcx{4=(GcOlO`qEve`SCC zwcXAmUkv}=e>?Uc|M}%Zd#~8{UYmt^G%SN!prf35{p+(osCKkTkfwJE#9m)^X#K+^ zu<2{A^1WH+cC@>cmhSw>zWZTu=gM2gVqPC#`#bYLe*Wzn4YP&LFMXW^fI!`I=Bt+H z>*t4QF(%=V0J^3WBml}puV2GEXL$OF>;PqzwTtz3jEY!b2cSQez7aYrfser3)eA13 zc8)dHIwQTJuNCSOXV3^C5u}wvEU}DL&aiG-;%%ky!Z0zx%BrZgW@{(hOrh$QP2HHT z-Lk1uoic&slY9}FYlwy*jaS+?0c=0`Y2dgnT zKg4+Q$$)=i;|=qa>N)t_7%(+XPw;KgvIamhu^yyFCq@V!lQWkHNSBQ)IAY@9^$-FL z3HQo&MtJNf`2%FnW+4lt+0cf51GW)r&q|>W8w6`e<-!H6oxcE$PE=A#GZCgpa=nB= zXDs2i;%QHZ8Z!>54Mhg+>pdmb5J~jKZ)Il^ z2rIqolnkO(K>IDrNVEe0M?xC_|3PTE^@5POhzyz2sKoU%fe59}x(dg{ILeEIJHSms z1)a+*3qie$cOeb;q>uKKcO-c)h`J#zxq`#ok_4xqB@pSa$Ts{4yeYRLq#{OCF9m|4 za>u@hs5M#C)}1&Fkz_aK&%9_rkJ^c1){ZzPaxh~?I@m?mJTH%%`Lx89JeuGaYAm$?xzFMa^UG+IKOMN&CNZ^+^ zUyyv-mZ$KxVCzPjJBC|IQb1b=p1jyq8#)UMW{k{YZ+x8pE((x?aVig-#&Ur87iFbO znP~a{b7?&A4swwZKs|yRE-$z=weR^+zCro);7Sq+y|{>Gi8~$Jl#!nYd#A4{ z7iN@I+{AR4(px=3q^JD-i%jEW8!|2XNiURrb`n&Oy&hbhxVezv)y^%(W?>8qCa@Y9 zL$-1`jm?B8a=S5F5F5fd92OC{EhL?ZXbCu+=?Hef7V$pD@Y^<>0vOqB_%y|mfWQMk zIDSK>pbU??Qyp5T9fR^CvA2Y1IT^vTpoFgzJOxLCPJp#Y=_S!L`s}@qum61bo1YC= zF1OYeTg7R`TaQZI>qWw($Ja#T1bIqFOt@e~7KJ+lbwr9xK!gPQ#N@qzp^J%+j2{+# zCNe5{Zi69`NYTTW@AMd@AtS^M?xWgFmL`Y5aSa#8S6&iFdD-nFB&6YItevvUt~A4_ zOh>Tf{^{N>CEHSWo;lz^V9_2Zp~HW8{DbX78&KQo#)vrdU6cEn*D8r4+F%b5oak)r z5!Q-Y^3JpPk2wt>ZUmxa>_J`Q@z<^AG*_qQ?ob_Vb=z6u!GG!gzrKFy_%|AAV;(k2cuy*Q z^`%j5&9+}SEMdju-BFR?0!JkYAEJtHB~T7P)$#I5RkQ;xfWkpcUZ{x(X~!Xg zXb{UxSmJ;PRl{OWMwzu4`$J_j^t}b&2ddgQ>xQx9ASg_hEC9W5TF6bX>(I238`R@$ zoh~_D$4HK)y32atwKV%j(ENLWujT5`huLJM-#JG631Z{;!6bqipp^+RP-pm&lgNGL zfK9oZKE&qPo1B#30-k3c1Gp-V`s`d|9)QAcOw3FE65bYazp2P1oHGkrD<`l#RFM+N zEow`kb^<#mdby$m=w&WKO^W%2MsF$di}EV%UB0c(uh%ZNX`L)VV^W#d7uPP31I84` z%|hQXey(9U-I_h={D5J-E3CHAbm^#{1{p)~LOQPB7%qveDY~XCZcrhLqE&iZN~7EB zhaN9~52qM9WRm)nm34#0_CTMYI=(oe`hwd)k<+q=WGl(sMFas?BzH#)(2}(mZ46L= zARDkG%-hK@@vve<3Ma9Yf=f4ia)F|9K^4ZMD>P6%U%fR?xQa2zYs;uM$?xB!S`hM) zQHV{{aDi7B^4YKl}Fh|n=kTgU(F@4fiN zx6kjtZh`^>tUw4vnLGCm;vB|TehMaY(G$j|V3X&{dL4p?jDLBoir|MS{Xbso6Gov_J**;Q_EjwFL@{)fK#jCzk4M>fmA9BM=P& zN#)U7hQt946D{OsUg?~FeEMBVIu!poq1)044xF0hw5X(#rTw1cxIvkhC_rS_6X?Sf z*SiqgLqnrSV$)<+u{SkiD4n7W-z<4_Y>0Y(T?EfbFUkD%;Va}+@N!9YuLYHtMEGjf zb>;l5G2k+$hO5`R$>PvE+4=z}eAN?E)W3o()jY?a4ZMg21MZbZV8K^0`hhrsESWf_ z;50$E@RIPCi4b$m^G4wpDm9TbBQuDW^pSZ|WF?9@#K3RUM+N|z&>2eJ5h5Ik2?cj* zhR33N4AZ#)p2j&zMO||y0m{QML2@9RChQdf7vX6wyMe8n@k2ZU5b;FVWmYL`K(5os znZW28IXW_=6jG*24<*I?3j-%qpcyuhYlS79wTQp1VH?4!KxRc_i0^cg-3@96HIaOG zXtU`)h!26@pf0AFU1r5xytdiR$PMm?z?c{u*xQ2)Y*eJ)wGQBk&T4P${YRlc<=PSs z-BXknCn|a=opf8#T{EpIzO%Bu5|INPjaNX2W zySQ0t*{a!21G86xum8j3e`th9q-BE+`enNrYNFOD2y}r3f90V3fu}s>g)zx`@ zYMF0Ync7k_SCoOxZQrMeb;}FK)$!J6r;hK8ye$6Bks@L8#2g7J$q`o|#0;$6HKjXB=f_<~J!I3u(+# zxP#3ZttmNm7Oc&L0wG`kkE)&Ftfq?2Cj_M*761e$1=(5GO@*9EvaeQ{0Sz3{7}&Xby280EpVPAjG93 zDBVm!k2carE-NRkF)$%|RH~>+Ln7E|-* z<^JN=upts4Gck@Ef>l)5aP(&A|54V#d`YlBSXNfh6-F{NY@K z6%g$)u%|1DHjl&@TCK_a=XH=F0ik{b9!i9ZTpXZVtPcnDznBQW#fjq;TPOwG5?jZG zn-GIfjHMMIo#O~+U!swkZ_JKqTb!RuGFWDHN^{4PjC{1-$V zAlgyFH@Q1@Y(M(B@8^QahaE`B)W~`Emq&p=+6}%09ngpkN^WX8&cpxf`EOxl_-g%+ z!2gM#MY^EPEE(BleSTKk$f$))tgQH~ch8>YTVQyrcdj)?DX!%Jq}d_EY^;u5(Jqk( z1wbJMQs7!h#LMmnG<2h=;iQtGm#UEoJ|YUd2o>k3G?61(d2^)}IsUZo1-+Zy4IUpL zB`(9jgk@*xRi+3;W!xIZ^cUdlZwQWKlnp65WB}Iy&v}8$N zk7}0_)k~Y0{$Bh9CWx?qB{xwEkv* z`O)rpC0x$n`bmP=umqW*r#A#lW8{ zc|H?@%!_3sj7WY&$bH1XQ8t(l23+r57Jn>(*orjOT`+9dlc9U@u0 zUm*dQ5JHAGRsg6mUL3|w;M{+o@mw7zUUe*e?jk$?>`t)Ak5mBwA zSY%=t@sykR>EL~6L7F6}Q}NxXO`ImLfUp#>cYSsqB22gRqUwZ*R3qoeVURN1DW4#g zBxepx)Xq$Q{p#C~J3rwKRhN2|MpSfJNxHvibnUyjMf9qLCO|LX;e~ntt4Dg zr|yOQCl#kDcJhkf8H<^lL@%gJ?tQlM2&I!0Tc}sP#zGPQn!Y-w&kpRazW#Lcl>_nH zW(9snfuHcn0M9xg#lAf4;{_;&I74S-_~#cmk{sF~;mRbv^KQ8=NsEdS3Ti=YFNbY1 zCWlGX+{juap@`-$E7m{GA2*OJKq8F4(9`JfK_`;tI}E(c*(+}f?OkN`W9j9C z{r^~c@8`JhGtcvHxclL@?)Iv-YWH?_x6b34vB%apD^LQ+fxCrpw$=6Q8;6L}JX2V4Wj zC}@}%lX+CYkU=vVIbAV==rQKVe>&zEgsQ>&pTz!;vi~iiiVzKwg<|7K0iWsr6XXcY zOL#scJ3RiU=D+#a@r51BiyycD%|HD0bNekcpEic@mO!QBvP{2_P_a(=qjFJk@z8KV zw6ezz6v>{rmwp*!o-GX2jzeBtx*;3qaNQ1FW!LjP{HqPZ1TuDgGipqs4jrlohj0S`~R5oKG+R5SMu3qF>8$?=Fu6e@lSW`mvf2j$M&s*R2V zUh46x`9ghkgmNXOh0jc1tM#`U{eC`Ds4?(=tpzjy3_qtf+kpa%-iD+q1W$ycttdDi zG(Gl~2s^LDHu7&#I#&+PuI)VM=lGQ`u3x4O#$BSc2=fOjMDzA&=IgwS;3``00B?a| zT_6SV@wFF!fAtyOO@08hro!-!+0j^Xtw>ye4I!CCE=zwadOvw9!M9Tq);+>+M`wi4 zb^;d<%w?82$DSm;UP8i~qylXaB8gZ#H~A(2jy|dIkw!qV?}#`fsY^XCP%r z)~XG()B@+}kE_oTiav30VUs{7JVa!1=*30Fce`Fnf8F2fb%EDIZ6#TYS9o z+#jaDq?S62NIwTGet*f3MErnwY%H$1Hl^3qKR|Z6=DgDI#!^>=9n33q{AfgXcVk;4 ztxNArAoUmiv;aylO-PGj>&F~T)|pmZM*LYl z`In@KCUVG$1mCLNvOoT@@9_uykALiV{Nwb~A9yRTkMF!c{qSeWgSP{_?-xG%>F_7N zux-C}l@L^^*j~m=!FbFg7nZdbOLA%g`T&NV-BTi+aXj&9Co`=496l8H-~_1;kBPRY zhn-PQW4vk7oJ+2P&59#NWRN4mxIsKg{M|TdqI_Sl@RNXqtUT0O@rA+y@ce7eHaICU z_7V|~^pt?XAu_sYKjCv`DDp#l3DP?Og6AO+9z7>Z0W&|vub>Age5f21CYQU9)=20% zQmLomnt34Mxd`wCG(g5cHlt)>>xD&`{ruD=7f9HXL{{u1^uWS~C*As-iG(!XBeo~@ zHR7y^so|ZK4q~jA{CMz2yAqUYYE~T zM_v+jZkW43Bzy>jxY3{kn4@6E6C#)wx6VXLy)LmHB<2}O6CTFuCxI`LJzMt=N*OeI@67m<{5SWPPww7td9wU`<&Mc%jY!bJ z%A9f&VnrxCwb^}eJWJkG?IM-6yzd@8y21QI4{zn#x)k4}N!Hy!$StA4SwHbj^~j90 zAh}c3b5mHHxhnNYubh^+xj7 z55BD2NRaiXY|Yh6neEuO^zj~~K9ZDJputTF3wUPmbMa{~Cx`?KJa9h34$k+eE-k8? zMQtnb`28y%{W5g$z*1YhqO2`fUvoTi|K#W0AETxNIRR3jbgy>HTDjIiEZe`{f96*= zKKJzIiKh>mjHzKc7=``JfaG%q>V9$zINk}Uj8|_C=xdByIrvQ)y_F43NwUah)V#bh~j41gnJhc2HSxPf$*yK&bLoLSwCewI9&-Q?FBMKGQAu1q{ z78@Of6BrHXS=j4)Q;tXMDh1caZ@%!+caBj>U%78pZv^V|X=9dmJVq%bxC9LR~m-Rx7hM(F^;OC@Pwyx@seMlV9qp=${%#xpKyY_wfa z-e-^1hYFREyN{k-`{>K-G|ueiUnI^NmCM2WNuDU>h6mI_&#V#IjsJxx0~*!E*MnCg zO#HP~^S5fgR<;1u+d{|ClhJSei{(E&ihmW_LhUHQFO*NssLdpOrxFOsH~ZxO~1#=`^9KCJ;#;PFS9) zEL|=7it8}NCrLNDOAfkVLX?oBOF9AOR+muK2oXW^KsJ)p8UhOt!DmBmN>;$(xL4Q~ zTJ6~D^P=|?;~0kAz6Qsd;_rz_ej2_%l;Js=r1JGaUp;D(Brz(nILgvajL)LSkVFw2 ze^$AAiZ;yG5?NEA+?gI0xF__S=!k+6JxbLq!bPO-5H7S5^FZQ0W?r2lx}PSv0G&$U z9z^KV)=G+<sL8UBo6Q=praLQvI1aBwp_34&LU zW!aMw+apH!d3v`!`pEL$`KttoF&zo9o91F#Fs7%pO+PJBYUT#%e?-fQVWDT7FdU;V zA`&1*HRm|K3}YA$y1@~UOCJVe!lAr^a)}%dHFo2`|IWkc&&WCuQ-%jn3&5Yz+AD%# zC?vcIqa+czsX#?q@1UL8F!{?Pr|S_?L_B&A&>1iVol}_f&44p}UqUoMeDhR*m=WdLkEN6e z6Elbh^4*x_U0}P!5CIrIMV1$!v_ZNo4VX!bQ5@PS9zhXdBne%K(V56KElCu9vbpf` z&_zX58jp~N4kkov^p6lt51EdkL+M_X9v=u739gB&@#~~rDT^IKV?kaJ59Ragy%QX& zB>mEef zG;#CEfah?ta|bbjOSUt`UWX2@OPo^^x^E54mf;+cUhM+Guu`TYvWK9hx_oJ8>jYX& zt_&o;hJ6uHJ)G&sZ@lo~`!A|j@bm>lBkHn?CY(eyNDXQYkx@B`vUE!Q1aQ-Im|R@m zGO!i0gGjc3lRc~vX~*F@@adN z23Sz3q64uI6}M#mAYc~1Rg_9)1RKtBn3QH(d$P1zXhSQsK1s-i3!|uX3u3-Q$f~c{ z5bfjakTgY~SJI+v>*5PQTtt{v!d-LRQO%olTvC2#xR+29p{QYy;NFz{PomhEfxQuW zz5w3!;Q{ef4o9n(`#=3^pVmEjkbLErTmSx@xBln-{Ly-Lpmu|KBc)Q3?&~2SqTG2w z@m?SkK##2J&Q95wqLU2y5}^Pa!v00$*yM_+p~mk#y>q|(hEtzfMySl5xbwpJUenE5 z^HQy&XLsVoo!Ij{%p^G*CW2C_<>CdGv?Ziv9AEficzSgYrJ_))^d?V0FaaSVOoiyt z-JRkbpMxVv$jd$e$PgEYBViH9!buvBgh}lay2Ks8fLSjRRBl2qrw(qQ^dRqr*jv^s z(xj#Lmh=EhQF}6?wd+UvmE!8h!&}c&jWPe|C+W&vGb6MZNv0;tZxWeq+D{+lu7|h6 zrTE88oH<;?012*aikxH|)fVPO;z*Y+;x2~+xejBJZk|)xfosrz5;+S>KPCGhcQG6m zBoTZxURMbv#u$!dh^rRA6=}Mx71S#)NHZPhHrlq~Ea$vovLU*VaCKa?G#wYia!!)l z#=`3bdxx>IWAhZuA&u~9NQvJ*%reZo53_V+r=+(Xu@I>mQJe4`5&kE_eBe?^EpW2i zk|BfUL45iF^6MZqLV{;vCSqVCxz4{}43Ng$pn$VDwn#^(z>C`-ehM8Ox4^g*ZIcR4 zrWX2G{sudyPCOkf?98iFJ8{&zux1lhre4d6-!|_c4UY>{s<9_Myv3~c}r))~*#(wc_9Ck|j#>3oCe-ru@ z3DRU1)k9|33iz*&!hgBvf2r=H!eD^V0A+BqGJR(M%K2*GY;EEK{nY3dc#Fx@q9KB8 z4b-_5)(E!D44?CECuKR|g4atDK#!hZa9R`-5M9@!q3X2_Iw9AZ*Y^&Qh(=w6}Ep zpYDBbZ{-9((&Hamo_^1K@L=qZS+ZsPZ2gjy9-B0hOZCZ#+Refre%@2QKlrDdPh5vs zDFymi#IhFYZsLzhsn#>Auv)+ao-Qt0u&%T zAXNr;102>=)L7vGCQvShd`miCW&nq=LWAAmh!+h!OF`|*QhDvR?ECr2%H&;jY2~vA zuRgwge1G$9?e@fBNqoxUKg}ag3i4!XrhfI3d;irrv~YO7uy!g46(dO$rB`Qsq>q^_WhZbYLjgp=a+?S!@S;C0`--!0xo(Q zFv+w;)WJB%;EnH9(laQW#mdUN%o4{|g$!d{Pps>KHALy#r!IZ;+^J8V8Q6Q#RXsOS zyD&oRr=&P~i2w?tTI9qNfh(yR1O+3rPr78NMpZR}mIG~h02L59GeYH44S?QnnDfmE zR49E4PzF;;mUJmS$4)C)0XR9&Ff1+TA~QDV5XuvhqrhR3a(Aa_F&hGxsHfRI8IPS( zzsUXwV#ysu?l-ZY0av|f#mgo@w9hVdFdBXwf^0pJfJFM^LWS`UL8^v8!UdFwqp=@n zx-({xVFQRo@p=%j!%-j;*R_Ol!>?_{)a!CYb2o9F@ksN{ic11T)(B&{_>Sdj#@$Sg zrDqv9i(^*V0;2I5%L#Rrv^t;k6#Egj;id_o?WX{d_~N>I7IwZq$Y2J%43$5ow$F&2 zVVsXQEt5h^gU&3}7FAnD zjc&ZF{5qm&6_ zG^a3^I_q}kJunuI9getP?C7+&V82AQGt#p$IuVpqf?pU8o;D*7Z2@b*wsUPmI}2dV(PF znwXQ^JF>;tk_}xk9&q~da{AnyzMj@L@=BrUFhO)MsT6pYrEiWY6!!-gHvkK5#pMU# z{TmmFOvI>L?z$}^c|aJ4n~~(04=<+J zaO9n}I_qY_RDo*mphJe|(Ow|b4Sc?{0@o~q8f zCzc39A%RM6iU<9Oe=2;NPKln9qtB^ASNcL%7MHAR%_)aOG5yRNE-3KM9hR z+r$@?83R=_kzDk`(45XGk;8R3&-IES1ww%#5OE;)kwiZQeR5Qy@nb0nO&g0gcotbz zoTLJ#^g^%9vC!g#kHH>BQVibmF32dDu16OT-*OOXrX{Akx?`5nmuXySo{_atnM$`kLZTYCE9ld5U;pzF>b+JB-tuM&_Y^9JH-JYTLc zN_iUnzrL#HjLiR-(T41ZZT31&S1%22o4=!GntxyVtM6a=pMH7kKkmIXfAF@uI&sb@ znGv(?B%iB>PJ_LuGi%0js1`VfnT4KTlwjaOm?8<-m-RL}#qPFOc(*cq7eC9PC0M(F z?-ejJR6aGkeT=2X_ps^3>d=Myj7^DM5DTz-S{hfgJ~Ftlic1cdiCN2!K=CjmI2(gs zJz&-cNq)n_8%F;l0y&}pXrSW=B5sjKjwsr zPFNe@6t$TcXAg0#nqy03C+=X)M{a7KH&<;zY~QbUj_)?#E1v+OA2DX>i35mH{#Mv4(lKwfyax?@y}x9|DhKb#mBjyq&yTog{$O1&dj15-D+1jRA= z`os`-BHk9L2Yt|j&PUviC>~*QZN&RDTvz!VC1NtTrYD#Kjb)~NUUUAXq!7gEDPUV+ z{U=2P1pi|Y6KS$Zt9K`BuO-#_PVouip+obN zu?XHM9y*r&oKU^M{+YPk3;9lTXtcILz~Rv0twB+&72Aaw0SU>umGSFp_6nd=Eq{C0 z`TmEFf0SRr13+p44c5IKe~5kIN$?xeZDAvV##%e?{N%4gdzUX%?Pp;b^h8I+bYAZU z;0>sKG$0h}i2(#QoLa(Q4#kzVUbVEbe|A$J9K>u=IX5fHMpN#f>n;Eh#F^I3jYej8 z5{+4{X-exJlF!^V!+kAVa~8i(sr=@|lOGi8lawF~KAiiSl5fJqq$OI2^^;i3bX3c3 zk@!UN>fWs;@C{=j{hK>q+}?bJ4^6$|)UJdCSESftg8vd1|2xL00*`A!tR*?L^y9$G z`ozl9>u-Jf-s|Q2Qi!12x<0df1rkIV*f{9Buk@_%oVxbwSO0E*-~mxr=*n0aNkc6M zj(5@YXeZWY_D@seKr2%?VC@&y-9ml<&D^r@2siIi2A0rMBCHX zPLusuIi1tmJhk)w${9=f0_h)a40_cw0fJs@=YtQwKBr!G5!s46Sn2MOOkgu(kFPd( zSsm$+y`G2wG!-z9t`HCzSLA-?T_tmCx9MEvETRj$bO2G(M*vPzYMKuw-l}C^69xyX z5oH1R8l>~lS_z(1+?P~$3kiW0=jk2)^S?`dp4<{4FA#-de`A^&o8~i->8l?N3`-v( zdCt{@} zg$hgR0Kl(e0J#nC0NDsB00b1OGU0gH_y9=BI^dunPj983n+29Uj5e}56FJ&4}w&33cCcjf!jUe!&*oJiS*v0I`Cpbo0M(qv-KnS&FL{l`J+ETyN-^F@rD*AxcaUcG}p-(N|yyib>Xl zll+GqLpvWxeKw98T1#%R%wnwt$fdE=@GlBwIS_~7rlC(6xN>lQQ)qgpO>M?sLvS=A ze?ReY5?{b+>_Ga0o)G;HnLjhcEXaxH%mD;}FcZ}UzNh8aA%Gr5eyaEy_&@VM;iAsQ zR5nVs62B2k4Yw*e*u*0YJ!*UYzgqs+pKbixs{c&6_Z&>O;Uo-gj1(7rU>NpRFn_}9 z_%(e&eZYbimloQ()k5BT&C~*wgQt=MoO2%IKdMDN*|k4^0;?U-j=r?S(9!!!3)(n0+LKOn2vd@kc*)DC(UzlCqu>Vd00SYk*PqS}-McOsV!gwLZ}n;F2e3=! z^@~s6ZBwrW)#)pkanKP#Vbt8`e}CbtPfwpU`mLCfYAyZx-~h%zURdrv(b#bK^pA_u zDaBIU$Vnq}dxTQ&sroRgY-!~XtHS7H-6MW9PB5NKV`xT50l!qT%DL_L>HX9D?sqGN z`>F|5TO1#HdFB)V2pns90ebB@$W0Y-2^$MB*O->0q817Kq#OATSW)jDJ`VKX;bS z*?Mk}0}bm6gI0YG3L8cYLRqFDQ9t^p>fjq*zuG;gwIK;0xrO|YlB{gB)S>=$E(%%_ zCh$DXY>bFP>%raJI7vz)GDVcw>8!{>L9uX1Ns{CsDJUh?eSO>U{ilQ9g-hktBH&A0a1@Xr`B9~ZvyPgno*FaPcvl{Z7RViN(> zwW$lZO^s;(y@B!JO%Fd>>l{3e`c$vLAhL`pe~m~LN2eaC_z-zhQpgBdMy zwRU~LNcK_|e zKl@;-dZ)Ov`0{@4m@?JEiYlo=c<>`v2-N`t;TJK+7YX|2<~0gKI91tsjbJbDzR@q9 zaTGGO@rzOk=Rlz(fR%KlPC&AAt(YaT!B5#ihLZ=hoPQRpj_5;7oa97aLn)G$kkk4X z_<ogoo-)fXTH(b1u6Wp{9kET=RsAA)zX zcF}^toO*OfNy$e=!$03I>2O#l;5y;vh8x47Ev-#;LJ-g=E2&&KI%&yC7s%4AuC_?* zb~>iTw$LHt%0b9V1j?`dzn0KlY8_lA&C?F=|H;^2Kk);qbdz0A#O_|ti6<|$J^f~u z95c0JxYpZ_$Ck%iq#Zdi2N7Ui&w;(L$i%^owGz+#Wf8cd9*kP0fZl_eg}EhPK2P{e zp3-V8{A>h7BdX1)e8Ft<0`55$NW&xDi&DJuJn)VUo0w+qr!w-ud7S!YFiFEhf=WmN zX^9OVO+3Byfcdk0v$Gnx|Iy8_{pZRnDypsD>GEm5MeKl=8gz)yEtAMC$OX(`8) zuj)MWJL~63z|hm3wVM`WHLTB&X*^oHI#9lAGFGIJi)CLMC#GPsd}cszkLsQ2`i%eS zcTIcmkU}#?8KtDAOtWs2owXwJ_(T*ruC}=J=-QFpjgwOUU1aQ!b53HAIV_5Zk%2^T z&T+HkmN3%eIKWtnrG>H#0-ycFcT-}HLmbl?a}JX*@&iJ=u{pCO;_yPDK~@!bED@}e zMvR}?2I6X%5$Lk8V59ERTL%%($Tus~8Ioa`5yu zkG3`?eM!rS+SU2WoyGEl;PwZez4!gf_3?vuLZalqvas|0@Y5eg_TR~Fe?PZ>`w9dE z`wsD3;tn0g zEB!Bs_wp7bc6{U7ss#>$$a?jvQ(G(Y9PUrN0~A@coImuTI~DT|cdPV_1An<@s-t%a zVS^3i}^9BoEFV3 zeT7+$MCfet?XjyfCxa62J#Q_a9z5tiQ|oQj``OoA z+ye47(Et);Tw#>LVJ-h1Fii$jj2ke#c$zpxiFv^$9QF%PNyk%QTJ2qAxE0tFaCn-2 zv9z%oVj)#-LwH5EU%#nucqA0U=g=%Y^e)NY=0MO(y=Gb@h4?b8QDyWx)>mz$t3FCN zRfsqUd`To*%Gt$>gP0IcE;>VWGW?%>R%A!GP*&g=1wWKr@jpr{9GEsyjr`=4k~gXc zz@M?SzzyNlW1~#0ARfTZ1H}o7D?5$_r!#yjMRG!|Qa~UlhQn|4^C7T6;nNojs=$mH zFhF#$LF}B^<2B(N(b*_F)y5)sB(odV{im`tkE_|s5g zh>bDKyNvv!R33YyKF13vvrT#Iq?p%ygn7;xCiHmh4k$xFaf|xkJjAQoMd@dX;s#kQ z%~Yy2v_@3;c_;CAOU6qGxA;670DXFia^CuEw$Y@#KtChOOx1Hu%WUq>yhjia51#mc z(Q=?mNz#vlshRNr2|*Zik-?ifjQ`&LSC20q{ax3EzxuAty)<^qe7wrEmrj!EvEiD{Glk+>lw zWO+PO2y8@48NmPLtQSaEgFPX?ZVvx-Eq6zmx}h&xv}Lmzx`gR~x=(l+v@v?IS1EDn zb46wl&oKEbm*^el=<^<0h(;twtEkyGxq8Ycr|{Mhqiu|0xkBhpj8%waBw_(X*)kOV ze^31#Hj3K#dERBwXFAQ>r~N(RA$db zPBV`~AGZtdqrk%0aBR85Fw)>UM0>FxExyQvNAG0i1b0mv{XS%DhA9gxq4_om8{b)dTT5)!y0?(|327zV zoE15f%>Q0%`f)%Y$d?W9H8~e^k4eSNpmjZ@u`@yD#lrJ*m!h*5;cl z+0(VHKCRfXzjkW-JAM49-Qr=_CnZ3Mq;w*aD{hFs=Z4b4wd$1n0*wmd`%o{P=^wz1*4jt)9owe z6E3~f&%+E$r3JU@g%Z6LR3Kr;pq@#RMXkud=#GJ}l)6ueWAYbZTeQ{b%JQxK_G>% zN)lH>OMV)Qm(b#iX{CGxN~O-B%D`)|Hcfs{y+h5{ryv zN#-kdOneGz2Qmh9xeWZ+f5!A&x5&9u1?Cxgj+kEXcQ7!JnZ_N#pGKdr-a)V!l~q8& z0i#GpA1|ZyKkB1Be3Ft8?FrC`R6XkxRU|Ak&{=}&x1`eK*E=y`O(3-3YE~!PiM-a< zix@zZ@U8uo`{;PJskPsR|4Fo1Zj@~Oh}mdu_+KIJZ3G#=bU({|pYp-SY<41ox{=du2pZ4kN=n5vV>sD^}N=!;F4!XYg z?b!a?Q=j~7;p4y09lYf&-`IM(@gCz!wY!DtVbS|J&;#Q%A$W=#Fv+_>Gw-8I@0Txc zsh9lw?RN zv}kd)wz#nr`@_v|)K<{0Gx`>(RW;_Oq~na(v^SqOpJ~46!TIg78FC7zKy^eIWdO8b+6VgWYuO&Mmz&pO&RALxQ3CDH(Z2L zZS%1IZ;|OD0yIoMiYdu_MnzEbom0cjtN<{%q#f?tkNt!B-+k2kC8|*gpi@V$@)We~k=ck{0{kD`Oad+hIVag$jMY~1mS?M{QTDpDUbE8Mt=Zee*@T@| zV!G+nAfN!0j94Ckudp~?2lJ|RQ|!r&4jfb!fbS4b0Gi1c8~Q^&!jXV5akC35=5LZ#p@;t0aW_oFg!27d(C=*nOu$+ z!gHpFkS>Vbi7ye%pID($OtOq*gcy4XjB5B$h!sUhgJ)ralU%L<+{%a{LmUF+0x=a& zz+n+PEKR<-oF3Z%mlHMt;u0}ilB3(rc%XNo^W=Vnf8no~k?jX05j+3%2+9YeM9v;M zqA^BO=1fGh$afV0M!cEy&QJCj(H>*aMxonb8oQQ{4Nh(o1QL;MqP%%@8^|92B7)#( zfv0JOrD++Ti`WK7^TMjc%(zfFr9~eeV82H98)_Ho|Y+!|zeZA_{O2CvH_# zH%ZuGdVe6%q==1)jtj1uIrC39{`13?Z5qo7z(@?*k|S%Q$`K>E1nAf1U8WQMFPoLA$Q%8^&~KsO3Qa9ZFdeQ}5g zZrwaD4a=;(<|W+sNX?mijNpoh9vyBrDQ+AiZxSW#7#KAOFq#?U`Ve-!$cb|F!PBAd zs}tDF$MBLozIco*LF!QsdhczYzVK1vFApY;OZ5BZ1h|iNj#E6-15Xp@i1^kRik%nq1W_e zCu_BCUNDwi2U{0lqJ`bVS(zDB=ekhNb738C;yE+y%3})nF`g(udyI`E#FAvxZjfPyF8VM0g6CV|eDeV83|B-Y)Js&@PlzIs z20bLoq_r^B6Ho^GoUzqbI|u`mMpW2UK1T1j)FBN~v*iXI6?-G$9&R6XR9bqg?qIp# zRF^PnvGLk{s^^BF3V;S&b{zF7zrN};R>(HN$An5Y&p$%AF3}3QZAqsq%90=g1=kN) zmS`aJ8DqAH{uX$aR2k%^s<~YbD;RAek%>XTbilwIoYMlEkHbISv%U*8X@r;PI}_$k zx);G8MjMJXA60jT!-W3F7#Y+@`*w$4qNt+UvA+HM)MsBAtToT=E**Qg{LS6Wi)#3? z7H)wlP^a6B#W8iE`@_`dSYGNAGs;4{ky|jF^!Wm1WQ_bgMh3u*S_cOg631X8*tua@ z{gca8a^&ESqez?NP|Ah5eT?Bjems$RBkh2~L&Fmy;|pGi2@`yeNX!7xF53ivEpxaYTQ}x~w*^)bh6P$`5*Bq!?Rd7!CBMlGAAx_8{&36{y0z|O-7mXQOa>R z*CQplD+Ato)=akiAHxa7)Pc|a;5ZItpeiR!0Sk!0RtTT`N$E1P5+H^FKZ6TW2I(ku z06w5^d4uwvM(9l%X`Fx!z44UDNX9~Fp>gVIn_Saj00ezz0b6=y@D5nP z6Xy?QA);6zVbc6<70;=M!LL+&B7s2bsEu~-x?cRm^5yO4P&rceit4FhYoehZ5RXB{ z=_laY=uT1!u>FJ3(;vhtZ}@AkMGsy_X_-OSVJuh;|8gU89I!edX6oStC>DA-Cb6pJ zwt(9Ku{#;DWek$Lh4(o`LaTZta$N%*o2S57z;*;+!9K0QsuEymzj3u8o z)5DNZy*O8XHB)Wr7LO8V1>>JZq6?+CIUUC(WLW1F$F2RQ>q?VrXW-i$*W0$|4lcAI zS1{%=jC=I?LHxGm#Bn`=AR&(QXz%q#9~t^I-ZDfKV`(jP1(^gExyMH~QMGNa9z`i9 zYJV$ACxW~pQk6@hMPi*{Ob>R{W~FxdFjV51MBrK{-!DGOX>SA<>fQm4K7sz|_e8cG z@E&I6FDalIDY3!HGmPpfK4DA_@ocmD9Zp7pg8)&9#3yc%=Jd*yEgn30^Fz-F@<{Am z@M|*KAqxo;!A+baC?bydDTG*}dQI5n)}Zh-jpi^)Sn-n|`5yl`xc43gM*h_{yc@Na zh3c6+8Q_#4RL@V=Mw<+KpO`M&Bjr<8THAJ>4{twbtDX0fsGweob232esvWR$#oE~j zD&i;KnyGX)tG3p1QwNC(d~P}x)S!#rBGw!Mrbyh9lul+gfTsEK-TCqxxytKqWxf09 zJI%^XZ#`*7CnG9=s5!pz)!-SuH~L*A z>)k&Z$7_IAO6wqmkYAGoA<~m@VT2`&glBQnKEIugI+h+AavjA)}GfJjN_2)hQYYMyZ| zyv2V?T)7A1Z6g~K-%47HGdNN?c&WBQq*Qw?wfA1CdOuyg?>czPuiOS?z+8{L1=kER zvou(G&2-i17Z(P4l1k_#NJT?{1l($sH^P?D+9uSVK5e8ENi$ZFMxdp)K0rJ>6aY@) z6?N>YEXa)0a1g`TmqL(0H6>2^kOQj#Q^Re!K7&zu)@u$4g&&694++jTa8CHL0E!wpU4cBI}j7 zLYuj68|GT4_DeRPusDhIo-v|9S!^Y@fwv>$hrlIjhE8^7KM6Ao_A@DI>qxJ~dLV2F zLG->n_9CgP$erHL;e$zw6yL zY5k_Rn%9bwz6gd~I28D!2-7T`M^Fs-eb7#bL6Y=QD*+KvTs$0BFxsM$O;7Hx-a9Bf zU`Ew49n5&2d7pt@mAo?2&i&oW#HGip&w=T&h6v-2@QFee8L&y}z(osogeAwP+@wKi z8X=`&w&-+WlQUUlq~RGL|BX3{bQ(XbtMn+@16oHBw3gf+eGRe(<;EOES4!~K{)KBC z7sd?S?i5Rn>L83dq;E!yd_P!C)qX}eJ0gffLzUHLLK5&(prWZyS*c%Sfr3#2y5w~e z{G1x=OjI90^W*2)!$+xJ=5J!8eoSheqr$|c0RypxlCeY8luaaUsVoh2a$4eDqW6>hYJZkYC+;Z$m-?x(2E=G6 zCAe9L`}WR>M~rabF#N3W3v~~kGOG;#guPG;8-;2q@eS&(6;KglP<}8lfA$3&%{&q! zq5}bdAV@~k5D+o{Ao23(lvwT%$fXd9<61>mPz&FwjJ;m*zOK(pgp_FBoSd}SgstK_ zAM;f0=X6J}X6w|gz1l$U-te*Qv*-3tt?HJgefQB1KVSUtFXn3A3m>gNQ;VIe*_!l7 z2PZZx`Ht!3%G|lne(tPisCclG8mbMf7~w@x2GVp!uw-$V*NW&Z^0kcg0D2g-Rm^6X zK4d<`tUZwzzq4%)JGL6R)Zit-s~Zskc_fi^n37tI%M}oS$U*-feLhiK+lv+NDJ|Y6 z0j&V$=t4)Rbrv5An=%KQ1X7u>w#Dd1=R;O4>-Df1j~J#2fnqp4vTp7~bQf&stVQtV zJlK-u+n>=pa787xD?TN16AGI@gnuuAs}J)((N}Z)kfhny2SRkpQ^~aJJ7Oez05lX& zlRh-4T;_L~tqj}|LGlHc5UbH|6v4)5p zlQTKwAtQ)?1sPTtJPAOCgsLz2p*uy5(B~2;dt{Q%GQK8g@k1-PD>Y=uFeK7nQXtT< zCHP7B9eH2K(C{GcQuD2ca28IC5^N&w!&s3^K`u3SNb9od-FCi2RJ9fReV!R*y@v*B zeZ|30C*hD5vPt0(;kkUZOLIsL#34(@BOtc8@-YGNzos!)vN$MU|? zy}IrBz8>0?@Ia46i?!4;=Re7PX)pYe;=QPOT3G>hEHC}a{GXVSNVcz?r?xwzcg7`( z+)ar#`e&%95Ghgz=hl_pHToK~E(0n%WNz<2FzIUveKk)jD?(p=d=;cl`V


    +Gzax9uJY@4S$zo_1HykCBM=@cuDvO%h;?IbaCd`|qESEr3oUwP=X;amB`@GnH@9>e15D!X;!_K);8&tGbycu)sA-7RjqRx z5hMFr{*=E<`&doSTkbm(1fT5q%#s(;e7GN~;DctWcII{AUD)yr9>bGdTLS2>l_ zJ0i7<4&_3oY(7oK9r9GjIDG*7IjOLSA4H!l=R?Y&&&}#f6O1>S_XZxA{7N)OLoyW4K8_77S3N>;Y7- zZsvccAk+o5@VQFl&k2=`MjEEg^9nV7{OboLG343o!#CYKj^7RdFf>iFXr#OTIXqp?;L-87XDMa!a8@ z2v%qbB1||zyp6FvTT8mX{<#2xTvSzTSaP4XBIs6)$eFKPz^45Be4lG*H z`BzgS2HA>8Pg3k~!4M-{yOXP3n=8MWs@@ALH+||=w{qQHyD^}yn;V!F(nr#Dvd}u^ z6NOqYv_-BGJwauR;PcKgKs>&B34kJz$!bN)q78Qo|4#TJ<_;`!gHU-2;;mRkn`0c}_b$8*I{QRM! z)?-mx%!K3!*@|14IASg+|AR z9}RiTaLt3cq0rEB9iJ_J?Zb&b|1|TZhc}MwuD-fccwx8jBDboXZv#=ScS!BzrNgLV zWsIi_UPK5)in;6%rpRE_Hb{R)%`v>v2pHg<54|)J;(n#q(njb6oTgNei<=MO8PLtJ zbcZFeEr+q8;b_w~*lS3QKnj%w6oO600YTcHyr;3tNHOs+9=zUPzSXH-i)&Xhq9@^t zC^*5c8wZz_)Imwaa>td6Sqe#c9h8gd{iAM_X)^vvJ2Ogh5@_RuBW;GSebG4HRXjaxnObDM?SR^Zz7CRjzMj z)v+S@8Db79o!>D z=BKex5SoA)2K&ia81bz{C@`I3UWmc0Wu&kG+#m=fSkMC-YS*IHo>eVdjBUzwUf5w` zm&6Xq@w?4ed&}(s31Sq}JiUj4UZVq|{0^JcT$ouuvu8_(ny~q8HUSLq>R&qq}-z zkugAzbO|6J*1|aP?9?sQ!xpe3>DwAkDpS`h{?`wVLsXHq&IID3*pz2RNi->$CRlqm zDWV187sS;&l7zJpYdlg+EYW5tE6!uS? zp31cmRzfV;^;v4U2nq(R%}OLG;VOZ&5nm;K78ArDV}MtnH{5q{F2Ic3s;F@!REpL! z>3=NI!-YFI%^%BvXRP>@@E!T7!fds8^xV))vL)f#BZ0vRF^bNLyb;hLbg+20oq;pqgt{?*W{{-2+O>sL62?#h zwE%SsW<>H*Juo~X$h)IrfkmZ+_L*2PdRfJ^b5QAVR8LW}+=m$C|l$Y=5D-&w( z>W5?hr%nKP&<3juLkH~nY39q1(_dGUm&njiJQqH(e(6K+pVPf-^df0ST|mV2jM}|~ z_87X{unaNyvEmu#l5%+xoje%t{;~1x7pOA#RnALkowi})E8zF4&xh+c0n_LqeMWFe zf`Z8?_QZrJ$xb|({h%7Zzkk$UJwL3rn{nSzs=NKHr*bm5`(n=Mj%piYJKysjY%=N5 zNs3;AM>MClPyXte_kR1i+-G0!|8(#x`jiPCgp+Xhek&c^dq<}}`oh%q^Kb`*ezOQq zAj~rc31>rwM-COd>I_aIhBOWwnb0USAqsDd&mTz!aOHHh=L!%UGP$RH-!Xc_I3tV< zLc0;Ijr>UhCnY+7DhKdSY`<(DMzH5_GGNR($)-aRK)DzuDbc)v@8OGSBnpi?50VY&y_Gn0A@} zq5FBAaoHEpM#@S%l2^uV*0OihtG4o+&g%7Ld85be+bzc*9y>$mEAyeGM*Gonqg4Z} zVC|)|dx1@diAY9w+)VC-L^s&Pe9P$Q-$PXN`D=nXX$Hpi*=hzPTZ+&p*fBDDvzp!)fqPn>HySZN)p=I>*qLH9DfXY-{Z&>O)SXP<#)Q5PM5R=f(5S417UQj03d6Y;_E`0X>=E#YM$F&a8-ufFK}0qa!#8|7vuwaLuR$fmZx_ zw}TB`mOD~LX@){t&!A4F7bgioga;cYVI7S)AQUO!A%rauG|G4C2Hbx}eemsVa zTv=QXNVE8&{Y$*OQlsgbl*baFHG*N8e14zA8TEz<=qopEkW5u+UdLcA9au0;aKRwe z=+YPL1Z9`+&6Hm+saI*qoMnm7S3JftCJvjv;?~xNm8A~7&~q3BFyRQL4c5<5$)9#` zVV(5^Auc$-ELjP73KUBC8vKmkM0AQ=km@KNA@m`n_aMj6PO5@=IyKV>80m%G`o7r(uo&heWaI0=|PtA|np(A?R_^uq^^bs@GX^!&*yf z_efM}m0BYHX3?^eofs(arOT>CXrUB9@ZM#lRY5WUk&c%Da42Ed*JGqwsT*_qx36-O zV)_$Pm3y&zd2#pXY~}3K!KuaC`5c)B)t;*a4eh$$7n~op4{{Nd26%YUCAyIsa{ZAO zIE&Z}4pjGbe`NaWfA0T}<<#;0spFqaeu>syC2>L8yDY;X{KBCS-GgzP03veINF5>l zqj#7JU8xG?c#$v=dNDja(zF9G`>|RYvvwX5QOSme3aW}uolBl>?*To5_Tg~aWCqi_FB6I85nD_Wl?#}E9F z_lt0_tf0!gaS?KUd=exWNNNL1(*A&M+()`smN7<8tUd1izVuCCSdJ(5lP~iZF+t_w z*UMdZK3)Erl5E;f9(`JTmee(MBS1?X(iU)FC|U*VX=V> zL?!Tnl53_}UtS;X#cv|`@Q{OnpJ7G~UMK5->7tsvE8Z?&v6jB87Ou#P=C`Y^7EtBd z;B~<$GUttSua@sXg2e|Y^A$91z(yIaq<%3%h&hoU2tt$6^}@6idHdo>lBCcl;3ByN zXQgOPa7BeFHO8t>VygJlg~downL#`$AA139hAcHaAxR>G=7l3mlO2(enrU+UM&er6 z6qIf~XhQc++!@@os7mJ2A_hiEf$w!TpOiQ(HPNB{7B%IOn``mkgSW(7fX&Zd=;zme*0Z4lLt3j;Y}n70lLA8 z+J6*)w03iZdsAP}?R`6JEQXcTZ4fXR@K3Y9sJUO;eRYjH#fbOF{4ePx=r&mfEmiMn z-O;7lJJDwI-#9cRM!`fxHWPk1H`tcvhM zga^3+fntb-jgHWCCZ5qy4NDF36smC;`fM+vB206 zW8R=6O!IE2t0t}kx)=_^?{J%MKkHVSNTTp^4Pmm@$5x>8DiddnsR4x0(nGXJRUawz z=#A&G@*x_Rca1265;qz}ClmB8i7?Uuw!;{lt!GEr0U30mgtUc4V;<20A&>x%fK(Bl zD18aNWmwT8tS0z+@4C0Kjjd6~@Cr;9ixWjz#0*E0!@*;bXae|2vW|C(L zlDC@%t2wq;?nfR`2U)4wk_pB~1X|=TL9Bp`F#@5QAij@yTdo5pu~0$j-{A1UbO3F{ znr8I7jgbK$U;KlWzMFtou#L>v;4swG${&T$W!@vqGV_&Znk$uIn7{!J3bs^260q%) zU&NIv8a5jh&pGuHL{SNGOMPnr;gbq}!Cr|!AvL!ZOs3JVS zHOIxL!_V$TUR2^2tKrk-z^k9RzWgZhRmne$_>rm0?qjA^Fk892MtX@dM7#slguIfe z${ER>kfDg!nJ`w706AvW;adU`5PBA%Q3zTGCJT-u$?Gh(AQsXf`u1hi`1&*&lCjEZ zYvoi7nRM-f{oqU=7l+!CM4G5JMXDEtPI~fQ+mm;j2#*5wGidnrKd*HS!coPSoFrk98I7- z-4lew`f}RJkda5X4?Z8~(G@M9%cHn&vO-pGnkcA3Cn=M^bDc}MI(1$h>fpzQw%}F8 zX(cm*eN566i@+M7C~#Qpp780U0sHj1l5#6hx$o4reDr3rEQpSD&M$d-6DfQ{`bM;N zZT8@u`0hJP5AVOtcdcexo^HOZMw@}-034*{A;zM?fQ@K@bSbD_$R=^{AzrOczJ?;} zFwb5*rd+n}JRf1L+jSg4pvWmf+mXbxd)#WPRqbDaz9-NOD_JAh0a_e}0{>29rE)Z& zat10c3W5 zy&<1ci0PU;4nHpI;$Sj$<88Uqcec`*Q zfu;aDDd}+I5t*6!89W}s)))n8`k=Rwd?9AkMob4eW>Mtphm;4|;NSv{a$9oGT%xxe zi7M@jut>5a5Wj{DhI`FUyA7%sVcUgk5XJSP?pv3A#7V9T10>Fc9N#Qkr-TDUNDDy> zK)yE`2A)7}0WM``8;{Tgq_o8>*aju^l5G*=YqZX(-X6+P8*uO7wm}MzXqQ!L{ni8J<l}ErIeBgJ{Em7sI6M` znE}!oRev)xhDgW#GRZLCa_LlC)(+0EV`i_cHlZ+)Jfbko2na1$kP(>!leY4U^LR)T z6WNjo7%2T5o?!9UM%MWNxeCDnSRc@SOIaIDn&g*ai-@rdBAk=w1WrT?Z`S;G5UyxT zi@VEjfz{~aSTBRS{l~Cp0{iG4Non{MNFhozYh!wmQ$-krAQB)7)=6q*!so6`iiO|a z2><7eh>PENW(wFT)8^BKeE@Z^Cf;rs3MO?pgQ+rFZqy6Yo|!Z#-#zSGTW; z`v8&xTE|cROi&_sC>cRZhS|g_O`z4T*57pe`IEutaM?T!e)AxA{CBs%^6=X8s2vy; z>eE*A;-Tl(6X3` zBuQ_@v-|BKdSS}<2M*o|>dX1c>n`Xd@#!#p+L5MP1)rZ3te&h4qJ;4Elie)?WMD!w zFK>6gLmY>eq6Dycf9ALm=*DsRxb=Mm37^e;MM+-TD;|~1`Lx66fz!c^LoTjecsH!> zS%k*{u`NKq0y2|r3$BQ%*-J?}c}F~@aec^4oux#-(t61(9n516Rh!d#Uy%+MX+0*b z-IJ~i+*Zt+fEbAU)l{=)?k#uTG@MIXp`DzrgWxeO(khyKC=48SsEa8UnI*T7zr0*e z(zJ!UkpBsWmtZu$1#6h}Iq_(-^U}@aont@ZWjq{#vm;D$0X9(5;}^a3@qrbHZATQO zqd1hsDgsEtnULnY;9*8CXqSK;3YRgq(7-jHCg+V4xIsX}2~yl#5C#GC(vLq5WgX@w zyp2)bO$1c+nF&mPTsH!tFwcZt;KmXfiSeAzlbAc&z5+a=DK&K+~iXock0VWjn zzRa}N($1?}wbmtl&8}X-JnPg3dx*>`Prac`HrKM}t1((8Cl2nk8>Q*W(yd3|-74SO z;Fm3*n%e7mQ+H!v2X+SkXJew6V1%R*E_aHwRQKiT;DyJDuRfi79)eqGovU7$Ikbc| zPX~fwt<7in`m|sR#$namMGcK^>Hodyi+sZ6<8i|}z|AXxKU0P3$~9IY0qwm=aA^W^ z)Qc7p)Ft?l<_>zP7@tTCBO5$1ggQ&_2C#CeV=a1*8`_$%6ohb4W5Q);M~JzT2(M0F z1imki@S9+#KD$2EN98D)2{O0j3wpZS7#RX=IWWH=FR9h8_N<7=$3(}jlWcG{8a8ot zV_sh&Va5ZE#XG`8A=1jF03q0*OhV>1ef?5!!tOlFx zJCyuPs{M)t0;3QkQ&+tVEW;FpQjT@WCv^`IGBL($cQUot@UlVXa(Z(s8>y?-S8?rPkic&xj1OIPmHA4&8(c>S-{%Y6zf{+L)V*Ha@ z3pQR>c#3sIAtt(UzYnwlvj#08a;x_7z>t81s>)$x7xw1gCg%;Mim`;IsGPNkOVJe2y9sTxlKReZ%14KF&gi2<6RNcIaPY^~k=r{r&-~%1 zUDbP(M!9M?hK*J7744d>0~k|nEmoR(6jN*Ycu;BL)sVD9J^_YFraq_vuH7bg7uc-;`h-w~XAcVKhOT|m!-XTN&>s(l8@G(1F{gN)d75j#16{9 z$6_mQqMNr2bNZCBwYdMTvKbZ?7cFpT(T1D4Gblbn6|J)^b8J_ z&G!Us51PO=$hN3+UYZVi_ggNv_XyH^ZBVTt`PWrU2l2l^3hz)m;n*<}nr)|ub zwP*`4rX;`*V*n4(ICfdEAjeeJfs@tObU#*|qc{p9~s_5tx4_9&?faB6zE zLyb49iA(5Sep~wdNAq8l$dPM6Nq~DeaT*DqV_`xqWI=Nv?~z4P3vGU!{BMV);FH8R zDkEpqSTi9u43={L%Gk`i@0Uyrv_^~~xCTUi$;1K(0EzEtq=%s_UM!5xgia)!V?#Gf+Zpb9_-g$f0C5+Nr9&ysAA zfqTL`FG&ULFS?tES|sHr&DSnU28lN1t;{p@!XStSW(4X#P%qjgU9e%V76VQQkOaz% zcLXk#?{^Yuiex*(4FN(zYLo8bY_HpGWKjYu31UFPTWK2Ydd+p4P*7%dZE98WWAjBa zU@Na-gqgxMtX!D~u+`>!&;`jWkR&-_2zvcs`Xq>ibkmRd#Rd{VUL}QS{Q9+~Lix-B ztIffcOZZ7eMNF)29;#>%E16pARHxd+{{^Q88yl64o>N_LP9Rw;Q#1;c9pUS#TWkngh8CxD}YdBqx;@L|_t)uNivphh;B&`b-G{gRN_lLjRLJ_bz6q!ffI zm5krCRe-x-6m2~Jz2-PCIgJ4mnJsFogW?ZlHhM>>+P(>ii7ZoKMie09s9}@JT5sj{ zVD+98Z7^SoUYZxC-W{(+?l4ZHv}8sSzwlrZ8}dhm|AwBenm&WM;9&7I9fC}BSOAzg zx3kagM4l^;oe(g=-%Zdfuaex$)QQH2%Spnb=L~O;96siPfJ-TEe>Ui-F^AiidN0Vh z02(KD94hK$>!d-9IL&Ek2SeQlY^(OIszd8|3CperdTbM_$QUf`4jipnFXBh5y6)|a zyhx0|VaTG!TcolXjZJu5w&pQx?4H9MnLH-2BV###I6S^~2bXa#9v zAgqRN81tCvIByeri4UJhoVa4%;!UY1O)wgmk@c>ykmHeYxk*R=Ka$@2N$&f+^ZY;V zesEoFUDfSvZSAdW%O=GrW)K+|U708y$H{px0XYx^NQz04DNC}wtF^S2 zS6<7KXp00%gc(fe@J&6u*E6nCxoC+5XS%=N&*ypG5f+BeU!3~_Z_-Z+yTRl(Q-p07 zQ3O0@9P=rBfoKTD3lN_ZLem)sp%rNm^9%y-upKEyJbGCbfY@qHMl?^WE*Emti-UkhxFUQ+9`c zU_?4=g>$4T0Xwsa04YCS`k|7#j=GQeT$@^`1#XI#4COx}94Wlu>>As1yen)OMa(swb>m7$%TVa^o#y ziv1c@#UkJ|kLm3WfgG&_!f@_QSI-SG=b*dLvn%Rc=dR~<26zZ2IXA{F)%;mrBBgb1 z?=27~Hw6&Ng(4&@_%_*n_3U&tc!#f>gV&g`>#H#$bZE6U3e%9t)ukpWWR#7bz0zIJ z|6He7%yiDe59)-$GB?gmO}Tt(1`LLJ5?AY%Bvgfzr!;|5nJ zx;7ySQa2*-DDG+YFZuOZtKqOrfWSpgZ?Op!$tS@|#=dWn)76$Te7&?q9R7|zBhO&z z0enFCLGQVUJw^~Z5){U1&-#POsK}N_otBFls-)f(bUkWEcTHag!Icaln7CP>pt`ieCB#U=#&#jtMx{e@Us^&5fEmT%f)^5$ zIEap-9+@->Q)=ugEcVk^VN^?xZyZ5G#Z;`*CS$wE$Sv+mKN?gv!C^==mM>fnGSavS z9^q*`6rLd_M}f)v8!>^cp=uM~6Z>F}m5^@)VIFQokkSDjY}HL$E-44Z=?5zDce!?- zxSm)0JJd$3c{Y>-`){YUi&UkMno?9-MpR3)WVZqy^5okGDV^jO(OR*EX0-LNsI@K3 z6+G>ST3kP|c5A+{_B<6 zjSR?Y_1e68*;Bh=sogM_*Utau{qIOshn>_Eeqegu8L-FoMMw2cf-1Di<(0ilx0NN5 z65V?zySHDa2Et|x;B2CaHKI0y&$DR~Q{OLGy=RnHi3>~bo0e<`7AOlDP{@);k)22p zDrE;@04VAhPuBNp9IT$YD zBP1Wd98tWD?71i#3H?A`LK~Mj2OaoiO+<#my-J5yq!mVzhex+8ab_a&grnq!RRY(v z%q8#vC4Bv#JiilkBFd=5HHpo4c~M;Urn3_w5jKS=pmlQ z3A*_<$O-R3l)`2wU_Nw!E5~O2c<8h0sl+$k&pqyYiDV(+aM8Ns5yRbvM*zhX>nBSh z#akFW>FV_)DOC}4+E3CE_yd#*h%vGg@_SLG#?b4sQPzX>#uAb?k1me%6+V38m_#?l zY|oSk=$+zE29bctLbxKF=|KpgKJzExkOI`RXb`f5q(RO}4@Wm&)3i3c%#y+t22jsi zAhsjK24(_?z?sp6U>}$jFG;c?M}QAU z`d)MN1%q)oKWgUUAFn-Io;fY>GL@Y$O7syAj0-|C8X>-*+I5-Jdw=DO=rge{PLTcO*}LAT z%@6EdZ&Ic%is0Ps(X0dpQkBAY!J&$r9%Ly+pBKL}=?9X#>r86>y<%{t%^}0+$fA@n zva{IYNb;{l?(Kv>;UI!v*f$@2(EnW!JQUa3c&pILFgTb#9E`!D?m%?J4~Alg^duRK zS%Cqv5||^vg%V^Si17!R5HUd>@cGH|iAj!e;U7abY4zpn8_TF;mqnrzO(LB|VJ^f6 zYB8P@XPPra_-LqV?}F;RvK#qGncC17=d3DM-U|+FN3Jo>Qy>AYaOlh>Ff_5SBF~5%V)p2 z^g<Ghqt!JzF($lrKMQ0fG%HSs{sWw@7BVb%)k7U%`MG@=rX0cyDK+n#|!bk<@ zG-whvsTOf+cMkFLib66-;YeDux6^YZ+G*0i?VP8Ump zdNBKy#PMoRBb2V*KS`v3{35|({$t0&Mq$&j{P%E$rpr|1$jdIH{UiX=Fo%#TF*)c`%}mUBTlf z^X(GvGAUJP>^Y<2)mFTsOsBN;(haR3t3|G3Kv5Bm2WE^; zl=Fl2Im(ZiF<3+9^^wKuxe2wA&>N3pyRJKy>NeJPtbYvNY)R0~?y{Zetxm<#sG3^% z3*uh)Y)AMDFu=;vbxIJFQq%s;PJJ4fYq;FfbPzJ3_}v?Md)xATJ>JIdT$|fO1|T76 z?l?)><;F`CPe2^hdqebwi=@ids|~l4Nvk-nX)9*@u*`wrQQF0b?1LVUK4&5wmv;oF z16qpG6DShR(k355Ux->U&MU2JWbZA;*J*Wa5<>w49wkKD8t*TIw-;KI&6*reIqe-_ zZq$Njh|bd^E6Vuw18))GieMVP)p~qdq7)-cN2todk%*O;Q8z8d1VMsqh-}V2gt zF9%cwv`+1U{jk)PM;Er8fjI&x!=S4TcVGxba!=;GF+EDzsF5SCBz;IpaG;?Hp~N<% z7B+Pc=P)%5OmWx}hbRITi7)wG-Xfg79HDLkzR*`Bc}?m=gebCmVgbf5#s3xkEv{P1Tl3inHC%`l!L^2xlp4wUmw~0&_4km;IIy6=WKoatf zwB!b-lXP5$IF8WvpWW;eHI(74+?niPzhR#7gNqihdpEQR8 z*@5}warY3hYZB>^o$ZqKUo^~cCABkPP>c;64iLm<0p#0h6+w23%!v^iEtW}3w!mm; z&0N`}W1)^1U?o8ucwiyt0XfZ#fEYP zn$i82$Q2Pi3Ds{1&Ji0kdvF)z0?4@;X|xU~B#D=yijMPBydn4((DoCrm!u_jM3m3o zjEoS7i>PuyB|ebaI(8kE`1XxcoNSWym%b=bHeMt~76xyLF(Fcn2rMjALqWWC0*Zp0 ziBS=Zmj?-9Gobf46*=NV&*!DUcib$PRS{RhxONE}(U=;#${xpNq)c8`)`*fD+!=gR z$u!nYX5}0!fU7=5uuMi8&Fmu>2}ws0qa_Fok%_c2MQxI2I2)?YT$f_9iPn0eUu5=S zNTnQ#WuT$m!S~4}`{U1>l;sX3a_!NL4S34DU~Q{>;Ob7k>YP=eK@rt6jHg8}ah3x$PenpL~{l@{{cD$5cl}MSngzx8Hk; z0e~zre51@22UaW$m^Cairuwbo*(pV}bu0M~VlC_?MlZ{n|80=Z9A_EoEEBnT;#0;@ zPY5=lA|6cZq{=u+3(9UD_TCOK5`s00p&h6uM5Vw&PtCc_z8JkS!)Gl>y& zK*k6`bF_xh6d;OyYoOM-Ce99Pzsw#9M#Mm^{{oW(8CFtDH#npBBIFx0T$GuDd#5UA z=Q-`wskPtxfAek7kK;h1BjXY^%&e>VTeM&+_&>$LYVZQm%ANEpa)Wz%So}qbOuP@W zOmvBU_$=I82#J}*h-JeSK2tus_~bd?)@z-$!SkZ9qFi239jHcFA(Wit}0!?TEIH>ru+$sthPQ{x$Dx_Fn*57QyM0o4hwA(X_LMZ=d#l~sNX`bOEx=ehzngA z@*6=EN01bf>_-~BM`ZSPjyR&y5F+v~72Z(Vb-|5;Zdu2OaT}Dz+j8G64hG!GZY7DA2|pEvqsL7z+HBwss@})P z3}+VxPug|GD3OTPlT(Igo-j{kZe5U&$+VtXt}bs>H!kse$+thA&@(G^1n~Y+z{lXB zFBS~!av7&G*$le1y?OMTtKU~A+k`anup;3h0`N(SQo>p=+>1!`Yl|0+Sql$jWo=Wr z5q`4yCcA?^H7NgJu^G)0V-+{1ENe8#(_i4CB$pd!T(TM@zLg*{1WtBoPhRqp_QR)F zFL8fOakeYAYn8y=?eLG)!aA|l4`YA19e!DWU$d1FSDxn~wmjxlf>pVgkX0wRh6KhW z98#1&P8r}~oN0*QNgx!IP$0l?mlVI&OT;Il%%q-)D-7eRUnDX7t10k8AQzF?a}f}7 z`J#WbkRL8tprThKYSKHa`8T&bf3@#^hgIm$E}A1wV`JzV14$cS)g=uj_spBy{;Z-06In`cJ8di?}! zn#h|&FP4`Z4szad_Go45%+8h5>Ufj*e|dvIhIzmeTEhmdrRIOx_)eHxgq zBxU8meV+aU-v}l(#eNRK1KFW+4SDF5pg+!uiyu6YeL?QlaiK^+_~ECR97F?_7s&zV z22?5i&ZO0$hyRwu-5`w{Ma{m3Wv|vasI^(a5(UyX<8mU7gVbe@az0Txjo}?!(XRK; zu)GsxT)P?H{^8KWzwuPwO_tv+JiU9hmb|&$#Y)xkbm=V^z}?L=yYCNe-Mq_e`5^me zUlhNyd!?azrOTKd6{L5psGAlT;e<7|<|Qf_`58wgA^*OD))H5{dgX@Y*8!jRM1|Hw zdIwU(!;b|LyR#KOz0m5@ggGQiE5wEI;0FSXZqrD1H(D3wLY{YCY4eId%I$ z*?zR*Jt1$pn2%tx97y}PjDY&p$yT05tz$yoWiq-m132{rSVJeweu~DAhBZvM=FHBS zYl4t-VvnHM9Ix9+HID$D=_B*v0YQA?BAJs|PJSw=ZHe6$?*IYC*;y!KeHF+ef%sEk zYWUouPnm9E2RE_{q_Gk7ME?|C&U(=VCB&M8EK@9>q|5q=0!RtEH3LFIzYIYNDO5D_ zcoUxs0S7!%kkB*CN*wi4N@%9hAk4zf1SL5M_?Np-JLI9!_fIXVjq%+#tdCFKS2|Zv z1xw0SYFu9nYKthBBsfmS0QB(v9MpN%G@)z&uZaB_gKs(%E!!LvK5CX$bS(5g>gMh} z(_3F(c#%i3I(t=Jou+4mG^biuORck68*9e@&ZVIAwQpHpBAQ+fF619{+@Bl9p3Hd; zHLv)uAwwk$L7CoA=U4efXiwJ69RNX9_d5hQb30&W#M2Esqqa;d&7j<2Ocq+UO-7*H zIPvKO`%5x5^JfBq*|6GDs1G4C4jH*Q;SOwl>d+<78#U1+iNwH+(4C}?=LQ6J;Q0)d zh`2;#RUNzmJT94g7w1s;5XeA_G)(#dxf8^P5@_kktHVI1o@(fntdsc=9g9RK$yMS` zN#|p9A$Aq14^cm&Rj?M;MBu(yCO^4FfyOv51KulfERHokfwJGbZ{$zv)jGuR5lF8a)WX zj+ZEWG3?zCE+XB*K~GdE9-jiZA|tv(@1N#3I=t2iIQ7vW$z6;{hAovpK~~qX9*~ej zjcAU-dOi@jE+rh;B0n%6X&19GABc-!6MPmTa2=--i_hF8TQ=7UDI%j5Y6K;xdbF3( z8XGv$7w)^-nK5IaKxeL;Fylkee7|q|)dS0amyVtgQWKXR@6e(bzxMz6qu?`&zk#!* z>OZ+1esMo`1cdGP!A zllI2306&8GKWI#i;DXVor?l0Q?1`YYTpS_n1Bd-(882^v*!0NvW^O_E5_fUr%CO$g_EGrfV%wSXpawF2C$Pv*kOjsLQfoKcR*(Y zx?)fQh2!^4GU|&(H!~x5eIcM;^(vQ3#xyZvQRWkMZG>k=81^YIMX{))P)2F4RuGly z_$lyG-MR#)PXQnA0;8`ibeT>8_xSmxjf=jd!+M}h6xA!@E2XPbAI1n!V7L{A6a?5g zu12oxj(rSU{rNAufBE^+-kp{5>bd{*(--&e4(@)G+`YfJ`;l}1{pilesYgGLe*Jf; z$3H2d-O{>-)HW=Ec~&+WCCW!r<>Rt(CsUl7y|_1hbms>HfBdEO;V0+z-Y?>&!5PQQz~mree#rFx5Q@kBwsV9}O2<l7?)Y|HnZSsz82lf|83Ti7ata%t;A1&elv|@>!zAP#Cu`j5oja) zvts1oT9kkS_T1rdy~CyV5QiuZ1-V(qF>J;VV+%ioD5G)zCx1HGC=$n zu*_(L6+n0{B35Mk<_D$$6MQKRvMP+E4Jj|OD`tk={*h>DAV@>KU4yv(=L+;#uf}77qxc z=ERA|D=$C2-(oD-BxwZK340|?WFAa&d5RLs-8Vq_sMxFCMtL&NAxR+!0sxX^%B2(K zxzn^|i3Ha%%i<$}d;H|=L=I{WK)=Un*9A^Tgem#bIrs?9oG@T7iC&WBQjG0x-rBu- zbH8*?@6GEymi^#c4=29INz2#<35)8LF$t$Rm3j4{1i}w-Q^Eq^HDEBa;aI00Zd}hU zNvksNh20~b4ifDmDb7sVZCG-}Izbzk3nRv%d;-xg5svO@{8K2bZ=eOcLs3w(Ixney!g%G{AO1Lo{4oz&-saHH>h;@YvAa*6X4FPdspl30i&OdjO}uq22#n=5#tQFB4SIVGUQnSfFq{GA3au% z-iME7J~V9o#4lG&xAD2}+ulbi&*h6wQnpAE1%wVbqp6 zCB~DyV#Enr|Ds?W@llEHffUPl@hb8v>6QgDe~c+}eZm7iBU7l4fQ1pvXtFX8B~1r` z#H4fO#U#+iM>RHiKD1lLMRkefk`ye;_?WN2smR@uzmCw>BpV{DG1q;PR4(}9*tawY zBe(WXqu-O7d!TZhCMmB3E^#c6;bBCC>{88}mD7_o^9^aGhYA7T=0iyEa^b5&F2ccB zP{yuTb9Y2QOJFJUKl&ex(vAR|Z`u8}KGu$~U!jBB-u7ttxi3$@q;xFr_1xWgHS;fT zJo~FZ>How3YkTl)+wSY+(2})2q)xT(W#2>>hg1G=aURvZtt5wQ!z+w-5=w7R>bVsq zcNIyVI@TnaT}-5G_wgC%Kg0uw1C7ysygwWohHX}BcB@ScMWkSHad7R1NJR zA{`|TQ++U~j;xE9kXR&0+jM|~oiEf#^vUx;R-2h%Msjs{#ttb(IAv>S=gjrJ{(Isj zH?1SAB5;o!-P-vg%0RIpNIG8%(N}%gZuq(xjW`mG%slE!MmT*L54%(Eo#rthl8)sO zNLC*pQ;54B;SEJF_;0OY0G3*A&Fvzl&b24Zpc~zp@f-cDtIBQbwz zgDV8h5wHvf_>JY~|I_tvat(>o9HB*@8a@9Y^qoh6XJ|n}*jWpmA@=G?DC95@@-l-A}^#^ONM4s>QY4(wpVQvmz`Bl50%@t*LsFuabtB z2*^OKff{r~FK`f|X+duwl8i9vTdcPU$amG=OeP+J3bB0=UyKzx7%T_g<0;x}y0Yu| zNHo$j?!6y)KL631zx#F9?|zg0=5OOWp9X8UiA_jLT&E|gwD)eGJq4FkJ(GX<42-AK z=#c_AqbGo4S~;Hu*dY*1X`>>Xq&pWv!OF?Z-jT^KU%KvUHGP^u&cY2|xdVAEE z7}>empszZ4^|Wp>4DHpEVcEq7y?AB`OXTI%rw0*P$&^c|J6x~_1j&Q%34o=Vy~EyD z8*7l3�sBM~Mx&J|RDG9?^rD(==I~dS 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ⅅq8TwR|9 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%0D?JEop#W5i9CD40Ny+TH%FLNY$ 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 IhyU{b0Ag@SGXMYp diff --git a/Shader Forge/Assets/ShaderForge/Example Assets/Textures/sf_conc_floor_01_n.tga.meta b/Shader Forge/Assets/ShaderForge/Example Assets/Textures/sf_conc_floor_01_n.tga.meta deleted file mode 100644 index e363b363..00000000 --- a/Shader Forge/Assets/ShaderForge/Example Assets/Textures/sf_conc_floor_01_n.tga.meta +++ /dev/null @@ -1,45 +0,0 @@ -fileFormatVersion: 2 -guid: bbab0a6f7bae9cf42bf057d8ee2755f6 -TextureImporter: - serializedVersion: 2 - mipmaps: - mipMapMode: 0 - enableMipMap: 1 - linearTexture: 1 - correctGamma: 0 - fadeOut: 0 - borderMipMap: 0 - mipMapFadeDistanceStart: 1 - mipMapFadeDistanceEnd: 3 - bumpmap: - convertToNormalMap: 0 - externalNormalMap: 1 - heightScale: .25 - normalMapFilter: 0 - isReadable: 0 - grayScaleToAlpha: 0 - generateCubemap: 0 - seamlessCubemap: 0 - textureFormat: -1 - maxTextureSize: 1024 - textureSettings: - filterMode: -1 - aniso: 3 - mipBias: -1 - wrapMode: -1 - nPOTScale: 1 - lightmap: 0 - compressionQuality: 50 - spriteMode: 0 - spriteExtrude: 1 - spriteMeshType: 1 - alignment: 0 - spritePivot: {x: .5, y: .5} - spritePixelsToUnits: 100 - alphaIsTransparency: 0 - textureType: 1 - buildTargetSettings: [] - spriteSheet: - sprites: [] - spritePackingTag: - userData: diff --git a/Shader Forge/Assets/ShaderForge/Example Assets/Textures/sf_gradient_light_01.png b/Shader Forge/Assets/ShaderForge/Example Assets/Textures/sf_gradient_light_01.png deleted file mode 100644 index 4d6627f13a7c2cefd47cd4018209b9c7e6e1d14d..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3511 zcmV;o4M_5dP)KLZ*U+IBfRsybQWXdwQbLP>6pAqfylh#{fb6;Z(vMMVS~$e@S=j*ftg6;Uhf59&ghTmgWD0l;*T zI709Y^p6lP1rIRMx#05C~cW=H_Aw*bJ-5DT&Z2n+x)QHX^p z00esgV8|mQcmRZ%02D^@S3L16t`O%c004NIvOKvYIYoh62rY33S640`D9%Y2D-rV&neh&#Q1i z007~1e$oCcFS8neI|hJl{-P!B1ZZ9hpmq0)X0i`JwE&>$+E?>%_LC6RbVIkUx0b+_+BaR3cnT7Zv!AJxW zizFb)h!jyGOOZ85F;a?DAXP{m@;!0_IfqH8(HlgRxt7s3}k3K`kFu>>-2Q$QMFfPW!La{h336o>X zu_CMttHv6zR;&ZNiS=X8v3CR#fknUxHUxJ0uoBa_M6WNWeqIg~6QE69c9o#eyhGvpiOA@W-aonk<7r1(?fC{oI5N*U!4 zfg=2N-7=cNnjjOr{yriy6mMFgG#l znCF=fnQv8CDz++o6_Lscl}eQ+l^ZHARH>?_s@|##Rr6KLRFA1%Q+=*RRWnoLsR`7U zt5vFIcfW3@?wFpwUVxrVZ>QdQz32KIeJ}k~{cZZE^+ya? z2D1z#2HOnI7(B%_ac?{wFUQ;QQA1tBKtrWrm0_3Rgps+?Jfqb{jYbcQX~taRB;#$y zZN{S}1|}gUOHJxc?wV3fxuz+mJ4`!F$IZ;mqRrNsHJd##*D~ju=bP7?-?v~|cv>vB zsJ6IeNwVZxrdjT`yl#bBIa#GxRa#xMMy;K#CDyyGyQdMSxlWT#tDe?p!?5wT$+oGt z8L;Kp2HUQ-ZMJ=3XJQv;x5ci*?vuTfeY$;({XGW_huIFR9a(?@3)XSs8O^N5RyOM=TTmp(3=8^+zpz2r)C z^>JO{deZfso3oq3?Wo(Y?l$ge?uXo;%ru`Vo>?<<(8I_>;8Eq#KMS9gFl*neeosSB zfoHYnBQIkwkyowPu(zdms`p{<7e4kra-ZWq<2*OsGTvEV%s0Td$hXT+!*8Bnh2KMe zBmZRodjHV?r+_5^X9J0WL4jKW`}lf%A-|44I@@LTvf1rHjG(ze6+w@Jt%Bvjts!X0 z?2xS?_ve_-kiKB_KiJlZ$9G`c^=E@oNG)mWWaNo-3TIW8)$Hg0Ub-~8?KhvJ>$ z3*&nim@mj(aCxE5!t{lw7O5^0EIO7zOo&c6l<+|iDySBWCGrz@C5{St!X3hAA}`T4 z(TLbXTq+(;@<=L8dXnssyft|w#WSTW<++3>sgS%(4NTpeI-VAqb|7ssJvzNHgOZVu zaYCvgO_R1~>SyL=cFU|~g|hy|Zi}}s9+d~lYqOB71z9Z$wnC=pR9Yz4DhIM>Wmjgu z&56o6maCpC&F##y%G;1PobR9i?GnNg;gYtchD%p19a!eQtZF&3JaKv33gZ<8D~47E ztUS1iwkmDaPpj=$m#%)jCVEY4fnLGNg2A-`YwHVD3gv};>)hAvT~AmqS>Lr``i7kw zJ{5_It`yrBmlc25DBO7E8;5VoznR>Ww5hAaxn$2~(q`%A-YuS64wkBy=9dm`4cXeX z4c}I@?e+FW+b@^RDBHV(wnMq2zdX3SWv9u`%{xC-q*U}&`cyXV(%rRT*Z6MH?i+i& z_B8C(+grT%{XWUQ+f@NoP1R=AW&26{v-dx)iK^-Nmiuj8txj!m?Z*Ss1N{dh4z}01 z)YTo*JycSU)+_5r4#yw9{+;i4Ee$peRgIj+;v;ZGdF1K$3E%e~4LaI(jC-u%2h$&R z9cLXcYC@Xwnns&bn)_Q~Te?roKGD|d-g^8;+aC{{G(1^(O7m37Y1-+6)01cN&y1aw zoqc{T`P^XJqPBbIW6s}d4{z_f5Om?vMgNQEJG?v2T=KYd^0M3I6IZxbny)%vZR&LD zJpPl@Psh8QyPB@KTx+@RdcC!KX7}kEo;S|j^u2lU7XQ}Oo;f|;z4Ll+_r>@1-xl3| zawq-H%e&ckC+@AhPrP6BKT#_XdT7&;F71j}Joy zkC~6lh7E@6o;W@^IpRNZ{ptLtL(gQ-CY~4mqW;US7Zxvm_|@yz&e53Bp_lTPlfP|z zrTyx_>lv@x#=^!PzR7qqF<$gm`|ZJZ+;<)Cqu&ot2z=0000WV@Og>004R=004l4008;_004mL004C`008P>0026e000+nl3&F} z0008wNkl&&Gs5w5j%^GxJsywi z`~AXk9Poa>;rV>R>-B=;INfuuoN1ORZ?bwU2($KeJ1x2^${$HlMk zPt`>H-BGqhCo2;sC!2v%HB?S^;ZQ_DE%b+p&Dn8Kqu`u%)M6W(oOA6Ou(Ko%q6w;K z`s%_=){k)z>1N5oI21@WhdJiMJtkDT3m>??kOV>q5MQy&v6Yp78Go;E$W2rN=Xt_; zo)87wp^jfs_CGaZ_inL?Vf@9y5!0TX zVN@h>BW*iI;o@aaC~U&0Q?Z&+rXDqRz8KF3X*6K7x|(6kgEv#%$}D$Xqm^Yk>#6&N zI+=^Zp84!=4%0MX^aIs&r0vUU^=Pl2+{LRNQ-5e8OQgFEYAW{jQH}eW#6dlnk8#m= zL1A*T`TDWSN%26c-VOfdMytJ7i3fWo9aES@wS=OpzfO{4P!o- z$P(!u|L1~gVhjfyCOJQhUCW#6q7NvJEc-pJ$;3T4+!v-=IP5eymU3NO{2KLZ*U+IBfRsybQWXdwQbLP>6pAqfylh#{fb6;Z(vMMVS~$e@S=j*ftg6;Uhf59&ghTmgWD0l;*T zI709Y^p6lP1rIRMx#05C~cW=H_Aw*bJ-5DT&Z2n+x)QHX^p z00esgV8|mQcmRZ%02D^@S3L16t`O%c004NIvOKvYIYoh62rY33S640`D9%Y2D-rV&neh&#Q1i z007~1e$oCcFS8neI|hJl{-P!B1ZZ9hpmq0)X0i`JwE&>$+E?>%_LC6RbVIkUx0b+_+BaR3cnT7Zv!AJxW zizFb)h!jyGOOZ85F;a?DAXP{m@;!0_IfqH8(HlgRxt7s3}k3K`kFu>>-2Q$QMFfPW!La{h336o>X zu_CMttHv6zR;&ZNiS=X8v3CR#fknUxHUxJ0uoBa_M6WNWeqIg~6QE69c9o#eyhGvpiOA@W-aonk<7r1(?fC{oI5N*U!4 zfg=2N-7=cNnjjOr{yriy6mMFgG#l znCF=fnQv8CDz++o6_Lscl}eQ+l^ZHARH>?_s@|##Rr6KLRFA1%Q+=*RRWnoLsR`7U zt5vFIcfW3@?wFpwUVxrVZ>QdQz32KIeJ}k~{cZZE^+ya? z2D1z#2HOnI7(B%_ac?{wFUQ;QQA1tBKtrWrm0_3Rgps+?Jfqb{jYbcQX~taRB;#$y zZN{S}1|}gUOHJxc?wV3fxuz+mJ4`!F$IZ;mqRrNsHJd##*D~ju=bP7?-?v~|cv>vB zsJ6IeNwVZxrdjT`yl#bBIa#GxRa#xMMy;K#CDyyGyQdMSxlWT#tDe?p!?5wT$+oGt z8L;Kp2HUQ-ZMJ=3XJQv;x5ci*?vuTfeY$;({XGW_huIFR9a(?@3)XSs8O^N5RyOM=TTmp(3=8^+zpz2r)C z^>JO{deZfso3oq3?Wo(Y?l$ge?uXo;%ru`Vo>?<<(8I_>;8Eq#KMS9gFl*neeosSB zfoHYnBQIkwkyowPu(zdms`p{<7e4kra-ZWq<2*OsGTvEV%s0Td$hXT+!*8Bnh2KMe zBmZRodjHV?r+_5^X9J0WL4jKW`}lf%A-|44I@@LTvf1rHjG(ze6+w@Jt%Bvjts!X0 z?2xS?_ve_-kiKB_KiJlZ$9G`c^=E@oNG)mWWaNo-3TIW8)$Hg0Ub-~8?KhvJ>$ z3*&nim@mj(aCxE5!t{lw7O5^0EIO7zOo&c6l<+|iDySBWCGrz@C5{St!X3hAA}`T4 z(TLbXTq+(;@<=L8dXnssyft|w#WSTW<++3>sgS%(4NTpeI-VAqb|7ssJvzNHgOZVu zaYCvgO_R1~>SyL=cFU|~g|hy|Zi}}s9+d~lYqOB71z9Z$wnC=pR9Yz4DhIM>Wmjgu z&56o6maCpC&F##y%G;1PobR9i?GnNg;gYtchD%p19a!eQtZF&3JaKv33gZ<8D~47E ztUS1iwkmDaPpj=$m#%)jCVEY4fnLGNg2A-`YwHVD3gv};>)hAvT~AmqS>Lr``i7kw zJ{5_It`yrBmlc25DBO7E8;5VoznR>Ww5hAaxn$2~(q`%A-YuS64wkBy=9dm`4cXeX z4c}I@?e+FW+b@^RDBHV(wnMq2zdX3SWv9u`%{xC-q*U}&`cyXV(%rRT*Z6MH?i+i& z_B8C(+grT%{XWUQ+f@NoP1R=AW&26{v-dx)iK^-Nmiuj8txj!m?Z*Ss1N{dh4z}01 z)YTo*JycSU)+_5r4#yw9{+;i4Ee$peRgIj+;v;ZGdF1K$3E%e~4LaI(jC-u%2h$&R z9cLXcYC@Xwnns&bn)_Q~Te?roKGD|d-g^8;+aC{{G(1^(O7m37Y1-+6)01cN&y1aw zoqc{T`P^XJqPBbIW6s}d4{z_f5Om?vMgNQEJG?v2T=KYd^0M3I6IZxbny)%vZR&LD zJpPl@Psh8QyPB@KTx+@RdcC!KX7}kEo;S|j^u2lU7XQ}Oo;f|;z4Ll+_r>@1-xl3| zawq-H%e&ckC+@AhPrP6BKT#_XdT7&;F71j}Joy zkC~6lh7E@6o;W@^IpRNZ{ptLtL(gQ-CY~4mqW;US7Zxvm_|@yz&e53Bp_lTPlfP|z zrTyx_>lv@x#=^!PzR7qqF<$gm`|ZJZ+;<)Cqu&ot2z=0000WV@Og>004R=004l4008;_004mL004C`008P>0026e000+nl3&F} z0008FNkl2DW#%pT<-1Rw)I5N1FFU?7ZZ-Ut|p z4*3W)5)DA}^B%@dpWkbsll$85&9m#i2Xq=bfNmK30J_clzGkG$oxVNgXe657X~rS1 zjq?VgwJ{o}9em`l#oRXnpaF*Qk>hIw=xYP~k$(uI0jB49^ZBGR=kttM>-%i-7SJs5 zNpzX%aLM0-E|zp)patiJaE~~DNaJZ9M-=OPR^8JFci(6zjCt>k@0*ObZXB4Q0c-#| zU=3jR`33L-tOK~h`ttP`z%SqPxpjcwWAEO-_Rp?CpV#1J-Fey=*@jz(j0)Q8VNgzM zXw0Obrvrf?NI=lK9~~qV2v~+zv^;|tWI;oKxZ7Sy_M6q<$D3_J4FxHBKlzjlJOVP5 zba*_}8EG59Bc1q0YmWyca>}CmTuicM-Lt4nHcGbLWY^~b7Wosk-3n-Ye2*!B|C0pX z5`qr$WOtQ`Nc(*zrqUC)C!M3uZy&Po9iNy~57YH4KjkQRR@jo3v#rLg4sX7=P z)?1=Zz=T!@d2}KZX5JEoLXhi_$OCq$*#T%zE_h}sY6bW5=bp{Q!Uu;|YVSB^YS0SS zEohY-!@`FOaxfK0EeCTMYN^WG2D+1iLaG~%5V`Cl6b|8D<%pLOQaO-y^@)MJW&Q$q zG3a6?(4-v_7LzU;cwc&O6`jkmE!Vk%>VqVLs&XcMh4-%FuPwZOkx#!==vO`why~M# uZ)yc3`SNd6WUu3|*WUU400030{{sMr`3M{A$!7lm0000KLZ*U+IBfRsybQWXdwQbLP>6pAqfylh#{fb6;Z(vMMVS~$e@S=j*ftg6;Uhf59&ghTmgWD0l;*T zI709Y^p6lP1rIRMx#05C~cW=H_Aw*bJ-5DT&Z2n+x)QHX^p z00esgV8|mQcmRZ%02D^@S3L16t`O%c004NIvOKvYIYoh62rY33S640`D9%Y2D-rV&neh&#Q1i z007~1e$oCcFS8neI|hJl{-P!B1ZZ9hpmq0)X0i`JwE&>$+E?>%_LC6RbVIkUx0b+_+BaR3cnT7Zv!AJxW zizFb)h!jyGOOZ85F;a?DAXP{m@;!0_IfqH8(HlgRxt7s3}k3K`kFu>>-2Q$QMFfPW!La{h336o>X zu_CMttHv6zR;&ZNiS=X8v3CR#fknUxHUxJ0uoBa_M6WNWeqIg~6QE69c9o#eyhGvpiOA@W-aonk<7r1(?fC{oI5N*U!4 zfg=2N-7=cNnjjOr{yriy6mMFgG#l znCF=fnQv8CDz++o6_Lscl}eQ+l^ZHARH>?_s@|##Rr6KLRFA1%Q+=*RRWnoLsR`7U zt5vFIcfW3@?wFpwUVxrVZ>QdQz32KIeJ}k~{cZZE^+ya? z2D1z#2HOnI7(B%_ac?{wFUQ;QQA1tBKtrWrm0_3Rgps+?Jfqb{jYbcQX~taRB;#$y zZN{S}1|}gUOHJxc?wV3fxuz+mJ4`!F$IZ;mqRrNsHJd##*D~ju=bP7?-?v~|cv>vB zsJ6IeNwVZxrdjT`yl#bBIa#GxRa#xMMy;K#CDyyGyQdMSxlWT#tDe?p!?5wT$+oGt z8L;Kp2HUQ-ZMJ=3XJQv;x5ci*?vuTfeY$;({XGW_huIFR9a(?@3)XSs8O^N5RyOM=TTmp(3=8^+zpz2r)C z^>JO{deZfso3oq3?Wo(Y?l$ge?uXo;%ru`Vo>?<<(8I_>;8Eq#KMS9gFl*neeosSB zfoHYnBQIkwkyowPu(zdms`p{<7e4kra-ZWq<2*OsGTvEV%s0Td$hXT+!*8Bnh2KMe zBmZRodjHV?r+_5^X9J0WL4jKW`}lf%A-|44I@@LTvf1rHjG(ze6+w@Jt%Bvjts!X0 z?2xS?_ve_-kiKB_KiJlZ$9G`c^=E@oNG)mWWaNo-3TIW8)$Hg0Ub-~8?KhvJ>$ z3*&nim@mj(aCxE5!t{lw7O5^0EIO7zOo&c6l<+|iDySBWCGrz@C5{St!X3hAA}`T4 z(TLbXTq+(;@<=L8dXnssyft|w#WSTW<++3>sgS%(4NTpeI-VAqb|7ssJvzNHgOZVu zaYCvgO_R1~>SyL=cFU|~g|hy|Zi}}s9+d~lYqOB71z9Z$wnC=pR9Yz4DhIM>Wmjgu z&56o6maCpC&F##y%G;1PobR9i?GnNg;gYtchD%p19a!eQtZF&3JaKv33gZ<8D~47E ztUS1iwkmDaPpj=$m#%)jCVEY4fnLGNg2A-`YwHVD3gv};>)hAvT~AmqS>Lr``i7kw zJ{5_It`yrBmlc25DBO7E8;5VoznR>Ww5hAaxn$2~(q`%A-YuS64wkBy=9dm`4cXeX z4c}I@?e+FW+b@^RDBHV(wnMq2zdX3SWv9u`%{xC-q*U}&`cyXV(%rRT*Z6MH?i+i& z_B8C(+grT%{XWUQ+f@NoP1R=AW&26{v-dx)iK^-Nmiuj8txj!m?Z*Ss1N{dh4z}01 z)YTo*JycSU)+_5r4#yw9{+;i4Ee$peRgIj+;v;ZGdF1K$3E%e~4LaI(jC-u%2h$&R z9cLXcYC@Xwnns&bn)_Q~Te?roKGD|d-g^8;+aC{{G(1^(O7m37Y1-+6)01cN&y1aw zoqc{T`P^XJqPBbIW6s}d4{z_f5Om?vMgNQEJG?v2T=KYd^0M3I6IZxbny)%vZR&LD zJpPl@Psh8QyPB@KTx+@RdcC!KX7}kEo;S|j^u2lU7XQ}Oo;f|;z4Ll+_r>@1-xl3| zawq-H%e&ckC+@AhPrP6BKT#_XdT7&;F71j}Joy zkC~6lh7E@6o;W@^IpRNZ{ptLtL(gQ-CY~4mqW;US7Zxvm_|@yz&e53Bp_lTPlfP|z zrTyx_>lv@x#=^!PzR7qqF<$gm`|ZJZ+;<)Cqu&ot2z=0000WV@Og>004R=004l4008;_004mL004C`008P>0026e000+nl3&F} z0004sNkli_s~EninOe0*QC2oLV^S;6YK*gwU6mD z+#P1tN7PgMk6Xu&eaG<_=REj*MBL1! zUduVdA>NKP(JOi^Vg(7n8_@4+oBBWDP;~Z_mIOeEoq_*o5s;`z0K}cUf6Mi3Jq-vu zw*5i^ARZND_L@{+>khsq0^0p00OARhKZq*@uLM9GEI$`Q0`QJGzm?%$%*XqJg7{Gc z!sfCgy=Wz(m1@uUt-Y_0^V0hO34r)#Cyup0t_TT$(2-wA0L0mZ;GVAl5-tgV*co(3 z3Zh5YqW1w30C8eb(5@~45JI9M0T4oIz)|@I009600{~q-U&_=;TxtLS002ovPDHLk FV1h~L>M{TT diff --git a/Shader Forge/Assets/ShaderForge/Example Assets/Textures/sf_gradient_ramp_02.png.meta b/Shader Forge/Assets/ShaderForge/Example Assets/Textures/sf_gradient_ramp_02.png.meta deleted file mode 100644 index 7b477c9d..00000000 --- a/Shader Forge/Assets/ShaderForge/Example Assets/Textures/sf_gradient_ramp_02.png.meta +++ /dev/null @@ -1,45 +0,0 @@ -fileFormatVersion: 2 -guid: 181ec605fb3b4314bbee61db18ab41c0 -TextureImporter: - serializedVersion: 2 - mipmaps: - mipMapMode: 0 - enableMipMap: 1 - linearTexture: 0 - correctGamma: 0 - fadeOut: 0 - borderMipMap: 0 - mipMapFadeDistanceStart: 1 - mipMapFadeDistanceEnd: 3 - bumpmap: - convertToNormalMap: 0 - externalNormalMap: 0 - heightScale: .25 - normalMapFilter: 0 - isReadable: 0 - grayScaleToAlpha: 0 - generateCubemap: 0 - seamlessCubemap: 0 - textureFormat: -1 - maxTextureSize: 1024 - textureSettings: - filterMode: -1 - aniso: -1 - mipBias: -1 - wrapMode: 1 - nPOTScale: 1 - lightmap: 0 - compressionQuality: 50 - spriteMode: 0 - spriteExtrude: 1 - spriteMeshType: 1 - alignment: 0 - spritePivot: {x: .5, y: .5} - spritePixelsToUnits: 100 - alphaIsTransparency: 0 - textureType: -1 - buildTargetSettings: [] - spriteSheet: - sprites: [] - spritePackingTag: - userData: diff --git a/Shader Forge/Assets/ShaderForge/Example Assets/Textures/sf_leaves_01_d.tga b/Shader Forge/Assets/ShaderForge/Example Assets/Textures/sf_leaves_01_d.tga deleted file mode 100644 index 2b47cbddbaef164f364bdcca6172cc0e7e14d4e7..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 4194348 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 z%0A%U;j+h*rgPY#bJ(eS@6I{roO?Rw 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 Zosj`> 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

    pYJ!V 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

    !=SW&!*2E=QF<@J?O~uxR^5S&v`jq*_GGh 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
    o` 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


    rNkmwGwLU?$->whV$gP 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 Q?8w(IJe}%@5aa6j0d<22HF$8#W^)a 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׮L|^Su>pe!x&-gK({fBu1POB4GP6oblT6zPZ^HWR#`90B;h`2P6=g8#zG&Yd5~^fR{UsH9O$J9^U9-e#^1< z^norqv%L9e)SmaK%bYiET{5;Ch;JF58Rhp()_*sAnW@kF$yOWZ8&5s(ZXW3zv+Z=| z7F@#!FXlAw!!#fMq~GY#7oiPLF$(uje$RU!y;5p6CVrq^fR8hpZXaHt-_-u@)B0|! zS2tEq&40AidK|z3+{aAINjyg+^ClJX5NhL@NCChPtfeu!oR7X0k6d&KkYayuWzovy)qU9WfG?QWo(@5Bvt z(AYYSwc`U>G%jEMzN~K=We0q55Z>6v$FYeAV5b_62EUcOzk@JuavJwK4-Y%ncEOC% z{WsDkH^>US6*j-~yk3~J{X5+=?tX5ea^E*sEBCzUI(bFLArDEdZMho{a^*MXD_?nf zy7JXgy8T?Ix`5HjrSs~P2W#a3s0Em6sa&0mztlxPyC4VQVaHQVx8r}0Yit8-ayuW* z4SdX3@il)5cDaIA=88G>`sesI@QU$GBuk;oZ#Ls=;%}(q4M}$5B;M`>-se#``Miw% zlYBg-Z=drZdUA03;JY%>Tr)?XSgqW))LXe%-oR1k+Fg#*)iO8k!sG04-R{KQ9dT_8 z!mY!ml8xqZ03IHPUzg$I71M~igIV}FH3!Gx<~3gT6`6k%YTZZp0H!_;mX(kGy4rFX zYNNFF1>c)X4Us81Y~wNj`l7G9zpYv4(9aBv$XgDyhS|w@c>NXt>*2^)afVpZx&Xcgz+bE10CzWhH2j$ z!q0TL){-H3l2;-10>f}&zPHS`kbKu3-i1Zmby8i`yk3AyID)mp*(MK0Us?O5k6tb3 zy^8;{zg){Rc!2Z?m~l-n`7Qn5OP{-Dyh^b1z0Sjp$whR(JqX*veeOfJ0{4+|%N+In zK+&RDD|5$#`5j6q3d2IG22asPVKDzV@+{_cO1#g}ngFNkeQs~9w z{oSsIJ?a`B^gpx#-+Zt8%7d=cI{x}h;i6Mhe~--1yYZ$s;@hs^0lLKX^5qr0wEx_% zq&`5-Md1MA4OnikT*4o46@S_lc(yO$3cjRQ%va7LvFgLf;fY5@W3|Iizc*BpG)^v0t#`(Hg*v+I?IYxE$h+4suXngg#tT65&}$7_zh z^%14NPVWxZ_a5(stiROA8>bhoHW;{y`>Q&7xPU6YuI85e zJ}j?pqiF5Li(fGPI<_~)FM573Kh7Z>K*{XOcf2mO0O114Z&h)ASw`Ums+xbWeRVx8 z)ANGI!#Tj=@$;ALdCQGQpx(Hzyv9*fa{_#x`NCP)j%fZxt2bYsr{+JIeg*f(^Z#4? zA8eatt?!HY1}x`~2me>sI~+?q35CD$Smi;g`z$*BA2$Eb?_SjZ{}$^1;m4BsQS~GQ z0~Z|Zb>S=CPaTfyJjX8m4Al1IK5}77mPg6+DA%m(#P$5Q)&Kv;ga4oXqu2j0;P`0# zRZqaPg@+FIFSYpv|5rJHDi4tP;t5#i58RjYI@*5oI>vA0_iy@E75hi~PyS!Q{Fx{3 zn=keJ9m)Iq?h8fRANu|qH6!r<_@92OX7MK<9ytDsADvtH$@kuw`Qn5BF**J7Kcl^v zCVs50??V~9-{vot;n(@Wb4B}q@Edx1eG|6)_A`3=zEHH-cAo5`{)@NBX4@{ud^;U) zyE@!G(QRoD+j#QgcMcxg!NIBWC+fhKiEIL{??4;N{)c>b20!=!v4|rqwz1w zA51^J5#Q~DiJHIrO}(_9tn7Q?5p|Wvc)ceo8;rAVJ2_Ih1@=q5`d!xhZaVATr-mzc z@jE>5)T~T9n!XywT7J#_w)F^1bqH5*1ZJuWj)$q*lc!F*ZGs`1WzP4>Nt&Xq^cfp& zhgmn_3L4*{DZ}xd{1WwWWg{F^{}L<=$HWtG6y9%AM_NZ4jW;0kB$utN=>EJF@JomB z;)wCpm}L(e<4(agGw^$Q>y7YVjvI>&@?dnqo5{jYFTG&*5qk1CtUqZiJ4Dav=XoBc z|4-2nJ9#;`@-5uQ=YGVxjT_g^;A&=gX(wp^BXpoCWAaJkzhLM-W5uaY;2-@a=6=M> z{MmQ)*w$;3|G)oZz3aT!Pb=y)R_??_Bx5d_^DQ*HcJp-N1$t#?9pP=*g$wEBQJvLO zV%WI3)&4nZ9|SinCeMy;w@m9C;#Up!Yms?AZkxyXG#c&mTK?@$T*r)Y{u+((G5pWN zFvSv#vP4gufxAX&wdrA)UT?#E4(;-~YGwBCcD!zfi*MrRxRd8U_2`@FZpq{8%@oeX z_&s(0JJbanhV2`jH#zpZVdb5$@<#LDi96T>b2ac~9Mb>mFkOEKFZ~w0LW6aTx1+(a zJd7)<AKLIF$+I8jD^I@s6#UZQvs?K{E{FAR!^1rYm+x?X z-cSEa{mDVzi6K2ZI^p3~=TV#A$vH6X*bO30n(uY}$7gUo-~UaiA#(oTjsu8q_b$2r_r4(0>ka$lJs$J-zfsxfy14S` znaWkq%~ih48*`W6+Hi&+U;_RhrbCYL{=*yB!`b)H{x{(gjyS)M@<$&s?+#qUCjN@M z@rJi9cUNwj@2Gr@hxw~>ZSYD<<$7M`oix&R_&y+&=pIv2XGd*`E0vm zbQrgmthn?>i(kImd6PW+)al1FA0K~u>6Lsw?=8a6C!Kf4P3h?u-+Qw5dTHoma{rR2 zH*Y9RkR{Q~SS=M|n>(*nLE%0=3 z_o#c@6#ik%c8$Q@C0o!n9uB$7I`*YjogUrpo>U8eZ%sace2wkSk8P&CxSUqY>-OEj zoD=RPsrR4elS!|`W%z&DeoQZb)W8qpV&>xwFwNqnljE8i_+$~nnxzNcr2nPl=*3Tv z{x8YaOU;FT^RTd-1AL#l>@uY`;Gk>pkbB7i-hi#Hqm8({L(aqW7i>5GA-rdJf*r2k zjs8P#ibp z!dKvGxd-moycqp55qf3Ww))>r25B$spFXweVbhr!Ib2AlE}tFc5!&OP)a3o<4`2Ro z554)stq0zGqGlibzxVZXHG5w>TeJ6-M{4%H_DIbEkB44+tcw5j?`xFZU-Xse-~|VI z9XuSo5C1pD-|zik++f7$-c`*%I=lCSk@J3df%pWmId1v z>|Vv$zpeQ%{DAr3?~?K7`|)? zzZ*?I>y2BozIXx4NTy$w5eyoRpuuvI>7RQ4)Hswn2m7P=1M-{3p5Yh@7qX83%f7IT zzpVdTZq_gSfPMJ4qyE3T-WTydUMS~Fu&ZNOd@1m4j#tjLa=v+;V_a%hoL}WLkA)w3 z_vLauB)=k4tJlQ?lk?x}M*SlTH|2au_WvJe{=eV>bG-3`IcM73`~H%5 z|M%km|6|AhRSaLSf5H2|d;ME&KiHnWU!5mBKwejC11{7MlpMd@hu3j_@PE<&;ryce z)BB6}Kb`>izp3=~d$y*N_rLRl7i+q|_fpN^Cwkrd;LVz$AH7{O|LM10IVFGZxcoNly!~fmy%Xj9-?)yN_ z6OX_VSm6N7RmY!LZ))P*Zl-e{dNtmGWf?}N^c8Af)VJ{oSVd1_(Vc)Ro7A&>DNr`CCYe2}#79dwU}c+2ls!+gK- z$VNCL+(E`P>9^Jkv&{4CKl+)SW0Bo3^Fzk-n`y=O!a#S*8M{Nzu{&`Q$==&Yt9`(D zY?Iuj&Gg)@##P&8)y11` z%$+>K_%7n-pM$>^VawzcjKQca&YvSP7wUO)la)zrp%V$RzKBE!uEKwe-U}=Vo`|fAq1pKaarZJNUwPsGm4M^X{e5C41p8 zz3~vgZUZi^7kAW;f7ywHx?R73oA`iI^M4bc&~5Pl2H5|0-lDDU6}9d+%^$v4IUoz* z9(=$RvH&lAYN~QMU(D8(h04vtYLxl?i}ufJ|0VVI*WyU-;wRY0J8;x}W`F!L@wzzY zw(|wt3-8>?r+o8bSHaw$48Kl4`>J7JR5g0s%J-shuD+RyFqd52z-eR!~waO2Z| z{tt?VJqDAFx*mpH7wLa6;2tpO92yC+-* zHzmXH9{c^U>!%SLs&UOumPh#YyD5u4n@_VAz>SHioz zH8lNX1Pquj8u$VqLp%Z9>7A+OVT^ZT3@%Qu#PqO?ei<&@k$m}KpJjUnoyUW4 zYRUbB&qu6NcX}vBZ|4Vy&wd_v&}N@>@(d(5aq_$0a*f)iT&K8zCG*Whb9X%?XHE{h zdjdR;1Dwb8&f`f=^A+THFR7mhCzBk6@W;s~7<1q1!FAT+vUcO*cKc7+qxNBk|A5`@ zO-Fs!gwJfVp51&kqt-E50ZaDTq+^*pfJOUoHT#;EXpw(x22T(^A~o~HnK{$Um?rW?1o85YahEr%V z??L{rk`Lg&d6RkX!xeAz|Fg+|R%!sk6AYAW-WT*lJYCr*2X?prl8rKBQ_pt=FVNL` zZ`>fO^Ew>i*ZI}HiW8`D{Uj^!KKOqt9{)C+;kE8nUt4IYd`UmdFRgS{E|CXRGanv6 zozAR@_ohbu&6m^`T#FCg^d!#TfBp{teeoeAKcNTiFFg|NhfeNgY-v4to2kHL@U!(uO`II_< zr{&q5FC0LF?EccD4(4qL?hpP?U3M@&{90ZI8ynwNb^fYOUgZKZ-#T^*E)EtCu3E?A z1^2_jSGE0oFVCwuKlS~2{aX)!*JW8AFZ2Yc{=Vhrz4h-F{XX-; z@MZbdBQ^i=0fZZ9vTbUR%C^X{sPY%qtI8c*r~!cYgZbZ#_MdIe`#b{C{_U57|Gii3 z&lk)XULkx!74v7m72JOj|J&d3V`Ts5IM{#Ap{Bo=_5am#uHmh0KfT;^K|lZ7>Hp6) z{QK1Zzwvip|Npy)|J~F6y7m7}h5LZjedl-i|LYjO==ZThz_F*vlW#3jZJR-T}Ga^&WfF zH0m=bS6rsi%cpo3VN-tS)HEK3Ne>vSghy!RJ7{{BH_(`-L0x3~yXphsr8eWNW*+q> zD%VlOM2bnm5hL0i4i#utx@Ahw)#-cVDXPvJUZq?l6wOkEVE&u}dvx1!*<|_cuv44y zWE1VNHFzJ!Pp|a>m_OJeJ<8I5tpRq3?(z`N#2&m!mUYPZJD9%pHCnCx+w_K9f4D9C zE<8;yT_ru?yHYC=otz%q>9L3Y-Vd)2!1aUh^$5Lb(0H^n>k|CpJ41Q@y_aam-=y)Y zDfW4K)pybT#&8ic@bokcGQ*=gVa(p^^WFBL zAmidqYCLwr{rh43?RbGYxVRT?>~@Y0I-dvZ-<${GwK`lcN1eYrjM49tk#~#UcgcLb zZob`^e$lbx(}4Ng?Dymt9N-mcwSDPD*zQ<$+6Tk1!ZBLyDZEDN`-9c`vi|VEu;aYn z@88Xvay$L+Y98Oa=z9BkclN|T@0`AyU;UctW;H4!l@{m9q+>s%1|WSN+USK1G|(-C=VksB_nN*>UX|XF9EpDc~Z`s*vc z|4ZiLJMO4#JU0*Tqz)c7azE*@-d#D@ox_dJy$2na4Qlak^1bU<_yE)cBy-~{vu$z! zCt<4RN?(wr;8y3tWc1u{K)m_KzxbR#{ZHM?U@*%Z@Eh@NB%`s}{VM$f)Aw-zr!s)Q zYI1z;Q4{gtxjBBEXNoUoJl7N6XN&t#daqw4AKxaH)+jp72G*S zr%rGAWtsi6Fzh6ZpL+c^oJ6-i8tL6P9-qK>@J@2{$N6lc&G)+wr(A<)Y5CK<_~{*( z=cm5-6vqEaS>KD#e^xHu8mzsVdMVoZ62E*r1gGHOb8v970@9}-`=CoNgC+R& zm~-m5`NNqlM%#DICoeJC?RTD)Zy^WsLA=Ki`=Ql&*zMd)&39_{)0Z$k3e;G;F5mY0 zy^;kuY`rHed)d0gyT1yjx9c0&Ne_5%X#Nh%SmyL6V?}YB|zh*Oz?0|FWsC!$p``KW=gYy`+ zt&`Sc-a5?5GMID!SX4VUZMo6^WzU;Ot^+$9UOMJ$PNB)ZZln{KJOZwz-4j)E?sQLYfYH{ zWMwl?-|d!l<9gQ5_38!EZ}2iXqL;3;>piPS$4W=lI}lD_xvg@E8iH%hca?em#PY7? ziQ8hm!UdFGf$)77t~maR9{2h#wR?U3J9OBm?64q6;B73SM&VW@wL~b-oMP7`Kp+|V0~C4+&~lkH1lK`B_lA{ z+PFHJY z%)P&y|L46dGns%M|IPV-{~q*z+WYSv|J!fX9KY

    V* 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⋙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

    >wr|V~kzkdg1?mV*It_;5Wl> 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

    `lKRSD^ki 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

    >J0S% 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 z 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 W{U5&n-QWJzzx??9=dXYLoBslbzra`k diff --git a/Shader Forge/Assets/ShaderForge/Example Assets/Textures/sf_leaves_01_d.tga.meta b/Shader Forge/Assets/ShaderForge/Example Assets/Textures/sf_leaves_01_d.tga.meta deleted file mode 100644 index 7144c287..00000000 --- a/Shader Forge/Assets/ShaderForge/Example Assets/Textures/sf_leaves_01_d.tga.meta +++ /dev/null @@ -1,45 +0,0 @@ -fileFormatVersion: 2 -guid: 66321cc856b03e245ac41ed8a53e0ecc -TextureImporter: - serializedVersion: 2 - mipmaps: - mipMapMode: 0 - enableMipMap: 1 - linearTexture: 0 - correctGamma: 0 - fadeOut: 0 - borderMipMap: 0 - mipMapFadeDistanceStart: 1 - mipMapFadeDistanceEnd: 3 - bumpmap: - convertToNormalMap: 0 - externalNormalMap: 0 - heightScale: .25 - normalMapFilter: 0 - isReadable: 0 - grayScaleToAlpha: 0 - generateCubemap: 0 - seamlessCubemap: 0 - textureFormat: -1 - maxTextureSize: 1024 - textureSettings: - filterMode: -1 - aniso: 1 - mipBias: -1 - wrapMode: 0 - nPOTScale: 0 - lightmap: 0 - compressionQuality: 50 - spriteMode: 0 - spriteExtrude: 1 - spriteMeshType: 1 - alignment: 0 - spritePivot: {x: .5, y: .5} - spritePixelsToUnits: 100 - alphaIsTransparency: 0 - textureType: 5 - buildTargetSettings: [] - spriteSheet: - sprites: [] - spritePackingTag: - userData: diff --git a/Shader Forge/Assets/ShaderForge/Example Assets/Textures/sf_leaves_01_n.png b/Shader Forge/Assets/ShaderForge/Example Assets/Textures/sf_leaves_01_n.png deleted file mode 100644 index 5419f377871783cfec93a276379cdf3e823433b9..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 924690 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%0AZa0EcUvQUtE5VL1)p4dPnlwVTwLlesNnLG} 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%0D0%J*^h>yjLY40x4(sL(fuRfw+@b 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ℑ`nC0c&n>>KAuiX;?`vRzdTS9) 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%0D=}fpV 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

    S0crMraIi9k%Q?3P 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 Ef}?TVEC2ui diff --git a/Shader Forge/Assets/ShaderForge/Example Assets/Textures/sf_leaves_01_n.png.meta b/Shader Forge/Assets/ShaderForge/Example Assets/Textures/sf_leaves_01_n.png.meta deleted file mode 100644 index 6c3baa3e..00000000 --- a/Shader Forge/Assets/ShaderForge/Example Assets/Textures/sf_leaves_01_n.png.meta +++ /dev/null @@ -1,45 +0,0 @@ -fileFormatVersion: 2 -guid: cb6c5165ed180c543be39ed70e72abc8 -TextureImporter: - serializedVersion: 2 - mipmaps: - mipMapMode: 0 - enableMipMap: 1 - linearTexture: 1 - correctGamma: 0 - fadeOut: 0 - borderMipMap: 0 - mipMapFadeDistanceStart: 1 - mipMapFadeDistanceEnd: 3 - bumpmap: - convertToNormalMap: 0 - externalNormalMap: 1 - heightScale: .25 - normalMapFilter: 0 - isReadable: 0 - grayScaleToAlpha: 0 - generateCubemap: 0 - seamlessCubemap: 0 - textureFormat: -1 - maxTextureSize: 2048 - textureSettings: - filterMode: -1 - aniso: -1 - mipBias: -1 - wrapMode: -1 - nPOTScale: 0 - lightmap: 0 - compressionQuality: 50 - spriteMode: 0 - spriteExtrude: 1 - spriteMeshType: 1 - alignment: 0 - spritePivot: {x: .5, y: .5} - spritePixelsToUnits: 100 - alphaIsTransparency: 0 - textureType: 5 - buildTargetSettings: [] - spriteSheet: - sprites: [] - spritePackingTag: - userData: diff --git a/Shader Forge/Assets/ShaderForge/Example Assets/Textures/sf_noise_clouds_01.png b/Shader Forge/Assets/ShaderForge/Example Assets/Textures/sf_noise_clouds_01.png deleted file mode 100755 index 9eca152fc349384dee693381c381d3b6d710248c..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 396918 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

    Tm-srflZ0X}h;SQKcJs{0u%{LO#QZPG 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 ~C1ZBtCU_-MVS?@Y_zkJIvhcBnwX3 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≪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 diff --git a/Shader Forge/Assets/ShaderForge/Example Assets/Textures/sf_noise_clouds_01.png.meta b/Shader Forge/Assets/ShaderForge/Example Assets/Textures/sf_noise_clouds_01.png.meta deleted file mode 100644 index e8d2d328..00000000 --- a/Shader Forge/Assets/ShaderForge/Example Assets/Textures/sf_noise_clouds_01.png.meta +++ /dev/null @@ -1,45 +0,0 @@ -fileFormatVersion: 2 -guid: 28c7aad1372ff114b90d330f8a2dd938 -TextureImporter: - serializedVersion: 2 - mipmaps: - mipMapMode: 0 - enableMipMap: 1 - linearTexture: 0 - correctGamma: 0 - fadeOut: 0 - borderMipMap: 0 - mipMapFadeDistanceStart: 1 - mipMapFadeDistanceEnd: 3 - bumpmap: - convertToNormalMap: 0 - externalNormalMap: 0 - heightScale: .25 - normalMapFilter: 0 - isReadable: 0 - grayScaleToAlpha: 0 - generateCubemap: 0 - seamlessCubemap: 0 - textureFormat: -1 - maxTextureSize: 1024 - textureSettings: - filterMode: -1 - aniso: -1 - mipBias: -1 - wrapMode: -1 - nPOTScale: 1 - lightmap: 0 - compressionQuality: 50 - spriteMode: 0 - spriteExtrude: 1 - spriteMeshType: 1 - alignment: 0 - spritePivot: {x: .5, y: .5} - spritePixelsToUnits: 100 - alphaIsTransparency: 0 - textureType: -1 - buildTargetSettings: [] - spriteSheet: - sprites: [] - spritePackingTag: - userData: diff --git a/Shader Forge/Assets/ShaderForge/Example Assets/Textures/sf_noise_grain_01.png b/Shader Forge/Assets/ShaderForge/Example Assets/Textures/sf_noise_grain_01.png deleted file mode 100644 index ba027b44360be4ec8d36ae018b138dd11280101d..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 128100 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

    dzqhA53S>`+ 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 z zvFu#O*t^R|JU1;XScesysONG#e|`va!Q4pq|BoDPAN;@}Atmoro zO&#!7Pr&^1wcFD7SBTlpT+4g@Lgo50@sYdKz9_@}O8ZWDA5lMS9sS6uf@JM>mxt}$ zNBe?1{wCtlB+8mG-W-W<+2gItD)Pd|4_MEl0*ZslQ>Ry9wy@3cv9Var-W!EIh>we_up0aR$JtMTtt{ET9m^Bx0sS|jGkVG~1_c4O=KaUBbEOdc zg#SyT!e#$Xu7D0#NWBD2|L;QM^BlD{xvfbd^=L~YI2rnB$H1SB+Keje>Mqp{k!h%} zbCRnw#W@W9Js6Jg2QzwJZrQx0)^_hkUZTNvhi9)}T&B=25p`l5pZTfsaLaF6F*vy< zT*C8y)UI)2)+ViNvuE;%cD+qE3T_ON`b@Kp?pJ6&3#~XNCc4_o!{dIV1O5a8=kjv? zfS-hNG^oO(p;{SR$Cb4bq4(?#5%9;LFv%t;1CZYOQV4-YYy}mCEan3%U0<%Kl(=UN zJU5#z3}r8PI-GJ#D)&ME+n6f@?iTkG=UiiS7U(g1W_wh~2N?U-E8W$)S~zT`$Pn65 zz(ke`AYZFDy}#>y@R8obUGHjGs+TIq7AlT;k5$gT`Nt-wAj(r_xtmrD+#34ftGl-E zoyEm%`^DE%LF!^p5!O)P56)iNhAv=+}Z(J?-H2AXfRPek9bA8`FnFS{zHdVC{+M`|@W7QjWFfNnzxk(8qZ8 zYLn~@XBJKG6=!CQ@QHjBM%$DHTtJ4*2Xw;+R{=pfR$-O zg6`Z66{+)Q)4vVP;%}}X#H@)__10eDA<|VFOb>I1avY(Zm^il?w zOvlKund63v-Np9ekt^j}mL?)ANDuALiPnKISKnulmErV#wb*#a(W6JLnYWR%_s}w( zq;p>X|4tGmgaUR9IMtdJ-of2n@PshalO5{a&$*6> zV_i#gt(f9B)_02!IB8Md0q-PCDc_zUTmB!7>(`j!b=#rOs}(t>2?K(BA@NxBj&0kf z87-J9TfPX_1qX0h!{M z6jF}t3C0xb>wEM&ZcJ#bhQHUUIRKEHsD0SG$|4(?UvDajs}~z+{*V7Aw{X&iFnyMz z7fQc6r9ec}M)8F+jhBfSGe~Dz8~13N1cc6#<8a-7*vKwUg%@ar6vkh-AM|rgkWtWxf=lSi+@PSyK&-C) z<;%jKI;G^0Q=x{TZDPB|>z!N@*0LG}-3kWV?zy`#WE;^V!Nq|RU40|%erEryuCc&- z!DLAj6C3x4ziY2@ZnRVv5Dm(oi=_6a#IR?=T6s&HU^2SIx%izsr^?lv|9x>MrB{?K!l65kje3$139$H#6?9D}f zu78-_dR~s^E|5)|TKwW3l6R&yn3eA{YFIRlY-RsVfs&5=S5;{#6FtS={Qud3dof=e zUv;N&lnZJajs7UhkkXY&l-0lI_5hnXnD$V8+}ubyLZi~;j#>p(j0O zMugZ>Mc?)kpAb(uo6v!b3)eF1$j$jT530b8e_v$ugY1uF2sTaOcTd(eah5}%Dn6I) zsyaWa^l|&m-C)?f(941fN-G?A@>x&W*UO9RWCTc(t|gbth*9$O?)h<^Wfpj|?hN-U zjN&Z!L|f>^7lqP`vVpH7c-i#k+g(J;_a!_HkiVkoU&Uh_#Pt(rk!-uqGWwJmbt6wA zXXX^?1n$o0B?KIh_jYHL!~y>N53wvkvK)o~n3#kQ>Ks-#CUHGxujL-Oe$3~+U3X5}c2%5Y0 z?5a`at>xo?nl9CFIDp)6F-;kKCmbC^MVZ*=njNwCQi=gY@U0Iyp5G*MF^aLY{Pn!*p0u)}`ld>l?{mQ_5IG0rWtK(pJa193Jk^%DzAh(w}Kq}{QZY_5C* z!FuV{3hh>p&2uP)-*RI*nnKh5e(UWK`b*l>Wm+-JGd8RJeMy;u^xtWIi-Jj(E^5)C zcgFm51q@5x6rp`fS%_a^_ow0uVas)nx7J;GWGHZU?;u^>8xd_Pug8GEEJiM!~$xVk;ieG&r~TyBNM?gi!49>*_ZvnHDDKYk3)UL)uiQIZX^_6iC{ z1hUE3QX}}+3NEtB6xxUiQ!_G8_z&Pr^U7j$d5@pBxA)zqZU@nlwoplVeR^>pEN}|B zr{ZFDvW^Z6Ov5D3TMK;nx98uBM{L{uDb+t1r_C*ID~T&7n#a9DJY3vH$sl(X?zpVR zq;f&PBP})6)zyV4MqK<;yA~w7hh1&FfnLc%<64w+qF%|6vM1*&&>X$%xO8mset8r9 zHC~mKHB8&N$Blol*40SfYw*l{m;dYngE;V24&3^@rXxm#Z6Uam(E6Jn);{_@^V=zl zp;?EX?c)S?RY3K;t`vN|c^nxvjOiQqQ1t4~J|Nq@8yOktk?j`5WPU&IYn!MoH`NAsEqFnEad@P}eMVH7G~JV#ajfAdGV;{!HzwTK!# zKRfffAOr_)YdktEj!cn}<%A~kYNW_?5@Mm~#Q^N+>>-w|goLsn8v+me&2A_Mc?WOl zh!0sKQmgd^= z8WQZ8j^%fIx=;80QW)RNoSk)Ihm}Cp%BT{<9Y>Fh0BWk9SL#Y{Zr&>Q+dJUlIeRA^ zQ^Fu$SPwuqtL@f@CW$07g(gyv$gL0B3cN1<1K#>=)u@ZKq>o~bN;{b+tIz1{gbfl_ zrvb$BT1GriwtcnM`H!k+ERgg(j>Hv1W?%BvG}#b$P(=l8;uxypTMK$ot0{4>0SVa{ z((y#z{q=5AH~H!?Q9=;v$*GR^b|g~*)w{-KSANM?H>~Hmt}0ry zxA-aFYj~QoaUEL+RVyR9YYcTO$F`{Y>P7$b!3n7?IH;hwDq^q|x67wSZ8LuV>iupV zs&`cG1lsS14uW%h!QN^E6lI22}O~SQT&fh)BM6H{R{r!@Q z1<^(<4wGNp-#lGftwG4t!xxA~PMc=J%y9d@ko0D^OT=J7`wJKJPrw9vO(ctpF$ek)H(%& zzC+JEz~}HmiiIEKKtJqa=gWR{`7F<`E`(_qoWL7k_q}@=Mj!53QW~j73%}ren_tKG z?;5&Gb~0sG$E-41ZZfgxFZT4U4~XR^eRY&&%DqSS#?{!9 ztFu6=+3jsmyp(A5pkFs>Na2&CY;hL9;xK&58Y*kg&+i=IGF(C-x_V6a*RE1`)?J+4 zN4btz|E_T-vb8y$23f6bXq~2@-t;ZBnk-RG5q7P|x^}9}hB}e8`uMQ*7UJa|D7O+Tvon!lS6Cm?Fj>oZ@*M z-KKSe+DRJS@9XNcGFp&^yB!>o>BLK8d3tlJ%AZtaQR5twpX+QI0=J;VlYMd7jU3Z7 zAYW2^*ywOr^D2^fY-KVxZ+Z0MiinIvg7H1_JO>9Ks*Lt06kb(M^ zCK8J7VCbA;C7Y_g0ogj-Q1}egpWeCy=2aB&*#`n7Gw=pmFUn=WbsrOT${|1BjJr!fv zmzKEEgs_}A|HJb{0BAVS#af-$olqiJb-2bqa`Iq=r2l}}Kljs4W)*iSYChF74&r&# z^$;>X1D%*sd*l+mWVkt5GVPN~^^rvJOu)S6Io-H)>*R*}|Wi;eYZT`ug0qfa`_obQ8jT0RqMmD6#po~G%=vS7 zh#h0(7gj~`Ss)c31Yw9ALSAQHb$!;g(lqemIzD0X!Slu@YuH%Ehi+LkzN9=B{9e47 zJ9uhd`S^C08tYdUrgABnzj2_&CS`GvH!sdUG4A%LkMhP1wOhAo&}0j8H*Vz6q@Q4{ z7H;F(<01I}@h)?@C@+Ut-pRI^mF2vZQH%Z&?A{ z-$pzfgC;mxSekN^w2X}R-zzKJ$8yb@QS6j7;|!XvEH6_;VNub=Hy2~bT;j0?kpnONQU>s-fTaSXKRaMv^J4QWMffh6jMJXWrF&MHc+a7+3C})0@J91W*UU}@9&hv zYF_7$H}hTto0ai1+U@mMWW;JGTy+Ibo)3wAA{pgv0Rt3qf6yTpOCXZqw27x7GL4qr zHSTw!|GNZ-XX*e<2~fa~+qay0LnMpxxD$gP6Qk<50|eL~b^J!C0&RzqILn*GA2n&M zJeh|!Vc<6QZfEMb=}CB__vAQp#{QIs#kuM1eUdQ9QhjNK|0=~ajk5C20M#ykS5M_w zURx-SMs7#Yn?Y&Y&Bt0G0sm9lufED9xmZo1^|(n1aNT6bU!{U(6)<-8o4j@Pl7n{<`=-cU}QzJ5?e zsOH7MOEcc!+P5A#LyBM66-rm;XWAfzLomU5WSi9OYSCU{ApN?<(W> zdB z2LC%Ez!sOe_2B0BGWG6CZ7-q;&;#Hq*EA`|Z0~@RA2lJYesy-+Z?Qjj6Gw&A-V^v& zG=JF;)IxZ|7^?ASsT)e*>8AY6J+t(ux0j_7^%byM;f5{BzfN;LxO!zEBk&|rA%u6P zxig=X#;i|AddXduF_Pnp;@xc+^Z20HEN%&53wu7;!&S-XS{5l`;$3u1vI5o4`bL4- zt$MZrPYGV(&`+ULm-Bh?h5lS2Xh#3MzdT&j6jZx)%Uyns8`f5{s&n0~%f3Di+kml< z%6;v^?wWPOjA)C-E ztS(x_IL|0%cDA;*j#aIQO{Lq2QfM#o^1vkg)Zfcq(|je##w>2;n)2?5+JGn<(L6?Y zQs9fQD`od<)J$8ArSb5hYQd!fQ}nh5FD)krOzHxbTKWH)U#8~>L@-NW+bf-FmIEt6 zEZj$>3-bwN-{Gvzr2A89X(AH1qhq$|wP+{q-s;7)6=Ul$i)xibJ%xzCZ#YnU{}?q? za54W1HxzPqA3uH!9ca3tvITns5#Kvm$iH7wpKkcg2hn%@6&_|(dM#V%l2MI|BdS?k zN`eEKQ0Ss`uc5+gSy_Ph*9*%-0@k2;2pv{Q!(<*!_cv<`l>ME92j(%nf6|Z6g+JjO zFAW`AN%bvPI*LaUq(0>68WB7uaJDkdJ1MYL88wX(q0~-S> zo?CMd29W37ykx}!3mrtYa@#9F=1KCMYj#Wmu=7HF!3A8R(=B$NAagJ1ej34K3$wdu z?YFXxJDc}(&w@D;`fho4VN7*-uFtfbPlNTV`EQS;B!kTXH5We#W<7+MAmQRWL|M`6dh#Q+ou#Ep>w>P4q`r>jwbiiS--) zD4sG48@tJ}u(bT^mqQ7o(z}mC_TYpUD4Xh%g9-+EgpBl3YIVhm^PWWAt=^Kcx_1lA zmQe-~x>csR(fe}QF8wya6`&syI+uL?u3lYlDQwDYeMo0Q;ncPOQph`TlAp&l9>zX^fk!qOx+uA1;!1uf+?R-h3aJp)y1^5BtzY zRPX*d8#l%Z~duK7FjvwQA7)^vU4=$m4PHyG}vn{T7|{l8m*J z5WCrO zLCr>QIM#d-!q+PhC2J64S82t$oG~Qb$r)v3uQ|Uo=9kv!(Bt!7Mo)q0d{yz=U?upX z2M*}y3aQ6L*q0ql1*S&(K|w*F_UOKJ3yGC(~+~WA)dwh{f zyJ%pnF%iCLr!YFd7hbq7D~7lZXN-HSa2bC3tG%>oxAgkuoW-r!+=Vc=!I}qVK hAj8XWSBM-~VXCh5WeqPGS<8eU9ZiG7FEp$J{s)4q{~G`R diff --git a/Shader Forge/Assets/ShaderForge/Example Assets/Textures/sf_noise_grain_01.png.meta b/Shader Forge/Assets/ShaderForge/Example Assets/Textures/sf_noise_grain_01.png.meta deleted file mode 100644 index 2b2980fd..00000000 --- a/Shader Forge/Assets/ShaderForge/Example Assets/Textures/sf_noise_grain_01.png.meta +++ /dev/null @@ -1,45 +0,0 @@ -fileFormatVersion: 2 -guid: e958c6041cfe445e987c73751e8d4082 -TextureImporter: - serializedVersion: 2 - mipmaps: - mipMapMode: 0 - enableMipMap: 1 - linearTexture: 0 - correctGamma: 0 - fadeOut: 0 - borderMipMap: 0 - mipMapFadeDistanceStart: 2 - mipMapFadeDistanceEnd: 3 - bumpmap: - convertToNormalMap: 0 - externalNormalMap: 0 - heightScale: .25 - normalMapFilter: 0 - isReadable: 0 - grayScaleToAlpha: 0 - generateCubemap: 0 - seamlessCubemap: 0 - textureFormat: 3 - maxTextureSize: 1024 - textureSettings: - filterMode: 1 - aniso: 1 - mipBias: 0 - wrapMode: 0 - nPOTScale: 0 - lightmap: 0 - compressionQuality: 50 - spriteMode: 0 - spriteExtrude: 1 - spriteMeshType: 1 - alignment: 0 - spritePivot: {x: .5, y: .5} - spritePixelsToUnits: 100 - alphaIsTransparency: 0 - textureType: -1 - buildTargetSettings: [] - spriteSheet: - sprites: [] - spritePackingTag: - userData: diff --git a/Shader Forge/Assets/ShaderForge/Example Assets/Textures/sf_parallax_test_ao_height.tga b/Shader Forge/Assets/ShaderForge/Example Assets/Textures/sf_parallax_test_ao_height.tga deleted file mode 100644 index 3d6fc2a5554b71f8dbf6c851d2a82e6a0bc32e4e..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 65580 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 b0H{9^jYY^Yu!1Mh0ImBE|Eo|#zW)CJG-7BF diff --git a/Shader Forge/Assets/ShaderForge/Example Assets/Textures/sf_rgb_overlap.png.meta b/Shader Forge/Assets/ShaderForge/Example Assets/Textures/sf_rgb_overlap.png.meta deleted file mode 100644 index 8c4a340f..00000000 --- a/Shader Forge/Assets/ShaderForge/Example Assets/Textures/sf_rgb_overlap.png.meta +++ /dev/null @@ -1,45 +0,0 @@ -fileFormatVersion: 2 -guid: aa762ee7680f35f4fb9a9210fa94ce61 -TextureImporter: - serializedVersion: 2 - mipmaps: - mipMapMode: 0 - enableMipMap: 1 - linearTexture: 0 - correctGamma: 0 - fadeOut: 0 - borderMipMap: 0 - mipMapFadeDistanceStart: 1 - mipMapFadeDistanceEnd: 3 - bumpmap: - convertToNormalMap: 0 - externalNormalMap: 0 - heightScale: .25 - normalMapFilter: 0 - isReadable: 0 - grayScaleToAlpha: 0 - generateCubemap: 0 - seamlessCubemap: 0 - textureFormat: -1 - maxTextureSize: 1024 - textureSettings: - filterMode: -1 - aniso: -1 - mipBias: -1 - wrapMode: -1 - nPOTScale: 1 - lightmap: 0 - compressionQuality: 50 - spriteMode: 0 - spriteExtrude: 1 - spriteMeshType: 1 - alignment: 0 - spritePivot: {x: .5, y: .5} - spritePixelsToUnits: 100 - alphaIsTransparency: 0 - textureType: -1 - buildTargetSettings: [] - spriteSheet: - sprites: [] - spritePackingTag: - userData: diff --git a/Shader Forge/Assets/ShaderForge/Example Assets/Textures/sf_texcoords.png b/Shader Forge/Assets/ShaderForge/Example Assets/Textures/sf_texcoords.png deleted file mode 100644 index 5d974bef19afc7b38fe215abcabb67e7a662e71e..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3393 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 diff --git a/Shader Forge/Assets/ShaderForge/Example Assets/Textures/sf_texcoords.png.meta b/Shader Forge/Assets/ShaderForge/Example Assets/Textures/sf_texcoords.png.meta deleted file mode 100644 index bd03ca9f..00000000 --- a/Shader Forge/Assets/ShaderForge/Example Assets/Textures/sf_texcoords.png.meta +++ /dev/null @@ -1,45 +0,0 @@ -fileFormatVersion: 2 -guid: e6e7abfd01541984db62a8d677d6b2d7 -TextureImporter: - serializedVersion: 2 - mipmaps: - mipMapMode: 0 - enableMipMap: 1 - linearTexture: 0 - correctGamma: 0 - fadeOut: 0 - borderMipMap: 0 - mipMapFadeDistanceStart: 1 - mipMapFadeDistanceEnd: 3 - bumpmap: - convertToNormalMap: 0 - externalNormalMap: 0 - heightScale: .25 - normalMapFilter: 0 - isReadable: 0 - grayScaleToAlpha: 0 - generateCubemap: 0 - seamlessCubemap: 0 - textureFormat: -3 - maxTextureSize: 256 - textureSettings: - filterMode: -1 - aniso: -1 - mipBias: -1 - wrapMode: -1 - nPOTScale: 1 - lightmap: 0 - compressionQuality: 50 - spriteMode: 0 - spriteExtrude: 1 - spriteMeshType: 1 - alignment: 0 - spritePivot: {x: .5, y: .5} - spritePixelsToUnits: 100 - alphaIsTransparency: 0 - textureType: -1 - buildTargetSettings: [] - spriteSheet: - sprites: [] - spritePackingTag: - userData: diff --git a/Shader Forge/Assets/ShaderForge/Example Assets/Textures/sf_tile_01_d.tga b/Shader Forge/Assets/ShaderForge/Example Assets/Textures/sf_tile_01_d.tga deleted file mode 100644 index a65b2945eea522304f29866864afd633592d9688..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3116 zcmZA1TTUE73`XHrR*^?GknDm;NKqo?rf>@^gn?mZ*mu6}6D$-zST0xj{I+{wS>7$L zcD9@?@0Z8N$Nhf4+wBD7pI=Reold8xrzg(@H#awTcXzk9x7XL#S65fOqohDme0h24 zIHnL8@8RKr2RR;(Wm1%3J>x6;amtUS3`bbc-hAxPkZSCXKIW z5NBM?kO^KtWfjNNzJ72Ma~0ZAT;RR)+6ec%U3yIUu1Rj?*wv1I`ps)e4HI{}v(% zD`|}aaJ4)RCKWWIl2pVUn@gr|r+gL#@^&qncO{cLrYdF|Bw!0Dx&n7}YhyBEWEM``{IMdmtnA^X}OXYd(eJrxNc<} z8AT?LNs$n~Dv$y(8n~l|1-!o+4@fv_9t0Ud&ZV}Yi-13akPtJ;)D7jC{uP2NY{>%rm;%YjGOl>#OrdfRR?jlbu?GTj z^{CTm- z_9EB6U9C-THXC#Drk5=l8Mc4jGARnQ%?M@knq+E0k_c5&+@}{X&y*MeS(6|-6yybV zB{>gdV66x(ctU*G|B{Yv07Re4$+e}tTkw2B%Rl?^?dSQgi|-d-zkK-p>EiSG$K@|L CIx}Pd diff --git a/Shader Forge/Assets/ShaderForge/Example Assets/Textures/sf_tile_01_d.tga.meta b/Shader Forge/Assets/ShaderForge/Example Assets/Textures/sf_tile_01_d.tga.meta deleted file mode 100644 index 3a093ac2..00000000 --- a/Shader Forge/Assets/ShaderForge/Example Assets/Textures/sf_tile_01_d.tga.meta +++ /dev/null @@ -1,45 +0,0 @@ -fileFormatVersion: 2 -guid: 8993b617f08498f43adcbd90697f1c5d -TextureImporter: - serializedVersion: 2 - mipmaps: - mipMapMode: 0 - enableMipMap: 1 - linearTexture: 0 - correctGamma: 0 - fadeOut: 0 - borderMipMap: 0 - mipMapFadeDistanceStart: 1 - mipMapFadeDistanceEnd: 3 - bumpmap: - convertToNormalMap: 0 - externalNormalMap: 0 - heightScale: .25 - normalMapFilter: 0 - isReadable: 0 - grayScaleToAlpha: 0 - generateCubemap: 0 - seamlessCubemap: 0 - textureFormat: -3 - maxTextureSize: 32 - textureSettings: - filterMode: 1 - aniso: -1 - mipBias: -1 - wrapMode: -1 - nPOTScale: 1 - lightmap: 0 - compressionQuality: 50 - spriteMode: 0 - spriteExtrude: 1 - spriteMeshType: 1 - alignment: 0 - spritePivot: {x: .5, y: .5} - spritePixelsToUnits: 100 - alphaIsTransparency: 0 - textureType: -1 - buildTargetSettings: [] - spriteSheet: - sprites: [] - spritePackingTag: - userData: diff --git a/Shader Forge/Assets/ShaderForge/Example Assets/Textures/sf_tile_01_n.tga b/Shader Forge/Assets/ShaderForge/Example Assets/Textures/sf_tile_01_n.tga deleted file mode 100644 index eaf54cbd930cfbf8090f1e308dc6974a4e0a1cb8..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3116 zcmZQzU}As)1qKBM35Gv8IX}W1XoUXcO#V?H{yQ`CZ)OA4(eKP@Kk8Qi&Hr1U`MgaF%sQLIpbu@hNC%Mt^84Vx&A%I_YH2sW*5B?CqFFTrkM#Bex2;i3;O+Q42&+loO vf2TE29sQmLYJdKjobzKv1C7w1$&+Edfsmk3*D%juPk%q%2sck3S3L#*B^dc@ diff --git a/Shader Forge/Assets/ShaderForge/Example Assets/Textures/sf_tile_01_n.tga.meta b/Shader Forge/Assets/ShaderForge/Example Assets/Textures/sf_tile_01_n.tga.meta deleted file mode 100644 index 135a4aa6..00000000 --- a/Shader Forge/Assets/ShaderForge/Example Assets/Textures/sf_tile_01_n.tga.meta +++ /dev/null @@ -1,45 +0,0 @@ -fileFormatVersion: 2 -guid: c6dfb00dbee6bc044a8a3bb22e56e064 -TextureImporter: - serializedVersion: 2 - mipmaps: - mipMapMode: 0 - enableMipMap: 1 - linearTexture: 1 - correctGamma: 0 - fadeOut: 0 - borderMipMap: 0 - mipMapFadeDistanceStart: 1 - mipMapFadeDistanceEnd: 3 - bumpmap: - convertToNormalMap: 0 - externalNormalMap: 1 - heightScale: .25 - normalMapFilter: 0 - isReadable: 0 - grayScaleToAlpha: 0 - generateCubemap: 0 - seamlessCubemap: 0 - textureFormat: -3 - maxTextureSize: 32 - textureSettings: - filterMode: -1 - aniso: -1 - mipBias: -1 - wrapMode: -1 - nPOTScale: 1 - lightmap: 0 - compressionQuality: 50 - spriteMode: 0 - spriteExtrude: 1 - spriteMeshType: 1 - alignment: 0 - spritePivot: {x: .5, y: .5} - spritePixelsToUnits: 100 - alphaIsTransparency: 0 - textureType: 1 - buildTargetSettings: [] - spriteSheet: - sprites: [] - spritePackingTag: - userData: diff --git a/Shader Forge/Assets/ShaderForge/Example Scene.unity b/Shader Forge/Assets/ShaderForge/Example Scene.unity deleted file mode 100644 index a3cb986a..00000000 --- a/Shader Forge/Assets/ShaderForge/Example Scene.unity +++ /dev/null @@ -1,1437 +0,0 @@ -%YAML 1.1 -%TAG !u! tag:unity3d.com,2011: ---- !u!29 &1 -SceneSettings: - m_ObjectHideFlags: 0 - m_PVSData: - m_PVSObjectsArray: [] - m_PVSPortalsArray: [] - m_OcclusionBakeSettings: - smallestOccluder: 5 - smallestHole: .25 - backfaceThreshold: 100 ---- !u!104 &2 -RenderSettings: - m_ObjectHideFlags: 0 - serializedVersion: 6 - m_Fog: 1 - m_FogColor: {r: .128027678, g: .195346579, b: .235294104, a: 1} - m_FogMode: 3 - m_FogDensity: .00999999978 - m_LinearFogStart: 0 - m_LinearFogEnd: 300 - m_AmbientSkyColor: {r: .0348183364, g: .0522013865, b: .102941155, a: 1} - m_AmbientEquatorColor: {r: .0348183364, g: .0522013865, b: .102941155, a: 1} - m_AmbientGroundColor: {r: .0348183364, g: .0522013865, b: .102941155, a: 1} - m_AmbientIntensity: 1 - m_AmbientMode: 0 - m_SkyboxMaterial: {fileID: 10304, guid: 0000000000000000f000000000000000, type: 0} - m_HaloStrength: .5 - m_FlareStrength: 1 - m_FlareFadeSpeed: 3 - m_HaloTexture: {fileID: 0} - m_SpotCookie: {fileID: 10001, guid: 0000000000000000e000000000000000, type: 0} - m_DefaultReflectionMode: 0 - m_DefaultReflectionResolution: 128 - m_ReflectionBounces: 1 - m_ReflectionIntensity: 1 - m_CustomReflection: {fileID: 0} - m_Sun: {fileID: 0} ---- !u!127 &3 -LevelGameManager: - m_ObjectHideFlags: 0 ---- !u!157 &4 -LightmapSettings: - m_ObjectHideFlags: 0 - serializedVersion: 5 - m_GIWorkflowMode: 1 - m_LightmapsMode: 1 - m_GISettings: - serializedVersion: 2 - m_BounceScale: 1 - m_IndirectOutputScale: 1 - m_AlbedoBoost: 1 - m_TemporalCoherenceThreshold: 1 - m_EnvironmentLightingMode: 0 - m_EnableBakedLightmaps: 1 - m_EnableRealtimeLightmaps: 0 - m_LightmapEditorSettings: - serializedVersion: 3 - m_Resolution: 1 - m_BakeResolution: 25 - m_TextureWidth: 1024 - m_TextureHeight: 1024 - m_AOMaxDistance: 1 - m_Padding: 2 - m_CompAOExponent: 0 - m_LightmapParameters: {fileID: 0} - m_TextureCompression: 0 - m_FinalGather: 0 - m_FinalGatherRayCount: 1024 - m_LightmapSnapshot: {fileID: 112000000, guid: 54a4b10a28ea63a409b8e8b65bdef2e2, - type: 2} - m_RuntimeCPUUsage: 25 ---- !u!196 &5 -NavMeshSettings: - serializedVersion: 2 - m_ObjectHideFlags: 0 - m_BuildSettings: - serializedVersion: 2 - agentRadius: .5 - agentHeight: 2 - agentSlope: 45 - agentClimb: .400000006 - ledgeDropHeight: 0 - maxJumpAcrossDistance: 0 - accuratePlacement: 0 - minRegionArea: 2 - cellSize: .166666657 - manualCellSize: 0 - m_NavMeshData: {fileID: 0} ---- !u!1 &200992697 -GameObject: - m_ObjectHideFlags: 0 - m_PrefabParentObject: {fileID: 0} - m_PrefabInternal: {fileID: 0} - serializedVersion: 4 - m_Component: - - 4: {fileID: 200992700} - - 33: {fileID: 200992699} - - 23: {fileID: 200992698} - m_Layer: 0 - m_Name: torus - m_TagString: Untagged - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 1 ---- !u!23 &200992698 -MeshRenderer: - m_ObjectHideFlags: 0 - m_PrefabParentObject: {fileID: 0} - m_PrefabInternal: {fileID: 0} - m_GameObject: {fileID: 200992697} - m_Enabled: 1 - m_CastShadows: 1 - m_ReceiveShadows: 1 - m_Materials: - - {fileID: 2100000, guid: cadfde2f3ef294043affa7194ae69b94, type: 2} - m_SubsetIndices: - m_StaticBatchRoot: {fileID: 0} - m_UseLightProbes: 0 - m_ReflectionProbeUsage: 1 - m_ProbeAnchor: {fileID: 0} - m_ScaleInLightmap: 1 - m_PreserveUVs: 0 - m_ImportantGI: 0 - m_AutoUVMaxDistance: .5 - m_AutoUVMaxAngle: 89 - m_LightmapParameters: {fileID: 0} - m_SortingLayerID: 0 - m_SortingOrder: 0 ---- !u!33 &200992699 -MeshFilter: - m_ObjectHideFlags: 0 - m_PrefabParentObject: {fileID: 0} - m_PrefabInternal: {fileID: 0} - m_GameObject: {fileID: 200992697} - m_Mesh: {fileID: 4300020, guid: 27cd3ffabf618924f9c9eeefb09b60e0, type: 3} ---- !u!4 &200992700 -Transform: - m_ObjectHideFlags: 0 - m_PrefabParentObject: {fileID: 0} - m_PrefabInternal: {fileID: 0} - m_GameObject: {fileID: 200992697} - m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} - m_LocalPosition: {x: -0, y: -.598715723, z: -2.23370385} - m_LocalScale: {x: .827757418, y: .827757418, z: .827757418} - m_Children: [] - m_Father: {fileID: 312096755} - m_RootOrder: 0 ---- !u!1 &257028406 -GameObject: - m_ObjectHideFlags: 0 - m_PrefabParentObject: {fileID: 0} - m_PrefabInternal: {fileID: 0} - serializedVersion: 4 - m_Component: - - 4: {fileID: 257028409} - - 33: {fileID: 257028408} - - 23: {fileID: 257028407} - m_Layer: 0 - m_Name: torus - m_TagString: Untagged - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 1 ---- !u!23 &257028407 -MeshRenderer: - m_ObjectHideFlags: 0 - m_PrefabParentObject: {fileID: 0} - m_PrefabInternal: {fileID: 0} - m_GameObject: {fileID: 257028406} - m_Enabled: 1 - m_CastShadows: 1 - m_ReceiveShadows: 1 - m_Materials: - - {fileID: 2100000, guid: 393931f1639a1fe40b68d72551bef241, type: 2} - m_SubsetIndices: - m_StaticBatchRoot: {fileID: 0} - m_UseLightProbes: 0 - m_ReflectionProbeUsage: 1 - m_ProbeAnchor: {fileID: 0} - m_ScaleInLightmap: 1 - m_PreserveUVs: 0 - m_ImportantGI: 0 - m_AutoUVMaxDistance: .5 - m_AutoUVMaxAngle: 89 - m_LightmapParameters: {fileID: 0} - m_SortingLayerID: 0 - m_SortingOrder: 0 ---- !u!33 &257028408 -MeshFilter: - m_ObjectHideFlags: 0 - m_PrefabParentObject: {fileID: 0} - m_PrefabInternal: {fileID: 0} - m_GameObject: {fileID: 257028406} - m_Mesh: {fileID: 4300020, guid: 27cd3ffabf618924f9c9eeefb09b60e0, type: 3} ---- !u!4 &257028409 -Transform: - m_ObjectHideFlags: 0 - m_PrefabParentObject: {fileID: 0} - m_PrefabInternal: {fileID: 0} - m_GameObject: {fileID: 257028406} - m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} - m_LocalPosition: {x: -0, y: -.558938503, z: -2.23370361} - m_LocalScale: {x: .827757418, y: .827757418, z: .827757418} - m_Children: [] - m_Father: {fileID: 2109476129} - m_RootOrder: 0 ---- !u!1 &271048997 -GameObject: - m_ObjectHideFlags: 0 - m_PrefabParentObject: {fileID: 0} - m_PrefabInternal: {fileID: 0} - serializedVersion: 4 - m_Component: - - 4: {fileID: 271049000} - - 33: {fileID: 271048999} - - 23: {fileID: 271048998} - - 135: {fileID: 271049002} - - 114: {fileID: 271049001} - m_Layer: 0 - m_Name: 6. Vegetation Shader - m_TagString: Untagged - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 4294967295 - m_IsActive: 1 ---- !u!23 &271048998 -MeshRenderer: - m_ObjectHideFlags: 0 - m_PrefabParentObject: {fileID: 0} - m_PrefabInternal: {fileID: 0} - m_GameObject: {fileID: 271048997} - m_Enabled: 1 - m_CastShadows: 1 - m_ReceiveShadows: 1 - m_Materials: - - {fileID: 2100000, guid: d2accf36f48355a4cbd925162706dbb1, type: 2} - m_SubsetIndices: - m_StaticBatchRoot: {fileID: 0} - m_UseLightProbes: 0 - m_ReflectionProbeUsage: 1 - m_ProbeAnchor: {fileID: 0} - m_ScaleInLightmap: 1 - m_PreserveUVs: 0 - m_ImportantGI: 0 - m_AutoUVMaxDistance: .5 - m_AutoUVMaxAngle: 89 - m_LightmapParameters: {fileID: 0} - m_SortingLayerID: 0 - m_SortingOrder: 0 ---- !u!33 &271048999 -MeshFilter: - m_ObjectHideFlags: 0 - m_PrefabParentObject: {fileID: 0} - m_PrefabInternal: {fileID: 0} - m_GameObject: {fileID: 271048997} - m_Mesh: {fileID: 4300000, guid: 17819e54aa185472089096cf688428a9, type: 3} ---- !u!4 &271049000 -Transform: - m_ObjectHideFlags: 0 - m_PrefabParentObject: {fileID: 0} - m_PrefabInternal: {fileID: 0} - m_GameObject: {fileID: 271048997} - m_LocalRotation: {x: 0, y: -2.98023224e-08, z: 0, w: 1} - m_LocalPosition: {x: -11.9999876, y: 0, z: -11.5000296} - m_LocalScale: {x: 4.68877411, y: 4.68877411, z: 4.6887784} - m_Children: [] - m_Father: {fileID: 0} - m_RootOrder: 5 ---- !u!114 &271049001 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_PrefabParentObject: {fileID: 0} - m_PrefabInternal: {fileID: 0} - m_GameObject: {fileID: 271048997} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: 9aa8c0bd4777c43ba983f5819ce0f5f7, type: 3} - m_Name: - m_EditorClassIdentifier: - text: Vegetation Shader ---- !u!135 &271049002 -SphereCollider: - m_ObjectHideFlags: 0 - m_PrefabParentObject: {fileID: 0} - m_PrefabInternal: {fileID: 0} - m_GameObject: {fileID: 271048997} - m_Material: {fileID: 0} - m_IsTrigger: 0 - m_Enabled: 1 - serializedVersion: 2 - m_Radius: .49000001 - m_Center: {x: -.0533101857, y: .22221607, z: .0061943531} ---- !u!1 &312096752 -GameObject: - m_ObjectHideFlags: 0 - m_PrefabParentObject: {fileID: 0} - m_PrefabInternal: {fileID: 0} - serializedVersion: 4 - m_Component: - - 4: {fileID: 312096755} - - 33: {fileID: 312096754} - - 23: {fileID: 312096753} - - 114: {fileID: 312096757} - - 135: {fileID: 312096756} - m_Layer: 0 - m_Name: 3. Custom Lighting + Outline - m_TagString: Untagged - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 1 ---- !u!23 &312096753 -MeshRenderer: - m_ObjectHideFlags: 0 - m_PrefabParentObject: {fileID: 0} - m_PrefabInternal: {fileID: 0} - m_GameObject: {fileID: 312096752} - m_Enabled: 1 - m_CastShadows: 1 - m_ReceiveShadows: 1 - m_Materials: - - {fileID: 2100000, guid: cadfde2f3ef294043affa7194ae69b94, type: 2} - m_SubsetIndices: - m_StaticBatchRoot: {fileID: 0} - m_UseLightProbes: 0 - m_ReflectionProbeUsage: 1 - m_ProbeAnchor: {fileID: 0} - m_ScaleInLightmap: 1 - m_PreserveUVs: 0 - m_ImportantGI: 0 - m_AutoUVMaxDistance: .5 - m_AutoUVMaxAngle: 89 - m_LightmapParameters: {fileID: 0} - m_SortingLayerID: 0 - m_SortingOrder: 0 ---- !u!33 &312096754 -MeshFilter: - m_ObjectHideFlags: 0 - m_PrefabParentObject: {fileID: 0} - m_PrefabInternal: {fileID: 0} - m_GameObject: {fileID: 312096752} - m_Mesh: {fileID: 4300024, guid: 27cd3ffabf618924f9c9eeefb09b60e0, type: 3} ---- !u!4 &312096755 -Transform: - m_ObjectHideFlags: 0 - m_PrefabParentObject: {fileID: 0} - m_PrefabInternal: {fileID: 0} - m_GameObject: {fileID: 312096752} - m_LocalRotation: {x: 0, y: -2.98023224e-08, z: 0, w: 1} - m_LocalPosition: {x: 0, y: 1.27999997, z: .699999988} - m_LocalScale: {x: 1.20808339, y: 1.20808339, z: 1.20808339} - m_Children: - - {fileID: 200992700} - m_Father: {fileID: 0} - m_RootOrder: 2 ---- !u!135 &312096756 -SphereCollider: - m_ObjectHideFlags: 0 - m_PrefabParentObject: {fileID: 0} - m_PrefabInternal: {fileID: 0} - m_GameObject: {fileID: 312096752} - m_Material: {fileID: 0} - m_IsTrigger: 0 - m_Enabled: 1 - serializedVersion: 2 - m_Radius: 1 - m_Center: {x: -3.27825546e-07, y: 5.96046448e-08, z: 2.08616257e-07} ---- !u!114 &312096757 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_PrefabParentObject: {fileID: 0} - m_PrefabInternal: {fileID: 0} - m_GameObject: {fileID: 312096752} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: 9aa8c0bd4777c43ba983f5819ce0f5f7, type: 3} - m_Name: - m_EditorClassIdentifier: - text: Custom Lighting + Outline ---- !u!1 &319108395 -GameObject: - m_ObjectHideFlags: 0 - m_PrefabParentObject: {fileID: 0} - m_PrefabInternal: {fileID: 0} - serializedVersion: 4 - m_Component: - - 4: {fileID: 319108398} - - 33: {fileID: 319108397} - - 23: {fileID: 319108396} - m_Layer: 0 - m_Name: torus - m_TagString: Untagged - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 1 ---- !u!23 &319108396 -MeshRenderer: - m_ObjectHideFlags: 0 - m_PrefabParentObject: {fileID: 0} - m_PrefabInternal: {fileID: 0} - m_GameObject: {fileID: 319108395} - m_Enabled: 1 - m_CastShadows: 1 - m_ReceiveShadows: 1 - m_Materials: - - {fileID: 2100000, guid: ad0f5de566d7147fe91238a7111958f1, type: 2} - m_SubsetIndices: - m_StaticBatchRoot: {fileID: 0} - m_UseLightProbes: 0 - m_ReflectionProbeUsage: 1 - m_ProbeAnchor: {fileID: 0} - m_ScaleInLightmap: 1 - m_PreserveUVs: 0 - m_ImportantGI: 0 - m_AutoUVMaxDistance: .5 - m_AutoUVMaxAngle: 89 - m_LightmapParameters: {fileID: 0} - m_SortingLayerID: 0 - m_SortingOrder: 0 ---- !u!33 &319108397 -MeshFilter: - m_ObjectHideFlags: 0 - m_PrefabParentObject: {fileID: 0} - m_PrefabInternal: {fileID: 0} - m_GameObject: {fileID: 319108395} - m_Mesh: {fileID: 4300020, guid: 27cd3ffabf618924f9c9eeefb09b60e0, type: 3} ---- !u!4 &319108398 -Transform: - m_ObjectHideFlags: 0 - m_PrefabParentObject: {fileID: 0} - m_PrefabInternal: {fileID: 0} - m_GameObject: {fileID: 319108395} - m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} - m_LocalPosition: {x: -0, y: -.558938503, z: -2.23370361} - m_LocalScale: {x: .827757418, y: .827757418, z: .827757418} - m_Children: [] - m_Father: {fileID: 1788167972} - m_RootOrder: 0 ---- !u!1 &429649897 -GameObject: - m_ObjectHideFlags: 0 - m_PrefabParentObject: {fileID: 0} - m_PrefabInternal: {fileID: 0} - serializedVersion: 4 - m_Component: - - 4: {fileID: 429649900} - - 33: {fileID: 429649899} - - 23: {fileID: 429649898} - m_Layer: 0 - m_Name: torus - m_TagString: Untagged - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 1 ---- !u!23 &429649898 -MeshRenderer: - m_ObjectHideFlags: 0 - m_PrefabParentObject: {fileID: 0} - m_PrefabInternal: {fileID: 0} - m_GameObject: {fileID: 429649897} - m_Enabled: 1 - m_CastShadows: 1 - m_ReceiveShadows: 0 - m_Materials: - - {fileID: 2100000, guid: 0baa0be77ffe0ec4bbba3c06cb8f887b, type: 2} - m_SubsetIndices: - m_StaticBatchRoot: {fileID: 0} - m_UseLightProbes: 0 - m_ReflectionProbeUsage: 1 - m_ProbeAnchor: {fileID: 0} - m_ScaleInLightmap: 1 - m_PreserveUVs: 0 - m_ImportantGI: 0 - m_AutoUVMaxDistance: .5 - m_AutoUVMaxAngle: 89 - m_LightmapParameters: {fileID: 0} - m_SortingLayerID: 0 - m_SortingOrder: 0 ---- !u!33 &429649899 -MeshFilter: - m_ObjectHideFlags: 0 - m_PrefabParentObject: {fileID: 0} - m_PrefabInternal: {fileID: 0} - m_GameObject: {fileID: 429649897} - m_Mesh: {fileID: 4300020, guid: 27cd3ffabf618924f9c9eeefb09b60e0, type: 3} ---- !u!4 &429649900 -Transform: - m_ObjectHideFlags: 0 - m_PrefabParentObject: {fileID: 0} - m_PrefabInternal: {fileID: 0} - m_GameObject: {fileID: 429649897} - m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} - m_LocalPosition: {x: 0, y: -.558938503, z: -2.23370314} - m_LocalScale: {x: .827757418, y: .827757418, z: .827757418} - m_Children: [] - m_Father: {fileID: 1615958079} - m_RootOrder: 0 ---- !u!1 &795338755 -GameObject: - m_ObjectHideFlags: 0 - m_PrefabParentObject: {fileID: 0} - m_PrefabInternal: {fileID: 0} - serializedVersion: 4 - m_Component: - - 4: {fileID: 795338758} - - 33: {fileID: 795338757} - - 23: {fileID: 795338756} - m_Layer: 0 - m_Name: torus - m_TagString: Untagged - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 1 ---- !u!23 &795338756 -MeshRenderer: - m_ObjectHideFlags: 0 - m_PrefabParentObject: {fileID: 0} - m_PrefabInternal: {fileID: 0} - m_GameObject: {fileID: 795338755} - m_Enabled: 1 - m_CastShadows: 1 - m_ReceiveShadows: 1 - m_Materials: - - {fileID: 2100000, guid: 3ee7d13d3dbe94b459c2935d8b993866, type: 2} - m_SubsetIndices: - m_StaticBatchRoot: {fileID: 0} - m_UseLightProbes: 0 - m_ReflectionProbeUsage: 1 - m_ProbeAnchor: {fileID: 0} - m_ScaleInLightmap: 1 - m_PreserveUVs: 0 - m_ImportantGI: 0 - m_AutoUVMaxDistance: .5 - m_AutoUVMaxAngle: 89 - m_LightmapParameters: {fileID: 0} - m_SortingLayerID: 0 - m_SortingOrder: 0 ---- !u!33 &795338757 -MeshFilter: - m_ObjectHideFlags: 0 - m_PrefabParentObject: {fileID: 0} - m_PrefabInternal: {fileID: 0} - m_GameObject: {fileID: 795338755} - m_Mesh: {fileID: 4300020, guid: 27cd3ffabf618924f9c9eeefb09b60e0, type: 3} ---- !u!4 &795338758 -Transform: - m_ObjectHideFlags: 0 - m_PrefabParentObject: {fileID: 0} - m_PrefabInternal: {fileID: 0} - m_GameObject: {fileID: 795338755} - m_LocalRotation: {x: 0, y: -1, z: 0, w: 4.61935997e-07} - m_LocalPosition: {x: -0, y: -.558938503, z: -2.23370814} - m_LocalScale: {x: .827757418, y: .827757418, z: .827757418} - m_Children: [] - m_Father: {fileID: 2017781022} - m_RootOrder: 0 ---- !u!1 &1129467016 -GameObject: - m_ObjectHideFlags: 0 - m_PrefabParentObject: {fileID: 0} - m_PrefabInternal: {fileID: 0} - serializedVersion: 4 - m_Component: - - 4: {fileID: 1129467018} - - 108: {fileID: 1129467017} - m_Layer: 0 - m_Name: Sunlight - m_TagString: Untagged - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 1 ---- !u!108 &1129467017 -Light: - m_ObjectHideFlags: 0 - m_PrefabParentObject: {fileID: 0} - m_PrefabInternal: {fileID: 0} - m_GameObject: {fileID: 1129467016} - m_Enabled: 1 - serializedVersion: 6 - m_Type: 1 - m_Color: {r: 1, g: 1, b: 1, a: 1} - m_Intensity: 1 - m_Range: 10 - m_SpotAngle: 30 - m_CookieSize: 10 - m_Shadows: - m_Type: 1 - m_Resolution: -1 - m_Strength: .522000015 - m_Bias: .0799999982 - m_NormalBias: .400000006 - m_Cookie: {fileID: 0} - m_DrawHalo: 0 - m_Flare: {fileID: 0} - m_RenderMode: 0 - m_CullingMask: - serializedVersion: 2 - m_Bits: 4294967295 - m_Lightmapping: 1 - m_BounceIntensity: 1 - m_ShadowRadius: 0 - m_ShadowAngle: 0 - m_AreaSize: {x: 1, y: 1} ---- !u!4 &1129467018 -Transform: - m_ObjectHideFlags: 0 - m_PrefabParentObject: {fileID: 0} - m_PrefabInternal: {fileID: 0} - m_GameObject: {fileID: 1129467016} - m_LocalRotation: {x: .00263890065, y: -.259949565, z: .962510943, w: -.0774079636} - m_LocalPosition: {x: 0, y: 16, z: 0} - m_LocalScale: {x: 1, y: 1, z: 1} - m_Children: [] - m_Father: {fileID: 0} - m_RootOrder: 10 ---- !u!1 &1196865671 -GameObject: - m_ObjectHideFlags: 0 - m_PrefabParentObject: {fileID: 0} - m_PrefabInternal: {fileID: 0} - serializedVersion: 4 - m_Component: - - 4: {fileID: 1196865674} - - 33: {fileID: 1196865673} - - 23: {fileID: 1196865672} - - 135: {fileID: 1196865676} - - 114: {fileID: 1196865675} - m_Layer: 0 - m_Name: 7. Vertex Animation & Emission - m_TagString: Untagged - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 1 ---- !u!23 &1196865672 -MeshRenderer: - m_ObjectHideFlags: 0 - m_PrefabParentObject: {fileID: 0} - m_PrefabInternal: {fileID: 0} - m_GameObject: {fileID: 1196865671} - m_Enabled: 1 - m_CastShadows: 1 - m_ReceiveShadows: 1 - m_Materials: - - {fileID: 2100000, guid: 23fc898268709d346b696ab505c07656, type: 2} - m_SubsetIndices: - m_StaticBatchRoot: {fileID: 0} - m_UseLightProbes: 0 - m_ReflectionProbeUsage: 1 - m_ProbeAnchor: {fileID: 0} - m_ScaleInLightmap: 1 - m_PreserveUVs: 0 - m_ImportantGI: 0 - m_AutoUVMaxDistance: .5 - m_AutoUVMaxAngle: 89 - m_LightmapParameters: {fileID: 0} - m_SortingLayerID: 0 - m_SortingOrder: 0 ---- !u!33 &1196865673 -MeshFilter: - m_ObjectHideFlags: 0 - m_PrefabParentObject: {fileID: 0} - m_PrefabInternal: {fileID: 0} - m_GameObject: {fileID: 1196865671} - m_Mesh: {fileID: 4300030, guid: 27cd3ffabf618924f9c9eeefb09b60e0, type: 3} ---- !u!4 &1196865674 -Transform: - m_ObjectHideFlags: 0 - m_PrefabParentObject: {fileID: 0} - m_PrefabInternal: {fileID: 0} - m_GameObject: {fileID: 1196865671} - m_LocalRotation: {x: 0, y: -2.98023224e-08, z: 0, w: 1} - m_LocalPosition: {x: -5.99998999, y: 1.00618076, z: -11.5000315} - m_LocalScale: {x: 1, y: 1, z: 1} - m_Children: [] - m_Father: {fileID: 0} - m_RootOrder: 6 ---- !u!114 &1196865675 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_PrefabParentObject: {fileID: 0} - m_PrefabInternal: {fileID: 0} - m_GameObject: {fileID: 1196865671} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: 9aa8c0bd4777c43ba983f5819ce0f5f7, type: 3} - m_Name: - m_EditorClassIdentifier: - text: Vertex Animation & Emission ---- !u!135 &1196865676 -SphereCollider: - m_ObjectHideFlags: 0 - m_PrefabParentObject: {fileID: 0} - m_PrefabInternal: {fileID: 0} - m_GameObject: {fileID: 1196865671} - m_Material: {fileID: 0} - m_IsTrigger: 0 - m_Enabled: 1 - serializedVersion: 2 - m_Radius: 1.43384349 - m_Center: {x: .208132505, y: -9.00030136e-06, z: 7.51018524e-06} ---- !u!1 &1362709308 -GameObject: - m_ObjectHideFlags: 0 - m_PrefabParentObject: {fileID: 0} - m_PrefabInternal: {fileID: 0} - serializedVersion: 4 - m_Component: - - 4: {fileID: 1362709311} - - 33: {fileID: 1362709310} - - 23: {fileID: 1362709309} - - 135: {fileID: 1362709313} - - 114: {fileID: 1362709312} - m_Layer: 0 - m_Name: 9. DX11 Tessellation (Windows Only) - m_TagString: Untagged - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 1 ---- !u!23 &1362709309 -MeshRenderer: - m_ObjectHideFlags: 0 - m_PrefabParentObject: {fileID: 0} - m_PrefabInternal: {fileID: 0} - m_GameObject: {fileID: 1362709308} - m_Enabled: 1 - m_CastShadows: 1 - m_ReceiveShadows: 1 - m_Materials: - - {fileID: 2100000, guid: d753811ecd38cd149b3a958022853c18, type: 2} - m_SubsetIndices: - m_StaticBatchRoot: {fileID: 0} - m_UseLightProbes: 0 - m_ReflectionProbeUsage: 1 - m_ProbeAnchor: {fileID: 0} - m_ScaleInLightmap: 1 - m_PreserveUVs: 0 - m_ImportantGI: 0 - m_AutoUVMaxDistance: .5 - m_AutoUVMaxAngle: 89 - m_LightmapParameters: {fileID: 0} - m_SortingLayerID: 0 - m_SortingOrder: 0 ---- !u!33 &1362709310 -MeshFilter: - m_ObjectHideFlags: 0 - m_PrefabParentObject: {fileID: 0} - m_PrefabInternal: {fileID: 0} - m_GameObject: {fileID: 1362709308} - m_Mesh: {fileID: 4300026, guid: 27cd3ffabf618924f9c9eeefb09b60e0, type: 3} ---- !u!4 &1362709311 -Transform: - m_ObjectHideFlags: 0 - m_PrefabParentObject: {fileID: 0} - m_PrefabInternal: {fileID: 0} - m_GameObject: {fileID: 1362709308} - m_LocalRotation: {x: 0, y: -1, z: 0, w: 4.32133675e-07} - m_LocalPosition: {x: 6, y: .5, z: -11.5000296} - m_LocalScale: {x: 1, y: 1, z: 1} - m_Children: [] - m_Father: {fileID: 0} - m_RootOrder: 8 ---- !u!114 &1362709312 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_PrefabParentObject: {fileID: 0} - m_PrefabInternal: {fileID: 0} - m_GameObject: {fileID: 1362709308} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: 9aa8c0bd4777c43ba983f5819ce0f5f7, type: 3} - m_Name: - m_EditorClassIdentifier: - text: DX11 Tessellation (Windows Only) ---- !u!135 &1362709313 -SphereCollider: - m_ObjectHideFlags: 0 - m_PrefabParentObject: {fileID: 0} - m_PrefabInternal: {fileID: 0} - m_GameObject: {fileID: 1362709308} - m_Material: {fileID: 0} - m_IsTrigger: 0 - m_Enabled: 1 - serializedVersion: 2 - m_Radius: 1.5000006 - m_Center: {x: 1.78813934e-07, y: -8.94069672e-08, z: -2.38418579e-07} ---- !u!1 &1513778013 -GameObject: - m_ObjectHideFlags: 0 - m_PrefabParentObject: {fileID: 0} - m_PrefabInternal: {fileID: 0} - serializedVersion: 4 - m_Component: - - 4: {fileID: 1513778016} - - 33: {fileID: 1513778015} - - 23: {fileID: 1513778014} - m_Layer: 0 - m_Name: Blue torus knot - m_TagString: Untagged - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 1 ---- !u!23 &1513778014 -MeshRenderer: - m_ObjectHideFlags: 0 - m_PrefabParentObject: {fileID: 0} - m_PrefabInternal: {fileID: 0} - m_GameObject: {fileID: 1513778013} - m_Enabled: 1 - m_CastShadows: 1 - m_ReceiveShadows: 1 - m_Materials: - - {fileID: 2100000, guid: 4a36ae71b48f14d6fb2eae31da682a32, type: 2} - m_SubsetIndices: - m_StaticBatchRoot: {fileID: 0} - m_UseLightProbes: 0 - m_ReflectionProbeUsage: 1 - m_ProbeAnchor: {fileID: 0} - m_ScaleInLightmap: 1 - m_PreserveUVs: 0 - m_ImportantGI: 0 - m_AutoUVMaxDistance: .5 - m_AutoUVMaxAngle: 89 - m_LightmapParameters: {fileID: 0} - m_SortingLayerID: 0 - m_SortingOrder: 0 ---- !u!33 &1513778015 -MeshFilter: - m_ObjectHideFlags: 0 - m_PrefabParentObject: {fileID: 0} - m_PrefabInternal: {fileID: 0} - m_GameObject: {fileID: 1513778013} - m_Mesh: {fileID: 4300030, guid: 27cd3ffabf618924f9c9eeefb09b60e0, type: 3} ---- !u!4 &1513778016 -Transform: - m_ObjectHideFlags: 0 - m_PrefabParentObject: {fileID: 0} - m_PrefabInternal: {fileID: 0} - m_GameObject: {fileID: 1513778013} - m_LocalRotation: {x: .353553236, y: .612372637, z: .612372458, w: .353553355} - m_LocalPosition: {x: 0, y: -1.87565947, z: -1.243819} - m_LocalScale: {x: 1, y: 1, z: 1} - m_Children: [] - m_Father: {fileID: 2034374530} - m_RootOrder: 0 ---- !u!1 &1615958075 -GameObject: - m_ObjectHideFlags: 0 - m_PrefabParentObject: {fileID: 0} - m_PrefabInternal: {fileID: 0} - serializedVersion: 4 - m_Component: - - 4: {fileID: 1615958079} - - 33: {fileID: 1615958078} - - 23: {fileID: 1615958076} - - 135: {fileID: 1615958080} - - 114: {fileID: 1615958077} - m_Layer: 0 - m_Name: 4. Light Wrapping (SSS Approx.) - m_TagString: Untagged - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 1 ---- !u!23 &1615958076 -MeshRenderer: - m_ObjectHideFlags: 0 - m_PrefabParentObject: {fileID: 0} - m_PrefabInternal: {fileID: 0} - m_GameObject: {fileID: 1615958075} - m_Enabled: 1 - m_CastShadows: 1 - m_ReceiveShadows: 0 - m_Materials: - - {fileID: 2100000, guid: 0baa0be77ffe0ec4bbba3c06cb8f887b, type: 2} - m_SubsetIndices: - m_StaticBatchRoot: {fileID: 0} - m_UseLightProbes: 0 - m_ReflectionProbeUsage: 1 - m_ProbeAnchor: {fileID: 0} - m_ScaleInLightmap: 1 - m_PreserveUVs: 0 - m_ImportantGI: 0 - m_AutoUVMaxDistance: .5 - m_AutoUVMaxAngle: 89 - m_LightmapParameters: {fileID: 0} - m_SortingLayerID: 0 - m_SortingOrder: 0 ---- !u!114 &1615958077 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_PrefabParentObject: {fileID: 0} - m_PrefabInternal: {fileID: 0} - m_GameObject: {fileID: 1615958075} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: 9aa8c0bd4777c43ba983f5819ce0f5f7, type: 3} - m_Name: - m_EditorClassIdentifier: - text: Light Wrapping (SSS Approx.) ---- !u!33 &1615958078 -MeshFilter: - m_ObjectHideFlags: 0 - m_PrefabParentObject: {fileID: 0} - m_PrefabInternal: {fileID: 0} - m_GameObject: {fileID: 1615958075} - m_Mesh: {fileID: 4300024, guid: 27cd3ffabf618924f9c9eeefb09b60e0, type: 3} ---- !u!4 &1615958079 -Transform: - m_ObjectHideFlags: 0 - m_PrefabParentObject: {fileID: 0} - m_PrefabInternal: {fileID: 0} - m_GameObject: {fileID: 1615958075} - m_LocalRotation: {x: 0, y: -2.98023224e-08, z: 0, w: 1} - m_LocalPosition: {x: 6, y: 1.17999995, z: .699999988} - m_LocalScale: {x: 1.20808339, y: 1.20808339, z: 1.20808339} - m_Children: - - {fileID: 429649900} - m_Father: {fileID: 0} - m_RootOrder: 3 ---- !u!135 &1615958080 -SphereCollider: - m_ObjectHideFlags: 0 - m_PrefabParentObject: {fileID: 0} - m_PrefabInternal: {fileID: 0} - m_GameObject: {fileID: 1615958075} - m_Material: {fileID: 0} - m_IsTrigger: 0 - m_Enabled: 1 - serializedVersion: 2 - m_Radius: 1 - m_Center: {x: -3.27825546e-07, y: 5.96046448e-08, z: 2.08616257e-07} ---- !u!1 &1622710533 -GameObject: - m_ObjectHideFlags: 0 - m_PrefabParentObject: {fileID: 0} - m_PrefabInternal: {fileID: 0} - serializedVersion: 4 - m_Component: - - 4: {fileID: 1622710534} - - 33: {fileID: 1622710537} - - 23: {fileID: 1622710535} - m_Layer: 0 - m_Name: Refraction Pane - m_TagString: Untagged - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 1 ---- !u!4 &1622710534 -Transform: - m_ObjectHideFlags: 0 - m_PrefabParentObject: {fileID: 0} - m_PrefabInternal: {fileID: 0} - m_GameObject: {fileID: 1622710533} - m_LocalRotation: {x: .707106769, y: -1.42108564e-14, z: -1.42108564e-14, w: .707106888} - m_LocalPosition: {x: 0, y: 0, z: 0} - m_LocalScale: {x: 4, y: 4, z: 4} - m_Children: [] - m_Father: {fileID: 2034374530} - m_RootOrder: 1 ---- !u!23 &1622710535 -MeshRenderer: - m_ObjectHideFlags: 0 - m_PrefabParentObject: {fileID: 0} - m_PrefabInternal: {fileID: 0} - m_GameObject: {fileID: 1622710533} - m_Enabled: 1 - m_CastShadows: 0 - m_ReceiveShadows: 1 - m_Materials: - - {fileID: 2100000, guid: 2eced452d5ec44e49985d30395b1e7d3, type: 2} - m_SubsetIndices: - m_StaticBatchRoot: {fileID: 0} - m_UseLightProbes: 0 - m_ReflectionProbeUsage: 1 - m_ProbeAnchor: {fileID: 0} - m_ScaleInLightmap: 1 - m_PreserveUVs: 0 - m_ImportantGI: 0 - m_AutoUVMaxDistance: .5 - m_AutoUVMaxAngle: 89 - m_LightmapParameters: {fileID: 0} - m_SortingLayerID: 0 - m_SortingOrder: 0 ---- !u!33 &1622710537 -MeshFilter: - m_ObjectHideFlags: 0 - m_PrefabParentObject: {fileID: 0} - m_PrefabInternal: {fileID: 0} - m_GameObject: {fileID: 1622710533} - m_Mesh: {fileID: 10210, guid: 0000000000000000e000000000000000, type: 0} ---- !u!1 &1788167971 -GameObject: - m_ObjectHideFlags: 0 - m_PrefabParentObject: {fileID: 0} - m_PrefabInternal: {fileID: 0} - serializedVersion: 4 - m_Component: - - 4: {fileID: 1788167972} - - 33: {fileID: 1788167976} - - 23: {fileID: 1788167975} - - 114: {fileID: 1788167974} - - 135: {fileID: 1788167973} - m_Layer: 0 - m_Name: 1. Pixelated Rotator - m_TagString: Untagged - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 1 ---- !u!4 &1788167972 -Transform: - m_ObjectHideFlags: 0 - m_PrefabParentObject: {fileID: 0} - m_PrefabInternal: {fileID: 0} - m_GameObject: {fileID: 1788167971} - m_LocalRotation: {x: 0, y: -2.98023224e-08, z: 0, w: 1} - m_LocalPosition: {x: -13, y: 1.17524433, z: .698500097} - m_LocalScale: {x: 1.20808339, y: 1.20808339, z: 1.20808339} - m_Children: - - {fileID: 319108398} - m_Father: {fileID: 0} - m_RootOrder: 0 ---- !u!135 &1788167973 -SphereCollider: - m_ObjectHideFlags: 0 - m_PrefabParentObject: {fileID: 0} - m_PrefabInternal: {fileID: 0} - m_GameObject: {fileID: 1788167971} - m_Material: {fileID: 0} - m_IsTrigger: 0 - m_Enabled: 1 - serializedVersion: 2 - m_Radius: 1 - m_Center: {x: -3.27825546e-07, y: 5.96046448e-08, z: 2.08616257e-07} ---- !u!114 &1788167974 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_PrefabParentObject: {fileID: 0} - m_PrefabInternal: {fileID: 0} - m_GameObject: {fileID: 1788167971} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: 9aa8c0bd4777c43ba983f5819ce0f5f7, type: 3} - m_Name: - m_EditorClassIdentifier: - text: Pixelated Rotator ---- !u!23 &1788167975 -MeshRenderer: - m_ObjectHideFlags: 0 - m_PrefabParentObject: {fileID: 0} - m_PrefabInternal: {fileID: 0} - m_GameObject: {fileID: 1788167971} - m_Enabled: 1 - m_CastShadows: 1 - m_ReceiveShadows: 1 - m_Materials: - - {fileID: 2100000, guid: ad0f5de566d7147fe91238a7111958f1, type: 2} - m_SubsetIndices: - m_StaticBatchRoot: {fileID: 0} - m_UseLightProbes: 0 - m_ReflectionProbeUsage: 1 - m_ProbeAnchor: {fileID: 0} - m_ScaleInLightmap: 1 - m_PreserveUVs: 0 - m_ImportantGI: 0 - m_AutoUVMaxDistance: .5 - m_AutoUVMaxAngle: 89 - m_LightmapParameters: {fileID: 0} - m_SortingLayerID: 0 - m_SortingOrder: 0 ---- !u!33 &1788167976 -MeshFilter: - m_ObjectHideFlags: 0 - m_PrefabParentObject: {fileID: 0} - m_PrefabInternal: {fileID: 0} - m_GameObject: {fileID: 1788167971} - m_Mesh: {fileID: 4300024, guid: 27cd3ffabf618924f9c9eeefb09b60e0, type: 3} ---- !u!1 &1958782409 -GameObject: - m_ObjectHideFlags: 0 - m_PrefabParentObject: {fileID: 0} - m_PrefabInternal: {fileID: 0} - serializedVersion: 4 - m_Component: - - 4: {fileID: 1958782412} - - 33: {fileID: 1958782411} - - 23: {fileID: 1958782410} - - 135: {fileID: 1958782414} - - 114: {fileID: 1958782413} - m_Layer: 0 - m_Name: 10. Unlit Vertex Colored - m_TagString: Untagged - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 1 ---- !u!23 &1958782410 -MeshRenderer: - m_ObjectHideFlags: 0 - m_PrefabParentObject: {fileID: 0} - m_PrefabInternal: {fileID: 0} - m_GameObject: {fileID: 1958782409} - m_Enabled: 1 - m_CastShadows: 1 - m_ReceiveShadows: 1 - m_Materials: - - {fileID: 2100000, guid: 5d9b849895144ea4983f3b1f36bbacae, type: 2} - m_SubsetIndices: - m_StaticBatchRoot: {fileID: 0} - m_UseLightProbes: 0 - m_ReflectionProbeUsage: 1 - m_ProbeAnchor: {fileID: 0} - m_ScaleInLightmap: 1 - m_PreserveUVs: 0 - m_ImportantGI: 0 - m_AutoUVMaxDistance: .5 - m_AutoUVMaxAngle: 89 - m_LightmapParameters: {fileID: 0} - m_SortingLayerID: 0 - m_SortingOrder: 0 ---- !u!33 &1958782411 -MeshFilter: - m_ObjectHideFlags: 0 - m_PrefabParentObject: {fileID: 0} - m_PrefabInternal: {fileID: 0} - m_GameObject: {fileID: 1958782409} - m_Mesh: {fileID: 4300008, guid: 17819e54aa185472089096cf688428a9, type: 3} ---- !u!4 &1958782412 -Transform: - m_ObjectHideFlags: 0 - m_PrefabParentObject: {fileID: 0} - m_PrefabInternal: {fileID: 0} - m_GameObject: {fileID: 1958782409} - m_LocalRotation: {x: 0, y: -2.98023224e-08, z: 0, w: 1} - m_LocalPosition: {x: 12.0000076, y: .0653896332, z: -11.5000315} - m_LocalScale: {x: 4, y: 4, z: 4} - m_Children: [] - m_Father: {fileID: 0} - m_RootOrder: 9 ---- !u!114 &1958782413 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_PrefabParentObject: {fileID: 0} - m_PrefabInternal: {fileID: 0} - m_GameObject: {fileID: 1958782409} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: 9aa8c0bd4777c43ba983f5819ce0f5f7, type: 3} - m_Name: - m_EditorClassIdentifier: - text: Unlit Vertex Colored ---- !u!135 &1958782414 -SphereCollider: - m_ObjectHideFlags: 0 - m_PrefabParentObject: {fileID: 0} - m_PrefabInternal: {fileID: 0} - m_GameObject: {fileID: 1958782409} - m_Material: {fileID: 0} - m_IsTrigger: 0 - m_Enabled: 1 - serializedVersion: 2 - m_Radius: .499998599 - m_Center: {x: 0, y: 0, z: 0} ---- !u!1 &2017781019 -GameObject: - m_ObjectHideFlags: 0 - m_PrefabParentObject: {fileID: 0} - m_PrefabInternal: {fileID: 0} - serializedVersion: 4 - m_Component: - - 4: {fileID: 2017781022} - - 33: {fileID: 2017781021} - - 23: {fileID: 2017781020} - - 135: {fileID: 2017781024} - - 114: {fileID: 2017781023} - m_Layer: 0 - m_Name: 5. Parallax Mapping - m_TagString: Untagged - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 1 ---- !u!23 &2017781020 -MeshRenderer: - m_ObjectHideFlags: 0 - m_PrefabParentObject: {fileID: 0} - m_PrefabInternal: {fileID: 0} - m_GameObject: {fileID: 2017781019} - m_Enabled: 1 - m_CastShadows: 1 - m_ReceiveShadows: 1 - m_Materials: - - {fileID: 2100000, guid: 3ee7d13d3dbe94b459c2935d8b993866, type: 2} - m_SubsetIndices: - m_StaticBatchRoot: {fileID: 0} - m_UseLightProbes: 0 - m_ReflectionProbeUsage: 1 - m_ProbeAnchor: {fileID: 0} - m_ScaleInLightmap: 1 - m_PreserveUVs: 0 - m_ImportantGI: 0 - m_AutoUVMaxDistance: .5 - m_AutoUVMaxAngle: 89 - m_LightmapParameters: {fileID: 0} - m_SortingLayerID: 0 - m_SortingOrder: 0 ---- !u!33 &2017781021 -MeshFilter: - m_ObjectHideFlags: 0 - m_PrefabParentObject: {fileID: 0} - m_PrefabInternal: {fileID: 0} - m_GameObject: {fileID: 2017781019} - m_Mesh: {fileID: 4300024, guid: 27cd3ffabf618924f9c9eeefb09b60e0, type: 3} ---- !u!4 &2017781022 -Transform: - m_ObjectHideFlags: 0 - m_PrefabParentObject: {fileID: 0} - m_PrefabInternal: {fileID: 0} - m_GameObject: {fileID: 2017781019} - m_LocalRotation: {x: 0, y: -2.98023224e-08, z: 0, w: 1} - m_LocalPosition: {x: 12.0000057, y: 1.17524433, z: .698500156} - m_LocalScale: {x: 1.20808339, y: 1.20808339, z: 1.20808339} - m_Children: - - {fileID: 795338758} - m_Father: {fileID: 0} - m_RootOrder: 4 ---- !u!114 &2017781023 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_PrefabParentObject: {fileID: 0} - m_PrefabInternal: {fileID: 0} - m_GameObject: {fileID: 2017781019} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: 9aa8c0bd4777c43ba983f5819ce0f5f7, type: 3} - m_Name: - m_EditorClassIdentifier: - text: Parallax Mapping ---- !u!135 &2017781024 -SphereCollider: - m_ObjectHideFlags: 0 - m_PrefabParentObject: {fileID: 0} - m_PrefabInternal: {fileID: 0} - m_GameObject: {fileID: 2017781019} - m_Material: {fileID: 0} - m_IsTrigger: 0 - m_Enabled: 1 - serializedVersion: 2 - m_Radius: 1 - m_Center: {x: -3.27825546e-07, y: 5.96046448e-08, z: 1.49011612e-07} ---- !u!1 &2034374527 -GameObject: - m_ObjectHideFlags: 0 - m_PrefabParentObject: {fileID: 0} - m_PrefabInternal: {fileID: 0} - serializedVersion: 4 - m_Component: - - 4: {fileID: 2034374530} - - 33: {fileID: 2034374529} - - 23: {fileID: 2034374528} - - 114: {fileID: 2034374532} - - 135: {fileID: 2034374531} - m_Layer: 0 - m_Name: 8. Refraction - m_TagString: Untagged - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 1 ---- !u!23 &2034374528 -MeshRenderer: - m_ObjectHideFlags: 0 - m_PrefabParentObject: {fileID: 0} - m_PrefabInternal: {fileID: 0} - m_GameObject: {fileID: 2034374527} - m_Enabled: 1 - m_CastShadows: 1 - m_ReceiveShadows: 1 - m_Materials: - - {fileID: 10303, guid: 0000000000000000f000000000000000, type: 0} - m_SubsetIndices: - m_StaticBatchRoot: {fileID: 0} - m_UseLightProbes: 1 - m_ReflectionProbeUsage: 1 - m_ProbeAnchor: {fileID: 0} - m_ScaleInLightmap: 1 - m_PreserveUVs: 0 - m_ImportantGI: 0 - m_AutoUVMaxDistance: .5 - m_AutoUVMaxAngle: 89 - m_LightmapParameters: {fileID: 0} - m_SortingLayerID: 0 - m_SortingOrder: 0 ---- !u!33 &2034374529 -MeshFilter: - m_ObjectHideFlags: 0 - m_PrefabParentObject: {fileID: 0} - m_PrefabInternal: {fileID: 0} - m_GameObject: {fileID: 2034374527} - m_Mesh: {fileID: 4300010, guid: 17819e54aa185472089096cf688428a9, type: 3} ---- !u!4 &2034374530 -Transform: - m_ObjectHideFlags: 0 - m_PrefabParentObject: {fileID: 0} - m_PrefabInternal: {fileID: 0} - m_GameObject: {fileID: 2034374527} - m_LocalRotation: {x: -.707106709, y: -4.47034836e-08, z: -2.92673583e-08, w: .707106948} - m_LocalPosition: {x: 8.10623169e-06, y: 2.25, z: -13.3756905} - m_LocalScale: {x: 1, y: 1, z: 1} - m_Children: - - {fileID: 1513778016} - - {fileID: 1622710534} - m_Father: {fileID: 0} - m_RootOrder: 7 ---- !u!135 &2034374531 -SphereCollider: - m_ObjectHideFlags: 0 - m_PrefabParentObject: {fileID: 0} - m_PrefabInternal: {fileID: 0} - m_GameObject: {fileID: 2034374527} - m_Material: {fileID: 0} - m_IsTrigger: 0 - m_Enabled: 1 - serializedVersion: 2 - m_Radius: 2.25000048 - m_Center: {x: 0, y: 0, z: 0} ---- !u!114 &2034374532 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_PrefabParentObject: {fileID: 0} - m_PrefabInternal: {fileID: 0} - m_GameObject: {fileID: 2034374527} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: 9aa8c0bd4777c43ba983f5819ce0f5f7, type: 3} - m_Name: - m_EditorClassIdentifier: - text: Double-Sided Refraction ---- !u!1 &2109476125 -GameObject: - m_ObjectHideFlags: 0 - m_PrefabParentObject: {fileID: 0} - m_PrefabInternal: {fileID: 0} - serializedVersion: 4 - m_Component: - - 4: {fileID: 2109476129} - - 33: {fileID: 2109476128} - - 23: {fileID: 2109476126} - - 114: {fileID: 2109476130} - - 135: {fileID: 2109476127} - m_Layer: 0 - m_Name: 2. Physically Based Shader - m_TagString: Untagged - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 1 ---- !u!23 &2109476126 -MeshRenderer: - m_ObjectHideFlags: 0 - m_PrefabParentObject: {fileID: 0} - m_PrefabInternal: {fileID: 0} - m_GameObject: {fileID: 2109476125} - m_Enabled: 1 - m_CastShadows: 1 - m_ReceiveShadows: 1 - m_Materials: - - {fileID: 2100000, guid: 393931f1639a1fe40b68d72551bef241, type: 2} - m_SubsetIndices: - m_StaticBatchRoot: {fileID: 0} - m_UseLightProbes: 0 - m_ReflectionProbeUsage: 1 - m_ProbeAnchor: {fileID: 0} - m_ScaleInLightmap: 1 - m_PreserveUVs: 0 - m_ImportantGI: 0 - m_AutoUVMaxDistance: .5 - m_AutoUVMaxAngle: 89 - m_LightmapParameters: {fileID: 0} - m_SortingLayerID: 0 - m_SortingOrder: 0 ---- !u!135 &2109476127 -SphereCollider: - m_ObjectHideFlags: 0 - m_PrefabParentObject: {fileID: 0} - m_PrefabInternal: {fileID: 0} - m_GameObject: {fileID: 2109476125} - m_Material: {fileID: 0} - m_IsTrigger: 0 - m_Enabled: 1 - serializedVersion: 2 - m_Radius: 1 - m_Center: {x: -3.27825546e-07, y: 5.96046448e-08, z: 2.08616257e-07} ---- !u!33 &2109476128 -MeshFilter: - m_ObjectHideFlags: 0 - m_PrefabParentObject: {fileID: 0} - m_PrefabInternal: {fileID: 0} - m_GameObject: {fileID: 2109476125} - m_Mesh: {fileID: 4300024, guid: 27cd3ffabf618924f9c9eeefb09b60e0, type: 3} ---- !u!4 &2109476129 -Transform: - m_ObjectHideFlags: 0 - m_PrefabParentObject: {fileID: 0} - m_PrefabInternal: {fileID: 0} - m_GameObject: {fileID: 2109476125} - m_LocalRotation: {x: 0, y: -2.98023224e-08, z: 0, w: 1} - m_LocalPosition: {x: -6, y: 1.17999995, z: .699999988} - m_LocalScale: {x: 1.20808339, y: 1.20808339, z: 1.20808339} - m_Children: - - {fileID: 257028409} - m_Father: {fileID: 0} - m_RootOrder: 1 ---- !u!114 &2109476130 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_PrefabParentObject: {fileID: 0} - m_PrefabInternal: {fileID: 0} - m_GameObject: {fileID: 2109476125} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: 9aa8c0bd4777c43ba983f5819ce0f5f7, type: 3} - m_Name: - m_EditorClassIdentifier: - text: Physically Based Shader diff --git a/Shader Forge/Assets/ShaderForge/Example Scene.unity.meta b/Shader Forge/Assets/ShaderForge/Example Scene.unity.meta deleted file mode 100644 index 04378d0f..00000000 --- a/Shader Forge/Assets/ShaderForge/Example Scene.unity.meta +++ /dev/null @@ -1,4 +0,0 @@ -fileFormatVersion: 2 -guid: 2db7122e3ce1796498a39efd913c754a -DefaultImporter: - userData: diff --git a/Shader Forge/Packages/manifest.json b/Shader Forge/Packages/manifest.json deleted file mode 100644 index 526aca60..00000000 --- a/Shader Forge/Packages/manifest.json +++ /dev/null @@ -1,4 +0,0 @@ -{ - "dependencies": { - } -} diff --git a/Shader Forge/ProjectSettings/AudioManager.asset b/Shader Forge/ProjectSettings/AudioManager.asset deleted file mode 100644 index ec6be29c..00000000 --- a/Shader Forge/ProjectSettings/AudioManager.asset +++ /dev/null @@ -1,12 +0,0 @@ -%YAML 1.1 -%TAG !u! tag:unity3d.com,2011: ---- !u!11 &1 -AudioManager: - m_ObjectHideFlags: 0 - m_Volume: 1 - Rolloff Scale: 1 - m_SpeedOfSound: 347 - Doppler Factor: 1 - Default Speaker Mode: 2 - m_DSPBufferSize: 0 - m_DisableAudio: 0 diff --git a/Shader Forge/ProjectSettings/ClusterInputManager.asset b/Shader Forge/ProjectSettings/ClusterInputManager.asset deleted file mode 100644 index e7886b26..00000000 --- a/Shader Forge/ProjectSettings/ClusterInputManager.asset +++ /dev/null @@ -1,6 +0,0 @@ -%YAML 1.1 -%TAG !u! tag:unity3d.com,2011: ---- !u!236 &1 -ClusterInputManager: - m_ObjectHideFlags: 0 - m_Inputs: [] diff --git a/Shader Forge/ProjectSettings/DynamicsManager.asset b/Shader Forge/ProjectSettings/DynamicsManager.asset deleted file mode 100644 index 717b5c27..00000000 --- a/Shader Forge/ProjectSettings/DynamicsManager.asset +++ /dev/null @@ -1,15 +0,0 @@ -%YAML 1.1 -%TAG !u! tag:unity3d.com,2011: ---- !u!55 &1 -PhysicsManager: - m_ObjectHideFlags: 0 - m_Gravity: {x: 0, y: -9.81000042, z: 0} - m_DefaultMaterial: {fileID: 0} - m_BounceThreshold: 2 - m_SleepVelocity: .150000006 - m_SleepAngularVelocity: .140000001 - m_MaxAngularVelocity: 7 - m_MinPenetrationForPenalty: .00999999978 - m_SolverIterationCount: 6 - m_RaycastsHitTriggers: 1 - m_LayerCollisionMatrix: ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff diff --git a/Shader Forge/ProjectSettings/EditorBuildSettings.asset b/Shader Forge/ProjectSettings/EditorBuildSettings.asset deleted file mode 100644 index d5b5c7c1..00000000 --- a/Shader Forge/ProjectSettings/EditorBuildSettings.asset +++ /dev/null @@ -1,9 +0,0 @@ -%YAML 1.1 -%TAG !u! tag:unity3d.com,2011: ---- !u!1045 &1 -EditorBuildSettings: - m_ObjectHideFlags: 0 - serializedVersion: 2 - m_Scenes: - - enabled: 0 - path: Assets/Scenes/Level.unity diff --git a/Shader Forge/ProjectSettings/EditorSettings.asset b/Shader Forge/ProjectSettings/EditorSettings.asset deleted file mode 100644 index 7726ac9b..00000000 --- a/Shader Forge/ProjectSettings/EditorSettings.asset +++ /dev/null @@ -1,15 +0,0 @@ -%YAML 1.1 -%TAG !u! tag:unity3d.com,2011: ---- !u!159 &1 -EditorSettings: - m_ObjectHideFlags: 0 - serializedVersion: 3 - m_ExternalVersionControlSupport: Hidden Meta Files - m_SerializationMode: 2 - m_WebSecurityEmulationEnabled: 0 - m_WebSecurityEmulationHostUrl: http://www.mydomain.com/mygame.unity3d - m_DefaultBehaviorMode: 0 - m_SpritePackerMode: 2 - m_SpritePackerPaddingPower: 1 - m_ProjectGenerationIncludedExtensions: txt;xml;fnt;cd - m_ProjectGenerationRootNamespace: diff --git a/Shader Forge/ProjectSettings/GraphicsSettings.asset b/Shader Forge/ProjectSettings/GraphicsSettings.asset deleted file mode 100644 index 89a8e284..00000000 --- a/Shader Forge/ProjectSettings/GraphicsSettings.asset +++ /dev/null @@ -1,76 +0,0 @@ -%YAML 1.1 -%TAG !u! tag:unity3d.com,2011: ---- !u!30 &1 -GraphicsSettings: - m_ObjectHideFlags: 0 - serializedVersion: 12 - m_Deferred: - m_Mode: 1 - m_Shader: {fileID: 69, guid: 0000000000000000f000000000000000, type: 0} - m_DeferredReflections: - m_Mode: 1 - m_Shader: {fileID: 74, guid: 0000000000000000f000000000000000, type: 0} - m_ScreenSpaceShadows: - m_Mode: 1 - m_Shader: {fileID: 64, guid: 0000000000000000f000000000000000, type: 0} - m_LegacyDeferred: - m_Mode: 1 - m_Shader: {fileID: 63, guid: 0000000000000000f000000000000000, type: 0} - m_DepthNormals: - m_Mode: 1 - m_Shader: {fileID: 62, guid: 0000000000000000f000000000000000, type: 0} - m_MotionVectors: - m_Mode: 1 - m_Shader: {fileID: 75, guid: 0000000000000000f000000000000000, type: 0} - m_LightHalo: - m_Mode: 1 - m_Shader: {fileID: 105, guid: 0000000000000000f000000000000000, type: 0} - m_LensFlare: - m_Mode: 1 - m_Shader: {fileID: 102, guid: 0000000000000000f000000000000000, type: 0} - m_AlwaysIncludedShaders: - - {fileID: 7, guid: 0000000000000000f000000000000000, type: 0} - - {fileID: 15104, guid: 0000000000000000f000000000000000, type: 0} - - {fileID: 15105, guid: 0000000000000000f000000000000000, type: 0} - - {fileID: 15106, guid: 0000000000000000f000000000000000, type: 0} - - {fileID: 10770, guid: 0000000000000000f000000000000000, type: 0} - - {fileID: 10782, guid: 0000000000000000f000000000000000, type: 0} - m_PreloadedShaders: [] - m_SpritesDefaultMaterial: {fileID: 10754, guid: 0000000000000000f000000000000000, - type: 0} - m_CustomRenderPipeline: {fileID: 0} - m_TransparencySortMode: 0 - m_TransparencySortAxis: {x: 0, y: 0, z: 1} - m_DefaultRenderingPath: 3 - m_DefaultMobileRenderingPath: 1 - m_TierSettings: - - serializedVersion: 4 - m_BuildTarget: 1 - m_Tier: 2 - m_Settings: - standardShaderQuality: 2 - renderingPath: 1 - hdrMode: 1 - realtimeGICPUUsage: 50 - useReflectionProbeBoxProjection: 1 - useReflectionProbeBlending: 1 - useHDR: 1 - useDetailNormalMap: 0 - useCascadedShadowMaps: 1 - useDitherMaskForAlphaBlendedShadows: 0 - m_Automatic: 0 - m_LightmapStripping: 0 - m_FogStripping: 0 - m_InstancingStripping: 0 - m_LightmapKeepPlain: 1 - m_LightmapKeepDirCombined: 1 - m_LightmapKeepDynamicPlain: 1 - m_LightmapKeepDynamicDirCombined: 1 - m_LightmapKeepShadowMask: 1 - m_LightmapKeepSubtractive: 1 - m_FogKeepLinear: 1 - m_FogKeepExp: 1 - m_FogKeepExp2: 1 - m_AlbedoSwatchInfos: [] - m_LightsUseLinearIntensity: 0 - m_LightsUseColorTemperature: 0 diff --git a/Shader Forge/ProjectSettings/InputManager.asset b/Shader Forge/ProjectSettings/InputManager.asset deleted file mode 100644 index 21863fbd..00000000 --- a/Shader Forge/ProjectSettings/InputManager.asset +++ /dev/null @@ -1,246 +0,0 @@ -%YAML 1.1 -%TAG !u! tag:unity3d.com,2011: ---- !u!13 &1 -InputManager: - m_ObjectHideFlags: 0 - m_Axes: - - serializedVersion: 3 - m_Name: Horizontal - descriptiveName: - descriptiveNegativeName: - negativeButton: left - positiveButton: right - altNegativeButton: a - altPositiveButton: d - gravity: 3 - dead: .00100000005 - sensitivity: 3 - snap: 1 - invert: 0 - type: 0 - axis: 0 - joyNum: 0 - - serializedVersion: 3 - m_Name: Vertical - descriptiveName: - descriptiveNegativeName: - negativeButton: down - positiveButton: up - altNegativeButton: s - altPositiveButton: w - gravity: 3 - dead: .00100000005 - sensitivity: 3 - snap: 1 - invert: 0 - type: 0 - axis: 0 - joyNum: 0 - - serializedVersion: 3 - m_Name: Fire1 - descriptiveName: - descriptiveNegativeName: - negativeButton: - positiveButton: left ctrl - altNegativeButton: - altPositiveButton: mouse 0 - gravity: 1000 - dead: .00100000005 - sensitivity: 1000 - snap: 0 - invert: 0 - type: 0 - axis: 0 - joyNum: 0 - - serializedVersion: 3 - m_Name: Fire2 - descriptiveName: - descriptiveNegativeName: - negativeButton: - positiveButton: left alt - altNegativeButton: - altPositiveButton: mouse 1 - gravity: 1000 - dead: .00100000005 - sensitivity: 1000 - snap: 0 - invert: 0 - type: 0 - axis: 0 - joyNum: 0 - - serializedVersion: 3 - m_Name: Fire3 - descriptiveName: - descriptiveNegativeName: - negativeButton: - positiveButton: left cmd - altNegativeButton: - altPositiveButton: mouse 2 - gravity: 1000 - dead: .00100000005 - sensitivity: 1000 - snap: 0 - invert: 0 - type: 0 - axis: 0 - joyNum: 0 - - serializedVersion: 3 - m_Name: Jump - descriptiveName: - descriptiveNegativeName: - negativeButton: - positiveButton: space - altNegativeButton: up - altPositiveButton: - gravity: 1000 - dead: .00100000005 - sensitivity: 1000 - snap: 0 - invert: 0 - type: 0 - axis: 0 - joyNum: 0 - - serializedVersion: 3 - m_Name: Mouse X - descriptiveName: - descriptiveNegativeName: - negativeButton: - positiveButton: - altNegativeButton: - altPositiveButton: - gravity: 0 - dead: 0 - sensitivity: .100000001 - snap: 0 - invert: 0 - type: 1 - axis: 0 - joyNum: 0 - - serializedVersion: 3 - m_Name: Mouse Y - descriptiveName: - descriptiveNegativeName: - negativeButton: - positiveButton: - altNegativeButton: - altPositiveButton: - gravity: 0 - dead: 0 - sensitivity: .100000001 - snap: 0 - invert: 0 - type: 1 - axis: 1 - joyNum: 0 - - serializedVersion: 3 - m_Name: Mouse ScrollWheel - descriptiveName: - descriptiveNegativeName: - negativeButton: - positiveButton: - altNegativeButton: - altPositiveButton: - gravity: 0 - dead: 0 - sensitivity: .100000001 - snap: 0 - invert: 0 - type: 1 - axis: 2 - joyNum: 0 - - serializedVersion: 3 - m_Name: Horizontal - descriptiveName: - descriptiveNegativeName: - negativeButton: - positiveButton: - altNegativeButton: - altPositiveButton: - gravity: 0 - dead: .189999998 - sensitivity: 1 - snap: 0 - invert: 0 - type: 2 - axis: 0 - joyNum: 0 - - serializedVersion: 3 - m_Name: Vertical - descriptiveName: - descriptiveNegativeName: - negativeButton: - positiveButton: - altNegativeButton: - altPositiveButton: - gravity: 0 - dead: .189999998 - sensitivity: 1 - snap: 0 - invert: 1 - type: 2 - axis: 1 - joyNum: 0 - - serializedVersion: 3 - m_Name: Fire1 - descriptiveName: - descriptiveNegativeName: - negativeButton: - positiveButton: joystick button 0 - altNegativeButton: - altPositiveButton: - gravity: 1000 - dead: .00100000005 - sensitivity: 1000 - snap: 0 - invert: 0 - type: 0 - axis: 0 - joyNum: 0 - - serializedVersion: 3 - m_Name: Fire2 - descriptiveName: - descriptiveNegativeName: - negativeButton: - positiveButton: joystick button 1 - altNegativeButton: - altPositiveButton: - gravity: 1000 - dead: .00100000005 - sensitivity: 1000 - snap: 0 - invert: 0 - type: 0 - axis: 0 - joyNum: 0 - - serializedVersion: 3 - m_Name: Fire3 - descriptiveName: - descriptiveNegativeName: - negativeButton: - positiveButton: joystick button 2 - altNegativeButton: - altPositiveButton: - gravity: 1000 - dead: .00100000005 - sensitivity: 1000 - snap: 0 - invert: 0 - type: 0 - axis: 0 - joyNum: 0 - - serializedVersion: 3 - m_Name: Jump - descriptiveName: - descriptiveNegativeName: - negativeButton: - positiveButton: joystick button 3 - altNegativeButton: - altPositiveButton: - gravity: 1000 - dead: .00100000005 - sensitivity: 1000 - snap: 0 - invert: 0 - type: 0 - axis: 0 - joyNum: 0 diff --git a/Shader Forge/ProjectSettings/NavMeshAreas.asset b/Shader Forge/ProjectSettings/NavMeshAreas.asset deleted file mode 100644 index 79cb3ae9..00000000 --- a/Shader Forge/ProjectSettings/NavMeshAreas.asset +++ /dev/null @@ -1,133 +0,0 @@ -%YAML 1.1 -%TAG !u! tag:unity3d.com,2011: ---- !u!126 &1 -NavMeshLayers: - m_ObjectHideFlags: 0 - Built-in Layer 0: - name: Default - cost: 1 - editType: 2 - Built-in Layer 1: - name: Not Walkable - cost: 1 - editType: 0 - Built-in Layer 2: - name: Jump - cost: 2 - editType: 2 - User Layer 0: - name: - cost: 1 - editType: 3 - User Layer 1: - name: - cost: 1 - editType: 3 - User Layer 2: - name: - cost: 1 - editType: 3 - User Layer 3: - name: - cost: 1 - editType: 3 - User Layer 4: - name: - cost: 1 - editType: 3 - User Layer 5: - name: - cost: 1 - editType: 3 - User Layer 6: - name: - cost: 1 - editType: 3 - User Layer 7: - name: - cost: 1 - editType: 3 - User Layer 8: - name: - cost: 1 - editType: 3 - User Layer 9: - name: - cost: 1 - editType: 3 - User Layer 10: - name: - cost: 1 - editType: 3 - User Layer 11: - name: - cost: 1 - editType: 3 - User Layer 12: - name: - cost: 1 - editType: 3 - User Layer 13: - name: - cost: 1 - editType: 3 - User Layer 14: - name: - cost: 1 - editType: 3 - User Layer 15: - name: - cost: 1 - editType: 3 - User Layer 16: - name: - cost: 1 - editType: 3 - User Layer 17: - name: - cost: 1 - editType: 3 - User Layer 18: - name: - cost: 1 - editType: 3 - User Layer 19: - name: - cost: 1 - editType: 3 - User Layer 20: - name: - cost: 1 - editType: 3 - User Layer 21: - name: - cost: 1 - editType: 3 - User Layer 22: - name: - cost: 1 - editType: 3 - User Layer 23: - name: - cost: 1 - editType: 3 - User Layer 24: - name: - cost: 1 - editType: 3 - User Layer 25: - name: - cost: 1 - editType: 3 - User Layer 26: - name: - cost: 1 - editType: 3 - User Layer 27: - name: - cost: 1 - editType: 3 - User Layer 28: - name: - cost: 1 - editType: 3 diff --git a/Shader Forge/ProjectSettings/NavMeshLayers.asset b/Shader Forge/ProjectSettings/NavMeshLayers.asset deleted file mode 100644 index 79cb3ae9..00000000 --- a/Shader Forge/ProjectSettings/NavMeshLayers.asset +++ /dev/null @@ -1,133 +0,0 @@ -%YAML 1.1 -%TAG !u! tag:unity3d.com,2011: ---- !u!126 &1 -NavMeshLayers: - m_ObjectHideFlags: 0 - Built-in Layer 0: - name: Default - cost: 1 - editType: 2 - Built-in Layer 1: - name: Not Walkable - cost: 1 - editType: 0 - Built-in Layer 2: - name: Jump - cost: 2 - editType: 2 - User Layer 0: - name: - cost: 1 - editType: 3 - User Layer 1: - name: - cost: 1 - editType: 3 - User Layer 2: - name: - cost: 1 - editType: 3 - User Layer 3: - name: - cost: 1 - editType: 3 - User Layer 4: - name: - cost: 1 - editType: 3 - User Layer 5: - name: - cost: 1 - editType: 3 - User Layer 6: - name: - cost: 1 - editType: 3 - User Layer 7: - name: - cost: 1 - editType: 3 - User Layer 8: - name: - cost: 1 - editType: 3 - User Layer 9: - name: - cost: 1 - editType: 3 - User Layer 10: - name: - cost: 1 - editType: 3 - User Layer 11: - name: - cost: 1 - editType: 3 - User Layer 12: - name: - cost: 1 - editType: 3 - User Layer 13: - name: - cost: 1 - editType: 3 - User Layer 14: - name: - cost: 1 - editType: 3 - User Layer 15: - name: - cost: 1 - editType: 3 - User Layer 16: - name: - cost: 1 - editType: 3 - User Layer 17: - name: - cost: 1 - editType: 3 - User Layer 18: - name: - cost: 1 - editType: 3 - User Layer 19: - name: - cost: 1 - editType: 3 - User Layer 20: - name: - cost: 1 - editType: 3 - User Layer 21: - name: - cost: 1 - editType: 3 - User Layer 22: - name: - cost: 1 - editType: 3 - User Layer 23: - name: - cost: 1 - editType: 3 - User Layer 24: - name: - cost: 1 - editType: 3 - User Layer 25: - name: - cost: 1 - editType: 3 - User Layer 26: - name: - cost: 1 - editType: 3 - User Layer 27: - name: - cost: 1 - editType: 3 - User Layer 28: - name: - cost: 1 - editType: 3 diff --git a/Shader Forge/ProjectSettings/NavMeshProjectSettings.asset b/Shader Forge/ProjectSettings/NavMeshProjectSettings.asset deleted file mode 100644 index 79cb3ae9..00000000 --- a/Shader Forge/ProjectSettings/NavMeshProjectSettings.asset +++ /dev/null @@ -1,133 +0,0 @@ -%YAML 1.1 -%TAG !u! tag:unity3d.com,2011: ---- !u!126 &1 -NavMeshLayers: - m_ObjectHideFlags: 0 - Built-in Layer 0: - name: Default - cost: 1 - editType: 2 - Built-in Layer 1: - name: Not Walkable - cost: 1 - editType: 0 - Built-in Layer 2: - name: Jump - cost: 2 - editType: 2 - User Layer 0: - name: - cost: 1 - editType: 3 - User Layer 1: - name: - cost: 1 - editType: 3 - User Layer 2: - name: - cost: 1 - editType: 3 - User Layer 3: - name: - cost: 1 - editType: 3 - User Layer 4: - name: - cost: 1 - editType: 3 - User Layer 5: - name: - cost: 1 - editType: 3 - User Layer 6: - name: - cost: 1 - editType: 3 - User Layer 7: - name: - cost: 1 - editType: 3 - User Layer 8: - name: - cost: 1 - editType: 3 - User Layer 9: - name: - cost: 1 - editType: 3 - User Layer 10: - name: - cost: 1 - editType: 3 - User Layer 11: - name: - cost: 1 - editType: 3 - User Layer 12: - name: - cost: 1 - editType: 3 - User Layer 13: - name: - cost: 1 - editType: 3 - User Layer 14: - name: - cost: 1 - editType: 3 - User Layer 15: - name: - cost: 1 - editType: 3 - User Layer 16: - name: - cost: 1 - editType: 3 - User Layer 17: - name: - cost: 1 - editType: 3 - User Layer 18: - name: - cost: 1 - editType: 3 - User Layer 19: - name: - cost: 1 - editType: 3 - User Layer 20: - name: - cost: 1 - editType: 3 - User Layer 21: - name: - cost: 1 - editType: 3 - User Layer 22: - name: - cost: 1 - editType: 3 - User Layer 23: - name: - cost: 1 - editType: 3 - User Layer 24: - name: - cost: 1 - editType: 3 - User Layer 25: - name: - cost: 1 - editType: 3 - User Layer 26: - name: - cost: 1 - editType: 3 - User Layer 27: - name: - cost: 1 - editType: 3 - User Layer 28: - name: - cost: 1 - editType: 3 diff --git a/Shader Forge/ProjectSettings/NetworkManager.asset b/Shader Forge/ProjectSettings/NetworkManager.asset deleted file mode 100644 index 5dc6a831..00000000 --- a/Shader Forge/ProjectSettings/NetworkManager.asset +++ /dev/null @@ -1,8 +0,0 @@ -%YAML 1.1 -%TAG !u! tag:unity3d.com,2011: ---- !u!149 &1 -NetworkManager: - m_ObjectHideFlags: 0 - m_DebugLevel: 0 - m_Sendrate: 15 - m_AssetToPrefab: {} diff --git a/Shader Forge/ProjectSettings/Physics2DSettings.asset b/Shader Forge/ProjectSettings/Physics2DSettings.asset deleted file mode 100644 index aaa159b8..00000000 --- a/Shader Forge/ProjectSettings/Physics2DSettings.asset +++ /dev/null @@ -1,11 +0,0 @@ -%YAML 1.1 -%TAG !u! tag:unity3d.com,2011: ---- !u!19 &1 -Physics2DSettings: - m_ObjectHideFlags: 0 - m_Gravity: {x: 0, y: -30} - m_DefaultMaterial: {fileID: 0} - m_VelocityIterations: 8 - m_PositionIterations: 3 - m_RaycastsHitTriggers: 1 - m_LayerCollisionMatrix: fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff9fffffffefffffff2fffffff3ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff diff --git a/Shader Forge/ProjectSettings/PresetManager.asset b/Shader Forge/ProjectSettings/PresetManager.asset deleted file mode 100644 index 636a595b..00000000 --- a/Shader Forge/ProjectSettings/PresetManager.asset +++ /dev/null @@ -1,6 +0,0 @@ -%YAML 1.1 -%TAG !u! tag:unity3d.com,2011: ---- !u!1386491679 &1 -PresetManager: - m_ObjectHideFlags: 0 - m_DefaultList: [] diff --git a/Shader Forge/ProjectSettings/ProjectSettings.asset b/Shader Forge/ProjectSettings/ProjectSettings.asset deleted file mode 100644 index 4c64d802..00000000 --- a/Shader Forge/ProjectSettings/ProjectSettings.asset +++ /dev/null @@ -1,607 +0,0 @@ -%YAML 1.1 -%TAG !u! tag:unity3d.com,2011: ---- !u!129 &1 -PlayerSettings: - m_ObjectHideFlags: 0 - serializedVersion: 11 - productGUID: 3a8984573b6d44decadf1ac29eacc6ec - AndroidProfiler: 0 - defaultScreenOrientation: 0 - targetDevice: 2 - useOnDemandResources: 0 - accelerometerFrequency: 60 - companyName: DefaultCompany - productName: _2D v3 - defaultCursor: {fileID: 0} - cursorHotspot: {x: 0, y: 0} - m_SplashScreenBackgroundColor: {r: 0.13333334, g: 0.17254902, b: 0.21176471, a: 1} - m_ShowUnitySplashScreen: 1 - m_ShowUnitySplashLogo: 1 - m_SplashScreenOverlayOpacity: 1 - m_SplashScreenAnimation: 1 - m_SplashScreenLogoStyle: 1 - m_SplashScreenDrawMode: 0 - m_SplashScreenBackgroundAnimationZoom: 1 - m_SplashScreenLogoAnimationZoom: 1 - m_SplashScreenBackgroundLandscapeAspect: 1 - m_SplashScreenBackgroundPortraitAspect: 1 - m_SplashScreenBackgroundLandscapeUvs: - serializedVersion: 2 - x: 0 - y: 0 - width: 1 - height: 1 - m_SplashScreenBackgroundPortraitUvs: - serializedVersion: 2 - x: 0 - y: 0 - width: 1 - height: 1 - m_SplashScreenLogos: [] - m_SplashScreenBackgroundLandscape: {fileID: 0} - m_SplashScreenBackgroundPortrait: {fileID: 0} - m_VirtualRealitySplashScreen: {fileID: 0} - m_HolographicTrackingLossScreen: {fileID: 0} - defaultScreenWidth: 1024 - defaultScreenHeight: 768 - defaultScreenWidthWeb: 960 - defaultScreenHeightWeb: 600 - m_StereoRenderingPath: 0 - m_ActiveColorSpace: 0 - m_MTRendering: 1 - m_MobileMTRendering: 0 - m_StackTraceTypes: 010000000100000001000000010000000100000001000000 - iosShowActivityIndicatorOnLoading: -1 - androidShowActivityIndicatorOnLoading: -1 - tizenShowActivityIndicatorOnLoading: -1 - iosAppInBackgroundBehavior: 0 - displayResolutionDialog: 1 - iosAllowHTTPDownload: 1 - allowedAutorotateToPortrait: 1 - allowedAutorotateToPortraitUpsideDown: 1 - allowedAutorotateToLandscapeRight: 1 - allowedAutorotateToLandscapeLeft: 1 - useOSAutorotation: 1 - use32BitDisplayBuffer: 1 - disableDepthAndStencilBuffers: 0 - defaultIsFullScreen: 1 - defaultIsNativeResolution: 1 - runInBackground: 1 - captureSingleScreen: 0 - muteOtherAudioSources: 0 - Prepare IOS For Recording: 0 - submitAnalytics: 1 - usePlayerLog: 1 - bakeCollisionMeshes: 0 - forceSingleInstance: 0 - resizableWindow: 0 - useMacAppStoreValidation: 0 - gpuSkinning: 1 - graphicsJobs: 0 - xboxPIXTextureCapture: 0 - xboxEnableAvatar: 0 - xboxEnableKinect: 0 - xboxEnableKinectAutoTracking: 0 - xboxEnableFitness: 0 - visibleInBackground: 0 - allowFullscreenSwitch: 1 - graphicsJobMode: 0 - macFullscreenMode: 2 - d3d9FullscreenMode: 1 - d3d11FullscreenMode: 1 - xboxSpeechDB: 0 - xboxEnableHeadOrientation: 0 - xboxEnableGuest: 0 - xboxEnablePIXSampling: 0 - n3dsDisableStereoscopicView: 0 - n3dsEnableSharedListOpt: 1 - n3dsEnableVSync: 0 - ignoreAlphaClear: 0 - xboxOneResolution: 0 - xboxOneMonoLoggingLevel: 0 - xboxOneLoggingLevel: 1 - videoMemoryForVertexBuffers: 0 - psp2PowerMode: 0 - psp2AcquireBGM: 1 - wiiUTVResolution: 0 - wiiUGamePadMSAA: 1 - wiiUSupportsNunchuk: 0 - wiiUSupportsClassicController: 0 - wiiUSupportsBalanceBoard: 0 - wiiUSupportsMotionPlus: 0 - wiiUSupportsProController: 0 - wiiUAllowScreenCapture: 1 - wiiUControllerCount: 0 - m_SupportedAspectRatios: - 4:3: 1 - 5:4: 1 - 16:10: 1 - 16:9: 1 - Others: 1 - bundleVersion: 1.0 - preloadedAssets: [] - metroInputSource: 0 - m_HolographicPauseOnTrackingLoss: 1 - xboxOneDisableKinectGpuReservation: 0 - xboxOneEnable7thCore: 0 - vrSettings: - cardboard: - depthFormat: 0 - enableTransitionView: 0 - daydream: - depthFormat: 0 - useSustainedPerformanceMode: 0 - hololens: - depthFormat: 1 - protectGraphicsMemory: 0 - useHDRDisplay: 0 - applicationIdentifier: - Android: com.Company.ProductName - Standalone: unity.DefaultCompany._2D v3 - Tizen: com.Company.ProductName - iOS: com.Company.ProductName - tvOS: com.Company.ProductName - buildNumber: - iOS: 0 - AndroidBundleVersionCode: 1 - AndroidMinSdkVersion: 16 - AndroidTargetSdkVersion: 0 - AndroidPreferredInstallLocation: 1 - aotOptions: - stripEngineCode: 1 - iPhoneStrippingLevel: 0 - iPhoneScriptCallOptimization: 0 - ForceInternetPermission: 0 - ForceSDCardPermission: 0 - CreateWallpaper: 0 - APKExpansionFiles: 0 - keepLoadedShadersAlive: 0 - StripUnusedMeshComponents: 0 - VertexChannelCompressionMask: - serializedVersion: 2 - m_Bits: 238 - iPhoneSdkVersion: 988 - iOSTargetOSVersionString: 6.0 - tvOSSdkVersion: 0 - tvOSRequireExtendedGameController: 0 - tvOSTargetOSVersionString: - uIPrerenderedIcon: 0 - uIRequiresPersistentWiFi: 0 - uIRequiresFullScreen: 1 - uIStatusBarHidden: 1 - uIExitOnSuspend: 0 - uIStatusBarStyle: 0 - iPhoneSplashScreen: {fileID: 0} - iPhoneHighResSplashScreen: {fileID: 0} - iPhoneTallHighResSplashScreen: {fileID: 0} - iPhone47inSplashScreen: {fileID: 0} - iPhone55inPortraitSplashScreen: {fileID: 0} - iPhone55inLandscapeSplashScreen: {fileID: 0} - iPadPortraitSplashScreen: {fileID: 0} - iPadHighResPortraitSplashScreen: {fileID: 0} - iPadLandscapeSplashScreen: {fileID: 0} - iPadHighResLandscapeSplashScreen: {fileID: 0} - appleTVSplashScreen: {fileID: 0} - tvOSSmallIconLayers: [] - tvOSLargeIconLayers: [] - tvOSTopShelfImageLayers: [] - tvOSTopShelfImageWideLayers: [] - iOSLaunchScreenType: 0 - iOSLaunchScreenPortrait: {fileID: 0} - iOSLaunchScreenLandscape: {fileID: 0} - iOSLaunchScreenBackgroundColor: - serializedVersion: 2 - rgba: 2795137446 - iOSLaunchScreenFillPct: 100 - iOSLaunchScreenSize: 100 - iOSLaunchScreenCustomXibPath: - iOSLaunchScreeniPadType: 0 - iOSLaunchScreeniPadImage: {fileID: 0} - iOSLaunchScreeniPadBackgroundColor: - serializedVersion: 2 - rgba: 0 - iOSLaunchScreeniPadFillPct: 100 - iOSLaunchScreeniPadSize: 100 - iOSLaunchScreeniPadCustomXibPath: - iOSDeviceRequirements: [] - iOSURLSchemes: [] - iOSBackgroundModes: 0 - iOSMetalForceHardShadows: 0 - metalEditorSupport: 1 - metalAPIValidation: 1 - appleDeveloperTeamID: - iOSManualSigningProvisioningProfileID: - tvOSManualSigningProvisioningProfileID: - appleEnableAutomaticSigning: 0 - AndroidTargetDevice: 0 - AndroidSplashScreenScale: 0 - androidSplashScreen: {fileID: 0} - AndroidKeystoreName: - AndroidKeyaliasName: - AndroidTVCompatibility: 1 - AndroidIsGame: 1 - androidEnableBanner: 1 - m_AndroidBanners: - - width: 320 - height: 180 - banner: {fileID: 0} - androidGamepadSupportLevel: 0 - resolutionDialogBanner: {fileID: 0} - m_BuildTargetIcons: - - m_BuildTarget: - m_Icons: - - serializedVersion: 2 - m_Icon: {fileID: 0} - m_Width: 1 - m_Height: 1 - m_BuildTargetBatching: [] - m_BuildTargetGraphicsAPIs: [] - m_BuildTargetVRSettings: [] - openGLRequireES31: 0 - openGLRequireES31AEP: 0 - webPlayerTemplate: APPLICATION:Default - m_TemplateCustomTags: {} - wiiUTitleID: 0005000011000000 - wiiUGroupID: 00010000 - wiiUCommonSaveSize: 4096 - wiiUAccountSaveSize: 2048 - wiiUOlvAccessKey: 0 - wiiUTinCode: 0 - wiiUJoinGameId: 0 - wiiUJoinGameModeMask: 0000000000000000 - wiiUCommonBossSize: 0 - wiiUAccountBossSize: 0 - wiiUAddOnUniqueIDs: [] - wiiUMainThreadStackSize: 3072 - wiiULoaderThreadStackSize: 1024 - wiiUSystemHeapSize: 128 - wiiUTVStartupScreen: {fileID: 0} - wiiUGamePadStartupScreen: {fileID: 0} - wiiUDrcBufferDisabled: 0 - wiiUProfilerLibPath: - actionOnDotNetUnhandledException: 1 - enableInternalProfiler: 0 - logObjCUncaughtExceptions: 1 - enableCrashReportAPI: 0 - cameraUsageDescription: - locationUsageDescription: - microphoneUsageDescription: - switchNetLibKey: - switchSocketMemoryPoolSize: 6144 - switchSocketAllocatorPoolSize: 128 - switchSocketConcurrencyLimit: 14 - switchUseCPUProfiler: 0 - switchApplicationID: 0x0005000C10000001 - switchNSODependencies: - switchTitleNames_0: - switchTitleNames_1: - switchTitleNames_2: - switchTitleNames_3: - switchTitleNames_4: - switchTitleNames_5: - switchTitleNames_6: - switchTitleNames_7: - switchTitleNames_8: - switchTitleNames_9: - switchTitleNames_10: - switchTitleNames_11: - switchTitleNames_12: - switchTitleNames_13: - switchTitleNames_14: - switchPublisherNames_0: - switchPublisherNames_1: - switchPublisherNames_2: - switchPublisherNames_3: - switchPublisherNames_4: - switchPublisherNames_5: - switchPublisherNames_6: - switchPublisherNames_7: - switchPublisherNames_8: - switchPublisherNames_9: - switchPublisherNames_10: - switchPublisherNames_11: - switchPublisherNames_12: - switchPublisherNames_13: - switchPublisherNames_14: - switchIcons_0: {fileID: 0} - switchIcons_1: {fileID: 0} - switchIcons_2: {fileID: 0} - switchIcons_3: {fileID: 0} - switchIcons_4: {fileID: 0} - switchIcons_5: {fileID: 0} - switchIcons_6: {fileID: 0} - switchIcons_7: {fileID: 0} - switchIcons_8: {fileID: 0} - switchIcons_9: {fileID: 0} - switchIcons_10: {fileID: 0} - switchIcons_11: {fileID: 0} - switchIcons_12: {fileID: 0} - switchIcons_13: {fileID: 0} - switchIcons_14: {fileID: 0} - switchSmallIcons_0: {fileID: 0} - switchSmallIcons_1: {fileID: 0} - switchSmallIcons_2: {fileID: 0} - switchSmallIcons_3: {fileID: 0} - switchSmallIcons_4: {fileID: 0} - switchSmallIcons_5: {fileID: 0} - switchSmallIcons_6: {fileID: 0} - switchSmallIcons_7: {fileID: 0} - switchSmallIcons_8: {fileID: 0} - switchSmallIcons_9: {fileID: 0} - switchSmallIcons_10: {fileID: 0} - switchSmallIcons_11: {fileID: 0} - switchSmallIcons_12: {fileID: 0} - switchSmallIcons_13: {fileID: 0} - switchSmallIcons_14: {fileID: 0} - switchManualHTML: - switchAccessibleURLs: - switchLegalInformation: - switchMainThreadStackSize: 1048576 - switchPresenceGroupId: 0x0005000C10000001 - switchLogoHandling: 0 - switchReleaseVersion: 0 - switchDisplayVersion: 1.0.0 - switchStartupUserAccount: 0 - switchTouchScreenUsage: 0 - switchSupportedLanguagesMask: 0 - switchLogoType: 0 - switchApplicationErrorCodeCategory: - switchUserAccountSaveDataSize: 0 - switchUserAccountSaveDataJournalSize: 0 - switchAttribute: 0 - switchCardSpecSize: 4 - switchCardSpecClock: 25 - switchRatingsMask: 0 - switchRatingsInt_0: 0 - switchRatingsInt_1: 0 - switchRatingsInt_2: 0 - switchRatingsInt_3: 0 - switchRatingsInt_4: 0 - switchRatingsInt_5: 0 - switchRatingsInt_6: 0 - switchRatingsInt_7: 0 - switchRatingsInt_8: 0 - switchRatingsInt_9: 0 - switchRatingsInt_10: 0 - switchRatingsInt_11: 0 - switchLocalCommunicationIds_0: 0x0005000C10000001 - switchLocalCommunicationIds_1: - switchLocalCommunicationIds_2: - switchLocalCommunicationIds_3: - switchLocalCommunicationIds_4: - switchLocalCommunicationIds_5: - switchLocalCommunicationIds_6: - switchLocalCommunicationIds_7: - switchParentalControl: 0 - switchAllowsScreenshot: 1 - switchDataLossConfirmation: 0 - ps4NPAgeRating: 12 - ps4NPTitleSecret: - ps4NPTrophyPackPath: - ps4ParentalLevel: 1 - ps4ContentID: ED1633-NPXX51362_00-0000000000000000 - ps4Category: 0 - ps4MasterVersion: 01.00 - ps4AppVersion: 01.00 - ps4AppType: 0 - ps4ParamSfxPath: - ps4VideoOutPixelFormat: 0 - ps4VideoOutInitialWidth: 1920 - ps4VideoOutBaseModeInitialWidth: 1920 - ps4VideoOutReprojectionRate: 120 - ps4PronunciationXMLPath: - ps4PronunciationSIGPath: - ps4BackgroundImagePath: - ps4StartupImagePath: - ps4SaveDataImagePath: - ps4SdkOverride: - ps4BGMPath: - ps4ShareFilePath: - ps4ShareOverlayImagePath: - ps4PrivacyGuardImagePath: - ps4NPtitleDatPath: - ps4RemotePlayKeyAssignment: -1 - ps4RemotePlayKeyMappingDir: - ps4PlayTogetherPlayerCount: 0 - ps4EnterButtonAssignment: 1 - ps4ApplicationParam1: 0 - ps4ApplicationParam2: 0 - ps4ApplicationParam3: 0 - ps4ApplicationParam4: 0 - ps4DownloadDataSize: 0 - ps4GarlicHeapSize: 2048 - ps4ProGarlicHeapSize: 2560 - ps4Passcode: 1O8YFOGKjxRrJBdT3hVOfoaMeAjSWfch - ps4UseDebugIl2cppLibs: 0 - ps4pnSessions: 1 - ps4pnPresence: 1 - ps4pnFriends: 1 - ps4pnGameCustomData: 1 - playerPrefsSupport: 0 - restrictedAudioUsageRights: 0 - ps4UseResolutionFallback: 0 - ps4ReprojectionSupport: 0 - ps4UseAudio3dBackend: 0 - ps4SocialScreenEnabled: 0 - ps4ScriptOptimizationLevel: 3 - ps4Audio3dVirtualSpeakerCount: 14 - ps4attribCpuUsage: 0 - ps4PatchPkgPath: - ps4PatchLatestPkgPath: - ps4PatchChangeinfoPath: - ps4PatchDayOne: 0 - ps4attribUserManagement: 0 - ps4attribMoveSupport: 0 - ps4attrib3DSupport: 0 - ps4attribShareSupport: 0 - ps4attribExclusiveVR: 0 - ps4disableAutoHideSplash: 0 - ps4videoRecordingFeaturesUsed: 0 - ps4contentSearchFeaturesUsed: 0 - ps4attribEyeToEyeDistanceSettingVR: 0 - ps4IncludedModules: [] - monoEnv: - psp2Splashimage: {fileID: 0} - psp2NPTrophyPackPath: - psp2NPSupportGBMorGJP: 0 - psp2NPAgeRating: 12 - psp2NPTitleDatPath: - psp2NPCommsID: - psp2NPCommunicationsID: - psp2NPCommsPassphrase: - psp2NPCommsSig: - psp2ParamSfxPath: - psp2ManualPath: - psp2LiveAreaGatePath: - psp2LiveAreaBackroundPath: - psp2LiveAreaPath: - psp2LiveAreaTrialPath: - psp2PatchChangeInfoPath: - psp2PatchOriginalPackage: - psp2PackagePassword: oZYFYZ5B6kzMCk8R6BEuZMrF6cI6NX8D - psp2KeystoneFile: - psp2MemoryExpansionMode: 0 - psp2DRMType: 0 - psp2StorageType: 0 - psp2MediaCapacity: 0 - psp2DLCConfigPath: - psp2ThumbnailPath: - psp2BackgroundPath: - psp2SoundPath: - psp2TrophyCommId: - psp2TrophyPackagePath: - psp2PackagedResourcesPath: - psp2SaveDataQuota: 10240 - psp2ParentalLevel: 1 - psp2ShortTitle: Not Set - psp2ContentID: IV0000-ABCD12345_00-0123456789ABCDEF - psp2Category: 0 - psp2MasterVersion: 01.00 - psp2AppVersion: 01.00 - psp2TVBootMode: 0 - psp2EnterButtonAssignment: 2 - psp2TVDisableEmu: 0 - psp2AllowTwitterDialog: 1 - psp2Upgradable: 0 - psp2HealthWarning: 0 - psp2UseLibLocation: 0 - psp2InfoBarOnStartup: 0 - psp2InfoBarColor: 0 - psp2UseDebugIl2cppLibs: 0 - psmSplashimage: {fileID: 0} - splashScreenBackgroundSourceLandscape: {fileID: 0} - splashScreenBackgroundSourcePortrait: {fileID: 0} - spritePackerPolicy: DefaultPackerPolicy - webGLMemorySize: 256 - webGLExceptionSupport: 0 - webGLNameFilesAsHashes: 0 - webGLDataCaching: 0 - webGLDebugSymbols: 0 - webGLEmscriptenArgs: - webGLModulesDirectory: - webGLTemplate: APPLICATION:Default - webGLAnalyzeBuildSize: 0 - webGLUseEmbeddedResources: 0 - webGLUseWasm: 0 - webGLCompressionFormat: 1 - scriptingDefineSymbols: {} - platformArchitecture: - iOS: 2 - scriptingBackend: - Android: 0 - Metro: 2 - Standalone: 0 - WP8: 2 - WebGL: 1 - iOS: 0 - incrementalIl2cppBuild: - iOS: 0 - additionalIl2CppArgs: - apiCompatibilityLevelPerPlatform: {} - m_RenderingPath: 3 - m_MobileRenderingPath: 1 - metroPackageName: _2D v3 - metroPackageVersion: - metroCertificatePath: - metroCertificatePassword: - metroCertificateSubject: - metroCertificateIssuer: - metroCertificateNotAfter: 0000000000000000 - metroApplicationDescription: _2D v3 - wsaImages: {} - metroTileShortName: - metroCommandLineArgsFile: - metroTileShowName: 1 - metroMediumTileShowName: 0 - metroLargeTileShowName: 0 - metroWideTileShowName: 0 - metroDefaultTileSize: 1 - metroTileForegroundText: 1 - metroTileBackgroundColor: {r: 0, g: 0, b: 0, a: 1} - metroSplashScreenBackgroundColor: {r: 0, g: 0, b: 0, a: 1} - metroSplashScreenUseBackgroundColor: 0 - platformCapabilities: {} - metroFTAName: - metroFTAFileTypes: [] - metroProtocolName: - metroCompilationOverrides: 1 - tizenProductDescription: - tizenProductURL: - tizenSigningProfileName: - tizenGPSPermissions: 0 - tizenMicrophonePermissions: 0 - tizenDeploymentTarget: - tizenDeploymentTargetType: -1 - tizenMinOSVersion: 1 - n3dsUseExtSaveData: 0 - n3dsCompressStaticMem: 1 - n3dsExtSaveDataNumber: 0x12345 - n3dsStackSize: 131072 - n3dsTargetPlatform: 2 - n3dsRegion: 7 - n3dsMediaSize: 0 - n3dsLogoStyle: 3 - n3dsTitle: GameName - n3dsProductCode: - n3dsApplicationId: 0xFF3FF - stvDeviceAddress: - stvProductDescription: - stvProductAuthor: - stvProductAuthorEmail: - stvProductLink: - stvProductCategory: 0 - XboxOneProductId: - XboxOneUpdateKey: - XboxOneSandboxId: - XboxOneContentId: - XboxOneTitleId: - XboxOneSCId: - XboxOneGameOsOverridePath: - XboxOnePackagingOverridePath: - XboxOneAppManifestOverridePath: - XboxOnePackageEncryption: 0 - XboxOnePackageUpdateGranularity: 2 - XboxOneDescription: - XboxOneLanguage: - - enus - XboxOneCapability: [] - XboxOneGameRating: {} - XboxOneIsContentPackage: 0 - XboxOneEnableGPUVariability: 0 - XboxOneSockets: {} - XboxOneSplashScreen: {fileID: 0} - XboxOneAllowedProductIds: [] - XboxOnePersistentLocalStorageSize: 0 - xboxOneScriptCompiler: 0 - vrEditorSettings: - daydream: - daydreamIconForeground: {fileID: 0} - daydreamIconBackground: {fileID: 0} - cloudServicesEnabled: {} - facebookSdkVersion: 7.9.1 - apiCompatibilityLevel: 2 - cloudProjectId: - projectName: - organizationId: - cloudEnabled: 0 - enableNewInputSystem: 0 diff --git a/Shader Forge/ProjectSettings/ProjectVersion.txt b/Shader Forge/ProjectSettings/ProjectVersion.txt deleted file mode 100644 index 22977b32..00000000 --- a/Shader Forge/ProjectSettings/ProjectVersion.txt +++ /dev/null @@ -1 +0,0 @@ -m_EditorVersion: 2018.1.0f2 diff --git a/Shader Forge/ProjectSettings/QualitySettings.asset b/Shader Forge/ProjectSettings/QualitySettings.asset deleted file mode 100644 index 63befb94..00000000 --- a/Shader Forge/ProjectSettings/QualitySettings.asset +++ /dev/null @@ -1,174 +0,0 @@ -%YAML 1.1 -%TAG !u! tag:unity3d.com,2011: ---- !u!47 &1 -QualitySettings: - m_ObjectHideFlags: 0 - serializedVersion: 5 - m_CurrentQuality: 5 - m_QualitySettings: - - serializedVersion: 2 - name: Fastest - pixelLightCount: 0 - shadows: 0 - shadowResolution: 0 - shadowProjection: 1 - shadowCascades: 1 - shadowDistance: 15 - shadowNearPlaneOffset: 2 - shadowCascade2Split: 0.33333334 - shadowCascade4Split: {x: 0.06666667, y: 0.2, z: 0.46666667} - blendWeights: 1 - textureQuality: 1 - anisotropicTextures: 0 - antiAliasing: 0 - softParticles: 0 - softVegetation: 0 - realtimeReflectionProbes: 0 - billboardsFaceCameraPosition: 0 - vSyncCount: 0 - lodBias: 0.3 - maximumLODLevel: 0 - particleRaycastBudget: 4 - asyncUploadTimeSlice: 2 - asyncUploadBufferSize: 4 - excludedTargetPlatforms: [] - - serializedVersion: 2 - name: Fast - pixelLightCount: 0 - shadows: 0 - shadowResolution: 0 - shadowProjection: 1 - shadowCascades: 1 - shadowDistance: 20 - shadowNearPlaneOffset: 2 - shadowCascade2Split: 0.33333334 - shadowCascade4Split: {x: 0.06666667, y: 0.2, z: 0.46666667} - blendWeights: 2 - textureQuality: 0 - anisotropicTextures: 0 - antiAliasing: 0 - softParticles: 0 - softVegetation: 0 - realtimeReflectionProbes: 0 - billboardsFaceCameraPosition: 0 - vSyncCount: 0 - lodBias: 0.4 - maximumLODLevel: 0 - particleRaycastBudget: 16 - asyncUploadTimeSlice: 2 - asyncUploadBufferSize: 4 - excludedTargetPlatforms: [] - - serializedVersion: 2 - name: Simple - pixelLightCount: 1 - shadows: 1 - shadowResolution: 0 - shadowProjection: 1 - shadowCascades: 1 - shadowDistance: 20 - shadowNearPlaneOffset: 2 - shadowCascade2Split: 0.33333334 - shadowCascade4Split: {x: 0.06666667, y: 0.2, z: 0.46666667} - blendWeights: 2 - textureQuality: 0 - anisotropicTextures: 1 - antiAliasing: 0 - softParticles: 0 - softVegetation: 0 - realtimeReflectionProbes: 0 - billboardsFaceCameraPosition: 0 - vSyncCount: 0 - lodBias: 0.7 - maximumLODLevel: 0 - particleRaycastBudget: 64 - asyncUploadTimeSlice: 2 - asyncUploadBufferSize: 4 - excludedTargetPlatforms: [] - - serializedVersion: 2 - name: Good - pixelLightCount: 2 - shadows: 2 - shadowResolution: 1 - shadowProjection: 1 - shadowCascades: 2 - shadowDistance: 40 - shadowNearPlaneOffset: 2 - shadowCascade2Split: 0.33333334 - shadowCascade4Split: {x: 0.06666667, y: 0.2, z: 0.46666667} - blendWeights: 2 - textureQuality: 0 - anisotropicTextures: 1 - antiAliasing: 0 - softParticles: 0 - softVegetation: 1 - realtimeReflectionProbes: 1 - billboardsFaceCameraPosition: 1 - vSyncCount: 1 - lodBias: 1 - maximumLODLevel: 0 - particleRaycastBudget: 256 - asyncUploadTimeSlice: 2 - asyncUploadBufferSize: 4 - excludedTargetPlatforms: [] - - serializedVersion: 2 - name: Beautiful - pixelLightCount: 3 - shadows: 2 - shadowResolution: 2 - shadowProjection: 1 - shadowCascades: 2 - shadowDistance: 70 - shadowNearPlaneOffset: 2 - shadowCascade2Split: 0.33333334 - shadowCascade4Split: {x: 0.06666667, y: 0.2, z: 0.46666667} - blendWeights: 4 - textureQuality: 0 - anisotropicTextures: 2 - antiAliasing: 2 - softParticles: 1 - softVegetation: 1 - realtimeReflectionProbes: 1 - billboardsFaceCameraPosition: 1 - vSyncCount: 1 - lodBias: 1.5 - maximumLODLevel: 0 - particleRaycastBudget: 1024 - asyncUploadTimeSlice: 2 - asyncUploadBufferSize: 4 - excludedTargetPlatforms: [] - - serializedVersion: 2 - name: Fantastic - pixelLightCount: 4 - shadows: 2 - shadowResolution: 2 - shadowProjection: 1 - shadowCascades: 4 - shadowDistance: 150 - shadowNearPlaneOffset: 2 - shadowCascade2Split: 0.33333334 - shadowCascade4Split: {x: 0.06666667, y: 0.2, z: 0.46666667} - blendWeights: 4 - textureQuality: 0 - anisotropicTextures: 2 - antiAliasing: 2 - softParticles: 1 - softVegetation: 1 - realtimeReflectionProbes: 1 - billboardsFaceCameraPosition: 1 - vSyncCount: 1 - lodBias: 2 - maximumLODLevel: 0 - particleRaycastBudget: 4096 - asyncUploadTimeSlice: 2 - asyncUploadBufferSize: 4 - excludedTargetPlatforms: [] - m_PerPlatformDefaultQuality: - Android: 0 - Samsung TV: 0 - Standalone: 0 - Tizen: 0 - WP8: 0 - Web: 0 - WebGL: 0 - Windows Store Apps: 0 - iPhone: 0 diff --git a/Shader Forge/ProjectSettings/TagManager.asset b/Shader Forge/ProjectSettings/TagManager.asset deleted file mode 100644 index cadfd063..00000000 --- a/Shader Forge/ProjectSettings/TagManager.asset +++ /dev/null @@ -1,67 +0,0 @@ -%YAML 1.1 -%TAG !u! tag:unity3d.com,2011: ---- !u!78 &1 -TagManager: - serializedVersion: 2 - tags: - - ground - - Crate - - Enemy - - Wall - - Obstacle - - Bullet - - BombPickup - - ExplosionFX - - HealthBar - layers: - - Default - - TransparentFX - - Ignore Raycast - - - - Water - - UI - - - - - - Bombs - - Player - - Enemies - - Pickups - - Ground - - Lightmap Test Unity - - Lightmap Test SF - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - m_SortingLayers: - - name: Default - uniqueID: 0 - locked: 0 - - name: Default - uniqueID: 3363470833 - locked: 0 - - name: Background - uniqueID: 1535931219 - locked: 0 - - name: Character - uniqueID: 2511236001 - locked: 0 - - name: Foreground - uniqueID: 1024582385 - locked: 0 - - name: UI - uniqueID: 149272721 - locked: 0 diff --git a/Shader Forge/ProjectSettings/TimeManager.asset b/Shader Forge/ProjectSettings/TimeManager.asset deleted file mode 100644 index f0e494b6..00000000 --- a/Shader Forge/ProjectSettings/TimeManager.asset +++ /dev/null @@ -1,8 +0,0 @@ -%YAML 1.1 -%TAG !u! tag:unity3d.com,2011: ---- !u!5 &1 -TimeManager: - m_ObjectHideFlags: 0 - Fixed Timestep: .0199999996 - Maximum Allowed Timestep: .333333343 - m_TimeScale: 1 diff --git a/Shader Forge/ProjectSettings/UnityConnectSettings.asset b/Shader Forge/ProjectSettings/UnityConnectSettings.asset deleted file mode 100644 index 2943e440..00000000 --- a/Shader Forge/ProjectSettings/UnityConnectSettings.asset +++ /dev/null @@ -1,29 +0,0 @@ -%YAML 1.1 -%TAG !u! tag:unity3d.com,2011: ---- !u!310 &1 -UnityConnectSettings: - m_ObjectHideFlags: 0 - m_Enabled: 0 - m_TestMode: 0 - m_TestEventUrl: - m_TestConfigUrl: - CrashReportingSettings: - m_EventUrl: https://perf-events.cloud.unity3d.com/api/events/crashes - m_Enabled: 0 - m_CaptureEditorExceptions: 1 - UnityPurchasingSettings: - m_Enabled: 0 - m_TestMode: 0 - UnityAnalyticsSettings: - m_Enabled: 0 - m_InitializeOnStartup: 1 - m_TestMode: 0 - m_TestEventUrl: - m_TestConfigUrl: - UnityAdsSettings: - m_Enabled: 0 - m_InitializeOnStartup: 1 - m_TestMode: 0 - m_EnabledPlatforms: 4294967295 - m_IosGameId: - m_AndroidGameId: diff --git a/Shader Forge/TesterManual.txt b/Shader Forge/TesterManual.txt deleted file mode 100644 index 171ef8d9..00000000 --- a/Shader Forge/TesterManual.txt +++ /dev/null @@ -1,55 +0,0 @@ -Hello, person reading this text! -Welcome to the Shader Forge Alpha, and thanks for signing up to test it! - -You hopefully want to get going instantly, but please read this document first, it's not that long! - -Report bugs and request features here: -https://shaderforge.userecho.com/ - -List of some of the currently planned nodes and features: -https://docs.google.com/spreadsheet/ccc?key=0AqHpAiSNy9eDdGRaQ2hIbHpLVWtfbURSb1VRTlF0NGc&usp=sharing - - -Important Legal stuff: ----------------------- -- This is a test version solely for testing purposes, not a free license of Shader Forge, which means: -- Don't use shaders created in Shader Forge in a public project -- Don't share the code it creates to anyone apart from the alpha/beta testers -- Don't give this test version to anyone or publish it online etc -(Note that you are of course welcome (and encouraged) to share screenshots of Shader Forge and screenshots of shaders you've created in it publicly!) - - - -Installing: ------------ -Open a Unity project -> Double click the .unitypackage file you got in your mail -Unity plugins are per-project, so open the project you want to test the Shader Forge alpha in - - - -Quick start: ------------- -Opening Shader Forge = Window -> Shader Forge - Panning = Click and drag empty space - Zooming = (Coming later) - Adding nodes = RMB + select node OR pick from right panel and place (Dragging doesn't work at the moment) - Moving nodes = Click and drag - Deleting nodes = Hover cursor over and press delete -Deleting connections = Hover cursor over and press delete - - - -A few known issues: (More here: https://shaderforge.userecho.com/ ) -------------------- -- Shaders can't receive shadows -- Vertex lighting is mostly broken -- Only a directional light and ambient light is supported -- Loads of nodes are intentionally missing, check the feature list to see what is planned. If something is missing on that list, feel free to request it! - - - -Good luck! - - -// Joachim Holmér -// webmaster@acegikmo.com \ No newline at end of file diff --git a/Shader Forge/UpgradeLog.htm b/Shader Forge/UpgradeLog.htm deleted file mode 100644 index 53d357237d2db96afe03b84a6b112cc45d794330..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 16766 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 From 18c10a5822dba893b44e2e434f5341d5642cc31a Mon Sep 17 00:00:00 2001 From: Pyro_akm Date: Thu, 24 Jan 2019 14:38:55 +0100 Subject: [PATCH 18/27] Renamed directories. --- Editor/Code/SF_Editor.cs | 4356 ++++++++--------- Editor/Code/_Utility/SF_Resources.cs | 154 +- .../{GPU Rendering.meta => GPURendering.meta} | 5 +- ...Shader Presets.meta => ShaderPresets.meta} | 5 +- README.md.meta | 7 + 5 files changed, 2266 insertions(+), 2261 deletions(-) rename Editor/InternalResources/{GPU Rendering.meta => GPURendering.meta} (58%) rename Editor/InternalResources/{Shader Presets.meta => ShaderPresets.meta} (58%) create mode 100644 README.md.meta diff --git a/Editor/Code/SF_Editor.cs b/Editor/Code/SF_Editor.cs index 9ad58818..97c4fd2e 100644 --- a/Editor/Code/SF_Editor.cs +++ b/Editor/Code/SF_Editor.cs @@ -1,2179 +1,2179 @@ -using UnityEngine; -using UnityEditor; -using System; -using System.Collections.Generic; -using System.IO; -using System.Linq; -using System.Xml; -using System.Reflection; -using System.Net; -using System.Collections; - - - - -namespace ShaderForge { - - - public delegate T Func(); - - public enum UpToDateState{UpToDate, OutdatedSoft, OutdatedHard}; - - [Serializable] - public class SF_Editor : EditorWindow { - [SerializeField] - public SF_Evaluator shaderEvaluator; - [SerializeField] - public SF_PreviewWindow preview; - [SerializeField] - public SF_EditorNodeView nodeView; - [SerializeField] - public SF_EditorNodeBrowser nodeBrowser; - [SerializeField] - public SF_PassSettings ps; // TODO: Move - - [System.NonSerialized] - public static SF_Editor instance; - [SerializeField] - public SFN_Final mainNode; - [SerializeField] - public SF_StatusBox statusBox; - - [SerializeField] - public List nodes; - - [SerializeField] - DateTime startTime = DateTime.UtcNow; - - [SerializeField] - GUIStyle windowStyle; - [SerializeField] - GUIStyle titleStyle; - [SerializeField] - GUIStyle versionStyle; - [SerializeField] - GUIStyle nodeScrollbarStyle; - - [SerializeField] - public SF_DraggableSeparator separatorLeft; - - [SerializeField] - public SF_DraggableSeparator separatorRight; - - public Vector2 mousePosition = Vector2.zero; - - [SerializeField] - public Shader currentShaderAsset; - [SerializeField] - public string currentShaderPath; - - [SerializeField] - public List nodeTemplates; - - [SerializeField] - private UpToDateState shaderOutdated = UpToDateState.UpToDate; - public UpToDateState ShaderOutdated{ - get{ - return shaderOutdated; - } - set{ - if(shaderOutdated != value){ - //Debug.Log("Changed outdated state to " + value); - shaderOutdated = value; - } - } - } - - [NonSerialized] - public bool initialized = false; - - - - - public SF_Editor() { - if(SF_Debug.window) - Debug.Log( "[SF_LOG] - SF_Editor CONSTRUCTOR SF_Editor()" ); - SF_Editor.instance = this; - } - - [MenuItem( "Window/Shader Forge" )] - static void InitEmpty() { - if( SF_Editor.instance == null ) - Init( null ); - else { - EditorWindow.GetWindow( typeof( SF_Editor ) ); // Focus - } - } - - void OnEnable() { - SF_Settings.LoadAllFromDisk(); - titleContent = new GUIContent( "Shader Forge", (Texture)SF_GUI.Icon ); - if( this.preview != null ) - preview.OnEnable(); - } - - void OnDisable(){ - - if(shaderOutdated != UpToDateState.UpToDate){ - - fullscreenMessage = "Saving..."; - Repaint(); - shaderEvaluator.Evaluate(); - } - - if( this.preview != null ) - preview.OnDisable(); - - SF_Settings.SaveAllToDisk(); - - } - - - void OnDestroy(){ - DestroyImmediate( preview.internalMaterial ); - } - - public static bool Init( Shader initShader = null ) { - - // To make sure you get periods as decimal separators - System.Threading.Thread.CurrentThread.CurrentCulture = System.Globalization.CultureInfo.CreateSpecificCulture("en-US"); - - if(SF_Debug.evalFlow || SF_Debug.dynamicNodeLoad) - Debug.Log( "[SF_LOG] - SF_Editor Init(" + initShader + ")" ); - SF_Editor materialEditor = (SF_Editor)EditorWindow.GetWindow( typeof( SF_Editor ) ); - SF_Editor.instance = materialEditor; - updateCheck = ""; - bool loaded = materialEditor.InitializeInstance( initShader ); - if( !loaded ) - return false; - return true; - } - - public int GetUniqueNodeID() { - - int[] occupiedIDs = nodes.Select( x => x.id ).ToArray(); - int id = -1; - int limit = 1000000; - - do { - id = UnityEngine.Random.Range(1,9999); - limit--; - } while( occupiedIDs.Contains( id ) && limit > 0 ); - - if( limit <= 0 ) - Debug.LogError("Ran out of attempts to find a unique node ID"); - - return id; - } - - - - - - public void InitializeNodeTemplates() { - nodeTemplates = new List(); - - - // AddTemplate( typeof( SFN_CommentBox ), "Comment Box" ); - - string catArithmetic = "Arithmetic/"; - AddTemplate( typeof( SFN_Abs ), catArithmetic + "Abs" ); - AddTemplate( typeof( SFN_Add ), catArithmetic + "Add", KeyCode.A ); - AddTemplate( typeof( SFN_Blend ), catArithmetic + "Blend", KeyCode.B ); - AddTemplate( typeof( SFN_Ceil ), catArithmetic + "Ceil" ); - AddTemplate( typeof( SFN_Clamp ), catArithmetic + "Clamp" ); - AddTemplate( typeof( SFN_Clamp01 ), catArithmetic + "Clamp 0-1" ); - AddTemplate( typeof( SFN_ConstantClamp ), catArithmetic + "Clamp (Simple)",KeyCode.None, "Clamp Simple" ); - AddTemplate( typeof( SFN_Divide ), catArithmetic + "Divide", KeyCode.D ); - AddTemplate( typeof( SFN_Exp ), catArithmetic + "Exp" ); - AddTemplate( typeof( SFN_Floor ), catArithmetic + "Floor" ); - AddTemplate( typeof( SFN_Fmod ), catArithmetic + "Fmod" ); - AddTemplate( typeof( SFN_Frac ), catArithmetic + "Frac" ); - AddTemplate( typeof( SFN_HsvToRgb ), catArithmetic + "HSV to RGB" ); - AddTemplate( typeof( SFN_Hue ), catArithmetic + "Hue" ); - AddTemplate( typeof( SFN_If ), catArithmetic + "If", KeyCode.I ); - AddTemplate( typeof( SFN_InverseLerp ), catArithmetic + "Inverse Lerp" ); - AddTemplate( typeof( SFN_Lerp ), catArithmetic + "Lerp", KeyCode.L ); - AddTemplate( typeof( SFN_ConstantLerp ), catArithmetic + "Lerp (Simple)", KeyCode.None, "Lerp Simple" ); - AddTemplate( typeof( SFN_Log ), catArithmetic + "Log" ); - AddTemplate( typeof( SFN_Max ), catArithmetic + "Max" ); - AddTemplate( typeof( SFN_Min ), catArithmetic + "Min" ); - AddTemplate( typeof( SFN_Multiply ), catArithmetic + "Multiply", KeyCode.M ); - AddTemplate( typeof( SFN_MultiplyMatrix ), catArithmetic + "Multiply Matrix" ); - AddTemplate( typeof( SFN_Negate ), catArithmetic + "Negate" ); - AddTemplate( typeof( SFN_Noise ), catArithmetic + "Noise" ); - AddTemplate( typeof( SFN_OneMinus ), catArithmetic + "One Minus", KeyCode.O ); - AddTemplate( typeof( SFN_Posterize ), catArithmetic + "Posterize" ); - AddTemplate( typeof( SFN_Power ), catArithmetic + "Power", KeyCode.E ); - AddTemplate( typeof( SFN_Reciprocal ), catArithmetic + "Reciprocal" ); - AddTemplate( typeof( SFN_RemapRangeAdvanced),catArithmetic+ "Remap" ); - AddTemplate( typeof( SFN_RemapRange ), catArithmetic + "Remap (Simple)", KeyCode.R, "Remap Simple" ); - AddTemplate( typeof( SFN_RgbToHsv ), catArithmetic + "RGB to HSV" ); - AddTemplate( typeof( SFN_Round ), catArithmetic + "Round" ); - AddTemplate( typeof( SFN_Sign ), catArithmetic + "Sign" ); - AddTemplate( typeof( SFN_Smoothstep ), catArithmetic + "Smoothstep" ).MarkAsNewNode(); - AddTemplate( typeof( SFN_Sqrt ), catArithmetic + "Sqrt" ); - AddTemplate( typeof( SFN_Step ), catArithmetic + "Step (A <= B)", KeyCode.None, "Step" ); - AddTemplate( typeof( SFN_Subtract ), catArithmetic + "Subtract", KeyCode.S ); - AddTemplate( typeof( SFN_Trunc ), catArithmetic + "Trunc" ); - - string catConstVecs = "Constant Vectors/"; - AddTemplate( typeof( SFN_Vector1 ), catConstVecs + "Value", KeyCode.Alpha1 ); - AddTemplate( typeof( SFN_Vector2 ), catConstVecs + "Vector 2", KeyCode.Alpha2 ); - AddTemplate( typeof( SFN_Vector3 ), catConstVecs + "Vector 3", KeyCode.Alpha3 ); - AddTemplate( typeof( SFN_Vector4 ), catConstVecs + "Vector 4", KeyCode.Alpha4 ); - AddTemplate( typeof( SFN_Matrix4x4 ), catConstVecs + "Matrix 4x4" ); - - string catProps = "Properties/"; - AddTemplate( typeof( SFN_Color ), catProps + "Color" ); - AddTemplate( typeof( SFN_Cubemap ), catProps + "Cubemap" ); - AddTemplate( typeof( SFN_Matrix4x4Property ), catProps + "Matrix 4x4" ); - AddTemplate( typeof( SFN_Slider ), catProps + "Slider" ); - AddTemplate( typeof( SFN_SwitchProperty ), catProps + "Switch" ); - AddTemplate( typeof( SFN_Tex2d ), catProps + "Texture 2D", KeyCode.T ); - AddTemplate( typeof( SFN_Tex2dAsset ), catProps + "Texture Asset" ); - AddTemplate( typeof( SFN_ToggleProperty ), catProps + "Toggle" ); - AddTemplate( typeof( SFN_ValueProperty ), catProps + "Value" ); - AddTemplate( typeof( SFN_Vector4Property ), catProps + "Vector 4" ); - - //string catBranching = "Branching/"; - //AddTemplate( typeof( SFN_StaticBranch ), catBranching + "Static Branch" ); - - string catVecOps = "Vector Operations/"; - AddTemplate( typeof( SFN_Append ), catVecOps + "Append", KeyCode.Q ); - AddTemplate( typeof( SFN_ChannelBlend ), catVecOps + "Channel Blend"); - AddTemplate( typeof( SFN_ComponentMask ), catVecOps + "Component Mask", KeyCode.C ); - AddTemplate( typeof( SFN_Cross ), catVecOps + "Cross Product" ); - AddTemplate( typeof( SFN_Desaturate ), catVecOps + "Desaturate" ); - AddTemplate( typeof( SFN_DDX ), catVecOps + "DDX" ); - AddTemplate( typeof( SFN_DDXY ), catVecOps + "DDXY" ).MarkAsNewNode(); - AddTemplate( typeof( SFN_DDY ), catVecOps + "DDY" ); - AddTemplate( typeof( SFN_Distance ), catVecOps + "Distance" ); - AddTemplate( typeof( SFN_Dot ), catVecOps + "Dot Product" ); - AddTemplate( typeof( SFN_Length ), catVecOps + "Length" ); - AddTemplate( typeof( SFN_Normalize ), catVecOps + "Normalize", KeyCode.N ); - AddTemplate( typeof( SFN_NormalBlend ), catVecOps + "Normal Blend" ); - AddTemplate( typeof( SFN_Reflect ), catVecOps + "Reflect" ); - AddTemplate( typeof( SFN_Transform ), catVecOps + "Transform" ); - AddTemplate( typeof( SFN_Transpose ), catVecOps + "Transpose" ); - AddTemplate( typeof( SFN_VectorProjection ),catVecOps + "Vector Projection" ); - AddTemplate( typeof( SFN_VectorRejection ), catVecOps + "Vector Rejection" ); - - - string catUvOps = "UV Operations/"; - AddTemplate( typeof( SFN_Panner ), catUvOps + "Panner", KeyCode.P ); - AddTemplate( typeof( SFN_Parallax ), catUvOps + "Parallax" ); - AddTemplate( typeof( SFN_Rotator ), catUvOps + "Rotator" ); - AddTemplate( typeof( SFN_UVTile ), catUvOps + "UV Tile" ); - - string catGeoData = "Geometry Data/"; - AddTemplate( typeof( SFN_Bitangent ), catGeoData + "Bitangent Dir."); - AddTemplate( typeof( SFN_Depth ), catGeoData + "Depth"); - AddTemplate( typeof( SFN_FaceSign ), catGeoData + "Face Sign" ); - AddTemplate( typeof( SFN_Fresnel ), catGeoData + "Fresnel", KeyCode.F ); - AddTemplate( typeof( SFN_NormalVector ), catGeoData + "Normal Dir." ); - AddTemplate( typeof( SFN_ObjectPosition ), catGeoData + "Object Position"); - AddTemplate( typeof( SFN_ObjectScale ), catGeoData + "Object Scale" ); - AddTemplate( typeof( SFN_ScreenPos ), catGeoData + "Screen Position" ); - AddTemplate( typeof( SFN_Tangent ), catGeoData + "Tangent Dir." ); - AddTemplate( typeof( SFN_TexCoord ), catGeoData + "UV Coordinates", KeyCode.U ); - AddTemplate( typeof( SFN_VertexColor ), catGeoData + "Vertex Color", KeyCode.V ); - AddTemplate( typeof( SFN_ViewVector ), catGeoData + "View Dir." ); - AddTemplate( typeof( SFN_ViewReflectionVector ), catGeoData + "View Refl. Dir.", KeyCode.None, "View Reflection" ); - AddTemplate( typeof( SFN_FragmentPosition ), catGeoData + "World Position", KeyCode.W ); - - string catLighting = "Lighting/"; - AddTemplate( typeof( SFN_AmbientLight ), catLighting + "Ambient Light" ); - AddTemplate( typeof( SFN_HalfVector ), catLighting + "Half Direction", KeyCode.H ).UavailableInDeferredPrePass(); - AddTemplate( typeof( SFN_LightAttenuation ), catLighting + "Light Attenuation" ).UavailableInDeferredPrePass(); - AddTemplate( typeof( SFN_LightColor ), catLighting + "Light Color" ).UavailableInDeferredPrePass(); - AddTemplate( typeof( SFN_LightVector ), catLighting + "Light Direction" ).UavailableInDeferredPrePass(); - AddTemplate( typeof( SFN_LightPosition ), catLighting + "Light Position" ).UavailableInDeferredPrePass(); - - string catExtData = "External Data/"; - AddTemplate( typeof( SFN_PixelSize ), catExtData + "Pixel Size" ); - AddTemplate( typeof( SFN_ProjectionParameters ), catExtData + "Projection Parameters" ); - AddTemplate( typeof( SFN_ScreenParameters ), catExtData + "Screen Parameters" ); - AddTemplate( typeof( SFN_Time ), catExtData + "Time" ); - AddTemplate( typeof( SFN_ViewPosition ), catExtData + "View Position" ); - - string catSceneData = "Scene Data/"; - AddTemplate( typeof(SFN_DepthBlend), catSceneData + "Depth Blend" ); - AddTemplate( typeof( SFN_FogColor ), catSceneData + "Fog Color" ); - AddTemplate( typeof(SFN_SceneColor), catSceneData + "Scene Color" ); - AddTemplate( typeof(SFN_SceneDepth), catSceneData + "Scene Depth" ); - - string catMathConst = "Math Constants/"; - AddTemplate( typeof( SFN_E ), catMathConst + "e", KeyCode.None, "EulersConstant" ); - AddTemplate( typeof( SFN_Phi ), catMathConst + "Phi" ); - AddTemplate( typeof( SFN_Pi ), catMathConst + "Pi" ); - AddTemplate( typeof( SFN_Root2 ), catMathConst + "Root 2" ); - AddTemplate( typeof( SFN_Tau ), catMathConst + "Tau (2 Pi)", KeyCode.None, "Tau" ); - - string catTrig = "Trigonometry/"; - AddTemplate( typeof( SFN_ArcCos ), catTrig + "ArcCos" ); - AddTemplate( typeof( SFN_ArcSin ), catTrig + "ArcSin" ); - AddTemplate( typeof( SFN_ArcTan ), catTrig + "ArcTan" ); - AddTemplate( typeof( SFN_ArcTan2 ), catTrig + "ArcTan2" ); - AddTemplate( typeof( SFN_Cos ), catTrig + "Cos" ); - AddTemplate( typeof( SFN_Sin ), catTrig + "Sin" ); - AddTemplate( typeof( SFN_Tan ), catTrig + "Tan" ); - - string catCode = "Code/"; - AddTemplate( typeof( SFN_Code ), catCode + "Code" ); - - string catUtility = "Utility/"; - AddTemplate( typeof( SFN_Relay ), catUtility + "Relay" ); - AddTemplate( typeof( SFN_Get ), catUtility + "Get", KeyCode.G ).MarkAsNewNode(); - AddTemplate( typeof( SFN_Set ), catUtility + "Set" ).MarkAsNewNode(); - - - - SF_EditorNodeData ssDiff = TryAddTemplateDynamic( "SFN_SkyshopDiff", "Skyshop/" + "Skyshop Diffuse" ); - if(ssDiff != null) - ssDiff.MarkAsNewNode(); - - SF_EditorNodeData ssSpec = TryAddTemplateDynamic( "SFN_SkyshopSpec", "Skyshop/" + "Skyshop Specular" ); - if( ssSpec != null ) - ssSpec.MarkAsNewNode(); - - - - - } - - - public static bool NodeExistsAndIs(SF_Node node, string nodeName){ - if(NodeExists(nodeName)) - if(node.GetType() == GetNodeType(nodeName)) - return true; - return false; - } - - public static bool NodeExists(string nodeName){ - return GetNodeType(nodeName) != null; - } - - - static Assembly editorAssembly; - public static Assembly EditorAssembly { - get { - if( editorAssembly == null ) { - - Assembly[] assemblies = AppDomain.CurrentDomain.GetAssemblies(); - - foreach( Assembly assembly in assemblies ) { - if( assembly.FullName.Split( ',' )[0].Trim() == "Assembly-CSharp-Editor" ) { - editorAssembly = assembly; - return editorAssembly; - } - } - //if( SF_Debug.dynamicNodeLoad ) - // Debug.LogError("Unable to find the editor assembly" ); - } - return editorAssembly; - } - } - - - public static Type GetNodeType(string nodeName){ - - Assembly asm = EditorAssembly; - if( asm == null ) - return null; - string fullNodeName = nodeName; - if(!nodeName.StartsWith("ShaderForge.")) - fullNodeName = "ShaderForge." + nodeName; - if( SF_Debug.dynamicNodeLoad ) - Debug.Log( "Trying to dynamically load [" + fullNodeName + "]" + " in assembly [" + asm.FullName + "]" ); - - return asm.GetType( fullNodeName ); - } - - public SF_EditorNodeData TryAddTemplateDynamic(string type, string label, KeyCode keyCode = KeyCode.None, string searchName = null ){ - - Type dynType = GetNodeType(type); - - if(dynType != null){ - if(SF_Debug.dynamicNodeLoad) - Debug.Log( "TryAddTemplateDynamic of " + type ); - return AddTemplate( dynType, label, keyCode, searchName ); - } - if( SF_Debug.dynamicNodeLoad ) - Debug.Log( "TryAddTemplateDynamic of " + type + " was null" ); - return null; - } - - public SF_EditorNodeData AddTemplate( Type type, string label, KeyCode keyCode = KeyCode.None, string searchName = null ) { - SF_EditorNodeData item = ScriptableObject.CreateInstance().Initialize( type.FullName, label, keyCode ); - - if(!string.IsNullOrEmpty(searchName)){ - item.SearchName = searchName; - } - - this.nodeTemplates.Add( item ); - return item; - } - - - - public SF_EditorNodeData GetTemplate() { - foreach( SF_EditorNodeData sft in nodeTemplates ) { - if( sft.type == typeof(T).FullName ) - return sft; - } - return null; - } - - public SF_EditorNodeData GetTemplate( string typeName ) { - foreach( SF_EditorNodeData sft in nodeTemplates ) { - if( sft.type == typeName ) - return sft; - } - return null; - } - - - public void OnShaderModified(NodeUpdateType updType) { - //Debug.Log("OnShaderModified: " + updType.ToString() ); - if( updType == NodeUpdateType.Hard && nodeView.treeStatus.CheckCanCompile() ){ - nodeView.lastChangeTime = (float)EditorApplication.timeSinceStartup; - ShaderOutdated = UpToDateState.OutdatedHard; - } - if(updType == NodeUpdateType.Soft && ShaderOutdated == UpToDateState.UpToDate) - ShaderOutdated = UpToDateState.OutdatedSoft; - - ps.fChecker.UpdateAvailability(); - ps.UpdateAutoSettings(); - } - - public void ResetRunningOutdatedTimer(){ - if(ShaderOutdated == UpToDateState.UpToDate) - return; - if(ShaderOutdated == UpToDateState.OutdatedSoft) // Might not want to have this later - return; - - nodeView.lastChangeTime = (float)EditorApplication.timeSinceStartup; - - } - - /* - public Vector3 GetMouseWorldPos( Vector3 playerPos ) { - - Vector3 camDir = Camera.main.transform.forward; - Ray r = Camera.main.ScreenPointToRay( Input.mousePosition ); - Plane p = new Plane( camDir * -1, playerPos ); - - float dist = 0f; - if( p.Raycast( r, out dist ) ) { - return r.GetPoint( dist ); - } - - Debug.LogError( "Mouse ray did not hit the plane" ); - return Vector3.zero; - }*/ - - public bool InitializeInstance( Shader initShader = null ) { - if(SF_Debug.evalFlow) - Debug.Log( "[SF_LOG] - SF_Editor InitializeInstance(" + initShader + ")" ); - //this.title = ; - - SF_Settings.InitializeSettings(); - this.initialized = true; - this.ps = ScriptableObject.CreateInstance().Initialize( this ); - this.shaderEvaluator = new SF_Evaluator( this ); - this.preview = new SF_PreviewWindow( this ); - this.statusBox = new SF_StatusBox( /*this*/ ); - statusBox.Initialize(this); - - InitializeNodeTemplates(); - - windowStyle = new GUIStyle( EditorStyles.textField ); - windowStyle.margin = new RectOffset( 0, 0, 0, 0 ); - windowStyle.padding = new RectOffset( 0, 0, 0, 0 ); - - titleStyle = new GUIStyle( EditorStyles.largeLabel ); - titleStyle.fontSize = 24; - - versionStyle = new GUIStyle( EditorStyles.miniBoldLabel ); - versionStyle.alignment = TextAnchor.MiddleLeft; - versionStyle.fontSize = 9; - versionStyle.normal.textColor = Color.gray; - versionStyle.padding.left = 1; - versionStyle.padding.top = 1; - versionStyle.padding.bottom = 1; - versionStyle.margin.left = 1; - versionStyle.margin.top = 3; - versionStyle.margin.bottom = 1; - - this.nodes = new List(); - - // Create main output node and add to list - this.nodeView = ScriptableObject.CreateInstance().Initialize( this ); - this.ps.catConsole.treeStatus = this.nodeView.treeStatus; - this.nodeBrowser = ScriptableObject.CreateInstance().Initialize( this ); - this.separatorLeft = ScriptableObject.CreateInstance(); - this.separatorRight = ScriptableObject.CreateInstance(); - - separatorLeft.rect = new Rect(340, 0, 0, 0); - separatorRight.rect = new Rect(Screen.width - 130f, 0, 0, 0); - - this.previousPosition = position; - - if( initShader == null ) { - // TODO: New menu etc - //CreateOutputNode(); - } else { - currentShaderAsset = initShader; - - bool loaded = SF_Parser.ParseNodeDataFromShader( this, initShader ); - if( !loaded ) { - initShader = null; - DestroyImmediate( this ); - return false; - } - - // Make preview material use this shader - //preview.material.shader = currentShaderAsset; - Material m = preview.InternalMaterial; - SF_Tools.AssignShaderToMaterialAsset( ref m, currentShaderAsset ); - } - - // Load data if it was set to initialize things - return true; // Successfully loaded - } - - - - - - public SF_Node CreateOutputNode() { - //Debug.Log ("Creating output node"); - this.mainNode = ScriptableObject.CreateInstance().Initialize( this );//new SFN_Final(); - this.nodes.Add( mainNode ); - return mainNode; - } - - public SF_Node GetNodeByID( int id ) { - for( int i = 0; i < nodes.Count; i++ ) { - if( nodes[i].id == id ) - return nodes[i]; - } - return null; - } - - - - - - public void UpdateKeyHoldEvents(bool mouseOverSomeNode) { - if( nodeTemplates == null || nodeTemplates.Count == 0 ) { - InitializeNodeTemplates(); - } - - //Debug.Log( "nodeTemplates.Count = " + nodeTemplates.Count ); - - foreach( SF_EditorNodeData nData in nodeTemplates ) { - - if( nData == null ) { - InitializeNodeTemplates(); - return; - } - SF_EditorNodeData requestedNode = nData.CheckHotkeyInput(mouseOverSomeNode); - if( requestedNode != null ) { - AddNode( requestedNode, true ); - return; - } - } - /*foreach(KeyValuePair> entry in inputInstancers){ - if(entry.Key.CheckHotkeyInput()){ - AddNode( entry.Key ); - } - }*/ - } - - public T AddNode() where T:SF_Node { - return AddNode(GetTemplate()) as T; - } - - public SF_Node AddNode(string typeName) { - //Debug.Log( "Searching for " + typeName ); - return AddNode( GetTemplate( typeName ) ); - } - - public SF_Node AddNode( SF_EditorNodeData nodeData, bool registerUndo = false ) { - - if( nodeData == null ){ - Debug.Log("Null node data passed into AddNode"); - } - - SF_Node node = nodeData.CreateInstance(); - - if( SF_Debug.dynamicNodeLoad ) { - if( node == null ) - Debug.Log( "nodeData failed to create a node of full path: " + nodeData.fullPath ); - else - Debug.Log( "Created a node of full path: " + nodeData.fullPath ); - } - - if(registerUndo){ - Undo.RecordObject(this, "add node " + node.nodeName); - } - - - nodes.Add( node ); - if(Event.current != null) - Event.current.Use(); - //Repaint(); - return node; - } - - - bool Clicked() { - return Event.current.type == EventType.MouseDown; - } - - float fps = 0; - double prevFrameTime = 1; - public double deltaTime = 0.02; - - - - - - - List coroutines = new List(); - - //double corLastTime; - // double corDeltaTime; - void UpdateCoroutines(){ - //corDeltaTime = EditorApplication.timeSinceStartup - corLastTime; - //corLastTime = EditorApplication.timeSinceStartup; - for(int i = 0; i < coroutines.Count; i++){ - IEnumerator routine = coroutines[i]; - if(!routine.MoveNext()){ - coroutines.RemoveAt(i--); - } - } - } - void StartCoroutine (IEnumerator routine){ - coroutines.Add(routine); - } - - - - - void Update() { - - - - if( closeMe ) { - base.Close(); - return; - } - - - double now = Now(); - double deltaTime = now-prevFrameTime; - fps = 1f/(float)deltaTime; - - - - if(fps > 60) - return; // Wait for target FPS - - - prevFrameTime = now; - - preview.UpdateRot(); - - - - for (int i = nodes.Count - 1; i >= 0; i--) { - if(nodes[i] == null) - nodes.Remove(nodes[i]); - else - nodes[i].Update(); - } - - - // Refresh node previews - int maxUpdatesPerFrame = 80; - int updatedNodes = 0; - - while( updatedNodes < maxUpdatesPerFrame ) { - bool anyUpdated = false; - for( int i = 0; i < nodes.Count; i++ ) { - if( nodes[i].CheckIfDirty() ) { - anyUpdated = true; - updatedNodes++; - } - } - if( !anyUpdated ) { - break; - } - } - - - - - - - if( ShaderOutdated == UpToDateState.OutdatedHard && SF_Settings.autoCompile && nodeView.GetTimeSinceChanged() >= 1f) { - shaderEvaluator.Evaluate(); - } - - - //UpdateCameraZoomValue(); - if(focusedWindow == this) - Repaint(); // Update GUI every frame if focused - - } - - - - MethodInfo isDockedMethod; - const float dockedCheckInterval = 1f; - public float dockedLastUpdate = -100f; - public bool _docked = false; - public bool Docked{ - get{ - if( EditorApplication.timeSinceStartup - dockedLastUpdate > dockedCheckInterval ) { - dockedLastUpdate = (float)EditorApplication.timeSinceStartup; - if( isDockedMethod == null ) { - BindingFlags fullBinding = BindingFlags.Public | BindingFlags.NonPublic | BindingFlags.Instance | BindingFlags.Static; - isDockedMethod = typeof( EditorWindow ).GetProperty( "docked", fullBinding ).GetGetMethod( true ); - } - _docked = ( bool ) isDockedMethod.Invoke(this, null); - } - return _docked; - } - } - - public int TabOffset{ - get{ - return Docked ? 19 : 22; - } - } - - - - public double Now(){ - TimeSpan t = ( DateTime.UtcNow - startTime ); - return t.TotalSeconds; - } - - - - - void OnWindowResized( int deltaXsize, int deltaYsize ) { - if(separatorRight == null) - ForceClose(); - separatorRight.rect.x += deltaXsize; - } - - void ForceClose() { - //Debug.Log("Force close"); - closeMe = true; - GUIUtility.ExitGUI(); - } - - void AddDependenciesHierarchally(SF_Node node, DependencyTree tree){ - node.ReadDependencies(); - tree.Add(node); - foreach(SF_Node n in ((IDependable)node).Dependencies){ - AddDependenciesHierarchally(n, tree); - } - } - - public List GetDepthSortedDependencyTreeForConnectedNodes(bool reverse = false){ - DependencyTree tree = new DependencyTree(); - - AddDependenciesHierarchally(mainNode, tree); - //Debug.Log(tree.tree.Count); - tree.Sort(); - - List list = tree.tree.Select(x=>(SF_Node)x).ToList(); - if(reverse) - list.Reverse(); - return list; - } - - string fullscreenMessage = ""; - public Rect previousPosition; - public bool closeMe = false; - void OnGUI() { - - //Debug.Log("SF_Editor OnGUI()"); - - //SF_AllDependencies.DrawDependencyTree(new Rect(0, 0, Screen.width, Screen.height)); - //return; - -// if(Event.current.keyCode == KeyCode.Space && Event.current.type == EventType.keyDown){ -// Debug.Log("Beep"); -// Event.current.Use(); -// -// -// -// } - - if(SF_Parser.quickLoad) // Don't draw while loading - return; - - if(SF_Debug.performance) - GUI.Label(new Rect(500,64,128,64),"fps: "+fps.ToString()); - - if( position != previousPosition ) { - OnWindowResized( (int)(position.width - previousPosition.width), (int)(position.height - previousPosition.height) ); - previousPosition = position; - } - - Rect fullRect = new Rect( 0, 0, Screen.width, Screen.height); - //Debug.Log( fullRect ); - - if( currentShaderAsset == null ) { - DrawMainMenu(); - return; - } - - if(!string.IsNullOrEmpty(fullscreenMessage)){ - GUI.Box(fullRect,fullscreenMessage); - return; - } - - - - //UpdateCameraZoomInput(); - - - if(Event.current.rawType == EventType.ValidateCommand && Event.current.commandName == "UndoRedoPerformed"){ - Defocus(deselectNodes:false); - CheckForDirtyNodes(); // When undoing, some nodes will come back as dirty, which means they need to update their values - shaderEvaluator.ps.fChecker.UpdateAvailability(); - ResetRunningOutdatedTimer(); - } - - - if( nodes != null ) { - - //foreach( SF_Node n in nodes ) { - for( int i = 0; i < nodes.Count;i++ ) { - SF_Node n = nodes[i]; - - if( n == null ) { - // THIS MEANS YOU STARTED UNITY WITH SF OPEN - ForceClose(); - return; - } else{ - n.DrawConnections(); - } - } - - } - - if(separatorLeft == null){ - // THIS MEANS YOU STARTED UNITY WITH SF OPEN - ForceClose(); - return; - } - - - - - //EditorGUILayout.BeginHorizontal(); - //{ - //float wPreview = leftSeparator; - //float wNodeBrowser = 130; - - Rect pRect = new Rect( fullRect ); - pRect.height /= EditorGUIUtility.pixelsPerPoint; - pRect.width /= EditorGUIUtility.pixelsPerPoint; - pRect.width = separatorLeft.rect.x; - SF_GUI.FillBackground( pRect ); - DrawPreviewPanel( pRect ); - Rect previewPanelRect = pRect; - - //pRect.x += leftWidth; - //pRect.width = wSeparator; - //VerticalSeparatorDraggable(ref leftWidth, pRect ); - separatorLeft.MinX = 320; - separatorLeft.MaxX = (int)( fullRect.width / 2f - separatorLeft.rect.width ); - separatorLeft.Draw( (int)pRect.y, (int)pRect.height ); - pRect.x = separatorLeft.rect.x + separatorLeft.rect.width; - - - if(SF_Settings.showNodeSidebar) - pRect.width = separatorRight.rect.x - separatorLeft.rect.x - separatorLeft.rect.width; - else - pRect.width = Screen.width - separatorLeft.rect.x - separatorLeft.rect.width; - //GUI.Box( new Rect( 300, 0, 512, 32 ), pRect.ToString() ); - - if( SF_Debug.nodes ) { - Rect r = pRect; r.width = 256; r.height = 16; - for( int i = 0; i < nodes.Count; i++ ) { - GUI.Label( r, "Node[" + i + "] at {" + nodes[i].rect.x + ", " + nodes[i].rect.y + "}", EditorStyles.label ); // nodes[i] - r = r.MovedDown(); - } - } - - if( Event.current.rawType == EventType.KeyUp ){ - foreach(SF_EditorNodeData nd in nodeTemplates){ - nd.holding = false; - } - } - - - nodeView.OnLocalGUI( pRect.PadTop(TabOffset) ); // 22 when not docked, 19 if docked - //GUI.EndGroup(); - - //pRect.yMin -= 3; // if docked - - - - - - //pRect.x += pRect.width; - //pRect.width = wSeparator; - //VerticalSeparatorDraggable(ref rightWidth, pRect ); - if(SF_Settings.showNodeSidebar){ - separatorRight.MinX = (int)(fullRect.width / EditorGUIUtility.pixelsPerPoint) - 150; - separatorRight.MaxX = (int)(fullRect.width / EditorGUIUtility.pixelsPerPoint) - 32; - separatorRight.Draw( (int)pRect.y, (int)pRect.height ); - - pRect.x += pRect.width + separatorRight.rect.width; - pRect.width = (fullRect.width / EditorGUIUtility.pixelsPerPoint) - separatorRight.rect.x - separatorRight.rect.width; - - SF_GUI.FillBackground( pRect ); - nodeBrowser.OnLocalGUI( pRect ); - } - - - - - // Last thing, right? - - ssButtonColor = Color.Lerp(ssButtonColor,ssButtonColorTarget, (float)deltaTime*ssButtonFadeSpeed); - - if(previewPanelRect.Contains(Event.current.mousePosition)){ - - ssButtonColorTarget = Color.white; - ssButtonFadeSpeed = 0.4f; - - - } else { - ssButtonColorTarget = new Color(1f,1f,1f,0f); // TODO LERP - ssButtonFadeSpeed = 1.5f; - } - Rect ssRect = new Rect(8,previewButtonHeightOffset,32,19); - GUI.color = ssButtonColor; - if(GUI.Button(ssRect, SF_GUI.Screenshot_icon)){ - GenericMenu menu = new GenericMenu(); - menu.AddItem( new GUIContent("Take screenshot of node tree"), false, ContextClickScreenshot, "ss_standard" ); - menu.AddItem( new GUIContent("Take screenshot of node tree without 3D preview"), false, ContextClickScreenshot, "ss_nopreview" ); - menu.ShowAsContext(); - - } - GUI.color = Color.white; - - //Rect ssRectIcon = new Rect(0f, 0f, SF_GUI.Screenshot_icon.width, SF_GUI.Screenshot_icon.height); - ////ssRectIcon.center = ssRect.center; - //GUI.DrawTexture(ssRectIcon, SF_GUI.Screenshot_icon); - - - if(Event.current.type == EventType.Repaint) - UpdateCoroutines(); - - - DrawTooltip(); - - } - - - public void CheckForDirtyNodes(){ - - for(int i=0;i 0){ - shaderTitle = split[split.Length-1]; - } - } - } - - - - - - for(int ix=0;ix nodeRects = new List(); - List lines = new List(); - for(int i=0;i longestDist){ - longestDist = shortest; - longestDistPt = testPt; - //pixel = Color.red; - }// else { - //pixel = Color.white * Mathf.Clamp01(shortest/(Mathf.Max(nodeWrap.width,nodeWrap.height)*0.2f)); - //} - - - - //pixel.a = 1f; - //newMaskPixels[i] = pixel; - } - //mask.SetPixels(newMaskPixels); - //mask.Apply(); - radius = longestDist; - return longestDistPt; - } - - - - - // TOOLTIP, Draw this last - public void DrawTooltip() { - /* - if( !string.IsNullOrEmpty( GUI.tooltip ) ) { - //Debug.Log( "TOOLTIP" ); - GUIStyle tooltipStyle = EditorStyles.miniButton; - GUI.Box( - new Rect( - Event.current.mousePosition.x + 32, - Event.current.mousePosition.y, - tooltipStyle.CalcSize( new GUIContent( GUI.tooltip ) ).x * 1.1f, - tooltipStyle.CalcSize( new GUIContent( GUI.tooltip ) ).y * 1.2f - ), - GUI.tooltip, tooltipStyle - ); - } - GUI.tooltip = null;*/ - } - - public void Defocus(bool deselectNodes = false) { - //Debug.Log("DEFOCUS"); -// string currentFocus = GUI.GetNameOfFocusedControl(); -// if( currentFocus != "defocus"){ - GUI.FocusControl("null"); -// } - - if( deselectNodes ) - nodeView.selection.DeselectAll(registerUndo:true); - } - - - public bool DraggingAnySeparator() { - return separatorLeft.dragging || separatorRight.dragging; - } - - - - public void FlexHorizontal(Action func){ - GUILayout.BeginHorizontal(); GUILayout.FlexibleSpace(); - func(); - GUILayout.FlexibleSpace(); GUILayout.EndHorizontal(); - } - - public void FlexHorizontal(Action func, float width){ - GUILayout.BeginHorizontal(GUILayout.Width(width)); GUILayout.Space(Screen.width/2f - 335); - func(); - GUILayout.FlexibleSpace(); GUILayout.EndHorizontal(); - } - - - public static string updateCheck = ""; - public static bool outOfDate = false; - - public static void CheckForUpdates(){ - updateCheck = "Checking for updates..."; - //Debug.Log(updateCheck); - - WebClient wc = new WebClient(); - - string latestVersion; - - try{ - latestVersion = wc.DownloadString("http://www.acegikmo.com/shaderforge/latestversion.php"); - string[] split = latestVersion.Split('.'); - int latestMajor = int.Parse(split[0]); - int latestMinor = int.Parse(split[1]); - - if(latestMajor > SF_Tools.versionNumPrimary){ - outOfDate = true; - } else if(latestMajor == SF_Tools.versionNumPrimary && latestMinor > SF_Tools.versionNumSecondary){ - outOfDate = true; - } else { - outOfDate = false; - } - - if(outOfDate){ - updateCheck = "Shader Forge is out of date!\nYou are running " + SF_Tools.version + ", the latest version is " + latestVersion; - } else { - updateCheck = "Shader Forge is up to date!"; - } - - - - - } catch ( WebException e){ - updateCheck = "Couldn't check for updates: " + e.Status; - } - - - } - - - private enum MainMenuState{Main, Credits, PresetPick} - - private MainMenuState menuState = MainMenuState.Main; - - - public void DrawMainMenu() { - - - //SF_AllDependencies.DrawDependencyTree(new Rect(0f,0f,Screen.width,Screen.height)); - //return; - - if(string.IsNullOrEmpty(updateCheck)){ - CheckForUpdates(); - } - - GUILayout.BeginVertical(); - { - GUILayout.FlexibleSpace(); - - - FlexHorizontal(()=>{ - GUILayout.Label( SF_GUI.Logo ); - if(outOfDate) - GUI.color = Color.red; - GUILayout.Label( SF_Tools.versionStage + " v" + SF_Tools.version, EditorStyles.boldLabel ); - if(outOfDate) - GUI.color = Color.white; - }); - - - if(menuState == MainMenuState.Main){ - minSize = new Vector2(500,400); - DrawPrimaryMainMenuGUI(); - } else if( menuState == MainMenuState.PresetPick ) { - minSize = new Vector2( 128*(shaderPresetNames.Length + 1), 560 ); - DrawPresetPickGUI(); - } else if(menuState == MainMenuState.Credits){ - - //Vector2 centerPrev = position.center; - - minSize = new Vector2(740,560); - - //Rect rWnd = position; - //rWnd.center = new Vector2( 800,800); - //position = rWnd; - - - DrawCreditsGUI(); - } - - - - - GUILayout.FlexibleSpace(); - } - GUILayout.EndVertical(); - - - } - - public void DrawCreditsGUI(){ - EditorGUILayout.Separator(); - FlexHorizontal(()=>{ - GUILayout.Label( "Thanks for purchasing Shader Forge <3" ); - }); - EditorGUILayout.Separator(); - EditorGUILayout.Separator(); - FlexHorizontal(()=>{ - GUILayout.Label( "Created by ", SF_Styles.CreditsLabelText); - GUILayout.Label( "Freya 'Acegikmo' Holm" + '\u00e9' + "r", EditorStyles.boldLabel); - }); - EditorGUILayout.Separator(); - EditorGUILayout.Separator(); - FlexHorizontal(()=>{ - GUILayout.Label( "Special thanks:", EditorStyles.boldLabel ); - }); - CreditsLine("All of the alpha & beta testers","For their amazing feedback during the early days!" ); - CreditsLine( "Jenny 'sranine' Nordenborg", "For creating the Shader Forge logo and for supporting me throughout the development time!" ); - CreditsLine( "Peter Cornelius", "For convincing me that I should have started creating SF in the first place" ); - CreditsLine( "Robert Briscoe", "For actively testing SF and providing excellent feedback" ); - CreditsLine( "Thomas Pasieka", "For helping out immensely in getting the word out, as well as motivating me to continue" ); - CreditsLine( "Aras Pranckevi" +'\u010D'+ "ius", "For helping out with various shader code issues"); - CreditsLine( "Renaldas 'ReJ' Zioma", "For assisting in the Unity 5 transition" ); - CreditsLine( "Tim 'Stramit' Cooper & David 'Texel' Jones", "For giving helpful tips"); - CreditsLine( "Sander 'Zerot' Homan", "For helping out stealing Unity's internal RT code"); - CreditsLine( "Carlos 'Darkcoder' Wilkes", "For helping out with various serialization issues"); - CreditsLine( "Ville 'wiliz' Mäkynen", "For helping out with the undo system"); - CreditsLine( "Daniele Giardini", "For his editor window icon script (also, check out his plugin DOTween!)"); - CreditsLine( "Beck Sebenius", "For helping out getting coroutines to run in the Editor"); - CreditsLine( "James 'Farfarer' O'Hare", "For asking all the advanced shader questions on the forums so I didn't have to"); - CreditsLine( "Tenebrous", "For helping with... Something... (I can't remember)"); - CreditsLine( "Alex Telford", "For his fragment shader tutorials"); - CreditsLine( "Shawn White", "For helping out finding how to access compiled shaders from code"); - CreditsLine( "Colin Barr"+ '\u00e9' +"-Brisebois & Stephen Hill", "For their research on normal map blending"); - CreditsLine( "Andrew Baldwin", "For his articles on pseudorandom numbers" ); - - - EditorGUILayout.Separator(); - FlexHorizontal(()=>{ - if( GUILayout.Button( "Return to menu", GUILayout.Height( 30f ), GUILayout.Width( 190f ) ) ) { - menuState = MainMenuState.Main; - } - }); - } - - public void CreditsLine(string author, string reason){ - FlexHorizontal(()=>{ - GUILayout.Label( author, EditorStyles.boldLabel ); - GUILayout.Label(" - ", SF_Styles.CreditsLabelText ); - GUILayout.Label( reason, SF_Styles.CreditsLabelText ); - },400f); - } - - public enum ShaderPresets { Unlit, LitPBR, LitBasic, Custom, Sprite, ParticleAdditive, ParticleAlphaBlended, ParticleMultiplicative, Sky, PostEffect } - public string[] shaderPresetNames = new string[] { - "Unlit", - "Lit\n(PBR)", - "Lit\n(Basic)", - "Custom Lighting", - "Sprite", - "Particle\n(Additive)", - "Particle\n(Alpha-Blended)", - "Particle\n(Multiplicative)", - "Sky", - "Post-Effect" - }; - - public string[] shaderPresetShaders = new string[] { - "Unlit", - "PBR", - "Basic", - "CustomLighting", - "Sprite", - "ParticleAdditive", - "ParticleAlphaBlended", - "ParticleMultiplicative", - "Sky", - "PostEffect" - }; - - public string GetShaderPresetPath(ShaderPresets preset) { - int i = (int)preset; - string file = "preset" + shaderPresetShaders[i] + ".shader"; - return SF_Resources.InternalResourcesPath + "Shader Presets/" + file; - } - - - public string[] shaderPresetDescriptions = new string[] { - "Unlit means that light sources will not affect this shader, it will simply have the color you give it, regardless of the scene setup.", - "Lit (PBR) is set up to match Unity's Physically Based shader, affected by lightmaps, light probes, reflection probes etc.", - "Lit (Basic) is the old-school Blinn-Phong lighting model. Direct lighting only, no lightmap or probe data.", - "Custom Lighting is set up with a simple example of how you can create your own lighting models. The initial setup is a Blinn-Phong shader.", - "Sprite is for creating 2D shaders to be used on sprites. These will have the pixel-perfect option and sort properly with other 2D sprites.", - "Particle (Additive) is generally for glow effects, lightshafts, sparks etc. Primarily used in particle systems.", - "Particle (Alpha-Blended) is generally for debris effects, dusty smoke etc. Primarily used in particle systems.", - "Particle (Multiplicative) is generally for darkening effects, black smoke, evil-looking anti-glow etc. Primarily used in particle systems.", - "Sky is for creating shaders to be used with a sky material in your scene. It will render behind everything else.", - "Post-Effect is for creating shaders meant to render full-screen rather than at a position in the world, commonly used for post-process effects" - }; - - string desc = ""; - - public void DrawPresetPickGUI() { - - GUIStyle centerLabel = new GUIStyle( EditorStyles.boldLabel ); - GUIStyle centerLabelSmall = new GUIStyle( EditorStyles.miniLabel ); - centerLabel.alignment = centerLabelSmall.alignment = TextAnchor.MiddleCenter; - - - EditorGUILayout.Separator(); - FlexHorizontal( () => { - GUILayout.BeginVertical(); - GUILayout.Label( "What kind of shader do you want to forge?", centerLabel ); - GUI.color = new Color(1f,1f,1f,0.4f); - GUILayout.Label( "This will simply affect the initial configuration of the shader. It will not \"lock-in\" any features", centerLabelSmall ); - GUI.color = Color.white; - GUILayout.EndVertical(); - } ); - EditorGUILayout.Separator(); - - - - FlexHorizontal( () => { - - GUILayoutOption[] btnLayout = new GUILayoutOption[2] { GUILayout.Width( 128 ), GUILayout.Height( 128 ) }; - - GUIStyle style = new GUIStyle( EditorStyles.boldLabel ); - style.alignment = TextAnchor.UpperCenter; - - //if( Event.current.type == EventType.mouseMove) - //desc = ""; - - //GUILayout.BeginVertical(); - for(int i=0;i { - GUILayout.Label( desc, centerLabelSmall ); - }); - - EditorGUILayout.Separator(); - EditorGUILayout.Separator(); - - FlexHorizontal( () => { - if( GUILayout.Button( "Back" ) ) { - menuState = MainMenuState.Main; - } - } ); - - - - - } - - - public Texture2D GetShaderPresetIcon(ShaderPresets preset) { - - switch( preset ) { - - case ShaderPresets.Custom: - return SF_GUI.Shader_preset_icon_custom; - case ShaderPresets.LitBasic: - return SF_GUI.Shader_preset_icon_litbasic; - case ShaderPresets.LitPBR: - return SF_GUI.Shader_preset_icon_litpbr; - case ShaderPresets.ParticleAdditive: - return SF_GUI.Shader_preset_icon_particleadditive; - case ShaderPresets.ParticleAlphaBlended: - return SF_GUI.Shader_preset_icon_particlealphablended; - case ShaderPresets.ParticleMultiplicative: - return SF_GUI.Shader_preset_icon_particlemultiplicative; - case ShaderPresets.Sky: - return SF_GUI.Shader_preset_icon_sky; - case ShaderPresets.Sprite: - return SF_GUI.Shader_preset_icon_sprite; - case ShaderPresets.Unlit: - return SF_GUI.Shader_preset_icon_unlit; - case ShaderPresets.PostEffect: - return SF_GUI.Shader_preset_icon_posteffect; - - } - - Debug.LogError("No preset icon found"); - - return null; - - - } - - - public void DrawPrimaryMainMenuGUI(){ - - - - FlexHorizontal(()=>{ - GUI.color = new Color( 0.7f, 0.7f, 0.7f ); - if( GUILayout.Button( '\u00a9' + " Freya 'Acegikmo' Holm" + '\u00e9' + "r", EditorStyles.miniLabel ) ) { - Application.OpenURL("https://twitter.com/FreyaHolmer"); - } - - SF_GUI.AssignCursorForPreviousRect( MouseCursor.Link ); - GUI.color = Color.white; - }); - - EditorGUILayout.Separator(); - - /* - FlexHorizontal(()=>{ - if( GUILayout.Button(SF_Tools.manualLabel , GUILayout.Height( 32f ), GUILayout.Width( 190f ) ) ) { - Application.OpenURL( SF_Tools.manualURL ); - } - }); - */ - - FlexHorizontal(()=>{ - - if(SF_Tools.CanRunShaderForge()){ - if( GUILayout.Button( "New Shader", GUILayout.Width( 128 ), GUILayout.Height( 64 ) ) ) { - menuState = MainMenuState.PresetPick; - } - if( GUILayout.Button( "Load Shader", GUILayout.Width( 128 ), GUILayout.Height( 64 ) ) ) { - OpenLoadDialog(); - } - } else { - GUILayout.BeginVertical(); - SF_Tools.UnityOutOfDateGUI(); - GUILayout.EndVertical(); - } - }); - - - - FlexHorizontal(()=>{ - if( GUILayout.Button( "Polycount thread" ) ) { - Application.OpenURL( "http://www.polycount.com/forum/showthread.php?t=123439" ); - } - if( GUILayout.Button( "Unity thread" ) ) { - Application.OpenURL( "http://forum.unity3d.com/threads/222049-Shader-Forge-A-visual-node-based-shader-editor" ); - } - if( GUILayout.Button( SF_Tools.documentationLabel ) ) { - Application.OpenURL( SF_Tools.documentationURL ); - } - if( GUILayout.Button( "Wiki" ) ) { - Application.OpenURL( "http://acegikmo.com/shaderforge/wiki" ); - } - if( GUILayout.Button("Credits") ){ - menuState = MainMenuState.Credits; - } - }); - - - FlexHorizontal( () => { - if( GUILayout.Button( SF_Tools.bugReportLabel, GUILayout.Height( 32f ), GUILayout.Width( 180f ) ) ) { - Application.OpenURL( SF_Tools.bugReportURL ); - } - } ); - - FlexHorizontal( () => { - if( GUILayout.Button( "Forums", GUILayout.Height( 32f ), GUILayout.Width( 120f ) ) ) { - Application.OpenURL( "http://neatcorporation.com/forums/viewforum.php?f=1" ); - } - } ); - - EditorGUILayout.Separator(); - FlexHorizontal(()=>{ - GUILayout.Label(updateCheck); - }); - if(outOfDate){ - float t = (Mathf.Sin((float)EditorApplication.timeSinceStartup*Mathf.PI*2f)*0.5f)+0.5f; - GUI.color = Color.Lerp(Color.white, new Color(0.4f,0.7f,1f),t); - FlexHorizontal(()=>{ - if(GUILayout.Button("Download latest version")){ - Application.OpenURL( "https://www.assetstore.unity3d.com/#/content/14147" ); - } - }); - t = (Mathf.Sin((float)EditorApplication.timeSinceStartup*Mathf.PI*2f-1)*0.5f)+0.5f; - GUI.color = Color.Lerp(Color.white, new Color(0.4f,0.7f,1f),t); - FlexHorizontal(()=>{ - if(GUILayout.Button("What's new?")){ - Application.OpenURL( "http://acegikmo.com/shaderforge/changelog/" ); - } - }); - GUI.color = Color.green; - } - } - - - - public bool PropertyNameTaken(SF_ShaderProperty sProp){ - foreach(SF_Node n in nodes){ - if(n == sProp.node) - continue; - if(n.IsProperty()) - if(n.property.nameDisplay == sProp.nameDisplay || n.property.nameInternal == sProp.nameInternal) - return true; - } - return false; - } - - - public void OpenLoadDialog(){ - string path = EditorUtility.OpenFilePanel( - "Load Shader", - "Assets", - "shader" - ); - - if( string.IsNullOrEmpty( path ) ) { - //Debug.LogError("No path selected"); - return; - } else { - - // Found file! Make sure it's a shader - - path = SF_Tools.PathFromAbsoluteToProject( path ); - Shader loadedShader = (Shader)AssetDatabase.LoadAssetAtPath(path, typeof(Shader)); - if( loadedShader == null ) { - Debug.LogError( "Selected shader not found" ); - return; - } - - - - bool isSFshader = SF_Parser.ContainsShaderForgeData(loadedShader); - - bool allowEdit = isSFshader; - if(!allowEdit) - allowEdit = SF_GUI.AcceptedNewShaderReplaceDialog(); - - - if( allowEdit ) { - SF_Editor.Init( loadedShader ); - } else { - //Debug.LogError( "User cancelled loading operation" ); - } - - } - - } - - - - public bool TryCreateNewShader(SF_Editor.ShaderPresets preset) { - - - - - - //Shader s = (Shader)AssetDatabase.LoadAssetAtPath( presetPath, typeof(Shader) ); - //Debug.Log( s); - - - - string savePath = EditorUtility.SaveFilePanel( - "Save new shader", - "Assets", - "NewShader", - "shader" - ); - - if( string.IsNullOrEmpty( savePath ) ) { - return false; - } - - string presetPath = GetShaderPresetPath( preset ); - StreamReader presetReader = new StreamReader( Application.dataPath + presetPath.Substring( 6 ) ); - - // So we now have the path to save it, let's save - StreamWriter sw; - if( !File.Exists( savePath ) ) { - sw = File.CreateText( savePath ); - } else { - sw = new StreamWriter(savePath); - } - - // Read from preset - string[] presetLines = presetReader.ReadToEnd().Split( '\n' ); - for( int i=0; i < presetLines.Length; i++ ) { - if( presetLines[i].StartsWith( "Shader \"Hidden/" ) ) { - - // Extract name of the file to put in the shader path - string[] split = savePath.Split( '/' ); - currentShaderPath = split[split.Length - 1].Split( '.' )[0]; - currentShaderPath = "Shader Forge/" + currentShaderPath; - - // Write to the line - presetLines[i] = "Shader \"" + currentShaderPath + "\" {"; - - break; - } - } - - // Read from the preset - for( int i=0; i < presetLines.Length; i++ ) { - sw.WriteLine( presetLines[i] ); - } - - sw.Flush(); - sw.Close(); - presetReader.Close(); - AssetDatabase.Refresh(); - - // Shorten it to a relative path - string dataPath = Application.dataPath; - string assetPath = "Assets/" + savePath.Substring( dataPath.Length + 1 ); - - // Assign a reference to the file - currentShaderAsset = (Shader)AssetDatabase.LoadAssetAtPath( assetPath, typeof( Shader ) ); - - if( currentShaderAsset == null ) { - Debug.LogError( "Couldn't load shader asset" ); - Debug.Break(); - return false; - } - - - - // Make sure the preview material is using the shader - preview.InternalMaterial.shader = currentShaderAsset; - - // That's about it for the file/asset management. - //CreateOutputNode(); - SF_Editor.Init( currentShaderAsset ); - //shaderEvaluator.Evaluate(); // And we're off! - - //nodeView.CenterCamera(); - - return true; - } - - public string GetShaderFilePath() { - - if( currentShaderAsset == null ) { - Debug.LogError( "Tried to find path of null shader asset!" ); - Debug.Break(); - return null; - } - return AssetDatabase.GetAssetPath( currentShaderAsset ); - } - - public bool displaySettings = false; - - public void DrawPreviewPanel( Rect r ) { - // Left side shader preview - - //Rect logoRect = new Rect( 1, 0, SF_GUI.Logo.width, SF_GUI.Logo.height ); - - //GUI.DrawTexture( logoRect, SF_GUI.Logo ); - - Rect btnRect = new Rect(r); - btnRect.y += 4; - btnRect.x += 2; - //btnRect.xMin += logoRect.width; - - int wDiff = 8; - - btnRect.height = 17; - btnRect.width /= 4; - btnRect.width += wDiff; - - GUIStyle btnStyle = EditorStyles.miniButton; - - if(GUI.Button(btnRect,"Return to menu",btnStyle)){ - OnPressBackToMenuButton(); - } - btnRect.x += btnRect.width; - btnRect.xMax -= wDiff*2; - btnRect.width *= 0.75f; - displaySettings = GUI.Toggle(btnRect, displaySettings, "Settings",btnStyle); - - btnRect.x += btnRect.width; - btnRect.width *= 2f; - - GUI.color = SF_GUI.outdatedStateColors[(int)ShaderOutdated]; - if( GUI.Button( btnRect, "Compile shader", btnStyle ) ) { - if(nodeView.treeStatus.CheckCanCompile()) - shaderEvaluator.Evaluate(); - } - GUI.color = Color.white; - - nodeView.DrawRecompileTimer(btnRect); - btnRect.x += btnRect.width; - btnRect.width *= 0.5f; - - SF_Settings.autoCompile = GUI.Toggle( btnRect, SF_Settings.autoCompile, "Auto" ); - - btnRect.y += 4; - - - - // SETTINGS EXPANSION - if(displaySettings){ - btnRect.y += btnRect.height; - btnRect.x = r.x - 4; - btnRect.width = r.width / 4f; - btnRect.x += btnRect.width; - btnRect.width *= 2.55f; - - /*Rect[] splitRects = btnRect.SplitHorizontal( 0.5f, 1 ); // Node render mode control - GUI.Label( splitRects[1], "Node rendering" ); - EditorGUI.BeginChangeCheck(); - SF_Settings.nodeRenderMode = (NodeRenderMode)EditorGUI.EnumPopup( splitRects[0], SF_Settings.nodeRenderMode ); - if( EditorGUI.EndChangeCheck() ) { - RegenerateNodeBaseData(); - } - btnRect = btnRect.MovedDown();*/ - if( SF_Settings.nodeRenderMode == NodeRenderMode.Viewport ) { - EditorGUI.BeginDisabledGroup( true ); - GUI.Toggle( btnRect, true, "Real-time node rendering" ); - EditorGUI.EndDisabledGroup(); - } else { - EditorGUI.BeginChangeCheck(); - SF_Settings.realtimeNodePreviews = GUI.Toggle( btnRect, SF_Settings.realtimeNodePreviews, "Real-time node rendering" ); - if( EditorGUI.EndChangeCheck() ) { - RegenerateNodeBaseData(); - } - } - - btnRect = btnRect.MovedDown(); - SF_Settings.quickPickScrollWheel = GUI.Toggle( btnRect, SF_Settings.quickPickScrollWheel, "Use scroll in the quickpicker" ); - btnRect = btnRect.MovedDown(); - SF_Settings.showVariableSettings = GUI.Toggle( btnRect, SF_Settings.showVariableSettings, "Show variable name & precision" ); - btnRect = btnRect.MovedDown(); - SF_Settings.showNodeSidebar = GUI.Toggle( btnRect, SF_Settings.showNodeSidebar, "Show node browser panel" ); - btnRect = btnRect.MovedDown(); - if( SF_GUI.HoldingControl() ) { - EditorGUI.BeginDisabledGroup( true ); - GUI.Toggle( btnRect, !SF_Settings.hierarchalNodeMove, "Hierarchal Node Move" ); - EditorGUI.EndDisabledGroup(); - } else { - SF_Settings.hierarchalNodeMove = GUI.Toggle( btnRect, SF_Settings.hierarchalNodeMove, "Hierarchal Node Move" ); - } - - btnRect.y += 4; - } - - - - - //GUI.Box( new Rect(203,10,128,19), SF_Tools.versionStage+" "+SF_Tools.version, versionStyle ); - previewButtonHeightOffset = (int)btnRect.yMax + 24; - int previewOffset = preview.OnGUI( (int)btnRect.yMax, (int)r.width ); - int statusBoxOffset = statusBox.OnGUI( previewOffset, (int)r.width ); - - - ps.OnLocalGUI(statusBoxOffset, (int)r.width ); - if( SF_Debug.nodes ) { - GUILayout.Label( "Node count: " + nodes.Count ); - } - - } - - void RegenerateNodeBaseData() { - for( int i = 0; i < nodes.Count; i++ ) { - nodes[i].GenerateBaseData(); - } - } - - int previewButtonHeightOffset; - - public void OnPressBackToMenuButton(){ - shaderEvaluator.SaveShaderAsset(); - Close(); - Init(); - } - - - public void OnPressSettingsButton(){ - - } - - - - - - - - public void OnShaderEvaluated() { - // statusBox.UpdateInstructionCount( preview.InternalMaterial.shader ); - } - - - - public void CheckForBrokenConnections() { - foreach( SF_Node node in nodes ) - node.CheckForBrokenConnections(); - } - - } +using UnityEngine; +using UnityEditor; +using System; +using System.Collections.Generic; +using System.IO; +using System.Linq; +using System.Xml; +using System.Reflection; +using System.Net; +using System.Collections; + + + + +namespace ShaderForge { + + + public delegate T Func(); + + public enum UpToDateState{UpToDate, OutdatedSoft, OutdatedHard}; + + [Serializable] + public class SF_Editor : EditorWindow { + [SerializeField] + public SF_Evaluator shaderEvaluator; + [SerializeField] + public SF_PreviewWindow preview; + [SerializeField] + public SF_EditorNodeView nodeView; + [SerializeField] + public SF_EditorNodeBrowser nodeBrowser; + [SerializeField] + public SF_PassSettings ps; // TODO: Move + + [System.NonSerialized] + public static SF_Editor instance; + [SerializeField] + public SFN_Final mainNode; + [SerializeField] + public SF_StatusBox statusBox; + + [SerializeField] + public List nodes; + + [SerializeField] + DateTime startTime = DateTime.UtcNow; + + [SerializeField] + GUIStyle windowStyle; + [SerializeField] + GUIStyle titleStyle; + [SerializeField] + GUIStyle versionStyle; + [SerializeField] + GUIStyle nodeScrollbarStyle; + + [SerializeField] + public SF_DraggableSeparator separatorLeft; + + [SerializeField] + public SF_DraggableSeparator separatorRight; + + public Vector2 mousePosition = Vector2.zero; + + [SerializeField] + public Shader currentShaderAsset; + [SerializeField] + public string currentShaderPath; + + [SerializeField] + public List nodeTemplates; + + [SerializeField] + private UpToDateState shaderOutdated = UpToDateState.UpToDate; + public UpToDateState ShaderOutdated{ + get{ + return shaderOutdated; + } + set{ + if(shaderOutdated != value){ + //Debug.Log("Changed outdated state to " + value); + shaderOutdated = value; + } + } + } + + [NonSerialized] + public bool initialized = false; + + + + + public SF_Editor() { + if(SF_Debug.window) + Debug.Log( "[SF_LOG] - SF_Editor CONSTRUCTOR SF_Editor()" ); + SF_Editor.instance = this; + } + + [MenuItem( "Window/Shader Forge" )] + static void InitEmpty() { + if( SF_Editor.instance == null ) + Init( null ); + else { + EditorWindow.GetWindow( typeof( SF_Editor ) ); // Focus + } + } + + void OnEnable() { + SF_Settings.LoadAllFromDisk(); + titleContent = new GUIContent( "Shader Forge", (Texture)SF_GUI.Icon ); + if( this.preview != null ) + preview.OnEnable(); + } + + void OnDisable(){ + + if(shaderOutdated != UpToDateState.UpToDate){ + + fullscreenMessage = "Saving..."; + Repaint(); + shaderEvaluator.Evaluate(); + } + + if( this.preview != null ) + preview.OnDisable(); + + SF_Settings.SaveAllToDisk(); + + } + + + void OnDestroy(){ + DestroyImmediate( preview.internalMaterial ); + } + + public static bool Init( Shader initShader = null ) { + + // To make sure you get periods as decimal separators + System.Threading.Thread.CurrentThread.CurrentCulture = System.Globalization.CultureInfo.CreateSpecificCulture("en-US"); + + if(SF_Debug.evalFlow || SF_Debug.dynamicNodeLoad) + Debug.Log( "[SF_LOG] - SF_Editor Init(" + initShader + ")" ); + SF_Editor materialEditor = (SF_Editor)EditorWindow.GetWindow( typeof( SF_Editor ) ); + SF_Editor.instance = materialEditor; + updateCheck = ""; + bool loaded = materialEditor.InitializeInstance( initShader ); + if( !loaded ) + return false; + return true; + } + + public int GetUniqueNodeID() { + + int[] occupiedIDs = nodes.Select( x => x.id ).ToArray(); + int id = -1; + int limit = 1000000; + + do { + id = UnityEngine.Random.Range(1,9999); + limit--; + } while( occupiedIDs.Contains( id ) && limit > 0 ); + + if( limit <= 0 ) + Debug.LogError("Ran out of attempts to find a unique node ID"); + + return id; + } + + + + + + public void InitializeNodeTemplates() { + nodeTemplates = new List(); + + + // AddTemplate( typeof( SFN_CommentBox ), "Comment Box" ); + + string catArithmetic = "Arithmetic/"; + AddTemplate( typeof( SFN_Abs ), catArithmetic + "Abs" ); + AddTemplate( typeof( SFN_Add ), catArithmetic + "Add", KeyCode.A ); + AddTemplate( typeof( SFN_Blend ), catArithmetic + "Blend", KeyCode.B ); + AddTemplate( typeof( SFN_Ceil ), catArithmetic + "Ceil" ); + AddTemplate( typeof( SFN_Clamp ), catArithmetic + "Clamp" ); + AddTemplate( typeof( SFN_Clamp01 ), catArithmetic + "Clamp 0-1" ); + AddTemplate( typeof( SFN_ConstantClamp ), catArithmetic + "Clamp (Simple)",KeyCode.None, "Clamp Simple" ); + AddTemplate( typeof( SFN_Divide ), catArithmetic + "Divide", KeyCode.D ); + AddTemplate( typeof( SFN_Exp ), catArithmetic + "Exp" ); + AddTemplate( typeof( SFN_Floor ), catArithmetic + "Floor" ); + AddTemplate( typeof( SFN_Fmod ), catArithmetic + "Fmod" ); + AddTemplate( typeof( SFN_Frac ), catArithmetic + "Frac" ); + AddTemplate( typeof( SFN_HsvToRgb ), catArithmetic + "HSV to RGB" ); + AddTemplate( typeof( SFN_Hue ), catArithmetic + "Hue" ); + AddTemplate( typeof( SFN_If ), catArithmetic + "If", KeyCode.I ); + AddTemplate( typeof( SFN_InverseLerp ), catArithmetic + "Inverse Lerp" ); + AddTemplate( typeof( SFN_Lerp ), catArithmetic + "Lerp", KeyCode.L ); + AddTemplate( typeof( SFN_ConstantLerp ), catArithmetic + "Lerp (Simple)", KeyCode.None, "Lerp Simple" ); + AddTemplate( typeof( SFN_Log ), catArithmetic + "Log" ); + AddTemplate( typeof( SFN_Max ), catArithmetic + "Max" ); + AddTemplate( typeof( SFN_Min ), catArithmetic + "Min" ); + AddTemplate( typeof( SFN_Multiply ), catArithmetic + "Multiply", KeyCode.M ); + AddTemplate( typeof( SFN_MultiplyMatrix ), catArithmetic + "Multiply Matrix" ); + AddTemplate( typeof( SFN_Negate ), catArithmetic + "Negate" ); + AddTemplate( typeof( SFN_Noise ), catArithmetic + "Noise" ); + AddTemplate( typeof( SFN_OneMinus ), catArithmetic + "One Minus", KeyCode.O ); + AddTemplate( typeof( SFN_Posterize ), catArithmetic + "Posterize" ); + AddTemplate( typeof( SFN_Power ), catArithmetic + "Power", KeyCode.E ); + AddTemplate( typeof( SFN_Reciprocal ), catArithmetic + "Reciprocal" ); + AddTemplate( typeof( SFN_RemapRangeAdvanced),catArithmetic+ "Remap" ); + AddTemplate( typeof( SFN_RemapRange ), catArithmetic + "Remap (Simple)", KeyCode.R, "Remap Simple" ); + AddTemplate( typeof( SFN_RgbToHsv ), catArithmetic + "RGB to HSV" ); + AddTemplate( typeof( SFN_Round ), catArithmetic + "Round" ); + AddTemplate( typeof( SFN_Sign ), catArithmetic + "Sign" ); + AddTemplate( typeof( SFN_Smoothstep ), catArithmetic + "Smoothstep" ).MarkAsNewNode(); + AddTemplate( typeof( SFN_Sqrt ), catArithmetic + "Sqrt" ); + AddTemplate( typeof( SFN_Step ), catArithmetic + "Step (A <= B)", KeyCode.None, "Step" ); + AddTemplate( typeof( SFN_Subtract ), catArithmetic + "Subtract", KeyCode.S ); + AddTemplate( typeof( SFN_Trunc ), catArithmetic + "Trunc" ); + + string catConstVecs = "Constant Vectors/"; + AddTemplate( typeof( SFN_Vector1 ), catConstVecs + "Value", KeyCode.Alpha1 ); + AddTemplate( typeof( SFN_Vector2 ), catConstVecs + "Vector 2", KeyCode.Alpha2 ); + AddTemplate( typeof( SFN_Vector3 ), catConstVecs + "Vector 3", KeyCode.Alpha3 ); + AddTemplate( typeof( SFN_Vector4 ), catConstVecs + "Vector 4", KeyCode.Alpha4 ); + AddTemplate( typeof( SFN_Matrix4x4 ), catConstVecs + "Matrix 4x4" ); + + string catProps = "Properties/"; + AddTemplate( typeof( SFN_Color ), catProps + "Color" ); + AddTemplate( typeof( SFN_Cubemap ), catProps + "Cubemap" ); + AddTemplate( typeof( SFN_Matrix4x4Property ), catProps + "Matrix 4x4" ); + AddTemplate( typeof( SFN_Slider ), catProps + "Slider" ); + AddTemplate( typeof( SFN_SwitchProperty ), catProps + "Switch" ); + AddTemplate( typeof( SFN_Tex2d ), catProps + "Texture 2D", KeyCode.T ); + AddTemplate( typeof( SFN_Tex2dAsset ), catProps + "Texture Asset" ); + AddTemplate( typeof( SFN_ToggleProperty ), catProps + "Toggle" ); + AddTemplate( typeof( SFN_ValueProperty ), catProps + "Value" ); + AddTemplate( typeof( SFN_Vector4Property ), catProps + "Vector 4" ); + + //string catBranching = "Branching/"; + //AddTemplate( typeof( SFN_StaticBranch ), catBranching + "Static Branch" ); + + string catVecOps = "Vector Operations/"; + AddTemplate( typeof( SFN_Append ), catVecOps + "Append", KeyCode.Q ); + AddTemplate( typeof( SFN_ChannelBlend ), catVecOps + "Channel Blend"); + AddTemplate( typeof( SFN_ComponentMask ), catVecOps + "Component Mask", KeyCode.C ); + AddTemplate( typeof( SFN_Cross ), catVecOps + "Cross Product" ); + AddTemplate( typeof( SFN_Desaturate ), catVecOps + "Desaturate" ); + AddTemplate( typeof( SFN_DDX ), catVecOps + "DDX" ); + AddTemplate( typeof( SFN_DDXY ), catVecOps + "DDXY" ).MarkAsNewNode(); + AddTemplate( typeof( SFN_DDY ), catVecOps + "DDY" ); + AddTemplate( typeof( SFN_Distance ), catVecOps + "Distance" ); + AddTemplate( typeof( SFN_Dot ), catVecOps + "Dot Product" ); + AddTemplate( typeof( SFN_Length ), catVecOps + "Length" ); + AddTemplate( typeof( SFN_Normalize ), catVecOps + "Normalize", KeyCode.N ); + AddTemplate( typeof( SFN_NormalBlend ), catVecOps + "Normal Blend" ); + AddTemplate( typeof( SFN_Reflect ), catVecOps + "Reflect" ); + AddTemplate( typeof( SFN_Transform ), catVecOps + "Transform" ); + AddTemplate( typeof( SFN_Transpose ), catVecOps + "Transpose" ); + AddTemplate( typeof( SFN_VectorProjection ),catVecOps + "Vector Projection" ); + AddTemplate( typeof( SFN_VectorRejection ), catVecOps + "Vector Rejection" ); + + + string catUvOps = "UV Operations/"; + AddTemplate( typeof( SFN_Panner ), catUvOps + "Panner", KeyCode.P ); + AddTemplate( typeof( SFN_Parallax ), catUvOps + "Parallax" ); + AddTemplate( typeof( SFN_Rotator ), catUvOps + "Rotator" ); + AddTemplate( typeof( SFN_UVTile ), catUvOps + "UV Tile" ); + + string catGeoData = "Geometry Data/"; + AddTemplate( typeof( SFN_Bitangent ), catGeoData + "Bitangent Dir."); + AddTemplate( typeof( SFN_Depth ), catGeoData + "Depth"); + AddTemplate( typeof( SFN_FaceSign ), catGeoData + "Face Sign" ); + AddTemplate( typeof( SFN_Fresnel ), catGeoData + "Fresnel", KeyCode.F ); + AddTemplate( typeof( SFN_NormalVector ), catGeoData + "Normal Dir." ); + AddTemplate( typeof( SFN_ObjectPosition ), catGeoData + "Object Position"); + AddTemplate( typeof( SFN_ObjectScale ), catGeoData + "Object Scale" ); + AddTemplate( typeof( SFN_ScreenPos ), catGeoData + "Screen Position" ); + AddTemplate( typeof( SFN_Tangent ), catGeoData + "Tangent Dir." ); + AddTemplate( typeof( SFN_TexCoord ), catGeoData + "UV Coordinates", KeyCode.U ); + AddTemplate( typeof( SFN_VertexColor ), catGeoData + "Vertex Color", KeyCode.V ); + AddTemplate( typeof( SFN_ViewVector ), catGeoData + "View Dir." ); + AddTemplate( typeof( SFN_ViewReflectionVector ), catGeoData + "View Refl. Dir.", KeyCode.None, "View Reflection" ); + AddTemplate( typeof( SFN_FragmentPosition ), catGeoData + "World Position", KeyCode.W ); + + string catLighting = "Lighting/"; + AddTemplate( typeof( SFN_AmbientLight ), catLighting + "Ambient Light" ); + AddTemplate( typeof( SFN_HalfVector ), catLighting + "Half Direction", KeyCode.H ).UavailableInDeferredPrePass(); + AddTemplate( typeof( SFN_LightAttenuation ), catLighting + "Light Attenuation" ).UavailableInDeferredPrePass(); + AddTemplate( typeof( SFN_LightColor ), catLighting + "Light Color" ).UavailableInDeferredPrePass(); + AddTemplate( typeof( SFN_LightVector ), catLighting + "Light Direction" ).UavailableInDeferredPrePass(); + AddTemplate( typeof( SFN_LightPosition ), catLighting + "Light Position" ).UavailableInDeferredPrePass(); + + string catExtData = "External Data/"; + AddTemplate( typeof( SFN_PixelSize ), catExtData + "Pixel Size" ); + AddTemplate( typeof( SFN_ProjectionParameters ), catExtData + "Projection Parameters" ); + AddTemplate( typeof( SFN_ScreenParameters ), catExtData + "Screen Parameters" ); + AddTemplate( typeof( SFN_Time ), catExtData + "Time" ); + AddTemplate( typeof( SFN_ViewPosition ), catExtData + "View Position" ); + + string catSceneData = "Scene Data/"; + AddTemplate( typeof(SFN_DepthBlend), catSceneData + "Depth Blend" ); + AddTemplate( typeof( SFN_FogColor ), catSceneData + "Fog Color" ); + AddTemplate( typeof(SFN_SceneColor), catSceneData + "Scene Color" ); + AddTemplate( typeof(SFN_SceneDepth), catSceneData + "Scene Depth" ); + + string catMathConst = "Math Constants/"; + AddTemplate( typeof( SFN_E ), catMathConst + "e", KeyCode.None, "EulersConstant" ); + AddTemplate( typeof( SFN_Phi ), catMathConst + "Phi" ); + AddTemplate( typeof( SFN_Pi ), catMathConst + "Pi" ); + AddTemplate( typeof( SFN_Root2 ), catMathConst + "Root 2" ); + AddTemplate( typeof( SFN_Tau ), catMathConst + "Tau (2 Pi)", KeyCode.None, "Tau" ); + + string catTrig = "Trigonometry/"; + AddTemplate( typeof( SFN_ArcCos ), catTrig + "ArcCos" ); + AddTemplate( typeof( SFN_ArcSin ), catTrig + "ArcSin" ); + AddTemplate( typeof( SFN_ArcTan ), catTrig + "ArcTan" ); + AddTemplate( typeof( SFN_ArcTan2 ), catTrig + "ArcTan2" ); + AddTemplate( typeof( SFN_Cos ), catTrig + "Cos" ); + AddTemplate( typeof( SFN_Sin ), catTrig + "Sin" ); + AddTemplate( typeof( SFN_Tan ), catTrig + "Tan" ); + + string catCode = "Code/"; + AddTemplate( typeof( SFN_Code ), catCode + "Code" ); + + string catUtility = "Utility/"; + AddTemplate( typeof( SFN_Relay ), catUtility + "Relay" ); + AddTemplate( typeof( SFN_Get ), catUtility + "Get", KeyCode.G ).MarkAsNewNode(); + AddTemplate( typeof( SFN_Set ), catUtility + "Set" ).MarkAsNewNode(); + + + + SF_EditorNodeData ssDiff = TryAddTemplateDynamic( "SFN_SkyshopDiff", "Skyshop/" + "Skyshop Diffuse" ); + if(ssDiff != null) + ssDiff.MarkAsNewNode(); + + SF_EditorNodeData ssSpec = TryAddTemplateDynamic( "SFN_SkyshopSpec", "Skyshop/" + "Skyshop Specular" ); + if( ssSpec != null ) + ssSpec.MarkAsNewNode(); + + + + + } + + + public static bool NodeExistsAndIs(SF_Node node, string nodeName){ + if(NodeExists(nodeName)) + if(node.GetType() == GetNodeType(nodeName)) + return true; + return false; + } + + public static bool NodeExists(string nodeName){ + return GetNodeType(nodeName) != null; + } + + + static Assembly editorAssembly; + public static Assembly EditorAssembly { + get { + if( editorAssembly == null ) { + + Assembly[] assemblies = AppDomain.CurrentDomain.GetAssemblies(); + + foreach( Assembly assembly in assemblies ) { + if( assembly.FullName.Split( ',' )[0].Trim() == "Assembly-CSharp-Editor" ) { + editorAssembly = assembly; + return editorAssembly; + } + } + //if( SF_Debug.dynamicNodeLoad ) + // Debug.LogError("Unable to find the editor assembly" ); + } + return editorAssembly; + } + } + + + public static Type GetNodeType(string nodeName){ + + Assembly asm = EditorAssembly; + if( asm == null ) + return null; + string fullNodeName = nodeName; + if(!nodeName.StartsWith("ShaderForge.")) + fullNodeName = "ShaderForge." + nodeName; + if( SF_Debug.dynamicNodeLoad ) + Debug.Log( "Trying to dynamically load [" + fullNodeName + "]" + " in assembly [" + asm.FullName + "]" ); + + return asm.GetType( fullNodeName ); + } + + public SF_EditorNodeData TryAddTemplateDynamic(string type, string label, KeyCode keyCode = KeyCode.None, string searchName = null ){ + + Type dynType = GetNodeType(type); + + if(dynType != null){ + if(SF_Debug.dynamicNodeLoad) + Debug.Log( "TryAddTemplateDynamic of " + type ); + return AddTemplate( dynType, label, keyCode, searchName ); + } + if( SF_Debug.dynamicNodeLoad ) + Debug.Log( "TryAddTemplateDynamic of " + type + " was null" ); + return null; + } + + public SF_EditorNodeData AddTemplate( Type type, string label, KeyCode keyCode = KeyCode.None, string searchName = null ) { + SF_EditorNodeData item = ScriptableObject.CreateInstance().Initialize( type.FullName, label, keyCode ); + + if(!string.IsNullOrEmpty(searchName)){ + item.SearchName = searchName; + } + + this.nodeTemplates.Add( item ); + return item; + } + + + + public SF_EditorNodeData GetTemplate() { + foreach( SF_EditorNodeData sft in nodeTemplates ) { + if( sft.type == typeof(T).FullName ) + return sft; + } + return null; + } + + public SF_EditorNodeData GetTemplate( string typeName ) { + foreach( SF_EditorNodeData sft in nodeTemplates ) { + if( sft.type == typeName ) + return sft; + } + return null; + } + + + public void OnShaderModified(NodeUpdateType updType) { + //Debug.Log("OnShaderModified: " + updType.ToString() ); + if( updType == NodeUpdateType.Hard && nodeView.treeStatus.CheckCanCompile() ){ + nodeView.lastChangeTime = (float)EditorApplication.timeSinceStartup; + ShaderOutdated = UpToDateState.OutdatedHard; + } + if(updType == NodeUpdateType.Soft && ShaderOutdated == UpToDateState.UpToDate) + ShaderOutdated = UpToDateState.OutdatedSoft; + + ps.fChecker.UpdateAvailability(); + ps.UpdateAutoSettings(); + } + + public void ResetRunningOutdatedTimer(){ + if(ShaderOutdated == UpToDateState.UpToDate) + return; + if(ShaderOutdated == UpToDateState.OutdatedSoft) // Might not want to have this later + return; + + nodeView.lastChangeTime = (float)EditorApplication.timeSinceStartup; + + } + + /* + public Vector3 GetMouseWorldPos( Vector3 playerPos ) { + + Vector3 camDir = Camera.main.transform.forward; + Ray r = Camera.main.ScreenPointToRay( Input.mousePosition ); + Plane p = new Plane( camDir * -1, playerPos ); + + float dist = 0f; + if( p.Raycast( r, out dist ) ) { + return r.GetPoint( dist ); + } + + Debug.LogError( "Mouse ray did not hit the plane" ); + return Vector3.zero; + }*/ + + public bool InitializeInstance( Shader initShader = null ) { + if(SF_Debug.evalFlow) + Debug.Log( "[SF_LOG] - SF_Editor InitializeInstance(" + initShader + ")" ); + //this.title = ; + + SF_Settings.InitializeSettings(); + this.initialized = true; + this.ps = ScriptableObject.CreateInstance().Initialize( this ); + this.shaderEvaluator = new SF_Evaluator( this ); + this.preview = new SF_PreviewWindow( this ); + this.statusBox = new SF_StatusBox( /*this*/ ); + statusBox.Initialize(this); + + InitializeNodeTemplates(); + + windowStyle = new GUIStyle( EditorStyles.textField ); + windowStyle.margin = new RectOffset( 0, 0, 0, 0 ); + windowStyle.padding = new RectOffset( 0, 0, 0, 0 ); + + titleStyle = new GUIStyle( EditorStyles.largeLabel ); + titleStyle.fontSize = 24; + + versionStyle = new GUIStyle( EditorStyles.miniBoldLabel ); + versionStyle.alignment = TextAnchor.MiddleLeft; + versionStyle.fontSize = 9; + versionStyle.normal.textColor = Color.gray; + versionStyle.padding.left = 1; + versionStyle.padding.top = 1; + versionStyle.padding.bottom = 1; + versionStyle.margin.left = 1; + versionStyle.margin.top = 3; + versionStyle.margin.bottom = 1; + + this.nodes = new List(); + + // Create main output node and add to list + this.nodeView = ScriptableObject.CreateInstance().Initialize( this ); + this.ps.catConsole.treeStatus = this.nodeView.treeStatus; + this.nodeBrowser = ScriptableObject.CreateInstance().Initialize( this ); + this.separatorLeft = ScriptableObject.CreateInstance(); + this.separatorRight = ScriptableObject.CreateInstance(); + + separatorLeft.rect = new Rect(340, 0, 0, 0); + separatorRight.rect = new Rect(Screen.width - 130f, 0, 0, 0); + + this.previousPosition = position; + + if( initShader == null ) { + // TODO: New menu etc + //CreateOutputNode(); + } else { + currentShaderAsset = initShader; + + bool loaded = SF_Parser.ParseNodeDataFromShader( this, initShader ); + if( !loaded ) { + initShader = null; + DestroyImmediate( this ); + return false; + } + + // Make preview material use this shader + //preview.material.shader = currentShaderAsset; + Material m = preview.InternalMaterial; + SF_Tools.AssignShaderToMaterialAsset( ref m, currentShaderAsset ); + } + + // Load data if it was set to initialize things + return true; // Successfully loaded + } + + + + + + public SF_Node CreateOutputNode() { + //Debug.Log ("Creating output node"); + this.mainNode = ScriptableObject.CreateInstance().Initialize( this );//new SFN_Final(); + this.nodes.Add( mainNode ); + return mainNode; + } + + public SF_Node GetNodeByID( int id ) { + for( int i = 0; i < nodes.Count; i++ ) { + if( nodes[i].id == id ) + return nodes[i]; + } + return null; + } + + + + + + public void UpdateKeyHoldEvents(bool mouseOverSomeNode) { + if( nodeTemplates == null || nodeTemplates.Count == 0 ) { + InitializeNodeTemplates(); + } + + //Debug.Log( "nodeTemplates.Count = " + nodeTemplates.Count ); + + foreach( SF_EditorNodeData nData in nodeTemplates ) { + + if( nData == null ) { + InitializeNodeTemplates(); + return; + } + SF_EditorNodeData requestedNode = nData.CheckHotkeyInput(mouseOverSomeNode); + if( requestedNode != null ) { + AddNode( requestedNode, true ); + return; + } + } + /*foreach(KeyValuePair> entry in inputInstancers){ + if(entry.Key.CheckHotkeyInput()){ + AddNode( entry.Key ); + } + }*/ + } + + public T AddNode() where T:SF_Node { + return AddNode(GetTemplate()) as T; + } + + public SF_Node AddNode(string typeName) { + //Debug.Log( "Searching for " + typeName ); + return AddNode( GetTemplate( typeName ) ); + } + + public SF_Node AddNode( SF_EditorNodeData nodeData, bool registerUndo = false ) { + + if( nodeData == null ){ + Debug.Log("Null node data passed into AddNode"); + } + + SF_Node node = nodeData.CreateInstance(); + + if( SF_Debug.dynamicNodeLoad ) { + if( node == null ) + Debug.Log( "nodeData failed to create a node of full path: " + nodeData.fullPath ); + else + Debug.Log( "Created a node of full path: " + nodeData.fullPath ); + } + + if(registerUndo){ + Undo.RecordObject(this, "add node " + node.nodeName); + } + + + nodes.Add( node ); + if(Event.current != null) + Event.current.Use(); + //Repaint(); + return node; + } + + + bool Clicked() { + return Event.current.type == EventType.MouseDown; + } + + float fps = 0; + double prevFrameTime = 1; + public double deltaTime = 0.02; + + + + + + + List coroutines = new List(); + + //double corLastTime; + // double corDeltaTime; + void UpdateCoroutines(){ + //corDeltaTime = EditorApplication.timeSinceStartup - corLastTime; + //corLastTime = EditorApplication.timeSinceStartup; + for(int i = 0; i < coroutines.Count; i++){ + IEnumerator routine = coroutines[i]; + if(!routine.MoveNext()){ + coroutines.RemoveAt(i--); + } + } + } + void StartCoroutine (IEnumerator routine){ + coroutines.Add(routine); + } + + + + + void Update() { + + + + if( closeMe ) { + base.Close(); + return; + } + + + double now = Now(); + double deltaTime = now-prevFrameTime; + fps = 1f/(float)deltaTime; + + + + if(fps > 60) + return; // Wait for target FPS + + + prevFrameTime = now; + + preview.UpdateRot(); + + + + for (int i = nodes.Count - 1; i >= 0; i--) { + if(nodes[i] == null) + nodes.Remove(nodes[i]); + else + nodes[i].Update(); + } + + + // Refresh node previews + int maxUpdatesPerFrame = 80; + int updatedNodes = 0; + + while( updatedNodes < maxUpdatesPerFrame ) { + bool anyUpdated = false; + for( int i = 0; i < nodes.Count; i++ ) { + if( nodes[i].CheckIfDirty() ) { + anyUpdated = true; + updatedNodes++; + } + } + if( !anyUpdated ) { + break; + } + } + + + + + + + if( ShaderOutdated == UpToDateState.OutdatedHard && SF_Settings.autoCompile && nodeView.GetTimeSinceChanged() >= 1f) { + shaderEvaluator.Evaluate(); + } + + + //UpdateCameraZoomValue(); + if(focusedWindow == this) + Repaint(); // Update GUI every frame if focused + + } + + + + MethodInfo isDockedMethod; + const float dockedCheckInterval = 1f; + public float dockedLastUpdate = -100f; + public bool _docked = false; + public bool Docked{ + get{ + if( EditorApplication.timeSinceStartup - dockedLastUpdate > dockedCheckInterval ) { + dockedLastUpdate = (float)EditorApplication.timeSinceStartup; + if( isDockedMethod == null ) { + BindingFlags fullBinding = BindingFlags.Public | BindingFlags.NonPublic | BindingFlags.Instance | BindingFlags.Static; + isDockedMethod = typeof( EditorWindow ).GetProperty( "docked", fullBinding ).GetGetMethod( true ); + } + _docked = ( bool ) isDockedMethod.Invoke(this, null); + } + return _docked; + } + } + + public int TabOffset{ + get{ + return Docked ? 19 : 22; + } + } + + + + public double Now(){ + TimeSpan t = ( DateTime.UtcNow - startTime ); + return t.TotalSeconds; + } + + + + + void OnWindowResized( int deltaXsize, int deltaYsize ) { + if(separatorRight == null) + ForceClose(); + separatorRight.rect.x += deltaXsize; + } + + void ForceClose() { + //Debug.Log("Force close"); + closeMe = true; + GUIUtility.ExitGUI(); + } + + void AddDependenciesHierarchally(SF_Node node, DependencyTree tree){ + node.ReadDependencies(); + tree.Add(node); + foreach(SF_Node n in ((IDependable)node).Dependencies){ + AddDependenciesHierarchally(n, tree); + } + } + + public List GetDepthSortedDependencyTreeForConnectedNodes(bool reverse = false){ + DependencyTree tree = new DependencyTree(); + + AddDependenciesHierarchally(mainNode, tree); + //Debug.Log(tree.tree.Count); + tree.Sort(); + + List list = tree.tree.Select(x=>(SF_Node)x).ToList(); + if(reverse) + list.Reverse(); + return list; + } + + string fullscreenMessage = ""; + public Rect previousPosition; + public bool closeMe = false; + void OnGUI() { + + //Debug.Log("SF_Editor OnGUI()"); + + //SF_AllDependencies.DrawDependencyTree(new Rect(0, 0, Screen.width, Screen.height)); + //return; + +// if(Event.current.keyCode == KeyCode.Space && Event.current.type == EventType.keyDown){ +// Debug.Log("Beep"); +// Event.current.Use(); +// +// +// +// } + + if(SF_Parser.quickLoad) // Don't draw while loading + return; + + if(SF_Debug.performance) + GUI.Label(new Rect(500,64,128,64),"fps: "+fps.ToString()); + + if( position != previousPosition ) { + OnWindowResized( (int)(position.width - previousPosition.width), (int)(position.height - previousPosition.height) ); + previousPosition = position; + } + + Rect fullRect = new Rect( 0, 0, Screen.width, Screen.height); + //Debug.Log( fullRect ); + + if( currentShaderAsset == null ) { + DrawMainMenu(); + return; + } + + if(!string.IsNullOrEmpty(fullscreenMessage)){ + GUI.Box(fullRect,fullscreenMessage); + return; + } + + + + //UpdateCameraZoomInput(); + + + if(Event.current.rawType == EventType.ValidateCommand && Event.current.commandName == "UndoRedoPerformed"){ + Defocus(deselectNodes:false); + CheckForDirtyNodes(); // When undoing, some nodes will come back as dirty, which means they need to update their values + shaderEvaluator.ps.fChecker.UpdateAvailability(); + ResetRunningOutdatedTimer(); + } + + + if( nodes != null ) { + + //foreach( SF_Node n in nodes ) { + for( int i = 0; i < nodes.Count;i++ ) { + SF_Node n = nodes[i]; + + if( n == null ) { + // THIS MEANS YOU STARTED UNITY WITH SF OPEN + ForceClose(); + return; + } else{ + n.DrawConnections(); + } + } + + } + + if(separatorLeft == null){ + // THIS MEANS YOU STARTED UNITY WITH SF OPEN + ForceClose(); + return; + } + + + + + //EditorGUILayout.BeginHorizontal(); + //{ + //float wPreview = leftSeparator; + //float wNodeBrowser = 130; + + Rect pRect = new Rect( fullRect ); + pRect.height /= EditorGUIUtility.pixelsPerPoint; + pRect.width /= EditorGUIUtility.pixelsPerPoint; + pRect.width = separatorLeft.rect.x; + SF_GUI.FillBackground( pRect ); + DrawPreviewPanel( pRect ); + Rect previewPanelRect = pRect; + + //pRect.x += leftWidth; + //pRect.width = wSeparator; + //VerticalSeparatorDraggable(ref leftWidth, pRect ); + separatorLeft.MinX = 320; + separatorLeft.MaxX = (int)( fullRect.width / 2f - separatorLeft.rect.width ); + separatorLeft.Draw( (int)pRect.y, (int)pRect.height ); + pRect.x = separatorLeft.rect.x + separatorLeft.rect.width; + + + if(SF_Settings.showNodeSidebar) + pRect.width = separatorRight.rect.x - separatorLeft.rect.x - separatorLeft.rect.width; + else + pRect.width = Screen.width - separatorLeft.rect.x - separatorLeft.rect.width; + //GUI.Box( new Rect( 300, 0, 512, 32 ), pRect.ToString() ); + + if( SF_Debug.nodes ) { + Rect r = pRect; r.width = 256; r.height = 16; + for( int i = 0; i < nodes.Count; i++ ) { + GUI.Label( r, "Node[" + i + "] at {" + nodes[i].rect.x + ", " + nodes[i].rect.y + "}", EditorStyles.label ); // nodes[i] + r = r.MovedDown(); + } + } + + if( Event.current.rawType == EventType.KeyUp ){ + foreach(SF_EditorNodeData nd in nodeTemplates){ + nd.holding = false; + } + } + + + nodeView.OnLocalGUI( pRect.PadTop(TabOffset) ); // 22 when not docked, 19 if docked + //GUI.EndGroup(); + + //pRect.yMin -= 3; // if docked + + + + + + //pRect.x += pRect.width; + //pRect.width = wSeparator; + //VerticalSeparatorDraggable(ref rightWidth, pRect ); + if(SF_Settings.showNodeSidebar){ + separatorRight.MinX = (int)(fullRect.width / EditorGUIUtility.pixelsPerPoint) - 150; + separatorRight.MaxX = (int)(fullRect.width / EditorGUIUtility.pixelsPerPoint) - 32; + separatorRight.Draw( (int)pRect.y, (int)pRect.height ); + + pRect.x += pRect.width + separatorRight.rect.width; + pRect.width = (fullRect.width / EditorGUIUtility.pixelsPerPoint) - separatorRight.rect.x - separatorRight.rect.width; + + SF_GUI.FillBackground( pRect ); + nodeBrowser.OnLocalGUI( pRect ); + } + + + + + // Last thing, right? + + ssButtonColor = Color.Lerp(ssButtonColor,ssButtonColorTarget, (float)deltaTime*ssButtonFadeSpeed); + + if(previewPanelRect.Contains(Event.current.mousePosition)){ + + ssButtonColorTarget = Color.white; + ssButtonFadeSpeed = 0.4f; + + + } else { + ssButtonColorTarget = new Color(1f,1f,1f,0f); // TODO LERP + ssButtonFadeSpeed = 1.5f; + } + Rect ssRect = new Rect(8,previewButtonHeightOffset,32,19); + GUI.color = ssButtonColor; + if(GUI.Button(ssRect, SF_GUI.Screenshot_icon)){ + GenericMenu menu = new GenericMenu(); + menu.AddItem( new GUIContent("Take screenshot of node tree"), false, ContextClickScreenshot, "ss_standard" ); + menu.AddItem( new GUIContent("Take screenshot of node tree without 3D preview"), false, ContextClickScreenshot, "ss_nopreview" ); + menu.ShowAsContext(); + + } + GUI.color = Color.white; + + //Rect ssRectIcon = new Rect(0f, 0f, SF_GUI.Screenshot_icon.width, SF_GUI.Screenshot_icon.height); + ////ssRectIcon.center = ssRect.center; + //GUI.DrawTexture(ssRectIcon, SF_GUI.Screenshot_icon); + + + if(Event.current.type == EventType.Repaint) + UpdateCoroutines(); + + + DrawTooltip(); + + } + + + public void CheckForDirtyNodes(){ + + for(int i=0;i 0){ + shaderTitle = split[split.Length-1]; + } + } + } + + + + + + for(int ix=0;ix nodeRects = new List(); + List lines = new List(); + for(int i=0;i longestDist){ + longestDist = shortest; + longestDistPt = testPt; + //pixel = Color.red; + }// else { + //pixel = Color.white * Mathf.Clamp01(shortest/(Mathf.Max(nodeWrap.width,nodeWrap.height)*0.2f)); + //} + + + + //pixel.a = 1f; + //newMaskPixels[i] = pixel; + } + //mask.SetPixels(newMaskPixels); + //mask.Apply(); + radius = longestDist; + return longestDistPt; + } + + + + + // TOOLTIP, Draw this last + public void DrawTooltip() { + /* + if( !string.IsNullOrEmpty( GUI.tooltip ) ) { + //Debug.Log( "TOOLTIP" ); + GUIStyle tooltipStyle = EditorStyles.miniButton; + GUI.Box( + new Rect( + Event.current.mousePosition.x + 32, + Event.current.mousePosition.y, + tooltipStyle.CalcSize( new GUIContent( GUI.tooltip ) ).x * 1.1f, + tooltipStyle.CalcSize( new GUIContent( GUI.tooltip ) ).y * 1.2f + ), + GUI.tooltip, tooltipStyle + ); + } + GUI.tooltip = null;*/ + } + + public void Defocus(bool deselectNodes = false) { + //Debug.Log("DEFOCUS"); +// string currentFocus = GUI.GetNameOfFocusedControl(); +// if( currentFocus != "defocus"){ + GUI.FocusControl("null"); +// } + + if( deselectNodes ) + nodeView.selection.DeselectAll(registerUndo:true); + } + + + public bool DraggingAnySeparator() { + return separatorLeft.dragging || separatorRight.dragging; + } + + + + public void FlexHorizontal(Action func){ + GUILayout.BeginHorizontal(); GUILayout.FlexibleSpace(); + func(); + GUILayout.FlexibleSpace(); GUILayout.EndHorizontal(); + } + + public void FlexHorizontal(Action func, float width){ + GUILayout.BeginHorizontal(GUILayout.Width(width)); GUILayout.Space(Screen.width/2f - 335); + func(); + GUILayout.FlexibleSpace(); GUILayout.EndHorizontal(); + } + + + public static string updateCheck = ""; + public static bool outOfDate = false; + + public static void CheckForUpdates(){ + updateCheck = "Checking for updates..."; + //Debug.Log(updateCheck); + + WebClient wc = new WebClient(); + + string latestVersion; + + try{ + latestVersion = wc.DownloadString("http://www.acegikmo.com/shaderforge/latestversion.php"); + string[] split = latestVersion.Split('.'); + int latestMajor = int.Parse(split[0]); + int latestMinor = int.Parse(split[1]); + + if(latestMajor > SF_Tools.versionNumPrimary){ + outOfDate = true; + } else if(latestMajor == SF_Tools.versionNumPrimary && latestMinor > SF_Tools.versionNumSecondary){ + outOfDate = true; + } else { + outOfDate = false; + } + + if(outOfDate){ + updateCheck = "Shader Forge is out of date!\nYou are running " + SF_Tools.version + ", the latest version is " + latestVersion; + } else { + updateCheck = "Shader Forge is up to date!"; + } + + + + + } catch ( WebException e){ + updateCheck = "Couldn't check for updates: " + e.Status; + } + + + } + + + private enum MainMenuState{Main, Credits, PresetPick} + + private MainMenuState menuState = MainMenuState.Main; + + + public void DrawMainMenu() { + + + //SF_AllDependencies.DrawDependencyTree(new Rect(0f,0f,Screen.width,Screen.height)); + //return; + + if(string.IsNullOrEmpty(updateCheck)){ + CheckForUpdates(); + } + + GUILayout.BeginVertical(); + { + GUILayout.FlexibleSpace(); + + + FlexHorizontal(()=>{ + GUILayout.Label( SF_GUI.Logo ); + if(outOfDate) + GUI.color = Color.red; + GUILayout.Label( SF_Tools.versionStage + " v" + SF_Tools.version, EditorStyles.boldLabel ); + if(outOfDate) + GUI.color = Color.white; + }); + + + if(menuState == MainMenuState.Main){ + minSize = new Vector2(500,400); + DrawPrimaryMainMenuGUI(); + } else if( menuState == MainMenuState.PresetPick ) { + minSize = new Vector2( 128*(shaderPresetNames.Length + 1), 560 ); + DrawPresetPickGUI(); + } else if(menuState == MainMenuState.Credits){ + + //Vector2 centerPrev = position.center; + + minSize = new Vector2(740,560); + + //Rect rWnd = position; + //rWnd.center = new Vector2( 800,800); + //position = rWnd; + + + DrawCreditsGUI(); + } + + + + + GUILayout.FlexibleSpace(); + } + GUILayout.EndVertical(); + + + } + + public void DrawCreditsGUI(){ + EditorGUILayout.Separator(); + FlexHorizontal(()=>{ + GUILayout.Label( "Thanks for purchasing Shader Forge <3" ); + }); + EditorGUILayout.Separator(); + EditorGUILayout.Separator(); + FlexHorizontal(()=>{ + GUILayout.Label( "Created by ", SF_Styles.CreditsLabelText); + GUILayout.Label( "Freya 'Acegikmo' Holm" + '\u00e9' + "r", EditorStyles.boldLabel); + }); + EditorGUILayout.Separator(); + EditorGUILayout.Separator(); + FlexHorizontal(()=>{ + GUILayout.Label( "Special thanks:", EditorStyles.boldLabel ); + }); + CreditsLine("All of the alpha & beta testers","For their amazing feedback during the early days!" ); + CreditsLine( "Jenny 'sranine' Nordenborg", "For creating the Shader Forge logo and for supporting me throughout the development time!" ); + CreditsLine( "Peter Cornelius", "For convincing me that I should have started creating SF in the first place" ); + CreditsLine( "Robert Briscoe", "For actively testing SF and providing excellent feedback" ); + CreditsLine( "Thomas Pasieka", "For helping out immensely in getting the word out, as well as motivating me to continue" ); + CreditsLine( "Aras Pranckevi" +'\u010D'+ "ius", "For helping out with various shader code issues"); + CreditsLine( "Renaldas 'ReJ' Zioma", "For assisting in the Unity 5 transition" ); + CreditsLine( "Tim 'Stramit' Cooper & David 'Texel' Jones", "For giving helpful tips"); + CreditsLine( "Sander 'Zerot' Homan", "For helping out stealing Unity's internal RT code"); + CreditsLine( "Carlos 'Darkcoder' Wilkes", "For helping out with various serialization issues"); + CreditsLine( "Ville 'wiliz' Mäkynen", "For helping out with the undo system"); + CreditsLine( "Daniele Giardini", "For his editor window icon script (also, check out his plugin DOTween!)"); + CreditsLine( "Beck Sebenius", "For helping out getting coroutines to run in the Editor"); + CreditsLine( "James 'Farfarer' O'Hare", "For asking all the advanced shader questions on the forums so I didn't have to"); + CreditsLine( "Tenebrous", "For helping with... Something... (I can't remember)"); + CreditsLine( "Alex Telford", "For his fragment shader tutorials"); + CreditsLine( "Shawn White", "For helping out finding how to access compiled shaders from code"); + CreditsLine( "Colin Barr"+ '\u00e9' +"-Brisebois & Stephen Hill", "For their research on normal map blending"); + CreditsLine( "Andrew Baldwin", "For his articles on pseudorandom numbers" ); + + + EditorGUILayout.Separator(); + FlexHorizontal(()=>{ + if( GUILayout.Button( "Return to menu", GUILayout.Height( 30f ), GUILayout.Width( 190f ) ) ) { + menuState = MainMenuState.Main; + } + }); + } + + public void CreditsLine(string author, string reason){ + FlexHorizontal(()=>{ + GUILayout.Label( author, EditorStyles.boldLabel ); + GUILayout.Label(" - ", SF_Styles.CreditsLabelText ); + GUILayout.Label( reason, SF_Styles.CreditsLabelText ); + },400f); + } + + public enum ShaderPresets { Unlit, LitPBR, LitBasic, Custom, Sprite, ParticleAdditive, ParticleAlphaBlended, ParticleMultiplicative, Sky, PostEffect } + public string[] shaderPresetNames = new string[] { + "Unlit", + "Lit\n(PBR)", + "Lit\n(Basic)", + "Custom Lighting", + "Sprite", + "Particle\n(Additive)", + "Particle\n(Alpha-Blended)", + "Particle\n(Multiplicative)", + "Sky", + "Post-Effect" + }; + + public string[] shaderPresetShaders = new string[] { + "Unlit", + "PBR", + "Basic", + "CustomLighting", + "Sprite", + "ParticleAdditive", + "ParticleAlphaBlended", + "ParticleMultiplicative", + "Sky", + "PostEffect" + }; + + public string GetShaderPresetPath(ShaderPresets preset) { + int i = (int)preset; + string file = "preset" + shaderPresetShaders[i] + ".shader"; + return SF_Resources.InternalResourcesPath + "ShaderPresets/" + file; + } + + + public string[] shaderPresetDescriptions = new string[] { + "Unlit means that light sources will not affect this shader, it will simply have the color you give it, regardless of the scene setup.", + "Lit (PBR) is set up to match Unity's Physically Based shader, affected by lightmaps, light probes, reflection probes etc.", + "Lit (Basic) is the old-school Blinn-Phong lighting model. Direct lighting only, no lightmap or probe data.", + "Custom Lighting is set up with a simple example of how you can create your own lighting models. The initial setup is a Blinn-Phong shader.", + "Sprite is for creating 2D shaders to be used on sprites. These will have the pixel-perfect option and sort properly with other 2D sprites.", + "Particle (Additive) is generally for glow effects, lightshafts, sparks etc. Primarily used in particle systems.", + "Particle (Alpha-Blended) is generally for debris effects, dusty smoke etc. Primarily used in particle systems.", + "Particle (Multiplicative) is generally for darkening effects, black smoke, evil-looking anti-glow etc. Primarily used in particle systems.", + "Sky is for creating shaders to be used with a sky material in your scene. It will render behind everything else.", + "Post-Effect is for creating shaders meant to render full-screen rather than at a position in the world, commonly used for post-process effects" + }; + + string desc = ""; + + public void DrawPresetPickGUI() { + + GUIStyle centerLabel = new GUIStyle( EditorStyles.boldLabel ); + GUIStyle centerLabelSmall = new GUIStyle( EditorStyles.miniLabel ); + centerLabel.alignment = centerLabelSmall.alignment = TextAnchor.MiddleCenter; + + + EditorGUILayout.Separator(); + FlexHorizontal( () => { + GUILayout.BeginVertical(); + GUILayout.Label( "What kind of shader do you want to forge?", centerLabel ); + GUI.color = new Color(1f,1f,1f,0.4f); + GUILayout.Label( "This will simply affect the initial configuration of the shader. It will not \"lock-in\" any features", centerLabelSmall ); + GUI.color = Color.white; + GUILayout.EndVertical(); + } ); + EditorGUILayout.Separator(); + + + + FlexHorizontal( () => { + + GUILayoutOption[] btnLayout = new GUILayoutOption[2] { GUILayout.Width( 128 ), GUILayout.Height( 128 ) }; + + GUIStyle style = new GUIStyle( EditorStyles.boldLabel ); + style.alignment = TextAnchor.UpperCenter; + + //if( Event.current.type == EventType.mouseMove) + //desc = ""; + + //GUILayout.BeginVertical(); + for(int i=0;i { + GUILayout.Label( desc, centerLabelSmall ); + }); + + EditorGUILayout.Separator(); + EditorGUILayout.Separator(); + + FlexHorizontal( () => { + if( GUILayout.Button( "Back" ) ) { + menuState = MainMenuState.Main; + } + } ); + + + + + } + + + public Texture2D GetShaderPresetIcon(ShaderPresets preset) { + + switch( preset ) { + + case ShaderPresets.Custom: + return SF_GUI.Shader_preset_icon_custom; + case ShaderPresets.LitBasic: + return SF_GUI.Shader_preset_icon_litbasic; + case ShaderPresets.LitPBR: + return SF_GUI.Shader_preset_icon_litpbr; + case ShaderPresets.ParticleAdditive: + return SF_GUI.Shader_preset_icon_particleadditive; + case ShaderPresets.ParticleAlphaBlended: + return SF_GUI.Shader_preset_icon_particlealphablended; + case ShaderPresets.ParticleMultiplicative: + return SF_GUI.Shader_preset_icon_particlemultiplicative; + case ShaderPresets.Sky: + return SF_GUI.Shader_preset_icon_sky; + case ShaderPresets.Sprite: + return SF_GUI.Shader_preset_icon_sprite; + case ShaderPresets.Unlit: + return SF_GUI.Shader_preset_icon_unlit; + case ShaderPresets.PostEffect: + return SF_GUI.Shader_preset_icon_posteffect; + + } + + Debug.LogError("No preset icon found"); + + return null; + + + } + + + public void DrawPrimaryMainMenuGUI(){ + + + + FlexHorizontal(()=>{ + GUI.color = new Color( 0.7f, 0.7f, 0.7f ); + if( GUILayout.Button( '\u00a9' + " Freya 'Acegikmo' Holm" + '\u00e9' + "r", EditorStyles.miniLabel ) ) { + Application.OpenURL("https://twitter.com/FreyaHolmer"); + } + + SF_GUI.AssignCursorForPreviousRect( MouseCursor.Link ); + GUI.color = Color.white; + }); + + EditorGUILayout.Separator(); + + /* + FlexHorizontal(()=>{ + if( GUILayout.Button(SF_Tools.manualLabel , GUILayout.Height( 32f ), GUILayout.Width( 190f ) ) ) { + Application.OpenURL( SF_Tools.manualURL ); + } + }); + */ + + FlexHorizontal(()=>{ + + if(SF_Tools.CanRunShaderForge()){ + if( GUILayout.Button( "New Shader", GUILayout.Width( 128 ), GUILayout.Height( 64 ) ) ) { + menuState = MainMenuState.PresetPick; + } + if( GUILayout.Button( "Load Shader", GUILayout.Width( 128 ), GUILayout.Height( 64 ) ) ) { + OpenLoadDialog(); + } + } else { + GUILayout.BeginVertical(); + SF_Tools.UnityOutOfDateGUI(); + GUILayout.EndVertical(); + } + }); + + + + FlexHorizontal(()=>{ + if( GUILayout.Button( "Polycount thread" ) ) { + Application.OpenURL( "http://www.polycount.com/forum/showthread.php?t=123439" ); + } + if( GUILayout.Button( "Unity thread" ) ) { + Application.OpenURL( "http://forum.unity3d.com/threads/222049-Shader-Forge-A-visual-node-based-shader-editor" ); + } + if( GUILayout.Button( SF_Tools.documentationLabel ) ) { + Application.OpenURL( SF_Tools.documentationURL ); + } + if( GUILayout.Button( "Wiki" ) ) { + Application.OpenURL( "http://acegikmo.com/shaderforge/wiki" ); + } + if( GUILayout.Button("Credits") ){ + menuState = MainMenuState.Credits; + } + }); + + + FlexHorizontal( () => { + if( GUILayout.Button( SF_Tools.bugReportLabel, GUILayout.Height( 32f ), GUILayout.Width( 180f ) ) ) { + Application.OpenURL( SF_Tools.bugReportURL ); + } + } ); + + FlexHorizontal( () => { + if( GUILayout.Button( "Forums", GUILayout.Height( 32f ), GUILayout.Width( 120f ) ) ) { + Application.OpenURL( "http://neatcorporation.com/forums/viewforum.php?f=1" ); + } + } ); + + EditorGUILayout.Separator(); + FlexHorizontal(()=>{ + GUILayout.Label(updateCheck); + }); + if(outOfDate){ + float t = (Mathf.Sin((float)EditorApplication.timeSinceStartup*Mathf.PI*2f)*0.5f)+0.5f; + GUI.color = Color.Lerp(Color.white, new Color(0.4f,0.7f,1f),t); + FlexHorizontal(()=>{ + if(GUILayout.Button("Download latest version")){ + Application.OpenURL( "https://www.assetstore.unity3d.com/#/content/14147" ); + } + }); + t = (Mathf.Sin((float)EditorApplication.timeSinceStartup*Mathf.PI*2f-1)*0.5f)+0.5f; + GUI.color = Color.Lerp(Color.white, new Color(0.4f,0.7f,1f),t); + FlexHorizontal(()=>{ + if(GUILayout.Button("What's new?")){ + Application.OpenURL( "http://acegikmo.com/shaderforge/changelog/" ); + } + }); + GUI.color = Color.green; + } + } + + + + public bool PropertyNameTaken(SF_ShaderProperty sProp){ + foreach(SF_Node n in nodes){ + if(n == sProp.node) + continue; + if(n.IsProperty()) + if(n.property.nameDisplay == sProp.nameDisplay || n.property.nameInternal == sProp.nameInternal) + return true; + } + return false; + } + + + public void OpenLoadDialog(){ + string path = EditorUtility.OpenFilePanel( + "Load Shader", + "Assets", + "shader" + ); + + if( string.IsNullOrEmpty( path ) ) { + //Debug.LogError("No path selected"); + return; + } else { + + // Found file! Make sure it's a shader + + path = SF_Tools.PathFromAbsoluteToProject( path ); + Shader loadedShader = (Shader)AssetDatabase.LoadAssetAtPath(path, typeof(Shader)); + if( loadedShader == null ) { + Debug.LogError( "Selected shader not found" ); + return; + } + + + + bool isSFshader = SF_Parser.ContainsShaderForgeData(loadedShader); + + bool allowEdit = isSFshader; + if(!allowEdit) + allowEdit = SF_GUI.AcceptedNewShaderReplaceDialog(); + + + if( allowEdit ) { + SF_Editor.Init( loadedShader ); + } else { + //Debug.LogError( "User cancelled loading operation" ); + } + + } + + } + + + + public bool TryCreateNewShader(SF_Editor.ShaderPresets preset) { + + + + + + //Shader s = (Shader)AssetDatabase.LoadAssetAtPath( presetPath, typeof(Shader) ); + //Debug.Log( s); + + + + string savePath = EditorUtility.SaveFilePanel( + "Save new shader", + "Assets", + "NewShader", + "shader" + ); + + if( string.IsNullOrEmpty( savePath ) ) { + return false; + } + + string presetPath = GetShaderPresetPath( preset ); + StreamReader presetReader = new StreamReader( Application.dataPath + presetPath.Substring( 6 ) ); + + // So we now have the path to save it, let's save + StreamWriter sw; + if( !File.Exists( savePath ) ) { + sw = File.CreateText( savePath ); + } else { + sw = new StreamWriter(savePath); + } + + // Read from preset + string[] presetLines = presetReader.ReadToEnd().Split( '\n' ); + for( int i=0; i < presetLines.Length; i++ ) { + if( presetLines[i].StartsWith( "Shader \"Hidden/" ) ) { + + // Extract name of the file to put in the shader path + string[] split = savePath.Split( '/' ); + currentShaderPath = split[split.Length - 1].Split( '.' )[0]; + currentShaderPath = "Shader Forge/" + currentShaderPath; + + // Write to the line + presetLines[i] = "Shader \"" + currentShaderPath + "\" {"; + + break; + } + } + + // Read from the preset + for( int i=0; i < presetLines.Length; i++ ) { + sw.WriteLine( presetLines[i] ); + } + + sw.Flush(); + sw.Close(); + presetReader.Close(); + AssetDatabase.Refresh(); + + // Shorten it to a relative path + string dataPath = Application.dataPath; + string assetPath = "Assets/" + savePath.Substring( dataPath.Length + 1 ); + + // Assign a reference to the file + currentShaderAsset = (Shader)AssetDatabase.LoadAssetAtPath( assetPath, typeof( Shader ) ); + + if( currentShaderAsset == null ) { + Debug.LogError( "Couldn't load shader asset" ); + Debug.Break(); + return false; + } + + + + // Make sure the preview material is using the shader + preview.InternalMaterial.shader = currentShaderAsset; + + // That's about it for the file/asset management. + //CreateOutputNode(); + SF_Editor.Init( currentShaderAsset ); + //shaderEvaluator.Evaluate(); // And we're off! + + //nodeView.CenterCamera(); + + return true; + } + + public string GetShaderFilePath() { + + if( currentShaderAsset == null ) { + Debug.LogError( "Tried to find path of null shader asset!" ); + Debug.Break(); + return null; + } + return AssetDatabase.GetAssetPath( currentShaderAsset ); + } + + public bool displaySettings = false; + + public void DrawPreviewPanel( Rect r ) { + // Left side shader preview + + //Rect logoRect = new Rect( 1, 0, SF_GUI.Logo.width, SF_GUI.Logo.height ); + + //GUI.DrawTexture( logoRect, SF_GUI.Logo ); + + Rect btnRect = new Rect(r); + btnRect.y += 4; + btnRect.x += 2; + //btnRect.xMin += logoRect.width; + + int wDiff = 8; + + btnRect.height = 17; + btnRect.width /= 4; + btnRect.width += wDiff; + + GUIStyle btnStyle = EditorStyles.miniButton; + + if(GUI.Button(btnRect,"Return to menu",btnStyle)){ + OnPressBackToMenuButton(); + } + btnRect.x += btnRect.width; + btnRect.xMax -= wDiff*2; + btnRect.width *= 0.75f; + displaySettings = GUI.Toggle(btnRect, displaySettings, "Settings",btnStyle); + + btnRect.x += btnRect.width; + btnRect.width *= 2f; + + GUI.color = SF_GUI.outdatedStateColors[(int)ShaderOutdated]; + if( GUI.Button( btnRect, "Compile shader", btnStyle ) ) { + if(nodeView.treeStatus.CheckCanCompile()) + shaderEvaluator.Evaluate(); + } + GUI.color = Color.white; + + nodeView.DrawRecompileTimer(btnRect); + btnRect.x += btnRect.width; + btnRect.width *= 0.5f; + + SF_Settings.autoCompile = GUI.Toggle( btnRect, SF_Settings.autoCompile, "Auto" ); + + btnRect.y += 4; + + + + // SETTINGS EXPANSION + if(displaySettings){ + btnRect.y += btnRect.height; + btnRect.x = r.x - 4; + btnRect.width = r.width / 4f; + btnRect.x += btnRect.width; + btnRect.width *= 2.55f; + + /*Rect[] splitRects = btnRect.SplitHorizontal( 0.5f, 1 ); // Node render mode control + GUI.Label( splitRects[1], "Node rendering" ); + EditorGUI.BeginChangeCheck(); + SF_Settings.nodeRenderMode = (NodeRenderMode)EditorGUI.EnumPopup( splitRects[0], SF_Settings.nodeRenderMode ); + if( EditorGUI.EndChangeCheck() ) { + RegenerateNodeBaseData(); + } + btnRect = btnRect.MovedDown();*/ + if( SF_Settings.nodeRenderMode == NodeRenderMode.Viewport ) { + EditorGUI.BeginDisabledGroup( true ); + GUI.Toggle( btnRect, true, "Real-time node rendering" ); + EditorGUI.EndDisabledGroup(); + } else { + EditorGUI.BeginChangeCheck(); + SF_Settings.realtimeNodePreviews = GUI.Toggle( btnRect, SF_Settings.realtimeNodePreviews, "Real-time node rendering" ); + if( EditorGUI.EndChangeCheck() ) { + RegenerateNodeBaseData(); + } + } + + btnRect = btnRect.MovedDown(); + SF_Settings.quickPickScrollWheel = GUI.Toggle( btnRect, SF_Settings.quickPickScrollWheel, "Use scroll in the quickpicker" ); + btnRect = btnRect.MovedDown(); + SF_Settings.showVariableSettings = GUI.Toggle( btnRect, SF_Settings.showVariableSettings, "Show variable name & precision" ); + btnRect = btnRect.MovedDown(); + SF_Settings.showNodeSidebar = GUI.Toggle( btnRect, SF_Settings.showNodeSidebar, "Show node browser panel" ); + btnRect = btnRect.MovedDown(); + if( SF_GUI.HoldingControl() ) { + EditorGUI.BeginDisabledGroup( true ); + GUI.Toggle( btnRect, !SF_Settings.hierarchalNodeMove, "Hierarchal Node Move" ); + EditorGUI.EndDisabledGroup(); + } else { + SF_Settings.hierarchalNodeMove = GUI.Toggle( btnRect, SF_Settings.hierarchalNodeMove, "Hierarchal Node Move" ); + } + + btnRect.y += 4; + } + + + + + //GUI.Box( new Rect(203,10,128,19), SF_Tools.versionStage+" "+SF_Tools.version, versionStyle ); + previewButtonHeightOffset = (int)btnRect.yMax + 24; + int previewOffset = preview.OnGUI( (int)btnRect.yMax, (int)r.width ); + int statusBoxOffset = statusBox.OnGUI( previewOffset, (int)r.width ); + + + ps.OnLocalGUI(statusBoxOffset, (int)r.width ); + if( SF_Debug.nodes ) { + GUILayout.Label( "Node count: " + nodes.Count ); + } + + } + + void RegenerateNodeBaseData() { + for( int i = 0; i < nodes.Count; i++ ) { + nodes[i].GenerateBaseData(); + } + } + + int previewButtonHeightOffset; + + public void OnPressBackToMenuButton(){ + shaderEvaluator.SaveShaderAsset(); + Close(); + Init(); + } + + + public void OnPressSettingsButton(){ + + } + + + + + + + + public void OnShaderEvaluated() { + // statusBox.UpdateInstructionCount( preview.InternalMaterial.shader ); + } + + + + public void CheckForBrokenConnections() { + foreach( SF_Node node in nodes ) + node.CheckForBrokenConnections(); + } + + } } \ No newline at end of file diff --git a/Editor/Code/_Utility/SF_Resources.cs b/Editor/Code/_Utility/SF_Resources.cs index 82460805..93d8cfe9 100644 --- a/Editor/Code/_Utility/SF_Resources.cs +++ b/Editor/Code/_Utility/SF_Resources.cs @@ -1,77 +1,77 @@ -using UnityEngine; -using UnityEditor; -using System.Collections; - -namespace ShaderForge{ - - public static class SF_Resources { - - public const string pInterface = "Interface/"; - public const string pFonts = pInterface + "Fonts/"; - public const string pMeshes = "Meshes/"; - public const string pGpuRendering = "GPU Rendering/"; - - - public static T Load(string name) where T : UnityEngine.Object { - return (T)AssetDatabase.LoadAssetAtPath(InternalResourcesPath + name, typeof(T) ); - } - - public static UnityEngine.Object[] LoadAll(string name) { - return AssetDatabase.LoadAllAssetsAtPath(InternalResourcesPath + name ); - } - - public static Texture2D LoadInterfaceIcon(string name){ - string path = InternalResourcesPath + "Interface/" + name; - Texture2D retTex = (Texture2D)AssetDatabase.LoadAssetAtPath(path + ".png", typeof(Texture2D) ); - if(retTex == null){ - retTex = (Texture2D)AssetDatabase.LoadAssetAtPath(path + ".tga", typeof(Texture2D) ); - } - return retTex; - } - - public static Texture2D LoadNodeIcon(string name){ - return (Texture2D)AssetDatabase.LoadAssetAtPath(InternalResourcesPath + "Interface/Nodes/" + name + ".png", typeof(Texture2D) ); - } - - - private static string internalResourcesPath = ""; - public static string InternalResourcesPath{ - get{ - if(string.IsNullOrEmpty(internalResourcesPath)){ - string path; - if(SearchForInternalResourcesPath(out path)){ - internalResourcesPath = path; - } else { - Debug.LogError("Unable to locate the internal resources folder. Make sure your Shader Forge installation is intact"); - SF_Editor.instance.Close(); - } - } - return internalResourcesPath; - } - } - - - - private static bool SearchForInternalResourcesPath( out string path ){ - path = ""; - string partialPath = "/ShaderForge/Editor/InternalResources/"; - string foundPath = null; - foreach(string s in AssetDatabase.GetAllAssetPaths()){ - if(s.Contains(partialPath)){ - foundPath = s; - break; - } - } - if(foundPath == null){ - return false; - } - string[] split = foundPath.Replace(partialPath,"#").Split('#'); - path = split[0] + partialPath; - return true; - } - - - - - } -} +using UnityEngine; +using UnityEditor; +using System.Collections; + +namespace ShaderForge{ + + public static class SF_Resources { + + public const string pInterface = "Interface/"; + public const string pFonts = pInterface + "Fonts/"; + public const string pMeshes = "Meshes/"; + public const string pGpuRendering = "GPURendering/"; + + + public static T Load(string name) where T : UnityEngine.Object { + return (T)AssetDatabase.LoadAssetAtPath(InternalResourcesPath + name, typeof(T) ); + } + + public static UnityEngine.Object[] LoadAll(string name) { + return AssetDatabase.LoadAllAssetsAtPath(InternalResourcesPath + name ); + } + + public static Texture2D LoadInterfaceIcon(string name){ + string path = InternalResourcesPath + "Interface/" + name; + Texture2D retTex = (Texture2D)AssetDatabase.LoadAssetAtPath(path + ".png", typeof(Texture2D) ); + if(retTex == null){ + retTex = (Texture2D)AssetDatabase.LoadAssetAtPath(path + ".tga", typeof(Texture2D) ); + } + return retTex; + } + + public static Texture2D LoadNodeIcon(string name){ + return (Texture2D)AssetDatabase.LoadAssetAtPath(InternalResourcesPath + "Interface/Nodes/" + name + ".png", typeof(Texture2D) ); + } + + + private static string internalResourcesPath = ""; + public static string InternalResourcesPath{ + get{ + if(string.IsNullOrEmpty(internalResourcesPath)){ + string path; + if(SearchForInternalResourcesPath(out path)){ + internalResourcesPath = path; + } else { + Debug.LogError("Unable to locate the internal resources folder. Make sure your Shader Forge installation is intact"); + SF_Editor.instance.Close(); + } + } + return internalResourcesPath; + } + } + + + + private static bool SearchForInternalResourcesPath( out string path ){ + path = ""; + string partialPath = "/ShaderForge/Editor/InternalResources/"; + string foundPath = null; + foreach(string s in AssetDatabase.GetAllAssetPaths()){ + if(s.Contains(partialPath)){ + foundPath = s; + break; + } + } + if(foundPath == null){ + return false; + } + string[] split = foundPath.Replace(partialPath,"#").Split('#'); + path = split[0] + partialPath; + return true; + } + + + + + } +} diff --git a/Editor/InternalResources/GPU Rendering.meta b/Editor/InternalResources/GPURendering.meta similarity index 58% rename from Editor/InternalResources/GPU Rendering.meta rename to Editor/InternalResources/GPURendering.meta index cd6c8a72..bd333aab 100644 --- a/Editor/InternalResources/GPU Rendering.meta +++ b/Editor/InternalResources/GPURendering.meta @@ -1,9 +1,8 @@ fileFormatVersion: 2 -guid: 8f57ebe8627ffb7449b9789c60a3122e +guid: d6eb556106d5bbb40a97fad0fce190ef folderAsset: yes -timeCreated: 1444468700 -licenseType: Pro DefaultImporter: + externalObjects: {} userData: assetBundleName: assetBundleVariant: diff --git a/Editor/InternalResources/Shader Presets.meta b/Editor/InternalResources/ShaderPresets.meta similarity index 58% rename from Editor/InternalResources/Shader Presets.meta rename to Editor/InternalResources/ShaderPresets.meta index 6c92d1d1..eb91703d 100644 --- a/Editor/InternalResources/Shader Presets.meta +++ b/Editor/InternalResources/ShaderPresets.meta @@ -1,9 +1,8 @@ fileFormatVersion: 2 -guid: 7be614d992704694eac8a4557e9a7c4b +guid: aa716fd7768277c41a94b029fee1d02a folderAsset: yes -timeCreated: 1433060814 -licenseType: Pro DefaultImporter: + externalObjects: {} userData: assetBundleName: assetBundleVariant: diff --git a/README.md.meta b/README.md.meta new file mode 100644 index 00000000..4b3570db --- /dev/null +++ b/README.md.meta @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: 9ef6b369f8c40f34fa4a3da003e678b1 +TextScriptImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: From 9e8907b05ec2d4e123e89dfe46cadacdd3e3a217 Mon Sep 17 00:00:00 2001 From: Pyro_akm Date: Mon, 4 Feb 2019 13:45:45 +0100 Subject: [PATCH 19/27] Shader Forge v1.41, restored examples, adapted to Unity 2018.3.3. --- Editor/Code/SF_EditorNodeView.cs | 1 + Editor/Code/SF_PassSettings.cs | 7 + Editor/Code/_Evaluator/SF_Evaluator.cs | 10 + Editor/Code/_Nodes/SF_Node.cs | 7 + Examples.meta | 8 + Examples/CustomLighting.mat | 43 + Examples/CustomLighting.mat.meta | 4 + Examples/CustomLighting.shader | 162 ++++ Examples/CustomLighting.shader.meta | 12 + Examples/LightWrapping.mat | 83 ++ Examples/LightWrapping.mat.meta | 4 + Examples/LightWrapping.shader | 380 +++++++++ Examples/LightWrapping.shader.meta | 9 + Examples/Parallax.mat | 66 ++ Examples/Parallax.mat.meta | 4 + Examples/Parallax.shader | 415 ++++++++++ Examples/Parallax.shader.meta | 9 + Examples/PixelRotator.mat | 80 ++ Examples/PixelRotator.mat.meta | 4 + Examples/PixelRotator.shader | 189 +++++ Examples/PixelRotator.shader.meta | 9 + Examples/Refraction.mat | 43 + Examples/Refraction.mat.meta | 4 + Examples/Refraction.shader | 350 ++++++++ Examples/Refraction.shader.meta | 10 + Examples/TessellationDisplacement.mat | 103 +++ Examples/TessellationDisplacement.mat.meta | 4 + Examples/TessellationDisplacement.shader | 772 ++++++++++++++++++ Examples/TessellationDisplacement.shader.meta | 13 + Examples/Tiles.mat | 192 +++++ Examples/Tiles.mat.meta | 4 + Examples/Tiles.shader | 396 +++++++++ Examples/Tiles.shader.meta | 10 + Examples/Vegetation.mat | 85 ++ Examples/Vegetation.mat.meta | 4 + Examples/Vegetation.shader | 440 ++++++++++ Examples/Vegetation.shader.meta | 11 + Examples/VertexAnimation.mat | 97 +++ Examples/VertexAnimation.mat.meta | 4 + Examples/VertexAnimation.shader | 441 ++++++++++ Examples/VertexAnimation.shader.meta | 11 + Examples/VertexAnimation_blue.mat | 97 +++ Examples/VertexAnimation_blue.mat.meta | 4 + Examples/VertexColorRounding.mat | 21 + Examples/VertexColorRounding.mat.meta | 4 + Examples/VertexColorRounding.shader | 105 +++ Examples/VertexColorRounding.shader.meta | 9 + 47 files changed, 4740 insertions(+) create mode 100644 Examples.meta create mode 100644 Examples/CustomLighting.mat create mode 100644 Examples/CustomLighting.mat.meta create mode 100644 Examples/CustomLighting.shader create mode 100644 Examples/CustomLighting.shader.meta create mode 100644 Examples/LightWrapping.mat create mode 100644 Examples/LightWrapping.mat.meta create mode 100644 Examples/LightWrapping.shader create mode 100644 Examples/LightWrapping.shader.meta create mode 100644 Examples/Parallax.mat create mode 100644 Examples/Parallax.mat.meta create mode 100644 Examples/Parallax.shader create mode 100644 Examples/Parallax.shader.meta create mode 100644 Examples/PixelRotator.mat create mode 100644 Examples/PixelRotator.mat.meta create mode 100644 Examples/PixelRotator.shader create mode 100644 Examples/PixelRotator.shader.meta create mode 100644 Examples/Refraction.mat create mode 100644 Examples/Refraction.mat.meta create mode 100644 Examples/Refraction.shader create mode 100644 Examples/Refraction.shader.meta create mode 100644 Examples/TessellationDisplacement.mat create mode 100644 Examples/TessellationDisplacement.mat.meta create mode 100644 Examples/TessellationDisplacement.shader create mode 100644 Examples/TessellationDisplacement.shader.meta create mode 100644 Examples/Tiles.mat create mode 100644 Examples/Tiles.mat.meta create mode 100644 Examples/Tiles.shader create mode 100644 Examples/Tiles.shader.meta create mode 100644 Examples/Vegetation.mat create mode 100644 Examples/Vegetation.mat.meta create mode 100644 Examples/Vegetation.shader create mode 100644 Examples/Vegetation.shader.meta create mode 100644 Examples/VertexAnimation.mat create mode 100644 Examples/VertexAnimation.mat.meta create mode 100644 Examples/VertexAnimation.shader create mode 100644 Examples/VertexAnimation.shader.meta create mode 100644 Examples/VertexAnimation_blue.mat create mode 100644 Examples/VertexAnimation_blue.mat.meta create mode 100644 Examples/VertexColorRounding.mat create mode 100644 Examples/VertexColorRounding.mat.meta create mode 100644 Examples/VertexColorRounding.shader create mode 100644 Examples/VertexColorRounding.shader.meta diff --git a/Editor/Code/SF_EditorNodeView.cs b/Editor/Code/SF_EditorNodeView.cs index bf02179d..85ab75a4 100644 --- a/Editor/Code/SF_EditorNodeView.cs +++ b/Editor/Code/SF_EditorNodeView.cs @@ -732,6 +732,7 @@ public string GetNodeDataSerialized() { string header = ""; header += "// Shader created with " + SF_Tools.versionString + " \n"; header += "// Shader Forge (c) Freya Holmer - http://www.acegikmo.com/shaderforge/\n"; + header += "// Enhanced by Antoine Guillon / Arkham Development - http://www.arkham-development.com/\n"; header += "// Note: Manually altering this data may prevent you from opening it in Shader Forge\n"; header += "/" + "*"; // Hurgh! diff --git a/Editor/Code/SF_PassSettings.cs b/Editor/Code/SF_PassSettings.cs index acf8ef6e..a3e60f93 100644 --- a/Editor/Code/SF_PassSettings.cs +++ b/Editor/Code/SF_PassSettings.cs @@ -36,6 +36,13 @@ public void Deserialize(string s) { string[] split = s.Split(','); for( int i = 0; i < split.Length; i++ ) { string[] keyval = split[i].Split(':'); + if(keyval.Length<2) + { + string[] newsplit=new string[2]; + newsplit[0]=keyval[0]; + newsplit[1]=""; + keyval=newsplit; + } Deserialize( keyval[0], keyval[1] ); } } diff --git a/Editor/Code/_Evaluator/SF_Evaluator.cs b/Editor/Code/_Evaluator/SF_Evaluator.cs index 7448c77d..1f496250 100644 --- a/Editor/Code/_Evaluator/SF_Evaluator.cs +++ b/Editor/Code/_Evaluator/SF_Evaluator.cs @@ -562,19 +562,29 @@ void BeginCG() { switch( currentPass ) { case PassType.FwdBase: + App( "#ifndef UNITY_PASS_FORWARDBASE" ); App( "#define UNITY_PASS_FORWARDBASE" ); + App( "#endif //UNITY_PASS_FORWARDBASE" ); break; case PassType.FwdAdd: + App( "#ifndef UNITY_PASS_FORWARDADD" ); App( "#define UNITY_PASS_FORWARDADD" ); + App( "#endif //UNITY_PASS_FORWARDADD" ); break; case PassType.Deferred: + App( "#ifndef UNITY_PASS_DEFERRED" ); App( "#define UNITY_PASS_DEFERRED" ); + App( "#endif //UNITY_PASS_DEFERRED" ); break; case PassType.ShadCast: + App( "#ifndef UNITY_PASS_SHADOWCASTER" ); App( "#define UNITY_PASS_SHADOWCASTER" ); + App( "#endif //UNITY_PASS_SHADOWCASTER" ); break; case PassType.Meta: + App( "#ifndef UNITY_PASS_META 1" ); App( "#define UNITY_PASS_META 1" ); + App( "#endif UNITY_PASS_META 1" ); break; } diff --git a/Editor/Code/_Nodes/SF_Node.cs b/Editor/Code/_Nodes/SF_Node.cs index 209d3b24..4e597c6d 100644 --- a/Editor/Code/_Nodes/SF_Node.cs +++ b/Editor/Code/_Nodes/SF_Node.cs @@ -2444,6 +2444,13 @@ public static SF_Node Deserialize( string row, ref List linkList) { if(SF_Debug.deserialization) Debug.Log("Deserializing node: " + s); string[] split = s.Split( ':' ); + if(split.Length<2) + { + string[] newsplit=new string[2]; + newsplit[0]=split[0]; + newsplit[1]=""; + split=newsplit; + } string dKey = split[0]; string dValue = split[1]; diff --git a/Examples.meta b/Examples.meta new file mode 100644 index 00000000..df8e1135 --- /dev/null +++ b/Examples.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: a0d21d1c83e7c5f44b284ed192ca2f98 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Examples/CustomLighting.mat b/Examples/CustomLighting.mat new file mode 100644 index 00000000..02da3ff5 --- /dev/null +++ b/Examples/CustomLighting.mat @@ -0,0 +1,43 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!21 &2100000 +Material: + serializedVersion: 3 + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + m_Name: CustomLighting + m_Shader: {fileID: 4800000, guid: e570c2adf90d6a24b8634788025bb2bb, type: 3} + m_ShaderKeywords: [] + m_CustomRenderQueue: -1 + m_SavedProperties: + serializedVersion: 2 + m_TexEnvs: + data: + first: + name: _Normals + second: + m_Texture: {fileID: 2800000, guid: c6dfb00dbee6bc044a8a3bb22e56e064, type: 3} + m_Scale: {x: 32, y: 32} + m_Offset: {x: 0, y: 0} + data: + first: + name: _Diffuse + second: + m_Texture: {fileID: 2800000, guid: 8993b617f08498f43adcbd90697f1c5d, type: 3} + m_Scale: {x: 16, y: 16} + m_Offset: {x: 0, y: 0} + m_Floats: + data: + first: + name: _Gloss + second: .410714298 + data: + first: + name: _Bands + second: 5 + m_Colors: + data: + first: + name: _Color + second: {r: .551470578, g: .981440127, b: 1, a: 1} diff --git a/Examples/CustomLighting.mat.meta b/Examples/CustomLighting.mat.meta new file mode 100644 index 00000000..0fe464ec --- /dev/null +++ b/Examples/CustomLighting.mat.meta @@ -0,0 +1,4 @@ +fileFormatVersion: 2 +guid: cadfde2f3ef294043affa7194ae69b94 +NativeFormatImporter: + userData: diff --git a/Examples/CustomLighting.shader b/Examples/CustomLighting.shader new file mode 100644 index 00000000..600ad3cf --- /dev/null +++ b/Examples/CustomLighting.shader @@ -0,0 +1,162 @@ +// Shader created with Shader Forge v1.40 +// Shader Forge (c) Freya Holmer - http://www.acegikmo.com/shaderforge/ +// Note: Manually altering this data may prevent you from opening it in Shader Forge +/*SF_DATA;ver:1.40;sub:START;pass:START;ps:flbk:,iptp:0,cusa:False,bamd:0,cgin:,lico:1,lgpr:1,limd:0,spmd:1,trmd:0,grmd:0,uamb:True,mssp:True,bkdf:True,hqlp:False,rprd:False,enco:False,rmgx:True,imps:True,rpth:0,vtps:0,hqsc:True,nrmq:1,nrsp:0,vomd:0,spxs:False,tesm:0,olmd:1,culm:0,bsrc:0,bdst:1,dpts:2,wrdp:True,dith:0,atcv:False,rfrpo:True,rfrpn:Refraction,coma:15,ufog:False,aust:True,igpj:False,qofs:0,qpre:1,rntp:1,fgom:False,fgoc:False,fgod:False,fgor:False,fgmd:0,fgcr:0.5,fgcg:0.5,fgcb:0.5,fgca:1,fgde:0.01,fgrn:0,fgrf:300,stcl:False,atwp:False,stva:128,stmr:255,stmw:255,stcp:6,stps:0,stfa:0,stfz:0,ofsf:0,ofsu:0,f2p0:False,fnsp:False,fnfb:False,fsmp:False;n:type:ShaderForge.SFN_Final,id:0,x:34330,y:31982,varname:node_0,prsc:2|normal-83-RGB,custl-64-OUT;n:type:ShaderForge.SFN_LightAttenuation,id:37,x:33872,y:32026,varname:node_37,prsc:2;n:type:ShaderForge.SFN_Dot,id:40,x:32931,y:32250,varname:node_40,prsc:2,dt:1|A-42-OUT,B-41-OUT;n:type:ShaderForge.SFN_NormalVector,id:41,x:32722,y:32344,prsc:2,pt:True;n:type:ShaderForge.SFN_LightVector,id:42,x:32722,y:32223,varname:node_42,prsc:2;n:type:ShaderForge.SFN_Dot,id:52,x:32931,y:32423,varname:node_52,prsc:2,dt:1|A-41-OUT,B-62-OUT;n:type:ShaderForge.SFN_Add,id:55,x:33872,y:32295,varname:node_55,prsc:2|A-84-OUT,B-187-RGB;n:type:ShaderForge.SFN_Power,id:58,x:33229,y:32558,cmnt:Specular Light,varname:node_58,prsc:2|VAL-52-OUT,EXP-244-OUT;n:type:ShaderForge.SFN_HalfVector,id:62,x:32722,y:32483,varname:node_62,prsc:2;n:type:ShaderForge.SFN_LightColor,id:63,x:33872,y:32155,varname:node_63,prsc:2;n:type:ShaderForge.SFN_Multiply,id:64,x:34106,y:32166,varname:node_64,prsc:2|A-37-OUT,B-63-RGB,C-8121-OUT;n:type:ShaderForge.SFN_Color,id:80,x:33368,y:32192,ptovrint:False,ptlb:Color,ptin:_Color,varname:_Color,prsc:2,glob:False,taghide:False,taghdr:False,tagprd:False,tagnsco:False,tagnrm:False,c1:0.6544118,c2:0.8426978,c3:1,c4:1;n:type:ShaderForge.SFN_Tex2d,id:82,x:33368,y:32002,ptovrint:False,ptlb:Diffuse,ptin:_Diffuse,varname:_Diffuse,prsc:2,glob:False,taghide:False,taghdr:False,tagprd:False,tagnsco:False,tagnrm:False,tex:e77c8304f206a7043b58e3aa1ee2b730,ntxv:2,isnm:False|UVIN-272-UVOUT;n:type:ShaderForge.SFN_Tex2d,id:83,x:33368,y:31817,ptovrint:False,ptlb:Normals,ptin:_Normals,varname:_Normals,prsc:2,glob:False,taghide:False,taghdr:False,tagprd:False,tagnsco:False,tagnrm:False,tex:dff878613857997448b879796c93d426,ntxv:3,isnm:True|UVIN-272-UVOUT;n:type:ShaderForge.SFN_Multiply,id:84,x:33573,y:32160,cmnt:Diffuse Light,varname:node_84,prsc:2|A-82-RGB,B-80-RGB,C-40-OUT;n:type:ShaderForge.SFN_AmbientLight,id:187,x:33573,y:32280,varname:node_187,prsc:2;n:type:ShaderForge.SFN_Slider,id:239,x:32141,y:32578,ptovrint:False,ptlb:Gloss,ptin:_Gloss,varname:_Gloss,prsc:2,glob:False,taghide:False,taghdr:False,tagprd:False,tagnsco:False,tagnrm:False,min:0,cur:0.3742047,max:1;n:type:ShaderForge.SFN_Add,id:240,x:32722,y:32640,varname:node_240,prsc:2|A-242-OUT,B-241-OUT;n:type:ShaderForge.SFN_Vector1,id:241,x:32554,y:32728,varname:node_241,prsc:2,v1:1;n:type:ShaderForge.SFN_Multiply,id:242,x:32554,y:32578,varname:node_242,prsc:2|A-239-OUT,B-243-OUT;n:type:ShaderForge.SFN_Vector1,id:243,x:32298,y:32660,varname:node_243,prsc:2,v1:10;n:type:ShaderForge.SFN_Exp,id:244,x:32893,y:32640,varname:node_244,prsc:2,et:1|IN-240-OUT;n:type:ShaderForge.SFN_TexCoord,id:272,x:33125,y:31930,varname:node_272,prsc:2,uv:0,uaff:False;n:type:ShaderForge.SFN_Tex2d,id:3968,x:33368,y:32367,ptovrint:False,ptlb:Specular,ptin:_Specular,varname:node_3968,prsc:2,glob:False,taghide:False,taghdr:False,tagprd:False,tagnsco:False,tagnrm:False,tex:754067f16ed6147498c4f9a2722bb147,ntxv:0,isnm:False|UVIN-272-UVOUT;n:type:ShaderForge.SFN_Multiply,id:4226,x:33573,y:32490,varname:node_4226,prsc:2|A-3968-R,B-58-OUT;n:type:ShaderForge.SFN_Add,id:8121,x:33837,y:32474,varname:node_8121,prsc:2|A-55-OUT,B-4226-OUT;proporder:80-82-83-239-3968;pass:END;sub:END;*/ + +Shader "Shader Forge/Examples/Custom Lighting" { + Properties { + _Color ("Color", Color) = (0.6544118,0.8426978,1,1) + _Diffuse ("Diffuse", 2D) = "black" {} + _Normals ("Normals", 2D) = "bump" {} + _Gloss ("Gloss", Range(0, 1)) = 0.3742047 + _Specular ("Specular", 2D) = "white" {} + } + SubShader { + Tags { + "RenderType"="Opaque" + } + Pass { + Name "FORWARD" + Tags { + "LightMode"="ForwardBase" + } + + + CGPROGRAM + #pragma vertex vert + #pragma fragment frag + #define UNITY_PASS_FORWARDBASE + #include "UnityCG.cginc" + #include "AutoLight.cginc" + #include "Lighting.cginc" + #pragma multi_compile_fwdbase_fullshadows + #pragma only_renderers d3d9 d3d11 glcore gles gles3 metal d3d11_9x xboxone ps4 psp2 n3ds wiiu + #pragma target 3.0 + uniform float4 _Color; + uniform sampler2D _Diffuse; uniform float4 _Diffuse_ST; + uniform sampler2D _Normals; uniform float4 _Normals_ST; + uniform float _Gloss; + uniform sampler2D _Specular; uniform float4 _Specular_ST; + struct VertexInput { + float4 vertex : POSITION; + float3 normal : NORMAL; + float4 tangent : TANGENT; + float2 texcoord0 : TEXCOORD0; + }; + struct VertexOutput { + float4 pos : SV_POSITION; + float2 uv0 : TEXCOORD0; + float4 posWorld : TEXCOORD1; + float3 normalDir : TEXCOORD2; + float3 tangentDir : TEXCOORD3; + float3 bitangentDir : TEXCOORD4; + LIGHTING_COORDS(5,6) + }; + VertexOutput vert (VertexInput v) { + VertexOutput o = (VertexOutput)0; + o.uv0 = v.texcoord0; + o.normalDir = UnityObjectToWorldNormal(v.normal); + o.tangentDir = normalize( mul( unity_ObjectToWorld, float4( v.tangent.xyz, 0.0 ) ).xyz ); + o.bitangentDir = normalize(cross(o.normalDir, o.tangentDir) * v.tangent.w); + o.posWorld = mul(unity_ObjectToWorld, v.vertex); + float3 lightColor = _LightColor0.rgb; + o.pos = UnityObjectToClipPos( v.vertex ); + TRANSFER_VERTEX_TO_FRAGMENT(o) + return o; + } + float4 frag(VertexOutput i) : COLOR { + i.normalDir = normalize(i.normalDir); + float3x3 tangentTransform = float3x3( i.tangentDir, i.bitangentDir, i.normalDir); + float3 viewDirection = normalize(_WorldSpaceCameraPos.xyz - i.posWorld.xyz); + float3 _Normals_var = UnpackNormal(tex2D(_Normals,TRANSFORM_TEX(i.uv0, _Normals))); + float3 normalLocal = _Normals_var.rgb; + float3 normalDirection = normalize(mul( normalLocal, tangentTransform )); // Perturbed normals + float3 lightDirection = normalize(_WorldSpaceLightPos0.xyz); + float3 lightColor = _LightColor0.rgb; + float3 halfDirection = normalize(viewDirection+lightDirection); +////// Lighting: + float attenuation = LIGHT_ATTENUATION(i); + float4 _Diffuse_var = tex2D(_Diffuse,TRANSFORM_TEX(i.uv0, _Diffuse)); + float node_40 = max(0,dot(lightDirection,normalDirection)); + float4 _Specular_var = tex2D(_Specular,TRANSFORM_TEX(i.uv0, _Specular)); + float node_58 = pow(max(0,dot(normalDirection,halfDirection)),exp2(((_Gloss*10.0)+1.0))); // Specular Light + float3 finalColor = (attenuation*_LightColor0.rgb*(((_Diffuse_var.rgb*_Color.rgb*node_40)+UNITY_LIGHTMODEL_AMBIENT.rgb)+(_Specular_var.r*node_58))); + return fixed4(finalColor,1); + } + ENDCG + } + Pass { + Name "FORWARD_DELTA" + Tags { + "LightMode"="ForwardAdd" + } + Blend One One + + + CGPROGRAM + #pragma vertex vert + #pragma fragment frag + #define UNITY_PASS_FORWARDADD + #include "UnityCG.cginc" + #include "AutoLight.cginc" + #include "Lighting.cginc" + #pragma multi_compile_fwdadd_fullshadows + #pragma only_renderers d3d9 d3d11 glcore gles gles3 metal d3d11_9x xboxone ps4 psp2 n3ds wiiu + #pragma target 3.0 + uniform float4 _Color; + uniform sampler2D _Diffuse; uniform float4 _Diffuse_ST; + uniform sampler2D _Normals; uniform float4 _Normals_ST; + uniform float _Gloss; + uniform sampler2D _Specular; uniform float4 _Specular_ST; + struct VertexInput { + float4 vertex : POSITION; + float3 normal : NORMAL; + float4 tangent : TANGENT; + float2 texcoord0 : TEXCOORD0; + }; + struct VertexOutput { + float4 pos : SV_POSITION; + float2 uv0 : TEXCOORD0; + float4 posWorld : TEXCOORD1; + float3 normalDir : TEXCOORD2; + float3 tangentDir : TEXCOORD3; + float3 bitangentDir : TEXCOORD4; + LIGHTING_COORDS(5,6) + }; + VertexOutput vert (VertexInput v) { + VertexOutput o = (VertexOutput)0; + o.uv0 = v.texcoord0; + o.normalDir = UnityObjectToWorldNormal(v.normal); + o.tangentDir = normalize( mul( unity_ObjectToWorld, float4( v.tangent.xyz, 0.0 ) ).xyz ); + o.bitangentDir = normalize(cross(o.normalDir, o.tangentDir) * v.tangent.w); + o.posWorld = mul(unity_ObjectToWorld, v.vertex); + float3 lightColor = _LightColor0.rgb; + o.pos = UnityObjectToClipPos( v.vertex ); + TRANSFER_VERTEX_TO_FRAGMENT(o) + return o; + } + float4 frag(VertexOutput i) : COLOR { + i.normalDir = normalize(i.normalDir); + float3x3 tangentTransform = float3x3( i.tangentDir, i.bitangentDir, i.normalDir); + float3 viewDirection = normalize(_WorldSpaceCameraPos.xyz - i.posWorld.xyz); + float3 _Normals_var = UnpackNormal(tex2D(_Normals,TRANSFORM_TEX(i.uv0, _Normals))); + float3 normalLocal = _Normals_var.rgb; + float3 normalDirection = normalize(mul( normalLocal, tangentTransform )); // Perturbed normals + float3 lightDirection = normalize(lerp(_WorldSpaceLightPos0.xyz, _WorldSpaceLightPos0.xyz - i.posWorld.xyz,_WorldSpaceLightPos0.w)); + float3 lightColor = _LightColor0.rgb; + float3 halfDirection = normalize(viewDirection+lightDirection); +////// Lighting: + float attenuation = LIGHT_ATTENUATION(i); + float4 _Diffuse_var = tex2D(_Diffuse,TRANSFORM_TEX(i.uv0, _Diffuse)); + float node_40 = max(0,dot(lightDirection,normalDirection)); + float4 _Specular_var = tex2D(_Specular,TRANSFORM_TEX(i.uv0, _Specular)); + float node_58 = pow(max(0,dot(normalDirection,halfDirection)),exp2(((_Gloss*10.0)+1.0))); // Specular Light + float3 finalColor = (attenuation*_LightColor0.rgb*(((_Diffuse_var.rgb*_Color.rgb*node_40)+UNITY_LIGHTMODEL_AMBIENT.rgb)+(_Specular_var.r*node_58))); + return fixed4(finalColor * 1,0); + } + ENDCG + } + } + FallBack "Diffuse" + CustomEditor "ShaderForgeMaterialInspector" +} diff --git a/Examples/CustomLighting.shader.meta b/Examples/CustomLighting.shader.meta new file mode 100644 index 00000000..1f6becf7 --- /dev/null +++ b/Examples/CustomLighting.shader.meta @@ -0,0 +1,12 @@ +fileFormatVersion: 2 +guid: e570c2adf90d6a24b8634788025bb2bb +ShaderImporter: + externalObjects: {} + defaultTextures: + - _Diffuse: {fileID: 2800000, guid: e77c8304f206a7043b58e3aa1ee2b730, type: 3} + - _Normals: {fileID: 2800000, guid: dff878613857997448b879796c93d426, type: 3} + - _Specular: {fileID: 2800000, guid: 754067f16ed6147498c4f9a2722bb147, type: 3} + nonModifiableTextures: [] + userData: + assetBundleName: + assetBundleVariant: diff --git a/Examples/LightWrapping.mat b/Examples/LightWrapping.mat new file mode 100644 index 00000000..ec14fd5a --- /dev/null +++ b/Examples/LightWrapping.mat @@ -0,0 +1,83 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!21 &2100000 +Material: + serializedVersion: 5 + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + m_Name: LightWrapping + m_Shader: {fileID: 4800000, guid: 12dc48c8a56df784b93db42c5d582f3e, type: 3} + m_ShaderKeywords: + m_LightmapFlags: 5 + m_CustomRenderQueue: -1 + m_SavedProperties: + serializedVersion: 2 + m_TexEnvs: + data: + first: + name: _Normal + second: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + data: + first: + name: _node_1 + second: + m_Texture: {fileID: 2800000, guid: b66bceaf0cc0ace4e9bdc92f14bba709, type: 3} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + data: + first: + name: _node_2 + second: + m_Texture: {fileID: 2800000, guid: 91730f8ee98c48e42aff09048fbbfaaa, type: 3} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + data: + first: + name: _node_18 + second: + m_Texture: {fileID: 2800000, guid: 28c7aad1372ff114b90d330f8a2dd938, type: 3} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + data: + first: + name: _node7 + second: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + data: + first: + name: _node_9 + second: + m_Texture: {fileID: 2800000, guid: 80286949e259c2d44876306923857245, type: 3} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + data: + first: + name: _node_11 + second: + m_Texture: {fileID: 2800000, guid: 28c7aad1372ff114b90d330f8a2dd938, type: 3} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + m_Floats: + data: + first: + name: _Gloss + second: .839999974 + data: + first: + name: _node_8 + second: .0653950945 + m_Colors: + data: + first: + name: _Diffuse + second: {r: .742697775, g: 1, b: .566176474, a: 1} + data: + first: + name: _LightWrapping + second: {r: 0, g: .751724005, b: 1, a: 1} diff --git a/Examples/LightWrapping.mat.meta b/Examples/LightWrapping.mat.meta new file mode 100644 index 00000000..6f8e1e6d --- /dev/null +++ b/Examples/LightWrapping.mat.meta @@ -0,0 +1,4 @@ +fileFormatVersion: 2 +guid: 0baa0be77ffe0ec4bbba3c06cb8f887b +NativeFormatImporter: + userData: diff --git a/Examples/LightWrapping.shader b/Examples/LightWrapping.shader new file mode 100644 index 00000000..27a142fb --- /dev/null +++ b/Examples/LightWrapping.shader @@ -0,0 +1,380 @@ +// Shader created with Shader Forge v1.38 +// Shader Forge (c) Neat Corporation / Joachim Holmer - http://www.acegikmo.com/shaderforge/ +// Note: Manually altering this data may prevent you from opening it in Shader Forge +/*SF_DATA;ver:1.38;sub:START;pass:START;ps:flbk:,iptp:0,cusa:False,bamd:0,cgin:,lico:1,lgpr:1,limd:3,spmd:1,trmd:0,grmd:0,uamb:True,mssp:True,bkdf:True,hqlp:False,rprd:True,enco:False,rmgx:True,imps:True,rpth:0,vtps:0,hqsc:True,nrmq:1,nrsp:0,vomd:0,spxs:False,tesm:0,olmd:1,culm:0,bsrc:0,bdst:1,dpts:2,wrdp:True,dith:0,atcv:False,rfrpo:True,rfrpn:Refraction,coma:15,ufog:False,aust:True,igpj:False,qofs:0,qpre:1,rntp:1,fgom:False,fgoc:False,fgod:False,fgor:False,fgmd:0,fgcr:0.5,fgcg:0.5,fgcb:0.5,fgca:1,fgde:0.01,fgrn:0,fgrf:300,stcl:False,atwp:False,stva:128,stmr:255,stmw:255,stcp:6,stps:0,stfa:0,stfz:0,ofsf:0,ofsu:0,f2p0:False,fnsp:False,fnfb:False,fsmp:False;n:type:ShaderForge.SFN_Final,id:0,x:33560,y:32563,varname:node_0,prsc:2|diff-270-RGB,spec-1906-OUT,gloss-8495-OUT,lwrap-272-RGB;n:type:ShaderForge.SFN_Color,id:270,x:33250,y:32393,ptovrint:False,ptlb:Diffuse,ptin:_Diffuse,varname:_Diffuse,prsc:2,glob:False,taghide:False,taghdr:False,tagprd:False,tagnsco:False,tagnrm:False,c1:0.9117647,c2:0.8760425,c3:0.8179066,c4:1;n:type:ShaderForge.SFN_Color,id:272,x:33250,y:32735,ptovrint:False,ptlb:Light Wrapping,ptin:_LightWrapping,varname:_LightWrapping,prsc:2,glob:False,taghide:False,taghdr:False,tagprd:False,tagnsco:False,tagnrm:False,c1:0.9058824,c2:0.4941176,c3:0.4901961,c4:1;n:type:ShaderForge.SFN_Vector1,id:1906,x:33250,y:32541,varname:node_1906,prsc:2,v1:0;n:type:ShaderForge.SFN_Slider,id:8495,x:33093,y:32628,ptovrint:False,ptlb:Gloss,ptin:_Gloss,varname:node_8495,prsc:2,glob:False,taghide:False,taghdr:False,tagprd:False,tagnsco:False,tagnrm:False,min:0,cur:0,max:1;proporder:272-270-8495;pass:END;sub:END;*/ + +Shader "Shader Forge/Examples/LightWrapping" { + Properties { + _LightWrapping ("Light Wrapping", Color) = (0.9058824,0.4941176,0.4901961,1) + _Diffuse ("Diffuse", Color) = (0.9117647,0.8760425,0.8179066,1) + _Gloss ("Gloss", Range(0, 1)) = 0 + } + SubShader { + Tags { + "RenderType"="Opaque" + } + Pass { + Name "FORWARD" + Tags { + "LightMode"="ForwardBase" + } + + + CGPROGRAM + #pragma vertex vert + #pragma fragment frag + #define UNITY_PASS_FORWARDBASE + #define SHOULD_SAMPLE_SH ( defined (LIGHTMAP_OFF) && defined(DYNAMICLIGHTMAP_OFF) ) + #define _GLOSSYENV 1 + #include "UnityCG.cginc" + #include "AutoLight.cginc" + #include "Lighting.cginc" + #include "UnityPBSLighting.cginc" + #include "UnityStandardBRDF.cginc" + #pragma multi_compile_fwdbase_fullshadows + #pragma multi_compile LIGHTMAP_OFF LIGHTMAP_ON + #pragma multi_compile DIRLIGHTMAP_OFF DIRLIGHTMAP_COMBINED DIRLIGHTMAP_SEPARATE + #pragma multi_compile DYNAMICLIGHTMAP_OFF DYNAMICLIGHTMAP_ON + #pragma only_renderers d3d9 d3d11 glcore gles gles3 metal d3d11_9x xboxone ps4 psp2 n3ds wiiu + #pragma target 3.0 + uniform float4 _Diffuse; + uniform float4 _LightWrapping; + uniform float _Gloss; + struct VertexInput { + float4 vertex : POSITION; + float3 normal : NORMAL; + float4 tangent : TANGENT; + float2 texcoord1 : TEXCOORD1; + float2 texcoord2 : TEXCOORD2; + }; + struct VertexOutput { + float4 pos : SV_POSITION; + float2 uv1 : TEXCOORD0; + float2 uv2 : TEXCOORD1; + float4 posWorld : TEXCOORD2; + float3 normalDir : TEXCOORD3; + float3 tangentDir : TEXCOORD4; + float3 bitangentDir : TEXCOORD5; + LIGHTING_COORDS(6,7) + #if defined(LIGHTMAP_ON) || defined(UNITY_SHOULD_SAMPLE_SH) + float4 ambientOrLightmapUV : TEXCOORD8; + #endif + }; + VertexOutput vert (VertexInput v) { + VertexOutput o = (VertexOutput)0; + o.uv1 = v.texcoord1; + o.uv2 = v.texcoord2; + #ifdef LIGHTMAP_ON + o.ambientOrLightmapUV.xy = v.texcoord1.xy * unity_LightmapST.xy + unity_LightmapST.zw; + o.ambientOrLightmapUV.zw = 0; + #elif UNITY_SHOULD_SAMPLE_SH + #endif + #ifdef DYNAMICLIGHTMAP_ON + o.ambientOrLightmapUV.zw = v.texcoord2.xy * unity_DynamicLightmapST.xy + unity_DynamicLightmapST.zw; + #endif + o.normalDir = UnityObjectToWorldNormal(v.normal); + o.tangentDir = normalize( mul( unity_ObjectToWorld, float4( v.tangent.xyz, 0.0 ) ).xyz ); + o.bitangentDir = normalize(cross(o.normalDir, o.tangentDir) * v.tangent.w); + o.posWorld = mul(unity_ObjectToWorld, v.vertex); + float3 lightColor = _LightColor0.rgb; + o.pos = UnityObjectToClipPos( v.vertex ); + TRANSFER_VERTEX_TO_FRAGMENT(o) + return o; + } + float4 frag(VertexOutput i) : COLOR { + i.normalDir = normalize(i.normalDir); + float3x3 tangentTransform = float3x3( i.tangentDir, i.bitangentDir, i.normalDir); + float3 viewDirection = normalize(_WorldSpaceCameraPos.xyz - i.posWorld.xyz); + float3 normalDirection = i.normalDir; + float3 viewReflectDirection = reflect( -viewDirection, normalDirection ); + float3 lightDirection = normalize(_WorldSpaceLightPos0.xyz); + float3 lightColor = _LightColor0.rgb; + float3 halfDirection = normalize(viewDirection+lightDirection); +////// Lighting: + float attenuation = LIGHT_ATTENUATION(i); + float3 attenColor = attenuation * _LightColor0.xyz; + float Pi = 3.141592654; + float InvPi = 0.31830988618; +///////// Gloss: + float gloss = _Gloss; + float perceptualRoughness = 1.0 - _Gloss; + float roughness = perceptualRoughness * perceptualRoughness; + float specPow = exp2( gloss * 10.0 + 1.0 ); +/////// GI Data: + UnityLight light; + #ifdef LIGHTMAP_OFF + light.color = lightColor; + light.dir = lightDirection; + light.ndotl = LambertTerm (normalDirection, light.dir); + #else + light.color = half3(0.f, 0.f, 0.f); + light.ndotl = 0.0f; + light.dir = half3(0.f, 0.f, 0.f); + #endif + UnityGIInput d; + d.light = light; + d.worldPos = i.posWorld.xyz; + d.worldViewDir = viewDirection; + d.atten = attenuation; + #if defined(LIGHTMAP_ON) || defined(DYNAMICLIGHTMAP_ON) + d.ambient = 0; + d.lightmapUV = i.ambientOrLightmapUV; + #else + d.ambient = i.ambientOrLightmapUV; + #endif + #if UNITY_SPECCUBE_BLENDING || UNITY_SPECCUBE_BOX_PROJECTION + d.boxMin[0] = unity_SpecCube0_BoxMin; + d.boxMin[1] = unity_SpecCube1_BoxMin; + #endif + #if UNITY_SPECCUBE_BOX_PROJECTION + d.boxMax[0] = unity_SpecCube0_BoxMax; + d.boxMax[1] = unity_SpecCube1_BoxMax; + d.probePosition[0] = unity_SpecCube0_ProbePosition; + d.probePosition[1] = unity_SpecCube1_ProbePosition; + #endif + d.probeHDR[0] = unity_SpecCube0_HDR; + d.probeHDR[1] = unity_SpecCube1_HDR; + Unity_GlossyEnvironmentData ugls_en_data; + ugls_en_data.roughness = 1.0 - gloss; + ugls_en_data.reflUVW = viewReflectDirection; + UnityGI gi = UnityGlobalIllumination(d, 1, normalDirection, ugls_en_data ); + lightDirection = gi.light.dir; + lightColor = gi.light.color; +////// Specular: + float NdotL = saturate(dot( normalDirection, lightDirection )); + float LdotH = saturate(dot(lightDirection, halfDirection)); + float3 specularColor = 0.0; + float specularMonochrome; + float3 diffuseColor = _Diffuse.rgb; // Need this for specular when using metallic + diffuseColor = DiffuseAndSpecularFromMetallic( diffuseColor, specularColor, specularColor, specularMonochrome ); + specularMonochrome = 1.0-specularMonochrome; + float NdotV = abs(dot( normalDirection, viewDirection )); + float NdotH = saturate(dot( normalDirection, halfDirection )); + float VdotH = saturate(dot( viewDirection, halfDirection )); + float visTerm = SmithJointGGXVisibilityTerm( NdotL, NdotV, roughness ); + float normTerm = GGXTerm(NdotH, roughness); + float specularPBL = (visTerm*normTerm) * UNITY_PI; + #ifdef UNITY_COLORSPACE_GAMMA + specularPBL = sqrt(max(1e-4h, specularPBL)); + #endif + specularPBL = max(0, specularPBL * NdotL); + #if defined(_SPECULARHIGHLIGHTS_OFF) + specularPBL = 0.0; + #endif + half surfaceReduction; + #ifdef UNITY_COLORSPACE_GAMMA + surfaceReduction = 1.0-0.28*roughness*perceptualRoughness; + #else + surfaceReduction = 1.0/(roughness*roughness + 1.0); + #endif + specularPBL *= any(specularColor) ? 1.0 : 0.0; + float3 directSpecular = attenColor*specularPBL*FresnelTerm(specularColor, LdotH); + half grazingTerm = saturate( gloss + specularMonochrome ); + float3 indirectSpecular = (gi.indirect.specular); + indirectSpecular *= FresnelLerp (specularColor, grazingTerm, NdotV); + indirectSpecular *= surfaceReduction; + float3 specular = (directSpecular + indirectSpecular); +/////// Diffuse: + NdotL = dot( normalDirection, lightDirection ); + float3 w = _LightWrapping.rgb*0.5; // Light wrapping + float3 NdotLWrap = NdotL * ( 1.0 - w ); + float3 forwardLight = max(float3(0.0,0.0,0.0), NdotLWrap + w ); + NdotL = max(0.0,dot( normalDirection, lightDirection )); + half fd90 = 0.5 + 2 * LdotH * LdotH * (1-gloss); + float nlPow5 = Pow5(1-NdotLWrap); + float nvPow5 = Pow5(1-NdotV); + float3 directDiffuse = (forwardLight + ((1 +(fd90 - 1)*nlPow5) * (1 + (fd90 - 1)*nvPow5) * NdotL)) * attenColor; + float3 indirectDiffuse = float3(0,0,0); + indirectDiffuse += gi.indirect.diffuse; + float3 diffuse = (directDiffuse + indirectDiffuse) * diffuseColor; +/// Final Color: + float3 finalColor = diffuse + specular; + return fixed4(finalColor,1); + } + ENDCG + } + Pass { + Name "FORWARD_DELTA" + Tags { + "LightMode"="ForwardAdd" + } + Blend One One + + + CGPROGRAM + #pragma vertex vert + #pragma fragment frag + #define UNITY_PASS_FORWARDADD + #define SHOULD_SAMPLE_SH ( defined (LIGHTMAP_OFF) && defined(DYNAMICLIGHTMAP_OFF) ) + #define _GLOSSYENV 1 + #include "UnityCG.cginc" + #include "AutoLight.cginc" + #include "Lighting.cginc" + #include "UnityPBSLighting.cginc" + #include "UnityStandardBRDF.cginc" + #pragma multi_compile_fwdadd_fullshadows + #pragma multi_compile LIGHTMAP_OFF LIGHTMAP_ON + #pragma multi_compile DIRLIGHTMAP_OFF DIRLIGHTMAP_COMBINED DIRLIGHTMAP_SEPARATE + #pragma multi_compile DYNAMICLIGHTMAP_OFF DYNAMICLIGHTMAP_ON + #pragma only_renderers d3d9 d3d11 glcore gles gles3 metal d3d11_9x xboxone ps4 psp2 n3ds wiiu + #pragma target 3.0 + uniform float4 _Diffuse; + uniform float4 _LightWrapping; + uniform float _Gloss; + struct VertexInput { + float4 vertex : POSITION; + float3 normal : NORMAL; + float4 tangent : TANGENT; + float2 texcoord1 : TEXCOORD1; + float2 texcoord2 : TEXCOORD2; + }; + struct VertexOutput { + float4 pos : SV_POSITION; + float2 uv1 : TEXCOORD0; + float2 uv2 : TEXCOORD1; + float4 posWorld : TEXCOORD2; + float3 normalDir : TEXCOORD3; + float3 tangentDir : TEXCOORD4; + float3 bitangentDir : TEXCOORD5; + LIGHTING_COORDS(6,7) + }; + VertexOutput vert (VertexInput v) { + VertexOutput o = (VertexOutput)0; + o.uv1 = v.texcoord1; + o.uv2 = v.texcoord2; + o.normalDir = UnityObjectToWorldNormal(v.normal); + o.tangentDir = normalize( mul( unity_ObjectToWorld, float4( v.tangent.xyz, 0.0 ) ).xyz ); + o.bitangentDir = normalize(cross(o.normalDir, o.tangentDir) * v.tangent.w); + o.posWorld = mul(unity_ObjectToWorld, v.vertex); + float3 lightColor = _LightColor0.rgb; + o.pos = UnityObjectToClipPos( v.vertex ); + TRANSFER_VERTEX_TO_FRAGMENT(o) + return o; + } + float4 frag(VertexOutput i) : COLOR { + i.normalDir = normalize(i.normalDir); + float3x3 tangentTransform = float3x3( i.tangentDir, i.bitangentDir, i.normalDir); + float3 viewDirection = normalize(_WorldSpaceCameraPos.xyz - i.posWorld.xyz); + float3 normalDirection = i.normalDir; + float3 lightDirection = normalize(lerp(_WorldSpaceLightPos0.xyz, _WorldSpaceLightPos0.xyz - i.posWorld.xyz,_WorldSpaceLightPos0.w)); + float3 lightColor = _LightColor0.rgb; + float3 halfDirection = normalize(viewDirection+lightDirection); +////// Lighting: + float attenuation = LIGHT_ATTENUATION(i); + float3 attenColor = attenuation * _LightColor0.xyz; + float Pi = 3.141592654; + float InvPi = 0.31830988618; +///////// Gloss: + float gloss = _Gloss; + float perceptualRoughness = 1.0 - _Gloss; + float roughness = perceptualRoughness * perceptualRoughness; + float specPow = exp2( gloss * 10.0 + 1.0 ); +////// Specular: + float NdotL = saturate(dot( normalDirection, lightDirection )); + float LdotH = saturate(dot(lightDirection, halfDirection)); + float3 specularColor = 0.0; + float specularMonochrome; + float3 diffuseColor = _Diffuse.rgb; // Need this for specular when using metallic + diffuseColor = DiffuseAndSpecularFromMetallic( diffuseColor, specularColor, specularColor, specularMonochrome ); + specularMonochrome = 1.0-specularMonochrome; + float NdotV = abs(dot( normalDirection, viewDirection )); + float NdotH = saturate(dot( normalDirection, halfDirection )); + float VdotH = saturate(dot( viewDirection, halfDirection )); + float visTerm = SmithJointGGXVisibilityTerm( NdotL, NdotV, roughness ); + float normTerm = GGXTerm(NdotH, roughness); + float specularPBL = (visTerm*normTerm) * UNITY_PI; + #ifdef UNITY_COLORSPACE_GAMMA + specularPBL = sqrt(max(1e-4h, specularPBL)); + #endif + specularPBL = max(0, specularPBL * NdotL); + #if defined(_SPECULARHIGHLIGHTS_OFF) + specularPBL = 0.0; + #endif + specularPBL *= any(specularColor) ? 1.0 : 0.0; + float3 directSpecular = attenColor*specularPBL*FresnelTerm(specularColor, LdotH); + float3 specular = directSpecular; +/////// Diffuse: + NdotL = dot( normalDirection, lightDirection ); + float3 w = _LightWrapping.rgb*0.5; // Light wrapping + float3 NdotLWrap = NdotL * ( 1.0 - w ); + float3 forwardLight = max(float3(0.0,0.0,0.0), NdotLWrap + w ); + NdotL = max(0.0,dot( normalDirection, lightDirection )); + half fd90 = 0.5 + 2 * LdotH * LdotH * (1-gloss); + float nlPow5 = Pow5(1-NdotLWrap); + float nvPow5 = Pow5(1-NdotV); + float3 directDiffuse = (forwardLight + ((1 +(fd90 - 1)*nlPow5) * (1 + (fd90 - 1)*nvPow5) * NdotL)) * attenColor; + float3 diffuse = directDiffuse * diffuseColor; +/// Final Color: + float3 finalColor = diffuse + specular; + return fixed4(finalColor * 1,0); + } + ENDCG + } + Pass { + Name "Meta" + Tags { + "LightMode"="Meta" + } + Cull Off + + CGPROGRAM + #pragma vertex vert + #pragma fragment frag + #define UNITY_PASS_META 1 + #define SHOULD_SAMPLE_SH ( defined (LIGHTMAP_OFF) && defined(DYNAMICLIGHTMAP_OFF) ) + #define _GLOSSYENV 1 + #include "UnityCG.cginc" + #include "Lighting.cginc" + #include "UnityPBSLighting.cginc" + #include "UnityStandardBRDF.cginc" + #include "UnityMetaPass.cginc" + #pragma fragmentoption ARB_precision_hint_fastest + #pragma multi_compile_shadowcaster + #pragma multi_compile LIGHTMAP_OFF LIGHTMAP_ON + #pragma multi_compile DIRLIGHTMAP_OFF DIRLIGHTMAP_COMBINED DIRLIGHTMAP_SEPARATE + #pragma multi_compile DYNAMICLIGHTMAP_OFF DYNAMICLIGHTMAP_ON + #pragma only_renderers d3d9 d3d11 glcore gles gles3 metal d3d11_9x xboxone ps4 psp2 n3ds wiiu + #pragma target 3.0 + uniform float4 _Diffuse; + uniform float _Gloss; + struct VertexInput { + float4 vertex : POSITION; + float2 texcoord1 : TEXCOORD1; + float2 texcoord2 : TEXCOORD2; + }; + struct VertexOutput { + float4 pos : SV_POSITION; + float2 uv1 : TEXCOORD0; + float2 uv2 : TEXCOORD1; + float4 posWorld : TEXCOORD2; + }; + VertexOutput vert (VertexInput v) { + VertexOutput o = (VertexOutput)0; + o.uv1 = v.texcoord1; + o.uv2 = v.texcoord2; + o.posWorld = mul(unity_ObjectToWorld, v.vertex); + o.pos = UnityMetaVertexPosition(v.vertex, v.texcoord1.xy, v.texcoord2.xy, unity_LightmapST, unity_DynamicLightmapST ); + return o; + } + float4 frag(VertexOutput i) : SV_Target { + float3 viewDirection = normalize(_WorldSpaceCameraPos.xyz - i.posWorld.xyz); + UnityMetaInput o; + UNITY_INITIALIZE_OUTPUT( UnityMetaInput, o ); + + o.Emission = 0; + + float3 diffColor = _Diffuse.rgb; + float specularMonochrome; + float3 specColor; + diffColor = DiffuseAndSpecularFromMetallic( diffColor, 0.0, specColor, specularMonochrome ); + float roughness = 1.0 - _Gloss; + o.Albedo = diffColor + specColor * roughness * roughness * 0.5; + + return UnityMetaFragment( o ); + } + ENDCG + } + } + FallBack "Diffuse" + CustomEditor "ShaderForgeMaterialInspector" +} diff --git a/Examples/LightWrapping.shader.meta b/Examples/LightWrapping.shader.meta new file mode 100644 index 00000000..448e8aa7 --- /dev/null +++ b/Examples/LightWrapping.shader.meta @@ -0,0 +1,9 @@ +fileFormatVersion: 2 +guid: 12dc48c8a56df784b93db42c5d582f3e +timeCreated: 1503327504 +licenseType: Store +ShaderImporter: + defaultTextures: [] + userData: + assetBundleName: + assetBundleVariant: diff --git a/Examples/Parallax.mat b/Examples/Parallax.mat new file mode 100644 index 00000000..fb7380aa --- /dev/null +++ b/Examples/Parallax.mat @@ -0,0 +1,66 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!21 &2100000 +Material: + serializedVersion: 3 + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + m_Name: Parallax + m_Shader: {fileID: 4800000, guid: 848a7fd7a01ca494bbaad23b3f926b42, type: 3} + m_ShaderKeywords: [] + m_CustomRenderQueue: -1 + m_SavedProperties: + serializedVersion: 2 + m_TexEnvs: + data: + first: + name: _Normal + second: + m_Texture: {fileID: 2800000, guid: cf20bfced7e912046a9ce991a4d775ec, type: 3} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + data: + first: + name: _DiffuseRGB + second: + m_Texture: {fileID: 2800000, guid: 5fb7986dd6d0a8e4093ba82369dd6a4d, type: 3} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + data: + first: + name: _HeightA + second: + m_Texture: {fileID: 2800000, guid: 5fb7986dd6d0a8e4093ba82369dd6a4d, type: 3} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + data: + first: + name: _node49 + second: + m_Texture: {fileID: 8900000, guid: f466cf7415226e046b096197eb7341aa, type: 2} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + data: + first: + name: _node113 + second: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + data: + first: + name: _AORGBHeightA + second: + m_Texture: {fileID: 2800000, guid: 5fb7986dd6d0a8e4093ba82369dd6a4d, type: 3} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + data: + first: + name: _node114 + second: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + m_Floats: {} + m_Colors: {} diff --git a/Examples/Parallax.mat.meta b/Examples/Parallax.mat.meta new file mode 100644 index 00000000..893c6152 --- /dev/null +++ b/Examples/Parallax.mat.meta @@ -0,0 +1,4 @@ +fileFormatVersion: 2 +guid: 3ee7d13d3dbe94b459c2935d8b993866 +NativeFormatImporter: + userData: diff --git a/Examples/Parallax.shader b/Examples/Parallax.shader new file mode 100644 index 00000000..1de42496 --- /dev/null +++ b/Examples/Parallax.shader @@ -0,0 +1,415 @@ +// Shader created with Shader Forge v1.40 +// Shader Forge (c) Freya Holmer - http://www.acegikmo.com/shaderforge/ +// Note: Manually altering this data may prevent you from opening it in Shader Forge +/*SF_DATA;ver:1.40;sub:START;pass:START;ps:flbk:,iptp:0,cusa:False,bamd:0,cgin:,lico:1,lgpr:1,limd:3,spmd:1,trmd:0,grmd:0,uamb:True,mssp:True,bkdf:True,hqlp:True,rprd:True,enco:False,rmgx:True,imps:True,rpth:0,vtps:0,hqsc:True,nrmq:1,nrsp:0,vomd:0,spxs:False,tesm:0,olmd:1,culm:0,bsrc:0,bdst:1,dpts:2,wrdp:True,dith:0,atcv:False,rfrpo:True,rfrpn:Refraction,coma:15,ufog:True,aust:True,igpj:False,qofs:0,qpre:1,rntp:1,fgom:False,fgoc:False,fgod:False,fgor:False,fgmd:0,fgcr:0.5,fgcg:0.5,fgcb:0.5,fgca:1,fgde:0.01,fgrn:0,fgrf:300,stcl:False,atwp:False,stva:128,stmr:255,stmw:255,stcp:6,stps:0,stfa:0,stfz:0,ofsf:0,ofsu:0,f2p0:False,fnsp:False,fnfb:False,fsmp:False;n:type:ShaderForge.SFN_Final,id:0,x:33740,y:32624,varname:node_0,prsc:2|diff-123-RGB,spec-46-OUT,gloss-42-OUT,normal-47-RGB;n:type:ShaderForge.SFN_Multiply,id:35,x:32898,y:32736,varname:node_35,prsc:2|A-37-UVOUT,B-36-OUT;n:type:ShaderForge.SFN_Vector1,id:36,x:32701,y:32828,varname:node_36,prsc:2,v1:8;n:type:ShaderForge.SFN_TexCoord,id:37,x:32701,y:32682,varname:node_37,prsc:2,uv:0,uaff:False;n:type:ShaderForge.SFN_Vector1,id:42,x:33559,y:32729,varname:node_42,prsc:2,v1:0.7;n:type:ShaderForge.SFN_Vector1,id:46,x:33559,y:32673,varname:node_46,prsc:2,v1:0;n:type:ShaderForge.SFN_Tex2d,id:47,x:33559,y:32821,ptovrint:False,ptlb:Normal,ptin:_Normal,varname:_Normal,prsc:2,glob:False,taghide:False,taghdr:False,tagprd:False,tagnsco:False,tagnrm:False,ntxv:3,isnm:True|UVIN-110-UVOUT;n:type:ShaderForge.SFN_Parallax,id:110,x:33299,y:32714,varname:node_110,prsc:2|UVIN-35-OUT,HEI-111-A,DEP-112-OUT;n:type:ShaderForge.SFN_Tex2d,id:111,x:33095,y:32608,varname:node_574,prsc:2,ntxv:0,isnm:False|UVIN-35-OUT,TEX-113-TEX;n:type:ShaderForge.SFN_Vector1,id:112,x:33095,y:32793,varname:node_112,prsc:2,v1:0.15;n:type:ShaderForge.SFN_Tex2dAsset,id:113,x:32898,y:32571,ptovrint:False,ptlb:AO (RGB) Height (A),ptin:_AORGBHeightA,varname:_AORGBHeightA,glob:False,taghide:False,taghdr:False,tagprd:False,tagnsco:False,tagnrm:False,ntxv:0,isnm:False;n:type:ShaderForge.SFN_Tex2d,id:123,x:33559,y:32544,varname:node_577,prsc:2,ntxv:0,isnm:False|UVIN-110-UVOUT,TEX-113-TEX;proporder:113-47;pass:END;sub:END;*/ + +Shader "Shader Forge/Examples/Parallax" { + Properties { + _AORGBHeightA ("AO (RGB) Height (A)", 2D) = "white" {} + _Normal ("Normal", 2D) = "bump" {} + } + SubShader { + Tags { + "RenderType"="Opaque" + } + LOD 128 + Pass { + Name "FORWARD" + Tags { + "LightMode"="ForwardBase" + } + + + CGPROGRAM + #pragma vertex vert + #pragma fragment frag + #define UNITY_PASS_FORWARDBASE + #define SHOULD_SAMPLE_SH ( defined (LIGHTMAP_OFF) && defined(DYNAMICLIGHTMAP_OFF) ) + #define _GLOSSYENV 1 + #include "UnityCG.cginc" + #include "AutoLight.cginc" + #include "Lighting.cginc" + #include "UnityPBSLighting.cginc" + #include "UnityStandardBRDF.cginc" + #pragma multi_compile_fwdbase_fullshadows + #pragma multi_compile LIGHTMAP_OFF LIGHTMAP_ON + #pragma multi_compile DIRLIGHTMAP_OFF DIRLIGHTMAP_COMBINED DIRLIGHTMAP_SEPARATE + #pragma multi_compile DYNAMICLIGHTMAP_OFF DYNAMICLIGHTMAP_ON + #pragma multi_compile_fog + #pragma only_renderers d3d9 d3d11 glcore gles gles3 metal d3d11_9x xboxone ps4 psp2 n3ds wiiu + #pragma target 3.0 + uniform sampler2D _Normal; uniform float4 _Normal_ST; + uniform sampler2D _AORGBHeightA; uniform float4 _AORGBHeightA_ST; + struct VertexInput { + float4 vertex : POSITION; + float3 normal : NORMAL; + float4 tangent : TANGENT; + float2 texcoord0 : TEXCOORD0; + float2 texcoord1 : TEXCOORD1; + float2 texcoord2 : TEXCOORD2; + }; + struct VertexOutput { + float4 pos : SV_POSITION; + float2 uv0 : TEXCOORD0; + float2 uv1 : TEXCOORD1; + float2 uv2 : TEXCOORD2; + float4 posWorld : TEXCOORD3; + float3 normalDir : TEXCOORD4; + float3 tangentDir : TEXCOORD5; + float3 bitangentDir : TEXCOORD6; + LIGHTING_COORDS(7,8) + UNITY_FOG_COORDS(9) + #if defined(LIGHTMAP_ON) || defined(UNITY_SHOULD_SAMPLE_SH) + float4 ambientOrLightmapUV : TEXCOORD10; + #endif + }; + VertexOutput vert (VertexInput v) { + VertexOutput o = (VertexOutput)0; + o.uv0 = v.texcoord0; + o.uv1 = v.texcoord1; + o.uv2 = v.texcoord2; + #ifdef LIGHTMAP_ON + o.ambientOrLightmapUV.xy = v.texcoord1.xy * unity_LightmapST.xy + unity_LightmapST.zw; + o.ambientOrLightmapUV.zw = 0; + #endif + #ifdef DYNAMICLIGHTMAP_ON + o.ambientOrLightmapUV.zw = v.texcoord2.xy * unity_DynamicLightmapST.xy + unity_DynamicLightmapST.zw; + #endif + o.normalDir = UnityObjectToWorldNormal(v.normal); + o.tangentDir = normalize( mul( unity_ObjectToWorld, float4( v.tangent.xyz, 0.0 ) ).xyz ); + o.bitangentDir = normalize(cross(o.normalDir, o.tangentDir) * v.tangent.w); + o.posWorld = mul(unity_ObjectToWorld, v.vertex); + float3 lightColor = _LightColor0.rgb; + o.pos = UnityObjectToClipPos( v.vertex ); + UNITY_TRANSFER_FOG(o,o.pos); + TRANSFER_VERTEX_TO_FRAGMENT(o) + return o; + } + float4 frag(VertexOutput i) : COLOR { + i.normalDir = normalize(i.normalDir); + float3x3 tangentTransform = float3x3( i.tangentDir, i.bitangentDir, i.normalDir); + float3 viewDirection = normalize(_WorldSpaceCameraPos.xyz - i.posWorld.xyz); + float2 node_35 = (i.uv0*8.0); + float4 node_574 = tex2D(_AORGBHeightA,TRANSFORM_TEX(node_35, _AORGBHeightA)); + float2 node_110 = (0.15*(node_574.a - 0.5)*mul(tangentTransform, viewDirection).xy + node_35); + float3 _Normal_var = UnpackNormal(tex2D(_Normal,TRANSFORM_TEX(node_110.rg, _Normal))); + float3 normalLocal = _Normal_var.rgb; + float3 normalDirection = normalize(mul( normalLocal, tangentTransform )); // Perturbed normals + float3 viewReflectDirection = reflect( -viewDirection, normalDirection ); + float3 lightDirection = normalize(_WorldSpaceLightPos0.xyz); + float3 lightColor = _LightColor0.rgb; + float3 halfDirection = normalize(viewDirection+lightDirection); +////// Lighting: + float attenuation = LIGHT_ATTENUATION(i); + float3 attenColor = attenuation * _LightColor0.xyz; + float Pi = 3.141592654; + float InvPi = 0.31830988618; +///////// Gloss: + float gloss = 0.7; + float perceptualRoughness = 1.0 - 0.7; + float roughness = perceptualRoughness * perceptualRoughness; + float specPow = exp2( gloss * 10.0 + 1.0 ); +/////// GI Data: + UnityLight light; + #ifdef LIGHTMAP_OFF + light.color = lightColor; + light.dir = lightDirection; + light.ndotl = LambertTerm (normalDirection, light.dir); + #else + light.color = half3(0.f, 0.f, 0.f); + light.ndotl = 0.0f; + light.dir = half3(0.f, 0.f, 0.f); + #endif + UnityGIInput d; + d.light = light; + d.worldPos = i.posWorld.xyz; + d.worldViewDir = viewDirection; + d.atten = attenuation; + #if defined(LIGHTMAP_ON) || defined(DYNAMICLIGHTMAP_ON) + d.ambient = 0; + d.lightmapUV = i.ambientOrLightmapUV; + #else + d.ambient = i.ambientOrLightmapUV; + #endif + #if UNITY_SPECCUBE_BLENDING || UNITY_SPECCUBE_BOX_PROJECTION + d.boxMin[0] = unity_SpecCube0_BoxMin; + d.boxMin[1] = unity_SpecCube1_BoxMin; + #endif + #if UNITY_SPECCUBE_BOX_PROJECTION + d.boxMax[0] = unity_SpecCube0_BoxMax; + d.boxMax[1] = unity_SpecCube1_BoxMax; + d.probePosition[0] = unity_SpecCube0_ProbePosition; + d.probePosition[1] = unity_SpecCube1_ProbePosition; + #endif + d.probeHDR[0] = unity_SpecCube0_HDR; + d.probeHDR[1] = unity_SpecCube1_HDR; + Unity_GlossyEnvironmentData ugls_en_data; + ugls_en_data.roughness = 1.0 - gloss; + ugls_en_data.reflUVW = viewReflectDirection; + UnityGI gi = UnityGlobalIllumination(d, 1, normalDirection, ugls_en_data ); + lightDirection = gi.light.dir; + lightColor = gi.light.color; +////// Specular: + float NdotL = saturate(dot( normalDirection, lightDirection )); + float LdotH = saturate(dot(lightDirection, halfDirection)); + float3 specularColor = 0.0; + float specularMonochrome; + float4 node_577 = tex2D(_AORGBHeightA,TRANSFORM_TEX(node_110.rg, _AORGBHeightA)); + float3 diffuseColor = node_577.rgb; // Need this for specular when using metallic + diffuseColor = DiffuseAndSpecularFromMetallic( diffuseColor, specularColor, specularColor, specularMonochrome ); + specularMonochrome = 1.0-specularMonochrome; + float NdotV = abs(dot( normalDirection, viewDirection )); + float NdotH = saturate(dot( normalDirection, halfDirection )); + float VdotH = saturate(dot( viewDirection, halfDirection )); + float visTerm = SmithJointGGXVisibilityTerm( NdotL, NdotV, roughness ); + float normTerm = GGXTerm(NdotH, roughness); + float specularPBL = (visTerm*normTerm) * UNITY_PI; + #ifdef UNITY_COLORSPACE_GAMMA + specularPBL = sqrt(max(1e-4h, specularPBL)); + #endif + specularPBL = max(0, specularPBL * NdotL); + #if defined(_SPECULARHIGHLIGHTS_OFF) + specularPBL = 0.0; + #endif + half surfaceReduction; + #ifdef UNITY_COLORSPACE_GAMMA + surfaceReduction = 1.0-0.28*roughness*perceptualRoughness; + #else + surfaceReduction = 1.0/(roughness*roughness + 1.0); + #endif + specularPBL *= any(specularColor) ? 1.0 : 0.0; + float3 directSpecular = attenColor*specularPBL*FresnelTerm(specularColor, LdotH); + half grazingTerm = saturate( gloss + specularMonochrome ); + float3 indirectSpecular = (gi.indirect.specular); + indirectSpecular *= FresnelLerp (specularColor, grazingTerm, NdotV); + indirectSpecular *= surfaceReduction; + float3 specular = (directSpecular + indirectSpecular); +/////// Diffuse: + NdotL = max(0.0,dot( normalDirection, lightDirection )); + half fd90 = 0.5 + 2 * LdotH * LdotH * (1-gloss); + float nlPow5 = Pow5(1-NdotL); + float nvPow5 = Pow5(1-NdotV); + float3 directDiffuse = ((1 +(fd90 - 1)*nlPow5) * (1 + (fd90 - 1)*nvPow5) * NdotL) * attenColor; + float3 indirectDiffuse = float3(0,0,0); + indirectDiffuse += gi.indirect.diffuse; + float3 diffuse = (directDiffuse + indirectDiffuse) * diffuseColor; +/// Final Color: + float3 finalColor = diffuse + specular; + fixed4 finalRGBA = fixed4(finalColor,1); + UNITY_APPLY_FOG(i.fogCoord, finalRGBA); + return finalRGBA; + } + ENDCG + } + Pass { + Name "FORWARD_DELTA" + Tags { + "LightMode"="ForwardAdd" + } + Blend One One + + + CGPROGRAM + #pragma vertex vert + #pragma fragment frag + #define UNITY_PASS_FORWARDADD + #define SHOULD_SAMPLE_SH ( defined (LIGHTMAP_OFF) && defined(DYNAMICLIGHTMAP_OFF) ) + #define _GLOSSYENV 1 + #include "UnityCG.cginc" + #include "AutoLight.cginc" + #include "Lighting.cginc" + #include "UnityPBSLighting.cginc" + #include "UnityStandardBRDF.cginc" + #pragma multi_compile_fwdadd_fullshadows + #pragma multi_compile LIGHTMAP_OFF LIGHTMAP_ON + #pragma multi_compile DIRLIGHTMAP_OFF DIRLIGHTMAP_COMBINED DIRLIGHTMAP_SEPARATE + #pragma multi_compile DYNAMICLIGHTMAP_OFF DYNAMICLIGHTMAP_ON + #pragma multi_compile_fog + #pragma only_renderers d3d9 d3d11 glcore gles gles3 metal d3d11_9x xboxone ps4 psp2 n3ds wiiu + #pragma target 3.0 + uniform sampler2D _Normal; uniform float4 _Normal_ST; + uniform sampler2D _AORGBHeightA; uniform float4 _AORGBHeightA_ST; + struct VertexInput { + float4 vertex : POSITION; + float3 normal : NORMAL; + float4 tangent : TANGENT; + float2 texcoord0 : TEXCOORD0; + float2 texcoord1 : TEXCOORD1; + float2 texcoord2 : TEXCOORD2; + }; + struct VertexOutput { + float4 pos : SV_POSITION; + float2 uv0 : TEXCOORD0; + float2 uv1 : TEXCOORD1; + float2 uv2 : TEXCOORD2; + float4 posWorld : TEXCOORD3; + float3 normalDir : TEXCOORD4; + float3 tangentDir : TEXCOORD5; + float3 bitangentDir : TEXCOORD6; + LIGHTING_COORDS(7,8) + UNITY_FOG_COORDS(9) + }; + VertexOutput vert (VertexInput v) { + VertexOutput o = (VertexOutput)0; + o.uv0 = v.texcoord0; + o.uv1 = v.texcoord1; + o.uv2 = v.texcoord2; + o.normalDir = UnityObjectToWorldNormal(v.normal); + o.tangentDir = normalize( mul( unity_ObjectToWorld, float4( v.tangent.xyz, 0.0 ) ).xyz ); + o.bitangentDir = normalize(cross(o.normalDir, o.tangentDir) * v.tangent.w); + o.posWorld = mul(unity_ObjectToWorld, v.vertex); + float3 lightColor = _LightColor0.rgb; + o.pos = UnityObjectToClipPos( v.vertex ); + UNITY_TRANSFER_FOG(o,o.pos); + TRANSFER_VERTEX_TO_FRAGMENT(o) + return o; + } + float4 frag(VertexOutput i) : COLOR { + i.normalDir = normalize(i.normalDir); + float3x3 tangentTransform = float3x3( i.tangentDir, i.bitangentDir, i.normalDir); + float3 viewDirection = normalize(_WorldSpaceCameraPos.xyz - i.posWorld.xyz); + float2 node_35 = (i.uv0*8.0); + float4 node_574 = tex2D(_AORGBHeightA,TRANSFORM_TEX(node_35, _AORGBHeightA)); + float2 node_110 = (0.15*(node_574.a - 0.5)*mul(tangentTransform, viewDirection).xy + node_35); + float3 _Normal_var = UnpackNormal(tex2D(_Normal,TRANSFORM_TEX(node_110.rg, _Normal))); + float3 normalLocal = _Normal_var.rgb; + float3 normalDirection = normalize(mul( normalLocal, tangentTransform )); // Perturbed normals + float3 lightDirection = normalize(lerp(_WorldSpaceLightPos0.xyz, _WorldSpaceLightPos0.xyz - i.posWorld.xyz,_WorldSpaceLightPos0.w)); + float3 lightColor = _LightColor0.rgb; + float3 halfDirection = normalize(viewDirection+lightDirection); +////// Lighting: + float attenuation = LIGHT_ATTENUATION(i); + float3 attenColor = attenuation * _LightColor0.xyz; + float Pi = 3.141592654; + float InvPi = 0.31830988618; +///////// Gloss: + float gloss = 0.7; + float perceptualRoughness = 1.0 - 0.7; + float roughness = perceptualRoughness * perceptualRoughness; + float specPow = exp2( gloss * 10.0 + 1.0 ); +////// Specular: + float NdotL = saturate(dot( normalDirection, lightDirection )); + float LdotH = saturate(dot(lightDirection, halfDirection)); + float3 specularColor = 0.0; + float specularMonochrome; + float4 node_577 = tex2D(_AORGBHeightA,TRANSFORM_TEX(node_110.rg, _AORGBHeightA)); + float3 diffuseColor = node_577.rgb; // Need this for specular when using metallic + diffuseColor = DiffuseAndSpecularFromMetallic( diffuseColor, specularColor, specularColor, specularMonochrome ); + specularMonochrome = 1.0-specularMonochrome; + float NdotV = abs(dot( normalDirection, viewDirection )); + float NdotH = saturate(dot( normalDirection, halfDirection )); + float VdotH = saturate(dot( viewDirection, halfDirection )); + float visTerm = SmithJointGGXVisibilityTerm( NdotL, NdotV, roughness ); + float normTerm = GGXTerm(NdotH, roughness); + float specularPBL = (visTerm*normTerm) * UNITY_PI; + #ifdef UNITY_COLORSPACE_GAMMA + specularPBL = sqrt(max(1e-4h, specularPBL)); + #endif + specularPBL = max(0, specularPBL * NdotL); + #if defined(_SPECULARHIGHLIGHTS_OFF) + specularPBL = 0.0; + #endif + specularPBL *= any(specularColor) ? 1.0 : 0.0; + float3 directSpecular = attenColor*specularPBL*FresnelTerm(specularColor, LdotH); + float3 specular = directSpecular; +/////// Diffuse: + NdotL = max(0.0,dot( normalDirection, lightDirection )); + half fd90 = 0.5 + 2 * LdotH * LdotH * (1-gloss); + float nlPow5 = Pow5(1-NdotL); + float nvPow5 = Pow5(1-NdotV); + float3 directDiffuse = ((1 +(fd90 - 1)*nlPow5) * (1 + (fd90 - 1)*nvPow5) * NdotL) * attenColor; + float3 diffuse = directDiffuse * diffuseColor; +/// Final Color: + float3 finalColor = diffuse + specular; + fixed4 finalRGBA = fixed4(finalColor * 1,0); + UNITY_APPLY_FOG(i.fogCoord, finalRGBA); + return finalRGBA; + } + ENDCG + } + Pass { + Name "Meta" + Tags { + "LightMode"="Meta" + } + Cull Off + + CGPROGRAM + #pragma vertex vert + #pragma fragment frag + #define UNITY_PASS_META 1 + #define SHOULD_SAMPLE_SH ( defined (LIGHTMAP_OFF) && defined(DYNAMICLIGHTMAP_OFF) ) + #define _GLOSSYENV 1 + #include "UnityCG.cginc" + #include "Lighting.cginc" + #include "UnityPBSLighting.cginc" + #include "UnityStandardBRDF.cginc" + #include "UnityMetaPass.cginc" + #pragma fragmentoption ARB_precision_hint_fastest + #pragma multi_compile_shadowcaster + #pragma multi_compile LIGHTMAP_OFF LIGHTMAP_ON + #pragma multi_compile DIRLIGHTMAP_OFF DIRLIGHTMAP_COMBINED DIRLIGHTMAP_SEPARATE + #pragma multi_compile DYNAMICLIGHTMAP_OFF DYNAMICLIGHTMAP_ON + #pragma multi_compile_fog + #pragma only_renderers d3d9 d3d11 glcore gles gles3 metal d3d11_9x xboxone ps4 psp2 n3ds wiiu + #pragma target 3.0 + uniform sampler2D _AORGBHeightA; uniform float4 _AORGBHeightA_ST; + struct VertexInput { + float4 vertex : POSITION; + float3 normal : NORMAL; + float4 tangent : TANGENT; + float2 texcoord0 : TEXCOORD0; + float2 texcoord1 : TEXCOORD1; + float2 texcoord2 : TEXCOORD2; + }; + struct VertexOutput { + float4 pos : SV_POSITION; + float2 uv0 : TEXCOORD0; + float2 uv1 : TEXCOORD1; + float2 uv2 : TEXCOORD2; + float4 posWorld : TEXCOORD3; + float3 normalDir : TEXCOORD4; + float3 tangentDir : TEXCOORD5; + float3 bitangentDir : TEXCOORD6; + }; + VertexOutput vert (VertexInput v) { + VertexOutput o = (VertexOutput)0; + o.uv0 = v.texcoord0; + o.uv1 = v.texcoord1; + o.uv2 = v.texcoord2; + o.normalDir = UnityObjectToWorldNormal(v.normal); + o.tangentDir = normalize( mul( unity_ObjectToWorld, float4( v.tangent.xyz, 0.0 ) ).xyz ); + o.bitangentDir = normalize(cross(o.normalDir, o.tangentDir) * v.tangent.w); + o.posWorld = mul(unity_ObjectToWorld, v.vertex); + o.pos = UnityMetaVertexPosition(v.vertex, v.texcoord1.xy, v.texcoord2.xy, unity_LightmapST, unity_DynamicLightmapST ); + return o; + } + float4 frag(VertexOutput i) : SV_Target { + i.normalDir = normalize(i.normalDir); + float3x3 tangentTransform = float3x3( i.tangentDir, i.bitangentDir, i.normalDir); + float3 viewDirection = normalize(_WorldSpaceCameraPos.xyz - i.posWorld.xyz); + float3 normalDirection = i.normalDir; + UnityMetaInput o; + UNITY_INITIALIZE_OUTPUT( UnityMetaInput, o ); + + o.Emission = 0; + + float2 node_35 = (i.uv0*8.0); + float4 node_574 = tex2D(_AORGBHeightA,TRANSFORM_TEX(node_35, _AORGBHeightA)); + float2 node_110 = (0.15*(node_574.a - 0.5)*mul(tangentTransform, viewDirection).xy + node_35); + float4 node_577 = tex2D(_AORGBHeightA,TRANSFORM_TEX(node_110.rg, _AORGBHeightA)); + float3 diffColor = node_577.rgb; + float specularMonochrome; + float3 specColor; + diffColor = DiffuseAndSpecularFromMetallic( diffColor, 0.0, specColor, specularMonochrome ); + float roughness = 1.0 - 0.7; + o.Albedo = diffColor + specColor * roughness * roughness * 0.5; + + return UnityMetaFragment( o ); + } + ENDCG + } + } + FallBack "Diffuse" + CustomEditor "ShaderForgeMaterialInspector" +} diff --git a/Examples/Parallax.shader.meta b/Examples/Parallax.shader.meta new file mode 100644 index 00000000..91aa4ab8 --- /dev/null +++ b/Examples/Parallax.shader.meta @@ -0,0 +1,9 @@ +fileFormatVersion: 2 +guid: 848a7fd7a01ca494bbaad23b3f926b42 +ShaderImporter: + externalObjects: {} + defaultTextures: [] + nonModifiableTextures: [] + userData: + assetBundleName: + assetBundleVariant: diff --git a/Examples/PixelRotator.mat b/Examples/PixelRotator.mat new file mode 100644 index 00000000..10bab614 --- /dev/null +++ b/Examples/PixelRotator.mat @@ -0,0 +1,80 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!21 &2100000 +Material: + serializedVersion: 3 + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + m_Name: PixelRotator + m_Shader: {fileID: 4800000, guid: 3c2ff98dd53924d0b85358d999cf6890, type: 3} + m_ShaderKeywords: [] + m_CustomRenderQueue: -1 + m_SavedProperties: + serializedVersion: 2 + m_TexEnvs: + data: + first: + name: _Normal + second: + m_Texture: {fileID: 2800000, guid: bbab0a6f7bae9cf42bf057d8ee2755f6, type: 3} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + data: + first: + name: _Diffuse + second: + m_Texture: {fileID: 2800000, guid: 6a985dfcd1d3ca94e9753748ed65c697, type: 3} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + data: + first: + name: _node32 + second: + m_Texture: {fileID: 2800000, guid: eb6f3d7f90ac0d14186a8ea5a44e1b3e, type: 3} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + data: + first: + name: _node10 + second: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + data: + first: + name: _SpecMaskR + second: + m_Texture: {fileID: 2800000, guid: b66bceaf0cc0ace4e9bdc92f14bba709, type: 3} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + m_Floats: + data: + first: + name: _Gloss + second: .0983606577 + data: + first: + name: _NormalIntensity + second: .258196741 + data: + first: + name: _node9 + second: 1 + data: + first: + name: _MIP + second: 2.85714269 + data: + first: + name: _node67 + second: .625 + m_Colors: + data: + first: + name: _Specular + second: {r: .99999994, g: .425458819, b: .156017184, a: 1} + data: + first: + name: _Diffuse + second: {r: .415291131, g: 0, b: 0, a: 1} diff --git a/Examples/PixelRotator.mat.meta b/Examples/PixelRotator.mat.meta new file mode 100644 index 00000000..e4f74263 --- /dev/null +++ b/Examples/PixelRotator.mat.meta @@ -0,0 +1,4 @@ +fileFormatVersion: 2 +guid: ad0f5de566d7147fe91238a7111958f1 +NativeFormatImporter: + userData: diff --git a/Examples/PixelRotator.shader b/Examples/PixelRotator.shader new file mode 100644 index 00000000..cd4b0f8f --- /dev/null +++ b/Examples/PixelRotator.shader @@ -0,0 +1,189 @@ +// Shader created with Shader Forge v1.38 +// Shader Forge (c) Neat Corporation / Joachim Holmer - http://www.acegikmo.com/shaderforge/ +// Note: Manually altering this data may prevent you from opening it in Shader Forge +/*SF_DATA;ver:1.38;sub:START;pass:START;ps:flbk:,iptp:0,cusa:False,bamd:0,cgin:,lico:1,lgpr:1,limd:2,spmd:1,trmd:0,grmd:0,uamb:True,mssp:True,bkdf:False,hqlp:False,rprd:False,enco:False,rmgx:True,imps:True,rpth:0,vtps:0,hqsc:True,nrmq:1,nrsp:0,vomd:0,spxs:False,tesm:0,olmd:1,culm:0,bsrc:0,bdst:1,dpts:2,wrdp:True,dith:0,atcv:False,rfrpo:True,rfrpn:Refraction,coma:15,ufog:True,aust:True,igpj:False,qofs:0,qpre:1,rntp:1,fgom:False,fgoc:False,fgod:False,fgor:False,fgmd:0,fgcr:0.5,fgcg:0.5,fgcb:0.5,fgca:1,fgde:0.01,fgrn:0,fgrf:300,stcl:False,atwp:False,stva:128,stmr:255,stmw:255,stcp:6,stps:0,stfa:0,stfz:0,ofsf:0,ofsu:0,f2p0:False,fnsp:False,fnfb:False,fsmp:False;n:type:ShaderForge.SFN_Final,id:1,x:35749,y:31801,varname:node_1,prsc:2|diff-748-OUT;n:type:ShaderForge.SFN_TexCoord,id:544,x:32941,y:31716,varname:node_544,prsc:2,uv:0,uaff:False;n:type:ShaderForge.SFN_Multiply,id:545,x:33168,y:31794,varname:node_545,prsc:2|A-544-UVOUT,B-546-OUT;n:type:ShaderForge.SFN_Vector1,id:546,x:32941,y:31928,varname:node_546,prsc:2,v1:10;n:type:ShaderForge.SFN_Frac,id:556,x:33395,y:31872,varname:node_556,prsc:2|IN-545-OUT;n:type:ShaderForge.SFN_RemapRange,id:559,x:33622,y:31873,varname:node_559,prsc:2,frmn:0,frmx:1,tomn:-1,tomx:1|IN-556-OUT;n:type:ShaderForge.SFN_Length,id:561,x:34530,y:32037,varname:node_561,prsc:2|IN-585-OUT;n:type:ShaderForge.SFN_Floor,id:562,x:34984,y:32043,varname:node_562,prsc:2|IN-607-OUT;n:type:ShaderForge.SFN_Rotator,id:563,x:34076,y:32056,varname:node_563,prsc:2|UVIN-764-OUT,PIV-574-OUT;n:type:ShaderForge.SFN_Vector2,id:574,x:33849,y:32159,varname:node_574,prsc:2,v1:0,v2:0;n:type:ShaderForge.SFN_Multiply,id:585,x:34303,y:31993,varname:node_585,prsc:2|A-586-OUT,B-563-UVOUT;n:type:ShaderForge.SFN_Vector2,id:586,x:34076,y:31906,varname:node_586,prsc:2,v1:1,v2:3;n:type:ShaderForge.SFN_Clamp01,id:607,x:34757,y:31992,varname:node_607,prsc:2|IN-561-OUT;n:type:ShaderForge.SFN_Vector1,id:641,x:33622,y:32093,varname:node_641,prsc:2,v1:8;n:type:ShaderForge.SFN_Floor,id:736,x:34076,y:31720,varname:node_736,prsc:2|IN-545-OUT;n:type:ShaderForge.SFN_Noise,id:737,x:34530,y:31533,varname:node_737,prsc:2|XY-736-OUT;n:type:ShaderForge.SFN_Noise,id:739,x:34530,y:31701,varname:node_739,prsc:2|XY-743-OUT;n:type:ShaderForge.SFN_Noise,id:741,x:34757,y:31824,varname:node_741,prsc:2|XY-744-OUT;n:type:ShaderForge.SFN_Add,id:743,x:34303,y:31825,varname:node_743,prsc:2|A-736-OUT,B-546-OUT;n:type:ShaderForge.SFN_Add,id:744,x:34530,y:31869,varname:node_744,prsc:2|A-743-OUT,B-546-OUT;n:type:ShaderForge.SFN_Append,id:745,x:34757,y:31656,varname:node_745,prsc:2|A-737-OUT,B-739-OUT;n:type:ShaderForge.SFN_Append,id:746,x:34984,y:31707,varname:node_746,prsc:2|A-745-OUT,B-741-OUT;n:type:ShaderForge.SFN_OneMinus,id:747,x:35211,y:31991,varname:node_747,prsc:2|IN-562-OUT;n:type:ShaderForge.SFN_Multiply,id:748,x:35438,y:31899,varname:node_748,prsc:2|A-753-OUT,B-747-OUT;n:type:ShaderForge.SFN_Power,id:753,x:35211,y:31823,varname:node_753,prsc:2|VAL-746-OUT,EXP-754-OUT;n:type:ShaderForge.SFN_Vector1,id:754,x:34984,y:31909,varname:node_754,prsc:2,v1:2;n:type:ShaderForge.SFN_Posterize,id:764,x:33849,y:31973,varname:node_764,prsc:2|IN-559-OUT,STPS-641-OUT;pass:END;sub:END;*/ + +Shader "Shader Forge/Examples/Pixel Rotator" { + Properties { + } + SubShader { + Tags { + "RenderType"="Opaque" + } + Pass { + Name "FORWARD" + Tags { + "LightMode"="ForwardBase" + } + + + CGPROGRAM + #pragma vertex vert + #pragma fragment frag + #define UNITY_PASS_FORWARDBASE + #include "UnityCG.cginc" + #include "AutoLight.cginc" + #pragma multi_compile_fwdbase_fullshadows + #pragma multi_compile_fog + #pragma only_renderers d3d9 d3d11 glcore gles gles3 metal d3d11_9x xboxone ps4 psp2 n3ds wiiu + #pragma target 3.0 + uniform float4 _LightColor0; + struct VertexInput { + float4 vertex : POSITION; + float3 normal : NORMAL; + float2 texcoord0 : TEXCOORD0; + }; + struct VertexOutput { + float4 pos : SV_POSITION; + float2 uv0 : TEXCOORD0; + float4 posWorld : TEXCOORD1; + float3 normalDir : TEXCOORD2; + LIGHTING_COORDS(3,4) + UNITY_FOG_COORDS(5) + }; + VertexOutput vert (VertexInput v) { + VertexOutput o = (VertexOutput)0; + o.uv0 = v.texcoord0; + o.normalDir = UnityObjectToWorldNormal(v.normal); + o.posWorld = mul(unity_ObjectToWorld, v.vertex); + float3 lightColor = _LightColor0.rgb; + o.pos = UnityObjectToClipPos( v.vertex ); + UNITY_TRANSFER_FOG(o,o.pos); + TRANSFER_VERTEX_TO_FRAGMENT(o) + return o; + } + float4 frag(VertexOutput i) : COLOR { + i.normalDir = normalize(i.normalDir); + float3 normalDirection = i.normalDir; + float3 lightDirection = normalize(_WorldSpaceLightPos0.xyz); + float3 lightColor = _LightColor0.rgb; +////// Lighting: + float attenuation = LIGHT_ATTENUATION(i); + float3 attenColor = attenuation * _LightColor0.xyz; +/////// Diffuse: + float NdotL = max(0.0,dot( normalDirection, lightDirection )); + float3 directDiffuse = max( 0.0, NdotL) * attenColor; + float3 indirectDiffuse = float3(0,0,0); + indirectDiffuse += UNITY_LIGHTMODEL_AMBIENT.rgb; // Ambient Light + float node_546 = 10.0; + float2 node_545 = (i.uv0*node_546); + float2 node_736 = floor(node_545); + float2 node_737_skew = node_736 + 0.2127+node_736.x*0.3713*node_736.y; + float2 node_737_rnd = 4.789*sin(489.123*(node_737_skew)); + float node_737 = frac(node_737_rnd.x*node_737_rnd.y*(1+node_737_skew.x)); + float2 node_743 = (node_736+node_546); + float2 node_739_skew = node_743 + 0.2127+node_743.x*0.3713*node_743.y; + float2 node_739_rnd = 4.789*sin(489.123*(node_739_skew)); + float node_739 = frac(node_739_rnd.x*node_739_rnd.y*(1+node_739_skew.x)); + float2 node_744 = (node_743+node_546); + float2 node_741_skew = node_744 + 0.2127+node_744.x*0.3713*node_744.y; + float2 node_741_rnd = 4.789*sin(489.123*(node_741_skew)); + float node_741 = frac(node_741_rnd.x*node_741_rnd.y*(1+node_741_skew.x)); + float4 node_1817 = _Time; + float node_563_ang = node_1817.g; + float node_563_spd = 1.0; + float node_563_cos = cos(node_563_spd*node_563_ang); + float node_563_sin = sin(node_563_spd*node_563_ang); + float2 node_563_piv = float2(0,0); + float node_641 = 8.0; + float2 node_563 = (mul(floor((frac(node_545)*2.0+-1.0) * node_641) / (node_641 - 1)-node_563_piv,float2x2( node_563_cos, -node_563_sin, node_563_sin, node_563_cos))+node_563_piv); + float3 diffuseColor = (pow(float3(float2(node_737,node_739),node_741),2.0)*(1.0 - floor(saturate(length((float2(1,3)*node_563)))))); + float3 diffuse = (directDiffuse + indirectDiffuse) * diffuseColor; +/// Final Color: + float3 finalColor = diffuse; + fixed4 finalRGBA = fixed4(finalColor,1); + UNITY_APPLY_FOG(i.fogCoord, finalRGBA); + return finalRGBA; + } + ENDCG + } + Pass { + Name "FORWARD_DELTA" + Tags { + "LightMode"="ForwardAdd" + } + Blend One One + + + CGPROGRAM + #pragma vertex vert + #pragma fragment frag + #define UNITY_PASS_FORWARDADD + #include "UnityCG.cginc" + #include "AutoLight.cginc" + #pragma multi_compile_fwdadd_fullshadows + #pragma multi_compile_fog + #pragma only_renderers d3d9 d3d11 glcore gles gles3 metal d3d11_9x xboxone ps4 psp2 n3ds wiiu + #pragma target 3.0 + uniform float4 _LightColor0; + struct VertexInput { + float4 vertex : POSITION; + float3 normal : NORMAL; + float2 texcoord0 : TEXCOORD0; + }; + struct VertexOutput { + float4 pos : SV_POSITION; + float2 uv0 : TEXCOORD0; + float4 posWorld : TEXCOORD1; + float3 normalDir : TEXCOORD2; + LIGHTING_COORDS(3,4) + UNITY_FOG_COORDS(5) + }; + VertexOutput vert (VertexInput v) { + VertexOutput o = (VertexOutput)0; + o.uv0 = v.texcoord0; + o.normalDir = UnityObjectToWorldNormal(v.normal); + o.posWorld = mul(unity_ObjectToWorld, v.vertex); + float3 lightColor = _LightColor0.rgb; + o.pos = UnityObjectToClipPos( v.vertex ); + UNITY_TRANSFER_FOG(o,o.pos); + TRANSFER_VERTEX_TO_FRAGMENT(o) + return o; + } + float4 frag(VertexOutput i) : COLOR { + i.normalDir = normalize(i.normalDir); + float3 normalDirection = i.normalDir; + float3 lightDirection = normalize(lerp(_WorldSpaceLightPos0.xyz, _WorldSpaceLightPos0.xyz - i.posWorld.xyz,_WorldSpaceLightPos0.w)); + float3 lightColor = _LightColor0.rgb; +////// Lighting: + float attenuation = LIGHT_ATTENUATION(i); + float3 attenColor = attenuation * _LightColor0.xyz; +/////// Diffuse: + float NdotL = max(0.0,dot( normalDirection, lightDirection )); + float3 directDiffuse = max( 0.0, NdotL) * attenColor; + float node_546 = 10.0; + float2 node_545 = (i.uv0*node_546); + float2 node_736 = floor(node_545); + float2 node_737_skew = node_736 + 0.2127+node_736.x*0.3713*node_736.y; + float2 node_737_rnd = 4.789*sin(489.123*(node_737_skew)); + float node_737 = frac(node_737_rnd.x*node_737_rnd.y*(1+node_737_skew.x)); + float2 node_743 = (node_736+node_546); + float2 node_739_skew = node_743 + 0.2127+node_743.x*0.3713*node_743.y; + float2 node_739_rnd = 4.789*sin(489.123*(node_739_skew)); + float node_739 = frac(node_739_rnd.x*node_739_rnd.y*(1+node_739_skew.x)); + float2 node_744 = (node_743+node_546); + float2 node_741_skew = node_744 + 0.2127+node_744.x*0.3713*node_744.y; + float2 node_741_rnd = 4.789*sin(489.123*(node_741_skew)); + float node_741 = frac(node_741_rnd.x*node_741_rnd.y*(1+node_741_skew.x)); + float4 node_1127 = _Time; + float node_563_ang = node_1127.g; + float node_563_spd = 1.0; + float node_563_cos = cos(node_563_spd*node_563_ang); + float node_563_sin = sin(node_563_spd*node_563_ang); + float2 node_563_piv = float2(0,0); + float node_641 = 8.0; + float2 node_563 = (mul(floor((frac(node_545)*2.0+-1.0) * node_641) / (node_641 - 1)-node_563_piv,float2x2( node_563_cos, -node_563_sin, node_563_sin, node_563_cos))+node_563_piv); + float3 diffuseColor = (pow(float3(float2(node_737,node_739),node_741),2.0)*(1.0 - floor(saturate(length((float2(1,3)*node_563)))))); + float3 diffuse = directDiffuse * diffuseColor; +/// Final Color: + float3 finalColor = diffuse; + fixed4 finalRGBA = fixed4(finalColor * 1,0); + UNITY_APPLY_FOG(i.fogCoord, finalRGBA); + return finalRGBA; + } + ENDCG + } + } + FallBack "Diffuse" + CustomEditor "ShaderForgeMaterialInspector" +} diff --git a/Examples/PixelRotator.shader.meta b/Examples/PixelRotator.shader.meta new file mode 100644 index 00000000..c0d8ac55 --- /dev/null +++ b/Examples/PixelRotator.shader.meta @@ -0,0 +1,9 @@ +fileFormatVersion: 2 +guid: 3c2ff98dd53924d0b85358d999cf6890 +timeCreated: 1503327511 +licenseType: Store +ShaderImporter: + defaultTextures: [] + userData: + assetBundleName: + assetBundleVariant: diff --git a/Examples/Refraction.mat b/Examples/Refraction.mat new file mode 100644 index 00000000..c590248e --- /dev/null +++ b/Examples/Refraction.mat @@ -0,0 +1,43 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!21 &2100000 +Material: + serializedVersion: 3 + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + m_Name: Refraction + m_Shader: {fileID: 4800000, guid: 6562ed1722964fc4fa4eba1d756e19b7, type: 3} + m_ShaderKeywords: [] + m_CustomRenderQueue: -1 + m_SavedProperties: + serializedVersion: 2 + m_TexEnvs: + data: + first: + name: _Refraction + second: + m_Texture: {fileID: 2800000, guid: bbab0a6f7bae9cf42bf057d8ee2755f6, type: 3} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + data: + first: + name: _node78 + second: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + m_Floats: + data: + first: + name: _RefractionIntensity + second: .285714269 + m_Colors: + data: + first: + name: _TileB + second: {r: .426470608, g: .426470608, b: .426470608, a: 1} + data: + first: + name: _TileA + second: {r: 1, g: 1, b: 1, a: 1} diff --git a/Examples/Refraction.mat.meta b/Examples/Refraction.mat.meta new file mode 100644 index 00000000..73f2b566 --- /dev/null +++ b/Examples/Refraction.mat.meta @@ -0,0 +1,4 @@ +fileFormatVersion: 2 +guid: 2eced452d5ec44e49985d30395b1e7d3 +NativeFormatImporter: + userData: diff --git a/Examples/Refraction.shader b/Examples/Refraction.shader new file mode 100644 index 00000000..bf7d34bc --- /dev/null +++ b/Examples/Refraction.shader @@ -0,0 +1,350 @@ +// Shader created with Shader Forge v1.38 +// Shader Forge (c) Neat Corporation / Joachim Holmer - http://www.acegikmo.com/shaderforge/ +// Note: Manually altering this data may prevent you from opening it in Shader Forge +/*SF_DATA;ver:1.38;sub:START;pass:START;ps:flbk:,iptp:0,cusa:False,bamd:0,cgin:,lico:1,lgpr:1,limd:3,spmd:1,trmd:0,grmd:0,uamb:False,mssp:True,bkdf:False,hqlp:False,rprd:True,enco:False,rmgx:True,imps:True,rpth:0,vtps:0,hqsc:True,nrmq:0,nrsp:0,vomd:0,spxs:False,tesm:0,olmd:1,culm:2,bsrc:3,bdst:7,dpts:2,wrdp:False,dith:0,atcv:False,rfrpo:True,rfrpn:Refraction,coma:15,ufog:False,aust:False,igpj:False,qofs:0,qpre:3,rntp:2,fgom:False,fgoc:False,fgod:False,fgor:False,fgmd:0,fgcr:0.5,fgcg:0.5,fgcb:0.5,fgca:1,fgde:0.01,fgrn:0,fgrf:300,stcl:False,atwp:False,stva:128,stmr:255,stmw:255,stcp:6,stps:0,stfa:0,stfz:0,ofsf:0,ofsu:0,f2p0:False,fnsp:False,fnfb:False,fsmp:False;n:type:ShaderForge.SFN_Final,id:0,x:34414,y:32442,varname:node_0,prsc:2|diff-5610-OUT,spec-75-OUT,gloss-76-OUT,normal-215-OUT,transm-29-OUT,lwrap-29-OUT,alpha-22-OUT,refract-14-OUT;n:type:ShaderForge.SFN_Slider,id:13,x:33580,y:32752,ptovrint:False,ptlb:Refraction Intensity,ptin:_RefractionIntensity,varname:_RefractionIntensity,prsc:2,glob:False,taghide:False,taghdr:False,tagprd:False,tagnsco:False,tagnrm:False,min:0,cur:0.1,max:1;n:type:ShaderForge.SFN_Multiply,id:14,x:34145,y:32724,varname:node_14,prsc:2|A-16-OUT,B-220-OUT;n:type:ShaderForge.SFN_ComponentMask,id:16,x:33975,y:32651,varname:node_16,prsc:2,cc1:0,cc2:1,cc3:-1,cc4:-1|IN-25-RGB;n:type:ShaderForge.SFN_Vector1,id:22,x:34145,y:32651,varname:node_22,prsc:2,v1:0.3;n:type:ShaderForge.SFN_Tex2d,id:25,x:33737,y:32566,ptovrint:False,ptlb:Refraction,ptin:_Refraction,varname:_Refraction,prsc:2,glob:False,taghide:False,taghdr:False,tagprd:False,tagnsco:False,tagnrm:False,tex:bbab0a6f7bae9cf42bf057d8ee2755f6,ntxv:3,isnm:True|UVIN-27-OUT;n:type:ShaderForge.SFN_TexCoord,id:26,x:33379,y:32505,varname:node_26,prsc:2,uv:0,uaff:False;n:type:ShaderForge.SFN_Multiply,id:27,x:33550,y:32566,varname:node_27,prsc:2|A-26-UVOUT,B-28-OUT;n:type:ShaderForge.SFN_Vector1,id:28,x:33379,y:32662,varname:node_28,prsc:2,v1:1;n:type:ShaderForge.SFN_Vector1,id:29,x:34145,y:32577,varname:node_29,prsc:2,v1:1;n:type:ShaderForge.SFN_Vector1,id:75,x:34145,y:32430,varname:node_75,prsc:2,v1:0;n:type:ShaderForge.SFN_Vector1,id:76,x:34145,y:32486,varname:node_76,prsc:2,v1:0.8;n:type:ShaderForge.SFN_Lerp,id:215,x:33975,y:32524,varname:node_215,prsc:2|A-216-OUT,B-25-RGB,T-13-OUT;n:type:ShaderForge.SFN_Vector3,id:216,x:33737,y:32445,varname:node_216,prsc:2,v1:0,v2:0,v3:1;n:type:ShaderForge.SFN_Multiply,id:220,x:33975,y:32803,varname:node_220,prsc:2|A-13-OUT,B-221-OUT;n:type:ShaderForge.SFN_Vector1,id:221,x:33737,y:32831,varname:node_221,prsc:2,v1:0.2;n:type:ShaderForge.SFN_Vector1,id:5610,x:34145,y:32366,varname:node_5610,prsc:2,v1:0.2;proporder:13-25;pass:END;sub:END;*/ + +Shader "Shader Forge/Examples/Refraction" { + Properties { + _RefractionIntensity ("Refraction Intensity", Range(0, 1)) = 0.1 + _Refraction ("Refraction", 2D) = "bump" {} + [HideInInspector]_Cutoff ("Alpha cutoff", Range(0,1)) = 0.5 + } + SubShader { + Tags { + "Queue"="Transparent" + "RenderType"="Transparent" + } + GrabPass{ } + Pass { + Name "FORWARD" + Tags { + "LightMode"="ForwardBase" + } + Blend SrcAlpha OneMinusSrcAlpha + Cull Off + ZWrite Off + + CGPROGRAM + #pragma vertex vert + #pragma fragment frag + #define UNITY_PASS_FORWARDBASE + #define _GLOSSYENV 1 + #include "UnityCG.cginc" + #include "AutoLight.cginc" + #include "UnityPBSLighting.cginc" + #include "UnityStandardBRDF.cginc" + #pragma multi_compile_fwdbase_fullshadows + #pragma only_renderers d3d9 d3d11 glcore gles gles3 metal d3d11_9x xboxone ps4 psp2 + #pragma target 3.0 + uniform sampler2D _GrabTexture; + uniform float _RefractionIntensity; + uniform sampler2D _Refraction; uniform float4 _Refraction_ST; + struct VertexInput { + float4 vertex : POSITION; + float3 normal : NORMAL; + float4 tangent : TANGENT; + float2 texcoord0 : TEXCOORD0; + }; + struct VertexOutput { + float4 pos : SV_POSITION; + float2 uv0 : TEXCOORD0; + float4 posWorld : TEXCOORD1; + float3 normalDir : TEXCOORD2; + float3 tangentDir : TEXCOORD3; + float3 bitangentDir : TEXCOORD4; + float4 projPos : TEXCOORD5; + LIGHTING_COORDS(6,7) + }; + VertexOutput vert (VertexInput v) { + VertexOutput o = (VertexOutput)0; + o.uv0 = v.texcoord0; + o.normalDir = UnityObjectToWorldNormal(v.normal); + o.tangentDir = normalize( mul( unity_ObjectToWorld, float4( v.tangent.xyz, 0.0 ) ).xyz ); + o.bitangentDir = normalize(cross(o.normalDir, o.tangentDir) * v.tangent.w); + o.posWorld = mul(unity_ObjectToWorld, v.vertex); + float3 lightColor = _LightColor0.rgb; + o.pos = UnityObjectToClipPos( v.vertex ); + o.projPos = ComputeScreenPos (o.pos); + COMPUTE_EYEDEPTH(o.projPos.z); + TRANSFER_VERTEX_TO_FRAGMENT(o) + return o; + } + float4 frag(VertexOutput i, float facing : VFACE) : COLOR { + float isFrontFace = ( facing >= 0 ? 1 : 0 ); + float faceSign = ( facing >= 0 ? 1 : -1 ); + float3x3 tangentTransform = float3x3( i.tangentDir, i.bitangentDir, i.normalDir); + float3 viewDirection = normalize(_WorldSpaceCameraPos.xyz - i.posWorld.xyz); + float2 node_27 = (i.uv0*1.0); + float3 _Refraction_var = UnpackNormal(tex2D(_Refraction,TRANSFORM_TEX(node_27, _Refraction))); + float3 normalLocal = lerp(float3(0,0,1),_Refraction_var.rgb,_RefractionIntensity); + float3 normalDirection = normalize(mul( normalLocal, tangentTransform )); // Perturbed normals + float3 viewReflectDirection = reflect( -viewDirection, normalDirection ); + float2 sceneUVs = (i.projPos.xy / i.projPos.w) + (_Refraction_var.rgb.rg*(_RefractionIntensity*0.2)); + float4 sceneColor = tex2D(_GrabTexture, sceneUVs); + float3 lightDirection = normalize(_WorldSpaceLightPos0.xyz); + float3 lightColor = _LightColor0.rgb; + float3 halfDirection = normalize(viewDirection+lightDirection); +////// Lighting: + float attenuation = LIGHT_ATTENUATION(i); + float3 attenColor = attenuation * _LightColor0.xyz; + float Pi = 3.141592654; + float InvPi = 0.31830988618; +///////// Gloss: + float gloss = 0.8; + float perceptualRoughness = 1.0 - 0.8; + float roughness = perceptualRoughness * perceptualRoughness; + float specPow = exp2( gloss * 10.0 + 1.0 ); +/////// GI Data: + UnityLight light; + #ifdef LIGHTMAP_OFF + light.color = lightColor; + light.dir = lightDirection; + light.ndotl = LambertTerm (normalDirection, light.dir); + #else + light.color = half3(0.f, 0.f, 0.f); + light.ndotl = 0.0f; + light.dir = half3(0.f, 0.f, 0.f); + #endif + UnityGIInput d; + d.light = light; + d.worldPos = i.posWorld.xyz; + d.worldViewDir = viewDirection; + d.atten = attenuation; + #if UNITY_SPECCUBE_BLENDING || UNITY_SPECCUBE_BOX_PROJECTION + d.boxMin[0] = unity_SpecCube0_BoxMin; + d.boxMin[1] = unity_SpecCube1_BoxMin; + #endif + #if UNITY_SPECCUBE_BOX_PROJECTION + d.boxMax[0] = unity_SpecCube0_BoxMax; + d.boxMax[1] = unity_SpecCube1_BoxMax; + d.probePosition[0] = unity_SpecCube0_ProbePosition; + d.probePosition[1] = unity_SpecCube1_ProbePosition; + #endif + d.probeHDR[0] = unity_SpecCube0_HDR; + d.probeHDR[1] = unity_SpecCube1_HDR; + Unity_GlossyEnvironmentData ugls_en_data; + ugls_en_data.roughness = 1.0 - gloss; + ugls_en_data.reflUVW = viewReflectDirection; + UnityGI gi = UnityGlobalIllumination(d, 1, normalDirection, ugls_en_data ); + lightDirection = gi.light.dir; + lightColor = gi.light.color; +////// Specular: + float NdotL = saturate(dot( normalDirection, lightDirection )); + float LdotH = saturate(dot(lightDirection, halfDirection)); + float3 specularColor = 0.0; + float specularMonochrome; + float node_5610 = 0.2; + float3 diffuseColor = float3(node_5610,node_5610,node_5610); // Need this for specular when using metallic + diffuseColor = DiffuseAndSpecularFromMetallic( diffuseColor, specularColor, specularColor, specularMonochrome ); + specularMonochrome = 1.0-specularMonochrome; + float NdotV = abs(dot( normalDirection, viewDirection )); + float NdotH = saturate(dot( normalDirection, halfDirection )); + float VdotH = saturate(dot( viewDirection, halfDirection )); + float visTerm = SmithJointGGXVisibilityTerm( NdotL, NdotV, roughness ); + float normTerm = GGXTerm(NdotH, roughness); + float specularPBL = (visTerm*normTerm) * UNITY_PI; + #ifdef UNITY_COLORSPACE_GAMMA + specularPBL = sqrt(max(1e-4h, specularPBL)); + #endif + specularPBL = max(0, specularPBL * NdotL); + #if defined(_SPECULARHIGHLIGHTS_OFF) + specularPBL = 0.0; + #endif + half surfaceReduction; + #ifdef UNITY_COLORSPACE_GAMMA + surfaceReduction = 1.0-0.28*roughness*perceptualRoughness; + #else + surfaceReduction = 1.0/(roughness*roughness + 1.0); + #endif + specularPBL *= any(specularColor) ? 1.0 : 0.0; + float3 directSpecular = attenColor*specularPBL*FresnelTerm(specularColor, LdotH); + half grazingTerm = saturate( gloss + specularMonochrome ); + float3 indirectSpecular = (gi.indirect.specular); + indirectSpecular *= FresnelLerp (specularColor, grazingTerm, NdotV); + indirectSpecular *= surfaceReduction; + float3 specular = (directSpecular + indirectSpecular); +/////// Diffuse: + NdotL = dot( normalDirection, lightDirection ); + float node_29 = 1.0; + float3 w = float3(node_29,node_29,node_29)*0.5; // Light wrapping + float3 NdotLWrap = NdotL * ( 1.0 - w ); + float3 forwardLight = max(float3(0.0,0.0,0.0), NdotLWrap + w ); + float3 backLight = max(float3(0.0,0.0,0.0), -NdotLWrap + w ) * float3(node_29,node_29,node_29); + NdotL = max(0.0,dot( normalDirection, lightDirection )); + half fd90 = 0.5 + 2 * LdotH * LdotH * (1-gloss); + float nlPow5 = Pow5(1-NdotLWrap); + float nvPow5 = Pow5(1-NdotV); + float3 directDiffuse = ((forwardLight+backLight) + ((1 +(fd90 - 1)*nlPow5) * (1 + (fd90 - 1)*nvPow5) * NdotL)) * attenColor; + float3 diffuse = directDiffuse * diffuseColor; +/// Final Color: + float3 finalColor = diffuse + specular; + return fixed4(lerp(sceneColor.rgb, finalColor,0.3),1); + } + ENDCG + } + Pass { + Name "FORWARD_DELTA" + Tags { + "LightMode"="ForwardAdd" + } + Blend One One + Cull Off + ZWrite Off + + CGPROGRAM + #pragma vertex vert + #pragma fragment frag + #define UNITY_PASS_FORWARDADD + #define _GLOSSYENV 1 + #include "UnityCG.cginc" + #include "AutoLight.cginc" + #include "UnityPBSLighting.cginc" + #include "UnityStandardBRDF.cginc" + #pragma multi_compile_fwdadd_fullshadows + #pragma only_renderers d3d9 d3d11 glcore gles gles3 metal d3d11_9x xboxone ps4 psp2 + #pragma target 3.0 + uniform sampler2D _GrabTexture; + uniform float _RefractionIntensity; + uniform sampler2D _Refraction; uniform float4 _Refraction_ST; + struct VertexInput { + float4 vertex : POSITION; + float3 normal : NORMAL; + float4 tangent : TANGENT; + float2 texcoord0 : TEXCOORD0; + }; + struct VertexOutput { + float4 pos : SV_POSITION; + float2 uv0 : TEXCOORD0; + float4 posWorld : TEXCOORD1; + float3 normalDir : TEXCOORD2; + float3 tangentDir : TEXCOORD3; + float3 bitangentDir : TEXCOORD4; + float4 projPos : TEXCOORD5; + LIGHTING_COORDS(6,7) + }; + VertexOutput vert (VertexInput v) { + VertexOutput o = (VertexOutput)0; + o.uv0 = v.texcoord0; + o.normalDir = UnityObjectToWorldNormal(v.normal); + o.tangentDir = normalize( mul( unity_ObjectToWorld, float4( v.tangent.xyz, 0.0 ) ).xyz ); + o.bitangentDir = normalize(cross(o.normalDir, o.tangentDir) * v.tangent.w); + o.posWorld = mul(unity_ObjectToWorld, v.vertex); + float3 lightColor = _LightColor0.rgb; + o.pos = UnityObjectToClipPos( v.vertex ); + o.projPos = ComputeScreenPos (o.pos); + COMPUTE_EYEDEPTH(o.projPos.z); + TRANSFER_VERTEX_TO_FRAGMENT(o) + return o; + } + float4 frag(VertexOutput i, float facing : VFACE) : COLOR { + float isFrontFace = ( facing >= 0 ? 1 : 0 ); + float faceSign = ( facing >= 0 ? 1 : -1 ); + float3x3 tangentTransform = float3x3( i.tangentDir, i.bitangentDir, i.normalDir); + float3 viewDirection = normalize(_WorldSpaceCameraPos.xyz - i.posWorld.xyz); + float2 node_27 = (i.uv0*1.0); + float3 _Refraction_var = UnpackNormal(tex2D(_Refraction,TRANSFORM_TEX(node_27, _Refraction))); + float3 normalLocal = lerp(float3(0,0,1),_Refraction_var.rgb,_RefractionIntensity); + float3 normalDirection = normalize(mul( normalLocal, tangentTransform )); // Perturbed normals + float2 sceneUVs = (i.projPos.xy / i.projPos.w) + (_Refraction_var.rgb.rg*(_RefractionIntensity*0.2)); + float4 sceneColor = tex2D(_GrabTexture, sceneUVs); + float3 lightDirection = normalize(lerp(_WorldSpaceLightPos0.xyz, _WorldSpaceLightPos0.xyz - i.posWorld.xyz,_WorldSpaceLightPos0.w)); + float3 lightColor = _LightColor0.rgb; + float3 halfDirection = normalize(viewDirection+lightDirection); +////// Lighting: + float attenuation = LIGHT_ATTENUATION(i); + float3 attenColor = attenuation * _LightColor0.xyz; + float Pi = 3.141592654; + float InvPi = 0.31830988618; +///////// Gloss: + float gloss = 0.8; + float perceptualRoughness = 1.0 - 0.8; + float roughness = perceptualRoughness * perceptualRoughness; + float specPow = exp2( gloss * 10.0 + 1.0 ); +////// Specular: + float NdotL = saturate(dot( normalDirection, lightDirection )); + float LdotH = saturate(dot(lightDirection, halfDirection)); + float3 specularColor = 0.0; + float specularMonochrome; + float node_5610 = 0.2; + float3 diffuseColor = float3(node_5610,node_5610,node_5610); // Need this for specular when using metallic + diffuseColor = DiffuseAndSpecularFromMetallic( diffuseColor, specularColor, specularColor, specularMonochrome ); + specularMonochrome = 1.0-specularMonochrome; + float NdotV = abs(dot( normalDirection, viewDirection )); + float NdotH = saturate(dot( normalDirection, halfDirection )); + float VdotH = saturate(dot( viewDirection, halfDirection )); + float visTerm = SmithJointGGXVisibilityTerm( NdotL, NdotV, roughness ); + float normTerm = GGXTerm(NdotH, roughness); + float specularPBL = (visTerm*normTerm) * UNITY_PI; + #ifdef UNITY_COLORSPACE_GAMMA + specularPBL = sqrt(max(1e-4h, specularPBL)); + #endif + specularPBL = max(0, specularPBL * NdotL); + #if defined(_SPECULARHIGHLIGHTS_OFF) + specularPBL = 0.0; + #endif + specularPBL *= any(specularColor) ? 1.0 : 0.0; + float3 directSpecular = attenColor*specularPBL*FresnelTerm(specularColor, LdotH); + float3 specular = directSpecular; +/////// Diffuse: + NdotL = dot( normalDirection, lightDirection ); + float node_29 = 1.0; + float3 w = float3(node_29,node_29,node_29)*0.5; // Light wrapping + float3 NdotLWrap = NdotL * ( 1.0 - w ); + float3 forwardLight = max(float3(0.0,0.0,0.0), NdotLWrap + w ); + float3 backLight = max(float3(0.0,0.0,0.0), -NdotLWrap + w ) * float3(node_29,node_29,node_29); + NdotL = max(0.0,dot( normalDirection, lightDirection )); + half fd90 = 0.5 + 2 * LdotH * LdotH * (1-gloss); + float nlPow5 = Pow5(1-NdotLWrap); + float nvPow5 = Pow5(1-NdotV); + float3 directDiffuse = ((forwardLight+backLight) + ((1 +(fd90 - 1)*nlPow5) * (1 + (fd90 - 1)*nvPow5) * NdotL)) * attenColor; + float3 diffuse = directDiffuse * diffuseColor; +/// Final Color: + float3 finalColor = diffuse + specular; + return fixed4(finalColor * 0.3,0); + } + ENDCG + } + Pass { + Name "ShadowCaster" + Tags { + "LightMode"="ShadowCaster" + } + Offset 1, 1 + Cull Off + + CGPROGRAM + #pragma vertex vert + #pragma fragment frag + #define UNITY_PASS_SHADOWCASTER + #define _GLOSSYENV 1 + #include "UnityCG.cginc" + #include "Lighting.cginc" + #include "UnityPBSLighting.cginc" + #include "UnityStandardBRDF.cginc" + #pragma fragmentoption ARB_precision_hint_fastest + #pragma multi_compile_shadowcaster + #pragma only_renderers d3d9 d3d11 glcore gles gles3 metal d3d11_9x xboxone ps4 psp2 + #pragma target 3.0 + struct VertexInput { + float4 vertex : POSITION; + }; + struct VertexOutput { + V2F_SHADOW_CASTER; + }; + VertexOutput vert (VertexInput v) { + VertexOutput o = (VertexOutput)0; + o.pos = UnityObjectToClipPos( v.vertex ); + TRANSFER_SHADOW_CASTER(o) + return o; + } + float4 frag(VertexOutput i, float facing : VFACE) : COLOR { + float isFrontFace = ( facing >= 0 ? 1 : 0 ); + float faceSign = ( facing >= 0 ? 1 : -1 ); + SHADOW_CASTER_FRAGMENT(i) + } + ENDCG + } + } + FallBack "Diffuse" + CustomEditor "ShaderForgeMaterialInspector" +} diff --git a/Examples/Refraction.shader.meta b/Examples/Refraction.shader.meta new file mode 100644 index 00000000..17d0e5f1 --- /dev/null +++ b/Examples/Refraction.shader.meta @@ -0,0 +1,10 @@ +fileFormatVersion: 2 +guid: 6562ed1722964fc4fa4eba1d756e19b7 +timeCreated: 1502814920 +licenseType: Store +ShaderImporter: + defaultTextures: + - _Refraction: {fileID: 2800000, guid: bbab0a6f7bae9cf42bf057d8ee2755f6, type: 3} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Examples/TessellationDisplacement.mat b/Examples/TessellationDisplacement.mat new file mode 100644 index 00000000..c6bcaaee --- /dev/null +++ b/Examples/TessellationDisplacement.mat @@ -0,0 +1,103 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!21 &2100000 +Material: + serializedVersion: 5 + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + m_Name: TessellationDisplacement + m_Shader: {fileID: 4800000, guid: 5e81283b11113de4295d1943aec0a765, type: 3} + m_ShaderKeywords: + m_LightmapFlags: 5 + m_CustomRenderQueue: -1 + m_SavedProperties: + serializedVersion: 2 + m_TexEnvs: + data: + first: + name: _Diffuse + second: + m_Texture: {fileID: 2800000, guid: b66bceaf0cc0ace4e9bdc92f14bba709, type: 3} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + data: + first: + name: _Normals + second: + m_Texture: {fileID: 2800000, guid: cf20bfced7e912046a9ce991a4d775ec, type: 3} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + data: + first: + name: _DiffuseRGB + second: + m_Texture: {fileID: 2800000, guid: b66bceaf0cc0ace4e9bdc92f14bba709, type: 3} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + data: + first: + name: _AORGBHeightA + second: + m_Texture: {fileID: 2800000, guid: 5fb7986dd6d0a8e4093ba82369dd6a4d, type: 3} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + data: + first: + name: _node9 + second: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + data: + first: + name: _node3 + second: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + data: + first: + name: _node4 + second: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + data: + first: + name: _DisplacementA + second: + m_Texture: {fileID: 2800000, guid: 5fb7986dd6d0a8e4093ba82369dd6a4d, type: 3} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + data: + first: + name: _DisplacementR + second: + m_Texture: {fileID: 2800000, guid: 28c7aad1372ff114b90d330f8a2dd938, type: 3} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + data: + first: + name: _AOR + second: + m_Texture: {fileID: 2800000, guid: 5fb7986dd6d0a8e4093ba82369dd6a4d, type: 3} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + data: + first: + name: _node254 + second: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + m_Floats: + data: + first: + name: _Depth + second: .215384617 + m_Colors: + data: + first: + name: _SurfaceColor + second: {r: .164630204, g: .423464477, b: .639705896, a: 1} diff --git a/Examples/TessellationDisplacement.mat.meta b/Examples/TessellationDisplacement.mat.meta new file mode 100644 index 00000000..8b53e9d8 --- /dev/null +++ b/Examples/TessellationDisplacement.mat.meta @@ -0,0 +1,4 @@ +fileFormatVersion: 2 +guid: d753811ecd38cd149b3a958022853c18 +NativeFormatImporter: + userData: diff --git a/Examples/TessellationDisplacement.shader b/Examples/TessellationDisplacement.shader new file mode 100644 index 00000000..d4255d8b --- /dev/null +++ b/Examples/TessellationDisplacement.shader @@ -0,0 +1,772 @@ +// Shader created with Shader Forge v1.38 +// Shader Forge (c) Neat Corporation / Joachim Holmer - http://www.acegikmo.com/shaderforge/ +// Note: Manually altering this data may prevent you from opening it in Shader Forge +/*SF_DATA;ver:1.38;sub:START;pass:START;ps:flbk:,iptp:0,cusa:False,bamd:0,cgin:,lico:1,lgpr:1,limd:1,spmd:1,trmd:0,grmd:0,uamb:True,mssp:True,bkdf:True,hqlp:False,rprd:True,enco:False,rmgx:True,imps:True,rpth:0,vtps:0,hqsc:True,nrmq:1,nrsp:0,vomd:0,spxs:False,tesm:0,olmd:1,culm:0,bsrc:0,bdst:1,dpts:2,wrdp:True,dith:0,atcv:False,rfrpo:True,rfrpn:Refraction,coma:15,ufog:True,aust:True,igpj:False,qofs:0,qpre:1,rntp:1,fgom:False,fgoc:False,fgod:False,fgor:False,fgmd:0,fgcr:0.5,fgcg:0.5,fgcb:0.5,fgca:1,fgde:0.01,fgrn:0,fgrf:300,stcl:False,atwp:False,stva:128,stmr:255,stmw:255,stcp:6,stps:0,stfa:0,stfz:0,ofsf:0,ofsu:0,f2p0:False,fnsp:False,fnfb:False,fsmp:False;n:type:ShaderForge.SFN_Final,id:1,x:34362,y:32994,varname:node_1,prsc:2|diff-162-OUT,spec-165-OUT,gloss-66-OUT,normal-160-OUT,lwrap-237-OUT,disp-13-OUT,tess-8-OUT;n:type:ShaderForge.SFN_Tex2d,id:3,x:33597,y:33194,ptovrint:False,ptlb:Normals,ptin:_Normals,varname:_Normals,prsc:2,glob:False,taghide:False,taghdr:False,tagprd:False,tagnsco:False,tagnrm:False,tex:cf20bfced7e912046a9ce991a4d775ec,ntxv:3,isnm:True|UVIN-6-OUT;n:type:ShaderForge.SFN_Tex2d,id:4,x:32986,y:33006,varname:node_798,prsc:2,tex:5fb7986dd6d0a8e4093ba82369dd6a4d,ntxv:0,isnm:False|UVIN-6-OUT,TEX-254-TEX;n:type:ShaderForge.SFN_TexCoord,id:5,x:32078,y:33020,varname:node_5,prsc:2,uv:0,uaff:False;n:type:ShaderForge.SFN_Multiply,id:6,x:32307,y:33100,varname:node_6,prsc:2|A-5-UVOUT,B-7-OUT;n:type:ShaderForge.SFN_Vector1,id:7,x:32078,y:33232,varname:node_7,prsc:2,v1:2;n:type:ShaderForge.SFN_Vector1,id:8,x:34051,y:33620,varname:node_8,prsc:2,v1:3;n:type:ShaderForge.SFN_Tex2d,id:12,x:32759,y:33284,varname:node_803,prsc:2,tex:5fb7986dd6d0a8e4093ba82369dd6a4d,ntxv:0,isnm:False|UVIN-6-OUT,MIP-15-OUT,TEX-254-TEX;n:type:ShaderForge.SFN_Multiply,id:13,x:34051,y:33418,varname:node_13,prsc:2|A-14-OUT,B-17-OUT;n:type:ShaderForge.SFN_NormalVector,id:14,x:33824,y:33442,prsc:2,pt:False;n:type:ShaderForge.SFN_Vector1,id:15,x:32532,y:33364,varname:node_15,prsc:2,v1:1;n:type:ShaderForge.SFN_Slider,id:16,x:33213,y:33639,ptovrint:False,ptlb:Depth,ptin:_Depth,varname:_Depth,prsc:2,glob:False,taghide:False,taghdr:False,tagprd:False,tagnsco:False,tagnrm:False,min:0,cur:0.25,max:0.25;n:type:ShaderForge.SFN_Multiply,id:17,x:33824,y:33620,varname:node_17,prsc:2|A-23-OUT,B-26-OUT;n:type:ShaderForge.SFN_OneMinus,id:23,x:33597,y:33379,varname:node_23,prsc:2|IN-153-OUT;n:type:ShaderForge.SFN_Multiply,id:26,x:33597,y:33537,varname:node_26,prsc:2|A-27-OUT,B-16-OUT;n:type:ShaderForge.SFN_Vector1,id:27,x:33370,y:33478,varname:node_27,prsc:2,v1:-1;n:type:ShaderForge.SFN_Vector1,id:66,x:34051,y:32948,varname:node_66,prsc:2,v1:10;n:type:ShaderForge.SFN_Tex2d,id:152,x:32759,y:33099,ptovrint:False,ptlb:Displacement (R),ptin:_DisplacementR,varname:_DisplacementR,prsc:2,glob:False,taghide:False,taghdr:False,tagprd:False,tagnsco:False,tagnrm:False,tex:28c7aad1372ff114b90d330f8a2dd938,ntxv:0,isnm:False|UVIN-161-UVOUT,MIP-15-OUT;n:type:ShaderForge.SFN_Max,id:153,x:33370,y:33276,varname:node_153,prsc:2|A-152-R,B-12-A;n:type:ShaderForge.SFN_Subtract,id:154,x:32986,y:33174,varname:node_154,prsc:2|A-12-A,B-152-R;n:type:ShaderForge.SFN_Clamp01,id:156,x:33370,y:33108,varname:node_156,prsc:2|IN-154-OUT;n:type:ShaderForge.SFN_Lerp,id:157,x:33824,y:32948,varname:node_157,prsc:2|A-159-OUT,B-3-RGB,T-156-OUT;n:type:ShaderForge.SFN_Vector3,id:159,x:33597,y:33061,varname:node_159,prsc:2,v1:0,v2:0,v3:1;n:type:ShaderForge.SFN_Normalize,id:160,x:34051,y:33082,varname:node_160,prsc:2|IN-157-OUT;n:type:ShaderForge.SFN_Panner,id:161,x:32532,y:32984,varname:node_161,prsc:2,spu:0.4,spv:0|UVIN-6-OUT;n:type:ShaderForge.SFN_Lerp,id:162,x:33597,y:32875,varname:node_162,prsc:2|A-163-OUT,B-170-OUT,T-156-OUT;n:type:ShaderForge.SFN_Vector3,id:163,x:33370,y:32790,varname:node_163,prsc:2,v1:0.4117647,v2:0.3826572,v3:0.3602941;n:type:ShaderForge.SFN_Multiply,id:165,x:34051,y:32746,varname:node_165,prsc:2|A-156-OUT,B-172-OUT;n:type:ShaderForge.SFN_Multiply,id:170,x:33370,y:32940,varname:node_170,prsc:2|A-3497-RGB,B-4-RGB;n:type:ShaderForge.SFN_ComponentMask,id:172,x:33824,y:32770,varname:node_172,prsc:2,cc1:0,cc2:-1,cc3:-1,cc4:-1|IN-162-OUT;n:type:ShaderForge.SFN_OneMinus,id:174,x:33824,y:33284,varname:node_174,prsc:2|IN-156-OUT;n:type:ShaderForge.SFN_Multiply,id:237,x:34051,y:33250,varname:node_237,prsc:2|A-238-OUT,B-174-OUT;n:type:ShaderForge.SFN_Vector1,id:238,x:33824,y:33150,varname:node_238,prsc:2,v1:0.5;n:type:ShaderForge.SFN_Tex2dAsset,id:254,x:32532,y:33145,ptovrint:False,ptlb:AO (RGB) Height (A),ptin:_AORGBHeightA,varname:_AORGBHeightA,glob:False,taghide:False,taghdr:False,tagprd:False,tagnsco:False,tagnrm:False,tex:5fb7986dd6d0a8e4093ba82369dd6a4d,ntxv:0,isnm:False;n:type:ShaderForge.SFN_Tex2d,id:3497,x:32986,y:32833,ptovrint:False,ptlb:Diffuse,ptin:_Diffuse,varname:node_3497,prsc:2,glob:False,taghide:False,taghdr:False,tagprd:False,tagnsco:False,tagnrm:False,tex:b66bceaf0cc0ace4e9bdc92f14bba709,ntxv:0,isnm:False;proporder:3-254-152-16-3497;pass:END;sub:END;*/ + +Shader "Shader Forge/Examples/TessellationDisplacement" { + Properties { + _Normals ("Normals", 2D) = "bump" {} + _AORGBHeightA ("AO (RGB) Height (A)", 2D) = "white" {} + _DisplacementR ("Displacement (R)", 2D) = "white" {} + _Depth ("Depth", Range(0, 0.25)) = 0.25 + _Diffuse ("Diffuse", 2D) = "white" {} + } + SubShader { + Tags { + "RenderType"="Opaque" + } + Pass { + Name "FORWARD" + Tags { + "LightMode"="ForwardBase" + } + + + CGPROGRAM + #pragma hull hull + #pragma domain domain + #pragma vertex tessvert + #pragma fragment frag + #define UNITY_PASS_FORWARDBASE + #define SHOULD_SAMPLE_SH ( defined (LIGHTMAP_OFF) && defined(DYNAMICLIGHTMAP_OFF) ) + #define _GLOSSYENV 1 + #include "UnityCG.cginc" + #include "AutoLight.cginc" + #include "Lighting.cginc" + #include "Tessellation.cginc" + #include "UnityPBSLighting.cginc" + #include "UnityStandardBRDF.cginc" + #pragma multi_compile_fwdbase_fullshadows + #pragma multi_compile LIGHTMAP_OFF LIGHTMAP_ON + #pragma multi_compile DIRLIGHTMAP_OFF DIRLIGHTMAP_COMBINED DIRLIGHTMAP_SEPARATE + #pragma multi_compile DYNAMICLIGHTMAP_OFF DYNAMICLIGHTMAP_ON + #pragma multi_compile_fog + #pragma only_renderers d3d9 d3d11 glcore gles3 metal d3d11_9x xboxone ps4 psp2 + #pragma target 5.0 + uniform sampler2D _Normals; uniform float4 _Normals_ST; + uniform float _Depth; + uniform sampler2D _DisplacementR; uniform float4 _DisplacementR_ST; + uniform sampler2D _AORGBHeightA; uniform float4 _AORGBHeightA_ST; + uniform sampler2D _Diffuse; uniform float4 _Diffuse_ST; + struct VertexInput { + float4 vertex : POSITION; + float3 normal : NORMAL; + float4 tangent : TANGENT; + float2 texcoord0 : TEXCOORD0; + float2 texcoord1 : TEXCOORD1; + float2 texcoord2 : TEXCOORD2; + }; + struct VertexOutput { + float4 pos : SV_POSITION; + float2 uv0 : TEXCOORD0; + float2 uv1 : TEXCOORD1; + float2 uv2 : TEXCOORD2; + float4 posWorld : TEXCOORD3; + float3 normalDir : TEXCOORD4; + float3 tangentDir : TEXCOORD5; + float3 bitangentDir : TEXCOORD6; + LIGHTING_COORDS(7,8) + UNITY_FOG_COORDS(9) + #if defined(LIGHTMAP_ON) || defined(UNITY_SHOULD_SAMPLE_SH) + float4 ambientOrLightmapUV : TEXCOORD10; + #endif + }; + VertexOutput vert (VertexInput v) { + VertexOutput o = (VertexOutput)0; + o.uv0 = v.texcoord0; + o.uv1 = v.texcoord1; + o.uv2 = v.texcoord2; + #ifdef LIGHTMAP_ON + o.ambientOrLightmapUV.xy = v.texcoord1.xy * unity_LightmapST.xy + unity_LightmapST.zw; + o.ambientOrLightmapUV.zw = 0; + #elif UNITY_SHOULD_SAMPLE_SH + #endif + #ifdef DYNAMICLIGHTMAP_ON + o.ambientOrLightmapUV.zw = v.texcoord2.xy * unity_DynamicLightmapST.xy + unity_DynamicLightmapST.zw; + #endif + o.normalDir = UnityObjectToWorldNormal(v.normal); + o.tangentDir = normalize( mul( unity_ObjectToWorld, float4( v.tangent.xyz, 0.0 ) ).xyz ); + o.bitangentDir = normalize(cross(o.normalDir, o.tangentDir) * v.tangent.w); + o.posWorld = mul(unity_ObjectToWorld, v.vertex); + float3 lightColor = _LightColor0.rgb; + o.pos = UnityObjectToClipPos( v.vertex ); + UNITY_TRANSFER_FOG(o,o.pos); + TRANSFER_VERTEX_TO_FRAGMENT(o) + return o; + } + #ifdef UNITY_CAN_COMPILE_TESSELLATION + struct TessVertex { + float4 vertex : INTERNALTESSPOS; + float3 normal : NORMAL; + float4 tangent : TANGENT; + float2 texcoord0 : TEXCOORD0; + float2 texcoord1 : TEXCOORD1; + float2 texcoord2 : TEXCOORD2; + }; + struct OutputPatchConstant { + float edge[3] : SV_TessFactor; + float inside : SV_InsideTessFactor; + float3 vTangent[4] : TANGENT; + float2 vUV[4] : TEXCOORD; + float3 vTanUCorner[4] : TANUCORNER; + float3 vTanVCorner[4] : TANVCORNER; + float4 vCWts : TANWEIGHTS; + }; + TessVertex tessvert (VertexInput v) { + TessVertex o; + o.vertex = v.vertex; + o.normal = v.normal; + o.tangent = v.tangent; + o.texcoord0 = v.texcoord0; + o.texcoord1 = v.texcoord1; + o.texcoord2 = v.texcoord2; + return o; + } + void displacement (inout VertexInput v){ + float4 node_21 = _Time; + float2 node_6 = (v.texcoord0*2.0); + float2 node_161 = (node_6+node_21.g*float2(0.4,0)); + float node_15 = 1.0; + float4 _DisplacementR_var = tex2Dlod(_DisplacementR,float4(TRANSFORM_TEX(node_161, _DisplacementR),0.0,node_15)); + float4 node_803 = tex2Dlod(_AORGBHeightA,float4(TRANSFORM_TEX(node_6, _AORGBHeightA),0.0,node_15)); + v.vertex.xyz += (v.normal*((1.0 - max(_DisplacementR_var.r,node_803.a))*((-1.0)*_Depth))); + } + float Tessellation(TessVertex v){ + return 3.0; + } + float4 Tessellation(TessVertex v, TessVertex v1, TessVertex v2){ + float tv = Tessellation(v); + float tv1 = Tessellation(v1); + float tv2 = Tessellation(v2); + return float4( tv1+tv2, tv2+tv, tv+tv1, tv+tv1+tv2 ) / float4(2,2,2,3); + } + OutputPatchConstant hullconst (InputPatch v) { + OutputPatchConstant o = (OutputPatchConstant)0; + float4 ts = Tessellation( v[0], v[1], v[2] ); + o.edge[0] = ts.x; + o.edge[1] = ts.y; + o.edge[2] = ts.z; + o.inside = ts.w; + return o; + } + [domain("tri")] + [partitioning("fractional_odd")] + [outputtopology("triangle_cw")] + [patchconstantfunc("hullconst")] + [outputcontrolpoints(3)] + TessVertex hull (InputPatch v, uint id : SV_OutputControlPointID) { + return v[id]; + } + [domain("tri")] + VertexOutput domain (OutputPatchConstant tessFactors, const OutputPatch vi, float3 bary : SV_DomainLocation) { + VertexInput v = (VertexInput)0; + v.vertex = vi[0].vertex*bary.x + vi[1].vertex*bary.y + vi[2].vertex*bary.z; + v.normal = vi[0].normal*bary.x + vi[1].normal*bary.y + vi[2].normal*bary.z; + v.tangent = vi[0].tangent*bary.x + vi[1].tangent*bary.y + vi[2].tangent*bary.z; + v.texcoord0 = vi[0].texcoord0*bary.x + vi[1].texcoord0*bary.y + vi[2].texcoord0*bary.z; + v.texcoord1 = vi[0].texcoord1*bary.x + vi[1].texcoord1*bary.y + vi[2].texcoord1*bary.z; + displacement(v); + VertexOutput o = vert(v); + return o; + } + #endif + float4 frag(VertexOutput i) : COLOR { + i.normalDir = normalize(i.normalDir); + float3x3 tangentTransform = float3x3( i.tangentDir, i.bitangentDir, i.normalDir); + float3 viewDirection = normalize(_WorldSpaceCameraPos.xyz - i.posWorld.xyz); + float2 node_6 = (i.uv0*2.0); + float3 _Normals_var = UnpackNormal(tex2D(_Normals,TRANSFORM_TEX(node_6, _Normals))); + float node_15 = 1.0; + float4 node_803 = tex2Dlod(_AORGBHeightA,float4(TRANSFORM_TEX(node_6, _AORGBHeightA),0.0,node_15)); + float4 node_21 = _Time; + float2 node_161 = (node_6+node_21.g*float2(0.4,0)); + float4 _DisplacementR_var = tex2Dlod(_DisplacementR,float4(TRANSFORM_TEX(node_161, _DisplacementR),0.0,node_15)); + float node_156 = saturate((node_803.a-_DisplacementR_var.r)); + float3 normalLocal = normalize(lerp(float3(0,0,1),_Normals_var.rgb,node_156)); + float3 normalDirection = normalize(mul( normalLocal, tangentTransform )); // Perturbed normals + float3 viewReflectDirection = reflect( -viewDirection, normalDirection ); + float3 lightDirection = normalize(_WorldSpaceLightPos0.xyz); + float3 lightColor = _LightColor0.rgb; + float3 halfDirection = normalize(viewDirection+lightDirection); +////// Lighting: + float attenuation = LIGHT_ATTENUATION(i); + float3 attenColor = attenuation * _LightColor0.xyz; +///////// Gloss: + float gloss = 10.0; + float specPow = exp2( gloss * 10.0 + 1.0 ); +/////// GI Data: + UnityLight light; + #ifdef LIGHTMAP_OFF + light.color = lightColor; + light.dir = lightDirection; + light.ndotl = LambertTerm (normalDirection, light.dir); + #else + light.color = half3(0.f, 0.f, 0.f); + light.ndotl = 0.0f; + light.dir = half3(0.f, 0.f, 0.f); + #endif + UnityGIInput d; + d.light = light; + d.worldPos = i.posWorld.xyz; + d.worldViewDir = viewDirection; + d.atten = attenuation; + #if defined(LIGHTMAP_ON) || defined(DYNAMICLIGHTMAP_ON) + d.ambient = 0; + d.lightmapUV = i.ambientOrLightmapUV; + #else + d.ambient = i.ambientOrLightmapUV; + #endif + #if UNITY_SPECCUBE_BLENDING || UNITY_SPECCUBE_BOX_PROJECTION + d.boxMin[0] = unity_SpecCube0_BoxMin; + d.boxMin[1] = unity_SpecCube1_BoxMin; + #endif + #if UNITY_SPECCUBE_BOX_PROJECTION + d.boxMax[0] = unity_SpecCube0_BoxMax; + d.boxMax[1] = unity_SpecCube1_BoxMax; + d.probePosition[0] = unity_SpecCube0_ProbePosition; + d.probePosition[1] = unity_SpecCube1_ProbePosition; + #endif + d.probeHDR[0] = unity_SpecCube0_HDR; + d.probeHDR[1] = unity_SpecCube1_HDR; + Unity_GlossyEnvironmentData ugls_en_data; + ugls_en_data.roughness = 1.0 - gloss; + ugls_en_data.reflUVW = viewReflectDirection; + UnityGI gi = UnityGlobalIllumination(d, 1, normalDirection, ugls_en_data ); + lightDirection = gi.light.dir; + lightColor = gi.light.color; +////// Specular: + float NdotL = saturate(dot( normalDirection, lightDirection )); + float4 _Diffuse_var = tex2D(_Diffuse,TRANSFORM_TEX(i.uv0, _Diffuse)); + float4 node_798 = tex2D(_AORGBHeightA,TRANSFORM_TEX(node_6, _AORGBHeightA)); + float3 node_162 = lerp(float3(0.4117647,0.3826572,0.3602941),(_Diffuse_var.rgb*node_798.rgb),node_156); + float node_165 = (node_156*node_162.r); + float3 specularColor = float3(node_165,node_165,node_165); + float3 directSpecular = attenColor * pow(max(0,dot(halfDirection,normalDirection)),specPow)*specularColor; + float3 indirectSpecular = (gi.indirect.specular)*specularColor; + float3 specular = (directSpecular + indirectSpecular); +/////// Diffuse: + NdotL = dot( normalDirection, lightDirection ); + float node_237 = (0.5*(1.0 - node_156)); + float3 w = float3(node_237,node_237,node_237)*0.5; // Light wrapping + float3 NdotLWrap = NdotL * ( 1.0 - w ); + float3 forwardLight = max(float3(0.0,0.0,0.0), NdotLWrap + w ); + NdotL = max(0.0,dot( normalDirection, lightDirection )); + float3 directDiffuse = forwardLight * attenColor; + float3 indirectDiffuse = float3(0,0,0); + indirectDiffuse += gi.indirect.diffuse; + float3 diffuseColor = node_162; + float3 diffuse = (directDiffuse + indirectDiffuse) * diffuseColor; +/// Final Color: + float3 finalColor = diffuse + specular; + fixed4 finalRGBA = fixed4(finalColor,1); + UNITY_APPLY_FOG(i.fogCoord, finalRGBA); + return finalRGBA; + } + ENDCG + } + Pass { + Name "FORWARD_DELTA" + Tags { + "LightMode"="ForwardAdd" + } + Blend One One + + + CGPROGRAM + #pragma hull hull + #pragma domain domain + #pragma vertex tessvert + #pragma fragment frag + #define UNITY_PASS_FORWARDADD + #define SHOULD_SAMPLE_SH ( defined (LIGHTMAP_OFF) && defined(DYNAMICLIGHTMAP_OFF) ) + #define _GLOSSYENV 1 + #include "UnityCG.cginc" + #include "AutoLight.cginc" + #include "Lighting.cginc" + #include "Tessellation.cginc" + #include "UnityPBSLighting.cginc" + #include "UnityStandardBRDF.cginc" + #pragma multi_compile_fwdadd_fullshadows + #pragma multi_compile LIGHTMAP_OFF LIGHTMAP_ON + #pragma multi_compile DIRLIGHTMAP_OFF DIRLIGHTMAP_COMBINED DIRLIGHTMAP_SEPARATE + #pragma multi_compile DYNAMICLIGHTMAP_OFF DYNAMICLIGHTMAP_ON + #pragma multi_compile_fog + #pragma only_renderers d3d9 d3d11 glcore gles3 metal d3d11_9x xboxone ps4 psp2 + #pragma target 5.0 + uniform sampler2D _Normals; uniform float4 _Normals_ST; + uniform float _Depth; + uniform sampler2D _DisplacementR; uniform float4 _DisplacementR_ST; + uniform sampler2D _AORGBHeightA; uniform float4 _AORGBHeightA_ST; + uniform sampler2D _Diffuse; uniform float4 _Diffuse_ST; + struct VertexInput { + float4 vertex : POSITION; + float3 normal : NORMAL; + float4 tangent : TANGENT; + float2 texcoord0 : TEXCOORD0; + float2 texcoord1 : TEXCOORD1; + float2 texcoord2 : TEXCOORD2; + }; + struct VertexOutput { + float4 pos : SV_POSITION; + float2 uv0 : TEXCOORD0; + float2 uv1 : TEXCOORD1; + float2 uv2 : TEXCOORD2; + float4 posWorld : TEXCOORD3; + float3 normalDir : TEXCOORD4; + float3 tangentDir : TEXCOORD5; + float3 bitangentDir : TEXCOORD6; + LIGHTING_COORDS(7,8) + UNITY_FOG_COORDS(9) + }; + VertexOutput vert (VertexInput v) { + VertexOutput o = (VertexOutput)0; + o.uv0 = v.texcoord0; + o.uv1 = v.texcoord1; + o.uv2 = v.texcoord2; + o.normalDir = UnityObjectToWorldNormal(v.normal); + o.tangentDir = normalize( mul( unity_ObjectToWorld, float4( v.tangent.xyz, 0.0 ) ).xyz ); + o.bitangentDir = normalize(cross(o.normalDir, o.tangentDir) * v.tangent.w); + o.posWorld = mul(unity_ObjectToWorld, v.vertex); + float3 lightColor = _LightColor0.rgb; + o.pos = UnityObjectToClipPos( v.vertex ); + UNITY_TRANSFER_FOG(o,o.pos); + TRANSFER_VERTEX_TO_FRAGMENT(o) + return o; + } + #ifdef UNITY_CAN_COMPILE_TESSELLATION + struct TessVertex { + float4 vertex : INTERNALTESSPOS; + float3 normal : NORMAL; + float4 tangent : TANGENT; + float2 texcoord0 : TEXCOORD0; + float2 texcoord1 : TEXCOORD1; + float2 texcoord2 : TEXCOORD2; + }; + struct OutputPatchConstant { + float edge[3] : SV_TessFactor; + float inside : SV_InsideTessFactor; + float3 vTangent[4] : TANGENT; + float2 vUV[4] : TEXCOORD; + float3 vTanUCorner[4] : TANUCORNER; + float3 vTanVCorner[4] : TANVCORNER; + float4 vCWts : TANWEIGHTS; + }; + TessVertex tessvert (VertexInput v) { + TessVertex o; + o.vertex = v.vertex; + o.normal = v.normal; + o.tangent = v.tangent; + o.texcoord0 = v.texcoord0; + o.texcoord1 = v.texcoord1; + o.texcoord2 = v.texcoord2; + return o; + } + void displacement (inout VertexInput v){ + float4 node_2942 = _Time; + float2 node_6 = (v.texcoord0*2.0); + float2 node_161 = (node_6+node_2942.g*float2(0.4,0)); + float node_15 = 1.0; + float4 _DisplacementR_var = tex2Dlod(_DisplacementR,float4(TRANSFORM_TEX(node_161, _DisplacementR),0.0,node_15)); + float4 node_803 = tex2Dlod(_AORGBHeightA,float4(TRANSFORM_TEX(node_6, _AORGBHeightA),0.0,node_15)); + v.vertex.xyz += (v.normal*((1.0 - max(_DisplacementR_var.r,node_803.a))*((-1.0)*_Depth))); + } + float Tessellation(TessVertex v){ + return 3.0; + } + float4 Tessellation(TessVertex v, TessVertex v1, TessVertex v2){ + float tv = Tessellation(v); + float tv1 = Tessellation(v1); + float tv2 = Tessellation(v2); + return float4( tv1+tv2, tv2+tv, tv+tv1, tv+tv1+tv2 ) / float4(2,2,2,3); + } + OutputPatchConstant hullconst (InputPatch v) { + OutputPatchConstant o = (OutputPatchConstant)0; + float4 ts = Tessellation( v[0], v[1], v[2] ); + o.edge[0] = ts.x; + o.edge[1] = ts.y; + o.edge[2] = ts.z; + o.inside = ts.w; + return o; + } + [domain("tri")] + [partitioning("fractional_odd")] + [outputtopology("triangle_cw")] + [patchconstantfunc("hullconst")] + [outputcontrolpoints(3)] + TessVertex hull (InputPatch v, uint id : SV_OutputControlPointID) { + return v[id]; + } + [domain("tri")] + VertexOutput domain (OutputPatchConstant tessFactors, const OutputPatch vi, float3 bary : SV_DomainLocation) { + VertexInput v = (VertexInput)0; + v.vertex = vi[0].vertex*bary.x + vi[1].vertex*bary.y + vi[2].vertex*bary.z; + v.normal = vi[0].normal*bary.x + vi[1].normal*bary.y + vi[2].normal*bary.z; + v.tangent = vi[0].tangent*bary.x + vi[1].tangent*bary.y + vi[2].tangent*bary.z; + v.texcoord0 = vi[0].texcoord0*bary.x + vi[1].texcoord0*bary.y + vi[2].texcoord0*bary.z; + v.texcoord1 = vi[0].texcoord1*bary.x + vi[1].texcoord1*bary.y + vi[2].texcoord1*bary.z; + displacement(v); + VertexOutput o = vert(v); + return o; + } + #endif + float4 frag(VertexOutput i) : COLOR { + i.normalDir = normalize(i.normalDir); + float3x3 tangentTransform = float3x3( i.tangentDir, i.bitangentDir, i.normalDir); + float3 viewDirection = normalize(_WorldSpaceCameraPos.xyz - i.posWorld.xyz); + float2 node_6 = (i.uv0*2.0); + float3 _Normals_var = UnpackNormal(tex2D(_Normals,TRANSFORM_TEX(node_6, _Normals))); + float node_15 = 1.0; + float4 node_803 = tex2Dlod(_AORGBHeightA,float4(TRANSFORM_TEX(node_6, _AORGBHeightA),0.0,node_15)); + float4 node_2942 = _Time; + float2 node_161 = (node_6+node_2942.g*float2(0.4,0)); + float4 _DisplacementR_var = tex2Dlod(_DisplacementR,float4(TRANSFORM_TEX(node_161, _DisplacementR),0.0,node_15)); + float node_156 = saturate((node_803.a-_DisplacementR_var.r)); + float3 normalLocal = normalize(lerp(float3(0,0,1),_Normals_var.rgb,node_156)); + float3 normalDirection = normalize(mul( normalLocal, tangentTransform )); // Perturbed normals + float3 lightDirection = normalize(lerp(_WorldSpaceLightPos0.xyz, _WorldSpaceLightPos0.xyz - i.posWorld.xyz,_WorldSpaceLightPos0.w)); + float3 lightColor = _LightColor0.rgb; + float3 halfDirection = normalize(viewDirection+lightDirection); +////// Lighting: + float attenuation = LIGHT_ATTENUATION(i); + float3 attenColor = attenuation * _LightColor0.xyz; +///////// Gloss: + float gloss = 10.0; + float specPow = exp2( gloss * 10.0 + 1.0 ); +////// Specular: + float NdotL = saturate(dot( normalDirection, lightDirection )); + float4 _Diffuse_var = tex2D(_Diffuse,TRANSFORM_TEX(i.uv0, _Diffuse)); + float4 node_798 = tex2D(_AORGBHeightA,TRANSFORM_TEX(node_6, _AORGBHeightA)); + float3 node_162 = lerp(float3(0.4117647,0.3826572,0.3602941),(_Diffuse_var.rgb*node_798.rgb),node_156); + float node_165 = (node_156*node_162.r); + float3 specularColor = float3(node_165,node_165,node_165); + float3 directSpecular = attenColor * pow(max(0,dot(halfDirection,normalDirection)),specPow)*specularColor; + float3 specular = directSpecular; +/////// Diffuse: + NdotL = dot( normalDirection, lightDirection ); + float node_237 = (0.5*(1.0 - node_156)); + float3 w = float3(node_237,node_237,node_237)*0.5; // Light wrapping + float3 NdotLWrap = NdotL * ( 1.0 - w ); + float3 forwardLight = max(float3(0.0,0.0,0.0), NdotLWrap + w ); + NdotL = max(0.0,dot( normalDirection, lightDirection )); + float3 directDiffuse = forwardLight * attenColor; + float3 diffuseColor = node_162; + float3 diffuse = directDiffuse * diffuseColor; +/// Final Color: + float3 finalColor = diffuse + specular; + fixed4 finalRGBA = fixed4(finalColor * 1,0); + UNITY_APPLY_FOG(i.fogCoord, finalRGBA); + return finalRGBA; + } + ENDCG + } + Pass { + Name "ShadowCaster" + Tags { + "LightMode"="ShadowCaster" + } + Offset 1, 1 + Cull Back + + CGPROGRAM + #pragma hull hull + #pragma domain domain + #pragma vertex tessvert + #pragma fragment frag + #define UNITY_PASS_SHADOWCASTER + #define SHOULD_SAMPLE_SH ( defined (LIGHTMAP_OFF) && defined(DYNAMICLIGHTMAP_OFF) ) + #define _GLOSSYENV 1 + #include "UnityCG.cginc" + #include "Lighting.cginc" + #include "Tessellation.cginc" + #include "UnityPBSLighting.cginc" + #include "UnityStandardBRDF.cginc" + #pragma fragmentoption ARB_precision_hint_fastest + #pragma multi_compile_shadowcaster + #pragma multi_compile LIGHTMAP_OFF LIGHTMAP_ON + #pragma multi_compile DIRLIGHTMAP_OFF DIRLIGHTMAP_COMBINED DIRLIGHTMAP_SEPARATE + #pragma multi_compile DYNAMICLIGHTMAP_OFF DYNAMICLIGHTMAP_ON + #pragma multi_compile_fog + #pragma only_renderers d3d9 d3d11 glcore gles3 metal d3d11_9x xboxone ps4 psp2 + #pragma target 5.0 + uniform float _Depth; + uniform sampler2D _DisplacementR; uniform float4 _DisplacementR_ST; + uniform sampler2D _AORGBHeightA; uniform float4 _AORGBHeightA_ST; + struct VertexInput { + float4 vertex : POSITION; + float3 normal : NORMAL; + float4 tangent : TANGENT; + float2 texcoord0 : TEXCOORD0; + float2 texcoord1 : TEXCOORD1; + float2 texcoord2 : TEXCOORD2; + }; + struct VertexOutput { + V2F_SHADOW_CASTER; + float2 uv0 : TEXCOORD1; + float2 uv1 : TEXCOORD2; + float2 uv2 : TEXCOORD3; + float4 posWorld : TEXCOORD4; + float3 normalDir : TEXCOORD5; + }; + VertexOutput vert (VertexInput v) { + VertexOutput o = (VertexOutput)0; + o.uv0 = v.texcoord0; + o.uv1 = v.texcoord1; + o.uv2 = v.texcoord2; + o.normalDir = UnityObjectToWorldNormal(v.normal); + o.posWorld = mul(unity_ObjectToWorld, v.vertex); + o.pos = UnityObjectToClipPos( v.vertex ); + TRANSFER_SHADOW_CASTER(o) + return o; + } + #ifdef UNITY_CAN_COMPILE_TESSELLATION + struct TessVertex { + float4 vertex : INTERNALTESSPOS; + float3 normal : NORMAL; + float4 tangent : TANGENT; + float2 texcoord0 : TEXCOORD0; + float2 texcoord1 : TEXCOORD1; + float2 texcoord2 : TEXCOORD2; + }; + struct OutputPatchConstant { + float edge[3] : SV_TessFactor; + float inside : SV_InsideTessFactor; + float3 vTangent[4] : TANGENT; + float2 vUV[4] : TEXCOORD; + float3 vTanUCorner[4] : TANUCORNER; + float3 vTanVCorner[4] : TANVCORNER; + float4 vCWts : TANWEIGHTS; + }; + TessVertex tessvert (VertexInput v) { + TessVertex o; + o.vertex = v.vertex; + o.normal = v.normal; + o.tangent = v.tangent; + o.texcoord0 = v.texcoord0; + o.texcoord1 = v.texcoord1; + o.texcoord2 = v.texcoord2; + return o; + } + void displacement (inout VertexInput v){ + float4 node_7647 = _Time; + float2 node_6 = (v.texcoord0*2.0); + float2 node_161 = (node_6+node_7647.g*float2(0.4,0)); + float node_15 = 1.0; + float4 _DisplacementR_var = tex2Dlod(_DisplacementR,float4(TRANSFORM_TEX(node_161, _DisplacementR),0.0,node_15)); + float4 node_803 = tex2Dlod(_AORGBHeightA,float4(TRANSFORM_TEX(node_6, _AORGBHeightA),0.0,node_15)); + v.vertex.xyz += (v.normal*((1.0 - max(_DisplacementR_var.r,node_803.a))*((-1.0)*_Depth))); + } + float Tessellation(TessVertex v){ + return 3.0; + } + float4 Tessellation(TessVertex v, TessVertex v1, TessVertex v2){ + float tv = Tessellation(v); + float tv1 = Tessellation(v1); + float tv2 = Tessellation(v2); + return float4( tv1+tv2, tv2+tv, tv+tv1, tv+tv1+tv2 ) / float4(2,2,2,3); + } + OutputPatchConstant hullconst (InputPatch v) { + OutputPatchConstant o = (OutputPatchConstant)0; + float4 ts = Tessellation( v[0], v[1], v[2] ); + o.edge[0] = ts.x; + o.edge[1] = ts.y; + o.edge[2] = ts.z; + o.inside = ts.w; + return o; + } + [domain("tri")] + [partitioning("fractional_odd")] + [outputtopology("triangle_cw")] + [patchconstantfunc("hullconst")] + [outputcontrolpoints(3)] + TessVertex hull (InputPatch v, uint id : SV_OutputControlPointID) { + return v[id]; + } + [domain("tri")] + VertexOutput domain (OutputPatchConstant tessFactors, const OutputPatch vi, float3 bary : SV_DomainLocation) { + VertexInput v = (VertexInput)0; + v.vertex = vi[0].vertex*bary.x + vi[1].vertex*bary.y + vi[2].vertex*bary.z; + v.normal = vi[0].normal*bary.x + vi[1].normal*bary.y + vi[2].normal*bary.z; + v.tangent = vi[0].tangent*bary.x + vi[1].tangent*bary.y + vi[2].tangent*bary.z; + v.texcoord0 = vi[0].texcoord0*bary.x + vi[1].texcoord0*bary.y + vi[2].texcoord0*bary.z; + v.texcoord1 = vi[0].texcoord1*bary.x + vi[1].texcoord1*bary.y + vi[2].texcoord1*bary.z; + displacement(v); + VertexOutput o = vert(v); + return o; + } + #endif + float4 frag(VertexOutput i) : COLOR { + i.normalDir = normalize(i.normalDir); + float3 viewDirection = normalize(_WorldSpaceCameraPos.xyz - i.posWorld.xyz); + float3 normalDirection = i.normalDir; + SHADOW_CASTER_FRAGMENT(i) + } + ENDCG + } + Pass { + Name "Meta" + Tags { + "LightMode"="Meta" + } + Cull Off + + CGPROGRAM + #pragma hull hull + #pragma domain domain + #pragma vertex tessvert + #pragma fragment frag + #define UNITY_PASS_META 1 + #define SHOULD_SAMPLE_SH ( defined (LIGHTMAP_OFF) && defined(DYNAMICLIGHTMAP_OFF) ) + #define _GLOSSYENV 1 + #include "UnityCG.cginc" + #include "Lighting.cginc" + #include "Tessellation.cginc" + #include "UnityPBSLighting.cginc" + #include "UnityStandardBRDF.cginc" + #include "UnityMetaPass.cginc" + #pragma fragmentoption ARB_precision_hint_fastest + #pragma multi_compile_shadowcaster + #pragma multi_compile LIGHTMAP_OFF LIGHTMAP_ON + #pragma multi_compile DIRLIGHTMAP_OFF DIRLIGHTMAP_COMBINED DIRLIGHTMAP_SEPARATE + #pragma multi_compile DYNAMICLIGHTMAP_OFF DYNAMICLIGHTMAP_ON + #pragma multi_compile_fog + #pragma only_renderers d3d9 d3d11 glcore gles3 metal d3d11_9x xboxone ps4 psp2 + #pragma target 5.0 + uniform float _Depth; + uniform sampler2D _DisplacementR; uniform float4 _DisplacementR_ST; + uniform sampler2D _AORGBHeightA; uniform float4 _AORGBHeightA_ST; + uniform sampler2D _Diffuse; uniform float4 _Diffuse_ST; + struct VertexInput { + float4 vertex : POSITION; + float3 normal : NORMAL; + float4 tangent : TANGENT; + float2 texcoord0 : TEXCOORD0; + float2 texcoord1 : TEXCOORD1; + float2 texcoord2 : TEXCOORD2; + }; + struct VertexOutput { + float4 pos : SV_POSITION; + float2 uv0 : TEXCOORD0; + float2 uv1 : TEXCOORD1; + float2 uv2 : TEXCOORD2; + float4 posWorld : TEXCOORD3; + float3 normalDir : TEXCOORD4; + }; + VertexOutput vert (VertexInput v) { + VertexOutput o = (VertexOutput)0; + o.uv0 = v.texcoord0; + o.uv1 = v.texcoord1; + o.uv2 = v.texcoord2; + o.normalDir = UnityObjectToWorldNormal(v.normal); + o.posWorld = mul(unity_ObjectToWorld, v.vertex); + o.pos = UnityMetaVertexPosition(v.vertex, v.texcoord1.xy, v.texcoord2.xy, unity_LightmapST, unity_DynamicLightmapST ); + return o; + } + #ifdef UNITY_CAN_COMPILE_TESSELLATION + struct TessVertex { + float4 vertex : INTERNALTESSPOS; + float3 normal : NORMAL; + float4 tangent : TANGENT; + float2 texcoord0 : TEXCOORD0; + float2 texcoord1 : TEXCOORD1; + float2 texcoord2 : TEXCOORD2; + }; + struct OutputPatchConstant { + float edge[3] : SV_TessFactor; + float inside : SV_InsideTessFactor; + float3 vTangent[4] : TANGENT; + float2 vUV[4] : TEXCOORD; + float3 vTanUCorner[4] : TANUCORNER; + float3 vTanVCorner[4] : TANVCORNER; + float4 vCWts : TANWEIGHTS; + }; + TessVertex tessvert (VertexInput v) { + TessVertex o; + o.vertex = v.vertex; + o.normal = v.normal; + o.tangent = v.tangent; + o.texcoord0 = v.texcoord0; + o.texcoord1 = v.texcoord1; + o.texcoord2 = v.texcoord2; + return o; + } + void displacement (inout VertexInput v){ + float4 node_5250 = _Time; + float2 node_6 = (v.texcoord0*2.0); + float2 node_161 = (node_6+node_5250.g*float2(0.4,0)); + float node_15 = 1.0; + float4 _DisplacementR_var = tex2Dlod(_DisplacementR,float4(TRANSFORM_TEX(node_161, _DisplacementR),0.0,node_15)); + float4 node_803 = tex2Dlod(_AORGBHeightA,float4(TRANSFORM_TEX(node_6, _AORGBHeightA),0.0,node_15)); + v.vertex.xyz += (v.normal*((1.0 - max(_DisplacementR_var.r,node_803.a))*((-1.0)*_Depth))); + } + float Tessellation(TessVertex v){ + return 3.0; + } + float4 Tessellation(TessVertex v, TessVertex v1, TessVertex v2){ + float tv = Tessellation(v); + float tv1 = Tessellation(v1); + float tv2 = Tessellation(v2); + return float4( tv1+tv2, tv2+tv, tv+tv1, tv+tv1+tv2 ) / float4(2,2,2,3); + } + OutputPatchConstant hullconst (InputPatch v) { + OutputPatchConstant o = (OutputPatchConstant)0; + float4 ts = Tessellation( v[0], v[1], v[2] ); + o.edge[0] = ts.x; + o.edge[1] = ts.y; + o.edge[2] = ts.z; + o.inside = ts.w; + return o; + } + [domain("tri")] + [partitioning("fractional_odd")] + [outputtopology("triangle_cw")] + [patchconstantfunc("hullconst")] + [outputcontrolpoints(3)] + TessVertex hull (InputPatch v, uint id : SV_OutputControlPointID) { + return v[id]; + } + [domain("tri")] + VertexOutput domain (OutputPatchConstant tessFactors, const OutputPatch vi, float3 bary : SV_DomainLocation) { + VertexInput v = (VertexInput)0; + v.vertex = vi[0].vertex*bary.x + vi[1].vertex*bary.y + vi[2].vertex*bary.z; + v.normal = vi[0].normal*bary.x + vi[1].normal*bary.y + vi[2].normal*bary.z; + v.tangent = vi[0].tangent*bary.x + vi[1].tangent*bary.y + vi[2].tangent*bary.z; + v.texcoord0 = vi[0].texcoord0*bary.x + vi[1].texcoord0*bary.y + vi[2].texcoord0*bary.z; + v.texcoord1 = vi[0].texcoord1*bary.x + vi[1].texcoord1*bary.y + vi[2].texcoord1*bary.z; + displacement(v); + VertexOutput o = vert(v); + return o; + } + #endif + float4 frag(VertexOutput i) : SV_Target { + i.normalDir = normalize(i.normalDir); + float3 viewDirection = normalize(_WorldSpaceCameraPos.xyz - i.posWorld.xyz); + float3 normalDirection = i.normalDir; + UnityMetaInput o; + UNITY_INITIALIZE_OUTPUT( UnityMetaInput, o ); + + o.Emission = 0; + + float4 _Diffuse_var = tex2D(_Diffuse,TRANSFORM_TEX(i.uv0, _Diffuse)); + float2 node_6 = (i.uv0*2.0); + float4 node_798 = tex2D(_AORGBHeightA,TRANSFORM_TEX(node_6, _AORGBHeightA)); + float node_15 = 1.0; + float4 node_803 = tex2Dlod(_AORGBHeightA,float4(TRANSFORM_TEX(node_6, _AORGBHeightA),0.0,node_15)); + float4 node_5250 = _Time; + float2 node_161 = (node_6+node_5250.g*float2(0.4,0)); + float4 _DisplacementR_var = tex2Dlod(_DisplacementR,float4(TRANSFORM_TEX(node_161, _DisplacementR),0.0,node_15)); + float node_156 = saturate((node_803.a-_DisplacementR_var.r)); + float3 node_162 = lerp(float3(0.4117647,0.3826572,0.3602941),(_Diffuse_var.rgb*node_798.rgb),node_156); + float3 diffColor = node_162; + float node_165 = (node_156*node_162.r); + float3 specColor = float3(node_165,node_165,node_165); + float roughness = 1.0 - 10.0; + o.Albedo = diffColor + specColor * roughness * roughness * 0.5; + + return UnityMetaFragment( o ); + } + ENDCG + } + } + FallBack "Diffuse" + CustomEditor "ShaderForgeMaterialInspector" +} diff --git a/Examples/TessellationDisplacement.shader.meta b/Examples/TessellationDisplacement.shader.meta new file mode 100644 index 00000000..5b0ae774 --- /dev/null +++ b/Examples/TessellationDisplacement.shader.meta @@ -0,0 +1,13 @@ +fileFormatVersion: 2 +guid: 5e81283b11113de4295d1943aec0a765 +timeCreated: 1503327524 +licenseType: Store +ShaderImporter: + defaultTextures: + - _Normals: {fileID: 2800000, guid: cf20bfced7e912046a9ce991a4d775ec, type: 3} + - _DisplacementR: {fileID: 2800000, guid: 28c7aad1372ff114b90d330f8a2dd938, type: 3} + - _AORGBHeightA: {fileID: 2800000, guid: 5fb7986dd6d0a8e4093ba82369dd6a4d, type: 3} + - _Diffuse: {fileID: 2800000, guid: b66bceaf0cc0ace4e9bdc92f14bba709, type: 3} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Examples/Tiles.mat b/Examples/Tiles.mat new file mode 100644 index 00000000..3897df91 --- /dev/null +++ b/Examples/Tiles.mat @@ -0,0 +1,192 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!21 &2100000 +Material: + serializedVersion: 5 + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + m_Name: Tiles + m_Shader: {fileID: 4800000, guid: 05eb3a2c382b4154cb71394a349d0909, type: 3} + m_ShaderKeywords: + m_LightmapFlags: 5 + m_CustomRenderQueue: -1 + m_SavedProperties: + serializedVersion: 2 + m_TexEnvs: + data: + first: + name: _Normal2 + second: + m_Texture: {fileID: 2800000, guid: c6dfb00dbee6bc044a8a3bb22e56e064, type: 3} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + data: + first: + name: _Normal3 + second: + m_Texture: {fileID: 2800000, guid: c6dfb00dbee6bc044a8a3bb22e56e064, type: 3} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + data: + first: + name: _Gloss + second: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + data: + first: + name: _Diffuse + second: + m_Texture: {fileID: 2800000, guid: b66bceaf0cc0ace4e9bdc92f14bba709, type: 3} + m_Scale: {x: 1.5, y: 1.5} + m_Offset: {x: 0, y: 0} + data: + first: + name: _Specular + second: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + data: + first: + name: _Normal + second: + m_Texture: {fileID: 2800000, guid: bbab0a6f7bae9cf42bf057d8ee2755f6, type: 3} + m_Scale: {x: 1.5, y: 1.5} + m_Offset: {x: 0, y: 0} + data: + first: + name: _node2 + second: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + data: + first: + name: _node_1 + second: + m_Texture: {fileID: 2800000, guid: b66bceaf0cc0ace4e9bdc92f14bba709, type: 3} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + data: + first: + name: _node_2 + second: + m_Texture: {fileID: 2800000, guid: 91730f8ee98c48e42aff09048fbbfaaa, type: 3} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + data: + first: + name: _node_18 + second: + m_Texture: {fileID: 2800000, guid: 28c7aad1372ff114b90d330f8a2dd938, type: 3} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + data: + first: + name: _SpecularIBL + second: + m_Texture: {fileID: 8900000, guid: f466cf7415226e046b096197eb7341aa, type: 2} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + data: + first: + name: _Blend + second: + m_Texture: {fileID: 2800000, guid: 6a985dfcd1d3ca94e9753748ed65c697, type: 3} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + data: + first: + name: _node1 + second: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + data: + first: + name: _node18 + second: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + data: + first: + name: _WetMask + second: + m_Texture: {fileID: 2800000, guid: 28c7aad1372ff114b90d330f8a2dd938, type: 3} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + data: + first: + name: _DiffuseA + second: + m_Texture: {fileID: 2800000, guid: b66bceaf0cc0ace4e9bdc92f14bba709, type: 3} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + data: + first: + name: _DiffuseB + second: + m_Texture: {fileID: 2800000, guid: 26c22711225093d47bd4f1294ca52131, type: 3} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + data: + first: + name: _NormalA + second: + m_Texture: {fileID: 2800000, guid: 91730f8ee98c48e42aff09048fbbfaaa, type: 3} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + data: + first: + name: _NormalB + second: + m_Texture: {fileID: 2800000, guid: 80286949e259c2d44876306923857245, type: 3} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + data: + first: + name: _Diffuse2 + second: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + data: + first: + name: _node141 + second: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + data: + first: + name: _BaseColor + second: + m_Texture: {fileID: 2800000, guid: b66bceaf0cc0ace4e9bdc92f14bba709, type: 3} + m_Scale: {x: 1.5, y: 1.5} + m_Offset: {x: 0, y: 0} + m_Floats: + data: + first: + name: _Metallic + second: 0 + data: + first: + name: _Gloss + second: .372999996 + data: + first: + name: _Specular + second: .125 + data: + first: + name: _node_8 + second: .0653950945 + m_Colors: + data: + first: + name: _Color + second: {r: 1, g: 1, b: 1, a: 1} diff --git a/Examples/Tiles.mat.meta b/Examples/Tiles.mat.meta new file mode 100644 index 00000000..649c589c --- /dev/null +++ b/Examples/Tiles.mat.meta @@ -0,0 +1,4 @@ +fileFormatVersion: 2 +guid: 393931f1639a1fe40b68d72551bef241 +NativeFormatImporter: + userData: diff --git a/Examples/Tiles.shader b/Examples/Tiles.shader new file mode 100644 index 00000000..b5b66d30 --- /dev/null +++ b/Examples/Tiles.shader @@ -0,0 +1,396 @@ +// Shader created with Shader Forge v1.38 +// Shader Forge (c) Neat Corporation / Joachim Holmer - http://www.acegikmo.com/shaderforge/ +// Note: Manually altering this data may prevent you from opening it in Shader Forge +/*SF_DATA;ver:1.38;sub:START;pass:START;ps:flbk:,iptp:0,cusa:False,bamd:0,cgin:,lico:1,lgpr:1,limd:3,spmd:1,trmd:0,grmd:0,uamb:True,mssp:True,bkdf:True,hqlp:False,rprd:True,enco:False,rmgx:True,imps:True,rpth:0,vtps:0,hqsc:True,nrmq:1,nrsp:0,vomd:0,spxs:False,tesm:0,olmd:1,culm:0,bsrc:0,bdst:1,dpts:2,wrdp:True,dith:0,atcv:False,rfrpo:True,rfrpn:Refraction,coma:15,ufog:True,aust:True,igpj:False,qofs:0,qpre:1,rntp:1,fgom:False,fgoc:False,fgod:False,fgor:False,fgmd:0,fgcr:0.5,fgcg:0.5,fgcb:0.5,fgca:1,fgde:0.01,fgrn:0,fgrf:300,stcl:False,atwp:False,stva:128,stmr:255,stmw:255,stcp:6,stps:0,stfa:0,stfz:0,ofsf:0,ofsu:0,f2p0:False,fnsp:False,fnfb:False,fsmp:False;n:type:ShaderForge.SFN_Final,id:0,x:33638,y:32808,varname:node_0,prsc:2|diff-138-RGB,spec-145-OUT,gloss-144-OUT;n:type:ShaderForge.SFN_Tex2d,id:138,x:33259,y:32700,ptovrint:False,ptlb:Base Color,ptin:_BaseColor,varname:_Diffuse,prsc:2,glob:False,taghide:False,taghdr:False,tagprd:False,tagnsco:False,tagnrm:False,tex:b66bceaf0cc0ace4e9bdc92f14bba709,ntxv:0,isnm:False;n:type:ShaderForge.SFN_Slider,id:144,x:33102,y:32979,ptovrint:False,ptlb:Gloss,ptin:_Gloss,varname:_Gloss,prsc:2,glob:False,taghide:False,taghdr:False,tagprd:False,tagnsco:False,tagnrm:False,min:0,cur:0.5,max:1;n:type:ShaderForge.SFN_Slider,id:145,x:33102,y:32879,ptovrint:False,ptlb:Metallic,ptin:_Metallic,varname:_Specular,prsc:2,glob:False,taghide:False,taghdr:False,tagprd:False,tagnsco:False,tagnrm:False,min:0,cur:0,max:1;proporder:138-145-144;pass:END;sub:END;*/ + +Shader "Shader Forge/Examples/Tiles" { + Properties { + _BaseColor ("Base Color", 2D) = "white" {} + _Metallic ("Metallic", Range(0, 1)) = 0 + _Gloss ("Gloss", Range(0, 1)) = 0.5 + } + SubShader { + Tags { + "RenderType"="Opaque" + } + Pass { + Name "FORWARD" + Tags { + "LightMode"="ForwardBase" + } + + + CGPROGRAM + #pragma vertex vert + #pragma fragment frag + #define UNITY_PASS_FORWARDBASE + #define SHOULD_SAMPLE_SH ( defined (LIGHTMAP_OFF) && defined(DYNAMICLIGHTMAP_OFF) ) + #define _GLOSSYENV 1 + #include "UnityCG.cginc" + #include "AutoLight.cginc" + #include "Lighting.cginc" + #include "UnityPBSLighting.cginc" + #include "UnityStandardBRDF.cginc" + #pragma multi_compile_fwdbase_fullshadows + #pragma multi_compile LIGHTMAP_OFF LIGHTMAP_ON + #pragma multi_compile DIRLIGHTMAP_OFF DIRLIGHTMAP_COMBINED DIRLIGHTMAP_SEPARATE + #pragma multi_compile DYNAMICLIGHTMAP_OFF DYNAMICLIGHTMAP_ON + #pragma multi_compile_fog + #pragma only_renderers d3d9 d3d11 glcore gles gles3 metal d3d11_9x xboxone ps4 psp2 n3ds wiiu + #pragma target 3.0 + uniform sampler2D _BaseColor; uniform float4 _BaseColor_ST; + uniform float _Gloss; + uniform float _Metallic; + struct VertexInput { + float4 vertex : POSITION; + float3 normal : NORMAL; + float4 tangent : TANGENT; + float2 texcoord0 : TEXCOORD0; + float2 texcoord1 : TEXCOORD1; + float2 texcoord2 : TEXCOORD2; + }; + struct VertexOutput { + float4 pos : SV_POSITION; + float2 uv0 : TEXCOORD0; + float2 uv1 : TEXCOORD1; + float2 uv2 : TEXCOORD2; + float4 posWorld : TEXCOORD3; + float3 normalDir : TEXCOORD4; + float3 tangentDir : TEXCOORD5; + float3 bitangentDir : TEXCOORD6; + LIGHTING_COORDS(7,8) + UNITY_FOG_COORDS(9) + #if defined(LIGHTMAP_ON) || defined(UNITY_SHOULD_SAMPLE_SH) + float4 ambientOrLightmapUV : TEXCOORD10; + #endif + }; + VertexOutput vert (VertexInput v) { + VertexOutput o = (VertexOutput)0; + o.uv0 = v.texcoord0; + o.uv1 = v.texcoord1; + o.uv2 = v.texcoord2; + #ifdef LIGHTMAP_ON + o.ambientOrLightmapUV.xy = v.texcoord1.xy * unity_LightmapST.xy + unity_LightmapST.zw; + o.ambientOrLightmapUV.zw = 0; + #elif UNITY_SHOULD_SAMPLE_SH + #endif + #ifdef DYNAMICLIGHTMAP_ON + o.ambientOrLightmapUV.zw = v.texcoord2.xy * unity_DynamicLightmapST.xy + unity_DynamicLightmapST.zw; + #endif + o.normalDir = UnityObjectToWorldNormal(v.normal); + o.tangentDir = normalize( mul( unity_ObjectToWorld, float4( v.tangent.xyz, 0.0 ) ).xyz ); + o.bitangentDir = normalize(cross(o.normalDir, o.tangentDir) * v.tangent.w); + o.posWorld = mul(unity_ObjectToWorld, v.vertex); + float3 lightColor = _LightColor0.rgb; + o.pos = UnityObjectToClipPos( v.vertex ); + UNITY_TRANSFER_FOG(o,o.pos); + TRANSFER_VERTEX_TO_FRAGMENT(o) + return o; + } + float4 frag(VertexOutput i) : COLOR { + i.normalDir = normalize(i.normalDir); + float3x3 tangentTransform = float3x3( i.tangentDir, i.bitangentDir, i.normalDir); + float3 viewDirection = normalize(_WorldSpaceCameraPos.xyz - i.posWorld.xyz); + float3 normalDirection = i.normalDir; + float3 viewReflectDirection = reflect( -viewDirection, normalDirection ); + float3 lightDirection = normalize(_WorldSpaceLightPos0.xyz); + float3 lightColor = _LightColor0.rgb; + float3 halfDirection = normalize(viewDirection+lightDirection); +////// Lighting: + float attenuation = LIGHT_ATTENUATION(i); + float3 attenColor = attenuation * _LightColor0.xyz; + float Pi = 3.141592654; + float InvPi = 0.31830988618; +///////// Gloss: + float gloss = _Gloss; + float perceptualRoughness = 1.0 - _Gloss; + float roughness = perceptualRoughness * perceptualRoughness; + float specPow = exp2( gloss * 10.0 + 1.0 ); +/////// GI Data: + UnityLight light; + #ifdef LIGHTMAP_OFF + light.color = lightColor; + light.dir = lightDirection; + light.ndotl = LambertTerm (normalDirection, light.dir); + #else + light.color = half3(0.f, 0.f, 0.f); + light.ndotl = 0.0f; + light.dir = half3(0.f, 0.f, 0.f); + #endif + UnityGIInput d; + d.light = light; + d.worldPos = i.posWorld.xyz; + d.worldViewDir = viewDirection; + d.atten = attenuation; + #if defined(LIGHTMAP_ON) || defined(DYNAMICLIGHTMAP_ON) + d.ambient = 0; + d.lightmapUV = i.ambientOrLightmapUV; + #else + d.ambient = i.ambientOrLightmapUV; + #endif + #if UNITY_SPECCUBE_BLENDING || UNITY_SPECCUBE_BOX_PROJECTION + d.boxMin[0] = unity_SpecCube0_BoxMin; + d.boxMin[1] = unity_SpecCube1_BoxMin; + #endif + #if UNITY_SPECCUBE_BOX_PROJECTION + d.boxMax[0] = unity_SpecCube0_BoxMax; + d.boxMax[1] = unity_SpecCube1_BoxMax; + d.probePosition[0] = unity_SpecCube0_ProbePosition; + d.probePosition[1] = unity_SpecCube1_ProbePosition; + #endif + d.probeHDR[0] = unity_SpecCube0_HDR; + d.probeHDR[1] = unity_SpecCube1_HDR; + Unity_GlossyEnvironmentData ugls_en_data; + ugls_en_data.roughness = 1.0 - gloss; + ugls_en_data.reflUVW = viewReflectDirection; + UnityGI gi = UnityGlobalIllumination(d, 1, normalDirection, ugls_en_data ); + lightDirection = gi.light.dir; + lightColor = gi.light.color; +////// Specular: + float NdotL = saturate(dot( normalDirection, lightDirection )); + float LdotH = saturate(dot(lightDirection, halfDirection)); + float3 specularColor = _Metallic; + float specularMonochrome; + float4 _BaseColor_var = tex2D(_BaseColor,TRANSFORM_TEX(i.uv0, _BaseColor)); + float3 diffuseColor = _BaseColor_var.rgb; // Need this for specular when using metallic + diffuseColor = DiffuseAndSpecularFromMetallic( diffuseColor, specularColor, specularColor, specularMonochrome ); + specularMonochrome = 1.0-specularMonochrome; + float NdotV = abs(dot( normalDirection, viewDirection )); + float NdotH = saturate(dot( normalDirection, halfDirection )); + float VdotH = saturate(dot( viewDirection, halfDirection )); + float visTerm = SmithJointGGXVisibilityTerm( NdotL, NdotV, roughness ); + float normTerm = GGXTerm(NdotH, roughness); + float specularPBL = (visTerm*normTerm) * UNITY_PI; + #ifdef UNITY_COLORSPACE_GAMMA + specularPBL = sqrt(max(1e-4h, specularPBL)); + #endif + specularPBL = max(0, specularPBL * NdotL); + #if defined(_SPECULARHIGHLIGHTS_OFF) + specularPBL = 0.0; + #endif + half surfaceReduction; + #ifdef UNITY_COLORSPACE_GAMMA + surfaceReduction = 1.0-0.28*roughness*perceptualRoughness; + #else + surfaceReduction = 1.0/(roughness*roughness + 1.0); + #endif + specularPBL *= any(specularColor) ? 1.0 : 0.0; + float3 directSpecular = attenColor*specularPBL*FresnelTerm(specularColor, LdotH); + half grazingTerm = saturate( gloss + specularMonochrome ); + float3 indirectSpecular = (gi.indirect.specular); + indirectSpecular *= FresnelLerp (specularColor, grazingTerm, NdotV); + indirectSpecular *= surfaceReduction; + float3 specular = (directSpecular + indirectSpecular); +/////// Diffuse: + NdotL = max(0.0,dot( normalDirection, lightDirection )); + half fd90 = 0.5 + 2 * LdotH * LdotH * (1-gloss); + float nlPow5 = Pow5(1-NdotL); + float nvPow5 = Pow5(1-NdotV); + float3 directDiffuse = ((1 +(fd90 - 1)*nlPow5) * (1 + (fd90 - 1)*nvPow5) * NdotL) * attenColor; + float3 indirectDiffuse = float3(0,0,0); + indirectDiffuse += gi.indirect.diffuse; + float3 diffuse = (directDiffuse + indirectDiffuse) * diffuseColor; +/// Final Color: + float3 finalColor = diffuse + specular; + fixed4 finalRGBA = fixed4(finalColor,1); + UNITY_APPLY_FOG(i.fogCoord, finalRGBA); + return finalRGBA; + } + ENDCG + } + Pass { + Name "FORWARD_DELTA" + Tags { + "LightMode"="ForwardAdd" + } + Blend One One + + + CGPROGRAM + #pragma vertex vert + #pragma fragment frag + #define UNITY_PASS_FORWARDADD + #define SHOULD_SAMPLE_SH ( defined (LIGHTMAP_OFF) && defined(DYNAMICLIGHTMAP_OFF) ) + #define _GLOSSYENV 1 + #include "UnityCG.cginc" + #include "AutoLight.cginc" + #include "Lighting.cginc" + #include "UnityPBSLighting.cginc" + #include "UnityStandardBRDF.cginc" + #pragma multi_compile_fwdadd_fullshadows + #pragma multi_compile LIGHTMAP_OFF LIGHTMAP_ON + #pragma multi_compile DIRLIGHTMAP_OFF DIRLIGHTMAP_COMBINED DIRLIGHTMAP_SEPARATE + #pragma multi_compile DYNAMICLIGHTMAP_OFF DYNAMICLIGHTMAP_ON + #pragma multi_compile_fog + #pragma only_renderers d3d9 d3d11 glcore gles gles3 metal d3d11_9x xboxone ps4 psp2 n3ds wiiu + #pragma target 3.0 + uniform sampler2D _BaseColor; uniform float4 _BaseColor_ST; + uniform float _Gloss; + uniform float _Metallic; + struct VertexInput { + float4 vertex : POSITION; + float3 normal : NORMAL; + float4 tangent : TANGENT; + float2 texcoord0 : TEXCOORD0; + float2 texcoord1 : TEXCOORD1; + float2 texcoord2 : TEXCOORD2; + }; + struct VertexOutput { + float4 pos : SV_POSITION; + float2 uv0 : TEXCOORD0; + float2 uv1 : TEXCOORD1; + float2 uv2 : TEXCOORD2; + float4 posWorld : TEXCOORD3; + float3 normalDir : TEXCOORD4; + float3 tangentDir : TEXCOORD5; + float3 bitangentDir : TEXCOORD6; + LIGHTING_COORDS(7,8) + UNITY_FOG_COORDS(9) + }; + VertexOutput vert (VertexInput v) { + VertexOutput o = (VertexOutput)0; + o.uv0 = v.texcoord0; + o.uv1 = v.texcoord1; + o.uv2 = v.texcoord2; + o.normalDir = UnityObjectToWorldNormal(v.normal); + o.tangentDir = normalize( mul( unity_ObjectToWorld, float4( v.tangent.xyz, 0.0 ) ).xyz ); + o.bitangentDir = normalize(cross(o.normalDir, o.tangentDir) * v.tangent.w); + o.posWorld = mul(unity_ObjectToWorld, v.vertex); + float3 lightColor = _LightColor0.rgb; + o.pos = UnityObjectToClipPos( v.vertex ); + UNITY_TRANSFER_FOG(o,o.pos); + TRANSFER_VERTEX_TO_FRAGMENT(o) + return o; + } + float4 frag(VertexOutput i) : COLOR { + i.normalDir = normalize(i.normalDir); + float3x3 tangentTransform = float3x3( i.tangentDir, i.bitangentDir, i.normalDir); + float3 viewDirection = normalize(_WorldSpaceCameraPos.xyz - i.posWorld.xyz); + float3 normalDirection = i.normalDir; + float3 lightDirection = normalize(lerp(_WorldSpaceLightPos0.xyz, _WorldSpaceLightPos0.xyz - i.posWorld.xyz,_WorldSpaceLightPos0.w)); + float3 lightColor = _LightColor0.rgb; + float3 halfDirection = normalize(viewDirection+lightDirection); +////// Lighting: + float attenuation = LIGHT_ATTENUATION(i); + float3 attenColor = attenuation * _LightColor0.xyz; + float Pi = 3.141592654; + float InvPi = 0.31830988618; +///////// Gloss: + float gloss = _Gloss; + float perceptualRoughness = 1.0 - _Gloss; + float roughness = perceptualRoughness * perceptualRoughness; + float specPow = exp2( gloss * 10.0 + 1.0 ); +////// Specular: + float NdotL = saturate(dot( normalDirection, lightDirection )); + float LdotH = saturate(dot(lightDirection, halfDirection)); + float3 specularColor = _Metallic; + float specularMonochrome; + float4 _BaseColor_var = tex2D(_BaseColor,TRANSFORM_TEX(i.uv0, _BaseColor)); + float3 diffuseColor = _BaseColor_var.rgb; // Need this for specular when using metallic + diffuseColor = DiffuseAndSpecularFromMetallic( diffuseColor, specularColor, specularColor, specularMonochrome ); + specularMonochrome = 1.0-specularMonochrome; + float NdotV = abs(dot( normalDirection, viewDirection )); + float NdotH = saturate(dot( normalDirection, halfDirection )); + float VdotH = saturate(dot( viewDirection, halfDirection )); + float visTerm = SmithJointGGXVisibilityTerm( NdotL, NdotV, roughness ); + float normTerm = GGXTerm(NdotH, roughness); + float specularPBL = (visTerm*normTerm) * UNITY_PI; + #ifdef UNITY_COLORSPACE_GAMMA + specularPBL = sqrt(max(1e-4h, specularPBL)); + #endif + specularPBL = max(0, specularPBL * NdotL); + #if defined(_SPECULARHIGHLIGHTS_OFF) + specularPBL = 0.0; + #endif + specularPBL *= any(specularColor) ? 1.0 : 0.0; + float3 directSpecular = attenColor*specularPBL*FresnelTerm(specularColor, LdotH); + float3 specular = directSpecular; +/////// Diffuse: + NdotL = max(0.0,dot( normalDirection, lightDirection )); + half fd90 = 0.5 + 2 * LdotH * LdotH * (1-gloss); + float nlPow5 = Pow5(1-NdotL); + float nvPow5 = Pow5(1-NdotV); + float3 directDiffuse = ((1 +(fd90 - 1)*nlPow5) * (1 + (fd90 - 1)*nvPow5) * NdotL) * attenColor; + float3 diffuse = directDiffuse * diffuseColor; +/// Final Color: + float3 finalColor = diffuse + specular; + fixed4 finalRGBA = fixed4(finalColor * 1,0); + UNITY_APPLY_FOG(i.fogCoord, finalRGBA); + return finalRGBA; + } + ENDCG + } + Pass { + Name "Meta" + Tags { + "LightMode"="Meta" + } + Cull Off + + CGPROGRAM + #pragma vertex vert + #pragma fragment frag + #define UNITY_PASS_META 1 + #define SHOULD_SAMPLE_SH ( defined (LIGHTMAP_OFF) && defined(DYNAMICLIGHTMAP_OFF) ) + #define _GLOSSYENV 1 + #include "UnityCG.cginc" + #include "Lighting.cginc" + #include "UnityPBSLighting.cginc" + #include "UnityStandardBRDF.cginc" + #include "UnityMetaPass.cginc" + #pragma fragmentoption ARB_precision_hint_fastest + #pragma multi_compile_shadowcaster + #pragma multi_compile LIGHTMAP_OFF LIGHTMAP_ON + #pragma multi_compile DIRLIGHTMAP_OFF DIRLIGHTMAP_COMBINED DIRLIGHTMAP_SEPARATE + #pragma multi_compile DYNAMICLIGHTMAP_OFF DYNAMICLIGHTMAP_ON + #pragma multi_compile_fog + #pragma only_renderers d3d9 d3d11 glcore gles gles3 metal d3d11_9x xboxone ps4 psp2 n3ds wiiu + #pragma target 3.0 + uniform sampler2D _BaseColor; uniform float4 _BaseColor_ST; + uniform float _Gloss; + uniform float _Metallic; + struct VertexInput { + float4 vertex : POSITION; + float2 texcoord0 : TEXCOORD0; + float2 texcoord1 : TEXCOORD1; + float2 texcoord2 : TEXCOORD2; + }; + struct VertexOutput { + float4 pos : SV_POSITION; + float2 uv0 : TEXCOORD0; + float2 uv1 : TEXCOORD1; + float2 uv2 : TEXCOORD2; + float4 posWorld : TEXCOORD3; + }; + VertexOutput vert (VertexInput v) { + VertexOutput o = (VertexOutput)0; + o.uv0 = v.texcoord0; + o.uv1 = v.texcoord1; + o.uv2 = v.texcoord2; + o.posWorld = mul(unity_ObjectToWorld, v.vertex); + o.pos = UnityMetaVertexPosition(v.vertex, v.texcoord1.xy, v.texcoord2.xy, unity_LightmapST, unity_DynamicLightmapST ); + return o; + } + float4 frag(VertexOutput i) : SV_Target { + float3 viewDirection = normalize(_WorldSpaceCameraPos.xyz - i.posWorld.xyz); + UnityMetaInput o; + UNITY_INITIALIZE_OUTPUT( UnityMetaInput, o ); + + o.Emission = 0; + + float4 _BaseColor_var = tex2D(_BaseColor,TRANSFORM_TEX(i.uv0, _BaseColor)); + float3 diffColor = _BaseColor_var.rgb; + float specularMonochrome; + float3 specColor; + diffColor = DiffuseAndSpecularFromMetallic( diffColor, _Metallic, specColor, specularMonochrome ); + float roughness = 1.0 - _Gloss; + o.Albedo = diffColor + specColor * roughness * roughness * 0.5; + + return UnityMetaFragment( o ); + } + ENDCG + } + } + FallBack "Diffuse" + CustomEditor "ShaderForgeMaterialInspector" +} diff --git a/Examples/Tiles.shader.meta b/Examples/Tiles.shader.meta new file mode 100644 index 00000000..865e1b6d --- /dev/null +++ b/Examples/Tiles.shader.meta @@ -0,0 +1,10 @@ +fileFormatVersion: 2 +guid: 05eb3a2c382b4154cb71394a349d0909 +timeCreated: 1503327527 +licenseType: Store +ShaderImporter: + defaultTextures: + - _BaseColor: {fileID: 2800000, guid: b66bceaf0cc0ace4e9bdc92f14bba709, type: 3} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Examples/Vegetation.mat b/Examples/Vegetation.mat new file mode 100644 index 00000000..cc6d638e --- /dev/null +++ b/Examples/Vegetation.mat @@ -0,0 +1,85 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!21 &2100000 +Material: + serializedVersion: 6 + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + m_Name: Vegetation + m_Shader: {fileID: 4800000, guid: e17d9c256530145c39caf8efc8c94a16, type: 3} + m_ShaderKeywords: + m_LightmapFlags: 5 + m_CustomRenderQueue: -1 + stringTagMap: {} + m_SavedProperties: + serializedVersion: 2 + m_TexEnvs: + - first: + name: _Diffuse + second: + m_Texture: {fileID: 2800000, guid: 66321cc856b03e245ac41ed8a53e0ecc, type: 3} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - first: + name: _Normal + second: + m_Texture: {fileID: 2800000, guid: cb6c5165ed180c543be39ed70e72abc8, type: 3} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - first: + name: _Normals + second: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - first: + name: _node7 + second: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - first: + name: _node8 + second: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - first: + name: _node_1 + second: + m_Texture: {fileID: 2800000, guid: 66321cc856b03e245ac41ed8a53e0ecc, type: 3} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - first: + name: _node_18 + second: + m_Texture: {fileID: 2800000, guid: 28c7aad1372ff114b90d330f8a2dd938, type: 3} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - first: + name: _node_2 + second: + m_Texture: {fileID: 2800000, guid: cb6c5165ed180c543be39ed70e72abc8, type: 3} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - first: + name: _node_4 + second: + m_Texture: {fileID: 2800000, guid: 80286949e259c2d44876306923857245, type: 3} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + m_Floats: + - first: + name: _Cutoff + second: 0.64285713 + - first: + name: _node11 + second: 1.5357143 + - first: + name: _node294 + second: 0 + - first: + name: _node_8 + second: 0.065395094 + m_Colors: [] diff --git a/Examples/Vegetation.mat.meta b/Examples/Vegetation.mat.meta new file mode 100644 index 00000000..4dcafcf7 --- /dev/null +++ b/Examples/Vegetation.mat.meta @@ -0,0 +1,4 @@ +fileFormatVersion: 2 +guid: d2accf36f48355a4cbd925162706dbb1 +NativeFormatImporter: + userData: diff --git a/Examples/Vegetation.shader b/Examples/Vegetation.shader new file mode 100644 index 00000000..0225eebb --- /dev/null +++ b/Examples/Vegetation.shader @@ -0,0 +1,440 @@ +// Shader created with Shader Forge v1.38 +// Shader Forge (c) Neat Corporation / Joachim Holmer - http://www.acegikmo.com/shaderforge/ +// Note: Manually altering this data may prevent you from opening it in Shader Forge +/*SF_DATA;ver:1.38;sub:START;pass:START;ps:flbk:Transparent/Cutout/Diffuse,iptp:0,cusa:False,bamd:0,cgin:,lico:1,lgpr:1,limd:1,spmd:1,trmd:0,grmd:0,uamb:True,mssp:True,bkdf:True,hqlp:False,rprd:False,enco:False,rmgx:True,imps:True,rpth:0,vtps:0,hqsc:True,nrmq:1,nrsp:0,vomd:0,spxs:False,tesm:0,olmd:1,culm:2,bsrc:0,bdst:1,dpts:2,wrdp:True,dith:0,atcv:True,rfrpo:True,rfrpn:Refraction,coma:15,ufog:True,aust:True,igpj:False,qofs:0,qpre:2,rntp:3,fgom:False,fgoc:False,fgod:False,fgor:False,fgmd:0,fgcr:0.5,fgcg:0.5,fgcb:0.5,fgca:1,fgde:0.01,fgrn:0,fgrf:300,stcl:False,atwp:False,stva:128,stmr:255,stmw:255,stcp:6,stps:0,stfa:0,stfz:0,ofsf:0,ofsu:0,f2p0:False,fnsp:False,fnfb:False,fsmp:False;n:type:ShaderForge.SFN_Final,id:0,x:34000,y:32640,varname:node_0,prsc:2|diff-322-OUT,spec-3-OUT,gloss-270-OUT,normal-2-RGB,transm-7-OUT,lwrap-6-OUT,clip-1-A,voffset-394-OUT;n:type:ShaderForge.SFN_Tex2d,id:1,x:33572,y:32631,ptovrint:False,ptlb:Diffuse,ptin:_Diffuse,varname:_Diffuse,prsc:2,glob:False,taghide:False,taghdr:False,tagprd:False,tagnsco:False,tagnrm:False,tex:66321cc856b03e245ac41ed8a53e0ecc,ntxv:0,isnm:False;n:type:ShaderForge.SFN_Tex2d,id:2,x:33572,y:32818,ptovrint:False,ptlb:Normal,ptin:_Normal,varname:_Normal,prsc:2,glob:False,taghide:False,taghdr:False,tagprd:False,tagnsco:False,tagnrm:False,tex:cb6c5165ed180c543be39ed70e72abc8,ntxv:3,isnm:True;n:type:ShaderForge.SFN_Vector1,id:3,x:33777,y:32641,varname:node_3,prsc:2,v1:0.2;n:type:ShaderForge.SFN_Vector3,id:6,x:33572,y:33075,varname:node_6,prsc:2,v1:0.3275862,v2:0.3275862,v3:0.2911878;n:type:ShaderForge.SFN_Vector3,id:7,x:33572,y:32976,varname:node_7,prsc:2,v1:0.2824138,v2:0.3137931,v3:0.1568965;n:type:ShaderForge.SFN_Vector1,id:270,x:33777,y:32701,varname:node_270,prsc:2,v1:0.4;n:type:ShaderForge.SFN_VertexColor,id:321,x:33330,y:32501,varname:node_321,prsc:2;n:type:ShaderForge.SFN_Multiply,id:322,x:33777,y:32508,varname:node_322,prsc:2|A-330-OUT,B-1-RGB;n:type:ShaderForge.SFN_Lerp,id:330,x:33572,y:32478,varname:node_330,prsc:2|A-331-OUT,B-337-OUT,T-321-B;n:type:ShaderForge.SFN_Vector1,id:331,x:33330,y:32356,varname:node_331,prsc:2,v1:1;n:type:ShaderForge.SFN_Vector3,id:337,x:33330,y:32410,varname:node_337,prsc:2,v1:0.9632353,v2:0.8224623,v3:0.03541304;n:type:ShaderForge.SFN_VertexColor,id:389,x:32886,y:33347,varname:node_389,prsc:2;n:type:ShaderForge.SFN_NormalVector,id:391,x:33073,y:33231,prsc:2,pt:False;n:type:ShaderForge.SFN_Time,id:392,x:33073,y:33586,varname:node_392,prsc:2;n:type:ShaderForge.SFN_Sin,id:393,x:33479,y:33548,varname:node_393,prsc:2|IN-413-OUT;n:type:ShaderForge.SFN_Multiply,id:394,x:33729,y:33420,cmnt:Wind animation,varname:node_394,prsc:2|A-562-OUT,B-389-R,C-393-OUT,D-403-OUT;n:type:ShaderForge.SFN_Vector1,id:403,x:33479,y:33699,varname:node_403,prsc:2,v1:0.016;n:type:ShaderForge.SFN_Add,id:413,x:33298,y:33548,varname:node_413,prsc:2|A-519-OUT,B-392-T;n:type:ShaderForge.SFN_Multiply,id:519,x:33073,y:33457,varname:node_519,prsc:2|A-389-B,B-520-OUT;n:type:ShaderForge.SFN_Pi,id:520,x:32919,y:33494,varname:node_520,prsc:2;n:type:ShaderForge.SFN_Add,id:561,x:33294,y:33171,varname:node_561,prsc:2|A-563-OUT,B-391-OUT;n:type:ShaderForge.SFN_Normalize,id:562,x:33479,y:33280,varname:node_562,prsc:2|IN-561-OUT;n:type:ShaderForge.SFN_Vector3,id:563,x:33073,y:33131,cmnt:Wind direction,varname:node_563,prsc:2,v1:1,v2:0.5,v3:0.5;proporder:1-2;pass:END;sub:END;*/ + +Shader "Shader Forge/Examples/Animated Vegetation" { + Properties { + _Diffuse ("Diffuse", 2D) = "white" {} + _Normal ("Normal", 2D) = "bump" {} + [HideInInspector]_Cutoff ("Alpha cutoff", Range(0,1)) = 0.5 + } + SubShader { + Tags { + "Queue"="AlphaTest" + "RenderType"="TransparentCutout" + } + Pass { + Name "FORWARD" + Tags { + "LightMode"="ForwardBase" + } + Cull Off + + + AlphaToMask On + CGPROGRAM + #pragma vertex vert + #pragma fragment frag + #define UNITY_PASS_FORWARDBASE + #define SHOULD_SAMPLE_SH ( defined (LIGHTMAP_OFF) && defined(DYNAMICLIGHTMAP_OFF) ) + #include "UnityCG.cginc" + #include "AutoLight.cginc" + #include "Lighting.cginc" + #include "UnityPBSLighting.cginc" + #include "UnityStandardBRDF.cginc" + #pragma multi_compile_fwdbase_fullshadows + #pragma multi_compile LIGHTMAP_OFF LIGHTMAP_ON + #pragma multi_compile DIRLIGHTMAP_OFF DIRLIGHTMAP_COMBINED DIRLIGHTMAP_SEPARATE + #pragma multi_compile DYNAMICLIGHTMAP_OFF DYNAMICLIGHTMAP_ON + #pragma multi_compile_fog + #pragma only_renderers d3d9 d3d11 glcore gles gles3 metal d3d11_9x xboxone ps4 psp2 n3ds wiiu + #pragma target 3.0 + uniform sampler2D _Diffuse; uniform float4 _Diffuse_ST; + uniform sampler2D _Normal; uniform float4 _Normal_ST; + struct VertexInput { + float4 vertex : POSITION; + float3 normal : NORMAL; + float4 tangent : TANGENT; + float2 texcoord0 : TEXCOORD0; + float2 texcoord1 : TEXCOORD1; + float2 texcoord2 : TEXCOORD2; + float4 vertexColor : COLOR; + }; + struct VertexOutput { + float4 pos : SV_POSITION; + float2 uv0 : TEXCOORD0; + float2 uv1 : TEXCOORD1; + float2 uv2 : TEXCOORD2; + float4 posWorld : TEXCOORD3; + float3 normalDir : TEXCOORD4; + float3 tangentDir : TEXCOORD5; + float3 bitangentDir : TEXCOORD6; + float4 vertexColor : COLOR; + LIGHTING_COORDS(7,8) + UNITY_FOG_COORDS(9) + #if defined(LIGHTMAP_ON) || defined(UNITY_SHOULD_SAMPLE_SH) + float4 ambientOrLightmapUV : TEXCOORD10; + #endif + }; + VertexOutput vert (VertexInput v) { + VertexOutput o = (VertexOutput)0; + o.uv0 = v.texcoord0; + o.uv1 = v.texcoord1; + o.uv2 = v.texcoord2; + o.vertexColor = v.vertexColor; + #ifdef LIGHTMAP_ON + o.ambientOrLightmapUV.xy = v.texcoord1.xy * unity_LightmapST.xy + unity_LightmapST.zw; + o.ambientOrLightmapUV.zw = 0; + #elif UNITY_SHOULD_SAMPLE_SH + #endif + #ifdef DYNAMICLIGHTMAP_ON + o.ambientOrLightmapUV.zw = v.texcoord2.xy * unity_DynamicLightmapST.xy + unity_DynamicLightmapST.zw; + #endif + o.normalDir = UnityObjectToWorldNormal(v.normal); + o.tangentDir = normalize( mul( unity_ObjectToWorld, float4( v.tangent.xyz, 0.0 ) ).xyz ); + o.bitangentDir = normalize(cross(o.normalDir, o.tangentDir) * v.tangent.w); + float4 node_392 = _Time; + v.vertex.xyz += (normalize((float3(1,0.5,0.5)+v.normal))*o.vertexColor.r*sin(((o.vertexColor.b*3.141592654)+node_392.g))*0.016); + o.posWorld = mul(unity_ObjectToWorld, v.vertex); + float3 lightColor = _LightColor0.rgb; + o.pos = UnityObjectToClipPos( v.vertex ); + UNITY_TRANSFER_FOG(o,o.pos); + TRANSFER_VERTEX_TO_FRAGMENT(o) + return o; + } + float4 frag(VertexOutput i, float facing : VFACE) : COLOR { + float isFrontFace = ( facing >= 0 ? 1 : 0 ); + float faceSign = ( facing >= 0 ? 1 : -1 ); + i.normalDir = normalize(i.normalDir); + i.normalDir *= faceSign; + float3x3 tangentTransform = float3x3( i.tangentDir, i.bitangentDir, i.normalDir); + float3 viewDirection = normalize(_WorldSpaceCameraPos.xyz - i.posWorld.xyz); + float3 _Normal_var = UnpackNormal(tex2D(_Normal,TRANSFORM_TEX(i.uv0, _Normal))); + float3 normalLocal = _Normal_var.rgb; + float3 normalDirection = normalize(mul( normalLocal, tangentTransform )); // Perturbed normals + float3 viewReflectDirection = reflect( -viewDirection, normalDirection ); + float4 _Diffuse_var = tex2D(_Diffuse,TRANSFORM_TEX(i.uv0, _Diffuse)); + clip(_Diffuse_var.a - 0.5); + float3 lightDirection = normalize(_WorldSpaceLightPos0.xyz); + float3 lightColor = _LightColor0.rgb; + float3 halfDirection = normalize(viewDirection+lightDirection); +////// Lighting: + float attenuation = LIGHT_ATTENUATION(i); + float3 attenColor = attenuation * _LightColor0.xyz; +///////// Gloss: + float gloss = 0.4; + float specPow = exp2( gloss * 10.0 + 1.0 ); +/////// GI Data: + UnityLight light; + #ifdef LIGHTMAP_OFF + light.color = lightColor; + light.dir = lightDirection; + light.ndotl = LambertTerm (normalDirection, light.dir); + #else + light.color = half3(0.f, 0.f, 0.f); + light.ndotl = 0.0f; + light.dir = half3(0.f, 0.f, 0.f); + #endif + UnityGIInput d; + d.light = light; + d.worldPos = i.posWorld.xyz; + d.worldViewDir = viewDirection; + d.atten = attenuation; + #if defined(LIGHTMAP_ON) || defined(DYNAMICLIGHTMAP_ON) + d.ambient = 0; + d.lightmapUV = i.ambientOrLightmapUV; + #else + d.ambient = i.ambientOrLightmapUV; + #endif + Unity_GlossyEnvironmentData ugls_en_data; + ugls_en_data.roughness = 1.0 - gloss; + ugls_en_data.reflUVW = viewReflectDirection; + UnityGI gi = UnityGlobalIllumination(d, 1, normalDirection, ugls_en_data ); + lightDirection = gi.light.dir; + lightColor = gi.light.color; +////// Specular: + float NdotL = saturate(dot( normalDirection, lightDirection )); + float node_3 = 0.2; + float3 specularColor = float3(node_3,node_3,node_3); + float3 directSpecular = attenColor * pow(max(0,dot(halfDirection,normalDirection)),specPow)*specularColor; + float3 specular = directSpecular; +/////// Diffuse: + NdotL = dot( normalDirection, lightDirection ); + float3 w = float3(0.3275862,0.3275862,0.2911878)*0.5; // Light wrapping + float3 NdotLWrap = NdotL * ( 1.0 - w ); + float3 forwardLight = max(float3(0.0,0.0,0.0), NdotLWrap + w ); + float3 backLight = max(float3(0.0,0.0,0.0), -NdotLWrap + w ) * float3(0.2824138,0.3137931,0.1568965); + NdotL = max(0.0,dot( normalDirection, lightDirection )); + float3 directDiffuse = (forwardLight+backLight) * attenColor; + float3 indirectDiffuse = float3(0,0,0); + indirectDiffuse += gi.indirect.diffuse; + float node_331 = 1.0; + float3 diffuseColor = (lerp(float3(node_331,node_331,node_331),float3(0.9632353,0.8224623,0.03541304),i.vertexColor.b)*_Diffuse_var.rgb); + float3 diffuse = (directDiffuse + indirectDiffuse) * diffuseColor; +/// Final Color: + float3 finalColor = diffuse + specular; + fixed4 finalRGBA = fixed4(finalColor,(_Diffuse_var.a) * 2.0 - 1.0); + UNITY_APPLY_FOG(i.fogCoord, finalRGBA); + return finalRGBA; + } + ENDCG + } + Pass { + Name "FORWARD_DELTA" + Tags { + "LightMode"="ForwardAdd" + } + Blend One One + Cull Off + + + CGPROGRAM + #pragma vertex vert + #pragma fragment frag + #define UNITY_PASS_FORWARDADD + #define SHOULD_SAMPLE_SH ( defined (LIGHTMAP_OFF) && defined(DYNAMICLIGHTMAP_OFF) ) + #include "UnityCG.cginc" + #include "AutoLight.cginc" + #include "Lighting.cginc" + #include "UnityPBSLighting.cginc" + #include "UnityStandardBRDF.cginc" + #pragma multi_compile_fwdadd_fullshadows + #pragma multi_compile LIGHTMAP_OFF LIGHTMAP_ON + #pragma multi_compile DIRLIGHTMAP_OFF DIRLIGHTMAP_COMBINED DIRLIGHTMAP_SEPARATE + #pragma multi_compile DYNAMICLIGHTMAP_OFF DYNAMICLIGHTMAP_ON + #pragma multi_compile_fog + #pragma only_renderers d3d9 d3d11 glcore gles gles3 metal d3d11_9x xboxone ps4 psp2 n3ds wiiu + #pragma target 3.0 + uniform sampler2D _Diffuse; uniform float4 _Diffuse_ST; + uniform sampler2D _Normal; uniform float4 _Normal_ST; + struct VertexInput { + float4 vertex : POSITION; + float3 normal : NORMAL; + float4 tangent : TANGENT; + float2 texcoord0 : TEXCOORD0; + float2 texcoord1 : TEXCOORD1; + float2 texcoord2 : TEXCOORD2; + float4 vertexColor : COLOR; + }; + struct VertexOutput { + float4 pos : SV_POSITION; + float2 uv0 : TEXCOORD0; + float2 uv1 : TEXCOORD1; + float2 uv2 : TEXCOORD2; + float4 posWorld : TEXCOORD3; + float3 normalDir : TEXCOORD4; + float3 tangentDir : TEXCOORD5; + float3 bitangentDir : TEXCOORD6; + float4 vertexColor : COLOR; + LIGHTING_COORDS(7,8) + UNITY_FOG_COORDS(9) + }; + VertexOutput vert (VertexInput v) { + VertexOutput o = (VertexOutput)0; + o.uv0 = v.texcoord0; + o.uv1 = v.texcoord1; + o.uv2 = v.texcoord2; + o.vertexColor = v.vertexColor; + o.normalDir = UnityObjectToWorldNormal(v.normal); + o.tangentDir = normalize( mul( unity_ObjectToWorld, float4( v.tangent.xyz, 0.0 ) ).xyz ); + o.bitangentDir = normalize(cross(o.normalDir, o.tangentDir) * v.tangent.w); + float4 node_392 = _Time; + v.vertex.xyz += (normalize((float3(1,0.5,0.5)+v.normal))*o.vertexColor.r*sin(((o.vertexColor.b*3.141592654)+node_392.g))*0.016); + o.posWorld = mul(unity_ObjectToWorld, v.vertex); + float3 lightColor = _LightColor0.rgb; + o.pos = UnityObjectToClipPos( v.vertex ); + UNITY_TRANSFER_FOG(o,o.pos); + TRANSFER_VERTEX_TO_FRAGMENT(o) + return o; + } + float4 frag(VertexOutput i, float facing : VFACE) : COLOR { + float isFrontFace = ( facing >= 0 ? 1 : 0 ); + float faceSign = ( facing >= 0 ? 1 : -1 ); + i.normalDir = normalize(i.normalDir); + i.normalDir *= faceSign; + float3x3 tangentTransform = float3x3( i.tangentDir, i.bitangentDir, i.normalDir); + float3 viewDirection = normalize(_WorldSpaceCameraPos.xyz - i.posWorld.xyz); + float3 _Normal_var = UnpackNormal(tex2D(_Normal,TRANSFORM_TEX(i.uv0, _Normal))); + float3 normalLocal = _Normal_var.rgb; + float3 normalDirection = normalize(mul( normalLocal, tangentTransform )); // Perturbed normals + float4 _Diffuse_var = tex2D(_Diffuse,TRANSFORM_TEX(i.uv0, _Diffuse)); + clip(_Diffuse_var.a - 0.5); + float3 lightDirection = normalize(lerp(_WorldSpaceLightPos0.xyz, _WorldSpaceLightPos0.xyz - i.posWorld.xyz,_WorldSpaceLightPos0.w)); + float3 lightColor = _LightColor0.rgb; + float3 halfDirection = normalize(viewDirection+lightDirection); +////// Lighting: + float attenuation = LIGHT_ATTENUATION(i); + float3 attenColor = attenuation * _LightColor0.xyz; +///////// Gloss: + float gloss = 0.4; + float specPow = exp2( gloss * 10.0 + 1.0 ); +////// Specular: + float NdotL = saturate(dot( normalDirection, lightDirection )); + float node_3 = 0.2; + float3 specularColor = float3(node_3,node_3,node_3); + float3 directSpecular = attenColor * pow(max(0,dot(halfDirection,normalDirection)),specPow)*specularColor; + float3 specular = directSpecular; +/////// Diffuse: + NdotL = dot( normalDirection, lightDirection ); + float3 w = float3(0.3275862,0.3275862,0.2911878)*0.5; // Light wrapping + float3 NdotLWrap = NdotL * ( 1.0 - w ); + float3 forwardLight = max(float3(0.0,0.0,0.0), NdotLWrap + w ); + float3 backLight = max(float3(0.0,0.0,0.0), -NdotLWrap + w ) * float3(0.2824138,0.3137931,0.1568965); + NdotL = max(0.0,dot( normalDirection, lightDirection )); + float3 directDiffuse = (forwardLight+backLight) * attenColor; + float node_331 = 1.0; + float3 diffuseColor = (lerp(float3(node_331,node_331,node_331),float3(0.9632353,0.8224623,0.03541304),i.vertexColor.b)*_Diffuse_var.rgb); + float3 diffuse = directDiffuse * diffuseColor; +/// Final Color: + float3 finalColor = diffuse + specular; + fixed4 finalRGBA = fixed4(finalColor * 1,0); + UNITY_APPLY_FOG(i.fogCoord, finalRGBA); + return finalRGBA; + } + ENDCG + } + Pass { + Name "ShadowCaster" + Tags { + "LightMode"="ShadowCaster" + } + Offset 1, 1 + Cull Off + + CGPROGRAM + #pragma vertex vert + #pragma fragment frag + #define UNITY_PASS_SHADOWCASTER + #define SHOULD_SAMPLE_SH ( defined (LIGHTMAP_OFF) && defined(DYNAMICLIGHTMAP_OFF) ) + #include "UnityCG.cginc" + #include "Lighting.cginc" + #include "UnityPBSLighting.cginc" + #include "UnityStandardBRDF.cginc" + #pragma fragmentoption ARB_precision_hint_fastest + #pragma multi_compile_shadowcaster + #pragma multi_compile LIGHTMAP_OFF LIGHTMAP_ON + #pragma multi_compile DIRLIGHTMAP_OFF DIRLIGHTMAP_COMBINED DIRLIGHTMAP_SEPARATE + #pragma multi_compile DYNAMICLIGHTMAP_OFF DYNAMICLIGHTMAP_ON + #pragma multi_compile_fog + #pragma only_renderers d3d9 d3d11 glcore gles gles3 metal d3d11_9x xboxone ps4 psp2 n3ds wiiu + #pragma target 3.0 + uniform sampler2D _Diffuse; uniform float4 _Diffuse_ST; + struct VertexInput { + float4 vertex : POSITION; + float3 normal : NORMAL; + float2 texcoord0 : TEXCOORD0; + float2 texcoord1 : TEXCOORD1; + float2 texcoord2 : TEXCOORD2; + float4 vertexColor : COLOR; + }; + struct VertexOutput { + V2F_SHADOW_CASTER; + float2 uv0 : TEXCOORD1; + float2 uv1 : TEXCOORD2; + float2 uv2 : TEXCOORD3; + float4 posWorld : TEXCOORD4; + float3 normalDir : TEXCOORD5; + float4 vertexColor : COLOR; + }; + VertexOutput vert (VertexInput v) { + VertexOutput o = (VertexOutput)0; + o.uv0 = v.texcoord0; + o.uv1 = v.texcoord1; + o.uv2 = v.texcoord2; + o.vertexColor = v.vertexColor; + o.normalDir = UnityObjectToWorldNormal(v.normal); + float4 node_392 = _Time; + v.vertex.xyz += (normalize((float3(1,0.5,0.5)+v.normal))*o.vertexColor.r*sin(((o.vertexColor.b*3.141592654)+node_392.g))*0.016); + o.posWorld = mul(unity_ObjectToWorld, v.vertex); + o.pos = UnityObjectToClipPos( v.vertex ); + TRANSFER_SHADOW_CASTER(o) + return o; + } + float4 frag(VertexOutput i, float facing : VFACE) : COLOR { + float isFrontFace = ( facing >= 0 ? 1 : 0 ); + float faceSign = ( facing >= 0 ? 1 : -1 ); + i.normalDir = normalize(i.normalDir); + i.normalDir *= faceSign; + float3 viewDirection = normalize(_WorldSpaceCameraPos.xyz - i.posWorld.xyz); + float3 normalDirection = i.normalDir; + float4 _Diffuse_var = tex2D(_Diffuse,TRANSFORM_TEX(i.uv0, _Diffuse)); + clip(_Diffuse_var.a - 0.5); + SHADOW_CASTER_FRAGMENT(i) + } + ENDCG + } + Pass { + Name "Meta" + Tags { + "LightMode"="Meta" + } + Cull Off + + CGPROGRAM + #pragma vertex vert + #pragma fragment frag + #define UNITY_PASS_META 1 + #define SHOULD_SAMPLE_SH ( defined (LIGHTMAP_OFF) && defined(DYNAMICLIGHTMAP_OFF) ) + #include "UnityCG.cginc" + #include "Lighting.cginc" + #include "UnityPBSLighting.cginc" + #include "UnityStandardBRDF.cginc" + #include "UnityMetaPass.cginc" + #pragma fragmentoption ARB_precision_hint_fastest + #pragma multi_compile_shadowcaster + #pragma multi_compile LIGHTMAP_OFF LIGHTMAP_ON + #pragma multi_compile DIRLIGHTMAP_OFF DIRLIGHTMAP_COMBINED DIRLIGHTMAP_SEPARATE + #pragma multi_compile DYNAMICLIGHTMAP_OFF DYNAMICLIGHTMAP_ON + #pragma multi_compile_fog + #pragma only_renderers d3d9 d3d11 glcore gles gles3 metal d3d11_9x xboxone ps4 psp2 n3ds wiiu + #pragma target 3.0 + uniform sampler2D _Diffuse; uniform float4 _Diffuse_ST; + struct VertexInput { + float4 vertex : POSITION; + float3 normal : NORMAL; + float2 texcoord0 : TEXCOORD0; + float2 texcoord1 : TEXCOORD1; + float2 texcoord2 : TEXCOORD2; + float4 vertexColor : COLOR; + }; + struct VertexOutput { + float4 pos : SV_POSITION; + float2 uv0 : TEXCOORD0; + float2 uv1 : TEXCOORD1; + float2 uv2 : TEXCOORD2; + float4 posWorld : TEXCOORD3; + float3 normalDir : TEXCOORD4; + float4 vertexColor : COLOR; + }; + VertexOutput vert (VertexInput v) { + VertexOutput o = (VertexOutput)0; + o.uv0 = v.texcoord0; + o.uv1 = v.texcoord1; + o.uv2 = v.texcoord2; + o.vertexColor = v.vertexColor; + o.normalDir = UnityObjectToWorldNormal(v.normal); + float4 node_392 = _Time; + v.vertex.xyz += (normalize((float3(1,0.5,0.5)+v.normal))*o.vertexColor.r*sin(((o.vertexColor.b*3.141592654)+node_392.g))*0.016); + o.posWorld = mul(unity_ObjectToWorld, v.vertex); + o.pos = UnityMetaVertexPosition(v.vertex, v.texcoord1.xy, v.texcoord2.xy, unity_LightmapST, unity_DynamicLightmapST ); + return o; + } + float4 frag(VertexOutput i, float facing : VFACE) : SV_Target { + float isFrontFace = ( facing >= 0 ? 1 : 0 ); + float faceSign = ( facing >= 0 ? 1 : -1 ); + i.normalDir = normalize(i.normalDir); + i.normalDir *= faceSign; + float3 viewDirection = normalize(_WorldSpaceCameraPos.xyz - i.posWorld.xyz); + float3 normalDirection = i.normalDir; + UnityMetaInput o; + UNITY_INITIALIZE_OUTPUT( UnityMetaInput, o ); + + o.Emission = 0; + + float node_331 = 1.0; + float4 _Diffuse_var = tex2D(_Diffuse,TRANSFORM_TEX(i.uv0, _Diffuse)); + float3 diffColor = (lerp(float3(node_331,node_331,node_331),float3(0.9632353,0.8224623,0.03541304),i.vertexColor.b)*_Diffuse_var.rgb); + float node_3 = 0.2; + float3 specColor = float3(node_3,node_3,node_3); + float roughness = 1.0 - 0.4; + o.Albedo = diffColor + specColor * roughness * roughness * 0.5; + + return UnityMetaFragment( o ); + } + ENDCG + } + } + FallBack "Transparent/Cutout/Diffuse" + CustomEditor "ShaderForgeMaterialInspector" +} diff --git a/Examples/Vegetation.shader.meta b/Examples/Vegetation.shader.meta new file mode 100644 index 00000000..1e4e51e7 --- /dev/null +++ b/Examples/Vegetation.shader.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: e17d9c256530145c39caf8efc8c94a16 +timeCreated: 1503327530 +licenseType: Store +ShaderImporter: + defaultTextures: + - _Diffuse: {fileID: 2800000, guid: 66321cc856b03e245ac41ed8a53e0ecc, type: 3} + - _Normal: {fileID: 2800000, guid: cb6c5165ed180c543be39ed70e72abc8, type: 3} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Examples/VertexAnimation.mat b/Examples/VertexAnimation.mat new file mode 100644 index 00000000..c3b706cf --- /dev/null +++ b/Examples/VertexAnimation.mat @@ -0,0 +1,97 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!21 &2100000 +Material: + serializedVersion: 3 + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + m_Name: VertexAnimation + m_Shader: {fileID: 4800000, guid: 6dedef75fd0484cdf8557f522ceaa8bf, type: 3} + m_ShaderKeywords: [] + m_CustomRenderQueue: -1 + m_SavedProperties: + serializedVersion: 2 + m_TexEnvs: + data: + first: + name: _Normals + second: + m_Texture: {fileID: 2800000, guid: bbab0a6f7bae9cf42bf057d8ee2755f6, type: 3} + m_Scale: {x: 16, y: 1} + m_Offset: {x: 0, y: 0} + data: + first: + name: _Diffuse + second: + m_Texture: {fileID: 2800000, guid: b66bceaf0cc0ace4e9bdc92f14bba709, type: 3} + m_Scale: {x: 16, y: 1} + m_Offset: {x: 0, y: 0} + data: + first: + name: _node72 + second: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + data: + first: + name: _node85 + second: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + data: + first: + name: _node108 + second: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + data: + first: + name: _InnerNormals + second: + m_Texture: {fileID: 2800000, guid: cf20bfced7e912046a9ce991a4d775ec, type: 3} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + data: + first: + name: _node116 + second: + m_Texture: {fileID: 2800000, guid: 5fb7986dd6d0a8e4093ba82369dd6a4d, type: 3} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + data: + first: + name: _node117 + second: + m_Texture: {fileID: 2800000, guid: 5fb7986dd6d0a8e4093ba82369dd6a4d, type: 3} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + m_Floats: + data: + first: + name: _GlowIntensity + second: 1.79999995 + data: + first: + name: _BulgeShape + second: 5 + data: + first: + name: _BulgeScale + second: .200000003 + data: + first: + name: _Magnitude + second: .230769247 + data: + first: + name: _Sharpness + second: 2.61538434 + m_Colors: + data: + first: + name: _GlowColor + second: {r: 1, g: .239148095, b: .110294104, a: 1} diff --git a/Examples/VertexAnimation.mat.meta b/Examples/VertexAnimation.mat.meta new file mode 100644 index 00000000..cc60e0dd --- /dev/null +++ b/Examples/VertexAnimation.mat.meta @@ -0,0 +1,4 @@ +fileFormatVersion: 2 +guid: 23fc898268709d346b696ab505c07656 +NativeFormatImporter: + userData: diff --git a/Examples/VertexAnimation.shader b/Examples/VertexAnimation.shader new file mode 100644 index 00000000..bcbbdbd8 --- /dev/null +++ b/Examples/VertexAnimation.shader @@ -0,0 +1,441 @@ +// Shader created with Shader Forge v1.38 +// Shader Forge (c) Neat Corporation / Joachim Holmer - http://www.acegikmo.com/shaderforge/ +// Note: Manually altering this data may prevent you from opening it in Shader Forge +/*SF_DATA;ver:1.38;sub:START;pass:START;ps:flbk:,iptp:0,cusa:False,bamd:0,cgin:,lico:1,lgpr:1,limd:1,spmd:1,trmd:0,grmd:0,uamb:True,mssp:True,bkdf:True,hqlp:False,rprd:False,enco:False,rmgx:True,imps:True,rpth:0,vtps:0,hqsc:True,nrmq:1,nrsp:0,vomd:0,spxs:False,tesm:0,olmd:1,culm:0,bsrc:0,bdst:1,dpts:2,wrdp:True,dith:0,atcv:False,rfrpo:True,rfrpn:Refraction,coma:15,ufog:True,aust:True,igpj:False,qofs:0,qpre:1,rntp:1,fgom:False,fgoc:False,fgod:False,fgor:False,fgmd:0,fgcr:0.5,fgcg:0.5,fgcb:0.5,fgca:1,fgde:0.01,fgrn:0,fgrf:300,stcl:False,atwp:False,stva:128,stmr:255,stmw:255,stcp:6,stps:0,stfa:0,stfz:0,ofsf:0,ofsu:0,f2p0:False,fnsp:False,fnfb:False,fsmp:False;n:type:ShaderForge.SFN_Final,id:1,x:33430,y:32397,varname:node_1,prsc:2|diff-149-OUT,spec-4921-OUT,normal-4935-OUT,emission-166-OUT,transm-133-OUT,lwrap-133-OUT,voffset-140-OUT;n:type:ShaderForge.SFN_Subtract,id:18,x:32114,y:32340,varname:node_18,prsc:2|A-22-OUT,B-19-OUT;n:type:ShaderForge.SFN_Vector1,id:19,x:31935,y:32422,varname:node_19,prsc:2,v1:0.5;n:type:ShaderForge.SFN_Abs,id:21,x:32286,y:32340,varname:node_21,prsc:2|IN-18-OUT;n:type:ShaderForge.SFN_Frac,id:22,x:31935,y:32288,varname:node_22,prsc:2|IN-24-OUT;n:type:ShaderForge.SFN_Panner,id:23,x:31597,y:32288,varname:node_23,prsc:2,spu:0.25,spv:0|UVIN-5169-UVOUT;n:type:ShaderForge.SFN_ComponentMask,id:24,x:31764,y:32288,varname:node_24,prsc:2,cc1:0,cc2:-1,cc3:-1,cc4:-1|IN-23-UVOUT;n:type:ShaderForge.SFN_Multiply,id:25,x:32461,y:32390,cmnt:Triangle Wave,varname:node_25,prsc:2|A-21-OUT,B-26-OUT;n:type:ShaderForge.SFN_Vector1,id:26,x:32286,y:32476,varname:node_26,prsc:2,v1:2;n:type:ShaderForge.SFN_Power,id:133,x:32665,y:32453,cmnt:Panning gradient,varname:node_133,prsc:2|VAL-25-OUT,EXP-8547-OUT;n:type:ShaderForge.SFN_NormalVector,id:139,x:32892,y:32957,prsc:2,pt:False;n:type:ShaderForge.SFN_Multiply,id:140,x:33119,y:32787,varname:node_140,prsc:2|A-1924-OUT,B-142-OUT,C-139-OUT;n:type:ShaderForge.SFN_ValueProperty,id:142,x:32892,y:32789,ptovrint:False,ptlb:Bulge Scale,ptin:_BulgeScale,varname:_BulgeScale,prsc:2,glob:False,taghide:False,taghdr:False,tagprd:False,tagnsco:False,tagnrm:False,v1:0.2;n:type:ShaderForge.SFN_Lerp,id:149,x:33119,y:32115,varname:node_149,prsc:2|A-151-RGB,B-8608-OUT,T-133-OUT;n:type:ShaderForge.SFN_Lerp,id:150,x:32892,y:32285,varname:node_150,prsc:2|A-267-RGB,B-265-OUT,T-133-OUT;n:type:ShaderForge.SFN_Tex2d,id:151,x:32892,y:31949,ptovrint:False,ptlb:Diffuse,ptin:_Diffuse,varname:_Diffuse,prsc:2,glob:False,taghide:False,taghdr:False,tagprd:False,tagnsco:False,tagnrm:False,tex:b66bceaf0cc0ace4e9bdc92f14bba709,ntxv:0,isnm:False;n:type:ShaderForge.SFN_Multiply,id:166,x:33119,y:32619,cmnt:Glow,varname:node_166,prsc:2|A-168-RGB,B-8677-OUT,C-1924-OUT;n:type:ShaderForge.SFN_Color,id:168,x:32892,y:32453,ptovrint:False,ptlb:Glow Color,ptin:_GlowColor,varname:_GlowColor,prsc:2,glob:False,taghide:False,taghdr:False,tagprd:False,tagnsco:False,tagnrm:False,c1:1,c2:0.2391481,c3:0.1102941,c4:1;n:type:ShaderForge.SFN_Vector3,id:265,x:32665,y:32301,varname:node_265,prsc:2,v1:0,v2:0,v3:1;n:type:ShaderForge.SFN_Tex2d,id:267,x:32665,y:32133,ptovrint:False,ptlb:Normals,ptin:_Normals,varname:_Normals,prsc:2,glob:False,taghide:False,taghdr:False,tagprd:False,tagnsco:False,tagnrm:False,tex:bbab0a6f7bae9cf42bf057d8ee2755f6,ntxv:3,isnm:True;n:type:ShaderForge.SFN_Vector1,id:4921,x:33119,y:32283,varname:node_4921,prsc:2,v1:1;n:type:ShaderForge.SFN_Normalize,id:4935,x:33119,y:32451,varname:node_4935,prsc:2|IN-150-OUT;n:type:ShaderForge.SFN_ValueProperty,id:8547,x:32461,y:32537,ptovrint:False,ptlb:Bulge Shape,ptin:_BulgeShape,varname:_BulgeShape,prsc:2,glob:False,taghide:False,taghdr:False,tagprd:False,tagnsco:False,tagnrm:False,v1:5;n:type:ShaderForge.SFN_Vector1,id:8608,x:32892,y:32117,varname:node_8608,prsc:2,v1:0.1;n:type:ShaderForge.SFN_ValueProperty,id:8677,x:32892,y:32621,ptovrint:False,ptlb:Glow Intensity,ptin:_GlowIntensity,varname:_GlowIntensity,prsc:2,glob:False,taghide:False,taghdr:False,tagprd:False,tagnsco:False,tagnrm:False,v1:1.2;n:type:ShaderForge.SFN_TexCoord,id:5169,x:31434,y:32288,varname:node_5169,prsc:2,uv:0,uaff:False;n:type:ShaderForge.SFN_Relay,id:1924,x:32892,y:32697,varname:node_1924,prsc:2|IN-133-OUT;proporder:151-267-168-142-8547-8677;pass:END;sub:END;*/ + +Shader "Shader Forge/Examples/Vertex Animation" { + Properties { + _Diffuse ("Diffuse", 2D) = "white" {} + _Normals ("Normals", 2D) = "bump" {} + _GlowColor ("Glow Color", Color) = (1,0.2391481,0.1102941,1) + _BulgeScale ("Bulge Scale", Float ) = 0.2 + _BulgeShape ("Bulge Shape", Float ) = 5 + _GlowIntensity ("Glow Intensity", Float ) = 1.2 + } + SubShader { + Tags { + "RenderType"="Opaque" + } + Pass { + Name "FORWARD" + Tags { + "LightMode"="ForwardBase" + } + + + CGPROGRAM + #pragma vertex vert + #pragma fragment frag + #define UNITY_PASS_FORWARDBASE + #define SHOULD_SAMPLE_SH ( defined (LIGHTMAP_OFF) && defined(DYNAMICLIGHTMAP_OFF) ) + #include "UnityCG.cginc" + #include "AutoLight.cginc" + #include "Lighting.cginc" + #include "UnityPBSLighting.cginc" + #include "UnityStandardBRDF.cginc" + #pragma multi_compile_fwdbase_fullshadows + #pragma multi_compile LIGHTMAP_OFF LIGHTMAP_ON + #pragma multi_compile DIRLIGHTMAP_OFF DIRLIGHTMAP_COMBINED DIRLIGHTMAP_SEPARATE + #pragma multi_compile DYNAMICLIGHTMAP_OFF DYNAMICLIGHTMAP_ON + #pragma multi_compile_fog + #pragma only_renderers d3d9 d3d11 glcore gles gles3 metal d3d11_9x xboxone ps4 psp2 n3ds wiiu + #pragma target 3.0 + uniform float _BulgeScale; + uniform sampler2D _Diffuse; uniform float4 _Diffuse_ST; + uniform float4 _GlowColor; + uniform sampler2D _Normals; uniform float4 _Normals_ST; + uniform float _BulgeShape; + uniform float _GlowIntensity; + struct VertexInput { + float4 vertex : POSITION; + float3 normal : NORMAL; + float4 tangent : TANGENT; + float2 texcoord0 : TEXCOORD0; + float2 texcoord1 : TEXCOORD1; + float2 texcoord2 : TEXCOORD2; + }; + struct VertexOutput { + float4 pos : SV_POSITION; + float2 uv0 : TEXCOORD0; + float2 uv1 : TEXCOORD1; + float2 uv2 : TEXCOORD2; + float4 posWorld : TEXCOORD3; + float3 normalDir : TEXCOORD4; + float3 tangentDir : TEXCOORD5; + float3 bitangentDir : TEXCOORD6; + LIGHTING_COORDS(7,8) + UNITY_FOG_COORDS(9) + #if defined(LIGHTMAP_ON) || defined(UNITY_SHOULD_SAMPLE_SH) + float4 ambientOrLightmapUV : TEXCOORD10; + #endif + }; + VertexOutput vert (VertexInput v) { + VertexOutput o = (VertexOutput)0; + o.uv0 = v.texcoord0; + o.uv1 = v.texcoord1; + o.uv2 = v.texcoord2; + #ifdef LIGHTMAP_ON + o.ambientOrLightmapUV.xy = v.texcoord1.xy * unity_LightmapST.xy + unity_LightmapST.zw; + o.ambientOrLightmapUV.zw = 0; + #elif UNITY_SHOULD_SAMPLE_SH + #endif + #ifdef DYNAMICLIGHTMAP_ON + o.ambientOrLightmapUV.zw = v.texcoord2.xy * unity_DynamicLightmapST.xy + unity_DynamicLightmapST.zw; + #endif + o.normalDir = UnityObjectToWorldNormal(v.normal); + o.tangentDir = normalize( mul( unity_ObjectToWorld, float4( v.tangent.xyz, 0.0 ) ).xyz ); + o.bitangentDir = normalize(cross(o.normalDir, o.tangentDir) * v.tangent.w); + float4 node_3210 = _Time; + float node_133 = pow((abs((frac((o.uv0+node_3210.g*float2(0.25,0)).r)-0.5))*2.0),_BulgeShape); // Panning gradient + float node_1924 = node_133; + v.vertex.xyz += (node_1924*_BulgeScale*v.normal); + o.posWorld = mul(unity_ObjectToWorld, v.vertex); + float3 lightColor = _LightColor0.rgb; + o.pos = UnityObjectToClipPos( v.vertex ); + UNITY_TRANSFER_FOG(o,o.pos); + TRANSFER_VERTEX_TO_FRAGMENT(o) + return o; + } + float4 frag(VertexOutput i) : COLOR { + i.normalDir = normalize(i.normalDir); + float3x3 tangentTransform = float3x3( i.tangentDir, i.bitangentDir, i.normalDir); + float3 viewDirection = normalize(_WorldSpaceCameraPos.xyz - i.posWorld.xyz); + float3 _Normals_var = UnpackNormal(tex2D(_Normals,TRANSFORM_TEX(i.uv0, _Normals))); + float4 node_3210 = _Time; + float node_133 = pow((abs((frac((i.uv0+node_3210.g*float2(0.25,0)).r)-0.5))*2.0),_BulgeShape); // Panning gradient + float3 normalLocal = normalize(lerp(_Normals_var.rgb,float3(0,0,1),node_133)); + float3 normalDirection = normalize(mul( normalLocal, tangentTransform )); // Perturbed normals + float3 viewReflectDirection = reflect( -viewDirection, normalDirection ); + float3 lightDirection = normalize(_WorldSpaceLightPos0.xyz); + float3 lightColor = _LightColor0.rgb; + float3 halfDirection = normalize(viewDirection+lightDirection); +////// Lighting: + float attenuation = LIGHT_ATTENUATION(i); + float3 attenColor = attenuation * _LightColor0.xyz; +///////// Gloss: + float gloss = 0.5; + float specPow = exp2( gloss * 10.0 + 1.0 ); +/////// GI Data: + UnityLight light; + #ifdef LIGHTMAP_OFF + light.color = lightColor; + light.dir = lightDirection; + light.ndotl = LambertTerm (normalDirection, light.dir); + #else + light.color = half3(0.f, 0.f, 0.f); + light.ndotl = 0.0f; + light.dir = half3(0.f, 0.f, 0.f); + #endif + UnityGIInput d; + d.light = light; + d.worldPos = i.posWorld.xyz; + d.worldViewDir = viewDirection; + d.atten = attenuation; + #if defined(LIGHTMAP_ON) || defined(DYNAMICLIGHTMAP_ON) + d.ambient = 0; + d.lightmapUV = i.ambientOrLightmapUV; + #else + d.ambient = i.ambientOrLightmapUV; + #endif + Unity_GlossyEnvironmentData ugls_en_data; + ugls_en_data.roughness = 1.0 - gloss; + ugls_en_data.reflUVW = viewReflectDirection; + UnityGI gi = UnityGlobalIllumination(d, 1, normalDirection, ugls_en_data ); + lightDirection = gi.light.dir; + lightColor = gi.light.color; +////// Specular: + float NdotL = saturate(dot( normalDirection, lightDirection )); + float node_4921 = 1.0; + float3 specularColor = float3(node_4921,node_4921,node_4921); + float3 directSpecular = attenColor * pow(max(0,dot(halfDirection,normalDirection)),specPow)*specularColor; + float3 specular = directSpecular; +/////// Diffuse: + NdotL = dot( normalDirection, lightDirection ); + float3 w = float3(node_133,node_133,node_133)*0.5; // Light wrapping + float3 NdotLWrap = NdotL * ( 1.0 - w ); + float3 forwardLight = max(float3(0.0,0.0,0.0), NdotLWrap + w ); + float3 backLight = max(float3(0.0,0.0,0.0), -NdotLWrap + w ) * float3(node_133,node_133,node_133); + NdotL = max(0.0,dot( normalDirection, lightDirection )); + float3 directDiffuse = (forwardLight+backLight) * attenColor; + float3 indirectDiffuse = float3(0,0,0); + indirectDiffuse += gi.indirect.diffuse; + float4 _Diffuse_var = tex2D(_Diffuse,TRANSFORM_TEX(i.uv0, _Diffuse)); + float node_8608 = 0.1; + float3 diffuseColor = lerp(_Diffuse_var.rgb,float3(node_8608,node_8608,node_8608),node_133); + float3 diffuse = (directDiffuse + indirectDiffuse) * diffuseColor; +////// Emissive: + float node_1924 = node_133; + float3 emissive = (_GlowColor.rgb*_GlowIntensity*node_1924); +/// Final Color: + float3 finalColor = diffuse + specular + emissive; + fixed4 finalRGBA = fixed4(finalColor,1); + UNITY_APPLY_FOG(i.fogCoord, finalRGBA); + return finalRGBA; + } + ENDCG + } + Pass { + Name "FORWARD_DELTA" + Tags { + "LightMode"="ForwardAdd" + } + Blend One One + + + CGPROGRAM + #pragma vertex vert + #pragma fragment frag + #define UNITY_PASS_FORWARDADD + #define SHOULD_SAMPLE_SH ( defined (LIGHTMAP_OFF) && defined(DYNAMICLIGHTMAP_OFF) ) + #include "UnityCG.cginc" + #include "AutoLight.cginc" + #include "Lighting.cginc" + #include "UnityPBSLighting.cginc" + #include "UnityStandardBRDF.cginc" + #pragma multi_compile_fwdadd_fullshadows + #pragma multi_compile LIGHTMAP_OFF LIGHTMAP_ON + #pragma multi_compile DIRLIGHTMAP_OFF DIRLIGHTMAP_COMBINED DIRLIGHTMAP_SEPARATE + #pragma multi_compile DYNAMICLIGHTMAP_OFF DYNAMICLIGHTMAP_ON + #pragma multi_compile_fog + #pragma only_renderers d3d9 d3d11 glcore gles gles3 metal d3d11_9x xboxone ps4 psp2 n3ds wiiu + #pragma target 3.0 + uniform float _BulgeScale; + uniform sampler2D _Diffuse; uniform float4 _Diffuse_ST; + uniform float4 _GlowColor; + uniform sampler2D _Normals; uniform float4 _Normals_ST; + uniform float _BulgeShape; + uniform float _GlowIntensity; + struct VertexInput { + float4 vertex : POSITION; + float3 normal : NORMAL; + float4 tangent : TANGENT; + float2 texcoord0 : TEXCOORD0; + float2 texcoord1 : TEXCOORD1; + float2 texcoord2 : TEXCOORD2; + }; + struct VertexOutput { + float4 pos : SV_POSITION; + float2 uv0 : TEXCOORD0; + float2 uv1 : TEXCOORD1; + float2 uv2 : TEXCOORD2; + float4 posWorld : TEXCOORD3; + float3 normalDir : TEXCOORD4; + float3 tangentDir : TEXCOORD5; + float3 bitangentDir : TEXCOORD6; + LIGHTING_COORDS(7,8) + UNITY_FOG_COORDS(9) + }; + VertexOutput vert (VertexInput v) { + VertexOutput o = (VertexOutput)0; + o.uv0 = v.texcoord0; + o.uv1 = v.texcoord1; + o.uv2 = v.texcoord2; + o.normalDir = UnityObjectToWorldNormal(v.normal); + o.tangentDir = normalize( mul( unity_ObjectToWorld, float4( v.tangent.xyz, 0.0 ) ).xyz ); + o.bitangentDir = normalize(cross(o.normalDir, o.tangentDir) * v.tangent.w); + float4 node_982 = _Time; + float node_133 = pow((abs((frac((o.uv0+node_982.g*float2(0.25,0)).r)-0.5))*2.0),_BulgeShape); // Panning gradient + float node_1924 = node_133; + v.vertex.xyz += (node_1924*_BulgeScale*v.normal); + o.posWorld = mul(unity_ObjectToWorld, v.vertex); + float3 lightColor = _LightColor0.rgb; + o.pos = UnityObjectToClipPos( v.vertex ); + UNITY_TRANSFER_FOG(o,o.pos); + TRANSFER_VERTEX_TO_FRAGMENT(o) + return o; + } + float4 frag(VertexOutput i) : COLOR { + i.normalDir = normalize(i.normalDir); + float3x3 tangentTransform = float3x3( i.tangentDir, i.bitangentDir, i.normalDir); + float3 viewDirection = normalize(_WorldSpaceCameraPos.xyz - i.posWorld.xyz); + float3 _Normals_var = UnpackNormal(tex2D(_Normals,TRANSFORM_TEX(i.uv0, _Normals))); + float4 node_982 = _Time; + float node_133 = pow((abs((frac((i.uv0+node_982.g*float2(0.25,0)).r)-0.5))*2.0),_BulgeShape); // Panning gradient + float3 normalLocal = normalize(lerp(_Normals_var.rgb,float3(0,0,1),node_133)); + float3 normalDirection = normalize(mul( normalLocal, tangentTransform )); // Perturbed normals + float3 lightDirection = normalize(lerp(_WorldSpaceLightPos0.xyz, _WorldSpaceLightPos0.xyz - i.posWorld.xyz,_WorldSpaceLightPos0.w)); + float3 lightColor = _LightColor0.rgb; + float3 halfDirection = normalize(viewDirection+lightDirection); +////// Lighting: + float attenuation = LIGHT_ATTENUATION(i); + float3 attenColor = attenuation * _LightColor0.xyz; +///////// Gloss: + float gloss = 0.5; + float specPow = exp2( gloss * 10.0 + 1.0 ); +////// Specular: + float NdotL = saturate(dot( normalDirection, lightDirection )); + float node_4921 = 1.0; + float3 specularColor = float3(node_4921,node_4921,node_4921); + float3 directSpecular = attenColor * pow(max(0,dot(halfDirection,normalDirection)),specPow)*specularColor; + float3 specular = directSpecular; +/////// Diffuse: + NdotL = dot( normalDirection, lightDirection ); + float3 w = float3(node_133,node_133,node_133)*0.5; // Light wrapping + float3 NdotLWrap = NdotL * ( 1.0 - w ); + float3 forwardLight = max(float3(0.0,0.0,0.0), NdotLWrap + w ); + float3 backLight = max(float3(0.0,0.0,0.0), -NdotLWrap + w ) * float3(node_133,node_133,node_133); + NdotL = max(0.0,dot( normalDirection, lightDirection )); + float3 directDiffuse = (forwardLight+backLight) * attenColor; + float4 _Diffuse_var = tex2D(_Diffuse,TRANSFORM_TEX(i.uv0, _Diffuse)); + float node_8608 = 0.1; + float3 diffuseColor = lerp(_Diffuse_var.rgb,float3(node_8608,node_8608,node_8608),node_133); + float3 diffuse = directDiffuse * diffuseColor; +/// Final Color: + float3 finalColor = diffuse + specular; + fixed4 finalRGBA = fixed4(finalColor * 1,0); + UNITY_APPLY_FOG(i.fogCoord, finalRGBA); + return finalRGBA; + } + ENDCG + } + Pass { + Name "ShadowCaster" + Tags { + "LightMode"="ShadowCaster" + } + Offset 1, 1 + Cull Back + + CGPROGRAM + #pragma vertex vert + #pragma fragment frag + #define UNITY_PASS_SHADOWCASTER + #define SHOULD_SAMPLE_SH ( defined (LIGHTMAP_OFF) && defined(DYNAMICLIGHTMAP_OFF) ) + #include "UnityCG.cginc" + #include "Lighting.cginc" + #include "UnityPBSLighting.cginc" + #include "UnityStandardBRDF.cginc" + #pragma fragmentoption ARB_precision_hint_fastest + #pragma multi_compile_shadowcaster + #pragma multi_compile LIGHTMAP_OFF LIGHTMAP_ON + #pragma multi_compile DIRLIGHTMAP_OFF DIRLIGHTMAP_COMBINED DIRLIGHTMAP_SEPARATE + #pragma multi_compile DYNAMICLIGHTMAP_OFF DYNAMICLIGHTMAP_ON + #pragma multi_compile_fog + #pragma only_renderers d3d9 d3d11 glcore gles gles3 metal d3d11_9x xboxone ps4 psp2 n3ds wiiu + #pragma target 3.0 + uniform float _BulgeScale; + uniform float _BulgeShape; + struct VertexInput { + float4 vertex : POSITION; + float3 normal : NORMAL; + float2 texcoord0 : TEXCOORD0; + float2 texcoord1 : TEXCOORD1; + float2 texcoord2 : TEXCOORD2; + }; + struct VertexOutput { + V2F_SHADOW_CASTER; + float2 uv0 : TEXCOORD1; + float2 uv1 : TEXCOORD2; + float2 uv2 : TEXCOORD3; + float4 posWorld : TEXCOORD4; + float3 normalDir : TEXCOORD5; + }; + VertexOutput vert (VertexInput v) { + VertexOutput o = (VertexOutput)0; + o.uv0 = v.texcoord0; + o.uv1 = v.texcoord1; + o.uv2 = v.texcoord2; + o.normalDir = UnityObjectToWorldNormal(v.normal); + float4 node_8271 = _Time; + float node_133 = pow((abs((frac((o.uv0+node_8271.g*float2(0.25,0)).r)-0.5))*2.0),_BulgeShape); // Panning gradient + float node_1924 = node_133; + v.vertex.xyz += (node_1924*_BulgeScale*v.normal); + o.posWorld = mul(unity_ObjectToWorld, v.vertex); + o.pos = UnityObjectToClipPos( v.vertex ); + TRANSFER_SHADOW_CASTER(o) + return o; + } + float4 frag(VertexOutput i) : COLOR { + i.normalDir = normalize(i.normalDir); + float3 viewDirection = normalize(_WorldSpaceCameraPos.xyz - i.posWorld.xyz); + float3 normalDirection = i.normalDir; + SHADOW_CASTER_FRAGMENT(i) + } + ENDCG + } + Pass { + Name "Meta" + Tags { + "LightMode"="Meta" + } + Cull Off + + CGPROGRAM + #pragma vertex vert + #pragma fragment frag + #define UNITY_PASS_META 1 + #define SHOULD_SAMPLE_SH ( defined (LIGHTMAP_OFF) && defined(DYNAMICLIGHTMAP_OFF) ) + #include "UnityCG.cginc" + #include "Lighting.cginc" + #include "UnityPBSLighting.cginc" + #include "UnityStandardBRDF.cginc" + #include "UnityMetaPass.cginc" + #pragma fragmentoption ARB_precision_hint_fastest + #pragma multi_compile_shadowcaster + #pragma multi_compile LIGHTMAP_OFF LIGHTMAP_ON + #pragma multi_compile DIRLIGHTMAP_OFF DIRLIGHTMAP_COMBINED DIRLIGHTMAP_SEPARATE + #pragma multi_compile DYNAMICLIGHTMAP_OFF DYNAMICLIGHTMAP_ON + #pragma multi_compile_fog + #pragma only_renderers d3d9 d3d11 glcore gles gles3 metal d3d11_9x xboxone ps4 psp2 n3ds wiiu + #pragma target 3.0 + uniform float _BulgeScale; + uniform sampler2D _Diffuse; uniform float4 _Diffuse_ST; + uniform float4 _GlowColor; + uniform float _BulgeShape; + uniform float _GlowIntensity; + struct VertexInput { + float4 vertex : POSITION; + float3 normal : NORMAL; + float2 texcoord0 : TEXCOORD0; + float2 texcoord1 : TEXCOORD1; + float2 texcoord2 : TEXCOORD2; + }; + struct VertexOutput { + float4 pos : SV_POSITION; + float2 uv0 : TEXCOORD0; + float2 uv1 : TEXCOORD1; + float2 uv2 : TEXCOORD2; + float4 posWorld : TEXCOORD3; + float3 normalDir : TEXCOORD4; + }; + VertexOutput vert (VertexInput v) { + VertexOutput o = (VertexOutput)0; + o.uv0 = v.texcoord0; + o.uv1 = v.texcoord1; + o.uv2 = v.texcoord2; + o.normalDir = UnityObjectToWorldNormal(v.normal); + float4 node_6924 = _Time; + float node_133 = pow((abs((frac((o.uv0+node_6924.g*float2(0.25,0)).r)-0.5))*2.0),_BulgeShape); // Panning gradient + float node_1924 = node_133; + v.vertex.xyz += (node_1924*_BulgeScale*v.normal); + o.posWorld = mul(unity_ObjectToWorld, v.vertex); + o.pos = UnityMetaVertexPosition(v.vertex, v.texcoord1.xy, v.texcoord2.xy, unity_LightmapST, unity_DynamicLightmapST ); + return o; + } + float4 frag(VertexOutput i) : SV_Target { + i.normalDir = normalize(i.normalDir); + float3 viewDirection = normalize(_WorldSpaceCameraPos.xyz - i.posWorld.xyz); + float3 normalDirection = i.normalDir; + UnityMetaInput o; + UNITY_INITIALIZE_OUTPUT( UnityMetaInput, o ); + + float4 node_6924 = _Time; + float node_133 = pow((abs((frac((i.uv0+node_6924.g*float2(0.25,0)).r)-0.5))*2.0),_BulgeShape); // Panning gradient + float node_1924 = node_133; + o.Emission = (_GlowColor.rgb*_GlowIntensity*node_1924); + + float4 _Diffuse_var = tex2D(_Diffuse,TRANSFORM_TEX(i.uv0, _Diffuse)); + float node_8608 = 0.1; + float3 diffColor = lerp(_Diffuse_var.rgb,float3(node_8608,node_8608,node_8608),node_133); + float node_4921 = 1.0; + float3 specColor = float3(node_4921,node_4921,node_4921); + o.Albedo = diffColor + specColor * 0.125; // No gloss connected. Assume it's 0.5 + + return UnityMetaFragment( o ); + } + ENDCG + } + } + FallBack "Diffuse" + CustomEditor "ShaderForgeMaterialInspector" +} diff --git a/Examples/VertexAnimation.shader.meta b/Examples/VertexAnimation.shader.meta new file mode 100644 index 00000000..cae973b1 --- /dev/null +++ b/Examples/VertexAnimation.shader.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 6dedef75fd0484cdf8557f522ceaa8bf +timeCreated: 1503327533 +licenseType: Store +ShaderImporter: + defaultTextures: + - _Diffuse: {fileID: 2800000, guid: b66bceaf0cc0ace4e9bdc92f14bba709, type: 3} + - _Normals: {fileID: 2800000, guid: bbab0a6f7bae9cf42bf057d8ee2755f6, type: 3} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Examples/VertexAnimation_blue.mat b/Examples/VertexAnimation_blue.mat new file mode 100644 index 00000000..8bf59e31 --- /dev/null +++ b/Examples/VertexAnimation_blue.mat @@ -0,0 +1,97 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!21 &2100000 +Material: + serializedVersion: 3 + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + m_Name: VertexAnimation_blue + m_Shader: {fileID: 4800000, guid: 6dedef75fd0484cdf8557f522ceaa8bf, type: 3} + m_ShaderKeywords: [] + m_CustomRenderQueue: -1 + m_SavedProperties: + serializedVersion: 2 + m_TexEnvs: + data: + first: + name: _Normals + second: + m_Texture: {fileID: 2800000, guid: bbab0a6f7bae9cf42bf057d8ee2755f6, type: 3} + m_Scale: {x: 16, y: 1} + m_Offset: {x: 0, y: 0} + data: + first: + name: _Diffuse + second: + m_Texture: {fileID: 2800000, guid: b66bceaf0cc0ace4e9bdc92f14bba709, type: 3} + m_Scale: {x: 16, y: 1} + m_Offset: {x: 0, y: 0} + data: + first: + name: _node72 + second: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + data: + first: + name: _node85 + second: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + data: + first: + name: _node108 + second: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + data: + first: + name: _InnerNormals + second: + m_Texture: {fileID: 2800000, guid: cf20bfced7e912046a9ce991a4d775ec, type: 3} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + data: + first: + name: _node116 + second: + m_Texture: {fileID: 2800000, guid: 5fb7986dd6d0a8e4093ba82369dd6a4d, type: 3} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + data: + first: + name: _node117 + second: + m_Texture: {fileID: 2800000, guid: 5fb7986dd6d0a8e4093ba82369dd6a4d, type: 3} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + m_Floats: + data: + first: + name: _GlowIntensity + second: 8.51000023 + data: + first: + name: _BulgeShape + second: 5 + data: + first: + name: _BulgeScale + second: .200000003 + data: + first: + name: _Magnitude + second: .230769247 + data: + first: + name: _Sharpness + second: 2.61538434 + m_Colors: + data: + first: + name: _GlowColor + second: {r: .110294104, g: .410953432, b: 1, a: 1} diff --git a/Examples/VertexAnimation_blue.mat.meta b/Examples/VertexAnimation_blue.mat.meta new file mode 100644 index 00000000..1d72d0d0 --- /dev/null +++ b/Examples/VertexAnimation_blue.mat.meta @@ -0,0 +1,4 @@ +fileFormatVersion: 2 +guid: 4a36ae71b48f14d6fb2eae31da682a32 +NativeFormatImporter: + userData: diff --git a/Examples/VertexColorRounding.mat b/Examples/VertexColorRounding.mat new file mode 100644 index 00000000..def5ee64 --- /dev/null +++ b/Examples/VertexColorRounding.mat @@ -0,0 +1,21 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!21 &2100000 +Material: + serializedVersion: 3 + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + m_Name: VertexColorRounding + m_Shader: {fileID: 4800000, guid: 49227bca0885f49f9898c7a9ba353bc1, type: 3} + m_ShaderKeywords: [] + m_CustomRenderQueue: -1 + m_SavedProperties: + serializedVersion: 2 + m_TexEnvs: {} + m_Floats: + data: + first: + name: _Divisions + second: .523076952 + m_Colors: {} diff --git a/Examples/VertexColorRounding.mat.meta b/Examples/VertexColorRounding.mat.meta new file mode 100644 index 00000000..7eda021f --- /dev/null +++ b/Examples/VertexColorRounding.mat.meta @@ -0,0 +1,4 @@ +fileFormatVersion: 2 +guid: 5d9b849895144ea4983f3b1f36bbacae +NativeFormatImporter: + userData: diff --git a/Examples/VertexColorRounding.shader b/Examples/VertexColorRounding.shader new file mode 100644 index 00000000..3b5a9d77 --- /dev/null +++ b/Examples/VertexColorRounding.shader @@ -0,0 +1,105 @@ +// Shader created with Shader Forge v1.38 +// Shader Forge (c) Neat Corporation / Joachim Holmer - http://www.acegikmo.com/shaderforge/ +// Note: Manually altering this data may prevent you from opening it in Shader Forge +/*SF_DATA;ver:1.38;sub:START;pass:START;ps:flbk:,iptp:0,cusa:False,bamd:0,cgin:,lico:0,lgpr:1,limd:0,spmd:1,trmd:0,grmd:0,uamb:False,mssp:True,bkdf:True,hqlp:False,rprd:False,enco:False,rmgx:True,imps:True,rpth:0,vtps:0,hqsc:True,nrmq:1,nrsp:0,vomd:0,spxs:False,tesm:0,olmd:1,culm:0,bsrc:0,bdst:1,dpts:2,wrdp:True,dith:0,atcv:False,rfrpo:True,rfrpn:Refraction,coma:15,ufog:False,aust:True,igpj:False,qofs:0,qpre:1,rntp:1,fgom:False,fgoc:False,fgod:False,fgor:False,fgmd:0,fgcr:0.5,fgcg:0.5,fgcb:0.5,fgca:1,fgde:0.01,fgrn:0,fgrf:300,stcl:False,atwp:False,stva:128,stmr:255,stmw:255,stcp:6,stps:0,stfa:0,stfz:0,ofsf:0,ofsu:0,f2p0:False,fnsp:False,fnfb:False,fsmp:False;n:type:ShaderForge.SFN_Final,id:0,x:34043,y:32815,varname:node_0,prsc:2|emission-585-OUT;n:type:ShaderForge.SFN_VertexColor,id:4,x:33627,y:32845,varname:node_4,prsc:2;n:type:ShaderForge.SFN_Slider,id:38,x:33095,y:32967,ptovrint:False,ptlb:Divisions,ptin:_Divisions,varname:_Divisions,prsc:2,glob:False,taghide:False,taghdr:False,tagprd:False,tagnsco:False,tagnrm:False,min:0,cur:0.5639098,max:1;n:type:ShaderForge.SFN_Power,id:42,x:33443,y:32990,varname:node_42,prsc:2|VAL-38-OUT,EXP-44-OUT;n:type:ShaderForge.SFN_Vector1,id:44,x:33252,y:33034,varname:node_44,prsc:2,v1:2;n:type:ShaderForge.SFN_ConstantLerp,id:137,x:33627,y:32990,varname:node_137,prsc:2,a:0.5,b:12|IN-42-OUT;n:type:ShaderForge.SFN_Posterize,id:585,x:33845,y:32915,varname:node_585,prsc:2|IN-4-RGB,STPS-137-OUT;proporder:38;pass:END;sub:END;*/ + +Shader "Shader Forge/Examples/Vertex Color Rounding" { + Properties { + _Divisions ("Divisions", Range(0, 1)) = 0.5639098 + } + SubShader { + Tags { + "RenderType"="Opaque" + } + Pass { + Name "FORWARD" + Tags { + "LightMode"="ForwardBase" + } + + + CGPROGRAM + #pragma vertex vert + #pragma fragment frag + #define UNITY_PASS_FORWARDBASE + #include "UnityCG.cginc" + #pragma multi_compile_fwdbase_fullshadows + #pragma only_renderers d3d9 d3d11 glcore gles gles3 metal d3d11_9x xboxone ps4 psp2 n3ds wiiu + #pragma target 3.0 + uniform float _Divisions; + struct VertexInput { + float4 vertex : POSITION; + float4 vertexColor : COLOR; + }; + struct VertexOutput { + float4 pos : SV_POSITION; + float4 vertexColor : COLOR; + }; + VertexOutput vert (VertexInput v) { + VertexOutput o = (VertexOutput)0; + o.vertexColor = v.vertexColor; + o.pos = UnityObjectToClipPos( v.vertex ); + return o; + } + float4 frag(VertexOutput i) : COLOR { +////// Lighting: +////// Emissive: + float node_137 = lerp(0.5,12,pow(_Divisions,2.0)); + float3 emissive = floor(i.vertexColor.rgb * node_137) / (node_137 - 1); + float3 finalColor = emissive; + return fixed4(finalColor,1); + } + ENDCG + } + Pass { + Name "Meta" + Tags { + "LightMode"="Meta" + } + Cull Off + + CGPROGRAM + #pragma vertex vert + #pragma fragment frag + #define UNITY_PASS_META 1 + #include "UnityCG.cginc" + #include "UnityMetaPass.cginc" + #pragma fragmentoption ARB_precision_hint_fastest + #pragma multi_compile_shadowcaster + #pragma only_renderers d3d9 d3d11 glcore gles gles3 metal d3d11_9x xboxone ps4 psp2 n3ds wiiu + #pragma target 3.0 + uniform float _Divisions; + struct VertexInput { + float4 vertex : POSITION; + float2 texcoord1 : TEXCOORD1; + float2 texcoord2 : TEXCOORD2; + float4 vertexColor : COLOR; + }; + struct VertexOutput { + float4 pos : SV_POSITION; + float4 vertexColor : COLOR; + }; + VertexOutput vert (VertexInput v) { + VertexOutput o = (VertexOutput)0; + o.vertexColor = v.vertexColor; + o.pos = UnityMetaVertexPosition(v.vertex, v.texcoord1.xy, v.texcoord2.xy, unity_LightmapST, unity_DynamicLightmapST ); + return o; + } + float4 frag(VertexOutput i) : SV_Target { + UnityMetaInput o; + UNITY_INITIALIZE_OUTPUT( UnityMetaInput, o ); + + float node_137 = lerp(0.5,12,pow(_Divisions,2.0)); + o.Emission = floor(i.vertexColor.rgb * node_137) / (node_137 - 1); + + float3 diffColor = float3(0,0,0); + o.Albedo = diffColor; + + return UnityMetaFragment( o ); + } + ENDCG + } + } + FallBack "Diffuse" + CustomEditor "ShaderForgeMaterialInspector" +} diff --git a/Examples/VertexColorRounding.shader.meta b/Examples/VertexColorRounding.shader.meta new file mode 100644 index 00000000..fe3fa339 --- /dev/null +++ b/Examples/VertexColorRounding.shader.meta @@ -0,0 +1,9 @@ +fileFormatVersion: 2 +guid: 49227bca0885f49f9898c7a9ba353bc1 +timeCreated: 1503327570 +licenseType: Store +ShaderImporter: + defaultTextures: [] + userData: + assetBundleName: + assetBundleVariant: From fdbf18f2504e9e70603036f4340b6f30d909dd3e Mon Sep 17 00:00:00 2001 From: Pyro_akm Date: Mon, 4 Feb 2019 13:50:39 +0100 Subject: [PATCH 20/27] Shader Forge v1.41, restored examples, adapted to Unity 2018.3.3. --- Editor/Code/_Utility/SF_Tools.cs | 2 +- README.md | 2 ++ Readme.txt | 4 +++- 3 files changed, 6 insertions(+), 2 deletions(-) diff --git a/Editor/Code/_Utility/SF_Tools.cs b/Editor/Code/_Utility/SF_Tools.cs index e422a8d0..b2d46551 100644 --- a/Editor/Code/_Utility/SF_Tools.cs +++ b/Editor/Code/_Utility/SF_Tools.cs @@ -31,7 +31,7 @@ public static class SF_Tools { // Versioning public static int versionNumPrimary = 1; - public static int versionNumSecondary = 40; + public static int versionNumSecondary = 41; public static string versionStage = ""; public static string version = versionNumPrimary + "." + versionNumSecondary.ToString( "D2" ); public static string versionString = "Shader Forge v" + version; diff --git a/README.md b/README.md index 3275b12a..da4174d0 100644 --- a/README.md +++ b/README.md @@ -7,3 +7,5 @@ Permission is hereby granted, free of charge, to any person obtaining a copy of The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + +Enhanced by Arkham Development - http://www.arkham-development.com/ diff --git a/Readme.txt b/Readme.txt index 86c66ba4..aa8ea7a2 100644 --- a/Readme.txt +++ b/Readme.txt @@ -1,7 +1,6 @@  README - SHADER FORGE - Contact: -------- Keep in mind that Shader Forge has been discontinued! @@ -14,6 +13,9 @@ Website: -------- http://www.acegikmo.com/shaderforge/ (Includes documentation, tutorials, links to forum threads, and more!) +Enhancements +------------ +This version is enhanced by Arkham Development - http://www.arkham-development.com/ Installation: ------------- From 1c23c51eecdb0cbde4a4028b93f41a7628c58f24 Mon Sep 17 00:00:00 2001 From: Pyro_akm Date: Mon, 4 Feb 2019 14:00:45 +0100 Subject: [PATCH 21/27] Merged fixes from atf-cguerin. --- Editor/Code/_Evaluator/SF_Evaluator.cs | 21 ++++++++++++++++++--- 1 file changed, 18 insertions(+), 3 deletions(-) diff --git a/Editor/Code/_Evaluator/SF_Evaluator.cs b/Editor/Code/_Evaluator/SF_Evaluator.cs index 1f496250..2c4db3b2 100644 --- a/Editor/Code/_Evaluator/SF_Evaluator.cs +++ b/Editor/Code/_Evaluator/SF_Evaluator.cs @@ -969,10 +969,22 @@ void InitAttenuation() { if( SF_Evaluator.inVert && ps.catLighting.IsVertexLit() && ShouldUseLightMacros() ) App( "TRANSFER_VERTEX_TO_FRAGMENT(o)" ); +#if UNITY_2018_1_OR_NEWER + if (ShouldUseLightMacros()) + { + string s = ( ( currentProgram == ShaderProgram.Frag ) ? "i" : "o" ); + App( "UNITY_LIGHT_ATTENUATION(attenuation, " + s + ", " + s + ".posWorld.xyz);" ); + } + else + { + App( "float attenuation = 1;" ); + } +#else //UNITY_2018_1_OR_NEWER string atten = "LIGHT_ATTENUATION(" + ( ( currentProgram == ShaderProgram.Frag ) ? "i" : "o" ) + ")"; string inner = ( ShouldUseLightMacros() ? atten : "1" ); App( "float attenuation = " + inner + ";" ); +#endif //UNITY_2018_1_OR_NEWER if( ps.catLighting.lightMode != SFPSC_Lighting.LightMode.Unlit ) App( "float3 attenColor = attenuation * _LightColor0.xyz;" ); } @@ -1151,9 +1163,12 @@ void CalcDiffuse() { App( "indirectDiffuse += " + ps.n_ambientDiffuse + "; // Diffuse Ambient Light" ); - if( LightmappedAndLit() ) { - - + if( LightmappedAndLit() ) + { + if (currentPass == PassType.Deferred) + { + App("#pragma multi_compile ___ LIGHTPROBE_SH"); + } App( "indirectDiffuse += gi.indirect.diffuse;" ); From ae77bb6c084bcc35af4137ecaafda40d0d79bac7 Mon Sep 17 00:00:00 2001 From: Pyro_akm Date: Tue, 5 Feb 2019 11:57:09 +0100 Subject: [PATCH 22/27] Updated readme. --- README.md | 2 -- 1 file changed, 2 deletions(-) diff --git a/README.md b/README.md index da4174d0..3275b12a 100644 --- a/README.md +++ b/README.md @@ -7,5 +7,3 @@ Permission is hereby granted, free of charge, to any person obtaining a copy of The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. - -Enhanced by Arkham Development - http://www.arkham-development.com/ From da4d98ee3495877fa7b6d5303e9f900061d258e2 Mon Sep 17 00:00:00 2001 From: Pyro_akm Date: Mon, 18 Feb 2019 11:31:56 +0100 Subject: [PATCH 23/27] Added asm and package file (RobertAcksel), updated some meta files. --- .../Nodes/Data/node_3d_data_mask.png.meta | 226 ++++++++++++++++- .../Nodes/Data/sfn_bitangent.png.meta | 226 ++++++++++++++++- .../Interface/Nodes/Data/sfn_depth.png.meta | 227 ++++++++++++++++- .../Nodes/Data/sfn_fragmentposition.png.meta | 226 ++++++++++++++++- .../Interface/Nodes/Data/sfn_fresnel.png.meta | 226 ++++++++++++++++- .../Nodes/Data/sfn_halfvector.png.meta | 226 ++++++++++++++++- .../Nodes/Data/sfn_lightattenuation.png.meta | 226 ++++++++++++++++- .../Nodes/Data/sfn_lightcolor.png.meta | 226 ++++++++++++++++- .../Nodes/Data/sfn_lightvector.png.meta | 226 ++++++++++++++++- .../Nodes/Data/sfn_normalvector.png.meta | 226 ++++++++++++++++- .../Nodes/Data/sfn_normalvector_2.png.meta | 226 ++++++++++++++++- .../Interface/Nodes/Data/sfn_tangent.png.meta | 226 ++++++++++++++++- .../Data/sfn_viewreflectionvector.png.meta | 226 ++++++++++++++++- .../Nodes/Data/sfn_viewvector.png.meta | 226 ++++++++++++++++- .../Interface/Nodes/sfn_ambientlight.png.meta | 226 ++++++++++++++++- .../Interface/Nodes/sfn_bitangent.png.meta | 226 ++++++++++++++++- .../Interface/Nodes/sfn_depth.png.meta | 227 ++++++++++++++++- .../Interface/Nodes/sfn_e.png.meta | 226 ++++++++++++++++- .../Interface/Nodes/sfn_facesign.png.meta | 228 +++++++++++++++-- .../Interface/Nodes/sfn_facesign_2.png.meta | 228 +++++++++++++++-- .../Interface/Nodes/sfn_final.png.meta | 226 ++++++++++++++++- .../Interface/Nodes/sfn_fogcolor.png.meta | 227 ++++++++++++++++- .../Interface/Nodes/sfn_fogcolor_2.png.meta | 227 ++++++++++++++++- .../Nodes/sfn_fragmentposition.png.meta | 226 ++++++++++++++++- .../Interface/Nodes/sfn_halfvector.png.meta | 226 ++++++++++++++++- .../Nodes/sfn_lightattenuation.png.meta | 226 ++++++++++++++++- .../Interface/Nodes/sfn_lightcolor.png.meta | 226 ++++++++++++++++- .../Nodes/sfn_lightposition.png.meta | 226 ++++++++++++++++- .../Interface/Nodes/sfn_lightvector.png.meta | 226 ++++++++++++++++- .../Interface/Nodes/sfn_normalvector.png.meta | 226 ++++++++++++++++- .../Nodes/sfn_normalvector_2.png.meta | 226 ++++++++++++++++- .../Nodes/sfn_objectposition.png.meta | 226 ++++++++++++++++- .../Interface/Nodes/sfn_objectscale.png.meta | 227 ++++++++++++++++- .../Interface/Nodes/sfn_phi.png.meta | 226 ++++++++++++++++- .../Interface/Nodes/sfn_pi.png.meta | 226 ++++++++++++++++- .../Nodes/sfn_projectionparameters.png.meta | 226 ++++++++++++++++- .../Interface/Nodes/sfn_root2.png.meta | 226 ++++++++++++++++- .../Nodes/sfn_screenparameters.png.meta | 226 ++++++++++++++++- .../Interface/Nodes/sfn_screenpos.png.meta | 226 ++++++++++++++++- .../Interface/Nodes/sfn_screenpos_2.png.meta | 226 ++++++++++++++++- .../Interface/Nodes/sfn_screenpos_3.png.meta | 226 ++++++++++++++++- .../Interface/Nodes/sfn_tangent.png.meta | 226 ++++++++++++++++- .../Interface/Nodes/sfn_tau.png.meta | 226 ++++++++++++++++- .../Interface/Nodes/sfn_time.png.meta | 226 ++++++++++++++++- .../Interface/Nodes/sfn_vertexcolor.png.meta | 226 ++++++++++++++++- .../Interface/Nodes/sfn_viewposition.png.meta | 226 ++++++++++++++++- .../Nodes/sfn_viewreflectionvector.png.meta | 226 ++++++++++++++++- .../Interface/Nodes/sfn_viewvector.png.meta | 226 ++++++++++++++++- .../InternalResources/Interface/chk.png.meta | 226 ++++++++++++++++- .../Interface/chk_light.png.meta | 226 ++++++++++++++++- .../Interface/handle_drag.tga.meta | 226 ++++++++++++++++- .../InternalResources/Interface/icon.png.meta | 224 ++++++++++++++++- .../Interface/icon_light.png.meta | 224 ++++++++++++++++- .../Interface/icon_normal.tga.meta | 224 ++++++++++++++++- .../Interface/inst_frag.png.meta | 226 ++++++++++++++++- .../Interface/inst_frag_light.png.meta | 226 ++++++++++++++++- .../Interface/inst_frag_tex.png.meta | 226 ++++++++++++++++- .../Interface/inst_frag_tex_light.png.meta | 226 ++++++++++++++++- .../Interface/inst_vert.png.meta | 226 ++++++++++++++++- .../Interface/inst_vert_light.png.meta | 226 ++++++++++++++++- .../Interface/inst_vert_tex.png.meta | 226 ++++++++++++++++- .../Interface/inst_vert_tex_light.png.meta | 226 ++++++++++++++++- .../InternalResources/Interface/logo.png.meta | 226 ++++++++++++++++- .../Interface/logo_light.png.meta | 226 ++++++++++++++++- .../Interface/preset_custom.png.meta | 228 +++++++++++++++-- .../Interface/preset_highlight.png.meta | 228 +++++++++++++++-- .../Interface/preset_litbasic.png.meta | 228 +++++++++++++++-- .../Interface/preset_litpbr.png.meta | 228 +++++++++++++++-- .../preset_particleadditive.png.meta | 229 ++++++++++++++++-- .../preset_particleadditive_light.png.meta | 229 ++++++++++++++++-- .../preset_particlealphablended.png.meta | 229 ++++++++++++++++-- ...preset_particlealphablended_light.png.meta | 229 ++++++++++++++++-- .../preset_particlemultiplicative.png.meta | 229 ++++++++++++++++-- ...eset_particlemultiplicative_light.png.meta | 229 ++++++++++++++++-- .../Interface/preset_posteffect.png.meta | 229 ++++++++++++++++-- .../Interface/preset_sky.png.meta | 228 +++++++++++++++-- .../Interface/preset_sprite.png.meta | 228 +++++++++++++++-- .../Interface/preset_unlit.png.meta | 228 +++++++++++++++-- .../Interface/screenshot_icon.png.meta | 224 ++++++++++++++++- .../Interface/screenshot_icon_light.png.meta | 224 ++++++++++++++++- .../Meshes/sf_meshes.fbx.meta | 62 +++-- ShaderForge.Editor.asmdef | 15 ++ ShaderForge.Editor.asmdef.meta | 7 + package.json | 8 + package.json.meta | 7 + 85 files changed, 17348 insertions(+), 865 deletions(-) create mode 100644 ShaderForge.Editor.asmdef create mode 100644 ShaderForge.Editor.asmdef.meta create mode 100644 package.json create mode 100644 package.json.meta diff --git a/Editor/InternalResources/Interface/Nodes/Data/node_3d_data_mask.png.meta b/Editor/InternalResources/Interface/Nodes/Data/node_3d_data_mask.png.meta index 88f71250..eab3a142 100644 --- a/Editor/InternalResources/Interface/Nodes/Data/node_3d_data_mask.png.meta +++ b/Editor/InternalResources/Interface/Nodes/Data/node_3d_data_mask.png.meta @@ -2,32 +2,41 @@ fileFormatVersion: 2 guid: 93411440cabbd493e9d9b949ba3c82fd TextureImporter: fileIDToRecycleName: {} - serializedVersion: 2 + externalObjects: {} + serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 0 + sRGBTexture: 0 linearTexture: 1 - correctGamma: 0 fadeOut: 0 borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 - heightScale: .25 + heightScale: 0.25 normalMapFilter: 0 isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 grayScaleToAlpha: 0 - generateCubemap: 0 + generateCubemap: 6 + cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: -3 maxTextureSize: 128 textureSettings: + serializedVersion: 2 filterMode: 2 aniso: 0 - mipBias: -1 - wrapMode: 1 + mipBias: -100 + wrapU: 1 + wrapV: 1 + wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 @@ -35,13 +44,210 @@ TextureImporter: spriteExtrude: 1 spriteMeshType: 1 alignment: 0 - spritePivot: {x: .5, y: .5} - spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 alphaIsTransparency: 1 - textureType: 5 - buildTargetSettings: [] + spriteTessellationDetail: -1 + textureType: 0 + textureShape: 1 + singleChannelComponent: 0 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + platformSettings: + - serializedVersion: 2 + buildTarget: DefaultTexturePlatform + maxTextureSize: 128 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Standalone + maxTextureSize: 96 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: iPhone + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Android + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Web + maxTextureSize: 48 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: WebGL + maxTextureSize: 48 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Windows Store Apps + maxTextureSize: 48 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Tizen + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: PSP2 + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: PS4 + maxTextureSize: 48 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: XboxOne + maxTextureSize: 48 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Samsung TV + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Nintendo 3DS + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: WiiU + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Nintendo Switch + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: tvOS + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 spriteSheet: + serializedVersion: 2 sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + vertices: [] + indices: + edges: [] + weights: [] spritePackingTag: + pSDRemoveMatte: 0 + pSDShowRemoveMatteOption: 0 userData: + assetBundleName: + assetBundleVariant: diff --git a/Editor/InternalResources/Interface/Nodes/Data/sfn_bitangent.png.meta b/Editor/InternalResources/Interface/Nodes/Data/sfn_bitangent.png.meta index ff9813e3..407a0bef 100644 --- a/Editor/InternalResources/Interface/Nodes/Data/sfn_bitangent.png.meta +++ b/Editor/InternalResources/Interface/Nodes/Data/sfn_bitangent.png.meta @@ -2,32 +2,41 @@ fileFormatVersion: 2 guid: 51aa11ae9f6e54c76b49ebb6f6bf55a3 TextureImporter: fileIDToRecycleName: {} - serializedVersion: 2 + externalObjects: {} + serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 1 + sRGBTexture: 0 linearTexture: 1 - correctGamma: 0 fadeOut: 0 borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 - heightScale: .25 + heightScale: 0.25 normalMapFilter: 0 isReadable: 1 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 grayScaleToAlpha: 0 - generateCubemap: 0 + generateCubemap: 6 + cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: -3 maxTextureSize: 128 textureSettings: + serializedVersion: 2 filterMode: 2 aniso: 0 - mipBias: -1 - wrapMode: 1 + mipBias: -100 + wrapU: 1 + wrapV: 1 + wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 @@ -35,13 +44,210 @@ TextureImporter: spriteExtrude: 1 spriteMeshType: 1 alignment: 0 - spritePivot: {x: .5, y: .5} - spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 alphaIsTransparency: 1 - textureType: -1 - buildTargetSettings: [] + spriteTessellationDetail: -1 + textureType: 0 + textureShape: 1 + singleChannelComponent: 0 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + platformSettings: + - serializedVersion: 2 + buildTarget: DefaultTexturePlatform + maxTextureSize: 128 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Standalone + maxTextureSize: 96 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: iPhone + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Android + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Web + maxTextureSize: 48 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: WebGL + maxTextureSize: 48 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Windows Store Apps + maxTextureSize: 48 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Tizen + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: PSP2 + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: PS4 + maxTextureSize: 48 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: XboxOne + maxTextureSize: 48 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Samsung TV + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Nintendo 3DS + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: WiiU + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Nintendo Switch + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: tvOS + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 spriteSheet: + serializedVersion: 2 sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + vertices: [] + indices: + edges: [] + weights: [] spritePackingTag: + pSDRemoveMatte: 0 + pSDShowRemoveMatteOption: 0 userData: + assetBundleName: + assetBundleVariant: diff --git a/Editor/InternalResources/Interface/Nodes/Data/sfn_depth.png.meta b/Editor/InternalResources/Interface/Nodes/Data/sfn_depth.png.meta index 3053d41c..a2ad233e 100644 --- a/Editor/InternalResources/Interface/Nodes/Data/sfn_depth.png.meta +++ b/Editor/InternalResources/Interface/Nodes/Data/sfn_depth.png.meta @@ -2,51 +2,252 @@ fileFormatVersion: 2 guid: 9a06ccda88cf08040b15236734546bba TextureImporter: fileIDToRecycleName: {} - serializedVersion: 2 + externalObjects: {} + serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 1 + sRGBTexture: 0 linearTexture: 1 - correctGamma: 0 fadeOut: 0 borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 - heightScale: .25 + heightScale: 0.25 normalMapFilter: 0 isReadable: 1 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 grayScaleToAlpha: 0 - generateCubemap: 0 + generateCubemap: 6 cubemapConvolution: 0 - cubemapConvolutionSteps: 8 - cubemapConvolutionExponent: 1.5 seamlessCubemap: 0 textureFormat: -3 maxTextureSize: 128 textureSettings: + serializedVersion: 2 filterMode: 2 aniso: 0 - mipBias: -1 - wrapMode: 1 + mipBias: -100 + wrapU: 1 + wrapV: 1 + wrapW: 1 nPOTScale: 0 lightmap: 0 - rGBM: 0 compressionQuality: 50 spriteMode: 0 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 - spritePivot: {x: .5, y: .5} - spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 alphaIsTransparency: 1 - textureType: -1 - buildTargetSettings: [] + spriteTessellationDetail: -1 + textureType: 0 + textureShape: 1 + singleChannelComponent: 0 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + platformSettings: + - serializedVersion: 2 + buildTarget: DefaultTexturePlatform + maxTextureSize: 128 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Standalone + maxTextureSize: 96 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: iPhone + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Android + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Web + maxTextureSize: 48 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: WebGL + maxTextureSize: 48 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Windows Store Apps + maxTextureSize: 48 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Tizen + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: PSP2 + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: PS4 + maxTextureSize: 48 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: XboxOne + maxTextureSize: 48 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Samsung TV + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Nintendo 3DS + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: WiiU + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Nintendo Switch + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: tvOS + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 spriteSheet: + serializedVersion: 2 sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + vertices: [] + indices: + edges: [] + weights: [] spritePackingTag: + pSDRemoveMatte: 0 + pSDShowRemoveMatteOption: 0 userData: assetBundleName: + assetBundleVariant: diff --git a/Editor/InternalResources/Interface/Nodes/Data/sfn_fragmentposition.png.meta b/Editor/InternalResources/Interface/Nodes/Data/sfn_fragmentposition.png.meta index 602faeae..d9cb1ad0 100644 --- a/Editor/InternalResources/Interface/Nodes/Data/sfn_fragmentposition.png.meta +++ b/Editor/InternalResources/Interface/Nodes/Data/sfn_fragmentposition.png.meta @@ -2,32 +2,41 @@ fileFormatVersion: 2 guid: 335d39ac920954c01ac193e693291d4a TextureImporter: fileIDToRecycleName: {} - serializedVersion: 2 + externalObjects: {} + serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 1 + sRGBTexture: 0 linearTexture: 1 - correctGamma: 0 fadeOut: 0 borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 - heightScale: .25 + heightScale: 0.25 normalMapFilter: 0 isReadable: 1 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 grayScaleToAlpha: 0 - generateCubemap: 0 + generateCubemap: 6 + cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: -3 maxTextureSize: 128 textureSettings: + serializedVersion: 2 filterMode: 2 aniso: 0 - mipBias: -1 - wrapMode: 1 + mipBias: -100 + wrapU: 1 + wrapV: 1 + wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 @@ -35,13 +44,210 @@ TextureImporter: spriteExtrude: 1 spriteMeshType: 1 alignment: 0 - spritePivot: {x: .5, y: .5} - spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 alphaIsTransparency: 1 - textureType: -1 - buildTargetSettings: [] + spriteTessellationDetail: -1 + textureType: 0 + textureShape: 1 + singleChannelComponent: 0 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + platformSettings: + - serializedVersion: 2 + buildTarget: DefaultTexturePlatform + maxTextureSize: 128 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Standalone + maxTextureSize: 96 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: iPhone + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Android + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Web + maxTextureSize: 48 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: WebGL + maxTextureSize: 48 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Windows Store Apps + maxTextureSize: 48 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Tizen + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: PSP2 + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: PS4 + maxTextureSize: 48 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: XboxOne + maxTextureSize: 48 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Samsung TV + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Nintendo 3DS + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: WiiU + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Nintendo Switch + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: tvOS + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 spriteSheet: + serializedVersion: 2 sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + vertices: [] + indices: + edges: [] + weights: [] spritePackingTag: + pSDRemoveMatte: 0 + pSDShowRemoveMatteOption: 0 userData: + assetBundleName: + assetBundleVariant: diff --git a/Editor/InternalResources/Interface/Nodes/Data/sfn_fresnel.png.meta b/Editor/InternalResources/Interface/Nodes/Data/sfn_fresnel.png.meta index 8e3c8567..8b745cce 100644 --- a/Editor/InternalResources/Interface/Nodes/Data/sfn_fresnel.png.meta +++ b/Editor/InternalResources/Interface/Nodes/Data/sfn_fresnel.png.meta @@ -2,32 +2,41 @@ fileFormatVersion: 2 guid: 5de0eafe0c281495b8272d9a1d7c3ea8 TextureImporter: fileIDToRecycleName: {} - serializedVersion: 2 + externalObjects: {} + serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 1 + sRGBTexture: 0 linearTexture: 1 - correctGamma: 0 fadeOut: 0 borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 - heightScale: .25 + heightScale: 0.25 normalMapFilter: 0 isReadable: 1 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 grayScaleToAlpha: 0 - generateCubemap: 0 + generateCubemap: 6 + cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: -3 maxTextureSize: 128 textureSettings: + serializedVersion: 2 filterMode: 2 aniso: 0 - mipBias: -1 - wrapMode: 1 + mipBias: -100 + wrapU: 1 + wrapV: 1 + wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 @@ -35,13 +44,210 @@ TextureImporter: spriteExtrude: 1 spriteMeshType: 1 alignment: 0 - spritePivot: {x: .5, y: .5} - spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 alphaIsTransparency: 1 - textureType: -1 - buildTargetSettings: [] + spriteTessellationDetail: -1 + textureType: 0 + textureShape: 1 + singleChannelComponent: 0 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + platformSettings: + - serializedVersion: 2 + buildTarget: DefaultTexturePlatform + maxTextureSize: 128 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Standalone + maxTextureSize: 96 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: iPhone + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Android + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Web + maxTextureSize: 48 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: WebGL + maxTextureSize: 48 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Windows Store Apps + maxTextureSize: 48 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Tizen + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: PSP2 + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: PS4 + maxTextureSize: 48 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: XboxOne + maxTextureSize: 48 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Samsung TV + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Nintendo 3DS + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: WiiU + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Nintendo Switch + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: tvOS + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 spriteSheet: + serializedVersion: 2 sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + vertices: [] + indices: + edges: [] + weights: [] spritePackingTag: + pSDRemoveMatte: 0 + pSDShowRemoveMatteOption: 0 userData: + assetBundleName: + assetBundleVariant: diff --git a/Editor/InternalResources/Interface/Nodes/Data/sfn_halfvector.png.meta b/Editor/InternalResources/Interface/Nodes/Data/sfn_halfvector.png.meta index 76d68986..a41810c0 100644 --- a/Editor/InternalResources/Interface/Nodes/Data/sfn_halfvector.png.meta +++ b/Editor/InternalResources/Interface/Nodes/Data/sfn_halfvector.png.meta @@ -2,32 +2,41 @@ fileFormatVersion: 2 guid: 7c62f563fecb4463caea085e4c88d754 TextureImporter: fileIDToRecycleName: {} - serializedVersion: 2 + externalObjects: {} + serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 1 + sRGBTexture: 0 linearTexture: 1 - correctGamma: 0 fadeOut: 0 borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 - heightScale: .25 + heightScale: 0.25 normalMapFilter: 0 isReadable: 1 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 grayScaleToAlpha: 0 - generateCubemap: 0 + generateCubemap: 6 + cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: -3 maxTextureSize: 128 textureSettings: + serializedVersion: 2 filterMode: 2 aniso: 0 - mipBias: -1 - wrapMode: 1 + mipBias: -100 + wrapU: 1 + wrapV: 1 + wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 @@ -35,13 +44,210 @@ TextureImporter: spriteExtrude: 1 spriteMeshType: 1 alignment: 0 - spritePivot: {x: .5, y: .5} - spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 alphaIsTransparency: 1 - textureType: -1 - buildTargetSettings: [] + spriteTessellationDetail: -1 + textureType: 0 + textureShape: 1 + singleChannelComponent: 0 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + platformSettings: + - serializedVersion: 2 + buildTarget: DefaultTexturePlatform + maxTextureSize: 128 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Standalone + maxTextureSize: 96 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: iPhone + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Android + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Web + maxTextureSize: 48 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: WebGL + maxTextureSize: 48 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Windows Store Apps + maxTextureSize: 48 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Tizen + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: PSP2 + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: PS4 + maxTextureSize: 48 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: XboxOne + maxTextureSize: 48 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Samsung TV + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Nintendo 3DS + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: WiiU + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Nintendo Switch + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: tvOS + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 spriteSheet: + serializedVersion: 2 sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + vertices: [] + indices: + edges: [] + weights: [] spritePackingTag: + pSDRemoveMatte: 0 + pSDShowRemoveMatteOption: 0 userData: + assetBundleName: + assetBundleVariant: diff --git a/Editor/InternalResources/Interface/Nodes/Data/sfn_lightattenuation.png.meta b/Editor/InternalResources/Interface/Nodes/Data/sfn_lightattenuation.png.meta index bf2aa3a4..c327be15 100644 --- a/Editor/InternalResources/Interface/Nodes/Data/sfn_lightattenuation.png.meta +++ b/Editor/InternalResources/Interface/Nodes/Data/sfn_lightattenuation.png.meta @@ -2,32 +2,41 @@ fileFormatVersion: 2 guid: ba371855252614506947b2f28f1d8f17 TextureImporter: fileIDToRecycleName: {} - serializedVersion: 2 + externalObjects: {} + serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 1 + sRGBTexture: 0 linearTexture: 1 - correctGamma: 0 fadeOut: 0 borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 - heightScale: .25 + heightScale: 0.25 normalMapFilter: 0 isReadable: 1 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 grayScaleToAlpha: 0 - generateCubemap: 0 + generateCubemap: 6 + cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: -3 maxTextureSize: 128 textureSettings: + serializedVersion: 2 filterMode: 2 aniso: 0 - mipBias: -1 - wrapMode: 1 + mipBias: -100 + wrapU: 1 + wrapV: 1 + wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 @@ -35,13 +44,210 @@ TextureImporter: spriteExtrude: 1 spriteMeshType: 1 alignment: 0 - spritePivot: {x: .5, y: .5} - spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 alphaIsTransparency: 1 - textureType: 5 - buildTargetSettings: [] + spriteTessellationDetail: -1 + textureType: 0 + textureShape: 1 + singleChannelComponent: 0 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + platformSettings: + - serializedVersion: 2 + buildTarget: DefaultTexturePlatform + maxTextureSize: 128 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Standalone + maxTextureSize: 96 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: iPhone + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Android + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Web + maxTextureSize: 48 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: WebGL + maxTextureSize: 48 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Windows Store Apps + maxTextureSize: 48 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Tizen + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: PSP2 + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: PS4 + maxTextureSize: 48 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: XboxOne + maxTextureSize: 48 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Samsung TV + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Nintendo 3DS + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: WiiU + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Nintendo Switch + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: tvOS + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 spriteSheet: + serializedVersion: 2 sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + vertices: [] + indices: + edges: [] + weights: [] spritePackingTag: + pSDRemoveMatte: 0 + pSDShowRemoveMatteOption: 0 userData: + assetBundleName: + assetBundleVariant: diff --git a/Editor/InternalResources/Interface/Nodes/Data/sfn_lightcolor.png.meta b/Editor/InternalResources/Interface/Nodes/Data/sfn_lightcolor.png.meta index c9bf1111..53f78f4d 100644 --- a/Editor/InternalResources/Interface/Nodes/Data/sfn_lightcolor.png.meta +++ b/Editor/InternalResources/Interface/Nodes/Data/sfn_lightcolor.png.meta @@ -2,32 +2,41 @@ fileFormatVersion: 2 guid: 67173129de388421e8f4932415108e68 TextureImporter: fileIDToRecycleName: {} - serializedVersion: 2 + externalObjects: {} + serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 1 + sRGBTexture: 0 linearTexture: 1 - correctGamma: 0 fadeOut: 0 borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 - heightScale: .25 + heightScale: 0.25 normalMapFilter: 0 isReadable: 1 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 grayScaleToAlpha: 0 - generateCubemap: 0 + generateCubemap: 6 + cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: -3 maxTextureSize: 128 textureSettings: + serializedVersion: 2 filterMode: 2 aniso: 0 - mipBias: -1 - wrapMode: 1 + mipBias: -100 + wrapU: 1 + wrapV: 1 + wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 @@ -35,13 +44,210 @@ TextureImporter: spriteExtrude: 1 spriteMeshType: 1 alignment: 0 - spritePivot: {x: .5, y: .5} - spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 alphaIsTransparency: 1 - textureType: 5 - buildTargetSettings: [] + spriteTessellationDetail: -1 + textureType: 0 + textureShape: 1 + singleChannelComponent: 0 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + platformSettings: + - serializedVersion: 2 + buildTarget: DefaultTexturePlatform + maxTextureSize: 128 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Standalone + maxTextureSize: 96 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: iPhone + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Android + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Web + maxTextureSize: 48 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: WebGL + maxTextureSize: 48 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Windows Store Apps + maxTextureSize: 48 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Tizen + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: PSP2 + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: PS4 + maxTextureSize: 48 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: XboxOne + maxTextureSize: 48 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Samsung TV + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Nintendo 3DS + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: WiiU + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Nintendo Switch + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: tvOS + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 spriteSheet: + serializedVersion: 2 sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + vertices: [] + indices: + edges: [] + weights: [] spritePackingTag: + pSDRemoveMatte: 0 + pSDShowRemoveMatteOption: 0 userData: + assetBundleName: + assetBundleVariant: diff --git a/Editor/InternalResources/Interface/Nodes/Data/sfn_lightvector.png.meta b/Editor/InternalResources/Interface/Nodes/Data/sfn_lightvector.png.meta index 5b574c5a..5533a1ec 100644 --- a/Editor/InternalResources/Interface/Nodes/Data/sfn_lightvector.png.meta +++ b/Editor/InternalResources/Interface/Nodes/Data/sfn_lightvector.png.meta @@ -2,32 +2,41 @@ fileFormatVersion: 2 guid: 8e12b01a3c4a545ecb549a9b3c7670cd TextureImporter: fileIDToRecycleName: {} - serializedVersion: 2 + externalObjects: {} + serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 1 + sRGBTexture: 0 linearTexture: 1 - correctGamma: 0 fadeOut: 0 borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 - heightScale: .25 + heightScale: 0.25 normalMapFilter: 0 isReadable: 1 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 grayScaleToAlpha: 0 - generateCubemap: 0 + generateCubemap: 6 + cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: -3 maxTextureSize: 128 textureSettings: + serializedVersion: 2 filterMode: 2 aniso: 0 - mipBias: -1 - wrapMode: 1 + mipBias: -100 + wrapU: 1 + wrapV: 1 + wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 @@ -35,13 +44,210 @@ TextureImporter: spriteExtrude: 1 spriteMeshType: 1 alignment: 0 - spritePivot: {x: .5, y: .5} - spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 alphaIsTransparency: 1 - textureType: -1 - buildTargetSettings: [] + spriteTessellationDetail: -1 + textureType: 0 + textureShape: 1 + singleChannelComponent: 0 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + platformSettings: + - serializedVersion: 2 + buildTarget: DefaultTexturePlatform + maxTextureSize: 128 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Standalone + maxTextureSize: 96 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: iPhone + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Android + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Web + maxTextureSize: 48 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: WebGL + maxTextureSize: 48 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Windows Store Apps + maxTextureSize: 48 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Tizen + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: PSP2 + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: PS4 + maxTextureSize: 48 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: XboxOne + maxTextureSize: 48 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Samsung TV + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Nintendo 3DS + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: WiiU + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Nintendo Switch + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: tvOS + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 spriteSheet: + serializedVersion: 2 sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + vertices: [] + indices: + edges: [] + weights: [] spritePackingTag: + pSDRemoveMatte: 0 + pSDShowRemoveMatteOption: 0 userData: + assetBundleName: + assetBundleVariant: diff --git a/Editor/InternalResources/Interface/Nodes/Data/sfn_normalvector.png.meta b/Editor/InternalResources/Interface/Nodes/Data/sfn_normalvector.png.meta index 09880fb4..f6f5b534 100644 --- a/Editor/InternalResources/Interface/Nodes/Data/sfn_normalvector.png.meta +++ b/Editor/InternalResources/Interface/Nodes/Data/sfn_normalvector.png.meta @@ -2,32 +2,41 @@ fileFormatVersion: 2 guid: 398df227343444572afe5e225ddd06aa TextureImporter: fileIDToRecycleName: {} - serializedVersion: 2 + externalObjects: {} + serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 1 + sRGBTexture: 0 linearTexture: 1 - correctGamma: 0 fadeOut: 0 borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 - heightScale: .25 + heightScale: 0.25 normalMapFilter: 0 isReadable: 1 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 grayScaleToAlpha: 0 - generateCubemap: 0 + generateCubemap: 6 + cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: -3 maxTextureSize: 128 textureSettings: + serializedVersion: 2 filterMode: 2 aniso: 0 - mipBias: -1 - wrapMode: 1 + mipBias: -100 + wrapU: 1 + wrapV: 1 + wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 @@ -35,13 +44,210 @@ TextureImporter: spriteExtrude: 1 spriteMeshType: 1 alignment: 0 - spritePivot: {x: .5, y: .5} - spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 alphaIsTransparency: 1 - textureType: -1 - buildTargetSettings: [] + spriteTessellationDetail: -1 + textureType: 0 + textureShape: 1 + singleChannelComponent: 0 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + platformSettings: + - serializedVersion: 2 + buildTarget: DefaultTexturePlatform + maxTextureSize: 128 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Standalone + maxTextureSize: 96 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: iPhone + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Android + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Web + maxTextureSize: 48 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: WebGL + maxTextureSize: 48 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Windows Store Apps + maxTextureSize: 48 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Tizen + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: PSP2 + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: PS4 + maxTextureSize: 48 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: XboxOne + maxTextureSize: 48 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Samsung TV + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Nintendo 3DS + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: WiiU + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Nintendo Switch + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: tvOS + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 spriteSheet: + serializedVersion: 2 sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + vertices: [] + indices: + edges: [] + weights: [] spritePackingTag: + pSDRemoveMatte: 0 + pSDShowRemoveMatteOption: 0 userData: + assetBundleName: + assetBundleVariant: diff --git a/Editor/InternalResources/Interface/Nodes/Data/sfn_normalvector_2.png.meta b/Editor/InternalResources/Interface/Nodes/Data/sfn_normalvector_2.png.meta index 3a0e07d8..6c230215 100644 --- a/Editor/InternalResources/Interface/Nodes/Data/sfn_normalvector_2.png.meta +++ b/Editor/InternalResources/Interface/Nodes/Data/sfn_normalvector_2.png.meta @@ -2,32 +2,41 @@ fileFormatVersion: 2 guid: 630f164e44edb4d848a0fc4d010cfb42 TextureImporter: fileIDToRecycleName: {} - serializedVersion: 2 + externalObjects: {} + serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 1 + sRGBTexture: 0 linearTexture: 1 - correctGamma: 0 fadeOut: 0 borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 - heightScale: .25 + heightScale: 0.25 normalMapFilter: 0 isReadable: 1 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 grayScaleToAlpha: 0 - generateCubemap: 0 + generateCubemap: 6 + cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: -3 maxTextureSize: 128 textureSettings: + serializedVersion: 2 filterMode: 2 aniso: 0 - mipBias: -1 - wrapMode: 1 + mipBias: -100 + wrapU: 1 + wrapV: 1 + wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 @@ -35,13 +44,210 @@ TextureImporter: spriteExtrude: 1 spriteMeshType: 1 alignment: 0 - spritePivot: {x: .5, y: .5} - spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 alphaIsTransparency: 1 - textureType: -1 - buildTargetSettings: [] + spriteTessellationDetail: -1 + textureType: 0 + textureShape: 1 + singleChannelComponent: 0 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + platformSettings: + - serializedVersion: 2 + buildTarget: DefaultTexturePlatform + maxTextureSize: 128 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Standalone + maxTextureSize: 96 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: iPhone + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Android + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Web + maxTextureSize: 48 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: WebGL + maxTextureSize: 48 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Windows Store Apps + maxTextureSize: 48 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Tizen + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: PSP2 + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: PS4 + maxTextureSize: 48 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: XboxOne + maxTextureSize: 48 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Samsung TV + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Nintendo 3DS + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: WiiU + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Nintendo Switch + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: tvOS + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 spriteSheet: + serializedVersion: 2 sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + vertices: [] + indices: + edges: [] + weights: [] spritePackingTag: + pSDRemoveMatte: 0 + pSDShowRemoveMatteOption: 0 userData: + assetBundleName: + assetBundleVariant: diff --git a/Editor/InternalResources/Interface/Nodes/Data/sfn_tangent.png.meta b/Editor/InternalResources/Interface/Nodes/Data/sfn_tangent.png.meta index 772abaa6..337fabce 100644 --- a/Editor/InternalResources/Interface/Nodes/Data/sfn_tangent.png.meta +++ b/Editor/InternalResources/Interface/Nodes/Data/sfn_tangent.png.meta @@ -2,32 +2,41 @@ fileFormatVersion: 2 guid: 82f57e53a2ef4405cbf39da50cebd6e4 TextureImporter: fileIDToRecycleName: {} - serializedVersion: 2 + externalObjects: {} + serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 1 + sRGBTexture: 0 linearTexture: 1 - correctGamma: 0 fadeOut: 0 borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 - heightScale: .25 + heightScale: 0.25 normalMapFilter: 0 isReadable: 1 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 grayScaleToAlpha: 0 - generateCubemap: 0 + generateCubemap: 6 + cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: -3 maxTextureSize: 128 textureSettings: + serializedVersion: 2 filterMode: 2 aniso: 0 - mipBias: -1 - wrapMode: 1 + mipBias: -100 + wrapU: 1 + wrapV: 1 + wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 @@ -35,13 +44,210 @@ TextureImporter: spriteExtrude: 1 spriteMeshType: 1 alignment: 0 - spritePivot: {x: .5, y: .5} - spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 alphaIsTransparency: 1 - textureType: -1 - buildTargetSettings: [] + spriteTessellationDetail: -1 + textureType: 0 + textureShape: 1 + singleChannelComponent: 0 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + platformSettings: + - serializedVersion: 2 + buildTarget: DefaultTexturePlatform + maxTextureSize: 128 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Standalone + maxTextureSize: 96 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: iPhone + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Android + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Web + maxTextureSize: 48 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: WebGL + maxTextureSize: 48 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Windows Store Apps + maxTextureSize: 48 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Tizen + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: PSP2 + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: PS4 + maxTextureSize: 48 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: XboxOne + maxTextureSize: 48 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Samsung TV + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Nintendo 3DS + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: WiiU + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Nintendo Switch + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: tvOS + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 spriteSheet: + serializedVersion: 2 sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + vertices: [] + indices: + edges: [] + weights: [] spritePackingTag: + pSDRemoveMatte: 0 + pSDShowRemoveMatteOption: 0 userData: + assetBundleName: + assetBundleVariant: diff --git a/Editor/InternalResources/Interface/Nodes/Data/sfn_viewreflectionvector.png.meta b/Editor/InternalResources/Interface/Nodes/Data/sfn_viewreflectionvector.png.meta index 7dedb5fc..6472337b 100644 --- a/Editor/InternalResources/Interface/Nodes/Data/sfn_viewreflectionvector.png.meta +++ b/Editor/InternalResources/Interface/Nodes/Data/sfn_viewreflectionvector.png.meta @@ -2,32 +2,41 @@ fileFormatVersion: 2 guid: 877bc628b69844ba081a63095156a6f1 TextureImporter: fileIDToRecycleName: {} - serializedVersion: 2 + externalObjects: {} + serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 1 + sRGBTexture: 0 linearTexture: 1 - correctGamma: 0 fadeOut: 0 borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 - heightScale: .25 + heightScale: 0.25 normalMapFilter: 0 isReadable: 1 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 grayScaleToAlpha: 0 - generateCubemap: 0 + generateCubemap: 6 + cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: -3 maxTextureSize: 128 textureSettings: + serializedVersion: 2 filterMode: 2 aniso: 0 - mipBias: -1 - wrapMode: 1 + mipBias: -100 + wrapU: 1 + wrapV: 1 + wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 @@ -35,13 +44,210 @@ TextureImporter: spriteExtrude: 1 spriteMeshType: 1 alignment: 0 - spritePivot: {x: .5, y: .5} - spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 alphaIsTransparency: 1 - textureType: -1 - buildTargetSettings: [] + spriteTessellationDetail: -1 + textureType: 0 + textureShape: 1 + singleChannelComponent: 0 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + platformSettings: + - serializedVersion: 2 + buildTarget: DefaultTexturePlatform + maxTextureSize: 128 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Standalone + maxTextureSize: 96 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: iPhone + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Android + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Web + maxTextureSize: 48 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: WebGL + maxTextureSize: 48 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Windows Store Apps + maxTextureSize: 48 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Tizen + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: PSP2 + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: PS4 + maxTextureSize: 48 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: XboxOne + maxTextureSize: 48 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Samsung TV + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Nintendo 3DS + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: WiiU + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Nintendo Switch + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: tvOS + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 spriteSheet: + serializedVersion: 2 sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + vertices: [] + indices: + edges: [] + weights: [] spritePackingTag: + pSDRemoveMatte: 0 + pSDShowRemoveMatteOption: 0 userData: + assetBundleName: + assetBundleVariant: diff --git a/Editor/InternalResources/Interface/Nodes/Data/sfn_viewvector.png.meta b/Editor/InternalResources/Interface/Nodes/Data/sfn_viewvector.png.meta index 6a28719d..8885f1c0 100644 --- a/Editor/InternalResources/Interface/Nodes/Data/sfn_viewvector.png.meta +++ b/Editor/InternalResources/Interface/Nodes/Data/sfn_viewvector.png.meta @@ -2,32 +2,41 @@ fileFormatVersion: 2 guid: 33a9188cb13b74e7493476e4060bcb32 TextureImporter: fileIDToRecycleName: {} - serializedVersion: 2 + externalObjects: {} + serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 1 + sRGBTexture: 0 linearTexture: 1 - correctGamma: 0 fadeOut: 0 borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 - heightScale: .25 + heightScale: 0.25 normalMapFilter: 0 isReadable: 1 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 grayScaleToAlpha: 0 - generateCubemap: 0 + generateCubemap: 6 + cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: -3 maxTextureSize: 128 textureSettings: + serializedVersion: 2 filterMode: 2 aniso: 0 - mipBias: -1 - wrapMode: 1 + mipBias: -100 + wrapU: 1 + wrapV: 1 + wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 @@ -35,13 +44,210 @@ TextureImporter: spriteExtrude: 1 spriteMeshType: 1 alignment: 0 - spritePivot: {x: .5, y: .5} - spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 alphaIsTransparency: 1 - textureType: -1 - buildTargetSettings: [] + spriteTessellationDetail: -1 + textureType: 0 + textureShape: 1 + singleChannelComponent: 0 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + platformSettings: + - serializedVersion: 2 + buildTarget: DefaultTexturePlatform + maxTextureSize: 128 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Standalone + maxTextureSize: 96 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: iPhone + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Android + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Web + maxTextureSize: 48 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: WebGL + maxTextureSize: 48 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Windows Store Apps + maxTextureSize: 48 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Tizen + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: PSP2 + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: PS4 + maxTextureSize: 48 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: XboxOne + maxTextureSize: 48 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Samsung TV + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Nintendo 3DS + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: WiiU + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Nintendo Switch + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: tvOS + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 spriteSheet: + serializedVersion: 2 sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + vertices: [] + indices: + edges: [] + weights: [] spritePackingTag: + pSDRemoveMatte: 0 + pSDShowRemoveMatteOption: 0 userData: + assetBundleName: + assetBundleVariant: diff --git a/Editor/InternalResources/Interface/Nodes/sfn_ambientlight.png.meta b/Editor/InternalResources/Interface/Nodes/sfn_ambientlight.png.meta index 152e6378..7683e776 100644 --- a/Editor/InternalResources/Interface/Nodes/sfn_ambientlight.png.meta +++ b/Editor/InternalResources/Interface/Nodes/sfn_ambientlight.png.meta @@ -1,32 +1,42 @@ fileFormatVersion: 2 guid: 87729cd9b749b43458e1874dcc21ed05 TextureImporter: - serializedVersion: 2 + fileIDToRecycleName: {} + externalObjects: {} + serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 0 + sRGBTexture: 0 linearTexture: 1 - correctGamma: 0 fadeOut: 0 borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 - heightScale: .25 + heightScale: 0.25 normalMapFilter: 0 isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 grayScaleToAlpha: 0 - generateCubemap: 0 + generateCubemap: 6 + cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: -3 maxTextureSize: 128 textureSettings: + serializedVersion: 2 filterMode: -1 aniso: -1 - mipBias: -1 - wrapMode: 1 + mipBias: -100 + wrapU: 1 + wrapV: 1 + wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 @@ -34,12 +44,210 @@ TextureImporter: spriteExtrude: 1 spriteMeshType: 1 alignment: 0 - spritePivot: {x: .5, y: .5} + spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 alphaIsTransparency: 0 - textureType: 5 - buildTargetSettings: [] + spriteTessellationDetail: -1 + textureType: 0 + textureShape: 1 + singleChannelComponent: 0 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + platformSettings: + - serializedVersion: 2 + buildTarget: DefaultTexturePlatform + maxTextureSize: 128 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Standalone + maxTextureSize: 96 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: iPhone + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Android + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Web + maxTextureSize: 48 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: WebGL + maxTextureSize: 48 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Windows Store Apps + maxTextureSize: 48 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Tizen + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: PSP2 + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: PS4 + maxTextureSize: 48 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: XboxOne + maxTextureSize: 48 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Samsung TV + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Nintendo 3DS + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: WiiU + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Nintendo Switch + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: tvOS + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 spriteSheet: + serializedVersion: 2 sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + vertices: [] + indices: + edges: [] + weights: [] spritePackingTag: + pSDRemoveMatte: 0 + pSDShowRemoveMatteOption: 0 userData: + assetBundleName: + assetBundleVariant: diff --git a/Editor/InternalResources/Interface/Nodes/sfn_bitangent.png.meta b/Editor/InternalResources/Interface/Nodes/sfn_bitangent.png.meta index 1c795d3f..403e44b9 100644 --- a/Editor/InternalResources/Interface/Nodes/sfn_bitangent.png.meta +++ b/Editor/InternalResources/Interface/Nodes/sfn_bitangent.png.meta @@ -1,32 +1,42 @@ fileFormatVersion: 2 guid: 4be47db7f177b4f479a6a181cbeb169d TextureImporter: - serializedVersion: 2 + fileIDToRecycleName: {} + externalObjects: {} + serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 0 + sRGBTexture: 0 linearTexture: 1 - correctGamma: 0 fadeOut: 0 borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 - heightScale: .25 + heightScale: 0.25 normalMapFilter: 0 isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 grayScaleToAlpha: 0 - generateCubemap: 0 + generateCubemap: 6 + cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: -3 maxTextureSize: 128 textureSettings: + serializedVersion: 2 filterMode: -1 aniso: 0 - mipBias: -1 - wrapMode: 1 + mipBias: -100 + wrapU: 1 + wrapV: 1 + wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 @@ -34,12 +44,210 @@ TextureImporter: spriteExtrude: 1 spriteMeshType: 1 alignment: 0 - spritePivot: {x: .5, y: .5} + spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 alphaIsTransparency: 0 - textureType: 5 - buildTargetSettings: [] + spriteTessellationDetail: -1 + textureType: 0 + textureShape: 1 + singleChannelComponent: 0 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + platformSettings: + - serializedVersion: 2 + buildTarget: DefaultTexturePlatform + maxTextureSize: 128 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Standalone + maxTextureSize: 96 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: iPhone + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Android + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Web + maxTextureSize: 48 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: WebGL + maxTextureSize: 48 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Windows Store Apps + maxTextureSize: 48 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Tizen + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: PSP2 + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: PS4 + maxTextureSize: 48 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: XboxOne + maxTextureSize: 48 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Samsung TV + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Nintendo 3DS + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: WiiU + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Nintendo Switch + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: tvOS + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 spriteSheet: + serializedVersion: 2 sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + vertices: [] + indices: + edges: [] + weights: [] spritePackingTag: + pSDRemoveMatte: 0 + pSDShowRemoveMatteOption: 0 userData: + assetBundleName: + assetBundleVariant: diff --git a/Editor/InternalResources/Interface/Nodes/sfn_depth.png.meta b/Editor/InternalResources/Interface/Nodes/sfn_depth.png.meta index 9398ac13..445b8f86 100644 --- a/Editor/InternalResources/Interface/Nodes/sfn_depth.png.meta +++ b/Editor/InternalResources/Interface/Nodes/sfn_depth.png.meta @@ -2,51 +2,252 @@ fileFormatVersion: 2 guid: 0522d757f9985e94c97df1ae1b76568f TextureImporter: fileIDToRecycleName: {} - serializedVersion: 2 + externalObjects: {} + serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 0 + sRGBTexture: 0 linearTexture: 1 - correctGamma: 0 fadeOut: 0 borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 - heightScale: .25 + heightScale: 0.25 normalMapFilter: 0 isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 grayScaleToAlpha: 0 - generateCubemap: 0 + generateCubemap: 6 cubemapConvolution: 0 - cubemapConvolutionSteps: 8 - cubemapConvolutionExponent: 1.5 seamlessCubemap: 0 textureFormat: -3 maxTextureSize: 128 textureSettings: + serializedVersion: 2 filterMode: -1 aniso: 0 - mipBias: -1 - wrapMode: 1 + mipBias: -100 + wrapU: 1 + wrapV: 1 + wrapW: 1 nPOTScale: 0 lightmap: 0 - rGBM: 0 compressionQuality: 50 spriteMode: 0 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 - spritePivot: {x: .5, y: .5} - spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 alphaIsTransparency: 0 - textureType: 5 - buildTargetSettings: [] + spriteTessellationDetail: -1 + textureType: 0 + textureShape: 1 + singleChannelComponent: 0 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + platformSettings: + - serializedVersion: 2 + buildTarget: DefaultTexturePlatform + maxTextureSize: 128 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Standalone + maxTextureSize: 96 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: iPhone + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Android + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Web + maxTextureSize: 48 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: WebGL + maxTextureSize: 48 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Windows Store Apps + maxTextureSize: 48 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Tizen + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: PSP2 + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: PS4 + maxTextureSize: 48 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: XboxOne + maxTextureSize: 48 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Samsung TV + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Nintendo 3DS + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: WiiU + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Nintendo Switch + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: tvOS + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 spriteSheet: + serializedVersion: 2 sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + vertices: [] + indices: + edges: [] + weights: [] spritePackingTag: + pSDRemoveMatte: 0 + pSDShowRemoveMatteOption: 0 userData: assetBundleName: + assetBundleVariant: diff --git a/Editor/InternalResources/Interface/Nodes/sfn_e.png.meta b/Editor/InternalResources/Interface/Nodes/sfn_e.png.meta index ce7ec734..bc68963d 100644 --- a/Editor/InternalResources/Interface/Nodes/sfn_e.png.meta +++ b/Editor/InternalResources/Interface/Nodes/sfn_e.png.meta @@ -1,32 +1,42 @@ fileFormatVersion: 2 guid: d3516e6f742ca7b4fba3134e831ae5ba TextureImporter: - serializedVersion: 2 + fileIDToRecycleName: {} + externalObjects: {} + serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 0 + sRGBTexture: 0 linearTexture: 1 - correctGamma: 0 fadeOut: 0 borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 - heightScale: .25 + heightScale: 0.25 normalMapFilter: 0 isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 grayScaleToAlpha: 0 - generateCubemap: 0 + generateCubemap: 6 + cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: -3 maxTextureSize: 128 textureSettings: + serializedVersion: 2 filterMode: -1 aniso: 0 - mipBias: -1 - wrapMode: 0 + mipBias: -100 + wrapU: 0 + wrapV: 0 + wrapW: 0 nPOTScale: 0 lightmap: 0 compressionQuality: 50 @@ -34,12 +44,210 @@ TextureImporter: spriteExtrude: 1 spriteMeshType: 1 alignment: 0 - spritePivot: {x: .5, y: .5} + spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 alphaIsTransparency: 0 - textureType: 5 - buildTargetSettings: [] + spriteTessellationDetail: -1 + textureType: 0 + textureShape: 1 + singleChannelComponent: 0 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + platformSettings: + - serializedVersion: 2 + buildTarget: DefaultTexturePlatform + maxTextureSize: 128 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Standalone + maxTextureSize: 96 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: iPhone + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Android + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Web + maxTextureSize: 48 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: WebGL + maxTextureSize: 48 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Windows Store Apps + maxTextureSize: 48 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Tizen + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: PSP2 + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: PS4 + maxTextureSize: 48 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: XboxOne + maxTextureSize: 48 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Samsung TV + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Nintendo 3DS + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: WiiU + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Nintendo Switch + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: tvOS + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 spriteSheet: + serializedVersion: 2 sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + vertices: [] + indices: + edges: [] + weights: [] spritePackingTag: + pSDRemoveMatte: 0 + pSDShowRemoveMatteOption: 0 userData: + assetBundleName: + assetBundleVariant: diff --git a/Editor/InternalResources/Interface/Nodes/sfn_facesign.png.meta b/Editor/InternalResources/Interface/Nodes/sfn_facesign.png.meta index 89d76017..0473cc1b 100644 --- a/Editor/InternalResources/Interface/Nodes/sfn_facesign.png.meta +++ b/Editor/InternalResources/Interface/Nodes/sfn_facesign.png.meta @@ -1,55 +1,253 @@ fileFormatVersion: 2 guid: e3a845ef959fb8c48af98819ec486cfc -timeCreated: 1439891827 -licenseType: Pro TextureImporter: fileIDToRecycleName: {} - serializedVersion: 2 + externalObjects: {} + serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 0 + sRGBTexture: 0 linearTexture: 1 - correctGamma: 0 fadeOut: 0 borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 - heightScale: .25 + heightScale: 0.25 normalMapFilter: 0 isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 grayScaleToAlpha: 0 - generateCubemap: 0 + generateCubemap: 6 cubemapConvolution: 0 - cubemapConvolutionSteps: 8 - cubemapConvolutionExponent: 1.5 seamlessCubemap: 0 textureFormat: -3 maxTextureSize: 128 textureSettings: + serializedVersion: 2 filterMode: 1 aniso: 0 - mipBias: -1 - wrapMode: 1 + mipBias: -100 + wrapU: 1 + wrapV: 1 + wrapW: 1 nPOTScale: 0 lightmap: 0 - rGBM: 0 compressionQuality: 50 spriteMode: 0 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 - spritePivot: {x: .5, y: .5} - spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 alphaIsTransparency: 0 - textureType: 5 - buildTargetSettings: [] + spriteTessellationDetail: -1 + textureType: 0 + textureShape: 1 + singleChannelComponent: 0 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + platformSettings: + - serializedVersion: 2 + buildTarget: DefaultTexturePlatform + maxTextureSize: 128 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Standalone + maxTextureSize: 96 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: iPhone + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Android + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Web + maxTextureSize: 48 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: WebGL + maxTextureSize: 48 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Windows Store Apps + maxTextureSize: 48 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Tizen + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: PSP2 + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: PS4 + maxTextureSize: 48 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: XboxOne + maxTextureSize: 48 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Samsung TV + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Nintendo 3DS + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: WiiU + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Nintendo Switch + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: tvOS + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 spriteSheet: + serializedVersion: 2 sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + vertices: [] + indices: + edges: [] + weights: [] spritePackingTag: + pSDRemoveMatte: 0 + pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: diff --git a/Editor/InternalResources/Interface/Nodes/sfn_facesign_2.png.meta b/Editor/InternalResources/Interface/Nodes/sfn_facesign_2.png.meta index 46d3e28f..3627357c 100644 --- a/Editor/InternalResources/Interface/Nodes/sfn_facesign_2.png.meta +++ b/Editor/InternalResources/Interface/Nodes/sfn_facesign_2.png.meta @@ -1,55 +1,253 @@ fileFormatVersion: 2 guid: 717b713fc8dbc194daf895e1e7a0521f -timeCreated: 1439891827 -licenseType: Pro TextureImporter: fileIDToRecycleName: {} - serializedVersion: 2 + externalObjects: {} + serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 0 + sRGBTexture: 0 linearTexture: 1 - correctGamma: 0 fadeOut: 0 borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 - heightScale: .25 + heightScale: 0.25 normalMapFilter: 0 isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 grayScaleToAlpha: 0 - generateCubemap: 0 + generateCubemap: 6 cubemapConvolution: 0 - cubemapConvolutionSteps: 8 - cubemapConvolutionExponent: 1.5 seamlessCubemap: 0 textureFormat: -3 maxTextureSize: 128 textureSettings: + serializedVersion: 2 filterMode: 1 aniso: 0 - mipBias: -1 - wrapMode: 1 + mipBias: -100 + wrapU: 1 + wrapV: 1 + wrapW: 1 nPOTScale: 0 lightmap: 0 - rGBM: 0 compressionQuality: 50 spriteMode: 0 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 - spritePivot: {x: .5, y: .5} - spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 alphaIsTransparency: 0 - textureType: 5 - buildTargetSettings: [] + spriteTessellationDetail: -1 + textureType: 0 + textureShape: 1 + singleChannelComponent: 0 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + platformSettings: + - serializedVersion: 2 + buildTarget: DefaultTexturePlatform + maxTextureSize: 128 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Standalone + maxTextureSize: 96 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: iPhone + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Android + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Web + maxTextureSize: 48 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: WebGL + maxTextureSize: 48 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Windows Store Apps + maxTextureSize: 48 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Tizen + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: PSP2 + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: PS4 + maxTextureSize: 48 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: XboxOne + maxTextureSize: 48 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Samsung TV + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Nintendo 3DS + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: WiiU + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Nintendo Switch + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: tvOS + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 spriteSheet: + serializedVersion: 2 sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + vertices: [] + indices: + edges: [] + weights: [] spritePackingTag: + pSDRemoveMatte: 0 + pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: diff --git a/Editor/InternalResources/Interface/Nodes/sfn_final.png.meta b/Editor/InternalResources/Interface/Nodes/sfn_final.png.meta index fbca9fbc..a5222e6c 100644 --- a/Editor/InternalResources/Interface/Nodes/sfn_final.png.meta +++ b/Editor/InternalResources/Interface/Nodes/sfn_final.png.meta @@ -1,32 +1,42 @@ fileFormatVersion: 2 guid: 356d9441fe4ee4b3fa2897afb2dca0f6 TextureImporter: - serializedVersion: 2 + fileIDToRecycleName: {} + externalObjects: {} + serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 0 + sRGBTexture: 0 linearTexture: 1 - correctGamma: 0 fadeOut: 0 borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 - heightScale: .25 + heightScale: 0.25 normalMapFilter: 0 isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 grayScaleToAlpha: 0 - generateCubemap: 0 + generateCubemap: 6 + cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: -3 maxTextureSize: 1024 textureSettings: + serializedVersion: 2 filterMode: -1 aniso: 1 - mipBias: -1 - wrapMode: 1 + mipBias: -100 + wrapU: 1 + wrapV: 1 + wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 @@ -34,12 +44,210 @@ TextureImporter: spriteExtrude: 1 spriteMeshType: 1 alignment: 0 - spritePivot: {x: .5, y: .5} + spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 alphaIsTransparency: 1 - textureType: 5 - buildTargetSettings: [] + spriteTessellationDetail: -1 + textureType: 0 + textureShape: 1 + singleChannelComponent: 0 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + platformSettings: + - serializedVersion: 2 + buildTarget: DefaultTexturePlatform + maxTextureSize: 1024 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Standalone + maxTextureSize: 425 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: iPhone + maxTextureSize: 106 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Android + maxTextureSize: 106 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Web + maxTextureSize: 212 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: WebGL + maxTextureSize: 212 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Windows Store Apps + maxTextureSize: 212 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Tizen + maxTextureSize: 106 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: PSP2 + maxTextureSize: 106 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: PS4 + maxTextureSize: 212 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: XboxOne + maxTextureSize: 212 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Samsung TV + maxTextureSize: 106 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Nintendo 3DS + maxTextureSize: 106 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: WiiU + maxTextureSize: 106 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Nintendo Switch + maxTextureSize: 106 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: tvOS + maxTextureSize: 106 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 spriteSheet: + serializedVersion: 2 sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + vertices: [] + indices: + edges: [] + weights: [] spritePackingTag: + pSDRemoveMatte: 0 + pSDShowRemoveMatteOption: 0 userData: + assetBundleName: + assetBundleVariant: diff --git a/Editor/InternalResources/Interface/Nodes/sfn_fogcolor.png.meta b/Editor/InternalResources/Interface/Nodes/sfn_fogcolor.png.meta index bc155b84..10bca9d2 100644 --- a/Editor/InternalResources/Interface/Nodes/sfn_fogcolor.png.meta +++ b/Editor/InternalResources/Interface/Nodes/sfn_fogcolor.png.meta @@ -2,51 +2,252 @@ fileFormatVersion: 2 guid: 70a0601c59b745d4288eb39ee069ab21 TextureImporter: fileIDToRecycleName: {} - serializedVersion: 2 + externalObjects: {} + serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 0 + sRGBTexture: 0 linearTexture: 1 - correctGamma: 0 fadeOut: 0 borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 - heightScale: .25 + heightScale: 0.25 normalMapFilter: 0 isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 grayScaleToAlpha: 0 - generateCubemap: 0 + generateCubemap: 6 cubemapConvolution: 0 - cubemapConvolutionSteps: 8 - cubemapConvolutionExponent: 1.5 seamlessCubemap: 0 textureFormat: -3 maxTextureSize: 128 textureSettings: + serializedVersion: 2 filterMode: 1 aniso: 0 - mipBias: -1 - wrapMode: 1 + mipBias: -100 + wrapU: 1 + wrapV: 1 + wrapW: 1 nPOTScale: 0 lightmap: 0 - rGBM: 0 compressionQuality: 50 spriteMode: 0 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 - spritePivot: {x: .5, y: .5} - spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 alphaIsTransparency: 0 - textureType: 5 - buildTargetSettings: [] + spriteTessellationDetail: -1 + textureType: 0 + textureShape: 1 + singleChannelComponent: 0 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + platformSettings: + - serializedVersion: 2 + buildTarget: DefaultTexturePlatform + maxTextureSize: 128 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Standalone + maxTextureSize: 96 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: iPhone + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Android + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Web + maxTextureSize: 48 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: WebGL + maxTextureSize: 48 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Windows Store Apps + maxTextureSize: 48 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Tizen + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: PSP2 + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: PS4 + maxTextureSize: 48 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: XboxOne + maxTextureSize: 48 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Samsung TV + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Nintendo 3DS + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: WiiU + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Nintendo Switch + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: tvOS + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 spriteSheet: + serializedVersion: 2 sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + vertices: [] + indices: + edges: [] + weights: [] spritePackingTag: + pSDRemoveMatte: 0 + pSDShowRemoveMatteOption: 0 userData: assetBundleName: + assetBundleVariant: diff --git a/Editor/InternalResources/Interface/Nodes/sfn_fogcolor_2.png.meta b/Editor/InternalResources/Interface/Nodes/sfn_fogcolor_2.png.meta index 0fa53825..d3e0b290 100644 --- a/Editor/InternalResources/Interface/Nodes/sfn_fogcolor_2.png.meta +++ b/Editor/InternalResources/Interface/Nodes/sfn_fogcolor_2.png.meta @@ -2,51 +2,252 @@ fileFormatVersion: 2 guid: 421c05cb33c35724db61a30e3a20003b TextureImporter: fileIDToRecycleName: {} - serializedVersion: 2 + externalObjects: {} + serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 0 + sRGBTexture: 0 linearTexture: 1 - correctGamma: 0 fadeOut: 0 borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 - heightScale: .25 + heightScale: 0.25 normalMapFilter: 0 isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 grayScaleToAlpha: 0 - generateCubemap: 0 + generateCubemap: 6 cubemapConvolution: 0 - cubemapConvolutionSteps: 8 - cubemapConvolutionExponent: 1.5 seamlessCubemap: 0 textureFormat: -3 maxTextureSize: 128 textureSettings: + serializedVersion: 2 filterMode: 1 aniso: 0 - mipBias: -1 - wrapMode: 1 + mipBias: -100 + wrapU: 1 + wrapV: 1 + wrapW: 1 nPOTScale: 0 lightmap: 0 - rGBM: 0 compressionQuality: 50 spriteMode: 0 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 - spritePivot: {x: .5, y: .5} - spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 alphaIsTransparency: 1 - textureType: 5 - buildTargetSettings: [] + spriteTessellationDetail: -1 + textureType: 0 + textureShape: 1 + singleChannelComponent: 0 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + platformSettings: + - serializedVersion: 2 + buildTarget: DefaultTexturePlatform + maxTextureSize: 128 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Standalone + maxTextureSize: 96 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: iPhone + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Android + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Web + maxTextureSize: 48 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: WebGL + maxTextureSize: 48 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Windows Store Apps + maxTextureSize: 48 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Tizen + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: PSP2 + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: PS4 + maxTextureSize: 48 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: XboxOne + maxTextureSize: 48 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Samsung TV + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Nintendo 3DS + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: WiiU + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Nintendo Switch + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: tvOS + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 spriteSheet: + serializedVersion: 2 sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + vertices: [] + indices: + edges: [] + weights: [] spritePackingTag: + pSDRemoveMatte: 0 + pSDShowRemoveMatteOption: 0 userData: assetBundleName: + assetBundleVariant: diff --git a/Editor/InternalResources/Interface/Nodes/sfn_fragmentposition.png.meta b/Editor/InternalResources/Interface/Nodes/sfn_fragmentposition.png.meta index 25922baf..210d8372 100644 --- a/Editor/InternalResources/Interface/Nodes/sfn_fragmentposition.png.meta +++ b/Editor/InternalResources/Interface/Nodes/sfn_fragmentposition.png.meta @@ -1,32 +1,42 @@ fileFormatVersion: 2 guid: ae1f4f08792e1b44aaadf1288ed261a1 TextureImporter: - serializedVersion: 2 + fileIDToRecycleName: {} + externalObjects: {} + serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 0 + sRGBTexture: 0 linearTexture: 1 - correctGamma: 0 fadeOut: 0 borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 - heightScale: .25 + heightScale: 0.25 normalMapFilter: 0 isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 grayScaleToAlpha: 0 - generateCubemap: 0 + generateCubemap: 6 + cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: -3 maxTextureSize: 128 textureSettings: + serializedVersion: 2 filterMode: -1 aniso: 0 - mipBias: -1 - wrapMode: 1 + mipBias: -100 + wrapU: 1 + wrapV: 1 + wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 @@ -34,12 +44,210 @@ TextureImporter: spriteExtrude: 1 spriteMeshType: 1 alignment: 0 - spritePivot: {x: .5, y: .5} + spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 alphaIsTransparency: 0 - textureType: 5 - buildTargetSettings: [] + spriteTessellationDetail: -1 + textureType: 0 + textureShape: 1 + singleChannelComponent: 0 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + platformSettings: + - serializedVersion: 2 + buildTarget: DefaultTexturePlatform + maxTextureSize: 128 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Standalone + maxTextureSize: 96 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: iPhone + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Android + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Web + maxTextureSize: 48 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: WebGL + maxTextureSize: 48 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Windows Store Apps + maxTextureSize: 48 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Tizen + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: PSP2 + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: PS4 + maxTextureSize: 48 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: XboxOne + maxTextureSize: 48 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Samsung TV + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Nintendo 3DS + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: WiiU + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Nintendo Switch + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: tvOS + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 spriteSheet: + serializedVersion: 2 sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + vertices: [] + indices: + edges: [] + weights: [] spritePackingTag: + pSDRemoveMatte: 0 + pSDShowRemoveMatteOption: 0 userData: + assetBundleName: + assetBundleVariant: diff --git a/Editor/InternalResources/Interface/Nodes/sfn_halfvector.png.meta b/Editor/InternalResources/Interface/Nodes/sfn_halfvector.png.meta index f56a4db5..73934d84 100644 --- a/Editor/InternalResources/Interface/Nodes/sfn_halfvector.png.meta +++ b/Editor/InternalResources/Interface/Nodes/sfn_halfvector.png.meta @@ -1,32 +1,42 @@ fileFormatVersion: 2 guid: 703379c961c27714cb7175c0e86d4557 TextureImporter: - serializedVersion: 2 + fileIDToRecycleName: {} + externalObjects: {} + serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 0 + sRGBTexture: 0 linearTexture: 1 - correctGamma: 0 fadeOut: 0 borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 - heightScale: .25 + heightScale: 0.25 normalMapFilter: 0 isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 grayScaleToAlpha: 0 - generateCubemap: 0 + generateCubemap: 6 + cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: -3 maxTextureSize: 128 textureSettings: + serializedVersion: 2 filterMode: -1 aniso: 1 - mipBias: -1 - wrapMode: 1 + mipBias: -100 + wrapU: 1 + wrapV: 1 + wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 @@ -34,12 +44,210 @@ TextureImporter: spriteExtrude: 1 spriteMeshType: 1 alignment: 0 - spritePivot: {x: .5, y: .5} + spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 alphaIsTransparency: 0 - textureType: 5 - buildTargetSettings: [] + spriteTessellationDetail: -1 + textureType: 0 + textureShape: 1 + singleChannelComponent: 0 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + platformSettings: + - serializedVersion: 2 + buildTarget: DefaultTexturePlatform + maxTextureSize: 128 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Standalone + maxTextureSize: 96 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: iPhone + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Android + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Web + maxTextureSize: 48 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: WebGL + maxTextureSize: 48 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Windows Store Apps + maxTextureSize: 48 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Tizen + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: PSP2 + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: PS4 + maxTextureSize: 48 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: XboxOne + maxTextureSize: 48 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Samsung TV + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Nintendo 3DS + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: WiiU + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Nintendo Switch + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: tvOS + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 spriteSheet: + serializedVersion: 2 sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + vertices: [] + indices: + edges: [] + weights: [] spritePackingTag: + pSDRemoveMatte: 0 + pSDShowRemoveMatteOption: 0 userData: + assetBundleName: + assetBundleVariant: diff --git a/Editor/InternalResources/Interface/Nodes/sfn_lightattenuation.png.meta b/Editor/InternalResources/Interface/Nodes/sfn_lightattenuation.png.meta index d242dc65..e9d97b39 100644 --- a/Editor/InternalResources/Interface/Nodes/sfn_lightattenuation.png.meta +++ b/Editor/InternalResources/Interface/Nodes/sfn_lightattenuation.png.meta @@ -1,32 +1,42 @@ fileFormatVersion: 2 guid: e0a571b2f1a21d446a1afcab341ccf2c TextureImporter: - serializedVersion: 2 + fileIDToRecycleName: {} + externalObjects: {} + serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 0 + sRGBTexture: 0 linearTexture: 1 - correctGamma: 0 fadeOut: 0 borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 - heightScale: .25 + heightScale: 0.25 normalMapFilter: 0 isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 grayScaleToAlpha: 0 - generateCubemap: 0 + generateCubemap: 6 + cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: -3 maxTextureSize: 128 textureSettings: + serializedVersion: 2 filterMode: -1 aniso: -1 - mipBias: -1 - wrapMode: -1 + mipBias: -100 + wrapU: -1 + wrapV: -1 + wrapW: -1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 @@ -34,12 +44,210 @@ TextureImporter: spriteExtrude: 1 spriteMeshType: 1 alignment: 0 - spritePivot: {x: .5, y: .5} + spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 alphaIsTransparency: 0 - textureType: 5 - buildTargetSettings: [] + spriteTessellationDetail: -1 + textureType: 0 + textureShape: 1 + singleChannelComponent: 0 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + platformSettings: + - serializedVersion: 2 + buildTarget: DefaultTexturePlatform + maxTextureSize: 128 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Standalone + maxTextureSize: 96 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: iPhone + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Android + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Web + maxTextureSize: 48 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: WebGL + maxTextureSize: 48 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Windows Store Apps + maxTextureSize: 48 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Tizen + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: PSP2 + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: PS4 + maxTextureSize: 48 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: XboxOne + maxTextureSize: 48 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Samsung TV + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Nintendo 3DS + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: WiiU + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Nintendo Switch + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: tvOS + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 spriteSheet: + serializedVersion: 2 sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + vertices: [] + indices: + edges: [] + weights: [] spritePackingTag: + pSDRemoveMatte: 0 + pSDShowRemoveMatteOption: 0 userData: + assetBundleName: + assetBundleVariant: diff --git a/Editor/InternalResources/Interface/Nodes/sfn_lightcolor.png.meta b/Editor/InternalResources/Interface/Nodes/sfn_lightcolor.png.meta index 6ded8c69..f999383d 100644 --- a/Editor/InternalResources/Interface/Nodes/sfn_lightcolor.png.meta +++ b/Editor/InternalResources/Interface/Nodes/sfn_lightcolor.png.meta @@ -1,32 +1,42 @@ fileFormatVersion: 2 guid: 12f315fc33aa349479e27e765a0cd7a8 TextureImporter: - serializedVersion: 2 + fileIDToRecycleName: {} + externalObjects: {} + serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 0 + sRGBTexture: 0 linearTexture: 1 - correctGamma: 0 fadeOut: 0 borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 - heightScale: .25 + heightScale: 0.25 normalMapFilter: 0 isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 grayScaleToAlpha: 0 - generateCubemap: 0 + generateCubemap: 6 + cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: -3 maxTextureSize: 128 textureSettings: + serializedVersion: 2 filterMode: -1 aniso: -1 - mipBias: -1 - wrapMode: 1 + mipBias: -100 + wrapU: 1 + wrapV: 1 + wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 @@ -34,12 +44,210 @@ TextureImporter: spriteExtrude: 1 spriteMeshType: 1 alignment: 0 - spritePivot: {x: .5, y: .5} + spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 alphaIsTransparency: 0 - textureType: 5 - buildTargetSettings: [] + spriteTessellationDetail: -1 + textureType: 0 + textureShape: 1 + singleChannelComponent: 0 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + platformSettings: + - serializedVersion: 2 + buildTarget: DefaultTexturePlatform + maxTextureSize: 128 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Standalone + maxTextureSize: 96 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: iPhone + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Android + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Web + maxTextureSize: 48 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: WebGL + maxTextureSize: 48 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Windows Store Apps + maxTextureSize: 48 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Tizen + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: PSP2 + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: PS4 + maxTextureSize: 48 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: XboxOne + maxTextureSize: 48 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Samsung TV + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Nintendo 3DS + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: WiiU + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Nintendo Switch + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: tvOS + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 spriteSheet: + serializedVersion: 2 sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + vertices: [] + indices: + edges: [] + weights: [] spritePackingTag: + pSDRemoveMatte: 0 + pSDShowRemoveMatteOption: 0 userData: + assetBundleName: + assetBundleVariant: diff --git a/Editor/InternalResources/Interface/Nodes/sfn_lightposition.png.meta b/Editor/InternalResources/Interface/Nodes/sfn_lightposition.png.meta index 6cc328e2..b7837b7c 100644 --- a/Editor/InternalResources/Interface/Nodes/sfn_lightposition.png.meta +++ b/Editor/InternalResources/Interface/Nodes/sfn_lightposition.png.meta @@ -1,32 +1,42 @@ fileFormatVersion: 2 guid: 7dfbcfcc4f146004b82d3c807613c4e3 TextureImporter: - serializedVersion: 2 + fileIDToRecycleName: {} + externalObjects: {} + serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 0 + sRGBTexture: 0 linearTexture: 1 - correctGamma: 0 fadeOut: 0 borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 - heightScale: .25 + heightScale: 0.25 normalMapFilter: 0 isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 grayScaleToAlpha: 0 - generateCubemap: 0 + generateCubemap: 6 + cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: -3 maxTextureSize: 128 textureSettings: + serializedVersion: 2 filterMode: -1 aniso: 0 - mipBias: -1 - wrapMode: 1 + mipBias: -100 + wrapU: 1 + wrapV: 1 + wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 @@ -34,12 +44,210 @@ TextureImporter: spriteExtrude: 1 spriteMeshType: 1 alignment: 0 - spritePivot: {x: .5, y: .5} + spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 alphaIsTransparency: 0 - textureType: 5 - buildTargetSettings: [] + spriteTessellationDetail: -1 + textureType: 0 + textureShape: 1 + singleChannelComponent: 0 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + platformSettings: + - serializedVersion: 2 + buildTarget: DefaultTexturePlatform + maxTextureSize: 128 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Standalone + maxTextureSize: 96 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: iPhone + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Android + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Web + maxTextureSize: 48 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: WebGL + maxTextureSize: 48 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Windows Store Apps + maxTextureSize: 48 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Tizen + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: PSP2 + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: PS4 + maxTextureSize: 48 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: XboxOne + maxTextureSize: 48 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Samsung TV + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Nintendo 3DS + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: WiiU + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Nintendo Switch + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: tvOS + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 spriteSheet: + serializedVersion: 2 sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + vertices: [] + indices: + edges: [] + weights: [] spritePackingTag: + pSDRemoveMatte: 0 + pSDShowRemoveMatteOption: 0 userData: + assetBundleName: + assetBundleVariant: diff --git a/Editor/InternalResources/Interface/Nodes/sfn_lightvector.png.meta b/Editor/InternalResources/Interface/Nodes/sfn_lightvector.png.meta index 53453cb2..99802ac1 100644 --- a/Editor/InternalResources/Interface/Nodes/sfn_lightvector.png.meta +++ b/Editor/InternalResources/Interface/Nodes/sfn_lightvector.png.meta @@ -1,32 +1,42 @@ fileFormatVersion: 2 guid: 456dbe7fcd6ef43408cca1f853a61aac TextureImporter: - serializedVersion: 2 + fileIDToRecycleName: {} + externalObjects: {} + serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 0 + sRGBTexture: 0 linearTexture: 1 - correctGamma: 0 fadeOut: 0 borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 - heightScale: .25 + heightScale: 0.25 normalMapFilter: 0 isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 grayScaleToAlpha: 0 - generateCubemap: 0 + generateCubemap: 6 + cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: -3 maxTextureSize: 128 textureSettings: + serializedVersion: 2 filterMode: -1 aniso: -1 - mipBias: -1 - wrapMode: -1 + mipBias: -100 + wrapU: -1 + wrapV: -1 + wrapW: -1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 @@ -34,12 +44,210 @@ TextureImporter: spriteExtrude: 1 spriteMeshType: 1 alignment: 0 - spritePivot: {x: .5, y: .5} + spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 alphaIsTransparency: 0 - textureType: 5 - buildTargetSettings: [] + spriteTessellationDetail: -1 + textureType: 0 + textureShape: 1 + singleChannelComponent: 0 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + platformSettings: + - serializedVersion: 2 + buildTarget: DefaultTexturePlatform + maxTextureSize: 128 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Standalone + maxTextureSize: 96 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: iPhone + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Android + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Web + maxTextureSize: 48 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: WebGL + maxTextureSize: 48 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Windows Store Apps + maxTextureSize: 48 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Tizen + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: PSP2 + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: PS4 + maxTextureSize: 48 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: XboxOne + maxTextureSize: 48 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Samsung TV + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Nintendo 3DS + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: WiiU + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Nintendo Switch + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: tvOS + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 spriteSheet: + serializedVersion: 2 sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + vertices: [] + indices: + edges: [] + weights: [] spritePackingTag: + pSDRemoveMatte: 0 + pSDShowRemoveMatteOption: 0 userData: + assetBundleName: + assetBundleVariant: diff --git a/Editor/InternalResources/Interface/Nodes/sfn_normalvector.png.meta b/Editor/InternalResources/Interface/Nodes/sfn_normalvector.png.meta index dce43447..4fe5de42 100644 --- a/Editor/InternalResources/Interface/Nodes/sfn_normalvector.png.meta +++ b/Editor/InternalResources/Interface/Nodes/sfn_normalvector.png.meta @@ -1,32 +1,42 @@ fileFormatVersion: 2 guid: 588b8166bb671b440810e2f1d15bc3db TextureImporter: - serializedVersion: 2 + fileIDToRecycleName: {} + externalObjects: {} + serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 0 + sRGBTexture: 0 linearTexture: 1 - correctGamma: 0 fadeOut: 0 borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 - heightScale: .25 + heightScale: 0.25 normalMapFilter: 0 isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 grayScaleToAlpha: 0 - generateCubemap: 0 + generateCubemap: 6 + cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: -3 maxTextureSize: 128 textureSettings: + serializedVersion: 2 filterMode: -1 aniso: 0 - mipBias: -1 - wrapMode: 0 + mipBias: -100 + wrapU: 0 + wrapV: 0 + wrapW: 0 nPOTScale: 0 lightmap: 0 compressionQuality: 50 @@ -34,12 +44,210 @@ TextureImporter: spriteExtrude: 1 spriteMeshType: 1 alignment: 0 - spritePivot: {x: .5, y: .5} + spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 alphaIsTransparency: 0 - textureType: 5 - buildTargetSettings: [] + spriteTessellationDetail: -1 + textureType: 0 + textureShape: 1 + singleChannelComponent: 0 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + platformSettings: + - serializedVersion: 2 + buildTarget: DefaultTexturePlatform + maxTextureSize: 128 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Standalone + maxTextureSize: 96 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: iPhone + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Android + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Web + maxTextureSize: 48 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: WebGL + maxTextureSize: 48 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Windows Store Apps + maxTextureSize: 48 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Tizen + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: PSP2 + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: PS4 + maxTextureSize: 48 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: XboxOne + maxTextureSize: 48 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Samsung TV + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Nintendo 3DS + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: WiiU + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Nintendo Switch + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: tvOS + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 spriteSheet: + serializedVersion: 2 sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + vertices: [] + indices: + edges: [] + weights: [] spritePackingTag: + pSDRemoveMatte: 0 + pSDShowRemoveMatteOption: 0 userData: + assetBundleName: + assetBundleVariant: diff --git a/Editor/InternalResources/Interface/Nodes/sfn_normalvector_2.png.meta b/Editor/InternalResources/Interface/Nodes/sfn_normalvector_2.png.meta index e997d759..fb62b043 100644 --- a/Editor/InternalResources/Interface/Nodes/sfn_normalvector_2.png.meta +++ b/Editor/InternalResources/Interface/Nodes/sfn_normalvector_2.png.meta @@ -1,32 +1,42 @@ fileFormatVersion: 2 guid: eb7f231caa33910479965b1e625cc13d TextureImporter: - serializedVersion: 2 + fileIDToRecycleName: {} + externalObjects: {} + serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 0 + sRGBTexture: 0 linearTexture: 1 - correctGamma: 0 fadeOut: 0 borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 - heightScale: .25 + heightScale: 0.25 normalMapFilter: 0 isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 grayScaleToAlpha: 0 - generateCubemap: 0 + generateCubemap: 6 + cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: -3 maxTextureSize: 128 textureSettings: + serializedVersion: 2 filterMode: -1 aniso: -1 - mipBias: -1 - wrapMode: 1 + mipBias: -100 + wrapU: 1 + wrapV: 1 + wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 @@ -34,12 +44,210 @@ TextureImporter: spriteExtrude: 1 spriteMeshType: 1 alignment: 0 - spritePivot: {x: .5, y: .5} + spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 alphaIsTransparency: 0 - textureType: 5 - buildTargetSettings: [] + spriteTessellationDetail: -1 + textureType: 0 + textureShape: 1 + singleChannelComponent: 0 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + platformSettings: + - serializedVersion: 2 + buildTarget: DefaultTexturePlatform + maxTextureSize: 128 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Standalone + maxTextureSize: 96 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: iPhone + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Android + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Web + maxTextureSize: 48 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: WebGL + maxTextureSize: 48 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Windows Store Apps + maxTextureSize: 48 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Tizen + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: PSP2 + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: PS4 + maxTextureSize: 48 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: XboxOne + maxTextureSize: 48 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Samsung TV + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Nintendo 3DS + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: WiiU + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Nintendo Switch + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: tvOS + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 spriteSheet: + serializedVersion: 2 sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + vertices: [] + indices: + edges: [] + weights: [] spritePackingTag: + pSDRemoveMatte: 0 + pSDShowRemoveMatteOption: 0 userData: + assetBundleName: + assetBundleVariant: diff --git a/Editor/InternalResources/Interface/Nodes/sfn_objectposition.png.meta b/Editor/InternalResources/Interface/Nodes/sfn_objectposition.png.meta index fb42d0cd..01740e8a 100644 --- a/Editor/InternalResources/Interface/Nodes/sfn_objectposition.png.meta +++ b/Editor/InternalResources/Interface/Nodes/sfn_objectposition.png.meta @@ -1,32 +1,42 @@ fileFormatVersion: 2 guid: fde2ac1b0d8c67241a874aadfc933e33 TextureImporter: - serializedVersion: 2 + fileIDToRecycleName: {} + externalObjects: {} + serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 0 + sRGBTexture: 0 linearTexture: 1 - correctGamma: 0 fadeOut: 0 borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 - heightScale: .25 + heightScale: 0.25 normalMapFilter: 0 isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 grayScaleToAlpha: 0 - generateCubemap: 0 + generateCubemap: 6 + cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: -3 maxTextureSize: 128 textureSettings: + serializedVersion: 2 filterMode: -1 aniso: -1 - mipBias: -1 - wrapMode: 1 + mipBias: -100 + wrapU: 1 + wrapV: 1 + wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 @@ -34,12 +44,210 @@ TextureImporter: spriteExtrude: 1 spriteMeshType: 1 alignment: 0 - spritePivot: {x: .5, y: .5} + spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 alphaIsTransparency: 0 - textureType: 5 - buildTargetSettings: [] + spriteTessellationDetail: -1 + textureType: 0 + textureShape: 1 + singleChannelComponent: 0 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + platformSettings: + - serializedVersion: 2 + buildTarget: DefaultTexturePlatform + maxTextureSize: 128 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Standalone + maxTextureSize: 96 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: iPhone + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Android + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Web + maxTextureSize: 48 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: WebGL + maxTextureSize: 48 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Windows Store Apps + maxTextureSize: 48 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Tizen + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: PSP2 + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: PS4 + maxTextureSize: 48 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: XboxOne + maxTextureSize: 48 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Samsung TV + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Nintendo 3DS + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: WiiU + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Nintendo Switch + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: tvOS + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 spriteSheet: + serializedVersion: 2 sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + vertices: [] + indices: + edges: [] + weights: [] spritePackingTag: + pSDRemoveMatte: 0 + pSDShowRemoveMatteOption: 0 userData: + assetBundleName: + assetBundleVariant: diff --git a/Editor/InternalResources/Interface/Nodes/sfn_objectscale.png.meta b/Editor/InternalResources/Interface/Nodes/sfn_objectscale.png.meta index cd7415f5..5288f234 100644 --- a/Editor/InternalResources/Interface/Nodes/sfn_objectscale.png.meta +++ b/Editor/InternalResources/Interface/Nodes/sfn_objectscale.png.meta @@ -2,51 +2,252 @@ fileFormatVersion: 2 guid: 288c45822f3d8f549b95d7be2e3676d5 TextureImporter: fileIDToRecycleName: {} - serializedVersion: 2 + externalObjects: {} + serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 0 + sRGBTexture: 0 linearTexture: 1 - correctGamma: 0 fadeOut: 0 borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 - heightScale: .25 + heightScale: 0.25 normalMapFilter: 0 isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 grayScaleToAlpha: 0 - generateCubemap: 0 + generateCubemap: 6 cubemapConvolution: 0 - cubemapConvolutionSteps: 8 - cubemapConvolutionExponent: 1.5 seamlessCubemap: 0 textureFormat: -3 maxTextureSize: 128 textureSettings: + serializedVersion: 2 filterMode: -1 aniso: -1 - mipBias: -1 - wrapMode: 1 + mipBias: -100 + wrapU: 1 + wrapV: 1 + wrapW: 1 nPOTScale: 0 lightmap: 0 - rGBM: 0 compressionQuality: 50 spriteMode: 0 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 - spritePivot: {x: .5, y: .5} - spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 alphaIsTransparency: 0 - textureType: 5 - buildTargetSettings: [] + spriteTessellationDetail: -1 + textureType: 0 + textureShape: 1 + singleChannelComponent: 0 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + platformSettings: + - serializedVersion: 2 + buildTarget: DefaultTexturePlatform + maxTextureSize: 128 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Standalone + maxTextureSize: 96 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: iPhone + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Android + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Web + maxTextureSize: 48 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: WebGL + maxTextureSize: 48 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Windows Store Apps + maxTextureSize: 48 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Tizen + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: PSP2 + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: PS4 + maxTextureSize: 48 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: XboxOne + maxTextureSize: 48 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Samsung TV + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Nintendo 3DS + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: WiiU + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Nintendo Switch + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: tvOS + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 spriteSheet: + serializedVersion: 2 sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + vertices: [] + indices: + edges: [] + weights: [] spritePackingTag: + pSDRemoveMatte: 0 + pSDShowRemoveMatteOption: 0 userData: assetBundleName: + assetBundleVariant: diff --git a/Editor/InternalResources/Interface/Nodes/sfn_phi.png.meta b/Editor/InternalResources/Interface/Nodes/sfn_phi.png.meta index 9897b8e9..950b8fd6 100644 --- a/Editor/InternalResources/Interface/Nodes/sfn_phi.png.meta +++ b/Editor/InternalResources/Interface/Nodes/sfn_phi.png.meta @@ -1,32 +1,42 @@ fileFormatVersion: 2 guid: e15c69e8d7d60e444be990c1972eb59c TextureImporter: - serializedVersion: 2 + fileIDToRecycleName: {} + externalObjects: {} + serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 0 + sRGBTexture: 0 linearTexture: 1 - correctGamma: 0 fadeOut: 0 borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 - heightScale: .25 + heightScale: 0.25 normalMapFilter: 0 isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 grayScaleToAlpha: 0 - generateCubemap: 0 + generateCubemap: 6 + cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: -3 maxTextureSize: 128 textureSettings: + serializedVersion: 2 filterMode: -1 aniso: 0 - mipBias: -1 - wrapMode: 0 + mipBias: -100 + wrapU: 0 + wrapV: 0 + wrapW: 0 nPOTScale: 0 lightmap: 0 compressionQuality: 50 @@ -34,12 +44,210 @@ TextureImporter: spriteExtrude: 1 spriteMeshType: 1 alignment: 0 - spritePivot: {x: .5, y: .5} + spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 alphaIsTransparency: 0 - textureType: 5 - buildTargetSettings: [] + spriteTessellationDetail: -1 + textureType: 0 + textureShape: 1 + singleChannelComponent: 0 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + platformSettings: + - serializedVersion: 2 + buildTarget: DefaultTexturePlatform + maxTextureSize: 128 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Standalone + maxTextureSize: 96 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: iPhone + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Android + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Web + maxTextureSize: 48 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: WebGL + maxTextureSize: 48 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Windows Store Apps + maxTextureSize: 48 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Tizen + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: PSP2 + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: PS4 + maxTextureSize: 48 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: XboxOne + maxTextureSize: 48 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Samsung TV + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Nintendo 3DS + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: WiiU + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Nintendo Switch + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: tvOS + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 spriteSheet: + serializedVersion: 2 sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + vertices: [] + indices: + edges: [] + weights: [] spritePackingTag: + pSDRemoveMatte: 0 + pSDShowRemoveMatteOption: 0 userData: + assetBundleName: + assetBundleVariant: diff --git a/Editor/InternalResources/Interface/Nodes/sfn_pi.png.meta b/Editor/InternalResources/Interface/Nodes/sfn_pi.png.meta index 7cf95a92..7b374a37 100644 --- a/Editor/InternalResources/Interface/Nodes/sfn_pi.png.meta +++ b/Editor/InternalResources/Interface/Nodes/sfn_pi.png.meta @@ -1,32 +1,42 @@ fileFormatVersion: 2 guid: 313b48aa0593cc741802546fa5a1919e TextureImporter: - serializedVersion: 2 + fileIDToRecycleName: {} + externalObjects: {} + serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 0 + sRGBTexture: 0 linearTexture: 1 - correctGamma: 0 fadeOut: 0 borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 - heightScale: .25 + heightScale: 0.25 normalMapFilter: 0 isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 grayScaleToAlpha: 0 - generateCubemap: 0 + generateCubemap: 6 + cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: -3 maxTextureSize: 128 textureSettings: + serializedVersion: 2 filterMode: -1 aniso: 0 - mipBias: -1 - wrapMode: 0 + mipBias: -100 + wrapU: 0 + wrapV: 0 + wrapW: 0 nPOTScale: 0 lightmap: 0 compressionQuality: 50 @@ -34,12 +44,210 @@ TextureImporter: spriteExtrude: 1 spriteMeshType: 1 alignment: 0 - spritePivot: {x: .5, y: .5} + spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 alphaIsTransparency: 0 - textureType: 5 - buildTargetSettings: [] + spriteTessellationDetail: -1 + textureType: 0 + textureShape: 1 + singleChannelComponent: 0 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + platformSettings: + - serializedVersion: 2 + buildTarget: DefaultTexturePlatform + maxTextureSize: 128 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Standalone + maxTextureSize: 96 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: iPhone + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Android + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Web + maxTextureSize: 48 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: WebGL + maxTextureSize: 48 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Windows Store Apps + maxTextureSize: 48 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Tizen + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: PSP2 + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: PS4 + maxTextureSize: 48 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: XboxOne + maxTextureSize: 48 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Samsung TV + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Nintendo 3DS + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: WiiU + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Nintendo Switch + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: tvOS + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 spriteSheet: + serializedVersion: 2 sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + vertices: [] + indices: + edges: [] + weights: [] spritePackingTag: + pSDRemoveMatte: 0 + pSDShowRemoveMatteOption: 0 userData: + assetBundleName: + assetBundleVariant: diff --git a/Editor/InternalResources/Interface/Nodes/sfn_projectionparameters.png.meta b/Editor/InternalResources/Interface/Nodes/sfn_projectionparameters.png.meta index c496b917..affcfb76 100644 --- a/Editor/InternalResources/Interface/Nodes/sfn_projectionparameters.png.meta +++ b/Editor/InternalResources/Interface/Nodes/sfn_projectionparameters.png.meta @@ -1,32 +1,42 @@ fileFormatVersion: 2 guid: a189481e94c05ea4c982d13fe59ff9ac TextureImporter: - serializedVersion: 2 + fileIDToRecycleName: {} + externalObjects: {} + serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 0 + sRGBTexture: 0 linearTexture: 1 - correctGamma: 0 fadeOut: 0 borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 - heightScale: .25 + heightScale: 0.25 normalMapFilter: 0 isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 grayScaleToAlpha: 0 - generateCubemap: 0 + generateCubemap: 6 + cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: -3 maxTextureSize: 128 textureSettings: + serializedVersion: 2 filterMode: -1 aniso: -1 - mipBias: -1 - wrapMode: -1 + mipBias: -100 + wrapU: -1 + wrapV: -1 + wrapW: -1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 @@ -34,12 +44,210 @@ TextureImporter: spriteExtrude: 1 spriteMeshType: 1 alignment: 0 - spritePivot: {x: .5, y: .5} + spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 alphaIsTransparency: 0 - textureType: 5 - buildTargetSettings: [] + spriteTessellationDetail: -1 + textureType: 0 + textureShape: 1 + singleChannelComponent: 0 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + platformSettings: + - serializedVersion: 2 + buildTarget: DefaultTexturePlatform + maxTextureSize: 128 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Standalone + maxTextureSize: 96 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: iPhone + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Android + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Web + maxTextureSize: 48 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: WebGL + maxTextureSize: 48 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Windows Store Apps + maxTextureSize: 48 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Tizen + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: PSP2 + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: PS4 + maxTextureSize: 48 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: XboxOne + maxTextureSize: 48 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Samsung TV + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Nintendo 3DS + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: WiiU + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Nintendo Switch + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: tvOS + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 spriteSheet: + serializedVersion: 2 sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + vertices: [] + indices: + edges: [] + weights: [] spritePackingTag: + pSDRemoveMatte: 0 + pSDShowRemoveMatteOption: 0 userData: + assetBundleName: + assetBundleVariant: diff --git a/Editor/InternalResources/Interface/Nodes/sfn_root2.png.meta b/Editor/InternalResources/Interface/Nodes/sfn_root2.png.meta index d8af6f70..ee57ba6a 100644 --- a/Editor/InternalResources/Interface/Nodes/sfn_root2.png.meta +++ b/Editor/InternalResources/Interface/Nodes/sfn_root2.png.meta @@ -1,32 +1,42 @@ fileFormatVersion: 2 guid: 5a296b6d09babdd40b2b76ca29a97179 TextureImporter: - serializedVersion: 2 + fileIDToRecycleName: {} + externalObjects: {} + serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 0 + sRGBTexture: 0 linearTexture: 1 - correctGamma: 0 fadeOut: 0 borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 - heightScale: .25 + heightScale: 0.25 normalMapFilter: 0 isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 grayScaleToAlpha: 0 - generateCubemap: 0 + generateCubemap: 6 + cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: -3 maxTextureSize: 128 textureSettings: + serializedVersion: 2 filterMode: -1 aniso: 0 - mipBias: -1 - wrapMode: 0 + mipBias: -100 + wrapU: 0 + wrapV: 0 + wrapW: 0 nPOTScale: 0 lightmap: 0 compressionQuality: 50 @@ -34,12 +44,210 @@ TextureImporter: spriteExtrude: 1 spriteMeshType: 1 alignment: 0 - spritePivot: {x: .5, y: .5} + spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 alphaIsTransparency: 0 - textureType: 5 - buildTargetSettings: [] + spriteTessellationDetail: -1 + textureType: 0 + textureShape: 1 + singleChannelComponent: 0 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + platformSettings: + - serializedVersion: 2 + buildTarget: DefaultTexturePlatform + maxTextureSize: 128 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Standalone + maxTextureSize: 96 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: iPhone + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Android + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Web + maxTextureSize: 48 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: WebGL + maxTextureSize: 48 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Windows Store Apps + maxTextureSize: 48 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Tizen + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: PSP2 + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: PS4 + maxTextureSize: 48 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: XboxOne + maxTextureSize: 48 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Samsung TV + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Nintendo 3DS + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: WiiU + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Nintendo Switch + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: tvOS + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 spriteSheet: + serializedVersion: 2 sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + vertices: [] + indices: + edges: [] + weights: [] spritePackingTag: + pSDRemoveMatte: 0 + pSDShowRemoveMatteOption: 0 userData: + assetBundleName: + assetBundleVariant: diff --git a/Editor/InternalResources/Interface/Nodes/sfn_screenparameters.png.meta b/Editor/InternalResources/Interface/Nodes/sfn_screenparameters.png.meta index fc2595ae..0350b272 100644 --- a/Editor/InternalResources/Interface/Nodes/sfn_screenparameters.png.meta +++ b/Editor/InternalResources/Interface/Nodes/sfn_screenparameters.png.meta @@ -1,32 +1,42 @@ fileFormatVersion: 2 guid: a7121136193cdc44eb2411196d54d1fd TextureImporter: - serializedVersion: 2 + fileIDToRecycleName: {} + externalObjects: {} + serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 0 + sRGBTexture: 0 linearTexture: 1 - correctGamma: 0 fadeOut: 0 borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 - heightScale: .25 + heightScale: 0.25 normalMapFilter: 0 isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 grayScaleToAlpha: 0 - generateCubemap: 0 + generateCubemap: 6 + cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: -3 maxTextureSize: 128 textureSettings: + serializedVersion: 2 filterMode: -1 aniso: -1 - mipBias: -1 - wrapMode: -1 + mipBias: -100 + wrapU: -1 + wrapV: -1 + wrapW: -1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 @@ -34,12 +44,210 @@ TextureImporter: spriteExtrude: 1 spriteMeshType: 1 alignment: 0 - spritePivot: {x: .5, y: .5} + spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 alphaIsTransparency: 0 - textureType: 5 - buildTargetSettings: [] + spriteTessellationDetail: -1 + textureType: 0 + textureShape: 1 + singleChannelComponent: 0 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + platformSettings: + - serializedVersion: 2 + buildTarget: DefaultTexturePlatform + maxTextureSize: 128 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Standalone + maxTextureSize: 96 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: iPhone + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Android + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Web + maxTextureSize: 48 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: WebGL + maxTextureSize: 48 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Windows Store Apps + maxTextureSize: 48 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Tizen + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: PSP2 + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: PS4 + maxTextureSize: 48 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: XboxOne + maxTextureSize: 48 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Samsung TV + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Nintendo 3DS + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: WiiU + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Nintendo Switch + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: tvOS + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 spriteSheet: + serializedVersion: 2 sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + vertices: [] + indices: + edges: [] + weights: [] spritePackingTag: + pSDRemoveMatte: 0 + pSDShowRemoveMatteOption: 0 userData: + assetBundleName: + assetBundleVariant: diff --git a/Editor/InternalResources/Interface/Nodes/sfn_screenpos.png.meta b/Editor/InternalResources/Interface/Nodes/sfn_screenpos.png.meta index 77e9ec61..45cebf9d 100644 --- a/Editor/InternalResources/Interface/Nodes/sfn_screenpos.png.meta +++ b/Editor/InternalResources/Interface/Nodes/sfn_screenpos.png.meta @@ -1,32 +1,42 @@ fileFormatVersion: 2 guid: 37f2601622a180946af899626dd1df67 TextureImporter: - serializedVersion: 2 + fileIDToRecycleName: {} + externalObjects: {} + serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 0 + sRGBTexture: 0 linearTexture: 1 - correctGamma: 0 fadeOut: 0 borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 - heightScale: .25 + heightScale: 0.25 normalMapFilter: 0 isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 grayScaleToAlpha: 0 - generateCubemap: 0 + generateCubemap: 6 + cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: -3 maxTextureSize: 128 textureSettings: + serializedVersion: 2 filterMode: -1 aniso: -1 - mipBias: -1 - wrapMode: 1 + mipBias: -100 + wrapU: 1 + wrapV: 1 + wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 @@ -34,12 +44,210 @@ TextureImporter: spriteExtrude: 1 spriteMeshType: 1 alignment: 0 - spritePivot: {x: .5, y: .5} + spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 alphaIsTransparency: 0 - textureType: 5 - buildTargetSettings: [] + spriteTessellationDetail: -1 + textureType: 0 + textureShape: 1 + singleChannelComponent: 0 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + platformSettings: + - serializedVersion: 2 + buildTarget: DefaultTexturePlatform + maxTextureSize: 128 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Standalone + maxTextureSize: 96 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: iPhone + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Android + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Web + maxTextureSize: 48 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: WebGL + maxTextureSize: 48 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Windows Store Apps + maxTextureSize: 48 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Tizen + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: PSP2 + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: PS4 + maxTextureSize: 48 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: XboxOne + maxTextureSize: 48 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Samsung TV + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Nintendo 3DS + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: WiiU + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Nintendo Switch + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: tvOS + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 spriteSheet: + serializedVersion: 2 sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + vertices: [] + indices: + edges: [] + weights: [] spritePackingTag: + pSDRemoveMatte: 0 + pSDShowRemoveMatteOption: 0 userData: + assetBundleName: + assetBundleVariant: diff --git a/Editor/InternalResources/Interface/Nodes/sfn_screenpos_2.png.meta b/Editor/InternalResources/Interface/Nodes/sfn_screenpos_2.png.meta index e80a3aac..bb019266 100644 --- a/Editor/InternalResources/Interface/Nodes/sfn_screenpos_2.png.meta +++ b/Editor/InternalResources/Interface/Nodes/sfn_screenpos_2.png.meta @@ -1,32 +1,42 @@ fileFormatVersion: 2 guid: 8132d6b257d4a9b49b062ad21bdc3688 TextureImporter: - serializedVersion: 2 + fileIDToRecycleName: {} + externalObjects: {} + serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 0 + sRGBTexture: 0 linearTexture: 1 - correctGamma: 0 fadeOut: 0 borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 - heightScale: .25 + heightScale: 0.25 normalMapFilter: 0 isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 grayScaleToAlpha: 0 - generateCubemap: 0 + generateCubemap: 6 + cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: -3 maxTextureSize: 128 textureSettings: + serializedVersion: 2 filterMode: -1 aniso: -1 - mipBias: -1 - wrapMode: 1 + mipBias: -100 + wrapU: 1 + wrapV: 1 + wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 @@ -34,12 +44,210 @@ TextureImporter: spriteExtrude: 1 spriteMeshType: 1 alignment: 0 - spritePivot: {x: .5, y: .5} + spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 alphaIsTransparency: 0 - textureType: 5 - buildTargetSettings: [] + spriteTessellationDetail: -1 + textureType: 0 + textureShape: 1 + singleChannelComponent: 0 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + platformSettings: + - serializedVersion: 2 + buildTarget: DefaultTexturePlatform + maxTextureSize: 128 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Standalone + maxTextureSize: 96 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: iPhone + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Android + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Web + maxTextureSize: 48 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: WebGL + maxTextureSize: 48 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Windows Store Apps + maxTextureSize: 48 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Tizen + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: PSP2 + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: PS4 + maxTextureSize: 48 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: XboxOne + maxTextureSize: 48 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Samsung TV + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Nintendo 3DS + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: WiiU + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Nintendo Switch + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: tvOS + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 spriteSheet: + serializedVersion: 2 sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + vertices: [] + indices: + edges: [] + weights: [] spritePackingTag: + pSDRemoveMatte: 0 + pSDShowRemoveMatteOption: 0 userData: + assetBundleName: + assetBundleVariant: diff --git a/Editor/InternalResources/Interface/Nodes/sfn_screenpos_3.png.meta b/Editor/InternalResources/Interface/Nodes/sfn_screenpos_3.png.meta index 848e3a12..b48f8927 100644 --- a/Editor/InternalResources/Interface/Nodes/sfn_screenpos_3.png.meta +++ b/Editor/InternalResources/Interface/Nodes/sfn_screenpos_3.png.meta @@ -1,32 +1,42 @@ fileFormatVersion: 2 guid: e079001c5493e4784807dda76fe30aeb TextureImporter: - serializedVersion: 2 + fileIDToRecycleName: {} + externalObjects: {} + serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 0 + sRGBTexture: 0 linearTexture: 1 - correctGamma: 0 fadeOut: 0 borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 - heightScale: .25 + heightScale: 0.25 normalMapFilter: 0 isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 grayScaleToAlpha: 0 - generateCubemap: 0 + generateCubemap: 6 + cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: -3 maxTextureSize: 128 textureSettings: + serializedVersion: 2 filterMode: -1 aniso: -1 - mipBias: -1 - wrapMode: 1 + mipBias: -100 + wrapU: 1 + wrapV: 1 + wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 @@ -34,12 +44,210 @@ TextureImporter: spriteExtrude: 1 spriteMeshType: 1 alignment: 0 - spritePivot: {x: .5, y: .5} + spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 alphaIsTransparency: 0 - textureType: 5 - buildTargetSettings: [] + spriteTessellationDetail: -1 + textureType: 0 + textureShape: 1 + singleChannelComponent: 0 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + platformSettings: + - serializedVersion: 2 + buildTarget: DefaultTexturePlatform + maxTextureSize: 128 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Standalone + maxTextureSize: 96 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: iPhone + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Android + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Web + maxTextureSize: 48 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: WebGL + maxTextureSize: 48 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Windows Store Apps + maxTextureSize: 48 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Tizen + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: PSP2 + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: PS4 + maxTextureSize: 48 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: XboxOne + maxTextureSize: 48 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Samsung TV + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Nintendo 3DS + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: WiiU + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Nintendo Switch + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: tvOS + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 spriteSheet: + serializedVersion: 2 sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + vertices: [] + indices: + edges: [] + weights: [] spritePackingTag: + pSDRemoveMatte: 0 + pSDShowRemoveMatteOption: 0 userData: + assetBundleName: + assetBundleVariant: diff --git a/Editor/InternalResources/Interface/Nodes/sfn_tangent.png.meta b/Editor/InternalResources/Interface/Nodes/sfn_tangent.png.meta index c9ff8014..4a80720b 100644 --- a/Editor/InternalResources/Interface/Nodes/sfn_tangent.png.meta +++ b/Editor/InternalResources/Interface/Nodes/sfn_tangent.png.meta @@ -1,32 +1,42 @@ fileFormatVersion: 2 guid: ecc4a0e9f929f6743b4aa623ad37a014 TextureImporter: - serializedVersion: 2 + fileIDToRecycleName: {} + externalObjects: {} + serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 0 + sRGBTexture: 0 linearTexture: 1 - correctGamma: 0 fadeOut: 0 borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 - heightScale: .25 + heightScale: 0.25 normalMapFilter: 0 isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 grayScaleToAlpha: 0 - generateCubemap: 0 + generateCubemap: 6 + cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: -3 maxTextureSize: 128 textureSettings: + serializedVersion: 2 filterMode: -1 aniso: 0 - mipBias: -1 - wrapMode: 1 + mipBias: -100 + wrapU: 1 + wrapV: 1 + wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 @@ -34,12 +44,210 @@ TextureImporter: spriteExtrude: 1 spriteMeshType: 1 alignment: 0 - spritePivot: {x: .5, y: .5} + spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 alphaIsTransparency: 0 - textureType: 5 - buildTargetSettings: [] + spriteTessellationDetail: -1 + textureType: 0 + textureShape: 1 + singleChannelComponent: 0 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + platformSettings: + - serializedVersion: 2 + buildTarget: DefaultTexturePlatform + maxTextureSize: 128 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Standalone + maxTextureSize: 96 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: iPhone + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Android + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Web + maxTextureSize: 48 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: WebGL + maxTextureSize: 48 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Windows Store Apps + maxTextureSize: 48 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Tizen + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: PSP2 + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: PS4 + maxTextureSize: 48 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: XboxOne + maxTextureSize: 48 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Samsung TV + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Nintendo 3DS + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: WiiU + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Nintendo Switch + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: tvOS + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 spriteSheet: + serializedVersion: 2 sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + vertices: [] + indices: + edges: [] + weights: [] spritePackingTag: + pSDRemoveMatte: 0 + pSDShowRemoveMatteOption: 0 userData: + assetBundleName: + assetBundleVariant: diff --git a/Editor/InternalResources/Interface/Nodes/sfn_tau.png.meta b/Editor/InternalResources/Interface/Nodes/sfn_tau.png.meta index b67ba412..c2deb80f 100644 --- a/Editor/InternalResources/Interface/Nodes/sfn_tau.png.meta +++ b/Editor/InternalResources/Interface/Nodes/sfn_tau.png.meta @@ -1,32 +1,42 @@ fileFormatVersion: 2 guid: e31a63f585d176646a3a20814a548c71 TextureImporter: - serializedVersion: 2 + fileIDToRecycleName: {} + externalObjects: {} + serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 0 + sRGBTexture: 0 linearTexture: 1 - correctGamma: 0 fadeOut: 0 borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 - heightScale: .25 + heightScale: 0.25 normalMapFilter: 0 isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 grayScaleToAlpha: 0 - generateCubemap: 0 + generateCubemap: 6 + cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: -3 maxTextureSize: 128 textureSettings: + serializedVersion: 2 filterMode: -1 aniso: 0 - mipBias: -1 - wrapMode: 0 + mipBias: -100 + wrapU: 0 + wrapV: 0 + wrapW: 0 nPOTScale: 0 lightmap: 0 compressionQuality: 50 @@ -34,12 +44,210 @@ TextureImporter: spriteExtrude: 1 spriteMeshType: 1 alignment: 0 - spritePivot: {x: .5, y: .5} + spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 alphaIsTransparency: 0 - textureType: 5 - buildTargetSettings: [] + spriteTessellationDetail: -1 + textureType: 0 + textureShape: 1 + singleChannelComponent: 0 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + platformSettings: + - serializedVersion: 2 + buildTarget: DefaultTexturePlatform + maxTextureSize: 128 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Standalone + maxTextureSize: 96 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: iPhone + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Android + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Web + maxTextureSize: 48 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: WebGL + maxTextureSize: 48 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Windows Store Apps + maxTextureSize: 48 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Tizen + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: PSP2 + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: PS4 + maxTextureSize: 48 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: XboxOne + maxTextureSize: 48 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Samsung TV + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Nintendo 3DS + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: WiiU + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Nintendo Switch + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: tvOS + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 spriteSheet: + serializedVersion: 2 sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + vertices: [] + indices: + edges: [] + weights: [] spritePackingTag: + pSDRemoveMatte: 0 + pSDShowRemoveMatteOption: 0 userData: + assetBundleName: + assetBundleVariant: diff --git a/Editor/InternalResources/Interface/Nodes/sfn_time.png.meta b/Editor/InternalResources/Interface/Nodes/sfn_time.png.meta index f8a18df2..b3bcef9a 100644 --- a/Editor/InternalResources/Interface/Nodes/sfn_time.png.meta +++ b/Editor/InternalResources/Interface/Nodes/sfn_time.png.meta @@ -1,32 +1,42 @@ fileFormatVersion: 2 guid: 97e13bc521d7b4dada406599941bef7a TextureImporter: - serializedVersion: 2 + fileIDToRecycleName: {} + externalObjects: {} + serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 0 + sRGBTexture: 0 linearTexture: 1 - correctGamma: 0 fadeOut: 0 borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 - heightScale: .25 + heightScale: 0.25 normalMapFilter: 0 isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 grayScaleToAlpha: 0 - generateCubemap: 0 + generateCubemap: 6 + cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: -3 maxTextureSize: 128 textureSettings: + serializedVersion: 2 filterMode: -1 aniso: 1 - mipBias: -1 - wrapMode: 1 + mipBias: -100 + wrapU: 1 + wrapV: 1 + wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 @@ -34,12 +44,210 @@ TextureImporter: spriteExtrude: 1 spriteMeshType: 1 alignment: 0 - spritePivot: {x: .5, y: .5} + spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 alphaIsTransparency: 1 - textureType: 5 - buildTargetSettings: [] + spriteTessellationDetail: -1 + textureType: 0 + textureShape: 1 + singleChannelComponent: 0 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + platformSettings: + - serializedVersion: 2 + buildTarget: DefaultTexturePlatform + maxTextureSize: 128 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Standalone + maxTextureSize: 96 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: iPhone + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Android + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Web + maxTextureSize: 48 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: WebGL + maxTextureSize: 48 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Windows Store Apps + maxTextureSize: 48 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Tizen + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: PSP2 + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: PS4 + maxTextureSize: 48 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: XboxOne + maxTextureSize: 48 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Samsung TV + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Nintendo 3DS + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: WiiU + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Nintendo Switch + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: tvOS + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 spriteSheet: + serializedVersion: 2 sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + vertices: [] + indices: + edges: [] + weights: [] spritePackingTag: + pSDRemoveMatte: 0 + pSDShowRemoveMatteOption: 0 userData: + assetBundleName: + assetBundleVariant: diff --git a/Editor/InternalResources/Interface/Nodes/sfn_vertexcolor.png.meta b/Editor/InternalResources/Interface/Nodes/sfn_vertexcolor.png.meta index ddb59ca1..141099dd 100644 --- a/Editor/InternalResources/Interface/Nodes/sfn_vertexcolor.png.meta +++ b/Editor/InternalResources/Interface/Nodes/sfn_vertexcolor.png.meta @@ -1,32 +1,42 @@ fileFormatVersion: 2 guid: d97533a3ae000c74e9189e8f6a4be215 TextureImporter: - serializedVersion: 2 + fileIDToRecycleName: {} + externalObjects: {} + serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 0 + sRGBTexture: 0 linearTexture: 1 - correctGamma: 0 fadeOut: 0 borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 - heightScale: .25 + heightScale: 0.25 normalMapFilter: 0 isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 grayScaleToAlpha: 0 - generateCubemap: 0 + generateCubemap: 6 + cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: -3 maxTextureSize: 128 textureSettings: + serializedVersion: 2 filterMode: -1 aniso: 0 - mipBias: -1 - wrapMode: 0 + mipBias: -100 + wrapU: 0 + wrapV: 0 + wrapW: 0 nPOTScale: 0 lightmap: 0 compressionQuality: 50 @@ -34,12 +44,210 @@ TextureImporter: spriteExtrude: 1 spriteMeshType: 1 alignment: 0 - spritePivot: {x: .5, y: .5} + spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 alphaIsTransparency: 0 - textureType: 5 - buildTargetSettings: [] + spriteTessellationDetail: -1 + textureType: 0 + textureShape: 1 + singleChannelComponent: 0 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + platformSettings: + - serializedVersion: 2 + buildTarget: DefaultTexturePlatform + maxTextureSize: 128 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Standalone + maxTextureSize: 96 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: iPhone + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Android + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Web + maxTextureSize: 48 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: WebGL + maxTextureSize: 48 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Windows Store Apps + maxTextureSize: 48 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Tizen + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: PSP2 + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: PS4 + maxTextureSize: 48 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: XboxOne + maxTextureSize: 48 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Samsung TV + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Nintendo 3DS + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: WiiU + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Nintendo Switch + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: tvOS + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 spriteSheet: + serializedVersion: 2 sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + vertices: [] + indices: + edges: [] + weights: [] spritePackingTag: + pSDRemoveMatte: 0 + pSDShowRemoveMatteOption: 0 userData: + assetBundleName: + assetBundleVariant: diff --git a/Editor/InternalResources/Interface/Nodes/sfn_viewposition.png.meta b/Editor/InternalResources/Interface/Nodes/sfn_viewposition.png.meta index 7914f88d..0049085e 100644 --- a/Editor/InternalResources/Interface/Nodes/sfn_viewposition.png.meta +++ b/Editor/InternalResources/Interface/Nodes/sfn_viewposition.png.meta @@ -1,32 +1,42 @@ fileFormatVersion: 2 guid: 2dec88f8c76aae1418330680aa539cf6 TextureImporter: - serializedVersion: 2 + fileIDToRecycleName: {} + externalObjects: {} + serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 0 + sRGBTexture: 0 linearTexture: 1 - correctGamma: 0 fadeOut: 0 borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 - heightScale: .25 + heightScale: 0.25 normalMapFilter: 0 isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 grayScaleToAlpha: 0 - generateCubemap: 0 + generateCubemap: 6 + cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: -3 maxTextureSize: 128 textureSettings: + serializedVersion: 2 filterMode: -1 aniso: 0 - mipBias: -1 - wrapMode: -1 + mipBias: -100 + wrapU: -1 + wrapV: -1 + wrapW: -1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 @@ -34,12 +44,210 @@ TextureImporter: spriteExtrude: 1 spriteMeshType: 1 alignment: 0 - spritePivot: {x: .5, y: .5} + spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 alphaIsTransparency: 0 - textureType: 5 - buildTargetSettings: [] + spriteTessellationDetail: -1 + textureType: 0 + textureShape: 1 + singleChannelComponent: 0 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + platformSettings: + - serializedVersion: 2 + buildTarget: DefaultTexturePlatform + maxTextureSize: 128 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Standalone + maxTextureSize: 96 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: iPhone + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Android + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Web + maxTextureSize: 48 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: WebGL + maxTextureSize: 48 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Windows Store Apps + maxTextureSize: 48 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Tizen + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: PSP2 + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: PS4 + maxTextureSize: 48 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: XboxOne + maxTextureSize: 48 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Samsung TV + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Nintendo 3DS + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: WiiU + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Nintendo Switch + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: tvOS + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 spriteSheet: + serializedVersion: 2 sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + vertices: [] + indices: + edges: [] + weights: [] spritePackingTag: + pSDRemoveMatte: 0 + pSDShowRemoveMatteOption: 0 userData: + assetBundleName: + assetBundleVariant: diff --git a/Editor/InternalResources/Interface/Nodes/sfn_viewreflectionvector.png.meta b/Editor/InternalResources/Interface/Nodes/sfn_viewreflectionvector.png.meta index 34745b4b..7031719e 100644 --- a/Editor/InternalResources/Interface/Nodes/sfn_viewreflectionvector.png.meta +++ b/Editor/InternalResources/Interface/Nodes/sfn_viewreflectionvector.png.meta @@ -1,32 +1,42 @@ fileFormatVersion: 2 guid: fbcf50a1249763e499e2c1b6ecd03e21 TextureImporter: - serializedVersion: 2 + fileIDToRecycleName: {} + externalObjects: {} + serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 0 + sRGBTexture: 0 linearTexture: 1 - correctGamma: 0 fadeOut: 0 borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 - heightScale: .25 + heightScale: 0.25 normalMapFilter: 0 isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 grayScaleToAlpha: 0 - generateCubemap: 0 + generateCubemap: 6 + cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: -3 maxTextureSize: 128 textureSettings: + serializedVersion: 2 filterMode: -1 aniso: 0 - mipBias: -1 - wrapMode: 0 + mipBias: -100 + wrapU: 0 + wrapV: 0 + wrapW: 0 nPOTScale: 0 lightmap: 0 compressionQuality: 50 @@ -34,12 +44,210 @@ TextureImporter: spriteExtrude: 1 spriteMeshType: 1 alignment: 0 - spritePivot: {x: .5, y: .5} + spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 alphaIsTransparency: 0 - textureType: 5 - buildTargetSettings: [] + spriteTessellationDetail: -1 + textureType: 0 + textureShape: 1 + singleChannelComponent: 0 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + platformSettings: + - serializedVersion: 2 + buildTarget: DefaultTexturePlatform + maxTextureSize: 128 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Standalone + maxTextureSize: 96 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: iPhone + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Android + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Web + maxTextureSize: 48 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: WebGL + maxTextureSize: 48 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Windows Store Apps + maxTextureSize: 48 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Tizen + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: PSP2 + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: PS4 + maxTextureSize: 48 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: XboxOne + maxTextureSize: 48 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Samsung TV + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Nintendo 3DS + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: WiiU + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Nintendo Switch + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: tvOS + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 spriteSheet: + serializedVersion: 2 sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + vertices: [] + indices: + edges: [] + weights: [] spritePackingTag: + pSDRemoveMatte: 0 + pSDShowRemoveMatteOption: 0 userData: + assetBundleName: + assetBundleVariant: diff --git a/Editor/InternalResources/Interface/Nodes/sfn_viewvector.png.meta b/Editor/InternalResources/Interface/Nodes/sfn_viewvector.png.meta index cc2f4ab9..b5aadb17 100644 --- a/Editor/InternalResources/Interface/Nodes/sfn_viewvector.png.meta +++ b/Editor/InternalResources/Interface/Nodes/sfn_viewvector.png.meta @@ -1,32 +1,42 @@ fileFormatVersion: 2 guid: 9b5bb8e552f448947a012c01ec08e6ff TextureImporter: - serializedVersion: 2 + fileIDToRecycleName: {} + externalObjects: {} + serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 0 + sRGBTexture: 0 linearTexture: 1 - correctGamma: 0 fadeOut: 0 borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 - heightScale: .25 + heightScale: 0.25 normalMapFilter: 0 isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 grayScaleToAlpha: 0 - generateCubemap: 0 + generateCubemap: 6 + cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: -3 maxTextureSize: 128 textureSettings: + serializedVersion: 2 filterMode: -1 aniso: 0 - mipBias: -1 - wrapMode: 0 + mipBias: -100 + wrapU: 0 + wrapV: 0 + wrapW: 0 nPOTScale: 0 lightmap: 0 compressionQuality: 50 @@ -34,12 +44,210 @@ TextureImporter: spriteExtrude: 1 spriteMeshType: 1 alignment: 0 - spritePivot: {x: .5, y: .5} + spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 alphaIsTransparency: 0 - textureType: 5 - buildTargetSettings: [] + spriteTessellationDetail: -1 + textureType: 0 + textureShape: 1 + singleChannelComponent: 0 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + platformSettings: + - serializedVersion: 2 + buildTarget: DefaultTexturePlatform + maxTextureSize: 128 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Standalone + maxTextureSize: 96 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: iPhone + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Android + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Web + maxTextureSize: 48 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: WebGL + maxTextureSize: 48 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Windows Store Apps + maxTextureSize: 48 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Tizen + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: PSP2 + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: PS4 + maxTextureSize: 48 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: XboxOne + maxTextureSize: 48 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Samsung TV + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Nintendo 3DS + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: WiiU + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Nintendo Switch + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: tvOS + maxTextureSize: 24 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 spriteSheet: + serializedVersion: 2 sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + vertices: [] + indices: + edges: [] + weights: [] spritePackingTag: + pSDRemoveMatte: 0 + pSDShowRemoveMatteOption: 0 userData: + assetBundleName: + assetBundleVariant: diff --git a/Editor/InternalResources/Interface/chk.png.meta b/Editor/InternalResources/Interface/chk.png.meta index 984ca0a6..f020190a 100644 --- a/Editor/InternalResources/Interface/chk.png.meta +++ b/Editor/InternalResources/Interface/chk.png.meta @@ -1,32 +1,42 @@ fileFormatVersion: 2 guid: 72f052122502345f1b365b37455a8e3d TextureImporter: - serializedVersion: 2 + fileIDToRecycleName: {} + externalObjects: {} + serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 0 + sRGBTexture: 0 linearTexture: 1 - correctGamma: 0 fadeOut: 0 borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 - heightScale: .25 + heightScale: 0.25 normalMapFilter: 0 isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 grayScaleToAlpha: 0 - generateCubemap: 0 + generateCubemap: 6 + cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: -3 maxTextureSize: 256 textureSettings: + serializedVersion: 2 filterMode: 2 aniso: 0 - mipBias: -1 - wrapMode: 1 + mipBias: -100 + wrapU: 1 + wrapV: 1 + wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 @@ -34,12 +44,210 @@ TextureImporter: spriteExtrude: 1 spriteMeshType: 1 alignment: 0 - spritePivot: {x: .5, y: .5} + spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 alphaIsTransparency: 1 - textureType: 5 - buildTargetSettings: [] + spriteTessellationDetail: -1 + textureType: 0 + textureShape: 1 + singleChannelComponent: 0 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + platformSettings: + - serializedVersion: 2 + buildTarget: DefaultTexturePlatform + maxTextureSize: 256 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Standalone + maxTextureSize: 21 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: iPhone + maxTextureSize: 8 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Android + maxTextureSize: 8 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Web + maxTextureSize: 10 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: WebGL + maxTextureSize: 10 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Windows Store Apps + maxTextureSize: 10 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Tizen + maxTextureSize: 8 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: PSP2 + maxTextureSize: 8 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: PS4 + maxTextureSize: 10 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: XboxOne + maxTextureSize: 10 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Samsung TV + maxTextureSize: 8 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Nintendo 3DS + maxTextureSize: 8 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: WiiU + maxTextureSize: 8 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Nintendo Switch + maxTextureSize: 8 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: tvOS + maxTextureSize: 8 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 spriteSheet: + serializedVersion: 2 sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + vertices: [] + indices: + edges: [] + weights: [] spritePackingTag: + pSDRemoveMatte: 0 + pSDShowRemoveMatteOption: 0 userData: + assetBundleName: + assetBundleVariant: diff --git a/Editor/InternalResources/Interface/chk_light.png.meta b/Editor/InternalResources/Interface/chk_light.png.meta index 37c007a2..acd495bc 100644 --- a/Editor/InternalResources/Interface/chk_light.png.meta +++ b/Editor/InternalResources/Interface/chk_light.png.meta @@ -1,32 +1,42 @@ fileFormatVersion: 2 guid: 6f03a95036ea64277b6dc1bbc2f6eba6 TextureImporter: - serializedVersion: 2 + fileIDToRecycleName: {} + externalObjects: {} + serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 0 + sRGBTexture: 0 linearTexture: 1 - correctGamma: 0 fadeOut: 0 borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 - heightScale: .25 + heightScale: 0.25 normalMapFilter: 0 isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 grayScaleToAlpha: 0 - generateCubemap: 0 + generateCubemap: 6 + cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: -3 maxTextureSize: 256 textureSettings: + serializedVersion: 2 filterMode: 2 aniso: 0 - mipBias: -1 - wrapMode: 1 + mipBias: -100 + wrapU: 1 + wrapV: 1 + wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 @@ -34,12 +44,210 @@ TextureImporter: spriteExtrude: 1 spriteMeshType: 1 alignment: 0 - spritePivot: {x: .5, y: .5} + spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 alphaIsTransparency: 1 - textureType: 5 - buildTargetSettings: [] + spriteTessellationDetail: -1 + textureType: 0 + textureShape: 1 + singleChannelComponent: 0 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + platformSettings: + - serializedVersion: 2 + buildTarget: DefaultTexturePlatform + maxTextureSize: 256 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Standalone + maxTextureSize: 21 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: iPhone + maxTextureSize: 8 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Android + maxTextureSize: 8 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Web + maxTextureSize: 10 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: WebGL + maxTextureSize: 10 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Windows Store Apps + maxTextureSize: 10 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Tizen + maxTextureSize: 8 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: PSP2 + maxTextureSize: 8 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: PS4 + maxTextureSize: 10 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: XboxOne + maxTextureSize: 10 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Samsung TV + maxTextureSize: 8 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Nintendo 3DS + maxTextureSize: 8 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: WiiU + maxTextureSize: 8 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Nintendo Switch + maxTextureSize: 8 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: tvOS + maxTextureSize: 8 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 spriteSheet: + serializedVersion: 2 sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + vertices: [] + indices: + edges: [] + weights: [] spritePackingTag: + pSDRemoveMatte: 0 + pSDShowRemoveMatteOption: 0 userData: + assetBundleName: + assetBundleVariant: diff --git a/Editor/InternalResources/Interface/handle_drag.tga.meta b/Editor/InternalResources/Interface/handle_drag.tga.meta index 2eeda33f..eb5b2eda 100644 --- a/Editor/InternalResources/Interface/handle_drag.tga.meta +++ b/Editor/InternalResources/Interface/handle_drag.tga.meta @@ -1,32 +1,42 @@ fileFormatVersion: 2 guid: a1247bf5b8569364aa4c9c862f598ccf TextureImporter: - serializedVersion: 2 + fileIDToRecycleName: {} + externalObjects: {} + serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 0 + sRGBTexture: 0 linearTexture: 1 - correctGamma: 0 fadeOut: 0 borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 - heightScale: .25 + heightScale: 0.25 normalMapFilter: 0 isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 grayScaleToAlpha: 0 - generateCubemap: 0 + generateCubemap: 6 + cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: -3 maxTextureSize: 32 textureSettings: + serializedVersion: 2 filterMode: 0 aniso: 1 - mipBias: -1 - wrapMode: 0 + mipBias: -100 + wrapU: 0 + wrapV: 0 + wrapW: 0 nPOTScale: 0 lightmap: 0 compressionQuality: 50 @@ -34,12 +44,210 @@ TextureImporter: spriteExtrude: 1 spriteMeshType: 1 alignment: 0 - spritePivot: {x: .5, y: .5} + spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 alphaIsTransparency: 1 - textureType: 5 - buildTargetSettings: [] + spriteTessellationDetail: -1 + textureType: 0 + textureShape: 1 + singleChannelComponent: 0 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + platformSettings: + - serializedVersion: 2 + buildTarget: DefaultTexturePlatform + maxTextureSize: 32 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Standalone + maxTextureSize: 8 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: iPhone + maxTextureSize: 8 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Android + maxTextureSize: 8 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Web + maxTextureSize: 8 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: WebGL + maxTextureSize: 8 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Windows Store Apps + maxTextureSize: 8 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Tizen + maxTextureSize: 8 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: PSP2 + maxTextureSize: 8 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: PS4 + maxTextureSize: 8 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: XboxOne + maxTextureSize: 8 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Samsung TV + maxTextureSize: 8 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Nintendo 3DS + maxTextureSize: 8 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: WiiU + maxTextureSize: 8 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Nintendo Switch + maxTextureSize: 8 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: tvOS + maxTextureSize: 8 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 spriteSheet: + serializedVersion: 2 sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + vertices: [] + indices: + edges: [] + weights: [] spritePackingTag: + pSDRemoveMatte: 0 + pSDShowRemoveMatteOption: 0 userData: + assetBundleName: + assetBundleVariant: diff --git a/Editor/InternalResources/Interface/icon.png.meta b/Editor/InternalResources/Interface/icon.png.meta index 1c7e4910..72f21be0 100644 --- a/Editor/InternalResources/Interface/icon.png.meta +++ b/Editor/InternalResources/Interface/icon.png.meta @@ -1,32 +1,42 @@ fileFormatVersion: 2 guid: 7aae165d391b84eddbed5fd0ec9e6460 TextureImporter: - serializedVersion: 2 + fileIDToRecycleName: {} + externalObjects: {} + serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 0 + sRGBTexture: 1 linearTexture: 1 - correctGamma: 0 fadeOut: 0 borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 - heightScale: .25 + heightScale: 0.25 normalMapFilter: 0 isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 grayScaleToAlpha: 0 - generateCubemap: 0 + generateCubemap: 6 + cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: -3 maxTextureSize: 1024 textureSettings: + serializedVersion: 2 filterMode: -1 aniso: 1 - mipBias: -1 - wrapMode: 1 + mipBias: -100 + wrapU: 1 + wrapV: 1 + wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 @@ -34,12 +44,210 @@ TextureImporter: spriteExtrude: 1 spriteMeshType: 1 alignment: 0 - spritePivot: {x: .5, y: .5} + spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 alphaIsTransparency: 1 + spriteTessellationDetail: -1 textureType: 2 - buildTargetSettings: [] + textureShape: 1 + singleChannelComponent: 0 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + platformSettings: + - serializedVersion: 2 + buildTarget: DefaultTexturePlatform + maxTextureSize: 1024 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Standalone + maxTextureSize: 17 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: iPhone + maxTextureSize: 8 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Android + maxTextureSize: 8 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Web + maxTextureSize: 8 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: WebGL + maxTextureSize: 8 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Windows Store Apps + maxTextureSize: 8 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Tizen + maxTextureSize: 8 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: PSP2 + maxTextureSize: 8 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: PS4 + maxTextureSize: 8 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: XboxOne + maxTextureSize: 8 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Samsung TV + maxTextureSize: 8 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Nintendo 3DS + maxTextureSize: 8 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: WiiU + maxTextureSize: 8 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Nintendo Switch + maxTextureSize: 8 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: tvOS + maxTextureSize: 8 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 spriteSheet: + serializedVersion: 2 sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + vertices: [] + indices: + edges: [] + weights: [] spritePackingTag: + pSDRemoveMatte: 0 + pSDShowRemoveMatteOption: 0 userData: + assetBundleName: + assetBundleVariant: diff --git a/Editor/InternalResources/Interface/icon_light.png.meta b/Editor/InternalResources/Interface/icon_light.png.meta index 945fe4ff..b6700ee4 100644 --- a/Editor/InternalResources/Interface/icon_light.png.meta +++ b/Editor/InternalResources/Interface/icon_light.png.meta @@ -1,32 +1,42 @@ fileFormatVersion: 2 guid: a67aa329325af46d4a9c18d7ad10dc51 TextureImporter: - serializedVersion: 2 + fileIDToRecycleName: {} + externalObjects: {} + serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 0 + sRGBTexture: 1 linearTexture: 1 - correctGamma: 0 fadeOut: 0 borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 - heightScale: .25 + heightScale: 0.25 normalMapFilter: 0 isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 grayScaleToAlpha: 0 - generateCubemap: 0 + generateCubemap: 6 + cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: -3 maxTextureSize: 1024 textureSettings: + serializedVersion: 2 filterMode: 1 aniso: 1 - mipBias: -1 - wrapMode: 1 + mipBias: -100 + wrapU: 1 + wrapV: 1 + wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 @@ -34,12 +44,210 @@ TextureImporter: spriteExtrude: 1 spriteMeshType: 1 alignment: 0 - spritePivot: {x: .5, y: .5} + spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 alphaIsTransparency: 1 + spriteTessellationDetail: -1 textureType: 2 - buildTargetSettings: [] + textureShape: 1 + singleChannelComponent: 0 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + platformSettings: + - serializedVersion: 2 + buildTarget: DefaultTexturePlatform + maxTextureSize: 1024 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Standalone + maxTextureSize: 18 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: iPhone + maxTextureSize: 8 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Android + maxTextureSize: 8 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Web + maxTextureSize: 9 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: WebGL + maxTextureSize: 9 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Windows Store Apps + maxTextureSize: 9 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Tizen + maxTextureSize: 8 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: PSP2 + maxTextureSize: 8 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: PS4 + maxTextureSize: 9 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: XboxOne + maxTextureSize: 9 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Samsung TV + maxTextureSize: 8 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Nintendo 3DS + maxTextureSize: 8 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: WiiU + maxTextureSize: 8 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Nintendo Switch + maxTextureSize: 8 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: tvOS + maxTextureSize: 8 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 spriteSheet: + serializedVersion: 2 sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + vertices: [] + indices: + edges: [] + weights: [] spritePackingTag: + pSDRemoveMatte: 0 + pSDShowRemoveMatteOption: 0 userData: + assetBundleName: + assetBundleVariant: diff --git a/Editor/InternalResources/Interface/icon_normal.tga.meta b/Editor/InternalResources/Interface/icon_normal.tga.meta index 9b10f24e..a5a4d098 100644 --- a/Editor/InternalResources/Interface/icon_normal.tga.meta +++ b/Editor/InternalResources/Interface/icon_normal.tga.meta @@ -1,32 +1,42 @@ fileFormatVersion: 2 guid: 8689fac7742124e4ebd4c379ee337bcc TextureImporter: - serializedVersion: 2 + fileIDToRecycleName: {} + externalObjects: {} + serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 0 + sRGBTexture: 1 linearTexture: 1 - correctGamma: 0 fadeOut: 0 borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 - heightScale: .25 + heightScale: 0.25 normalMapFilter: 0 isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 grayScaleToAlpha: 0 - generateCubemap: 0 + generateCubemap: 6 + cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: -3 maxTextureSize: 32 textureSettings: + serializedVersion: 2 filterMode: 1 aniso: 1 - mipBias: -1 - wrapMode: 1 + mipBias: -100 + wrapU: 1 + wrapV: 1 + wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 @@ -34,12 +44,210 @@ TextureImporter: spriteExtrude: 1 spriteMeshType: 1 alignment: 0 - spritePivot: {x: .5, y: .5} + spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 alphaIsTransparency: 1 + spriteTessellationDetail: -1 textureType: 2 - buildTargetSettings: [] + textureShape: 1 + singleChannelComponent: 0 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + platformSettings: + - serializedVersion: 2 + buildTarget: DefaultTexturePlatform + maxTextureSize: 32 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Standalone + maxTextureSize: 16 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: iPhone + maxTextureSize: 8 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Android + maxTextureSize: 8 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Web + maxTextureSize: 8 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: WebGL + maxTextureSize: 8 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Windows Store Apps + maxTextureSize: 8 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Tizen + maxTextureSize: 8 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: PSP2 + maxTextureSize: 8 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: PS4 + maxTextureSize: 8 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: XboxOne + maxTextureSize: 8 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Samsung TV + maxTextureSize: 8 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Nintendo 3DS + maxTextureSize: 8 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: WiiU + maxTextureSize: 8 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Nintendo Switch + maxTextureSize: 8 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: tvOS + maxTextureSize: 8 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 spriteSheet: + serializedVersion: 2 sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + vertices: [] + indices: + edges: [] + weights: [] spritePackingTag: + pSDRemoveMatte: 0 + pSDShowRemoveMatteOption: 0 userData: + assetBundleName: + assetBundleVariant: diff --git a/Editor/InternalResources/Interface/inst_frag.png.meta b/Editor/InternalResources/Interface/inst_frag.png.meta index e0295aef..72a8e2e6 100644 --- a/Editor/InternalResources/Interface/inst_frag.png.meta +++ b/Editor/InternalResources/Interface/inst_frag.png.meta @@ -1,32 +1,42 @@ fileFormatVersion: 2 guid: 46671ce9b6548d6418bf2b00bd46cd33 TextureImporter: - serializedVersion: 2 + fileIDToRecycleName: {} + externalObjects: {} + serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 0 + sRGBTexture: 0 linearTexture: 1 - correctGamma: 0 fadeOut: 0 borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 - heightScale: .25 + heightScale: 0.25 normalMapFilter: 0 isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 grayScaleToAlpha: 0 - generateCubemap: 0 + generateCubemap: 6 + cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: -3 maxTextureSize: 32 textureSettings: + serializedVersion: 2 filterMode: -1 aniso: 0 - mipBias: -1 - wrapMode: 0 + mipBias: -100 + wrapU: 0 + wrapV: 0 + wrapW: 0 nPOTScale: 0 lightmap: 0 compressionQuality: 50 @@ -34,12 +44,210 @@ TextureImporter: spriteExtrude: 1 spriteMeshType: 1 alignment: 0 - spritePivot: {x: .5, y: .5} + spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 alphaIsTransparency: 1 - textureType: 5 - buildTargetSettings: [] + spriteTessellationDetail: -1 + textureType: 0 + textureShape: 1 + singleChannelComponent: 0 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + platformSettings: + - serializedVersion: 2 + buildTarget: DefaultTexturePlatform + maxTextureSize: 32 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Standalone + maxTextureSize: 18 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: iPhone + maxTextureSize: 8 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Android + maxTextureSize: 8 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Web + maxTextureSize: 9 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: WebGL + maxTextureSize: 9 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Windows Store Apps + maxTextureSize: 9 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Tizen + maxTextureSize: 8 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: PSP2 + maxTextureSize: 8 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: PS4 + maxTextureSize: 9 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: XboxOne + maxTextureSize: 9 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Samsung TV + maxTextureSize: 8 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Nintendo 3DS + maxTextureSize: 8 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: WiiU + maxTextureSize: 8 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Nintendo Switch + maxTextureSize: 8 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: tvOS + maxTextureSize: 8 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 spriteSheet: + serializedVersion: 2 sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + vertices: [] + indices: + edges: [] + weights: [] spritePackingTag: + pSDRemoveMatte: 0 + pSDShowRemoveMatteOption: 0 userData: + assetBundleName: + assetBundleVariant: diff --git a/Editor/InternalResources/Interface/inst_frag_light.png.meta b/Editor/InternalResources/Interface/inst_frag_light.png.meta index d4f71ccf..98007821 100644 --- a/Editor/InternalResources/Interface/inst_frag_light.png.meta +++ b/Editor/InternalResources/Interface/inst_frag_light.png.meta @@ -1,32 +1,42 @@ fileFormatVersion: 2 guid: 41a2cdabd76d17d4b8b0692eca20eeda TextureImporter: - serializedVersion: 2 + fileIDToRecycleName: {} + externalObjects: {} + serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 0 + sRGBTexture: 0 linearTexture: 1 - correctGamma: 0 fadeOut: 0 borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 - heightScale: .25 + heightScale: 0.25 normalMapFilter: 0 isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 grayScaleToAlpha: 0 - generateCubemap: 0 + generateCubemap: 6 + cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: -3 maxTextureSize: 32 textureSettings: + serializedVersion: 2 filterMode: -1 aniso: 0 - mipBias: -1 - wrapMode: 0 + mipBias: -100 + wrapU: 0 + wrapV: 0 + wrapW: 0 nPOTScale: 0 lightmap: 0 compressionQuality: 50 @@ -34,12 +44,210 @@ TextureImporter: spriteExtrude: 1 spriteMeshType: 1 alignment: 0 - spritePivot: {x: .5, y: .5} + spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 alphaIsTransparency: 1 - textureType: 5 - buildTargetSettings: [] + spriteTessellationDetail: -1 + textureType: 0 + textureShape: 1 + singleChannelComponent: 0 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + platformSettings: + - serializedVersion: 2 + buildTarget: DefaultTexturePlatform + maxTextureSize: 32 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Standalone + maxTextureSize: 18 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: iPhone + maxTextureSize: 8 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Android + maxTextureSize: 8 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Web + maxTextureSize: 9 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: WebGL + maxTextureSize: 9 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Windows Store Apps + maxTextureSize: 9 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Tizen + maxTextureSize: 8 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: PSP2 + maxTextureSize: 8 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: PS4 + maxTextureSize: 9 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: XboxOne + maxTextureSize: 9 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Samsung TV + maxTextureSize: 8 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Nintendo 3DS + maxTextureSize: 8 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: WiiU + maxTextureSize: 8 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Nintendo Switch + maxTextureSize: 8 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: tvOS + maxTextureSize: 8 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 spriteSheet: + serializedVersion: 2 sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + vertices: [] + indices: + edges: [] + weights: [] spritePackingTag: + pSDRemoveMatte: 0 + pSDShowRemoveMatteOption: 0 userData: + assetBundleName: + assetBundleVariant: diff --git a/Editor/InternalResources/Interface/inst_frag_tex.png.meta b/Editor/InternalResources/Interface/inst_frag_tex.png.meta index 97ff775e..69981e08 100644 --- a/Editor/InternalResources/Interface/inst_frag_tex.png.meta +++ b/Editor/InternalResources/Interface/inst_frag_tex.png.meta @@ -1,32 +1,42 @@ fileFormatVersion: 2 guid: 6cffc3611ab437f488a7fa36ae9f03c0 TextureImporter: - serializedVersion: 2 + fileIDToRecycleName: {} + externalObjects: {} + serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 0 + sRGBTexture: 0 linearTexture: 1 - correctGamma: 0 fadeOut: 0 borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 - heightScale: .25 + heightScale: 0.25 normalMapFilter: 0 isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 grayScaleToAlpha: 0 - generateCubemap: 0 + generateCubemap: 6 + cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: -3 maxTextureSize: 32 textureSettings: + serializedVersion: 2 filterMode: -1 aniso: 0 - mipBias: -1 - wrapMode: 0 + mipBias: -100 + wrapU: 0 + wrapV: 0 + wrapW: 0 nPOTScale: 0 lightmap: 0 compressionQuality: 50 @@ -34,12 +44,210 @@ TextureImporter: spriteExtrude: 1 spriteMeshType: 1 alignment: 0 - spritePivot: {x: .5, y: .5} + spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 alphaIsTransparency: 1 - textureType: 5 - buildTargetSettings: [] + spriteTessellationDetail: -1 + textureType: 0 + textureShape: 1 + singleChannelComponent: 0 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + platformSettings: + - serializedVersion: 2 + buildTarget: DefaultTexturePlatform + maxTextureSize: 32 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Standalone + maxTextureSize: 23 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: iPhone + maxTextureSize: 8 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Android + maxTextureSize: 8 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Web + maxTextureSize: 11 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: WebGL + maxTextureSize: 11 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Windows Store Apps + maxTextureSize: 11 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Tizen + maxTextureSize: 8 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: PSP2 + maxTextureSize: 8 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: PS4 + maxTextureSize: 11 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: XboxOne + maxTextureSize: 11 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Samsung TV + maxTextureSize: 8 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Nintendo 3DS + maxTextureSize: 8 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: WiiU + maxTextureSize: 8 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Nintendo Switch + maxTextureSize: 8 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: tvOS + maxTextureSize: 8 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 spriteSheet: + serializedVersion: 2 sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + vertices: [] + indices: + edges: [] + weights: [] spritePackingTag: + pSDRemoveMatte: 0 + pSDShowRemoveMatteOption: 0 userData: + assetBundleName: + assetBundleVariant: diff --git a/Editor/InternalResources/Interface/inst_frag_tex_light.png.meta b/Editor/InternalResources/Interface/inst_frag_tex_light.png.meta index 39358e85..d5e5a1f9 100644 --- a/Editor/InternalResources/Interface/inst_frag_tex_light.png.meta +++ b/Editor/InternalResources/Interface/inst_frag_tex_light.png.meta @@ -1,32 +1,42 @@ fileFormatVersion: 2 guid: f03e39f9e5523ac4a8d46e573c6b8ef8 TextureImporter: - serializedVersion: 2 + fileIDToRecycleName: {} + externalObjects: {} + serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 0 + sRGBTexture: 0 linearTexture: 1 - correctGamma: 0 fadeOut: 0 borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 - heightScale: .25 + heightScale: 0.25 normalMapFilter: 0 isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 grayScaleToAlpha: 0 - generateCubemap: 0 + generateCubemap: 6 + cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: -3 maxTextureSize: 32 textureSettings: + serializedVersion: 2 filterMode: -1 aniso: 0 - mipBias: -1 - wrapMode: 0 + mipBias: -100 + wrapU: 0 + wrapV: 0 + wrapW: 0 nPOTScale: 0 lightmap: 0 compressionQuality: 50 @@ -34,12 +44,210 @@ TextureImporter: spriteExtrude: 1 spriteMeshType: 1 alignment: 0 - spritePivot: {x: .5, y: .5} + spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 alphaIsTransparency: 1 - textureType: 5 - buildTargetSettings: [] + spriteTessellationDetail: -1 + textureType: 0 + textureShape: 1 + singleChannelComponent: 0 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + platformSettings: + - serializedVersion: 2 + buildTarget: DefaultTexturePlatform + maxTextureSize: 32 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Standalone + maxTextureSize: 23 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: iPhone + maxTextureSize: 8 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Android + maxTextureSize: 8 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Web + maxTextureSize: 11 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: WebGL + maxTextureSize: 11 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Windows Store Apps + maxTextureSize: 11 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Tizen + maxTextureSize: 8 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: PSP2 + maxTextureSize: 8 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: PS4 + maxTextureSize: 11 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: XboxOne + maxTextureSize: 11 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Samsung TV + maxTextureSize: 8 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Nintendo 3DS + maxTextureSize: 8 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: WiiU + maxTextureSize: 8 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Nintendo Switch + maxTextureSize: 8 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: tvOS + maxTextureSize: 8 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 spriteSheet: + serializedVersion: 2 sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + vertices: [] + indices: + edges: [] + weights: [] spritePackingTag: + pSDRemoveMatte: 0 + pSDShowRemoveMatteOption: 0 userData: + assetBundleName: + assetBundleVariant: diff --git a/Editor/InternalResources/Interface/inst_vert.png.meta b/Editor/InternalResources/Interface/inst_vert.png.meta index 2f457569..8dffda22 100644 --- a/Editor/InternalResources/Interface/inst_vert.png.meta +++ b/Editor/InternalResources/Interface/inst_vert.png.meta @@ -1,32 +1,42 @@ fileFormatVersion: 2 guid: 5f0ae3fa9bd0d9b48b89c99f2e6b8c81 TextureImporter: - serializedVersion: 2 + fileIDToRecycleName: {} + externalObjects: {} + serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 0 + sRGBTexture: 0 linearTexture: 1 - correctGamma: 0 fadeOut: 0 borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 - heightScale: .25 + heightScale: 0.25 normalMapFilter: 0 isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 grayScaleToAlpha: 0 - generateCubemap: 0 + generateCubemap: 6 + cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: -3 maxTextureSize: 32 textureSettings: + serializedVersion: 2 filterMode: -1 aniso: 0 - mipBias: -1 - wrapMode: 0 + mipBias: -100 + wrapU: 0 + wrapV: 0 + wrapW: 0 nPOTScale: 0 lightmap: 0 compressionQuality: 50 @@ -34,12 +44,210 @@ TextureImporter: spriteExtrude: 1 spriteMeshType: 1 alignment: 0 - spritePivot: {x: .5, y: .5} + spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 alphaIsTransparency: 1 - textureType: 5 - buildTargetSettings: [] + spriteTessellationDetail: -1 + textureType: 0 + textureShape: 1 + singleChannelComponent: 0 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + platformSettings: + - serializedVersion: 2 + buildTarget: DefaultTexturePlatform + maxTextureSize: 32 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Standalone + maxTextureSize: 18 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: iPhone + maxTextureSize: 8 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Android + maxTextureSize: 8 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Web + maxTextureSize: 9 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: WebGL + maxTextureSize: 9 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Windows Store Apps + maxTextureSize: 9 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Tizen + maxTextureSize: 8 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: PSP2 + maxTextureSize: 8 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: PS4 + maxTextureSize: 9 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: XboxOne + maxTextureSize: 9 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Samsung TV + maxTextureSize: 8 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Nintendo 3DS + maxTextureSize: 8 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: WiiU + maxTextureSize: 8 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Nintendo Switch + maxTextureSize: 8 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: tvOS + maxTextureSize: 8 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 spriteSheet: + serializedVersion: 2 sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + vertices: [] + indices: + edges: [] + weights: [] spritePackingTag: + pSDRemoveMatte: 0 + pSDShowRemoveMatteOption: 0 userData: + assetBundleName: + assetBundleVariant: diff --git a/Editor/InternalResources/Interface/inst_vert_light.png.meta b/Editor/InternalResources/Interface/inst_vert_light.png.meta index 3db4ca0b..c19c7f37 100644 --- a/Editor/InternalResources/Interface/inst_vert_light.png.meta +++ b/Editor/InternalResources/Interface/inst_vert_light.png.meta @@ -1,32 +1,42 @@ fileFormatVersion: 2 guid: e483f81feb62ee941933401d86b3dbb4 TextureImporter: - serializedVersion: 2 + fileIDToRecycleName: {} + externalObjects: {} + serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 0 + sRGBTexture: 0 linearTexture: 1 - correctGamma: 0 fadeOut: 0 borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 - heightScale: .25 + heightScale: 0.25 normalMapFilter: 0 isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 grayScaleToAlpha: 0 - generateCubemap: 0 + generateCubemap: 6 + cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: -3 maxTextureSize: 32 textureSettings: + serializedVersion: 2 filterMode: -1 aniso: 0 - mipBias: -1 - wrapMode: 0 + mipBias: -100 + wrapU: 0 + wrapV: 0 + wrapW: 0 nPOTScale: 0 lightmap: 0 compressionQuality: 50 @@ -34,12 +44,210 @@ TextureImporter: spriteExtrude: 1 spriteMeshType: 1 alignment: 0 - spritePivot: {x: .5, y: .5} + spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 alphaIsTransparency: 1 - textureType: 5 - buildTargetSettings: [] + spriteTessellationDetail: -1 + textureType: 0 + textureShape: 1 + singleChannelComponent: 0 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + platformSettings: + - serializedVersion: 2 + buildTarget: DefaultTexturePlatform + maxTextureSize: 32 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Standalone + maxTextureSize: 18 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: iPhone + maxTextureSize: 8 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Android + maxTextureSize: 8 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Web + maxTextureSize: 9 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: WebGL + maxTextureSize: 9 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Windows Store Apps + maxTextureSize: 9 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Tizen + maxTextureSize: 8 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: PSP2 + maxTextureSize: 8 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: PS4 + maxTextureSize: 9 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: XboxOne + maxTextureSize: 9 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Samsung TV + maxTextureSize: 8 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Nintendo 3DS + maxTextureSize: 8 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: WiiU + maxTextureSize: 8 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Nintendo Switch + maxTextureSize: 8 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: tvOS + maxTextureSize: 8 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 spriteSheet: + serializedVersion: 2 sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + vertices: [] + indices: + edges: [] + weights: [] spritePackingTag: + pSDRemoveMatte: 0 + pSDShowRemoveMatteOption: 0 userData: + assetBundleName: + assetBundleVariant: diff --git a/Editor/InternalResources/Interface/inst_vert_tex.png.meta b/Editor/InternalResources/Interface/inst_vert_tex.png.meta index ca9c5844..fed5225b 100644 --- a/Editor/InternalResources/Interface/inst_vert_tex.png.meta +++ b/Editor/InternalResources/Interface/inst_vert_tex.png.meta @@ -1,32 +1,42 @@ fileFormatVersion: 2 guid: 2dc1af4131132724ea03a4dd4e88b052 TextureImporter: - serializedVersion: 2 + fileIDToRecycleName: {} + externalObjects: {} + serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 0 + sRGBTexture: 0 linearTexture: 1 - correctGamma: 0 fadeOut: 0 borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 - heightScale: .25 + heightScale: 0.25 normalMapFilter: 0 isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 grayScaleToAlpha: 0 - generateCubemap: 0 + generateCubemap: 6 + cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: -3 maxTextureSize: 32 textureSettings: + serializedVersion: 2 filterMode: -1 aniso: 0 - mipBias: -1 - wrapMode: 0 + mipBias: -100 + wrapU: 0 + wrapV: 0 + wrapW: 0 nPOTScale: 0 lightmap: 0 compressionQuality: 50 @@ -34,12 +44,210 @@ TextureImporter: spriteExtrude: 1 spriteMeshType: 1 alignment: 0 - spritePivot: {x: .5, y: .5} + spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 alphaIsTransparency: 1 - textureType: 5 - buildTargetSettings: [] + spriteTessellationDetail: -1 + textureType: 0 + textureShape: 1 + singleChannelComponent: 0 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + platformSettings: + - serializedVersion: 2 + buildTarget: DefaultTexturePlatform + maxTextureSize: 32 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Standalone + maxTextureSize: 23 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: iPhone + maxTextureSize: 8 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Android + maxTextureSize: 8 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Web + maxTextureSize: 11 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: WebGL + maxTextureSize: 11 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Windows Store Apps + maxTextureSize: 11 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Tizen + maxTextureSize: 8 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: PSP2 + maxTextureSize: 8 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: PS4 + maxTextureSize: 11 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: XboxOne + maxTextureSize: 11 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Samsung TV + maxTextureSize: 8 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Nintendo 3DS + maxTextureSize: 8 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: WiiU + maxTextureSize: 8 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Nintendo Switch + maxTextureSize: 8 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: tvOS + maxTextureSize: 8 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 spriteSheet: + serializedVersion: 2 sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + vertices: [] + indices: + edges: [] + weights: [] spritePackingTag: + pSDRemoveMatte: 0 + pSDShowRemoveMatteOption: 0 userData: + assetBundleName: + assetBundleVariant: diff --git a/Editor/InternalResources/Interface/inst_vert_tex_light.png.meta b/Editor/InternalResources/Interface/inst_vert_tex_light.png.meta index cbb1e043..7012c248 100644 --- a/Editor/InternalResources/Interface/inst_vert_tex_light.png.meta +++ b/Editor/InternalResources/Interface/inst_vert_tex_light.png.meta @@ -1,32 +1,42 @@ fileFormatVersion: 2 guid: 5bba6f880887cc14d9dffee3b43bfae7 TextureImporter: - serializedVersion: 2 + fileIDToRecycleName: {} + externalObjects: {} + serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 0 + sRGBTexture: 0 linearTexture: 1 - correctGamma: 0 fadeOut: 0 borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 - heightScale: .25 + heightScale: 0.25 normalMapFilter: 0 isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 grayScaleToAlpha: 0 - generateCubemap: 0 + generateCubemap: 6 + cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: -3 maxTextureSize: 32 textureSettings: + serializedVersion: 2 filterMode: -1 aniso: 0 - mipBias: -1 - wrapMode: 0 + mipBias: -100 + wrapU: 0 + wrapV: 0 + wrapW: 0 nPOTScale: 0 lightmap: 0 compressionQuality: 50 @@ -34,12 +44,210 @@ TextureImporter: spriteExtrude: 1 spriteMeshType: 1 alignment: 0 - spritePivot: {x: .5, y: .5} + spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 alphaIsTransparency: 1 - textureType: 5 - buildTargetSettings: [] + spriteTessellationDetail: -1 + textureType: 0 + textureShape: 1 + singleChannelComponent: 0 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + platformSettings: + - serializedVersion: 2 + buildTarget: DefaultTexturePlatform + maxTextureSize: 32 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Standalone + maxTextureSize: 23 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: iPhone + maxTextureSize: 8 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Android + maxTextureSize: 8 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Web + maxTextureSize: 11 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: WebGL + maxTextureSize: 11 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Windows Store Apps + maxTextureSize: 11 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Tizen + maxTextureSize: 8 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: PSP2 + maxTextureSize: 8 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: PS4 + maxTextureSize: 11 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: XboxOne + maxTextureSize: 11 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Samsung TV + maxTextureSize: 8 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Nintendo 3DS + maxTextureSize: 8 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: WiiU + maxTextureSize: 8 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Nintendo Switch + maxTextureSize: 8 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: tvOS + maxTextureSize: 8 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 spriteSheet: + serializedVersion: 2 sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + vertices: [] + indices: + edges: [] + weights: [] spritePackingTag: + pSDRemoveMatte: 0 + pSDShowRemoveMatteOption: 0 userData: + assetBundleName: + assetBundleVariant: diff --git a/Editor/InternalResources/Interface/logo.png.meta b/Editor/InternalResources/Interface/logo.png.meta index d0dec2e5..9d1ad6d4 100644 --- a/Editor/InternalResources/Interface/logo.png.meta +++ b/Editor/InternalResources/Interface/logo.png.meta @@ -1,32 +1,42 @@ fileFormatVersion: 2 guid: b116bf56b843a432b96dc6e7e0788e93 TextureImporter: - serializedVersion: 2 + fileIDToRecycleName: {} + externalObjects: {} + serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 0 + sRGBTexture: 0 linearTexture: 1 - correctGamma: 0 fadeOut: 0 borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 - heightScale: .25 + heightScale: 0.25 normalMapFilter: 0 isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 grayScaleToAlpha: 0 - generateCubemap: 0 + generateCubemap: 6 + cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: -3 maxTextureSize: 256 textureSettings: + serializedVersion: 2 filterMode: 2 aniso: 0 - mipBias: -1 - wrapMode: 1 + mipBias: -100 + wrapU: 1 + wrapV: 1 + wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 @@ -34,12 +44,210 @@ TextureImporter: spriteExtrude: 1 spriteMeshType: 1 alignment: 0 - spritePivot: {x: .5, y: .5} + spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 alphaIsTransparency: 1 - textureType: 5 - buildTargetSettings: [] + spriteTessellationDetail: -1 + textureType: 0 + textureShape: 1 + singleChannelComponent: 0 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + platformSettings: + - serializedVersion: 2 + buildTarget: DefaultTexturePlatform + maxTextureSize: 256 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Standalone + maxTextureSize: 164 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: iPhone + maxTextureSize: 41 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Android + maxTextureSize: 41 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Web + maxTextureSize: 82 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: WebGL + maxTextureSize: 82 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Windows Store Apps + maxTextureSize: 82 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Tizen + maxTextureSize: 41 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: PSP2 + maxTextureSize: 41 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: PS4 + maxTextureSize: 82 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: XboxOne + maxTextureSize: 82 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Samsung TV + maxTextureSize: 41 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Nintendo 3DS + maxTextureSize: 41 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: WiiU + maxTextureSize: 41 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Nintendo Switch + maxTextureSize: 41 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: tvOS + maxTextureSize: 41 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 spriteSheet: + serializedVersion: 2 sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + vertices: [] + indices: + edges: [] + weights: [] spritePackingTag: + pSDRemoveMatte: 0 + pSDShowRemoveMatteOption: 0 userData: + assetBundleName: + assetBundleVariant: diff --git a/Editor/InternalResources/Interface/logo_light.png.meta b/Editor/InternalResources/Interface/logo_light.png.meta index bcc08043..78d85520 100644 --- a/Editor/InternalResources/Interface/logo_light.png.meta +++ b/Editor/InternalResources/Interface/logo_light.png.meta @@ -1,32 +1,42 @@ fileFormatVersion: 2 guid: 2146b2a6a9c514e0db29ae39a34c1e21 TextureImporter: - serializedVersion: 2 + fileIDToRecycleName: {} + externalObjects: {} + serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 0 + sRGBTexture: 0 linearTexture: 1 - correctGamma: 0 fadeOut: 0 borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 - heightScale: .25 + heightScale: 0.25 normalMapFilter: 0 isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 grayScaleToAlpha: 0 - generateCubemap: 0 + generateCubemap: 6 + cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: -3 maxTextureSize: 256 textureSettings: + serializedVersion: 2 filterMode: 2 aniso: 0 - mipBias: -1 - wrapMode: 1 + mipBias: -100 + wrapU: 1 + wrapV: 1 + wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 @@ -34,12 +44,210 @@ TextureImporter: spriteExtrude: 1 spriteMeshType: 1 alignment: 0 - spritePivot: {x: .5, y: .5} + spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 alphaIsTransparency: 1 - textureType: 5 - buildTargetSettings: [] + spriteTessellationDetail: -1 + textureType: 0 + textureShape: 1 + singleChannelComponent: 0 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + platformSettings: + - serializedVersion: 2 + buildTarget: DefaultTexturePlatform + maxTextureSize: 256 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Standalone + maxTextureSize: 164 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: iPhone + maxTextureSize: 41 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Android + maxTextureSize: 41 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Web + maxTextureSize: 82 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: WebGL + maxTextureSize: 82 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Windows Store Apps + maxTextureSize: 82 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Tizen + maxTextureSize: 41 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: PSP2 + maxTextureSize: 41 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: PS4 + maxTextureSize: 82 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: XboxOne + maxTextureSize: 82 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Samsung TV + maxTextureSize: 41 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Nintendo 3DS + maxTextureSize: 41 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: WiiU + maxTextureSize: 41 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Nintendo Switch + maxTextureSize: 41 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: tvOS + maxTextureSize: 41 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 spriteSheet: + serializedVersion: 2 sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + vertices: [] + indices: + edges: [] + weights: [] spritePackingTag: + pSDRemoveMatte: 0 + pSDShowRemoveMatteOption: 0 userData: + assetBundleName: + assetBundleVariant: diff --git a/Editor/InternalResources/Interface/preset_custom.png.meta b/Editor/InternalResources/Interface/preset_custom.png.meta index becc3cd0..68eaa756 100644 --- a/Editor/InternalResources/Interface/preset_custom.png.meta +++ b/Editor/InternalResources/Interface/preset_custom.png.meta @@ -1,55 +1,253 @@ fileFormatVersion: 2 guid: 4f6212f398f26bb479b2cf77f48ecbd0 -timeCreated: 1432981781 -licenseType: Pro TextureImporter: fileIDToRecycleName: {} - serializedVersion: 2 + externalObjects: {} + serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 0 + sRGBTexture: 0 linearTexture: 1 - correctGamma: 0 fadeOut: 0 borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 - heightScale: .25 + heightScale: 0.25 normalMapFilter: 0 isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 grayScaleToAlpha: 0 - generateCubemap: 0 + generateCubemap: 6 cubemapConvolution: 0 - cubemapConvolutionSteps: 8 - cubemapConvolutionExponent: 1.5 seamlessCubemap: 0 textureFormat: -3 maxTextureSize: 128 textureSettings: + serializedVersion: 2 filterMode: 2 aniso: 0 - mipBias: -1 - wrapMode: 1 + mipBias: -100 + wrapU: 1 + wrapV: 1 + wrapW: 1 nPOTScale: 1 lightmap: 0 - rGBM: 0 compressionQuality: 50 spriteMode: 0 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 - spritePivot: {x: .5, y: .5} - spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 alphaIsTransparency: 1 - textureType: 5 - buildTargetSettings: [] + spriteTessellationDetail: -1 + textureType: 0 + textureShape: 1 + singleChannelComponent: 0 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + platformSettings: + - serializedVersion: 2 + buildTarget: DefaultTexturePlatform + maxTextureSize: 128 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Standalone + maxTextureSize: 128 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: iPhone + maxTextureSize: 32 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Android + maxTextureSize: 32 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Web + maxTextureSize: 64 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: WebGL + maxTextureSize: 64 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Windows Store Apps + maxTextureSize: 64 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Tizen + maxTextureSize: 32 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: PSP2 + maxTextureSize: 32 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: PS4 + maxTextureSize: 64 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: XboxOne + maxTextureSize: 64 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Samsung TV + maxTextureSize: 32 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Nintendo 3DS + maxTextureSize: 32 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: WiiU + maxTextureSize: 32 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Nintendo Switch + maxTextureSize: 32 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: tvOS + maxTextureSize: 32 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 spriteSheet: + serializedVersion: 2 sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + vertices: [] + indices: + edges: [] + weights: [] spritePackingTag: + pSDRemoveMatte: 0 + pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: diff --git a/Editor/InternalResources/Interface/preset_highlight.png.meta b/Editor/InternalResources/Interface/preset_highlight.png.meta index fb33f889..250efd22 100644 --- a/Editor/InternalResources/Interface/preset_highlight.png.meta +++ b/Editor/InternalResources/Interface/preset_highlight.png.meta @@ -1,55 +1,253 @@ fileFormatVersion: 2 guid: c26c8eab4a46ffc408822bd6f77b0a6e -timeCreated: 1432989587 -licenseType: Pro TextureImporter: fileIDToRecycleName: {} - serializedVersion: 2 + externalObjects: {} + serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 0 + sRGBTexture: 0 linearTexture: 1 - correctGamma: 0 fadeOut: 0 borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 - heightScale: .25 + heightScale: 0.25 normalMapFilter: 0 isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 grayScaleToAlpha: 0 - generateCubemap: 0 + generateCubemap: 6 cubemapConvolution: 0 - cubemapConvolutionSteps: 8 - cubemapConvolutionExponent: 1.5 seamlessCubemap: 0 textureFormat: -3 maxTextureSize: 128 textureSettings: + serializedVersion: 2 filterMode: 2 aniso: 0 - mipBias: -1 - wrapMode: 1 + mipBias: -100 + wrapU: 1 + wrapV: 1 + wrapW: 1 nPOTScale: 1 lightmap: 0 - rGBM: 0 compressionQuality: 50 spriteMode: 0 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 - spritePivot: {x: .5, y: .5} - spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 alphaIsTransparency: 1 - textureType: 5 - buildTargetSettings: [] + spriteTessellationDetail: -1 + textureType: 0 + textureShape: 1 + singleChannelComponent: 0 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + platformSettings: + - serializedVersion: 2 + buildTarget: DefaultTexturePlatform + maxTextureSize: 128 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Standalone + maxTextureSize: 128 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: iPhone + maxTextureSize: 32 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Android + maxTextureSize: 32 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Web + maxTextureSize: 64 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: WebGL + maxTextureSize: 64 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Windows Store Apps + maxTextureSize: 64 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Tizen + maxTextureSize: 32 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: PSP2 + maxTextureSize: 32 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: PS4 + maxTextureSize: 64 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: XboxOne + maxTextureSize: 64 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Samsung TV + maxTextureSize: 32 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Nintendo 3DS + maxTextureSize: 32 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: WiiU + maxTextureSize: 32 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Nintendo Switch + maxTextureSize: 32 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: tvOS + maxTextureSize: 32 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 spriteSheet: + serializedVersion: 2 sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + vertices: [] + indices: + edges: [] + weights: [] spritePackingTag: + pSDRemoveMatte: 0 + pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: diff --git a/Editor/InternalResources/Interface/preset_litbasic.png.meta b/Editor/InternalResources/Interface/preset_litbasic.png.meta index 20787ac6..da8d6fb9 100644 --- a/Editor/InternalResources/Interface/preset_litbasic.png.meta +++ b/Editor/InternalResources/Interface/preset_litbasic.png.meta @@ -1,55 +1,253 @@ fileFormatVersion: 2 guid: 69e1494bf9c84a24abf1253a95a6652d -timeCreated: 1432980361 -licenseType: Pro TextureImporter: fileIDToRecycleName: {} - serializedVersion: 2 + externalObjects: {} + serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 0 + sRGBTexture: 0 linearTexture: 1 - correctGamma: 0 fadeOut: 0 borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 - heightScale: .25 + heightScale: 0.25 normalMapFilter: 0 isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 grayScaleToAlpha: 0 - generateCubemap: 0 + generateCubemap: 6 cubemapConvolution: 0 - cubemapConvolutionSteps: 8 - cubemapConvolutionExponent: 1.5 seamlessCubemap: 0 textureFormat: -3 maxTextureSize: 128 textureSettings: + serializedVersion: 2 filterMode: 2 aniso: 0 - mipBias: -1 - wrapMode: 1 + mipBias: -100 + wrapU: 1 + wrapV: 1 + wrapW: 1 nPOTScale: 1 lightmap: 0 - rGBM: 0 compressionQuality: 50 spriteMode: 0 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 - spritePivot: {x: .5, y: .5} - spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 alphaIsTransparency: 1 - textureType: 5 - buildTargetSettings: [] + spriteTessellationDetail: -1 + textureType: 0 + textureShape: 1 + singleChannelComponent: 0 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + platformSettings: + - serializedVersion: 2 + buildTarget: DefaultTexturePlatform + maxTextureSize: 128 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Standalone + maxTextureSize: 128 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: iPhone + maxTextureSize: 32 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Android + maxTextureSize: 32 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Web + maxTextureSize: 64 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: WebGL + maxTextureSize: 64 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Windows Store Apps + maxTextureSize: 64 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Tizen + maxTextureSize: 32 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: PSP2 + maxTextureSize: 32 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: PS4 + maxTextureSize: 64 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: XboxOne + maxTextureSize: 64 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Samsung TV + maxTextureSize: 32 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Nintendo 3DS + maxTextureSize: 32 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: WiiU + maxTextureSize: 32 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Nintendo Switch + maxTextureSize: 32 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: tvOS + maxTextureSize: 32 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 spriteSheet: + serializedVersion: 2 sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + vertices: [] + indices: + edges: [] + weights: [] spritePackingTag: + pSDRemoveMatte: 0 + pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: diff --git a/Editor/InternalResources/Interface/preset_litpbr.png.meta b/Editor/InternalResources/Interface/preset_litpbr.png.meta index 9c847df8..10d2b60f 100644 --- a/Editor/InternalResources/Interface/preset_litpbr.png.meta +++ b/Editor/InternalResources/Interface/preset_litpbr.png.meta @@ -1,55 +1,253 @@ fileFormatVersion: 2 guid: a4259037a0bba7b41884b33f9653b20e -timeCreated: 1432979897 -licenseType: Pro TextureImporter: fileIDToRecycleName: {} - serializedVersion: 2 + externalObjects: {} + serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 0 + sRGBTexture: 0 linearTexture: 1 - correctGamma: 0 fadeOut: 0 borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 - heightScale: .25 + heightScale: 0.25 normalMapFilter: 0 isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 grayScaleToAlpha: 0 - generateCubemap: 0 + generateCubemap: 6 cubemapConvolution: 0 - cubemapConvolutionSteps: 8 - cubemapConvolutionExponent: 1.5 seamlessCubemap: 0 textureFormat: -3 maxTextureSize: 128 textureSettings: + serializedVersion: 2 filterMode: 2 aniso: 0 - mipBias: -1 - wrapMode: 1 + mipBias: -100 + wrapU: 1 + wrapV: 1 + wrapW: 1 nPOTScale: 1 lightmap: 0 - rGBM: 0 compressionQuality: 50 spriteMode: 0 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 - spritePivot: {x: .5, y: .5} - spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 alphaIsTransparency: 1 - textureType: 5 - buildTargetSettings: [] + spriteTessellationDetail: -1 + textureType: 0 + textureShape: 1 + singleChannelComponent: 0 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + platformSettings: + - serializedVersion: 2 + buildTarget: DefaultTexturePlatform + maxTextureSize: 128 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Standalone + maxTextureSize: 128 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: iPhone + maxTextureSize: 32 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Android + maxTextureSize: 32 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Web + maxTextureSize: 64 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: WebGL + maxTextureSize: 64 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Windows Store Apps + maxTextureSize: 64 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Tizen + maxTextureSize: 32 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: PSP2 + maxTextureSize: 32 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: PS4 + maxTextureSize: 64 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: XboxOne + maxTextureSize: 64 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Samsung TV + maxTextureSize: 32 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Nintendo 3DS + maxTextureSize: 32 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: WiiU + maxTextureSize: 32 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Nintendo Switch + maxTextureSize: 32 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: tvOS + maxTextureSize: 32 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 spriteSheet: + serializedVersion: 2 sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + vertices: [] + indices: + edges: [] + weights: [] spritePackingTag: + pSDRemoveMatte: 0 + pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: diff --git a/Editor/InternalResources/Interface/preset_particleadditive.png.meta b/Editor/InternalResources/Interface/preset_particleadditive.png.meta index 085ccffa..16a6cdf4 100644 --- a/Editor/InternalResources/Interface/preset_particleadditive.png.meta +++ b/Editor/InternalResources/Interface/preset_particleadditive.png.meta @@ -1,56 +1,253 @@ fileFormatVersion: 2 guid: 6841270787423ac4c9ee0a3cf1cc768d -timeCreated: 1432981781 -licenseType: Pro TextureImporter: fileIDToRecycleName: {} - serializedVersion: 2 + externalObjects: {} + serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 0 + sRGBTexture: 0 linearTexture: 1 - correctGamma: 0 fadeOut: 0 borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 - heightScale: .25 + heightScale: 0.25 normalMapFilter: 0 isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 grayScaleToAlpha: 0 - generateCubemap: 0 + generateCubemap: 6 cubemapConvolution: 0 - cubemapConvolutionSteps: 8 - cubemapConvolutionExponent: 1.5 seamlessCubemap: 0 textureFormat: -3 maxTextureSize: 128 textureSettings: + serializedVersion: 2 filterMode: 0 aniso: 0 - mipBias: -1 - wrapMode: 1 + mipBias: -100 + wrapU: 1 + wrapV: 1 + wrapW: 1 nPOTScale: 0 lightmap: 0 - rGBM: 0 compressionQuality: 50 - allowsAlphaSplitting: 0 spriteMode: 0 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 - spritePivot: {x: .5, y: .5} - spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 alphaIsTransparency: 1 - textureType: 5 - buildTargetSettings: [] + spriteTessellationDetail: -1 + textureType: 0 + textureShape: 1 + singleChannelComponent: 0 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + platformSettings: + - serializedVersion: 2 + buildTarget: DefaultTexturePlatform + maxTextureSize: 128 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Standalone + maxTextureSize: 128 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: iPhone + maxTextureSize: 32 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Android + maxTextureSize: 32 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Web + maxTextureSize: 64 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: WebGL + maxTextureSize: 64 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Windows Store Apps + maxTextureSize: 64 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Tizen + maxTextureSize: 32 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: PSP2 + maxTextureSize: 32 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: PS4 + maxTextureSize: 64 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: XboxOne + maxTextureSize: 64 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Samsung TV + maxTextureSize: 32 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Nintendo 3DS + maxTextureSize: 32 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: WiiU + maxTextureSize: 32 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Nintendo Switch + maxTextureSize: 32 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: tvOS + maxTextureSize: 32 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 spriteSheet: + serializedVersion: 2 sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + vertices: [] + indices: + edges: [] + weights: [] spritePackingTag: + pSDRemoveMatte: 0 + pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: diff --git a/Editor/InternalResources/Interface/preset_particleadditive_light.png.meta b/Editor/InternalResources/Interface/preset_particleadditive_light.png.meta index e05eef9c..0fc39984 100644 --- a/Editor/InternalResources/Interface/preset_particleadditive_light.png.meta +++ b/Editor/InternalResources/Interface/preset_particleadditive_light.png.meta @@ -1,56 +1,253 @@ fileFormatVersion: 2 guid: 8fcd9b707db9dbf40933b1b4f346a767 -timeCreated: 1433072426 -licenseType: Pro TextureImporter: fileIDToRecycleName: {} - serializedVersion: 2 + externalObjects: {} + serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 0 + sRGBTexture: 0 linearTexture: 1 - correctGamma: 0 fadeOut: 0 borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 - heightScale: .25 + heightScale: 0.25 normalMapFilter: 0 isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 grayScaleToAlpha: 0 - generateCubemap: 0 + generateCubemap: 6 cubemapConvolution: 0 - cubemapConvolutionSteps: 8 - cubemapConvolutionExponent: 1.5 seamlessCubemap: 0 textureFormat: -3 maxTextureSize: 128 textureSettings: + serializedVersion: 2 filterMode: 0 aniso: 0 - mipBias: -1 - wrapMode: 1 + mipBias: -100 + wrapU: 1 + wrapV: 1 + wrapW: 1 nPOTScale: 0 lightmap: 0 - rGBM: 0 compressionQuality: 50 - allowsAlphaSplitting: 0 spriteMode: 0 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 - spritePivot: {x: .5, y: .5} - spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 alphaIsTransparency: 1 - textureType: 5 - buildTargetSettings: [] + spriteTessellationDetail: -1 + textureType: 0 + textureShape: 1 + singleChannelComponent: 0 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + platformSettings: + - serializedVersion: 2 + buildTarget: DefaultTexturePlatform + maxTextureSize: 128 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Standalone + maxTextureSize: 128 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: iPhone + maxTextureSize: 32 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Android + maxTextureSize: 32 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Web + maxTextureSize: 64 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: WebGL + maxTextureSize: 64 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Windows Store Apps + maxTextureSize: 64 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Tizen + maxTextureSize: 32 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: PSP2 + maxTextureSize: 32 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: PS4 + maxTextureSize: 64 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: XboxOne + maxTextureSize: 64 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Samsung TV + maxTextureSize: 32 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Nintendo 3DS + maxTextureSize: 32 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: WiiU + maxTextureSize: 32 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Nintendo Switch + maxTextureSize: 32 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: tvOS + maxTextureSize: 32 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 spriteSheet: + serializedVersion: 2 sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + vertices: [] + indices: + edges: [] + weights: [] spritePackingTag: + pSDRemoveMatte: 0 + pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: diff --git a/Editor/InternalResources/Interface/preset_particlealphablended.png.meta b/Editor/InternalResources/Interface/preset_particlealphablended.png.meta index 03598841..de9e3245 100644 --- a/Editor/InternalResources/Interface/preset_particlealphablended.png.meta +++ b/Editor/InternalResources/Interface/preset_particlealphablended.png.meta @@ -1,56 +1,253 @@ fileFormatVersion: 2 guid: b3d536f9af52ecd4082d779248bddd6e -timeCreated: 1433000243 -licenseType: Pro TextureImporter: fileIDToRecycleName: {} - serializedVersion: 2 + externalObjects: {} + serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 0 + sRGBTexture: 0 linearTexture: 1 - correctGamma: 0 fadeOut: 0 borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 - heightScale: .25 + heightScale: 0.25 normalMapFilter: 0 isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 grayScaleToAlpha: 0 - generateCubemap: 0 + generateCubemap: 6 cubemapConvolution: 0 - cubemapConvolutionSteps: 8 - cubemapConvolutionExponent: 1.5 seamlessCubemap: 0 textureFormat: -3 maxTextureSize: 128 textureSettings: + serializedVersion: 2 filterMode: 0 aniso: 0 - mipBias: -1 - wrapMode: 1 + mipBias: -100 + wrapU: 1 + wrapV: 1 + wrapW: 1 nPOTScale: 0 lightmap: 0 - rGBM: 0 compressionQuality: 50 - allowsAlphaSplitting: 0 spriteMode: 0 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 - spritePivot: {x: .5, y: .5} - spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 alphaIsTransparency: 1 - textureType: 5 - buildTargetSettings: [] + spriteTessellationDetail: -1 + textureType: 0 + textureShape: 1 + singleChannelComponent: 0 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + platformSettings: + - serializedVersion: 2 + buildTarget: DefaultTexturePlatform + maxTextureSize: 128 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Standalone + maxTextureSize: 128 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: iPhone + maxTextureSize: 32 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Android + maxTextureSize: 32 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Web + maxTextureSize: 64 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: WebGL + maxTextureSize: 64 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Windows Store Apps + maxTextureSize: 64 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Tizen + maxTextureSize: 32 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: PSP2 + maxTextureSize: 32 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: PS4 + maxTextureSize: 64 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: XboxOne + maxTextureSize: 64 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Samsung TV + maxTextureSize: 32 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Nintendo 3DS + maxTextureSize: 32 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: WiiU + maxTextureSize: 32 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Nintendo Switch + maxTextureSize: 32 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: tvOS + maxTextureSize: 32 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 spriteSheet: + serializedVersion: 2 sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + vertices: [] + indices: + edges: [] + weights: [] spritePackingTag: + pSDRemoveMatte: 0 + pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: diff --git a/Editor/InternalResources/Interface/preset_particlealphablended_light.png.meta b/Editor/InternalResources/Interface/preset_particlealphablended_light.png.meta index d5ca77fe..56ec24da 100644 --- a/Editor/InternalResources/Interface/preset_particlealphablended_light.png.meta +++ b/Editor/InternalResources/Interface/preset_particlealphablended_light.png.meta @@ -1,56 +1,253 @@ fileFormatVersion: 2 guid: a9f2c075e122fa345a03d5fae7aa2540 -timeCreated: 1433072426 -licenseType: Pro TextureImporter: fileIDToRecycleName: {} - serializedVersion: 2 + externalObjects: {} + serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 0 + sRGBTexture: 0 linearTexture: 1 - correctGamma: 0 fadeOut: 0 borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 - heightScale: .25 + heightScale: 0.25 normalMapFilter: 0 isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 grayScaleToAlpha: 0 - generateCubemap: 0 + generateCubemap: 6 cubemapConvolution: 0 - cubemapConvolutionSteps: 8 - cubemapConvolutionExponent: 1.5 seamlessCubemap: 0 textureFormat: -3 maxTextureSize: 128 textureSettings: + serializedVersion: 2 filterMode: 0 aniso: 0 - mipBias: -1 - wrapMode: 1 + mipBias: -100 + wrapU: 1 + wrapV: 1 + wrapW: 1 nPOTScale: 0 lightmap: 0 - rGBM: 0 compressionQuality: 50 - allowsAlphaSplitting: 0 spriteMode: 0 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 - spritePivot: {x: .5, y: .5} - spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 alphaIsTransparency: 1 - textureType: 5 - buildTargetSettings: [] + spriteTessellationDetail: -1 + textureType: 0 + textureShape: 1 + singleChannelComponent: 0 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + platformSettings: + - serializedVersion: 2 + buildTarget: DefaultTexturePlatform + maxTextureSize: 128 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Standalone + maxTextureSize: 128 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: iPhone + maxTextureSize: 32 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Android + maxTextureSize: 32 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Web + maxTextureSize: 64 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: WebGL + maxTextureSize: 64 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Windows Store Apps + maxTextureSize: 64 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Tizen + maxTextureSize: 32 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: PSP2 + maxTextureSize: 32 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: PS4 + maxTextureSize: 64 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: XboxOne + maxTextureSize: 64 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Samsung TV + maxTextureSize: 32 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Nintendo 3DS + maxTextureSize: 32 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: WiiU + maxTextureSize: 32 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Nintendo Switch + maxTextureSize: 32 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: tvOS + maxTextureSize: 32 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 spriteSheet: + serializedVersion: 2 sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + vertices: [] + indices: + edges: [] + weights: [] spritePackingTag: + pSDRemoveMatte: 0 + pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: diff --git a/Editor/InternalResources/Interface/preset_particlemultiplicative.png.meta b/Editor/InternalResources/Interface/preset_particlemultiplicative.png.meta index 1814b079..f794e744 100644 --- a/Editor/InternalResources/Interface/preset_particlemultiplicative.png.meta +++ b/Editor/InternalResources/Interface/preset_particlemultiplicative.png.meta @@ -1,56 +1,253 @@ fileFormatVersion: 2 guid: 5c1c304737254284f95f0dc98043b4f3 -timeCreated: 1433000243 -licenseType: Pro TextureImporter: fileIDToRecycleName: {} - serializedVersion: 2 + externalObjects: {} + serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 0 + sRGBTexture: 0 linearTexture: 1 - correctGamma: 0 fadeOut: 0 borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 - heightScale: .25 + heightScale: 0.25 normalMapFilter: 0 isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 grayScaleToAlpha: 0 - generateCubemap: 0 + generateCubemap: 6 cubemapConvolution: 0 - cubemapConvolutionSteps: 8 - cubemapConvolutionExponent: 1.5 seamlessCubemap: 0 textureFormat: -3 maxTextureSize: 128 textureSettings: + serializedVersion: 2 filterMode: 0 aniso: 0 - mipBias: -1 - wrapMode: 1 + mipBias: -100 + wrapU: 1 + wrapV: 1 + wrapW: 1 nPOTScale: 0 lightmap: 0 - rGBM: 0 compressionQuality: 50 - allowsAlphaSplitting: 0 spriteMode: 0 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 - spritePivot: {x: .5, y: .5} - spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 alphaIsTransparency: 1 - textureType: 5 - buildTargetSettings: [] + spriteTessellationDetail: -1 + textureType: 0 + textureShape: 1 + singleChannelComponent: 0 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + platformSettings: + - serializedVersion: 2 + buildTarget: DefaultTexturePlatform + maxTextureSize: 128 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Standalone + maxTextureSize: 128 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: iPhone + maxTextureSize: 32 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Android + maxTextureSize: 32 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Web + maxTextureSize: 64 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: WebGL + maxTextureSize: 64 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Windows Store Apps + maxTextureSize: 64 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Tizen + maxTextureSize: 32 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: PSP2 + maxTextureSize: 32 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: PS4 + maxTextureSize: 64 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: XboxOne + maxTextureSize: 64 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Samsung TV + maxTextureSize: 32 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Nintendo 3DS + maxTextureSize: 32 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: WiiU + maxTextureSize: 32 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Nintendo Switch + maxTextureSize: 32 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: tvOS + maxTextureSize: 32 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 spriteSheet: + serializedVersion: 2 sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + vertices: [] + indices: + edges: [] + weights: [] spritePackingTag: + pSDRemoveMatte: 0 + pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: diff --git a/Editor/InternalResources/Interface/preset_particlemultiplicative_light.png.meta b/Editor/InternalResources/Interface/preset_particlemultiplicative_light.png.meta index 077cb53d..14876a51 100644 --- a/Editor/InternalResources/Interface/preset_particlemultiplicative_light.png.meta +++ b/Editor/InternalResources/Interface/preset_particlemultiplicative_light.png.meta @@ -1,56 +1,253 @@ fileFormatVersion: 2 guid: 5fbec0f866d46b24bb9dfdfe5a4c4095 -timeCreated: 1433072426 -licenseType: Pro TextureImporter: fileIDToRecycleName: {} - serializedVersion: 2 + externalObjects: {} + serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 0 + sRGBTexture: 0 linearTexture: 1 - correctGamma: 0 fadeOut: 0 borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 - heightScale: .25 + heightScale: 0.25 normalMapFilter: 0 isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 grayScaleToAlpha: 0 - generateCubemap: 0 + generateCubemap: 6 cubemapConvolution: 0 - cubemapConvolutionSteps: 8 - cubemapConvolutionExponent: 1.5 seamlessCubemap: 0 textureFormat: -3 maxTextureSize: 128 textureSettings: + serializedVersion: 2 filterMode: 0 aniso: 0 - mipBias: -1 - wrapMode: 1 + mipBias: -100 + wrapU: 1 + wrapV: 1 + wrapW: 1 nPOTScale: 0 lightmap: 0 - rGBM: 0 compressionQuality: 50 - allowsAlphaSplitting: 0 spriteMode: 0 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 - spritePivot: {x: .5, y: .5} - spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 alphaIsTransparency: 1 - textureType: 5 - buildTargetSettings: [] + spriteTessellationDetail: -1 + textureType: 0 + textureShape: 1 + singleChannelComponent: 0 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + platformSettings: + - serializedVersion: 2 + buildTarget: DefaultTexturePlatform + maxTextureSize: 128 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Standalone + maxTextureSize: 128 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: iPhone + maxTextureSize: 32 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Android + maxTextureSize: 32 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Web + maxTextureSize: 64 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: WebGL + maxTextureSize: 64 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Windows Store Apps + maxTextureSize: 64 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Tizen + maxTextureSize: 32 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: PSP2 + maxTextureSize: 32 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: PS4 + maxTextureSize: 64 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: XboxOne + maxTextureSize: 64 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Samsung TV + maxTextureSize: 32 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Nintendo 3DS + maxTextureSize: 32 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: WiiU + maxTextureSize: 32 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Nintendo Switch + maxTextureSize: 32 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: tvOS + maxTextureSize: 32 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 spriteSheet: + serializedVersion: 2 sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + vertices: [] + indices: + edges: [] + weights: [] spritePackingTag: + pSDRemoveMatte: 0 + pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: diff --git a/Editor/InternalResources/Interface/preset_posteffect.png.meta b/Editor/InternalResources/Interface/preset_posteffect.png.meta index 4901d5f0..fa562fab 100644 --- a/Editor/InternalResources/Interface/preset_posteffect.png.meta +++ b/Editor/InternalResources/Interface/preset_posteffect.png.meta @@ -1,56 +1,253 @@ fileFormatVersion: 2 guid: da3c81f5610b82f439e06f9fab488b50 -timeCreated: 1442165307 -licenseType: Pro TextureImporter: fileIDToRecycleName: {} - serializedVersion: 2 + externalObjects: {} + serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 0 + sRGBTexture: 0 linearTexture: 1 - correctGamma: 0 fadeOut: 0 borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 - heightScale: .25 + heightScale: 0.25 normalMapFilter: 0 isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 grayScaleToAlpha: 0 - generateCubemap: 0 + generateCubemap: 6 cubemapConvolution: 0 - cubemapConvolutionSteps: 8 - cubemapConvolutionExponent: 1.5 seamlessCubemap: 0 textureFormat: -3 maxTextureSize: 128 textureSettings: + serializedVersion: 2 filterMode: 0 aniso: 0 - mipBias: -1 - wrapMode: 1 + mipBias: -100 + wrapU: 1 + wrapV: 1 + wrapW: 1 nPOTScale: 0 lightmap: 0 - rGBM: 0 compressionQuality: 50 - allowsAlphaSplitting: 0 spriteMode: 0 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 - spritePivot: {x: .5, y: .5} - spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 alphaIsTransparency: 1 - textureType: 5 - buildTargetSettings: [] + spriteTessellationDetail: -1 + textureType: 0 + textureShape: 1 + singleChannelComponent: 0 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + platformSettings: + - serializedVersion: 2 + buildTarget: DefaultTexturePlatform + maxTextureSize: 128 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Standalone + maxTextureSize: 128 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: iPhone + maxTextureSize: 32 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Android + maxTextureSize: 32 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Web + maxTextureSize: 64 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: WebGL + maxTextureSize: 64 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Windows Store Apps + maxTextureSize: 64 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Tizen + maxTextureSize: 32 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: PSP2 + maxTextureSize: 32 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: PS4 + maxTextureSize: 64 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: XboxOne + maxTextureSize: 64 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Samsung TV + maxTextureSize: 32 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Nintendo 3DS + maxTextureSize: 32 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: WiiU + maxTextureSize: 32 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Nintendo Switch + maxTextureSize: 32 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: tvOS + maxTextureSize: 32 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 spriteSheet: + serializedVersion: 2 sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + vertices: [] + indices: + edges: [] + weights: [] spritePackingTag: + pSDRemoveMatte: 0 + pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: diff --git a/Editor/InternalResources/Interface/preset_sky.png.meta b/Editor/InternalResources/Interface/preset_sky.png.meta index d6ec6b13..d7f45c06 100644 --- a/Editor/InternalResources/Interface/preset_sky.png.meta +++ b/Editor/InternalResources/Interface/preset_sky.png.meta @@ -1,55 +1,253 @@ fileFormatVersion: 2 guid: 0339e33cb7e5c1946a81626984c81eec -timeCreated: 1432980864 -licenseType: Pro TextureImporter: fileIDToRecycleName: {} - serializedVersion: 2 + externalObjects: {} + serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 0 + sRGBTexture: 0 linearTexture: 1 - correctGamma: 0 fadeOut: 0 borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 - heightScale: .25 + heightScale: 0.25 normalMapFilter: 0 isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 grayScaleToAlpha: 0 - generateCubemap: 0 + generateCubemap: 6 cubemapConvolution: 0 - cubemapConvolutionSteps: 8 - cubemapConvolutionExponent: 1.5 seamlessCubemap: 0 textureFormat: -3 maxTextureSize: 128 textureSettings: + serializedVersion: 2 filterMode: 2 aniso: 0 - mipBias: -1 - wrapMode: 1 + mipBias: -100 + wrapU: 1 + wrapV: 1 + wrapW: 1 nPOTScale: 1 lightmap: 0 - rGBM: 0 compressionQuality: 50 spriteMode: 0 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 - spritePivot: {x: .5, y: .5} - spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 alphaIsTransparency: 1 - textureType: 5 - buildTargetSettings: [] + spriteTessellationDetail: -1 + textureType: 0 + textureShape: 1 + singleChannelComponent: 0 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + platformSettings: + - serializedVersion: 2 + buildTarget: DefaultTexturePlatform + maxTextureSize: 128 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Standalone + maxTextureSize: 128 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: iPhone + maxTextureSize: 32 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Android + maxTextureSize: 32 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Web + maxTextureSize: 64 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: WebGL + maxTextureSize: 64 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Windows Store Apps + maxTextureSize: 64 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Tizen + maxTextureSize: 32 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: PSP2 + maxTextureSize: 32 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: PS4 + maxTextureSize: 64 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: XboxOne + maxTextureSize: 64 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Samsung TV + maxTextureSize: 32 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Nintendo 3DS + maxTextureSize: 32 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: WiiU + maxTextureSize: 32 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Nintendo Switch + maxTextureSize: 32 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: tvOS + maxTextureSize: 32 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 spriteSheet: + serializedVersion: 2 sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + vertices: [] + indices: + edges: [] + weights: [] spritePackingTag: + pSDRemoveMatte: 0 + pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: diff --git a/Editor/InternalResources/Interface/preset_sprite.png.meta b/Editor/InternalResources/Interface/preset_sprite.png.meta index a62c23d8..a197fe7d 100644 --- a/Editor/InternalResources/Interface/preset_sprite.png.meta +++ b/Editor/InternalResources/Interface/preset_sprite.png.meta @@ -1,55 +1,253 @@ fileFormatVersion: 2 guid: 32c295d87941a4142a911db9e6fbd446 -timeCreated: 1432982045 -licenseType: Pro TextureImporter: fileIDToRecycleName: {} - serializedVersion: 2 + externalObjects: {} + serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 0 + sRGBTexture: 0 linearTexture: 1 - correctGamma: 0 fadeOut: 0 borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 - heightScale: .25 + heightScale: 0.25 normalMapFilter: 0 isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 grayScaleToAlpha: 0 - generateCubemap: 0 + generateCubemap: 6 cubemapConvolution: 0 - cubemapConvolutionSteps: 8 - cubemapConvolutionExponent: 1.5 seamlessCubemap: 0 textureFormat: -3 maxTextureSize: 128 textureSettings: + serializedVersion: 2 filterMode: 2 aniso: 0 - mipBias: -1 - wrapMode: 1 + mipBias: -100 + wrapU: 1 + wrapV: 1 + wrapW: 1 nPOTScale: 1 lightmap: 0 - rGBM: 0 compressionQuality: 50 spriteMode: 0 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 - spritePivot: {x: .5, y: .5} - spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 alphaIsTransparency: 1 - textureType: 5 - buildTargetSettings: [] + spriteTessellationDetail: -1 + textureType: 0 + textureShape: 1 + singleChannelComponent: 0 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + platformSettings: + - serializedVersion: 2 + buildTarget: DefaultTexturePlatform + maxTextureSize: 128 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Standalone + maxTextureSize: 128 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: iPhone + maxTextureSize: 32 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Android + maxTextureSize: 32 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Web + maxTextureSize: 64 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: WebGL + maxTextureSize: 64 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Windows Store Apps + maxTextureSize: 64 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Tizen + maxTextureSize: 32 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: PSP2 + maxTextureSize: 32 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: PS4 + maxTextureSize: 64 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: XboxOne + maxTextureSize: 64 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Samsung TV + maxTextureSize: 32 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Nintendo 3DS + maxTextureSize: 32 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: WiiU + maxTextureSize: 32 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Nintendo Switch + maxTextureSize: 32 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: tvOS + maxTextureSize: 32 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 spriteSheet: + serializedVersion: 2 sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + vertices: [] + indices: + edges: [] + weights: [] spritePackingTag: + pSDRemoveMatte: 0 + pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: diff --git a/Editor/InternalResources/Interface/preset_unlit.png.meta b/Editor/InternalResources/Interface/preset_unlit.png.meta index e35ee257..a9dcc3e1 100644 --- a/Editor/InternalResources/Interface/preset_unlit.png.meta +++ b/Editor/InternalResources/Interface/preset_unlit.png.meta @@ -1,55 +1,253 @@ fileFormatVersion: 2 guid: ab0dd09bfc3eff2449047b44ac02f7ec -timeCreated: 1432980503 -licenseType: Pro TextureImporter: fileIDToRecycleName: {} - serializedVersion: 2 + externalObjects: {} + serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 0 + sRGBTexture: 0 linearTexture: 1 - correctGamma: 0 fadeOut: 0 borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 - heightScale: .25 + heightScale: 0.25 normalMapFilter: 0 isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 grayScaleToAlpha: 0 - generateCubemap: 0 + generateCubemap: 6 cubemapConvolution: 0 - cubemapConvolutionSteps: 8 - cubemapConvolutionExponent: 1.5 seamlessCubemap: 0 textureFormat: -3 maxTextureSize: 128 textureSettings: + serializedVersion: 2 filterMode: 2 aniso: 0 - mipBias: -1 - wrapMode: 1 + mipBias: -100 + wrapU: 1 + wrapV: 1 + wrapW: 1 nPOTScale: 1 lightmap: 0 - rGBM: 0 compressionQuality: 50 spriteMode: 0 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 - spritePivot: {x: .5, y: .5} - spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 alphaIsTransparency: 1 - textureType: 5 - buildTargetSettings: [] + spriteTessellationDetail: -1 + textureType: 0 + textureShape: 1 + singleChannelComponent: 0 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + platformSettings: + - serializedVersion: 2 + buildTarget: DefaultTexturePlatform + maxTextureSize: 128 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Standalone + maxTextureSize: 128 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: iPhone + maxTextureSize: 32 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Android + maxTextureSize: 32 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Web + maxTextureSize: 64 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: WebGL + maxTextureSize: 64 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Windows Store Apps + maxTextureSize: 64 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Tizen + maxTextureSize: 32 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: PSP2 + maxTextureSize: 32 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: PS4 + maxTextureSize: 64 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: XboxOne + maxTextureSize: 64 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Samsung TV + maxTextureSize: 32 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Nintendo 3DS + maxTextureSize: 32 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: WiiU + maxTextureSize: 32 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Nintendo Switch + maxTextureSize: 32 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: tvOS + maxTextureSize: 32 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 spriteSheet: + serializedVersion: 2 sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + vertices: [] + indices: + edges: [] + weights: [] spritePackingTag: + pSDRemoveMatte: 0 + pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: diff --git a/Editor/InternalResources/Interface/screenshot_icon.png.meta b/Editor/InternalResources/Interface/screenshot_icon.png.meta index a75da36f..80402296 100644 --- a/Editor/InternalResources/Interface/screenshot_icon.png.meta +++ b/Editor/InternalResources/Interface/screenshot_icon.png.meta @@ -1,32 +1,42 @@ fileFormatVersion: 2 guid: 881bacfcd03154f1c9bdc3c7eb0aee22 TextureImporter: - serializedVersion: 2 + fileIDToRecycleName: {} + externalObjects: {} + serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 0 + sRGBTexture: 1 linearTexture: 1 - correctGamma: 0 fadeOut: 0 borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 - heightScale: .25 + heightScale: 0.25 normalMapFilter: 0 isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 grayScaleToAlpha: 0 - generateCubemap: 0 + generateCubemap: 6 + cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: -1 maxTextureSize: 1024 textureSettings: + serializedVersion: 2 filterMode: -1 aniso: 1 - mipBias: -1 - wrapMode: 1 + mipBias: -100 + wrapU: 1 + wrapV: 1 + wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 @@ -34,12 +44,210 @@ TextureImporter: spriteExtrude: 1 spriteMeshType: 1 alignment: 0 - spritePivot: {x: .5, y: .5} + spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 alphaIsTransparency: 1 + spriteTessellationDetail: -1 textureType: 2 - buildTargetSettings: [] + textureShape: 1 + singleChannelComponent: 0 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + platformSettings: + - serializedVersion: 2 + buildTarget: DefaultTexturePlatform + maxTextureSize: 1024 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Standalone + maxTextureSize: 21 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: iPhone + maxTextureSize: 8 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Android + maxTextureSize: 8 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Web + maxTextureSize: 10 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: WebGL + maxTextureSize: 10 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Windows Store Apps + maxTextureSize: 10 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Tizen + maxTextureSize: 8 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: PSP2 + maxTextureSize: 8 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: PS4 + maxTextureSize: 10 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: XboxOne + maxTextureSize: 10 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Samsung TV + maxTextureSize: 8 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Nintendo 3DS + maxTextureSize: 8 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: WiiU + maxTextureSize: 8 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Nintendo Switch + maxTextureSize: 8 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: tvOS + maxTextureSize: 8 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 spriteSheet: + serializedVersion: 2 sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + vertices: [] + indices: + edges: [] + weights: [] spritePackingTag: + pSDRemoveMatte: 0 + pSDShowRemoveMatteOption: 0 userData: + assetBundleName: + assetBundleVariant: diff --git a/Editor/InternalResources/Interface/screenshot_icon_light.png.meta b/Editor/InternalResources/Interface/screenshot_icon_light.png.meta index fbea42b3..160c9760 100644 --- a/Editor/InternalResources/Interface/screenshot_icon_light.png.meta +++ b/Editor/InternalResources/Interface/screenshot_icon_light.png.meta @@ -1,32 +1,42 @@ fileFormatVersion: 2 guid: 50e58e15548274d45bcad6ce2348edd3 TextureImporter: - serializedVersion: 2 + fileIDToRecycleName: {} + externalObjects: {} + serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 0 + sRGBTexture: 1 linearTexture: 1 - correctGamma: 0 fadeOut: 0 borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 - heightScale: .25 + heightScale: 0.25 normalMapFilter: 0 isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 grayScaleToAlpha: 0 - generateCubemap: 0 + generateCubemap: 6 + cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: -1 maxTextureSize: 1024 textureSettings: + serializedVersion: 2 filterMode: -1 aniso: 1 - mipBias: -1 - wrapMode: 1 + mipBias: -100 + wrapU: 1 + wrapV: 1 + wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 @@ -34,12 +44,210 @@ TextureImporter: spriteExtrude: 1 spriteMeshType: 1 alignment: 0 - spritePivot: {x: .5, y: .5} + spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 alphaIsTransparency: 1 + spriteTessellationDetail: -1 textureType: 2 - buildTargetSettings: [] + textureShape: 1 + singleChannelComponent: 0 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + platformSettings: + - serializedVersion: 2 + buildTarget: DefaultTexturePlatform + maxTextureSize: 1024 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Standalone + maxTextureSize: 21 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: iPhone + maxTextureSize: 8 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Android + maxTextureSize: 8 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Web + maxTextureSize: 10 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: WebGL + maxTextureSize: 10 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Windows Store Apps + maxTextureSize: 10 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Tizen + maxTextureSize: 8 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: PSP2 + maxTextureSize: 8 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: PS4 + maxTextureSize: 10 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: XboxOne + maxTextureSize: 10 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Samsung TV + maxTextureSize: 8 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Nintendo 3DS + maxTextureSize: 8 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: WiiU + maxTextureSize: 8 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Nintendo Switch + maxTextureSize: 8 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: tvOS + maxTextureSize: 8 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 1 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 spriteSheet: + serializedVersion: 2 sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + vertices: [] + indices: + edges: [] + weights: [] spritePackingTag: + pSDRemoveMatte: 0 + pSDShowRemoveMatteOption: 0 userData: + assetBundleName: + assetBundleVariant: diff --git a/Editor/InternalResources/Meshes/sf_meshes.fbx.meta b/Editor/InternalResources/Meshes/sf_meshes.fbx.meta index 5f066c98..aabe5f1c 100644 --- a/Editor/InternalResources/Meshes/sf_meshes.fbx.meta +++ b/Editor/InternalResources/Meshes/sf_meshes.fbx.meta @@ -1,7 +1,7 @@ fileFormatVersion: 2 guid: 27cd3ffabf618924f9c9eeefb09b60e0 ModelImporter: - serializedVersion: 15 + serializedVersion: 23 fileIDToRecycleName: 100000: dodecahedron_soft 100002: plant @@ -86,55 +86,89 @@ ModelImporter: 4300028: sf_sphere_lowpoly 4300030: sf_torus_knot 9500000: //RootNode + externalObjects: {} materials: importMaterials: 0 materialName: 0 materialSearch: 1 + materialLocation: 0 animations: legacyGenerateAnimations: 4 bakeSimulation: 0 + resampleCurves: 1 optimizeGameObjects: 0 - animationCompression: 1 - animationRotationError: .5 - animationPositionError: .5 - animationScaleError: .5 + motionNodeName: + rigImportErrors: + rigImportWarnings: + animationImportErrors: + animationImportWarnings: + animationRetargetingWarnings: + animationDoRetargetingWarnings: 0 + importAnimatedCustomProperties: 0 + importConstraints: 0 + animationCompression: 3 + animationRotationError: 0.1 + animationPositionError: 0.1 + animationScaleError: 0.1 animationWrapMode: 0 extraExposedTransformPaths: [] + extraUserProperties: [] clipAnimations: [] isReadable: 1 meshes: lODScreenPercentages: [] globalScale: 1 - meshCompression: 0 + meshCompression: 2 addColliders: 0 + useSRGBMaterialColor: 1 + importVisibility: 0 importBlendShapes: 1 + importCameras: 0 + importLights: 0 swapUVChannels: 0 generateSecondaryUV: 1 useFileUnits: 1 optimizeMeshForGPU: 1 + keepQuads: 0 weldVertices: 1 + preserveHierarchy: 0 + indexFormat: 1 secondaryUVAngleDistortion: 8 secondaryUVAreaDistortion: 15.000001 secondaryUVHardAngle: 88 secondaryUVPackMargin: 4 + useFileScale: 0 + previousCalculatedGlobalScale: 1 + hasPreviousCalculatedGlobalScale: 0 tangentSpace: normalSmoothAngle: 60 - splitTangentsAcrossUV: 1 normalImportMode: 0 - tangentImportMode: 1 + tangentImportMode: 4 + normalCalculationMode: 0 + legacyComputeAllNormalsFromSmoothingGroupsWhenMeshHasBlendShapes: 1 + blendShapeNormalImportMode: 1 + normalSmoothingSource: 0 importAnimation: 1 copyAvatar: 0 humanDescription: + serializedVersion: 2 human: [] skeleton: [] - armTwist: .5 - foreArmTwist: .5 - upperLegTwist: .5 - legTwist: .5 - armStretch: .0500000007 - legStretch: .0500000007 + armTwist: 0.5 + foreArmTwist: 0.5 + upperLegTwist: 0.5 + legTwist: 0.5 + armStretch: 0.05 + legStretch: 0.05 feetSpacing: 0 rootMotionBoneName: + hasTranslationDoF: 0 + hasExtraRoot: 0 + skeletonHasParents: 0 lastHumanDescriptionAvatarSource: {instanceID: 0} animationType: 0 + humanoidOversampling: 1 + additionalBone: 0 userData: + assetBundleName: + assetBundleVariant: diff --git a/ShaderForge.Editor.asmdef b/ShaderForge.Editor.asmdef new file mode 100644 index 00000000..4359ba8d --- /dev/null +++ b/ShaderForge.Editor.asmdef @@ -0,0 +1,15 @@ +{ + "name": "ShaderForge.Editor", + "references": [], + "optionalUnityReferences": [], + "includePlatforms": [ + "Editor" + ], + "excludePlatforms": [], + "allowUnsafeCode": false, + "overrideReferences": false, + "precompiledReferences": [], + "autoReferenced": true, + "defineConstraints": [], + "versionDefines": [] +} \ No newline at end of file diff --git a/ShaderForge.Editor.asmdef.meta b/ShaderForge.Editor.asmdef.meta new file mode 100644 index 00000000..b4b71ea3 --- /dev/null +++ b/ShaderForge.Editor.asmdef.meta @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: 45f5547f1d49dfd448d26415f2ffa8b6 +AssemblyDefinitionImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/package.json b/package.json new file mode 100644 index 00000000..eff82e48 --- /dev/null +++ b/package.json @@ -0,0 +1,8 @@ +{ + "name": "com.shaderforge", + "displayName": "ShaderForge", + "description": "", + "version": "1.0.0", + "unity": "2018.3", + "license": "" +} diff --git a/package.json.meta b/package.json.meta new file mode 100644 index 00000000..b065f182 --- /dev/null +++ b/package.json.meta @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: e1aa085476b4c534cbf61d95c54eb2ec +TextScriptImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: From 11966130110e15db8b7242e014cd9a38431b6d63 Mon Sep 17 00:00:00 2001 From: Pyro_akm Date: Tue, 5 Mar 2019 13:48:28 +0100 Subject: [PATCH 24/27] Merged modifications from atf-cguerin, updated version to 1.42. --- Editor/Code/SF_Editor.cs | 318 ++++++++++++++++++++++++- Editor/Code/_Evaluator/SF_Evaluator.cs | 44 +++- Editor/Code/_Utility/SF_Tools.cs | 2 +- 3 files changed, 348 insertions(+), 16 deletions(-) diff --git a/Editor/Code/SF_Editor.cs b/Editor/Code/SF_Editor.cs index 97c4fd2e..f3ae76b7 100644 --- a/Editor/Code/SF_Editor.cs +++ b/Editor/Code/SF_Editor.cs @@ -1488,7 +1488,7 @@ public static void CheckForUpdates(){ } - private enum MainMenuState{Main, Credits, PresetPick} + private enum MainMenuState{Main, Credits, PresetPick, UpgradeDialog} private MainMenuState menuState = MainMenuState.Main; @@ -1524,7 +1524,11 @@ public void DrawMainMenu() { } else if( menuState == MainMenuState.PresetPick ) { minSize = new Vector2( 128*(shaderPresetNames.Length + 1), 560 ); DrawPresetPickGUI(); - } else if(menuState == MainMenuState.Credits){ + } else if (menuState == MainMenuState.UpgradeDialog) { + minSize = new Vector2(400, 400); + DrawUpgradeDialogGUI(); + } + else if(menuState == MainMenuState.Credits) { //Vector2 centerPrev = position.center; @@ -1741,6 +1745,313 @@ public void DrawPresetPickGUI() { } + private struct ShaderInfo + { + public Shader shader; + public string assetPath; + public float version; + public bool selected; + + public ShaderInfo(Shader shader, string assetPath, float version) + { + this.shader = shader; + this.assetPath = assetPath; + this.version = version; + this.selected = false; + } + } + + [NonSerialized] + private ShaderInfo[] allUpgradableShaders; + [NonSerialized] + private List pendingUpgradableShaders; + [NonSerialized] + private string[] pendingShaderGuids; + [NonSerialized] + private int pendingShaderIndex; + [NonSerialized] + private Vector2 upgradeDialogScrollPos; + [NonSerialized] + private int upgradeDialogLastSelected; + [NonSerialized] + private int[] upgradingShaders; + [NonSerialized] + private int upgradingShaderIndex; + [NonSerialized] + private bool upgradingShaderThisFrame; + + [SerializeField] + public bool upgradingDisplayAssetPath; + [SerializeField] + public bool upgradingHideIfUpToDate; + + public void DrawUpgradeDialogGUI() { + + GUIStyle centerLabel = new GUIStyle( EditorStyles.boldLabel ); + GUIStyle centerLabelSmall = new GUIStyle( EditorStyles.miniLabel ); + centerLabel.alignment = centerLabelSmall.alignment = TextAnchor.MiddleCenter; + + float currentVersion = float.Parse(SF_Tools.version); + + bool needRepaint = false; + + if (allUpgradableShaders == null) + { + if (pendingUpgradableShaders == null) + pendingUpgradableShaders = new List(); + + if (pendingShaderGuids == null) + { + pendingShaderGuids = AssetDatabase.FindAssets("t:Shader"); + pendingShaderIndex = 0; + } + + int processedCount = 0; + while (pendingShaderIndex < pendingShaderGuids.Length) + { + string path = AssetDatabase.GUIDToAssetPath(pendingShaderGuids[pendingShaderIndex++]); + Shader shader = AssetDatabase.LoadAssetAtPath(path); + try + { + if (shader != null) + { + float version; + string sfData = SF_Parser.ExtractShaderForgeData(shader, out version, false, false, false); + if (!string.IsNullOrEmpty(sfData)) + { + pendingUpgradableShaders.Add(new ShaderInfo(shader, path, version)); + } + } + } + catch (Exception) + { + } + + if (++processedCount >= 10) + break; + } + + if (pendingShaderIndex >= pendingShaderGuids.Length) + { + pendingUpgradableShaders.Sort((a, b) => String.Compare(a.shader.name, b.shader.name, true)); + allUpgradableShaders = pendingUpgradableShaders.ToArray(); + pendingUpgradableShaders = null; + pendingShaderGuids = null; + upgradingShaders = null; + upgradeDialogLastSelected = -1; + } + } + + if (allUpgradableShaders == null) + { + EditorGUILayout.Separator(); + FlexHorizontal(() => { + GUILayout.Label(string.Format("Looking for ShaderForge shaders in your assets ({0}/{1}).", pendingShaderIndex, pendingShaderGuids.Length), centerLabel); + }); + EditorGUILayout.Separator(); + needRepaint = true; + } + else if(upgradingShaders != null) + { + int shaderIndex = (upgradingShaderIndex < upgradingShaders.Length) ? upgradingShaders[upgradingShaderIndex] : -1; + Shader shader = (shaderIndex >= 0 && shaderIndex < allUpgradableShaders.Length) ? allUpgradableShaders[shaderIndex].shader : null; + + EditorGUILayout.Separator(); + FlexHorizontal(() => { + GUILayout.Label(string.Format("Upgrading shader ({0}/{1}) : {2}.", upgradingShaderIndex, upgradingShaders.Length, shader != null ? shader.name : "none"), centerLabel); + }); + EditorGUILayout.Separator(); + + if (shader != null && upgradingShaderThisFrame) + { + try + { + if (InitializeInstance(shader) && nodeView.treeStatus.CheckCanCompile()) + { + shaderEvaluator.Evaluate(); + allUpgradableShaders[shaderIndex].version = currentVersion; + } + else + { + Debug.LogErrorFormat("Failed to upgrade shader {0} ({1}) : the shader doesn't compile.", shader.name, allUpgradableShaders[shaderIndex].assetPath); + } + } + catch(Exception e) + { + Debug.LogErrorFormat("Failed to upgrade shader {0} ({1}) : {2}", shader.name, allUpgradableShaders[shaderIndex].assetPath, e.Message); + } + currentShaderAsset = null; // stay in the current view. + shaderOutdated = UpToDateState.UpToDate; + } + + if (upgradingShaderThisFrame) + { + upgradingShaderIndex++; + upgradingShaderThisFrame = false; + } + else + upgradingShaderThisFrame = true; + + if (upgradingShaderIndex >= upgradingShaders.Length) + { + upgradingShaders = null; + } + + needRepaint = true; + } + else + { + EditorGUILayout.Separator(); + FlexHorizontal( () => { + GUILayout.Label( "ShaderForge shaders list.", centerLabel ); + } ); + EditorGUILayout.Separator(); + FlexHorizontal(() => { + upgradingDisplayAssetPath = GUILayout.Toggle(upgradingDisplayAssetPath, "Display Asset Path"); + upgradingHideIfUpToDate = GUILayout.Toggle(upgradingHideIfUpToDate, "Hide If Up To Date"); + }); + EditorGUILayout.Separator(); + + { + GUIStyle normalStyle = new GUIStyle(EditorStyles.boldLabel); + normalStyle.alignment = TextAnchor.UpperCenter; + GUIStyle selectedStyle = new GUIStyle(normalStyle); + selectedStyle.normal.background = Texture2D.whiteTexture; + selectedStyle.normal.textColor = new Color32(50, 50, 50, 255); + Color selectedBGColor = new Color32(199, 210, 249, 255); + Color baseBGColor = GUI.backgroundColor; + + Event e = Event.current; + + upgradeDialogScrollPos = GUILayout.BeginScrollView(upgradeDialogScrollPos); + for (int i = 0; i < allUpgradableShaders.Length; i++) + { + ShaderInfo current = allUpgradableShaders[i]; + + if (upgradingHideIfUpToDate && current.version >= currentVersion) + continue; + + GUILayout.BeginHorizontal(); + GUIStyle style = current.selected ? selectedStyle : normalStyle; + GUI.backgroundColor = current.selected ? selectedBGColor : baseBGColor; + GUILayout.Label(upgradingDisplayAssetPath ? current.assetPath : current.shader.name, style, GUILayout.ExpandWidth(true)); + Rect nameRect = GUILayoutUtility.GetLastRect(); + GUILayout.Label(current.version.ToString("N2"), style, GUILayout.Width(60)); + Rect versionRect = GUILayoutUtility.GetLastRect(); + GUILayout.EndHorizontal(); + + if (e.type == EventType.MouseUp && e.button == 0 && (nameRect.Contains(e.mousePosition) || versionRect.Contains(e.mousePosition))) + { + bool wantSelected = !allUpgradableShaders[i].selected; + if (!e.control) + { + for (int j = 0; j < allUpgradableShaders.Length; j++) + allUpgradableShaders[j].selected = false; + } + if (e.shift && upgradeDialogLastSelected != -1) + { + upgradeDialogLastSelected = Math.Max(0, Math.Min(upgradeDialogLastSelected, allUpgradableShaders.Length - 1)); + int start = Math.Min(upgradeDialogLastSelected, i); + int end = Math.Max(upgradeDialogLastSelected, i); + for (int j = start; j <= end; j++) + allUpgradableShaders[j].selected = wantSelected; + } + else + { + allUpgradableShaders[i].selected = wantSelected; + } + needRepaint = true; + upgradeDialogLastSelected = i; + } + } + GUI.backgroundColor = baseBGColor; + GUILayout.EndScrollView(); + } + } + + EditorGUILayout.Separator(); + EditorGUILayout.Separator(); + EditorGUILayout.Separator(); + EditorGUILayout.Separator(); + EditorGUILayout.Separator(); + + if (allUpgradableShaders != null && upgradingShaders == null) + { + FlexHorizontal(() => { + GUI.enabled = allUpgradableShaders.Count(info => info.selected) == 1; + if (GUILayout.Button("Open Selected")) + { + Shader shader = allUpgradableShaders.First(info => info.selected).shader; + SF_Editor.Init(shader); + } + + GUI.enabled = allUpgradableShaders.Any(info => info.selected); + if (GUILayout.Button("Resave Selected")) + { + List tmpShaderIndexes = new List(); + for (int i = 0; i < allUpgradableShaders.Length; ++i) + { + if (allUpgradableShaders[i].selected) + tmpShaderIndexes.Add(i); + } + if (tmpShaderIndexes.Count > 0) + { + upgradingShaders = tmpShaderIndexes.ToArray(); + upgradingShaderIndex = 0; + upgradingShaderThisFrame = false; + needRepaint = true; + } + } + GUI.enabled = allUpgradableShaders.Any(info => info.version < currentVersion); + if (GUILayout.Button("Upgrade As Needed")) + { + List tmpShaderIndexes = new List(); + for (int i = 0; i < allUpgradableShaders.Length; ++i) + { + if (allUpgradableShaders[i].version < currentVersion) + tmpShaderIndexes.Add(i); + } + if (tmpShaderIndexes.Count > 0) + { + upgradingShaders = tmpShaderIndexes.ToArray(); + upgradingShaderIndex = 0; + upgradingShaderThisFrame = false; + needRepaint = true; + } + } + GUI.enabled = allUpgradableShaders.Length > 0; + if (GUILayout.Button("Resave All")) + { + upgradingShaders = new int[allUpgradableShaders.Length]; + for (int i = 0; i < upgradingShaders.Length; ++i) + upgradingShaders[i] = i; + upgradingShaderIndex = 0; + upgradingShaderThisFrame = false; + needRepaint = true; + } + GUI.enabled = true; + }); + } + + EditorGUILayout.Separator(); + EditorGUILayout.Separator(); + EditorGUILayout.Separator(); + + FlexHorizontal( () => { + if( GUILayout.Button( "Back" ) ) { + allUpgradableShaders = null; + pendingUpgradableShaders = null; + pendingShaderGuids = null; + upgradingShaders = null; + menuState = MainMenuState.Main; + } + } ); + + if (needRepaint) + { + Repaint(); + } + } public Texture2D GetShaderPresetIcon(ShaderPresets preset) { @@ -1810,6 +2121,9 @@ public void DrawPrimaryMainMenuGUI(){ if( GUILayout.Button( "Load Shader", GUILayout.Width( 128 ), GUILayout.Height( 64 ) ) ) { OpenLoadDialog(); } + if( GUILayout.Button( "Upgrade Shaders", GUILayout.Width( 128 ), GUILayout.Height( 64 ) ) ) { + menuState = MainMenuState.UpgradeDialog; + } } else { GUILayout.BeginVertical(); SF_Tools.UnityOutOfDateGUI(); diff --git a/Editor/Code/_Evaluator/SF_Evaluator.cs b/Editor/Code/_Evaluator/SF_Evaluator.cs index 2c4db3b2..1ed7547e 100644 --- a/Editor/Code/_Evaluator/SF_Evaluator.cs +++ b/Editor/Code/_Evaluator/SF_Evaluator.cs @@ -967,18 +967,24 @@ void InitHalfVector() { void InitAttenuation() { if( SF_Evaluator.inVert && ps.catLighting.IsVertexLit() && ShouldUseLightMacros() ) + { +#if UNITY_2018_1_OR_NEWER + App( "UNITY_TRANSFER_LIGHTING(o, " + (LightmappedAndLit() ? "v.texcoord1" : "float2(0,0)") + ");" ); +#else App( "TRANSFER_VERTEX_TO_FRAGMENT(o)" ); +#endif + } -#if UNITY_2018_1_OR_NEWER - if (ShouldUseLightMacros()) - { - string s = ( ( currentProgram == ShaderProgram.Frag ) ? "i" : "o" ); - App( "UNITY_LIGHT_ATTENUATION(attenuation, " + s + ", " + s + ".posWorld.xyz);" ); - } - else - { - App( "float attenuation = 1;" ); - } +#if UNITY_2018_1_OR_NEWER + if (ShouldUseLightMacros()) + { + string s = ( ( currentProgram == ShaderProgram.Frag ) ? "i" : "o" ); + App( "UNITY_LIGHT_ATTENUATION(attenuation, " + s + ", " + s + ".posWorld.xyz);" ); + } + else + { + App( "float attenuation = 1;" ); + } #else //UNITY_2018_1_OR_NEWER string atten = "LIGHT_ATTENUATION(" + ( ( currentProgram == ShaderProgram.Frag ) ? "i" : "o" ) + ")"; @@ -1165,9 +1171,9 @@ void CalcDiffuse() { if( LightmappedAndLit() ) { - if (currentPass == PassType.Deferred) - { - App("#pragma multi_compile ___ LIGHTPROBE_SH"); + if (currentPass == PassType.Deferred) + { + App("#pragma multi_compile ___ LIGHTPROBE_SH"); } App( "indirectDiffuse += gi.indirect.diffuse;" ); @@ -2275,7 +2281,13 @@ void VertexOutputStruct() { if( dependencies.frag_projPos ) App( "float4 projPos" + GetVertOutTexcoord() ); if( ShouldUseLightMacros() ) + { +#if UNITY_2018_1_OR_NEWER + App( "UNITY_LIGHTING_COORDS(" + GetVertOutTexcoord( true ) + "," + GetVertOutTexcoord( true ) + ")" ); +#else App( "LIGHTING_COORDS(" + GetVertOutTexcoord( true ) + "," + GetVertOutTexcoord( true ) + ")" ); +#endif + } if( UseUnity5FogInThisPass() ) App( "UNITY_FOG_COORDS(" + GetVertOutTexcoord( true ) + ")" ); // New in Unity 5 @@ -2541,7 +2553,13 @@ void Vertex() { if( ps.catLighting.IsVertexLit() ) Lighting(); else if( ShouldUseLightMacros() ) + { +#if UNITY_2018_1_OR_NEWER + App( "UNITY_TRANSFER_LIGHTING(o, " + (LightmappedAndLit() ? "v.texcoord1" : "float2(0,0)") + ");" ); +#else App( "TRANSFER_VERTEX_TO_FRAGMENT(o)" ); +#endif + } } App( "return o;" ); diff --git a/Editor/Code/_Utility/SF_Tools.cs b/Editor/Code/_Utility/SF_Tools.cs index b2d46551..14fcfa83 100644 --- a/Editor/Code/_Utility/SF_Tools.cs +++ b/Editor/Code/_Utility/SF_Tools.cs @@ -31,7 +31,7 @@ public static class SF_Tools { // Versioning public static int versionNumPrimary = 1; - public static int versionNumSecondary = 41; + public static int versionNumSecondary = 42; public static string versionStage = ""; public static string version = versionNumPrimary + "." + versionNumSecondary.ToString( "D2" ); public static string versionString = "Shader Forge v" + version; From 575f460d64ed19e2073a64b4fa73027f3a50bb7b Mon Sep 17 00:00:00 2001 From: Pyro_akm Date: Tue, 5 Mar 2019 14:30:05 +0100 Subject: [PATCH 25/27] Upgraded shader examples. --- .../ShaderPresets/PresetBasic.shader | 25 +++++---- .../ShaderPresets/PresetBasic.shader.meta | 4 +- .../ShaderPresets/PresetCustomLighting.shader | 25 +++++---- .../PresetCustomLighting.shader.meta | 4 +- .../ShaderPresets/PresetPBR.shader | 31 +++++++---- .../ShaderPresets/PresetPBR.shader.meta | 4 +- .../PresetParticleAdditive.shader | 9 ++- .../PresetParticleAdditive.shader.meta | 4 +- .../PresetParticleAlphaBlended.shader | 9 ++- .../PresetParticleAlphaBlended.shader.meta | 4 +- .../PresetParticleMultiplicative.shader | 9 ++- .../PresetParticleMultiplicative.shader.meta | 4 +- .../ShaderPresets/PresetPostEffect.shader | 9 ++- .../PresetPostEffect.shader.meta | 4 +- .../ShaderPresets/PresetSky.shader | 9 ++- .../ShaderPresets/PresetSky.shader.meta | 4 +- .../ShaderPresets/PresetSprite.shader | 9 ++- .../ShaderPresets/PresetSprite.shader.meta | 4 +- .../ShaderPresets/PresetUnlit.shader | 9 ++- .../ShaderPresets/PresetUnlit.shader.meta | 4 +- Examples/CustomLighting.shader | 29 +++++----- Examples/LightWrapping.shader | 25 ++++++--- Examples/LightWrapping.shader.meta | 4 +- Examples/Parallax.shader | 23 +++++--- Examples/PixelRotator.shader | 31 ++++++----- Examples/PixelRotator.shader.meta | 4 +- Examples/Refraction.shader | 25 ++++++--- Examples/Refraction.shader.meta | 7 +-- Examples/TessellationDisplacement.shader | 55 +++++++++++-------- Examples/TessellationDisplacement.shader.meta | 10 +--- Examples/Tiles.shader | 25 ++++++--- Examples/Tiles.shader.meta | 7 +-- Examples/Vegetation.shader | 27 ++++++--- Examples/Vegetation.shader.meta | 8 +-- Examples/VertexAnimation.shader | 55 +++++++++++-------- Examples/VertexAnimation.shader.meta | 8 +-- Examples/VertexColorRounding.shader | 11 +++- Examples/VertexColorRounding.shader.meta | 4 +- 38 files changed, 319 insertions(+), 223 deletions(-) diff --git a/Editor/InternalResources/ShaderPresets/PresetBasic.shader b/Editor/InternalResources/ShaderPresets/PresetBasic.shader index 37d8eed2..5349dfe9 100644 --- a/Editor/InternalResources/ShaderPresets/PresetBasic.shader +++ b/Editor/InternalResources/ShaderPresets/PresetBasic.shader @@ -1,7 +1,8 @@ -// Shader created with Shader Forge v1.35 +// Shader created with Shader Forge v1.42 // Shader Forge (c) Freya Holmer - http://www.acegikmo.com/shaderforge/ +// Enhanced by Antoine Guillon / Arkham Development - http://www.arkham-development.com/ // Note: Manually altering this data may prevent you from opening it in Shader Forge -/*SF_DATA;ver:1.35;sub:START;pass:START;ps:flbk:,iptp:0,cusa:False,bamd:0,lico:1,lgpr:1,limd:1,spmd:1,trmd:0,grmd:0,uamb:True,mssp:True,bkdf:False,hqlp:False,rprd:False,enco:False,rmgx:True,imps:True,rpth:0,vtps:0,hqsc:True,nrmq:1,nrsp:0,vomd:0,spxs:False,tesm:0,olmd:1,culm:0,bsrc:0,bdst:1,dpts:2,wrdp:True,dith:0,atcv:False,rfrpo:True,rfrpn:Refraction,coma:15,ufog:True,aust:True,igpj:False,qofs:0,qpre:1,rntp:1,fgom:False,fgoc:False,fgod:False,fgor:False,fgmd:0,fgcr:0.5,fgcg:0.5,fgcb:0.5,fgca:1,fgde:0.01,fgrn:0,fgrf:300,stcl:False,stva:128,stmr:255,stmw:255,stcp:6,stps:0,stfa:0,stfz:0,ofsf:0,ofsu:0,f2p0:False,fnsp:False,fnfb:False;n:type:ShaderForge.SFN_Final,id:4013,x:32719,y:32712,varname:node_4013,prsc:2|diff-1304-RGB;n:type:ShaderForge.SFN_Color,id:1304,x:32443,y:32712,ptovrint:False,ptlb:Color,ptin:_Color,varname:node_1304,prsc:2,glob:False,taghide:False,taghdr:False,tagprd:False,tagnsco:False,tagnrm:False,c1:1,c2:1,c3:1,c4:1;proporder:1304;pass:END;sub:END;*/ +/*SF_DATA;ver:1.42;sub:START;pass:START;ps:flbk:,iptp:0,cusa:False,bamd:0,cgin:,lico:1,lgpr:1,limd:1,spmd:1,trmd:0,grmd:0,uamb:True,mssp:True,bkdf:False,hqlp:False,rprd:False,enco:False,rmgx:True,imps:True,rpth:0,vtps:0,hqsc:True,nrmq:1,nrsp:0,vomd:0,spxs:False,tesm:0,olmd:1,culm:0,bsrc:0,bdst:1,dpts:2,wrdp:True,dith:0,atcv:False,rfrpo:True,rfrpn:Refraction,coma:15,ufog:True,aust:True,igpj:False,qofs:0,qpre:1,rntp:1,fgom:False,fgoc:False,fgod:False,fgor:False,fgmd:0,fgcr:0.5,fgcg:0.5,fgcb:0.5,fgca:1,fgde:0.01,fgrn:0,fgrf:300,stcl:False,atwp:False,stva:128,stmr:255,stmw:255,stcp:6,stps:0,stfa:0,stfz:0,ofsf:0,ofsu:0,f2p0:False,fnsp:False,fnfb:False,fsmp:False;n:type:ShaderForge.SFN_Final,id:4013,x:32719,y:32712,varname:node_4013,prsc:2|diff-1304-RGB;n:type:ShaderForge.SFN_Color,id:1304,x:32443,y:32712,ptovrint:False,ptlb:Color,ptin:_Color,varname:node_1304,prsc:2,glob:False,taghide:False,taghdr:False,tagprd:False,tagnsco:False,tagnrm:False,c1:1,c2:1,c3:1,c4:1;proporder:1304;pass:END;sub:END;*/ Shader "Hidden/Shader Forge/PresetBasic" { Properties { @@ -21,7 +22,9 @@ Shader "Hidden/Shader Forge/PresetBasic" { CGPROGRAM #pragma vertex vert #pragma fragment frag + #ifndef UNITY_PASS_FORWARDBASE #define UNITY_PASS_FORWARDBASE + #endif //UNITY_PASS_FORWARDBASE #include "UnityCG.cginc" #include "AutoLight.cginc" #pragma multi_compile_fwdbase_fullshadows @@ -38,7 +41,7 @@ Shader "Hidden/Shader Forge/PresetBasic" { float4 pos : SV_POSITION; float4 posWorld : TEXCOORD0; float3 normalDir : TEXCOORD1; - LIGHTING_COORDS(2,3) + UNITY_LIGHTING_COORDS(2,3) UNITY_FOG_COORDS(4) }; VertexOutput vert (VertexInput v) { @@ -46,9 +49,9 @@ Shader "Hidden/Shader Forge/PresetBasic" { o.normalDir = UnityObjectToWorldNormal(v.normal); o.posWorld = mul(unity_ObjectToWorld, v.vertex); float3 lightColor = _LightColor0.rgb; - o.pos = UnityObjectToClipPos(v.vertex ); + o.pos = UnityObjectToClipPos( v.vertex ); UNITY_TRANSFER_FOG(o,o.pos); - TRANSFER_VERTEX_TO_FRAGMENT(o) + UNITY_TRANSFER_LIGHTING(o, float2(0,0)); return o; } float4 frag(VertexOutput i) : COLOR { @@ -57,7 +60,7 @@ Shader "Hidden/Shader Forge/PresetBasic" { float3 lightDirection = normalize(_WorldSpaceLightPos0.xyz); float3 lightColor = _LightColor0.rgb; ////// Lighting: - float attenuation = LIGHT_ATTENUATION(i); + UNITY_LIGHT_ATTENUATION(attenuation, i, i.posWorld.xyz); float3 attenColor = attenuation * _LightColor0.xyz; /////// Diffuse: float NdotL = max(0.0,dot( normalDirection, lightDirection )); @@ -85,7 +88,9 @@ Shader "Hidden/Shader Forge/PresetBasic" { CGPROGRAM #pragma vertex vert #pragma fragment frag + #ifndef UNITY_PASS_FORWARDADD #define UNITY_PASS_FORWARDADD + #endif //UNITY_PASS_FORWARDADD #include "UnityCG.cginc" #include "AutoLight.cginc" #pragma multi_compile_fwdadd_fullshadows @@ -102,7 +107,7 @@ Shader "Hidden/Shader Forge/PresetBasic" { float4 pos : SV_POSITION; float4 posWorld : TEXCOORD0; float3 normalDir : TEXCOORD1; - LIGHTING_COORDS(2,3) + UNITY_LIGHTING_COORDS(2,3) UNITY_FOG_COORDS(4) }; VertexOutput vert (VertexInput v) { @@ -110,9 +115,9 @@ Shader "Hidden/Shader Forge/PresetBasic" { o.normalDir = UnityObjectToWorldNormal(v.normal); o.posWorld = mul(unity_ObjectToWorld, v.vertex); float3 lightColor = _LightColor0.rgb; - o.pos = UnityObjectToClipPos(v.vertex ); + o.pos = UnityObjectToClipPos( v.vertex ); UNITY_TRANSFER_FOG(o,o.pos); - TRANSFER_VERTEX_TO_FRAGMENT(o) + UNITY_TRANSFER_LIGHTING(o, float2(0,0)); return o; } float4 frag(VertexOutput i) : COLOR { @@ -121,7 +126,7 @@ Shader "Hidden/Shader Forge/PresetBasic" { float3 lightDirection = normalize(lerp(_WorldSpaceLightPos0.xyz, _WorldSpaceLightPos0.xyz - i.posWorld.xyz,_WorldSpaceLightPos0.w)); float3 lightColor = _LightColor0.rgb; ////// Lighting: - float attenuation = LIGHT_ATTENUATION(i); + UNITY_LIGHT_ATTENUATION(attenuation, i, i.posWorld.xyz); float3 attenColor = attenuation * _LightColor0.xyz; /////// Diffuse: float NdotL = max(0.0,dot( normalDirection, lightDirection )); diff --git a/Editor/InternalResources/ShaderPresets/PresetBasic.shader.meta b/Editor/InternalResources/ShaderPresets/PresetBasic.shader.meta index effadd9c..688a6cef 100644 --- a/Editor/InternalResources/ShaderPresets/PresetBasic.shader.meta +++ b/Editor/InternalResources/ShaderPresets/PresetBasic.shader.meta @@ -1,9 +1,9 @@ fileFormatVersion: 2 guid: 5e1a556be1de7574d91d1b0c6efef8ba -timeCreated: 1489236708 -licenseType: Pro ShaderImporter: + externalObjects: {} defaultTextures: [] + nonModifiableTextures: [] userData: assetBundleName: assetBundleVariant: diff --git a/Editor/InternalResources/ShaderPresets/PresetCustomLighting.shader b/Editor/InternalResources/ShaderPresets/PresetCustomLighting.shader index 110a2c78..a3c38401 100644 --- a/Editor/InternalResources/ShaderPresets/PresetCustomLighting.shader +++ b/Editor/InternalResources/ShaderPresets/PresetCustomLighting.shader @@ -1,7 +1,8 @@ -// Shader created with Shader Forge v1.35 +// Shader created with Shader Forge v1.42 // Shader Forge (c) Freya Holmer - http://www.acegikmo.com/shaderforge/ +// Enhanced by Antoine Guillon / Arkham Development - http://www.arkham-development.com/ // Note: Manually altering this data may prevent you from opening it in Shader Forge -/*SF_DATA;ver:1.35;sub:START;pass:START;ps:flbk:,iptp:0,cusa:False,bamd:0,lico:1,lgpr:1,limd:0,spmd:1,trmd:0,grmd:0,uamb:True,mssp:True,bkdf:False,hqlp:False,rprd:False,enco:False,rmgx:True,imps:True,rpth:0,vtps:0,hqsc:True,nrmq:1,nrsp:0,vomd:0,spxs:False,tesm:0,olmd:1,culm:0,bsrc:0,bdst:1,dpts:2,wrdp:True,dith:0,atcv:False,rfrpo:True,rfrpn:Refraction,coma:15,ufog:True,aust:True,igpj:False,qofs:0,qpre:1,rntp:1,fgom:False,fgoc:False,fgod:False,fgor:False,fgmd:0,fgcr:0.5,fgcg:0.5,fgcb:0.5,fgca:1,fgde:0.01,fgrn:0,fgrf:300,stcl:False,stva:128,stmr:255,stmw:255,stcp:6,stps:0,stfa:0,stfz:0,ofsf:0,ofsu:0,f2p0:False,fnsp:False,fnfb:False;n:type:ShaderForge.SFN_Final,id:9361,x:33209,y:32712,varname:node_9361,prsc:2|emission-2460-OUT,custl-5085-OUT;n:type:ShaderForge.SFN_LightAttenuation,id:8068,x:32734,y:33086,varname:node_8068,prsc:2;n:type:ShaderForge.SFN_LightColor,id:3406,x:32734,y:32952,varname:node_3406,prsc:2;n:type:ShaderForge.SFN_LightVector,id:6869,x:31858,y:32654,varname:node_6869,prsc:2;n:type:ShaderForge.SFN_NormalVector,id:9684,x:31858,y:32782,prsc:2,pt:True;n:type:ShaderForge.SFN_HalfVector,id:9471,x:31858,y:32933,varname:node_9471,prsc:2;n:type:ShaderForge.SFN_Dot,id:7782,x:32070,y:32697,cmnt:Lambert,varname:node_7782,prsc:2,dt:1|A-6869-OUT,B-9684-OUT;n:type:ShaderForge.SFN_Dot,id:3269,x:32070,y:32871,cmnt:Blinn-Phong,varname:node_3269,prsc:2,dt:1|A-9684-OUT,B-9471-OUT;n:type:ShaderForge.SFN_Multiply,id:2746,x:32465,y:32866,cmnt:Specular Contribution,varname:node_2746,prsc:2|A-7782-OUT,B-5267-OUT,C-4865-RGB;n:type:ShaderForge.SFN_Tex2d,id:851,x:32070,y:32349,ptovrint:False,ptlb:Diffuse,ptin:_Diffuse,varname:node_851,prsc:2,glob:False,taghide:False,taghdr:False,tagprd:False,tagnsco:False,tagnrm:False,ntxv:0,isnm:False;n:type:ShaderForge.SFN_Multiply,id:1941,x:32465,y:32693,cmnt:Diffuse Contribution,varname:node_1941,prsc:2|A-544-OUT,B-7782-OUT;n:type:ShaderForge.SFN_Color,id:5927,x:32070,y:32534,ptovrint:False,ptlb:Color,ptin:_Color,varname:node_5927,prsc:2,glob:False,taghide:False,taghdr:False,tagprd:False,tagnsco:False,tagnrm:False,c1:0.5,c2:0.5,c3:0.5,c4:1;n:type:ShaderForge.SFN_Exp,id:1700,x:32070,y:33054,varname:node_1700,prsc:2,et:1|IN-9978-OUT;n:type:ShaderForge.SFN_Slider,id:5328,x:31529,y:33056,ptovrint:False,ptlb:Gloss,ptin:_Gloss,varname:node_5328,prsc:2,glob:False,taghide:False,taghdr:False,tagprd:False,tagnsco:False,tagnrm:False,min:0,cur:0.5,max:1;n:type:ShaderForge.SFN_Power,id:5267,x:32268,y:32940,varname:node_5267,prsc:2|VAL-3269-OUT,EXP-1700-OUT;n:type:ShaderForge.SFN_Add,id:2159,x:32734,y:32812,cmnt:Combine,varname:node_2159,prsc:2|A-1941-OUT,B-2746-OUT;n:type:ShaderForge.SFN_Multiply,id:5085,x:32979,y:32952,cmnt:Attenuate and Color,varname:node_5085,prsc:2|A-2159-OUT,B-3406-RGB,C-8068-OUT;n:type:ShaderForge.SFN_ConstantLerp,id:9978,x:31858,y:33056,varname:node_9978,prsc:2,a:1,b:11|IN-5328-OUT;n:type:ShaderForge.SFN_Color,id:4865,x:32268,y:33095,ptovrint:False,ptlb:Spec Color,ptin:_SpecColor,varname:node_4865,prsc:2,glob:False,taghide:False,taghdr:False,tagprd:False,tagnsco:False,tagnrm:False,c1:1,c2:1,c3:1,c4:1;n:type:ShaderForge.SFN_AmbientLight,id:7528,x:32734,y:32646,varname:node_7528,prsc:2;n:type:ShaderForge.SFN_Multiply,id:2460,x:32927,y:32598,cmnt:Ambient Light,varname:node_2460,prsc:2|A-544-OUT,B-7528-RGB;n:type:ShaderForge.SFN_Multiply,id:544,x:32268,y:32448,cmnt:Diffuse Color,varname:node_544,prsc:2|A-851-RGB,B-5927-RGB;proporder:851-5927-5328-4865;pass:END;sub:END;*/ +/*SF_DATA;ver:1.42;sub:START;pass:START;ps:flbk:,iptp:0,cusa:False,bamd:0,cgin:,lico:1,lgpr:1,limd:0,spmd:1,trmd:0,grmd:0,uamb:True,mssp:True,bkdf:False,hqlp:False,rprd:False,enco:False,rmgx:True,imps:True,rpth:0,vtps:0,hqsc:True,nrmq:1,nrsp:0,vomd:0,spxs:False,tesm:0,olmd:1,culm:0,bsrc:0,bdst:1,dpts:2,wrdp:True,dith:0,atcv:False,rfrpo:True,rfrpn:Refraction,coma:15,ufog:True,aust:True,igpj:False,qofs:0,qpre:1,rntp:1,fgom:False,fgoc:False,fgod:False,fgor:False,fgmd:0,fgcr:0.5,fgcg:0.5,fgcb:0.5,fgca:1,fgde:0.01,fgrn:0,fgrf:300,stcl:False,atwp:False,stva:128,stmr:255,stmw:255,stcp:6,stps:0,stfa:0,stfz:0,ofsf:0,ofsu:0,f2p0:False,fnsp:False,fnfb:False,fsmp:False;n:type:ShaderForge.SFN_Final,id:9361,x:33209,y:32712,varname:node_9361,prsc:2|emission-2460-OUT,custl-5085-OUT;n:type:ShaderForge.SFN_LightAttenuation,id:8068,x:32734,y:33086,varname:node_8068,prsc:2;n:type:ShaderForge.SFN_LightColor,id:3406,x:32734,y:32952,varname:node_3406,prsc:2;n:type:ShaderForge.SFN_LightVector,id:6869,x:31858,y:32654,varname:node_6869,prsc:2;n:type:ShaderForge.SFN_NormalVector,id:9684,x:31858,y:32782,prsc:2,pt:True;n:type:ShaderForge.SFN_HalfVector,id:9471,x:31858,y:32933,varname:node_9471,prsc:2;n:type:ShaderForge.SFN_Dot,id:7782,x:32070,y:32697,cmnt:Lambert,varname:node_7782,prsc:2,dt:1|A-6869-OUT,B-9684-OUT;n:type:ShaderForge.SFN_Dot,id:3269,x:32070,y:32871,cmnt:Blinn-Phong,varname:node_3269,prsc:2,dt:1|A-9684-OUT,B-9471-OUT;n:type:ShaderForge.SFN_Multiply,id:2746,x:32465,y:32866,cmnt:Specular Contribution,varname:node_2746,prsc:2|A-7782-OUT,B-5267-OUT,C-4865-RGB;n:type:ShaderForge.SFN_Tex2d,id:851,x:32070,y:32349,ptovrint:False,ptlb:Diffuse,ptin:_Diffuse,varname:node_851,prsc:2,glob:False,taghide:False,taghdr:False,tagprd:False,tagnsco:False,tagnrm:False,ntxv:0,isnm:False;n:type:ShaderForge.SFN_Multiply,id:1941,x:32465,y:32693,cmnt:Diffuse Contribution,varname:node_1941,prsc:2|A-544-OUT,B-7782-OUT;n:type:ShaderForge.SFN_Color,id:5927,x:32070,y:32534,ptovrint:False,ptlb:Color,ptin:_Color,varname:node_5927,prsc:2,glob:False,taghide:False,taghdr:False,tagprd:False,tagnsco:False,tagnrm:False,c1:0.5,c2:0.5,c3:0.5,c4:1;n:type:ShaderForge.SFN_Exp,id:1700,x:32070,y:33054,varname:node_1700,prsc:2,et:1|IN-9978-OUT;n:type:ShaderForge.SFN_Slider,id:5328,x:31529,y:33056,ptovrint:False,ptlb:Gloss,ptin:_Gloss,varname:node_5328,prsc:2,glob:False,taghide:False,taghdr:False,tagprd:False,tagnsco:False,tagnrm:False,min:0,cur:0.5,max:1;n:type:ShaderForge.SFN_Power,id:5267,x:32268,y:32940,varname:node_5267,prsc:2|VAL-3269-OUT,EXP-1700-OUT;n:type:ShaderForge.SFN_Add,id:2159,x:32734,y:32812,cmnt:Combine,varname:node_2159,prsc:2|A-1941-OUT,B-2746-OUT;n:type:ShaderForge.SFN_Multiply,id:5085,x:32979,y:32952,cmnt:Attenuate and Color,varname:node_5085,prsc:2|A-2159-OUT,B-3406-RGB,C-8068-OUT;n:type:ShaderForge.SFN_ConstantLerp,id:9978,x:31858,y:33056,varname:node_9978,prsc:2,a:1,b:11|IN-5328-OUT;n:type:ShaderForge.SFN_Color,id:4865,x:32268,y:33095,ptovrint:False,ptlb:Spec Color,ptin:_SpecColor,varname:node_4865,prsc:2,glob:False,taghide:False,taghdr:False,tagprd:False,tagnsco:False,tagnrm:False,c1:1,c2:1,c3:1,c4:1;n:type:ShaderForge.SFN_AmbientLight,id:7528,x:32734,y:32646,varname:node_7528,prsc:2;n:type:ShaderForge.SFN_Multiply,id:2460,x:32927,y:32598,cmnt:Ambient Light,varname:node_2460,prsc:2|A-544-OUT,B-7528-RGB;n:type:ShaderForge.SFN_Multiply,id:544,x:32268,y:32448,cmnt:Diffuse Color,varname:node_544,prsc:2|A-851-RGB,B-5927-RGB;proporder:851-5927-5328-4865;pass:END;sub:END;*/ Shader "Hidden/Shader Forge/PresetCustomLighting" { Properties { @@ -24,7 +25,9 @@ Shader "Hidden/Shader Forge/PresetCustomLighting" { CGPROGRAM #pragma vertex vert #pragma fragment frag + #ifndef UNITY_PASS_FORWARDBASE #define UNITY_PASS_FORWARDBASE + #endif //UNITY_PASS_FORWARDBASE #include "UnityCG.cginc" #include "AutoLight.cginc" #include "Lighting.cginc" @@ -45,7 +48,7 @@ Shader "Hidden/Shader Forge/PresetCustomLighting" { float2 uv0 : TEXCOORD0; float4 posWorld : TEXCOORD1; float3 normalDir : TEXCOORD2; - LIGHTING_COORDS(3,4) + UNITY_LIGHTING_COORDS(3,4) UNITY_FOG_COORDS(5) }; VertexOutput vert (VertexInput v) { @@ -54,9 +57,9 @@ Shader "Hidden/Shader Forge/PresetCustomLighting" { o.normalDir = UnityObjectToWorldNormal(v.normal); o.posWorld = mul(unity_ObjectToWorld, v.vertex); float3 lightColor = _LightColor0.rgb; - o.pos = UnityObjectToClipPos(v.vertex ); + o.pos = UnityObjectToClipPos( v.vertex ); UNITY_TRANSFER_FOG(o,o.pos); - TRANSFER_VERTEX_TO_FRAGMENT(o) + UNITY_TRANSFER_LIGHTING(o, float2(0,0)); return o; } float4 frag(VertexOutput i) : COLOR { @@ -67,7 +70,7 @@ Shader "Hidden/Shader Forge/PresetCustomLighting" { float3 lightColor = _LightColor0.rgb; float3 halfDirection = normalize(viewDirection+lightDirection); ////// Lighting: - float attenuation = LIGHT_ATTENUATION(i); + UNITY_LIGHT_ATTENUATION(attenuation, i, i.posWorld.xyz); ////// Emissive: float4 _Diffuse_var = tex2D(_Diffuse,TRANSFORM_TEX(i.uv0, _Diffuse)); float3 node_544 = (_Diffuse_var.rgb*_Color.rgb); // Diffuse Color @@ -91,7 +94,9 @@ Shader "Hidden/Shader Forge/PresetCustomLighting" { CGPROGRAM #pragma vertex vert #pragma fragment frag + #ifndef UNITY_PASS_FORWARDADD #define UNITY_PASS_FORWARDADD + #endif //UNITY_PASS_FORWARDADD #include "UnityCG.cginc" #include "AutoLight.cginc" #include "Lighting.cginc" @@ -112,7 +117,7 @@ Shader "Hidden/Shader Forge/PresetCustomLighting" { float2 uv0 : TEXCOORD0; float4 posWorld : TEXCOORD1; float3 normalDir : TEXCOORD2; - LIGHTING_COORDS(3,4) + UNITY_LIGHTING_COORDS(3,4) UNITY_FOG_COORDS(5) }; VertexOutput vert (VertexInput v) { @@ -121,9 +126,9 @@ Shader "Hidden/Shader Forge/PresetCustomLighting" { o.normalDir = UnityObjectToWorldNormal(v.normal); o.posWorld = mul(unity_ObjectToWorld, v.vertex); float3 lightColor = _LightColor0.rgb; - o.pos = UnityObjectToClipPos(v.vertex ); + o.pos = UnityObjectToClipPos( v.vertex ); UNITY_TRANSFER_FOG(o,o.pos); - TRANSFER_VERTEX_TO_FRAGMENT(o) + UNITY_TRANSFER_LIGHTING(o, float2(0,0)); return o; } float4 frag(VertexOutput i) : COLOR { @@ -134,7 +139,7 @@ Shader "Hidden/Shader Forge/PresetCustomLighting" { float3 lightColor = _LightColor0.rgb; float3 halfDirection = normalize(viewDirection+lightDirection); ////// Lighting: - float attenuation = LIGHT_ATTENUATION(i); + UNITY_LIGHT_ATTENUATION(attenuation, i, i.posWorld.xyz); float4 _Diffuse_var = tex2D(_Diffuse,TRANSFORM_TEX(i.uv0, _Diffuse)); float3 node_544 = (_Diffuse_var.rgb*_Color.rgb); // Diffuse Color float node_7782 = max(0,dot(lightDirection,normalDirection)); // Lambert diff --git a/Editor/InternalResources/ShaderPresets/PresetCustomLighting.shader.meta b/Editor/InternalResources/ShaderPresets/PresetCustomLighting.shader.meta index 3a94c801..651f5ab1 100644 --- a/Editor/InternalResources/ShaderPresets/PresetCustomLighting.shader.meta +++ b/Editor/InternalResources/ShaderPresets/PresetCustomLighting.shader.meta @@ -1,9 +1,9 @@ fileFormatVersion: 2 guid: 7d799ee2ddc2af945bf159324e9ebb15 -timeCreated: 1489236711 -licenseType: Pro ShaderImporter: + externalObjects: {} defaultTextures: [] + nonModifiableTextures: [] userData: assetBundleName: assetBundleVariant: diff --git a/Editor/InternalResources/ShaderPresets/PresetPBR.shader b/Editor/InternalResources/ShaderPresets/PresetPBR.shader index 8fe0fbd1..55821a87 100644 --- a/Editor/InternalResources/ShaderPresets/PresetPBR.shader +++ b/Editor/InternalResources/ShaderPresets/PresetPBR.shader @@ -1,7 +1,8 @@ -// Shader created with Shader Forge v1.35 +// Shader created with Shader Forge v1.42 // Shader Forge (c) Freya Holmer - http://www.acegikmo.com/shaderforge/ +// Enhanced by Antoine Guillon / Arkham Development - http://www.arkham-development.com/ // Note: Manually altering this data may prevent you from opening it in Shader Forge -/*SF_DATA;ver:1.35;sub:START;pass:START;ps:flbk:,iptp:0,cusa:False,bamd:0,lico:1,lgpr:1,limd:3,spmd:1,trmd:0,grmd:0,uamb:True,mssp:True,bkdf:True,hqlp:False,rprd:True,enco:False,rmgx:True,imps:True,rpth:0,vtps:0,hqsc:True,nrmq:1,nrsp:0,vomd:0,spxs:False,tesm:0,olmd:1,culm:0,bsrc:0,bdst:1,dpts:2,wrdp:True,dith:0,atcv:False,rfrpo:True,rfrpn:Refraction,coma:15,ufog:True,aust:True,igpj:False,qofs:0,qpre:1,rntp:1,fgom:False,fgoc:False,fgod:False,fgor:False,fgmd:0,fgcr:0.5,fgcg:0.5,fgcb:0.5,fgca:1,fgde:0.01,fgrn:0,fgrf:300,stcl:False,stva:128,stmr:255,stmw:255,stcp:6,stps:0,stfa:0,stfz:0,ofsf:0,ofsu:0,f2p0:False,fnsp:False,fnfb:False;n:type:ShaderForge.SFN_Final,id:2865,x:32719,y:32712,varname:node_2865,prsc:2|diff-6343-OUT,spec-358-OUT,gloss-1813-OUT,normal-5964-RGB;n:type:ShaderForge.SFN_Multiply,id:6343,x:32114,y:32712,varname:node_6343,prsc:2|A-7736-RGB,B-6665-RGB;n:type:ShaderForge.SFN_Color,id:6665,x:31921,y:32805,ptovrint:False,ptlb:Color,ptin:_Color,varname:_Color,prsc:2,glob:False,taghide:False,taghdr:False,tagprd:False,tagnsco:False,tagnrm:False,c1:0.5019608,c2:0.5019608,c3:0.5019608,c4:1;n:type:ShaderForge.SFN_Tex2d,id:7736,x:31921,y:32620,ptovrint:True,ptlb:Base Color,ptin:_MainTex,varname:_MainTex,prsc:2,glob:False,taghide:False,taghdr:False,tagprd:False,tagnsco:False,tagnrm:False,ntxv:0,isnm:False;n:type:ShaderForge.SFN_Tex2d,id:5964,x:32407,y:32978,ptovrint:True,ptlb:Normal Map,ptin:_BumpMap,varname:_BumpMap,prsc:2,glob:False,taghide:False,taghdr:False,tagprd:False,tagnsco:False,tagnrm:False,ntxv:3,isnm:True;n:type:ShaderForge.SFN_Slider,id:358,x:32250,y:32780,ptovrint:False,ptlb:Metallic,ptin:_Metallic,varname:node_358,prsc:2,glob:False,taghide:False,taghdr:False,tagprd:False,tagnsco:False,tagnrm:False,min:0,cur:0,max:1;n:type:ShaderForge.SFN_Slider,id:1813,x:32250,y:32882,ptovrint:False,ptlb:Gloss,ptin:_Gloss,varname:_Metallic_copy,prsc:2,glob:False,taghide:False,taghdr:False,tagprd:False,tagnsco:False,tagnrm:False,min:0,cur:0.8,max:1;proporder:5964-6665-7736-358-1813;pass:END;sub:END;*/ +/*SF_DATA;ver:1.42;sub:START;pass:START;ps:flbk:,iptp:0,cusa:False,bamd:0,cgin:,lico:1,lgpr:1,limd:3,spmd:1,trmd:0,grmd:0,uamb:True,mssp:True,bkdf:True,hqlp:False,rprd:True,enco:False,rmgx:True,imps:True,rpth:0,vtps:0,hqsc:True,nrmq:1,nrsp:0,vomd:0,spxs:False,tesm:0,olmd:1,culm:0,bsrc:0,bdst:1,dpts:2,wrdp:True,dith:0,atcv:False,rfrpo:True,rfrpn:Refraction,coma:15,ufog:True,aust:True,igpj:False,qofs:0,qpre:1,rntp:1,fgom:False,fgoc:False,fgod:False,fgor:False,fgmd:0,fgcr:0.5,fgcg:0.5,fgcb:0.5,fgca:1,fgde:0.01,fgrn:0,fgrf:300,stcl:False,atwp:False,stva:128,stmr:255,stmw:255,stcp:6,stps:0,stfa:0,stfz:0,ofsf:0,ofsu:0,f2p0:False,fnsp:False,fnfb:False,fsmp:False;n:type:ShaderForge.SFN_Final,id:2865,x:32719,y:32712,varname:node_2865,prsc:2|diff-6343-OUT,spec-358-OUT,gloss-1813-OUT,normal-5964-RGB;n:type:ShaderForge.SFN_Multiply,id:6343,x:32114,y:32712,varname:node_6343,prsc:2|A-7736-RGB,B-6665-RGB;n:type:ShaderForge.SFN_Color,id:6665,x:31921,y:32805,ptovrint:False,ptlb:Color,ptin:_Color,varname:_Color,prsc:2,glob:False,taghide:False,taghdr:False,tagprd:False,tagnsco:False,tagnrm:False,c1:0.5019608,c2:0.5019608,c3:0.5019608,c4:1;n:type:ShaderForge.SFN_Tex2d,id:7736,x:31921,y:32620,ptovrint:True,ptlb:Base Color,ptin:_MainTex,varname:_MainTex,prsc:2,glob:False,taghide:False,taghdr:False,tagprd:False,tagnsco:False,tagnrm:False,ntxv:0,isnm:False;n:type:ShaderForge.SFN_Tex2d,id:5964,x:32407,y:32978,ptovrint:True,ptlb:Normal Map,ptin:_BumpMap,varname:_BumpMap,prsc:2,glob:False,taghide:False,taghdr:False,tagprd:False,tagnsco:False,tagnrm:False,ntxv:3,isnm:True;n:type:ShaderForge.SFN_Slider,id:358,x:32250,y:32780,ptovrint:False,ptlb:Metallic,ptin:_Metallic,varname:node_358,prsc:2,glob:False,taghide:False,taghdr:False,tagprd:False,tagnsco:False,tagnrm:False,min:0,cur:0,max:1;n:type:ShaderForge.SFN_Slider,id:1813,x:32250,y:32882,ptovrint:False,ptlb:Gloss,ptin:_Gloss,varname:_Metallic_copy,prsc:2,glob:False,taghide:False,taghdr:False,tagprd:False,tagnsco:False,tagnrm:False,min:0,cur:0.8,max:1;proporder:5964-6665-7736-358-1813;pass:END;sub:END;*/ Shader "Hidden/Shader Forge/PresetPBR" { Properties { @@ -25,7 +26,9 @@ Shader "Hidden/Shader Forge/PresetPBR" { CGPROGRAM #pragma vertex vert #pragma fragment frag + #ifndef UNITY_PASS_FORWARDBASE #define UNITY_PASS_FORWARDBASE + #endif //UNITY_PASS_FORWARDBASE #define SHOULD_SAMPLE_SH ( defined (LIGHTMAP_OFF) && defined(DYNAMICLIGHTMAP_OFF) ) #define _GLOSSYENV 1 #include "UnityCG.cginc" @@ -62,7 +65,7 @@ Shader "Hidden/Shader Forge/PresetPBR" { float3 normalDir : TEXCOORD4; float3 tangentDir : TEXCOORD5; float3 bitangentDir : TEXCOORD6; - LIGHTING_COORDS(7,8) + UNITY_LIGHTING_COORDS(7,8) UNITY_FOG_COORDS(9) #if defined(LIGHTMAP_ON) || defined(UNITY_SHOULD_SAMPLE_SH) float4 ambientOrLightmapUV : TEXCOORD10; @@ -86,9 +89,9 @@ Shader "Hidden/Shader Forge/PresetPBR" { o.bitangentDir = normalize(cross(o.normalDir, o.tangentDir) * v.tangent.w); o.posWorld = mul(unity_ObjectToWorld, v.vertex); float3 lightColor = _LightColor0.rgb; - o.pos = UnityObjectToClipPos(v.vertex ); + o.pos = UnityObjectToClipPos( v.vertex ); UNITY_TRANSFER_FOG(o,o.pos); - TRANSFER_VERTEX_TO_FRAGMENT(o) + UNITY_TRANSFER_LIGHTING(o, v.texcoord1); return o; } float4 frag(VertexOutput i) : COLOR { @@ -103,7 +106,7 @@ Shader "Hidden/Shader Forge/PresetPBR" { float3 lightColor = _LightColor0.rgb; float3 halfDirection = normalize(viewDirection+lightDirection); ////// Lighting: - float attenuation = LIGHT_ATTENUATION(i); + UNITY_LIGHT_ATTENUATION(attenuation, i, i.posWorld.xyz); float3 attenColor = attenuation * _LightColor0.xyz; float Pi = 3.141592654; float InvPi = 0.31830988618; @@ -111,7 +114,7 @@ Shader "Hidden/Shader Forge/PresetPBR" { float gloss = _Gloss; float perceptualRoughness = 1.0 - _Gloss; float roughness = perceptualRoughness * perceptualRoughness; - float specPow = exp2( gloss * 10.0+1.0); + float specPow = exp2( gloss * 10.0 + 1.0 ); /////// GI Data: UnityLight light; #ifdef LIGHTMAP_OFF @@ -215,7 +218,9 @@ Shader "Hidden/Shader Forge/PresetPBR" { CGPROGRAM #pragma vertex vert #pragma fragment frag + #ifndef UNITY_PASS_FORWARDADD #define UNITY_PASS_FORWARDADD + #endif //UNITY_PASS_FORWARDADD #define SHOULD_SAMPLE_SH ( defined (LIGHTMAP_OFF) && defined(DYNAMICLIGHTMAP_OFF) ) #define _GLOSSYENV 1 #include "UnityCG.cginc" @@ -252,7 +257,7 @@ Shader "Hidden/Shader Forge/PresetPBR" { float3 normalDir : TEXCOORD4; float3 tangentDir : TEXCOORD5; float3 bitangentDir : TEXCOORD6; - LIGHTING_COORDS(7,8) + UNITY_LIGHTING_COORDS(7,8) UNITY_FOG_COORDS(9) }; VertexOutput vert (VertexInput v) { @@ -265,9 +270,9 @@ Shader "Hidden/Shader Forge/PresetPBR" { o.bitangentDir = normalize(cross(o.normalDir, o.tangentDir) * v.tangent.w); o.posWorld = mul(unity_ObjectToWorld, v.vertex); float3 lightColor = _LightColor0.rgb; - o.pos = UnityObjectToClipPos(v.vertex ); + o.pos = UnityObjectToClipPos( v.vertex ); UNITY_TRANSFER_FOG(o,o.pos); - TRANSFER_VERTEX_TO_FRAGMENT(o) + UNITY_TRANSFER_LIGHTING(o, v.texcoord1); return o; } float4 frag(VertexOutput i) : COLOR { @@ -281,7 +286,7 @@ Shader "Hidden/Shader Forge/PresetPBR" { float3 lightColor = _LightColor0.rgb; float3 halfDirection = normalize(viewDirection+lightDirection); ////// Lighting: - float attenuation = LIGHT_ATTENUATION(i); + UNITY_LIGHT_ATTENUATION(attenuation, i, i.posWorld.xyz); float3 attenColor = attenuation * _LightColor0.xyz; float Pi = 3.141592654; float InvPi = 0.31830988618; @@ -289,7 +294,7 @@ Shader "Hidden/Shader Forge/PresetPBR" { float gloss = _Gloss; float perceptualRoughness = 1.0 - _Gloss; float roughness = perceptualRoughness * perceptualRoughness; - float specPow = exp2( gloss * 10.0+1.0); + float specPow = exp2( gloss * 10.0 + 1.0 ); ////// Specular: float NdotL = saturate(dot( normalDirection, lightDirection )); float LdotH = saturate(dot(lightDirection, halfDirection)); @@ -340,7 +345,9 @@ Shader "Hidden/Shader Forge/PresetPBR" { CGPROGRAM #pragma vertex vert #pragma fragment frag + #ifndef UNITY_PASS_META 1 #define UNITY_PASS_META 1 + #endif UNITY_PASS_META 1 #define SHOULD_SAMPLE_SH ( defined (LIGHTMAP_OFF) && defined(DYNAMICLIGHTMAP_OFF) ) #define _GLOSSYENV 1 #include "UnityCG.cginc" diff --git a/Editor/InternalResources/ShaderPresets/PresetPBR.shader.meta b/Editor/InternalResources/ShaderPresets/PresetPBR.shader.meta index 6e8c6466..ac963dc4 100644 --- a/Editor/InternalResources/ShaderPresets/PresetPBR.shader.meta +++ b/Editor/InternalResources/ShaderPresets/PresetPBR.shader.meta @@ -1,9 +1,9 @@ fileFormatVersion: 2 guid: 4b6bafb86a756f54b86a5309be75165b -timeCreated: 1489236730 -licenseType: Pro ShaderImporter: + externalObjects: {} defaultTextures: [] + nonModifiableTextures: [] userData: assetBundleName: assetBundleVariant: diff --git a/Editor/InternalResources/ShaderPresets/PresetParticleAdditive.shader b/Editor/InternalResources/ShaderPresets/PresetParticleAdditive.shader index e47056fc..373f8445 100644 --- a/Editor/InternalResources/ShaderPresets/PresetParticleAdditive.shader +++ b/Editor/InternalResources/ShaderPresets/PresetParticleAdditive.shader @@ -1,7 +1,8 @@ -// Shader created with Shader Forge v1.35 +// Shader created with Shader Forge v1.42 // Shader Forge (c) Freya Holmer - http://www.acegikmo.com/shaderforge/ +// Enhanced by Antoine Guillon / Arkham Development - http://www.arkham-development.com/ // Note: Manually altering this data may prevent you from opening it in Shader Forge -/*SF_DATA;ver:1.35;sub:START;pass:START;ps:flbk:,iptp:0,cusa:False,bamd:0,lico:1,lgpr:1,limd:0,spmd:1,trmd:0,grmd:0,uamb:True,mssp:True,bkdf:False,hqlp:False,rprd:False,enco:False,rmgx:True,imps:True,rpth:0,vtps:0,hqsc:True,nrmq:1,nrsp:0,vomd:0,spxs:False,tesm:0,olmd:1,culm:0,bsrc:0,bdst:0,dpts:2,wrdp:False,dith:0,atcv:False,rfrpo:True,rfrpn:Refraction,coma:15,ufog:True,aust:True,igpj:True,qofs:0,qpre:3,rntp:2,fgom:False,fgoc:True,fgod:False,fgor:False,fgmd:0,fgcr:0,fgcg:0,fgcb:0,fgca:1,fgde:0.01,fgrn:0,fgrf:300,stcl:False,stva:128,stmr:255,stmw:255,stcp:6,stps:0,stfa:0,stfz:0,ofsf:0,ofsu:0,f2p0:False,fnsp:True,fnfb:True;n:type:ShaderForge.SFN_Final,id:4795,x:32724,y:32693,varname:node_4795,prsc:2|emission-2393-OUT;n:type:ShaderForge.SFN_Tex2d,id:6074,x:32235,y:32601,ptovrint:False,ptlb:MainTex,ptin:_MainTex,varname:_MainTex,prsc:2,glob:False,taghide:False,taghdr:False,tagprd:False,tagnsco:False,tagnrm:False,ntxv:0,isnm:False;n:type:ShaderForge.SFN_Multiply,id:2393,x:32495,y:32793,varname:node_2393,prsc:2|A-6074-RGB,B-2053-RGB,C-797-RGB,D-9248-OUT;n:type:ShaderForge.SFN_VertexColor,id:2053,x:32235,y:32772,varname:node_2053,prsc:2;n:type:ShaderForge.SFN_Color,id:797,x:32235,y:32930,ptovrint:True,ptlb:Color,ptin:_TintColor,varname:_TintColor,prsc:2,glob:False,taghide:False,taghdr:False,tagprd:False,tagnsco:False,tagnrm:False,c1:0.5,c2:0.5,c3:0.5,c4:1;n:type:ShaderForge.SFN_Vector1,id:9248,x:32235,y:33081,varname:node_9248,prsc:2,v1:2;proporder:6074-797;pass:END;sub:END;*/ +/*SF_DATA;ver:1.42;sub:START;pass:START;ps:flbk:,iptp:0,cusa:False,bamd:0,cgin:,lico:1,lgpr:1,limd:0,spmd:1,trmd:0,grmd:0,uamb:True,mssp:True,bkdf:False,hqlp:False,rprd:False,enco:False,rmgx:True,imps:True,rpth:0,vtps:0,hqsc:True,nrmq:1,nrsp:0,vomd:0,spxs:False,tesm:0,olmd:1,culm:0,bsrc:0,bdst:0,dpts:2,wrdp:False,dith:0,atcv:False,rfrpo:True,rfrpn:Refraction,coma:15,ufog:True,aust:True,igpj:True,qofs:0,qpre:3,rntp:2,fgom:False,fgoc:True,fgod:False,fgor:False,fgmd:0,fgcr:0,fgcg:0,fgcb:0,fgca:1,fgde:0.01,fgrn:0,fgrf:300,stcl:False,atwp:False,stva:128,stmr:255,stmw:255,stcp:6,stps:0,stfa:0,stfz:0,ofsf:0,ofsu:0,f2p0:False,fnsp:True,fnfb:True,fsmp:False;n:type:ShaderForge.SFN_Final,id:4795,x:32724,y:32693,varname:node_4795,prsc:2|emission-2393-OUT;n:type:ShaderForge.SFN_Tex2d,id:6074,x:32235,y:32601,ptovrint:False,ptlb:MainTex,ptin:_MainTex,varname:_MainTex,prsc:2,glob:False,taghide:False,taghdr:False,tagprd:False,tagnsco:False,tagnrm:False,ntxv:0,isnm:False;n:type:ShaderForge.SFN_Multiply,id:2393,x:32495,y:32793,varname:node_2393,prsc:2|A-6074-RGB,B-2053-RGB,C-797-RGB,D-9248-OUT;n:type:ShaderForge.SFN_VertexColor,id:2053,x:32235,y:32772,varname:node_2053,prsc:2;n:type:ShaderForge.SFN_Color,id:797,x:32235,y:32930,ptovrint:True,ptlb:Color,ptin:_TintColor,varname:_TintColor,prsc:2,glob:False,taghide:False,taghdr:False,tagprd:False,tagnsco:False,tagnrm:False,c1:0.5,c2:0.5,c3:0.5,c4:1;n:type:ShaderForge.SFN_Vector1,id:9248,x:32235,y:33081,varname:node_9248,prsc:2,v1:2;proporder:6074-797;pass:END;sub:END;*/ Shader "Hidden/Shader Forge/PresetParticleAdditive" { Properties { @@ -25,7 +26,9 @@ Shader "Hidden/Shader Forge/PresetParticleAdditive" { CGPROGRAM #pragma vertex vert #pragma fragment frag + #ifndef UNITY_PASS_FORWARDBASE #define UNITY_PASS_FORWARDBASE + #endif //UNITY_PASS_FORWARDBASE #include "UnityCG.cginc" #pragma multi_compile_fwdbase #pragma multi_compile_fog @@ -48,7 +51,7 @@ Shader "Hidden/Shader Forge/PresetParticleAdditive" { VertexOutput o = (VertexOutput)0; o.uv0 = v.texcoord0; o.vertexColor = v.vertexColor; - o.pos = UnityObjectToClipPos(v.vertex ); + o.pos = UnityObjectToClipPos( v.vertex ); UNITY_TRANSFER_FOG(o,o.pos); return o; } diff --git a/Editor/InternalResources/ShaderPresets/PresetParticleAdditive.shader.meta b/Editor/InternalResources/ShaderPresets/PresetParticleAdditive.shader.meta index 92902364..7a0e27a9 100644 --- a/Editor/InternalResources/ShaderPresets/PresetParticleAdditive.shader.meta +++ b/Editor/InternalResources/ShaderPresets/PresetParticleAdditive.shader.meta @@ -1,9 +1,9 @@ fileFormatVersion: 2 guid: 113d8ae5cd948e947accc45db1e1b4da -timeCreated: 1489236719 -licenseType: Pro ShaderImporter: + externalObjects: {} defaultTextures: [] + nonModifiableTextures: [] userData: assetBundleName: assetBundleVariant: diff --git a/Editor/InternalResources/ShaderPresets/PresetParticleAlphaBlended.shader b/Editor/InternalResources/ShaderPresets/PresetParticleAlphaBlended.shader index 3c175e0d..8a1cfa74 100644 --- a/Editor/InternalResources/ShaderPresets/PresetParticleAlphaBlended.shader +++ b/Editor/InternalResources/ShaderPresets/PresetParticleAlphaBlended.shader @@ -1,7 +1,8 @@ -// Shader created with Shader Forge v1.35 +// Shader created with Shader Forge v1.42 // Shader Forge (c) Freya Holmer - http://www.acegikmo.com/shaderforge/ +// Enhanced by Antoine Guillon / Arkham Development - http://www.arkham-development.com/ // Note: Manually altering this data may prevent you from opening it in Shader Forge -/*SF_DATA;ver:1.35;sub:START;pass:START;ps:flbk:,iptp:0,cusa:False,bamd:0,lico:1,lgpr:1,limd:0,spmd:1,trmd:0,grmd:0,uamb:True,mssp:True,bkdf:False,hqlp:False,rprd:False,enco:False,rmgx:True,imps:True,rpth:0,vtps:0,hqsc:True,nrmq:1,nrsp:0,vomd:0,spxs:False,tesm:0,olmd:1,culm:0,bsrc:3,bdst:7,dpts:2,wrdp:False,dith:0,atcv:False,rfrpo:True,rfrpn:Refraction,coma:15,ufog:True,aust:True,igpj:True,qofs:0,qpre:3,rntp:2,fgom:False,fgoc:False,fgod:False,fgor:False,fgmd:0,fgcr:0,fgcg:0,fgcb:0,fgca:1,fgde:0.01,fgrn:0,fgrf:300,stcl:False,stva:128,stmr:255,stmw:255,stcp:6,stps:0,stfa:0,stfz:0,ofsf:0,ofsu:0,f2p0:False,fnsp:True,fnfb:True;n:type:ShaderForge.SFN_Final,id:4795,x:32716,y:32678,varname:node_4795,prsc:2|emission-2393-OUT,alpha-798-OUT;n:type:ShaderForge.SFN_Tex2d,id:6074,x:32235,y:32601,ptovrint:False,ptlb:MainTex,ptin:_MainTex,varname:_MainTex,prsc:2,glob:False,taghide:False,taghdr:False,tagprd:False,tagnsco:False,tagnrm:False,ntxv:0,isnm:False;n:type:ShaderForge.SFN_Multiply,id:2393,x:32495,y:32793,varname:node_2393,prsc:2|A-6074-RGB,B-2053-RGB,C-797-RGB,D-9248-OUT;n:type:ShaderForge.SFN_VertexColor,id:2053,x:32235,y:32772,varname:node_2053,prsc:2;n:type:ShaderForge.SFN_Color,id:797,x:32235,y:32930,ptovrint:True,ptlb:Color,ptin:_TintColor,varname:_TintColor,prsc:2,glob:False,taghide:False,taghdr:False,tagprd:False,tagnsco:False,tagnrm:False,c1:0.5,c2:0.5,c3:0.5,c4:1;n:type:ShaderForge.SFN_Vector1,id:9248,x:32235,y:33081,varname:node_9248,prsc:2,v1:2;n:type:ShaderForge.SFN_Multiply,id:798,x:32495,y:32923,varname:node_798,prsc:2|A-6074-A,B-2053-A,C-797-A;proporder:6074-797;pass:END;sub:END;*/ +/*SF_DATA;ver:1.42;sub:START;pass:START;ps:flbk:,iptp:0,cusa:False,bamd:0,cgin:,lico:1,lgpr:1,limd:0,spmd:1,trmd:0,grmd:0,uamb:True,mssp:True,bkdf:False,hqlp:False,rprd:False,enco:False,rmgx:True,imps:True,rpth:0,vtps:0,hqsc:True,nrmq:1,nrsp:0,vomd:0,spxs:False,tesm:0,olmd:1,culm:0,bsrc:3,bdst:7,dpts:2,wrdp:False,dith:0,atcv:False,rfrpo:True,rfrpn:Refraction,coma:15,ufog:True,aust:True,igpj:True,qofs:0,qpre:3,rntp:2,fgom:False,fgoc:False,fgod:False,fgor:False,fgmd:0,fgcr:0,fgcg:0,fgcb:0,fgca:1,fgde:0.01,fgrn:0,fgrf:300,stcl:False,atwp:False,stva:128,stmr:255,stmw:255,stcp:6,stps:0,stfa:0,stfz:0,ofsf:0,ofsu:0,f2p0:False,fnsp:True,fnfb:True,fsmp:False;n:type:ShaderForge.SFN_Final,id:4795,x:32716,y:32678,varname:node_4795,prsc:2|emission-2393-OUT,alpha-798-OUT;n:type:ShaderForge.SFN_Tex2d,id:6074,x:32235,y:32601,ptovrint:False,ptlb:MainTex,ptin:_MainTex,varname:_MainTex,prsc:2,glob:False,taghide:False,taghdr:False,tagprd:False,tagnsco:False,tagnrm:False,ntxv:0,isnm:False;n:type:ShaderForge.SFN_Multiply,id:2393,x:32495,y:32793,varname:node_2393,prsc:2|A-6074-RGB,B-2053-RGB,C-797-RGB,D-9248-OUT;n:type:ShaderForge.SFN_VertexColor,id:2053,x:32235,y:32772,varname:node_2053,prsc:2;n:type:ShaderForge.SFN_Color,id:797,x:32235,y:32930,ptovrint:True,ptlb:Color,ptin:_TintColor,varname:_TintColor,prsc:2,glob:False,taghide:False,taghdr:False,tagprd:False,tagnsco:False,tagnrm:False,c1:0.5,c2:0.5,c3:0.5,c4:1;n:type:ShaderForge.SFN_Vector1,id:9248,x:32235,y:33081,varname:node_9248,prsc:2,v1:2;n:type:ShaderForge.SFN_Multiply,id:798,x:32495,y:32923,varname:node_798,prsc:2|A-6074-A,B-2053-A,C-797-A;proporder:6074-797;pass:END;sub:END;*/ Shader "Hidden/Shader Forge/PresetParticleAlphaBlended" { Properties { @@ -26,7 +27,9 @@ Shader "Hidden/Shader Forge/PresetParticleAlphaBlended" { CGPROGRAM #pragma vertex vert #pragma fragment frag + #ifndef UNITY_PASS_FORWARDBASE #define UNITY_PASS_FORWARDBASE + #endif //UNITY_PASS_FORWARDBASE #include "UnityCG.cginc" #pragma multi_compile_fwdbase #pragma multi_compile_fog @@ -49,7 +52,7 @@ Shader "Hidden/Shader Forge/PresetParticleAlphaBlended" { VertexOutput o = (VertexOutput)0; o.uv0 = v.texcoord0; o.vertexColor = v.vertexColor; - o.pos = UnityObjectToClipPos(v.vertex ); + o.pos = UnityObjectToClipPos( v.vertex ); UNITY_TRANSFER_FOG(o,o.pos); return o; } diff --git a/Editor/InternalResources/ShaderPresets/PresetParticleAlphaBlended.shader.meta b/Editor/InternalResources/ShaderPresets/PresetParticleAlphaBlended.shader.meta index 4368635c..20f19673 100644 --- a/Editor/InternalResources/ShaderPresets/PresetParticleAlphaBlended.shader.meta +++ b/Editor/InternalResources/ShaderPresets/PresetParticleAlphaBlended.shader.meta @@ -1,9 +1,9 @@ fileFormatVersion: 2 guid: 3c7570234f10ad142854cd6a994911bb -timeCreated: 1489236722 -licenseType: Pro ShaderImporter: + externalObjects: {} defaultTextures: [] + nonModifiableTextures: [] userData: assetBundleName: assetBundleVariant: diff --git a/Editor/InternalResources/ShaderPresets/PresetParticleMultiplicative.shader b/Editor/InternalResources/ShaderPresets/PresetParticleMultiplicative.shader index 1c50618a..00d3ace6 100644 --- a/Editor/InternalResources/ShaderPresets/PresetParticleMultiplicative.shader +++ b/Editor/InternalResources/ShaderPresets/PresetParticleMultiplicative.shader @@ -1,7 +1,8 @@ -// Shader created with Shader Forge v1.35 +// Shader created with Shader Forge v1.42 // Shader Forge (c) Freya Holmer - http://www.acegikmo.com/shaderforge/ +// Enhanced by Antoine Guillon / Arkham Development - http://www.arkham-development.com/ // Note: Manually altering this data may prevent you from opening it in Shader Forge -/*SF_DATA;ver:1.35;sub:START;pass:START;ps:flbk:,iptp:0,cusa:False,bamd:0,lico:1,lgpr:1,limd:0,spmd:1,trmd:0,grmd:0,uamb:True,mssp:True,bkdf:False,hqlp:False,rprd:False,enco:False,rmgx:True,imps:True,rpth:0,vtps:0,hqsc:True,nrmq:1,nrsp:0,vomd:0,spxs:False,tesm:0,olmd:1,culm:0,bsrc:4,bdst:1,dpts:2,wrdp:False,dith:0,atcv:False,rfrpo:True,rfrpn:Refraction,coma:15,ufog:True,aust:True,igpj:True,qofs:0,qpre:3,rntp:2,fgom:False,fgoc:True,fgod:False,fgor:False,fgmd:0,fgcr:1,fgcg:1,fgcb:1,fgca:1,fgde:0.01,fgrn:0,fgrf:300,stcl:False,stva:128,stmr:255,stmw:255,stcp:6,stps:0,stfa:0,stfz:0,ofsf:0,ofsu:0,f2p0:False,fnsp:True,fnfb:True;n:type:ShaderForge.SFN_Final,id:4795,x:32953,y:32712,varname:node_4795,prsc:2|emission-6958-OUT;n:type:ShaderForge.SFN_Tex2d,id:6074,x:32251,y:32746,ptovrint:False,ptlb:MainTex,ptin:_MainTex,varname:_MainTex,prsc:2,glob:False,taghide:False,taghdr:False,tagprd:False,tagnsco:False,tagnrm:False,ntxv:0,isnm:False;n:type:ShaderForge.SFN_Multiply,id:2393,x:32495,y:32793,varname:node_2393,prsc:2|A-6074-RGB,B-2053-RGB;n:type:ShaderForge.SFN_VertexColor,id:2053,x:32251,y:32917,varname:node_2053,prsc:2;n:type:ShaderForge.SFN_Lerp,id:6958,x:32759,y:32813,varname:node_6958,prsc:2|A-8003-OUT,B-2393-OUT,T-2797-OUT;n:type:ShaderForge.SFN_Multiply,id:2797,x:32495,y:32917,varname:node_2797,prsc:2|A-6074-A,B-2053-A;n:type:ShaderForge.SFN_Vector1,id:8003,x:32495,y:32731,varname:node_8003,prsc:2,v1:1;proporder:6074;pass:END;sub:END;*/ +/*SF_DATA;ver:1.42;sub:START;pass:START;ps:flbk:,iptp:0,cusa:False,bamd:0,cgin:,lico:1,lgpr:1,limd:0,spmd:1,trmd:0,grmd:0,uamb:True,mssp:True,bkdf:False,hqlp:False,rprd:False,enco:False,rmgx:True,imps:True,rpth:0,vtps:0,hqsc:True,nrmq:1,nrsp:0,vomd:0,spxs:False,tesm:0,olmd:1,culm:0,bsrc:4,bdst:1,dpts:2,wrdp:False,dith:0,atcv:False,rfrpo:True,rfrpn:Refraction,coma:15,ufog:True,aust:True,igpj:True,qofs:0,qpre:3,rntp:2,fgom:False,fgoc:True,fgod:False,fgor:False,fgmd:0,fgcr:1,fgcg:1,fgcb:1,fgca:1,fgde:0.01,fgrn:0,fgrf:300,stcl:False,atwp:False,stva:128,stmr:255,stmw:255,stcp:6,stps:0,stfa:0,stfz:0,ofsf:0,ofsu:0,f2p0:False,fnsp:True,fnfb:True,fsmp:False;n:type:ShaderForge.SFN_Final,id:4795,x:32953,y:32712,varname:node_4795,prsc:2|emission-6958-OUT;n:type:ShaderForge.SFN_Tex2d,id:6074,x:32251,y:32746,ptovrint:False,ptlb:MainTex,ptin:_MainTex,varname:_MainTex,prsc:2,glob:False,taghide:False,taghdr:False,tagprd:False,tagnsco:False,tagnrm:False,ntxv:0,isnm:False;n:type:ShaderForge.SFN_Multiply,id:2393,x:32495,y:32793,varname:node_2393,prsc:2|A-6074-RGB,B-2053-RGB;n:type:ShaderForge.SFN_VertexColor,id:2053,x:32251,y:32917,varname:node_2053,prsc:2;n:type:ShaderForge.SFN_Lerp,id:6958,x:32759,y:32813,varname:node_6958,prsc:2|A-8003-OUT,B-2393-OUT,T-2797-OUT;n:type:ShaderForge.SFN_Multiply,id:2797,x:32495,y:32917,varname:node_2797,prsc:2|A-6074-A,B-2053-A;n:type:ShaderForge.SFN_Vector1,id:8003,x:32495,y:32731,varname:node_8003,prsc:2,v1:1;proporder:6074;pass:END;sub:END;*/ Shader "Hidden/Shader Forge/PresetParticleMultiplicative" { Properties { @@ -24,7 +25,9 @@ Shader "Hidden/Shader Forge/PresetParticleMultiplicative" { CGPROGRAM #pragma vertex vert #pragma fragment frag + #ifndef UNITY_PASS_FORWARDBASE #define UNITY_PASS_FORWARDBASE + #endif //UNITY_PASS_FORWARDBASE #include "UnityCG.cginc" #pragma multi_compile_fwdbase #pragma multi_compile_fog @@ -46,7 +49,7 @@ Shader "Hidden/Shader Forge/PresetParticleMultiplicative" { VertexOutput o = (VertexOutput)0; o.uv0 = v.texcoord0; o.vertexColor = v.vertexColor; - o.pos = UnityObjectToClipPos(v.vertex ); + o.pos = UnityObjectToClipPos( v.vertex ); UNITY_TRANSFER_FOG(o,o.pos); return o; } diff --git a/Editor/InternalResources/ShaderPresets/PresetParticleMultiplicative.shader.meta b/Editor/InternalResources/ShaderPresets/PresetParticleMultiplicative.shader.meta index 710a5181..9f8c684f 100644 --- a/Editor/InternalResources/ShaderPresets/PresetParticleMultiplicative.shader.meta +++ b/Editor/InternalResources/ShaderPresets/PresetParticleMultiplicative.shader.meta @@ -1,9 +1,9 @@ fileFormatVersion: 2 guid: e39d36519c93de7468e81b53aee01101 -timeCreated: 1489236726 -licenseType: Pro ShaderImporter: + externalObjects: {} defaultTextures: [] + nonModifiableTextures: [] userData: assetBundleName: assetBundleVariant: diff --git a/Editor/InternalResources/ShaderPresets/PresetPostEffect.shader b/Editor/InternalResources/ShaderPresets/PresetPostEffect.shader index 6961da3c..8841d29b 100644 --- a/Editor/InternalResources/ShaderPresets/PresetPostEffect.shader +++ b/Editor/InternalResources/ShaderPresets/PresetPostEffect.shader @@ -1,7 +1,8 @@ -// Shader created with Shader Forge v1.37 +// Shader created with Shader Forge v1.42 // Shader Forge (c) Freya Holmer - http://www.acegikmo.com/shaderforge/ +// Enhanced by Antoine Guillon / Arkham Development - http://www.arkham-development.com/ // Note: Manually altering this data may prevent you from opening it in Shader Forge -/*SF_DATA;ver:1.37;sub:START;pass:START;ps:flbk:,iptp:0,cusa:False,bamd:0,cgin:,lico:1,lgpr:1,limd:0,spmd:1,trmd:1,grmd:0,uamb:True,mssp:True,bkdf:True,hqlp:False,rprd:True,enco:False,rmgx:True,imps:False,rpth:0,vtps:0,hqsc:True,nrmq:1,nrsp:0,vomd:1,spxs:False,tesm:0,olmd:1,culm:0,bsrc:0,bdst:1,dpts:6,wrdp:False,dith:0,atcv:False,rfrpo:True,rfrpn:Refraction,coma:15,ufog:False,aust:False,igpj:True,qofs:1,qpre:4,rntp:5,fgom:False,fgoc:False,fgod:False,fgor:False,fgmd:0,fgcr:0.5,fgcg:0.5,fgcb:0.5,fgca:1,fgde:0.01,fgrn:0,fgrf:300,stcl:False,stva:128,stmr:255,stmw:255,stcp:6,stps:0,stfa:0,stfz:0,ofsf:0,ofsu:0,f2p0:False,fnsp:True,fnfb:True,fsmp:False;n:type:ShaderForge.SFN_Final,id:2865,x:32740,y:33254,varname:node_2865,prsc:2|emission-4676-OUT;n:type:ShaderForge.SFN_TexCoord,id:4219,x:31938,y:33237,cmnt:Default coordinates,varname:node_4219,prsc:2,uv:0,uaff:False;n:type:ShaderForge.SFN_Relay,id:8397,x:32163,y:33237,cmnt:Refract here,varname:node_8397,prsc:2|IN-4219-UVOUT;n:type:ShaderForge.SFN_Relay,id:4676,x:32523,y:33354,cmnt:Modify color here,varname:node_4676,prsc:2|IN-7542-RGB;n:type:ShaderForge.SFN_Tex2dAsset,id:4430,x:31938,y:33424,ptovrint:False,ptlb:MainTex,ptin:_MainTex,cmnt:MainTex contains the color of the scene,varname:node_9933,glob:False,taghide:False,taghdr:False,tagprd:False,tagnsco:False,tagnrm:False,ntxv:0,isnm:False;n:type:ShaderForge.SFN_Tex2d,id:7542,x:32339,y:33354,varname:node_1672,prsc:2,ntxv:0,isnm:False|UVIN-8397-OUT,TEX-4430-TEX;proporder:4430;pass:END;sub:END;*/ +/*SF_DATA;ver:1.42;sub:START;pass:START;ps:flbk:,iptp:0,cusa:False,bamd:0,cgin:,lico:1,lgpr:1,limd:0,spmd:1,trmd:1,grmd:0,uamb:True,mssp:True,bkdf:True,hqlp:False,rprd:True,enco:False,rmgx:True,imps:False,rpth:0,vtps:0,hqsc:True,nrmq:1,nrsp:0,vomd:1,spxs:False,tesm:0,olmd:1,culm:0,bsrc:0,bdst:1,dpts:6,wrdp:True,dith:0,atcv:False,rfrpo:True,rfrpn:Refraction,coma:15,ufog:False,aust:False,igpj:True,qofs:1,qpre:4,rntp:5,fgom:False,fgoc:False,fgod:False,fgor:False,fgmd:0,fgcr:0.5,fgcg:0.5,fgcb:0.5,fgca:1,fgde:0.01,fgrn:0,fgrf:300,stcl:False,atwp:False,stva:128,stmr:255,stmw:255,stcp:6,stps:0,stfa:0,stfz:0,ofsf:0,ofsu:0,f2p0:False,fnsp:True,fnfb:True,fsmp:False;n:type:ShaderForge.SFN_Final,id:2865,x:32740,y:33254,varname:node_2865,prsc:2|emission-4676-OUT;n:type:ShaderForge.SFN_TexCoord,id:4219,x:31938,y:33237,cmnt:Default coordinates,varname:node_4219,prsc:2,uv:0,uaff:False;n:type:ShaderForge.SFN_Relay,id:8397,x:32163,y:33237,cmnt:Refract here,varname:node_8397,prsc:2|IN-4219-UVOUT;n:type:ShaderForge.SFN_Relay,id:4676,x:32523,y:33354,cmnt:Modify color here,varname:node_4676,prsc:2|IN-7542-RGB;n:type:ShaderForge.SFN_Tex2dAsset,id:4430,x:31938,y:33424,ptovrint:False,ptlb:MainTex,ptin:_MainTex,cmnt:MainTex contains the color of the scene,varname:node_9933,glob:False,taghide:False,taghdr:False,tagprd:False,tagnsco:False,tagnrm:False,ntxv:0,isnm:False;n:type:ShaderForge.SFN_Tex2d,id:7542,x:32339,y:33354,varname:node_1672,prsc:2,ntxv:0,isnm:False|UVIN-8397-OUT,TEX-4430-TEX;proporder:4430;pass:END;sub:END;*/ Shader "Hidden/Shader Forge/PresetPostEffect" { Properties { @@ -19,12 +20,14 @@ Shader "Hidden/Shader Forge/PresetPostEffect" { "LightMode"="ForwardBase" } ZTest Always - ZWrite Off + CGPROGRAM #pragma vertex vert #pragma fragment frag + #ifndef UNITY_PASS_FORWARDBASE #define UNITY_PASS_FORWARDBASE + #endif //UNITY_PASS_FORWARDBASE #define _GLOSSYENV 1 #include "UnityCG.cginc" #include "UnityPBSLighting.cginc" diff --git a/Editor/InternalResources/ShaderPresets/PresetPostEffect.shader.meta b/Editor/InternalResources/ShaderPresets/PresetPostEffect.shader.meta index 4624e302..d8e3d1c8 100644 --- a/Editor/InternalResources/ShaderPresets/PresetPostEffect.shader.meta +++ b/Editor/InternalResources/ShaderPresets/PresetPostEffect.shader.meta @@ -1,9 +1,9 @@ fileFormatVersion: 2 guid: 280f5fc8061bbd54bb11271efda0433a -timeCreated: 1497880326 -licenseType: Pro ShaderImporter: + externalObjects: {} defaultTextures: [] + nonModifiableTextures: [] userData: assetBundleName: assetBundleVariant: diff --git a/Editor/InternalResources/ShaderPresets/PresetSky.shader b/Editor/InternalResources/ShaderPresets/PresetSky.shader index 8663cd60..6b7e1e75 100644 --- a/Editor/InternalResources/ShaderPresets/PresetSky.shader +++ b/Editor/InternalResources/ShaderPresets/PresetSky.shader @@ -1,7 +1,8 @@ -// Shader created with Shader Forge v1.35 +// Shader created with Shader Forge v1.42 // Shader Forge (c) Freya Holmer - http://www.acegikmo.com/shaderforge/ +// Enhanced by Antoine Guillon / Arkham Development - http://www.arkham-development.com/ // Note: Manually altering this data may prevent you from opening it in Shader Forge -/*SF_DATA;ver:1.35;sub:START;pass:START;ps:flbk:,iptp:2,cusa:False,bamd:0,lico:0,lgpr:1,limd:0,spmd:1,trmd:0,grmd:0,uamb:True,mssp:True,bkdf:False,hqlp:False,rprd:False,enco:False,rmgx:True,imps:True,rpth:0,vtps:0,hqsc:True,nrmq:1,nrsp:0,vomd:0,spxs:False,tesm:0,olmd:1,culm:0,bsrc:0,bdst:1,dpts:2,wrdp:True,dith:0,atcv:False,rfrpo:True,rfrpn:Refraction,coma:15,ufog:False,aust:False,igpj:True,qofs:0,qpre:0,rntp:1,fgom:False,fgoc:False,fgod:False,fgor:False,fgmd:0,fgcr:0.5,fgcg:0.5,fgcb:0.5,fgca:1,fgde:0.01,fgrn:0,fgrf:300,stcl:False,stva:128,stmr:255,stmw:255,stcp:6,stps:0,stfa:0,stfz:0,ofsf:0,ofsu:0,f2p0:False,fnsp:True,fnfb:True;n:type:ShaderForge.SFN_Final,id:3554,x:32480,y:32959,varname:node_3554,prsc:2|emission-7568-OUT;n:type:ShaderForge.SFN_Color,id:8306,x:31772,y:32686,ptovrint:False,ptlb:Sky Color,ptin:_SkyColor,varname:node_8306,prsc:2,glob:False,taghide:False,taghdr:False,tagprd:False,tagnsco:False,tagnrm:False,c1:0.02553246,c2:0.03709318,c3:0.1827586,c4:1;n:type:ShaderForge.SFN_ViewVector,id:2265,x:31161,y:32872,varname:node_2265,prsc:2;n:type:ShaderForge.SFN_Dot,id:7606,x:31418,y:32953,varname:node_7606,prsc:2,dt:1|A-2265-OUT,B-3211-OUT;n:type:ShaderForge.SFN_Vector3,id:3211,x:31161,y:32997,varname:node_3211,prsc:2,v1:0,v2:-1,v3:0;n:type:ShaderForge.SFN_Color,id:3839,x:31772,y:32848,ptovrint:False,ptlb:Horizon Color,ptin:_HorizonColor,varname:_GroundColor_copy,prsc:2,glob:False,taghide:False,taghdr:False,tagprd:False,tagnsco:False,tagnrm:False,c1:0.06617647,c2:0.5468207,c3:1,c4:1;n:type:ShaderForge.SFN_Power,id:4050,x:31772,y:32995,varname:node_4050,prsc:2|VAL-6125-OUT,EXP-7609-OUT;n:type:ShaderForge.SFN_Vector1,id:7609,x:31587,y:33095,varname:node_7609,prsc:2,v1:8;n:type:ShaderForge.SFN_OneMinus,id:6125,x:31587,y:32953,varname:node_6125,prsc:2|IN-7606-OUT;n:type:ShaderForge.SFN_Lerp,id:2737,x:31999,y:32869,cmnt:Sky,varname:node_2737,prsc:2|A-8306-RGB,B-3839-RGB,T-4050-OUT;n:type:ShaderForge.SFN_LightVector,id:3559,x:30723,y:33040,cmnt:Auto-adapts to your directional light,varname:node_3559,prsc:2;n:type:ShaderForge.SFN_Dot,id:1472,x:31082,y:33150,cmnt:Linear falloff to sun angle,varname:node_1472,prsc:2,dt:1|A-8269-OUT,B-8750-OUT;n:type:ShaderForge.SFN_ViewVector,id:8750,x:30895,y:33160,varname:node_8750,prsc:2;n:type:ShaderForge.SFN_Add,id:7568,x:32262,y:33059,cmnt:Sky plus Sun,varname:node_7568,prsc:2|A-2737-OUT,B-5855-OUT;n:type:ShaderForge.SFN_Negate,id:8269,x:30895,y:33040,varname:node_8269,prsc:2|IN-3559-OUT;n:type:ShaderForge.SFN_RemapRangeAdvanced,id:3001,x:31383,y:33282,cmnt:Modify radius of falloff,varname:node_3001,prsc:2|IN-1472-OUT,IMIN-1476-OUT,IMAX-1574-OUT,OMIN-9430-OUT,OMAX-6262-OUT;n:type:ShaderForge.SFN_Slider,id:2435,x:30320,y:33466,ptovrint:False,ptlb:Sun Radius B,ptin:_SunRadiusB,varname:node_2435,prsc:2,glob:False,taghide:False,taghdr:False,tagprd:False,tagnsco:False,tagnrm:False,min:0,cur:0.1,max:0.1;n:type:ShaderForge.SFN_Slider,id:3144,x:30320,y:33360,ptovrint:False,ptlb:Sun Radius A,ptin:_SunRadiusA,varname:_SunOuterRadius_copy,prsc:2,glob:False,taghide:False,taghdr:False,tagprd:False,tagnsco:False,tagnrm:False,min:0,cur:0,max:0.1;n:type:ShaderForge.SFN_Vector1,id:9430,x:31082,y:33610,varname:node_9430,prsc:2,v1:1;n:type:ShaderForge.SFN_Vector1,id:6262,x:31082,y:33668,varname:node_6262,prsc:2,v1:0;n:type:ShaderForge.SFN_Clamp01,id:7022,x:31556,y:33282,varname:node_7022,prsc:2|IN-3001-OUT;n:type:ShaderForge.SFN_OneMinus,id:1574,x:31082,y:33464,varname:node_1574,prsc:2|IN-8889-OUT;n:type:ShaderForge.SFN_OneMinus,id:1476,x:31082,y:33315,varname:node_1476,prsc:2|IN-3432-OUT;n:type:ShaderForge.SFN_Multiply,id:8889,x:30893,y:33464,varname:node_8889,prsc:2|A-9367-OUT,B-9367-OUT;n:type:ShaderForge.SFN_Multiply,id:3432,x:30893,y:33315,varname:node_3432,prsc:2|A-7933-OUT,B-7933-OUT;n:type:ShaderForge.SFN_Max,id:9367,x:30681,y:33464,varname:node_9367,prsc:2|A-3144-OUT,B-2435-OUT;n:type:ShaderForge.SFN_Min,id:7933,x:30681,y:33315,varname:node_7933,prsc:2|A-3144-OUT,B-2435-OUT;n:type:ShaderForge.SFN_Power,id:754,x:31772,y:33336,varname:node_754,prsc:2|VAL-7022-OUT,EXP-5929-OUT;n:type:ShaderForge.SFN_Vector1,id:5929,x:31556,y:33412,varname:node_5929,prsc:2,v1:5;n:type:ShaderForge.SFN_Multiply,id:5855,x:31957,y:33257,cmnt:Sun,varname:node_5855,prsc:2|A-2359-RGB,B-754-OUT,C-7055-OUT;n:type:ShaderForge.SFN_ValueProperty,id:7055,x:31772,y:33484,ptovrint:False,ptlb:Sun Intensity,ptin:_SunIntensity,varname:node_7055,prsc:2,glob:False,taghide:False,taghdr:False,tagprd:False,tagnsco:False,tagnrm:False,v1:2;n:type:ShaderForge.SFN_LightColor,id:2359,x:31772,y:33210,cmnt:Get color from directional light,varname:node_2359,prsc:2;proporder:8306-3839-2435-3144-7055;pass:END;sub:END;*/ +/*SF_DATA;ver:1.42;sub:START;pass:START;ps:flbk:,iptp:2,cusa:False,bamd:0,cgin:,lico:0,lgpr:1,limd:0,spmd:1,trmd:0,grmd:0,uamb:True,mssp:True,bkdf:False,hqlp:False,rprd:False,enco:False,rmgx:True,imps:True,rpth:0,vtps:0,hqsc:True,nrmq:1,nrsp:0,vomd:0,spxs:False,tesm:0,olmd:1,culm:0,bsrc:0,bdst:1,dpts:2,wrdp:True,dith:0,atcv:False,rfrpo:True,rfrpn:Refraction,coma:15,ufog:False,aust:False,igpj:True,qofs:0,qpre:0,rntp:1,fgom:False,fgoc:False,fgod:False,fgor:False,fgmd:0,fgcr:0.5,fgcg:0.5,fgcb:0.5,fgca:1,fgde:0.01,fgrn:0,fgrf:300,stcl:False,atwp:False,stva:128,stmr:255,stmw:255,stcp:6,stps:0,stfa:0,stfz:0,ofsf:0,ofsu:0,f2p0:False,fnsp:True,fnfb:True,fsmp:False;n:type:ShaderForge.SFN_Final,id:3554,x:32480,y:32959,varname:node_3554,prsc:2|emission-7568-OUT;n:type:ShaderForge.SFN_Color,id:8306,x:31772,y:32686,ptovrint:False,ptlb:Sky Color,ptin:_SkyColor,varname:node_8306,prsc:2,glob:False,taghide:False,taghdr:False,tagprd:False,tagnsco:False,tagnrm:False,c1:0.02553246,c2:0.03709318,c3:0.1827586,c4:1;n:type:ShaderForge.SFN_ViewVector,id:2265,x:31161,y:32872,varname:node_2265,prsc:2;n:type:ShaderForge.SFN_Dot,id:7606,x:31418,y:32953,varname:node_7606,prsc:2,dt:1|A-2265-OUT,B-3211-OUT;n:type:ShaderForge.SFN_Vector3,id:3211,x:31161,y:32997,varname:node_3211,prsc:2,v1:0,v2:-1,v3:0;n:type:ShaderForge.SFN_Color,id:3839,x:31772,y:32848,ptovrint:False,ptlb:Horizon Color,ptin:_HorizonColor,varname:_GroundColor_copy,prsc:2,glob:False,taghide:False,taghdr:False,tagprd:False,tagnsco:False,tagnrm:False,c1:0.06617647,c2:0.5468207,c3:1,c4:1;n:type:ShaderForge.SFN_Power,id:4050,x:31772,y:32995,varname:node_4050,prsc:2|VAL-6125-OUT,EXP-7609-OUT;n:type:ShaderForge.SFN_Vector1,id:7609,x:31587,y:33095,varname:node_7609,prsc:2,v1:8;n:type:ShaderForge.SFN_OneMinus,id:6125,x:31587,y:32953,varname:node_6125,prsc:2|IN-7606-OUT;n:type:ShaderForge.SFN_Lerp,id:2737,x:31999,y:32869,cmnt:Sky,varname:node_2737,prsc:2|A-8306-RGB,B-3839-RGB,T-4050-OUT;n:type:ShaderForge.SFN_LightVector,id:3559,x:30723,y:33040,cmnt:Auto-adapts to your directional light,varname:node_3559,prsc:2;n:type:ShaderForge.SFN_Dot,id:1472,x:31082,y:33150,cmnt:Linear falloff to sun angle,varname:node_1472,prsc:2,dt:1|A-8269-OUT,B-8750-OUT;n:type:ShaderForge.SFN_ViewVector,id:8750,x:30895,y:33160,varname:node_8750,prsc:2;n:type:ShaderForge.SFN_Add,id:7568,x:32262,y:33059,cmnt:Sky plus Sun,varname:node_7568,prsc:2|A-2737-OUT,B-5855-OUT;n:type:ShaderForge.SFN_Negate,id:8269,x:30895,y:33040,varname:node_8269,prsc:2|IN-3559-OUT;n:type:ShaderForge.SFN_RemapRangeAdvanced,id:3001,x:31383,y:33282,cmnt:Modify radius of falloff,varname:node_3001,prsc:2|IN-1472-OUT,IMIN-1476-OUT,IMAX-1574-OUT,OMIN-9430-OUT,OMAX-6262-OUT;n:type:ShaderForge.SFN_Slider,id:2435,x:30320,y:33466,ptovrint:False,ptlb:Sun Radius B,ptin:_SunRadiusB,varname:node_2435,prsc:2,glob:False,taghide:False,taghdr:False,tagprd:False,tagnsco:False,tagnrm:False,min:0,cur:0.1,max:0.1;n:type:ShaderForge.SFN_Slider,id:3144,x:30320,y:33360,ptovrint:False,ptlb:Sun Radius A,ptin:_SunRadiusA,varname:_SunOuterRadius_copy,prsc:2,glob:False,taghide:False,taghdr:False,tagprd:False,tagnsco:False,tagnrm:False,min:0,cur:0,max:0.1;n:type:ShaderForge.SFN_Vector1,id:9430,x:31082,y:33610,varname:node_9430,prsc:2,v1:1;n:type:ShaderForge.SFN_Vector1,id:6262,x:31082,y:33668,varname:node_6262,prsc:2,v1:0;n:type:ShaderForge.SFN_Clamp01,id:7022,x:31556,y:33282,varname:node_7022,prsc:2|IN-3001-OUT;n:type:ShaderForge.SFN_OneMinus,id:1574,x:31082,y:33464,varname:node_1574,prsc:2|IN-8889-OUT;n:type:ShaderForge.SFN_OneMinus,id:1476,x:31082,y:33315,varname:node_1476,prsc:2|IN-3432-OUT;n:type:ShaderForge.SFN_Multiply,id:8889,x:30893,y:33464,varname:node_8889,prsc:2|A-9367-OUT,B-9367-OUT;n:type:ShaderForge.SFN_Multiply,id:3432,x:30893,y:33315,varname:node_3432,prsc:2|A-7933-OUT,B-7933-OUT;n:type:ShaderForge.SFN_Max,id:9367,x:30681,y:33464,varname:node_9367,prsc:2|A-3144-OUT,B-2435-OUT;n:type:ShaderForge.SFN_Min,id:7933,x:30681,y:33315,varname:node_7933,prsc:2|A-3144-OUT,B-2435-OUT;n:type:ShaderForge.SFN_Power,id:754,x:31772,y:33336,varname:node_754,prsc:2|VAL-7022-OUT,EXP-5929-OUT;n:type:ShaderForge.SFN_Vector1,id:5929,x:31556,y:33412,varname:node_5929,prsc:2,v1:5;n:type:ShaderForge.SFN_Multiply,id:5855,x:31957,y:33257,cmnt:Sun,varname:node_5855,prsc:2|A-2359-RGB,B-754-OUT,C-7055-OUT;n:type:ShaderForge.SFN_ValueProperty,id:7055,x:31772,y:33484,ptovrint:False,ptlb:Sun Intensity,ptin:_SunIntensity,varname:node_7055,prsc:2,glob:False,taghide:False,taghdr:False,tagprd:False,tagnsco:False,tagnrm:False,v1:2;n:type:ShaderForge.SFN_LightColor,id:2359,x:31772,y:33210,cmnt:Get color from directional light,varname:node_2359,prsc:2;proporder:8306-3839-2435-3144-7055;pass:END;sub:END;*/ Shader "Hidden/Shader Forge/PresetSky" { Properties { @@ -28,7 +29,9 @@ Shader "Hidden/Shader Forge/PresetSky" { CGPROGRAM #pragma vertex vert #pragma fragment frag + #ifndef UNITY_PASS_FORWARDBASE #define UNITY_PASS_FORWARDBASE + #endif //UNITY_PASS_FORWARDBASE #include "UnityCG.cginc" #pragma multi_compile_fwdbase #pragma only_renderers d3d9 d3d11 glcore gles @@ -50,7 +53,7 @@ Shader "Hidden/Shader Forge/PresetSky" { VertexOutput o = (VertexOutput)0; o.posWorld = mul(unity_ObjectToWorld, v.vertex); float3 lightColor = _LightColor0.rgb; - o.pos = UnityObjectToClipPos(v.vertex ); + o.pos = UnityObjectToClipPos( v.vertex ); return o; } float4 frag(VertexOutput i) : COLOR { diff --git a/Editor/InternalResources/ShaderPresets/PresetSky.shader.meta b/Editor/InternalResources/ShaderPresets/PresetSky.shader.meta index c8ac6a90..eb2591cd 100644 --- a/Editor/InternalResources/ShaderPresets/PresetSky.shader.meta +++ b/Editor/InternalResources/ShaderPresets/PresetSky.shader.meta @@ -1,9 +1,9 @@ fileFormatVersion: 2 guid: c5cb8effe2b770847ae224c5ad33c6f8 -timeCreated: 1489236736 -licenseType: Pro ShaderImporter: + externalObjects: {} defaultTextures: [] + nonModifiableTextures: [] userData: assetBundleName: assetBundleVariant: diff --git a/Editor/InternalResources/ShaderPresets/PresetSprite.shader b/Editor/InternalResources/ShaderPresets/PresetSprite.shader index 6766bd2c..78cfd535 100644 --- a/Editor/InternalResources/ShaderPresets/PresetSprite.shader +++ b/Editor/InternalResources/ShaderPresets/PresetSprite.shader @@ -1,7 +1,8 @@ -// Shader created with Shader Forge v1.38 +// Shader created with Shader Forge v1.42 // Shader Forge (c) Freya Holmer - http://www.acegikmo.com/shaderforge/ +// Enhanced by Antoine Guillon / Arkham Development - http://www.arkham-development.com/ // Note: Manually altering this data may prevent you from opening it in Shader Forge -/*SF_DATA;ver:1.38;sub:START;pass:START;ps:flbk:,iptp:1,cusa:True,bamd:0,cgin:,lico:1,lgpr:1,limd:0,spmd:1,trmd:0,grmd:0,uamb:True,mssp:True,bkdf:False,hqlp:False,rprd:False,enco:False,rmgx:True,imps:True,rpth:0,vtps:0,hqsc:True,nrmq:1,nrsp:0,vomd:0,spxs:True,tesm:0,olmd:1,culm:2,bsrc:0,bdst:7,dpts:2,wrdp:False,dith:0,atcv:False,rfrpo:True,rfrpn:Refraction,coma:15,ufog:False,aust:True,igpj:True,qofs:0,qpre:3,rntp:2,fgom:False,fgoc:False,fgod:False,fgor:False,fgmd:0,fgcr:0.5,fgcg:0.5,fgcb:0.5,fgca:1,fgde:0.01,fgrn:0,fgrf:300,stcl:True,atwp:True,stva:128,stmr:255,stmw:255,stcp:6,stps:0,stfa:0,stfz:0,ofsf:0,ofsu:0,f2p0:False,fnsp:False,fnfb:False,fsmp:False;n:type:ShaderForge.SFN_Final,id:1873,x:33229,y:32719,varname:node_1873,prsc:2|emission-1749-OUT,alpha-603-OUT;n:type:ShaderForge.SFN_Tex2d,id:4805,x:32551,y:32729,ptovrint:False,ptlb:MainTex,ptin:_MainTex,varname:_MainTex_copy,prsc:2,glob:False,taghide:False,taghdr:False,tagprd:True,tagnsco:False,tagnrm:False,ntxv:0,isnm:False;n:type:ShaderForge.SFN_Multiply,id:1086,x:32812,y:32818,cmnt:RGB,varname:node_1086,prsc:2|A-4805-RGB,B-5983-RGB,C-5376-RGB;n:type:ShaderForge.SFN_Color,id:5983,x:32551,y:32915,ptovrint:False,ptlb:Color,ptin:_Color,varname:_Color_copy,prsc:2,glob:False,taghide:False,taghdr:False,tagprd:False,tagnsco:False,tagnrm:False,c1:1,c2:1,c3:1,c4:1;n:type:ShaderForge.SFN_VertexColor,id:5376,x:32551,y:33079,varname:node_5376,prsc:2;n:type:ShaderForge.SFN_Multiply,id:1749,x:33025,y:32818,cmnt:Premultiply Alpha,varname:node_1749,prsc:2|A-1086-OUT,B-603-OUT;n:type:ShaderForge.SFN_Multiply,id:603,x:32812,y:32992,cmnt:A,varname:node_603,prsc:2|A-4805-A,B-5983-A,C-5376-A;proporder:4805-5983;pass:END;sub:END;*/ +/*SF_DATA;ver:1.42;sub:START;pass:START;ps:flbk:,iptp:1,cusa:True,bamd:0,cgin:,lico:1,lgpr:1,limd:0,spmd:1,trmd:0,grmd:0,uamb:True,mssp:True,bkdf:False,hqlp:False,rprd:False,enco:False,rmgx:True,imps:True,rpth:0,vtps:0,hqsc:True,nrmq:1,nrsp:0,vomd:0,spxs:True,tesm:0,olmd:1,culm:2,bsrc:0,bdst:7,dpts:2,wrdp:False,dith:0,atcv:False,rfrpo:True,rfrpn:Refraction,coma:15,ufog:False,aust:True,igpj:True,qofs:0,qpre:3,rntp:2,fgom:False,fgoc:False,fgod:False,fgor:False,fgmd:0,fgcr:0.5,fgcg:0.5,fgcb:0.5,fgca:1,fgde:0.01,fgrn:0,fgrf:300,stcl:True,atwp:True,stva:128,stmr:255,stmw:255,stcp:6,stps:0,stfa:0,stfz:0,ofsf:0,ofsu:0,f2p0:False,fnsp:False,fnfb:False,fsmp:False;n:type:ShaderForge.SFN_Final,id:1873,x:33229,y:32719,varname:node_1873,prsc:2|emission-1749-OUT,alpha-603-OUT;n:type:ShaderForge.SFN_Tex2d,id:4805,x:32551,y:32729,ptovrint:False,ptlb:MainTex,ptin:_MainTex,varname:_MainTex_copy,prsc:2,glob:False,taghide:False,taghdr:False,tagprd:True,tagnsco:False,tagnrm:False,ntxv:0,isnm:False;n:type:ShaderForge.SFN_Multiply,id:1086,x:32812,y:32818,cmnt:RGB,varname:node_1086,prsc:2|A-4805-RGB,B-5983-RGB,C-5376-RGB;n:type:ShaderForge.SFN_Color,id:5983,x:32551,y:32915,ptovrint:False,ptlb:Color,ptin:_Color,varname:_Color_copy,prsc:2,glob:False,taghide:False,taghdr:False,tagprd:False,tagnsco:False,tagnrm:False,c1:1,c2:1,c3:1,c4:1;n:type:ShaderForge.SFN_VertexColor,id:5376,x:32551,y:33079,varname:node_5376,prsc:2;n:type:ShaderForge.SFN_Multiply,id:1749,x:33025,y:32818,cmnt:Premultiply Alpha,varname:node_1749,prsc:2|A-1086-OUT,B-603-OUT;n:type:ShaderForge.SFN_Multiply,id:603,x:32812,y:32992,cmnt:A,varname:node_603,prsc:2|A-4805-A,B-5983-A,C-5376-A;proporder:4805-5983;pass:END;sub:END;*/ Shader "Hidden/Shader Forge/PresetSprite" { Properties { @@ -46,7 +47,9 @@ Shader "Hidden/Shader Forge/PresetSprite" { CGPROGRAM #pragma vertex vert #pragma fragment frag + #ifndef UNITY_PASS_FORWARDBASE #define UNITY_PASS_FORWARDBASE + #endif //UNITY_PASS_FORWARDBASE #pragma multi_compile _ PIXELSNAP_ON #include "UnityCG.cginc" #pragma multi_compile_fwdbase @@ -98,7 +101,9 @@ Shader "Hidden/Shader Forge/PresetSprite" { CGPROGRAM #pragma vertex vert #pragma fragment frag + #ifndef UNITY_PASS_SHADOWCASTER #define UNITY_PASS_SHADOWCASTER + #endif //UNITY_PASS_SHADOWCASTER #pragma multi_compile _ PIXELSNAP_ON #include "UnityCG.cginc" #include "Lighting.cginc" diff --git a/Editor/InternalResources/ShaderPresets/PresetSprite.shader.meta b/Editor/InternalResources/ShaderPresets/PresetSprite.shader.meta index 4fdfb551..c40e7074 100644 --- a/Editor/InternalResources/ShaderPresets/PresetSprite.shader.meta +++ b/Editor/InternalResources/ShaderPresets/PresetSprite.shader.meta @@ -1,9 +1,9 @@ fileFormatVersion: 2 guid: 3304156422545ea43a0f5c0968b97a63 -timeCreated: 1502811818 -licenseType: Pro ShaderImporter: + externalObjects: {} defaultTextures: [] + nonModifiableTextures: [] userData: assetBundleName: assetBundleVariant: diff --git a/Editor/InternalResources/ShaderPresets/PresetUnlit.shader b/Editor/InternalResources/ShaderPresets/PresetUnlit.shader index 949e4b3b..0128e4d1 100644 --- a/Editor/InternalResources/ShaderPresets/PresetUnlit.shader +++ b/Editor/InternalResources/ShaderPresets/PresetUnlit.shader @@ -1,7 +1,8 @@ -// Shader created with Shader Forge v1.35 +// Shader created with Shader Forge v1.42 // Shader Forge (c) Freya Holmer - http://www.acegikmo.com/shaderforge/ +// Enhanced by Antoine Guillon / Arkham Development - http://www.arkham-development.com/ // Note: Manually altering this data may prevent you from opening it in Shader Forge -/*SF_DATA;ver:1.35;sub:START;pass:START;ps:flbk:,iptp:0,cusa:False,bamd:0,lico:1,lgpr:1,limd:0,spmd:1,trmd:0,grmd:0,uamb:True,mssp:True,bkdf:False,hqlp:False,rprd:False,enco:False,rmgx:True,imps:True,rpth:0,vtps:0,hqsc:True,nrmq:1,nrsp:0,vomd:0,spxs:False,tesm:0,olmd:1,culm:0,bsrc:0,bdst:1,dpts:2,wrdp:True,dith:0,atcv:False,rfrpo:True,rfrpn:Refraction,coma:15,ufog:False,aust:True,igpj:False,qofs:0,qpre:1,rntp:1,fgom:False,fgoc:False,fgod:False,fgor:False,fgmd:0,fgcr:0.5,fgcg:0.5,fgcb:0.5,fgca:1,fgde:0.01,fgrn:0,fgrf:300,stcl:False,stva:128,stmr:255,stmw:255,stcp:6,stps:0,stfa:0,stfz:0,ofsf:0,ofsu:0,f2p0:False,fnsp:False,fnfb:False;n:type:ShaderForge.SFN_Final,id:3138,x:32719,y:32712,varname:node_3138,prsc:2|emission-7241-RGB;n:type:ShaderForge.SFN_Color,id:7241,x:32471,y:32812,ptovrint:False,ptlb:Color,ptin:_Color,varname:node_7241,prsc:2,glob:False,taghide:False,taghdr:False,tagprd:False,tagnsco:False,tagnrm:False,c1:0.07843138,c2:0.3921569,c3:0.7843137,c4:1;proporder:7241;pass:END;sub:END;*/ +/*SF_DATA;ver:1.42;sub:START;pass:START;ps:flbk:,iptp:0,cusa:False,bamd:0,cgin:,lico:1,lgpr:1,limd:0,spmd:1,trmd:0,grmd:0,uamb:True,mssp:True,bkdf:False,hqlp:False,rprd:False,enco:False,rmgx:True,imps:True,rpth:0,vtps:0,hqsc:True,nrmq:1,nrsp:0,vomd:0,spxs:False,tesm:0,olmd:1,culm:0,bsrc:0,bdst:1,dpts:2,wrdp:True,dith:0,atcv:False,rfrpo:True,rfrpn:Refraction,coma:15,ufog:False,aust:True,igpj:False,qofs:0,qpre:1,rntp:1,fgom:False,fgoc:False,fgod:False,fgor:False,fgmd:0,fgcr:0.5,fgcg:0.5,fgcb:0.5,fgca:1,fgde:0.01,fgrn:0,fgrf:300,stcl:False,atwp:False,stva:128,stmr:255,stmw:255,stcp:6,stps:0,stfa:0,stfz:0,ofsf:0,ofsu:0,f2p0:False,fnsp:False,fnfb:False,fsmp:False;n:type:ShaderForge.SFN_Final,id:3138,x:32719,y:32712,varname:node_3138,prsc:2|emission-7241-RGB;n:type:ShaderForge.SFN_Color,id:7241,x:32471,y:32812,ptovrint:False,ptlb:Color,ptin:_Color,varname:node_7241,prsc:2,glob:False,taghide:False,taghdr:False,tagprd:False,tagnsco:False,tagnrm:False,c1:0.07843138,c2:0.3921569,c3:0.7843137,c4:1;proporder:7241;pass:END;sub:END;*/ Shader "Hidden/Shader Forge/PresetUnlit" { Properties { @@ -21,7 +22,9 @@ Shader "Hidden/Shader Forge/PresetUnlit" { CGPROGRAM #pragma vertex vert #pragma fragment frag + #ifndef UNITY_PASS_FORWARDBASE #define UNITY_PASS_FORWARDBASE + #endif //UNITY_PASS_FORWARDBASE #include "UnityCG.cginc" #pragma multi_compile_fwdbase_fullshadows #pragma only_renderers d3d9 d3d11 glcore gles @@ -35,7 +38,7 @@ Shader "Hidden/Shader Forge/PresetUnlit" { }; VertexOutput vert (VertexInput v) { VertexOutput o = (VertexOutput)0; - o.pos = UnityObjectToClipPos(v.vertex ); + o.pos = UnityObjectToClipPos( v.vertex ); return o; } float4 frag(VertexOutput i) : COLOR { diff --git a/Editor/InternalResources/ShaderPresets/PresetUnlit.shader.meta b/Editor/InternalResources/ShaderPresets/PresetUnlit.shader.meta index 704113d8..21d542ce 100644 --- a/Editor/InternalResources/ShaderPresets/PresetUnlit.shader.meta +++ b/Editor/InternalResources/ShaderPresets/PresetUnlit.shader.meta @@ -1,9 +1,9 @@ fileFormatVersion: 2 guid: bb7f32a658dae4b4e855fa11222f1628 -timeCreated: 1489236743 -licenseType: Pro ShaderImporter: + externalObjects: {} defaultTextures: [] + nonModifiableTextures: [] userData: assetBundleName: assetBundleVariant: diff --git a/Examples/CustomLighting.shader b/Examples/CustomLighting.shader index 600ad3cf..b6febc5f 100644 --- a/Examples/CustomLighting.shader +++ b/Examples/CustomLighting.shader @@ -1,7 +1,8 @@ -// Shader created with Shader Forge v1.40 +// Shader created with Shader Forge v1.42 // Shader Forge (c) Freya Holmer - http://www.acegikmo.com/shaderforge/ +// Enhanced by Antoine Guillon / Arkham Development - http://www.arkham-development.com/ // Note: Manually altering this data may prevent you from opening it in Shader Forge -/*SF_DATA;ver:1.40;sub:START;pass:START;ps:flbk:,iptp:0,cusa:False,bamd:0,cgin:,lico:1,lgpr:1,limd:0,spmd:1,trmd:0,grmd:0,uamb:True,mssp:True,bkdf:True,hqlp:False,rprd:False,enco:False,rmgx:True,imps:True,rpth:0,vtps:0,hqsc:True,nrmq:1,nrsp:0,vomd:0,spxs:False,tesm:0,olmd:1,culm:0,bsrc:0,bdst:1,dpts:2,wrdp:True,dith:0,atcv:False,rfrpo:True,rfrpn:Refraction,coma:15,ufog:False,aust:True,igpj:False,qofs:0,qpre:1,rntp:1,fgom:False,fgoc:False,fgod:False,fgor:False,fgmd:0,fgcr:0.5,fgcg:0.5,fgcb:0.5,fgca:1,fgde:0.01,fgrn:0,fgrf:300,stcl:False,atwp:False,stva:128,stmr:255,stmw:255,stcp:6,stps:0,stfa:0,stfz:0,ofsf:0,ofsu:0,f2p0:False,fnsp:False,fnfb:False,fsmp:False;n:type:ShaderForge.SFN_Final,id:0,x:34330,y:31982,varname:node_0,prsc:2|normal-83-RGB,custl-64-OUT;n:type:ShaderForge.SFN_LightAttenuation,id:37,x:33872,y:32026,varname:node_37,prsc:2;n:type:ShaderForge.SFN_Dot,id:40,x:32931,y:32250,varname:node_40,prsc:2,dt:1|A-42-OUT,B-41-OUT;n:type:ShaderForge.SFN_NormalVector,id:41,x:32722,y:32344,prsc:2,pt:True;n:type:ShaderForge.SFN_LightVector,id:42,x:32722,y:32223,varname:node_42,prsc:2;n:type:ShaderForge.SFN_Dot,id:52,x:32931,y:32423,varname:node_52,prsc:2,dt:1|A-41-OUT,B-62-OUT;n:type:ShaderForge.SFN_Add,id:55,x:33872,y:32295,varname:node_55,prsc:2|A-84-OUT,B-187-RGB;n:type:ShaderForge.SFN_Power,id:58,x:33229,y:32558,cmnt:Specular Light,varname:node_58,prsc:2|VAL-52-OUT,EXP-244-OUT;n:type:ShaderForge.SFN_HalfVector,id:62,x:32722,y:32483,varname:node_62,prsc:2;n:type:ShaderForge.SFN_LightColor,id:63,x:33872,y:32155,varname:node_63,prsc:2;n:type:ShaderForge.SFN_Multiply,id:64,x:34106,y:32166,varname:node_64,prsc:2|A-37-OUT,B-63-RGB,C-8121-OUT;n:type:ShaderForge.SFN_Color,id:80,x:33368,y:32192,ptovrint:False,ptlb:Color,ptin:_Color,varname:_Color,prsc:2,glob:False,taghide:False,taghdr:False,tagprd:False,tagnsco:False,tagnrm:False,c1:0.6544118,c2:0.8426978,c3:1,c4:1;n:type:ShaderForge.SFN_Tex2d,id:82,x:33368,y:32002,ptovrint:False,ptlb:Diffuse,ptin:_Diffuse,varname:_Diffuse,prsc:2,glob:False,taghide:False,taghdr:False,tagprd:False,tagnsco:False,tagnrm:False,tex:e77c8304f206a7043b58e3aa1ee2b730,ntxv:2,isnm:False|UVIN-272-UVOUT;n:type:ShaderForge.SFN_Tex2d,id:83,x:33368,y:31817,ptovrint:False,ptlb:Normals,ptin:_Normals,varname:_Normals,prsc:2,glob:False,taghide:False,taghdr:False,tagprd:False,tagnsco:False,tagnrm:False,tex:dff878613857997448b879796c93d426,ntxv:3,isnm:True|UVIN-272-UVOUT;n:type:ShaderForge.SFN_Multiply,id:84,x:33573,y:32160,cmnt:Diffuse Light,varname:node_84,prsc:2|A-82-RGB,B-80-RGB,C-40-OUT;n:type:ShaderForge.SFN_AmbientLight,id:187,x:33573,y:32280,varname:node_187,prsc:2;n:type:ShaderForge.SFN_Slider,id:239,x:32141,y:32578,ptovrint:False,ptlb:Gloss,ptin:_Gloss,varname:_Gloss,prsc:2,glob:False,taghide:False,taghdr:False,tagprd:False,tagnsco:False,tagnrm:False,min:0,cur:0.3742047,max:1;n:type:ShaderForge.SFN_Add,id:240,x:32722,y:32640,varname:node_240,prsc:2|A-242-OUT,B-241-OUT;n:type:ShaderForge.SFN_Vector1,id:241,x:32554,y:32728,varname:node_241,prsc:2,v1:1;n:type:ShaderForge.SFN_Multiply,id:242,x:32554,y:32578,varname:node_242,prsc:2|A-239-OUT,B-243-OUT;n:type:ShaderForge.SFN_Vector1,id:243,x:32298,y:32660,varname:node_243,prsc:2,v1:10;n:type:ShaderForge.SFN_Exp,id:244,x:32893,y:32640,varname:node_244,prsc:2,et:1|IN-240-OUT;n:type:ShaderForge.SFN_TexCoord,id:272,x:33125,y:31930,varname:node_272,prsc:2,uv:0,uaff:False;n:type:ShaderForge.SFN_Tex2d,id:3968,x:33368,y:32367,ptovrint:False,ptlb:Specular,ptin:_Specular,varname:node_3968,prsc:2,glob:False,taghide:False,taghdr:False,tagprd:False,tagnsco:False,tagnrm:False,tex:754067f16ed6147498c4f9a2722bb147,ntxv:0,isnm:False|UVIN-272-UVOUT;n:type:ShaderForge.SFN_Multiply,id:4226,x:33573,y:32490,varname:node_4226,prsc:2|A-3968-R,B-58-OUT;n:type:ShaderForge.SFN_Add,id:8121,x:33837,y:32474,varname:node_8121,prsc:2|A-55-OUT,B-4226-OUT;proporder:80-82-83-239-3968;pass:END;sub:END;*/ +/*SF_DATA;ver:1.42;sub:START;pass:START;ps:flbk:,iptp:0,cusa:False,bamd:0,cgin:,lico:1,lgpr:1,limd:0,spmd:1,trmd:0,grmd:0,uamb:True,mssp:True,bkdf:True,hqlp:False,rprd:False,enco:False,rmgx:True,imps:True,rpth:0,vtps:0,hqsc:True,nrmq:1,nrsp:0,vomd:0,spxs:False,tesm:0,olmd:1,culm:0,bsrc:0,bdst:1,dpts:2,wrdp:True,dith:0,atcv:False,rfrpo:True,rfrpn:Refraction,coma:15,ufog:False,aust:True,igpj:False,qofs:0,qpre:1,rntp:1,fgom:False,fgoc:False,fgod:False,fgor:False,fgmd:0,fgcr:0.5,fgcg:0.5,fgcb:0.5,fgca:1,fgde:0.01,fgrn:0,fgrf:300,stcl:False,atwp:False,stva:128,stmr:255,stmw:255,stcp:6,stps:0,stfa:0,stfz:0,ofsf:0,ofsu:0,f2p0:False,fnsp:False,fnfb:False,fsmp:False;n:type:ShaderForge.SFN_Final,id:0,x:34330,y:31982,varname:node_0,prsc:2|normal-83-RGB,custl-64-OUT;n:type:ShaderForge.SFN_LightAttenuation,id:37,x:33872,y:32026,varname:node_37,prsc:2;n:type:ShaderForge.SFN_Dot,id:40,x:32931,y:32250,varname:node_40,prsc:2,dt:1|A-42-OUT,B-41-OUT;n:type:ShaderForge.SFN_NormalVector,id:41,x:32722,y:32344,prsc:2,pt:True;n:type:ShaderForge.SFN_LightVector,id:42,x:32722,y:32223,varname:node_42,prsc:2;n:type:ShaderForge.SFN_Dot,id:52,x:32931,y:32423,varname:node_52,prsc:2,dt:1|A-41-OUT,B-62-OUT;n:type:ShaderForge.SFN_Add,id:55,x:33872,y:32295,varname:node_55,prsc:2|A-84-OUT,B-187-RGB;n:type:ShaderForge.SFN_Power,id:58,x:33229,y:32558,cmnt:Specular Light,varname:node_58,prsc:2|VAL-52-OUT,EXP-244-OUT;n:type:ShaderForge.SFN_HalfVector,id:62,x:32722,y:32483,varname:node_62,prsc:2;n:type:ShaderForge.SFN_LightColor,id:63,x:33872,y:32155,varname:node_63,prsc:2;n:type:ShaderForge.SFN_Multiply,id:64,x:34106,y:32166,varname:node_64,prsc:2|A-37-OUT,B-63-RGB,C-8121-OUT;n:type:ShaderForge.SFN_Color,id:80,x:33368,y:32192,ptovrint:False,ptlb:Color,ptin:_Color,varname:_Color,prsc:2,glob:False,taghide:False,taghdr:False,tagprd:False,tagnsco:False,tagnrm:False,c1:0.6544118,c2:0.8426978,c3:1,c4:1;n:type:ShaderForge.SFN_Tex2d,id:82,x:33368,y:32002,ptovrint:False,ptlb:Diffuse,ptin:_Diffuse,varname:_Diffuse,prsc:2,glob:False,taghide:False,taghdr:False,tagprd:False,tagnsco:False,tagnrm:False,tex:e77c8304f206a7043b58e3aa1ee2b730,ntxv:2,isnm:False|UVIN-272-UVOUT;n:type:ShaderForge.SFN_Tex2d,id:83,x:33368,y:31817,ptovrint:False,ptlb:Normals,ptin:_Normals,varname:_Normals,prsc:2,glob:False,taghide:False,taghdr:False,tagprd:False,tagnsco:False,tagnrm:False,tex:dff878613857997448b879796c93d426,ntxv:3,isnm:True|UVIN-272-UVOUT;n:type:ShaderForge.SFN_Multiply,id:84,x:33573,y:32160,cmnt:Diffuse Light,varname:node_84,prsc:2|A-82-RGB,B-80-RGB,C-40-OUT;n:type:ShaderForge.SFN_AmbientLight,id:187,x:33573,y:32280,varname:node_187,prsc:2;n:type:ShaderForge.SFN_Slider,id:239,x:32141,y:32578,ptovrint:False,ptlb:Gloss,ptin:_Gloss,varname:_Gloss,prsc:2,glob:False,taghide:False,taghdr:False,tagprd:False,tagnsco:False,tagnrm:False,min:0,cur:0.3742047,max:1;n:type:ShaderForge.SFN_Add,id:240,x:32722,y:32640,varname:node_240,prsc:2|A-242-OUT,B-241-OUT;n:type:ShaderForge.SFN_Vector1,id:241,x:32554,y:32728,varname:node_241,prsc:2,v1:1;n:type:ShaderForge.SFN_Multiply,id:242,x:32554,y:32578,varname:node_242,prsc:2|A-239-OUT,B-243-OUT;n:type:ShaderForge.SFN_Vector1,id:243,x:32298,y:32660,varname:node_243,prsc:2,v1:10;n:type:ShaderForge.SFN_Exp,id:244,x:32893,y:32640,varname:node_244,prsc:2,et:1|IN-240-OUT;n:type:ShaderForge.SFN_TexCoord,id:272,x:33125,y:31930,varname:node_272,prsc:2,uv:0,uaff:False;n:type:ShaderForge.SFN_Tex2d,id:3968,x:33368,y:32367,ptovrint:False,ptlb:Specular,ptin:_Specular,varname:node_3968,prsc:2,glob:False,taghide:False,taghdr:False,tagprd:False,tagnsco:False,tagnrm:False,tex:754067f16ed6147498c4f9a2722bb147,ntxv:0,isnm:False|UVIN-272-UVOUT;n:type:ShaderForge.SFN_Multiply,id:4226,x:33573,y:32490,varname:node_4226,prsc:2|A-3968-R,B-58-OUT;n:type:ShaderForge.SFN_Add,id:8121,x:33837,y:32474,varname:node_8121,prsc:2|A-55-OUT,B-4226-OUT;proporder:80-82-83-239-3968;pass:END;sub:END;*/ Shader "Shader Forge/Examples/Custom Lighting" { Properties { @@ -25,7 +26,9 @@ Shader "Shader Forge/Examples/Custom Lighting" { CGPROGRAM #pragma vertex vert #pragma fragment frag + #ifndef UNITY_PASS_FORWARDBASE #define UNITY_PASS_FORWARDBASE + #endif //UNITY_PASS_FORWARDBASE #include "UnityCG.cginc" #include "AutoLight.cginc" #include "Lighting.cginc" @@ -50,7 +53,7 @@ Shader "Shader Forge/Examples/Custom Lighting" { float3 normalDir : TEXCOORD2; float3 tangentDir : TEXCOORD3; float3 bitangentDir : TEXCOORD4; - LIGHTING_COORDS(5,6) + UNITY_LIGHTING_COORDS(5,6) }; VertexOutput vert (VertexInput v) { VertexOutput o = (VertexOutput)0; @@ -61,7 +64,7 @@ Shader "Shader Forge/Examples/Custom Lighting" { o.posWorld = mul(unity_ObjectToWorld, v.vertex); float3 lightColor = _LightColor0.rgb; o.pos = UnityObjectToClipPos( v.vertex ); - TRANSFER_VERTEX_TO_FRAGMENT(o) + UNITY_TRANSFER_LIGHTING(o, float2(0,0)); return o; } float4 frag(VertexOutput i) : COLOR { @@ -75,12 +78,10 @@ Shader "Shader Forge/Examples/Custom Lighting" { float3 lightColor = _LightColor0.rgb; float3 halfDirection = normalize(viewDirection+lightDirection); ////// Lighting: - float attenuation = LIGHT_ATTENUATION(i); + UNITY_LIGHT_ATTENUATION(attenuation, i, i.posWorld.xyz); float4 _Diffuse_var = tex2D(_Diffuse,TRANSFORM_TEX(i.uv0, _Diffuse)); - float node_40 = max(0,dot(lightDirection,normalDirection)); float4 _Specular_var = tex2D(_Specular,TRANSFORM_TEX(i.uv0, _Specular)); - float node_58 = pow(max(0,dot(normalDirection,halfDirection)),exp2(((_Gloss*10.0)+1.0))); // Specular Light - float3 finalColor = (attenuation*_LightColor0.rgb*(((_Diffuse_var.rgb*_Color.rgb*node_40)+UNITY_LIGHTMODEL_AMBIENT.rgb)+(_Specular_var.r*node_58))); + float3 finalColor = (attenuation*_LightColor0.rgb*(((_Diffuse_var.rgb*_Color.rgb*max(0,dot(lightDirection,normalDirection)))+UNITY_LIGHTMODEL_AMBIENT.rgb)+(_Specular_var.r*pow(max(0,dot(normalDirection,halfDirection)),exp2(((_Gloss*10.0)+1.0)))))); return fixed4(finalColor,1); } ENDCG @@ -96,7 +97,9 @@ Shader "Shader Forge/Examples/Custom Lighting" { CGPROGRAM #pragma vertex vert #pragma fragment frag + #ifndef UNITY_PASS_FORWARDADD #define UNITY_PASS_FORWARDADD + #endif //UNITY_PASS_FORWARDADD #include "UnityCG.cginc" #include "AutoLight.cginc" #include "Lighting.cginc" @@ -121,7 +124,7 @@ Shader "Shader Forge/Examples/Custom Lighting" { float3 normalDir : TEXCOORD2; float3 tangentDir : TEXCOORD3; float3 bitangentDir : TEXCOORD4; - LIGHTING_COORDS(5,6) + UNITY_LIGHTING_COORDS(5,6) }; VertexOutput vert (VertexInput v) { VertexOutput o = (VertexOutput)0; @@ -132,7 +135,7 @@ Shader "Shader Forge/Examples/Custom Lighting" { o.posWorld = mul(unity_ObjectToWorld, v.vertex); float3 lightColor = _LightColor0.rgb; o.pos = UnityObjectToClipPos( v.vertex ); - TRANSFER_VERTEX_TO_FRAGMENT(o) + UNITY_TRANSFER_LIGHTING(o, float2(0,0)); return o; } float4 frag(VertexOutput i) : COLOR { @@ -146,12 +149,10 @@ Shader "Shader Forge/Examples/Custom Lighting" { float3 lightColor = _LightColor0.rgb; float3 halfDirection = normalize(viewDirection+lightDirection); ////// Lighting: - float attenuation = LIGHT_ATTENUATION(i); + UNITY_LIGHT_ATTENUATION(attenuation, i, i.posWorld.xyz); float4 _Diffuse_var = tex2D(_Diffuse,TRANSFORM_TEX(i.uv0, _Diffuse)); - float node_40 = max(0,dot(lightDirection,normalDirection)); float4 _Specular_var = tex2D(_Specular,TRANSFORM_TEX(i.uv0, _Specular)); - float node_58 = pow(max(0,dot(normalDirection,halfDirection)),exp2(((_Gloss*10.0)+1.0))); // Specular Light - float3 finalColor = (attenuation*_LightColor0.rgb*(((_Diffuse_var.rgb*_Color.rgb*node_40)+UNITY_LIGHTMODEL_AMBIENT.rgb)+(_Specular_var.r*node_58))); + float3 finalColor = (attenuation*_LightColor0.rgb*(((_Diffuse_var.rgb*_Color.rgb*max(0,dot(lightDirection,normalDirection)))+UNITY_LIGHTMODEL_AMBIENT.rgb)+(_Specular_var.r*pow(max(0,dot(normalDirection,halfDirection)),exp2(((_Gloss*10.0)+1.0)))))); return fixed4(finalColor * 1,0); } ENDCG diff --git a/Examples/LightWrapping.shader b/Examples/LightWrapping.shader index 27a142fb..578122d3 100644 --- a/Examples/LightWrapping.shader +++ b/Examples/LightWrapping.shader @@ -1,7 +1,8 @@ -// Shader created with Shader Forge v1.38 -// Shader Forge (c) Neat Corporation / Joachim Holmer - http://www.acegikmo.com/shaderforge/ +// Shader created with Shader Forge v1.42 +// Shader Forge (c) Freya Holmer - http://www.acegikmo.com/shaderforge/ +// Enhanced by Antoine Guillon / Arkham Development - http://www.arkham-development.com/ // Note: Manually altering this data may prevent you from opening it in Shader Forge -/*SF_DATA;ver:1.38;sub:START;pass:START;ps:flbk:,iptp:0,cusa:False,bamd:0,cgin:,lico:1,lgpr:1,limd:3,spmd:1,trmd:0,grmd:0,uamb:True,mssp:True,bkdf:True,hqlp:False,rprd:True,enco:False,rmgx:True,imps:True,rpth:0,vtps:0,hqsc:True,nrmq:1,nrsp:0,vomd:0,spxs:False,tesm:0,olmd:1,culm:0,bsrc:0,bdst:1,dpts:2,wrdp:True,dith:0,atcv:False,rfrpo:True,rfrpn:Refraction,coma:15,ufog:False,aust:True,igpj:False,qofs:0,qpre:1,rntp:1,fgom:False,fgoc:False,fgod:False,fgor:False,fgmd:0,fgcr:0.5,fgcg:0.5,fgcb:0.5,fgca:1,fgde:0.01,fgrn:0,fgrf:300,stcl:False,atwp:False,stva:128,stmr:255,stmw:255,stcp:6,stps:0,stfa:0,stfz:0,ofsf:0,ofsu:0,f2p0:False,fnsp:False,fnfb:False,fsmp:False;n:type:ShaderForge.SFN_Final,id:0,x:33560,y:32563,varname:node_0,prsc:2|diff-270-RGB,spec-1906-OUT,gloss-8495-OUT,lwrap-272-RGB;n:type:ShaderForge.SFN_Color,id:270,x:33250,y:32393,ptovrint:False,ptlb:Diffuse,ptin:_Diffuse,varname:_Diffuse,prsc:2,glob:False,taghide:False,taghdr:False,tagprd:False,tagnsco:False,tagnrm:False,c1:0.9117647,c2:0.8760425,c3:0.8179066,c4:1;n:type:ShaderForge.SFN_Color,id:272,x:33250,y:32735,ptovrint:False,ptlb:Light Wrapping,ptin:_LightWrapping,varname:_LightWrapping,prsc:2,glob:False,taghide:False,taghdr:False,tagprd:False,tagnsco:False,tagnrm:False,c1:0.9058824,c2:0.4941176,c3:0.4901961,c4:1;n:type:ShaderForge.SFN_Vector1,id:1906,x:33250,y:32541,varname:node_1906,prsc:2,v1:0;n:type:ShaderForge.SFN_Slider,id:8495,x:33093,y:32628,ptovrint:False,ptlb:Gloss,ptin:_Gloss,varname:node_8495,prsc:2,glob:False,taghide:False,taghdr:False,tagprd:False,tagnsco:False,tagnrm:False,min:0,cur:0,max:1;proporder:272-270-8495;pass:END;sub:END;*/ +/*SF_DATA;ver:1.42;sub:START;pass:START;ps:flbk:,iptp:0,cusa:False,bamd:0,cgin:,lico:1,lgpr:1,limd:3,spmd:1,trmd:0,grmd:0,uamb:True,mssp:True,bkdf:True,hqlp:False,rprd:True,enco:False,rmgx:True,imps:True,rpth:0,vtps:0,hqsc:True,nrmq:1,nrsp:0,vomd:0,spxs:False,tesm:0,olmd:1,culm:0,bsrc:0,bdst:1,dpts:2,wrdp:True,dith:0,atcv:False,rfrpo:True,rfrpn:Refraction,coma:15,ufog:False,aust:True,igpj:False,qofs:0,qpre:1,rntp:1,fgom:False,fgoc:False,fgod:False,fgor:False,fgmd:0,fgcr:0.5,fgcg:0.5,fgcb:0.5,fgca:1,fgde:0.01,fgrn:0,fgrf:300,stcl:False,atwp:False,stva:128,stmr:255,stmw:255,stcp:6,stps:0,stfa:0,stfz:0,ofsf:0,ofsu:0,f2p0:False,fnsp:False,fnfb:False,fsmp:False;n:type:ShaderForge.SFN_Final,id:0,x:33560,y:32563,varname:node_0,prsc:2|diff-270-RGB,spec-1906-OUT,gloss-8495-OUT,lwrap-272-RGB;n:type:ShaderForge.SFN_Color,id:270,x:33250,y:32393,ptovrint:False,ptlb:Diffuse,ptin:_Diffuse,varname:_Diffuse,prsc:2,glob:False,taghide:False,taghdr:False,tagprd:False,tagnsco:False,tagnrm:False,c1:0.9117647,c2:0.8760425,c3:0.8179066,c4:1;n:type:ShaderForge.SFN_Color,id:272,x:33250,y:32735,ptovrint:False,ptlb:Light Wrapping,ptin:_LightWrapping,varname:_LightWrapping,prsc:2,glob:False,taghide:False,taghdr:False,tagprd:False,tagnsco:False,tagnrm:False,c1:0.9058824,c2:0.4941176,c3:0.4901961,c4:1;n:type:ShaderForge.SFN_Vector1,id:1906,x:33250,y:32541,varname:node_1906,prsc:2,v1:0;n:type:ShaderForge.SFN_Slider,id:8495,x:33093,y:32628,ptovrint:False,ptlb:Gloss,ptin:_Gloss,varname:node_8495,prsc:2,glob:False,taghide:False,taghdr:False,tagprd:False,tagnsco:False,tagnrm:False,min:0,cur:0,max:1;proporder:272-270-8495;pass:END;sub:END;*/ Shader "Shader Forge/Examples/LightWrapping" { Properties { @@ -23,7 +24,9 @@ Shader "Shader Forge/Examples/LightWrapping" { CGPROGRAM #pragma vertex vert #pragma fragment frag + #ifndef UNITY_PASS_FORWARDBASE #define UNITY_PASS_FORWARDBASE + #endif //UNITY_PASS_FORWARDBASE #define SHOULD_SAMPLE_SH ( defined (LIGHTMAP_OFF) && defined(DYNAMICLIGHTMAP_OFF) ) #define _GLOSSYENV 1 #include "UnityCG.cginc" @@ -55,7 +58,7 @@ Shader "Shader Forge/Examples/LightWrapping" { float3 normalDir : TEXCOORD3; float3 tangentDir : TEXCOORD4; float3 bitangentDir : TEXCOORD5; - LIGHTING_COORDS(6,7) + UNITY_LIGHTING_COORDS(6,7) #if defined(LIGHTMAP_ON) || defined(UNITY_SHOULD_SAMPLE_SH) float4 ambientOrLightmapUV : TEXCOORD8; #endif @@ -78,7 +81,7 @@ Shader "Shader Forge/Examples/LightWrapping" { o.posWorld = mul(unity_ObjectToWorld, v.vertex); float3 lightColor = _LightColor0.rgb; o.pos = UnityObjectToClipPos( v.vertex ); - TRANSFER_VERTEX_TO_FRAGMENT(o) + UNITY_TRANSFER_LIGHTING(o, v.texcoord1); return o; } float4 frag(VertexOutput i) : COLOR { @@ -91,7 +94,7 @@ Shader "Shader Forge/Examples/LightWrapping" { float3 lightColor = _LightColor0.rgb; float3 halfDirection = normalize(viewDirection+lightDirection); ////// Lighting: - float attenuation = LIGHT_ATTENUATION(i); + UNITY_LIGHT_ATTENUATION(attenuation, i, i.posWorld.xyz); float3 attenColor = attenuation * _LightColor0.xyz; float Pi = 3.141592654; float InvPi = 0.31830988618; @@ -204,7 +207,9 @@ Shader "Shader Forge/Examples/LightWrapping" { CGPROGRAM #pragma vertex vert #pragma fragment frag + #ifndef UNITY_PASS_FORWARDADD #define UNITY_PASS_FORWARDADD + #endif //UNITY_PASS_FORWARDADD #define SHOULD_SAMPLE_SH ( defined (LIGHTMAP_OFF) && defined(DYNAMICLIGHTMAP_OFF) ) #define _GLOSSYENV 1 #include "UnityCG.cginc" @@ -236,7 +241,7 @@ Shader "Shader Forge/Examples/LightWrapping" { float3 normalDir : TEXCOORD3; float3 tangentDir : TEXCOORD4; float3 bitangentDir : TEXCOORD5; - LIGHTING_COORDS(6,7) + UNITY_LIGHTING_COORDS(6,7) }; VertexOutput vert (VertexInput v) { VertexOutput o = (VertexOutput)0; @@ -248,7 +253,7 @@ Shader "Shader Forge/Examples/LightWrapping" { o.posWorld = mul(unity_ObjectToWorld, v.vertex); float3 lightColor = _LightColor0.rgb; o.pos = UnityObjectToClipPos( v.vertex ); - TRANSFER_VERTEX_TO_FRAGMENT(o) + UNITY_TRANSFER_LIGHTING(o, v.texcoord1); return o; } float4 frag(VertexOutput i) : COLOR { @@ -260,7 +265,7 @@ Shader "Shader Forge/Examples/LightWrapping" { float3 lightColor = _LightColor0.rgb; float3 halfDirection = normalize(viewDirection+lightDirection); ////// Lighting: - float attenuation = LIGHT_ATTENUATION(i); + UNITY_LIGHT_ATTENUATION(attenuation, i, i.posWorld.xyz); float3 attenColor = attenuation * _LightColor0.xyz; float Pi = 3.141592654; float InvPi = 0.31830988618; @@ -320,7 +325,9 @@ Shader "Shader Forge/Examples/LightWrapping" { CGPROGRAM #pragma vertex vert #pragma fragment frag + #ifndef UNITY_PASS_META 1 #define UNITY_PASS_META 1 + #endif UNITY_PASS_META 1 #define SHOULD_SAMPLE_SH ( defined (LIGHTMAP_OFF) && defined(DYNAMICLIGHTMAP_OFF) ) #define _GLOSSYENV 1 #include "UnityCG.cginc" diff --git a/Examples/LightWrapping.shader.meta b/Examples/LightWrapping.shader.meta index 448e8aa7..7f704f51 100644 --- a/Examples/LightWrapping.shader.meta +++ b/Examples/LightWrapping.shader.meta @@ -1,9 +1,9 @@ fileFormatVersion: 2 guid: 12dc48c8a56df784b93db42c5d582f3e -timeCreated: 1503327504 -licenseType: Store ShaderImporter: + externalObjects: {} defaultTextures: [] + nonModifiableTextures: [] userData: assetBundleName: assetBundleVariant: diff --git a/Examples/Parallax.shader b/Examples/Parallax.shader index 1de42496..0b0521f1 100644 --- a/Examples/Parallax.shader +++ b/Examples/Parallax.shader @@ -1,7 +1,8 @@ -// Shader created with Shader Forge v1.40 +// Shader created with Shader Forge v1.42 // Shader Forge (c) Freya Holmer - http://www.acegikmo.com/shaderforge/ +// Enhanced by Antoine Guillon / Arkham Development - http://www.arkham-development.com/ // Note: Manually altering this data may prevent you from opening it in Shader Forge -/*SF_DATA;ver:1.40;sub:START;pass:START;ps:flbk:,iptp:0,cusa:False,bamd:0,cgin:,lico:1,lgpr:1,limd:3,spmd:1,trmd:0,grmd:0,uamb:True,mssp:True,bkdf:True,hqlp:True,rprd:True,enco:False,rmgx:True,imps:True,rpth:0,vtps:0,hqsc:True,nrmq:1,nrsp:0,vomd:0,spxs:False,tesm:0,olmd:1,culm:0,bsrc:0,bdst:1,dpts:2,wrdp:True,dith:0,atcv:False,rfrpo:True,rfrpn:Refraction,coma:15,ufog:True,aust:True,igpj:False,qofs:0,qpre:1,rntp:1,fgom:False,fgoc:False,fgod:False,fgor:False,fgmd:0,fgcr:0.5,fgcg:0.5,fgcb:0.5,fgca:1,fgde:0.01,fgrn:0,fgrf:300,stcl:False,atwp:False,stva:128,stmr:255,stmw:255,stcp:6,stps:0,stfa:0,stfz:0,ofsf:0,ofsu:0,f2p0:False,fnsp:False,fnfb:False,fsmp:False;n:type:ShaderForge.SFN_Final,id:0,x:33740,y:32624,varname:node_0,prsc:2|diff-123-RGB,spec-46-OUT,gloss-42-OUT,normal-47-RGB;n:type:ShaderForge.SFN_Multiply,id:35,x:32898,y:32736,varname:node_35,prsc:2|A-37-UVOUT,B-36-OUT;n:type:ShaderForge.SFN_Vector1,id:36,x:32701,y:32828,varname:node_36,prsc:2,v1:8;n:type:ShaderForge.SFN_TexCoord,id:37,x:32701,y:32682,varname:node_37,prsc:2,uv:0,uaff:False;n:type:ShaderForge.SFN_Vector1,id:42,x:33559,y:32729,varname:node_42,prsc:2,v1:0.7;n:type:ShaderForge.SFN_Vector1,id:46,x:33559,y:32673,varname:node_46,prsc:2,v1:0;n:type:ShaderForge.SFN_Tex2d,id:47,x:33559,y:32821,ptovrint:False,ptlb:Normal,ptin:_Normal,varname:_Normal,prsc:2,glob:False,taghide:False,taghdr:False,tagprd:False,tagnsco:False,tagnrm:False,ntxv:3,isnm:True|UVIN-110-UVOUT;n:type:ShaderForge.SFN_Parallax,id:110,x:33299,y:32714,varname:node_110,prsc:2|UVIN-35-OUT,HEI-111-A,DEP-112-OUT;n:type:ShaderForge.SFN_Tex2d,id:111,x:33095,y:32608,varname:node_574,prsc:2,ntxv:0,isnm:False|UVIN-35-OUT,TEX-113-TEX;n:type:ShaderForge.SFN_Vector1,id:112,x:33095,y:32793,varname:node_112,prsc:2,v1:0.15;n:type:ShaderForge.SFN_Tex2dAsset,id:113,x:32898,y:32571,ptovrint:False,ptlb:AO (RGB) Height (A),ptin:_AORGBHeightA,varname:_AORGBHeightA,glob:False,taghide:False,taghdr:False,tagprd:False,tagnsco:False,tagnrm:False,ntxv:0,isnm:False;n:type:ShaderForge.SFN_Tex2d,id:123,x:33559,y:32544,varname:node_577,prsc:2,ntxv:0,isnm:False|UVIN-110-UVOUT,TEX-113-TEX;proporder:113-47;pass:END;sub:END;*/ +/*SF_DATA;ver:1.42;sub:START;pass:START;ps:flbk:,iptp:0,cusa:False,bamd:0,cgin:,lico:1,lgpr:1,limd:3,spmd:1,trmd:0,grmd:0,uamb:True,mssp:True,bkdf:True,hqlp:True,rprd:True,enco:False,rmgx:True,imps:True,rpth:0,vtps:0,hqsc:True,nrmq:1,nrsp:0,vomd:0,spxs:False,tesm:0,olmd:1,culm:0,bsrc:0,bdst:1,dpts:2,wrdp:True,dith:0,atcv:False,rfrpo:True,rfrpn:Refraction,coma:15,ufog:True,aust:True,igpj:False,qofs:0,qpre:1,rntp:1,fgom:False,fgoc:False,fgod:False,fgor:False,fgmd:0,fgcr:0.5,fgcg:0.5,fgcb:0.5,fgca:1,fgde:0.01,fgrn:0,fgrf:300,stcl:False,atwp:False,stva:128,stmr:255,stmw:255,stcp:6,stps:0,stfa:0,stfz:0,ofsf:0,ofsu:0,f2p0:False,fnsp:False,fnfb:False,fsmp:False;n:type:ShaderForge.SFN_Final,id:0,x:33740,y:32624,varname:node_0,prsc:2|diff-123-RGB,spec-46-OUT,gloss-42-OUT,normal-47-RGB;n:type:ShaderForge.SFN_Multiply,id:35,x:32898,y:32736,varname:node_35,prsc:2|A-37-UVOUT,B-36-OUT;n:type:ShaderForge.SFN_Vector1,id:36,x:32701,y:32828,varname:node_36,prsc:2,v1:8;n:type:ShaderForge.SFN_TexCoord,id:37,x:32701,y:32682,varname:node_37,prsc:2,uv:0,uaff:False;n:type:ShaderForge.SFN_Vector1,id:42,x:33559,y:32729,varname:node_42,prsc:2,v1:0.7;n:type:ShaderForge.SFN_Vector1,id:46,x:33559,y:32673,varname:node_46,prsc:2,v1:0;n:type:ShaderForge.SFN_Tex2d,id:47,x:33559,y:32821,ptovrint:False,ptlb:Normal,ptin:_Normal,varname:_Normal,prsc:2,glob:False,taghide:False,taghdr:False,tagprd:False,tagnsco:False,tagnrm:False,ntxv:3,isnm:True|UVIN-110-UVOUT;n:type:ShaderForge.SFN_Parallax,id:110,x:33299,y:32714,varname:node_110,prsc:2|UVIN-35-OUT,HEI-111-A,DEP-112-OUT;n:type:ShaderForge.SFN_Tex2d,id:111,x:33095,y:32608,varname:node_574,prsc:2,ntxv:0,isnm:False|UVIN-35-OUT,TEX-113-TEX;n:type:ShaderForge.SFN_Vector1,id:112,x:33095,y:32793,varname:node_112,prsc:2,v1:0.15;n:type:ShaderForge.SFN_Tex2dAsset,id:113,x:32898,y:32571,ptovrint:False,ptlb:AO (RGB) Height (A),ptin:_AORGBHeightA,varname:_AORGBHeightA,glob:False,taghide:False,taghdr:False,tagprd:False,tagnsco:False,tagnrm:False,ntxv:0,isnm:False;n:type:ShaderForge.SFN_Tex2d,id:123,x:33559,y:32544,varname:node_577,prsc:2,ntxv:0,isnm:False|UVIN-110-UVOUT,TEX-113-TEX;proporder:113-47;pass:END;sub:END;*/ Shader "Shader Forge/Examples/Parallax" { Properties { @@ -23,7 +24,9 @@ Shader "Shader Forge/Examples/Parallax" { CGPROGRAM #pragma vertex vert #pragma fragment frag + #ifndef UNITY_PASS_FORWARDBASE #define UNITY_PASS_FORWARDBASE + #endif //UNITY_PASS_FORWARDBASE #define SHOULD_SAMPLE_SH ( defined (LIGHTMAP_OFF) && defined(DYNAMICLIGHTMAP_OFF) ) #define _GLOSSYENV 1 #include "UnityCG.cginc" @@ -57,7 +60,7 @@ Shader "Shader Forge/Examples/Parallax" { float3 normalDir : TEXCOORD4; float3 tangentDir : TEXCOORD5; float3 bitangentDir : TEXCOORD6; - LIGHTING_COORDS(7,8) + UNITY_LIGHTING_COORDS(7,8) UNITY_FOG_COORDS(9) #if defined(LIGHTMAP_ON) || defined(UNITY_SHOULD_SAMPLE_SH) float4 ambientOrLightmapUV : TEXCOORD10; @@ -82,7 +85,7 @@ Shader "Shader Forge/Examples/Parallax" { float3 lightColor = _LightColor0.rgb; o.pos = UnityObjectToClipPos( v.vertex ); UNITY_TRANSFER_FOG(o,o.pos); - TRANSFER_VERTEX_TO_FRAGMENT(o) + UNITY_TRANSFER_LIGHTING(o, v.texcoord1); return o; } float4 frag(VertexOutput i) : COLOR { @@ -100,7 +103,7 @@ Shader "Shader Forge/Examples/Parallax" { float3 lightColor = _LightColor0.rgb; float3 halfDirection = normalize(viewDirection+lightDirection); ////// Lighting: - float attenuation = LIGHT_ATTENUATION(i); + UNITY_LIGHT_ATTENUATION(attenuation, i, i.posWorld.xyz); float3 attenColor = attenuation * _LightColor0.xyz; float Pi = 3.141592654; float InvPi = 0.31830988618; @@ -212,7 +215,9 @@ Shader "Shader Forge/Examples/Parallax" { CGPROGRAM #pragma vertex vert #pragma fragment frag + #ifndef UNITY_PASS_FORWARDADD #define UNITY_PASS_FORWARDADD + #endif //UNITY_PASS_FORWARDADD #define SHOULD_SAMPLE_SH ( defined (LIGHTMAP_OFF) && defined(DYNAMICLIGHTMAP_OFF) ) #define _GLOSSYENV 1 #include "UnityCG.cginc" @@ -246,7 +251,7 @@ Shader "Shader Forge/Examples/Parallax" { float3 normalDir : TEXCOORD4; float3 tangentDir : TEXCOORD5; float3 bitangentDir : TEXCOORD6; - LIGHTING_COORDS(7,8) + UNITY_LIGHTING_COORDS(7,8) UNITY_FOG_COORDS(9) }; VertexOutput vert (VertexInput v) { @@ -261,7 +266,7 @@ Shader "Shader Forge/Examples/Parallax" { float3 lightColor = _LightColor0.rgb; o.pos = UnityObjectToClipPos( v.vertex ); UNITY_TRANSFER_FOG(o,o.pos); - TRANSFER_VERTEX_TO_FRAGMENT(o) + UNITY_TRANSFER_LIGHTING(o, v.texcoord1); return o; } float4 frag(VertexOutput i) : COLOR { @@ -278,7 +283,7 @@ Shader "Shader Forge/Examples/Parallax" { float3 lightColor = _LightColor0.rgb; float3 halfDirection = normalize(viewDirection+lightDirection); ////// Lighting: - float attenuation = LIGHT_ATTENUATION(i); + UNITY_LIGHT_ATTENUATION(attenuation, i, i.posWorld.xyz); float3 attenColor = attenuation * _LightColor0.xyz; float Pi = 3.141592654; float InvPi = 0.31830988618; @@ -337,7 +342,9 @@ Shader "Shader Forge/Examples/Parallax" { CGPROGRAM #pragma vertex vert #pragma fragment frag + #ifndef UNITY_PASS_META 1 #define UNITY_PASS_META 1 + #endif UNITY_PASS_META 1 #define SHOULD_SAMPLE_SH ( defined (LIGHTMAP_OFF) && defined(DYNAMICLIGHTMAP_OFF) ) #define _GLOSSYENV 1 #include "UnityCG.cginc" diff --git a/Examples/PixelRotator.shader b/Examples/PixelRotator.shader index cd4b0f8f..39cc3133 100644 --- a/Examples/PixelRotator.shader +++ b/Examples/PixelRotator.shader @@ -1,7 +1,8 @@ -// Shader created with Shader Forge v1.38 -// Shader Forge (c) Neat Corporation / Joachim Holmer - http://www.acegikmo.com/shaderforge/ +// Shader created with Shader Forge v1.42 +// Shader Forge (c) Freya Holmer - http://www.acegikmo.com/shaderforge/ +// Enhanced by Antoine Guillon / Arkham Development - http://www.arkham-development.com/ // Note: Manually altering this data may prevent you from opening it in Shader Forge -/*SF_DATA;ver:1.38;sub:START;pass:START;ps:flbk:,iptp:0,cusa:False,bamd:0,cgin:,lico:1,lgpr:1,limd:2,spmd:1,trmd:0,grmd:0,uamb:True,mssp:True,bkdf:False,hqlp:False,rprd:False,enco:False,rmgx:True,imps:True,rpth:0,vtps:0,hqsc:True,nrmq:1,nrsp:0,vomd:0,spxs:False,tesm:0,olmd:1,culm:0,bsrc:0,bdst:1,dpts:2,wrdp:True,dith:0,atcv:False,rfrpo:True,rfrpn:Refraction,coma:15,ufog:True,aust:True,igpj:False,qofs:0,qpre:1,rntp:1,fgom:False,fgoc:False,fgod:False,fgor:False,fgmd:0,fgcr:0.5,fgcg:0.5,fgcb:0.5,fgca:1,fgde:0.01,fgrn:0,fgrf:300,stcl:False,atwp:False,stva:128,stmr:255,stmw:255,stcp:6,stps:0,stfa:0,stfz:0,ofsf:0,ofsu:0,f2p0:False,fnsp:False,fnfb:False,fsmp:False;n:type:ShaderForge.SFN_Final,id:1,x:35749,y:31801,varname:node_1,prsc:2|diff-748-OUT;n:type:ShaderForge.SFN_TexCoord,id:544,x:32941,y:31716,varname:node_544,prsc:2,uv:0,uaff:False;n:type:ShaderForge.SFN_Multiply,id:545,x:33168,y:31794,varname:node_545,prsc:2|A-544-UVOUT,B-546-OUT;n:type:ShaderForge.SFN_Vector1,id:546,x:32941,y:31928,varname:node_546,prsc:2,v1:10;n:type:ShaderForge.SFN_Frac,id:556,x:33395,y:31872,varname:node_556,prsc:2|IN-545-OUT;n:type:ShaderForge.SFN_RemapRange,id:559,x:33622,y:31873,varname:node_559,prsc:2,frmn:0,frmx:1,tomn:-1,tomx:1|IN-556-OUT;n:type:ShaderForge.SFN_Length,id:561,x:34530,y:32037,varname:node_561,prsc:2|IN-585-OUT;n:type:ShaderForge.SFN_Floor,id:562,x:34984,y:32043,varname:node_562,prsc:2|IN-607-OUT;n:type:ShaderForge.SFN_Rotator,id:563,x:34076,y:32056,varname:node_563,prsc:2|UVIN-764-OUT,PIV-574-OUT;n:type:ShaderForge.SFN_Vector2,id:574,x:33849,y:32159,varname:node_574,prsc:2,v1:0,v2:0;n:type:ShaderForge.SFN_Multiply,id:585,x:34303,y:31993,varname:node_585,prsc:2|A-586-OUT,B-563-UVOUT;n:type:ShaderForge.SFN_Vector2,id:586,x:34076,y:31906,varname:node_586,prsc:2,v1:1,v2:3;n:type:ShaderForge.SFN_Clamp01,id:607,x:34757,y:31992,varname:node_607,prsc:2|IN-561-OUT;n:type:ShaderForge.SFN_Vector1,id:641,x:33622,y:32093,varname:node_641,prsc:2,v1:8;n:type:ShaderForge.SFN_Floor,id:736,x:34076,y:31720,varname:node_736,prsc:2|IN-545-OUT;n:type:ShaderForge.SFN_Noise,id:737,x:34530,y:31533,varname:node_737,prsc:2|XY-736-OUT;n:type:ShaderForge.SFN_Noise,id:739,x:34530,y:31701,varname:node_739,prsc:2|XY-743-OUT;n:type:ShaderForge.SFN_Noise,id:741,x:34757,y:31824,varname:node_741,prsc:2|XY-744-OUT;n:type:ShaderForge.SFN_Add,id:743,x:34303,y:31825,varname:node_743,prsc:2|A-736-OUT,B-546-OUT;n:type:ShaderForge.SFN_Add,id:744,x:34530,y:31869,varname:node_744,prsc:2|A-743-OUT,B-546-OUT;n:type:ShaderForge.SFN_Append,id:745,x:34757,y:31656,varname:node_745,prsc:2|A-737-OUT,B-739-OUT;n:type:ShaderForge.SFN_Append,id:746,x:34984,y:31707,varname:node_746,prsc:2|A-745-OUT,B-741-OUT;n:type:ShaderForge.SFN_OneMinus,id:747,x:35211,y:31991,varname:node_747,prsc:2|IN-562-OUT;n:type:ShaderForge.SFN_Multiply,id:748,x:35438,y:31899,varname:node_748,prsc:2|A-753-OUT,B-747-OUT;n:type:ShaderForge.SFN_Power,id:753,x:35211,y:31823,varname:node_753,prsc:2|VAL-746-OUT,EXP-754-OUT;n:type:ShaderForge.SFN_Vector1,id:754,x:34984,y:31909,varname:node_754,prsc:2,v1:2;n:type:ShaderForge.SFN_Posterize,id:764,x:33849,y:31973,varname:node_764,prsc:2|IN-559-OUT,STPS-641-OUT;pass:END;sub:END;*/ +/*SF_DATA;ver:1.42;sub:START;pass:START;ps:flbk:,iptp:0,cusa:False,bamd:0,cgin:,lico:1,lgpr:1,limd:2,spmd:1,trmd:0,grmd:0,uamb:True,mssp:True,bkdf:False,hqlp:False,rprd:False,enco:False,rmgx:True,imps:True,rpth:0,vtps:0,hqsc:True,nrmq:1,nrsp:0,vomd:0,spxs:False,tesm:0,olmd:1,culm:0,bsrc:0,bdst:1,dpts:2,wrdp:True,dith:0,atcv:False,rfrpo:True,rfrpn:Refraction,coma:15,ufog:True,aust:True,igpj:False,qofs:0,qpre:1,rntp:1,fgom:False,fgoc:False,fgod:False,fgor:False,fgmd:0,fgcr:0.5,fgcg:0.5,fgcb:0.5,fgca:1,fgde:0.01,fgrn:0,fgrf:300,stcl:False,atwp:False,stva:128,stmr:255,stmw:255,stcp:6,stps:0,stfa:0,stfz:0,ofsf:0,ofsu:0,f2p0:False,fnsp:False,fnfb:False,fsmp:False;n:type:ShaderForge.SFN_Final,id:1,x:35749,y:31801,varname:node_1,prsc:2|diff-748-OUT;n:type:ShaderForge.SFN_TexCoord,id:544,x:32941,y:31716,varname:node_544,prsc:2,uv:0,uaff:False;n:type:ShaderForge.SFN_Multiply,id:545,x:33168,y:31794,varname:node_545,prsc:2|A-544-UVOUT,B-546-OUT;n:type:ShaderForge.SFN_Vector1,id:546,x:32941,y:31928,varname:node_546,prsc:2,v1:10;n:type:ShaderForge.SFN_Frac,id:556,x:33395,y:31872,varname:node_556,prsc:2|IN-545-OUT;n:type:ShaderForge.SFN_RemapRange,id:559,x:33622,y:31873,varname:node_559,prsc:2,frmn:0,frmx:1,tomn:-1,tomx:1|IN-556-OUT;n:type:ShaderForge.SFN_Length,id:561,x:34530,y:32037,varname:node_561,prsc:2|IN-585-OUT;n:type:ShaderForge.SFN_Floor,id:562,x:34984,y:32043,varname:node_562,prsc:2|IN-607-OUT;n:type:ShaderForge.SFN_Rotator,id:563,x:34076,y:32056,varname:node_563,prsc:2|UVIN-764-OUT,PIV-574-OUT;n:type:ShaderForge.SFN_Vector2,id:574,x:33849,y:32159,varname:node_574,prsc:2,v1:0,v2:0;n:type:ShaderForge.SFN_Multiply,id:585,x:34303,y:31993,varname:node_585,prsc:2|A-586-OUT,B-563-UVOUT;n:type:ShaderForge.SFN_Vector2,id:586,x:34076,y:31906,varname:node_586,prsc:2,v1:1,v2:3;n:type:ShaderForge.SFN_Clamp01,id:607,x:34757,y:31992,varname:node_607,prsc:2|IN-561-OUT;n:type:ShaderForge.SFN_Vector1,id:641,x:33622,y:32093,varname:node_641,prsc:2,v1:8;n:type:ShaderForge.SFN_Floor,id:736,x:34076,y:31720,varname:node_736,prsc:2|IN-545-OUT;n:type:ShaderForge.SFN_Noise,id:737,x:34530,y:31533,varname:node_737,prsc:2|XY-736-OUT;n:type:ShaderForge.SFN_Noise,id:739,x:34530,y:31701,varname:node_739,prsc:2|XY-743-OUT;n:type:ShaderForge.SFN_Noise,id:741,x:34757,y:31824,varname:node_741,prsc:2|XY-744-OUT;n:type:ShaderForge.SFN_Add,id:743,x:34303,y:31825,varname:node_743,prsc:2|A-736-OUT,B-546-OUT;n:type:ShaderForge.SFN_Add,id:744,x:34530,y:31869,varname:node_744,prsc:2|A-743-OUT,B-546-OUT;n:type:ShaderForge.SFN_Append,id:745,x:34757,y:31656,varname:node_745,prsc:2|A-737-OUT,B-739-OUT;n:type:ShaderForge.SFN_Append,id:746,x:34984,y:31707,varname:node_746,prsc:2|A-745-OUT,B-741-OUT;n:type:ShaderForge.SFN_OneMinus,id:747,x:35211,y:31991,varname:node_747,prsc:2|IN-562-OUT;n:type:ShaderForge.SFN_Multiply,id:748,x:35438,y:31899,varname:node_748,prsc:2|A-753-OUT,B-747-OUT;n:type:ShaderForge.SFN_Power,id:753,x:35211,y:31823,varname:node_753,prsc:2|VAL-746-OUT,EXP-754-OUT;n:type:ShaderForge.SFN_Vector1,id:754,x:34984,y:31909,varname:node_754,prsc:2,v1:2;n:type:ShaderForge.SFN_Posterize,id:764,x:33849,y:31973,varname:node_764,prsc:2|IN-559-OUT,STPS-641-OUT;pass:END;sub:END;*/ Shader "Shader Forge/Examples/Pixel Rotator" { Properties { @@ -20,7 +21,9 @@ Shader "Shader Forge/Examples/Pixel Rotator" { CGPROGRAM #pragma vertex vert #pragma fragment frag + #ifndef UNITY_PASS_FORWARDBASE #define UNITY_PASS_FORWARDBASE + #endif //UNITY_PASS_FORWARDBASE #include "UnityCG.cginc" #include "AutoLight.cginc" #pragma multi_compile_fwdbase_fullshadows @@ -38,7 +41,7 @@ Shader "Shader Forge/Examples/Pixel Rotator" { float2 uv0 : TEXCOORD0; float4 posWorld : TEXCOORD1; float3 normalDir : TEXCOORD2; - LIGHTING_COORDS(3,4) + UNITY_LIGHTING_COORDS(3,4) UNITY_FOG_COORDS(5) }; VertexOutput vert (VertexInput v) { @@ -49,7 +52,7 @@ Shader "Shader Forge/Examples/Pixel Rotator" { float3 lightColor = _LightColor0.rgb; o.pos = UnityObjectToClipPos( v.vertex ); UNITY_TRANSFER_FOG(o,o.pos); - TRANSFER_VERTEX_TO_FRAGMENT(o) + UNITY_TRANSFER_LIGHTING(o, float2(0,0)); return o; } float4 frag(VertexOutput i) : COLOR { @@ -58,7 +61,7 @@ Shader "Shader Forge/Examples/Pixel Rotator" { float3 lightDirection = normalize(_WorldSpaceLightPos0.xyz); float3 lightColor = _LightColor0.rgb; ////// Lighting: - float attenuation = LIGHT_ATTENUATION(i); + UNITY_LIGHT_ATTENUATION(attenuation, i, i.posWorld.xyz); float3 attenColor = attenuation * _LightColor0.xyz; /////// Diffuse: float NdotL = max(0.0,dot( normalDirection, lightDirection )); @@ -79,8 +82,8 @@ Shader "Shader Forge/Examples/Pixel Rotator" { float2 node_741_skew = node_744 + 0.2127+node_744.x*0.3713*node_744.y; float2 node_741_rnd = 4.789*sin(489.123*(node_741_skew)); float node_741 = frac(node_741_rnd.x*node_741_rnd.y*(1+node_741_skew.x)); - float4 node_1817 = _Time; - float node_563_ang = node_1817.g; + float4 node_9374 = _Time; + float node_563_ang = node_9374.g; float node_563_spd = 1.0; float node_563_cos = cos(node_563_spd*node_563_ang); float node_563_sin = sin(node_563_spd*node_563_ang); @@ -108,7 +111,9 @@ Shader "Shader Forge/Examples/Pixel Rotator" { CGPROGRAM #pragma vertex vert #pragma fragment frag + #ifndef UNITY_PASS_FORWARDADD #define UNITY_PASS_FORWARDADD + #endif //UNITY_PASS_FORWARDADD #include "UnityCG.cginc" #include "AutoLight.cginc" #pragma multi_compile_fwdadd_fullshadows @@ -126,7 +131,7 @@ Shader "Shader Forge/Examples/Pixel Rotator" { float2 uv0 : TEXCOORD0; float4 posWorld : TEXCOORD1; float3 normalDir : TEXCOORD2; - LIGHTING_COORDS(3,4) + UNITY_LIGHTING_COORDS(3,4) UNITY_FOG_COORDS(5) }; VertexOutput vert (VertexInput v) { @@ -137,7 +142,7 @@ Shader "Shader Forge/Examples/Pixel Rotator" { float3 lightColor = _LightColor0.rgb; o.pos = UnityObjectToClipPos( v.vertex ); UNITY_TRANSFER_FOG(o,o.pos); - TRANSFER_VERTEX_TO_FRAGMENT(o) + UNITY_TRANSFER_LIGHTING(o, float2(0,0)); return o; } float4 frag(VertexOutput i) : COLOR { @@ -146,7 +151,7 @@ Shader "Shader Forge/Examples/Pixel Rotator" { float3 lightDirection = normalize(lerp(_WorldSpaceLightPos0.xyz, _WorldSpaceLightPos0.xyz - i.posWorld.xyz,_WorldSpaceLightPos0.w)); float3 lightColor = _LightColor0.rgb; ////// Lighting: - float attenuation = LIGHT_ATTENUATION(i); + UNITY_LIGHT_ATTENUATION(attenuation, i, i.posWorld.xyz); float3 attenColor = attenuation * _LightColor0.xyz; /////// Diffuse: float NdotL = max(0.0,dot( normalDirection, lightDirection )); @@ -165,8 +170,8 @@ Shader "Shader Forge/Examples/Pixel Rotator" { float2 node_741_skew = node_744 + 0.2127+node_744.x*0.3713*node_744.y; float2 node_741_rnd = 4.789*sin(489.123*(node_741_skew)); float node_741 = frac(node_741_rnd.x*node_741_rnd.y*(1+node_741_skew.x)); - float4 node_1127 = _Time; - float node_563_ang = node_1127.g; + float4 node_1046 = _Time; + float node_563_ang = node_1046.g; float node_563_spd = 1.0; float node_563_cos = cos(node_563_spd*node_563_ang); float node_563_sin = sin(node_563_spd*node_563_ang); diff --git a/Examples/PixelRotator.shader.meta b/Examples/PixelRotator.shader.meta index c0d8ac55..5c7b8ef3 100644 --- a/Examples/PixelRotator.shader.meta +++ b/Examples/PixelRotator.shader.meta @@ -1,9 +1,9 @@ fileFormatVersion: 2 guid: 3c2ff98dd53924d0b85358d999cf6890 -timeCreated: 1503327511 -licenseType: Store ShaderImporter: + externalObjects: {} defaultTextures: [] + nonModifiableTextures: [] userData: assetBundleName: assetBundleVariant: diff --git a/Examples/Refraction.shader b/Examples/Refraction.shader index bf7d34bc..651f86c7 100644 --- a/Examples/Refraction.shader +++ b/Examples/Refraction.shader @@ -1,7 +1,8 @@ -// Shader created with Shader Forge v1.38 -// Shader Forge (c) Neat Corporation / Joachim Holmer - http://www.acegikmo.com/shaderforge/ +// Shader created with Shader Forge v1.42 +// Shader Forge (c) Freya Holmer - http://www.acegikmo.com/shaderforge/ +// Enhanced by Antoine Guillon / Arkham Development - http://www.arkham-development.com/ // Note: Manually altering this data may prevent you from opening it in Shader Forge -/*SF_DATA;ver:1.38;sub:START;pass:START;ps:flbk:,iptp:0,cusa:False,bamd:0,cgin:,lico:1,lgpr:1,limd:3,spmd:1,trmd:0,grmd:0,uamb:False,mssp:True,bkdf:False,hqlp:False,rprd:True,enco:False,rmgx:True,imps:True,rpth:0,vtps:0,hqsc:True,nrmq:0,nrsp:0,vomd:0,spxs:False,tesm:0,olmd:1,culm:2,bsrc:3,bdst:7,dpts:2,wrdp:False,dith:0,atcv:False,rfrpo:True,rfrpn:Refraction,coma:15,ufog:False,aust:False,igpj:False,qofs:0,qpre:3,rntp:2,fgom:False,fgoc:False,fgod:False,fgor:False,fgmd:0,fgcr:0.5,fgcg:0.5,fgcb:0.5,fgca:1,fgde:0.01,fgrn:0,fgrf:300,stcl:False,atwp:False,stva:128,stmr:255,stmw:255,stcp:6,stps:0,stfa:0,stfz:0,ofsf:0,ofsu:0,f2p0:False,fnsp:False,fnfb:False,fsmp:False;n:type:ShaderForge.SFN_Final,id:0,x:34414,y:32442,varname:node_0,prsc:2|diff-5610-OUT,spec-75-OUT,gloss-76-OUT,normal-215-OUT,transm-29-OUT,lwrap-29-OUT,alpha-22-OUT,refract-14-OUT;n:type:ShaderForge.SFN_Slider,id:13,x:33580,y:32752,ptovrint:False,ptlb:Refraction Intensity,ptin:_RefractionIntensity,varname:_RefractionIntensity,prsc:2,glob:False,taghide:False,taghdr:False,tagprd:False,tagnsco:False,tagnrm:False,min:0,cur:0.1,max:1;n:type:ShaderForge.SFN_Multiply,id:14,x:34145,y:32724,varname:node_14,prsc:2|A-16-OUT,B-220-OUT;n:type:ShaderForge.SFN_ComponentMask,id:16,x:33975,y:32651,varname:node_16,prsc:2,cc1:0,cc2:1,cc3:-1,cc4:-1|IN-25-RGB;n:type:ShaderForge.SFN_Vector1,id:22,x:34145,y:32651,varname:node_22,prsc:2,v1:0.3;n:type:ShaderForge.SFN_Tex2d,id:25,x:33737,y:32566,ptovrint:False,ptlb:Refraction,ptin:_Refraction,varname:_Refraction,prsc:2,glob:False,taghide:False,taghdr:False,tagprd:False,tagnsco:False,tagnrm:False,tex:bbab0a6f7bae9cf42bf057d8ee2755f6,ntxv:3,isnm:True|UVIN-27-OUT;n:type:ShaderForge.SFN_TexCoord,id:26,x:33379,y:32505,varname:node_26,prsc:2,uv:0,uaff:False;n:type:ShaderForge.SFN_Multiply,id:27,x:33550,y:32566,varname:node_27,prsc:2|A-26-UVOUT,B-28-OUT;n:type:ShaderForge.SFN_Vector1,id:28,x:33379,y:32662,varname:node_28,prsc:2,v1:1;n:type:ShaderForge.SFN_Vector1,id:29,x:34145,y:32577,varname:node_29,prsc:2,v1:1;n:type:ShaderForge.SFN_Vector1,id:75,x:34145,y:32430,varname:node_75,prsc:2,v1:0;n:type:ShaderForge.SFN_Vector1,id:76,x:34145,y:32486,varname:node_76,prsc:2,v1:0.8;n:type:ShaderForge.SFN_Lerp,id:215,x:33975,y:32524,varname:node_215,prsc:2|A-216-OUT,B-25-RGB,T-13-OUT;n:type:ShaderForge.SFN_Vector3,id:216,x:33737,y:32445,varname:node_216,prsc:2,v1:0,v2:0,v3:1;n:type:ShaderForge.SFN_Multiply,id:220,x:33975,y:32803,varname:node_220,prsc:2|A-13-OUT,B-221-OUT;n:type:ShaderForge.SFN_Vector1,id:221,x:33737,y:32831,varname:node_221,prsc:2,v1:0.2;n:type:ShaderForge.SFN_Vector1,id:5610,x:34145,y:32366,varname:node_5610,prsc:2,v1:0.2;proporder:13-25;pass:END;sub:END;*/ +/*SF_DATA;ver:1.42;sub:START;pass:START;ps:flbk:,iptp:0,cusa:False,bamd:0,cgin:,lico:1,lgpr:1,limd:3,spmd:1,trmd:0,grmd:0,uamb:False,mssp:True,bkdf:False,hqlp:False,rprd:True,enco:False,rmgx:True,imps:True,rpth:0,vtps:0,hqsc:True,nrmq:0,nrsp:0,vomd:0,spxs:False,tesm:0,olmd:1,culm:2,bsrc:3,bdst:7,dpts:2,wrdp:False,dith:0,atcv:False,rfrpo:True,rfrpn:Refraction,coma:15,ufog:False,aust:False,igpj:False,qofs:0,qpre:3,rntp:2,fgom:False,fgoc:False,fgod:False,fgor:False,fgmd:0,fgcr:0.5,fgcg:0.5,fgcb:0.5,fgca:1,fgde:0.01,fgrn:0,fgrf:300,stcl:False,atwp:False,stva:128,stmr:255,stmw:255,stcp:6,stps:0,stfa:0,stfz:0,ofsf:0,ofsu:0,f2p0:False,fnsp:False,fnfb:False,fsmp:False;n:type:ShaderForge.SFN_Final,id:0,x:34414,y:32442,varname:node_0,prsc:2|diff-5610-OUT,spec-75-OUT,gloss-76-OUT,normal-215-OUT,transm-29-OUT,lwrap-29-OUT,alpha-22-OUT,refract-14-OUT;n:type:ShaderForge.SFN_Slider,id:13,x:33580,y:32752,ptovrint:False,ptlb:Refraction Intensity,ptin:_RefractionIntensity,varname:_RefractionIntensity,prsc:2,glob:False,taghide:False,taghdr:False,tagprd:False,tagnsco:False,tagnrm:False,min:0,cur:0.1,max:1;n:type:ShaderForge.SFN_Multiply,id:14,x:34145,y:32724,varname:node_14,prsc:2|A-16-OUT,B-220-OUT;n:type:ShaderForge.SFN_ComponentMask,id:16,x:33975,y:32651,varname:node_16,prsc:2,cc1:0,cc2:1,cc3:-1,cc4:-1|IN-25-RGB;n:type:ShaderForge.SFN_Vector1,id:22,x:34145,y:32651,varname:node_22,prsc:2,v1:0.3;n:type:ShaderForge.SFN_Tex2d,id:25,x:33737,y:32566,ptovrint:False,ptlb:Refraction,ptin:_Refraction,varname:_Refraction,prsc:2,glob:False,taghide:False,taghdr:False,tagprd:False,tagnsco:False,tagnrm:False,ntxv:3,isnm:True|UVIN-27-OUT;n:type:ShaderForge.SFN_TexCoord,id:26,x:33379,y:32505,varname:node_26,prsc:2,uv:0,uaff:False;n:type:ShaderForge.SFN_Multiply,id:27,x:33550,y:32566,varname:node_27,prsc:2|A-26-UVOUT,B-28-OUT;n:type:ShaderForge.SFN_Vector1,id:28,x:33379,y:32662,varname:node_28,prsc:2,v1:1;n:type:ShaderForge.SFN_Vector1,id:29,x:34145,y:32577,varname:node_29,prsc:2,v1:1;n:type:ShaderForge.SFN_Vector1,id:75,x:34145,y:32430,varname:node_75,prsc:2,v1:0;n:type:ShaderForge.SFN_Vector1,id:76,x:34145,y:32486,varname:node_76,prsc:2,v1:0.8;n:type:ShaderForge.SFN_Lerp,id:215,x:33975,y:32524,varname:node_215,prsc:2|A-216-OUT,B-25-RGB,T-13-OUT;n:type:ShaderForge.SFN_Vector3,id:216,x:33737,y:32445,varname:node_216,prsc:2,v1:0,v2:0,v3:1;n:type:ShaderForge.SFN_Multiply,id:220,x:33975,y:32803,varname:node_220,prsc:2|A-13-OUT,B-221-OUT;n:type:ShaderForge.SFN_Vector1,id:221,x:33737,y:32831,varname:node_221,prsc:2,v1:0.2;n:type:ShaderForge.SFN_Vector1,id:5610,x:34145,y:32366,varname:node_5610,prsc:2,v1:0.2;proporder:13-25;pass:END;sub:END;*/ Shader "Shader Forge/Examples/Refraction" { Properties { @@ -27,7 +28,9 @@ Shader "Shader Forge/Examples/Refraction" { CGPROGRAM #pragma vertex vert #pragma fragment frag + #ifndef UNITY_PASS_FORWARDBASE #define UNITY_PASS_FORWARDBASE + #endif //UNITY_PASS_FORWARDBASE #define _GLOSSYENV 1 #include "UnityCG.cginc" #include "AutoLight.cginc" @@ -53,7 +56,7 @@ Shader "Shader Forge/Examples/Refraction" { float3 tangentDir : TEXCOORD3; float3 bitangentDir : TEXCOORD4; float4 projPos : TEXCOORD5; - LIGHTING_COORDS(6,7) + UNITY_LIGHTING_COORDS(6,7) }; VertexOutput vert (VertexInput v) { VertexOutput o = (VertexOutput)0; @@ -66,7 +69,7 @@ Shader "Shader Forge/Examples/Refraction" { o.pos = UnityObjectToClipPos( v.vertex ); o.projPos = ComputeScreenPos (o.pos); COMPUTE_EYEDEPTH(o.projPos.z); - TRANSFER_VERTEX_TO_FRAGMENT(o) + UNITY_TRANSFER_LIGHTING(o, float2(0,0)); return o; } float4 frag(VertexOutput i, float facing : VFACE) : COLOR { @@ -85,7 +88,7 @@ Shader "Shader Forge/Examples/Refraction" { float3 lightColor = _LightColor0.rgb; float3 halfDirection = normalize(viewDirection+lightDirection); ////// Lighting: - float attenuation = LIGHT_ATTENUATION(i); + UNITY_LIGHT_ATTENUATION(attenuation, i, i.posWorld.xyz); float3 attenColor = attenuation * _LightColor0.xyz; float Pi = 3.141592654; float InvPi = 0.31830988618; @@ -194,7 +197,9 @@ Shader "Shader Forge/Examples/Refraction" { CGPROGRAM #pragma vertex vert #pragma fragment frag + #ifndef UNITY_PASS_FORWARDADD #define UNITY_PASS_FORWARDADD + #endif //UNITY_PASS_FORWARDADD #define _GLOSSYENV 1 #include "UnityCG.cginc" #include "AutoLight.cginc" @@ -220,7 +225,7 @@ Shader "Shader Forge/Examples/Refraction" { float3 tangentDir : TEXCOORD3; float3 bitangentDir : TEXCOORD4; float4 projPos : TEXCOORD5; - LIGHTING_COORDS(6,7) + UNITY_LIGHTING_COORDS(6,7) }; VertexOutput vert (VertexInput v) { VertexOutput o = (VertexOutput)0; @@ -233,7 +238,7 @@ Shader "Shader Forge/Examples/Refraction" { o.pos = UnityObjectToClipPos( v.vertex ); o.projPos = ComputeScreenPos (o.pos); COMPUTE_EYEDEPTH(o.projPos.z); - TRANSFER_VERTEX_TO_FRAGMENT(o) + UNITY_TRANSFER_LIGHTING(o, float2(0,0)); return o; } float4 frag(VertexOutput i, float facing : VFACE) : COLOR { @@ -251,7 +256,7 @@ Shader "Shader Forge/Examples/Refraction" { float3 lightColor = _LightColor0.rgb; float3 halfDirection = normalize(viewDirection+lightDirection); ////// Lighting: - float attenuation = LIGHT_ATTENUATION(i); + UNITY_LIGHT_ATTENUATION(attenuation, i, i.posWorld.xyz); float3 attenColor = attenuation * _LightColor0.xyz; float Pi = 3.141592654; float InvPi = 0.31830988618; @@ -315,7 +320,9 @@ Shader "Shader Forge/Examples/Refraction" { CGPROGRAM #pragma vertex vert #pragma fragment frag + #ifndef UNITY_PASS_SHADOWCASTER #define UNITY_PASS_SHADOWCASTER + #endif //UNITY_PASS_SHADOWCASTER #define _GLOSSYENV 1 #include "UnityCG.cginc" #include "Lighting.cginc" diff --git a/Examples/Refraction.shader.meta b/Examples/Refraction.shader.meta index 17d0e5f1..2f962ac3 100644 --- a/Examples/Refraction.shader.meta +++ b/Examples/Refraction.shader.meta @@ -1,10 +1,9 @@ fileFormatVersion: 2 guid: 6562ed1722964fc4fa4eba1d756e19b7 -timeCreated: 1502814920 -licenseType: Store ShaderImporter: - defaultTextures: - - _Refraction: {fileID: 2800000, guid: bbab0a6f7bae9cf42bf057d8ee2755f6, type: 3} + externalObjects: {} + defaultTextures: [] + nonModifiableTextures: [] userData: assetBundleName: assetBundleVariant: diff --git a/Examples/TessellationDisplacement.shader b/Examples/TessellationDisplacement.shader index d4255d8b..cd6dc67e 100644 --- a/Examples/TessellationDisplacement.shader +++ b/Examples/TessellationDisplacement.shader @@ -1,7 +1,8 @@ -// Shader created with Shader Forge v1.38 -// Shader Forge (c) Neat Corporation / Joachim Holmer - http://www.acegikmo.com/shaderforge/ +// Shader created with Shader Forge v1.42 +// Shader Forge (c) Freya Holmer - http://www.acegikmo.com/shaderforge/ +// Enhanced by Antoine Guillon / Arkham Development - http://www.arkham-development.com/ // Note: Manually altering this data may prevent you from opening it in Shader Forge -/*SF_DATA;ver:1.38;sub:START;pass:START;ps:flbk:,iptp:0,cusa:False,bamd:0,cgin:,lico:1,lgpr:1,limd:1,spmd:1,trmd:0,grmd:0,uamb:True,mssp:True,bkdf:True,hqlp:False,rprd:True,enco:False,rmgx:True,imps:True,rpth:0,vtps:0,hqsc:True,nrmq:1,nrsp:0,vomd:0,spxs:False,tesm:0,olmd:1,culm:0,bsrc:0,bdst:1,dpts:2,wrdp:True,dith:0,atcv:False,rfrpo:True,rfrpn:Refraction,coma:15,ufog:True,aust:True,igpj:False,qofs:0,qpre:1,rntp:1,fgom:False,fgoc:False,fgod:False,fgor:False,fgmd:0,fgcr:0.5,fgcg:0.5,fgcb:0.5,fgca:1,fgde:0.01,fgrn:0,fgrf:300,stcl:False,atwp:False,stva:128,stmr:255,stmw:255,stcp:6,stps:0,stfa:0,stfz:0,ofsf:0,ofsu:0,f2p0:False,fnsp:False,fnfb:False,fsmp:False;n:type:ShaderForge.SFN_Final,id:1,x:34362,y:32994,varname:node_1,prsc:2|diff-162-OUT,spec-165-OUT,gloss-66-OUT,normal-160-OUT,lwrap-237-OUT,disp-13-OUT,tess-8-OUT;n:type:ShaderForge.SFN_Tex2d,id:3,x:33597,y:33194,ptovrint:False,ptlb:Normals,ptin:_Normals,varname:_Normals,prsc:2,glob:False,taghide:False,taghdr:False,tagprd:False,tagnsco:False,tagnrm:False,tex:cf20bfced7e912046a9ce991a4d775ec,ntxv:3,isnm:True|UVIN-6-OUT;n:type:ShaderForge.SFN_Tex2d,id:4,x:32986,y:33006,varname:node_798,prsc:2,tex:5fb7986dd6d0a8e4093ba82369dd6a4d,ntxv:0,isnm:False|UVIN-6-OUT,TEX-254-TEX;n:type:ShaderForge.SFN_TexCoord,id:5,x:32078,y:33020,varname:node_5,prsc:2,uv:0,uaff:False;n:type:ShaderForge.SFN_Multiply,id:6,x:32307,y:33100,varname:node_6,prsc:2|A-5-UVOUT,B-7-OUT;n:type:ShaderForge.SFN_Vector1,id:7,x:32078,y:33232,varname:node_7,prsc:2,v1:2;n:type:ShaderForge.SFN_Vector1,id:8,x:34051,y:33620,varname:node_8,prsc:2,v1:3;n:type:ShaderForge.SFN_Tex2d,id:12,x:32759,y:33284,varname:node_803,prsc:2,tex:5fb7986dd6d0a8e4093ba82369dd6a4d,ntxv:0,isnm:False|UVIN-6-OUT,MIP-15-OUT,TEX-254-TEX;n:type:ShaderForge.SFN_Multiply,id:13,x:34051,y:33418,varname:node_13,prsc:2|A-14-OUT,B-17-OUT;n:type:ShaderForge.SFN_NormalVector,id:14,x:33824,y:33442,prsc:2,pt:False;n:type:ShaderForge.SFN_Vector1,id:15,x:32532,y:33364,varname:node_15,prsc:2,v1:1;n:type:ShaderForge.SFN_Slider,id:16,x:33213,y:33639,ptovrint:False,ptlb:Depth,ptin:_Depth,varname:_Depth,prsc:2,glob:False,taghide:False,taghdr:False,tagprd:False,tagnsco:False,tagnrm:False,min:0,cur:0.25,max:0.25;n:type:ShaderForge.SFN_Multiply,id:17,x:33824,y:33620,varname:node_17,prsc:2|A-23-OUT,B-26-OUT;n:type:ShaderForge.SFN_OneMinus,id:23,x:33597,y:33379,varname:node_23,prsc:2|IN-153-OUT;n:type:ShaderForge.SFN_Multiply,id:26,x:33597,y:33537,varname:node_26,prsc:2|A-27-OUT,B-16-OUT;n:type:ShaderForge.SFN_Vector1,id:27,x:33370,y:33478,varname:node_27,prsc:2,v1:-1;n:type:ShaderForge.SFN_Vector1,id:66,x:34051,y:32948,varname:node_66,prsc:2,v1:10;n:type:ShaderForge.SFN_Tex2d,id:152,x:32759,y:33099,ptovrint:False,ptlb:Displacement (R),ptin:_DisplacementR,varname:_DisplacementR,prsc:2,glob:False,taghide:False,taghdr:False,tagprd:False,tagnsco:False,tagnrm:False,tex:28c7aad1372ff114b90d330f8a2dd938,ntxv:0,isnm:False|UVIN-161-UVOUT,MIP-15-OUT;n:type:ShaderForge.SFN_Max,id:153,x:33370,y:33276,varname:node_153,prsc:2|A-152-R,B-12-A;n:type:ShaderForge.SFN_Subtract,id:154,x:32986,y:33174,varname:node_154,prsc:2|A-12-A,B-152-R;n:type:ShaderForge.SFN_Clamp01,id:156,x:33370,y:33108,varname:node_156,prsc:2|IN-154-OUT;n:type:ShaderForge.SFN_Lerp,id:157,x:33824,y:32948,varname:node_157,prsc:2|A-159-OUT,B-3-RGB,T-156-OUT;n:type:ShaderForge.SFN_Vector3,id:159,x:33597,y:33061,varname:node_159,prsc:2,v1:0,v2:0,v3:1;n:type:ShaderForge.SFN_Normalize,id:160,x:34051,y:33082,varname:node_160,prsc:2|IN-157-OUT;n:type:ShaderForge.SFN_Panner,id:161,x:32532,y:32984,varname:node_161,prsc:2,spu:0.4,spv:0|UVIN-6-OUT;n:type:ShaderForge.SFN_Lerp,id:162,x:33597,y:32875,varname:node_162,prsc:2|A-163-OUT,B-170-OUT,T-156-OUT;n:type:ShaderForge.SFN_Vector3,id:163,x:33370,y:32790,varname:node_163,prsc:2,v1:0.4117647,v2:0.3826572,v3:0.3602941;n:type:ShaderForge.SFN_Multiply,id:165,x:34051,y:32746,varname:node_165,prsc:2|A-156-OUT,B-172-OUT;n:type:ShaderForge.SFN_Multiply,id:170,x:33370,y:32940,varname:node_170,prsc:2|A-3497-RGB,B-4-RGB;n:type:ShaderForge.SFN_ComponentMask,id:172,x:33824,y:32770,varname:node_172,prsc:2,cc1:0,cc2:-1,cc3:-1,cc4:-1|IN-162-OUT;n:type:ShaderForge.SFN_OneMinus,id:174,x:33824,y:33284,varname:node_174,prsc:2|IN-156-OUT;n:type:ShaderForge.SFN_Multiply,id:237,x:34051,y:33250,varname:node_237,prsc:2|A-238-OUT,B-174-OUT;n:type:ShaderForge.SFN_Vector1,id:238,x:33824,y:33150,varname:node_238,prsc:2,v1:0.5;n:type:ShaderForge.SFN_Tex2dAsset,id:254,x:32532,y:33145,ptovrint:False,ptlb:AO (RGB) Height (A),ptin:_AORGBHeightA,varname:_AORGBHeightA,glob:False,taghide:False,taghdr:False,tagprd:False,tagnsco:False,tagnrm:False,tex:5fb7986dd6d0a8e4093ba82369dd6a4d,ntxv:0,isnm:False;n:type:ShaderForge.SFN_Tex2d,id:3497,x:32986,y:32833,ptovrint:False,ptlb:Diffuse,ptin:_Diffuse,varname:node_3497,prsc:2,glob:False,taghide:False,taghdr:False,tagprd:False,tagnsco:False,tagnrm:False,tex:b66bceaf0cc0ace4e9bdc92f14bba709,ntxv:0,isnm:False;proporder:3-254-152-16-3497;pass:END;sub:END;*/ +/*SF_DATA;ver:1.42;sub:START;pass:START;ps:flbk:,iptp:0,cusa:False,bamd:0,cgin:,lico:1,lgpr:1,limd:1,spmd:1,trmd:0,grmd:0,uamb:True,mssp:True,bkdf:True,hqlp:False,rprd:True,enco:False,rmgx:True,imps:True,rpth:0,vtps:0,hqsc:True,nrmq:1,nrsp:0,vomd:0,spxs:False,tesm:0,olmd:1,culm:0,bsrc:0,bdst:1,dpts:2,wrdp:True,dith:0,atcv:False,rfrpo:True,rfrpn:Refraction,coma:15,ufog:True,aust:True,igpj:False,qofs:0,qpre:1,rntp:1,fgom:False,fgoc:False,fgod:False,fgor:False,fgmd:0,fgcr:0.5,fgcg:0.5,fgcb:0.5,fgca:1,fgde:0.01,fgrn:0,fgrf:300,stcl:False,atwp:False,stva:128,stmr:255,stmw:255,stcp:6,stps:0,stfa:0,stfz:0,ofsf:0,ofsu:0,f2p0:False,fnsp:False,fnfb:False,fsmp:False;n:type:ShaderForge.SFN_Final,id:1,x:34362,y:32994,varname:node_1,prsc:2|diff-162-OUT,spec-165-OUT,gloss-66-OUT,normal-160-OUT,lwrap-237-OUT,disp-13-OUT,tess-8-OUT;n:type:ShaderForge.SFN_Tex2d,id:3,x:33597,y:33194,ptovrint:False,ptlb:Normals,ptin:_Normals,varname:_Normals,prsc:2,glob:False,taghide:False,taghdr:False,tagprd:False,tagnsco:False,tagnrm:False,ntxv:3,isnm:True|UVIN-6-OUT;n:type:ShaderForge.SFN_Tex2d,id:4,x:32986,y:33006,varname:node_798,prsc:2,ntxv:0,isnm:False|UVIN-6-OUT,TEX-254-TEX;n:type:ShaderForge.SFN_TexCoord,id:5,x:32078,y:33020,varname:node_5,prsc:2,uv:0,uaff:False;n:type:ShaderForge.SFN_Multiply,id:6,x:32307,y:33100,varname:node_6,prsc:2|A-5-UVOUT,B-7-OUT;n:type:ShaderForge.SFN_Vector1,id:7,x:32078,y:33232,varname:node_7,prsc:2,v1:2;n:type:ShaderForge.SFN_Vector1,id:8,x:34051,y:33620,varname:node_8,prsc:2,v1:3;n:type:ShaderForge.SFN_Tex2d,id:12,x:32759,y:33284,varname:node_803,prsc:2,ntxv:0,isnm:False|UVIN-6-OUT,MIP-15-OUT,TEX-254-TEX;n:type:ShaderForge.SFN_Multiply,id:13,x:34051,y:33418,varname:node_13,prsc:2|A-14-OUT,B-17-OUT;n:type:ShaderForge.SFN_NormalVector,id:14,x:33824,y:33442,prsc:2,pt:False;n:type:ShaderForge.SFN_Vector1,id:15,x:32532,y:33364,varname:node_15,prsc:2,v1:1;n:type:ShaderForge.SFN_Slider,id:16,x:33213,y:33639,ptovrint:False,ptlb:Depth,ptin:_Depth,varname:_Depth,prsc:2,glob:False,taghide:False,taghdr:False,tagprd:False,tagnsco:False,tagnrm:False,min:0,cur:0.25,max:0.25;n:type:ShaderForge.SFN_Multiply,id:17,x:33824,y:33620,varname:node_17,prsc:2|A-23-OUT,B-26-OUT;n:type:ShaderForge.SFN_OneMinus,id:23,x:33597,y:33379,varname:node_23,prsc:2|IN-153-OUT;n:type:ShaderForge.SFN_Multiply,id:26,x:33597,y:33537,varname:node_26,prsc:2|A-27-OUT,B-16-OUT;n:type:ShaderForge.SFN_Vector1,id:27,x:33370,y:33478,varname:node_27,prsc:2,v1:-1;n:type:ShaderForge.SFN_Vector1,id:66,x:34051,y:32948,varname:node_66,prsc:2,v1:10;n:type:ShaderForge.SFN_Tex2d,id:152,x:32759,y:33099,ptovrint:False,ptlb:Displacement (R),ptin:_DisplacementR,varname:_DisplacementR,prsc:2,glob:False,taghide:False,taghdr:False,tagprd:False,tagnsco:False,tagnrm:False,ntxv:0,isnm:False|UVIN-161-UVOUT,MIP-15-OUT;n:type:ShaderForge.SFN_Max,id:153,x:33370,y:33276,varname:node_153,prsc:2|A-152-R,B-12-A;n:type:ShaderForge.SFN_Subtract,id:154,x:32986,y:33174,varname:node_154,prsc:2|A-12-A,B-152-R;n:type:ShaderForge.SFN_Clamp01,id:156,x:33370,y:33108,varname:node_156,prsc:2|IN-154-OUT;n:type:ShaderForge.SFN_Lerp,id:157,x:33824,y:32948,varname:node_157,prsc:2|A-159-OUT,B-3-RGB,T-156-OUT;n:type:ShaderForge.SFN_Vector3,id:159,x:33597,y:33061,varname:node_159,prsc:2,v1:0,v2:0,v3:1;n:type:ShaderForge.SFN_Normalize,id:160,x:34051,y:33082,varname:node_160,prsc:2|IN-157-OUT;n:type:ShaderForge.SFN_Panner,id:161,x:32532,y:32984,varname:node_161,prsc:2,spu:0.4,spv:0|UVIN-6-OUT;n:type:ShaderForge.SFN_Lerp,id:162,x:33597,y:32875,varname:node_162,prsc:2|A-163-OUT,B-170-OUT,T-156-OUT;n:type:ShaderForge.SFN_Vector3,id:163,x:33370,y:32790,varname:node_163,prsc:2,v1:0.4117647,v2:0.3826572,v3:0.3602941;n:type:ShaderForge.SFN_Multiply,id:165,x:34051,y:32746,varname:node_165,prsc:2|A-156-OUT,B-172-OUT;n:type:ShaderForge.SFN_Multiply,id:170,x:33370,y:32940,varname:node_170,prsc:2|A-3497-RGB,B-4-RGB;n:type:ShaderForge.SFN_ComponentMask,id:172,x:33824,y:32770,varname:node_172,prsc:2,cc1:0,cc2:-1,cc3:-1,cc4:-1|IN-162-OUT;n:type:ShaderForge.SFN_OneMinus,id:174,x:33824,y:33284,varname:node_174,prsc:2|IN-156-OUT;n:type:ShaderForge.SFN_Multiply,id:237,x:34051,y:33250,varname:node_237,prsc:2|A-238-OUT,B-174-OUT;n:type:ShaderForge.SFN_Vector1,id:238,x:33824,y:33150,varname:node_238,prsc:2,v1:0.5;n:type:ShaderForge.SFN_Tex2dAsset,id:254,x:32532,y:33145,ptovrint:False,ptlb:AO (RGB) Height (A),ptin:_AORGBHeightA,varname:_AORGBHeightA,glob:False,taghide:False,taghdr:False,tagprd:False,tagnsco:False,tagnrm:False,ntxv:0,isnm:False;n:type:ShaderForge.SFN_Tex2d,id:3497,x:32986,y:32833,ptovrint:False,ptlb:Diffuse,ptin:_Diffuse,varname:node_3497,prsc:2,glob:False,taghide:False,taghdr:False,tagprd:False,tagnsco:False,tagnrm:False,ntxv:0,isnm:False;proporder:3-254-152-16-3497;pass:END;sub:END;*/ Shader "Shader Forge/Examples/TessellationDisplacement" { Properties { @@ -27,7 +28,9 @@ Shader "Shader Forge/Examples/TessellationDisplacement" { #pragma domain domain #pragma vertex tessvert #pragma fragment frag + #ifndef UNITY_PASS_FORWARDBASE #define UNITY_PASS_FORWARDBASE + #endif //UNITY_PASS_FORWARDBASE #define SHOULD_SAMPLE_SH ( defined (LIGHTMAP_OFF) && defined(DYNAMICLIGHTMAP_OFF) ) #define _GLOSSYENV 1 #include "UnityCG.cginc" @@ -65,7 +68,7 @@ Shader "Shader Forge/Examples/TessellationDisplacement" { float3 normalDir : TEXCOORD4; float3 tangentDir : TEXCOORD5; float3 bitangentDir : TEXCOORD6; - LIGHTING_COORDS(7,8) + UNITY_LIGHTING_COORDS(7,8) UNITY_FOG_COORDS(9) #if defined(LIGHTMAP_ON) || defined(UNITY_SHOULD_SAMPLE_SH) float4 ambientOrLightmapUV : TEXCOORD10; @@ -91,7 +94,7 @@ Shader "Shader Forge/Examples/TessellationDisplacement" { float3 lightColor = _LightColor0.rgb; o.pos = UnityObjectToClipPos( v.vertex ); UNITY_TRANSFER_FOG(o,o.pos); - TRANSFER_VERTEX_TO_FRAGMENT(o) + UNITY_TRANSFER_LIGHTING(o, v.texcoord1); return o; } #ifdef UNITY_CAN_COMPILE_TESSELLATION @@ -123,9 +126,9 @@ Shader "Shader Forge/Examples/TessellationDisplacement" { return o; } void displacement (inout VertexInput v){ - float4 node_21 = _Time; + float4 node_5409 = _Time; float2 node_6 = (v.texcoord0*2.0); - float2 node_161 = (node_6+node_21.g*float2(0.4,0)); + float2 node_161 = (node_6+node_5409.g*float2(0.4,0)); float node_15 = 1.0; float4 _DisplacementR_var = tex2Dlod(_DisplacementR,float4(TRANSFORM_TEX(node_161, _DisplacementR),0.0,node_15)); float4 node_803 = tex2Dlod(_AORGBHeightA,float4(TRANSFORM_TEX(node_6, _AORGBHeightA),0.0,node_15)); @@ -178,8 +181,8 @@ Shader "Shader Forge/Examples/TessellationDisplacement" { float3 _Normals_var = UnpackNormal(tex2D(_Normals,TRANSFORM_TEX(node_6, _Normals))); float node_15 = 1.0; float4 node_803 = tex2Dlod(_AORGBHeightA,float4(TRANSFORM_TEX(node_6, _AORGBHeightA),0.0,node_15)); - float4 node_21 = _Time; - float2 node_161 = (node_6+node_21.g*float2(0.4,0)); + float4 node_5409 = _Time; + float2 node_161 = (node_6+node_5409.g*float2(0.4,0)); float4 _DisplacementR_var = tex2Dlod(_DisplacementR,float4(TRANSFORM_TEX(node_161, _DisplacementR),0.0,node_15)); float node_156 = saturate((node_803.a-_DisplacementR_var.r)); float3 normalLocal = normalize(lerp(float3(0,0,1),_Normals_var.rgb,node_156)); @@ -189,7 +192,7 @@ Shader "Shader Forge/Examples/TessellationDisplacement" { float3 lightColor = _LightColor0.rgb; float3 halfDirection = normalize(viewDirection+lightDirection); ////// Lighting: - float attenuation = LIGHT_ATTENUATION(i); + UNITY_LIGHT_ATTENUATION(attenuation, i, i.posWorld.xyz); float3 attenColor = attenuation * _LightColor0.xyz; ///////// Gloss: float gloss = 10.0; @@ -277,7 +280,9 @@ Shader "Shader Forge/Examples/TessellationDisplacement" { #pragma domain domain #pragma vertex tessvert #pragma fragment frag + #ifndef UNITY_PASS_FORWARDADD #define UNITY_PASS_FORWARDADD + #endif //UNITY_PASS_FORWARDADD #define SHOULD_SAMPLE_SH ( defined (LIGHTMAP_OFF) && defined(DYNAMICLIGHTMAP_OFF) ) #define _GLOSSYENV 1 #include "UnityCG.cginc" @@ -315,7 +320,7 @@ Shader "Shader Forge/Examples/TessellationDisplacement" { float3 normalDir : TEXCOORD4; float3 tangentDir : TEXCOORD5; float3 bitangentDir : TEXCOORD6; - LIGHTING_COORDS(7,8) + UNITY_LIGHTING_COORDS(7,8) UNITY_FOG_COORDS(9) }; VertexOutput vert (VertexInput v) { @@ -330,7 +335,7 @@ Shader "Shader Forge/Examples/TessellationDisplacement" { float3 lightColor = _LightColor0.rgb; o.pos = UnityObjectToClipPos( v.vertex ); UNITY_TRANSFER_FOG(o,o.pos); - TRANSFER_VERTEX_TO_FRAGMENT(o) + UNITY_TRANSFER_LIGHTING(o, v.texcoord1); return o; } #ifdef UNITY_CAN_COMPILE_TESSELLATION @@ -362,9 +367,9 @@ Shader "Shader Forge/Examples/TessellationDisplacement" { return o; } void displacement (inout VertexInput v){ - float4 node_2942 = _Time; + float4 node_2146 = _Time; float2 node_6 = (v.texcoord0*2.0); - float2 node_161 = (node_6+node_2942.g*float2(0.4,0)); + float2 node_161 = (node_6+node_2146.g*float2(0.4,0)); float node_15 = 1.0; float4 _DisplacementR_var = tex2Dlod(_DisplacementR,float4(TRANSFORM_TEX(node_161, _DisplacementR),0.0,node_15)); float4 node_803 = tex2Dlod(_AORGBHeightA,float4(TRANSFORM_TEX(node_6, _AORGBHeightA),0.0,node_15)); @@ -417,8 +422,8 @@ Shader "Shader Forge/Examples/TessellationDisplacement" { float3 _Normals_var = UnpackNormal(tex2D(_Normals,TRANSFORM_TEX(node_6, _Normals))); float node_15 = 1.0; float4 node_803 = tex2Dlod(_AORGBHeightA,float4(TRANSFORM_TEX(node_6, _AORGBHeightA),0.0,node_15)); - float4 node_2942 = _Time; - float2 node_161 = (node_6+node_2942.g*float2(0.4,0)); + float4 node_2146 = _Time; + float2 node_161 = (node_6+node_2146.g*float2(0.4,0)); float4 _DisplacementR_var = tex2Dlod(_DisplacementR,float4(TRANSFORM_TEX(node_161, _DisplacementR),0.0,node_15)); float node_156 = saturate((node_803.a-_DisplacementR_var.r)); float3 normalLocal = normalize(lerp(float3(0,0,1),_Normals_var.rgb,node_156)); @@ -427,7 +432,7 @@ Shader "Shader Forge/Examples/TessellationDisplacement" { float3 lightColor = _LightColor0.rgb; float3 halfDirection = normalize(viewDirection+lightDirection); ////// Lighting: - float attenuation = LIGHT_ATTENUATION(i); + UNITY_LIGHT_ATTENUATION(attenuation, i, i.posWorld.xyz); float3 attenColor = attenuation * _LightColor0.xyz; ///////// Gloss: float gloss = 10.0; @@ -472,7 +477,9 @@ Shader "Shader Forge/Examples/TessellationDisplacement" { #pragma domain domain #pragma vertex tessvert #pragma fragment frag + #ifndef UNITY_PASS_SHADOWCASTER #define UNITY_PASS_SHADOWCASTER + #endif //UNITY_PASS_SHADOWCASTER #define SHOULD_SAMPLE_SH ( defined (LIGHTMAP_OFF) && defined(DYNAMICLIGHTMAP_OFF) ) #define _GLOSSYENV 1 #include "UnityCG.cginc" @@ -547,9 +554,9 @@ Shader "Shader Forge/Examples/TessellationDisplacement" { return o; } void displacement (inout VertexInput v){ - float4 node_7647 = _Time; + float4 node_7931 = _Time; float2 node_6 = (v.texcoord0*2.0); - float2 node_161 = (node_6+node_7647.g*float2(0.4,0)); + float2 node_161 = (node_6+node_7931.g*float2(0.4,0)); float node_15 = 1.0; float4 _DisplacementR_var = tex2Dlod(_DisplacementR,float4(TRANSFORM_TEX(node_161, _DisplacementR),0.0,node_15)); float4 node_803 = tex2Dlod(_AORGBHeightA,float4(TRANSFORM_TEX(node_6, _AORGBHeightA),0.0,node_15)); @@ -614,7 +621,9 @@ Shader "Shader Forge/Examples/TessellationDisplacement" { #pragma domain domain #pragma vertex tessvert #pragma fragment frag + #ifndef UNITY_PASS_META 1 #define UNITY_PASS_META 1 + #endif UNITY_PASS_META 1 #define SHOULD_SAMPLE_SH ( defined (LIGHTMAP_OFF) && defined(DYNAMICLIGHTMAP_OFF) ) #define _GLOSSYENV 1 #include "UnityCG.cginc" @@ -690,9 +699,9 @@ Shader "Shader Forge/Examples/TessellationDisplacement" { return o; } void displacement (inout VertexInput v){ - float4 node_5250 = _Time; + float4 node_348 = _Time; float2 node_6 = (v.texcoord0*2.0); - float2 node_161 = (node_6+node_5250.g*float2(0.4,0)); + float2 node_161 = (node_6+node_348.g*float2(0.4,0)); float node_15 = 1.0; float4 _DisplacementR_var = tex2Dlod(_DisplacementR,float4(TRANSFORM_TEX(node_161, _DisplacementR),0.0,node_15)); float4 node_803 = tex2Dlod(_AORGBHeightA,float4(TRANSFORM_TEX(node_6, _AORGBHeightA),0.0,node_15)); @@ -751,8 +760,8 @@ Shader "Shader Forge/Examples/TessellationDisplacement" { float4 node_798 = tex2D(_AORGBHeightA,TRANSFORM_TEX(node_6, _AORGBHeightA)); float node_15 = 1.0; float4 node_803 = tex2Dlod(_AORGBHeightA,float4(TRANSFORM_TEX(node_6, _AORGBHeightA),0.0,node_15)); - float4 node_5250 = _Time; - float2 node_161 = (node_6+node_5250.g*float2(0.4,0)); + float4 node_348 = _Time; + float2 node_161 = (node_6+node_348.g*float2(0.4,0)); float4 _DisplacementR_var = tex2Dlod(_DisplacementR,float4(TRANSFORM_TEX(node_161, _DisplacementR),0.0,node_15)); float node_156 = saturate((node_803.a-_DisplacementR_var.r)); float3 node_162 = lerp(float3(0.4117647,0.3826572,0.3602941),(_Diffuse_var.rgb*node_798.rgb),node_156); diff --git a/Examples/TessellationDisplacement.shader.meta b/Examples/TessellationDisplacement.shader.meta index 5b0ae774..cf937fd8 100644 --- a/Examples/TessellationDisplacement.shader.meta +++ b/Examples/TessellationDisplacement.shader.meta @@ -1,13 +1,9 @@ fileFormatVersion: 2 guid: 5e81283b11113de4295d1943aec0a765 -timeCreated: 1503327524 -licenseType: Store ShaderImporter: - defaultTextures: - - _Normals: {fileID: 2800000, guid: cf20bfced7e912046a9ce991a4d775ec, type: 3} - - _DisplacementR: {fileID: 2800000, guid: 28c7aad1372ff114b90d330f8a2dd938, type: 3} - - _AORGBHeightA: {fileID: 2800000, guid: 5fb7986dd6d0a8e4093ba82369dd6a4d, type: 3} - - _Diffuse: {fileID: 2800000, guid: b66bceaf0cc0ace4e9bdc92f14bba709, type: 3} + externalObjects: {} + defaultTextures: [] + nonModifiableTextures: [] userData: assetBundleName: assetBundleVariant: diff --git a/Examples/Tiles.shader b/Examples/Tiles.shader index b5b66d30..eed5be94 100644 --- a/Examples/Tiles.shader +++ b/Examples/Tiles.shader @@ -1,7 +1,8 @@ -// Shader created with Shader Forge v1.38 -// Shader Forge (c) Neat Corporation / Joachim Holmer - http://www.acegikmo.com/shaderforge/ +// Shader created with Shader Forge v1.42 +// Shader Forge (c) Freya Holmer - http://www.acegikmo.com/shaderforge/ +// Enhanced by Antoine Guillon / Arkham Development - http://www.arkham-development.com/ // Note: Manually altering this data may prevent you from opening it in Shader Forge -/*SF_DATA;ver:1.38;sub:START;pass:START;ps:flbk:,iptp:0,cusa:False,bamd:0,cgin:,lico:1,lgpr:1,limd:3,spmd:1,trmd:0,grmd:0,uamb:True,mssp:True,bkdf:True,hqlp:False,rprd:True,enco:False,rmgx:True,imps:True,rpth:0,vtps:0,hqsc:True,nrmq:1,nrsp:0,vomd:0,spxs:False,tesm:0,olmd:1,culm:0,bsrc:0,bdst:1,dpts:2,wrdp:True,dith:0,atcv:False,rfrpo:True,rfrpn:Refraction,coma:15,ufog:True,aust:True,igpj:False,qofs:0,qpre:1,rntp:1,fgom:False,fgoc:False,fgod:False,fgor:False,fgmd:0,fgcr:0.5,fgcg:0.5,fgcb:0.5,fgca:1,fgde:0.01,fgrn:0,fgrf:300,stcl:False,atwp:False,stva:128,stmr:255,stmw:255,stcp:6,stps:0,stfa:0,stfz:0,ofsf:0,ofsu:0,f2p0:False,fnsp:False,fnfb:False,fsmp:False;n:type:ShaderForge.SFN_Final,id:0,x:33638,y:32808,varname:node_0,prsc:2|diff-138-RGB,spec-145-OUT,gloss-144-OUT;n:type:ShaderForge.SFN_Tex2d,id:138,x:33259,y:32700,ptovrint:False,ptlb:Base Color,ptin:_BaseColor,varname:_Diffuse,prsc:2,glob:False,taghide:False,taghdr:False,tagprd:False,tagnsco:False,tagnrm:False,tex:b66bceaf0cc0ace4e9bdc92f14bba709,ntxv:0,isnm:False;n:type:ShaderForge.SFN_Slider,id:144,x:33102,y:32979,ptovrint:False,ptlb:Gloss,ptin:_Gloss,varname:_Gloss,prsc:2,glob:False,taghide:False,taghdr:False,tagprd:False,tagnsco:False,tagnrm:False,min:0,cur:0.5,max:1;n:type:ShaderForge.SFN_Slider,id:145,x:33102,y:32879,ptovrint:False,ptlb:Metallic,ptin:_Metallic,varname:_Specular,prsc:2,glob:False,taghide:False,taghdr:False,tagprd:False,tagnsco:False,tagnrm:False,min:0,cur:0,max:1;proporder:138-145-144;pass:END;sub:END;*/ +/*SF_DATA;ver:1.42;sub:START;pass:START;ps:flbk:,iptp:0,cusa:False,bamd:0,cgin:,lico:1,lgpr:1,limd:3,spmd:1,trmd:0,grmd:0,uamb:True,mssp:True,bkdf:True,hqlp:False,rprd:True,enco:False,rmgx:True,imps:True,rpth:0,vtps:0,hqsc:True,nrmq:1,nrsp:0,vomd:0,spxs:False,tesm:0,olmd:1,culm:0,bsrc:0,bdst:1,dpts:2,wrdp:True,dith:0,atcv:False,rfrpo:True,rfrpn:Refraction,coma:15,ufog:True,aust:True,igpj:False,qofs:0,qpre:1,rntp:1,fgom:False,fgoc:False,fgod:False,fgor:False,fgmd:0,fgcr:0.5,fgcg:0.5,fgcb:0.5,fgca:1,fgde:0.01,fgrn:0,fgrf:300,stcl:False,atwp:False,stva:128,stmr:255,stmw:255,stcp:6,stps:0,stfa:0,stfz:0,ofsf:0,ofsu:0,f2p0:False,fnsp:False,fnfb:False,fsmp:False;n:type:ShaderForge.SFN_Final,id:0,x:33638,y:32808,varname:node_0,prsc:2|diff-138-RGB,spec-145-OUT,gloss-144-OUT;n:type:ShaderForge.SFN_Tex2d,id:138,x:33259,y:32700,ptovrint:False,ptlb:Base Color,ptin:_BaseColor,varname:_Diffuse,prsc:2,glob:False,taghide:False,taghdr:False,tagprd:False,tagnsco:False,tagnrm:False,ntxv:0,isnm:False;n:type:ShaderForge.SFN_Slider,id:144,x:33102,y:32979,ptovrint:False,ptlb:Gloss,ptin:_Gloss,varname:_Gloss,prsc:2,glob:False,taghide:False,taghdr:False,tagprd:False,tagnsco:False,tagnrm:False,min:0,cur:0.5,max:1;n:type:ShaderForge.SFN_Slider,id:145,x:33102,y:32879,ptovrint:False,ptlb:Metallic,ptin:_Metallic,varname:_Specular,prsc:2,glob:False,taghide:False,taghdr:False,tagprd:False,tagnsco:False,tagnrm:False,min:0,cur:0,max:1;proporder:138-145-144;pass:END;sub:END;*/ Shader "Shader Forge/Examples/Tiles" { Properties { @@ -23,7 +24,9 @@ Shader "Shader Forge/Examples/Tiles" { CGPROGRAM #pragma vertex vert #pragma fragment frag + #ifndef UNITY_PASS_FORWARDBASE #define UNITY_PASS_FORWARDBASE + #endif //UNITY_PASS_FORWARDBASE #define SHOULD_SAMPLE_SH ( defined (LIGHTMAP_OFF) && defined(DYNAMICLIGHTMAP_OFF) ) #define _GLOSSYENV 1 #include "UnityCG.cginc" @@ -58,7 +61,7 @@ Shader "Shader Forge/Examples/Tiles" { float3 normalDir : TEXCOORD4; float3 tangentDir : TEXCOORD5; float3 bitangentDir : TEXCOORD6; - LIGHTING_COORDS(7,8) + UNITY_LIGHTING_COORDS(7,8) UNITY_FOG_COORDS(9) #if defined(LIGHTMAP_ON) || defined(UNITY_SHOULD_SAMPLE_SH) float4 ambientOrLightmapUV : TEXCOORD10; @@ -84,7 +87,7 @@ Shader "Shader Forge/Examples/Tiles" { float3 lightColor = _LightColor0.rgb; o.pos = UnityObjectToClipPos( v.vertex ); UNITY_TRANSFER_FOG(o,o.pos); - TRANSFER_VERTEX_TO_FRAGMENT(o) + UNITY_TRANSFER_LIGHTING(o, v.texcoord1); return o; } float4 frag(VertexOutput i) : COLOR { @@ -97,7 +100,7 @@ Shader "Shader Forge/Examples/Tiles" { float3 lightColor = _LightColor0.rgb; float3 halfDirection = normalize(viewDirection+lightDirection); ////// Lighting: - float attenuation = LIGHT_ATTENUATION(i); + UNITY_LIGHT_ATTENUATION(attenuation, i, i.posWorld.xyz); float3 attenColor = attenuation * _LightColor0.xyz; float Pi = 3.141592654; float InvPi = 0.31830988618; @@ -209,7 +212,9 @@ Shader "Shader Forge/Examples/Tiles" { CGPROGRAM #pragma vertex vert #pragma fragment frag + #ifndef UNITY_PASS_FORWARDADD #define UNITY_PASS_FORWARDADD + #endif //UNITY_PASS_FORWARDADD #define SHOULD_SAMPLE_SH ( defined (LIGHTMAP_OFF) && defined(DYNAMICLIGHTMAP_OFF) ) #define _GLOSSYENV 1 #include "UnityCG.cginc" @@ -244,7 +249,7 @@ Shader "Shader Forge/Examples/Tiles" { float3 normalDir : TEXCOORD4; float3 tangentDir : TEXCOORD5; float3 bitangentDir : TEXCOORD6; - LIGHTING_COORDS(7,8) + UNITY_LIGHTING_COORDS(7,8) UNITY_FOG_COORDS(9) }; VertexOutput vert (VertexInput v) { @@ -259,7 +264,7 @@ Shader "Shader Forge/Examples/Tiles" { float3 lightColor = _LightColor0.rgb; o.pos = UnityObjectToClipPos( v.vertex ); UNITY_TRANSFER_FOG(o,o.pos); - TRANSFER_VERTEX_TO_FRAGMENT(o) + UNITY_TRANSFER_LIGHTING(o, v.texcoord1); return o; } float4 frag(VertexOutput i) : COLOR { @@ -271,7 +276,7 @@ Shader "Shader Forge/Examples/Tiles" { float3 lightColor = _LightColor0.rgb; float3 halfDirection = normalize(viewDirection+lightDirection); ////// Lighting: - float attenuation = LIGHT_ATTENUATION(i); + UNITY_LIGHT_ATTENUATION(attenuation, i, i.posWorld.xyz); float3 attenColor = attenuation * _LightColor0.xyz; float Pi = 3.141592654; float InvPi = 0.31830988618; @@ -330,7 +335,9 @@ Shader "Shader Forge/Examples/Tiles" { CGPROGRAM #pragma vertex vert #pragma fragment frag + #ifndef UNITY_PASS_META 1 #define UNITY_PASS_META 1 + #endif UNITY_PASS_META 1 #define SHOULD_SAMPLE_SH ( defined (LIGHTMAP_OFF) && defined(DYNAMICLIGHTMAP_OFF) ) #define _GLOSSYENV 1 #include "UnityCG.cginc" diff --git a/Examples/Tiles.shader.meta b/Examples/Tiles.shader.meta index 865e1b6d..6c737557 100644 --- a/Examples/Tiles.shader.meta +++ b/Examples/Tiles.shader.meta @@ -1,10 +1,9 @@ fileFormatVersion: 2 guid: 05eb3a2c382b4154cb71394a349d0909 -timeCreated: 1503327527 -licenseType: Store ShaderImporter: - defaultTextures: - - _BaseColor: {fileID: 2800000, guid: b66bceaf0cc0ace4e9bdc92f14bba709, type: 3} + externalObjects: {} + defaultTextures: [] + nonModifiableTextures: [] userData: assetBundleName: assetBundleVariant: diff --git a/Examples/Vegetation.shader b/Examples/Vegetation.shader index 0225eebb..be13ddad 100644 --- a/Examples/Vegetation.shader +++ b/Examples/Vegetation.shader @@ -1,7 +1,8 @@ -// Shader created with Shader Forge v1.38 -// Shader Forge (c) Neat Corporation / Joachim Holmer - http://www.acegikmo.com/shaderforge/ +// Shader created with Shader Forge v1.42 +// Shader Forge (c) Freya Holmer - http://www.acegikmo.com/shaderforge/ +// Enhanced by Antoine Guillon / Arkham Development - http://www.arkham-development.com/ // Note: Manually altering this data may prevent you from opening it in Shader Forge -/*SF_DATA;ver:1.38;sub:START;pass:START;ps:flbk:Transparent/Cutout/Diffuse,iptp:0,cusa:False,bamd:0,cgin:,lico:1,lgpr:1,limd:1,spmd:1,trmd:0,grmd:0,uamb:True,mssp:True,bkdf:True,hqlp:False,rprd:False,enco:False,rmgx:True,imps:True,rpth:0,vtps:0,hqsc:True,nrmq:1,nrsp:0,vomd:0,spxs:False,tesm:0,olmd:1,culm:2,bsrc:0,bdst:1,dpts:2,wrdp:True,dith:0,atcv:True,rfrpo:True,rfrpn:Refraction,coma:15,ufog:True,aust:True,igpj:False,qofs:0,qpre:2,rntp:3,fgom:False,fgoc:False,fgod:False,fgor:False,fgmd:0,fgcr:0.5,fgcg:0.5,fgcb:0.5,fgca:1,fgde:0.01,fgrn:0,fgrf:300,stcl:False,atwp:False,stva:128,stmr:255,stmw:255,stcp:6,stps:0,stfa:0,stfz:0,ofsf:0,ofsu:0,f2p0:False,fnsp:False,fnfb:False,fsmp:False;n:type:ShaderForge.SFN_Final,id:0,x:34000,y:32640,varname:node_0,prsc:2|diff-322-OUT,spec-3-OUT,gloss-270-OUT,normal-2-RGB,transm-7-OUT,lwrap-6-OUT,clip-1-A,voffset-394-OUT;n:type:ShaderForge.SFN_Tex2d,id:1,x:33572,y:32631,ptovrint:False,ptlb:Diffuse,ptin:_Diffuse,varname:_Diffuse,prsc:2,glob:False,taghide:False,taghdr:False,tagprd:False,tagnsco:False,tagnrm:False,tex:66321cc856b03e245ac41ed8a53e0ecc,ntxv:0,isnm:False;n:type:ShaderForge.SFN_Tex2d,id:2,x:33572,y:32818,ptovrint:False,ptlb:Normal,ptin:_Normal,varname:_Normal,prsc:2,glob:False,taghide:False,taghdr:False,tagprd:False,tagnsco:False,tagnrm:False,tex:cb6c5165ed180c543be39ed70e72abc8,ntxv:3,isnm:True;n:type:ShaderForge.SFN_Vector1,id:3,x:33777,y:32641,varname:node_3,prsc:2,v1:0.2;n:type:ShaderForge.SFN_Vector3,id:6,x:33572,y:33075,varname:node_6,prsc:2,v1:0.3275862,v2:0.3275862,v3:0.2911878;n:type:ShaderForge.SFN_Vector3,id:7,x:33572,y:32976,varname:node_7,prsc:2,v1:0.2824138,v2:0.3137931,v3:0.1568965;n:type:ShaderForge.SFN_Vector1,id:270,x:33777,y:32701,varname:node_270,prsc:2,v1:0.4;n:type:ShaderForge.SFN_VertexColor,id:321,x:33330,y:32501,varname:node_321,prsc:2;n:type:ShaderForge.SFN_Multiply,id:322,x:33777,y:32508,varname:node_322,prsc:2|A-330-OUT,B-1-RGB;n:type:ShaderForge.SFN_Lerp,id:330,x:33572,y:32478,varname:node_330,prsc:2|A-331-OUT,B-337-OUT,T-321-B;n:type:ShaderForge.SFN_Vector1,id:331,x:33330,y:32356,varname:node_331,prsc:2,v1:1;n:type:ShaderForge.SFN_Vector3,id:337,x:33330,y:32410,varname:node_337,prsc:2,v1:0.9632353,v2:0.8224623,v3:0.03541304;n:type:ShaderForge.SFN_VertexColor,id:389,x:32886,y:33347,varname:node_389,prsc:2;n:type:ShaderForge.SFN_NormalVector,id:391,x:33073,y:33231,prsc:2,pt:False;n:type:ShaderForge.SFN_Time,id:392,x:33073,y:33586,varname:node_392,prsc:2;n:type:ShaderForge.SFN_Sin,id:393,x:33479,y:33548,varname:node_393,prsc:2|IN-413-OUT;n:type:ShaderForge.SFN_Multiply,id:394,x:33729,y:33420,cmnt:Wind animation,varname:node_394,prsc:2|A-562-OUT,B-389-R,C-393-OUT,D-403-OUT;n:type:ShaderForge.SFN_Vector1,id:403,x:33479,y:33699,varname:node_403,prsc:2,v1:0.016;n:type:ShaderForge.SFN_Add,id:413,x:33298,y:33548,varname:node_413,prsc:2|A-519-OUT,B-392-T;n:type:ShaderForge.SFN_Multiply,id:519,x:33073,y:33457,varname:node_519,prsc:2|A-389-B,B-520-OUT;n:type:ShaderForge.SFN_Pi,id:520,x:32919,y:33494,varname:node_520,prsc:2;n:type:ShaderForge.SFN_Add,id:561,x:33294,y:33171,varname:node_561,prsc:2|A-563-OUT,B-391-OUT;n:type:ShaderForge.SFN_Normalize,id:562,x:33479,y:33280,varname:node_562,prsc:2|IN-561-OUT;n:type:ShaderForge.SFN_Vector3,id:563,x:33073,y:33131,cmnt:Wind direction,varname:node_563,prsc:2,v1:1,v2:0.5,v3:0.5;proporder:1-2;pass:END;sub:END;*/ +/*SF_DATA;ver:1.42;sub:START;pass:START;ps:flbk:Transparent/Cutout/Diffuse,iptp:0,cusa:False,bamd:0,cgin:,lico:1,lgpr:1,limd:1,spmd:1,trmd:0,grmd:0,uamb:True,mssp:True,bkdf:True,hqlp:False,rprd:False,enco:False,rmgx:True,imps:True,rpth:0,vtps:0,hqsc:True,nrmq:1,nrsp:0,vomd:0,spxs:False,tesm:0,olmd:1,culm:2,bsrc:0,bdst:1,dpts:2,wrdp:True,dith:0,atcv:True,rfrpo:True,rfrpn:Refraction,coma:15,ufog:True,aust:True,igpj:False,qofs:0,qpre:2,rntp:3,fgom:False,fgoc:False,fgod:False,fgor:False,fgmd:0,fgcr:0.5,fgcg:0.5,fgcb:0.5,fgca:1,fgde:0.01,fgrn:0,fgrf:300,stcl:False,atwp:False,stva:128,stmr:255,stmw:255,stcp:6,stps:0,stfa:0,stfz:0,ofsf:0,ofsu:0,f2p0:False,fnsp:False,fnfb:False,fsmp:False;n:type:ShaderForge.SFN_Final,id:0,x:34000,y:32640,varname:node_0,prsc:2|diff-322-OUT,spec-3-OUT,gloss-270-OUT,normal-2-RGB,transm-7-OUT,lwrap-6-OUT,clip-1-A,voffset-394-OUT;n:type:ShaderForge.SFN_Tex2d,id:1,x:33572,y:32631,ptovrint:False,ptlb:Diffuse,ptin:_Diffuse,varname:_Diffuse,prsc:2,glob:False,taghide:False,taghdr:False,tagprd:False,tagnsco:False,tagnrm:False,ntxv:0,isnm:False;n:type:ShaderForge.SFN_Tex2d,id:2,x:33572,y:32818,ptovrint:False,ptlb:Normal,ptin:_Normal,varname:_Normal,prsc:2,glob:False,taghide:False,taghdr:False,tagprd:False,tagnsco:False,tagnrm:False,ntxv:3,isnm:True;n:type:ShaderForge.SFN_Vector1,id:3,x:33777,y:32641,varname:node_3,prsc:2,v1:0.2;n:type:ShaderForge.SFN_Vector3,id:6,x:33572,y:33075,varname:node_6,prsc:2,v1:0.3275862,v2:0.3275862,v3:0.2911878;n:type:ShaderForge.SFN_Vector3,id:7,x:33572,y:32976,varname:node_7,prsc:2,v1:0.2824138,v2:0.3137931,v3:0.1568965;n:type:ShaderForge.SFN_Vector1,id:270,x:33777,y:32701,varname:node_270,prsc:2,v1:0.4;n:type:ShaderForge.SFN_VertexColor,id:321,x:33330,y:32501,varname:node_321,prsc:2;n:type:ShaderForge.SFN_Multiply,id:322,x:33777,y:32508,varname:node_322,prsc:2|A-330-OUT,B-1-RGB;n:type:ShaderForge.SFN_Lerp,id:330,x:33572,y:32478,varname:node_330,prsc:2|A-331-OUT,B-337-OUT,T-321-B;n:type:ShaderForge.SFN_Vector1,id:331,x:33330,y:32356,varname:node_331,prsc:2,v1:1;n:type:ShaderForge.SFN_Vector3,id:337,x:33330,y:32410,varname:node_337,prsc:2,v1:0.9632353,v2:0.8224623,v3:0.03541304;n:type:ShaderForge.SFN_VertexColor,id:389,x:32886,y:33347,varname:node_389,prsc:2;n:type:ShaderForge.SFN_NormalVector,id:391,x:33073,y:33231,prsc:2,pt:False;n:type:ShaderForge.SFN_Time,id:392,x:33073,y:33586,varname:node_392,prsc:2;n:type:ShaderForge.SFN_Sin,id:393,x:33479,y:33548,varname:node_393,prsc:2|IN-413-OUT;n:type:ShaderForge.SFN_Multiply,id:394,x:33729,y:33420,cmnt:Wind animation,varname:node_394,prsc:2|A-562-OUT,B-389-R,C-393-OUT,D-403-OUT;n:type:ShaderForge.SFN_Vector1,id:403,x:33479,y:33699,varname:node_403,prsc:2,v1:0.016;n:type:ShaderForge.SFN_Add,id:413,x:33298,y:33548,varname:node_413,prsc:2|A-519-OUT,B-392-T;n:type:ShaderForge.SFN_Multiply,id:519,x:33073,y:33457,varname:node_519,prsc:2|A-389-B,B-520-OUT;n:type:ShaderForge.SFN_Pi,id:520,x:32919,y:33494,varname:node_520,prsc:2;n:type:ShaderForge.SFN_Add,id:561,x:33294,y:33171,varname:node_561,prsc:2|A-563-OUT,B-391-OUT;n:type:ShaderForge.SFN_Normalize,id:562,x:33479,y:33280,varname:node_562,prsc:2|IN-561-OUT;n:type:ShaderForge.SFN_Vector3,id:563,x:33073,y:33131,cmnt:Wind direction,varname:node_563,prsc:2,v1:1,v2:0.5,v3:0.5;proporder:1-2;pass:END;sub:END;*/ Shader "Shader Forge/Examples/Animated Vegetation" { Properties { @@ -26,7 +27,9 @@ Shader "Shader Forge/Examples/Animated Vegetation" { CGPROGRAM #pragma vertex vert #pragma fragment frag + #ifndef UNITY_PASS_FORWARDBASE #define UNITY_PASS_FORWARDBASE + #endif //UNITY_PASS_FORWARDBASE #define SHOULD_SAMPLE_SH ( defined (LIGHTMAP_OFF) && defined(DYNAMICLIGHTMAP_OFF) ) #include "UnityCG.cginc" #include "AutoLight.cginc" @@ -61,7 +64,7 @@ Shader "Shader Forge/Examples/Animated Vegetation" { float3 tangentDir : TEXCOORD5; float3 bitangentDir : TEXCOORD6; float4 vertexColor : COLOR; - LIGHTING_COORDS(7,8) + UNITY_LIGHTING_COORDS(7,8) UNITY_FOG_COORDS(9) #if defined(LIGHTMAP_ON) || defined(UNITY_SHOULD_SAMPLE_SH) float4 ambientOrLightmapUV : TEXCOORD10; @@ -90,7 +93,7 @@ Shader "Shader Forge/Examples/Animated Vegetation" { float3 lightColor = _LightColor0.rgb; o.pos = UnityObjectToClipPos( v.vertex ); UNITY_TRANSFER_FOG(o,o.pos); - TRANSFER_VERTEX_TO_FRAGMENT(o) + UNITY_TRANSFER_LIGHTING(o, v.texcoord1); return o; } float4 frag(VertexOutput i, float facing : VFACE) : COLOR { @@ -110,7 +113,7 @@ Shader "Shader Forge/Examples/Animated Vegetation" { float3 lightColor = _LightColor0.rgb; float3 halfDirection = normalize(viewDirection+lightDirection); ////// Lighting: - float attenuation = LIGHT_ATTENUATION(i); + UNITY_LIGHT_ATTENUATION(attenuation, i, i.posWorld.xyz); float3 attenColor = attenuation * _LightColor0.xyz; ///////// Gloss: float gloss = 0.4; @@ -182,7 +185,9 @@ Shader "Shader Forge/Examples/Animated Vegetation" { CGPROGRAM #pragma vertex vert #pragma fragment frag + #ifndef UNITY_PASS_FORWARDADD #define UNITY_PASS_FORWARDADD + #endif //UNITY_PASS_FORWARDADD #define SHOULD_SAMPLE_SH ( defined (LIGHTMAP_OFF) && defined(DYNAMICLIGHTMAP_OFF) ) #include "UnityCG.cginc" #include "AutoLight.cginc" @@ -217,7 +222,7 @@ Shader "Shader Forge/Examples/Animated Vegetation" { float3 tangentDir : TEXCOORD5; float3 bitangentDir : TEXCOORD6; float4 vertexColor : COLOR; - LIGHTING_COORDS(7,8) + UNITY_LIGHTING_COORDS(7,8) UNITY_FOG_COORDS(9) }; VertexOutput vert (VertexInput v) { @@ -235,7 +240,7 @@ Shader "Shader Forge/Examples/Animated Vegetation" { float3 lightColor = _LightColor0.rgb; o.pos = UnityObjectToClipPos( v.vertex ); UNITY_TRANSFER_FOG(o,o.pos); - TRANSFER_VERTEX_TO_FRAGMENT(o) + UNITY_TRANSFER_LIGHTING(o, v.texcoord1); return o; } float4 frag(VertexOutput i, float facing : VFACE) : COLOR { @@ -254,7 +259,7 @@ Shader "Shader Forge/Examples/Animated Vegetation" { float3 lightColor = _LightColor0.rgb; float3 halfDirection = normalize(viewDirection+lightDirection); ////// Lighting: - float attenuation = LIGHT_ATTENUATION(i); + UNITY_LIGHT_ATTENUATION(attenuation, i, i.posWorld.xyz); float3 attenColor = attenuation * _LightColor0.xyz; ///////// Gloss: float gloss = 0.4; @@ -295,7 +300,9 @@ Shader "Shader Forge/Examples/Animated Vegetation" { CGPROGRAM #pragma vertex vert #pragma fragment frag + #ifndef UNITY_PASS_SHADOWCASTER #define UNITY_PASS_SHADOWCASTER + #endif //UNITY_PASS_SHADOWCASTER #define SHOULD_SAMPLE_SH ( defined (LIGHTMAP_OFF) && defined(DYNAMICLIGHTMAP_OFF) ) #include "UnityCG.cginc" #include "Lighting.cginc" @@ -364,7 +371,9 @@ Shader "Shader Forge/Examples/Animated Vegetation" { CGPROGRAM #pragma vertex vert #pragma fragment frag + #ifndef UNITY_PASS_META 1 #define UNITY_PASS_META 1 + #endif UNITY_PASS_META 1 #define SHOULD_SAMPLE_SH ( defined (LIGHTMAP_OFF) && defined(DYNAMICLIGHTMAP_OFF) ) #include "UnityCG.cginc" #include "Lighting.cginc" diff --git a/Examples/Vegetation.shader.meta b/Examples/Vegetation.shader.meta index 1e4e51e7..8e8458a0 100644 --- a/Examples/Vegetation.shader.meta +++ b/Examples/Vegetation.shader.meta @@ -1,11 +1,9 @@ fileFormatVersion: 2 guid: e17d9c256530145c39caf8efc8c94a16 -timeCreated: 1503327530 -licenseType: Store ShaderImporter: - defaultTextures: - - _Diffuse: {fileID: 2800000, guid: 66321cc856b03e245ac41ed8a53e0ecc, type: 3} - - _Normal: {fileID: 2800000, guid: cb6c5165ed180c543be39ed70e72abc8, type: 3} + externalObjects: {} + defaultTextures: [] + nonModifiableTextures: [] userData: assetBundleName: assetBundleVariant: diff --git a/Examples/VertexAnimation.shader b/Examples/VertexAnimation.shader index bcbbdbd8..315118ba 100644 --- a/Examples/VertexAnimation.shader +++ b/Examples/VertexAnimation.shader @@ -1,7 +1,8 @@ -// Shader created with Shader Forge v1.38 -// Shader Forge (c) Neat Corporation / Joachim Holmer - http://www.acegikmo.com/shaderforge/ +// Shader created with Shader Forge v1.42 +// Shader Forge (c) Freya Holmer - http://www.acegikmo.com/shaderforge/ +// Enhanced by Antoine Guillon / Arkham Development - http://www.arkham-development.com/ // Note: Manually altering this data may prevent you from opening it in Shader Forge -/*SF_DATA;ver:1.38;sub:START;pass:START;ps:flbk:,iptp:0,cusa:False,bamd:0,cgin:,lico:1,lgpr:1,limd:1,spmd:1,trmd:0,grmd:0,uamb:True,mssp:True,bkdf:True,hqlp:False,rprd:False,enco:False,rmgx:True,imps:True,rpth:0,vtps:0,hqsc:True,nrmq:1,nrsp:0,vomd:0,spxs:False,tesm:0,olmd:1,culm:0,bsrc:0,bdst:1,dpts:2,wrdp:True,dith:0,atcv:False,rfrpo:True,rfrpn:Refraction,coma:15,ufog:True,aust:True,igpj:False,qofs:0,qpre:1,rntp:1,fgom:False,fgoc:False,fgod:False,fgor:False,fgmd:0,fgcr:0.5,fgcg:0.5,fgcb:0.5,fgca:1,fgde:0.01,fgrn:0,fgrf:300,stcl:False,atwp:False,stva:128,stmr:255,stmw:255,stcp:6,stps:0,stfa:0,stfz:0,ofsf:0,ofsu:0,f2p0:False,fnsp:False,fnfb:False,fsmp:False;n:type:ShaderForge.SFN_Final,id:1,x:33430,y:32397,varname:node_1,prsc:2|diff-149-OUT,spec-4921-OUT,normal-4935-OUT,emission-166-OUT,transm-133-OUT,lwrap-133-OUT,voffset-140-OUT;n:type:ShaderForge.SFN_Subtract,id:18,x:32114,y:32340,varname:node_18,prsc:2|A-22-OUT,B-19-OUT;n:type:ShaderForge.SFN_Vector1,id:19,x:31935,y:32422,varname:node_19,prsc:2,v1:0.5;n:type:ShaderForge.SFN_Abs,id:21,x:32286,y:32340,varname:node_21,prsc:2|IN-18-OUT;n:type:ShaderForge.SFN_Frac,id:22,x:31935,y:32288,varname:node_22,prsc:2|IN-24-OUT;n:type:ShaderForge.SFN_Panner,id:23,x:31597,y:32288,varname:node_23,prsc:2,spu:0.25,spv:0|UVIN-5169-UVOUT;n:type:ShaderForge.SFN_ComponentMask,id:24,x:31764,y:32288,varname:node_24,prsc:2,cc1:0,cc2:-1,cc3:-1,cc4:-1|IN-23-UVOUT;n:type:ShaderForge.SFN_Multiply,id:25,x:32461,y:32390,cmnt:Triangle Wave,varname:node_25,prsc:2|A-21-OUT,B-26-OUT;n:type:ShaderForge.SFN_Vector1,id:26,x:32286,y:32476,varname:node_26,prsc:2,v1:2;n:type:ShaderForge.SFN_Power,id:133,x:32665,y:32453,cmnt:Panning gradient,varname:node_133,prsc:2|VAL-25-OUT,EXP-8547-OUT;n:type:ShaderForge.SFN_NormalVector,id:139,x:32892,y:32957,prsc:2,pt:False;n:type:ShaderForge.SFN_Multiply,id:140,x:33119,y:32787,varname:node_140,prsc:2|A-1924-OUT,B-142-OUT,C-139-OUT;n:type:ShaderForge.SFN_ValueProperty,id:142,x:32892,y:32789,ptovrint:False,ptlb:Bulge Scale,ptin:_BulgeScale,varname:_BulgeScale,prsc:2,glob:False,taghide:False,taghdr:False,tagprd:False,tagnsco:False,tagnrm:False,v1:0.2;n:type:ShaderForge.SFN_Lerp,id:149,x:33119,y:32115,varname:node_149,prsc:2|A-151-RGB,B-8608-OUT,T-133-OUT;n:type:ShaderForge.SFN_Lerp,id:150,x:32892,y:32285,varname:node_150,prsc:2|A-267-RGB,B-265-OUT,T-133-OUT;n:type:ShaderForge.SFN_Tex2d,id:151,x:32892,y:31949,ptovrint:False,ptlb:Diffuse,ptin:_Diffuse,varname:_Diffuse,prsc:2,glob:False,taghide:False,taghdr:False,tagprd:False,tagnsco:False,tagnrm:False,tex:b66bceaf0cc0ace4e9bdc92f14bba709,ntxv:0,isnm:False;n:type:ShaderForge.SFN_Multiply,id:166,x:33119,y:32619,cmnt:Glow,varname:node_166,prsc:2|A-168-RGB,B-8677-OUT,C-1924-OUT;n:type:ShaderForge.SFN_Color,id:168,x:32892,y:32453,ptovrint:False,ptlb:Glow Color,ptin:_GlowColor,varname:_GlowColor,prsc:2,glob:False,taghide:False,taghdr:False,tagprd:False,tagnsco:False,tagnrm:False,c1:1,c2:0.2391481,c3:0.1102941,c4:1;n:type:ShaderForge.SFN_Vector3,id:265,x:32665,y:32301,varname:node_265,prsc:2,v1:0,v2:0,v3:1;n:type:ShaderForge.SFN_Tex2d,id:267,x:32665,y:32133,ptovrint:False,ptlb:Normals,ptin:_Normals,varname:_Normals,prsc:2,glob:False,taghide:False,taghdr:False,tagprd:False,tagnsco:False,tagnrm:False,tex:bbab0a6f7bae9cf42bf057d8ee2755f6,ntxv:3,isnm:True;n:type:ShaderForge.SFN_Vector1,id:4921,x:33119,y:32283,varname:node_4921,prsc:2,v1:1;n:type:ShaderForge.SFN_Normalize,id:4935,x:33119,y:32451,varname:node_4935,prsc:2|IN-150-OUT;n:type:ShaderForge.SFN_ValueProperty,id:8547,x:32461,y:32537,ptovrint:False,ptlb:Bulge Shape,ptin:_BulgeShape,varname:_BulgeShape,prsc:2,glob:False,taghide:False,taghdr:False,tagprd:False,tagnsco:False,tagnrm:False,v1:5;n:type:ShaderForge.SFN_Vector1,id:8608,x:32892,y:32117,varname:node_8608,prsc:2,v1:0.1;n:type:ShaderForge.SFN_ValueProperty,id:8677,x:32892,y:32621,ptovrint:False,ptlb:Glow Intensity,ptin:_GlowIntensity,varname:_GlowIntensity,prsc:2,glob:False,taghide:False,taghdr:False,tagprd:False,tagnsco:False,tagnrm:False,v1:1.2;n:type:ShaderForge.SFN_TexCoord,id:5169,x:31434,y:32288,varname:node_5169,prsc:2,uv:0,uaff:False;n:type:ShaderForge.SFN_Relay,id:1924,x:32892,y:32697,varname:node_1924,prsc:2|IN-133-OUT;proporder:151-267-168-142-8547-8677;pass:END;sub:END;*/ +/*SF_DATA;ver:1.42;sub:START;pass:START;ps:flbk:,iptp:0,cusa:False,bamd:0,cgin:,lico:1,lgpr:1,limd:1,spmd:1,trmd:0,grmd:0,uamb:True,mssp:True,bkdf:True,hqlp:False,rprd:False,enco:False,rmgx:True,imps:True,rpth:0,vtps:0,hqsc:True,nrmq:1,nrsp:0,vomd:0,spxs:False,tesm:0,olmd:1,culm:0,bsrc:0,bdst:1,dpts:2,wrdp:True,dith:0,atcv:False,rfrpo:True,rfrpn:Refraction,coma:15,ufog:True,aust:True,igpj:False,qofs:0,qpre:1,rntp:1,fgom:False,fgoc:False,fgod:False,fgor:False,fgmd:0,fgcr:0.5,fgcg:0.5,fgcb:0.5,fgca:1,fgde:0.01,fgrn:0,fgrf:300,stcl:False,atwp:False,stva:128,stmr:255,stmw:255,stcp:6,stps:0,stfa:0,stfz:0,ofsf:0,ofsu:0,f2p0:False,fnsp:False,fnfb:False,fsmp:False;n:type:ShaderForge.SFN_Final,id:1,x:33430,y:32397,varname:node_1,prsc:2|diff-149-OUT,spec-4921-OUT,normal-4935-OUT,emission-166-OUT,transm-133-OUT,lwrap-133-OUT,voffset-140-OUT;n:type:ShaderForge.SFN_Subtract,id:18,x:32114,y:32340,varname:node_18,prsc:2|A-22-OUT,B-19-OUT;n:type:ShaderForge.SFN_Vector1,id:19,x:31935,y:32422,varname:node_19,prsc:2,v1:0.5;n:type:ShaderForge.SFN_Abs,id:21,x:32286,y:32340,varname:node_21,prsc:2|IN-18-OUT;n:type:ShaderForge.SFN_Frac,id:22,x:31935,y:32288,varname:node_22,prsc:2|IN-24-OUT;n:type:ShaderForge.SFN_Panner,id:23,x:31597,y:32288,varname:node_23,prsc:2,spu:0.25,spv:0|UVIN-5169-UVOUT;n:type:ShaderForge.SFN_ComponentMask,id:24,x:31764,y:32288,varname:node_24,prsc:2,cc1:0,cc2:-1,cc3:-1,cc4:-1|IN-23-UVOUT;n:type:ShaderForge.SFN_Multiply,id:25,x:32461,y:32390,cmnt:Triangle Wave,varname:node_25,prsc:2|A-21-OUT,B-26-OUT;n:type:ShaderForge.SFN_Vector1,id:26,x:32286,y:32476,varname:node_26,prsc:2,v1:2;n:type:ShaderForge.SFN_Power,id:133,x:32665,y:32453,cmnt:Panning gradient,varname:node_133,prsc:2|VAL-25-OUT,EXP-8547-OUT;n:type:ShaderForge.SFN_NormalVector,id:139,x:32892,y:32957,prsc:2,pt:False;n:type:ShaderForge.SFN_Multiply,id:140,x:33119,y:32787,varname:node_140,prsc:2|A-1924-OUT,B-142-OUT,C-139-OUT;n:type:ShaderForge.SFN_ValueProperty,id:142,x:32892,y:32789,ptovrint:False,ptlb:Bulge Scale,ptin:_BulgeScale,varname:_BulgeScale,prsc:2,glob:False,taghide:False,taghdr:False,tagprd:False,tagnsco:False,tagnrm:False,v1:0.2;n:type:ShaderForge.SFN_Lerp,id:149,x:33119,y:32115,varname:node_149,prsc:2|A-151-RGB,B-8608-OUT,T-133-OUT;n:type:ShaderForge.SFN_Lerp,id:150,x:32892,y:32285,varname:node_150,prsc:2|A-267-RGB,B-265-OUT,T-133-OUT;n:type:ShaderForge.SFN_Tex2d,id:151,x:32892,y:31949,ptovrint:False,ptlb:Diffuse,ptin:_Diffuse,varname:_Diffuse,prsc:2,glob:False,taghide:False,taghdr:False,tagprd:False,tagnsco:False,tagnrm:False,ntxv:0,isnm:False;n:type:ShaderForge.SFN_Multiply,id:166,x:33119,y:32619,cmnt:Glow,varname:node_166,prsc:2|A-168-RGB,B-8677-OUT,C-1924-OUT;n:type:ShaderForge.SFN_Color,id:168,x:32892,y:32453,ptovrint:False,ptlb:Glow Color,ptin:_GlowColor,varname:_GlowColor,prsc:2,glob:False,taghide:False,taghdr:False,tagprd:False,tagnsco:False,tagnrm:False,c1:1,c2:0.2391481,c3:0.1102941,c4:1;n:type:ShaderForge.SFN_Vector3,id:265,x:32665,y:32301,varname:node_265,prsc:2,v1:0,v2:0,v3:1;n:type:ShaderForge.SFN_Tex2d,id:267,x:32665,y:32133,ptovrint:False,ptlb:Normals,ptin:_Normals,varname:_Normals,prsc:2,glob:False,taghide:False,taghdr:False,tagprd:False,tagnsco:False,tagnrm:False,ntxv:3,isnm:True;n:type:ShaderForge.SFN_Vector1,id:4921,x:33119,y:32283,varname:node_4921,prsc:2,v1:1;n:type:ShaderForge.SFN_Normalize,id:4935,x:33119,y:32451,varname:node_4935,prsc:2|IN-150-OUT;n:type:ShaderForge.SFN_ValueProperty,id:8547,x:32461,y:32537,ptovrint:False,ptlb:Bulge Shape,ptin:_BulgeShape,varname:_BulgeShape,prsc:2,glob:False,taghide:False,taghdr:False,tagprd:False,tagnsco:False,tagnrm:False,v1:5;n:type:ShaderForge.SFN_Vector1,id:8608,x:32892,y:32117,varname:node_8608,prsc:2,v1:0.1;n:type:ShaderForge.SFN_ValueProperty,id:8677,x:32892,y:32621,ptovrint:False,ptlb:Glow Intensity,ptin:_GlowIntensity,varname:_GlowIntensity,prsc:2,glob:False,taghide:False,taghdr:False,tagprd:False,tagnsco:False,tagnrm:False,v1:1.2;n:type:ShaderForge.SFN_TexCoord,id:5169,x:31434,y:32288,varname:node_5169,prsc:2,uv:0,uaff:False;n:type:ShaderForge.SFN_Relay,id:1924,x:32892,y:32697,varname:node_1924,prsc:2|IN-133-OUT;proporder:151-267-168-142-8547-8677;pass:END;sub:END;*/ Shader "Shader Forge/Examples/Vertex Animation" { Properties { @@ -26,7 +27,9 @@ Shader "Shader Forge/Examples/Vertex Animation" { CGPROGRAM #pragma vertex vert #pragma fragment frag + #ifndef UNITY_PASS_FORWARDBASE #define UNITY_PASS_FORWARDBASE + #endif //UNITY_PASS_FORWARDBASE #define SHOULD_SAMPLE_SH ( defined (LIGHTMAP_OFF) && defined(DYNAMICLIGHTMAP_OFF) ) #include "UnityCG.cginc" #include "AutoLight.cginc" @@ -63,7 +66,7 @@ Shader "Shader Forge/Examples/Vertex Animation" { float3 normalDir : TEXCOORD4; float3 tangentDir : TEXCOORD5; float3 bitangentDir : TEXCOORD6; - LIGHTING_COORDS(7,8) + UNITY_LIGHTING_COORDS(7,8) UNITY_FOG_COORDS(9) #if defined(LIGHTMAP_ON) || defined(UNITY_SHOULD_SAMPLE_SH) float4 ambientOrLightmapUV : TEXCOORD10; @@ -85,15 +88,15 @@ Shader "Shader Forge/Examples/Vertex Animation" { o.normalDir = UnityObjectToWorldNormal(v.normal); o.tangentDir = normalize( mul( unity_ObjectToWorld, float4( v.tangent.xyz, 0.0 ) ).xyz ); o.bitangentDir = normalize(cross(o.normalDir, o.tangentDir) * v.tangent.w); - float4 node_3210 = _Time; - float node_133 = pow((abs((frac((o.uv0+node_3210.g*float2(0.25,0)).r)-0.5))*2.0),_BulgeShape); // Panning gradient + float4 node_682 = _Time; + float node_133 = pow((abs((frac((o.uv0+node_682.g*float2(0.25,0)).r)-0.5))*2.0),_BulgeShape); // Panning gradient float node_1924 = node_133; v.vertex.xyz += (node_1924*_BulgeScale*v.normal); o.posWorld = mul(unity_ObjectToWorld, v.vertex); float3 lightColor = _LightColor0.rgb; o.pos = UnityObjectToClipPos( v.vertex ); UNITY_TRANSFER_FOG(o,o.pos); - TRANSFER_VERTEX_TO_FRAGMENT(o) + UNITY_TRANSFER_LIGHTING(o, v.texcoord1); return o; } float4 frag(VertexOutput i) : COLOR { @@ -101,8 +104,8 @@ Shader "Shader Forge/Examples/Vertex Animation" { float3x3 tangentTransform = float3x3( i.tangentDir, i.bitangentDir, i.normalDir); float3 viewDirection = normalize(_WorldSpaceCameraPos.xyz - i.posWorld.xyz); float3 _Normals_var = UnpackNormal(tex2D(_Normals,TRANSFORM_TEX(i.uv0, _Normals))); - float4 node_3210 = _Time; - float node_133 = pow((abs((frac((i.uv0+node_3210.g*float2(0.25,0)).r)-0.5))*2.0),_BulgeShape); // Panning gradient + float4 node_682 = _Time; + float node_133 = pow((abs((frac((i.uv0+node_682.g*float2(0.25,0)).r)-0.5))*2.0),_BulgeShape); // Panning gradient float3 normalLocal = normalize(lerp(_Normals_var.rgb,float3(0,0,1),node_133)); float3 normalDirection = normalize(mul( normalLocal, tangentTransform )); // Perturbed normals float3 viewReflectDirection = reflect( -viewDirection, normalDirection ); @@ -110,7 +113,7 @@ Shader "Shader Forge/Examples/Vertex Animation" { float3 lightColor = _LightColor0.rgb; float3 halfDirection = normalize(viewDirection+lightDirection); ////// Lighting: - float attenuation = LIGHT_ATTENUATION(i); + UNITY_LIGHT_ATTENUATION(attenuation, i, i.posWorld.xyz); float3 attenColor = attenuation * _LightColor0.xyz; ///////// Gloss: float gloss = 0.5; @@ -185,7 +188,9 @@ Shader "Shader Forge/Examples/Vertex Animation" { CGPROGRAM #pragma vertex vert #pragma fragment frag + #ifndef UNITY_PASS_FORWARDADD #define UNITY_PASS_FORWARDADD + #endif //UNITY_PASS_FORWARDADD #define SHOULD_SAMPLE_SH ( defined (LIGHTMAP_OFF) && defined(DYNAMICLIGHTMAP_OFF) ) #include "UnityCG.cginc" #include "AutoLight.cginc" @@ -222,7 +227,7 @@ Shader "Shader Forge/Examples/Vertex Animation" { float3 normalDir : TEXCOORD4; float3 tangentDir : TEXCOORD5; float3 bitangentDir : TEXCOORD6; - LIGHTING_COORDS(7,8) + UNITY_LIGHTING_COORDS(7,8) UNITY_FOG_COORDS(9) }; VertexOutput vert (VertexInput v) { @@ -233,15 +238,15 @@ Shader "Shader Forge/Examples/Vertex Animation" { o.normalDir = UnityObjectToWorldNormal(v.normal); o.tangentDir = normalize( mul( unity_ObjectToWorld, float4( v.tangent.xyz, 0.0 ) ).xyz ); o.bitangentDir = normalize(cross(o.normalDir, o.tangentDir) * v.tangent.w); - float4 node_982 = _Time; - float node_133 = pow((abs((frac((o.uv0+node_982.g*float2(0.25,0)).r)-0.5))*2.0),_BulgeShape); // Panning gradient + float4 node_9774 = _Time; + float node_133 = pow((abs((frac((o.uv0+node_9774.g*float2(0.25,0)).r)-0.5))*2.0),_BulgeShape); // Panning gradient float node_1924 = node_133; v.vertex.xyz += (node_1924*_BulgeScale*v.normal); o.posWorld = mul(unity_ObjectToWorld, v.vertex); float3 lightColor = _LightColor0.rgb; o.pos = UnityObjectToClipPos( v.vertex ); UNITY_TRANSFER_FOG(o,o.pos); - TRANSFER_VERTEX_TO_FRAGMENT(o) + UNITY_TRANSFER_LIGHTING(o, v.texcoord1); return o; } float4 frag(VertexOutput i) : COLOR { @@ -249,15 +254,15 @@ Shader "Shader Forge/Examples/Vertex Animation" { float3x3 tangentTransform = float3x3( i.tangentDir, i.bitangentDir, i.normalDir); float3 viewDirection = normalize(_WorldSpaceCameraPos.xyz - i.posWorld.xyz); float3 _Normals_var = UnpackNormal(tex2D(_Normals,TRANSFORM_TEX(i.uv0, _Normals))); - float4 node_982 = _Time; - float node_133 = pow((abs((frac((i.uv0+node_982.g*float2(0.25,0)).r)-0.5))*2.0),_BulgeShape); // Panning gradient + float4 node_9774 = _Time; + float node_133 = pow((abs((frac((i.uv0+node_9774.g*float2(0.25,0)).r)-0.5))*2.0),_BulgeShape); // Panning gradient float3 normalLocal = normalize(lerp(_Normals_var.rgb,float3(0,0,1),node_133)); float3 normalDirection = normalize(mul( normalLocal, tangentTransform )); // Perturbed normals float3 lightDirection = normalize(lerp(_WorldSpaceLightPos0.xyz, _WorldSpaceLightPos0.xyz - i.posWorld.xyz,_WorldSpaceLightPos0.w)); float3 lightColor = _LightColor0.rgb; float3 halfDirection = normalize(viewDirection+lightDirection); ////// Lighting: - float attenuation = LIGHT_ATTENUATION(i); + UNITY_LIGHT_ATTENUATION(attenuation, i, i.posWorld.xyz); float3 attenColor = attenuation * _LightColor0.xyz; ///////// Gloss: float gloss = 0.5; @@ -299,7 +304,9 @@ Shader "Shader Forge/Examples/Vertex Animation" { CGPROGRAM #pragma vertex vert #pragma fragment frag + #ifndef UNITY_PASS_SHADOWCASTER #define UNITY_PASS_SHADOWCASTER + #endif //UNITY_PASS_SHADOWCASTER #define SHOULD_SAMPLE_SH ( defined (LIGHTMAP_OFF) && defined(DYNAMICLIGHTMAP_OFF) ) #include "UnityCG.cginc" #include "Lighting.cginc" @@ -336,8 +343,8 @@ Shader "Shader Forge/Examples/Vertex Animation" { o.uv1 = v.texcoord1; o.uv2 = v.texcoord2; o.normalDir = UnityObjectToWorldNormal(v.normal); - float4 node_8271 = _Time; - float node_133 = pow((abs((frac((o.uv0+node_8271.g*float2(0.25,0)).r)-0.5))*2.0),_BulgeShape); // Panning gradient + float4 node_4615 = _Time; + float node_133 = pow((abs((frac((o.uv0+node_4615.g*float2(0.25,0)).r)-0.5))*2.0),_BulgeShape); // Panning gradient float node_1924 = node_133; v.vertex.xyz += (node_1924*_BulgeScale*v.normal); o.posWorld = mul(unity_ObjectToWorld, v.vertex); @@ -363,7 +370,9 @@ Shader "Shader Forge/Examples/Vertex Animation" { CGPROGRAM #pragma vertex vert #pragma fragment frag + #ifndef UNITY_PASS_META 1 #define UNITY_PASS_META 1 + #endif UNITY_PASS_META 1 #define SHOULD_SAMPLE_SH ( defined (LIGHTMAP_OFF) && defined(DYNAMICLIGHTMAP_OFF) ) #include "UnityCG.cginc" #include "Lighting.cginc" @@ -404,8 +413,8 @@ Shader "Shader Forge/Examples/Vertex Animation" { o.uv1 = v.texcoord1; o.uv2 = v.texcoord2; o.normalDir = UnityObjectToWorldNormal(v.normal); - float4 node_6924 = _Time; - float node_133 = pow((abs((frac((o.uv0+node_6924.g*float2(0.25,0)).r)-0.5))*2.0),_BulgeShape); // Panning gradient + float4 node_5748 = _Time; + float node_133 = pow((abs((frac((o.uv0+node_5748.g*float2(0.25,0)).r)-0.5))*2.0),_BulgeShape); // Panning gradient float node_1924 = node_133; v.vertex.xyz += (node_1924*_BulgeScale*v.normal); o.posWorld = mul(unity_ObjectToWorld, v.vertex); @@ -419,8 +428,8 @@ Shader "Shader Forge/Examples/Vertex Animation" { UnityMetaInput o; UNITY_INITIALIZE_OUTPUT( UnityMetaInput, o ); - float4 node_6924 = _Time; - float node_133 = pow((abs((frac((i.uv0+node_6924.g*float2(0.25,0)).r)-0.5))*2.0),_BulgeShape); // Panning gradient + float4 node_5748 = _Time; + float node_133 = pow((abs((frac((i.uv0+node_5748.g*float2(0.25,0)).r)-0.5))*2.0),_BulgeShape); // Panning gradient float node_1924 = node_133; o.Emission = (_GlowColor.rgb*_GlowIntensity*node_1924); diff --git a/Examples/VertexAnimation.shader.meta b/Examples/VertexAnimation.shader.meta index cae973b1..326df0dc 100644 --- a/Examples/VertexAnimation.shader.meta +++ b/Examples/VertexAnimation.shader.meta @@ -1,11 +1,9 @@ fileFormatVersion: 2 guid: 6dedef75fd0484cdf8557f522ceaa8bf -timeCreated: 1503327533 -licenseType: Store ShaderImporter: - defaultTextures: - - _Diffuse: {fileID: 2800000, guid: b66bceaf0cc0ace4e9bdc92f14bba709, type: 3} - - _Normals: {fileID: 2800000, guid: bbab0a6f7bae9cf42bf057d8ee2755f6, type: 3} + externalObjects: {} + defaultTextures: [] + nonModifiableTextures: [] userData: assetBundleName: assetBundleVariant: diff --git a/Examples/VertexColorRounding.shader b/Examples/VertexColorRounding.shader index 3b5a9d77..1be14bd8 100644 --- a/Examples/VertexColorRounding.shader +++ b/Examples/VertexColorRounding.shader @@ -1,7 +1,8 @@ -// Shader created with Shader Forge v1.38 -// Shader Forge (c) Neat Corporation / Joachim Holmer - http://www.acegikmo.com/shaderforge/ +// Shader created with Shader Forge v1.42 +// Shader Forge (c) Freya Holmer - http://www.acegikmo.com/shaderforge/ +// Enhanced by Antoine Guillon / Arkham Development - http://www.arkham-development.com/ // Note: Manually altering this data may prevent you from opening it in Shader Forge -/*SF_DATA;ver:1.38;sub:START;pass:START;ps:flbk:,iptp:0,cusa:False,bamd:0,cgin:,lico:0,lgpr:1,limd:0,spmd:1,trmd:0,grmd:0,uamb:False,mssp:True,bkdf:True,hqlp:False,rprd:False,enco:False,rmgx:True,imps:True,rpth:0,vtps:0,hqsc:True,nrmq:1,nrsp:0,vomd:0,spxs:False,tesm:0,olmd:1,culm:0,bsrc:0,bdst:1,dpts:2,wrdp:True,dith:0,atcv:False,rfrpo:True,rfrpn:Refraction,coma:15,ufog:False,aust:True,igpj:False,qofs:0,qpre:1,rntp:1,fgom:False,fgoc:False,fgod:False,fgor:False,fgmd:0,fgcr:0.5,fgcg:0.5,fgcb:0.5,fgca:1,fgde:0.01,fgrn:0,fgrf:300,stcl:False,atwp:False,stva:128,stmr:255,stmw:255,stcp:6,stps:0,stfa:0,stfz:0,ofsf:0,ofsu:0,f2p0:False,fnsp:False,fnfb:False,fsmp:False;n:type:ShaderForge.SFN_Final,id:0,x:34043,y:32815,varname:node_0,prsc:2|emission-585-OUT;n:type:ShaderForge.SFN_VertexColor,id:4,x:33627,y:32845,varname:node_4,prsc:2;n:type:ShaderForge.SFN_Slider,id:38,x:33095,y:32967,ptovrint:False,ptlb:Divisions,ptin:_Divisions,varname:_Divisions,prsc:2,glob:False,taghide:False,taghdr:False,tagprd:False,tagnsco:False,tagnrm:False,min:0,cur:0.5639098,max:1;n:type:ShaderForge.SFN_Power,id:42,x:33443,y:32990,varname:node_42,prsc:2|VAL-38-OUT,EXP-44-OUT;n:type:ShaderForge.SFN_Vector1,id:44,x:33252,y:33034,varname:node_44,prsc:2,v1:2;n:type:ShaderForge.SFN_ConstantLerp,id:137,x:33627,y:32990,varname:node_137,prsc:2,a:0.5,b:12|IN-42-OUT;n:type:ShaderForge.SFN_Posterize,id:585,x:33845,y:32915,varname:node_585,prsc:2|IN-4-RGB,STPS-137-OUT;proporder:38;pass:END;sub:END;*/ +/*SF_DATA;ver:1.42;sub:START;pass:START;ps:flbk:,iptp:0,cusa:False,bamd:0,cgin:,lico:0,lgpr:1,limd:0,spmd:1,trmd:0,grmd:0,uamb:False,mssp:True,bkdf:True,hqlp:False,rprd:False,enco:False,rmgx:True,imps:True,rpth:0,vtps:0,hqsc:True,nrmq:1,nrsp:0,vomd:0,spxs:False,tesm:0,olmd:1,culm:0,bsrc:0,bdst:1,dpts:2,wrdp:True,dith:0,atcv:False,rfrpo:True,rfrpn:Refraction,coma:15,ufog:False,aust:True,igpj:False,qofs:0,qpre:1,rntp:1,fgom:False,fgoc:False,fgod:False,fgor:False,fgmd:0,fgcr:0.5,fgcg:0.5,fgcb:0.5,fgca:1,fgde:0.01,fgrn:0,fgrf:300,stcl:False,atwp:False,stva:128,stmr:255,stmw:255,stcp:6,stps:0,stfa:0,stfz:0,ofsf:0,ofsu:0,f2p0:False,fnsp:False,fnfb:False,fsmp:False;n:type:ShaderForge.SFN_Final,id:0,x:34043,y:32815,varname:node_0,prsc:2|emission-585-OUT;n:type:ShaderForge.SFN_VertexColor,id:4,x:33627,y:32845,varname:node_4,prsc:2;n:type:ShaderForge.SFN_Slider,id:38,x:33095,y:32967,ptovrint:False,ptlb:Divisions,ptin:_Divisions,varname:_Divisions,prsc:2,glob:False,taghide:False,taghdr:False,tagprd:False,tagnsco:False,tagnrm:False,min:0,cur:0.5639098,max:1;n:type:ShaderForge.SFN_Power,id:42,x:33443,y:32990,varname:node_42,prsc:2|VAL-38-OUT,EXP-44-OUT;n:type:ShaderForge.SFN_Vector1,id:44,x:33252,y:33034,varname:node_44,prsc:2,v1:2;n:type:ShaderForge.SFN_ConstantLerp,id:137,x:33627,y:32990,varname:node_137,prsc:2,a:0.5,b:12|IN-42-OUT;n:type:ShaderForge.SFN_Posterize,id:585,x:33845,y:32915,varname:node_585,prsc:2|IN-4-RGB,STPS-137-OUT;proporder:38;pass:END;sub:END;*/ Shader "Shader Forge/Examples/Vertex Color Rounding" { Properties { @@ -21,7 +22,9 @@ Shader "Shader Forge/Examples/Vertex Color Rounding" { CGPROGRAM #pragma vertex vert #pragma fragment frag + #ifndef UNITY_PASS_FORWARDBASE #define UNITY_PASS_FORWARDBASE + #endif //UNITY_PASS_FORWARDBASE #include "UnityCG.cginc" #pragma multi_compile_fwdbase_fullshadows #pragma only_renderers d3d9 d3d11 glcore gles gles3 metal d3d11_9x xboxone ps4 psp2 n3ds wiiu @@ -61,7 +64,9 @@ Shader "Shader Forge/Examples/Vertex Color Rounding" { CGPROGRAM #pragma vertex vert #pragma fragment frag + #ifndef UNITY_PASS_META 1 #define UNITY_PASS_META 1 + #endif UNITY_PASS_META 1 #include "UnityCG.cginc" #include "UnityMetaPass.cginc" #pragma fragmentoption ARB_precision_hint_fastest diff --git a/Examples/VertexColorRounding.shader.meta b/Examples/VertexColorRounding.shader.meta index fe3fa339..72ea7569 100644 --- a/Examples/VertexColorRounding.shader.meta +++ b/Examples/VertexColorRounding.shader.meta @@ -1,9 +1,9 @@ fileFormatVersion: 2 guid: 49227bca0885f49f9898c7a9ba353bc1 -timeCreated: 1503327570 -licenseType: Store ShaderImporter: + externalObjects: {} defaultTextures: [] + nonModifiableTextures: [] userData: assetBundleName: assetBundleVariant: From 041f09a2aa38debc2141a6bd38cf1177f53d1752 Mon Sep 17 00:00:00 2001 From: Pyro_akm Date: Tue, 5 Mar 2019 14:35:42 +0100 Subject: [PATCH 26/27] Fixed UNITY_PASS_META bug. --- Editor/Code/_Evaluator/SF_Evaluator.cs | 156 +++++++++--------- .../ShaderPresets/PresetPBR.shader | 4 +- Examples/LightWrapping.shader | 4 +- Examples/Parallax.shader | 4 +- Examples/PixelRotator.shader | 8 +- Examples/TessellationDisplacement.shader | 32 ++-- Examples/Tiles.shader | 4 +- Examples/Vegetation.shader | 4 +- Examples/VertexAnimation.shader | 32 ++-- Examples/VertexColorRounding.shader | 4 +- 10 files changed, 126 insertions(+), 126 deletions(-) diff --git a/Editor/Code/_Evaluator/SF_Evaluator.cs b/Editor/Code/_Evaluator/SF_Evaluator.cs index 1ed7547e..01efba45 100644 --- a/Editor/Code/_Evaluator/SF_Evaluator.cs +++ b/Editor/Code/_Evaluator/SF_Evaluator.cs @@ -582,9 +582,9 @@ void BeginCG() { App( "#endif //UNITY_PASS_SHADOWCASTER" ); break; case PassType.Meta: - App( "#ifndef UNITY_PASS_META 1" ); + App( "#ifndef UNITY_PASS_META" ); App( "#define UNITY_PASS_META 1" ); - App( "#endif UNITY_PASS_META 1" ); + App( "#endif UNITY_PASS_META" ); break; } @@ -593,7 +593,7 @@ void BeginCG() { App( "#define SHOULD_SAMPLE_SH ( defined (LIGHTMAP_OFF) && defined(DYNAMICLIGHTMAP_OFF) )" ); } - + if(ps.catLighting.reflectprobed ){ App ("#define _GLOSSYENV 1"); } @@ -650,7 +650,7 @@ void BeginCG() { if( UseUnity5Fog() ) App( "#pragma multi_compile_fog" ); - + List groups = new List(); @@ -886,7 +886,7 @@ void CGvars() { if( dependencies.grabPass ) { App( "uniform sampler2D " + ps.catBlending.GetGrabTextureName() + ";" ); } - + if( dependencies.depthTexture ) App( "uniform sampler2D _CameraDepthTexture;" ); @@ -895,7 +895,7 @@ void CGvars() { } - + PropertiesCG(); } @@ -927,7 +927,7 @@ void PrepareLightmapVars() { if( !LightmapThisPass() ) return; - + // TODO U5 LMs @@ -1029,7 +1029,7 @@ void CalcDiffuse() { if( ps.HasTransmission() || ps.HasLightWrapping() ) { - + if( !InDeferredPass() ) { if( !definedNdotL ) { @@ -1051,7 +1051,7 @@ void CalcDiffuse() { App( "float3 NdotLWrap = NdotL * ( 1.0 - w );" ); definedNdotLwrap = true; } - + App( fwdLight + GetWithDiffPow( "max(float3(0.0,0.0,0.0), NdotLWrap + w )" ) + ";" ); if( ps.HasTransmission() ) { App( backLight + GetWithDiffPow( "max(float3(0.0,0.0,0.0), -NdotLWrap + w )" ) + " * " + ps.n_transmission + ";" ); @@ -1132,7 +1132,7 @@ void CalcDiffuse() { lmbStr += ";"; App( lmbStr ); } - + bool ambDiff = ps.mOut.ambientDiffuse.IsConnectedEnabledAndAvailableInThisPass( currentPass ); @@ -1143,7 +1143,7 @@ void CalcDiffuse() { bool hasIndirectLight = ambDiff || shLight || ambLight; // TODO: Missing lightmaps - + if( hasIndirectLight ) { App( "float3 indirectDiffuse = float3(0,0,0);" ); @@ -1151,9 +1151,9 @@ void CalcDiffuse() { - - - + + + @@ -1218,13 +1218,13 @@ void CalcDiffuse() { } } - + //if( SF_Tools.UsingUnity5plus && ps.catLighting.lightMode == SFPSC_Lighting.LightMode.PBL ) { // App( "diffuse *= 0.75;" ); //} - + } @@ -1314,7 +1314,7 @@ void CalcGloss() { } App( "float roughness = perceptualRoughness * perceptualRoughness;" ); } - + if( !InDeferredPass() ) { if( ps.catLighting.remapGlossExponentially ) { App( "float specPow = exp2( gloss * 10.0 + 1.0 );" ); @@ -1322,9 +1322,9 @@ void CalcGloss() { App( "float specPow = gloss;" ); } } - - - + + + } bool DoAmbientSpecThisPass() { @@ -1338,7 +1338,7 @@ void CalcSpecular() { AppDebug( "Specular" ); - + if( currentPass != PassType.Deferred ) { App( "float NdotL = saturate(dot( " + VarNormalDir() + ", lightDirection ));" ); @@ -1413,7 +1413,7 @@ void CalcSpecular() { } else { indirectSpecular += "(0"; } - + if( ambSpec ) { indirectSpecular += " + " + ps.n_ambientSpecular + ")"; @@ -1439,7 +1439,7 @@ void CalcSpecular() { App( "float LdotH = saturate(dot(lightDirection, halfDirection));" ); - + //s += "*NdotL"; // TODO: Really? Is this the cosine part? @@ -1475,13 +1475,13 @@ void CalcSpecular() { } else if( ps.catLighting.energyConserving && DoPassDiffuse() && DoPassSpecular() ){ App( "float specularMonochrome = max( max(specularColor.r, specularColor.g), specularColor.b);" ); } - - - - - + + + + + string specularPBL = ""; // PBL SHADING, normalization term comes after this @@ -1491,9 +1491,9 @@ void CalcSpecular() { // FRESNEL TERM //App( "float3 specularColor = " + ps.n_specular + ";" ); - - + + //specularPBL += "*NdotL"; @@ -1505,7 +1505,7 @@ void CalcSpecular() { initialized_NdotV = true; } - + if( !initialized_NdotH ) { App( "float NdotH = saturate(dot( " + VarNormalDir() + ", halfDirection ));" ); initialized_NdotH = true; @@ -1519,9 +1519,9 @@ void CalcSpecular() { specularPBL += "*visTerm"; - - - + + + } else { @@ -1546,7 +1546,7 @@ void CalcSpecular() { App( "float normTerm = GGXTerm(NdotH, roughness);" ); specularPBL += "*normTerm"; - + } else { App( "float normTerm = (specPow + 8.0 ) / (8.0 * Pi);" ); directSpecular += "*normTerm"; @@ -1574,12 +1574,12 @@ void CalcSpecular() { App( "float NdotV = max(0.0,dot( " + VarNormalDir() + ", viewDirection ));" ); initialized_NdotV = true; } - + specularPBL = specularPBL.Substring( 1 ); // Remove first * symbol specularPBL = "float specularPBL = (" + specularPBL + ") * UNITY_PI;"; - + App( specularPBL ); App( "#ifdef UNITY_COLORSPACE_GAMMA" ); @@ -1607,7 +1607,7 @@ void CalcSpecular() { scope--; App( "#endif" ); } - + // Kill spec if color = 0 App( "specularPBL *= any(specularColor) ? 1.0 : 0.0;" ); @@ -1630,7 +1630,7 @@ void CalcSpecular() { } - + string specular = ""; @@ -1658,7 +1658,7 @@ void CalcSpecular() { if( !InDeferredPass() ) { specular = "float3 specular = (directSpecular + indirectSpecular);"; } - + } else if(!InDeferredPass()){ specular = "float3 specular = directSpecular;"; } @@ -1666,7 +1666,7 @@ void CalcSpecular() { if( !InDeferredPass() ) App( specular ); // Specular - + @@ -1921,7 +1921,7 @@ void Lighting() { //if( !InDeferredPass() ) //CalcGloss(); CalcSpecular(); - //AppDebug("Spec done"); + //AppDebug("Spec done"); } if( DoPassDiffuse() ) // Diffuse + texture (If not vertex lit) @@ -1942,11 +1942,11 @@ void Lighting() { /* bool fresnelIndirectPBL = Unity5PBL() && - ( ps.catLighting.reflectprobed || ps.HasAmbientSpecular() ) && + ( ps.catLighting.reflectprobed || ps.HasAmbientSpecular() ) && (currentPass == PassType.FwdBase || currentPass == PassType.PrePassFinal) ;*/ - + if(!InDeferredPass()){ @@ -1958,11 +1958,11 @@ void Lighting() { new string[] { diffuse, "specular", "emissive" }, "0" ); - + App( "float3 finalColor = " + s + ";" ); } - - + + } } @@ -1998,9 +1998,9 @@ void CalcGIdata(){ scope--; App( "#endif" ); } - - - + + + App("UnityGIInput d;"); App("d.light = light;"); App("d.worldPos = i.posWorld.xyz;"); @@ -2022,8 +2022,8 @@ void CalcGIdata(){ scope--; App( "#endif" ); } - - + + if(DoPassSpecular() && ps.catLighting.reflectprobed){ @@ -2048,7 +2048,7 @@ void CalcGIdata(){ } - + string glossStr = DoPassSpecular() ? "gloss" : "0"; App( "Unity_GlossyEnvironmentData ugls_en_data;" ); @@ -2062,8 +2062,8 @@ void CalcGIdata(){ App ("lightDirection = gi.light.dir;"); App ("lightColor = gi.light.color;"); } - - + + } @@ -2306,13 +2306,13 @@ void VertexOutputStruct() { scope--; App( "#endif" ); } - - + + } @@ -2420,7 +2420,7 @@ void Vertex() { InitObjectScale(); if( editor.mainNode.vertexOffset.IsConnectedAndEnabled() ) { - + if( ps.catGeometry.vertexOffsetMode == SFPSC_Geometry.VertexOffsetMode.Relative ) App( "v.vertex.xyz += " + ps.n_vertexOffset + ";" ); else @@ -2438,7 +2438,7 @@ void Vertex() { if( !editor.nodeView.treeStatus.viewDirectionInVertOffset ) { InitViewDirVert(); } - + InitReflectionDir(); if( dependencies.frag_lightDirection ) { InitLightDir(); @@ -2451,9 +2451,9 @@ void Vertex() { if( ps.catExperimental.forceSkipModelProjection ){ positioningPrefix = "mul(UNITY_MATRIX_VP, "; // Local space. Broken for shadows due to TRANSFER_SHADOW_CASTER assuming model projections } else { - positioningPrefix = "UnityObjectToClipPos( "; // World space + positioningPrefix = "UnityObjectToClipPos( "; // World space } - + string positioningSuffix = " );"; if( ps.catGeometry.vertexPositioning == SFPSC_Geometry.VertexPositioning.ClipSpace ) { positioningPrefix = ""; @@ -2503,7 +2503,7 @@ void Vertex() { scope--; App( "#endif" ); } - + // New in Unity 5 if( UseUnity5FogInThisPass() ) { @@ -2600,7 +2600,7 @@ void Fragment() { } App( "float4 frag(VertexOutput i" + vface + ") : COLOR {" ); } - + scope++; if( dependencies.frag_facing ) { @@ -2644,9 +2644,9 @@ void Fragment() { - + Lighting(); // This is ignored in shadow passes - + if( currentPass == PassType.Meta ) { LightmapMetaPassFrag(); @@ -2705,7 +2705,7 @@ void DeferredFragReturn() { } else { App( "outSpecSmoothness = half4(0,0,0,0);" ); } - + // NORMALS App( "outNormal = half4( normalDirection * 0.5 + 0.5, 1 );" ); @@ -2731,13 +2731,13 @@ void DeferredFragReturn() { App( "outEmission.rgb += indirectDiffuse * diffuseColor;" ); // No need for diffuse AO, since that's covered already } - + App( "#ifndef UNITY_HDR_ON" ); scope++; App( "outEmission.rgb = exp2(-outEmission.rgb);" ); scope--; App( "#endif" ); - + } @@ -2750,7 +2750,7 @@ void LightmapMetaPassFrag() { bool hasDiffuse = ps.mOut.diffuse.IsConnectedEnabledAndAvailable(); bool hasSpec = ps.mOut.specular.IsConnectedEnabledAndAvailable(); bool hasGloss = ps.mOut.gloss.IsConnectedEnabledAndAvailable(); - + App( "UnityMetaInput o;" ); App( "UNITY_INITIALIZE_OUTPUT( UnityMetaInput, o );" ); @@ -2762,7 +2762,7 @@ void LightmapMetaPassFrag() { } App( "" ); - + if(hasDiffuse) App( "float3 diffColor = " + ps.n_diffuse + ";" ); else @@ -2795,7 +2795,7 @@ void LightmapMetaPassFrag() { App( "float roughness = 1.0 - " + ps.n_gloss + ";" ); } } - + if( hasSpec ) App( "o.Albedo = diffColor + specColor * roughness * roughness * 0.5;" ); else @@ -2807,9 +2807,9 @@ void LightmapMetaPassFrag() { else App( "o.Albedo = diffColor;" ); } - - - + + + App( "" ); //App( "o.Albedo = float3(0,1,0);" ); // Debug @@ -2920,7 +2920,7 @@ void TransferBarycentric( string s ) { void FuncTessellation() { - + switch( ps.catGeometry.tessellationMode ) { case SFPSC_Geometry.TessellationMode.Regular: @@ -2948,7 +2948,7 @@ void FuncTessellation() { App( "}" ); break; } - + } void FuncDisplacement() { @@ -3008,7 +3008,7 @@ void CheckClip() { string ditherStr = SFPSC_Blending.strDithering[(int)ps.catBlending.dithering].ToString().Split( ' ' )[0]; App( "clip( BinaryDither" + ditherStr + "(" + ps.n_alphaClip + " - 1.5, sceneUVs) );" ); } - + } @@ -3034,7 +3034,7 @@ public void GrabPass() { App( "GrabPass{ }" ); else App( "GrabPass{ \"" + ps.catBlending.GetGrabTextureName() + "\" }" ); - + } //////////////////////////////////////////////////////////////// DEFERRED diff --git a/Editor/InternalResources/ShaderPresets/PresetPBR.shader b/Editor/InternalResources/ShaderPresets/PresetPBR.shader index 55821a87..7f7ab4d1 100644 --- a/Editor/InternalResources/ShaderPresets/PresetPBR.shader +++ b/Editor/InternalResources/ShaderPresets/PresetPBR.shader @@ -345,9 +345,9 @@ Shader "Hidden/Shader Forge/PresetPBR" { CGPROGRAM #pragma vertex vert #pragma fragment frag - #ifndef UNITY_PASS_META 1 + #ifndef UNITY_PASS_META #define UNITY_PASS_META 1 - #endif UNITY_PASS_META 1 + #endif UNITY_PASS_META #define SHOULD_SAMPLE_SH ( defined (LIGHTMAP_OFF) && defined(DYNAMICLIGHTMAP_OFF) ) #define _GLOSSYENV 1 #include "UnityCG.cginc" diff --git a/Examples/LightWrapping.shader b/Examples/LightWrapping.shader index 578122d3..b9c984a4 100644 --- a/Examples/LightWrapping.shader +++ b/Examples/LightWrapping.shader @@ -325,9 +325,9 @@ Shader "Shader Forge/Examples/LightWrapping" { CGPROGRAM #pragma vertex vert #pragma fragment frag - #ifndef UNITY_PASS_META 1 + #ifndef UNITY_PASS_META #define UNITY_PASS_META 1 - #endif UNITY_PASS_META 1 + #endif UNITY_PASS_META #define SHOULD_SAMPLE_SH ( defined (LIGHTMAP_OFF) && defined(DYNAMICLIGHTMAP_OFF) ) #define _GLOSSYENV 1 #include "UnityCG.cginc" diff --git a/Examples/Parallax.shader b/Examples/Parallax.shader index 0b0521f1..e7487cd4 100644 --- a/Examples/Parallax.shader +++ b/Examples/Parallax.shader @@ -342,9 +342,9 @@ Shader "Shader Forge/Examples/Parallax" { CGPROGRAM #pragma vertex vert #pragma fragment frag - #ifndef UNITY_PASS_META 1 + #ifndef UNITY_PASS_META #define UNITY_PASS_META 1 - #endif UNITY_PASS_META 1 + #endif UNITY_PASS_META #define SHOULD_SAMPLE_SH ( defined (LIGHTMAP_OFF) && defined(DYNAMICLIGHTMAP_OFF) ) #define _GLOSSYENV 1 #include "UnityCG.cginc" diff --git a/Examples/PixelRotator.shader b/Examples/PixelRotator.shader index 39cc3133..c986065d 100644 --- a/Examples/PixelRotator.shader +++ b/Examples/PixelRotator.shader @@ -82,8 +82,8 @@ Shader "Shader Forge/Examples/Pixel Rotator" { float2 node_741_skew = node_744 + 0.2127+node_744.x*0.3713*node_744.y; float2 node_741_rnd = 4.789*sin(489.123*(node_741_skew)); float node_741 = frac(node_741_rnd.x*node_741_rnd.y*(1+node_741_skew.x)); - float4 node_9374 = _Time; - float node_563_ang = node_9374.g; + float4 node_3064 = _Time; + float node_563_ang = node_3064.g; float node_563_spd = 1.0; float node_563_cos = cos(node_563_spd*node_563_ang); float node_563_sin = sin(node_563_spd*node_563_ang); @@ -170,8 +170,8 @@ Shader "Shader Forge/Examples/Pixel Rotator" { float2 node_741_skew = node_744 + 0.2127+node_744.x*0.3713*node_744.y; float2 node_741_rnd = 4.789*sin(489.123*(node_741_skew)); float node_741 = frac(node_741_rnd.x*node_741_rnd.y*(1+node_741_skew.x)); - float4 node_1046 = _Time; - float node_563_ang = node_1046.g; + float4 node_9415 = _Time; + float node_563_ang = node_9415.g; float node_563_spd = 1.0; float node_563_cos = cos(node_563_spd*node_563_ang); float node_563_sin = sin(node_563_spd*node_563_ang); diff --git a/Examples/TessellationDisplacement.shader b/Examples/TessellationDisplacement.shader index cd6dc67e..f9bdaec6 100644 --- a/Examples/TessellationDisplacement.shader +++ b/Examples/TessellationDisplacement.shader @@ -126,9 +126,9 @@ Shader "Shader Forge/Examples/TessellationDisplacement" { return o; } void displacement (inout VertexInput v){ - float4 node_5409 = _Time; + float4 node_2596 = _Time; float2 node_6 = (v.texcoord0*2.0); - float2 node_161 = (node_6+node_5409.g*float2(0.4,0)); + float2 node_161 = (node_6+node_2596.g*float2(0.4,0)); float node_15 = 1.0; float4 _DisplacementR_var = tex2Dlod(_DisplacementR,float4(TRANSFORM_TEX(node_161, _DisplacementR),0.0,node_15)); float4 node_803 = tex2Dlod(_AORGBHeightA,float4(TRANSFORM_TEX(node_6, _AORGBHeightA),0.0,node_15)); @@ -181,8 +181,8 @@ Shader "Shader Forge/Examples/TessellationDisplacement" { float3 _Normals_var = UnpackNormal(tex2D(_Normals,TRANSFORM_TEX(node_6, _Normals))); float node_15 = 1.0; float4 node_803 = tex2Dlod(_AORGBHeightA,float4(TRANSFORM_TEX(node_6, _AORGBHeightA),0.0,node_15)); - float4 node_5409 = _Time; - float2 node_161 = (node_6+node_5409.g*float2(0.4,0)); + float4 node_2596 = _Time; + float2 node_161 = (node_6+node_2596.g*float2(0.4,0)); float4 _DisplacementR_var = tex2Dlod(_DisplacementR,float4(TRANSFORM_TEX(node_161, _DisplacementR),0.0,node_15)); float node_156 = saturate((node_803.a-_DisplacementR_var.r)); float3 normalLocal = normalize(lerp(float3(0,0,1),_Normals_var.rgb,node_156)); @@ -367,9 +367,9 @@ Shader "Shader Forge/Examples/TessellationDisplacement" { return o; } void displacement (inout VertexInput v){ - float4 node_2146 = _Time; + float4 node_6144 = _Time; float2 node_6 = (v.texcoord0*2.0); - float2 node_161 = (node_6+node_2146.g*float2(0.4,0)); + float2 node_161 = (node_6+node_6144.g*float2(0.4,0)); float node_15 = 1.0; float4 _DisplacementR_var = tex2Dlod(_DisplacementR,float4(TRANSFORM_TEX(node_161, _DisplacementR),0.0,node_15)); float4 node_803 = tex2Dlod(_AORGBHeightA,float4(TRANSFORM_TEX(node_6, _AORGBHeightA),0.0,node_15)); @@ -422,8 +422,8 @@ Shader "Shader Forge/Examples/TessellationDisplacement" { float3 _Normals_var = UnpackNormal(tex2D(_Normals,TRANSFORM_TEX(node_6, _Normals))); float node_15 = 1.0; float4 node_803 = tex2Dlod(_AORGBHeightA,float4(TRANSFORM_TEX(node_6, _AORGBHeightA),0.0,node_15)); - float4 node_2146 = _Time; - float2 node_161 = (node_6+node_2146.g*float2(0.4,0)); + float4 node_6144 = _Time; + float2 node_161 = (node_6+node_6144.g*float2(0.4,0)); float4 _DisplacementR_var = tex2Dlod(_DisplacementR,float4(TRANSFORM_TEX(node_161, _DisplacementR),0.0,node_15)); float node_156 = saturate((node_803.a-_DisplacementR_var.r)); float3 normalLocal = normalize(lerp(float3(0,0,1),_Normals_var.rgb,node_156)); @@ -554,9 +554,9 @@ Shader "Shader Forge/Examples/TessellationDisplacement" { return o; } void displacement (inout VertexInput v){ - float4 node_7931 = _Time; + float4 node_6390 = _Time; float2 node_6 = (v.texcoord0*2.0); - float2 node_161 = (node_6+node_7931.g*float2(0.4,0)); + float2 node_161 = (node_6+node_6390.g*float2(0.4,0)); float node_15 = 1.0; float4 _DisplacementR_var = tex2Dlod(_DisplacementR,float4(TRANSFORM_TEX(node_161, _DisplacementR),0.0,node_15)); float4 node_803 = tex2Dlod(_AORGBHeightA,float4(TRANSFORM_TEX(node_6, _AORGBHeightA),0.0,node_15)); @@ -621,9 +621,9 @@ Shader "Shader Forge/Examples/TessellationDisplacement" { #pragma domain domain #pragma vertex tessvert #pragma fragment frag - #ifndef UNITY_PASS_META 1 + #ifndef UNITY_PASS_META #define UNITY_PASS_META 1 - #endif UNITY_PASS_META 1 + #endif UNITY_PASS_META #define SHOULD_SAMPLE_SH ( defined (LIGHTMAP_OFF) && defined(DYNAMICLIGHTMAP_OFF) ) #define _GLOSSYENV 1 #include "UnityCG.cginc" @@ -699,9 +699,9 @@ Shader "Shader Forge/Examples/TessellationDisplacement" { return o; } void displacement (inout VertexInput v){ - float4 node_348 = _Time; + float4 node_2853 = _Time; float2 node_6 = (v.texcoord0*2.0); - float2 node_161 = (node_6+node_348.g*float2(0.4,0)); + float2 node_161 = (node_6+node_2853.g*float2(0.4,0)); float node_15 = 1.0; float4 _DisplacementR_var = tex2Dlod(_DisplacementR,float4(TRANSFORM_TEX(node_161, _DisplacementR),0.0,node_15)); float4 node_803 = tex2Dlod(_AORGBHeightA,float4(TRANSFORM_TEX(node_6, _AORGBHeightA),0.0,node_15)); @@ -760,8 +760,8 @@ Shader "Shader Forge/Examples/TessellationDisplacement" { float4 node_798 = tex2D(_AORGBHeightA,TRANSFORM_TEX(node_6, _AORGBHeightA)); float node_15 = 1.0; float4 node_803 = tex2Dlod(_AORGBHeightA,float4(TRANSFORM_TEX(node_6, _AORGBHeightA),0.0,node_15)); - float4 node_348 = _Time; - float2 node_161 = (node_6+node_348.g*float2(0.4,0)); + float4 node_2853 = _Time; + float2 node_161 = (node_6+node_2853.g*float2(0.4,0)); float4 _DisplacementR_var = tex2Dlod(_DisplacementR,float4(TRANSFORM_TEX(node_161, _DisplacementR),0.0,node_15)); float node_156 = saturate((node_803.a-_DisplacementR_var.r)); float3 node_162 = lerp(float3(0.4117647,0.3826572,0.3602941),(_Diffuse_var.rgb*node_798.rgb),node_156); diff --git a/Examples/Tiles.shader b/Examples/Tiles.shader index eed5be94..abfe273a 100644 --- a/Examples/Tiles.shader +++ b/Examples/Tiles.shader @@ -335,9 +335,9 @@ Shader "Shader Forge/Examples/Tiles" { CGPROGRAM #pragma vertex vert #pragma fragment frag - #ifndef UNITY_PASS_META 1 + #ifndef UNITY_PASS_META #define UNITY_PASS_META 1 - #endif UNITY_PASS_META 1 + #endif UNITY_PASS_META #define SHOULD_SAMPLE_SH ( defined (LIGHTMAP_OFF) && defined(DYNAMICLIGHTMAP_OFF) ) #define _GLOSSYENV 1 #include "UnityCG.cginc" diff --git a/Examples/Vegetation.shader b/Examples/Vegetation.shader index be13ddad..a2b96876 100644 --- a/Examples/Vegetation.shader +++ b/Examples/Vegetation.shader @@ -371,9 +371,9 @@ Shader "Shader Forge/Examples/Animated Vegetation" { CGPROGRAM #pragma vertex vert #pragma fragment frag - #ifndef UNITY_PASS_META 1 + #ifndef UNITY_PASS_META #define UNITY_PASS_META 1 - #endif UNITY_PASS_META 1 + #endif UNITY_PASS_META #define SHOULD_SAMPLE_SH ( defined (LIGHTMAP_OFF) && defined(DYNAMICLIGHTMAP_OFF) ) #include "UnityCG.cginc" #include "Lighting.cginc" diff --git a/Examples/VertexAnimation.shader b/Examples/VertexAnimation.shader index 315118ba..bf47bedb 100644 --- a/Examples/VertexAnimation.shader +++ b/Examples/VertexAnimation.shader @@ -88,8 +88,8 @@ Shader "Shader Forge/Examples/Vertex Animation" { o.normalDir = UnityObjectToWorldNormal(v.normal); o.tangentDir = normalize( mul( unity_ObjectToWorld, float4( v.tangent.xyz, 0.0 ) ).xyz ); o.bitangentDir = normalize(cross(o.normalDir, o.tangentDir) * v.tangent.w); - float4 node_682 = _Time; - float node_133 = pow((abs((frac((o.uv0+node_682.g*float2(0.25,0)).r)-0.5))*2.0),_BulgeShape); // Panning gradient + float4 node_1316 = _Time; + float node_133 = pow((abs((frac((o.uv0+node_1316.g*float2(0.25,0)).r)-0.5))*2.0),_BulgeShape); // Panning gradient float node_1924 = node_133; v.vertex.xyz += (node_1924*_BulgeScale*v.normal); o.posWorld = mul(unity_ObjectToWorld, v.vertex); @@ -104,8 +104,8 @@ Shader "Shader Forge/Examples/Vertex Animation" { float3x3 tangentTransform = float3x3( i.tangentDir, i.bitangentDir, i.normalDir); float3 viewDirection = normalize(_WorldSpaceCameraPos.xyz - i.posWorld.xyz); float3 _Normals_var = UnpackNormal(tex2D(_Normals,TRANSFORM_TEX(i.uv0, _Normals))); - float4 node_682 = _Time; - float node_133 = pow((abs((frac((i.uv0+node_682.g*float2(0.25,0)).r)-0.5))*2.0),_BulgeShape); // Panning gradient + float4 node_1316 = _Time; + float node_133 = pow((abs((frac((i.uv0+node_1316.g*float2(0.25,0)).r)-0.5))*2.0),_BulgeShape); // Panning gradient float3 normalLocal = normalize(lerp(_Normals_var.rgb,float3(0,0,1),node_133)); float3 normalDirection = normalize(mul( normalLocal, tangentTransform )); // Perturbed normals float3 viewReflectDirection = reflect( -viewDirection, normalDirection ); @@ -238,8 +238,8 @@ Shader "Shader Forge/Examples/Vertex Animation" { o.normalDir = UnityObjectToWorldNormal(v.normal); o.tangentDir = normalize( mul( unity_ObjectToWorld, float4( v.tangent.xyz, 0.0 ) ).xyz ); o.bitangentDir = normalize(cross(o.normalDir, o.tangentDir) * v.tangent.w); - float4 node_9774 = _Time; - float node_133 = pow((abs((frac((o.uv0+node_9774.g*float2(0.25,0)).r)-0.5))*2.0),_BulgeShape); // Panning gradient + float4 node_2018 = _Time; + float node_133 = pow((abs((frac((o.uv0+node_2018.g*float2(0.25,0)).r)-0.5))*2.0),_BulgeShape); // Panning gradient float node_1924 = node_133; v.vertex.xyz += (node_1924*_BulgeScale*v.normal); o.posWorld = mul(unity_ObjectToWorld, v.vertex); @@ -254,8 +254,8 @@ Shader "Shader Forge/Examples/Vertex Animation" { float3x3 tangentTransform = float3x3( i.tangentDir, i.bitangentDir, i.normalDir); float3 viewDirection = normalize(_WorldSpaceCameraPos.xyz - i.posWorld.xyz); float3 _Normals_var = UnpackNormal(tex2D(_Normals,TRANSFORM_TEX(i.uv0, _Normals))); - float4 node_9774 = _Time; - float node_133 = pow((abs((frac((i.uv0+node_9774.g*float2(0.25,0)).r)-0.5))*2.0),_BulgeShape); // Panning gradient + float4 node_2018 = _Time; + float node_133 = pow((abs((frac((i.uv0+node_2018.g*float2(0.25,0)).r)-0.5))*2.0),_BulgeShape); // Panning gradient float3 normalLocal = normalize(lerp(_Normals_var.rgb,float3(0,0,1),node_133)); float3 normalDirection = normalize(mul( normalLocal, tangentTransform )); // Perturbed normals float3 lightDirection = normalize(lerp(_WorldSpaceLightPos0.xyz, _WorldSpaceLightPos0.xyz - i.posWorld.xyz,_WorldSpaceLightPos0.w)); @@ -343,8 +343,8 @@ Shader "Shader Forge/Examples/Vertex Animation" { o.uv1 = v.texcoord1; o.uv2 = v.texcoord2; o.normalDir = UnityObjectToWorldNormal(v.normal); - float4 node_4615 = _Time; - float node_133 = pow((abs((frac((o.uv0+node_4615.g*float2(0.25,0)).r)-0.5))*2.0),_BulgeShape); // Panning gradient + float4 node_8966 = _Time; + float node_133 = pow((abs((frac((o.uv0+node_8966.g*float2(0.25,0)).r)-0.5))*2.0),_BulgeShape); // Panning gradient float node_1924 = node_133; v.vertex.xyz += (node_1924*_BulgeScale*v.normal); o.posWorld = mul(unity_ObjectToWorld, v.vertex); @@ -370,9 +370,9 @@ Shader "Shader Forge/Examples/Vertex Animation" { CGPROGRAM #pragma vertex vert #pragma fragment frag - #ifndef UNITY_PASS_META 1 + #ifndef UNITY_PASS_META #define UNITY_PASS_META 1 - #endif UNITY_PASS_META 1 + #endif UNITY_PASS_META #define SHOULD_SAMPLE_SH ( defined (LIGHTMAP_OFF) && defined(DYNAMICLIGHTMAP_OFF) ) #include "UnityCG.cginc" #include "Lighting.cginc" @@ -413,8 +413,8 @@ Shader "Shader Forge/Examples/Vertex Animation" { o.uv1 = v.texcoord1; o.uv2 = v.texcoord2; o.normalDir = UnityObjectToWorldNormal(v.normal); - float4 node_5748 = _Time; - float node_133 = pow((abs((frac((o.uv0+node_5748.g*float2(0.25,0)).r)-0.5))*2.0),_BulgeShape); // Panning gradient + float4 node_8970 = _Time; + float node_133 = pow((abs((frac((o.uv0+node_8970.g*float2(0.25,0)).r)-0.5))*2.0),_BulgeShape); // Panning gradient float node_1924 = node_133; v.vertex.xyz += (node_1924*_BulgeScale*v.normal); o.posWorld = mul(unity_ObjectToWorld, v.vertex); @@ -428,8 +428,8 @@ Shader "Shader Forge/Examples/Vertex Animation" { UnityMetaInput o; UNITY_INITIALIZE_OUTPUT( UnityMetaInput, o ); - float4 node_5748 = _Time; - float node_133 = pow((abs((frac((i.uv0+node_5748.g*float2(0.25,0)).r)-0.5))*2.0),_BulgeShape); // Panning gradient + float4 node_8970 = _Time; + float node_133 = pow((abs((frac((i.uv0+node_8970.g*float2(0.25,0)).r)-0.5))*2.0),_BulgeShape); // Panning gradient float node_1924 = node_133; o.Emission = (_GlowColor.rgb*_GlowIntensity*node_1924); diff --git a/Examples/VertexColorRounding.shader b/Examples/VertexColorRounding.shader index 1be14bd8..5709f0da 100644 --- a/Examples/VertexColorRounding.shader +++ b/Examples/VertexColorRounding.shader @@ -64,9 +64,9 @@ Shader "Shader Forge/Examples/Vertex Color Rounding" { CGPROGRAM #pragma vertex vert #pragma fragment frag - #ifndef UNITY_PASS_META 1 + #ifndef UNITY_PASS_META #define UNITY_PASS_META 1 - #endif UNITY_PASS_META 1 + #endif UNITY_PASS_META #include "UnityCG.cginc" #include "UnityMetaPass.cginc" #pragma fragmentoption ARB_precision_hint_fastest From a2d3055ba72c37c44bb1a8e7a72c9edf15e56cc6 Mon Sep 17 00:00:00 2001 From: Pyro_akm Date: Tue, 5 Mar 2019 14:56:30 +0100 Subject: [PATCH 27/27] Fixed UNITY_PASS_META bug, tessellation support for PS4, XBoxOne, Switch and Vulkan. --- Editor/Code/SFPSC_Meta.cs | 62 +++++++++---------- .../ShaderPresets/PresetBasic.shader | 4 +- .../ShaderPresets/PresetCustomLighting.shader | 4 +- .../ShaderPresets/PresetPBR.shader | 6 +- .../PresetParticleAdditive.shader | 2 +- .../PresetParticleAlphaBlended.shader | 2 +- .../PresetParticleMultiplicative.shader | 2 +- .../ShaderPresets/PresetPostEffect.shader | 2 +- .../ShaderPresets/PresetSky.shader | 2 +- .../ShaderPresets/PresetSprite.shader | 4 +- .../ShaderPresets/PresetUnlit.shader | 2 +- Examples/CustomLighting.shader | 4 +- Examples/LightWrapping.shader | 6 +- Examples/Parallax.shader | 6 +- Examples/PixelRotator.shader | 12 ++-- Examples/Refraction.shader | 6 +- Examples/TessellationDisplacement.shader | 36 +++++------ Examples/Tiles.shader | 6 +- Examples/Vegetation.shader | 8 +-- Examples/VertexAnimation.shader | 36 +++++------ Examples/VertexColorRounding.shader | 4 +- 21 files changed, 108 insertions(+), 108 deletions(-) diff --git a/Editor/Code/SFPSC_Meta.cs b/Editor/Code/SFPSC_Meta.cs index 8181097b..3ca3d89f 100644 --- a/Editor/Code/SFPSC_Meta.cs +++ b/Editor/Code/SFPSC_Meta.cs @@ -4,8 +4,8 @@ using System.Collections.Generic; namespace ShaderForge { - - + + [System.Serializable] public class SFPSC_Meta : SFPS_Category { @@ -115,18 +115,18 @@ public override void Deserialize(string key, string value){ } } - + public override float DrawInner(ref Rect r){ float prevYpos = r.y; r.y = 0; - + r.xMin += 20; r.y += 20; - + EditorGUI.LabelField( r, "Path", EditorStyles.miniLabel ); r.xMin += 30; r.height = 17; @@ -148,10 +148,10 @@ public override float DrawInner(ref Rect r){ r.height = 20; r.xMax += 3; r.y += 20; - - - - + + + + EditorGUI.LabelField( r, "Fallback", EditorStyles.miniLabel ); Rect rStart = new Rect( r ); r.xMin += 50; @@ -174,8 +174,8 @@ public override float DrawInner(ref Rect r){ ps.EndIgnoreChangeCheck(); r = rStart; r.y += r.height; - - + + EditorGUI.LabelField( r, "LOD", EditorStyles.miniLabel ); r.xMin += 30; r.height = 17; @@ -255,31 +255,31 @@ public override float DrawInner(ref Rect r){ } - + r.y += 40; - - - + + + EditorGUI.LabelField( r, "Target renderers:" ); r.xMin += 20; r.y += 20; r.height = 17; float pWidth = r.width; - - - bool onlyDX11GlCore = ps.mOut.tessellation.IsConnectedAndEnabled(); - - + + + bool onlyTessellationCore = ps.mOut.tessellation.IsConnectedAndEnabled(); + + for(int i=0;i

    J+d41+70ie|%}_>la@@$pu{J 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

    =8=$a% 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

    ff6lDU~ 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