29964 lines
2.3 MiB
29964 lines
2.3 MiB
Shader "NatureManufacture/HDRP/Lit/Full Triplanar Cover"
|
|
{
|
|
Properties
|
|
{
|
|
_BaseColor("Base Color", Color) = (1, 1, 1, 0)
|
|
[NoScaleOffset]_BaseColorMap("Base Map(RGB)", 2D) = "white" {}
|
|
_BaseTilingOffset("Base Tiling and Offset", Vector) = (1, 1, 0, 0)
|
|
_BaseTriplanarThreshold("Base Triplanar Threshold", Range(1, 8)) = 5
|
|
[Normal][NoScaleOffset]_BaseNormalMap("Base Normal Map", 2D) = "bump" {}
|
|
_BaseNormalScale("Base Normal Scale", Range(0, 8)) = 1
|
|
[NoScaleOffset]_BaseMaskMap("Base Mask Map MT(R) AO(G) H(B) SM(A)", 2D) = "white" {}
|
|
_BaseMetallic("Base Metallic", Range(0, 1)) = 1
|
|
_BaseAORemapMin("Base AO Remap Min", Range(0, 1)) = 0
|
|
_BaseAORemapMax("Base AO Remap Max", Range(0, 1)) = 1
|
|
_BaseSmoothnessRemapMin("Base Smoothness Remap Min", Range(0, 1)) = 0
|
|
_BaseSmoothnessRemapMax("Base Smoothness Remap Max", Range(0, 1)) = 1
|
|
[ToggleUI]_USEDYNAMICCOVERTSTATICMASKF("Use Dynamic Cover (T) Static Mask (F)", Float) = 1
|
|
[NoScaleOffset]_CoverMaskA("Cover Mask (A) Curvature (R)", 2D) = "white" {}
|
|
_CoverMaskPower("Cover Mask Power", Range(0, 10)) = 1
|
|
_Cover_Amount("Cover Amount", Range(0, 2)) = 0
|
|
_Cover_Amount_Grow_Speed("Cover Amount Grow Speed", Range(0, 3)) = 3
|
|
_CoverDirection("Cover Direction", Vector) = (0, 1, 0, 0)
|
|
_Cover_Max_Angle("Cover Max Angle", Range(0.001, 90)) = 35
|
|
_Cover_Min_Height("Cover Min Height", Float) = -10000
|
|
_Cover_Min_Height_Blending("Cover Min Height Blending", Range(0, 500)) = 1
|
|
_CoverBaseColor("Cover Base Color", Color) = (1, 1, 1, 0)
|
|
[NoScaleOffset]_CoverBaseColorMap("Cover Base Map", 2D) = "white" {}
|
|
_CoverTilingOffset("Cover Tiling Offset", Vector) = (1, 1, 0, 0)
|
|
_CoverTriplanarThreshold("Cover Triplanar Threshold", Range(1, 8)) = 5
|
|
[Normal][NoScaleOffset]_CoverNormalMap("Cover Normal Map", 2D) = "bump" {}
|
|
_CoverNormalScale("Cover Normal Scale", Range(0, 8)) = 1
|
|
_CoverNormalBlendHardness("Cover Normal Blend Hardness", Range(0, 8)) = 1
|
|
_CoverHeightMapMin("Cover Height Map Min", Float) = 0
|
|
_CoverHeightMapMax("Cover Height Map Max", Float) = 1
|
|
_CoverHeightMapOffset("Cover Height Map Offset", Float) = 0
|
|
_CoverHardness("Cover Hardness", Range(0, 10)) = 5
|
|
[NoScaleOffset]_CoverMaskMap("Cover Mask Map MT(R) AO(G) H(B) SM(A)", 2D) = "white" {}
|
|
_CoverMetallic("Cover Metallic", Range(0, 1)) = 1
|
|
_CoverAORemapMin("Cover AO Remap Min", Range(0, 1)) = 0
|
|
_CoverAORemapMax("Cover AO Remap Max", Range(0, 1)) = 1
|
|
_CoverSmoothnessRemapMin("Cover Smoothness Remap Min", Range(0, 1)) = 0
|
|
_CoverSmoothnessRemapMax("Cover Smoothness Remap Max", Range(0, 1)) = 1
|
|
[Normal][NoScaleOffset]_ShapeNormalMap("Shape Normal Map", 2D) = "bump" {}
|
|
_shapeNormalScale("Shape Normal Scale", Float) = 0
|
|
_CovershapeNormalScale("Cover Shape Normal Scale", Float) = 0
|
|
[NoScaleOffset]_ShapeAO("Shape AO(G)", 2D) = "white" {}
|
|
_ShapeAORemapMin("Shape AO Remap Min", Range(0, 1)) = 0
|
|
_ShapeAORemapMax("Shape AO Remap Max", Range(0, 1)) = 1
|
|
_CoverShapeAORemapMin("Cover Shape AO Remap Min", Range(0, 1)) = 0
|
|
_CoverShapeAORemapMax("Cover Shape AO Remap Max", Range(0, 1)) = 1
|
|
[NoScaleOffset]_DetailMap("Detail Map Base (R) Ny(G) Sm(B) Nx(A)", 2D) = "white" {}
|
|
_DetailTilingOffset("Detail Tiling Offset", Vector) = (1, 1, 0, 0)
|
|
_DetailAlbedoScale("Detail Albedo Scale", Range(0, 2)) = 0
|
|
_DetailNormalScale("Detail Normal Scale", Range(0, 2)) = 0
|
|
_DetailSmoothnessScale("Detail Smoothness Scale", Range(0, 2)) = 0
|
|
_DetailCoverAlbedoScale("Detail Cover Albedo Scale", Range(0, 2)) = 0
|
|
_DetailCoverNormalScale("Detail Cover Normal Scale", Range(0, 2)) = 0
|
|
_DetailCoverSmoothnessScale("Detail Cover Smoothness Scale", Range(0, 2)) = 0
|
|
[ToggleUI]_CoverMaskRCurvature("Cover Mask (R) as Curvature", Float) = 0
|
|
_BaseBrightnessCurvMultply("Base Brightness Curv Multply", Float) = 1
|
|
_BaseBrightnessCurvPower("Base Brightness Curv Power", Float) = 1
|
|
_BaseDarknessCurvMultply("Base Darkness Curv Multply", Float) = 1
|
|
_BaseDarknessCurvPower("Base Darkness Curv Power", Float) = 1
|
|
_CoverBrightnessCurvMultply("Cover Brightness Curv Multply", Float) = 1
|
|
_CoverBrightnessCurvPower("Cover Brightness Curv Power", Float) = 1
|
|
_CoverDarknessCurvMultply("Cover Darkness Curv Multply", Float) = 1
|
|
_CoverDarknessCurvPower("Cover Darkness Curv Power", Float) = 1
|
|
_WetColor("Wet Color Vertex(R)", Color) = (0.7735849, 0.7735849, 0.7735849, 0)
|
|
_WetSmoothness("Wet Smoothness Vertex(R)", Range(0, 1)) = 1
|
|
[HideInInspector]_EmissionColor("Color", Color) = (1, 1, 1, 1)
|
|
[HideInInspector]_RenderQueueType("Float", Float) = 1
|
|
[HideInInspector][ToggleUI]_AddPrecomputedVelocity("Boolean", Float) = 0
|
|
[HideInInspector][ToggleUI]_DepthOffsetEnable("Boolean", Float) = 0
|
|
[HideInInspector][ToggleUI]_ConservativeDepthOffsetEnable("Boolean", Float) = 0
|
|
[HideInInspector][ToggleUI]_TransparentWritingMotionVec("Boolean", Float) = 0
|
|
[HideInInspector][ToggleUI]_AlphaCutoffEnable("Boolean", Float) = 0
|
|
[HideInInspector]_TransparentSortPriority("_TransparentSortPriority", Float) = 0
|
|
[HideInInspector][ToggleUI]_UseShadowThreshold("Boolean", Float) = 0
|
|
[HideInInspector][ToggleUI]_DoubleSidedEnable("Boolean", Float) = 0
|
|
[HideInInspector][Enum(Flip, 0, Mirror, 1, None, 2)]_DoubleSidedNormalMode("Float", Float) = 2
|
|
[HideInInspector]_DoubleSidedConstants("Vector4", Vector) = (1, 1, -1, 0)
|
|
[HideInInspector][Enum(Auto, 0, On, 1, Off, 2)]_DoubleSidedGIMode("Float", Float) = 0
|
|
[HideInInspector][ToggleUI]_TransparentDepthPrepassEnable("Boolean", Float) = 0
|
|
[HideInInspector][ToggleUI]_TransparentDepthPostpassEnable("Boolean", Float) = 0
|
|
[HideInInspector][ToggleUI]_PerPixelSorting("Boolean", Float) = 0
|
|
[HideInInspector]_SurfaceType("Float", Float) = 0
|
|
[HideInInspector]_BlendMode("Float", Float) = 0
|
|
[HideInInspector]_SrcBlend("Float", Float) = 1
|
|
[HideInInspector]_DstBlend("Float", Float) = 0
|
|
[HideInInspector]_DstBlend2("Float", Float) = 0
|
|
[HideInInspector]_AlphaSrcBlend("Float", Float) = 1
|
|
[HideInInspector]_AlphaDstBlend("Float", Float) = 0
|
|
[HideInInspector][ToggleUI]_ZWrite("Boolean", Float) = 1
|
|
[HideInInspector][ToggleUI]_TransparentZWrite("Boolean", Float) = 0
|
|
[HideInInspector]_CullMode("Float", Float) = 2
|
|
[HideInInspector][ToggleUI]_EnableFogOnTransparent("Boolean", Float) = 1
|
|
[HideInInspector]_CullModeForward("Float", Float) = 2
|
|
[HideInInspector][Enum(Front, 1, Back, 2)]_TransparentCullMode("Float", Float) = 2
|
|
[HideInInspector][Enum(UnityEngine.Rendering.HighDefinition.OpaqueCullMode)]_OpaqueCullMode("Float", Float) = 2
|
|
[HideInInspector]_ZTestDepthEqualForOpaque("Float", Int) = 3
|
|
[HideInInspector][Enum(UnityEngine.Rendering.CompareFunction)]_ZTestTransparent("Float", Float) = 4
|
|
[HideInInspector][ToggleUI]_TransparentBackfaceEnable("Boolean", Float) = 0
|
|
[HideInInspector][ToggleUI]_RequireSplitLighting("Boolean", Float) = 0
|
|
[HideInInspector][ToggleUI]_ReceivesSSR("Boolean", Float) = 1
|
|
[HideInInspector][ToggleUI]_ReceivesSSRTransparent("Boolean", Float) = 0
|
|
[HideInInspector][ToggleUI]_EnableBlendModePreserveSpecularLighting("Boolean", Float) = 1
|
|
[HideInInspector][ToggleUI]_SupportDecals("Boolean", Float) = 1
|
|
[HideInInspector][ToggleUI]_ExcludeFromTUAndAA("Boolean", Float) = 0
|
|
[HideInInspector]_StencilRef("Float", Int) = 0
|
|
[HideInInspector]_StencilWriteMask("Float", Int) = 6
|
|
[HideInInspector]_StencilRefDepth("Float", Int) = 8
|
|
[HideInInspector]_StencilWriteMaskDepth("Float", Int) = 9
|
|
[HideInInspector]_StencilRefMV("Float", Int) = 40
|
|
[HideInInspector]_StencilWriteMaskMV("Float", Int) = 41
|
|
[HideInInspector]_StencilRefDistortionVec("Float", Int) = 4
|
|
[HideInInspector]_StencilWriteMaskDistortionVec("Float", Int) = 4
|
|
[HideInInspector]_StencilWriteMaskGBuffer("Float", Int) = 15
|
|
[HideInInspector]_StencilRefGBuffer("Float", Int) = 10
|
|
[HideInInspector]_ZTestGBuffer("Float", Int) = 4
|
|
[HideInInspector][ToggleUI]_RayTracing("Boolean", Float) = 0
|
|
[HideInInspector][Enum(None, 0, Planar, 1, Sphere, 2, Thin, 3)]_RefractionModel("Float", Float) = 0
|
|
[HideInInspector][Enum(Standard, 1)]_MaterialID("_MaterialID", Float) = 1
|
|
[HideInInspector]_MaterialTypeMask("_MaterialTypeMask", Float) = 2
|
|
[HideInInspector][ToggleUI]_TransmissionEnable("Boolean", Float) = 1
|
|
[HideInInspector][NoScaleOffset]unity_Lightmaps("unity_Lightmaps", 2DArray) = "" {}
|
|
[HideInInspector][NoScaleOffset]unity_LightmapsInd("unity_LightmapsInd", 2DArray) = "" {}
|
|
[HideInInspector][NoScaleOffset]unity_ShadowMasks("unity_ShadowMasks", 2DArray) = "" {}
|
|
}
|
|
SubShader
|
|
{
|
|
Tags
|
|
{
|
|
"RenderPipeline"="HDRenderPipeline"
|
|
"RenderType"="HDLitShader"
|
|
"Queue"="Geometry+225"
|
|
"DisableBatching"="LODFading"
|
|
"ShaderGraphShader"="true"
|
|
"ShaderGraphTargetId"="HDLitSubTarget"
|
|
}
|
|
Pass
|
|
{
|
|
Name "ShadowCaster"
|
|
Tags
|
|
{
|
|
"LightMode" = "ShadowCaster"
|
|
}
|
|
|
|
// Render State
|
|
Cull [_CullMode]
|
|
ZWrite On
|
|
ColorMask 0
|
|
ZClip [_ZClip]
|
|
|
|
// Debug
|
|
// <None>
|
|
|
|
// --------------------------------------------------
|
|
// Pass
|
|
|
|
HLSLPROGRAM
|
|
|
|
// Pragmas
|
|
#pragma multi_compile _ DOTS_INSTANCING_ON
|
|
#pragma instancing_options renderinglayer
|
|
#pragma target 4.5
|
|
#pragma vertex Vert
|
|
#pragma fragment Frag
|
|
#pragma only_renderers d3d11 playstation xboxone xboxseries vulkan metal switch
|
|
#pragma multi_compile_instancing
|
|
|
|
// Keywords
|
|
#pragma shader_feature _ _SURFACE_TYPE_TRANSPARENT
|
|
#pragma shader_feature_local _ _DOUBLESIDED_ON
|
|
#pragma shader_feature_local _ _ADD_PRECOMPUTED_VELOCITY
|
|
#pragma shader_feature_local _ _TRANSPARENT_WRITES_MOTION_VEC _TRANSPARENT_REFRACTIVE_SORT
|
|
#pragma shader_feature_local_fragment _ _ENABLE_FOG_ON_TRANSPARENT
|
|
#pragma multi_compile _ LOD_FADE_CROSSFADE
|
|
#pragma shader_feature_local_fragment _ _DISABLE_DECALS
|
|
#pragma shader_feature_local_raytracing _ _DISABLE_DECALS
|
|
#pragma shader_feature_local_fragment _ _DISABLE_SSR
|
|
#pragma shader_feature_local_raytracing _ _DISABLE_SSR
|
|
#pragma shader_feature_local_fragment _ _DISABLE_SSR_TRANSPARENT
|
|
#pragma shader_feature_local_raytracing _ _DISABLE_SSR_TRANSPARENT
|
|
#pragma shader_feature_local _ _REFRACTION_PLANE _REFRACTION_SPHERE _REFRACTION_THIN
|
|
#pragma shader_feature_local_fragment _MATERIAL_FEATURE_SUBSURFACE_SCATTERING
|
|
#pragma shader_feature_local_raytracing _MATERIAL_FEATURE_SUBSURFACE_SCATTERING
|
|
#pragma shader_feature_local_fragment _MATERIAL_FEATURE_TRANSMISSION
|
|
#pragma shader_feature_local_raytracing _MATERIAL_FEATURE_TRANSMISSION
|
|
#pragma shader_feature_local_fragment _MATERIAL_FEATURE_ANISOTROPY
|
|
#pragma shader_feature_local_raytracing _MATERIAL_FEATURE_ANISOTROPY
|
|
#pragma shader_feature_local_fragment _MATERIAL_FEATURE_IRIDESCENCE
|
|
#pragma shader_feature_local_raytracing _MATERIAL_FEATURE_IRIDESCENCE
|
|
#pragma shader_feature_local_fragment _MATERIAL_FEATURE_SPECULAR_COLOR
|
|
#pragma shader_feature_local_raytracing _MATERIAL_FEATURE_SPECULAR_COLOR
|
|
#pragma shader_feature_local_fragment _MATERIAL_FEATURE_COLORED_TRANSMISSION
|
|
#pragma shader_feature_local_raytracing _MATERIAL_FEATURE_COLORED_TRANSMISSION
|
|
// GraphKeywords: <None>
|
|
|
|
// Defines
|
|
#define SHADERPASS SHADERPASS_SHADOWS
|
|
#define SUPPORT_GLOBAL_MIP_BIAS 1
|
|
|
|
// For custom interpolators to inject a substruct definition before FragInputs definition,
|
|
// allowing for FragInputs to capture CI's intended for ShaderGraph's SDI.
|
|
struct CustomInterpolators
|
|
{
|
|
};
|
|
#define USE_CUSTOMINTERP_SUBSTRUCT
|
|
|
|
|
|
|
|
// TODO: Merge FragInputsVFX substruct with CustomInterpolators.
|
|
#ifdef HAVE_VFX_MODIFICATION
|
|
struct FragInputsVFX
|
|
{
|
|
/* WARNING: $splice Could not find named fragment 'FragInputsVFX' */
|
|
};
|
|
#endif
|
|
|
|
#include "Packages/com.unity.render-pipelines.core/ShaderLibrary/Common.hlsl"
|
|
#include "Packages/com.unity.render-pipelines.core/ShaderLibrary/GeometricTools.hlsl" // Required by Tessellation.hlsl
|
|
#include "Packages/com.unity.render-pipelines.core/ShaderLibrary/Tessellation.hlsl"
|
|
#include "Packages/com.unity.render-pipelines.core/ShaderLibrary/Texture.hlsl"
|
|
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/ShaderLibrary/ShaderVariables.hlsl"
|
|
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/RenderPipeline/ShaderPass/ShaderPass.cs.hlsl"
|
|
#include "Packages/com.unity.render-pipelines.core/ShaderLibrary/TextureStack.hlsl" // Required to be include before we include properties as it define DECLARE_STACK_CB
|
|
#include "Packages/com.unity.render-pipelines.core/ShaderLibrary/DebugMipmapStreamingMacros.hlsl" // Required before including properties as it defines UNITY_TEXTURE_STREAMING_DEBUG_VARS
|
|
// Always include Shader Graph version
|
|
// Always include last to avoid double macros
|
|
#include "Packages/com.unity.shadergraph/ShaderGraphLibrary/Functions.hlsl" // Need to be here for Gradient struct definition
|
|
|
|
// --------------------------------------------------
|
|
// Defines
|
|
|
|
// Attribute
|
|
#define ATTRIBUTES_NEED_NORMAL
|
|
#define ATTRIBUTES_NEED_TANGENT
|
|
|
|
#define HAVE_MESH_MODIFICATION
|
|
|
|
//Strip down the FragInputs.hlsl (on graphics), so we can only optimize the interpolators we use.
|
|
//if by accident something requests contents of FragInputs.hlsl, it will be caught as a compiler error
|
|
//Frag inputs stripping is only enabled when FRAG_INPUTS_ENABLE_STRIPPING is set
|
|
#if !defined(SHADER_STAGE_RAY_TRACING) && SHADERPASS != SHADERPASS_RAYTRACING_GBUFFER && SHADERPASS != SHADERPASS_FULL_SCREEN_DEBUG
|
|
#define FRAG_INPUTS_ENABLE_STRIPPING
|
|
#endif
|
|
|
|
|
|
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/RenderPipeline/ShaderPass/FragInputs.hlsl"
|
|
|
|
|
|
|
|
|
|
// Following two define are a workaround introduce in 10.1.x for RaytracingQualityNode
|
|
// The ShaderGraph don't support correctly migration of this node as it serialize all the node data
|
|
// in the json file making it impossible to uprgrade. Until we get a fix, we do a workaround here
|
|
// to still allow us to rename the field and keyword of this node without breaking existing code.
|
|
#ifdef RAYTRACING_SHADER_GRAPH_DEFAULT
|
|
#define RAYTRACING_SHADER_GRAPH_HIGH
|
|
#endif
|
|
|
|
#ifdef RAYTRACING_SHADER_GRAPH_RAYTRACED
|
|
#define RAYTRACING_SHADER_GRAPH_LOW
|
|
#endif
|
|
// end
|
|
|
|
#ifndef SHADER_UNLIT
|
|
// We need isFrontFace when using double sided - it is not required for unlit as in case of unlit double sided only drive the cullmode
|
|
// VARYINGS_NEED_CULLFACE can be define by VaryingsMeshToPS.FaceSign input if a IsFrontFace Node is included in the shader graph.
|
|
#if defined(_DOUBLESIDED_ON) && !defined(VARYINGS_NEED_CULLFACE)
|
|
#define VARYINGS_NEED_CULLFACE
|
|
#endif
|
|
#endif
|
|
|
|
// Specific Material Define
|
|
#define _SPECULAR_OCCLUSION_FROM_AO 1
|
|
#define _ENERGY_CONSERVING_SPECULAR 1
|
|
|
|
#if _MATERIAL_FEATURE_COLORED_TRANSMISSION
|
|
// Colored Transmission doesn't support clear coat
|
|
#undef _MATERIAL_FEATURE_CLEAR_COAT
|
|
#endif
|
|
|
|
// If we use subsurface scattering, enable output split lighting (for forward pass)
|
|
#if defined(_MATERIAL_FEATURE_SUBSURFACE_SCATTERING) && !defined(_SURFACE_TYPE_TRANSPARENT)
|
|
#define OUTPUT_SPLIT_LIGHTING
|
|
#endif
|
|
|
|
// This shader support recursive rendering for raytracing
|
|
#define HAVE_RECURSIVE_RENDERING
|
|
|
|
// In Path Tracing, For all single-sided, refractive materials, we want to force a thin refraction model
|
|
#if (SHADERPASS == SHADERPASS_PATH_TRACING) && !defined(_DOUBLESIDED_ON) && (defined(_REFRACTION_PLANE) || defined(_REFRACTION_SPHERE))
|
|
#undef _REFRACTION_PLANE
|
|
#undef _REFRACTION_SPHERE
|
|
#define _REFRACTION_THIN
|
|
#endif
|
|
// Caution: we can use the define SHADER_UNLIT onlit after the above Material include as it is the Unlit template who define it
|
|
|
|
// To handle SSR on transparent correctly with a possibility to enable/disable it per framesettings
|
|
// we should have a code like this:
|
|
// if !defined(_DISABLE_SSR_TRANSPARENT)
|
|
// pragma multi_compile _ WRITE_NORMAL_BUFFER
|
|
// endif
|
|
// i.e we enable the multicompile only if we can receive SSR or not, and then C# code drive
|
|
// it based on if SSR transparent in frame settings and not (and stripper can strip it).
|
|
// this is currently not possible with our current preprocessor as _DISABLE_SSR_TRANSPARENT is a keyword not a define
|
|
// so instead we used this and chose to pay the extra cost of normal write even if SSR transaprent is disabled.
|
|
// Ideally the shader graph generator should handle it but condition below can't be handle correctly for now.
|
|
#if SHADERPASS == SHADERPASS_TRANSPARENT_DEPTH_PREPASS
|
|
#if !defined(_DISABLE_SSR_TRANSPARENT) && !defined(SHADER_UNLIT)
|
|
#define WRITE_NORMAL_BUFFER
|
|
#endif
|
|
#endif
|
|
|
|
// See Lit.shader
|
|
#if SHADERPASS == SHADERPASS_MOTION_VECTORS && defined(WRITE_DECAL_BUFFER_AND_RENDERING_LAYER)
|
|
#define WRITE_DECAL_BUFFER
|
|
#endif
|
|
|
|
#ifndef DEBUG_DISPLAY
|
|
// In case of opaque we don't want to perform the alpha test, it is done in depth prepass and we use depth equal for ztest (setup from UI)
|
|
// Don't do it with debug display mode as it is possible there is no depth prepass in this case
|
|
#if !defined(_SURFACE_TYPE_TRANSPARENT)
|
|
#if SHADERPASS == SHADERPASS_FORWARD
|
|
#define SHADERPASS_FORWARD_BYPASS_ALPHA_TEST
|
|
#elif SHADERPASS == SHADERPASS_GBUFFER
|
|
#define SHADERPASS_GBUFFER_BYPASS_ALPHA_TEST
|
|
#endif
|
|
#endif
|
|
#endif
|
|
|
|
// Define _DEFERRED_CAPABLE_MATERIAL for shader capable to run in deferred pass
|
|
#if defined(SHADER_LIT) && !defined(_SURFACE_TYPE_TRANSPARENT)
|
|
#define _DEFERRED_CAPABLE_MATERIAL
|
|
#endif
|
|
|
|
// Translate transparent motion vector define
|
|
#if (defined(_TRANSPARENT_WRITES_MOTION_VEC) || defined(_TRANSPARENT_REFRACTIVE_SORT)) && defined(_SURFACE_TYPE_TRANSPARENT)
|
|
#define _WRITE_TRANSPARENT_MOTION_VECTOR
|
|
#endif
|
|
|
|
// -- Graph Properties
|
|
CBUFFER_START(UnityPerMaterial)
|
|
float4 _BaseColor;
|
|
float4 _BaseColorMap_TexelSize;
|
|
float4 _BaseTilingOffset;
|
|
float _BaseTriplanarThreshold;
|
|
float4 _BaseNormalMap_TexelSize;
|
|
float _BaseNormalScale;
|
|
float4 _BaseMaskMap_TexelSize;
|
|
float _BaseMetallic;
|
|
float _BaseAORemapMin;
|
|
float _BaseAORemapMax;
|
|
float _BaseSmoothnessRemapMin;
|
|
float _BaseSmoothnessRemapMax;
|
|
float _USEDYNAMICCOVERTSTATICMASKF;
|
|
float4 _CoverMaskA_TexelSize;
|
|
float _CoverMaskPower;
|
|
float _Cover_Amount;
|
|
float _Cover_Amount_Grow_Speed;
|
|
float3 _CoverDirection;
|
|
float _Cover_Max_Angle;
|
|
float _Cover_Min_Height;
|
|
float _Cover_Min_Height_Blending;
|
|
float4 _CoverBaseColor;
|
|
float4 _CoverBaseColorMap_TexelSize;
|
|
float4 _CoverTilingOffset;
|
|
float _CoverTriplanarThreshold;
|
|
float4 _CoverNormalMap_TexelSize;
|
|
float _CoverNormalScale;
|
|
float _CoverNormalBlendHardness;
|
|
float _CoverHeightMapMin;
|
|
float _CoverHeightMapMax;
|
|
float _CoverHeightMapOffset;
|
|
float _CoverHardness;
|
|
float4 _CoverMaskMap_TexelSize;
|
|
float _CoverMetallic;
|
|
float _CoverAORemapMin;
|
|
float _CoverAORemapMax;
|
|
float _CoverSmoothnessRemapMin;
|
|
float _CoverSmoothnessRemapMax;
|
|
float4 _ShapeNormalMap_TexelSize;
|
|
float _shapeNormalScale;
|
|
float _CovershapeNormalScale;
|
|
float4 _ShapeAO_TexelSize;
|
|
float _ShapeAORemapMin;
|
|
float _ShapeAORemapMax;
|
|
float _CoverShapeAORemapMin;
|
|
float _CoverShapeAORemapMax;
|
|
float4 _DetailMap_TexelSize;
|
|
float4 _DetailTilingOffset;
|
|
float _DetailAlbedoScale;
|
|
float _DetailNormalScale;
|
|
float _DetailSmoothnessScale;
|
|
float _DetailCoverAlbedoScale;
|
|
float _DetailCoverNormalScale;
|
|
float _DetailCoverSmoothnessScale;
|
|
float _CoverMaskRCurvature;
|
|
float _BaseBrightnessCurvMultply;
|
|
float _BaseBrightnessCurvPower;
|
|
float _BaseDarknessCurvMultply;
|
|
float _BaseDarknessCurvPower;
|
|
float _CoverBrightnessCurvMultply;
|
|
float _CoverBrightnessCurvPower;
|
|
float _CoverDarknessCurvMultply;
|
|
float _CoverDarknessCurvPower;
|
|
float4 _WetColor;
|
|
float _WetSmoothness;
|
|
float4 _EmissionColor;
|
|
float _UseShadowThreshold;
|
|
float4 _DoubleSidedConstants;
|
|
UNITY_TEXTURE_STREAMING_DEBUG_VARS;
|
|
float _BlendMode;
|
|
float _EnableBlendModePreserveSpecularLighting;
|
|
float _RayTracing;
|
|
float _RefractionModel;
|
|
float _MaterialID;
|
|
float _MaterialTypeMask;
|
|
CBUFFER_END
|
|
|
|
|
|
// Object and Global properties
|
|
SAMPLER(SamplerState_Linear_Repeat);
|
|
SAMPLER(SamplerState_Linear_Repeat_Aniso8);
|
|
TEXTURE2D(_BaseColorMap);
|
|
SAMPLER(sampler_BaseColorMap);
|
|
TEXTURE2D(_BaseNormalMap);
|
|
SAMPLER(sampler_BaseNormalMap);
|
|
TEXTURE2D(_BaseMaskMap);
|
|
SAMPLER(sampler_BaseMaskMap);
|
|
TEXTURE2D(_CoverMaskA);
|
|
SAMPLER(sampler_CoverMaskA);
|
|
TEXTURE2D(_CoverBaseColorMap);
|
|
SAMPLER(sampler_CoverBaseColorMap);
|
|
TEXTURE2D(_CoverNormalMap);
|
|
SAMPLER(sampler_CoverNormalMap);
|
|
TEXTURE2D(_CoverMaskMap);
|
|
SAMPLER(sampler_CoverMaskMap);
|
|
TEXTURE2D(_ShapeNormalMap);
|
|
SAMPLER(sampler_ShapeNormalMap);
|
|
TEXTURE2D(_ShapeAO);
|
|
SAMPLER(sampler_ShapeAO);
|
|
TEXTURE2D(_DetailMap);
|
|
SAMPLER(sampler_DetailMap);
|
|
|
|
// -- Property used by ScenePickingPass
|
|
#ifdef SCENEPICKINGPASS
|
|
float4 _SelectionID;
|
|
#endif
|
|
|
|
// -- Properties used by SceneSelectionPass
|
|
#ifdef SCENESELECTIONPASS
|
|
int _ObjectId;
|
|
int _PassValue;
|
|
#endif
|
|
|
|
// Includes
|
|
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/Debug/DebugDisplay.hlsl"
|
|
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/Material/Material.hlsl"
|
|
#include "Packages/com.unity.render-pipelines.core/ShaderLibrary/NormalSurfaceGradient.hlsl"
|
|
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/Material/Lit/Lit.hlsl"
|
|
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/Material/BuiltinUtilities.hlsl"
|
|
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/Material/MaterialUtilities.hlsl"
|
|
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/Material/Decal/DecalUtilities.hlsl"
|
|
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/Material/Lit/LitDecalData.hlsl"
|
|
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/ShaderLibrary/ShaderGraphFunctions.hlsl"
|
|
// GraphIncludes: <None>
|
|
|
|
// --------------------------------------------------
|
|
// Structs and Packing
|
|
|
|
struct AttributesMesh
|
|
{
|
|
float3 positionOS : POSITION;
|
|
float3 normalOS : NORMAL;
|
|
float4 tangentOS : TANGENT;
|
|
#if UNITY_ANY_INSTANCING_ENABLED || defined(ATTRIBUTES_NEED_INSTANCEID)
|
|
uint instanceID : INSTANCEID_SEMANTIC;
|
|
#endif
|
|
};
|
|
struct VaryingsMeshToPS
|
|
{
|
|
SV_POSITION_QUALIFIERS float4 positionCS : SV_POSITION;
|
|
#if UNITY_ANY_INSTANCING_ENABLED || defined(VARYINGS_NEED_INSTANCEID)
|
|
uint instanceID : CUSTOM_INSTANCE_ID;
|
|
#endif
|
|
};
|
|
struct VertexDescriptionInputs
|
|
{
|
|
float3 ObjectSpaceNormal;
|
|
float3 ObjectSpaceTangent;
|
|
float3 ObjectSpacePosition;
|
|
};
|
|
struct SurfaceDescriptionInputs
|
|
{
|
|
};
|
|
struct PackedVaryingsMeshToPS
|
|
{
|
|
SV_POSITION_QUALIFIERS float4 positionCS : SV_POSITION;
|
|
#if UNITY_ANY_INSTANCING_ENABLED || defined(VARYINGS_NEED_INSTANCEID)
|
|
uint instanceID : CUSTOM_INSTANCE_ID;
|
|
#endif
|
|
};
|
|
|
|
PackedVaryingsMeshToPS PackVaryingsMeshToPS (VaryingsMeshToPS input)
|
|
{
|
|
PackedVaryingsMeshToPS output;
|
|
ZERO_INITIALIZE(PackedVaryingsMeshToPS, output);
|
|
output.positionCS = input.positionCS;
|
|
#if UNITY_ANY_INSTANCING_ENABLED || defined(VARYINGS_NEED_INSTANCEID)
|
|
output.instanceID = input.instanceID;
|
|
#endif
|
|
return output;
|
|
}
|
|
|
|
VaryingsMeshToPS UnpackVaryingsMeshToPS (PackedVaryingsMeshToPS input)
|
|
{
|
|
VaryingsMeshToPS output;
|
|
output.positionCS = input.positionCS;
|
|
#if UNITY_ANY_INSTANCING_ENABLED || defined(VARYINGS_NEED_INSTANCEID)
|
|
output.instanceID = input.instanceID;
|
|
#endif
|
|
return output;
|
|
}
|
|
|
|
|
|
// --------------------------------------------------
|
|
// Graph
|
|
|
|
|
|
// Graph Functions
|
|
// GraphFunctions: <None>
|
|
|
|
// Graph Vertex
|
|
struct VertexDescription
|
|
{
|
|
float3 Position;
|
|
float3 Normal;
|
|
float3 Tangent;
|
|
};
|
|
|
|
VertexDescription VertexDescriptionFunction(VertexDescriptionInputs IN)
|
|
{
|
|
VertexDescription description = (VertexDescription)0;
|
|
description.Position = IN.ObjectSpacePosition;
|
|
description.Normal = IN.ObjectSpaceNormal;
|
|
description.Tangent = IN.ObjectSpaceTangent;
|
|
return description;
|
|
}
|
|
|
|
// Graph Pixel
|
|
struct SurfaceDescription
|
|
{
|
|
float Alpha;
|
|
};
|
|
|
|
SurfaceDescription SurfaceDescriptionFunction(SurfaceDescriptionInputs IN)
|
|
{
|
|
SurfaceDescription surface = (SurfaceDescription)0;
|
|
surface.Alpha = float(1);
|
|
return surface;
|
|
}
|
|
|
|
// --------------------------------------------------
|
|
// Build Graph Inputs
|
|
#ifdef HAVE_VFX_MODIFICATION
|
|
#define VFX_SRP_ATTRIBUTES AttributesMesh
|
|
#define VaryingsMeshType VaryingsMeshToPS
|
|
#define VFX_SRP_VARYINGS VaryingsMeshType
|
|
#define VFX_SRP_SURFACE_INPUTS FragInputs
|
|
#endif
|
|
|
|
VertexDescriptionInputs AttributesMeshToVertexDescriptionInputs(AttributesMesh input)
|
|
{
|
|
VertexDescriptionInputs output;
|
|
ZERO_INITIALIZE(VertexDescriptionInputs, output);
|
|
|
|
output.ObjectSpaceNormal = input.normalOS;
|
|
output.ObjectSpaceTangent = input.tangentOS.xyz;
|
|
output.ObjectSpacePosition = input.positionOS;
|
|
#if UNITY_ANY_INSTANCING_ENABLED
|
|
#else
|
|
#endif
|
|
|
|
return output;
|
|
}
|
|
|
|
VertexDescription GetVertexDescription(AttributesMesh input, float3 timeParameters
|
|
#ifdef HAVE_VFX_MODIFICATION
|
|
, AttributesElement element
|
|
#endif
|
|
)
|
|
{
|
|
// build graph inputs
|
|
VertexDescriptionInputs vertexDescriptionInputs = AttributesMeshToVertexDescriptionInputs(input);
|
|
// Override time parameters with used one (This is required to correctly handle motion vectors for vertex animation based on time)
|
|
|
|
// evaluate vertex graph
|
|
#ifdef HAVE_VFX_MODIFICATION
|
|
GraphProperties properties;
|
|
ZERO_INITIALIZE(GraphProperties, properties);
|
|
|
|
// Fetch the vertex graph properties for the particle instance.
|
|
GetElementVertexProperties(element, properties);
|
|
|
|
VertexDescription vertexDescription = VertexDescriptionFunction(vertexDescriptionInputs, properties);
|
|
#else
|
|
VertexDescription vertexDescription = VertexDescriptionFunction(vertexDescriptionInputs);
|
|
#endif
|
|
return vertexDescription;
|
|
|
|
}
|
|
|
|
AttributesMesh ApplyMeshModification(AttributesMesh input, float3 timeParameters
|
|
#ifdef USE_CUSTOMINTERP_SUBSTRUCT
|
|
#ifdef TESSELLATION_ON
|
|
, inout VaryingsMeshToDS varyings
|
|
#else
|
|
, inout VaryingsMeshToPS varyings
|
|
#endif
|
|
#endif
|
|
#ifdef HAVE_VFX_MODIFICATION
|
|
, AttributesElement element
|
|
#endif
|
|
)
|
|
{
|
|
VertexDescription vertexDescription = GetVertexDescription(input, timeParameters
|
|
#ifdef HAVE_VFX_MODIFICATION
|
|
, element
|
|
#endif
|
|
);
|
|
|
|
// copy graph output to the results
|
|
input.positionOS = vertexDescription.Position;
|
|
input.normalOS = vertexDescription.Normal;
|
|
input.tangentOS.xyz = vertexDescription.Tangent;
|
|
|
|
|
|
|
|
return input;
|
|
}
|
|
|
|
#if defined(_ADD_CUSTOM_VELOCITY) // For shader graph custom velocity
|
|
// Return precomputed Velocity in object space
|
|
float3 GetCustomVelocity(AttributesMesh input
|
|
#ifdef HAVE_VFX_MODIFICATION
|
|
, AttributesElement element
|
|
#endif
|
|
)
|
|
{
|
|
VertexDescription vertexDescription = GetVertexDescription(input, _TimeParameters.xyz
|
|
#ifdef HAVE_VFX_MODIFICATION
|
|
, element
|
|
#endif
|
|
);
|
|
return vertexDescription.CustomVelocity;
|
|
}
|
|
#endif
|
|
|
|
FragInputs BuildFragInputs(VaryingsMeshToPS input)
|
|
{
|
|
FragInputs output;
|
|
ZERO_INITIALIZE(FragInputs, output);
|
|
|
|
// Init to some default value to make the computer quiet (else it output 'divide by zero' warning even if value is not used).
|
|
// TODO: this is a really poor workaround, but the variable is used in a bunch of places
|
|
// to compute normals which are then passed on elsewhere to compute other values...
|
|
output.tangentToWorld = k_identity3x3;
|
|
output.positionSS = input.positionCS; // input.positionCS is SV_Position
|
|
|
|
|
|
#if UNITY_ANY_INSTANCING_ENABLED
|
|
#else
|
|
#endif
|
|
|
|
#ifdef HAVE_VFX_MODIFICATION
|
|
// FragInputs from VFX come from two places: Interpolator or CBuffer.
|
|
#if VFX_USE_GRAPH_VALUES
|
|
uint instanceActiveIndex = asuint(UNITY_ACCESS_INSTANCED_PROP(PerInstance, _InstanceActiveIndex));
|
|
/* WARNING: $splice Could not find named fragment 'VFXLoadGraphValues' */
|
|
#endif
|
|
|
|
/* WARNING: $splice Could not find named fragment 'VFXSetFragInputs' */
|
|
|
|
#endif
|
|
|
|
// splice point to copy custom interpolator fields from varyings to frag inputs
|
|
|
|
|
|
return output;
|
|
}
|
|
|
|
// existing HDRP code uses the combined function to go directly from packed to frag inputs
|
|
FragInputs UnpackVaryingsMeshToFragInputs(PackedVaryingsMeshToPS input)
|
|
{
|
|
UNITY_SETUP_INSTANCE_ID(input);
|
|
#if defined(HAVE_VFX_MODIFICATION) && defined(UNITY_INSTANCING_ENABLED)
|
|
unity_InstanceID = input.instanceID;
|
|
#endif
|
|
VaryingsMeshToPS unpacked = UnpackVaryingsMeshToPS(input);
|
|
return BuildFragInputs(unpacked);
|
|
}
|
|
SurfaceDescriptionInputs FragInputsToSurfaceDescriptionInputs(FragInputs input, float3 viewWS)
|
|
{
|
|
SurfaceDescriptionInputs output;
|
|
ZERO_INITIALIZE(SurfaceDescriptionInputs, output);
|
|
|
|
#if defined(SHADER_STAGE_RAY_TRACING)
|
|
#else
|
|
#endif
|
|
|
|
#if UNITY_UV_STARTS_AT_TOP
|
|
#else
|
|
#endif
|
|
|
|
|
|
|
|
// splice point to copy frag inputs custom interpolator pack into the SDI
|
|
|
|
|
|
return output;
|
|
}
|
|
|
|
// --------------------------------------------------
|
|
// Build Surface Data (Specific Material)
|
|
|
|
void ApplyDecalToSurfaceDataNoNormal(DecalSurfaceData decalSurfaceData, inout SurfaceData surfaceData);
|
|
|
|
void ApplyDecalAndGetNormal(FragInputs fragInputs, PositionInputs posInput, SurfaceDescription surfaceDescription,
|
|
inout SurfaceData surfaceData)
|
|
{
|
|
float3 doubleSidedConstants = GetDoubleSidedConstants();
|
|
|
|
#ifdef DECAL_NORMAL_BLENDING
|
|
// SG nodes don't ouptut surface gradients, so if decals require surf grad blending, we have to convert
|
|
// the normal to gradient before applying the decal. We then have to resolve the gradient back to world space
|
|
float3 normalTS;
|
|
|
|
|
|
|
|
#if HAVE_DECALS
|
|
if (_EnableDecals)
|
|
{
|
|
float alpha = 1.0;
|
|
alpha = surfaceDescription.Alpha;
|
|
|
|
DecalSurfaceData decalSurfaceData = GetDecalSurfaceData(posInput, fragInputs, alpha);
|
|
ApplyDecalToSurfaceNormal(decalSurfaceData, fragInputs.tangentToWorld[2], normalTS);
|
|
ApplyDecalToSurfaceDataNoNormal(decalSurfaceData, surfaceData);
|
|
}
|
|
#endif
|
|
|
|
GetNormalWS_SG(fragInputs, normalTS, surfaceData.normalWS, doubleSidedConstants);
|
|
#else
|
|
// normal delivered to master node
|
|
|
|
#if HAVE_DECALS
|
|
if (_EnableDecals)
|
|
{
|
|
float alpha = 1.0;
|
|
alpha = surfaceDescription.Alpha;
|
|
|
|
// Both uses and modifies 'surfaceData.normalWS'.
|
|
DecalSurfaceData decalSurfaceData = GetDecalSurfaceData(posInput, fragInputs, alpha);
|
|
ApplyDecalToSurfaceNormal(decalSurfaceData, surfaceData.normalWS.xyz);
|
|
ApplyDecalToSurfaceDataNoNormal(decalSurfaceData, surfaceData);
|
|
}
|
|
#endif
|
|
#endif
|
|
}
|
|
void BuildSurfaceData(FragInputs fragInputs, inout SurfaceDescription surfaceDescription, float3 V, PositionInputs posInput, out SurfaceData surfaceData, out float3 bentNormalWS)
|
|
{
|
|
ZERO_INITIALIZE(SurfaceData, surfaceData);
|
|
|
|
// specularOcclusion need to be init ahead of decal to quiet the compiler that modify the SurfaceData struct
|
|
// however specularOcclusion can come from the graph, so need to be init here so it can be override.
|
|
surfaceData.specularOcclusion = 1.0;
|
|
surfaceData.thickness = 0.0;
|
|
|
|
|
|
#if defined(_REFRACTION_PLANE) || defined(_REFRACTION_SPHERE) || defined(_REFRACTION_THIN)
|
|
if (_EnableSSRefraction)
|
|
{
|
|
|
|
surfaceData.transmittanceMask = (1.0 - surfaceDescription.Alpha);
|
|
surfaceDescription.Alpha = 1.0;
|
|
}
|
|
else
|
|
{
|
|
surfaceData.ior = 1.0;
|
|
surfaceData.transmittanceColor = float3(1.0, 1.0, 1.0);
|
|
surfaceData.atDistance = 1.0;
|
|
surfaceData.transmittanceMask = 0.0;
|
|
surfaceDescription.Alpha = 1.0;
|
|
}
|
|
#else
|
|
surfaceData.ior = 1.0;
|
|
surfaceData.transmittanceColor = float3(1.0, 1.0, 1.0);
|
|
surfaceData.atDistance = 1.0;
|
|
surfaceData.transmittanceMask = 0.0;
|
|
#endif
|
|
|
|
// These static material feature allow compile time optimization
|
|
surfaceData.materialFeatures = MATERIALFEATUREFLAGS_LIT_STANDARD;
|
|
#ifdef _MATERIAL_FEATURE_SUBSURFACE_SCATTERING
|
|
surfaceData.materialFeatures |= MATERIALFEATUREFLAGS_LIT_SUBSURFACE_SCATTERING;
|
|
#endif
|
|
|
|
#ifdef _MATERIAL_FEATURE_TRANSMISSION
|
|
surfaceData.materialFeatures |= MATERIALFEATUREFLAGS_LIT_TRANSMISSION;
|
|
#endif
|
|
|
|
#ifdef _MATERIAL_FEATURE_COLORED_TRANSMISSION
|
|
surfaceData.materialFeatures |= MATERIALFEATUREFLAGS_LIT_TRANSMISSION;
|
|
surfaceData.materialFeatures |= MATERIALFEATUREFLAGS_LIT_COLORED_TRANSMISSION;
|
|
|
|
#endif
|
|
|
|
#ifdef _MATERIAL_FEATURE_ANISOTROPY
|
|
surfaceData.materialFeatures |= MATERIALFEATUREFLAGS_LIT_ANISOTROPY;
|
|
|
|
// Initialize the normal to something non-zero to avoid a div-zero warning for anisotropy.
|
|
surfaceData.normalWS = float3(0, 1, 0);
|
|
#endif
|
|
|
|
#ifdef _MATERIAL_FEATURE_IRIDESCENCE
|
|
surfaceData.materialFeatures |= MATERIALFEATUREFLAGS_LIT_IRIDESCENCE;
|
|
#endif
|
|
|
|
#ifdef _MATERIAL_FEATURE_SPECULAR_COLOR
|
|
surfaceData.materialFeatures |= MATERIALFEATUREFLAGS_LIT_SPECULAR_COLOR;
|
|
#endif
|
|
|
|
#ifdef _MATERIAL_FEATURE_CLEAR_COAT
|
|
surfaceData.materialFeatures |= MATERIALFEATUREFLAGS_LIT_CLEAR_COAT;
|
|
#endif
|
|
|
|
#if defined (_MATERIAL_FEATURE_SPECULAR_COLOR) && defined (_ENERGY_CONSERVING_SPECULAR)
|
|
// Require to have setup baseColor
|
|
// Reproduce the energy conservation done in legacy Unity. Not ideal but better for compatibility and users can unchek it
|
|
surfaceData.baseColor *= (1.0 - Max3(surfaceData.specularColor.r, surfaceData.specularColor.g, surfaceData.specularColor.b));
|
|
#endif
|
|
|
|
float3 doubleSidedConstants = GetDoubleSidedConstants();
|
|
|
|
ApplyDecalAndGetNormal(fragInputs, posInput, surfaceDescription, surfaceData);
|
|
|
|
surfaceData.geomNormalWS = fragInputs.tangentToWorld[2];
|
|
|
|
surfaceData.tangentWS = normalize(fragInputs.tangentToWorld[0].xyz); // The tangent is not normalize in tangentToWorld for mikkt. TODO: Check if it expected that we normalize with Morten. Tag: SURFACE_GRADIENT
|
|
|
|
|
|
bentNormalWS = surfaceData.normalWS;
|
|
|
|
surfaceData.tangentWS = Orthonormalize(surfaceData.tangentWS, surfaceData.normalWS);
|
|
|
|
#ifdef DEBUG_DISPLAY
|
|
#if !defined(SHADER_STAGE_RAY_TRACING)
|
|
// Mipmap mode debugging isn't supported with ray tracing as it relies on derivatives
|
|
if (_DebugMipMapMode != DEBUGMIPMAPMODE_NONE)
|
|
{
|
|
#ifdef FRAG_INPUTS_USE_TEXCOORD0
|
|
surfaceData.baseColor = GET_TEXTURE_STREAMING_DEBUG(posInput.positionSS, fragInputs.texCoord0);
|
|
#else
|
|
surfaceData.baseColor = GET_TEXTURE_STREAMING_DEBUG_NO_UV(posInput.positionSS);
|
|
#endif
|
|
surfaceData.metallic = 0;
|
|
}
|
|
#endif
|
|
|
|
// We need to call ApplyDebugToSurfaceData after filling the surfaceData and before filling builtinData
|
|
// as it can modify attribute use for static lighting
|
|
ApplyDebugToSurfaceData(fragInputs.tangentToWorld, surfaceData);
|
|
#endif
|
|
|
|
// By default we use the ambient occlusion with Tri-ace trick (apply outside) for specular occlusion.
|
|
// If user provide bent normal then we process a better term
|
|
#if defined(_SPECULAR_OCCLUSION_CUSTOM)
|
|
// Just use the value passed through via the slot (not active otherwise)
|
|
#elif defined(_SPECULAR_OCCLUSION_FROM_AO_BENT_NORMAL)
|
|
// If we have bent normal and ambient occlusion, process a specular occlusion
|
|
surfaceData.specularOcclusion = GetSpecularOcclusionFromBentAO(V, bentNormalWS, surfaceData.normalWS, surfaceData.ambientOcclusion, PerceptualSmoothnessToPerceptualRoughness(surfaceData.perceptualSmoothness));
|
|
#elif defined(_AMBIENT_OCCLUSION) && defined(_SPECULAR_OCCLUSION_FROM_AO)
|
|
surfaceData.specularOcclusion = GetSpecularOcclusionFromAmbientOcclusion(ClampNdotV(dot(surfaceData.normalWS, V)), surfaceData.ambientOcclusion, PerceptualSmoothnessToRoughness(surfaceData.perceptualSmoothness));
|
|
#endif
|
|
|
|
#if defined(_ENABLE_GEOMETRIC_SPECULAR_AA) && !defined(SHADER_STAGE_RAY_TRACING)
|
|
surfaceData.perceptualSmoothness = GeometricNormalFiltering(surfaceData.perceptualSmoothness, fragInputs.tangentToWorld[2], surfaceDescription.SpecularAAScreenSpaceVariance, surfaceDescription.SpecularAAThreshold);
|
|
#endif
|
|
}
|
|
|
|
// --------------------------------------------------
|
|
// Get Surface And BuiltinData
|
|
|
|
void GetSurfaceAndBuiltinData(FragInputs fragInputs, float3 V, inout PositionInputs posInput, out SurfaceData surfaceData, out BuiltinData builtinData RAY_TRACING_OPTIONAL_PARAMETERS)
|
|
{
|
|
// Don't dither if displaced tessellation (we're fading out the displacement instead to match the next LOD)
|
|
#if !defined(SHADER_STAGE_RAY_TRACING) && !defined(_TESSELLATION_DISPLACEMENT)
|
|
#ifdef LOD_FADE_CROSSFADE // enable dithering LOD transition if user select CrossFade transition in LOD group
|
|
LODDitheringTransition(ComputeFadeMaskSeed(V, posInput.positionSS), unity_LODFade.x);
|
|
#endif
|
|
#endif
|
|
|
|
#ifndef SHADER_UNLIT
|
|
#ifdef _DOUBLESIDED_ON
|
|
float3 doubleSidedConstants = _DoubleSidedConstants.xyz;
|
|
#else
|
|
float3 doubleSidedConstants = float3(1.0, 1.0, 1.0);
|
|
#endif
|
|
|
|
ApplyDoubleSidedFlipOrMirror(fragInputs, doubleSidedConstants); // Apply double sided flip on the vertex normal
|
|
#endif // SHADER_UNLIT
|
|
|
|
SurfaceDescriptionInputs surfaceDescriptionInputs = FragInputsToSurfaceDescriptionInputs(fragInputs, V);
|
|
|
|
#if defined(HAVE_VFX_MODIFICATION)
|
|
GraphProperties properties;
|
|
ZERO_INITIALIZE(GraphProperties, properties);
|
|
|
|
GetElementPixelProperties(fragInputs, properties);
|
|
|
|
SurfaceDescription surfaceDescription = SurfaceDescriptionFunction(surfaceDescriptionInputs, properties);
|
|
#else
|
|
SurfaceDescription surfaceDescription = SurfaceDescriptionFunction(surfaceDescriptionInputs);
|
|
#endif
|
|
|
|
#ifdef DEBUG_DISPLAY
|
|
if (_DebugMipMapMode != DEBUGMIPMAPMODE_NONE)
|
|
{
|
|
surfaceDescription.Alpha = 1.0f;
|
|
}
|
|
#endif
|
|
|
|
// Perform alpha test very early to save performance (a killed pixel will not sample textures)
|
|
// TODO: split graph evaluation to grab just alpha dependencies first? tricky..
|
|
#ifdef _ALPHATEST_ON
|
|
float alphaCutoff = surfaceDescription.AlphaClipThreshold;
|
|
#if SHADERPASS == SHADERPASS_TRANSPARENT_DEPTH_PREPASS
|
|
// The TransparentDepthPrepass is also used with SSR transparent.
|
|
// If an artists enable transaprent SSR but not the TransparentDepthPrepass itself, then we use AlphaClipThreshold
|
|
// otherwise if TransparentDepthPrepass is enabled we use AlphaClipThresholdDepthPrepass
|
|
#elif SHADERPASS == SHADERPASS_TRANSPARENT_DEPTH_POSTPASS
|
|
// DepthPostpass always use its own alpha threshold
|
|
alphaCutoff = surfaceDescription.AlphaClipThresholdDepthPostpass;
|
|
#elif (SHADERPASS == SHADERPASS_SHADOWS) || (SHADERPASS == SHADERPASS_RAYTRACING_VISIBILITY)
|
|
// If use shadow threshold isn't enable we don't allow any test
|
|
#endif
|
|
|
|
GENERIC_ALPHA_TEST(surfaceDescription.Alpha, alphaCutoff);
|
|
#endif
|
|
|
|
#if !defined(SHADER_STAGE_RAY_TRACING) && _DEPTHOFFSET_ON
|
|
ApplyDepthOffsetPositionInput(V, surfaceDescription.DepthOffset, GetViewForwardDir(), GetWorldToHClipMatrix(), posInput);
|
|
#endif
|
|
|
|
#ifndef SHADER_UNLIT
|
|
float3 bentNormalWS;
|
|
BuildSurfaceData(fragInputs, surfaceDescription, V, posInput, surfaceData, bentNormalWS);
|
|
|
|
#ifdef FRAG_INPUTS_USE_TEXCOORD1
|
|
float4 lightmapTexCoord1 = fragInputs.texCoord1;
|
|
#else
|
|
float4 lightmapTexCoord1 = float4(0,0,0,0);
|
|
#endif
|
|
|
|
#ifdef FRAG_INPUTS_USE_TEXCOORD2
|
|
float4 lightmapTexCoord2 = fragInputs.texCoord2;
|
|
#else
|
|
float4 lightmapTexCoord2 = float4(0,0,0,0);
|
|
#endif
|
|
|
|
float alpha = 1.0;
|
|
alpha = surfaceDescription.Alpha;
|
|
|
|
// Builtin Data
|
|
// For back lighting we use the oposite vertex normal
|
|
InitBuiltinData(posInput, alpha, bentNormalWS, -fragInputs.tangentToWorld[2], lightmapTexCoord1, lightmapTexCoord2, builtinData);
|
|
|
|
#else
|
|
BuildSurfaceData(fragInputs, surfaceDescription, V, posInput, surfaceData);
|
|
|
|
ZERO_BUILTIN_INITIALIZE(builtinData); // No call to InitBuiltinData as we don't have any lighting
|
|
builtinData.opacity = surfaceDescription.Alpha;
|
|
|
|
#if defined(DEBUG_DISPLAY)
|
|
// Light Layers are currently not used for the Unlit shader (because it is not lit)
|
|
// But Unlit objects do cast shadows according to their rendering layer mask, which is what we want to
|
|
// display in the light layers visualization mode, therefore we need the renderingLayers
|
|
builtinData.renderingLayers = GetMeshRenderingLayerMask();
|
|
#endif
|
|
|
|
#endif // SHADER_UNLIT
|
|
|
|
#ifdef _ALPHATEST_ON
|
|
// Used for sharpening by alpha to mask - Alpha to covertage is only used with depth only and forward pass (no shadow pass, no transparent pass)
|
|
builtinData.alphaClipTreshold = alphaCutoff;
|
|
#endif
|
|
|
|
// override sampleBakedGI - not used by Unlit
|
|
// When overriding GI, we need to force the isLightmap flag to make sure we don't add APV (sampled in the lightloop) on top of the overridden value (set at GBuffer stage)
|
|
|
|
|
|
// Note this will not fully work on transparent surfaces (can check with _SURFACE_TYPE_TRANSPARENT define)
|
|
// We will always overwrite vt feeback with the nearest. So behind transparent surfaces vt will not be resolved
|
|
// This is a limitation of the current MRT approach.
|
|
#ifdef UNITY_VIRTUAL_TEXTURING
|
|
#endif
|
|
|
|
#if _DEPTHOFFSET_ON
|
|
builtinData.depthOffset = surfaceDescription.DepthOffset;
|
|
#endif
|
|
|
|
// TODO: We should generate distortion / distortionBlur for non distortion pass
|
|
#if (SHADERPASS == SHADERPASS_DISTORTION)
|
|
builtinData.distortion = surfaceDescription.Distortion;
|
|
builtinData.distortionBlur = surfaceDescription.DistortionBlur;
|
|
#endif
|
|
|
|
#ifndef SHADER_UNLIT
|
|
// PostInitBuiltinData call ApplyDebugToBuiltinData
|
|
PostInitBuiltinData(V, posInput, surfaceData, builtinData);
|
|
#else
|
|
ApplyDebugToBuiltinData(builtinData);
|
|
#endif
|
|
|
|
RAY_TRACING_OPTIONAL_ALPHA_TEST_PASS
|
|
}
|
|
|
|
// --------------------------------------------------
|
|
// Main
|
|
|
|
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/RenderPipeline/ShaderPass/ShaderPassDepthOnly.hlsl"
|
|
|
|
// --------------------------------------------------
|
|
// Visual Effect Vertex Invocations
|
|
|
|
#ifdef HAVE_VFX_MODIFICATION
|
|
#if !defined(SHADER_STAGE_RAY_TRACING)
|
|
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/ShaderLibrary/VisualEffectVertex.hlsl"
|
|
#else
|
|
#endif
|
|
#endif
|
|
|
|
ENDHLSL
|
|
}
|
|
Pass
|
|
{
|
|
Name "META"
|
|
Tags
|
|
{
|
|
"LightMode" = "META"
|
|
}
|
|
|
|
// Render State
|
|
Cull Off
|
|
|
|
// Debug
|
|
// <None>
|
|
|
|
// --------------------------------------------------
|
|
// Pass
|
|
|
|
HLSLPROGRAM
|
|
|
|
// Pragmas
|
|
#pragma multi_compile _ DOTS_INSTANCING_ON
|
|
#pragma instancing_options renderinglayer
|
|
#pragma target 4.5
|
|
#pragma vertex Vert
|
|
#pragma fragment Frag
|
|
#pragma only_renderers d3d11 playstation xboxone xboxseries vulkan metal switch
|
|
#pragma multi_compile_instancing
|
|
|
|
// Keywords
|
|
#pragma shader_feature _ EDITOR_VISUALIZATION
|
|
#pragma shader_feature _ _SURFACE_TYPE_TRANSPARENT
|
|
#pragma shader_feature_local _ _DOUBLESIDED_ON
|
|
#pragma shader_feature_local _ _ADD_PRECOMPUTED_VELOCITY
|
|
#pragma shader_feature_local _ _TRANSPARENT_WRITES_MOTION_VEC _TRANSPARENT_REFRACTIVE_SORT
|
|
#pragma shader_feature_local_fragment _ _ENABLE_FOG_ON_TRANSPARENT
|
|
#pragma multi_compile _ LOD_FADE_CROSSFADE
|
|
#pragma shader_feature_local_fragment _ _DISABLE_DECALS
|
|
#pragma shader_feature_local_raytracing _ _DISABLE_DECALS
|
|
#pragma shader_feature_local_fragment _ _DISABLE_SSR
|
|
#pragma shader_feature_local_raytracing _ _DISABLE_SSR
|
|
#pragma shader_feature_local_fragment _ _DISABLE_SSR_TRANSPARENT
|
|
#pragma shader_feature_local_raytracing _ _DISABLE_SSR_TRANSPARENT
|
|
#pragma shader_feature_local _ _REFRACTION_PLANE _REFRACTION_SPHERE _REFRACTION_THIN
|
|
#pragma shader_feature_local_fragment _MATERIAL_FEATURE_SUBSURFACE_SCATTERING
|
|
#pragma shader_feature_local_raytracing _MATERIAL_FEATURE_SUBSURFACE_SCATTERING
|
|
#pragma shader_feature_local_fragment _MATERIAL_FEATURE_TRANSMISSION
|
|
#pragma shader_feature_local_raytracing _MATERIAL_FEATURE_TRANSMISSION
|
|
#pragma shader_feature_local_fragment _MATERIAL_FEATURE_ANISOTROPY
|
|
#pragma shader_feature_local_raytracing _MATERIAL_FEATURE_ANISOTROPY
|
|
#pragma shader_feature_local_fragment _MATERIAL_FEATURE_IRIDESCENCE
|
|
#pragma shader_feature_local_raytracing _MATERIAL_FEATURE_IRIDESCENCE
|
|
#pragma shader_feature_local_fragment _MATERIAL_FEATURE_SPECULAR_COLOR
|
|
#pragma shader_feature_local_raytracing _MATERIAL_FEATURE_SPECULAR_COLOR
|
|
#pragma shader_feature_local_fragment _MATERIAL_FEATURE_COLORED_TRANSMISSION
|
|
#pragma shader_feature_local_raytracing _MATERIAL_FEATURE_COLORED_TRANSMISSION
|
|
// GraphKeywords: <None>
|
|
|
|
// Defines
|
|
#define SHADERPASS SHADERPASS_LIGHT_TRANSPORT
|
|
#define RAYTRACING_SHADER_GRAPH_DEFAULT
|
|
#define SCENEPICKINGPASS 1
|
|
#define SUPPORT_GLOBAL_MIP_BIAS 1
|
|
|
|
// For custom interpolators to inject a substruct definition before FragInputs definition,
|
|
// allowing for FragInputs to capture CI's intended for ShaderGraph's SDI.
|
|
/* WARNING: $splice Could not find named fragment 'CustomInterpolatorPreInclude' */
|
|
|
|
|
|
// TODO: Merge FragInputsVFX substruct with CustomInterpolators.
|
|
#ifdef HAVE_VFX_MODIFICATION
|
|
struct FragInputsVFX
|
|
{
|
|
/* WARNING: $splice Could not find named fragment 'FragInputsVFX' */
|
|
};
|
|
#endif
|
|
|
|
#include "Packages/com.unity.render-pipelines.core/ShaderLibrary/Common.hlsl"
|
|
#include "Packages/com.unity.render-pipelines.core/ShaderLibrary/GeometricTools.hlsl" // Required by Tessellation.hlsl
|
|
#include "Packages/com.unity.render-pipelines.core/ShaderLibrary/Tessellation.hlsl"
|
|
#include "Packages/com.unity.render-pipelines.core/ShaderLibrary/Texture.hlsl"
|
|
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/ShaderLibrary/ShaderVariables.hlsl"
|
|
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/RenderPipeline/ShaderPass/ShaderPass.cs.hlsl"
|
|
#include "Packages/com.unity.render-pipelines.core/ShaderLibrary/TextureStack.hlsl" // Required to be include before we include properties as it define DECLARE_STACK_CB
|
|
#include "Packages/com.unity.render-pipelines.core/ShaderLibrary/DebugMipmapStreamingMacros.hlsl" // Required before including properties as it defines UNITY_TEXTURE_STREAMING_DEBUG_VARS
|
|
// Always include Shader Graph version
|
|
// Always include last to avoid double macros
|
|
#include "Packages/com.unity.shadergraph/ShaderGraphLibrary/Functions.hlsl" // Need to be here for Gradient struct definition
|
|
|
|
// --------------------------------------------------
|
|
// Defines
|
|
|
|
// Attribute
|
|
#define ATTRIBUTES_NEED_NORMAL
|
|
#define ATTRIBUTES_NEED_TANGENT
|
|
#define ATTRIBUTES_NEED_TEXCOORD0
|
|
#define ATTRIBUTES_NEED_TEXCOORD1
|
|
#define ATTRIBUTES_NEED_TEXCOORD2
|
|
#define ATTRIBUTES_NEED_TEXCOORD3
|
|
#define ATTRIBUTES_NEED_COLOR
|
|
#define VARYINGS_NEED_POSITION_WS
|
|
#define VARYINGS_NEED_POSITIONPREDISPLACEMENT_WS
|
|
#define VARYINGS_NEED_TANGENT_TO_WORLD
|
|
#define VARYINGS_NEED_TEXCOORD0
|
|
#define VARYINGS_NEED_TEXCOORD1
|
|
#define VARYINGS_NEED_TEXCOORD2
|
|
#define VARYINGS_NEED_TEXCOORD3
|
|
#define VARYINGS_NEED_COLOR
|
|
|
|
#define HAVE_MESH_MODIFICATION
|
|
|
|
//Strip down the FragInputs.hlsl (on graphics), so we can only optimize the interpolators we use.
|
|
//if by accident something requests contents of FragInputs.hlsl, it will be caught as a compiler error
|
|
//Frag inputs stripping is only enabled when FRAG_INPUTS_ENABLE_STRIPPING is set
|
|
#if !defined(SHADER_STAGE_RAY_TRACING) && SHADERPASS != SHADERPASS_RAYTRACING_GBUFFER && SHADERPASS != SHADERPASS_FULL_SCREEN_DEBUG
|
|
#define FRAG_INPUTS_ENABLE_STRIPPING
|
|
#endif
|
|
#define FRAG_INPUTS_USE_TEXCOORD0
|
|
#define FRAG_INPUTS_USE_TEXCOORD1
|
|
#define FRAG_INPUTS_USE_TEXCOORD2
|
|
#define FRAG_INPUTS_USE_TEXCOORD3
|
|
|
|
|
|
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/RenderPipeline/ShaderPass/FragInputs.hlsl"
|
|
|
|
|
|
|
|
|
|
// Following two define are a workaround introduce in 10.1.x for RaytracingQualityNode
|
|
// The ShaderGraph don't support correctly migration of this node as it serialize all the node data
|
|
// in the json file making it impossible to uprgrade. Until we get a fix, we do a workaround here
|
|
// to still allow us to rename the field and keyword of this node without breaking existing code.
|
|
#ifdef RAYTRACING_SHADER_GRAPH_DEFAULT
|
|
#define RAYTRACING_SHADER_GRAPH_HIGH
|
|
#endif
|
|
|
|
#ifdef RAYTRACING_SHADER_GRAPH_RAYTRACED
|
|
#define RAYTRACING_SHADER_GRAPH_LOW
|
|
#endif
|
|
// end
|
|
|
|
#ifndef SHADER_UNLIT
|
|
// We need isFrontFace when using double sided - it is not required for unlit as in case of unlit double sided only drive the cullmode
|
|
// VARYINGS_NEED_CULLFACE can be define by VaryingsMeshToPS.FaceSign input if a IsFrontFace Node is included in the shader graph.
|
|
#if defined(_DOUBLESIDED_ON) && !defined(VARYINGS_NEED_CULLFACE)
|
|
#define VARYINGS_NEED_CULLFACE
|
|
#endif
|
|
#endif
|
|
|
|
// Specific Material Define
|
|
#define _AMBIENT_OCCLUSION 1
|
|
#define _SPECULAR_OCCLUSION_FROM_AO 1
|
|
#define _ENERGY_CONSERVING_SPECULAR 1
|
|
|
|
#if _MATERIAL_FEATURE_COLORED_TRANSMISSION
|
|
// Colored Transmission doesn't support clear coat
|
|
#undef _MATERIAL_FEATURE_CLEAR_COAT
|
|
#endif
|
|
|
|
// If we use subsurface scattering, enable output split lighting (for forward pass)
|
|
#if defined(_MATERIAL_FEATURE_SUBSURFACE_SCATTERING) && !defined(_SURFACE_TYPE_TRANSPARENT)
|
|
#define OUTPUT_SPLIT_LIGHTING
|
|
#endif
|
|
|
|
// This shader support recursive rendering for raytracing
|
|
#define HAVE_RECURSIVE_RENDERING
|
|
|
|
// In Path Tracing, For all single-sided, refractive materials, we want to force a thin refraction model
|
|
#if (SHADERPASS == SHADERPASS_PATH_TRACING) && !defined(_DOUBLESIDED_ON) && (defined(_REFRACTION_PLANE) || defined(_REFRACTION_SPHERE))
|
|
#undef _REFRACTION_PLANE
|
|
#undef _REFRACTION_SPHERE
|
|
#define _REFRACTION_THIN
|
|
#endif
|
|
// Caution: we can use the define SHADER_UNLIT onlit after the above Material include as it is the Unlit template who define it
|
|
|
|
// To handle SSR on transparent correctly with a possibility to enable/disable it per framesettings
|
|
// we should have a code like this:
|
|
// if !defined(_DISABLE_SSR_TRANSPARENT)
|
|
// pragma multi_compile _ WRITE_NORMAL_BUFFER
|
|
// endif
|
|
// i.e we enable the multicompile only if we can receive SSR or not, and then C# code drive
|
|
// it based on if SSR transparent in frame settings and not (and stripper can strip it).
|
|
// this is currently not possible with our current preprocessor as _DISABLE_SSR_TRANSPARENT is a keyword not a define
|
|
// so instead we used this and chose to pay the extra cost of normal write even if SSR transaprent is disabled.
|
|
// Ideally the shader graph generator should handle it but condition below can't be handle correctly for now.
|
|
#if SHADERPASS == SHADERPASS_TRANSPARENT_DEPTH_PREPASS
|
|
#if !defined(_DISABLE_SSR_TRANSPARENT) && !defined(SHADER_UNLIT)
|
|
#define WRITE_NORMAL_BUFFER
|
|
#endif
|
|
#endif
|
|
|
|
// See Lit.shader
|
|
#if SHADERPASS == SHADERPASS_MOTION_VECTORS && defined(WRITE_DECAL_BUFFER_AND_RENDERING_LAYER)
|
|
#define WRITE_DECAL_BUFFER
|
|
#endif
|
|
|
|
#ifndef DEBUG_DISPLAY
|
|
// In case of opaque we don't want to perform the alpha test, it is done in depth prepass and we use depth equal for ztest (setup from UI)
|
|
// Don't do it with debug display mode as it is possible there is no depth prepass in this case
|
|
#if !defined(_SURFACE_TYPE_TRANSPARENT)
|
|
#if SHADERPASS == SHADERPASS_FORWARD
|
|
#define SHADERPASS_FORWARD_BYPASS_ALPHA_TEST
|
|
#elif SHADERPASS == SHADERPASS_GBUFFER
|
|
#define SHADERPASS_GBUFFER_BYPASS_ALPHA_TEST
|
|
#endif
|
|
#endif
|
|
#endif
|
|
|
|
// Define _DEFERRED_CAPABLE_MATERIAL for shader capable to run in deferred pass
|
|
#if defined(SHADER_LIT) && !defined(_SURFACE_TYPE_TRANSPARENT)
|
|
#define _DEFERRED_CAPABLE_MATERIAL
|
|
#endif
|
|
|
|
// Translate transparent motion vector define
|
|
#if (defined(_TRANSPARENT_WRITES_MOTION_VEC) || defined(_TRANSPARENT_REFRACTIVE_SORT)) && defined(_SURFACE_TYPE_TRANSPARENT)
|
|
#define _WRITE_TRANSPARENT_MOTION_VECTOR
|
|
#endif
|
|
|
|
// -- Graph Properties
|
|
CBUFFER_START(UnityPerMaterial)
|
|
float4 _BaseColor;
|
|
float4 _BaseColorMap_TexelSize;
|
|
float4 _BaseTilingOffset;
|
|
float _BaseTriplanarThreshold;
|
|
float4 _BaseNormalMap_TexelSize;
|
|
float _BaseNormalScale;
|
|
float4 _BaseMaskMap_TexelSize;
|
|
float _BaseMetallic;
|
|
float _BaseAORemapMin;
|
|
float _BaseAORemapMax;
|
|
float _BaseSmoothnessRemapMin;
|
|
float _BaseSmoothnessRemapMax;
|
|
float _USEDYNAMICCOVERTSTATICMASKF;
|
|
float4 _CoverMaskA_TexelSize;
|
|
float _CoverMaskPower;
|
|
float _Cover_Amount;
|
|
float _Cover_Amount_Grow_Speed;
|
|
float3 _CoverDirection;
|
|
float _Cover_Max_Angle;
|
|
float _Cover_Min_Height;
|
|
float _Cover_Min_Height_Blending;
|
|
float4 _CoverBaseColor;
|
|
float4 _CoverBaseColorMap_TexelSize;
|
|
float4 _CoverTilingOffset;
|
|
float _CoverTriplanarThreshold;
|
|
float4 _CoverNormalMap_TexelSize;
|
|
float _CoverNormalScale;
|
|
float _CoverNormalBlendHardness;
|
|
float _CoverHeightMapMin;
|
|
float _CoverHeightMapMax;
|
|
float _CoverHeightMapOffset;
|
|
float _CoverHardness;
|
|
float4 _CoverMaskMap_TexelSize;
|
|
float _CoverMetallic;
|
|
float _CoverAORemapMin;
|
|
float _CoverAORemapMax;
|
|
float _CoverSmoothnessRemapMin;
|
|
float _CoverSmoothnessRemapMax;
|
|
float4 _ShapeNormalMap_TexelSize;
|
|
float _shapeNormalScale;
|
|
float _CovershapeNormalScale;
|
|
float4 _ShapeAO_TexelSize;
|
|
float _ShapeAORemapMin;
|
|
float _ShapeAORemapMax;
|
|
float _CoverShapeAORemapMin;
|
|
float _CoverShapeAORemapMax;
|
|
float4 _DetailMap_TexelSize;
|
|
float4 _DetailTilingOffset;
|
|
float _DetailAlbedoScale;
|
|
float _DetailNormalScale;
|
|
float _DetailSmoothnessScale;
|
|
float _DetailCoverAlbedoScale;
|
|
float _DetailCoverNormalScale;
|
|
float _DetailCoverSmoothnessScale;
|
|
float _CoverMaskRCurvature;
|
|
float _BaseBrightnessCurvMultply;
|
|
float _BaseBrightnessCurvPower;
|
|
float _BaseDarknessCurvMultply;
|
|
float _BaseDarknessCurvPower;
|
|
float _CoverBrightnessCurvMultply;
|
|
float _CoverBrightnessCurvPower;
|
|
float _CoverDarknessCurvMultply;
|
|
float _CoverDarknessCurvPower;
|
|
float4 _WetColor;
|
|
float _WetSmoothness;
|
|
float4 _EmissionColor;
|
|
float _UseShadowThreshold;
|
|
float4 _DoubleSidedConstants;
|
|
UNITY_TEXTURE_STREAMING_DEBUG_VARS;
|
|
float _BlendMode;
|
|
float _EnableBlendModePreserveSpecularLighting;
|
|
float _RayTracing;
|
|
float _RefractionModel;
|
|
float _MaterialID;
|
|
float _MaterialTypeMask;
|
|
CBUFFER_END
|
|
|
|
|
|
// Object and Global properties
|
|
SAMPLER(SamplerState_Linear_Repeat);
|
|
SAMPLER(SamplerState_Linear_Repeat_Aniso8);
|
|
TEXTURE2D(_BaseColorMap);
|
|
SAMPLER(sampler_BaseColorMap);
|
|
TEXTURE2D(_BaseNormalMap);
|
|
SAMPLER(sampler_BaseNormalMap);
|
|
TEXTURE2D(_BaseMaskMap);
|
|
SAMPLER(sampler_BaseMaskMap);
|
|
TEXTURE2D(_CoverMaskA);
|
|
SAMPLER(sampler_CoverMaskA);
|
|
TEXTURE2D(_CoverBaseColorMap);
|
|
SAMPLER(sampler_CoverBaseColorMap);
|
|
TEXTURE2D(_CoverNormalMap);
|
|
SAMPLER(sampler_CoverNormalMap);
|
|
TEXTURE2D(_CoverMaskMap);
|
|
SAMPLER(sampler_CoverMaskMap);
|
|
TEXTURE2D(_ShapeNormalMap);
|
|
SAMPLER(sampler_ShapeNormalMap);
|
|
TEXTURE2D(_ShapeAO);
|
|
SAMPLER(sampler_ShapeAO);
|
|
TEXTURE2D(_DetailMap);
|
|
SAMPLER(sampler_DetailMap);
|
|
|
|
// -- Property used by ScenePickingPass
|
|
#ifdef SCENEPICKINGPASS
|
|
float4 _SelectionID;
|
|
#endif
|
|
|
|
// -- Properties used by SceneSelectionPass
|
|
#ifdef SCENESELECTIONPASS
|
|
int _ObjectId;
|
|
int _PassValue;
|
|
#endif
|
|
|
|
// Includes
|
|
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/ShaderLibrary/PickingSpaceTransforms.hlsl"
|
|
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/Debug/DebugDisplay.hlsl"
|
|
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/Material/Material.hlsl"
|
|
#include "Packages/com.unity.render-pipelines.core/ShaderLibrary/NormalSurfaceGradient.hlsl"
|
|
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/Material/Lit/Lit.hlsl"
|
|
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/Material/BuiltinUtilities.hlsl"
|
|
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/Material/MaterialUtilities.hlsl"
|
|
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/Material/Decal/DecalUtilities.hlsl"
|
|
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/Material/Lit/LitDecalData.hlsl"
|
|
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/ShaderLibrary/ShaderGraphFunctions.hlsl"
|
|
// GraphIncludes: <None>
|
|
|
|
// --------------------------------------------------
|
|
// Structs and Packing
|
|
|
|
struct AttributesMesh
|
|
{
|
|
float3 positionOS : POSITION;
|
|
float3 normalOS : NORMAL;
|
|
float4 tangentOS : TANGENT;
|
|
float4 uv0 : TEXCOORD0;
|
|
float4 uv1 : TEXCOORD1;
|
|
float4 uv2 : TEXCOORD2;
|
|
float4 uv3 : TEXCOORD3;
|
|
float4 color : COLOR;
|
|
#if UNITY_ANY_INSTANCING_ENABLED || defined(ATTRIBUTES_NEED_INSTANCEID)
|
|
uint instanceID : INSTANCEID_SEMANTIC;
|
|
#endif
|
|
};
|
|
struct VaryingsMeshToPS
|
|
{
|
|
SV_POSITION_QUALIFIERS float4 positionCS : SV_POSITION;
|
|
float3 positionRWS;
|
|
float3 positionPredisplacementRWS;
|
|
float3 normalWS;
|
|
float4 tangentWS;
|
|
float4 texCoord0;
|
|
float4 texCoord1;
|
|
float4 texCoord2;
|
|
float4 texCoord3;
|
|
float4 color;
|
|
#if UNITY_ANY_INSTANCING_ENABLED || defined(VARYINGS_NEED_INSTANCEID)
|
|
uint instanceID : CUSTOM_INSTANCE_ID;
|
|
#endif
|
|
};
|
|
struct VertexDescriptionInputs
|
|
{
|
|
};
|
|
struct SurfaceDescriptionInputs
|
|
{
|
|
float3 WorldSpaceNormal;
|
|
float3 TangentSpaceNormal;
|
|
float3 WorldSpaceTangent;
|
|
float3 WorldSpaceBiTangent;
|
|
float3 AbsoluteWorldSpacePosition;
|
|
float4 uv0;
|
|
float4 VertexColor;
|
|
};
|
|
struct PackedVaryingsMeshToPS
|
|
{
|
|
SV_POSITION_QUALIFIERS float4 positionCS : SV_POSITION;
|
|
float4 tangentWS : INTERP0;
|
|
float4 texCoord0 : INTERP1;
|
|
float4 texCoord1 : INTERP2;
|
|
float4 texCoord2 : INTERP3;
|
|
float4 texCoord3 : INTERP4;
|
|
float4 color : INTERP5;
|
|
float3 positionRWS : INTERP6;
|
|
float3 positionPredisplacementRWS : INTERP7;
|
|
float3 normalWS : INTERP8;
|
|
#if UNITY_ANY_INSTANCING_ENABLED || defined(VARYINGS_NEED_INSTANCEID)
|
|
uint instanceID : CUSTOM_INSTANCE_ID;
|
|
#endif
|
|
};
|
|
|
|
PackedVaryingsMeshToPS PackVaryingsMeshToPS (VaryingsMeshToPS input)
|
|
{
|
|
PackedVaryingsMeshToPS output;
|
|
ZERO_INITIALIZE(PackedVaryingsMeshToPS, output);
|
|
output.positionCS = input.positionCS;
|
|
output.tangentWS.xyzw = input.tangentWS;
|
|
output.texCoord0.xyzw = input.texCoord0;
|
|
output.texCoord1.xyzw = input.texCoord1;
|
|
output.texCoord2.xyzw = input.texCoord2;
|
|
output.texCoord3.xyzw = input.texCoord3;
|
|
output.color.xyzw = input.color;
|
|
output.positionRWS.xyz = input.positionRWS;
|
|
output.positionPredisplacementRWS.xyz = input.positionPredisplacementRWS;
|
|
output.normalWS.xyz = input.normalWS;
|
|
#if UNITY_ANY_INSTANCING_ENABLED || defined(VARYINGS_NEED_INSTANCEID)
|
|
output.instanceID = input.instanceID;
|
|
#endif
|
|
return output;
|
|
}
|
|
|
|
VaryingsMeshToPS UnpackVaryingsMeshToPS (PackedVaryingsMeshToPS input)
|
|
{
|
|
VaryingsMeshToPS output;
|
|
output.positionCS = input.positionCS;
|
|
output.tangentWS = input.tangentWS.xyzw;
|
|
output.texCoord0 = input.texCoord0.xyzw;
|
|
output.texCoord1 = input.texCoord1.xyzw;
|
|
output.texCoord2 = input.texCoord2.xyzw;
|
|
output.texCoord3 = input.texCoord3.xyzw;
|
|
output.color = input.color.xyzw;
|
|
output.positionRWS = input.positionRWS.xyz;
|
|
output.positionPredisplacementRWS = input.positionPredisplacementRWS.xyz;
|
|
output.normalWS = input.normalWS.xyz;
|
|
#if UNITY_ANY_INSTANCING_ENABLED || defined(VARYINGS_NEED_INSTANCEID)
|
|
output.instanceID = input.instanceID;
|
|
#endif
|
|
return output;
|
|
}
|
|
|
|
|
|
// --------------------------------------------------
|
|
// Graph
|
|
|
|
|
|
// Graph Functions
|
|
|
|
void Unity_Divide_float4(float4 A, float4 B, out float4 Out)
|
|
{
|
|
Out = A / B;
|
|
}
|
|
|
|
void Unity_Combine_float(float R, float G, float B, float A, out float4 RGBA, out float3 RGB, out float2 RG)
|
|
{
|
|
RGBA = float4(R, G, B, A);
|
|
RGB = float3(R, G, B);
|
|
RG = float2(R, G);
|
|
}
|
|
|
|
void Unity_Multiply_float4_float4(float4 A, float4 B, out float4 Out)
|
|
{
|
|
Out = A * B;
|
|
}
|
|
|
|
void Unity_Sign_float3(float3 In, out float3 Out)
|
|
{
|
|
Out = sign(In);
|
|
}
|
|
|
|
void Unity_Multiply_float2_float2(float2 A, float2 B, out float2 Out)
|
|
{
|
|
Out = A * B;
|
|
}
|
|
|
|
void Unity_Absolute_float3(float3 In, out float3 Out)
|
|
{
|
|
Out = abs(In);
|
|
}
|
|
|
|
void Unity_Power_float3(float3 A, float3 B, out float3 Out)
|
|
{
|
|
Out = pow(A, B);
|
|
}
|
|
|
|
void Unity_Multiply_float3_float3(float3 A, float3 B, out float3 Out)
|
|
{
|
|
Out = A * B;
|
|
}
|
|
|
|
void Unity_Multiply_float_float(float A, float B, out float Out)
|
|
{
|
|
Out = A * B;
|
|
}
|
|
|
|
void Unity_Add_float4(float4 A, float4 B, out float4 Out)
|
|
{
|
|
Out = A + B;
|
|
}
|
|
|
|
void Unity_Add_float(float A, float B, out float Out)
|
|
{
|
|
Out = A + B;
|
|
}
|
|
|
|
struct Bindings_TriplanarNM_bc609ed95f52591469ab35dbfe0efcea_float
|
|
{
|
|
float3 WorldSpaceNormal;
|
|
float3 AbsoluteWorldSpacePosition;
|
|
};
|
|
|
|
void SG_TriplanarNM_bc609ed95f52591469ab35dbfe0efcea_float(UnityTexture2D Texture2D_80A3D28F, float Vector1_41461AC9, float Vector1_E4D1C13A, UnitySamplerState _SamplerState, Bindings_TriplanarNM_bc609ed95f52591469ab35dbfe0efcea_float IN, out float4 XYZ_1, out float4 XZ_2, out float4 YZ_3, out float4 XY_4)
|
|
{
|
|
UnityTexture2D _Property_3e01b4d2fc68d48ba3acbba9d5881e59_Out_0_Texture2D = Texture2D_80A3D28F;
|
|
float _Split_89ed63cb625cb3878c183d0b71c03400_R_1_Float = IN.AbsoluteWorldSpacePosition[0];
|
|
float _Split_89ed63cb625cb3878c183d0b71c03400_G_2_Float = IN.AbsoluteWorldSpacePosition[1];
|
|
float _Split_89ed63cb625cb3878c183d0b71c03400_B_3_Float = IN.AbsoluteWorldSpacePosition[2];
|
|
float _Split_89ed63cb625cb3878c183d0b71c03400_A_4_Float = 0;
|
|
float4 _Combine_cf2d04ff119ad88493f6460431765cbb_RGBA_4_Vector4;
|
|
float3 _Combine_cf2d04ff119ad88493f6460431765cbb_RGB_5_Vector3;
|
|
float2 _Combine_cf2d04ff119ad88493f6460431765cbb_RG_6_Vector2;
|
|
Unity_Combine_float(_Split_89ed63cb625cb3878c183d0b71c03400_R_1_Float, _Split_89ed63cb625cb3878c183d0b71c03400_B_3_Float, float(0), float(0), _Combine_cf2d04ff119ad88493f6460431765cbb_RGBA_4_Vector4, _Combine_cf2d04ff119ad88493f6460431765cbb_RGB_5_Vector3, _Combine_cf2d04ff119ad88493f6460431765cbb_RG_6_Vector2);
|
|
float _Property_47988ec10c0c18879d461e00bed806e7_Out_0_Float = Vector1_41461AC9;
|
|
float4 _Multiply_14cec4902d0a00829e4555071a1b8ad1_Out_2_Vector4;
|
|
Unity_Multiply_float4_float4(_Combine_cf2d04ff119ad88493f6460431765cbb_RGBA_4_Vector4, (_Property_47988ec10c0c18879d461e00bed806e7_Out_0_Float.xxxx), _Multiply_14cec4902d0a00829e4555071a1b8ad1_Out_2_Vector4);
|
|
float3 _Sign_b826e0ff2d95ec8cb2b2cbbd7ea2eab6_Out_1_Vector3;
|
|
Unity_Sign_float3(IN.WorldSpaceNormal, _Sign_b826e0ff2d95ec8cb2b2cbbd7ea2eab6_Out_1_Vector3);
|
|
float _Split_742547a7039de986a646d04c157ae549_R_1_Float = _Sign_b826e0ff2d95ec8cb2b2cbbd7ea2eab6_Out_1_Vector3[0];
|
|
float _Split_742547a7039de986a646d04c157ae549_G_2_Float = _Sign_b826e0ff2d95ec8cb2b2cbbd7ea2eab6_Out_1_Vector3[1];
|
|
float _Split_742547a7039de986a646d04c157ae549_B_3_Float = _Sign_b826e0ff2d95ec8cb2b2cbbd7ea2eab6_Out_1_Vector3[2];
|
|
float _Split_742547a7039de986a646d04c157ae549_A_4_Float = 0;
|
|
float2 _Vector2_40a8919e571ec18499de72022c155b38_Out_0_Vector2 = float2(_Split_742547a7039de986a646d04c157ae549_G_2_Float, float(1));
|
|
float2 _Multiply_5fa32af59cdca88389832336b2268bd5_Out_2_Vector2;
|
|
Unity_Multiply_float2_float2((_Multiply_14cec4902d0a00829e4555071a1b8ad1_Out_2_Vector4.xy), _Vector2_40a8919e571ec18499de72022c155b38_Out_0_Vector2, _Multiply_5fa32af59cdca88389832336b2268bd5_Out_2_Vector2);
|
|
UnitySamplerState _Property_544c7fa9dfe54e30a0df9d605340a374_Out_0_SamplerState = _SamplerState;
|
|
float4 _SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_RGBA_0_Vector4 = SAMPLE_TEXTURE2D(_Property_3e01b4d2fc68d48ba3acbba9d5881e59_Out_0_Texture2D.tex, _Property_544c7fa9dfe54e30a0df9d605340a374_Out_0_SamplerState.samplerstate, _Property_3e01b4d2fc68d48ba3acbba9d5881e59_Out_0_Texture2D.GetTransformedUV(_Multiply_5fa32af59cdca88389832336b2268bd5_Out_2_Vector2) );
|
|
float _SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_R_4_Float = _SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_RGBA_0_Vector4.r;
|
|
float _SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_G_5_Float = _SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_RGBA_0_Vector4.g;
|
|
float _SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_B_6_Float = _SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_RGBA_0_Vector4.b;
|
|
float _SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_A_7_Float = _SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_RGBA_0_Vector4.a;
|
|
float3 _Absolute_644b798714827680b39bf5d34f70385f_Out_1_Vector3;
|
|
Unity_Absolute_float3(IN.WorldSpaceNormal, _Absolute_644b798714827680b39bf5d34f70385f_Out_1_Vector3);
|
|
float _Property_adc4c59482221c8aad681c6558728ac9_Out_0_Float = Vector1_E4D1C13A;
|
|
float3 _Power_ee478822a04529849ae8df1636c29fe2_Out_2_Vector3;
|
|
Unity_Power_float3(_Absolute_644b798714827680b39bf5d34f70385f_Out_1_Vector3, (_Property_adc4c59482221c8aad681c6558728ac9_Out_0_Float.xxx), _Power_ee478822a04529849ae8df1636c29fe2_Out_2_Vector3);
|
|
float3 _Multiply_b386a937554d73828e437d126d69608b_Out_2_Vector3;
|
|
Unity_Multiply_float3_float3(_Power_ee478822a04529849ae8df1636c29fe2_Out_2_Vector3, _Power_ee478822a04529849ae8df1636c29fe2_Out_2_Vector3, _Multiply_b386a937554d73828e437d126d69608b_Out_2_Vector3);
|
|
float _Split_ae83014fcbd9f7879a0b91fa66dc9718_R_1_Float = _Multiply_b386a937554d73828e437d126d69608b_Out_2_Vector3[0];
|
|
float _Split_ae83014fcbd9f7879a0b91fa66dc9718_G_2_Float = _Multiply_b386a937554d73828e437d126d69608b_Out_2_Vector3[1];
|
|
float _Split_ae83014fcbd9f7879a0b91fa66dc9718_B_3_Float = _Multiply_b386a937554d73828e437d126d69608b_Out_2_Vector3[2];
|
|
float _Split_ae83014fcbd9f7879a0b91fa66dc9718_A_4_Float = 0;
|
|
float4 _Multiply_2e1040ca9c98d085ace76ee93f094039_Out_2_Vector4;
|
|
Unity_Multiply_float4_float4(_SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_RGBA_0_Vector4, (_Split_ae83014fcbd9f7879a0b91fa66dc9718_G_2_Float.xxxx), _Multiply_2e1040ca9c98d085ace76ee93f094039_Out_2_Vector4);
|
|
float4 _Combine_192c2c4a69be588b90ca005a32e22552_RGBA_4_Vector4;
|
|
float3 _Combine_192c2c4a69be588b90ca005a32e22552_RGB_5_Vector3;
|
|
float2 _Combine_192c2c4a69be588b90ca005a32e22552_RG_6_Vector2;
|
|
Unity_Combine_float(_Split_89ed63cb625cb3878c183d0b71c03400_R_1_Float, _Split_89ed63cb625cb3878c183d0b71c03400_G_2_Float, float(0), float(0), _Combine_192c2c4a69be588b90ca005a32e22552_RGBA_4_Vector4, _Combine_192c2c4a69be588b90ca005a32e22552_RGB_5_Vector3, _Combine_192c2c4a69be588b90ca005a32e22552_RG_6_Vector2);
|
|
float4 _Multiply_138240d0d4846e87b0febabec0d6891b_Out_2_Vector4;
|
|
Unity_Multiply_float4_float4(_Combine_192c2c4a69be588b90ca005a32e22552_RGBA_4_Vector4, (_Property_47988ec10c0c18879d461e00bed806e7_Out_0_Float.xxxx), _Multiply_138240d0d4846e87b0febabec0d6891b_Out_2_Vector4);
|
|
float _Multiply_014402ded5a3988a8c18ba07636ea5a7_Out_2_Float;
|
|
Unity_Multiply_float_float(_Split_742547a7039de986a646d04c157ae549_B_3_Float, -1, _Multiply_014402ded5a3988a8c18ba07636ea5a7_Out_2_Float);
|
|
float2 _Vector2_caa25d55d456a58982bdfc39b1b43f3f_Out_0_Vector2 = float2(_Multiply_014402ded5a3988a8c18ba07636ea5a7_Out_2_Float, float(1));
|
|
float2 _Multiply_a67201b6e1a0a28c98cd9d06e8b09543_Out_2_Vector2;
|
|
Unity_Multiply_float2_float2((_Multiply_138240d0d4846e87b0febabec0d6891b_Out_2_Vector4.xy), _Vector2_caa25d55d456a58982bdfc39b1b43f3f_Out_0_Vector2, _Multiply_a67201b6e1a0a28c98cd9d06e8b09543_Out_2_Vector2);
|
|
float4 _SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_RGBA_0_Vector4 = SAMPLE_TEXTURE2D(_Property_3e01b4d2fc68d48ba3acbba9d5881e59_Out_0_Texture2D.tex, _Property_544c7fa9dfe54e30a0df9d605340a374_Out_0_SamplerState.samplerstate, _Property_3e01b4d2fc68d48ba3acbba9d5881e59_Out_0_Texture2D.GetTransformedUV(_Multiply_a67201b6e1a0a28c98cd9d06e8b09543_Out_2_Vector2) );
|
|
float _SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_R_4_Float = _SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_RGBA_0_Vector4.r;
|
|
float _SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_G_5_Float = _SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_RGBA_0_Vector4.g;
|
|
float _SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_B_6_Float = _SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_RGBA_0_Vector4.b;
|
|
float _SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_A_7_Float = _SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_RGBA_0_Vector4.a;
|
|
float4 _Multiply_7bb4009c92b108849ac6ca92bc1442f2_Out_2_Vector4;
|
|
Unity_Multiply_float4_float4(_SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_RGBA_0_Vector4, (_Split_ae83014fcbd9f7879a0b91fa66dc9718_B_3_Float.xxxx), _Multiply_7bb4009c92b108849ac6ca92bc1442f2_Out_2_Vector4);
|
|
float4 _Combine_1e9ffdba42d6918fb7a4b185f1585d2a_RGBA_4_Vector4;
|
|
float3 _Combine_1e9ffdba42d6918fb7a4b185f1585d2a_RGB_5_Vector3;
|
|
float2 _Combine_1e9ffdba42d6918fb7a4b185f1585d2a_RG_6_Vector2;
|
|
Unity_Combine_float(_Split_89ed63cb625cb3878c183d0b71c03400_B_3_Float, _Split_89ed63cb625cb3878c183d0b71c03400_G_2_Float, float(0), float(0), _Combine_1e9ffdba42d6918fb7a4b185f1585d2a_RGBA_4_Vector4, _Combine_1e9ffdba42d6918fb7a4b185f1585d2a_RGB_5_Vector3, _Combine_1e9ffdba42d6918fb7a4b185f1585d2a_RG_6_Vector2);
|
|
float4 _Multiply_2c0864423b014f8b8af8523f68cbb63c_Out_2_Vector4;
|
|
Unity_Multiply_float4_float4(_Combine_1e9ffdba42d6918fb7a4b185f1585d2a_RGBA_4_Vector4, (_Property_47988ec10c0c18879d461e00bed806e7_Out_0_Float.xxxx), _Multiply_2c0864423b014f8b8af8523f68cbb63c_Out_2_Vector4);
|
|
float2 _Vector2_54dfd40df2fc78809955dd272f2cf0c3_Out_0_Vector2 = float2(_Split_742547a7039de986a646d04c157ae549_R_1_Float, float(1));
|
|
float2 _Multiply_addbd5fcede95f80bbb806c94e49ef63_Out_2_Vector2;
|
|
Unity_Multiply_float2_float2((_Multiply_2c0864423b014f8b8af8523f68cbb63c_Out_2_Vector4.xy), _Vector2_54dfd40df2fc78809955dd272f2cf0c3_Out_0_Vector2, _Multiply_addbd5fcede95f80bbb806c94e49ef63_Out_2_Vector2);
|
|
float4 _SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_RGBA_0_Vector4 = SAMPLE_TEXTURE2D(_Property_3e01b4d2fc68d48ba3acbba9d5881e59_Out_0_Texture2D.tex, _Property_544c7fa9dfe54e30a0df9d605340a374_Out_0_SamplerState.samplerstate, _Property_3e01b4d2fc68d48ba3acbba9d5881e59_Out_0_Texture2D.GetTransformedUV(_Multiply_addbd5fcede95f80bbb806c94e49ef63_Out_2_Vector2) );
|
|
float _SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_R_4_Float = _SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_RGBA_0_Vector4.r;
|
|
float _SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_G_5_Float = _SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_RGBA_0_Vector4.g;
|
|
float _SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_B_6_Float = _SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_RGBA_0_Vector4.b;
|
|
float _SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_A_7_Float = _SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_RGBA_0_Vector4.a;
|
|
float4 _Multiply_77818c22e359fc8cbb7dd20216a8db72_Out_2_Vector4;
|
|
Unity_Multiply_float4_float4(_SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_RGBA_0_Vector4, (_Split_ae83014fcbd9f7879a0b91fa66dc9718_R_1_Float.xxxx), _Multiply_77818c22e359fc8cbb7dd20216a8db72_Out_2_Vector4);
|
|
float4 _Add_769d9ee909c9238dbbf72d2800a2f268_Out_2_Vector4;
|
|
Unity_Add_float4(_Multiply_7bb4009c92b108849ac6ca92bc1442f2_Out_2_Vector4, _Multiply_77818c22e359fc8cbb7dd20216a8db72_Out_2_Vector4, _Add_769d9ee909c9238dbbf72d2800a2f268_Out_2_Vector4);
|
|
float4 _Add_14295f72880e4b87a1baf1ced943ac40_Out_2_Vector4;
|
|
Unity_Add_float4(_Multiply_2e1040ca9c98d085ace76ee93f094039_Out_2_Vector4, _Add_769d9ee909c9238dbbf72d2800a2f268_Out_2_Vector4, _Add_14295f72880e4b87a1baf1ced943ac40_Out_2_Vector4);
|
|
float _Add_e59af300bba2498db32eac1412123447_Out_2_Float;
|
|
Unity_Add_float(_Split_ae83014fcbd9f7879a0b91fa66dc9718_R_1_Float, _Split_ae83014fcbd9f7879a0b91fa66dc9718_G_2_Float, _Add_e59af300bba2498db32eac1412123447_Out_2_Float);
|
|
float _Add_e855069f047fae8ea9027d56acb61e56_Out_2_Float;
|
|
Unity_Add_float(_Add_e59af300bba2498db32eac1412123447_Out_2_Float, _Split_ae83014fcbd9f7879a0b91fa66dc9718_B_3_Float, _Add_e855069f047fae8ea9027d56acb61e56_Out_2_Float);
|
|
float4 _Divide_91ae4b94f1d9b78e99d0472293b8098c_Out_2_Vector4;
|
|
Unity_Divide_float4(_Add_14295f72880e4b87a1baf1ced943ac40_Out_2_Vector4, (_Add_e855069f047fae8ea9027d56acb61e56_Out_2_Float.xxxx), _Divide_91ae4b94f1d9b78e99d0472293b8098c_Out_2_Vector4);
|
|
XYZ_1 = _Divide_91ae4b94f1d9b78e99d0472293b8098c_Out_2_Vector4;
|
|
XZ_2 = _SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_RGBA_0_Vector4;
|
|
YZ_3 = _SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_RGBA_0_Vector4;
|
|
XY_4 = _SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_RGBA_0_Vector4;
|
|
}
|
|
|
|
void Unity_Clamp_float(float In, float Min, float Max, out float Out)
|
|
{
|
|
Out = clamp(In, Min, Max);
|
|
}
|
|
|
|
void Unity_Absolute_float(float In, out float Out)
|
|
{
|
|
Out = abs(In);
|
|
}
|
|
|
|
void Unity_Power_float(float A, float B, out float Out)
|
|
{
|
|
Out = pow(A, B);
|
|
}
|
|
|
|
void Unity_Clamp_float4(float4 In, float4 Min, float4 Max, out float4 Out)
|
|
{
|
|
Out = clamp(In, Min, Max);
|
|
}
|
|
|
|
void Unity_Branch_float4(float Predicate, float4 True, float4 False, out float4 Out)
|
|
{
|
|
Out = Predicate ? True : False;
|
|
}
|
|
|
|
void Unity_TilingAndOffset_float(float2 UV, float2 Tiling, float2 Offset, out float2 Out)
|
|
{
|
|
Out = UV * Tiling + Offset;
|
|
}
|
|
|
|
void Unity_Saturate_float(float In, out float Out)
|
|
{
|
|
Out = saturate(In);
|
|
}
|
|
|
|
void Unity_SquareRoot_float4(float4 In, out float4 Out)
|
|
{
|
|
Out = sqrt(In);
|
|
}
|
|
|
|
void Unity_Sign_float(float In, out float Out)
|
|
{
|
|
Out = sign(In);
|
|
}
|
|
|
|
void Unity_Ceiling_float(float In, out float Out)
|
|
{
|
|
Out = ceil(In);
|
|
}
|
|
|
|
void Unity_Lerp_float4(float4 A, float4 B, float4 T, out float4 Out)
|
|
{
|
|
Out = lerp(A, B, T);
|
|
}
|
|
|
|
struct Bindings_BlendOverlayBaseColor_acdb3dfca72bd6b42bbc35f4613331a2_float
|
|
{
|
|
};
|
|
|
|
void SG_BlendOverlayBaseColor_acdb3dfca72bd6b42bbc35f4613331a2_float(float4 Color_9AA111D3, float Vector1_FBE622A2, float Vector1_8C15C351, Bindings_BlendOverlayBaseColor_acdb3dfca72bd6b42bbc35f4613331a2_float IN, out float3 OutVector4_1)
|
|
{
|
|
float4 _Property_012510d774fb7f8b860f5270dca4500f_Out_0_Vector4 = Color_9AA111D3;
|
|
float4 _SquareRoot_c2c57d0223a9538aa9240890c3cacb0c_Out_1_Vector4;
|
|
Unity_SquareRoot_float4(_Property_012510d774fb7f8b860f5270dca4500f_Out_0_Vector4, _SquareRoot_c2c57d0223a9538aa9240890c3cacb0c_Out_1_Vector4);
|
|
float _Property_a00e29241d12f983b30177515b367ec9_Out_0_Float = Vector1_FBE622A2;
|
|
float _Sign_343a45ede7349283a681c6bd9998fd8e_Out_1_Float;
|
|
Unity_Sign_float(_Property_a00e29241d12f983b30177515b367ec9_Out_0_Float, _Sign_343a45ede7349283a681c6bd9998fd8e_Out_1_Float);
|
|
float _Add_681019b8f5d3d68bb482d419c9fc61a9_Out_2_Float;
|
|
Unity_Add_float(_Sign_343a45ede7349283a681c6bd9998fd8e_Out_1_Float, float(1), _Add_681019b8f5d3d68bb482d419c9fc61a9_Out_2_Float);
|
|
float _Multiply_e8f4cb722712a880ac0db6c7461427f7_Out_2_Float;
|
|
Unity_Multiply_float_float(_Add_681019b8f5d3d68bb482d419c9fc61a9_Out_2_Float, 0.5, _Multiply_e8f4cb722712a880ac0db6c7461427f7_Out_2_Float);
|
|
float _Ceiling_95ad15988aa9b98184875fa754feae01_Out_1_Float;
|
|
Unity_Ceiling_float(_Multiply_e8f4cb722712a880ac0db6c7461427f7_Out_2_Float, _Ceiling_95ad15988aa9b98184875fa754feae01_Out_1_Float);
|
|
float _Property_2db1c747a05ee284a8b00076062f91a4_Out_0_Float = Vector1_8C15C351;
|
|
float _Multiply_9564ecda5193bc8286d9ff771c9226cd_Out_2_Float;
|
|
Unity_Multiply_float_float(_Property_2db1c747a05ee284a8b00076062f91a4_Out_0_Float, _Property_2db1c747a05ee284a8b00076062f91a4_Out_0_Float, _Multiply_9564ecda5193bc8286d9ff771c9226cd_Out_2_Float);
|
|
float4 _Lerp_b3cdb01fc3c5b988ac9b184943bf7c01_Out_3_Vector4;
|
|
Unity_Lerp_float4(_SquareRoot_c2c57d0223a9538aa9240890c3cacb0c_Out_1_Vector4, (_Ceiling_95ad15988aa9b98184875fa754feae01_Out_1_Float.xxxx), (_Multiply_9564ecda5193bc8286d9ff771c9226cd_Out_2_Float.xxxx), _Lerp_b3cdb01fc3c5b988ac9b184943bf7c01_Out_3_Vector4);
|
|
float4 _Multiply_39d1daff98488f8ea2cd794ad4f20926_Out_2_Vector4;
|
|
Unity_Multiply_float4_float4(_Lerp_b3cdb01fc3c5b988ac9b184943bf7c01_Out_3_Vector4, _Lerp_b3cdb01fc3c5b988ac9b184943bf7c01_Out_3_Vector4, _Multiply_39d1daff98488f8ea2cd794ad4f20926_Out_2_Vector4);
|
|
OutVector4_1 = (_Multiply_39d1daff98488f8ea2cd794ad4f20926_Out_2_Vector4.xyz);
|
|
}
|
|
|
|
void Unity_Add_float2(float2 A, float2 B, out float2 Out)
|
|
{
|
|
Out = A + B;
|
|
}
|
|
|
|
void Unity_DotProduct_float2(float2 A, float2 B, out float Out)
|
|
{
|
|
Out = dot(A, B);
|
|
}
|
|
|
|
void Unity_OneMinus_float(float In, out float Out)
|
|
{
|
|
Out = 1 - In;
|
|
}
|
|
|
|
void Unity_SquareRoot_float(float In, out float Out)
|
|
{
|
|
Out = sqrt(In);
|
|
}
|
|
|
|
void Unity_Add_float3(float3 A, float3 B, out float3 Out)
|
|
{
|
|
Out = A + B;
|
|
}
|
|
|
|
void Unity_Divide_float3(float3 A, float3 B, out float3 Out)
|
|
{
|
|
Out = A / B;
|
|
}
|
|
|
|
void Unity_Normalize_float3(float3 In, out float3 Out)
|
|
{
|
|
Out = normalize(In);
|
|
}
|
|
|
|
struct Bindings_TriplanarNMn_059da9746584140498cd018db3c76047_float
|
|
{
|
|
float3 WorldSpaceNormal;
|
|
float3 WorldSpaceTangent;
|
|
float3 WorldSpaceBiTangent;
|
|
float3 AbsoluteWorldSpacePosition;
|
|
};
|
|
|
|
void SG_TriplanarNMn_059da9746584140498cd018db3c76047_float(UnityTexture2D Texture2D_80A3D28F, float Vector1_41461AC9, float Vector1_E4D1C13A, UnitySamplerState _SamplerState, Bindings_TriplanarNMn_059da9746584140498cd018db3c76047_float IN, out float4 XYZ_1, out float4 XZ_2, out float4 YZ_3, out float4 XY_4)
|
|
{
|
|
UnityTexture2D _Property_3e01b4d2fc68d48ba3acbba9d5881e59_Out_0_Texture2D = Texture2D_80A3D28F;
|
|
float _Split_89ed63cb625cb3878c183d0b71c03400_R_1_Float = IN.AbsoluteWorldSpacePosition[0];
|
|
float _Split_89ed63cb625cb3878c183d0b71c03400_G_2_Float = IN.AbsoluteWorldSpacePosition[1];
|
|
float _Split_89ed63cb625cb3878c183d0b71c03400_B_3_Float = IN.AbsoluteWorldSpacePosition[2];
|
|
float _Split_89ed63cb625cb3878c183d0b71c03400_A_4_Float = 0;
|
|
float4 _Combine_cf2d04ff119ad88493f6460431765cbb_RGBA_4_Vector4;
|
|
float3 _Combine_cf2d04ff119ad88493f6460431765cbb_RGB_5_Vector3;
|
|
float2 _Combine_cf2d04ff119ad88493f6460431765cbb_RG_6_Vector2;
|
|
Unity_Combine_float(_Split_89ed63cb625cb3878c183d0b71c03400_R_1_Float, _Split_89ed63cb625cb3878c183d0b71c03400_B_3_Float, float(0), float(0), _Combine_cf2d04ff119ad88493f6460431765cbb_RGBA_4_Vector4, _Combine_cf2d04ff119ad88493f6460431765cbb_RGB_5_Vector3, _Combine_cf2d04ff119ad88493f6460431765cbb_RG_6_Vector2);
|
|
float _Property_47988ec10c0c18879d461e00bed806e7_Out_0_Float = Vector1_41461AC9;
|
|
float4 _Multiply_14cec4902d0a00829e4555071a1b8ad1_Out_2_Vector4;
|
|
Unity_Multiply_float4_float4(_Combine_cf2d04ff119ad88493f6460431765cbb_RGBA_4_Vector4, (_Property_47988ec10c0c18879d461e00bed806e7_Out_0_Float.xxxx), _Multiply_14cec4902d0a00829e4555071a1b8ad1_Out_2_Vector4);
|
|
float3 _Sign_3a6ebf59931cf08cb0482e0144ddac24_Out_1_Vector3;
|
|
Unity_Sign_float3(IN.WorldSpaceNormal, _Sign_3a6ebf59931cf08cb0482e0144ddac24_Out_1_Vector3);
|
|
float _Split_6299d4ddcc4c74828aea40a46fdb896e_R_1_Float = _Sign_3a6ebf59931cf08cb0482e0144ddac24_Out_1_Vector3[0];
|
|
float _Split_6299d4ddcc4c74828aea40a46fdb896e_G_2_Float = _Sign_3a6ebf59931cf08cb0482e0144ddac24_Out_1_Vector3[1];
|
|
float _Split_6299d4ddcc4c74828aea40a46fdb896e_B_3_Float = _Sign_3a6ebf59931cf08cb0482e0144ddac24_Out_1_Vector3[2];
|
|
float _Split_6299d4ddcc4c74828aea40a46fdb896e_A_4_Float = 0;
|
|
float2 _Vector2_b76cb1842101e58b9e636d49b075c612_Out_0_Vector2 = float2(_Split_6299d4ddcc4c74828aea40a46fdb896e_G_2_Float, float(1));
|
|
float2 _Multiply_a87753ad90594382bf3a3a95abbadbc8_Out_2_Vector2;
|
|
Unity_Multiply_float2_float2((_Multiply_14cec4902d0a00829e4555071a1b8ad1_Out_2_Vector4.xy), _Vector2_b76cb1842101e58b9e636d49b075c612_Out_0_Vector2, _Multiply_a87753ad90594382bf3a3a95abbadbc8_Out_2_Vector2);
|
|
UnitySamplerState _Property_8a2b8589cd3a42a1879a29c28e4f711f_Out_0_SamplerState = _SamplerState;
|
|
float4 _SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_RGBA_0_Vector4 = SAMPLE_TEXTURE2D(_Property_3e01b4d2fc68d48ba3acbba9d5881e59_Out_0_Texture2D.tex, _Property_8a2b8589cd3a42a1879a29c28e4f711f_Out_0_SamplerState.samplerstate, _Property_3e01b4d2fc68d48ba3acbba9d5881e59_Out_0_Texture2D.GetTransformedUV(_Multiply_a87753ad90594382bf3a3a95abbadbc8_Out_2_Vector2) );
|
|
_SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_RGBA_0_Vector4.rgb = UnpackNormal(_SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_RGBA_0_Vector4);
|
|
float _SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_R_4_Float = _SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_RGBA_0_Vector4.r;
|
|
float _SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_G_5_Float = _SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_RGBA_0_Vector4.g;
|
|
float _SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_B_6_Float = _SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_RGBA_0_Vector4.b;
|
|
float _SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_A_7_Float = _SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_RGBA_0_Vector4.a;
|
|
float2 _Vector2_ad6bd100e273d78fa409a30a77bfa2cc_Out_0_Vector2 = float2(_SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_R_4_Float, _SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_G_5_Float);
|
|
float2 _Multiply_31e8db88ee20c985a9850d1a58f3282b_Out_2_Vector2;
|
|
Unity_Multiply_float2_float2(_Vector2_ad6bd100e273d78fa409a30a77bfa2cc_Out_0_Vector2, _Vector2_b76cb1842101e58b9e636d49b075c612_Out_0_Vector2, _Multiply_31e8db88ee20c985a9850d1a58f3282b_Out_2_Vector2);
|
|
float _Split_5ed44bf2eca0868f81eb18100f49d1fa_R_1_Float = IN.WorldSpaceNormal[0];
|
|
float _Split_5ed44bf2eca0868f81eb18100f49d1fa_G_2_Float = IN.WorldSpaceNormal[1];
|
|
float _Split_5ed44bf2eca0868f81eb18100f49d1fa_B_3_Float = IN.WorldSpaceNormal[2];
|
|
float _Split_5ed44bf2eca0868f81eb18100f49d1fa_A_4_Float = 0;
|
|
float2 _Vector2_70e5837843f28b8b9d64cada3697bd5a_Out_0_Vector2 = float2(_Split_5ed44bf2eca0868f81eb18100f49d1fa_R_1_Float, _Split_5ed44bf2eca0868f81eb18100f49d1fa_B_3_Float);
|
|
float2 _Add_1145b2f896593d80aa864a34e6702562_Out_2_Vector2;
|
|
Unity_Add_float2(_Multiply_31e8db88ee20c985a9850d1a58f3282b_Out_2_Vector2, _Vector2_70e5837843f28b8b9d64cada3697bd5a_Out_0_Vector2, _Add_1145b2f896593d80aa864a34e6702562_Out_2_Vector2);
|
|
float _Split_2bc77ca2d17bd78cb2383770ce50b179_R_1_Float = _Add_1145b2f896593d80aa864a34e6702562_Out_2_Vector2[0];
|
|
float _Split_2bc77ca2d17bd78cb2383770ce50b179_G_2_Float = _Add_1145b2f896593d80aa864a34e6702562_Out_2_Vector2[1];
|
|
float _Split_2bc77ca2d17bd78cb2383770ce50b179_B_3_Float = 0;
|
|
float _Split_2bc77ca2d17bd78cb2383770ce50b179_A_4_Float = 0;
|
|
float _Multiply_e4fe778b81456d819c52bb414cd95968_Out_2_Float;
|
|
Unity_Multiply_float_float(_SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_B_6_Float, _Split_5ed44bf2eca0868f81eb18100f49d1fa_G_2_Float, _Multiply_e4fe778b81456d819c52bb414cd95968_Out_2_Float);
|
|
float3 _Vector3_08f62c5c01619e849f1a7d85a44531ac_Out_0_Vector3 = float3(_Split_2bc77ca2d17bd78cb2383770ce50b179_R_1_Float, _Multiply_e4fe778b81456d819c52bb414cd95968_Out_2_Float, _Split_2bc77ca2d17bd78cb2383770ce50b179_G_2_Float);
|
|
float3 _Absolute_644b798714827680b39bf5d34f70385f_Out_1_Vector3;
|
|
Unity_Absolute_float3(IN.WorldSpaceNormal, _Absolute_644b798714827680b39bf5d34f70385f_Out_1_Vector3);
|
|
float _Property_adc4c59482221c8aad681c6558728ac9_Out_0_Float = Vector1_E4D1C13A;
|
|
float3 _Power_ee478822a04529849ae8df1636c29fe2_Out_2_Vector3;
|
|
Unity_Power_float3(_Absolute_644b798714827680b39bf5d34f70385f_Out_1_Vector3, (_Property_adc4c59482221c8aad681c6558728ac9_Out_0_Float.xxx), _Power_ee478822a04529849ae8df1636c29fe2_Out_2_Vector3);
|
|
float3 _Multiply_b386a937554d73828e437d126d69608b_Out_2_Vector3;
|
|
Unity_Multiply_float3_float3(_Power_ee478822a04529849ae8df1636c29fe2_Out_2_Vector3, _Power_ee478822a04529849ae8df1636c29fe2_Out_2_Vector3, _Multiply_b386a937554d73828e437d126d69608b_Out_2_Vector3);
|
|
float _Split_ae83014fcbd9f7879a0b91fa66dc9718_R_1_Float = _Multiply_b386a937554d73828e437d126d69608b_Out_2_Vector3[0];
|
|
float _Split_ae83014fcbd9f7879a0b91fa66dc9718_G_2_Float = _Multiply_b386a937554d73828e437d126d69608b_Out_2_Vector3[1];
|
|
float _Split_ae83014fcbd9f7879a0b91fa66dc9718_B_3_Float = _Multiply_b386a937554d73828e437d126d69608b_Out_2_Vector3[2];
|
|
float _Split_ae83014fcbd9f7879a0b91fa66dc9718_A_4_Float = 0;
|
|
float3 _Multiply_2e1040ca9c98d085ace76ee93f094039_Out_2_Vector3;
|
|
Unity_Multiply_float3_float3(_Vector3_08f62c5c01619e849f1a7d85a44531ac_Out_0_Vector3, (_Split_ae83014fcbd9f7879a0b91fa66dc9718_G_2_Float.xxx), _Multiply_2e1040ca9c98d085ace76ee93f094039_Out_2_Vector3);
|
|
float4 _Combine_192c2c4a69be588b90ca005a32e22552_RGBA_4_Vector4;
|
|
float3 _Combine_192c2c4a69be588b90ca005a32e22552_RGB_5_Vector3;
|
|
float2 _Combine_192c2c4a69be588b90ca005a32e22552_RG_6_Vector2;
|
|
Unity_Combine_float(_Split_89ed63cb625cb3878c183d0b71c03400_R_1_Float, _Split_89ed63cb625cb3878c183d0b71c03400_G_2_Float, float(0), float(0), _Combine_192c2c4a69be588b90ca005a32e22552_RGBA_4_Vector4, _Combine_192c2c4a69be588b90ca005a32e22552_RGB_5_Vector3, _Combine_192c2c4a69be588b90ca005a32e22552_RG_6_Vector2);
|
|
float4 _Multiply_138240d0d4846e87b0febabec0d6891b_Out_2_Vector4;
|
|
Unity_Multiply_float4_float4(_Combine_192c2c4a69be588b90ca005a32e22552_RGBA_4_Vector4, (_Property_47988ec10c0c18879d461e00bed806e7_Out_0_Float.xxxx), _Multiply_138240d0d4846e87b0febabec0d6891b_Out_2_Vector4);
|
|
float _Multiply_de711f4a4614bd89a463b53374cf4036_Out_2_Float;
|
|
Unity_Multiply_float_float(_Split_6299d4ddcc4c74828aea40a46fdb896e_B_3_Float, -1, _Multiply_de711f4a4614bd89a463b53374cf4036_Out_2_Float);
|
|
float2 _Vector2_4ed33f0c73b2698fa6f3c1b77fe76808_Out_0_Vector2 = float2(_Multiply_de711f4a4614bd89a463b53374cf4036_Out_2_Float, float(1));
|
|
float2 _Multiply_2af6058cc6ccb88caefd2799bb5941e8_Out_2_Vector2;
|
|
Unity_Multiply_float2_float2((_Multiply_138240d0d4846e87b0febabec0d6891b_Out_2_Vector4.xy), _Vector2_4ed33f0c73b2698fa6f3c1b77fe76808_Out_0_Vector2, _Multiply_2af6058cc6ccb88caefd2799bb5941e8_Out_2_Vector2);
|
|
float4 _SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_RGBA_0_Vector4 = SAMPLE_TEXTURE2D(_Property_3e01b4d2fc68d48ba3acbba9d5881e59_Out_0_Texture2D.tex, _Property_8a2b8589cd3a42a1879a29c28e4f711f_Out_0_SamplerState.samplerstate, _Property_3e01b4d2fc68d48ba3acbba9d5881e59_Out_0_Texture2D.GetTransformedUV(_Multiply_2af6058cc6ccb88caefd2799bb5941e8_Out_2_Vector2) );
|
|
_SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_RGBA_0_Vector4.rgb = UnpackNormal(_SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_RGBA_0_Vector4);
|
|
float _SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_R_4_Float = _SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_RGBA_0_Vector4.r;
|
|
float _SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_G_5_Float = _SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_RGBA_0_Vector4.g;
|
|
float _SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_B_6_Float = _SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_RGBA_0_Vector4.b;
|
|
float _SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_A_7_Float = _SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_RGBA_0_Vector4.a;
|
|
float2 _Vector2_fe9aedd4528c7486ada4abdca0b0944e_Out_0_Vector2 = float2(_SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_R_4_Float, _SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_G_5_Float);
|
|
float2 _Multiply_02b9b4665ad9918d8721bcaddc82f06f_Out_2_Vector2;
|
|
Unity_Multiply_float2_float2(_Vector2_fe9aedd4528c7486ada4abdca0b0944e_Out_0_Vector2, _Vector2_4ed33f0c73b2698fa6f3c1b77fe76808_Out_0_Vector2, _Multiply_02b9b4665ad9918d8721bcaddc82f06f_Out_2_Vector2);
|
|
float2 _Vector2_a74a85274da15181abb63cc5e8df0de1_Out_0_Vector2 = float2(_Split_5ed44bf2eca0868f81eb18100f49d1fa_R_1_Float, _Split_5ed44bf2eca0868f81eb18100f49d1fa_G_2_Float);
|
|
float2 _Add_b227c84042055e8faa1a9fdc69529707_Out_2_Vector2;
|
|
Unity_Add_float2(_Multiply_02b9b4665ad9918d8721bcaddc82f06f_Out_2_Vector2, _Vector2_a74a85274da15181abb63cc5e8df0de1_Out_0_Vector2, _Add_b227c84042055e8faa1a9fdc69529707_Out_2_Vector2);
|
|
float _Split_2cfb9eacd8762483941459cdf28bda97_R_1_Float = _Add_b227c84042055e8faa1a9fdc69529707_Out_2_Vector2[0];
|
|
float _Split_2cfb9eacd8762483941459cdf28bda97_G_2_Float = _Add_b227c84042055e8faa1a9fdc69529707_Out_2_Vector2[1];
|
|
float _Split_2cfb9eacd8762483941459cdf28bda97_B_3_Float = 0;
|
|
float _Split_2cfb9eacd8762483941459cdf28bda97_A_4_Float = 0;
|
|
float _Multiply_1d65ce08ce672087879125f2e13c4004_Out_2_Float;
|
|
Unity_Multiply_float_float(_SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_B_6_Float, _Split_5ed44bf2eca0868f81eb18100f49d1fa_B_3_Float, _Multiply_1d65ce08ce672087879125f2e13c4004_Out_2_Float);
|
|
float3 _Vector3_ba6cfb4671e8c58f9b41ea1dc23102ca_Out_0_Vector3 = float3(_Split_2cfb9eacd8762483941459cdf28bda97_R_1_Float, _Split_2cfb9eacd8762483941459cdf28bda97_G_2_Float, _Multiply_1d65ce08ce672087879125f2e13c4004_Out_2_Float);
|
|
float3 _Multiply_7bb4009c92b108849ac6ca92bc1442f2_Out_2_Vector3;
|
|
Unity_Multiply_float3_float3(_Vector3_ba6cfb4671e8c58f9b41ea1dc23102ca_Out_0_Vector3, (_Split_ae83014fcbd9f7879a0b91fa66dc9718_B_3_Float.xxx), _Multiply_7bb4009c92b108849ac6ca92bc1442f2_Out_2_Vector3);
|
|
float4 _Combine_1e9ffdba42d6918fb7a4b185f1585d2a_RGBA_4_Vector4;
|
|
float3 _Combine_1e9ffdba42d6918fb7a4b185f1585d2a_RGB_5_Vector3;
|
|
float2 _Combine_1e9ffdba42d6918fb7a4b185f1585d2a_RG_6_Vector2;
|
|
Unity_Combine_float(_Split_89ed63cb625cb3878c183d0b71c03400_B_3_Float, _Split_89ed63cb625cb3878c183d0b71c03400_G_2_Float, float(0), float(0), _Combine_1e9ffdba42d6918fb7a4b185f1585d2a_RGBA_4_Vector4, _Combine_1e9ffdba42d6918fb7a4b185f1585d2a_RGB_5_Vector3, _Combine_1e9ffdba42d6918fb7a4b185f1585d2a_RG_6_Vector2);
|
|
float4 _Multiply_2c0864423b014f8b8af8523f68cbb63c_Out_2_Vector4;
|
|
Unity_Multiply_float4_float4(_Combine_1e9ffdba42d6918fb7a4b185f1585d2a_RGBA_4_Vector4, (_Property_47988ec10c0c18879d461e00bed806e7_Out_0_Float.xxxx), _Multiply_2c0864423b014f8b8af8523f68cbb63c_Out_2_Vector4);
|
|
float2 _Vector2_a1e23e0f921b6484818f009a2b12a5ba_Out_0_Vector2 = float2(_Split_6299d4ddcc4c74828aea40a46fdb896e_R_1_Float, float(1));
|
|
float2 _Multiply_862402885a49f18cb87278ab53bc6744_Out_2_Vector2;
|
|
Unity_Multiply_float2_float2((_Multiply_2c0864423b014f8b8af8523f68cbb63c_Out_2_Vector4.xy), _Vector2_a1e23e0f921b6484818f009a2b12a5ba_Out_0_Vector2, _Multiply_862402885a49f18cb87278ab53bc6744_Out_2_Vector2);
|
|
float4 _SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_RGBA_0_Vector4 = SAMPLE_TEXTURE2D(_Property_3e01b4d2fc68d48ba3acbba9d5881e59_Out_0_Texture2D.tex, _Property_8a2b8589cd3a42a1879a29c28e4f711f_Out_0_SamplerState.samplerstate, _Property_3e01b4d2fc68d48ba3acbba9d5881e59_Out_0_Texture2D.GetTransformedUV(_Multiply_862402885a49f18cb87278ab53bc6744_Out_2_Vector2) );
|
|
_SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_RGBA_0_Vector4.rgb = UnpackNormal(_SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_RGBA_0_Vector4);
|
|
float _SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_R_4_Float = _SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_RGBA_0_Vector4.r;
|
|
float _SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_G_5_Float = _SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_RGBA_0_Vector4.g;
|
|
float _SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_B_6_Float = _SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_RGBA_0_Vector4.b;
|
|
float _SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_A_7_Float = _SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_RGBA_0_Vector4.a;
|
|
float _Multiply_4649b768be76d784a3284bacde795359_Out_2_Float;
|
|
Unity_Multiply_float_float(_SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_B_6_Float, _Split_5ed44bf2eca0868f81eb18100f49d1fa_R_1_Float, _Multiply_4649b768be76d784a3284bacde795359_Out_2_Float);
|
|
float2 _Vector2_819fcd5eb484438eacad1987576d7d67_Out_0_Vector2 = float2(_SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_R_4_Float, _SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_G_5_Float);
|
|
float2 _Multiply_58530ebb3c6d798b93686a76247bf505_Out_2_Vector2;
|
|
Unity_Multiply_float2_float2(_Vector2_819fcd5eb484438eacad1987576d7d67_Out_0_Vector2, _Vector2_a1e23e0f921b6484818f009a2b12a5ba_Out_0_Vector2, _Multiply_58530ebb3c6d798b93686a76247bf505_Out_2_Vector2);
|
|
float2 _Vector2_e293c112b2f49e88a5fe46dfb1fbeb40_Out_0_Vector2 = float2(_Split_5ed44bf2eca0868f81eb18100f49d1fa_B_3_Float, _Split_5ed44bf2eca0868f81eb18100f49d1fa_G_2_Float);
|
|
float2 _Add_cf00fb232c6e2b8e973ab2f84453f55e_Out_2_Vector2;
|
|
Unity_Add_float2(_Multiply_58530ebb3c6d798b93686a76247bf505_Out_2_Vector2, _Vector2_e293c112b2f49e88a5fe46dfb1fbeb40_Out_0_Vector2, _Add_cf00fb232c6e2b8e973ab2f84453f55e_Out_2_Vector2);
|
|
float _Split_3ea3e61d32bdd78f82c686b75ff3fd9b_R_1_Float = _Add_cf00fb232c6e2b8e973ab2f84453f55e_Out_2_Vector2[0];
|
|
float _Split_3ea3e61d32bdd78f82c686b75ff3fd9b_G_2_Float = _Add_cf00fb232c6e2b8e973ab2f84453f55e_Out_2_Vector2[1];
|
|
float _Split_3ea3e61d32bdd78f82c686b75ff3fd9b_B_3_Float = 0;
|
|
float _Split_3ea3e61d32bdd78f82c686b75ff3fd9b_A_4_Float = 0;
|
|
float3 _Vector3_13a08d5940172a84a78ee3d9b8766833_Out_0_Vector3 = float3(_Multiply_4649b768be76d784a3284bacde795359_Out_2_Float, _Split_3ea3e61d32bdd78f82c686b75ff3fd9b_G_2_Float, _Split_3ea3e61d32bdd78f82c686b75ff3fd9b_R_1_Float);
|
|
float3 _Multiply_77818c22e359fc8cbb7dd20216a8db72_Out_2_Vector3;
|
|
Unity_Multiply_float3_float3(_Vector3_13a08d5940172a84a78ee3d9b8766833_Out_0_Vector3, (_Split_ae83014fcbd9f7879a0b91fa66dc9718_R_1_Float.xxx), _Multiply_77818c22e359fc8cbb7dd20216a8db72_Out_2_Vector3);
|
|
float3 _Add_769d9ee909c9238dbbf72d2800a2f268_Out_2_Vector3;
|
|
Unity_Add_float3(_Multiply_7bb4009c92b108849ac6ca92bc1442f2_Out_2_Vector3, _Multiply_77818c22e359fc8cbb7dd20216a8db72_Out_2_Vector3, _Add_769d9ee909c9238dbbf72d2800a2f268_Out_2_Vector3);
|
|
float3 _Add_14295f72880e4b87a1baf1ced943ac40_Out_2_Vector3;
|
|
Unity_Add_float3(_Multiply_2e1040ca9c98d085ace76ee93f094039_Out_2_Vector3, _Add_769d9ee909c9238dbbf72d2800a2f268_Out_2_Vector3, _Add_14295f72880e4b87a1baf1ced943ac40_Out_2_Vector3);
|
|
float _Add_e59af300bba2498db32eac1412123447_Out_2_Float;
|
|
Unity_Add_float(_Split_ae83014fcbd9f7879a0b91fa66dc9718_R_1_Float, _Split_ae83014fcbd9f7879a0b91fa66dc9718_G_2_Float, _Add_e59af300bba2498db32eac1412123447_Out_2_Float);
|
|
float _Add_e855069f047fae8ea9027d56acb61e56_Out_2_Float;
|
|
Unity_Add_float(_Add_e59af300bba2498db32eac1412123447_Out_2_Float, _Split_ae83014fcbd9f7879a0b91fa66dc9718_B_3_Float, _Add_e855069f047fae8ea9027d56acb61e56_Out_2_Float);
|
|
float3 _Divide_91ae4b94f1d9b78e99d0472293b8098c_Out_2_Vector3;
|
|
Unity_Divide_float3(_Add_14295f72880e4b87a1baf1ced943ac40_Out_2_Vector3, (_Add_e855069f047fae8ea9027d56acb61e56_Out_2_Float.xxx), _Divide_91ae4b94f1d9b78e99d0472293b8098c_Out_2_Vector3);
|
|
float3 _Transform_73eecc0c3689d184a34c8d0f28a58adf_Out_1_Vector3;
|
|
{
|
|
float3x3 tangentTransform = float3x3(IN.WorldSpaceTangent, IN.WorldSpaceBiTangent, IN.WorldSpaceNormal);
|
|
_Transform_73eecc0c3689d184a34c8d0f28a58adf_Out_1_Vector3 = TransformWorldToTangent(_Divide_91ae4b94f1d9b78e99d0472293b8098c_Out_2_Vector3.xyz, tangentTransform, true);
|
|
}
|
|
float3 _Normalize_15ef346824db0a8797631ed8b998e673_Out_1_Vector3;
|
|
Unity_Normalize_float3(_Transform_73eecc0c3689d184a34c8d0f28a58adf_Out_1_Vector3, _Normalize_15ef346824db0a8797631ed8b998e673_Out_1_Vector3);
|
|
XYZ_1 = (float4(_Normalize_15ef346824db0a8797631ed8b998e673_Out_1_Vector3, 1.0));
|
|
XZ_2 = (float4(_Vector3_08f62c5c01619e849f1a7d85a44531ac_Out_0_Vector3, 1.0));
|
|
YZ_3 = (float4(_Vector3_ba6cfb4671e8c58f9b41ea1dc23102ca_Out_0_Vector3, 1.0));
|
|
XY_4 = (float4(_Vector3_13a08d5940172a84a78ee3d9b8766833_Out_0_Vector3, 1.0));
|
|
}
|
|
|
|
void Unity_NormalStrength_float(float3 In, float Strength, out float3 Out)
|
|
{
|
|
Out = float3(In.rg * Strength, lerp(1, In.b, saturate(Strength)));
|
|
}
|
|
|
|
void Unity_NormalBlend_float(float3 A, float3 B, out float3 Out)
|
|
{
|
|
Out = SafeNormalize(float3(A.rg + B.rg, A.b * B.b));
|
|
}
|
|
|
|
void Unity_Subtract_float(float A, float B, out float Out)
|
|
{
|
|
Out = A - B;
|
|
}
|
|
|
|
void Unity_Divide_float(float A, float B, out float Out)
|
|
{
|
|
Out = A / B;
|
|
}
|
|
|
|
void Unity_Lerp_float3(float3 A, float3 B, float3 T, out float3 Out)
|
|
{
|
|
Out = lerp(A, B, T);
|
|
}
|
|
|
|
void Unity_Remap_float(float In, float2 InMinMax, float2 OutMinMax, out float Out)
|
|
{
|
|
Out = OutMinMax.x + (In - InMinMax.x) * (OutMinMax.y - OutMinMax.x) / (InMinMax.y - InMinMax.x);
|
|
}
|
|
|
|
void Unity_Branch_float(float Predicate, float True, float False, out float Out)
|
|
{
|
|
Out = Predicate ? True : False;
|
|
}
|
|
|
|
void Unity_Lerp_float(float A, float B, float T, out float Out)
|
|
{
|
|
Out = lerp(A, B, T);
|
|
}
|
|
|
|
struct Bindings_BlendOverlayDetailSmoothness_06e12138dc89c0040b45a57abe520a1a_float
|
|
{
|
|
};
|
|
|
|
void SG_BlendOverlayDetailSmoothness_06e12138dc89c0040b45a57abe520a1a_float(float Vector1_32317166, float Vector1_FBE622A2, float Vector1_8C15C351, Bindings_BlendOverlayDetailSmoothness_06e12138dc89c0040b45a57abe520a1a_float IN, out float SmoothnessOverlay_1)
|
|
{
|
|
float _Property_728cc50521e9e988ac9cbff4872d5139_Out_0_Float = Vector1_32317166;
|
|
float _Property_a00e29241d12f983b30177515b367ec9_Out_0_Float = Vector1_FBE622A2;
|
|
float _Sign_343a45ede7349283a681c6bd9998fd8e_Out_1_Float;
|
|
Unity_Sign_float(_Property_a00e29241d12f983b30177515b367ec9_Out_0_Float, _Sign_343a45ede7349283a681c6bd9998fd8e_Out_1_Float);
|
|
float _Add_681019b8f5d3d68bb482d419c9fc61a9_Out_2_Float;
|
|
Unity_Add_float(_Sign_343a45ede7349283a681c6bd9998fd8e_Out_1_Float, float(1), _Add_681019b8f5d3d68bb482d419c9fc61a9_Out_2_Float);
|
|
float _Multiply_e8f4cb722712a880ac0db6c7461427f7_Out_2_Float;
|
|
Unity_Multiply_float_float(_Add_681019b8f5d3d68bb482d419c9fc61a9_Out_2_Float, 0.5, _Multiply_e8f4cb722712a880ac0db6c7461427f7_Out_2_Float);
|
|
float _Ceiling_95ad15988aa9b98184875fa754feae01_Out_1_Float;
|
|
Unity_Ceiling_float(_Multiply_e8f4cb722712a880ac0db6c7461427f7_Out_2_Float, _Ceiling_95ad15988aa9b98184875fa754feae01_Out_1_Float);
|
|
float _Property_2db1c747a05ee284a8b00076062f91a4_Out_0_Float = Vector1_8C15C351;
|
|
float _Lerp_b3cdb01fc3c5b988ac9b184943bf7c01_Out_3_Float;
|
|
Unity_Lerp_float(_Property_728cc50521e9e988ac9cbff4872d5139_Out_0_Float, _Ceiling_95ad15988aa9b98184875fa754feae01_Out_1_Float, _Property_2db1c747a05ee284a8b00076062f91a4_Out_0_Float, _Lerp_b3cdb01fc3c5b988ac9b184943bf7c01_Out_3_Float);
|
|
SmoothnessOverlay_1 = _Lerp_b3cdb01fc3c5b988ac9b184943bf7c01_Out_3_Float;
|
|
}
|
|
|
|
void Unity_Minimum_float(float A, float B, out float Out)
|
|
{
|
|
Out = min(A, B);
|
|
};
|
|
|
|
// Graph Vertex
|
|
struct VertexDescription
|
|
{
|
|
};
|
|
|
|
VertexDescription VertexDescriptionFunction(VertexDescriptionInputs IN)
|
|
{
|
|
VertexDescription description = (VertexDescription)0;
|
|
return description;
|
|
}
|
|
|
|
// Graph Pixel
|
|
struct SurfaceDescription
|
|
{
|
|
float3 BaseColor;
|
|
float3 Emission;
|
|
float Alpha;
|
|
float3 BentNormal;
|
|
float Smoothness;
|
|
float Occlusion;
|
|
float3 NormalTS;
|
|
float Metallic;
|
|
};
|
|
|
|
SurfaceDescription SurfaceDescriptionFunction(SurfaceDescriptionInputs IN)
|
|
{
|
|
SurfaceDescription surface = (SurfaceDescription)0;
|
|
float _Property_72a5c604805a7b8ebbfd7acee03656aa_Out_0_Boolean = _CoverMaskRCurvature;
|
|
UnityTexture2D _Property_5f029bbc9f13b7858650859c3b63ebfd_Out_0_Texture2D = UnityBuildTexture2DStructNoScale(_BaseColorMap);
|
|
float4 _Property_a409d5fcafb9f182a4b2aea64204408f_Out_0_Vector4 = _BaseTilingOffset;
|
|
float4 _Divide_6a90cebe78e620828de587523daaa7e6_Out_2_Vector4;
|
|
Unity_Divide_float4(float4(1, 1, 0, 0), _Property_a409d5fcafb9f182a4b2aea64204408f_Out_0_Vector4, _Divide_6a90cebe78e620828de587523daaa7e6_Out_2_Vector4);
|
|
float _Property_3539de8c698c2981bb3c088d4ec52201_Out_0_Float = _BaseTriplanarThreshold;
|
|
Bindings_TriplanarNM_bc609ed95f52591469ab35dbfe0efcea_float _TriplanarNM_92d0433ff3938b8392407d2ab8713ac8;
|
|
_TriplanarNM_92d0433ff3938b8392407d2ab8713ac8.WorldSpaceNormal = IN.WorldSpaceNormal;
|
|
_TriplanarNM_92d0433ff3938b8392407d2ab8713ac8.AbsoluteWorldSpacePosition = IN.AbsoluteWorldSpacePosition;
|
|
float4 _TriplanarNM_92d0433ff3938b8392407d2ab8713ac8_XYZ_1_Vector4;
|
|
float4 _TriplanarNM_92d0433ff3938b8392407d2ab8713ac8_XZ_2_Vector4;
|
|
float4 _TriplanarNM_92d0433ff3938b8392407d2ab8713ac8_YZ_3_Vector4;
|
|
float4 _TriplanarNM_92d0433ff3938b8392407d2ab8713ac8_XY_4_Vector4;
|
|
SG_TriplanarNM_bc609ed95f52591469ab35dbfe0efcea_float(_Property_5f029bbc9f13b7858650859c3b63ebfd_Out_0_Texture2D, (_Divide_6a90cebe78e620828de587523daaa7e6_Out_2_Vector4).x, _Property_3539de8c698c2981bb3c088d4ec52201_Out_0_Float, UnityBuildSamplerStateStruct(SamplerState_Linear_Repeat_Aniso8), _TriplanarNM_92d0433ff3938b8392407d2ab8713ac8, _TriplanarNM_92d0433ff3938b8392407d2ab8713ac8_XYZ_1_Vector4, _TriplanarNM_92d0433ff3938b8392407d2ab8713ac8_XZ_2_Vector4, _TriplanarNM_92d0433ff3938b8392407d2ab8713ac8_YZ_3_Vector4, _TriplanarNM_92d0433ff3938b8392407d2ab8713ac8_XY_4_Vector4);
|
|
float4 _Property_87cd542c2b8c30868ed1d7d38aed8f2b_Out_0_Vector4 = _BaseColor;
|
|
float4 _Multiply_4b2be0b3fe39f385b887e7c82ab41e0b_Out_2_Vector4;
|
|
Unity_Multiply_float4_float4(_TriplanarNM_92d0433ff3938b8392407d2ab8713ac8_XYZ_1_Vector4, _Property_87cd542c2b8c30868ed1d7d38aed8f2b_Out_0_Vector4, _Multiply_4b2be0b3fe39f385b887e7c82ab41e0b_Out_2_Vector4);
|
|
UnityTexture2D _Property_c167aafac28bd98c8411d3e25631fdeb_Out_0_Texture2D = UnityBuildTexture2DStructNoScale(_CoverMaskA);
|
|
float4 _UV_e143f0ebbac8bb8cab3206ab93422dda_Out_0_Vector4 = IN.uv0;
|
|
float4 _SampleTexture2D_32717b1e99785588830ceee116cbe7fc_RGBA_0_Vector4 = SAMPLE_TEXTURE2D(_Property_c167aafac28bd98c8411d3e25631fdeb_Out_0_Texture2D.tex, _Property_c167aafac28bd98c8411d3e25631fdeb_Out_0_Texture2D.samplerstate, _Property_c167aafac28bd98c8411d3e25631fdeb_Out_0_Texture2D.GetTransformedUV((_UV_e143f0ebbac8bb8cab3206ab93422dda_Out_0_Vector4.xy)) );
|
|
float _SampleTexture2D_32717b1e99785588830ceee116cbe7fc_R_4_Float = _SampleTexture2D_32717b1e99785588830ceee116cbe7fc_RGBA_0_Vector4.r;
|
|
float _SampleTexture2D_32717b1e99785588830ceee116cbe7fc_G_5_Float = _SampleTexture2D_32717b1e99785588830ceee116cbe7fc_RGBA_0_Vector4.g;
|
|
float _SampleTexture2D_32717b1e99785588830ceee116cbe7fc_B_6_Float = _SampleTexture2D_32717b1e99785588830ceee116cbe7fc_RGBA_0_Vector4.b;
|
|
float _SampleTexture2D_32717b1e99785588830ceee116cbe7fc_A_7_Float = _SampleTexture2D_32717b1e99785588830ceee116cbe7fc_RGBA_0_Vector4.a;
|
|
float _Multiply_01f97603c3df268380d339564b08db11_Out_2_Float;
|
|
Unity_Multiply_float_float(_SampleTexture2D_32717b1e99785588830ceee116cbe7fc_R_4_Float, 2, _Multiply_01f97603c3df268380d339564b08db11_Out_2_Float);
|
|
float _Property_cad777e9a810198e8076eb2cd76e6817_Out_0_Float = _BaseDarknessCurvMultply;
|
|
float _Multiply_b67c8963c3ba188e85b84ae9bf0dcbf7_Out_2_Float;
|
|
Unity_Multiply_float_float(_Multiply_01f97603c3df268380d339564b08db11_Out_2_Float, _Property_cad777e9a810198e8076eb2cd76e6817_Out_0_Float, _Multiply_b67c8963c3ba188e85b84ae9bf0dcbf7_Out_2_Float);
|
|
float _Clamp_646f55d74b38f18aa983e5d031e0e7c3_Out_3_Float;
|
|
Unity_Clamp_float(_Multiply_b67c8963c3ba188e85b84ae9bf0dcbf7_Out_2_Float, float(0), float(1), _Clamp_646f55d74b38f18aa983e5d031e0e7c3_Out_3_Float);
|
|
float _Absolute_c99e11216fab2488946eb6243d985fdc_Out_1_Float;
|
|
Unity_Absolute_float(_Clamp_646f55d74b38f18aa983e5d031e0e7c3_Out_3_Float, _Absolute_c99e11216fab2488946eb6243d985fdc_Out_1_Float);
|
|
float _Property_f8a9827e6f28d9819188d4775dcf7620_Out_0_Float = _BaseDarknessCurvPower;
|
|
float _Power_1b88303e1ca2f285b344bf6aa0cf05e4_Out_2_Float;
|
|
Unity_Power_float(_Absolute_c99e11216fab2488946eb6243d985fdc_Out_1_Float, _Property_f8a9827e6f28d9819188d4775dcf7620_Out_0_Float, _Power_1b88303e1ca2f285b344bf6aa0cf05e4_Out_2_Float);
|
|
float _Clamp_27887d983dbb5a8bbd2966fbcbd7c126_Out_3_Float;
|
|
Unity_Clamp_float(_Power_1b88303e1ca2f285b344bf6aa0cf05e4_Out_2_Float, float(0), float(1), _Clamp_27887d983dbb5a8bbd2966fbcbd7c126_Out_3_Float);
|
|
float4 _Multiply_59efbfb897b39480ad44be129db72018_Out_2_Vector4;
|
|
Unity_Multiply_float4_float4(_Multiply_4b2be0b3fe39f385b887e7c82ab41e0b_Out_2_Vector4, (_Clamp_27887d983dbb5a8bbd2966fbcbd7c126_Out_3_Float.xxxx), _Multiply_59efbfb897b39480ad44be129db72018_Out_2_Vector4);
|
|
float4 _Clamp_841e38951a68f286955c4755e78c610b_Out_3_Vector4;
|
|
Unity_Clamp_float4(_Multiply_59efbfb897b39480ad44be129db72018_Out_2_Vector4, float4(0, 0, 0, 0), float4(1, 1, 1, 1), _Clamp_841e38951a68f286955c4755e78c610b_Out_3_Vector4);
|
|
float _Add_d7ea4a88c4af4886b1e567ddd2b963f9_Out_2_Float;
|
|
Unity_Add_float(_Multiply_01f97603c3df268380d339564b08db11_Out_2_Float, float(-1), _Add_d7ea4a88c4af4886b1e567ddd2b963f9_Out_2_Float);
|
|
float _Clamp_1a02c4bf5903c988b1489d14c840c1e3_Out_3_Float;
|
|
Unity_Clamp_float(_Add_d7ea4a88c4af4886b1e567ddd2b963f9_Out_2_Float, float(0), float(1), _Clamp_1a02c4bf5903c988b1489d14c840c1e3_Out_3_Float);
|
|
float _Property_0e0e1ec2131cec87836dce596351dc1c_Out_0_Float = _BaseBrightnessCurvMultply;
|
|
float _Multiply_c975dfa7de001c89addd082d443e2d07_Out_2_Float;
|
|
Unity_Multiply_float_float(_Clamp_1a02c4bf5903c988b1489d14c840c1e3_Out_3_Float, _Property_0e0e1ec2131cec87836dce596351dc1c_Out_0_Float, _Multiply_c975dfa7de001c89addd082d443e2d07_Out_2_Float);
|
|
float _Clamp_d5711b145a87ef8e8a93ceb9b6197759_Out_3_Float;
|
|
Unity_Clamp_float(_Multiply_c975dfa7de001c89addd082d443e2d07_Out_2_Float, float(0), float(1), _Clamp_d5711b145a87ef8e8a93ceb9b6197759_Out_3_Float);
|
|
float _Absolute_8f9bd7ee7a35c18084d08ad7ef463f52_Out_1_Float;
|
|
Unity_Absolute_float(_Clamp_d5711b145a87ef8e8a93ceb9b6197759_Out_3_Float, _Absolute_8f9bd7ee7a35c18084d08ad7ef463f52_Out_1_Float);
|
|
float _Property_9092f5beea2bec83a5c8a3f6623953a6_Out_0_Float = _BaseBrightnessCurvPower;
|
|
float _Power_5c1a81a2cfcc578996666adb93479f83_Out_2_Float;
|
|
Unity_Power_float(_Absolute_8f9bd7ee7a35c18084d08ad7ef463f52_Out_1_Float, _Property_9092f5beea2bec83a5c8a3f6623953a6_Out_0_Float, _Power_5c1a81a2cfcc578996666adb93479f83_Out_2_Float);
|
|
float _Clamp_f3c614a7ae35508288c0bc3f6194ca34_Out_3_Float;
|
|
Unity_Clamp_float(_Power_5c1a81a2cfcc578996666adb93479f83_Out_2_Float, float(0), float(1), _Clamp_f3c614a7ae35508288c0bc3f6194ca34_Out_3_Float);
|
|
float4 _Add_8313e15cade91a8ba653986d6722818a_Out_2_Vector4;
|
|
Unity_Add_float4(_Clamp_841e38951a68f286955c4755e78c610b_Out_3_Vector4, (_Clamp_f3c614a7ae35508288c0bc3f6194ca34_Out_3_Float.xxxx), _Add_8313e15cade91a8ba653986d6722818a_Out_2_Vector4);
|
|
float4 _Clamp_6dc8fea4fa463b8ea840911fd315c80f_Out_3_Vector4;
|
|
Unity_Clamp_float4(_Add_8313e15cade91a8ba653986d6722818a_Out_2_Vector4, float4(0, 0, 0, 0), float4(1, 1, 1, 1), _Clamp_6dc8fea4fa463b8ea840911fd315c80f_Out_3_Vector4);
|
|
float4 _Branch_26165227c7a50284b87d2996dee9982c_Out_3_Vector4;
|
|
Unity_Branch_float4(_Property_72a5c604805a7b8ebbfd7acee03656aa_Out_0_Boolean, _Clamp_6dc8fea4fa463b8ea840911fd315c80f_Out_3_Vector4, _Multiply_4b2be0b3fe39f385b887e7c82ab41e0b_Out_2_Vector4, _Branch_26165227c7a50284b87d2996dee9982c_Out_3_Vector4);
|
|
UnityTexture2D _Property_2e62abc1fe8adb8b8ff655b8448be202_Out_0_Texture2D = UnityBuildTexture2DStructNoScale(_DetailMap);
|
|
float4 _Property_b86e0ee324ffb58a92473eab69864d04_Out_0_Vector4 = _DetailTilingOffset;
|
|
float _Split_e832641c05503286a4951c0a93621755_R_1_Float = _Property_b86e0ee324ffb58a92473eab69864d04_Out_0_Vector4[0];
|
|
float _Split_e832641c05503286a4951c0a93621755_G_2_Float = _Property_b86e0ee324ffb58a92473eab69864d04_Out_0_Vector4[1];
|
|
float _Split_e832641c05503286a4951c0a93621755_B_3_Float = _Property_b86e0ee324ffb58a92473eab69864d04_Out_0_Vector4[2];
|
|
float _Split_e832641c05503286a4951c0a93621755_A_4_Float = _Property_b86e0ee324ffb58a92473eab69864d04_Out_0_Vector4[3];
|
|
float2 _Vector2_4b5eef288b3d4c83b24e4ab653f55ec8_Out_0_Vector2 = float2(_Split_e832641c05503286a4951c0a93621755_R_1_Float, _Split_e832641c05503286a4951c0a93621755_G_2_Float);
|
|
float2 _Vector2_2925cf98ba16b08dabc58cd65efd17db_Out_0_Vector2 = float2(_Split_e832641c05503286a4951c0a93621755_B_3_Float, _Split_e832641c05503286a4951c0a93621755_A_4_Float);
|
|
float2 _TilingAndOffset_74f6566eba9ccd899de18c0b11b7a7a2_Out_3_Vector2;
|
|
Unity_TilingAndOffset_float(IN.uv0.xy, _Vector2_4b5eef288b3d4c83b24e4ab653f55ec8_Out_0_Vector2, _Vector2_2925cf98ba16b08dabc58cd65efd17db_Out_0_Vector2, _TilingAndOffset_74f6566eba9ccd899de18c0b11b7a7a2_Out_3_Vector2);
|
|
float4 _SampleTexture2D_4bd08411faa60c828847f2247f06a809_RGBA_0_Vector4 = SAMPLE_TEXTURE2D(_Property_2e62abc1fe8adb8b8ff655b8448be202_Out_0_Texture2D.tex, _Property_2e62abc1fe8adb8b8ff655b8448be202_Out_0_Texture2D.samplerstate, _Property_2e62abc1fe8adb8b8ff655b8448be202_Out_0_Texture2D.GetTransformedUV(_TilingAndOffset_74f6566eba9ccd899de18c0b11b7a7a2_Out_3_Vector2) );
|
|
float _SampleTexture2D_4bd08411faa60c828847f2247f06a809_R_4_Float = _SampleTexture2D_4bd08411faa60c828847f2247f06a809_RGBA_0_Vector4.r;
|
|
float _SampleTexture2D_4bd08411faa60c828847f2247f06a809_G_5_Float = _SampleTexture2D_4bd08411faa60c828847f2247f06a809_RGBA_0_Vector4.g;
|
|
float _SampleTexture2D_4bd08411faa60c828847f2247f06a809_B_6_Float = _SampleTexture2D_4bd08411faa60c828847f2247f06a809_RGBA_0_Vector4.b;
|
|
float _SampleTexture2D_4bd08411faa60c828847f2247f06a809_A_7_Float = _SampleTexture2D_4bd08411faa60c828847f2247f06a809_RGBA_0_Vector4.a;
|
|
float _Multiply_ee5a3ccdebd1af84920cd1455a59468b_Out_2_Float;
|
|
Unity_Multiply_float_float(_SampleTexture2D_4bd08411faa60c828847f2247f06a809_R_4_Float, 2, _Multiply_ee5a3ccdebd1af84920cd1455a59468b_Out_2_Float);
|
|
float _Add_b8d727bda34294808f98551e67aa852f_Out_2_Float;
|
|
Unity_Add_float(_Multiply_ee5a3ccdebd1af84920cd1455a59468b_Out_2_Float, float(-1), _Add_b8d727bda34294808f98551e67aa852f_Out_2_Float);
|
|
float _Property_4634e589b03f6983b90fa6aaee0ed5f6_Out_0_Float = _DetailAlbedoScale;
|
|
float _Multiply_f0ed5a95f800c68aa9f7ea2f1322cc31_Out_2_Float;
|
|
Unity_Multiply_float_float(_Add_b8d727bda34294808f98551e67aa852f_Out_2_Float, _Property_4634e589b03f6983b90fa6aaee0ed5f6_Out_0_Float, _Multiply_f0ed5a95f800c68aa9f7ea2f1322cc31_Out_2_Float);
|
|
float _Saturate_469298b4e783d887889b71dc48b4399f_Out_1_Float;
|
|
Unity_Saturate_float(_Multiply_f0ed5a95f800c68aa9f7ea2f1322cc31_Out_2_Float, _Saturate_469298b4e783d887889b71dc48b4399f_Out_1_Float);
|
|
float _Absolute_3b29f3ceceba148189d11e0195af4be2_Out_1_Float;
|
|
Unity_Absolute_float(_Saturate_469298b4e783d887889b71dc48b4399f_Out_1_Float, _Absolute_3b29f3ceceba148189d11e0195af4be2_Out_1_Float);
|
|
Bindings_BlendOverlayBaseColor_acdb3dfca72bd6b42bbc35f4613331a2_float _BlendOverlayBaseColor_369c0b6a02e62b809dc5c6ac1efddde2;
|
|
float3 _BlendOverlayBaseColor_369c0b6a02e62b809dc5c6ac1efddde2_OutVector4_1_Vector3;
|
|
SG_BlendOverlayBaseColor_acdb3dfca72bd6b42bbc35f4613331a2_float(_Branch_26165227c7a50284b87d2996dee9982c_Out_3_Vector4, _Add_b8d727bda34294808f98551e67aa852f_Out_2_Float, _Absolute_3b29f3ceceba148189d11e0195af4be2_Out_1_Float, _BlendOverlayBaseColor_369c0b6a02e62b809dc5c6ac1efddde2, _BlendOverlayBaseColor_369c0b6a02e62b809dc5c6ac1efddde2_OutVector4_1_Vector3);
|
|
UnityTexture2D _Property_9a8451520f254f84a21875f3dac8cbe3_Out_0_Texture2D = UnityBuildTexture2DStructNoScale(_CoverBaseColorMap);
|
|
float4 _Property_c853e88632d9fd85ac0e98d12083eb62_Out_0_Vector4 = _CoverTilingOffset;
|
|
float4 _Divide_1fe314f1ca9dd78fbf366bbeb40e4ccf_Out_2_Vector4;
|
|
Unity_Divide_float4(float4(1, 1, 0, 0), _Property_c853e88632d9fd85ac0e98d12083eb62_Out_0_Vector4, _Divide_1fe314f1ca9dd78fbf366bbeb40e4ccf_Out_2_Vector4);
|
|
float _Property_ee792eccbb538a878b19be5db264531e_Out_0_Float = _CoverTriplanarThreshold;
|
|
Bindings_TriplanarNM_bc609ed95f52591469ab35dbfe0efcea_float _TriplanarNM_cca4c45d91c87989990c532a04e9e8e1;
|
|
_TriplanarNM_cca4c45d91c87989990c532a04e9e8e1.WorldSpaceNormal = IN.WorldSpaceNormal;
|
|
_TriplanarNM_cca4c45d91c87989990c532a04e9e8e1.AbsoluteWorldSpacePosition = IN.AbsoluteWorldSpacePosition;
|
|
float4 _TriplanarNM_cca4c45d91c87989990c532a04e9e8e1_XYZ_1_Vector4;
|
|
float4 _TriplanarNM_cca4c45d91c87989990c532a04e9e8e1_XZ_2_Vector4;
|
|
float4 _TriplanarNM_cca4c45d91c87989990c532a04e9e8e1_YZ_3_Vector4;
|
|
float4 _TriplanarNM_cca4c45d91c87989990c532a04e9e8e1_XY_4_Vector4;
|
|
SG_TriplanarNM_bc609ed95f52591469ab35dbfe0efcea_float(_Property_9a8451520f254f84a21875f3dac8cbe3_Out_0_Texture2D, (_Divide_1fe314f1ca9dd78fbf366bbeb40e4ccf_Out_2_Vector4).x, _Property_ee792eccbb538a878b19be5db264531e_Out_0_Float, UnityBuildSamplerStateStruct(SamplerState_Linear_Repeat_Aniso8), _TriplanarNM_cca4c45d91c87989990c532a04e9e8e1, _TriplanarNM_cca4c45d91c87989990c532a04e9e8e1_XYZ_1_Vector4, _TriplanarNM_cca4c45d91c87989990c532a04e9e8e1_XZ_2_Vector4, _TriplanarNM_cca4c45d91c87989990c532a04e9e8e1_YZ_3_Vector4, _TriplanarNM_cca4c45d91c87989990c532a04e9e8e1_XY_4_Vector4);
|
|
float4 _Property_18c743619f52288dbe24e28326388b00_Out_0_Vector4 = _CoverBaseColor;
|
|
float4 _Multiply_62594f3b30470e86a813e1224c48902e_Out_2_Vector4;
|
|
Unity_Multiply_float4_float4(_TriplanarNM_cca4c45d91c87989990c532a04e9e8e1_XYZ_1_Vector4, _Property_18c743619f52288dbe24e28326388b00_Out_0_Vector4, _Multiply_62594f3b30470e86a813e1224c48902e_Out_2_Vector4);
|
|
float _Multiply_5378fc524597f98fb32eeb561a7390e9_Out_2_Float;
|
|
Unity_Multiply_float_float(_SampleTexture2D_32717b1e99785588830ceee116cbe7fc_R_4_Float, 2, _Multiply_5378fc524597f98fb32eeb561a7390e9_Out_2_Float);
|
|
float _Property_8a72d97c1c527c8f8e0cc71214498065_Out_0_Float = _CoverDarknessCurvMultply;
|
|
float _Multiply_22683a720176a788a2ce404dbddd837c_Out_2_Float;
|
|
Unity_Multiply_float_float(_Multiply_5378fc524597f98fb32eeb561a7390e9_Out_2_Float, _Property_8a72d97c1c527c8f8e0cc71214498065_Out_0_Float, _Multiply_22683a720176a788a2ce404dbddd837c_Out_2_Float);
|
|
float _Clamp_5a638fb628222d8a97865d9029554fe2_Out_3_Float;
|
|
Unity_Clamp_float(_Multiply_22683a720176a788a2ce404dbddd837c_Out_2_Float, float(0), float(1), _Clamp_5a638fb628222d8a97865d9029554fe2_Out_3_Float);
|
|
float _Absolute_11985e8863bf2b8ca0bda90bca829348_Out_1_Float;
|
|
Unity_Absolute_float(_Clamp_5a638fb628222d8a97865d9029554fe2_Out_3_Float, _Absolute_11985e8863bf2b8ca0bda90bca829348_Out_1_Float);
|
|
float _Property_aba5acef910eee88b110d565674a9e36_Out_0_Float = _CoverDarknessCurvPower;
|
|
float _Power_da9b537d80a58d85a88e72c2a5d01e7c_Out_2_Float;
|
|
Unity_Power_float(_Absolute_11985e8863bf2b8ca0bda90bca829348_Out_1_Float, _Property_aba5acef910eee88b110d565674a9e36_Out_0_Float, _Power_da9b537d80a58d85a88e72c2a5d01e7c_Out_2_Float);
|
|
float _Clamp_77228e2a7266fa8ca042eae2f0701342_Out_3_Float;
|
|
Unity_Clamp_float(_Power_da9b537d80a58d85a88e72c2a5d01e7c_Out_2_Float, float(0), float(1), _Clamp_77228e2a7266fa8ca042eae2f0701342_Out_3_Float);
|
|
float4 _Multiply_2111c8ad39d5e68caf4893a41a3bad7d_Out_2_Vector4;
|
|
Unity_Multiply_float4_float4(_Multiply_62594f3b30470e86a813e1224c48902e_Out_2_Vector4, (_Clamp_77228e2a7266fa8ca042eae2f0701342_Out_3_Float.xxxx), _Multiply_2111c8ad39d5e68caf4893a41a3bad7d_Out_2_Vector4);
|
|
float4 _Clamp_b489ebb9d7d18282a342100f4d2fa72d_Out_3_Vector4;
|
|
Unity_Clamp_float4(_Multiply_2111c8ad39d5e68caf4893a41a3bad7d_Out_2_Vector4, float4(0, 0, 0, 0), float4(1, 1, 1, 1), _Clamp_b489ebb9d7d18282a342100f4d2fa72d_Out_3_Vector4);
|
|
float _Add_7eea819e47ffe58cbb3ec5877a181444_Out_2_Float;
|
|
Unity_Add_float(_Multiply_5378fc524597f98fb32eeb561a7390e9_Out_2_Float, float(-1), _Add_7eea819e47ffe58cbb3ec5877a181444_Out_2_Float);
|
|
float _Clamp_b5e4f47c0358dc87b5f9fdb3a360e9e9_Out_3_Float;
|
|
Unity_Clamp_float(_Add_7eea819e47ffe58cbb3ec5877a181444_Out_2_Float, float(0), float(1), _Clamp_b5e4f47c0358dc87b5f9fdb3a360e9e9_Out_3_Float);
|
|
float _Property_753051c96a90798fa7d94cff4173d6e6_Out_0_Float = _CoverBrightnessCurvMultply;
|
|
float _Multiply_c650497abc44d98882ce0091d10c4356_Out_2_Float;
|
|
Unity_Multiply_float_float(_Clamp_b5e4f47c0358dc87b5f9fdb3a360e9e9_Out_3_Float, _Property_753051c96a90798fa7d94cff4173d6e6_Out_0_Float, _Multiply_c650497abc44d98882ce0091d10c4356_Out_2_Float);
|
|
float _Clamp_c508dc61e0cb2a829429559098f34f9a_Out_3_Float;
|
|
Unity_Clamp_float(_Multiply_c650497abc44d98882ce0091d10c4356_Out_2_Float, float(0), float(1), _Clamp_c508dc61e0cb2a829429559098f34f9a_Out_3_Float);
|
|
float _Absolute_2cff2da32d80c286acbb99de611f381a_Out_1_Float;
|
|
Unity_Absolute_float(_Clamp_c508dc61e0cb2a829429559098f34f9a_Out_3_Float, _Absolute_2cff2da32d80c286acbb99de611f381a_Out_1_Float);
|
|
float _Property_ce4610db7b6d0c8bb7fb318210d3e83f_Out_0_Float = _CoverBrightnessCurvPower;
|
|
float _Power_c21df4d2e5ea448281f9ac0f4a140b9e_Out_2_Float;
|
|
Unity_Power_float(_Absolute_2cff2da32d80c286acbb99de611f381a_Out_1_Float, _Property_ce4610db7b6d0c8bb7fb318210d3e83f_Out_0_Float, _Power_c21df4d2e5ea448281f9ac0f4a140b9e_Out_2_Float);
|
|
float _Clamp_fd095a9d6c2b9881ae5875ed126bf3fb_Out_3_Float;
|
|
Unity_Clamp_float(_Power_c21df4d2e5ea448281f9ac0f4a140b9e_Out_2_Float, float(0), float(1), _Clamp_fd095a9d6c2b9881ae5875ed126bf3fb_Out_3_Float);
|
|
float4 _Add_4a02758b9a29b18180516bf3c3ede263_Out_2_Vector4;
|
|
Unity_Add_float4(_Clamp_b489ebb9d7d18282a342100f4d2fa72d_Out_3_Vector4, (_Clamp_fd095a9d6c2b9881ae5875ed126bf3fb_Out_3_Float.xxxx), _Add_4a02758b9a29b18180516bf3c3ede263_Out_2_Vector4);
|
|
float4 _Clamp_632e3d64ab55648f927a79cef68f3396_Out_3_Vector4;
|
|
Unity_Clamp_float4(_Add_4a02758b9a29b18180516bf3c3ede263_Out_2_Vector4, float4(0, 0, 0, 0), float4(1, 1, 1, 1), _Clamp_632e3d64ab55648f927a79cef68f3396_Out_3_Vector4);
|
|
float4 _Branch_0c5221a996e29186a372734bf5c30a51_Out_3_Vector4;
|
|
Unity_Branch_float4(_Property_72a5c604805a7b8ebbfd7acee03656aa_Out_0_Boolean, _Clamp_632e3d64ab55648f927a79cef68f3396_Out_3_Vector4, _Multiply_62594f3b30470e86a813e1224c48902e_Out_2_Vector4, _Branch_0c5221a996e29186a372734bf5c30a51_Out_3_Vector4);
|
|
float _Multiply_6a55591ceae0dc86a971a275e316fec6_Out_2_Float;
|
|
Unity_Multiply_float_float(_SampleTexture2D_4bd08411faa60c828847f2247f06a809_R_4_Float, 2, _Multiply_6a55591ceae0dc86a971a275e316fec6_Out_2_Float);
|
|
float _Add_a86411eb4894f78f8f8f3246011b369c_Out_2_Float;
|
|
Unity_Add_float(_Multiply_6a55591ceae0dc86a971a275e316fec6_Out_2_Float, float(-1), _Add_a86411eb4894f78f8f8f3246011b369c_Out_2_Float);
|
|
float _Property_c5a049650239cf80a302d0c0f57c147a_Out_0_Float = _DetailCoverAlbedoScale;
|
|
float _Multiply_1708b01db74fe88a8c36434f8729bf41_Out_2_Float;
|
|
Unity_Multiply_float_float(_Add_a86411eb4894f78f8f8f3246011b369c_Out_2_Float, _Property_c5a049650239cf80a302d0c0f57c147a_Out_0_Float, _Multiply_1708b01db74fe88a8c36434f8729bf41_Out_2_Float);
|
|
float _Saturate_1a4899f79635918485a64fff7cea28ad_Out_1_Float;
|
|
Unity_Saturate_float(_Multiply_1708b01db74fe88a8c36434f8729bf41_Out_2_Float, _Saturate_1a4899f79635918485a64fff7cea28ad_Out_1_Float);
|
|
float _Absolute_d3dce2bb8d9f0285b5183b7f665beed8_Out_1_Float;
|
|
Unity_Absolute_float(_Saturate_1a4899f79635918485a64fff7cea28ad_Out_1_Float, _Absolute_d3dce2bb8d9f0285b5183b7f665beed8_Out_1_Float);
|
|
Bindings_BlendOverlayBaseColor_acdb3dfca72bd6b42bbc35f4613331a2_float _BlendOverlayBaseColor_ec1f397271cc818abdb95188914e6b4d;
|
|
float3 _BlendOverlayBaseColor_ec1f397271cc818abdb95188914e6b4d_OutVector4_1_Vector3;
|
|
SG_BlendOverlayBaseColor_acdb3dfca72bd6b42bbc35f4613331a2_float(_Branch_0c5221a996e29186a372734bf5c30a51_Out_3_Vector4, _Add_a86411eb4894f78f8f8f3246011b369c_Out_2_Float, _Absolute_d3dce2bb8d9f0285b5183b7f665beed8_Out_1_Float, _BlendOverlayBaseColor_ec1f397271cc818abdb95188914e6b4d, _BlendOverlayBaseColor_ec1f397271cc818abdb95188914e6b4d_OutVector4_1_Vector3);
|
|
float _Property_cb0b6597aee47880b32e852aaa0e4a71_Out_0_Boolean = _USEDYNAMICCOVERTSTATICMASKF;
|
|
float _Property_4b3f692214f8d081a043985e1adb12a1_Out_0_Float = _CoverMaskPower;
|
|
float _Multiply_10cc4ecb135f8e8ab88c475223d0eadf_Out_2_Float;
|
|
Unity_Multiply_float_float(_SampleTexture2D_32717b1e99785588830ceee116cbe7fc_A_7_Float, _Property_4b3f692214f8d081a043985e1adb12a1_Out_0_Float, _Multiply_10cc4ecb135f8e8ab88c475223d0eadf_Out_2_Float);
|
|
float _Clamp_07a501c22c6e188199bed73412ac8926_Out_3_Float;
|
|
Unity_Clamp_float(_Multiply_10cc4ecb135f8e8ab88c475223d0eadf_Out_2_Float, float(0), float(1), _Clamp_07a501c22c6e188199bed73412ac8926_Out_3_Float);
|
|
float _Split_2ada595651635e8d97bf4b82f717fcc6_R_1_Float = IN.VertexColor[0];
|
|
float _Split_2ada595651635e8d97bf4b82f717fcc6_G_2_Float = IN.VertexColor[1];
|
|
float _Split_2ada595651635e8d97bf4b82f717fcc6_B_3_Float = IN.VertexColor[2];
|
|
float _Split_2ada595651635e8d97bf4b82f717fcc6_A_4_Float = IN.VertexColor[3];
|
|
float3 _Property_9180f8dd535ba18499edac37aef4d231_Out_0_Vector3 = _CoverDirection;
|
|
float2 _Vector2_7fe7d9ef320da68f958e1ea535e2a6a8_Out_0_Vector2 = float2(_SampleTexture2D_4bd08411faa60c828847f2247f06a809_A_7_Float, _SampleTexture2D_4bd08411faa60c828847f2247f06a809_G_5_Float);
|
|
float2 _Multiply_b8d7cc078ce00d87b9a6b5241b2f1f01_Out_2_Vector2;
|
|
Unity_Multiply_float2_float2(_Vector2_7fe7d9ef320da68f958e1ea535e2a6a8_Out_0_Vector2, float2(2, 2), _Multiply_b8d7cc078ce00d87b9a6b5241b2f1f01_Out_2_Vector2);
|
|
float2 _Add_476ecfb1f47aed8bb8040bb1c44ca372_Out_2_Vector2;
|
|
Unity_Add_float2(_Multiply_b8d7cc078ce00d87b9a6b5241b2f1f01_Out_2_Vector2, float2(-1, -1), _Add_476ecfb1f47aed8bb8040bb1c44ca372_Out_2_Vector2);
|
|
float _Property_b7f40cf2664f5a819eb153af2b2eb69e_Out_0_Float = _DetailNormalScale;
|
|
float2 _Multiply_3b11e3e43551698eb19b6c6b671b6a41_Out_2_Vector2;
|
|
Unity_Multiply_float2_float2(_Add_476ecfb1f47aed8bb8040bb1c44ca372_Out_2_Vector2, (_Property_b7f40cf2664f5a819eb153af2b2eb69e_Out_0_Float.xx), _Multiply_3b11e3e43551698eb19b6c6b671b6a41_Out_2_Vector2);
|
|
float _Split_678aac70d9cb9783a49841710ce82ff8_R_1_Float = _Multiply_3b11e3e43551698eb19b6c6b671b6a41_Out_2_Vector2[0];
|
|
float _Split_678aac70d9cb9783a49841710ce82ff8_G_2_Float = _Multiply_3b11e3e43551698eb19b6c6b671b6a41_Out_2_Vector2[1];
|
|
float _Split_678aac70d9cb9783a49841710ce82ff8_B_3_Float = 0;
|
|
float _Split_678aac70d9cb9783a49841710ce82ff8_A_4_Float = 0;
|
|
float _DotProduct_7fd2e2e8b3e9ed8f9a42a0ba98e14174_Out_2_Float;
|
|
Unity_DotProduct_float2(_Multiply_3b11e3e43551698eb19b6c6b671b6a41_Out_2_Vector2, _Multiply_3b11e3e43551698eb19b6c6b671b6a41_Out_2_Vector2, _DotProduct_7fd2e2e8b3e9ed8f9a42a0ba98e14174_Out_2_Float);
|
|
float _Saturate_47bdfe8ca2c8d989a5ebbb5eb995f023_Out_1_Float;
|
|
Unity_Saturate_float(_DotProduct_7fd2e2e8b3e9ed8f9a42a0ba98e14174_Out_2_Float, _Saturate_47bdfe8ca2c8d989a5ebbb5eb995f023_Out_1_Float);
|
|
float _OneMinus_03777d2879850b838187d9d2605d7341_Out_1_Float;
|
|
Unity_OneMinus_float(_Saturate_47bdfe8ca2c8d989a5ebbb5eb995f023_Out_1_Float, _OneMinus_03777d2879850b838187d9d2605d7341_Out_1_Float);
|
|
float _SquareRoot_ca9c195aef071d8888f26cb73b749f72_Out_1_Float;
|
|
Unity_SquareRoot_float(_OneMinus_03777d2879850b838187d9d2605d7341_Out_1_Float, _SquareRoot_ca9c195aef071d8888f26cb73b749f72_Out_1_Float);
|
|
float3 _Vector3_6999cbd6a5aa908cb7c059b5f2f5b330_Out_0_Vector3 = float3(_Split_678aac70d9cb9783a49841710ce82ff8_R_1_Float, _Split_678aac70d9cb9783a49841710ce82ff8_G_2_Float, _SquareRoot_ca9c195aef071d8888f26cb73b749f72_Out_1_Float);
|
|
UnityTexture2D _Property_d2bb0a0b01239c85bd301cadeec1b3d8_Out_0_Texture2D = UnityBuildTexture2DStructNoScale(_BaseNormalMap);
|
|
Bindings_TriplanarNMn_059da9746584140498cd018db3c76047_float _TriplanarNMn_bf7f7c0e2d896289b86076b79f33d7d4;
|
|
_TriplanarNMn_bf7f7c0e2d896289b86076b79f33d7d4.WorldSpaceNormal = IN.WorldSpaceNormal;
|
|
_TriplanarNMn_bf7f7c0e2d896289b86076b79f33d7d4.WorldSpaceTangent = IN.WorldSpaceTangent;
|
|
_TriplanarNMn_bf7f7c0e2d896289b86076b79f33d7d4.WorldSpaceBiTangent = IN.WorldSpaceBiTangent;
|
|
_TriplanarNMn_bf7f7c0e2d896289b86076b79f33d7d4.AbsoluteWorldSpacePosition = IN.AbsoluteWorldSpacePosition;
|
|
float4 _TriplanarNMn_bf7f7c0e2d896289b86076b79f33d7d4_XYZ_1_Vector4;
|
|
float4 _TriplanarNMn_bf7f7c0e2d896289b86076b79f33d7d4_XZ_2_Vector4;
|
|
float4 _TriplanarNMn_bf7f7c0e2d896289b86076b79f33d7d4_YZ_3_Vector4;
|
|
float4 _TriplanarNMn_bf7f7c0e2d896289b86076b79f33d7d4_XY_4_Vector4;
|
|
SG_TriplanarNMn_059da9746584140498cd018db3c76047_float(_Property_d2bb0a0b01239c85bd301cadeec1b3d8_Out_0_Texture2D, (_Divide_6a90cebe78e620828de587523daaa7e6_Out_2_Vector4).x, _Property_3539de8c698c2981bb3c088d4ec52201_Out_0_Float, UnityBuildSamplerStateStruct(SamplerState_Linear_Repeat_Aniso8), _TriplanarNMn_bf7f7c0e2d896289b86076b79f33d7d4, _TriplanarNMn_bf7f7c0e2d896289b86076b79f33d7d4_XYZ_1_Vector4, _TriplanarNMn_bf7f7c0e2d896289b86076b79f33d7d4_XZ_2_Vector4, _TriplanarNMn_bf7f7c0e2d896289b86076b79f33d7d4_YZ_3_Vector4, _TriplanarNMn_bf7f7c0e2d896289b86076b79f33d7d4_XY_4_Vector4);
|
|
float _Property_d6baf612f8e685848732ca270b39f544_Out_0_Float = _BaseNormalScale;
|
|
float3 _NormalStrength_260139b4d5077d8b9d42de780d173b6c_Out_2_Vector3;
|
|
Unity_NormalStrength_float((_TriplanarNMn_bf7f7c0e2d896289b86076b79f33d7d4_XYZ_1_Vector4.xyz), _Property_d6baf612f8e685848732ca270b39f544_Out_0_Float, _NormalStrength_260139b4d5077d8b9d42de780d173b6c_Out_2_Vector3);
|
|
UnityTexture2D _Property_492c4e7cd40ab980bd38362624511e38_Out_0_Texture2D = UnityBuildTexture2DStructNoScale(_ShapeNormalMap);
|
|
float4 _SampleTexture2D_63aaad04c65f698e8f640de826888075_RGBA_0_Vector4 = SAMPLE_TEXTURE2D(_Property_492c4e7cd40ab980bd38362624511e38_Out_0_Texture2D.tex, _Property_492c4e7cd40ab980bd38362624511e38_Out_0_Texture2D.samplerstate, _Property_492c4e7cd40ab980bd38362624511e38_Out_0_Texture2D.GetTransformedUV(IN.uv0.xy) );
|
|
_SampleTexture2D_63aaad04c65f698e8f640de826888075_RGBA_0_Vector4.rgb = UnpackNormal(_SampleTexture2D_63aaad04c65f698e8f640de826888075_RGBA_0_Vector4);
|
|
float _SampleTexture2D_63aaad04c65f698e8f640de826888075_R_4_Float = _SampleTexture2D_63aaad04c65f698e8f640de826888075_RGBA_0_Vector4.r;
|
|
float _SampleTexture2D_63aaad04c65f698e8f640de826888075_G_5_Float = _SampleTexture2D_63aaad04c65f698e8f640de826888075_RGBA_0_Vector4.g;
|
|
float _SampleTexture2D_63aaad04c65f698e8f640de826888075_B_6_Float = _SampleTexture2D_63aaad04c65f698e8f640de826888075_RGBA_0_Vector4.b;
|
|
float _SampleTexture2D_63aaad04c65f698e8f640de826888075_A_7_Float = _SampleTexture2D_63aaad04c65f698e8f640de826888075_RGBA_0_Vector4.a;
|
|
float _Property_6c35e329e57d0e89950e24817068dbb1_Out_0_Float = _shapeNormalScale;
|
|
float3 _NormalStrength_e181a1bb2f4e35819e0f35e77346e12e_Out_2_Vector3;
|
|
Unity_NormalStrength_float((_SampleTexture2D_63aaad04c65f698e8f640de826888075_RGBA_0_Vector4.xyz), _Property_6c35e329e57d0e89950e24817068dbb1_Out_0_Float, _NormalStrength_e181a1bb2f4e35819e0f35e77346e12e_Out_2_Vector3);
|
|
float3 _NormalBlend_ead295b946c6058190c298c03bf64d0b_Out_2_Vector3;
|
|
Unity_NormalBlend_float(_NormalStrength_260139b4d5077d8b9d42de780d173b6c_Out_2_Vector3, _NormalStrength_e181a1bb2f4e35819e0f35e77346e12e_Out_2_Vector3, _NormalBlend_ead295b946c6058190c298c03bf64d0b_Out_2_Vector3);
|
|
float3 _NormalBlend_4242e1b4a785378aa59dd49e9d993ffc_Out_2_Vector3;
|
|
Unity_NormalBlend_float(_Vector3_6999cbd6a5aa908cb7c059b5f2f5b330_Out_0_Vector3, _NormalBlend_ead295b946c6058190c298c03bf64d0b_Out_2_Vector3, _NormalBlend_4242e1b4a785378aa59dd49e9d993ffc_Out_2_Vector3);
|
|
float _Property_3d4ab6ad1f1f138a96f0463f7be8b6ce_Out_0_Float = _CovershapeNormalScale;
|
|
float3 _NormalStrength_401cd5af500bd68dbc9bca19d548d0db_Out_2_Vector3;
|
|
Unity_NormalStrength_float((_SampleTexture2D_63aaad04c65f698e8f640de826888075_RGBA_0_Vector4.xyz), _Property_3d4ab6ad1f1f138a96f0463f7be8b6ce_Out_0_Float, _NormalStrength_401cd5af500bd68dbc9bca19d548d0db_Out_2_Vector3);
|
|
UnityTexture2D _Property_779695727390348d8b8a7f7ae2245af0_Out_0_Texture2D = UnityBuildTexture2DStructNoScale(_CoverNormalMap);
|
|
Bindings_TriplanarNMn_059da9746584140498cd018db3c76047_float _TriplanarNMn_ba7e211dd8095589a2939b5b239ca8e0;
|
|
_TriplanarNMn_ba7e211dd8095589a2939b5b239ca8e0.WorldSpaceNormal = IN.WorldSpaceNormal;
|
|
_TriplanarNMn_ba7e211dd8095589a2939b5b239ca8e0.WorldSpaceTangent = IN.WorldSpaceTangent;
|
|
_TriplanarNMn_ba7e211dd8095589a2939b5b239ca8e0.WorldSpaceBiTangent = IN.WorldSpaceBiTangent;
|
|
_TriplanarNMn_ba7e211dd8095589a2939b5b239ca8e0.AbsoluteWorldSpacePosition = IN.AbsoluteWorldSpacePosition;
|
|
float4 _TriplanarNMn_ba7e211dd8095589a2939b5b239ca8e0_XYZ_1_Vector4;
|
|
float4 _TriplanarNMn_ba7e211dd8095589a2939b5b239ca8e0_XZ_2_Vector4;
|
|
float4 _TriplanarNMn_ba7e211dd8095589a2939b5b239ca8e0_YZ_3_Vector4;
|
|
float4 _TriplanarNMn_ba7e211dd8095589a2939b5b239ca8e0_XY_4_Vector4;
|
|
SG_TriplanarNMn_059da9746584140498cd018db3c76047_float(_Property_779695727390348d8b8a7f7ae2245af0_Out_0_Texture2D, (_Divide_1fe314f1ca9dd78fbf366bbeb40e4ccf_Out_2_Vector4).x, _Property_ee792eccbb538a878b19be5db264531e_Out_0_Float, UnityBuildSamplerStateStruct(SamplerState_Linear_Repeat_Aniso8), _TriplanarNMn_ba7e211dd8095589a2939b5b239ca8e0, _TriplanarNMn_ba7e211dd8095589a2939b5b239ca8e0_XYZ_1_Vector4, _TriplanarNMn_ba7e211dd8095589a2939b5b239ca8e0_XZ_2_Vector4, _TriplanarNMn_ba7e211dd8095589a2939b5b239ca8e0_YZ_3_Vector4, _TriplanarNMn_ba7e211dd8095589a2939b5b239ca8e0_XY_4_Vector4);
|
|
float _Property_5aba050988182f8aad3ec6b2c7e57899_Out_0_Float = _CoverNormalBlendHardness;
|
|
float3 _NormalStrength_dac4b0abfa8a1f82b7103b18f6e6e1b7_Out_2_Vector3;
|
|
Unity_NormalStrength_float((_TriplanarNMn_ba7e211dd8095589a2939b5b239ca8e0_XYZ_1_Vector4.xyz), _Property_5aba050988182f8aad3ec6b2c7e57899_Out_0_Float, _NormalStrength_dac4b0abfa8a1f82b7103b18f6e6e1b7_Out_2_Vector3);
|
|
float3 _NormalBlend_4058aded292b7389ade16c695a6cae6c_Out_2_Vector3;
|
|
Unity_NormalBlend_float(_NormalStrength_401cd5af500bd68dbc9bca19d548d0db_Out_2_Vector3, _NormalStrength_dac4b0abfa8a1f82b7103b18f6e6e1b7_Out_2_Vector3, _NormalBlend_4058aded292b7389ade16c695a6cae6c_Out_2_Vector3);
|
|
float3 _Multiply_0e22f9c6ff55a188b2533f1889a53038_Out_2_Vector3;
|
|
Unity_Multiply_float3_float3(_Property_9180f8dd535ba18499edac37aef4d231_Out_0_Vector3, IN.WorldSpaceNormal, _Multiply_0e22f9c6ff55a188b2533f1889a53038_Out_2_Vector3);
|
|
float _Split_89708601b575b58c852cd55e4fb248d1_R_1_Float = _Multiply_0e22f9c6ff55a188b2533f1889a53038_Out_2_Vector3[0];
|
|
float _Split_89708601b575b58c852cd55e4fb248d1_G_2_Float = _Multiply_0e22f9c6ff55a188b2533f1889a53038_Out_2_Vector3[1];
|
|
float _Split_89708601b575b58c852cd55e4fb248d1_B_3_Float = _Multiply_0e22f9c6ff55a188b2533f1889a53038_Out_2_Vector3[2];
|
|
float _Split_89708601b575b58c852cd55e4fb248d1_A_4_Float = 0;
|
|
float _Add_bfe29b97a9ce3b80aa4cd689be8c4a97_Out_2_Float;
|
|
Unity_Add_float(_Split_89708601b575b58c852cd55e4fb248d1_R_1_Float, _Split_89708601b575b58c852cd55e4fb248d1_G_2_Float, _Add_bfe29b97a9ce3b80aa4cd689be8c4a97_Out_2_Float);
|
|
float _Add_f3152b42a227088aa1439fc1fe8451cc_Out_2_Float;
|
|
Unity_Add_float(_Add_bfe29b97a9ce3b80aa4cd689be8c4a97_Out_2_Float, _Split_89708601b575b58c852cd55e4fb248d1_B_3_Float, _Add_f3152b42a227088aa1439fc1fe8451cc_Out_2_Float);
|
|
float _Property_deabceefa3e3438a8ad71fa67fc5b070_Out_0_Float = _Cover_Amount;
|
|
float _Property_2fba2d762d74b8828ff566c10bc48e86_Out_0_Float = _Cover_Amount_Grow_Speed;
|
|
float _Subtract_1f990262a41ce88f96a47df66dcb4971_Out_2_Float;
|
|
Unity_Subtract_float(float(4), _Property_2fba2d762d74b8828ff566c10bc48e86_Out_0_Float, _Subtract_1f990262a41ce88f96a47df66dcb4971_Out_2_Float);
|
|
float _Divide_a89e05be4802ac80886ad6bdeadc4949_Out_2_Float;
|
|
Unity_Divide_float(_Property_deabceefa3e3438a8ad71fa67fc5b070_Out_0_Float, _Subtract_1f990262a41ce88f96a47df66dcb4971_Out_2_Float, _Divide_a89e05be4802ac80886ad6bdeadc4949_Out_2_Float);
|
|
float _Absolute_2b58f48ab94a3087a726a2b03c51e2c6_Out_1_Float;
|
|
Unity_Absolute_float(_Divide_a89e05be4802ac80886ad6bdeadc4949_Out_2_Float, _Absolute_2b58f48ab94a3087a726a2b03c51e2c6_Out_1_Float);
|
|
float _Power_6695d49b8b82468ea686b66e6749260b_Out_2_Float;
|
|
Unity_Power_float(_Absolute_2b58f48ab94a3087a726a2b03c51e2c6_Out_1_Float, _Subtract_1f990262a41ce88f96a47df66dcb4971_Out_2_Float, _Power_6695d49b8b82468ea686b66e6749260b_Out_2_Float);
|
|
float _Clamp_94f0310fee13798bad4e26e2381a94d4_Out_3_Float;
|
|
Unity_Clamp_float(_Power_6695d49b8b82468ea686b66e6749260b_Out_2_Float, float(0), float(2), _Clamp_94f0310fee13798bad4e26e2381a94d4_Out_3_Float);
|
|
float _Multiply_999692515a117385ade114d924fa589a_Out_2_Float;
|
|
Unity_Multiply_float_float(_Add_f3152b42a227088aa1439fc1fe8451cc_Out_2_Float, _Clamp_94f0310fee13798bad4e26e2381a94d4_Out_3_Float, _Multiply_999692515a117385ade114d924fa589a_Out_2_Float);
|
|
float _Saturate_f811eeeeb3229d83917aa8be2c36831e_Out_1_Float;
|
|
Unity_Saturate_float(_Multiply_999692515a117385ade114d924fa589a_Out_2_Float, _Saturate_f811eeeeb3229d83917aa8be2c36831e_Out_1_Float);
|
|
float _Clamp_4c470807610adb8c8488f125c0af7bb5_Out_3_Float;
|
|
Unity_Clamp_float(_Add_f3152b42a227088aa1439fc1fe8451cc_Out_2_Float, float(0), float(0.9999), _Clamp_4c470807610adb8c8488f125c0af7bb5_Out_3_Float);
|
|
float _Property_765e3d021aec6d8f9f8b3174d5a06980_Out_0_Float = _Cover_Max_Angle;
|
|
float _Divide_9d9fc267a9ebcf84b378fdd4c66ff34d_Out_2_Float;
|
|
Unity_Divide_float(_Property_765e3d021aec6d8f9f8b3174d5a06980_Out_0_Float, float(45), _Divide_9d9fc267a9ebcf84b378fdd4c66ff34d_Out_2_Float);
|
|
float _OneMinus_f074fba0be46e688aa75f5377832251a_Out_1_Float;
|
|
Unity_OneMinus_float(_Divide_9d9fc267a9ebcf84b378fdd4c66ff34d_Out_2_Float, _OneMinus_f074fba0be46e688aa75f5377832251a_Out_1_Float);
|
|
float _Subtract_0b0cd6145e351c87a68366348828154d_Out_2_Float;
|
|
Unity_Subtract_float(_Clamp_4c470807610adb8c8488f125c0af7bb5_Out_3_Float, _OneMinus_f074fba0be46e688aa75f5377832251a_Out_1_Float, _Subtract_0b0cd6145e351c87a68366348828154d_Out_2_Float);
|
|
float _Clamp_30607c0c4e04e5879d4061a1f7688421_Out_3_Float;
|
|
Unity_Clamp_float(_Subtract_0b0cd6145e351c87a68366348828154d_Out_2_Float, float(0), float(2), _Clamp_30607c0c4e04e5879d4061a1f7688421_Out_3_Float);
|
|
float _Divide_cfe09f3bd2005485a3c2229367309962_Out_2_Float;
|
|
Unity_Divide_float(float(1), _Divide_9d9fc267a9ebcf84b378fdd4c66ff34d_Out_2_Float, _Divide_cfe09f3bd2005485a3c2229367309962_Out_2_Float);
|
|
float _Multiply_022be2eb9027988b9d5d4c1392749347_Out_2_Float;
|
|
Unity_Multiply_float_float(_Clamp_30607c0c4e04e5879d4061a1f7688421_Out_3_Float, _Divide_cfe09f3bd2005485a3c2229367309962_Out_2_Float, _Multiply_022be2eb9027988b9d5d4c1392749347_Out_2_Float);
|
|
float _Absolute_2fed84623df90f8ba200de68955721fd_Out_1_Float;
|
|
Unity_Absolute_float(_Multiply_022be2eb9027988b9d5d4c1392749347_Out_2_Float, _Absolute_2fed84623df90f8ba200de68955721fd_Out_1_Float);
|
|
float _Property_b79c921e30793a8e84330b3341539232_Out_0_Float = _CoverHardness;
|
|
float _Power_b9ddee06dfd0b880880990743bc10612_Out_2_Float;
|
|
Unity_Power_float(_Absolute_2fed84623df90f8ba200de68955721fd_Out_1_Float, _Property_b79c921e30793a8e84330b3341539232_Out_0_Float, _Power_b9ddee06dfd0b880880990743bc10612_Out_2_Float);
|
|
float _Property_c82936191f294c89b76f2d1809168f87_Out_0_Float = _Cover_Min_Height;
|
|
float _OneMinus_f0918ccb4f747b8e83e39d82dc3b5ca9_Out_1_Float;
|
|
Unity_OneMinus_float(_Property_c82936191f294c89b76f2d1809168f87_Out_0_Float, _OneMinus_f0918ccb4f747b8e83e39d82dc3b5ca9_Out_1_Float);
|
|
float _Split_0e80ce6f80cff18f87a043d1e3eecd08_R_1_Float = IN.AbsoluteWorldSpacePosition[0];
|
|
float _Split_0e80ce6f80cff18f87a043d1e3eecd08_G_2_Float = IN.AbsoluteWorldSpacePosition[1];
|
|
float _Split_0e80ce6f80cff18f87a043d1e3eecd08_B_3_Float = IN.AbsoluteWorldSpacePosition[2];
|
|
float _Split_0e80ce6f80cff18f87a043d1e3eecd08_A_4_Float = 0;
|
|
float _Add_60b3bb4cdad6e88b8c097c5b08daa7d0_Out_2_Float;
|
|
Unity_Add_float(_OneMinus_f0918ccb4f747b8e83e39d82dc3b5ca9_Out_1_Float, _Split_0e80ce6f80cff18f87a043d1e3eecd08_G_2_Float, _Add_60b3bb4cdad6e88b8c097c5b08daa7d0_Out_2_Float);
|
|
float _Add_1898d6f46901df809c68b5241b2e9c37_Out_2_Float;
|
|
Unity_Add_float(_Add_60b3bb4cdad6e88b8c097c5b08daa7d0_Out_2_Float, float(1), _Add_1898d6f46901df809c68b5241b2e9c37_Out_2_Float);
|
|
float _Clamp_25d6140fa3ff3a8f956f99005adace2e_Out_3_Float;
|
|
Unity_Clamp_float(_Add_1898d6f46901df809c68b5241b2e9c37_Out_2_Float, float(0), float(1), _Clamp_25d6140fa3ff3a8f956f99005adace2e_Out_3_Float);
|
|
float _Property_6094a52a4f01fd8da5ea847b69b6941c_Out_0_Float = _Cover_Min_Height_Blending;
|
|
float _Add_dc69668fc7f1a586a754713499f71d99_Out_2_Float;
|
|
Unity_Add_float(_Add_60b3bb4cdad6e88b8c097c5b08daa7d0_Out_2_Float, _Property_6094a52a4f01fd8da5ea847b69b6941c_Out_0_Float, _Add_dc69668fc7f1a586a754713499f71d99_Out_2_Float);
|
|
float _Divide_63e32406c8773d83bbf2e244faf8328f_Out_2_Float;
|
|
Unity_Divide_float(_Add_dc69668fc7f1a586a754713499f71d99_Out_2_Float, _Add_60b3bb4cdad6e88b8c097c5b08daa7d0_Out_2_Float, _Divide_63e32406c8773d83bbf2e244faf8328f_Out_2_Float);
|
|
float _OneMinus_ec22d21ddfa84288b6f750e9fdb107b9_Out_1_Float;
|
|
Unity_OneMinus_float(_Divide_63e32406c8773d83bbf2e244faf8328f_Out_2_Float, _OneMinus_ec22d21ddfa84288b6f750e9fdb107b9_Out_1_Float);
|
|
float _Add_a1206af8cbfbbe8081046db1247aba04_Out_2_Float;
|
|
Unity_Add_float(_OneMinus_ec22d21ddfa84288b6f750e9fdb107b9_Out_1_Float, float(-0.5), _Add_a1206af8cbfbbe8081046db1247aba04_Out_2_Float);
|
|
float _Clamp_640b5884b29f188987c157ad5e6e6959_Out_3_Float;
|
|
Unity_Clamp_float(_Add_a1206af8cbfbbe8081046db1247aba04_Out_2_Float, float(0), float(1), _Clamp_640b5884b29f188987c157ad5e6e6959_Out_3_Float);
|
|
float _Add_cfdb6daf617665838bb05910fa9505df_Out_2_Float;
|
|
Unity_Add_float(_Clamp_25d6140fa3ff3a8f956f99005adace2e_Out_3_Float, _Clamp_640b5884b29f188987c157ad5e6e6959_Out_3_Float, _Add_cfdb6daf617665838bb05910fa9505df_Out_2_Float);
|
|
float _Clamp_552ef7e5cf91408a982297885971db7e_Out_3_Float;
|
|
Unity_Clamp_float(_Add_cfdb6daf617665838bb05910fa9505df_Out_2_Float, float(0), float(1), _Clamp_552ef7e5cf91408a982297885971db7e_Out_3_Float);
|
|
float _Multiply_8f8db9c494f4fd869809fc45531df628_Out_2_Float;
|
|
Unity_Multiply_float_float(_Power_b9ddee06dfd0b880880990743bc10612_Out_2_Float, _Clamp_552ef7e5cf91408a982297885971db7e_Out_3_Float, _Multiply_8f8db9c494f4fd869809fc45531df628_Out_2_Float);
|
|
float _Multiply_60075aa07d29d285b3c1ee531e5b5cb3_Out_2_Float;
|
|
Unity_Multiply_float_float(_Saturate_f811eeeeb3229d83917aa8be2c36831e_Out_1_Float, _Multiply_8f8db9c494f4fd869809fc45531df628_Out_2_Float, _Multiply_60075aa07d29d285b3c1ee531e5b5cb3_Out_2_Float);
|
|
float3 _Lerp_453c8bc667315a8fa37a93affb877753_Out_3_Vector3;
|
|
Unity_Lerp_float3(_NormalBlend_4242e1b4a785378aa59dd49e9d993ffc_Out_2_Vector3, _NormalBlend_4058aded292b7389ade16c695a6cae6c_Out_2_Vector3, (_Multiply_60075aa07d29d285b3c1ee531e5b5cb3_Out_2_Float.xxx), _Lerp_453c8bc667315a8fa37a93affb877753_Out_3_Vector3);
|
|
float3 _Transform_a87113b0be9dfa8eaf6932ed645aa845_Out_1_Vector3;
|
|
{
|
|
float3x3 tangentTransform = float3x3(IN.WorldSpaceTangent, IN.WorldSpaceBiTangent, IN.WorldSpaceNormal);
|
|
_Transform_a87113b0be9dfa8eaf6932ed645aa845_Out_1_Vector3 = TransformTangentToWorldDir(_Lerp_453c8bc667315a8fa37a93affb877753_Out_3_Vector3.xyz, tangentTransform, false).xyz;
|
|
}
|
|
float3 _Multiply_f6e009bd5c0fd18c99ac72f233476fe5_Out_2_Vector3;
|
|
Unity_Multiply_float3_float3(_Property_9180f8dd535ba18499edac37aef4d231_Out_0_Vector3, _Transform_a87113b0be9dfa8eaf6932ed645aa845_Out_1_Vector3, _Multiply_f6e009bd5c0fd18c99ac72f233476fe5_Out_2_Vector3);
|
|
float _Split_96f0a5b75c0e0b889dbbccd04bc2aaaa_R_1_Float = _Multiply_f6e009bd5c0fd18c99ac72f233476fe5_Out_2_Vector3[0];
|
|
float _Split_96f0a5b75c0e0b889dbbccd04bc2aaaa_G_2_Float = _Multiply_f6e009bd5c0fd18c99ac72f233476fe5_Out_2_Vector3[1];
|
|
float _Split_96f0a5b75c0e0b889dbbccd04bc2aaaa_B_3_Float = _Multiply_f6e009bd5c0fd18c99ac72f233476fe5_Out_2_Vector3[2];
|
|
float _Split_96f0a5b75c0e0b889dbbccd04bc2aaaa_A_4_Float = 0;
|
|
float _Add_07028d5174d9f88594da40d46502bc13_Out_2_Float;
|
|
Unity_Add_float(_Split_96f0a5b75c0e0b889dbbccd04bc2aaaa_R_1_Float, _Split_96f0a5b75c0e0b889dbbccd04bc2aaaa_G_2_Float, _Add_07028d5174d9f88594da40d46502bc13_Out_2_Float);
|
|
float _Add_93af6c0f8ee9a3898ca51358a213b69f_Out_2_Float;
|
|
Unity_Add_float(_Add_07028d5174d9f88594da40d46502bc13_Out_2_Float, _Split_96f0a5b75c0e0b889dbbccd04bc2aaaa_B_3_Float, _Add_93af6c0f8ee9a3898ca51358a213b69f_Out_2_Float);
|
|
float _Multiply_77421b936cb9d68299ef6791b83fa867_Out_2_Float;
|
|
Unity_Multiply_float_float(_Add_93af6c0f8ee9a3898ca51358a213b69f_Out_2_Float, _Clamp_94f0310fee13798bad4e26e2381a94d4_Out_3_Float, _Multiply_77421b936cb9d68299ef6791b83fa867_Out_2_Float);
|
|
float _Multiply_ac6769fbe7188685a7537e5ac2c6bfa9_Out_2_Float;
|
|
Unity_Multiply_float_float(_Clamp_94f0310fee13798bad4e26e2381a94d4_Out_3_Float, _Property_b79c921e30793a8e84330b3341539232_Out_0_Float, _Multiply_ac6769fbe7188685a7537e5ac2c6bfa9_Out_2_Float);
|
|
float _Multiply_37a341e0d9783683aa8d5b7001acced1_Out_2_Float;
|
|
Unity_Multiply_float_float(_Multiply_ac6769fbe7188685a7537e5ac2c6bfa9_Out_2_Float, _Multiply_8f8db9c494f4fd869809fc45531df628_Out_2_Float, _Multiply_37a341e0d9783683aa8d5b7001acced1_Out_2_Float);
|
|
float _Multiply_02fa8aa66970b281b4a325dc68f407b9_Out_2_Float;
|
|
Unity_Multiply_float_float(_Multiply_77421b936cb9d68299ef6791b83fa867_Out_2_Float, _Multiply_37a341e0d9783683aa8d5b7001acced1_Out_2_Float, _Multiply_02fa8aa66970b281b4a325dc68f407b9_Out_2_Float);
|
|
UnityTexture2D _Property_fd2df7ee33755280948b4c47585d4323_Out_0_Texture2D = UnityBuildTexture2DStructNoScale(_CoverMaskMap);
|
|
Bindings_TriplanarNM_bc609ed95f52591469ab35dbfe0efcea_float _TriplanarNM_e307cfdc6531d2838aa3dfa51fc3913f;
|
|
_TriplanarNM_e307cfdc6531d2838aa3dfa51fc3913f.WorldSpaceNormal = IN.WorldSpaceNormal;
|
|
_TriplanarNM_e307cfdc6531d2838aa3dfa51fc3913f.AbsoluteWorldSpacePosition = IN.AbsoluteWorldSpacePosition;
|
|
float4 _TriplanarNM_e307cfdc6531d2838aa3dfa51fc3913f_XYZ_1_Vector4;
|
|
float4 _TriplanarNM_e307cfdc6531d2838aa3dfa51fc3913f_XZ_2_Vector4;
|
|
float4 _TriplanarNM_e307cfdc6531d2838aa3dfa51fc3913f_YZ_3_Vector4;
|
|
float4 _TriplanarNM_e307cfdc6531d2838aa3dfa51fc3913f_XY_4_Vector4;
|
|
SG_TriplanarNM_bc609ed95f52591469ab35dbfe0efcea_float(_Property_fd2df7ee33755280948b4c47585d4323_Out_0_Texture2D, (_Divide_1fe314f1ca9dd78fbf366bbeb40e4ccf_Out_2_Vector4).x, _Property_ee792eccbb538a878b19be5db264531e_Out_0_Float, UnityBuildSamplerStateStruct(SamplerState_Linear_Repeat_Aniso8), _TriplanarNM_e307cfdc6531d2838aa3dfa51fc3913f, _TriplanarNM_e307cfdc6531d2838aa3dfa51fc3913f_XYZ_1_Vector4, _TriplanarNM_e307cfdc6531d2838aa3dfa51fc3913f_XZ_2_Vector4, _TriplanarNM_e307cfdc6531d2838aa3dfa51fc3913f_YZ_3_Vector4, _TriplanarNM_e307cfdc6531d2838aa3dfa51fc3913f_XY_4_Vector4);
|
|
float _Split_fe834aed1172f284a73d2d6810bdb696_R_1_Float = _TriplanarNM_e307cfdc6531d2838aa3dfa51fc3913f_XYZ_1_Vector4[0];
|
|
float _Split_fe834aed1172f284a73d2d6810bdb696_G_2_Float = _TriplanarNM_e307cfdc6531d2838aa3dfa51fc3913f_XYZ_1_Vector4[1];
|
|
float _Split_fe834aed1172f284a73d2d6810bdb696_B_3_Float = _TriplanarNM_e307cfdc6531d2838aa3dfa51fc3913f_XYZ_1_Vector4[2];
|
|
float _Split_fe834aed1172f284a73d2d6810bdb696_A_4_Float = _TriplanarNM_e307cfdc6531d2838aa3dfa51fc3913f_XYZ_1_Vector4[3];
|
|
float _Property_b5f7a30c2ea202858ea263fd2a5a46c6_Out_0_Float = _CoverHeightMapMin;
|
|
float _Property_f86678f1d28c0483ba1ddccf49ee52f7_Out_0_Float = _CoverHeightMapMax;
|
|
float2 _Vector2_b5c01a0d88900d87a8a819b340151fb6_Out_0_Vector2 = float2(_Property_b5f7a30c2ea202858ea263fd2a5a46c6_Out_0_Float, _Property_f86678f1d28c0483ba1ddccf49ee52f7_Out_0_Float);
|
|
float _Property_82b4f7f3bf3b4382bd69876479a9e350_Out_0_Float = _CoverHeightMapOffset;
|
|
float2 _Add_6020f54fd1e6798e8e76bfdcad62759a_Out_2_Vector2;
|
|
Unity_Add_float2(_Vector2_b5c01a0d88900d87a8a819b340151fb6_Out_0_Vector2, (_Property_82b4f7f3bf3b4382bd69876479a9e350_Out_0_Float.xx), _Add_6020f54fd1e6798e8e76bfdcad62759a_Out_2_Vector2);
|
|
float _Remap_65ceff40294d1e8aae6051445b9fdbc8_Out_3_Float;
|
|
Unity_Remap_float(_Split_fe834aed1172f284a73d2d6810bdb696_B_3_Float, float2 (0, 1), _Add_6020f54fd1e6798e8e76bfdcad62759a_Out_2_Vector2, _Remap_65ceff40294d1e8aae6051445b9fdbc8_Out_3_Float);
|
|
float _Multiply_bb0edd30580dba8b89213d9c5b1ef857_Out_2_Float;
|
|
Unity_Multiply_float_float(_Multiply_02fa8aa66970b281b4a325dc68f407b9_Out_2_Float, _Remap_65ceff40294d1e8aae6051445b9fdbc8_Out_3_Float, _Multiply_bb0edd30580dba8b89213d9c5b1ef857_Out_2_Float);
|
|
float _Multiply_484dd7b77d58aa88bf99c82cfe77c774_Out_2_Float;
|
|
Unity_Multiply_float_float(_Split_2ada595651635e8d97bf4b82f717fcc6_G_2_Float, _Multiply_bb0edd30580dba8b89213d9c5b1ef857_Out_2_Float, _Multiply_484dd7b77d58aa88bf99c82cfe77c774_Out_2_Float);
|
|
float _Saturate_d39fa9bab8cc8a8fa35db28d4dbc74ab_Out_1_Float;
|
|
Unity_Saturate_float(_Multiply_484dd7b77d58aa88bf99c82cfe77c774_Out_2_Float, _Saturate_d39fa9bab8cc8a8fa35db28d4dbc74ab_Out_1_Float);
|
|
float _Multiply_6957741a4923cc8db84ac72df2e194a8_Out_2_Float;
|
|
Unity_Multiply_float_float(_Clamp_07a501c22c6e188199bed73412ac8926_Out_3_Float, _Saturate_d39fa9bab8cc8a8fa35db28d4dbc74ab_Out_1_Float, _Multiply_6957741a4923cc8db84ac72df2e194a8_Out_2_Float);
|
|
float _Branch_3ccf365d359214809d30b6430d863e3f_Out_3_Float;
|
|
Unity_Branch_float(_Property_cb0b6597aee47880b32e852aaa0e4a71_Out_0_Boolean, _Multiply_6957741a4923cc8db84ac72df2e194a8_Out_2_Float, _Clamp_07a501c22c6e188199bed73412ac8926_Out_3_Float, _Branch_3ccf365d359214809d30b6430d863e3f_Out_3_Float);
|
|
float3 _Lerp_ee1b6587de2afe82942e8476d303d598_Out_3_Vector3;
|
|
Unity_Lerp_float3(_BlendOverlayBaseColor_369c0b6a02e62b809dc5c6ac1efddde2_OutVector4_1_Vector3, _BlendOverlayBaseColor_ec1f397271cc818abdb95188914e6b4d_OutVector4_1_Vector3, (_Branch_3ccf365d359214809d30b6430d863e3f_Out_3_Float.xxx), _Lerp_ee1b6587de2afe82942e8476d303d598_Out_3_Vector3);
|
|
float4 _Property_c500db71e51fef8daff29f346c122e57_Out_0_Vector4 = _WetColor;
|
|
float3 _Multiply_89461014b078f787a0724725c54fb934_Out_2_Vector3;
|
|
Unity_Multiply_float3_float3((_Property_c500db71e51fef8daff29f346c122e57_Out_0_Vector4.xyz), _Lerp_ee1b6587de2afe82942e8476d303d598_Out_3_Vector3, _Multiply_89461014b078f787a0724725c54fb934_Out_2_Vector3);
|
|
float _OneMinus_e16dfb812ec64b8891c541171687142f_Out_1_Float;
|
|
Unity_OneMinus_float(_Split_2ada595651635e8d97bf4b82f717fcc6_R_1_Float, _OneMinus_e16dfb812ec64b8891c541171687142f_Out_1_Float);
|
|
float3 _Lerp_43bc7a9493df5a829abf080ee4ad3298_Out_3_Vector3;
|
|
Unity_Lerp_float3(_Lerp_ee1b6587de2afe82942e8476d303d598_Out_3_Vector3, _Multiply_89461014b078f787a0724725c54fb934_Out_2_Vector3, (_OneMinus_e16dfb812ec64b8891c541171687142f_Out_1_Float.xxx), _Lerp_43bc7a9493df5a829abf080ee4ad3298_Out_3_Vector3);
|
|
UnityTexture2D _Property_8e909eb873a4cd8e9af98a90a84fdde8_Out_0_Texture2D = UnityBuildTexture2DStructNoScale(_BaseMaskMap);
|
|
Bindings_TriplanarNM_bc609ed95f52591469ab35dbfe0efcea_float _TriplanarNM_52e6c67b7de4708f80a463a880607c97;
|
|
_TriplanarNM_52e6c67b7de4708f80a463a880607c97.WorldSpaceNormal = IN.WorldSpaceNormal;
|
|
_TriplanarNM_52e6c67b7de4708f80a463a880607c97.AbsoluteWorldSpacePosition = IN.AbsoluteWorldSpacePosition;
|
|
float4 _TriplanarNM_52e6c67b7de4708f80a463a880607c97_XYZ_1_Vector4;
|
|
float4 _TriplanarNM_52e6c67b7de4708f80a463a880607c97_XZ_2_Vector4;
|
|
float4 _TriplanarNM_52e6c67b7de4708f80a463a880607c97_YZ_3_Vector4;
|
|
float4 _TriplanarNM_52e6c67b7de4708f80a463a880607c97_XY_4_Vector4;
|
|
SG_TriplanarNM_bc609ed95f52591469ab35dbfe0efcea_float(_Property_8e909eb873a4cd8e9af98a90a84fdde8_Out_0_Texture2D, (_Divide_6a90cebe78e620828de587523daaa7e6_Out_2_Vector4).x, _Property_3539de8c698c2981bb3c088d4ec52201_Out_0_Float, UnityBuildSamplerStateStruct(SamplerState_Linear_Repeat_Aniso8), _TriplanarNM_52e6c67b7de4708f80a463a880607c97, _TriplanarNM_52e6c67b7de4708f80a463a880607c97_XYZ_1_Vector4, _TriplanarNM_52e6c67b7de4708f80a463a880607c97_XZ_2_Vector4, _TriplanarNM_52e6c67b7de4708f80a463a880607c97_YZ_3_Vector4, _TriplanarNM_52e6c67b7de4708f80a463a880607c97_XY_4_Vector4);
|
|
float _Split_79d9d761d63eaa8c97fb3cb7fae0c380_R_1_Float = _TriplanarNM_52e6c67b7de4708f80a463a880607c97_XYZ_1_Vector4[0];
|
|
float _Split_79d9d761d63eaa8c97fb3cb7fae0c380_G_2_Float = _TriplanarNM_52e6c67b7de4708f80a463a880607c97_XYZ_1_Vector4[1];
|
|
float _Split_79d9d761d63eaa8c97fb3cb7fae0c380_B_3_Float = _TriplanarNM_52e6c67b7de4708f80a463a880607c97_XYZ_1_Vector4[2];
|
|
float _Split_79d9d761d63eaa8c97fb3cb7fae0c380_A_4_Float = _TriplanarNM_52e6c67b7de4708f80a463a880607c97_XYZ_1_Vector4[3];
|
|
float _Property_b97916566d1fc587b95e8ec7fe8bd775_Out_0_Float = _BaseMetallic;
|
|
float _Multiply_d0c8d83444dbe38588583551936c7394_Out_2_Float;
|
|
Unity_Multiply_float_float(_Split_79d9d761d63eaa8c97fb3cb7fae0c380_R_1_Float, _Property_b97916566d1fc587b95e8ec7fe8bd775_Out_0_Float, _Multiply_d0c8d83444dbe38588583551936c7394_Out_2_Float);
|
|
float _Property_b187bbc548f3378caa8c964ca81707ca_Out_0_Float = _BaseAORemapMin;
|
|
float _Property_f06b327a4a8a7881a968eb399edf1d5c_Out_0_Float = _BaseAORemapMax;
|
|
float2 _Vector2_e267d722f88ada8da2d7edf8f7c0261d_Out_0_Vector2 = float2(_Property_b187bbc548f3378caa8c964ca81707ca_Out_0_Float, _Property_f06b327a4a8a7881a968eb399edf1d5c_Out_0_Float);
|
|
float _Remap_ad3c26564c54aa8cbb2f81aa114b3b78_Out_3_Float;
|
|
Unity_Remap_float(_Split_79d9d761d63eaa8c97fb3cb7fae0c380_G_2_Float, float2 (0, 1), _Vector2_e267d722f88ada8da2d7edf8f7c0261d_Out_0_Vector2, _Remap_ad3c26564c54aa8cbb2f81aa114b3b78_Out_3_Float);
|
|
float _Property_9a46e81c228dd0858cfdfc248fcb5efd_Out_0_Float = _BaseSmoothnessRemapMin;
|
|
float _Property_4bb3b70a3720ae8ea49e0f195b665d1f_Out_0_Float = _BaseSmoothnessRemapMax;
|
|
float2 _Vector2_6cef82af5d99208da4f2447a8ae60b4b_Out_0_Vector2 = float2(_Property_9a46e81c228dd0858cfdfc248fcb5efd_Out_0_Float, _Property_4bb3b70a3720ae8ea49e0f195b665d1f_Out_0_Float);
|
|
float _Remap_e30adbbf5d116285964ef079df15b895_Out_3_Float;
|
|
Unity_Remap_float(_Split_79d9d761d63eaa8c97fb3cb7fae0c380_A_4_Float, float2 (0, 1), _Vector2_6cef82af5d99208da4f2447a8ae60b4b_Out_0_Vector2, _Remap_e30adbbf5d116285964ef079df15b895_Out_3_Float);
|
|
float _Multiply_794172f65d2acd8981bc0e2ecc71376e_Out_2_Float;
|
|
Unity_Multiply_float_float(_SampleTexture2D_4bd08411faa60c828847f2247f06a809_B_6_Float, 2, _Multiply_794172f65d2acd8981bc0e2ecc71376e_Out_2_Float);
|
|
float _Add_dedefe53d91ea08c81d7a6d9071b0263_Out_2_Float;
|
|
Unity_Add_float(_Multiply_794172f65d2acd8981bc0e2ecc71376e_Out_2_Float, float(-1), _Add_dedefe53d91ea08c81d7a6d9071b0263_Out_2_Float);
|
|
float _Property_039bed9aac95ec8fa510fea3c4904280_Out_0_Float = _DetailSmoothnessScale;
|
|
float _Multiply_eb0a55c9be8cee86b9847c24f0e5be60_Out_2_Float;
|
|
Unity_Multiply_float_float(_Add_dedefe53d91ea08c81d7a6d9071b0263_Out_2_Float, _Property_039bed9aac95ec8fa510fea3c4904280_Out_0_Float, _Multiply_eb0a55c9be8cee86b9847c24f0e5be60_Out_2_Float);
|
|
float _Saturate_ca849f42c1cc238cb8fb1eb04fbfb9dd_Out_1_Float;
|
|
Unity_Saturate_float(_Multiply_eb0a55c9be8cee86b9847c24f0e5be60_Out_2_Float, _Saturate_ca849f42c1cc238cb8fb1eb04fbfb9dd_Out_1_Float);
|
|
float _Absolute_bc7994d4f833e382b37b5718ee583259_Out_1_Float;
|
|
Unity_Absolute_float(_Saturate_ca849f42c1cc238cb8fb1eb04fbfb9dd_Out_1_Float, _Absolute_bc7994d4f833e382b37b5718ee583259_Out_1_Float);
|
|
Bindings_BlendOverlayDetailSmoothness_06e12138dc89c0040b45a57abe520a1a_float _BlendOverlayDetailSmoothness_5a03404db5a34885a089f1aee363667f;
|
|
float _BlendOverlayDetailSmoothness_5a03404db5a34885a089f1aee363667f_SmoothnessOverlay_1_Float;
|
|
SG_BlendOverlayDetailSmoothness_06e12138dc89c0040b45a57abe520a1a_float(_Remap_e30adbbf5d116285964ef079df15b895_Out_3_Float, _Add_dedefe53d91ea08c81d7a6d9071b0263_Out_2_Float, _Absolute_bc7994d4f833e382b37b5718ee583259_Out_1_Float, _BlendOverlayDetailSmoothness_5a03404db5a34885a089f1aee363667f, _BlendOverlayDetailSmoothness_5a03404db5a34885a089f1aee363667f_SmoothnessOverlay_1_Float);
|
|
float _Saturate_3d6c6d852202408cb9b11aac8a566c89_Out_1_Float;
|
|
Unity_Saturate_float(_BlendOverlayDetailSmoothness_5a03404db5a34885a089f1aee363667f_SmoothnessOverlay_1_Float, _Saturate_3d6c6d852202408cb9b11aac8a566c89_Out_1_Float);
|
|
float3 _Vector3_8ed406a0096de4818282676bf24b1a85_Out_0_Vector3 = float3(_Multiply_d0c8d83444dbe38588583551936c7394_Out_2_Float, _Remap_ad3c26564c54aa8cbb2f81aa114b3b78_Out_3_Float, _Saturate_3d6c6d852202408cb9b11aac8a566c89_Out_1_Float);
|
|
float _Split_2ec5937af5023a8295e3858d32b193d5_R_1_Float = _Vector3_8ed406a0096de4818282676bf24b1a85_Out_0_Vector3[0];
|
|
float _Split_2ec5937af5023a8295e3858d32b193d5_G_2_Float = _Vector3_8ed406a0096de4818282676bf24b1a85_Out_0_Vector3[1];
|
|
float _Split_2ec5937af5023a8295e3858d32b193d5_B_3_Float = _Vector3_8ed406a0096de4818282676bf24b1a85_Out_0_Vector3[2];
|
|
float _Split_2ec5937af5023a8295e3858d32b193d5_A_4_Float = 0;
|
|
UnityTexture2D _Property_0f50abb140882d848d9fc7be8e3468dc_Out_0_Texture2D = UnityBuildTexture2DStructNoScale(_ShapeAO);
|
|
float4 _SampleTexture2D_33392602b94694898ec8227a89f13cc9_RGBA_0_Vector4 = SAMPLE_TEXTURE2D(_Property_0f50abb140882d848d9fc7be8e3468dc_Out_0_Texture2D.tex, _Property_0f50abb140882d848d9fc7be8e3468dc_Out_0_Texture2D.samplerstate, _Property_0f50abb140882d848d9fc7be8e3468dc_Out_0_Texture2D.GetTransformedUV(IN.uv0.xy) );
|
|
float _SampleTexture2D_33392602b94694898ec8227a89f13cc9_R_4_Float = _SampleTexture2D_33392602b94694898ec8227a89f13cc9_RGBA_0_Vector4.r;
|
|
float _SampleTexture2D_33392602b94694898ec8227a89f13cc9_G_5_Float = _SampleTexture2D_33392602b94694898ec8227a89f13cc9_RGBA_0_Vector4.g;
|
|
float _SampleTexture2D_33392602b94694898ec8227a89f13cc9_B_6_Float = _SampleTexture2D_33392602b94694898ec8227a89f13cc9_RGBA_0_Vector4.b;
|
|
float _SampleTexture2D_33392602b94694898ec8227a89f13cc9_A_7_Float = _SampleTexture2D_33392602b94694898ec8227a89f13cc9_RGBA_0_Vector4.a;
|
|
float _Property_a51c4b6d05e6718d919aadcf26153350_Out_0_Float = _ShapeAORemapMin;
|
|
float _Property_973fbc42b7a69088b9fc2c502945f369_Out_0_Float = _ShapeAORemapMax;
|
|
float2 _Vector2_a73753c5a8c4fa828d2eb25d4fb8b399_Out_0_Vector2 = float2(_Property_a51c4b6d05e6718d919aadcf26153350_Out_0_Float, _Property_973fbc42b7a69088b9fc2c502945f369_Out_0_Float);
|
|
float _Remap_270e7e207f303487bc04348b1b54db69_Out_3_Float;
|
|
Unity_Remap_float(_SampleTexture2D_33392602b94694898ec8227a89f13cc9_G_5_Float, float2 (0, 1), _Vector2_a73753c5a8c4fa828d2eb25d4fb8b399_Out_0_Vector2, _Remap_270e7e207f303487bc04348b1b54db69_Out_3_Float);
|
|
float _Minimum_307d1a8c4f5c6a87a1bbc658a5811679_Out_2_Float;
|
|
Unity_Minimum_float(_Split_2ec5937af5023a8295e3858d32b193d5_G_2_Float, _Remap_270e7e207f303487bc04348b1b54db69_Out_3_Float, _Minimum_307d1a8c4f5c6a87a1bbc658a5811679_Out_2_Float);
|
|
float3 _Vector3_fac10bf467f5ff82b4f071ba165bf458_Out_0_Vector3 = float3(_Split_2ec5937af5023a8295e3858d32b193d5_R_1_Float, _Minimum_307d1a8c4f5c6a87a1bbc658a5811679_Out_2_Float, _Split_2ec5937af5023a8295e3858d32b193d5_B_3_Float);
|
|
float _Property_fa6937565be49684915e6bb999529949_Out_0_Float = _CoverMetallic;
|
|
float _Multiply_d0ecb787fa289f8f9d3c2988d60f18d3_Out_2_Float;
|
|
Unity_Multiply_float_float(_Split_fe834aed1172f284a73d2d6810bdb696_R_1_Float, _Property_fa6937565be49684915e6bb999529949_Out_0_Float, _Multiply_d0ecb787fa289f8f9d3c2988d60f18d3_Out_2_Float);
|
|
float _Property_8f5ca0ba38d2a4858c1b4e44f6a375b4_Out_0_Float = _CoverAORemapMin;
|
|
float _Property_a15ef0fe46e1d88f9e20df6605bd1499_Out_0_Float = _CoverAORemapMax;
|
|
float2 _Vector2_969d809c2de99f89959cc4526a665db9_Out_0_Vector2 = float2(_Property_8f5ca0ba38d2a4858c1b4e44f6a375b4_Out_0_Float, _Property_a15ef0fe46e1d88f9e20df6605bd1499_Out_0_Float);
|
|
float _Remap_1b6065f44329038594e2d0cf001fa138_Out_3_Float;
|
|
Unity_Remap_float(_Split_fe834aed1172f284a73d2d6810bdb696_G_2_Float, float2 (0, 1), _Vector2_969d809c2de99f89959cc4526a665db9_Out_0_Vector2, _Remap_1b6065f44329038594e2d0cf001fa138_Out_3_Float);
|
|
float _Property_0fde68fd9824db8e9f5b4b0daff90270_Out_0_Float = _CoverSmoothnessRemapMin;
|
|
float _Property_abad1da00caf99869e0c9ca2926c76bd_Out_0_Float = _CoverSmoothnessRemapMax;
|
|
float2 _Vector2_1aa81c2ad7cc268caa834889569ce556_Out_0_Vector2 = float2(_Property_0fde68fd9824db8e9f5b4b0daff90270_Out_0_Float, _Property_abad1da00caf99869e0c9ca2926c76bd_Out_0_Float);
|
|
float _Remap_4948cd1fb38399888e9567ee2abb8acd_Out_3_Float;
|
|
Unity_Remap_float(_Split_fe834aed1172f284a73d2d6810bdb696_A_4_Float, float2 (0, 1), _Vector2_1aa81c2ad7cc268caa834889569ce556_Out_0_Vector2, _Remap_4948cd1fb38399888e9567ee2abb8acd_Out_3_Float);
|
|
float _Multiply_d3e207dba42f1984aacff3c1bf4eef0b_Out_2_Float;
|
|
Unity_Multiply_float_float(_SampleTexture2D_4bd08411faa60c828847f2247f06a809_B_6_Float, 2, _Multiply_d3e207dba42f1984aacff3c1bf4eef0b_Out_2_Float);
|
|
float _Add_0299d632f81fff8f969a0eed5f77397c_Out_2_Float;
|
|
Unity_Add_float(_Multiply_d3e207dba42f1984aacff3c1bf4eef0b_Out_2_Float, float(-1), _Add_0299d632f81fff8f969a0eed5f77397c_Out_2_Float);
|
|
float _Property_a2c7556e96b60b8e90cb5145ca6f9dde_Out_0_Float = _DetailCoverSmoothnessScale;
|
|
float _Multiply_d340fbee0985958dbb66555a73bd733c_Out_2_Float;
|
|
Unity_Multiply_float_float(_Add_0299d632f81fff8f969a0eed5f77397c_Out_2_Float, _Property_a2c7556e96b60b8e90cb5145ca6f9dde_Out_0_Float, _Multiply_d340fbee0985958dbb66555a73bd733c_Out_2_Float);
|
|
float _Saturate_2c0cc920be0ca88e937ec108b38f5fde_Out_1_Float;
|
|
Unity_Saturate_float(_Multiply_d340fbee0985958dbb66555a73bd733c_Out_2_Float, _Saturate_2c0cc920be0ca88e937ec108b38f5fde_Out_1_Float);
|
|
float _Absolute_3f81290e941e378283f7151c4a0731e2_Out_1_Float;
|
|
Unity_Absolute_float(_Saturate_2c0cc920be0ca88e937ec108b38f5fde_Out_1_Float, _Absolute_3f81290e941e378283f7151c4a0731e2_Out_1_Float);
|
|
Bindings_BlendOverlayDetailSmoothness_06e12138dc89c0040b45a57abe520a1a_float _BlendOverlayDetailSmoothness_e7a4fbe98378f084bd09f6e5d90e1cb8;
|
|
float _BlendOverlayDetailSmoothness_e7a4fbe98378f084bd09f6e5d90e1cb8_SmoothnessOverlay_1_Float;
|
|
SG_BlendOverlayDetailSmoothness_06e12138dc89c0040b45a57abe520a1a_float(_Remap_4948cd1fb38399888e9567ee2abb8acd_Out_3_Float, _Add_0299d632f81fff8f969a0eed5f77397c_Out_2_Float, _Absolute_3f81290e941e378283f7151c4a0731e2_Out_1_Float, _BlendOverlayDetailSmoothness_e7a4fbe98378f084bd09f6e5d90e1cb8, _BlendOverlayDetailSmoothness_e7a4fbe98378f084bd09f6e5d90e1cb8_SmoothnessOverlay_1_Float);
|
|
float _Saturate_9091ea9d9924c682ad6b94d3322ee822_Out_1_Float;
|
|
Unity_Saturate_float(_BlendOverlayDetailSmoothness_e7a4fbe98378f084bd09f6e5d90e1cb8_SmoothnessOverlay_1_Float, _Saturate_9091ea9d9924c682ad6b94d3322ee822_Out_1_Float);
|
|
float3 _Vector3_93bafe600474e7819ebc13e534b986bf_Out_0_Vector3 = float3(_Multiply_d0ecb787fa289f8f9d3c2988d60f18d3_Out_2_Float, _Remap_1b6065f44329038594e2d0cf001fa138_Out_3_Float, _Saturate_9091ea9d9924c682ad6b94d3322ee822_Out_1_Float);
|
|
float _Split_6ec9cc5e56f3f68ba37ff91557979c18_R_1_Float = _Vector3_93bafe600474e7819ebc13e534b986bf_Out_0_Vector3[0];
|
|
float _Split_6ec9cc5e56f3f68ba37ff91557979c18_G_2_Float = _Vector3_93bafe600474e7819ebc13e534b986bf_Out_0_Vector3[1];
|
|
float _Split_6ec9cc5e56f3f68ba37ff91557979c18_B_3_Float = _Vector3_93bafe600474e7819ebc13e534b986bf_Out_0_Vector3[2];
|
|
float _Split_6ec9cc5e56f3f68ba37ff91557979c18_A_4_Float = 0;
|
|
float _Property_ca9c61425ece6b8c909c06b1e2738f1a_Out_0_Float = _CoverShapeAORemapMin;
|
|
float _Property_b9be92f1612c908d80643f0e96015b33_Out_0_Float = _CoverShapeAORemapMax;
|
|
float2 _Vector2_9b862c4e147d1082afad3606339d2130_Out_0_Vector2 = float2(_Property_ca9c61425ece6b8c909c06b1e2738f1a_Out_0_Float, _Property_b9be92f1612c908d80643f0e96015b33_Out_0_Float);
|
|
float _Remap_c1f0022add809b83bad7b493177bddb7_Out_3_Float;
|
|
Unity_Remap_float(_SampleTexture2D_33392602b94694898ec8227a89f13cc9_G_5_Float, float2 (0, 1), _Vector2_9b862c4e147d1082afad3606339d2130_Out_0_Vector2, _Remap_c1f0022add809b83bad7b493177bddb7_Out_3_Float);
|
|
float _Minimum_595c2f31bb0ec588977a2b9ea46bf6b0_Out_2_Float;
|
|
Unity_Minimum_float(_Split_6ec9cc5e56f3f68ba37ff91557979c18_G_2_Float, _Remap_c1f0022add809b83bad7b493177bddb7_Out_3_Float, _Minimum_595c2f31bb0ec588977a2b9ea46bf6b0_Out_2_Float);
|
|
float3 _Vector3_6cb5b2c4675bb28cb41ea88b6eaa2aff_Out_0_Vector3 = float3(_Split_6ec9cc5e56f3f68ba37ff91557979c18_R_1_Float, _Minimum_595c2f31bb0ec588977a2b9ea46bf6b0_Out_2_Float, _Split_6ec9cc5e56f3f68ba37ff91557979c18_B_3_Float);
|
|
float3 _Lerp_fa40b54f3d5a1a8a95f6306e837b9338_Out_3_Vector3;
|
|
Unity_Lerp_float3(_Vector3_fac10bf467f5ff82b4f071ba165bf458_Out_0_Vector3, _Vector3_6cb5b2c4675bb28cb41ea88b6eaa2aff_Out_0_Vector3, (_Branch_3ccf365d359214809d30b6430d863e3f_Out_3_Float.xxx), _Lerp_fa40b54f3d5a1a8a95f6306e837b9338_Out_3_Vector3);
|
|
float _Split_c4a5352a58a4f88fb40410f956825dc6_R_1_Float = _Lerp_fa40b54f3d5a1a8a95f6306e837b9338_Out_3_Vector3[0];
|
|
float _Split_c4a5352a58a4f88fb40410f956825dc6_G_2_Float = _Lerp_fa40b54f3d5a1a8a95f6306e837b9338_Out_3_Vector3[1];
|
|
float _Split_c4a5352a58a4f88fb40410f956825dc6_B_3_Float = _Lerp_fa40b54f3d5a1a8a95f6306e837b9338_Out_3_Vector3[2];
|
|
float _Split_c4a5352a58a4f88fb40410f956825dc6_A_4_Float = 0;
|
|
float _Property_7861e880056eb88ab923a2ff5b12179d_Out_0_Float = _WetSmoothness;
|
|
float _Lerp_ee63160826cff4869f0e63568dd6f8b7_Out_3_Float;
|
|
Unity_Lerp_float(_Split_c4a5352a58a4f88fb40410f956825dc6_B_3_Float, _Property_7861e880056eb88ab923a2ff5b12179d_Out_0_Float, _OneMinus_e16dfb812ec64b8891c541171687142f_Out_1_Float, _Lerp_ee63160826cff4869f0e63568dd6f8b7_Out_3_Float);
|
|
float _Property_1c389d922d4fba86bc62c7d42ac8643d_Out_0_Float = _CoverNormalScale;
|
|
float3 _NormalStrength_db3de71f618fee878c84a13374c7adc4_Out_2_Vector3;
|
|
Unity_NormalStrength_float((_TriplanarNMn_ba7e211dd8095589a2939b5b239ca8e0_XYZ_1_Vector4.xyz), _Property_1c389d922d4fba86bc62c7d42ac8643d_Out_0_Float, _NormalStrength_db3de71f618fee878c84a13374c7adc4_Out_2_Vector3);
|
|
float3 _NormalBlend_b2e537e7a99f9280ba682b47daf3c5e3_Out_2_Vector3;
|
|
Unity_NormalBlend_float(_NormalStrength_db3de71f618fee878c84a13374c7adc4_Out_2_Vector3, _NormalStrength_401cd5af500bd68dbc9bca19d548d0db_Out_2_Vector3, _NormalBlend_b2e537e7a99f9280ba682b47daf3c5e3_Out_2_Vector3);
|
|
float2 _Vector2_b87489f8633d268598edb76163057164_Out_0_Vector2 = float2(_SampleTexture2D_4bd08411faa60c828847f2247f06a809_A_7_Float, _SampleTexture2D_4bd08411faa60c828847f2247f06a809_G_5_Float);
|
|
float2 _Multiply_95e603bb6d4bd7809de0ae42c8f45058_Out_2_Vector2;
|
|
Unity_Multiply_float2_float2(_Vector2_b87489f8633d268598edb76163057164_Out_0_Vector2, float2(2, 2), _Multiply_95e603bb6d4bd7809de0ae42c8f45058_Out_2_Vector2);
|
|
float2 _Add_c116ac3906ccf68d82dd5b73d0f5659a_Out_2_Vector2;
|
|
Unity_Add_float2(_Multiply_95e603bb6d4bd7809de0ae42c8f45058_Out_2_Vector2, float2(-1, -1), _Add_c116ac3906ccf68d82dd5b73d0f5659a_Out_2_Vector2);
|
|
float _Property_988acb131fd330878b4ac0672366ad90_Out_0_Float = _DetailCoverNormalScale;
|
|
float2 _Multiply_6de1a79215e1928f9f3fc3293df74f88_Out_2_Vector2;
|
|
Unity_Multiply_float2_float2(_Add_c116ac3906ccf68d82dd5b73d0f5659a_Out_2_Vector2, (_Property_988acb131fd330878b4ac0672366ad90_Out_0_Float.xx), _Multiply_6de1a79215e1928f9f3fc3293df74f88_Out_2_Vector2);
|
|
float _Split_9ce53bb7a65f16809b6a95d82286186e_R_1_Float = _Multiply_6de1a79215e1928f9f3fc3293df74f88_Out_2_Vector2[0];
|
|
float _Split_9ce53bb7a65f16809b6a95d82286186e_G_2_Float = _Multiply_6de1a79215e1928f9f3fc3293df74f88_Out_2_Vector2[1];
|
|
float _Split_9ce53bb7a65f16809b6a95d82286186e_B_3_Float = 0;
|
|
float _Split_9ce53bb7a65f16809b6a95d82286186e_A_4_Float = 0;
|
|
float _DotProduct_8912687db556b6819d2a38ba8511a7ae_Out_2_Float;
|
|
Unity_DotProduct_float2(_Multiply_6de1a79215e1928f9f3fc3293df74f88_Out_2_Vector2, _Multiply_6de1a79215e1928f9f3fc3293df74f88_Out_2_Vector2, _DotProduct_8912687db556b6819d2a38ba8511a7ae_Out_2_Float);
|
|
float _Saturate_013ea9a02a1ff18992540b270836cc73_Out_1_Float;
|
|
Unity_Saturate_float(_DotProduct_8912687db556b6819d2a38ba8511a7ae_Out_2_Float, _Saturate_013ea9a02a1ff18992540b270836cc73_Out_1_Float);
|
|
float _OneMinus_eefd2695dc7d77838984fc25a1c00b0b_Out_1_Float;
|
|
Unity_OneMinus_float(_Saturate_013ea9a02a1ff18992540b270836cc73_Out_1_Float, _OneMinus_eefd2695dc7d77838984fc25a1c00b0b_Out_1_Float);
|
|
float _SquareRoot_1d25cc71b4ce9286af1666a96ae6ac5a_Out_1_Float;
|
|
Unity_SquareRoot_float(_OneMinus_eefd2695dc7d77838984fc25a1c00b0b_Out_1_Float, _SquareRoot_1d25cc71b4ce9286af1666a96ae6ac5a_Out_1_Float);
|
|
float3 _Vector3_c3d9c7e92a1c5b8ea5650ab3bb421c27_Out_0_Vector3 = float3(_Split_9ce53bb7a65f16809b6a95d82286186e_R_1_Float, _Split_9ce53bb7a65f16809b6a95d82286186e_G_2_Float, _SquareRoot_1d25cc71b4ce9286af1666a96ae6ac5a_Out_1_Float);
|
|
float3 _NormalBlend_8e1d1c87f8c12b87b64883533bfa43be_Out_2_Vector3;
|
|
Unity_NormalBlend_float(_NormalBlend_b2e537e7a99f9280ba682b47daf3c5e3_Out_2_Vector3, _Vector3_c3d9c7e92a1c5b8ea5650ab3bb421c27_Out_0_Vector3, _NormalBlend_8e1d1c87f8c12b87b64883533bfa43be_Out_2_Vector3);
|
|
float3 _Lerp_48cd568fef7d358b8d65b989db745e6c_Out_3_Vector3;
|
|
Unity_Lerp_float3(_NormalBlend_4242e1b4a785378aa59dd49e9d993ffc_Out_2_Vector3, _NormalBlend_8e1d1c87f8c12b87b64883533bfa43be_Out_2_Vector3, (_Branch_3ccf365d359214809d30b6430d863e3f_Out_3_Float.xxx), _Lerp_48cd568fef7d358b8d65b989db745e6c_Out_3_Vector3);
|
|
surface.BaseColor = _Lerp_43bc7a9493df5a829abf080ee4ad3298_Out_3_Vector3;
|
|
surface.Emission = float3(0, 0, 0);
|
|
surface.Alpha = float(1);
|
|
surface.BentNormal = IN.TangentSpaceNormal;
|
|
surface.Smoothness = _Lerp_ee63160826cff4869f0e63568dd6f8b7_Out_3_Float;
|
|
surface.Occlusion = _Split_c4a5352a58a4f88fb40410f956825dc6_G_2_Float;
|
|
surface.NormalTS = _Lerp_48cd568fef7d358b8d65b989db745e6c_Out_3_Vector3;
|
|
surface.Metallic = _Split_c4a5352a58a4f88fb40410f956825dc6_R_1_Float;
|
|
return surface;
|
|
}
|
|
|
|
// --------------------------------------------------
|
|
// Build Graph Inputs
|
|
#ifdef HAVE_VFX_MODIFICATION
|
|
#define VFX_SRP_ATTRIBUTES AttributesMesh
|
|
#define VaryingsMeshType VaryingsMeshToPS
|
|
#define VFX_SRP_VARYINGS VaryingsMeshType
|
|
#define VFX_SRP_SURFACE_INPUTS FragInputs
|
|
#endif
|
|
|
|
VertexDescriptionInputs AttributesMeshToVertexDescriptionInputs(AttributesMesh input)
|
|
{
|
|
VertexDescriptionInputs output;
|
|
ZERO_INITIALIZE(VertexDescriptionInputs, output);
|
|
|
|
#if UNITY_ANY_INSTANCING_ENABLED
|
|
#else
|
|
#endif
|
|
|
|
return output;
|
|
}
|
|
|
|
VertexDescription GetVertexDescription(AttributesMesh input, float3 timeParameters
|
|
#ifdef HAVE_VFX_MODIFICATION
|
|
, AttributesElement element
|
|
#endif
|
|
)
|
|
{
|
|
// build graph inputs
|
|
VertexDescriptionInputs vertexDescriptionInputs = AttributesMeshToVertexDescriptionInputs(input);
|
|
// Override time parameters with used one (This is required to correctly handle motion vectors for vertex animation based on time)
|
|
|
|
// evaluate vertex graph
|
|
#ifdef HAVE_VFX_MODIFICATION
|
|
GraphProperties properties;
|
|
ZERO_INITIALIZE(GraphProperties, properties);
|
|
|
|
// Fetch the vertex graph properties for the particle instance.
|
|
GetElementVertexProperties(element, properties);
|
|
|
|
VertexDescription vertexDescription = VertexDescriptionFunction(vertexDescriptionInputs, properties);
|
|
#else
|
|
VertexDescription vertexDescription = VertexDescriptionFunction(vertexDescriptionInputs);
|
|
#endif
|
|
return vertexDescription;
|
|
|
|
}
|
|
|
|
AttributesMesh ApplyMeshModification(AttributesMesh input, float3 timeParameters
|
|
#ifdef USE_CUSTOMINTERP_SUBSTRUCT
|
|
#ifdef TESSELLATION_ON
|
|
, inout VaryingsMeshToDS varyings
|
|
#else
|
|
, inout VaryingsMeshToPS varyings
|
|
#endif
|
|
#endif
|
|
#ifdef HAVE_VFX_MODIFICATION
|
|
, AttributesElement element
|
|
#endif
|
|
)
|
|
{
|
|
VertexDescription vertexDescription = GetVertexDescription(input, timeParameters
|
|
#ifdef HAVE_VFX_MODIFICATION
|
|
, element
|
|
#endif
|
|
);
|
|
|
|
// copy graph output to the results
|
|
|
|
/* WARNING: $splice Could not find named fragment 'CustomInterpolatorVertMeshCustomInterpolation' */
|
|
|
|
return input;
|
|
}
|
|
|
|
#if defined(_ADD_CUSTOM_VELOCITY) // For shader graph custom velocity
|
|
// Return precomputed Velocity in object space
|
|
float3 GetCustomVelocity(AttributesMesh input
|
|
#ifdef HAVE_VFX_MODIFICATION
|
|
, AttributesElement element
|
|
#endif
|
|
)
|
|
{
|
|
VertexDescription vertexDescription = GetVertexDescription(input, _TimeParameters.xyz
|
|
#ifdef HAVE_VFX_MODIFICATION
|
|
, element
|
|
#endif
|
|
);
|
|
return vertexDescription.CustomVelocity;
|
|
}
|
|
#endif
|
|
|
|
FragInputs BuildFragInputs(VaryingsMeshToPS input)
|
|
{
|
|
FragInputs output;
|
|
ZERO_INITIALIZE(FragInputs, output);
|
|
|
|
// Init to some default value to make the computer quiet (else it output 'divide by zero' warning even if value is not used).
|
|
// TODO: this is a really poor workaround, but the variable is used in a bunch of places
|
|
// to compute normals which are then passed on elsewhere to compute other values...
|
|
output.tangentToWorld = k_identity3x3;
|
|
output.positionSS = input.positionCS; // input.positionCS is SV_Position
|
|
|
|
output.positionRWS = input.positionRWS;
|
|
output.positionPredisplacementRWS = input.positionPredisplacementRWS;
|
|
output.tangentToWorld = BuildTangentToWorld(input.tangentWS, input.normalWS);
|
|
output.texCoord0 = input.texCoord0;
|
|
output.texCoord1 = input.texCoord1;
|
|
output.texCoord2 = input.texCoord2;
|
|
output.texCoord3 = input.texCoord3;
|
|
output.color = input.color;
|
|
|
|
#if UNITY_ANY_INSTANCING_ENABLED
|
|
#else
|
|
#endif
|
|
|
|
#ifdef HAVE_VFX_MODIFICATION
|
|
// FragInputs from VFX come from two places: Interpolator or CBuffer.
|
|
#if VFX_USE_GRAPH_VALUES
|
|
uint instanceActiveIndex = asuint(UNITY_ACCESS_INSTANCED_PROP(PerInstance, _InstanceActiveIndex));
|
|
/* WARNING: $splice Could not find named fragment 'VFXLoadGraphValues' */
|
|
#endif
|
|
|
|
/* WARNING: $splice Could not find named fragment 'VFXSetFragInputs' */
|
|
|
|
#endif
|
|
|
|
// splice point to copy custom interpolator fields from varyings to frag inputs
|
|
/* WARNING: $splice Could not find named fragment 'CustomInterpolatorVaryingsToFragInputs' */
|
|
|
|
return output;
|
|
}
|
|
|
|
// existing HDRP code uses the combined function to go directly from packed to frag inputs
|
|
FragInputs UnpackVaryingsMeshToFragInputs(PackedVaryingsMeshToPS input)
|
|
{
|
|
UNITY_SETUP_INSTANCE_ID(input);
|
|
#if defined(HAVE_VFX_MODIFICATION) && defined(UNITY_INSTANCING_ENABLED)
|
|
unity_InstanceID = input.instanceID;
|
|
#endif
|
|
VaryingsMeshToPS unpacked = UnpackVaryingsMeshToPS(input);
|
|
return BuildFragInputs(unpacked);
|
|
}
|
|
SurfaceDescriptionInputs FragInputsToSurfaceDescriptionInputs(FragInputs input, float3 viewWS)
|
|
{
|
|
SurfaceDescriptionInputs output;
|
|
ZERO_INITIALIZE(SurfaceDescriptionInputs, output);
|
|
|
|
output.WorldSpaceNormal = normalize(input.tangentToWorld[2].xyz);
|
|
#if defined(SHADER_STAGE_RAY_TRACING)
|
|
#else
|
|
#endif
|
|
output.TangentSpaceNormal = float3(0.0f, 0.0f, 1.0f);
|
|
output.WorldSpaceTangent = input.tangentToWorld[0].xyz;
|
|
output.WorldSpaceBiTangent = input.tangentToWorld[1].xyz;
|
|
output.AbsoluteWorldSpacePosition = GetAbsolutePositionWS(input.positionRWS);
|
|
|
|
#if UNITY_UV_STARTS_AT_TOP
|
|
#else
|
|
#endif
|
|
|
|
|
|
output.uv0 = input.texCoord0;
|
|
output.VertexColor = input.color;
|
|
|
|
// splice point to copy frag inputs custom interpolator pack into the SDI
|
|
/* WARNING: $splice Could not find named fragment 'CustomInterpolatorCopyToSDI' */
|
|
|
|
return output;
|
|
}
|
|
|
|
// --------------------------------------------------
|
|
// Build Surface Data (Specific Material)
|
|
|
|
void ApplyDecalToSurfaceDataNoNormal(DecalSurfaceData decalSurfaceData, inout SurfaceData surfaceData);
|
|
|
|
void ApplyDecalAndGetNormal(FragInputs fragInputs, PositionInputs posInput, SurfaceDescription surfaceDescription,
|
|
inout SurfaceData surfaceData)
|
|
{
|
|
float3 doubleSidedConstants = GetDoubleSidedConstants();
|
|
|
|
#ifdef DECAL_NORMAL_BLENDING
|
|
// SG nodes don't ouptut surface gradients, so if decals require surf grad blending, we have to convert
|
|
// the normal to gradient before applying the decal. We then have to resolve the gradient back to world space
|
|
float3 normalTS;
|
|
|
|
normalTS = SurfaceGradientFromTangentSpaceNormalAndFromTBN(surfaceDescription.NormalTS,
|
|
fragInputs.tangentToWorld[0], fragInputs.tangentToWorld[1]);
|
|
|
|
|
|
#if HAVE_DECALS
|
|
if (_EnableDecals)
|
|
{
|
|
float alpha = 1.0;
|
|
alpha = surfaceDescription.Alpha;
|
|
|
|
DecalSurfaceData decalSurfaceData = GetDecalSurfaceData(posInput, fragInputs, alpha);
|
|
ApplyDecalToSurfaceNormal(decalSurfaceData, fragInputs.tangentToWorld[2], normalTS);
|
|
ApplyDecalToSurfaceDataNoNormal(decalSurfaceData, surfaceData);
|
|
}
|
|
#endif
|
|
|
|
GetNormalWS_SG(fragInputs, normalTS, surfaceData.normalWS, doubleSidedConstants);
|
|
#else
|
|
// normal delivered to master node
|
|
GetNormalWS(fragInputs, surfaceDescription.NormalTS, surfaceData.normalWS, doubleSidedConstants);
|
|
|
|
#if HAVE_DECALS
|
|
if (_EnableDecals)
|
|
{
|
|
float alpha = 1.0;
|
|
alpha = surfaceDescription.Alpha;
|
|
|
|
// Both uses and modifies 'surfaceData.normalWS'.
|
|
DecalSurfaceData decalSurfaceData = GetDecalSurfaceData(posInput, fragInputs, alpha);
|
|
ApplyDecalToSurfaceNormal(decalSurfaceData, surfaceData.normalWS.xyz);
|
|
ApplyDecalToSurfaceDataNoNormal(decalSurfaceData, surfaceData);
|
|
}
|
|
#endif
|
|
#endif
|
|
}
|
|
void BuildSurfaceData(FragInputs fragInputs, inout SurfaceDescription surfaceDescription, float3 V, PositionInputs posInput, out SurfaceData surfaceData, out float3 bentNormalWS)
|
|
{
|
|
ZERO_INITIALIZE(SurfaceData, surfaceData);
|
|
|
|
// specularOcclusion need to be init ahead of decal to quiet the compiler that modify the SurfaceData struct
|
|
// however specularOcclusion can come from the graph, so need to be init here so it can be override.
|
|
surfaceData.specularOcclusion = 1.0;
|
|
surfaceData.thickness = 0.0;
|
|
|
|
surfaceData.baseColor = surfaceDescription.BaseColor;
|
|
surfaceData.perceptualSmoothness = surfaceDescription.Smoothness;
|
|
surfaceData.ambientOcclusion = surfaceDescription.Occlusion;
|
|
surfaceData.metallic = surfaceDescription.Metallic;
|
|
|
|
#if defined(_REFRACTION_PLANE) || defined(_REFRACTION_SPHERE) || defined(_REFRACTION_THIN)
|
|
if (_EnableSSRefraction)
|
|
{
|
|
|
|
surfaceData.transmittanceMask = (1.0 - surfaceDescription.Alpha);
|
|
surfaceDescription.Alpha = 1.0;
|
|
}
|
|
else
|
|
{
|
|
surfaceData.ior = 1.0;
|
|
surfaceData.transmittanceColor = float3(1.0, 1.0, 1.0);
|
|
surfaceData.atDistance = 1.0;
|
|
surfaceData.transmittanceMask = 0.0;
|
|
surfaceDescription.Alpha = 1.0;
|
|
}
|
|
#else
|
|
surfaceData.ior = 1.0;
|
|
surfaceData.transmittanceColor = float3(1.0, 1.0, 1.0);
|
|
surfaceData.atDistance = 1.0;
|
|
surfaceData.transmittanceMask = 0.0;
|
|
#endif
|
|
|
|
// These static material feature allow compile time optimization
|
|
surfaceData.materialFeatures = MATERIALFEATUREFLAGS_LIT_STANDARD;
|
|
#ifdef _MATERIAL_FEATURE_SUBSURFACE_SCATTERING
|
|
surfaceData.materialFeatures |= MATERIALFEATUREFLAGS_LIT_SUBSURFACE_SCATTERING;
|
|
#endif
|
|
|
|
#ifdef _MATERIAL_FEATURE_TRANSMISSION
|
|
surfaceData.materialFeatures |= MATERIALFEATUREFLAGS_LIT_TRANSMISSION;
|
|
#endif
|
|
|
|
#ifdef _MATERIAL_FEATURE_COLORED_TRANSMISSION
|
|
surfaceData.materialFeatures |= MATERIALFEATUREFLAGS_LIT_TRANSMISSION;
|
|
surfaceData.materialFeatures |= MATERIALFEATUREFLAGS_LIT_COLORED_TRANSMISSION;
|
|
|
|
#endif
|
|
|
|
#ifdef _MATERIAL_FEATURE_ANISOTROPY
|
|
surfaceData.materialFeatures |= MATERIALFEATUREFLAGS_LIT_ANISOTROPY;
|
|
|
|
// Initialize the normal to something non-zero to avoid a div-zero warning for anisotropy.
|
|
surfaceData.normalWS = float3(0, 1, 0);
|
|
#endif
|
|
|
|
#ifdef _MATERIAL_FEATURE_IRIDESCENCE
|
|
surfaceData.materialFeatures |= MATERIALFEATUREFLAGS_LIT_IRIDESCENCE;
|
|
#endif
|
|
|
|
#ifdef _MATERIAL_FEATURE_SPECULAR_COLOR
|
|
surfaceData.materialFeatures |= MATERIALFEATUREFLAGS_LIT_SPECULAR_COLOR;
|
|
#endif
|
|
|
|
#ifdef _MATERIAL_FEATURE_CLEAR_COAT
|
|
surfaceData.materialFeatures |= MATERIALFEATUREFLAGS_LIT_CLEAR_COAT;
|
|
#endif
|
|
|
|
#if defined (_MATERIAL_FEATURE_SPECULAR_COLOR) && defined (_ENERGY_CONSERVING_SPECULAR)
|
|
// Require to have setup baseColor
|
|
// Reproduce the energy conservation done in legacy Unity. Not ideal but better for compatibility and users can unchek it
|
|
surfaceData.baseColor *= (1.0 - Max3(surfaceData.specularColor.r, surfaceData.specularColor.g, surfaceData.specularColor.b));
|
|
#endif
|
|
|
|
float3 doubleSidedConstants = GetDoubleSidedConstants();
|
|
|
|
ApplyDecalAndGetNormal(fragInputs, posInput, surfaceDescription, surfaceData);
|
|
|
|
surfaceData.geomNormalWS = fragInputs.tangentToWorld[2];
|
|
|
|
surfaceData.tangentWS = normalize(fragInputs.tangentToWorld[0].xyz); // The tangent is not normalize in tangentToWorld for mikkt. TODO: Check if it expected that we normalize with Morten. Tag: SURFACE_GRADIENT
|
|
|
|
|
|
bentNormalWS = surfaceData.normalWS;
|
|
|
|
surfaceData.tangentWS = Orthonormalize(surfaceData.tangentWS, surfaceData.normalWS);
|
|
|
|
#ifdef DEBUG_DISPLAY
|
|
#if !defined(SHADER_STAGE_RAY_TRACING)
|
|
// Mipmap mode debugging isn't supported with ray tracing as it relies on derivatives
|
|
if (_DebugMipMapMode != DEBUGMIPMAPMODE_NONE)
|
|
{
|
|
#ifdef FRAG_INPUTS_USE_TEXCOORD0
|
|
surfaceData.baseColor = GET_TEXTURE_STREAMING_DEBUG(posInput.positionSS, fragInputs.texCoord0);
|
|
#else
|
|
surfaceData.baseColor = GET_TEXTURE_STREAMING_DEBUG_NO_UV(posInput.positionSS);
|
|
#endif
|
|
surfaceData.metallic = 0;
|
|
}
|
|
#endif
|
|
|
|
// We need to call ApplyDebugToSurfaceData after filling the surfaceData and before filling builtinData
|
|
// as it can modify attribute use for static lighting
|
|
ApplyDebugToSurfaceData(fragInputs.tangentToWorld, surfaceData);
|
|
#endif
|
|
|
|
// By default we use the ambient occlusion with Tri-ace trick (apply outside) for specular occlusion.
|
|
// If user provide bent normal then we process a better term
|
|
#if defined(_SPECULAR_OCCLUSION_CUSTOM)
|
|
// Just use the value passed through via the slot (not active otherwise)
|
|
#elif defined(_SPECULAR_OCCLUSION_FROM_AO_BENT_NORMAL)
|
|
// If we have bent normal and ambient occlusion, process a specular occlusion
|
|
surfaceData.specularOcclusion = GetSpecularOcclusionFromBentAO(V, bentNormalWS, surfaceData.normalWS, surfaceData.ambientOcclusion, PerceptualSmoothnessToPerceptualRoughness(surfaceData.perceptualSmoothness));
|
|
#elif defined(_AMBIENT_OCCLUSION) && defined(_SPECULAR_OCCLUSION_FROM_AO)
|
|
surfaceData.specularOcclusion = GetSpecularOcclusionFromAmbientOcclusion(ClampNdotV(dot(surfaceData.normalWS, V)), surfaceData.ambientOcclusion, PerceptualSmoothnessToRoughness(surfaceData.perceptualSmoothness));
|
|
#endif
|
|
|
|
#if defined(_ENABLE_GEOMETRIC_SPECULAR_AA) && !defined(SHADER_STAGE_RAY_TRACING)
|
|
surfaceData.perceptualSmoothness = GeometricNormalFiltering(surfaceData.perceptualSmoothness, fragInputs.tangentToWorld[2], surfaceDescription.SpecularAAScreenSpaceVariance, surfaceDescription.SpecularAAThreshold);
|
|
#endif
|
|
}
|
|
|
|
// --------------------------------------------------
|
|
// Get Surface And BuiltinData
|
|
|
|
void GetSurfaceAndBuiltinData(FragInputs fragInputs, float3 V, inout PositionInputs posInput, out SurfaceData surfaceData, out BuiltinData builtinData RAY_TRACING_OPTIONAL_PARAMETERS)
|
|
{
|
|
// Don't dither if displaced tessellation (we're fading out the displacement instead to match the next LOD)
|
|
#if !defined(SHADER_STAGE_RAY_TRACING) && !defined(_TESSELLATION_DISPLACEMENT)
|
|
#ifdef LOD_FADE_CROSSFADE // enable dithering LOD transition if user select CrossFade transition in LOD group
|
|
LODDitheringTransition(ComputeFadeMaskSeed(V, posInput.positionSS), unity_LODFade.x);
|
|
#endif
|
|
#endif
|
|
|
|
#ifndef SHADER_UNLIT
|
|
#ifdef _DOUBLESIDED_ON
|
|
float3 doubleSidedConstants = _DoubleSidedConstants.xyz;
|
|
#else
|
|
float3 doubleSidedConstants = float3(1.0, 1.0, 1.0);
|
|
#endif
|
|
|
|
ApplyDoubleSidedFlipOrMirror(fragInputs, doubleSidedConstants); // Apply double sided flip on the vertex normal
|
|
#endif // SHADER_UNLIT
|
|
|
|
SurfaceDescriptionInputs surfaceDescriptionInputs = FragInputsToSurfaceDescriptionInputs(fragInputs, V);
|
|
|
|
#if defined(HAVE_VFX_MODIFICATION)
|
|
GraphProperties properties;
|
|
ZERO_INITIALIZE(GraphProperties, properties);
|
|
|
|
GetElementPixelProperties(fragInputs, properties);
|
|
|
|
SurfaceDescription surfaceDescription = SurfaceDescriptionFunction(surfaceDescriptionInputs, properties);
|
|
#else
|
|
SurfaceDescription surfaceDescription = SurfaceDescriptionFunction(surfaceDescriptionInputs);
|
|
#endif
|
|
|
|
#ifdef DEBUG_DISPLAY
|
|
if (_DebugMipMapMode != DEBUGMIPMAPMODE_NONE)
|
|
{
|
|
surfaceDescription.Alpha = 1.0f;
|
|
}
|
|
#endif
|
|
|
|
// Perform alpha test very early to save performance (a killed pixel will not sample textures)
|
|
// TODO: split graph evaluation to grab just alpha dependencies first? tricky..
|
|
#ifdef _ALPHATEST_ON
|
|
float alphaCutoff = surfaceDescription.AlphaClipThreshold;
|
|
#if SHADERPASS == SHADERPASS_TRANSPARENT_DEPTH_PREPASS
|
|
// The TransparentDepthPrepass is also used with SSR transparent.
|
|
// If an artists enable transaprent SSR but not the TransparentDepthPrepass itself, then we use AlphaClipThreshold
|
|
// otherwise if TransparentDepthPrepass is enabled we use AlphaClipThresholdDepthPrepass
|
|
#elif SHADERPASS == SHADERPASS_TRANSPARENT_DEPTH_POSTPASS
|
|
// DepthPostpass always use its own alpha threshold
|
|
alphaCutoff = surfaceDescription.AlphaClipThresholdDepthPostpass;
|
|
#elif (SHADERPASS == SHADERPASS_SHADOWS) || (SHADERPASS == SHADERPASS_RAYTRACING_VISIBILITY)
|
|
// If use shadow threshold isn't enable we don't allow any test
|
|
#endif
|
|
|
|
GENERIC_ALPHA_TEST(surfaceDescription.Alpha, alphaCutoff);
|
|
#endif
|
|
|
|
#if !defined(SHADER_STAGE_RAY_TRACING) && _DEPTHOFFSET_ON
|
|
ApplyDepthOffsetPositionInput(V, surfaceDescription.DepthOffset, GetViewForwardDir(), GetWorldToHClipMatrix(), posInput);
|
|
#endif
|
|
|
|
#ifndef SHADER_UNLIT
|
|
float3 bentNormalWS;
|
|
BuildSurfaceData(fragInputs, surfaceDescription, V, posInput, surfaceData, bentNormalWS);
|
|
|
|
#ifdef FRAG_INPUTS_USE_TEXCOORD1
|
|
float4 lightmapTexCoord1 = fragInputs.texCoord1;
|
|
#else
|
|
float4 lightmapTexCoord1 = float4(0,0,0,0);
|
|
#endif
|
|
|
|
#ifdef FRAG_INPUTS_USE_TEXCOORD2
|
|
float4 lightmapTexCoord2 = fragInputs.texCoord2;
|
|
#else
|
|
float4 lightmapTexCoord2 = float4(0,0,0,0);
|
|
#endif
|
|
|
|
float alpha = 1.0;
|
|
alpha = surfaceDescription.Alpha;
|
|
|
|
// Builtin Data
|
|
// For back lighting we use the oposite vertex normal
|
|
InitBuiltinData(posInput, alpha, bentNormalWS, -fragInputs.tangentToWorld[2], lightmapTexCoord1, lightmapTexCoord2, builtinData);
|
|
|
|
#else
|
|
BuildSurfaceData(fragInputs, surfaceDescription, V, posInput, surfaceData);
|
|
|
|
ZERO_BUILTIN_INITIALIZE(builtinData); // No call to InitBuiltinData as we don't have any lighting
|
|
builtinData.opacity = surfaceDescription.Alpha;
|
|
|
|
#if defined(DEBUG_DISPLAY)
|
|
// Light Layers are currently not used for the Unlit shader (because it is not lit)
|
|
// But Unlit objects do cast shadows according to their rendering layer mask, which is what we want to
|
|
// display in the light layers visualization mode, therefore we need the renderingLayers
|
|
builtinData.renderingLayers = GetMeshRenderingLayerMask();
|
|
#endif
|
|
|
|
#endif // SHADER_UNLIT
|
|
|
|
#ifdef _ALPHATEST_ON
|
|
// Used for sharpening by alpha to mask - Alpha to covertage is only used with depth only and forward pass (no shadow pass, no transparent pass)
|
|
builtinData.alphaClipTreshold = alphaCutoff;
|
|
#endif
|
|
|
|
// override sampleBakedGI - not used by Unlit
|
|
// When overriding GI, we need to force the isLightmap flag to make sure we don't add APV (sampled in the lightloop) on top of the overridden value (set at GBuffer stage)
|
|
|
|
builtinData.emissiveColor = surfaceDescription.Emission;
|
|
|
|
// Note this will not fully work on transparent surfaces (can check with _SURFACE_TYPE_TRANSPARENT define)
|
|
// We will always overwrite vt feeback with the nearest. So behind transparent surfaces vt will not be resolved
|
|
// This is a limitation of the current MRT approach.
|
|
#ifdef UNITY_VIRTUAL_TEXTURING
|
|
#endif
|
|
|
|
#if _DEPTHOFFSET_ON
|
|
builtinData.depthOffset = surfaceDescription.DepthOffset;
|
|
#endif
|
|
|
|
// TODO: We should generate distortion / distortionBlur for non distortion pass
|
|
#if (SHADERPASS == SHADERPASS_DISTORTION)
|
|
builtinData.distortion = surfaceDescription.Distortion;
|
|
builtinData.distortionBlur = surfaceDescription.DistortionBlur;
|
|
#endif
|
|
|
|
#ifndef SHADER_UNLIT
|
|
// PostInitBuiltinData call ApplyDebugToBuiltinData
|
|
PostInitBuiltinData(V, posInput, surfaceData, builtinData);
|
|
#else
|
|
ApplyDebugToBuiltinData(builtinData);
|
|
#endif
|
|
|
|
RAY_TRACING_OPTIONAL_ALPHA_TEST_PASS
|
|
}
|
|
|
|
// --------------------------------------------------
|
|
// Main
|
|
|
|
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/RenderPipeline/ShaderPass/ShaderPassLightTransport.hlsl"
|
|
|
|
// --------------------------------------------------
|
|
// Visual Effect Vertex Invocations
|
|
|
|
#ifdef HAVE_VFX_MODIFICATION
|
|
#if !defined(SHADER_STAGE_RAY_TRACING)
|
|
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/ShaderLibrary/VisualEffectVertex.hlsl"
|
|
#else
|
|
#endif
|
|
#endif
|
|
|
|
ENDHLSL
|
|
}
|
|
Pass
|
|
{
|
|
Name "ScenePickingPass"
|
|
Tags
|
|
{
|
|
"LightMode" = "Picking"
|
|
}
|
|
|
|
// Render State
|
|
Cull [_CullMode]
|
|
|
|
// Debug
|
|
// <None>
|
|
|
|
// --------------------------------------------------
|
|
// Pass
|
|
|
|
HLSLPROGRAM
|
|
|
|
// Pragmas
|
|
#pragma multi_compile _ DOTS_INSTANCING_ON
|
|
#pragma editor_sync_compilation
|
|
#pragma instancing_options renderinglayer
|
|
#pragma target 4.5
|
|
#pragma vertex Vert
|
|
#pragma fragment Frag
|
|
#pragma only_renderers d3d11 playstation xboxone xboxseries vulkan metal switch
|
|
#pragma multi_compile_instancing
|
|
|
|
// Keywords
|
|
#pragma shader_feature _ _SURFACE_TYPE_TRANSPARENT
|
|
#pragma shader_feature_local _ _DOUBLESIDED_ON
|
|
#pragma shader_feature_local _ _ADD_PRECOMPUTED_VELOCITY
|
|
#pragma shader_feature_local _ _TRANSPARENT_WRITES_MOTION_VEC _TRANSPARENT_REFRACTIVE_SORT
|
|
#pragma shader_feature_local_fragment _ _ENABLE_FOG_ON_TRANSPARENT
|
|
#pragma multi_compile _ LOD_FADE_CROSSFADE
|
|
#pragma shader_feature_local_fragment _ _DISABLE_DECALS
|
|
#pragma shader_feature_local_raytracing _ _DISABLE_DECALS
|
|
#pragma shader_feature_local_fragment _ _DISABLE_SSR
|
|
#pragma shader_feature_local_raytracing _ _DISABLE_SSR
|
|
#pragma shader_feature_local_fragment _ _DISABLE_SSR_TRANSPARENT
|
|
#pragma shader_feature_local_raytracing _ _DISABLE_SSR_TRANSPARENT
|
|
#pragma shader_feature_local _ _REFRACTION_PLANE _REFRACTION_SPHERE _REFRACTION_THIN
|
|
#pragma shader_feature_local_fragment _MATERIAL_FEATURE_SUBSURFACE_SCATTERING
|
|
#pragma shader_feature_local_raytracing _MATERIAL_FEATURE_SUBSURFACE_SCATTERING
|
|
#pragma shader_feature_local_fragment _MATERIAL_FEATURE_TRANSMISSION
|
|
#pragma shader_feature_local_raytracing _MATERIAL_FEATURE_TRANSMISSION
|
|
#pragma shader_feature_local_fragment _MATERIAL_FEATURE_ANISOTROPY
|
|
#pragma shader_feature_local_raytracing _MATERIAL_FEATURE_ANISOTROPY
|
|
#pragma shader_feature_local_fragment _MATERIAL_FEATURE_IRIDESCENCE
|
|
#pragma shader_feature_local_raytracing _MATERIAL_FEATURE_IRIDESCENCE
|
|
#pragma shader_feature_local_fragment _MATERIAL_FEATURE_SPECULAR_COLOR
|
|
#pragma shader_feature_local_raytracing _MATERIAL_FEATURE_SPECULAR_COLOR
|
|
#pragma shader_feature_local_fragment _MATERIAL_FEATURE_COLORED_TRANSMISSION
|
|
#pragma shader_feature_local_raytracing _MATERIAL_FEATURE_COLORED_TRANSMISSION
|
|
// GraphKeywords: <None>
|
|
|
|
// Defines
|
|
#define SHADERPASS SHADERPASS_DEPTH_ONLY
|
|
#define SCENEPICKINGPASS 1
|
|
#define SUPPORT_GLOBAL_MIP_BIAS 1
|
|
|
|
// For custom interpolators to inject a substruct definition before FragInputs definition,
|
|
// allowing for FragInputs to capture CI's intended for ShaderGraph's SDI.
|
|
struct CustomInterpolators
|
|
{
|
|
};
|
|
#define USE_CUSTOMINTERP_SUBSTRUCT
|
|
|
|
|
|
|
|
// TODO: Merge FragInputsVFX substruct with CustomInterpolators.
|
|
#ifdef HAVE_VFX_MODIFICATION
|
|
struct FragInputsVFX
|
|
{
|
|
/* WARNING: $splice Could not find named fragment 'FragInputsVFX' */
|
|
};
|
|
#endif
|
|
|
|
#include "Packages/com.unity.render-pipelines.core/ShaderLibrary/Common.hlsl"
|
|
#include "Packages/com.unity.render-pipelines.core/ShaderLibrary/GeometricTools.hlsl" // Required by Tessellation.hlsl
|
|
#include "Packages/com.unity.render-pipelines.core/ShaderLibrary/Tessellation.hlsl"
|
|
#include "Packages/com.unity.render-pipelines.core/ShaderLibrary/Texture.hlsl"
|
|
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/ShaderLibrary/ShaderVariables.hlsl"
|
|
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/RenderPipeline/ShaderPass/ShaderPass.cs.hlsl"
|
|
#include "Packages/com.unity.render-pipelines.core/ShaderLibrary/TextureStack.hlsl" // Required to be include before we include properties as it define DECLARE_STACK_CB
|
|
#include "Packages/com.unity.render-pipelines.core/ShaderLibrary/DebugMipmapStreamingMacros.hlsl" // Required before including properties as it defines UNITY_TEXTURE_STREAMING_DEBUG_VARS
|
|
// Always include Shader Graph version
|
|
// Always include last to avoid double macros
|
|
#include "Packages/com.unity.shadergraph/ShaderGraphLibrary/Functions.hlsl" // Need to be here for Gradient struct definition
|
|
|
|
// --------------------------------------------------
|
|
// Defines
|
|
|
|
// Attribute
|
|
#define ATTRIBUTES_NEED_NORMAL
|
|
#define ATTRIBUTES_NEED_TANGENT
|
|
#define ATTRIBUTES_NEED_TEXCOORD0
|
|
#define ATTRIBUTES_NEED_COLOR
|
|
#define VARYINGS_NEED_POSITION_WS
|
|
#define VARYINGS_NEED_TANGENT_TO_WORLD
|
|
#define VARYINGS_NEED_TEXCOORD0
|
|
#define VARYINGS_NEED_COLOR
|
|
|
|
#define HAVE_MESH_MODIFICATION
|
|
|
|
//Strip down the FragInputs.hlsl (on graphics), so we can only optimize the interpolators we use.
|
|
//if by accident something requests contents of FragInputs.hlsl, it will be caught as a compiler error
|
|
//Frag inputs stripping is only enabled when FRAG_INPUTS_ENABLE_STRIPPING is set
|
|
#if !defined(SHADER_STAGE_RAY_TRACING) && SHADERPASS != SHADERPASS_RAYTRACING_GBUFFER && SHADERPASS != SHADERPASS_FULL_SCREEN_DEBUG
|
|
#define FRAG_INPUTS_ENABLE_STRIPPING
|
|
#endif
|
|
#define FRAG_INPUTS_USE_TEXCOORD0
|
|
|
|
|
|
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/RenderPipeline/ShaderPass/FragInputs.hlsl"
|
|
|
|
|
|
|
|
|
|
// Following two define are a workaround introduce in 10.1.x for RaytracingQualityNode
|
|
// The ShaderGraph don't support correctly migration of this node as it serialize all the node data
|
|
// in the json file making it impossible to uprgrade. Until we get a fix, we do a workaround here
|
|
// to still allow us to rename the field and keyword of this node without breaking existing code.
|
|
#ifdef RAYTRACING_SHADER_GRAPH_DEFAULT
|
|
#define RAYTRACING_SHADER_GRAPH_HIGH
|
|
#endif
|
|
|
|
#ifdef RAYTRACING_SHADER_GRAPH_RAYTRACED
|
|
#define RAYTRACING_SHADER_GRAPH_LOW
|
|
#endif
|
|
// end
|
|
|
|
#ifndef SHADER_UNLIT
|
|
// We need isFrontFace when using double sided - it is not required for unlit as in case of unlit double sided only drive the cullmode
|
|
// VARYINGS_NEED_CULLFACE can be define by VaryingsMeshToPS.FaceSign input if a IsFrontFace Node is included in the shader graph.
|
|
#if defined(_DOUBLESIDED_ON) && !defined(VARYINGS_NEED_CULLFACE)
|
|
#define VARYINGS_NEED_CULLFACE
|
|
#endif
|
|
#endif
|
|
|
|
// Specific Material Define
|
|
#define _AMBIENT_OCCLUSION 1
|
|
#define _SPECULAR_OCCLUSION_FROM_AO 1
|
|
#define _ENERGY_CONSERVING_SPECULAR 1
|
|
|
|
#if _MATERIAL_FEATURE_COLORED_TRANSMISSION
|
|
// Colored Transmission doesn't support clear coat
|
|
#undef _MATERIAL_FEATURE_CLEAR_COAT
|
|
#endif
|
|
|
|
// If we use subsurface scattering, enable output split lighting (for forward pass)
|
|
#if defined(_MATERIAL_FEATURE_SUBSURFACE_SCATTERING) && !defined(_SURFACE_TYPE_TRANSPARENT)
|
|
#define OUTPUT_SPLIT_LIGHTING
|
|
#endif
|
|
|
|
// This shader support recursive rendering for raytracing
|
|
#define HAVE_RECURSIVE_RENDERING
|
|
|
|
// In Path Tracing, For all single-sided, refractive materials, we want to force a thin refraction model
|
|
#if (SHADERPASS == SHADERPASS_PATH_TRACING) && !defined(_DOUBLESIDED_ON) && (defined(_REFRACTION_PLANE) || defined(_REFRACTION_SPHERE))
|
|
#undef _REFRACTION_PLANE
|
|
#undef _REFRACTION_SPHERE
|
|
#define _REFRACTION_THIN
|
|
#endif
|
|
// Caution: we can use the define SHADER_UNLIT onlit after the above Material include as it is the Unlit template who define it
|
|
|
|
// To handle SSR on transparent correctly with a possibility to enable/disable it per framesettings
|
|
// we should have a code like this:
|
|
// if !defined(_DISABLE_SSR_TRANSPARENT)
|
|
// pragma multi_compile _ WRITE_NORMAL_BUFFER
|
|
// endif
|
|
// i.e we enable the multicompile only if we can receive SSR or not, and then C# code drive
|
|
// it based on if SSR transparent in frame settings and not (and stripper can strip it).
|
|
// this is currently not possible with our current preprocessor as _DISABLE_SSR_TRANSPARENT is a keyword not a define
|
|
// so instead we used this and chose to pay the extra cost of normal write even if SSR transaprent is disabled.
|
|
// Ideally the shader graph generator should handle it but condition below can't be handle correctly for now.
|
|
#if SHADERPASS == SHADERPASS_TRANSPARENT_DEPTH_PREPASS
|
|
#if !defined(_DISABLE_SSR_TRANSPARENT) && !defined(SHADER_UNLIT)
|
|
#define WRITE_NORMAL_BUFFER
|
|
#endif
|
|
#endif
|
|
|
|
// See Lit.shader
|
|
#if SHADERPASS == SHADERPASS_MOTION_VECTORS && defined(WRITE_DECAL_BUFFER_AND_RENDERING_LAYER)
|
|
#define WRITE_DECAL_BUFFER
|
|
#endif
|
|
|
|
#ifndef DEBUG_DISPLAY
|
|
// In case of opaque we don't want to perform the alpha test, it is done in depth prepass and we use depth equal for ztest (setup from UI)
|
|
// Don't do it with debug display mode as it is possible there is no depth prepass in this case
|
|
#if !defined(_SURFACE_TYPE_TRANSPARENT)
|
|
#if SHADERPASS == SHADERPASS_FORWARD
|
|
#define SHADERPASS_FORWARD_BYPASS_ALPHA_TEST
|
|
#elif SHADERPASS == SHADERPASS_GBUFFER
|
|
#define SHADERPASS_GBUFFER_BYPASS_ALPHA_TEST
|
|
#endif
|
|
#endif
|
|
#endif
|
|
|
|
// Define _DEFERRED_CAPABLE_MATERIAL for shader capable to run in deferred pass
|
|
#if defined(SHADER_LIT) && !defined(_SURFACE_TYPE_TRANSPARENT)
|
|
#define _DEFERRED_CAPABLE_MATERIAL
|
|
#endif
|
|
|
|
// Translate transparent motion vector define
|
|
#if (defined(_TRANSPARENT_WRITES_MOTION_VEC) || defined(_TRANSPARENT_REFRACTIVE_SORT)) && defined(_SURFACE_TYPE_TRANSPARENT)
|
|
#define _WRITE_TRANSPARENT_MOTION_VECTOR
|
|
#endif
|
|
|
|
// -- Graph Properties
|
|
CBUFFER_START(UnityPerMaterial)
|
|
float4 _BaseColor;
|
|
float4 _BaseColorMap_TexelSize;
|
|
float4 _BaseTilingOffset;
|
|
float _BaseTriplanarThreshold;
|
|
float4 _BaseNormalMap_TexelSize;
|
|
float _BaseNormalScale;
|
|
float4 _BaseMaskMap_TexelSize;
|
|
float _BaseMetallic;
|
|
float _BaseAORemapMin;
|
|
float _BaseAORemapMax;
|
|
float _BaseSmoothnessRemapMin;
|
|
float _BaseSmoothnessRemapMax;
|
|
float _USEDYNAMICCOVERTSTATICMASKF;
|
|
float4 _CoverMaskA_TexelSize;
|
|
float _CoverMaskPower;
|
|
float _Cover_Amount;
|
|
float _Cover_Amount_Grow_Speed;
|
|
float3 _CoverDirection;
|
|
float _Cover_Max_Angle;
|
|
float _Cover_Min_Height;
|
|
float _Cover_Min_Height_Blending;
|
|
float4 _CoverBaseColor;
|
|
float4 _CoverBaseColorMap_TexelSize;
|
|
float4 _CoverTilingOffset;
|
|
float _CoverTriplanarThreshold;
|
|
float4 _CoverNormalMap_TexelSize;
|
|
float _CoverNormalScale;
|
|
float _CoverNormalBlendHardness;
|
|
float _CoverHeightMapMin;
|
|
float _CoverHeightMapMax;
|
|
float _CoverHeightMapOffset;
|
|
float _CoverHardness;
|
|
float4 _CoverMaskMap_TexelSize;
|
|
float _CoverMetallic;
|
|
float _CoverAORemapMin;
|
|
float _CoverAORemapMax;
|
|
float _CoverSmoothnessRemapMin;
|
|
float _CoverSmoothnessRemapMax;
|
|
float4 _ShapeNormalMap_TexelSize;
|
|
float _shapeNormalScale;
|
|
float _CovershapeNormalScale;
|
|
float4 _ShapeAO_TexelSize;
|
|
float _ShapeAORemapMin;
|
|
float _ShapeAORemapMax;
|
|
float _CoverShapeAORemapMin;
|
|
float _CoverShapeAORemapMax;
|
|
float4 _DetailMap_TexelSize;
|
|
float4 _DetailTilingOffset;
|
|
float _DetailAlbedoScale;
|
|
float _DetailNormalScale;
|
|
float _DetailSmoothnessScale;
|
|
float _DetailCoverAlbedoScale;
|
|
float _DetailCoverNormalScale;
|
|
float _DetailCoverSmoothnessScale;
|
|
float _CoverMaskRCurvature;
|
|
float _BaseBrightnessCurvMultply;
|
|
float _BaseBrightnessCurvPower;
|
|
float _BaseDarknessCurvMultply;
|
|
float _BaseDarknessCurvPower;
|
|
float _CoverBrightnessCurvMultply;
|
|
float _CoverBrightnessCurvPower;
|
|
float _CoverDarknessCurvMultply;
|
|
float _CoverDarknessCurvPower;
|
|
float4 _WetColor;
|
|
float _WetSmoothness;
|
|
float4 _EmissionColor;
|
|
float _UseShadowThreshold;
|
|
float4 _DoubleSidedConstants;
|
|
UNITY_TEXTURE_STREAMING_DEBUG_VARS;
|
|
float _BlendMode;
|
|
float _EnableBlendModePreserveSpecularLighting;
|
|
float _RayTracing;
|
|
float _RefractionModel;
|
|
float _MaterialID;
|
|
float _MaterialTypeMask;
|
|
CBUFFER_END
|
|
|
|
|
|
// Object and Global properties
|
|
SAMPLER(SamplerState_Linear_Repeat);
|
|
SAMPLER(SamplerState_Linear_Repeat_Aniso8);
|
|
TEXTURE2D(_BaseColorMap);
|
|
SAMPLER(sampler_BaseColorMap);
|
|
TEXTURE2D(_BaseNormalMap);
|
|
SAMPLER(sampler_BaseNormalMap);
|
|
TEXTURE2D(_BaseMaskMap);
|
|
SAMPLER(sampler_BaseMaskMap);
|
|
TEXTURE2D(_CoverMaskA);
|
|
SAMPLER(sampler_CoverMaskA);
|
|
TEXTURE2D(_CoverBaseColorMap);
|
|
SAMPLER(sampler_CoverBaseColorMap);
|
|
TEXTURE2D(_CoverNormalMap);
|
|
SAMPLER(sampler_CoverNormalMap);
|
|
TEXTURE2D(_CoverMaskMap);
|
|
SAMPLER(sampler_CoverMaskMap);
|
|
TEXTURE2D(_ShapeNormalMap);
|
|
SAMPLER(sampler_ShapeNormalMap);
|
|
TEXTURE2D(_ShapeAO);
|
|
SAMPLER(sampler_ShapeAO);
|
|
TEXTURE2D(_DetailMap);
|
|
SAMPLER(sampler_DetailMap);
|
|
|
|
// -- Property used by ScenePickingPass
|
|
#ifdef SCENEPICKINGPASS
|
|
float4 _SelectionID;
|
|
#endif
|
|
|
|
// -- Properties used by SceneSelectionPass
|
|
#ifdef SCENESELECTIONPASS
|
|
int _ObjectId;
|
|
int _PassValue;
|
|
#endif
|
|
|
|
// Includes
|
|
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/ShaderLibrary/PickingSpaceTransforms.hlsl"
|
|
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/Debug/DebugDisplay.hlsl"
|
|
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/Material/Material.hlsl"
|
|
#include "Packages/com.unity.render-pipelines.core/ShaderLibrary/NormalSurfaceGradient.hlsl"
|
|
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/Material/Lit/Lit.hlsl"
|
|
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/Material/BuiltinUtilities.hlsl"
|
|
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/Material/MaterialUtilities.hlsl"
|
|
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/Material/Decal/DecalUtilities.hlsl"
|
|
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/ShaderLibrary/ShaderGraphFunctions.hlsl"
|
|
// GraphIncludes: <None>
|
|
|
|
// --------------------------------------------------
|
|
// Structs and Packing
|
|
|
|
struct AttributesMesh
|
|
{
|
|
float3 positionOS : POSITION;
|
|
float3 normalOS : NORMAL;
|
|
float4 tangentOS : TANGENT;
|
|
float4 uv0 : TEXCOORD0;
|
|
float4 color : COLOR;
|
|
#if UNITY_ANY_INSTANCING_ENABLED || defined(ATTRIBUTES_NEED_INSTANCEID)
|
|
uint instanceID : INSTANCEID_SEMANTIC;
|
|
#endif
|
|
};
|
|
struct VaryingsMeshToPS
|
|
{
|
|
SV_POSITION_QUALIFIERS float4 positionCS : SV_POSITION;
|
|
float3 positionRWS;
|
|
float3 normalWS;
|
|
float4 tangentWS;
|
|
float4 texCoord0;
|
|
float4 color;
|
|
#if UNITY_ANY_INSTANCING_ENABLED || defined(VARYINGS_NEED_INSTANCEID)
|
|
uint instanceID : CUSTOM_INSTANCE_ID;
|
|
#endif
|
|
};
|
|
struct VertexDescriptionInputs
|
|
{
|
|
float3 ObjectSpaceNormal;
|
|
float3 ObjectSpaceTangent;
|
|
float3 ObjectSpacePosition;
|
|
};
|
|
struct SurfaceDescriptionInputs
|
|
{
|
|
float3 WorldSpaceNormal;
|
|
float3 TangentSpaceNormal;
|
|
float3 WorldSpaceTangent;
|
|
float3 WorldSpaceBiTangent;
|
|
float3 AbsoluteWorldSpacePosition;
|
|
float4 uv0;
|
|
float4 VertexColor;
|
|
};
|
|
struct PackedVaryingsMeshToPS
|
|
{
|
|
SV_POSITION_QUALIFIERS float4 positionCS : SV_POSITION;
|
|
float4 tangentWS : INTERP0;
|
|
float4 texCoord0 : INTERP1;
|
|
float4 color : INTERP2;
|
|
float3 positionRWS : INTERP3;
|
|
float3 normalWS : INTERP4;
|
|
#if UNITY_ANY_INSTANCING_ENABLED || defined(VARYINGS_NEED_INSTANCEID)
|
|
uint instanceID : CUSTOM_INSTANCE_ID;
|
|
#endif
|
|
};
|
|
|
|
PackedVaryingsMeshToPS PackVaryingsMeshToPS (VaryingsMeshToPS input)
|
|
{
|
|
PackedVaryingsMeshToPS output;
|
|
ZERO_INITIALIZE(PackedVaryingsMeshToPS, output);
|
|
output.positionCS = input.positionCS;
|
|
output.tangentWS.xyzw = input.tangentWS;
|
|
output.texCoord0.xyzw = input.texCoord0;
|
|
output.color.xyzw = input.color;
|
|
output.positionRWS.xyz = input.positionRWS;
|
|
output.normalWS.xyz = input.normalWS;
|
|
#if UNITY_ANY_INSTANCING_ENABLED || defined(VARYINGS_NEED_INSTANCEID)
|
|
output.instanceID = input.instanceID;
|
|
#endif
|
|
return output;
|
|
}
|
|
|
|
VaryingsMeshToPS UnpackVaryingsMeshToPS (PackedVaryingsMeshToPS input)
|
|
{
|
|
VaryingsMeshToPS output;
|
|
output.positionCS = input.positionCS;
|
|
output.tangentWS = input.tangentWS.xyzw;
|
|
output.texCoord0 = input.texCoord0.xyzw;
|
|
output.color = input.color.xyzw;
|
|
output.positionRWS = input.positionRWS.xyz;
|
|
output.normalWS = input.normalWS.xyz;
|
|
#if UNITY_ANY_INSTANCING_ENABLED || defined(VARYINGS_NEED_INSTANCEID)
|
|
output.instanceID = input.instanceID;
|
|
#endif
|
|
return output;
|
|
}
|
|
|
|
|
|
// --------------------------------------------------
|
|
// Graph
|
|
|
|
|
|
// Graph Functions
|
|
|
|
void Unity_Divide_float4(float4 A, float4 B, out float4 Out)
|
|
{
|
|
Out = A / B;
|
|
}
|
|
|
|
void Unity_Combine_float(float R, float G, float B, float A, out float4 RGBA, out float3 RGB, out float2 RG)
|
|
{
|
|
RGBA = float4(R, G, B, A);
|
|
RGB = float3(R, G, B);
|
|
RG = float2(R, G);
|
|
}
|
|
|
|
void Unity_Multiply_float4_float4(float4 A, float4 B, out float4 Out)
|
|
{
|
|
Out = A * B;
|
|
}
|
|
|
|
void Unity_Sign_float3(float3 In, out float3 Out)
|
|
{
|
|
Out = sign(In);
|
|
}
|
|
|
|
void Unity_Multiply_float2_float2(float2 A, float2 B, out float2 Out)
|
|
{
|
|
Out = A * B;
|
|
}
|
|
|
|
void Unity_Absolute_float3(float3 In, out float3 Out)
|
|
{
|
|
Out = abs(In);
|
|
}
|
|
|
|
void Unity_Power_float3(float3 A, float3 B, out float3 Out)
|
|
{
|
|
Out = pow(A, B);
|
|
}
|
|
|
|
void Unity_Multiply_float3_float3(float3 A, float3 B, out float3 Out)
|
|
{
|
|
Out = A * B;
|
|
}
|
|
|
|
void Unity_Multiply_float_float(float A, float B, out float Out)
|
|
{
|
|
Out = A * B;
|
|
}
|
|
|
|
void Unity_Add_float4(float4 A, float4 B, out float4 Out)
|
|
{
|
|
Out = A + B;
|
|
}
|
|
|
|
void Unity_Add_float(float A, float B, out float Out)
|
|
{
|
|
Out = A + B;
|
|
}
|
|
|
|
struct Bindings_TriplanarNM_bc609ed95f52591469ab35dbfe0efcea_float
|
|
{
|
|
float3 WorldSpaceNormal;
|
|
float3 AbsoluteWorldSpacePosition;
|
|
};
|
|
|
|
void SG_TriplanarNM_bc609ed95f52591469ab35dbfe0efcea_float(UnityTexture2D Texture2D_80A3D28F, float Vector1_41461AC9, float Vector1_E4D1C13A, UnitySamplerState _SamplerState, Bindings_TriplanarNM_bc609ed95f52591469ab35dbfe0efcea_float IN, out float4 XYZ_1, out float4 XZ_2, out float4 YZ_3, out float4 XY_4)
|
|
{
|
|
UnityTexture2D _Property_3e01b4d2fc68d48ba3acbba9d5881e59_Out_0_Texture2D = Texture2D_80A3D28F;
|
|
float _Split_89ed63cb625cb3878c183d0b71c03400_R_1_Float = IN.AbsoluteWorldSpacePosition[0];
|
|
float _Split_89ed63cb625cb3878c183d0b71c03400_G_2_Float = IN.AbsoluteWorldSpacePosition[1];
|
|
float _Split_89ed63cb625cb3878c183d0b71c03400_B_3_Float = IN.AbsoluteWorldSpacePosition[2];
|
|
float _Split_89ed63cb625cb3878c183d0b71c03400_A_4_Float = 0;
|
|
float4 _Combine_cf2d04ff119ad88493f6460431765cbb_RGBA_4_Vector4;
|
|
float3 _Combine_cf2d04ff119ad88493f6460431765cbb_RGB_5_Vector3;
|
|
float2 _Combine_cf2d04ff119ad88493f6460431765cbb_RG_6_Vector2;
|
|
Unity_Combine_float(_Split_89ed63cb625cb3878c183d0b71c03400_R_1_Float, _Split_89ed63cb625cb3878c183d0b71c03400_B_3_Float, float(0), float(0), _Combine_cf2d04ff119ad88493f6460431765cbb_RGBA_4_Vector4, _Combine_cf2d04ff119ad88493f6460431765cbb_RGB_5_Vector3, _Combine_cf2d04ff119ad88493f6460431765cbb_RG_6_Vector2);
|
|
float _Property_47988ec10c0c18879d461e00bed806e7_Out_0_Float = Vector1_41461AC9;
|
|
float4 _Multiply_14cec4902d0a00829e4555071a1b8ad1_Out_2_Vector4;
|
|
Unity_Multiply_float4_float4(_Combine_cf2d04ff119ad88493f6460431765cbb_RGBA_4_Vector4, (_Property_47988ec10c0c18879d461e00bed806e7_Out_0_Float.xxxx), _Multiply_14cec4902d0a00829e4555071a1b8ad1_Out_2_Vector4);
|
|
float3 _Sign_b826e0ff2d95ec8cb2b2cbbd7ea2eab6_Out_1_Vector3;
|
|
Unity_Sign_float3(IN.WorldSpaceNormal, _Sign_b826e0ff2d95ec8cb2b2cbbd7ea2eab6_Out_1_Vector3);
|
|
float _Split_742547a7039de986a646d04c157ae549_R_1_Float = _Sign_b826e0ff2d95ec8cb2b2cbbd7ea2eab6_Out_1_Vector3[0];
|
|
float _Split_742547a7039de986a646d04c157ae549_G_2_Float = _Sign_b826e0ff2d95ec8cb2b2cbbd7ea2eab6_Out_1_Vector3[1];
|
|
float _Split_742547a7039de986a646d04c157ae549_B_3_Float = _Sign_b826e0ff2d95ec8cb2b2cbbd7ea2eab6_Out_1_Vector3[2];
|
|
float _Split_742547a7039de986a646d04c157ae549_A_4_Float = 0;
|
|
float2 _Vector2_40a8919e571ec18499de72022c155b38_Out_0_Vector2 = float2(_Split_742547a7039de986a646d04c157ae549_G_2_Float, float(1));
|
|
float2 _Multiply_5fa32af59cdca88389832336b2268bd5_Out_2_Vector2;
|
|
Unity_Multiply_float2_float2((_Multiply_14cec4902d0a00829e4555071a1b8ad1_Out_2_Vector4.xy), _Vector2_40a8919e571ec18499de72022c155b38_Out_0_Vector2, _Multiply_5fa32af59cdca88389832336b2268bd5_Out_2_Vector2);
|
|
UnitySamplerState _Property_544c7fa9dfe54e30a0df9d605340a374_Out_0_SamplerState = _SamplerState;
|
|
float4 _SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_RGBA_0_Vector4 = SAMPLE_TEXTURE2D(_Property_3e01b4d2fc68d48ba3acbba9d5881e59_Out_0_Texture2D.tex, _Property_544c7fa9dfe54e30a0df9d605340a374_Out_0_SamplerState.samplerstate, _Property_3e01b4d2fc68d48ba3acbba9d5881e59_Out_0_Texture2D.GetTransformedUV(_Multiply_5fa32af59cdca88389832336b2268bd5_Out_2_Vector2) );
|
|
float _SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_R_4_Float = _SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_RGBA_0_Vector4.r;
|
|
float _SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_G_5_Float = _SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_RGBA_0_Vector4.g;
|
|
float _SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_B_6_Float = _SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_RGBA_0_Vector4.b;
|
|
float _SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_A_7_Float = _SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_RGBA_0_Vector4.a;
|
|
float3 _Absolute_644b798714827680b39bf5d34f70385f_Out_1_Vector3;
|
|
Unity_Absolute_float3(IN.WorldSpaceNormal, _Absolute_644b798714827680b39bf5d34f70385f_Out_1_Vector3);
|
|
float _Property_adc4c59482221c8aad681c6558728ac9_Out_0_Float = Vector1_E4D1C13A;
|
|
float3 _Power_ee478822a04529849ae8df1636c29fe2_Out_2_Vector3;
|
|
Unity_Power_float3(_Absolute_644b798714827680b39bf5d34f70385f_Out_1_Vector3, (_Property_adc4c59482221c8aad681c6558728ac9_Out_0_Float.xxx), _Power_ee478822a04529849ae8df1636c29fe2_Out_2_Vector3);
|
|
float3 _Multiply_b386a937554d73828e437d126d69608b_Out_2_Vector3;
|
|
Unity_Multiply_float3_float3(_Power_ee478822a04529849ae8df1636c29fe2_Out_2_Vector3, _Power_ee478822a04529849ae8df1636c29fe2_Out_2_Vector3, _Multiply_b386a937554d73828e437d126d69608b_Out_2_Vector3);
|
|
float _Split_ae83014fcbd9f7879a0b91fa66dc9718_R_1_Float = _Multiply_b386a937554d73828e437d126d69608b_Out_2_Vector3[0];
|
|
float _Split_ae83014fcbd9f7879a0b91fa66dc9718_G_2_Float = _Multiply_b386a937554d73828e437d126d69608b_Out_2_Vector3[1];
|
|
float _Split_ae83014fcbd9f7879a0b91fa66dc9718_B_3_Float = _Multiply_b386a937554d73828e437d126d69608b_Out_2_Vector3[2];
|
|
float _Split_ae83014fcbd9f7879a0b91fa66dc9718_A_4_Float = 0;
|
|
float4 _Multiply_2e1040ca9c98d085ace76ee93f094039_Out_2_Vector4;
|
|
Unity_Multiply_float4_float4(_SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_RGBA_0_Vector4, (_Split_ae83014fcbd9f7879a0b91fa66dc9718_G_2_Float.xxxx), _Multiply_2e1040ca9c98d085ace76ee93f094039_Out_2_Vector4);
|
|
float4 _Combine_192c2c4a69be588b90ca005a32e22552_RGBA_4_Vector4;
|
|
float3 _Combine_192c2c4a69be588b90ca005a32e22552_RGB_5_Vector3;
|
|
float2 _Combine_192c2c4a69be588b90ca005a32e22552_RG_6_Vector2;
|
|
Unity_Combine_float(_Split_89ed63cb625cb3878c183d0b71c03400_R_1_Float, _Split_89ed63cb625cb3878c183d0b71c03400_G_2_Float, float(0), float(0), _Combine_192c2c4a69be588b90ca005a32e22552_RGBA_4_Vector4, _Combine_192c2c4a69be588b90ca005a32e22552_RGB_5_Vector3, _Combine_192c2c4a69be588b90ca005a32e22552_RG_6_Vector2);
|
|
float4 _Multiply_138240d0d4846e87b0febabec0d6891b_Out_2_Vector4;
|
|
Unity_Multiply_float4_float4(_Combine_192c2c4a69be588b90ca005a32e22552_RGBA_4_Vector4, (_Property_47988ec10c0c18879d461e00bed806e7_Out_0_Float.xxxx), _Multiply_138240d0d4846e87b0febabec0d6891b_Out_2_Vector4);
|
|
float _Multiply_014402ded5a3988a8c18ba07636ea5a7_Out_2_Float;
|
|
Unity_Multiply_float_float(_Split_742547a7039de986a646d04c157ae549_B_3_Float, -1, _Multiply_014402ded5a3988a8c18ba07636ea5a7_Out_2_Float);
|
|
float2 _Vector2_caa25d55d456a58982bdfc39b1b43f3f_Out_0_Vector2 = float2(_Multiply_014402ded5a3988a8c18ba07636ea5a7_Out_2_Float, float(1));
|
|
float2 _Multiply_a67201b6e1a0a28c98cd9d06e8b09543_Out_2_Vector2;
|
|
Unity_Multiply_float2_float2((_Multiply_138240d0d4846e87b0febabec0d6891b_Out_2_Vector4.xy), _Vector2_caa25d55d456a58982bdfc39b1b43f3f_Out_0_Vector2, _Multiply_a67201b6e1a0a28c98cd9d06e8b09543_Out_2_Vector2);
|
|
float4 _SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_RGBA_0_Vector4 = SAMPLE_TEXTURE2D(_Property_3e01b4d2fc68d48ba3acbba9d5881e59_Out_0_Texture2D.tex, _Property_544c7fa9dfe54e30a0df9d605340a374_Out_0_SamplerState.samplerstate, _Property_3e01b4d2fc68d48ba3acbba9d5881e59_Out_0_Texture2D.GetTransformedUV(_Multiply_a67201b6e1a0a28c98cd9d06e8b09543_Out_2_Vector2) );
|
|
float _SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_R_4_Float = _SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_RGBA_0_Vector4.r;
|
|
float _SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_G_5_Float = _SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_RGBA_0_Vector4.g;
|
|
float _SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_B_6_Float = _SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_RGBA_0_Vector4.b;
|
|
float _SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_A_7_Float = _SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_RGBA_0_Vector4.a;
|
|
float4 _Multiply_7bb4009c92b108849ac6ca92bc1442f2_Out_2_Vector4;
|
|
Unity_Multiply_float4_float4(_SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_RGBA_0_Vector4, (_Split_ae83014fcbd9f7879a0b91fa66dc9718_B_3_Float.xxxx), _Multiply_7bb4009c92b108849ac6ca92bc1442f2_Out_2_Vector4);
|
|
float4 _Combine_1e9ffdba42d6918fb7a4b185f1585d2a_RGBA_4_Vector4;
|
|
float3 _Combine_1e9ffdba42d6918fb7a4b185f1585d2a_RGB_5_Vector3;
|
|
float2 _Combine_1e9ffdba42d6918fb7a4b185f1585d2a_RG_6_Vector2;
|
|
Unity_Combine_float(_Split_89ed63cb625cb3878c183d0b71c03400_B_3_Float, _Split_89ed63cb625cb3878c183d0b71c03400_G_2_Float, float(0), float(0), _Combine_1e9ffdba42d6918fb7a4b185f1585d2a_RGBA_4_Vector4, _Combine_1e9ffdba42d6918fb7a4b185f1585d2a_RGB_5_Vector3, _Combine_1e9ffdba42d6918fb7a4b185f1585d2a_RG_6_Vector2);
|
|
float4 _Multiply_2c0864423b014f8b8af8523f68cbb63c_Out_2_Vector4;
|
|
Unity_Multiply_float4_float4(_Combine_1e9ffdba42d6918fb7a4b185f1585d2a_RGBA_4_Vector4, (_Property_47988ec10c0c18879d461e00bed806e7_Out_0_Float.xxxx), _Multiply_2c0864423b014f8b8af8523f68cbb63c_Out_2_Vector4);
|
|
float2 _Vector2_54dfd40df2fc78809955dd272f2cf0c3_Out_0_Vector2 = float2(_Split_742547a7039de986a646d04c157ae549_R_1_Float, float(1));
|
|
float2 _Multiply_addbd5fcede95f80bbb806c94e49ef63_Out_2_Vector2;
|
|
Unity_Multiply_float2_float2((_Multiply_2c0864423b014f8b8af8523f68cbb63c_Out_2_Vector4.xy), _Vector2_54dfd40df2fc78809955dd272f2cf0c3_Out_0_Vector2, _Multiply_addbd5fcede95f80bbb806c94e49ef63_Out_2_Vector2);
|
|
float4 _SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_RGBA_0_Vector4 = SAMPLE_TEXTURE2D(_Property_3e01b4d2fc68d48ba3acbba9d5881e59_Out_0_Texture2D.tex, _Property_544c7fa9dfe54e30a0df9d605340a374_Out_0_SamplerState.samplerstate, _Property_3e01b4d2fc68d48ba3acbba9d5881e59_Out_0_Texture2D.GetTransformedUV(_Multiply_addbd5fcede95f80bbb806c94e49ef63_Out_2_Vector2) );
|
|
float _SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_R_4_Float = _SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_RGBA_0_Vector4.r;
|
|
float _SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_G_5_Float = _SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_RGBA_0_Vector4.g;
|
|
float _SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_B_6_Float = _SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_RGBA_0_Vector4.b;
|
|
float _SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_A_7_Float = _SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_RGBA_0_Vector4.a;
|
|
float4 _Multiply_77818c22e359fc8cbb7dd20216a8db72_Out_2_Vector4;
|
|
Unity_Multiply_float4_float4(_SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_RGBA_0_Vector4, (_Split_ae83014fcbd9f7879a0b91fa66dc9718_R_1_Float.xxxx), _Multiply_77818c22e359fc8cbb7dd20216a8db72_Out_2_Vector4);
|
|
float4 _Add_769d9ee909c9238dbbf72d2800a2f268_Out_2_Vector4;
|
|
Unity_Add_float4(_Multiply_7bb4009c92b108849ac6ca92bc1442f2_Out_2_Vector4, _Multiply_77818c22e359fc8cbb7dd20216a8db72_Out_2_Vector4, _Add_769d9ee909c9238dbbf72d2800a2f268_Out_2_Vector4);
|
|
float4 _Add_14295f72880e4b87a1baf1ced943ac40_Out_2_Vector4;
|
|
Unity_Add_float4(_Multiply_2e1040ca9c98d085ace76ee93f094039_Out_2_Vector4, _Add_769d9ee909c9238dbbf72d2800a2f268_Out_2_Vector4, _Add_14295f72880e4b87a1baf1ced943ac40_Out_2_Vector4);
|
|
float _Add_e59af300bba2498db32eac1412123447_Out_2_Float;
|
|
Unity_Add_float(_Split_ae83014fcbd9f7879a0b91fa66dc9718_R_1_Float, _Split_ae83014fcbd9f7879a0b91fa66dc9718_G_2_Float, _Add_e59af300bba2498db32eac1412123447_Out_2_Float);
|
|
float _Add_e855069f047fae8ea9027d56acb61e56_Out_2_Float;
|
|
Unity_Add_float(_Add_e59af300bba2498db32eac1412123447_Out_2_Float, _Split_ae83014fcbd9f7879a0b91fa66dc9718_B_3_Float, _Add_e855069f047fae8ea9027d56acb61e56_Out_2_Float);
|
|
float4 _Divide_91ae4b94f1d9b78e99d0472293b8098c_Out_2_Vector4;
|
|
Unity_Divide_float4(_Add_14295f72880e4b87a1baf1ced943ac40_Out_2_Vector4, (_Add_e855069f047fae8ea9027d56acb61e56_Out_2_Float.xxxx), _Divide_91ae4b94f1d9b78e99d0472293b8098c_Out_2_Vector4);
|
|
XYZ_1 = _Divide_91ae4b94f1d9b78e99d0472293b8098c_Out_2_Vector4;
|
|
XZ_2 = _SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_RGBA_0_Vector4;
|
|
YZ_3 = _SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_RGBA_0_Vector4;
|
|
XY_4 = _SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_RGBA_0_Vector4;
|
|
}
|
|
|
|
void Unity_Clamp_float(float In, float Min, float Max, out float Out)
|
|
{
|
|
Out = clamp(In, Min, Max);
|
|
}
|
|
|
|
void Unity_Absolute_float(float In, out float Out)
|
|
{
|
|
Out = abs(In);
|
|
}
|
|
|
|
void Unity_Power_float(float A, float B, out float Out)
|
|
{
|
|
Out = pow(A, B);
|
|
}
|
|
|
|
void Unity_Clamp_float4(float4 In, float4 Min, float4 Max, out float4 Out)
|
|
{
|
|
Out = clamp(In, Min, Max);
|
|
}
|
|
|
|
void Unity_Branch_float4(float Predicate, float4 True, float4 False, out float4 Out)
|
|
{
|
|
Out = Predicate ? True : False;
|
|
}
|
|
|
|
void Unity_TilingAndOffset_float(float2 UV, float2 Tiling, float2 Offset, out float2 Out)
|
|
{
|
|
Out = UV * Tiling + Offset;
|
|
}
|
|
|
|
void Unity_Saturate_float(float In, out float Out)
|
|
{
|
|
Out = saturate(In);
|
|
}
|
|
|
|
void Unity_SquareRoot_float4(float4 In, out float4 Out)
|
|
{
|
|
Out = sqrt(In);
|
|
}
|
|
|
|
void Unity_Sign_float(float In, out float Out)
|
|
{
|
|
Out = sign(In);
|
|
}
|
|
|
|
void Unity_Ceiling_float(float In, out float Out)
|
|
{
|
|
Out = ceil(In);
|
|
}
|
|
|
|
void Unity_Lerp_float4(float4 A, float4 B, float4 T, out float4 Out)
|
|
{
|
|
Out = lerp(A, B, T);
|
|
}
|
|
|
|
struct Bindings_BlendOverlayBaseColor_acdb3dfca72bd6b42bbc35f4613331a2_float
|
|
{
|
|
};
|
|
|
|
void SG_BlendOverlayBaseColor_acdb3dfca72bd6b42bbc35f4613331a2_float(float4 Color_9AA111D3, float Vector1_FBE622A2, float Vector1_8C15C351, Bindings_BlendOverlayBaseColor_acdb3dfca72bd6b42bbc35f4613331a2_float IN, out float3 OutVector4_1)
|
|
{
|
|
float4 _Property_012510d774fb7f8b860f5270dca4500f_Out_0_Vector4 = Color_9AA111D3;
|
|
float4 _SquareRoot_c2c57d0223a9538aa9240890c3cacb0c_Out_1_Vector4;
|
|
Unity_SquareRoot_float4(_Property_012510d774fb7f8b860f5270dca4500f_Out_0_Vector4, _SquareRoot_c2c57d0223a9538aa9240890c3cacb0c_Out_1_Vector4);
|
|
float _Property_a00e29241d12f983b30177515b367ec9_Out_0_Float = Vector1_FBE622A2;
|
|
float _Sign_343a45ede7349283a681c6bd9998fd8e_Out_1_Float;
|
|
Unity_Sign_float(_Property_a00e29241d12f983b30177515b367ec9_Out_0_Float, _Sign_343a45ede7349283a681c6bd9998fd8e_Out_1_Float);
|
|
float _Add_681019b8f5d3d68bb482d419c9fc61a9_Out_2_Float;
|
|
Unity_Add_float(_Sign_343a45ede7349283a681c6bd9998fd8e_Out_1_Float, float(1), _Add_681019b8f5d3d68bb482d419c9fc61a9_Out_2_Float);
|
|
float _Multiply_e8f4cb722712a880ac0db6c7461427f7_Out_2_Float;
|
|
Unity_Multiply_float_float(_Add_681019b8f5d3d68bb482d419c9fc61a9_Out_2_Float, 0.5, _Multiply_e8f4cb722712a880ac0db6c7461427f7_Out_2_Float);
|
|
float _Ceiling_95ad15988aa9b98184875fa754feae01_Out_1_Float;
|
|
Unity_Ceiling_float(_Multiply_e8f4cb722712a880ac0db6c7461427f7_Out_2_Float, _Ceiling_95ad15988aa9b98184875fa754feae01_Out_1_Float);
|
|
float _Property_2db1c747a05ee284a8b00076062f91a4_Out_0_Float = Vector1_8C15C351;
|
|
float _Multiply_9564ecda5193bc8286d9ff771c9226cd_Out_2_Float;
|
|
Unity_Multiply_float_float(_Property_2db1c747a05ee284a8b00076062f91a4_Out_0_Float, _Property_2db1c747a05ee284a8b00076062f91a4_Out_0_Float, _Multiply_9564ecda5193bc8286d9ff771c9226cd_Out_2_Float);
|
|
float4 _Lerp_b3cdb01fc3c5b988ac9b184943bf7c01_Out_3_Vector4;
|
|
Unity_Lerp_float4(_SquareRoot_c2c57d0223a9538aa9240890c3cacb0c_Out_1_Vector4, (_Ceiling_95ad15988aa9b98184875fa754feae01_Out_1_Float.xxxx), (_Multiply_9564ecda5193bc8286d9ff771c9226cd_Out_2_Float.xxxx), _Lerp_b3cdb01fc3c5b988ac9b184943bf7c01_Out_3_Vector4);
|
|
float4 _Multiply_39d1daff98488f8ea2cd794ad4f20926_Out_2_Vector4;
|
|
Unity_Multiply_float4_float4(_Lerp_b3cdb01fc3c5b988ac9b184943bf7c01_Out_3_Vector4, _Lerp_b3cdb01fc3c5b988ac9b184943bf7c01_Out_3_Vector4, _Multiply_39d1daff98488f8ea2cd794ad4f20926_Out_2_Vector4);
|
|
OutVector4_1 = (_Multiply_39d1daff98488f8ea2cd794ad4f20926_Out_2_Vector4.xyz);
|
|
}
|
|
|
|
void Unity_Add_float2(float2 A, float2 B, out float2 Out)
|
|
{
|
|
Out = A + B;
|
|
}
|
|
|
|
void Unity_DotProduct_float2(float2 A, float2 B, out float Out)
|
|
{
|
|
Out = dot(A, B);
|
|
}
|
|
|
|
void Unity_OneMinus_float(float In, out float Out)
|
|
{
|
|
Out = 1 - In;
|
|
}
|
|
|
|
void Unity_SquareRoot_float(float In, out float Out)
|
|
{
|
|
Out = sqrt(In);
|
|
}
|
|
|
|
void Unity_Add_float3(float3 A, float3 B, out float3 Out)
|
|
{
|
|
Out = A + B;
|
|
}
|
|
|
|
void Unity_Divide_float3(float3 A, float3 B, out float3 Out)
|
|
{
|
|
Out = A / B;
|
|
}
|
|
|
|
void Unity_Normalize_float3(float3 In, out float3 Out)
|
|
{
|
|
Out = normalize(In);
|
|
}
|
|
|
|
struct Bindings_TriplanarNMn_059da9746584140498cd018db3c76047_float
|
|
{
|
|
float3 WorldSpaceNormal;
|
|
float3 WorldSpaceTangent;
|
|
float3 WorldSpaceBiTangent;
|
|
float3 AbsoluteWorldSpacePosition;
|
|
};
|
|
|
|
void SG_TriplanarNMn_059da9746584140498cd018db3c76047_float(UnityTexture2D Texture2D_80A3D28F, float Vector1_41461AC9, float Vector1_E4D1C13A, UnitySamplerState _SamplerState, Bindings_TriplanarNMn_059da9746584140498cd018db3c76047_float IN, out float4 XYZ_1, out float4 XZ_2, out float4 YZ_3, out float4 XY_4)
|
|
{
|
|
UnityTexture2D _Property_3e01b4d2fc68d48ba3acbba9d5881e59_Out_0_Texture2D = Texture2D_80A3D28F;
|
|
float _Split_89ed63cb625cb3878c183d0b71c03400_R_1_Float = IN.AbsoluteWorldSpacePosition[0];
|
|
float _Split_89ed63cb625cb3878c183d0b71c03400_G_2_Float = IN.AbsoluteWorldSpacePosition[1];
|
|
float _Split_89ed63cb625cb3878c183d0b71c03400_B_3_Float = IN.AbsoluteWorldSpacePosition[2];
|
|
float _Split_89ed63cb625cb3878c183d0b71c03400_A_4_Float = 0;
|
|
float4 _Combine_cf2d04ff119ad88493f6460431765cbb_RGBA_4_Vector4;
|
|
float3 _Combine_cf2d04ff119ad88493f6460431765cbb_RGB_5_Vector3;
|
|
float2 _Combine_cf2d04ff119ad88493f6460431765cbb_RG_6_Vector2;
|
|
Unity_Combine_float(_Split_89ed63cb625cb3878c183d0b71c03400_R_1_Float, _Split_89ed63cb625cb3878c183d0b71c03400_B_3_Float, float(0), float(0), _Combine_cf2d04ff119ad88493f6460431765cbb_RGBA_4_Vector4, _Combine_cf2d04ff119ad88493f6460431765cbb_RGB_5_Vector3, _Combine_cf2d04ff119ad88493f6460431765cbb_RG_6_Vector2);
|
|
float _Property_47988ec10c0c18879d461e00bed806e7_Out_0_Float = Vector1_41461AC9;
|
|
float4 _Multiply_14cec4902d0a00829e4555071a1b8ad1_Out_2_Vector4;
|
|
Unity_Multiply_float4_float4(_Combine_cf2d04ff119ad88493f6460431765cbb_RGBA_4_Vector4, (_Property_47988ec10c0c18879d461e00bed806e7_Out_0_Float.xxxx), _Multiply_14cec4902d0a00829e4555071a1b8ad1_Out_2_Vector4);
|
|
float3 _Sign_3a6ebf59931cf08cb0482e0144ddac24_Out_1_Vector3;
|
|
Unity_Sign_float3(IN.WorldSpaceNormal, _Sign_3a6ebf59931cf08cb0482e0144ddac24_Out_1_Vector3);
|
|
float _Split_6299d4ddcc4c74828aea40a46fdb896e_R_1_Float = _Sign_3a6ebf59931cf08cb0482e0144ddac24_Out_1_Vector3[0];
|
|
float _Split_6299d4ddcc4c74828aea40a46fdb896e_G_2_Float = _Sign_3a6ebf59931cf08cb0482e0144ddac24_Out_1_Vector3[1];
|
|
float _Split_6299d4ddcc4c74828aea40a46fdb896e_B_3_Float = _Sign_3a6ebf59931cf08cb0482e0144ddac24_Out_1_Vector3[2];
|
|
float _Split_6299d4ddcc4c74828aea40a46fdb896e_A_4_Float = 0;
|
|
float2 _Vector2_b76cb1842101e58b9e636d49b075c612_Out_0_Vector2 = float2(_Split_6299d4ddcc4c74828aea40a46fdb896e_G_2_Float, float(1));
|
|
float2 _Multiply_a87753ad90594382bf3a3a95abbadbc8_Out_2_Vector2;
|
|
Unity_Multiply_float2_float2((_Multiply_14cec4902d0a00829e4555071a1b8ad1_Out_2_Vector4.xy), _Vector2_b76cb1842101e58b9e636d49b075c612_Out_0_Vector2, _Multiply_a87753ad90594382bf3a3a95abbadbc8_Out_2_Vector2);
|
|
UnitySamplerState _Property_8a2b8589cd3a42a1879a29c28e4f711f_Out_0_SamplerState = _SamplerState;
|
|
float4 _SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_RGBA_0_Vector4 = SAMPLE_TEXTURE2D(_Property_3e01b4d2fc68d48ba3acbba9d5881e59_Out_0_Texture2D.tex, _Property_8a2b8589cd3a42a1879a29c28e4f711f_Out_0_SamplerState.samplerstate, _Property_3e01b4d2fc68d48ba3acbba9d5881e59_Out_0_Texture2D.GetTransformedUV(_Multiply_a87753ad90594382bf3a3a95abbadbc8_Out_2_Vector2) );
|
|
_SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_RGBA_0_Vector4.rgb = UnpackNormal(_SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_RGBA_0_Vector4);
|
|
float _SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_R_4_Float = _SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_RGBA_0_Vector4.r;
|
|
float _SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_G_5_Float = _SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_RGBA_0_Vector4.g;
|
|
float _SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_B_6_Float = _SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_RGBA_0_Vector4.b;
|
|
float _SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_A_7_Float = _SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_RGBA_0_Vector4.a;
|
|
float2 _Vector2_ad6bd100e273d78fa409a30a77bfa2cc_Out_0_Vector2 = float2(_SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_R_4_Float, _SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_G_5_Float);
|
|
float2 _Multiply_31e8db88ee20c985a9850d1a58f3282b_Out_2_Vector2;
|
|
Unity_Multiply_float2_float2(_Vector2_ad6bd100e273d78fa409a30a77bfa2cc_Out_0_Vector2, _Vector2_b76cb1842101e58b9e636d49b075c612_Out_0_Vector2, _Multiply_31e8db88ee20c985a9850d1a58f3282b_Out_2_Vector2);
|
|
float _Split_5ed44bf2eca0868f81eb18100f49d1fa_R_1_Float = IN.WorldSpaceNormal[0];
|
|
float _Split_5ed44bf2eca0868f81eb18100f49d1fa_G_2_Float = IN.WorldSpaceNormal[1];
|
|
float _Split_5ed44bf2eca0868f81eb18100f49d1fa_B_3_Float = IN.WorldSpaceNormal[2];
|
|
float _Split_5ed44bf2eca0868f81eb18100f49d1fa_A_4_Float = 0;
|
|
float2 _Vector2_70e5837843f28b8b9d64cada3697bd5a_Out_0_Vector2 = float2(_Split_5ed44bf2eca0868f81eb18100f49d1fa_R_1_Float, _Split_5ed44bf2eca0868f81eb18100f49d1fa_B_3_Float);
|
|
float2 _Add_1145b2f896593d80aa864a34e6702562_Out_2_Vector2;
|
|
Unity_Add_float2(_Multiply_31e8db88ee20c985a9850d1a58f3282b_Out_2_Vector2, _Vector2_70e5837843f28b8b9d64cada3697bd5a_Out_0_Vector2, _Add_1145b2f896593d80aa864a34e6702562_Out_2_Vector2);
|
|
float _Split_2bc77ca2d17bd78cb2383770ce50b179_R_1_Float = _Add_1145b2f896593d80aa864a34e6702562_Out_2_Vector2[0];
|
|
float _Split_2bc77ca2d17bd78cb2383770ce50b179_G_2_Float = _Add_1145b2f896593d80aa864a34e6702562_Out_2_Vector2[1];
|
|
float _Split_2bc77ca2d17bd78cb2383770ce50b179_B_3_Float = 0;
|
|
float _Split_2bc77ca2d17bd78cb2383770ce50b179_A_4_Float = 0;
|
|
float _Multiply_e4fe778b81456d819c52bb414cd95968_Out_2_Float;
|
|
Unity_Multiply_float_float(_SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_B_6_Float, _Split_5ed44bf2eca0868f81eb18100f49d1fa_G_2_Float, _Multiply_e4fe778b81456d819c52bb414cd95968_Out_2_Float);
|
|
float3 _Vector3_08f62c5c01619e849f1a7d85a44531ac_Out_0_Vector3 = float3(_Split_2bc77ca2d17bd78cb2383770ce50b179_R_1_Float, _Multiply_e4fe778b81456d819c52bb414cd95968_Out_2_Float, _Split_2bc77ca2d17bd78cb2383770ce50b179_G_2_Float);
|
|
float3 _Absolute_644b798714827680b39bf5d34f70385f_Out_1_Vector3;
|
|
Unity_Absolute_float3(IN.WorldSpaceNormal, _Absolute_644b798714827680b39bf5d34f70385f_Out_1_Vector3);
|
|
float _Property_adc4c59482221c8aad681c6558728ac9_Out_0_Float = Vector1_E4D1C13A;
|
|
float3 _Power_ee478822a04529849ae8df1636c29fe2_Out_2_Vector3;
|
|
Unity_Power_float3(_Absolute_644b798714827680b39bf5d34f70385f_Out_1_Vector3, (_Property_adc4c59482221c8aad681c6558728ac9_Out_0_Float.xxx), _Power_ee478822a04529849ae8df1636c29fe2_Out_2_Vector3);
|
|
float3 _Multiply_b386a937554d73828e437d126d69608b_Out_2_Vector3;
|
|
Unity_Multiply_float3_float3(_Power_ee478822a04529849ae8df1636c29fe2_Out_2_Vector3, _Power_ee478822a04529849ae8df1636c29fe2_Out_2_Vector3, _Multiply_b386a937554d73828e437d126d69608b_Out_2_Vector3);
|
|
float _Split_ae83014fcbd9f7879a0b91fa66dc9718_R_1_Float = _Multiply_b386a937554d73828e437d126d69608b_Out_2_Vector3[0];
|
|
float _Split_ae83014fcbd9f7879a0b91fa66dc9718_G_2_Float = _Multiply_b386a937554d73828e437d126d69608b_Out_2_Vector3[1];
|
|
float _Split_ae83014fcbd9f7879a0b91fa66dc9718_B_3_Float = _Multiply_b386a937554d73828e437d126d69608b_Out_2_Vector3[2];
|
|
float _Split_ae83014fcbd9f7879a0b91fa66dc9718_A_4_Float = 0;
|
|
float3 _Multiply_2e1040ca9c98d085ace76ee93f094039_Out_2_Vector3;
|
|
Unity_Multiply_float3_float3(_Vector3_08f62c5c01619e849f1a7d85a44531ac_Out_0_Vector3, (_Split_ae83014fcbd9f7879a0b91fa66dc9718_G_2_Float.xxx), _Multiply_2e1040ca9c98d085ace76ee93f094039_Out_2_Vector3);
|
|
float4 _Combine_192c2c4a69be588b90ca005a32e22552_RGBA_4_Vector4;
|
|
float3 _Combine_192c2c4a69be588b90ca005a32e22552_RGB_5_Vector3;
|
|
float2 _Combine_192c2c4a69be588b90ca005a32e22552_RG_6_Vector2;
|
|
Unity_Combine_float(_Split_89ed63cb625cb3878c183d0b71c03400_R_1_Float, _Split_89ed63cb625cb3878c183d0b71c03400_G_2_Float, float(0), float(0), _Combine_192c2c4a69be588b90ca005a32e22552_RGBA_4_Vector4, _Combine_192c2c4a69be588b90ca005a32e22552_RGB_5_Vector3, _Combine_192c2c4a69be588b90ca005a32e22552_RG_6_Vector2);
|
|
float4 _Multiply_138240d0d4846e87b0febabec0d6891b_Out_2_Vector4;
|
|
Unity_Multiply_float4_float4(_Combine_192c2c4a69be588b90ca005a32e22552_RGBA_4_Vector4, (_Property_47988ec10c0c18879d461e00bed806e7_Out_0_Float.xxxx), _Multiply_138240d0d4846e87b0febabec0d6891b_Out_2_Vector4);
|
|
float _Multiply_de711f4a4614bd89a463b53374cf4036_Out_2_Float;
|
|
Unity_Multiply_float_float(_Split_6299d4ddcc4c74828aea40a46fdb896e_B_3_Float, -1, _Multiply_de711f4a4614bd89a463b53374cf4036_Out_2_Float);
|
|
float2 _Vector2_4ed33f0c73b2698fa6f3c1b77fe76808_Out_0_Vector2 = float2(_Multiply_de711f4a4614bd89a463b53374cf4036_Out_2_Float, float(1));
|
|
float2 _Multiply_2af6058cc6ccb88caefd2799bb5941e8_Out_2_Vector2;
|
|
Unity_Multiply_float2_float2((_Multiply_138240d0d4846e87b0febabec0d6891b_Out_2_Vector4.xy), _Vector2_4ed33f0c73b2698fa6f3c1b77fe76808_Out_0_Vector2, _Multiply_2af6058cc6ccb88caefd2799bb5941e8_Out_2_Vector2);
|
|
float4 _SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_RGBA_0_Vector4 = SAMPLE_TEXTURE2D(_Property_3e01b4d2fc68d48ba3acbba9d5881e59_Out_0_Texture2D.tex, _Property_8a2b8589cd3a42a1879a29c28e4f711f_Out_0_SamplerState.samplerstate, _Property_3e01b4d2fc68d48ba3acbba9d5881e59_Out_0_Texture2D.GetTransformedUV(_Multiply_2af6058cc6ccb88caefd2799bb5941e8_Out_2_Vector2) );
|
|
_SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_RGBA_0_Vector4.rgb = UnpackNormal(_SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_RGBA_0_Vector4);
|
|
float _SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_R_4_Float = _SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_RGBA_0_Vector4.r;
|
|
float _SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_G_5_Float = _SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_RGBA_0_Vector4.g;
|
|
float _SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_B_6_Float = _SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_RGBA_0_Vector4.b;
|
|
float _SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_A_7_Float = _SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_RGBA_0_Vector4.a;
|
|
float2 _Vector2_fe9aedd4528c7486ada4abdca0b0944e_Out_0_Vector2 = float2(_SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_R_4_Float, _SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_G_5_Float);
|
|
float2 _Multiply_02b9b4665ad9918d8721bcaddc82f06f_Out_2_Vector2;
|
|
Unity_Multiply_float2_float2(_Vector2_fe9aedd4528c7486ada4abdca0b0944e_Out_0_Vector2, _Vector2_4ed33f0c73b2698fa6f3c1b77fe76808_Out_0_Vector2, _Multiply_02b9b4665ad9918d8721bcaddc82f06f_Out_2_Vector2);
|
|
float2 _Vector2_a74a85274da15181abb63cc5e8df0de1_Out_0_Vector2 = float2(_Split_5ed44bf2eca0868f81eb18100f49d1fa_R_1_Float, _Split_5ed44bf2eca0868f81eb18100f49d1fa_G_2_Float);
|
|
float2 _Add_b227c84042055e8faa1a9fdc69529707_Out_2_Vector2;
|
|
Unity_Add_float2(_Multiply_02b9b4665ad9918d8721bcaddc82f06f_Out_2_Vector2, _Vector2_a74a85274da15181abb63cc5e8df0de1_Out_0_Vector2, _Add_b227c84042055e8faa1a9fdc69529707_Out_2_Vector2);
|
|
float _Split_2cfb9eacd8762483941459cdf28bda97_R_1_Float = _Add_b227c84042055e8faa1a9fdc69529707_Out_2_Vector2[0];
|
|
float _Split_2cfb9eacd8762483941459cdf28bda97_G_2_Float = _Add_b227c84042055e8faa1a9fdc69529707_Out_2_Vector2[1];
|
|
float _Split_2cfb9eacd8762483941459cdf28bda97_B_3_Float = 0;
|
|
float _Split_2cfb9eacd8762483941459cdf28bda97_A_4_Float = 0;
|
|
float _Multiply_1d65ce08ce672087879125f2e13c4004_Out_2_Float;
|
|
Unity_Multiply_float_float(_SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_B_6_Float, _Split_5ed44bf2eca0868f81eb18100f49d1fa_B_3_Float, _Multiply_1d65ce08ce672087879125f2e13c4004_Out_2_Float);
|
|
float3 _Vector3_ba6cfb4671e8c58f9b41ea1dc23102ca_Out_0_Vector3 = float3(_Split_2cfb9eacd8762483941459cdf28bda97_R_1_Float, _Split_2cfb9eacd8762483941459cdf28bda97_G_2_Float, _Multiply_1d65ce08ce672087879125f2e13c4004_Out_2_Float);
|
|
float3 _Multiply_7bb4009c92b108849ac6ca92bc1442f2_Out_2_Vector3;
|
|
Unity_Multiply_float3_float3(_Vector3_ba6cfb4671e8c58f9b41ea1dc23102ca_Out_0_Vector3, (_Split_ae83014fcbd9f7879a0b91fa66dc9718_B_3_Float.xxx), _Multiply_7bb4009c92b108849ac6ca92bc1442f2_Out_2_Vector3);
|
|
float4 _Combine_1e9ffdba42d6918fb7a4b185f1585d2a_RGBA_4_Vector4;
|
|
float3 _Combine_1e9ffdba42d6918fb7a4b185f1585d2a_RGB_5_Vector3;
|
|
float2 _Combine_1e9ffdba42d6918fb7a4b185f1585d2a_RG_6_Vector2;
|
|
Unity_Combine_float(_Split_89ed63cb625cb3878c183d0b71c03400_B_3_Float, _Split_89ed63cb625cb3878c183d0b71c03400_G_2_Float, float(0), float(0), _Combine_1e9ffdba42d6918fb7a4b185f1585d2a_RGBA_4_Vector4, _Combine_1e9ffdba42d6918fb7a4b185f1585d2a_RGB_5_Vector3, _Combine_1e9ffdba42d6918fb7a4b185f1585d2a_RG_6_Vector2);
|
|
float4 _Multiply_2c0864423b014f8b8af8523f68cbb63c_Out_2_Vector4;
|
|
Unity_Multiply_float4_float4(_Combine_1e9ffdba42d6918fb7a4b185f1585d2a_RGBA_4_Vector4, (_Property_47988ec10c0c18879d461e00bed806e7_Out_0_Float.xxxx), _Multiply_2c0864423b014f8b8af8523f68cbb63c_Out_2_Vector4);
|
|
float2 _Vector2_a1e23e0f921b6484818f009a2b12a5ba_Out_0_Vector2 = float2(_Split_6299d4ddcc4c74828aea40a46fdb896e_R_1_Float, float(1));
|
|
float2 _Multiply_862402885a49f18cb87278ab53bc6744_Out_2_Vector2;
|
|
Unity_Multiply_float2_float2((_Multiply_2c0864423b014f8b8af8523f68cbb63c_Out_2_Vector4.xy), _Vector2_a1e23e0f921b6484818f009a2b12a5ba_Out_0_Vector2, _Multiply_862402885a49f18cb87278ab53bc6744_Out_2_Vector2);
|
|
float4 _SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_RGBA_0_Vector4 = SAMPLE_TEXTURE2D(_Property_3e01b4d2fc68d48ba3acbba9d5881e59_Out_0_Texture2D.tex, _Property_8a2b8589cd3a42a1879a29c28e4f711f_Out_0_SamplerState.samplerstate, _Property_3e01b4d2fc68d48ba3acbba9d5881e59_Out_0_Texture2D.GetTransformedUV(_Multiply_862402885a49f18cb87278ab53bc6744_Out_2_Vector2) );
|
|
_SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_RGBA_0_Vector4.rgb = UnpackNormal(_SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_RGBA_0_Vector4);
|
|
float _SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_R_4_Float = _SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_RGBA_0_Vector4.r;
|
|
float _SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_G_5_Float = _SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_RGBA_0_Vector4.g;
|
|
float _SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_B_6_Float = _SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_RGBA_0_Vector4.b;
|
|
float _SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_A_7_Float = _SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_RGBA_0_Vector4.a;
|
|
float _Multiply_4649b768be76d784a3284bacde795359_Out_2_Float;
|
|
Unity_Multiply_float_float(_SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_B_6_Float, _Split_5ed44bf2eca0868f81eb18100f49d1fa_R_1_Float, _Multiply_4649b768be76d784a3284bacde795359_Out_2_Float);
|
|
float2 _Vector2_819fcd5eb484438eacad1987576d7d67_Out_0_Vector2 = float2(_SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_R_4_Float, _SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_G_5_Float);
|
|
float2 _Multiply_58530ebb3c6d798b93686a76247bf505_Out_2_Vector2;
|
|
Unity_Multiply_float2_float2(_Vector2_819fcd5eb484438eacad1987576d7d67_Out_0_Vector2, _Vector2_a1e23e0f921b6484818f009a2b12a5ba_Out_0_Vector2, _Multiply_58530ebb3c6d798b93686a76247bf505_Out_2_Vector2);
|
|
float2 _Vector2_e293c112b2f49e88a5fe46dfb1fbeb40_Out_0_Vector2 = float2(_Split_5ed44bf2eca0868f81eb18100f49d1fa_B_3_Float, _Split_5ed44bf2eca0868f81eb18100f49d1fa_G_2_Float);
|
|
float2 _Add_cf00fb232c6e2b8e973ab2f84453f55e_Out_2_Vector2;
|
|
Unity_Add_float2(_Multiply_58530ebb3c6d798b93686a76247bf505_Out_2_Vector2, _Vector2_e293c112b2f49e88a5fe46dfb1fbeb40_Out_0_Vector2, _Add_cf00fb232c6e2b8e973ab2f84453f55e_Out_2_Vector2);
|
|
float _Split_3ea3e61d32bdd78f82c686b75ff3fd9b_R_1_Float = _Add_cf00fb232c6e2b8e973ab2f84453f55e_Out_2_Vector2[0];
|
|
float _Split_3ea3e61d32bdd78f82c686b75ff3fd9b_G_2_Float = _Add_cf00fb232c6e2b8e973ab2f84453f55e_Out_2_Vector2[1];
|
|
float _Split_3ea3e61d32bdd78f82c686b75ff3fd9b_B_3_Float = 0;
|
|
float _Split_3ea3e61d32bdd78f82c686b75ff3fd9b_A_4_Float = 0;
|
|
float3 _Vector3_13a08d5940172a84a78ee3d9b8766833_Out_0_Vector3 = float3(_Multiply_4649b768be76d784a3284bacde795359_Out_2_Float, _Split_3ea3e61d32bdd78f82c686b75ff3fd9b_G_2_Float, _Split_3ea3e61d32bdd78f82c686b75ff3fd9b_R_1_Float);
|
|
float3 _Multiply_77818c22e359fc8cbb7dd20216a8db72_Out_2_Vector3;
|
|
Unity_Multiply_float3_float3(_Vector3_13a08d5940172a84a78ee3d9b8766833_Out_0_Vector3, (_Split_ae83014fcbd9f7879a0b91fa66dc9718_R_1_Float.xxx), _Multiply_77818c22e359fc8cbb7dd20216a8db72_Out_2_Vector3);
|
|
float3 _Add_769d9ee909c9238dbbf72d2800a2f268_Out_2_Vector3;
|
|
Unity_Add_float3(_Multiply_7bb4009c92b108849ac6ca92bc1442f2_Out_2_Vector3, _Multiply_77818c22e359fc8cbb7dd20216a8db72_Out_2_Vector3, _Add_769d9ee909c9238dbbf72d2800a2f268_Out_2_Vector3);
|
|
float3 _Add_14295f72880e4b87a1baf1ced943ac40_Out_2_Vector3;
|
|
Unity_Add_float3(_Multiply_2e1040ca9c98d085ace76ee93f094039_Out_2_Vector3, _Add_769d9ee909c9238dbbf72d2800a2f268_Out_2_Vector3, _Add_14295f72880e4b87a1baf1ced943ac40_Out_2_Vector3);
|
|
float _Add_e59af300bba2498db32eac1412123447_Out_2_Float;
|
|
Unity_Add_float(_Split_ae83014fcbd9f7879a0b91fa66dc9718_R_1_Float, _Split_ae83014fcbd9f7879a0b91fa66dc9718_G_2_Float, _Add_e59af300bba2498db32eac1412123447_Out_2_Float);
|
|
float _Add_e855069f047fae8ea9027d56acb61e56_Out_2_Float;
|
|
Unity_Add_float(_Add_e59af300bba2498db32eac1412123447_Out_2_Float, _Split_ae83014fcbd9f7879a0b91fa66dc9718_B_3_Float, _Add_e855069f047fae8ea9027d56acb61e56_Out_2_Float);
|
|
float3 _Divide_91ae4b94f1d9b78e99d0472293b8098c_Out_2_Vector3;
|
|
Unity_Divide_float3(_Add_14295f72880e4b87a1baf1ced943ac40_Out_2_Vector3, (_Add_e855069f047fae8ea9027d56acb61e56_Out_2_Float.xxx), _Divide_91ae4b94f1d9b78e99d0472293b8098c_Out_2_Vector3);
|
|
float3 _Transform_73eecc0c3689d184a34c8d0f28a58adf_Out_1_Vector3;
|
|
{
|
|
float3x3 tangentTransform = float3x3(IN.WorldSpaceTangent, IN.WorldSpaceBiTangent, IN.WorldSpaceNormal);
|
|
_Transform_73eecc0c3689d184a34c8d0f28a58adf_Out_1_Vector3 = TransformWorldToTangent(_Divide_91ae4b94f1d9b78e99d0472293b8098c_Out_2_Vector3.xyz, tangentTransform, true);
|
|
}
|
|
float3 _Normalize_15ef346824db0a8797631ed8b998e673_Out_1_Vector3;
|
|
Unity_Normalize_float3(_Transform_73eecc0c3689d184a34c8d0f28a58adf_Out_1_Vector3, _Normalize_15ef346824db0a8797631ed8b998e673_Out_1_Vector3);
|
|
XYZ_1 = (float4(_Normalize_15ef346824db0a8797631ed8b998e673_Out_1_Vector3, 1.0));
|
|
XZ_2 = (float4(_Vector3_08f62c5c01619e849f1a7d85a44531ac_Out_0_Vector3, 1.0));
|
|
YZ_3 = (float4(_Vector3_ba6cfb4671e8c58f9b41ea1dc23102ca_Out_0_Vector3, 1.0));
|
|
XY_4 = (float4(_Vector3_13a08d5940172a84a78ee3d9b8766833_Out_0_Vector3, 1.0));
|
|
}
|
|
|
|
void Unity_NormalStrength_float(float3 In, float Strength, out float3 Out)
|
|
{
|
|
Out = float3(In.rg * Strength, lerp(1, In.b, saturate(Strength)));
|
|
}
|
|
|
|
void Unity_NormalBlend_float(float3 A, float3 B, out float3 Out)
|
|
{
|
|
Out = SafeNormalize(float3(A.rg + B.rg, A.b * B.b));
|
|
}
|
|
|
|
void Unity_Subtract_float(float A, float B, out float Out)
|
|
{
|
|
Out = A - B;
|
|
}
|
|
|
|
void Unity_Divide_float(float A, float B, out float Out)
|
|
{
|
|
Out = A / B;
|
|
}
|
|
|
|
void Unity_Lerp_float3(float3 A, float3 B, float3 T, out float3 Out)
|
|
{
|
|
Out = lerp(A, B, T);
|
|
}
|
|
|
|
void Unity_Remap_float(float In, float2 InMinMax, float2 OutMinMax, out float Out)
|
|
{
|
|
Out = OutMinMax.x + (In - InMinMax.x) * (OutMinMax.y - OutMinMax.x) / (InMinMax.y - InMinMax.x);
|
|
}
|
|
|
|
void Unity_Branch_float(float Predicate, float True, float False, out float Out)
|
|
{
|
|
Out = Predicate ? True : False;
|
|
}
|
|
|
|
void Unity_Lerp_float(float A, float B, float T, out float Out)
|
|
{
|
|
Out = lerp(A, B, T);
|
|
}
|
|
|
|
struct Bindings_BlendOverlayDetailSmoothness_06e12138dc89c0040b45a57abe520a1a_float
|
|
{
|
|
};
|
|
|
|
void SG_BlendOverlayDetailSmoothness_06e12138dc89c0040b45a57abe520a1a_float(float Vector1_32317166, float Vector1_FBE622A2, float Vector1_8C15C351, Bindings_BlendOverlayDetailSmoothness_06e12138dc89c0040b45a57abe520a1a_float IN, out float SmoothnessOverlay_1)
|
|
{
|
|
float _Property_728cc50521e9e988ac9cbff4872d5139_Out_0_Float = Vector1_32317166;
|
|
float _Property_a00e29241d12f983b30177515b367ec9_Out_0_Float = Vector1_FBE622A2;
|
|
float _Sign_343a45ede7349283a681c6bd9998fd8e_Out_1_Float;
|
|
Unity_Sign_float(_Property_a00e29241d12f983b30177515b367ec9_Out_0_Float, _Sign_343a45ede7349283a681c6bd9998fd8e_Out_1_Float);
|
|
float _Add_681019b8f5d3d68bb482d419c9fc61a9_Out_2_Float;
|
|
Unity_Add_float(_Sign_343a45ede7349283a681c6bd9998fd8e_Out_1_Float, float(1), _Add_681019b8f5d3d68bb482d419c9fc61a9_Out_2_Float);
|
|
float _Multiply_e8f4cb722712a880ac0db6c7461427f7_Out_2_Float;
|
|
Unity_Multiply_float_float(_Add_681019b8f5d3d68bb482d419c9fc61a9_Out_2_Float, 0.5, _Multiply_e8f4cb722712a880ac0db6c7461427f7_Out_2_Float);
|
|
float _Ceiling_95ad15988aa9b98184875fa754feae01_Out_1_Float;
|
|
Unity_Ceiling_float(_Multiply_e8f4cb722712a880ac0db6c7461427f7_Out_2_Float, _Ceiling_95ad15988aa9b98184875fa754feae01_Out_1_Float);
|
|
float _Property_2db1c747a05ee284a8b00076062f91a4_Out_0_Float = Vector1_8C15C351;
|
|
float _Lerp_b3cdb01fc3c5b988ac9b184943bf7c01_Out_3_Float;
|
|
Unity_Lerp_float(_Property_728cc50521e9e988ac9cbff4872d5139_Out_0_Float, _Ceiling_95ad15988aa9b98184875fa754feae01_Out_1_Float, _Property_2db1c747a05ee284a8b00076062f91a4_Out_0_Float, _Lerp_b3cdb01fc3c5b988ac9b184943bf7c01_Out_3_Float);
|
|
SmoothnessOverlay_1 = _Lerp_b3cdb01fc3c5b988ac9b184943bf7c01_Out_3_Float;
|
|
}
|
|
|
|
void Unity_Minimum_float(float A, float B, out float Out)
|
|
{
|
|
Out = min(A, B);
|
|
};
|
|
|
|
// Graph Vertex
|
|
struct VertexDescription
|
|
{
|
|
float3 Position;
|
|
float3 Normal;
|
|
float3 Tangent;
|
|
};
|
|
|
|
VertexDescription VertexDescriptionFunction(VertexDescriptionInputs IN)
|
|
{
|
|
VertexDescription description = (VertexDescription)0;
|
|
description.Position = IN.ObjectSpacePosition;
|
|
description.Normal = IN.ObjectSpaceNormal;
|
|
description.Tangent = IN.ObjectSpaceTangent;
|
|
return description;
|
|
}
|
|
|
|
// Graph Pixel
|
|
struct SurfaceDescription
|
|
{
|
|
float3 BaseColor;
|
|
float3 Emission;
|
|
float Alpha;
|
|
float3 BentNormal;
|
|
float Smoothness;
|
|
float Occlusion;
|
|
float3 NormalTS;
|
|
float Metallic;
|
|
};
|
|
|
|
SurfaceDescription SurfaceDescriptionFunction(SurfaceDescriptionInputs IN)
|
|
{
|
|
SurfaceDescription surface = (SurfaceDescription)0;
|
|
float _Property_72a5c604805a7b8ebbfd7acee03656aa_Out_0_Boolean = _CoverMaskRCurvature;
|
|
UnityTexture2D _Property_5f029bbc9f13b7858650859c3b63ebfd_Out_0_Texture2D = UnityBuildTexture2DStructNoScale(_BaseColorMap);
|
|
float4 _Property_a409d5fcafb9f182a4b2aea64204408f_Out_0_Vector4 = _BaseTilingOffset;
|
|
float4 _Divide_6a90cebe78e620828de587523daaa7e6_Out_2_Vector4;
|
|
Unity_Divide_float4(float4(1, 1, 0, 0), _Property_a409d5fcafb9f182a4b2aea64204408f_Out_0_Vector4, _Divide_6a90cebe78e620828de587523daaa7e6_Out_2_Vector4);
|
|
float _Property_3539de8c698c2981bb3c088d4ec52201_Out_0_Float = _BaseTriplanarThreshold;
|
|
Bindings_TriplanarNM_bc609ed95f52591469ab35dbfe0efcea_float _TriplanarNM_92d0433ff3938b8392407d2ab8713ac8;
|
|
_TriplanarNM_92d0433ff3938b8392407d2ab8713ac8.WorldSpaceNormal = IN.WorldSpaceNormal;
|
|
_TriplanarNM_92d0433ff3938b8392407d2ab8713ac8.AbsoluteWorldSpacePosition = IN.AbsoluteWorldSpacePosition;
|
|
float4 _TriplanarNM_92d0433ff3938b8392407d2ab8713ac8_XYZ_1_Vector4;
|
|
float4 _TriplanarNM_92d0433ff3938b8392407d2ab8713ac8_XZ_2_Vector4;
|
|
float4 _TriplanarNM_92d0433ff3938b8392407d2ab8713ac8_YZ_3_Vector4;
|
|
float4 _TriplanarNM_92d0433ff3938b8392407d2ab8713ac8_XY_4_Vector4;
|
|
SG_TriplanarNM_bc609ed95f52591469ab35dbfe0efcea_float(_Property_5f029bbc9f13b7858650859c3b63ebfd_Out_0_Texture2D, (_Divide_6a90cebe78e620828de587523daaa7e6_Out_2_Vector4).x, _Property_3539de8c698c2981bb3c088d4ec52201_Out_0_Float, UnityBuildSamplerStateStruct(SamplerState_Linear_Repeat_Aniso8), _TriplanarNM_92d0433ff3938b8392407d2ab8713ac8, _TriplanarNM_92d0433ff3938b8392407d2ab8713ac8_XYZ_1_Vector4, _TriplanarNM_92d0433ff3938b8392407d2ab8713ac8_XZ_2_Vector4, _TriplanarNM_92d0433ff3938b8392407d2ab8713ac8_YZ_3_Vector4, _TriplanarNM_92d0433ff3938b8392407d2ab8713ac8_XY_4_Vector4);
|
|
float4 _Property_87cd542c2b8c30868ed1d7d38aed8f2b_Out_0_Vector4 = _BaseColor;
|
|
float4 _Multiply_4b2be0b3fe39f385b887e7c82ab41e0b_Out_2_Vector4;
|
|
Unity_Multiply_float4_float4(_TriplanarNM_92d0433ff3938b8392407d2ab8713ac8_XYZ_1_Vector4, _Property_87cd542c2b8c30868ed1d7d38aed8f2b_Out_0_Vector4, _Multiply_4b2be0b3fe39f385b887e7c82ab41e0b_Out_2_Vector4);
|
|
UnityTexture2D _Property_c167aafac28bd98c8411d3e25631fdeb_Out_0_Texture2D = UnityBuildTexture2DStructNoScale(_CoverMaskA);
|
|
float4 _UV_e143f0ebbac8bb8cab3206ab93422dda_Out_0_Vector4 = IN.uv0;
|
|
float4 _SampleTexture2D_32717b1e99785588830ceee116cbe7fc_RGBA_0_Vector4 = SAMPLE_TEXTURE2D(_Property_c167aafac28bd98c8411d3e25631fdeb_Out_0_Texture2D.tex, _Property_c167aafac28bd98c8411d3e25631fdeb_Out_0_Texture2D.samplerstate, _Property_c167aafac28bd98c8411d3e25631fdeb_Out_0_Texture2D.GetTransformedUV((_UV_e143f0ebbac8bb8cab3206ab93422dda_Out_0_Vector4.xy)) );
|
|
float _SampleTexture2D_32717b1e99785588830ceee116cbe7fc_R_4_Float = _SampleTexture2D_32717b1e99785588830ceee116cbe7fc_RGBA_0_Vector4.r;
|
|
float _SampleTexture2D_32717b1e99785588830ceee116cbe7fc_G_5_Float = _SampleTexture2D_32717b1e99785588830ceee116cbe7fc_RGBA_0_Vector4.g;
|
|
float _SampleTexture2D_32717b1e99785588830ceee116cbe7fc_B_6_Float = _SampleTexture2D_32717b1e99785588830ceee116cbe7fc_RGBA_0_Vector4.b;
|
|
float _SampleTexture2D_32717b1e99785588830ceee116cbe7fc_A_7_Float = _SampleTexture2D_32717b1e99785588830ceee116cbe7fc_RGBA_0_Vector4.a;
|
|
float _Multiply_01f97603c3df268380d339564b08db11_Out_2_Float;
|
|
Unity_Multiply_float_float(_SampleTexture2D_32717b1e99785588830ceee116cbe7fc_R_4_Float, 2, _Multiply_01f97603c3df268380d339564b08db11_Out_2_Float);
|
|
float _Property_cad777e9a810198e8076eb2cd76e6817_Out_0_Float = _BaseDarknessCurvMultply;
|
|
float _Multiply_b67c8963c3ba188e85b84ae9bf0dcbf7_Out_2_Float;
|
|
Unity_Multiply_float_float(_Multiply_01f97603c3df268380d339564b08db11_Out_2_Float, _Property_cad777e9a810198e8076eb2cd76e6817_Out_0_Float, _Multiply_b67c8963c3ba188e85b84ae9bf0dcbf7_Out_2_Float);
|
|
float _Clamp_646f55d74b38f18aa983e5d031e0e7c3_Out_3_Float;
|
|
Unity_Clamp_float(_Multiply_b67c8963c3ba188e85b84ae9bf0dcbf7_Out_2_Float, float(0), float(1), _Clamp_646f55d74b38f18aa983e5d031e0e7c3_Out_3_Float);
|
|
float _Absolute_c99e11216fab2488946eb6243d985fdc_Out_1_Float;
|
|
Unity_Absolute_float(_Clamp_646f55d74b38f18aa983e5d031e0e7c3_Out_3_Float, _Absolute_c99e11216fab2488946eb6243d985fdc_Out_1_Float);
|
|
float _Property_f8a9827e6f28d9819188d4775dcf7620_Out_0_Float = _BaseDarknessCurvPower;
|
|
float _Power_1b88303e1ca2f285b344bf6aa0cf05e4_Out_2_Float;
|
|
Unity_Power_float(_Absolute_c99e11216fab2488946eb6243d985fdc_Out_1_Float, _Property_f8a9827e6f28d9819188d4775dcf7620_Out_0_Float, _Power_1b88303e1ca2f285b344bf6aa0cf05e4_Out_2_Float);
|
|
float _Clamp_27887d983dbb5a8bbd2966fbcbd7c126_Out_3_Float;
|
|
Unity_Clamp_float(_Power_1b88303e1ca2f285b344bf6aa0cf05e4_Out_2_Float, float(0), float(1), _Clamp_27887d983dbb5a8bbd2966fbcbd7c126_Out_3_Float);
|
|
float4 _Multiply_59efbfb897b39480ad44be129db72018_Out_2_Vector4;
|
|
Unity_Multiply_float4_float4(_Multiply_4b2be0b3fe39f385b887e7c82ab41e0b_Out_2_Vector4, (_Clamp_27887d983dbb5a8bbd2966fbcbd7c126_Out_3_Float.xxxx), _Multiply_59efbfb897b39480ad44be129db72018_Out_2_Vector4);
|
|
float4 _Clamp_841e38951a68f286955c4755e78c610b_Out_3_Vector4;
|
|
Unity_Clamp_float4(_Multiply_59efbfb897b39480ad44be129db72018_Out_2_Vector4, float4(0, 0, 0, 0), float4(1, 1, 1, 1), _Clamp_841e38951a68f286955c4755e78c610b_Out_3_Vector4);
|
|
float _Add_d7ea4a88c4af4886b1e567ddd2b963f9_Out_2_Float;
|
|
Unity_Add_float(_Multiply_01f97603c3df268380d339564b08db11_Out_2_Float, float(-1), _Add_d7ea4a88c4af4886b1e567ddd2b963f9_Out_2_Float);
|
|
float _Clamp_1a02c4bf5903c988b1489d14c840c1e3_Out_3_Float;
|
|
Unity_Clamp_float(_Add_d7ea4a88c4af4886b1e567ddd2b963f9_Out_2_Float, float(0), float(1), _Clamp_1a02c4bf5903c988b1489d14c840c1e3_Out_3_Float);
|
|
float _Property_0e0e1ec2131cec87836dce596351dc1c_Out_0_Float = _BaseBrightnessCurvMultply;
|
|
float _Multiply_c975dfa7de001c89addd082d443e2d07_Out_2_Float;
|
|
Unity_Multiply_float_float(_Clamp_1a02c4bf5903c988b1489d14c840c1e3_Out_3_Float, _Property_0e0e1ec2131cec87836dce596351dc1c_Out_0_Float, _Multiply_c975dfa7de001c89addd082d443e2d07_Out_2_Float);
|
|
float _Clamp_d5711b145a87ef8e8a93ceb9b6197759_Out_3_Float;
|
|
Unity_Clamp_float(_Multiply_c975dfa7de001c89addd082d443e2d07_Out_2_Float, float(0), float(1), _Clamp_d5711b145a87ef8e8a93ceb9b6197759_Out_3_Float);
|
|
float _Absolute_8f9bd7ee7a35c18084d08ad7ef463f52_Out_1_Float;
|
|
Unity_Absolute_float(_Clamp_d5711b145a87ef8e8a93ceb9b6197759_Out_3_Float, _Absolute_8f9bd7ee7a35c18084d08ad7ef463f52_Out_1_Float);
|
|
float _Property_9092f5beea2bec83a5c8a3f6623953a6_Out_0_Float = _BaseBrightnessCurvPower;
|
|
float _Power_5c1a81a2cfcc578996666adb93479f83_Out_2_Float;
|
|
Unity_Power_float(_Absolute_8f9bd7ee7a35c18084d08ad7ef463f52_Out_1_Float, _Property_9092f5beea2bec83a5c8a3f6623953a6_Out_0_Float, _Power_5c1a81a2cfcc578996666adb93479f83_Out_2_Float);
|
|
float _Clamp_f3c614a7ae35508288c0bc3f6194ca34_Out_3_Float;
|
|
Unity_Clamp_float(_Power_5c1a81a2cfcc578996666adb93479f83_Out_2_Float, float(0), float(1), _Clamp_f3c614a7ae35508288c0bc3f6194ca34_Out_3_Float);
|
|
float4 _Add_8313e15cade91a8ba653986d6722818a_Out_2_Vector4;
|
|
Unity_Add_float4(_Clamp_841e38951a68f286955c4755e78c610b_Out_3_Vector4, (_Clamp_f3c614a7ae35508288c0bc3f6194ca34_Out_3_Float.xxxx), _Add_8313e15cade91a8ba653986d6722818a_Out_2_Vector4);
|
|
float4 _Clamp_6dc8fea4fa463b8ea840911fd315c80f_Out_3_Vector4;
|
|
Unity_Clamp_float4(_Add_8313e15cade91a8ba653986d6722818a_Out_2_Vector4, float4(0, 0, 0, 0), float4(1, 1, 1, 1), _Clamp_6dc8fea4fa463b8ea840911fd315c80f_Out_3_Vector4);
|
|
float4 _Branch_26165227c7a50284b87d2996dee9982c_Out_3_Vector4;
|
|
Unity_Branch_float4(_Property_72a5c604805a7b8ebbfd7acee03656aa_Out_0_Boolean, _Clamp_6dc8fea4fa463b8ea840911fd315c80f_Out_3_Vector4, _Multiply_4b2be0b3fe39f385b887e7c82ab41e0b_Out_2_Vector4, _Branch_26165227c7a50284b87d2996dee9982c_Out_3_Vector4);
|
|
UnityTexture2D _Property_2e62abc1fe8adb8b8ff655b8448be202_Out_0_Texture2D = UnityBuildTexture2DStructNoScale(_DetailMap);
|
|
float4 _Property_b86e0ee324ffb58a92473eab69864d04_Out_0_Vector4 = _DetailTilingOffset;
|
|
float _Split_e832641c05503286a4951c0a93621755_R_1_Float = _Property_b86e0ee324ffb58a92473eab69864d04_Out_0_Vector4[0];
|
|
float _Split_e832641c05503286a4951c0a93621755_G_2_Float = _Property_b86e0ee324ffb58a92473eab69864d04_Out_0_Vector4[1];
|
|
float _Split_e832641c05503286a4951c0a93621755_B_3_Float = _Property_b86e0ee324ffb58a92473eab69864d04_Out_0_Vector4[2];
|
|
float _Split_e832641c05503286a4951c0a93621755_A_4_Float = _Property_b86e0ee324ffb58a92473eab69864d04_Out_0_Vector4[3];
|
|
float2 _Vector2_4b5eef288b3d4c83b24e4ab653f55ec8_Out_0_Vector2 = float2(_Split_e832641c05503286a4951c0a93621755_R_1_Float, _Split_e832641c05503286a4951c0a93621755_G_2_Float);
|
|
float2 _Vector2_2925cf98ba16b08dabc58cd65efd17db_Out_0_Vector2 = float2(_Split_e832641c05503286a4951c0a93621755_B_3_Float, _Split_e832641c05503286a4951c0a93621755_A_4_Float);
|
|
float2 _TilingAndOffset_74f6566eba9ccd899de18c0b11b7a7a2_Out_3_Vector2;
|
|
Unity_TilingAndOffset_float(IN.uv0.xy, _Vector2_4b5eef288b3d4c83b24e4ab653f55ec8_Out_0_Vector2, _Vector2_2925cf98ba16b08dabc58cd65efd17db_Out_0_Vector2, _TilingAndOffset_74f6566eba9ccd899de18c0b11b7a7a2_Out_3_Vector2);
|
|
float4 _SampleTexture2D_4bd08411faa60c828847f2247f06a809_RGBA_0_Vector4 = SAMPLE_TEXTURE2D(_Property_2e62abc1fe8adb8b8ff655b8448be202_Out_0_Texture2D.tex, _Property_2e62abc1fe8adb8b8ff655b8448be202_Out_0_Texture2D.samplerstate, _Property_2e62abc1fe8adb8b8ff655b8448be202_Out_0_Texture2D.GetTransformedUV(_TilingAndOffset_74f6566eba9ccd899de18c0b11b7a7a2_Out_3_Vector2) );
|
|
float _SampleTexture2D_4bd08411faa60c828847f2247f06a809_R_4_Float = _SampleTexture2D_4bd08411faa60c828847f2247f06a809_RGBA_0_Vector4.r;
|
|
float _SampleTexture2D_4bd08411faa60c828847f2247f06a809_G_5_Float = _SampleTexture2D_4bd08411faa60c828847f2247f06a809_RGBA_0_Vector4.g;
|
|
float _SampleTexture2D_4bd08411faa60c828847f2247f06a809_B_6_Float = _SampleTexture2D_4bd08411faa60c828847f2247f06a809_RGBA_0_Vector4.b;
|
|
float _SampleTexture2D_4bd08411faa60c828847f2247f06a809_A_7_Float = _SampleTexture2D_4bd08411faa60c828847f2247f06a809_RGBA_0_Vector4.a;
|
|
float _Multiply_ee5a3ccdebd1af84920cd1455a59468b_Out_2_Float;
|
|
Unity_Multiply_float_float(_SampleTexture2D_4bd08411faa60c828847f2247f06a809_R_4_Float, 2, _Multiply_ee5a3ccdebd1af84920cd1455a59468b_Out_2_Float);
|
|
float _Add_b8d727bda34294808f98551e67aa852f_Out_2_Float;
|
|
Unity_Add_float(_Multiply_ee5a3ccdebd1af84920cd1455a59468b_Out_2_Float, float(-1), _Add_b8d727bda34294808f98551e67aa852f_Out_2_Float);
|
|
float _Property_4634e589b03f6983b90fa6aaee0ed5f6_Out_0_Float = _DetailAlbedoScale;
|
|
float _Multiply_f0ed5a95f800c68aa9f7ea2f1322cc31_Out_2_Float;
|
|
Unity_Multiply_float_float(_Add_b8d727bda34294808f98551e67aa852f_Out_2_Float, _Property_4634e589b03f6983b90fa6aaee0ed5f6_Out_0_Float, _Multiply_f0ed5a95f800c68aa9f7ea2f1322cc31_Out_2_Float);
|
|
float _Saturate_469298b4e783d887889b71dc48b4399f_Out_1_Float;
|
|
Unity_Saturate_float(_Multiply_f0ed5a95f800c68aa9f7ea2f1322cc31_Out_2_Float, _Saturate_469298b4e783d887889b71dc48b4399f_Out_1_Float);
|
|
float _Absolute_3b29f3ceceba148189d11e0195af4be2_Out_1_Float;
|
|
Unity_Absolute_float(_Saturate_469298b4e783d887889b71dc48b4399f_Out_1_Float, _Absolute_3b29f3ceceba148189d11e0195af4be2_Out_1_Float);
|
|
Bindings_BlendOverlayBaseColor_acdb3dfca72bd6b42bbc35f4613331a2_float _BlendOverlayBaseColor_369c0b6a02e62b809dc5c6ac1efddde2;
|
|
float3 _BlendOverlayBaseColor_369c0b6a02e62b809dc5c6ac1efddde2_OutVector4_1_Vector3;
|
|
SG_BlendOverlayBaseColor_acdb3dfca72bd6b42bbc35f4613331a2_float(_Branch_26165227c7a50284b87d2996dee9982c_Out_3_Vector4, _Add_b8d727bda34294808f98551e67aa852f_Out_2_Float, _Absolute_3b29f3ceceba148189d11e0195af4be2_Out_1_Float, _BlendOverlayBaseColor_369c0b6a02e62b809dc5c6ac1efddde2, _BlendOverlayBaseColor_369c0b6a02e62b809dc5c6ac1efddde2_OutVector4_1_Vector3);
|
|
UnityTexture2D _Property_9a8451520f254f84a21875f3dac8cbe3_Out_0_Texture2D = UnityBuildTexture2DStructNoScale(_CoverBaseColorMap);
|
|
float4 _Property_c853e88632d9fd85ac0e98d12083eb62_Out_0_Vector4 = _CoverTilingOffset;
|
|
float4 _Divide_1fe314f1ca9dd78fbf366bbeb40e4ccf_Out_2_Vector4;
|
|
Unity_Divide_float4(float4(1, 1, 0, 0), _Property_c853e88632d9fd85ac0e98d12083eb62_Out_0_Vector4, _Divide_1fe314f1ca9dd78fbf366bbeb40e4ccf_Out_2_Vector4);
|
|
float _Property_ee792eccbb538a878b19be5db264531e_Out_0_Float = _CoverTriplanarThreshold;
|
|
Bindings_TriplanarNM_bc609ed95f52591469ab35dbfe0efcea_float _TriplanarNM_cca4c45d91c87989990c532a04e9e8e1;
|
|
_TriplanarNM_cca4c45d91c87989990c532a04e9e8e1.WorldSpaceNormal = IN.WorldSpaceNormal;
|
|
_TriplanarNM_cca4c45d91c87989990c532a04e9e8e1.AbsoluteWorldSpacePosition = IN.AbsoluteWorldSpacePosition;
|
|
float4 _TriplanarNM_cca4c45d91c87989990c532a04e9e8e1_XYZ_1_Vector4;
|
|
float4 _TriplanarNM_cca4c45d91c87989990c532a04e9e8e1_XZ_2_Vector4;
|
|
float4 _TriplanarNM_cca4c45d91c87989990c532a04e9e8e1_YZ_3_Vector4;
|
|
float4 _TriplanarNM_cca4c45d91c87989990c532a04e9e8e1_XY_4_Vector4;
|
|
SG_TriplanarNM_bc609ed95f52591469ab35dbfe0efcea_float(_Property_9a8451520f254f84a21875f3dac8cbe3_Out_0_Texture2D, (_Divide_1fe314f1ca9dd78fbf366bbeb40e4ccf_Out_2_Vector4).x, _Property_ee792eccbb538a878b19be5db264531e_Out_0_Float, UnityBuildSamplerStateStruct(SamplerState_Linear_Repeat_Aniso8), _TriplanarNM_cca4c45d91c87989990c532a04e9e8e1, _TriplanarNM_cca4c45d91c87989990c532a04e9e8e1_XYZ_1_Vector4, _TriplanarNM_cca4c45d91c87989990c532a04e9e8e1_XZ_2_Vector4, _TriplanarNM_cca4c45d91c87989990c532a04e9e8e1_YZ_3_Vector4, _TriplanarNM_cca4c45d91c87989990c532a04e9e8e1_XY_4_Vector4);
|
|
float4 _Property_18c743619f52288dbe24e28326388b00_Out_0_Vector4 = _CoverBaseColor;
|
|
float4 _Multiply_62594f3b30470e86a813e1224c48902e_Out_2_Vector4;
|
|
Unity_Multiply_float4_float4(_TriplanarNM_cca4c45d91c87989990c532a04e9e8e1_XYZ_1_Vector4, _Property_18c743619f52288dbe24e28326388b00_Out_0_Vector4, _Multiply_62594f3b30470e86a813e1224c48902e_Out_2_Vector4);
|
|
float _Multiply_5378fc524597f98fb32eeb561a7390e9_Out_2_Float;
|
|
Unity_Multiply_float_float(_SampleTexture2D_32717b1e99785588830ceee116cbe7fc_R_4_Float, 2, _Multiply_5378fc524597f98fb32eeb561a7390e9_Out_2_Float);
|
|
float _Property_8a72d97c1c527c8f8e0cc71214498065_Out_0_Float = _CoverDarknessCurvMultply;
|
|
float _Multiply_22683a720176a788a2ce404dbddd837c_Out_2_Float;
|
|
Unity_Multiply_float_float(_Multiply_5378fc524597f98fb32eeb561a7390e9_Out_2_Float, _Property_8a72d97c1c527c8f8e0cc71214498065_Out_0_Float, _Multiply_22683a720176a788a2ce404dbddd837c_Out_2_Float);
|
|
float _Clamp_5a638fb628222d8a97865d9029554fe2_Out_3_Float;
|
|
Unity_Clamp_float(_Multiply_22683a720176a788a2ce404dbddd837c_Out_2_Float, float(0), float(1), _Clamp_5a638fb628222d8a97865d9029554fe2_Out_3_Float);
|
|
float _Absolute_11985e8863bf2b8ca0bda90bca829348_Out_1_Float;
|
|
Unity_Absolute_float(_Clamp_5a638fb628222d8a97865d9029554fe2_Out_3_Float, _Absolute_11985e8863bf2b8ca0bda90bca829348_Out_1_Float);
|
|
float _Property_aba5acef910eee88b110d565674a9e36_Out_0_Float = _CoverDarknessCurvPower;
|
|
float _Power_da9b537d80a58d85a88e72c2a5d01e7c_Out_2_Float;
|
|
Unity_Power_float(_Absolute_11985e8863bf2b8ca0bda90bca829348_Out_1_Float, _Property_aba5acef910eee88b110d565674a9e36_Out_0_Float, _Power_da9b537d80a58d85a88e72c2a5d01e7c_Out_2_Float);
|
|
float _Clamp_77228e2a7266fa8ca042eae2f0701342_Out_3_Float;
|
|
Unity_Clamp_float(_Power_da9b537d80a58d85a88e72c2a5d01e7c_Out_2_Float, float(0), float(1), _Clamp_77228e2a7266fa8ca042eae2f0701342_Out_3_Float);
|
|
float4 _Multiply_2111c8ad39d5e68caf4893a41a3bad7d_Out_2_Vector4;
|
|
Unity_Multiply_float4_float4(_Multiply_62594f3b30470e86a813e1224c48902e_Out_2_Vector4, (_Clamp_77228e2a7266fa8ca042eae2f0701342_Out_3_Float.xxxx), _Multiply_2111c8ad39d5e68caf4893a41a3bad7d_Out_2_Vector4);
|
|
float4 _Clamp_b489ebb9d7d18282a342100f4d2fa72d_Out_3_Vector4;
|
|
Unity_Clamp_float4(_Multiply_2111c8ad39d5e68caf4893a41a3bad7d_Out_2_Vector4, float4(0, 0, 0, 0), float4(1, 1, 1, 1), _Clamp_b489ebb9d7d18282a342100f4d2fa72d_Out_3_Vector4);
|
|
float _Add_7eea819e47ffe58cbb3ec5877a181444_Out_2_Float;
|
|
Unity_Add_float(_Multiply_5378fc524597f98fb32eeb561a7390e9_Out_2_Float, float(-1), _Add_7eea819e47ffe58cbb3ec5877a181444_Out_2_Float);
|
|
float _Clamp_b5e4f47c0358dc87b5f9fdb3a360e9e9_Out_3_Float;
|
|
Unity_Clamp_float(_Add_7eea819e47ffe58cbb3ec5877a181444_Out_2_Float, float(0), float(1), _Clamp_b5e4f47c0358dc87b5f9fdb3a360e9e9_Out_3_Float);
|
|
float _Property_753051c96a90798fa7d94cff4173d6e6_Out_0_Float = _CoverBrightnessCurvMultply;
|
|
float _Multiply_c650497abc44d98882ce0091d10c4356_Out_2_Float;
|
|
Unity_Multiply_float_float(_Clamp_b5e4f47c0358dc87b5f9fdb3a360e9e9_Out_3_Float, _Property_753051c96a90798fa7d94cff4173d6e6_Out_0_Float, _Multiply_c650497abc44d98882ce0091d10c4356_Out_2_Float);
|
|
float _Clamp_c508dc61e0cb2a829429559098f34f9a_Out_3_Float;
|
|
Unity_Clamp_float(_Multiply_c650497abc44d98882ce0091d10c4356_Out_2_Float, float(0), float(1), _Clamp_c508dc61e0cb2a829429559098f34f9a_Out_3_Float);
|
|
float _Absolute_2cff2da32d80c286acbb99de611f381a_Out_1_Float;
|
|
Unity_Absolute_float(_Clamp_c508dc61e0cb2a829429559098f34f9a_Out_3_Float, _Absolute_2cff2da32d80c286acbb99de611f381a_Out_1_Float);
|
|
float _Property_ce4610db7b6d0c8bb7fb318210d3e83f_Out_0_Float = _CoverBrightnessCurvPower;
|
|
float _Power_c21df4d2e5ea448281f9ac0f4a140b9e_Out_2_Float;
|
|
Unity_Power_float(_Absolute_2cff2da32d80c286acbb99de611f381a_Out_1_Float, _Property_ce4610db7b6d0c8bb7fb318210d3e83f_Out_0_Float, _Power_c21df4d2e5ea448281f9ac0f4a140b9e_Out_2_Float);
|
|
float _Clamp_fd095a9d6c2b9881ae5875ed126bf3fb_Out_3_Float;
|
|
Unity_Clamp_float(_Power_c21df4d2e5ea448281f9ac0f4a140b9e_Out_2_Float, float(0), float(1), _Clamp_fd095a9d6c2b9881ae5875ed126bf3fb_Out_3_Float);
|
|
float4 _Add_4a02758b9a29b18180516bf3c3ede263_Out_2_Vector4;
|
|
Unity_Add_float4(_Clamp_b489ebb9d7d18282a342100f4d2fa72d_Out_3_Vector4, (_Clamp_fd095a9d6c2b9881ae5875ed126bf3fb_Out_3_Float.xxxx), _Add_4a02758b9a29b18180516bf3c3ede263_Out_2_Vector4);
|
|
float4 _Clamp_632e3d64ab55648f927a79cef68f3396_Out_3_Vector4;
|
|
Unity_Clamp_float4(_Add_4a02758b9a29b18180516bf3c3ede263_Out_2_Vector4, float4(0, 0, 0, 0), float4(1, 1, 1, 1), _Clamp_632e3d64ab55648f927a79cef68f3396_Out_3_Vector4);
|
|
float4 _Branch_0c5221a996e29186a372734bf5c30a51_Out_3_Vector4;
|
|
Unity_Branch_float4(_Property_72a5c604805a7b8ebbfd7acee03656aa_Out_0_Boolean, _Clamp_632e3d64ab55648f927a79cef68f3396_Out_3_Vector4, _Multiply_62594f3b30470e86a813e1224c48902e_Out_2_Vector4, _Branch_0c5221a996e29186a372734bf5c30a51_Out_3_Vector4);
|
|
float _Multiply_6a55591ceae0dc86a971a275e316fec6_Out_2_Float;
|
|
Unity_Multiply_float_float(_SampleTexture2D_4bd08411faa60c828847f2247f06a809_R_4_Float, 2, _Multiply_6a55591ceae0dc86a971a275e316fec6_Out_2_Float);
|
|
float _Add_a86411eb4894f78f8f8f3246011b369c_Out_2_Float;
|
|
Unity_Add_float(_Multiply_6a55591ceae0dc86a971a275e316fec6_Out_2_Float, float(-1), _Add_a86411eb4894f78f8f8f3246011b369c_Out_2_Float);
|
|
float _Property_c5a049650239cf80a302d0c0f57c147a_Out_0_Float = _DetailCoverAlbedoScale;
|
|
float _Multiply_1708b01db74fe88a8c36434f8729bf41_Out_2_Float;
|
|
Unity_Multiply_float_float(_Add_a86411eb4894f78f8f8f3246011b369c_Out_2_Float, _Property_c5a049650239cf80a302d0c0f57c147a_Out_0_Float, _Multiply_1708b01db74fe88a8c36434f8729bf41_Out_2_Float);
|
|
float _Saturate_1a4899f79635918485a64fff7cea28ad_Out_1_Float;
|
|
Unity_Saturate_float(_Multiply_1708b01db74fe88a8c36434f8729bf41_Out_2_Float, _Saturate_1a4899f79635918485a64fff7cea28ad_Out_1_Float);
|
|
float _Absolute_d3dce2bb8d9f0285b5183b7f665beed8_Out_1_Float;
|
|
Unity_Absolute_float(_Saturate_1a4899f79635918485a64fff7cea28ad_Out_1_Float, _Absolute_d3dce2bb8d9f0285b5183b7f665beed8_Out_1_Float);
|
|
Bindings_BlendOverlayBaseColor_acdb3dfca72bd6b42bbc35f4613331a2_float _BlendOverlayBaseColor_ec1f397271cc818abdb95188914e6b4d;
|
|
float3 _BlendOverlayBaseColor_ec1f397271cc818abdb95188914e6b4d_OutVector4_1_Vector3;
|
|
SG_BlendOverlayBaseColor_acdb3dfca72bd6b42bbc35f4613331a2_float(_Branch_0c5221a996e29186a372734bf5c30a51_Out_3_Vector4, _Add_a86411eb4894f78f8f8f3246011b369c_Out_2_Float, _Absolute_d3dce2bb8d9f0285b5183b7f665beed8_Out_1_Float, _BlendOverlayBaseColor_ec1f397271cc818abdb95188914e6b4d, _BlendOverlayBaseColor_ec1f397271cc818abdb95188914e6b4d_OutVector4_1_Vector3);
|
|
float _Property_cb0b6597aee47880b32e852aaa0e4a71_Out_0_Boolean = _USEDYNAMICCOVERTSTATICMASKF;
|
|
float _Property_4b3f692214f8d081a043985e1adb12a1_Out_0_Float = _CoverMaskPower;
|
|
float _Multiply_10cc4ecb135f8e8ab88c475223d0eadf_Out_2_Float;
|
|
Unity_Multiply_float_float(_SampleTexture2D_32717b1e99785588830ceee116cbe7fc_A_7_Float, _Property_4b3f692214f8d081a043985e1adb12a1_Out_0_Float, _Multiply_10cc4ecb135f8e8ab88c475223d0eadf_Out_2_Float);
|
|
float _Clamp_07a501c22c6e188199bed73412ac8926_Out_3_Float;
|
|
Unity_Clamp_float(_Multiply_10cc4ecb135f8e8ab88c475223d0eadf_Out_2_Float, float(0), float(1), _Clamp_07a501c22c6e188199bed73412ac8926_Out_3_Float);
|
|
float _Split_2ada595651635e8d97bf4b82f717fcc6_R_1_Float = IN.VertexColor[0];
|
|
float _Split_2ada595651635e8d97bf4b82f717fcc6_G_2_Float = IN.VertexColor[1];
|
|
float _Split_2ada595651635e8d97bf4b82f717fcc6_B_3_Float = IN.VertexColor[2];
|
|
float _Split_2ada595651635e8d97bf4b82f717fcc6_A_4_Float = IN.VertexColor[3];
|
|
float3 _Property_9180f8dd535ba18499edac37aef4d231_Out_0_Vector3 = _CoverDirection;
|
|
float2 _Vector2_7fe7d9ef320da68f958e1ea535e2a6a8_Out_0_Vector2 = float2(_SampleTexture2D_4bd08411faa60c828847f2247f06a809_A_7_Float, _SampleTexture2D_4bd08411faa60c828847f2247f06a809_G_5_Float);
|
|
float2 _Multiply_b8d7cc078ce00d87b9a6b5241b2f1f01_Out_2_Vector2;
|
|
Unity_Multiply_float2_float2(_Vector2_7fe7d9ef320da68f958e1ea535e2a6a8_Out_0_Vector2, float2(2, 2), _Multiply_b8d7cc078ce00d87b9a6b5241b2f1f01_Out_2_Vector2);
|
|
float2 _Add_476ecfb1f47aed8bb8040bb1c44ca372_Out_2_Vector2;
|
|
Unity_Add_float2(_Multiply_b8d7cc078ce00d87b9a6b5241b2f1f01_Out_2_Vector2, float2(-1, -1), _Add_476ecfb1f47aed8bb8040bb1c44ca372_Out_2_Vector2);
|
|
float _Property_b7f40cf2664f5a819eb153af2b2eb69e_Out_0_Float = _DetailNormalScale;
|
|
float2 _Multiply_3b11e3e43551698eb19b6c6b671b6a41_Out_2_Vector2;
|
|
Unity_Multiply_float2_float2(_Add_476ecfb1f47aed8bb8040bb1c44ca372_Out_2_Vector2, (_Property_b7f40cf2664f5a819eb153af2b2eb69e_Out_0_Float.xx), _Multiply_3b11e3e43551698eb19b6c6b671b6a41_Out_2_Vector2);
|
|
float _Split_678aac70d9cb9783a49841710ce82ff8_R_1_Float = _Multiply_3b11e3e43551698eb19b6c6b671b6a41_Out_2_Vector2[0];
|
|
float _Split_678aac70d9cb9783a49841710ce82ff8_G_2_Float = _Multiply_3b11e3e43551698eb19b6c6b671b6a41_Out_2_Vector2[1];
|
|
float _Split_678aac70d9cb9783a49841710ce82ff8_B_3_Float = 0;
|
|
float _Split_678aac70d9cb9783a49841710ce82ff8_A_4_Float = 0;
|
|
float _DotProduct_7fd2e2e8b3e9ed8f9a42a0ba98e14174_Out_2_Float;
|
|
Unity_DotProduct_float2(_Multiply_3b11e3e43551698eb19b6c6b671b6a41_Out_2_Vector2, _Multiply_3b11e3e43551698eb19b6c6b671b6a41_Out_2_Vector2, _DotProduct_7fd2e2e8b3e9ed8f9a42a0ba98e14174_Out_2_Float);
|
|
float _Saturate_47bdfe8ca2c8d989a5ebbb5eb995f023_Out_1_Float;
|
|
Unity_Saturate_float(_DotProduct_7fd2e2e8b3e9ed8f9a42a0ba98e14174_Out_2_Float, _Saturate_47bdfe8ca2c8d989a5ebbb5eb995f023_Out_1_Float);
|
|
float _OneMinus_03777d2879850b838187d9d2605d7341_Out_1_Float;
|
|
Unity_OneMinus_float(_Saturate_47bdfe8ca2c8d989a5ebbb5eb995f023_Out_1_Float, _OneMinus_03777d2879850b838187d9d2605d7341_Out_1_Float);
|
|
float _SquareRoot_ca9c195aef071d8888f26cb73b749f72_Out_1_Float;
|
|
Unity_SquareRoot_float(_OneMinus_03777d2879850b838187d9d2605d7341_Out_1_Float, _SquareRoot_ca9c195aef071d8888f26cb73b749f72_Out_1_Float);
|
|
float3 _Vector3_6999cbd6a5aa908cb7c059b5f2f5b330_Out_0_Vector3 = float3(_Split_678aac70d9cb9783a49841710ce82ff8_R_1_Float, _Split_678aac70d9cb9783a49841710ce82ff8_G_2_Float, _SquareRoot_ca9c195aef071d8888f26cb73b749f72_Out_1_Float);
|
|
UnityTexture2D _Property_d2bb0a0b01239c85bd301cadeec1b3d8_Out_0_Texture2D = UnityBuildTexture2DStructNoScale(_BaseNormalMap);
|
|
Bindings_TriplanarNMn_059da9746584140498cd018db3c76047_float _TriplanarNMn_bf7f7c0e2d896289b86076b79f33d7d4;
|
|
_TriplanarNMn_bf7f7c0e2d896289b86076b79f33d7d4.WorldSpaceNormal = IN.WorldSpaceNormal;
|
|
_TriplanarNMn_bf7f7c0e2d896289b86076b79f33d7d4.WorldSpaceTangent = IN.WorldSpaceTangent;
|
|
_TriplanarNMn_bf7f7c0e2d896289b86076b79f33d7d4.WorldSpaceBiTangent = IN.WorldSpaceBiTangent;
|
|
_TriplanarNMn_bf7f7c0e2d896289b86076b79f33d7d4.AbsoluteWorldSpacePosition = IN.AbsoluteWorldSpacePosition;
|
|
float4 _TriplanarNMn_bf7f7c0e2d896289b86076b79f33d7d4_XYZ_1_Vector4;
|
|
float4 _TriplanarNMn_bf7f7c0e2d896289b86076b79f33d7d4_XZ_2_Vector4;
|
|
float4 _TriplanarNMn_bf7f7c0e2d896289b86076b79f33d7d4_YZ_3_Vector4;
|
|
float4 _TriplanarNMn_bf7f7c0e2d896289b86076b79f33d7d4_XY_4_Vector4;
|
|
SG_TriplanarNMn_059da9746584140498cd018db3c76047_float(_Property_d2bb0a0b01239c85bd301cadeec1b3d8_Out_0_Texture2D, (_Divide_6a90cebe78e620828de587523daaa7e6_Out_2_Vector4).x, _Property_3539de8c698c2981bb3c088d4ec52201_Out_0_Float, UnityBuildSamplerStateStruct(SamplerState_Linear_Repeat_Aniso8), _TriplanarNMn_bf7f7c0e2d896289b86076b79f33d7d4, _TriplanarNMn_bf7f7c0e2d896289b86076b79f33d7d4_XYZ_1_Vector4, _TriplanarNMn_bf7f7c0e2d896289b86076b79f33d7d4_XZ_2_Vector4, _TriplanarNMn_bf7f7c0e2d896289b86076b79f33d7d4_YZ_3_Vector4, _TriplanarNMn_bf7f7c0e2d896289b86076b79f33d7d4_XY_4_Vector4);
|
|
float _Property_d6baf612f8e685848732ca270b39f544_Out_0_Float = _BaseNormalScale;
|
|
float3 _NormalStrength_260139b4d5077d8b9d42de780d173b6c_Out_2_Vector3;
|
|
Unity_NormalStrength_float((_TriplanarNMn_bf7f7c0e2d896289b86076b79f33d7d4_XYZ_1_Vector4.xyz), _Property_d6baf612f8e685848732ca270b39f544_Out_0_Float, _NormalStrength_260139b4d5077d8b9d42de780d173b6c_Out_2_Vector3);
|
|
UnityTexture2D _Property_492c4e7cd40ab980bd38362624511e38_Out_0_Texture2D = UnityBuildTexture2DStructNoScale(_ShapeNormalMap);
|
|
float4 _SampleTexture2D_63aaad04c65f698e8f640de826888075_RGBA_0_Vector4 = SAMPLE_TEXTURE2D(_Property_492c4e7cd40ab980bd38362624511e38_Out_0_Texture2D.tex, _Property_492c4e7cd40ab980bd38362624511e38_Out_0_Texture2D.samplerstate, _Property_492c4e7cd40ab980bd38362624511e38_Out_0_Texture2D.GetTransformedUV(IN.uv0.xy) );
|
|
_SampleTexture2D_63aaad04c65f698e8f640de826888075_RGBA_0_Vector4.rgb = UnpackNormal(_SampleTexture2D_63aaad04c65f698e8f640de826888075_RGBA_0_Vector4);
|
|
float _SampleTexture2D_63aaad04c65f698e8f640de826888075_R_4_Float = _SampleTexture2D_63aaad04c65f698e8f640de826888075_RGBA_0_Vector4.r;
|
|
float _SampleTexture2D_63aaad04c65f698e8f640de826888075_G_5_Float = _SampleTexture2D_63aaad04c65f698e8f640de826888075_RGBA_0_Vector4.g;
|
|
float _SampleTexture2D_63aaad04c65f698e8f640de826888075_B_6_Float = _SampleTexture2D_63aaad04c65f698e8f640de826888075_RGBA_0_Vector4.b;
|
|
float _SampleTexture2D_63aaad04c65f698e8f640de826888075_A_7_Float = _SampleTexture2D_63aaad04c65f698e8f640de826888075_RGBA_0_Vector4.a;
|
|
float _Property_6c35e329e57d0e89950e24817068dbb1_Out_0_Float = _shapeNormalScale;
|
|
float3 _NormalStrength_e181a1bb2f4e35819e0f35e77346e12e_Out_2_Vector3;
|
|
Unity_NormalStrength_float((_SampleTexture2D_63aaad04c65f698e8f640de826888075_RGBA_0_Vector4.xyz), _Property_6c35e329e57d0e89950e24817068dbb1_Out_0_Float, _NormalStrength_e181a1bb2f4e35819e0f35e77346e12e_Out_2_Vector3);
|
|
float3 _NormalBlend_ead295b946c6058190c298c03bf64d0b_Out_2_Vector3;
|
|
Unity_NormalBlend_float(_NormalStrength_260139b4d5077d8b9d42de780d173b6c_Out_2_Vector3, _NormalStrength_e181a1bb2f4e35819e0f35e77346e12e_Out_2_Vector3, _NormalBlend_ead295b946c6058190c298c03bf64d0b_Out_2_Vector3);
|
|
float3 _NormalBlend_4242e1b4a785378aa59dd49e9d993ffc_Out_2_Vector3;
|
|
Unity_NormalBlend_float(_Vector3_6999cbd6a5aa908cb7c059b5f2f5b330_Out_0_Vector3, _NormalBlend_ead295b946c6058190c298c03bf64d0b_Out_2_Vector3, _NormalBlend_4242e1b4a785378aa59dd49e9d993ffc_Out_2_Vector3);
|
|
float _Property_3d4ab6ad1f1f138a96f0463f7be8b6ce_Out_0_Float = _CovershapeNormalScale;
|
|
float3 _NormalStrength_401cd5af500bd68dbc9bca19d548d0db_Out_2_Vector3;
|
|
Unity_NormalStrength_float((_SampleTexture2D_63aaad04c65f698e8f640de826888075_RGBA_0_Vector4.xyz), _Property_3d4ab6ad1f1f138a96f0463f7be8b6ce_Out_0_Float, _NormalStrength_401cd5af500bd68dbc9bca19d548d0db_Out_2_Vector3);
|
|
UnityTexture2D _Property_779695727390348d8b8a7f7ae2245af0_Out_0_Texture2D = UnityBuildTexture2DStructNoScale(_CoverNormalMap);
|
|
Bindings_TriplanarNMn_059da9746584140498cd018db3c76047_float _TriplanarNMn_ba7e211dd8095589a2939b5b239ca8e0;
|
|
_TriplanarNMn_ba7e211dd8095589a2939b5b239ca8e0.WorldSpaceNormal = IN.WorldSpaceNormal;
|
|
_TriplanarNMn_ba7e211dd8095589a2939b5b239ca8e0.WorldSpaceTangent = IN.WorldSpaceTangent;
|
|
_TriplanarNMn_ba7e211dd8095589a2939b5b239ca8e0.WorldSpaceBiTangent = IN.WorldSpaceBiTangent;
|
|
_TriplanarNMn_ba7e211dd8095589a2939b5b239ca8e0.AbsoluteWorldSpacePosition = IN.AbsoluteWorldSpacePosition;
|
|
float4 _TriplanarNMn_ba7e211dd8095589a2939b5b239ca8e0_XYZ_1_Vector4;
|
|
float4 _TriplanarNMn_ba7e211dd8095589a2939b5b239ca8e0_XZ_2_Vector4;
|
|
float4 _TriplanarNMn_ba7e211dd8095589a2939b5b239ca8e0_YZ_3_Vector4;
|
|
float4 _TriplanarNMn_ba7e211dd8095589a2939b5b239ca8e0_XY_4_Vector4;
|
|
SG_TriplanarNMn_059da9746584140498cd018db3c76047_float(_Property_779695727390348d8b8a7f7ae2245af0_Out_0_Texture2D, (_Divide_1fe314f1ca9dd78fbf366bbeb40e4ccf_Out_2_Vector4).x, _Property_ee792eccbb538a878b19be5db264531e_Out_0_Float, UnityBuildSamplerStateStruct(SamplerState_Linear_Repeat_Aniso8), _TriplanarNMn_ba7e211dd8095589a2939b5b239ca8e0, _TriplanarNMn_ba7e211dd8095589a2939b5b239ca8e0_XYZ_1_Vector4, _TriplanarNMn_ba7e211dd8095589a2939b5b239ca8e0_XZ_2_Vector4, _TriplanarNMn_ba7e211dd8095589a2939b5b239ca8e0_YZ_3_Vector4, _TriplanarNMn_ba7e211dd8095589a2939b5b239ca8e0_XY_4_Vector4);
|
|
float _Property_5aba050988182f8aad3ec6b2c7e57899_Out_0_Float = _CoverNormalBlendHardness;
|
|
float3 _NormalStrength_dac4b0abfa8a1f82b7103b18f6e6e1b7_Out_2_Vector3;
|
|
Unity_NormalStrength_float((_TriplanarNMn_ba7e211dd8095589a2939b5b239ca8e0_XYZ_1_Vector4.xyz), _Property_5aba050988182f8aad3ec6b2c7e57899_Out_0_Float, _NormalStrength_dac4b0abfa8a1f82b7103b18f6e6e1b7_Out_2_Vector3);
|
|
float3 _NormalBlend_4058aded292b7389ade16c695a6cae6c_Out_2_Vector3;
|
|
Unity_NormalBlend_float(_NormalStrength_401cd5af500bd68dbc9bca19d548d0db_Out_2_Vector3, _NormalStrength_dac4b0abfa8a1f82b7103b18f6e6e1b7_Out_2_Vector3, _NormalBlend_4058aded292b7389ade16c695a6cae6c_Out_2_Vector3);
|
|
float3 _Multiply_0e22f9c6ff55a188b2533f1889a53038_Out_2_Vector3;
|
|
Unity_Multiply_float3_float3(_Property_9180f8dd535ba18499edac37aef4d231_Out_0_Vector3, IN.WorldSpaceNormal, _Multiply_0e22f9c6ff55a188b2533f1889a53038_Out_2_Vector3);
|
|
float _Split_89708601b575b58c852cd55e4fb248d1_R_1_Float = _Multiply_0e22f9c6ff55a188b2533f1889a53038_Out_2_Vector3[0];
|
|
float _Split_89708601b575b58c852cd55e4fb248d1_G_2_Float = _Multiply_0e22f9c6ff55a188b2533f1889a53038_Out_2_Vector3[1];
|
|
float _Split_89708601b575b58c852cd55e4fb248d1_B_3_Float = _Multiply_0e22f9c6ff55a188b2533f1889a53038_Out_2_Vector3[2];
|
|
float _Split_89708601b575b58c852cd55e4fb248d1_A_4_Float = 0;
|
|
float _Add_bfe29b97a9ce3b80aa4cd689be8c4a97_Out_2_Float;
|
|
Unity_Add_float(_Split_89708601b575b58c852cd55e4fb248d1_R_1_Float, _Split_89708601b575b58c852cd55e4fb248d1_G_2_Float, _Add_bfe29b97a9ce3b80aa4cd689be8c4a97_Out_2_Float);
|
|
float _Add_f3152b42a227088aa1439fc1fe8451cc_Out_2_Float;
|
|
Unity_Add_float(_Add_bfe29b97a9ce3b80aa4cd689be8c4a97_Out_2_Float, _Split_89708601b575b58c852cd55e4fb248d1_B_3_Float, _Add_f3152b42a227088aa1439fc1fe8451cc_Out_2_Float);
|
|
float _Property_deabceefa3e3438a8ad71fa67fc5b070_Out_0_Float = _Cover_Amount;
|
|
float _Property_2fba2d762d74b8828ff566c10bc48e86_Out_0_Float = _Cover_Amount_Grow_Speed;
|
|
float _Subtract_1f990262a41ce88f96a47df66dcb4971_Out_2_Float;
|
|
Unity_Subtract_float(float(4), _Property_2fba2d762d74b8828ff566c10bc48e86_Out_0_Float, _Subtract_1f990262a41ce88f96a47df66dcb4971_Out_2_Float);
|
|
float _Divide_a89e05be4802ac80886ad6bdeadc4949_Out_2_Float;
|
|
Unity_Divide_float(_Property_deabceefa3e3438a8ad71fa67fc5b070_Out_0_Float, _Subtract_1f990262a41ce88f96a47df66dcb4971_Out_2_Float, _Divide_a89e05be4802ac80886ad6bdeadc4949_Out_2_Float);
|
|
float _Absolute_2b58f48ab94a3087a726a2b03c51e2c6_Out_1_Float;
|
|
Unity_Absolute_float(_Divide_a89e05be4802ac80886ad6bdeadc4949_Out_2_Float, _Absolute_2b58f48ab94a3087a726a2b03c51e2c6_Out_1_Float);
|
|
float _Power_6695d49b8b82468ea686b66e6749260b_Out_2_Float;
|
|
Unity_Power_float(_Absolute_2b58f48ab94a3087a726a2b03c51e2c6_Out_1_Float, _Subtract_1f990262a41ce88f96a47df66dcb4971_Out_2_Float, _Power_6695d49b8b82468ea686b66e6749260b_Out_2_Float);
|
|
float _Clamp_94f0310fee13798bad4e26e2381a94d4_Out_3_Float;
|
|
Unity_Clamp_float(_Power_6695d49b8b82468ea686b66e6749260b_Out_2_Float, float(0), float(2), _Clamp_94f0310fee13798bad4e26e2381a94d4_Out_3_Float);
|
|
float _Multiply_999692515a117385ade114d924fa589a_Out_2_Float;
|
|
Unity_Multiply_float_float(_Add_f3152b42a227088aa1439fc1fe8451cc_Out_2_Float, _Clamp_94f0310fee13798bad4e26e2381a94d4_Out_3_Float, _Multiply_999692515a117385ade114d924fa589a_Out_2_Float);
|
|
float _Saturate_f811eeeeb3229d83917aa8be2c36831e_Out_1_Float;
|
|
Unity_Saturate_float(_Multiply_999692515a117385ade114d924fa589a_Out_2_Float, _Saturate_f811eeeeb3229d83917aa8be2c36831e_Out_1_Float);
|
|
float _Clamp_4c470807610adb8c8488f125c0af7bb5_Out_3_Float;
|
|
Unity_Clamp_float(_Add_f3152b42a227088aa1439fc1fe8451cc_Out_2_Float, float(0), float(0.9999), _Clamp_4c470807610adb8c8488f125c0af7bb5_Out_3_Float);
|
|
float _Property_765e3d021aec6d8f9f8b3174d5a06980_Out_0_Float = _Cover_Max_Angle;
|
|
float _Divide_9d9fc267a9ebcf84b378fdd4c66ff34d_Out_2_Float;
|
|
Unity_Divide_float(_Property_765e3d021aec6d8f9f8b3174d5a06980_Out_0_Float, float(45), _Divide_9d9fc267a9ebcf84b378fdd4c66ff34d_Out_2_Float);
|
|
float _OneMinus_f074fba0be46e688aa75f5377832251a_Out_1_Float;
|
|
Unity_OneMinus_float(_Divide_9d9fc267a9ebcf84b378fdd4c66ff34d_Out_2_Float, _OneMinus_f074fba0be46e688aa75f5377832251a_Out_1_Float);
|
|
float _Subtract_0b0cd6145e351c87a68366348828154d_Out_2_Float;
|
|
Unity_Subtract_float(_Clamp_4c470807610adb8c8488f125c0af7bb5_Out_3_Float, _OneMinus_f074fba0be46e688aa75f5377832251a_Out_1_Float, _Subtract_0b0cd6145e351c87a68366348828154d_Out_2_Float);
|
|
float _Clamp_30607c0c4e04e5879d4061a1f7688421_Out_3_Float;
|
|
Unity_Clamp_float(_Subtract_0b0cd6145e351c87a68366348828154d_Out_2_Float, float(0), float(2), _Clamp_30607c0c4e04e5879d4061a1f7688421_Out_3_Float);
|
|
float _Divide_cfe09f3bd2005485a3c2229367309962_Out_2_Float;
|
|
Unity_Divide_float(float(1), _Divide_9d9fc267a9ebcf84b378fdd4c66ff34d_Out_2_Float, _Divide_cfe09f3bd2005485a3c2229367309962_Out_2_Float);
|
|
float _Multiply_022be2eb9027988b9d5d4c1392749347_Out_2_Float;
|
|
Unity_Multiply_float_float(_Clamp_30607c0c4e04e5879d4061a1f7688421_Out_3_Float, _Divide_cfe09f3bd2005485a3c2229367309962_Out_2_Float, _Multiply_022be2eb9027988b9d5d4c1392749347_Out_2_Float);
|
|
float _Absolute_2fed84623df90f8ba200de68955721fd_Out_1_Float;
|
|
Unity_Absolute_float(_Multiply_022be2eb9027988b9d5d4c1392749347_Out_2_Float, _Absolute_2fed84623df90f8ba200de68955721fd_Out_1_Float);
|
|
float _Property_b79c921e30793a8e84330b3341539232_Out_0_Float = _CoverHardness;
|
|
float _Power_b9ddee06dfd0b880880990743bc10612_Out_2_Float;
|
|
Unity_Power_float(_Absolute_2fed84623df90f8ba200de68955721fd_Out_1_Float, _Property_b79c921e30793a8e84330b3341539232_Out_0_Float, _Power_b9ddee06dfd0b880880990743bc10612_Out_2_Float);
|
|
float _Property_c82936191f294c89b76f2d1809168f87_Out_0_Float = _Cover_Min_Height;
|
|
float _OneMinus_f0918ccb4f747b8e83e39d82dc3b5ca9_Out_1_Float;
|
|
Unity_OneMinus_float(_Property_c82936191f294c89b76f2d1809168f87_Out_0_Float, _OneMinus_f0918ccb4f747b8e83e39d82dc3b5ca9_Out_1_Float);
|
|
float _Split_0e80ce6f80cff18f87a043d1e3eecd08_R_1_Float = IN.AbsoluteWorldSpacePosition[0];
|
|
float _Split_0e80ce6f80cff18f87a043d1e3eecd08_G_2_Float = IN.AbsoluteWorldSpacePosition[1];
|
|
float _Split_0e80ce6f80cff18f87a043d1e3eecd08_B_3_Float = IN.AbsoluteWorldSpacePosition[2];
|
|
float _Split_0e80ce6f80cff18f87a043d1e3eecd08_A_4_Float = 0;
|
|
float _Add_60b3bb4cdad6e88b8c097c5b08daa7d0_Out_2_Float;
|
|
Unity_Add_float(_OneMinus_f0918ccb4f747b8e83e39d82dc3b5ca9_Out_1_Float, _Split_0e80ce6f80cff18f87a043d1e3eecd08_G_2_Float, _Add_60b3bb4cdad6e88b8c097c5b08daa7d0_Out_2_Float);
|
|
float _Add_1898d6f46901df809c68b5241b2e9c37_Out_2_Float;
|
|
Unity_Add_float(_Add_60b3bb4cdad6e88b8c097c5b08daa7d0_Out_2_Float, float(1), _Add_1898d6f46901df809c68b5241b2e9c37_Out_2_Float);
|
|
float _Clamp_25d6140fa3ff3a8f956f99005adace2e_Out_3_Float;
|
|
Unity_Clamp_float(_Add_1898d6f46901df809c68b5241b2e9c37_Out_2_Float, float(0), float(1), _Clamp_25d6140fa3ff3a8f956f99005adace2e_Out_3_Float);
|
|
float _Property_6094a52a4f01fd8da5ea847b69b6941c_Out_0_Float = _Cover_Min_Height_Blending;
|
|
float _Add_dc69668fc7f1a586a754713499f71d99_Out_2_Float;
|
|
Unity_Add_float(_Add_60b3bb4cdad6e88b8c097c5b08daa7d0_Out_2_Float, _Property_6094a52a4f01fd8da5ea847b69b6941c_Out_0_Float, _Add_dc69668fc7f1a586a754713499f71d99_Out_2_Float);
|
|
float _Divide_63e32406c8773d83bbf2e244faf8328f_Out_2_Float;
|
|
Unity_Divide_float(_Add_dc69668fc7f1a586a754713499f71d99_Out_2_Float, _Add_60b3bb4cdad6e88b8c097c5b08daa7d0_Out_2_Float, _Divide_63e32406c8773d83bbf2e244faf8328f_Out_2_Float);
|
|
float _OneMinus_ec22d21ddfa84288b6f750e9fdb107b9_Out_1_Float;
|
|
Unity_OneMinus_float(_Divide_63e32406c8773d83bbf2e244faf8328f_Out_2_Float, _OneMinus_ec22d21ddfa84288b6f750e9fdb107b9_Out_1_Float);
|
|
float _Add_a1206af8cbfbbe8081046db1247aba04_Out_2_Float;
|
|
Unity_Add_float(_OneMinus_ec22d21ddfa84288b6f750e9fdb107b9_Out_1_Float, float(-0.5), _Add_a1206af8cbfbbe8081046db1247aba04_Out_2_Float);
|
|
float _Clamp_640b5884b29f188987c157ad5e6e6959_Out_3_Float;
|
|
Unity_Clamp_float(_Add_a1206af8cbfbbe8081046db1247aba04_Out_2_Float, float(0), float(1), _Clamp_640b5884b29f188987c157ad5e6e6959_Out_3_Float);
|
|
float _Add_cfdb6daf617665838bb05910fa9505df_Out_2_Float;
|
|
Unity_Add_float(_Clamp_25d6140fa3ff3a8f956f99005adace2e_Out_3_Float, _Clamp_640b5884b29f188987c157ad5e6e6959_Out_3_Float, _Add_cfdb6daf617665838bb05910fa9505df_Out_2_Float);
|
|
float _Clamp_552ef7e5cf91408a982297885971db7e_Out_3_Float;
|
|
Unity_Clamp_float(_Add_cfdb6daf617665838bb05910fa9505df_Out_2_Float, float(0), float(1), _Clamp_552ef7e5cf91408a982297885971db7e_Out_3_Float);
|
|
float _Multiply_8f8db9c494f4fd869809fc45531df628_Out_2_Float;
|
|
Unity_Multiply_float_float(_Power_b9ddee06dfd0b880880990743bc10612_Out_2_Float, _Clamp_552ef7e5cf91408a982297885971db7e_Out_3_Float, _Multiply_8f8db9c494f4fd869809fc45531df628_Out_2_Float);
|
|
float _Multiply_60075aa07d29d285b3c1ee531e5b5cb3_Out_2_Float;
|
|
Unity_Multiply_float_float(_Saturate_f811eeeeb3229d83917aa8be2c36831e_Out_1_Float, _Multiply_8f8db9c494f4fd869809fc45531df628_Out_2_Float, _Multiply_60075aa07d29d285b3c1ee531e5b5cb3_Out_2_Float);
|
|
float3 _Lerp_453c8bc667315a8fa37a93affb877753_Out_3_Vector3;
|
|
Unity_Lerp_float3(_NormalBlend_4242e1b4a785378aa59dd49e9d993ffc_Out_2_Vector3, _NormalBlend_4058aded292b7389ade16c695a6cae6c_Out_2_Vector3, (_Multiply_60075aa07d29d285b3c1ee531e5b5cb3_Out_2_Float.xxx), _Lerp_453c8bc667315a8fa37a93affb877753_Out_3_Vector3);
|
|
float3 _Transform_a87113b0be9dfa8eaf6932ed645aa845_Out_1_Vector3;
|
|
{
|
|
float3x3 tangentTransform = float3x3(IN.WorldSpaceTangent, IN.WorldSpaceBiTangent, IN.WorldSpaceNormal);
|
|
_Transform_a87113b0be9dfa8eaf6932ed645aa845_Out_1_Vector3 = TransformTangentToWorldDir(_Lerp_453c8bc667315a8fa37a93affb877753_Out_3_Vector3.xyz, tangentTransform, false).xyz;
|
|
}
|
|
float3 _Multiply_f6e009bd5c0fd18c99ac72f233476fe5_Out_2_Vector3;
|
|
Unity_Multiply_float3_float3(_Property_9180f8dd535ba18499edac37aef4d231_Out_0_Vector3, _Transform_a87113b0be9dfa8eaf6932ed645aa845_Out_1_Vector3, _Multiply_f6e009bd5c0fd18c99ac72f233476fe5_Out_2_Vector3);
|
|
float _Split_96f0a5b75c0e0b889dbbccd04bc2aaaa_R_1_Float = _Multiply_f6e009bd5c0fd18c99ac72f233476fe5_Out_2_Vector3[0];
|
|
float _Split_96f0a5b75c0e0b889dbbccd04bc2aaaa_G_2_Float = _Multiply_f6e009bd5c0fd18c99ac72f233476fe5_Out_2_Vector3[1];
|
|
float _Split_96f0a5b75c0e0b889dbbccd04bc2aaaa_B_3_Float = _Multiply_f6e009bd5c0fd18c99ac72f233476fe5_Out_2_Vector3[2];
|
|
float _Split_96f0a5b75c0e0b889dbbccd04bc2aaaa_A_4_Float = 0;
|
|
float _Add_07028d5174d9f88594da40d46502bc13_Out_2_Float;
|
|
Unity_Add_float(_Split_96f0a5b75c0e0b889dbbccd04bc2aaaa_R_1_Float, _Split_96f0a5b75c0e0b889dbbccd04bc2aaaa_G_2_Float, _Add_07028d5174d9f88594da40d46502bc13_Out_2_Float);
|
|
float _Add_93af6c0f8ee9a3898ca51358a213b69f_Out_2_Float;
|
|
Unity_Add_float(_Add_07028d5174d9f88594da40d46502bc13_Out_2_Float, _Split_96f0a5b75c0e0b889dbbccd04bc2aaaa_B_3_Float, _Add_93af6c0f8ee9a3898ca51358a213b69f_Out_2_Float);
|
|
float _Multiply_77421b936cb9d68299ef6791b83fa867_Out_2_Float;
|
|
Unity_Multiply_float_float(_Add_93af6c0f8ee9a3898ca51358a213b69f_Out_2_Float, _Clamp_94f0310fee13798bad4e26e2381a94d4_Out_3_Float, _Multiply_77421b936cb9d68299ef6791b83fa867_Out_2_Float);
|
|
float _Multiply_ac6769fbe7188685a7537e5ac2c6bfa9_Out_2_Float;
|
|
Unity_Multiply_float_float(_Clamp_94f0310fee13798bad4e26e2381a94d4_Out_3_Float, _Property_b79c921e30793a8e84330b3341539232_Out_0_Float, _Multiply_ac6769fbe7188685a7537e5ac2c6bfa9_Out_2_Float);
|
|
float _Multiply_37a341e0d9783683aa8d5b7001acced1_Out_2_Float;
|
|
Unity_Multiply_float_float(_Multiply_ac6769fbe7188685a7537e5ac2c6bfa9_Out_2_Float, _Multiply_8f8db9c494f4fd869809fc45531df628_Out_2_Float, _Multiply_37a341e0d9783683aa8d5b7001acced1_Out_2_Float);
|
|
float _Multiply_02fa8aa66970b281b4a325dc68f407b9_Out_2_Float;
|
|
Unity_Multiply_float_float(_Multiply_77421b936cb9d68299ef6791b83fa867_Out_2_Float, _Multiply_37a341e0d9783683aa8d5b7001acced1_Out_2_Float, _Multiply_02fa8aa66970b281b4a325dc68f407b9_Out_2_Float);
|
|
UnityTexture2D _Property_fd2df7ee33755280948b4c47585d4323_Out_0_Texture2D = UnityBuildTexture2DStructNoScale(_CoverMaskMap);
|
|
Bindings_TriplanarNM_bc609ed95f52591469ab35dbfe0efcea_float _TriplanarNM_e307cfdc6531d2838aa3dfa51fc3913f;
|
|
_TriplanarNM_e307cfdc6531d2838aa3dfa51fc3913f.WorldSpaceNormal = IN.WorldSpaceNormal;
|
|
_TriplanarNM_e307cfdc6531d2838aa3dfa51fc3913f.AbsoluteWorldSpacePosition = IN.AbsoluteWorldSpacePosition;
|
|
float4 _TriplanarNM_e307cfdc6531d2838aa3dfa51fc3913f_XYZ_1_Vector4;
|
|
float4 _TriplanarNM_e307cfdc6531d2838aa3dfa51fc3913f_XZ_2_Vector4;
|
|
float4 _TriplanarNM_e307cfdc6531d2838aa3dfa51fc3913f_YZ_3_Vector4;
|
|
float4 _TriplanarNM_e307cfdc6531d2838aa3dfa51fc3913f_XY_4_Vector4;
|
|
SG_TriplanarNM_bc609ed95f52591469ab35dbfe0efcea_float(_Property_fd2df7ee33755280948b4c47585d4323_Out_0_Texture2D, (_Divide_1fe314f1ca9dd78fbf366bbeb40e4ccf_Out_2_Vector4).x, _Property_ee792eccbb538a878b19be5db264531e_Out_0_Float, UnityBuildSamplerStateStruct(SamplerState_Linear_Repeat_Aniso8), _TriplanarNM_e307cfdc6531d2838aa3dfa51fc3913f, _TriplanarNM_e307cfdc6531d2838aa3dfa51fc3913f_XYZ_1_Vector4, _TriplanarNM_e307cfdc6531d2838aa3dfa51fc3913f_XZ_2_Vector4, _TriplanarNM_e307cfdc6531d2838aa3dfa51fc3913f_YZ_3_Vector4, _TriplanarNM_e307cfdc6531d2838aa3dfa51fc3913f_XY_4_Vector4);
|
|
float _Split_fe834aed1172f284a73d2d6810bdb696_R_1_Float = _TriplanarNM_e307cfdc6531d2838aa3dfa51fc3913f_XYZ_1_Vector4[0];
|
|
float _Split_fe834aed1172f284a73d2d6810bdb696_G_2_Float = _TriplanarNM_e307cfdc6531d2838aa3dfa51fc3913f_XYZ_1_Vector4[1];
|
|
float _Split_fe834aed1172f284a73d2d6810bdb696_B_3_Float = _TriplanarNM_e307cfdc6531d2838aa3dfa51fc3913f_XYZ_1_Vector4[2];
|
|
float _Split_fe834aed1172f284a73d2d6810bdb696_A_4_Float = _TriplanarNM_e307cfdc6531d2838aa3dfa51fc3913f_XYZ_1_Vector4[3];
|
|
float _Property_b5f7a30c2ea202858ea263fd2a5a46c6_Out_0_Float = _CoverHeightMapMin;
|
|
float _Property_f86678f1d28c0483ba1ddccf49ee52f7_Out_0_Float = _CoverHeightMapMax;
|
|
float2 _Vector2_b5c01a0d88900d87a8a819b340151fb6_Out_0_Vector2 = float2(_Property_b5f7a30c2ea202858ea263fd2a5a46c6_Out_0_Float, _Property_f86678f1d28c0483ba1ddccf49ee52f7_Out_0_Float);
|
|
float _Property_82b4f7f3bf3b4382bd69876479a9e350_Out_0_Float = _CoverHeightMapOffset;
|
|
float2 _Add_6020f54fd1e6798e8e76bfdcad62759a_Out_2_Vector2;
|
|
Unity_Add_float2(_Vector2_b5c01a0d88900d87a8a819b340151fb6_Out_0_Vector2, (_Property_82b4f7f3bf3b4382bd69876479a9e350_Out_0_Float.xx), _Add_6020f54fd1e6798e8e76bfdcad62759a_Out_2_Vector2);
|
|
float _Remap_65ceff40294d1e8aae6051445b9fdbc8_Out_3_Float;
|
|
Unity_Remap_float(_Split_fe834aed1172f284a73d2d6810bdb696_B_3_Float, float2 (0, 1), _Add_6020f54fd1e6798e8e76bfdcad62759a_Out_2_Vector2, _Remap_65ceff40294d1e8aae6051445b9fdbc8_Out_3_Float);
|
|
float _Multiply_bb0edd30580dba8b89213d9c5b1ef857_Out_2_Float;
|
|
Unity_Multiply_float_float(_Multiply_02fa8aa66970b281b4a325dc68f407b9_Out_2_Float, _Remap_65ceff40294d1e8aae6051445b9fdbc8_Out_3_Float, _Multiply_bb0edd30580dba8b89213d9c5b1ef857_Out_2_Float);
|
|
float _Multiply_484dd7b77d58aa88bf99c82cfe77c774_Out_2_Float;
|
|
Unity_Multiply_float_float(_Split_2ada595651635e8d97bf4b82f717fcc6_G_2_Float, _Multiply_bb0edd30580dba8b89213d9c5b1ef857_Out_2_Float, _Multiply_484dd7b77d58aa88bf99c82cfe77c774_Out_2_Float);
|
|
float _Saturate_d39fa9bab8cc8a8fa35db28d4dbc74ab_Out_1_Float;
|
|
Unity_Saturate_float(_Multiply_484dd7b77d58aa88bf99c82cfe77c774_Out_2_Float, _Saturate_d39fa9bab8cc8a8fa35db28d4dbc74ab_Out_1_Float);
|
|
float _Multiply_6957741a4923cc8db84ac72df2e194a8_Out_2_Float;
|
|
Unity_Multiply_float_float(_Clamp_07a501c22c6e188199bed73412ac8926_Out_3_Float, _Saturate_d39fa9bab8cc8a8fa35db28d4dbc74ab_Out_1_Float, _Multiply_6957741a4923cc8db84ac72df2e194a8_Out_2_Float);
|
|
float _Branch_3ccf365d359214809d30b6430d863e3f_Out_3_Float;
|
|
Unity_Branch_float(_Property_cb0b6597aee47880b32e852aaa0e4a71_Out_0_Boolean, _Multiply_6957741a4923cc8db84ac72df2e194a8_Out_2_Float, _Clamp_07a501c22c6e188199bed73412ac8926_Out_3_Float, _Branch_3ccf365d359214809d30b6430d863e3f_Out_3_Float);
|
|
float3 _Lerp_ee1b6587de2afe82942e8476d303d598_Out_3_Vector3;
|
|
Unity_Lerp_float3(_BlendOverlayBaseColor_369c0b6a02e62b809dc5c6ac1efddde2_OutVector4_1_Vector3, _BlendOverlayBaseColor_ec1f397271cc818abdb95188914e6b4d_OutVector4_1_Vector3, (_Branch_3ccf365d359214809d30b6430d863e3f_Out_3_Float.xxx), _Lerp_ee1b6587de2afe82942e8476d303d598_Out_3_Vector3);
|
|
float4 _Property_c500db71e51fef8daff29f346c122e57_Out_0_Vector4 = _WetColor;
|
|
float3 _Multiply_89461014b078f787a0724725c54fb934_Out_2_Vector3;
|
|
Unity_Multiply_float3_float3((_Property_c500db71e51fef8daff29f346c122e57_Out_0_Vector4.xyz), _Lerp_ee1b6587de2afe82942e8476d303d598_Out_3_Vector3, _Multiply_89461014b078f787a0724725c54fb934_Out_2_Vector3);
|
|
float _OneMinus_e16dfb812ec64b8891c541171687142f_Out_1_Float;
|
|
Unity_OneMinus_float(_Split_2ada595651635e8d97bf4b82f717fcc6_R_1_Float, _OneMinus_e16dfb812ec64b8891c541171687142f_Out_1_Float);
|
|
float3 _Lerp_43bc7a9493df5a829abf080ee4ad3298_Out_3_Vector3;
|
|
Unity_Lerp_float3(_Lerp_ee1b6587de2afe82942e8476d303d598_Out_3_Vector3, _Multiply_89461014b078f787a0724725c54fb934_Out_2_Vector3, (_OneMinus_e16dfb812ec64b8891c541171687142f_Out_1_Float.xxx), _Lerp_43bc7a9493df5a829abf080ee4ad3298_Out_3_Vector3);
|
|
UnityTexture2D _Property_8e909eb873a4cd8e9af98a90a84fdde8_Out_0_Texture2D = UnityBuildTexture2DStructNoScale(_BaseMaskMap);
|
|
Bindings_TriplanarNM_bc609ed95f52591469ab35dbfe0efcea_float _TriplanarNM_52e6c67b7de4708f80a463a880607c97;
|
|
_TriplanarNM_52e6c67b7de4708f80a463a880607c97.WorldSpaceNormal = IN.WorldSpaceNormal;
|
|
_TriplanarNM_52e6c67b7de4708f80a463a880607c97.AbsoluteWorldSpacePosition = IN.AbsoluteWorldSpacePosition;
|
|
float4 _TriplanarNM_52e6c67b7de4708f80a463a880607c97_XYZ_1_Vector4;
|
|
float4 _TriplanarNM_52e6c67b7de4708f80a463a880607c97_XZ_2_Vector4;
|
|
float4 _TriplanarNM_52e6c67b7de4708f80a463a880607c97_YZ_3_Vector4;
|
|
float4 _TriplanarNM_52e6c67b7de4708f80a463a880607c97_XY_4_Vector4;
|
|
SG_TriplanarNM_bc609ed95f52591469ab35dbfe0efcea_float(_Property_8e909eb873a4cd8e9af98a90a84fdde8_Out_0_Texture2D, (_Divide_6a90cebe78e620828de587523daaa7e6_Out_2_Vector4).x, _Property_3539de8c698c2981bb3c088d4ec52201_Out_0_Float, UnityBuildSamplerStateStruct(SamplerState_Linear_Repeat_Aniso8), _TriplanarNM_52e6c67b7de4708f80a463a880607c97, _TriplanarNM_52e6c67b7de4708f80a463a880607c97_XYZ_1_Vector4, _TriplanarNM_52e6c67b7de4708f80a463a880607c97_XZ_2_Vector4, _TriplanarNM_52e6c67b7de4708f80a463a880607c97_YZ_3_Vector4, _TriplanarNM_52e6c67b7de4708f80a463a880607c97_XY_4_Vector4);
|
|
float _Split_79d9d761d63eaa8c97fb3cb7fae0c380_R_1_Float = _TriplanarNM_52e6c67b7de4708f80a463a880607c97_XYZ_1_Vector4[0];
|
|
float _Split_79d9d761d63eaa8c97fb3cb7fae0c380_G_2_Float = _TriplanarNM_52e6c67b7de4708f80a463a880607c97_XYZ_1_Vector4[1];
|
|
float _Split_79d9d761d63eaa8c97fb3cb7fae0c380_B_3_Float = _TriplanarNM_52e6c67b7de4708f80a463a880607c97_XYZ_1_Vector4[2];
|
|
float _Split_79d9d761d63eaa8c97fb3cb7fae0c380_A_4_Float = _TriplanarNM_52e6c67b7de4708f80a463a880607c97_XYZ_1_Vector4[3];
|
|
float _Property_b97916566d1fc587b95e8ec7fe8bd775_Out_0_Float = _BaseMetallic;
|
|
float _Multiply_d0c8d83444dbe38588583551936c7394_Out_2_Float;
|
|
Unity_Multiply_float_float(_Split_79d9d761d63eaa8c97fb3cb7fae0c380_R_1_Float, _Property_b97916566d1fc587b95e8ec7fe8bd775_Out_0_Float, _Multiply_d0c8d83444dbe38588583551936c7394_Out_2_Float);
|
|
float _Property_b187bbc548f3378caa8c964ca81707ca_Out_0_Float = _BaseAORemapMin;
|
|
float _Property_f06b327a4a8a7881a968eb399edf1d5c_Out_0_Float = _BaseAORemapMax;
|
|
float2 _Vector2_e267d722f88ada8da2d7edf8f7c0261d_Out_0_Vector2 = float2(_Property_b187bbc548f3378caa8c964ca81707ca_Out_0_Float, _Property_f06b327a4a8a7881a968eb399edf1d5c_Out_0_Float);
|
|
float _Remap_ad3c26564c54aa8cbb2f81aa114b3b78_Out_3_Float;
|
|
Unity_Remap_float(_Split_79d9d761d63eaa8c97fb3cb7fae0c380_G_2_Float, float2 (0, 1), _Vector2_e267d722f88ada8da2d7edf8f7c0261d_Out_0_Vector2, _Remap_ad3c26564c54aa8cbb2f81aa114b3b78_Out_3_Float);
|
|
float _Property_9a46e81c228dd0858cfdfc248fcb5efd_Out_0_Float = _BaseSmoothnessRemapMin;
|
|
float _Property_4bb3b70a3720ae8ea49e0f195b665d1f_Out_0_Float = _BaseSmoothnessRemapMax;
|
|
float2 _Vector2_6cef82af5d99208da4f2447a8ae60b4b_Out_0_Vector2 = float2(_Property_9a46e81c228dd0858cfdfc248fcb5efd_Out_0_Float, _Property_4bb3b70a3720ae8ea49e0f195b665d1f_Out_0_Float);
|
|
float _Remap_e30adbbf5d116285964ef079df15b895_Out_3_Float;
|
|
Unity_Remap_float(_Split_79d9d761d63eaa8c97fb3cb7fae0c380_A_4_Float, float2 (0, 1), _Vector2_6cef82af5d99208da4f2447a8ae60b4b_Out_0_Vector2, _Remap_e30adbbf5d116285964ef079df15b895_Out_3_Float);
|
|
float _Multiply_794172f65d2acd8981bc0e2ecc71376e_Out_2_Float;
|
|
Unity_Multiply_float_float(_SampleTexture2D_4bd08411faa60c828847f2247f06a809_B_6_Float, 2, _Multiply_794172f65d2acd8981bc0e2ecc71376e_Out_2_Float);
|
|
float _Add_dedefe53d91ea08c81d7a6d9071b0263_Out_2_Float;
|
|
Unity_Add_float(_Multiply_794172f65d2acd8981bc0e2ecc71376e_Out_2_Float, float(-1), _Add_dedefe53d91ea08c81d7a6d9071b0263_Out_2_Float);
|
|
float _Property_039bed9aac95ec8fa510fea3c4904280_Out_0_Float = _DetailSmoothnessScale;
|
|
float _Multiply_eb0a55c9be8cee86b9847c24f0e5be60_Out_2_Float;
|
|
Unity_Multiply_float_float(_Add_dedefe53d91ea08c81d7a6d9071b0263_Out_2_Float, _Property_039bed9aac95ec8fa510fea3c4904280_Out_0_Float, _Multiply_eb0a55c9be8cee86b9847c24f0e5be60_Out_2_Float);
|
|
float _Saturate_ca849f42c1cc238cb8fb1eb04fbfb9dd_Out_1_Float;
|
|
Unity_Saturate_float(_Multiply_eb0a55c9be8cee86b9847c24f0e5be60_Out_2_Float, _Saturate_ca849f42c1cc238cb8fb1eb04fbfb9dd_Out_1_Float);
|
|
float _Absolute_bc7994d4f833e382b37b5718ee583259_Out_1_Float;
|
|
Unity_Absolute_float(_Saturate_ca849f42c1cc238cb8fb1eb04fbfb9dd_Out_1_Float, _Absolute_bc7994d4f833e382b37b5718ee583259_Out_1_Float);
|
|
Bindings_BlendOverlayDetailSmoothness_06e12138dc89c0040b45a57abe520a1a_float _BlendOverlayDetailSmoothness_5a03404db5a34885a089f1aee363667f;
|
|
float _BlendOverlayDetailSmoothness_5a03404db5a34885a089f1aee363667f_SmoothnessOverlay_1_Float;
|
|
SG_BlendOverlayDetailSmoothness_06e12138dc89c0040b45a57abe520a1a_float(_Remap_e30adbbf5d116285964ef079df15b895_Out_3_Float, _Add_dedefe53d91ea08c81d7a6d9071b0263_Out_2_Float, _Absolute_bc7994d4f833e382b37b5718ee583259_Out_1_Float, _BlendOverlayDetailSmoothness_5a03404db5a34885a089f1aee363667f, _BlendOverlayDetailSmoothness_5a03404db5a34885a089f1aee363667f_SmoothnessOverlay_1_Float);
|
|
float _Saturate_3d6c6d852202408cb9b11aac8a566c89_Out_1_Float;
|
|
Unity_Saturate_float(_BlendOverlayDetailSmoothness_5a03404db5a34885a089f1aee363667f_SmoothnessOverlay_1_Float, _Saturate_3d6c6d852202408cb9b11aac8a566c89_Out_1_Float);
|
|
float3 _Vector3_8ed406a0096de4818282676bf24b1a85_Out_0_Vector3 = float3(_Multiply_d0c8d83444dbe38588583551936c7394_Out_2_Float, _Remap_ad3c26564c54aa8cbb2f81aa114b3b78_Out_3_Float, _Saturate_3d6c6d852202408cb9b11aac8a566c89_Out_1_Float);
|
|
float _Split_2ec5937af5023a8295e3858d32b193d5_R_1_Float = _Vector3_8ed406a0096de4818282676bf24b1a85_Out_0_Vector3[0];
|
|
float _Split_2ec5937af5023a8295e3858d32b193d5_G_2_Float = _Vector3_8ed406a0096de4818282676bf24b1a85_Out_0_Vector3[1];
|
|
float _Split_2ec5937af5023a8295e3858d32b193d5_B_3_Float = _Vector3_8ed406a0096de4818282676bf24b1a85_Out_0_Vector3[2];
|
|
float _Split_2ec5937af5023a8295e3858d32b193d5_A_4_Float = 0;
|
|
UnityTexture2D _Property_0f50abb140882d848d9fc7be8e3468dc_Out_0_Texture2D = UnityBuildTexture2DStructNoScale(_ShapeAO);
|
|
float4 _SampleTexture2D_33392602b94694898ec8227a89f13cc9_RGBA_0_Vector4 = SAMPLE_TEXTURE2D(_Property_0f50abb140882d848d9fc7be8e3468dc_Out_0_Texture2D.tex, _Property_0f50abb140882d848d9fc7be8e3468dc_Out_0_Texture2D.samplerstate, _Property_0f50abb140882d848d9fc7be8e3468dc_Out_0_Texture2D.GetTransformedUV(IN.uv0.xy) );
|
|
float _SampleTexture2D_33392602b94694898ec8227a89f13cc9_R_4_Float = _SampleTexture2D_33392602b94694898ec8227a89f13cc9_RGBA_0_Vector4.r;
|
|
float _SampleTexture2D_33392602b94694898ec8227a89f13cc9_G_5_Float = _SampleTexture2D_33392602b94694898ec8227a89f13cc9_RGBA_0_Vector4.g;
|
|
float _SampleTexture2D_33392602b94694898ec8227a89f13cc9_B_6_Float = _SampleTexture2D_33392602b94694898ec8227a89f13cc9_RGBA_0_Vector4.b;
|
|
float _SampleTexture2D_33392602b94694898ec8227a89f13cc9_A_7_Float = _SampleTexture2D_33392602b94694898ec8227a89f13cc9_RGBA_0_Vector4.a;
|
|
float _Property_a51c4b6d05e6718d919aadcf26153350_Out_0_Float = _ShapeAORemapMin;
|
|
float _Property_973fbc42b7a69088b9fc2c502945f369_Out_0_Float = _ShapeAORemapMax;
|
|
float2 _Vector2_a73753c5a8c4fa828d2eb25d4fb8b399_Out_0_Vector2 = float2(_Property_a51c4b6d05e6718d919aadcf26153350_Out_0_Float, _Property_973fbc42b7a69088b9fc2c502945f369_Out_0_Float);
|
|
float _Remap_270e7e207f303487bc04348b1b54db69_Out_3_Float;
|
|
Unity_Remap_float(_SampleTexture2D_33392602b94694898ec8227a89f13cc9_G_5_Float, float2 (0, 1), _Vector2_a73753c5a8c4fa828d2eb25d4fb8b399_Out_0_Vector2, _Remap_270e7e207f303487bc04348b1b54db69_Out_3_Float);
|
|
float _Minimum_307d1a8c4f5c6a87a1bbc658a5811679_Out_2_Float;
|
|
Unity_Minimum_float(_Split_2ec5937af5023a8295e3858d32b193d5_G_2_Float, _Remap_270e7e207f303487bc04348b1b54db69_Out_3_Float, _Minimum_307d1a8c4f5c6a87a1bbc658a5811679_Out_2_Float);
|
|
float3 _Vector3_fac10bf467f5ff82b4f071ba165bf458_Out_0_Vector3 = float3(_Split_2ec5937af5023a8295e3858d32b193d5_R_1_Float, _Minimum_307d1a8c4f5c6a87a1bbc658a5811679_Out_2_Float, _Split_2ec5937af5023a8295e3858d32b193d5_B_3_Float);
|
|
float _Property_fa6937565be49684915e6bb999529949_Out_0_Float = _CoverMetallic;
|
|
float _Multiply_d0ecb787fa289f8f9d3c2988d60f18d3_Out_2_Float;
|
|
Unity_Multiply_float_float(_Split_fe834aed1172f284a73d2d6810bdb696_R_1_Float, _Property_fa6937565be49684915e6bb999529949_Out_0_Float, _Multiply_d0ecb787fa289f8f9d3c2988d60f18d3_Out_2_Float);
|
|
float _Property_8f5ca0ba38d2a4858c1b4e44f6a375b4_Out_0_Float = _CoverAORemapMin;
|
|
float _Property_a15ef0fe46e1d88f9e20df6605bd1499_Out_0_Float = _CoverAORemapMax;
|
|
float2 _Vector2_969d809c2de99f89959cc4526a665db9_Out_0_Vector2 = float2(_Property_8f5ca0ba38d2a4858c1b4e44f6a375b4_Out_0_Float, _Property_a15ef0fe46e1d88f9e20df6605bd1499_Out_0_Float);
|
|
float _Remap_1b6065f44329038594e2d0cf001fa138_Out_3_Float;
|
|
Unity_Remap_float(_Split_fe834aed1172f284a73d2d6810bdb696_G_2_Float, float2 (0, 1), _Vector2_969d809c2de99f89959cc4526a665db9_Out_0_Vector2, _Remap_1b6065f44329038594e2d0cf001fa138_Out_3_Float);
|
|
float _Property_0fde68fd9824db8e9f5b4b0daff90270_Out_0_Float = _CoverSmoothnessRemapMin;
|
|
float _Property_abad1da00caf99869e0c9ca2926c76bd_Out_0_Float = _CoverSmoothnessRemapMax;
|
|
float2 _Vector2_1aa81c2ad7cc268caa834889569ce556_Out_0_Vector2 = float2(_Property_0fde68fd9824db8e9f5b4b0daff90270_Out_0_Float, _Property_abad1da00caf99869e0c9ca2926c76bd_Out_0_Float);
|
|
float _Remap_4948cd1fb38399888e9567ee2abb8acd_Out_3_Float;
|
|
Unity_Remap_float(_Split_fe834aed1172f284a73d2d6810bdb696_A_4_Float, float2 (0, 1), _Vector2_1aa81c2ad7cc268caa834889569ce556_Out_0_Vector2, _Remap_4948cd1fb38399888e9567ee2abb8acd_Out_3_Float);
|
|
float _Multiply_d3e207dba42f1984aacff3c1bf4eef0b_Out_2_Float;
|
|
Unity_Multiply_float_float(_SampleTexture2D_4bd08411faa60c828847f2247f06a809_B_6_Float, 2, _Multiply_d3e207dba42f1984aacff3c1bf4eef0b_Out_2_Float);
|
|
float _Add_0299d632f81fff8f969a0eed5f77397c_Out_2_Float;
|
|
Unity_Add_float(_Multiply_d3e207dba42f1984aacff3c1bf4eef0b_Out_2_Float, float(-1), _Add_0299d632f81fff8f969a0eed5f77397c_Out_2_Float);
|
|
float _Property_a2c7556e96b60b8e90cb5145ca6f9dde_Out_0_Float = _DetailCoverSmoothnessScale;
|
|
float _Multiply_d340fbee0985958dbb66555a73bd733c_Out_2_Float;
|
|
Unity_Multiply_float_float(_Add_0299d632f81fff8f969a0eed5f77397c_Out_2_Float, _Property_a2c7556e96b60b8e90cb5145ca6f9dde_Out_0_Float, _Multiply_d340fbee0985958dbb66555a73bd733c_Out_2_Float);
|
|
float _Saturate_2c0cc920be0ca88e937ec108b38f5fde_Out_1_Float;
|
|
Unity_Saturate_float(_Multiply_d340fbee0985958dbb66555a73bd733c_Out_2_Float, _Saturate_2c0cc920be0ca88e937ec108b38f5fde_Out_1_Float);
|
|
float _Absolute_3f81290e941e378283f7151c4a0731e2_Out_1_Float;
|
|
Unity_Absolute_float(_Saturate_2c0cc920be0ca88e937ec108b38f5fde_Out_1_Float, _Absolute_3f81290e941e378283f7151c4a0731e2_Out_1_Float);
|
|
Bindings_BlendOverlayDetailSmoothness_06e12138dc89c0040b45a57abe520a1a_float _BlendOverlayDetailSmoothness_e7a4fbe98378f084bd09f6e5d90e1cb8;
|
|
float _BlendOverlayDetailSmoothness_e7a4fbe98378f084bd09f6e5d90e1cb8_SmoothnessOverlay_1_Float;
|
|
SG_BlendOverlayDetailSmoothness_06e12138dc89c0040b45a57abe520a1a_float(_Remap_4948cd1fb38399888e9567ee2abb8acd_Out_3_Float, _Add_0299d632f81fff8f969a0eed5f77397c_Out_2_Float, _Absolute_3f81290e941e378283f7151c4a0731e2_Out_1_Float, _BlendOverlayDetailSmoothness_e7a4fbe98378f084bd09f6e5d90e1cb8, _BlendOverlayDetailSmoothness_e7a4fbe98378f084bd09f6e5d90e1cb8_SmoothnessOverlay_1_Float);
|
|
float _Saturate_9091ea9d9924c682ad6b94d3322ee822_Out_1_Float;
|
|
Unity_Saturate_float(_BlendOverlayDetailSmoothness_e7a4fbe98378f084bd09f6e5d90e1cb8_SmoothnessOverlay_1_Float, _Saturate_9091ea9d9924c682ad6b94d3322ee822_Out_1_Float);
|
|
float3 _Vector3_93bafe600474e7819ebc13e534b986bf_Out_0_Vector3 = float3(_Multiply_d0ecb787fa289f8f9d3c2988d60f18d3_Out_2_Float, _Remap_1b6065f44329038594e2d0cf001fa138_Out_3_Float, _Saturate_9091ea9d9924c682ad6b94d3322ee822_Out_1_Float);
|
|
float _Split_6ec9cc5e56f3f68ba37ff91557979c18_R_1_Float = _Vector3_93bafe600474e7819ebc13e534b986bf_Out_0_Vector3[0];
|
|
float _Split_6ec9cc5e56f3f68ba37ff91557979c18_G_2_Float = _Vector3_93bafe600474e7819ebc13e534b986bf_Out_0_Vector3[1];
|
|
float _Split_6ec9cc5e56f3f68ba37ff91557979c18_B_3_Float = _Vector3_93bafe600474e7819ebc13e534b986bf_Out_0_Vector3[2];
|
|
float _Split_6ec9cc5e56f3f68ba37ff91557979c18_A_4_Float = 0;
|
|
float _Property_ca9c61425ece6b8c909c06b1e2738f1a_Out_0_Float = _CoverShapeAORemapMin;
|
|
float _Property_b9be92f1612c908d80643f0e96015b33_Out_0_Float = _CoverShapeAORemapMax;
|
|
float2 _Vector2_9b862c4e147d1082afad3606339d2130_Out_0_Vector2 = float2(_Property_ca9c61425ece6b8c909c06b1e2738f1a_Out_0_Float, _Property_b9be92f1612c908d80643f0e96015b33_Out_0_Float);
|
|
float _Remap_c1f0022add809b83bad7b493177bddb7_Out_3_Float;
|
|
Unity_Remap_float(_SampleTexture2D_33392602b94694898ec8227a89f13cc9_G_5_Float, float2 (0, 1), _Vector2_9b862c4e147d1082afad3606339d2130_Out_0_Vector2, _Remap_c1f0022add809b83bad7b493177bddb7_Out_3_Float);
|
|
float _Minimum_595c2f31bb0ec588977a2b9ea46bf6b0_Out_2_Float;
|
|
Unity_Minimum_float(_Split_6ec9cc5e56f3f68ba37ff91557979c18_G_2_Float, _Remap_c1f0022add809b83bad7b493177bddb7_Out_3_Float, _Minimum_595c2f31bb0ec588977a2b9ea46bf6b0_Out_2_Float);
|
|
float3 _Vector3_6cb5b2c4675bb28cb41ea88b6eaa2aff_Out_0_Vector3 = float3(_Split_6ec9cc5e56f3f68ba37ff91557979c18_R_1_Float, _Minimum_595c2f31bb0ec588977a2b9ea46bf6b0_Out_2_Float, _Split_6ec9cc5e56f3f68ba37ff91557979c18_B_3_Float);
|
|
float3 _Lerp_fa40b54f3d5a1a8a95f6306e837b9338_Out_3_Vector3;
|
|
Unity_Lerp_float3(_Vector3_fac10bf467f5ff82b4f071ba165bf458_Out_0_Vector3, _Vector3_6cb5b2c4675bb28cb41ea88b6eaa2aff_Out_0_Vector3, (_Branch_3ccf365d359214809d30b6430d863e3f_Out_3_Float.xxx), _Lerp_fa40b54f3d5a1a8a95f6306e837b9338_Out_3_Vector3);
|
|
float _Split_c4a5352a58a4f88fb40410f956825dc6_R_1_Float = _Lerp_fa40b54f3d5a1a8a95f6306e837b9338_Out_3_Vector3[0];
|
|
float _Split_c4a5352a58a4f88fb40410f956825dc6_G_2_Float = _Lerp_fa40b54f3d5a1a8a95f6306e837b9338_Out_3_Vector3[1];
|
|
float _Split_c4a5352a58a4f88fb40410f956825dc6_B_3_Float = _Lerp_fa40b54f3d5a1a8a95f6306e837b9338_Out_3_Vector3[2];
|
|
float _Split_c4a5352a58a4f88fb40410f956825dc6_A_4_Float = 0;
|
|
float _Property_7861e880056eb88ab923a2ff5b12179d_Out_0_Float = _WetSmoothness;
|
|
float _Lerp_ee63160826cff4869f0e63568dd6f8b7_Out_3_Float;
|
|
Unity_Lerp_float(_Split_c4a5352a58a4f88fb40410f956825dc6_B_3_Float, _Property_7861e880056eb88ab923a2ff5b12179d_Out_0_Float, _OneMinus_e16dfb812ec64b8891c541171687142f_Out_1_Float, _Lerp_ee63160826cff4869f0e63568dd6f8b7_Out_3_Float);
|
|
float _Property_1c389d922d4fba86bc62c7d42ac8643d_Out_0_Float = _CoverNormalScale;
|
|
float3 _NormalStrength_db3de71f618fee878c84a13374c7adc4_Out_2_Vector3;
|
|
Unity_NormalStrength_float((_TriplanarNMn_ba7e211dd8095589a2939b5b239ca8e0_XYZ_1_Vector4.xyz), _Property_1c389d922d4fba86bc62c7d42ac8643d_Out_0_Float, _NormalStrength_db3de71f618fee878c84a13374c7adc4_Out_2_Vector3);
|
|
float3 _NormalBlend_b2e537e7a99f9280ba682b47daf3c5e3_Out_2_Vector3;
|
|
Unity_NormalBlend_float(_NormalStrength_db3de71f618fee878c84a13374c7adc4_Out_2_Vector3, _NormalStrength_401cd5af500bd68dbc9bca19d548d0db_Out_2_Vector3, _NormalBlend_b2e537e7a99f9280ba682b47daf3c5e3_Out_2_Vector3);
|
|
float2 _Vector2_b87489f8633d268598edb76163057164_Out_0_Vector2 = float2(_SampleTexture2D_4bd08411faa60c828847f2247f06a809_A_7_Float, _SampleTexture2D_4bd08411faa60c828847f2247f06a809_G_5_Float);
|
|
float2 _Multiply_95e603bb6d4bd7809de0ae42c8f45058_Out_2_Vector2;
|
|
Unity_Multiply_float2_float2(_Vector2_b87489f8633d268598edb76163057164_Out_0_Vector2, float2(2, 2), _Multiply_95e603bb6d4bd7809de0ae42c8f45058_Out_2_Vector2);
|
|
float2 _Add_c116ac3906ccf68d82dd5b73d0f5659a_Out_2_Vector2;
|
|
Unity_Add_float2(_Multiply_95e603bb6d4bd7809de0ae42c8f45058_Out_2_Vector2, float2(-1, -1), _Add_c116ac3906ccf68d82dd5b73d0f5659a_Out_2_Vector2);
|
|
float _Property_988acb131fd330878b4ac0672366ad90_Out_0_Float = _DetailCoverNormalScale;
|
|
float2 _Multiply_6de1a79215e1928f9f3fc3293df74f88_Out_2_Vector2;
|
|
Unity_Multiply_float2_float2(_Add_c116ac3906ccf68d82dd5b73d0f5659a_Out_2_Vector2, (_Property_988acb131fd330878b4ac0672366ad90_Out_0_Float.xx), _Multiply_6de1a79215e1928f9f3fc3293df74f88_Out_2_Vector2);
|
|
float _Split_9ce53bb7a65f16809b6a95d82286186e_R_1_Float = _Multiply_6de1a79215e1928f9f3fc3293df74f88_Out_2_Vector2[0];
|
|
float _Split_9ce53bb7a65f16809b6a95d82286186e_G_2_Float = _Multiply_6de1a79215e1928f9f3fc3293df74f88_Out_2_Vector2[1];
|
|
float _Split_9ce53bb7a65f16809b6a95d82286186e_B_3_Float = 0;
|
|
float _Split_9ce53bb7a65f16809b6a95d82286186e_A_4_Float = 0;
|
|
float _DotProduct_8912687db556b6819d2a38ba8511a7ae_Out_2_Float;
|
|
Unity_DotProduct_float2(_Multiply_6de1a79215e1928f9f3fc3293df74f88_Out_2_Vector2, _Multiply_6de1a79215e1928f9f3fc3293df74f88_Out_2_Vector2, _DotProduct_8912687db556b6819d2a38ba8511a7ae_Out_2_Float);
|
|
float _Saturate_013ea9a02a1ff18992540b270836cc73_Out_1_Float;
|
|
Unity_Saturate_float(_DotProduct_8912687db556b6819d2a38ba8511a7ae_Out_2_Float, _Saturate_013ea9a02a1ff18992540b270836cc73_Out_1_Float);
|
|
float _OneMinus_eefd2695dc7d77838984fc25a1c00b0b_Out_1_Float;
|
|
Unity_OneMinus_float(_Saturate_013ea9a02a1ff18992540b270836cc73_Out_1_Float, _OneMinus_eefd2695dc7d77838984fc25a1c00b0b_Out_1_Float);
|
|
float _SquareRoot_1d25cc71b4ce9286af1666a96ae6ac5a_Out_1_Float;
|
|
Unity_SquareRoot_float(_OneMinus_eefd2695dc7d77838984fc25a1c00b0b_Out_1_Float, _SquareRoot_1d25cc71b4ce9286af1666a96ae6ac5a_Out_1_Float);
|
|
float3 _Vector3_c3d9c7e92a1c5b8ea5650ab3bb421c27_Out_0_Vector3 = float3(_Split_9ce53bb7a65f16809b6a95d82286186e_R_1_Float, _Split_9ce53bb7a65f16809b6a95d82286186e_G_2_Float, _SquareRoot_1d25cc71b4ce9286af1666a96ae6ac5a_Out_1_Float);
|
|
float3 _NormalBlend_8e1d1c87f8c12b87b64883533bfa43be_Out_2_Vector3;
|
|
Unity_NormalBlend_float(_NormalBlend_b2e537e7a99f9280ba682b47daf3c5e3_Out_2_Vector3, _Vector3_c3d9c7e92a1c5b8ea5650ab3bb421c27_Out_0_Vector3, _NormalBlend_8e1d1c87f8c12b87b64883533bfa43be_Out_2_Vector3);
|
|
float3 _Lerp_48cd568fef7d358b8d65b989db745e6c_Out_3_Vector3;
|
|
Unity_Lerp_float3(_NormalBlend_4242e1b4a785378aa59dd49e9d993ffc_Out_2_Vector3, _NormalBlend_8e1d1c87f8c12b87b64883533bfa43be_Out_2_Vector3, (_Branch_3ccf365d359214809d30b6430d863e3f_Out_3_Float.xxx), _Lerp_48cd568fef7d358b8d65b989db745e6c_Out_3_Vector3);
|
|
surface.BaseColor = _Lerp_43bc7a9493df5a829abf080ee4ad3298_Out_3_Vector3;
|
|
surface.Emission = float3(0, 0, 0);
|
|
surface.Alpha = float(1);
|
|
surface.BentNormal = IN.TangentSpaceNormal;
|
|
surface.Smoothness = _Lerp_ee63160826cff4869f0e63568dd6f8b7_Out_3_Float;
|
|
surface.Occlusion = _Split_c4a5352a58a4f88fb40410f956825dc6_G_2_Float;
|
|
surface.NormalTS = _Lerp_48cd568fef7d358b8d65b989db745e6c_Out_3_Vector3;
|
|
surface.Metallic = _Split_c4a5352a58a4f88fb40410f956825dc6_R_1_Float;
|
|
return surface;
|
|
}
|
|
|
|
// --------------------------------------------------
|
|
// Build Graph Inputs
|
|
#ifdef HAVE_VFX_MODIFICATION
|
|
#define VFX_SRP_ATTRIBUTES AttributesMesh
|
|
#define VaryingsMeshType VaryingsMeshToPS
|
|
#define VFX_SRP_VARYINGS VaryingsMeshType
|
|
#define VFX_SRP_SURFACE_INPUTS FragInputs
|
|
#endif
|
|
|
|
VertexDescriptionInputs AttributesMeshToVertexDescriptionInputs(AttributesMesh input)
|
|
{
|
|
VertexDescriptionInputs output;
|
|
ZERO_INITIALIZE(VertexDescriptionInputs, output);
|
|
|
|
output.ObjectSpaceNormal = input.normalOS;
|
|
output.ObjectSpaceTangent = input.tangentOS.xyz;
|
|
output.ObjectSpacePosition = input.positionOS;
|
|
#if UNITY_ANY_INSTANCING_ENABLED
|
|
#else
|
|
#endif
|
|
|
|
return output;
|
|
}
|
|
|
|
VertexDescription GetVertexDescription(AttributesMesh input, float3 timeParameters
|
|
#ifdef HAVE_VFX_MODIFICATION
|
|
, AttributesElement element
|
|
#endif
|
|
)
|
|
{
|
|
// build graph inputs
|
|
VertexDescriptionInputs vertexDescriptionInputs = AttributesMeshToVertexDescriptionInputs(input);
|
|
// Override time parameters with used one (This is required to correctly handle motion vectors for vertex animation based on time)
|
|
|
|
// evaluate vertex graph
|
|
#ifdef HAVE_VFX_MODIFICATION
|
|
GraphProperties properties;
|
|
ZERO_INITIALIZE(GraphProperties, properties);
|
|
|
|
// Fetch the vertex graph properties for the particle instance.
|
|
GetElementVertexProperties(element, properties);
|
|
|
|
VertexDescription vertexDescription = VertexDescriptionFunction(vertexDescriptionInputs, properties);
|
|
#else
|
|
VertexDescription vertexDescription = VertexDescriptionFunction(vertexDescriptionInputs);
|
|
#endif
|
|
return vertexDescription;
|
|
|
|
}
|
|
|
|
AttributesMesh ApplyMeshModification(AttributesMesh input, float3 timeParameters
|
|
#ifdef USE_CUSTOMINTERP_SUBSTRUCT
|
|
#ifdef TESSELLATION_ON
|
|
, inout VaryingsMeshToDS varyings
|
|
#else
|
|
, inout VaryingsMeshToPS varyings
|
|
#endif
|
|
#endif
|
|
#ifdef HAVE_VFX_MODIFICATION
|
|
, AttributesElement element
|
|
#endif
|
|
)
|
|
{
|
|
VertexDescription vertexDescription = GetVertexDescription(input, timeParameters
|
|
#ifdef HAVE_VFX_MODIFICATION
|
|
, element
|
|
#endif
|
|
);
|
|
|
|
// copy graph output to the results
|
|
input.positionOS = vertexDescription.Position;
|
|
input.normalOS = vertexDescription.Normal;
|
|
input.tangentOS.xyz = vertexDescription.Tangent;
|
|
|
|
|
|
|
|
return input;
|
|
}
|
|
|
|
#if defined(_ADD_CUSTOM_VELOCITY) // For shader graph custom velocity
|
|
// Return precomputed Velocity in object space
|
|
float3 GetCustomVelocity(AttributesMesh input
|
|
#ifdef HAVE_VFX_MODIFICATION
|
|
, AttributesElement element
|
|
#endif
|
|
)
|
|
{
|
|
VertexDescription vertexDescription = GetVertexDescription(input, _TimeParameters.xyz
|
|
#ifdef HAVE_VFX_MODIFICATION
|
|
, element
|
|
#endif
|
|
);
|
|
return vertexDescription.CustomVelocity;
|
|
}
|
|
#endif
|
|
|
|
FragInputs BuildFragInputs(VaryingsMeshToPS input)
|
|
{
|
|
FragInputs output;
|
|
ZERO_INITIALIZE(FragInputs, output);
|
|
|
|
// Init to some default value to make the computer quiet (else it output 'divide by zero' warning even if value is not used).
|
|
// TODO: this is a really poor workaround, but the variable is used in a bunch of places
|
|
// to compute normals which are then passed on elsewhere to compute other values...
|
|
output.tangentToWorld = k_identity3x3;
|
|
output.positionSS = input.positionCS; // input.positionCS is SV_Position
|
|
|
|
output.positionRWS = input.positionRWS;
|
|
output.tangentToWorld = BuildTangentToWorld(input.tangentWS, input.normalWS);
|
|
output.texCoord0 = input.texCoord0;
|
|
output.color = input.color;
|
|
|
|
#if UNITY_ANY_INSTANCING_ENABLED
|
|
#else
|
|
#endif
|
|
|
|
#ifdef HAVE_VFX_MODIFICATION
|
|
// FragInputs from VFX come from two places: Interpolator or CBuffer.
|
|
#if VFX_USE_GRAPH_VALUES
|
|
uint instanceActiveIndex = asuint(UNITY_ACCESS_INSTANCED_PROP(PerInstance, _InstanceActiveIndex));
|
|
/* WARNING: $splice Could not find named fragment 'VFXLoadGraphValues' */
|
|
#endif
|
|
|
|
/* WARNING: $splice Could not find named fragment 'VFXSetFragInputs' */
|
|
|
|
#endif
|
|
|
|
// splice point to copy custom interpolator fields from varyings to frag inputs
|
|
|
|
|
|
return output;
|
|
}
|
|
|
|
// existing HDRP code uses the combined function to go directly from packed to frag inputs
|
|
FragInputs UnpackVaryingsMeshToFragInputs(PackedVaryingsMeshToPS input)
|
|
{
|
|
UNITY_SETUP_INSTANCE_ID(input);
|
|
#if defined(HAVE_VFX_MODIFICATION) && defined(UNITY_INSTANCING_ENABLED)
|
|
unity_InstanceID = input.instanceID;
|
|
#endif
|
|
VaryingsMeshToPS unpacked = UnpackVaryingsMeshToPS(input);
|
|
return BuildFragInputs(unpacked);
|
|
}
|
|
SurfaceDescriptionInputs FragInputsToSurfaceDescriptionInputs(FragInputs input, float3 viewWS)
|
|
{
|
|
SurfaceDescriptionInputs output;
|
|
ZERO_INITIALIZE(SurfaceDescriptionInputs, output);
|
|
|
|
output.WorldSpaceNormal = normalize(input.tangentToWorld[2].xyz);
|
|
#if defined(SHADER_STAGE_RAY_TRACING)
|
|
#else
|
|
#endif
|
|
output.TangentSpaceNormal = float3(0.0f, 0.0f, 1.0f);
|
|
output.WorldSpaceTangent = input.tangentToWorld[0].xyz;
|
|
output.WorldSpaceBiTangent = input.tangentToWorld[1].xyz;
|
|
output.AbsoluteWorldSpacePosition = GetAbsolutePositionWS(input.positionRWS);
|
|
|
|
#if UNITY_UV_STARTS_AT_TOP
|
|
#else
|
|
#endif
|
|
|
|
|
|
output.uv0 = input.texCoord0;
|
|
output.VertexColor = input.color;
|
|
|
|
// splice point to copy frag inputs custom interpolator pack into the SDI
|
|
|
|
|
|
return output;
|
|
}
|
|
|
|
// --------------------------------------------------
|
|
// Build Surface Data (Specific Material)
|
|
|
|
void ApplyDecalToSurfaceDataNoNormal(DecalSurfaceData decalSurfaceData, inout SurfaceData surfaceData);
|
|
|
|
void ApplyDecalAndGetNormal(FragInputs fragInputs, PositionInputs posInput, SurfaceDescription surfaceDescription,
|
|
inout SurfaceData surfaceData)
|
|
{
|
|
float3 doubleSidedConstants = GetDoubleSidedConstants();
|
|
|
|
#ifdef DECAL_NORMAL_BLENDING
|
|
// SG nodes don't ouptut surface gradients, so if decals require surf grad blending, we have to convert
|
|
// the normal to gradient before applying the decal. We then have to resolve the gradient back to world space
|
|
float3 normalTS;
|
|
|
|
normalTS = SurfaceGradientFromTangentSpaceNormalAndFromTBN(surfaceDescription.NormalTS,
|
|
fragInputs.tangentToWorld[0], fragInputs.tangentToWorld[1]);
|
|
|
|
|
|
#if HAVE_DECALS
|
|
if (_EnableDecals)
|
|
{
|
|
float alpha = 1.0;
|
|
alpha = surfaceDescription.Alpha;
|
|
|
|
DecalSurfaceData decalSurfaceData = GetDecalSurfaceData(posInput, fragInputs, alpha);
|
|
ApplyDecalToSurfaceNormal(decalSurfaceData, fragInputs.tangentToWorld[2], normalTS);
|
|
ApplyDecalToSurfaceDataNoNormal(decalSurfaceData, surfaceData);
|
|
}
|
|
#endif
|
|
|
|
GetNormalWS_SG(fragInputs, normalTS, surfaceData.normalWS, doubleSidedConstants);
|
|
#else
|
|
// normal delivered to master node
|
|
GetNormalWS(fragInputs, surfaceDescription.NormalTS, surfaceData.normalWS, doubleSidedConstants);
|
|
|
|
#if HAVE_DECALS
|
|
if (_EnableDecals)
|
|
{
|
|
float alpha = 1.0;
|
|
alpha = surfaceDescription.Alpha;
|
|
|
|
// Both uses and modifies 'surfaceData.normalWS'.
|
|
DecalSurfaceData decalSurfaceData = GetDecalSurfaceData(posInput, fragInputs, alpha);
|
|
ApplyDecalToSurfaceNormal(decalSurfaceData, surfaceData.normalWS.xyz);
|
|
ApplyDecalToSurfaceDataNoNormal(decalSurfaceData, surfaceData);
|
|
}
|
|
#endif
|
|
#endif
|
|
}
|
|
void BuildSurfaceData(FragInputs fragInputs, inout SurfaceDescription surfaceDescription, float3 V, PositionInputs posInput, out SurfaceData surfaceData, out float3 bentNormalWS)
|
|
{
|
|
ZERO_INITIALIZE(SurfaceData, surfaceData);
|
|
|
|
// specularOcclusion need to be init ahead of decal to quiet the compiler that modify the SurfaceData struct
|
|
// however specularOcclusion can come from the graph, so need to be init here so it can be override.
|
|
surfaceData.specularOcclusion = 1.0;
|
|
surfaceData.thickness = 0.0;
|
|
|
|
surfaceData.baseColor = surfaceDescription.BaseColor;
|
|
surfaceData.perceptualSmoothness = surfaceDescription.Smoothness;
|
|
surfaceData.ambientOcclusion = surfaceDescription.Occlusion;
|
|
surfaceData.metallic = surfaceDescription.Metallic;
|
|
|
|
#if defined(_REFRACTION_PLANE) || defined(_REFRACTION_SPHERE) || defined(_REFRACTION_THIN)
|
|
if (_EnableSSRefraction)
|
|
{
|
|
|
|
surfaceData.transmittanceMask = (1.0 - surfaceDescription.Alpha);
|
|
surfaceDescription.Alpha = 1.0;
|
|
}
|
|
else
|
|
{
|
|
surfaceData.ior = 1.0;
|
|
surfaceData.transmittanceColor = float3(1.0, 1.0, 1.0);
|
|
surfaceData.atDistance = 1.0;
|
|
surfaceData.transmittanceMask = 0.0;
|
|
surfaceDescription.Alpha = 1.0;
|
|
}
|
|
#else
|
|
surfaceData.ior = 1.0;
|
|
surfaceData.transmittanceColor = float3(1.0, 1.0, 1.0);
|
|
surfaceData.atDistance = 1.0;
|
|
surfaceData.transmittanceMask = 0.0;
|
|
#endif
|
|
|
|
// These static material feature allow compile time optimization
|
|
surfaceData.materialFeatures = MATERIALFEATUREFLAGS_LIT_STANDARD;
|
|
#ifdef _MATERIAL_FEATURE_SUBSURFACE_SCATTERING
|
|
surfaceData.materialFeatures |= MATERIALFEATUREFLAGS_LIT_SUBSURFACE_SCATTERING;
|
|
#endif
|
|
|
|
#ifdef _MATERIAL_FEATURE_TRANSMISSION
|
|
surfaceData.materialFeatures |= MATERIALFEATUREFLAGS_LIT_TRANSMISSION;
|
|
#endif
|
|
|
|
#ifdef _MATERIAL_FEATURE_COLORED_TRANSMISSION
|
|
surfaceData.materialFeatures |= MATERIALFEATUREFLAGS_LIT_TRANSMISSION;
|
|
surfaceData.materialFeatures |= MATERIALFEATUREFLAGS_LIT_COLORED_TRANSMISSION;
|
|
|
|
#endif
|
|
|
|
#ifdef _MATERIAL_FEATURE_ANISOTROPY
|
|
surfaceData.materialFeatures |= MATERIALFEATUREFLAGS_LIT_ANISOTROPY;
|
|
|
|
// Initialize the normal to something non-zero to avoid a div-zero warning for anisotropy.
|
|
surfaceData.normalWS = float3(0, 1, 0);
|
|
#endif
|
|
|
|
#ifdef _MATERIAL_FEATURE_IRIDESCENCE
|
|
surfaceData.materialFeatures |= MATERIALFEATUREFLAGS_LIT_IRIDESCENCE;
|
|
#endif
|
|
|
|
#ifdef _MATERIAL_FEATURE_SPECULAR_COLOR
|
|
surfaceData.materialFeatures |= MATERIALFEATUREFLAGS_LIT_SPECULAR_COLOR;
|
|
#endif
|
|
|
|
#ifdef _MATERIAL_FEATURE_CLEAR_COAT
|
|
surfaceData.materialFeatures |= MATERIALFEATUREFLAGS_LIT_CLEAR_COAT;
|
|
#endif
|
|
|
|
#if defined (_MATERIAL_FEATURE_SPECULAR_COLOR) && defined (_ENERGY_CONSERVING_SPECULAR)
|
|
// Require to have setup baseColor
|
|
// Reproduce the energy conservation done in legacy Unity. Not ideal but better for compatibility and users can unchek it
|
|
surfaceData.baseColor *= (1.0 - Max3(surfaceData.specularColor.r, surfaceData.specularColor.g, surfaceData.specularColor.b));
|
|
#endif
|
|
|
|
float3 doubleSidedConstants = GetDoubleSidedConstants();
|
|
|
|
ApplyDecalAndGetNormal(fragInputs, posInput, surfaceDescription, surfaceData);
|
|
|
|
surfaceData.geomNormalWS = fragInputs.tangentToWorld[2];
|
|
|
|
surfaceData.tangentWS = normalize(fragInputs.tangentToWorld[0].xyz); // The tangent is not normalize in tangentToWorld for mikkt. TODO: Check if it expected that we normalize with Morten. Tag: SURFACE_GRADIENT
|
|
|
|
|
|
bentNormalWS = surfaceData.normalWS;
|
|
|
|
surfaceData.tangentWS = Orthonormalize(surfaceData.tangentWS, surfaceData.normalWS);
|
|
|
|
#ifdef DEBUG_DISPLAY
|
|
#if !defined(SHADER_STAGE_RAY_TRACING)
|
|
// Mipmap mode debugging isn't supported with ray tracing as it relies on derivatives
|
|
if (_DebugMipMapMode != DEBUGMIPMAPMODE_NONE)
|
|
{
|
|
#ifdef FRAG_INPUTS_USE_TEXCOORD0
|
|
surfaceData.baseColor = GET_TEXTURE_STREAMING_DEBUG(posInput.positionSS, fragInputs.texCoord0);
|
|
#else
|
|
surfaceData.baseColor = GET_TEXTURE_STREAMING_DEBUG_NO_UV(posInput.positionSS);
|
|
#endif
|
|
surfaceData.metallic = 0;
|
|
}
|
|
#endif
|
|
|
|
// We need to call ApplyDebugToSurfaceData after filling the surfaceData and before filling builtinData
|
|
// as it can modify attribute use for static lighting
|
|
ApplyDebugToSurfaceData(fragInputs.tangentToWorld, surfaceData);
|
|
#endif
|
|
|
|
// By default we use the ambient occlusion with Tri-ace trick (apply outside) for specular occlusion.
|
|
// If user provide bent normal then we process a better term
|
|
#if defined(_SPECULAR_OCCLUSION_CUSTOM)
|
|
// Just use the value passed through via the slot (not active otherwise)
|
|
#elif defined(_SPECULAR_OCCLUSION_FROM_AO_BENT_NORMAL)
|
|
// If we have bent normal and ambient occlusion, process a specular occlusion
|
|
surfaceData.specularOcclusion = GetSpecularOcclusionFromBentAO(V, bentNormalWS, surfaceData.normalWS, surfaceData.ambientOcclusion, PerceptualSmoothnessToPerceptualRoughness(surfaceData.perceptualSmoothness));
|
|
#elif defined(_AMBIENT_OCCLUSION) && defined(_SPECULAR_OCCLUSION_FROM_AO)
|
|
surfaceData.specularOcclusion = GetSpecularOcclusionFromAmbientOcclusion(ClampNdotV(dot(surfaceData.normalWS, V)), surfaceData.ambientOcclusion, PerceptualSmoothnessToRoughness(surfaceData.perceptualSmoothness));
|
|
#endif
|
|
|
|
#if defined(_ENABLE_GEOMETRIC_SPECULAR_AA) && !defined(SHADER_STAGE_RAY_TRACING)
|
|
surfaceData.perceptualSmoothness = GeometricNormalFiltering(surfaceData.perceptualSmoothness, fragInputs.tangentToWorld[2], surfaceDescription.SpecularAAScreenSpaceVariance, surfaceDescription.SpecularAAThreshold);
|
|
#endif
|
|
}
|
|
|
|
// --------------------------------------------------
|
|
// Get Surface And BuiltinData
|
|
|
|
void GetSurfaceAndBuiltinData(FragInputs fragInputs, float3 V, inout PositionInputs posInput, out SurfaceData surfaceData, out BuiltinData builtinData RAY_TRACING_OPTIONAL_PARAMETERS)
|
|
{
|
|
// Don't dither if displaced tessellation (we're fading out the displacement instead to match the next LOD)
|
|
#if !defined(SHADER_STAGE_RAY_TRACING) && !defined(_TESSELLATION_DISPLACEMENT)
|
|
#ifdef LOD_FADE_CROSSFADE // enable dithering LOD transition if user select CrossFade transition in LOD group
|
|
LODDitheringTransition(ComputeFadeMaskSeed(V, posInput.positionSS), unity_LODFade.x);
|
|
#endif
|
|
#endif
|
|
|
|
#ifndef SHADER_UNLIT
|
|
#ifdef _DOUBLESIDED_ON
|
|
float3 doubleSidedConstants = _DoubleSidedConstants.xyz;
|
|
#else
|
|
float3 doubleSidedConstants = float3(1.0, 1.0, 1.0);
|
|
#endif
|
|
|
|
ApplyDoubleSidedFlipOrMirror(fragInputs, doubleSidedConstants); // Apply double sided flip on the vertex normal
|
|
#endif // SHADER_UNLIT
|
|
|
|
SurfaceDescriptionInputs surfaceDescriptionInputs = FragInputsToSurfaceDescriptionInputs(fragInputs, V);
|
|
|
|
#if defined(HAVE_VFX_MODIFICATION)
|
|
GraphProperties properties;
|
|
ZERO_INITIALIZE(GraphProperties, properties);
|
|
|
|
GetElementPixelProperties(fragInputs, properties);
|
|
|
|
SurfaceDescription surfaceDescription = SurfaceDescriptionFunction(surfaceDescriptionInputs, properties);
|
|
#else
|
|
SurfaceDescription surfaceDescription = SurfaceDescriptionFunction(surfaceDescriptionInputs);
|
|
#endif
|
|
|
|
#ifdef DEBUG_DISPLAY
|
|
if (_DebugMipMapMode != DEBUGMIPMAPMODE_NONE)
|
|
{
|
|
surfaceDescription.Alpha = 1.0f;
|
|
}
|
|
#endif
|
|
|
|
// Perform alpha test very early to save performance (a killed pixel will not sample textures)
|
|
// TODO: split graph evaluation to grab just alpha dependencies first? tricky..
|
|
#ifdef _ALPHATEST_ON
|
|
float alphaCutoff = surfaceDescription.AlphaClipThreshold;
|
|
#if SHADERPASS == SHADERPASS_TRANSPARENT_DEPTH_PREPASS
|
|
// The TransparentDepthPrepass is also used with SSR transparent.
|
|
// If an artists enable transaprent SSR but not the TransparentDepthPrepass itself, then we use AlphaClipThreshold
|
|
// otherwise if TransparentDepthPrepass is enabled we use AlphaClipThresholdDepthPrepass
|
|
#elif SHADERPASS == SHADERPASS_TRANSPARENT_DEPTH_POSTPASS
|
|
// DepthPostpass always use its own alpha threshold
|
|
alphaCutoff = surfaceDescription.AlphaClipThresholdDepthPostpass;
|
|
#elif (SHADERPASS == SHADERPASS_SHADOWS) || (SHADERPASS == SHADERPASS_RAYTRACING_VISIBILITY)
|
|
// If use shadow threshold isn't enable we don't allow any test
|
|
#endif
|
|
|
|
GENERIC_ALPHA_TEST(surfaceDescription.Alpha, alphaCutoff);
|
|
#endif
|
|
|
|
#if !defined(SHADER_STAGE_RAY_TRACING) && _DEPTHOFFSET_ON
|
|
ApplyDepthOffsetPositionInput(V, surfaceDescription.DepthOffset, GetViewForwardDir(), GetWorldToHClipMatrix(), posInput);
|
|
#endif
|
|
|
|
#ifndef SHADER_UNLIT
|
|
float3 bentNormalWS;
|
|
BuildSurfaceData(fragInputs, surfaceDescription, V, posInput, surfaceData, bentNormalWS);
|
|
|
|
#ifdef FRAG_INPUTS_USE_TEXCOORD1
|
|
float4 lightmapTexCoord1 = fragInputs.texCoord1;
|
|
#else
|
|
float4 lightmapTexCoord1 = float4(0,0,0,0);
|
|
#endif
|
|
|
|
#ifdef FRAG_INPUTS_USE_TEXCOORD2
|
|
float4 lightmapTexCoord2 = fragInputs.texCoord2;
|
|
#else
|
|
float4 lightmapTexCoord2 = float4(0,0,0,0);
|
|
#endif
|
|
|
|
float alpha = 1.0;
|
|
alpha = surfaceDescription.Alpha;
|
|
|
|
// Builtin Data
|
|
// For back lighting we use the oposite vertex normal
|
|
InitBuiltinData(posInput, alpha, bentNormalWS, -fragInputs.tangentToWorld[2], lightmapTexCoord1, lightmapTexCoord2, builtinData);
|
|
|
|
#else
|
|
BuildSurfaceData(fragInputs, surfaceDescription, V, posInput, surfaceData);
|
|
|
|
ZERO_BUILTIN_INITIALIZE(builtinData); // No call to InitBuiltinData as we don't have any lighting
|
|
builtinData.opacity = surfaceDescription.Alpha;
|
|
|
|
#if defined(DEBUG_DISPLAY)
|
|
// Light Layers are currently not used for the Unlit shader (because it is not lit)
|
|
// But Unlit objects do cast shadows according to their rendering layer mask, which is what we want to
|
|
// display in the light layers visualization mode, therefore we need the renderingLayers
|
|
builtinData.renderingLayers = GetMeshRenderingLayerMask();
|
|
#endif
|
|
|
|
#endif // SHADER_UNLIT
|
|
|
|
#ifdef _ALPHATEST_ON
|
|
// Used for sharpening by alpha to mask - Alpha to covertage is only used with depth only and forward pass (no shadow pass, no transparent pass)
|
|
builtinData.alphaClipTreshold = alphaCutoff;
|
|
#endif
|
|
|
|
// override sampleBakedGI - not used by Unlit
|
|
// When overriding GI, we need to force the isLightmap flag to make sure we don't add APV (sampled in the lightloop) on top of the overridden value (set at GBuffer stage)
|
|
|
|
builtinData.emissiveColor = surfaceDescription.Emission;
|
|
|
|
// Note this will not fully work on transparent surfaces (can check with _SURFACE_TYPE_TRANSPARENT define)
|
|
// We will always overwrite vt feeback with the nearest. So behind transparent surfaces vt will not be resolved
|
|
// This is a limitation of the current MRT approach.
|
|
#ifdef UNITY_VIRTUAL_TEXTURING
|
|
#endif
|
|
|
|
#if _DEPTHOFFSET_ON
|
|
builtinData.depthOffset = surfaceDescription.DepthOffset;
|
|
#endif
|
|
|
|
// TODO: We should generate distortion / distortionBlur for non distortion pass
|
|
#if (SHADERPASS == SHADERPASS_DISTORTION)
|
|
builtinData.distortion = surfaceDescription.Distortion;
|
|
builtinData.distortionBlur = surfaceDescription.DistortionBlur;
|
|
#endif
|
|
|
|
#ifndef SHADER_UNLIT
|
|
// PostInitBuiltinData call ApplyDebugToBuiltinData
|
|
PostInitBuiltinData(V, posInput, surfaceData, builtinData);
|
|
#else
|
|
ApplyDebugToBuiltinData(builtinData);
|
|
#endif
|
|
|
|
RAY_TRACING_OPTIONAL_ALPHA_TEST_PASS
|
|
}
|
|
|
|
// --------------------------------------------------
|
|
// Main
|
|
|
|
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/RenderPipeline/ShaderPass/ShaderPassDepthOnly.hlsl"
|
|
|
|
// --------------------------------------------------
|
|
// Visual Effect Vertex Invocations
|
|
|
|
#ifdef HAVE_VFX_MODIFICATION
|
|
#if !defined(SHADER_STAGE_RAY_TRACING)
|
|
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/ShaderLibrary/VisualEffectVertex.hlsl"
|
|
#else
|
|
#endif
|
|
#endif
|
|
|
|
ENDHLSL
|
|
}
|
|
Pass
|
|
{
|
|
Name "SceneSelectionPass"
|
|
Tags
|
|
{
|
|
"LightMode" = "SceneSelectionPass"
|
|
}
|
|
|
|
// Render State
|
|
Cull Off
|
|
|
|
// Debug
|
|
// <None>
|
|
|
|
// --------------------------------------------------
|
|
// Pass
|
|
|
|
HLSLPROGRAM
|
|
|
|
// Pragmas
|
|
#pragma multi_compile _ DOTS_INSTANCING_ON
|
|
#pragma editor_sync_compilation
|
|
#pragma instancing_options renderinglayer
|
|
#pragma target 4.5
|
|
#pragma vertex Vert
|
|
#pragma fragment Frag
|
|
#pragma only_renderers d3d11 playstation xboxone xboxseries vulkan metal switch
|
|
#pragma multi_compile_instancing
|
|
|
|
// Keywords
|
|
#pragma shader_feature _ _SURFACE_TYPE_TRANSPARENT
|
|
#pragma shader_feature_local _ _DOUBLESIDED_ON
|
|
#pragma shader_feature_local _ _ADD_PRECOMPUTED_VELOCITY
|
|
#pragma shader_feature_local _ _TRANSPARENT_WRITES_MOTION_VEC _TRANSPARENT_REFRACTIVE_SORT
|
|
#pragma shader_feature_local_fragment _ _ENABLE_FOG_ON_TRANSPARENT
|
|
#pragma multi_compile _ LOD_FADE_CROSSFADE
|
|
#pragma shader_feature_local_fragment _ _DISABLE_DECALS
|
|
#pragma shader_feature_local_raytracing _ _DISABLE_DECALS
|
|
#pragma shader_feature_local_fragment _ _DISABLE_SSR
|
|
#pragma shader_feature_local_raytracing _ _DISABLE_SSR
|
|
#pragma shader_feature_local_fragment _ _DISABLE_SSR_TRANSPARENT
|
|
#pragma shader_feature_local_raytracing _ _DISABLE_SSR_TRANSPARENT
|
|
#pragma shader_feature_local _ _REFRACTION_PLANE _REFRACTION_SPHERE _REFRACTION_THIN
|
|
#pragma shader_feature_local_fragment _MATERIAL_FEATURE_SUBSURFACE_SCATTERING
|
|
#pragma shader_feature_local_raytracing _MATERIAL_FEATURE_SUBSURFACE_SCATTERING
|
|
#pragma shader_feature_local_fragment _MATERIAL_FEATURE_TRANSMISSION
|
|
#pragma shader_feature_local_raytracing _MATERIAL_FEATURE_TRANSMISSION
|
|
#pragma shader_feature_local_fragment _MATERIAL_FEATURE_ANISOTROPY
|
|
#pragma shader_feature_local_raytracing _MATERIAL_FEATURE_ANISOTROPY
|
|
#pragma shader_feature_local_fragment _MATERIAL_FEATURE_IRIDESCENCE
|
|
#pragma shader_feature_local_raytracing _MATERIAL_FEATURE_IRIDESCENCE
|
|
#pragma shader_feature_local_fragment _MATERIAL_FEATURE_SPECULAR_COLOR
|
|
#pragma shader_feature_local_raytracing _MATERIAL_FEATURE_SPECULAR_COLOR
|
|
#pragma shader_feature_local_fragment _MATERIAL_FEATURE_COLORED_TRANSMISSION
|
|
#pragma shader_feature_local_raytracing _MATERIAL_FEATURE_COLORED_TRANSMISSION
|
|
// GraphKeywords: <None>
|
|
|
|
// Defines
|
|
#define SHADERPASS SHADERPASS_DEPTH_ONLY
|
|
#define RAYTRACING_SHADER_GRAPH_DEFAULT
|
|
#define SCENESELECTIONPASS 1
|
|
#define SUPPORT_GLOBAL_MIP_BIAS 1
|
|
|
|
// For custom interpolators to inject a substruct definition before FragInputs definition,
|
|
// allowing for FragInputs to capture CI's intended for ShaderGraph's SDI.
|
|
struct CustomInterpolators
|
|
{
|
|
};
|
|
#define USE_CUSTOMINTERP_SUBSTRUCT
|
|
|
|
|
|
|
|
// TODO: Merge FragInputsVFX substruct with CustomInterpolators.
|
|
#ifdef HAVE_VFX_MODIFICATION
|
|
struct FragInputsVFX
|
|
{
|
|
/* WARNING: $splice Could not find named fragment 'FragInputsVFX' */
|
|
};
|
|
#endif
|
|
|
|
#include "Packages/com.unity.render-pipelines.core/ShaderLibrary/Common.hlsl"
|
|
#include "Packages/com.unity.render-pipelines.core/ShaderLibrary/GeometricTools.hlsl" // Required by Tessellation.hlsl
|
|
#include "Packages/com.unity.render-pipelines.core/ShaderLibrary/Tessellation.hlsl"
|
|
#include "Packages/com.unity.render-pipelines.core/ShaderLibrary/Texture.hlsl"
|
|
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/ShaderLibrary/ShaderVariables.hlsl"
|
|
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/RenderPipeline/ShaderPass/ShaderPass.cs.hlsl"
|
|
#include "Packages/com.unity.render-pipelines.core/ShaderLibrary/TextureStack.hlsl" // Required to be include before we include properties as it define DECLARE_STACK_CB
|
|
#include "Packages/com.unity.render-pipelines.core/ShaderLibrary/DebugMipmapStreamingMacros.hlsl" // Required before including properties as it defines UNITY_TEXTURE_STREAMING_DEBUG_VARS
|
|
// Always include Shader Graph version
|
|
// Always include last to avoid double macros
|
|
#include "Packages/com.unity.shadergraph/ShaderGraphLibrary/Functions.hlsl" // Need to be here for Gradient struct definition
|
|
|
|
// --------------------------------------------------
|
|
// Defines
|
|
|
|
// Attribute
|
|
#define ATTRIBUTES_NEED_NORMAL
|
|
#define ATTRIBUTES_NEED_TANGENT
|
|
#define ATTRIBUTES_NEED_TEXCOORD0
|
|
#define ATTRIBUTES_NEED_COLOR
|
|
#define VARYINGS_NEED_POSITION_WS
|
|
#define VARYINGS_NEED_TANGENT_TO_WORLD
|
|
#define VARYINGS_NEED_TEXCOORD0
|
|
#define VARYINGS_NEED_COLOR
|
|
|
|
#define HAVE_MESH_MODIFICATION
|
|
|
|
//Strip down the FragInputs.hlsl (on graphics), so we can only optimize the interpolators we use.
|
|
//if by accident something requests contents of FragInputs.hlsl, it will be caught as a compiler error
|
|
//Frag inputs stripping is only enabled when FRAG_INPUTS_ENABLE_STRIPPING is set
|
|
#if !defined(SHADER_STAGE_RAY_TRACING) && SHADERPASS != SHADERPASS_RAYTRACING_GBUFFER && SHADERPASS != SHADERPASS_FULL_SCREEN_DEBUG
|
|
#define FRAG_INPUTS_ENABLE_STRIPPING
|
|
#endif
|
|
#define FRAG_INPUTS_USE_TEXCOORD0
|
|
|
|
|
|
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/RenderPipeline/ShaderPass/FragInputs.hlsl"
|
|
|
|
|
|
|
|
|
|
// Following two define are a workaround introduce in 10.1.x for RaytracingQualityNode
|
|
// The ShaderGraph don't support correctly migration of this node as it serialize all the node data
|
|
// in the json file making it impossible to uprgrade. Until we get a fix, we do a workaround here
|
|
// to still allow us to rename the field and keyword of this node without breaking existing code.
|
|
#ifdef RAYTRACING_SHADER_GRAPH_DEFAULT
|
|
#define RAYTRACING_SHADER_GRAPH_HIGH
|
|
#endif
|
|
|
|
#ifdef RAYTRACING_SHADER_GRAPH_RAYTRACED
|
|
#define RAYTRACING_SHADER_GRAPH_LOW
|
|
#endif
|
|
// end
|
|
|
|
#ifndef SHADER_UNLIT
|
|
// We need isFrontFace when using double sided - it is not required for unlit as in case of unlit double sided only drive the cullmode
|
|
// VARYINGS_NEED_CULLFACE can be define by VaryingsMeshToPS.FaceSign input if a IsFrontFace Node is included in the shader graph.
|
|
#if defined(_DOUBLESIDED_ON) && !defined(VARYINGS_NEED_CULLFACE)
|
|
#define VARYINGS_NEED_CULLFACE
|
|
#endif
|
|
#endif
|
|
|
|
// Specific Material Define
|
|
#define _AMBIENT_OCCLUSION 1
|
|
#define _SPECULAR_OCCLUSION_FROM_AO 1
|
|
#define _ENERGY_CONSERVING_SPECULAR 1
|
|
|
|
#if _MATERIAL_FEATURE_COLORED_TRANSMISSION
|
|
// Colored Transmission doesn't support clear coat
|
|
#undef _MATERIAL_FEATURE_CLEAR_COAT
|
|
#endif
|
|
|
|
// If we use subsurface scattering, enable output split lighting (for forward pass)
|
|
#if defined(_MATERIAL_FEATURE_SUBSURFACE_SCATTERING) && !defined(_SURFACE_TYPE_TRANSPARENT)
|
|
#define OUTPUT_SPLIT_LIGHTING
|
|
#endif
|
|
|
|
// This shader support recursive rendering for raytracing
|
|
#define HAVE_RECURSIVE_RENDERING
|
|
|
|
// In Path Tracing, For all single-sided, refractive materials, we want to force a thin refraction model
|
|
#if (SHADERPASS == SHADERPASS_PATH_TRACING) && !defined(_DOUBLESIDED_ON) && (defined(_REFRACTION_PLANE) || defined(_REFRACTION_SPHERE))
|
|
#undef _REFRACTION_PLANE
|
|
#undef _REFRACTION_SPHERE
|
|
#define _REFRACTION_THIN
|
|
#endif
|
|
// Caution: we can use the define SHADER_UNLIT onlit after the above Material include as it is the Unlit template who define it
|
|
|
|
// To handle SSR on transparent correctly with a possibility to enable/disable it per framesettings
|
|
// we should have a code like this:
|
|
// if !defined(_DISABLE_SSR_TRANSPARENT)
|
|
// pragma multi_compile _ WRITE_NORMAL_BUFFER
|
|
// endif
|
|
// i.e we enable the multicompile only if we can receive SSR or not, and then C# code drive
|
|
// it based on if SSR transparent in frame settings and not (and stripper can strip it).
|
|
// this is currently not possible with our current preprocessor as _DISABLE_SSR_TRANSPARENT is a keyword not a define
|
|
// so instead we used this and chose to pay the extra cost of normal write even if SSR transaprent is disabled.
|
|
// Ideally the shader graph generator should handle it but condition below can't be handle correctly for now.
|
|
#if SHADERPASS == SHADERPASS_TRANSPARENT_DEPTH_PREPASS
|
|
#if !defined(_DISABLE_SSR_TRANSPARENT) && !defined(SHADER_UNLIT)
|
|
#define WRITE_NORMAL_BUFFER
|
|
#endif
|
|
#endif
|
|
|
|
// See Lit.shader
|
|
#if SHADERPASS == SHADERPASS_MOTION_VECTORS && defined(WRITE_DECAL_BUFFER_AND_RENDERING_LAYER)
|
|
#define WRITE_DECAL_BUFFER
|
|
#endif
|
|
|
|
#ifndef DEBUG_DISPLAY
|
|
// In case of opaque we don't want to perform the alpha test, it is done in depth prepass and we use depth equal for ztest (setup from UI)
|
|
// Don't do it with debug display mode as it is possible there is no depth prepass in this case
|
|
#if !defined(_SURFACE_TYPE_TRANSPARENT)
|
|
#if SHADERPASS == SHADERPASS_FORWARD
|
|
#define SHADERPASS_FORWARD_BYPASS_ALPHA_TEST
|
|
#elif SHADERPASS == SHADERPASS_GBUFFER
|
|
#define SHADERPASS_GBUFFER_BYPASS_ALPHA_TEST
|
|
#endif
|
|
#endif
|
|
#endif
|
|
|
|
// Define _DEFERRED_CAPABLE_MATERIAL for shader capable to run in deferred pass
|
|
#if defined(SHADER_LIT) && !defined(_SURFACE_TYPE_TRANSPARENT)
|
|
#define _DEFERRED_CAPABLE_MATERIAL
|
|
#endif
|
|
|
|
// Translate transparent motion vector define
|
|
#if (defined(_TRANSPARENT_WRITES_MOTION_VEC) || defined(_TRANSPARENT_REFRACTIVE_SORT)) && defined(_SURFACE_TYPE_TRANSPARENT)
|
|
#define _WRITE_TRANSPARENT_MOTION_VECTOR
|
|
#endif
|
|
|
|
// -- Graph Properties
|
|
CBUFFER_START(UnityPerMaterial)
|
|
float4 _BaseColor;
|
|
float4 _BaseColorMap_TexelSize;
|
|
float4 _BaseTilingOffset;
|
|
float _BaseTriplanarThreshold;
|
|
float4 _BaseNormalMap_TexelSize;
|
|
float _BaseNormalScale;
|
|
float4 _BaseMaskMap_TexelSize;
|
|
float _BaseMetallic;
|
|
float _BaseAORemapMin;
|
|
float _BaseAORemapMax;
|
|
float _BaseSmoothnessRemapMin;
|
|
float _BaseSmoothnessRemapMax;
|
|
float _USEDYNAMICCOVERTSTATICMASKF;
|
|
float4 _CoverMaskA_TexelSize;
|
|
float _CoverMaskPower;
|
|
float _Cover_Amount;
|
|
float _Cover_Amount_Grow_Speed;
|
|
float3 _CoverDirection;
|
|
float _Cover_Max_Angle;
|
|
float _Cover_Min_Height;
|
|
float _Cover_Min_Height_Blending;
|
|
float4 _CoverBaseColor;
|
|
float4 _CoverBaseColorMap_TexelSize;
|
|
float4 _CoverTilingOffset;
|
|
float _CoverTriplanarThreshold;
|
|
float4 _CoverNormalMap_TexelSize;
|
|
float _CoverNormalScale;
|
|
float _CoverNormalBlendHardness;
|
|
float _CoverHeightMapMin;
|
|
float _CoverHeightMapMax;
|
|
float _CoverHeightMapOffset;
|
|
float _CoverHardness;
|
|
float4 _CoverMaskMap_TexelSize;
|
|
float _CoverMetallic;
|
|
float _CoverAORemapMin;
|
|
float _CoverAORemapMax;
|
|
float _CoverSmoothnessRemapMin;
|
|
float _CoverSmoothnessRemapMax;
|
|
float4 _ShapeNormalMap_TexelSize;
|
|
float _shapeNormalScale;
|
|
float _CovershapeNormalScale;
|
|
float4 _ShapeAO_TexelSize;
|
|
float _ShapeAORemapMin;
|
|
float _ShapeAORemapMax;
|
|
float _CoverShapeAORemapMin;
|
|
float _CoverShapeAORemapMax;
|
|
float4 _DetailMap_TexelSize;
|
|
float4 _DetailTilingOffset;
|
|
float _DetailAlbedoScale;
|
|
float _DetailNormalScale;
|
|
float _DetailSmoothnessScale;
|
|
float _DetailCoverAlbedoScale;
|
|
float _DetailCoverNormalScale;
|
|
float _DetailCoverSmoothnessScale;
|
|
float _CoverMaskRCurvature;
|
|
float _BaseBrightnessCurvMultply;
|
|
float _BaseBrightnessCurvPower;
|
|
float _BaseDarknessCurvMultply;
|
|
float _BaseDarknessCurvPower;
|
|
float _CoverBrightnessCurvMultply;
|
|
float _CoverBrightnessCurvPower;
|
|
float _CoverDarknessCurvMultply;
|
|
float _CoverDarknessCurvPower;
|
|
float4 _WetColor;
|
|
float _WetSmoothness;
|
|
float4 _EmissionColor;
|
|
float _UseShadowThreshold;
|
|
float4 _DoubleSidedConstants;
|
|
UNITY_TEXTURE_STREAMING_DEBUG_VARS;
|
|
float _BlendMode;
|
|
float _EnableBlendModePreserveSpecularLighting;
|
|
float _RayTracing;
|
|
float _RefractionModel;
|
|
float _MaterialID;
|
|
float _MaterialTypeMask;
|
|
CBUFFER_END
|
|
|
|
|
|
// Object and Global properties
|
|
SAMPLER(SamplerState_Linear_Repeat);
|
|
SAMPLER(SamplerState_Linear_Repeat_Aniso8);
|
|
TEXTURE2D(_BaseColorMap);
|
|
SAMPLER(sampler_BaseColorMap);
|
|
TEXTURE2D(_BaseNormalMap);
|
|
SAMPLER(sampler_BaseNormalMap);
|
|
TEXTURE2D(_BaseMaskMap);
|
|
SAMPLER(sampler_BaseMaskMap);
|
|
TEXTURE2D(_CoverMaskA);
|
|
SAMPLER(sampler_CoverMaskA);
|
|
TEXTURE2D(_CoverBaseColorMap);
|
|
SAMPLER(sampler_CoverBaseColorMap);
|
|
TEXTURE2D(_CoverNormalMap);
|
|
SAMPLER(sampler_CoverNormalMap);
|
|
TEXTURE2D(_CoverMaskMap);
|
|
SAMPLER(sampler_CoverMaskMap);
|
|
TEXTURE2D(_ShapeNormalMap);
|
|
SAMPLER(sampler_ShapeNormalMap);
|
|
TEXTURE2D(_ShapeAO);
|
|
SAMPLER(sampler_ShapeAO);
|
|
TEXTURE2D(_DetailMap);
|
|
SAMPLER(sampler_DetailMap);
|
|
|
|
// -- Property used by ScenePickingPass
|
|
#ifdef SCENEPICKINGPASS
|
|
float4 _SelectionID;
|
|
#endif
|
|
|
|
// -- Properties used by SceneSelectionPass
|
|
#ifdef SCENESELECTIONPASS
|
|
int _ObjectId;
|
|
int _PassValue;
|
|
#endif
|
|
|
|
// Includes
|
|
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/ShaderLibrary/PickingSpaceTransforms.hlsl"
|
|
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/Debug/DebugDisplay.hlsl"
|
|
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/Material/Material.hlsl"
|
|
#include "Packages/com.unity.render-pipelines.core/ShaderLibrary/NormalSurfaceGradient.hlsl"
|
|
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/Material/Lit/Lit.hlsl"
|
|
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/Material/BuiltinUtilities.hlsl"
|
|
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/Material/MaterialUtilities.hlsl"
|
|
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/Material/Decal/DecalUtilities.hlsl"
|
|
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/Material/Lit/LitDecalData.hlsl"
|
|
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/ShaderLibrary/ShaderGraphFunctions.hlsl"
|
|
// GraphIncludes: <None>
|
|
|
|
// --------------------------------------------------
|
|
// Structs and Packing
|
|
|
|
struct AttributesMesh
|
|
{
|
|
float3 positionOS : POSITION;
|
|
float3 normalOS : NORMAL;
|
|
float4 tangentOS : TANGENT;
|
|
float4 uv0 : TEXCOORD0;
|
|
float4 color : COLOR;
|
|
#if UNITY_ANY_INSTANCING_ENABLED || defined(ATTRIBUTES_NEED_INSTANCEID)
|
|
uint instanceID : INSTANCEID_SEMANTIC;
|
|
#endif
|
|
};
|
|
struct VaryingsMeshToPS
|
|
{
|
|
SV_POSITION_QUALIFIERS float4 positionCS : SV_POSITION;
|
|
float3 positionRWS;
|
|
float3 normalWS;
|
|
float4 tangentWS;
|
|
float4 texCoord0;
|
|
float4 color;
|
|
#if UNITY_ANY_INSTANCING_ENABLED || defined(VARYINGS_NEED_INSTANCEID)
|
|
uint instanceID : CUSTOM_INSTANCE_ID;
|
|
#endif
|
|
};
|
|
struct VertexDescriptionInputs
|
|
{
|
|
float3 ObjectSpaceNormal;
|
|
float3 ObjectSpaceTangent;
|
|
float3 ObjectSpacePosition;
|
|
};
|
|
struct SurfaceDescriptionInputs
|
|
{
|
|
float3 WorldSpaceNormal;
|
|
float3 TangentSpaceNormal;
|
|
float3 WorldSpaceTangent;
|
|
float3 WorldSpaceBiTangent;
|
|
float3 AbsoluteWorldSpacePosition;
|
|
float4 uv0;
|
|
float4 VertexColor;
|
|
};
|
|
struct PackedVaryingsMeshToPS
|
|
{
|
|
SV_POSITION_QUALIFIERS float4 positionCS : SV_POSITION;
|
|
float4 tangentWS : INTERP0;
|
|
float4 texCoord0 : INTERP1;
|
|
float4 color : INTERP2;
|
|
float3 positionRWS : INTERP3;
|
|
float3 normalWS : INTERP4;
|
|
#if UNITY_ANY_INSTANCING_ENABLED || defined(VARYINGS_NEED_INSTANCEID)
|
|
uint instanceID : CUSTOM_INSTANCE_ID;
|
|
#endif
|
|
};
|
|
|
|
PackedVaryingsMeshToPS PackVaryingsMeshToPS (VaryingsMeshToPS input)
|
|
{
|
|
PackedVaryingsMeshToPS output;
|
|
ZERO_INITIALIZE(PackedVaryingsMeshToPS, output);
|
|
output.positionCS = input.positionCS;
|
|
output.tangentWS.xyzw = input.tangentWS;
|
|
output.texCoord0.xyzw = input.texCoord0;
|
|
output.color.xyzw = input.color;
|
|
output.positionRWS.xyz = input.positionRWS;
|
|
output.normalWS.xyz = input.normalWS;
|
|
#if UNITY_ANY_INSTANCING_ENABLED || defined(VARYINGS_NEED_INSTANCEID)
|
|
output.instanceID = input.instanceID;
|
|
#endif
|
|
return output;
|
|
}
|
|
|
|
VaryingsMeshToPS UnpackVaryingsMeshToPS (PackedVaryingsMeshToPS input)
|
|
{
|
|
VaryingsMeshToPS output;
|
|
output.positionCS = input.positionCS;
|
|
output.tangentWS = input.tangentWS.xyzw;
|
|
output.texCoord0 = input.texCoord0.xyzw;
|
|
output.color = input.color.xyzw;
|
|
output.positionRWS = input.positionRWS.xyz;
|
|
output.normalWS = input.normalWS.xyz;
|
|
#if UNITY_ANY_INSTANCING_ENABLED || defined(VARYINGS_NEED_INSTANCEID)
|
|
output.instanceID = input.instanceID;
|
|
#endif
|
|
return output;
|
|
}
|
|
|
|
|
|
// --------------------------------------------------
|
|
// Graph
|
|
|
|
|
|
// Graph Functions
|
|
|
|
void Unity_Divide_float4(float4 A, float4 B, out float4 Out)
|
|
{
|
|
Out = A / B;
|
|
}
|
|
|
|
void Unity_Combine_float(float R, float G, float B, float A, out float4 RGBA, out float3 RGB, out float2 RG)
|
|
{
|
|
RGBA = float4(R, G, B, A);
|
|
RGB = float3(R, G, B);
|
|
RG = float2(R, G);
|
|
}
|
|
|
|
void Unity_Multiply_float4_float4(float4 A, float4 B, out float4 Out)
|
|
{
|
|
Out = A * B;
|
|
}
|
|
|
|
void Unity_Sign_float3(float3 In, out float3 Out)
|
|
{
|
|
Out = sign(In);
|
|
}
|
|
|
|
void Unity_Multiply_float2_float2(float2 A, float2 B, out float2 Out)
|
|
{
|
|
Out = A * B;
|
|
}
|
|
|
|
void Unity_Absolute_float3(float3 In, out float3 Out)
|
|
{
|
|
Out = abs(In);
|
|
}
|
|
|
|
void Unity_Power_float3(float3 A, float3 B, out float3 Out)
|
|
{
|
|
Out = pow(A, B);
|
|
}
|
|
|
|
void Unity_Multiply_float3_float3(float3 A, float3 B, out float3 Out)
|
|
{
|
|
Out = A * B;
|
|
}
|
|
|
|
void Unity_Multiply_float_float(float A, float B, out float Out)
|
|
{
|
|
Out = A * B;
|
|
}
|
|
|
|
void Unity_Add_float4(float4 A, float4 B, out float4 Out)
|
|
{
|
|
Out = A + B;
|
|
}
|
|
|
|
void Unity_Add_float(float A, float B, out float Out)
|
|
{
|
|
Out = A + B;
|
|
}
|
|
|
|
struct Bindings_TriplanarNM_bc609ed95f52591469ab35dbfe0efcea_float
|
|
{
|
|
float3 WorldSpaceNormal;
|
|
float3 AbsoluteWorldSpacePosition;
|
|
};
|
|
|
|
void SG_TriplanarNM_bc609ed95f52591469ab35dbfe0efcea_float(UnityTexture2D Texture2D_80A3D28F, float Vector1_41461AC9, float Vector1_E4D1C13A, UnitySamplerState _SamplerState, Bindings_TriplanarNM_bc609ed95f52591469ab35dbfe0efcea_float IN, out float4 XYZ_1, out float4 XZ_2, out float4 YZ_3, out float4 XY_4)
|
|
{
|
|
UnityTexture2D _Property_3e01b4d2fc68d48ba3acbba9d5881e59_Out_0_Texture2D = Texture2D_80A3D28F;
|
|
float _Split_89ed63cb625cb3878c183d0b71c03400_R_1_Float = IN.AbsoluteWorldSpacePosition[0];
|
|
float _Split_89ed63cb625cb3878c183d0b71c03400_G_2_Float = IN.AbsoluteWorldSpacePosition[1];
|
|
float _Split_89ed63cb625cb3878c183d0b71c03400_B_3_Float = IN.AbsoluteWorldSpacePosition[2];
|
|
float _Split_89ed63cb625cb3878c183d0b71c03400_A_4_Float = 0;
|
|
float4 _Combine_cf2d04ff119ad88493f6460431765cbb_RGBA_4_Vector4;
|
|
float3 _Combine_cf2d04ff119ad88493f6460431765cbb_RGB_5_Vector3;
|
|
float2 _Combine_cf2d04ff119ad88493f6460431765cbb_RG_6_Vector2;
|
|
Unity_Combine_float(_Split_89ed63cb625cb3878c183d0b71c03400_R_1_Float, _Split_89ed63cb625cb3878c183d0b71c03400_B_3_Float, float(0), float(0), _Combine_cf2d04ff119ad88493f6460431765cbb_RGBA_4_Vector4, _Combine_cf2d04ff119ad88493f6460431765cbb_RGB_5_Vector3, _Combine_cf2d04ff119ad88493f6460431765cbb_RG_6_Vector2);
|
|
float _Property_47988ec10c0c18879d461e00bed806e7_Out_0_Float = Vector1_41461AC9;
|
|
float4 _Multiply_14cec4902d0a00829e4555071a1b8ad1_Out_2_Vector4;
|
|
Unity_Multiply_float4_float4(_Combine_cf2d04ff119ad88493f6460431765cbb_RGBA_4_Vector4, (_Property_47988ec10c0c18879d461e00bed806e7_Out_0_Float.xxxx), _Multiply_14cec4902d0a00829e4555071a1b8ad1_Out_2_Vector4);
|
|
float3 _Sign_b826e0ff2d95ec8cb2b2cbbd7ea2eab6_Out_1_Vector3;
|
|
Unity_Sign_float3(IN.WorldSpaceNormal, _Sign_b826e0ff2d95ec8cb2b2cbbd7ea2eab6_Out_1_Vector3);
|
|
float _Split_742547a7039de986a646d04c157ae549_R_1_Float = _Sign_b826e0ff2d95ec8cb2b2cbbd7ea2eab6_Out_1_Vector3[0];
|
|
float _Split_742547a7039de986a646d04c157ae549_G_2_Float = _Sign_b826e0ff2d95ec8cb2b2cbbd7ea2eab6_Out_1_Vector3[1];
|
|
float _Split_742547a7039de986a646d04c157ae549_B_3_Float = _Sign_b826e0ff2d95ec8cb2b2cbbd7ea2eab6_Out_1_Vector3[2];
|
|
float _Split_742547a7039de986a646d04c157ae549_A_4_Float = 0;
|
|
float2 _Vector2_40a8919e571ec18499de72022c155b38_Out_0_Vector2 = float2(_Split_742547a7039de986a646d04c157ae549_G_2_Float, float(1));
|
|
float2 _Multiply_5fa32af59cdca88389832336b2268bd5_Out_2_Vector2;
|
|
Unity_Multiply_float2_float2((_Multiply_14cec4902d0a00829e4555071a1b8ad1_Out_2_Vector4.xy), _Vector2_40a8919e571ec18499de72022c155b38_Out_0_Vector2, _Multiply_5fa32af59cdca88389832336b2268bd5_Out_2_Vector2);
|
|
UnitySamplerState _Property_544c7fa9dfe54e30a0df9d605340a374_Out_0_SamplerState = _SamplerState;
|
|
float4 _SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_RGBA_0_Vector4 = SAMPLE_TEXTURE2D(_Property_3e01b4d2fc68d48ba3acbba9d5881e59_Out_0_Texture2D.tex, _Property_544c7fa9dfe54e30a0df9d605340a374_Out_0_SamplerState.samplerstate, _Property_3e01b4d2fc68d48ba3acbba9d5881e59_Out_0_Texture2D.GetTransformedUV(_Multiply_5fa32af59cdca88389832336b2268bd5_Out_2_Vector2) );
|
|
float _SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_R_4_Float = _SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_RGBA_0_Vector4.r;
|
|
float _SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_G_5_Float = _SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_RGBA_0_Vector4.g;
|
|
float _SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_B_6_Float = _SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_RGBA_0_Vector4.b;
|
|
float _SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_A_7_Float = _SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_RGBA_0_Vector4.a;
|
|
float3 _Absolute_644b798714827680b39bf5d34f70385f_Out_1_Vector3;
|
|
Unity_Absolute_float3(IN.WorldSpaceNormal, _Absolute_644b798714827680b39bf5d34f70385f_Out_1_Vector3);
|
|
float _Property_adc4c59482221c8aad681c6558728ac9_Out_0_Float = Vector1_E4D1C13A;
|
|
float3 _Power_ee478822a04529849ae8df1636c29fe2_Out_2_Vector3;
|
|
Unity_Power_float3(_Absolute_644b798714827680b39bf5d34f70385f_Out_1_Vector3, (_Property_adc4c59482221c8aad681c6558728ac9_Out_0_Float.xxx), _Power_ee478822a04529849ae8df1636c29fe2_Out_2_Vector3);
|
|
float3 _Multiply_b386a937554d73828e437d126d69608b_Out_2_Vector3;
|
|
Unity_Multiply_float3_float3(_Power_ee478822a04529849ae8df1636c29fe2_Out_2_Vector3, _Power_ee478822a04529849ae8df1636c29fe2_Out_2_Vector3, _Multiply_b386a937554d73828e437d126d69608b_Out_2_Vector3);
|
|
float _Split_ae83014fcbd9f7879a0b91fa66dc9718_R_1_Float = _Multiply_b386a937554d73828e437d126d69608b_Out_2_Vector3[0];
|
|
float _Split_ae83014fcbd9f7879a0b91fa66dc9718_G_2_Float = _Multiply_b386a937554d73828e437d126d69608b_Out_2_Vector3[1];
|
|
float _Split_ae83014fcbd9f7879a0b91fa66dc9718_B_3_Float = _Multiply_b386a937554d73828e437d126d69608b_Out_2_Vector3[2];
|
|
float _Split_ae83014fcbd9f7879a0b91fa66dc9718_A_4_Float = 0;
|
|
float4 _Multiply_2e1040ca9c98d085ace76ee93f094039_Out_2_Vector4;
|
|
Unity_Multiply_float4_float4(_SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_RGBA_0_Vector4, (_Split_ae83014fcbd9f7879a0b91fa66dc9718_G_2_Float.xxxx), _Multiply_2e1040ca9c98d085ace76ee93f094039_Out_2_Vector4);
|
|
float4 _Combine_192c2c4a69be588b90ca005a32e22552_RGBA_4_Vector4;
|
|
float3 _Combine_192c2c4a69be588b90ca005a32e22552_RGB_5_Vector3;
|
|
float2 _Combine_192c2c4a69be588b90ca005a32e22552_RG_6_Vector2;
|
|
Unity_Combine_float(_Split_89ed63cb625cb3878c183d0b71c03400_R_1_Float, _Split_89ed63cb625cb3878c183d0b71c03400_G_2_Float, float(0), float(0), _Combine_192c2c4a69be588b90ca005a32e22552_RGBA_4_Vector4, _Combine_192c2c4a69be588b90ca005a32e22552_RGB_5_Vector3, _Combine_192c2c4a69be588b90ca005a32e22552_RG_6_Vector2);
|
|
float4 _Multiply_138240d0d4846e87b0febabec0d6891b_Out_2_Vector4;
|
|
Unity_Multiply_float4_float4(_Combine_192c2c4a69be588b90ca005a32e22552_RGBA_4_Vector4, (_Property_47988ec10c0c18879d461e00bed806e7_Out_0_Float.xxxx), _Multiply_138240d0d4846e87b0febabec0d6891b_Out_2_Vector4);
|
|
float _Multiply_014402ded5a3988a8c18ba07636ea5a7_Out_2_Float;
|
|
Unity_Multiply_float_float(_Split_742547a7039de986a646d04c157ae549_B_3_Float, -1, _Multiply_014402ded5a3988a8c18ba07636ea5a7_Out_2_Float);
|
|
float2 _Vector2_caa25d55d456a58982bdfc39b1b43f3f_Out_0_Vector2 = float2(_Multiply_014402ded5a3988a8c18ba07636ea5a7_Out_2_Float, float(1));
|
|
float2 _Multiply_a67201b6e1a0a28c98cd9d06e8b09543_Out_2_Vector2;
|
|
Unity_Multiply_float2_float2((_Multiply_138240d0d4846e87b0febabec0d6891b_Out_2_Vector4.xy), _Vector2_caa25d55d456a58982bdfc39b1b43f3f_Out_0_Vector2, _Multiply_a67201b6e1a0a28c98cd9d06e8b09543_Out_2_Vector2);
|
|
float4 _SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_RGBA_0_Vector4 = SAMPLE_TEXTURE2D(_Property_3e01b4d2fc68d48ba3acbba9d5881e59_Out_0_Texture2D.tex, _Property_544c7fa9dfe54e30a0df9d605340a374_Out_0_SamplerState.samplerstate, _Property_3e01b4d2fc68d48ba3acbba9d5881e59_Out_0_Texture2D.GetTransformedUV(_Multiply_a67201b6e1a0a28c98cd9d06e8b09543_Out_2_Vector2) );
|
|
float _SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_R_4_Float = _SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_RGBA_0_Vector4.r;
|
|
float _SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_G_5_Float = _SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_RGBA_0_Vector4.g;
|
|
float _SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_B_6_Float = _SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_RGBA_0_Vector4.b;
|
|
float _SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_A_7_Float = _SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_RGBA_0_Vector4.a;
|
|
float4 _Multiply_7bb4009c92b108849ac6ca92bc1442f2_Out_2_Vector4;
|
|
Unity_Multiply_float4_float4(_SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_RGBA_0_Vector4, (_Split_ae83014fcbd9f7879a0b91fa66dc9718_B_3_Float.xxxx), _Multiply_7bb4009c92b108849ac6ca92bc1442f2_Out_2_Vector4);
|
|
float4 _Combine_1e9ffdba42d6918fb7a4b185f1585d2a_RGBA_4_Vector4;
|
|
float3 _Combine_1e9ffdba42d6918fb7a4b185f1585d2a_RGB_5_Vector3;
|
|
float2 _Combine_1e9ffdba42d6918fb7a4b185f1585d2a_RG_6_Vector2;
|
|
Unity_Combine_float(_Split_89ed63cb625cb3878c183d0b71c03400_B_3_Float, _Split_89ed63cb625cb3878c183d0b71c03400_G_2_Float, float(0), float(0), _Combine_1e9ffdba42d6918fb7a4b185f1585d2a_RGBA_4_Vector4, _Combine_1e9ffdba42d6918fb7a4b185f1585d2a_RGB_5_Vector3, _Combine_1e9ffdba42d6918fb7a4b185f1585d2a_RG_6_Vector2);
|
|
float4 _Multiply_2c0864423b014f8b8af8523f68cbb63c_Out_2_Vector4;
|
|
Unity_Multiply_float4_float4(_Combine_1e9ffdba42d6918fb7a4b185f1585d2a_RGBA_4_Vector4, (_Property_47988ec10c0c18879d461e00bed806e7_Out_0_Float.xxxx), _Multiply_2c0864423b014f8b8af8523f68cbb63c_Out_2_Vector4);
|
|
float2 _Vector2_54dfd40df2fc78809955dd272f2cf0c3_Out_0_Vector2 = float2(_Split_742547a7039de986a646d04c157ae549_R_1_Float, float(1));
|
|
float2 _Multiply_addbd5fcede95f80bbb806c94e49ef63_Out_2_Vector2;
|
|
Unity_Multiply_float2_float2((_Multiply_2c0864423b014f8b8af8523f68cbb63c_Out_2_Vector4.xy), _Vector2_54dfd40df2fc78809955dd272f2cf0c3_Out_0_Vector2, _Multiply_addbd5fcede95f80bbb806c94e49ef63_Out_2_Vector2);
|
|
float4 _SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_RGBA_0_Vector4 = SAMPLE_TEXTURE2D(_Property_3e01b4d2fc68d48ba3acbba9d5881e59_Out_0_Texture2D.tex, _Property_544c7fa9dfe54e30a0df9d605340a374_Out_0_SamplerState.samplerstate, _Property_3e01b4d2fc68d48ba3acbba9d5881e59_Out_0_Texture2D.GetTransformedUV(_Multiply_addbd5fcede95f80bbb806c94e49ef63_Out_2_Vector2) );
|
|
float _SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_R_4_Float = _SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_RGBA_0_Vector4.r;
|
|
float _SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_G_5_Float = _SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_RGBA_0_Vector4.g;
|
|
float _SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_B_6_Float = _SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_RGBA_0_Vector4.b;
|
|
float _SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_A_7_Float = _SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_RGBA_0_Vector4.a;
|
|
float4 _Multiply_77818c22e359fc8cbb7dd20216a8db72_Out_2_Vector4;
|
|
Unity_Multiply_float4_float4(_SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_RGBA_0_Vector4, (_Split_ae83014fcbd9f7879a0b91fa66dc9718_R_1_Float.xxxx), _Multiply_77818c22e359fc8cbb7dd20216a8db72_Out_2_Vector4);
|
|
float4 _Add_769d9ee909c9238dbbf72d2800a2f268_Out_2_Vector4;
|
|
Unity_Add_float4(_Multiply_7bb4009c92b108849ac6ca92bc1442f2_Out_2_Vector4, _Multiply_77818c22e359fc8cbb7dd20216a8db72_Out_2_Vector4, _Add_769d9ee909c9238dbbf72d2800a2f268_Out_2_Vector4);
|
|
float4 _Add_14295f72880e4b87a1baf1ced943ac40_Out_2_Vector4;
|
|
Unity_Add_float4(_Multiply_2e1040ca9c98d085ace76ee93f094039_Out_2_Vector4, _Add_769d9ee909c9238dbbf72d2800a2f268_Out_2_Vector4, _Add_14295f72880e4b87a1baf1ced943ac40_Out_2_Vector4);
|
|
float _Add_e59af300bba2498db32eac1412123447_Out_2_Float;
|
|
Unity_Add_float(_Split_ae83014fcbd9f7879a0b91fa66dc9718_R_1_Float, _Split_ae83014fcbd9f7879a0b91fa66dc9718_G_2_Float, _Add_e59af300bba2498db32eac1412123447_Out_2_Float);
|
|
float _Add_e855069f047fae8ea9027d56acb61e56_Out_2_Float;
|
|
Unity_Add_float(_Add_e59af300bba2498db32eac1412123447_Out_2_Float, _Split_ae83014fcbd9f7879a0b91fa66dc9718_B_3_Float, _Add_e855069f047fae8ea9027d56acb61e56_Out_2_Float);
|
|
float4 _Divide_91ae4b94f1d9b78e99d0472293b8098c_Out_2_Vector4;
|
|
Unity_Divide_float4(_Add_14295f72880e4b87a1baf1ced943ac40_Out_2_Vector4, (_Add_e855069f047fae8ea9027d56acb61e56_Out_2_Float.xxxx), _Divide_91ae4b94f1d9b78e99d0472293b8098c_Out_2_Vector4);
|
|
XYZ_1 = _Divide_91ae4b94f1d9b78e99d0472293b8098c_Out_2_Vector4;
|
|
XZ_2 = _SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_RGBA_0_Vector4;
|
|
YZ_3 = _SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_RGBA_0_Vector4;
|
|
XY_4 = _SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_RGBA_0_Vector4;
|
|
}
|
|
|
|
void Unity_Clamp_float(float In, float Min, float Max, out float Out)
|
|
{
|
|
Out = clamp(In, Min, Max);
|
|
}
|
|
|
|
void Unity_Absolute_float(float In, out float Out)
|
|
{
|
|
Out = abs(In);
|
|
}
|
|
|
|
void Unity_Power_float(float A, float B, out float Out)
|
|
{
|
|
Out = pow(A, B);
|
|
}
|
|
|
|
void Unity_Clamp_float4(float4 In, float4 Min, float4 Max, out float4 Out)
|
|
{
|
|
Out = clamp(In, Min, Max);
|
|
}
|
|
|
|
void Unity_Branch_float4(float Predicate, float4 True, float4 False, out float4 Out)
|
|
{
|
|
Out = Predicate ? True : False;
|
|
}
|
|
|
|
void Unity_TilingAndOffset_float(float2 UV, float2 Tiling, float2 Offset, out float2 Out)
|
|
{
|
|
Out = UV * Tiling + Offset;
|
|
}
|
|
|
|
void Unity_Saturate_float(float In, out float Out)
|
|
{
|
|
Out = saturate(In);
|
|
}
|
|
|
|
void Unity_SquareRoot_float4(float4 In, out float4 Out)
|
|
{
|
|
Out = sqrt(In);
|
|
}
|
|
|
|
void Unity_Sign_float(float In, out float Out)
|
|
{
|
|
Out = sign(In);
|
|
}
|
|
|
|
void Unity_Ceiling_float(float In, out float Out)
|
|
{
|
|
Out = ceil(In);
|
|
}
|
|
|
|
void Unity_Lerp_float4(float4 A, float4 B, float4 T, out float4 Out)
|
|
{
|
|
Out = lerp(A, B, T);
|
|
}
|
|
|
|
struct Bindings_BlendOverlayBaseColor_acdb3dfca72bd6b42bbc35f4613331a2_float
|
|
{
|
|
};
|
|
|
|
void SG_BlendOverlayBaseColor_acdb3dfca72bd6b42bbc35f4613331a2_float(float4 Color_9AA111D3, float Vector1_FBE622A2, float Vector1_8C15C351, Bindings_BlendOverlayBaseColor_acdb3dfca72bd6b42bbc35f4613331a2_float IN, out float3 OutVector4_1)
|
|
{
|
|
float4 _Property_012510d774fb7f8b860f5270dca4500f_Out_0_Vector4 = Color_9AA111D3;
|
|
float4 _SquareRoot_c2c57d0223a9538aa9240890c3cacb0c_Out_1_Vector4;
|
|
Unity_SquareRoot_float4(_Property_012510d774fb7f8b860f5270dca4500f_Out_0_Vector4, _SquareRoot_c2c57d0223a9538aa9240890c3cacb0c_Out_1_Vector4);
|
|
float _Property_a00e29241d12f983b30177515b367ec9_Out_0_Float = Vector1_FBE622A2;
|
|
float _Sign_343a45ede7349283a681c6bd9998fd8e_Out_1_Float;
|
|
Unity_Sign_float(_Property_a00e29241d12f983b30177515b367ec9_Out_0_Float, _Sign_343a45ede7349283a681c6bd9998fd8e_Out_1_Float);
|
|
float _Add_681019b8f5d3d68bb482d419c9fc61a9_Out_2_Float;
|
|
Unity_Add_float(_Sign_343a45ede7349283a681c6bd9998fd8e_Out_1_Float, float(1), _Add_681019b8f5d3d68bb482d419c9fc61a9_Out_2_Float);
|
|
float _Multiply_e8f4cb722712a880ac0db6c7461427f7_Out_2_Float;
|
|
Unity_Multiply_float_float(_Add_681019b8f5d3d68bb482d419c9fc61a9_Out_2_Float, 0.5, _Multiply_e8f4cb722712a880ac0db6c7461427f7_Out_2_Float);
|
|
float _Ceiling_95ad15988aa9b98184875fa754feae01_Out_1_Float;
|
|
Unity_Ceiling_float(_Multiply_e8f4cb722712a880ac0db6c7461427f7_Out_2_Float, _Ceiling_95ad15988aa9b98184875fa754feae01_Out_1_Float);
|
|
float _Property_2db1c747a05ee284a8b00076062f91a4_Out_0_Float = Vector1_8C15C351;
|
|
float _Multiply_9564ecda5193bc8286d9ff771c9226cd_Out_2_Float;
|
|
Unity_Multiply_float_float(_Property_2db1c747a05ee284a8b00076062f91a4_Out_0_Float, _Property_2db1c747a05ee284a8b00076062f91a4_Out_0_Float, _Multiply_9564ecda5193bc8286d9ff771c9226cd_Out_2_Float);
|
|
float4 _Lerp_b3cdb01fc3c5b988ac9b184943bf7c01_Out_3_Vector4;
|
|
Unity_Lerp_float4(_SquareRoot_c2c57d0223a9538aa9240890c3cacb0c_Out_1_Vector4, (_Ceiling_95ad15988aa9b98184875fa754feae01_Out_1_Float.xxxx), (_Multiply_9564ecda5193bc8286d9ff771c9226cd_Out_2_Float.xxxx), _Lerp_b3cdb01fc3c5b988ac9b184943bf7c01_Out_3_Vector4);
|
|
float4 _Multiply_39d1daff98488f8ea2cd794ad4f20926_Out_2_Vector4;
|
|
Unity_Multiply_float4_float4(_Lerp_b3cdb01fc3c5b988ac9b184943bf7c01_Out_3_Vector4, _Lerp_b3cdb01fc3c5b988ac9b184943bf7c01_Out_3_Vector4, _Multiply_39d1daff98488f8ea2cd794ad4f20926_Out_2_Vector4);
|
|
OutVector4_1 = (_Multiply_39d1daff98488f8ea2cd794ad4f20926_Out_2_Vector4.xyz);
|
|
}
|
|
|
|
void Unity_Add_float2(float2 A, float2 B, out float2 Out)
|
|
{
|
|
Out = A + B;
|
|
}
|
|
|
|
void Unity_DotProduct_float2(float2 A, float2 B, out float Out)
|
|
{
|
|
Out = dot(A, B);
|
|
}
|
|
|
|
void Unity_OneMinus_float(float In, out float Out)
|
|
{
|
|
Out = 1 - In;
|
|
}
|
|
|
|
void Unity_SquareRoot_float(float In, out float Out)
|
|
{
|
|
Out = sqrt(In);
|
|
}
|
|
|
|
void Unity_Add_float3(float3 A, float3 B, out float3 Out)
|
|
{
|
|
Out = A + B;
|
|
}
|
|
|
|
void Unity_Divide_float3(float3 A, float3 B, out float3 Out)
|
|
{
|
|
Out = A / B;
|
|
}
|
|
|
|
void Unity_Normalize_float3(float3 In, out float3 Out)
|
|
{
|
|
Out = normalize(In);
|
|
}
|
|
|
|
struct Bindings_TriplanarNMn_059da9746584140498cd018db3c76047_float
|
|
{
|
|
float3 WorldSpaceNormal;
|
|
float3 WorldSpaceTangent;
|
|
float3 WorldSpaceBiTangent;
|
|
float3 AbsoluteWorldSpacePosition;
|
|
};
|
|
|
|
void SG_TriplanarNMn_059da9746584140498cd018db3c76047_float(UnityTexture2D Texture2D_80A3D28F, float Vector1_41461AC9, float Vector1_E4D1C13A, UnitySamplerState _SamplerState, Bindings_TriplanarNMn_059da9746584140498cd018db3c76047_float IN, out float4 XYZ_1, out float4 XZ_2, out float4 YZ_3, out float4 XY_4)
|
|
{
|
|
UnityTexture2D _Property_3e01b4d2fc68d48ba3acbba9d5881e59_Out_0_Texture2D = Texture2D_80A3D28F;
|
|
float _Split_89ed63cb625cb3878c183d0b71c03400_R_1_Float = IN.AbsoluteWorldSpacePosition[0];
|
|
float _Split_89ed63cb625cb3878c183d0b71c03400_G_2_Float = IN.AbsoluteWorldSpacePosition[1];
|
|
float _Split_89ed63cb625cb3878c183d0b71c03400_B_3_Float = IN.AbsoluteWorldSpacePosition[2];
|
|
float _Split_89ed63cb625cb3878c183d0b71c03400_A_4_Float = 0;
|
|
float4 _Combine_cf2d04ff119ad88493f6460431765cbb_RGBA_4_Vector4;
|
|
float3 _Combine_cf2d04ff119ad88493f6460431765cbb_RGB_5_Vector3;
|
|
float2 _Combine_cf2d04ff119ad88493f6460431765cbb_RG_6_Vector2;
|
|
Unity_Combine_float(_Split_89ed63cb625cb3878c183d0b71c03400_R_1_Float, _Split_89ed63cb625cb3878c183d0b71c03400_B_3_Float, float(0), float(0), _Combine_cf2d04ff119ad88493f6460431765cbb_RGBA_4_Vector4, _Combine_cf2d04ff119ad88493f6460431765cbb_RGB_5_Vector3, _Combine_cf2d04ff119ad88493f6460431765cbb_RG_6_Vector2);
|
|
float _Property_47988ec10c0c18879d461e00bed806e7_Out_0_Float = Vector1_41461AC9;
|
|
float4 _Multiply_14cec4902d0a00829e4555071a1b8ad1_Out_2_Vector4;
|
|
Unity_Multiply_float4_float4(_Combine_cf2d04ff119ad88493f6460431765cbb_RGBA_4_Vector4, (_Property_47988ec10c0c18879d461e00bed806e7_Out_0_Float.xxxx), _Multiply_14cec4902d0a00829e4555071a1b8ad1_Out_2_Vector4);
|
|
float3 _Sign_3a6ebf59931cf08cb0482e0144ddac24_Out_1_Vector3;
|
|
Unity_Sign_float3(IN.WorldSpaceNormal, _Sign_3a6ebf59931cf08cb0482e0144ddac24_Out_1_Vector3);
|
|
float _Split_6299d4ddcc4c74828aea40a46fdb896e_R_1_Float = _Sign_3a6ebf59931cf08cb0482e0144ddac24_Out_1_Vector3[0];
|
|
float _Split_6299d4ddcc4c74828aea40a46fdb896e_G_2_Float = _Sign_3a6ebf59931cf08cb0482e0144ddac24_Out_1_Vector3[1];
|
|
float _Split_6299d4ddcc4c74828aea40a46fdb896e_B_3_Float = _Sign_3a6ebf59931cf08cb0482e0144ddac24_Out_1_Vector3[2];
|
|
float _Split_6299d4ddcc4c74828aea40a46fdb896e_A_4_Float = 0;
|
|
float2 _Vector2_b76cb1842101e58b9e636d49b075c612_Out_0_Vector2 = float2(_Split_6299d4ddcc4c74828aea40a46fdb896e_G_2_Float, float(1));
|
|
float2 _Multiply_a87753ad90594382bf3a3a95abbadbc8_Out_2_Vector2;
|
|
Unity_Multiply_float2_float2((_Multiply_14cec4902d0a00829e4555071a1b8ad1_Out_2_Vector4.xy), _Vector2_b76cb1842101e58b9e636d49b075c612_Out_0_Vector2, _Multiply_a87753ad90594382bf3a3a95abbadbc8_Out_2_Vector2);
|
|
UnitySamplerState _Property_8a2b8589cd3a42a1879a29c28e4f711f_Out_0_SamplerState = _SamplerState;
|
|
float4 _SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_RGBA_0_Vector4 = SAMPLE_TEXTURE2D(_Property_3e01b4d2fc68d48ba3acbba9d5881e59_Out_0_Texture2D.tex, _Property_8a2b8589cd3a42a1879a29c28e4f711f_Out_0_SamplerState.samplerstate, _Property_3e01b4d2fc68d48ba3acbba9d5881e59_Out_0_Texture2D.GetTransformedUV(_Multiply_a87753ad90594382bf3a3a95abbadbc8_Out_2_Vector2) );
|
|
_SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_RGBA_0_Vector4.rgb = UnpackNormal(_SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_RGBA_0_Vector4);
|
|
float _SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_R_4_Float = _SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_RGBA_0_Vector4.r;
|
|
float _SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_G_5_Float = _SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_RGBA_0_Vector4.g;
|
|
float _SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_B_6_Float = _SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_RGBA_0_Vector4.b;
|
|
float _SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_A_7_Float = _SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_RGBA_0_Vector4.a;
|
|
float2 _Vector2_ad6bd100e273d78fa409a30a77bfa2cc_Out_0_Vector2 = float2(_SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_R_4_Float, _SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_G_5_Float);
|
|
float2 _Multiply_31e8db88ee20c985a9850d1a58f3282b_Out_2_Vector2;
|
|
Unity_Multiply_float2_float2(_Vector2_ad6bd100e273d78fa409a30a77bfa2cc_Out_0_Vector2, _Vector2_b76cb1842101e58b9e636d49b075c612_Out_0_Vector2, _Multiply_31e8db88ee20c985a9850d1a58f3282b_Out_2_Vector2);
|
|
float _Split_5ed44bf2eca0868f81eb18100f49d1fa_R_1_Float = IN.WorldSpaceNormal[0];
|
|
float _Split_5ed44bf2eca0868f81eb18100f49d1fa_G_2_Float = IN.WorldSpaceNormal[1];
|
|
float _Split_5ed44bf2eca0868f81eb18100f49d1fa_B_3_Float = IN.WorldSpaceNormal[2];
|
|
float _Split_5ed44bf2eca0868f81eb18100f49d1fa_A_4_Float = 0;
|
|
float2 _Vector2_70e5837843f28b8b9d64cada3697bd5a_Out_0_Vector2 = float2(_Split_5ed44bf2eca0868f81eb18100f49d1fa_R_1_Float, _Split_5ed44bf2eca0868f81eb18100f49d1fa_B_3_Float);
|
|
float2 _Add_1145b2f896593d80aa864a34e6702562_Out_2_Vector2;
|
|
Unity_Add_float2(_Multiply_31e8db88ee20c985a9850d1a58f3282b_Out_2_Vector2, _Vector2_70e5837843f28b8b9d64cada3697bd5a_Out_0_Vector2, _Add_1145b2f896593d80aa864a34e6702562_Out_2_Vector2);
|
|
float _Split_2bc77ca2d17bd78cb2383770ce50b179_R_1_Float = _Add_1145b2f896593d80aa864a34e6702562_Out_2_Vector2[0];
|
|
float _Split_2bc77ca2d17bd78cb2383770ce50b179_G_2_Float = _Add_1145b2f896593d80aa864a34e6702562_Out_2_Vector2[1];
|
|
float _Split_2bc77ca2d17bd78cb2383770ce50b179_B_3_Float = 0;
|
|
float _Split_2bc77ca2d17bd78cb2383770ce50b179_A_4_Float = 0;
|
|
float _Multiply_e4fe778b81456d819c52bb414cd95968_Out_2_Float;
|
|
Unity_Multiply_float_float(_SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_B_6_Float, _Split_5ed44bf2eca0868f81eb18100f49d1fa_G_2_Float, _Multiply_e4fe778b81456d819c52bb414cd95968_Out_2_Float);
|
|
float3 _Vector3_08f62c5c01619e849f1a7d85a44531ac_Out_0_Vector3 = float3(_Split_2bc77ca2d17bd78cb2383770ce50b179_R_1_Float, _Multiply_e4fe778b81456d819c52bb414cd95968_Out_2_Float, _Split_2bc77ca2d17bd78cb2383770ce50b179_G_2_Float);
|
|
float3 _Absolute_644b798714827680b39bf5d34f70385f_Out_1_Vector3;
|
|
Unity_Absolute_float3(IN.WorldSpaceNormal, _Absolute_644b798714827680b39bf5d34f70385f_Out_1_Vector3);
|
|
float _Property_adc4c59482221c8aad681c6558728ac9_Out_0_Float = Vector1_E4D1C13A;
|
|
float3 _Power_ee478822a04529849ae8df1636c29fe2_Out_2_Vector3;
|
|
Unity_Power_float3(_Absolute_644b798714827680b39bf5d34f70385f_Out_1_Vector3, (_Property_adc4c59482221c8aad681c6558728ac9_Out_0_Float.xxx), _Power_ee478822a04529849ae8df1636c29fe2_Out_2_Vector3);
|
|
float3 _Multiply_b386a937554d73828e437d126d69608b_Out_2_Vector3;
|
|
Unity_Multiply_float3_float3(_Power_ee478822a04529849ae8df1636c29fe2_Out_2_Vector3, _Power_ee478822a04529849ae8df1636c29fe2_Out_2_Vector3, _Multiply_b386a937554d73828e437d126d69608b_Out_2_Vector3);
|
|
float _Split_ae83014fcbd9f7879a0b91fa66dc9718_R_1_Float = _Multiply_b386a937554d73828e437d126d69608b_Out_2_Vector3[0];
|
|
float _Split_ae83014fcbd9f7879a0b91fa66dc9718_G_2_Float = _Multiply_b386a937554d73828e437d126d69608b_Out_2_Vector3[1];
|
|
float _Split_ae83014fcbd9f7879a0b91fa66dc9718_B_3_Float = _Multiply_b386a937554d73828e437d126d69608b_Out_2_Vector3[2];
|
|
float _Split_ae83014fcbd9f7879a0b91fa66dc9718_A_4_Float = 0;
|
|
float3 _Multiply_2e1040ca9c98d085ace76ee93f094039_Out_2_Vector3;
|
|
Unity_Multiply_float3_float3(_Vector3_08f62c5c01619e849f1a7d85a44531ac_Out_0_Vector3, (_Split_ae83014fcbd9f7879a0b91fa66dc9718_G_2_Float.xxx), _Multiply_2e1040ca9c98d085ace76ee93f094039_Out_2_Vector3);
|
|
float4 _Combine_192c2c4a69be588b90ca005a32e22552_RGBA_4_Vector4;
|
|
float3 _Combine_192c2c4a69be588b90ca005a32e22552_RGB_5_Vector3;
|
|
float2 _Combine_192c2c4a69be588b90ca005a32e22552_RG_6_Vector2;
|
|
Unity_Combine_float(_Split_89ed63cb625cb3878c183d0b71c03400_R_1_Float, _Split_89ed63cb625cb3878c183d0b71c03400_G_2_Float, float(0), float(0), _Combine_192c2c4a69be588b90ca005a32e22552_RGBA_4_Vector4, _Combine_192c2c4a69be588b90ca005a32e22552_RGB_5_Vector3, _Combine_192c2c4a69be588b90ca005a32e22552_RG_6_Vector2);
|
|
float4 _Multiply_138240d0d4846e87b0febabec0d6891b_Out_2_Vector4;
|
|
Unity_Multiply_float4_float4(_Combine_192c2c4a69be588b90ca005a32e22552_RGBA_4_Vector4, (_Property_47988ec10c0c18879d461e00bed806e7_Out_0_Float.xxxx), _Multiply_138240d0d4846e87b0febabec0d6891b_Out_2_Vector4);
|
|
float _Multiply_de711f4a4614bd89a463b53374cf4036_Out_2_Float;
|
|
Unity_Multiply_float_float(_Split_6299d4ddcc4c74828aea40a46fdb896e_B_3_Float, -1, _Multiply_de711f4a4614bd89a463b53374cf4036_Out_2_Float);
|
|
float2 _Vector2_4ed33f0c73b2698fa6f3c1b77fe76808_Out_0_Vector2 = float2(_Multiply_de711f4a4614bd89a463b53374cf4036_Out_2_Float, float(1));
|
|
float2 _Multiply_2af6058cc6ccb88caefd2799bb5941e8_Out_2_Vector2;
|
|
Unity_Multiply_float2_float2((_Multiply_138240d0d4846e87b0febabec0d6891b_Out_2_Vector4.xy), _Vector2_4ed33f0c73b2698fa6f3c1b77fe76808_Out_0_Vector2, _Multiply_2af6058cc6ccb88caefd2799bb5941e8_Out_2_Vector2);
|
|
float4 _SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_RGBA_0_Vector4 = SAMPLE_TEXTURE2D(_Property_3e01b4d2fc68d48ba3acbba9d5881e59_Out_0_Texture2D.tex, _Property_8a2b8589cd3a42a1879a29c28e4f711f_Out_0_SamplerState.samplerstate, _Property_3e01b4d2fc68d48ba3acbba9d5881e59_Out_0_Texture2D.GetTransformedUV(_Multiply_2af6058cc6ccb88caefd2799bb5941e8_Out_2_Vector2) );
|
|
_SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_RGBA_0_Vector4.rgb = UnpackNormal(_SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_RGBA_0_Vector4);
|
|
float _SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_R_4_Float = _SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_RGBA_0_Vector4.r;
|
|
float _SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_G_5_Float = _SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_RGBA_0_Vector4.g;
|
|
float _SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_B_6_Float = _SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_RGBA_0_Vector4.b;
|
|
float _SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_A_7_Float = _SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_RGBA_0_Vector4.a;
|
|
float2 _Vector2_fe9aedd4528c7486ada4abdca0b0944e_Out_0_Vector2 = float2(_SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_R_4_Float, _SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_G_5_Float);
|
|
float2 _Multiply_02b9b4665ad9918d8721bcaddc82f06f_Out_2_Vector2;
|
|
Unity_Multiply_float2_float2(_Vector2_fe9aedd4528c7486ada4abdca0b0944e_Out_0_Vector2, _Vector2_4ed33f0c73b2698fa6f3c1b77fe76808_Out_0_Vector2, _Multiply_02b9b4665ad9918d8721bcaddc82f06f_Out_2_Vector2);
|
|
float2 _Vector2_a74a85274da15181abb63cc5e8df0de1_Out_0_Vector2 = float2(_Split_5ed44bf2eca0868f81eb18100f49d1fa_R_1_Float, _Split_5ed44bf2eca0868f81eb18100f49d1fa_G_2_Float);
|
|
float2 _Add_b227c84042055e8faa1a9fdc69529707_Out_2_Vector2;
|
|
Unity_Add_float2(_Multiply_02b9b4665ad9918d8721bcaddc82f06f_Out_2_Vector2, _Vector2_a74a85274da15181abb63cc5e8df0de1_Out_0_Vector2, _Add_b227c84042055e8faa1a9fdc69529707_Out_2_Vector2);
|
|
float _Split_2cfb9eacd8762483941459cdf28bda97_R_1_Float = _Add_b227c84042055e8faa1a9fdc69529707_Out_2_Vector2[0];
|
|
float _Split_2cfb9eacd8762483941459cdf28bda97_G_2_Float = _Add_b227c84042055e8faa1a9fdc69529707_Out_2_Vector2[1];
|
|
float _Split_2cfb9eacd8762483941459cdf28bda97_B_3_Float = 0;
|
|
float _Split_2cfb9eacd8762483941459cdf28bda97_A_4_Float = 0;
|
|
float _Multiply_1d65ce08ce672087879125f2e13c4004_Out_2_Float;
|
|
Unity_Multiply_float_float(_SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_B_6_Float, _Split_5ed44bf2eca0868f81eb18100f49d1fa_B_3_Float, _Multiply_1d65ce08ce672087879125f2e13c4004_Out_2_Float);
|
|
float3 _Vector3_ba6cfb4671e8c58f9b41ea1dc23102ca_Out_0_Vector3 = float3(_Split_2cfb9eacd8762483941459cdf28bda97_R_1_Float, _Split_2cfb9eacd8762483941459cdf28bda97_G_2_Float, _Multiply_1d65ce08ce672087879125f2e13c4004_Out_2_Float);
|
|
float3 _Multiply_7bb4009c92b108849ac6ca92bc1442f2_Out_2_Vector3;
|
|
Unity_Multiply_float3_float3(_Vector3_ba6cfb4671e8c58f9b41ea1dc23102ca_Out_0_Vector3, (_Split_ae83014fcbd9f7879a0b91fa66dc9718_B_3_Float.xxx), _Multiply_7bb4009c92b108849ac6ca92bc1442f2_Out_2_Vector3);
|
|
float4 _Combine_1e9ffdba42d6918fb7a4b185f1585d2a_RGBA_4_Vector4;
|
|
float3 _Combine_1e9ffdba42d6918fb7a4b185f1585d2a_RGB_5_Vector3;
|
|
float2 _Combine_1e9ffdba42d6918fb7a4b185f1585d2a_RG_6_Vector2;
|
|
Unity_Combine_float(_Split_89ed63cb625cb3878c183d0b71c03400_B_3_Float, _Split_89ed63cb625cb3878c183d0b71c03400_G_2_Float, float(0), float(0), _Combine_1e9ffdba42d6918fb7a4b185f1585d2a_RGBA_4_Vector4, _Combine_1e9ffdba42d6918fb7a4b185f1585d2a_RGB_5_Vector3, _Combine_1e9ffdba42d6918fb7a4b185f1585d2a_RG_6_Vector2);
|
|
float4 _Multiply_2c0864423b014f8b8af8523f68cbb63c_Out_2_Vector4;
|
|
Unity_Multiply_float4_float4(_Combine_1e9ffdba42d6918fb7a4b185f1585d2a_RGBA_4_Vector4, (_Property_47988ec10c0c18879d461e00bed806e7_Out_0_Float.xxxx), _Multiply_2c0864423b014f8b8af8523f68cbb63c_Out_2_Vector4);
|
|
float2 _Vector2_a1e23e0f921b6484818f009a2b12a5ba_Out_0_Vector2 = float2(_Split_6299d4ddcc4c74828aea40a46fdb896e_R_1_Float, float(1));
|
|
float2 _Multiply_862402885a49f18cb87278ab53bc6744_Out_2_Vector2;
|
|
Unity_Multiply_float2_float2((_Multiply_2c0864423b014f8b8af8523f68cbb63c_Out_2_Vector4.xy), _Vector2_a1e23e0f921b6484818f009a2b12a5ba_Out_0_Vector2, _Multiply_862402885a49f18cb87278ab53bc6744_Out_2_Vector2);
|
|
float4 _SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_RGBA_0_Vector4 = SAMPLE_TEXTURE2D(_Property_3e01b4d2fc68d48ba3acbba9d5881e59_Out_0_Texture2D.tex, _Property_8a2b8589cd3a42a1879a29c28e4f711f_Out_0_SamplerState.samplerstate, _Property_3e01b4d2fc68d48ba3acbba9d5881e59_Out_0_Texture2D.GetTransformedUV(_Multiply_862402885a49f18cb87278ab53bc6744_Out_2_Vector2) );
|
|
_SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_RGBA_0_Vector4.rgb = UnpackNormal(_SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_RGBA_0_Vector4);
|
|
float _SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_R_4_Float = _SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_RGBA_0_Vector4.r;
|
|
float _SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_G_5_Float = _SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_RGBA_0_Vector4.g;
|
|
float _SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_B_6_Float = _SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_RGBA_0_Vector4.b;
|
|
float _SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_A_7_Float = _SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_RGBA_0_Vector4.a;
|
|
float _Multiply_4649b768be76d784a3284bacde795359_Out_2_Float;
|
|
Unity_Multiply_float_float(_SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_B_6_Float, _Split_5ed44bf2eca0868f81eb18100f49d1fa_R_1_Float, _Multiply_4649b768be76d784a3284bacde795359_Out_2_Float);
|
|
float2 _Vector2_819fcd5eb484438eacad1987576d7d67_Out_0_Vector2 = float2(_SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_R_4_Float, _SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_G_5_Float);
|
|
float2 _Multiply_58530ebb3c6d798b93686a76247bf505_Out_2_Vector2;
|
|
Unity_Multiply_float2_float2(_Vector2_819fcd5eb484438eacad1987576d7d67_Out_0_Vector2, _Vector2_a1e23e0f921b6484818f009a2b12a5ba_Out_0_Vector2, _Multiply_58530ebb3c6d798b93686a76247bf505_Out_2_Vector2);
|
|
float2 _Vector2_e293c112b2f49e88a5fe46dfb1fbeb40_Out_0_Vector2 = float2(_Split_5ed44bf2eca0868f81eb18100f49d1fa_B_3_Float, _Split_5ed44bf2eca0868f81eb18100f49d1fa_G_2_Float);
|
|
float2 _Add_cf00fb232c6e2b8e973ab2f84453f55e_Out_2_Vector2;
|
|
Unity_Add_float2(_Multiply_58530ebb3c6d798b93686a76247bf505_Out_2_Vector2, _Vector2_e293c112b2f49e88a5fe46dfb1fbeb40_Out_0_Vector2, _Add_cf00fb232c6e2b8e973ab2f84453f55e_Out_2_Vector2);
|
|
float _Split_3ea3e61d32bdd78f82c686b75ff3fd9b_R_1_Float = _Add_cf00fb232c6e2b8e973ab2f84453f55e_Out_2_Vector2[0];
|
|
float _Split_3ea3e61d32bdd78f82c686b75ff3fd9b_G_2_Float = _Add_cf00fb232c6e2b8e973ab2f84453f55e_Out_2_Vector2[1];
|
|
float _Split_3ea3e61d32bdd78f82c686b75ff3fd9b_B_3_Float = 0;
|
|
float _Split_3ea3e61d32bdd78f82c686b75ff3fd9b_A_4_Float = 0;
|
|
float3 _Vector3_13a08d5940172a84a78ee3d9b8766833_Out_0_Vector3 = float3(_Multiply_4649b768be76d784a3284bacde795359_Out_2_Float, _Split_3ea3e61d32bdd78f82c686b75ff3fd9b_G_2_Float, _Split_3ea3e61d32bdd78f82c686b75ff3fd9b_R_1_Float);
|
|
float3 _Multiply_77818c22e359fc8cbb7dd20216a8db72_Out_2_Vector3;
|
|
Unity_Multiply_float3_float3(_Vector3_13a08d5940172a84a78ee3d9b8766833_Out_0_Vector3, (_Split_ae83014fcbd9f7879a0b91fa66dc9718_R_1_Float.xxx), _Multiply_77818c22e359fc8cbb7dd20216a8db72_Out_2_Vector3);
|
|
float3 _Add_769d9ee909c9238dbbf72d2800a2f268_Out_2_Vector3;
|
|
Unity_Add_float3(_Multiply_7bb4009c92b108849ac6ca92bc1442f2_Out_2_Vector3, _Multiply_77818c22e359fc8cbb7dd20216a8db72_Out_2_Vector3, _Add_769d9ee909c9238dbbf72d2800a2f268_Out_2_Vector3);
|
|
float3 _Add_14295f72880e4b87a1baf1ced943ac40_Out_2_Vector3;
|
|
Unity_Add_float3(_Multiply_2e1040ca9c98d085ace76ee93f094039_Out_2_Vector3, _Add_769d9ee909c9238dbbf72d2800a2f268_Out_2_Vector3, _Add_14295f72880e4b87a1baf1ced943ac40_Out_2_Vector3);
|
|
float _Add_e59af300bba2498db32eac1412123447_Out_2_Float;
|
|
Unity_Add_float(_Split_ae83014fcbd9f7879a0b91fa66dc9718_R_1_Float, _Split_ae83014fcbd9f7879a0b91fa66dc9718_G_2_Float, _Add_e59af300bba2498db32eac1412123447_Out_2_Float);
|
|
float _Add_e855069f047fae8ea9027d56acb61e56_Out_2_Float;
|
|
Unity_Add_float(_Add_e59af300bba2498db32eac1412123447_Out_2_Float, _Split_ae83014fcbd9f7879a0b91fa66dc9718_B_3_Float, _Add_e855069f047fae8ea9027d56acb61e56_Out_2_Float);
|
|
float3 _Divide_91ae4b94f1d9b78e99d0472293b8098c_Out_2_Vector3;
|
|
Unity_Divide_float3(_Add_14295f72880e4b87a1baf1ced943ac40_Out_2_Vector3, (_Add_e855069f047fae8ea9027d56acb61e56_Out_2_Float.xxx), _Divide_91ae4b94f1d9b78e99d0472293b8098c_Out_2_Vector3);
|
|
float3 _Transform_73eecc0c3689d184a34c8d0f28a58adf_Out_1_Vector3;
|
|
{
|
|
float3x3 tangentTransform = float3x3(IN.WorldSpaceTangent, IN.WorldSpaceBiTangent, IN.WorldSpaceNormal);
|
|
_Transform_73eecc0c3689d184a34c8d0f28a58adf_Out_1_Vector3 = TransformWorldToTangent(_Divide_91ae4b94f1d9b78e99d0472293b8098c_Out_2_Vector3.xyz, tangentTransform, true);
|
|
}
|
|
float3 _Normalize_15ef346824db0a8797631ed8b998e673_Out_1_Vector3;
|
|
Unity_Normalize_float3(_Transform_73eecc0c3689d184a34c8d0f28a58adf_Out_1_Vector3, _Normalize_15ef346824db0a8797631ed8b998e673_Out_1_Vector3);
|
|
XYZ_1 = (float4(_Normalize_15ef346824db0a8797631ed8b998e673_Out_1_Vector3, 1.0));
|
|
XZ_2 = (float4(_Vector3_08f62c5c01619e849f1a7d85a44531ac_Out_0_Vector3, 1.0));
|
|
YZ_3 = (float4(_Vector3_ba6cfb4671e8c58f9b41ea1dc23102ca_Out_0_Vector3, 1.0));
|
|
XY_4 = (float4(_Vector3_13a08d5940172a84a78ee3d9b8766833_Out_0_Vector3, 1.0));
|
|
}
|
|
|
|
void Unity_NormalStrength_float(float3 In, float Strength, out float3 Out)
|
|
{
|
|
Out = float3(In.rg * Strength, lerp(1, In.b, saturate(Strength)));
|
|
}
|
|
|
|
void Unity_NormalBlend_float(float3 A, float3 B, out float3 Out)
|
|
{
|
|
Out = SafeNormalize(float3(A.rg + B.rg, A.b * B.b));
|
|
}
|
|
|
|
void Unity_Subtract_float(float A, float B, out float Out)
|
|
{
|
|
Out = A - B;
|
|
}
|
|
|
|
void Unity_Divide_float(float A, float B, out float Out)
|
|
{
|
|
Out = A / B;
|
|
}
|
|
|
|
void Unity_Lerp_float3(float3 A, float3 B, float3 T, out float3 Out)
|
|
{
|
|
Out = lerp(A, B, T);
|
|
}
|
|
|
|
void Unity_Remap_float(float In, float2 InMinMax, float2 OutMinMax, out float Out)
|
|
{
|
|
Out = OutMinMax.x + (In - InMinMax.x) * (OutMinMax.y - OutMinMax.x) / (InMinMax.y - InMinMax.x);
|
|
}
|
|
|
|
void Unity_Branch_float(float Predicate, float True, float False, out float Out)
|
|
{
|
|
Out = Predicate ? True : False;
|
|
}
|
|
|
|
void Unity_Lerp_float(float A, float B, float T, out float Out)
|
|
{
|
|
Out = lerp(A, B, T);
|
|
}
|
|
|
|
struct Bindings_BlendOverlayDetailSmoothness_06e12138dc89c0040b45a57abe520a1a_float
|
|
{
|
|
};
|
|
|
|
void SG_BlendOverlayDetailSmoothness_06e12138dc89c0040b45a57abe520a1a_float(float Vector1_32317166, float Vector1_FBE622A2, float Vector1_8C15C351, Bindings_BlendOverlayDetailSmoothness_06e12138dc89c0040b45a57abe520a1a_float IN, out float SmoothnessOverlay_1)
|
|
{
|
|
float _Property_728cc50521e9e988ac9cbff4872d5139_Out_0_Float = Vector1_32317166;
|
|
float _Property_a00e29241d12f983b30177515b367ec9_Out_0_Float = Vector1_FBE622A2;
|
|
float _Sign_343a45ede7349283a681c6bd9998fd8e_Out_1_Float;
|
|
Unity_Sign_float(_Property_a00e29241d12f983b30177515b367ec9_Out_0_Float, _Sign_343a45ede7349283a681c6bd9998fd8e_Out_1_Float);
|
|
float _Add_681019b8f5d3d68bb482d419c9fc61a9_Out_2_Float;
|
|
Unity_Add_float(_Sign_343a45ede7349283a681c6bd9998fd8e_Out_1_Float, float(1), _Add_681019b8f5d3d68bb482d419c9fc61a9_Out_2_Float);
|
|
float _Multiply_e8f4cb722712a880ac0db6c7461427f7_Out_2_Float;
|
|
Unity_Multiply_float_float(_Add_681019b8f5d3d68bb482d419c9fc61a9_Out_2_Float, 0.5, _Multiply_e8f4cb722712a880ac0db6c7461427f7_Out_2_Float);
|
|
float _Ceiling_95ad15988aa9b98184875fa754feae01_Out_1_Float;
|
|
Unity_Ceiling_float(_Multiply_e8f4cb722712a880ac0db6c7461427f7_Out_2_Float, _Ceiling_95ad15988aa9b98184875fa754feae01_Out_1_Float);
|
|
float _Property_2db1c747a05ee284a8b00076062f91a4_Out_0_Float = Vector1_8C15C351;
|
|
float _Lerp_b3cdb01fc3c5b988ac9b184943bf7c01_Out_3_Float;
|
|
Unity_Lerp_float(_Property_728cc50521e9e988ac9cbff4872d5139_Out_0_Float, _Ceiling_95ad15988aa9b98184875fa754feae01_Out_1_Float, _Property_2db1c747a05ee284a8b00076062f91a4_Out_0_Float, _Lerp_b3cdb01fc3c5b988ac9b184943bf7c01_Out_3_Float);
|
|
SmoothnessOverlay_1 = _Lerp_b3cdb01fc3c5b988ac9b184943bf7c01_Out_3_Float;
|
|
}
|
|
|
|
void Unity_Minimum_float(float A, float B, out float Out)
|
|
{
|
|
Out = min(A, B);
|
|
};
|
|
|
|
// Graph Vertex
|
|
struct VertexDescription
|
|
{
|
|
float3 Position;
|
|
float3 Normal;
|
|
float3 Tangent;
|
|
};
|
|
|
|
VertexDescription VertexDescriptionFunction(VertexDescriptionInputs IN)
|
|
{
|
|
VertexDescription description = (VertexDescription)0;
|
|
description.Position = IN.ObjectSpacePosition;
|
|
description.Normal = IN.ObjectSpaceNormal;
|
|
description.Tangent = IN.ObjectSpaceTangent;
|
|
return description;
|
|
}
|
|
|
|
// Graph Pixel
|
|
struct SurfaceDescription
|
|
{
|
|
float3 BaseColor;
|
|
float3 Emission;
|
|
float Alpha;
|
|
float3 BentNormal;
|
|
float Smoothness;
|
|
float Occlusion;
|
|
float3 NormalTS;
|
|
float Metallic;
|
|
};
|
|
|
|
SurfaceDescription SurfaceDescriptionFunction(SurfaceDescriptionInputs IN)
|
|
{
|
|
SurfaceDescription surface = (SurfaceDescription)0;
|
|
float _Property_72a5c604805a7b8ebbfd7acee03656aa_Out_0_Boolean = _CoverMaskRCurvature;
|
|
UnityTexture2D _Property_5f029bbc9f13b7858650859c3b63ebfd_Out_0_Texture2D = UnityBuildTexture2DStructNoScale(_BaseColorMap);
|
|
float4 _Property_a409d5fcafb9f182a4b2aea64204408f_Out_0_Vector4 = _BaseTilingOffset;
|
|
float4 _Divide_6a90cebe78e620828de587523daaa7e6_Out_2_Vector4;
|
|
Unity_Divide_float4(float4(1, 1, 0, 0), _Property_a409d5fcafb9f182a4b2aea64204408f_Out_0_Vector4, _Divide_6a90cebe78e620828de587523daaa7e6_Out_2_Vector4);
|
|
float _Property_3539de8c698c2981bb3c088d4ec52201_Out_0_Float = _BaseTriplanarThreshold;
|
|
Bindings_TriplanarNM_bc609ed95f52591469ab35dbfe0efcea_float _TriplanarNM_92d0433ff3938b8392407d2ab8713ac8;
|
|
_TriplanarNM_92d0433ff3938b8392407d2ab8713ac8.WorldSpaceNormal = IN.WorldSpaceNormal;
|
|
_TriplanarNM_92d0433ff3938b8392407d2ab8713ac8.AbsoluteWorldSpacePosition = IN.AbsoluteWorldSpacePosition;
|
|
float4 _TriplanarNM_92d0433ff3938b8392407d2ab8713ac8_XYZ_1_Vector4;
|
|
float4 _TriplanarNM_92d0433ff3938b8392407d2ab8713ac8_XZ_2_Vector4;
|
|
float4 _TriplanarNM_92d0433ff3938b8392407d2ab8713ac8_YZ_3_Vector4;
|
|
float4 _TriplanarNM_92d0433ff3938b8392407d2ab8713ac8_XY_4_Vector4;
|
|
SG_TriplanarNM_bc609ed95f52591469ab35dbfe0efcea_float(_Property_5f029bbc9f13b7858650859c3b63ebfd_Out_0_Texture2D, (_Divide_6a90cebe78e620828de587523daaa7e6_Out_2_Vector4).x, _Property_3539de8c698c2981bb3c088d4ec52201_Out_0_Float, UnityBuildSamplerStateStruct(SamplerState_Linear_Repeat_Aniso8), _TriplanarNM_92d0433ff3938b8392407d2ab8713ac8, _TriplanarNM_92d0433ff3938b8392407d2ab8713ac8_XYZ_1_Vector4, _TriplanarNM_92d0433ff3938b8392407d2ab8713ac8_XZ_2_Vector4, _TriplanarNM_92d0433ff3938b8392407d2ab8713ac8_YZ_3_Vector4, _TriplanarNM_92d0433ff3938b8392407d2ab8713ac8_XY_4_Vector4);
|
|
float4 _Property_87cd542c2b8c30868ed1d7d38aed8f2b_Out_0_Vector4 = _BaseColor;
|
|
float4 _Multiply_4b2be0b3fe39f385b887e7c82ab41e0b_Out_2_Vector4;
|
|
Unity_Multiply_float4_float4(_TriplanarNM_92d0433ff3938b8392407d2ab8713ac8_XYZ_1_Vector4, _Property_87cd542c2b8c30868ed1d7d38aed8f2b_Out_0_Vector4, _Multiply_4b2be0b3fe39f385b887e7c82ab41e0b_Out_2_Vector4);
|
|
UnityTexture2D _Property_c167aafac28bd98c8411d3e25631fdeb_Out_0_Texture2D = UnityBuildTexture2DStructNoScale(_CoverMaskA);
|
|
float4 _UV_e143f0ebbac8bb8cab3206ab93422dda_Out_0_Vector4 = IN.uv0;
|
|
float4 _SampleTexture2D_32717b1e99785588830ceee116cbe7fc_RGBA_0_Vector4 = SAMPLE_TEXTURE2D(_Property_c167aafac28bd98c8411d3e25631fdeb_Out_0_Texture2D.tex, _Property_c167aafac28bd98c8411d3e25631fdeb_Out_0_Texture2D.samplerstate, _Property_c167aafac28bd98c8411d3e25631fdeb_Out_0_Texture2D.GetTransformedUV((_UV_e143f0ebbac8bb8cab3206ab93422dda_Out_0_Vector4.xy)) );
|
|
float _SampleTexture2D_32717b1e99785588830ceee116cbe7fc_R_4_Float = _SampleTexture2D_32717b1e99785588830ceee116cbe7fc_RGBA_0_Vector4.r;
|
|
float _SampleTexture2D_32717b1e99785588830ceee116cbe7fc_G_5_Float = _SampleTexture2D_32717b1e99785588830ceee116cbe7fc_RGBA_0_Vector4.g;
|
|
float _SampleTexture2D_32717b1e99785588830ceee116cbe7fc_B_6_Float = _SampleTexture2D_32717b1e99785588830ceee116cbe7fc_RGBA_0_Vector4.b;
|
|
float _SampleTexture2D_32717b1e99785588830ceee116cbe7fc_A_7_Float = _SampleTexture2D_32717b1e99785588830ceee116cbe7fc_RGBA_0_Vector4.a;
|
|
float _Multiply_01f97603c3df268380d339564b08db11_Out_2_Float;
|
|
Unity_Multiply_float_float(_SampleTexture2D_32717b1e99785588830ceee116cbe7fc_R_4_Float, 2, _Multiply_01f97603c3df268380d339564b08db11_Out_2_Float);
|
|
float _Property_cad777e9a810198e8076eb2cd76e6817_Out_0_Float = _BaseDarknessCurvMultply;
|
|
float _Multiply_b67c8963c3ba188e85b84ae9bf0dcbf7_Out_2_Float;
|
|
Unity_Multiply_float_float(_Multiply_01f97603c3df268380d339564b08db11_Out_2_Float, _Property_cad777e9a810198e8076eb2cd76e6817_Out_0_Float, _Multiply_b67c8963c3ba188e85b84ae9bf0dcbf7_Out_2_Float);
|
|
float _Clamp_646f55d74b38f18aa983e5d031e0e7c3_Out_3_Float;
|
|
Unity_Clamp_float(_Multiply_b67c8963c3ba188e85b84ae9bf0dcbf7_Out_2_Float, float(0), float(1), _Clamp_646f55d74b38f18aa983e5d031e0e7c3_Out_3_Float);
|
|
float _Absolute_c99e11216fab2488946eb6243d985fdc_Out_1_Float;
|
|
Unity_Absolute_float(_Clamp_646f55d74b38f18aa983e5d031e0e7c3_Out_3_Float, _Absolute_c99e11216fab2488946eb6243d985fdc_Out_1_Float);
|
|
float _Property_f8a9827e6f28d9819188d4775dcf7620_Out_0_Float = _BaseDarknessCurvPower;
|
|
float _Power_1b88303e1ca2f285b344bf6aa0cf05e4_Out_2_Float;
|
|
Unity_Power_float(_Absolute_c99e11216fab2488946eb6243d985fdc_Out_1_Float, _Property_f8a9827e6f28d9819188d4775dcf7620_Out_0_Float, _Power_1b88303e1ca2f285b344bf6aa0cf05e4_Out_2_Float);
|
|
float _Clamp_27887d983dbb5a8bbd2966fbcbd7c126_Out_3_Float;
|
|
Unity_Clamp_float(_Power_1b88303e1ca2f285b344bf6aa0cf05e4_Out_2_Float, float(0), float(1), _Clamp_27887d983dbb5a8bbd2966fbcbd7c126_Out_3_Float);
|
|
float4 _Multiply_59efbfb897b39480ad44be129db72018_Out_2_Vector4;
|
|
Unity_Multiply_float4_float4(_Multiply_4b2be0b3fe39f385b887e7c82ab41e0b_Out_2_Vector4, (_Clamp_27887d983dbb5a8bbd2966fbcbd7c126_Out_3_Float.xxxx), _Multiply_59efbfb897b39480ad44be129db72018_Out_2_Vector4);
|
|
float4 _Clamp_841e38951a68f286955c4755e78c610b_Out_3_Vector4;
|
|
Unity_Clamp_float4(_Multiply_59efbfb897b39480ad44be129db72018_Out_2_Vector4, float4(0, 0, 0, 0), float4(1, 1, 1, 1), _Clamp_841e38951a68f286955c4755e78c610b_Out_3_Vector4);
|
|
float _Add_d7ea4a88c4af4886b1e567ddd2b963f9_Out_2_Float;
|
|
Unity_Add_float(_Multiply_01f97603c3df268380d339564b08db11_Out_2_Float, float(-1), _Add_d7ea4a88c4af4886b1e567ddd2b963f9_Out_2_Float);
|
|
float _Clamp_1a02c4bf5903c988b1489d14c840c1e3_Out_3_Float;
|
|
Unity_Clamp_float(_Add_d7ea4a88c4af4886b1e567ddd2b963f9_Out_2_Float, float(0), float(1), _Clamp_1a02c4bf5903c988b1489d14c840c1e3_Out_3_Float);
|
|
float _Property_0e0e1ec2131cec87836dce596351dc1c_Out_0_Float = _BaseBrightnessCurvMultply;
|
|
float _Multiply_c975dfa7de001c89addd082d443e2d07_Out_2_Float;
|
|
Unity_Multiply_float_float(_Clamp_1a02c4bf5903c988b1489d14c840c1e3_Out_3_Float, _Property_0e0e1ec2131cec87836dce596351dc1c_Out_0_Float, _Multiply_c975dfa7de001c89addd082d443e2d07_Out_2_Float);
|
|
float _Clamp_d5711b145a87ef8e8a93ceb9b6197759_Out_3_Float;
|
|
Unity_Clamp_float(_Multiply_c975dfa7de001c89addd082d443e2d07_Out_2_Float, float(0), float(1), _Clamp_d5711b145a87ef8e8a93ceb9b6197759_Out_3_Float);
|
|
float _Absolute_8f9bd7ee7a35c18084d08ad7ef463f52_Out_1_Float;
|
|
Unity_Absolute_float(_Clamp_d5711b145a87ef8e8a93ceb9b6197759_Out_3_Float, _Absolute_8f9bd7ee7a35c18084d08ad7ef463f52_Out_1_Float);
|
|
float _Property_9092f5beea2bec83a5c8a3f6623953a6_Out_0_Float = _BaseBrightnessCurvPower;
|
|
float _Power_5c1a81a2cfcc578996666adb93479f83_Out_2_Float;
|
|
Unity_Power_float(_Absolute_8f9bd7ee7a35c18084d08ad7ef463f52_Out_1_Float, _Property_9092f5beea2bec83a5c8a3f6623953a6_Out_0_Float, _Power_5c1a81a2cfcc578996666adb93479f83_Out_2_Float);
|
|
float _Clamp_f3c614a7ae35508288c0bc3f6194ca34_Out_3_Float;
|
|
Unity_Clamp_float(_Power_5c1a81a2cfcc578996666adb93479f83_Out_2_Float, float(0), float(1), _Clamp_f3c614a7ae35508288c0bc3f6194ca34_Out_3_Float);
|
|
float4 _Add_8313e15cade91a8ba653986d6722818a_Out_2_Vector4;
|
|
Unity_Add_float4(_Clamp_841e38951a68f286955c4755e78c610b_Out_3_Vector4, (_Clamp_f3c614a7ae35508288c0bc3f6194ca34_Out_3_Float.xxxx), _Add_8313e15cade91a8ba653986d6722818a_Out_2_Vector4);
|
|
float4 _Clamp_6dc8fea4fa463b8ea840911fd315c80f_Out_3_Vector4;
|
|
Unity_Clamp_float4(_Add_8313e15cade91a8ba653986d6722818a_Out_2_Vector4, float4(0, 0, 0, 0), float4(1, 1, 1, 1), _Clamp_6dc8fea4fa463b8ea840911fd315c80f_Out_3_Vector4);
|
|
float4 _Branch_26165227c7a50284b87d2996dee9982c_Out_3_Vector4;
|
|
Unity_Branch_float4(_Property_72a5c604805a7b8ebbfd7acee03656aa_Out_0_Boolean, _Clamp_6dc8fea4fa463b8ea840911fd315c80f_Out_3_Vector4, _Multiply_4b2be0b3fe39f385b887e7c82ab41e0b_Out_2_Vector4, _Branch_26165227c7a50284b87d2996dee9982c_Out_3_Vector4);
|
|
UnityTexture2D _Property_2e62abc1fe8adb8b8ff655b8448be202_Out_0_Texture2D = UnityBuildTexture2DStructNoScale(_DetailMap);
|
|
float4 _Property_b86e0ee324ffb58a92473eab69864d04_Out_0_Vector4 = _DetailTilingOffset;
|
|
float _Split_e832641c05503286a4951c0a93621755_R_1_Float = _Property_b86e0ee324ffb58a92473eab69864d04_Out_0_Vector4[0];
|
|
float _Split_e832641c05503286a4951c0a93621755_G_2_Float = _Property_b86e0ee324ffb58a92473eab69864d04_Out_0_Vector4[1];
|
|
float _Split_e832641c05503286a4951c0a93621755_B_3_Float = _Property_b86e0ee324ffb58a92473eab69864d04_Out_0_Vector4[2];
|
|
float _Split_e832641c05503286a4951c0a93621755_A_4_Float = _Property_b86e0ee324ffb58a92473eab69864d04_Out_0_Vector4[3];
|
|
float2 _Vector2_4b5eef288b3d4c83b24e4ab653f55ec8_Out_0_Vector2 = float2(_Split_e832641c05503286a4951c0a93621755_R_1_Float, _Split_e832641c05503286a4951c0a93621755_G_2_Float);
|
|
float2 _Vector2_2925cf98ba16b08dabc58cd65efd17db_Out_0_Vector2 = float2(_Split_e832641c05503286a4951c0a93621755_B_3_Float, _Split_e832641c05503286a4951c0a93621755_A_4_Float);
|
|
float2 _TilingAndOffset_74f6566eba9ccd899de18c0b11b7a7a2_Out_3_Vector2;
|
|
Unity_TilingAndOffset_float(IN.uv0.xy, _Vector2_4b5eef288b3d4c83b24e4ab653f55ec8_Out_0_Vector2, _Vector2_2925cf98ba16b08dabc58cd65efd17db_Out_0_Vector2, _TilingAndOffset_74f6566eba9ccd899de18c0b11b7a7a2_Out_3_Vector2);
|
|
float4 _SampleTexture2D_4bd08411faa60c828847f2247f06a809_RGBA_0_Vector4 = SAMPLE_TEXTURE2D(_Property_2e62abc1fe8adb8b8ff655b8448be202_Out_0_Texture2D.tex, _Property_2e62abc1fe8adb8b8ff655b8448be202_Out_0_Texture2D.samplerstate, _Property_2e62abc1fe8adb8b8ff655b8448be202_Out_0_Texture2D.GetTransformedUV(_TilingAndOffset_74f6566eba9ccd899de18c0b11b7a7a2_Out_3_Vector2) );
|
|
float _SampleTexture2D_4bd08411faa60c828847f2247f06a809_R_4_Float = _SampleTexture2D_4bd08411faa60c828847f2247f06a809_RGBA_0_Vector4.r;
|
|
float _SampleTexture2D_4bd08411faa60c828847f2247f06a809_G_5_Float = _SampleTexture2D_4bd08411faa60c828847f2247f06a809_RGBA_0_Vector4.g;
|
|
float _SampleTexture2D_4bd08411faa60c828847f2247f06a809_B_6_Float = _SampleTexture2D_4bd08411faa60c828847f2247f06a809_RGBA_0_Vector4.b;
|
|
float _SampleTexture2D_4bd08411faa60c828847f2247f06a809_A_7_Float = _SampleTexture2D_4bd08411faa60c828847f2247f06a809_RGBA_0_Vector4.a;
|
|
float _Multiply_ee5a3ccdebd1af84920cd1455a59468b_Out_2_Float;
|
|
Unity_Multiply_float_float(_SampleTexture2D_4bd08411faa60c828847f2247f06a809_R_4_Float, 2, _Multiply_ee5a3ccdebd1af84920cd1455a59468b_Out_2_Float);
|
|
float _Add_b8d727bda34294808f98551e67aa852f_Out_2_Float;
|
|
Unity_Add_float(_Multiply_ee5a3ccdebd1af84920cd1455a59468b_Out_2_Float, float(-1), _Add_b8d727bda34294808f98551e67aa852f_Out_2_Float);
|
|
float _Property_4634e589b03f6983b90fa6aaee0ed5f6_Out_0_Float = _DetailAlbedoScale;
|
|
float _Multiply_f0ed5a95f800c68aa9f7ea2f1322cc31_Out_2_Float;
|
|
Unity_Multiply_float_float(_Add_b8d727bda34294808f98551e67aa852f_Out_2_Float, _Property_4634e589b03f6983b90fa6aaee0ed5f6_Out_0_Float, _Multiply_f0ed5a95f800c68aa9f7ea2f1322cc31_Out_2_Float);
|
|
float _Saturate_469298b4e783d887889b71dc48b4399f_Out_1_Float;
|
|
Unity_Saturate_float(_Multiply_f0ed5a95f800c68aa9f7ea2f1322cc31_Out_2_Float, _Saturate_469298b4e783d887889b71dc48b4399f_Out_1_Float);
|
|
float _Absolute_3b29f3ceceba148189d11e0195af4be2_Out_1_Float;
|
|
Unity_Absolute_float(_Saturate_469298b4e783d887889b71dc48b4399f_Out_1_Float, _Absolute_3b29f3ceceba148189d11e0195af4be2_Out_1_Float);
|
|
Bindings_BlendOverlayBaseColor_acdb3dfca72bd6b42bbc35f4613331a2_float _BlendOverlayBaseColor_369c0b6a02e62b809dc5c6ac1efddde2;
|
|
float3 _BlendOverlayBaseColor_369c0b6a02e62b809dc5c6ac1efddde2_OutVector4_1_Vector3;
|
|
SG_BlendOverlayBaseColor_acdb3dfca72bd6b42bbc35f4613331a2_float(_Branch_26165227c7a50284b87d2996dee9982c_Out_3_Vector4, _Add_b8d727bda34294808f98551e67aa852f_Out_2_Float, _Absolute_3b29f3ceceba148189d11e0195af4be2_Out_1_Float, _BlendOverlayBaseColor_369c0b6a02e62b809dc5c6ac1efddde2, _BlendOverlayBaseColor_369c0b6a02e62b809dc5c6ac1efddde2_OutVector4_1_Vector3);
|
|
UnityTexture2D _Property_9a8451520f254f84a21875f3dac8cbe3_Out_0_Texture2D = UnityBuildTexture2DStructNoScale(_CoverBaseColorMap);
|
|
float4 _Property_c853e88632d9fd85ac0e98d12083eb62_Out_0_Vector4 = _CoverTilingOffset;
|
|
float4 _Divide_1fe314f1ca9dd78fbf366bbeb40e4ccf_Out_2_Vector4;
|
|
Unity_Divide_float4(float4(1, 1, 0, 0), _Property_c853e88632d9fd85ac0e98d12083eb62_Out_0_Vector4, _Divide_1fe314f1ca9dd78fbf366bbeb40e4ccf_Out_2_Vector4);
|
|
float _Property_ee792eccbb538a878b19be5db264531e_Out_0_Float = _CoverTriplanarThreshold;
|
|
Bindings_TriplanarNM_bc609ed95f52591469ab35dbfe0efcea_float _TriplanarNM_cca4c45d91c87989990c532a04e9e8e1;
|
|
_TriplanarNM_cca4c45d91c87989990c532a04e9e8e1.WorldSpaceNormal = IN.WorldSpaceNormal;
|
|
_TriplanarNM_cca4c45d91c87989990c532a04e9e8e1.AbsoluteWorldSpacePosition = IN.AbsoluteWorldSpacePosition;
|
|
float4 _TriplanarNM_cca4c45d91c87989990c532a04e9e8e1_XYZ_1_Vector4;
|
|
float4 _TriplanarNM_cca4c45d91c87989990c532a04e9e8e1_XZ_2_Vector4;
|
|
float4 _TriplanarNM_cca4c45d91c87989990c532a04e9e8e1_YZ_3_Vector4;
|
|
float4 _TriplanarNM_cca4c45d91c87989990c532a04e9e8e1_XY_4_Vector4;
|
|
SG_TriplanarNM_bc609ed95f52591469ab35dbfe0efcea_float(_Property_9a8451520f254f84a21875f3dac8cbe3_Out_0_Texture2D, (_Divide_1fe314f1ca9dd78fbf366bbeb40e4ccf_Out_2_Vector4).x, _Property_ee792eccbb538a878b19be5db264531e_Out_0_Float, UnityBuildSamplerStateStruct(SamplerState_Linear_Repeat_Aniso8), _TriplanarNM_cca4c45d91c87989990c532a04e9e8e1, _TriplanarNM_cca4c45d91c87989990c532a04e9e8e1_XYZ_1_Vector4, _TriplanarNM_cca4c45d91c87989990c532a04e9e8e1_XZ_2_Vector4, _TriplanarNM_cca4c45d91c87989990c532a04e9e8e1_YZ_3_Vector4, _TriplanarNM_cca4c45d91c87989990c532a04e9e8e1_XY_4_Vector4);
|
|
float4 _Property_18c743619f52288dbe24e28326388b00_Out_0_Vector4 = _CoverBaseColor;
|
|
float4 _Multiply_62594f3b30470e86a813e1224c48902e_Out_2_Vector4;
|
|
Unity_Multiply_float4_float4(_TriplanarNM_cca4c45d91c87989990c532a04e9e8e1_XYZ_1_Vector4, _Property_18c743619f52288dbe24e28326388b00_Out_0_Vector4, _Multiply_62594f3b30470e86a813e1224c48902e_Out_2_Vector4);
|
|
float _Multiply_5378fc524597f98fb32eeb561a7390e9_Out_2_Float;
|
|
Unity_Multiply_float_float(_SampleTexture2D_32717b1e99785588830ceee116cbe7fc_R_4_Float, 2, _Multiply_5378fc524597f98fb32eeb561a7390e9_Out_2_Float);
|
|
float _Property_8a72d97c1c527c8f8e0cc71214498065_Out_0_Float = _CoverDarknessCurvMultply;
|
|
float _Multiply_22683a720176a788a2ce404dbddd837c_Out_2_Float;
|
|
Unity_Multiply_float_float(_Multiply_5378fc524597f98fb32eeb561a7390e9_Out_2_Float, _Property_8a72d97c1c527c8f8e0cc71214498065_Out_0_Float, _Multiply_22683a720176a788a2ce404dbddd837c_Out_2_Float);
|
|
float _Clamp_5a638fb628222d8a97865d9029554fe2_Out_3_Float;
|
|
Unity_Clamp_float(_Multiply_22683a720176a788a2ce404dbddd837c_Out_2_Float, float(0), float(1), _Clamp_5a638fb628222d8a97865d9029554fe2_Out_3_Float);
|
|
float _Absolute_11985e8863bf2b8ca0bda90bca829348_Out_1_Float;
|
|
Unity_Absolute_float(_Clamp_5a638fb628222d8a97865d9029554fe2_Out_3_Float, _Absolute_11985e8863bf2b8ca0bda90bca829348_Out_1_Float);
|
|
float _Property_aba5acef910eee88b110d565674a9e36_Out_0_Float = _CoverDarknessCurvPower;
|
|
float _Power_da9b537d80a58d85a88e72c2a5d01e7c_Out_2_Float;
|
|
Unity_Power_float(_Absolute_11985e8863bf2b8ca0bda90bca829348_Out_1_Float, _Property_aba5acef910eee88b110d565674a9e36_Out_0_Float, _Power_da9b537d80a58d85a88e72c2a5d01e7c_Out_2_Float);
|
|
float _Clamp_77228e2a7266fa8ca042eae2f0701342_Out_3_Float;
|
|
Unity_Clamp_float(_Power_da9b537d80a58d85a88e72c2a5d01e7c_Out_2_Float, float(0), float(1), _Clamp_77228e2a7266fa8ca042eae2f0701342_Out_3_Float);
|
|
float4 _Multiply_2111c8ad39d5e68caf4893a41a3bad7d_Out_2_Vector4;
|
|
Unity_Multiply_float4_float4(_Multiply_62594f3b30470e86a813e1224c48902e_Out_2_Vector4, (_Clamp_77228e2a7266fa8ca042eae2f0701342_Out_3_Float.xxxx), _Multiply_2111c8ad39d5e68caf4893a41a3bad7d_Out_2_Vector4);
|
|
float4 _Clamp_b489ebb9d7d18282a342100f4d2fa72d_Out_3_Vector4;
|
|
Unity_Clamp_float4(_Multiply_2111c8ad39d5e68caf4893a41a3bad7d_Out_2_Vector4, float4(0, 0, 0, 0), float4(1, 1, 1, 1), _Clamp_b489ebb9d7d18282a342100f4d2fa72d_Out_3_Vector4);
|
|
float _Add_7eea819e47ffe58cbb3ec5877a181444_Out_2_Float;
|
|
Unity_Add_float(_Multiply_5378fc524597f98fb32eeb561a7390e9_Out_2_Float, float(-1), _Add_7eea819e47ffe58cbb3ec5877a181444_Out_2_Float);
|
|
float _Clamp_b5e4f47c0358dc87b5f9fdb3a360e9e9_Out_3_Float;
|
|
Unity_Clamp_float(_Add_7eea819e47ffe58cbb3ec5877a181444_Out_2_Float, float(0), float(1), _Clamp_b5e4f47c0358dc87b5f9fdb3a360e9e9_Out_3_Float);
|
|
float _Property_753051c96a90798fa7d94cff4173d6e6_Out_0_Float = _CoverBrightnessCurvMultply;
|
|
float _Multiply_c650497abc44d98882ce0091d10c4356_Out_2_Float;
|
|
Unity_Multiply_float_float(_Clamp_b5e4f47c0358dc87b5f9fdb3a360e9e9_Out_3_Float, _Property_753051c96a90798fa7d94cff4173d6e6_Out_0_Float, _Multiply_c650497abc44d98882ce0091d10c4356_Out_2_Float);
|
|
float _Clamp_c508dc61e0cb2a829429559098f34f9a_Out_3_Float;
|
|
Unity_Clamp_float(_Multiply_c650497abc44d98882ce0091d10c4356_Out_2_Float, float(0), float(1), _Clamp_c508dc61e0cb2a829429559098f34f9a_Out_3_Float);
|
|
float _Absolute_2cff2da32d80c286acbb99de611f381a_Out_1_Float;
|
|
Unity_Absolute_float(_Clamp_c508dc61e0cb2a829429559098f34f9a_Out_3_Float, _Absolute_2cff2da32d80c286acbb99de611f381a_Out_1_Float);
|
|
float _Property_ce4610db7b6d0c8bb7fb318210d3e83f_Out_0_Float = _CoverBrightnessCurvPower;
|
|
float _Power_c21df4d2e5ea448281f9ac0f4a140b9e_Out_2_Float;
|
|
Unity_Power_float(_Absolute_2cff2da32d80c286acbb99de611f381a_Out_1_Float, _Property_ce4610db7b6d0c8bb7fb318210d3e83f_Out_0_Float, _Power_c21df4d2e5ea448281f9ac0f4a140b9e_Out_2_Float);
|
|
float _Clamp_fd095a9d6c2b9881ae5875ed126bf3fb_Out_3_Float;
|
|
Unity_Clamp_float(_Power_c21df4d2e5ea448281f9ac0f4a140b9e_Out_2_Float, float(0), float(1), _Clamp_fd095a9d6c2b9881ae5875ed126bf3fb_Out_3_Float);
|
|
float4 _Add_4a02758b9a29b18180516bf3c3ede263_Out_2_Vector4;
|
|
Unity_Add_float4(_Clamp_b489ebb9d7d18282a342100f4d2fa72d_Out_3_Vector4, (_Clamp_fd095a9d6c2b9881ae5875ed126bf3fb_Out_3_Float.xxxx), _Add_4a02758b9a29b18180516bf3c3ede263_Out_2_Vector4);
|
|
float4 _Clamp_632e3d64ab55648f927a79cef68f3396_Out_3_Vector4;
|
|
Unity_Clamp_float4(_Add_4a02758b9a29b18180516bf3c3ede263_Out_2_Vector4, float4(0, 0, 0, 0), float4(1, 1, 1, 1), _Clamp_632e3d64ab55648f927a79cef68f3396_Out_3_Vector4);
|
|
float4 _Branch_0c5221a996e29186a372734bf5c30a51_Out_3_Vector4;
|
|
Unity_Branch_float4(_Property_72a5c604805a7b8ebbfd7acee03656aa_Out_0_Boolean, _Clamp_632e3d64ab55648f927a79cef68f3396_Out_3_Vector4, _Multiply_62594f3b30470e86a813e1224c48902e_Out_2_Vector4, _Branch_0c5221a996e29186a372734bf5c30a51_Out_3_Vector4);
|
|
float _Multiply_6a55591ceae0dc86a971a275e316fec6_Out_2_Float;
|
|
Unity_Multiply_float_float(_SampleTexture2D_4bd08411faa60c828847f2247f06a809_R_4_Float, 2, _Multiply_6a55591ceae0dc86a971a275e316fec6_Out_2_Float);
|
|
float _Add_a86411eb4894f78f8f8f3246011b369c_Out_2_Float;
|
|
Unity_Add_float(_Multiply_6a55591ceae0dc86a971a275e316fec6_Out_2_Float, float(-1), _Add_a86411eb4894f78f8f8f3246011b369c_Out_2_Float);
|
|
float _Property_c5a049650239cf80a302d0c0f57c147a_Out_0_Float = _DetailCoverAlbedoScale;
|
|
float _Multiply_1708b01db74fe88a8c36434f8729bf41_Out_2_Float;
|
|
Unity_Multiply_float_float(_Add_a86411eb4894f78f8f8f3246011b369c_Out_2_Float, _Property_c5a049650239cf80a302d0c0f57c147a_Out_0_Float, _Multiply_1708b01db74fe88a8c36434f8729bf41_Out_2_Float);
|
|
float _Saturate_1a4899f79635918485a64fff7cea28ad_Out_1_Float;
|
|
Unity_Saturate_float(_Multiply_1708b01db74fe88a8c36434f8729bf41_Out_2_Float, _Saturate_1a4899f79635918485a64fff7cea28ad_Out_1_Float);
|
|
float _Absolute_d3dce2bb8d9f0285b5183b7f665beed8_Out_1_Float;
|
|
Unity_Absolute_float(_Saturate_1a4899f79635918485a64fff7cea28ad_Out_1_Float, _Absolute_d3dce2bb8d9f0285b5183b7f665beed8_Out_1_Float);
|
|
Bindings_BlendOverlayBaseColor_acdb3dfca72bd6b42bbc35f4613331a2_float _BlendOverlayBaseColor_ec1f397271cc818abdb95188914e6b4d;
|
|
float3 _BlendOverlayBaseColor_ec1f397271cc818abdb95188914e6b4d_OutVector4_1_Vector3;
|
|
SG_BlendOverlayBaseColor_acdb3dfca72bd6b42bbc35f4613331a2_float(_Branch_0c5221a996e29186a372734bf5c30a51_Out_3_Vector4, _Add_a86411eb4894f78f8f8f3246011b369c_Out_2_Float, _Absolute_d3dce2bb8d9f0285b5183b7f665beed8_Out_1_Float, _BlendOverlayBaseColor_ec1f397271cc818abdb95188914e6b4d, _BlendOverlayBaseColor_ec1f397271cc818abdb95188914e6b4d_OutVector4_1_Vector3);
|
|
float _Property_cb0b6597aee47880b32e852aaa0e4a71_Out_0_Boolean = _USEDYNAMICCOVERTSTATICMASKF;
|
|
float _Property_4b3f692214f8d081a043985e1adb12a1_Out_0_Float = _CoverMaskPower;
|
|
float _Multiply_10cc4ecb135f8e8ab88c475223d0eadf_Out_2_Float;
|
|
Unity_Multiply_float_float(_SampleTexture2D_32717b1e99785588830ceee116cbe7fc_A_7_Float, _Property_4b3f692214f8d081a043985e1adb12a1_Out_0_Float, _Multiply_10cc4ecb135f8e8ab88c475223d0eadf_Out_2_Float);
|
|
float _Clamp_07a501c22c6e188199bed73412ac8926_Out_3_Float;
|
|
Unity_Clamp_float(_Multiply_10cc4ecb135f8e8ab88c475223d0eadf_Out_2_Float, float(0), float(1), _Clamp_07a501c22c6e188199bed73412ac8926_Out_3_Float);
|
|
float _Split_2ada595651635e8d97bf4b82f717fcc6_R_1_Float = IN.VertexColor[0];
|
|
float _Split_2ada595651635e8d97bf4b82f717fcc6_G_2_Float = IN.VertexColor[1];
|
|
float _Split_2ada595651635e8d97bf4b82f717fcc6_B_3_Float = IN.VertexColor[2];
|
|
float _Split_2ada595651635e8d97bf4b82f717fcc6_A_4_Float = IN.VertexColor[3];
|
|
float3 _Property_9180f8dd535ba18499edac37aef4d231_Out_0_Vector3 = _CoverDirection;
|
|
float2 _Vector2_7fe7d9ef320da68f958e1ea535e2a6a8_Out_0_Vector2 = float2(_SampleTexture2D_4bd08411faa60c828847f2247f06a809_A_7_Float, _SampleTexture2D_4bd08411faa60c828847f2247f06a809_G_5_Float);
|
|
float2 _Multiply_b8d7cc078ce00d87b9a6b5241b2f1f01_Out_2_Vector2;
|
|
Unity_Multiply_float2_float2(_Vector2_7fe7d9ef320da68f958e1ea535e2a6a8_Out_0_Vector2, float2(2, 2), _Multiply_b8d7cc078ce00d87b9a6b5241b2f1f01_Out_2_Vector2);
|
|
float2 _Add_476ecfb1f47aed8bb8040bb1c44ca372_Out_2_Vector2;
|
|
Unity_Add_float2(_Multiply_b8d7cc078ce00d87b9a6b5241b2f1f01_Out_2_Vector2, float2(-1, -1), _Add_476ecfb1f47aed8bb8040bb1c44ca372_Out_2_Vector2);
|
|
float _Property_b7f40cf2664f5a819eb153af2b2eb69e_Out_0_Float = _DetailNormalScale;
|
|
float2 _Multiply_3b11e3e43551698eb19b6c6b671b6a41_Out_2_Vector2;
|
|
Unity_Multiply_float2_float2(_Add_476ecfb1f47aed8bb8040bb1c44ca372_Out_2_Vector2, (_Property_b7f40cf2664f5a819eb153af2b2eb69e_Out_0_Float.xx), _Multiply_3b11e3e43551698eb19b6c6b671b6a41_Out_2_Vector2);
|
|
float _Split_678aac70d9cb9783a49841710ce82ff8_R_1_Float = _Multiply_3b11e3e43551698eb19b6c6b671b6a41_Out_2_Vector2[0];
|
|
float _Split_678aac70d9cb9783a49841710ce82ff8_G_2_Float = _Multiply_3b11e3e43551698eb19b6c6b671b6a41_Out_2_Vector2[1];
|
|
float _Split_678aac70d9cb9783a49841710ce82ff8_B_3_Float = 0;
|
|
float _Split_678aac70d9cb9783a49841710ce82ff8_A_4_Float = 0;
|
|
float _DotProduct_7fd2e2e8b3e9ed8f9a42a0ba98e14174_Out_2_Float;
|
|
Unity_DotProduct_float2(_Multiply_3b11e3e43551698eb19b6c6b671b6a41_Out_2_Vector2, _Multiply_3b11e3e43551698eb19b6c6b671b6a41_Out_2_Vector2, _DotProduct_7fd2e2e8b3e9ed8f9a42a0ba98e14174_Out_2_Float);
|
|
float _Saturate_47bdfe8ca2c8d989a5ebbb5eb995f023_Out_1_Float;
|
|
Unity_Saturate_float(_DotProduct_7fd2e2e8b3e9ed8f9a42a0ba98e14174_Out_2_Float, _Saturate_47bdfe8ca2c8d989a5ebbb5eb995f023_Out_1_Float);
|
|
float _OneMinus_03777d2879850b838187d9d2605d7341_Out_1_Float;
|
|
Unity_OneMinus_float(_Saturate_47bdfe8ca2c8d989a5ebbb5eb995f023_Out_1_Float, _OneMinus_03777d2879850b838187d9d2605d7341_Out_1_Float);
|
|
float _SquareRoot_ca9c195aef071d8888f26cb73b749f72_Out_1_Float;
|
|
Unity_SquareRoot_float(_OneMinus_03777d2879850b838187d9d2605d7341_Out_1_Float, _SquareRoot_ca9c195aef071d8888f26cb73b749f72_Out_1_Float);
|
|
float3 _Vector3_6999cbd6a5aa908cb7c059b5f2f5b330_Out_0_Vector3 = float3(_Split_678aac70d9cb9783a49841710ce82ff8_R_1_Float, _Split_678aac70d9cb9783a49841710ce82ff8_G_2_Float, _SquareRoot_ca9c195aef071d8888f26cb73b749f72_Out_1_Float);
|
|
UnityTexture2D _Property_d2bb0a0b01239c85bd301cadeec1b3d8_Out_0_Texture2D = UnityBuildTexture2DStructNoScale(_BaseNormalMap);
|
|
Bindings_TriplanarNMn_059da9746584140498cd018db3c76047_float _TriplanarNMn_bf7f7c0e2d896289b86076b79f33d7d4;
|
|
_TriplanarNMn_bf7f7c0e2d896289b86076b79f33d7d4.WorldSpaceNormal = IN.WorldSpaceNormal;
|
|
_TriplanarNMn_bf7f7c0e2d896289b86076b79f33d7d4.WorldSpaceTangent = IN.WorldSpaceTangent;
|
|
_TriplanarNMn_bf7f7c0e2d896289b86076b79f33d7d4.WorldSpaceBiTangent = IN.WorldSpaceBiTangent;
|
|
_TriplanarNMn_bf7f7c0e2d896289b86076b79f33d7d4.AbsoluteWorldSpacePosition = IN.AbsoluteWorldSpacePosition;
|
|
float4 _TriplanarNMn_bf7f7c0e2d896289b86076b79f33d7d4_XYZ_1_Vector4;
|
|
float4 _TriplanarNMn_bf7f7c0e2d896289b86076b79f33d7d4_XZ_2_Vector4;
|
|
float4 _TriplanarNMn_bf7f7c0e2d896289b86076b79f33d7d4_YZ_3_Vector4;
|
|
float4 _TriplanarNMn_bf7f7c0e2d896289b86076b79f33d7d4_XY_4_Vector4;
|
|
SG_TriplanarNMn_059da9746584140498cd018db3c76047_float(_Property_d2bb0a0b01239c85bd301cadeec1b3d8_Out_0_Texture2D, (_Divide_6a90cebe78e620828de587523daaa7e6_Out_2_Vector4).x, _Property_3539de8c698c2981bb3c088d4ec52201_Out_0_Float, UnityBuildSamplerStateStruct(SamplerState_Linear_Repeat_Aniso8), _TriplanarNMn_bf7f7c0e2d896289b86076b79f33d7d4, _TriplanarNMn_bf7f7c0e2d896289b86076b79f33d7d4_XYZ_1_Vector4, _TriplanarNMn_bf7f7c0e2d896289b86076b79f33d7d4_XZ_2_Vector4, _TriplanarNMn_bf7f7c0e2d896289b86076b79f33d7d4_YZ_3_Vector4, _TriplanarNMn_bf7f7c0e2d896289b86076b79f33d7d4_XY_4_Vector4);
|
|
float _Property_d6baf612f8e685848732ca270b39f544_Out_0_Float = _BaseNormalScale;
|
|
float3 _NormalStrength_260139b4d5077d8b9d42de780d173b6c_Out_2_Vector3;
|
|
Unity_NormalStrength_float((_TriplanarNMn_bf7f7c0e2d896289b86076b79f33d7d4_XYZ_1_Vector4.xyz), _Property_d6baf612f8e685848732ca270b39f544_Out_0_Float, _NormalStrength_260139b4d5077d8b9d42de780d173b6c_Out_2_Vector3);
|
|
UnityTexture2D _Property_492c4e7cd40ab980bd38362624511e38_Out_0_Texture2D = UnityBuildTexture2DStructNoScale(_ShapeNormalMap);
|
|
float4 _SampleTexture2D_63aaad04c65f698e8f640de826888075_RGBA_0_Vector4 = SAMPLE_TEXTURE2D(_Property_492c4e7cd40ab980bd38362624511e38_Out_0_Texture2D.tex, _Property_492c4e7cd40ab980bd38362624511e38_Out_0_Texture2D.samplerstate, _Property_492c4e7cd40ab980bd38362624511e38_Out_0_Texture2D.GetTransformedUV(IN.uv0.xy) );
|
|
_SampleTexture2D_63aaad04c65f698e8f640de826888075_RGBA_0_Vector4.rgb = UnpackNormal(_SampleTexture2D_63aaad04c65f698e8f640de826888075_RGBA_0_Vector4);
|
|
float _SampleTexture2D_63aaad04c65f698e8f640de826888075_R_4_Float = _SampleTexture2D_63aaad04c65f698e8f640de826888075_RGBA_0_Vector4.r;
|
|
float _SampleTexture2D_63aaad04c65f698e8f640de826888075_G_5_Float = _SampleTexture2D_63aaad04c65f698e8f640de826888075_RGBA_0_Vector4.g;
|
|
float _SampleTexture2D_63aaad04c65f698e8f640de826888075_B_6_Float = _SampleTexture2D_63aaad04c65f698e8f640de826888075_RGBA_0_Vector4.b;
|
|
float _SampleTexture2D_63aaad04c65f698e8f640de826888075_A_7_Float = _SampleTexture2D_63aaad04c65f698e8f640de826888075_RGBA_0_Vector4.a;
|
|
float _Property_6c35e329e57d0e89950e24817068dbb1_Out_0_Float = _shapeNormalScale;
|
|
float3 _NormalStrength_e181a1bb2f4e35819e0f35e77346e12e_Out_2_Vector3;
|
|
Unity_NormalStrength_float((_SampleTexture2D_63aaad04c65f698e8f640de826888075_RGBA_0_Vector4.xyz), _Property_6c35e329e57d0e89950e24817068dbb1_Out_0_Float, _NormalStrength_e181a1bb2f4e35819e0f35e77346e12e_Out_2_Vector3);
|
|
float3 _NormalBlend_ead295b946c6058190c298c03bf64d0b_Out_2_Vector3;
|
|
Unity_NormalBlend_float(_NormalStrength_260139b4d5077d8b9d42de780d173b6c_Out_2_Vector3, _NormalStrength_e181a1bb2f4e35819e0f35e77346e12e_Out_2_Vector3, _NormalBlend_ead295b946c6058190c298c03bf64d0b_Out_2_Vector3);
|
|
float3 _NormalBlend_4242e1b4a785378aa59dd49e9d993ffc_Out_2_Vector3;
|
|
Unity_NormalBlend_float(_Vector3_6999cbd6a5aa908cb7c059b5f2f5b330_Out_0_Vector3, _NormalBlend_ead295b946c6058190c298c03bf64d0b_Out_2_Vector3, _NormalBlend_4242e1b4a785378aa59dd49e9d993ffc_Out_2_Vector3);
|
|
float _Property_3d4ab6ad1f1f138a96f0463f7be8b6ce_Out_0_Float = _CovershapeNormalScale;
|
|
float3 _NormalStrength_401cd5af500bd68dbc9bca19d548d0db_Out_2_Vector3;
|
|
Unity_NormalStrength_float((_SampleTexture2D_63aaad04c65f698e8f640de826888075_RGBA_0_Vector4.xyz), _Property_3d4ab6ad1f1f138a96f0463f7be8b6ce_Out_0_Float, _NormalStrength_401cd5af500bd68dbc9bca19d548d0db_Out_2_Vector3);
|
|
UnityTexture2D _Property_779695727390348d8b8a7f7ae2245af0_Out_0_Texture2D = UnityBuildTexture2DStructNoScale(_CoverNormalMap);
|
|
Bindings_TriplanarNMn_059da9746584140498cd018db3c76047_float _TriplanarNMn_ba7e211dd8095589a2939b5b239ca8e0;
|
|
_TriplanarNMn_ba7e211dd8095589a2939b5b239ca8e0.WorldSpaceNormal = IN.WorldSpaceNormal;
|
|
_TriplanarNMn_ba7e211dd8095589a2939b5b239ca8e0.WorldSpaceTangent = IN.WorldSpaceTangent;
|
|
_TriplanarNMn_ba7e211dd8095589a2939b5b239ca8e0.WorldSpaceBiTangent = IN.WorldSpaceBiTangent;
|
|
_TriplanarNMn_ba7e211dd8095589a2939b5b239ca8e0.AbsoluteWorldSpacePosition = IN.AbsoluteWorldSpacePosition;
|
|
float4 _TriplanarNMn_ba7e211dd8095589a2939b5b239ca8e0_XYZ_1_Vector4;
|
|
float4 _TriplanarNMn_ba7e211dd8095589a2939b5b239ca8e0_XZ_2_Vector4;
|
|
float4 _TriplanarNMn_ba7e211dd8095589a2939b5b239ca8e0_YZ_3_Vector4;
|
|
float4 _TriplanarNMn_ba7e211dd8095589a2939b5b239ca8e0_XY_4_Vector4;
|
|
SG_TriplanarNMn_059da9746584140498cd018db3c76047_float(_Property_779695727390348d8b8a7f7ae2245af0_Out_0_Texture2D, (_Divide_1fe314f1ca9dd78fbf366bbeb40e4ccf_Out_2_Vector4).x, _Property_ee792eccbb538a878b19be5db264531e_Out_0_Float, UnityBuildSamplerStateStruct(SamplerState_Linear_Repeat_Aniso8), _TriplanarNMn_ba7e211dd8095589a2939b5b239ca8e0, _TriplanarNMn_ba7e211dd8095589a2939b5b239ca8e0_XYZ_1_Vector4, _TriplanarNMn_ba7e211dd8095589a2939b5b239ca8e0_XZ_2_Vector4, _TriplanarNMn_ba7e211dd8095589a2939b5b239ca8e0_YZ_3_Vector4, _TriplanarNMn_ba7e211dd8095589a2939b5b239ca8e0_XY_4_Vector4);
|
|
float _Property_5aba050988182f8aad3ec6b2c7e57899_Out_0_Float = _CoverNormalBlendHardness;
|
|
float3 _NormalStrength_dac4b0abfa8a1f82b7103b18f6e6e1b7_Out_2_Vector3;
|
|
Unity_NormalStrength_float((_TriplanarNMn_ba7e211dd8095589a2939b5b239ca8e0_XYZ_1_Vector4.xyz), _Property_5aba050988182f8aad3ec6b2c7e57899_Out_0_Float, _NormalStrength_dac4b0abfa8a1f82b7103b18f6e6e1b7_Out_2_Vector3);
|
|
float3 _NormalBlend_4058aded292b7389ade16c695a6cae6c_Out_2_Vector3;
|
|
Unity_NormalBlend_float(_NormalStrength_401cd5af500bd68dbc9bca19d548d0db_Out_2_Vector3, _NormalStrength_dac4b0abfa8a1f82b7103b18f6e6e1b7_Out_2_Vector3, _NormalBlend_4058aded292b7389ade16c695a6cae6c_Out_2_Vector3);
|
|
float3 _Multiply_0e22f9c6ff55a188b2533f1889a53038_Out_2_Vector3;
|
|
Unity_Multiply_float3_float3(_Property_9180f8dd535ba18499edac37aef4d231_Out_0_Vector3, IN.WorldSpaceNormal, _Multiply_0e22f9c6ff55a188b2533f1889a53038_Out_2_Vector3);
|
|
float _Split_89708601b575b58c852cd55e4fb248d1_R_1_Float = _Multiply_0e22f9c6ff55a188b2533f1889a53038_Out_2_Vector3[0];
|
|
float _Split_89708601b575b58c852cd55e4fb248d1_G_2_Float = _Multiply_0e22f9c6ff55a188b2533f1889a53038_Out_2_Vector3[1];
|
|
float _Split_89708601b575b58c852cd55e4fb248d1_B_3_Float = _Multiply_0e22f9c6ff55a188b2533f1889a53038_Out_2_Vector3[2];
|
|
float _Split_89708601b575b58c852cd55e4fb248d1_A_4_Float = 0;
|
|
float _Add_bfe29b97a9ce3b80aa4cd689be8c4a97_Out_2_Float;
|
|
Unity_Add_float(_Split_89708601b575b58c852cd55e4fb248d1_R_1_Float, _Split_89708601b575b58c852cd55e4fb248d1_G_2_Float, _Add_bfe29b97a9ce3b80aa4cd689be8c4a97_Out_2_Float);
|
|
float _Add_f3152b42a227088aa1439fc1fe8451cc_Out_2_Float;
|
|
Unity_Add_float(_Add_bfe29b97a9ce3b80aa4cd689be8c4a97_Out_2_Float, _Split_89708601b575b58c852cd55e4fb248d1_B_3_Float, _Add_f3152b42a227088aa1439fc1fe8451cc_Out_2_Float);
|
|
float _Property_deabceefa3e3438a8ad71fa67fc5b070_Out_0_Float = _Cover_Amount;
|
|
float _Property_2fba2d762d74b8828ff566c10bc48e86_Out_0_Float = _Cover_Amount_Grow_Speed;
|
|
float _Subtract_1f990262a41ce88f96a47df66dcb4971_Out_2_Float;
|
|
Unity_Subtract_float(float(4), _Property_2fba2d762d74b8828ff566c10bc48e86_Out_0_Float, _Subtract_1f990262a41ce88f96a47df66dcb4971_Out_2_Float);
|
|
float _Divide_a89e05be4802ac80886ad6bdeadc4949_Out_2_Float;
|
|
Unity_Divide_float(_Property_deabceefa3e3438a8ad71fa67fc5b070_Out_0_Float, _Subtract_1f990262a41ce88f96a47df66dcb4971_Out_2_Float, _Divide_a89e05be4802ac80886ad6bdeadc4949_Out_2_Float);
|
|
float _Absolute_2b58f48ab94a3087a726a2b03c51e2c6_Out_1_Float;
|
|
Unity_Absolute_float(_Divide_a89e05be4802ac80886ad6bdeadc4949_Out_2_Float, _Absolute_2b58f48ab94a3087a726a2b03c51e2c6_Out_1_Float);
|
|
float _Power_6695d49b8b82468ea686b66e6749260b_Out_2_Float;
|
|
Unity_Power_float(_Absolute_2b58f48ab94a3087a726a2b03c51e2c6_Out_1_Float, _Subtract_1f990262a41ce88f96a47df66dcb4971_Out_2_Float, _Power_6695d49b8b82468ea686b66e6749260b_Out_2_Float);
|
|
float _Clamp_94f0310fee13798bad4e26e2381a94d4_Out_3_Float;
|
|
Unity_Clamp_float(_Power_6695d49b8b82468ea686b66e6749260b_Out_2_Float, float(0), float(2), _Clamp_94f0310fee13798bad4e26e2381a94d4_Out_3_Float);
|
|
float _Multiply_999692515a117385ade114d924fa589a_Out_2_Float;
|
|
Unity_Multiply_float_float(_Add_f3152b42a227088aa1439fc1fe8451cc_Out_2_Float, _Clamp_94f0310fee13798bad4e26e2381a94d4_Out_3_Float, _Multiply_999692515a117385ade114d924fa589a_Out_2_Float);
|
|
float _Saturate_f811eeeeb3229d83917aa8be2c36831e_Out_1_Float;
|
|
Unity_Saturate_float(_Multiply_999692515a117385ade114d924fa589a_Out_2_Float, _Saturate_f811eeeeb3229d83917aa8be2c36831e_Out_1_Float);
|
|
float _Clamp_4c470807610adb8c8488f125c0af7bb5_Out_3_Float;
|
|
Unity_Clamp_float(_Add_f3152b42a227088aa1439fc1fe8451cc_Out_2_Float, float(0), float(0.9999), _Clamp_4c470807610adb8c8488f125c0af7bb5_Out_3_Float);
|
|
float _Property_765e3d021aec6d8f9f8b3174d5a06980_Out_0_Float = _Cover_Max_Angle;
|
|
float _Divide_9d9fc267a9ebcf84b378fdd4c66ff34d_Out_2_Float;
|
|
Unity_Divide_float(_Property_765e3d021aec6d8f9f8b3174d5a06980_Out_0_Float, float(45), _Divide_9d9fc267a9ebcf84b378fdd4c66ff34d_Out_2_Float);
|
|
float _OneMinus_f074fba0be46e688aa75f5377832251a_Out_1_Float;
|
|
Unity_OneMinus_float(_Divide_9d9fc267a9ebcf84b378fdd4c66ff34d_Out_2_Float, _OneMinus_f074fba0be46e688aa75f5377832251a_Out_1_Float);
|
|
float _Subtract_0b0cd6145e351c87a68366348828154d_Out_2_Float;
|
|
Unity_Subtract_float(_Clamp_4c470807610adb8c8488f125c0af7bb5_Out_3_Float, _OneMinus_f074fba0be46e688aa75f5377832251a_Out_1_Float, _Subtract_0b0cd6145e351c87a68366348828154d_Out_2_Float);
|
|
float _Clamp_30607c0c4e04e5879d4061a1f7688421_Out_3_Float;
|
|
Unity_Clamp_float(_Subtract_0b0cd6145e351c87a68366348828154d_Out_2_Float, float(0), float(2), _Clamp_30607c0c4e04e5879d4061a1f7688421_Out_3_Float);
|
|
float _Divide_cfe09f3bd2005485a3c2229367309962_Out_2_Float;
|
|
Unity_Divide_float(float(1), _Divide_9d9fc267a9ebcf84b378fdd4c66ff34d_Out_2_Float, _Divide_cfe09f3bd2005485a3c2229367309962_Out_2_Float);
|
|
float _Multiply_022be2eb9027988b9d5d4c1392749347_Out_2_Float;
|
|
Unity_Multiply_float_float(_Clamp_30607c0c4e04e5879d4061a1f7688421_Out_3_Float, _Divide_cfe09f3bd2005485a3c2229367309962_Out_2_Float, _Multiply_022be2eb9027988b9d5d4c1392749347_Out_2_Float);
|
|
float _Absolute_2fed84623df90f8ba200de68955721fd_Out_1_Float;
|
|
Unity_Absolute_float(_Multiply_022be2eb9027988b9d5d4c1392749347_Out_2_Float, _Absolute_2fed84623df90f8ba200de68955721fd_Out_1_Float);
|
|
float _Property_b79c921e30793a8e84330b3341539232_Out_0_Float = _CoverHardness;
|
|
float _Power_b9ddee06dfd0b880880990743bc10612_Out_2_Float;
|
|
Unity_Power_float(_Absolute_2fed84623df90f8ba200de68955721fd_Out_1_Float, _Property_b79c921e30793a8e84330b3341539232_Out_0_Float, _Power_b9ddee06dfd0b880880990743bc10612_Out_2_Float);
|
|
float _Property_c82936191f294c89b76f2d1809168f87_Out_0_Float = _Cover_Min_Height;
|
|
float _OneMinus_f0918ccb4f747b8e83e39d82dc3b5ca9_Out_1_Float;
|
|
Unity_OneMinus_float(_Property_c82936191f294c89b76f2d1809168f87_Out_0_Float, _OneMinus_f0918ccb4f747b8e83e39d82dc3b5ca9_Out_1_Float);
|
|
float _Split_0e80ce6f80cff18f87a043d1e3eecd08_R_1_Float = IN.AbsoluteWorldSpacePosition[0];
|
|
float _Split_0e80ce6f80cff18f87a043d1e3eecd08_G_2_Float = IN.AbsoluteWorldSpacePosition[1];
|
|
float _Split_0e80ce6f80cff18f87a043d1e3eecd08_B_3_Float = IN.AbsoluteWorldSpacePosition[2];
|
|
float _Split_0e80ce6f80cff18f87a043d1e3eecd08_A_4_Float = 0;
|
|
float _Add_60b3bb4cdad6e88b8c097c5b08daa7d0_Out_2_Float;
|
|
Unity_Add_float(_OneMinus_f0918ccb4f747b8e83e39d82dc3b5ca9_Out_1_Float, _Split_0e80ce6f80cff18f87a043d1e3eecd08_G_2_Float, _Add_60b3bb4cdad6e88b8c097c5b08daa7d0_Out_2_Float);
|
|
float _Add_1898d6f46901df809c68b5241b2e9c37_Out_2_Float;
|
|
Unity_Add_float(_Add_60b3bb4cdad6e88b8c097c5b08daa7d0_Out_2_Float, float(1), _Add_1898d6f46901df809c68b5241b2e9c37_Out_2_Float);
|
|
float _Clamp_25d6140fa3ff3a8f956f99005adace2e_Out_3_Float;
|
|
Unity_Clamp_float(_Add_1898d6f46901df809c68b5241b2e9c37_Out_2_Float, float(0), float(1), _Clamp_25d6140fa3ff3a8f956f99005adace2e_Out_3_Float);
|
|
float _Property_6094a52a4f01fd8da5ea847b69b6941c_Out_0_Float = _Cover_Min_Height_Blending;
|
|
float _Add_dc69668fc7f1a586a754713499f71d99_Out_2_Float;
|
|
Unity_Add_float(_Add_60b3bb4cdad6e88b8c097c5b08daa7d0_Out_2_Float, _Property_6094a52a4f01fd8da5ea847b69b6941c_Out_0_Float, _Add_dc69668fc7f1a586a754713499f71d99_Out_2_Float);
|
|
float _Divide_63e32406c8773d83bbf2e244faf8328f_Out_2_Float;
|
|
Unity_Divide_float(_Add_dc69668fc7f1a586a754713499f71d99_Out_2_Float, _Add_60b3bb4cdad6e88b8c097c5b08daa7d0_Out_2_Float, _Divide_63e32406c8773d83bbf2e244faf8328f_Out_2_Float);
|
|
float _OneMinus_ec22d21ddfa84288b6f750e9fdb107b9_Out_1_Float;
|
|
Unity_OneMinus_float(_Divide_63e32406c8773d83bbf2e244faf8328f_Out_2_Float, _OneMinus_ec22d21ddfa84288b6f750e9fdb107b9_Out_1_Float);
|
|
float _Add_a1206af8cbfbbe8081046db1247aba04_Out_2_Float;
|
|
Unity_Add_float(_OneMinus_ec22d21ddfa84288b6f750e9fdb107b9_Out_1_Float, float(-0.5), _Add_a1206af8cbfbbe8081046db1247aba04_Out_2_Float);
|
|
float _Clamp_640b5884b29f188987c157ad5e6e6959_Out_3_Float;
|
|
Unity_Clamp_float(_Add_a1206af8cbfbbe8081046db1247aba04_Out_2_Float, float(0), float(1), _Clamp_640b5884b29f188987c157ad5e6e6959_Out_3_Float);
|
|
float _Add_cfdb6daf617665838bb05910fa9505df_Out_2_Float;
|
|
Unity_Add_float(_Clamp_25d6140fa3ff3a8f956f99005adace2e_Out_3_Float, _Clamp_640b5884b29f188987c157ad5e6e6959_Out_3_Float, _Add_cfdb6daf617665838bb05910fa9505df_Out_2_Float);
|
|
float _Clamp_552ef7e5cf91408a982297885971db7e_Out_3_Float;
|
|
Unity_Clamp_float(_Add_cfdb6daf617665838bb05910fa9505df_Out_2_Float, float(0), float(1), _Clamp_552ef7e5cf91408a982297885971db7e_Out_3_Float);
|
|
float _Multiply_8f8db9c494f4fd869809fc45531df628_Out_2_Float;
|
|
Unity_Multiply_float_float(_Power_b9ddee06dfd0b880880990743bc10612_Out_2_Float, _Clamp_552ef7e5cf91408a982297885971db7e_Out_3_Float, _Multiply_8f8db9c494f4fd869809fc45531df628_Out_2_Float);
|
|
float _Multiply_60075aa07d29d285b3c1ee531e5b5cb3_Out_2_Float;
|
|
Unity_Multiply_float_float(_Saturate_f811eeeeb3229d83917aa8be2c36831e_Out_1_Float, _Multiply_8f8db9c494f4fd869809fc45531df628_Out_2_Float, _Multiply_60075aa07d29d285b3c1ee531e5b5cb3_Out_2_Float);
|
|
float3 _Lerp_453c8bc667315a8fa37a93affb877753_Out_3_Vector3;
|
|
Unity_Lerp_float3(_NormalBlend_4242e1b4a785378aa59dd49e9d993ffc_Out_2_Vector3, _NormalBlend_4058aded292b7389ade16c695a6cae6c_Out_2_Vector3, (_Multiply_60075aa07d29d285b3c1ee531e5b5cb3_Out_2_Float.xxx), _Lerp_453c8bc667315a8fa37a93affb877753_Out_3_Vector3);
|
|
float3 _Transform_a87113b0be9dfa8eaf6932ed645aa845_Out_1_Vector3;
|
|
{
|
|
float3x3 tangentTransform = float3x3(IN.WorldSpaceTangent, IN.WorldSpaceBiTangent, IN.WorldSpaceNormal);
|
|
_Transform_a87113b0be9dfa8eaf6932ed645aa845_Out_1_Vector3 = TransformTangentToWorldDir(_Lerp_453c8bc667315a8fa37a93affb877753_Out_3_Vector3.xyz, tangentTransform, false).xyz;
|
|
}
|
|
float3 _Multiply_f6e009bd5c0fd18c99ac72f233476fe5_Out_2_Vector3;
|
|
Unity_Multiply_float3_float3(_Property_9180f8dd535ba18499edac37aef4d231_Out_0_Vector3, _Transform_a87113b0be9dfa8eaf6932ed645aa845_Out_1_Vector3, _Multiply_f6e009bd5c0fd18c99ac72f233476fe5_Out_2_Vector3);
|
|
float _Split_96f0a5b75c0e0b889dbbccd04bc2aaaa_R_1_Float = _Multiply_f6e009bd5c0fd18c99ac72f233476fe5_Out_2_Vector3[0];
|
|
float _Split_96f0a5b75c0e0b889dbbccd04bc2aaaa_G_2_Float = _Multiply_f6e009bd5c0fd18c99ac72f233476fe5_Out_2_Vector3[1];
|
|
float _Split_96f0a5b75c0e0b889dbbccd04bc2aaaa_B_3_Float = _Multiply_f6e009bd5c0fd18c99ac72f233476fe5_Out_2_Vector3[2];
|
|
float _Split_96f0a5b75c0e0b889dbbccd04bc2aaaa_A_4_Float = 0;
|
|
float _Add_07028d5174d9f88594da40d46502bc13_Out_2_Float;
|
|
Unity_Add_float(_Split_96f0a5b75c0e0b889dbbccd04bc2aaaa_R_1_Float, _Split_96f0a5b75c0e0b889dbbccd04bc2aaaa_G_2_Float, _Add_07028d5174d9f88594da40d46502bc13_Out_2_Float);
|
|
float _Add_93af6c0f8ee9a3898ca51358a213b69f_Out_2_Float;
|
|
Unity_Add_float(_Add_07028d5174d9f88594da40d46502bc13_Out_2_Float, _Split_96f0a5b75c0e0b889dbbccd04bc2aaaa_B_3_Float, _Add_93af6c0f8ee9a3898ca51358a213b69f_Out_2_Float);
|
|
float _Multiply_77421b936cb9d68299ef6791b83fa867_Out_2_Float;
|
|
Unity_Multiply_float_float(_Add_93af6c0f8ee9a3898ca51358a213b69f_Out_2_Float, _Clamp_94f0310fee13798bad4e26e2381a94d4_Out_3_Float, _Multiply_77421b936cb9d68299ef6791b83fa867_Out_2_Float);
|
|
float _Multiply_ac6769fbe7188685a7537e5ac2c6bfa9_Out_2_Float;
|
|
Unity_Multiply_float_float(_Clamp_94f0310fee13798bad4e26e2381a94d4_Out_3_Float, _Property_b79c921e30793a8e84330b3341539232_Out_0_Float, _Multiply_ac6769fbe7188685a7537e5ac2c6bfa9_Out_2_Float);
|
|
float _Multiply_37a341e0d9783683aa8d5b7001acced1_Out_2_Float;
|
|
Unity_Multiply_float_float(_Multiply_ac6769fbe7188685a7537e5ac2c6bfa9_Out_2_Float, _Multiply_8f8db9c494f4fd869809fc45531df628_Out_2_Float, _Multiply_37a341e0d9783683aa8d5b7001acced1_Out_2_Float);
|
|
float _Multiply_02fa8aa66970b281b4a325dc68f407b9_Out_2_Float;
|
|
Unity_Multiply_float_float(_Multiply_77421b936cb9d68299ef6791b83fa867_Out_2_Float, _Multiply_37a341e0d9783683aa8d5b7001acced1_Out_2_Float, _Multiply_02fa8aa66970b281b4a325dc68f407b9_Out_2_Float);
|
|
UnityTexture2D _Property_fd2df7ee33755280948b4c47585d4323_Out_0_Texture2D = UnityBuildTexture2DStructNoScale(_CoverMaskMap);
|
|
Bindings_TriplanarNM_bc609ed95f52591469ab35dbfe0efcea_float _TriplanarNM_e307cfdc6531d2838aa3dfa51fc3913f;
|
|
_TriplanarNM_e307cfdc6531d2838aa3dfa51fc3913f.WorldSpaceNormal = IN.WorldSpaceNormal;
|
|
_TriplanarNM_e307cfdc6531d2838aa3dfa51fc3913f.AbsoluteWorldSpacePosition = IN.AbsoluteWorldSpacePosition;
|
|
float4 _TriplanarNM_e307cfdc6531d2838aa3dfa51fc3913f_XYZ_1_Vector4;
|
|
float4 _TriplanarNM_e307cfdc6531d2838aa3dfa51fc3913f_XZ_2_Vector4;
|
|
float4 _TriplanarNM_e307cfdc6531d2838aa3dfa51fc3913f_YZ_3_Vector4;
|
|
float4 _TriplanarNM_e307cfdc6531d2838aa3dfa51fc3913f_XY_4_Vector4;
|
|
SG_TriplanarNM_bc609ed95f52591469ab35dbfe0efcea_float(_Property_fd2df7ee33755280948b4c47585d4323_Out_0_Texture2D, (_Divide_1fe314f1ca9dd78fbf366bbeb40e4ccf_Out_2_Vector4).x, _Property_ee792eccbb538a878b19be5db264531e_Out_0_Float, UnityBuildSamplerStateStruct(SamplerState_Linear_Repeat_Aniso8), _TriplanarNM_e307cfdc6531d2838aa3dfa51fc3913f, _TriplanarNM_e307cfdc6531d2838aa3dfa51fc3913f_XYZ_1_Vector4, _TriplanarNM_e307cfdc6531d2838aa3dfa51fc3913f_XZ_2_Vector4, _TriplanarNM_e307cfdc6531d2838aa3dfa51fc3913f_YZ_3_Vector4, _TriplanarNM_e307cfdc6531d2838aa3dfa51fc3913f_XY_4_Vector4);
|
|
float _Split_fe834aed1172f284a73d2d6810bdb696_R_1_Float = _TriplanarNM_e307cfdc6531d2838aa3dfa51fc3913f_XYZ_1_Vector4[0];
|
|
float _Split_fe834aed1172f284a73d2d6810bdb696_G_2_Float = _TriplanarNM_e307cfdc6531d2838aa3dfa51fc3913f_XYZ_1_Vector4[1];
|
|
float _Split_fe834aed1172f284a73d2d6810bdb696_B_3_Float = _TriplanarNM_e307cfdc6531d2838aa3dfa51fc3913f_XYZ_1_Vector4[2];
|
|
float _Split_fe834aed1172f284a73d2d6810bdb696_A_4_Float = _TriplanarNM_e307cfdc6531d2838aa3dfa51fc3913f_XYZ_1_Vector4[3];
|
|
float _Property_b5f7a30c2ea202858ea263fd2a5a46c6_Out_0_Float = _CoverHeightMapMin;
|
|
float _Property_f86678f1d28c0483ba1ddccf49ee52f7_Out_0_Float = _CoverHeightMapMax;
|
|
float2 _Vector2_b5c01a0d88900d87a8a819b340151fb6_Out_0_Vector2 = float2(_Property_b5f7a30c2ea202858ea263fd2a5a46c6_Out_0_Float, _Property_f86678f1d28c0483ba1ddccf49ee52f7_Out_0_Float);
|
|
float _Property_82b4f7f3bf3b4382bd69876479a9e350_Out_0_Float = _CoverHeightMapOffset;
|
|
float2 _Add_6020f54fd1e6798e8e76bfdcad62759a_Out_2_Vector2;
|
|
Unity_Add_float2(_Vector2_b5c01a0d88900d87a8a819b340151fb6_Out_0_Vector2, (_Property_82b4f7f3bf3b4382bd69876479a9e350_Out_0_Float.xx), _Add_6020f54fd1e6798e8e76bfdcad62759a_Out_2_Vector2);
|
|
float _Remap_65ceff40294d1e8aae6051445b9fdbc8_Out_3_Float;
|
|
Unity_Remap_float(_Split_fe834aed1172f284a73d2d6810bdb696_B_3_Float, float2 (0, 1), _Add_6020f54fd1e6798e8e76bfdcad62759a_Out_2_Vector2, _Remap_65ceff40294d1e8aae6051445b9fdbc8_Out_3_Float);
|
|
float _Multiply_bb0edd30580dba8b89213d9c5b1ef857_Out_2_Float;
|
|
Unity_Multiply_float_float(_Multiply_02fa8aa66970b281b4a325dc68f407b9_Out_2_Float, _Remap_65ceff40294d1e8aae6051445b9fdbc8_Out_3_Float, _Multiply_bb0edd30580dba8b89213d9c5b1ef857_Out_2_Float);
|
|
float _Multiply_484dd7b77d58aa88bf99c82cfe77c774_Out_2_Float;
|
|
Unity_Multiply_float_float(_Split_2ada595651635e8d97bf4b82f717fcc6_G_2_Float, _Multiply_bb0edd30580dba8b89213d9c5b1ef857_Out_2_Float, _Multiply_484dd7b77d58aa88bf99c82cfe77c774_Out_2_Float);
|
|
float _Saturate_d39fa9bab8cc8a8fa35db28d4dbc74ab_Out_1_Float;
|
|
Unity_Saturate_float(_Multiply_484dd7b77d58aa88bf99c82cfe77c774_Out_2_Float, _Saturate_d39fa9bab8cc8a8fa35db28d4dbc74ab_Out_1_Float);
|
|
float _Multiply_6957741a4923cc8db84ac72df2e194a8_Out_2_Float;
|
|
Unity_Multiply_float_float(_Clamp_07a501c22c6e188199bed73412ac8926_Out_3_Float, _Saturate_d39fa9bab8cc8a8fa35db28d4dbc74ab_Out_1_Float, _Multiply_6957741a4923cc8db84ac72df2e194a8_Out_2_Float);
|
|
float _Branch_3ccf365d359214809d30b6430d863e3f_Out_3_Float;
|
|
Unity_Branch_float(_Property_cb0b6597aee47880b32e852aaa0e4a71_Out_0_Boolean, _Multiply_6957741a4923cc8db84ac72df2e194a8_Out_2_Float, _Clamp_07a501c22c6e188199bed73412ac8926_Out_3_Float, _Branch_3ccf365d359214809d30b6430d863e3f_Out_3_Float);
|
|
float3 _Lerp_ee1b6587de2afe82942e8476d303d598_Out_3_Vector3;
|
|
Unity_Lerp_float3(_BlendOverlayBaseColor_369c0b6a02e62b809dc5c6ac1efddde2_OutVector4_1_Vector3, _BlendOverlayBaseColor_ec1f397271cc818abdb95188914e6b4d_OutVector4_1_Vector3, (_Branch_3ccf365d359214809d30b6430d863e3f_Out_3_Float.xxx), _Lerp_ee1b6587de2afe82942e8476d303d598_Out_3_Vector3);
|
|
float4 _Property_c500db71e51fef8daff29f346c122e57_Out_0_Vector4 = _WetColor;
|
|
float3 _Multiply_89461014b078f787a0724725c54fb934_Out_2_Vector3;
|
|
Unity_Multiply_float3_float3((_Property_c500db71e51fef8daff29f346c122e57_Out_0_Vector4.xyz), _Lerp_ee1b6587de2afe82942e8476d303d598_Out_3_Vector3, _Multiply_89461014b078f787a0724725c54fb934_Out_2_Vector3);
|
|
float _OneMinus_e16dfb812ec64b8891c541171687142f_Out_1_Float;
|
|
Unity_OneMinus_float(_Split_2ada595651635e8d97bf4b82f717fcc6_R_1_Float, _OneMinus_e16dfb812ec64b8891c541171687142f_Out_1_Float);
|
|
float3 _Lerp_43bc7a9493df5a829abf080ee4ad3298_Out_3_Vector3;
|
|
Unity_Lerp_float3(_Lerp_ee1b6587de2afe82942e8476d303d598_Out_3_Vector3, _Multiply_89461014b078f787a0724725c54fb934_Out_2_Vector3, (_OneMinus_e16dfb812ec64b8891c541171687142f_Out_1_Float.xxx), _Lerp_43bc7a9493df5a829abf080ee4ad3298_Out_3_Vector3);
|
|
UnityTexture2D _Property_8e909eb873a4cd8e9af98a90a84fdde8_Out_0_Texture2D = UnityBuildTexture2DStructNoScale(_BaseMaskMap);
|
|
Bindings_TriplanarNM_bc609ed95f52591469ab35dbfe0efcea_float _TriplanarNM_52e6c67b7de4708f80a463a880607c97;
|
|
_TriplanarNM_52e6c67b7de4708f80a463a880607c97.WorldSpaceNormal = IN.WorldSpaceNormal;
|
|
_TriplanarNM_52e6c67b7de4708f80a463a880607c97.AbsoluteWorldSpacePosition = IN.AbsoluteWorldSpacePosition;
|
|
float4 _TriplanarNM_52e6c67b7de4708f80a463a880607c97_XYZ_1_Vector4;
|
|
float4 _TriplanarNM_52e6c67b7de4708f80a463a880607c97_XZ_2_Vector4;
|
|
float4 _TriplanarNM_52e6c67b7de4708f80a463a880607c97_YZ_3_Vector4;
|
|
float4 _TriplanarNM_52e6c67b7de4708f80a463a880607c97_XY_4_Vector4;
|
|
SG_TriplanarNM_bc609ed95f52591469ab35dbfe0efcea_float(_Property_8e909eb873a4cd8e9af98a90a84fdde8_Out_0_Texture2D, (_Divide_6a90cebe78e620828de587523daaa7e6_Out_2_Vector4).x, _Property_3539de8c698c2981bb3c088d4ec52201_Out_0_Float, UnityBuildSamplerStateStruct(SamplerState_Linear_Repeat_Aniso8), _TriplanarNM_52e6c67b7de4708f80a463a880607c97, _TriplanarNM_52e6c67b7de4708f80a463a880607c97_XYZ_1_Vector4, _TriplanarNM_52e6c67b7de4708f80a463a880607c97_XZ_2_Vector4, _TriplanarNM_52e6c67b7de4708f80a463a880607c97_YZ_3_Vector4, _TriplanarNM_52e6c67b7de4708f80a463a880607c97_XY_4_Vector4);
|
|
float _Split_79d9d761d63eaa8c97fb3cb7fae0c380_R_1_Float = _TriplanarNM_52e6c67b7de4708f80a463a880607c97_XYZ_1_Vector4[0];
|
|
float _Split_79d9d761d63eaa8c97fb3cb7fae0c380_G_2_Float = _TriplanarNM_52e6c67b7de4708f80a463a880607c97_XYZ_1_Vector4[1];
|
|
float _Split_79d9d761d63eaa8c97fb3cb7fae0c380_B_3_Float = _TriplanarNM_52e6c67b7de4708f80a463a880607c97_XYZ_1_Vector4[2];
|
|
float _Split_79d9d761d63eaa8c97fb3cb7fae0c380_A_4_Float = _TriplanarNM_52e6c67b7de4708f80a463a880607c97_XYZ_1_Vector4[3];
|
|
float _Property_b97916566d1fc587b95e8ec7fe8bd775_Out_0_Float = _BaseMetallic;
|
|
float _Multiply_d0c8d83444dbe38588583551936c7394_Out_2_Float;
|
|
Unity_Multiply_float_float(_Split_79d9d761d63eaa8c97fb3cb7fae0c380_R_1_Float, _Property_b97916566d1fc587b95e8ec7fe8bd775_Out_0_Float, _Multiply_d0c8d83444dbe38588583551936c7394_Out_2_Float);
|
|
float _Property_b187bbc548f3378caa8c964ca81707ca_Out_0_Float = _BaseAORemapMin;
|
|
float _Property_f06b327a4a8a7881a968eb399edf1d5c_Out_0_Float = _BaseAORemapMax;
|
|
float2 _Vector2_e267d722f88ada8da2d7edf8f7c0261d_Out_0_Vector2 = float2(_Property_b187bbc548f3378caa8c964ca81707ca_Out_0_Float, _Property_f06b327a4a8a7881a968eb399edf1d5c_Out_0_Float);
|
|
float _Remap_ad3c26564c54aa8cbb2f81aa114b3b78_Out_3_Float;
|
|
Unity_Remap_float(_Split_79d9d761d63eaa8c97fb3cb7fae0c380_G_2_Float, float2 (0, 1), _Vector2_e267d722f88ada8da2d7edf8f7c0261d_Out_0_Vector2, _Remap_ad3c26564c54aa8cbb2f81aa114b3b78_Out_3_Float);
|
|
float _Property_9a46e81c228dd0858cfdfc248fcb5efd_Out_0_Float = _BaseSmoothnessRemapMin;
|
|
float _Property_4bb3b70a3720ae8ea49e0f195b665d1f_Out_0_Float = _BaseSmoothnessRemapMax;
|
|
float2 _Vector2_6cef82af5d99208da4f2447a8ae60b4b_Out_0_Vector2 = float2(_Property_9a46e81c228dd0858cfdfc248fcb5efd_Out_0_Float, _Property_4bb3b70a3720ae8ea49e0f195b665d1f_Out_0_Float);
|
|
float _Remap_e30adbbf5d116285964ef079df15b895_Out_3_Float;
|
|
Unity_Remap_float(_Split_79d9d761d63eaa8c97fb3cb7fae0c380_A_4_Float, float2 (0, 1), _Vector2_6cef82af5d99208da4f2447a8ae60b4b_Out_0_Vector2, _Remap_e30adbbf5d116285964ef079df15b895_Out_3_Float);
|
|
float _Multiply_794172f65d2acd8981bc0e2ecc71376e_Out_2_Float;
|
|
Unity_Multiply_float_float(_SampleTexture2D_4bd08411faa60c828847f2247f06a809_B_6_Float, 2, _Multiply_794172f65d2acd8981bc0e2ecc71376e_Out_2_Float);
|
|
float _Add_dedefe53d91ea08c81d7a6d9071b0263_Out_2_Float;
|
|
Unity_Add_float(_Multiply_794172f65d2acd8981bc0e2ecc71376e_Out_2_Float, float(-1), _Add_dedefe53d91ea08c81d7a6d9071b0263_Out_2_Float);
|
|
float _Property_039bed9aac95ec8fa510fea3c4904280_Out_0_Float = _DetailSmoothnessScale;
|
|
float _Multiply_eb0a55c9be8cee86b9847c24f0e5be60_Out_2_Float;
|
|
Unity_Multiply_float_float(_Add_dedefe53d91ea08c81d7a6d9071b0263_Out_2_Float, _Property_039bed9aac95ec8fa510fea3c4904280_Out_0_Float, _Multiply_eb0a55c9be8cee86b9847c24f0e5be60_Out_2_Float);
|
|
float _Saturate_ca849f42c1cc238cb8fb1eb04fbfb9dd_Out_1_Float;
|
|
Unity_Saturate_float(_Multiply_eb0a55c9be8cee86b9847c24f0e5be60_Out_2_Float, _Saturate_ca849f42c1cc238cb8fb1eb04fbfb9dd_Out_1_Float);
|
|
float _Absolute_bc7994d4f833e382b37b5718ee583259_Out_1_Float;
|
|
Unity_Absolute_float(_Saturate_ca849f42c1cc238cb8fb1eb04fbfb9dd_Out_1_Float, _Absolute_bc7994d4f833e382b37b5718ee583259_Out_1_Float);
|
|
Bindings_BlendOverlayDetailSmoothness_06e12138dc89c0040b45a57abe520a1a_float _BlendOverlayDetailSmoothness_5a03404db5a34885a089f1aee363667f;
|
|
float _BlendOverlayDetailSmoothness_5a03404db5a34885a089f1aee363667f_SmoothnessOverlay_1_Float;
|
|
SG_BlendOverlayDetailSmoothness_06e12138dc89c0040b45a57abe520a1a_float(_Remap_e30adbbf5d116285964ef079df15b895_Out_3_Float, _Add_dedefe53d91ea08c81d7a6d9071b0263_Out_2_Float, _Absolute_bc7994d4f833e382b37b5718ee583259_Out_1_Float, _BlendOverlayDetailSmoothness_5a03404db5a34885a089f1aee363667f, _BlendOverlayDetailSmoothness_5a03404db5a34885a089f1aee363667f_SmoothnessOverlay_1_Float);
|
|
float _Saturate_3d6c6d852202408cb9b11aac8a566c89_Out_1_Float;
|
|
Unity_Saturate_float(_BlendOverlayDetailSmoothness_5a03404db5a34885a089f1aee363667f_SmoothnessOverlay_1_Float, _Saturate_3d6c6d852202408cb9b11aac8a566c89_Out_1_Float);
|
|
float3 _Vector3_8ed406a0096de4818282676bf24b1a85_Out_0_Vector3 = float3(_Multiply_d0c8d83444dbe38588583551936c7394_Out_2_Float, _Remap_ad3c26564c54aa8cbb2f81aa114b3b78_Out_3_Float, _Saturate_3d6c6d852202408cb9b11aac8a566c89_Out_1_Float);
|
|
float _Split_2ec5937af5023a8295e3858d32b193d5_R_1_Float = _Vector3_8ed406a0096de4818282676bf24b1a85_Out_0_Vector3[0];
|
|
float _Split_2ec5937af5023a8295e3858d32b193d5_G_2_Float = _Vector3_8ed406a0096de4818282676bf24b1a85_Out_0_Vector3[1];
|
|
float _Split_2ec5937af5023a8295e3858d32b193d5_B_3_Float = _Vector3_8ed406a0096de4818282676bf24b1a85_Out_0_Vector3[2];
|
|
float _Split_2ec5937af5023a8295e3858d32b193d5_A_4_Float = 0;
|
|
UnityTexture2D _Property_0f50abb140882d848d9fc7be8e3468dc_Out_0_Texture2D = UnityBuildTexture2DStructNoScale(_ShapeAO);
|
|
float4 _SampleTexture2D_33392602b94694898ec8227a89f13cc9_RGBA_0_Vector4 = SAMPLE_TEXTURE2D(_Property_0f50abb140882d848d9fc7be8e3468dc_Out_0_Texture2D.tex, _Property_0f50abb140882d848d9fc7be8e3468dc_Out_0_Texture2D.samplerstate, _Property_0f50abb140882d848d9fc7be8e3468dc_Out_0_Texture2D.GetTransformedUV(IN.uv0.xy) );
|
|
float _SampleTexture2D_33392602b94694898ec8227a89f13cc9_R_4_Float = _SampleTexture2D_33392602b94694898ec8227a89f13cc9_RGBA_0_Vector4.r;
|
|
float _SampleTexture2D_33392602b94694898ec8227a89f13cc9_G_5_Float = _SampleTexture2D_33392602b94694898ec8227a89f13cc9_RGBA_0_Vector4.g;
|
|
float _SampleTexture2D_33392602b94694898ec8227a89f13cc9_B_6_Float = _SampleTexture2D_33392602b94694898ec8227a89f13cc9_RGBA_0_Vector4.b;
|
|
float _SampleTexture2D_33392602b94694898ec8227a89f13cc9_A_7_Float = _SampleTexture2D_33392602b94694898ec8227a89f13cc9_RGBA_0_Vector4.a;
|
|
float _Property_a51c4b6d05e6718d919aadcf26153350_Out_0_Float = _ShapeAORemapMin;
|
|
float _Property_973fbc42b7a69088b9fc2c502945f369_Out_0_Float = _ShapeAORemapMax;
|
|
float2 _Vector2_a73753c5a8c4fa828d2eb25d4fb8b399_Out_0_Vector2 = float2(_Property_a51c4b6d05e6718d919aadcf26153350_Out_0_Float, _Property_973fbc42b7a69088b9fc2c502945f369_Out_0_Float);
|
|
float _Remap_270e7e207f303487bc04348b1b54db69_Out_3_Float;
|
|
Unity_Remap_float(_SampleTexture2D_33392602b94694898ec8227a89f13cc9_G_5_Float, float2 (0, 1), _Vector2_a73753c5a8c4fa828d2eb25d4fb8b399_Out_0_Vector2, _Remap_270e7e207f303487bc04348b1b54db69_Out_3_Float);
|
|
float _Minimum_307d1a8c4f5c6a87a1bbc658a5811679_Out_2_Float;
|
|
Unity_Minimum_float(_Split_2ec5937af5023a8295e3858d32b193d5_G_2_Float, _Remap_270e7e207f303487bc04348b1b54db69_Out_3_Float, _Minimum_307d1a8c4f5c6a87a1bbc658a5811679_Out_2_Float);
|
|
float3 _Vector3_fac10bf467f5ff82b4f071ba165bf458_Out_0_Vector3 = float3(_Split_2ec5937af5023a8295e3858d32b193d5_R_1_Float, _Minimum_307d1a8c4f5c6a87a1bbc658a5811679_Out_2_Float, _Split_2ec5937af5023a8295e3858d32b193d5_B_3_Float);
|
|
float _Property_fa6937565be49684915e6bb999529949_Out_0_Float = _CoverMetallic;
|
|
float _Multiply_d0ecb787fa289f8f9d3c2988d60f18d3_Out_2_Float;
|
|
Unity_Multiply_float_float(_Split_fe834aed1172f284a73d2d6810bdb696_R_1_Float, _Property_fa6937565be49684915e6bb999529949_Out_0_Float, _Multiply_d0ecb787fa289f8f9d3c2988d60f18d3_Out_2_Float);
|
|
float _Property_8f5ca0ba38d2a4858c1b4e44f6a375b4_Out_0_Float = _CoverAORemapMin;
|
|
float _Property_a15ef0fe46e1d88f9e20df6605bd1499_Out_0_Float = _CoverAORemapMax;
|
|
float2 _Vector2_969d809c2de99f89959cc4526a665db9_Out_0_Vector2 = float2(_Property_8f5ca0ba38d2a4858c1b4e44f6a375b4_Out_0_Float, _Property_a15ef0fe46e1d88f9e20df6605bd1499_Out_0_Float);
|
|
float _Remap_1b6065f44329038594e2d0cf001fa138_Out_3_Float;
|
|
Unity_Remap_float(_Split_fe834aed1172f284a73d2d6810bdb696_G_2_Float, float2 (0, 1), _Vector2_969d809c2de99f89959cc4526a665db9_Out_0_Vector2, _Remap_1b6065f44329038594e2d0cf001fa138_Out_3_Float);
|
|
float _Property_0fde68fd9824db8e9f5b4b0daff90270_Out_0_Float = _CoverSmoothnessRemapMin;
|
|
float _Property_abad1da00caf99869e0c9ca2926c76bd_Out_0_Float = _CoverSmoothnessRemapMax;
|
|
float2 _Vector2_1aa81c2ad7cc268caa834889569ce556_Out_0_Vector2 = float2(_Property_0fde68fd9824db8e9f5b4b0daff90270_Out_0_Float, _Property_abad1da00caf99869e0c9ca2926c76bd_Out_0_Float);
|
|
float _Remap_4948cd1fb38399888e9567ee2abb8acd_Out_3_Float;
|
|
Unity_Remap_float(_Split_fe834aed1172f284a73d2d6810bdb696_A_4_Float, float2 (0, 1), _Vector2_1aa81c2ad7cc268caa834889569ce556_Out_0_Vector2, _Remap_4948cd1fb38399888e9567ee2abb8acd_Out_3_Float);
|
|
float _Multiply_d3e207dba42f1984aacff3c1bf4eef0b_Out_2_Float;
|
|
Unity_Multiply_float_float(_SampleTexture2D_4bd08411faa60c828847f2247f06a809_B_6_Float, 2, _Multiply_d3e207dba42f1984aacff3c1bf4eef0b_Out_2_Float);
|
|
float _Add_0299d632f81fff8f969a0eed5f77397c_Out_2_Float;
|
|
Unity_Add_float(_Multiply_d3e207dba42f1984aacff3c1bf4eef0b_Out_2_Float, float(-1), _Add_0299d632f81fff8f969a0eed5f77397c_Out_2_Float);
|
|
float _Property_a2c7556e96b60b8e90cb5145ca6f9dde_Out_0_Float = _DetailCoverSmoothnessScale;
|
|
float _Multiply_d340fbee0985958dbb66555a73bd733c_Out_2_Float;
|
|
Unity_Multiply_float_float(_Add_0299d632f81fff8f969a0eed5f77397c_Out_2_Float, _Property_a2c7556e96b60b8e90cb5145ca6f9dde_Out_0_Float, _Multiply_d340fbee0985958dbb66555a73bd733c_Out_2_Float);
|
|
float _Saturate_2c0cc920be0ca88e937ec108b38f5fde_Out_1_Float;
|
|
Unity_Saturate_float(_Multiply_d340fbee0985958dbb66555a73bd733c_Out_2_Float, _Saturate_2c0cc920be0ca88e937ec108b38f5fde_Out_1_Float);
|
|
float _Absolute_3f81290e941e378283f7151c4a0731e2_Out_1_Float;
|
|
Unity_Absolute_float(_Saturate_2c0cc920be0ca88e937ec108b38f5fde_Out_1_Float, _Absolute_3f81290e941e378283f7151c4a0731e2_Out_1_Float);
|
|
Bindings_BlendOverlayDetailSmoothness_06e12138dc89c0040b45a57abe520a1a_float _BlendOverlayDetailSmoothness_e7a4fbe98378f084bd09f6e5d90e1cb8;
|
|
float _BlendOverlayDetailSmoothness_e7a4fbe98378f084bd09f6e5d90e1cb8_SmoothnessOverlay_1_Float;
|
|
SG_BlendOverlayDetailSmoothness_06e12138dc89c0040b45a57abe520a1a_float(_Remap_4948cd1fb38399888e9567ee2abb8acd_Out_3_Float, _Add_0299d632f81fff8f969a0eed5f77397c_Out_2_Float, _Absolute_3f81290e941e378283f7151c4a0731e2_Out_1_Float, _BlendOverlayDetailSmoothness_e7a4fbe98378f084bd09f6e5d90e1cb8, _BlendOverlayDetailSmoothness_e7a4fbe98378f084bd09f6e5d90e1cb8_SmoothnessOverlay_1_Float);
|
|
float _Saturate_9091ea9d9924c682ad6b94d3322ee822_Out_1_Float;
|
|
Unity_Saturate_float(_BlendOverlayDetailSmoothness_e7a4fbe98378f084bd09f6e5d90e1cb8_SmoothnessOverlay_1_Float, _Saturate_9091ea9d9924c682ad6b94d3322ee822_Out_1_Float);
|
|
float3 _Vector3_93bafe600474e7819ebc13e534b986bf_Out_0_Vector3 = float3(_Multiply_d0ecb787fa289f8f9d3c2988d60f18d3_Out_2_Float, _Remap_1b6065f44329038594e2d0cf001fa138_Out_3_Float, _Saturate_9091ea9d9924c682ad6b94d3322ee822_Out_1_Float);
|
|
float _Split_6ec9cc5e56f3f68ba37ff91557979c18_R_1_Float = _Vector3_93bafe600474e7819ebc13e534b986bf_Out_0_Vector3[0];
|
|
float _Split_6ec9cc5e56f3f68ba37ff91557979c18_G_2_Float = _Vector3_93bafe600474e7819ebc13e534b986bf_Out_0_Vector3[1];
|
|
float _Split_6ec9cc5e56f3f68ba37ff91557979c18_B_3_Float = _Vector3_93bafe600474e7819ebc13e534b986bf_Out_0_Vector3[2];
|
|
float _Split_6ec9cc5e56f3f68ba37ff91557979c18_A_4_Float = 0;
|
|
float _Property_ca9c61425ece6b8c909c06b1e2738f1a_Out_0_Float = _CoverShapeAORemapMin;
|
|
float _Property_b9be92f1612c908d80643f0e96015b33_Out_0_Float = _CoverShapeAORemapMax;
|
|
float2 _Vector2_9b862c4e147d1082afad3606339d2130_Out_0_Vector2 = float2(_Property_ca9c61425ece6b8c909c06b1e2738f1a_Out_0_Float, _Property_b9be92f1612c908d80643f0e96015b33_Out_0_Float);
|
|
float _Remap_c1f0022add809b83bad7b493177bddb7_Out_3_Float;
|
|
Unity_Remap_float(_SampleTexture2D_33392602b94694898ec8227a89f13cc9_G_5_Float, float2 (0, 1), _Vector2_9b862c4e147d1082afad3606339d2130_Out_0_Vector2, _Remap_c1f0022add809b83bad7b493177bddb7_Out_3_Float);
|
|
float _Minimum_595c2f31bb0ec588977a2b9ea46bf6b0_Out_2_Float;
|
|
Unity_Minimum_float(_Split_6ec9cc5e56f3f68ba37ff91557979c18_G_2_Float, _Remap_c1f0022add809b83bad7b493177bddb7_Out_3_Float, _Minimum_595c2f31bb0ec588977a2b9ea46bf6b0_Out_2_Float);
|
|
float3 _Vector3_6cb5b2c4675bb28cb41ea88b6eaa2aff_Out_0_Vector3 = float3(_Split_6ec9cc5e56f3f68ba37ff91557979c18_R_1_Float, _Minimum_595c2f31bb0ec588977a2b9ea46bf6b0_Out_2_Float, _Split_6ec9cc5e56f3f68ba37ff91557979c18_B_3_Float);
|
|
float3 _Lerp_fa40b54f3d5a1a8a95f6306e837b9338_Out_3_Vector3;
|
|
Unity_Lerp_float3(_Vector3_fac10bf467f5ff82b4f071ba165bf458_Out_0_Vector3, _Vector3_6cb5b2c4675bb28cb41ea88b6eaa2aff_Out_0_Vector3, (_Branch_3ccf365d359214809d30b6430d863e3f_Out_3_Float.xxx), _Lerp_fa40b54f3d5a1a8a95f6306e837b9338_Out_3_Vector3);
|
|
float _Split_c4a5352a58a4f88fb40410f956825dc6_R_1_Float = _Lerp_fa40b54f3d5a1a8a95f6306e837b9338_Out_3_Vector3[0];
|
|
float _Split_c4a5352a58a4f88fb40410f956825dc6_G_2_Float = _Lerp_fa40b54f3d5a1a8a95f6306e837b9338_Out_3_Vector3[1];
|
|
float _Split_c4a5352a58a4f88fb40410f956825dc6_B_3_Float = _Lerp_fa40b54f3d5a1a8a95f6306e837b9338_Out_3_Vector3[2];
|
|
float _Split_c4a5352a58a4f88fb40410f956825dc6_A_4_Float = 0;
|
|
float _Property_7861e880056eb88ab923a2ff5b12179d_Out_0_Float = _WetSmoothness;
|
|
float _Lerp_ee63160826cff4869f0e63568dd6f8b7_Out_3_Float;
|
|
Unity_Lerp_float(_Split_c4a5352a58a4f88fb40410f956825dc6_B_3_Float, _Property_7861e880056eb88ab923a2ff5b12179d_Out_0_Float, _OneMinus_e16dfb812ec64b8891c541171687142f_Out_1_Float, _Lerp_ee63160826cff4869f0e63568dd6f8b7_Out_3_Float);
|
|
float _Property_1c389d922d4fba86bc62c7d42ac8643d_Out_0_Float = _CoverNormalScale;
|
|
float3 _NormalStrength_db3de71f618fee878c84a13374c7adc4_Out_2_Vector3;
|
|
Unity_NormalStrength_float((_TriplanarNMn_ba7e211dd8095589a2939b5b239ca8e0_XYZ_1_Vector4.xyz), _Property_1c389d922d4fba86bc62c7d42ac8643d_Out_0_Float, _NormalStrength_db3de71f618fee878c84a13374c7adc4_Out_2_Vector3);
|
|
float3 _NormalBlend_b2e537e7a99f9280ba682b47daf3c5e3_Out_2_Vector3;
|
|
Unity_NormalBlend_float(_NormalStrength_db3de71f618fee878c84a13374c7adc4_Out_2_Vector3, _NormalStrength_401cd5af500bd68dbc9bca19d548d0db_Out_2_Vector3, _NormalBlend_b2e537e7a99f9280ba682b47daf3c5e3_Out_2_Vector3);
|
|
float2 _Vector2_b87489f8633d268598edb76163057164_Out_0_Vector2 = float2(_SampleTexture2D_4bd08411faa60c828847f2247f06a809_A_7_Float, _SampleTexture2D_4bd08411faa60c828847f2247f06a809_G_5_Float);
|
|
float2 _Multiply_95e603bb6d4bd7809de0ae42c8f45058_Out_2_Vector2;
|
|
Unity_Multiply_float2_float2(_Vector2_b87489f8633d268598edb76163057164_Out_0_Vector2, float2(2, 2), _Multiply_95e603bb6d4bd7809de0ae42c8f45058_Out_2_Vector2);
|
|
float2 _Add_c116ac3906ccf68d82dd5b73d0f5659a_Out_2_Vector2;
|
|
Unity_Add_float2(_Multiply_95e603bb6d4bd7809de0ae42c8f45058_Out_2_Vector2, float2(-1, -1), _Add_c116ac3906ccf68d82dd5b73d0f5659a_Out_2_Vector2);
|
|
float _Property_988acb131fd330878b4ac0672366ad90_Out_0_Float = _DetailCoverNormalScale;
|
|
float2 _Multiply_6de1a79215e1928f9f3fc3293df74f88_Out_2_Vector2;
|
|
Unity_Multiply_float2_float2(_Add_c116ac3906ccf68d82dd5b73d0f5659a_Out_2_Vector2, (_Property_988acb131fd330878b4ac0672366ad90_Out_0_Float.xx), _Multiply_6de1a79215e1928f9f3fc3293df74f88_Out_2_Vector2);
|
|
float _Split_9ce53bb7a65f16809b6a95d82286186e_R_1_Float = _Multiply_6de1a79215e1928f9f3fc3293df74f88_Out_2_Vector2[0];
|
|
float _Split_9ce53bb7a65f16809b6a95d82286186e_G_2_Float = _Multiply_6de1a79215e1928f9f3fc3293df74f88_Out_2_Vector2[1];
|
|
float _Split_9ce53bb7a65f16809b6a95d82286186e_B_3_Float = 0;
|
|
float _Split_9ce53bb7a65f16809b6a95d82286186e_A_4_Float = 0;
|
|
float _DotProduct_8912687db556b6819d2a38ba8511a7ae_Out_2_Float;
|
|
Unity_DotProduct_float2(_Multiply_6de1a79215e1928f9f3fc3293df74f88_Out_2_Vector2, _Multiply_6de1a79215e1928f9f3fc3293df74f88_Out_2_Vector2, _DotProduct_8912687db556b6819d2a38ba8511a7ae_Out_2_Float);
|
|
float _Saturate_013ea9a02a1ff18992540b270836cc73_Out_1_Float;
|
|
Unity_Saturate_float(_DotProduct_8912687db556b6819d2a38ba8511a7ae_Out_2_Float, _Saturate_013ea9a02a1ff18992540b270836cc73_Out_1_Float);
|
|
float _OneMinus_eefd2695dc7d77838984fc25a1c00b0b_Out_1_Float;
|
|
Unity_OneMinus_float(_Saturate_013ea9a02a1ff18992540b270836cc73_Out_1_Float, _OneMinus_eefd2695dc7d77838984fc25a1c00b0b_Out_1_Float);
|
|
float _SquareRoot_1d25cc71b4ce9286af1666a96ae6ac5a_Out_1_Float;
|
|
Unity_SquareRoot_float(_OneMinus_eefd2695dc7d77838984fc25a1c00b0b_Out_1_Float, _SquareRoot_1d25cc71b4ce9286af1666a96ae6ac5a_Out_1_Float);
|
|
float3 _Vector3_c3d9c7e92a1c5b8ea5650ab3bb421c27_Out_0_Vector3 = float3(_Split_9ce53bb7a65f16809b6a95d82286186e_R_1_Float, _Split_9ce53bb7a65f16809b6a95d82286186e_G_2_Float, _SquareRoot_1d25cc71b4ce9286af1666a96ae6ac5a_Out_1_Float);
|
|
float3 _NormalBlend_8e1d1c87f8c12b87b64883533bfa43be_Out_2_Vector3;
|
|
Unity_NormalBlend_float(_NormalBlend_b2e537e7a99f9280ba682b47daf3c5e3_Out_2_Vector3, _Vector3_c3d9c7e92a1c5b8ea5650ab3bb421c27_Out_0_Vector3, _NormalBlend_8e1d1c87f8c12b87b64883533bfa43be_Out_2_Vector3);
|
|
float3 _Lerp_48cd568fef7d358b8d65b989db745e6c_Out_3_Vector3;
|
|
Unity_Lerp_float3(_NormalBlend_4242e1b4a785378aa59dd49e9d993ffc_Out_2_Vector3, _NormalBlend_8e1d1c87f8c12b87b64883533bfa43be_Out_2_Vector3, (_Branch_3ccf365d359214809d30b6430d863e3f_Out_3_Float.xxx), _Lerp_48cd568fef7d358b8d65b989db745e6c_Out_3_Vector3);
|
|
surface.BaseColor = _Lerp_43bc7a9493df5a829abf080ee4ad3298_Out_3_Vector3;
|
|
surface.Emission = float3(0, 0, 0);
|
|
surface.Alpha = float(1);
|
|
surface.BentNormal = IN.TangentSpaceNormal;
|
|
surface.Smoothness = _Lerp_ee63160826cff4869f0e63568dd6f8b7_Out_3_Float;
|
|
surface.Occlusion = _Split_c4a5352a58a4f88fb40410f956825dc6_G_2_Float;
|
|
surface.NormalTS = _Lerp_48cd568fef7d358b8d65b989db745e6c_Out_3_Vector3;
|
|
surface.Metallic = _Split_c4a5352a58a4f88fb40410f956825dc6_R_1_Float;
|
|
return surface;
|
|
}
|
|
|
|
// --------------------------------------------------
|
|
// Build Graph Inputs
|
|
#ifdef HAVE_VFX_MODIFICATION
|
|
#define VFX_SRP_ATTRIBUTES AttributesMesh
|
|
#define VaryingsMeshType VaryingsMeshToPS
|
|
#define VFX_SRP_VARYINGS VaryingsMeshType
|
|
#define VFX_SRP_SURFACE_INPUTS FragInputs
|
|
#endif
|
|
|
|
VertexDescriptionInputs AttributesMeshToVertexDescriptionInputs(AttributesMesh input)
|
|
{
|
|
VertexDescriptionInputs output;
|
|
ZERO_INITIALIZE(VertexDescriptionInputs, output);
|
|
|
|
output.ObjectSpaceNormal = input.normalOS;
|
|
output.ObjectSpaceTangent = input.tangentOS.xyz;
|
|
output.ObjectSpacePosition = input.positionOS;
|
|
#if UNITY_ANY_INSTANCING_ENABLED
|
|
#else
|
|
#endif
|
|
|
|
return output;
|
|
}
|
|
|
|
VertexDescription GetVertexDescription(AttributesMesh input, float3 timeParameters
|
|
#ifdef HAVE_VFX_MODIFICATION
|
|
, AttributesElement element
|
|
#endif
|
|
)
|
|
{
|
|
// build graph inputs
|
|
VertexDescriptionInputs vertexDescriptionInputs = AttributesMeshToVertexDescriptionInputs(input);
|
|
// Override time parameters with used one (This is required to correctly handle motion vectors for vertex animation based on time)
|
|
|
|
// evaluate vertex graph
|
|
#ifdef HAVE_VFX_MODIFICATION
|
|
GraphProperties properties;
|
|
ZERO_INITIALIZE(GraphProperties, properties);
|
|
|
|
// Fetch the vertex graph properties for the particle instance.
|
|
GetElementVertexProperties(element, properties);
|
|
|
|
VertexDescription vertexDescription = VertexDescriptionFunction(vertexDescriptionInputs, properties);
|
|
#else
|
|
VertexDescription vertexDescription = VertexDescriptionFunction(vertexDescriptionInputs);
|
|
#endif
|
|
return vertexDescription;
|
|
|
|
}
|
|
|
|
AttributesMesh ApplyMeshModification(AttributesMesh input, float3 timeParameters
|
|
#ifdef USE_CUSTOMINTERP_SUBSTRUCT
|
|
#ifdef TESSELLATION_ON
|
|
, inout VaryingsMeshToDS varyings
|
|
#else
|
|
, inout VaryingsMeshToPS varyings
|
|
#endif
|
|
#endif
|
|
#ifdef HAVE_VFX_MODIFICATION
|
|
, AttributesElement element
|
|
#endif
|
|
)
|
|
{
|
|
VertexDescription vertexDescription = GetVertexDescription(input, timeParameters
|
|
#ifdef HAVE_VFX_MODIFICATION
|
|
, element
|
|
#endif
|
|
);
|
|
|
|
// copy graph output to the results
|
|
input.positionOS = vertexDescription.Position;
|
|
input.normalOS = vertexDescription.Normal;
|
|
input.tangentOS.xyz = vertexDescription.Tangent;
|
|
|
|
|
|
|
|
return input;
|
|
}
|
|
|
|
#if defined(_ADD_CUSTOM_VELOCITY) // For shader graph custom velocity
|
|
// Return precomputed Velocity in object space
|
|
float3 GetCustomVelocity(AttributesMesh input
|
|
#ifdef HAVE_VFX_MODIFICATION
|
|
, AttributesElement element
|
|
#endif
|
|
)
|
|
{
|
|
VertexDescription vertexDescription = GetVertexDescription(input, _TimeParameters.xyz
|
|
#ifdef HAVE_VFX_MODIFICATION
|
|
, element
|
|
#endif
|
|
);
|
|
return vertexDescription.CustomVelocity;
|
|
}
|
|
#endif
|
|
|
|
FragInputs BuildFragInputs(VaryingsMeshToPS input)
|
|
{
|
|
FragInputs output;
|
|
ZERO_INITIALIZE(FragInputs, output);
|
|
|
|
// Init to some default value to make the computer quiet (else it output 'divide by zero' warning even if value is not used).
|
|
// TODO: this is a really poor workaround, but the variable is used in a bunch of places
|
|
// to compute normals which are then passed on elsewhere to compute other values...
|
|
output.tangentToWorld = k_identity3x3;
|
|
output.positionSS = input.positionCS; // input.positionCS is SV_Position
|
|
|
|
output.positionRWS = input.positionRWS;
|
|
output.tangentToWorld = BuildTangentToWorld(input.tangentWS, input.normalWS);
|
|
output.texCoord0 = input.texCoord0;
|
|
output.color = input.color;
|
|
|
|
#if UNITY_ANY_INSTANCING_ENABLED
|
|
#else
|
|
#endif
|
|
|
|
#ifdef HAVE_VFX_MODIFICATION
|
|
// FragInputs from VFX come from two places: Interpolator or CBuffer.
|
|
#if VFX_USE_GRAPH_VALUES
|
|
uint instanceActiveIndex = asuint(UNITY_ACCESS_INSTANCED_PROP(PerInstance, _InstanceActiveIndex));
|
|
/* WARNING: $splice Could not find named fragment 'VFXLoadGraphValues' */
|
|
#endif
|
|
|
|
/* WARNING: $splice Could not find named fragment 'VFXSetFragInputs' */
|
|
|
|
#endif
|
|
|
|
// splice point to copy custom interpolator fields from varyings to frag inputs
|
|
|
|
|
|
return output;
|
|
}
|
|
|
|
// existing HDRP code uses the combined function to go directly from packed to frag inputs
|
|
FragInputs UnpackVaryingsMeshToFragInputs(PackedVaryingsMeshToPS input)
|
|
{
|
|
UNITY_SETUP_INSTANCE_ID(input);
|
|
#if defined(HAVE_VFX_MODIFICATION) && defined(UNITY_INSTANCING_ENABLED)
|
|
unity_InstanceID = input.instanceID;
|
|
#endif
|
|
VaryingsMeshToPS unpacked = UnpackVaryingsMeshToPS(input);
|
|
return BuildFragInputs(unpacked);
|
|
}
|
|
SurfaceDescriptionInputs FragInputsToSurfaceDescriptionInputs(FragInputs input, float3 viewWS)
|
|
{
|
|
SurfaceDescriptionInputs output;
|
|
ZERO_INITIALIZE(SurfaceDescriptionInputs, output);
|
|
|
|
output.WorldSpaceNormal = normalize(input.tangentToWorld[2].xyz);
|
|
#if defined(SHADER_STAGE_RAY_TRACING)
|
|
#else
|
|
#endif
|
|
output.TangentSpaceNormal = float3(0.0f, 0.0f, 1.0f);
|
|
output.WorldSpaceTangent = input.tangentToWorld[0].xyz;
|
|
output.WorldSpaceBiTangent = input.tangentToWorld[1].xyz;
|
|
output.AbsoluteWorldSpacePosition = GetAbsolutePositionWS(input.positionRWS);
|
|
|
|
#if UNITY_UV_STARTS_AT_TOP
|
|
#else
|
|
#endif
|
|
|
|
|
|
output.uv0 = input.texCoord0;
|
|
output.VertexColor = input.color;
|
|
|
|
// splice point to copy frag inputs custom interpolator pack into the SDI
|
|
|
|
|
|
return output;
|
|
}
|
|
|
|
// --------------------------------------------------
|
|
// Build Surface Data (Specific Material)
|
|
|
|
void ApplyDecalToSurfaceDataNoNormal(DecalSurfaceData decalSurfaceData, inout SurfaceData surfaceData);
|
|
|
|
void ApplyDecalAndGetNormal(FragInputs fragInputs, PositionInputs posInput, SurfaceDescription surfaceDescription,
|
|
inout SurfaceData surfaceData)
|
|
{
|
|
float3 doubleSidedConstants = GetDoubleSidedConstants();
|
|
|
|
#ifdef DECAL_NORMAL_BLENDING
|
|
// SG nodes don't ouptut surface gradients, so if decals require surf grad blending, we have to convert
|
|
// the normal to gradient before applying the decal. We then have to resolve the gradient back to world space
|
|
float3 normalTS;
|
|
|
|
normalTS = SurfaceGradientFromTangentSpaceNormalAndFromTBN(surfaceDescription.NormalTS,
|
|
fragInputs.tangentToWorld[0], fragInputs.tangentToWorld[1]);
|
|
|
|
|
|
#if HAVE_DECALS
|
|
if (_EnableDecals)
|
|
{
|
|
float alpha = 1.0;
|
|
alpha = surfaceDescription.Alpha;
|
|
|
|
DecalSurfaceData decalSurfaceData = GetDecalSurfaceData(posInput, fragInputs, alpha);
|
|
ApplyDecalToSurfaceNormal(decalSurfaceData, fragInputs.tangentToWorld[2], normalTS);
|
|
ApplyDecalToSurfaceDataNoNormal(decalSurfaceData, surfaceData);
|
|
}
|
|
#endif
|
|
|
|
GetNormalWS_SG(fragInputs, normalTS, surfaceData.normalWS, doubleSidedConstants);
|
|
#else
|
|
// normal delivered to master node
|
|
GetNormalWS(fragInputs, surfaceDescription.NormalTS, surfaceData.normalWS, doubleSidedConstants);
|
|
|
|
#if HAVE_DECALS
|
|
if (_EnableDecals)
|
|
{
|
|
float alpha = 1.0;
|
|
alpha = surfaceDescription.Alpha;
|
|
|
|
// Both uses and modifies 'surfaceData.normalWS'.
|
|
DecalSurfaceData decalSurfaceData = GetDecalSurfaceData(posInput, fragInputs, alpha);
|
|
ApplyDecalToSurfaceNormal(decalSurfaceData, surfaceData.normalWS.xyz);
|
|
ApplyDecalToSurfaceDataNoNormal(decalSurfaceData, surfaceData);
|
|
}
|
|
#endif
|
|
#endif
|
|
}
|
|
void BuildSurfaceData(FragInputs fragInputs, inout SurfaceDescription surfaceDescription, float3 V, PositionInputs posInput, out SurfaceData surfaceData, out float3 bentNormalWS)
|
|
{
|
|
ZERO_INITIALIZE(SurfaceData, surfaceData);
|
|
|
|
// specularOcclusion need to be init ahead of decal to quiet the compiler that modify the SurfaceData struct
|
|
// however specularOcclusion can come from the graph, so need to be init here so it can be override.
|
|
surfaceData.specularOcclusion = 1.0;
|
|
surfaceData.thickness = 0.0;
|
|
|
|
surfaceData.baseColor = surfaceDescription.BaseColor;
|
|
surfaceData.perceptualSmoothness = surfaceDescription.Smoothness;
|
|
surfaceData.ambientOcclusion = surfaceDescription.Occlusion;
|
|
surfaceData.metallic = surfaceDescription.Metallic;
|
|
|
|
#if defined(_REFRACTION_PLANE) || defined(_REFRACTION_SPHERE) || defined(_REFRACTION_THIN)
|
|
if (_EnableSSRefraction)
|
|
{
|
|
|
|
surfaceData.transmittanceMask = (1.0 - surfaceDescription.Alpha);
|
|
surfaceDescription.Alpha = 1.0;
|
|
}
|
|
else
|
|
{
|
|
surfaceData.ior = 1.0;
|
|
surfaceData.transmittanceColor = float3(1.0, 1.0, 1.0);
|
|
surfaceData.atDistance = 1.0;
|
|
surfaceData.transmittanceMask = 0.0;
|
|
surfaceDescription.Alpha = 1.0;
|
|
}
|
|
#else
|
|
surfaceData.ior = 1.0;
|
|
surfaceData.transmittanceColor = float3(1.0, 1.0, 1.0);
|
|
surfaceData.atDistance = 1.0;
|
|
surfaceData.transmittanceMask = 0.0;
|
|
#endif
|
|
|
|
// These static material feature allow compile time optimization
|
|
surfaceData.materialFeatures = MATERIALFEATUREFLAGS_LIT_STANDARD;
|
|
#ifdef _MATERIAL_FEATURE_SUBSURFACE_SCATTERING
|
|
surfaceData.materialFeatures |= MATERIALFEATUREFLAGS_LIT_SUBSURFACE_SCATTERING;
|
|
#endif
|
|
|
|
#ifdef _MATERIAL_FEATURE_TRANSMISSION
|
|
surfaceData.materialFeatures |= MATERIALFEATUREFLAGS_LIT_TRANSMISSION;
|
|
#endif
|
|
|
|
#ifdef _MATERIAL_FEATURE_COLORED_TRANSMISSION
|
|
surfaceData.materialFeatures |= MATERIALFEATUREFLAGS_LIT_TRANSMISSION;
|
|
surfaceData.materialFeatures |= MATERIALFEATUREFLAGS_LIT_COLORED_TRANSMISSION;
|
|
|
|
#endif
|
|
|
|
#ifdef _MATERIAL_FEATURE_ANISOTROPY
|
|
surfaceData.materialFeatures |= MATERIALFEATUREFLAGS_LIT_ANISOTROPY;
|
|
|
|
// Initialize the normal to something non-zero to avoid a div-zero warning for anisotropy.
|
|
surfaceData.normalWS = float3(0, 1, 0);
|
|
#endif
|
|
|
|
#ifdef _MATERIAL_FEATURE_IRIDESCENCE
|
|
surfaceData.materialFeatures |= MATERIALFEATUREFLAGS_LIT_IRIDESCENCE;
|
|
#endif
|
|
|
|
#ifdef _MATERIAL_FEATURE_SPECULAR_COLOR
|
|
surfaceData.materialFeatures |= MATERIALFEATUREFLAGS_LIT_SPECULAR_COLOR;
|
|
#endif
|
|
|
|
#ifdef _MATERIAL_FEATURE_CLEAR_COAT
|
|
surfaceData.materialFeatures |= MATERIALFEATUREFLAGS_LIT_CLEAR_COAT;
|
|
#endif
|
|
|
|
#if defined (_MATERIAL_FEATURE_SPECULAR_COLOR) && defined (_ENERGY_CONSERVING_SPECULAR)
|
|
// Require to have setup baseColor
|
|
// Reproduce the energy conservation done in legacy Unity. Not ideal but better for compatibility and users can unchek it
|
|
surfaceData.baseColor *= (1.0 - Max3(surfaceData.specularColor.r, surfaceData.specularColor.g, surfaceData.specularColor.b));
|
|
#endif
|
|
|
|
float3 doubleSidedConstants = GetDoubleSidedConstants();
|
|
|
|
ApplyDecalAndGetNormal(fragInputs, posInput, surfaceDescription, surfaceData);
|
|
|
|
surfaceData.geomNormalWS = fragInputs.tangentToWorld[2];
|
|
|
|
surfaceData.tangentWS = normalize(fragInputs.tangentToWorld[0].xyz); // The tangent is not normalize in tangentToWorld for mikkt. TODO: Check if it expected that we normalize with Morten. Tag: SURFACE_GRADIENT
|
|
|
|
|
|
bentNormalWS = surfaceData.normalWS;
|
|
|
|
surfaceData.tangentWS = Orthonormalize(surfaceData.tangentWS, surfaceData.normalWS);
|
|
|
|
#ifdef DEBUG_DISPLAY
|
|
#if !defined(SHADER_STAGE_RAY_TRACING)
|
|
// Mipmap mode debugging isn't supported with ray tracing as it relies on derivatives
|
|
if (_DebugMipMapMode != DEBUGMIPMAPMODE_NONE)
|
|
{
|
|
#ifdef FRAG_INPUTS_USE_TEXCOORD0
|
|
surfaceData.baseColor = GET_TEXTURE_STREAMING_DEBUG(posInput.positionSS, fragInputs.texCoord0);
|
|
#else
|
|
surfaceData.baseColor = GET_TEXTURE_STREAMING_DEBUG_NO_UV(posInput.positionSS);
|
|
#endif
|
|
surfaceData.metallic = 0;
|
|
}
|
|
#endif
|
|
|
|
// We need to call ApplyDebugToSurfaceData after filling the surfaceData and before filling builtinData
|
|
// as it can modify attribute use for static lighting
|
|
ApplyDebugToSurfaceData(fragInputs.tangentToWorld, surfaceData);
|
|
#endif
|
|
|
|
// By default we use the ambient occlusion with Tri-ace trick (apply outside) for specular occlusion.
|
|
// If user provide bent normal then we process a better term
|
|
#if defined(_SPECULAR_OCCLUSION_CUSTOM)
|
|
// Just use the value passed through via the slot (not active otherwise)
|
|
#elif defined(_SPECULAR_OCCLUSION_FROM_AO_BENT_NORMAL)
|
|
// If we have bent normal and ambient occlusion, process a specular occlusion
|
|
surfaceData.specularOcclusion = GetSpecularOcclusionFromBentAO(V, bentNormalWS, surfaceData.normalWS, surfaceData.ambientOcclusion, PerceptualSmoothnessToPerceptualRoughness(surfaceData.perceptualSmoothness));
|
|
#elif defined(_AMBIENT_OCCLUSION) && defined(_SPECULAR_OCCLUSION_FROM_AO)
|
|
surfaceData.specularOcclusion = GetSpecularOcclusionFromAmbientOcclusion(ClampNdotV(dot(surfaceData.normalWS, V)), surfaceData.ambientOcclusion, PerceptualSmoothnessToRoughness(surfaceData.perceptualSmoothness));
|
|
#endif
|
|
|
|
#if defined(_ENABLE_GEOMETRIC_SPECULAR_AA) && !defined(SHADER_STAGE_RAY_TRACING)
|
|
surfaceData.perceptualSmoothness = GeometricNormalFiltering(surfaceData.perceptualSmoothness, fragInputs.tangentToWorld[2], surfaceDescription.SpecularAAScreenSpaceVariance, surfaceDescription.SpecularAAThreshold);
|
|
#endif
|
|
}
|
|
|
|
// --------------------------------------------------
|
|
// Get Surface And BuiltinData
|
|
|
|
void GetSurfaceAndBuiltinData(FragInputs fragInputs, float3 V, inout PositionInputs posInput, out SurfaceData surfaceData, out BuiltinData builtinData RAY_TRACING_OPTIONAL_PARAMETERS)
|
|
{
|
|
// Don't dither if displaced tessellation (we're fading out the displacement instead to match the next LOD)
|
|
#if !defined(SHADER_STAGE_RAY_TRACING) && !defined(_TESSELLATION_DISPLACEMENT)
|
|
#ifdef LOD_FADE_CROSSFADE // enable dithering LOD transition if user select CrossFade transition in LOD group
|
|
LODDitheringTransition(ComputeFadeMaskSeed(V, posInput.positionSS), unity_LODFade.x);
|
|
#endif
|
|
#endif
|
|
|
|
#ifndef SHADER_UNLIT
|
|
#ifdef _DOUBLESIDED_ON
|
|
float3 doubleSidedConstants = _DoubleSidedConstants.xyz;
|
|
#else
|
|
float3 doubleSidedConstants = float3(1.0, 1.0, 1.0);
|
|
#endif
|
|
|
|
ApplyDoubleSidedFlipOrMirror(fragInputs, doubleSidedConstants); // Apply double sided flip on the vertex normal
|
|
#endif // SHADER_UNLIT
|
|
|
|
SurfaceDescriptionInputs surfaceDescriptionInputs = FragInputsToSurfaceDescriptionInputs(fragInputs, V);
|
|
|
|
#if defined(HAVE_VFX_MODIFICATION)
|
|
GraphProperties properties;
|
|
ZERO_INITIALIZE(GraphProperties, properties);
|
|
|
|
GetElementPixelProperties(fragInputs, properties);
|
|
|
|
SurfaceDescription surfaceDescription = SurfaceDescriptionFunction(surfaceDescriptionInputs, properties);
|
|
#else
|
|
SurfaceDescription surfaceDescription = SurfaceDescriptionFunction(surfaceDescriptionInputs);
|
|
#endif
|
|
|
|
#ifdef DEBUG_DISPLAY
|
|
if (_DebugMipMapMode != DEBUGMIPMAPMODE_NONE)
|
|
{
|
|
surfaceDescription.Alpha = 1.0f;
|
|
}
|
|
#endif
|
|
|
|
// Perform alpha test very early to save performance (a killed pixel will not sample textures)
|
|
// TODO: split graph evaluation to grab just alpha dependencies first? tricky..
|
|
#ifdef _ALPHATEST_ON
|
|
float alphaCutoff = surfaceDescription.AlphaClipThreshold;
|
|
#if SHADERPASS == SHADERPASS_TRANSPARENT_DEPTH_PREPASS
|
|
// The TransparentDepthPrepass is also used with SSR transparent.
|
|
// If an artists enable transaprent SSR but not the TransparentDepthPrepass itself, then we use AlphaClipThreshold
|
|
// otherwise if TransparentDepthPrepass is enabled we use AlphaClipThresholdDepthPrepass
|
|
#elif SHADERPASS == SHADERPASS_TRANSPARENT_DEPTH_POSTPASS
|
|
// DepthPostpass always use its own alpha threshold
|
|
alphaCutoff = surfaceDescription.AlphaClipThresholdDepthPostpass;
|
|
#elif (SHADERPASS == SHADERPASS_SHADOWS) || (SHADERPASS == SHADERPASS_RAYTRACING_VISIBILITY)
|
|
// If use shadow threshold isn't enable we don't allow any test
|
|
#endif
|
|
|
|
GENERIC_ALPHA_TEST(surfaceDescription.Alpha, alphaCutoff);
|
|
#endif
|
|
|
|
#if !defined(SHADER_STAGE_RAY_TRACING) && _DEPTHOFFSET_ON
|
|
ApplyDepthOffsetPositionInput(V, surfaceDescription.DepthOffset, GetViewForwardDir(), GetWorldToHClipMatrix(), posInput);
|
|
#endif
|
|
|
|
#ifndef SHADER_UNLIT
|
|
float3 bentNormalWS;
|
|
BuildSurfaceData(fragInputs, surfaceDescription, V, posInput, surfaceData, bentNormalWS);
|
|
|
|
#ifdef FRAG_INPUTS_USE_TEXCOORD1
|
|
float4 lightmapTexCoord1 = fragInputs.texCoord1;
|
|
#else
|
|
float4 lightmapTexCoord1 = float4(0,0,0,0);
|
|
#endif
|
|
|
|
#ifdef FRAG_INPUTS_USE_TEXCOORD2
|
|
float4 lightmapTexCoord2 = fragInputs.texCoord2;
|
|
#else
|
|
float4 lightmapTexCoord2 = float4(0,0,0,0);
|
|
#endif
|
|
|
|
float alpha = 1.0;
|
|
alpha = surfaceDescription.Alpha;
|
|
|
|
// Builtin Data
|
|
// For back lighting we use the oposite vertex normal
|
|
InitBuiltinData(posInput, alpha, bentNormalWS, -fragInputs.tangentToWorld[2], lightmapTexCoord1, lightmapTexCoord2, builtinData);
|
|
|
|
#else
|
|
BuildSurfaceData(fragInputs, surfaceDescription, V, posInput, surfaceData);
|
|
|
|
ZERO_BUILTIN_INITIALIZE(builtinData); // No call to InitBuiltinData as we don't have any lighting
|
|
builtinData.opacity = surfaceDescription.Alpha;
|
|
|
|
#if defined(DEBUG_DISPLAY)
|
|
// Light Layers are currently not used for the Unlit shader (because it is not lit)
|
|
// But Unlit objects do cast shadows according to their rendering layer mask, which is what we want to
|
|
// display in the light layers visualization mode, therefore we need the renderingLayers
|
|
builtinData.renderingLayers = GetMeshRenderingLayerMask();
|
|
#endif
|
|
|
|
#endif // SHADER_UNLIT
|
|
|
|
#ifdef _ALPHATEST_ON
|
|
// Used for sharpening by alpha to mask - Alpha to covertage is only used with depth only and forward pass (no shadow pass, no transparent pass)
|
|
builtinData.alphaClipTreshold = alphaCutoff;
|
|
#endif
|
|
|
|
// override sampleBakedGI - not used by Unlit
|
|
// When overriding GI, we need to force the isLightmap flag to make sure we don't add APV (sampled in the lightloop) on top of the overridden value (set at GBuffer stage)
|
|
|
|
builtinData.emissiveColor = surfaceDescription.Emission;
|
|
|
|
// Note this will not fully work on transparent surfaces (can check with _SURFACE_TYPE_TRANSPARENT define)
|
|
// We will always overwrite vt feeback with the nearest. So behind transparent surfaces vt will not be resolved
|
|
// This is a limitation of the current MRT approach.
|
|
#ifdef UNITY_VIRTUAL_TEXTURING
|
|
#endif
|
|
|
|
#if _DEPTHOFFSET_ON
|
|
builtinData.depthOffset = surfaceDescription.DepthOffset;
|
|
#endif
|
|
|
|
// TODO: We should generate distortion / distortionBlur for non distortion pass
|
|
#if (SHADERPASS == SHADERPASS_DISTORTION)
|
|
builtinData.distortion = surfaceDescription.Distortion;
|
|
builtinData.distortionBlur = surfaceDescription.DistortionBlur;
|
|
#endif
|
|
|
|
#ifndef SHADER_UNLIT
|
|
// PostInitBuiltinData call ApplyDebugToBuiltinData
|
|
PostInitBuiltinData(V, posInput, surfaceData, builtinData);
|
|
#else
|
|
ApplyDebugToBuiltinData(builtinData);
|
|
#endif
|
|
|
|
RAY_TRACING_OPTIONAL_ALPHA_TEST_PASS
|
|
}
|
|
|
|
// --------------------------------------------------
|
|
// Main
|
|
|
|
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/RenderPipeline/ShaderPass/ShaderPassDepthOnly.hlsl"
|
|
|
|
// --------------------------------------------------
|
|
// Visual Effect Vertex Invocations
|
|
|
|
#ifdef HAVE_VFX_MODIFICATION
|
|
#if !defined(SHADER_STAGE_RAY_TRACING)
|
|
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/ShaderLibrary/VisualEffectVertex.hlsl"
|
|
#else
|
|
#endif
|
|
#endif
|
|
|
|
ENDHLSL
|
|
}
|
|
Pass
|
|
{
|
|
Name "MotionVectors"
|
|
Tags
|
|
{
|
|
"LightMode" = "MotionVectors"
|
|
}
|
|
|
|
// Render State
|
|
Cull [_CullMode]
|
|
ZWrite On
|
|
Stencil
|
|
{
|
|
WriteMask [_StencilWriteMaskMV]
|
|
Ref [_StencilRefMV]
|
|
CompFront Always
|
|
PassFront Replace
|
|
CompBack Always
|
|
PassBack Replace
|
|
}
|
|
|
|
// Debug
|
|
// <None>
|
|
|
|
// --------------------------------------------------
|
|
// Pass
|
|
|
|
HLSLPROGRAM
|
|
|
|
// Pragmas
|
|
#pragma multi_compile _ DOTS_INSTANCING_ON
|
|
#pragma instancing_options renderinglayer
|
|
#pragma target 4.5
|
|
#pragma vertex Vert
|
|
#pragma fragment Frag
|
|
#pragma only_renderers d3d11 playstation xboxone xboxseries vulkan metal switch
|
|
#pragma multi_compile_instancing
|
|
|
|
// Keywords
|
|
#pragma multi_compile_fragment _ WRITE_MSAA_DEPTH
|
|
#pragma shader_feature _ _SURFACE_TYPE_TRANSPARENT
|
|
#pragma shader_feature_local _ _DOUBLESIDED_ON
|
|
#pragma shader_feature_local _ _ADD_PRECOMPUTED_VELOCITY
|
|
#pragma shader_feature_local _ _TRANSPARENT_WRITES_MOTION_VEC _TRANSPARENT_REFRACTIVE_SORT
|
|
#pragma shader_feature_local_fragment _ _ENABLE_FOG_ON_TRANSPARENT
|
|
#pragma multi_compile _ LOD_FADE_CROSSFADE
|
|
#pragma multi_compile _ WRITE_NORMAL_BUFFER
|
|
#pragma shader_feature_local_fragment _ _DISABLE_DECALS
|
|
#pragma shader_feature_local_raytracing _ _DISABLE_DECALS
|
|
#pragma shader_feature_local_fragment _ _DISABLE_SSR
|
|
#pragma shader_feature_local_raytracing _ _DISABLE_SSR
|
|
#pragma shader_feature_local_fragment _ _DISABLE_SSR_TRANSPARENT
|
|
#pragma shader_feature_local_raytracing _ _DISABLE_SSR_TRANSPARENT
|
|
#pragma multi_compile_fragment _ WRITE_DECAL_BUFFER_AND_RENDERING_LAYER
|
|
#pragma shader_feature_local _ _REFRACTION_PLANE _REFRACTION_SPHERE _REFRACTION_THIN
|
|
#pragma shader_feature_local_fragment _MATERIAL_FEATURE_SUBSURFACE_SCATTERING
|
|
#pragma shader_feature_local_raytracing _MATERIAL_FEATURE_SUBSURFACE_SCATTERING
|
|
#pragma shader_feature_local_fragment _MATERIAL_FEATURE_TRANSMISSION
|
|
#pragma shader_feature_local_raytracing _MATERIAL_FEATURE_TRANSMISSION
|
|
#pragma shader_feature_local_fragment _MATERIAL_FEATURE_ANISOTROPY
|
|
#pragma shader_feature_local_raytracing _MATERIAL_FEATURE_ANISOTROPY
|
|
#pragma shader_feature_local_fragment _MATERIAL_FEATURE_IRIDESCENCE
|
|
#pragma shader_feature_local_raytracing _MATERIAL_FEATURE_IRIDESCENCE
|
|
#pragma shader_feature_local_fragment _MATERIAL_FEATURE_SPECULAR_COLOR
|
|
#pragma shader_feature_local_raytracing _MATERIAL_FEATURE_SPECULAR_COLOR
|
|
#pragma shader_feature_local_fragment _MATERIAL_FEATURE_COLORED_TRANSMISSION
|
|
#pragma shader_feature_local_raytracing _MATERIAL_FEATURE_COLORED_TRANSMISSION
|
|
// GraphKeywords: <None>
|
|
|
|
// Defines
|
|
#define SHADERPASS SHADERPASS_MOTION_VECTORS
|
|
#define SUPPORT_GLOBAL_MIP_BIAS 1
|
|
|
|
// For custom interpolators to inject a substruct definition before FragInputs definition,
|
|
// allowing for FragInputs to capture CI's intended for ShaderGraph's SDI.
|
|
struct CustomInterpolators
|
|
{
|
|
};
|
|
#define USE_CUSTOMINTERP_SUBSTRUCT
|
|
|
|
|
|
|
|
// TODO: Merge FragInputsVFX substruct with CustomInterpolators.
|
|
#ifdef HAVE_VFX_MODIFICATION
|
|
struct FragInputsVFX
|
|
{
|
|
/* WARNING: $splice Could not find named fragment 'FragInputsVFX' */
|
|
};
|
|
#endif
|
|
|
|
#include "Packages/com.unity.render-pipelines.core/ShaderLibrary/Common.hlsl"
|
|
#include "Packages/com.unity.render-pipelines.core/ShaderLibrary/GeometricTools.hlsl" // Required by Tessellation.hlsl
|
|
#include "Packages/com.unity.render-pipelines.core/ShaderLibrary/Tessellation.hlsl"
|
|
#include "Packages/com.unity.render-pipelines.core/ShaderLibrary/Texture.hlsl"
|
|
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/ShaderLibrary/ShaderVariables.hlsl"
|
|
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/RenderPipeline/ShaderPass/ShaderPass.cs.hlsl"
|
|
#include "Packages/com.unity.render-pipelines.core/ShaderLibrary/TextureStack.hlsl" // Required to be include before we include properties as it define DECLARE_STACK_CB
|
|
#include "Packages/com.unity.render-pipelines.core/ShaderLibrary/DebugMipmapStreamingMacros.hlsl" // Required before including properties as it defines UNITY_TEXTURE_STREAMING_DEBUG_VARS
|
|
// Always include Shader Graph version
|
|
// Always include last to avoid double macros
|
|
#include "Packages/com.unity.shadergraph/ShaderGraphLibrary/Functions.hlsl" // Need to be here for Gradient struct definition
|
|
|
|
// --------------------------------------------------
|
|
// Defines
|
|
|
|
// Attribute
|
|
#define ATTRIBUTES_NEED_NORMAL
|
|
#define ATTRIBUTES_NEED_TANGENT
|
|
#define ATTRIBUTES_NEED_TEXCOORD0
|
|
#define ATTRIBUTES_NEED_COLOR
|
|
#define VARYINGS_NEED_POSITION_WS
|
|
#define VARYINGS_NEED_TANGENT_TO_WORLD
|
|
#define VARYINGS_NEED_TEXCOORD0
|
|
#define VARYINGS_NEED_COLOR
|
|
|
|
#define HAVE_MESH_MODIFICATION
|
|
|
|
//Strip down the FragInputs.hlsl (on graphics), so we can only optimize the interpolators we use.
|
|
//if by accident something requests contents of FragInputs.hlsl, it will be caught as a compiler error
|
|
//Frag inputs stripping is only enabled when FRAG_INPUTS_ENABLE_STRIPPING is set
|
|
#if !defined(SHADER_STAGE_RAY_TRACING) && SHADERPASS != SHADERPASS_RAYTRACING_GBUFFER && SHADERPASS != SHADERPASS_FULL_SCREEN_DEBUG
|
|
#define FRAG_INPUTS_ENABLE_STRIPPING
|
|
#endif
|
|
#define FRAG_INPUTS_USE_TEXCOORD0
|
|
|
|
|
|
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/RenderPipeline/ShaderPass/FragInputs.hlsl"
|
|
|
|
|
|
|
|
|
|
// Following two define are a workaround introduce in 10.1.x for RaytracingQualityNode
|
|
// The ShaderGraph don't support correctly migration of this node as it serialize all the node data
|
|
// in the json file making it impossible to uprgrade. Until we get a fix, we do a workaround here
|
|
// to still allow us to rename the field and keyword of this node without breaking existing code.
|
|
#ifdef RAYTRACING_SHADER_GRAPH_DEFAULT
|
|
#define RAYTRACING_SHADER_GRAPH_HIGH
|
|
#endif
|
|
|
|
#ifdef RAYTRACING_SHADER_GRAPH_RAYTRACED
|
|
#define RAYTRACING_SHADER_GRAPH_LOW
|
|
#endif
|
|
// end
|
|
|
|
#ifndef SHADER_UNLIT
|
|
// We need isFrontFace when using double sided - it is not required for unlit as in case of unlit double sided only drive the cullmode
|
|
// VARYINGS_NEED_CULLFACE can be define by VaryingsMeshToPS.FaceSign input if a IsFrontFace Node is included in the shader graph.
|
|
#if defined(_DOUBLESIDED_ON) && !defined(VARYINGS_NEED_CULLFACE)
|
|
#define VARYINGS_NEED_CULLFACE
|
|
#endif
|
|
#endif
|
|
|
|
// Specific Material Define
|
|
#define _AMBIENT_OCCLUSION 1
|
|
#define _SPECULAR_OCCLUSION_FROM_AO 1
|
|
#define _ENERGY_CONSERVING_SPECULAR 1
|
|
|
|
#if _MATERIAL_FEATURE_COLORED_TRANSMISSION
|
|
// Colored Transmission doesn't support clear coat
|
|
#undef _MATERIAL_FEATURE_CLEAR_COAT
|
|
#endif
|
|
|
|
// If we use subsurface scattering, enable output split lighting (for forward pass)
|
|
#if defined(_MATERIAL_FEATURE_SUBSURFACE_SCATTERING) && !defined(_SURFACE_TYPE_TRANSPARENT)
|
|
#define OUTPUT_SPLIT_LIGHTING
|
|
#endif
|
|
|
|
// This shader support recursive rendering for raytracing
|
|
#define HAVE_RECURSIVE_RENDERING
|
|
|
|
// In Path Tracing, For all single-sided, refractive materials, we want to force a thin refraction model
|
|
#if (SHADERPASS == SHADERPASS_PATH_TRACING) && !defined(_DOUBLESIDED_ON) && (defined(_REFRACTION_PLANE) || defined(_REFRACTION_SPHERE))
|
|
#undef _REFRACTION_PLANE
|
|
#undef _REFRACTION_SPHERE
|
|
#define _REFRACTION_THIN
|
|
#endif
|
|
// Caution: we can use the define SHADER_UNLIT onlit after the above Material include as it is the Unlit template who define it
|
|
|
|
// To handle SSR on transparent correctly with a possibility to enable/disable it per framesettings
|
|
// we should have a code like this:
|
|
// if !defined(_DISABLE_SSR_TRANSPARENT)
|
|
// pragma multi_compile _ WRITE_NORMAL_BUFFER
|
|
// endif
|
|
// i.e we enable the multicompile only if we can receive SSR or not, and then C# code drive
|
|
// it based on if SSR transparent in frame settings and not (and stripper can strip it).
|
|
// this is currently not possible with our current preprocessor as _DISABLE_SSR_TRANSPARENT is a keyword not a define
|
|
// so instead we used this and chose to pay the extra cost of normal write even if SSR transaprent is disabled.
|
|
// Ideally the shader graph generator should handle it but condition below can't be handle correctly for now.
|
|
#if SHADERPASS == SHADERPASS_TRANSPARENT_DEPTH_PREPASS
|
|
#if !defined(_DISABLE_SSR_TRANSPARENT) && !defined(SHADER_UNLIT)
|
|
#define WRITE_NORMAL_BUFFER
|
|
#endif
|
|
#endif
|
|
|
|
// See Lit.shader
|
|
#if SHADERPASS == SHADERPASS_MOTION_VECTORS && defined(WRITE_DECAL_BUFFER_AND_RENDERING_LAYER)
|
|
#define WRITE_DECAL_BUFFER
|
|
#endif
|
|
|
|
#ifndef DEBUG_DISPLAY
|
|
// In case of opaque we don't want to perform the alpha test, it is done in depth prepass and we use depth equal for ztest (setup from UI)
|
|
// Don't do it with debug display mode as it is possible there is no depth prepass in this case
|
|
#if !defined(_SURFACE_TYPE_TRANSPARENT)
|
|
#if SHADERPASS == SHADERPASS_FORWARD
|
|
#define SHADERPASS_FORWARD_BYPASS_ALPHA_TEST
|
|
#elif SHADERPASS == SHADERPASS_GBUFFER
|
|
#define SHADERPASS_GBUFFER_BYPASS_ALPHA_TEST
|
|
#endif
|
|
#endif
|
|
#endif
|
|
|
|
// Define _DEFERRED_CAPABLE_MATERIAL for shader capable to run in deferred pass
|
|
#if defined(SHADER_LIT) && !defined(_SURFACE_TYPE_TRANSPARENT)
|
|
#define _DEFERRED_CAPABLE_MATERIAL
|
|
#endif
|
|
|
|
// Translate transparent motion vector define
|
|
#if (defined(_TRANSPARENT_WRITES_MOTION_VEC) || defined(_TRANSPARENT_REFRACTIVE_SORT)) && defined(_SURFACE_TYPE_TRANSPARENT)
|
|
#define _WRITE_TRANSPARENT_MOTION_VECTOR
|
|
#endif
|
|
|
|
// -- Graph Properties
|
|
CBUFFER_START(UnityPerMaterial)
|
|
float4 _BaseColor;
|
|
float4 _BaseColorMap_TexelSize;
|
|
float4 _BaseTilingOffset;
|
|
float _BaseTriplanarThreshold;
|
|
float4 _BaseNormalMap_TexelSize;
|
|
float _BaseNormalScale;
|
|
float4 _BaseMaskMap_TexelSize;
|
|
float _BaseMetallic;
|
|
float _BaseAORemapMin;
|
|
float _BaseAORemapMax;
|
|
float _BaseSmoothnessRemapMin;
|
|
float _BaseSmoothnessRemapMax;
|
|
float _USEDYNAMICCOVERTSTATICMASKF;
|
|
float4 _CoverMaskA_TexelSize;
|
|
float _CoverMaskPower;
|
|
float _Cover_Amount;
|
|
float _Cover_Amount_Grow_Speed;
|
|
float3 _CoverDirection;
|
|
float _Cover_Max_Angle;
|
|
float _Cover_Min_Height;
|
|
float _Cover_Min_Height_Blending;
|
|
float4 _CoverBaseColor;
|
|
float4 _CoverBaseColorMap_TexelSize;
|
|
float4 _CoverTilingOffset;
|
|
float _CoverTriplanarThreshold;
|
|
float4 _CoverNormalMap_TexelSize;
|
|
float _CoverNormalScale;
|
|
float _CoverNormalBlendHardness;
|
|
float _CoverHeightMapMin;
|
|
float _CoverHeightMapMax;
|
|
float _CoverHeightMapOffset;
|
|
float _CoverHardness;
|
|
float4 _CoverMaskMap_TexelSize;
|
|
float _CoverMetallic;
|
|
float _CoverAORemapMin;
|
|
float _CoverAORemapMax;
|
|
float _CoverSmoothnessRemapMin;
|
|
float _CoverSmoothnessRemapMax;
|
|
float4 _ShapeNormalMap_TexelSize;
|
|
float _shapeNormalScale;
|
|
float _CovershapeNormalScale;
|
|
float4 _ShapeAO_TexelSize;
|
|
float _ShapeAORemapMin;
|
|
float _ShapeAORemapMax;
|
|
float _CoverShapeAORemapMin;
|
|
float _CoverShapeAORemapMax;
|
|
float4 _DetailMap_TexelSize;
|
|
float4 _DetailTilingOffset;
|
|
float _DetailAlbedoScale;
|
|
float _DetailNormalScale;
|
|
float _DetailSmoothnessScale;
|
|
float _DetailCoverAlbedoScale;
|
|
float _DetailCoverNormalScale;
|
|
float _DetailCoverSmoothnessScale;
|
|
float _CoverMaskRCurvature;
|
|
float _BaseBrightnessCurvMultply;
|
|
float _BaseBrightnessCurvPower;
|
|
float _BaseDarknessCurvMultply;
|
|
float _BaseDarknessCurvPower;
|
|
float _CoverBrightnessCurvMultply;
|
|
float _CoverBrightnessCurvPower;
|
|
float _CoverDarknessCurvMultply;
|
|
float _CoverDarknessCurvPower;
|
|
float4 _WetColor;
|
|
float _WetSmoothness;
|
|
float4 _EmissionColor;
|
|
float _UseShadowThreshold;
|
|
float4 _DoubleSidedConstants;
|
|
UNITY_TEXTURE_STREAMING_DEBUG_VARS;
|
|
float _BlendMode;
|
|
float _EnableBlendModePreserveSpecularLighting;
|
|
float _RayTracing;
|
|
float _RefractionModel;
|
|
float _MaterialID;
|
|
float _MaterialTypeMask;
|
|
CBUFFER_END
|
|
|
|
|
|
// Object and Global properties
|
|
SAMPLER(SamplerState_Linear_Repeat);
|
|
SAMPLER(SamplerState_Linear_Repeat_Aniso8);
|
|
TEXTURE2D(_BaseColorMap);
|
|
SAMPLER(sampler_BaseColorMap);
|
|
TEXTURE2D(_BaseNormalMap);
|
|
SAMPLER(sampler_BaseNormalMap);
|
|
TEXTURE2D(_BaseMaskMap);
|
|
SAMPLER(sampler_BaseMaskMap);
|
|
TEXTURE2D(_CoverMaskA);
|
|
SAMPLER(sampler_CoverMaskA);
|
|
TEXTURE2D(_CoverBaseColorMap);
|
|
SAMPLER(sampler_CoverBaseColorMap);
|
|
TEXTURE2D(_CoverNormalMap);
|
|
SAMPLER(sampler_CoverNormalMap);
|
|
TEXTURE2D(_CoverMaskMap);
|
|
SAMPLER(sampler_CoverMaskMap);
|
|
TEXTURE2D(_ShapeNormalMap);
|
|
SAMPLER(sampler_ShapeNormalMap);
|
|
TEXTURE2D(_ShapeAO);
|
|
SAMPLER(sampler_ShapeAO);
|
|
TEXTURE2D(_DetailMap);
|
|
SAMPLER(sampler_DetailMap);
|
|
|
|
// -- Property used by ScenePickingPass
|
|
#ifdef SCENEPICKINGPASS
|
|
float4 _SelectionID;
|
|
#endif
|
|
|
|
// -- Properties used by SceneSelectionPass
|
|
#ifdef SCENESELECTIONPASS
|
|
int _ObjectId;
|
|
int _PassValue;
|
|
#endif
|
|
|
|
// Includes
|
|
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/Debug/DebugDisplay.hlsl"
|
|
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/Material/Material.hlsl"
|
|
#include "Packages/com.unity.render-pipelines.core/ShaderLibrary/NormalSurfaceGradient.hlsl"
|
|
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/Material/Lit/Lit.hlsl"
|
|
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/Material/BuiltinUtilities.hlsl"
|
|
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/Material/MaterialUtilities.hlsl"
|
|
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/Material/Decal/DecalUtilities.hlsl"
|
|
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/Material/Lit/LitDecalData.hlsl"
|
|
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/ShaderLibrary/ShaderGraphFunctions.hlsl"
|
|
// GraphIncludes: <None>
|
|
|
|
// --------------------------------------------------
|
|
// Structs and Packing
|
|
|
|
struct AttributesMesh
|
|
{
|
|
float3 positionOS : POSITION;
|
|
float3 normalOS : NORMAL;
|
|
float4 tangentOS : TANGENT;
|
|
float4 uv0 : TEXCOORD0;
|
|
float4 color : COLOR;
|
|
#if UNITY_ANY_INSTANCING_ENABLED || defined(ATTRIBUTES_NEED_INSTANCEID)
|
|
uint instanceID : INSTANCEID_SEMANTIC;
|
|
#endif
|
|
};
|
|
struct VaryingsMeshToPS
|
|
{
|
|
SV_POSITION_QUALIFIERS float4 positionCS : SV_POSITION;
|
|
float3 positionRWS;
|
|
float3 normalWS;
|
|
float4 tangentWS;
|
|
float4 texCoord0;
|
|
float4 color;
|
|
#if UNITY_ANY_INSTANCING_ENABLED || defined(VARYINGS_NEED_INSTANCEID)
|
|
uint instanceID : CUSTOM_INSTANCE_ID;
|
|
#endif
|
|
};
|
|
struct VertexDescriptionInputs
|
|
{
|
|
float3 ObjectSpaceNormal;
|
|
float3 ObjectSpaceTangent;
|
|
float3 ObjectSpacePosition;
|
|
};
|
|
struct SurfaceDescriptionInputs
|
|
{
|
|
float3 WorldSpaceNormal;
|
|
float3 TangentSpaceNormal;
|
|
float3 WorldSpaceTangent;
|
|
float3 WorldSpaceBiTangent;
|
|
float3 AbsoluteWorldSpacePosition;
|
|
float4 uv0;
|
|
float4 VertexColor;
|
|
};
|
|
struct PackedVaryingsMeshToPS
|
|
{
|
|
SV_POSITION_QUALIFIERS float4 positionCS : SV_POSITION;
|
|
float4 tangentWS : INTERP0;
|
|
float4 texCoord0 : INTERP1;
|
|
float4 color : INTERP2;
|
|
float3 positionRWS : INTERP3;
|
|
float3 normalWS : INTERP4;
|
|
#if UNITY_ANY_INSTANCING_ENABLED || defined(VARYINGS_NEED_INSTANCEID)
|
|
uint instanceID : CUSTOM_INSTANCE_ID;
|
|
#endif
|
|
};
|
|
|
|
PackedVaryingsMeshToPS PackVaryingsMeshToPS (VaryingsMeshToPS input)
|
|
{
|
|
PackedVaryingsMeshToPS output;
|
|
ZERO_INITIALIZE(PackedVaryingsMeshToPS, output);
|
|
output.positionCS = input.positionCS;
|
|
output.tangentWS.xyzw = input.tangentWS;
|
|
output.texCoord0.xyzw = input.texCoord0;
|
|
output.color.xyzw = input.color;
|
|
output.positionRWS.xyz = input.positionRWS;
|
|
output.normalWS.xyz = input.normalWS;
|
|
#if UNITY_ANY_INSTANCING_ENABLED || defined(VARYINGS_NEED_INSTANCEID)
|
|
output.instanceID = input.instanceID;
|
|
#endif
|
|
return output;
|
|
}
|
|
|
|
VaryingsMeshToPS UnpackVaryingsMeshToPS (PackedVaryingsMeshToPS input)
|
|
{
|
|
VaryingsMeshToPS output;
|
|
output.positionCS = input.positionCS;
|
|
output.tangentWS = input.tangentWS.xyzw;
|
|
output.texCoord0 = input.texCoord0.xyzw;
|
|
output.color = input.color.xyzw;
|
|
output.positionRWS = input.positionRWS.xyz;
|
|
output.normalWS = input.normalWS.xyz;
|
|
#if UNITY_ANY_INSTANCING_ENABLED || defined(VARYINGS_NEED_INSTANCEID)
|
|
output.instanceID = input.instanceID;
|
|
#endif
|
|
return output;
|
|
}
|
|
|
|
|
|
// --------------------------------------------------
|
|
// Graph
|
|
|
|
|
|
// Graph Functions
|
|
|
|
void Unity_Divide_float4(float4 A, float4 B, out float4 Out)
|
|
{
|
|
Out = A / B;
|
|
}
|
|
|
|
void Unity_Combine_float(float R, float G, float B, float A, out float4 RGBA, out float3 RGB, out float2 RG)
|
|
{
|
|
RGBA = float4(R, G, B, A);
|
|
RGB = float3(R, G, B);
|
|
RG = float2(R, G);
|
|
}
|
|
|
|
void Unity_Multiply_float4_float4(float4 A, float4 B, out float4 Out)
|
|
{
|
|
Out = A * B;
|
|
}
|
|
|
|
void Unity_Sign_float3(float3 In, out float3 Out)
|
|
{
|
|
Out = sign(In);
|
|
}
|
|
|
|
void Unity_Multiply_float2_float2(float2 A, float2 B, out float2 Out)
|
|
{
|
|
Out = A * B;
|
|
}
|
|
|
|
void Unity_Absolute_float3(float3 In, out float3 Out)
|
|
{
|
|
Out = abs(In);
|
|
}
|
|
|
|
void Unity_Power_float3(float3 A, float3 B, out float3 Out)
|
|
{
|
|
Out = pow(A, B);
|
|
}
|
|
|
|
void Unity_Multiply_float3_float3(float3 A, float3 B, out float3 Out)
|
|
{
|
|
Out = A * B;
|
|
}
|
|
|
|
void Unity_Multiply_float_float(float A, float B, out float Out)
|
|
{
|
|
Out = A * B;
|
|
}
|
|
|
|
void Unity_Add_float4(float4 A, float4 B, out float4 Out)
|
|
{
|
|
Out = A + B;
|
|
}
|
|
|
|
void Unity_Add_float(float A, float B, out float Out)
|
|
{
|
|
Out = A + B;
|
|
}
|
|
|
|
struct Bindings_TriplanarNM_bc609ed95f52591469ab35dbfe0efcea_float
|
|
{
|
|
float3 WorldSpaceNormal;
|
|
float3 AbsoluteWorldSpacePosition;
|
|
};
|
|
|
|
void SG_TriplanarNM_bc609ed95f52591469ab35dbfe0efcea_float(UnityTexture2D Texture2D_80A3D28F, float Vector1_41461AC9, float Vector1_E4D1C13A, UnitySamplerState _SamplerState, Bindings_TriplanarNM_bc609ed95f52591469ab35dbfe0efcea_float IN, out float4 XYZ_1, out float4 XZ_2, out float4 YZ_3, out float4 XY_4)
|
|
{
|
|
UnityTexture2D _Property_3e01b4d2fc68d48ba3acbba9d5881e59_Out_0_Texture2D = Texture2D_80A3D28F;
|
|
float _Split_89ed63cb625cb3878c183d0b71c03400_R_1_Float = IN.AbsoluteWorldSpacePosition[0];
|
|
float _Split_89ed63cb625cb3878c183d0b71c03400_G_2_Float = IN.AbsoluteWorldSpacePosition[1];
|
|
float _Split_89ed63cb625cb3878c183d0b71c03400_B_3_Float = IN.AbsoluteWorldSpacePosition[2];
|
|
float _Split_89ed63cb625cb3878c183d0b71c03400_A_4_Float = 0;
|
|
float4 _Combine_cf2d04ff119ad88493f6460431765cbb_RGBA_4_Vector4;
|
|
float3 _Combine_cf2d04ff119ad88493f6460431765cbb_RGB_5_Vector3;
|
|
float2 _Combine_cf2d04ff119ad88493f6460431765cbb_RG_6_Vector2;
|
|
Unity_Combine_float(_Split_89ed63cb625cb3878c183d0b71c03400_R_1_Float, _Split_89ed63cb625cb3878c183d0b71c03400_B_3_Float, float(0), float(0), _Combine_cf2d04ff119ad88493f6460431765cbb_RGBA_4_Vector4, _Combine_cf2d04ff119ad88493f6460431765cbb_RGB_5_Vector3, _Combine_cf2d04ff119ad88493f6460431765cbb_RG_6_Vector2);
|
|
float _Property_47988ec10c0c18879d461e00bed806e7_Out_0_Float = Vector1_41461AC9;
|
|
float4 _Multiply_14cec4902d0a00829e4555071a1b8ad1_Out_2_Vector4;
|
|
Unity_Multiply_float4_float4(_Combine_cf2d04ff119ad88493f6460431765cbb_RGBA_4_Vector4, (_Property_47988ec10c0c18879d461e00bed806e7_Out_0_Float.xxxx), _Multiply_14cec4902d0a00829e4555071a1b8ad1_Out_2_Vector4);
|
|
float3 _Sign_b826e0ff2d95ec8cb2b2cbbd7ea2eab6_Out_1_Vector3;
|
|
Unity_Sign_float3(IN.WorldSpaceNormal, _Sign_b826e0ff2d95ec8cb2b2cbbd7ea2eab6_Out_1_Vector3);
|
|
float _Split_742547a7039de986a646d04c157ae549_R_1_Float = _Sign_b826e0ff2d95ec8cb2b2cbbd7ea2eab6_Out_1_Vector3[0];
|
|
float _Split_742547a7039de986a646d04c157ae549_G_2_Float = _Sign_b826e0ff2d95ec8cb2b2cbbd7ea2eab6_Out_1_Vector3[1];
|
|
float _Split_742547a7039de986a646d04c157ae549_B_3_Float = _Sign_b826e0ff2d95ec8cb2b2cbbd7ea2eab6_Out_1_Vector3[2];
|
|
float _Split_742547a7039de986a646d04c157ae549_A_4_Float = 0;
|
|
float2 _Vector2_40a8919e571ec18499de72022c155b38_Out_0_Vector2 = float2(_Split_742547a7039de986a646d04c157ae549_G_2_Float, float(1));
|
|
float2 _Multiply_5fa32af59cdca88389832336b2268bd5_Out_2_Vector2;
|
|
Unity_Multiply_float2_float2((_Multiply_14cec4902d0a00829e4555071a1b8ad1_Out_2_Vector4.xy), _Vector2_40a8919e571ec18499de72022c155b38_Out_0_Vector2, _Multiply_5fa32af59cdca88389832336b2268bd5_Out_2_Vector2);
|
|
UnitySamplerState _Property_544c7fa9dfe54e30a0df9d605340a374_Out_0_SamplerState = _SamplerState;
|
|
float4 _SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_RGBA_0_Vector4 = SAMPLE_TEXTURE2D(_Property_3e01b4d2fc68d48ba3acbba9d5881e59_Out_0_Texture2D.tex, _Property_544c7fa9dfe54e30a0df9d605340a374_Out_0_SamplerState.samplerstate, _Property_3e01b4d2fc68d48ba3acbba9d5881e59_Out_0_Texture2D.GetTransformedUV(_Multiply_5fa32af59cdca88389832336b2268bd5_Out_2_Vector2) );
|
|
float _SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_R_4_Float = _SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_RGBA_0_Vector4.r;
|
|
float _SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_G_5_Float = _SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_RGBA_0_Vector4.g;
|
|
float _SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_B_6_Float = _SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_RGBA_0_Vector4.b;
|
|
float _SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_A_7_Float = _SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_RGBA_0_Vector4.a;
|
|
float3 _Absolute_644b798714827680b39bf5d34f70385f_Out_1_Vector3;
|
|
Unity_Absolute_float3(IN.WorldSpaceNormal, _Absolute_644b798714827680b39bf5d34f70385f_Out_1_Vector3);
|
|
float _Property_adc4c59482221c8aad681c6558728ac9_Out_0_Float = Vector1_E4D1C13A;
|
|
float3 _Power_ee478822a04529849ae8df1636c29fe2_Out_2_Vector3;
|
|
Unity_Power_float3(_Absolute_644b798714827680b39bf5d34f70385f_Out_1_Vector3, (_Property_adc4c59482221c8aad681c6558728ac9_Out_0_Float.xxx), _Power_ee478822a04529849ae8df1636c29fe2_Out_2_Vector3);
|
|
float3 _Multiply_b386a937554d73828e437d126d69608b_Out_2_Vector3;
|
|
Unity_Multiply_float3_float3(_Power_ee478822a04529849ae8df1636c29fe2_Out_2_Vector3, _Power_ee478822a04529849ae8df1636c29fe2_Out_2_Vector3, _Multiply_b386a937554d73828e437d126d69608b_Out_2_Vector3);
|
|
float _Split_ae83014fcbd9f7879a0b91fa66dc9718_R_1_Float = _Multiply_b386a937554d73828e437d126d69608b_Out_2_Vector3[0];
|
|
float _Split_ae83014fcbd9f7879a0b91fa66dc9718_G_2_Float = _Multiply_b386a937554d73828e437d126d69608b_Out_2_Vector3[1];
|
|
float _Split_ae83014fcbd9f7879a0b91fa66dc9718_B_3_Float = _Multiply_b386a937554d73828e437d126d69608b_Out_2_Vector3[2];
|
|
float _Split_ae83014fcbd9f7879a0b91fa66dc9718_A_4_Float = 0;
|
|
float4 _Multiply_2e1040ca9c98d085ace76ee93f094039_Out_2_Vector4;
|
|
Unity_Multiply_float4_float4(_SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_RGBA_0_Vector4, (_Split_ae83014fcbd9f7879a0b91fa66dc9718_G_2_Float.xxxx), _Multiply_2e1040ca9c98d085ace76ee93f094039_Out_2_Vector4);
|
|
float4 _Combine_192c2c4a69be588b90ca005a32e22552_RGBA_4_Vector4;
|
|
float3 _Combine_192c2c4a69be588b90ca005a32e22552_RGB_5_Vector3;
|
|
float2 _Combine_192c2c4a69be588b90ca005a32e22552_RG_6_Vector2;
|
|
Unity_Combine_float(_Split_89ed63cb625cb3878c183d0b71c03400_R_1_Float, _Split_89ed63cb625cb3878c183d0b71c03400_G_2_Float, float(0), float(0), _Combine_192c2c4a69be588b90ca005a32e22552_RGBA_4_Vector4, _Combine_192c2c4a69be588b90ca005a32e22552_RGB_5_Vector3, _Combine_192c2c4a69be588b90ca005a32e22552_RG_6_Vector2);
|
|
float4 _Multiply_138240d0d4846e87b0febabec0d6891b_Out_2_Vector4;
|
|
Unity_Multiply_float4_float4(_Combine_192c2c4a69be588b90ca005a32e22552_RGBA_4_Vector4, (_Property_47988ec10c0c18879d461e00bed806e7_Out_0_Float.xxxx), _Multiply_138240d0d4846e87b0febabec0d6891b_Out_2_Vector4);
|
|
float _Multiply_014402ded5a3988a8c18ba07636ea5a7_Out_2_Float;
|
|
Unity_Multiply_float_float(_Split_742547a7039de986a646d04c157ae549_B_3_Float, -1, _Multiply_014402ded5a3988a8c18ba07636ea5a7_Out_2_Float);
|
|
float2 _Vector2_caa25d55d456a58982bdfc39b1b43f3f_Out_0_Vector2 = float2(_Multiply_014402ded5a3988a8c18ba07636ea5a7_Out_2_Float, float(1));
|
|
float2 _Multiply_a67201b6e1a0a28c98cd9d06e8b09543_Out_2_Vector2;
|
|
Unity_Multiply_float2_float2((_Multiply_138240d0d4846e87b0febabec0d6891b_Out_2_Vector4.xy), _Vector2_caa25d55d456a58982bdfc39b1b43f3f_Out_0_Vector2, _Multiply_a67201b6e1a0a28c98cd9d06e8b09543_Out_2_Vector2);
|
|
float4 _SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_RGBA_0_Vector4 = SAMPLE_TEXTURE2D(_Property_3e01b4d2fc68d48ba3acbba9d5881e59_Out_0_Texture2D.tex, _Property_544c7fa9dfe54e30a0df9d605340a374_Out_0_SamplerState.samplerstate, _Property_3e01b4d2fc68d48ba3acbba9d5881e59_Out_0_Texture2D.GetTransformedUV(_Multiply_a67201b6e1a0a28c98cd9d06e8b09543_Out_2_Vector2) );
|
|
float _SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_R_4_Float = _SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_RGBA_0_Vector4.r;
|
|
float _SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_G_5_Float = _SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_RGBA_0_Vector4.g;
|
|
float _SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_B_6_Float = _SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_RGBA_0_Vector4.b;
|
|
float _SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_A_7_Float = _SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_RGBA_0_Vector4.a;
|
|
float4 _Multiply_7bb4009c92b108849ac6ca92bc1442f2_Out_2_Vector4;
|
|
Unity_Multiply_float4_float4(_SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_RGBA_0_Vector4, (_Split_ae83014fcbd9f7879a0b91fa66dc9718_B_3_Float.xxxx), _Multiply_7bb4009c92b108849ac6ca92bc1442f2_Out_2_Vector4);
|
|
float4 _Combine_1e9ffdba42d6918fb7a4b185f1585d2a_RGBA_4_Vector4;
|
|
float3 _Combine_1e9ffdba42d6918fb7a4b185f1585d2a_RGB_5_Vector3;
|
|
float2 _Combine_1e9ffdba42d6918fb7a4b185f1585d2a_RG_6_Vector2;
|
|
Unity_Combine_float(_Split_89ed63cb625cb3878c183d0b71c03400_B_3_Float, _Split_89ed63cb625cb3878c183d0b71c03400_G_2_Float, float(0), float(0), _Combine_1e9ffdba42d6918fb7a4b185f1585d2a_RGBA_4_Vector4, _Combine_1e9ffdba42d6918fb7a4b185f1585d2a_RGB_5_Vector3, _Combine_1e9ffdba42d6918fb7a4b185f1585d2a_RG_6_Vector2);
|
|
float4 _Multiply_2c0864423b014f8b8af8523f68cbb63c_Out_2_Vector4;
|
|
Unity_Multiply_float4_float4(_Combine_1e9ffdba42d6918fb7a4b185f1585d2a_RGBA_4_Vector4, (_Property_47988ec10c0c18879d461e00bed806e7_Out_0_Float.xxxx), _Multiply_2c0864423b014f8b8af8523f68cbb63c_Out_2_Vector4);
|
|
float2 _Vector2_54dfd40df2fc78809955dd272f2cf0c3_Out_0_Vector2 = float2(_Split_742547a7039de986a646d04c157ae549_R_1_Float, float(1));
|
|
float2 _Multiply_addbd5fcede95f80bbb806c94e49ef63_Out_2_Vector2;
|
|
Unity_Multiply_float2_float2((_Multiply_2c0864423b014f8b8af8523f68cbb63c_Out_2_Vector4.xy), _Vector2_54dfd40df2fc78809955dd272f2cf0c3_Out_0_Vector2, _Multiply_addbd5fcede95f80bbb806c94e49ef63_Out_2_Vector2);
|
|
float4 _SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_RGBA_0_Vector4 = SAMPLE_TEXTURE2D(_Property_3e01b4d2fc68d48ba3acbba9d5881e59_Out_0_Texture2D.tex, _Property_544c7fa9dfe54e30a0df9d605340a374_Out_0_SamplerState.samplerstate, _Property_3e01b4d2fc68d48ba3acbba9d5881e59_Out_0_Texture2D.GetTransformedUV(_Multiply_addbd5fcede95f80bbb806c94e49ef63_Out_2_Vector2) );
|
|
float _SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_R_4_Float = _SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_RGBA_0_Vector4.r;
|
|
float _SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_G_5_Float = _SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_RGBA_0_Vector4.g;
|
|
float _SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_B_6_Float = _SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_RGBA_0_Vector4.b;
|
|
float _SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_A_7_Float = _SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_RGBA_0_Vector4.a;
|
|
float4 _Multiply_77818c22e359fc8cbb7dd20216a8db72_Out_2_Vector4;
|
|
Unity_Multiply_float4_float4(_SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_RGBA_0_Vector4, (_Split_ae83014fcbd9f7879a0b91fa66dc9718_R_1_Float.xxxx), _Multiply_77818c22e359fc8cbb7dd20216a8db72_Out_2_Vector4);
|
|
float4 _Add_769d9ee909c9238dbbf72d2800a2f268_Out_2_Vector4;
|
|
Unity_Add_float4(_Multiply_7bb4009c92b108849ac6ca92bc1442f2_Out_2_Vector4, _Multiply_77818c22e359fc8cbb7dd20216a8db72_Out_2_Vector4, _Add_769d9ee909c9238dbbf72d2800a2f268_Out_2_Vector4);
|
|
float4 _Add_14295f72880e4b87a1baf1ced943ac40_Out_2_Vector4;
|
|
Unity_Add_float4(_Multiply_2e1040ca9c98d085ace76ee93f094039_Out_2_Vector4, _Add_769d9ee909c9238dbbf72d2800a2f268_Out_2_Vector4, _Add_14295f72880e4b87a1baf1ced943ac40_Out_2_Vector4);
|
|
float _Add_e59af300bba2498db32eac1412123447_Out_2_Float;
|
|
Unity_Add_float(_Split_ae83014fcbd9f7879a0b91fa66dc9718_R_1_Float, _Split_ae83014fcbd9f7879a0b91fa66dc9718_G_2_Float, _Add_e59af300bba2498db32eac1412123447_Out_2_Float);
|
|
float _Add_e855069f047fae8ea9027d56acb61e56_Out_2_Float;
|
|
Unity_Add_float(_Add_e59af300bba2498db32eac1412123447_Out_2_Float, _Split_ae83014fcbd9f7879a0b91fa66dc9718_B_3_Float, _Add_e855069f047fae8ea9027d56acb61e56_Out_2_Float);
|
|
float4 _Divide_91ae4b94f1d9b78e99d0472293b8098c_Out_2_Vector4;
|
|
Unity_Divide_float4(_Add_14295f72880e4b87a1baf1ced943ac40_Out_2_Vector4, (_Add_e855069f047fae8ea9027d56acb61e56_Out_2_Float.xxxx), _Divide_91ae4b94f1d9b78e99d0472293b8098c_Out_2_Vector4);
|
|
XYZ_1 = _Divide_91ae4b94f1d9b78e99d0472293b8098c_Out_2_Vector4;
|
|
XZ_2 = _SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_RGBA_0_Vector4;
|
|
YZ_3 = _SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_RGBA_0_Vector4;
|
|
XY_4 = _SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_RGBA_0_Vector4;
|
|
}
|
|
|
|
void Unity_Clamp_float(float In, float Min, float Max, out float Out)
|
|
{
|
|
Out = clamp(In, Min, Max);
|
|
}
|
|
|
|
void Unity_Absolute_float(float In, out float Out)
|
|
{
|
|
Out = abs(In);
|
|
}
|
|
|
|
void Unity_Power_float(float A, float B, out float Out)
|
|
{
|
|
Out = pow(A, B);
|
|
}
|
|
|
|
void Unity_Clamp_float4(float4 In, float4 Min, float4 Max, out float4 Out)
|
|
{
|
|
Out = clamp(In, Min, Max);
|
|
}
|
|
|
|
void Unity_Branch_float4(float Predicate, float4 True, float4 False, out float4 Out)
|
|
{
|
|
Out = Predicate ? True : False;
|
|
}
|
|
|
|
void Unity_TilingAndOffset_float(float2 UV, float2 Tiling, float2 Offset, out float2 Out)
|
|
{
|
|
Out = UV * Tiling + Offset;
|
|
}
|
|
|
|
void Unity_Saturate_float(float In, out float Out)
|
|
{
|
|
Out = saturate(In);
|
|
}
|
|
|
|
void Unity_SquareRoot_float4(float4 In, out float4 Out)
|
|
{
|
|
Out = sqrt(In);
|
|
}
|
|
|
|
void Unity_Sign_float(float In, out float Out)
|
|
{
|
|
Out = sign(In);
|
|
}
|
|
|
|
void Unity_Ceiling_float(float In, out float Out)
|
|
{
|
|
Out = ceil(In);
|
|
}
|
|
|
|
void Unity_Lerp_float4(float4 A, float4 B, float4 T, out float4 Out)
|
|
{
|
|
Out = lerp(A, B, T);
|
|
}
|
|
|
|
struct Bindings_BlendOverlayBaseColor_acdb3dfca72bd6b42bbc35f4613331a2_float
|
|
{
|
|
};
|
|
|
|
void SG_BlendOverlayBaseColor_acdb3dfca72bd6b42bbc35f4613331a2_float(float4 Color_9AA111D3, float Vector1_FBE622A2, float Vector1_8C15C351, Bindings_BlendOverlayBaseColor_acdb3dfca72bd6b42bbc35f4613331a2_float IN, out float3 OutVector4_1)
|
|
{
|
|
float4 _Property_012510d774fb7f8b860f5270dca4500f_Out_0_Vector4 = Color_9AA111D3;
|
|
float4 _SquareRoot_c2c57d0223a9538aa9240890c3cacb0c_Out_1_Vector4;
|
|
Unity_SquareRoot_float4(_Property_012510d774fb7f8b860f5270dca4500f_Out_0_Vector4, _SquareRoot_c2c57d0223a9538aa9240890c3cacb0c_Out_1_Vector4);
|
|
float _Property_a00e29241d12f983b30177515b367ec9_Out_0_Float = Vector1_FBE622A2;
|
|
float _Sign_343a45ede7349283a681c6bd9998fd8e_Out_1_Float;
|
|
Unity_Sign_float(_Property_a00e29241d12f983b30177515b367ec9_Out_0_Float, _Sign_343a45ede7349283a681c6bd9998fd8e_Out_1_Float);
|
|
float _Add_681019b8f5d3d68bb482d419c9fc61a9_Out_2_Float;
|
|
Unity_Add_float(_Sign_343a45ede7349283a681c6bd9998fd8e_Out_1_Float, float(1), _Add_681019b8f5d3d68bb482d419c9fc61a9_Out_2_Float);
|
|
float _Multiply_e8f4cb722712a880ac0db6c7461427f7_Out_2_Float;
|
|
Unity_Multiply_float_float(_Add_681019b8f5d3d68bb482d419c9fc61a9_Out_2_Float, 0.5, _Multiply_e8f4cb722712a880ac0db6c7461427f7_Out_2_Float);
|
|
float _Ceiling_95ad15988aa9b98184875fa754feae01_Out_1_Float;
|
|
Unity_Ceiling_float(_Multiply_e8f4cb722712a880ac0db6c7461427f7_Out_2_Float, _Ceiling_95ad15988aa9b98184875fa754feae01_Out_1_Float);
|
|
float _Property_2db1c747a05ee284a8b00076062f91a4_Out_0_Float = Vector1_8C15C351;
|
|
float _Multiply_9564ecda5193bc8286d9ff771c9226cd_Out_2_Float;
|
|
Unity_Multiply_float_float(_Property_2db1c747a05ee284a8b00076062f91a4_Out_0_Float, _Property_2db1c747a05ee284a8b00076062f91a4_Out_0_Float, _Multiply_9564ecda5193bc8286d9ff771c9226cd_Out_2_Float);
|
|
float4 _Lerp_b3cdb01fc3c5b988ac9b184943bf7c01_Out_3_Vector4;
|
|
Unity_Lerp_float4(_SquareRoot_c2c57d0223a9538aa9240890c3cacb0c_Out_1_Vector4, (_Ceiling_95ad15988aa9b98184875fa754feae01_Out_1_Float.xxxx), (_Multiply_9564ecda5193bc8286d9ff771c9226cd_Out_2_Float.xxxx), _Lerp_b3cdb01fc3c5b988ac9b184943bf7c01_Out_3_Vector4);
|
|
float4 _Multiply_39d1daff98488f8ea2cd794ad4f20926_Out_2_Vector4;
|
|
Unity_Multiply_float4_float4(_Lerp_b3cdb01fc3c5b988ac9b184943bf7c01_Out_3_Vector4, _Lerp_b3cdb01fc3c5b988ac9b184943bf7c01_Out_3_Vector4, _Multiply_39d1daff98488f8ea2cd794ad4f20926_Out_2_Vector4);
|
|
OutVector4_1 = (_Multiply_39d1daff98488f8ea2cd794ad4f20926_Out_2_Vector4.xyz);
|
|
}
|
|
|
|
void Unity_Add_float2(float2 A, float2 B, out float2 Out)
|
|
{
|
|
Out = A + B;
|
|
}
|
|
|
|
void Unity_DotProduct_float2(float2 A, float2 B, out float Out)
|
|
{
|
|
Out = dot(A, B);
|
|
}
|
|
|
|
void Unity_OneMinus_float(float In, out float Out)
|
|
{
|
|
Out = 1 - In;
|
|
}
|
|
|
|
void Unity_SquareRoot_float(float In, out float Out)
|
|
{
|
|
Out = sqrt(In);
|
|
}
|
|
|
|
void Unity_Add_float3(float3 A, float3 B, out float3 Out)
|
|
{
|
|
Out = A + B;
|
|
}
|
|
|
|
void Unity_Divide_float3(float3 A, float3 B, out float3 Out)
|
|
{
|
|
Out = A / B;
|
|
}
|
|
|
|
void Unity_Normalize_float3(float3 In, out float3 Out)
|
|
{
|
|
Out = normalize(In);
|
|
}
|
|
|
|
struct Bindings_TriplanarNMn_059da9746584140498cd018db3c76047_float
|
|
{
|
|
float3 WorldSpaceNormal;
|
|
float3 WorldSpaceTangent;
|
|
float3 WorldSpaceBiTangent;
|
|
float3 AbsoluteWorldSpacePosition;
|
|
};
|
|
|
|
void SG_TriplanarNMn_059da9746584140498cd018db3c76047_float(UnityTexture2D Texture2D_80A3D28F, float Vector1_41461AC9, float Vector1_E4D1C13A, UnitySamplerState _SamplerState, Bindings_TriplanarNMn_059da9746584140498cd018db3c76047_float IN, out float4 XYZ_1, out float4 XZ_2, out float4 YZ_3, out float4 XY_4)
|
|
{
|
|
UnityTexture2D _Property_3e01b4d2fc68d48ba3acbba9d5881e59_Out_0_Texture2D = Texture2D_80A3D28F;
|
|
float _Split_89ed63cb625cb3878c183d0b71c03400_R_1_Float = IN.AbsoluteWorldSpacePosition[0];
|
|
float _Split_89ed63cb625cb3878c183d0b71c03400_G_2_Float = IN.AbsoluteWorldSpacePosition[1];
|
|
float _Split_89ed63cb625cb3878c183d0b71c03400_B_3_Float = IN.AbsoluteWorldSpacePosition[2];
|
|
float _Split_89ed63cb625cb3878c183d0b71c03400_A_4_Float = 0;
|
|
float4 _Combine_cf2d04ff119ad88493f6460431765cbb_RGBA_4_Vector4;
|
|
float3 _Combine_cf2d04ff119ad88493f6460431765cbb_RGB_5_Vector3;
|
|
float2 _Combine_cf2d04ff119ad88493f6460431765cbb_RG_6_Vector2;
|
|
Unity_Combine_float(_Split_89ed63cb625cb3878c183d0b71c03400_R_1_Float, _Split_89ed63cb625cb3878c183d0b71c03400_B_3_Float, float(0), float(0), _Combine_cf2d04ff119ad88493f6460431765cbb_RGBA_4_Vector4, _Combine_cf2d04ff119ad88493f6460431765cbb_RGB_5_Vector3, _Combine_cf2d04ff119ad88493f6460431765cbb_RG_6_Vector2);
|
|
float _Property_47988ec10c0c18879d461e00bed806e7_Out_0_Float = Vector1_41461AC9;
|
|
float4 _Multiply_14cec4902d0a00829e4555071a1b8ad1_Out_2_Vector4;
|
|
Unity_Multiply_float4_float4(_Combine_cf2d04ff119ad88493f6460431765cbb_RGBA_4_Vector4, (_Property_47988ec10c0c18879d461e00bed806e7_Out_0_Float.xxxx), _Multiply_14cec4902d0a00829e4555071a1b8ad1_Out_2_Vector4);
|
|
float3 _Sign_3a6ebf59931cf08cb0482e0144ddac24_Out_1_Vector3;
|
|
Unity_Sign_float3(IN.WorldSpaceNormal, _Sign_3a6ebf59931cf08cb0482e0144ddac24_Out_1_Vector3);
|
|
float _Split_6299d4ddcc4c74828aea40a46fdb896e_R_1_Float = _Sign_3a6ebf59931cf08cb0482e0144ddac24_Out_1_Vector3[0];
|
|
float _Split_6299d4ddcc4c74828aea40a46fdb896e_G_2_Float = _Sign_3a6ebf59931cf08cb0482e0144ddac24_Out_1_Vector3[1];
|
|
float _Split_6299d4ddcc4c74828aea40a46fdb896e_B_3_Float = _Sign_3a6ebf59931cf08cb0482e0144ddac24_Out_1_Vector3[2];
|
|
float _Split_6299d4ddcc4c74828aea40a46fdb896e_A_4_Float = 0;
|
|
float2 _Vector2_b76cb1842101e58b9e636d49b075c612_Out_0_Vector2 = float2(_Split_6299d4ddcc4c74828aea40a46fdb896e_G_2_Float, float(1));
|
|
float2 _Multiply_a87753ad90594382bf3a3a95abbadbc8_Out_2_Vector2;
|
|
Unity_Multiply_float2_float2((_Multiply_14cec4902d0a00829e4555071a1b8ad1_Out_2_Vector4.xy), _Vector2_b76cb1842101e58b9e636d49b075c612_Out_0_Vector2, _Multiply_a87753ad90594382bf3a3a95abbadbc8_Out_2_Vector2);
|
|
UnitySamplerState _Property_8a2b8589cd3a42a1879a29c28e4f711f_Out_0_SamplerState = _SamplerState;
|
|
float4 _SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_RGBA_0_Vector4 = SAMPLE_TEXTURE2D(_Property_3e01b4d2fc68d48ba3acbba9d5881e59_Out_0_Texture2D.tex, _Property_8a2b8589cd3a42a1879a29c28e4f711f_Out_0_SamplerState.samplerstate, _Property_3e01b4d2fc68d48ba3acbba9d5881e59_Out_0_Texture2D.GetTransformedUV(_Multiply_a87753ad90594382bf3a3a95abbadbc8_Out_2_Vector2) );
|
|
_SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_RGBA_0_Vector4.rgb = UnpackNormal(_SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_RGBA_0_Vector4);
|
|
float _SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_R_4_Float = _SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_RGBA_0_Vector4.r;
|
|
float _SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_G_5_Float = _SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_RGBA_0_Vector4.g;
|
|
float _SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_B_6_Float = _SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_RGBA_0_Vector4.b;
|
|
float _SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_A_7_Float = _SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_RGBA_0_Vector4.a;
|
|
float2 _Vector2_ad6bd100e273d78fa409a30a77bfa2cc_Out_0_Vector2 = float2(_SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_R_4_Float, _SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_G_5_Float);
|
|
float2 _Multiply_31e8db88ee20c985a9850d1a58f3282b_Out_2_Vector2;
|
|
Unity_Multiply_float2_float2(_Vector2_ad6bd100e273d78fa409a30a77bfa2cc_Out_0_Vector2, _Vector2_b76cb1842101e58b9e636d49b075c612_Out_0_Vector2, _Multiply_31e8db88ee20c985a9850d1a58f3282b_Out_2_Vector2);
|
|
float _Split_5ed44bf2eca0868f81eb18100f49d1fa_R_1_Float = IN.WorldSpaceNormal[0];
|
|
float _Split_5ed44bf2eca0868f81eb18100f49d1fa_G_2_Float = IN.WorldSpaceNormal[1];
|
|
float _Split_5ed44bf2eca0868f81eb18100f49d1fa_B_3_Float = IN.WorldSpaceNormal[2];
|
|
float _Split_5ed44bf2eca0868f81eb18100f49d1fa_A_4_Float = 0;
|
|
float2 _Vector2_70e5837843f28b8b9d64cada3697bd5a_Out_0_Vector2 = float2(_Split_5ed44bf2eca0868f81eb18100f49d1fa_R_1_Float, _Split_5ed44bf2eca0868f81eb18100f49d1fa_B_3_Float);
|
|
float2 _Add_1145b2f896593d80aa864a34e6702562_Out_2_Vector2;
|
|
Unity_Add_float2(_Multiply_31e8db88ee20c985a9850d1a58f3282b_Out_2_Vector2, _Vector2_70e5837843f28b8b9d64cada3697bd5a_Out_0_Vector2, _Add_1145b2f896593d80aa864a34e6702562_Out_2_Vector2);
|
|
float _Split_2bc77ca2d17bd78cb2383770ce50b179_R_1_Float = _Add_1145b2f896593d80aa864a34e6702562_Out_2_Vector2[0];
|
|
float _Split_2bc77ca2d17bd78cb2383770ce50b179_G_2_Float = _Add_1145b2f896593d80aa864a34e6702562_Out_2_Vector2[1];
|
|
float _Split_2bc77ca2d17bd78cb2383770ce50b179_B_3_Float = 0;
|
|
float _Split_2bc77ca2d17bd78cb2383770ce50b179_A_4_Float = 0;
|
|
float _Multiply_e4fe778b81456d819c52bb414cd95968_Out_2_Float;
|
|
Unity_Multiply_float_float(_SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_B_6_Float, _Split_5ed44bf2eca0868f81eb18100f49d1fa_G_2_Float, _Multiply_e4fe778b81456d819c52bb414cd95968_Out_2_Float);
|
|
float3 _Vector3_08f62c5c01619e849f1a7d85a44531ac_Out_0_Vector3 = float3(_Split_2bc77ca2d17bd78cb2383770ce50b179_R_1_Float, _Multiply_e4fe778b81456d819c52bb414cd95968_Out_2_Float, _Split_2bc77ca2d17bd78cb2383770ce50b179_G_2_Float);
|
|
float3 _Absolute_644b798714827680b39bf5d34f70385f_Out_1_Vector3;
|
|
Unity_Absolute_float3(IN.WorldSpaceNormal, _Absolute_644b798714827680b39bf5d34f70385f_Out_1_Vector3);
|
|
float _Property_adc4c59482221c8aad681c6558728ac9_Out_0_Float = Vector1_E4D1C13A;
|
|
float3 _Power_ee478822a04529849ae8df1636c29fe2_Out_2_Vector3;
|
|
Unity_Power_float3(_Absolute_644b798714827680b39bf5d34f70385f_Out_1_Vector3, (_Property_adc4c59482221c8aad681c6558728ac9_Out_0_Float.xxx), _Power_ee478822a04529849ae8df1636c29fe2_Out_2_Vector3);
|
|
float3 _Multiply_b386a937554d73828e437d126d69608b_Out_2_Vector3;
|
|
Unity_Multiply_float3_float3(_Power_ee478822a04529849ae8df1636c29fe2_Out_2_Vector3, _Power_ee478822a04529849ae8df1636c29fe2_Out_2_Vector3, _Multiply_b386a937554d73828e437d126d69608b_Out_2_Vector3);
|
|
float _Split_ae83014fcbd9f7879a0b91fa66dc9718_R_1_Float = _Multiply_b386a937554d73828e437d126d69608b_Out_2_Vector3[0];
|
|
float _Split_ae83014fcbd9f7879a0b91fa66dc9718_G_2_Float = _Multiply_b386a937554d73828e437d126d69608b_Out_2_Vector3[1];
|
|
float _Split_ae83014fcbd9f7879a0b91fa66dc9718_B_3_Float = _Multiply_b386a937554d73828e437d126d69608b_Out_2_Vector3[2];
|
|
float _Split_ae83014fcbd9f7879a0b91fa66dc9718_A_4_Float = 0;
|
|
float3 _Multiply_2e1040ca9c98d085ace76ee93f094039_Out_2_Vector3;
|
|
Unity_Multiply_float3_float3(_Vector3_08f62c5c01619e849f1a7d85a44531ac_Out_0_Vector3, (_Split_ae83014fcbd9f7879a0b91fa66dc9718_G_2_Float.xxx), _Multiply_2e1040ca9c98d085ace76ee93f094039_Out_2_Vector3);
|
|
float4 _Combine_192c2c4a69be588b90ca005a32e22552_RGBA_4_Vector4;
|
|
float3 _Combine_192c2c4a69be588b90ca005a32e22552_RGB_5_Vector3;
|
|
float2 _Combine_192c2c4a69be588b90ca005a32e22552_RG_6_Vector2;
|
|
Unity_Combine_float(_Split_89ed63cb625cb3878c183d0b71c03400_R_1_Float, _Split_89ed63cb625cb3878c183d0b71c03400_G_2_Float, float(0), float(0), _Combine_192c2c4a69be588b90ca005a32e22552_RGBA_4_Vector4, _Combine_192c2c4a69be588b90ca005a32e22552_RGB_5_Vector3, _Combine_192c2c4a69be588b90ca005a32e22552_RG_6_Vector2);
|
|
float4 _Multiply_138240d0d4846e87b0febabec0d6891b_Out_2_Vector4;
|
|
Unity_Multiply_float4_float4(_Combine_192c2c4a69be588b90ca005a32e22552_RGBA_4_Vector4, (_Property_47988ec10c0c18879d461e00bed806e7_Out_0_Float.xxxx), _Multiply_138240d0d4846e87b0febabec0d6891b_Out_2_Vector4);
|
|
float _Multiply_de711f4a4614bd89a463b53374cf4036_Out_2_Float;
|
|
Unity_Multiply_float_float(_Split_6299d4ddcc4c74828aea40a46fdb896e_B_3_Float, -1, _Multiply_de711f4a4614bd89a463b53374cf4036_Out_2_Float);
|
|
float2 _Vector2_4ed33f0c73b2698fa6f3c1b77fe76808_Out_0_Vector2 = float2(_Multiply_de711f4a4614bd89a463b53374cf4036_Out_2_Float, float(1));
|
|
float2 _Multiply_2af6058cc6ccb88caefd2799bb5941e8_Out_2_Vector2;
|
|
Unity_Multiply_float2_float2((_Multiply_138240d0d4846e87b0febabec0d6891b_Out_2_Vector4.xy), _Vector2_4ed33f0c73b2698fa6f3c1b77fe76808_Out_0_Vector2, _Multiply_2af6058cc6ccb88caefd2799bb5941e8_Out_2_Vector2);
|
|
float4 _SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_RGBA_0_Vector4 = SAMPLE_TEXTURE2D(_Property_3e01b4d2fc68d48ba3acbba9d5881e59_Out_0_Texture2D.tex, _Property_8a2b8589cd3a42a1879a29c28e4f711f_Out_0_SamplerState.samplerstate, _Property_3e01b4d2fc68d48ba3acbba9d5881e59_Out_0_Texture2D.GetTransformedUV(_Multiply_2af6058cc6ccb88caefd2799bb5941e8_Out_2_Vector2) );
|
|
_SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_RGBA_0_Vector4.rgb = UnpackNormal(_SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_RGBA_0_Vector4);
|
|
float _SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_R_4_Float = _SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_RGBA_0_Vector4.r;
|
|
float _SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_G_5_Float = _SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_RGBA_0_Vector4.g;
|
|
float _SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_B_6_Float = _SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_RGBA_0_Vector4.b;
|
|
float _SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_A_7_Float = _SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_RGBA_0_Vector4.a;
|
|
float2 _Vector2_fe9aedd4528c7486ada4abdca0b0944e_Out_0_Vector2 = float2(_SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_R_4_Float, _SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_G_5_Float);
|
|
float2 _Multiply_02b9b4665ad9918d8721bcaddc82f06f_Out_2_Vector2;
|
|
Unity_Multiply_float2_float2(_Vector2_fe9aedd4528c7486ada4abdca0b0944e_Out_0_Vector2, _Vector2_4ed33f0c73b2698fa6f3c1b77fe76808_Out_0_Vector2, _Multiply_02b9b4665ad9918d8721bcaddc82f06f_Out_2_Vector2);
|
|
float2 _Vector2_a74a85274da15181abb63cc5e8df0de1_Out_0_Vector2 = float2(_Split_5ed44bf2eca0868f81eb18100f49d1fa_R_1_Float, _Split_5ed44bf2eca0868f81eb18100f49d1fa_G_2_Float);
|
|
float2 _Add_b227c84042055e8faa1a9fdc69529707_Out_2_Vector2;
|
|
Unity_Add_float2(_Multiply_02b9b4665ad9918d8721bcaddc82f06f_Out_2_Vector2, _Vector2_a74a85274da15181abb63cc5e8df0de1_Out_0_Vector2, _Add_b227c84042055e8faa1a9fdc69529707_Out_2_Vector2);
|
|
float _Split_2cfb9eacd8762483941459cdf28bda97_R_1_Float = _Add_b227c84042055e8faa1a9fdc69529707_Out_2_Vector2[0];
|
|
float _Split_2cfb9eacd8762483941459cdf28bda97_G_2_Float = _Add_b227c84042055e8faa1a9fdc69529707_Out_2_Vector2[1];
|
|
float _Split_2cfb9eacd8762483941459cdf28bda97_B_3_Float = 0;
|
|
float _Split_2cfb9eacd8762483941459cdf28bda97_A_4_Float = 0;
|
|
float _Multiply_1d65ce08ce672087879125f2e13c4004_Out_2_Float;
|
|
Unity_Multiply_float_float(_SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_B_6_Float, _Split_5ed44bf2eca0868f81eb18100f49d1fa_B_3_Float, _Multiply_1d65ce08ce672087879125f2e13c4004_Out_2_Float);
|
|
float3 _Vector3_ba6cfb4671e8c58f9b41ea1dc23102ca_Out_0_Vector3 = float3(_Split_2cfb9eacd8762483941459cdf28bda97_R_1_Float, _Split_2cfb9eacd8762483941459cdf28bda97_G_2_Float, _Multiply_1d65ce08ce672087879125f2e13c4004_Out_2_Float);
|
|
float3 _Multiply_7bb4009c92b108849ac6ca92bc1442f2_Out_2_Vector3;
|
|
Unity_Multiply_float3_float3(_Vector3_ba6cfb4671e8c58f9b41ea1dc23102ca_Out_0_Vector3, (_Split_ae83014fcbd9f7879a0b91fa66dc9718_B_3_Float.xxx), _Multiply_7bb4009c92b108849ac6ca92bc1442f2_Out_2_Vector3);
|
|
float4 _Combine_1e9ffdba42d6918fb7a4b185f1585d2a_RGBA_4_Vector4;
|
|
float3 _Combine_1e9ffdba42d6918fb7a4b185f1585d2a_RGB_5_Vector3;
|
|
float2 _Combine_1e9ffdba42d6918fb7a4b185f1585d2a_RG_6_Vector2;
|
|
Unity_Combine_float(_Split_89ed63cb625cb3878c183d0b71c03400_B_3_Float, _Split_89ed63cb625cb3878c183d0b71c03400_G_2_Float, float(0), float(0), _Combine_1e9ffdba42d6918fb7a4b185f1585d2a_RGBA_4_Vector4, _Combine_1e9ffdba42d6918fb7a4b185f1585d2a_RGB_5_Vector3, _Combine_1e9ffdba42d6918fb7a4b185f1585d2a_RG_6_Vector2);
|
|
float4 _Multiply_2c0864423b014f8b8af8523f68cbb63c_Out_2_Vector4;
|
|
Unity_Multiply_float4_float4(_Combine_1e9ffdba42d6918fb7a4b185f1585d2a_RGBA_4_Vector4, (_Property_47988ec10c0c18879d461e00bed806e7_Out_0_Float.xxxx), _Multiply_2c0864423b014f8b8af8523f68cbb63c_Out_2_Vector4);
|
|
float2 _Vector2_a1e23e0f921b6484818f009a2b12a5ba_Out_0_Vector2 = float2(_Split_6299d4ddcc4c74828aea40a46fdb896e_R_1_Float, float(1));
|
|
float2 _Multiply_862402885a49f18cb87278ab53bc6744_Out_2_Vector2;
|
|
Unity_Multiply_float2_float2((_Multiply_2c0864423b014f8b8af8523f68cbb63c_Out_2_Vector4.xy), _Vector2_a1e23e0f921b6484818f009a2b12a5ba_Out_0_Vector2, _Multiply_862402885a49f18cb87278ab53bc6744_Out_2_Vector2);
|
|
float4 _SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_RGBA_0_Vector4 = SAMPLE_TEXTURE2D(_Property_3e01b4d2fc68d48ba3acbba9d5881e59_Out_0_Texture2D.tex, _Property_8a2b8589cd3a42a1879a29c28e4f711f_Out_0_SamplerState.samplerstate, _Property_3e01b4d2fc68d48ba3acbba9d5881e59_Out_0_Texture2D.GetTransformedUV(_Multiply_862402885a49f18cb87278ab53bc6744_Out_2_Vector2) );
|
|
_SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_RGBA_0_Vector4.rgb = UnpackNormal(_SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_RGBA_0_Vector4);
|
|
float _SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_R_4_Float = _SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_RGBA_0_Vector4.r;
|
|
float _SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_G_5_Float = _SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_RGBA_0_Vector4.g;
|
|
float _SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_B_6_Float = _SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_RGBA_0_Vector4.b;
|
|
float _SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_A_7_Float = _SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_RGBA_0_Vector4.a;
|
|
float _Multiply_4649b768be76d784a3284bacde795359_Out_2_Float;
|
|
Unity_Multiply_float_float(_SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_B_6_Float, _Split_5ed44bf2eca0868f81eb18100f49d1fa_R_1_Float, _Multiply_4649b768be76d784a3284bacde795359_Out_2_Float);
|
|
float2 _Vector2_819fcd5eb484438eacad1987576d7d67_Out_0_Vector2 = float2(_SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_R_4_Float, _SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_G_5_Float);
|
|
float2 _Multiply_58530ebb3c6d798b93686a76247bf505_Out_2_Vector2;
|
|
Unity_Multiply_float2_float2(_Vector2_819fcd5eb484438eacad1987576d7d67_Out_0_Vector2, _Vector2_a1e23e0f921b6484818f009a2b12a5ba_Out_0_Vector2, _Multiply_58530ebb3c6d798b93686a76247bf505_Out_2_Vector2);
|
|
float2 _Vector2_e293c112b2f49e88a5fe46dfb1fbeb40_Out_0_Vector2 = float2(_Split_5ed44bf2eca0868f81eb18100f49d1fa_B_3_Float, _Split_5ed44bf2eca0868f81eb18100f49d1fa_G_2_Float);
|
|
float2 _Add_cf00fb232c6e2b8e973ab2f84453f55e_Out_2_Vector2;
|
|
Unity_Add_float2(_Multiply_58530ebb3c6d798b93686a76247bf505_Out_2_Vector2, _Vector2_e293c112b2f49e88a5fe46dfb1fbeb40_Out_0_Vector2, _Add_cf00fb232c6e2b8e973ab2f84453f55e_Out_2_Vector2);
|
|
float _Split_3ea3e61d32bdd78f82c686b75ff3fd9b_R_1_Float = _Add_cf00fb232c6e2b8e973ab2f84453f55e_Out_2_Vector2[0];
|
|
float _Split_3ea3e61d32bdd78f82c686b75ff3fd9b_G_2_Float = _Add_cf00fb232c6e2b8e973ab2f84453f55e_Out_2_Vector2[1];
|
|
float _Split_3ea3e61d32bdd78f82c686b75ff3fd9b_B_3_Float = 0;
|
|
float _Split_3ea3e61d32bdd78f82c686b75ff3fd9b_A_4_Float = 0;
|
|
float3 _Vector3_13a08d5940172a84a78ee3d9b8766833_Out_0_Vector3 = float3(_Multiply_4649b768be76d784a3284bacde795359_Out_2_Float, _Split_3ea3e61d32bdd78f82c686b75ff3fd9b_G_2_Float, _Split_3ea3e61d32bdd78f82c686b75ff3fd9b_R_1_Float);
|
|
float3 _Multiply_77818c22e359fc8cbb7dd20216a8db72_Out_2_Vector3;
|
|
Unity_Multiply_float3_float3(_Vector3_13a08d5940172a84a78ee3d9b8766833_Out_0_Vector3, (_Split_ae83014fcbd9f7879a0b91fa66dc9718_R_1_Float.xxx), _Multiply_77818c22e359fc8cbb7dd20216a8db72_Out_2_Vector3);
|
|
float3 _Add_769d9ee909c9238dbbf72d2800a2f268_Out_2_Vector3;
|
|
Unity_Add_float3(_Multiply_7bb4009c92b108849ac6ca92bc1442f2_Out_2_Vector3, _Multiply_77818c22e359fc8cbb7dd20216a8db72_Out_2_Vector3, _Add_769d9ee909c9238dbbf72d2800a2f268_Out_2_Vector3);
|
|
float3 _Add_14295f72880e4b87a1baf1ced943ac40_Out_2_Vector3;
|
|
Unity_Add_float3(_Multiply_2e1040ca9c98d085ace76ee93f094039_Out_2_Vector3, _Add_769d9ee909c9238dbbf72d2800a2f268_Out_2_Vector3, _Add_14295f72880e4b87a1baf1ced943ac40_Out_2_Vector3);
|
|
float _Add_e59af300bba2498db32eac1412123447_Out_2_Float;
|
|
Unity_Add_float(_Split_ae83014fcbd9f7879a0b91fa66dc9718_R_1_Float, _Split_ae83014fcbd9f7879a0b91fa66dc9718_G_2_Float, _Add_e59af300bba2498db32eac1412123447_Out_2_Float);
|
|
float _Add_e855069f047fae8ea9027d56acb61e56_Out_2_Float;
|
|
Unity_Add_float(_Add_e59af300bba2498db32eac1412123447_Out_2_Float, _Split_ae83014fcbd9f7879a0b91fa66dc9718_B_3_Float, _Add_e855069f047fae8ea9027d56acb61e56_Out_2_Float);
|
|
float3 _Divide_91ae4b94f1d9b78e99d0472293b8098c_Out_2_Vector3;
|
|
Unity_Divide_float3(_Add_14295f72880e4b87a1baf1ced943ac40_Out_2_Vector3, (_Add_e855069f047fae8ea9027d56acb61e56_Out_2_Float.xxx), _Divide_91ae4b94f1d9b78e99d0472293b8098c_Out_2_Vector3);
|
|
float3 _Transform_73eecc0c3689d184a34c8d0f28a58adf_Out_1_Vector3;
|
|
{
|
|
float3x3 tangentTransform = float3x3(IN.WorldSpaceTangent, IN.WorldSpaceBiTangent, IN.WorldSpaceNormal);
|
|
_Transform_73eecc0c3689d184a34c8d0f28a58adf_Out_1_Vector3 = TransformWorldToTangent(_Divide_91ae4b94f1d9b78e99d0472293b8098c_Out_2_Vector3.xyz, tangentTransform, true);
|
|
}
|
|
float3 _Normalize_15ef346824db0a8797631ed8b998e673_Out_1_Vector3;
|
|
Unity_Normalize_float3(_Transform_73eecc0c3689d184a34c8d0f28a58adf_Out_1_Vector3, _Normalize_15ef346824db0a8797631ed8b998e673_Out_1_Vector3);
|
|
XYZ_1 = (float4(_Normalize_15ef346824db0a8797631ed8b998e673_Out_1_Vector3, 1.0));
|
|
XZ_2 = (float4(_Vector3_08f62c5c01619e849f1a7d85a44531ac_Out_0_Vector3, 1.0));
|
|
YZ_3 = (float4(_Vector3_ba6cfb4671e8c58f9b41ea1dc23102ca_Out_0_Vector3, 1.0));
|
|
XY_4 = (float4(_Vector3_13a08d5940172a84a78ee3d9b8766833_Out_0_Vector3, 1.0));
|
|
}
|
|
|
|
void Unity_NormalStrength_float(float3 In, float Strength, out float3 Out)
|
|
{
|
|
Out = float3(In.rg * Strength, lerp(1, In.b, saturate(Strength)));
|
|
}
|
|
|
|
void Unity_NormalBlend_float(float3 A, float3 B, out float3 Out)
|
|
{
|
|
Out = SafeNormalize(float3(A.rg + B.rg, A.b * B.b));
|
|
}
|
|
|
|
void Unity_Subtract_float(float A, float B, out float Out)
|
|
{
|
|
Out = A - B;
|
|
}
|
|
|
|
void Unity_Divide_float(float A, float B, out float Out)
|
|
{
|
|
Out = A / B;
|
|
}
|
|
|
|
void Unity_Lerp_float3(float3 A, float3 B, float3 T, out float3 Out)
|
|
{
|
|
Out = lerp(A, B, T);
|
|
}
|
|
|
|
void Unity_Remap_float(float In, float2 InMinMax, float2 OutMinMax, out float Out)
|
|
{
|
|
Out = OutMinMax.x + (In - InMinMax.x) * (OutMinMax.y - OutMinMax.x) / (InMinMax.y - InMinMax.x);
|
|
}
|
|
|
|
void Unity_Branch_float(float Predicate, float True, float False, out float Out)
|
|
{
|
|
Out = Predicate ? True : False;
|
|
}
|
|
|
|
void Unity_Lerp_float(float A, float B, float T, out float Out)
|
|
{
|
|
Out = lerp(A, B, T);
|
|
}
|
|
|
|
struct Bindings_BlendOverlayDetailSmoothness_06e12138dc89c0040b45a57abe520a1a_float
|
|
{
|
|
};
|
|
|
|
void SG_BlendOverlayDetailSmoothness_06e12138dc89c0040b45a57abe520a1a_float(float Vector1_32317166, float Vector1_FBE622A2, float Vector1_8C15C351, Bindings_BlendOverlayDetailSmoothness_06e12138dc89c0040b45a57abe520a1a_float IN, out float SmoothnessOverlay_1)
|
|
{
|
|
float _Property_728cc50521e9e988ac9cbff4872d5139_Out_0_Float = Vector1_32317166;
|
|
float _Property_a00e29241d12f983b30177515b367ec9_Out_0_Float = Vector1_FBE622A2;
|
|
float _Sign_343a45ede7349283a681c6bd9998fd8e_Out_1_Float;
|
|
Unity_Sign_float(_Property_a00e29241d12f983b30177515b367ec9_Out_0_Float, _Sign_343a45ede7349283a681c6bd9998fd8e_Out_1_Float);
|
|
float _Add_681019b8f5d3d68bb482d419c9fc61a9_Out_2_Float;
|
|
Unity_Add_float(_Sign_343a45ede7349283a681c6bd9998fd8e_Out_1_Float, float(1), _Add_681019b8f5d3d68bb482d419c9fc61a9_Out_2_Float);
|
|
float _Multiply_e8f4cb722712a880ac0db6c7461427f7_Out_2_Float;
|
|
Unity_Multiply_float_float(_Add_681019b8f5d3d68bb482d419c9fc61a9_Out_2_Float, 0.5, _Multiply_e8f4cb722712a880ac0db6c7461427f7_Out_2_Float);
|
|
float _Ceiling_95ad15988aa9b98184875fa754feae01_Out_1_Float;
|
|
Unity_Ceiling_float(_Multiply_e8f4cb722712a880ac0db6c7461427f7_Out_2_Float, _Ceiling_95ad15988aa9b98184875fa754feae01_Out_1_Float);
|
|
float _Property_2db1c747a05ee284a8b00076062f91a4_Out_0_Float = Vector1_8C15C351;
|
|
float _Lerp_b3cdb01fc3c5b988ac9b184943bf7c01_Out_3_Float;
|
|
Unity_Lerp_float(_Property_728cc50521e9e988ac9cbff4872d5139_Out_0_Float, _Ceiling_95ad15988aa9b98184875fa754feae01_Out_1_Float, _Property_2db1c747a05ee284a8b00076062f91a4_Out_0_Float, _Lerp_b3cdb01fc3c5b988ac9b184943bf7c01_Out_3_Float);
|
|
SmoothnessOverlay_1 = _Lerp_b3cdb01fc3c5b988ac9b184943bf7c01_Out_3_Float;
|
|
}
|
|
|
|
void Unity_Minimum_float(float A, float B, out float Out)
|
|
{
|
|
Out = min(A, B);
|
|
};
|
|
|
|
// Graph Vertex
|
|
struct VertexDescription
|
|
{
|
|
float3 Position;
|
|
float3 Normal;
|
|
float3 Tangent;
|
|
};
|
|
|
|
VertexDescription VertexDescriptionFunction(VertexDescriptionInputs IN)
|
|
{
|
|
VertexDescription description = (VertexDescription)0;
|
|
description.Position = IN.ObjectSpacePosition;
|
|
description.Normal = IN.ObjectSpaceNormal;
|
|
description.Tangent = IN.ObjectSpaceTangent;
|
|
return description;
|
|
}
|
|
|
|
// Graph Pixel
|
|
struct SurfaceDescription
|
|
{
|
|
float3 BaseColor;
|
|
float3 Emission;
|
|
float Alpha;
|
|
float3 BentNormal;
|
|
float Smoothness;
|
|
float Occlusion;
|
|
float3 NormalTS;
|
|
float Metallic;
|
|
};
|
|
|
|
SurfaceDescription SurfaceDescriptionFunction(SurfaceDescriptionInputs IN)
|
|
{
|
|
SurfaceDescription surface = (SurfaceDescription)0;
|
|
float _Property_72a5c604805a7b8ebbfd7acee03656aa_Out_0_Boolean = _CoverMaskRCurvature;
|
|
UnityTexture2D _Property_5f029bbc9f13b7858650859c3b63ebfd_Out_0_Texture2D = UnityBuildTexture2DStructNoScale(_BaseColorMap);
|
|
float4 _Property_a409d5fcafb9f182a4b2aea64204408f_Out_0_Vector4 = _BaseTilingOffset;
|
|
float4 _Divide_6a90cebe78e620828de587523daaa7e6_Out_2_Vector4;
|
|
Unity_Divide_float4(float4(1, 1, 0, 0), _Property_a409d5fcafb9f182a4b2aea64204408f_Out_0_Vector4, _Divide_6a90cebe78e620828de587523daaa7e6_Out_2_Vector4);
|
|
float _Property_3539de8c698c2981bb3c088d4ec52201_Out_0_Float = _BaseTriplanarThreshold;
|
|
Bindings_TriplanarNM_bc609ed95f52591469ab35dbfe0efcea_float _TriplanarNM_92d0433ff3938b8392407d2ab8713ac8;
|
|
_TriplanarNM_92d0433ff3938b8392407d2ab8713ac8.WorldSpaceNormal = IN.WorldSpaceNormal;
|
|
_TriplanarNM_92d0433ff3938b8392407d2ab8713ac8.AbsoluteWorldSpacePosition = IN.AbsoluteWorldSpacePosition;
|
|
float4 _TriplanarNM_92d0433ff3938b8392407d2ab8713ac8_XYZ_1_Vector4;
|
|
float4 _TriplanarNM_92d0433ff3938b8392407d2ab8713ac8_XZ_2_Vector4;
|
|
float4 _TriplanarNM_92d0433ff3938b8392407d2ab8713ac8_YZ_3_Vector4;
|
|
float4 _TriplanarNM_92d0433ff3938b8392407d2ab8713ac8_XY_4_Vector4;
|
|
SG_TriplanarNM_bc609ed95f52591469ab35dbfe0efcea_float(_Property_5f029bbc9f13b7858650859c3b63ebfd_Out_0_Texture2D, (_Divide_6a90cebe78e620828de587523daaa7e6_Out_2_Vector4).x, _Property_3539de8c698c2981bb3c088d4ec52201_Out_0_Float, UnityBuildSamplerStateStruct(SamplerState_Linear_Repeat_Aniso8), _TriplanarNM_92d0433ff3938b8392407d2ab8713ac8, _TriplanarNM_92d0433ff3938b8392407d2ab8713ac8_XYZ_1_Vector4, _TriplanarNM_92d0433ff3938b8392407d2ab8713ac8_XZ_2_Vector4, _TriplanarNM_92d0433ff3938b8392407d2ab8713ac8_YZ_3_Vector4, _TriplanarNM_92d0433ff3938b8392407d2ab8713ac8_XY_4_Vector4);
|
|
float4 _Property_87cd542c2b8c30868ed1d7d38aed8f2b_Out_0_Vector4 = _BaseColor;
|
|
float4 _Multiply_4b2be0b3fe39f385b887e7c82ab41e0b_Out_2_Vector4;
|
|
Unity_Multiply_float4_float4(_TriplanarNM_92d0433ff3938b8392407d2ab8713ac8_XYZ_1_Vector4, _Property_87cd542c2b8c30868ed1d7d38aed8f2b_Out_0_Vector4, _Multiply_4b2be0b3fe39f385b887e7c82ab41e0b_Out_2_Vector4);
|
|
UnityTexture2D _Property_c167aafac28bd98c8411d3e25631fdeb_Out_0_Texture2D = UnityBuildTexture2DStructNoScale(_CoverMaskA);
|
|
float4 _UV_e143f0ebbac8bb8cab3206ab93422dda_Out_0_Vector4 = IN.uv0;
|
|
float4 _SampleTexture2D_32717b1e99785588830ceee116cbe7fc_RGBA_0_Vector4 = SAMPLE_TEXTURE2D(_Property_c167aafac28bd98c8411d3e25631fdeb_Out_0_Texture2D.tex, _Property_c167aafac28bd98c8411d3e25631fdeb_Out_0_Texture2D.samplerstate, _Property_c167aafac28bd98c8411d3e25631fdeb_Out_0_Texture2D.GetTransformedUV((_UV_e143f0ebbac8bb8cab3206ab93422dda_Out_0_Vector4.xy)) );
|
|
float _SampleTexture2D_32717b1e99785588830ceee116cbe7fc_R_4_Float = _SampleTexture2D_32717b1e99785588830ceee116cbe7fc_RGBA_0_Vector4.r;
|
|
float _SampleTexture2D_32717b1e99785588830ceee116cbe7fc_G_5_Float = _SampleTexture2D_32717b1e99785588830ceee116cbe7fc_RGBA_0_Vector4.g;
|
|
float _SampleTexture2D_32717b1e99785588830ceee116cbe7fc_B_6_Float = _SampleTexture2D_32717b1e99785588830ceee116cbe7fc_RGBA_0_Vector4.b;
|
|
float _SampleTexture2D_32717b1e99785588830ceee116cbe7fc_A_7_Float = _SampleTexture2D_32717b1e99785588830ceee116cbe7fc_RGBA_0_Vector4.a;
|
|
float _Multiply_01f97603c3df268380d339564b08db11_Out_2_Float;
|
|
Unity_Multiply_float_float(_SampleTexture2D_32717b1e99785588830ceee116cbe7fc_R_4_Float, 2, _Multiply_01f97603c3df268380d339564b08db11_Out_2_Float);
|
|
float _Property_cad777e9a810198e8076eb2cd76e6817_Out_0_Float = _BaseDarknessCurvMultply;
|
|
float _Multiply_b67c8963c3ba188e85b84ae9bf0dcbf7_Out_2_Float;
|
|
Unity_Multiply_float_float(_Multiply_01f97603c3df268380d339564b08db11_Out_2_Float, _Property_cad777e9a810198e8076eb2cd76e6817_Out_0_Float, _Multiply_b67c8963c3ba188e85b84ae9bf0dcbf7_Out_2_Float);
|
|
float _Clamp_646f55d74b38f18aa983e5d031e0e7c3_Out_3_Float;
|
|
Unity_Clamp_float(_Multiply_b67c8963c3ba188e85b84ae9bf0dcbf7_Out_2_Float, float(0), float(1), _Clamp_646f55d74b38f18aa983e5d031e0e7c3_Out_3_Float);
|
|
float _Absolute_c99e11216fab2488946eb6243d985fdc_Out_1_Float;
|
|
Unity_Absolute_float(_Clamp_646f55d74b38f18aa983e5d031e0e7c3_Out_3_Float, _Absolute_c99e11216fab2488946eb6243d985fdc_Out_1_Float);
|
|
float _Property_f8a9827e6f28d9819188d4775dcf7620_Out_0_Float = _BaseDarknessCurvPower;
|
|
float _Power_1b88303e1ca2f285b344bf6aa0cf05e4_Out_2_Float;
|
|
Unity_Power_float(_Absolute_c99e11216fab2488946eb6243d985fdc_Out_1_Float, _Property_f8a9827e6f28d9819188d4775dcf7620_Out_0_Float, _Power_1b88303e1ca2f285b344bf6aa0cf05e4_Out_2_Float);
|
|
float _Clamp_27887d983dbb5a8bbd2966fbcbd7c126_Out_3_Float;
|
|
Unity_Clamp_float(_Power_1b88303e1ca2f285b344bf6aa0cf05e4_Out_2_Float, float(0), float(1), _Clamp_27887d983dbb5a8bbd2966fbcbd7c126_Out_3_Float);
|
|
float4 _Multiply_59efbfb897b39480ad44be129db72018_Out_2_Vector4;
|
|
Unity_Multiply_float4_float4(_Multiply_4b2be0b3fe39f385b887e7c82ab41e0b_Out_2_Vector4, (_Clamp_27887d983dbb5a8bbd2966fbcbd7c126_Out_3_Float.xxxx), _Multiply_59efbfb897b39480ad44be129db72018_Out_2_Vector4);
|
|
float4 _Clamp_841e38951a68f286955c4755e78c610b_Out_3_Vector4;
|
|
Unity_Clamp_float4(_Multiply_59efbfb897b39480ad44be129db72018_Out_2_Vector4, float4(0, 0, 0, 0), float4(1, 1, 1, 1), _Clamp_841e38951a68f286955c4755e78c610b_Out_3_Vector4);
|
|
float _Add_d7ea4a88c4af4886b1e567ddd2b963f9_Out_2_Float;
|
|
Unity_Add_float(_Multiply_01f97603c3df268380d339564b08db11_Out_2_Float, float(-1), _Add_d7ea4a88c4af4886b1e567ddd2b963f9_Out_2_Float);
|
|
float _Clamp_1a02c4bf5903c988b1489d14c840c1e3_Out_3_Float;
|
|
Unity_Clamp_float(_Add_d7ea4a88c4af4886b1e567ddd2b963f9_Out_2_Float, float(0), float(1), _Clamp_1a02c4bf5903c988b1489d14c840c1e3_Out_3_Float);
|
|
float _Property_0e0e1ec2131cec87836dce596351dc1c_Out_0_Float = _BaseBrightnessCurvMultply;
|
|
float _Multiply_c975dfa7de001c89addd082d443e2d07_Out_2_Float;
|
|
Unity_Multiply_float_float(_Clamp_1a02c4bf5903c988b1489d14c840c1e3_Out_3_Float, _Property_0e0e1ec2131cec87836dce596351dc1c_Out_0_Float, _Multiply_c975dfa7de001c89addd082d443e2d07_Out_2_Float);
|
|
float _Clamp_d5711b145a87ef8e8a93ceb9b6197759_Out_3_Float;
|
|
Unity_Clamp_float(_Multiply_c975dfa7de001c89addd082d443e2d07_Out_2_Float, float(0), float(1), _Clamp_d5711b145a87ef8e8a93ceb9b6197759_Out_3_Float);
|
|
float _Absolute_8f9bd7ee7a35c18084d08ad7ef463f52_Out_1_Float;
|
|
Unity_Absolute_float(_Clamp_d5711b145a87ef8e8a93ceb9b6197759_Out_3_Float, _Absolute_8f9bd7ee7a35c18084d08ad7ef463f52_Out_1_Float);
|
|
float _Property_9092f5beea2bec83a5c8a3f6623953a6_Out_0_Float = _BaseBrightnessCurvPower;
|
|
float _Power_5c1a81a2cfcc578996666adb93479f83_Out_2_Float;
|
|
Unity_Power_float(_Absolute_8f9bd7ee7a35c18084d08ad7ef463f52_Out_1_Float, _Property_9092f5beea2bec83a5c8a3f6623953a6_Out_0_Float, _Power_5c1a81a2cfcc578996666adb93479f83_Out_2_Float);
|
|
float _Clamp_f3c614a7ae35508288c0bc3f6194ca34_Out_3_Float;
|
|
Unity_Clamp_float(_Power_5c1a81a2cfcc578996666adb93479f83_Out_2_Float, float(0), float(1), _Clamp_f3c614a7ae35508288c0bc3f6194ca34_Out_3_Float);
|
|
float4 _Add_8313e15cade91a8ba653986d6722818a_Out_2_Vector4;
|
|
Unity_Add_float4(_Clamp_841e38951a68f286955c4755e78c610b_Out_3_Vector4, (_Clamp_f3c614a7ae35508288c0bc3f6194ca34_Out_3_Float.xxxx), _Add_8313e15cade91a8ba653986d6722818a_Out_2_Vector4);
|
|
float4 _Clamp_6dc8fea4fa463b8ea840911fd315c80f_Out_3_Vector4;
|
|
Unity_Clamp_float4(_Add_8313e15cade91a8ba653986d6722818a_Out_2_Vector4, float4(0, 0, 0, 0), float4(1, 1, 1, 1), _Clamp_6dc8fea4fa463b8ea840911fd315c80f_Out_3_Vector4);
|
|
float4 _Branch_26165227c7a50284b87d2996dee9982c_Out_3_Vector4;
|
|
Unity_Branch_float4(_Property_72a5c604805a7b8ebbfd7acee03656aa_Out_0_Boolean, _Clamp_6dc8fea4fa463b8ea840911fd315c80f_Out_3_Vector4, _Multiply_4b2be0b3fe39f385b887e7c82ab41e0b_Out_2_Vector4, _Branch_26165227c7a50284b87d2996dee9982c_Out_3_Vector4);
|
|
UnityTexture2D _Property_2e62abc1fe8adb8b8ff655b8448be202_Out_0_Texture2D = UnityBuildTexture2DStructNoScale(_DetailMap);
|
|
float4 _Property_b86e0ee324ffb58a92473eab69864d04_Out_0_Vector4 = _DetailTilingOffset;
|
|
float _Split_e832641c05503286a4951c0a93621755_R_1_Float = _Property_b86e0ee324ffb58a92473eab69864d04_Out_0_Vector4[0];
|
|
float _Split_e832641c05503286a4951c0a93621755_G_2_Float = _Property_b86e0ee324ffb58a92473eab69864d04_Out_0_Vector4[1];
|
|
float _Split_e832641c05503286a4951c0a93621755_B_3_Float = _Property_b86e0ee324ffb58a92473eab69864d04_Out_0_Vector4[2];
|
|
float _Split_e832641c05503286a4951c0a93621755_A_4_Float = _Property_b86e0ee324ffb58a92473eab69864d04_Out_0_Vector4[3];
|
|
float2 _Vector2_4b5eef288b3d4c83b24e4ab653f55ec8_Out_0_Vector2 = float2(_Split_e832641c05503286a4951c0a93621755_R_1_Float, _Split_e832641c05503286a4951c0a93621755_G_2_Float);
|
|
float2 _Vector2_2925cf98ba16b08dabc58cd65efd17db_Out_0_Vector2 = float2(_Split_e832641c05503286a4951c0a93621755_B_3_Float, _Split_e832641c05503286a4951c0a93621755_A_4_Float);
|
|
float2 _TilingAndOffset_74f6566eba9ccd899de18c0b11b7a7a2_Out_3_Vector2;
|
|
Unity_TilingAndOffset_float(IN.uv0.xy, _Vector2_4b5eef288b3d4c83b24e4ab653f55ec8_Out_0_Vector2, _Vector2_2925cf98ba16b08dabc58cd65efd17db_Out_0_Vector2, _TilingAndOffset_74f6566eba9ccd899de18c0b11b7a7a2_Out_3_Vector2);
|
|
float4 _SampleTexture2D_4bd08411faa60c828847f2247f06a809_RGBA_0_Vector4 = SAMPLE_TEXTURE2D(_Property_2e62abc1fe8adb8b8ff655b8448be202_Out_0_Texture2D.tex, _Property_2e62abc1fe8adb8b8ff655b8448be202_Out_0_Texture2D.samplerstate, _Property_2e62abc1fe8adb8b8ff655b8448be202_Out_0_Texture2D.GetTransformedUV(_TilingAndOffset_74f6566eba9ccd899de18c0b11b7a7a2_Out_3_Vector2) );
|
|
float _SampleTexture2D_4bd08411faa60c828847f2247f06a809_R_4_Float = _SampleTexture2D_4bd08411faa60c828847f2247f06a809_RGBA_0_Vector4.r;
|
|
float _SampleTexture2D_4bd08411faa60c828847f2247f06a809_G_5_Float = _SampleTexture2D_4bd08411faa60c828847f2247f06a809_RGBA_0_Vector4.g;
|
|
float _SampleTexture2D_4bd08411faa60c828847f2247f06a809_B_6_Float = _SampleTexture2D_4bd08411faa60c828847f2247f06a809_RGBA_0_Vector4.b;
|
|
float _SampleTexture2D_4bd08411faa60c828847f2247f06a809_A_7_Float = _SampleTexture2D_4bd08411faa60c828847f2247f06a809_RGBA_0_Vector4.a;
|
|
float _Multiply_ee5a3ccdebd1af84920cd1455a59468b_Out_2_Float;
|
|
Unity_Multiply_float_float(_SampleTexture2D_4bd08411faa60c828847f2247f06a809_R_4_Float, 2, _Multiply_ee5a3ccdebd1af84920cd1455a59468b_Out_2_Float);
|
|
float _Add_b8d727bda34294808f98551e67aa852f_Out_2_Float;
|
|
Unity_Add_float(_Multiply_ee5a3ccdebd1af84920cd1455a59468b_Out_2_Float, float(-1), _Add_b8d727bda34294808f98551e67aa852f_Out_2_Float);
|
|
float _Property_4634e589b03f6983b90fa6aaee0ed5f6_Out_0_Float = _DetailAlbedoScale;
|
|
float _Multiply_f0ed5a95f800c68aa9f7ea2f1322cc31_Out_2_Float;
|
|
Unity_Multiply_float_float(_Add_b8d727bda34294808f98551e67aa852f_Out_2_Float, _Property_4634e589b03f6983b90fa6aaee0ed5f6_Out_0_Float, _Multiply_f0ed5a95f800c68aa9f7ea2f1322cc31_Out_2_Float);
|
|
float _Saturate_469298b4e783d887889b71dc48b4399f_Out_1_Float;
|
|
Unity_Saturate_float(_Multiply_f0ed5a95f800c68aa9f7ea2f1322cc31_Out_2_Float, _Saturate_469298b4e783d887889b71dc48b4399f_Out_1_Float);
|
|
float _Absolute_3b29f3ceceba148189d11e0195af4be2_Out_1_Float;
|
|
Unity_Absolute_float(_Saturate_469298b4e783d887889b71dc48b4399f_Out_1_Float, _Absolute_3b29f3ceceba148189d11e0195af4be2_Out_1_Float);
|
|
Bindings_BlendOverlayBaseColor_acdb3dfca72bd6b42bbc35f4613331a2_float _BlendOverlayBaseColor_369c0b6a02e62b809dc5c6ac1efddde2;
|
|
float3 _BlendOverlayBaseColor_369c0b6a02e62b809dc5c6ac1efddde2_OutVector4_1_Vector3;
|
|
SG_BlendOverlayBaseColor_acdb3dfca72bd6b42bbc35f4613331a2_float(_Branch_26165227c7a50284b87d2996dee9982c_Out_3_Vector4, _Add_b8d727bda34294808f98551e67aa852f_Out_2_Float, _Absolute_3b29f3ceceba148189d11e0195af4be2_Out_1_Float, _BlendOverlayBaseColor_369c0b6a02e62b809dc5c6ac1efddde2, _BlendOverlayBaseColor_369c0b6a02e62b809dc5c6ac1efddde2_OutVector4_1_Vector3);
|
|
UnityTexture2D _Property_9a8451520f254f84a21875f3dac8cbe3_Out_0_Texture2D = UnityBuildTexture2DStructNoScale(_CoverBaseColorMap);
|
|
float4 _Property_c853e88632d9fd85ac0e98d12083eb62_Out_0_Vector4 = _CoverTilingOffset;
|
|
float4 _Divide_1fe314f1ca9dd78fbf366bbeb40e4ccf_Out_2_Vector4;
|
|
Unity_Divide_float4(float4(1, 1, 0, 0), _Property_c853e88632d9fd85ac0e98d12083eb62_Out_0_Vector4, _Divide_1fe314f1ca9dd78fbf366bbeb40e4ccf_Out_2_Vector4);
|
|
float _Property_ee792eccbb538a878b19be5db264531e_Out_0_Float = _CoverTriplanarThreshold;
|
|
Bindings_TriplanarNM_bc609ed95f52591469ab35dbfe0efcea_float _TriplanarNM_cca4c45d91c87989990c532a04e9e8e1;
|
|
_TriplanarNM_cca4c45d91c87989990c532a04e9e8e1.WorldSpaceNormal = IN.WorldSpaceNormal;
|
|
_TriplanarNM_cca4c45d91c87989990c532a04e9e8e1.AbsoluteWorldSpacePosition = IN.AbsoluteWorldSpacePosition;
|
|
float4 _TriplanarNM_cca4c45d91c87989990c532a04e9e8e1_XYZ_1_Vector4;
|
|
float4 _TriplanarNM_cca4c45d91c87989990c532a04e9e8e1_XZ_2_Vector4;
|
|
float4 _TriplanarNM_cca4c45d91c87989990c532a04e9e8e1_YZ_3_Vector4;
|
|
float4 _TriplanarNM_cca4c45d91c87989990c532a04e9e8e1_XY_4_Vector4;
|
|
SG_TriplanarNM_bc609ed95f52591469ab35dbfe0efcea_float(_Property_9a8451520f254f84a21875f3dac8cbe3_Out_0_Texture2D, (_Divide_1fe314f1ca9dd78fbf366bbeb40e4ccf_Out_2_Vector4).x, _Property_ee792eccbb538a878b19be5db264531e_Out_0_Float, UnityBuildSamplerStateStruct(SamplerState_Linear_Repeat_Aniso8), _TriplanarNM_cca4c45d91c87989990c532a04e9e8e1, _TriplanarNM_cca4c45d91c87989990c532a04e9e8e1_XYZ_1_Vector4, _TriplanarNM_cca4c45d91c87989990c532a04e9e8e1_XZ_2_Vector4, _TriplanarNM_cca4c45d91c87989990c532a04e9e8e1_YZ_3_Vector4, _TriplanarNM_cca4c45d91c87989990c532a04e9e8e1_XY_4_Vector4);
|
|
float4 _Property_18c743619f52288dbe24e28326388b00_Out_0_Vector4 = _CoverBaseColor;
|
|
float4 _Multiply_62594f3b30470e86a813e1224c48902e_Out_2_Vector4;
|
|
Unity_Multiply_float4_float4(_TriplanarNM_cca4c45d91c87989990c532a04e9e8e1_XYZ_1_Vector4, _Property_18c743619f52288dbe24e28326388b00_Out_0_Vector4, _Multiply_62594f3b30470e86a813e1224c48902e_Out_2_Vector4);
|
|
float _Multiply_5378fc524597f98fb32eeb561a7390e9_Out_2_Float;
|
|
Unity_Multiply_float_float(_SampleTexture2D_32717b1e99785588830ceee116cbe7fc_R_4_Float, 2, _Multiply_5378fc524597f98fb32eeb561a7390e9_Out_2_Float);
|
|
float _Property_8a72d97c1c527c8f8e0cc71214498065_Out_0_Float = _CoverDarknessCurvMultply;
|
|
float _Multiply_22683a720176a788a2ce404dbddd837c_Out_2_Float;
|
|
Unity_Multiply_float_float(_Multiply_5378fc524597f98fb32eeb561a7390e9_Out_2_Float, _Property_8a72d97c1c527c8f8e0cc71214498065_Out_0_Float, _Multiply_22683a720176a788a2ce404dbddd837c_Out_2_Float);
|
|
float _Clamp_5a638fb628222d8a97865d9029554fe2_Out_3_Float;
|
|
Unity_Clamp_float(_Multiply_22683a720176a788a2ce404dbddd837c_Out_2_Float, float(0), float(1), _Clamp_5a638fb628222d8a97865d9029554fe2_Out_3_Float);
|
|
float _Absolute_11985e8863bf2b8ca0bda90bca829348_Out_1_Float;
|
|
Unity_Absolute_float(_Clamp_5a638fb628222d8a97865d9029554fe2_Out_3_Float, _Absolute_11985e8863bf2b8ca0bda90bca829348_Out_1_Float);
|
|
float _Property_aba5acef910eee88b110d565674a9e36_Out_0_Float = _CoverDarknessCurvPower;
|
|
float _Power_da9b537d80a58d85a88e72c2a5d01e7c_Out_2_Float;
|
|
Unity_Power_float(_Absolute_11985e8863bf2b8ca0bda90bca829348_Out_1_Float, _Property_aba5acef910eee88b110d565674a9e36_Out_0_Float, _Power_da9b537d80a58d85a88e72c2a5d01e7c_Out_2_Float);
|
|
float _Clamp_77228e2a7266fa8ca042eae2f0701342_Out_3_Float;
|
|
Unity_Clamp_float(_Power_da9b537d80a58d85a88e72c2a5d01e7c_Out_2_Float, float(0), float(1), _Clamp_77228e2a7266fa8ca042eae2f0701342_Out_3_Float);
|
|
float4 _Multiply_2111c8ad39d5e68caf4893a41a3bad7d_Out_2_Vector4;
|
|
Unity_Multiply_float4_float4(_Multiply_62594f3b30470e86a813e1224c48902e_Out_2_Vector4, (_Clamp_77228e2a7266fa8ca042eae2f0701342_Out_3_Float.xxxx), _Multiply_2111c8ad39d5e68caf4893a41a3bad7d_Out_2_Vector4);
|
|
float4 _Clamp_b489ebb9d7d18282a342100f4d2fa72d_Out_3_Vector4;
|
|
Unity_Clamp_float4(_Multiply_2111c8ad39d5e68caf4893a41a3bad7d_Out_2_Vector4, float4(0, 0, 0, 0), float4(1, 1, 1, 1), _Clamp_b489ebb9d7d18282a342100f4d2fa72d_Out_3_Vector4);
|
|
float _Add_7eea819e47ffe58cbb3ec5877a181444_Out_2_Float;
|
|
Unity_Add_float(_Multiply_5378fc524597f98fb32eeb561a7390e9_Out_2_Float, float(-1), _Add_7eea819e47ffe58cbb3ec5877a181444_Out_2_Float);
|
|
float _Clamp_b5e4f47c0358dc87b5f9fdb3a360e9e9_Out_3_Float;
|
|
Unity_Clamp_float(_Add_7eea819e47ffe58cbb3ec5877a181444_Out_2_Float, float(0), float(1), _Clamp_b5e4f47c0358dc87b5f9fdb3a360e9e9_Out_3_Float);
|
|
float _Property_753051c96a90798fa7d94cff4173d6e6_Out_0_Float = _CoverBrightnessCurvMultply;
|
|
float _Multiply_c650497abc44d98882ce0091d10c4356_Out_2_Float;
|
|
Unity_Multiply_float_float(_Clamp_b5e4f47c0358dc87b5f9fdb3a360e9e9_Out_3_Float, _Property_753051c96a90798fa7d94cff4173d6e6_Out_0_Float, _Multiply_c650497abc44d98882ce0091d10c4356_Out_2_Float);
|
|
float _Clamp_c508dc61e0cb2a829429559098f34f9a_Out_3_Float;
|
|
Unity_Clamp_float(_Multiply_c650497abc44d98882ce0091d10c4356_Out_2_Float, float(0), float(1), _Clamp_c508dc61e0cb2a829429559098f34f9a_Out_3_Float);
|
|
float _Absolute_2cff2da32d80c286acbb99de611f381a_Out_1_Float;
|
|
Unity_Absolute_float(_Clamp_c508dc61e0cb2a829429559098f34f9a_Out_3_Float, _Absolute_2cff2da32d80c286acbb99de611f381a_Out_1_Float);
|
|
float _Property_ce4610db7b6d0c8bb7fb318210d3e83f_Out_0_Float = _CoverBrightnessCurvPower;
|
|
float _Power_c21df4d2e5ea448281f9ac0f4a140b9e_Out_2_Float;
|
|
Unity_Power_float(_Absolute_2cff2da32d80c286acbb99de611f381a_Out_1_Float, _Property_ce4610db7b6d0c8bb7fb318210d3e83f_Out_0_Float, _Power_c21df4d2e5ea448281f9ac0f4a140b9e_Out_2_Float);
|
|
float _Clamp_fd095a9d6c2b9881ae5875ed126bf3fb_Out_3_Float;
|
|
Unity_Clamp_float(_Power_c21df4d2e5ea448281f9ac0f4a140b9e_Out_2_Float, float(0), float(1), _Clamp_fd095a9d6c2b9881ae5875ed126bf3fb_Out_3_Float);
|
|
float4 _Add_4a02758b9a29b18180516bf3c3ede263_Out_2_Vector4;
|
|
Unity_Add_float4(_Clamp_b489ebb9d7d18282a342100f4d2fa72d_Out_3_Vector4, (_Clamp_fd095a9d6c2b9881ae5875ed126bf3fb_Out_3_Float.xxxx), _Add_4a02758b9a29b18180516bf3c3ede263_Out_2_Vector4);
|
|
float4 _Clamp_632e3d64ab55648f927a79cef68f3396_Out_3_Vector4;
|
|
Unity_Clamp_float4(_Add_4a02758b9a29b18180516bf3c3ede263_Out_2_Vector4, float4(0, 0, 0, 0), float4(1, 1, 1, 1), _Clamp_632e3d64ab55648f927a79cef68f3396_Out_3_Vector4);
|
|
float4 _Branch_0c5221a996e29186a372734bf5c30a51_Out_3_Vector4;
|
|
Unity_Branch_float4(_Property_72a5c604805a7b8ebbfd7acee03656aa_Out_0_Boolean, _Clamp_632e3d64ab55648f927a79cef68f3396_Out_3_Vector4, _Multiply_62594f3b30470e86a813e1224c48902e_Out_2_Vector4, _Branch_0c5221a996e29186a372734bf5c30a51_Out_3_Vector4);
|
|
float _Multiply_6a55591ceae0dc86a971a275e316fec6_Out_2_Float;
|
|
Unity_Multiply_float_float(_SampleTexture2D_4bd08411faa60c828847f2247f06a809_R_4_Float, 2, _Multiply_6a55591ceae0dc86a971a275e316fec6_Out_2_Float);
|
|
float _Add_a86411eb4894f78f8f8f3246011b369c_Out_2_Float;
|
|
Unity_Add_float(_Multiply_6a55591ceae0dc86a971a275e316fec6_Out_2_Float, float(-1), _Add_a86411eb4894f78f8f8f3246011b369c_Out_2_Float);
|
|
float _Property_c5a049650239cf80a302d0c0f57c147a_Out_0_Float = _DetailCoverAlbedoScale;
|
|
float _Multiply_1708b01db74fe88a8c36434f8729bf41_Out_2_Float;
|
|
Unity_Multiply_float_float(_Add_a86411eb4894f78f8f8f3246011b369c_Out_2_Float, _Property_c5a049650239cf80a302d0c0f57c147a_Out_0_Float, _Multiply_1708b01db74fe88a8c36434f8729bf41_Out_2_Float);
|
|
float _Saturate_1a4899f79635918485a64fff7cea28ad_Out_1_Float;
|
|
Unity_Saturate_float(_Multiply_1708b01db74fe88a8c36434f8729bf41_Out_2_Float, _Saturate_1a4899f79635918485a64fff7cea28ad_Out_1_Float);
|
|
float _Absolute_d3dce2bb8d9f0285b5183b7f665beed8_Out_1_Float;
|
|
Unity_Absolute_float(_Saturate_1a4899f79635918485a64fff7cea28ad_Out_1_Float, _Absolute_d3dce2bb8d9f0285b5183b7f665beed8_Out_1_Float);
|
|
Bindings_BlendOverlayBaseColor_acdb3dfca72bd6b42bbc35f4613331a2_float _BlendOverlayBaseColor_ec1f397271cc818abdb95188914e6b4d;
|
|
float3 _BlendOverlayBaseColor_ec1f397271cc818abdb95188914e6b4d_OutVector4_1_Vector3;
|
|
SG_BlendOverlayBaseColor_acdb3dfca72bd6b42bbc35f4613331a2_float(_Branch_0c5221a996e29186a372734bf5c30a51_Out_3_Vector4, _Add_a86411eb4894f78f8f8f3246011b369c_Out_2_Float, _Absolute_d3dce2bb8d9f0285b5183b7f665beed8_Out_1_Float, _BlendOverlayBaseColor_ec1f397271cc818abdb95188914e6b4d, _BlendOverlayBaseColor_ec1f397271cc818abdb95188914e6b4d_OutVector4_1_Vector3);
|
|
float _Property_cb0b6597aee47880b32e852aaa0e4a71_Out_0_Boolean = _USEDYNAMICCOVERTSTATICMASKF;
|
|
float _Property_4b3f692214f8d081a043985e1adb12a1_Out_0_Float = _CoverMaskPower;
|
|
float _Multiply_10cc4ecb135f8e8ab88c475223d0eadf_Out_2_Float;
|
|
Unity_Multiply_float_float(_SampleTexture2D_32717b1e99785588830ceee116cbe7fc_A_7_Float, _Property_4b3f692214f8d081a043985e1adb12a1_Out_0_Float, _Multiply_10cc4ecb135f8e8ab88c475223d0eadf_Out_2_Float);
|
|
float _Clamp_07a501c22c6e188199bed73412ac8926_Out_3_Float;
|
|
Unity_Clamp_float(_Multiply_10cc4ecb135f8e8ab88c475223d0eadf_Out_2_Float, float(0), float(1), _Clamp_07a501c22c6e188199bed73412ac8926_Out_3_Float);
|
|
float _Split_2ada595651635e8d97bf4b82f717fcc6_R_1_Float = IN.VertexColor[0];
|
|
float _Split_2ada595651635e8d97bf4b82f717fcc6_G_2_Float = IN.VertexColor[1];
|
|
float _Split_2ada595651635e8d97bf4b82f717fcc6_B_3_Float = IN.VertexColor[2];
|
|
float _Split_2ada595651635e8d97bf4b82f717fcc6_A_4_Float = IN.VertexColor[3];
|
|
float3 _Property_9180f8dd535ba18499edac37aef4d231_Out_0_Vector3 = _CoverDirection;
|
|
float2 _Vector2_7fe7d9ef320da68f958e1ea535e2a6a8_Out_0_Vector2 = float2(_SampleTexture2D_4bd08411faa60c828847f2247f06a809_A_7_Float, _SampleTexture2D_4bd08411faa60c828847f2247f06a809_G_5_Float);
|
|
float2 _Multiply_b8d7cc078ce00d87b9a6b5241b2f1f01_Out_2_Vector2;
|
|
Unity_Multiply_float2_float2(_Vector2_7fe7d9ef320da68f958e1ea535e2a6a8_Out_0_Vector2, float2(2, 2), _Multiply_b8d7cc078ce00d87b9a6b5241b2f1f01_Out_2_Vector2);
|
|
float2 _Add_476ecfb1f47aed8bb8040bb1c44ca372_Out_2_Vector2;
|
|
Unity_Add_float2(_Multiply_b8d7cc078ce00d87b9a6b5241b2f1f01_Out_2_Vector2, float2(-1, -1), _Add_476ecfb1f47aed8bb8040bb1c44ca372_Out_2_Vector2);
|
|
float _Property_b7f40cf2664f5a819eb153af2b2eb69e_Out_0_Float = _DetailNormalScale;
|
|
float2 _Multiply_3b11e3e43551698eb19b6c6b671b6a41_Out_2_Vector2;
|
|
Unity_Multiply_float2_float2(_Add_476ecfb1f47aed8bb8040bb1c44ca372_Out_2_Vector2, (_Property_b7f40cf2664f5a819eb153af2b2eb69e_Out_0_Float.xx), _Multiply_3b11e3e43551698eb19b6c6b671b6a41_Out_2_Vector2);
|
|
float _Split_678aac70d9cb9783a49841710ce82ff8_R_1_Float = _Multiply_3b11e3e43551698eb19b6c6b671b6a41_Out_2_Vector2[0];
|
|
float _Split_678aac70d9cb9783a49841710ce82ff8_G_2_Float = _Multiply_3b11e3e43551698eb19b6c6b671b6a41_Out_2_Vector2[1];
|
|
float _Split_678aac70d9cb9783a49841710ce82ff8_B_3_Float = 0;
|
|
float _Split_678aac70d9cb9783a49841710ce82ff8_A_4_Float = 0;
|
|
float _DotProduct_7fd2e2e8b3e9ed8f9a42a0ba98e14174_Out_2_Float;
|
|
Unity_DotProduct_float2(_Multiply_3b11e3e43551698eb19b6c6b671b6a41_Out_2_Vector2, _Multiply_3b11e3e43551698eb19b6c6b671b6a41_Out_2_Vector2, _DotProduct_7fd2e2e8b3e9ed8f9a42a0ba98e14174_Out_2_Float);
|
|
float _Saturate_47bdfe8ca2c8d989a5ebbb5eb995f023_Out_1_Float;
|
|
Unity_Saturate_float(_DotProduct_7fd2e2e8b3e9ed8f9a42a0ba98e14174_Out_2_Float, _Saturate_47bdfe8ca2c8d989a5ebbb5eb995f023_Out_1_Float);
|
|
float _OneMinus_03777d2879850b838187d9d2605d7341_Out_1_Float;
|
|
Unity_OneMinus_float(_Saturate_47bdfe8ca2c8d989a5ebbb5eb995f023_Out_1_Float, _OneMinus_03777d2879850b838187d9d2605d7341_Out_1_Float);
|
|
float _SquareRoot_ca9c195aef071d8888f26cb73b749f72_Out_1_Float;
|
|
Unity_SquareRoot_float(_OneMinus_03777d2879850b838187d9d2605d7341_Out_1_Float, _SquareRoot_ca9c195aef071d8888f26cb73b749f72_Out_1_Float);
|
|
float3 _Vector3_6999cbd6a5aa908cb7c059b5f2f5b330_Out_0_Vector3 = float3(_Split_678aac70d9cb9783a49841710ce82ff8_R_1_Float, _Split_678aac70d9cb9783a49841710ce82ff8_G_2_Float, _SquareRoot_ca9c195aef071d8888f26cb73b749f72_Out_1_Float);
|
|
UnityTexture2D _Property_d2bb0a0b01239c85bd301cadeec1b3d8_Out_0_Texture2D = UnityBuildTexture2DStructNoScale(_BaseNormalMap);
|
|
Bindings_TriplanarNMn_059da9746584140498cd018db3c76047_float _TriplanarNMn_bf7f7c0e2d896289b86076b79f33d7d4;
|
|
_TriplanarNMn_bf7f7c0e2d896289b86076b79f33d7d4.WorldSpaceNormal = IN.WorldSpaceNormal;
|
|
_TriplanarNMn_bf7f7c0e2d896289b86076b79f33d7d4.WorldSpaceTangent = IN.WorldSpaceTangent;
|
|
_TriplanarNMn_bf7f7c0e2d896289b86076b79f33d7d4.WorldSpaceBiTangent = IN.WorldSpaceBiTangent;
|
|
_TriplanarNMn_bf7f7c0e2d896289b86076b79f33d7d4.AbsoluteWorldSpacePosition = IN.AbsoluteWorldSpacePosition;
|
|
float4 _TriplanarNMn_bf7f7c0e2d896289b86076b79f33d7d4_XYZ_1_Vector4;
|
|
float4 _TriplanarNMn_bf7f7c0e2d896289b86076b79f33d7d4_XZ_2_Vector4;
|
|
float4 _TriplanarNMn_bf7f7c0e2d896289b86076b79f33d7d4_YZ_3_Vector4;
|
|
float4 _TriplanarNMn_bf7f7c0e2d896289b86076b79f33d7d4_XY_4_Vector4;
|
|
SG_TriplanarNMn_059da9746584140498cd018db3c76047_float(_Property_d2bb0a0b01239c85bd301cadeec1b3d8_Out_0_Texture2D, (_Divide_6a90cebe78e620828de587523daaa7e6_Out_2_Vector4).x, _Property_3539de8c698c2981bb3c088d4ec52201_Out_0_Float, UnityBuildSamplerStateStruct(SamplerState_Linear_Repeat_Aniso8), _TriplanarNMn_bf7f7c0e2d896289b86076b79f33d7d4, _TriplanarNMn_bf7f7c0e2d896289b86076b79f33d7d4_XYZ_1_Vector4, _TriplanarNMn_bf7f7c0e2d896289b86076b79f33d7d4_XZ_2_Vector4, _TriplanarNMn_bf7f7c0e2d896289b86076b79f33d7d4_YZ_3_Vector4, _TriplanarNMn_bf7f7c0e2d896289b86076b79f33d7d4_XY_4_Vector4);
|
|
float _Property_d6baf612f8e685848732ca270b39f544_Out_0_Float = _BaseNormalScale;
|
|
float3 _NormalStrength_260139b4d5077d8b9d42de780d173b6c_Out_2_Vector3;
|
|
Unity_NormalStrength_float((_TriplanarNMn_bf7f7c0e2d896289b86076b79f33d7d4_XYZ_1_Vector4.xyz), _Property_d6baf612f8e685848732ca270b39f544_Out_0_Float, _NormalStrength_260139b4d5077d8b9d42de780d173b6c_Out_2_Vector3);
|
|
UnityTexture2D _Property_492c4e7cd40ab980bd38362624511e38_Out_0_Texture2D = UnityBuildTexture2DStructNoScale(_ShapeNormalMap);
|
|
float4 _SampleTexture2D_63aaad04c65f698e8f640de826888075_RGBA_0_Vector4 = SAMPLE_TEXTURE2D(_Property_492c4e7cd40ab980bd38362624511e38_Out_0_Texture2D.tex, _Property_492c4e7cd40ab980bd38362624511e38_Out_0_Texture2D.samplerstate, _Property_492c4e7cd40ab980bd38362624511e38_Out_0_Texture2D.GetTransformedUV(IN.uv0.xy) );
|
|
_SampleTexture2D_63aaad04c65f698e8f640de826888075_RGBA_0_Vector4.rgb = UnpackNormal(_SampleTexture2D_63aaad04c65f698e8f640de826888075_RGBA_0_Vector4);
|
|
float _SampleTexture2D_63aaad04c65f698e8f640de826888075_R_4_Float = _SampleTexture2D_63aaad04c65f698e8f640de826888075_RGBA_0_Vector4.r;
|
|
float _SampleTexture2D_63aaad04c65f698e8f640de826888075_G_5_Float = _SampleTexture2D_63aaad04c65f698e8f640de826888075_RGBA_0_Vector4.g;
|
|
float _SampleTexture2D_63aaad04c65f698e8f640de826888075_B_6_Float = _SampleTexture2D_63aaad04c65f698e8f640de826888075_RGBA_0_Vector4.b;
|
|
float _SampleTexture2D_63aaad04c65f698e8f640de826888075_A_7_Float = _SampleTexture2D_63aaad04c65f698e8f640de826888075_RGBA_0_Vector4.a;
|
|
float _Property_6c35e329e57d0e89950e24817068dbb1_Out_0_Float = _shapeNormalScale;
|
|
float3 _NormalStrength_e181a1bb2f4e35819e0f35e77346e12e_Out_2_Vector3;
|
|
Unity_NormalStrength_float((_SampleTexture2D_63aaad04c65f698e8f640de826888075_RGBA_0_Vector4.xyz), _Property_6c35e329e57d0e89950e24817068dbb1_Out_0_Float, _NormalStrength_e181a1bb2f4e35819e0f35e77346e12e_Out_2_Vector3);
|
|
float3 _NormalBlend_ead295b946c6058190c298c03bf64d0b_Out_2_Vector3;
|
|
Unity_NormalBlend_float(_NormalStrength_260139b4d5077d8b9d42de780d173b6c_Out_2_Vector3, _NormalStrength_e181a1bb2f4e35819e0f35e77346e12e_Out_2_Vector3, _NormalBlend_ead295b946c6058190c298c03bf64d0b_Out_2_Vector3);
|
|
float3 _NormalBlend_4242e1b4a785378aa59dd49e9d993ffc_Out_2_Vector3;
|
|
Unity_NormalBlend_float(_Vector3_6999cbd6a5aa908cb7c059b5f2f5b330_Out_0_Vector3, _NormalBlend_ead295b946c6058190c298c03bf64d0b_Out_2_Vector3, _NormalBlend_4242e1b4a785378aa59dd49e9d993ffc_Out_2_Vector3);
|
|
float _Property_3d4ab6ad1f1f138a96f0463f7be8b6ce_Out_0_Float = _CovershapeNormalScale;
|
|
float3 _NormalStrength_401cd5af500bd68dbc9bca19d548d0db_Out_2_Vector3;
|
|
Unity_NormalStrength_float((_SampleTexture2D_63aaad04c65f698e8f640de826888075_RGBA_0_Vector4.xyz), _Property_3d4ab6ad1f1f138a96f0463f7be8b6ce_Out_0_Float, _NormalStrength_401cd5af500bd68dbc9bca19d548d0db_Out_2_Vector3);
|
|
UnityTexture2D _Property_779695727390348d8b8a7f7ae2245af0_Out_0_Texture2D = UnityBuildTexture2DStructNoScale(_CoverNormalMap);
|
|
Bindings_TriplanarNMn_059da9746584140498cd018db3c76047_float _TriplanarNMn_ba7e211dd8095589a2939b5b239ca8e0;
|
|
_TriplanarNMn_ba7e211dd8095589a2939b5b239ca8e0.WorldSpaceNormal = IN.WorldSpaceNormal;
|
|
_TriplanarNMn_ba7e211dd8095589a2939b5b239ca8e0.WorldSpaceTangent = IN.WorldSpaceTangent;
|
|
_TriplanarNMn_ba7e211dd8095589a2939b5b239ca8e0.WorldSpaceBiTangent = IN.WorldSpaceBiTangent;
|
|
_TriplanarNMn_ba7e211dd8095589a2939b5b239ca8e0.AbsoluteWorldSpacePosition = IN.AbsoluteWorldSpacePosition;
|
|
float4 _TriplanarNMn_ba7e211dd8095589a2939b5b239ca8e0_XYZ_1_Vector4;
|
|
float4 _TriplanarNMn_ba7e211dd8095589a2939b5b239ca8e0_XZ_2_Vector4;
|
|
float4 _TriplanarNMn_ba7e211dd8095589a2939b5b239ca8e0_YZ_3_Vector4;
|
|
float4 _TriplanarNMn_ba7e211dd8095589a2939b5b239ca8e0_XY_4_Vector4;
|
|
SG_TriplanarNMn_059da9746584140498cd018db3c76047_float(_Property_779695727390348d8b8a7f7ae2245af0_Out_0_Texture2D, (_Divide_1fe314f1ca9dd78fbf366bbeb40e4ccf_Out_2_Vector4).x, _Property_ee792eccbb538a878b19be5db264531e_Out_0_Float, UnityBuildSamplerStateStruct(SamplerState_Linear_Repeat_Aniso8), _TriplanarNMn_ba7e211dd8095589a2939b5b239ca8e0, _TriplanarNMn_ba7e211dd8095589a2939b5b239ca8e0_XYZ_1_Vector4, _TriplanarNMn_ba7e211dd8095589a2939b5b239ca8e0_XZ_2_Vector4, _TriplanarNMn_ba7e211dd8095589a2939b5b239ca8e0_YZ_3_Vector4, _TriplanarNMn_ba7e211dd8095589a2939b5b239ca8e0_XY_4_Vector4);
|
|
float _Property_5aba050988182f8aad3ec6b2c7e57899_Out_0_Float = _CoverNormalBlendHardness;
|
|
float3 _NormalStrength_dac4b0abfa8a1f82b7103b18f6e6e1b7_Out_2_Vector3;
|
|
Unity_NormalStrength_float((_TriplanarNMn_ba7e211dd8095589a2939b5b239ca8e0_XYZ_1_Vector4.xyz), _Property_5aba050988182f8aad3ec6b2c7e57899_Out_0_Float, _NormalStrength_dac4b0abfa8a1f82b7103b18f6e6e1b7_Out_2_Vector3);
|
|
float3 _NormalBlend_4058aded292b7389ade16c695a6cae6c_Out_2_Vector3;
|
|
Unity_NormalBlend_float(_NormalStrength_401cd5af500bd68dbc9bca19d548d0db_Out_2_Vector3, _NormalStrength_dac4b0abfa8a1f82b7103b18f6e6e1b7_Out_2_Vector3, _NormalBlend_4058aded292b7389ade16c695a6cae6c_Out_2_Vector3);
|
|
float3 _Multiply_0e22f9c6ff55a188b2533f1889a53038_Out_2_Vector3;
|
|
Unity_Multiply_float3_float3(_Property_9180f8dd535ba18499edac37aef4d231_Out_0_Vector3, IN.WorldSpaceNormal, _Multiply_0e22f9c6ff55a188b2533f1889a53038_Out_2_Vector3);
|
|
float _Split_89708601b575b58c852cd55e4fb248d1_R_1_Float = _Multiply_0e22f9c6ff55a188b2533f1889a53038_Out_2_Vector3[0];
|
|
float _Split_89708601b575b58c852cd55e4fb248d1_G_2_Float = _Multiply_0e22f9c6ff55a188b2533f1889a53038_Out_2_Vector3[1];
|
|
float _Split_89708601b575b58c852cd55e4fb248d1_B_3_Float = _Multiply_0e22f9c6ff55a188b2533f1889a53038_Out_2_Vector3[2];
|
|
float _Split_89708601b575b58c852cd55e4fb248d1_A_4_Float = 0;
|
|
float _Add_bfe29b97a9ce3b80aa4cd689be8c4a97_Out_2_Float;
|
|
Unity_Add_float(_Split_89708601b575b58c852cd55e4fb248d1_R_1_Float, _Split_89708601b575b58c852cd55e4fb248d1_G_2_Float, _Add_bfe29b97a9ce3b80aa4cd689be8c4a97_Out_2_Float);
|
|
float _Add_f3152b42a227088aa1439fc1fe8451cc_Out_2_Float;
|
|
Unity_Add_float(_Add_bfe29b97a9ce3b80aa4cd689be8c4a97_Out_2_Float, _Split_89708601b575b58c852cd55e4fb248d1_B_3_Float, _Add_f3152b42a227088aa1439fc1fe8451cc_Out_2_Float);
|
|
float _Property_deabceefa3e3438a8ad71fa67fc5b070_Out_0_Float = _Cover_Amount;
|
|
float _Property_2fba2d762d74b8828ff566c10bc48e86_Out_0_Float = _Cover_Amount_Grow_Speed;
|
|
float _Subtract_1f990262a41ce88f96a47df66dcb4971_Out_2_Float;
|
|
Unity_Subtract_float(float(4), _Property_2fba2d762d74b8828ff566c10bc48e86_Out_0_Float, _Subtract_1f990262a41ce88f96a47df66dcb4971_Out_2_Float);
|
|
float _Divide_a89e05be4802ac80886ad6bdeadc4949_Out_2_Float;
|
|
Unity_Divide_float(_Property_deabceefa3e3438a8ad71fa67fc5b070_Out_0_Float, _Subtract_1f990262a41ce88f96a47df66dcb4971_Out_2_Float, _Divide_a89e05be4802ac80886ad6bdeadc4949_Out_2_Float);
|
|
float _Absolute_2b58f48ab94a3087a726a2b03c51e2c6_Out_1_Float;
|
|
Unity_Absolute_float(_Divide_a89e05be4802ac80886ad6bdeadc4949_Out_2_Float, _Absolute_2b58f48ab94a3087a726a2b03c51e2c6_Out_1_Float);
|
|
float _Power_6695d49b8b82468ea686b66e6749260b_Out_2_Float;
|
|
Unity_Power_float(_Absolute_2b58f48ab94a3087a726a2b03c51e2c6_Out_1_Float, _Subtract_1f990262a41ce88f96a47df66dcb4971_Out_2_Float, _Power_6695d49b8b82468ea686b66e6749260b_Out_2_Float);
|
|
float _Clamp_94f0310fee13798bad4e26e2381a94d4_Out_3_Float;
|
|
Unity_Clamp_float(_Power_6695d49b8b82468ea686b66e6749260b_Out_2_Float, float(0), float(2), _Clamp_94f0310fee13798bad4e26e2381a94d4_Out_3_Float);
|
|
float _Multiply_999692515a117385ade114d924fa589a_Out_2_Float;
|
|
Unity_Multiply_float_float(_Add_f3152b42a227088aa1439fc1fe8451cc_Out_2_Float, _Clamp_94f0310fee13798bad4e26e2381a94d4_Out_3_Float, _Multiply_999692515a117385ade114d924fa589a_Out_2_Float);
|
|
float _Saturate_f811eeeeb3229d83917aa8be2c36831e_Out_1_Float;
|
|
Unity_Saturate_float(_Multiply_999692515a117385ade114d924fa589a_Out_2_Float, _Saturate_f811eeeeb3229d83917aa8be2c36831e_Out_1_Float);
|
|
float _Clamp_4c470807610adb8c8488f125c0af7bb5_Out_3_Float;
|
|
Unity_Clamp_float(_Add_f3152b42a227088aa1439fc1fe8451cc_Out_2_Float, float(0), float(0.9999), _Clamp_4c470807610adb8c8488f125c0af7bb5_Out_3_Float);
|
|
float _Property_765e3d021aec6d8f9f8b3174d5a06980_Out_0_Float = _Cover_Max_Angle;
|
|
float _Divide_9d9fc267a9ebcf84b378fdd4c66ff34d_Out_2_Float;
|
|
Unity_Divide_float(_Property_765e3d021aec6d8f9f8b3174d5a06980_Out_0_Float, float(45), _Divide_9d9fc267a9ebcf84b378fdd4c66ff34d_Out_2_Float);
|
|
float _OneMinus_f074fba0be46e688aa75f5377832251a_Out_1_Float;
|
|
Unity_OneMinus_float(_Divide_9d9fc267a9ebcf84b378fdd4c66ff34d_Out_2_Float, _OneMinus_f074fba0be46e688aa75f5377832251a_Out_1_Float);
|
|
float _Subtract_0b0cd6145e351c87a68366348828154d_Out_2_Float;
|
|
Unity_Subtract_float(_Clamp_4c470807610adb8c8488f125c0af7bb5_Out_3_Float, _OneMinus_f074fba0be46e688aa75f5377832251a_Out_1_Float, _Subtract_0b0cd6145e351c87a68366348828154d_Out_2_Float);
|
|
float _Clamp_30607c0c4e04e5879d4061a1f7688421_Out_3_Float;
|
|
Unity_Clamp_float(_Subtract_0b0cd6145e351c87a68366348828154d_Out_2_Float, float(0), float(2), _Clamp_30607c0c4e04e5879d4061a1f7688421_Out_3_Float);
|
|
float _Divide_cfe09f3bd2005485a3c2229367309962_Out_2_Float;
|
|
Unity_Divide_float(float(1), _Divide_9d9fc267a9ebcf84b378fdd4c66ff34d_Out_2_Float, _Divide_cfe09f3bd2005485a3c2229367309962_Out_2_Float);
|
|
float _Multiply_022be2eb9027988b9d5d4c1392749347_Out_2_Float;
|
|
Unity_Multiply_float_float(_Clamp_30607c0c4e04e5879d4061a1f7688421_Out_3_Float, _Divide_cfe09f3bd2005485a3c2229367309962_Out_2_Float, _Multiply_022be2eb9027988b9d5d4c1392749347_Out_2_Float);
|
|
float _Absolute_2fed84623df90f8ba200de68955721fd_Out_1_Float;
|
|
Unity_Absolute_float(_Multiply_022be2eb9027988b9d5d4c1392749347_Out_2_Float, _Absolute_2fed84623df90f8ba200de68955721fd_Out_1_Float);
|
|
float _Property_b79c921e30793a8e84330b3341539232_Out_0_Float = _CoverHardness;
|
|
float _Power_b9ddee06dfd0b880880990743bc10612_Out_2_Float;
|
|
Unity_Power_float(_Absolute_2fed84623df90f8ba200de68955721fd_Out_1_Float, _Property_b79c921e30793a8e84330b3341539232_Out_0_Float, _Power_b9ddee06dfd0b880880990743bc10612_Out_2_Float);
|
|
float _Property_c82936191f294c89b76f2d1809168f87_Out_0_Float = _Cover_Min_Height;
|
|
float _OneMinus_f0918ccb4f747b8e83e39d82dc3b5ca9_Out_1_Float;
|
|
Unity_OneMinus_float(_Property_c82936191f294c89b76f2d1809168f87_Out_0_Float, _OneMinus_f0918ccb4f747b8e83e39d82dc3b5ca9_Out_1_Float);
|
|
float _Split_0e80ce6f80cff18f87a043d1e3eecd08_R_1_Float = IN.AbsoluteWorldSpacePosition[0];
|
|
float _Split_0e80ce6f80cff18f87a043d1e3eecd08_G_2_Float = IN.AbsoluteWorldSpacePosition[1];
|
|
float _Split_0e80ce6f80cff18f87a043d1e3eecd08_B_3_Float = IN.AbsoluteWorldSpacePosition[2];
|
|
float _Split_0e80ce6f80cff18f87a043d1e3eecd08_A_4_Float = 0;
|
|
float _Add_60b3bb4cdad6e88b8c097c5b08daa7d0_Out_2_Float;
|
|
Unity_Add_float(_OneMinus_f0918ccb4f747b8e83e39d82dc3b5ca9_Out_1_Float, _Split_0e80ce6f80cff18f87a043d1e3eecd08_G_2_Float, _Add_60b3bb4cdad6e88b8c097c5b08daa7d0_Out_2_Float);
|
|
float _Add_1898d6f46901df809c68b5241b2e9c37_Out_2_Float;
|
|
Unity_Add_float(_Add_60b3bb4cdad6e88b8c097c5b08daa7d0_Out_2_Float, float(1), _Add_1898d6f46901df809c68b5241b2e9c37_Out_2_Float);
|
|
float _Clamp_25d6140fa3ff3a8f956f99005adace2e_Out_3_Float;
|
|
Unity_Clamp_float(_Add_1898d6f46901df809c68b5241b2e9c37_Out_2_Float, float(0), float(1), _Clamp_25d6140fa3ff3a8f956f99005adace2e_Out_3_Float);
|
|
float _Property_6094a52a4f01fd8da5ea847b69b6941c_Out_0_Float = _Cover_Min_Height_Blending;
|
|
float _Add_dc69668fc7f1a586a754713499f71d99_Out_2_Float;
|
|
Unity_Add_float(_Add_60b3bb4cdad6e88b8c097c5b08daa7d0_Out_2_Float, _Property_6094a52a4f01fd8da5ea847b69b6941c_Out_0_Float, _Add_dc69668fc7f1a586a754713499f71d99_Out_2_Float);
|
|
float _Divide_63e32406c8773d83bbf2e244faf8328f_Out_2_Float;
|
|
Unity_Divide_float(_Add_dc69668fc7f1a586a754713499f71d99_Out_2_Float, _Add_60b3bb4cdad6e88b8c097c5b08daa7d0_Out_2_Float, _Divide_63e32406c8773d83bbf2e244faf8328f_Out_2_Float);
|
|
float _OneMinus_ec22d21ddfa84288b6f750e9fdb107b9_Out_1_Float;
|
|
Unity_OneMinus_float(_Divide_63e32406c8773d83bbf2e244faf8328f_Out_2_Float, _OneMinus_ec22d21ddfa84288b6f750e9fdb107b9_Out_1_Float);
|
|
float _Add_a1206af8cbfbbe8081046db1247aba04_Out_2_Float;
|
|
Unity_Add_float(_OneMinus_ec22d21ddfa84288b6f750e9fdb107b9_Out_1_Float, float(-0.5), _Add_a1206af8cbfbbe8081046db1247aba04_Out_2_Float);
|
|
float _Clamp_640b5884b29f188987c157ad5e6e6959_Out_3_Float;
|
|
Unity_Clamp_float(_Add_a1206af8cbfbbe8081046db1247aba04_Out_2_Float, float(0), float(1), _Clamp_640b5884b29f188987c157ad5e6e6959_Out_3_Float);
|
|
float _Add_cfdb6daf617665838bb05910fa9505df_Out_2_Float;
|
|
Unity_Add_float(_Clamp_25d6140fa3ff3a8f956f99005adace2e_Out_3_Float, _Clamp_640b5884b29f188987c157ad5e6e6959_Out_3_Float, _Add_cfdb6daf617665838bb05910fa9505df_Out_2_Float);
|
|
float _Clamp_552ef7e5cf91408a982297885971db7e_Out_3_Float;
|
|
Unity_Clamp_float(_Add_cfdb6daf617665838bb05910fa9505df_Out_2_Float, float(0), float(1), _Clamp_552ef7e5cf91408a982297885971db7e_Out_3_Float);
|
|
float _Multiply_8f8db9c494f4fd869809fc45531df628_Out_2_Float;
|
|
Unity_Multiply_float_float(_Power_b9ddee06dfd0b880880990743bc10612_Out_2_Float, _Clamp_552ef7e5cf91408a982297885971db7e_Out_3_Float, _Multiply_8f8db9c494f4fd869809fc45531df628_Out_2_Float);
|
|
float _Multiply_60075aa07d29d285b3c1ee531e5b5cb3_Out_2_Float;
|
|
Unity_Multiply_float_float(_Saturate_f811eeeeb3229d83917aa8be2c36831e_Out_1_Float, _Multiply_8f8db9c494f4fd869809fc45531df628_Out_2_Float, _Multiply_60075aa07d29d285b3c1ee531e5b5cb3_Out_2_Float);
|
|
float3 _Lerp_453c8bc667315a8fa37a93affb877753_Out_3_Vector3;
|
|
Unity_Lerp_float3(_NormalBlend_4242e1b4a785378aa59dd49e9d993ffc_Out_2_Vector3, _NormalBlend_4058aded292b7389ade16c695a6cae6c_Out_2_Vector3, (_Multiply_60075aa07d29d285b3c1ee531e5b5cb3_Out_2_Float.xxx), _Lerp_453c8bc667315a8fa37a93affb877753_Out_3_Vector3);
|
|
float3 _Transform_a87113b0be9dfa8eaf6932ed645aa845_Out_1_Vector3;
|
|
{
|
|
float3x3 tangentTransform = float3x3(IN.WorldSpaceTangent, IN.WorldSpaceBiTangent, IN.WorldSpaceNormal);
|
|
_Transform_a87113b0be9dfa8eaf6932ed645aa845_Out_1_Vector3 = TransformTangentToWorldDir(_Lerp_453c8bc667315a8fa37a93affb877753_Out_3_Vector3.xyz, tangentTransform, false).xyz;
|
|
}
|
|
float3 _Multiply_f6e009bd5c0fd18c99ac72f233476fe5_Out_2_Vector3;
|
|
Unity_Multiply_float3_float3(_Property_9180f8dd535ba18499edac37aef4d231_Out_0_Vector3, _Transform_a87113b0be9dfa8eaf6932ed645aa845_Out_1_Vector3, _Multiply_f6e009bd5c0fd18c99ac72f233476fe5_Out_2_Vector3);
|
|
float _Split_96f0a5b75c0e0b889dbbccd04bc2aaaa_R_1_Float = _Multiply_f6e009bd5c0fd18c99ac72f233476fe5_Out_2_Vector3[0];
|
|
float _Split_96f0a5b75c0e0b889dbbccd04bc2aaaa_G_2_Float = _Multiply_f6e009bd5c0fd18c99ac72f233476fe5_Out_2_Vector3[1];
|
|
float _Split_96f0a5b75c0e0b889dbbccd04bc2aaaa_B_3_Float = _Multiply_f6e009bd5c0fd18c99ac72f233476fe5_Out_2_Vector3[2];
|
|
float _Split_96f0a5b75c0e0b889dbbccd04bc2aaaa_A_4_Float = 0;
|
|
float _Add_07028d5174d9f88594da40d46502bc13_Out_2_Float;
|
|
Unity_Add_float(_Split_96f0a5b75c0e0b889dbbccd04bc2aaaa_R_1_Float, _Split_96f0a5b75c0e0b889dbbccd04bc2aaaa_G_2_Float, _Add_07028d5174d9f88594da40d46502bc13_Out_2_Float);
|
|
float _Add_93af6c0f8ee9a3898ca51358a213b69f_Out_2_Float;
|
|
Unity_Add_float(_Add_07028d5174d9f88594da40d46502bc13_Out_2_Float, _Split_96f0a5b75c0e0b889dbbccd04bc2aaaa_B_3_Float, _Add_93af6c0f8ee9a3898ca51358a213b69f_Out_2_Float);
|
|
float _Multiply_77421b936cb9d68299ef6791b83fa867_Out_2_Float;
|
|
Unity_Multiply_float_float(_Add_93af6c0f8ee9a3898ca51358a213b69f_Out_2_Float, _Clamp_94f0310fee13798bad4e26e2381a94d4_Out_3_Float, _Multiply_77421b936cb9d68299ef6791b83fa867_Out_2_Float);
|
|
float _Multiply_ac6769fbe7188685a7537e5ac2c6bfa9_Out_2_Float;
|
|
Unity_Multiply_float_float(_Clamp_94f0310fee13798bad4e26e2381a94d4_Out_3_Float, _Property_b79c921e30793a8e84330b3341539232_Out_0_Float, _Multiply_ac6769fbe7188685a7537e5ac2c6bfa9_Out_2_Float);
|
|
float _Multiply_37a341e0d9783683aa8d5b7001acced1_Out_2_Float;
|
|
Unity_Multiply_float_float(_Multiply_ac6769fbe7188685a7537e5ac2c6bfa9_Out_2_Float, _Multiply_8f8db9c494f4fd869809fc45531df628_Out_2_Float, _Multiply_37a341e0d9783683aa8d5b7001acced1_Out_2_Float);
|
|
float _Multiply_02fa8aa66970b281b4a325dc68f407b9_Out_2_Float;
|
|
Unity_Multiply_float_float(_Multiply_77421b936cb9d68299ef6791b83fa867_Out_2_Float, _Multiply_37a341e0d9783683aa8d5b7001acced1_Out_2_Float, _Multiply_02fa8aa66970b281b4a325dc68f407b9_Out_2_Float);
|
|
UnityTexture2D _Property_fd2df7ee33755280948b4c47585d4323_Out_0_Texture2D = UnityBuildTexture2DStructNoScale(_CoverMaskMap);
|
|
Bindings_TriplanarNM_bc609ed95f52591469ab35dbfe0efcea_float _TriplanarNM_e307cfdc6531d2838aa3dfa51fc3913f;
|
|
_TriplanarNM_e307cfdc6531d2838aa3dfa51fc3913f.WorldSpaceNormal = IN.WorldSpaceNormal;
|
|
_TriplanarNM_e307cfdc6531d2838aa3dfa51fc3913f.AbsoluteWorldSpacePosition = IN.AbsoluteWorldSpacePosition;
|
|
float4 _TriplanarNM_e307cfdc6531d2838aa3dfa51fc3913f_XYZ_1_Vector4;
|
|
float4 _TriplanarNM_e307cfdc6531d2838aa3dfa51fc3913f_XZ_2_Vector4;
|
|
float4 _TriplanarNM_e307cfdc6531d2838aa3dfa51fc3913f_YZ_3_Vector4;
|
|
float4 _TriplanarNM_e307cfdc6531d2838aa3dfa51fc3913f_XY_4_Vector4;
|
|
SG_TriplanarNM_bc609ed95f52591469ab35dbfe0efcea_float(_Property_fd2df7ee33755280948b4c47585d4323_Out_0_Texture2D, (_Divide_1fe314f1ca9dd78fbf366bbeb40e4ccf_Out_2_Vector4).x, _Property_ee792eccbb538a878b19be5db264531e_Out_0_Float, UnityBuildSamplerStateStruct(SamplerState_Linear_Repeat_Aniso8), _TriplanarNM_e307cfdc6531d2838aa3dfa51fc3913f, _TriplanarNM_e307cfdc6531d2838aa3dfa51fc3913f_XYZ_1_Vector4, _TriplanarNM_e307cfdc6531d2838aa3dfa51fc3913f_XZ_2_Vector4, _TriplanarNM_e307cfdc6531d2838aa3dfa51fc3913f_YZ_3_Vector4, _TriplanarNM_e307cfdc6531d2838aa3dfa51fc3913f_XY_4_Vector4);
|
|
float _Split_fe834aed1172f284a73d2d6810bdb696_R_1_Float = _TriplanarNM_e307cfdc6531d2838aa3dfa51fc3913f_XYZ_1_Vector4[0];
|
|
float _Split_fe834aed1172f284a73d2d6810bdb696_G_2_Float = _TriplanarNM_e307cfdc6531d2838aa3dfa51fc3913f_XYZ_1_Vector4[1];
|
|
float _Split_fe834aed1172f284a73d2d6810bdb696_B_3_Float = _TriplanarNM_e307cfdc6531d2838aa3dfa51fc3913f_XYZ_1_Vector4[2];
|
|
float _Split_fe834aed1172f284a73d2d6810bdb696_A_4_Float = _TriplanarNM_e307cfdc6531d2838aa3dfa51fc3913f_XYZ_1_Vector4[3];
|
|
float _Property_b5f7a30c2ea202858ea263fd2a5a46c6_Out_0_Float = _CoverHeightMapMin;
|
|
float _Property_f86678f1d28c0483ba1ddccf49ee52f7_Out_0_Float = _CoverHeightMapMax;
|
|
float2 _Vector2_b5c01a0d88900d87a8a819b340151fb6_Out_0_Vector2 = float2(_Property_b5f7a30c2ea202858ea263fd2a5a46c6_Out_0_Float, _Property_f86678f1d28c0483ba1ddccf49ee52f7_Out_0_Float);
|
|
float _Property_82b4f7f3bf3b4382bd69876479a9e350_Out_0_Float = _CoverHeightMapOffset;
|
|
float2 _Add_6020f54fd1e6798e8e76bfdcad62759a_Out_2_Vector2;
|
|
Unity_Add_float2(_Vector2_b5c01a0d88900d87a8a819b340151fb6_Out_0_Vector2, (_Property_82b4f7f3bf3b4382bd69876479a9e350_Out_0_Float.xx), _Add_6020f54fd1e6798e8e76bfdcad62759a_Out_2_Vector2);
|
|
float _Remap_65ceff40294d1e8aae6051445b9fdbc8_Out_3_Float;
|
|
Unity_Remap_float(_Split_fe834aed1172f284a73d2d6810bdb696_B_3_Float, float2 (0, 1), _Add_6020f54fd1e6798e8e76bfdcad62759a_Out_2_Vector2, _Remap_65ceff40294d1e8aae6051445b9fdbc8_Out_3_Float);
|
|
float _Multiply_bb0edd30580dba8b89213d9c5b1ef857_Out_2_Float;
|
|
Unity_Multiply_float_float(_Multiply_02fa8aa66970b281b4a325dc68f407b9_Out_2_Float, _Remap_65ceff40294d1e8aae6051445b9fdbc8_Out_3_Float, _Multiply_bb0edd30580dba8b89213d9c5b1ef857_Out_2_Float);
|
|
float _Multiply_484dd7b77d58aa88bf99c82cfe77c774_Out_2_Float;
|
|
Unity_Multiply_float_float(_Split_2ada595651635e8d97bf4b82f717fcc6_G_2_Float, _Multiply_bb0edd30580dba8b89213d9c5b1ef857_Out_2_Float, _Multiply_484dd7b77d58aa88bf99c82cfe77c774_Out_2_Float);
|
|
float _Saturate_d39fa9bab8cc8a8fa35db28d4dbc74ab_Out_1_Float;
|
|
Unity_Saturate_float(_Multiply_484dd7b77d58aa88bf99c82cfe77c774_Out_2_Float, _Saturate_d39fa9bab8cc8a8fa35db28d4dbc74ab_Out_1_Float);
|
|
float _Multiply_6957741a4923cc8db84ac72df2e194a8_Out_2_Float;
|
|
Unity_Multiply_float_float(_Clamp_07a501c22c6e188199bed73412ac8926_Out_3_Float, _Saturate_d39fa9bab8cc8a8fa35db28d4dbc74ab_Out_1_Float, _Multiply_6957741a4923cc8db84ac72df2e194a8_Out_2_Float);
|
|
float _Branch_3ccf365d359214809d30b6430d863e3f_Out_3_Float;
|
|
Unity_Branch_float(_Property_cb0b6597aee47880b32e852aaa0e4a71_Out_0_Boolean, _Multiply_6957741a4923cc8db84ac72df2e194a8_Out_2_Float, _Clamp_07a501c22c6e188199bed73412ac8926_Out_3_Float, _Branch_3ccf365d359214809d30b6430d863e3f_Out_3_Float);
|
|
float3 _Lerp_ee1b6587de2afe82942e8476d303d598_Out_3_Vector3;
|
|
Unity_Lerp_float3(_BlendOverlayBaseColor_369c0b6a02e62b809dc5c6ac1efddde2_OutVector4_1_Vector3, _BlendOverlayBaseColor_ec1f397271cc818abdb95188914e6b4d_OutVector4_1_Vector3, (_Branch_3ccf365d359214809d30b6430d863e3f_Out_3_Float.xxx), _Lerp_ee1b6587de2afe82942e8476d303d598_Out_3_Vector3);
|
|
float4 _Property_c500db71e51fef8daff29f346c122e57_Out_0_Vector4 = _WetColor;
|
|
float3 _Multiply_89461014b078f787a0724725c54fb934_Out_2_Vector3;
|
|
Unity_Multiply_float3_float3((_Property_c500db71e51fef8daff29f346c122e57_Out_0_Vector4.xyz), _Lerp_ee1b6587de2afe82942e8476d303d598_Out_3_Vector3, _Multiply_89461014b078f787a0724725c54fb934_Out_2_Vector3);
|
|
float _OneMinus_e16dfb812ec64b8891c541171687142f_Out_1_Float;
|
|
Unity_OneMinus_float(_Split_2ada595651635e8d97bf4b82f717fcc6_R_1_Float, _OneMinus_e16dfb812ec64b8891c541171687142f_Out_1_Float);
|
|
float3 _Lerp_43bc7a9493df5a829abf080ee4ad3298_Out_3_Vector3;
|
|
Unity_Lerp_float3(_Lerp_ee1b6587de2afe82942e8476d303d598_Out_3_Vector3, _Multiply_89461014b078f787a0724725c54fb934_Out_2_Vector3, (_OneMinus_e16dfb812ec64b8891c541171687142f_Out_1_Float.xxx), _Lerp_43bc7a9493df5a829abf080ee4ad3298_Out_3_Vector3);
|
|
UnityTexture2D _Property_8e909eb873a4cd8e9af98a90a84fdde8_Out_0_Texture2D = UnityBuildTexture2DStructNoScale(_BaseMaskMap);
|
|
Bindings_TriplanarNM_bc609ed95f52591469ab35dbfe0efcea_float _TriplanarNM_52e6c67b7de4708f80a463a880607c97;
|
|
_TriplanarNM_52e6c67b7de4708f80a463a880607c97.WorldSpaceNormal = IN.WorldSpaceNormal;
|
|
_TriplanarNM_52e6c67b7de4708f80a463a880607c97.AbsoluteWorldSpacePosition = IN.AbsoluteWorldSpacePosition;
|
|
float4 _TriplanarNM_52e6c67b7de4708f80a463a880607c97_XYZ_1_Vector4;
|
|
float4 _TriplanarNM_52e6c67b7de4708f80a463a880607c97_XZ_2_Vector4;
|
|
float4 _TriplanarNM_52e6c67b7de4708f80a463a880607c97_YZ_3_Vector4;
|
|
float4 _TriplanarNM_52e6c67b7de4708f80a463a880607c97_XY_4_Vector4;
|
|
SG_TriplanarNM_bc609ed95f52591469ab35dbfe0efcea_float(_Property_8e909eb873a4cd8e9af98a90a84fdde8_Out_0_Texture2D, (_Divide_6a90cebe78e620828de587523daaa7e6_Out_2_Vector4).x, _Property_3539de8c698c2981bb3c088d4ec52201_Out_0_Float, UnityBuildSamplerStateStruct(SamplerState_Linear_Repeat_Aniso8), _TriplanarNM_52e6c67b7de4708f80a463a880607c97, _TriplanarNM_52e6c67b7de4708f80a463a880607c97_XYZ_1_Vector4, _TriplanarNM_52e6c67b7de4708f80a463a880607c97_XZ_2_Vector4, _TriplanarNM_52e6c67b7de4708f80a463a880607c97_YZ_3_Vector4, _TriplanarNM_52e6c67b7de4708f80a463a880607c97_XY_4_Vector4);
|
|
float _Split_79d9d761d63eaa8c97fb3cb7fae0c380_R_1_Float = _TriplanarNM_52e6c67b7de4708f80a463a880607c97_XYZ_1_Vector4[0];
|
|
float _Split_79d9d761d63eaa8c97fb3cb7fae0c380_G_2_Float = _TriplanarNM_52e6c67b7de4708f80a463a880607c97_XYZ_1_Vector4[1];
|
|
float _Split_79d9d761d63eaa8c97fb3cb7fae0c380_B_3_Float = _TriplanarNM_52e6c67b7de4708f80a463a880607c97_XYZ_1_Vector4[2];
|
|
float _Split_79d9d761d63eaa8c97fb3cb7fae0c380_A_4_Float = _TriplanarNM_52e6c67b7de4708f80a463a880607c97_XYZ_1_Vector4[3];
|
|
float _Property_b97916566d1fc587b95e8ec7fe8bd775_Out_0_Float = _BaseMetallic;
|
|
float _Multiply_d0c8d83444dbe38588583551936c7394_Out_2_Float;
|
|
Unity_Multiply_float_float(_Split_79d9d761d63eaa8c97fb3cb7fae0c380_R_1_Float, _Property_b97916566d1fc587b95e8ec7fe8bd775_Out_0_Float, _Multiply_d0c8d83444dbe38588583551936c7394_Out_2_Float);
|
|
float _Property_b187bbc548f3378caa8c964ca81707ca_Out_0_Float = _BaseAORemapMin;
|
|
float _Property_f06b327a4a8a7881a968eb399edf1d5c_Out_0_Float = _BaseAORemapMax;
|
|
float2 _Vector2_e267d722f88ada8da2d7edf8f7c0261d_Out_0_Vector2 = float2(_Property_b187bbc548f3378caa8c964ca81707ca_Out_0_Float, _Property_f06b327a4a8a7881a968eb399edf1d5c_Out_0_Float);
|
|
float _Remap_ad3c26564c54aa8cbb2f81aa114b3b78_Out_3_Float;
|
|
Unity_Remap_float(_Split_79d9d761d63eaa8c97fb3cb7fae0c380_G_2_Float, float2 (0, 1), _Vector2_e267d722f88ada8da2d7edf8f7c0261d_Out_0_Vector2, _Remap_ad3c26564c54aa8cbb2f81aa114b3b78_Out_3_Float);
|
|
float _Property_9a46e81c228dd0858cfdfc248fcb5efd_Out_0_Float = _BaseSmoothnessRemapMin;
|
|
float _Property_4bb3b70a3720ae8ea49e0f195b665d1f_Out_0_Float = _BaseSmoothnessRemapMax;
|
|
float2 _Vector2_6cef82af5d99208da4f2447a8ae60b4b_Out_0_Vector2 = float2(_Property_9a46e81c228dd0858cfdfc248fcb5efd_Out_0_Float, _Property_4bb3b70a3720ae8ea49e0f195b665d1f_Out_0_Float);
|
|
float _Remap_e30adbbf5d116285964ef079df15b895_Out_3_Float;
|
|
Unity_Remap_float(_Split_79d9d761d63eaa8c97fb3cb7fae0c380_A_4_Float, float2 (0, 1), _Vector2_6cef82af5d99208da4f2447a8ae60b4b_Out_0_Vector2, _Remap_e30adbbf5d116285964ef079df15b895_Out_3_Float);
|
|
float _Multiply_794172f65d2acd8981bc0e2ecc71376e_Out_2_Float;
|
|
Unity_Multiply_float_float(_SampleTexture2D_4bd08411faa60c828847f2247f06a809_B_6_Float, 2, _Multiply_794172f65d2acd8981bc0e2ecc71376e_Out_2_Float);
|
|
float _Add_dedefe53d91ea08c81d7a6d9071b0263_Out_2_Float;
|
|
Unity_Add_float(_Multiply_794172f65d2acd8981bc0e2ecc71376e_Out_2_Float, float(-1), _Add_dedefe53d91ea08c81d7a6d9071b0263_Out_2_Float);
|
|
float _Property_039bed9aac95ec8fa510fea3c4904280_Out_0_Float = _DetailSmoothnessScale;
|
|
float _Multiply_eb0a55c9be8cee86b9847c24f0e5be60_Out_2_Float;
|
|
Unity_Multiply_float_float(_Add_dedefe53d91ea08c81d7a6d9071b0263_Out_2_Float, _Property_039bed9aac95ec8fa510fea3c4904280_Out_0_Float, _Multiply_eb0a55c9be8cee86b9847c24f0e5be60_Out_2_Float);
|
|
float _Saturate_ca849f42c1cc238cb8fb1eb04fbfb9dd_Out_1_Float;
|
|
Unity_Saturate_float(_Multiply_eb0a55c9be8cee86b9847c24f0e5be60_Out_2_Float, _Saturate_ca849f42c1cc238cb8fb1eb04fbfb9dd_Out_1_Float);
|
|
float _Absolute_bc7994d4f833e382b37b5718ee583259_Out_1_Float;
|
|
Unity_Absolute_float(_Saturate_ca849f42c1cc238cb8fb1eb04fbfb9dd_Out_1_Float, _Absolute_bc7994d4f833e382b37b5718ee583259_Out_1_Float);
|
|
Bindings_BlendOverlayDetailSmoothness_06e12138dc89c0040b45a57abe520a1a_float _BlendOverlayDetailSmoothness_5a03404db5a34885a089f1aee363667f;
|
|
float _BlendOverlayDetailSmoothness_5a03404db5a34885a089f1aee363667f_SmoothnessOverlay_1_Float;
|
|
SG_BlendOverlayDetailSmoothness_06e12138dc89c0040b45a57abe520a1a_float(_Remap_e30adbbf5d116285964ef079df15b895_Out_3_Float, _Add_dedefe53d91ea08c81d7a6d9071b0263_Out_2_Float, _Absolute_bc7994d4f833e382b37b5718ee583259_Out_1_Float, _BlendOverlayDetailSmoothness_5a03404db5a34885a089f1aee363667f, _BlendOverlayDetailSmoothness_5a03404db5a34885a089f1aee363667f_SmoothnessOverlay_1_Float);
|
|
float _Saturate_3d6c6d852202408cb9b11aac8a566c89_Out_1_Float;
|
|
Unity_Saturate_float(_BlendOverlayDetailSmoothness_5a03404db5a34885a089f1aee363667f_SmoothnessOverlay_1_Float, _Saturate_3d6c6d852202408cb9b11aac8a566c89_Out_1_Float);
|
|
float3 _Vector3_8ed406a0096de4818282676bf24b1a85_Out_0_Vector3 = float3(_Multiply_d0c8d83444dbe38588583551936c7394_Out_2_Float, _Remap_ad3c26564c54aa8cbb2f81aa114b3b78_Out_3_Float, _Saturate_3d6c6d852202408cb9b11aac8a566c89_Out_1_Float);
|
|
float _Split_2ec5937af5023a8295e3858d32b193d5_R_1_Float = _Vector3_8ed406a0096de4818282676bf24b1a85_Out_0_Vector3[0];
|
|
float _Split_2ec5937af5023a8295e3858d32b193d5_G_2_Float = _Vector3_8ed406a0096de4818282676bf24b1a85_Out_0_Vector3[1];
|
|
float _Split_2ec5937af5023a8295e3858d32b193d5_B_3_Float = _Vector3_8ed406a0096de4818282676bf24b1a85_Out_0_Vector3[2];
|
|
float _Split_2ec5937af5023a8295e3858d32b193d5_A_4_Float = 0;
|
|
UnityTexture2D _Property_0f50abb140882d848d9fc7be8e3468dc_Out_0_Texture2D = UnityBuildTexture2DStructNoScale(_ShapeAO);
|
|
float4 _SampleTexture2D_33392602b94694898ec8227a89f13cc9_RGBA_0_Vector4 = SAMPLE_TEXTURE2D(_Property_0f50abb140882d848d9fc7be8e3468dc_Out_0_Texture2D.tex, _Property_0f50abb140882d848d9fc7be8e3468dc_Out_0_Texture2D.samplerstate, _Property_0f50abb140882d848d9fc7be8e3468dc_Out_0_Texture2D.GetTransformedUV(IN.uv0.xy) );
|
|
float _SampleTexture2D_33392602b94694898ec8227a89f13cc9_R_4_Float = _SampleTexture2D_33392602b94694898ec8227a89f13cc9_RGBA_0_Vector4.r;
|
|
float _SampleTexture2D_33392602b94694898ec8227a89f13cc9_G_5_Float = _SampleTexture2D_33392602b94694898ec8227a89f13cc9_RGBA_0_Vector4.g;
|
|
float _SampleTexture2D_33392602b94694898ec8227a89f13cc9_B_6_Float = _SampleTexture2D_33392602b94694898ec8227a89f13cc9_RGBA_0_Vector4.b;
|
|
float _SampleTexture2D_33392602b94694898ec8227a89f13cc9_A_7_Float = _SampleTexture2D_33392602b94694898ec8227a89f13cc9_RGBA_0_Vector4.a;
|
|
float _Property_a51c4b6d05e6718d919aadcf26153350_Out_0_Float = _ShapeAORemapMin;
|
|
float _Property_973fbc42b7a69088b9fc2c502945f369_Out_0_Float = _ShapeAORemapMax;
|
|
float2 _Vector2_a73753c5a8c4fa828d2eb25d4fb8b399_Out_0_Vector2 = float2(_Property_a51c4b6d05e6718d919aadcf26153350_Out_0_Float, _Property_973fbc42b7a69088b9fc2c502945f369_Out_0_Float);
|
|
float _Remap_270e7e207f303487bc04348b1b54db69_Out_3_Float;
|
|
Unity_Remap_float(_SampleTexture2D_33392602b94694898ec8227a89f13cc9_G_5_Float, float2 (0, 1), _Vector2_a73753c5a8c4fa828d2eb25d4fb8b399_Out_0_Vector2, _Remap_270e7e207f303487bc04348b1b54db69_Out_3_Float);
|
|
float _Minimum_307d1a8c4f5c6a87a1bbc658a5811679_Out_2_Float;
|
|
Unity_Minimum_float(_Split_2ec5937af5023a8295e3858d32b193d5_G_2_Float, _Remap_270e7e207f303487bc04348b1b54db69_Out_3_Float, _Minimum_307d1a8c4f5c6a87a1bbc658a5811679_Out_2_Float);
|
|
float3 _Vector3_fac10bf467f5ff82b4f071ba165bf458_Out_0_Vector3 = float3(_Split_2ec5937af5023a8295e3858d32b193d5_R_1_Float, _Minimum_307d1a8c4f5c6a87a1bbc658a5811679_Out_2_Float, _Split_2ec5937af5023a8295e3858d32b193d5_B_3_Float);
|
|
float _Property_fa6937565be49684915e6bb999529949_Out_0_Float = _CoverMetallic;
|
|
float _Multiply_d0ecb787fa289f8f9d3c2988d60f18d3_Out_2_Float;
|
|
Unity_Multiply_float_float(_Split_fe834aed1172f284a73d2d6810bdb696_R_1_Float, _Property_fa6937565be49684915e6bb999529949_Out_0_Float, _Multiply_d0ecb787fa289f8f9d3c2988d60f18d3_Out_2_Float);
|
|
float _Property_8f5ca0ba38d2a4858c1b4e44f6a375b4_Out_0_Float = _CoverAORemapMin;
|
|
float _Property_a15ef0fe46e1d88f9e20df6605bd1499_Out_0_Float = _CoverAORemapMax;
|
|
float2 _Vector2_969d809c2de99f89959cc4526a665db9_Out_0_Vector2 = float2(_Property_8f5ca0ba38d2a4858c1b4e44f6a375b4_Out_0_Float, _Property_a15ef0fe46e1d88f9e20df6605bd1499_Out_0_Float);
|
|
float _Remap_1b6065f44329038594e2d0cf001fa138_Out_3_Float;
|
|
Unity_Remap_float(_Split_fe834aed1172f284a73d2d6810bdb696_G_2_Float, float2 (0, 1), _Vector2_969d809c2de99f89959cc4526a665db9_Out_0_Vector2, _Remap_1b6065f44329038594e2d0cf001fa138_Out_3_Float);
|
|
float _Property_0fde68fd9824db8e9f5b4b0daff90270_Out_0_Float = _CoverSmoothnessRemapMin;
|
|
float _Property_abad1da00caf99869e0c9ca2926c76bd_Out_0_Float = _CoverSmoothnessRemapMax;
|
|
float2 _Vector2_1aa81c2ad7cc268caa834889569ce556_Out_0_Vector2 = float2(_Property_0fde68fd9824db8e9f5b4b0daff90270_Out_0_Float, _Property_abad1da00caf99869e0c9ca2926c76bd_Out_0_Float);
|
|
float _Remap_4948cd1fb38399888e9567ee2abb8acd_Out_3_Float;
|
|
Unity_Remap_float(_Split_fe834aed1172f284a73d2d6810bdb696_A_4_Float, float2 (0, 1), _Vector2_1aa81c2ad7cc268caa834889569ce556_Out_0_Vector2, _Remap_4948cd1fb38399888e9567ee2abb8acd_Out_3_Float);
|
|
float _Multiply_d3e207dba42f1984aacff3c1bf4eef0b_Out_2_Float;
|
|
Unity_Multiply_float_float(_SampleTexture2D_4bd08411faa60c828847f2247f06a809_B_6_Float, 2, _Multiply_d3e207dba42f1984aacff3c1bf4eef0b_Out_2_Float);
|
|
float _Add_0299d632f81fff8f969a0eed5f77397c_Out_2_Float;
|
|
Unity_Add_float(_Multiply_d3e207dba42f1984aacff3c1bf4eef0b_Out_2_Float, float(-1), _Add_0299d632f81fff8f969a0eed5f77397c_Out_2_Float);
|
|
float _Property_a2c7556e96b60b8e90cb5145ca6f9dde_Out_0_Float = _DetailCoverSmoothnessScale;
|
|
float _Multiply_d340fbee0985958dbb66555a73bd733c_Out_2_Float;
|
|
Unity_Multiply_float_float(_Add_0299d632f81fff8f969a0eed5f77397c_Out_2_Float, _Property_a2c7556e96b60b8e90cb5145ca6f9dde_Out_0_Float, _Multiply_d340fbee0985958dbb66555a73bd733c_Out_2_Float);
|
|
float _Saturate_2c0cc920be0ca88e937ec108b38f5fde_Out_1_Float;
|
|
Unity_Saturate_float(_Multiply_d340fbee0985958dbb66555a73bd733c_Out_2_Float, _Saturate_2c0cc920be0ca88e937ec108b38f5fde_Out_1_Float);
|
|
float _Absolute_3f81290e941e378283f7151c4a0731e2_Out_1_Float;
|
|
Unity_Absolute_float(_Saturate_2c0cc920be0ca88e937ec108b38f5fde_Out_1_Float, _Absolute_3f81290e941e378283f7151c4a0731e2_Out_1_Float);
|
|
Bindings_BlendOverlayDetailSmoothness_06e12138dc89c0040b45a57abe520a1a_float _BlendOverlayDetailSmoothness_e7a4fbe98378f084bd09f6e5d90e1cb8;
|
|
float _BlendOverlayDetailSmoothness_e7a4fbe98378f084bd09f6e5d90e1cb8_SmoothnessOverlay_1_Float;
|
|
SG_BlendOverlayDetailSmoothness_06e12138dc89c0040b45a57abe520a1a_float(_Remap_4948cd1fb38399888e9567ee2abb8acd_Out_3_Float, _Add_0299d632f81fff8f969a0eed5f77397c_Out_2_Float, _Absolute_3f81290e941e378283f7151c4a0731e2_Out_1_Float, _BlendOverlayDetailSmoothness_e7a4fbe98378f084bd09f6e5d90e1cb8, _BlendOverlayDetailSmoothness_e7a4fbe98378f084bd09f6e5d90e1cb8_SmoothnessOverlay_1_Float);
|
|
float _Saturate_9091ea9d9924c682ad6b94d3322ee822_Out_1_Float;
|
|
Unity_Saturate_float(_BlendOverlayDetailSmoothness_e7a4fbe98378f084bd09f6e5d90e1cb8_SmoothnessOverlay_1_Float, _Saturate_9091ea9d9924c682ad6b94d3322ee822_Out_1_Float);
|
|
float3 _Vector3_93bafe600474e7819ebc13e534b986bf_Out_0_Vector3 = float3(_Multiply_d0ecb787fa289f8f9d3c2988d60f18d3_Out_2_Float, _Remap_1b6065f44329038594e2d0cf001fa138_Out_3_Float, _Saturate_9091ea9d9924c682ad6b94d3322ee822_Out_1_Float);
|
|
float _Split_6ec9cc5e56f3f68ba37ff91557979c18_R_1_Float = _Vector3_93bafe600474e7819ebc13e534b986bf_Out_0_Vector3[0];
|
|
float _Split_6ec9cc5e56f3f68ba37ff91557979c18_G_2_Float = _Vector3_93bafe600474e7819ebc13e534b986bf_Out_0_Vector3[1];
|
|
float _Split_6ec9cc5e56f3f68ba37ff91557979c18_B_3_Float = _Vector3_93bafe600474e7819ebc13e534b986bf_Out_0_Vector3[2];
|
|
float _Split_6ec9cc5e56f3f68ba37ff91557979c18_A_4_Float = 0;
|
|
float _Property_ca9c61425ece6b8c909c06b1e2738f1a_Out_0_Float = _CoverShapeAORemapMin;
|
|
float _Property_b9be92f1612c908d80643f0e96015b33_Out_0_Float = _CoverShapeAORemapMax;
|
|
float2 _Vector2_9b862c4e147d1082afad3606339d2130_Out_0_Vector2 = float2(_Property_ca9c61425ece6b8c909c06b1e2738f1a_Out_0_Float, _Property_b9be92f1612c908d80643f0e96015b33_Out_0_Float);
|
|
float _Remap_c1f0022add809b83bad7b493177bddb7_Out_3_Float;
|
|
Unity_Remap_float(_SampleTexture2D_33392602b94694898ec8227a89f13cc9_G_5_Float, float2 (0, 1), _Vector2_9b862c4e147d1082afad3606339d2130_Out_0_Vector2, _Remap_c1f0022add809b83bad7b493177bddb7_Out_3_Float);
|
|
float _Minimum_595c2f31bb0ec588977a2b9ea46bf6b0_Out_2_Float;
|
|
Unity_Minimum_float(_Split_6ec9cc5e56f3f68ba37ff91557979c18_G_2_Float, _Remap_c1f0022add809b83bad7b493177bddb7_Out_3_Float, _Minimum_595c2f31bb0ec588977a2b9ea46bf6b0_Out_2_Float);
|
|
float3 _Vector3_6cb5b2c4675bb28cb41ea88b6eaa2aff_Out_0_Vector3 = float3(_Split_6ec9cc5e56f3f68ba37ff91557979c18_R_1_Float, _Minimum_595c2f31bb0ec588977a2b9ea46bf6b0_Out_2_Float, _Split_6ec9cc5e56f3f68ba37ff91557979c18_B_3_Float);
|
|
float3 _Lerp_fa40b54f3d5a1a8a95f6306e837b9338_Out_3_Vector3;
|
|
Unity_Lerp_float3(_Vector3_fac10bf467f5ff82b4f071ba165bf458_Out_0_Vector3, _Vector3_6cb5b2c4675bb28cb41ea88b6eaa2aff_Out_0_Vector3, (_Branch_3ccf365d359214809d30b6430d863e3f_Out_3_Float.xxx), _Lerp_fa40b54f3d5a1a8a95f6306e837b9338_Out_3_Vector3);
|
|
float _Split_c4a5352a58a4f88fb40410f956825dc6_R_1_Float = _Lerp_fa40b54f3d5a1a8a95f6306e837b9338_Out_3_Vector3[0];
|
|
float _Split_c4a5352a58a4f88fb40410f956825dc6_G_2_Float = _Lerp_fa40b54f3d5a1a8a95f6306e837b9338_Out_3_Vector3[1];
|
|
float _Split_c4a5352a58a4f88fb40410f956825dc6_B_3_Float = _Lerp_fa40b54f3d5a1a8a95f6306e837b9338_Out_3_Vector3[2];
|
|
float _Split_c4a5352a58a4f88fb40410f956825dc6_A_4_Float = 0;
|
|
float _Property_7861e880056eb88ab923a2ff5b12179d_Out_0_Float = _WetSmoothness;
|
|
float _Lerp_ee63160826cff4869f0e63568dd6f8b7_Out_3_Float;
|
|
Unity_Lerp_float(_Split_c4a5352a58a4f88fb40410f956825dc6_B_3_Float, _Property_7861e880056eb88ab923a2ff5b12179d_Out_0_Float, _OneMinus_e16dfb812ec64b8891c541171687142f_Out_1_Float, _Lerp_ee63160826cff4869f0e63568dd6f8b7_Out_3_Float);
|
|
float _Property_1c389d922d4fba86bc62c7d42ac8643d_Out_0_Float = _CoverNormalScale;
|
|
float3 _NormalStrength_db3de71f618fee878c84a13374c7adc4_Out_2_Vector3;
|
|
Unity_NormalStrength_float((_TriplanarNMn_ba7e211dd8095589a2939b5b239ca8e0_XYZ_1_Vector4.xyz), _Property_1c389d922d4fba86bc62c7d42ac8643d_Out_0_Float, _NormalStrength_db3de71f618fee878c84a13374c7adc4_Out_2_Vector3);
|
|
float3 _NormalBlend_b2e537e7a99f9280ba682b47daf3c5e3_Out_2_Vector3;
|
|
Unity_NormalBlend_float(_NormalStrength_db3de71f618fee878c84a13374c7adc4_Out_2_Vector3, _NormalStrength_401cd5af500bd68dbc9bca19d548d0db_Out_2_Vector3, _NormalBlend_b2e537e7a99f9280ba682b47daf3c5e3_Out_2_Vector3);
|
|
float2 _Vector2_b87489f8633d268598edb76163057164_Out_0_Vector2 = float2(_SampleTexture2D_4bd08411faa60c828847f2247f06a809_A_7_Float, _SampleTexture2D_4bd08411faa60c828847f2247f06a809_G_5_Float);
|
|
float2 _Multiply_95e603bb6d4bd7809de0ae42c8f45058_Out_2_Vector2;
|
|
Unity_Multiply_float2_float2(_Vector2_b87489f8633d268598edb76163057164_Out_0_Vector2, float2(2, 2), _Multiply_95e603bb6d4bd7809de0ae42c8f45058_Out_2_Vector2);
|
|
float2 _Add_c116ac3906ccf68d82dd5b73d0f5659a_Out_2_Vector2;
|
|
Unity_Add_float2(_Multiply_95e603bb6d4bd7809de0ae42c8f45058_Out_2_Vector2, float2(-1, -1), _Add_c116ac3906ccf68d82dd5b73d0f5659a_Out_2_Vector2);
|
|
float _Property_988acb131fd330878b4ac0672366ad90_Out_0_Float = _DetailCoverNormalScale;
|
|
float2 _Multiply_6de1a79215e1928f9f3fc3293df74f88_Out_2_Vector2;
|
|
Unity_Multiply_float2_float2(_Add_c116ac3906ccf68d82dd5b73d0f5659a_Out_2_Vector2, (_Property_988acb131fd330878b4ac0672366ad90_Out_0_Float.xx), _Multiply_6de1a79215e1928f9f3fc3293df74f88_Out_2_Vector2);
|
|
float _Split_9ce53bb7a65f16809b6a95d82286186e_R_1_Float = _Multiply_6de1a79215e1928f9f3fc3293df74f88_Out_2_Vector2[0];
|
|
float _Split_9ce53bb7a65f16809b6a95d82286186e_G_2_Float = _Multiply_6de1a79215e1928f9f3fc3293df74f88_Out_2_Vector2[1];
|
|
float _Split_9ce53bb7a65f16809b6a95d82286186e_B_3_Float = 0;
|
|
float _Split_9ce53bb7a65f16809b6a95d82286186e_A_4_Float = 0;
|
|
float _DotProduct_8912687db556b6819d2a38ba8511a7ae_Out_2_Float;
|
|
Unity_DotProduct_float2(_Multiply_6de1a79215e1928f9f3fc3293df74f88_Out_2_Vector2, _Multiply_6de1a79215e1928f9f3fc3293df74f88_Out_2_Vector2, _DotProduct_8912687db556b6819d2a38ba8511a7ae_Out_2_Float);
|
|
float _Saturate_013ea9a02a1ff18992540b270836cc73_Out_1_Float;
|
|
Unity_Saturate_float(_DotProduct_8912687db556b6819d2a38ba8511a7ae_Out_2_Float, _Saturate_013ea9a02a1ff18992540b270836cc73_Out_1_Float);
|
|
float _OneMinus_eefd2695dc7d77838984fc25a1c00b0b_Out_1_Float;
|
|
Unity_OneMinus_float(_Saturate_013ea9a02a1ff18992540b270836cc73_Out_1_Float, _OneMinus_eefd2695dc7d77838984fc25a1c00b0b_Out_1_Float);
|
|
float _SquareRoot_1d25cc71b4ce9286af1666a96ae6ac5a_Out_1_Float;
|
|
Unity_SquareRoot_float(_OneMinus_eefd2695dc7d77838984fc25a1c00b0b_Out_1_Float, _SquareRoot_1d25cc71b4ce9286af1666a96ae6ac5a_Out_1_Float);
|
|
float3 _Vector3_c3d9c7e92a1c5b8ea5650ab3bb421c27_Out_0_Vector3 = float3(_Split_9ce53bb7a65f16809b6a95d82286186e_R_1_Float, _Split_9ce53bb7a65f16809b6a95d82286186e_G_2_Float, _SquareRoot_1d25cc71b4ce9286af1666a96ae6ac5a_Out_1_Float);
|
|
float3 _NormalBlend_8e1d1c87f8c12b87b64883533bfa43be_Out_2_Vector3;
|
|
Unity_NormalBlend_float(_NormalBlend_b2e537e7a99f9280ba682b47daf3c5e3_Out_2_Vector3, _Vector3_c3d9c7e92a1c5b8ea5650ab3bb421c27_Out_0_Vector3, _NormalBlend_8e1d1c87f8c12b87b64883533bfa43be_Out_2_Vector3);
|
|
float3 _Lerp_48cd568fef7d358b8d65b989db745e6c_Out_3_Vector3;
|
|
Unity_Lerp_float3(_NormalBlend_4242e1b4a785378aa59dd49e9d993ffc_Out_2_Vector3, _NormalBlend_8e1d1c87f8c12b87b64883533bfa43be_Out_2_Vector3, (_Branch_3ccf365d359214809d30b6430d863e3f_Out_3_Float.xxx), _Lerp_48cd568fef7d358b8d65b989db745e6c_Out_3_Vector3);
|
|
surface.BaseColor = _Lerp_43bc7a9493df5a829abf080ee4ad3298_Out_3_Vector3;
|
|
surface.Emission = float3(0, 0, 0);
|
|
surface.Alpha = float(1);
|
|
surface.BentNormal = IN.TangentSpaceNormal;
|
|
surface.Smoothness = _Lerp_ee63160826cff4869f0e63568dd6f8b7_Out_3_Float;
|
|
surface.Occlusion = _Split_c4a5352a58a4f88fb40410f956825dc6_G_2_Float;
|
|
surface.NormalTS = _Lerp_48cd568fef7d358b8d65b989db745e6c_Out_3_Vector3;
|
|
surface.Metallic = _Split_c4a5352a58a4f88fb40410f956825dc6_R_1_Float;
|
|
return surface;
|
|
}
|
|
|
|
// --------------------------------------------------
|
|
// Build Graph Inputs
|
|
#ifdef HAVE_VFX_MODIFICATION
|
|
#define VFX_SRP_ATTRIBUTES AttributesMesh
|
|
#define VaryingsMeshType VaryingsMeshToPS
|
|
#define VFX_SRP_VARYINGS VaryingsMeshType
|
|
#define VFX_SRP_SURFACE_INPUTS FragInputs
|
|
#endif
|
|
|
|
VertexDescriptionInputs AttributesMeshToVertexDescriptionInputs(AttributesMesh input)
|
|
{
|
|
VertexDescriptionInputs output;
|
|
ZERO_INITIALIZE(VertexDescriptionInputs, output);
|
|
|
|
output.ObjectSpaceNormal = input.normalOS;
|
|
output.ObjectSpaceTangent = input.tangentOS.xyz;
|
|
output.ObjectSpacePosition = input.positionOS;
|
|
#if UNITY_ANY_INSTANCING_ENABLED
|
|
#else
|
|
#endif
|
|
|
|
return output;
|
|
}
|
|
|
|
VertexDescription GetVertexDescription(AttributesMesh input, float3 timeParameters
|
|
#ifdef HAVE_VFX_MODIFICATION
|
|
, AttributesElement element
|
|
#endif
|
|
)
|
|
{
|
|
// build graph inputs
|
|
VertexDescriptionInputs vertexDescriptionInputs = AttributesMeshToVertexDescriptionInputs(input);
|
|
// Override time parameters with used one (This is required to correctly handle motion vectors for vertex animation based on time)
|
|
|
|
// evaluate vertex graph
|
|
#ifdef HAVE_VFX_MODIFICATION
|
|
GraphProperties properties;
|
|
ZERO_INITIALIZE(GraphProperties, properties);
|
|
|
|
// Fetch the vertex graph properties for the particle instance.
|
|
GetElementVertexProperties(element, properties);
|
|
|
|
VertexDescription vertexDescription = VertexDescriptionFunction(vertexDescriptionInputs, properties);
|
|
#else
|
|
VertexDescription vertexDescription = VertexDescriptionFunction(vertexDescriptionInputs);
|
|
#endif
|
|
return vertexDescription;
|
|
|
|
}
|
|
|
|
AttributesMesh ApplyMeshModification(AttributesMesh input, float3 timeParameters
|
|
#ifdef USE_CUSTOMINTERP_SUBSTRUCT
|
|
#ifdef TESSELLATION_ON
|
|
, inout VaryingsMeshToDS varyings
|
|
#else
|
|
, inout VaryingsMeshToPS varyings
|
|
#endif
|
|
#endif
|
|
#ifdef HAVE_VFX_MODIFICATION
|
|
, AttributesElement element
|
|
#endif
|
|
)
|
|
{
|
|
VertexDescription vertexDescription = GetVertexDescription(input, timeParameters
|
|
#ifdef HAVE_VFX_MODIFICATION
|
|
, element
|
|
#endif
|
|
);
|
|
|
|
// copy graph output to the results
|
|
input.positionOS = vertexDescription.Position;
|
|
input.normalOS = vertexDescription.Normal;
|
|
input.tangentOS.xyz = vertexDescription.Tangent;
|
|
|
|
|
|
|
|
return input;
|
|
}
|
|
|
|
#if defined(_ADD_CUSTOM_VELOCITY) // For shader graph custom velocity
|
|
// Return precomputed Velocity in object space
|
|
float3 GetCustomVelocity(AttributesMesh input
|
|
#ifdef HAVE_VFX_MODIFICATION
|
|
, AttributesElement element
|
|
#endif
|
|
)
|
|
{
|
|
VertexDescription vertexDescription = GetVertexDescription(input, _TimeParameters.xyz
|
|
#ifdef HAVE_VFX_MODIFICATION
|
|
, element
|
|
#endif
|
|
);
|
|
return vertexDescription.CustomVelocity;
|
|
}
|
|
#endif
|
|
|
|
FragInputs BuildFragInputs(VaryingsMeshToPS input)
|
|
{
|
|
FragInputs output;
|
|
ZERO_INITIALIZE(FragInputs, output);
|
|
|
|
// Init to some default value to make the computer quiet (else it output 'divide by zero' warning even if value is not used).
|
|
// TODO: this is a really poor workaround, but the variable is used in a bunch of places
|
|
// to compute normals which are then passed on elsewhere to compute other values...
|
|
output.tangentToWorld = k_identity3x3;
|
|
output.positionSS = input.positionCS; // input.positionCS is SV_Position
|
|
|
|
output.positionRWS = input.positionRWS;
|
|
output.tangentToWorld = BuildTangentToWorld(input.tangentWS, input.normalWS);
|
|
output.texCoord0 = input.texCoord0;
|
|
output.color = input.color;
|
|
|
|
#if UNITY_ANY_INSTANCING_ENABLED
|
|
#else
|
|
#endif
|
|
|
|
#ifdef HAVE_VFX_MODIFICATION
|
|
// FragInputs from VFX come from two places: Interpolator or CBuffer.
|
|
#if VFX_USE_GRAPH_VALUES
|
|
uint instanceActiveIndex = asuint(UNITY_ACCESS_INSTANCED_PROP(PerInstance, _InstanceActiveIndex));
|
|
/* WARNING: $splice Could not find named fragment 'VFXLoadGraphValues' */
|
|
#endif
|
|
|
|
/* WARNING: $splice Could not find named fragment 'VFXSetFragInputs' */
|
|
|
|
#endif
|
|
|
|
// splice point to copy custom interpolator fields from varyings to frag inputs
|
|
|
|
|
|
return output;
|
|
}
|
|
|
|
// existing HDRP code uses the combined function to go directly from packed to frag inputs
|
|
FragInputs UnpackVaryingsMeshToFragInputs(PackedVaryingsMeshToPS input)
|
|
{
|
|
UNITY_SETUP_INSTANCE_ID(input);
|
|
#if defined(HAVE_VFX_MODIFICATION) && defined(UNITY_INSTANCING_ENABLED)
|
|
unity_InstanceID = input.instanceID;
|
|
#endif
|
|
VaryingsMeshToPS unpacked = UnpackVaryingsMeshToPS(input);
|
|
return BuildFragInputs(unpacked);
|
|
}
|
|
SurfaceDescriptionInputs FragInputsToSurfaceDescriptionInputs(FragInputs input, float3 viewWS)
|
|
{
|
|
SurfaceDescriptionInputs output;
|
|
ZERO_INITIALIZE(SurfaceDescriptionInputs, output);
|
|
|
|
output.WorldSpaceNormal = normalize(input.tangentToWorld[2].xyz);
|
|
#if defined(SHADER_STAGE_RAY_TRACING)
|
|
#else
|
|
#endif
|
|
output.TangentSpaceNormal = float3(0.0f, 0.0f, 1.0f);
|
|
output.WorldSpaceTangent = input.tangentToWorld[0].xyz;
|
|
output.WorldSpaceBiTangent = input.tangentToWorld[1].xyz;
|
|
output.AbsoluteWorldSpacePosition = GetAbsolutePositionWS(input.positionRWS);
|
|
|
|
#if UNITY_UV_STARTS_AT_TOP
|
|
#else
|
|
#endif
|
|
|
|
|
|
output.uv0 = input.texCoord0;
|
|
output.VertexColor = input.color;
|
|
|
|
// splice point to copy frag inputs custom interpolator pack into the SDI
|
|
|
|
|
|
return output;
|
|
}
|
|
|
|
// --------------------------------------------------
|
|
// Build Surface Data (Specific Material)
|
|
|
|
void ApplyDecalToSurfaceDataNoNormal(DecalSurfaceData decalSurfaceData, inout SurfaceData surfaceData);
|
|
|
|
void ApplyDecalAndGetNormal(FragInputs fragInputs, PositionInputs posInput, SurfaceDescription surfaceDescription,
|
|
inout SurfaceData surfaceData)
|
|
{
|
|
float3 doubleSidedConstants = GetDoubleSidedConstants();
|
|
|
|
#ifdef DECAL_NORMAL_BLENDING
|
|
// SG nodes don't ouptut surface gradients, so if decals require surf grad blending, we have to convert
|
|
// the normal to gradient before applying the decal. We then have to resolve the gradient back to world space
|
|
float3 normalTS;
|
|
|
|
normalTS = SurfaceGradientFromTangentSpaceNormalAndFromTBN(surfaceDescription.NormalTS,
|
|
fragInputs.tangentToWorld[0], fragInputs.tangentToWorld[1]);
|
|
|
|
|
|
#if HAVE_DECALS
|
|
if (_EnableDecals)
|
|
{
|
|
float alpha = 1.0;
|
|
alpha = surfaceDescription.Alpha;
|
|
|
|
DecalSurfaceData decalSurfaceData = GetDecalSurfaceData(posInput, fragInputs, alpha);
|
|
ApplyDecalToSurfaceNormal(decalSurfaceData, fragInputs.tangentToWorld[2], normalTS);
|
|
ApplyDecalToSurfaceDataNoNormal(decalSurfaceData, surfaceData);
|
|
}
|
|
#endif
|
|
|
|
GetNormalWS_SG(fragInputs, normalTS, surfaceData.normalWS, doubleSidedConstants);
|
|
#else
|
|
// normal delivered to master node
|
|
GetNormalWS(fragInputs, surfaceDescription.NormalTS, surfaceData.normalWS, doubleSidedConstants);
|
|
|
|
#if HAVE_DECALS
|
|
if (_EnableDecals)
|
|
{
|
|
float alpha = 1.0;
|
|
alpha = surfaceDescription.Alpha;
|
|
|
|
// Both uses and modifies 'surfaceData.normalWS'.
|
|
DecalSurfaceData decalSurfaceData = GetDecalSurfaceData(posInput, fragInputs, alpha);
|
|
ApplyDecalToSurfaceNormal(decalSurfaceData, surfaceData.normalWS.xyz);
|
|
ApplyDecalToSurfaceDataNoNormal(decalSurfaceData, surfaceData);
|
|
}
|
|
#endif
|
|
#endif
|
|
}
|
|
void BuildSurfaceData(FragInputs fragInputs, inout SurfaceDescription surfaceDescription, float3 V, PositionInputs posInput, out SurfaceData surfaceData, out float3 bentNormalWS)
|
|
{
|
|
ZERO_INITIALIZE(SurfaceData, surfaceData);
|
|
|
|
// specularOcclusion need to be init ahead of decal to quiet the compiler that modify the SurfaceData struct
|
|
// however specularOcclusion can come from the graph, so need to be init here so it can be override.
|
|
surfaceData.specularOcclusion = 1.0;
|
|
surfaceData.thickness = 0.0;
|
|
|
|
surfaceData.baseColor = surfaceDescription.BaseColor;
|
|
surfaceData.perceptualSmoothness = surfaceDescription.Smoothness;
|
|
surfaceData.ambientOcclusion = surfaceDescription.Occlusion;
|
|
surfaceData.metallic = surfaceDescription.Metallic;
|
|
|
|
#if defined(_REFRACTION_PLANE) || defined(_REFRACTION_SPHERE) || defined(_REFRACTION_THIN)
|
|
if (_EnableSSRefraction)
|
|
{
|
|
|
|
surfaceData.transmittanceMask = (1.0 - surfaceDescription.Alpha);
|
|
surfaceDescription.Alpha = 1.0;
|
|
}
|
|
else
|
|
{
|
|
surfaceData.ior = 1.0;
|
|
surfaceData.transmittanceColor = float3(1.0, 1.0, 1.0);
|
|
surfaceData.atDistance = 1.0;
|
|
surfaceData.transmittanceMask = 0.0;
|
|
surfaceDescription.Alpha = 1.0;
|
|
}
|
|
#else
|
|
surfaceData.ior = 1.0;
|
|
surfaceData.transmittanceColor = float3(1.0, 1.0, 1.0);
|
|
surfaceData.atDistance = 1.0;
|
|
surfaceData.transmittanceMask = 0.0;
|
|
#endif
|
|
|
|
// These static material feature allow compile time optimization
|
|
surfaceData.materialFeatures = MATERIALFEATUREFLAGS_LIT_STANDARD;
|
|
#ifdef _MATERIAL_FEATURE_SUBSURFACE_SCATTERING
|
|
surfaceData.materialFeatures |= MATERIALFEATUREFLAGS_LIT_SUBSURFACE_SCATTERING;
|
|
#endif
|
|
|
|
#ifdef _MATERIAL_FEATURE_TRANSMISSION
|
|
surfaceData.materialFeatures |= MATERIALFEATUREFLAGS_LIT_TRANSMISSION;
|
|
#endif
|
|
|
|
#ifdef _MATERIAL_FEATURE_COLORED_TRANSMISSION
|
|
surfaceData.materialFeatures |= MATERIALFEATUREFLAGS_LIT_TRANSMISSION;
|
|
surfaceData.materialFeatures |= MATERIALFEATUREFLAGS_LIT_COLORED_TRANSMISSION;
|
|
|
|
#endif
|
|
|
|
#ifdef _MATERIAL_FEATURE_ANISOTROPY
|
|
surfaceData.materialFeatures |= MATERIALFEATUREFLAGS_LIT_ANISOTROPY;
|
|
|
|
// Initialize the normal to something non-zero to avoid a div-zero warning for anisotropy.
|
|
surfaceData.normalWS = float3(0, 1, 0);
|
|
#endif
|
|
|
|
#ifdef _MATERIAL_FEATURE_IRIDESCENCE
|
|
surfaceData.materialFeatures |= MATERIALFEATUREFLAGS_LIT_IRIDESCENCE;
|
|
#endif
|
|
|
|
#ifdef _MATERIAL_FEATURE_SPECULAR_COLOR
|
|
surfaceData.materialFeatures |= MATERIALFEATUREFLAGS_LIT_SPECULAR_COLOR;
|
|
#endif
|
|
|
|
#ifdef _MATERIAL_FEATURE_CLEAR_COAT
|
|
surfaceData.materialFeatures |= MATERIALFEATUREFLAGS_LIT_CLEAR_COAT;
|
|
#endif
|
|
|
|
#if defined (_MATERIAL_FEATURE_SPECULAR_COLOR) && defined (_ENERGY_CONSERVING_SPECULAR)
|
|
// Require to have setup baseColor
|
|
// Reproduce the energy conservation done in legacy Unity. Not ideal but better for compatibility and users can unchek it
|
|
surfaceData.baseColor *= (1.0 - Max3(surfaceData.specularColor.r, surfaceData.specularColor.g, surfaceData.specularColor.b));
|
|
#endif
|
|
|
|
float3 doubleSidedConstants = GetDoubleSidedConstants();
|
|
|
|
ApplyDecalAndGetNormal(fragInputs, posInput, surfaceDescription, surfaceData);
|
|
|
|
surfaceData.geomNormalWS = fragInputs.tangentToWorld[2];
|
|
|
|
surfaceData.tangentWS = normalize(fragInputs.tangentToWorld[0].xyz); // The tangent is not normalize in tangentToWorld for mikkt. TODO: Check if it expected that we normalize with Morten. Tag: SURFACE_GRADIENT
|
|
|
|
|
|
bentNormalWS = surfaceData.normalWS;
|
|
|
|
surfaceData.tangentWS = Orthonormalize(surfaceData.tangentWS, surfaceData.normalWS);
|
|
|
|
#ifdef DEBUG_DISPLAY
|
|
#if !defined(SHADER_STAGE_RAY_TRACING)
|
|
// Mipmap mode debugging isn't supported with ray tracing as it relies on derivatives
|
|
if (_DebugMipMapMode != DEBUGMIPMAPMODE_NONE)
|
|
{
|
|
#ifdef FRAG_INPUTS_USE_TEXCOORD0
|
|
surfaceData.baseColor = GET_TEXTURE_STREAMING_DEBUG(posInput.positionSS, fragInputs.texCoord0);
|
|
#else
|
|
surfaceData.baseColor = GET_TEXTURE_STREAMING_DEBUG_NO_UV(posInput.positionSS);
|
|
#endif
|
|
surfaceData.metallic = 0;
|
|
}
|
|
#endif
|
|
|
|
// We need to call ApplyDebugToSurfaceData after filling the surfaceData and before filling builtinData
|
|
// as it can modify attribute use for static lighting
|
|
ApplyDebugToSurfaceData(fragInputs.tangentToWorld, surfaceData);
|
|
#endif
|
|
|
|
// By default we use the ambient occlusion with Tri-ace trick (apply outside) for specular occlusion.
|
|
// If user provide bent normal then we process a better term
|
|
#if defined(_SPECULAR_OCCLUSION_CUSTOM)
|
|
// Just use the value passed through via the slot (not active otherwise)
|
|
#elif defined(_SPECULAR_OCCLUSION_FROM_AO_BENT_NORMAL)
|
|
// If we have bent normal and ambient occlusion, process a specular occlusion
|
|
surfaceData.specularOcclusion = GetSpecularOcclusionFromBentAO(V, bentNormalWS, surfaceData.normalWS, surfaceData.ambientOcclusion, PerceptualSmoothnessToPerceptualRoughness(surfaceData.perceptualSmoothness));
|
|
#elif defined(_AMBIENT_OCCLUSION) && defined(_SPECULAR_OCCLUSION_FROM_AO)
|
|
surfaceData.specularOcclusion = GetSpecularOcclusionFromAmbientOcclusion(ClampNdotV(dot(surfaceData.normalWS, V)), surfaceData.ambientOcclusion, PerceptualSmoothnessToRoughness(surfaceData.perceptualSmoothness));
|
|
#endif
|
|
|
|
#if defined(_ENABLE_GEOMETRIC_SPECULAR_AA) && !defined(SHADER_STAGE_RAY_TRACING)
|
|
surfaceData.perceptualSmoothness = GeometricNormalFiltering(surfaceData.perceptualSmoothness, fragInputs.tangentToWorld[2], surfaceDescription.SpecularAAScreenSpaceVariance, surfaceDescription.SpecularAAThreshold);
|
|
#endif
|
|
}
|
|
|
|
// --------------------------------------------------
|
|
// Get Surface And BuiltinData
|
|
|
|
void GetSurfaceAndBuiltinData(FragInputs fragInputs, float3 V, inout PositionInputs posInput, out SurfaceData surfaceData, out BuiltinData builtinData RAY_TRACING_OPTIONAL_PARAMETERS)
|
|
{
|
|
// Don't dither if displaced tessellation (we're fading out the displacement instead to match the next LOD)
|
|
#if !defined(SHADER_STAGE_RAY_TRACING) && !defined(_TESSELLATION_DISPLACEMENT)
|
|
#ifdef LOD_FADE_CROSSFADE // enable dithering LOD transition if user select CrossFade transition in LOD group
|
|
LODDitheringTransition(ComputeFadeMaskSeed(V, posInput.positionSS), unity_LODFade.x);
|
|
#endif
|
|
#endif
|
|
|
|
#ifndef SHADER_UNLIT
|
|
#ifdef _DOUBLESIDED_ON
|
|
float3 doubleSidedConstants = _DoubleSidedConstants.xyz;
|
|
#else
|
|
float3 doubleSidedConstants = float3(1.0, 1.0, 1.0);
|
|
#endif
|
|
|
|
ApplyDoubleSidedFlipOrMirror(fragInputs, doubleSidedConstants); // Apply double sided flip on the vertex normal
|
|
#endif // SHADER_UNLIT
|
|
|
|
SurfaceDescriptionInputs surfaceDescriptionInputs = FragInputsToSurfaceDescriptionInputs(fragInputs, V);
|
|
|
|
#if defined(HAVE_VFX_MODIFICATION)
|
|
GraphProperties properties;
|
|
ZERO_INITIALIZE(GraphProperties, properties);
|
|
|
|
GetElementPixelProperties(fragInputs, properties);
|
|
|
|
SurfaceDescription surfaceDescription = SurfaceDescriptionFunction(surfaceDescriptionInputs, properties);
|
|
#else
|
|
SurfaceDescription surfaceDescription = SurfaceDescriptionFunction(surfaceDescriptionInputs);
|
|
#endif
|
|
|
|
#ifdef DEBUG_DISPLAY
|
|
if (_DebugMipMapMode != DEBUGMIPMAPMODE_NONE)
|
|
{
|
|
surfaceDescription.Alpha = 1.0f;
|
|
}
|
|
#endif
|
|
|
|
// Perform alpha test very early to save performance (a killed pixel will not sample textures)
|
|
// TODO: split graph evaluation to grab just alpha dependencies first? tricky..
|
|
#ifdef _ALPHATEST_ON
|
|
float alphaCutoff = surfaceDescription.AlphaClipThreshold;
|
|
#if SHADERPASS == SHADERPASS_TRANSPARENT_DEPTH_PREPASS
|
|
// The TransparentDepthPrepass is also used with SSR transparent.
|
|
// If an artists enable transaprent SSR but not the TransparentDepthPrepass itself, then we use AlphaClipThreshold
|
|
// otherwise if TransparentDepthPrepass is enabled we use AlphaClipThresholdDepthPrepass
|
|
#elif SHADERPASS == SHADERPASS_TRANSPARENT_DEPTH_POSTPASS
|
|
// DepthPostpass always use its own alpha threshold
|
|
alphaCutoff = surfaceDescription.AlphaClipThresholdDepthPostpass;
|
|
#elif (SHADERPASS == SHADERPASS_SHADOWS) || (SHADERPASS == SHADERPASS_RAYTRACING_VISIBILITY)
|
|
// If use shadow threshold isn't enable we don't allow any test
|
|
#endif
|
|
|
|
GENERIC_ALPHA_TEST(surfaceDescription.Alpha, alphaCutoff);
|
|
#endif
|
|
|
|
#if !defined(SHADER_STAGE_RAY_TRACING) && _DEPTHOFFSET_ON
|
|
ApplyDepthOffsetPositionInput(V, surfaceDescription.DepthOffset, GetViewForwardDir(), GetWorldToHClipMatrix(), posInput);
|
|
#endif
|
|
|
|
#ifndef SHADER_UNLIT
|
|
float3 bentNormalWS;
|
|
BuildSurfaceData(fragInputs, surfaceDescription, V, posInput, surfaceData, bentNormalWS);
|
|
|
|
#ifdef FRAG_INPUTS_USE_TEXCOORD1
|
|
float4 lightmapTexCoord1 = fragInputs.texCoord1;
|
|
#else
|
|
float4 lightmapTexCoord1 = float4(0,0,0,0);
|
|
#endif
|
|
|
|
#ifdef FRAG_INPUTS_USE_TEXCOORD2
|
|
float4 lightmapTexCoord2 = fragInputs.texCoord2;
|
|
#else
|
|
float4 lightmapTexCoord2 = float4(0,0,0,0);
|
|
#endif
|
|
|
|
float alpha = 1.0;
|
|
alpha = surfaceDescription.Alpha;
|
|
|
|
// Builtin Data
|
|
// For back lighting we use the oposite vertex normal
|
|
InitBuiltinData(posInput, alpha, bentNormalWS, -fragInputs.tangentToWorld[2], lightmapTexCoord1, lightmapTexCoord2, builtinData);
|
|
|
|
#else
|
|
BuildSurfaceData(fragInputs, surfaceDescription, V, posInput, surfaceData);
|
|
|
|
ZERO_BUILTIN_INITIALIZE(builtinData); // No call to InitBuiltinData as we don't have any lighting
|
|
builtinData.opacity = surfaceDescription.Alpha;
|
|
|
|
#if defined(DEBUG_DISPLAY)
|
|
// Light Layers are currently not used for the Unlit shader (because it is not lit)
|
|
// But Unlit objects do cast shadows according to their rendering layer mask, which is what we want to
|
|
// display in the light layers visualization mode, therefore we need the renderingLayers
|
|
builtinData.renderingLayers = GetMeshRenderingLayerMask();
|
|
#endif
|
|
|
|
#endif // SHADER_UNLIT
|
|
|
|
#ifdef _ALPHATEST_ON
|
|
// Used for sharpening by alpha to mask - Alpha to covertage is only used with depth only and forward pass (no shadow pass, no transparent pass)
|
|
builtinData.alphaClipTreshold = alphaCutoff;
|
|
#endif
|
|
|
|
// override sampleBakedGI - not used by Unlit
|
|
// When overriding GI, we need to force the isLightmap flag to make sure we don't add APV (sampled in the lightloop) on top of the overridden value (set at GBuffer stage)
|
|
|
|
builtinData.emissiveColor = surfaceDescription.Emission;
|
|
|
|
// Note this will not fully work on transparent surfaces (can check with _SURFACE_TYPE_TRANSPARENT define)
|
|
// We will always overwrite vt feeback with the nearest. So behind transparent surfaces vt will not be resolved
|
|
// This is a limitation of the current MRT approach.
|
|
#ifdef UNITY_VIRTUAL_TEXTURING
|
|
#endif
|
|
|
|
#if _DEPTHOFFSET_ON
|
|
builtinData.depthOffset = surfaceDescription.DepthOffset;
|
|
#endif
|
|
|
|
// TODO: We should generate distortion / distortionBlur for non distortion pass
|
|
#if (SHADERPASS == SHADERPASS_DISTORTION)
|
|
builtinData.distortion = surfaceDescription.Distortion;
|
|
builtinData.distortionBlur = surfaceDescription.DistortionBlur;
|
|
#endif
|
|
|
|
#ifndef SHADER_UNLIT
|
|
// PostInitBuiltinData call ApplyDebugToBuiltinData
|
|
PostInitBuiltinData(V, posInput, surfaceData, builtinData);
|
|
#else
|
|
ApplyDebugToBuiltinData(builtinData);
|
|
#endif
|
|
|
|
RAY_TRACING_OPTIONAL_ALPHA_TEST_PASS
|
|
}
|
|
|
|
// --------------------------------------------------
|
|
// Main
|
|
|
|
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/RenderPipeline/ShaderPass/ShaderPassMotionVectors.hlsl"
|
|
|
|
// --------------------------------------------------
|
|
// Visual Effect Vertex Invocations
|
|
|
|
#ifdef HAVE_VFX_MODIFICATION
|
|
#if !defined(SHADER_STAGE_RAY_TRACING)
|
|
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/ShaderLibrary/VisualEffectVertex.hlsl"
|
|
#else
|
|
#endif
|
|
#endif
|
|
|
|
ENDHLSL
|
|
}
|
|
Pass
|
|
{
|
|
Name "TransparentDepthPrepass"
|
|
Tags
|
|
{
|
|
"LightMode" = "TransparentDepthPrepass"
|
|
}
|
|
|
|
// Render State
|
|
Cull [_CullMode]
|
|
Blend One Zero
|
|
ZWrite On
|
|
Stencil
|
|
{
|
|
WriteMask [_StencilWriteMaskDepth]
|
|
Ref [_StencilRefDepth]
|
|
CompFront Always
|
|
PassFront Replace
|
|
CompBack Always
|
|
PassBack Replace
|
|
}
|
|
|
|
// Debug
|
|
// <None>
|
|
|
|
// --------------------------------------------------
|
|
// Pass
|
|
|
|
HLSLPROGRAM
|
|
|
|
// Pragmas
|
|
#pragma multi_compile _ DOTS_INSTANCING_ON
|
|
#pragma instancing_options renderinglayer
|
|
#pragma target 4.5
|
|
#pragma vertex Vert
|
|
#pragma fragment Frag
|
|
#pragma only_renderers d3d11 playstation xboxone xboxseries vulkan metal switch
|
|
#pragma multi_compile_instancing
|
|
|
|
// Keywords
|
|
#pragma shader_feature _ _SURFACE_TYPE_TRANSPARENT
|
|
#pragma shader_feature_local _ _DOUBLESIDED_ON
|
|
#pragma shader_feature_local _ _ADD_PRECOMPUTED_VELOCITY
|
|
#pragma shader_feature_local _ _TRANSPARENT_WRITES_MOTION_VEC _TRANSPARENT_REFRACTIVE_SORT
|
|
#pragma shader_feature_local_fragment _ _ENABLE_FOG_ON_TRANSPARENT
|
|
#pragma multi_compile _ LOD_FADE_CROSSFADE
|
|
#pragma shader_feature_local_fragment _ _DISABLE_DECALS
|
|
#pragma shader_feature_local_raytracing _ _DISABLE_DECALS
|
|
#pragma shader_feature_local_fragment _ _DISABLE_SSR
|
|
#pragma shader_feature_local_raytracing _ _DISABLE_SSR
|
|
#pragma shader_feature_local_fragment _ _DISABLE_SSR_TRANSPARENT
|
|
#pragma shader_feature_local_raytracing _ _DISABLE_SSR_TRANSPARENT
|
|
#pragma shader_feature_local _ _REFRACTION_PLANE _REFRACTION_SPHERE _REFRACTION_THIN
|
|
#pragma shader_feature_local_fragment _MATERIAL_FEATURE_SUBSURFACE_SCATTERING
|
|
#pragma shader_feature_local_raytracing _MATERIAL_FEATURE_SUBSURFACE_SCATTERING
|
|
#pragma shader_feature_local_fragment _MATERIAL_FEATURE_TRANSMISSION
|
|
#pragma shader_feature_local_raytracing _MATERIAL_FEATURE_TRANSMISSION
|
|
#pragma shader_feature_local_fragment _MATERIAL_FEATURE_ANISOTROPY
|
|
#pragma shader_feature_local_raytracing _MATERIAL_FEATURE_ANISOTROPY
|
|
#pragma shader_feature_local_fragment _MATERIAL_FEATURE_IRIDESCENCE
|
|
#pragma shader_feature_local_raytracing _MATERIAL_FEATURE_IRIDESCENCE
|
|
#pragma shader_feature_local_fragment _MATERIAL_FEATURE_SPECULAR_COLOR
|
|
#pragma shader_feature_local_raytracing _MATERIAL_FEATURE_SPECULAR_COLOR
|
|
#pragma shader_feature_local_fragment _MATERIAL_FEATURE_COLORED_TRANSMISSION
|
|
#pragma shader_feature_local_raytracing _MATERIAL_FEATURE_COLORED_TRANSMISSION
|
|
// GraphKeywords: <None>
|
|
|
|
// Defines
|
|
#define SHADERPASS SHADERPASS_TRANSPARENT_DEPTH_PREPASS
|
|
#define RAYTRACING_SHADER_GRAPH_DEFAULT
|
|
#define SUPPORT_GLOBAL_MIP_BIAS 1
|
|
|
|
// For custom interpolators to inject a substruct definition before FragInputs definition,
|
|
// allowing for FragInputs to capture CI's intended for ShaderGraph's SDI.
|
|
struct CustomInterpolators
|
|
{
|
|
};
|
|
#define USE_CUSTOMINTERP_SUBSTRUCT
|
|
|
|
|
|
|
|
// TODO: Merge FragInputsVFX substruct with CustomInterpolators.
|
|
#ifdef HAVE_VFX_MODIFICATION
|
|
struct FragInputsVFX
|
|
{
|
|
/* WARNING: $splice Could not find named fragment 'FragInputsVFX' */
|
|
};
|
|
#endif
|
|
|
|
#include "Packages/com.unity.render-pipelines.core/ShaderLibrary/Common.hlsl"
|
|
#include "Packages/com.unity.render-pipelines.core/ShaderLibrary/GeometricTools.hlsl" // Required by Tessellation.hlsl
|
|
#include "Packages/com.unity.render-pipelines.core/ShaderLibrary/Tessellation.hlsl"
|
|
#include "Packages/com.unity.render-pipelines.core/ShaderLibrary/Texture.hlsl"
|
|
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/ShaderLibrary/ShaderVariables.hlsl"
|
|
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/RenderPipeline/ShaderPass/ShaderPass.cs.hlsl"
|
|
#include "Packages/com.unity.render-pipelines.core/ShaderLibrary/TextureStack.hlsl" // Required to be include before we include properties as it define DECLARE_STACK_CB
|
|
#include "Packages/com.unity.render-pipelines.core/ShaderLibrary/DebugMipmapStreamingMacros.hlsl" // Required before including properties as it defines UNITY_TEXTURE_STREAMING_DEBUG_VARS
|
|
// Always include Shader Graph version
|
|
// Always include last to avoid double macros
|
|
#include "Packages/com.unity.shadergraph/ShaderGraphLibrary/Functions.hlsl" // Need to be here for Gradient struct definition
|
|
|
|
// --------------------------------------------------
|
|
// Defines
|
|
|
|
// Attribute
|
|
#define ATTRIBUTES_NEED_NORMAL
|
|
#define ATTRIBUTES_NEED_TANGENT
|
|
#define ATTRIBUTES_NEED_TEXCOORD0
|
|
#define ATTRIBUTES_NEED_COLOR
|
|
#define VARYINGS_NEED_POSITION_WS
|
|
#define VARYINGS_NEED_TANGENT_TO_WORLD
|
|
#define VARYINGS_NEED_TEXCOORD0
|
|
#define VARYINGS_NEED_COLOR
|
|
|
|
#define HAVE_MESH_MODIFICATION
|
|
|
|
//Strip down the FragInputs.hlsl (on graphics), so we can only optimize the interpolators we use.
|
|
//if by accident something requests contents of FragInputs.hlsl, it will be caught as a compiler error
|
|
//Frag inputs stripping is only enabled when FRAG_INPUTS_ENABLE_STRIPPING is set
|
|
#if !defined(SHADER_STAGE_RAY_TRACING) && SHADERPASS != SHADERPASS_RAYTRACING_GBUFFER && SHADERPASS != SHADERPASS_FULL_SCREEN_DEBUG
|
|
#define FRAG_INPUTS_ENABLE_STRIPPING
|
|
#endif
|
|
#define FRAG_INPUTS_USE_TEXCOORD0
|
|
|
|
|
|
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/RenderPipeline/ShaderPass/FragInputs.hlsl"
|
|
|
|
|
|
|
|
|
|
// Following two define are a workaround introduce in 10.1.x for RaytracingQualityNode
|
|
// The ShaderGraph don't support correctly migration of this node as it serialize all the node data
|
|
// in the json file making it impossible to uprgrade. Until we get a fix, we do a workaround here
|
|
// to still allow us to rename the field and keyword of this node without breaking existing code.
|
|
#ifdef RAYTRACING_SHADER_GRAPH_DEFAULT
|
|
#define RAYTRACING_SHADER_GRAPH_HIGH
|
|
#endif
|
|
|
|
#ifdef RAYTRACING_SHADER_GRAPH_RAYTRACED
|
|
#define RAYTRACING_SHADER_GRAPH_LOW
|
|
#endif
|
|
// end
|
|
|
|
#ifndef SHADER_UNLIT
|
|
// We need isFrontFace when using double sided - it is not required for unlit as in case of unlit double sided only drive the cullmode
|
|
// VARYINGS_NEED_CULLFACE can be define by VaryingsMeshToPS.FaceSign input if a IsFrontFace Node is included in the shader graph.
|
|
#if defined(_DOUBLESIDED_ON) && !defined(VARYINGS_NEED_CULLFACE)
|
|
#define VARYINGS_NEED_CULLFACE
|
|
#endif
|
|
#endif
|
|
|
|
// Specific Material Define
|
|
#define _SPECULAR_OCCLUSION_FROM_AO 1
|
|
#define _ENERGY_CONSERVING_SPECULAR 1
|
|
|
|
#if _MATERIAL_FEATURE_COLORED_TRANSMISSION
|
|
// Colored Transmission doesn't support clear coat
|
|
#undef _MATERIAL_FEATURE_CLEAR_COAT
|
|
#endif
|
|
|
|
// If we use subsurface scattering, enable output split lighting (for forward pass)
|
|
#if defined(_MATERIAL_FEATURE_SUBSURFACE_SCATTERING) && !defined(_SURFACE_TYPE_TRANSPARENT)
|
|
#define OUTPUT_SPLIT_LIGHTING
|
|
#endif
|
|
|
|
// This shader support recursive rendering for raytracing
|
|
#define HAVE_RECURSIVE_RENDERING
|
|
|
|
// In Path Tracing, For all single-sided, refractive materials, we want to force a thin refraction model
|
|
#if (SHADERPASS == SHADERPASS_PATH_TRACING) && !defined(_DOUBLESIDED_ON) && (defined(_REFRACTION_PLANE) || defined(_REFRACTION_SPHERE))
|
|
#undef _REFRACTION_PLANE
|
|
#undef _REFRACTION_SPHERE
|
|
#define _REFRACTION_THIN
|
|
#endif
|
|
// Caution: we can use the define SHADER_UNLIT onlit after the above Material include as it is the Unlit template who define it
|
|
|
|
// To handle SSR on transparent correctly with a possibility to enable/disable it per framesettings
|
|
// we should have a code like this:
|
|
// if !defined(_DISABLE_SSR_TRANSPARENT)
|
|
// pragma multi_compile _ WRITE_NORMAL_BUFFER
|
|
// endif
|
|
// i.e we enable the multicompile only if we can receive SSR or not, and then C# code drive
|
|
// it based on if SSR transparent in frame settings and not (and stripper can strip it).
|
|
// this is currently not possible with our current preprocessor as _DISABLE_SSR_TRANSPARENT is a keyword not a define
|
|
// so instead we used this and chose to pay the extra cost of normal write even if SSR transaprent is disabled.
|
|
// Ideally the shader graph generator should handle it but condition below can't be handle correctly for now.
|
|
#if SHADERPASS == SHADERPASS_TRANSPARENT_DEPTH_PREPASS
|
|
#if !defined(_DISABLE_SSR_TRANSPARENT) && !defined(SHADER_UNLIT)
|
|
#define WRITE_NORMAL_BUFFER
|
|
#endif
|
|
#endif
|
|
|
|
// See Lit.shader
|
|
#if SHADERPASS == SHADERPASS_MOTION_VECTORS && defined(WRITE_DECAL_BUFFER_AND_RENDERING_LAYER)
|
|
#define WRITE_DECAL_BUFFER
|
|
#endif
|
|
|
|
#ifndef DEBUG_DISPLAY
|
|
// In case of opaque we don't want to perform the alpha test, it is done in depth prepass and we use depth equal for ztest (setup from UI)
|
|
// Don't do it with debug display mode as it is possible there is no depth prepass in this case
|
|
#if !defined(_SURFACE_TYPE_TRANSPARENT)
|
|
#if SHADERPASS == SHADERPASS_FORWARD
|
|
#define SHADERPASS_FORWARD_BYPASS_ALPHA_TEST
|
|
#elif SHADERPASS == SHADERPASS_GBUFFER
|
|
#define SHADERPASS_GBUFFER_BYPASS_ALPHA_TEST
|
|
#endif
|
|
#endif
|
|
#endif
|
|
|
|
// Define _DEFERRED_CAPABLE_MATERIAL for shader capable to run in deferred pass
|
|
#if defined(SHADER_LIT) && !defined(_SURFACE_TYPE_TRANSPARENT)
|
|
#define _DEFERRED_CAPABLE_MATERIAL
|
|
#endif
|
|
|
|
// Translate transparent motion vector define
|
|
#if (defined(_TRANSPARENT_WRITES_MOTION_VEC) || defined(_TRANSPARENT_REFRACTIVE_SORT)) && defined(_SURFACE_TYPE_TRANSPARENT)
|
|
#define _WRITE_TRANSPARENT_MOTION_VECTOR
|
|
#endif
|
|
|
|
// -- Graph Properties
|
|
CBUFFER_START(UnityPerMaterial)
|
|
float4 _BaseColor;
|
|
float4 _BaseColorMap_TexelSize;
|
|
float4 _BaseTilingOffset;
|
|
float _BaseTriplanarThreshold;
|
|
float4 _BaseNormalMap_TexelSize;
|
|
float _BaseNormalScale;
|
|
float4 _BaseMaskMap_TexelSize;
|
|
float _BaseMetallic;
|
|
float _BaseAORemapMin;
|
|
float _BaseAORemapMax;
|
|
float _BaseSmoothnessRemapMin;
|
|
float _BaseSmoothnessRemapMax;
|
|
float _USEDYNAMICCOVERTSTATICMASKF;
|
|
float4 _CoverMaskA_TexelSize;
|
|
float _CoverMaskPower;
|
|
float _Cover_Amount;
|
|
float _Cover_Amount_Grow_Speed;
|
|
float3 _CoverDirection;
|
|
float _Cover_Max_Angle;
|
|
float _Cover_Min_Height;
|
|
float _Cover_Min_Height_Blending;
|
|
float4 _CoverBaseColor;
|
|
float4 _CoverBaseColorMap_TexelSize;
|
|
float4 _CoverTilingOffset;
|
|
float _CoverTriplanarThreshold;
|
|
float4 _CoverNormalMap_TexelSize;
|
|
float _CoverNormalScale;
|
|
float _CoverNormalBlendHardness;
|
|
float _CoverHeightMapMin;
|
|
float _CoverHeightMapMax;
|
|
float _CoverHeightMapOffset;
|
|
float _CoverHardness;
|
|
float4 _CoverMaskMap_TexelSize;
|
|
float _CoverMetallic;
|
|
float _CoverAORemapMin;
|
|
float _CoverAORemapMax;
|
|
float _CoverSmoothnessRemapMin;
|
|
float _CoverSmoothnessRemapMax;
|
|
float4 _ShapeNormalMap_TexelSize;
|
|
float _shapeNormalScale;
|
|
float _CovershapeNormalScale;
|
|
float4 _ShapeAO_TexelSize;
|
|
float _ShapeAORemapMin;
|
|
float _ShapeAORemapMax;
|
|
float _CoverShapeAORemapMin;
|
|
float _CoverShapeAORemapMax;
|
|
float4 _DetailMap_TexelSize;
|
|
float4 _DetailTilingOffset;
|
|
float _DetailAlbedoScale;
|
|
float _DetailNormalScale;
|
|
float _DetailSmoothnessScale;
|
|
float _DetailCoverAlbedoScale;
|
|
float _DetailCoverNormalScale;
|
|
float _DetailCoverSmoothnessScale;
|
|
float _CoverMaskRCurvature;
|
|
float _BaseBrightnessCurvMultply;
|
|
float _BaseBrightnessCurvPower;
|
|
float _BaseDarknessCurvMultply;
|
|
float _BaseDarknessCurvPower;
|
|
float _CoverBrightnessCurvMultply;
|
|
float _CoverBrightnessCurvPower;
|
|
float _CoverDarknessCurvMultply;
|
|
float _CoverDarknessCurvPower;
|
|
float4 _WetColor;
|
|
float _WetSmoothness;
|
|
float4 _EmissionColor;
|
|
float _UseShadowThreshold;
|
|
float4 _DoubleSidedConstants;
|
|
UNITY_TEXTURE_STREAMING_DEBUG_VARS;
|
|
float _BlendMode;
|
|
float _EnableBlendModePreserveSpecularLighting;
|
|
float _RayTracing;
|
|
float _RefractionModel;
|
|
float _MaterialID;
|
|
float _MaterialTypeMask;
|
|
CBUFFER_END
|
|
|
|
|
|
// Object and Global properties
|
|
SAMPLER(SamplerState_Linear_Repeat);
|
|
SAMPLER(SamplerState_Linear_Repeat_Aniso8);
|
|
TEXTURE2D(_BaseColorMap);
|
|
SAMPLER(sampler_BaseColorMap);
|
|
TEXTURE2D(_BaseNormalMap);
|
|
SAMPLER(sampler_BaseNormalMap);
|
|
TEXTURE2D(_BaseMaskMap);
|
|
SAMPLER(sampler_BaseMaskMap);
|
|
TEXTURE2D(_CoverMaskA);
|
|
SAMPLER(sampler_CoverMaskA);
|
|
TEXTURE2D(_CoverBaseColorMap);
|
|
SAMPLER(sampler_CoverBaseColorMap);
|
|
TEXTURE2D(_CoverNormalMap);
|
|
SAMPLER(sampler_CoverNormalMap);
|
|
TEXTURE2D(_CoverMaskMap);
|
|
SAMPLER(sampler_CoverMaskMap);
|
|
TEXTURE2D(_ShapeNormalMap);
|
|
SAMPLER(sampler_ShapeNormalMap);
|
|
TEXTURE2D(_ShapeAO);
|
|
SAMPLER(sampler_ShapeAO);
|
|
TEXTURE2D(_DetailMap);
|
|
SAMPLER(sampler_DetailMap);
|
|
|
|
// -- Property used by ScenePickingPass
|
|
#ifdef SCENEPICKINGPASS
|
|
float4 _SelectionID;
|
|
#endif
|
|
|
|
// -- Properties used by SceneSelectionPass
|
|
#ifdef SCENESELECTIONPASS
|
|
int _ObjectId;
|
|
int _PassValue;
|
|
#endif
|
|
|
|
// Includes
|
|
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/Debug/DebugDisplay.hlsl"
|
|
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/Material/Material.hlsl"
|
|
#include "Packages/com.unity.render-pipelines.core/ShaderLibrary/NormalSurfaceGradient.hlsl"
|
|
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/Material/Lit/Lit.hlsl"
|
|
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/Material/BuiltinUtilities.hlsl"
|
|
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/Material/MaterialUtilities.hlsl"
|
|
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/Material/Decal/DecalUtilities.hlsl"
|
|
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/Material/Lit/LitDecalData.hlsl"
|
|
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/ShaderLibrary/ShaderGraphFunctions.hlsl"
|
|
// GraphIncludes: <None>
|
|
|
|
// --------------------------------------------------
|
|
// Structs and Packing
|
|
|
|
struct AttributesMesh
|
|
{
|
|
float3 positionOS : POSITION;
|
|
float3 normalOS : NORMAL;
|
|
float4 tangentOS : TANGENT;
|
|
float4 uv0 : TEXCOORD0;
|
|
float4 color : COLOR;
|
|
#if UNITY_ANY_INSTANCING_ENABLED || defined(ATTRIBUTES_NEED_INSTANCEID)
|
|
uint instanceID : INSTANCEID_SEMANTIC;
|
|
#endif
|
|
};
|
|
struct VaryingsMeshToPS
|
|
{
|
|
SV_POSITION_QUALIFIERS float4 positionCS : SV_POSITION;
|
|
float3 positionRWS;
|
|
float3 normalWS;
|
|
float4 tangentWS;
|
|
float4 texCoord0;
|
|
float4 color;
|
|
#if UNITY_ANY_INSTANCING_ENABLED || defined(VARYINGS_NEED_INSTANCEID)
|
|
uint instanceID : CUSTOM_INSTANCE_ID;
|
|
#endif
|
|
};
|
|
struct VertexDescriptionInputs
|
|
{
|
|
float3 ObjectSpaceNormal;
|
|
float3 ObjectSpaceTangent;
|
|
float3 ObjectSpacePosition;
|
|
};
|
|
struct SurfaceDescriptionInputs
|
|
{
|
|
float3 WorldSpaceNormal;
|
|
float3 TangentSpaceNormal;
|
|
float3 WorldSpaceTangent;
|
|
float3 WorldSpaceBiTangent;
|
|
float3 AbsoluteWorldSpacePosition;
|
|
float4 uv0;
|
|
float4 VertexColor;
|
|
};
|
|
struct PackedVaryingsMeshToPS
|
|
{
|
|
SV_POSITION_QUALIFIERS float4 positionCS : SV_POSITION;
|
|
float4 tangentWS : INTERP0;
|
|
float4 texCoord0 : INTERP1;
|
|
float4 color : INTERP2;
|
|
float3 positionRWS : INTERP3;
|
|
float3 normalWS : INTERP4;
|
|
#if UNITY_ANY_INSTANCING_ENABLED || defined(VARYINGS_NEED_INSTANCEID)
|
|
uint instanceID : CUSTOM_INSTANCE_ID;
|
|
#endif
|
|
};
|
|
|
|
PackedVaryingsMeshToPS PackVaryingsMeshToPS (VaryingsMeshToPS input)
|
|
{
|
|
PackedVaryingsMeshToPS output;
|
|
ZERO_INITIALIZE(PackedVaryingsMeshToPS, output);
|
|
output.positionCS = input.positionCS;
|
|
output.tangentWS.xyzw = input.tangentWS;
|
|
output.texCoord0.xyzw = input.texCoord0;
|
|
output.color.xyzw = input.color;
|
|
output.positionRWS.xyz = input.positionRWS;
|
|
output.normalWS.xyz = input.normalWS;
|
|
#if UNITY_ANY_INSTANCING_ENABLED || defined(VARYINGS_NEED_INSTANCEID)
|
|
output.instanceID = input.instanceID;
|
|
#endif
|
|
return output;
|
|
}
|
|
|
|
VaryingsMeshToPS UnpackVaryingsMeshToPS (PackedVaryingsMeshToPS input)
|
|
{
|
|
VaryingsMeshToPS output;
|
|
output.positionCS = input.positionCS;
|
|
output.tangentWS = input.tangentWS.xyzw;
|
|
output.texCoord0 = input.texCoord0.xyzw;
|
|
output.color = input.color.xyzw;
|
|
output.positionRWS = input.positionRWS.xyz;
|
|
output.normalWS = input.normalWS.xyz;
|
|
#if UNITY_ANY_INSTANCING_ENABLED || defined(VARYINGS_NEED_INSTANCEID)
|
|
output.instanceID = input.instanceID;
|
|
#endif
|
|
return output;
|
|
}
|
|
|
|
|
|
// --------------------------------------------------
|
|
// Graph
|
|
|
|
|
|
// Graph Functions
|
|
|
|
void Unity_TilingAndOffset_float(float2 UV, float2 Tiling, float2 Offset, out float2 Out)
|
|
{
|
|
Out = UV * Tiling + Offset;
|
|
}
|
|
|
|
void Unity_Multiply_float2_float2(float2 A, float2 B, out float2 Out)
|
|
{
|
|
Out = A * B;
|
|
}
|
|
|
|
void Unity_Add_float2(float2 A, float2 B, out float2 Out)
|
|
{
|
|
Out = A + B;
|
|
}
|
|
|
|
void Unity_DotProduct_float2(float2 A, float2 B, out float Out)
|
|
{
|
|
Out = dot(A, B);
|
|
}
|
|
|
|
void Unity_Saturate_float(float In, out float Out)
|
|
{
|
|
Out = saturate(In);
|
|
}
|
|
|
|
void Unity_OneMinus_float(float In, out float Out)
|
|
{
|
|
Out = 1 - In;
|
|
}
|
|
|
|
void Unity_SquareRoot_float(float In, out float Out)
|
|
{
|
|
Out = sqrt(In);
|
|
}
|
|
|
|
void Unity_Divide_float4(float4 A, float4 B, out float4 Out)
|
|
{
|
|
Out = A / B;
|
|
}
|
|
|
|
void Unity_Combine_float(float R, float G, float B, float A, out float4 RGBA, out float3 RGB, out float2 RG)
|
|
{
|
|
RGBA = float4(R, G, B, A);
|
|
RGB = float3(R, G, B);
|
|
RG = float2(R, G);
|
|
}
|
|
|
|
void Unity_Multiply_float4_float4(float4 A, float4 B, out float4 Out)
|
|
{
|
|
Out = A * B;
|
|
}
|
|
|
|
void Unity_Sign_float3(float3 In, out float3 Out)
|
|
{
|
|
Out = sign(In);
|
|
}
|
|
|
|
void Unity_Multiply_float_float(float A, float B, out float Out)
|
|
{
|
|
Out = A * B;
|
|
}
|
|
|
|
void Unity_Absolute_float3(float3 In, out float3 Out)
|
|
{
|
|
Out = abs(In);
|
|
}
|
|
|
|
void Unity_Power_float3(float3 A, float3 B, out float3 Out)
|
|
{
|
|
Out = pow(A, B);
|
|
}
|
|
|
|
void Unity_Multiply_float3_float3(float3 A, float3 B, out float3 Out)
|
|
{
|
|
Out = A * B;
|
|
}
|
|
|
|
void Unity_Add_float3(float3 A, float3 B, out float3 Out)
|
|
{
|
|
Out = A + B;
|
|
}
|
|
|
|
void Unity_Add_float(float A, float B, out float Out)
|
|
{
|
|
Out = A + B;
|
|
}
|
|
|
|
void Unity_Divide_float3(float3 A, float3 B, out float3 Out)
|
|
{
|
|
Out = A / B;
|
|
}
|
|
|
|
void Unity_Normalize_float3(float3 In, out float3 Out)
|
|
{
|
|
Out = normalize(In);
|
|
}
|
|
|
|
struct Bindings_TriplanarNMn_059da9746584140498cd018db3c76047_float
|
|
{
|
|
float3 WorldSpaceNormal;
|
|
float3 WorldSpaceTangent;
|
|
float3 WorldSpaceBiTangent;
|
|
float3 AbsoluteWorldSpacePosition;
|
|
};
|
|
|
|
void SG_TriplanarNMn_059da9746584140498cd018db3c76047_float(UnityTexture2D Texture2D_80A3D28F, float Vector1_41461AC9, float Vector1_E4D1C13A, UnitySamplerState _SamplerState, Bindings_TriplanarNMn_059da9746584140498cd018db3c76047_float IN, out float4 XYZ_1, out float4 XZ_2, out float4 YZ_3, out float4 XY_4)
|
|
{
|
|
UnityTexture2D _Property_3e01b4d2fc68d48ba3acbba9d5881e59_Out_0_Texture2D = Texture2D_80A3D28F;
|
|
float _Split_89ed63cb625cb3878c183d0b71c03400_R_1_Float = IN.AbsoluteWorldSpacePosition[0];
|
|
float _Split_89ed63cb625cb3878c183d0b71c03400_G_2_Float = IN.AbsoluteWorldSpacePosition[1];
|
|
float _Split_89ed63cb625cb3878c183d0b71c03400_B_3_Float = IN.AbsoluteWorldSpacePosition[2];
|
|
float _Split_89ed63cb625cb3878c183d0b71c03400_A_4_Float = 0;
|
|
float4 _Combine_cf2d04ff119ad88493f6460431765cbb_RGBA_4_Vector4;
|
|
float3 _Combine_cf2d04ff119ad88493f6460431765cbb_RGB_5_Vector3;
|
|
float2 _Combine_cf2d04ff119ad88493f6460431765cbb_RG_6_Vector2;
|
|
Unity_Combine_float(_Split_89ed63cb625cb3878c183d0b71c03400_R_1_Float, _Split_89ed63cb625cb3878c183d0b71c03400_B_3_Float, float(0), float(0), _Combine_cf2d04ff119ad88493f6460431765cbb_RGBA_4_Vector4, _Combine_cf2d04ff119ad88493f6460431765cbb_RGB_5_Vector3, _Combine_cf2d04ff119ad88493f6460431765cbb_RG_6_Vector2);
|
|
float _Property_47988ec10c0c18879d461e00bed806e7_Out_0_Float = Vector1_41461AC9;
|
|
float4 _Multiply_14cec4902d0a00829e4555071a1b8ad1_Out_2_Vector4;
|
|
Unity_Multiply_float4_float4(_Combine_cf2d04ff119ad88493f6460431765cbb_RGBA_4_Vector4, (_Property_47988ec10c0c18879d461e00bed806e7_Out_0_Float.xxxx), _Multiply_14cec4902d0a00829e4555071a1b8ad1_Out_2_Vector4);
|
|
float3 _Sign_3a6ebf59931cf08cb0482e0144ddac24_Out_1_Vector3;
|
|
Unity_Sign_float3(IN.WorldSpaceNormal, _Sign_3a6ebf59931cf08cb0482e0144ddac24_Out_1_Vector3);
|
|
float _Split_6299d4ddcc4c74828aea40a46fdb896e_R_1_Float = _Sign_3a6ebf59931cf08cb0482e0144ddac24_Out_1_Vector3[0];
|
|
float _Split_6299d4ddcc4c74828aea40a46fdb896e_G_2_Float = _Sign_3a6ebf59931cf08cb0482e0144ddac24_Out_1_Vector3[1];
|
|
float _Split_6299d4ddcc4c74828aea40a46fdb896e_B_3_Float = _Sign_3a6ebf59931cf08cb0482e0144ddac24_Out_1_Vector3[2];
|
|
float _Split_6299d4ddcc4c74828aea40a46fdb896e_A_4_Float = 0;
|
|
float2 _Vector2_b76cb1842101e58b9e636d49b075c612_Out_0_Vector2 = float2(_Split_6299d4ddcc4c74828aea40a46fdb896e_G_2_Float, float(1));
|
|
float2 _Multiply_a87753ad90594382bf3a3a95abbadbc8_Out_2_Vector2;
|
|
Unity_Multiply_float2_float2((_Multiply_14cec4902d0a00829e4555071a1b8ad1_Out_2_Vector4.xy), _Vector2_b76cb1842101e58b9e636d49b075c612_Out_0_Vector2, _Multiply_a87753ad90594382bf3a3a95abbadbc8_Out_2_Vector2);
|
|
UnitySamplerState _Property_8a2b8589cd3a42a1879a29c28e4f711f_Out_0_SamplerState = _SamplerState;
|
|
float4 _SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_RGBA_0_Vector4 = SAMPLE_TEXTURE2D(_Property_3e01b4d2fc68d48ba3acbba9d5881e59_Out_0_Texture2D.tex, _Property_8a2b8589cd3a42a1879a29c28e4f711f_Out_0_SamplerState.samplerstate, _Property_3e01b4d2fc68d48ba3acbba9d5881e59_Out_0_Texture2D.GetTransformedUV(_Multiply_a87753ad90594382bf3a3a95abbadbc8_Out_2_Vector2) );
|
|
_SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_RGBA_0_Vector4.rgb = UnpackNormal(_SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_RGBA_0_Vector4);
|
|
float _SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_R_4_Float = _SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_RGBA_0_Vector4.r;
|
|
float _SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_G_5_Float = _SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_RGBA_0_Vector4.g;
|
|
float _SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_B_6_Float = _SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_RGBA_0_Vector4.b;
|
|
float _SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_A_7_Float = _SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_RGBA_0_Vector4.a;
|
|
float2 _Vector2_ad6bd100e273d78fa409a30a77bfa2cc_Out_0_Vector2 = float2(_SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_R_4_Float, _SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_G_5_Float);
|
|
float2 _Multiply_31e8db88ee20c985a9850d1a58f3282b_Out_2_Vector2;
|
|
Unity_Multiply_float2_float2(_Vector2_ad6bd100e273d78fa409a30a77bfa2cc_Out_0_Vector2, _Vector2_b76cb1842101e58b9e636d49b075c612_Out_0_Vector2, _Multiply_31e8db88ee20c985a9850d1a58f3282b_Out_2_Vector2);
|
|
float _Split_5ed44bf2eca0868f81eb18100f49d1fa_R_1_Float = IN.WorldSpaceNormal[0];
|
|
float _Split_5ed44bf2eca0868f81eb18100f49d1fa_G_2_Float = IN.WorldSpaceNormal[1];
|
|
float _Split_5ed44bf2eca0868f81eb18100f49d1fa_B_3_Float = IN.WorldSpaceNormal[2];
|
|
float _Split_5ed44bf2eca0868f81eb18100f49d1fa_A_4_Float = 0;
|
|
float2 _Vector2_70e5837843f28b8b9d64cada3697bd5a_Out_0_Vector2 = float2(_Split_5ed44bf2eca0868f81eb18100f49d1fa_R_1_Float, _Split_5ed44bf2eca0868f81eb18100f49d1fa_B_3_Float);
|
|
float2 _Add_1145b2f896593d80aa864a34e6702562_Out_2_Vector2;
|
|
Unity_Add_float2(_Multiply_31e8db88ee20c985a9850d1a58f3282b_Out_2_Vector2, _Vector2_70e5837843f28b8b9d64cada3697bd5a_Out_0_Vector2, _Add_1145b2f896593d80aa864a34e6702562_Out_2_Vector2);
|
|
float _Split_2bc77ca2d17bd78cb2383770ce50b179_R_1_Float = _Add_1145b2f896593d80aa864a34e6702562_Out_2_Vector2[0];
|
|
float _Split_2bc77ca2d17bd78cb2383770ce50b179_G_2_Float = _Add_1145b2f896593d80aa864a34e6702562_Out_2_Vector2[1];
|
|
float _Split_2bc77ca2d17bd78cb2383770ce50b179_B_3_Float = 0;
|
|
float _Split_2bc77ca2d17bd78cb2383770ce50b179_A_4_Float = 0;
|
|
float _Multiply_e4fe778b81456d819c52bb414cd95968_Out_2_Float;
|
|
Unity_Multiply_float_float(_SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_B_6_Float, _Split_5ed44bf2eca0868f81eb18100f49d1fa_G_2_Float, _Multiply_e4fe778b81456d819c52bb414cd95968_Out_2_Float);
|
|
float3 _Vector3_08f62c5c01619e849f1a7d85a44531ac_Out_0_Vector3 = float3(_Split_2bc77ca2d17bd78cb2383770ce50b179_R_1_Float, _Multiply_e4fe778b81456d819c52bb414cd95968_Out_2_Float, _Split_2bc77ca2d17bd78cb2383770ce50b179_G_2_Float);
|
|
float3 _Absolute_644b798714827680b39bf5d34f70385f_Out_1_Vector3;
|
|
Unity_Absolute_float3(IN.WorldSpaceNormal, _Absolute_644b798714827680b39bf5d34f70385f_Out_1_Vector3);
|
|
float _Property_adc4c59482221c8aad681c6558728ac9_Out_0_Float = Vector1_E4D1C13A;
|
|
float3 _Power_ee478822a04529849ae8df1636c29fe2_Out_2_Vector3;
|
|
Unity_Power_float3(_Absolute_644b798714827680b39bf5d34f70385f_Out_1_Vector3, (_Property_adc4c59482221c8aad681c6558728ac9_Out_0_Float.xxx), _Power_ee478822a04529849ae8df1636c29fe2_Out_2_Vector3);
|
|
float3 _Multiply_b386a937554d73828e437d126d69608b_Out_2_Vector3;
|
|
Unity_Multiply_float3_float3(_Power_ee478822a04529849ae8df1636c29fe2_Out_2_Vector3, _Power_ee478822a04529849ae8df1636c29fe2_Out_2_Vector3, _Multiply_b386a937554d73828e437d126d69608b_Out_2_Vector3);
|
|
float _Split_ae83014fcbd9f7879a0b91fa66dc9718_R_1_Float = _Multiply_b386a937554d73828e437d126d69608b_Out_2_Vector3[0];
|
|
float _Split_ae83014fcbd9f7879a0b91fa66dc9718_G_2_Float = _Multiply_b386a937554d73828e437d126d69608b_Out_2_Vector3[1];
|
|
float _Split_ae83014fcbd9f7879a0b91fa66dc9718_B_3_Float = _Multiply_b386a937554d73828e437d126d69608b_Out_2_Vector3[2];
|
|
float _Split_ae83014fcbd9f7879a0b91fa66dc9718_A_4_Float = 0;
|
|
float3 _Multiply_2e1040ca9c98d085ace76ee93f094039_Out_2_Vector3;
|
|
Unity_Multiply_float3_float3(_Vector3_08f62c5c01619e849f1a7d85a44531ac_Out_0_Vector3, (_Split_ae83014fcbd9f7879a0b91fa66dc9718_G_2_Float.xxx), _Multiply_2e1040ca9c98d085ace76ee93f094039_Out_2_Vector3);
|
|
float4 _Combine_192c2c4a69be588b90ca005a32e22552_RGBA_4_Vector4;
|
|
float3 _Combine_192c2c4a69be588b90ca005a32e22552_RGB_5_Vector3;
|
|
float2 _Combine_192c2c4a69be588b90ca005a32e22552_RG_6_Vector2;
|
|
Unity_Combine_float(_Split_89ed63cb625cb3878c183d0b71c03400_R_1_Float, _Split_89ed63cb625cb3878c183d0b71c03400_G_2_Float, float(0), float(0), _Combine_192c2c4a69be588b90ca005a32e22552_RGBA_4_Vector4, _Combine_192c2c4a69be588b90ca005a32e22552_RGB_5_Vector3, _Combine_192c2c4a69be588b90ca005a32e22552_RG_6_Vector2);
|
|
float4 _Multiply_138240d0d4846e87b0febabec0d6891b_Out_2_Vector4;
|
|
Unity_Multiply_float4_float4(_Combine_192c2c4a69be588b90ca005a32e22552_RGBA_4_Vector4, (_Property_47988ec10c0c18879d461e00bed806e7_Out_0_Float.xxxx), _Multiply_138240d0d4846e87b0febabec0d6891b_Out_2_Vector4);
|
|
float _Multiply_de711f4a4614bd89a463b53374cf4036_Out_2_Float;
|
|
Unity_Multiply_float_float(_Split_6299d4ddcc4c74828aea40a46fdb896e_B_3_Float, -1, _Multiply_de711f4a4614bd89a463b53374cf4036_Out_2_Float);
|
|
float2 _Vector2_4ed33f0c73b2698fa6f3c1b77fe76808_Out_0_Vector2 = float2(_Multiply_de711f4a4614bd89a463b53374cf4036_Out_2_Float, float(1));
|
|
float2 _Multiply_2af6058cc6ccb88caefd2799bb5941e8_Out_2_Vector2;
|
|
Unity_Multiply_float2_float2((_Multiply_138240d0d4846e87b0febabec0d6891b_Out_2_Vector4.xy), _Vector2_4ed33f0c73b2698fa6f3c1b77fe76808_Out_0_Vector2, _Multiply_2af6058cc6ccb88caefd2799bb5941e8_Out_2_Vector2);
|
|
float4 _SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_RGBA_0_Vector4 = SAMPLE_TEXTURE2D(_Property_3e01b4d2fc68d48ba3acbba9d5881e59_Out_0_Texture2D.tex, _Property_8a2b8589cd3a42a1879a29c28e4f711f_Out_0_SamplerState.samplerstate, _Property_3e01b4d2fc68d48ba3acbba9d5881e59_Out_0_Texture2D.GetTransformedUV(_Multiply_2af6058cc6ccb88caefd2799bb5941e8_Out_2_Vector2) );
|
|
_SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_RGBA_0_Vector4.rgb = UnpackNormal(_SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_RGBA_0_Vector4);
|
|
float _SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_R_4_Float = _SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_RGBA_0_Vector4.r;
|
|
float _SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_G_5_Float = _SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_RGBA_0_Vector4.g;
|
|
float _SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_B_6_Float = _SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_RGBA_0_Vector4.b;
|
|
float _SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_A_7_Float = _SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_RGBA_0_Vector4.a;
|
|
float2 _Vector2_fe9aedd4528c7486ada4abdca0b0944e_Out_0_Vector2 = float2(_SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_R_4_Float, _SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_G_5_Float);
|
|
float2 _Multiply_02b9b4665ad9918d8721bcaddc82f06f_Out_2_Vector2;
|
|
Unity_Multiply_float2_float2(_Vector2_fe9aedd4528c7486ada4abdca0b0944e_Out_0_Vector2, _Vector2_4ed33f0c73b2698fa6f3c1b77fe76808_Out_0_Vector2, _Multiply_02b9b4665ad9918d8721bcaddc82f06f_Out_2_Vector2);
|
|
float2 _Vector2_a74a85274da15181abb63cc5e8df0de1_Out_0_Vector2 = float2(_Split_5ed44bf2eca0868f81eb18100f49d1fa_R_1_Float, _Split_5ed44bf2eca0868f81eb18100f49d1fa_G_2_Float);
|
|
float2 _Add_b227c84042055e8faa1a9fdc69529707_Out_2_Vector2;
|
|
Unity_Add_float2(_Multiply_02b9b4665ad9918d8721bcaddc82f06f_Out_2_Vector2, _Vector2_a74a85274da15181abb63cc5e8df0de1_Out_0_Vector2, _Add_b227c84042055e8faa1a9fdc69529707_Out_2_Vector2);
|
|
float _Split_2cfb9eacd8762483941459cdf28bda97_R_1_Float = _Add_b227c84042055e8faa1a9fdc69529707_Out_2_Vector2[0];
|
|
float _Split_2cfb9eacd8762483941459cdf28bda97_G_2_Float = _Add_b227c84042055e8faa1a9fdc69529707_Out_2_Vector2[1];
|
|
float _Split_2cfb9eacd8762483941459cdf28bda97_B_3_Float = 0;
|
|
float _Split_2cfb9eacd8762483941459cdf28bda97_A_4_Float = 0;
|
|
float _Multiply_1d65ce08ce672087879125f2e13c4004_Out_2_Float;
|
|
Unity_Multiply_float_float(_SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_B_6_Float, _Split_5ed44bf2eca0868f81eb18100f49d1fa_B_3_Float, _Multiply_1d65ce08ce672087879125f2e13c4004_Out_2_Float);
|
|
float3 _Vector3_ba6cfb4671e8c58f9b41ea1dc23102ca_Out_0_Vector3 = float3(_Split_2cfb9eacd8762483941459cdf28bda97_R_1_Float, _Split_2cfb9eacd8762483941459cdf28bda97_G_2_Float, _Multiply_1d65ce08ce672087879125f2e13c4004_Out_2_Float);
|
|
float3 _Multiply_7bb4009c92b108849ac6ca92bc1442f2_Out_2_Vector3;
|
|
Unity_Multiply_float3_float3(_Vector3_ba6cfb4671e8c58f9b41ea1dc23102ca_Out_0_Vector3, (_Split_ae83014fcbd9f7879a0b91fa66dc9718_B_3_Float.xxx), _Multiply_7bb4009c92b108849ac6ca92bc1442f2_Out_2_Vector3);
|
|
float4 _Combine_1e9ffdba42d6918fb7a4b185f1585d2a_RGBA_4_Vector4;
|
|
float3 _Combine_1e9ffdba42d6918fb7a4b185f1585d2a_RGB_5_Vector3;
|
|
float2 _Combine_1e9ffdba42d6918fb7a4b185f1585d2a_RG_6_Vector2;
|
|
Unity_Combine_float(_Split_89ed63cb625cb3878c183d0b71c03400_B_3_Float, _Split_89ed63cb625cb3878c183d0b71c03400_G_2_Float, float(0), float(0), _Combine_1e9ffdba42d6918fb7a4b185f1585d2a_RGBA_4_Vector4, _Combine_1e9ffdba42d6918fb7a4b185f1585d2a_RGB_5_Vector3, _Combine_1e9ffdba42d6918fb7a4b185f1585d2a_RG_6_Vector2);
|
|
float4 _Multiply_2c0864423b014f8b8af8523f68cbb63c_Out_2_Vector4;
|
|
Unity_Multiply_float4_float4(_Combine_1e9ffdba42d6918fb7a4b185f1585d2a_RGBA_4_Vector4, (_Property_47988ec10c0c18879d461e00bed806e7_Out_0_Float.xxxx), _Multiply_2c0864423b014f8b8af8523f68cbb63c_Out_2_Vector4);
|
|
float2 _Vector2_a1e23e0f921b6484818f009a2b12a5ba_Out_0_Vector2 = float2(_Split_6299d4ddcc4c74828aea40a46fdb896e_R_1_Float, float(1));
|
|
float2 _Multiply_862402885a49f18cb87278ab53bc6744_Out_2_Vector2;
|
|
Unity_Multiply_float2_float2((_Multiply_2c0864423b014f8b8af8523f68cbb63c_Out_2_Vector4.xy), _Vector2_a1e23e0f921b6484818f009a2b12a5ba_Out_0_Vector2, _Multiply_862402885a49f18cb87278ab53bc6744_Out_2_Vector2);
|
|
float4 _SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_RGBA_0_Vector4 = SAMPLE_TEXTURE2D(_Property_3e01b4d2fc68d48ba3acbba9d5881e59_Out_0_Texture2D.tex, _Property_8a2b8589cd3a42a1879a29c28e4f711f_Out_0_SamplerState.samplerstate, _Property_3e01b4d2fc68d48ba3acbba9d5881e59_Out_0_Texture2D.GetTransformedUV(_Multiply_862402885a49f18cb87278ab53bc6744_Out_2_Vector2) );
|
|
_SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_RGBA_0_Vector4.rgb = UnpackNormal(_SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_RGBA_0_Vector4);
|
|
float _SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_R_4_Float = _SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_RGBA_0_Vector4.r;
|
|
float _SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_G_5_Float = _SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_RGBA_0_Vector4.g;
|
|
float _SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_B_6_Float = _SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_RGBA_0_Vector4.b;
|
|
float _SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_A_7_Float = _SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_RGBA_0_Vector4.a;
|
|
float _Multiply_4649b768be76d784a3284bacde795359_Out_2_Float;
|
|
Unity_Multiply_float_float(_SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_B_6_Float, _Split_5ed44bf2eca0868f81eb18100f49d1fa_R_1_Float, _Multiply_4649b768be76d784a3284bacde795359_Out_2_Float);
|
|
float2 _Vector2_819fcd5eb484438eacad1987576d7d67_Out_0_Vector2 = float2(_SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_R_4_Float, _SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_G_5_Float);
|
|
float2 _Multiply_58530ebb3c6d798b93686a76247bf505_Out_2_Vector2;
|
|
Unity_Multiply_float2_float2(_Vector2_819fcd5eb484438eacad1987576d7d67_Out_0_Vector2, _Vector2_a1e23e0f921b6484818f009a2b12a5ba_Out_0_Vector2, _Multiply_58530ebb3c6d798b93686a76247bf505_Out_2_Vector2);
|
|
float2 _Vector2_e293c112b2f49e88a5fe46dfb1fbeb40_Out_0_Vector2 = float2(_Split_5ed44bf2eca0868f81eb18100f49d1fa_B_3_Float, _Split_5ed44bf2eca0868f81eb18100f49d1fa_G_2_Float);
|
|
float2 _Add_cf00fb232c6e2b8e973ab2f84453f55e_Out_2_Vector2;
|
|
Unity_Add_float2(_Multiply_58530ebb3c6d798b93686a76247bf505_Out_2_Vector2, _Vector2_e293c112b2f49e88a5fe46dfb1fbeb40_Out_0_Vector2, _Add_cf00fb232c6e2b8e973ab2f84453f55e_Out_2_Vector2);
|
|
float _Split_3ea3e61d32bdd78f82c686b75ff3fd9b_R_1_Float = _Add_cf00fb232c6e2b8e973ab2f84453f55e_Out_2_Vector2[0];
|
|
float _Split_3ea3e61d32bdd78f82c686b75ff3fd9b_G_2_Float = _Add_cf00fb232c6e2b8e973ab2f84453f55e_Out_2_Vector2[1];
|
|
float _Split_3ea3e61d32bdd78f82c686b75ff3fd9b_B_3_Float = 0;
|
|
float _Split_3ea3e61d32bdd78f82c686b75ff3fd9b_A_4_Float = 0;
|
|
float3 _Vector3_13a08d5940172a84a78ee3d9b8766833_Out_0_Vector3 = float3(_Multiply_4649b768be76d784a3284bacde795359_Out_2_Float, _Split_3ea3e61d32bdd78f82c686b75ff3fd9b_G_2_Float, _Split_3ea3e61d32bdd78f82c686b75ff3fd9b_R_1_Float);
|
|
float3 _Multiply_77818c22e359fc8cbb7dd20216a8db72_Out_2_Vector3;
|
|
Unity_Multiply_float3_float3(_Vector3_13a08d5940172a84a78ee3d9b8766833_Out_0_Vector3, (_Split_ae83014fcbd9f7879a0b91fa66dc9718_R_1_Float.xxx), _Multiply_77818c22e359fc8cbb7dd20216a8db72_Out_2_Vector3);
|
|
float3 _Add_769d9ee909c9238dbbf72d2800a2f268_Out_2_Vector3;
|
|
Unity_Add_float3(_Multiply_7bb4009c92b108849ac6ca92bc1442f2_Out_2_Vector3, _Multiply_77818c22e359fc8cbb7dd20216a8db72_Out_2_Vector3, _Add_769d9ee909c9238dbbf72d2800a2f268_Out_2_Vector3);
|
|
float3 _Add_14295f72880e4b87a1baf1ced943ac40_Out_2_Vector3;
|
|
Unity_Add_float3(_Multiply_2e1040ca9c98d085ace76ee93f094039_Out_2_Vector3, _Add_769d9ee909c9238dbbf72d2800a2f268_Out_2_Vector3, _Add_14295f72880e4b87a1baf1ced943ac40_Out_2_Vector3);
|
|
float _Add_e59af300bba2498db32eac1412123447_Out_2_Float;
|
|
Unity_Add_float(_Split_ae83014fcbd9f7879a0b91fa66dc9718_R_1_Float, _Split_ae83014fcbd9f7879a0b91fa66dc9718_G_2_Float, _Add_e59af300bba2498db32eac1412123447_Out_2_Float);
|
|
float _Add_e855069f047fae8ea9027d56acb61e56_Out_2_Float;
|
|
Unity_Add_float(_Add_e59af300bba2498db32eac1412123447_Out_2_Float, _Split_ae83014fcbd9f7879a0b91fa66dc9718_B_3_Float, _Add_e855069f047fae8ea9027d56acb61e56_Out_2_Float);
|
|
float3 _Divide_91ae4b94f1d9b78e99d0472293b8098c_Out_2_Vector3;
|
|
Unity_Divide_float3(_Add_14295f72880e4b87a1baf1ced943ac40_Out_2_Vector3, (_Add_e855069f047fae8ea9027d56acb61e56_Out_2_Float.xxx), _Divide_91ae4b94f1d9b78e99d0472293b8098c_Out_2_Vector3);
|
|
float3 _Transform_73eecc0c3689d184a34c8d0f28a58adf_Out_1_Vector3;
|
|
{
|
|
float3x3 tangentTransform = float3x3(IN.WorldSpaceTangent, IN.WorldSpaceBiTangent, IN.WorldSpaceNormal);
|
|
_Transform_73eecc0c3689d184a34c8d0f28a58adf_Out_1_Vector3 = TransformWorldToTangent(_Divide_91ae4b94f1d9b78e99d0472293b8098c_Out_2_Vector3.xyz, tangentTransform, true);
|
|
}
|
|
float3 _Normalize_15ef346824db0a8797631ed8b998e673_Out_1_Vector3;
|
|
Unity_Normalize_float3(_Transform_73eecc0c3689d184a34c8d0f28a58adf_Out_1_Vector3, _Normalize_15ef346824db0a8797631ed8b998e673_Out_1_Vector3);
|
|
XYZ_1 = (float4(_Normalize_15ef346824db0a8797631ed8b998e673_Out_1_Vector3, 1.0));
|
|
XZ_2 = (float4(_Vector3_08f62c5c01619e849f1a7d85a44531ac_Out_0_Vector3, 1.0));
|
|
YZ_3 = (float4(_Vector3_ba6cfb4671e8c58f9b41ea1dc23102ca_Out_0_Vector3, 1.0));
|
|
XY_4 = (float4(_Vector3_13a08d5940172a84a78ee3d9b8766833_Out_0_Vector3, 1.0));
|
|
}
|
|
|
|
void Unity_NormalStrength_float(float3 In, float Strength, out float3 Out)
|
|
{
|
|
Out = float3(In.rg * Strength, lerp(1, In.b, saturate(Strength)));
|
|
}
|
|
|
|
void Unity_NormalBlend_float(float3 A, float3 B, out float3 Out)
|
|
{
|
|
Out = SafeNormalize(float3(A.rg + B.rg, A.b * B.b));
|
|
}
|
|
|
|
void Unity_Clamp_float(float In, float Min, float Max, out float Out)
|
|
{
|
|
Out = clamp(In, Min, Max);
|
|
}
|
|
|
|
void Unity_Subtract_float(float A, float B, out float Out)
|
|
{
|
|
Out = A - B;
|
|
}
|
|
|
|
void Unity_Divide_float(float A, float B, out float Out)
|
|
{
|
|
Out = A / B;
|
|
}
|
|
|
|
void Unity_Absolute_float(float In, out float Out)
|
|
{
|
|
Out = abs(In);
|
|
}
|
|
|
|
void Unity_Power_float(float A, float B, out float Out)
|
|
{
|
|
Out = pow(A, B);
|
|
}
|
|
|
|
void Unity_Lerp_float3(float3 A, float3 B, float3 T, out float3 Out)
|
|
{
|
|
Out = lerp(A, B, T);
|
|
}
|
|
|
|
void Unity_Add_float4(float4 A, float4 B, out float4 Out)
|
|
{
|
|
Out = A + B;
|
|
}
|
|
|
|
struct Bindings_TriplanarNM_bc609ed95f52591469ab35dbfe0efcea_float
|
|
{
|
|
float3 WorldSpaceNormal;
|
|
float3 AbsoluteWorldSpacePosition;
|
|
};
|
|
|
|
void SG_TriplanarNM_bc609ed95f52591469ab35dbfe0efcea_float(UnityTexture2D Texture2D_80A3D28F, float Vector1_41461AC9, float Vector1_E4D1C13A, UnitySamplerState _SamplerState, Bindings_TriplanarNM_bc609ed95f52591469ab35dbfe0efcea_float IN, out float4 XYZ_1, out float4 XZ_2, out float4 YZ_3, out float4 XY_4)
|
|
{
|
|
UnityTexture2D _Property_3e01b4d2fc68d48ba3acbba9d5881e59_Out_0_Texture2D = Texture2D_80A3D28F;
|
|
float _Split_89ed63cb625cb3878c183d0b71c03400_R_1_Float = IN.AbsoluteWorldSpacePosition[0];
|
|
float _Split_89ed63cb625cb3878c183d0b71c03400_G_2_Float = IN.AbsoluteWorldSpacePosition[1];
|
|
float _Split_89ed63cb625cb3878c183d0b71c03400_B_3_Float = IN.AbsoluteWorldSpacePosition[2];
|
|
float _Split_89ed63cb625cb3878c183d0b71c03400_A_4_Float = 0;
|
|
float4 _Combine_cf2d04ff119ad88493f6460431765cbb_RGBA_4_Vector4;
|
|
float3 _Combine_cf2d04ff119ad88493f6460431765cbb_RGB_5_Vector3;
|
|
float2 _Combine_cf2d04ff119ad88493f6460431765cbb_RG_6_Vector2;
|
|
Unity_Combine_float(_Split_89ed63cb625cb3878c183d0b71c03400_R_1_Float, _Split_89ed63cb625cb3878c183d0b71c03400_B_3_Float, float(0), float(0), _Combine_cf2d04ff119ad88493f6460431765cbb_RGBA_4_Vector4, _Combine_cf2d04ff119ad88493f6460431765cbb_RGB_5_Vector3, _Combine_cf2d04ff119ad88493f6460431765cbb_RG_6_Vector2);
|
|
float _Property_47988ec10c0c18879d461e00bed806e7_Out_0_Float = Vector1_41461AC9;
|
|
float4 _Multiply_14cec4902d0a00829e4555071a1b8ad1_Out_2_Vector4;
|
|
Unity_Multiply_float4_float4(_Combine_cf2d04ff119ad88493f6460431765cbb_RGBA_4_Vector4, (_Property_47988ec10c0c18879d461e00bed806e7_Out_0_Float.xxxx), _Multiply_14cec4902d0a00829e4555071a1b8ad1_Out_2_Vector4);
|
|
float3 _Sign_b826e0ff2d95ec8cb2b2cbbd7ea2eab6_Out_1_Vector3;
|
|
Unity_Sign_float3(IN.WorldSpaceNormal, _Sign_b826e0ff2d95ec8cb2b2cbbd7ea2eab6_Out_1_Vector3);
|
|
float _Split_742547a7039de986a646d04c157ae549_R_1_Float = _Sign_b826e0ff2d95ec8cb2b2cbbd7ea2eab6_Out_1_Vector3[0];
|
|
float _Split_742547a7039de986a646d04c157ae549_G_2_Float = _Sign_b826e0ff2d95ec8cb2b2cbbd7ea2eab6_Out_1_Vector3[1];
|
|
float _Split_742547a7039de986a646d04c157ae549_B_3_Float = _Sign_b826e0ff2d95ec8cb2b2cbbd7ea2eab6_Out_1_Vector3[2];
|
|
float _Split_742547a7039de986a646d04c157ae549_A_4_Float = 0;
|
|
float2 _Vector2_40a8919e571ec18499de72022c155b38_Out_0_Vector2 = float2(_Split_742547a7039de986a646d04c157ae549_G_2_Float, float(1));
|
|
float2 _Multiply_5fa32af59cdca88389832336b2268bd5_Out_2_Vector2;
|
|
Unity_Multiply_float2_float2((_Multiply_14cec4902d0a00829e4555071a1b8ad1_Out_2_Vector4.xy), _Vector2_40a8919e571ec18499de72022c155b38_Out_0_Vector2, _Multiply_5fa32af59cdca88389832336b2268bd5_Out_2_Vector2);
|
|
UnitySamplerState _Property_544c7fa9dfe54e30a0df9d605340a374_Out_0_SamplerState = _SamplerState;
|
|
float4 _SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_RGBA_0_Vector4 = SAMPLE_TEXTURE2D(_Property_3e01b4d2fc68d48ba3acbba9d5881e59_Out_0_Texture2D.tex, _Property_544c7fa9dfe54e30a0df9d605340a374_Out_0_SamplerState.samplerstate, _Property_3e01b4d2fc68d48ba3acbba9d5881e59_Out_0_Texture2D.GetTransformedUV(_Multiply_5fa32af59cdca88389832336b2268bd5_Out_2_Vector2) );
|
|
float _SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_R_4_Float = _SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_RGBA_0_Vector4.r;
|
|
float _SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_G_5_Float = _SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_RGBA_0_Vector4.g;
|
|
float _SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_B_6_Float = _SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_RGBA_0_Vector4.b;
|
|
float _SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_A_7_Float = _SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_RGBA_0_Vector4.a;
|
|
float3 _Absolute_644b798714827680b39bf5d34f70385f_Out_1_Vector3;
|
|
Unity_Absolute_float3(IN.WorldSpaceNormal, _Absolute_644b798714827680b39bf5d34f70385f_Out_1_Vector3);
|
|
float _Property_adc4c59482221c8aad681c6558728ac9_Out_0_Float = Vector1_E4D1C13A;
|
|
float3 _Power_ee478822a04529849ae8df1636c29fe2_Out_2_Vector3;
|
|
Unity_Power_float3(_Absolute_644b798714827680b39bf5d34f70385f_Out_1_Vector3, (_Property_adc4c59482221c8aad681c6558728ac9_Out_0_Float.xxx), _Power_ee478822a04529849ae8df1636c29fe2_Out_2_Vector3);
|
|
float3 _Multiply_b386a937554d73828e437d126d69608b_Out_2_Vector3;
|
|
Unity_Multiply_float3_float3(_Power_ee478822a04529849ae8df1636c29fe2_Out_2_Vector3, _Power_ee478822a04529849ae8df1636c29fe2_Out_2_Vector3, _Multiply_b386a937554d73828e437d126d69608b_Out_2_Vector3);
|
|
float _Split_ae83014fcbd9f7879a0b91fa66dc9718_R_1_Float = _Multiply_b386a937554d73828e437d126d69608b_Out_2_Vector3[0];
|
|
float _Split_ae83014fcbd9f7879a0b91fa66dc9718_G_2_Float = _Multiply_b386a937554d73828e437d126d69608b_Out_2_Vector3[1];
|
|
float _Split_ae83014fcbd9f7879a0b91fa66dc9718_B_3_Float = _Multiply_b386a937554d73828e437d126d69608b_Out_2_Vector3[2];
|
|
float _Split_ae83014fcbd9f7879a0b91fa66dc9718_A_4_Float = 0;
|
|
float4 _Multiply_2e1040ca9c98d085ace76ee93f094039_Out_2_Vector4;
|
|
Unity_Multiply_float4_float4(_SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_RGBA_0_Vector4, (_Split_ae83014fcbd9f7879a0b91fa66dc9718_G_2_Float.xxxx), _Multiply_2e1040ca9c98d085ace76ee93f094039_Out_2_Vector4);
|
|
float4 _Combine_192c2c4a69be588b90ca005a32e22552_RGBA_4_Vector4;
|
|
float3 _Combine_192c2c4a69be588b90ca005a32e22552_RGB_5_Vector3;
|
|
float2 _Combine_192c2c4a69be588b90ca005a32e22552_RG_6_Vector2;
|
|
Unity_Combine_float(_Split_89ed63cb625cb3878c183d0b71c03400_R_1_Float, _Split_89ed63cb625cb3878c183d0b71c03400_G_2_Float, float(0), float(0), _Combine_192c2c4a69be588b90ca005a32e22552_RGBA_4_Vector4, _Combine_192c2c4a69be588b90ca005a32e22552_RGB_5_Vector3, _Combine_192c2c4a69be588b90ca005a32e22552_RG_6_Vector2);
|
|
float4 _Multiply_138240d0d4846e87b0febabec0d6891b_Out_2_Vector4;
|
|
Unity_Multiply_float4_float4(_Combine_192c2c4a69be588b90ca005a32e22552_RGBA_4_Vector4, (_Property_47988ec10c0c18879d461e00bed806e7_Out_0_Float.xxxx), _Multiply_138240d0d4846e87b0febabec0d6891b_Out_2_Vector4);
|
|
float _Multiply_014402ded5a3988a8c18ba07636ea5a7_Out_2_Float;
|
|
Unity_Multiply_float_float(_Split_742547a7039de986a646d04c157ae549_B_3_Float, -1, _Multiply_014402ded5a3988a8c18ba07636ea5a7_Out_2_Float);
|
|
float2 _Vector2_caa25d55d456a58982bdfc39b1b43f3f_Out_0_Vector2 = float2(_Multiply_014402ded5a3988a8c18ba07636ea5a7_Out_2_Float, float(1));
|
|
float2 _Multiply_a67201b6e1a0a28c98cd9d06e8b09543_Out_2_Vector2;
|
|
Unity_Multiply_float2_float2((_Multiply_138240d0d4846e87b0febabec0d6891b_Out_2_Vector4.xy), _Vector2_caa25d55d456a58982bdfc39b1b43f3f_Out_0_Vector2, _Multiply_a67201b6e1a0a28c98cd9d06e8b09543_Out_2_Vector2);
|
|
float4 _SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_RGBA_0_Vector4 = SAMPLE_TEXTURE2D(_Property_3e01b4d2fc68d48ba3acbba9d5881e59_Out_0_Texture2D.tex, _Property_544c7fa9dfe54e30a0df9d605340a374_Out_0_SamplerState.samplerstate, _Property_3e01b4d2fc68d48ba3acbba9d5881e59_Out_0_Texture2D.GetTransformedUV(_Multiply_a67201b6e1a0a28c98cd9d06e8b09543_Out_2_Vector2) );
|
|
float _SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_R_4_Float = _SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_RGBA_0_Vector4.r;
|
|
float _SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_G_5_Float = _SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_RGBA_0_Vector4.g;
|
|
float _SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_B_6_Float = _SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_RGBA_0_Vector4.b;
|
|
float _SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_A_7_Float = _SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_RGBA_0_Vector4.a;
|
|
float4 _Multiply_7bb4009c92b108849ac6ca92bc1442f2_Out_2_Vector4;
|
|
Unity_Multiply_float4_float4(_SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_RGBA_0_Vector4, (_Split_ae83014fcbd9f7879a0b91fa66dc9718_B_3_Float.xxxx), _Multiply_7bb4009c92b108849ac6ca92bc1442f2_Out_2_Vector4);
|
|
float4 _Combine_1e9ffdba42d6918fb7a4b185f1585d2a_RGBA_4_Vector4;
|
|
float3 _Combine_1e9ffdba42d6918fb7a4b185f1585d2a_RGB_5_Vector3;
|
|
float2 _Combine_1e9ffdba42d6918fb7a4b185f1585d2a_RG_6_Vector2;
|
|
Unity_Combine_float(_Split_89ed63cb625cb3878c183d0b71c03400_B_3_Float, _Split_89ed63cb625cb3878c183d0b71c03400_G_2_Float, float(0), float(0), _Combine_1e9ffdba42d6918fb7a4b185f1585d2a_RGBA_4_Vector4, _Combine_1e9ffdba42d6918fb7a4b185f1585d2a_RGB_5_Vector3, _Combine_1e9ffdba42d6918fb7a4b185f1585d2a_RG_6_Vector2);
|
|
float4 _Multiply_2c0864423b014f8b8af8523f68cbb63c_Out_2_Vector4;
|
|
Unity_Multiply_float4_float4(_Combine_1e9ffdba42d6918fb7a4b185f1585d2a_RGBA_4_Vector4, (_Property_47988ec10c0c18879d461e00bed806e7_Out_0_Float.xxxx), _Multiply_2c0864423b014f8b8af8523f68cbb63c_Out_2_Vector4);
|
|
float2 _Vector2_54dfd40df2fc78809955dd272f2cf0c3_Out_0_Vector2 = float2(_Split_742547a7039de986a646d04c157ae549_R_1_Float, float(1));
|
|
float2 _Multiply_addbd5fcede95f80bbb806c94e49ef63_Out_2_Vector2;
|
|
Unity_Multiply_float2_float2((_Multiply_2c0864423b014f8b8af8523f68cbb63c_Out_2_Vector4.xy), _Vector2_54dfd40df2fc78809955dd272f2cf0c3_Out_0_Vector2, _Multiply_addbd5fcede95f80bbb806c94e49ef63_Out_2_Vector2);
|
|
float4 _SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_RGBA_0_Vector4 = SAMPLE_TEXTURE2D(_Property_3e01b4d2fc68d48ba3acbba9d5881e59_Out_0_Texture2D.tex, _Property_544c7fa9dfe54e30a0df9d605340a374_Out_0_SamplerState.samplerstate, _Property_3e01b4d2fc68d48ba3acbba9d5881e59_Out_0_Texture2D.GetTransformedUV(_Multiply_addbd5fcede95f80bbb806c94e49ef63_Out_2_Vector2) );
|
|
float _SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_R_4_Float = _SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_RGBA_0_Vector4.r;
|
|
float _SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_G_5_Float = _SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_RGBA_0_Vector4.g;
|
|
float _SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_B_6_Float = _SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_RGBA_0_Vector4.b;
|
|
float _SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_A_7_Float = _SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_RGBA_0_Vector4.a;
|
|
float4 _Multiply_77818c22e359fc8cbb7dd20216a8db72_Out_2_Vector4;
|
|
Unity_Multiply_float4_float4(_SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_RGBA_0_Vector4, (_Split_ae83014fcbd9f7879a0b91fa66dc9718_R_1_Float.xxxx), _Multiply_77818c22e359fc8cbb7dd20216a8db72_Out_2_Vector4);
|
|
float4 _Add_769d9ee909c9238dbbf72d2800a2f268_Out_2_Vector4;
|
|
Unity_Add_float4(_Multiply_7bb4009c92b108849ac6ca92bc1442f2_Out_2_Vector4, _Multiply_77818c22e359fc8cbb7dd20216a8db72_Out_2_Vector4, _Add_769d9ee909c9238dbbf72d2800a2f268_Out_2_Vector4);
|
|
float4 _Add_14295f72880e4b87a1baf1ced943ac40_Out_2_Vector4;
|
|
Unity_Add_float4(_Multiply_2e1040ca9c98d085ace76ee93f094039_Out_2_Vector4, _Add_769d9ee909c9238dbbf72d2800a2f268_Out_2_Vector4, _Add_14295f72880e4b87a1baf1ced943ac40_Out_2_Vector4);
|
|
float _Add_e59af300bba2498db32eac1412123447_Out_2_Float;
|
|
Unity_Add_float(_Split_ae83014fcbd9f7879a0b91fa66dc9718_R_1_Float, _Split_ae83014fcbd9f7879a0b91fa66dc9718_G_2_Float, _Add_e59af300bba2498db32eac1412123447_Out_2_Float);
|
|
float _Add_e855069f047fae8ea9027d56acb61e56_Out_2_Float;
|
|
Unity_Add_float(_Add_e59af300bba2498db32eac1412123447_Out_2_Float, _Split_ae83014fcbd9f7879a0b91fa66dc9718_B_3_Float, _Add_e855069f047fae8ea9027d56acb61e56_Out_2_Float);
|
|
float4 _Divide_91ae4b94f1d9b78e99d0472293b8098c_Out_2_Vector4;
|
|
Unity_Divide_float4(_Add_14295f72880e4b87a1baf1ced943ac40_Out_2_Vector4, (_Add_e855069f047fae8ea9027d56acb61e56_Out_2_Float.xxxx), _Divide_91ae4b94f1d9b78e99d0472293b8098c_Out_2_Vector4);
|
|
XYZ_1 = _Divide_91ae4b94f1d9b78e99d0472293b8098c_Out_2_Vector4;
|
|
XZ_2 = _SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_RGBA_0_Vector4;
|
|
YZ_3 = _SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_RGBA_0_Vector4;
|
|
XY_4 = _SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_RGBA_0_Vector4;
|
|
}
|
|
|
|
void Unity_Remap_float(float In, float2 InMinMax, float2 OutMinMax, out float Out)
|
|
{
|
|
Out = OutMinMax.x + (In - InMinMax.x) * (OutMinMax.y - OutMinMax.x) / (InMinMax.y - InMinMax.x);
|
|
}
|
|
|
|
void Unity_Branch_float(float Predicate, float True, float False, out float Out)
|
|
{
|
|
Out = Predicate ? True : False;
|
|
}
|
|
|
|
void Unity_Sign_float(float In, out float Out)
|
|
{
|
|
Out = sign(In);
|
|
}
|
|
|
|
void Unity_Ceiling_float(float In, out float Out)
|
|
{
|
|
Out = ceil(In);
|
|
}
|
|
|
|
void Unity_Lerp_float(float A, float B, float T, out float Out)
|
|
{
|
|
Out = lerp(A, B, T);
|
|
}
|
|
|
|
struct Bindings_BlendOverlayDetailSmoothness_06e12138dc89c0040b45a57abe520a1a_float
|
|
{
|
|
};
|
|
|
|
void SG_BlendOverlayDetailSmoothness_06e12138dc89c0040b45a57abe520a1a_float(float Vector1_32317166, float Vector1_FBE622A2, float Vector1_8C15C351, Bindings_BlendOverlayDetailSmoothness_06e12138dc89c0040b45a57abe520a1a_float IN, out float SmoothnessOverlay_1)
|
|
{
|
|
float _Property_728cc50521e9e988ac9cbff4872d5139_Out_0_Float = Vector1_32317166;
|
|
float _Property_a00e29241d12f983b30177515b367ec9_Out_0_Float = Vector1_FBE622A2;
|
|
float _Sign_343a45ede7349283a681c6bd9998fd8e_Out_1_Float;
|
|
Unity_Sign_float(_Property_a00e29241d12f983b30177515b367ec9_Out_0_Float, _Sign_343a45ede7349283a681c6bd9998fd8e_Out_1_Float);
|
|
float _Add_681019b8f5d3d68bb482d419c9fc61a9_Out_2_Float;
|
|
Unity_Add_float(_Sign_343a45ede7349283a681c6bd9998fd8e_Out_1_Float, float(1), _Add_681019b8f5d3d68bb482d419c9fc61a9_Out_2_Float);
|
|
float _Multiply_e8f4cb722712a880ac0db6c7461427f7_Out_2_Float;
|
|
Unity_Multiply_float_float(_Add_681019b8f5d3d68bb482d419c9fc61a9_Out_2_Float, 0.5, _Multiply_e8f4cb722712a880ac0db6c7461427f7_Out_2_Float);
|
|
float _Ceiling_95ad15988aa9b98184875fa754feae01_Out_1_Float;
|
|
Unity_Ceiling_float(_Multiply_e8f4cb722712a880ac0db6c7461427f7_Out_2_Float, _Ceiling_95ad15988aa9b98184875fa754feae01_Out_1_Float);
|
|
float _Property_2db1c747a05ee284a8b00076062f91a4_Out_0_Float = Vector1_8C15C351;
|
|
float _Lerp_b3cdb01fc3c5b988ac9b184943bf7c01_Out_3_Float;
|
|
Unity_Lerp_float(_Property_728cc50521e9e988ac9cbff4872d5139_Out_0_Float, _Ceiling_95ad15988aa9b98184875fa754feae01_Out_1_Float, _Property_2db1c747a05ee284a8b00076062f91a4_Out_0_Float, _Lerp_b3cdb01fc3c5b988ac9b184943bf7c01_Out_3_Float);
|
|
SmoothnessOverlay_1 = _Lerp_b3cdb01fc3c5b988ac9b184943bf7c01_Out_3_Float;
|
|
}
|
|
|
|
void Unity_Minimum_float(float A, float B, out float Out)
|
|
{
|
|
Out = min(A, B);
|
|
};
|
|
|
|
// Graph Vertex
|
|
struct VertexDescription
|
|
{
|
|
float3 Position;
|
|
float3 Normal;
|
|
float3 Tangent;
|
|
};
|
|
|
|
VertexDescription VertexDescriptionFunction(VertexDescriptionInputs IN)
|
|
{
|
|
VertexDescription description = (VertexDescription)0;
|
|
description.Position = IN.ObjectSpacePosition;
|
|
description.Normal = IN.ObjectSpaceNormal;
|
|
description.Tangent = IN.ObjectSpaceTangent;
|
|
return description;
|
|
}
|
|
|
|
// Graph Pixel
|
|
struct SurfaceDescription
|
|
{
|
|
float Alpha;
|
|
float3 NormalTS;
|
|
float Smoothness;
|
|
};
|
|
|
|
SurfaceDescription SurfaceDescriptionFunction(SurfaceDescriptionInputs IN)
|
|
{
|
|
SurfaceDescription surface = (SurfaceDescription)0;
|
|
UnityTexture2D _Property_2e62abc1fe8adb8b8ff655b8448be202_Out_0_Texture2D = UnityBuildTexture2DStructNoScale(_DetailMap);
|
|
float4 _Property_b86e0ee324ffb58a92473eab69864d04_Out_0_Vector4 = _DetailTilingOffset;
|
|
float _Split_e832641c05503286a4951c0a93621755_R_1_Float = _Property_b86e0ee324ffb58a92473eab69864d04_Out_0_Vector4[0];
|
|
float _Split_e832641c05503286a4951c0a93621755_G_2_Float = _Property_b86e0ee324ffb58a92473eab69864d04_Out_0_Vector4[1];
|
|
float _Split_e832641c05503286a4951c0a93621755_B_3_Float = _Property_b86e0ee324ffb58a92473eab69864d04_Out_0_Vector4[2];
|
|
float _Split_e832641c05503286a4951c0a93621755_A_4_Float = _Property_b86e0ee324ffb58a92473eab69864d04_Out_0_Vector4[3];
|
|
float2 _Vector2_4b5eef288b3d4c83b24e4ab653f55ec8_Out_0_Vector2 = float2(_Split_e832641c05503286a4951c0a93621755_R_1_Float, _Split_e832641c05503286a4951c0a93621755_G_2_Float);
|
|
float2 _Vector2_2925cf98ba16b08dabc58cd65efd17db_Out_0_Vector2 = float2(_Split_e832641c05503286a4951c0a93621755_B_3_Float, _Split_e832641c05503286a4951c0a93621755_A_4_Float);
|
|
float2 _TilingAndOffset_74f6566eba9ccd899de18c0b11b7a7a2_Out_3_Vector2;
|
|
Unity_TilingAndOffset_float(IN.uv0.xy, _Vector2_4b5eef288b3d4c83b24e4ab653f55ec8_Out_0_Vector2, _Vector2_2925cf98ba16b08dabc58cd65efd17db_Out_0_Vector2, _TilingAndOffset_74f6566eba9ccd899de18c0b11b7a7a2_Out_3_Vector2);
|
|
float4 _SampleTexture2D_4bd08411faa60c828847f2247f06a809_RGBA_0_Vector4 = SAMPLE_TEXTURE2D(_Property_2e62abc1fe8adb8b8ff655b8448be202_Out_0_Texture2D.tex, _Property_2e62abc1fe8adb8b8ff655b8448be202_Out_0_Texture2D.samplerstate, _Property_2e62abc1fe8adb8b8ff655b8448be202_Out_0_Texture2D.GetTransformedUV(_TilingAndOffset_74f6566eba9ccd899de18c0b11b7a7a2_Out_3_Vector2) );
|
|
float _SampleTexture2D_4bd08411faa60c828847f2247f06a809_R_4_Float = _SampleTexture2D_4bd08411faa60c828847f2247f06a809_RGBA_0_Vector4.r;
|
|
float _SampleTexture2D_4bd08411faa60c828847f2247f06a809_G_5_Float = _SampleTexture2D_4bd08411faa60c828847f2247f06a809_RGBA_0_Vector4.g;
|
|
float _SampleTexture2D_4bd08411faa60c828847f2247f06a809_B_6_Float = _SampleTexture2D_4bd08411faa60c828847f2247f06a809_RGBA_0_Vector4.b;
|
|
float _SampleTexture2D_4bd08411faa60c828847f2247f06a809_A_7_Float = _SampleTexture2D_4bd08411faa60c828847f2247f06a809_RGBA_0_Vector4.a;
|
|
float2 _Vector2_7fe7d9ef320da68f958e1ea535e2a6a8_Out_0_Vector2 = float2(_SampleTexture2D_4bd08411faa60c828847f2247f06a809_A_7_Float, _SampleTexture2D_4bd08411faa60c828847f2247f06a809_G_5_Float);
|
|
float2 _Multiply_b8d7cc078ce00d87b9a6b5241b2f1f01_Out_2_Vector2;
|
|
Unity_Multiply_float2_float2(_Vector2_7fe7d9ef320da68f958e1ea535e2a6a8_Out_0_Vector2, float2(2, 2), _Multiply_b8d7cc078ce00d87b9a6b5241b2f1f01_Out_2_Vector2);
|
|
float2 _Add_476ecfb1f47aed8bb8040bb1c44ca372_Out_2_Vector2;
|
|
Unity_Add_float2(_Multiply_b8d7cc078ce00d87b9a6b5241b2f1f01_Out_2_Vector2, float2(-1, -1), _Add_476ecfb1f47aed8bb8040bb1c44ca372_Out_2_Vector2);
|
|
float _Property_b7f40cf2664f5a819eb153af2b2eb69e_Out_0_Float = _DetailNormalScale;
|
|
float2 _Multiply_3b11e3e43551698eb19b6c6b671b6a41_Out_2_Vector2;
|
|
Unity_Multiply_float2_float2(_Add_476ecfb1f47aed8bb8040bb1c44ca372_Out_2_Vector2, (_Property_b7f40cf2664f5a819eb153af2b2eb69e_Out_0_Float.xx), _Multiply_3b11e3e43551698eb19b6c6b671b6a41_Out_2_Vector2);
|
|
float _Split_678aac70d9cb9783a49841710ce82ff8_R_1_Float = _Multiply_3b11e3e43551698eb19b6c6b671b6a41_Out_2_Vector2[0];
|
|
float _Split_678aac70d9cb9783a49841710ce82ff8_G_2_Float = _Multiply_3b11e3e43551698eb19b6c6b671b6a41_Out_2_Vector2[1];
|
|
float _Split_678aac70d9cb9783a49841710ce82ff8_B_3_Float = 0;
|
|
float _Split_678aac70d9cb9783a49841710ce82ff8_A_4_Float = 0;
|
|
float _DotProduct_7fd2e2e8b3e9ed8f9a42a0ba98e14174_Out_2_Float;
|
|
Unity_DotProduct_float2(_Multiply_3b11e3e43551698eb19b6c6b671b6a41_Out_2_Vector2, _Multiply_3b11e3e43551698eb19b6c6b671b6a41_Out_2_Vector2, _DotProduct_7fd2e2e8b3e9ed8f9a42a0ba98e14174_Out_2_Float);
|
|
float _Saturate_47bdfe8ca2c8d989a5ebbb5eb995f023_Out_1_Float;
|
|
Unity_Saturate_float(_DotProduct_7fd2e2e8b3e9ed8f9a42a0ba98e14174_Out_2_Float, _Saturate_47bdfe8ca2c8d989a5ebbb5eb995f023_Out_1_Float);
|
|
float _OneMinus_03777d2879850b838187d9d2605d7341_Out_1_Float;
|
|
Unity_OneMinus_float(_Saturate_47bdfe8ca2c8d989a5ebbb5eb995f023_Out_1_Float, _OneMinus_03777d2879850b838187d9d2605d7341_Out_1_Float);
|
|
float _SquareRoot_ca9c195aef071d8888f26cb73b749f72_Out_1_Float;
|
|
Unity_SquareRoot_float(_OneMinus_03777d2879850b838187d9d2605d7341_Out_1_Float, _SquareRoot_ca9c195aef071d8888f26cb73b749f72_Out_1_Float);
|
|
float3 _Vector3_6999cbd6a5aa908cb7c059b5f2f5b330_Out_0_Vector3 = float3(_Split_678aac70d9cb9783a49841710ce82ff8_R_1_Float, _Split_678aac70d9cb9783a49841710ce82ff8_G_2_Float, _SquareRoot_ca9c195aef071d8888f26cb73b749f72_Out_1_Float);
|
|
UnityTexture2D _Property_d2bb0a0b01239c85bd301cadeec1b3d8_Out_0_Texture2D = UnityBuildTexture2DStructNoScale(_BaseNormalMap);
|
|
float4 _Property_a409d5fcafb9f182a4b2aea64204408f_Out_0_Vector4 = _BaseTilingOffset;
|
|
float4 _Divide_6a90cebe78e620828de587523daaa7e6_Out_2_Vector4;
|
|
Unity_Divide_float4(float4(1, 1, 0, 0), _Property_a409d5fcafb9f182a4b2aea64204408f_Out_0_Vector4, _Divide_6a90cebe78e620828de587523daaa7e6_Out_2_Vector4);
|
|
float _Property_3539de8c698c2981bb3c088d4ec52201_Out_0_Float = _BaseTriplanarThreshold;
|
|
Bindings_TriplanarNMn_059da9746584140498cd018db3c76047_float _TriplanarNMn_bf7f7c0e2d896289b86076b79f33d7d4;
|
|
_TriplanarNMn_bf7f7c0e2d896289b86076b79f33d7d4.WorldSpaceNormal = IN.WorldSpaceNormal;
|
|
_TriplanarNMn_bf7f7c0e2d896289b86076b79f33d7d4.WorldSpaceTangent = IN.WorldSpaceTangent;
|
|
_TriplanarNMn_bf7f7c0e2d896289b86076b79f33d7d4.WorldSpaceBiTangent = IN.WorldSpaceBiTangent;
|
|
_TriplanarNMn_bf7f7c0e2d896289b86076b79f33d7d4.AbsoluteWorldSpacePosition = IN.AbsoluteWorldSpacePosition;
|
|
float4 _TriplanarNMn_bf7f7c0e2d896289b86076b79f33d7d4_XYZ_1_Vector4;
|
|
float4 _TriplanarNMn_bf7f7c0e2d896289b86076b79f33d7d4_XZ_2_Vector4;
|
|
float4 _TriplanarNMn_bf7f7c0e2d896289b86076b79f33d7d4_YZ_3_Vector4;
|
|
float4 _TriplanarNMn_bf7f7c0e2d896289b86076b79f33d7d4_XY_4_Vector4;
|
|
SG_TriplanarNMn_059da9746584140498cd018db3c76047_float(_Property_d2bb0a0b01239c85bd301cadeec1b3d8_Out_0_Texture2D, (_Divide_6a90cebe78e620828de587523daaa7e6_Out_2_Vector4).x, _Property_3539de8c698c2981bb3c088d4ec52201_Out_0_Float, UnityBuildSamplerStateStruct(SamplerState_Linear_Repeat_Aniso8), _TriplanarNMn_bf7f7c0e2d896289b86076b79f33d7d4, _TriplanarNMn_bf7f7c0e2d896289b86076b79f33d7d4_XYZ_1_Vector4, _TriplanarNMn_bf7f7c0e2d896289b86076b79f33d7d4_XZ_2_Vector4, _TriplanarNMn_bf7f7c0e2d896289b86076b79f33d7d4_YZ_3_Vector4, _TriplanarNMn_bf7f7c0e2d896289b86076b79f33d7d4_XY_4_Vector4);
|
|
float _Property_d6baf612f8e685848732ca270b39f544_Out_0_Float = _BaseNormalScale;
|
|
float3 _NormalStrength_260139b4d5077d8b9d42de780d173b6c_Out_2_Vector3;
|
|
Unity_NormalStrength_float((_TriplanarNMn_bf7f7c0e2d896289b86076b79f33d7d4_XYZ_1_Vector4.xyz), _Property_d6baf612f8e685848732ca270b39f544_Out_0_Float, _NormalStrength_260139b4d5077d8b9d42de780d173b6c_Out_2_Vector3);
|
|
UnityTexture2D _Property_492c4e7cd40ab980bd38362624511e38_Out_0_Texture2D = UnityBuildTexture2DStructNoScale(_ShapeNormalMap);
|
|
float4 _SampleTexture2D_63aaad04c65f698e8f640de826888075_RGBA_0_Vector4 = SAMPLE_TEXTURE2D(_Property_492c4e7cd40ab980bd38362624511e38_Out_0_Texture2D.tex, _Property_492c4e7cd40ab980bd38362624511e38_Out_0_Texture2D.samplerstate, _Property_492c4e7cd40ab980bd38362624511e38_Out_0_Texture2D.GetTransformedUV(IN.uv0.xy) );
|
|
_SampleTexture2D_63aaad04c65f698e8f640de826888075_RGBA_0_Vector4.rgb = UnpackNormal(_SampleTexture2D_63aaad04c65f698e8f640de826888075_RGBA_0_Vector4);
|
|
float _SampleTexture2D_63aaad04c65f698e8f640de826888075_R_4_Float = _SampleTexture2D_63aaad04c65f698e8f640de826888075_RGBA_0_Vector4.r;
|
|
float _SampleTexture2D_63aaad04c65f698e8f640de826888075_G_5_Float = _SampleTexture2D_63aaad04c65f698e8f640de826888075_RGBA_0_Vector4.g;
|
|
float _SampleTexture2D_63aaad04c65f698e8f640de826888075_B_6_Float = _SampleTexture2D_63aaad04c65f698e8f640de826888075_RGBA_0_Vector4.b;
|
|
float _SampleTexture2D_63aaad04c65f698e8f640de826888075_A_7_Float = _SampleTexture2D_63aaad04c65f698e8f640de826888075_RGBA_0_Vector4.a;
|
|
float _Property_6c35e329e57d0e89950e24817068dbb1_Out_0_Float = _shapeNormalScale;
|
|
float3 _NormalStrength_e181a1bb2f4e35819e0f35e77346e12e_Out_2_Vector3;
|
|
Unity_NormalStrength_float((_SampleTexture2D_63aaad04c65f698e8f640de826888075_RGBA_0_Vector4.xyz), _Property_6c35e329e57d0e89950e24817068dbb1_Out_0_Float, _NormalStrength_e181a1bb2f4e35819e0f35e77346e12e_Out_2_Vector3);
|
|
float3 _NormalBlend_ead295b946c6058190c298c03bf64d0b_Out_2_Vector3;
|
|
Unity_NormalBlend_float(_NormalStrength_260139b4d5077d8b9d42de780d173b6c_Out_2_Vector3, _NormalStrength_e181a1bb2f4e35819e0f35e77346e12e_Out_2_Vector3, _NormalBlend_ead295b946c6058190c298c03bf64d0b_Out_2_Vector3);
|
|
float3 _NormalBlend_4242e1b4a785378aa59dd49e9d993ffc_Out_2_Vector3;
|
|
Unity_NormalBlend_float(_Vector3_6999cbd6a5aa908cb7c059b5f2f5b330_Out_0_Vector3, _NormalBlend_ead295b946c6058190c298c03bf64d0b_Out_2_Vector3, _NormalBlend_4242e1b4a785378aa59dd49e9d993ffc_Out_2_Vector3);
|
|
UnityTexture2D _Property_779695727390348d8b8a7f7ae2245af0_Out_0_Texture2D = UnityBuildTexture2DStructNoScale(_CoverNormalMap);
|
|
float4 _Property_c853e88632d9fd85ac0e98d12083eb62_Out_0_Vector4 = _CoverTilingOffset;
|
|
float4 _Divide_1fe314f1ca9dd78fbf366bbeb40e4ccf_Out_2_Vector4;
|
|
Unity_Divide_float4(float4(1, 1, 0, 0), _Property_c853e88632d9fd85ac0e98d12083eb62_Out_0_Vector4, _Divide_1fe314f1ca9dd78fbf366bbeb40e4ccf_Out_2_Vector4);
|
|
float _Property_ee792eccbb538a878b19be5db264531e_Out_0_Float = _CoverTriplanarThreshold;
|
|
Bindings_TriplanarNMn_059da9746584140498cd018db3c76047_float _TriplanarNMn_ba7e211dd8095589a2939b5b239ca8e0;
|
|
_TriplanarNMn_ba7e211dd8095589a2939b5b239ca8e0.WorldSpaceNormal = IN.WorldSpaceNormal;
|
|
_TriplanarNMn_ba7e211dd8095589a2939b5b239ca8e0.WorldSpaceTangent = IN.WorldSpaceTangent;
|
|
_TriplanarNMn_ba7e211dd8095589a2939b5b239ca8e0.WorldSpaceBiTangent = IN.WorldSpaceBiTangent;
|
|
_TriplanarNMn_ba7e211dd8095589a2939b5b239ca8e0.AbsoluteWorldSpacePosition = IN.AbsoluteWorldSpacePosition;
|
|
float4 _TriplanarNMn_ba7e211dd8095589a2939b5b239ca8e0_XYZ_1_Vector4;
|
|
float4 _TriplanarNMn_ba7e211dd8095589a2939b5b239ca8e0_XZ_2_Vector4;
|
|
float4 _TriplanarNMn_ba7e211dd8095589a2939b5b239ca8e0_YZ_3_Vector4;
|
|
float4 _TriplanarNMn_ba7e211dd8095589a2939b5b239ca8e0_XY_4_Vector4;
|
|
SG_TriplanarNMn_059da9746584140498cd018db3c76047_float(_Property_779695727390348d8b8a7f7ae2245af0_Out_0_Texture2D, (_Divide_1fe314f1ca9dd78fbf366bbeb40e4ccf_Out_2_Vector4).x, _Property_ee792eccbb538a878b19be5db264531e_Out_0_Float, UnityBuildSamplerStateStruct(SamplerState_Linear_Repeat_Aniso8), _TriplanarNMn_ba7e211dd8095589a2939b5b239ca8e0, _TriplanarNMn_ba7e211dd8095589a2939b5b239ca8e0_XYZ_1_Vector4, _TriplanarNMn_ba7e211dd8095589a2939b5b239ca8e0_XZ_2_Vector4, _TriplanarNMn_ba7e211dd8095589a2939b5b239ca8e0_YZ_3_Vector4, _TriplanarNMn_ba7e211dd8095589a2939b5b239ca8e0_XY_4_Vector4);
|
|
float _Property_1c389d922d4fba86bc62c7d42ac8643d_Out_0_Float = _CoverNormalScale;
|
|
float3 _NormalStrength_db3de71f618fee878c84a13374c7adc4_Out_2_Vector3;
|
|
Unity_NormalStrength_float((_TriplanarNMn_ba7e211dd8095589a2939b5b239ca8e0_XYZ_1_Vector4.xyz), _Property_1c389d922d4fba86bc62c7d42ac8643d_Out_0_Float, _NormalStrength_db3de71f618fee878c84a13374c7adc4_Out_2_Vector3);
|
|
float _Property_3d4ab6ad1f1f138a96f0463f7be8b6ce_Out_0_Float = _CovershapeNormalScale;
|
|
float3 _NormalStrength_401cd5af500bd68dbc9bca19d548d0db_Out_2_Vector3;
|
|
Unity_NormalStrength_float((_SampleTexture2D_63aaad04c65f698e8f640de826888075_RGBA_0_Vector4.xyz), _Property_3d4ab6ad1f1f138a96f0463f7be8b6ce_Out_0_Float, _NormalStrength_401cd5af500bd68dbc9bca19d548d0db_Out_2_Vector3);
|
|
float3 _NormalBlend_b2e537e7a99f9280ba682b47daf3c5e3_Out_2_Vector3;
|
|
Unity_NormalBlend_float(_NormalStrength_db3de71f618fee878c84a13374c7adc4_Out_2_Vector3, _NormalStrength_401cd5af500bd68dbc9bca19d548d0db_Out_2_Vector3, _NormalBlend_b2e537e7a99f9280ba682b47daf3c5e3_Out_2_Vector3);
|
|
float2 _Vector2_b87489f8633d268598edb76163057164_Out_0_Vector2 = float2(_SampleTexture2D_4bd08411faa60c828847f2247f06a809_A_7_Float, _SampleTexture2D_4bd08411faa60c828847f2247f06a809_G_5_Float);
|
|
float2 _Multiply_95e603bb6d4bd7809de0ae42c8f45058_Out_2_Vector2;
|
|
Unity_Multiply_float2_float2(_Vector2_b87489f8633d268598edb76163057164_Out_0_Vector2, float2(2, 2), _Multiply_95e603bb6d4bd7809de0ae42c8f45058_Out_2_Vector2);
|
|
float2 _Add_c116ac3906ccf68d82dd5b73d0f5659a_Out_2_Vector2;
|
|
Unity_Add_float2(_Multiply_95e603bb6d4bd7809de0ae42c8f45058_Out_2_Vector2, float2(-1, -1), _Add_c116ac3906ccf68d82dd5b73d0f5659a_Out_2_Vector2);
|
|
float _Property_988acb131fd330878b4ac0672366ad90_Out_0_Float = _DetailCoverNormalScale;
|
|
float2 _Multiply_6de1a79215e1928f9f3fc3293df74f88_Out_2_Vector2;
|
|
Unity_Multiply_float2_float2(_Add_c116ac3906ccf68d82dd5b73d0f5659a_Out_2_Vector2, (_Property_988acb131fd330878b4ac0672366ad90_Out_0_Float.xx), _Multiply_6de1a79215e1928f9f3fc3293df74f88_Out_2_Vector2);
|
|
float _Split_9ce53bb7a65f16809b6a95d82286186e_R_1_Float = _Multiply_6de1a79215e1928f9f3fc3293df74f88_Out_2_Vector2[0];
|
|
float _Split_9ce53bb7a65f16809b6a95d82286186e_G_2_Float = _Multiply_6de1a79215e1928f9f3fc3293df74f88_Out_2_Vector2[1];
|
|
float _Split_9ce53bb7a65f16809b6a95d82286186e_B_3_Float = 0;
|
|
float _Split_9ce53bb7a65f16809b6a95d82286186e_A_4_Float = 0;
|
|
float _DotProduct_8912687db556b6819d2a38ba8511a7ae_Out_2_Float;
|
|
Unity_DotProduct_float2(_Multiply_6de1a79215e1928f9f3fc3293df74f88_Out_2_Vector2, _Multiply_6de1a79215e1928f9f3fc3293df74f88_Out_2_Vector2, _DotProduct_8912687db556b6819d2a38ba8511a7ae_Out_2_Float);
|
|
float _Saturate_013ea9a02a1ff18992540b270836cc73_Out_1_Float;
|
|
Unity_Saturate_float(_DotProduct_8912687db556b6819d2a38ba8511a7ae_Out_2_Float, _Saturate_013ea9a02a1ff18992540b270836cc73_Out_1_Float);
|
|
float _OneMinus_eefd2695dc7d77838984fc25a1c00b0b_Out_1_Float;
|
|
Unity_OneMinus_float(_Saturate_013ea9a02a1ff18992540b270836cc73_Out_1_Float, _OneMinus_eefd2695dc7d77838984fc25a1c00b0b_Out_1_Float);
|
|
float _SquareRoot_1d25cc71b4ce9286af1666a96ae6ac5a_Out_1_Float;
|
|
Unity_SquareRoot_float(_OneMinus_eefd2695dc7d77838984fc25a1c00b0b_Out_1_Float, _SquareRoot_1d25cc71b4ce9286af1666a96ae6ac5a_Out_1_Float);
|
|
float3 _Vector3_c3d9c7e92a1c5b8ea5650ab3bb421c27_Out_0_Vector3 = float3(_Split_9ce53bb7a65f16809b6a95d82286186e_R_1_Float, _Split_9ce53bb7a65f16809b6a95d82286186e_G_2_Float, _SquareRoot_1d25cc71b4ce9286af1666a96ae6ac5a_Out_1_Float);
|
|
float3 _NormalBlend_8e1d1c87f8c12b87b64883533bfa43be_Out_2_Vector3;
|
|
Unity_NormalBlend_float(_NormalBlend_b2e537e7a99f9280ba682b47daf3c5e3_Out_2_Vector3, _Vector3_c3d9c7e92a1c5b8ea5650ab3bb421c27_Out_0_Vector3, _NormalBlend_8e1d1c87f8c12b87b64883533bfa43be_Out_2_Vector3);
|
|
float _Property_cb0b6597aee47880b32e852aaa0e4a71_Out_0_Boolean = _USEDYNAMICCOVERTSTATICMASKF;
|
|
UnityTexture2D _Property_c167aafac28bd98c8411d3e25631fdeb_Out_0_Texture2D = UnityBuildTexture2DStructNoScale(_CoverMaskA);
|
|
float4 _UV_e143f0ebbac8bb8cab3206ab93422dda_Out_0_Vector4 = IN.uv0;
|
|
float4 _SampleTexture2D_32717b1e99785588830ceee116cbe7fc_RGBA_0_Vector4 = SAMPLE_TEXTURE2D(_Property_c167aafac28bd98c8411d3e25631fdeb_Out_0_Texture2D.tex, _Property_c167aafac28bd98c8411d3e25631fdeb_Out_0_Texture2D.samplerstate, _Property_c167aafac28bd98c8411d3e25631fdeb_Out_0_Texture2D.GetTransformedUV((_UV_e143f0ebbac8bb8cab3206ab93422dda_Out_0_Vector4.xy)) );
|
|
float _SampleTexture2D_32717b1e99785588830ceee116cbe7fc_R_4_Float = _SampleTexture2D_32717b1e99785588830ceee116cbe7fc_RGBA_0_Vector4.r;
|
|
float _SampleTexture2D_32717b1e99785588830ceee116cbe7fc_G_5_Float = _SampleTexture2D_32717b1e99785588830ceee116cbe7fc_RGBA_0_Vector4.g;
|
|
float _SampleTexture2D_32717b1e99785588830ceee116cbe7fc_B_6_Float = _SampleTexture2D_32717b1e99785588830ceee116cbe7fc_RGBA_0_Vector4.b;
|
|
float _SampleTexture2D_32717b1e99785588830ceee116cbe7fc_A_7_Float = _SampleTexture2D_32717b1e99785588830ceee116cbe7fc_RGBA_0_Vector4.a;
|
|
float _Property_4b3f692214f8d081a043985e1adb12a1_Out_0_Float = _CoverMaskPower;
|
|
float _Multiply_10cc4ecb135f8e8ab88c475223d0eadf_Out_2_Float;
|
|
Unity_Multiply_float_float(_SampleTexture2D_32717b1e99785588830ceee116cbe7fc_A_7_Float, _Property_4b3f692214f8d081a043985e1adb12a1_Out_0_Float, _Multiply_10cc4ecb135f8e8ab88c475223d0eadf_Out_2_Float);
|
|
float _Clamp_07a501c22c6e188199bed73412ac8926_Out_3_Float;
|
|
Unity_Clamp_float(_Multiply_10cc4ecb135f8e8ab88c475223d0eadf_Out_2_Float, float(0), float(1), _Clamp_07a501c22c6e188199bed73412ac8926_Out_3_Float);
|
|
float _Split_2ada595651635e8d97bf4b82f717fcc6_R_1_Float = IN.VertexColor[0];
|
|
float _Split_2ada595651635e8d97bf4b82f717fcc6_G_2_Float = IN.VertexColor[1];
|
|
float _Split_2ada595651635e8d97bf4b82f717fcc6_B_3_Float = IN.VertexColor[2];
|
|
float _Split_2ada595651635e8d97bf4b82f717fcc6_A_4_Float = IN.VertexColor[3];
|
|
float3 _Property_9180f8dd535ba18499edac37aef4d231_Out_0_Vector3 = _CoverDirection;
|
|
float _Property_5aba050988182f8aad3ec6b2c7e57899_Out_0_Float = _CoverNormalBlendHardness;
|
|
float3 _NormalStrength_dac4b0abfa8a1f82b7103b18f6e6e1b7_Out_2_Vector3;
|
|
Unity_NormalStrength_float((_TriplanarNMn_ba7e211dd8095589a2939b5b239ca8e0_XYZ_1_Vector4.xyz), _Property_5aba050988182f8aad3ec6b2c7e57899_Out_0_Float, _NormalStrength_dac4b0abfa8a1f82b7103b18f6e6e1b7_Out_2_Vector3);
|
|
float3 _NormalBlend_4058aded292b7389ade16c695a6cae6c_Out_2_Vector3;
|
|
Unity_NormalBlend_float(_NormalStrength_401cd5af500bd68dbc9bca19d548d0db_Out_2_Vector3, _NormalStrength_dac4b0abfa8a1f82b7103b18f6e6e1b7_Out_2_Vector3, _NormalBlend_4058aded292b7389ade16c695a6cae6c_Out_2_Vector3);
|
|
float3 _Multiply_0e22f9c6ff55a188b2533f1889a53038_Out_2_Vector3;
|
|
Unity_Multiply_float3_float3(_Property_9180f8dd535ba18499edac37aef4d231_Out_0_Vector3, IN.WorldSpaceNormal, _Multiply_0e22f9c6ff55a188b2533f1889a53038_Out_2_Vector3);
|
|
float _Split_89708601b575b58c852cd55e4fb248d1_R_1_Float = _Multiply_0e22f9c6ff55a188b2533f1889a53038_Out_2_Vector3[0];
|
|
float _Split_89708601b575b58c852cd55e4fb248d1_G_2_Float = _Multiply_0e22f9c6ff55a188b2533f1889a53038_Out_2_Vector3[1];
|
|
float _Split_89708601b575b58c852cd55e4fb248d1_B_3_Float = _Multiply_0e22f9c6ff55a188b2533f1889a53038_Out_2_Vector3[2];
|
|
float _Split_89708601b575b58c852cd55e4fb248d1_A_4_Float = 0;
|
|
float _Add_bfe29b97a9ce3b80aa4cd689be8c4a97_Out_2_Float;
|
|
Unity_Add_float(_Split_89708601b575b58c852cd55e4fb248d1_R_1_Float, _Split_89708601b575b58c852cd55e4fb248d1_G_2_Float, _Add_bfe29b97a9ce3b80aa4cd689be8c4a97_Out_2_Float);
|
|
float _Add_f3152b42a227088aa1439fc1fe8451cc_Out_2_Float;
|
|
Unity_Add_float(_Add_bfe29b97a9ce3b80aa4cd689be8c4a97_Out_2_Float, _Split_89708601b575b58c852cd55e4fb248d1_B_3_Float, _Add_f3152b42a227088aa1439fc1fe8451cc_Out_2_Float);
|
|
float _Property_deabceefa3e3438a8ad71fa67fc5b070_Out_0_Float = _Cover_Amount;
|
|
float _Property_2fba2d762d74b8828ff566c10bc48e86_Out_0_Float = _Cover_Amount_Grow_Speed;
|
|
float _Subtract_1f990262a41ce88f96a47df66dcb4971_Out_2_Float;
|
|
Unity_Subtract_float(float(4), _Property_2fba2d762d74b8828ff566c10bc48e86_Out_0_Float, _Subtract_1f990262a41ce88f96a47df66dcb4971_Out_2_Float);
|
|
float _Divide_a89e05be4802ac80886ad6bdeadc4949_Out_2_Float;
|
|
Unity_Divide_float(_Property_deabceefa3e3438a8ad71fa67fc5b070_Out_0_Float, _Subtract_1f990262a41ce88f96a47df66dcb4971_Out_2_Float, _Divide_a89e05be4802ac80886ad6bdeadc4949_Out_2_Float);
|
|
float _Absolute_2b58f48ab94a3087a726a2b03c51e2c6_Out_1_Float;
|
|
Unity_Absolute_float(_Divide_a89e05be4802ac80886ad6bdeadc4949_Out_2_Float, _Absolute_2b58f48ab94a3087a726a2b03c51e2c6_Out_1_Float);
|
|
float _Power_6695d49b8b82468ea686b66e6749260b_Out_2_Float;
|
|
Unity_Power_float(_Absolute_2b58f48ab94a3087a726a2b03c51e2c6_Out_1_Float, _Subtract_1f990262a41ce88f96a47df66dcb4971_Out_2_Float, _Power_6695d49b8b82468ea686b66e6749260b_Out_2_Float);
|
|
float _Clamp_94f0310fee13798bad4e26e2381a94d4_Out_3_Float;
|
|
Unity_Clamp_float(_Power_6695d49b8b82468ea686b66e6749260b_Out_2_Float, float(0), float(2), _Clamp_94f0310fee13798bad4e26e2381a94d4_Out_3_Float);
|
|
float _Multiply_999692515a117385ade114d924fa589a_Out_2_Float;
|
|
Unity_Multiply_float_float(_Add_f3152b42a227088aa1439fc1fe8451cc_Out_2_Float, _Clamp_94f0310fee13798bad4e26e2381a94d4_Out_3_Float, _Multiply_999692515a117385ade114d924fa589a_Out_2_Float);
|
|
float _Saturate_f811eeeeb3229d83917aa8be2c36831e_Out_1_Float;
|
|
Unity_Saturate_float(_Multiply_999692515a117385ade114d924fa589a_Out_2_Float, _Saturate_f811eeeeb3229d83917aa8be2c36831e_Out_1_Float);
|
|
float _Clamp_4c470807610adb8c8488f125c0af7bb5_Out_3_Float;
|
|
Unity_Clamp_float(_Add_f3152b42a227088aa1439fc1fe8451cc_Out_2_Float, float(0), float(0.9999), _Clamp_4c470807610adb8c8488f125c0af7bb5_Out_3_Float);
|
|
float _Property_765e3d021aec6d8f9f8b3174d5a06980_Out_0_Float = _Cover_Max_Angle;
|
|
float _Divide_9d9fc267a9ebcf84b378fdd4c66ff34d_Out_2_Float;
|
|
Unity_Divide_float(_Property_765e3d021aec6d8f9f8b3174d5a06980_Out_0_Float, float(45), _Divide_9d9fc267a9ebcf84b378fdd4c66ff34d_Out_2_Float);
|
|
float _OneMinus_f074fba0be46e688aa75f5377832251a_Out_1_Float;
|
|
Unity_OneMinus_float(_Divide_9d9fc267a9ebcf84b378fdd4c66ff34d_Out_2_Float, _OneMinus_f074fba0be46e688aa75f5377832251a_Out_1_Float);
|
|
float _Subtract_0b0cd6145e351c87a68366348828154d_Out_2_Float;
|
|
Unity_Subtract_float(_Clamp_4c470807610adb8c8488f125c0af7bb5_Out_3_Float, _OneMinus_f074fba0be46e688aa75f5377832251a_Out_1_Float, _Subtract_0b0cd6145e351c87a68366348828154d_Out_2_Float);
|
|
float _Clamp_30607c0c4e04e5879d4061a1f7688421_Out_3_Float;
|
|
Unity_Clamp_float(_Subtract_0b0cd6145e351c87a68366348828154d_Out_2_Float, float(0), float(2), _Clamp_30607c0c4e04e5879d4061a1f7688421_Out_3_Float);
|
|
float _Divide_cfe09f3bd2005485a3c2229367309962_Out_2_Float;
|
|
Unity_Divide_float(float(1), _Divide_9d9fc267a9ebcf84b378fdd4c66ff34d_Out_2_Float, _Divide_cfe09f3bd2005485a3c2229367309962_Out_2_Float);
|
|
float _Multiply_022be2eb9027988b9d5d4c1392749347_Out_2_Float;
|
|
Unity_Multiply_float_float(_Clamp_30607c0c4e04e5879d4061a1f7688421_Out_3_Float, _Divide_cfe09f3bd2005485a3c2229367309962_Out_2_Float, _Multiply_022be2eb9027988b9d5d4c1392749347_Out_2_Float);
|
|
float _Absolute_2fed84623df90f8ba200de68955721fd_Out_1_Float;
|
|
Unity_Absolute_float(_Multiply_022be2eb9027988b9d5d4c1392749347_Out_2_Float, _Absolute_2fed84623df90f8ba200de68955721fd_Out_1_Float);
|
|
float _Property_b79c921e30793a8e84330b3341539232_Out_0_Float = _CoverHardness;
|
|
float _Power_b9ddee06dfd0b880880990743bc10612_Out_2_Float;
|
|
Unity_Power_float(_Absolute_2fed84623df90f8ba200de68955721fd_Out_1_Float, _Property_b79c921e30793a8e84330b3341539232_Out_0_Float, _Power_b9ddee06dfd0b880880990743bc10612_Out_2_Float);
|
|
float _Property_c82936191f294c89b76f2d1809168f87_Out_0_Float = _Cover_Min_Height;
|
|
float _OneMinus_f0918ccb4f747b8e83e39d82dc3b5ca9_Out_1_Float;
|
|
Unity_OneMinus_float(_Property_c82936191f294c89b76f2d1809168f87_Out_0_Float, _OneMinus_f0918ccb4f747b8e83e39d82dc3b5ca9_Out_1_Float);
|
|
float _Split_0e80ce6f80cff18f87a043d1e3eecd08_R_1_Float = IN.AbsoluteWorldSpacePosition[0];
|
|
float _Split_0e80ce6f80cff18f87a043d1e3eecd08_G_2_Float = IN.AbsoluteWorldSpacePosition[1];
|
|
float _Split_0e80ce6f80cff18f87a043d1e3eecd08_B_3_Float = IN.AbsoluteWorldSpacePosition[2];
|
|
float _Split_0e80ce6f80cff18f87a043d1e3eecd08_A_4_Float = 0;
|
|
float _Add_60b3bb4cdad6e88b8c097c5b08daa7d0_Out_2_Float;
|
|
Unity_Add_float(_OneMinus_f0918ccb4f747b8e83e39d82dc3b5ca9_Out_1_Float, _Split_0e80ce6f80cff18f87a043d1e3eecd08_G_2_Float, _Add_60b3bb4cdad6e88b8c097c5b08daa7d0_Out_2_Float);
|
|
float _Add_1898d6f46901df809c68b5241b2e9c37_Out_2_Float;
|
|
Unity_Add_float(_Add_60b3bb4cdad6e88b8c097c5b08daa7d0_Out_2_Float, float(1), _Add_1898d6f46901df809c68b5241b2e9c37_Out_2_Float);
|
|
float _Clamp_25d6140fa3ff3a8f956f99005adace2e_Out_3_Float;
|
|
Unity_Clamp_float(_Add_1898d6f46901df809c68b5241b2e9c37_Out_2_Float, float(0), float(1), _Clamp_25d6140fa3ff3a8f956f99005adace2e_Out_3_Float);
|
|
float _Property_6094a52a4f01fd8da5ea847b69b6941c_Out_0_Float = _Cover_Min_Height_Blending;
|
|
float _Add_dc69668fc7f1a586a754713499f71d99_Out_2_Float;
|
|
Unity_Add_float(_Add_60b3bb4cdad6e88b8c097c5b08daa7d0_Out_2_Float, _Property_6094a52a4f01fd8da5ea847b69b6941c_Out_0_Float, _Add_dc69668fc7f1a586a754713499f71d99_Out_2_Float);
|
|
float _Divide_63e32406c8773d83bbf2e244faf8328f_Out_2_Float;
|
|
Unity_Divide_float(_Add_dc69668fc7f1a586a754713499f71d99_Out_2_Float, _Add_60b3bb4cdad6e88b8c097c5b08daa7d0_Out_2_Float, _Divide_63e32406c8773d83bbf2e244faf8328f_Out_2_Float);
|
|
float _OneMinus_ec22d21ddfa84288b6f750e9fdb107b9_Out_1_Float;
|
|
Unity_OneMinus_float(_Divide_63e32406c8773d83bbf2e244faf8328f_Out_2_Float, _OneMinus_ec22d21ddfa84288b6f750e9fdb107b9_Out_1_Float);
|
|
float _Add_a1206af8cbfbbe8081046db1247aba04_Out_2_Float;
|
|
Unity_Add_float(_OneMinus_ec22d21ddfa84288b6f750e9fdb107b9_Out_1_Float, float(-0.5), _Add_a1206af8cbfbbe8081046db1247aba04_Out_2_Float);
|
|
float _Clamp_640b5884b29f188987c157ad5e6e6959_Out_3_Float;
|
|
Unity_Clamp_float(_Add_a1206af8cbfbbe8081046db1247aba04_Out_2_Float, float(0), float(1), _Clamp_640b5884b29f188987c157ad5e6e6959_Out_3_Float);
|
|
float _Add_cfdb6daf617665838bb05910fa9505df_Out_2_Float;
|
|
Unity_Add_float(_Clamp_25d6140fa3ff3a8f956f99005adace2e_Out_3_Float, _Clamp_640b5884b29f188987c157ad5e6e6959_Out_3_Float, _Add_cfdb6daf617665838bb05910fa9505df_Out_2_Float);
|
|
float _Clamp_552ef7e5cf91408a982297885971db7e_Out_3_Float;
|
|
Unity_Clamp_float(_Add_cfdb6daf617665838bb05910fa9505df_Out_2_Float, float(0), float(1), _Clamp_552ef7e5cf91408a982297885971db7e_Out_3_Float);
|
|
float _Multiply_8f8db9c494f4fd869809fc45531df628_Out_2_Float;
|
|
Unity_Multiply_float_float(_Power_b9ddee06dfd0b880880990743bc10612_Out_2_Float, _Clamp_552ef7e5cf91408a982297885971db7e_Out_3_Float, _Multiply_8f8db9c494f4fd869809fc45531df628_Out_2_Float);
|
|
float _Multiply_60075aa07d29d285b3c1ee531e5b5cb3_Out_2_Float;
|
|
Unity_Multiply_float_float(_Saturate_f811eeeeb3229d83917aa8be2c36831e_Out_1_Float, _Multiply_8f8db9c494f4fd869809fc45531df628_Out_2_Float, _Multiply_60075aa07d29d285b3c1ee531e5b5cb3_Out_2_Float);
|
|
float3 _Lerp_453c8bc667315a8fa37a93affb877753_Out_3_Vector3;
|
|
Unity_Lerp_float3(_NormalBlend_4242e1b4a785378aa59dd49e9d993ffc_Out_2_Vector3, _NormalBlend_4058aded292b7389ade16c695a6cae6c_Out_2_Vector3, (_Multiply_60075aa07d29d285b3c1ee531e5b5cb3_Out_2_Float.xxx), _Lerp_453c8bc667315a8fa37a93affb877753_Out_3_Vector3);
|
|
float3 _Transform_a87113b0be9dfa8eaf6932ed645aa845_Out_1_Vector3;
|
|
{
|
|
float3x3 tangentTransform = float3x3(IN.WorldSpaceTangent, IN.WorldSpaceBiTangent, IN.WorldSpaceNormal);
|
|
_Transform_a87113b0be9dfa8eaf6932ed645aa845_Out_1_Vector3 = TransformTangentToWorldDir(_Lerp_453c8bc667315a8fa37a93affb877753_Out_3_Vector3.xyz, tangentTransform, false).xyz;
|
|
}
|
|
float3 _Multiply_f6e009bd5c0fd18c99ac72f233476fe5_Out_2_Vector3;
|
|
Unity_Multiply_float3_float3(_Property_9180f8dd535ba18499edac37aef4d231_Out_0_Vector3, _Transform_a87113b0be9dfa8eaf6932ed645aa845_Out_1_Vector3, _Multiply_f6e009bd5c0fd18c99ac72f233476fe5_Out_2_Vector3);
|
|
float _Split_96f0a5b75c0e0b889dbbccd04bc2aaaa_R_1_Float = _Multiply_f6e009bd5c0fd18c99ac72f233476fe5_Out_2_Vector3[0];
|
|
float _Split_96f0a5b75c0e0b889dbbccd04bc2aaaa_G_2_Float = _Multiply_f6e009bd5c0fd18c99ac72f233476fe5_Out_2_Vector3[1];
|
|
float _Split_96f0a5b75c0e0b889dbbccd04bc2aaaa_B_3_Float = _Multiply_f6e009bd5c0fd18c99ac72f233476fe5_Out_2_Vector3[2];
|
|
float _Split_96f0a5b75c0e0b889dbbccd04bc2aaaa_A_4_Float = 0;
|
|
float _Add_07028d5174d9f88594da40d46502bc13_Out_2_Float;
|
|
Unity_Add_float(_Split_96f0a5b75c0e0b889dbbccd04bc2aaaa_R_1_Float, _Split_96f0a5b75c0e0b889dbbccd04bc2aaaa_G_2_Float, _Add_07028d5174d9f88594da40d46502bc13_Out_2_Float);
|
|
float _Add_93af6c0f8ee9a3898ca51358a213b69f_Out_2_Float;
|
|
Unity_Add_float(_Add_07028d5174d9f88594da40d46502bc13_Out_2_Float, _Split_96f0a5b75c0e0b889dbbccd04bc2aaaa_B_3_Float, _Add_93af6c0f8ee9a3898ca51358a213b69f_Out_2_Float);
|
|
float _Multiply_77421b936cb9d68299ef6791b83fa867_Out_2_Float;
|
|
Unity_Multiply_float_float(_Add_93af6c0f8ee9a3898ca51358a213b69f_Out_2_Float, _Clamp_94f0310fee13798bad4e26e2381a94d4_Out_3_Float, _Multiply_77421b936cb9d68299ef6791b83fa867_Out_2_Float);
|
|
float _Multiply_ac6769fbe7188685a7537e5ac2c6bfa9_Out_2_Float;
|
|
Unity_Multiply_float_float(_Clamp_94f0310fee13798bad4e26e2381a94d4_Out_3_Float, _Property_b79c921e30793a8e84330b3341539232_Out_0_Float, _Multiply_ac6769fbe7188685a7537e5ac2c6bfa9_Out_2_Float);
|
|
float _Multiply_37a341e0d9783683aa8d5b7001acced1_Out_2_Float;
|
|
Unity_Multiply_float_float(_Multiply_ac6769fbe7188685a7537e5ac2c6bfa9_Out_2_Float, _Multiply_8f8db9c494f4fd869809fc45531df628_Out_2_Float, _Multiply_37a341e0d9783683aa8d5b7001acced1_Out_2_Float);
|
|
float _Multiply_02fa8aa66970b281b4a325dc68f407b9_Out_2_Float;
|
|
Unity_Multiply_float_float(_Multiply_77421b936cb9d68299ef6791b83fa867_Out_2_Float, _Multiply_37a341e0d9783683aa8d5b7001acced1_Out_2_Float, _Multiply_02fa8aa66970b281b4a325dc68f407b9_Out_2_Float);
|
|
UnityTexture2D _Property_fd2df7ee33755280948b4c47585d4323_Out_0_Texture2D = UnityBuildTexture2DStructNoScale(_CoverMaskMap);
|
|
Bindings_TriplanarNM_bc609ed95f52591469ab35dbfe0efcea_float _TriplanarNM_e307cfdc6531d2838aa3dfa51fc3913f;
|
|
_TriplanarNM_e307cfdc6531d2838aa3dfa51fc3913f.WorldSpaceNormal = IN.WorldSpaceNormal;
|
|
_TriplanarNM_e307cfdc6531d2838aa3dfa51fc3913f.AbsoluteWorldSpacePosition = IN.AbsoluteWorldSpacePosition;
|
|
float4 _TriplanarNM_e307cfdc6531d2838aa3dfa51fc3913f_XYZ_1_Vector4;
|
|
float4 _TriplanarNM_e307cfdc6531d2838aa3dfa51fc3913f_XZ_2_Vector4;
|
|
float4 _TriplanarNM_e307cfdc6531d2838aa3dfa51fc3913f_YZ_3_Vector4;
|
|
float4 _TriplanarNM_e307cfdc6531d2838aa3dfa51fc3913f_XY_4_Vector4;
|
|
SG_TriplanarNM_bc609ed95f52591469ab35dbfe0efcea_float(_Property_fd2df7ee33755280948b4c47585d4323_Out_0_Texture2D, (_Divide_1fe314f1ca9dd78fbf366bbeb40e4ccf_Out_2_Vector4).x, _Property_ee792eccbb538a878b19be5db264531e_Out_0_Float, UnityBuildSamplerStateStruct(SamplerState_Linear_Repeat_Aniso8), _TriplanarNM_e307cfdc6531d2838aa3dfa51fc3913f, _TriplanarNM_e307cfdc6531d2838aa3dfa51fc3913f_XYZ_1_Vector4, _TriplanarNM_e307cfdc6531d2838aa3dfa51fc3913f_XZ_2_Vector4, _TriplanarNM_e307cfdc6531d2838aa3dfa51fc3913f_YZ_3_Vector4, _TriplanarNM_e307cfdc6531d2838aa3dfa51fc3913f_XY_4_Vector4);
|
|
float _Split_fe834aed1172f284a73d2d6810bdb696_R_1_Float = _TriplanarNM_e307cfdc6531d2838aa3dfa51fc3913f_XYZ_1_Vector4[0];
|
|
float _Split_fe834aed1172f284a73d2d6810bdb696_G_2_Float = _TriplanarNM_e307cfdc6531d2838aa3dfa51fc3913f_XYZ_1_Vector4[1];
|
|
float _Split_fe834aed1172f284a73d2d6810bdb696_B_3_Float = _TriplanarNM_e307cfdc6531d2838aa3dfa51fc3913f_XYZ_1_Vector4[2];
|
|
float _Split_fe834aed1172f284a73d2d6810bdb696_A_4_Float = _TriplanarNM_e307cfdc6531d2838aa3dfa51fc3913f_XYZ_1_Vector4[3];
|
|
float _Property_b5f7a30c2ea202858ea263fd2a5a46c6_Out_0_Float = _CoverHeightMapMin;
|
|
float _Property_f86678f1d28c0483ba1ddccf49ee52f7_Out_0_Float = _CoverHeightMapMax;
|
|
float2 _Vector2_b5c01a0d88900d87a8a819b340151fb6_Out_0_Vector2 = float2(_Property_b5f7a30c2ea202858ea263fd2a5a46c6_Out_0_Float, _Property_f86678f1d28c0483ba1ddccf49ee52f7_Out_0_Float);
|
|
float _Property_82b4f7f3bf3b4382bd69876479a9e350_Out_0_Float = _CoverHeightMapOffset;
|
|
float2 _Add_6020f54fd1e6798e8e76bfdcad62759a_Out_2_Vector2;
|
|
Unity_Add_float2(_Vector2_b5c01a0d88900d87a8a819b340151fb6_Out_0_Vector2, (_Property_82b4f7f3bf3b4382bd69876479a9e350_Out_0_Float.xx), _Add_6020f54fd1e6798e8e76bfdcad62759a_Out_2_Vector2);
|
|
float _Remap_65ceff40294d1e8aae6051445b9fdbc8_Out_3_Float;
|
|
Unity_Remap_float(_Split_fe834aed1172f284a73d2d6810bdb696_B_3_Float, float2 (0, 1), _Add_6020f54fd1e6798e8e76bfdcad62759a_Out_2_Vector2, _Remap_65ceff40294d1e8aae6051445b9fdbc8_Out_3_Float);
|
|
float _Multiply_bb0edd30580dba8b89213d9c5b1ef857_Out_2_Float;
|
|
Unity_Multiply_float_float(_Multiply_02fa8aa66970b281b4a325dc68f407b9_Out_2_Float, _Remap_65ceff40294d1e8aae6051445b9fdbc8_Out_3_Float, _Multiply_bb0edd30580dba8b89213d9c5b1ef857_Out_2_Float);
|
|
float _Multiply_484dd7b77d58aa88bf99c82cfe77c774_Out_2_Float;
|
|
Unity_Multiply_float_float(_Split_2ada595651635e8d97bf4b82f717fcc6_G_2_Float, _Multiply_bb0edd30580dba8b89213d9c5b1ef857_Out_2_Float, _Multiply_484dd7b77d58aa88bf99c82cfe77c774_Out_2_Float);
|
|
float _Saturate_d39fa9bab8cc8a8fa35db28d4dbc74ab_Out_1_Float;
|
|
Unity_Saturate_float(_Multiply_484dd7b77d58aa88bf99c82cfe77c774_Out_2_Float, _Saturate_d39fa9bab8cc8a8fa35db28d4dbc74ab_Out_1_Float);
|
|
float _Multiply_6957741a4923cc8db84ac72df2e194a8_Out_2_Float;
|
|
Unity_Multiply_float_float(_Clamp_07a501c22c6e188199bed73412ac8926_Out_3_Float, _Saturate_d39fa9bab8cc8a8fa35db28d4dbc74ab_Out_1_Float, _Multiply_6957741a4923cc8db84ac72df2e194a8_Out_2_Float);
|
|
float _Branch_3ccf365d359214809d30b6430d863e3f_Out_3_Float;
|
|
Unity_Branch_float(_Property_cb0b6597aee47880b32e852aaa0e4a71_Out_0_Boolean, _Multiply_6957741a4923cc8db84ac72df2e194a8_Out_2_Float, _Clamp_07a501c22c6e188199bed73412ac8926_Out_3_Float, _Branch_3ccf365d359214809d30b6430d863e3f_Out_3_Float);
|
|
float3 _Lerp_48cd568fef7d358b8d65b989db745e6c_Out_3_Vector3;
|
|
Unity_Lerp_float3(_NormalBlend_4242e1b4a785378aa59dd49e9d993ffc_Out_2_Vector3, _NormalBlend_8e1d1c87f8c12b87b64883533bfa43be_Out_2_Vector3, (_Branch_3ccf365d359214809d30b6430d863e3f_Out_3_Float.xxx), _Lerp_48cd568fef7d358b8d65b989db745e6c_Out_3_Vector3);
|
|
UnityTexture2D _Property_8e909eb873a4cd8e9af98a90a84fdde8_Out_0_Texture2D = UnityBuildTexture2DStructNoScale(_BaseMaskMap);
|
|
Bindings_TriplanarNM_bc609ed95f52591469ab35dbfe0efcea_float _TriplanarNM_52e6c67b7de4708f80a463a880607c97;
|
|
_TriplanarNM_52e6c67b7de4708f80a463a880607c97.WorldSpaceNormal = IN.WorldSpaceNormal;
|
|
_TriplanarNM_52e6c67b7de4708f80a463a880607c97.AbsoluteWorldSpacePosition = IN.AbsoluteWorldSpacePosition;
|
|
float4 _TriplanarNM_52e6c67b7de4708f80a463a880607c97_XYZ_1_Vector4;
|
|
float4 _TriplanarNM_52e6c67b7de4708f80a463a880607c97_XZ_2_Vector4;
|
|
float4 _TriplanarNM_52e6c67b7de4708f80a463a880607c97_YZ_3_Vector4;
|
|
float4 _TriplanarNM_52e6c67b7de4708f80a463a880607c97_XY_4_Vector4;
|
|
SG_TriplanarNM_bc609ed95f52591469ab35dbfe0efcea_float(_Property_8e909eb873a4cd8e9af98a90a84fdde8_Out_0_Texture2D, (_Divide_6a90cebe78e620828de587523daaa7e6_Out_2_Vector4).x, _Property_3539de8c698c2981bb3c088d4ec52201_Out_0_Float, UnityBuildSamplerStateStruct(SamplerState_Linear_Repeat_Aniso8), _TriplanarNM_52e6c67b7de4708f80a463a880607c97, _TriplanarNM_52e6c67b7de4708f80a463a880607c97_XYZ_1_Vector4, _TriplanarNM_52e6c67b7de4708f80a463a880607c97_XZ_2_Vector4, _TriplanarNM_52e6c67b7de4708f80a463a880607c97_YZ_3_Vector4, _TriplanarNM_52e6c67b7de4708f80a463a880607c97_XY_4_Vector4);
|
|
float _Split_79d9d761d63eaa8c97fb3cb7fae0c380_R_1_Float = _TriplanarNM_52e6c67b7de4708f80a463a880607c97_XYZ_1_Vector4[0];
|
|
float _Split_79d9d761d63eaa8c97fb3cb7fae0c380_G_2_Float = _TriplanarNM_52e6c67b7de4708f80a463a880607c97_XYZ_1_Vector4[1];
|
|
float _Split_79d9d761d63eaa8c97fb3cb7fae0c380_B_3_Float = _TriplanarNM_52e6c67b7de4708f80a463a880607c97_XYZ_1_Vector4[2];
|
|
float _Split_79d9d761d63eaa8c97fb3cb7fae0c380_A_4_Float = _TriplanarNM_52e6c67b7de4708f80a463a880607c97_XYZ_1_Vector4[3];
|
|
float _Property_b97916566d1fc587b95e8ec7fe8bd775_Out_0_Float = _BaseMetallic;
|
|
float _Multiply_d0c8d83444dbe38588583551936c7394_Out_2_Float;
|
|
Unity_Multiply_float_float(_Split_79d9d761d63eaa8c97fb3cb7fae0c380_R_1_Float, _Property_b97916566d1fc587b95e8ec7fe8bd775_Out_0_Float, _Multiply_d0c8d83444dbe38588583551936c7394_Out_2_Float);
|
|
float _Property_b187bbc548f3378caa8c964ca81707ca_Out_0_Float = _BaseAORemapMin;
|
|
float _Property_f06b327a4a8a7881a968eb399edf1d5c_Out_0_Float = _BaseAORemapMax;
|
|
float2 _Vector2_e267d722f88ada8da2d7edf8f7c0261d_Out_0_Vector2 = float2(_Property_b187bbc548f3378caa8c964ca81707ca_Out_0_Float, _Property_f06b327a4a8a7881a968eb399edf1d5c_Out_0_Float);
|
|
float _Remap_ad3c26564c54aa8cbb2f81aa114b3b78_Out_3_Float;
|
|
Unity_Remap_float(_Split_79d9d761d63eaa8c97fb3cb7fae0c380_G_2_Float, float2 (0, 1), _Vector2_e267d722f88ada8da2d7edf8f7c0261d_Out_0_Vector2, _Remap_ad3c26564c54aa8cbb2f81aa114b3b78_Out_3_Float);
|
|
float _Property_9a46e81c228dd0858cfdfc248fcb5efd_Out_0_Float = _BaseSmoothnessRemapMin;
|
|
float _Property_4bb3b70a3720ae8ea49e0f195b665d1f_Out_0_Float = _BaseSmoothnessRemapMax;
|
|
float2 _Vector2_6cef82af5d99208da4f2447a8ae60b4b_Out_0_Vector2 = float2(_Property_9a46e81c228dd0858cfdfc248fcb5efd_Out_0_Float, _Property_4bb3b70a3720ae8ea49e0f195b665d1f_Out_0_Float);
|
|
float _Remap_e30adbbf5d116285964ef079df15b895_Out_3_Float;
|
|
Unity_Remap_float(_Split_79d9d761d63eaa8c97fb3cb7fae0c380_A_4_Float, float2 (0, 1), _Vector2_6cef82af5d99208da4f2447a8ae60b4b_Out_0_Vector2, _Remap_e30adbbf5d116285964ef079df15b895_Out_3_Float);
|
|
float _Multiply_794172f65d2acd8981bc0e2ecc71376e_Out_2_Float;
|
|
Unity_Multiply_float_float(_SampleTexture2D_4bd08411faa60c828847f2247f06a809_B_6_Float, 2, _Multiply_794172f65d2acd8981bc0e2ecc71376e_Out_2_Float);
|
|
float _Add_dedefe53d91ea08c81d7a6d9071b0263_Out_2_Float;
|
|
Unity_Add_float(_Multiply_794172f65d2acd8981bc0e2ecc71376e_Out_2_Float, float(-1), _Add_dedefe53d91ea08c81d7a6d9071b0263_Out_2_Float);
|
|
float _Property_039bed9aac95ec8fa510fea3c4904280_Out_0_Float = _DetailSmoothnessScale;
|
|
float _Multiply_eb0a55c9be8cee86b9847c24f0e5be60_Out_2_Float;
|
|
Unity_Multiply_float_float(_Add_dedefe53d91ea08c81d7a6d9071b0263_Out_2_Float, _Property_039bed9aac95ec8fa510fea3c4904280_Out_0_Float, _Multiply_eb0a55c9be8cee86b9847c24f0e5be60_Out_2_Float);
|
|
float _Saturate_ca849f42c1cc238cb8fb1eb04fbfb9dd_Out_1_Float;
|
|
Unity_Saturate_float(_Multiply_eb0a55c9be8cee86b9847c24f0e5be60_Out_2_Float, _Saturate_ca849f42c1cc238cb8fb1eb04fbfb9dd_Out_1_Float);
|
|
float _Absolute_bc7994d4f833e382b37b5718ee583259_Out_1_Float;
|
|
Unity_Absolute_float(_Saturate_ca849f42c1cc238cb8fb1eb04fbfb9dd_Out_1_Float, _Absolute_bc7994d4f833e382b37b5718ee583259_Out_1_Float);
|
|
Bindings_BlendOverlayDetailSmoothness_06e12138dc89c0040b45a57abe520a1a_float _BlendOverlayDetailSmoothness_5a03404db5a34885a089f1aee363667f;
|
|
float _BlendOverlayDetailSmoothness_5a03404db5a34885a089f1aee363667f_SmoothnessOverlay_1_Float;
|
|
SG_BlendOverlayDetailSmoothness_06e12138dc89c0040b45a57abe520a1a_float(_Remap_e30adbbf5d116285964ef079df15b895_Out_3_Float, _Add_dedefe53d91ea08c81d7a6d9071b0263_Out_2_Float, _Absolute_bc7994d4f833e382b37b5718ee583259_Out_1_Float, _BlendOverlayDetailSmoothness_5a03404db5a34885a089f1aee363667f, _BlendOverlayDetailSmoothness_5a03404db5a34885a089f1aee363667f_SmoothnessOverlay_1_Float);
|
|
float _Saturate_3d6c6d852202408cb9b11aac8a566c89_Out_1_Float;
|
|
Unity_Saturate_float(_BlendOverlayDetailSmoothness_5a03404db5a34885a089f1aee363667f_SmoothnessOverlay_1_Float, _Saturate_3d6c6d852202408cb9b11aac8a566c89_Out_1_Float);
|
|
float3 _Vector3_8ed406a0096de4818282676bf24b1a85_Out_0_Vector3 = float3(_Multiply_d0c8d83444dbe38588583551936c7394_Out_2_Float, _Remap_ad3c26564c54aa8cbb2f81aa114b3b78_Out_3_Float, _Saturate_3d6c6d852202408cb9b11aac8a566c89_Out_1_Float);
|
|
float _Split_2ec5937af5023a8295e3858d32b193d5_R_1_Float = _Vector3_8ed406a0096de4818282676bf24b1a85_Out_0_Vector3[0];
|
|
float _Split_2ec5937af5023a8295e3858d32b193d5_G_2_Float = _Vector3_8ed406a0096de4818282676bf24b1a85_Out_0_Vector3[1];
|
|
float _Split_2ec5937af5023a8295e3858d32b193d5_B_3_Float = _Vector3_8ed406a0096de4818282676bf24b1a85_Out_0_Vector3[2];
|
|
float _Split_2ec5937af5023a8295e3858d32b193d5_A_4_Float = 0;
|
|
UnityTexture2D _Property_0f50abb140882d848d9fc7be8e3468dc_Out_0_Texture2D = UnityBuildTexture2DStructNoScale(_ShapeAO);
|
|
float4 _SampleTexture2D_33392602b94694898ec8227a89f13cc9_RGBA_0_Vector4 = SAMPLE_TEXTURE2D(_Property_0f50abb140882d848d9fc7be8e3468dc_Out_0_Texture2D.tex, _Property_0f50abb140882d848d9fc7be8e3468dc_Out_0_Texture2D.samplerstate, _Property_0f50abb140882d848d9fc7be8e3468dc_Out_0_Texture2D.GetTransformedUV(IN.uv0.xy) );
|
|
float _SampleTexture2D_33392602b94694898ec8227a89f13cc9_R_4_Float = _SampleTexture2D_33392602b94694898ec8227a89f13cc9_RGBA_0_Vector4.r;
|
|
float _SampleTexture2D_33392602b94694898ec8227a89f13cc9_G_5_Float = _SampleTexture2D_33392602b94694898ec8227a89f13cc9_RGBA_0_Vector4.g;
|
|
float _SampleTexture2D_33392602b94694898ec8227a89f13cc9_B_6_Float = _SampleTexture2D_33392602b94694898ec8227a89f13cc9_RGBA_0_Vector4.b;
|
|
float _SampleTexture2D_33392602b94694898ec8227a89f13cc9_A_7_Float = _SampleTexture2D_33392602b94694898ec8227a89f13cc9_RGBA_0_Vector4.a;
|
|
float _Property_a51c4b6d05e6718d919aadcf26153350_Out_0_Float = _ShapeAORemapMin;
|
|
float _Property_973fbc42b7a69088b9fc2c502945f369_Out_0_Float = _ShapeAORemapMax;
|
|
float2 _Vector2_a73753c5a8c4fa828d2eb25d4fb8b399_Out_0_Vector2 = float2(_Property_a51c4b6d05e6718d919aadcf26153350_Out_0_Float, _Property_973fbc42b7a69088b9fc2c502945f369_Out_0_Float);
|
|
float _Remap_270e7e207f303487bc04348b1b54db69_Out_3_Float;
|
|
Unity_Remap_float(_SampleTexture2D_33392602b94694898ec8227a89f13cc9_G_5_Float, float2 (0, 1), _Vector2_a73753c5a8c4fa828d2eb25d4fb8b399_Out_0_Vector2, _Remap_270e7e207f303487bc04348b1b54db69_Out_3_Float);
|
|
float _Minimum_307d1a8c4f5c6a87a1bbc658a5811679_Out_2_Float;
|
|
Unity_Minimum_float(_Split_2ec5937af5023a8295e3858d32b193d5_G_2_Float, _Remap_270e7e207f303487bc04348b1b54db69_Out_3_Float, _Minimum_307d1a8c4f5c6a87a1bbc658a5811679_Out_2_Float);
|
|
float3 _Vector3_fac10bf467f5ff82b4f071ba165bf458_Out_0_Vector3 = float3(_Split_2ec5937af5023a8295e3858d32b193d5_R_1_Float, _Minimum_307d1a8c4f5c6a87a1bbc658a5811679_Out_2_Float, _Split_2ec5937af5023a8295e3858d32b193d5_B_3_Float);
|
|
float _Property_fa6937565be49684915e6bb999529949_Out_0_Float = _CoverMetallic;
|
|
float _Multiply_d0ecb787fa289f8f9d3c2988d60f18d3_Out_2_Float;
|
|
Unity_Multiply_float_float(_Split_fe834aed1172f284a73d2d6810bdb696_R_1_Float, _Property_fa6937565be49684915e6bb999529949_Out_0_Float, _Multiply_d0ecb787fa289f8f9d3c2988d60f18d3_Out_2_Float);
|
|
float _Property_8f5ca0ba38d2a4858c1b4e44f6a375b4_Out_0_Float = _CoverAORemapMin;
|
|
float _Property_a15ef0fe46e1d88f9e20df6605bd1499_Out_0_Float = _CoverAORemapMax;
|
|
float2 _Vector2_969d809c2de99f89959cc4526a665db9_Out_0_Vector2 = float2(_Property_8f5ca0ba38d2a4858c1b4e44f6a375b4_Out_0_Float, _Property_a15ef0fe46e1d88f9e20df6605bd1499_Out_0_Float);
|
|
float _Remap_1b6065f44329038594e2d0cf001fa138_Out_3_Float;
|
|
Unity_Remap_float(_Split_fe834aed1172f284a73d2d6810bdb696_G_2_Float, float2 (0, 1), _Vector2_969d809c2de99f89959cc4526a665db9_Out_0_Vector2, _Remap_1b6065f44329038594e2d0cf001fa138_Out_3_Float);
|
|
float _Property_0fde68fd9824db8e9f5b4b0daff90270_Out_0_Float = _CoverSmoothnessRemapMin;
|
|
float _Property_abad1da00caf99869e0c9ca2926c76bd_Out_0_Float = _CoverSmoothnessRemapMax;
|
|
float2 _Vector2_1aa81c2ad7cc268caa834889569ce556_Out_0_Vector2 = float2(_Property_0fde68fd9824db8e9f5b4b0daff90270_Out_0_Float, _Property_abad1da00caf99869e0c9ca2926c76bd_Out_0_Float);
|
|
float _Remap_4948cd1fb38399888e9567ee2abb8acd_Out_3_Float;
|
|
Unity_Remap_float(_Split_fe834aed1172f284a73d2d6810bdb696_A_4_Float, float2 (0, 1), _Vector2_1aa81c2ad7cc268caa834889569ce556_Out_0_Vector2, _Remap_4948cd1fb38399888e9567ee2abb8acd_Out_3_Float);
|
|
float _Multiply_d3e207dba42f1984aacff3c1bf4eef0b_Out_2_Float;
|
|
Unity_Multiply_float_float(_SampleTexture2D_4bd08411faa60c828847f2247f06a809_B_6_Float, 2, _Multiply_d3e207dba42f1984aacff3c1bf4eef0b_Out_2_Float);
|
|
float _Add_0299d632f81fff8f969a0eed5f77397c_Out_2_Float;
|
|
Unity_Add_float(_Multiply_d3e207dba42f1984aacff3c1bf4eef0b_Out_2_Float, float(-1), _Add_0299d632f81fff8f969a0eed5f77397c_Out_2_Float);
|
|
float _Property_a2c7556e96b60b8e90cb5145ca6f9dde_Out_0_Float = _DetailCoverSmoothnessScale;
|
|
float _Multiply_d340fbee0985958dbb66555a73bd733c_Out_2_Float;
|
|
Unity_Multiply_float_float(_Add_0299d632f81fff8f969a0eed5f77397c_Out_2_Float, _Property_a2c7556e96b60b8e90cb5145ca6f9dde_Out_0_Float, _Multiply_d340fbee0985958dbb66555a73bd733c_Out_2_Float);
|
|
float _Saturate_2c0cc920be0ca88e937ec108b38f5fde_Out_1_Float;
|
|
Unity_Saturate_float(_Multiply_d340fbee0985958dbb66555a73bd733c_Out_2_Float, _Saturate_2c0cc920be0ca88e937ec108b38f5fde_Out_1_Float);
|
|
float _Absolute_3f81290e941e378283f7151c4a0731e2_Out_1_Float;
|
|
Unity_Absolute_float(_Saturate_2c0cc920be0ca88e937ec108b38f5fde_Out_1_Float, _Absolute_3f81290e941e378283f7151c4a0731e2_Out_1_Float);
|
|
Bindings_BlendOverlayDetailSmoothness_06e12138dc89c0040b45a57abe520a1a_float _BlendOverlayDetailSmoothness_e7a4fbe98378f084bd09f6e5d90e1cb8;
|
|
float _BlendOverlayDetailSmoothness_e7a4fbe98378f084bd09f6e5d90e1cb8_SmoothnessOverlay_1_Float;
|
|
SG_BlendOverlayDetailSmoothness_06e12138dc89c0040b45a57abe520a1a_float(_Remap_4948cd1fb38399888e9567ee2abb8acd_Out_3_Float, _Add_0299d632f81fff8f969a0eed5f77397c_Out_2_Float, _Absolute_3f81290e941e378283f7151c4a0731e2_Out_1_Float, _BlendOverlayDetailSmoothness_e7a4fbe98378f084bd09f6e5d90e1cb8, _BlendOverlayDetailSmoothness_e7a4fbe98378f084bd09f6e5d90e1cb8_SmoothnessOverlay_1_Float);
|
|
float _Saturate_9091ea9d9924c682ad6b94d3322ee822_Out_1_Float;
|
|
Unity_Saturate_float(_BlendOverlayDetailSmoothness_e7a4fbe98378f084bd09f6e5d90e1cb8_SmoothnessOverlay_1_Float, _Saturate_9091ea9d9924c682ad6b94d3322ee822_Out_1_Float);
|
|
float3 _Vector3_93bafe600474e7819ebc13e534b986bf_Out_0_Vector3 = float3(_Multiply_d0ecb787fa289f8f9d3c2988d60f18d3_Out_2_Float, _Remap_1b6065f44329038594e2d0cf001fa138_Out_3_Float, _Saturate_9091ea9d9924c682ad6b94d3322ee822_Out_1_Float);
|
|
float _Split_6ec9cc5e56f3f68ba37ff91557979c18_R_1_Float = _Vector3_93bafe600474e7819ebc13e534b986bf_Out_0_Vector3[0];
|
|
float _Split_6ec9cc5e56f3f68ba37ff91557979c18_G_2_Float = _Vector3_93bafe600474e7819ebc13e534b986bf_Out_0_Vector3[1];
|
|
float _Split_6ec9cc5e56f3f68ba37ff91557979c18_B_3_Float = _Vector3_93bafe600474e7819ebc13e534b986bf_Out_0_Vector3[2];
|
|
float _Split_6ec9cc5e56f3f68ba37ff91557979c18_A_4_Float = 0;
|
|
float _Property_ca9c61425ece6b8c909c06b1e2738f1a_Out_0_Float = _CoverShapeAORemapMin;
|
|
float _Property_b9be92f1612c908d80643f0e96015b33_Out_0_Float = _CoverShapeAORemapMax;
|
|
float2 _Vector2_9b862c4e147d1082afad3606339d2130_Out_0_Vector2 = float2(_Property_ca9c61425ece6b8c909c06b1e2738f1a_Out_0_Float, _Property_b9be92f1612c908d80643f0e96015b33_Out_0_Float);
|
|
float _Remap_c1f0022add809b83bad7b493177bddb7_Out_3_Float;
|
|
Unity_Remap_float(_SampleTexture2D_33392602b94694898ec8227a89f13cc9_G_5_Float, float2 (0, 1), _Vector2_9b862c4e147d1082afad3606339d2130_Out_0_Vector2, _Remap_c1f0022add809b83bad7b493177bddb7_Out_3_Float);
|
|
float _Minimum_595c2f31bb0ec588977a2b9ea46bf6b0_Out_2_Float;
|
|
Unity_Minimum_float(_Split_6ec9cc5e56f3f68ba37ff91557979c18_G_2_Float, _Remap_c1f0022add809b83bad7b493177bddb7_Out_3_Float, _Minimum_595c2f31bb0ec588977a2b9ea46bf6b0_Out_2_Float);
|
|
float3 _Vector3_6cb5b2c4675bb28cb41ea88b6eaa2aff_Out_0_Vector3 = float3(_Split_6ec9cc5e56f3f68ba37ff91557979c18_R_1_Float, _Minimum_595c2f31bb0ec588977a2b9ea46bf6b0_Out_2_Float, _Split_6ec9cc5e56f3f68ba37ff91557979c18_B_3_Float);
|
|
float3 _Lerp_fa40b54f3d5a1a8a95f6306e837b9338_Out_3_Vector3;
|
|
Unity_Lerp_float3(_Vector3_fac10bf467f5ff82b4f071ba165bf458_Out_0_Vector3, _Vector3_6cb5b2c4675bb28cb41ea88b6eaa2aff_Out_0_Vector3, (_Branch_3ccf365d359214809d30b6430d863e3f_Out_3_Float.xxx), _Lerp_fa40b54f3d5a1a8a95f6306e837b9338_Out_3_Vector3);
|
|
float _Split_c4a5352a58a4f88fb40410f956825dc6_R_1_Float = _Lerp_fa40b54f3d5a1a8a95f6306e837b9338_Out_3_Vector3[0];
|
|
float _Split_c4a5352a58a4f88fb40410f956825dc6_G_2_Float = _Lerp_fa40b54f3d5a1a8a95f6306e837b9338_Out_3_Vector3[1];
|
|
float _Split_c4a5352a58a4f88fb40410f956825dc6_B_3_Float = _Lerp_fa40b54f3d5a1a8a95f6306e837b9338_Out_3_Vector3[2];
|
|
float _Split_c4a5352a58a4f88fb40410f956825dc6_A_4_Float = 0;
|
|
float _Property_7861e880056eb88ab923a2ff5b12179d_Out_0_Float = _WetSmoothness;
|
|
float _OneMinus_e16dfb812ec64b8891c541171687142f_Out_1_Float;
|
|
Unity_OneMinus_float(_Split_2ada595651635e8d97bf4b82f717fcc6_R_1_Float, _OneMinus_e16dfb812ec64b8891c541171687142f_Out_1_Float);
|
|
float _Lerp_ee63160826cff4869f0e63568dd6f8b7_Out_3_Float;
|
|
Unity_Lerp_float(_Split_c4a5352a58a4f88fb40410f956825dc6_B_3_Float, _Property_7861e880056eb88ab923a2ff5b12179d_Out_0_Float, _OneMinus_e16dfb812ec64b8891c541171687142f_Out_1_Float, _Lerp_ee63160826cff4869f0e63568dd6f8b7_Out_3_Float);
|
|
surface.Alpha = float(1);
|
|
surface.NormalTS = _Lerp_48cd568fef7d358b8d65b989db745e6c_Out_3_Vector3;
|
|
surface.Smoothness = _Lerp_ee63160826cff4869f0e63568dd6f8b7_Out_3_Float;
|
|
return surface;
|
|
}
|
|
|
|
// --------------------------------------------------
|
|
// Build Graph Inputs
|
|
#ifdef HAVE_VFX_MODIFICATION
|
|
#define VFX_SRP_ATTRIBUTES AttributesMesh
|
|
#define VaryingsMeshType VaryingsMeshToPS
|
|
#define VFX_SRP_VARYINGS VaryingsMeshType
|
|
#define VFX_SRP_SURFACE_INPUTS FragInputs
|
|
#endif
|
|
|
|
VertexDescriptionInputs AttributesMeshToVertexDescriptionInputs(AttributesMesh input)
|
|
{
|
|
VertexDescriptionInputs output;
|
|
ZERO_INITIALIZE(VertexDescriptionInputs, output);
|
|
|
|
output.ObjectSpaceNormal = input.normalOS;
|
|
output.ObjectSpaceTangent = input.tangentOS.xyz;
|
|
output.ObjectSpacePosition = input.positionOS;
|
|
#if UNITY_ANY_INSTANCING_ENABLED
|
|
#else
|
|
#endif
|
|
|
|
return output;
|
|
}
|
|
|
|
VertexDescription GetVertexDescription(AttributesMesh input, float3 timeParameters
|
|
#ifdef HAVE_VFX_MODIFICATION
|
|
, AttributesElement element
|
|
#endif
|
|
)
|
|
{
|
|
// build graph inputs
|
|
VertexDescriptionInputs vertexDescriptionInputs = AttributesMeshToVertexDescriptionInputs(input);
|
|
// Override time parameters with used one (This is required to correctly handle motion vectors for vertex animation based on time)
|
|
|
|
// evaluate vertex graph
|
|
#ifdef HAVE_VFX_MODIFICATION
|
|
GraphProperties properties;
|
|
ZERO_INITIALIZE(GraphProperties, properties);
|
|
|
|
// Fetch the vertex graph properties for the particle instance.
|
|
GetElementVertexProperties(element, properties);
|
|
|
|
VertexDescription vertexDescription = VertexDescriptionFunction(vertexDescriptionInputs, properties);
|
|
#else
|
|
VertexDescription vertexDescription = VertexDescriptionFunction(vertexDescriptionInputs);
|
|
#endif
|
|
return vertexDescription;
|
|
|
|
}
|
|
|
|
AttributesMesh ApplyMeshModification(AttributesMesh input, float3 timeParameters
|
|
#ifdef USE_CUSTOMINTERP_SUBSTRUCT
|
|
#ifdef TESSELLATION_ON
|
|
, inout VaryingsMeshToDS varyings
|
|
#else
|
|
, inout VaryingsMeshToPS varyings
|
|
#endif
|
|
#endif
|
|
#ifdef HAVE_VFX_MODIFICATION
|
|
, AttributesElement element
|
|
#endif
|
|
)
|
|
{
|
|
VertexDescription vertexDescription = GetVertexDescription(input, timeParameters
|
|
#ifdef HAVE_VFX_MODIFICATION
|
|
, element
|
|
#endif
|
|
);
|
|
|
|
// copy graph output to the results
|
|
input.positionOS = vertexDescription.Position;
|
|
input.normalOS = vertexDescription.Normal;
|
|
input.tangentOS.xyz = vertexDescription.Tangent;
|
|
|
|
|
|
|
|
return input;
|
|
}
|
|
|
|
#if defined(_ADD_CUSTOM_VELOCITY) // For shader graph custom velocity
|
|
// Return precomputed Velocity in object space
|
|
float3 GetCustomVelocity(AttributesMesh input
|
|
#ifdef HAVE_VFX_MODIFICATION
|
|
, AttributesElement element
|
|
#endif
|
|
)
|
|
{
|
|
VertexDescription vertexDescription = GetVertexDescription(input, _TimeParameters.xyz
|
|
#ifdef HAVE_VFX_MODIFICATION
|
|
, element
|
|
#endif
|
|
);
|
|
return vertexDescription.CustomVelocity;
|
|
}
|
|
#endif
|
|
|
|
FragInputs BuildFragInputs(VaryingsMeshToPS input)
|
|
{
|
|
FragInputs output;
|
|
ZERO_INITIALIZE(FragInputs, output);
|
|
|
|
// Init to some default value to make the computer quiet (else it output 'divide by zero' warning even if value is not used).
|
|
// TODO: this is a really poor workaround, but the variable is used in a bunch of places
|
|
// to compute normals which are then passed on elsewhere to compute other values...
|
|
output.tangentToWorld = k_identity3x3;
|
|
output.positionSS = input.positionCS; // input.positionCS is SV_Position
|
|
|
|
output.positionRWS = input.positionRWS;
|
|
output.tangentToWorld = BuildTangentToWorld(input.tangentWS, input.normalWS);
|
|
output.texCoord0 = input.texCoord0;
|
|
output.color = input.color;
|
|
|
|
#if UNITY_ANY_INSTANCING_ENABLED
|
|
#else
|
|
#endif
|
|
|
|
#ifdef HAVE_VFX_MODIFICATION
|
|
// FragInputs from VFX come from two places: Interpolator or CBuffer.
|
|
#if VFX_USE_GRAPH_VALUES
|
|
uint instanceActiveIndex = asuint(UNITY_ACCESS_INSTANCED_PROP(PerInstance, _InstanceActiveIndex));
|
|
/* WARNING: $splice Could not find named fragment 'VFXLoadGraphValues' */
|
|
#endif
|
|
|
|
/* WARNING: $splice Could not find named fragment 'VFXSetFragInputs' */
|
|
|
|
#endif
|
|
|
|
// splice point to copy custom interpolator fields from varyings to frag inputs
|
|
|
|
|
|
return output;
|
|
}
|
|
|
|
// existing HDRP code uses the combined function to go directly from packed to frag inputs
|
|
FragInputs UnpackVaryingsMeshToFragInputs(PackedVaryingsMeshToPS input)
|
|
{
|
|
UNITY_SETUP_INSTANCE_ID(input);
|
|
#if defined(HAVE_VFX_MODIFICATION) && defined(UNITY_INSTANCING_ENABLED)
|
|
unity_InstanceID = input.instanceID;
|
|
#endif
|
|
VaryingsMeshToPS unpacked = UnpackVaryingsMeshToPS(input);
|
|
return BuildFragInputs(unpacked);
|
|
}
|
|
SurfaceDescriptionInputs FragInputsToSurfaceDescriptionInputs(FragInputs input, float3 viewWS)
|
|
{
|
|
SurfaceDescriptionInputs output;
|
|
ZERO_INITIALIZE(SurfaceDescriptionInputs, output);
|
|
|
|
output.WorldSpaceNormal = normalize(input.tangentToWorld[2].xyz);
|
|
#if defined(SHADER_STAGE_RAY_TRACING)
|
|
#else
|
|
#endif
|
|
output.TangentSpaceNormal = float3(0.0f, 0.0f, 1.0f);
|
|
output.WorldSpaceTangent = input.tangentToWorld[0].xyz;
|
|
output.WorldSpaceBiTangent = input.tangentToWorld[1].xyz;
|
|
output.AbsoluteWorldSpacePosition = GetAbsolutePositionWS(input.positionRWS);
|
|
|
|
#if UNITY_UV_STARTS_AT_TOP
|
|
#else
|
|
#endif
|
|
|
|
|
|
output.uv0 = input.texCoord0;
|
|
output.VertexColor = input.color;
|
|
|
|
// splice point to copy frag inputs custom interpolator pack into the SDI
|
|
|
|
|
|
return output;
|
|
}
|
|
|
|
// --------------------------------------------------
|
|
// Build Surface Data (Specific Material)
|
|
|
|
void ApplyDecalToSurfaceDataNoNormal(DecalSurfaceData decalSurfaceData, inout SurfaceData surfaceData);
|
|
|
|
void ApplyDecalAndGetNormal(FragInputs fragInputs, PositionInputs posInput, SurfaceDescription surfaceDescription,
|
|
inout SurfaceData surfaceData)
|
|
{
|
|
float3 doubleSidedConstants = GetDoubleSidedConstants();
|
|
|
|
#ifdef DECAL_NORMAL_BLENDING
|
|
// SG nodes don't ouptut surface gradients, so if decals require surf grad blending, we have to convert
|
|
// the normal to gradient before applying the decal. We then have to resolve the gradient back to world space
|
|
float3 normalTS;
|
|
|
|
normalTS = SurfaceGradientFromTangentSpaceNormalAndFromTBN(surfaceDescription.NormalTS,
|
|
fragInputs.tangentToWorld[0], fragInputs.tangentToWorld[1]);
|
|
|
|
|
|
#if HAVE_DECALS
|
|
if (_EnableDecals)
|
|
{
|
|
float alpha = 1.0;
|
|
alpha = surfaceDescription.Alpha;
|
|
|
|
DecalSurfaceData decalSurfaceData = GetDecalSurfaceData(posInput, fragInputs, alpha);
|
|
ApplyDecalToSurfaceNormal(decalSurfaceData, fragInputs.tangentToWorld[2], normalTS);
|
|
ApplyDecalToSurfaceDataNoNormal(decalSurfaceData, surfaceData);
|
|
}
|
|
#endif
|
|
|
|
GetNormalWS_SG(fragInputs, normalTS, surfaceData.normalWS, doubleSidedConstants);
|
|
#else
|
|
// normal delivered to master node
|
|
GetNormalWS(fragInputs, surfaceDescription.NormalTS, surfaceData.normalWS, doubleSidedConstants);
|
|
|
|
#if HAVE_DECALS
|
|
if (_EnableDecals)
|
|
{
|
|
float alpha = 1.0;
|
|
alpha = surfaceDescription.Alpha;
|
|
|
|
// Both uses and modifies 'surfaceData.normalWS'.
|
|
DecalSurfaceData decalSurfaceData = GetDecalSurfaceData(posInput, fragInputs, alpha);
|
|
ApplyDecalToSurfaceNormal(decalSurfaceData, surfaceData.normalWS.xyz);
|
|
ApplyDecalToSurfaceDataNoNormal(decalSurfaceData, surfaceData);
|
|
}
|
|
#endif
|
|
#endif
|
|
}
|
|
void BuildSurfaceData(FragInputs fragInputs, inout SurfaceDescription surfaceDescription, float3 V, PositionInputs posInput, out SurfaceData surfaceData, out float3 bentNormalWS)
|
|
{
|
|
ZERO_INITIALIZE(SurfaceData, surfaceData);
|
|
|
|
// specularOcclusion need to be init ahead of decal to quiet the compiler that modify the SurfaceData struct
|
|
// however specularOcclusion can come from the graph, so need to be init here so it can be override.
|
|
surfaceData.specularOcclusion = 1.0;
|
|
surfaceData.thickness = 0.0;
|
|
|
|
surfaceData.perceptualSmoothness = surfaceDescription.Smoothness;
|
|
|
|
#if defined(_REFRACTION_PLANE) || defined(_REFRACTION_SPHERE) || defined(_REFRACTION_THIN)
|
|
if (_EnableSSRefraction)
|
|
{
|
|
|
|
surfaceData.transmittanceMask = (1.0 - surfaceDescription.Alpha);
|
|
surfaceDescription.Alpha = 1.0;
|
|
}
|
|
else
|
|
{
|
|
surfaceData.ior = 1.0;
|
|
surfaceData.transmittanceColor = float3(1.0, 1.0, 1.0);
|
|
surfaceData.atDistance = 1.0;
|
|
surfaceData.transmittanceMask = 0.0;
|
|
surfaceDescription.Alpha = 1.0;
|
|
}
|
|
#else
|
|
surfaceData.ior = 1.0;
|
|
surfaceData.transmittanceColor = float3(1.0, 1.0, 1.0);
|
|
surfaceData.atDistance = 1.0;
|
|
surfaceData.transmittanceMask = 0.0;
|
|
#endif
|
|
|
|
// These static material feature allow compile time optimization
|
|
surfaceData.materialFeatures = MATERIALFEATUREFLAGS_LIT_STANDARD;
|
|
#ifdef _MATERIAL_FEATURE_SUBSURFACE_SCATTERING
|
|
surfaceData.materialFeatures |= MATERIALFEATUREFLAGS_LIT_SUBSURFACE_SCATTERING;
|
|
#endif
|
|
|
|
#ifdef _MATERIAL_FEATURE_TRANSMISSION
|
|
surfaceData.materialFeatures |= MATERIALFEATUREFLAGS_LIT_TRANSMISSION;
|
|
#endif
|
|
|
|
#ifdef _MATERIAL_FEATURE_COLORED_TRANSMISSION
|
|
surfaceData.materialFeatures |= MATERIALFEATUREFLAGS_LIT_TRANSMISSION;
|
|
surfaceData.materialFeatures |= MATERIALFEATUREFLAGS_LIT_COLORED_TRANSMISSION;
|
|
|
|
#endif
|
|
|
|
#ifdef _MATERIAL_FEATURE_ANISOTROPY
|
|
surfaceData.materialFeatures |= MATERIALFEATUREFLAGS_LIT_ANISOTROPY;
|
|
|
|
// Initialize the normal to something non-zero to avoid a div-zero warning for anisotropy.
|
|
surfaceData.normalWS = float3(0, 1, 0);
|
|
#endif
|
|
|
|
#ifdef _MATERIAL_FEATURE_IRIDESCENCE
|
|
surfaceData.materialFeatures |= MATERIALFEATUREFLAGS_LIT_IRIDESCENCE;
|
|
#endif
|
|
|
|
#ifdef _MATERIAL_FEATURE_SPECULAR_COLOR
|
|
surfaceData.materialFeatures |= MATERIALFEATUREFLAGS_LIT_SPECULAR_COLOR;
|
|
#endif
|
|
|
|
#ifdef _MATERIAL_FEATURE_CLEAR_COAT
|
|
surfaceData.materialFeatures |= MATERIALFEATUREFLAGS_LIT_CLEAR_COAT;
|
|
#endif
|
|
|
|
#if defined (_MATERIAL_FEATURE_SPECULAR_COLOR) && defined (_ENERGY_CONSERVING_SPECULAR)
|
|
// Require to have setup baseColor
|
|
// Reproduce the energy conservation done in legacy Unity. Not ideal but better for compatibility and users can unchek it
|
|
surfaceData.baseColor *= (1.0 - Max3(surfaceData.specularColor.r, surfaceData.specularColor.g, surfaceData.specularColor.b));
|
|
#endif
|
|
|
|
float3 doubleSidedConstants = GetDoubleSidedConstants();
|
|
|
|
ApplyDecalAndGetNormal(fragInputs, posInput, surfaceDescription, surfaceData);
|
|
|
|
surfaceData.geomNormalWS = fragInputs.tangentToWorld[2];
|
|
|
|
surfaceData.tangentWS = normalize(fragInputs.tangentToWorld[0].xyz); // The tangent is not normalize in tangentToWorld for mikkt. TODO: Check if it expected that we normalize with Morten. Tag: SURFACE_GRADIENT
|
|
|
|
|
|
bentNormalWS = surfaceData.normalWS;
|
|
|
|
surfaceData.tangentWS = Orthonormalize(surfaceData.tangentWS, surfaceData.normalWS);
|
|
|
|
#ifdef DEBUG_DISPLAY
|
|
#if !defined(SHADER_STAGE_RAY_TRACING)
|
|
// Mipmap mode debugging isn't supported with ray tracing as it relies on derivatives
|
|
if (_DebugMipMapMode != DEBUGMIPMAPMODE_NONE)
|
|
{
|
|
#ifdef FRAG_INPUTS_USE_TEXCOORD0
|
|
surfaceData.baseColor = GET_TEXTURE_STREAMING_DEBUG(posInput.positionSS, fragInputs.texCoord0);
|
|
#else
|
|
surfaceData.baseColor = GET_TEXTURE_STREAMING_DEBUG_NO_UV(posInput.positionSS);
|
|
#endif
|
|
surfaceData.metallic = 0;
|
|
}
|
|
#endif
|
|
|
|
// We need to call ApplyDebugToSurfaceData after filling the surfaceData and before filling builtinData
|
|
// as it can modify attribute use for static lighting
|
|
ApplyDebugToSurfaceData(fragInputs.tangentToWorld, surfaceData);
|
|
#endif
|
|
|
|
// By default we use the ambient occlusion with Tri-ace trick (apply outside) for specular occlusion.
|
|
// If user provide bent normal then we process a better term
|
|
#if defined(_SPECULAR_OCCLUSION_CUSTOM)
|
|
// Just use the value passed through via the slot (not active otherwise)
|
|
#elif defined(_SPECULAR_OCCLUSION_FROM_AO_BENT_NORMAL)
|
|
// If we have bent normal and ambient occlusion, process a specular occlusion
|
|
surfaceData.specularOcclusion = GetSpecularOcclusionFromBentAO(V, bentNormalWS, surfaceData.normalWS, surfaceData.ambientOcclusion, PerceptualSmoothnessToPerceptualRoughness(surfaceData.perceptualSmoothness));
|
|
#elif defined(_AMBIENT_OCCLUSION) && defined(_SPECULAR_OCCLUSION_FROM_AO)
|
|
surfaceData.specularOcclusion = GetSpecularOcclusionFromAmbientOcclusion(ClampNdotV(dot(surfaceData.normalWS, V)), surfaceData.ambientOcclusion, PerceptualSmoothnessToRoughness(surfaceData.perceptualSmoothness));
|
|
#endif
|
|
|
|
#if defined(_ENABLE_GEOMETRIC_SPECULAR_AA) && !defined(SHADER_STAGE_RAY_TRACING)
|
|
surfaceData.perceptualSmoothness = GeometricNormalFiltering(surfaceData.perceptualSmoothness, fragInputs.tangentToWorld[2], surfaceDescription.SpecularAAScreenSpaceVariance, surfaceDescription.SpecularAAThreshold);
|
|
#endif
|
|
}
|
|
|
|
// --------------------------------------------------
|
|
// Get Surface And BuiltinData
|
|
|
|
void GetSurfaceAndBuiltinData(FragInputs fragInputs, float3 V, inout PositionInputs posInput, out SurfaceData surfaceData, out BuiltinData builtinData RAY_TRACING_OPTIONAL_PARAMETERS)
|
|
{
|
|
// Don't dither if displaced tessellation (we're fading out the displacement instead to match the next LOD)
|
|
#if !defined(SHADER_STAGE_RAY_TRACING) && !defined(_TESSELLATION_DISPLACEMENT)
|
|
#ifdef LOD_FADE_CROSSFADE // enable dithering LOD transition if user select CrossFade transition in LOD group
|
|
LODDitheringTransition(ComputeFadeMaskSeed(V, posInput.positionSS), unity_LODFade.x);
|
|
#endif
|
|
#endif
|
|
|
|
#ifndef SHADER_UNLIT
|
|
#ifdef _DOUBLESIDED_ON
|
|
float3 doubleSidedConstants = _DoubleSidedConstants.xyz;
|
|
#else
|
|
float3 doubleSidedConstants = float3(1.0, 1.0, 1.0);
|
|
#endif
|
|
|
|
ApplyDoubleSidedFlipOrMirror(fragInputs, doubleSidedConstants); // Apply double sided flip on the vertex normal
|
|
#endif // SHADER_UNLIT
|
|
|
|
SurfaceDescriptionInputs surfaceDescriptionInputs = FragInputsToSurfaceDescriptionInputs(fragInputs, V);
|
|
|
|
#if defined(HAVE_VFX_MODIFICATION)
|
|
GraphProperties properties;
|
|
ZERO_INITIALIZE(GraphProperties, properties);
|
|
|
|
GetElementPixelProperties(fragInputs, properties);
|
|
|
|
SurfaceDescription surfaceDescription = SurfaceDescriptionFunction(surfaceDescriptionInputs, properties);
|
|
#else
|
|
SurfaceDescription surfaceDescription = SurfaceDescriptionFunction(surfaceDescriptionInputs);
|
|
#endif
|
|
|
|
#ifdef DEBUG_DISPLAY
|
|
if (_DebugMipMapMode != DEBUGMIPMAPMODE_NONE)
|
|
{
|
|
surfaceDescription.Alpha = 1.0f;
|
|
}
|
|
#endif
|
|
|
|
// Perform alpha test very early to save performance (a killed pixel will not sample textures)
|
|
// TODO: split graph evaluation to grab just alpha dependencies first? tricky..
|
|
#ifdef _ALPHATEST_ON
|
|
float alphaCutoff = surfaceDescription.AlphaClipThreshold;
|
|
#if SHADERPASS == SHADERPASS_TRANSPARENT_DEPTH_PREPASS
|
|
// The TransparentDepthPrepass is also used with SSR transparent.
|
|
// If an artists enable transaprent SSR but not the TransparentDepthPrepass itself, then we use AlphaClipThreshold
|
|
// otherwise if TransparentDepthPrepass is enabled we use AlphaClipThresholdDepthPrepass
|
|
#elif SHADERPASS == SHADERPASS_TRANSPARENT_DEPTH_POSTPASS
|
|
// DepthPostpass always use its own alpha threshold
|
|
alphaCutoff = surfaceDescription.AlphaClipThresholdDepthPostpass;
|
|
#elif (SHADERPASS == SHADERPASS_SHADOWS) || (SHADERPASS == SHADERPASS_RAYTRACING_VISIBILITY)
|
|
// If use shadow threshold isn't enable we don't allow any test
|
|
#endif
|
|
|
|
GENERIC_ALPHA_TEST(surfaceDescription.Alpha, alphaCutoff);
|
|
#endif
|
|
|
|
#if !defined(SHADER_STAGE_RAY_TRACING) && _DEPTHOFFSET_ON
|
|
ApplyDepthOffsetPositionInput(V, surfaceDescription.DepthOffset, GetViewForwardDir(), GetWorldToHClipMatrix(), posInput);
|
|
#endif
|
|
|
|
#ifndef SHADER_UNLIT
|
|
float3 bentNormalWS;
|
|
BuildSurfaceData(fragInputs, surfaceDescription, V, posInput, surfaceData, bentNormalWS);
|
|
|
|
#ifdef FRAG_INPUTS_USE_TEXCOORD1
|
|
float4 lightmapTexCoord1 = fragInputs.texCoord1;
|
|
#else
|
|
float4 lightmapTexCoord1 = float4(0,0,0,0);
|
|
#endif
|
|
|
|
#ifdef FRAG_INPUTS_USE_TEXCOORD2
|
|
float4 lightmapTexCoord2 = fragInputs.texCoord2;
|
|
#else
|
|
float4 lightmapTexCoord2 = float4(0,0,0,0);
|
|
#endif
|
|
|
|
float alpha = 1.0;
|
|
alpha = surfaceDescription.Alpha;
|
|
|
|
// Builtin Data
|
|
// For back lighting we use the oposite vertex normal
|
|
InitBuiltinData(posInput, alpha, bentNormalWS, -fragInputs.tangentToWorld[2], lightmapTexCoord1, lightmapTexCoord2, builtinData);
|
|
|
|
#else
|
|
BuildSurfaceData(fragInputs, surfaceDescription, V, posInput, surfaceData);
|
|
|
|
ZERO_BUILTIN_INITIALIZE(builtinData); // No call to InitBuiltinData as we don't have any lighting
|
|
builtinData.opacity = surfaceDescription.Alpha;
|
|
|
|
#if defined(DEBUG_DISPLAY)
|
|
// Light Layers are currently not used for the Unlit shader (because it is not lit)
|
|
// But Unlit objects do cast shadows according to their rendering layer mask, which is what we want to
|
|
// display in the light layers visualization mode, therefore we need the renderingLayers
|
|
builtinData.renderingLayers = GetMeshRenderingLayerMask();
|
|
#endif
|
|
|
|
#endif // SHADER_UNLIT
|
|
|
|
#ifdef _ALPHATEST_ON
|
|
// Used for sharpening by alpha to mask - Alpha to covertage is only used with depth only and forward pass (no shadow pass, no transparent pass)
|
|
builtinData.alphaClipTreshold = alphaCutoff;
|
|
#endif
|
|
|
|
// override sampleBakedGI - not used by Unlit
|
|
// When overriding GI, we need to force the isLightmap flag to make sure we don't add APV (sampled in the lightloop) on top of the overridden value (set at GBuffer stage)
|
|
|
|
|
|
// Note this will not fully work on transparent surfaces (can check with _SURFACE_TYPE_TRANSPARENT define)
|
|
// We will always overwrite vt feeback with the nearest. So behind transparent surfaces vt will not be resolved
|
|
// This is a limitation of the current MRT approach.
|
|
#ifdef UNITY_VIRTUAL_TEXTURING
|
|
#endif
|
|
|
|
#if _DEPTHOFFSET_ON
|
|
builtinData.depthOffset = surfaceDescription.DepthOffset;
|
|
#endif
|
|
|
|
// TODO: We should generate distortion / distortionBlur for non distortion pass
|
|
#if (SHADERPASS == SHADERPASS_DISTORTION)
|
|
builtinData.distortion = surfaceDescription.Distortion;
|
|
builtinData.distortionBlur = surfaceDescription.DistortionBlur;
|
|
#endif
|
|
|
|
#ifndef SHADER_UNLIT
|
|
// PostInitBuiltinData call ApplyDebugToBuiltinData
|
|
PostInitBuiltinData(V, posInput, surfaceData, builtinData);
|
|
#else
|
|
ApplyDebugToBuiltinData(builtinData);
|
|
#endif
|
|
|
|
RAY_TRACING_OPTIONAL_ALPHA_TEST_PASS
|
|
}
|
|
|
|
// --------------------------------------------------
|
|
// Main
|
|
|
|
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/RenderPipeline/ShaderPass/ShaderPassDepthOnly.hlsl"
|
|
|
|
// --------------------------------------------------
|
|
// Visual Effect Vertex Invocations
|
|
|
|
#ifdef HAVE_VFX_MODIFICATION
|
|
#if !defined(SHADER_STAGE_RAY_TRACING)
|
|
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/ShaderLibrary/VisualEffectVertex.hlsl"
|
|
#else
|
|
#endif
|
|
#endif
|
|
|
|
ENDHLSL
|
|
}
|
|
Pass
|
|
{
|
|
Name "FullScreenDebug"
|
|
Tags
|
|
{
|
|
"LightMode" = "FullScreenDebug"
|
|
}
|
|
|
|
// Render State
|
|
Cull [_CullMode]
|
|
ZTest LEqual
|
|
ZWrite Off
|
|
|
|
// Debug
|
|
// <None>
|
|
|
|
// --------------------------------------------------
|
|
// Pass
|
|
|
|
HLSLPROGRAM
|
|
|
|
// Pragmas
|
|
#pragma multi_compile _ DOTS_INSTANCING_ON
|
|
#pragma instancing_options renderinglayer
|
|
#pragma target 4.5
|
|
#pragma vertex Vert
|
|
#pragma fragment Frag
|
|
#pragma only_renderers d3d11 playstation xboxone xboxseries vulkan metal switch
|
|
#pragma multi_compile_instancing
|
|
|
|
// Keywords
|
|
#pragma shader_feature _ _SURFACE_TYPE_TRANSPARENT
|
|
#pragma shader_feature_local _ _DOUBLESIDED_ON
|
|
#pragma shader_feature_local _ _ADD_PRECOMPUTED_VELOCITY
|
|
#pragma shader_feature_local _ _TRANSPARENT_WRITES_MOTION_VEC _TRANSPARENT_REFRACTIVE_SORT
|
|
#pragma shader_feature_local_fragment _ _ENABLE_FOG_ON_TRANSPARENT
|
|
#pragma multi_compile _ LOD_FADE_CROSSFADE
|
|
#pragma shader_feature_local_fragment _ _DISABLE_DECALS
|
|
#pragma shader_feature_local_raytracing _ _DISABLE_DECALS
|
|
#pragma shader_feature_local_fragment _ _DISABLE_SSR
|
|
#pragma shader_feature_local_raytracing _ _DISABLE_SSR
|
|
#pragma shader_feature_local_fragment _ _DISABLE_SSR_TRANSPARENT
|
|
#pragma shader_feature_local_raytracing _ _DISABLE_SSR_TRANSPARENT
|
|
#pragma shader_feature_local _ _REFRACTION_PLANE _REFRACTION_SPHERE _REFRACTION_THIN
|
|
#pragma shader_feature_local_fragment _MATERIAL_FEATURE_SUBSURFACE_SCATTERING
|
|
#pragma shader_feature_local_raytracing _MATERIAL_FEATURE_SUBSURFACE_SCATTERING
|
|
#pragma shader_feature_local_fragment _MATERIAL_FEATURE_TRANSMISSION
|
|
#pragma shader_feature_local_raytracing _MATERIAL_FEATURE_TRANSMISSION
|
|
#pragma shader_feature_local_fragment _MATERIAL_FEATURE_ANISOTROPY
|
|
#pragma shader_feature_local_raytracing _MATERIAL_FEATURE_ANISOTROPY
|
|
#pragma shader_feature_local_fragment _MATERIAL_FEATURE_IRIDESCENCE
|
|
#pragma shader_feature_local_raytracing _MATERIAL_FEATURE_IRIDESCENCE
|
|
#pragma shader_feature_local_fragment _MATERIAL_FEATURE_SPECULAR_COLOR
|
|
#pragma shader_feature_local_raytracing _MATERIAL_FEATURE_SPECULAR_COLOR
|
|
#pragma shader_feature_local_fragment _MATERIAL_FEATURE_COLORED_TRANSMISSION
|
|
#pragma shader_feature_local_raytracing _MATERIAL_FEATURE_COLORED_TRANSMISSION
|
|
// GraphKeywords: <None>
|
|
|
|
// Defines
|
|
#define SHADERPASS SHADERPASS_FULL_SCREEN_DEBUG
|
|
#define RAYTRACING_SHADER_GRAPH_DEFAULT
|
|
#define SUPPORT_GLOBAL_MIP_BIAS 1
|
|
|
|
// For custom interpolators to inject a substruct definition before FragInputs definition,
|
|
// allowing for FragInputs to capture CI's intended for ShaderGraph's SDI.
|
|
struct CustomInterpolators
|
|
{
|
|
};
|
|
#define USE_CUSTOMINTERP_SUBSTRUCT
|
|
|
|
|
|
|
|
// TODO: Merge FragInputsVFX substruct with CustomInterpolators.
|
|
#ifdef HAVE_VFX_MODIFICATION
|
|
struct FragInputsVFX
|
|
{
|
|
/* WARNING: $splice Could not find named fragment 'FragInputsVFX' */
|
|
};
|
|
#endif
|
|
|
|
#include "Packages/com.unity.render-pipelines.core/ShaderLibrary/Common.hlsl"
|
|
#include "Packages/com.unity.render-pipelines.core/ShaderLibrary/GeometricTools.hlsl" // Required by Tessellation.hlsl
|
|
#include "Packages/com.unity.render-pipelines.core/ShaderLibrary/Tessellation.hlsl"
|
|
#include "Packages/com.unity.render-pipelines.core/ShaderLibrary/Texture.hlsl"
|
|
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/ShaderLibrary/ShaderVariables.hlsl"
|
|
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/RenderPipeline/ShaderPass/ShaderPass.cs.hlsl"
|
|
#include "Packages/com.unity.render-pipelines.core/ShaderLibrary/TextureStack.hlsl" // Required to be include before we include properties as it define DECLARE_STACK_CB
|
|
#include "Packages/com.unity.render-pipelines.core/ShaderLibrary/DebugMipmapStreamingMacros.hlsl" // Required before including properties as it defines UNITY_TEXTURE_STREAMING_DEBUG_VARS
|
|
// Always include Shader Graph version
|
|
// Always include last to avoid double macros
|
|
#include "Packages/com.unity.shadergraph/ShaderGraphLibrary/Functions.hlsl" // Need to be here for Gradient struct definition
|
|
|
|
// --------------------------------------------------
|
|
// Defines
|
|
|
|
// Attribute
|
|
#define ATTRIBUTES_NEED_NORMAL
|
|
#define ATTRIBUTES_NEED_TANGENT
|
|
#define ATTRIBUTES_NEED_TEXCOORD0
|
|
#define ATTRIBUTES_NEED_COLOR
|
|
#define VARYINGS_NEED_POSITION_WS
|
|
#define VARYINGS_NEED_TANGENT_TO_WORLD
|
|
#define VARYINGS_NEED_TEXCOORD0
|
|
#define VARYINGS_NEED_COLOR
|
|
|
|
#define HAVE_MESH_MODIFICATION
|
|
|
|
//Strip down the FragInputs.hlsl (on graphics), so we can only optimize the interpolators we use.
|
|
//if by accident something requests contents of FragInputs.hlsl, it will be caught as a compiler error
|
|
//Frag inputs stripping is only enabled when FRAG_INPUTS_ENABLE_STRIPPING is set
|
|
#if !defined(SHADER_STAGE_RAY_TRACING) && SHADERPASS != SHADERPASS_RAYTRACING_GBUFFER && SHADERPASS != SHADERPASS_FULL_SCREEN_DEBUG
|
|
#define FRAG_INPUTS_ENABLE_STRIPPING
|
|
#endif
|
|
#define FRAG_INPUTS_USE_TEXCOORD0
|
|
|
|
|
|
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/RenderPipeline/ShaderPass/FragInputs.hlsl"
|
|
|
|
|
|
|
|
|
|
// Following two define are a workaround introduce in 10.1.x for RaytracingQualityNode
|
|
// The ShaderGraph don't support correctly migration of this node as it serialize all the node data
|
|
// in the json file making it impossible to uprgrade. Until we get a fix, we do a workaround here
|
|
// to still allow us to rename the field and keyword of this node without breaking existing code.
|
|
#ifdef RAYTRACING_SHADER_GRAPH_DEFAULT
|
|
#define RAYTRACING_SHADER_GRAPH_HIGH
|
|
#endif
|
|
|
|
#ifdef RAYTRACING_SHADER_GRAPH_RAYTRACED
|
|
#define RAYTRACING_SHADER_GRAPH_LOW
|
|
#endif
|
|
// end
|
|
|
|
#ifndef SHADER_UNLIT
|
|
// We need isFrontFace when using double sided - it is not required for unlit as in case of unlit double sided only drive the cullmode
|
|
// VARYINGS_NEED_CULLFACE can be define by VaryingsMeshToPS.FaceSign input if a IsFrontFace Node is included in the shader graph.
|
|
#if defined(_DOUBLESIDED_ON) && !defined(VARYINGS_NEED_CULLFACE)
|
|
#define VARYINGS_NEED_CULLFACE
|
|
#endif
|
|
#endif
|
|
|
|
// Specific Material Define
|
|
#define _AMBIENT_OCCLUSION 1
|
|
#define _SPECULAR_OCCLUSION_FROM_AO 1
|
|
#define _ENERGY_CONSERVING_SPECULAR 1
|
|
|
|
#if _MATERIAL_FEATURE_COLORED_TRANSMISSION
|
|
// Colored Transmission doesn't support clear coat
|
|
#undef _MATERIAL_FEATURE_CLEAR_COAT
|
|
#endif
|
|
|
|
// If we use subsurface scattering, enable output split lighting (for forward pass)
|
|
#if defined(_MATERIAL_FEATURE_SUBSURFACE_SCATTERING) && !defined(_SURFACE_TYPE_TRANSPARENT)
|
|
#define OUTPUT_SPLIT_LIGHTING
|
|
#endif
|
|
|
|
// This shader support recursive rendering for raytracing
|
|
#define HAVE_RECURSIVE_RENDERING
|
|
|
|
// In Path Tracing, For all single-sided, refractive materials, we want to force a thin refraction model
|
|
#if (SHADERPASS == SHADERPASS_PATH_TRACING) && !defined(_DOUBLESIDED_ON) && (defined(_REFRACTION_PLANE) || defined(_REFRACTION_SPHERE))
|
|
#undef _REFRACTION_PLANE
|
|
#undef _REFRACTION_SPHERE
|
|
#define _REFRACTION_THIN
|
|
#endif
|
|
// Caution: we can use the define SHADER_UNLIT onlit after the above Material include as it is the Unlit template who define it
|
|
|
|
// To handle SSR on transparent correctly with a possibility to enable/disable it per framesettings
|
|
// we should have a code like this:
|
|
// if !defined(_DISABLE_SSR_TRANSPARENT)
|
|
// pragma multi_compile _ WRITE_NORMAL_BUFFER
|
|
// endif
|
|
// i.e we enable the multicompile only if we can receive SSR or not, and then C# code drive
|
|
// it based on if SSR transparent in frame settings and not (and stripper can strip it).
|
|
// this is currently not possible with our current preprocessor as _DISABLE_SSR_TRANSPARENT is a keyword not a define
|
|
// so instead we used this and chose to pay the extra cost of normal write even if SSR transaprent is disabled.
|
|
// Ideally the shader graph generator should handle it but condition below can't be handle correctly for now.
|
|
#if SHADERPASS == SHADERPASS_TRANSPARENT_DEPTH_PREPASS
|
|
#if !defined(_DISABLE_SSR_TRANSPARENT) && !defined(SHADER_UNLIT)
|
|
#define WRITE_NORMAL_BUFFER
|
|
#endif
|
|
#endif
|
|
|
|
// See Lit.shader
|
|
#if SHADERPASS == SHADERPASS_MOTION_VECTORS && defined(WRITE_DECAL_BUFFER_AND_RENDERING_LAYER)
|
|
#define WRITE_DECAL_BUFFER
|
|
#endif
|
|
|
|
#ifndef DEBUG_DISPLAY
|
|
// In case of opaque we don't want to perform the alpha test, it is done in depth prepass and we use depth equal for ztest (setup from UI)
|
|
// Don't do it with debug display mode as it is possible there is no depth prepass in this case
|
|
#if !defined(_SURFACE_TYPE_TRANSPARENT)
|
|
#if SHADERPASS == SHADERPASS_FORWARD
|
|
#define SHADERPASS_FORWARD_BYPASS_ALPHA_TEST
|
|
#elif SHADERPASS == SHADERPASS_GBUFFER
|
|
#define SHADERPASS_GBUFFER_BYPASS_ALPHA_TEST
|
|
#endif
|
|
#endif
|
|
#endif
|
|
|
|
// Define _DEFERRED_CAPABLE_MATERIAL for shader capable to run in deferred pass
|
|
#if defined(SHADER_LIT) && !defined(_SURFACE_TYPE_TRANSPARENT)
|
|
#define _DEFERRED_CAPABLE_MATERIAL
|
|
#endif
|
|
|
|
// Translate transparent motion vector define
|
|
#if (defined(_TRANSPARENT_WRITES_MOTION_VEC) || defined(_TRANSPARENT_REFRACTIVE_SORT)) && defined(_SURFACE_TYPE_TRANSPARENT)
|
|
#define _WRITE_TRANSPARENT_MOTION_VECTOR
|
|
#endif
|
|
|
|
// -- Graph Properties
|
|
CBUFFER_START(UnityPerMaterial)
|
|
float4 _BaseColor;
|
|
float4 _BaseColorMap_TexelSize;
|
|
float4 _BaseTilingOffset;
|
|
float _BaseTriplanarThreshold;
|
|
float4 _BaseNormalMap_TexelSize;
|
|
float _BaseNormalScale;
|
|
float4 _BaseMaskMap_TexelSize;
|
|
float _BaseMetallic;
|
|
float _BaseAORemapMin;
|
|
float _BaseAORemapMax;
|
|
float _BaseSmoothnessRemapMin;
|
|
float _BaseSmoothnessRemapMax;
|
|
float _USEDYNAMICCOVERTSTATICMASKF;
|
|
float4 _CoverMaskA_TexelSize;
|
|
float _CoverMaskPower;
|
|
float _Cover_Amount;
|
|
float _Cover_Amount_Grow_Speed;
|
|
float3 _CoverDirection;
|
|
float _Cover_Max_Angle;
|
|
float _Cover_Min_Height;
|
|
float _Cover_Min_Height_Blending;
|
|
float4 _CoverBaseColor;
|
|
float4 _CoverBaseColorMap_TexelSize;
|
|
float4 _CoverTilingOffset;
|
|
float _CoverTriplanarThreshold;
|
|
float4 _CoverNormalMap_TexelSize;
|
|
float _CoverNormalScale;
|
|
float _CoverNormalBlendHardness;
|
|
float _CoverHeightMapMin;
|
|
float _CoverHeightMapMax;
|
|
float _CoverHeightMapOffset;
|
|
float _CoverHardness;
|
|
float4 _CoverMaskMap_TexelSize;
|
|
float _CoverMetallic;
|
|
float _CoverAORemapMin;
|
|
float _CoverAORemapMax;
|
|
float _CoverSmoothnessRemapMin;
|
|
float _CoverSmoothnessRemapMax;
|
|
float4 _ShapeNormalMap_TexelSize;
|
|
float _shapeNormalScale;
|
|
float _CovershapeNormalScale;
|
|
float4 _ShapeAO_TexelSize;
|
|
float _ShapeAORemapMin;
|
|
float _ShapeAORemapMax;
|
|
float _CoverShapeAORemapMin;
|
|
float _CoverShapeAORemapMax;
|
|
float4 _DetailMap_TexelSize;
|
|
float4 _DetailTilingOffset;
|
|
float _DetailAlbedoScale;
|
|
float _DetailNormalScale;
|
|
float _DetailSmoothnessScale;
|
|
float _DetailCoverAlbedoScale;
|
|
float _DetailCoverNormalScale;
|
|
float _DetailCoverSmoothnessScale;
|
|
float _CoverMaskRCurvature;
|
|
float _BaseBrightnessCurvMultply;
|
|
float _BaseBrightnessCurvPower;
|
|
float _BaseDarknessCurvMultply;
|
|
float _BaseDarknessCurvPower;
|
|
float _CoverBrightnessCurvMultply;
|
|
float _CoverBrightnessCurvPower;
|
|
float _CoverDarknessCurvMultply;
|
|
float _CoverDarknessCurvPower;
|
|
float4 _WetColor;
|
|
float _WetSmoothness;
|
|
float4 _EmissionColor;
|
|
float _UseShadowThreshold;
|
|
float4 _DoubleSidedConstants;
|
|
UNITY_TEXTURE_STREAMING_DEBUG_VARS;
|
|
float _BlendMode;
|
|
float _EnableBlendModePreserveSpecularLighting;
|
|
float _RayTracing;
|
|
float _RefractionModel;
|
|
float _MaterialID;
|
|
float _MaterialTypeMask;
|
|
CBUFFER_END
|
|
|
|
|
|
// Object and Global properties
|
|
SAMPLER(SamplerState_Linear_Repeat);
|
|
SAMPLER(SamplerState_Linear_Repeat_Aniso8);
|
|
TEXTURE2D(_BaseColorMap);
|
|
SAMPLER(sampler_BaseColorMap);
|
|
TEXTURE2D(_BaseNormalMap);
|
|
SAMPLER(sampler_BaseNormalMap);
|
|
TEXTURE2D(_BaseMaskMap);
|
|
SAMPLER(sampler_BaseMaskMap);
|
|
TEXTURE2D(_CoverMaskA);
|
|
SAMPLER(sampler_CoverMaskA);
|
|
TEXTURE2D(_CoverBaseColorMap);
|
|
SAMPLER(sampler_CoverBaseColorMap);
|
|
TEXTURE2D(_CoverNormalMap);
|
|
SAMPLER(sampler_CoverNormalMap);
|
|
TEXTURE2D(_CoverMaskMap);
|
|
SAMPLER(sampler_CoverMaskMap);
|
|
TEXTURE2D(_ShapeNormalMap);
|
|
SAMPLER(sampler_ShapeNormalMap);
|
|
TEXTURE2D(_ShapeAO);
|
|
SAMPLER(sampler_ShapeAO);
|
|
TEXTURE2D(_DetailMap);
|
|
SAMPLER(sampler_DetailMap);
|
|
|
|
// -- Property used by ScenePickingPass
|
|
#ifdef SCENEPICKINGPASS
|
|
float4 _SelectionID;
|
|
#endif
|
|
|
|
// -- Properties used by SceneSelectionPass
|
|
#ifdef SCENESELECTIONPASS
|
|
int _ObjectId;
|
|
int _PassValue;
|
|
#endif
|
|
|
|
// Includes
|
|
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/Debug/DebugDisplay.hlsl"
|
|
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/Material/Material.hlsl"
|
|
#include "Packages/com.unity.render-pipelines.core/ShaderLibrary/NormalSurfaceGradient.hlsl"
|
|
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/Material/Lit/Lit.hlsl"
|
|
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/Material/BuiltinUtilities.hlsl"
|
|
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/Material/MaterialUtilities.hlsl"
|
|
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/ShaderLibrary/ShaderGraphFunctions.hlsl"
|
|
// GraphIncludes: <None>
|
|
|
|
// --------------------------------------------------
|
|
// Structs and Packing
|
|
|
|
struct AttributesMesh
|
|
{
|
|
float3 positionOS : POSITION;
|
|
float3 normalOS : NORMAL;
|
|
float4 tangentOS : TANGENT;
|
|
float4 uv0 : TEXCOORD0;
|
|
float4 color : COLOR;
|
|
#if UNITY_ANY_INSTANCING_ENABLED || defined(ATTRIBUTES_NEED_INSTANCEID)
|
|
uint instanceID : INSTANCEID_SEMANTIC;
|
|
#endif
|
|
};
|
|
struct VaryingsMeshToPS
|
|
{
|
|
SV_POSITION_QUALIFIERS float4 positionCS : SV_POSITION;
|
|
float3 positionRWS;
|
|
float3 normalWS;
|
|
float4 tangentWS;
|
|
float4 texCoord0;
|
|
float4 color;
|
|
#if UNITY_ANY_INSTANCING_ENABLED || defined(VARYINGS_NEED_INSTANCEID)
|
|
uint instanceID : CUSTOM_INSTANCE_ID;
|
|
#endif
|
|
};
|
|
struct VertexDescriptionInputs
|
|
{
|
|
float3 ObjectSpaceNormal;
|
|
float3 ObjectSpaceTangent;
|
|
float3 ObjectSpacePosition;
|
|
};
|
|
struct SurfaceDescriptionInputs
|
|
{
|
|
float3 WorldSpaceNormal;
|
|
float3 TangentSpaceNormal;
|
|
float3 WorldSpaceTangent;
|
|
float3 WorldSpaceBiTangent;
|
|
float3 AbsoluteWorldSpacePosition;
|
|
float4 uv0;
|
|
float4 VertexColor;
|
|
};
|
|
struct PackedVaryingsMeshToPS
|
|
{
|
|
SV_POSITION_QUALIFIERS float4 positionCS : SV_POSITION;
|
|
float4 tangentWS : INTERP0;
|
|
float4 texCoord0 : INTERP1;
|
|
float4 color : INTERP2;
|
|
float3 positionRWS : INTERP3;
|
|
float3 normalWS : INTERP4;
|
|
#if UNITY_ANY_INSTANCING_ENABLED || defined(VARYINGS_NEED_INSTANCEID)
|
|
uint instanceID : CUSTOM_INSTANCE_ID;
|
|
#endif
|
|
};
|
|
|
|
PackedVaryingsMeshToPS PackVaryingsMeshToPS (VaryingsMeshToPS input)
|
|
{
|
|
PackedVaryingsMeshToPS output;
|
|
ZERO_INITIALIZE(PackedVaryingsMeshToPS, output);
|
|
output.positionCS = input.positionCS;
|
|
output.tangentWS.xyzw = input.tangentWS;
|
|
output.texCoord0.xyzw = input.texCoord0;
|
|
output.color.xyzw = input.color;
|
|
output.positionRWS.xyz = input.positionRWS;
|
|
output.normalWS.xyz = input.normalWS;
|
|
#if UNITY_ANY_INSTANCING_ENABLED || defined(VARYINGS_NEED_INSTANCEID)
|
|
output.instanceID = input.instanceID;
|
|
#endif
|
|
return output;
|
|
}
|
|
|
|
VaryingsMeshToPS UnpackVaryingsMeshToPS (PackedVaryingsMeshToPS input)
|
|
{
|
|
VaryingsMeshToPS output;
|
|
output.positionCS = input.positionCS;
|
|
output.tangentWS = input.tangentWS.xyzw;
|
|
output.texCoord0 = input.texCoord0.xyzw;
|
|
output.color = input.color.xyzw;
|
|
output.positionRWS = input.positionRWS.xyz;
|
|
output.normalWS = input.normalWS.xyz;
|
|
#if UNITY_ANY_INSTANCING_ENABLED || defined(VARYINGS_NEED_INSTANCEID)
|
|
output.instanceID = input.instanceID;
|
|
#endif
|
|
return output;
|
|
}
|
|
|
|
|
|
// --------------------------------------------------
|
|
// Graph
|
|
|
|
|
|
// Graph Functions
|
|
|
|
void Unity_Divide_float4(float4 A, float4 B, out float4 Out)
|
|
{
|
|
Out = A / B;
|
|
}
|
|
|
|
void Unity_Combine_float(float R, float G, float B, float A, out float4 RGBA, out float3 RGB, out float2 RG)
|
|
{
|
|
RGBA = float4(R, G, B, A);
|
|
RGB = float3(R, G, B);
|
|
RG = float2(R, G);
|
|
}
|
|
|
|
void Unity_Multiply_float4_float4(float4 A, float4 B, out float4 Out)
|
|
{
|
|
Out = A * B;
|
|
}
|
|
|
|
void Unity_Sign_float3(float3 In, out float3 Out)
|
|
{
|
|
Out = sign(In);
|
|
}
|
|
|
|
void Unity_Multiply_float2_float2(float2 A, float2 B, out float2 Out)
|
|
{
|
|
Out = A * B;
|
|
}
|
|
|
|
void Unity_Absolute_float3(float3 In, out float3 Out)
|
|
{
|
|
Out = abs(In);
|
|
}
|
|
|
|
void Unity_Power_float3(float3 A, float3 B, out float3 Out)
|
|
{
|
|
Out = pow(A, B);
|
|
}
|
|
|
|
void Unity_Multiply_float3_float3(float3 A, float3 B, out float3 Out)
|
|
{
|
|
Out = A * B;
|
|
}
|
|
|
|
void Unity_Multiply_float_float(float A, float B, out float Out)
|
|
{
|
|
Out = A * B;
|
|
}
|
|
|
|
void Unity_Add_float4(float4 A, float4 B, out float4 Out)
|
|
{
|
|
Out = A + B;
|
|
}
|
|
|
|
void Unity_Add_float(float A, float B, out float Out)
|
|
{
|
|
Out = A + B;
|
|
}
|
|
|
|
struct Bindings_TriplanarNM_bc609ed95f52591469ab35dbfe0efcea_float
|
|
{
|
|
float3 WorldSpaceNormal;
|
|
float3 AbsoluteWorldSpacePosition;
|
|
};
|
|
|
|
void SG_TriplanarNM_bc609ed95f52591469ab35dbfe0efcea_float(UnityTexture2D Texture2D_80A3D28F, float Vector1_41461AC9, float Vector1_E4D1C13A, UnitySamplerState _SamplerState, Bindings_TriplanarNM_bc609ed95f52591469ab35dbfe0efcea_float IN, out float4 XYZ_1, out float4 XZ_2, out float4 YZ_3, out float4 XY_4)
|
|
{
|
|
UnityTexture2D _Property_3e01b4d2fc68d48ba3acbba9d5881e59_Out_0_Texture2D = Texture2D_80A3D28F;
|
|
float _Split_89ed63cb625cb3878c183d0b71c03400_R_1_Float = IN.AbsoluteWorldSpacePosition[0];
|
|
float _Split_89ed63cb625cb3878c183d0b71c03400_G_2_Float = IN.AbsoluteWorldSpacePosition[1];
|
|
float _Split_89ed63cb625cb3878c183d0b71c03400_B_3_Float = IN.AbsoluteWorldSpacePosition[2];
|
|
float _Split_89ed63cb625cb3878c183d0b71c03400_A_4_Float = 0;
|
|
float4 _Combine_cf2d04ff119ad88493f6460431765cbb_RGBA_4_Vector4;
|
|
float3 _Combine_cf2d04ff119ad88493f6460431765cbb_RGB_5_Vector3;
|
|
float2 _Combine_cf2d04ff119ad88493f6460431765cbb_RG_6_Vector2;
|
|
Unity_Combine_float(_Split_89ed63cb625cb3878c183d0b71c03400_R_1_Float, _Split_89ed63cb625cb3878c183d0b71c03400_B_3_Float, float(0), float(0), _Combine_cf2d04ff119ad88493f6460431765cbb_RGBA_4_Vector4, _Combine_cf2d04ff119ad88493f6460431765cbb_RGB_5_Vector3, _Combine_cf2d04ff119ad88493f6460431765cbb_RG_6_Vector2);
|
|
float _Property_47988ec10c0c18879d461e00bed806e7_Out_0_Float = Vector1_41461AC9;
|
|
float4 _Multiply_14cec4902d0a00829e4555071a1b8ad1_Out_2_Vector4;
|
|
Unity_Multiply_float4_float4(_Combine_cf2d04ff119ad88493f6460431765cbb_RGBA_4_Vector4, (_Property_47988ec10c0c18879d461e00bed806e7_Out_0_Float.xxxx), _Multiply_14cec4902d0a00829e4555071a1b8ad1_Out_2_Vector4);
|
|
float3 _Sign_b826e0ff2d95ec8cb2b2cbbd7ea2eab6_Out_1_Vector3;
|
|
Unity_Sign_float3(IN.WorldSpaceNormal, _Sign_b826e0ff2d95ec8cb2b2cbbd7ea2eab6_Out_1_Vector3);
|
|
float _Split_742547a7039de986a646d04c157ae549_R_1_Float = _Sign_b826e0ff2d95ec8cb2b2cbbd7ea2eab6_Out_1_Vector3[0];
|
|
float _Split_742547a7039de986a646d04c157ae549_G_2_Float = _Sign_b826e0ff2d95ec8cb2b2cbbd7ea2eab6_Out_1_Vector3[1];
|
|
float _Split_742547a7039de986a646d04c157ae549_B_3_Float = _Sign_b826e0ff2d95ec8cb2b2cbbd7ea2eab6_Out_1_Vector3[2];
|
|
float _Split_742547a7039de986a646d04c157ae549_A_4_Float = 0;
|
|
float2 _Vector2_40a8919e571ec18499de72022c155b38_Out_0_Vector2 = float2(_Split_742547a7039de986a646d04c157ae549_G_2_Float, float(1));
|
|
float2 _Multiply_5fa32af59cdca88389832336b2268bd5_Out_2_Vector2;
|
|
Unity_Multiply_float2_float2((_Multiply_14cec4902d0a00829e4555071a1b8ad1_Out_2_Vector4.xy), _Vector2_40a8919e571ec18499de72022c155b38_Out_0_Vector2, _Multiply_5fa32af59cdca88389832336b2268bd5_Out_2_Vector2);
|
|
UnitySamplerState _Property_544c7fa9dfe54e30a0df9d605340a374_Out_0_SamplerState = _SamplerState;
|
|
float4 _SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_RGBA_0_Vector4 = SAMPLE_TEXTURE2D(_Property_3e01b4d2fc68d48ba3acbba9d5881e59_Out_0_Texture2D.tex, _Property_544c7fa9dfe54e30a0df9d605340a374_Out_0_SamplerState.samplerstate, _Property_3e01b4d2fc68d48ba3acbba9d5881e59_Out_0_Texture2D.GetTransformedUV(_Multiply_5fa32af59cdca88389832336b2268bd5_Out_2_Vector2) );
|
|
float _SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_R_4_Float = _SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_RGBA_0_Vector4.r;
|
|
float _SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_G_5_Float = _SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_RGBA_0_Vector4.g;
|
|
float _SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_B_6_Float = _SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_RGBA_0_Vector4.b;
|
|
float _SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_A_7_Float = _SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_RGBA_0_Vector4.a;
|
|
float3 _Absolute_644b798714827680b39bf5d34f70385f_Out_1_Vector3;
|
|
Unity_Absolute_float3(IN.WorldSpaceNormal, _Absolute_644b798714827680b39bf5d34f70385f_Out_1_Vector3);
|
|
float _Property_adc4c59482221c8aad681c6558728ac9_Out_0_Float = Vector1_E4D1C13A;
|
|
float3 _Power_ee478822a04529849ae8df1636c29fe2_Out_2_Vector3;
|
|
Unity_Power_float3(_Absolute_644b798714827680b39bf5d34f70385f_Out_1_Vector3, (_Property_adc4c59482221c8aad681c6558728ac9_Out_0_Float.xxx), _Power_ee478822a04529849ae8df1636c29fe2_Out_2_Vector3);
|
|
float3 _Multiply_b386a937554d73828e437d126d69608b_Out_2_Vector3;
|
|
Unity_Multiply_float3_float3(_Power_ee478822a04529849ae8df1636c29fe2_Out_2_Vector3, _Power_ee478822a04529849ae8df1636c29fe2_Out_2_Vector3, _Multiply_b386a937554d73828e437d126d69608b_Out_2_Vector3);
|
|
float _Split_ae83014fcbd9f7879a0b91fa66dc9718_R_1_Float = _Multiply_b386a937554d73828e437d126d69608b_Out_2_Vector3[0];
|
|
float _Split_ae83014fcbd9f7879a0b91fa66dc9718_G_2_Float = _Multiply_b386a937554d73828e437d126d69608b_Out_2_Vector3[1];
|
|
float _Split_ae83014fcbd9f7879a0b91fa66dc9718_B_3_Float = _Multiply_b386a937554d73828e437d126d69608b_Out_2_Vector3[2];
|
|
float _Split_ae83014fcbd9f7879a0b91fa66dc9718_A_4_Float = 0;
|
|
float4 _Multiply_2e1040ca9c98d085ace76ee93f094039_Out_2_Vector4;
|
|
Unity_Multiply_float4_float4(_SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_RGBA_0_Vector4, (_Split_ae83014fcbd9f7879a0b91fa66dc9718_G_2_Float.xxxx), _Multiply_2e1040ca9c98d085ace76ee93f094039_Out_2_Vector4);
|
|
float4 _Combine_192c2c4a69be588b90ca005a32e22552_RGBA_4_Vector4;
|
|
float3 _Combine_192c2c4a69be588b90ca005a32e22552_RGB_5_Vector3;
|
|
float2 _Combine_192c2c4a69be588b90ca005a32e22552_RG_6_Vector2;
|
|
Unity_Combine_float(_Split_89ed63cb625cb3878c183d0b71c03400_R_1_Float, _Split_89ed63cb625cb3878c183d0b71c03400_G_2_Float, float(0), float(0), _Combine_192c2c4a69be588b90ca005a32e22552_RGBA_4_Vector4, _Combine_192c2c4a69be588b90ca005a32e22552_RGB_5_Vector3, _Combine_192c2c4a69be588b90ca005a32e22552_RG_6_Vector2);
|
|
float4 _Multiply_138240d0d4846e87b0febabec0d6891b_Out_2_Vector4;
|
|
Unity_Multiply_float4_float4(_Combine_192c2c4a69be588b90ca005a32e22552_RGBA_4_Vector4, (_Property_47988ec10c0c18879d461e00bed806e7_Out_0_Float.xxxx), _Multiply_138240d0d4846e87b0febabec0d6891b_Out_2_Vector4);
|
|
float _Multiply_014402ded5a3988a8c18ba07636ea5a7_Out_2_Float;
|
|
Unity_Multiply_float_float(_Split_742547a7039de986a646d04c157ae549_B_3_Float, -1, _Multiply_014402ded5a3988a8c18ba07636ea5a7_Out_2_Float);
|
|
float2 _Vector2_caa25d55d456a58982bdfc39b1b43f3f_Out_0_Vector2 = float2(_Multiply_014402ded5a3988a8c18ba07636ea5a7_Out_2_Float, float(1));
|
|
float2 _Multiply_a67201b6e1a0a28c98cd9d06e8b09543_Out_2_Vector2;
|
|
Unity_Multiply_float2_float2((_Multiply_138240d0d4846e87b0febabec0d6891b_Out_2_Vector4.xy), _Vector2_caa25d55d456a58982bdfc39b1b43f3f_Out_0_Vector2, _Multiply_a67201b6e1a0a28c98cd9d06e8b09543_Out_2_Vector2);
|
|
float4 _SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_RGBA_0_Vector4 = SAMPLE_TEXTURE2D(_Property_3e01b4d2fc68d48ba3acbba9d5881e59_Out_0_Texture2D.tex, _Property_544c7fa9dfe54e30a0df9d605340a374_Out_0_SamplerState.samplerstate, _Property_3e01b4d2fc68d48ba3acbba9d5881e59_Out_0_Texture2D.GetTransformedUV(_Multiply_a67201b6e1a0a28c98cd9d06e8b09543_Out_2_Vector2) );
|
|
float _SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_R_4_Float = _SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_RGBA_0_Vector4.r;
|
|
float _SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_G_5_Float = _SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_RGBA_0_Vector4.g;
|
|
float _SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_B_6_Float = _SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_RGBA_0_Vector4.b;
|
|
float _SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_A_7_Float = _SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_RGBA_0_Vector4.a;
|
|
float4 _Multiply_7bb4009c92b108849ac6ca92bc1442f2_Out_2_Vector4;
|
|
Unity_Multiply_float4_float4(_SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_RGBA_0_Vector4, (_Split_ae83014fcbd9f7879a0b91fa66dc9718_B_3_Float.xxxx), _Multiply_7bb4009c92b108849ac6ca92bc1442f2_Out_2_Vector4);
|
|
float4 _Combine_1e9ffdba42d6918fb7a4b185f1585d2a_RGBA_4_Vector4;
|
|
float3 _Combine_1e9ffdba42d6918fb7a4b185f1585d2a_RGB_5_Vector3;
|
|
float2 _Combine_1e9ffdba42d6918fb7a4b185f1585d2a_RG_6_Vector2;
|
|
Unity_Combine_float(_Split_89ed63cb625cb3878c183d0b71c03400_B_3_Float, _Split_89ed63cb625cb3878c183d0b71c03400_G_2_Float, float(0), float(0), _Combine_1e9ffdba42d6918fb7a4b185f1585d2a_RGBA_4_Vector4, _Combine_1e9ffdba42d6918fb7a4b185f1585d2a_RGB_5_Vector3, _Combine_1e9ffdba42d6918fb7a4b185f1585d2a_RG_6_Vector2);
|
|
float4 _Multiply_2c0864423b014f8b8af8523f68cbb63c_Out_2_Vector4;
|
|
Unity_Multiply_float4_float4(_Combine_1e9ffdba42d6918fb7a4b185f1585d2a_RGBA_4_Vector4, (_Property_47988ec10c0c18879d461e00bed806e7_Out_0_Float.xxxx), _Multiply_2c0864423b014f8b8af8523f68cbb63c_Out_2_Vector4);
|
|
float2 _Vector2_54dfd40df2fc78809955dd272f2cf0c3_Out_0_Vector2 = float2(_Split_742547a7039de986a646d04c157ae549_R_1_Float, float(1));
|
|
float2 _Multiply_addbd5fcede95f80bbb806c94e49ef63_Out_2_Vector2;
|
|
Unity_Multiply_float2_float2((_Multiply_2c0864423b014f8b8af8523f68cbb63c_Out_2_Vector4.xy), _Vector2_54dfd40df2fc78809955dd272f2cf0c3_Out_0_Vector2, _Multiply_addbd5fcede95f80bbb806c94e49ef63_Out_2_Vector2);
|
|
float4 _SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_RGBA_0_Vector4 = SAMPLE_TEXTURE2D(_Property_3e01b4d2fc68d48ba3acbba9d5881e59_Out_0_Texture2D.tex, _Property_544c7fa9dfe54e30a0df9d605340a374_Out_0_SamplerState.samplerstate, _Property_3e01b4d2fc68d48ba3acbba9d5881e59_Out_0_Texture2D.GetTransformedUV(_Multiply_addbd5fcede95f80bbb806c94e49ef63_Out_2_Vector2) );
|
|
float _SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_R_4_Float = _SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_RGBA_0_Vector4.r;
|
|
float _SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_G_5_Float = _SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_RGBA_0_Vector4.g;
|
|
float _SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_B_6_Float = _SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_RGBA_0_Vector4.b;
|
|
float _SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_A_7_Float = _SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_RGBA_0_Vector4.a;
|
|
float4 _Multiply_77818c22e359fc8cbb7dd20216a8db72_Out_2_Vector4;
|
|
Unity_Multiply_float4_float4(_SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_RGBA_0_Vector4, (_Split_ae83014fcbd9f7879a0b91fa66dc9718_R_1_Float.xxxx), _Multiply_77818c22e359fc8cbb7dd20216a8db72_Out_2_Vector4);
|
|
float4 _Add_769d9ee909c9238dbbf72d2800a2f268_Out_2_Vector4;
|
|
Unity_Add_float4(_Multiply_7bb4009c92b108849ac6ca92bc1442f2_Out_2_Vector4, _Multiply_77818c22e359fc8cbb7dd20216a8db72_Out_2_Vector4, _Add_769d9ee909c9238dbbf72d2800a2f268_Out_2_Vector4);
|
|
float4 _Add_14295f72880e4b87a1baf1ced943ac40_Out_2_Vector4;
|
|
Unity_Add_float4(_Multiply_2e1040ca9c98d085ace76ee93f094039_Out_2_Vector4, _Add_769d9ee909c9238dbbf72d2800a2f268_Out_2_Vector4, _Add_14295f72880e4b87a1baf1ced943ac40_Out_2_Vector4);
|
|
float _Add_e59af300bba2498db32eac1412123447_Out_2_Float;
|
|
Unity_Add_float(_Split_ae83014fcbd9f7879a0b91fa66dc9718_R_1_Float, _Split_ae83014fcbd9f7879a0b91fa66dc9718_G_2_Float, _Add_e59af300bba2498db32eac1412123447_Out_2_Float);
|
|
float _Add_e855069f047fae8ea9027d56acb61e56_Out_2_Float;
|
|
Unity_Add_float(_Add_e59af300bba2498db32eac1412123447_Out_2_Float, _Split_ae83014fcbd9f7879a0b91fa66dc9718_B_3_Float, _Add_e855069f047fae8ea9027d56acb61e56_Out_2_Float);
|
|
float4 _Divide_91ae4b94f1d9b78e99d0472293b8098c_Out_2_Vector4;
|
|
Unity_Divide_float4(_Add_14295f72880e4b87a1baf1ced943ac40_Out_2_Vector4, (_Add_e855069f047fae8ea9027d56acb61e56_Out_2_Float.xxxx), _Divide_91ae4b94f1d9b78e99d0472293b8098c_Out_2_Vector4);
|
|
XYZ_1 = _Divide_91ae4b94f1d9b78e99d0472293b8098c_Out_2_Vector4;
|
|
XZ_2 = _SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_RGBA_0_Vector4;
|
|
YZ_3 = _SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_RGBA_0_Vector4;
|
|
XY_4 = _SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_RGBA_0_Vector4;
|
|
}
|
|
|
|
void Unity_Clamp_float(float In, float Min, float Max, out float Out)
|
|
{
|
|
Out = clamp(In, Min, Max);
|
|
}
|
|
|
|
void Unity_Absolute_float(float In, out float Out)
|
|
{
|
|
Out = abs(In);
|
|
}
|
|
|
|
void Unity_Power_float(float A, float B, out float Out)
|
|
{
|
|
Out = pow(A, B);
|
|
}
|
|
|
|
void Unity_Clamp_float4(float4 In, float4 Min, float4 Max, out float4 Out)
|
|
{
|
|
Out = clamp(In, Min, Max);
|
|
}
|
|
|
|
void Unity_Branch_float4(float Predicate, float4 True, float4 False, out float4 Out)
|
|
{
|
|
Out = Predicate ? True : False;
|
|
}
|
|
|
|
void Unity_TilingAndOffset_float(float2 UV, float2 Tiling, float2 Offset, out float2 Out)
|
|
{
|
|
Out = UV * Tiling + Offset;
|
|
}
|
|
|
|
void Unity_Saturate_float(float In, out float Out)
|
|
{
|
|
Out = saturate(In);
|
|
}
|
|
|
|
void Unity_SquareRoot_float4(float4 In, out float4 Out)
|
|
{
|
|
Out = sqrt(In);
|
|
}
|
|
|
|
void Unity_Sign_float(float In, out float Out)
|
|
{
|
|
Out = sign(In);
|
|
}
|
|
|
|
void Unity_Ceiling_float(float In, out float Out)
|
|
{
|
|
Out = ceil(In);
|
|
}
|
|
|
|
void Unity_Lerp_float4(float4 A, float4 B, float4 T, out float4 Out)
|
|
{
|
|
Out = lerp(A, B, T);
|
|
}
|
|
|
|
struct Bindings_BlendOverlayBaseColor_acdb3dfca72bd6b42bbc35f4613331a2_float
|
|
{
|
|
};
|
|
|
|
void SG_BlendOverlayBaseColor_acdb3dfca72bd6b42bbc35f4613331a2_float(float4 Color_9AA111D3, float Vector1_FBE622A2, float Vector1_8C15C351, Bindings_BlendOverlayBaseColor_acdb3dfca72bd6b42bbc35f4613331a2_float IN, out float3 OutVector4_1)
|
|
{
|
|
float4 _Property_012510d774fb7f8b860f5270dca4500f_Out_0_Vector4 = Color_9AA111D3;
|
|
float4 _SquareRoot_c2c57d0223a9538aa9240890c3cacb0c_Out_1_Vector4;
|
|
Unity_SquareRoot_float4(_Property_012510d774fb7f8b860f5270dca4500f_Out_0_Vector4, _SquareRoot_c2c57d0223a9538aa9240890c3cacb0c_Out_1_Vector4);
|
|
float _Property_a00e29241d12f983b30177515b367ec9_Out_0_Float = Vector1_FBE622A2;
|
|
float _Sign_343a45ede7349283a681c6bd9998fd8e_Out_1_Float;
|
|
Unity_Sign_float(_Property_a00e29241d12f983b30177515b367ec9_Out_0_Float, _Sign_343a45ede7349283a681c6bd9998fd8e_Out_1_Float);
|
|
float _Add_681019b8f5d3d68bb482d419c9fc61a9_Out_2_Float;
|
|
Unity_Add_float(_Sign_343a45ede7349283a681c6bd9998fd8e_Out_1_Float, float(1), _Add_681019b8f5d3d68bb482d419c9fc61a9_Out_2_Float);
|
|
float _Multiply_e8f4cb722712a880ac0db6c7461427f7_Out_2_Float;
|
|
Unity_Multiply_float_float(_Add_681019b8f5d3d68bb482d419c9fc61a9_Out_2_Float, 0.5, _Multiply_e8f4cb722712a880ac0db6c7461427f7_Out_2_Float);
|
|
float _Ceiling_95ad15988aa9b98184875fa754feae01_Out_1_Float;
|
|
Unity_Ceiling_float(_Multiply_e8f4cb722712a880ac0db6c7461427f7_Out_2_Float, _Ceiling_95ad15988aa9b98184875fa754feae01_Out_1_Float);
|
|
float _Property_2db1c747a05ee284a8b00076062f91a4_Out_0_Float = Vector1_8C15C351;
|
|
float _Multiply_9564ecda5193bc8286d9ff771c9226cd_Out_2_Float;
|
|
Unity_Multiply_float_float(_Property_2db1c747a05ee284a8b00076062f91a4_Out_0_Float, _Property_2db1c747a05ee284a8b00076062f91a4_Out_0_Float, _Multiply_9564ecda5193bc8286d9ff771c9226cd_Out_2_Float);
|
|
float4 _Lerp_b3cdb01fc3c5b988ac9b184943bf7c01_Out_3_Vector4;
|
|
Unity_Lerp_float4(_SquareRoot_c2c57d0223a9538aa9240890c3cacb0c_Out_1_Vector4, (_Ceiling_95ad15988aa9b98184875fa754feae01_Out_1_Float.xxxx), (_Multiply_9564ecda5193bc8286d9ff771c9226cd_Out_2_Float.xxxx), _Lerp_b3cdb01fc3c5b988ac9b184943bf7c01_Out_3_Vector4);
|
|
float4 _Multiply_39d1daff98488f8ea2cd794ad4f20926_Out_2_Vector4;
|
|
Unity_Multiply_float4_float4(_Lerp_b3cdb01fc3c5b988ac9b184943bf7c01_Out_3_Vector4, _Lerp_b3cdb01fc3c5b988ac9b184943bf7c01_Out_3_Vector4, _Multiply_39d1daff98488f8ea2cd794ad4f20926_Out_2_Vector4);
|
|
OutVector4_1 = (_Multiply_39d1daff98488f8ea2cd794ad4f20926_Out_2_Vector4.xyz);
|
|
}
|
|
|
|
void Unity_Add_float2(float2 A, float2 B, out float2 Out)
|
|
{
|
|
Out = A + B;
|
|
}
|
|
|
|
void Unity_DotProduct_float2(float2 A, float2 B, out float Out)
|
|
{
|
|
Out = dot(A, B);
|
|
}
|
|
|
|
void Unity_OneMinus_float(float In, out float Out)
|
|
{
|
|
Out = 1 - In;
|
|
}
|
|
|
|
void Unity_SquareRoot_float(float In, out float Out)
|
|
{
|
|
Out = sqrt(In);
|
|
}
|
|
|
|
void Unity_Add_float3(float3 A, float3 B, out float3 Out)
|
|
{
|
|
Out = A + B;
|
|
}
|
|
|
|
void Unity_Divide_float3(float3 A, float3 B, out float3 Out)
|
|
{
|
|
Out = A / B;
|
|
}
|
|
|
|
void Unity_Normalize_float3(float3 In, out float3 Out)
|
|
{
|
|
Out = normalize(In);
|
|
}
|
|
|
|
struct Bindings_TriplanarNMn_059da9746584140498cd018db3c76047_float
|
|
{
|
|
float3 WorldSpaceNormal;
|
|
float3 WorldSpaceTangent;
|
|
float3 WorldSpaceBiTangent;
|
|
float3 AbsoluteWorldSpacePosition;
|
|
};
|
|
|
|
void SG_TriplanarNMn_059da9746584140498cd018db3c76047_float(UnityTexture2D Texture2D_80A3D28F, float Vector1_41461AC9, float Vector1_E4D1C13A, UnitySamplerState _SamplerState, Bindings_TriplanarNMn_059da9746584140498cd018db3c76047_float IN, out float4 XYZ_1, out float4 XZ_2, out float4 YZ_3, out float4 XY_4)
|
|
{
|
|
UnityTexture2D _Property_3e01b4d2fc68d48ba3acbba9d5881e59_Out_0_Texture2D = Texture2D_80A3D28F;
|
|
float _Split_89ed63cb625cb3878c183d0b71c03400_R_1_Float = IN.AbsoluteWorldSpacePosition[0];
|
|
float _Split_89ed63cb625cb3878c183d0b71c03400_G_2_Float = IN.AbsoluteWorldSpacePosition[1];
|
|
float _Split_89ed63cb625cb3878c183d0b71c03400_B_3_Float = IN.AbsoluteWorldSpacePosition[2];
|
|
float _Split_89ed63cb625cb3878c183d0b71c03400_A_4_Float = 0;
|
|
float4 _Combine_cf2d04ff119ad88493f6460431765cbb_RGBA_4_Vector4;
|
|
float3 _Combine_cf2d04ff119ad88493f6460431765cbb_RGB_5_Vector3;
|
|
float2 _Combine_cf2d04ff119ad88493f6460431765cbb_RG_6_Vector2;
|
|
Unity_Combine_float(_Split_89ed63cb625cb3878c183d0b71c03400_R_1_Float, _Split_89ed63cb625cb3878c183d0b71c03400_B_3_Float, float(0), float(0), _Combine_cf2d04ff119ad88493f6460431765cbb_RGBA_4_Vector4, _Combine_cf2d04ff119ad88493f6460431765cbb_RGB_5_Vector3, _Combine_cf2d04ff119ad88493f6460431765cbb_RG_6_Vector2);
|
|
float _Property_47988ec10c0c18879d461e00bed806e7_Out_0_Float = Vector1_41461AC9;
|
|
float4 _Multiply_14cec4902d0a00829e4555071a1b8ad1_Out_2_Vector4;
|
|
Unity_Multiply_float4_float4(_Combine_cf2d04ff119ad88493f6460431765cbb_RGBA_4_Vector4, (_Property_47988ec10c0c18879d461e00bed806e7_Out_0_Float.xxxx), _Multiply_14cec4902d0a00829e4555071a1b8ad1_Out_2_Vector4);
|
|
float3 _Sign_3a6ebf59931cf08cb0482e0144ddac24_Out_1_Vector3;
|
|
Unity_Sign_float3(IN.WorldSpaceNormal, _Sign_3a6ebf59931cf08cb0482e0144ddac24_Out_1_Vector3);
|
|
float _Split_6299d4ddcc4c74828aea40a46fdb896e_R_1_Float = _Sign_3a6ebf59931cf08cb0482e0144ddac24_Out_1_Vector3[0];
|
|
float _Split_6299d4ddcc4c74828aea40a46fdb896e_G_2_Float = _Sign_3a6ebf59931cf08cb0482e0144ddac24_Out_1_Vector3[1];
|
|
float _Split_6299d4ddcc4c74828aea40a46fdb896e_B_3_Float = _Sign_3a6ebf59931cf08cb0482e0144ddac24_Out_1_Vector3[2];
|
|
float _Split_6299d4ddcc4c74828aea40a46fdb896e_A_4_Float = 0;
|
|
float2 _Vector2_b76cb1842101e58b9e636d49b075c612_Out_0_Vector2 = float2(_Split_6299d4ddcc4c74828aea40a46fdb896e_G_2_Float, float(1));
|
|
float2 _Multiply_a87753ad90594382bf3a3a95abbadbc8_Out_2_Vector2;
|
|
Unity_Multiply_float2_float2((_Multiply_14cec4902d0a00829e4555071a1b8ad1_Out_2_Vector4.xy), _Vector2_b76cb1842101e58b9e636d49b075c612_Out_0_Vector2, _Multiply_a87753ad90594382bf3a3a95abbadbc8_Out_2_Vector2);
|
|
UnitySamplerState _Property_8a2b8589cd3a42a1879a29c28e4f711f_Out_0_SamplerState = _SamplerState;
|
|
float4 _SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_RGBA_0_Vector4 = SAMPLE_TEXTURE2D(_Property_3e01b4d2fc68d48ba3acbba9d5881e59_Out_0_Texture2D.tex, _Property_8a2b8589cd3a42a1879a29c28e4f711f_Out_0_SamplerState.samplerstate, _Property_3e01b4d2fc68d48ba3acbba9d5881e59_Out_0_Texture2D.GetTransformedUV(_Multiply_a87753ad90594382bf3a3a95abbadbc8_Out_2_Vector2) );
|
|
_SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_RGBA_0_Vector4.rgb = UnpackNormal(_SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_RGBA_0_Vector4);
|
|
float _SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_R_4_Float = _SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_RGBA_0_Vector4.r;
|
|
float _SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_G_5_Float = _SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_RGBA_0_Vector4.g;
|
|
float _SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_B_6_Float = _SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_RGBA_0_Vector4.b;
|
|
float _SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_A_7_Float = _SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_RGBA_0_Vector4.a;
|
|
float2 _Vector2_ad6bd100e273d78fa409a30a77bfa2cc_Out_0_Vector2 = float2(_SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_R_4_Float, _SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_G_5_Float);
|
|
float2 _Multiply_31e8db88ee20c985a9850d1a58f3282b_Out_2_Vector2;
|
|
Unity_Multiply_float2_float2(_Vector2_ad6bd100e273d78fa409a30a77bfa2cc_Out_0_Vector2, _Vector2_b76cb1842101e58b9e636d49b075c612_Out_0_Vector2, _Multiply_31e8db88ee20c985a9850d1a58f3282b_Out_2_Vector2);
|
|
float _Split_5ed44bf2eca0868f81eb18100f49d1fa_R_1_Float = IN.WorldSpaceNormal[0];
|
|
float _Split_5ed44bf2eca0868f81eb18100f49d1fa_G_2_Float = IN.WorldSpaceNormal[1];
|
|
float _Split_5ed44bf2eca0868f81eb18100f49d1fa_B_3_Float = IN.WorldSpaceNormal[2];
|
|
float _Split_5ed44bf2eca0868f81eb18100f49d1fa_A_4_Float = 0;
|
|
float2 _Vector2_70e5837843f28b8b9d64cada3697bd5a_Out_0_Vector2 = float2(_Split_5ed44bf2eca0868f81eb18100f49d1fa_R_1_Float, _Split_5ed44bf2eca0868f81eb18100f49d1fa_B_3_Float);
|
|
float2 _Add_1145b2f896593d80aa864a34e6702562_Out_2_Vector2;
|
|
Unity_Add_float2(_Multiply_31e8db88ee20c985a9850d1a58f3282b_Out_2_Vector2, _Vector2_70e5837843f28b8b9d64cada3697bd5a_Out_0_Vector2, _Add_1145b2f896593d80aa864a34e6702562_Out_2_Vector2);
|
|
float _Split_2bc77ca2d17bd78cb2383770ce50b179_R_1_Float = _Add_1145b2f896593d80aa864a34e6702562_Out_2_Vector2[0];
|
|
float _Split_2bc77ca2d17bd78cb2383770ce50b179_G_2_Float = _Add_1145b2f896593d80aa864a34e6702562_Out_2_Vector2[1];
|
|
float _Split_2bc77ca2d17bd78cb2383770ce50b179_B_3_Float = 0;
|
|
float _Split_2bc77ca2d17bd78cb2383770ce50b179_A_4_Float = 0;
|
|
float _Multiply_e4fe778b81456d819c52bb414cd95968_Out_2_Float;
|
|
Unity_Multiply_float_float(_SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_B_6_Float, _Split_5ed44bf2eca0868f81eb18100f49d1fa_G_2_Float, _Multiply_e4fe778b81456d819c52bb414cd95968_Out_2_Float);
|
|
float3 _Vector3_08f62c5c01619e849f1a7d85a44531ac_Out_0_Vector3 = float3(_Split_2bc77ca2d17bd78cb2383770ce50b179_R_1_Float, _Multiply_e4fe778b81456d819c52bb414cd95968_Out_2_Float, _Split_2bc77ca2d17bd78cb2383770ce50b179_G_2_Float);
|
|
float3 _Absolute_644b798714827680b39bf5d34f70385f_Out_1_Vector3;
|
|
Unity_Absolute_float3(IN.WorldSpaceNormal, _Absolute_644b798714827680b39bf5d34f70385f_Out_1_Vector3);
|
|
float _Property_adc4c59482221c8aad681c6558728ac9_Out_0_Float = Vector1_E4D1C13A;
|
|
float3 _Power_ee478822a04529849ae8df1636c29fe2_Out_2_Vector3;
|
|
Unity_Power_float3(_Absolute_644b798714827680b39bf5d34f70385f_Out_1_Vector3, (_Property_adc4c59482221c8aad681c6558728ac9_Out_0_Float.xxx), _Power_ee478822a04529849ae8df1636c29fe2_Out_2_Vector3);
|
|
float3 _Multiply_b386a937554d73828e437d126d69608b_Out_2_Vector3;
|
|
Unity_Multiply_float3_float3(_Power_ee478822a04529849ae8df1636c29fe2_Out_2_Vector3, _Power_ee478822a04529849ae8df1636c29fe2_Out_2_Vector3, _Multiply_b386a937554d73828e437d126d69608b_Out_2_Vector3);
|
|
float _Split_ae83014fcbd9f7879a0b91fa66dc9718_R_1_Float = _Multiply_b386a937554d73828e437d126d69608b_Out_2_Vector3[0];
|
|
float _Split_ae83014fcbd9f7879a0b91fa66dc9718_G_2_Float = _Multiply_b386a937554d73828e437d126d69608b_Out_2_Vector3[1];
|
|
float _Split_ae83014fcbd9f7879a0b91fa66dc9718_B_3_Float = _Multiply_b386a937554d73828e437d126d69608b_Out_2_Vector3[2];
|
|
float _Split_ae83014fcbd9f7879a0b91fa66dc9718_A_4_Float = 0;
|
|
float3 _Multiply_2e1040ca9c98d085ace76ee93f094039_Out_2_Vector3;
|
|
Unity_Multiply_float3_float3(_Vector3_08f62c5c01619e849f1a7d85a44531ac_Out_0_Vector3, (_Split_ae83014fcbd9f7879a0b91fa66dc9718_G_2_Float.xxx), _Multiply_2e1040ca9c98d085ace76ee93f094039_Out_2_Vector3);
|
|
float4 _Combine_192c2c4a69be588b90ca005a32e22552_RGBA_4_Vector4;
|
|
float3 _Combine_192c2c4a69be588b90ca005a32e22552_RGB_5_Vector3;
|
|
float2 _Combine_192c2c4a69be588b90ca005a32e22552_RG_6_Vector2;
|
|
Unity_Combine_float(_Split_89ed63cb625cb3878c183d0b71c03400_R_1_Float, _Split_89ed63cb625cb3878c183d0b71c03400_G_2_Float, float(0), float(0), _Combine_192c2c4a69be588b90ca005a32e22552_RGBA_4_Vector4, _Combine_192c2c4a69be588b90ca005a32e22552_RGB_5_Vector3, _Combine_192c2c4a69be588b90ca005a32e22552_RG_6_Vector2);
|
|
float4 _Multiply_138240d0d4846e87b0febabec0d6891b_Out_2_Vector4;
|
|
Unity_Multiply_float4_float4(_Combine_192c2c4a69be588b90ca005a32e22552_RGBA_4_Vector4, (_Property_47988ec10c0c18879d461e00bed806e7_Out_0_Float.xxxx), _Multiply_138240d0d4846e87b0febabec0d6891b_Out_2_Vector4);
|
|
float _Multiply_de711f4a4614bd89a463b53374cf4036_Out_2_Float;
|
|
Unity_Multiply_float_float(_Split_6299d4ddcc4c74828aea40a46fdb896e_B_3_Float, -1, _Multiply_de711f4a4614bd89a463b53374cf4036_Out_2_Float);
|
|
float2 _Vector2_4ed33f0c73b2698fa6f3c1b77fe76808_Out_0_Vector2 = float2(_Multiply_de711f4a4614bd89a463b53374cf4036_Out_2_Float, float(1));
|
|
float2 _Multiply_2af6058cc6ccb88caefd2799bb5941e8_Out_2_Vector2;
|
|
Unity_Multiply_float2_float2((_Multiply_138240d0d4846e87b0febabec0d6891b_Out_2_Vector4.xy), _Vector2_4ed33f0c73b2698fa6f3c1b77fe76808_Out_0_Vector2, _Multiply_2af6058cc6ccb88caefd2799bb5941e8_Out_2_Vector2);
|
|
float4 _SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_RGBA_0_Vector4 = SAMPLE_TEXTURE2D(_Property_3e01b4d2fc68d48ba3acbba9d5881e59_Out_0_Texture2D.tex, _Property_8a2b8589cd3a42a1879a29c28e4f711f_Out_0_SamplerState.samplerstate, _Property_3e01b4d2fc68d48ba3acbba9d5881e59_Out_0_Texture2D.GetTransformedUV(_Multiply_2af6058cc6ccb88caefd2799bb5941e8_Out_2_Vector2) );
|
|
_SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_RGBA_0_Vector4.rgb = UnpackNormal(_SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_RGBA_0_Vector4);
|
|
float _SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_R_4_Float = _SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_RGBA_0_Vector4.r;
|
|
float _SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_G_5_Float = _SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_RGBA_0_Vector4.g;
|
|
float _SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_B_6_Float = _SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_RGBA_0_Vector4.b;
|
|
float _SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_A_7_Float = _SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_RGBA_0_Vector4.a;
|
|
float2 _Vector2_fe9aedd4528c7486ada4abdca0b0944e_Out_0_Vector2 = float2(_SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_R_4_Float, _SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_G_5_Float);
|
|
float2 _Multiply_02b9b4665ad9918d8721bcaddc82f06f_Out_2_Vector2;
|
|
Unity_Multiply_float2_float2(_Vector2_fe9aedd4528c7486ada4abdca0b0944e_Out_0_Vector2, _Vector2_4ed33f0c73b2698fa6f3c1b77fe76808_Out_0_Vector2, _Multiply_02b9b4665ad9918d8721bcaddc82f06f_Out_2_Vector2);
|
|
float2 _Vector2_a74a85274da15181abb63cc5e8df0de1_Out_0_Vector2 = float2(_Split_5ed44bf2eca0868f81eb18100f49d1fa_R_1_Float, _Split_5ed44bf2eca0868f81eb18100f49d1fa_G_2_Float);
|
|
float2 _Add_b227c84042055e8faa1a9fdc69529707_Out_2_Vector2;
|
|
Unity_Add_float2(_Multiply_02b9b4665ad9918d8721bcaddc82f06f_Out_2_Vector2, _Vector2_a74a85274da15181abb63cc5e8df0de1_Out_0_Vector2, _Add_b227c84042055e8faa1a9fdc69529707_Out_2_Vector2);
|
|
float _Split_2cfb9eacd8762483941459cdf28bda97_R_1_Float = _Add_b227c84042055e8faa1a9fdc69529707_Out_2_Vector2[0];
|
|
float _Split_2cfb9eacd8762483941459cdf28bda97_G_2_Float = _Add_b227c84042055e8faa1a9fdc69529707_Out_2_Vector2[1];
|
|
float _Split_2cfb9eacd8762483941459cdf28bda97_B_3_Float = 0;
|
|
float _Split_2cfb9eacd8762483941459cdf28bda97_A_4_Float = 0;
|
|
float _Multiply_1d65ce08ce672087879125f2e13c4004_Out_2_Float;
|
|
Unity_Multiply_float_float(_SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_B_6_Float, _Split_5ed44bf2eca0868f81eb18100f49d1fa_B_3_Float, _Multiply_1d65ce08ce672087879125f2e13c4004_Out_2_Float);
|
|
float3 _Vector3_ba6cfb4671e8c58f9b41ea1dc23102ca_Out_0_Vector3 = float3(_Split_2cfb9eacd8762483941459cdf28bda97_R_1_Float, _Split_2cfb9eacd8762483941459cdf28bda97_G_2_Float, _Multiply_1d65ce08ce672087879125f2e13c4004_Out_2_Float);
|
|
float3 _Multiply_7bb4009c92b108849ac6ca92bc1442f2_Out_2_Vector3;
|
|
Unity_Multiply_float3_float3(_Vector3_ba6cfb4671e8c58f9b41ea1dc23102ca_Out_0_Vector3, (_Split_ae83014fcbd9f7879a0b91fa66dc9718_B_3_Float.xxx), _Multiply_7bb4009c92b108849ac6ca92bc1442f2_Out_2_Vector3);
|
|
float4 _Combine_1e9ffdba42d6918fb7a4b185f1585d2a_RGBA_4_Vector4;
|
|
float3 _Combine_1e9ffdba42d6918fb7a4b185f1585d2a_RGB_5_Vector3;
|
|
float2 _Combine_1e9ffdba42d6918fb7a4b185f1585d2a_RG_6_Vector2;
|
|
Unity_Combine_float(_Split_89ed63cb625cb3878c183d0b71c03400_B_3_Float, _Split_89ed63cb625cb3878c183d0b71c03400_G_2_Float, float(0), float(0), _Combine_1e9ffdba42d6918fb7a4b185f1585d2a_RGBA_4_Vector4, _Combine_1e9ffdba42d6918fb7a4b185f1585d2a_RGB_5_Vector3, _Combine_1e9ffdba42d6918fb7a4b185f1585d2a_RG_6_Vector2);
|
|
float4 _Multiply_2c0864423b014f8b8af8523f68cbb63c_Out_2_Vector4;
|
|
Unity_Multiply_float4_float4(_Combine_1e9ffdba42d6918fb7a4b185f1585d2a_RGBA_4_Vector4, (_Property_47988ec10c0c18879d461e00bed806e7_Out_0_Float.xxxx), _Multiply_2c0864423b014f8b8af8523f68cbb63c_Out_2_Vector4);
|
|
float2 _Vector2_a1e23e0f921b6484818f009a2b12a5ba_Out_0_Vector2 = float2(_Split_6299d4ddcc4c74828aea40a46fdb896e_R_1_Float, float(1));
|
|
float2 _Multiply_862402885a49f18cb87278ab53bc6744_Out_2_Vector2;
|
|
Unity_Multiply_float2_float2((_Multiply_2c0864423b014f8b8af8523f68cbb63c_Out_2_Vector4.xy), _Vector2_a1e23e0f921b6484818f009a2b12a5ba_Out_0_Vector2, _Multiply_862402885a49f18cb87278ab53bc6744_Out_2_Vector2);
|
|
float4 _SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_RGBA_0_Vector4 = SAMPLE_TEXTURE2D(_Property_3e01b4d2fc68d48ba3acbba9d5881e59_Out_0_Texture2D.tex, _Property_8a2b8589cd3a42a1879a29c28e4f711f_Out_0_SamplerState.samplerstate, _Property_3e01b4d2fc68d48ba3acbba9d5881e59_Out_0_Texture2D.GetTransformedUV(_Multiply_862402885a49f18cb87278ab53bc6744_Out_2_Vector2) );
|
|
_SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_RGBA_0_Vector4.rgb = UnpackNormal(_SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_RGBA_0_Vector4);
|
|
float _SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_R_4_Float = _SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_RGBA_0_Vector4.r;
|
|
float _SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_G_5_Float = _SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_RGBA_0_Vector4.g;
|
|
float _SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_B_6_Float = _SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_RGBA_0_Vector4.b;
|
|
float _SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_A_7_Float = _SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_RGBA_0_Vector4.a;
|
|
float _Multiply_4649b768be76d784a3284bacde795359_Out_2_Float;
|
|
Unity_Multiply_float_float(_SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_B_6_Float, _Split_5ed44bf2eca0868f81eb18100f49d1fa_R_1_Float, _Multiply_4649b768be76d784a3284bacde795359_Out_2_Float);
|
|
float2 _Vector2_819fcd5eb484438eacad1987576d7d67_Out_0_Vector2 = float2(_SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_R_4_Float, _SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_G_5_Float);
|
|
float2 _Multiply_58530ebb3c6d798b93686a76247bf505_Out_2_Vector2;
|
|
Unity_Multiply_float2_float2(_Vector2_819fcd5eb484438eacad1987576d7d67_Out_0_Vector2, _Vector2_a1e23e0f921b6484818f009a2b12a5ba_Out_0_Vector2, _Multiply_58530ebb3c6d798b93686a76247bf505_Out_2_Vector2);
|
|
float2 _Vector2_e293c112b2f49e88a5fe46dfb1fbeb40_Out_0_Vector2 = float2(_Split_5ed44bf2eca0868f81eb18100f49d1fa_B_3_Float, _Split_5ed44bf2eca0868f81eb18100f49d1fa_G_2_Float);
|
|
float2 _Add_cf00fb232c6e2b8e973ab2f84453f55e_Out_2_Vector2;
|
|
Unity_Add_float2(_Multiply_58530ebb3c6d798b93686a76247bf505_Out_2_Vector2, _Vector2_e293c112b2f49e88a5fe46dfb1fbeb40_Out_0_Vector2, _Add_cf00fb232c6e2b8e973ab2f84453f55e_Out_2_Vector2);
|
|
float _Split_3ea3e61d32bdd78f82c686b75ff3fd9b_R_1_Float = _Add_cf00fb232c6e2b8e973ab2f84453f55e_Out_2_Vector2[0];
|
|
float _Split_3ea3e61d32bdd78f82c686b75ff3fd9b_G_2_Float = _Add_cf00fb232c6e2b8e973ab2f84453f55e_Out_2_Vector2[1];
|
|
float _Split_3ea3e61d32bdd78f82c686b75ff3fd9b_B_3_Float = 0;
|
|
float _Split_3ea3e61d32bdd78f82c686b75ff3fd9b_A_4_Float = 0;
|
|
float3 _Vector3_13a08d5940172a84a78ee3d9b8766833_Out_0_Vector3 = float3(_Multiply_4649b768be76d784a3284bacde795359_Out_2_Float, _Split_3ea3e61d32bdd78f82c686b75ff3fd9b_G_2_Float, _Split_3ea3e61d32bdd78f82c686b75ff3fd9b_R_1_Float);
|
|
float3 _Multiply_77818c22e359fc8cbb7dd20216a8db72_Out_2_Vector3;
|
|
Unity_Multiply_float3_float3(_Vector3_13a08d5940172a84a78ee3d9b8766833_Out_0_Vector3, (_Split_ae83014fcbd9f7879a0b91fa66dc9718_R_1_Float.xxx), _Multiply_77818c22e359fc8cbb7dd20216a8db72_Out_2_Vector3);
|
|
float3 _Add_769d9ee909c9238dbbf72d2800a2f268_Out_2_Vector3;
|
|
Unity_Add_float3(_Multiply_7bb4009c92b108849ac6ca92bc1442f2_Out_2_Vector3, _Multiply_77818c22e359fc8cbb7dd20216a8db72_Out_2_Vector3, _Add_769d9ee909c9238dbbf72d2800a2f268_Out_2_Vector3);
|
|
float3 _Add_14295f72880e4b87a1baf1ced943ac40_Out_2_Vector3;
|
|
Unity_Add_float3(_Multiply_2e1040ca9c98d085ace76ee93f094039_Out_2_Vector3, _Add_769d9ee909c9238dbbf72d2800a2f268_Out_2_Vector3, _Add_14295f72880e4b87a1baf1ced943ac40_Out_2_Vector3);
|
|
float _Add_e59af300bba2498db32eac1412123447_Out_2_Float;
|
|
Unity_Add_float(_Split_ae83014fcbd9f7879a0b91fa66dc9718_R_1_Float, _Split_ae83014fcbd9f7879a0b91fa66dc9718_G_2_Float, _Add_e59af300bba2498db32eac1412123447_Out_2_Float);
|
|
float _Add_e855069f047fae8ea9027d56acb61e56_Out_2_Float;
|
|
Unity_Add_float(_Add_e59af300bba2498db32eac1412123447_Out_2_Float, _Split_ae83014fcbd9f7879a0b91fa66dc9718_B_3_Float, _Add_e855069f047fae8ea9027d56acb61e56_Out_2_Float);
|
|
float3 _Divide_91ae4b94f1d9b78e99d0472293b8098c_Out_2_Vector3;
|
|
Unity_Divide_float3(_Add_14295f72880e4b87a1baf1ced943ac40_Out_2_Vector3, (_Add_e855069f047fae8ea9027d56acb61e56_Out_2_Float.xxx), _Divide_91ae4b94f1d9b78e99d0472293b8098c_Out_2_Vector3);
|
|
float3 _Transform_73eecc0c3689d184a34c8d0f28a58adf_Out_1_Vector3;
|
|
{
|
|
float3x3 tangentTransform = float3x3(IN.WorldSpaceTangent, IN.WorldSpaceBiTangent, IN.WorldSpaceNormal);
|
|
_Transform_73eecc0c3689d184a34c8d0f28a58adf_Out_1_Vector3 = TransformWorldToTangent(_Divide_91ae4b94f1d9b78e99d0472293b8098c_Out_2_Vector3.xyz, tangentTransform, true);
|
|
}
|
|
float3 _Normalize_15ef346824db0a8797631ed8b998e673_Out_1_Vector3;
|
|
Unity_Normalize_float3(_Transform_73eecc0c3689d184a34c8d0f28a58adf_Out_1_Vector3, _Normalize_15ef346824db0a8797631ed8b998e673_Out_1_Vector3);
|
|
XYZ_1 = (float4(_Normalize_15ef346824db0a8797631ed8b998e673_Out_1_Vector3, 1.0));
|
|
XZ_2 = (float4(_Vector3_08f62c5c01619e849f1a7d85a44531ac_Out_0_Vector3, 1.0));
|
|
YZ_3 = (float4(_Vector3_ba6cfb4671e8c58f9b41ea1dc23102ca_Out_0_Vector3, 1.0));
|
|
XY_4 = (float4(_Vector3_13a08d5940172a84a78ee3d9b8766833_Out_0_Vector3, 1.0));
|
|
}
|
|
|
|
void Unity_NormalStrength_float(float3 In, float Strength, out float3 Out)
|
|
{
|
|
Out = float3(In.rg * Strength, lerp(1, In.b, saturate(Strength)));
|
|
}
|
|
|
|
void Unity_NormalBlend_float(float3 A, float3 B, out float3 Out)
|
|
{
|
|
Out = SafeNormalize(float3(A.rg + B.rg, A.b * B.b));
|
|
}
|
|
|
|
void Unity_Subtract_float(float A, float B, out float Out)
|
|
{
|
|
Out = A - B;
|
|
}
|
|
|
|
void Unity_Divide_float(float A, float B, out float Out)
|
|
{
|
|
Out = A / B;
|
|
}
|
|
|
|
void Unity_Lerp_float3(float3 A, float3 B, float3 T, out float3 Out)
|
|
{
|
|
Out = lerp(A, B, T);
|
|
}
|
|
|
|
void Unity_Remap_float(float In, float2 InMinMax, float2 OutMinMax, out float Out)
|
|
{
|
|
Out = OutMinMax.x + (In - InMinMax.x) * (OutMinMax.y - OutMinMax.x) / (InMinMax.y - InMinMax.x);
|
|
}
|
|
|
|
void Unity_Branch_float(float Predicate, float True, float False, out float Out)
|
|
{
|
|
Out = Predicate ? True : False;
|
|
}
|
|
|
|
void Unity_Lerp_float(float A, float B, float T, out float Out)
|
|
{
|
|
Out = lerp(A, B, T);
|
|
}
|
|
|
|
struct Bindings_BlendOverlayDetailSmoothness_06e12138dc89c0040b45a57abe520a1a_float
|
|
{
|
|
};
|
|
|
|
void SG_BlendOverlayDetailSmoothness_06e12138dc89c0040b45a57abe520a1a_float(float Vector1_32317166, float Vector1_FBE622A2, float Vector1_8C15C351, Bindings_BlendOverlayDetailSmoothness_06e12138dc89c0040b45a57abe520a1a_float IN, out float SmoothnessOverlay_1)
|
|
{
|
|
float _Property_728cc50521e9e988ac9cbff4872d5139_Out_0_Float = Vector1_32317166;
|
|
float _Property_a00e29241d12f983b30177515b367ec9_Out_0_Float = Vector1_FBE622A2;
|
|
float _Sign_343a45ede7349283a681c6bd9998fd8e_Out_1_Float;
|
|
Unity_Sign_float(_Property_a00e29241d12f983b30177515b367ec9_Out_0_Float, _Sign_343a45ede7349283a681c6bd9998fd8e_Out_1_Float);
|
|
float _Add_681019b8f5d3d68bb482d419c9fc61a9_Out_2_Float;
|
|
Unity_Add_float(_Sign_343a45ede7349283a681c6bd9998fd8e_Out_1_Float, float(1), _Add_681019b8f5d3d68bb482d419c9fc61a9_Out_2_Float);
|
|
float _Multiply_e8f4cb722712a880ac0db6c7461427f7_Out_2_Float;
|
|
Unity_Multiply_float_float(_Add_681019b8f5d3d68bb482d419c9fc61a9_Out_2_Float, 0.5, _Multiply_e8f4cb722712a880ac0db6c7461427f7_Out_2_Float);
|
|
float _Ceiling_95ad15988aa9b98184875fa754feae01_Out_1_Float;
|
|
Unity_Ceiling_float(_Multiply_e8f4cb722712a880ac0db6c7461427f7_Out_2_Float, _Ceiling_95ad15988aa9b98184875fa754feae01_Out_1_Float);
|
|
float _Property_2db1c747a05ee284a8b00076062f91a4_Out_0_Float = Vector1_8C15C351;
|
|
float _Lerp_b3cdb01fc3c5b988ac9b184943bf7c01_Out_3_Float;
|
|
Unity_Lerp_float(_Property_728cc50521e9e988ac9cbff4872d5139_Out_0_Float, _Ceiling_95ad15988aa9b98184875fa754feae01_Out_1_Float, _Property_2db1c747a05ee284a8b00076062f91a4_Out_0_Float, _Lerp_b3cdb01fc3c5b988ac9b184943bf7c01_Out_3_Float);
|
|
SmoothnessOverlay_1 = _Lerp_b3cdb01fc3c5b988ac9b184943bf7c01_Out_3_Float;
|
|
}
|
|
|
|
void Unity_Minimum_float(float A, float B, out float Out)
|
|
{
|
|
Out = min(A, B);
|
|
};
|
|
|
|
// Graph Vertex
|
|
struct VertexDescription
|
|
{
|
|
float3 Position;
|
|
float3 Normal;
|
|
float3 Tangent;
|
|
};
|
|
|
|
VertexDescription VertexDescriptionFunction(VertexDescriptionInputs IN)
|
|
{
|
|
VertexDescription description = (VertexDescription)0;
|
|
description.Position = IN.ObjectSpacePosition;
|
|
description.Normal = IN.ObjectSpaceNormal;
|
|
description.Tangent = IN.ObjectSpaceTangent;
|
|
return description;
|
|
}
|
|
|
|
// Graph Pixel
|
|
struct SurfaceDescription
|
|
{
|
|
float3 BaseColor;
|
|
float3 Emission;
|
|
float Alpha;
|
|
float3 BentNormal;
|
|
float Smoothness;
|
|
float Occlusion;
|
|
float3 NormalTS;
|
|
float Metallic;
|
|
};
|
|
|
|
SurfaceDescription SurfaceDescriptionFunction(SurfaceDescriptionInputs IN)
|
|
{
|
|
SurfaceDescription surface = (SurfaceDescription)0;
|
|
float _Property_72a5c604805a7b8ebbfd7acee03656aa_Out_0_Boolean = _CoverMaskRCurvature;
|
|
UnityTexture2D _Property_5f029bbc9f13b7858650859c3b63ebfd_Out_0_Texture2D = UnityBuildTexture2DStructNoScale(_BaseColorMap);
|
|
float4 _Property_a409d5fcafb9f182a4b2aea64204408f_Out_0_Vector4 = _BaseTilingOffset;
|
|
float4 _Divide_6a90cebe78e620828de587523daaa7e6_Out_2_Vector4;
|
|
Unity_Divide_float4(float4(1, 1, 0, 0), _Property_a409d5fcafb9f182a4b2aea64204408f_Out_0_Vector4, _Divide_6a90cebe78e620828de587523daaa7e6_Out_2_Vector4);
|
|
float _Property_3539de8c698c2981bb3c088d4ec52201_Out_0_Float = _BaseTriplanarThreshold;
|
|
Bindings_TriplanarNM_bc609ed95f52591469ab35dbfe0efcea_float _TriplanarNM_92d0433ff3938b8392407d2ab8713ac8;
|
|
_TriplanarNM_92d0433ff3938b8392407d2ab8713ac8.WorldSpaceNormal = IN.WorldSpaceNormal;
|
|
_TriplanarNM_92d0433ff3938b8392407d2ab8713ac8.AbsoluteWorldSpacePosition = IN.AbsoluteWorldSpacePosition;
|
|
float4 _TriplanarNM_92d0433ff3938b8392407d2ab8713ac8_XYZ_1_Vector4;
|
|
float4 _TriplanarNM_92d0433ff3938b8392407d2ab8713ac8_XZ_2_Vector4;
|
|
float4 _TriplanarNM_92d0433ff3938b8392407d2ab8713ac8_YZ_3_Vector4;
|
|
float4 _TriplanarNM_92d0433ff3938b8392407d2ab8713ac8_XY_4_Vector4;
|
|
SG_TriplanarNM_bc609ed95f52591469ab35dbfe0efcea_float(_Property_5f029bbc9f13b7858650859c3b63ebfd_Out_0_Texture2D, (_Divide_6a90cebe78e620828de587523daaa7e6_Out_2_Vector4).x, _Property_3539de8c698c2981bb3c088d4ec52201_Out_0_Float, UnityBuildSamplerStateStruct(SamplerState_Linear_Repeat_Aniso8), _TriplanarNM_92d0433ff3938b8392407d2ab8713ac8, _TriplanarNM_92d0433ff3938b8392407d2ab8713ac8_XYZ_1_Vector4, _TriplanarNM_92d0433ff3938b8392407d2ab8713ac8_XZ_2_Vector4, _TriplanarNM_92d0433ff3938b8392407d2ab8713ac8_YZ_3_Vector4, _TriplanarNM_92d0433ff3938b8392407d2ab8713ac8_XY_4_Vector4);
|
|
float4 _Property_87cd542c2b8c30868ed1d7d38aed8f2b_Out_0_Vector4 = _BaseColor;
|
|
float4 _Multiply_4b2be0b3fe39f385b887e7c82ab41e0b_Out_2_Vector4;
|
|
Unity_Multiply_float4_float4(_TriplanarNM_92d0433ff3938b8392407d2ab8713ac8_XYZ_1_Vector4, _Property_87cd542c2b8c30868ed1d7d38aed8f2b_Out_0_Vector4, _Multiply_4b2be0b3fe39f385b887e7c82ab41e0b_Out_2_Vector4);
|
|
UnityTexture2D _Property_c167aafac28bd98c8411d3e25631fdeb_Out_0_Texture2D = UnityBuildTexture2DStructNoScale(_CoverMaskA);
|
|
float4 _UV_e143f0ebbac8bb8cab3206ab93422dda_Out_0_Vector4 = IN.uv0;
|
|
float4 _SampleTexture2D_32717b1e99785588830ceee116cbe7fc_RGBA_0_Vector4 = SAMPLE_TEXTURE2D(_Property_c167aafac28bd98c8411d3e25631fdeb_Out_0_Texture2D.tex, _Property_c167aafac28bd98c8411d3e25631fdeb_Out_0_Texture2D.samplerstate, _Property_c167aafac28bd98c8411d3e25631fdeb_Out_0_Texture2D.GetTransformedUV((_UV_e143f0ebbac8bb8cab3206ab93422dda_Out_0_Vector4.xy)) );
|
|
float _SampleTexture2D_32717b1e99785588830ceee116cbe7fc_R_4_Float = _SampleTexture2D_32717b1e99785588830ceee116cbe7fc_RGBA_0_Vector4.r;
|
|
float _SampleTexture2D_32717b1e99785588830ceee116cbe7fc_G_5_Float = _SampleTexture2D_32717b1e99785588830ceee116cbe7fc_RGBA_0_Vector4.g;
|
|
float _SampleTexture2D_32717b1e99785588830ceee116cbe7fc_B_6_Float = _SampleTexture2D_32717b1e99785588830ceee116cbe7fc_RGBA_0_Vector4.b;
|
|
float _SampleTexture2D_32717b1e99785588830ceee116cbe7fc_A_7_Float = _SampleTexture2D_32717b1e99785588830ceee116cbe7fc_RGBA_0_Vector4.a;
|
|
float _Multiply_01f97603c3df268380d339564b08db11_Out_2_Float;
|
|
Unity_Multiply_float_float(_SampleTexture2D_32717b1e99785588830ceee116cbe7fc_R_4_Float, 2, _Multiply_01f97603c3df268380d339564b08db11_Out_2_Float);
|
|
float _Property_cad777e9a810198e8076eb2cd76e6817_Out_0_Float = _BaseDarknessCurvMultply;
|
|
float _Multiply_b67c8963c3ba188e85b84ae9bf0dcbf7_Out_2_Float;
|
|
Unity_Multiply_float_float(_Multiply_01f97603c3df268380d339564b08db11_Out_2_Float, _Property_cad777e9a810198e8076eb2cd76e6817_Out_0_Float, _Multiply_b67c8963c3ba188e85b84ae9bf0dcbf7_Out_2_Float);
|
|
float _Clamp_646f55d74b38f18aa983e5d031e0e7c3_Out_3_Float;
|
|
Unity_Clamp_float(_Multiply_b67c8963c3ba188e85b84ae9bf0dcbf7_Out_2_Float, float(0), float(1), _Clamp_646f55d74b38f18aa983e5d031e0e7c3_Out_3_Float);
|
|
float _Absolute_c99e11216fab2488946eb6243d985fdc_Out_1_Float;
|
|
Unity_Absolute_float(_Clamp_646f55d74b38f18aa983e5d031e0e7c3_Out_3_Float, _Absolute_c99e11216fab2488946eb6243d985fdc_Out_1_Float);
|
|
float _Property_f8a9827e6f28d9819188d4775dcf7620_Out_0_Float = _BaseDarknessCurvPower;
|
|
float _Power_1b88303e1ca2f285b344bf6aa0cf05e4_Out_2_Float;
|
|
Unity_Power_float(_Absolute_c99e11216fab2488946eb6243d985fdc_Out_1_Float, _Property_f8a9827e6f28d9819188d4775dcf7620_Out_0_Float, _Power_1b88303e1ca2f285b344bf6aa0cf05e4_Out_2_Float);
|
|
float _Clamp_27887d983dbb5a8bbd2966fbcbd7c126_Out_3_Float;
|
|
Unity_Clamp_float(_Power_1b88303e1ca2f285b344bf6aa0cf05e4_Out_2_Float, float(0), float(1), _Clamp_27887d983dbb5a8bbd2966fbcbd7c126_Out_3_Float);
|
|
float4 _Multiply_59efbfb897b39480ad44be129db72018_Out_2_Vector4;
|
|
Unity_Multiply_float4_float4(_Multiply_4b2be0b3fe39f385b887e7c82ab41e0b_Out_2_Vector4, (_Clamp_27887d983dbb5a8bbd2966fbcbd7c126_Out_3_Float.xxxx), _Multiply_59efbfb897b39480ad44be129db72018_Out_2_Vector4);
|
|
float4 _Clamp_841e38951a68f286955c4755e78c610b_Out_3_Vector4;
|
|
Unity_Clamp_float4(_Multiply_59efbfb897b39480ad44be129db72018_Out_2_Vector4, float4(0, 0, 0, 0), float4(1, 1, 1, 1), _Clamp_841e38951a68f286955c4755e78c610b_Out_3_Vector4);
|
|
float _Add_d7ea4a88c4af4886b1e567ddd2b963f9_Out_2_Float;
|
|
Unity_Add_float(_Multiply_01f97603c3df268380d339564b08db11_Out_2_Float, float(-1), _Add_d7ea4a88c4af4886b1e567ddd2b963f9_Out_2_Float);
|
|
float _Clamp_1a02c4bf5903c988b1489d14c840c1e3_Out_3_Float;
|
|
Unity_Clamp_float(_Add_d7ea4a88c4af4886b1e567ddd2b963f9_Out_2_Float, float(0), float(1), _Clamp_1a02c4bf5903c988b1489d14c840c1e3_Out_3_Float);
|
|
float _Property_0e0e1ec2131cec87836dce596351dc1c_Out_0_Float = _BaseBrightnessCurvMultply;
|
|
float _Multiply_c975dfa7de001c89addd082d443e2d07_Out_2_Float;
|
|
Unity_Multiply_float_float(_Clamp_1a02c4bf5903c988b1489d14c840c1e3_Out_3_Float, _Property_0e0e1ec2131cec87836dce596351dc1c_Out_0_Float, _Multiply_c975dfa7de001c89addd082d443e2d07_Out_2_Float);
|
|
float _Clamp_d5711b145a87ef8e8a93ceb9b6197759_Out_3_Float;
|
|
Unity_Clamp_float(_Multiply_c975dfa7de001c89addd082d443e2d07_Out_2_Float, float(0), float(1), _Clamp_d5711b145a87ef8e8a93ceb9b6197759_Out_3_Float);
|
|
float _Absolute_8f9bd7ee7a35c18084d08ad7ef463f52_Out_1_Float;
|
|
Unity_Absolute_float(_Clamp_d5711b145a87ef8e8a93ceb9b6197759_Out_3_Float, _Absolute_8f9bd7ee7a35c18084d08ad7ef463f52_Out_1_Float);
|
|
float _Property_9092f5beea2bec83a5c8a3f6623953a6_Out_0_Float = _BaseBrightnessCurvPower;
|
|
float _Power_5c1a81a2cfcc578996666adb93479f83_Out_2_Float;
|
|
Unity_Power_float(_Absolute_8f9bd7ee7a35c18084d08ad7ef463f52_Out_1_Float, _Property_9092f5beea2bec83a5c8a3f6623953a6_Out_0_Float, _Power_5c1a81a2cfcc578996666adb93479f83_Out_2_Float);
|
|
float _Clamp_f3c614a7ae35508288c0bc3f6194ca34_Out_3_Float;
|
|
Unity_Clamp_float(_Power_5c1a81a2cfcc578996666adb93479f83_Out_2_Float, float(0), float(1), _Clamp_f3c614a7ae35508288c0bc3f6194ca34_Out_3_Float);
|
|
float4 _Add_8313e15cade91a8ba653986d6722818a_Out_2_Vector4;
|
|
Unity_Add_float4(_Clamp_841e38951a68f286955c4755e78c610b_Out_3_Vector4, (_Clamp_f3c614a7ae35508288c0bc3f6194ca34_Out_3_Float.xxxx), _Add_8313e15cade91a8ba653986d6722818a_Out_2_Vector4);
|
|
float4 _Clamp_6dc8fea4fa463b8ea840911fd315c80f_Out_3_Vector4;
|
|
Unity_Clamp_float4(_Add_8313e15cade91a8ba653986d6722818a_Out_2_Vector4, float4(0, 0, 0, 0), float4(1, 1, 1, 1), _Clamp_6dc8fea4fa463b8ea840911fd315c80f_Out_3_Vector4);
|
|
float4 _Branch_26165227c7a50284b87d2996dee9982c_Out_3_Vector4;
|
|
Unity_Branch_float4(_Property_72a5c604805a7b8ebbfd7acee03656aa_Out_0_Boolean, _Clamp_6dc8fea4fa463b8ea840911fd315c80f_Out_3_Vector4, _Multiply_4b2be0b3fe39f385b887e7c82ab41e0b_Out_2_Vector4, _Branch_26165227c7a50284b87d2996dee9982c_Out_3_Vector4);
|
|
UnityTexture2D _Property_2e62abc1fe8adb8b8ff655b8448be202_Out_0_Texture2D = UnityBuildTexture2DStructNoScale(_DetailMap);
|
|
float4 _Property_b86e0ee324ffb58a92473eab69864d04_Out_0_Vector4 = _DetailTilingOffset;
|
|
float _Split_e832641c05503286a4951c0a93621755_R_1_Float = _Property_b86e0ee324ffb58a92473eab69864d04_Out_0_Vector4[0];
|
|
float _Split_e832641c05503286a4951c0a93621755_G_2_Float = _Property_b86e0ee324ffb58a92473eab69864d04_Out_0_Vector4[1];
|
|
float _Split_e832641c05503286a4951c0a93621755_B_3_Float = _Property_b86e0ee324ffb58a92473eab69864d04_Out_0_Vector4[2];
|
|
float _Split_e832641c05503286a4951c0a93621755_A_4_Float = _Property_b86e0ee324ffb58a92473eab69864d04_Out_0_Vector4[3];
|
|
float2 _Vector2_4b5eef288b3d4c83b24e4ab653f55ec8_Out_0_Vector2 = float2(_Split_e832641c05503286a4951c0a93621755_R_1_Float, _Split_e832641c05503286a4951c0a93621755_G_2_Float);
|
|
float2 _Vector2_2925cf98ba16b08dabc58cd65efd17db_Out_0_Vector2 = float2(_Split_e832641c05503286a4951c0a93621755_B_3_Float, _Split_e832641c05503286a4951c0a93621755_A_4_Float);
|
|
float2 _TilingAndOffset_74f6566eba9ccd899de18c0b11b7a7a2_Out_3_Vector2;
|
|
Unity_TilingAndOffset_float(IN.uv0.xy, _Vector2_4b5eef288b3d4c83b24e4ab653f55ec8_Out_0_Vector2, _Vector2_2925cf98ba16b08dabc58cd65efd17db_Out_0_Vector2, _TilingAndOffset_74f6566eba9ccd899de18c0b11b7a7a2_Out_3_Vector2);
|
|
float4 _SampleTexture2D_4bd08411faa60c828847f2247f06a809_RGBA_0_Vector4 = SAMPLE_TEXTURE2D(_Property_2e62abc1fe8adb8b8ff655b8448be202_Out_0_Texture2D.tex, _Property_2e62abc1fe8adb8b8ff655b8448be202_Out_0_Texture2D.samplerstate, _Property_2e62abc1fe8adb8b8ff655b8448be202_Out_0_Texture2D.GetTransformedUV(_TilingAndOffset_74f6566eba9ccd899de18c0b11b7a7a2_Out_3_Vector2) );
|
|
float _SampleTexture2D_4bd08411faa60c828847f2247f06a809_R_4_Float = _SampleTexture2D_4bd08411faa60c828847f2247f06a809_RGBA_0_Vector4.r;
|
|
float _SampleTexture2D_4bd08411faa60c828847f2247f06a809_G_5_Float = _SampleTexture2D_4bd08411faa60c828847f2247f06a809_RGBA_0_Vector4.g;
|
|
float _SampleTexture2D_4bd08411faa60c828847f2247f06a809_B_6_Float = _SampleTexture2D_4bd08411faa60c828847f2247f06a809_RGBA_0_Vector4.b;
|
|
float _SampleTexture2D_4bd08411faa60c828847f2247f06a809_A_7_Float = _SampleTexture2D_4bd08411faa60c828847f2247f06a809_RGBA_0_Vector4.a;
|
|
float _Multiply_ee5a3ccdebd1af84920cd1455a59468b_Out_2_Float;
|
|
Unity_Multiply_float_float(_SampleTexture2D_4bd08411faa60c828847f2247f06a809_R_4_Float, 2, _Multiply_ee5a3ccdebd1af84920cd1455a59468b_Out_2_Float);
|
|
float _Add_b8d727bda34294808f98551e67aa852f_Out_2_Float;
|
|
Unity_Add_float(_Multiply_ee5a3ccdebd1af84920cd1455a59468b_Out_2_Float, float(-1), _Add_b8d727bda34294808f98551e67aa852f_Out_2_Float);
|
|
float _Property_4634e589b03f6983b90fa6aaee0ed5f6_Out_0_Float = _DetailAlbedoScale;
|
|
float _Multiply_f0ed5a95f800c68aa9f7ea2f1322cc31_Out_2_Float;
|
|
Unity_Multiply_float_float(_Add_b8d727bda34294808f98551e67aa852f_Out_2_Float, _Property_4634e589b03f6983b90fa6aaee0ed5f6_Out_0_Float, _Multiply_f0ed5a95f800c68aa9f7ea2f1322cc31_Out_2_Float);
|
|
float _Saturate_469298b4e783d887889b71dc48b4399f_Out_1_Float;
|
|
Unity_Saturate_float(_Multiply_f0ed5a95f800c68aa9f7ea2f1322cc31_Out_2_Float, _Saturate_469298b4e783d887889b71dc48b4399f_Out_1_Float);
|
|
float _Absolute_3b29f3ceceba148189d11e0195af4be2_Out_1_Float;
|
|
Unity_Absolute_float(_Saturate_469298b4e783d887889b71dc48b4399f_Out_1_Float, _Absolute_3b29f3ceceba148189d11e0195af4be2_Out_1_Float);
|
|
Bindings_BlendOverlayBaseColor_acdb3dfca72bd6b42bbc35f4613331a2_float _BlendOverlayBaseColor_369c0b6a02e62b809dc5c6ac1efddde2;
|
|
float3 _BlendOverlayBaseColor_369c0b6a02e62b809dc5c6ac1efddde2_OutVector4_1_Vector3;
|
|
SG_BlendOverlayBaseColor_acdb3dfca72bd6b42bbc35f4613331a2_float(_Branch_26165227c7a50284b87d2996dee9982c_Out_3_Vector4, _Add_b8d727bda34294808f98551e67aa852f_Out_2_Float, _Absolute_3b29f3ceceba148189d11e0195af4be2_Out_1_Float, _BlendOverlayBaseColor_369c0b6a02e62b809dc5c6ac1efddde2, _BlendOverlayBaseColor_369c0b6a02e62b809dc5c6ac1efddde2_OutVector4_1_Vector3);
|
|
UnityTexture2D _Property_9a8451520f254f84a21875f3dac8cbe3_Out_0_Texture2D = UnityBuildTexture2DStructNoScale(_CoverBaseColorMap);
|
|
float4 _Property_c853e88632d9fd85ac0e98d12083eb62_Out_0_Vector4 = _CoverTilingOffset;
|
|
float4 _Divide_1fe314f1ca9dd78fbf366bbeb40e4ccf_Out_2_Vector4;
|
|
Unity_Divide_float4(float4(1, 1, 0, 0), _Property_c853e88632d9fd85ac0e98d12083eb62_Out_0_Vector4, _Divide_1fe314f1ca9dd78fbf366bbeb40e4ccf_Out_2_Vector4);
|
|
float _Property_ee792eccbb538a878b19be5db264531e_Out_0_Float = _CoverTriplanarThreshold;
|
|
Bindings_TriplanarNM_bc609ed95f52591469ab35dbfe0efcea_float _TriplanarNM_cca4c45d91c87989990c532a04e9e8e1;
|
|
_TriplanarNM_cca4c45d91c87989990c532a04e9e8e1.WorldSpaceNormal = IN.WorldSpaceNormal;
|
|
_TriplanarNM_cca4c45d91c87989990c532a04e9e8e1.AbsoluteWorldSpacePosition = IN.AbsoluteWorldSpacePosition;
|
|
float4 _TriplanarNM_cca4c45d91c87989990c532a04e9e8e1_XYZ_1_Vector4;
|
|
float4 _TriplanarNM_cca4c45d91c87989990c532a04e9e8e1_XZ_2_Vector4;
|
|
float4 _TriplanarNM_cca4c45d91c87989990c532a04e9e8e1_YZ_3_Vector4;
|
|
float4 _TriplanarNM_cca4c45d91c87989990c532a04e9e8e1_XY_4_Vector4;
|
|
SG_TriplanarNM_bc609ed95f52591469ab35dbfe0efcea_float(_Property_9a8451520f254f84a21875f3dac8cbe3_Out_0_Texture2D, (_Divide_1fe314f1ca9dd78fbf366bbeb40e4ccf_Out_2_Vector4).x, _Property_ee792eccbb538a878b19be5db264531e_Out_0_Float, UnityBuildSamplerStateStruct(SamplerState_Linear_Repeat_Aniso8), _TriplanarNM_cca4c45d91c87989990c532a04e9e8e1, _TriplanarNM_cca4c45d91c87989990c532a04e9e8e1_XYZ_1_Vector4, _TriplanarNM_cca4c45d91c87989990c532a04e9e8e1_XZ_2_Vector4, _TriplanarNM_cca4c45d91c87989990c532a04e9e8e1_YZ_3_Vector4, _TriplanarNM_cca4c45d91c87989990c532a04e9e8e1_XY_4_Vector4);
|
|
float4 _Property_18c743619f52288dbe24e28326388b00_Out_0_Vector4 = _CoverBaseColor;
|
|
float4 _Multiply_62594f3b30470e86a813e1224c48902e_Out_2_Vector4;
|
|
Unity_Multiply_float4_float4(_TriplanarNM_cca4c45d91c87989990c532a04e9e8e1_XYZ_1_Vector4, _Property_18c743619f52288dbe24e28326388b00_Out_0_Vector4, _Multiply_62594f3b30470e86a813e1224c48902e_Out_2_Vector4);
|
|
float _Multiply_5378fc524597f98fb32eeb561a7390e9_Out_2_Float;
|
|
Unity_Multiply_float_float(_SampleTexture2D_32717b1e99785588830ceee116cbe7fc_R_4_Float, 2, _Multiply_5378fc524597f98fb32eeb561a7390e9_Out_2_Float);
|
|
float _Property_8a72d97c1c527c8f8e0cc71214498065_Out_0_Float = _CoverDarknessCurvMultply;
|
|
float _Multiply_22683a720176a788a2ce404dbddd837c_Out_2_Float;
|
|
Unity_Multiply_float_float(_Multiply_5378fc524597f98fb32eeb561a7390e9_Out_2_Float, _Property_8a72d97c1c527c8f8e0cc71214498065_Out_0_Float, _Multiply_22683a720176a788a2ce404dbddd837c_Out_2_Float);
|
|
float _Clamp_5a638fb628222d8a97865d9029554fe2_Out_3_Float;
|
|
Unity_Clamp_float(_Multiply_22683a720176a788a2ce404dbddd837c_Out_2_Float, float(0), float(1), _Clamp_5a638fb628222d8a97865d9029554fe2_Out_3_Float);
|
|
float _Absolute_11985e8863bf2b8ca0bda90bca829348_Out_1_Float;
|
|
Unity_Absolute_float(_Clamp_5a638fb628222d8a97865d9029554fe2_Out_3_Float, _Absolute_11985e8863bf2b8ca0bda90bca829348_Out_1_Float);
|
|
float _Property_aba5acef910eee88b110d565674a9e36_Out_0_Float = _CoverDarknessCurvPower;
|
|
float _Power_da9b537d80a58d85a88e72c2a5d01e7c_Out_2_Float;
|
|
Unity_Power_float(_Absolute_11985e8863bf2b8ca0bda90bca829348_Out_1_Float, _Property_aba5acef910eee88b110d565674a9e36_Out_0_Float, _Power_da9b537d80a58d85a88e72c2a5d01e7c_Out_2_Float);
|
|
float _Clamp_77228e2a7266fa8ca042eae2f0701342_Out_3_Float;
|
|
Unity_Clamp_float(_Power_da9b537d80a58d85a88e72c2a5d01e7c_Out_2_Float, float(0), float(1), _Clamp_77228e2a7266fa8ca042eae2f0701342_Out_3_Float);
|
|
float4 _Multiply_2111c8ad39d5e68caf4893a41a3bad7d_Out_2_Vector4;
|
|
Unity_Multiply_float4_float4(_Multiply_62594f3b30470e86a813e1224c48902e_Out_2_Vector4, (_Clamp_77228e2a7266fa8ca042eae2f0701342_Out_3_Float.xxxx), _Multiply_2111c8ad39d5e68caf4893a41a3bad7d_Out_2_Vector4);
|
|
float4 _Clamp_b489ebb9d7d18282a342100f4d2fa72d_Out_3_Vector4;
|
|
Unity_Clamp_float4(_Multiply_2111c8ad39d5e68caf4893a41a3bad7d_Out_2_Vector4, float4(0, 0, 0, 0), float4(1, 1, 1, 1), _Clamp_b489ebb9d7d18282a342100f4d2fa72d_Out_3_Vector4);
|
|
float _Add_7eea819e47ffe58cbb3ec5877a181444_Out_2_Float;
|
|
Unity_Add_float(_Multiply_5378fc524597f98fb32eeb561a7390e9_Out_2_Float, float(-1), _Add_7eea819e47ffe58cbb3ec5877a181444_Out_2_Float);
|
|
float _Clamp_b5e4f47c0358dc87b5f9fdb3a360e9e9_Out_3_Float;
|
|
Unity_Clamp_float(_Add_7eea819e47ffe58cbb3ec5877a181444_Out_2_Float, float(0), float(1), _Clamp_b5e4f47c0358dc87b5f9fdb3a360e9e9_Out_3_Float);
|
|
float _Property_753051c96a90798fa7d94cff4173d6e6_Out_0_Float = _CoverBrightnessCurvMultply;
|
|
float _Multiply_c650497abc44d98882ce0091d10c4356_Out_2_Float;
|
|
Unity_Multiply_float_float(_Clamp_b5e4f47c0358dc87b5f9fdb3a360e9e9_Out_3_Float, _Property_753051c96a90798fa7d94cff4173d6e6_Out_0_Float, _Multiply_c650497abc44d98882ce0091d10c4356_Out_2_Float);
|
|
float _Clamp_c508dc61e0cb2a829429559098f34f9a_Out_3_Float;
|
|
Unity_Clamp_float(_Multiply_c650497abc44d98882ce0091d10c4356_Out_2_Float, float(0), float(1), _Clamp_c508dc61e0cb2a829429559098f34f9a_Out_3_Float);
|
|
float _Absolute_2cff2da32d80c286acbb99de611f381a_Out_1_Float;
|
|
Unity_Absolute_float(_Clamp_c508dc61e0cb2a829429559098f34f9a_Out_3_Float, _Absolute_2cff2da32d80c286acbb99de611f381a_Out_1_Float);
|
|
float _Property_ce4610db7b6d0c8bb7fb318210d3e83f_Out_0_Float = _CoverBrightnessCurvPower;
|
|
float _Power_c21df4d2e5ea448281f9ac0f4a140b9e_Out_2_Float;
|
|
Unity_Power_float(_Absolute_2cff2da32d80c286acbb99de611f381a_Out_1_Float, _Property_ce4610db7b6d0c8bb7fb318210d3e83f_Out_0_Float, _Power_c21df4d2e5ea448281f9ac0f4a140b9e_Out_2_Float);
|
|
float _Clamp_fd095a9d6c2b9881ae5875ed126bf3fb_Out_3_Float;
|
|
Unity_Clamp_float(_Power_c21df4d2e5ea448281f9ac0f4a140b9e_Out_2_Float, float(0), float(1), _Clamp_fd095a9d6c2b9881ae5875ed126bf3fb_Out_3_Float);
|
|
float4 _Add_4a02758b9a29b18180516bf3c3ede263_Out_2_Vector4;
|
|
Unity_Add_float4(_Clamp_b489ebb9d7d18282a342100f4d2fa72d_Out_3_Vector4, (_Clamp_fd095a9d6c2b9881ae5875ed126bf3fb_Out_3_Float.xxxx), _Add_4a02758b9a29b18180516bf3c3ede263_Out_2_Vector4);
|
|
float4 _Clamp_632e3d64ab55648f927a79cef68f3396_Out_3_Vector4;
|
|
Unity_Clamp_float4(_Add_4a02758b9a29b18180516bf3c3ede263_Out_2_Vector4, float4(0, 0, 0, 0), float4(1, 1, 1, 1), _Clamp_632e3d64ab55648f927a79cef68f3396_Out_3_Vector4);
|
|
float4 _Branch_0c5221a996e29186a372734bf5c30a51_Out_3_Vector4;
|
|
Unity_Branch_float4(_Property_72a5c604805a7b8ebbfd7acee03656aa_Out_0_Boolean, _Clamp_632e3d64ab55648f927a79cef68f3396_Out_3_Vector4, _Multiply_62594f3b30470e86a813e1224c48902e_Out_2_Vector4, _Branch_0c5221a996e29186a372734bf5c30a51_Out_3_Vector4);
|
|
float _Multiply_6a55591ceae0dc86a971a275e316fec6_Out_2_Float;
|
|
Unity_Multiply_float_float(_SampleTexture2D_4bd08411faa60c828847f2247f06a809_R_4_Float, 2, _Multiply_6a55591ceae0dc86a971a275e316fec6_Out_2_Float);
|
|
float _Add_a86411eb4894f78f8f8f3246011b369c_Out_2_Float;
|
|
Unity_Add_float(_Multiply_6a55591ceae0dc86a971a275e316fec6_Out_2_Float, float(-1), _Add_a86411eb4894f78f8f8f3246011b369c_Out_2_Float);
|
|
float _Property_c5a049650239cf80a302d0c0f57c147a_Out_0_Float = _DetailCoverAlbedoScale;
|
|
float _Multiply_1708b01db74fe88a8c36434f8729bf41_Out_2_Float;
|
|
Unity_Multiply_float_float(_Add_a86411eb4894f78f8f8f3246011b369c_Out_2_Float, _Property_c5a049650239cf80a302d0c0f57c147a_Out_0_Float, _Multiply_1708b01db74fe88a8c36434f8729bf41_Out_2_Float);
|
|
float _Saturate_1a4899f79635918485a64fff7cea28ad_Out_1_Float;
|
|
Unity_Saturate_float(_Multiply_1708b01db74fe88a8c36434f8729bf41_Out_2_Float, _Saturate_1a4899f79635918485a64fff7cea28ad_Out_1_Float);
|
|
float _Absolute_d3dce2bb8d9f0285b5183b7f665beed8_Out_1_Float;
|
|
Unity_Absolute_float(_Saturate_1a4899f79635918485a64fff7cea28ad_Out_1_Float, _Absolute_d3dce2bb8d9f0285b5183b7f665beed8_Out_1_Float);
|
|
Bindings_BlendOverlayBaseColor_acdb3dfca72bd6b42bbc35f4613331a2_float _BlendOverlayBaseColor_ec1f397271cc818abdb95188914e6b4d;
|
|
float3 _BlendOverlayBaseColor_ec1f397271cc818abdb95188914e6b4d_OutVector4_1_Vector3;
|
|
SG_BlendOverlayBaseColor_acdb3dfca72bd6b42bbc35f4613331a2_float(_Branch_0c5221a996e29186a372734bf5c30a51_Out_3_Vector4, _Add_a86411eb4894f78f8f8f3246011b369c_Out_2_Float, _Absolute_d3dce2bb8d9f0285b5183b7f665beed8_Out_1_Float, _BlendOverlayBaseColor_ec1f397271cc818abdb95188914e6b4d, _BlendOverlayBaseColor_ec1f397271cc818abdb95188914e6b4d_OutVector4_1_Vector3);
|
|
float _Property_cb0b6597aee47880b32e852aaa0e4a71_Out_0_Boolean = _USEDYNAMICCOVERTSTATICMASKF;
|
|
float _Property_4b3f692214f8d081a043985e1adb12a1_Out_0_Float = _CoverMaskPower;
|
|
float _Multiply_10cc4ecb135f8e8ab88c475223d0eadf_Out_2_Float;
|
|
Unity_Multiply_float_float(_SampleTexture2D_32717b1e99785588830ceee116cbe7fc_A_7_Float, _Property_4b3f692214f8d081a043985e1adb12a1_Out_0_Float, _Multiply_10cc4ecb135f8e8ab88c475223d0eadf_Out_2_Float);
|
|
float _Clamp_07a501c22c6e188199bed73412ac8926_Out_3_Float;
|
|
Unity_Clamp_float(_Multiply_10cc4ecb135f8e8ab88c475223d0eadf_Out_2_Float, float(0), float(1), _Clamp_07a501c22c6e188199bed73412ac8926_Out_3_Float);
|
|
float _Split_2ada595651635e8d97bf4b82f717fcc6_R_1_Float = IN.VertexColor[0];
|
|
float _Split_2ada595651635e8d97bf4b82f717fcc6_G_2_Float = IN.VertexColor[1];
|
|
float _Split_2ada595651635e8d97bf4b82f717fcc6_B_3_Float = IN.VertexColor[2];
|
|
float _Split_2ada595651635e8d97bf4b82f717fcc6_A_4_Float = IN.VertexColor[3];
|
|
float3 _Property_9180f8dd535ba18499edac37aef4d231_Out_0_Vector3 = _CoverDirection;
|
|
float2 _Vector2_7fe7d9ef320da68f958e1ea535e2a6a8_Out_0_Vector2 = float2(_SampleTexture2D_4bd08411faa60c828847f2247f06a809_A_7_Float, _SampleTexture2D_4bd08411faa60c828847f2247f06a809_G_5_Float);
|
|
float2 _Multiply_b8d7cc078ce00d87b9a6b5241b2f1f01_Out_2_Vector2;
|
|
Unity_Multiply_float2_float2(_Vector2_7fe7d9ef320da68f958e1ea535e2a6a8_Out_0_Vector2, float2(2, 2), _Multiply_b8d7cc078ce00d87b9a6b5241b2f1f01_Out_2_Vector2);
|
|
float2 _Add_476ecfb1f47aed8bb8040bb1c44ca372_Out_2_Vector2;
|
|
Unity_Add_float2(_Multiply_b8d7cc078ce00d87b9a6b5241b2f1f01_Out_2_Vector2, float2(-1, -1), _Add_476ecfb1f47aed8bb8040bb1c44ca372_Out_2_Vector2);
|
|
float _Property_b7f40cf2664f5a819eb153af2b2eb69e_Out_0_Float = _DetailNormalScale;
|
|
float2 _Multiply_3b11e3e43551698eb19b6c6b671b6a41_Out_2_Vector2;
|
|
Unity_Multiply_float2_float2(_Add_476ecfb1f47aed8bb8040bb1c44ca372_Out_2_Vector2, (_Property_b7f40cf2664f5a819eb153af2b2eb69e_Out_0_Float.xx), _Multiply_3b11e3e43551698eb19b6c6b671b6a41_Out_2_Vector2);
|
|
float _Split_678aac70d9cb9783a49841710ce82ff8_R_1_Float = _Multiply_3b11e3e43551698eb19b6c6b671b6a41_Out_2_Vector2[0];
|
|
float _Split_678aac70d9cb9783a49841710ce82ff8_G_2_Float = _Multiply_3b11e3e43551698eb19b6c6b671b6a41_Out_2_Vector2[1];
|
|
float _Split_678aac70d9cb9783a49841710ce82ff8_B_3_Float = 0;
|
|
float _Split_678aac70d9cb9783a49841710ce82ff8_A_4_Float = 0;
|
|
float _DotProduct_7fd2e2e8b3e9ed8f9a42a0ba98e14174_Out_2_Float;
|
|
Unity_DotProduct_float2(_Multiply_3b11e3e43551698eb19b6c6b671b6a41_Out_2_Vector2, _Multiply_3b11e3e43551698eb19b6c6b671b6a41_Out_2_Vector2, _DotProduct_7fd2e2e8b3e9ed8f9a42a0ba98e14174_Out_2_Float);
|
|
float _Saturate_47bdfe8ca2c8d989a5ebbb5eb995f023_Out_1_Float;
|
|
Unity_Saturate_float(_DotProduct_7fd2e2e8b3e9ed8f9a42a0ba98e14174_Out_2_Float, _Saturate_47bdfe8ca2c8d989a5ebbb5eb995f023_Out_1_Float);
|
|
float _OneMinus_03777d2879850b838187d9d2605d7341_Out_1_Float;
|
|
Unity_OneMinus_float(_Saturate_47bdfe8ca2c8d989a5ebbb5eb995f023_Out_1_Float, _OneMinus_03777d2879850b838187d9d2605d7341_Out_1_Float);
|
|
float _SquareRoot_ca9c195aef071d8888f26cb73b749f72_Out_1_Float;
|
|
Unity_SquareRoot_float(_OneMinus_03777d2879850b838187d9d2605d7341_Out_1_Float, _SquareRoot_ca9c195aef071d8888f26cb73b749f72_Out_1_Float);
|
|
float3 _Vector3_6999cbd6a5aa908cb7c059b5f2f5b330_Out_0_Vector3 = float3(_Split_678aac70d9cb9783a49841710ce82ff8_R_1_Float, _Split_678aac70d9cb9783a49841710ce82ff8_G_2_Float, _SquareRoot_ca9c195aef071d8888f26cb73b749f72_Out_1_Float);
|
|
UnityTexture2D _Property_d2bb0a0b01239c85bd301cadeec1b3d8_Out_0_Texture2D = UnityBuildTexture2DStructNoScale(_BaseNormalMap);
|
|
Bindings_TriplanarNMn_059da9746584140498cd018db3c76047_float _TriplanarNMn_bf7f7c0e2d896289b86076b79f33d7d4;
|
|
_TriplanarNMn_bf7f7c0e2d896289b86076b79f33d7d4.WorldSpaceNormal = IN.WorldSpaceNormal;
|
|
_TriplanarNMn_bf7f7c0e2d896289b86076b79f33d7d4.WorldSpaceTangent = IN.WorldSpaceTangent;
|
|
_TriplanarNMn_bf7f7c0e2d896289b86076b79f33d7d4.WorldSpaceBiTangent = IN.WorldSpaceBiTangent;
|
|
_TriplanarNMn_bf7f7c0e2d896289b86076b79f33d7d4.AbsoluteWorldSpacePosition = IN.AbsoluteWorldSpacePosition;
|
|
float4 _TriplanarNMn_bf7f7c0e2d896289b86076b79f33d7d4_XYZ_1_Vector4;
|
|
float4 _TriplanarNMn_bf7f7c0e2d896289b86076b79f33d7d4_XZ_2_Vector4;
|
|
float4 _TriplanarNMn_bf7f7c0e2d896289b86076b79f33d7d4_YZ_3_Vector4;
|
|
float4 _TriplanarNMn_bf7f7c0e2d896289b86076b79f33d7d4_XY_4_Vector4;
|
|
SG_TriplanarNMn_059da9746584140498cd018db3c76047_float(_Property_d2bb0a0b01239c85bd301cadeec1b3d8_Out_0_Texture2D, (_Divide_6a90cebe78e620828de587523daaa7e6_Out_2_Vector4).x, _Property_3539de8c698c2981bb3c088d4ec52201_Out_0_Float, UnityBuildSamplerStateStruct(SamplerState_Linear_Repeat_Aniso8), _TriplanarNMn_bf7f7c0e2d896289b86076b79f33d7d4, _TriplanarNMn_bf7f7c0e2d896289b86076b79f33d7d4_XYZ_1_Vector4, _TriplanarNMn_bf7f7c0e2d896289b86076b79f33d7d4_XZ_2_Vector4, _TriplanarNMn_bf7f7c0e2d896289b86076b79f33d7d4_YZ_3_Vector4, _TriplanarNMn_bf7f7c0e2d896289b86076b79f33d7d4_XY_4_Vector4);
|
|
float _Property_d6baf612f8e685848732ca270b39f544_Out_0_Float = _BaseNormalScale;
|
|
float3 _NormalStrength_260139b4d5077d8b9d42de780d173b6c_Out_2_Vector3;
|
|
Unity_NormalStrength_float((_TriplanarNMn_bf7f7c0e2d896289b86076b79f33d7d4_XYZ_1_Vector4.xyz), _Property_d6baf612f8e685848732ca270b39f544_Out_0_Float, _NormalStrength_260139b4d5077d8b9d42de780d173b6c_Out_2_Vector3);
|
|
UnityTexture2D _Property_492c4e7cd40ab980bd38362624511e38_Out_0_Texture2D = UnityBuildTexture2DStructNoScale(_ShapeNormalMap);
|
|
float4 _SampleTexture2D_63aaad04c65f698e8f640de826888075_RGBA_0_Vector4 = SAMPLE_TEXTURE2D(_Property_492c4e7cd40ab980bd38362624511e38_Out_0_Texture2D.tex, _Property_492c4e7cd40ab980bd38362624511e38_Out_0_Texture2D.samplerstate, _Property_492c4e7cd40ab980bd38362624511e38_Out_0_Texture2D.GetTransformedUV(IN.uv0.xy) );
|
|
_SampleTexture2D_63aaad04c65f698e8f640de826888075_RGBA_0_Vector4.rgb = UnpackNormal(_SampleTexture2D_63aaad04c65f698e8f640de826888075_RGBA_0_Vector4);
|
|
float _SampleTexture2D_63aaad04c65f698e8f640de826888075_R_4_Float = _SampleTexture2D_63aaad04c65f698e8f640de826888075_RGBA_0_Vector4.r;
|
|
float _SampleTexture2D_63aaad04c65f698e8f640de826888075_G_5_Float = _SampleTexture2D_63aaad04c65f698e8f640de826888075_RGBA_0_Vector4.g;
|
|
float _SampleTexture2D_63aaad04c65f698e8f640de826888075_B_6_Float = _SampleTexture2D_63aaad04c65f698e8f640de826888075_RGBA_0_Vector4.b;
|
|
float _SampleTexture2D_63aaad04c65f698e8f640de826888075_A_7_Float = _SampleTexture2D_63aaad04c65f698e8f640de826888075_RGBA_0_Vector4.a;
|
|
float _Property_6c35e329e57d0e89950e24817068dbb1_Out_0_Float = _shapeNormalScale;
|
|
float3 _NormalStrength_e181a1bb2f4e35819e0f35e77346e12e_Out_2_Vector3;
|
|
Unity_NormalStrength_float((_SampleTexture2D_63aaad04c65f698e8f640de826888075_RGBA_0_Vector4.xyz), _Property_6c35e329e57d0e89950e24817068dbb1_Out_0_Float, _NormalStrength_e181a1bb2f4e35819e0f35e77346e12e_Out_2_Vector3);
|
|
float3 _NormalBlend_ead295b946c6058190c298c03bf64d0b_Out_2_Vector3;
|
|
Unity_NormalBlend_float(_NormalStrength_260139b4d5077d8b9d42de780d173b6c_Out_2_Vector3, _NormalStrength_e181a1bb2f4e35819e0f35e77346e12e_Out_2_Vector3, _NormalBlend_ead295b946c6058190c298c03bf64d0b_Out_2_Vector3);
|
|
float3 _NormalBlend_4242e1b4a785378aa59dd49e9d993ffc_Out_2_Vector3;
|
|
Unity_NormalBlend_float(_Vector3_6999cbd6a5aa908cb7c059b5f2f5b330_Out_0_Vector3, _NormalBlend_ead295b946c6058190c298c03bf64d0b_Out_2_Vector3, _NormalBlend_4242e1b4a785378aa59dd49e9d993ffc_Out_2_Vector3);
|
|
float _Property_3d4ab6ad1f1f138a96f0463f7be8b6ce_Out_0_Float = _CovershapeNormalScale;
|
|
float3 _NormalStrength_401cd5af500bd68dbc9bca19d548d0db_Out_2_Vector3;
|
|
Unity_NormalStrength_float((_SampleTexture2D_63aaad04c65f698e8f640de826888075_RGBA_0_Vector4.xyz), _Property_3d4ab6ad1f1f138a96f0463f7be8b6ce_Out_0_Float, _NormalStrength_401cd5af500bd68dbc9bca19d548d0db_Out_2_Vector3);
|
|
UnityTexture2D _Property_779695727390348d8b8a7f7ae2245af0_Out_0_Texture2D = UnityBuildTexture2DStructNoScale(_CoverNormalMap);
|
|
Bindings_TriplanarNMn_059da9746584140498cd018db3c76047_float _TriplanarNMn_ba7e211dd8095589a2939b5b239ca8e0;
|
|
_TriplanarNMn_ba7e211dd8095589a2939b5b239ca8e0.WorldSpaceNormal = IN.WorldSpaceNormal;
|
|
_TriplanarNMn_ba7e211dd8095589a2939b5b239ca8e0.WorldSpaceTangent = IN.WorldSpaceTangent;
|
|
_TriplanarNMn_ba7e211dd8095589a2939b5b239ca8e0.WorldSpaceBiTangent = IN.WorldSpaceBiTangent;
|
|
_TriplanarNMn_ba7e211dd8095589a2939b5b239ca8e0.AbsoluteWorldSpacePosition = IN.AbsoluteWorldSpacePosition;
|
|
float4 _TriplanarNMn_ba7e211dd8095589a2939b5b239ca8e0_XYZ_1_Vector4;
|
|
float4 _TriplanarNMn_ba7e211dd8095589a2939b5b239ca8e0_XZ_2_Vector4;
|
|
float4 _TriplanarNMn_ba7e211dd8095589a2939b5b239ca8e0_YZ_3_Vector4;
|
|
float4 _TriplanarNMn_ba7e211dd8095589a2939b5b239ca8e0_XY_4_Vector4;
|
|
SG_TriplanarNMn_059da9746584140498cd018db3c76047_float(_Property_779695727390348d8b8a7f7ae2245af0_Out_0_Texture2D, (_Divide_1fe314f1ca9dd78fbf366bbeb40e4ccf_Out_2_Vector4).x, _Property_ee792eccbb538a878b19be5db264531e_Out_0_Float, UnityBuildSamplerStateStruct(SamplerState_Linear_Repeat_Aniso8), _TriplanarNMn_ba7e211dd8095589a2939b5b239ca8e0, _TriplanarNMn_ba7e211dd8095589a2939b5b239ca8e0_XYZ_1_Vector4, _TriplanarNMn_ba7e211dd8095589a2939b5b239ca8e0_XZ_2_Vector4, _TriplanarNMn_ba7e211dd8095589a2939b5b239ca8e0_YZ_3_Vector4, _TriplanarNMn_ba7e211dd8095589a2939b5b239ca8e0_XY_4_Vector4);
|
|
float _Property_5aba050988182f8aad3ec6b2c7e57899_Out_0_Float = _CoverNormalBlendHardness;
|
|
float3 _NormalStrength_dac4b0abfa8a1f82b7103b18f6e6e1b7_Out_2_Vector3;
|
|
Unity_NormalStrength_float((_TriplanarNMn_ba7e211dd8095589a2939b5b239ca8e0_XYZ_1_Vector4.xyz), _Property_5aba050988182f8aad3ec6b2c7e57899_Out_0_Float, _NormalStrength_dac4b0abfa8a1f82b7103b18f6e6e1b7_Out_2_Vector3);
|
|
float3 _NormalBlend_4058aded292b7389ade16c695a6cae6c_Out_2_Vector3;
|
|
Unity_NormalBlend_float(_NormalStrength_401cd5af500bd68dbc9bca19d548d0db_Out_2_Vector3, _NormalStrength_dac4b0abfa8a1f82b7103b18f6e6e1b7_Out_2_Vector3, _NormalBlend_4058aded292b7389ade16c695a6cae6c_Out_2_Vector3);
|
|
float3 _Multiply_0e22f9c6ff55a188b2533f1889a53038_Out_2_Vector3;
|
|
Unity_Multiply_float3_float3(_Property_9180f8dd535ba18499edac37aef4d231_Out_0_Vector3, IN.WorldSpaceNormal, _Multiply_0e22f9c6ff55a188b2533f1889a53038_Out_2_Vector3);
|
|
float _Split_89708601b575b58c852cd55e4fb248d1_R_1_Float = _Multiply_0e22f9c6ff55a188b2533f1889a53038_Out_2_Vector3[0];
|
|
float _Split_89708601b575b58c852cd55e4fb248d1_G_2_Float = _Multiply_0e22f9c6ff55a188b2533f1889a53038_Out_2_Vector3[1];
|
|
float _Split_89708601b575b58c852cd55e4fb248d1_B_3_Float = _Multiply_0e22f9c6ff55a188b2533f1889a53038_Out_2_Vector3[2];
|
|
float _Split_89708601b575b58c852cd55e4fb248d1_A_4_Float = 0;
|
|
float _Add_bfe29b97a9ce3b80aa4cd689be8c4a97_Out_2_Float;
|
|
Unity_Add_float(_Split_89708601b575b58c852cd55e4fb248d1_R_1_Float, _Split_89708601b575b58c852cd55e4fb248d1_G_2_Float, _Add_bfe29b97a9ce3b80aa4cd689be8c4a97_Out_2_Float);
|
|
float _Add_f3152b42a227088aa1439fc1fe8451cc_Out_2_Float;
|
|
Unity_Add_float(_Add_bfe29b97a9ce3b80aa4cd689be8c4a97_Out_2_Float, _Split_89708601b575b58c852cd55e4fb248d1_B_3_Float, _Add_f3152b42a227088aa1439fc1fe8451cc_Out_2_Float);
|
|
float _Property_deabceefa3e3438a8ad71fa67fc5b070_Out_0_Float = _Cover_Amount;
|
|
float _Property_2fba2d762d74b8828ff566c10bc48e86_Out_0_Float = _Cover_Amount_Grow_Speed;
|
|
float _Subtract_1f990262a41ce88f96a47df66dcb4971_Out_2_Float;
|
|
Unity_Subtract_float(float(4), _Property_2fba2d762d74b8828ff566c10bc48e86_Out_0_Float, _Subtract_1f990262a41ce88f96a47df66dcb4971_Out_2_Float);
|
|
float _Divide_a89e05be4802ac80886ad6bdeadc4949_Out_2_Float;
|
|
Unity_Divide_float(_Property_deabceefa3e3438a8ad71fa67fc5b070_Out_0_Float, _Subtract_1f990262a41ce88f96a47df66dcb4971_Out_2_Float, _Divide_a89e05be4802ac80886ad6bdeadc4949_Out_2_Float);
|
|
float _Absolute_2b58f48ab94a3087a726a2b03c51e2c6_Out_1_Float;
|
|
Unity_Absolute_float(_Divide_a89e05be4802ac80886ad6bdeadc4949_Out_2_Float, _Absolute_2b58f48ab94a3087a726a2b03c51e2c6_Out_1_Float);
|
|
float _Power_6695d49b8b82468ea686b66e6749260b_Out_2_Float;
|
|
Unity_Power_float(_Absolute_2b58f48ab94a3087a726a2b03c51e2c6_Out_1_Float, _Subtract_1f990262a41ce88f96a47df66dcb4971_Out_2_Float, _Power_6695d49b8b82468ea686b66e6749260b_Out_2_Float);
|
|
float _Clamp_94f0310fee13798bad4e26e2381a94d4_Out_3_Float;
|
|
Unity_Clamp_float(_Power_6695d49b8b82468ea686b66e6749260b_Out_2_Float, float(0), float(2), _Clamp_94f0310fee13798bad4e26e2381a94d4_Out_3_Float);
|
|
float _Multiply_999692515a117385ade114d924fa589a_Out_2_Float;
|
|
Unity_Multiply_float_float(_Add_f3152b42a227088aa1439fc1fe8451cc_Out_2_Float, _Clamp_94f0310fee13798bad4e26e2381a94d4_Out_3_Float, _Multiply_999692515a117385ade114d924fa589a_Out_2_Float);
|
|
float _Saturate_f811eeeeb3229d83917aa8be2c36831e_Out_1_Float;
|
|
Unity_Saturate_float(_Multiply_999692515a117385ade114d924fa589a_Out_2_Float, _Saturate_f811eeeeb3229d83917aa8be2c36831e_Out_1_Float);
|
|
float _Clamp_4c470807610adb8c8488f125c0af7bb5_Out_3_Float;
|
|
Unity_Clamp_float(_Add_f3152b42a227088aa1439fc1fe8451cc_Out_2_Float, float(0), float(0.9999), _Clamp_4c470807610adb8c8488f125c0af7bb5_Out_3_Float);
|
|
float _Property_765e3d021aec6d8f9f8b3174d5a06980_Out_0_Float = _Cover_Max_Angle;
|
|
float _Divide_9d9fc267a9ebcf84b378fdd4c66ff34d_Out_2_Float;
|
|
Unity_Divide_float(_Property_765e3d021aec6d8f9f8b3174d5a06980_Out_0_Float, float(45), _Divide_9d9fc267a9ebcf84b378fdd4c66ff34d_Out_2_Float);
|
|
float _OneMinus_f074fba0be46e688aa75f5377832251a_Out_1_Float;
|
|
Unity_OneMinus_float(_Divide_9d9fc267a9ebcf84b378fdd4c66ff34d_Out_2_Float, _OneMinus_f074fba0be46e688aa75f5377832251a_Out_1_Float);
|
|
float _Subtract_0b0cd6145e351c87a68366348828154d_Out_2_Float;
|
|
Unity_Subtract_float(_Clamp_4c470807610adb8c8488f125c0af7bb5_Out_3_Float, _OneMinus_f074fba0be46e688aa75f5377832251a_Out_1_Float, _Subtract_0b0cd6145e351c87a68366348828154d_Out_2_Float);
|
|
float _Clamp_30607c0c4e04e5879d4061a1f7688421_Out_3_Float;
|
|
Unity_Clamp_float(_Subtract_0b0cd6145e351c87a68366348828154d_Out_2_Float, float(0), float(2), _Clamp_30607c0c4e04e5879d4061a1f7688421_Out_3_Float);
|
|
float _Divide_cfe09f3bd2005485a3c2229367309962_Out_2_Float;
|
|
Unity_Divide_float(float(1), _Divide_9d9fc267a9ebcf84b378fdd4c66ff34d_Out_2_Float, _Divide_cfe09f3bd2005485a3c2229367309962_Out_2_Float);
|
|
float _Multiply_022be2eb9027988b9d5d4c1392749347_Out_2_Float;
|
|
Unity_Multiply_float_float(_Clamp_30607c0c4e04e5879d4061a1f7688421_Out_3_Float, _Divide_cfe09f3bd2005485a3c2229367309962_Out_2_Float, _Multiply_022be2eb9027988b9d5d4c1392749347_Out_2_Float);
|
|
float _Absolute_2fed84623df90f8ba200de68955721fd_Out_1_Float;
|
|
Unity_Absolute_float(_Multiply_022be2eb9027988b9d5d4c1392749347_Out_2_Float, _Absolute_2fed84623df90f8ba200de68955721fd_Out_1_Float);
|
|
float _Property_b79c921e30793a8e84330b3341539232_Out_0_Float = _CoverHardness;
|
|
float _Power_b9ddee06dfd0b880880990743bc10612_Out_2_Float;
|
|
Unity_Power_float(_Absolute_2fed84623df90f8ba200de68955721fd_Out_1_Float, _Property_b79c921e30793a8e84330b3341539232_Out_0_Float, _Power_b9ddee06dfd0b880880990743bc10612_Out_2_Float);
|
|
float _Property_c82936191f294c89b76f2d1809168f87_Out_0_Float = _Cover_Min_Height;
|
|
float _OneMinus_f0918ccb4f747b8e83e39d82dc3b5ca9_Out_1_Float;
|
|
Unity_OneMinus_float(_Property_c82936191f294c89b76f2d1809168f87_Out_0_Float, _OneMinus_f0918ccb4f747b8e83e39d82dc3b5ca9_Out_1_Float);
|
|
float _Split_0e80ce6f80cff18f87a043d1e3eecd08_R_1_Float = IN.AbsoluteWorldSpacePosition[0];
|
|
float _Split_0e80ce6f80cff18f87a043d1e3eecd08_G_2_Float = IN.AbsoluteWorldSpacePosition[1];
|
|
float _Split_0e80ce6f80cff18f87a043d1e3eecd08_B_3_Float = IN.AbsoluteWorldSpacePosition[2];
|
|
float _Split_0e80ce6f80cff18f87a043d1e3eecd08_A_4_Float = 0;
|
|
float _Add_60b3bb4cdad6e88b8c097c5b08daa7d0_Out_2_Float;
|
|
Unity_Add_float(_OneMinus_f0918ccb4f747b8e83e39d82dc3b5ca9_Out_1_Float, _Split_0e80ce6f80cff18f87a043d1e3eecd08_G_2_Float, _Add_60b3bb4cdad6e88b8c097c5b08daa7d0_Out_2_Float);
|
|
float _Add_1898d6f46901df809c68b5241b2e9c37_Out_2_Float;
|
|
Unity_Add_float(_Add_60b3bb4cdad6e88b8c097c5b08daa7d0_Out_2_Float, float(1), _Add_1898d6f46901df809c68b5241b2e9c37_Out_2_Float);
|
|
float _Clamp_25d6140fa3ff3a8f956f99005adace2e_Out_3_Float;
|
|
Unity_Clamp_float(_Add_1898d6f46901df809c68b5241b2e9c37_Out_2_Float, float(0), float(1), _Clamp_25d6140fa3ff3a8f956f99005adace2e_Out_3_Float);
|
|
float _Property_6094a52a4f01fd8da5ea847b69b6941c_Out_0_Float = _Cover_Min_Height_Blending;
|
|
float _Add_dc69668fc7f1a586a754713499f71d99_Out_2_Float;
|
|
Unity_Add_float(_Add_60b3bb4cdad6e88b8c097c5b08daa7d0_Out_2_Float, _Property_6094a52a4f01fd8da5ea847b69b6941c_Out_0_Float, _Add_dc69668fc7f1a586a754713499f71d99_Out_2_Float);
|
|
float _Divide_63e32406c8773d83bbf2e244faf8328f_Out_2_Float;
|
|
Unity_Divide_float(_Add_dc69668fc7f1a586a754713499f71d99_Out_2_Float, _Add_60b3bb4cdad6e88b8c097c5b08daa7d0_Out_2_Float, _Divide_63e32406c8773d83bbf2e244faf8328f_Out_2_Float);
|
|
float _OneMinus_ec22d21ddfa84288b6f750e9fdb107b9_Out_1_Float;
|
|
Unity_OneMinus_float(_Divide_63e32406c8773d83bbf2e244faf8328f_Out_2_Float, _OneMinus_ec22d21ddfa84288b6f750e9fdb107b9_Out_1_Float);
|
|
float _Add_a1206af8cbfbbe8081046db1247aba04_Out_2_Float;
|
|
Unity_Add_float(_OneMinus_ec22d21ddfa84288b6f750e9fdb107b9_Out_1_Float, float(-0.5), _Add_a1206af8cbfbbe8081046db1247aba04_Out_2_Float);
|
|
float _Clamp_640b5884b29f188987c157ad5e6e6959_Out_3_Float;
|
|
Unity_Clamp_float(_Add_a1206af8cbfbbe8081046db1247aba04_Out_2_Float, float(0), float(1), _Clamp_640b5884b29f188987c157ad5e6e6959_Out_3_Float);
|
|
float _Add_cfdb6daf617665838bb05910fa9505df_Out_2_Float;
|
|
Unity_Add_float(_Clamp_25d6140fa3ff3a8f956f99005adace2e_Out_3_Float, _Clamp_640b5884b29f188987c157ad5e6e6959_Out_3_Float, _Add_cfdb6daf617665838bb05910fa9505df_Out_2_Float);
|
|
float _Clamp_552ef7e5cf91408a982297885971db7e_Out_3_Float;
|
|
Unity_Clamp_float(_Add_cfdb6daf617665838bb05910fa9505df_Out_2_Float, float(0), float(1), _Clamp_552ef7e5cf91408a982297885971db7e_Out_3_Float);
|
|
float _Multiply_8f8db9c494f4fd869809fc45531df628_Out_2_Float;
|
|
Unity_Multiply_float_float(_Power_b9ddee06dfd0b880880990743bc10612_Out_2_Float, _Clamp_552ef7e5cf91408a982297885971db7e_Out_3_Float, _Multiply_8f8db9c494f4fd869809fc45531df628_Out_2_Float);
|
|
float _Multiply_60075aa07d29d285b3c1ee531e5b5cb3_Out_2_Float;
|
|
Unity_Multiply_float_float(_Saturate_f811eeeeb3229d83917aa8be2c36831e_Out_1_Float, _Multiply_8f8db9c494f4fd869809fc45531df628_Out_2_Float, _Multiply_60075aa07d29d285b3c1ee531e5b5cb3_Out_2_Float);
|
|
float3 _Lerp_453c8bc667315a8fa37a93affb877753_Out_3_Vector3;
|
|
Unity_Lerp_float3(_NormalBlend_4242e1b4a785378aa59dd49e9d993ffc_Out_2_Vector3, _NormalBlend_4058aded292b7389ade16c695a6cae6c_Out_2_Vector3, (_Multiply_60075aa07d29d285b3c1ee531e5b5cb3_Out_2_Float.xxx), _Lerp_453c8bc667315a8fa37a93affb877753_Out_3_Vector3);
|
|
float3 _Transform_a87113b0be9dfa8eaf6932ed645aa845_Out_1_Vector3;
|
|
{
|
|
float3x3 tangentTransform = float3x3(IN.WorldSpaceTangent, IN.WorldSpaceBiTangent, IN.WorldSpaceNormal);
|
|
_Transform_a87113b0be9dfa8eaf6932ed645aa845_Out_1_Vector3 = TransformTangentToWorldDir(_Lerp_453c8bc667315a8fa37a93affb877753_Out_3_Vector3.xyz, tangentTransform, false).xyz;
|
|
}
|
|
float3 _Multiply_f6e009bd5c0fd18c99ac72f233476fe5_Out_2_Vector3;
|
|
Unity_Multiply_float3_float3(_Property_9180f8dd535ba18499edac37aef4d231_Out_0_Vector3, _Transform_a87113b0be9dfa8eaf6932ed645aa845_Out_1_Vector3, _Multiply_f6e009bd5c0fd18c99ac72f233476fe5_Out_2_Vector3);
|
|
float _Split_96f0a5b75c0e0b889dbbccd04bc2aaaa_R_1_Float = _Multiply_f6e009bd5c0fd18c99ac72f233476fe5_Out_2_Vector3[0];
|
|
float _Split_96f0a5b75c0e0b889dbbccd04bc2aaaa_G_2_Float = _Multiply_f6e009bd5c0fd18c99ac72f233476fe5_Out_2_Vector3[1];
|
|
float _Split_96f0a5b75c0e0b889dbbccd04bc2aaaa_B_3_Float = _Multiply_f6e009bd5c0fd18c99ac72f233476fe5_Out_2_Vector3[2];
|
|
float _Split_96f0a5b75c0e0b889dbbccd04bc2aaaa_A_4_Float = 0;
|
|
float _Add_07028d5174d9f88594da40d46502bc13_Out_2_Float;
|
|
Unity_Add_float(_Split_96f0a5b75c0e0b889dbbccd04bc2aaaa_R_1_Float, _Split_96f0a5b75c0e0b889dbbccd04bc2aaaa_G_2_Float, _Add_07028d5174d9f88594da40d46502bc13_Out_2_Float);
|
|
float _Add_93af6c0f8ee9a3898ca51358a213b69f_Out_2_Float;
|
|
Unity_Add_float(_Add_07028d5174d9f88594da40d46502bc13_Out_2_Float, _Split_96f0a5b75c0e0b889dbbccd04bc2aaaa_B_3_Float, _Add_93af6c0f8ee9a3898ca51358a213b69f_Out_2_Float);
|
|
float _Multiply_77421b936cb9d68299ef6791b83fa867_Out_2_Float;
|
|
Unity_Multiply_float_float(_Add_93af6c0f8ee9a3898ca51358a213b69f_Out_2_Float, _Clamp_94f0310fee13798bad4e26e2381a94d4_Out_3_Float, _Multiply_77421b936cb9d68299ef6791b83fa867_Out_2_Float);
|
|
float _Multiply_ac6769fbe7188685a7537e5ac2c6bfa9_Out_2_Float;
|
|
Unity_Multiply_float_float(_Clamp_94f0310fee13798bad4e26e2381a94d4_Out_3_Float, _Property_b79c921e30793a8e84330b3341539232_Out_0_Float, _Multiply_ac6769fbe7188685a7537e5ac2c6bfa9_Out_2_Float);
|
|
float _Multiply_37a341e0d9783683aa8d5b7001acced1_Out_2_Float;
|
|
Unity_Multiply_float_float(_Multiply_ac6769fbe7188685a7537e5ac2c6bfa9_Out_2_Float, _Multiply_8f8db9c494f4fd869809fc45531df628_Out_2_Float, _Multiply_37a341e0d9783683aa8d5b7001acced1_Out_2_Float);
|
|
float _Multiply_02fa8aa66970b281b4a325dc68f407b9_Out_2_Float;
|
|
Unity_Multiply_float_float(_Multiply_77421b936cb9d68299ef6791b83fa867_Out_2_Float, _Multiply_37a341e0d9783683aa8d5b7001acced1_Out_2_Float, _Multiply_02fa8aa66970b281b4a325dc68f407b9_Out_2_Float);
|
|
UnityTexture2D _Property_fd2df7ee33755280948b4c47585d4323_Out_0_Texture2D = UnityBuildTexture2DStructNoScale(_CoverMaskMap);
|
|
Bindings_TriplanarNM_bc609ed95f52591469ab35dbfe0efcea_float _TriplanarNM_e307cfdc6531d2838aa3dfa51fc3913f;
|
|
_TriplanarNM_e307cfdc6531d2838aa3dfa51fc3913f.WorldSpaceNormal = IN.WorldSpaceNormal;
|
|
_TriplanarNM_e307cfdc6531d2838aa3dfa51fc3913f.AbsoluteWorldSpacePosition = IN.AbsoluteWorldSpacePosition;
|
|
float4 _TriplanarNM_e307cfdc6531d2838aa3dfa51fc3913f_XYZ_1_Vector4;
|
|
float4 _TriplanarNM_e307cfdc6531d2838aa3dfa51fc3913f_XZ_2_Vector4;
|
|
float4 _TriplanarNM_e307cfdc6531d2838aa3dfa51fc3913f_YZ_3_Vector4;
|
|
float4 _TriplanarNM_e307cfdc6531d2838aa3dfa51fc3913f_XY_4_Vector4;
|
|
SG_TriplanarNM_bc609ed95f52591469ab35dbfe0efcea_float(_Property_fd2df7ee33755280948b4c47585d4323_Out_0_Texture2D, (_Divide_1fe314f1ca9dd78fbf366bbeb40e4ccf_Out_2_Vector4).x, _Property_ee792eccbb538a878b19be5db264531e_Out_0_Float, UnityBuildSamplerStateStruct(SamplerState_Linear_Repeat_Aniso8), _TriplanarNM_e307cfdc6531d2838aa3dfa51fc3913f, _TriplanarNM_e307cfdc6531d2838aa3dfa51fc3913f_XYZ_1_Vector4, _TriplanarNM_e307cfdc6531d2838aa3dfa51fc3913f_XZ_2_Vector4, _TriplanarNM_e307cfdc6531d2838aa3dfa51fc3913f_YZ_3_Vector4, _TriplanarNM_e307cfdc6531d2838aa3dfa51fc3913f_XY_4_Vector4);
|
|
float _Split_fe834aed1172f284a73d2d6810bdb696_R_1_Float = _TriplanarNM_e307cfdc6531d2838aa3dfa51fc3913f_XYZ_1_Vector4[0];
|
|
float _Split_fe834aed1172f284a73d2d6810bdb696_G_2_Float = _TriplanarNM_e307cfdc6531d2838aa3dfa51fc3913f_XYZ_1_Vector4[1];
|
|
float _Split_fe834aed1172f284a73d2d6810bdb696_B_3_Float = _TriplanarNM_e307cfdc6531d2838aa3dfa51fc3913f_XYZ_1_Vector4[2];
|
|
float _Split_fe834aed1172f284a73d2d6810bdb696_A_4_Float = _TriplanarNM_e307cfdc6531d2838aa3dfa51fc3913f_XYZ_1_Vector4[3];
|
|
float _Property_b5f7a30c2ea202858ea263fd2a5a46c6_Out_0_Float = _CoverHeightMapMin;
|
|
float _Property_f86678f1d28c0483ba1ddccf49ee52f7_Out_0_Float = _CoverHeightMapMax;
|
|
float2 _Vector2_b5c01a0d88900d87a8a819b340151fb6_Out_0_Vector2 = float2(_Property_b5f7a30c2ea202858ea263fd2a5a46c6_Out_0_Float, _Property_f86678f1d28c0483ba1ddccf49ee52f7_Out_0_Float);
|
|
float _Property_82b4f7f3bf3b4382bd69876479a9e350_Out_0_Float = _CoverHeightMapOffset;
|
|
float2 _Add_6020f54fd1e6798e8e76bfdcad62759a_Out_2_Vector2;
|
|
Unity_Add_float2(_Vector2_b5c01a0d88900d87a8a819b340151fb6_Out_0_Vector2, (_Property_82b4f7f3bf3b4382bd69876479a9e350_Out_0_Float.xx), _Add_6020f54fd1e6798e8e76bfdcad62759a_Out_2_Vector2);
|
|
float _Remap_65ceff40294d1e8aae6051445b9fdbc8_Out_3_Float;
|
|
Unity_Remap_float(_Split_fe834aed1172f284a73d2d6810bdb696_B_3_Float, float2 (0, 1), _Add_6020f54fd1e6798e8e76bfdcad62759a_Out_2_Vector2, _Remap_65ceff40294d1e8aae6051445b9fdbc8_Out_3_Float);
|
|
float _Multiply_bb0edd30580dba8b89213d9c5b1ef857_Out_2_Float;
|
|
Unity_Multiply_float_float(_Multiply_02fa8aa66970b281b4a325dc68f407b9_Out_2_Float, _Remap_65ceff40294d1e8aae6051445b9fdbc8_Out_3_Float, _Multiply_bb0edd30580dba8b89213d9c5b1ef857_Out_2_Float);
|
|
float _Multiply_484dd7b77d58aa88bf99c82cfe77c774_Out_2_Float;
|
|
Unity_Multiply_float_float(_Split_2ada595651635e8d97bf4b82f717fcc6_G_2_Float, _Multiply_bb0edd30580dba8b89213d9c5b1ef857_Out_2_Float, _Multiply_484dd7b77d58aa88bf99c82cfe77c774_Out_2_Float);
|
|
float _Saturate_d39fa9bab8cc8a8fa35db28d4dbc74ab_Out_1_Float;
|
|
Unity_Saturate_float(_Multiply_484dd7b77d58aa88bf99c82cfe77c774_Out_2_Float, _Saturate_d39fa9bab8cc8a8fa35db28d4dbc74ab_Out_1_Float);
|
|
float _Multiply_6957741a4923cc8db84ac72df2e194a8_Out_2_Float;
|
|
Unity_Multiply_float_float(_Clamp_07a501c22c6e188199bed73412ac8926_Out_3_Float, _Saturate_d39fa9bab8cc8a8fa35db28d4dbc74ab_Out_1_Float, _Multiply_6957741a4923cc8db84ac72df2e194a8_Out_2_Float);
|
|
float _Branch_3ccf365d359214809d30b6430d863e3f_Out_3_Float;
|
|
Unity_Branch_float(_Property_cb0b6597aee47880b32e852aaa0e4a71_Out_0_Boolean, _Multiply_6957741a4923cc8db84ac72df2e194a8_Out_2_Float, _Clamp_07a501c22c6e188199bed73412ac8926_Out_3_Float, _Branch_3ccf365d359214809d30b6430d863e3f_Out_3_Float);
|
|
float3 _Lerp_ee1b6587de2afe82942e8476d303d598_Out_3_Vector3;
|
|
Unity_Lerp_float3(_BlendOverlayBaseColor_369c0b6a02e62b809dc5c6ac1efddde2_OutVector4_1_Vector3, _BlendOverlayBaseColor_ec1f397271cc818abdb95188914e6b4d_OutVector4_1_Vector3, (_Branch_3ccf365d359214809d30b6430d863e3f_Out_3_Float.xxx), _Lerp_ee1b6587de2afe82942e8476d303d598_Out_3_Vector3);
|
|
float4 _Property_c500db71e51fef8daff29f346c122e57_Out_0_Vector4 = _WetColor;
|
|
float3 _Multiply_89461014b078f787a0724725c54fb934_Out_2_Vector3;
|
|
Unity_Multiply_float3_float3((_Property_c500db71e51fef8daff29f346c122e57_Out_0_Vector4.xyz), _Lerp_ee1b6587de2afe82942e8476d303d598_Out_3_Vector3, _Multiply_89461014b078f787a0724725c54fb934_Out_2_Vector3);
|
|
float _OneMinus_e16dfb812ec64b8891c541171687142f_Out_1_Float;
|
|
Unity_OneMinus_float(_Split_2ada595651635e8d97bf4b82f717fcc6_R_1_Float, _OneMinus_e16dfb812ec64b8891c541171687142f_Out_1_Float);
|
|
float3 _Lerp_43bc7a9493df5a829abf080ee4ad3298_Out_3_Vector3;
|
|
Unity_Lerp_float3(_Lerp_ee1b6587de2afe82942e8476d303d598_Out_3_Vector3, _Multiply_89461014b078f787a0724725c54fb934_Out_2_Vector3, (_OneMinus_e16dfb812ec64b8891c541171687142f_Out_1_Float.xxx), _Lerp_43bc7a9493df5a829abf080ee4ad3298_Out_3_Vector3);
|
|
UnityTexture2D _Property_8e909eb873a4cd8e9af98a90a84fdde8_Out_0_Texture2D = UnityBuildTexture2DStructNoScale(_BaseMaskMap);
|
|
Bindings_TriplanarNM_bc609ed95f52591469ab35dbfe0efcea_float _TriplanarNM_52e6c67b7de4708f80a463a880607c97;
|
|
_TriplanarNM_52e6c67b7de4708f80a463a880607c97.WorldSpaceNormal = IN.WorldSpaceNormal;
|
|
_TriplanarNM_52e6c67b7de4708f80a463a880607c97.AbsoluteWorldSpacePosition = IN.AbsoluteWorldSpacePosition;
|
|
float4 _TriplanarNM_52e6c67b7de4708f80a463a880607c97_XYZ_1_Vector4;
|
|
float4 _TriplanarNM_52e6c67b7de4708f80a463a880607c97_XZ_2_Vector4;
|
|
float4 _TriplanarNM_52e6c67b7de4708f80a463a880607c97_YZ_3_Vector4;
|
|
float4 _TriplanarNM_52e6c67b7de4708f80a463a880607c97_XY_4_Vector4;
|
|
SG_TriplanarNM_bc609ed95f52591469ab35dbfe0efcea_float(_Property_8e909eb873a4cd8e9af98a90a84fdde8_Out_0_Texture2D, (_Divide_6a90cebe78e620828de587523daaa7e6_Out_2_Vector4).x, _Property_3539de8c698c2981bb3c088d4ec52201_Out_0_Float, UnityBuildSamplerStateStruct(SamplerState_Linear_Repeat_Aniso8), _TriplanarNM_52e6c67b7de4708f80a463a880607c97, _TriplanarNM_52e6c67b7de4708f80a463a880607c97_XYZ_1_Vector4, _TriplanarNM_52e6c67b7de4708f80a463a880607c97_XZ_2_Vector4, _TriplanarNM_52e6c67b7de4708f80a463a880607c97_YZ_3_Vector4, _TriplanarNM_52e6c67b7de4708f80a463a880607c97_XY_4_Vector4);
|
|
float _Split_79d9d761d63eaa8c97fb3cb7fae0c380_R_1_Float = _TriplanarNM_52e6c67b7de4708f80a463a880607c97_XYZ_1_Vector4[0];
|
|
float _Split_79d9d761d63eaa8c97fb3cb7fae0c380_G_2_Float = _TriplanarNM_52e6c67b7de4708f80a463a880607c97_XYZ_1_Vector4[1];
|
|
float _Split_79d9d761d63eaa8c97fb3cb7fae0c380_B_3_Float = _TriplanarNM_52e6c67b7de4708f80a463a880607c97_XYZ_1_Vector4[2];
|
|
float _Split_79d9d761d63eaa8c97fb3cb7fae0c380_A_4_Float = _TriplanarNM_52e6c67b7de4708f80a463a880607c97_XYZ_1_Vector4[3];
|
|
float _Property_b97916566d1fc587b95e8ec7fe8bd775_Out_0_Float = _BaseMetallic;
|
|
float _Multiply_d0c8d83444dbe38588583551936c7394_Out_2_Float;
|
|
Unity_Multiply_float_float(_Split_79d9d761d63eaa8c97fb3cb7fae0c380_R_1_Float, _Property_b97916566d1fc587b95e8ec7fe8bd775_Out_0_Float, _Multiply_d0c8d83444dbe38588583551936c7394_Out_2_Float);
|
|
float _Property_b187bbc548f3378caa8c964ca81707ca_Out_0_Float = _BaseAORemapMin;
|
|
float _Property_f06b327a4a8a7881a968eb399edf1d5c_Out_0_Float = _BaseAORemapMax;
|
|
float2 _Vector2_e267d722f88ada8da2d7edf8f7c0261d_Out_0_Vector2 = float2(_Property_b187bbc548f3378caa8c964ca81707ca_Out_0_Float, _Property_f06b327a4a8a7881a968eb399edf1d5c_Out_0_Float);
|
|
float _Remap_ad3c26564c54aa8cbb2f81aa114b3b78_Out_3_Float;
|
|
Unity_Remap_float(_Split_79d9d761d63eaa8c97fb3cb7fae0c380_G_2_Float, float2 (0, 1), _Vector2_e267d722f88ada8da2d7edf8f7c0261d_Out_0_Vector2, _Remap_ad3c26564c54aa8cbb2f81aa114b3b78_Out_3_Float);
|
|
float _Property_9a46e81c228dd0858cfdfc248fcb5efd_Out_0_Float = _BaseSmoothnessRemapMin;
|
|
float _Property_4bb3b70a3720ae8ea49e0f195b665d1f_Out_0_Float = _BaseSmoothnessRemapMax;
|
|
float2 _Vector2_6cef82af5d99208da4f2447a8ae60b4b_Out_0_Vector2 = float2(_Property_9a46e81c228dd0858cfdfc248fcb5efd_Out_0_Float, _Property_4bb3b70a3720ae8ea49e0f195b665d1f_Out_0_Float);
|
|
float _Remap_e30adbbf5d116285964ef079df15b895_Out_3_Float;
|
|
Unity_Remap_float(_Split_79d9d761d63eaa8c97fb3cb7fae0c380_A_4_Float, float2 (0, 1), _Vector2_6cef82af5d99208da4f2447a8ae60b4b_Out_0_Vector2, _Remap_e30adbbf5d116285964ef079df15b895_Out_3_Float);
|
|
float _Multiply_794172f65d2acd8981bc0e2ecc71376e_Out_2_Float;
|
|
Unity_Multiply_float_float(_SampleTexture2D_4bd08411faa60c828847f2247f06a809_B_6_Float, 2, _Multiply_794172f65d2acd8981bc0e2ecc71376e_Out_2_Float);
|
|
float _Add_dedefe53d91ea08c81d7a6d9071b0263_Out_2_Float;
|
|
Unity_Add_float(_Multiply_794172f65d2acd8981bc0e2ecc71376e_Out_2_Float, float(-1), _Add_dedefe53d91ea08c81d7a6d9071b0263_Out_2_Float);
|
|
float _Property_039bed9aac95ec8fa510fea3c4904280_Out_0_Float = _DetailSmoothnessScale;
|
|
float _Multiply_eb0a55c9be8cee86b9847c24f0e5be60_Out_2_Float;
|
|
Unity_Multiply_float_float(_Add_dedefe53d91ea08c81d7a6d9071b0263_Out_2_Float, _Property_039bed9aac95ec8fa510fea3c4904280_Out_0_Float, _Multiply_eb0a55c9be8cee86b9847c24f0e5be60_Out_2_Float);
|
|
float _Saturate_ca849f42c1cc238cb8fb1eb04fbfb9dd_Out_1_Float;
|
|
Unity_Saturate_float(_Multiply_eb0a55c9be8cee86b9847c24f0e5be60_Out_2_Float, _Saturate_ca849f42c1cc238cb8fb1eb04fbfb9dd_Out_1_Float);
|
|
float _Absolute_bc7994d4f833e382b37b5718ee583259_Out_1_Float;
|
|
Unity_Absolute_float(_Saturate_ca849f42c1cc238cb8fb1eb04fbfb9dd_Out_1_Float, _Absolute_bc7994d4f833e382b37b5718ee583259_Out_1_Float);
|
|
Bindings_BlendOverlayDetailSmoothness_06e12138dc89c0040b45a57abe520a1a_float _BlendOverlayDetailSmoothness_5a03404db5a34885a089f1aee363667f;
|
|
float _BlendOverlayDetailSmoothness_5a03404db5a34885a089f1aee363667f_SmoothnessOverlay_1_Float;
|
|
SG_BlendOverlayDetailSmoothness_06e12138dc89c0040b45a57abe520a1a_float(_Remap_e30adbbf5d116285964ef079df15b895_Out_3_Float, _Add_dedefe53d91ea08c81d7a6d9071b0263_Out_2_Float, _Absolute_bc7994d4f833e382b37b5718ee583259_Out_1_Float, _BlendOverlayDetailSmoothness_5a03404db5a34885a089f1aee363667f, _BlendOverlayDetailSmoothness_5a03404db5a34885a089f1aee363667f_SmoothnessOverlay_1_Float);
|
|
float _Saturate_3d6c6d852202408cb9b11aac8a566c89_Out_1_Float;
|
|
Unity_Saturate_float(_BlendOverlayDetailSmoothness_5a03404db5a34885a089f1aee363667f_SmoothnessOverlay_1_Float, _Saturate_3d6c6d852202408cb9b11aac8a566c89_Out_1_Float);
|
|
float3 _Vector3_8ed406a0096de4818282676bf24b1a85_Out_0_Vector3 = float3(_Multiply_d0c8d83444dbe38588583551936c7394_Out_2_Float, _Remap_ad3c26564c54aa8cbb2f81aa114b3b78_Out_3_Float, _Saturate_3d6c6d852202408cb9b11aac8a566c89_Out_1_Float);
|
|
float _Split_2ec5937af5023a8295e3858d32b193d5_R_1_Float = _Vector3_8ed406a0096de4818282676bf24b1a85_Out_0_Vector3[0];
|
|
float _Split_2ec5937af5023a8295e3858d32b193d5_G_2_Float = _Vector3_8ed406a0096de4818282676bf24b1a85_Out_0_Vector3[1];
|
|
float _Split_2ec5937af5023a8295e3858d32b193d5_B_3_Float = _Vector3_8ed406a0096de4818282676bf24b1a85_Out_0_Vector3[2];
|
|
float _Split_2ec5937af5023a8295e3858d32b193d5_A_4_Float = 0;
|
|
UnityTexture2D _Property_0f50abb140882d848d9fc7be8e3468dc_Out_0_Texture2D = UnityBuildTexture2DStructNoScale(_ShapeAO);
|
|
float4 _SampleTexture2D_33392602b94694898ec8227a89f13cc9_RGBA_0_Vector4 = SAMPLE_TEXTURE2D(_Property_0f50abb140882d848d9fc7be8e3468dc_Out_0_Texture2D.tex, _Property_0f50abb140882d848d9fc7be8e3468dc_Out_0_Texture2D.samplerstate, _Property_0f50abb140882d848d9fc7be8e3468dc_Out_0_Texture2D.GetTransformedUV(IN.uv0.xy) );
|
|
float _SampleTexture2D_33392602b94694898ec8227a89f13cc9_R_4_Float = _SampleTexture2D_33392602b94694898ec8227a89f13cc9_RGBA_0_Vector4.r;
|
|
float _SampleTexture2D_33392602b94694898ec8227a89f13cc9_G_5_Float = _SampleTexture2D_33392602b94694898ec8227a89f13cc9_RGBA_0_Vector4.g;
|
|
float _SampleTexture2D_33392602b94694898ec8227a89f13cc9_B_6_Float = _SampleTexture2D_33392602b94694898ec8227a89f13cc9_RGBA_0_Vector4.b;
|
|
float _SampleTexture2D_33392602b94694898ec8227a89f13cc9_A_7_Float = _SampleTexture2D_33392602b94694898ec8227a89f13cc9_RGBA_0_Vector4.a;
|
|
float _Property_a51c4b6d05e6718d919aadcf26153350_Out_0_Float = _ShapeAORemapMin;
|
|
float _Property_973fbc42b7a69088b9fc2c502945f369_Out_0_Float = _ShapeAORemapMax;
|
|
float2 _Vector2_a73753c5a8c4fa828d2eb25d4fb8b399_Out_0_Vector2 = float2(_Property_a51c4b6d05e6718d919aadcf26153350_Out_0_Float, _Property_973fbc42b7a69088b9fc2c502945f369_Out_0_Float);
|
|
float _Remap_270e7e207f303487bc04348b1b54db69_Out_3_Float;
|
|
Unity_Remap_float(_SampleTexture2D_33392602b94694898ec8227a89f13cc9_G_5_Float, float2 (0, 1), _Vector2_a73753c5a8c4fa828d2eb25d4fb8b399_Out_0_Vector2, _Remap_270e7e207f303487bc04348b1b54db69_Out_3_Float);
|
|
float _Minimum_307d1a8c4f5c6a87a1bbc658a5811679_Out_2_Float;
|
|
Unity_Minimum_float(_Split_2ec5937af5023a8295e3858d32b193d5_G_2_Float, _Remap_270e7e207f303487bc04348b1b54db69_Out_3_Float, _Minimum_307d1a8c4f5c6a87a1bbc658a5811679_Out_2_Float);
|
|
float3 _Vector3_fac10bf467f5ff82b4f071ba165bf458_Out_0_Vector3 = float3(_Split_2ec5937af5023a8295e3858d32b193d5_R_1_Float, _Minimum_307d1a8c4f5c6a87a1bbc658a5811679_Out_2_Float, _Split_2ec5937af5023a8295e3858d32b193d5_B_3_Float);
|
|
float _Property_fa6937565be49684915e6bb999529949_Out_0_Float = _CoverMetallic;
|
|
float _Multiply_d0ecb787fa289f8f9d3c2988d60f18d3_Out_2_Float;
|
|
Unity_Multiply_float_float(_Split_fe834aed1172f284a73d2d6810bdb696_R_1_Float, _Property_fa6937565be49684915e6bb999529949_Out_0_Float, _Multiply_d0ecb787fa289f8f9d3c2988d60f18d3_Out_2_Float);
|
|
float _Property_8f5ca0ba38d2a4858c1b4e44f6a375b4_Out_0_Float = _CoverAORemapMin;
|
|
float _Property_a15ef0fe46e1d88f9e20df6605bd1499_Out_0_Float = _CoverAORemapMax;
|
|
float2 _Vector2_969d809c2de99f89959cc4526a665db9_Out_0_Vector2 = float2(_Property_8f5ca0ba38d2a4858c1b4e44f6a375b4_Out_0_Float, _Property_a15ef0fe46e1d88f9e20df6605bd1499_Out_0_Float);
|
|
float _Remap_1b6065f44329038594e2d0cf001fa138_Out_3_Float;
|
|
Unity_Remap_float(_Split_fe834aed1172f284a73d2d6810bdb696_G_2_Float, float2 (0, 1), _Vector2_969d809c2de99f89959cc4526a665db9_Out_0_Vector2, _Remap_1b6065f44329038594e2d0cf001fa138_Out_3_Float);
|
|
float _Property_0fde68fd9824db8e9f5b4b0daff90270_Out_0_Float = _CoverSmoothnessRemapMin;
|
|
float _Property_abad1da00caf99869e0c9ca2926c76bd_Out_0_Float = _CoverSmoothnessRemapMax;
|
|
float2 _Vector2_1aa81c2ad7cc268caa834889569ce556_Out_0_Vector2 = float2(_Property_0fde68fd9824db8e9f5b4b0daff90270_Out_0_Float, _Property_abad1da00caf99869e0c9ca2926c76bd_Out_0_Float);
|
|
float _Remap_4948cd1fb38399888e9567ee2abb8acd_Out_3_Float;
|
|
Unity_Remap_float(_Split_fe834aed1172f284a73d2d6810bdb696_A_4_Float, float2 (0, 1), _Vector2_1aa81c2ad7cc268caa834889569ce556_Out_0_Vector2, _Remap_4948cd1fb38399888e9567ee2abb8acd_Out_3_Float);
|
|
float _Multiply_d3e207dba42f1984aacff3c1bf4eef0b_Out_2_Float;
|
|
Unity_Multiply_float_float(_SampleTexture2D_4bd08411faa60c828847f2247f06a809_B_6_Float, 2, _Multiply_d3e207dba42f1984aacff3c1bf4eef0b_Out_2_Float);
|
|
float _Add_0299d632f81fff8f969a0eed5f77397c_Out_2_Float;
|
|
Unity_Add_float(_Multiply_d3e207dba42f1984aacff3c1bf4eef0b_Out_2_Float, float(-1), _Add_0299d632f81fff8f969a0eed5f77397c_Out_2_Float);
|
|
float _Property_a2c7556e96b60b8e90cb5145ca6f9dde_Out_0_Float = _DetailCoverSmoothnessScale;
|
|
float _Multiply_d340fbee0985958dbb66555a73bd733c_Out_2_Float;
|
|
Unity_Multiply_float_float(_Add_0299d632f81fff8f969a0eed5f77397c_Out_2_Float, _Property_a2c7556e96b60b8e90cb5145ca6f9dde_Out_0_Float, _Multiply_d340fbee0985958dbb66555a73bd733c_Out_2_Float);
|
|
float _Saturate_2c0cc920be0ca88e937ec108b38f5fde_Out_1_Float;
|
|
Unity_Saturate_float(_Multiply_d340fbee0985958dbb66555a73bd733c_Out_2_Float, _Saturate_2c0cc920be0ca88e937ec108b38f5fde_Out_1_Float);
|
|
float _Absolute_3f81290e941e378283f7151c4a0731e2_Out_1_Float;
|
|
Unity_Absolute_float(_Saturate_2c0cc920be0ca88e937ec108b38f5fde_Out_1_Float, _Absolute_3f81290e941e378283f7151c4a0731e2_Out_1_Float);
|
|
Bindings_BlendOverlayDetailSmoothness_06e12138dc89c0040b45a57abe520a1a_float _BlendOverlayDetailSmoothness_e7a4fbe98378f084bd09f6e5d90e1cb8;
|
|
float _BlendOverlayDetailSmoothness_e7a4fbe98378f084bd09f6e5d90e1cb8_SmoothnessOverlay_1_Float;
|
|
SG_BlendOverlayDetailSmoothness_06e12138dc89c0040b45a57abe520a1a_float(_Remap_4948cd1fb38399888e9567ee2abb8acd_Out_3_Float, _Add_0299d632f81fff8f969a0eed5f77397c_Out_2_Float, _Absolute_3f81290e941e378283f7151c4a0731e2_Out_1_Float, _BlendOverlayDetailSmoothness_e7a4fbe98378f084bd09f6e5d90e1cb8, _BlendOverlayDetailSmoothness_e7a4fbe98378f084bd09f6e5d90e1cb8_SmoothnessOverlay_1_Float);
|
|
float _Saturate_9091ea9d9924c682ad6b94d3322ee822_Out_1_Float;
|
|
Unity_Saturate_float(_BlendOverlayDetailSmoothness_e7a4fbe98378f084bd09f6e5d90e1cb8_SmoothnessOverlay_1_Float, _Saturate_9091ea9d9924c682ad6b94d3322ee822_Out_1_Float);
|
|
float3 _Vector3_93bafe600474e7819ebc13e534b986bf_Out_0_Vector3 = float3(_Multiply_d0ecb787fa289f8f9d3c2988d60f18d3_Out_2_Float, _Remap_1b6065f44329038594e2d0cf001fa138_Out_3_Float, _Saturate_9091ea9d9924c682ad6b94d3322ee822_Out_1_Float);
|
|
float _Split_6ec9cc5e56f3f68ba37ff91557979c18_R_1_Float = _Vector3_93bafe600474e7819ebc13e534b986bf_Out_0_Vector3[0];
|
|
float _Split_6ec9cc5e56f3f68ba37ff91557979c18_G_2_Float = _Vector3_93bafe600474e7819ebc13e534b986bf_Out_0_Vector3[1];
|
|
float _Split_6ec9cc5e56f3f68ba37ff91557979c18_B_3_Float = _Vector3_93bafe600474e7819ebc13e534b986bf_Out_0_Vector3[2];
|
|
float _Split_6ec9cc5e56f3f68ba37ff91557979c18_A_4_Float = 0;
|
|
float _Property_ca9c61425ece6b8c909c06b1e2738f1a_Out_0_Float = _CoverShapeAORemapMin;
|
|
float _Property_b9be92f1612c908d80643f0e96015b33_Out_0_Float = _CoverShapeAORemapMax;
|
|
float2 _Vector2_9b862c4e147d1082afad3606339d2130_Out_0_Vector2 = float2(_Property_ca9c61425ece6b8c909c06b1e2738f1a_Out_0_Float, _Property_b9be92f1612c908d80643f0e96015b33_Out_0_Float);
|
|
float _Remap_c1f0022add809b83bad7b493177bddb7_Out_3_Float;
|
|
Unity_Remap_float(_SampleTexture2D_33392602b94694898ec8227a89f13cc9_G_5_Float, float2 (0, 1), _Vector2_9b862c4e147d1082afad3606339d2130_Out_0_Vector2, _Remap_c1f0022add809b83bad7b493177bddb7_Out_3_Float);
|
|
float _Minimum_595c2f31bb0ec588977a2b9ea46bf6b0_Out_2_Float;
|
|
Unity_Minimum_float(_Split_6ec9cc5e56f3f68ba37ff91557979c18_G_2_Float, _Remap_c1f0022add809b83bad7b493177bddb7_Out_3_Float, _Minimum_595c2f31bb0ec588977a2b9ea46bf6b0_Out_2_Float);
|
|
float3 _Vector3_6cb5b2c4675bb28cb41ea88b6eaa2aff_Out_0_Vector3 = float3(_Split_6ec9cc5e56f3f68ba37ff91557979c18_R_1_Float, _Minimum_595c2f31bb0ec588977a2b9ea46bf6b0_Out_2_Float, _Split_6ec9cc5e56f3f68ba37ff91557979c18_B_3_Float);
|
|
float3 _Lerp_fa40b54f3d5a1a8a95f6306e837b9338_Out_3_Vector3;
|
|
Unity_Lerp_float3(_Vector3_fac10bf467f5ff82b4f071ba165bf458_Out_0_Vector3, _Vector3_6cb5b2c4675bb28cb41ea88b6eaa2aff_Out_0_Vector3, (_Branch_3ccf365d359214809d30b6430d863e3f_Out_3_Float.xxx), _Lerp_fa40b54f3d5a1a8a95f6306e837b9338_Out_3_Vector3);
|
|
float _Split_c4a5352a58a4f88fb40410f956825dc6_R_1_Float = _Lerp_fa40b54f3d5a1a8a95f6306e837b9338_Out_3_Vector3[0];
|
|
float _Split_c4a5352a58a4f88fb40410f956825dc6_G_2_Float = _Lerp_fa40b54f3d5a1a8a95f6306e837b9338_Out_3_Vector3[1];
|
|
float _Split_c4a5352a58a4f88fb40410f956825dc6_B_3_Float = _Lerp_fa40b54f3d5a1a8a95f6306e837b9338_Out_3_Vector3[2];
|
|
float _Split_c4a5352a58a4f88fb40410f956825dc6_A_4_Float = 0;
|
|
float _Property_7861e880056eb88ab923a2ff5b12179d_Out_0_Float = _WetSmoothness;
|
|
float _Lerp_ee63160826cff4869f0e63568dd6f8b7_Out_3_Float;
|
|
Unity_Lerp_float(_Split_c4a5352a58a4f88fb40410f956825dc6_B_3_Float, _Property_7861e880056eb88ab923a2ff5b12179d_Out_0_Float, _OneMinus_e16dfb812ec64b8891c541171687142f_Out_1_Float, _Lerp_ee63160826cff4869f0e63568dd6f8b7_Out_3_Float);
|
|
float _Property_1c389d922d4fba86bc62c7d42ac8643d_Out_0_Float = _CoverNormalScale;
|
|
float3 _NormalStrength_db3de71f618fee878c84a13374c7adc4_Out_2_Vector3;
|
|
Unity_NormalStrength_float((_TriplanarNMn_ba7e211dd8095589a2939b5b239ca8e0_XYZ_1_Vector4.xyz), _Property_1c389d922d4fba86bc62c7d42ac8643d_Out_0_Float, _NormalStrength_db3de71f618fee878c84a13374c7adc4_Out_2_Vector3);
|
|
float3 _NormalBlend_b2e537e7a99f9280ba682b47daf3c5e3_Out_2_Vector3;
|
|
Unity_NormalBlend_float(_NormalStrength_db3de71f618fee878c84a13374c7adc4_Out_2_Vector3, _NormalStrength_401cd5af500bd68dbc9bca19d548d0db_Out_2_Vector3, _NormalBlend_b2e537e7a99f9280ba682b47daf3c5e3_Out_2_Vector3);
|
|
float2 _Vector2_b87489f8633d268598edb76163057164_Out_0_Vector2 = float2(_SampleTexture2D_4bd08411faa60c828847f2247f06a809_A_7_Float, _SampleTexture2D_4bd08411faa60c828847f2247f06a809_G_5_Float);
|
|
float2 _Multiply_95e603bb6d4bd7809de0ae42c8f45058_Out_2_Vector2;
|
|
Unity_Multiply_float2_float2(_Vector2_b87489f8633d268598edb76163057164_Out_0_Vector2, float2(2, 2), _Multiply_95e603bb6d4bd7809de0ae42c8f45058_Out_2_Vector2);
|
|
float2 _Add_c116ac3906ccf68d82dd5b73d0f5659a_Out_2_Vector2;
|
|
Unity_Add_float2(_Multiply_95e603bb6d4bd7809de0ae42c8f45058_Out_2_Vector2, float2(-1, -1), _Add_c116ac3906ccf68d82dd5b73d0f5659a_Out_2_Vector2);
|
|
float _Property_988acb131fd330878b4ac0672366ad90_Out_0_Float = _DetailCoverNormalScale;
|
|
float2 _Multiply_6de1a79215e1928f9f3fc3293df74f88_Out_2_Vector2;
|
|
Unity_Multiply_float2_float2(_Add_c116ac3906ccf68d82dd5b73d0f5659a_Out_2_Vector2, (_Property_988acb131fd330878b4ac0672366ad90_Out_0_Float.xx), _Multiply_6de1a79215e1928f9f3fc3293df74f88_Out_2_Vector2);
|
|
float _Split_9ce53bb7a65f16809b6a95d82286186e_R_1_Float = _Multiply_6de1a79215e1928f9f3fc3293df74f88_Out_2_Vector2[0];
|
|
float _Split_9ce53bb7a65f16809b6a95d82286186e_G_2_Float = _Multiply_6de1a79215e1928f9f3fc3293df74f88_Out_2_Vector2[1];
|
|
float _Split_9ce53bb7a65f16809b6a95d82286186e_B_3_Float = 0;
|
|
float _Split_9ce53bb7a65f16809b6a95d82286186e_A_4_Float = 0;
|
|
float _DotProduct_8912687db556b6819d2a38ba8511a7ae_Out_2_Float;
|
|
Unity_DotProduct_float2(_Multiply_6de1a79215e1928f9f3fc3293df74f88_Out_2_Vector2, _Multiply_6de1a79215e1928f9f3fc3293df74f88_Out_2_Vector2, _DotProduct_8912687db556b6819d2a38ba8511a7ae_Out_2_Float);
|
|
float _Saturate_013ea9a02a1ff18992540b270836cc73_Out_1_Float;
|
|
Unity_Saturate_float(_DotProduct_8912687db556b6819d2a38ba8511a7ae_Out_2_Float, _Saturate_013ea9a02a1ff18992540b270836cc73_Out_1_Float);
|
|
float _OneMinus_eefd2695dc7d77838984fc25a1c00b0b_Out_1_Float;
|
|
Unity_OneMinus_float(_Saturate_013ea9a02a1ff18992540b270836cc73_Out_1_Float, _OneMinus_eefd2695dc7d77838984fc25a1c00b0b_Out_1_Float);
|
|
float _SquareRoot_1d25cc71b4ce9286af1666a96ae6ac5a_Out_1_Float;
|
|
Unity_SquareRoot_float(_OneMinus_eefd2695dc7d77838984fc25a1c00b0b_Out_1_Float, _SquareRoot_1d25cc71b4ce9286af1666a96ae6ac5a_Out_1_Float);
|
|
float3 _Vector3_c3d9c7e92a1c5b8ea5650ab3bb421c27_Out_0_Vector3 = float3(_Split_9ce53bb7a65f16809b6a95d82286186e_R_1_Float, _Split_9ce53bb7a65f16809b6a95d82286186e_G_2_Float, _SquareRoot_1d25cc71b4ce9286af1666a96ae6ac5a_Out_1_Float);
|
|
float3 _NormalBlend_8e1d1c87f8c12b87b64883533bfa43be_Out_2_Vector3;
|
|
Unity_NormalBlend_float(_NormalBlend_b2e537e7a99f9280ba682b47daf3c5e3_Out_2_Vector3, _Vector3_c3d9c7e92a1c5b8ea5650ab3bb421c27_Out_0_Vector3, _NormalBlend_8e1d1c87f8c12b87b64883533bfa43be_Out_2_Vector3);
|
|
float3 _Lerp_48cd568fef7d358b8d65b989db745e6c_Out_3_Vector3;
|
|
Unity_Lerp_float3(_NormalBlend_4242e1b4a785378aa59dd49e9d993ffc_Out_2_Vector3, _NormalBlend_8e1d1c87f8c12b87b64883533bfa43be_Out_2_Vector3, (_Branch_3ccf365d359214809d30b6430d863e3f_Out_3_Float.xxx), _Lerp_48cd568fef7d358b8d65b989db745e6c_Out_3_Vector3);
|
|
surface.BaseColor = _Lerp_43bc7a9493df5a829abf080ee4ad3298_Out_3_Vector3;
|
|
surface.Emission = float3(0, 0, 0);
|
|
surface.Alpha = float(1);
|
|
surface.BentNormal = IN.TangentSpaceNormal;
|
|
surface.Smoothness = _Lerp_ee63160826cff4869f0e63568dd6f8b7_Out_3_Float;
|
|
surface.Occlusion = _Split_c4a5352a58a4f88fb40410f956825dc6_G_2_Float;
|
|
surface.NormalTS = _Lerp_48cd568fef7d358b8d65b989db745e6c_Out_3_Vector3;
|
|
surface.Metallic = _Split_c4a5352a58a4f88fb40410f956825dc6_R_1_Float;
|
|
return surface;
|
|
}
|
|
|
|
// --------------------------------------------------
|
|
// Build Graph Inputs
|
|
#ifdef HAVE_VFX_MODIFICATION
|
|
#define VFX_SRP_ATTRIBUTES AttributesMesh
|
|
#define VaryingsMeshType VaryingsMeshToPS
|
|
#define VFX_SRP_VARYINGS VaryingsMeshType
|
|
#define VFX_SRP_SURFACE_INPUTS FragInputs
|
|
#endif
|
|
|
|
VertexDescriptionInputs AttributesMeshToVertexDescriptionInputs(AttributesMesh input)
|
|
{
|
|
VertexDescriptionInputs output;
|
|
ZERO_INITIALIZE(VertexDescriptionInputs, output);
|
|
|
|
output.ObjectSpaceNormal = input.normalOS;
|
|
output.ObjectSpaceTangent = input.tangentOS.xyz;
|
|
output.ObjectSpacePosition = input.positionOS;
|
|
#if UNITY_ANY_INSTANCING_ENABLED
|
|
#else
|
|
#endif
|
|
|
|
return output;
|
|
}
|
|
|
|
VertexDescription GetVertexDescription(AttributesMesh input, float3 timeParameters
|
|
#ifdef HAVE_VFX_MODIFICATION
|
|
, AttributesElement element
|
|
#endif
|
|
)
|
|
{
|
|
// build graph inputs
|
|
VertexDescriptionInputs vertexDescriptionInputs = AttributesMeshToVertexDescriptionInputs(input);
|
|
// Override time parameters with used one (This is required to correctly handle motion vectors for vertex animation based on time)
|
|
|
|
// evaluate vertex graph
|
|
#ifdef HAVE_VFX_MODIFICATION
|
|
GraphProperties properties;
|
|
ZERO_INITIALIZE(GraphProperties, properties);
|
|
|
|
// Fetch the vertex graph properties for the particle instance.
|
|
GetElementVertexProperties(element, properties);
|
|
|
|
VertexDescription vertexDescription = VertexDescriptionFunction(vertexDescriptionInputs, properties);
|
|
#else
|
|
VertexDescription vertexDescription = VertexDescriptionFunction(vertexDescriptionInputs);
|
|
#endif
|
|
return vertexDescription;
|
|
|
|
}
|
|
|
|
AttributesMesh ApplyMeshModification(AttributesMesh input, float3 timeParameters
|
|
#ifdef USE_CUSTOMINTERP_SUBSTRUCT
|
|
#ifdef TESSELLATION_ON
|
|
, inout VaryingsMeshToDS varyings
|
|
#else
|
|
, inout VaryingsMeshToPS varyings
|
|
#endif
|
|
#endif
|
|
#ifdef HAVE_VFX_MODIFICATION
|
|
, AttributesElement element
|
|
#endif
|
|
)
|
|
{
|
|
VertexDescription vertexDescription = GetVertexDescription(input, timeParameters
|
|
#ifdef HAVE_VFX_MODIFICATION
|
|
, element
|
|
#endif
|
|
);
|
|
|
|
// copy graph output to the results
|
|
input.positionOS = vertexDescription.Position;
|
|
input.normalOS = vertexDescription.Normal;
|
|
input.tangentOS.xyz = vertexDescription.Tangent;
|
|
|
|
|
|
|
|
return input;
|
|
}
|
|
|
|
#if defined(_ADD_CUSTOM_VELOCITY) // For shader graph custom velocity
|
|
// Return precomputed Velocity in object space
|
|
float3 GetCustomVelocity(AttributesMesh input
|
|
#ifdef HAVE_VFX_MODIFICATION
|
|
, AttributesElement element
|
|
#endif
|
|
)
|
|
{
|
|
VertexDescription vertexDescription = GetVertexDescription(input, _TimeParameters.xyz
|
|
#ifdef HAVE_VFX_MODIFICATION
|
|
, element
|
|
#endif
|
|
);
|
|
return vertexDescription.CustomVelocity;
|
|
}
|
|
#endif
|
|
|
|
FragInputs BuildFragInputs(VaryingsMeshToPS input)
|
|
{
|
|
FragInputs output;
|
|
ZERO_INITIALIZE(FragInputs, output);
|
|
|
|
// Init to some default value to make the computer quiet (else it output 'divide by zero' warning even if value is not used).
|
|
// TODO: this is a really poor workaround, but the variable is used in a bunch of places
|
|
// to compute normals which are then passed on elsewhere to compute other values...
|
|
output.tangentToWorld = k_identity3x3;
|
|
output.positionSS = input.positionCS; // input.positionCS is SV_Position
|
|
|
|
output.positionRWS = input.positionRWS;
|
|
output.tangentToWorld = BuildTangentToWorld(input.tangentWS, input.normalWS);
|
|
output.texCoord0 = input.texCoord0;
|
|
output.color = input.color;
|
|
|
|
#if UNITY_ANY_INSTANCING_ENABLED
|
|
#else
|
|
#endif
|
|
|
|
#ifdef HAVE_VFX_MODIFICATION
|
|
// FragInputs from VFX come from two places: Interpolator or CBuffer.
|
|
#if VFX_USE_GRAPH_VALUES
|
|
uint instanceActiveIndex = asuint(UNITY_ACCESS_INSTANCED_PROP(PerInstance, _InstanceActiveIndex));
|
|
/* WARNING: $splice Could not find named fragment 'VFXLoadGraphValues' */
|
|
#endif
|
|
|
|
/* WARNING: $splice Could not find named fragment 'VFXSetFragInputs' */
|
|
|
|
#endif
|
|
|
|
// splice point to copy custom interpolator fields from varyings to frag inputs
|
|
|
|
|
|
return output;
|
|
}
|
|
|
|
// existing HDRP code uses the combined function to go directly from packed to frag inputs
|
|
FragInputs UnpackVaryingsMeshToFragInputs(PackedVaryingsMeshToPS input)
|
|
{
|
|
UNITY_SETUP_INSTANCE_ID(input);
|
|
#if defined(HAVE_VFX_MODIFICATION) && defined(UNITY_INSTANCING_ENABLED)
|
|
unity_InstanceID = input.instanceID;
|
|
#endif
|
|
VaryingsMeshToPS unpacked = UnpackVaryingsMeshToPS(input);
|
|
return BuildFragInputs(unpacked);
|
|
}
|
|
SurfaceDescriptionInputs FragInputsToSurfaceDescriptionInputs(FragInputs input, float3 viewWS)
|
|
{
|
|
SurfaceDescriptionInputs output;
|
|
ZERO_INITIALIZE(SurfaceDescriptionInputs, output);
|
|
|
|
output.WorldSpaceNormal = normalize(input.tangentToWorld[2].xyz);
|
|
#if defined(SHADER_STAGE_RAY_TRACING)
|
|
#else
|
|
#endif
|
|
output.TangentSpaceNormal = float3(0.0f, 0.0f, 1.0f);
|
|
output.WorldSpaceTangent = input.tangentToWorld[0].xyz;
|
|
output.WorldSpaceBiTangent = input.tangentToWorld[1].xyz;
|
|
output.AbsoluteWorldSpacePosition = GetAbsolutePositionWS(input.positionRWS);
|
|
|
|
#if UNITY_UV_STARTS_AT_TOP
|
|
#else
|
|
#endif
|
|
|
|
|
|
output.uv0 = input.texCoord0;
|
|
output.VertexColor = input.color;
|
|
|
|
// splice point to copy frag inputs custom interpolator pack into the SDI
|
|
|
|
|
|
return output;
|
|
}
|
|
|
|
// --------------------------------------------------
|
|
// Build Surface Data (Specific Material)
|
|
|
|
void ApplyDecalToSurfaceDataNoNormal(DecalSurfaceData decalSurfaceData, inout SurfaceData surfaceData);
|
|
|
|
void ApplyDecalAndGetNormal(FragInputs fragInputs, PositionInputs posInput, SurfaceDescription surfaceDescription,
|
|
inout SurfaceData surfaceData)
|
|
{
|
|
float3 doubleSidedConstants = GetDoubleSidedConstants();
|
|
|
|
#ifdef DECAL_NORMAL_BLENDING
|
|
// SG nodes don't ouptut surface gradients, so if decals require surf grad blending, we have to convert
|
|
// the normal to gradient before applying the decal. We then have to resolve the gradient back to world space
|
|
float3 normalTS;
|
|
|
|
normalTS = SurfaceGradientFromTangentSpaceNormalAndFromTBN(surfaceDescription.NormalTS,
|
|
fragInputs.tangentToWorld[0], fragInputs.tangentToWorld[1]);
|
|
|
|
|
|
#if HAVE_DECALS
|
|
if (_EnableDecals)
|
|
{
|
|
float alpha = 1.0;
|
|
alpha = surfaceDescription.Alpha;
|
|
|
|
DecalSurfaceData decalSurfaceData = GetDecalSurfaceData(posInput, fragInputs, alpha);
|
|
ApplyDecalToSurfaceNormal(decalSurfaceData, fragInputs.tangentToWorld[2], normalTS);
|
|
ApplyDecalToSurfaceDataNoNormal(decalSurfaceData, surfaceData);
|
|
}
|
|
#endif
|
|
|
|
GetNormalWS_SG(fragInputs, normalTS, surfaceData.normalWS, doubleSidedConstants);
|
|
#else
|
|
// normal delivered to master node
|
|
GetNormalWS(fragInputs, surfaceDescription.NormalTS, surfaceData.normalWS, doubleSidedConstants);
|
|
|
|
#if HAVE_DECALS
|
|
if (_EnableDecals)
|
|
{
|
|
float alpha = 1.0;
|
|
alpha = surfaceDescription.Alpha;
|
|
|
|
// Both uses and modifies 'surfaceData.normalWS'.
|
|
DecalSurfaceData decalSurfaceData = GetDecalSurfaceData(posInput, fragInputs, alpha);
|
|
ApplyDecalToSurfaceNormal(decalSurfaceData, surfaceData.normalWS.xyz);
|
|
ApplyDecalToSurfaceDataNoNormal(decalSurfaceData, surfaceData);
|
|
}
|
|
#endif
|
|
#endif
|
|
}
|
|
void BuildSurfaceData(FragInputs fragInputs, inout SurfaceDescription surfaceDescription, float3 V, PositionInputs posInput, out SurfaceData surfaceData, out float3 bentNormalWS)
|
|
{
|
|
ZERO_INITIALIZE(SurfaceData, surfaceData);
|
|
|
|
// specularOcclusion need to be init ahead of decal to quiet the compiler that modify the SurfaceData struct
|
|
// however specularOcclusion can come from the graph, so need to be init here so it can be override.
|
|
surfaceData.specularOcclusion = 1.0;
|
|
surfaceData.thickness = 0.0;
|
|
|
|
surfaceData.baseColor = surfaceDescription.BaseColor;
|
|
surfaceData.perceptualSmoothness = surfaceDescription.Smoothness;
|
|
surfaceData.ambientOcclusion = surfaceDescription.Occlusion;
|
|
surfaceData.metallic = surfaceDescription.Metallic;
|
|
|
|
#if defined(_REFRACTION_PLANE) || defined(_REFRACTION_SPHERE) || defined(_REFRACTION_THIN)
|
|
if (_EnableSSRefraction)
|
|
{
|
|
|
|
surfaceData.transmittanceMask = (1.0 - surfaceDescription.Alpha);
|
|
surfaceDescription.Alpha = 1.0;
|
|
}
|
|
else
|
|
{
|
|
surfaceData.ior = 1.0;
|
|
surfaceData.transmittanceColor = float3(1.0, 1.0, 1.0);
|
|
surfaceData.atDistance = 1.0;
|
|
surfaceData.transmittanceMask = 0.0;
|
|
surfaceDescription.Alpha = 1.0;
|
|
}
|
|
#else
|
|
surfaceData.ior = 1.0;
|
|
surfaceData.transmittanceColor = float3(1.0, 1.0, 1.0);
|
|
surfaceData.atDistance = 1.0;
|
|
surfaceData.transmittanceMask = 0.0;
|
|
#endif
|
|
|
|
// These static material feature allow compile time optimization
|
|
surfaceData.materialFeatures = MATERIALFEATUREFLAGS_LIT_STANDARD;
|
|
#ifdef _MATERIAL_FEATURE_SUBSURFACE_SCATTERING
|
|
surfaceData.materialFeatures |= MATERIALFEATUREFLAGS_LIT_SUBSURFACE_SCATTERING;
|
|
#endif
|
|
|
|
#ifdef _MATERIAL_FEATURE_TRANSMISSION
|
|
surfaceData.materialFeatures |= MATERIALFEATUREFLAGS_LIT_TRANSMISSION;
|
|
#endif
|
|
|
|
#ifdef _MATERIAL_FEATURE_COLORED_TRANSMISSION
|
|
surfaceData.materialFeatures |= MATERIALFEATUREFLAGS_LIT_TRANSMISSION;
|
|
surfaceData.materialFeatures |= MATERIALFEATUREFLAGS_LIT_COLORED_TRANSMISSION;
|
|
|
|
#endif
|
|
|
|
#ifdef _MATERIAL_FEATURE_ANISOTROPY
|
|
surfaceData.materialFeatures |= MATERIALFEATUREFLAGS_LIT_ANISOTROPY;
|
|
|
|
// Initialize the normal to something non-zero to avoid a div-zero warning for anisotropy.
|
|
surfaceData.normalWS = float3(0, 1, 0);
|
|
#endif
|
|
|
|
#ifdef _MATERIAL_FEATURE_IRIDESCENCE
|
|
surfaceData.materialFeatures |= MATERIALFEATUREFLAGS_LIT_IRIDESCENCE;
|
|
#endif
|
|
|
|
#ifdef _MATERIAL_FEATURE_SPECULAR_COLOR
|
|
surfaceData.materialFeatures |= MATERIALFEATUREFLAGS_LIT_SPECULAR_COLOR;
|
|
#endif
|
|
|
|
#ifdef _MATERIAL_FEATURE_CLEAR_COAT
|
|
surfaceData.materialFeatures |= MATERIALFEATUREFLAGS_LIT_CLEAR_COAT;
|
|
#endif
|
|
|
|
#if defined (_MATERIAL_FEATURE_SPECULAR_COLOR) && defined (_ENERGY_CONSERVING_SPECULAR)
|
|
// Require to have setup baseColor
|
|
// Reproduce the energy conservation done in legacy Unity. Not ideal but better for compatibility and users can unchek it
|
|
surfaceData.baseColor *= (1.0 - Max3(surfaceData.specularColor.r, surfaceData.specularColor.g, surfaceData.specularColor.b));
|
|
#endif
|
|
|
|
float3 doubleSidedConstants = GetDoubleSidedConstants();
|
|
|
|
ApplyDecalAndGetNormal(fragInputs, posInput, surfaceDescription, surfaceData);
|
|
|
|
surfaceData.geomNormalWS = fragInputs.tangentToWorld[2];
|
|
|
|
surfaceData.tangentWS = normalize(fragInputs.tangentToWorld[0].xyz); // The tangent is not normalize in tangentToWorld for mikkt. TODO: Check if it expected that we normalize with Morten. Tag: SURFACE_GRADIENT
|
|
|
|
|
|
bentNormalWS = surfaceData.normalWS;
|
|
|
|
surfaceData.tangentWS = Orthonormalize(surfaceData.tangentWS, surfaceData.normalWS);
|
|
|
|
#ifdef DEBUG_DISPLAY
|
|
#if !defined(SHADER_STAGE_RAY_TRACING)
|
|
// Mipmap mode debugging isn't supported with ray tracing as it relies on derivatives
|
|
if (_DebugMipMapMode != DEBUGMIPMAPMODE_NONE)
|
|
{
|
|
#ifdef FRAG_INPUTS_USE_TEXCOORD0
|
|
surfaceData.baseColor = GET_TEXTURE_STREAMING_DEBUG(posInput.positionSS, fragInputs.texCoord0);
|
|
#else
|
|
surfaceData.baseColor = GET_TEXTURE_STREAMING_DEBUG_NO_UV(posInput.positionSS);
|
|
#endif
|
|
surfaceData.metallic = 0;
|
|
}
|
|
#endif
|
|
|
|
// We need to call ApplyDebugToSurfaceData after filling the surfaceData and before filling builtinData
|
|
// as it can modify attribute use for static lighting
|
|
ApplyDebugToSurfaceData(fragInputs.tangentToWorld, surfaceData);
|
|
#endif
|
|
|
|
// By default we use the ambient occlusion with Tri-ace trick (apply outside) for specular occlusion.
|
|
// If user provide bent normal then we process a better term
|
|
#if defined(_SPECULAR_OCCLUSION_CUSTOM)
|
|
// Just use the value passed through via the slot (not active otherwise)
|
|
#elif defined(_SPECULAR_OCCLUSION_FROM_AO_BENT_NORMAL)
|
|
// If we have bent normal and ambient occlusion, process a specular occlusion
|
|
surfaceData.specularOcclusion = GetSpecularOcclusionFromBentAO(V, bentNormalWS, surfaceData.normalWS, surfaceData.ambientOcclusion, PerceptualSmoothnessToPerceptualRoughness(surfaceData.perceptualSmoothness));
|
|
#elif defined(_AMBIENT_OCCLUSION) && defined(_SPECULAR_OCCLUSION_FROM_AO)
|
|
surfaceData.specularOcclusion = GetSpecularOcclusionFromAmbientOcclusion(ClampNdotV(dot(surfaceData.normalWS, V)), surfaceData.ambientOcclusion, PerceptualSmoothnessToRoughness(surfaceData.perceptualSmoothness));
|
|
#endif
|
|
|
|
#if defined(_ENABLE_GEOMETRIC_SPECULAR_AA) && !defined(SHADER_STAGE_RAY_TRACING)
|
|
surfaceData.perceptualSmoothness = GeometricNormalFiltering(surfaceData.perceptualSmoothness, fragInputs.tangentToWorld[2], surfaceDescription.SpecularAAScreenSpaceVariance, surfaceDescription.SpecularAAThreshold);
|
|
#endif
|
|
}
|
|
|
|
// --------------------------------------------------
|
|
// Get Surface And BuiltinData
|
|
|
|
void GetSurfaceAndBuiltinData(FragInputs fragInputs, float3 V, inout PositionInputs posInput, out SurfaceData surfaceData, out BuiltinData builtinData RAY_TRACING_OPTIONAL_PARAMETERS)
|
|
{
|
|
// Don't dither if displaced tessellation (we're fading out the displacement instead to match the next LOD)
|
|
#if !defined(SHADER_STAGE_RAY_TRACING) && !defined(_TESSELLATION_DISPLACEMENT)
|
|
#ifdef LOD_FADE_CROSSFADE // enable dithering LOD transition if user select CrossFade transition in LOD group
|
|
LODDitheringTransition(ComputeFadeMaskSeed(V, posInput.positionSS), unity_LODFade.x);
|
|
#endif
|
|
#endif
|
|
|
|
#ifndef SHADER_UNLIT
|
|
#ifdef _DOUBLESIDED_ON
|
|
float3 doubleSidedConstants = _DoubleSidedConstants.xyz;
|
|
#else
|
|
float3 doubleSidedConstants = float3(1.0, 1.0, 1.0);
|
|
#endif
|
|
|
|
ApplyDoubleSidedFlipOrMirror(fragInputs, doubleSidedConstants); // Apply double sided flip on the vertex normal
|
|
#endif // SHADER_UNLIT
|
|
|
|
SurfaceDescriptionInputs surfaceDescriptionInputs = FragInputsToSurfaceDescriptionInputs(fragInputs, V);
|
|
|
|
#if defined(HAVE_VFX_MODIFICATION)
|
|
GraphProperties properties;
|
|
ZERO_INITIALIZE(GraphProperties, properties);
|
|
|
|
GetElementPixelProperties(fragInputs, properties);
|
|
|
|
SurfaceDescription surfaceDescription = SurfaceDescriptionFunction(surfaceDescriptionInputs, properties);
|
|
#else
|
|
SurfaceDescription surfaceDescription = SurfaceDescriptionFunction(surfaceDescriptionInputs);
|
|
#endif
|
|
|
|
#ifdef DEBUG_DISPLAY
|
|
if (_DebugMipMapMode != DEBUGMIPMAPMODE_NONE)
|
|
{
|
|
surfaceDescription.Alpha = 1.0f;
|
|
}
|
|
#endif
|
|
|
|
// Perform alpha test very early to save performance (a killed pixel will not sample textures)
|
|
// TODO: split graph evaluation to grab just alpha dependencies first? tricky..
|
|
#ifdef _ALPHATEST_ON
|
|
float alphaCutoff = surfaceDescription.AlphaClipThreshold;
|
|
#if SHADERPASS == SHADERPASS_TRANSPARENT_DEPTH_PREPASS
|
|
// The TransparentDepthPrepass is also used with SSR transparent.
|
|
// If an artists enable transaprent SSR but not the TransparentDepthPrepass itself, then we use AlphaClipThreshold
|
|
// otherwise if TransparentDepthPrepass is enabled we use AlphaClipThresholdDepthPrepass
|
|
#elif SHADERPASS == SHADERPASS_TRANSPARENT_DEPTH_POSTPASS
|
|
// DepthPostpass always use its own alpha threshold
|
|
alphaCutoff = surfaceDescription.AlphaClipThresholdDepthPostpass;
|
|
#elif (SHADERPASS == SHADERPASS_SHADOWS) || (SHADERPASS == SHADERPASS_RAYTRACING_VISIBILITY)
|
|
// If use shadow threshold isn't enable we don't allow any test
|
|
#endif
|
|
|
|
GENERIC_ALPHA_TEST(surfaceDescription.Alpha, alphaCutoff);
|
|
#endif
|
|
|
|
#if !defined(SHADER_STAGE_RAY_TRACING) && _DEPTHOFFSET_ON
|
|
ApplyDepthOffsetPositionInput(V, surfaceDescription.DepthOffset, GetViewForwardDir(), GetWorldToHClipMatrix(), posInput);
|
|
#endif
|
|
|
|
#ifndef SHADER_UNLIT
|
|
float3 bentNormalWS;
|
|
BuildSurfaceData(fragInputs, surfaceDescription, V, posInput, surfaceData, bentNormalWS);
|
|
|
|
#ifdef FRAG_INPUTS_USE_TEXCOORD1
|
|
float4 lightmapTexCoord1 = fragInputs.texCoord1;
|
|
#else
|
|
float4 lightmapTexCoord1 = float4(0,0,0,0);
|
|
#endif
|
|
|
|
#ifdef FRAG_INPUTS_USE_TEXCOORD2
|
|
float4 lightmapTexCoord2 = fragInputs.texCoord2;
|
|
#else
|
|
float4 lightmapTexCoord2 = float4(0,0,0,0);
|
|
#endif
|
|
|
|
float alpha = 1.0;
|
|
alpha = surfaceDescription.Alpha;
|
|
|
|
// Builtin Data
|
|
// For back lighting we use the oposite vertex normal
|
|
InitBuiltinData(posInput, alpha, bentNormalWS, -fragInputs.tangentToWorld[2], lightmapTexCoord1, lightmapTexCoord2, builtinData);
|
|
|
|
#else
|
|
BuildSurfaceData(fragInputs, surfaceDescription, V, posInput, surfaceData);
|
|
|
|
ZERO_BUILTIN_INITIALIZE(builtinData); // No call to InitBuiltinData as we don't have any lighting
|
|
builtinData.opacity = surfaceDescription.Alpha;
|
|
|
|
#if defined(DEBUG_DISPLAY)
|
|
// Light Layers are currently not used for the Unlit shader (because it is not lit)
|
|
// But Unlit objects do cast shadows according to their rendering layer mask, which is what we want to
|
|
// display in the light layers visualization mode, therefore we need the renderingLayers
|
|
builtinData.renderingLayers = GetMeshRenderingLayerMask();
|
|
#endif
|
|
|
|
#endif // SHADER_UNLIT
|
|
|
|
#ifdef _ALPHATEST_ON
|
|
// Used for sharpening by alpha to mask - Alpha to covertage is only used with depth only and forward pass (no shadow pass, no transparent pass)
|
|
builtinData.alphaClipTreshold = alphaCutoff;
|
|
#endif
|
|
|
|
// override sampleBakedGI - not used by Unlit
|
|
// When overriding GI, we need to force the isLightmap flag to make sure we don't add APV (sampled in the lightloop) on top of the overridden value (set at GBuffer stage)
|
|
|
|
builtinData.emissiveColor = surfaceDescription.Emission;
|
|
|
|
// Note this will not fully work on transparent surfaces (can check with _SURFACE_TYPE_TRANSPARENT define)
|
|
// We will always overwrite vt feeback with the nearest. So behind transparent surfaces vt will not be resolved
|
|
// This is a limitation of the current MRT approach.
|
|
#ifdef UNITY_VIRTUAL_TEXTURING
|
|
#endif
|
|
|
|
#if _DEPTHOFFSET_ON
|
|
builtinData.depthOffset = surfaceDescription.DepthOffset;
|
|
#endif
|
|
|
|
// TODO: We should generate distortion / distortionBlur for non distortion pass
|
|
#if (SHADERPASS == SHADERPASS_DISTORTION)
|
|
builtinData.distortion = surfaceDescription.Distortion;
|
|
builtinData.distortionBlur = surfaceDescription.DistortionBlur;
|
|
#endif
|
|
|
|
#ifndef SHADER_UNLIT
|
|
// PostInitBuiltinData call ApplyDebugToBuiltinData
|
|
PostInitBuiltinData(V, posInput, surfaceData, builtinData);
|
|
#else
|
|
ApplyDebugToBuiltinData(builtinData);
|
|
#endif
|
|
|
|
RAY_TRACING_OPTIONAL_ALPHA_TEST_PASS
|
|
}
|
|
|
|
// --------------------------------------------------
|
|
// Main
|
|
|
|
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/RenderPipeline/ShaderPass/ShaderPassFullScreenDebug.hlsl"
|
|
|
|
// --------------------------------------------------
|
|
// Visual Effect Vertex Invocations
|
|
|
|
#ifdef HAVE_VFX_MODIFICATION
|
|
#if !defined(SHADER_STAGE_RAY_TRACING)
|
|
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/ShaderLibrary/VisualEffectVertex.hlsl"
|
|
#else
|
|
#endif
|
|
#endif
|
|
|
|
ENDHLSL
|
|
}
|
|
Pass
|
|
{
|
|
Name "DepthOnly"
|
|
Tags
|
|
{
|
|
"LightMode" = "DepthOnly"
|
|
}
|
|
|
|
// Render State
|
|
Cull [_CullMode]
|
|
ZWrite On
|
|
Stencil
|
|
{
|
|
WriteMask [_StencilWriteMaskDepth]
|
|
Ref [_StencilRefDepth]
|
|
CompFront Always
|
|
PassFront Replace
|
|
CompBack Always
|
|
PassBack Replace
|
|
}
|
|
|
|
// Debug
|
|
// <None>
|
|
|
|
// --------------------------------------------------
|
|
// Pass
|
|
|
|
HLSLPROGRAM
|
|
|
|
// Pragmas
|
|
#pragma multi_compile _ DOTS_INSTANCING_ON
|
|
#pragma instancing_options renderinglayer
|
|
#pragma target 4.5
|
|
#pragma vertex Vert
|
|
#pragma fragment Frag
|
|
#pragma only_renderers d3d11 playstation xboxone xboxseries vulkan metal switch
|
|
#pragma multi_compile_instancing
|
|
|
|
// Keywords
|
|
#pragma multi_compile _ WRITE_NORMAL_BUFFER
|
|
#pragma multi_compile_fragment _ WRITE_MSAA_DEPTH
|
|
#pragma shader_feature _ _SURFACE_TYPE_TRANSPARENT
|
|
#pragma shader_feature_local _ _DOUBLESIDED_ON
|
|
#pragma shader_feature_local _ _ADD_PRECOMPUTED_VELOCITY
|
|
#pragma shader_feature_local _ _TRANSPARENT_WRITES_MOTION_VEC _TRANSPARENT_REFRACTIVE_SORT
|
|
#pragma shader_feature_local_fragment _ _ENABLE_FOG_ON_TRANSPARENT
|
|
#pragma multi_compile _ LOD_FADE_CROSSFADE
|
|
#pragma shader_feature_local_fragment _ _DISABLE_DECALS
|
|
#pragma shader_feature_local_raytracing _ _DISABLE_DECALS
|
|
#pragma shader_feature_local_fragment _ _DISABLE_SSR
|
|
#pragma shader_feature_local_raytracing _ _DISABLE_SSR
|
|
#pragma shader_feature_local_fragment _ _DISABLE_SSR_TRANSPARENT
|
|
#pragma shader_feature_local_raytracing _ _DISABLE_SSR_TRANSPARENT
|
|
#pragma multi_compile_fragment _ WRITE_DECAL_BUFFER WRITE_RENDERING_LAYER
|
|
#pragma shader_feature_local _ _REFRACTION_PLANE _REFRACTION_SPHERE _REFRACTION_THIN
|
|
#pragma shader_feature_local_fragment _MATERIAL_FEATURE_SUBSURFACE_SCATTERING
|
|
#pragma shader_feature_local_raytracing _MATERIAL_FEATURE_SUBSURFACE_SCATTERING
|
|
#pragma shader_feature_local_fragment _MATERIAL_FEATURE_TRANSMISSION
|
|
#pragma shader_feature_local_raytracing _MATERIAL_FEATURE_TRANSMISSION
|
|
#pragma shader_feature_local_fragment _MATERIAL_FEATURE_ANISOTROPY
|
|
#pragma shader_feature_local_raytracing _MATERIAL_FEATURE_ANISOTROPY
|
|
#pragma shader_feature_local_fragment _MATERIAL_FEATURE_IRIDESCENCE
|
|
#pragma shader_feature_local_raytracing _MATERIAL_FEATURE_IRIDESCENCE
|
|
#pragma shader_feature_local_fragment _MATERIAL_FEATURE_SPECULAR_COLOR
|
|
#pragma shader_feature_local_raytracing _MATERIAL_FEATURE_SPECULAR_COLOR
|
|
#pragma shader_feature_local_fragment _MATERIAL_FEATURE_COLORED_TRANSMISSION
|
|
#pragma shader_feature_local_raytracing _MATERIAL_FEATURE_COLORED_TRANSMISSION
|
|
// GraphKeywords: <None>
|
|
|
|
// Defines
|
|
#define SHADERPASS SHADERPASS_DEPTH_ONLY
|
|
#define RAYTRACING_SHADER_GRAPH_DEFAULT
|
|
#define SUPPORT_GLOBAL_MIP_BIAS 1
|
|
|
|
// For custom interpolators to inject a substruct definition before FragInputs definition,
|
|
// allowing for FragInputs to capture CI's intended for ShaderGraph's SDI.
|
|
struct CustomInterpolators
|
|
{
|
|
};
|
|
#define USE_CUSTOMINTERP_SUBSTRUCT
|
|
|
|
|
|
|
|
// TODO: Merge FragInputsVFX substruct with CustomInterpolators.
|
|
#ifdef HAVE_VFX_MODIFICATION
|
|
struct FragInputsVFX
|
|
{
|
|
/* WARNING: $splice Could not find named fragment 'FragInputsVFX' */
|
|
};
|
|
#endif
|
|
|
|
#include "Packages/com.unity.render-pipelines.core/ShaderLibrary/Common.hlsl"
|
|
#include "Packages/com.unity.render-pipelines.core/ShaderLibrary/GeometricTools.hlsl" // Required by Tessellation.hlsl
|
|
#include "Packages/com.unity.render-pipelines.core/ShaderLibrary/Tessellation.hlsl"
|
|
#include "Packages/com.unity.render-pipelines.core/ShaderLibrary/Texture.hlsl"
|
|
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/ShaderLibrary/ShaderVariables.hlsl"
|
|
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/RenderPipeline/ShaderPass/ShaderPass.cs.hlsl"
|
|
#include "Packages/com.unity.render-pipelines.core/ShaderLibrary/TextureStack.hlsl" // Required to be include before we include properties as it define DECLARE_STACK_CB
|
|
#include "Packages/com.unity.render-pipelines.core/ShaderLibrary/DebugMipmapStreamingMacros.hlsl" // Required before including properties as it defines UNITY_TEXTURE_STREAMING_DEBUG_VARS
|
|
// Always include Shader Graph version
|
|
// Always include last to avoid double macros
|
|
#include "Packages/com.unity.shadergraph/ShaderGraphLibrary/Functions.hlsl" // Need to be here for Gradient struct definition
|
|
|
|
// --------------------------------------------------
|
|
// Defines
|
|
|
|
// Attribute
|
|
#define ATTRIBUTES_NEED_NORMAL
|
|
#define ATTRIBUTES_NEED_TANGENT
|
|
#define ATTRIBUTES_NEED_TEXCOORD0
|
|
#define ATTRIBUTES_NEED_COLOR
|
|
#define VARYINGS_NEED_POSITION_WS
|
|
#define VARYINGS_NEED_TANGENT_TO_WORLD
|
|
#define VARYINGS_NEED_TEXCOORD0
|
|
#define VARYINGS_NEED_COLOR
|
|
|
|
#define HAVE_MESH_MODIFICATION
|
|
|
|
//Strip down the FragInputs.hlsl (on graphics), so we can only optimize the interpolators we use.
|
|
//if by accident something requests contents of FragInputs.hlsl, it will be caught as a compiler error
|
|
//Frag inputs stripping is only enabled when FRAG_INPUTS_ENABLE_STRIPPING is set
|
|
#if !defined(SHADER_STAGE_RAY_TRACING) && SHADERPASS != SHADERPASS_RAYTRACING_GBUFFER && SHADERPASS != SHADERPASS_FULL_SCREEN_DEBUG
|
|
#define FRAG_INPUTS_ENABLE_STRIPPING
|
|
#endif
|
|
#define FRAG_INPUTS_USE_TEXCOORD0
|
|
|
|
|
|
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/RenderPipeline/ShaderPass/FragInputs.hlsl"
|
|
|
|
|
|
|
|
|
|
// Following two define are a workaround introduce in 10.1.x for RaytracingQualityNode
|
|
// The ShaderGraph don't support correctly migration of this node as it serialize all the node data
|
|
// in the json file making it impossible to uprgrade. Until we get a fix, we do a workaround here
|
|
// to still allow us to rename the field and keyword of this node without breaking existing code.
|
|
#ifdef RAYTRACING_SHADER_GRAPH_DEFAULT
|
|
#define RAYTRACING_SHADER_GRAPH_HIGH
|
|
#endif
|
|
|
|
#ifdef RAYTRACING_SHADER_GRAPH_RAYTRACED
|
|
#define RAYTRACING_SHADER_GRAPH_LOW
|
|
#endif
|
|
// end
|
|
|
|
#ifndef SHADER_UNLIT
|
|
// We need isFrontFace when using double sided - it is not required for unlit as in case of unlit double sided only drive the cullmode
|
|
// VARYINGS_NEED_CULLFACE can be define by VaryingsMeshToPS.FaceSign input if a IsFrontFace Node is included in the shader graph.
|
|
#if defined(_DOUBLESIDED_ON) && !defined(VARYINGS_NEED_CULLFACE)
|
|
#define VARYINGS_NEED_CULLFACE
|
|
#endif
|
|
#endif
|
|
|
|
// Specific Material Define
|
|
#define _AMBIENT_OCCLUSION 1
|
|
#define _SPECULAR_OCCLUSION_FROM_AO 1
|
|
#define _ENERGY_CONSERVING_SPECULAR 1
|
|
|
|
#if _MATERIAL_FEATURE_COLORED_TRANSMISSION
|
|
// Colored Transmission doesn't support clear coat
|
|
#undef _MATERIAL_FEATURE_CLEAR_COAT
|
|
#endif
|
|
|
|
// If we use subsurface scattering, enable output split lighting (for forward pass)
|
|
#if defined(_MATERIAL_FEATURE_SUBSURFACE_SCATTERING) && !defined(_SURFACE_TYPE_TRANSPARENT)
|
|
#define OUTPUT_SPLIT_LIGHTING
|
|
#endif
|
|
|
|
// This shader support recursive rendering for raytracing
|
|
#define HAVE_RECURSIVE_RENDERING
|
|
|
|
// In Path Tracing, For all single-sided, refractive materials, we want to force a thin refraction model
|
|
#if (SHADERPASS == SHADERPASS_PATH_TRACING) && !defined(_DOUBLESIDED_ON) && (defined(_REFRACTION_PLANE) || defined(_REFRACTION_SPHERE))
|
|
#undef _REFRACTION_PLANE
|
|
#undef _REFRACTION_SPHERE
|
|
#define _REFRACTION_THIN
|
|
#endif
|
|
// Caution: we can use the define SHADER_UNLIT onlit after the above Material include as it is the Unlit template who define it
|
|
|
|
// To handle SSR on transparent correctly with a possibility to enable/disable it per framesettings
|
|
// we should have a code like this:
|
|
// if !defined(_DISABLE_SSR_TRANSPARENT)
|
|
// pragma multi_compile _ WRITE_NORMAL_BUFFER
|
|
// endif
|
|
// i.e we enable the multicompile only if we can receive SSR or not, and then C# code drive
|
|
// it based on if SSR transparent in frame settings and not (and stripper can strip it).
|
|
// this is currently not possible with our current preprocessor as _DISABLE_SSR_TRANSPARENT is a keyword not a define
|
|
// so instead we used this and chose to pay the extra cost of normal write even if SSR transaprent is disabled.
|
|
// Ideally the shader graph generator should handle it but condition below can't be handle correctly for now.
|
|
#if SHADERPASS == SHADERPASS_TRANSPARENT_DEPTH_PREPASS
|
|
#if !defined(_DISABLE_SSR_TRANSPARENT) && !defined(SHADER_UNLIT)
|
|
#define WRITE_NORMAL_BUFFER
|
|
#endif
|
|
#endif
|
|
|
|
// See Lit.shader
|
|
#if SHADERPASS == SHADERPASS_MOTION_VECTORS && defined(WRITE_DECAL_BUFFER_AND_RENDERING_LAYER)
|
|
#define WRITE_DECAL_BUFFER
|
|
#endif
|
|
|
|
#ifndef DEBUG_DISPLAY
|
|
// In case of opaque we don't want to perform the alpha test, it is done in depth prepass and we use depth equal for ztest (setup from UI)
|
|
// Don't do it with debug display mode as it is possible there is no depth prepass in this case
|
|
#if !defined(_SURFACE_TYPE_TRANSPARENT)
|
|
#if SHADERPASS == SHADERPASS_FORWARD
|
|
#define SHADERPASS_FORWARD_BYPASS_ALPHA_TEST
|
|
#elif SHADERPASS == SHADERPASS_GBUFFER
|
|
#define SHADERPASS_GBUFFER_BYPASS_ALPHA_TEST
|
|
#endif
|
|
#endif
|
|
#endif
|
|
|
|
// Define _DEFERRED_CAPABLE_MATERIAL for shader capable to run in deferred pass
|
|
#if defined(SHADER_LIT) && !defined(_SURFACE_TYPE_TRANSPARENT)
|
|
#define _DEFERRED_CAPABLE_MATERIAL
|
|
#endif
|
|
|
|
// Translate transparent motion vector define
|
|
#if (defined(_TRANSPARENT_WRITES_MOTION_VEC) || defined(_TRANSPARENT_REFRACTIVE_SORT)) && defined(_SURFACE_TYPE_TRANSPARENT)
|
|
#define _WRITE_TRANSPARENT_MOTION_VECTOR
|
|
#endif
|
|
|
|
// -- Graph Properties
|
|
CBUFFER_START(UnityPerMaterial)
|
|
float4 _BaseColor;
|
|
float4 _BaseColorMap_TexelSize;
|
|
float4 _BaseTilingOffset;
|
|
float _BaseTriplanarThreshold;
|
|
float4 _BaseNormalMap_TexelSize;
|
|
float _BaseNormalScale;
|
|
float4 _BaseMaskMap_TexelSize;
|
|
float _BaseMetallic;
|
|
float _BaseAORemapMin;
|
|
float _BaseAORemapMax;
|
|
float _BaseSmoothnessRemapMin;
|
|
float _BaseSmoothnessRemapMax;
|
|
float _USEDYNAMICCOVERTSTATICMASKF;
|
|
float4 _CoverMaskA_TexelSize;
|
|
float _CoverMaskPower;
|
|
float _Cover_Amount;
|
|
float _Cover_Amount_Grow_Speed;
|
|
float3 _CoverDirection;
|
|
float _Cover_Max_Angle;
|
|
float _Cover_Min_Height;
|
|
float _Cover_Min_Height_Blending;
|
|
float4 _CoverBaseColor;
|
|
float4 _CoverBaseColorMap_TexelSize;
|
|
float4 _CoverTilingOffset;
|
|
float _CoverTriplanarThreshold;
|
|
float4 _CoverNormalMap_TexelSize;
|
|
float _CoverNormalScale;
|
|
float _CoverNormalBlendHardness;
|
|
float _CoverHeightMapMin;
|
|
float _CoverHeightMapMax;
|
|
float _CoverHeightMapOffset;
|
|
float _CoverHardness;
|
|
float4 _CoverMaskMap_TexelSize;
|
|
float _CoverMetallic;
|
|
float _CoverAORemapMin;
|
|
float _CoverAORemapMax;
|
|
float _CoverSmoothnessRemapMin;
|
|
float _CoverSmoothnessRemapMax;
|
|
float4 _ShapeNormalMap_TexelSize;
|
|
float _shapeNormalScale;
|
|
float _CovershapeNormalScale;
|
|
float4 _ShapeAO_TexelSize;
|
|
float _ShapeAORemapMin;
|
|
float _ShapeAORemapMax;
|
|
float _CoverShapeAORemapMin;
|
|
float _CoverShapeAORemapMax;
|
|
float4 _DetailMap_TexelSize;
|
|
float4 _DetailTilingOffset;
|
|
float _DetailAlbedoScale;
|
|
float _DetailNormalScale;
|
|
float _DetailSmoothnessScale;
|
|
float _DetailCoverAlbedoScale;
|
|
float _DetailCoverNormalScale;
|
|
float _DetailCoverSmoothnessScale;
|
|
float _CoverMaskRCurvature;
|
|
float _BaseBrightnessCurvMultply;
|
|
float _BaseBrightnessCurvPower;
|
|
float _BaseDarknessCurvMultply;
|
|
float _BaseDarknessCurvPower;
|
|
float _CoverBrightnessCurvMultply;
|
|
float _CoverBrightnessCurvPower;
|
|
float _CoverDarknessCurvMultply;
|
|
float _CoverDarknessCurvPower;
|
|
float4 _WetColor;
|
|
float _WetSmoothness;
|
|
float4 _EmissionColor;
|
|
float _UseShadowThreshold;
|
|
float4 _DoubleSidedConstants;
|
|
UNITY_TEXTURE_STREAMING_DEBUG_VARS;
|
|
float _BlendMode;
|
|
float _EnableBlendModePreserveSpecularLighting;
|
|
float _RayTracing;
|
|
float _RefractionModel;
|
|
float _MaterialID;
|
|
float _MaterialTypeMask;
|
|
CBUFFER_END
|
|
|
|
|
|
// Object and Global properties
|
|
SAMPLER(SamplerState_Linear_Repeat);
|
|
SAMPLER(SamplerState_Linear_Repeat_Aniso8);
|
|
TEXTURE2D(_BaseColorMap);
|
|
SAMPLER(sampler_BaseColorMap);
|
|
TEXTURE2D(_BaseNormalMap);
|
|
SAMPLER(sampler_BaseNormalMap);
|
|
TEXTURE2D(_BaseMaskMap);
|
|
SAMPLER(sampler_BaseMaskMap);
|
|
TEXTURE2D(_CoverMaskA);
|
|
SAMPLER(sampler_CoverMaskA);
|
|
TEXTURE2D(_CoverBaseColorMap);
|
|
SAMPLER(sampler_CoverBaseColorMap);
|
|
TEXTURE2D(_CoverNormalMap);
|
|
SAMPLER(sampler_CoverNormalMap);
|
|
TEXTURE2D(_CoverMaskMap);
|
|
SAMPLER(sampler_CoverMaskMap);
|
|
TEXTURE2D(_ShapeNormalMap);
|
|
SAMPLER(sampler_ShapeNormalMap);
|
|
TEXTURE2D(_ShapeAO);
|
|
SAMPLER(sampler_ShapeAO);
|
|
TEXTURE2D(_DetailMap);
|
|
SAMPLER(sampler_DetailMap);
|
|
|
|
// -- Property used by ScenePickingPass
|
|
#ifdef SCENEPICKINGPASS
|
|
float4 _SelectionID;
|
|
#endif
|
|
|
|
// -- Properties used by SceneSelectionPass
|
|
#ifdef SCENESELECTIONPASS
|
|
int _ObjectId;
|
|
int _PassValue;
|
|
#endif
|
|
|
|
// Includes
|
|
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/Debug/DebugDisplay.hlsl"
|
|
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/Material/Material.hlsl"
|
|
#include "Packages/com.unity.render-pipelines.core/ShaderLibrary/NormalSurfaceGradient.hlsl"
|
|
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/Material/Lit/Lit.hlsl"
|
|
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/Material/BuiltinUtilities.hlsl"
|
|
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/Material/MaterialUtilities.hlsl"
|
|
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/Material/Decal/DecalUtilities.hlsl"
|
|
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/Material/Lit/LitDecalData.hlsl"
|
|
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/ShaderLibrary/ShaderGraphFunctions.hlsl"
|
|
// GraphIncludes: <None>
|
|
|
|
// --------------------------------------------------
|
|
// Structs and Packing
|
|
|
|
struct AttributesMesh
|
|
{
|
|
float3 positionOS : POSITION;
|
|
float3 normalOS : NORMAL;
|
|
float4 tangentOS : TANGENT;
|
|
float4 uv0 : TEXCOORD0;
|
|
float4 color : COLOR;
|
|
#if UNITY_ANY_INSTANCING_ENABLED || defined(ATTRIBUTES_NEED_INSTANCEID)
|
|
uint instanceID : INSTANCEID_SEMANTIC;
|
|
#endif
|
|
};
|
|
struct VaryingsMeshToPS
|
|
{
|
|
SV_POSITION_QUALIFIERS float4 positionCS : SV_POSITION;
|
|
float3 positionRWS;
|
|
float3 normalWS;
|
|
float4 tangentWS;
|
|
float4 texCoord0;
|
|
float4 color;
|
|
#if UNITY_ANY_INSTANCING_ENABLED || defined(VARYINGS_NEED_INSTANCEID)
|
|
uint instanceID : CUSTOM_INSTANCE_ID;
|
|
#endif
|
|
};
|
|
struct VertexDescriptionInputs
|
|
{
|
|
float3 ObjectSpaceNormal;
|
|
float3 ObjectSpaceTangent;
|
|
float3 ObjectSpacePosition;
|
|
};
|
|
struct SurfaceDescriptionInputs
|
|
{
|
|
float3 WorldSpaceNormal;
|
|
float3 TangentSpaceNormal;
|
|
float3 WorldSpaceTangent;
|
|
float3 WorldSpaceBiTangent;
|
|
float3 AbsoluteWorldSpacePosition;
|
|
float4 uv0;
|
|
float4 VertexColor;
|
|
};
|
|
struct PackedVaryingsMeshToPS
|
|
{
|
|
SV_POSITION_QUALIFIERS float4 positionCS : SV_POSITION;
|
|
float4 tangentWS : INTERP0;
|
|
float4 texCoord0 : INTERP1;
|
|
float4 color : INTERP2;
|
|
float3 positionRWS : INTERP3;
|
|
float3 normalWS : INTERP4;
|
|
#if UNITY_ANY_INSTANCING_ENABLED || defined(VARYINGS_NEED_INSTANCEID)
|
|
uint instanceID : CUSTOM_INSTANCE_ID;
|
|
#endif
|
|
};
|
|
|
|
PackedVaryingsMeshToPS PackVaryingsMeshToPS (VaryingsMeshToPS input)
|
|
{
|
|
PackedVaryingsMeshToPS output;
|
|
ZERO_INITIALIZE(PackedVaryingsMeshToPS, output);
|
|
output.positionCS = input.positionCS;
|
|
output.tangentWS.xyzw = input.tangentWS;
|
|
output.texCoord0.xyzw = input.texCoord0;
|
|
output.color.xyzw = input.color;
|
|
output.positionRWS.xyz = input.positionRWS;
|
|
output.normalWS.xyz = input.normalWS;
|
|
#if UNITY_ANY_INSTANCING_ENABLED || defined(VARYINGS_NEED_INSTANCEID)
|
|
output.instanceID = input.instanceID;
|
|
#endif
|
|
return output;
|
|
}
|
|
|
|
VaryingsMeshToPS UnpackVaryingsMeshToPS (PackedVaryingsMeshToPS input)
|
|
{
|
|
VaryingsMeshToPS output;
|
|
output.positionCS = input.positionCS;
|
|
output.tangentWS = input.tangentWS.xyzw;
|
|
output.texCoord0 = input.texCoord0.xyzw;
|
|
output.color = input.color.xyzw;
|
|
output.positionRWS = input.positionRWS.xyz;
|
|
output.normalWS = input.normalWS.xyz;
|
|
#if UNITY_ANY_INSTANCING_ENABLED || defined(VARYINGS_NEED_INSTANCEID)
|
|
output.instanceID = input.instanceID;
|
|
#endif
|
|
return output;
|
|
}
|
|
|
|
|
|
// --------------------------------------------------
|
|
// Graph
|
|
|
|
|
|
// Graph Functions
|
|
|
|
void Unity_Divide_float4(float4 A, float4 B, out float4 Out)
|
|
{
|
|
Out = A / B;
|
|
}
|
|
|
|
void Unity_Combine_float(float R, float G, float B, float A, out float4 RGBA, out float3 RGB, out float2 RG)
|
|
{
|
|
RGBA = float4(R, G, B, A);
|
|
RGB = float3(R, G, B);
|
|
RG = float2(R, G);
|
|
}
|
|
|
|
void Unity_Multiply_float4_float4(float4 A, float4 B, out float4 Out)
|
|
{
|
|
Out = A * B;
|
|
}
|
|
|
|
void Unity_Sign_float3(float3 In, out float3 Out)
|
|
{
|
|
Out = sign(In);
|
|
}
|
|
|
|
void Unity_Multiply_float2_float2(float2 A, float2 B, out float2 Out)
|
|
{
|
|
Out = A * B;
|
|
}
|
|
|
|
void Unity_Absolute_float3(float3 In, out float3 Out)
|
|
{
|
|
Out = abs(In);
|
|
}
|
|
|
|
void Unity_Power_float3(float3 A, float3 B, out float3 Out)
|
|
{
|
|
Out = pow(A, B);
|
|
}
|
|
|
|
void Unity_Multiply_float3_float3(float3 A, float3 B, out float3 Out)
|
|
{
|
|
Out = A * B;
|
|
}
|
|
|
|
void Unity_Multiply_float_float(float A, float B, out float Out)
|
|
{
|
|
Out = A * B;
|
|
}
|
|
|
|
void Unity_Add_float4(float4 A, float4 B, out float4 Out)
|
|
{
|
|
Out = A + B;
|
|
}
|
|
|
|
void Unity_Add_float(float A, float B, out float Out)
|
|
{
|
|
Out = A + B;
|
|
}
|
|
|
|
struct Bindings_TriplanarNM_bc609ed95f52591469ab35dbfe0efcea_float
|
|
{
|
|
float3 WorldSpaceNormal;
|
|
float3 AbsoluteWorldSpacePosition;
|
|
};
|
|
|
|
void SG_TriplanarNM_bc609ed95f52591469ab35dbfe0efcea_float(UnityTexture2D Texture2D_80A3D28F, float Vector1_41461AC9, float Vector1_E4D1C13A, UnitySamplerState _SamplerState, Bindings_TriplanarNM_bc609ed95f52591469ab35dbfe0efcea_float IN, out float4 XYZ_1, out float4 XZ_2, out float4 YZ_3, out float4 XY_4)
|
|
{
|
|
UnityTexture2D _Property_3e01b4d2fc68d48ba3acbba9d5881e59_Out_0_Texture2D = Texture2D_80A3D28F;
|
|
float _Split_89ed63cb625cb3878c183d0b71c03400_R_1_Float = IN.AbsoluteWorldSpacePosition[0];
|
|
float _Split_89ed63cb625cb3878c183d0b71c03400_G_2_Float = IN.AbsoluteWorldSpacePosition[1];
|
|
float _Split_89ed63cb625cb3878c183d0b71c03400_B_3_Float = IN.AbsoluteWorldSpacePosition[2];
|
|
float _Split_89ed63cb625cb3878c183d0b71c03400_A_4_Float = 0;
|
|
float4 _Combine_cf2d04ff119ad88493f6460431765cbb_RGBA_4_Vector4;
|
|
float3 _Combine_cf2d04ff119ad88493f6460431765cbb_RGB_5_Vector3;
|
|
float2 _Combine_cf2d04ff119ad88493f6460431765cbb_RG_6_Vector2;
|
|
Unity_Combine_float(_Split_89ed63cb625cb3878c183d0b71c03400_R_1_Float, _Split_89ed63cb625cb3878c183d0b71c03400_B_3_Float, float(0), float(0), _Combine_cf2d04ff119ad88493f6460431765cbb_RGBA_4_Vector4, _Combine_cf2d04ff119ad88493f6460431765cbb_RGB_5_Vector3, _Combine_cf2d04ff119ad88493f6460431765cbb_RG_6_Vector2);
|
|
float _Property_47988ec10c0c18879d461e00bed806e7_Out_0_Float = Vector1_41461AC9;
|
|
float4 _Multiply_14cec4902d0a00829e4555071a1b8ad1_Out_2_Vector4;
|
|
Unity_Multiply_float4_float4(_Combine_cf2d04ff119ad88493f6460431765cbb_RGBA_4_Vector4, (_Property_47988ec10c0c18879d461e00bed806e7_Out_0_Float.xxxx), _Multiply_14cec4902d0a00829e4555071a1b8ad1_Out_2_Vector4);
|
|
float3 _Sign_b826e0ff2d95ec8cb2b2cbbd7ea2eab6_Out_1_Vector3;
|
|
Unity_Sign_float3(IN.WorldSpaceNormal, _Sign_b826e0ff2d95ec8cb2b2cbbd7ea2eab6_Out_1_Vector3);
|
|
float _Split_742547a7039de986a646d04c157ae549_R_1_Float = _Sign_b826e0ff2d95ec8cb2b2cbbd7ea2eab6_Out_1_Vector3[0];
|
|
float _Split_742547a7039de986a646d04c157ae549_G_2_Float = _Sign_b826e0ff2d95ec8cb2b2cbbd7ea2eab6_Out_1_Vector3[1];
|
|
float _Split_742547a7039de986a646d04c157ae549_B_3_Float = _Sign_b826e0ff2d95ec8cb2b2cbbd7ea2eab6_Out_1_Vector3[2];
|
|
float _Split_742547a7039de986a646d04c157ae549_A_4_Float = 0;
|
|
float2 _Vector2_40a8919e571ec18499de72022c155b38_Out_0_Vector2 = float2(_Split_742547a7039de986a646d04c157ae549_G_2_Float, float(1));
|
|
float2 _Multiply_5fa32af59cdca88389832336b2268bd5_Out_2_Vector2;
|
|
Unity_Multiply_float2_float2((_Multiply_14cec4902d0a00829e4555071a1b8ad1_Out_2_Vector4.xy), _Vector2_40a8919e571ec18499de72022c155b38_Out_0_Vector2, _Multiply_5fa32af59cdca88389832336b2268bd5_Out_2_Vector2);
|
|
UnitySamplerState _Property_544c7fa9dfe54e30a0df9d605340a374_Out_0_SamplerState = _SamplerState;
|
|
float4 _SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_RGBA_0_Vector4 = SAMPLE_TEXTURE2D(_Property_3e01b4d2fc68d48ba3acbba9d5881e59_Out_0_Texture2D.tex, _Property_544c7fa9dfe54e30a0df9d605340a374_Out_0_SamplerState.samplerstate, _Property_3e01b4d2fc68d48ba3acbba9d5881e59_Out_0_Texture2D.GetTransformedUV(_Multiply_5fa32af59cdca88389832336b2268bd5_Out_2_Vector2) );
|
|
float _SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_R_4_Float = _SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_RGBA_0_Vector4.r;
|
|
float _SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_G_5_Float = _SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_RGBA_0_Vector4.g;
|
|
float _SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_B_6_Float = _SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_RGBA_0_Vector4.b;
|
|
float _SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_A_7_Float = _SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_RGBA_0_Vector4.a;
|
|
float3 _Absolute_644b798714827680b39bf5d34f70385f_Out_1_Vector3;
|
|
Unity_Absolute_float3(IN.WorldSpaceNormal, _Absolute_644b798714827680b39bf5d34f70385f_Out_1_Vector3);
|
|
float _Property_adc4c59482221c8aad681c6558728ac9_Out_0_Float = Vector1_E4D1C13A;
|
|
float3 _Power_ee478822a04529849ae8df1636c29fe2_Out_2_Vector3;
|
|
Unity_Power_float3(_Absolute_644b798714827680b39bf5d34f70385f_Out_1_Vector3, (_Property_adc4c59482221c8aad681c6558728ac9_Out_0_Float.xxx), _Power_ee478822a04529849ae8df1636c29fe2_Out_2_Vector3);
|
|
float3 _Multiply_b386a937554d73828e437d126d69608b_Out_2_Vector3;
|
|
Unity_Multiply_float3_float3(_Power_ee478822a04529849ae8df1636c29fe2_Out_2_Vector3, _Power_ee478822a04529849ae8df1636c29fe2_Out_2_Vector3, _Multiply_b386a937554d73828e437d126d69608b_Out_2_Vector3);
|
|
float _Split_ae83014fcbd9f7879a0b91fa66dc9718_R_1_Float = _Multiply_b386a937554d73828e437d126d69608b_Out_2_Vector3[0];
|
|
float _Split_ae83014fcbd9f7879a0b91fa66dc9718_G_2_Float = _Multiply_b386a937554d73828e437d126d69608b_Out_2_Vector3[1];
|
|
float _Split_ae83014fcbd9f7879a0b91fa66dc9718_B_3_Float = _Multiply_b386a937554d73828e437d126d69608b_Out_2_Vector3[2];
|
|
float _Split_ae83014fcbd9f7879a0b91fa66dc9718_A_4_Float = 0;
|
|
float4 _Multiply_2e1040ca9c98d085ace76ee93f094039_Out_2_Vector4;
|
|
Unity_Multiply_float4_float4(_SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_RGBA_0_Vector4, (_Split_ae83014fcbd9f7879a0b91fa66dc9718_G_2_Float.xxxx), _Multiply_2e1040ca9c98d085ace76ee93f094039_Out_2_Vector4);
|
|
float4 _Combine_192c2c4a69be588b90ca005a32e22552_RGBA_4_Vector4;
|
|
float3 _Combine_192c2c4a69be588b90ca005a32e22552_RGB_5_Vector3;
|
|
float2 _Combine_192c2c4a69be588b90ca005a32e22552_RG_6_Vector2;
|
|
Unity_Combine_float(_Split_89ed63cb625cb3878c183d0b71c03400_R_1_Float, _Split_89ed63cb625cb3878c183d0b71c03400_G_2_Float, float(0), float(0), _Combine_192c2c4a69be588b90ca005a32e22552_RGBA_4_Vector4, _Combine_192c2c4a69be588b90ca005a32e22552_RGB_5_Vector3, _Combine_192c2c4a69be588b90ca005a32e22552_RG_6_Vector2);
|
|
float4 _Multiply_138240d0d4846e87b0febabec0d6891b_Out_2_Vector4;
|
|
Unity_Multiply_float4_float4(_Combine_192c2c4a69be588b90ca005a32e22552_RGBA_4_Vector4, (_Property_47988ec10c0c18879d461e00bed806e7_Out_0_Float.xxxx), _Multiply_138240d0d4846e87b0febabec0d6891b_Out_2_Vector4);
|
|
float _Multiply_014402ded5a3988a8c18ba07636ea5a7_Out_2_Float;
|
|
Unity_Multiply_float_float(_Split_742547a7039de986a646d04c157ae549_B_3_Float, -1, _Multiply_014402ded5a3988a8c18ba07636ea5a7_Out_2_Float);
|
|
float2 _Vector2_caa25d55d456a58982bdfc39b1b43f3f_Out_0_Vector2 = float2(_Multiply_014402ded5a3988a8c18ba07636ea5a7_Out_2_Float, float(1));
|
|
float2 _Multiply_a67201b6e1a0a28c98cd9d06e8b09543_Out_2_Vector2;
|
|
Unity_Multiply_float2_float2((_Multiply_138240d0d4846e87b0febabec0d6891b_Out_2_Vector4.xy), _Vector2_caa25d55d456a58982bdfc39b1b43f3f_Out_0_Vector2, _Multiply_a67201b6e1a0a28c98cd9d06e8b09543_Out_2_Vector2);
|
|
float4 _SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_RGBA_0_Vector4 = SAMPLE_TEXTURE2D(_Property_3e01b4d2fc68d48ba3acbba9d5881e59_Out_0_Texture2D.tex, _Property_544c7fa9dfe54e30a0df9d605340a374_Out_0_SamplerState.samplerstate, _Property_3e01b4d2fc68d48ba3acbba9d5881e59_Out_0_Texture2D.GetTransformedUV(_Multiply_a67201b6e1a0a28c98cd9d06e8b09543_Out_2_Vector2) );
|
|
float _SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_R_4_Float = _SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_RGBA_0_Vector4.r;
|
|
float _SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_G_5_Float = _SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_RGBA_0_Vector4.g;
|
|
float _SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_B_6_Float = _SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_RGBA_0_Vector4.b;
|
|
float _SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_A_7_Float = _SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_RGBA_0_Vector4.a;
|
|
float4 _Multiply_7bb4009c92b108849ac6ca92bc1442f2_Out_2_Vector4;
|
|
Unity_Multiply_float4_float4(_SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_RGBA_0_Vector4, (_Split_ae83014fcbd9f7879a0b91fa66dc9718_B_3_Float.xxxx), _Multiply_7bb4009c92b108849ac6ca92bc1442f2_Out_2_Vector4);
|
|
float4 _Combine_1e9ffdba42d6918fb7a4b185f1585d2a_RGBA_4_Vector4;
|
|
float3 _Combine_1e9ffdba42d6918fb7a4b185f1585d2a_RGB_5_Vector3;
|
|
float2 _Combine_1e9ffdba42d6918fb7a4b185f1585d2a_RG_6_Vector2;
|
|
Unity_Combine_float(_Split_89ed63cb625cb3878c183d0b71c03400_B_3_Float, _Split_89ed63cb625cb3878c183d0b71c03400_G_2_Float, float(0), float(0), _Combine_1e9ffdba42d6918fb7a4b185f1585d2a_RGBA_4_Vector4, _Combine_1e9ffdba42d6918fb7a4b185f1585d2a_RGB_5_Vector3, _Combine_1e9ffdba42d6918fb7a4b185f1585d2a_RG_6_Vector2);
|
|
float4 _Multiply_2c0864423b014f8b8af8523f68cbb63c_Out_2_Vector4;
|
|
Unity_Multiply_float4_float4(_Combine_1e9ffdba42d6918fb7a4b185f1585d2a_RGBA_4_Vector4, (_Property_47988ec10c0c18879d461e00bed806e7_Out_0_Float.xxxx), _Multiply_2c0864423b014f8b8af8523f68cbb63c_Out_2_Vector4);
|
|
float2 _Vector2_54dfd40df2fc78809955dd272f2cf0c3_Out_0_Vector2 = float2(_Split_742547a7039de986a646d04c157ae549_R_1_Float, float(1));
|
|
float2 _Multiply_addbd5fcede95f80bbb806c94e49ef63_Out_2_Vector2;
|
|
Unity_Multiply_float2_float2((_Multiply_2c0864423b014f8b8af8523f68cbb63c_Out_2_Vector4.xy), _Vector2_54dfd40df2fc78809955dd272f2cf0c3_Out_0_Vector2, _Multiply_addbd5fcede95f80bbb806c94e49ef63_Out_2_Vector2);
|
|
float4 _SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_RGBA_0_Vector4 = SAMPLE_TEXTURE2D(_Property_3e01b4d2fc68d48ba3acbba9d5881e59_Out_0_Texture2D.tex, _Property_544c7fa9dfe54e30a0df9d605340a374_Out_0_SamplerState.samplerstate, _Property_3e01b4d2fc68d48ba3acbba9d5881e59_Out_0_Texture2D.GetTransformedUV(_Multiply_addbd5fcede95f80bbb806c94e49ef63_Out_2_Vector2) );
|
|
float _SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_R_4_Float = _SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_RGBA_0_Vector4.r;
|
|
float _SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_G_5_Float = _SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_RGBA_0_Vector4.g;
|
|
float _SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_B_6_Float = _SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_RGBA_0_Vector4.b;
|
|
float _SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_A_7_Float = _SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_RGBA_0_Vector4.a;
|
|
float4 _Multiply_77818c22e359fc8cbb7dd20216a8db72_Out_2_Vector4;
|
|
Unity_Multiply_float4_float4(_SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_RGBA_0_Vector4, (_Split_ae83014fcbd9f7879a0b91fa66dc9718_R_1_Float.xxxx), _Multiply_77818c22e359fc8cbb7dd20216a8db72_Out_2_Vector4);
|
|
float4 _Add_769d9ee909c9238dbbf72d2800a2f268_Out_2_Vector4;
|
|
Unity_Add_float4(_Multiply_7bb4009c92b108849ac6ca92bc1442f2_Out_2_Vector4, _Multiply_77818c22e359fc8cbb7dd20216a8db72_Out_2_Vector4, _Add_769d9ee909c9238dbbf72d2800a2f268_Out_2_Vector4);
|
|
float4 _Add_14295f72880e4b87a1baf1ced943ac40_Out_2_Vector4;
|
|
Unity_Add_float4(_Multiply_2e1040ca9c98d085ace76ee93f094039_Out_2_Vector4, _Add_769d9ee909c9238dbbf72d2800a2f268_Out_2_Vector4, _Add_14295f72880e4b87a1baf1ced943ac40_Out_2_Vector4);
|
|
float _Add_e59af300bba2498db32eac1412123447_Out_2_Float;
|
|
Unity_Add_float(_Split_ae83014fcbd9f7879a0b91fa66dc9718_R_1_Float, _Split_ae83014fcbd9f7879a0b91fa66dc9718_G_2_Float, _Add_e59af300bba2498db32eac1412123447_Out_2_Float);
|
|
float _Add_e855069f047fae8ea9027d56acb61e56_Out_2_Float;
|
|
Unity_Add_float(_Add_e59af300bba2498db32eac1412123447_Out_2_Float, _Split_ae83014fcbd9f7879a0b91fa66dc9718_B_3_Float, _Add_e855069f047fae8ea9027d56acb61e56_Out_2_Float);
|
|
float4 _Divide_91ae4b94f1d9b78e99d0472293b8098c_Out_2_Vector4;
|
|
Unity_Divide_float4(_Add_14295f72880e4b87a1baf1ced943ac40_Out_2_Vector4, (_Add_e855069f047fae8ea9027d56acb61e56_Out_2_Float.xxxx), _Divide_91ae4b94f1d9b78e99d0472293b8098c_Out_2_Vector4);
|
|
XYZ_1 = _Divide_91ae4b94f1d9b78e99d0472293b8098c_Out_2_Vector4;
|
|
XZ_2 = _SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_RGBA_0_Vector4;
|
|
YZ_3 = _SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_RGBA_0_Vector4;
|
|
XY_4 = _SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_RGBA_0_Vector4;
|
|
}
|
|
|
|
void Unity_Clamp_float(float In, float Min, float Max, out float Out)
|
|
{
|
|
Out = clamp(In, Min, Max);
|
|
}
|
|
|
|
void Unity_Absolute_float(float In, out float Out)
|
|
{
|
|
Out = abs(In);
|
|
}
|
|
|
|
void Unity_Power_float(float A, float B, out float Out)
|
|
{
|
|
Out = pow(A, B);
|
|
}
|
|
|
|
void Unity_Clamp_float4(float4 In, float4 Min, float4 Max, out float4 Out)
|
|
{
|
|
Out = clamp(In, Min, Max);
|
|
}
|
|
|
|
void Unity_Branch_float4(float Predicate, float4 True, float4 False, out float4 Out)
|
|
{
|
|
Out = Predicate ? True : False;
|
|
}
|
|
|
|
void Unity_TilingAndOffset_float(float2 UV, float2 Tiling, float2 Offset, out float2 Out)
|
|
{
|
|
Out = UV * Tiling + Offset;
|
|
}
|
|
|
|
void Unity_Saturate_float(float In, out float Out)
|
|
{
|
|
Out = saturate(In);
|
|
}
|
|
|
|
void Unity_SquareRoot_float4(float4 In, out float4 Out)
|
|
{
|
|
Out = sqrt(In);
|
|
}
|
|
|
|
void Unity_Sign_float(float In, out float Out)
|
|
{
|
|
Out = sign(In);
|
|
}
|
|
|
|
void Unity_Ceiling_float(float In, out float Out)
|
|
{
|
|
Out = ceil(In);
|
|
}
|
|
|
|
void Unity_Lerp_float4(float4 A, float4 B, float4 T, out float4 Out)
|
|
{
|
|
Out = lerp(A, B, T);
|
|
}
|
|
|
|
struct Bindings_BlendOverlayBaseColor_acdb3dfca72bd6b42bbc35f4613331a2_float
|
|
{
|
|
};
|
|
|
|
void SG_BlendOverlayBaseColor_acdb3dfca72bd6b42bbc35f4613331a2_float(float4 Color_9AA111D3, float Vector1_FBE622A2, float Vector1_8C15C351, Bindings_BlendOverlayBaseColor_acdb3dfca72bd6b42bbc35f4613331a2_float IN, out float3 OutVector4_1)
|
|
{
|
|
float4 _Property_012510d774fb7f8b860f5270dca4500f_Out_0_Vector4 = Color_9AA111D3;
|
|
float4 _SquareRoot_c2c57d0223a9538aa9240890c3cacb0c_Out_1_Vector4;
|
|
Unity_SquareRoot_float4(_Property_012510d774fb7f8b860f5270dca4500f_Out_0_Vector4, _SquareRoot_c2c57d0223a9538aa9240890c3cacb0c_Out_1_Vector4);
|
|
float _Property_a00e29241d12f983b30177515b367ec9_Out_0_Float = Vector1_FBE622A2;
|
|
float _Sign_343a45ede7349283a681c6bd9998fd8e_Out_1_Float;
|
|
Unity_Sign_float(_Property_a00e29241d12f983b30177515b367ec9_Out_0_Float, _Sign_343a45ede7349283a681c6bd9998fd8e_Out_1_Float);
|
|
float _Add_681019b8f5d3d68bb482d419c9fc61a9_Out_2_Float;
|
|
Unity_Add_float(_Sign_343a45ede7349283a681c6bd9998fd8e_Out_1_Float, float(1), _Add_681019b8f5d3d68bb482d419c9fc61a9_Out_2_Float);
|
|
float _Multiply_e8f4cb722712a880ac0db6c7461427f7_Out_2_Float;
|
|
Unity_Multiply_float_float(_Add_681019b8f5d3d68bb482d419c9fc61a9_Out_2_Float, 0.5, _Multiply_e8f4cb722712a880ac0db6c7461427f7_Out_2_Float);
|
|
float _Ceiling_95ad15988aa9b98184875fa754feae01_Out_1_Float;
|
|
Unity_Ceiling_float(_Multiply_e8f4cb722712a880ac0db6c7461427f7_Out_2_Float, _Ceiling_95ad15988aa9b98184875fa754feae01_Out_1_Float);
|
|
float _Property_2db1c747a05ee284a8b00076062f91a4_Out_0_Float = Vector1_8C15C351;
|
|
float _Multiply_9564ecda5193bc8286d9ff771c9226cd_Out_2_Float;
|
|
Unity_Multiply_float_float(_Property_2db1c747a05ee284a8b00076062f91a4_Out_0_Float, _Property_2db1c747a05ee284a8b00076062f91a4_Out_0_Float, _Multiply_9564ecda5193bc8286d9ff771c9226cd_Out_2_Float);
|
|
float4 _Lerp_b3cdb01fc3c5b988ac9b184943bf7c01_Out_3_Vector4;
|
|
Unity_Lerp_float4(_SquareRoot_c2c57d0223a9538aa9240890c3cacb0c_Out_1_Vector4, (_Ceiling_95ad15988aa9b98184875fa754feae01_Out_1_Float.xxxx), (_Multiply_9564ecda5193bc8286d9ff771c9226cd_Out_2_Float.xxxx), _Lerp_b3cdb01fc3c5b988ac9b184943bf7c01_Out_3_Vector4);
|
|
float4 _Multiply_39d1daff98488f8ea2cd794ad4f20926_Out_2_Vector4;
|
|
Unity_Multiply_float4_float4(_Lerp_b3cdb01fc3c5b988ac9b184943bf7c01_Out_3_Vector4, _Lerp_b3cdb01fc3c5b988ac9b184943bf7c01_Out_3_Vector4, _Multiply_39d1daff98488f8ea2cd794ad4f20926_Out_2_Vector4);
|
|
OutVector4_1 = (_Multiply_39d1daff98488f8ea2cd794ad4f20926_Out_2_Vector4.xyz);
|
|
}
|
|
|
|
void Unity_Add_float2(float2 A, float2 B, out float2 Out)
|
|
{
|
|
Out = A + B;
|
|
}
|
|
|
|
void Unity_DotProduct_float2(float2 A, float2 B, out float Out)
|
|
{
|
|
Out = dot(A, B);
|
|
}
|
|
|
|
void Unity_OneMinus_float(float In, out float Out)
|
|
{
|
|
Out = 1 - In;
|
|
}
|
|
|
|
void Unity_SquareRoot_float(float In, out float Out)
|
|
{
|
|
Out = sqrt(In);
|
|
}
|
|
|
|
void Unity_Add_float3(float3 A, float3 B, out float3 Out)
|
|
{
|
|
Out = A + B;
|
|
}
|
|
|
|
void Unity_Divide_float3(float3 A, float3 B, out float3 Out)
|
|
{
|
|
Out = A / B;
|
|
}
|
|
|
|
void Unity_Normalize_float3(float3 In, out float3 Out)
|
|
{
|
|
Out = normalize(In);
|
|
}
|
|
|
|
struct Bindings_TriplanarNMn_059da9746584140498cd018db3c76047_float
|
|
{
|
|
float3 WorldSpaceNormal;
|
|
float3 WorldSpaceTangent;
|
|
float3 WorldSpaceBiTangent;
|
|
float3 AbsoluteWorldSpacePosition;
|
|
};
|
|
|
|
void SG_TriplanarNMn_059da9746584140498cd018db3c76047_float(UnityTexture2D Texture2D_80A3D28F, float Vector1_41461AC9, float Vector1_E4D1C13A, UnitySamplerState _SamplerState, Bindings_TriplanarNMn_059da9746584140498cd018db3c76047_float IN, out float4 XYZ_1, out float4 XZ_2, out float4 YZ_3, out float4 XY_4)
|
|
{
|
|
UnityTexture2D _Property_3e01b4d2fc68d48ba3acbba9d5881e59_Out_0_Texture2D = Texture2D_80A3D28F;
|
|
float _Split_89ed63cb625cb3878c183d0b71c03400_R_1_Float = IN.AbsoluteWorldSpacePosition[0];
|
|
float _Split_89ed63cb625cb3878c183d0b71c03400_G_2_Float = IN.AbsoluteWorldSpacePosition[1];
|
|
float _Split_89ed63cb625cb3878c183d0b71c03400_B_3_Float = IN.AbsoluteWorldSpacePosition[2];
|
|
float _Split_89ed63cb625cb3878c183d0b71c03400_A_4_Float = 0;
|
|
float4 _Combine_cf2d04ff119ad88493f6460431765cbb_RGBA_4_Vector4;
|
|
float3 _Combine_cf2d04ff119ad88493f6460431765cbb_RGB_5_Vector3;
|
|
float2 _Combine_cf2d04ff119ad88493f6460431765cbb_RG_6_Vector2;
|
|
Unity_Combine_float(_Split_89ed63cb625cb3878c183d0b71c03400_R_1_Float, _Split_89ed63cb625cb3878c183d0b71c03400_B_3_Float, float(0), float(0), _Combine_cf2d04ff119ad88493f6460431765cbb_RGBA_4_Vector4, _Combine_cf2d04ff119ad88493f6460431765cbb_RGB_5_Vector3, _Combine_cf2d04ff119ad88493f6460431765cbb_RG_6_Vector2);
|
|
float _Property_47988ec10c0c18879d461e00bed806e7_Out_0_Float = Vector1_41461AC9;
|
|
float4 _Multiply_14cec4902d0a00829e4555071a1b8ad1_Out_2_Vector4;
|
|
Unity_Multiply_float4_float4(_Combine_cf2d04ff119ad88493f6460431765cbb_RGBA_4_Vector4, (_Property_47988ec10c0c18879d461e00bed806e7_Out_0_Float.xxxx), _Multiply_14cec4902d0a00829e4555071a1b8ad1_Out_2_Vector4);
|
|
float3 _Sign_3a6ebf59931cf08cb0482e0144ddac24_Out_1_Vector3;
|
|
Unity_Sign_float3(IN.WorldSpaceNormal, _Sign_3a6ebf59931cf08cb0482e0144ddac24_Out_1_Vector3);
|
|
float _Split_6299d4ddcc4c74828aea40a46fdb896e_R_1_Float = _Sign_3a6ebf59931cf08cb0482e0144ddac24_Out_1_Vector3[0];
|
|
float _Split_6299d4ddcc4c74828aea40a46fdb896e_G_2_Float = _Sign_3a6ebf59931cf08cb0482e0144ddac24_Out_1_Vector3[1];
|
|
float _Split_6299d4ddcc4c74828aea40a46fdb896e_B_3_Float = _Sign_3a6ebf59931cf08cb0482e0144ddac24_Out_1_Vector3[2];
|
|
float _Split_6299d4ddcc4c74828aea40a46fdb896e_A_4_Float = 0;
|
|
float2 _Vector2_b76cb1842101e58b9e636d49b075c612_Out_0_Vector2 = float2(_Split_6299d4ddcc4c74828aea40a46fdb896e_G_2_Float, float(1));
|
|
float2 _Multiply_a87753ad90594382bf3a3a95abbadbc8_Out_2_Vector2;
|
|
Unity_Multiply_float2_float2((_Multiply_14cec4902d0a00829e4555071a1b8ad1_Out_2_Vector4.xy), _Vector2_b76cb1842101e58b9e636d49b075c612_Out_0_Vector2, _Multiply_a87753ad90594382bf3a3a95abbadbc8_Out_2_Vector2);
|
|
UnitySamplerState _Property_8a2b8589cd3a42a1879a29c28e4f711f_Out_0_SamplerState = _SamplerState;
|
|
float4 _SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_RGBA_0_Vector4 = SAMPLE_TEXTURE2D(_Property_3e01b4d2fc68d48ba3acbba9d5881e59_Out_0_Texture2D.tex, _Property_8a2b8589cd3a42a1879a29c28e4f711f_Out_0_SamplerState.samplerstate, _Property_3e01b4d2fc68d48ba3acbba9d5881e59_Out_0_Texture2D.GetTransformedUV(_Multiply_a87753ad90594382bf3a3a95abbadbc8_Out_2_Vector2) );
|
|
_SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_RGBA_0_Vector4.rgb = UnpackNormal(_SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_RGBA_0_Vector4);
|
|
float _SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_R_4_Float = _SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_RGBA_0_Vector4.r;
|
|
float _SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_G_5_Float = _SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_RGBA_0_Vector4.g;
|
|
float _SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_B_6_Float = _SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_RGBA_0_Vector4.b;
|
|
float _SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_A_7_Float = _SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_RGBA_0_Vector4.a;
|
|
float2 _Vector2_ad6bd100e273d78fa409a30a77bfa2cc_Out_0_Vector2 = float2(_SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_R_4_Float, _SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_G_5_Float);
|
|
float2 _Multiply_31e8db88ee20c985a9850d1a58f3282b_Out_2_Vector2;
|
|
Unity_Multiply_float2_float2(_Vector2_ad6bd100e273d78fa409a30a77bfa2cc_Out_0_Vector2, _Vector2_b76cb1842101e58b9e636d49b075c612_Out_0_Vector2, _Multiply_31e8db88ee20c985a9850d1a58f3282b_Out_2_Vector2);
|
|
float _Split_5ed44bf2eca0868f81eb18100f49d1fa_R_1_Float = IN.WorldSpaceNormal[0];
|
|
float _Split_5ed44bf2eca0868f81eb18100f49d1fa_G_2_Float = IN.WorldSpaceNormal[1];
|
|
float _Split_5ed44bf2eca0868f81eb18100f49d1fa_B_3_Float = IN.WorldSpaceNormal[2];
|
|
float _Split_5ed44bf2eca0868f81eb18100f49d1fa_A_4_Float = 0;
|
|
float2 _Vector2_70e5837843f28b8b9d64cada3697bd5a_Out_0_Vector2 = float2(_Split_5ed44bf2eca0868f81eb18100f49d1fa_R_1_Float, _Split_5ed44bf2eca0868f81eb18100f49d1fa_B_3_Float);
|
|
float2 _Add_1145b2f896593d80aa864a34e6702562_Out_2_Vector2;
|
|
Unity_Add_float2(_Multiply_31e8db88ee20c985a9850d1a58f3282b_Out_2_Vector2, _Vector2_70e5837843f28b8b9d64cada3697bd5a_Out_0_Vector2, _Add_1145b2f896593d80aa864a34e6702562_Out_2_Vector2);
|
|
float _Split_2bc77ca2d17bd78cb2383770ce50b179_R_1_Float = _Add_1145b2f896593d80aa864a34e6702562_Out_2_Vector2[0];
|
|
float _Split_2bc77ca2d17bd78cb2383770ce50b179_G_2_Float = _Add_1145b2f896593d80aa864a34e6702562_Out_2_Vector2[1];
|
|
float _Split_2bc77ca2d17bd78cb2383770ce50b179_B_3_Float = 0;
|
|
float _Split_2bc77ca2d17bd78cb2383770ce50b179_A_4_Float = 0;
|
|
float _Multiply_e4fe778b81456d819c52bb414cd95968_Out_2_Float;
|
|
Unity_Multiply_float_float(_SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_B_6_Float, _Split_5ed44bf2eca0868f81eb18100f49d1fa_G_2_Float, _Multiply_e4fe778b81456d819c52bb414cd95968_Out_2_Float);
|
|
float3 _Vector3_08f62c5c01619e849f1a7d85a44531ac_Out_0_Vector3 = float3(_Split_2bc77ca2d17bd78cb2383770ce50b179_R_1_Float, _Multiply_e4fe778b81456d819c52bb414cd95968_Out_2_Float, _Split_2bc77ca2d17bd78cb2383770ce50b179_G_2_Float);
|
|
float3 _Absolute_644b798714827680b39bf5d34f70385f_Out_1_Vector3;
|
|
Unity_Absolute_float3(IN.WorldSpaceNormal, _Absolute_644b798714827680b39bf5d34f70385f_Out_1_Vector3);
|
|
float _Property_adc4c59482221c8aad681c6558728ac9_Out_0_Float = Vector1_E4D1C13A;
|
|
float3 _Power_ee478822a04529849ae8df1636c29fe2_Out_2_Vector3;
|
|
Unity_Power_float3(_Absolute_644b798714827680b39bf5d34f70385f_Out_1_Vector3, (_Property_adc4c59482221c8aad681c6558728ac9_Out_0_Float.xxx), _Power_ee478822a04529849ae8df1636c29fe2_Out_2_Vector3);
|
|
float3 _Multiply_b386a937554d73828e437d126d69608b_Out_2_Vector3;
|
|
Unity_Multiply_float3_float3(_Power_ee478822a04529849ae8df1636c29fe2_Out_2_Vector3, _Power_ee478822a04529849ae8df1636c29fe2_Out_2_Vector3, _Multiply_b386a937554d73828e437d126d69608b_Out_2_Vector3);
|
|
float _Split_ae83014fcbd9f7879a0b91fa66dc9718_R_1_Float = _Multiply_b386a937554d73828e437d126d69608b_Out_2_Vector3[0];
|
|
float _Split_ae83014fcbd9f7879a0b91fa66dc9718_G_2_Float = _Multiply_b386a937554d73828e437d126d69608b_Out_2_Vector3[1];
|
|
float _Split_ae83014fcbd9f7879a0b91fa66dc9718_B_3_Float = _Multiply_b386a937554d73828e437d126d69608b_Out_2_Vector3[2];
|
|
float _Split_ae83014fcbd9f7879a0b91fa66dc9718_A_4_Float = 0;
|
|
float3 _Multiply_2e1040ca9c98d085ace76ee93f094039_Out_2_Vector3;
|
|
Unity_Multiply_float3_float3(_Vector3_08f62c5c01619e849f1a7d85a44531ac_Out_0_Vector3, (_Split_ae83014fcbd9f7879a0b91fa66dc9718_G_2_Float.xxx), _Multiply_2e1040ca9c98d085ace76ee93f094039_Out_2_Vector3);
|
|
float4 _Combine_192c2c4a69be588b90ca005a32e22552_RGBA_4_Vector4;
|
|
float3 _Combine_192c2c4a69be588b90ca005a32e22552_RGB_5_Vector3;
|
|
float2 _Combine_192c2c4a69be588b90ca005a32e22552_RG_6_Vector2;
|
|
Unity_Combine_float(_Split_89ed63cb625cb3878c183d0b71c03400_R_1_Float, _Split_89ed63cb625cb3878c183d0b71c03400_G_2_Float, float(0), float(0), _Combine_192c2c4a69be588b90ca005a32e22552_RGBA_4_Vector4, _Combine_192c2c4a69be588b90ca005a32e22552_RGB_5_Vector3, _Combine_192c2c4a69be588b90ca005a32e22552_RG_6_Vector2);
|
|
float4 _Multiply_138240d0d4846e87b0febabec0d6891b_Out_2_Vector4;
|
|
Unity_Multiply_float4_float4(_Combine_192c2c4a69be588b90ca005a32e22552_RGBA_4_Vector4, (_Property_47988ec10c0c18879d461e00bed806e7_Out_0_Float.xxxx), _Multiply_138240d0d4846e87b0febabec0d6891b_Out_2_Vector4);
|
|
float _Multiply_de711f4a4614bd89a463b53374cf4036_Out_2_Float;
|
|
Unity_Multiply_float_float(_Split_6299d4ddcc4c74828aea40a46fdb896e_B_3_Float, -1, _Multiply_de711f4a4614bd89a463b53374cf4036_Out_2_Float);
|
|
float2 _Vector2_4ed33f0c73b2698fa6f3c1b77fe76808_Out_0_Vector2 = float2(_Multiply_de711f4a4614bd89a463b53374cf4036_Out_2_Float, float(1));
|
|
float2 _Multiply_2af6058cc6ccb88caefd2799bb5941e8_Out_2_Vector2;
|
|
Unity_Multiply_float2_float2((_Multiply_138240d0d4846e87b0febabec0d6891b_Out_2_Vector4.xy), _Vector2_4ed33f0c73b2698fa6f3c1b77fe76808_Out_0_Vector2, _Multiply_2af6058cc6ccb88caefd2799bb5941e8_Out_2_Vector2);
|
|
float4 _SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_RGBA_0_Vector4 = SAMPLE_TEXTURE2D(_Property_3e01b4d2fc68d48ba3acbba9d5881e59_Out_0_Texture2D.tex, _Property_8a2b8589cd3a42a1879a29c28e4f711f_Out_0_SamplerState.samplerstate, _Property_3e01b4d2fc68d48ba3acbba9d5881e59_Out_0_Texture2D.GetTransformedUV(_Multiply_2af6058cc6ccb88caefd2799bb5941e8_Out_2_Vector2) );
|
|
_SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_RGBA_0_Vector4.rgb = UnpackNormal(_SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_RGBA_0_Vector4);
|
|
float _SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_R_4_Float = _SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_RGBA_0_Vector4.r;
|
|
float _SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_G_5_Float = _SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_RGBA_0_Vector4.g;
|
|
float _SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_B_6_Float = _SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_RGBA_0_Vector4.b;
|
|
float _SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_A_7_Float = _SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_RGBA_0_Vector4.a;
|
|
float2 _Vector2_fe9aedd4528c7486ada4abdca0b0944e_Out_0_Vector2 = float2(_SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_R_4_Float, _SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_G_5_Float);
|
|
float2 _Multiply_02b9b4665ad9918d8721bcaddc82f06f_Out_2_Vector2;
|
|
Unity_Multiply_float2_float2(_Vector2_fe9aedd4528c7486ada4abdca0b0944e_Out_0_Vector2, _Vector2_4ed33f0c73b2698fa6f3c1b77fe76808_Out_0_Vector2, _Multiply_02b9b4665ad9918d8721bcaddc82f06f_Out_2_Vector2);
|
|
float2 _Vector2_a74a85274da15181abb63cc5e8df0de1_Out_0_Vector2 = float2(_Split_5ed44bf2eca0868f81eb18100f49d1fa_R_1_Float, _Split_5ed44bf2eca0868f81eb18100f49d1fa_G_2_Float);
|
|
float2 _Add_b227c84042055e8faa1a9fdc69529707_Out_2_Vector2;
|
|
Unity_Add_float2(_Multiply_02b9b4665ad9918d8721bcaddc82f06f_Out_2_Vector2, _Vector2_a74a85274da15181abb63cc5e8df0de1_Out_0_Vector2, _Add_b227c84042055e8faa1a9fdc69529707_Out_2_Vector2);
|
|
float _Split_2cfb9eacd8762483941459cdf28bda97_R_1_Float = _Add_b227c84042055e8faa1a9fdc69529707_Out_2_Vector2[0];
|
|
float _Split_2cfb9eacd8762483941459cdf28bda97_G_2_Float = _Add_b227c84042055e8faa1a9fdc69529707_Out_2_Vector2[1];
|
|
float _Split_2cfb9eacd8762483941459cdf28bda97_B_3_Float = 0;
|
|
float _Split_2cfb9eacd8762483941459cdf28bda97_A_4_Float = 0;
|
|
float _Multiply_1d65ce08ce672087879125f2e13c4004_Out_2_Float;
|
|
Unity_Multiply_float_float(_SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_B_6_Float, _Split_5ed44bf2eca0868f81eb18100f49d1fa_B_3_Float, _Multiply_1d65ce08ce672087879125f2e13c4004_Out_2_Float);
|
|
float3 _Vector3_ba6cfb4671e8c58f9b41ea1dc23102ca_Out_0_Vector3 = float3(_Split_2cfb9eacd8762483941459cdf28bda97_R_1_Float, _Split_2cfb9eacd8762483941459cdf28bda97_G_2_Float, _Multiply_1d65ce08ce672087879125f2e13c4004_Out_2_Float);
|
|
float3 _Multiply_7bb4009c92b108849ac6ca92bc1442f2_Out_2_Vector3;
|
|
Unity_Multiply_float3_float3(_Vector3_ba6cfb4671e8c58f9b41ea1dc23102ca_Out_0_Vector3, (_Split_ae83014fcbd9f7879a0b91fa66dc9718_B_3_Float.xxx), _Multiply_7bb4009c92b108849ac6ca92bc1442f2_Out_2_Vector3);
|
|
float4 _Combine_1e9ffdba42d6918fb7a4b185f1585d2a_RGBA_4_Vector4;
|
|
float3 _Combine_1e9ffdba42d6918fb7a4b185f1585d2a_RGB_5_Vector3;
|
|
float2 _Combine_1e9ffdba42d6918fb7a4b185f1585d2a_RG_6_Vector2;
|
|
Unity_Combine_float(_Split_89ed63cb625cb3878c183d0b71c03400_B_3_Float, _Split_89ed63cb625cb3878c183d0b71c03400_G_2_Float, float(0), float(0), _Combine_1e9ffdba42d6918fb7a4b185f1585d2a_RGBA_4_Vector4, _Combine_1e9ffdba42d6918fb7a4b185f1585d2a_RGB_5_Vector3, _Combine_1e9ffdba42d6918fb7a4b185f1585d2a_RG_6_Vector2);
|
|
float4 _Multiply_2c0864423b014f8b8af8523f68cbb63c_Out_2_Vector4;
|
|
Unity_Multiply_float4_float4(_Combine_1e9ffdba42d6918fb7a4b185f1585d2a_RGBA_4_Vector4, (_Property_47988ec10c0c18879d461e00bed806e7_Out_0_Float.xxxx), _Multiply_2c0864423b014f8b8af8523f68cbb63c_Out_2_Vector4);
|
|
float2 _Vector2_a1e23e0f921b6484818f009a2b12a5ba_Out_0_Vector2 = float2(_Split_6299d4ddcc4c74828aea40a46fdb896e_R_1_Float, float(1));
|
|
float2 _Multiply_862402885a49f18cb87278ab53bc6744_Out_2_Vector2;
|
|
Unity_Multiply_float2_float2((_Multiply_2c0864423b014f8b8af8523f68cbb63c_Out_2_Vector4.xy), _Vector2_a1e23e0f921b6484818f009a2b12a5ba_Out_0_Vector2, _Multiply_862402885a49f18cb87278ab53bc6744_Out_2_Vector2);
|
|
float4 _SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_RGBA_0_Vector4 = SAMPLE_TEXTURE2D(_Property_3e01b4d2fc68d48ba3acbba9d5881e59_Out_0_Texture2D.tex, _Property_8a2b8589cd3a42a1879a29c28e4f711f_Out_0_SamplerState.samplerstate, _Property_3e01b4d2fc68d48ba3acbba9d5881e59_Out_0_Texture2D.GetTransformedUV(_Multiply_862402885a49f18cb87278ab53bc6744_Out_2_Vector2) );
|
|
_SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_RGBA_0_Vector4.rgb = UnpackNormal(_SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_RGBA_0_Vector4);
|
|
float _SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_R_4_Float = _SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_RGBA_0_Vector4.r;
|
|
float _SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_G_5_Float = _SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_RGBA_0_Vector4.g;
|
|
float _SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_B_6_Float = _SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_RGBA_0_Vector4.b;
|
|
float _SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_A_7_Float = _SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_RGBA_0_Vector4.a;
|
|
float _Multiply_4649b768be76d784a3284bacde795359_Out_2_Float;
|
|
Unity_Multiply_float_float(_SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_B_6_Float, _Split_5ed44bf2eca0868f81eb18100f49d1fa_R_1_Float, _Multiply_4649b768be76d784a3284bacde795359_Out_2_Float);
|
|
float2 _Vector2_819fcd5eb484438eacad1987576d7d67_Out_0_Vector2 = float2(_SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_R_4_Float, _SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_G_5_Float);
|
|
float2 _Multiply_58530ebb3c6d798b93686a76247bf505_Out_2_Vector2;
|
|
Unity_Multiply_float2_float2(_Vector2_819fcd5eb484438eacad1987576d7d67_Out_0_Vector2, _Vector2_a1e23e0f921b6484818f009a2b12a5ba_Out_0_Vector2, _Multiply_58530ebb3c6d798b93686a76247bf505_Out_2_Vector2);
|
|
float2 _Vector2_e293c112b2f49e88a5fe46dfb1fbeb40_Out_0_Vector2 = float2(_Split_5ed44bf2eca0868f81eb18100f49d1fa_B_3_Float, _Split_5ed44bf2eca0868f81eb18100f49d1fa_G_2_Float);
|
|
float2 _Add_cf00fb232c6e2b8e973ab2f84453f55e_Out_2_Vector2;
|
|
Unity_Add_float2(_Multiply_58530ebb3c6d798b93686a76247bf505_Out_2_Vector2, _Vector2_e293c112b2f49e88a5fe46dfb1fbeb40_Out_0_Vector2, _Add_cf00fb232c6e2b8e973ab2f84453f55e_Out_2_Vector2);
|
|
float _Split_3ea3e61d32bdd78f82c686b75ff3fd9b_R_1_Float = _Add_cf00fb232c6e2b8e973ab2f84453f55e_Out_2_Vector2[0];
|
|
float _Split_3ea3e61d32bdd78f82c686b75ff3fd9b_G_2_Float = _Add_cf00fb232c6e2b8e973ab2f84453f55e_Out_2_Vector2[1];
|
|
float _Split_3ea3e61d32bdd78f82c686b75ff3fd9b_B_3_Float = 0;
|
|
float _Split_3ea3e61d32bdd78f82c686b75ff3fd9b_A_4_Float = 0;
|
|
float3 _Vector3_13a08d5940172a84a78ee3d9b8766833_Out_0_Vector3 = float3(_Multiply_4649b768be76d784a3284bacde795359_Out_2_Float, _Split_3ea3e61d32bdd78f82c686b75ff3fd9b_G_2_Float, _Split_3ea3e61d32bdd78f82c686b75ff3fd9b_R_1_Float);
|
|
float3 _Multiply_77818c22e359fc8cbb7dd20216a8db72_Out_2_Vector3;
|
|
Unity_Multiply_float3_float3(_Vector3_13a08d5940172a84a78ee3d9b8766833_Out_0_Vector3, (_Split_ae83014fcbd9f7879a0b91fa66dc9718_R_1_Float.xxx), _Multiply_77818c22e359fc8cbb7dd20216a8db72_Out_2_Vector3);
|
|
float3 _Add_769d9ee909c9238dbbf72d2800a2f268_Out_2_Vector3;
|
|
Unity_Add_float3(_Multiply_7bb4009c92b108849ac6ca92bc1442f2_Out_2_Vector3, _Multiply_77818c22e359fc8cbb7dd20216a8db72_Out_2_Vector3, _Add_769d9ee909c9238dbbf72d2800a2f268_Out_2_Vector3);
|
|
float3 _Add_14295f72880e4b87a1baf1ced943ac40_Out_2_Vector3;
|
|
Unity_Add_float3(_Multiply_2e1040ca9c98d085ace76ee93f094039_Out_2_Vector3, _Add_769d9ee909c9238dbbf72d2800a2f268_Out_2_Vector3, _Add_14295f72880e4b87a1baf1ced943ac40_Out_2_Vector3);
|
|
float _Add_e59af300bba2498db32eac1412123447_Out_2_Float;
|
|
Unity_Add_float(_Split_ae83014fcbd9f7879a0b91fa66dc9718_R_1_Float, _Split_ae83014fcbd9f7879a0b91fa66dc9718_G_2_Float, _Add_e59af300bba2498db32eac1412123447_Out_2_Float);
|
|
float _Add_e855069f047fae8ea9027d56acb61e56_Out_2_Float;
|
|
Unity_Add_float(_Add_e59af300bba2498db32eac1412123447_Out_2_Float, _Split_ae83014fcbd9f7879a0b91fa66dc9718_B_3_Float, _Add_e855069f047fae8ea9027d56acb61e56_Out_2_Float);
|
|
float3 _Divide_91ae4b94f1d9b78e99d0472293b8098c_Out_2_Vector3;
|
|
Unity_Divide_float3(_Add_14295f72880e4b87a1baf1ced943ac40_Out_2_Vector3, (_Add_e855069f047fae8ea9027d56acb61e56_Out_2_Float.xxx), _Divide_91ae4b94f1d9b78e99d0472293b8098c_Out_2_Vector3);
|
|
float3 _Transform_73eecc0c3689d184a34c8d0f28a58adf_Out_1_Vector3;
|
|
{
|
|
float3x3 tangentTransform = float3x3(IN.WorldSpaceTangent, IN.WorldSpaceBiTangent, IN.WorldSpaceNormal);
|
|
_Transform_73eecc0c3689d184a34c8d0f28a58adf_Out_1_Vector3 = TransformWorldToTangent(_Divide_91ae4b94f1d9b78e99d0472293b8098c_Out_2_Vector3.xyz, tangentTransform, true);
|
|
}
|
|
float3 _Normalize_15ef346824db0a8797631ed8b998e673_Out_1_Vector3;
|
|
Unity_Normalize_float3(_Transform_73eecc0c3689d184a34c8d0f28a58adf_Out_1_Vector3, _Normalize_15ef346824db0a8797631ed8b998e673_Out_1_Vector3);
|
|
XYZ_1 = (float4(_Normalize_15ef346824db0a8797631ed8b998e673_Out_1_Vector3, 1.0));
|
|
XZ_2 = (float4(_Vector3_08f62c5c01619e849f1a7d85a44531ac_Out_0_Vector3, 1.0));
|
|
YZ_3 = (float4(_Vector3_ba6cfb4671e8c58f9b41ea1dc23102ca_Out_0_Vector3, 1.0));
|
|
XY_4 = (float4(_Vector3_13a08d5940172a84a78ee3d9b8766833_Out_0_Vector3, 1.0));
|
|
}
|
|
|
|
void Unity_NormalStrength_float(float3 In, float Strength, out float3 Out)
|
|
{
|
|
Out = float3(In.rg * Strength, lerp(1, In.b, saturate(Strength)));
|
|
}
|
|
|
|
void Unity_NormalBlend_float(float3 A, float3 B, out float3 Out)
|
|
{
|
|
Out = SafeNormalize(float3(A.rg + B.rg, A.b * B.b));
|
|
}
|
|
|
|
void Unity_Subtract_float(float A, float B, out float Out)
|
|
{
|
|
Out = A - B;
|
|
}
|
|
|
|
void Unity_Divide_float(float A, float B, out float Out)
|
|
{
|
|
Out = A / B;
|
|
}
|
|
|
|
void Unity_Lerp_float3(float3 A, float3 B, float3 T, out float3 Out)
|
|
{
|
|
Out = lerp(A, B, T);
|
|
}
|
|
|
|
void Unity_Remap_float(float In, float2 InMinMax, float2 OutMinMax, out float Out)
|
|
{
|
|
Out = OutMinMax.x + (In - InMinMax.x) * (OutMinMax.y - OutMinMax.x) / (InMinMax.y - InMinMax.x);
|
|
}
|
|
|
|
void Unity_Branch_float(float Predicate, float True, float False, out float Out)
|
|
{
|
|
Out = Predicate ? True : False;
|
|
}
|
|
|
|
void Unity_Lerp_float(float A, float B, float T, out float Out)
|
|
{
|
|
Out = lerp(A, B, T);
|
|
}
|
|
|
|
struct Bindings_BlendOverlayDetailSmoothness_06e12138dc89c0040b45a57abe520a1a_float
|
|
{
|
|
};
|
|
|
|
void SG_BlendOverlayDetailSmoothness_06e12138dc89c0040b45a57abe520a1a_float(float Vector1_32317166, float Vector1_FBE622A2, float Vector1_8C15C351, Bindings_BlendOverlayDetailSmoothness_06e12138dc89c0040b45a57abe520a1a_float IN, out float SmoothnessOverlay_1)
|
|
{
|
|
float _Property_728cc50521e9e988ac9cbff4872d5139_Out_0_Float = Vector1_32317166;
|
|
float _Property_a00e29241d12f983b30177515b367ec9_Out_0_Float = Vector1_FBE622A2;
|
|
float _Sign_343a45ede7349283a681c6bd9998fd8e_Out_1_Float;
|
|
Unity_Sign_float(_Property_a00e29241d12f983b30177515b367ec9_Out_0_Float, _Sign_343a45ede7349283a681c6bd9998fd8e_Out_1_Float);
|
|
float _Add_681019b8f5d3d68bb482d419c9fc61a9_Out_2_Float;
|
|
Unity_Add_float(_Sign_343a45ede7349283a681c6bd9998fd8e_Out_1_Float, float(1), _Add_681019b8f5d3d68bb482d419c9fc61a9_Out_2_Float);
|
|
float _Multiply_e8f4cb722712a880ac0db6c7461427f7_Out_2_Float;
|
|
Unity_Multiply_float_float(_Add_681019b8f5d3d68bb482d419c9fc61a9_Out_2_Float, 0.5, _Multiply_e8f4cb722712a880ac0db6c7461427f7_Out_2_Float);
|
|
float _Ceiling_95ad15988aa9b98184875fa754feae01_Out_1_Float;
|
|
Unity_Ceiling_float(_Multiply_e8f4cb722712a880ac0db6c7461427f7_Out_2_Float, _Ceiling_95ad15988aa9b98184875fa754feae01_Out_1_Float);
|
|
float _Property_2db1c747a05ee284a8b00076062f91a4_Out_0_Float = Vector1_8C15C351;
|
|
float _Lerp_b3cdb01fc3c5b988ac9b184943bf7c01_Out_3_Float;
|
|
Unity_Lerp_float(_Property_728cc50521e9e988ac9cbff4872d5139_Out_0_Float, _Ceiling_95ad15988aa9b98184875fa754feae01_Out_1_Float, _Property_2db1c747a05ee284a8b00076062f91a4_Out_0_Float, _Lerp_b3cdb01fc3c5b988ac9b184943bf7c01_Out_3_Float);
|
|
SmoothnessOverlay_1 = _Lerp_b3cdb01fc3c5b988ac9b184943bf7c01_Out_3_Float;
|
|
}
|
|
|
|
void Unity_Minimum_float(float A, float B, out float Out)
|
|
{
|
|
Out = min(A, B);
|
|
};
|
|
|
|
// Graph Vertex
|
|
struct VertexDescription
|
|
{
|
|
float3 Position;
|
|
float3 Normal;
|
|
float3 Tangent;
|
|
};
|
|
|
|
VertexDescription VertexDescriptionFunction(VertexDescriptionInputs IN)
|
|
{
|
|
VertexDescription description = (VertexDescription)0;
|
|
description.Position = IN.ObjectSpacePosition;
|
|
description.Normal = IN.ObjectSpaceNormal;
|
|
description.Tangent = IN.ObjectSpaceTangent;
|
|
return description;
|
|
}
|
|
|
|
// Graph Pixel
|
|
struct SurfaceDescription
|
|
{
|
|
float3 BaseColor;
|
|
float3 Emission;
|
|
float Alpha;
|
|
float3 BentNormal;
|
|
float Smoothness;
|
|
float Occlusion;
|
|
float3 NormalTS;
|
|
float Metallic;
|
|
};
|
|
|
|
SurfaceDescription SurfaceDescriptionFunction(SurfaceDescriptionInputs IN)
|
|
{
|
|
SurfaceDescription surface = (SurfaceDescription)0;
|
|
float _Property_72a5c604805a7b8ebbfd7acee03656aa_Out_0_Boolean = _CoverMaskRCurvature;
|
|
UnityTexture2D _Property_5f029bbc9f13b7858650859c3b63ebfd_Out_0_Texture2D = UnityBuildTexture2DStructNoScale(_BaseColorMap);
|
|
float4 _Property_a409d5fcafb9f182a4b2aea64204408f_Out_0_Vector4 = _BaseTilingOffset;
|
|
float4 _Divide_6a90cebe78e620828de587523daaa7e6_Out_2_Vector4;
|
|
Unity_Divide_float4(float4(1, 1, 0, 0), _Property_a409d5fcafb9f182a4b2aea64204408f_Out_0_Vector4, _Divide_6a90cebe78e620828de587523daaa7e6_Out_2_Vector4);
|
|
float _Property_3539de8c698c2981bb3c088d4ec52201_Out_0_Float = _BaseTriplanarThreshold;
|
|
Bindings_TriplanarNM_bc609ed95f52591469ab35dbfe0efcea_float _TriplanarNM_92d0433ff3938b8392407d2ab8713ac8;
|
|
_TriplanarNM_92d0433ff3938b8392407d2ab8713ac8.WorldSpaceNormal = IN.WorldSpaceNormal;
|
|
_TriplanarNM_92d0433ff3938b8392407d2ab8713ac8.AbsoluteWorldSpacePosition = IN.AbsoluteWorldSpacePosition;
|
|
float4 _TriplanarNM_92d0433ff3938b8392407d2ab8713ac8_XYZ_1_Vector4;
|
|
float4 _TriplanarNM_92d0433ff3938b8392407d2ab8713ac8_XZ_2_Vector4;
|
|
float4 _TriplanarNM_92d0433ff3938b8392407d2ab8713ac8_YZ_3_Vector4;
|
|
float4 _TriplanarNM_92d0433ff3938b8392407d2ab8713ac8_XY_4_Vector4;
|
|
SG_TriplanarNM_bc609ed95f52591469ab35dbfe0efcea_float(_Property_5f029bbc9f13b7858650859c3b63ebfd_Out_0_Texture2D, (_Divide_6a90cebe78e620828de587523daaa7e6_Out_2_Vector4).x, _Property_3539de8c698c2981bb3c088d4ec52201_Out_0_Float, UnityBuildSamplerStateStruct(SamplerState_Linear_Repeat_Aniso8), _TriplanarNM_92d0433ff3938b8392407d2ab8713ac8, _TriplanarNM_92d0433ff3938b8392407d2ab8713ac8_XYZ_1_Vector4, _TriplanarNM_92d0433ff3938b8392407d2ab8713ac8_XZ_2_Vector4, _TriplanarNM_92d0433ff3938b8392407d2ab8713ac8_YZ_3_Vector4, _TriplanarNM_92d0433ff3938b8392407d2ab8713ac8_XY_4_Vector4);
|
|
float4 _Property_87cd542c2b8c30868ed1d7d38aed8f2b_Out_0_Vector4 = _BaseColor;
|
|
float4 _Multiply_4b2be0b3fe39f385b887e7c82ab41e0b_Out_2_Vector4;
|
|
Unity_Multiply_float4_float4(_TriplanarNM_92d0433ff3938b8392407d2ab8713ac8_XYZ_1_Vector4, _Property_87cd542c2b8c30868ed1d7d38aed8f2b_Out_0_Vector4, _Multiply_4b2be0b3fe39f385b887e7c82ab41e0b_Out_2_Vector4);
|
|
UnityTexture2D _Property_c167aafac28bd98c8411d3e25631fdeb_Out_0_Texture2D = UnityBuildTexture2DStructNoScale(_CoverMaskA);
|
|
float4 _UV_e143f0ebbac8bb8cab3206ab93422dda_Out_0_Vector4 = IN.uv0;
|
|
float4 _SampleTexture2D_32717b1e99785588830ceee116cbe7fc_RGBA_0_Vector4 = SAMPLE_TEXTURE2D(_Property_c167aafac28bd98c8411d3e25631fdeb_Out_0_Texture2D.tex, _Property_c167aafac28bd98c8411d3e25631fdeb_Out_0_Texture2D.samplerstate, _Property_c167aafac28bd98c8411d3e25631fdeb_Out_0_Texture2D.GetTransformedUV((_UV_e143f0ebbac8bb8cab3206ab93422dda_Out_0_Vector4.xy)) );
|
|
float _SampleTexture2D_32717b1e99785588830ceee116cbe7fc_R_4_Float = _SampleTexture2D_32717b1e99785588830ceee116cbe7fc_RGBA_0_Vector4.r;
|
|
float _SampleTexture2D_32717b1e99785588830ceee116cbe7fc_G_5_Float = _SampleTexture2D_32717b1e99785588830ceee116cbe7fc_RGBA_0_Vector4.g;
|
|
float _SampleTexture2D_32717b1e99785588830ceee116cbe7fc_B_6_Float = _SampleTexture2D_32717b1e99785588830ceee116cbe7fc_RGBA_0_Vector4.b;
|
|
float _SampleTexture2D_32717b1e99785588830ceee116cbe7fc_A_7_Float = _SampleTexture2D_32717b1e99785588830ceee116cbe7fc_RGBA_0_Vector4.a;
|
|
float _Multiply_01f97603c3df268380d339564b08db11_Out_2_Float;
|
|
Unity_Multiply_float_float(_SampleTexture2D_32717b1e99785588830ceee116cbe7fc_R_4_Float, 2, _Multiply_01f97603c3df268380d339564b08db11_Out_2_Float);
|
|
float _Property_cad777e9a810198e8076eb2cd76e6817_Out_0_Float = _BaseDarknessCurvMultply;
|
|
float _Multiply_b67c8963c3ba188e85b84ae9bf0dcbf7_Out_2_Float;
|
|
Unity_Multiply_float_float(_Multiply_01f97603c3df268380d339564b08db11_Out_2_Float, _Property_cad777e9a810198e8076eb2cd76e6817_Out_0_Float, _Multiply_b67c8963c3ba188e85b84ae9bf0dcbf7_Out_2_Float);
|
|
float _Clamp_646f55d74b38f18aa983e5d031e0e7c3_Out_3_Float;
|
|
Unity_Clamp_float(_Multiply_b67c8963c3ba188e85b84ae9bf0dcbf7_Out_2_Float, float(0), float(1), _Clamp_646f55d74b38f18aa983e5d031e0e7c3_Out_3_Float);
|
|
float _Absolute_c99e11216fab2488946eb6243d985fdc_Out_1_Float;
|
|
Unity_Absolute_float(_Clamp_646f55d74b38f18aa983e5d031e0e7c3_Out_3_Float, _Absolute_c99e11216fab2488946eb6243d985fdc_Out_1_Float);
|
|
float _Property_f8a9827e6f28d9819188d4775dcf7620_Out_0_Float = _BaseDarknessCurvPower;
|
|
float _Power_1b88303e1ca2f285b344bf6aa0cf05e4_Out_2_Float;
|
|
Unity_Power_float(_Absolute_c99e11216fab2488946eb6243d985fdc_Out_1_Float, _Property_f8a9827e6f28d9819188d4775dcf7620_Out_0_Float, _Power_1b88303e1ca2f285b344bf6aa0cf05e4_Out_2_Float);
|
|
float _Clamp_27887d983dbb5a8bbd2966fbcbd7c126_Out_3_Float;
|
|
Unity_Clamp_float(_Power_1b88303e1ca2f285b344bf6aa0cf05e4_Out_2_Float, float(0), float(1), _Clamp_27887d983dbb5a8bbd2966fbcbd7c126_Out_3_Float);
|
|
float4 _Multiply_59efbfb897b39480ad44be129db72018_Out_2_Vector4;
|
|
Unity_Multiply_float4_float4(_Multiply_4b2be0b3fe39f385b887e7c82ab41e0b_Out_2_Vector4, (_Clamp_27887d983dbb5a8bbd2966fbcbd7c126_Out_3_Float.xxxx), _Multiply_59efbfb897b39480ad44be129db72018_Out_2_Vector4);
|
|
float4 _Clamp_841e38951a68f286955c4755e78c610b_Out_3_Vector4;
|
|
Unity_Clamp_float4(_Multiply_59efbfb897b39480ad44be129db72018_Out_2_Vector4, float4(0, 0, 0, 0), float4(1, 1, 1, 1), _Clamp_841e38951a68f286955c4755e78c610b_Out_3_Vector4);
|
|
float _Add_d7ea4a88c4af4886b1e567ddd2b963f9_Out_2_Float;
|
|
Unity_Add_float(_Multiply_01f97603c3df268380d339564b08db11_Out_2_Float, float(-1), _Add_d7ea4a88c4af4886b1e567ddd2b963f9_Out_2_Float);
|
|
float _Clamp_1a02c4bf5903c988b1489d14c840c1e3_Out_3_Float;
|
|
Unity_Clamp_float(_Add_d7ea4a88c4af4886b1e567ddd2b963f9_Out_2_Float, float(0), float(1), _Clamp_1a02c4bf5903c988b1489d14c840c1e3_Out_3_Float);
|
|
float _Property_0e0e1ec2131cec87836dce596351dc1c_Out_0_Float = _BaseBrightnessCurvMultply;
|
|
float _Multiply_c975dfa7de001c89addd082d443e2d07_Out_2_Float;
|
|
Unity_Multiply_float_float(_Clamp_1a02c4bf5903c988b1489d14c840c1e3_Out_3_Float, _Property_0e0e1ec2131cec87836dce596351dc1c_Out_0_Float, _Multiply_c975dfa7de001c89addd082d443e2d07_Out_2_Float);
|
|
float _Clamp_d5711b145a87ef8e8a93ceb9b6197759_Out_3_Float;
|
|
Unity_Clamp_float(_Multiply_c975dfa7de001c89addd082d443e2d07_Out_2_Float, float(0), float(1), _Clamp_d5711b145a87ef8e8a93ceb9b6197759_Out_3_Float);
|
|
float _Absolute_8f9bd7ee7a35c18084d08ad7ef463f52_Out_1_Float;
|
|
Unity_Absolute_float(_Clamp_d5711b145a87ef8e8a93ceb9b6197759_Out_3_Float, _Absolute_8f9bd7ee7a35c18084d08ad7ef463f52_Out_1_Float);
|
|
float _Property_9092f5beea2bec83a5c8a3f6623953a6_Out_0_Float = _BaseBrightnessCurvPower;
|
|
float _Power_5c1a81a2cfcc578996666adb93479f83_Out_2_Float;
|
|
Unity_Power_float(_Absolute_8f9bd7ee7a35c18084d08ad7ef463f52_Out_1_Float, _Property_9092f5beea2bec83a5c8a3f6623953a6_Out_0_Float, _Power_5c1a81a2cfcc578996666adb93479f83_Out_2_Float);
|
|
float _Clamp_f3c614a7ae35508288c0bc3f6194ca34_Out_3_Float;
|
|
Unity_Clamp_float(_Power_5c1a81a2cfcc578996666adb93479f83_Out_2_Float, float(0), float(1), _Clamp_f3c614a7ae35508288c0bc3f6194ca34_Out_3_Float);
|
|
float4 _Add_8313e15cade91a8ba653986d6722818a_Out_2_Vector4;
|
|
Unity_Add_float4(_Clamp_841e38951a68f286955c4755e78c610b_Out_3_Vector4, (_Clamp_f3c614a7ae35508288c0bc3f6194ca34_Out_3_Float.xxxx), _Add_8313e15cade91a8ba653986d6722818a_Out_2_Vector4);
|
|
float4 _Clamp_6dc8fea4fa463b8ea840911fd315c80f_Out_3_Vector4;
|
|
Unity_Clamp_float4(_Add_8313e15cade91a8ba653986d6722818a_Out_2_Vector4, float4(0, 0, 0, 0), float4(1, 1, 1, 1), _Clamp_6dc8fea4fa463b8ea840911fd315c80f_Out_3_Vector4);
|
|
float4 _Branch_26165227c7a50284b87d2996dee9982c_Out_3_Vector4;
|
|
Unity_Branch_float4(_Property_72a5c604805a7b8ebbfd7acee03656aa_Out_0_Boolean, _Clamp_6dc8fea4fa463b8ea840911fd315c80f_Out_3_Vector4, _Multiply_4b2be0b3fe39f385b887e7c82ab41e0b_Out_2_Vector4, _Branch_26165227c7a50284b87d2996dee9982c_Out_3_Vector4);
|
|
UnityTexture2D _Property_2e62abc1fe8adb8b8ff655b8448be202_Out_0_Texture2D = UnityBuildTexture2DStructNoScale(_DetailMap);
|
|
float4 _Property_b86e0ee324ffb58a92473eab69864d04_Out_0_Vector4 = _DetailTilingOffset;
|
|
float _Split_e832641c05503286a4951c0a93621755_R_1_Float = _Property_b86e0ee324ffb58a92473eab69864d04_Out_0_Vector4[0];
|
|
float _Split_e832641c05503286a4951c0a93621755_G_2_Float = _Property_b86e0ee324ffb58a92473eab69864d04_Out_0_Vector4[1];
|
|
float _Split_e832641c05503286a4951c0a93621755_B_3_Float = _Property_b86e0ee324ffb58a92473eab69864d04_Out_0_Vector4[2];
|
|
float _Split_e832641c05503286a4951c0a93621755_A_4_Float = _Property_b86e0ee324ffb58a92473eab69864d04_Out_0_Vector4[3];
|
|
float2 _Vector2_4b5eef288b3d4c83b24e4ab653f55ec8_Out_0_Vector2 = float2(_Split_e832641c05503286a4951c0a93621755_R_1_Float, _Split_e832641c05503286a4951c0a93621755_G_2_Float);
|
|
float2 _Vector2_2925cf98ba16b08dabc58cd65efd17db_Out_0_Vector2 = float2(_Split_e832641c05503286a4951c0a93621755_B_3_Float, _Split_e832641c05503286a4951c0a93621755_A_4_Float);
|
|
float2 _TilingAndOffset_74f6566eba9ccd899de18c0b11b7a7a2_Out_3_Vector2;
|
|
Unity_TilingAndOffset_float(IN.uv0.xy, _Vector2_4b5eef288b3d4c83b24e4ab653f55ec8_Out_0_Vector2, _Vector2_2925cf98ba16b08dabc58cd65efd17db_Out_0_Vector2, _TilingAndOffset_74f6566eba9ccd899de18c0b11b7a7a2_Out_3_Vector2);
|
|
float4 _SampleTexture2D_4bd08411faa60c828847f2247f06a809_RGBA_0_Vector4 = SAMPLE_TEXTURE2D(_Property_2e62abc1fe8adb8b8ff655b8448be202_Out_0_Texture2D.tex, _Property_2e62abc1fe8adb8b8ff655b8448be202_Out_0_Texture2D.samplerstate, _Property_2e62abc1fe8adb8b8ff655b8448be202_Out_0_Texture2D.GetTransformedUV(_TilingAndOffset_74f6566eba9ccd899de18c0b11b7a7a2_Out_3_Vector2) );
|
|
float _SampleTexture2D_4bd08411faa60c828847f2247f06a809_R_4_Float = _SampleTexture2D_4bd08411faa60c828847f2247f06a809_RGBA_0_Vector4.r;
|
|
float _SampleTexture2D_4bd08411faa60c828847f2247f06a809_G_5_Float = _SampleTexture2D_4bd08411faa60c828847f2247f06a809_RGBA_0_Vector4.g;
|
|
float _SampleTexture2D_4bd08411faa60c828847f2247f06a809_B_6_Float = _SampleTexture2D_4bd08411faa60c828847f2247f06a809_RGBA_0_Vector4.b;
|
|
float _SampleTexture2D_4bd08411faa60c828847f2247f06a809_A_7_Float = _SampleTexture2D_4bd08411faa60c828847f2247f06a809_RGBA_0_Vector4.a;
|
|
float _Multiply_ee5a3ccdebd1af84920cd1455a59468b_Out_2_Float;
|
|
Unity_Multiply_float_float(_SampleTexture2D_4bd08411faa60c828847f2247f06a809_R_4_Float, 2, _Multiply_ee5a3ccdebd1af84920cd1455a59468b_Out_2_Float);
|
|
float _Add_b8d727bda34294808f98551e67aa852f_Out_2_Float;
|
|
Unity_Add_float(_Multiply_ee5a3ccdebd1af84920cd1455a59468b_Out_2_Float, float(-1), _Add_b8d727bda34294808f98551e67aa852f_Out_2_Float);
|
|
float _Property_4634e589b03f6983b90fa6aaee0ed5f6_Out_0_Float = _DetailAlbedoScale;
|
|
float _Multiply_f0ed5a95f800c68aa9f7ea2f1322cc31_Out_2_Float;
|
|
Unity_Multiply_float_float(_Add_b8d727bda34294808f98551e67aa852f_Out_2_Float, _Property_4634e589b03f6983b90fa6aaee0ed5f6_Out_0_Float, _Multiply_f0ed5a95f800c68aa9f7ea2f1322cc31_Out_2_Float);
|
|
float _Saturate_469298b4e783d887889b71dc48b4399f_Out_1_Float;
|
|
Unity_Saturate_float(_Multiply_f0ed5a95f800c68aa9f7ea2f1322cc31_Out_2_Float, _Saturate_469298b4e783d887889b71dc48b4399f_Out_1_Float);
|
|
float _Absolute_3b29f3ceceba148189d11e0195af4be2_Out_1_Float;
|
|
Unity_Absolute_float(_Saturate_469298b4e783d887889b71dc48b4399f_Out_1_Float, _Absolute_3b29f3ceceba148189d11e0195af4be2_Out_1_Float);
|
|
Bindings_BlendOverlayBaseColor_acdb3dfca72bd6b42bbc35f4613331a2_float _BlendOverlayBaseColor_369c0b6a02e62b809dc5c6ac1efddde2;
|
|
float3 _BlendOverlayBaseColor_369c0b6a02e62b809dc5c6ac1efddde2_OutVector4_1_Vector3;
|
|
SG_BlendOverlayBaseColor_acdb3dfca72bd6b42bbc35f4613331a2_float(_Branch_26165227c7a50284b87d2996dee9982c_Out_3_Vector4, _Add_b8d727bda34294808f98551e67aa852f_Out_2_Float, _Absolute_3b29f3ceceba148189d11e0195af4be2_Out_1_Float, _BlendOverlayBaseColor_369c0b6a02e62b809dc5c6ac1efddde2, _BlendOverlayBaseColor_369c0b6a02e62b809dc5c6ac1efddde2_OutVector4_1_Vector3);
|
|
UnityTexture2D _Property_9a8451520f254f84a21875f3dac8cbe3_Out_0_Texture2D = UnityBuildTexture2DStructNoScale(_CoverBaseColorMap);
|
|
float4 _Property_c853e88632d9fd85ac0e98d12083eb62_Out_0_Vector4 = _CoverTilingOffset;
|
|
float4 _Divide_1fe314f1ca9dd78fbf366bbeb40e4ccf_Out_2_Vector4;
|
|
Unity_Divide_float4(float4(1, 1, 0, 0), _Property_c853e88632d9fd85ac0e98d12083eb62_Out_0_Vector4, _Divide_1fe314f1ca9dd78fbf366bbeb40e4ccf_Out_2_Vector4);
|
|
float _Property_ee792eccbb538a878b19be5db264531e_Out_0_Float = _CoverTriplanarThreshold;
|
|
Bindings_TriplanarNM_bc609ed95f52591469ab35dbfe0efcea_float _TriplanarNM_cca4c45d91c87989990c532a04e9e8e1;
|
|
_TriplanarNM_cca4c45d91c87989990c532a04e9e8e1.WorldSpaceNormal = IN.WorldSpaceNormal;
|
|
_TriplanarNM_cca4c45d91c87989990c532a04e9e8e1.AbsoluteWorldSpacePosition = IN.AbsoluteWorldSpacePosition;
|
|
float4 _TriplanarNM_cca4c45d91c87989990c532a04e9e8e1_XYZ_1_Vector4;
|
|
float4 _TriplanarNM_cca4c45d91c87989990c532a04e9e8e1_XZ_2_Vector4;
|
|
float4 _TriplanarNM_cca4c45d91c87989990c532a04e9e8e1_YZ_3_Vector4;
|
|
float4 _TriplanarNM_cca4c45d91c87989990c532a04e9e8e1_XY_4_Vector4;
|
|
SG_TriplanarNM_bc609ed95f52591469ab35dbfe0efcea_float(_Property_9a8451520f254f84a21875f3dac8cbe3_Out_0_Texture2D, (_Divide_1fe314f1ca9dd78fbf366bbeb40e4ccf_Out_2_Vector4).x, _Property_ee792eccbb538a878b19be5db264531e_Out_0_Float, UnityBuildSamplerStateStruct(SamplerState_Linear_Repeat_Aniso8), _TriplanarNM_cca4c45d91c87989990c532a04e9e8e1, _TriplanarNM_cca4c45d91c87989990c532a04e9e8e1_XYZ_1_Vector4, _TriplanarNM_cca4c45d91c87989990c532a04e9e8e1_XZ_2_Vector4, _TriplanarNM_cca4c45d91c87989990c532a04e9e8e1_YZ_3_Vector4, _TriplanarNM_cca4c45d91c87989990c532a04e9e8e1_XY_4_Vector4);
|
|
float4 _Property_18c743619f52288dbe24e28326388b00_Out_0_Vector4 = _CoverBaseColor;
|
|
float4 _Multiply_62594f3b30470e86a813e1224c48902e_Out_2_Vector4;
|
|
Unity_Multiply_float4_float4(_TriplanarNM_cca4c45d91c87989990c532a04e9e8e1_XYZ_1_Vector4, _Property_18c743619f52288dbe24e28326388b00_Out_0_Vector4, _Multiply_62594f3b30470e86a813e1224c48902e_Out_2_Vector4);
|
|
float _Multiply_5378fc524597f98fb32eeb561a7390e9_Out_2_Float;
|
|
Unity_Multiply_float_float(_SampleTexture2D_32717b1e99785588830ceee116cbe7fc_R_4_Float, 2, _Multiply_5378fc524597f98fb32eeb561a7390e9_Out_2_Float);
|
|
float _Property_8a72d97c1c527c8f8e0cc71214498065_Out_0_Float = _CoverDarknessCurvMultply;
|
|
float _Multiply_22683a720176a788a2ce404dbddd837c_Out_2_Float;
|
|
Unity_Multiply_float_float(_Multiply_5378fc524597f98fb32eeb561a7390e9_Out_2_Float, _Property_8a72d97c1c527c8f8e0cc71214498065_Out_0_Float, _Multiply_22683a720176a788a2ce404dbddd837c_Out_2_Float);
|
|
float _Clamp_5a638fb628222d8a97865d9029554fe2_Out_3_Float;
|
|
Unity_Clamp_float(_Multiply_22683a720176a788a2ce404dbddd837c_Out_2_Float, float(0), float(1), _Clamp_5a638fb628222d8a97865d9029554fe2_Out_3_Float);
|
|
float _Absolute_11985e8863bf2b8ca0bda90bca829348_Out_1_Float;
|
|
Unity_Absolute_float(_Clamp_5a638fb628222d8a97865d9029554fe2_Out_3_Float, _Absolute_11985e8863bf2b8ca0bda90bca829348_Out_1_Float);
|
|
float _Property_aba5acef910eee88b110d565674a9e36_Out_0_Float = _CoverDarknessCurvPower;
|
|
float _Power_da9b537d80a58d85a88e72c2a5d01e7c_Out_2_Float;
|
|
Unity_Power_float(_Absolute_11985e8863bf2b8ca0bda90bca829348_Out_1_Float, _Property_aba5acef910eee88b110d565674a9e36_Out_0_Float, _Power_da9b537d80a58d85a88e72c2a5d01e7c_Out_2_Float);
|
|
float _Clamp_77228e2a7266fa8ca042eae2f0701342_Out_3_Float;
|
|
Unity_Clamp_float(_Power_da9b537d80a58d85a88e72c2a5d01e7c_Out_2_Float, float(0), float(1), _Clamp_77228e2a7266fa8ca042eae2f0701342_Out_3_Float);
|
|
float4 _Multiply_2111c8ad39d5e68caf4893a41a3bad7d_Out_2_Vector4;
|
|
Unity_Multiply_float4_float4(_Multiply_62594f3b30470e86a813e1224c48902e_Out_2_Vector4, (_Clamp_77228e2a7266fa8ca042eae2f0701342_Out_3_Float.xxxx), _Multiply_2111c8ad39d5e68caf4893a41a3bad7d_Out_2_Vector4);
|
|
float4 _Clamp_b489ebb9d7d18282a342100f4d2fa72d_Out_3_Vector4;
|
|
Unity_Clamp_float4(_Multiply_2111c8ad39d5e68caf4893a41a3bad7d_Out_2_Vector4, float4(0, 0, 0, 0), float4(1, 1, 1, 1), _Clamp_b489ebb9d7d18282a342100f4d2fa72d_Out_3_Vector4);
|
|
float _Add_7eea819e47ffe58cbb3ec5877a181444_Out_2_Float;
|
|
Unity_Add_float(_Multiply_5378fc524597f98fb32eeb561a7390e9_Out_2_Float, float(-1), _Add_7eea819e47ffe58cbb3ec5877a181444_Out_2_Float);
|
|
float _Clamp_b5e4f47c0358dc87b5f9fdb3a360e9e9_Out_3_Float;
|
|
Unity_Clamp_float(_Add_7eea819e47ffe58cbb3ec5877a181444_Out_2_Float, float(0), float(1), _Clamp_b5e4f47c0358dc87b5f9fdb3a360e9e9_Out_3_Float);
|
|
float _Property_753051c96a90798fa7d94cff4173d6e6_Out_0_Float = _CoverBrightnessCurvMultply;
|
|
float _Multiply_c650497abc44d98882ce0091d10c4356_Out_2_Float;
|
|
Unity_Multiply_float_float(_Clamp_b5e4f47c0358dc87b5f9fdb3a360e9e9_Out_3_Float, _Property_753051c96a90798fa7d94cff4173d6e6_Out_0_Float, _Multiply_c650497abc44d98882ce0091d10c4356_Out_2_Float);
|
|
float _Clamp_c508dc61e0cb2a829429559098f34f9a_Out_3_Float;
|
|
Unity_Clamp_float(_Multiply_c650497abc44d98882ce0091d10c4356_Out_2_Float, float(0), float(1), _Clamp_c508dc61e0cb2a829429559098f34f9a_Out_3_Float);
|
|
float _Absolute_2cff2da32d80c286acbb99de611f381a_Out_1_Float;
|
|
Unity_Absolute_float(_Clamp_c508dc61e0cb2a829429559098f34f9a_Out_3_Float, _Absolute_2cff2da32d80c286acbb99de611f381a_Out_1_Float);
|
|
float _Property_ce4610db7b6d0c8bb7fb318210d3e83f_Out_0_Float = _CoverBrightnessCurvPower;
|
|
float _Power_c21df4d2e5ea448281f9ac0f4a140b9e_Out_2_Float;
|
|
Unity_Power_float(_Absolute_2cff2da32d80c286acbb99de611f381a_Out_1_Float, _Property_ce4610db7b6d0c8bb7fb318210d3e83f_Out_0_Float, _Power_c21df4d2e5ea448281f9ac0f4a140b9e_Out_2_Float);
|
|
float _Clamp_fd095a9d6c2b9881ae5875ed126bf3fb_Out_3_Float;
|
|
Unity_Clamp_float(_Power_c21df4d2e5ea448281f9ac0f4a140b9e_Out_2_Float, float(0), float(1), _Clamp_fd095a9d6c2b9881ae5875ed126bf3fb_Out_3_Float);
|
|
float4 _Add_4a02758b9a29b18180516bf3c3ede263_Out_2_Vector4;
|
|
Unity_Add_float4(_Clamp_b489ebb9d7d18282a342100f4d2fa72d_Out_3_Vector4, (_Clamp_fd095a9d6c2b9881ae5875ed126bf3fb_Out_3_Float.xxxx), _Add_4a02758b9a29b18180516bf3c3ede263_Out_2_Vector4);
|
|
float4 _Clamp_632e3d64ab55648f927a79cef68f3396_Out_3_Vector4;
|
|
Unity_Clamp_float4(_Add_4a02758b9a29b18180516bf3c3ede263_Out_2_Vector4, float4(0, 0, 0, 0), float4(1, 1, 1, 1), _Clamp_632e3d64ab55648f927a79cef68f3396_Out_3_Vector4);
|
|
float4 _Branch_0c5221a996e29186a372734bf5c30a51_Out_3_Vector4;
|
|
Unity_Branch_float4(_Property_72a5c604805a7b8ebbfd7acee03656aa_Out_0_Boolean, _Clamp_632e3d64ab55648f927a79cef68f3396_Out_3_Vector4, _Multiply_62594f3b30470e86a813e1224c48902e_Out_2_Vector4, _Branch_0c5221a996e29186a372734bf5c30a51_Out_3_Vector4);
|
|
float _Multiply_6a55591ceae0dc86a971a275e316fec6_Out_2_Float;
|
|
Unity_Multiply_float_float(_SampleTexture2D_4bd08411faa60c828847f2247f06a809_R_4_Float, 2, _Multiply_6a55591ceae0dc86a971a275e316fec6_Out_2_Float);
|
|
float _Add_a86411eb4894f78f8f8f3246011b369c_Out_2_Float;
|
|
Unity_Add_float(_Multiply_6a55591ceae0dc86a971a275e316fec6_Out_2_Float, float(-1), _Add_a86411eb4894f78f8f8f3246011b369c_Out_2_Float);
|
|
float _Property_c5a049650239cf80a302d0c0f57c147a_Out_0_Float = _DetailCoverAlbedoScale;
|
|
float _Multiply_1708b01db74fe88a8c36434f8729bf41_Out_2_Float;
|
|
Unity_Multiply_float_float(_Add_a86411eb4894f78f8f8f3246011b369c_Out_2_Float, _Property_c5a049650239cf80a302d0c0f57c147a_Out_0_Float, _Multiply_1708b01db74fe88a8c36434f8729bf41_Out_2_Float);
|
|
float _Saturate_1a4899f79635918485a64fff7cea28ad_Out_1_Float;
|
|
Unity_Saturate_float(_Multiply_1708b01db74fe88a8c36434f8729bf41_Out_2_Float, _Saturate_1a4899f79635918485a64fff7cea28ad_Out_1_Float);
|
|
float _Absolute_d3dce2bb8d9f0285b5183b7f665beed8_Out_1_Float;
|
|
Unity_Absolute_float(_Saturate_1a4899f79635918485a64fff7cea28ad_Out_1_Float, _Absolute_d3dce2bb8d9f0285b5183b7f665beed8_Out_1_Float);
|
|
Bindings_BlendOverlayBaseColor_acdb3dfca72bd6b42bbc35f4613331a2_float _BlendOverlayBaseColor_ec1f397271cc818abdb95188914e6b4d;
|
|
float3 _BlendOverlayBaseColor_ec1f397271cc818abdb95188914e6b4d_OutVector4_1_Vector3;
|
|
SG_BlendOverlayBaseColor_acdb3dfca72bd6b42bbc35f4613331a2_float(_Branch_0c5221a996e29186a372734bf5c30a51_Out_3_Vector4, _Add_a86411eb4894f78f8f8f3246011b369c_Out_2_Float, _Absolute_d3dce2bb8d9f0285b5183b7f665beed8_Out_1_Float, _BlendOverlayBaseColor_ec1f397271cc818abdb95188914e6b4d, _BlendOverlayBaseColor_ec1f397271cc818abdb95188914e6b4d_OutVector4_1_Vector3);
|
|
float _Property_cb0b6597aee47880b32e852aaa0e4a71_Out_0_Boolean = _USEDYNAMICCOVERTSTATICMASKF;
|
|
float _Property_4b3f692214f8d081a043985e1adb12a1_Out_0_Float = _CoverMaskPower;
|
|
float _Multiply_10cc4ecb135f8e8ab88c475223d0eadf_Out_2_Float;
|
|
Unity_Multiply_float_float(_SampleTexture2D_32717b1e99785588830ceee116cbe7fc_A_7_Float, _Property_4b3f692214f8d081a043985e1adb12a1_Out_0_Float, _Multiply_10cc4ecb135f8e8ab88c475223d0eadf_Out_2_Float);
|
|
float _Clamp_07a501c22c6e188199bed73412ac8926_Out_3_Float;
|
|
Unity_Clamp_float(_Multiply_10cc4ecb135f8e8ab88c475223d0eadf_Out_2_Float, float(0), float(1), _Clamp_07a501c22c6e188199bed73412ac8926_Out_3_Float);
|
|
float _Split_2ada595651635e8d97bf4b82f717fcc6_R_1_Float = IN.VertexColor[0];
|
|
float _Split_2ada595651635e8d97bf4b82f717fcc6_G_2_Float = IN.VertexColor[1];
|
|
float _Split_2ada595651635e8d97bf4b82f717fcc6_B_3_Float = IN.VertexColor[2];
|
|
float _Split_2ada595651635e8d97bf4b82f717fcc6_A_4_Float = IN.VertexColor[3];
|
|
float3 _Property_9180f8dd535ba18499edac37aef4d231_Out_0_Vector3 = _CoverDirection;
|
|
float2 _Vector2_7fe7d9ef320da68f958e1ea535e2a6a8_Out_0_Vector2 = float2(_SampleTexture2D_4bd08411faa60c828847f2247f06a809_A_7_Float, _SampleTexture2D_4bd08411faa60c828847f2247f06a809_G_5_Float);
|
|
float2 _Multiply_b8d7cc078ce00d87b9a6b5241b2f1f01_Out_2_Vector2;
|
|
Unity_Multiply_float2_float2(_Vector2_7fe7d9ef320da68f958e1ea535e2a6a8_Out_0_Vector2, float2(2, 2), _Multiply_b8d7cc078ce00d87b9a6b5241b2f1f01_Out_2_Vector2);
|
|
float2 _Add_476ecfb1f47aed8bb8040bb1c44ca372_Out_2_Vector2;
|
|
Unity_Add_float2(_Multiply_b8d7cc078ce00d87b9a6b5241b2f1f01_Out_2_Vector2, float2(-1, -1), _Add_476ecfb1f47aed8bb8040bb1c44ca372_Out_2_Vector2);
|
|
float _Property_b7f40cf2664f5a819eb153af2b2eb69e_Out_0_Float = _DetailNormalScale;
|
|
float2 _Multiply_3b11e3e43551698eb19b6c6b671b6a41_Out_2_Vector2;
|
|
Unity_Multiply_float2_float2(_Add_476ecfb1f47aed8bb8040bb1c44ca372_Out_2_Vector2, (_Property_b7f40cf2664f5a819eb153af2b2eb69e_Out_0_Float.xx), _Multiply_3b11e3e43551698eb19b6c6b671b6a41_Out_2_Vector2);
|
|
float _Split_678aac70d9cb9783a49841710ce82ff8_R_1_Float = _Multiply_3b11e3e43551698eb19b6c6b671b6a41_Out_2_Vector2[0];
|
|
float _Split_678aac70d9cb9783a49841710ce82ff8_G_2_Float = _Multiply_3b11e3e43551698eb19b6c6b671b6a41_Out_2_Vector2[1];
|
|
float _Split_678aac70d9cb9783a49841710ce82ff8_B_3_Float = 0;
|
|
float _Split_678aac70d9cb9783a49841710ce82ff8_A_4_Float = 0;
|
|
float _DotProduct_7fd2e2e8b3e9ed8f9a42a0ba98e14174_Out_2_Float;
|
|
Unity_DotProduct_float2(_Multiply_3b11e3e43551698eb19b6c6b671b6a41_Out_2_Vector2, _Multiply_3b11e3e43551698eb19b6c6b671b6a41_Out_2_Vector2, _DotProduct_7fd2e2e8b3e9ed8f9a42a0ba98e14174_Out_2_Float);
|
|
float _Saturate_47bdfe8ca2c8d989a5ebbb5eb995f023_Out_1_Float;
|
|
Unity_Saturate_float(_DotProduct_7fd2e2e8b3e9ed8f9a42a0ba98e14174_Out_2_Float, _Saturate_47bdfe8ca2c8d989a5ebbb5eb995f023_Out_1_Float);
|
|
float _OneMinus_03777d2879850b838187d9d2605d7341_Out_1_Float;
|
|
Unity_OneMinus_float(_Saturate_47bdfe8ca2c8d989a5ebbb5eb995f023_Out_1_Float, _OneMinus_03777d2879850b838187d9d2605d7341_Out_1_Float);
|
|
float _SquareRoot_ca9c195aef071d8888f26cb73b749f72_Out_1_Float;
|
|
Unity_SquareRoot_float(_OneMinus_03777d2879850b838187d9d2605d7341_Out_1_Float, _SquareRoot_ca9c195aef071d8888f26cb73b749f72_Out_1_Float);
|
|
float3 _Vector3_6999cbd6a5aa908cb7c059b5f2f5b330_Out_0_Vector3 = float3(_Split_678aac70d9cb9783a49841710ce82ff8_R_1_Float, _Split_678aac70d9cb9783a49841710ce82ff8_G_2_Float, _SquareRoot_ca9c195aef071d8888f26cb73b749f72_Out_1_Float);
|
|
UnityTexture2D _Property_d2bb0a0b01239c85bd301cadeec1b3d8_Out_0_Texture2D = UnityBuildTexture2DStructNoScale(_BaseNormalMap);
|
|
Bindings_TriplanarNMn_059da9746584140498cd018db3c76047_float _TriplanarNMn_bf7f7c0e2d896289b86076b79f33d7d4;
|
|
_TriplanarNMn_bf7f7c0e2d896289b86076b79f33d7d4.WorldSpaceNormal = IN.WorldSpaceNormal;
|
|
_TriplanarNMn_bf7f7c0e2d896289b86076b79f33d7d4.WorldSpaceTangent = IN.WorldSpaceTangent;
|
|
_TriplanarNMn_bf7f7c0e2d896289b86076b79f33d7d4.WorldSpaceBiTangent = IN.WorldSpaceBiTangent;
|
|
_TriplanarNMn_bf7f7c0e2d896289b86076b79f33d7d4.AbsoluteWorldSpacePosition = IN.AbsoluteWorldSpacePosition;
|
|
float4 _TriplanarNMn_bf7f7c0e2d896289b86076b79f33d7d4_XYZ_1_Vector4;
|
|
float4 _TriplanarNMn_bf7f7c0e2d896289b86076b79f33d7d4_XZ_2_Vector4;
|
|
float4 _TriplanarNMn_bf7f7c0e2d896289b86076b79f33d7d4_YZ_3_Vector4;
|
|
float4 _TriplanarNMn_bf7f7c0e2d896289b86076b79f33d7d4_XY_4_Vector4;
|
|
SG_TriplanarNMn_059da9746584140498cd018db3c76047_float(_Property_d2bb0a0b01239c85bd301cadeec1b3d8_Out_0_Texture2D, (_Divide_6a90cebe78e620828de587523daaa7e6_Out_2_Vector4).x, _Property_3539de8c698c2981bb3c088d4ec52201_Out_0_Float, UnityBuildSamplerStateStruct(SamplerState_Linear_Repeat_Aniso8), _TriplanarNMn_bf7f7c0e2d896289b86076b79f33d7d4, _TriplanarNMn_bf7f7c0e2d896289b86076b79f33d7d4_XYZ_1_Vector4, _TriplanarNMn_bf7f7c0e2d896289b86076b79f33d7d4_XZ_2_Vector4, _TriplanarNMn_bf7f7c0e2d896289b86076b79f33d7d4_YZ_3_Vector4, _TriplanarNMn_bf7f7c0e2d896289b86076b79f33d7d4_XY_4_Vector4);
|
|
float _Property_d6baf612f8e685848732ca270b39f544_Out_0_Float = _BaseNormalScale;
|
|
float3 _NormalStrength_260139b4d5077d8b9d42de780d173b6c_Out_2_Vector3;
|
|
Unity_NormalStrength_float((_TriplanarNMn_bf7f7c0e2d896289b86076b79f33d7d4_XYZ_1_Vector4.xyz), _Property_d6baf612f8e685848732ca270b39f544_Out_0_Float, _NormalStrength_260139b4d5077d8b9d42de780d173b6c_Out_2_Vector3);
|
|
UnityTexture2D _Property_492c4e7cd40ab980bd38362624511e38_Out_0_Texture2D = UnityBuildTexture2DStructNoScale(_ShapeNormalMap);
|
|
float4 _SampleTexture2D_63aaad04c65f698e8f640de826888075_RGBA_0_Vector4 = SAMPLE_TEXTURE2D(_Property_492c4e7cd40ab980bd38362624511e38_Out_0_Texture2D.tex, _Property_492c4e7cd40ab980bd38362624511e38_Out_0_Texture2D.samplerstate, _Property_492c4e7cd40ab980bd38362624511e38_Out_0_Texture2D.GetTransformedUV(IN.uv0.xy) );
|
|
_SampleTexture2D_63aaad04c65f698e8f640de826888075_RGBA_0_Vector4.rgb = UnpackNormal(_SampleTexture2D_63aaad04c65f698e8f640de826888075_RGBA_0_Vector4);
|
|
float _SampleTexture2D_63aaad04c65f698e8f640de826888075_R_4_Float = _SampleTexture2D_63aaad04c65f698e8f640de826888075_RGBA_0_Vector4.r;
|
|
float _SampleTexture2D_63aaad04c65f698e8f640de826888075_G_5_Float = _SampleTexture2D_63aaad04c65f698e8f640de826888075_RGBA_0_Vector4.g;
|
|
float _SampleTexture2D_63aaad04c65f698e8f640de826888075_B_6_Float = _SampleTexture2D_63aaad04c65f698e8f640de826888075_RGBA_0_Vector4.b;
|
|
float _SampleTexture2D_63aaad04c65f698e8f640de826888075_A_7_Float = _SampleTexture2D_63aaad04c65f698e8f640de826888075_RGBA_0_Vector4.a;
|
|
float _Property_6c35e329e57d0e89950e24817068dbb1_Out_0_Float = _shapeNormalScale;
|
|
float3 _NormalStrength_e181a1bb2f4e35819e0f35e77346e12e_Out_2_Vector3;
|
|
Unity_NormalStrength_float((_SampleTexture2D_63aaad04c65f698e8f640de826888075_RGBA_0_Vector4.xyz), _Property_6c35e329e57d0e89950e24817068dbb1_Out_0_Float, _NormalStrength_e181a1bb2f4e35819e0f35e77346e12e_Out_2_Vector3);
|
|
float3 _NormalBlend_ead295b946c6058190c298c03bf64d0b_Out_2_Vector3;
|
|
Unity_NormalBlend_float(_NormalStrength_260139b4d5077d8b9d42de780d173b6c_Out_2_Vector3, _NormalStrength_e181a1bb2f4e35819e0f35e77346e12e_Out_2_Vector3, _NormalBlend_ead295b946c6058190c298c03bf64d0b_Out_2_Vector3);
|
|
float3 _NormalBlend_4242e1b4a785378aa59dd49e9d993ffc_Out_2_Vector3;
|
|
Unity_NormalBlend_float(_Vector3_6999cbd6a5aa908cb7c059b5f2f5b330_Out_0_Vector3, _NormalBlend_ead295b946c6058190c298c03bf64d0b_Out_2_Vector3, _NormalBlend_4242e1b4a785378aa59dd49e9d993ffc_Out_2_Vector3);
|
|
float _Property_3d4ab6ad1f1f138a96f0463f7be8b6ce_Out_0_Float = _CovershapeNormalScale;
|
|
float3 _NormalStrength_401cd5af500bd68dbc9bca19d548d0db_Out_2_Vector3;
|
|
Unity_NormalStrength_float((_SampleTexture2D_63aaad04c65f698e8f640de826888075_RGBA_0_Vector4.xyz), _Property_3d4ab6ad1f1f138a96f0463f7be8b6ce_Out_0_Float, _NormalStrength_401cd5af500bd68dbc9bca19d548d0db_Out_2_Vector3);
|
|
UnityTexture2D _Property_779695727390348d8b8a7f7ae2245af0_Out_0_Texture2D = UnityBuildTexture2DStructNoScale(_CoverNormalMap);
|
|
Bindings_TriplanarNMn_059da9746584140498cd018db3c76047_float _TriplanarNMn_ba7e211dd8095589a2939b5b239ca8e0;
|
|
_TriplanarNMn_ba7e211dd8095589a2939b5b239ca8e0.WorldSpaceNormal = IN.WorldSpaceNormal;
|
|
_TriplanarNMn_ba7e211dd8095589a2939b5b239ca8e0.WorldSpaceTangent = IN.WorldSpaceTangent;
|
|
_TriplanarNMn_ba7e211dd8095589a2939b5b239ca8e0.WorldSpaceBiTangent = IN.WorldSpaceBiTangent;
|
|
_TriplanarNMn_ba7e211dd8095589a2939b5b239ca8e0.AbsoluteWorldSpacePosition = IN.AbsoluteWorldSpacePosition;
|
|
float4 _TriplanarNMn_ba7e211dd8095589a2939b5b239ca8e0_XYZ_1_Vector4;
|
|
float4 _TriplanarNMn_ba7e211dd8095589a2939b5b239ca8e0_XZ_2_Vector4;
|
|
float4 _TriplanarNMn_ba7e211dd8095589a2939b5b239ca8e0_YZ_3_Vector4;
|
|
float4 _TriplanarNMn_ba7e211dd8095589a2939b5b239ca8e0_XY_4_Vector4;
|
|
SG_TriplanarNMn_059da9746584140498cd018db3c76047_float(_Property_779695727390348d8b8a7f7ae2245af0_Out_0_Texture2D, (_Divide_1fe314f1ca9dd78fbf366bbeb40e4ccf_Out_2_Vector4).x, _Property_ee792eccbb538a878b19be5db264531e_Out_0_Float, UnityBuildSamplerStateStruct(SamplerState_Linear_Repeat_Aniso8), _TriplanarNMn_ba7e211dd8095589a2939b5b239ca8e0, _TriplanarNMn_ba7e211dd8095589a2939b5b239ca8e0_XYZ_1_Vector4, _TriplanarNMn_ba7e211dd8095589a2939b5b239ca8e0_XZ_2_Vector4, _TriplanarNMn_ba7e211dd8095589a2939b5b239ca8e0_YZ_3_Vector4, _TriplanarNMn_ba7e211dd8095589a2939b5b239ca8e0_XY_4_Vector4);
|
|
float _Property_5aba050988182f8aad3ec6b2c7e57899_Out_0_Float = _CoverNormalBlendHardness;
|
|
float3 _NormalStrength_dac4b0abfa8a1f82b7103b18f6e6e1b7_Out_2_Vector3;
|
|
Unity_NormalStrength_float((_TriplanarNMn_ba7e211dd8095589a2939b5b239ca8e0_XYZ_1_Vector4.xyz), _Property_5aba050988182f8aad3ec6b2c7e57899_Out_0_Float, _NormalStrength_dac4b0abfa8a1f82b7103b18f6e6e1b7_Out_2_Vector3);
|
|
float3 _NormalBlend_4058aded292b7389ade16c695a6cae6c_Out_2_Vector3;
|
|
Unity_NormalBlend_float(_NormalStrength_401cd5af500bd68dbc9bca19d548d0db_Out_2_Vector3, _NormalStrength_dac4b0abfa8a1f82b7103b18f6e6e1b7_Out_2_Vector3, _NormalBlend_4058aded292b7389ade16c695a6cae6c_Out_2_Vector3);
|
|
float3 _Multiply_0e22f9c6ff55a188b2533f1889a53038_Out_2_Vector3;
|
|
Unity_Multiply_float3_float3(_Property_9180f8dd535ba18499edac37aef4d231_Out_0_Vector3, IN.WorldSpaceNormal, _Multiply_0e22f9c6ff55a188b2533f1889a53038_Out_2_Vector3);
|
|
float _Split_89708601b575b58c852cd55e4fb248d1_R_1_Float = _Multiply_0e22f9c6ff55a188b2533f1889a53038_Out_2_Vector3[0];
|
|
float _Split_89708601b575b58c852cd55e4fb248d1_G_2_Float = _Multiply_0e22f9c6ff55a188b2533f1889a53038_Out_2_Vector3[1];
|
|
float _Split_89708601b575b58c852cd55e4fb248d1_B_3_Float = _Multiply_0e22f9c6ff55a188b2533f1889a53038_Out_2_Vector3[2];
|
|
float _Split_89708601b575b58c852cd55e4fb248d1_A_4_Float = 0;
|
|
float _Add_bfe29b97a9ce3b80aa4cd689be8c4a97_Out_2_Float;
|
|
Unity_Add_float(_Split_89708601b575b58c852cd55e4fb248d1_R_1_Float, _Split_89708601b575b58c852cd55e4fb248d1_G_2_Float, _Add_bfe29b97a9ce3b80aa4cd689be8c4a97_Out_2_Float);
|
|
float _Add_f3152b42a227088aa1439fc1fe8451cc_Out_2_Float;
|
|
Unity_Add_float(_Add_bfe29b97a9ce3b80aa4cd689be8c4a97_Out_2_Float, _Split_89708601b575b58c852cd55e4fb248d1_B_3_Float, _Add_f3152b42a227088aa1439fc1fe8451cc_Out_2_Float);
|
|
float _Property_deabceefa3e3438a8ad71fa67fc5b070_Out_0_Float = _Cover_Amount;
|
|
float _Property_2fba2d762d74b8828ff566c10bc48e86_Out_0_Float = _Cover_Amount_Grow_Speed;
|
|
float _Subtract_1f990262a41ce88f96a47df66dcb4971_Out_2_Float;
|
|
Unity_Subtract_float(float(4), _Property_2fba2d762d74b8828ff566c10bc48e86_Out_0_Float, _Subtract_1f990262a41ce88f96a47df66dcb4971_Out_2_Float);
|
|
float _Divide_a89e05be4802ac80886ad6bdeadc4949_Out_2_Float;
|
|
Unity_Divide_float(_Property_deabceefa3e3438a8ad71fa67fc5b070_Out_0_Float, _Subtract_1f990262a41ce88f96a47df66dcb4971_Out_2_Float, _Divide_a89e05be4802ac80886ad6bdeadc4949_Out_2_Float);
|
|
float _Absolute_2b58f48ab94a3087a726a2b03c51e2c6_Out_1_Float;
|
|
Unity_Absolute_float(_Divide_a89e05be4802ac80886ad6bdeadc4949_Out_2_Float, _Absolute_2b58f48ab94a3087a726a2b03c51e2c6_Out_1_Float);
|
|
float _Power_6695d49b8b82468ea686b66e6749260b_Out_2_Float;
|
|
Unity_Power_float(_Absolute_2b58f48ab94a3087a726a2b03c51e2c6_Out_1_Float, _Subtract_1f990262a41ce88f96a47df66dcb4971_Out_2_Float, _Power_6695d49b8b82468ea686b66e6749260b_Out_2_Float);
|
|
float _Clamp_94f0310fee13798bad4e26e2381a94d4_Out_3_Float;
|
|
Unity_Clamp_float(_Power_6695d49b8b82468ea686b66e6749260b_Out_2_Float, float(0), float(2), _Clamp_94f0310fee13798bad4e26e2381a94d4_Out_3_Float);
|
|
float _Multiply_999692515a117385ade114d924fa589a_Out_2_Float;
|
|
Unity_Multiply_float_float(_Add_f3152b42a227088aa1439fc1fe8451cc_Out_2_Float, _Clamp_94f0310fee13798bad4e26e2381a94d4_Out_3_Float, _Multiply_999692515a117385ade114d924fa589a_Out_2_Float);
|
|
float _Saturate_f811eeeeb3229d83917aa8be2c36831e_Out_1_Float;
|
|
Unity_Saturate_float(_Multiply_999692515a117385ade114d924fa589a_Out_2_Float, _Saturate_f811eeeeb3229d83917aa8be2c36831e_Out_1_Float);
|
|
float _Clamp_4c470807610adb8c8488f125c0af7bb5_Out_3_Float;
|
|
Unity_Clamp_float(_Add_f3152b42a227088aa1439fc1fe8451cc_Out_2_Float, float(0), float(0.9999), _Clamp_4c470807610adb8c8488f125c0af7bb5_Out_3_Float);
|
|
float _Property_765e3d021aec6d8f9f8b3174d5a06980_Out_0_Float = _Cover_Max_Angle;
|
|
float _Divide_9d9fc267a9ebcf84b378fdd4c66ff34d_Out_2_Float;
|
|
Unity_Divide_float(_Property_765e3d021aec6d8f9f8b3174d5a06980_Out_0_Float, float(45), _Divide_9d9fc267a9ebcf84b378fdd4c66ff34d_Out_2_Float);
|
|
float _OneMinus_f074fba0be46e688aa75f5377832251a_Out_1_Float;
|
|
Unity_OneMinus_float(_Divide_9d9fc267a9ebcf84b378fdd4c66ff34d_Out_2_Float, _OneMinus_f074fba0be46e688aa75f5377832251a_Out_1_Float);
|
|
float _Subtract_0b0cd6145e351c87a68366348828154d_Out_2_Float;
|
|
Unity_Subtract_float(_Clamp_4c470807610adb8c8488f125c0af7bb5_Out_3_Float, _OneMinus_f074fba0be46e688aa75f5377832251a_Out_1_Float, _Subtract_0b0cd6145e351c87a68366348828154d_Out_2_Float);
|
|
float _Clamp_30607c0c4e04e5879d4061a1f7688421_Out_3_Float;
|
|
Unity_Clamp_float(_Subtract_0b0cd6145e351c87a68366348828154d_Out_2_Float, float(0), float(2), _Clamp_30607c0c4e04e5879d4061a1f7688421_Out_3_Float);
|
|
float _Divide_cfe09f3bd2005485a3c2229367309962_Out_2_Float;
|
|
Unity_Divide_float(float(1), _Divide_9d9fc267a9ebcf84b378fdd4c66ff34d_Out_2_Float, _Divide_cfe09f3bd2005485a3c2229367309962_Out_2_Float);
|
|
float _Multiply_022be2eb9027988b9d5d4c1392749347_Out_2_Float;
|
|
Unity_Multiply_float_float(_Clamp_30607c0c4e04e5879d4061a1f7688421_Out_3_Float, _Divide_cfe09f3bd2005485a3c2229367309962_Out_2_Float, _Multiply_022be2eb9027988b9d5d4c1392749347_Out_2_Float);
|
|
float _Absolute_2fed84623df90f8ba200de68955721fd_Out_1_Float;
|
|
Unity_Absolute_float(_Multiply_022be2eb9027988b9d5d4c1392749347_Out_2_Float, _Absolute_2fed84623df90f8ba200de68955721fd_Out_1_Float);
|
|
float _Property_b79c921e30793a8e84330b3341539232_Out_0_Float = _CoverHardness;
|
|
float _Power_b9ddee06dfd0b880880990743bc10612_Out_2_Float;
|
|
Unity_Power_float(_Absolute_2fed84623df90f8ba200de68955721fd_Out_1_Float, _Property_b79c921e30793a8e84330b3341539232_Out_0_Float, _Power_b9ddee06dfd0b880880990743bc10612_Out_2_Float);
|
|
float _Property_c82936191f294c89b76f2d1809168f87_Out_0_Float = _Cover_Min_Height;
|
|
float _OneMinus_f0918ccb4f747b8e83e39d82dc3b5ca9_Out_1_Float;
|
|
Unity_OneMinus_float(_Property_c82936191f294c89b76f2d1809168f87_Out_0_Float, _OneMinus_f0918ccb4f747b8e83e39d82dc3b5ca9_Out_1_Float);
|
|
float _Split_0e80ce6f80cff18f87a043d1e3eecd08_R_1_Float = IN.AbsoluteWorldSpacePosition[0];
|
|
float _Split_0e80ce6f80cff18f87a043d1e3eecd08_G_2_Float = IN.AbsoluteWorldSpacePosition[1];
|
|
float _Split_0e80ce6f80cff18f87a043d1e3eecd08_B_3_Float = IN.AbsoluteWorldSpacePosition[2];
|
|
float _Split_0e80ce6f80cff18f87a043d1e3eecd08_A_4_Float = 0;
|
|
float _Add_60b3bb4cdad6e88b8c097c5b08daa7d0_Out_2_Float;
|
|
Unity_Add_float(_OneMinus_f0918ccb4f747b8e83e39d82dc3b5ca9_Out_1_Float, _Split_0e80ce6f80cff18f87a043d1e3eecd08_G_2_Float, _Add_60b3bb4cdad6e88b8c097c5b08daa7d0_Out_2_Float);
|
|
float _Add_1898d6f46901df809c68b5241b2e9c37_Out_2_Float;
|
|
Unity_Add_float(_Add_60b3bb4cdad6e88b8c097c5b08daa7d0_Out_2_Float, float(1), _Add_1898d6f46901df809c68b5241b2e9c37_Out_2_Float);
|
|
float _Clamp_25d6140fa3ff3a8f956f99005adace2e_Out_3_Float;
|
|
Unity_Clamp_float(_Add_1898d6f46901df809c68b5241b2e9c37_Out_2_Float, float(0), float(1), _Clamp_25d6140fa3ff3a8f956f99005adace2e_Out_3_Float);
|
|
float _Property_6094a52a4f01fd8da5ea847b69b6941c_Out_0_Float = _Cover_Min_Height_Blending;
|
|
float _Add_dc69668fc7f1a586a754713499f71d99_Out_2_Float;
|
|
Unity_Add_float(_Add_60b3bb4cdad6e88b8c097c5b08daa7d0_Out_2_Float, _Property_6094a52a4f01fd8da5ea847b69b6941c_Out_0_Float, _Add_dc69668fc7f1a586a754713499f71d99_Out_2_Float);
|
|
float _Divide_63e32406c8773d83bbf2e244faf8328f_Out_2_Float;
|
|
Unity_Divide_float(_Add_dc69668fc7f1a586a754713499f71d99_Out_2_Float, _Add_60b3bb4cdad6e88b8c097c5b08daa7d0_Out_2_Float, _Divide_63e32406c8773d83bbf2e244faf8328f_Out_2_Float);
|
|
float _OneMinus_ec22d21ddfa84288b6f750e9fdb107b9_Out_1_Float;
|
|
Unity_OneMinus_float(_Divide_63e32406c8773d83bbf2e244faf8328f_Out_2_Float, _OneMinus_ec22d21ddfa84288b6f750e9fdb107b9_Out_1_Float);
|
|
float _Add_a1206af8cbfbbe8081046db1247aba04_Out_2_Float;
|
|
Unity_Add_float(_OneMinus_ec22d21ddfa84288b6f750e9fdb107b9_Out_1_Float, float(-0.5), _Add_a1206af8cbfbbe8081046db1247aba04_Out_2_Float);
|
|
float _Clamp_640b5884b29f188987c157ad5e6e6959_Out_3_Float;
|
|
Unity_Clamp_float(_Add_a1206af8cbfbbe8081046db1247aba04_Out_2_Float, float(0), float(1), _Clamp_640b5884b29f188987c157ad5e6e6959_Out_3_Float);
|
|
float _Add_cfdb6daf617665838bb05910fa9505df_Out_2_Float;
|
|
Unity_Add_float(_Clamp_25d6140fa3ff3a8f956f99005adace2e_Out_3_Float, _Clamp_640b5884b29f188987c157ad5e6e6959_Out_3_Float, _Add_cfdb6daf617665838bb05910fa9505df_Out_2_Float);
|
|
float _Clamp_552ef7e5cf91408a982297885971db7e_Out_3_Float;
|
|
Unity_Clamp_float(_Add_cfdb6daf617665838bb05910fa9505df_Out_2_Float, float(0), float(1), _Clamp_552ef7e5cf91408a982297885971db7e_Out_3_Float);
|
|
float _Multiply_8f8db9c494f4fd869809fc45531df628_Out_2_Float;
|
|
Unity_Multiply_float_float(_Power_b9ddee06dfd0b880880990743bc10612_Out_2_Float, _Clamp_552ef7e5cf91408a982297885971db7e_Out_3_Float, _Multiply_8f8db9c494f4fd869809fc45531df628_Out_2_Float);
|
|
float _Multiply_60075aa07d29d285b3c1ee531e5b5cb3_Out_2_Float;
|
|
Unity_Multiply_float_float(_Saturate_f811eeeeb3229d83917aa8be2c36831e_Out_1_Float, _Multiply_8f8db9c494f4fd869809fc45531df628_Out_2_Float, _Multiply_60075aa07d29d285b3c1ee531e5b5cb3_Out_2_Float);
|
|
float3 _Lerp_453c8bc667315a8fa37a93affb877753_Out_3_Vector3;
|
|
Unity_Lerp_float3(_NormalBlend_4242e1b4a785378aa59dd49e9d993ffc_Out_2_Vector3, _NormalBlend_4058aded292b7389ade16c695a6cae6c_Out_2_Vector3, (_Multiply_60075aa07d29d285b3c1ee531e5b5cb3_Out_2_Float.xxx), _Lerp_453c8bc667315a8fa37a93affb877753_Out_3_Vector3);
|
|
float3 _Transform_a87113b0be9dfa8eaf6932ed645aa845_Out_1_Vector3;
|
|
{
|
|
float3x3 tangentTransform = float3x3(IN.WorldSpaceTangent, IN.WorldSpaceBiTangent, IN.WorldSpaceNormal);
|
|
_Transform_a87113b0be9dfa8eaf6932ed645aa845_Out_1_Vector3 = TransformTangentToWorldDir(_Lerp_453c8bc667315a8fa37a93affb877753_Out_3_Vector3.xyz, tangentTransform, false).xyz;
|
|
}
|
|
float3 _Multiply_f6e009bd5c0fd18c99ac72f233476fe5_Out_2_Vector3;
|
|
Unity_Multiply_float3_float3(_Property_9180f8dd535ba18499edac37aef4d231_Out_0_Vector3, _Transform_a87113b0be9dfa8eaf6932ed645aa845_Out_1_Vector3, _Multiply_f6e009bd5c0fd18c99ac72f233476fe5_Out_2_Vector3);
|
|
float _Split_96f0a5b75c0e0b889dbbccd04bc2aaaa_R_1_Float = _Multiply_f6e009bd5c0fd18c99ac72f233476fe5_Out_2_Vector3[0];
|
|
float _Split_96f0a5b75c0e0b889dbbccd04bc2aaaa_G_2_Float = _Multiply_f6e009bd5c0fd18c99ac72f233476fe5_Out_2_Vector3[1];
|
|
float _Split_96f0a5b75c0e0b889dbbccd04bc2aaaa_B_3_Float = _Multiply_f6e009bd5c0fd18c99ac72f233476fe5_Out_2_Vector3[2];
|
|
float _Split_96f0a5b75c0e0b889dbbccd04bc2aaaa_A_4_Float = 0;
|
|
float _Add_07028d5174d9f88594da40d46502bc13_Out_2_Float;
|
|
Unity_Add_float(_Split_96f0a5b75c0e0b889dbbccd04bc2aaaa_R_1_Float, _Split_96f0a5b75c0e0b889dbbccd04bc2aaaa_G_2_Float, _Add_07028d5174d9f88594da40d46502bc13_Out_2_Float);
|
|
float _Add_93af6c0f8ee9a3898ca51358a213b69f_Out_2_Float;
|
|
Unity_Add_float(_Add_07028d5174d9f88594da40d46502bc13_Out_2_Float, _Split_96f0a5b75c0e0b889dbbccd04bc2aaaa_B_3_Float, _Add_93af6c0f8ee9a3898ca51358a213b69f_Out_2_Float);
|
|
float _Multiply_77421b936cb9d68299ef6791b83fa867_Out_2_Float;
|
|
Unity_Multiply_float_float(_Add_93af6c0f8ee9a3898ca51358a213b69f_Out_2_Float, _Clamp_94f0310fee13798bad4e26e2381a94d4_Out_3_Float, _Multiply_77421b936cb9d68299ef6791b83fa867_Out_2_Float);
|
|
float _Multiply_ac6769fbe7188685a7537e5ac2c6bfa9_Out_2_Float;
|
|
Unity_Multiply_float_float(_Clamp_94f0310fee13798bad4e26e2381a94d4_Out_3_Float, _Property_b79c921e30793a8e84330b3341539232_Out_0_Float, _Multiply_ac6769fbe7188685a7537e5ac2c6bfa9_Out_2_Float);
|
|
float _Multiply_37a341e0d9783683aa8d5b7001acced1_Out_2_Float;
|
|
Unity_Multiply_float_float(_Multiply_ac6769fbe7188685a7537e5ac2c6bfa9_Out_2_Float, _Multiply_8f8db9c494f4fd869809fc45531df628_Out_2_Float, _Multiply_37a341e0d9783683aa8d5b7001acced1_Out_2_Float);
|
|
float _Multiply_02fa8aa66970b281b4a325dc68f407b9_Out_2_Float;
|
|
Unity_Multiply_float_float(_Multiply_77421b936cb9d68299ef6791b83fa867_Out_2_Float, _Multiply_37a341e0d9783683aa8d5b7001acced1_Out_2_Float, _Multiply_02fa8aa66970b281b4a325dc68f407b9_Out_2_Float);
|
|
UnityTexture2D _Property_fd2df7ee33755280948b4c47585d4323_Out_0_Texture2D = UnityBuildTexture2DStructNoScale(_CoverMaskMap);
|
|
Bindings_TriplanarNM_bc609ed95f52591469ab35dbfe0efcea_float _TriplanarNM_e307cfdc6531d2838aa3dfa51fc3913f;
|
|
_TriplanarNM_e307cfdc6531d2838aa3dfa51fc3913f.WorldSpaceNormal = IN.WorldSpaceNormal;
|
|
_TriplanarNM_e307cfdc6531d2838aa3dfa51fc3913f.AbsoluteWorldSpacePosition = IN.AbsoluteWorldSpacePosition;
|
|
float4 _TriplanarNM_e307cfdc6531d2838aa3dfa51fc3913f_XYZ_1_Vector4;
|
|
float4 _TriplanarNM_e307cfdc6531d2838aa3dfa51fc3913f_XZ_2_Vector4;
|
|
float4 _TriplanarNM_e307cfdc6531d2838aa3dfa51fc3913f_YZ_3_Vector4;
|
|
float4 _TriplanarNM_e307cfdc6531d2838aa3dfa51fc3913f_XY_4_Vector4;
|
|
SG_TriplanarNM_bc609ed95f52591469ab35dbfe0efcea_float(_Property_fd2df7ee33755280948b4c47585d4323_Out_0_Texture2D, (_Divide_1fe314f1ca9dd78fbf366bbeb40e4ccf_Out_2_Vector4).x, _Property_ee792eccbb538a878b19be5db264531e_Out_0_Float, UnityBuildSamplerStateStruct(SamplerState_Linear_Repeat_Aniso8), _TriplanarNM_e307cfdc6531d2838aa3dfa51fc3913f, _TriplanarNM_e307cfdc6531d2838aa3dfa51fc3913f_XYZ_1_Vector4, _TriplanarNM_e307cfdc6531d2838aa3dfa51fc3913f_XZ_2_Vector4, _TriplanarNM_e307cfdc6531d2838aa3dfa51fc3913f_YZ_3_Vector4, _TriplanarNM_e307cfdc6531d2838aa3dfa51fc3913f_XY_4_Vector4);
|
|
float _Split_fe834aed1172f284a73d2d6810bdb696_R_1_Float = _TriplanarNM_e307cfdc6531d2838aa3dfa51fc3913f_XYZ_1_Vector4[0];
|
|
float _Split_fe834aed1172f284a73d2d6810bdb696_G_2_Float = _TriplanarNM_e307cfdc6531d2838aa3dfa51fc3913f_XYZ_1_Vector4[1];
|
|
float _Split_fe834aed1172f284a73d2d6810bdb696_B_3_Float = _TriplanarNM_e307cfdc6531d2838aa3dfa51fc3913f_XYZ_1_Vector4[2];
|
|
float _Split_fe834aed1172f284a73d2d6810bdb696_A_4_Float = _TriplanarNM_e307cfdc6531d2838aa3dfa51fc3913f_XYZ_1_Vector4[3];
|
|
float _Property_b5f7a30c2ea202858ea263fd2a5a46c6_Out_0_Float = _CoverHeightMapMin;
|
|
float _Property_f86678f1d28c0483ba1ddccf49ee52f7_Out_0_Float = _CoverHeightMapMax;
|
|
float2 _Vector2_b5c01a0d88900d87a8a819b340151fb6_Out_0_Vector2 = float2(_Property_b5f7a30c2ea202858ea263fd2a5a46c6_Out_0_Float, _Property_f86678f1d28c0483ba1ddccf49ee52f7_Out_0_Float);
|
|
float _Property_82b4f7f3bf3b4382bd69876479a9e350_Out_0_Float = _CoverHeightMapOffset;
|
|
float2 _Add_6020f54fd1e6798e8e76bfdcad62759a_Out_2_Vector2;
|
|
Unity_Add_float2(_Vector2_b5c01a0d88900d87a8a819b340151fb6_Out_0_Vector2, (_Property_82b4f7f3bf3b4382bd69876479a9e350_Out_0_Float.xx), _Add_6020f54fd1e6798e8e76bfdcad62759a_Out_2_Vector2);
|
|
float _Remap_65ceff40294d1e8aae6051445b9fdbc8_Out_3_Float;
|
|
Unity_Remap_float(_Split_fe834aed1172f284a73d2d6810bdb696_B_3_Float, float2 (0, 1), _Add_6020f54fd1e6798e8e76bfdcad62759a_Out_2_Vector2, _Remap_65ceff40294d1e8aae6051445b9fdbc8_Out_3_Float);
|
|
float _Multiply_bb0edd30580dba8b89213d9c5b1ef857_Out_2_Float;
|
|
Unity_Multiply_float_float(_Multiply_02fa8aa66970b281b4a325dc68f407b9_Out_2_Float, _Remap_65ceff40294d1e8aae6051445b9fdbc8_Out_3_Float, _Multiply_bb0edd30580dba8b89213d9c5b1ef857_Out_2_Float);
|
|
float _Multiply_484dd7b77d58aa88bf99c82cfe77c774_Out_2_Float;
|
|
Unity_Multiply_float_float(_Split_2ada595651635e8d97bf4b82f717fcc6_G_2_Float, _Multiply_bb0edd30580dba8b89213d9c5b1ef857_Out_2_Float, _Multiply_484dd7b77d58aa88bf99c82cfe77c774_Out_2_Float);
|
|
float _Saturate_d39fa9bab8cc8a8fa35db28d4dbc74ab_Out_1_Float;
|
|
Unity_Saturate_float(_Multiply_484dd7b77d58aa88bf99c82cfe77c774_Out_2_Float, _Saturate_d39fa9bab8cc8a8fa35db28d4dbc74ab_Out_1_Float);
|
|
float _Multiply_6957741a4923cc8db84ac72df2e194a8_Out_2_Float;
|
|
Unity_Multiply_float_float(_Clamp_07a501c22c6e188199bed73412ac8926_Out_3_Float, _Saturate_d39fa9bab8cc8a8fa35db28d4dbc74ab_Out_1_Float, _Multiply_6957741a4923cc8db84ac72df2e194a8_Out_2_Float);
|
|
float _Branch_3ccf365d359214809d30b6430d863e3f_Out_3_Float;
|
|
Unity_Branch_float(_Property_cb0b6597aee47880b32e852aaa0e4a71_Out_0_Boolean, _Multiply_6957741a4923cc8db84ac72df2e194a8_Out_2_Float, _Clamp_07a501c22c6e188199bed73412ac8926_Out_3_Float, _Branch_3ccf365d359214809d30b6430d863e3f_Out_3_Float);
|
|
float3 _Lerp_ee1b6587de2afe82942e8476d303d598_Out_3_Vector3;
|
|
Unity_Lerp_float3(_BlendOverlayBaseColor_369c0b6a02e62b809dc5c6ac1efddde2_OutVector4_1_Vector3, _BlendOverlayBaseColor_ec1f397271cc818abdb95188914e6b4d_OutVector4_1_Vector3, (_Branch_3ccf365d359214809d30b6430d863e3f_Out_3_Float.xxx), _Lerp_ee1b6587de2afe82942e8476d303d598_Out_3_Vector3);
|
|
float4 _Property_c500db71e51fef8daff29f346c122e57_Out_0_Vector4 = _WetColor;
|
|
float3 _Multiply_89461014b078f787a0724725c54fb934_Out_2_Vector3;
|
|
Unity_Multiply_float3_float3((_Property_c500db71e51fef8daff29f346c122e57_Out_0_Vector4.xyz), _Lerp_ee1b6587de2afe82942e8476d303d598_Out_3_Vector3, _Multiply_89461014b078f787a0724725c54fb934_Out_2_Vector3);
|
|
float _OneMinus_e16dfb812ec64b8891c541171687142f_Out_1_Float;
|
|
Unity_OneMinus_float(_Split_2ada595651635e8d97bf4b82f717fcc6_R_1_Float, _OneMinus_e16dfb812ec64b8891c541171687142f_Out_1_Float);
|
|
float3 _Lerp_43bc7a9493df5a829abf080ee4ad3298_Out_3_Vector3;
|
|
Unity_Lerp_float3(_Lerp_ee1b6587de2afe82942e8476d303d598_Out_3_Vector3, _Multiply_89461014b078f787a0724725c54fb934_Out_2_Vector3, (_OneMinus_e16dfb812ec64b8891c541171687142f_Out_1_Float.xxx), _Lerp_43bc7a9493df5a829abf080ee4ad3298_Out_3_Vector3);
|
|
UnityTexture2D _Property_8e909eb873a4cd8e9af98a90a84fdde8_Out_0_Texture2D = UnityBuildTexture2DStructNoScale(_BaseMaskMap);
|
|
Bindings_TriplanarNM_bc609ed95f52591469ab35dbfe0efcea_float _TriplanarNM_52e6c67b7de4708f80a463a880607c97;
|
|
_TriplanarNM_52e6c67b7de4708f80a463a880607c97.WorldSpaceNormal = IN.WorldSpaceNormal;
|
|
_TriplanarNM_52e6c67b7de4708f80a463a880607c97.AbsoluteWorldSpacePosition = IN.AbsoluteWorldSpacePosition;
|
|
float4 _TriplanarNM_52e6c67b7de4708f80a463a880607c97_XYZ_1_Vector4;
|
|
float4 _TriplanarNM_52e6c67b7de4708f80a463a880607c97_XZ_2_Vector4;
|
|
float4 _TriplanarNM_52e6c67b7de4708f80a463a880607c97_YZ_3_Vector4;
|
|
float4 _TriplanarNM_52e6c67b7de4708f80a463a880607c97_XY_4_Vector4;
|
|
SG_TriplanarNM_bc609ed95f52591469ab35dbfe0efcea_float(_Property_8e909eb873a4cd8e9af98a90a84fdde8_Out_0_Texture2D, (_Divide_6a90cebe78e620828de587523daaa7e6_Out_2_Vector4).x, _Property_3539de8c698c2981bb3c088d4ec52201_Out_0_Float, UnityBuildSamplerStateStruct(SamplerState_Linear_Repeat_Aniso8), _TriplanarNM_52e6c67b7de4708f80a463a880607c97, _TriplanarNM_52e6c67b7de4708f80a463a880607c97_XYZ_1_Vector4, _TriplanarNM_52e6c67b7de4708f80a463a880607c97_XZ_2_Vector4, _TriplanarNM_52e6c67b7de4708f80a463a880607c97_YZ_3_Vector4, _TriplanarNM_52e6c67b7de4708f80a463a880607c97_XY_4_Vector4);
|
|
float _Split_79d9d761d63eaa8c97fb3cb7fae0c380_R_1_Float = _TriplanarNM_52e6c67b7de4708f80a463a880607c97_XYZ_1_Vector4[0];
|
|
float _Split_79d9d761d63eaa8c97fb3cb7fae0c380_G_2_Float = _TriplanarNM_52e6c67b7de4708f80a463a880607c97_XYZ_1_Vector4[1];
|
|
float _Split_79d9d761d63eaa8c97fb3cb7fae0c380_B_3_Float = _TriplanarNM_52e6c67b7de4708f80a463a880607c97_XYZ_1_Vector4[2];
|
|
float _Split_79d9d761d63eaa8c97fb3cb7fae0c380_A_4_Float = _TriplanarNM_52e6c67b7de4708f80a463a880607c97_XYZ_1_Vector4[3];
|
|
float _Property_b97916566d1fc587b95e8ec7fe8bd775_Out_0_Float = _BaseMetallic;
|
|
float _Multiply_d0c8d83444dbe38588583551936c7394_Out_2_Float;
|
|
Unity_Multiply_float_float(_Split_79d9d761d63eaa8c97fb3cb7fae0c380_R_1_Float, _Property_b97916566d1fc587b95e8ec7fe8bd775_Out_0_Float, _Multiply_d0c8d83444dbe38588583551936c7394_Out_2_Float);
|
|
float _Property_b187bbc548f3378caa8c964ca81707ca_Out_0_Float = _BaseAORemapMin;
|
|
float _Property_f06b327a4a8a7881a968eb399edf1d5c_Out_0_Float = _BaseAORemapMax;
|
|
float2 _Vector2_e267d722f88ada8da2d7edf8f7c0261d_Out_0_Vector2 = float2(_Property_b187bbc548f3378caa8c964ca81707ca_Out_0_Float, _Property_f06b327a4a8a7881a968eb399edf1d5c_Out_0_Float);
|
|
float _Remap_ad3c26564c54aa8cbb2f81aa114b3b78_Out_3_Float;
|
|
Unity_Remap_float(_Split_79d9d761d63eaa8c97fb3cb7fae0c380_G_2_Float, float2 (0, 1), _Vector2_e267d722f88ada8da2d7edf8f7c0261d_Out_0_Vector2, _Remap_ad3c26564c54aa8cbb2f81aa114b3b78_Out_3_Float);
|
|
float _Property_9a46e81c228dd0858cfdfc248fcb5efd_Out_0_Float = _BaseSmoothnessRemapMin;
|
|
float _Property_4bb3b70a3720ae8ea49e0f195b665d1f_Out_0_Float = _BaseSmoothnessRemapMax;
|
|
float2 _Vector2_6cef82af5d99208da4f2447a8ae60b4b_Out_0_Vector2 = float2(_Property_9a46e81c228dd0858cfdfc248fcb5efd_Out_0_Float, _Property_4bb3b70a3720ae8ea49e0f195b665d1f_Out_0_Float);
|
|
float _Remap_e30adbbf5d116285964ef079df15b895_Out_3_Float;
|
|
Unity_Remap_float(_Split_79d9d761d63eaa8c97fb3cb7fae0c380_A_4_Float, float2 (0, 1), _Vector2_6cef82af5d99208da4f2447a8ae60b4b_Out_0_Vector2, _Remap_e30adbbf5d116285964ef079df15b895_Out_3_Float);
|
|
float _Multiply_794172f65d2acd8981bc0e2ecc71376e_Out_2_Float;
|
|
Unity_Multiply_float_float(_SampleTexture2D_4bd08411faa60c828847f2247f06a809_B_6_Float, 2, _Multiply_794172f65d2acd8981bc0e2ecc71376e_Out_2_Float);
|
|
float _Add_dedefe53d91ea08c81d7a6d9071b0263_Out_2_Float;
|
|
Unity_Add_float(_Multiply_794172f65d2acd8981bc0e2ecc71376e_Out_2_Float, float(-1), _Add_dedefe53d91ea08c81d7a6d9071b0263_Out_2_Float);
|
|
float _Property_039bed9aac95ec8fa510fea3c4904280_Out_0_Float = _DetailSmoothnessScale;
|
|
float _Multiply_eb0a55c9be8cee86b9847c24f0e5be60_Out_2_Float;
|
|
Unity_Multiply_float_float(_Add_dedefe53d91ea08c81d7a6d9071b0263_Out_2_Float, _Property_039bed9aac95ec8fa510fea3c4904280_Out_0_Float, _Multiply_eb0a55c9be8cee86b9847c24f0e5be60_Out_2_Float);
|
|
float _Saturate_ca849f42c1cc238cb8fb1eb04fbfb9dd_Out_1_Float;
|
|
Unity_Saturate_float(_Multiply_eb0a55c9be8cee86b9847c24f0e5be60_Out_2_Float, _Saturate_ca849f42c1cc238cb8fb1eb04fbfb9dd_Out_1_Float);
|
|
float _Absolute_bc7994d4f833e382b37b5718ee583259_Out_1_Float;
|
|
Unity_Absolute_float(_Saturate_ca849f42c1cc238cb8fb1eb04fbfb9dd_Out_1_Float, _Absolute_bc7994d4f833e382b37b5718ee583259_Out_1_Float);
|
|
Bindings_BlendOverlayDetailSmoothness_06e12138dc89c0040b45a57abe520a1a_float _BlendOverlayDetailSmoothness_5a03404db5a34885a089f1aee363667f;
|
|
float _BlendOverlayDetailSmoothness_5a03404db5a34885a089f1aee363667f_SmoothnessOverlay_1_Float;
|
|
SG_BlendOverlayDetailSmoothness_06e12138dc89c0040b45a57abe520a1a_float(_Remap_e30adbbf5d116285964ef079df15b895_Out_3_Float, _Add_dedefe53d91ea08c81d7a6d9071b0263_Out_2_Float, _Absolute_bc7994d4f833e382b37b5718ee583259_Out_1_Float, _BlendOverlayDetailSmoothness_5a03404db5a34885a089f1aee363667f, _BlendOverlayDetailSmoothness_5a03404db5a34885a089f1aee363667f_SmoothnessOverlay_1_Float);
|
|
float _Saturate_3d6c6d852202408cb9b11aac8a566c89_Out_1_Float;
|
|
Unity_Saturate_float(_BlendOverlayDetailSmoothness_5a03404db5a34885a089f1aee363667f_SmoothnessOverlay_1_Float, _Saturate_3d6c6d852202408cb9b11aac8a566c89_Out_1_Float);
|
|
float3 _Vector3_8ed406a0096de4818282676bf24b1a85_Out_0_Vector3 = float3(_Multiply_d0c8d83444dbe38588583551936c7394_Out_2_Float, _Remap_ad3c26564c54aa8cbb2f81aa114b3b78_Out_3_Float, _Saturate_3d6c6d852202408cb9b11aac8a566c89_Out_1_Float);
|
|
float _Split_2ec5937af5023a8295e3858d32b193d5_R_1_Float = _Vector3_8ed406a0096de4818282676bf24b1a85_Out_0_Vector3[0];
|
|
float _Split_2ec5937af5023a8295e3858d32b193d5_G_2_Float = _Vector3_8ed406a0096de4818282676bf24b1a85_Out_0_Vector3[1];
|
|
float _Split_2ec5937af5023a8295e3858d32b193d5_B_3_Float = _Vector3_8ed406a0096de4818282676bf24b1a85_Out_0_Vector3[2];
|
|
float _Split_2ec5937af5023a8295e3858d32b193d5_A_4_Float = 0;
|
|
UnityTexture2D _Property_0f50abb140882d848d9fc7be8e3468dc_Out_0_Texture2D = UnityBuildTexture2DStructNoScale(_ShapeAO);
|
|
float4 _SampleTexture2D_33392602b94694898ec8227a89f13cc9_RGBA_0_Vector4 = SAMPLE_TEXTURE2D(_Property_0f50abb140882d848d9fc7be8e3468dc_Out_0_Texture2D.tex, _Property_0f50abb140882d848d9fc7be8e3468dc_Out_0_Texture2D.samplerstate, _Property_0f50abb140882d848d9fc7be8e3468dc_Out_0_Texture2D.GetTransformedUV(IN.uv0.xy) );
|
|
float _SampleTexture2D_33392602b94694898ec8227a89f13cc9_R_4_Float = _SampleTexture2D_33392602b94694898ec8227a89f13cc9_RGBA_0_Vector4.r;
|
|
float _SampleTexture2D_33392602b94694898ec8227a89f13cc9_G_5_Float = _SampleTexture2D_33392602b94694898ec8227a89f13cc9_RGBA_0_Vector4.g;
|
|
float _SampleTexture2D_33392602b94694898ec8227a89f13cc9_B_6_Float = _SampleTexture2D_33392602b94694898ec8227a89f13cc9_RGBA_0_Vector4.b;
|
|
float _SampleTexture2D_33392602b94694898ec8227a89f13cc9_A_7_Float = _SampleTexture2D_33392602b94694898ec8227a89f13cc9_RGBA_0_Vector4.a;
|
|
float _Property_a51c4b6d05e6718d919aadcf26153350_Out_0_Float = _ShapeAORemapMin;
|
|
float _Property_973fbc42b7a69088b9fc2c502945f369_Out_0_Float = _ShapeAORemapMax;
|
|
float2 _Vector2_a73753c5a8c4fa828d2eb25d4fb8b399_Out_0_Vector2 = float2(_Property_a51c4b6d05e6718d919aadcf26153350_Out_0_Float, _Property_973fbc42b7a69088b9fc2c502945f369_Out_0_Float);
|
|
float _Remap_270e7e207f303487bc04348b1b54db69_Out_3_Float;
|
|
Unity_Remap_float(_SampleTexture2D_33392602b94694898ec8227a89f13cc9_G_5_Float, float2 (0, 1), _Vector2_a73753c5a8c4fa828d2eb25d4fb8b399_Out_0_Vector2, _Remap_270e7e207f303487bc04348b1b54db69_Out_3_Float);
|
|
float _Minimum_307d1a8c4f5c6a87a1bbc658a5811679_Out_2_Float;
|
|
Unity_Minimum_float(_Split_2ec5937af5023a8295e3858d32b193d5_G_2_Float, _Remap_270e7e207f303487bc04348b1b54db69_Out_3_Float, _Minimum_307d1a8c4f5c6a87a1bbc658a5811679_Out_2_Float);
|
|
float3 _Vector3_fac10bf467f5ff82b4f071ba165bf458_Out_0_Vector3 = float3(_Split_2ec5937af5023a8295e3858d32b193d5_R_1_Float, _Minimum_307d1a8c4f5c6a87a1bbc658a5811679_Out_2_Float, _Split_2ec5937af5023a8295e3858d32b193d5_B_3_Float);
|
|
float _Property_fa6937565be49684915e6bb999529949_Out_0_Float = _CoverMetallic;
|
|
float _Multiply_d0ecb787fa289f8f9d3c2988d60f18d3_Out_2_Float;
|
|
Unity_Multiply_float_float(_Split_fe834aed1172f284a73d2d6810bdb696_R_1_Float, _Property_fa6937565be49684915e6bb999529949_Out_0_Float, _Multiply_d0ecb787fa289f8f9d3c2988d60f18d3_Out_2_Float);
|
|
float _Property_8f5ca0ba38d2a4858c1b4e44f6a375b4_Out_0_Float = _CoverAORemapMin;
|
|
float _Property_a15ef0fe46e1d88f9e20df6605bd1499_Out_0_Float = _CoverAORemapMax;
|
|
float2 _Vector2_969d809c2de99f89959cc4526a665db9_Out_0_Vector2 = float2(_Property_8f5ca0ba38d2a4858c1b4e44f6a375b4_Out_0_Float, _Property_a15ef0fe46e1d88f9e20df6605bd1499_Out_0_Float);
|
|
float _Remap_1b6065f44329038594e2d0cf001fa138_Out_3_Float;
|
|
Unity_Remap_float(_Split_fe834aed1172f284a73d2d6810bdb696_G_2_Float, float2 (0, 1), _Vector2_969d809c2de99f89959cc4526a665db9_Out_0_Vector2, _Remap_1b6065f44329038594e2d0cf001fa138_Out_3_Float);
|
|
float _Property_0fde68fd9824db8e9f5b4b0daff90270_Out_0_Float = _CoverSmoothnessRemapMin;
|
|
float _Property_abad1da00caf99869e0c9ca2926c76bd_Out_0_Float = _CoverSmoothnessRemapMax;
|
|
float2 _Vector2_1aa81c2ad7cc268caa834889569ce556_Out_0_Vector2 = float2(_Property_0fde68fd9824db8e9f5b4b0daff90270_Out_0_Float, _Property_abad1da00caf99869e0c9ca2926c76bd_Out_0_Float);
|
|
float _Remap_4948cd1fb38399888e9567ee2abb8acd_Out_3_Float;
|
|
Unity_Remap_float(_Split_fe834aed1172f284a73d2d6810bdb696_A_4_Float, float2 (0, 1), _Vector2_1aa81c2ad7cc268caa834889569ce556_Out_0_Vector2, _Remap_4948cd1fb38399888e9567ee2abb8acd_Out_3_Float);
|
|
float _Multiply_d3e207dba42f1984aacff3c1bf4eef0b_Out_2_Float;
|
|
Unity_Multiply_float_float(_SampleTexture2D_4bd08411faa60c828847f2247f06a809_B_6_Float, 2, _Multiply_d3e207dba42f1984aacff3c1bf4eef0b_Out_2_Float);
|
|
float _Add_0299d632f81fff8f969a0eed5f77397c_Out_2_Float;
|
|
Unity_Add_float(_Multiply_d3e207dba42f1984aacff3c1bf4eef0b_Out_2_Float, float(-1), _Add_0299d632f81fff8f969a0eed5f77397c_Out_2_Float);
|
|
float _Property_a2c7556e96b60b8e90cb5145ca6f9dde_Out_0_Float = _DetailCoverSmoothnessScale;
|
|
float _Multiply_d340fbee0985958dbb66555a73bd733c_Out_2_Float;
|
|
Unity_Multiply_float_float(_Add_0299d632f81fff8f969a0eed5f77397c_Out_2_Float, _Property_a2c7556e96b60b8e90cb5145ca6f9dde_Out_0_Float, _Multiply_d340fbee0985958dbb66555a73bd733c_Out_2_Float);
|
|
float _Saturate_2c0cc920be0ca88e937ec108b38f5fde_Out_1_Float;
|
|
Unity_Saturate_float(_Multiply_d340fbee0985958dbb66555a73bd733c_Out_2_Float, _Saturate_2c0cc920be0ca88e937ec108b38f5fde_Out_1_Float);
|
|
float _Absolute_3f81290e941e378283f7151c4a0731e2_Out_1_Float;
|
|
Unity_Absolute_float(_Saturate_2c0cc920be0ca88e937ec108b38f5fde_Out_1_Float, _Absolute_3f81290e941e378283f7151c4a0731e2_Out_1_Float);
|
|
Bindings_BlendOverlayDetailSmoothness_06e12138dc89c0040b45a57abe520a1a_float _BlendOverlayDetailSmoothness_e7a4fbe98378f084bd09f6e5d90e1cb8;
|
|
float _BlendOverlayDetailSmoothness_e7a4fbe98378f084bd09f6e5d90e1cb8_SmoothnessOverlay_1_Float;
|
|
SG_BlendOverlayDetailSmoothness_06e12138dc89c0040b45a57abe520a1a_float(_Remap_4948cd1fb38399888e9567ee2abb8acd_Out_3_Float, _Add_0299d632f81fff8f969a0eed5f77397c_Out_2_Float, _Absolute_3f81290e941e378283f7151c4a0731e2_Out_1_Float, _BlendOverlayDetailSmoothness_e7a4fbe98378f084bd09f6e5d90e1cb8, _BlendOverlayDetailSmoothness_e7a4fbe98378f084bd09f6e5d90e1cb8_SmoothnessOverlay_1_Float);
|
|
float _Saturate_9091ea9d9924c682ad6b94d3322ee822_Out_1_Float;
|
|
Unity_Saturate_float(_BlendOverlayDetailSmoothness_e7a4fbe98378f084bd09f6e5d90e1cb8_SmoothnessOverlay_1_Float, _Saturate_9091ea9d9924c682ad6b94d3322ee822_Out_1_Float);
|
|
float3 _Vector3_93bafe600474e7819ebc13e534b986bf_Out_0_Vector3 = float3(_Multiply_d0ecb787fa289f8f9d3c2988d60f18d3_Out_2_Float, _Remap_1b6065f44329038594e2d0cf001fa138_Out_3_Float, _Saturate_9091ea9d9924c682ad6b94d3322ee822_Out_1_Float);
|
|
float _Split_6ec9cc5e56f3f68ba37ff91557979c18_R_1_Float = _Vector3_93bafe600474e7819ebc13e534b986bf_Out_0_Vector3[0];
|
|
float _Split_6ec9cc5e56f3f68ba37ff91557979c18_G_2_Float = _Vector3_93bafe600474e7819ebc13e534b986bf_Out_0_Vector3[1];
|
|
float _Split_6ec9cc5e56f3f68ba37ff91557979c18_B_3_Float = _Vector3_93bafe600474e7819ebc13e534b986bf_Out_0_Vector3[2];
|
|
float _Split_6ec9cc5e56f3f68ba37ff91557979c18_A_4_Float = 0;
|
|
float _Property_ca9c61425ece6b8c909c06b1e2738f1a_Out_0_Float = _CoverShapeAORemapMin;
|
|
float _Property_b9be92f1612c908d80643f0e96015b33_Out_0_Float = _CoverShapeAORemapMax;
|
|
float2 _Vector2_9b862c4e147d1082afad3606339d2130_Out_0_Vector2 = float2(_Property_ca9c61425ece6b8c909c06b1e2738f1a_Out_0_Float, _Property_b9be92f1612c908d80643f0e96015b33_Out_0_Float);
|
|
float _Remap_c1f0022add809b83bad7b493177bddb7_Out_3_Float;
|
|
Unity_Remap_float(_SampleTexture2D_33392602b94694898ec8227a89f13cc9_G_5_Float, float2 (0, 1), _Vector2_9b862c4e147d1082afad3606339d2130_Out_0_Vector2, _Remap_c1f0022add809b83bad7b493177bddb7_Out_3_Float);
|
|
float _Minimum_595c2f31bb0ec588977a2b9ea46bf6b0_Out_2_Float;
|
|
Unity_Minimum_float(_Split_6ec9cc5e56f3f68ba37ff91557979c18_G_2_Float, _Remap_c1f0022add809b83bad7b493177bddb7_Out_3_Float, _Minimum_595c2f31bb0ec588977a2b9ea46bf6b0_Out_2_Float);
|
|
float3 _Vector3_6cb5b2c4675bb28cb41ea88b6eaa2aff_Out_0_Vector3 = float3(_Split_6ec9cc5e56f3f68ba37ff91557979c18_R_1_Float, _Minimum_595c2f31bb0ec588977a2b9ea46bf6b0_Out_2_Float, _Split_6ec9cc5e56f3f68ba37ff91557979c18_B_3_Float);
|
|
float3 _Lerp_fa40b54f3d5a1a8a95f6306e837b9338_Out_3_Vector3;
|
|
Unity_Lerp_float3(_Vector3_fac10bf467f5ff82b4f071ba165bf458_Out_0_Vector3, _Vector3_6cb5b2c4675bb28cb41ea88b6eaa2aff_Out_0_Vector3, (_Branch_3ccf365d359214809d30b6430d863e3f_Out_3_Float.xxx), _Lerp_fa40b54f3d5a1a8a95f6306e837b9338_Out_3_Vector3);
|
|
float _Split_c4a5352a58a4f88fb40410f956825dc6_R_1_Float = _Lerp_fa40b54f3d5a1a8a95f6306e837b9338_Out_3_Vector3[0];
|
|
float _Split_c4a5352a58a4f88fb40410f956825dc6_G_2_Float = _Lerp_fa40b54f3d5a1a8a95f6306e837b9338_Out_3_Vector3[1];
|
|
float _Split_c4a5352a58a4f88fb40410f956825dc6_B_3_Float = _Lerp_fa40b54f3d5a1a8a95f6306e837b9338_Out_3_Vector3[2];
|
|
float _Split_c4a5352a58a4f88fb40410f956825dc6_A_4_Float = 0;
|
|
float _Property_7861e880056eb88ab923a2ff5b12179d_Out_0_Float = _WetSmoothness;
|
|
float _Lerp_ee63160826cff4869f0e63568dd6f8b7_Out_3_Float;
|
|
Unity_Lerp_float(_Split_c4a5352a58a4f88fb40410f956825dc6_B_3_Float, _Property_7861e880056eb88ab923a2ff5b12179d_Out_0_Float, _OneMinus_e16dfb812ec64b8891c541171687142f_Out_1_Float, _Lerp_ee63160826cff4869f0e63568dd6f8b7_Out_3_Float);
|
|
float _Property_1c389d922d4fba86bc62c7d42ac8643d_Out_0_Float = _CoverNormalScale;
|
|
float3 _NormalStrength_db3de71f618fee878c84a13374c7adc4_Out_2_Vector3;
|
|
Unity_NormalStrength_float((_TriplanarNMn_ba7e211dd8095589a2939b5b239ca8e0_XYZ_1_Vector4.xyz), _Property_1c389d922d4fba86bc62c7d42ac8643d_Out_0_Float, _NormalStrength_db3de71f618fee878c84a13374c7adc4_Out_2_Vector3);
|
|
float3 _NormalBlend_b2e537e7a99f9280ba682b47daf3c5e3_Out_2_Vector3;
|
|
Unity_NormalBlend_float(_NormalStrength_db3de71f618fee878c84a13374c7adc4_Out_2_Vector3, _NormalStrength_401cd5af500bd68dbc9bca19d548d0db_Out_2_Vector3, _NormalBlend_b2e537e7a99f9280ba682b47daf3c5e3_Out_2_Vector3);
|
|
float2 _Vector2_b87489f8633d268598edb76163057164_Out_0_Vector2 = float2(_SampleTexture2D_4bd08411faa60c828847f2247f06a809_A_7_Float, _SampleTexture2D_4bd08411faa60c828847f2247f06a809_G_5_Float);
|
|
float2 _Multiply_95e603bb6d4bd7809de0ae42c8f45058_Out_2_Vector2;
|
|
Unity_Multiply_float2_float2(_Vector2_b87489f8633d268598edb76163057164_Out_0_Vector2, float2(2, 2), _Multiply_95e603bb6d4bd7809de0ae42c8f45058_Out_2_Vector2);
|
|
float2 _Add_c116ac3906ccf68d82dd5b73d0f5659a_Out_2_Vector2;
|
|
Unity_Add_float2(_Multiply_95e603bb6d4bd7809de0ae42c8f45058_Out_2_Vector2, float2(-1, -1), _Add_c116ac3906ccf68d82dd5b73d0f5659a_Out_2_Vector2);
|
|
float _Property_988acb131fd330878b4ac0672366ad90_Out_0_Float = _DetailCoverNormalScale;
|
|
float2 _Multiply_6de1a79215e1928f9f3fc3293df74f88_Out_2_Vector2;
|
|
Unity_Multiply_float2_float2(_Add_c116ac3906ccf68d82dd5b73d0f5659a_Out_2_Vector2, (_Property_988acb131fd330878b4ac0672366ad90_Out_0_Float.xx), _Multiply_6de1a79215e1928f9f3fc3293df74f88_Out_2_Vector2);
|
|
float _Split_9ce53bb7a65f16809b6a95d82286186e_R_1_Float = _Multiply_6de1a79215e1928f9f3fc3293df74f88_Out_2_Vector2[0];
|
|
float _Split_9ce53bb7a65f16809b6a95d82286186e_G_2_Float = _Multiply_6de1a79215e1928f9f3fc3293df74f88_Out_2_Vector2[1];
|
|
float _Split_9ce53bb7a65f16809b6a95d82286186e_B_3_Float = 0;
|
|
float _Split_9ce53bb7a65f16809b6a95d82286186e_A_4_Float = 0;
|
|
float _DotProduct_8912687db556b6819d2a38ba8511a7ae_Out_2_Float;
|
|
Unity_DotProduct_float2(_Multiply_6de1a79215e1928f9f3fc3293df74f88_Out_2_Vector2, _Multiply_6de1a79215e1928f9f3fc3293df74f88_Out_2_Vector2, _DotProduct_8912687db556b6819d2a38ba8511a7ae_Out_2_Float);
|
|
float _Saturate_013ea9a02a1ff18992540b270836cc73_Out_1_Float;
|
|
Unity_Saturate_float(_DotProduct_8912687db556b6819d2a38ba8511a7ae_Out_2_Float, _Saturate_013ea9a02a1ff18992540b270836cc73_Out_1_Float);
|
|
float _OneMinus_eefd2695dc7d77838984fc25a1c00b0b_Out_1_Float;
|
|
Unity_OneMinus_float(_Saturate_013ea9a02a1ff18992540b270836cc73_Out_1_Float, _OneMinus_eefd2695dc7d77838984fc25a1c00b0b_Out_1_Float);
|
|
float _SquareRoot_1d25cc71b4ce9286af1666a96ae6ac5a_Out_1_Float;
|
|
Unity_SquareRoot_float(_OneMinus_eefd2695dc7d77838984fc25a1c00b0b_Out_1_Float, _SquareRoot_1d25cc71b4ce9286af1666a96ae6ac5a_Out_1_Float);
|
|
float3 _Vector3_c3d9c7e92a1c5b8ea5650ab3bb421c27_Out_0_Vector3 = float3(_Split_9ce53bb7a65f16809b6a95d82286186e_R_1_Float, _Split_9ce53bb7a65f16809b6a95d82286186e_G_2_Float, _SquareRoot_1d25cc71b4ce9286af1666a96ae6ac5a_Out_1_Float);
|
|
float3 _NormalBlend_8e1d1c87f8c12b87b64883533bfa43be_Out_2_Vector3;
|
|
Unity_NormalBlend_float(_NormalBlend_b2e537e7a99f9280ba682b47daf3c5e3_Out_2_Vector3, _Vector3_c3d9c7e92a1c5b8ea5650ab3bb421c27_Out_0_Vector3, _NormalBlend_8e1d1c87f8c12b87b64883533bfa43be_Out_2_Vector3);
|
|
float3 _Lerp_48cd568fef7d358b8d65b989db745e6c_Out_3_Vector3;
|
|
Unity_Lerp_float3(_NormalBlend_4242e1b4a785378aa59dd49e9d993ffc_Out_2_Vector3, _NormalBlend_8e1d1c87f8c12b87b64883533bfa43be_Out_2_Vector3, (_Branch_3ccf365d359214809d30b6430d863e3f_Out_3_Float.xxx), _Lerp_48cd568fef7d358b8d65b989db745e6c_Out_3_Vector3);
|
|
surface.BaseColor = _Lerp_43bc7a9493df5a829abf080ee4ad3298_Out_3_Vector3;
|
|
surface.Emission = float3(0, 0, 0);
|
|
surface.Alpha = float(1);
|
|
surface.BentNormal = IN.TangentSpaceNormal;
|
|
surface.Smoothness = _Lerp_ee63160826cff4869f0e63568dd6f8b7_Out_3_Float;
|
|
surface.Occlusion = _Split_c4a5352a58a4f88fb40410f956825dc6_G_2_Float;
|
|
surface.NormalTS = _Lerp_48cd568fef7d358b8d65b989db745e6c_Out_3_Vector3;
|
|
surface.Metallic = _Split_c4a5352a58a4f88fb40410f956825dc6_R_1_Float;
|
|
return surface;
|
|
}
|
|
|
|
// --------------------------------------------------
|
|
// Build Graph Inputs
|
|
#ifdef HAVE_VFX_MODIFICATION
|
|
#define VFX_SRP_ATTRIBUTES AttributesMesh
|
|
#define VaryingsMeshType VaryingsMeshToPS
|
|
#define VFX_SRP_VARYINGS VaryingsMeshType
|
|
#define VFX_SRP_SURFACE_INPUTS FragInputs
|
|
#endif
|
|
|
|
VertexDescriptionInputs AttributesMeshToVertexDescriptionInputs(AttributesMesh input)
|
|
{
|
|
VertexDescriptionInputs output;
|
|
ZERO_INITIALIZE(VertexDescriptionInputs, output);
|
|
|
|
output.ObjectSpaceNormal = input.normalOS;
|
|
output.ObjectSpaceTangent = input.tangentOS.xyz;
|
|
output.ObjectSpacePosition = input.positionOS;
|
|
#if UNITY_ANY_INSTANCING_ENABLED
|
|
#else
|
|
#endif
|
|
|
|
return output;
|
|
}
|
|
|
|
VertexDescription GetVertexDescription(AttributesMesh input, float3 timeParameters
|
|
#ifdef HAVE_VFX_MODIFICATION
|
|
, AttributesElement element
|
|
#endif
|
|
)
|
|
{
|
|
// build graph inputs
|
|
VertexDescriptionInputs vertexDescriptionInputs = AttributesMeshToVertexDescriptionInputs(input);
|
|
// Override time parameters with used one (This is required to correctly handle motion vectors for vertex animation based on time)
|
|
|
|
// evaluate vertex graph
|
|
#ifdef HAVE_VFX_MODIFICATION
|
|
GraphProperties properties;
|
|
ZERO_INITIALIZE(GraphProperties, properties);
|
|
|
|
// Fetch the vertex graph properties for the particle instance.
|
|
GetElementVertexProperties(element, properties);
|
|
|
|
VertexDescription vertexDescription = VertexDescriptionFunction(vertexDescriptionInputs, properties);
|
|
#else
|
|
VertexDescription vertexDescription = VertexDescriptionFunction(vertexDescriptionInputs);
|
|
#endif
|
|
return vertexDescription;
|
|
|
|
}
|
|
|
|
AttributesMesh ApplyMeshModification(AttributesMesh input, float3 timeParameters
|
|
#ifdef USE_CUSTOMINTERP_SUBSTRUCT
|
|
#ifdef TESSELLATION_ON
|
|
, inout VaryingsMeshToDS varyings
|
|
#else
|
|
, inout VaryingsMeshToPS varyings
|
|
#endif
|
|
#endif
|
|
#ifdef HAVE_VFX_MODIFICATION
|
|
, AttributesElement element
|
|
#endif
|
|
)
|
|
{
|
|
VertexDescription vertexDescription = GetVertexDescription(input, timeParameters
|
|
#ifdef HAVE_VFX_MODIFICATION
|
|
, element
|
|
#endif
|
|
);
|
|
|
|
// copy graph output to the results
|
|
input.positionOS = vertexDescription.Position;
|
|
input.normalOS = vertexDescription.Normal;
|
|
input.tangentOS.xyz = vertexDescription.Tangent;
|
|
|
|
|
|
|
|
return input;
|
|
}
|
|
|
|
#if defined(_ADD_CUSTOM_VELOCITY) // For shader graph custom velocity
|
|
// Return precomputed Velocity in object space
|
|
float3 GetCustomVelocity(AttributesMesh input
|
|
#ifdef HAVE_VFX_MODIFICATION
|
|
, AttributesElement element
|
|
#endif
|
|
)
|
|
{
|
|
VertexDescription vertexDescription = GetVertexDescription(input, _TimeParameters.xyz
|
|
#ifdef HAVE_VFX_MODIFICATION
|
|
, element
|
|
#endif
|
|
);
|
|
return vertexDescription.CustomVelocity;
|
|
}
|
|
#endif
|
|
|
|
FragInputs BuildFragInputs(VaryingsMeshToPS input)
|
|
{
|
|
FragInputs output;
|
|
ZERO_INITIALIZE(FragInputs, output);
|
|
|
|
// Init to some default value to make the computer quiet (else it output 'divide by zero' warning even if value is not used).
|
|
// TODO: this is a really poor workaround, but the variable is used in a bunch of places
|
|
// to compute normals which are then passed on elsewhere to compute other values...
|
|
output.tangentToWorld = k_identity3x3;
|
|
output.positionSS = input.positionCS; // input.positionCS is SV_Position
|
|
|
|
output.positionRWS = input.positionRWS;
|
|
output.tangentToWorld = BuildTangentToWorld(input.tangentWS, input.normalWS);
|
|
output.texCoord0 = input.texCoord0;
|
|
output.color = input.color;
|
|
|
|
#if UNITY_ANY_INSTANCING_ENABLED
|
|
#else
|
|
#endif
|
|
|
|
#ifdef HAVE_VFX_MODIFICATION
|
|
// FragInputs from VFX come from two places: Interpolator or CBuffer.
|
|
#if VFX_USE_GRAPH_VALUES
|
|
uint instanceActiveIndex = asuint(UNITY_ACCESS_INSTANCED_PROP(PerInstance, _InstanceActiveIndex));
|
|
/* WARNING: $splice Could not find named fragment 'VFXLoadGraphValues' */
|
|
#endif
|
|
|
|
/* WARNING: $splice Could not find named fragment 'VFXSetFragInputs' */
|
|
|
|
#endif
|
|
|
|
// splice point to copy custom interpolator fields from varyings to frag inputs
|
|
|
|
|
|
return output;
|
|
}
|
|
|
|
// existing HDRP code uses the combined function to go directly from packed to frag inputs
|
|
FragInputs UnpackVaryingsMeshToFragInputs(PackedVaryingsMeshToPS input)
|
|
{
|
|
UNITY_SETUP_INSTANCE_ID(input);
|
|
#if defined(HAVE_VFX_MODIFICATION) && defined(UNITY_INSTANCING_ENABLED)
|
|
unity_InstanceID = input.instanceID;
|
|
#endif
|
|
VaryingsMeshToPS unpacked = UnpackVaryingsMeshToPS(input);
|
|
return BuildFragInputs(unpacked);
|
|
}
|
|
SurfaceDescriptionInputs FragInputsToSurfaceDescriptionInputs(FragInputs input, float3 viewWS)
|
|
{
|
|
SurfaceDescriptionInputs output;
|
|
ZERO_INITIALIZE(SurfaceDescriptionInputs, output);
|
|
|
|
output.WorldSpaceNormal = normalize(input.tangentToWorld[2].xyz);
|
|
#if defined(SHADER_STAGE_RAY_TRACING)
|
|
#else
|
|
#endif
|
|
output.TangentSpaceNormal = float3(0.0f, 0.0f, 1.0f);
|
|
output.WorldSpaceTangent = input.tangentToWorld[0].xyz;
|
|
output.WorldSpaceBiTangent = input.tangentToWorld[1].xyz;
|
|
output.AbsoluteWorldSpacePosition = GetAbsolutePositionWS(input.positionRWS);
|
|
|
|
#if UNITY_UV_STARTS_AT_TOP
|
|
#else
|
|
#endif
|
|
|
|
|
|
output.uv0 = input.texCoord0;
|
|
output.VertexColor = input.color;
|
|
|
|
// splice point to copy frag inputs custom interpolator pack into the SDI
|
|
|
|
|
|
return output;
|
|
}
|
|
|
|
// --------------------------------------------------
|
|
// Build Surface Data (Specific Material)
|
|
|
|
void ApplyDecalToSurfaceDataNoNormal(DecalSurfaceData decalSurfaceData, inout SurfaceData surfaceData);
|
|
|
|
void ApplyDecalAndGetNormal(FragInputs fragInputs, PositionInputs posInput, SurfaceDescription surfaceDescription,
|
|
inout SurfaceData surfaceData)
|
|
{
|
|
float3 doubleSidedConstants = GetDoubleSidedConstants();
|
|
|
|
#ifdef DECAL_NORMAL_BLENDING
|
|
// SG nodes don't ouptut surface gradients, so if decals require surf grad blending, we have to convert
|
|
// the normal to gradient before applying the decal. We then have to resolve the gradient back to world space
|
|
float3 normalTS;
|
|
|
|
normalTS = SurfaceGradientFromTangentSpaceNormalAndFromTBN(surfaceDescription.NormalTS,
|
|
fragInputs.tangentToWorld[0], fragInputs.tangentToWorld[1]);
|
|
|
|
|
|
#if HAVE_DECALS
|
|
if (_EnableDecals)
|
|
{
|
|
float alpha = 1.0;
|
|
alpha = surfaceDescription.Alpha;
|
|
|
|
DecalSurfaceData decalSurfaceData = GetDecalSurfaceData(posInput, fragInputs, alpha);
|
|
ApplyDecalToSurfaceNormal(decalSurfaceData, fragInputs.tangentToWorld[2], normalTS);
|
|
ApplyDecalToSurfaceDataNoNormal(decalSurfaceData, surfaceData);
|
|
}
|
|
#endif
|
|
|
|
GetNormalWS_SG(fragInputs, normalTS, surfaceData.normalWS, doubleSidedConstants);
|
|
#else
|
|
// normal delivered to master node
|
|
GetNormalWS(fragInputs, surfaceDescription.NormalTS, surfaceData.normalWS, doubleSidedConstants);
|
|
|
|
#if HAVE_DECALS
|
|
if (_EnableDecals)
|
|
{
|
|
float alpha = 1.0;
|
|
alpha = surfaceDescription.Alpha;
|
|
|
|
// Both uses and modifies 'surfaceData.normalWS'.
|
|
DecalSurfaceData decalSurfaceData = GetDecalSurfaceData(posInput, fragInputs, alpha);
|
|
ApplyDecalToSurfaceNormal(decalSurfaceData, surfaceData.normalWS.xyz);
|
|
ApplyDecalToSurfaceDataNoNormal(decalSurfaceData, surfaceData);
|
|
}
|
|
#endif
|
|
#endif
|
|
}
|
|
void BuildSurfaceData(FragInputs fragInputs, inout SurfaceDescription surfaceDescription, float3 V, PositionInputs posInput, out SurfaceData surfaceData, out float3 bentNormalWS)
|
|
{
|
|
ZERO_INITIALIZE(SurfaceData, surfaceData);
|
|
|
|
// specularOcclusion need to be init ahead of decal to quiet the compiler that modify the SurfaceData struct
|
|
// however specularOcclusion can come from the graph, so need to be init here so it can be override.
|
|
surfaceData.specularOcclusion = 1.0;
|
|
surfaceData.thickness = 0.0;
|
|
|
|
surfaceData.baseColor = surfaceDescription.BaseColor;
|
|
surfaceData.perceptualSmoothness = surfaceDescription.Smoothness;
|
|
surfaceData.ambientOcclusion = surfaceDescription.Occlusion;
|
|
surfaceData.metallic = surfaceDescription.Metallic;
|
|
|
|
#if defined(_REFRACTION_PLANE) || defined(_REFRACTION_SPHERE) || defined(_REFRACTION_THIN)
|
|
if (_EnableSSRefraction)
|
|
{
|
|
|
|
surfaceData.transmittanceMask = (1.0 - surfaceDescription.Alpha);
|
|
surfaceDescription.Alpha = 1.0;
|
|
}
|
|
else
|
|
{
|
|
surfaceData.ior = 1.0;
|
|
surfaceData.transmittanceColor = float3(1.0, 1.0, 1.0);
|
|
surfaceData.atDistance = 1.0;
|
|
surfaceData.transmittanceMask = 0.0;
|
|
surfaceDescription.Alpha = 1.0;
|
|
}
|
|
#else
|
|
surfaceData.ior = 1.0;
|
|
surfaceData.transmittanceColor = float3(1.0, 1.0, 1.0);
|
|
surfaceData.atDistance = 1.0;
|
|
surfaceData.transmittanceMask = 0.0;
|
|
#endif
|
|
|
|
// These static material feature allow compile time optimization
|
|
surfaceData.materialFeatures = MATERIALFEATUREFLAGS_LIT_STANDARD;
|
|
#ifdef _MATERIAL_FEATURE_SUBSURFACE_SCATTERING
|
|
surfaceData.materialFeatures |= MATERIALFEATUREFLAGS_LIT_SUBSURFACE_SCATTERING;
|
|
#endif
|
|
|
|
#ifdef _MATERIAL_FEATURE_TRANSMISSION
|
|
surfaceData.materialFeatures |= MATERIALFEATUREFLAGS_LIT_TRANSMISSION;
|
|
#endif
|
|
|
|
#ifdef _MATERIAL_FEATURE_COLORED_TRANSMISSION
|
|
surfaceData.materialFeatures |= MATERIALFEATUREFLAGS_LIT_TRANSMISSION;
|
|
surfaceData.materialFeatures |= MATERIALFEATUREFLAGS_LIT_COLORED_TRANSMISSION;
|
|
|
|
#endif
|
|
|
|
#ifdef _MATERIAL_FEATURE_ANISOTROPY
|
|
surfaceData.materialFeatures |= MATERIALFEATUREFLAGS_LIT_ANISOTROPY;
|
|
|
|
// Initialize the normal to something non-zero to avoid a div-zero warning for anisotropy.
|
|
surfaceData.normalWS = float3(0, 1, 0);
|
|
#endif
|
|
|
|
#ifdef _MATERIAL_FEATURE_IRIDESCENCE
|
|
surfaceData.materialFeatures |= MATERIALFEATUREFLAGS_LIT_IRIDESCENCE;
|
|
#endif
|
|
|
|
#ifdef _MATERIAL_FEATURE_SPECULAR_COLOR
|
|
surfaceData.materialFeatures |= MATERIALFEATUREFLAGS_LIT_SPECULAR_COLOR;
|
|
#endif
|
|
|
|
#ifdef _MATERIAL_FEATURE_CLEAR_COAT
|
|
surfaceData.materialFeatures |= MATERIALFEATUREFLAGS_LIT_CLEAR_COAT;
|
|
#endif
|
|
|
|
#if defined (_MATERIAL_FEATURE_SPECULAR_COLOR) && defined (_ENERGY_CONSERVING_SPECULAR)
|
|
// Require to have setup baseColor
|
|
// Reproduce the energy conservation done in legacy Unity. Not ideal but better for compatibility and users can unchek it
|
|
surfaceData.baseColor *= (1.0 - Max3(surfaceData.specularColor.r, surfaceData.specularColor.g, surfaceData.specularColor.b));
|
|
#endif
|
|
|
|
float3 doubleSidedConstants = GetDoubleSidedConstants();
|
|
|
|
ApplyDecalAndGetNormal(fragInputs, posInput, surfaceDescription, surfaceData);
|
|
|
|
surfaceData.geomNormalWS = fragInputs.tangentToWorld[2];
|
|
|
|
surfaceData.tangentWS = normalize(fragInputs.tangentToWorld[0].xyz); // The tangent is not normalize in tangentToWorld for mikkt. TODO: Check if it expected that we normalize with Morten. Tag: SURFACE_GRADIENT
|
|
|
|
|
|
bentNormalWS = surfaceData.normalWS;
|
|
|
|
surfaceData.tangentWS = Orthonormalize(surfaceData.tangentWS, surfaceData.normalWS);
|
|
|
|
#ifdef DEBUG_DISPLAY
|
|
#if !defined(SHADER_STAGE_RAY_TRACING)
|
|
// Mipmap mode debugging isn't supported with ray tracing as it relies on derivatives
|
|
if (_DebugMipMapMode != DEBUGMIPMAPMODE_NONE)
|
|
{
|
|
#ifdef FRAG_INPUTS_USE_TEXCOORD0
|
|
surfaceData.baseColor = GET_TEXTURE_STREAMING_DEBUG(posInput.positionSS, fragInputs.texCoord0);
|
|
#else
|
|
surfaceData.baseColor = GET_TEXTURE_STREAMING_DEBUG_NO_UV(posInput.positionSS);
|
|
#endif
|
|
surfaceData.metallic = 0;
|
|
}
|
|
#endif
|
|
|
|
// We need to call ApplyDebugToSurfaceData after filling the surfaceData and before filling builtinData
|
|
// as it can modify attribute use for static lighting
|
|
ApplyDebugToSurfaceData(fragInputs.tangentToWorld, surfaceData);
|
|
#endif
|
|
|
|
// By default we use the ambient occlusion with Tri-ace trick (apply outside) for specular occlusion.
|
|
// If user provide bent normal then we process a better term
|
|
#if defined(_SPECULAR_OCCLUSION_CUSTOM)
|
|
// Just use the value passed through via the slot (not active otherwise)
|
|
#elif defined(_SPECULAR_OCCLUSION_FROM_AO_BENT_NORMAL)
|
|
// If we have bent normal and ambient occlusion, process a specular occlusion
|
|
surfaceData.specularOcclusion = GetSpecularOcclusionFromBentAO(V, bentNormalWS, surfaceData.normalWS, surfaceData.ambientOcclusion, PerceptualSmoothnessToPerceptualRoughness(surfaceData.perceptualSmoothness));
|
|
#elif defined(_AMBIENT_OCCLUSION) && defined(_SPECULAR_OCCLUSION_FROM_AO)
|
|
surfaceData.specularOcclusion = GetSpecularOcclusionFromAmbientOcclusion(ClampNdotV(dot(surfaceData.normalWS, V)), surfaceData.ambientOcclusion, PerceptualSmoothnessToRoughness(surfaceData.perceptualSmoothness));
|
|
#endif
|
|
|
|
#if defined(_ENABLE_GEOMETRIC_SPECULAR_AA) && !defined(SHADER_STAGE_RAY_TRACING)
|
|
surfaceData.perceptualSmoothness = GeometricNormalFiltering(surfaceData.perceptualSmoothness, fragInputs.tangentToWorld[2], surfaceDescription.SpecularAAScreenSpaceVariance, surfaceDescription.SpecularAAThreshold);
|
|
#endif
|
|
}
|
|
|
|
// --------------------------------------------------
|
|
// Get Surface And BuiltinData
|
|
|
|
void GetSurfaceAndBuiltinData(FragInputs fragInputs, float3 V, inout PositionInputs posInput, out SurfaceData surfaceData, out BuiltinData builtinData RAY_TRACING_OPTIONAL_PARAMETERS)
|
|
{
|
|
// Don't dither if displaced tessellation (we're fading out the displacement instead to match the next LOD)
|
|
#if !defined(SHADER_STAGE_RAY_TRACING) && !defined(_TESSELLATION_DISPLACEMENT)
|
|
#ifdef LOD_FADE_CROSSFADE // enable dithering LOD transition if user select CrossFade transition in LOD group
|
|
LODDitheringTransition(ComputeFadeMaskSeed(V, posInput.positionSS), unity_LODFade.x);
|
|
#endif
|
|
#endif
|
|
|
|
#ifndef SHADER_UNLIT
|
|
#ifdef _DOUBLESIDED_ON
|
|
float3 doubleSidedConstants = _DoubleSidedConstants.xyz;
|
|
#else
|
|
float3 doubleSidedConstants = float3(1.0, 1.0, 1.0);
|
|
#endif
|
|
|
|
ApplyDoubleSidedFlipOrMirror(fragInputs, doubleSidedConstants); // Apply double sided flip on the vertex normal
|
|
#endif // SHADER_UNLIT
|
|
|
|
SurfaceDescriptionInputs surfaceDescriptionInputs = FragInputsToSurfaceDescriptionInputs(fragInputs, V);
|
|
|
|
#if defined(HAVE_VFX_MODIFICATION)
|
|
GraphProperties properties;
|
|
ZERO_INITIALIZE(GraphProperties, properties);
|
|
|
|
GetElementPixelProperties(fragInputs, properties);
|
|
|
|
SurfaceDescription surfaceDescription = SurfaceDescriptionFunction(surfaceDescriptionInputs, properties);
|
|
#else
|
|
SurfaceDescription surfaceDescription = SurfaceDescriptionFunction(surfaceDescriptionInputs);
|
|
#endif
|
|
|
|
#ifdef DEBUG_DISPLAY
|
|
if (_DebugMipMapMode != DEBUGMIPMAPMODE_NONE)
|
|
{
|
|
surfaceDescription.Alpha = 1.0f;
|
|
}
|
|
#endif
|
|
|
|
// Perform alpha test very early to save performance (a killed pixel will not sample textures)
|
|
// TODO: split graph evaluation to grab just alpha dependencies first? tricky..
|
|
#ifdef _ALPHATEST_ON
|
|
float alphaCutoff = surfaceDescription.AlphaClipThreshold;
|
|
#if SHADERPASS == SHADERPASS_TRANSPARENT_DEPTH_PREPASS
|
|
// The TransparentDepthPrepass is also used with SSR transparent.
|
|
// If an artists enable transaprent SSR but not the TransparentDepthPrepass itself, then we use AlphaClipThreshold
|
|
// otherwise if TransparentDepthPrepass is enabled we use AlphaClipThresholdDepthPrepass
|
|
#elif SHADERPASS == SHADERPASS_TRANSPARENT_DEPTH_POSTPASS
|
|
// DepthPostpass always use its own alpha threshold
|
|
alphaCutoff = surfaceDescription.AlphaClipThresholdDepthPostpass;
|
|
#elif (SHADERPASS == SHADERPASS_SHADOWS) || (SHADERPASS == SHADERPASS_RAYTRACING_VISIBILITY)
|
|
// If use shadow threshold isn't enable we don't allow any test
|
|
#endif
|
|
|
|
GENERIC_ALPHA_TEST(surfaceDescription.Alpha, alphaCutoff);
|
|
#endif
|
|
|
|
#if !defined(SHADER_STAGE_RAY_TRACING) && _DEPTHOFFSET_ON
|
|
ApplyDepthOffsetPositionInput(V, surfaceDescription.DepthOffset, GetViewForwardDir(), GetWorldToHClipMatrix(), posInput);
|
|
#endif
|
|
|
|
#ifndef SHADER_UNLIT
|
|
float3 bentNormalWS;
|
|
BuildSurfaceData(fragInputs, surfaceDescription, V, posInput, surfaceData, bentNormalWS);
|
|
|
|
#ifdef FRAG_INPUTS_USE_TEXCOORD1
|
|
float4 lightmapTexCoord1 = fragInputs.texCoord1;
|
|
#else
|
|
float4 lightmapTexCoord1 = float4(0,0,0,0);
|
|
#endif
|
|
|
|
#ifdef FRAG_INPUTS_USE_TEXCOORD2
|
|
float4 lightmapTexCoord2 = fragInputs.texCoord2;
|
|
#else
|
|
float4 lightmapTexCoord2 = float4(0,0,0,0);
|
|
#endif
|
|
|
|
float alpha = 1.0;
|
|
alpha = surfaceDescription.Alpha;
|
|
|
|
// Builtin Data
|
|
// For back lighting we use the oposite vertex normal
|
|
InitBuiltinData(posInput, alpha, bentNormalWS, -fragInputs.tangentToWorld[2], lightmapTexCoord1, lightmapTexCoord2, builtinData);
|
|
|
|
#else
|
|
BuildSurfaceData(fragInputs, surfaceDescription, V, posInput, surfaceData);
|
|
|
|
ZERO_BUILTIN_INITIALIZE(builtinData); // No call to InitBuiltinData as we don't have any lighting
|
|
builtinData.opacity = surfaceDescription.Alpha;
|
|
|
|
#if defined(DEBUG_DISPLAY)
|
|
// Light Layers are currently not used for the Unlit shader (because it is not lit)
|
|
// But Unlit objects do cast shadows according to their rendering layer mask, which is what we want to
|
|
// display in the light layers visualization mode, therefore we need the renderingLayers
|
|
builtinData.renderingLayers = GetMeshRenderingLayerMask();
|
|
#endif
|
|
|
|
#endif // SHADER_UNLIT
|
|
|
|
#ifdef _ALPHATEST_ON
|
|
// Used for sharpening by alpha to mask - Alpha to covertage is only used with depth only and forward pass (no shadow pass, no transparent pass)
|
|
builtinData.alphaClipTreshold = alphaCutoff;
|
|
#endif
|
|
|
|
// override sampleBakedGI - not used by Unlit
|
|
// When overriding GI, we need to force the isLightmap flag to make sure we don't add APV (sampled in the lightloop) on top of the overridden value (set at GBuffer stage)
|
|
|
|
builtinData.emissiveColor = surfaceDescription.Emission;
|
|
|
|
// Note this will not fully work on transparent surfaces (can check with _SURFACE_TYPE_TRANSPARENT define)
|
|
// We will always overwrite vt feeback with the nearest. So behind transparent surfaces vt will not be resolved
|
|
// This is a limitation of the current MRT approach.
|
|
#ifdef UNITY_VIRTUAL_TEXTURING
|
|
#endif
|
|
|
|
#if _DEPTHOFFSET_ON
|
|
builtinData.depthOffset = surfaceDescription.DepthOffset;
|
|
#endif
|
|
|
|
// TODO: We should generate distortion / distortionBlur for non distortion pass
|
|
#if (SHADERPASS == SHADERPASS_DISTORTION)
|
|
builtinData.distortion = surfaceDescription.Distortion;
|
|
builtinData.distortionBlur = surfaceDescription.DistortionBlur;
|
|
#endif
|
|
|
|
#ifndef SHADER_UNLIT
|
|
// PostInitBuiltinData call ApplyDebugToBuiltinData
|
|
PostInitBuiltinData(V, posInput, surfaceData, builtinData);
|
|
#else
|
|
ApplyDebugToBuiltinData(builtinData);
|
|
#endif
|
|
|
|
RAY_TRACING_OPTIONAL_ALPHA_TEST_PASS
|
|
}
|
|
|
|
// --------------------------------------------------
|
|
// Main
|
|
|
|
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/RenderPipeline/ShaderPass/ShaderPassDepthOnly.hlsl"
|
|
|
|
// --------------------------------------------------
|
|
// Visual Effect Vertex Invocations
|
|
|
|
#ifdef HAVE_VFX_MODIFICATION
|
|
#if !defined(SHADER_STAGE_RAY_TRACING)
|
|
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/ShaderLibrary/VisualEffectVertex.hlsl"
|
|
#else
|
|
#endif
|
|
#endif
|
|
|
|
ENDHLSL
|
|
}
|
|
Pass
|
|
{
|
|
Name "GBuffer"
|
|
Tags
|
|
{
|
|
"LightMode" = "GBuffer"
|
|
}
|
|
|
|
// Render State
|
|
Cull [_CullMode]
|
|
ZTest [_ZTestGBuffer]
|
|
Stencil
|
|
{
|
|
WriteMask [_StencilWriteMaskGBuffer]
|
|
Ref [_StencilRefGBuffer]
|
|
CompFront Always
|
|
PassFront Replace
|
|
CompBack Always
|
|
PassBack Replace
|
|
}
|
|
|
|
// Debug
|
|
// <None>
|
|
|
|
// --------------------------------------------------
|
|
// Pass
|
|
|
|
HLSLPROGRAM
|
|
|
|
// Pragmas
|
|
#pragma multi_compile _ DOTS_INSTANCING_ON
|
|
#pragma instancing_options renderinglayer
|
|
#pragma target 4.5
|
|
#pragma vertex Vert
|
|
#pragma fragment Frag
|
|
#pragma only_renderers d3d11 playstation xboxone xboxseries vulkan metal switch
|
|
#pragma multi_compile_instancing
|
|
|
|
// Keywords
|
|
#pragma multi_compile_fragment _ RENDERING_LAYERS
|
|
#pragma multi_compile_raytracing _ RENDERING_LAYERS
|
|
#pragma shader_feature _ _SURFACE_TYPE_TRANSPARENT
|
|
#pragma shader_feature_local _ _DOUBLESIDED_ON
|
|
#pragma shader_feature_local _ _ADD_PRECOMPUTED_VELOCITY
|
|
#pragma shader_feature_local _ _TRANSPARENT_WRITES_MOTION_VEC _TRANSPARENT_REFRACTIVE_SORT
|
|
#pragma shader_feature_local_fragment _ _ENABLE_FOG_ON_TRANSPARENT
|
|
#pragma multi_compile _ DEBUG_DISPLAY
|
|
#pragma multi_compile _ LOD_FADE_CROSSFADE
|
|
#pragma shader_feature_local_fragment _ _DISABLE_DECALS
|
|
#pragma shader_feature_local_raytracing _ _DISABLE_DECALS
|
|
#pragma shader_feature_local_fragment _ _DISABLE_SSR
|
|
#pragma shader_feature_local_raytracing _ _DISABLE_SSR
|
|
#pragma shader_feature_local_fragment _ _DISABLE_SSR_TRANSPARENT
|
|
#pragma shader_feature_local_raytracing _ _DISABLE_SSR_TRANSPARENT
|
|
#pragma multi_compile _ LIGHTMAP_ON
|
|
#pragma multi_compile _ DIRLIGHTMAP_COMBINED
|
|
#pragma multi_compile_fragment _ PROBE_VOLUMES_L1 PROBE_VOLUMES_L2
|
|
#pragma multi_compile_raytracing _ PROBE_VOLUMES_L1 PROBE_VOLUMES_L2
|
|
#pragma multi_compile _ DYNAMICLIGHTMAP_ON
|
|
#pragma multi_compile_fragment _ SHADOWS_SHADOWMASK
|
|
#pragma multi_compile_raytracing _ SHADOWS_SHADOWMASK
|
|
#pragma multi_compile_fragment DECALS_OFF DECALS_3RT DECALS_4RT
|
|
#pragma multi_compile_fragment _ DECAL_SURFACE_GRADIENT
|
|
#pragma multi_compile _ USE_LEGACY_LIGHTMAPS
|
|
#pragma shader_feature_local _ _REFRACTION_PLANE _REFRACTION_SPHERE _REFRACTION_THIN
|
|
#pragma shader_feature_local_fragment _MATERIAL_FEATURE_SUBSURFACE_SCATTERING
|
|
#pragma shader_feature_local_raytracing _MATERIAL_FEATURE_SUBSURFACE_SCATTERING
|
|
#pragma shader_feature_local_fragment _MATERIAL_FEATURE_TRANSMISSION
|
|
#pragma shader_feature_local_raytracing _MATERIAL_FEATURE_TRANSMISSION
|
|
#pragma shader_feature_local_fragment _MATERIAL_FEATURE_ANISOTROPY
|
|
#pragma shader_feature_local_raytracing _MATERIAL_FEATURE_ANISOTROPY
|
|
#pragma shader_feature_local_fragment _MATERIAL_FEATURE_IRIDESCENCE
|
|
#pragma shader_feature_local_raytracing _MATERIAL_FEATURE_IRIDESCENCE
|
|
#pragma shader_feature_local_fragment _MATERIAL_FEATURE_SPECULAR_COLOR
|
|
#pragma shader_feature_local_raytracing _MATERIAL_FEATURE_SPECULAR_COLOR
|
|
#pragma shader_feature_local_fragment _MATERIAL_FEATURE_COLORED_TRANSMISSION
|
|
#pragma shader_feature_local_raytracing _MATERIAL_FEATURE_COLORED_TRANSMISSION
|
|
// GraphKeywords: <None>
|
|
|
|
// Defines
|
|
#define SHADERPASS SHADERPASS_GBUFFER
|
|
#define RAYTRACING_SHADER_GRAPH_DEFAULT
|
|
#define SUPPORT_GLOBAL_MIP_BIAS 1
|
|
|
|
// For custom interpolators to inject a substruct definition before FragInputs definition,
|
|
// allowing for FragInputs to capture CI's intended for ShaderGraph's SDI.
|
|
struct CustomInterpolators
|
|
{
|
|
};
|
|
#define USE_CUSTOMINTERP_SUBSTRUCT
|
|
|
|
|
|
|
|
// TODO: Merge FragInputsVFX substruct with CustomInterpolators.
|
|
#ifdef HAVE_VFX_MODIFICATION
|
|
struct FragInputsVFX
|
|
{
|
|
/* WARNING: $splice Could not find named fragment 'FragInputsVFX' */
|
|
};
|
|
#endif
|
|
|
|
#include "Packages/com.unity.render-pipelines.core/ShaderLibrary/Common.hlsl"
|
|
#include "Packages/com.unity.render-pipelines.core/ShaderLibrary/GeometricTools.hlsl" // Required by Tessellation.hlsl
|
|
#include "Packages/com.unity.render-pipelines.core/ShaderLibrary/Tessellation.hlsl"
|
|
#include "Packages/com.unity.render-pipelines.core/ShaderLibrary/Texture.hlsl"
|
|
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/ShaderLibrary/ShaderVariables.hlsl"
|
|
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/RenderPipeline/ShaderPass/ShaderPass.cs.hlsl"
|
|
#include "Packages/com.unity.render-pipelines.core/ShaderLibrary/TextureStack.hlsl" // Required to be include before we include properties as it define DECLARE_STACK_CB
|
|
#include "Packages/com.unity.render-pipelines.core/ShaderLibrary/DebugMipmapStreamingMacros.hlsl" // Required before including properties as it defines UNITY_TEXTURE_STREAMING_DEBUG_VARS
|
|
// Always include Shader Graph version
|
|
// Always include last to avoid double macros
|
|
#include "Packages/com.unity.shadergraph/ShaderGraphLibrary/Functions.hlsl" // Need to be here for Gradient struct definition
|
|
|
|
// --------------------------------------------------
|
|
// Defines
|
|
|
|
// Attribute
|
|
#define ATTRIBUTES_NEED_NORMAL
|
|
#define ATTRIBUTES_NEED_TANGENT
|
|
#define ATTRIBUTES_NEED_TEXCOORD0
|
|
#define ATTRIBUTES_NEED_TEXCOORD1
|
|
#define ATTRIBUTES_NEED_TEXCOORD2
|
|
#define ATTRIBUTES_NEED_COLOR
|
|
#define VARYINGS_NEED_POSITION_WS
|
|
#define VARYINGS_NEED_TANGENT_TO_WORLD
|
|
#define VARYINGS_NEED_TEXCOORD0
|
|
#define VARYINGS_NEED_TEXCOORD1
|
|
#define VARYINGS_NEED_TEXCOORD2
|
|
#define VARYINGS_NEED_COLOR
|
|
|
|
#define HAVE_MESH_MODIFICATION
|
|
|
|
//Strip down the FragInputs.hlsl (on graphics), so we can only optimize the interpolators we use.
|
|
//if by accident something requests contents of FragInputs.hlsl, it will be caught as a compiler error
|
|
//Frag inputs stripping is only enabled when FRAG_INPUTS_ENABLE_STRIPPING is set
|
|
#if !defined(SHADER_STAGE_RAY_TRACING) && SHADERPASS != SHADERPASS_RAYTRACING_GBUFFER && SHADERPASS != SHADERPASS_FULL_SCREEN_DEBUG
|
|
#define FRAG_INPUTS_ENABLE_STRIPPING
|
|
#endif
|
|
#define FRAG_INPUTS_USE_TEXCOORD0
|
|
#define FRAG_INPUTS_USE_TEXCOORD1
|
|
#define FRAG_INPUTS_USE_TEXCOORD2
|
|
|
|
|
|
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/RenderPipeline/ShaderPass/FragInputs.hlsl"
|
|
|
|
|
|
|
|
|
|
// Following two define are a workaround introduce in 10.1.x for RaytracingQualityNode
|
|
// The ShaderGraph don't support correctly migration of this node as it serialize all the node data
|
|
// in the json file making it impossible to uprgrade. Until we get a fix, we do a workaround here
|
|
// to still allow us to rename the field and keyword of this node without breaking existing code.
|
|
#ifdef RAYTRACING_SHADER_GRAPH_DEFAULT
|
|
#define RAYTRACING_SHADER_GRAPH_HIGH
|
|
#endif
|
|
|
|
#ifdef RAYTRACING_SHADER_GRAPH_RAYTRACED
|
|
#define RAYTRACING_SHADER_GRAPH_LOW
|
|
#endif
|
|
// end
|
|
|
|
#ifndef SHADER_UNLIT
|
|
// We need isFrontFace when using double sided - it is not required for unlit as in case of unlit double sided only drive the cullmode
|
|
// VARYINGS_NEED_CULLFACE can be define by VaryingsMeshToPS.FaceSign input if a IsFrontFace Node is included in the shader graph.
|
|
#if defined(_DOUBLESIDED_ON) && !defined(VARYINGS_NEED_CULLFACE)
|
|
#define VARYINGS_NEED_CULLFACE
|
|
#endif
|
|
#endif
|
|
|
|
// Specific Material Define
|
|
#define _AMBIENT_OCCLUSION 1
|
|
#define _SPECULAR_OCCLUSION_FROM_AO 1
|
|
#define _ENERGY_CONSERVING_SPECULAR 1
|
|
|
|
#if _MATERIAL_FEATURE_COLORED_TRANSMISSION
|
|
// Colored Transmission doesn't support clear coat
|
|
#undef _MATERIAL_FEATURE_CLEAR_COAT
|
|
#endif
|
|
|
|
// If we use subsurface scattering, enable output split lighting (for forward pass)
|
|
#if defined(_MATERIAL_FEATURE_SUBSURFACE_SCATTERING) && !defined(_SURFACE_TYPE_TRANSPARENT)
|
|
#define OUTPUT_SPLIT_LIGHTING
|
|
#endif
|
|
|
|
// This shader support recursive rendering for raytracing
|
|
#define HAVE_RECURSIVE_RENDERING
|
|
|
|
// In Path Tracing, For all single-sided, refractive materials, we want to force a thin refraction model
|
|
#if (SHADERPASS == SHADERPASS_PATH_TRACING) && !defined(_DOUBLESIDED_ON) && (defined(_REFRACTION_PLANE) || defined(_REFRACTION_SPHERE))
|
|
#undef _REFRACTION_PLANE
|
|
#undef _REFRACTION_SPHERE
|
|
#define _REFRACTION_THIN
|
|
#endif
|
|
// Caution: we can use the define SHADER_UNLIT onlit after the above Material include as it is the Unlit template who define it
|
|
|
|
// To handle SSR on transparent correctly with a possibility to enable/disable it per framesettings
|
|
// we should have a code like this:
|
|
// if !defined(_DISABLE_SSR_TRANSPARENT)
|
|
// pragma multi_compile _ WRITE_NORMAL_BUFFER
|
|
// endif
|
|
// i.e we enable the multicompile only if we can receive SSR or not, and then C# code drive
|
|
// it based on if SSR transparent in frame settings and not (and stripper can strip it).
|
|
// this is currently not possible with our current preprocessor as _DISABLE_SSR_TRANSPARENT is a keyword not a define
|
|
// so instead we used this and chose to pay the extra cost of normal write even if SSR transaprent is disabled.
|
|
// Ideally the shader graph generator should handle it but condition below can't be handle correctly for now.
|
|
#if SHADERPASS == SHADERPASS_TRANSPARENT_DEPTH_PREPASS
|
|
#if !defined(_DISABLE_SSR_TRANSPARENT) && !defined(SHADER_UNLIT)
|
|
#define WRITE_NORMAL_BUFFER
|
|
#endif
|
|
#endif
|
|
|
|
// See Lit.shader
|
|
#if SHADERPASS == SHADERPASS_MOTION_VECTORS && defined(WRITE_DECAL_BUFFER_AND_RENDERING_LAYER)
|
|
#define WRITE_DECAL_BUFFER
|
|
#endif
|
|
|
|
#ifndef DEBUG_DISPLAY
|
|
// In case of opaque we don't want to perform the alpha test, it is done in depth prepass and we use depth equal for ztest (setup from UI)
|
|
// Don't do it with debug display mode as it is possible there is no depth prepass in this case
|
|
#if !defined(_SURFACE_TYPE_TRANSPARENT)
|
|
#if SHADERPASS == SHADERPASS_FORWARD
|
|
#define SHADERPASS_FORWARD_BYPASS_ALPHA_TEST
|
|
#elif SHADERPASS == SHADERPASS_GBUFFER
|
|
#define SHADERPASS_GBUFFER_BYPASS_ALPHA_TEST
|
|
#endif
|
|
#endif
|
|
#endif
|
|
|
|
// Define _DEFERRED_CAPABLE_MATERIAL for shader capable to run in deferred pass
|
|
#if defined(SHADER_LIT) && !defined(_SURFACE_TYPE_TRANSPARENT)
|
|
#define _DEFERRED_CAPABLE_MATERIAL
|
|
#endif
|
|
|
|
// Translate transparent motion vector define
|
|
#if (defined(_TRANSPARENT_WRITES_MOTION_VEC) || defined(_TRANSPARENT_REFRACTIVE_SORT)) && defined(_SURFACE_TYPE_TRANSPARENT)
|
|
#define _WRITE_TRANSPARENT_MOTION_VECTOR
|
|
#endif
|
|
|
|
// -- Graph Properties
|
|
CBUFFER_START(UnityPerMaterial)
|
|
float4 _BaseColor;
|
|
float4 _BaseColorMap_TexelSize;
|
|
float4 _BaseTilingOffset;
|
|
float _BaseTriplanarThreshold;
|
|
float4 _BaseNormalMap_TexelSize;
|
|
float _BaseNormalScale;
|
|
float4 _BaseMaskMap_TexelSize;
|
|
float _BaseMetallic;
|
|
float _BaseAORemapMin;
|
|
float _BaseAORemapMax;
|
|
float _BaseSmoothnessRemapMin;
|
|
float _BaseSmoothnessRemapMax;
|
|
float _USEDYNAMICCOVERTSTATICMASKF;
|
|
float4 _CoverMaskA_TexelSize;
|
|
float _CoverMaskPower;
|
|
float _Cover_Amount;
|
|
float _Cover_Amount_Grow_Speed;
|
|
float3 _CoverDirection;
|
|
float _Cover_Max_Angle;
|
|
float _Cover_Min_Height;
|
|
float _Cover_Min_Height_Blending;
|
|
float4 _CoverBaseColor;
|
|
float4 _CoverBaseColorMap_TexelSize;
|
|
float4 _CoverTilingOffset;
|
|
float _CoverTriplanarThreshold;
|
|
float4 _CoverNormalMap_TexelSize;
|
|
float _CoverNormalScale;
|
|
float _CoverNormalBlendHardness;
|
|
float _CoverHeightMapMin;
|
|
float _CoverHeightMapMax;
|
|
float _CoverHeightMapOffset;
|
|
float _CoverHardness;
|
|
float4 _CoverMaskMap_TexelSize;
|
|
float _CoverMetallic;
|
|
float _CoverAORemapMin;
|
|
float _CoverAORemapMax;
|
|
float _CoverSmoothnessRemapMin;
|
|
float _CoverSmoothnessRemapMax;
|
|
float4 _ShapeNormalMap_TexelSize;
|
|
float _shapeNormalScale;
|
|
float _CovershapeNormalScale;
|
|
float4 _ShapeAO_TexelSize;
|
|
float _ShapeAORemapMin;
|
|
float _ShapeAORemapMax;
|
|
float _CoverShapeAORemapMin;
|
|
float _CoverShapeAORemapMax;
|
|
float4 _DetailMap_TexelSize;
|
|
float4 _DetailTilingOffset;
|
|
float _DetailAlbedoScale;
|
|
float _DetailNormalScale;
|
|
float _DetailSmoothnessScale;
|
|
float _DetailCoverAlbedoScale;
|
|
float _DetailCoverNormalScale;
|
|
float _DetailCoverSmoothnessScale;
|
|
float _CoverMaskRCurvature;
|
|
float _BaseBrightnessCurvMultply;
|
|
float _BaseBrightnessCurvPower;
|
|
float _BaseDarknessCurvMultply;
|
|
float _BaseDarknessCurvPower;
|
|
float _CoverBrightnessCurvMultply;
|
|
float _CoverBrightnessCurvPower;
|
|
float _CoverDarknessCurvMultply;
|
|
float _CoverDarknessCurvPower;
|
|
float4 _WetColor;
|
|
float _WetSmoothness;
|
|
float4 _EmissionColor;
|
|
float _UseShadowThreshold;
|
|
float4 _DoubleSidedConstants;
|
|
UNITY_TEXTURE_STREAMING_DEBUG_VARS;
|
|
float _BlendMode;
|
|
float _EnableBlendModePreserveSpecularLighting;
|
|
float _RayTracing;
|
|
float _RefractionModel;
|
|
float _MaterialID;
|
|
float _MaterialTypeMask;
|
|
CBUFFER_END
|
|
|
|
|
|
// Object and Global properties
|
|
SAMPLER(SamplerState_Linear_Repeat);
|
|
SAMPLER(SamplerState_Linear_Repeat_Aniso8);
|
|
TEXTURE2D(_BaseColorMap);
|
|
SAMPLER(sampler_BaseColorMap);
|
|
TEXTURE2D(_BaseNormalMap);
|
|
SAMPLER(sampler_BaseNormalMap);
|
|
TEXTURE2D(_BaseMaskMap);
|
|
SAMPLER(sampler_BaseMaskMap);
|
|
TEXTURE2D(_CoverMaskA);
|
|
SAMPLER(sampler_CoverMaskA);
|
|
TEXTURE2D(_CoverBaseColorMap);
|
|
SAMPLER(sampler_CoverBaseColorMap);
|
|
TEXTURE2D(_CoverNormalMap);
|
|
SAMPLER(sampler_CoverNormalMap);
|
|
TEXTURE2D(_CoverMaskMap);
|
|
SAMPLER(sampler_CoverMaskMap);
|
|
TEXTURE2D(_ShapeNormalMap);
|
|
SAMPLER(sampler_ShapeNormalMap);
|
|
TEXTURE2D(_ShapeAO);
|
|
SAMPLER(sampler_ShapeAO);
|
|
TEXTURE2D(_DetailMap);
|
|
SAMPLER(sampler_DetailMap);
|
|
|
|
// -- Property used by ScenePickingPass
|
|
#ifdef SCENEPICKINGPASS
|
|
float4 _SelectionID;
|
|
#endif
|
|
|
|
// -- Properties used by SceneSelectionPass
|
|
#ifdef SCENESELECTIONPASS
|
|
int _ObjectId;
|
|
int _PassValue;
|
|
#endif
|
|
|
|
// Includes
|
|
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/Debug/DebugDisplay.hlsl"
|
|
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/Material/Material.hlsl"
|
|
#include "Packages/com.unity.render-pipelines.core/ShaderLibrary/NormalSurfaceGradient.hlsl"
|
|
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/Material/Lit/Lit.hlsl"
|
|
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/Material/BuiltinUtilities.hlsl"
|
|
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/Material/MaterialUtilities.hlsl"
|
|
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/Material/Decal/DecalUtilities.hlsl"
|
|
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/Material/Lit/LitDecalData.hlsl"
|
|
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/ShaderLibrary/ShaderGraphFunctions.hlsl"
|
|
// GraphIncludes: <None>
|
|
|
|
// --------------------------------------------------
|
|
// Structs and Packing
|
|
|
|
struct AttributesMesh
|
|
{
|
|
float3 positionOS : POSITION;
|
|
float3 normalOS : NORMAL;
|
|
float4 tangentOS : TANGENT;
|
|
float4 uv0 : TEXCOORD0;
|
|
float4 uv1 : TEXCOORD1;
|
|
float4 uv2 : TEXCOORD2;
|
|
float4 color : COLOR;
|
|
#if UNITY_ANY_INSTANCING_ENABLED || defined(ATTRIBUTES_NEED_INSTANCEID)
|
|
uint instanceID : INSTANCEID_SEMANTIC;
|
|
#endif
|
|
};
|
|
struct VaryingsMeshToPS
|
|
{
|
|
SV_POSITION_QUALIFIERS float4 positionCS : SV_POSITION;
|
|
float3 positionRWS;
|
|
float3 normalWS;
|
|
float4 tangentWS;
|
|
float4 texCoord0;
|
|
float4 texCoord1;
|
|
float4 texCoord2;
|
|
float4 color;
|
|
#if UNITY_ANY_INSTANCING_ENABLED || defined(VARYINGS_NEED_INSTANCEID)
|
|
uint instanceID : CUSTOM_INSTANCE_ID;
|
|
#endif
|
|
};
|
|
struct VertexDescriptionInputs
|
|
{
|
|
float3 ObjectSpaceNormal;
|
|
float3 ObjectSpaceTangent;
|
|
float3 ObjectSpacePosition;
|
|
};
|
|
struct SurfaceDescriptionInputs
|
|
{
|
|
float3 WorldSpaceNormal;
|
|
float3 TangentSpaceNormal;
|
|
float3 WorldSpaceTangent;
|
|
float3 WorldSpaceBiTangent;
|
|
float3 AbsoluteWorldSpacePosition;
|
|
float4 uv0;
|
|
float4 VertexColor;
|
|
};
|
|
struct PackedVaryingsMeshToPS
|
|
{
|
|
SV_POSITION_QUALIFIERS float4 positionCS : SV_POSITION;
|
|
float4 tangentWS : INTERP0;
|
|
float4 texCoord0 : INTERP1;
|
|
float4 texCoord1 : INTERP2;
|
|
float4 texCoord2 : INTERP3;
|
|
float4 color : INTERP4;
|
|
float3 positionRWS : INTERP5;
|
|
float3 normalWS : INTERP6;
|
|
#if UNITY_ANY_INSTANCING_ENABLED || defined(VARYINGS_NEED_INSTANCEID)
|
|
uint instanceID : CUSTOM_INSTANCE_ID;
|
|
#endif
|
|
};
|
|
|
|
PackedVaryingsMeshToPS PackVaryingsMeshToPS (VaryingsMeshToPS input)
|
|
{
|
|
PackedVaryingsMeshToPS output;
|
|
ZERO_INITIALIZE(PackedVaryingsMeshToPS, output);
|
|
output.positionCS = input.positionCS;
|
|
output.tangentWS.xyzw = input.tangentWS;
|
|
output.texCoord0.xyzw = input.texCoord0;
|
|
output.texCoord1.xyzw = input.texCoord1;
|
|
output.texCoord2.xyzw = input.texCoord2;
|
|
output.color.xyzw = input.color;
|
|
output.positionRWS.xyz = input.positionRWS;
|
|
output.normalWS.xyz = input.normalWS;
|
|
#if UNITY_ANY_INSTANCING_ENABLED || defined(VARYINGS_NEED_INSTANCEID)
|
|
output.instanceID = input.instanceID;
|
|
#endif
|
|
return output;
|
|
}
|
|
|
|
VaryingsMeshToPS UnpackVaryingsMeshToPS (PackedVaryingsMeshToPS input)
|
|
{
|
|
VaryingsMeshToPS output;
|
|
output.positionCS = input.positionCS;
|
|
output.tangentWS = input.tangentWS.xyzw;
|
|
output.texCoord0 = input.texCoord0.xyzw;
|
|
output.texCoord1 = input.texCoord1.xyzw;
|
|
output.texCoord2 = input.texCoord2.xyzw;
|
|
output.color = input.color.xyzw;
|
|
output.positionRWS = input.positionRWS.xyz;
|
|
output.normalWS = input.normalWS.xyz;
|
|
#if UNITY_ANY_INSTANCING_ENABLED || defined(VARYINGS_NEED_INSTANCEID)
|
|
output.instanceID = input.instanceID;
|
|
#endif
|
|
return output;
|
|
}
|
|
|
|
|
|
// --------------------------------------------------
|
|
// Graph
|
|
|
|
|
|
// Graph Functions
|
|
|
|
void Unity_Divide_float4(float4 A, float4 B, out float4 Out)
|
|
{
|
|
Out = A / B;
|
|
}
|
|
|
|
void Unity_Combine_float(float R, float G, float B, float A, out float4 RGBA, out float3 RGB, out float2 RG)
|
|
{
|
|
RGBA = float4(R, G, B, A);
|
|
RGB = float3(R, G, B);
|
|
RG = float2(R, G);
|
|
}
|
|
|
|
void Unity_Multiply_float4_float4(float4 A, float4 B, out float4 Out)
|
|
{
|
|
Out = A * B;
|
|
}
|
|
|
|
void Unity_Sign_float3(float3 In, out float3 Out)
|
|
{
|
|
Out = sign(In);
|
|
}
|
|
|
|
void Unity_Multiply_float2_float2(float2 A, float2 B, out float2 Out)
|
|
{
|
|
Out = A * B;
|
|
}
|
|
|
|
void Unity_Absolute_float3(float3 In, out float3 Out)
|
|
{
|
|
Out = abs(In);
|
|
}
|
|
|
|
void Unity_Power_float3(float3 A, float3 B, out float3 Out)
|
|
{
|
|
Out = pow(A, B);
|
|
}
|
|
|
|
void Unity_Multiply_float3_float3(float3 A, float3 B, out float3 Out)
|
|
{
|
|
Out = A * B;
|
|
}
|
|
|
|
void Unity_Multiply_float_float(float A, float B, out float Out)
|
|
{
|
|
Out = A * B;
|
|
}
|
|
|
|
void Unity_Add_float4(float4 A, float4 B, out float4 Out)
|
|
{
|
|
Out = A + B;
|
|
}
|
|
|
|
void Unity_Add_float(float A, float B, out float Out)
|
|
{
|
|
Out = A + B;
|
|
}
|
|
|
|
struct Bindings_TriplanarNM_bc609ed95f52591469ab35dbfe0efcea_float
|
|
{
|
|
float3 WorldSpaceNormal;
|
|
float3 AbsoluteWorldSpacePosition;
|
|
};
|
|
|
|
void SG_TriplanarNM_bc609ed95f52591469ab35dbfe0efcea_float(UnityTexture2D Texture2D_80A3D28F, float Vector1_41461AC9, float Vector1_E4D1C13A, UnitySamplerState _SamplerState, Bindings_TriplanarNM_bc609ed95f52591469ab35dbfe0efcea_float IN, out float4 XYZ_1, out float4 XZ_2, out float4 YZ_3, out float4 XY_4)
|
|
{
|
|
UnityTexture2D _Property_3e01b4d2fc68d48ba3acbba9d5881e59_Out_0_Texture2D = Texture2D_80A3D28F;
|
|
float _Split_89ed63cb625cb3878c183d0b71c03400_R_1_Float = IN.AbsoluteWorldSpacePosition[0];
|
|
float _Split_89ed63cb625cb3878c183d0b71c03400_G_2_Float = IN.AbsoluteWorldSpacePosition[1];
|
|
float _Split_89ed63cb625cb3878c183d0b71c03400_B_3_Float = IN.AbsoluteWorldSpacePosition[2];
|
|
float _Split_89ed63cb625cb3878c183d0b71c03400_A_4_Float = 0;
|
|
float4 _Combine_cf2d04ff119ad88493f6460431765cbb_RGBA_4_Vector4;
|
|
float3 _Combine_cf2d04ff119ad88493f6460431765cbb_RGB_5_Vector3;
|
|
float2 _Combine_cf2d04ff119ad88493f6460431765cbb_RG_6_Vector2;
|
|
Unity_Combine_float(_Split_89ed63cb625cb3878c183d0b71c03400_R_1_Float, _Split_89ed63cb625cb3878c183d0b71c03400_B_3_Float, float(0), float(0), _Combine_cf2d04ff119ad88493f6460431765cbb_RGBA_4_Vector4, _Combine_cf2d04ff119ad88493f6460431765cbb_RGB_5_Vector3, _Combine_cf2d04ff119ad88493f6460431765cbb_RG_6_Vector2);
|
|
float _Property_47988ec10c0c18879d461e00bed806e7_Out_0_Float = Vector1_41461AC9;
|
|
float4 _Multiply_14cec4902d0a00829e4555071a1b8ad1_Out_2_Vector4;
|
|
Unity_Multiply_float4_float4(_Combine_cf2d04ff119ad88493f6460431765cbb_RGBA_4_Vector4, (_Property_47988ec10c0c18879d461e00bed806e7_Out_0_Float.xxxx), _Multiply_14cec4902d0a00829e4555071a1b8ad1_Out_2_Vector4);
|
|
float3 _Sign_b826e0ff2d95ec8cb2b2cbbd7ea2eab6_Out_1_Vector3;
|
|
Unity_Sign_float3(IN.WorldSpaceNormal, _Sign_b826e0ff2d95ec8cb2b2cbbd7ea2eab6_Out_1_Vector3);
|
|
float _Split_742547a7039de986a646d04c157ae549_R_1_Float = _Sign_b826e0ff2d95ec8cb2b2cbbd7ea2eab6_Out_1_Vector3[0];
|
|
float _Split_742547a7039de986a646d04c157ae549_G_2_Float = _Sign_b826e0ff2d95ec8cb2b2cbbd7ea2eab6_Out_1_Vector3[1];
|
|
float _Split_742547a7039de986a646d04c157ae549_B_3_Float = _Sign_b826e0ff2d95ec8cb2b2cbbd7ea2eab6_Out_1_Vector3[2];
|
|
float _Split_742547a7039de986a646d04c157ae549_A_4_Float = 0;
|
|
float2 _Vector2_40a8919e571ec18499de72022c155b38_Out_0_Vector2 = float2(_Split_742547a7039de986a646d04c157ae549_G_2_Float, float(1));
|
|
float2 _Multiply_5fa32af59cdca88389832336b2268bd5_Out_2_Vector2;
|
|
Unity_Multiply_float2_float2((_Multiply_14cec4902d0a00829e4555071a1b8ad1_Out_2_Vector4.xy), _Vector2_40a8919e571ec18499de72022c155b38_Out_0_Vector2, _Multiply_5fa32af59cdca88389832336b2268bd5_Out_2_Vector2);
|
|
UnitySamplerState _Property_544c7fa9dfe54e30a0df9d605340a374_Out_0_SamplerState = _SamplerState;
|
|
float4 _SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_RGBA_0_Vector4 = SAMPLE_TEXTURE2D(_Property_3e01b4d2fc68d48ba3acbba9d5881e59_Out_0_Texture2D.tex, _Property_544c7fa9dfe54e30a0df9d605340a374_Out_0_SamplerState.samplerstate, _Property_3e01b4d2fc68d48ba3acbba9d5881e59_Out_0_Texture2D.GetTransformedUV(_Multiply_5fa32af59cdca88389832336b2268bd5_Out_2_Vector2) );
|
|
float _SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_R_4_Float = _SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_RGBA_0_Vector4.r;
|
|
float _SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_G_5_Float = _SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_RGBA_0_Vector4.g;
|
|
float _SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_B_6_Float = _SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_RGBA_0_Vector4.b;
|
|
float _SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_A_7_Float = _SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_RGBA_0_Vector4.a;
|
|
float3 _Absolute_644b798714827680b39bf5d34f70385f_Out_1_Vector3;
|
|
Unity_Absolute_float3(IN.WorldSpaceNormal, _Absolute_644b798714827680b39bf5d34f70385f_Out_1_Vector3);
|
|
float _Property_adc4c59482221c8aad681c6558728ac9_Out_0_Float = Vector1_E4D1C13A;
|
|
float3 _Power_ee478822a04529849ae8df1636c29fe2_Out_2_Vector3;
|
|
Unity_Power_float3(_Absolute_644b798714827680b39bf5d34f70385f_Out_1_Vector3, (_Property_adc4c59482221c8aad681c6558728ac9_Out_0_Float.xxx), _Power_ee478822a04529849ae8df1636c29fe2_Out_2_Vector3);
|
|
float3 _Multiply_b386a937554d73828e437d126d69608b_Out_2_Vector3;
|
|
Unity_Multiply_float3_float3(_Power_ee478822a04529849ae8df1636c29fe2_Out_2_Vector3, _Power_ee478822a04529849ae8df1636c29fe2_Out_2_Vector3, _Multiply_b386a937554d73828e437d126d69608b_Out_2_Vector3);
|
|
float _Split_ae83014fcbd9f7879a0b91fa66dc9718_R_1_Float = _Multiply_b386a937554d73828e437d126d69608b_Out_2_Vector3[0];
|
|
float _Split_ae83014fcbd9f7879a0b91fa66dc9718_G_2_Float = _Multiply_b386a937554d73828e437d126d69608b_Out_2_Vector3[1];
|
|
float _Split_ae83014fcbd9f7879a0b91fa66dc9718_B_3_Float = _Multiply_b386a937554d73828e437d126d69608b_Out_2_Vector3[2];
|
|
float _Split_ae83014fcbd9f7879a0b91fa66dc9718_A_4_Float = 0;
|
|
float4 _Multiply_2e1040ca9c98d085ace76ee93f094039_Out_2_Vector4;
|
|
Unity_Multiply_float4_float4(_SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_RGBA_0_Vector4, (_Split_ae83014fcbd9f7879a0b91fa66dc9718_G_2_Float.xxxx), _Multiply_2e1040ca9c98d085ace76ee93f094039_Out_2_Vector4);
|
|
float4 _Combine_192c2c4a69be588b90ca005a32e22552_RGBA_4_Vector4;
|
|
float3 _Combine_192c2c4a69be588b90ca005a32e22552_RGB_5_Vector3;
|
|
float2 _Combine_192c2c4a69be588b90ca005a32e22552_RG_6_Vector2;
|
|
Unity_Combine_float(_Split_89ed63cb625cb3878c183d0b71c03400_R_1_Float, _Split_89ed63cb625cb3878c183d0b71c03400_G_2_Float, float(0), float(0), _Combine_192c2c4a69be588b90ca005a32e22552_RGBA_4_Vector4, _Combine_192c2c4a69be588b90ca005a32e22552_RGB_5_Vector3, _Combine_192c2c4a69be588b90ca005a32e22552_RG_6_Vector2);
|
|
float4 _Multiply_138240d0d4846e87b0febabec0d6891b_Out_2_Vector4;
|
|
Unity_Multiply_float4_float4(_Combine_192c2c4a69be588b90ca005a32e22552_RGBA_4_Vector4, (_Property_47988ec10c0c18879d461e00bed806e7_Out_0_Float.xxxx), _Multiply_138240d0d4846e87b0febabec0d6891b_Out_2_Vector4);
|
|
float _Multiply_014402ded5a3988a8c18ba07636ea5a7_Out_2_Float;
|
|
Unity_Multiply_float_float(_Split_742547a7039de986a646d04c157ae549_B_3_Float, -1, _Multiply_014402ded5a3988a8c18ba07636ea5a7_Out_2_Float);
|
|
float2 _Vector2_caa25d55d456a58982bdfc39b1b43f3f_Out_0_Vector2 = float2(_Multiply_014402ded5a3988a8c18ba07636ea5a7_Out_2_Float, float(1));
|
|
float2 _Multiply_a67201b6e1a0a28c98cd9d06e8b09543_Out_2_Vector2;
|
|
Unity_Multiply_float2_float2((_Multiply_138240d0d4846e87b0febabec0d6891b_Out_2_Vector4.xy), _Vector2_caa25d55d456a58982bdfc39b1b43f3f_Out_0_Vector2, _Multiply_a67201b6e1a0a28c98cd9d06e8b09543_Out_2_Vector2);
|
|
float4 _SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_RGBA_0_Vector4 = SAMPLE_TEXTURE2D(_Property_3e01b4d2fc68d48ba3acbba9d5881e59_Out_0_Texture2D.tex, _Property_544c7fa9dfe54e30a0df9d605340a374_Out_0_SamplerState.samplerstate, _Property_3e01b4d2fc68d48ba3acbba9d5881e59_Out_0_Texture2D.GetTransformedUV(_Multiply_a67201b6e1a0a28c98cd9d06e8b09543_Out_2_Vector2) );
|
|
float _SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_R_4_Float = _SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_RGBA_0_Vector4.r;
|
|
float _SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_G_5_Float = _SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_RGBA_0_Vector4.g;
|
|
float _SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_B_6_Float = _SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_RGBA_0_Vector4.b;
|
|
float _SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_A_7_Float = _SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_RGBA_0_Vector4.a;
|
|
float4 _Multiply_7bb4009c92b108849ac6ca92bc1442f2_Out_2_Vector4;
|
|
Unity_Multiply_float4_float4(_SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_RGBA_0_Vector4, (_Split_ae83014fcbd9f7879a0b91fa66dc9718_B_3_Float.xxxx), _Multiply_7bb4009c92b108849ac6ca92bc1442f2_Out_2_Vector4);
|
|
float4 _Combine_1e9ffdba42d6918fb7a4b185f1585d2a_RGBA_4_Vector4;
|
|
float3 _Combine_1e9ffdba42d6918fb7a4b185f1585d2a_RGB_5_Vector3;
|
|
float2 _Combine_1e9ffdba42d6918fb7a4b185f1585d2a_RG_6_Vector2;
|
|
Unity_Combine_float(_Split_89ed63cb625cb3878c183d0b71c03400_B_3_Float, _Split_89ed63cb625cb3878c183d0b71c03400_G_2_Float, float(0), float(0), _Combine_1e9ffdba42d6918fb7a4b185f1585d2a_RGBA_4_Vector4, _Combine_1e9ffdba42d6918fb7a4b185f1585d2a_RGB_5_Vector3, _Combine_1e9ffdba42d6918fb7a4b185f1585d2a_RG_6_Vector2);
|
|
float4 _Multiply_2c0864423b014f8b8af8523f68cbb63c_Out_2_Vector4;
|
|
Unity_Multiply_float4_float4(_Combine_1e9ffdba42d6918fb7a4b185f1585d2a_RGBA_4_Vector4, (_Property_47988ec10c0c18879d461e00bed806e7_Out_0_Float.xxxx), _Multiply_2c0864423b014f8b8af8523f68cbb63c_Out_2_Vector4);
|
|
float2 _Vector2_54dfd40df2fc78809955dd272f2cf0c3_Out_0_Vector2 = float2(_Split_742547a7039de986a646d04c157ae549_R_1_Float, float(1));
|
|
float2 _Multiply_addbd5fcede95f80bbb806c94e49ef63_Out_2_Vector2;
|
|
Unity_Multiply_float2_float2((_Multiply_2c0864423b014f8b8af8523f68cbb63c_Out_2_Vector4.xy), _Vector2_54dfd40df2fc78809955dd272f2cf0c3_Out_0_Vector2, _Multiply_addbd5fcede95f80bbb806c94e49ef63_Out_2_Vector2);
|
|
float4 _SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_RGBA_0_Vector4 = SAMPLE_TEXTURE2D(_Property_3e01b4d2fc68d48ba3acbba9d5881e59_Out_0_Texture2D.tex, _Property_544c7fa9dfe54e30a0df9d605340a374_Out_0_SamplerState.samplerstate, _Property_3e01b4d2fc68d48ba3acbba9d5881e59_Out_0_Texture2D.GetTransformedUV(_Multiply_addbd5fcede95f80bbb806c94e49ef63_Out_2_Vector2) );
|
|
float _SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_R_4_Float = _SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_RGBA_0_Vector4.r;
|
|
float _SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_G_5_Float = _SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_RGBA_0_Vector4.g;
|
|
float _SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_B_6_Float = _SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_RGBA_0_Vector4.b;
|
|
float _SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_A_7_Float = _SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_RGBA_0_Vector4.a;
|
|
float4 _Multiply_77818c22e359fc8cbb7dd20216a8db72_Out_2_Vector4;
|
|
Unity_Multiply_float4_float4(_SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_RGBA_0_Vector4, (_Split_ae83014fcbd9f7879a0b91fa66dc9718_R_1_Float.xxxx), _Multiply_77818c22e359fc8cbb7dd20216a8db72_Out_2_Vector4);
|
|
float4 _Add_769d9ee909c9238dbbf72d2800a2f268_Out_2_Vector4;
|
|
Unity_Add_float4(_Multiply_7bb4009c92b108849ac6ca92bc1442f2_Out_2_Vector4, _Multiply_77818c22e359fc8cbb7dd20216a8db72_Out_2_Vector4, _Add_769d9ee909c9238dbbf72d2800a2f268_Out_2_Vector4);
|
|
float4 _Add_14295f72880e4b87a1baf1ced943ac40_Out_2_Vector4;
|
|
Unity_Add_float4(_Multiply_2e1040ca9c98d085ace76ee93f094039_Out_2_Vector4, _Add_769d9ee909c9238dbbf72d2800a2f268_Out_2_Vector4, _Add_14295f72880e4b87a1baf1ced943ac40_Out_2_Vector4);
|
|
float _Add_e59af300bba2498db32eac1412123447_Out_2_Float;
|
|
Unity_Add_float(_Split_ae83014fcbd9f7879a0b91fa66dc9718_R_1_Float, _Split_ae83014fcbd9f7879a0b91fa66dc9718_G_2_Float, _Add_e59af300bba2498db32eac1412123447_Out_2_Float);
|
|
float _Add_e855069f047fae8ea9027d56acb61e56_Out_2_Float;
|
|
Unity_Add_float(_Add_e59af300bba2498db32eac1412123447_Out_2_Float, _Split_ae83014fcbd9f7879a0b91fa66dc9718_B_3_Float, _Add_e855069f047fae8ea9027d56acb61e56_Out_2_Float);
|
|
float4 _Divide_91ae4b94f1d9b78e99d0472293b8098c_Out_2_Vector4;
|
|
Unity_Divide_float4(_Add_14295f72880e4b87a1baf1ced943ac40_Out_2_Vector4, (_Add_e855069f047fae8ea9027d56acb61e56_Out_2_Float.xxxx), _Divide_91ae4b94f1d9b78e99d0472293b8098c_Out_2_Vector4);
|
|
XYZ_1 = _Divide_91ae4b94f1d9b78e99d0472293b8098c_Out_2_Vector4;
|
|
XZ_2 = _SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_RGBA_0_Vector4;
|
|
YZ_3 = _SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_RGBA_0_Vector4;
|
|
XY_4 = _SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_RGBA_0_Vector4;
|
|
}
|
|
|
|
void Unity_Clamp_float(float In, float Min, float Max, out float Out)
|
|
{
|
|
Out = clamp(In, Min, Max);
|
|
}
|
|
|
|
void Unity_Absolute_float(float In, out float Out)
|
|
{
|
|
Out = abs(In);
|
|
}
|
|
|
|
void Unity_Power_float(float A, float B, out float Out)
|
|
{
|
|
Out = pow(A, B);
|
|
}
|
|
|
|
void Unity_Clamp_float4(float4 In, float4 Min, float4 Max, out float4 Out)
|
|
{
|
|
Out = clamp(In, Min, Max);
|
|
}
|
|
|
|
void Unity_Branch_float4(float Predicate, float4 True, float4 False, out float4 Out)
|
|
{
|
|
Out = Predicate ? True : False;
|
|
}
|
|
|
|
void Unity_TilingAndOffset_float(float2 UV, float2 Tiling, float2 Offset, out float2 Out)
|
|
{
|
|
Out = UV * Tiling + Offset;
|
|
}
|
|
|
|
void Unity_Saturate_float(float In, out float Out)
|
|
{
|
|
Out = saturate(In);
|
|
}
|
|
|
|
void Unity_SquareRoot_float4(float4 In, out float4 Out)
|
|
{
|
|
Out = sqrt(In);
|
|
}
|
|
|
|
void Unity_Sign_float(float In, out float Out)
|
|
{
|
|
Out = sign(In);
|
|
}
|
|
|
|
void Unity_Ceiling_float(float In, out float Out)
|
|
{
|
|
Out = ceil(In);
|
|
}
|
|
|
|
void Unity_Lerp_float4(float4 A, float4 B, float4 T, out float4 Out)
|
|
{
|
|
Out = lerp(A, B, T);
|
|
}
|
|
|
|
struct Bindings_BlendOverlayBaseColor_acdb3dfca72bd6b42bbc35f4613331a2_float
|
|
{
|
|
};
|
|
|
|
void SG_BlendOverlayBaseColor_acdb3dfca72bd6b42bbc35f4613331a2_float(float4 Color_9AA111D3, float Vector1_FBE622A2, float Vector1_8C15C351, Bindings_BlendOverlayBaseColor_acdb3dfca72bd6b42bbc35f4613331a2_float IN, out float3 OutVector4_1)
|
|
{
|
|
float4 _Property_012510d774fb7f8b860f5270dca4500f_Out_0_Vector4 = Color_9AA111D3;
|
|
float4 _SquareRoot_c2c57d0223a9538aa9240890c3cacb0c_Out_1_Vector4;
|
|
Unity_SquareRoot_float4(_Property_012510d774fb7f8b860f5270dca4500f_Out_0_Vector4, _SquareRoot_c2c57d0223a9538aa9240890c3cacb0c_Out_1_Vector4);
|
|
float _Property_a00e29241d12f983b30177515b367ec9_Out_0_Float = Vector1_FBE622A2;
|
|
float _Sign_343a45ede7349283a681c6bd9998fd8e_Out_1_Float;
|
|
Unity_Sign_float(_Property_a00e29241d12f983b30177515b367ec9_Out_0_Float, _Sign_343a45ede7349283a681c6bd9998fd8e_Out_1_Float);
|
|
float _Add_681019b8f5d3d68bb482d419c9fc61a9_Out_2_Float;
|
|
Unity_Add_float(_Sign_343a45ede7349283a681c6bd9998fd8e_Out_1_Float, float(1), _Add_681019b8f5d3d68bb482d419c9fc61a9_Out_2_Float);
|
|
float _Multiply_e8f4cb722712a880ac0db6c7461427f7_Out_2_Float;
|
|
Unity_Multiply_float_float(_Add_681019b8f5d3d68bb482d419c9fc61a9_Out_2_Float, 0.5, _Multiply_e8f4cb722712a880ac0db6c7461427f7_Out_2_Float);
|
|
float _Ceiling_95ad15988aa9b98184875fa754feae01_Out_1_Float;
|
|
Unity_Ceiling_float(_Multiply_e8f4cb722712a880ac0db6c7461427f7_Out_2_Float, _Ceiling_95ad15988aa9b98184875fa754feae01_Out_1_Float);
|
|
float _Property_2db1c747a05ee284a8b00076062f91a4_Out_0_Float = Vector1_8C15C351;
|
|
float _Multiply_9564ecda5193bc8286d9ff771c9226cd_Out_2_Float;
|
|
Unity_Multiply_float_float(_Property_2db1c747a05ee284a8b00076062f91a4_Out_0_Float, _Property_2db1c747a05ee284a8b00076062f91a4_Out_0_Float, _Multiply_9564ecda5193bc8286d9ff771c9226cd_Out_2_Float);
|
|
float4 _Lerp_b3cdb01fc3c5b988ac9b184943bf7c01_Out_3_Vector4;
|
|
Unity_Lerp_float4(_SquareRoot_c2c57d0223a9538aa9240890c3cacb0c_Out_1_Vector4, (_Ceiling_95ad15988aa9b98184875fa754feae01_Out_1_Float.xxxx), (_Multiply_9564ecda5193bc8286d9ff771c9226cd_Out_2_Float.xxxx), _Lerp_b3cdb01fc3c5b988ac9b184943bf7c01_Out_3_Vector4);
|
|
float4 _Multiply_39d1daff98488f8ea2cd794ad4f20926_Out_2_Vector4;
|
|
Unity_Multiply_float4_float4(_Lerp_b3cdb01fc3c5b988ac9b184943bf7c01_Out_3_Vector4, _Lerp_b3cdb01fc3c5b988ac9b184943bf7c01_Out_3_Vector4, _Multiply_39d1daff98488f8ea2cd794ad4f20926_Out_2_Vector4);
|
|
OutVector4_1 = (_Multiply_39d1daff98488f8ea2cd794ad4f20926_Out_2_Vector4.xyz);
|
|
}
|
|
|
|
void Unity_Add_float2(float2 A, float2 B, out float2 Out)
|
|
{
|
|
Out = A + B;
|
|
}
|
|
|
|
void Unity_DotProduct_float2(float2 A, float2 B, out float Out)
|
|
{
|
|
Out = dot(A, B);
|
|
}
|
|
|
|
void Unity_OneMinus_float(float In, out float Out)
|
|
{
|
|
Out = 1 - In;
|
|
}
|
|
|
|
void Unity_SquareRoot_float(float In, out float Out)
|
|
{
|
|
Out = sqrt(In);
|
|
}
|
|
|
|
void Unity_Add_float3(float3 A, float3 B, out float3 Out)
|
|
{
|
|
Out = A + B;
|
|
}
|
|
|
|
void Unity_Divide_float3(float3 A, float3 B, out float3 Out)
|
|
{
|
|
Out = A / B;
|
|
}
|
|
|
|
void Unity_Normalize_float3(float3 In, out float3 Out)
|
|
{
|
|
Out = normalize(In);
|
|
}
|
|
|
|
struct Bindings_TriplanarNMn_059da9746584140498cd018db3c76047_float
|
|
{
|
|
float3 WorldSpaceNormal;
|
|
float3 WorldSpaceTangent;
|
|
float3 WorldSpaceBiTangent;
|
|
float3 AbsoluteWorldSpacePosition;
|
|
};
|
|
|
|
void SG_TriplanarNMn_059da9746584140498cd018db3c76047_float(UnityTexture2D Texture2D_80A3D28F, float Vector1_41461AC9, float Vector1_E4D1C13A, UnitySamplerState _SamplerState, Bindings_TriplanarNMn_059da9746584140498cd018db3c76047_float IN, out float4 XYZ_1, out float4 XZ_2, out float4 YZ_3, out float4 XY_4)
|
|
{
|
|
UnityTexture2D _Property_3e01b4d2fc68d48ba3acbba9d5881e59_Out_0_Texture2D = Texture2D_80A3D28F;
|
|
float _Split_89ed63cb625cb3878c183d0b71c03400_R_1_Float = IN.AbsoluteWorldSpacePosition[0];
|
|
float _Split_89ed63cb625cb3878c183d0b71c03400_G_2_Float = IN.AbsoluteWorldSpacePosition[1];
|
|
float _Split_89ed63cb625cb3878c183d0b71c03400_B_3_Float = IN.AbsoluteWorldSpacePosition[2];
|
|
float _Split_89ed63cb625cb3878c183d0b71c03400_A_4_Float = 0;
|
|
float4 _Combine_cf2d04ff119ad88493f6460431765cbb_RGBA_4_Vector4;
|
|
float3 _Combine_cf2d04ff119ad88493f6460431765cbb_RGB_5_Vector3;
|
|
float2 _Combine_cf2d04ff119ad88493f6460431765cbb_RG_6_Vector2;
|
|
Unity_Combine_float(_Split_89ed63cb625cb3878c183d0b71c03400_R_1_Float, _Split_89ed63cb625cb3878c183d0b71c03400_B_3_Float, float(0), float(0), _Combine_cf2d04ff119ad88493f6460431765cbb_RGBA_4_Vector4, _Combine_cf2d04ff119ad88493f6460431765cbb_RGB_5_Vector3, _Combine_cf2d04ff119ad88493f6460431765cbb_RG_6_Vector2);
|
|
float _Property_47988ec10c0c18879d461e00bed806e7_Out_0_Float = Vector1_41461AC9;
|
|
float4 _Multiply_14cec4902d0a00829e4555071a1b8ad1_Out_2_Vector4;
|
|
Unity_Multiply_float4_float4(_Combine_cf2d04ff119ad88493f6460431765cbb_RGBA_4_Vector4, (_Property_47988ec10c0c18879d461e00bed806e7_Out_0_Float.xxxx), _Multiply_14cec4902d0a00829e4555071a1b8ad1_Out_2_Vector4);
|
|
float3 _Sign_3a6ebf59931cf08cb0482e0144ddac24_Out_1_Vector3;
|
|
Unity_Sign_float3(IN.WorldSpaceNormal, _Sign_3a6ebf59931cf08cb0482e0144ddac24_Out_1_Vector3);
|
|
float _Split_6299d4ddcc4c74828aea40a46fdb896e_R_1_Float = _Sign_3a6ebf59931cf08cb0482e0144ddac24_Out_1_Vector3[0];
|
|
float _Split_6299d4ddcc4c74828aea40a46fdb896e_G_2_Float = _Sign_3a6ebf59931cf08cb0482e0144ddac24_Out_1_Vector3[1];
|
|
float _Split_6299d4ddcc4c74828aea40a46fdb896e_B_3_Float = _Sign_3a6ebf59931cf08cb0482e0144ddac24_Out_1_Vector3[2];
|
|
float _Split_6299d4ddcc4c74828aea40a46fdb896e_A_4_Float = 0;
|
|
float2 _Vector2_b76cb1842101e58b9e636d49b075c612_Out_0_Vector2 = float2(_Split_6299d4ddcc4c74828aea40a46fdb896e_G_2_Float, float(1));
|
|
float2 _Multiply_a87753ad90594382bf3a3a95abbadbc8_Out_2_Vector2;
|
|
Unity_Multiply_float2_float2((_Multiply_14cec4902d0a00829e4555071a1b8ad1_Out_2_Vector4.xy), _Vector2_b76cb1842101e58b9e636d49b075c612_Out_0_Vector2, _Multiply_a87753ad90594382bf3a3a95abbadbc8_Out_2_Vector2);
|
|
UnitySamplerState _Property_8a2b8589cd3a42a1879a29c28e4f711f_Out_0_SamplerState = _SamplerState;
|
|
float4 _SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_RGBA_0_Vector4 = SAMPLE_TEXTURE2D(_Property_3e01b4d2fc68d48ba3acbba9d5881e59_Out_0_Texture2D.tex, _Property_8a2b8589cd3a42a1879a29c28e4f711f_Out_0_SamplerState.samplerstate, _Property_3e01b4d2fc68d48ba3acbba9d5881e59_Out_0_Texture2D.GetTransformedUV(_Multiply_a87753ad90594382bf3a3a95abbadbc8_Out_2_Vector2) );
|
|
_SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_RGBA_0_Vector4.rgb = UnpackNormal(_SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_RGBA_0_Vector4);
|
|
float _SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_R_4_Float = _SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_RGBA_0_Vector4.r;
|
|
float _SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_G_5_Float = _SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_RGBA_0_Vector4.g;
|
|
float _SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_B_6_Float = _SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_RGBA_0_Vector4.b;
|
|
float _SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_A_7_Float = _SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_RGBA_0_Vector4.a;
|
|
float2 _Vector2_ad6bd100e273d78fa409a30a77bfa2cc_Out_0_Vector2 = float2(_SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_R_4_Float, _SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_G_5_Float);
|
|
float2 _Multiply_31e8db88ee20c985a9850d1a58f3282b_Out_2_Vector2;
|
|
Unity_Multiply_float2_float2(_Vector2_ad6bd100e273d78fa409a30a77bfa2cc_Out_0_Vector2, _Vector2_b76cb1842101e58b9e636d49b075c612_Out_0_Vector2, _Multiply_31e8db88ee20c985a9850d1a58f3282b_Out_2_Vector2);
|
|
float _Split_5ed44bf2eca0868f81eb18100f49d1fa_R_1_Float = IN.WorldSpaceNormal[0];
|
|
float _Split_5ed44bf2eca0868f81eb18100f49d1fa_G_2_Float = IN.WorldSpaceNormal[1];
|
|
float _Split_5ed44bf2eca0868f81eb18100f49d1fa_B_3_Float = IN.WorldSpaceNormal[2];
|
|
float _Split_5ed44bf2eca0868f81eb18100f49d1fa_A_4_Float = 0;
|
|
float2 _Vector2_70e5837843f28b8b9d64cada3697bd5a_Out_0_Vector2 = float2(_Split_5ed44bf2eca0868f81eb18100f49d1fa_R_1_Float, _Split_5ed44bf2eca0868f81eb18100f49d1fa_B_3_Float);
|
|
float2 _Add_1145b2f896593d80aa864a34e6702562_Out_2_Vector2;
|
|
Unity_Add_float2(_Multiply_31e8db88ee20c985a9850d1a58f3282b_Out_2_Vector2, _Vector2_70e5837843f28b8b9d64cada3697bd5a_Out_0_Vector2, _Add_1145b2f896593d80aa864a34e6702562_Out_2_Vector2);
|
|
float _Split_2bc77ca2d17bd78cb2383770ce50b179_R_1_Float = _Add_1145b2f896593d80aa864a34e6702562_Out_2_Vector2[0];
|
|
float _Split_2bc77ca2d17bd78cb2383770ce50b179_G_2_Float = _Add_1145b2f896593d80aa864a34e6702562_Out_2_Vector2[1];
|
|
float _Split_2bc77ca2d17bd78cb2383770ce50b179_B_3_Float = 0;
|
|
float _Split_2bc77ca2d17bd78cb2383770ce50b179_A_4_Float = 0;
|
|
float _Multiply_e4fe778b81456d819c52bb414cd95968_Out_2_Float;
|
|
Unity_Multiply_float_float(_SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_B_6_Float, _Split_5ed44bf2eca0868f81eb18100f49d1fa_G_2_Float, _Multiply_e4fe778b81456d819c52bb414cd95968_Out_2_Float);
|
|
float3 _Vector3_08f62c5c01619e849f1a7d85a44531ac_Out_0_Vector3 = float3(_Split_2bc77ca2d17bd78cb2383770ce50b179_R_1_Float, _Multiply_e4fe778b81456d819c52bb414cd95968_Out_2_Float, _Split_2bc77ca2d17bd78cb2383770ce50b179_G_2_Float);
|
|
float3 _Absolute_644b798714827680b39bf5d34f70385f_Out_1_Vector3;
|
|
Unity_Absolute_float3(IN.WorldSpaceNormal, _Absolute_644b798714827680b39bf5d34f70385f_Out_1_Vector3);
|
|
float _Property_adc4c59482221c8aad681c6558728ac9_Out_0_Float = Vector1_E4D1C13A;
|
|
float3 _Power_ee478822a04529849ae8df1636c29fe2_Out_2_Vector3;
|
|
Unity_Power_float3(_Absolute_644b798714827680b39bf5d34f70385f_Out_1_Vector3, (_Property_adc4c59482221c8aad681c6558728ac9_Out_0_Float.xxx), _Power_ee478822a04529849ae8df1636c29fe2_Out_2_Vector3);
|
|
float3 _Multiply_b386a937554d73828e437d126d69608b_Out_2_Vector3;
|
|
Unity_Multiply_float3_float3(_Power_ee478822a04529849ae8df1636c29fe2_Out_2_Vector3, _Power_ee478822a04529849ae8df1636c29fe2_Out_2_Vector3, _Multiply_b386a937554d73828e437d126d69608b_Out_2_Vector3);
|
|
float _Split_ae83014fcbd9f7879a0b91fa66dc9718_R_1_Float = _Multiply_b386a937554d73828e437d126d69608b_Out_2_Vector3[0];
|
|
float _Split_ae83014fcbd9f7879a0b91fa66dc9718_G_2_Float = _Multiply_b386a937554d73828e437d126d69608b_Out_2_Vector3[1];
|
|
float _Split_ae83014fcbd9f7879a0b91fa66dc9718_B_3_Float = _Multiply_b386a937554d73828e437d126d69608b_Out_2_Vector3[2];
|
|
float _Split_ae83014fcbd9f7879a0b91fa66dc9718_A_4_Float = 0;
|
|
float3 _Multiply_2e1040ca9c98d085ace76ee93f094039_Out_2_Vector3;
|
|
Unity_Multiply_float3_float3(_Vector3_08f62c5c01619e849f1a7d85a44531ac_Out_0_Vector3, (_Split_ae83014fcbd9f7879a0b91fa66dc9718_G_2_Float.xxx), _Multiply_2e1040ca9c98d085ace76ee93f094039_Out_2_Vector3);
|
|
float4 _Combine_192c2c4a69be588b90ca005a32e22552_RGBA_4_Vector4;
|
|
float3 _Combine_192c2c4a69be588b90ca005a32e22552_RGB_5_Vector3;
|
|
float2 _Combine_192c2c4a69be588b90ca005a32e22552_RG_6_Vector2;
|
|
Unity_Combine_float(_Split_89ed63cb625cb3878c183d0b71c03400_R_1_Float, _Split_89ed63cb625cb3878c183d0b71c03400_G_2_Float, float(0), float(0), _Combine_192c2c4a69be588b90ca005a32e22552_RGBA_4_Vector4, _Combine_192c2c4a69be588b90ca005a32e22552_RGB_5_Vector3, _Combine_192c2c4a69be588b90ca005a32e22552_RG_6_Vector2);
|
|
float4 _Multiply_138240d0d4846e87b0febabec0d6891b_Out_2_Vector4;
|
|
Unity_Multiply_float4_float4(_Combine_192c2c4a69be588b90ca005a32e22552_RGBA_4_Vector4, (_Property_47988ec10c0c18879d461e00bed806e7_Out_0_Float.xxxx), _Multiply_138240d0d4846e87b0febabec0d6891b_Out_2_Vector4);
|
|
float _Multiply_de711f4a4614bd89a463b53374cf4036_Out_2_Float;
|
|
Unity_Multiply_float_float(_Split_6299d4ddcc4c74828aea40a46fdb896e_B_3_Float, -1, _Multiply_de711f4a4614bd89a463b53374cf4036_Out_2_Float);
|
|
float2 _Vector2_4ed33f0c73b2698fa6f3c1b77fe76808_Out_0_Vector2 = float2(_Multiply_de711f4a4614bd89a463b53374cf4036_Out_2_Float, float(1));
|
|
float2 _Multiply_2af6058cc6ccb88caefd2799bb5941e8_Out_2_Vector2;
|
|
Unity_Multiply_float2_float2((_Multiply_138240d0d4846e87b0febabec0d6891b_Out_2_Vector4.xy), _Vector2_4ed33f0c73b2698fa6f3c1b77fe76808_Out_0_Vector2, _Multiply_2af6058cc6ccb88caefd2799bb5941e8_Out_2_Vector2);
|
|
float4 _SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_RGBA_0_Vector4 = SAMPLE_TEXTURE2D(_Property_3e01b4d2fc68d48ba3acbba9d5881e59_Out_0_Texture2D.tex, _Property_8a2b8589cd3a42a1879a29c28e4f711f_Out_0_SamplerState.samplerstate, _Property_3e01b4d2fc68d48ba3acbba9d5881e59_Out_0_Texture2D.GetTransformedUV(_Multiply_2af6058cc6ccb88caefd2799bb5941e8_Out_2_Vector2) );
|
|
_SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_RGBA_0_Vector4.rgb = UnpackNormal(_SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_RGBA_0_Vector4);
|
|
float _SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_R_4_Float = _SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_RGBA_0_Vector4.r;
|
|
float _SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_G_5_Float = _SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_RGBA_0_Vector4.g;
|
|
float _SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_B_6_Float = _SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_RGBA_0_Vector4.b;
|
|
float _SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_A_7_Float = _SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_RGBA_0_Vector4.a;
|
|
float2 _Vector2_fe9aedd4528c7486ada4abdca0b0944e_Out_0_Vector2 = float2(_SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_R_4_Float, _SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_G_5_Float);
|
|
float2 _Multiply_02b9b4665ad9918d8721bcaddc82f06f_Out_2_Vector2;
|
|
Unity_Multiply_float2_float2(_Vector2_fe9aedd4528c7486ada4abdca0b0944e_Out_0_Vector2, _Vector2_4ed33f0c73b2698fa6f3c1b77fe76808_Out_0_Vector2, _Multiply_02b9b4665ad9918d8721bcaddc82f06f_Out_2_Vector2);
|
|
float2 _Vector2_a74a85274da15181abb63cc5e8df0de1_Out_0_Vector2 = float2(_Split_5ed44bf2eca0868f81eb18100f49d1fa_R_1_Float, _Split_5ed44bf2eca0868f81eb18100f49d1fa_G_2_Float);
|
|
float2 _Add_b227c84042055e8faa1a9fdc69529707_Out_2_Vector2;
|
|
Unity_Add_float2(_Multiply_02b9b4665ad9918d8721bcaddc82f06f_Out_2_Vector2, _Vector2_a74a85274da15181abb63cc5e8df0de1_Out_0_Vector2, _Add_b227c84042055e8faa1a9fdc69529707_Out_2_Vector2);
|
|
float _Split_2cfb9eacd8762483941459cdf28bda97_R_1_Float = _Add_b227c84042055e8faa1a9fdc69529707_Out_2_Vector2[0];
|
|
float _Split_2cfb9eacd8762483941459cdf28bda97_G_2_Float = _Add_b227c84042055e8faa1a9fdc69529707_Out_2_Vector2[1];
|
|
float _Split_2cfb9eacd8762483941459cdf28bda97_B_3_Float = 0;
|
|
float _Split_2cfb9eacd8762483941459cdf28bda97_A_4_Float = 0;
|
|
float _Multiply_1d65ce08ce672087879125f2e13c4004_Out_2_Float;
|
|
Unity_Multiply_float_float(_SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_B_6_Float, _Split_5ed44bf2eca0868f81eb18100f49d1fa_B_3_Float, _Multiply_1d65ce08ce672087879125f2e13c4004_Out_2_Float);
|
|
float3 _Vector3_ba6cfb4671e8c58f9b41ea1dc23102ca_Out_0_Vector3 = float3(_Split_2cfb9eacd8762483941459cdf28bda97_R_1_Float, _Split_2cfb9eacd8762483941459cdf28bda97_G_2_Float, _Multiply_1d65ce08ce672087879125f2e13c4004_Out_2_Float);
|
|
float3 _Multiply_7bb4009c92b108849ac6ca92bc1442f2_Out_2_Vector3;
|
|
Unity_Multiply_float3_float3(_Vector3_ba6cfb4671e8c58f9b41ea1dc23102ca_Out_0_Vector3, (_Split_ae83014fcbd9f7879a0b91fa66dc9718_B_3_Float.xxx), _Multiply_7bb4009c92b108849ac6ca92bc1442f2_Out_2_Vector3);
|
|
float4 _Combine_1e9ffdba42d6918fb7a4b185f1585d2a_RGBA_4_Vector4;
|
|
float3 _Combine_1e9ffdba42d6918fb7a4b185f1585d2a_RGB_5_Vector3;
|
|
float2 _Combine_1e9ffdba42d6918fb7a4b185f1585d2a_RG_6_Vector2;
|
|
Unity_Combine_float(_Split_89ed63cb625cb3878c183d0b71c03400_B_3_Float, _Split_89ed63cb625cb3878c183d0b71c03400_G_2_Float, float(0), float(0), _Combine_1e9ffdba42d6918fb7a4b185f1585d2a_RGBA_4_Vector4, _Combine_1e9ffdba42d6918fb7a4b185f1585d2a_RGB_5_Vector3, _Combine_1e9ffdba42d6918fb7a4b185f1585d2a_RG_6_Vector2);
|
|
float4 _Multiply_2c0864423b014f8b8af8523f68cbb63c_Out_2_Vector4;
|
|
Unity_Multiply_float4_float4(_Combine_1e9ffdba42d6918fb7a4b185f1585d2a_RGBA_4_Vector4, (_Property_47988ec10c0c18879d461e00bed806e7_Out_0_Float.xxxx), _Multiply_2c0864423b014f8b8af8523f68cbb63c_Out_2_Vector4);
|
|
float2 _Vector2_a1e23e0f921b6484818f009a2b12a5ba_Out_0_Vector2 = float2(_Split_6299d4ddcc4c74828aea40a46fdb896e_R_1_Float, float(1));
|
|
float2 _Multiply_862402885a49f18cb87278ab53bc6744_Out_2_Vector2;
|
|
Unity_Multiply_float2_float2((_Multiply_2c0864423b014f8b8af8523f68cbb63c_Out_2_Vector4.xy), _Vector2_a1e23e0f921b6484818f009a2b12a5ba_Out_0_Vector2, _Multiply_862402885a49f18cb87278ab53bc6744_Out_2_Vector2);
|
|
float4 _SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_RGBA_0_Vector4 = SAMPLE_TEXTURE2D(_Property_3e01b4d2fc68d48ba3acbba9d5881e59_Out_0_Texture2D.tex, _Property_8a2b8589cd3a42a1879a29c28e4f711f_Out_0_SamplerState.samplerstate, _Property_3e01b4d2fc68d48ba3acbba9d5881e59_Out_0_Texture2D.GetTransformedUV(_Multiply_862402885a49f18cb87278ab53bc6744_Out_2_Vector2) );
|
|
_SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_RGBA_0_Vector4.rgb = UnpackNormal(_SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_RGBA_0_Vector4);
|
|
float _SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_R_4_Float = _SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_RGBA_0_Vector4.r;
|
|
float _SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_G_5_Float = _SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_RGBA_0_Vector4.g;
|
|
float _SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_B_6_Float = _SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_RGBA_0_Vector4.b;
|
|
float _SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_A_7_Float = _SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_RGBA_0_Vector4.a;
|
|
float _Multiply_4649b768be76d784a3284bacde795359_Out_2_Float;
|
|
Unity_Multiply_float_float(_SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_B_6_Float, _Split_5ed44bf2eca0868f81eb18100f49d1fa_R_1_Float, _Multiply_4649b768be76d784a3284bacde795359_Out_2_Float);
|
|
float2 _Vector2_819fcd5eb484438eacad1987576d7d67_Out_0_Vector2 = float2(_SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_R_4_Float, _SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_G_5_Float);
|
|
float2 _Multiply_58530ebb3c6d798b93686a76247bf505_Out_2_Vector2;
|
|
Unity_Multiply_float2_float2(_Vector2_819fcd5eb484438eacad1987576d7d67_Out_0_Vector2, _Vector2_a1e23e0f921b6484818f009a2b12a5ba_Out_0_Vector2, _Multiply_58530ebb3c6d798b93686a76247bf505_Out_2_Vector2);
|
|
float2 _Vector2_e293c112b2f49e88a5fe46dfb1fbeb40_Out_0_Vector2 = float2(_Split_5ed44bf2eca0868f81eb18100f49d1fa_B_3_Float, _Split_5ed44bf2eca0868f81eb18100f49d1fa_G_2_Float);
|
|
float2 _Add_cf00fb232c6e2b8e973ab2f84453f55e_Out_2_Vector2;
|
|
Unity_Add_float2(_Multiply_58530ebb3c6d798b93686a76247bf505_Out_2_Vector2, _Vector2_e293c112b2f49e88a5fe46dfb1fbeb40_Out_0_Vector2, _Add_cf00fb232c6e2b8e973ab2f84453f55e_Out_2_Vector2);
|
|
float _Split_3ea3e61d32bdd78f82c686b75ff3fd9b_R_1_Float = _Add_cf00fb232c6e2b8e973ab2f84453f55e_Out_2_Vector2[0];
|
|
float _Split_3ea3e61d32bdd78f82c686b75ff3fd9b_G_2_Float = _Add_cf00fb232c6e2b8e973ab2f84453f55e_Out_2_Vector2[1];
|
|
float _Split_3ea3e61d32bdd78f82c686b75ff3fd9b_B_3_Float = 0;
|
|
float _Split_3ea3e61d32bdd78f82c686b75ff3fd9b_A_4_Float = 0;
|
|
float3 _Vector3_13a08d5940172a84a78ee3d9b8766833_Out_0_Vector3 = float3(_Multiply_4649b768be76d784a3284bacde795359_Out_2_Float, _Split_3ea3e61d32bdd78f82c686b75ff3fd9b_G_2_Float, _Split_3ea3e61d32bdd78f82c686b75ff3fd9b_R_1_Float);
|
|
float3 _Multiply_77818c22e359fc8cbb7dd20216a8db72_Out_2_Vector3;
|
|
Unity_Multiply_float3_float3(_Vector3_13a08d5940172a84a78ee3d9b8766833_Out_0_Vector3, (_Split_ae83014fcbd9f7879a0b91fa66dc9718_R_1_Float.xxx), _Multiply_77818c22e359fc8cbb7dd20216a8db72_Out_2_Vector3);
|
|
float3 _Add_769d9ee909c9238dbbf72d2800a2f268_Out_2_Vector3;
|
|
Unity_Add_float3(_Multiply_7bb4009c92b108849ac6ca92bc1442f2_Out_2_Vector3, _Multiply_77818c22e359fc8cbb7dd20216a8db72_Out_2_Vector3, _Add_769d9ee909c9238dbbf72d2800a2f268_Out_2_Vector3);
|
|
float3 _Add_14295f72880e4b87a1baf1ced943ac40_Out_2_Vector3;
|
|
Unity_Add_float3(_Multiply_2e1040ca9c98d085ace76ee93f094039_Out_2_Vector3, _Add_769d9ee909c9238dbbf72d2800a2f268_Out_2_Vector3, _Add_14295f72880e4b87a1baf1ced943ac40_Out_2_Vector3);
|
|
float _Add_e59af300bba2498db32eac1412123447_Out_2_Float;
|
|
Unity_Add_float(_Split_ae83014fcbd9f7879a0b91fa66dc9718_R_1_Float, _Split_ae83014fcbd9f7879a0b91fa66dc9718_G_2_Float, _Add_e59af300bba2498db32eac1412123447_Out_2_Float);
|
|
float _Add_e855069f047fae8ea9027d56acb61e56_Out_2_Float;
|
|
Unity_Add_float(_Add_e59af300bba2498db32eac1412123447_Out_2_Float, _Split_ae83014fcbd9f7879a0b91fa66dc9718_B_3_Float, _Add_e855069f047fae8ea9027d56acb61e56_Out_2_Float);
|
|
float3 _Divide_91ae4b94f1d9b78e99d0472293b8098c_Out_2_Vector3;
|
|
Unity_Divide_float3(_Add_14295f72880e4b87a1baf1ced943ac40_Out_2_Vector3, (_Add_e855069f047fae8ea9027d56acb61e56_Out_2_Float.xxx), _Divide_91ae4b94f1d9b78e99d0472293b8098c_Out_2_Vector3);
|
|
float3 _Transform_73eecc0c3689d184a34c8d0f28a58adf_Out_1_Vector3;
|
|
{
|
|
float3x3 tangentTransform = float3x3(IN.WorldSpaceTangent, IN.WorldSpaceBiTangent, IN.WorldSpaceNormal);
|
|
_Transform_73eecc0c3689d184a34c8d0f28a58adf_Out_1_Vector3 = TransformWorldToTangent(_Divide_91ae4b94f1d9b78e99d0472293b8098c_Out_2_Vector3.xyz, tangentTransform, true);
|
|
}
|
|
float3 _Normalize_15ef346824db0a8797631ed8b998e673_Out_1_Vector3;
|
|
Unity_Normalize_float3(_Transform_73eecc0c3689d184a34c8d0f28a58adf_Out_1_Vector3, _Normalize_15ef346824db0a8797631ed8b998e673_Out_1_Vector3);
|
|
XYZ_1 = (float4(_Normalize_15ef346824db0a8797631ed8b998e673_Out_1_Vector3, 1.0));
|
|
XZ_2 = (float4(_Vector3_08f62c5c01619e849f1a7d85a44531ac_Out_0_Vector3, 1.0));
|
|
YZ_3 = (float4(_Vector3_ba6cfb4671e8c58f9b41ea1dc23102ca_Out_0_Vector3, 1.0));
|
|
XY_4 = (float4(_Vector3_13a08d5940172a84a78ee3d9b8766833_Out_0_Vector3, 1.0));
|
|
}
|
|
|
|
void Unity_NormalStrength_float(float3 In, float Strength, out float3 Out)
|
|
{
|
|
Out = float3(In.rg * Strength, lerp(1, In.b, saturate(Strength)));
|
|
}
|
|
|
|
void Unity_NormalBlend_float(float3 A, float3 B, out float3 Out)
|
|
{
|
|
Out = SafeNormalize(float3(A.rg + B.rg, A.b * B.b));
|
|
}
|
|
|
|
void Unity_Subtract_float(float A, float B, out float Out)
|
|
{
|
|
Out = A - B;
|
|
}
|
|
|
|
void Unity_Divide_float(float A, float B, out float Out)
|
|
{
|
|
Out = A / B;
|
|
}
|
|
|
|
void Unity_Lerp_float3(float3 A, float3 B, float3 T, out float3 Out)
|
|
{
|
|
Out = lerp(A, B, T);
|
|
}
|
|
|
|
void Unity_Remap_float(float In, float2 InMinMax, float2 OutMinMax, out float Out)
|
|
{
|
|
Out = OutMinMax.x + (In - InMinMax.x) * (OutMinMax.y - OutMinMax.x) / (InMinMax.y - InMinMax.x);
|
|
}
|
|
|
|
void Unity_Branch_float(float Predicate, float True, float False, out float Out)
|
|
{
|
|
Out = Predicate ? True : False;
|
|
}
|
|
|
|
void Unity_Lerp_float(float A, float B, float T, out float Out)
|
|
{
|
|
Out = lerp(A, B, T);
|
|
}
|
|
|
|
struct Bindings_BlendOverlayDetailSmoothness_06e12138dc89c0040b45a57abe520a1a_float
|
|
{
|
|
};
|
|
|
|
void SG_BlendOverlayDetailSmoothness_06e12138dc89c0040b45a57abe520a1a_float(float Vector1_32317166, float Vector1_FBE622A2, float Vector1_8C15C351, Bindings_BlendOverlayDetailSmoothness_06e12138dc89c0040b45a57abe520a1a_float IN, out float SmoothnessOverlay_1)
|
|
{
|
|
float _Property_728cc50521e9e988ac9cbff4872d5139_Out_0_Float = Vector1_32317166;
|
|
float _Property_a00e29241d12f983b30177515b367ec9_Out_0_Float = Vector1_FBE622A2;
|
|
float _Sign_343a45ede7349283a681c6bd9998fd8e_Out_1_Float;
|
|
Unity_Sign_float(_Property_a00e29241d12f983b30177515b367ec9_Out_0_Float, _Sign_343a45ede7349283a681c6bd9998fd8e_Out_1_Float);
|
|
float _Add_681019b8f5d3d68bb482d419c9fc61a9_Out_2_Float;
|
|
Unity_Add_float(_Sign_343a45ede7349283a681c6bd9998fd8e_Out_1_Float, float(1), _Add_681019b8f5d3d68bb482d419c9fc61a9_Out_2_Float);
|
|
float _Multiply_e8f4cb722712a880ac0db6c7461427f7_Out_2_Float;
|
|
Unity_Multiply_float_float(_Add_681019b8f5d3d68bb482d419c9fc61a9_Out_2_Float, 0.5, _Multiply_e8f4cb722712a880ac0db6c7461427f7_Out_2_Float);
|
|
float _Ceiling_95ad15988aa9b98184875fa754feae01_Out_1_Float;
|
|
Unity_Ceiling_float(_Multiply_e8f4cb722712a880ac0db6c7461427f7_Out_2_Float, _Ceiling_95ad15988aa9b98184875fa754feae01_Out_1_Float);
|
|
float _Property_2db1c747a05ee284a8b00076062f91a4_Out_0_Float = Vector1_8C15C351;
|
|
float _Lerp_b3cdb01fc3c5b988ac9b184943bf7c01_Out_3_Float;
|
|
Unity_Lerp_float(_Property_728cc50521e9e988ac9cbff4872d5139_Out_0_Float, _Ceiling_95ad15988aa9b98184875fa754feae01_Out_1_Float, _Property_2db1c747a05ee284a8b00076062f91a4_Out_0_Float, _Lerp_b3cdb01fc3c5b988ac9b184943bf7c01_Out_3_Float);
|
|
SmoothnessOverlay_1 = _Lerp_b3cdb01fc3c5b988ac9b184943bf7c01_Out_3_Float;
|
|
}
|
|
|
|
void Unity_Minimum_float(float A, float B, out float Out)
|
|
{
|
|
Out = min(A, B);
|
|
};
|
|
|
|
// Graph Vertex
|
|
struct VertexDescription
|
|
{
|
|
float3 Position;
|
|
float3 Normal;
|
|
float3 Tangent;
|
|
};
|
|
|
|
VertexDescription VertexDescriptionFunction(VertexDescriptionInputs IN)
|
|
{
|
|
VertexDescription description = (VertexDescription)0;
|
|
description.Position = IN.ObjectSpacePosition;
|
|
description.Normal = IN.ObjectSpaceNormal;
|
|
description.Tangent = IN.ObjectSpaceTangent;
|
|
return description;
|
|
}
|
|
|
|
// Graph Pixel
|
|
struct SurfaceDescription
|
|
{
|
|
float3 BaseColor;
|
|
float3 Emission;
|
|
float Alpha;
|
|
float3 BentNormal;
|
|
float Smoothness;
|
|
float Occlusion;
|
|
float3 NormalTS;
|
|
float Metallic;
|
|
float4 VTPackedFeedback;
|
|
};
|
|
|
|
SurfaceDescription SurfaceDescriptionFunction(SurfaceDescriptionInputs IN)
|
|
{
|
|
SurfaceDescription surface = (SurfaceDescription)0;
|
|
float _Property_72a5c604805a7b8ebbfd7acee03656aa_Out_0_Boolean = _CoverMaskRCurvature;
|
|
UnityTexture2D _Property_5f029bbc9f13b7858650859c3b63ebfd_Out_0_Texture2D = UnityBuildTexture2DStructNoScale(_BaseColorMap);
|
|
float4 _Property_a409d5fcafb9f182a4b2aea64204408f_Out_0_Vector4 = _BaseTilingOffset;
|
|
float4 _Divide_6a90cebe78e620828de587523daaa7e6_Out_2_Vector4;
|
|
Unity_Divide_float4(float4(1, 1, 0, 0), _Property_a409d5fcafb9f182a4b2aea64204408f_Out_0_Vector4, _Divide_6a90cebe78e620828de587523daaa7e6_Out_2_Vector4);
|
|
float _Property_3539de8c698c2981bb3c088d4ec52201_Out_0_Float = _BaseTriplanarThreshold;
|
|
Bindings_TriplanarNM_bc609ed95f52591469ab35dbfe0efcea_float _TriplanarNM_92d0433ff3938b8392407d2ab8713ac8;
|
|
_TriplanarNM_92d0433ff3938b8392407d2ab8713ac8.WorldSpaceNormal = IN.WorldSpaceNormal;
|
|
_TriplanarNM_92d0433ff3938b8392407d2ab8713ac8.AbsoluteWorldSpacePosition = IN.AbsoluteWorldSpacePosition;
|
|
float4 _TriplanarNM_92d0433ff3938b8392407d2ab8713ac8_XYZ_1_Vector4;
|
|
float4 _TriplanarNM_92d0433ff3938b8392407d2ab8713ac8_XZ_2_Vector4;
|
|
float4 _TriplanarNM_92d0433ff3938b8392407d2ab8713ac8_YZ_3_Vector4;
|
|
float4 _TriplanarNM_92d0433ff3938b8392407d2ab8713ac8_XY_4_Vector4;
|
|
SG_TriplanarNM_bc609ed95f52591469ab35dbfe0efcea_float(_Property_5f029bbc9f13b7858650859c3b63ebfd_Out_0_Texture2D, (_Divide_6a90cebe78e620828de587523daaa7e6_Out_2_Vector4).x, _Property_3539de8c698c2981bb3c088d4ec52201_Out_0_Float, UnityBuildSamplerStateStruct(SamplerState_Linear_Repeat_Aniso8), _TriplanarNM_92d0433ff3938b8392407d2ab8713ac8, _TriplanarNM_92d0433ff3938b8392407d2ab8713ac8_XYZ_1_Vector4, _TriplanarNM_92d0433ff3938b8392407d2ab8713ac8_XZ_2_Vector4, _TriplanarNM_92d0433ff3938b8392407d2ab8713ac8_YZ_3_Vector4, _TriplanarNM_92d0433ff3938b8392407d2ab8713ac8_XY_4_Vector4);
|
|
float4 _Property_87cd542c2b8c30868ed1d7d38aed8f2b_Out_0_Vector4 = _BaseColor;
|
|
float4 _Multiply_4b2be0b3fe39f385b887e7c82ab41e0b_Out_2_Vector4;
|
|
Unity_Multiply_float4_float4(_TriplanarNM_92d0433ff3938b8392407d2ab8713ac8_XYZ_1_Vector4, _Property_87cd542c2b8c30868ed1d7d38aed8f2b_Out_0_Vector4, _Multiply_4b2be0b3fe39f385b887e7c82ab41e0b_Out_2_Vector4);
|
|
UnityTexture2D _Property_c167aafac28bd98c8411d3e25631fdeb_Out_0_Texture2D = UnityBuildTexture2DStructNoScale(_CoverMaskA);
|
|
float4 _UV_e143f0ebbac8bb8cab3206ab93422dda_Out_0_Vector4 = IN.uv0;
|
|
float4 _SampleTexture2D_32717b1e99785588830ceee116cbe7fc_RGBA_0_Vector4 = SAMPLE_TEXTURE2D(_Property_c167aafac28bd98c8411d3e25631fdeb_Out_0_Texture2D.tex, _Property_c167aafac28bd98c8411d3e25631fdeb_Out_0_Texture2D.samplerstate, _Property_c167aafac28bd98c8411d3e25631fdeb_Out_0_Texture2D.GetTransformedUV((_UV_e143f0ebbac8bb8cab3206ab93422dda_Out_0_Vector4.xy)) );
|
|
float _SampleTexture2D_32717b1e99785588830ceee116cbe7fc_R_4_Float = _SampleTexture2D_32717b1e99785588830ceee116cbe7fc_RGBA_0_Vector4.r;
|
|
float _SampleTexture2D_32717b1e99785588830ceee116cbe7fc_G_5_Float = _SampleTexture2D_32717b1e99785588830ceee116cbe7fc_RGBA_0_Vector4.g;
|
|
float _SampleTexture2D_32717b1e99785588830ceee116cbe7fc_B_6_Float = _SampleTexture2D_32717b1e99785588830ceee116cbe7fc_RGBA_0_Vector4.b;
|
|
float _SampleTexture2D_32717b1e99785588830ceee116cbe7fc_A_7_Float = _SampleTexture2D_32717b1e99785588830ceee116cbe7fc_RGBA_0_Vector4.a;
|
|
float _Multiply_01f97603c3df268380d339564b08db11_Out_2_Float;
|
|
Unity_Multiply_float_float(_SampleTexture2D_32717b1e99785588830ceee116cbe7fc_R_4_Float, 2, _Multiply_01f97603c3df268380d339564b08db11_Out_2_Float);
|
|
float _Property_cad777e9a810198e8076eb2cd76e6817_Out_0_Float = _BaseDarknessCurvMultply;
|
|
float _Multiply_b67c8963c3ba188e85b84ae9bf0dcbf7_Out_2_Float;
|
|
Unity_Multiply_float_float(_Multiply_01f97603c3df268380d339564b08db11_Out_2_Float, _Property_cad777e9a810198e8076eb2cd76e6817_Out_0_Float, _Multiply_b67c8963c3ba188e85b84ae9bf0dcbf7_Out_2_Float);
|
|
float _Clamp_646f55d74b38f18aa983e5d031e0e7c3_Out_3_Float;
|
|
Unity_Clamp_float(_Multiply_b67c8963c3ba188e85b84ae9bf0dcbf7_Out_2_Float, float(0), float(1), _Clamp_646f55d74b38f18aa983e5d031e0e7c3_Out_3_Float);
|
|
float _Absolute_c99e11216fab2488946eb6243d985fdc_Out_1_Float;
|
|
Unity_Absolute_float(_Clamp_646f55d74b38f18aa983e5d031e0e7c3_Out_3_Float, _Absolute_c99e11216fab2488946eb6243d985fdc_Out_1_Float);
|
|
float _Property_f8a9827e6f28d9819188d4775dcf7620_Out_0_Float = _BaseDarknessCurvPower;
|
|
float _Power_1b88303e1ca2f285b344bf6aa0cf05e4_Out_2_Float;
|
|
Unity_Power_float(_Absolute_c99e11216fab2488946eb6243d985fdc_Out_1_Float, _Property_f8a9827e6f28d9819188d4775dcf7620_Out_0_Float, _Power_1b88303e1ca2f285b344bf6aa0cf05e4_Out_2_Float);
|
|
float _Clamp_27887d983dbb5a8bbd2966fbcbd7c126_Out_3_Float;
|
|
Unity_Clamp_float(_Power_1b88303e1ca2f285b344bf6aa0cf05e4_Out_2_Float, float(0), float(1), _Clamp_27887d983dbb5a8bbd2966fbcbd7c126_Out_3_Float);
|
|
float4 _Multiply_59efbfb897b39480ad44be129db72018_Out_2_Vector4;
|
|
Unity_Multiply_float4_float4(_Multiply_4b2be0b3fe39f385b887e7c82ab41e0b_Out_2_Vector4, (_Clamp_27887d983dbb5a8bbd2966fbcbd7c126_Out_3_Float.xxxx), _Multiply_59efbfb897b39480ad44be129db72018_Out_2_Vector4);
|
|
float4 _Clamp_841e38951a68f286955c4755e78c610b_Out_3_Vector4;
|
|
Unity_Clamp_float4(_Multiply_59efbfb897b39480ad44be129db72018_Out_2_Vector4, float4(0, 0, 0, 0), float4(1, 1, 1, 1), _Clamp_841e38951a68f286955c4755e78c610b_Out_3_Vector4);
|
|
float _Add_d7ea4a88c4af4886b1e567ddd2b963f9_Out_2_Float;
|
|
Unity_Add_float(_Multiply_01f97603c3df268380d339564b08db11_Out_2_Float, float(-1), _Add_d7ea4a88c4af4886b1e567ddd2b963f9_Out_2_Float);
|
|
float _Clamp_1a02c4bf5903c988b1489d14c840c1e3_Out_3_Float;
|
|
Unity_Clamp_float(_Add_d7ea4a88c4af4886b1e567ddd2b963f9_Out_2_Float, float(0), float(1), _Clamp_1a02c4bf5903c988b1489d14c840c1e3_Out_3_Float);
|
|
float _Property_0e0e1ec2131cec87836dce596351dc1c_Out_0_Float = _BaseBrightnessCurvMultply;
|
|
float _Multiply_c975dfa7de001c89addd082d443e2d07_Out_2_Float;
|
|
Unity_Multiply_float_float(_Clamp_1a02c4bf5903c988b1489d14c840c1e3_Out_3_Float, _Property_0e0e1ec2131cec87836dce596351dc1c_Out_0_Float, _Multiply_c975dfa7de001c89addd082d443e2d07_Out_2_Float);
|
|
float _Clamp_d5711b145a87ef8e8a93ceb9b6197759_Out_3_Float;
|
|
Unity_Clamp_float(_Multiply_c975dfa7de001c89addd082d443e2d07_Out_2_Float, float(0), float(1), _Clamp_d5711b145a87ef8e8a93ceb9b6197759_Out_3_Float);
|
|
float _Absolute_8f9bd7ee7a35c18084d08ad7ef463f52_Out_1_Float;
|
|
Unity_Absolute_float(_Clamp_d5711b145a87ef8e8a93ceb9b6197759_Out_3_Float, _Absolute_8f9bd7ee7a35c18084d08ad7ef463f52_Out_1_Float);
|
|
float _Property_9092f5beea2bec83a5c8a3f6623953a6_Out_0_Float = _BaseBrightnessCurvPower;
|
|
float _Power_5c1a81a2cfcc578996666adb93479f83_Out_2_Float;
|
|
Unity_Power_float(_Absolute_8f9bd7ee7a35c18084d08ad7ef463f52_Out_1_Float, _Property_9092f5beea2bec83a5c8a3f6623953a6_Out_0_Float, _Power_5c1a81a2cfcc578996666adb93479f83_Out_2_Float);
|
|
float _Clamp_f3c614a7ae35508288c0bc3f6194ca34_Out_3_Float;
|
|
Unity_Clamp_float(_Power_5c1a81a2cfcc578996666adb93479f83_Out_2_Float, float(0), float(1), _Clamp_f3c614a7ae35508288c0bc3f6194ca34_Out_3_Float);
|
|
float4 _Add_8313e15cade91a8ba653986d6722818a_Out_2_Vector4;
|
|
Unity_Add_float4(_Clamp_841e38951a68f286955c4755e78c610b_Out_3_Vector4, (_Clamp_f3c614a7ae35508288c0bc3f6194ca34_Out_3_Float.xxxx), _Add_8313e15cade91a8ba653986d6722818a_Out_2_Vector4);
|
|
float4 _Clamp_6dc8fea4fa463b8ea840911fd315c80f_Out_3_Vector4;
|
|
Unity_Clamp_float4(_Add_8313e15cade91a8ba653986d6722818a_Out_2_Vector4, float4(0, 0, 0, 0), float4(1, 1, 1, 1), _Clamp_6dc8fea4fa463b8ea840911fd315c80f_Out_3_Vector4);
|
|
float4 _Branch_26165227c7a50284b87d2996dee9982c_Out_3_Vector4;
|
|
Unity_Branch_float4(_Property_72a5c604805a7b8ebbfd7acee03656aa_Out_0_Boolean, _Clamp_6dc8fea4fa463b8ea840911fd315c80f_Out_3_Vector4, _Multiply_4b2be0b3fe39f385b887e7c82ab41e0b_Out_2_Vector4, _Branch_26165227c7a50284b87d2996dee9982c_Out_3_Vector4);
|
|
UnityTexture2D _Property_2e62abc1fe8adb8b8ff655b8448be202_Out_0_Texture2D = UnityBuildTexture2DStructNoScale(_DetailMap);
|
|
float4 _Property_b86e0ee324ffb58a92473eab69864d04_Out_0_Vector4 = _DetailTilingOffset;
|
|
float _Split_e832641c05503286a4951c0a93621755_R_1_Float = _Property_b86e0ee324ffb58a92473eab69864d04_Out_0_Vector4[0];
|
|
float _Split_e832641c05503286a4951c0a93621755_G_2_Float = _Property_b86e0ee324ffb58a92473eab69864d04_Out_0_Vector4[1];
|
|
float _Split_e832641c05503286a4951c0a93621755_B_3_Float = _Property_b86e0ee324ffb58a92473eab69864d04_Out_0_Vector4[2];
|
|
float _Split_e832641c05503286a4951c0a93621755_A_4_Float = _Property_b86e0ee324ffb58a92473eab69864d04_Out_0_Vector4[3];
|
|
float2 _Vector2_4b5eef288b3d4c83b24e4ab653f55ec8_Out_0_Vector2 = float2(_Split_e832641c05503286a4951c0a93621755_R_1_Float, _Split_e832641c05503286a4951c0a93621755_G_2_Float);
|
|
float2 _Vector2_2925cf98ba16b08dabc58cd65efd17db_Out_0_Vector2 = float2(_Split_e832641c05503286a4951c0a93621755_B_3_Float, _Split_e832641c05503286a4951c0a93621755_A_4_Float);
|
|
float2 _TilingAndOffset_74f6566eba9ccd899de18c0b11b7a7a2_Out_3_Vector2;
|
|
Unity_TilingAndOffset_float(IN.uv0.xy, _Vector2_4b5eef288b3d4c83b24e4ab653f55ec8_Out_0_Vector2, _Vector2_2925cf98ba16b08dabc58cd65efd17db_Out_0_Vector2, _TilingAndOffset_74f6566eba9ccd899de18c0b11b7a7a2_Out_3_Vector2);
|
|
float4 _SampleTexture2D_4bd08411faa60c828847f2247f06a809_RGBA_0_Vector4 = SAMPLE_TEXTURE2D(_Property_2e62abc1fe8adb8b8ff655b8448be202_Out_0_Texture2D.tex, _Property_2e62abc1fe8adb8b8ff655b8448be202_Out_0_Texture2D.samplerstate, _Property_2e62abc1fe8adb8b8ff655b8448be202_Out_0_Texture2D.GetTransformedUV(_TilingAndOffset_74f6566eba9ccd899de18c0b11b7a7a2_Out_3_Vector2) );
|
|
float _SampleTexture2D_4bd08411faa60c828847f2247f06a809_R_4_Float = _SampleTexture2D_4bd08411faa60c828847f2247f06a809_RGBA_0_Vector4.r;
|
|
float _SampleTexture2D_4bd08411faa60c828847f2247f06a809_G_5_Float = _SampleTexture2D_4bd08411faa60c828847f2247f06a809_RGBA_0_Vector4.g;
|
|
float _SampleTexture2D_4bd08411faa60c828847f2247f06a809_B_6_Float = _SampleTexture2D_4bd08411faa60c828847f2247f06a809_RGBA_0_Vector4.b;
|
|
float _SampleTexture2D_4bd08411faa60c828847f2247f06a809_A_7_Float = _SampleTexture2D_4bd08411faa60c828847f2247f06a809_RGBA_0_Vector4.a;
|
|
float _Multiply_ee5a3ccdebd1af84920cd1455a59468b_Out_2_Float;
|
|
Unity_Multiply_float_float(_SampleTexture2D_4bd08411faa60c828847f2247f06a809_R_4_Float, 2, _Multiply_ee5a3ccdebd1af84920cd1455a59468b_Out_2_Float);
|
|
float _Add_b8d727bda34294808f98551e67aa852f_Out_2_Float;
|
|
Unity_Add_float(_Multiply_ee5a3ccdebd1af84920cd1455a59468b_Out_2_Float, float(-1), _Add_b8d727bda34294808f98551e67aa852f_Out_2_Float);
|
|
float _Property_4634e589b03f6983b90fa6aaee0ed5f6_Out_0_Float = _DetailAlbedoScale;
|
|
float _Multiply_f0ed5a95f800c68aa9f7ea2f1322cc31_Out_2_Float;
|
|
Unity_Multiply_float_float(_Add_b8d727bda34294808f98551e67aa852f_Out_2_Float, _Property_4634e589b03f6983b90fa6aaee0ed5f6_Out_0_Float, _Multiply_f0ed5a95f800c68aa9f7ea2f1322cc31_Out_2_Float);
|
|
float _Saturate_469298b4e783d887889b71dc48b4399f_Out_1_Float;
|
|
Unity_Saturate_float(_Multiply_f0ed5a95f800c68aa9f7ea2f1322cc31_Out_2_Float, _Saturate_469298b4e783d887889b71dc48b4399f_Out_1_Float);
|
|
float _Absolute_3b29f3ceceba148189d11e0195af4be2_Out_1_Float;
|
|
Unity_Absolute_float(_Saturate_469298b4e783d887889b71dc48b4399f_Out_1_Float, _Absolute_3b29f3ceceba148189d11e0195af4be2_Out_1_Float);
|
|
Bindings_BlendOverlayBaseColor_acdb3dfca72bd6b42bbc35f4613331a2_float _BlendOverlayBaseColor_369c0b6a02e62b809dc5c6ac1efddde2;
|
|
float3 _BlendOverlayBaseColor_369c0b6a02e62b809dc5c6ac1efddde2_OutVector4_1_Vector3;
|
|
SG_BlendOverlayBaseColor_acdb3dfca72bd6b42bbc35f4613331a2_float(_Branch_26165227c7a50284b87d2996dee9982c_Out_3_Vector4, _Add_b8d727bda34294808f98551e67aa852f_Out_2_Float, _Absolute_3b29f3ceceba148189d11e0195af4be2_Out_1_Float, _BlendOverlayBaseColor_369c0b6a02e62b809dc5c6ac1efddde2, _BlendOverlayBaseColor_369c0b6a02e62b809dc5c6ac1efddde2_OutVector4_1_Vector3);
|
|
UnityTexture2D _Property_9a8451520f254f84a21875f3dac8cbe3_Out_0_Texture2D = UnityBuildTexture2DStructNoScale(_CoverBaseColorMap);
|
|
float4 _Property_c853e88632d9fd85ac0e98d12083eb62_Out_0_Vector4 = _CoverTilingOffset;
|
|
float4 _Divide_1fe314f1ca9dd78fbf366bbeb40e4ccf_Out_2_Vector4;
|
|
Unity_Divide_float4(float4(1, 1, 0, 0), _Property_c853e88632d9fd85ac0e98d12083eb62_Out_0_Vector4, _Divide_1fe314f1ca9dd78fbf366bbeb40e4ccf_Out_2_Vector4);
|
|
float _Property_ee792eccbb538a878b19be5db264531e_Out_0_Float = _CoverTriplanarThreshold;
|
|
Bindings_TriplanarNM_bc609ed95f52591469ab35dbfe0efcea_float _TriplanarNM_cca4c45d91c87989990c532a04e9e8e1;
|
|
_TriplanarNM_cca4c45d91c87989990c532a04e9e8e1.WorldSpaceNormal = IN.WorldSpaceNormal;
|
|
_TriplanarNM_cca4c45d91c87989990c532a04e9e8e1.AbsoluteWorldSpacePosition = IN.AbsoluteWorldSpacePosition;
|
|
float4 _TriplanarNM_cca4c45d91c87989990c532a04e9e8e1_XYZ_1_Vector4;
|
|
float4 _TriplanarNM_cca4c45d91c87989990c532a04e9e8e1_XZ_2_Vector4;
|
|
float4 _TriplanarNM_cca4c45d91c87989990c532a04e9e8e1_YZ_3_Vector4;
|
|
float4 _TriplanarNM_cca4c45d91c87989990c532a04e9e8e1_XY_4_Vector4;
|
|
SG_TriplanarNM_bc609ed95f52591469ab35dbfe0efcea_float(_Property_9a8451520f254f84a21875f3dac8cbe3_Out_0_Texture2D, (_Divide_1fe314f1ca9dd78fbf366bbeb40e4ccf_Out_2_Vector4).x, _Property_ee792eccbb538a878b19be5db264531e_Out_0_Float, UnityBuildSamplerStateStruct(SamplerState_Linear_Repeat_Aniso8), _TriplanarNM_cca4c45d91c87989990c532a04e9e8e1, _TriplanarNM_cca4c45d91c87989990c532a04e9e8e1_XYZ_1_Vector4, _TriplanarNM_cca4c45d91c87989990c532a04e9e8e1_XZ_2_Vector4, _TriplanarNM_cca4c45d91c87989990c532a04e9e8e1_YZ_3_Vector4, _TriplanarNM_cca4c45d91c87989990c532a04e9e8e1_XY_4_Vector4);
|
|
float4 _Property_18c743619f52288dbe24e28326388b00_Out_0_Vector4 = _CoverBaseColor;
|
|
float4 _Multiply_62594f3b30470e86a813e1224c48902e_Out_2_Vector4;
|
|
Unity_Multiply_float4_float4(_TriplanarNM_cca4c45d91c87989990c532a04e9e8e1_XYZ_1_Vector4, _Property_18c743619f52288dbe24e28326388b00_Out_0_Vector4, _Multiply_62594f3b30470e86a813e1224c48902e_Out_2_Vector4);
|
|
float _Multiply_5378fc524597f98fb32eeb561a7390e9_Out_2_Float;
|
|
Unity_Multiply_float_float(_SampleTexture2D_32717b1e99785588830ceee116cbe7fc_R_4_Float, 2, _Multiply_5378fc524597f98fb32eeb561a7390e9_Out_2_Float);
|
|
float _Property_8a72d97c1c527c8f8e0cc71214498065_Out_0_Float = _CoverDarknessCurvMultply;
|
|
float _Multiply_22683a720176a788a2ce404dbddd837c_Out_2_Float;
|
|
Unity_Multiply_float_float(_Multiply_5378fc524597f98fb32eeb561a7390e9_Out_2_Float, _Property_8a72d97c1c527c8f8e0cc71214498065_Out_0_Float, _Multiply_22683a720176a788a2ce404dbddd837c_Out_2_Float);
|
|
float _Clamp_5a638fb628222d8a97865d9029554fe2_Out_3_Float;
|
|
Unity_Clamp_float(_Multiply_22683a720176a788a2ce404dbddd837c_Out_2_Float, float(0), float(1), _Clamp_5a638fb628222d8a97865d9029554fe2_Out_3_Float);
|
|
float _Absolute_11985e8863bf2b8ca0bda90bca829348_Out_1_Float;
|
|
Unity_Absolute_float(_Clamp_5a638fb628222d8a97865d9029554fe2_Out_3_Float, _Absolute_11985e8863bf2b8ca0bda90bca829348_Out_1_Float);
|
|
float _Property_aba5acef910eee88b110d565674a9e36_Out_0_Float = _CoverDarknessCurvPower;
|
|
float _Power_da9b537d80a58d85a88e72c2a5d01e7c_Out_2_Float;
|
|
Unity_Power_float(_Absolute_11985e8863bf2b8ca0bda90bca829348_Out_1_Float, _Property_aba5acef910eee88b110d565674a9e36_Out_0_Float, _Power_da9b537d80a58d85a88e72c2a5d01e7c_Out_2_Float);
|
|
float _Clamp_77228e2a7266fa8ca042eae2f0701342_Out_3_Float;
|
|
Unity_Clamp_float(_Power_da9b537d80a58d85a88e72c2a5d01e7c_Out_2_Float, float(0), float(1), _Clamp_77228e2a7266fa8ca042eae2f0701342_Out_3_Float);
|
|
float4 _Multiply_2111c8ad39d5e68caf4893a41a3bad7d_Out_2_Vector4;
|
|
Unity_Multiply_float4_float4(_Multiply_62594f3b30470e86a813e1224c48902e_Out_2_Vector4, (_Clamp_77228e2a7266fa8ca042eae2f0701342_Out_3_Float.xxxx), _Multiply_2111c8ad39d5e68caf4893a41a3bad7d_Out_2_Vector4);
|
|
float4 _Clamp_b489ebb9d7d18282a342100f4d2fa72d_Out_3_Vector4;
|
|
Unity_Clamp_float4(_Multiply_2111c8ad39d5e68caf4893a41a3bad7d_Out_2_Vector4, float4(0, 0, 0, 0), float4(1, 1, 1, 1), _Clamp_b489ebb9d7d18282a342100f4d2fa72d_Out_3_Vector4);
|
|
float _Add_7eea819e47ffe58cbb3ec5877a181444_Out_2_Float;
|
|
Unity_Add_float(_Multiply_5378fc524597f98fb32eeb561a7390e9_Out_2_Float, float(-1), _Add_7eea819e47ffe58cbb3ec5877a181444_Out_2_Float);
|
|
float _Clamp_b5e4f47c0358dc87b5f9fdb3a360e9e9_Out_3_Float;
|
|
Unity_Clamp_float(_Add_7eea819e47ffe58cbb3ec5877a181444_Out_2_Float, float(0), float(1), _Clamp_b5e4f47c0358dc87b5f9fdb3a360e9e9_Out_3_Float);
|
|
float _Property_753051c96a90798fa7d94cff4173d6e6_Out_0_Float = _CoverBrightnessCurvMultply;
|
|
float _Multiply_c650497abc44d98882ce0091d10c4356_Out_2_Float;
|
|
Unity_Multiply_float_float(_Clamp_b5e4f47c0358dc87b5f9fdb3a360e9e9_Out_3_Float, _Property_753051c96a90798fa7d94cff4173d6e6_Out_0_Float, _Multiply_c650497abc44d98882ce0091d10c4356_Out_2_Float);
|
|
float _Clamp_c508dc61e0cb2a829429559098f34f9a_Out_3_Float;
|
|
Unity_Clamp_float(_Multiply_c650497abc44d98882ce0091d10c4356_Out_2_Float, float(0), float(1), _Clamp_c508dc61e0cb2a829429559098f34f9a_Out_3_Float);
|
|
float _Absolute_2cff2da32d80c286acbb99de611f381a_Out_1_Float;
|
|
Unity_Absolute_float(_Clamp_c508dc61e0cb2a829429559098f34f9a_Out_3_Float, _Absolute_2cff2da32d80c286acbb99de611f381a_Out_1_Float);
|
|
float _Property_ce4610db7b6d0c8bb7fb318210d3e83f_Out_0_Float = _CoverBrightnessCurvPower;
|
|
float _Power_c21df4d2e5ea448281f9ac0f4a140b9e_Out_2_Float;
|
|
Unity_Power_float(_Absolute_2cff2da32d80c286acbb99de611f381a_Out_1_Float, _Property_ce4610db7b6d0c8bb7fb318210d3e83f_Out_0_Float, _Power_c21df4d2e5ea448281f9ac0f4a140b9e_Out_2_Float);
|
|
float _Clamp_fd095a9d6c2b9881ae5875ed126bf3fb_Out_3_Float;
|
|
Unity_Clamp_float(_Power_c21df4d2e5ea448281f9ac0f4a140b9e_Out_2_Float, float(0), float(1), _Clamp_fd095a9d6c2b9881ae5875ed126bf3fb_Out_3_Float);
|
|
float4 _Add_4a02758b9a29b18180516bf3c3ede263_Out_2_Vector4;
|
|
Unity_Add_float4(_Clamp_b489ebb9d7d18282a342100f4d2fa72d_Out_3_Vector4, (_Clamp_fd095a9d6c2b9881ae5875ed126bf3fb_Out_3_Float.xxxx), _Add_4a02758b9a29b18180516bf3c3ede263_Out_2_Vector4);
|
|
float4 _Clamp_632e3d64ab55648f927a79cef68f3396_Out_3_Vector4;
|
|
Unity_Clamp_float4(_Add_4a02758b9a29b18180516bf3c3ede263_Out_2_Vector4, float4(0, 0, 0, 0), float4(1, 1, 1, 1), _Clamp_632e3d64ab55648f927a79cef68f3396_Out_3_Vector4);
|
|
float4 _Branch_0c5221a996e29186a372734bf5c30a51_Out_3_Vector4;
|
|
Unity_Branch_float4(_Property_72a5c604805a7b8ebbfd7acee03656aa_Out_0_Boolean, _Clamp_632e3d64ab55648f927a79cef68f3396_Out_3_Vector4, _Multiply_62594f3b30470e86a813e1224c48902e_Out_2_Vector4, _Branch_0c5221a996e29186a372734bf5c30a51_Out_3_Vector4);
|
|
float _Multiply_6a55591ceae0dc86a971a275e316fec6_Out_2_Float;
|
|
Unity_Multiply_float_float(_SampleTexture2D_4bd08411faa60c828847f2247f06a809_R_4_Float, 2, _Multiply_6a55591ceae0dc86a971a275e316fec6_Out_2_Float);
|
|
float _Add_a86411eb4894f78f8f8f3246011b369c_Out_2_Float;
|
|
Unity_Add_float(_Multiply_6a55591ceae0dc86a971a275e316fec6_Out_2_Float, float(-1), _Add_a86411eb4894f78f8f8f3246011b369c_Out_2_Float);
|
|
float _Property_c5a049650239cf80a302d0c0f57c147a_Out_0_Float = _DetailCoverAlbedoScale;
|
|
float _Multiply_1708b01db74fe88a8c36434f8729bf41_Out_2_Float;
|
|
Unity_Multiply_float_float(_Add_a86411eb4894f78f8f8f3246011b369c_Out_2_Float, _Property_c5a049650239cf80a302d0c0f57c147a_Out_0_Float, _Multiply_1708b01db74fe88a8c36434f8729bf41_Out_2_Float);
|
|
float _Saturate_1a4899f79635918485a64fff7cea28ad_Out_1_Float;
|
|
Unity_Saturate_float(_Multiply_1708b01db74fe88a8c36434f8729bf41_Out_2_Float, _Saturate_1a4899f79635918485a64fff7cea28ad_Out_1_Float);
|
|
float _Absolute_d3dce2bb8d9f0285b5183b7f665beed8_Out_1_Float;
|
|
Unity_Absolute_float(_Saturate_1a4899f79635918485a64fff7cea28ad_Out_1_Float, _Absolute_d3dce2bb8d9f0285b5183b7f665beed8_Out_1_Float);
|
|
Bindings_BlendOverlayBaseColor_acdb3dfca72bd6b42bbc35f4613331a2_float _BlendOverlayBaseColor_ec1f397271cc818abdb95188914e6b4d;
|
|
float3 _BlendOverlayBaseColor_ec1f397271cc818abdb95188914e6b4d_OutVector4_1_Vector3;
|
|
SG_BlendOverlayBaseColor_acdb3dfca72bd6b42bbc35f4613331a2_float(_Branch_0c5221a996e29186a372734bf5c30a51_Out_3_Vector4, _Add_a86411eb4894f78f8f8f3246011b369c_Out_2_Float, _Absolute_d3dce2bb8d9f0285b5183b7f665beed8_Out_1_Float, _BlendOverlayBaseColor_ec1f397271cc818abdb95188914e6b4d, _BlendOverlayBaseColor_ec1f397271cc818abdb95188914e6b4d_OutVector4_1_Vector3);
|
|
float _Property_cb0b6597aee47880b32e852aaa0e4a71_Out_0_Boolean = _USEDYNAMICCOVERTSTATICMASKF;
|
|
float _Property_4b3f692214f8d081a043985e1adb12a1_Out_0_Float = _CoverMaskPower;
|
|
float _Multiply_10cc4ecb135f8e8ab88c475223d0eadf_Out_2_Float;
|
|
Unity_Multiply_float_float(_SampleTexture2D_32717b1e99785588830ceee116cbe7fc_A_7_Float, _Property_4b3f692214f8d081a043985e1adb12a1_Out_0_Float, _Multiply_10cc4ecb135f8e8ab88c475223d0eadf_Out_2_Float);
|
|
float _Clamp_07a501c22c6e188199bed73412ac8926_Out_3_Float;
|
|
Unity_Clamp_float(_Multiply_10cc4ecb135f8e8ab88c475223d0eadf_Out_2_Float, float(0), float(1), _Clamp_07a501c22c6e188199bed73412ac8926_Out_3_Float);
|
|
float _Split_2ada595651635e8d97bf4b82f717fcc6_R_1_Float = IN.VertexColor[0];
|
|
float _Split_2ada595651635e8d97bf4b82f717fcc6_G_2_Float = IN.VertexColor[1];
|
|
float _Split_2ada595651635e8d97bf4b82f717fcc6_B_3_Float = IN.VertexColor[2];
|
|
float _Split_2ada595651635e8d97bf4b82f717fcc6_A_4_Float = IN.VertexColor[3];
|
|
float3 _Property_9180f8dd535ba18499edac37aef4d231_Out_0_Vector3 = _CoverDirection;
|
|
float2 _Vector2_7fe7d9ef320da68f958e1ea535e2a6a8_Out_0_Vector2 = float2(_SampleTexture2D_4bd08411faa60c828847f2247f06a809_A_7_Float, _SampleTexture2D_4bd08411faa60c828847f2247f06a809_G_5_Float);
|
|
float2 _Multiply_b8d7cc078ce00d87b9a6b5241b2f1f01_Out_2_Vector2;
|
|
Unity_Multiply_float2_float2(_Vector2_7fe7d9ef320da68f958e1ea535e2a6a8_Out_0_Vector2, float2(2, 2), _Multiply_b8d7cc078ce00d87b9a6b5241b2f1f01_Out_2_Vector2);
|
|
float2 _Add_476ecfb1f47aed8bb8040bb1c44ca372_Out_2_Vector2;
|
|
Unity_Add_float2(_Multiply_b8d7cc078ce00d87b9a6b5241b2f1f01_Out_2_Vector2, float2(-1, -1), _Add_476ecfb1f47aed8bb8040bb1c44ca372_Out_2_Vector2);
|
|
float _Property_b7f40cf2664f5a819eb153af2b2eb69e_Out_0_Float = _DetailNormalScale;
|
|
float2 _Multiply_3b11e3e43551698eb19b6c6b671b6a41_Out_2_Vector2;
|
|
Unity_Multiply_float2_float2(_Add_476ecfb1f47aed8bb8040bb1c44ca372_Out_2_Vector2, (_Property_b7f40cf2664f5a819eb153af2b2eb69e_Out_0_Float.xx), _Multiply_3b11e3e43551698eb19b6c6b671b6a41_Out_2_Vector2);
|
|
float _Split_678aac70d9cb9783a49841710ce82ff8_R_1_Float = _Multiply_3b11e3e43551698eb19b6c6b671b6a41_Out_2_Vector2[0];
|
|
float _Split_678aac70d9cb9783a49841710ce82ff8_G_2_Float = _Multiply_3b11e3e43551698eb19b6c6b671b6a41_Out_2_Vector2[1];
|
|
float _Split_678aac70d9cb9783a49841710ce82ff8_B_3_Float = 0;
|
|
float _Split_678aac70d9cb9783a49841710ce82ff8_A_4_Float = 0;
|
|
float _DotProduct_7fd2e2e8b3e9ed8f9a42a0ba98e14174_Out_2_Float;
|
|
Unity_DotProduct_float2(_Multiply_3b11e3e43551698eb19b6c6b671b6a41_Out_2_Vector2, _Multiply_3b11e3e43551698eb19b6c6b671b6a41_Out_2_Vector2, _DotProduct_7fd2e2e8b3e9ed8f9a42a0ba98e14174_Out_2_Float);
|
|
float _Saturate_47bdfe8ca2c8d989a5ebbb5eb995f023_Out_1_Float;
|
|
Unity_Saturate_float(_DotProduct_7fd2e2e8b3e9ed8f9a42a0ba98e14174_Out_2_Float, _Saturate_47bdfe8ca2c8d989a5ebbb5eb995f023_Out_1_Float);
|
|
float _OneMinus_03777d2879850b838187d9d2605d7341_Out_1_Float;
|
|
Unity_OneMinus_float(_Saturate_47bdfe8ca2c8d989a5ebbb5eb995f023_Out_1_Float, _OneMinus_03777d2879850b838187d9d2605d7341_Out_1_Float);
|
|
float _SquareRoot_ca9c195aef071d8888f26cb73b749f72_Out_1_Float;
|
|
Unity_SquareRoot_float(_OneMinus_03777d2879850b838187d9d2605d7341_Out_1_Float, _SquareRoot_ca9c195aef071d8888f26cb73b749f72_Out_1_Float);
|
|
float3 _Vector3_6999cbd6a5aa908cb7c059b5f2f5b330_Out_0_Vector3 = float3(_Split_678aac70d9cb9783a49841710ce82ff8_R_1_Float, _Split_678aac70d9cb9783a49841710ce82ff8_G_2_Float, _SquareRoot_ca9c195aef071d8888f26cb73b749f72_Out_1_Float);
|
|
UnityTexture2D _Property_d2bb0a0b01239c85bd301cadeec1b3d8_Out_0_Texture2D = UnityBuildTexture2DStructNoScale(_BaseNormalMap);
|
|
Bindings_TriplanarNMn_059da9746584140498cd018db3c76047_float _TriplanarNMn_bf7f7c0e2d896289b86076b79f33d7d4;
|
|
_TriplanarNMn_bf7f7c0e2d896289b86076b79f33d7d4.WorldSpaceNormal = IN.WorldSpaceNormal;
|
|
_TriplanarNMn_bf7f7c0e2d896289b86076b79f33d7d4.WorldSpaceTangent = IN.WorldSpaceTangent;
|
|
_TriplanarNMn_bf7f7c0e2d896289b86076b79f33d7d4.WorldSpaceBiTangent = IN.WorldSpaceBiTangent;
|
|
_TriplanarNMn_bf7f7c0e2d896289b86076b79f33d7d4.AbsoluteWorldSpacePosition = IN.AbsoluteWorldSpacePosition;
|
|
float4 _TriplanarNMn_bf7f7c0e2d896289b86076b79f33d7d4_XYZ_1_Vector4;
|
|
float4 _TriplanarNMn_bf7f7c0e2d896289b86076b79f33d7d4_XZ_2_Vector4;
|
|
float4 _TriplanarNMn_bf7f7c0e2d896289b86076b79f33d7d4_YZ_3_Vector4;
|
|
float4 _TriplanarNMn_bf7f7c0e2d896289b86076b79f33d7d4_XY_4_Vector4;
|
|
SG_TriplanarNMn_059da9746584140498cd018db3c76047_float(_Property_d2bb0a0b01239c85bd301cadeec1b3d8_Out_0_Texture2D, (_Divide_6a90cebe78e620828de587523daaa7e6_Out_2_Vector4).x, _Property_3539de8c698c2981bb3c088d4ec52201_Out_0_Float, UnityBuildSamplerStateStruct(SamplerState_Linear_Repeat_Aniso8), _TriplanarNMn_bf7f7c0e2d896289b86076b79f33d7d4, _TriplanarNMn_bf7f7c0e2d896289b86076b79f33d7d4_XYZ_1_Vector4, _TriplanarNMn_bf7f7c0e2d896289b86076b79f33d7d4_XZ_2_Vector4, _TriplanarNMn_bf7f7c0e2d896289b86076b79f33d7d4_YZ_3_Vector4, _TriplanarNMn_bf7f7c0e2d896289b86076b79f33d7d4_XY_4_Vector4);
|
|
float _Property_d6baf612f8e685848732ca270b39f544_Out_0_Float = _BaseNormalScale;
|
|
float3 _NormalStrength_260139b4d5077d8b9d42de780d173b6c_Out_2_Vector3;
|
|
Unity_NormalStrength_float((_TriplanarNMn_bf7f7c0e2d896289b86076b79f33d7d4_XYZ_1_Vector4.xyz), _Property_d6baf612f8e685848732ca270b39f544_Out_0_Float, _NormalStrength_260139b4d5077d8b9d42de780d173b6c_Out_2_Vector3);
|
|
UnityTexture2D _Property_492c4e7cd40ab980bd38362624511e38_Out_0_Texture2D = UnityBuildTexture2DStructNoScale(_ShapeNormalMap);
|
|
float4 _SampleTexture2D_63aaad04c65f698e8f640de826888075_RGBA_0_Vector4 = SAMPLE_TEXTURE2D(_Property_492c4e7cd40ab980bd38362624511e38_Out_0_Texture2D.tex, _Property_492c4e7cd40ab980bd38362624511e38_Out_0_Texture2D.samplerstate, _Property_492c4e7cd40ab980bd38362624511e38_Out_0_Texture2D.GetTransformedUV(IN.uv0.xy) );
|
|
_SampleTexture2D_63aaad04c65f698e8f640de826888075_RGBA_0_Vector4.rgb = UnpackNormal(_SampleTexture2D_63aaad04c65f698e8f640de826888075_RGBA_0_Vector4);
|
|
float _SampleTexture2D_63aaad04c65f698e8f640de826888075_R_4_Float = _SampleTexture2D_63aaad04c65f698e8f640de826888075_RGBA_0_Vector4.r;
|
|
float _SampleTexture2D_63aaad04c65f698e8f640de826888075_G_5_Float = _SampleTexture2D_63aaad04c65f698e8f640de826888075_RGBA_0_Vector4.g;
|
|
float _SampleTexture2D_63aaad04c65f698e8f640de826888075_B_6_Float = _SampleTexture2D_63aaad04c65f698e8f640de826888075_RGBA_0_Vector4.b;
|
|
float _SampleTexture2D_63aaad04c65f698e8f640de826888075_A_7_Float = _SampleTexture2D_63aaad04c65f698e8f640de826888075_RGBA_0_Vector4.a;
|
|
float _Property_6c35e329e57d0e89950e24817068dbb1_Out_0_Float = _shapeNormalScale;
|
|
float3 _NormalStrength_e181a1bb2f4e35819e0f35e77346e12e_Out_2_Vector3;
|
|
Unity_NormalStrength_float((_SampleTexture2D_63aaad04c65f698e8f640de826888075_RGBA_0_Vector4.xyz), _Property_6c35e329e57d0e89950e24817068dbb1_Out_0_Float, _NormalStrength_e181a1bb2f4e35819e0f35e77346e12e_Out_2_Vector3);
|
|
float3 _NormalBlend_ead295b946c6058190c298c03bf64d0b_Out_2_Vector3;
|
|
Unity_NormalBlend_float(_NormalStrength_260139b4d5077d8b9d42de780d173b6c_Out_2_Vector3, _NormalStrength_e181a1bb2f4e35819e0f35e77346e12e_Out_2_Vector3, _NormalBlend_ead295b946c6058190c298c03bf64d0b_Out_2_Vector3);
|
|
float3 _NormalBlend_4242e1b4a785378aa59dd49e9d993ffc_Out_2_Vector3;
|
|
Unity_NormalBlend_float(_Vector3_6999cbd6a5aa908cb7c059b5f2f5b330_Out_0_Vector3, _NormalBlend_ead295b946c6058190c298c03bf64d0b_Out_2_Vector3, _NormalBlend_4242e1b4a785378aa59dd49e9d993ffc_Out_2_Vector3);
|
|
float _Property_3d4ab6ad1f1f138a96f0463f7be8b6ce_Out_0_Float = _CovershapeNormalScale;
|
|
float3 _NormalStrength_401cd5af500bd68dbc9bca19d548d0db_Out_2_Vector3;
|
|
Unity_NormalStrength_float((_SampleTexture2D_63aaad04c65f698e8f640de826888075_RGBA_0_Vector4.xyz), _Property_3d4ab6ad1f1f138a96f0463f7be8b6ce_Out_0_Float, _NormalStrength_401cd5af500bd68dbc9bca19d548d0db_Out_2_Vector3);
|
|
UnityTexture2D _Property_779695727390348d8b8a7f7ae2245af0_Out_0_Texture2D = UnityBuildTexture2DStructNoScale(_CoverNormalMap);
|
|
Bindings_TriplanarNMn_059da9746584140498cd018db3c76047_float _TriplanarNMn_ba7e211dd8095589a2939b5b239ca8e0;
|
|
_TriplanarNMn_ba7e211dd8095589a2939b5b239ca8e0.WorldSpaceNormal = IN.WorldSpaceNormal;
|
|
_TriplanarNMn_ba7e211dd8095589a2939b5b239ca8e0.WorldSpaceTangent = IN.WorldSpaceTangent;
|
|
_TriplanarNMn_ba7e211dd8095589a2939b5b239ca8e0.WorldSpaceBiTangent = IN.WorldSpaceBiTangent;
|
|
_TriplanarNMn_ba7e211dd8095589a2939b5b239ca8e0.AbsoluteWorldSpacePosition = IN.AbsoluteWorldSpacePosition;
|
|
float4 _TriplanarNMn_ba7e211dd8095589a2939b5b239ca8e0_XYZ_1_Vector4;
|
|
float4 _TriplanarNMn_ba7e211dd8095589a2939b5b239ca8e0_XZ_2_Vector4;
|
|
float4 _TriplanarNMn_ba7e211dd8095589a2939b5b239ca8e0_YZ_3_Vector4;
|
|
float4 _TriplanarNMn_ba7e211dd8095589a2939b5b239ca8e0_XY_4_Vector4;
|
|
SG_TriplanarNMn_059da9746584140498cd018db3c76047_float(_Property_779695727390348d8b8a7f7ae2245af0_Out_0_Texture2D, (_Divide_1fe314f1ca9dd78fbf366bbeb40e4ccf_Out_2_Vector4).x, _Property_ee792eccbb538a878b19be5db264531e_Out_0_Float, UnityBuildSamplerStateStruct(SamplerState_Linear_Repeat_Aniso8), _TriplanarNMn_ba7e211dd8095589a2939b5b239ca8e0, _TriplanarNMn_ba7e211dd8095589a2939b5b239ca8e0_XYZ_1_Vector4, _TriplanarNMn_ba7e211dd8095589a2939b5b239ca8e0_XZ_2_Vector4, _TriplanarNMn_ba7e211dd8095589a2939b5b239ca8e0_YZ_3_Vector4, _TriplanarNMn_ba7e211dd8095589a2939b5b239ca8e0_XY_4_Vector4);
|
|
float _Property_5aba050988182f8aad3ec6b2c7e57899_Out_0_Float = _CoverNormalBlendHardness;
|
|
float3 _NormalStrength_dac4b0abfa8a1f82b7103b18f6e6e1b7_Out_2_Vector3;
|
|
Unity_NormalStrength_float((_TriplanarNMn_ba7e211dd8095589a2939b5b239ca8e0_XYZ_1_Vector4.xyz), _Property_5aba050988182f8aad3ec6b2c7e57899_Out_0_Float, _NormalStrength_dac4b0abfa8a1f82b7103b18f6e6e1b7_Out_2_Vector3);
|
|
float3 _NormalBlend_4058aded292b7389ade16c695a6cae6c_Out_2_Vector3;
|
|
Unity_NormalBlend_float(_NormalStrength_401cd5af500bd68dbc9bca19d548d0db_Out_2_Vector3, _NormalStrength_dac4b0abfa8a1f82b7103b18f6e6e1b7_Out_2_Vector3, _NormalBlend_4058aded292b7389ade16c695a6cae6c_Out_2_Vector3);
|
|
float3 _Multiply_0e22f9c6ff55a188b2533f1889a53038_Out_2_Vector3;
|
|
Unity_Multiply_float3_float3(_Property_9180f8dd535ba18499edac37aef4d231_Out_0_Vector3, IN.WorldSpaceNormal, _Multiply_0e22f9c6ff55a188b2533f1889a53038_Out_2_Vector3);
|
|
float _Split_89708601b575b58c852cd55e4fb248d1_R_1_Float = _Multiply_0e22f9c6ff55a188b2533f1889a53038_Out_2_Vector3[0];
|
|
float _Split_89708601b575b58c852cd55e4fb248d1_G_2_Float = _Multiply_0e22f9c6ff55a188b2533f1889a53038_Out_2_Vector3[1];
|
|
float _Split_89708601b575b58c852cd55e4fb248d1_B_3_Float = _Multiply_0e22f9c6ff55a188b2533f1889a53038_Out_2_Vector3[2];
|
|
float _Split_89708601b575b58c852cd55e4fb248d1_A_4_Float = 0;
|
|
float _Add_bfe29b97a9ce3b80aa4cd689be8c4a97_Out_2_Float;
|
|
Unity_Add_float(_Split_89708601b575b58c852cd55e4fb248d1_R_1_Float, _Split_89708601b575b58c852cd55e4fb248d1_G_2_Float, _Add_bfe29b97a9ce3b80aa4cd689be8c4a97_Out_2_Float);
|
|
float _Add_f3152b42a227088aa1439fc1fe8451cc_Out_2_Float;
|
|
Unity_Add_float(_Add_bfe29b97a9ce3b80aa4cd689be8c4a97_Out_2_Float, _Split_89708601b575b58c852cd55e4fb248d1_B_3_Float, _Add_f3152b42a227088aa1439fc1fe8451cc_Out_2_Float);
|
|
float _Property_deabceefa3e3438a8ad71fa67fc5b070_Out_0_Float = _Cover_Amount;
|
|
float _Property_2fba2d762d74b8828ff566c10bc48e86_Out_0_Float = _Cover_Amount_Grow_Speed;
|
|
float _Subtract_1f990262a41ce88f96a47df66dcb4971_Out_2_Float;
|
|
Unity_Subtract_float(float(4), _Property_2fba2d762d74b8828ff566c10bc48e86_Out_0_Float, _Subtract_1f990262a41ce88f96a47df66dcb4971_Out_2_Float);
|
|
float _Divide_a89e05be4802ac80886ad6bdeadc4949_Out_2_Float;
|
|
Unity_Divide_float(_Property_deabceefa3e3438a8ad71fa67fc5b070_Out_0_Float, _Subtract_1f990262a41ce88f96a47df66dcb4971_Out_2_Float, _Divide_a89e05be4802ac80886ad6bdeadc4949_Out_2_Float);
|
|
float _Absolute_2b58f48ab94a3087a726a2b03c51e2c6_Out_1_Float;
|
|
Unity_Absolute_float(_Divide_a89e05be4802ac80886ad6bdeadc4949_Out_2_Float, _Absolute_2b58f48ab94a3087a726a2b03c51e2c6_Out_1_Float);
|
|
float _Power_6695d49b8b82468ea686b66e6749260b_Out_2_Float;
|
|
Unity_Power_float(_Absolute_2b58f48ab94a3087a726a2b03c51e2c6_Out_1_Float, _Subtract_1f990262a41ce88f96a47df66dcb4971_Out_2_Float, _Power_6695d49b8b82468ea686b66e6749260b_Out_2_Float);
|
|
float _Clamp_94f0310fee13798bad4e26e2381a94d4_Out_3_Float;
|
|
Unity_Clamp_float(_Power_6695d49b8b82468ea686b66e6749260b_Out_2_Float, float(0), float(2), _Clamp_94f0310fee13798bad4e26e2381a94d4_Out_3_Float);
|
|
float _Multiply_999692515a117385ade114d924fa589a_Out_2_Float;
|
|
Unity_Multiply_float_float(_Add_f3152b42a227088aa1439fc1fe8451cc_Out_2_Float, _Clamp_94f0310fee13798bad4e26e2381a94d4_Out_3_Float, _Multiply_999692515a117385ade114d924fa589a_Out_2_Float);
|
|
float _Saturate_f811eeeeb3229d83917aa8be2c36831e_Out_1_Float;
|
|
Unity_Saturate_float(_Multiply_999692515a117385ade114d924fa589a_Out_2_Float, _Saturate_f811eeeeb3229d83917aa8be2c36831e_Out_1_Float);
|
|
float _Clamp_4c470807610adb8c8488f125c0af7bb5_Out_3_Float;
|
|
Unity_Clamp_float(_Add_f3152b42a227088aa1439fc1fe8451cc_Out_2_Float, float(0), float(0.9999), _Clamp_4c470807610adb8c8488f125c0af7bb5_Out_3_Float);
|
|
float _Property_765e3d021aec6d8f9f8b3174d5a06980_Out_0_Float = _Cover_Max_Angle;
|
|
float _Divide_9d9fc267a9ebcf84b378fdd4c66ff34d_Out_2_Float;
|
|
Unity_Divide_float(_Property_765e3d021aec6d8f9f8b3174d5a06980_Out_0_Float, float(45), _Divide_9d9fc267a9ebcf84b378fdd4c66ff34d_Out_2_Float);
|
|
float _OneMinus_f074fba0be46e688aa75f5377832251a_Out_1_Float;
|
|
Unity_OneMinus_float(_Divide_9d9fc267a9ebcf84b378fdd4c66ff34d_Out_2_Float, _OneMinus_f074fba0be46e688aa75f5377832251a_Out_1_Float);
|
|
float _Subtract_0b0cd6145e351c87a68366348828154d_Out_2_Float;
|
|
Unity_Subtract_float(_Clamp_4c470807610adb8c8488f125c0af7bb5_Out_3_Float, _OneMinus_f074fba0be46e688aa75f5377832251a_Out_1_Float, _Subtract_0b0cd6145e351c87a68366348828154d_Out_2_Float);
|
|
float _Clamp_30607c0c4e04e5879d4061a1f7688421_Out_3_Float;
|
|
Unity_Clamp_float(_Subtract_0b0cd6145e351c87a68366348828154d_Out_2_Float, float(0), float(2), _Clamp_30607c0c4e04e5879d4061a1f7688421_Out_3_Float);
|
|
float _Divide_cfe09f3bd2005485a3c2229367309962_Out_2_Float;
|
|
Unity_Divide_float(float(1), _Divide_9d9fc267a9ebcf84b378fdd4c66ff34d_Out_2_Float, _Divide_cfe09f3bd2005485a3c2229367309962_Out_2_Float);
|
|
float _Multiply_022be2eb9027988b9d5d4c1392749347_Out_2_Float;
|
|
Unity_Multiply_float_float(_Clamp_30607c0c4e04e5879d4061a1f7688421_Out_3_Float, _Divide_cfe09f3bd2005485a3c2229367309962_Out_2_Float, _Multiply_022be2eb9027988b9d5d4c1392749347_Out_2_Float);
|
|
float _Absolute_2fed84623df90f8ba200de68955721fd_Out_1_Float;
|
|
Unity_Absolute_float(_Multiply_022be2eb9027988b9d5d4c1392749347_Out_2_Float, _Absolute_2fed84623df90f8ba200de68955721fd_Out_1_Float);
|
|
float _Property_b79c921e30793a8e84330b3341539232_Out_0_Float = _CoverHardness;
|
|
float _Power_b9ddee06dfd0b880880990743bc10612_Out_2_Float;
|
|
Unity_Power_float(_Absolute_2fed84623df90f8ba200de68955721fd_Out_1_Float, _Property_b79c921e30793a8e84330b3341539232_Out_0_Float, _Power_b9ddee06dfd0b880880990743bc10612_Out_2_Float);
|
|
float _Property_c82936191f294c89b76f2d1809168f87_Out_0_Float = _Cover_Min_Height;
|
|
float _OneMinus_f0918ccb4f747b8e83e39d82dc3b5ca9_Out_1_Float;
|
|
Unity_OneMinus_float(_Property_c82936191f294c89b76f2d1809168f87_Out_0_Float, _OneMinus_f0918ccb4f747b8e83e39d82dc3b5ca9_Out_1_Float);
|
|
float _Split_0e80ce6f80cff18f87a043d1e3eecd08_R_1_Float = IN.AbsoluteWorldSpacePosition[0];
|
|
float _Split_0e80ce6f80cff18f87a043d1e3eecd08_G_2_Float = IN.AbsoluteWorldSpacePosition[1];
|
|
float _Split_0e80ce6f80cff18f87a043d1e3eecd08_B_3_Float = IN.AbsoluteWorldSpacePosition[2];
|
|
float _Split_0e80ce6f80cff18f87a043d1e3eecd08_A_4_Float = 0;
|
|
float _Add_60b3bb4cdad6e88b8c097c5b08daa7d0_Out_2_Float;
|
|
Unity_Add_float(_OneMinus_f0918ccb4f747b8e83e39d82dc3b5ca9_Out_1_Float, _Split_0e80ce6f80cff18f87a043d1e3eecd08_G_2_Float, _Add_60b3bb4cdad6e88b8c097c5b08daa7d0_Out_2_Float);
|
|
float _Add_1898d6f46901df809c68b5241b2e9c37_Out_2_Float;
|
|
Unity_Add_float(_Add_60b3bb4cdad6e88b8c097c5b08daa7d0_Out_2_Float, float(1), _Add_1898d6f46901df809c68b5241b2e9c37_Out_2_Float);
|
|
float _Clamp_25d6140fa3ff3a8f956f99005adace2e_Out_3_Float;
|
|
Unity_Clamp_float(_Add_1898d6f46901df809c68b5241b2e9c37_Out_2_Float, float(0), float(1), _Clamp_25d6140fa3ff3a8f956f99005adace2e_Out_3_Float);
|
|
float _Property_6094a52a4f01fd8da5ea847b69b6941c_Out_0_Float = _Cover_Min_Height_Blending;
|
|
float _Add_dc69668fc7f1a586a754713499f71d99_Out_2_Float;
|
|
Unity_Add_float(_Add_60b3bb4cdad6e88b8c097c5b08daa7d0_Out_2_Float, _Property_6094a52a4f01fd8da5ea847b69b6941c_Out_0_Float, _Add_dc69668fc7f1a586a754713499f71d99_Out_2_Float);
|
|
float _Divide_63e32406c8773d83bbf2e244faf8328f_Out_2_Float;
|
|
Unity_Divide_float(_Add_dc69668fc7f1a586a754713499f71d99_Out_2_Float, _Add_60b3bb4cdad6e88b8c097c5b08daa7d0_Out_2_Float, _Divide_63e32406c8773d83bbf2e244faf8328f_Out_2_Float);
|
|
float _OneMinus_ec22d21ddfa84288b6f750e9fdb107b9_Out_1_Float;
|
|
Unity_OneMinus_float(_Divide_63e32406c8773d83bbf2e244faf8328f_Out_2_Float, _OneMinus_ec22d21ddfa84288b6f750e9fdb107b9_Out_1_Float);
|
|
float _Add_a1206af8cbfbbe8081046db1247aba04_Out_2_Float;
|
|
Unity_Add_float(_OneMinus_ec22d21ddfa84288b6f750e9fdb107b9_Out_1_Float, float(-0.5), _Add_a1206af8cbfbbe8081046db1247aba04_Out_2_Float);
|
|
float _Clamp_640b5884b29f188987c157ad5e6e6959_Out_3_Float;
|
|
Unity_Clamp_float(_Add_a1206af8cbfbbe8081046db1247aba04_Out_2_Float, float(0), float(1), _Clamp_640b5884b29f188987c157ad5e6e6959_Out_3_Float);
|
|
float _Add_cfdb6daf617665838bb05910fa9505df_Out_2_Float;
|
|
Unity_Add_float(_Clamp_25d6140fa3ff3a8f956f99005adace2e_Out_3_Float, _Clamp_640b5884b29f188987c157ad5e6e6959_Out_3_Float, _Add_cfdb6daf617665838bb05910fa9505df_Out_2_Float);
|
|
float _Clamp_552ef7e5cf91408a982297885971db7e_Out_3_Float;
|
|
Unity_Clamp_float(_Add_cfdb6daf617665838bb05910fa9505df_Out_2_Float, float(0), float(1), _Clamp_552ef7e5cf91408a982297885971db7e_Out_3_Float);
|
|
float _Multiply_8f8db9c494f4fd869809fc45531df628_Out_2_Float;
|
|
Unity_Multiply_float_float(_Power_b9ddee06dfd0b880880990743bc10612_Out_2_Float, _Clamp_552ef7e5cf91408a982297885971db7e_Out_3_Float, _Multiply_8f8db9c494f4fd869809fc45531df628_Out_2_Float);
|
|
float _Multiply_60075aa07d29d285b3c1ee531e5b5cb3_Out_2_Float;
|
|
Unity_Multiply_float_float(_Saturate_f811eeeeb3229d83917aa8be2c36831e_Out_1_Float, _Multiply_8f8db9c494f4fd869809fc45531df628_Out_2_Float, _Multiply_60075aa07d29d285b3c1ee531e5b5cb3_Out_2_Float);
|
|
float3 _Lerp_453c8bc667315a8fa37a93affb877753_Out_3_Vector3;
|
|
Unity_Lerp_float3(_NormalBlend_4242e1b4a785378aa59dd49e9d993ffc_Out_2_Vector3, _NormalBlend_4058aded292b7389ade16c695a6cae6c_Out_2_Vector3, (_Multiply_60075aa07d29d285b3c1ee531e5b5cb3_Out_2_Float.xxx), _Lerp_453c8bc667315a8fa37a93affb877753_Out_3_Vector3);
|
|
float3 _Transform_a87113b0be9dfa8eaf6932ed645aa845_Out_1_Vector3;
|
|
{
|
|
float3x3 tangentTransform = float3x3(IN.WorldSpaceTangent, IN.WorldSpaceBiTangent, IN.WorldSpaceNormal);
|
|
_Transform_a87113b0be9dfa8eaf6932ed645aa845_Out_1_Vector3 = TransformTangentToWorldDir(_Lerp_453c8bc667315a8fa37a93affb877753_Out_3_Vector3.xyz, tangentTransform, false).xyz;
|
|
}
|
|
float3 _Multiply_f6e009bd5c0fd18c99ac72f233476fe5_Out_2_Vector3;
|
|
Unity_Multiply_float3_float3(_Property_9180f8dd535ba18499edac37aef4d231_Out_0_Vector3, _Transform_a87113b0be9dfa8eaf6932ed645aa845_Out_1_Vector3, _Multiply_f6e009bd5c0fd18c99ac72f233476fe5_Out_2_Vector3);
|
|
float _Split_96f0a5b75c0e0b889dbbccd04bc2aaaa_R_1_Float = _Multiply_f6e009bd5c0fd18c99ac72f233476fe5_Out_2_Vector3[0];
|
|
float _Split_96f0a5b75c0e0b889dbbccd04bc2aaaa_G_2_Float = _Multiply_f6e009bd5c0fd18c99ac72f233476fe5_Out_2_Vector3[1];
|
|
float _Split_96f0a5b75c0e0b889dbbccd04bc2aaaa_B_3_Float = _Multiply_f6e009bd5c0fd18c99ac72f233476fe5_Out_2_Vector3[2];
|
|
float _Split_96f0a5b75c0e0b889dbbccd04bc2aaaa_A_4_Float = 0;
|
|
float _Add_07028d5174d9f88594da40d46502bc13_Out_2_Float;
|
|
Unity_Add_float(_Split_96f0a5b75c0e0b889dbbccd04bc2aaaa_R_1_Float, _Split_96f0a5b75c0e0b889dbbccd04bc2aaaa_G_2_Float, _Add_07028d5174d9f88594da40d46502bc13_Out_2_Float);
|
|
float _Add_93af6c0f8ee9a3898ca51358a213b69f_Out_2_Float;
|
|
Unity_Add_float(_Add_07028d5174d9f88594da40d46502bc13_Out_2_Float, _Split_96f0a5b75c0e0b889dbbccd04bc2aaaa_B_3_Float, _Add_93af6c0f8ee9a3898ca51358a213b69f_Out_2_Float);
|
|
float _Multiply_77421b936cb9d68299ef6791b83fa867_Out_2_Float;
|
|
Unity_Multiply_float_float(_Add_93af6c0f8ee9a3898ca51358a213b69f_Out_2_Float, _Clamp_94f0310fee13798bad4e26e2381a94d4_Out_3_Float, _Multiply_77421b936cb9d68299ef6791b83fa867_Out_2_Float);
|
|
float _Multiply_ac6769fbe7188685a7537e5ac2c6bfa9_Out_2_Float;
|
|
Unity_Multiply_float_float(_Clamp_94f0310fee13798bad4e26e2381a94d4_Out_3_Float, _Property_b79c921e30793a8e84330b3341539232_Out_0_Float, _Multiply_ac6769fbe7188685a7537e5ac2c6bfa9_Out_2_Float);
|
|
float _Multiply_37a341e0d9783683aa8d5b7001acced1_Out_2_Float;
|
|
Unity_Multiply_float_float(_Multiply_ac6769fbe7188685a7537e5ac2c6bfa9_Out_2_Float, _Multiply_8f8db9c494f4fd869809fc45531df628_Out_2_Float, _Multiply_37a341e0d9783683aa8d5b7001acced1_Out_2_Float);
|
|
float _Multiply_02fa8aa66970b281b4a325dc68f407b9_Out_2_Float;
|
|
Unity_Multiply_float_float(_Multiply_77421b936cb9d68299ef6791b83fa867_Out_2_Float, _Multiply_37a341e0d9783683aa8d5b7001acced1_Out_2_Float, _Multiply_02fa8aa66970b281b4a325dc68f407b9_Out_2_Float);
|
|
UnityTexture2D _Property_fd2df7ee33755280948b4c47585d4323_Out_0_Texture2D = UnityBuildTexture2DStructNoScale(_CoverMaskMap);
|
|
Bindings_TriplanarNM_bc609ed95f52591469ab35dbfe0efcea_float _TriplanarNM_e307cfdc6531d2838aa3dfa51fc3913f;
|
|
_TriplanarNM_e307cfdc6531d2838aa3dfa51fc3913f.WorldSpaceNormal = IN.WorldSpaceNormal;
|
|
_TriplanarNM_e307cfdc6531d2838aa3dfa51fc3913f.AbsoluteWorldSpacePosition = IN.AbsoluteWorldSpacePosition;
|
|
float4 _TriplanarNM_e307cfdc6531d2838aa3dfa51fc3913f_XYZ_1_Vector4;
|
|
float4 _TriplanarNM_e307cfdc6531d2838aa3dfa51fc3913f_XZ_2_Vector4;
|
|
float4 _TriplanarNM_e307cfdc6531d2838aa3dfa51fc3913f_YZ_3_Vector4;
|
|
float4 _TriplanarNM_e307cfdc6531d2838aa3dfa51fc3913f_XY_4_Vector4;
|
|
SG_TriplanarNM_bc609ed95f52591469ab35dbfe0efcea_float(_Property_fd2df7ee33755280948b4c47585d4323_Out_0_Texture2D, (_Divide_1fe314f1ca9dd78fbf366bbeb40e4ccf_Out_2_Vector4).x, _Property_ee792eccbb538a878b19be5db264531e_Out_0_Float, UnityBuildSamplerStateStruct(SamplerState_Linear_Repeat_Aniso8), _TriplanarNM_e307cfdc6531d2838aa3dfa51fc3913f, _TriplanarNM_e307cfdc6531d2838aa3dfa51fc3913f_XYZ_1_Vector4, _TriplanarNM_e307cfdc6531d2838aa3dfa51fc3913f_XZ_2_Vector4, _TriplanarNM_e307cfdc6531d2838aa3dfa51fc3913f_YZ_3_Vector4, _TriplanarNM_e307cfdc6531d2838aa3dfa51fc3913f_XY_4_Vector4);
|
|
float _Split_fe834aed1172f284a73d2d6810bdb696_R_1_Float = _TriplanarNM_e307cfdc6531d2838aa3dfa51fc3913f_XYZ_1_Vector4[0];
|
|
float _Split_fe834aed1172f284a73d2d6810bdb696_G_2_Float = _TriplanarNM_e307cfdc6531d2838aa3dfa51fc3913f_XYZ_1_Vector4[1];
|
|
float _Split_fe834aed1172f284a73d2d6810bdb696_B_3_Float = _TriplanarNM_e307cfdc6531d2838aa3dfa51fc3913f_XYZ_1_Vector4[2];
|
|
float _Split_fe834aed1172f284a73d2d6810bdb696_A_4_Float = _TriplanarNM_e307cfdc6531d2838aa3dfa51fc3913f_XYZ_1_Vector4[3];
|
|
float _Property_b5f7a30c2ea202858ea263fd2a5a46c6_Out_0_Float = _CoverHeightMapMin;
|
|
float _Property_f86678f1d28c0483ba1ddccf49ee52f7_Out_0_Float = _CoverHeightMapMax;
|
|
float2 _Vector2_b5c01a0d88900d87a8a819b340151fb6_Out_0_Vector2 = float2(_Property_b5f7a30c2ea202858ea263fd2a5a46c6_Out_0_Float, _Property_f86678f1d28c0483ba1ddccf49ee52f7_Out_0_Float);
|
|
float _Property_82b4f7f3bf3b4382bd69876479a9e350_Out_0_Float = _CoverHeightMapOffset;
|
|
float2 _Add_6020f54fd1e6798e8e76bfdcad62759a_Out_2_Vector2;
|
|
Unity_Add_float2(_Vector2_b5c01a0d88900d87a8a819b340151fb6_Out_0_Vector2, (_Property_82b4f7f3bf3b4382bd69876479a9e350_Out_0_Float.xx), _Add_6020f54fd1e6798e8e76bfdcad62759a_Out_2_Vector2);
|
|
float _Remap_65ceff40294d1e8aae6051445b9fdbc8_Out_3_Float;
|
|
Unity_Remap_float(_Split_fe834aed1172f284a73d2d6810bdb696_B_3_Float, float2 (0, 1), _Add_6020f54fd1e6798e8e76bfdcad62759a_Out_2_Vector2, _Remap_65ceff40294d1e8aae6051445b9fdbc8_Out_3_Float);
|
|
float _Multiply_bb0edd30580dba8b89213d9c5b1ef857_Out_2_Float;
|
|
Unity_Multiply_float_float(_Multiply_02fa8aa66970b281b4a325dc68f407b9_Out_2_Float, _Remap_65ceff40294d1e8aae6051445b9fdbc8_Out_3_Float, _Multiply_bb0edd30580dba8b89213d9c5b1ef857_Out_2_Float);
|
|
float _Multiply_484dd7b77d58aa88bf99c82cfe77c774_Out_2_Float;
|
|
Unity_Multiply_float_float(_Split_2ada595651635e8d97bf4b82f717fcc6_G_2_Float, _Multiply_bb0edd30580dba8b89213d9c5b1ef857_Out_2_Float, _Multiply_484dd7b77d58aa88bf99c82cfe77c774_Out_2_Float);
|
|
float _Saturate_d39fa9bab8cc8a8fa35db28d4dbc74ab_Out_1_Float;
|
|
Unity_Saturate_float(_Multiply_484dd7b77d58aa88bf99c82cfe77c774_Out_2_Float, _Saturate_d39fa9bab8cc8a8fa35db28d4dbc74ab_Out_1_Float);
|
|
float _Multiply_6957741a4923cc8db84ac72df2e194a8_Out_2_Float;
|
|
Unity_Multiply_float_float(_Clamp_07a501c22c6e188199bed73412ac8926_Out_3_Float, _Saturate_d39fa9bab8cc8a8fa35db28d4dbc74ab_Out_1_Float, _Multiply_6957741a4923cc8db84ac72df2e194a8_Out_2_Float);
|
|
float _Branch_3ccf365d359214809d30b6430d863e3f_Out_3_Float;
|
|
Unity_Branch_float(_Property_cb0b6597aee47880b32e852aaa0e4a71_Out_0_Boolean, _Multiply_6957741a4923cc8db84ac72df2e194a8_Out_2_Float, _Clamp_07a501c22c6e188199bed73412ac8926_Out_3_Float, _Branch_3ccf365d359214809d30b6430d863e3f_Out_3_Float);
|
|
float3 _Lerp_ee1b6587de2afe82942e8476d303d598_Out_3_Vector3;
|
|
Unity_Lerp_float3(_BlendOverlayBaseColor_369c0b6a02e62b809dc5c6ac1efddde2_OutVector4_1_Vector3, _BlendOverlayBaseColor_ec1f397271cc818abdb95188914e6b4d_OutVector4_1_Vector3, (_Branch_3ccf365d359214809d30b6430d863e3f_Out_3_Float.xxx), _Lerp_ee1b6587de2afe82942e8476d303d598_Out_3_Vector3);
|
|
float4 _Property_c500db71e51fef8daff29f346c122e57_Out_0_Vector4 = _WetColor;
|
|
float3 _Multiply_89461014b078f787a0724725c54fb934_Out_2_Vector3;
|
|
Unity_Multiply_float3_float3((_Property_c500db71e51fef8daff29f346c122e57_Out_0_Vector4.xyz), _Lerp_ee1b6587de2afe82942e8476d303d598_Out_3_Vector3, _Multiply_89461014b078f787a0724725c54fb934_Out_2_Vector3);
|
|
float _OneMinus_e16dfb812ec64b8891c541171687142f_Out_1_Float;
|
|
Unity_OneMinus_float(_Split_2ada595651635e8d97bf4b82f717fcc6_R_1_Float, _OneMinus_e16dfb812ec64b8891c541171687142f_Out_1_Float);
|
|
float3 _Lerp_43bc7a9493df5a829abf080ee4ad3298_Out_3_Vector3;
|
|
Unity_Lerp_float3(_Lerp_ee1b6587de2afe82942e8476d303d598_Out_3_Vector3, _Multiply_89461014b078f787a0724725c54fb934_Out_2_Vector3, (_OneMinus_e16dfb812ec64b8891c541171687142f_Out_1_Float.xxx), _Lerp_43bc7a9493df5a829abf080ee4ad3298_Out_3_Vector3);
|
|
UnityTexture2D _Property_8e909eb873a4cd8e9af98a90a84fdde8_Out_0_Texture2D = UnityBuildTexture2DStructNoScale(_BaseMaskMap);
|
|
Bindings_TriplanarNM_bc609ed95f52591469ab35dbfe0efcea_float _TriplanarNM_52e6c67b7de4708f80a463a880607c97;
|
|
_TriplanarNM_52e6c67b7de4708f80a463a880607c97.WorldSpaceNormal = IN.WorldSpaceNormal;
|
|
_TriplanarNM_52e6c67b7de4708f80a463a880607c97.AbsoluteWorldSpacePosition = IN.AbsoluteWorldSpacePosition;
|
|
float4 _TriplanarNM_52e6c67b7de4708f80a463a880607c97_XYZ_1_Vector4;
|
|
float4 _TriplanarNM_52e6c67b7de4708f80a463a880607c97_XZ_2_Vector4;
|
|
float4 _TriplanarNM_52e6c67b7de4708f80a463a880607c97_YZ_3_Vector4;
|
|
float4 _TriplanarNM_52e6c67b7de4708f80a463a880607c97_XY_4_Vector4;
|
|
SG_TriplanarNM_bc609ed95f52591469ab35dbfe0efcea_float(_Property_8e909eb873a4cd8e9af98a90a84fdde8_Out_0_Texture2D, (_Divide_6a90cebe78e620828de587523daaa7e6_Out_2_Vector4).x, _Property_3539de8c698c2981bb3c088d4ec52201_Out_0_Float, UnityBuildSamplerStateStruct(SamplerState_Linear_Repeat_Aniso8), _TriplanarNM_52e6c67b7de4708f80a463a880607c97, _TriplanarNM_52e6c67b7de4708f80a463a880607c97_XYZ_1_Vector4, _TriplanarNM_52e6c67b7de4708f80a463a880607c97_XZ_2_Vector4, _TriplanarNM_52e6c67b7de4708f80a463a880607c97_YZ_3_Vector4, _TriplanarNM_52e6c67b7de4708f80a463a880607c97_XY_4_Vector4);
|
|
float _Split_79d9d761d63eaa8c97fb3cb7fae0c380_R_1_Float = _TriplanarNM_52e6c67b7de4708f80a463a880607c97_XYZ_1_Vector4[0];
|
|
float _Split_79d9d761d63eaa8c97fb3cb7fae0c380_G_2_Float = _TriplanarNM_52e6c67b7de4708f80a463a880607c97_XYZ_1_Vector4[1];
|
|
float _Split_79d9d761d63eaa8c97fb3cb7fae0c380_B_3_Float = _TriplanarNM_52e6c67b7de4708f80a463a880607c97_XYZ_1_Vector4[2];
|
|
float _Split_79d9d761d63eaa8c97fb3cb7fae0c380_A_4_Float = _TriplanarNM_52e6c67b7de4708f80a463a880607c97_XYZ_1_Vector4[3];
|
|
float _Property_b97916566d1fc587b95e8ec7fe8bd775_Out_0_Float = _BaseMetallic;
|
|
float _Multiply_d0c8d83444dbe38588583551936c7394_Out_2_Float;
|
|
Unity_Multiply_float_float(_Split_79d9d761d63eaa8c97fb3cb7fae0c380_R_1_Float, _Property_b97916566d1fc587b95e8ec7fe8bd775_Out_0_Float, _Multiply_d0c8d83444dbe38588583551936c7394_Out_2_Float);
|
|
float _Property_b187bbc548f3378caa8c964ca81707ca_Out_0_Float = _BaseAORemapMin;
|
|
float _Property_f06b327a4a8a7881a968eb399edf1d5c_Out_0_Float = _BaseAORemapMax;
|
|
float2 _Vector2_e267d722f88ada8da2d7edf8f7c0261d_Out_0_Vector2 = float2(_Property_b187bbc548f3378caa8c964ca81707ca_Out_0_Float, _Property_f06b327a4a8a7881a968eb399edf1d5c_Out_0_Float);
|
|
float _Remap_ad3c26564c54aa8cbb2f81aa114b3b78_Out_3_Float;
|
|
Unity_Remap_float(_Split_79d9d761d63eaa8c97fb3cb7fae0c380_G_2_Float, float2 (0, 1), _Vector2_e267d722f88ada8da2d7edf8f7c0261d_Out_0_Vector2, _Remap_ad3c26564c54aa8cbb2f81aa114b3b78_Out_3_Float);
|
|
float _Property_9a46e81c228dd0858cfdfc248fcb5efd_Out_0_Float = _BaseSmoothnessRemapMin;
|
|
float _Property_4bb3b70a3720ae8ea49e0f195b665d1f_Out_0_Float = _BaseSmoothnessRemapMax;
|
|
float2 _Vector2_6cef82af5d99208da4f2447a8ae60b4b_Out_0_Vector2 = float2(_Property_9a46e81c228dd0858cfdfc248fcb5efd_Out_0_Float, _Property_4bb3b70a3720ae8ea49e0f195b665d1f_Out_0_Float);
|
|
float _Remap_e30adbbf5d116285964ef079df15b895_Out_3_Float;
|
|
Unity_Remap_float(_Split_79d9d761d63eaa8c97fb3cb7fae0c380_A_4_Float, float2 (0, 1), _Vector2_6cef82af5d99208da4f2447a8ae60b4b_Out_0_Vector2, _Remap_e30adbbf5d116285964ef079df15b895_Out_3_Float);
|
|
float _Multiply_794172f65d2acd8981bc0e2ecc71376e_Out_2_Float;
|
|
Unity_Multiply_float_float(_SampleTexture2D_4bd08411faa60c828847f2247f06a809_B_6_Float, 2, _Multiply_794172f65d2acd8981bc0e2ecc71376e_Out_2_Float);
|
|
float _Add_dedefe53d91ea08c81d7a6d9071b0263_Out_2_Float;
|
|
Unity_Add_float(_Multiply_794172f65d2acd8981bc0e2ecc71376e_Out_2_Float, float(-1), _Add_dedefe53d91ea08c81d7a6d9071b0263_Out_2_Float);
|
|
float _Property_039bed9aac95ec8fa510fea3c4904280_Out_0_Float = _DetailSmoothnessScale;
|
|
float _Multiply_eb0a55c9be8cee86b9847c24f0e5be60_Out_2_Float;
|
|
Unity_Multiply_float_float(_Add_dedefe53d91ea08c81d7a6d9071b0263_Out_2_Float, _Property_039bed9aac95ec8fa510fea3c4904280_Out_0_Float, _Multiply_eb0a55c9be8cee86b9847c24f0e5be60_Out_2_Float);
|
|
float _Saturate_ca849f42c1cc238cb8fb1eb04fbfb9dd_Out_1_Float;
|
|
Unity_Saturate_float(_Multiply_eb0a55c9be8cee86b9847c24f0e5be60_Out_2_Float, _Saturate_ca849f42c1cc238cb8fb1eb04fbfb9dd_Out_1_Float);
|
|
float _Absolute_bc7994d4f833e382b37b5718ee583259_Out_1_Float;
|
|
Unity_Absolute_float(_Saturate_ca849f42c1cc238cb8fb1eb04fbfb9dd_Out_1_Float, _Absolute_bc7994d4f833e382b37b5718ee583259_Out_1_Float);
|
|
Bindings_BlendOverlayDetailSmoothness_06e12138dc89c0040b45a57abe520a1a_float _BlendOverlayDetailSmoothness_5a03404db5a34885a089f1aee363667f;
|
|
float _BlendOverlayDetailSmoothness_5a03404db5a34885a089f1aee363667f_SmoothnessOverlay_1_Float;
|
|
SG_BlendOverlayDetailSmoothness_06e12138dc89c0040b45a57abe520a1a_float(_Remap_e30adbbf5d116285964ef079df15b895_Out_3_Float, _Add_dedefe53d91ea08c81d7a6d9071b0263_Out_2_Float, _Absolute_bc7994d4f833e382b37b5718ee583259_Out_1_Float, _BlendOverlayDetailSmoothness_5a03404db5a34885a089f1aee363667f, _BlendOverlayDetailSmoothness_5a03404db5a34885a089f1aee363667f_SmoothnessOverlay_1_Float);
|
|
float _Saturate_3d6c6d852202408cb9b11aac8a566c89_Out_1_Float;
|
|
Unity_Saturate_float(_BlendOverlayDetailSmoothness_5a03404db5a34885a089f1aee363667f_SmoothnessOverlay_1_Float, _Saturate_3d6c6d852202408cb9b11aac8a566c89_Out_1_Float);
|
|
float3 _Vector3_8ed406a0096de4818282676bf24b1a85_Out_0_Vector3 = float3(_Multiply_d0c8d83444dbe38588583551936c7394_Out_2_Float, _Remap_ad3c26564c54aa8cbb2f81aa114b3b78_Out_3_Float, _Saturate_3d6c6d852202408cb9b11aac8a566c89_Out_1_Float);
|
|
float _Split_2ec5937af5023a8295e3858d32b193d5_R_1_Float = _Vector3_8ed406a0096de4818282676bf24b1a85_Out_0_Vector3[0];
|
|
float _Split_2ec5937af5023a8295e3858d32b193d5_G_2_Float = _Vector3_8ed406a0096de4818282676bf24b1a85_Out_0_Vector3[1];
|
|
float _Split_2ec5937af5023a8295e3858d32b193d5_B_3_Float = _Vector3_8ed406a0096de4818282676bf24b1a85_Out_0_Vector3[2];
|
|
float _Split_2ec5937af5023a8295e3858d32b193d5_A_4_Float = 0;
|
|
UnityTexture2D _Property_0f50abb140882d848d9fc7be8e3468dc_Out_0_Texture2D = UnityBuildTexture2DStructNoScale(_ShapeAO);
|
|
float4 _SampleTexture2D_33392602b94694898ec8227a89f13cc9_RGBA_0_Vector4 = SAMPLE_TEXTURE2D(_Property_0f50abb140882d848d9fc7be8e3468dc_Out_0_Texture2D.tex, _Property_0f50abb140882d848d9fc7be8e3468dc_Out_0_Texture2D.samplerstate, _Property_0f50abb140882d848d9fc7be8e3468dc_Out_0_Texture2D.GetTransformedUV(IN.uv0.xy) );
|
|
float _SampleTexture2D_33392602b94694898ec8227a89f13cc9_R_4_Float = _SampleTexture2D_33392602b94694898ec8227a89f13cc9_RGBA_0_Vector4.r;
|
|
float _SampleTexture2D_33392602b94694898ec8227a89f13cc9_G_5_Float = _SampleTexture2D_33392602b94694898ec8227a89f13cc9_RGBA_0_Vector4.g;
|
|
float _SampleTexture2D_33392602b94694898ec8227a89f13cc9_B_6_Float = _SampleTexture2D_33392602b94694898ec8227a89f13cc9_RGBA_0_Vector4.b;
|
|
float _SampleTexture2D_33392602b94694898ec8227a89f13cc9_A_7_Float = _SampleTexture2D_33392602b94694898ec8227a89f13cc9_RGBA_0_Vector4.a;
|
|
float _Property_a51c4b6d05e6718d919aadcf26153350_Out_0_Float = _ShapeAORemapMin;
|
|
float _Property_973fbc42b7a69088b9fc2c502945f369_Out_0_Float = _ShapeAORemapMax;
|
|
float2 _Vector2_a73753c5a8c4fa828d2eb25d4fb8b399_Out_0_Vector2 = float2(_Property_a51c4b6d05e6718d919aadcf26153350_Out_0_Float, _Property_973fbc42b7a69088b9fc2c502945f369_Out_0_Float);
|
|
float _Remap_270e7e207f303487bc04348b1b54db69_Out_3_Float;
|
|
Unity_Remap_float(_SampleTexture2D_33392602b94694898ec8227a89f13cc9_G_5_Float, float2 (0, 1), _Vector2_a73753c5a8c4fa828d2eb25d4fb8b399_Out_0_Vector2, _Remap_270e7e207f303487bc04348b1b54db69_Out_3_Float);
|
|
float _Minimum_307d1a8c4f5c6a87a1bbc658a5811679_Out_2_Float;
|
|
Unity_Minimum_float(_Split_2ec5937af5023a8295e3858d32b193d5_G_2_Float, _Remap_270e7e207f303487bc04348b1b54db69_Out_3_Float, _Minimum_307d1a8c4f5c6a87a1bbc658a5811679_Out_2_Float);
|
|
float3 _Vector3_fac10bf467f5ff82b4f071ba165bf458_Out_0_Vector3 = float3(_Split_2ec5937af5023a8295e3858d32b193d5_R_1_Float, _Minimum_307d1a8c4f5c6a87a1bbc658a5811679_Out_2_Float, _Split_2ec5937af5023a8295e3858d32b193d5_B_3_Float);
|
|
float _Property_fa6937565be49684915e6bb999529949_Out_0_Float = _CoverMetallic;
|
|
float _Multiply_d0ecb787fa289f8f9d3c2988d60f18d3_Out_2_Float;
|
|
Unity_Multiply_float_float(_Split_fe834aed1172f284a73d2d6810bdb696_R_1_Float, _Property_fa6937565be49684915e6bb999529949_Out_0_Float, _Multiply_d0ecb787fa289f8f9d3c2988d60f18d3_Out_2_Float);
|
|
float _Property_8f5ca0ba38d2a4858c1b4e44f6a375b4_Out_0_Float = _CoverAORemapMin;
|
|
float _Property_a15ef0fe46e1d88f9e20df6605bd1499_Out_0_Float = _CoverAORemapMax;
|
|
float2 _Vector2_969d809c2de99f89959cc4526a665db9_Out_0_Vector2 = float2(_Property_8f5ca0ba38d2a4858c1b4e44f6a375b4_Out_0_Float, _Property_a15ef0fe46e1d88f9e20df6605bd1499_Out_0_Float);
|
|
float _Remap_1b6065f44329038594e2d0cf001fa138_Out_3_Float;
|
|
Unity_Remap_float(_Split_fe834aed1172f284a73d2d6810bdb696_G_2_Float, float2 (0, 1), _Vector2_969d809c2de99f89959cc4526a665db9_Out_0_Vector2, _Remap_1b6065f44329038594e2d0cf001fa138_Out_3_Float);
|
|
float _Property_0fde68fd9824db8e9f5b4b0daff90270_Out_0_Float = _CoverSmoothnessRemapMin;
|
|
float _Property_abad1da00caf99869e0c9ca2926c76bd_Out_0_Float = _CoverSmoothnessRemapMax;
|
|
float2 _Vector2_1aa81c2ad7cc268caa834889569ce556_Out_0_Vector2 = float2(_Property_0fde68fd9824db8e9f5b4b0daff90270_Out_0_Float, _Property_abad1da00caf99869e0c9ca2926c76bd_Out_0_Float);
|
|
float _Remap_4948cd1fb38399888e9567ee2abb8acd_Out_3_Float;
|
|
Unity_Remap_float(_Split_fe834aed1172f284a73d2d6810bdb696_A_4_Float, float2 (0, 1), _Vector2_1aa81c2ad7cc268caa834889569ce556_Out_0_Vector2, _Remap_4948cd1fb38399888e9567ee2abb8acd_Out_3_Float);
|
|
float _Multiply_d3e207dba42f1984aacff3c1bf4eef0b_Out_2_Float;
|
|
Unity_Multiply_float_float(_SampleTexture2D_4bd08411faa60c828847f2247f06a809_B_6_Float, 2, _Multiply_d3e207dba42f1984aacff3c1bf4eef0b_Out_2_Float);
|
|
float _Add_0299d632f81fff8f969a0eed5f77397c_Out_2_Float;
|
|
Unity_Add_float(_Multiply_d3e207dba42f1984aacff3c1bf4eef0b_Out_2_Float, float(-1), _Add_0299d632f81fff8f969a0eed5f77397c_Out_2_Float);
|
|
float _Property_a2c7556e96b60b8e90cb5145ca6f9dde_Out_0_Float = _DetailCoverSmoothnessScale;
|
|
float _Multiply_d340fbee0985958dbb66555a73bd733c_Out_2_Float;
|
|
Unity_Multiply_float_float(_Add_0299d632f81fff8f969a0eed5f77397c_Out_2_Float, _Property_a2c7556e96b60b8e90cb5145ca6f9dde_Out_0_Float, _Multiply_d340fbee0985958dbb66555a73bd733c_Out_2_Float);
|
|
float _Saturate_2c0cc920be0ca88e937ec108b38f5fde_Out_1_Float;
|
|
Unity_Saturate_float(_Multiply_d340fbee0985958dbb66555a73bd733c_Out_2_Float, _Saturate_2c0cc920be0ca88e937ec108b38f5fde_Out_1_Float);
|
|
float _Absolute_3f81290e941e378283f7151c4a0731e2_Out_1_Float;
|
|
Unity_Absolute_float(_Saturate_2c0cc920be0ca88e937ec108b38f5fde_Out_1_Float, _Absolute_3f81290e941e378283f7151c4a0731e2_Out_1_Float);
|
|
Bindings_BlendOverlayDetailSmoothness_06e12138dc89c0040b45a57abe520a1a_float _BlendOverlayDetailSmoothness_e7a4fbe98378f084bd09f6e5d90e1cb8;
|
|
float _BlendOverlayDetailSmoothness_e7a4fbe98378f084bd09f6e5d90e1cb8_SmoothnessOverlay_1_Float;
|
|
SG_BlendOverlayDetailSmoothness_06e12138dc89c0040b45a57abe520a1a_float(_Remap_4948cd1fb38399888e9567ee2abb8acd_Out_3_Float, _Add_0299d632f81fff8f969a0eed5f77397c_Out_2_Float, _Absolute_3f81290e941e378283f7151c4a0731e2_Out_1_Float, _BlendOverlayDetailSmoothness_e7a4fbe98378f084bd09f6e5d90e1cb8, _BlendOverlayDetailSmoothness_e7a4fbe98378f084bd09f6e5d90e1cb8_SmoothnessOverlay_1_Float);
|
|
float _Saturate_9091ea9d9924c682ad6b94d3322ee822_Out_1_Float;
|
|
Unity_Saturate_float(_BlendOverlayDetailSmoothness_e7a4fbe98378f084bd09f6e5d90e1cb8_SmoothnessOverlay_1_Float, _Saturate_9091ea9d9924c682ad6b94d3322ee822_Out_1_Float);
|
|
float3 _Vector3_93bafe600474e7819ebc13e534b986bf_Out_0_Vector3 = float3(_Multiply_d0ecb787fa289f8f9d3c2988d60f18d3_Out_2_Float, _Remap_1b6065f44329038594e2d0cf001fa138_Out_3_Float, _Saturate_9091ea9d9924c682ad6b94d3322ee822_Out_1_Float);
|
|
float _Split_6ec9cc5e56f3f68ba37ff91557979c18_R_1_Float = _Vector3_93bafe600474e7819ebc13e534b986bf_Out_0_Vector3[0];
|
|
float _Split_6ec9cc5e56f3f68ba37ff91557979c18_G_2_Float = _Vector3_93bafe600474e7819ebc13e534b986bf_Out_0_Vector3[1];
|
|
float _Split_6ec9cc5e56f3f68ba37ff91557979c18_B_3_Float = _Vector3_93bafe600474e7819ebc13e534b986bf_Out_0_Vector3[2];
|
|
float _Split_6ec9cc5e56f3f68ba37ff91557979c18_A_4_Float = 0;
|
|
float _Property_ca9c61425ece6b8c909c06b1e2738f1a_Out_0_Float = _CoverShapeAORemapMin;
|
|
float _Property_b9be92f1612c908d80643f0e96015b33_Out_0_Float = _CoverShapeAORemapMax;
|
|
float2 _Vector2_9b862c4e147d1082afad3606339d2130_Out_0_Vector2 = float2(_Property_ca9c61425ece6b8c909c06b1e2738f1a_Out_0_Float, _Property_b9be92f1612c908d80643f0e96015b33_Out_0_Float);
|
|
float _Remap_c1f0022add809b83bad7b493177bddb7_Out_3_Float;
|
|
Unity_Remap_float(_SampleTexture2D_33392602b94694898ec8227a89f13cc9_G_5_Float, float2 (0, 1), _Vector2_9b862c4e147d1082afad3606339d2130_Out_0_Vector2, _Remap_c1f0022add809b83bad7b493177bddb7_Out_3_Float);
|
|
float _Minimum_595c2f31bb0ec588977a2b9ea46bf6b0_Out_2_Float;
|
|
Unity_Minimum_float(_Split_6ec9cc5e56f3f68ba37ff91557979c18_G_2_Float, _Remap_c1f0022add809b83bad7b493177bddb7_Out_3_Float, _Minimum_595c2f31bb0ec588977a2b9ea46bf6b0_Out_2_Float);
|
|
float3 _Vector3_6cb5b2c4675bb28cb41ea88b6eaa2aff_Out_0_Vector3 = float3(_Split_6ec9cc5e56f3f68ba37ff91557979c18_R_1_Float, _Minimum_595c2f31bb0ec588977a2b9ea46bf6b0_Out_2_Float, _Split_6ec9cc5e56f3f68ba37ff91557979c18_B_3_Float);
|
|
float3 _Lerp_fa40b54f3d5a1a8a95f6306e837b9338_Out_3_Vector3;
|
|
Unity_Lerp_float3(_Vector3_fac10bf467f5ff82b4f071ba165bf458_Out_0_Vector3, _Vector3_6cb5b2c4675bb28cb41ea88b6eaa2aff_Out_0_Vector3, (_Branch_3ccf365d359214809d30b6430d863e3f_Out_3_Float.xxx), _Lerp_fa40b54f3d5a1a8a95f6306e837b9338_Out_3_Vector3);
|
|
float _Split_c4a5352a58a4f88fb40410f956825dc6_R_1_Float = _Lerp_fa40b54f3d5a1a8a95f6306e837b9338_Out_3_Vector3[0];
|
|
float _Split_c4a5352a58a4f88fb40410f956825dc6_G_2_Float = _Lerp_fa40b54f3d5a1a8a95f6306e837b9338_Out_3_Vector3[1];
|
|
float _Split_c4a5352a58a4f88fb40410f956825dc6_B_3_Float = _Lerp_fa40b54f3d5a1a8a95f6306e837b9338_Out_3_Vector3[2];
|
|
float _Split_c4a5352a58a4f88fb40410f956825dc6_A_4_Float = 0;
|
|
float _Property_7861e880056eb88ab923a2ff5b12179d_Out_0_Float = _WetSmoothness;
|
|
float _Lerp_ee63160826cff4869f0e63568dd6f8b7_Out_3_Float;
|
|
Unity_Lerp_float(_Split_c4a5352a58a4f88fb40410f956825dc6_B_3_Float, _Property_7861e880056eb88ab923a2ff5b12179d_Out_0_Float, _OneMinus_e16dfb812ec64b8891c541171687142f_Out_1_Float, _Lerp_ee63160826cff4869f0e63568dd6f8b7_Out_3_Float);
|
|
float _Property_1c389d922d4fba86bc62c7d42ac8643d_Out_0_Float = _CoverNormalScale;
|
|
float3 _NormalStrength_db3de71f618fee878c84a13374c7adc4_Out_2_Vector3;
|
|
Unity_NormalStrength_float((_TriplanarNMn_ba7e211dd8095589a2939b5b239ca8e0_XYZ_1_Vector4.xyz), _Property_1c389d922d4fba86bc62c7d42ac8643d_Out_0_Float, _NormalStrength_db3de71f618fee878c84a13374c7adc4_Out_2_Vector3);
|
|
float3 _NormalBlend_b2e537e7a99f9280ba682b47daf3c5e3_Out_2_Vector3;
|
|
Unity_NormalBlend_float(_NormalStrength_db3de71f618fee878c84a13374c7adc4_Out_2_Vector3, _NormalStrength_401cd5af500bd68dbc9bca19d548d0db_Out_2_Vector3, _NormalBlend_b2e537e7a99f9280ba682b47daf3c5e3_Out_2_Vector3);
|
|
float2 _Vector2_b87489f8633d268598edb76163057164_Out_0_Vector2 = float2(_SampleTexture2D_4bd08411faa60c828847f2247f06a809_A_7_Float, _SampleTexture2D_4bd08411faa60c828847f2247f06a809_G_5_Float);
|
|
float2 _Multiply_95e603bb6d4bd7809de0ae42c8f45058_Out_2_Vector2;
|
|
Unity_Multiply_float2_float2(_Vector2_b87489f8633d268598edb76163057164_Out_0_Vector2, float2(2, 2), _Multiply_95e603bb6d4bd7809de0ae42c8f45058_Out_2_Vector2);
|
|
float2 _Add_c116ac3906ccf68d82dd5b73d0f5659a_Out_2_Vector2;
|
|
Unity_Add_float2(_Multiply_95e603bb6d4bd7809de0ae42c8f45058_Out_2_Vector2, float2(-1, -1), _Add_c116ac3906ccf68d82dd5b73d0f5659a_Out_2_Vector2);
|
|
float _Property_988acb131fd330878b4ac0672366ad90_Out_0_Float = _DetailCoverNormalScale;
|
|
float2 _Multiply_6de1a79215e1928f9f3fc3293df74f88_Out_2_Vector2;
|
|
Unity_Multiply_float2_float2(_Add_c116ac3906ccf68d82dd5b73d0f5659a_Out_2_Vector2, (_Property_988acb131fd330878b4ac0672366ad90_Out_0_Float.xx), _Multiply_6de1a79215e1928f9f3fc3293df74f88_Out_2_Vector2);
|
|
float _Split_9ce53bb7a65f16809b6a95d82286186e_R_1_Float = _Multiply_6de1a79215e1928f9f3fc3293df74f88_Out_2_Vector2[0];
|
|
float _Split_9ce53bb7a65f16809b6a95d82286186e_G_2_Float = _Multiply_6de1a79215e1928f9f3fc3293df74f88_Out_2_Vector2[1];
|
|
float _Split_9ce53bb7a65f16809b6a95d82286186e_B_3_Float = 0;
|
|
float _Split_9ce53bb7a65f16809b6a95d82286186e_A_4_Float = 0;
|
|
float _DotProduct_8912687db556b6819d2a38ba8511a7ae_Out_2_Float;
|
|
Unity_DotProduct_float2(_Multiply_6de1a79215e1928f9f3fc3293df74f88_Out_2_Vector2, _Multiply_6de1a79215e1928f9f3fc3293df74f88_Out_2_Vector2, _DotProduct_8912687db556b6819d2a38ba8511a7ae_Out_2_Float);
|
|
float _Saturate_013ea9a02a1ff18992540b270836cc73_Out_1_Float;
|
|
Unity_Saturate_float(_DotProduct_8912687db556b6819d2a38ba8511a7ae_Out_2_Float, _Saturate_013ea9a02a1ff18992540b270836cc73_Out_1_Float);
|
|
float _OneMinus_eefd2695dc7d77838984fc25a1c00b0b_Out_1_Float;
|
|
Unity_OneMinus_float(_Saturate_013ea9a02a1ff18992540b270836cc73_Out_1_Float, _OneMinus_eefd2695dc7d77838984fc25a1c00b0b_Out_1_Float);
|
|
float _SquareRoot_1d25cc71b4ce9286af1666a96ae6ac5a_Out_1_Float;
|
|
Unity_SquareRoot_float(_OneMinus_eefd2695dc7d77838984fc25a1c00b0b_Out_1_Float, _SquareRoot_1d25cc71b4ce9286af1666a96ae6ac5a_Out_1_Float);
|
|
float3 _Vector3_c3d9c7e92a1c5b8ea5650ab3bb421c27_Out_0_Vector3 = float3(_Split_9ce53bb7a65f16809b6a95d82286186e_R_1_Float, _Split_9ce53bb7a65f16809b6a95d82286186e_G_2_Float, _SquareRoot_1d25cc71b4ce9286af1666a96ae6ac5a_Out_1_Float);
|
|
float3 _NormalBlend_8e1d1c87f8c12b87b64883533bfa43be_Out_2_Vector3;
|
|
Unity_NormalBlend_float(_NormalBlend_b2e537e7a99f9280ba682b47daf3c5e3_Out_2_Vector3, _Vector3_c3d9c7e92a1c5b8ea5650ab3bb421c27_Out_0_Vector3, _NormalBlend_8e1d1c87f8c12b87b64883533bfa43be_Out_2_Vector3);
|
|
float3 _Lerp_48cd568fef7d358b8d65b989db745e6c_Out_3_Vector3;
|
|
Unity_Lerp_float3(_NormalBlend_4242e1b4a785378aa59dd49e9d993ffc_Out_2_Vector3, _NormalBlend_8e1d1c87f8c12b87b64883533bfa43be_Out_2_Vector3, (_Branch_3ccf365d359214809d30b6430d863e3f_Out_3_Float.xxx), _Lerp_48cd568fef7d358b8d65b989db745e6c_Out_3_Vector3);
|
|
surface.BaseColor = _Lerp_43bc7a9493df5a829abf080ee4ad3298_Out_3_Vector3;
|
|
surface.Emission = float3(0, 0, 0);
|
|
surface.Alpha = float(1);
|
|
surface.BentNormal = IN.TangentSpaceNormal;
|
|
surface.Smoothness = _Lerp_ee63160826cff4869f0e63568dd6f8b7_Out_3_Float;
|
|
surface.Occlusion = _Split_c4a5352a58a4f88fb40410f956825dc6_G_2_Float;
|
|
surface.NormalTS = _Lerp_48cd568fef7d358b8d65b989db745e6c_Out_3_Vector3;
|
|
surface.Metallic = _Split_c4a5352a58a4f88fb40410f956825dc6_R_1_Float;
|
|
{
|
|
surface.VTPackedFeedback = float4(1.0f,1.0f,1.0f,1.0f);
|
|
}
|
|
return surface;
|
|
}
|
|
|
|
// --------------------------------------------------
|
|
// Build Graph Inputs
|
|
#ifdef HAVE_VFX_MODIFICATION
|
|
#define VFX_SRP_ATTRIBUTES AttributesMesh
|
|
#define VaryingsMeshType VaryingsMeshToPS
|
|
#define VFX_SRP_VARYINGS VaryingsMeshType
|
|
#define VFX_SRP_SURFACE_INPUTS FragInputs
|
|
#endif
|
|
|
|
VertexDescriptionInputs AttributesMeshToVertexDescriptionInputs(AttributesMesh input)
|
|
{
|
|
VertexDescriptionInputs output;
|
|
ZERO_INITIALIZE(VertexDescriptionInputs, output);
|
|
|
|
output.ObjectSpaceNormal = input.normalOS;
|
|
output.ObjectSpaceTangent = input.tangentOS.xyz;
|
|
output.ObjectSpacePosition = input.positionOS;
|
|
#if UNITY_ANY_INSTANCING_ENABLED
|
|
#else
|
|
#endif
|
|
|
|
return output;
|
|
}
|
|
|
|
VertexDescription GetVertexDescription(AttributesMesh input, float3 timeParameters
|
|
#ifdef HAVE_VFX_MODIFICATION
|
|
, AttributesElement element
|
|
#endif
|
|
)
|
|
{
|
|
// build graph inputs
|
|
VertexDescriptionInputs vertexDescriptionInputs = AttributesMeshToVertexDescriptionInputs(input);
|
|
// Override time parameters with used one (This is required to correctly handle motion vectors for vertex animation based on time)
|
|
|
|
// evaluate vertex graph
|
|
#ifdef HAVE_VFX_MODIFICATION
|
|
GraphProperties properties;
|
|
ZERO_INITIALIZE(GraphProperties, properties);
|
|
|
|
// Fetch the vertex graph properties for the particle instance.
|
|
GetElementVertexProperties(element, properties);
|
|
|
|
VertexDescription vertexDescription = VertexDescriptionFunction(vertexDescriptionInputs, properties);
|
|
#else
|
|
VertexDescription vertexDescription = VertexDescriptionFunction(vertexDescriptionInputs);
|
|
#endif
|
|
return vertexDescription;
|
|
|
|
}
|
|
|
|
AttributesMesh ApplyMeshModification(AttributesMesh input, float3 timeParameters
|
|
#ifdef USE_CUSTOMINTERP_SUBSTRUCT
|
|
#ifdef TESSELLATION_ON
|
|
, inout VaryingsMeshToDS varyings
|
|
#else
|
|
, inout VaryingsMeshToPS varyings
|
|
#endif
|
|
#endif
|
|
#ifdef HAVE_VFX_MODIFICATION
|
|
, AttributesElement element
|
|
#endif
|
|
)
|
|
{
|
|
VertexDescription vertexDescription = GetVertexDescription(input, timeParameters
|
|
#ifdef HAVE_VFX_MODIFICATION
|
|
, element
|
|
#endif
|
|
);
|
|
|
|
// copy graph output to the results
|
|
input.positionOS = vertexDescription.Position;
|
|
input.normalOS = vertexDescription.Normal;
|
|
input.tangentOS.xyz = vertexDescription.Tangent;
|
|
|
|
|
|
|
|
return input;
|
|
}
|
|
|
|
#if defined(_ADD_CUSTOM_VELOCITY) // For shader graph custom velocity
|
|
// Return precomputed Velocity in object space
|
|
float3 GetCustomVelocity(AttributesMesh input
|
|
#ifdef HAVE_VFX_MODIFICATION
|
|
, AttributesElement element
|
|
#endif
|
|
)
|
|
{
|
|
VertexDescription vertexDescription = GetVertexDescription(input, _TimeParameters.xyz
|
|
#ifdef HAVE_VFX_MODIFICATION
|
|
, element
|
|
#endif
|
|
);
|
|
return vertexDescription.CustomVelocity;
|
|
}
|
|
#endif
|
|
|
|
FragInputs BuildFragInputs(VaryingsMeshToPS input)
|
|
{
|
|
FragInputs output;
|
|
ZERO_INITIALIZE(FragInputs, output);
|
|
|
|
// Init to some default value to make the computer quiet (else it output 'divide by zero' warning even if value is not used).
|
|
// TODO: this is a really poor workaround, but the variable is used in a bunch of places
|
|
// to compute normals which are then passed on elsewhere to compute other values...
|
|
output.tangentToWorld = k_identity3x3;
|
|
output.positionSS = input.positionCS; // input.positionCS is SV_Position
|
|
|
|
output.positionRWS = input.positionRWS;
|
|
output.tangentToWorld = BuildTangentToWorld(input.tangentWS, input.normalWS);
|
|
output.texCoord0 = input.texCoord0;
|
|
output.texCoord1 = input.texCoord1;
|
|
output.texCoord2 = input.texCoord2;
|
|
output.color = input.color;
|
|
|
|
#if UNITY_ANY_INSTANCING_ENABLED
|
|
#else
|
|
#endif
|
|
|
|
#ifdef HAVE_VFX_MODIFICATION
|
|
// FragInputs from VFX come from two places: Interpolator or CBuffer.
|
|
#if VFX_USE_GRAPH_VALUES
|
|
uint instanceActiveIndex = asuint(UNITY_ACCESS_INSTANCED_PROP(PerInstance, _InstanceActiveIndex));
|
|
/* WARNING: $splice Could not find named fragment 'VFXLoadGraphValues' */
|
|
#endif
|
|
|
|
/* WARNING: $splice Could not find named fragment 'VFXSetFragInputs' */
|
|
|
|
#endif
|
|
|
|
// splice point to copy custom interpolator fields from varyings to frag inputs
|
|
|
|
|
|
return output;
|
|
}
|
|
|
|
// existing HDRP code uses the combined function to go directly from packed to frag inputs
|
|
FragInputs UnpackVaryingsMeshToFragInputs(PackedVaryingsMeshToPS input)
|
|
{
|
|
UNITY_SETUP_INSTANCE_ID(input);
|
|
#if defined(HAVE_VFX_MODIFICATION) && defined(UNITY_INSTANCING_ENABLED)
|
|
unity_InstanceID = input.instanceID;
|
|
#endif
|
|
VaryingsMeshToPS unpacked = UnpackVaryingsMeshToPS(input);
|
|
return BuildFragInputs(unpacked);
|
|
}
|
|
SurfaceDescriptionInputs FragInputsToSurfaceDescriptionInputs(FragInputs input, float3 viewWS)
|
|
{
|
|
SurfaceDescriptionInputs output;
|
|
ZERO_INITIALIZE(SurfaceDescriptionInputs, output);
|
|
|
|
output.WorldSpaceNormal = normalize(input.tangentToWorld[2].xyz);
|
|
#if defined(SHADER_STAGE_RAY_TRACING)
|
|
#else
|
|
#endif
|
|
output.TangentSpaceNormal = float3(0.0f, 0.0f, 1.0f);
|
|
output.WorldSpaceTangent = input.tangentToWorld[0].xyz;
|
|
output.WorldSpaceBiTangent = input.tangentToWorld[1].xyz;
|
|
output.AbsoluteWorldSpacePosition = GetAbsolutePositionWS(input.positionRWS);
|
|
|
|
#if UNITY_UV_STARTS_AT_TOP
|
|
#else
|
|
#endif
|
|
|
|
|
|
output.uv0 = input.texCoord0;
|
|
output.VertexColor = input.color;
|
|
|
|
// splice point to copy frag inputs custom interpolator pack into the SDI
|
|
|
|
|
|
return output;
|
|
}
|
|
|
|
// --------------------------------------------------
|
|
// Build Surface Data (Specific Material)
|
|
|
|
void ApplyDecalToSurfaceDataNoNormal(DecalSurfaceData decalSurfaceData, inout SurfaceData surfaceData);
|
|
|
|
void ApplyDecalAndGetNormal(FragInputs fragInputs, PositionInputs posInput, SurfaceDescription surfaceDescription,
|
|
inout SurfaceData surfaceData)
|
|
{
|
|
float3 doubleSidedConstants = GetDoubleSidedConstants();
|
|
|
|
#ifdef DECAL_NORMAL_BLENDING
|
|
// SG nodes don't ouptut surface gradients, so if decals require surf grad blending, we have to convert
|
|
// the normal to gradient before applying the decal. We then have to resolve the gradient back to world space
|
|
float3 normalTS;
|
|
|
|
normalTS = SurfaceGradientFromTangentSpaceNormalAndFromTBN(surfaceDescription.NormalTS,
|
|
fragInputs.tangentToWorld[0], fragInputs.tangentToWorld[1]);
|
|
|
|
|
|
#if HAVE_DECALS
|
|
if (_EnableDecals)
|
|
{
|
|
float alpha = 1.0;
|
|
alpha = surfaceDescription.Alpha;
|
|
|
|
DecalSurfaceData decalSurfaceData = GetDecalSurfaceData(posInput, fragInputs, alpha);
|
|
ApplyDecalToSurfaceNormal(decalSurfaceData, fragInputs.tangentToWorld[2], normalTS);
|
|
ApplyDecalToSurfaceDataNoNormal(decalSurfaceData, surfaceData);
|
|
}
|
|
#endif
|
|
|
|
GetNormalWS_SG(fragInputs, normalTS, surfaceData.normalWS, doubleSidedConstants);
|
|
#else
|
|
// normal delivered to master node
|
|
GetNormalWS(fragInputs, surfaceDescription.NormalTS, surfaceData.normalWS, doubleSidedConstants);
|
|
|
|
#if HAVE_DECALS
|
|
if (_EnableDecals)
|
|
{
|
|
float alpha = 1.0;
|
|
alpha = surfaceDescription.Alpha;
|
|
|
|
// Both uses and modifies 'surfaceData.normalWS'.
|
|
DecalSurfaceData decalSurfaceData = GetDecalSurfaceData(posInput, fragInputs, alpha);
|
|
ApplyDecalToSurfaceNormal(decalSurfaceData, surfaceData.normalWS.xyz);
|
|
ApplyDecalToSurfaceDataNoNormal(decalSurfaceData, surfaceData);
|
|
}
|
|
#endif
|
|
#endif
|
|
}
|
|
void BuildSurfaceData(FragInputs fragInputs, inout SurfaceDescription surfaceDescription, float3 V, PositionInputs posInput, out SurfaceData surfaceData, out float3 bentNormalWS)
|
|
{
|
|
ZERO_INITIALIZE(SurfaceData, surfaceData);
|
|
|
|
// specularOcclusion need to be init ahead of decal to quiet the compiler that modify the SurfaceData struct
|
|
// however specularOcclusion can come from the graph, so need to be init here so it can be override.
|
|
surfaceData.specularOcclusion = 1.0;
|
|
surfaceData.thickness = 0.0;
|
|
|
|
surfaceData.baseColor = surfaceDescription.BaseColor;
|
|
surfaceData.perceptualSmoothness = surfaceDescription.Smoothness;
|
|
surfaceData.ambientOcclusion = surfaceDescription.Occlusion;
|
|
surfaceData.metallic = surfaceDescription.Metallic;
|
|
|
|
#if defined(_REFRACTION_PLANE) || defined(_REFRACTION_SPHERE) || defined(_REFRACTION_THIN)
|
|
if (_EnableSSRefraction)
|
|
{
|
|
|
|
surfaceData.transmittanceMask = (1.0 - surfaceDescription.Alpha);
|
|
surfaceDescription.Alpha = 1.0;
|
|
}
|
|
else
|
|
{
|
|
surfaceData.ior = 1.0;
|
|
surfaceData.transmittanceColor = float3(1.0, 1.0, 1.0);
|
|
surfaceData.atDistance = 1.0;
|
|
surfaceData.transmittanceMask = 0.0;
|
|
surfaceDescription.Alpha = 1.0;
|
|
}
|
|
#else
|
|
surfaceData.ior = 1.0;
|
|
surfaceData.transmittanceColor = float3(1.0, 1.0, 1.0);
|
|
surfaceData.atDistance = 1.0;
|
|
surfaceData.transmittanceMask = 0.0;
|
|
#endif
|
|
|
|
// These static material feature allow compile time optimization
|
|
surfaceData.materialFeatures = MATERIALFEATUREFLAGS_LIT_STANDARD;
|
|
#ifdef _MATERIAL_FEATURE_SUBSURFACE_SCATTERING
|
|
surfaceData.materialFeatures |= MATERIALFEATUREFLAGS_LIT_SUBSURFACE_SCATTERING;
|
|
#endif
|
|
|
|
#ifdef _MATERIAL_FEATURE_TRANSMISSION
|
|
surfaceData.materialFeatures |= MATERIALFEATUREFLAGS_LIT_TRANSMISSION;
|
|
#endif
|
|
|
|
#ifdef _MATERIAL_FEATURE_COLORED_TRANSMISSION
|
|
surfaceData.materialFeatures |= MATERIALFEATUREFLAGS_LIT_TRANSMISSION;
|
|
surfaceData.materialFeatures |= MATERIALFEATUREFLAGS_LIT_COLORED_TRANSMISSION;
|
|
|
|
#endif
|
|
|
|
#ifdef _MATERIAL_FEATURE_ANISOTROPY
|
|
surfaceData.materialFeatures |= MATERIALFEATUREFLAGS_LIT_ANISOTROPY;
|
|
|
|
// Initialize the normal to something non-zero to avoid a div-zero warning for anisotropy.
|
|
surfaceData.normalWS = float3(0, 1, 0);
|
|
#endif
|
|
|
|
#ifdef _MATERIAL_FEATURE_IRIDESCENCE
|
|
surfaceData.materialFeatures |= MATERIALFEATUREFLAGS_LIT_IRIDESCENCE;
|
|
#endif
|
|
|
|
#ifdef _MATERIAL_FEATURE_SPECULAR_COLOR
|
|
surfaceData.materialFeatures |= MATERIALFEATUREFLAGS_LIT_SPECULAR_COLOR;
|
|
#endif
|
|
|
|
#ifdef _MATERIAL_FEATURE_CLEAR_COAT
|
|
surfaceData.materialFeatures |= MATERIALFEATUREFLAGS_LIT_CLEAR_COAT;
|
|
#endif
|
|
|
|
#if defined (_MATERIAL_FEATURE_SPECULAR_COLOR) && defined (_ENERGY_CONSERVING_SPECULAR)
|
|
// Require to have setup baseColor
|
|
// Reproduce the energy conservation done in legacy Unity. Not ideal but better for compatibility and users can unchek it
|
|
surfaceData.baseColor *= (1.0 - Max3(surfaceData.specularColor.r, surfaceData.specularColor.g, surfaceData.specularColor.b));
|
|
#endif
|
|
|
|
float3 doubleSidedConstants = GetDoubleSidedConstants();
|
|
|
|
ApplyDecalAndGetNormal(fragInputs, posInput, surfaceDescription, surfaceData);
|
|
|
|
surfaceData.geomNormalWS = fragInputs.tangentToWorld[2];
|
|
|
|
surfaceData.tangentWS = normalize(fragInputs.tangentToWorld[0].xyz); // The tangent is not normalize in tangentToWorld for mikkt. TODO: Check if it expected that we normalize with Morten. Tag: SURFACE_GRADIENT
|
|
|
|
|
|
bentNormalWS = surfaceData.normalWS;
|
|
|
|
surfaceData.tangentWS = Orthonormalize(surfaceData.tangentWS, surfaceData.normalWS);
|
|
|
|
#ifdef DEBUG_DISPLAY
|
|
#if !defined(SHADER_STAGE_RAY_TRACING)
|
|
// Mipmap mode debugging isn't supported with ray tracing as it relies on derivatives
|
|
if (_DebugMipMapMode != DEBUGMIPMAPMODE_NONE)
|
|
{
|
|
#ifdef FRAG_INPUTS_USE_TEXCOORD0
|
|
surfaceData.baseColor = GET_TEXTURE_STREAMING_DEBUG(posInput.positionSS, fragInputs.texCoord0);
|
|
#else
|
|
surfaceData.baseColor = GET_TEXTURE_STREAMING_DEBUG_NO_UV(posInput.positionSS);
|
|
#endif
|
|
surfaceData.metallic = 0;
|
|
}
|
|
#endif
|
|
|
|
// We need to call ApplyDebugToSurfaceData after filling the surfaceData and before filling builtinData
|
|
// as it can modify attribute use for static lighting
|
|
ApplyDebugToSurfaceData(fragInputs.tangentToWorld, surfaceData);
|
|
#endif
|
|
|
|
// By default we use the ambient occlusion with Tri-ace trick (apply outside) for specular occlusion.
|
|
// If user provide bent normal then we process a better term
|
|
#if defined(_SPECULAR_OCCLUSION_CUSTOM)
|
|
// Just use the value passed through via the slot (not active otherwise)
|
|
#elif defined(_SPECULAR_OCCLUSION_FROM_AO_BENT_NORMAL)
|
|
// If we have bent normal and ambient occlusion, process a specular occlusion
|
|
surfaceData.specularOcclusion = GetSpecularOcclusionFromBentAO(V, bentNormalWS, surfaceData.normalWS, surfaceData.ambientOcclusion, PerceptualSmoothnessToPerceptualRoughness(surfaceData.perceptualSmoothness));
|
|
#elif defined(_AMBIENT_OCCLUSION) && defined(_SPECULAR_OCCLUSION_FROM_AO)
|
|
surfaceData.specularOcclusion = GetSpecularOcclusionFromAmbientOcclusion(ClampNdotV(dot(surfaceData.normalWS, V)), surfaceData.ambientOcclusion, PerceptualSmoothnessToRoughness(surfaceData.perceptualSmoothness));
|
|
#endif
|
|
|
|
#if defined(_ENABLE_GEOMETRIC_SPECULAR_AA) && !defined(SHADER_STAGE_RAY_TRACING)
|
|
surfaceData.perceptualSmoothness = GeometricNormalFiltering(surfaceData.perceptualSmoothness, fragInputs.tangentToWorld[2], surfaceDescription.SpecularAAScreenSpaceVariance, surfaceDescription.SpecularAAThreshold);
|
|
#endif
|
|
}
|
|
|
|
// --------------------------------------------------
|
|
// Get Surface And BuiltinData
|
|
|
|
void GetSurfaceAndBuiltinData(FragInputs fragInputs, float3 V, inout PositionInputs posInput, out SurfaceData surfaceData, out BuiltinData builtinData RAY_TRACING_OPTIONAL_PARAMETERS)
|
|
{
|
|
// Don't dither if displaced tessellation (we're fading out the displacement instead to match the next LOD)
|
|
#if !defined(SHADER_STAGE_RAY_TRACING) && !defined(_TESSELLATION_DISPLACEMENT)
|
|
#ifdef LOD_FADE_CROSSFADE // enable dithering LOD transition if user select CrossFade transition in LOD group
|
|
LODDitheringTransition(ComputeFadeMaskSeed(V, posInput.positionSS), unity_LODFade.x);
|
|
#endif
|
|
#endif
|
|
|
|
#ifndef SHADER_UNLIT
|
|
#ifdef _DOUBLESIDED_ON
|
|
float3 doubleSidedConstants = _DoubleSidedConstants.xyz;
|
|
#else
|
|
float3 doubleSidedConstants = float3(1.0, 1.0, 1.0);
|
|
#endif
|
|
|
|
ApplyDoubleSidedFlipOrMirror(fragInputs, doubleSidedConstants); // Apply double sided flip on the vertex normal
|
|
#endif // SHADER_UNLIT
|
|
|
|
SurfaceDescriptionInputs surfaceDescriptionInputs = FragInputsToSurfaceDescriptionInputs(fragInputs, V);
|
|
|
|
#if defined(HAVE_VFX_MODIFICATION)
|
|
GraphProperties properties;
|
|
ZERO_INITIALIZE(GraphProperties, properties);
|
|
|
|
GetElementPixelProperties(fragInputs, properties);
|
|
|
|
SurfaceDescription surfaceDescription = SurfaceDescriptionFunction(surfaceDescriptionInputs, properties);
|
|
#else
|
|
SurfaceDescription surfaceDescription = SurfaceDescriptionFunction(surfaceDescriptionInputs);
|
|
#endif
|
|
|
|
#ifdef DEBUG_DISPLAY
|
|
if (_DebugMipMapMode != DEBUGMIPMAPMODE_NONE)
|
|
{
|
|
surfaceDescription.Alpha = 1.0f;
|
|
}
|
|
#endif
|
|
|
|
// Perform alpha test very early to save performance (a killed pixel will not sample textures)
|
|
// TODO: split graph evaluation to grab just alpha dependencies first? tricky..
|
|
#ifdef _ALPHATEST_ON
|
|
float alphaCutoff = surfaceDescription.AlphaClipThreshold;
|
|
#if SHADERPASS == SHADERPASS_TRANSPARENT_DEPTH_PREPASS
|
|
// The TransparentDepthPrepass is also used with SSR transparent.
|
|
// If an artists enable transaprent SSR but not the TransparentDepthPrepass itself, then we use AlphaClipThreshold
|
|
// otherwise if TransparentDepthPrepass is enabled we use AlphaClipThresholdDepthPrepass
|
|
#elif SHADERPASS == SHADERPASS_TRANSPARENT_DEPTH_POSTPASS
|
|
// DepthPostpass always use its own alpha threshold
|
|
alphaCutoff = surfaceDescription.AlphaClipThresholdDepthPostpass;
|
|
#elif (SHADERPASS == SHADERPASS_SHADOWS) || (SHADERPASS == SHADERPASS_RAYTRACING_VISIBILITY)
|
|
// If use shadow threshold isn't enable we don't allow any test
|
|
#endif
|
|
|
|
GENERIC_ALPHA_TEST(surfaceDescription.Alpha, alphaCutoff);
|
|
#endif
|
|
|
|
#if !defined(SHADER_STAGE_RAY_TRACING) && _DEPTHOFFSET_ON
|
|
ApplyDepthOffsetPositionInput(V, surfaceDescription.DepthOffset, GetViewForwardDir(), GetWorldToHClipMatrix(), posInput);
|
|
#endif
|
|
|
|
#ifndef SHADER_UNLIT
|
|
float3 bentNormalWS;
|
|
BuildSurfaceData(fragInputs, surfaceDescription, V, posInput, surfaceData, bentNormalWS);
|
|
|
|
#ifdef FRAG_INPUTS_USE_TEXCOORD1
|
|
float4 lightmapTexCoord1 = fragInputs.texCoord1;
|
|
#else
|
|
float4 lightmapTexCoord1 = float4(0,0,0,0);
|
|
#endif
|
|
|
|
#ifdef FRAG_INPUTS_USE_TEXCOORD2
|
|
float4 lightmapTexCoord2 = fragInputs.texCoord2;
|
|
#else
|
|
float4 lightmapTexCoord2 = float4(0,0,0,0);
|
|
#endif
|
|
|
|
float alpha = 1.0;
|
|
alpha = surfaceDescription.Alpha;
|
|
|
|
// Builtin Data
|
|
// For back lighting we use the oposite vertex normal
|
|
InitBuiltinData(posInput, alpha, bentNormalWS, -fragInputs.tangentToWorld[2], lightmapTexCoord1, lightmapTexCoord2, builtinData);
|
|
|
|
#else
|
|
BuildSurfaceData(fragInputs, surfaceDescription, V, posInput, surfaceData);
|
|
|
|
ZERO_BUILTIN_INITIALIZE(builtinData); // No call to InitBuiltinData as we don't have any lighting
|
|
builtinData.opacity = surfaceDescription.Alpha;
|
|
|
|
#if defined(DEBUG_DISPLAY)
|
|
// Light Layers are currently not used for the Unlit shader (because it is not lit)
|
|
// But Unlit objects do cast shadows according to their rendering layer mask, which is what we want to
|
|
// display in the light layers visualization mode, therefore we need the renderingLayers
|
|
builtinData.renderingLayers = GetMeshRenderingLayerMask();
|
|
#endif
|
|
|
|
#endif // SHADER_UNLIT
|
|
|
|
#ifdef _ALPHATEST_ON
|
|
// Used for sharpening by alpha to mask - Alpha to covertage is only used with depth only and forward pass (no shadow pass, no transparent pass)
|
|
builtinData.alphaClipTreshold = alphaCutoff;
|
|
#endif
|
|
|
|
// override sampleBakedGI - not used by Unlit
|
|
// When overriding GI, we need to force the isLightmap flag to make sure we don't add APV (sampled in the lightloop) on top of the overridden value (set at GBuffer stage)
|
|
|
|
builtinData.emissiveColor = surfaceDescription.Emission;
|
|
|
|
// Note this will not fully work on transparent surfaces (can check with _SURFACE_TYPE_TRANSPARENT define)
|
|
// We will always overwrite vt feeback with the nearest. So behind transparent surfaces vt will not be resolved
|
|
// This is a limitation of the current MRT approach.
|
|
#ifdef UNITY_VIRTUAL_TEXTURING
|
|
builtinData.vtPackedFeedback = surfaceDescription.VTPackedFeedback;
|
|
#endif
|
|
|
|
#if _DEPTHOFFSET_ON
|
|
builtinData.depthOffset = surfaceDescription.DepthOffset;
|
|
#endif
|
|
|
|
// TODO: We should generate distortion / distortionBlur for non distortion pass
|
|
#if (SHADERPASS == SHADERPASS_DISTORTION)
|
|
builtinData.distortion = surfaceDescription.Distortion;
|
|
builtinData.distortionBlur = surfaceDescription.DistortionBlur;
|
|
#endif
|
|
|
|
#ifndef SHADER_UNLIT
|
|
// PostInitBuiltinData call ApplyDebugToBuiltinData
|
|
PostInitBuiltinData(V, posInput, surfaceData, builtinData);
|
|
#else
|
|
ApplyDebugToBuiltinData(builtinData);
|
|
#endif
|
|
|
|
RAY_TRACING_OPTIONAL_ALPHA_TEST_PASS
|
|
}
|
|
|
|
// --------------------------------------------------
|
|
// Main
|
|
|
|
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/RenderPipeline/ShaderPass/ShaderPassGBuffer.hlsl"
|
|
|
|
// --------------------------------------------------
|
|
// Visual Effect Vertex Invocations
|
|
|
|
#ifdef HAVE_VFX_MODIFICATION
|
|
#if !defined(SHADER_STAGE_RAY_TRACING)
|
|
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/ShaderLibrary/VisualEffectVertex.hlsl"
|
|
#else
|
|
#endif
|
|
#endif
|
|
|
|
ENDHLSL
|
|
}
|
|
Pass
|
|
{
|
|
Name "Forward"
|
|
Tags
|
|
{
|
|
"LightMode" = "Forward"
|
|
}
|
|
|
|
// Render State
|
|
Cull [_CullModeForward]
|
|
Blend [_SrcBlend] [_DstBlend], [_AlphaSrcBlend] [_AlphaDstBlend]
|
|
Blend 1 One OneMinusSrcAlpha
|
|
Blend 2 One [_DstBlend2]
|
|
Blend 3 One [_DstBlend2]
|
|
Blend 4 One OneMinusSrcAlpha
|
|
ZTest [_ZTestDepthEqualForOpaque]
|
|
ZWrite [_ZWrite]
|
|
ColorMask [_ColorMaskTransparentVelOne] 1
|
|
ColorMask [_ColorMaskTransparentVelTwo] 2
|
|
Stencil
|
|
{
|
|
WriteMask [_StencilWriteMask]
|
|
Ref [_StencilRef]
|
|
CompFront Always
|
|
PassFront Replace
|
|
CompBack Always
|
|
PassBack Replace
|
|
}
|
|
|
|
// Debug
|
|
// <None>
|
|
|
|
// --------------------------------------------------
|
|
// Pass
|
|
|
|
HLSLPROGRAM
|
|
|
|
// Pragmas
|
|
#pragma multi_compile _ DOTS_INSTANCING_ON
|
|
#pragma instancing_options renderinglayer
|
|
#pragma target 4.5
|
|
#pragma vertex Vert
|
|
#pragma fragment Frag
|
|
#pragma only_renderers d3d11 playstation xboxone xboxseries vulkan metal switch
|
|
#pragma multi_compile_instancing
|
|
|
|
// Keywords
|
|
#pragma shader_feature _ _SURFACE_TYPE_TRANSPARENT
|
|
#pragma shader_feature_local _ _DOUBLESIDED_ON
|
|
#pragma shader_feature_local _ _ADD_PRECOMPUTED_VELOCITY
|
|
#pragma shader_feature_local _ _TRANSPARENT_WRITES_MOTION_VEC _TRANSPARENT_REFRACTIVE_SORT
|
|
#pragma shader_feature_local_fragment _ _ENABLE_FOG_ON_TRANSPARENT
|
|
#pragma multi_compile _ DEBUG_DISPLAY
|
|
#pragma multi_compile _ LOD_FADE_CROSSFADE
|
|
#pragma shader_feature_local_fragment _ _DISABLE_DECALS
|
|
#pragma shader_feature_local_raytracing _ _DISABLE_DECALS
|
|
#pragma shader_feature_local_fragment _ _DISABLE_SSR
|
|
#pragma shader_feature_local_raytracing _ _DISABLE_SSR
|
|
#pragma shader_feature_local_fragment _ _DISABLE_SSR_TRANSPARENT
|
|
#pragma shader_feature_local_raytracing _ _DISABLE_SSR_TRANSPARENT
|
|
#pragma multi_compile _ LIGHTMAP_ON
|
|
#pragma multi_compile _ DIRLIGHTMAP_COMBINED
|
|
#pragma multi_compile_fragment _ PROBE_VOLUMES_L1 PROBE_VOLUMES_L2
|
|
#pragma multi_compile_raytracing _ PROBE_VOLUMES_L1 PROBE_VOLUMES_L2
|
|
#pragma multi_compile _ DYNAMICLIGHTMAP_ON
|
|
#pragma multi_compile_fragment _ SHADOWS_SHADOWMASK
|
|
#pragma multi_compile_raytracing _ SHADOWS_SHADOWMASK
|
|
#pragma multi_compile_fragment DECALS_OFF DECALS_3RT DECALS_4RT
|
|
#pragma multi_compile_fragment _ DECAL_SURFACE_GRADIENT
|
|
#pragma multi_compile _ USE_LEGACY_LIGHTMAPS
|
|
#pragma multi_compile_fragment PUNCTUAL_SHADOW_LOW PUNCTUAL_SHADOW_MEDIUM PUNCTUAL_SHADOW_HIGH
|
|
#pragma multi_compile_fragment DIRECTIONAL_SHADOW_LOW DIRECTIONAL_SHADOW_MEDIUM DIRECTIONAL_SHADOW_HIGH
|
|
#pragma multi_compile_fragment AREA_SHADOW_MEDIUM AREA_SHADOW_HIGH
|
|
#pragma multi_compile_fragment SCREEN_SPACE_SHADOWS_OFF SCREEN_SPACE_SHADOWS_ON
|
|
#pragma multi_compile_fragment USE_FPTL_LIGHTLIST USE_CLUSTERED_LIGHTLIST
|
|
#pragma shader_feature_local _ _REFRACTION_PLANE _REFRACTION_SPHERE _REFRACTION_THIN
|
|
#pragma shader_feature_local_fragment _MATERIAL_FEATURE_SUBSURFACE_SCATTERING
|
|
#pragma shader_feature_local_raytracing _MATERIAL_FEATURE_SUBSURFACE_SCATTERING
|
|
#pragma shader_feature_local_fragment _MATERIAL_FEATURE_TRANSMISSION
|
|
#pragma shader_feature_local_raytracing _MATERIAL_FEATURE_TRANSMISSION
|
|
#pragma shader_feature_local_fragment _MATERIAL_FEATURE_ANISOTROPY
|
|
#pragma shader_feature_local_raytracing _MATERIAL_FEATURE_ANISOTROPY
|
|
#pragma shader_feature_local_fragment _MATERIAL_FEATURE_IRIDESCENCE
|
|
#pragma shader_feature_local_raytracing _MATERIAL_FEATURE_IRIDESCENCE
|
|
#pragma shader_feature_local_fragment _MATERIAL_FEATURE_SPECULAR_COLOR
|
|
#pragma shader_feature_local_raytracing _MATERIAL_FEATURE_SPECULAR_COLOR
|
|
#pragma shader_feature_local_fragment _MATERIAL_FEATURE_COLORED_TRANSMISSION
|
|
#pragma shader_feature_local_raytracing _MATERIAL_FEATURE_COLORED_TRANSMISSION
|
|
// GraphKeywords: <None>
|
|
|
|
// Defines
|
|
#define SHADERPASS SHADERPASS_FORWARD
|
|
#define SUPPORT_BLENDMODE_PRESERVE_SPECULAR_LIGHTING 1
|
|
#define HAS_LIGHTLOOP 1
|
|
#define RAYTRACING_SHADER_GRAPH_DEFAULT
|
|
#define SHADER_LIT 1
|
|
#define SUPPORT_GLOBAL_MIP_BIAS 1
|
|
|
|
// For custom interpolators to inject a substruct definition before FragInputs definition,
|
|
// allowing for FragInputs to capture CI's intended for ShaderGraph's SDI.
|
|
struct CustomInterpolators
|
|
{
|
|
};
|
|
#define USE_CUSTOMINTERP_SUBSTRUCT
|
|
|
|
|
|
|
|
// TODO: Merge FragInputsVFX substruct with CustomInterpolators.
|
|
#ifdef HAVE_VFX_MODIFICATION
|
|
struct FragInputsVFX
|
|
{
|
|
/* WARNING: $splice Could not find named fragment 'FragInputsVFX' */
|
|
};
|
|
#endif
|
|
|
|
#include "Packages/com.unity.render-pipelines.core/ShaderLibrary/Common.hlsl"
|
|
#include "Packages/com.unity.render-pipelines.core/ShaderLibrary/GeometricTools.hlsl" // Required by Tessellation.hlsl
|
|
#include "Packages/com.unity.render-pipelines.core/ShaderLibrary/Tessellation.hlsl"
|
|
#include "Packages/com.unity.render-pipelines.core/ShaderLibrary/Texture.hlsl"
|
|
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/ShaderLibrary/ShaderVariables.hlsl"
|
|
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/RenderPipeline/ShaderPass/ShaderPass.cs.hlsl"
|
|
#include "Packages/com.unity.render-pipelines.core/ShaderLibrary/TextureStack.hlsl" // Required to be include before we include properties as it define DECLARE_STACK_CB
|
|
#include "Packages/com.unity.render-pipelines.core/ShaderLibrary/DebugMipmapStreamingMacros.hlsl" // Required before including properties as it defines UNITY_TEXTURE_STREAMING_DEBUG_VARS
|
|
// Always include Shader Graph version
|
|
// Always include last to avoid double macros
|
|
#include "Packages/com.unity.shadergraph/ShaderGraphLibrary/Functions.hlsl" // Need to be here for Gradient struct definition
|
|
|
|
// --------------------------------------------------
|
|
// Defines
|
|
|
|
// Attribute
|
|
#define ATTRIBUTES_NEED_NORMAL
|
|
#define ATTRIBUTES_NEED_TANGENT
|
|
#define ATTRIBUTES_NEED_TEXCOORD0
|
|
#define ATTRIBUTES_NEED_TEXCOORD1
|
|
#define ATTRIBUTES_NEED_TEXCOORD2
|
|
#define ATTRIBUTES_NEED_COLOR
|
|
#define VARYINGS_NEED_POSITION_WS
|
|
#define VARYINGS_NEED_TANGENT_TO_WORLD
|
|
#define VARYINGS_NEED_TEXCOORD0
|
|
#define VARYINGS_NEED_TEXCOORD1
|
|
#define VARYINGS_NEED_TEXCOORD2
|
|
#define VARYINGS_NEED_COLOR
|
|
|
|
#define HAVE_MESH_MODIFICATION
|
|
|
|
//Strip down the FragInputs.hlsl (on graphics), so we can only optimize the interpolators we use.
|
|
//if by accident something requests contents of FragInputs.hlsl, it will be caught as a compiler error
|
|
//Frag inputs stripping is only enabled when FRAG_INPUTS_ENABLE_STRIPPING is set
|
|
#if !defined(SHADER_STAGE_RAY_TRACING) && SHADERPASS != SHADERPASS_RAYTRACING_GBUFFER && SHADERPASS != SHADERPASS_FULL_SCREEN_DEBUG
|
|
#define FRAG_INPUTS_ENABLE_STRIPPING
|
|
#endif
|
|
#define FRAG_INPUTS_USE_TEXCOORD0
|
|
#define FRAG_INPUTS_USE_TEXCOORD1
|
|
#define FRAG_INPUTS_USE_TEXCOORD2
|
|
|
|
|
|
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/RenderPipeline/ShaderPass/FragInputs.hlsl"
|
|
|
|
|
|
|
|
|
|
// Following two define are a workaround introduce in 10.1.x for RaytracingQualityNode
|
|
// The ShaderGraph don't support correctly migration of this node as it serialize all the node data
|
|
// in the json file making it impossible to uprgrade. Until we get a fix, we do a workaround here
|
|
// to still allow us to rename the field and keyword of this node without breaking existing code.
|
|
#ifdef RAYTRACING_SHADER_GRAPH_DEFAULT
|
|
#define RAYTRACING_SHADER_GRAPH_HIGH
|
|
#endif
|
|
|
|
#ifdef RAYTRACING_SHADER_GRAPH_RAYTRACED
|
|
#define RAYTRACING_SHADER_GRAPH_LOW
|
|
#endif
|
|
// end
|
|
|
|
#ifndef SHADER_UNLIT
|
|
// We need isFrontFace when using double sided - it is not required for unlit as in case of unlit double sided only drive the cullmode
|
|
// VARYINGS_NEED_CULLFACE can be define by VaryingsMeshToPS.FaceSign input if a IsFrontFace Node is included in the shader graph.
|
|
#if defined(_DOUBLESIDED_ON) && !defined(VARYINGS_NEED_CULLFACE)
|
|
#define VARYINGS_NEED_CULLFACE
|
|
#endif
|
|
#endif
|
|
|
|
// Specific Material Define
|
|
#define _AMBIENT_OCCLUSION 1
|
|
#define _SPECULAR_OCCLUSION_FROM_AO 1
|
|
#define _ENERGY_CONSERVING_SPECULAR 1
|
|
|
|
#if _MATERIAL_FEATURE_COLORED_TRANSMISSION
|
|
// Colored Transmission doesn't support clear coat
|
|
#undef _MATERIAL_FEATURE_CLEAR_COAT
|
|
#endif
|
|
|
|
// If we use subsurface scattering, enable output split lighting (for forward pass)
|
|
#if defined(_MATERIAL_FEATURE_SUBSURFACE_SCATTERING) && !defined(_SURFACE_TYPE_TRANSPARENT)
|
|
#define OUTPUT_SPLIT_LIGHTING
|
|
#endif
|
|
|
|
// This shader support recursive rendering for raytracing
|
|
#define HAVE_RECURSIVE_RENDERING
|
|
|
|
// In Path Tracing, For all single-sided, refractive materials, we want to force a thin refraction model
|
|
#if (SHADERPASS == SHADERPASS_PATH_TRACING) && !defined(_DOUBLESIDED_ON) && (defined(_REFRACTION_PLANE) || defined(_REFRACTION_SPHERE))
|
|
#undef _REFRACTION_PLANE
|
|
#undef _REFRACTION_SPHERE
|
|
#define _REFRACTION_THIN
|
|
#endif
|
|
// Caution: we can use the define SHADER_UNLIT onlit after the above Material include as it is the Unlit template who define it
|
|
|
|
// To handle SSR on transparent correctly with a possibility to enable/disable it per framesettings
|
|
// we should have a code like this:
|
|
// if !defined(_DISABLE_SSR_TRANSPARENT)
|
|
// pragma multi_compile _ WRITE_NORMAL_BUFFER
|
|
// endif
|
|
// i.e we enable the multicompile only if we can receive SSR or not, and then C# code drive
|
|
// it based on if SSR transparent in frame settings and not (and stripper can strip it).
|
|
// this is currently not possible with our current preprocessor as _DISABLE_SSR_TRANSPARENT is a keyword not a define
|
|
// so instead we used this and chose to pay the extra cost of normal write even if SSR transaprent is disabled.
|
|
// Ideally the shader graph generator should handle it but condition below can't be handle correctly for now.
|
|
#if SHADERPASS == SHADERPASS_TRANSPARENT_DEPTH_PREPASS
|
|
#if !defined(_DISABLE_SSR_TRANSPARENT) && !defined(SHADER_UNLIT)
|
|
#define WRITE_NORMAL_BUFFER
|
|
#endif
|
|
#endif
|
|
|
|
// See Lit.shader
|
|
#if SHADERPASS == SHADERPASS_MOTION_VECTORS && defined(WRITE_DECAL_BUFFER_AND_RENDERING_LAYER)
|
|
#define WRITE_DECAL_BUFFER
|
|
#endif
|
|
|
|
#ifndef DEBUG_DISPLAY
|
|
// In case of opaque we don't want to perform the alpha test, it is done in depth prepass and we use depth equal for ztest (setup from UI)
|
|
// Don't do it with debug display mode as it is possible there is no depth prepass in this case
|
|
#if !defined(_SURFACE_TYPE_TRANSPARENT)
|
|
#if SHADERPASS == SHADERPASS_FORWARD
|
|
#define SHADERPASS_FORWARD_BYPASS_ALPHA_TEST
|
|
#elif SHADERPASS == SHADERPASS_GBUFFER
|
|
#define SHADERPASS_GBUFFER_BYPASS_ALPHA_TEST
|
|
#endif
|
|
#endif
|
|
#endif
|
|
|
|
// Define _DEFERRED_CAPABLE_MATERIAL for shader capable to run in deferred pass
|
|
#if defined(SHADER_LIT) && !defined(_SURFACE_TYPE_TRANSPARENT)
|
|
#define _DEFERRED_CAPABLE_MATERIAL
|
|
#endif
|
|
|
|
// Translate transparent motion vector define
|
|
#if (defined(_TRANSPARENT_WRITES_MOTION_VEC) || defined(_TRANSPARENT_REFRACTIVE_SORT)) && defined(_SURFACE_TYPE_TRANSPARENT)
|
|
#define _WRITE_TRANSPARENT_MOTION_VECTOR
|
|
#endif
|
|
|
|
// -- Graph Properties
|
|
CBUFFER_START(UnityPerMaterial)
|
|
float4 _BaseColor;
|
|
float4 _BaseColorMap_TexelSize;
|
|
float4 _BaseTilingOffset;
|
|
float _BaseTriplanarThreshold;
|
|
float4 _BaseNormalMap_TexelSize;
|
|
float _BaseNormalScale;
|
|
float4 _BaseMaskMap_TexelSize;
|
|
float _BaseMetallic;
|
|
float _BaseAORemapMin;
|
|
float _BaseAORemapMax;
|
|
float _BaseSmoothnessRemapMin;
|
|
float _BaseSmoothnessRemapMax;
|
|
float _USEDYNAMICCOVERTSTATICMASKF;
|
|
float4 _CoverMaskA_TexelSize;
|
|
float _CoverMaskPower;
|
|
float _Cover_Amount;
|
|
float _Cover_Amount_Grow_Speed;
|
|
float3 _CoverDirection;
|
|
float _Cover_Max_Angle;
|
|
float _Cover_Min_Height;
|
|
float _Cover_Min_Height_Blending;
|
|
float4 _CoverBaseColor;
|
|
float4 _CoverBaseColorMap_TexelSize;
|
|
float4 _CoverTilingOffset;
|
|
float _CoverTriplanarThreshold;
|
|
float4 _CoverNormalMap_TexelSize;
|
|
float _CoverNormalScale;
|
|
float _CoverNormalBlendHardness;
|
|
float _CoverHeightMapMin;
|
|
float _CoverHeightMapMax;
|
|
float _CoverHeightMapOffset;
|
|
float _CoverHardness;
|
|
float4 _CoverMaskMap_TexelSize;
|
|
float _CoverMetallic;
|
|
float _CoverAORemapMin;
|
|
float _CoverAORemapMax;
|
|
float _CoverSmoothnessRemapMin;
|
|
float _CoverSmoothnessRemapMax;
|
|
float4 _ShapeNormalMap_TexelSize;
|
|
float _shapeNormalScale;
|
|
float _CovershapeNormalScale;
|
|
float4 _ShapeAO_TexelSize;
|
|
float _ShapeAORemapMin;
|
|
float _ShapeAORemapMax;
|
|
float _CoverShapeAORemapMin;
|
|
float _CoverShapeAORemapMax;
|
|
float4 _DetailMap_TexelSize;
|
|
float4 _DetailTilingOffset;
|
|
float _DetailAlbedoScale;
|
|
float _DetailNormalScale;
|
|
float _DetailSmoothnessScale;
|
|
float _DetailCoverAlbedoScale;
|
|
float _DetailCoverNormalScale;
|
|
float _DetailCoverSmoothnessScale;
|
|
float _CoverMaskRCurvature;
|
|
float _BaseBrightnessCurvMultply;
|
|
float _BaseBrightnessCurvPower;
|
|
float _BaseDarknessCurvMultply;
|
|
float _BaseDarknessCurvPower;
|
|
float _CoverBrightnessCurvMultply;
|
|
float _CoverBrightnessCurvPower;
|
|
float _CoverDarknessCurvMultply;
|
|
float _CoverDarknessCurvPower;
|
|
float4 _WetColor;
|
|
float _WetSmoothness;
|
|
float4 _EmissionColor;
|
|
float _UseShadowThreshold;
|
|
float4 _DoubleSidedConstants;
|
|
UNITY_TEXTURE_STREAMING_DEBUG_VARS;
|
|
float _BlendMode;
|
|
float _EnableBlendModePreserveSpecularLighting;
|
|
float _RayTracing;
|
|
float _RefractionModel;
|
|
float _MaterialID;
|
|
float _MaterialTypeMask;
|
|
CBUFFER_END
|
|
|
|
|
|
// Object and Global properties
|
|
SAMPLER(SamplerState_Linear_Repeat);
|
|
SAMPLER(SamplerState_Linear_Repeat_Aniso8);
|
|
TEXTURE2D(_BaseColorMap);
|
|
SAMPLER(sampler_BaseColorMap);
|
|
TEXTURE2D(_BaseNormalMap);
|
|
SAMPLER(sampler_BaseNormalMap);
|
|
TEXTURE2D(_BaseMaskMap);
|
|
SAMPLER(sampler_BaseMaskMap);
|
|
TEXTURE2D(_CoverMaskA);
|
|
SAMPLER(sampler_CoverMaskA);
|
|
TEXTURE2D(_CoverBaseColorMap);
|
|
SAMPLER(sampler_CoverBaseColorMap);
|
|
TEXTURE2D(_CoverNormalMap);
|
|
SAMPLER(sampler_CoverNormalMap);
|
|
TEXTURE2D(_CoverMaskMap);
|
|
SAMPLER(sampler_CoverMaskMap);
|
|
TEXTURE2D(_ShapeNormalMap);
|
|
SAMPLER(sampler_ShapeNormalMap);
|
|
TEXTURE2D(_ShapeAO);
|
|
SAMPLER(sampler_ShapeAO);
|
|
TEXTURE2D(_DetailMap);
|
|
SAMPLER(sampler_DetailMap);
|
|
|
|
// -- Property used by ScenePickingPass
|
|
#ifdef SCENEPICKINGPASS
|
|
float4 _SelectionID;
|
|
#endif
|
|
|
|
// -- Properties used by SceneSelectionPass
|
|
#ifdef SCENESELECTIONPASS
|
|
int _ObjectId;
|
|
int _PassValue;
|
|
#endif
|
|
|
|
// Includes
|
|
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/Debug/DebugDisplay.hlsl"
|
|
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/Material/Material.hlsl"
|
|
#include "Packages/com.unity.render-pipelines.core/ShaderLibrary/NormalSurfaceGradient.hlsl"
|
|
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/Lighting/Lighting.hlsl"
|
|
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/Lighting/LightLoop/LightLoopDef.hlsl"
|
|
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/Material/Lit/Lit.hlsl"
|
|
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/Lighting/LightLoop/LightLoop.hlsl"
|
|
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/Material/BuiltinUtilities.hlsl"
|
|
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/Material/MaterialUtilities.hlsl"
|
|
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/Material/Decal/DecalUtilities.hlsl"
|
|
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/Material/Lit/LitDecalData.hlsl"
|
|
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/ShaderLibrary/ShaderGraphFunctions.hlsl"
|
|
// GraphIncludes: <None>
|
|
|
|
// --------------------------------------------------
|
|
// Structs and Packing
|
|
|
|
struct AttributesMesh
|
|
{
|
|
float3 positionOS : POSITION;
|
|
float3 normalOS : NORMAL;
|
|
float4 tangentOS : TANGENT;
|
|
float4 uv0 : TEXCOORD0;
|
|
float4 uv1 : TEXCOORD1;
|
|
float4 uv2 : TEXCOORD2;
|
|
float4 color : COLOR;
|
|
#if UNITY_ANY_INSTANCING_ENABLED || defined(ATTRIBUTES_NEED_INSTANCEID)
|
|
uint instanceID : INSTANCEID_SEMANTIC;
|
|
#endif
|
|
};
|
|
struct VaryingsMeshToPS
|
|
{
|
|
SV_POSITION_QUALIFIERS float4 positionCS : SV_POSITION;
|
|
float3 positionRWS;
|
|
float3 normalWS;
|
|
float4 tangentWS;
|
|
float4 texCoord0;
|
|
float4 texCoord1;
|
|
float4 texCoord2;
|
|
float4 color;
|
|
#if UNITY_ANY_INSTANCING_ENABLED || defined(VARYINGS_NEED_INSTANCEID)
|
|
uint instanceID : CUSTOM_INSTANCE_ID;
|
|
#endif
|
|
};
|
|
struct VertexDescriptionInputs
|
|
{
|
|
float3 ObjectSpaceNormal;
|
|
float3 ObjectSpaceTangent;
|
|
float3 ObjectSpacePosition;
|
|
};
|
|
struct SurfaceDescriptionInputs
|
|
{
|
|
float3 WorldSpaceNormal;
|
|
float3 TangentSpaceNormal;
|
|
float3 WorldSpaceTangent;
|
|
float3 WorldSpaceBiTangent;
|
|
float3 AbsoluteWorldSpacePosition;
|
|
float4 uv0;
|
|
float4 VertexColor;
|
|
};
|
|
struct PackedVaryingsMeshToPS
|
|
{
|
|
SV_POSITION_QUALIFIERS float4 positionCS : SV_POSITION;
|
|
float4 tangentWS : INTERP0;
|
|
float4 texCoord0 : INTERP1;
|
|
float4 texCoord1 : INTERP2;
|
|
float4 texCoord2 : INTERP3;
|
|
float4 color : INTERP4;
|
|
float3 positionRWS : INTERP5;
|
|
float3 normalWS : INTERP6;
|
|
#if UNITY_ANY_INSTANCING_ENABLED || defined(VARYINGS_NEED_INSTANCEID)
|
|
uint instanceID : CUSTOM_INSTANCE_ID;
|
|
#endif
|
|
};
|
|
|
|
PackedVaryingsMeshToPS PackVaryingsMeshToPS (VaryingsMeshToPS input)
|
|
{
|
|
PackedVaryingsMeshToPS output;
|
|
ZERO_INITIALIZE(PackedVaryingsMeshToPS, output);
|
|
output.positionCS = input.positionCS;
|
|
output.tangentWS.xyzw = input.tangentWS;
|
|
output.texCoord0.xyzw = input.texCoord0;
|
|
output.texCoord1.xyzw = input.texCoord1;
|
|
output.texCoord2.xyzw = input.texCoord2;
|
|
output.color.xyzw = input.color;
|
|
output.positionRWS.xyz = input.positionRWS;
|
|
output.normalWS.xyz = input.normalWS;
|
|
#if UNITY_ANY_INSTANCING_ENABLED || defined(VARYINGS_NEED_INSTANCEID)
|
|
output.instanceID = input.instanceID;
|
|
#endif
|
|
return output;
|
|
}
|
|
|
|
VaryingsMeshToPS UnpackVaryingsMeshToPS (PackedVaryingsMeshToPS input)
|
|
{
|
|
VaryingsMeshToPS output;
|
|
output.positionCS = input.positionCS;
|
|
output.tangentWS = input.tangentWS.xyzw;
|
|
output.texCoord0 = input.texCoord0.xyzw;
|
|
output.texCoord1 = input.texCoord1.xyzw;
|
|
output.texCoord2 = input.texCoord2.xyzw;
|
|
output.color = input.color.xyzw;
|
|
output.positionRWS = input.positionRWS.xyz;
|
|
output.normalWS = input.normalWS.xyz;
|
|
#if UNITY_ANY_INSTANCING_ENABLED || defined(VARYINGS_NEED_INSTANCEID)
|
|
output.instanceID = input.instanceID;
|
|
#endif
|
|
return output;
|
|
}
|
|
|
|
|
|
// --------------------------------------------------
|
|
// Graph
|
|
|
|
|
|
// Graph Functions
|
|
|
|
void Unity_Divide_float4(float4 A, float4 B, out float4 Out)
|
|
{
|
|
Out = A / B;
|
|
}
|
|
|
|
void Unity_Combine_float(float R, float G, float B, float A, out float4 RGBA, out float3 RGB, out float2 RG)
|
|
{
|
|
RGBA = float4(R, G, B, A);
|
|
RGB = float3(R, G, B);
|
|
RG = float2(R, G);
|
|
}
|
|
|
|
void Unity_Multiply_float4_float4(float4 A, float4 B, out float4 Out)
|
|
{
|
|
Out = A * B;
|
|
}
|
|
|
|
void Unity_Sign_float3(float3 In, out float3 Out)
|
|
{
|
|
Out = sign(In);
|
|
}
|
|
|
|
void Unity_Multiply_float2_float2(float2 A, float2 B, out float2 Out)
|
|
{
|
|
Out = A * B;
|
|
}
|
|
|
|
void Unity_Absolute_float3(float3 In, out float3 Out)
|
|
{
|
|
Out = abs(In);
|
|
}
|
|
|
|
void Unity_Power_float3(float3 A, float3 B, out float3 Out)
|
|
{
|
|
Out = pow(A, B);
|
|
}
|
|
|
|
void Unity_Multiply_float3_float3(float3 A, float3 B, out float3 Out)
|
|
{
|
|
Out = A * B;
|
|
}
|
|
|
|
void Unity_Multiply_float_float(float A, float B, out float Out)
|
|
{
|
|
Out = A * B;
|
|
}
|
|
|
|
void Unity_Add_float4(float4 A, float4 B, out float4 Out)
|
|
{
|
|
Out = A + B;
|
|
}
|
|
|
|
void Unity_Add_float(float A, float B, out float Out)
|
|
{
|
|
Out = A + B;
|
|
}
|
|
|
|
struct Bindings_TriplanarNM_bc609ed95f52591469ab35dbfe0efcea_float
|
|
{
|
|
float3 WorldSpaceNormal;
|
|
float3 AbsoluteWorldSpacePosition;
|
|
};
|
|
|
|
void SG_TriplanarNM_bc609ed95f52591469ab35dbfe0efcea_float(UnityTexture2D Texture2D_80A3D28F, float Vector1_41461AC9, float Vector1_E4D1C13A, UnitySamplerState _SamplerState, Bindings_TriplanarNM_bc609ed95f52591469ab35dbfe0efcea_float IN, out float4 XYZ_1, out float4 XZ_2, out float4 YZ_3, out float4 XY_4)
|
|
{
|
|
UnityTexture2D _Property_3e01b4d2fc68d48ba3acbba9d5881e59_Out_0_Texture2D = Texture2D_80A3D28F;
|
|
float _Split_89ed63cb625cb3878c183d0b71c03400_R_1_Float = IN.AbsoluteWorldSpacePosition[0];
|
|
float _Split_89ed63cb625cb3878c183d0b71c03400_G_2_Float = IN.AbsoluteWorldSpacePosition[1];
|
|
float _Split_89ed63cb625cb3878c183d0b71c03400_B_3_Float = IN.AbsoluteWorldSpacePosition[2];
|
|
float _Split_89ed63cb625cb3878c183d0b71c03400_A_4_Float = 0;
|
|
float4 _Combine_cf2d04ff119ad88493f6460431765cbb_RGBA_4_Vector4;
|
|
float3 _Combine_cf2d04ff119ad88493f6460431765cbb_RGB_5_Vector3;
|
|
float2 _Combine_cf2d04ff119ad88493f6460431765cbb_RG_6_Vector2;
|
|
Unity_Combine_float(_Split_89ed63cb625cb3878c183d0b71c03400_R_1_Float, _Split_89ed63cb625cb3878c183d0b71c03400_B_3_Float, float(0), float(0), _Combine_cf2d04ff119ad88493f6460431765cbb_RGBA_4_Vector4, _Combine_cf2d04ff119ad88493f6460431765cbb_RGB_5_Vector3, _Combine_cf2d04ff119ad88493f6460431765cbb_RG_6_Vector2);
|
|
float _Property_47988ec10c0c18879d461e00bed806e7_Out_0_Float = Vector1_41461AC9;
|
|
float4 _Multiply_14cec4902d0a00829e4555071a1b8ad1_Out_2_Vector4;
|
|
Unity_Multiply_float4_float4(_Combine_cf2d04ff119ad88493f6460431765cbb_RGBA_4_Vector4, (_Property_47988ec10c0c18879d461e00bed806e7_Out_0_Float.xxxx), _Multiply_14cec4902d0a00829e4555071a1b8ad1_Out_2_Vector4);
|
|
float3 _Sign_b826e0ff2d95ec8cb2b2cbbd7ea2eab6_Out_1_Vector3;
|
|
Unity_Sign_float3(IN.WorldSpaceNormal, _Sign_b826e0ff2d95ec8cb2b2cbbd7ea2eab6_Out_1_Vector3);
|
|
float _Split_742547a7039de986a646d04c157ae549_R_1_Float = _Sign_b826e0ff2d95ec8cb2b2cbbd7ea2eab6_Out_1_Vector3[0];
|
|
float _Split_742547a7039de986a646d04c157ae549_G_2_Float = _Sign_b826e0ff2d95ec8cb2b2cbbd7ea2eab6_Out_1_Vector3[1];
|
|
float _Split_742547a7039de986a646d04c157ae549_B_3_Float = _Sign_b826e0ff2d95ec8cb2b2cbbd7ea2eab6_Out_1_Vector3[2];
|
|
float _Split_742547a7039de986a646d04c157ae549_A_4_Float = 0;
|
|
float2 _Vector2_40a8919e571ec18499de72022c155b38_Out_0_Vector2 = float2(_Split_742547a7039de986a646d04c157ae549_G_2_Float, float(1));
|
|
float2 _Multiply_5fa32af59cdca88389832336b2268bd5_Out_2_Vector2;
|
|
Unity_Multiply_float2_float2((_Multiply_14cec4902d0a00829e4555071a1b8ad1_Out_2_Vector4.xy), _Vector2_40a8919e571ec18499de72022c155b38_Out_0_Vector2, _Multiply_5fa32af59cdca88389832336b2268bd5_Out_2_Vector2);
|
|
UnitySamplerState _Property_544c7fa9dfe54e30a0df9d605340a374_Out_0_SamplerState = _SamplerState;
|
|
float4 _SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_RGBA_0_Vector4 = SAMPLE_TEXTURE2D(_Property_3e01b4d2fc68d48ba3acbba9d5881e59_Out_0_Texture2D.tex, _Property_544c7fa9dfe54e30a0df9d605340a374_Out_0_SamplerState.samplerstate, _Property_3e01b4d2fc68d48ba3acbba9d5881e59_Out_0_Texture2D.GetTransformedUV(_Multiply_5fa32af59cdca88389832336b2268bd5_Out_2_Vector2) );
|
|
float _SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_R_4_Float = _SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_RGBA_0_Vector4.r;
|
|
float _SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_G_5_Float = _SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_RGBA_0_Vector4.g;
|
|
float _SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_B_6_Float = _SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_RGBA_0_Vector4.b;
|
|
float _SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_A_7_Float = _SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_RGBA_0_Vector4.a;
|
|
float3 _Absolute_644b798714827680b39bf5d34f70385f_Out_1_Vector3;
|
|
Unity_Absolute_float3(IN.WorldSpaceNormal, _Absolute_644b798714827680b39bf5d34f70385f_Out_1_Vector3);
|
|
float _Property_adc4c59482221c8aad681c6558728ac9_Out_0_Float = Vector1_E4D1C13A;
|
|
float3 _Power_ee478822a04529849ae8df1636c29fe2_Out_2_Vector3;
|
|
Unity_Power_float3(_Absolute_644b798714827680b39bf5d34f70385f_Out_1_Vector3, (_Property_adc4c59482221c8aad681c6558728ac9_Out_0_Float.xxx), _Power_ee478822a04529849ae8df1636c29fe2_Out_2_Vector3);
|
|
float3 _Multiply_b386a937554d73828e437d126d69608b_Out_2_Vector3;
|
|
Unity_Multiply_float3_float3(_Power_ee478822a04529849ae8df1636c29fe2_Out_2_Vector3, _Power_ee478822a04529849ae8df1636c29fe2_Out_2_Vector3, _Multiply_b386a937554d73828e437d126d69608b_Out_2_Vector3);
|
|
float _Split_ae83014fcbd9f7879a0b91fa66dc9718_R_1_Float = _Multiply_b386a937554d73828e437d126d69608b_Out_2_Vector3[0];
|
|
float _Split_ae83014fcbd9f7879a0b91fa66dc9718_G_2_Float = _Multiply_b386a937554d73828e437d126d69608b_Out_2_Vector3[1];
|
|
float _Split_ae83014fcbd9f7879a0b91fa66dc9718_B_3_Float = _Multiply_b386a937554d73828e437d126d69608b_Out_2_Vector3[2];
|
|
float _Split_ae83014fcbd9f7879a0b91fa66dc9718_A_4_Float = 0;
|
|
float4 _Multiply_2e1040ca9c98d085ace76ee93f094039_Out_2_Vector4;
|
|
Unity_Multiply_float4_float4(_SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_RGBA_0_Vector4, (_Split_ae83014fcbd9f7879a0b91fa66dc9718_G_2_Float.xxxx), _Multiply_2e1040ca9c98d085ace76ee93f094039_Out_2_Vector4);
|
|
float4 _Combine_192c2c4a69be588b90ca005a32e22552_RGBA_4_Vector4;
|
|
float3 _Combine_192c2c4a69be588b90ca005a32e22552_RGB_5_Vector3;
|
|
float2 _Combine_192c2c4a69be588b90ca005a32e22552_RG_6_Vector2;
|
|
Unity_Combine_float(_Split_89ed63cb625cb3878c183d0b71c03400_R_1_Float, _Split_89ed63cb625cb3878c183d0b71c03400_G_2_Float, float(0), float(0), _Combine_192c2c4a69be588b90ca005a32e22552_RGBA_4_Vector4, _Combine_192c2c4a69be588b90ca005a32e22552_RGB_5_Vector3, _Combine_192c2c4a69be588b90ca005a32e22552_RG_6_Vector2);
|
|
float4 _Multiply_138240d0d4846e87b0febabec0d6891b_Out_2_Vector4;
|
|
Unity_Multiply_float4_float4(_Combine_192c2c4a69be588b90ca005a32e22552_RGBA_4_Vector4, (_Property_47988ec10c0c18879d461e00bed806e7_Out_0_Float.xxxx), _Multiply_138240d0d4846e87b0febabec0d6891b_Out_2_Vector4);
|
|
float _Multiply_014402ded5a3988a8c18ba07636ea5a7_Out_2_Float;
|
|
Unity_Multiply_float_float(_Split_742547a7039de986a646d04c157ae549_B_3_Float, -1, _Multiply_014402ded5a3988a8c18ba07636ea5a7_Out_2_Float);
|
|
float2 _Vector2_caa25d55d456a58982bdfc39b1b43f3f_Out_0_Vector2 = float2(_Multiply_014402ded5a3988a8c18ba07636ea5a7_Out_2_Float, float(1));
|
|
float2 _Multiply_a67201b6e1a0a28c98cd9d06e8b09543_Out_2_Vector2;
|
|
Unity_Multiply_float2_float2((_Multiply_138240d0d4846e87b0febabec0d6891b_Out_2_Vector4.xy), _Vector2_caa25d55d456a58982bdfc39b1b43f3f_Out_0_Vector2, _Multiply_a67201b6e1a0a28c98cd9d06e8b09543_Out_2_Vector2);
|
|
float4 _SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_RGBA_0_Vector4 = SAMPLE_TEXTURE2D(_Property_3e01b4d2fc68d48ba3acbba9d5881e59_Out_0_Texture2D.tex, _Property_544c7fa9dfe54e30a0df9d605340a374_Out_0_SamplerState.samplerstate, _Property_3e01b4d2fc68d48ba3acbba9d5881e59_Out_0_Texture2D.GetTransformedUV(_Multiply_a67201b6e1a0a28c98cd9d06e8b09543_Out_2_Vector2) );
|
|
float _SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_R_4_Float = _SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_RGBA_0_Vector4.r;
|
|
float _SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_G_5_Float = _SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_RGBA_0_Vector4.g;
|
|
float _SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_B_6_Float = _SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_RGBA_0_Vector4.b;
|
|
float _SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_A_7_Float = _SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_RGBA_0_Vector4.a;
|
|
float4 _Multiply_7bb4009c92b108849ac6ca92bc1442f2_Out_2_Vector4;
|
|
Unity_Multiply_float4_float4(_SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_RGBA_0_Vector4, (_Split_ae83014fcbd9f7879a0b91fa66dc9718_B_3_Float.xxxx), _Multiply_7bb4009c92b108849ac6ca92bc1442f2_Out_2_Vector4);
|
|
float4 _Combine_1e9ffdba42d6918fb7a4b185f1585d2a_RGBA_4_Vector4;
|
|
float3 _Combine_1e9ffdba42d6918fb7a4b185f1585d2a_RGB_5_Vector3;
|
|
float2 _Combine_1e9ffdba42d6918fb7a4b185f1585d2a_RG_6_Vector2;
|
|
Unity_Combine_float(_Split_89ed63cb625cb3878c183d0b71c03400_B_3_Float, _Split_89ed63cb625cb3878c183d0b71c03400_G_2_Float, float(0), float(0), _Combine_1e9ffdba42d6918fb7a4b185f1585d2a_RGBA_4_Vector4, _Combine_1e9ffdba42d6918fb7a4b185f1585d2a_RGB_5_Vector3, _Combine_1e9ffdba42d6918fb7a4b185f1585d2a_RG_6_Vector2);
|
|
float4 _Multiply_2c0864423b014f8b8af8523f68cbb63c_Out_2_Vector4;
|
|
Unity_Multiply_float4_float4(_Combine_1e9ffdba42d6918fb7a4b185f1585d2a_RGBA_4_Vector4, (_Property_47988ec10c0c18879d461e00bed806e7_Out_0_Float.xxxx), _Multiply_2c0864423b014f8b8af8523f68cbb63c_Out_2_Vector4);
|
|
float2 _Vector2_54dfd40df2fc78809955dd272f2cf0c3_Out_0_Vector2 = float2(_Split_742547a7039de986a646d04c157ae549_R_1_Float, float(1));
|
|
float2 _Multiply_addbd5fcede95f80bbb806c94e49ef63_Out_2_Vector2;
|
|
Unity_Multiply_float2_float2((_Multiply_2c0864423b014f8b8af8523f68cbb63c_Out_2_Vector4.xy), _Vector2_54dfd40df2fc78809955dd272f2cf0c3_Out_0_Vector2, _Multiply_addbd5fcede95f80bbb806c94e49ef63_Out_2_Vector2);
|
|
float4 _SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_RGBA_0_Vector4 = SAMPLE_TEXTURE2D(_Property_3e01b4d2fc68d48ba3acbba9d5881e59_Out_0_Texture2D.tex, _Property_544c7fa9dfe54e30a0df9d605340a374_Out_0_SamplerState.samplerstate, _Property_3e01b4d2fc68d48ba3acbba9d5881e59_Out_0_Texture2D.GetTransformedUV(_Multiply_addbd5fcede95f80bbb806c94e49ef63_Out_2_Vector2) );
|
|
float _SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_R_4_Float = _SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_RGBA_0_Vector4.r;
|
|
float _SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_G_5_Float = _SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_RGBA_0_Vector4.g;
|
|
float _SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_B_6_Float = _SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_RGBA_0_Vector4.b;
|
|
float _SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_A_7_Float = _SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_RGBA_0_Vector4.a;
|
|
float4 _Multiply_77818c22e359fc8cbb7dd20216a8db72_Out_2_Vector4;
|
|
Unity_Multiply_float4_float4(_SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_RGBA_0_Vector4, (_Split_ae83014fcbd9f7879a0b91fa66dc9718_R_1_Float.xxxx), _Multiply_77818c22e359fc8cbb7dd20216a8db72_Out_2_Vector4);
|
|
float4 _Add_769d9ee909c9238dbbf72d2800a2f268_Out_2_Vector4;
|
|
Unity_Add_float4(_Multiply_7bb4009c92b108849ac6ca92bc1442f2_Out_2_Vector4, _Multiply_77818c22e359fc8cbb7dd20216a8db72_Out_2_Vector4, _Add_769d9ee909c9238dbbf72d2800a2f268_Out_2_Vector4);
|
|
float4 _Add_14295f72880e4b87a1baf1ced943ac40_Out_2_Vector4;
|
|
Unity_Add_float4(_Multiply_2e1040ca9c98d085ace76ee93f094039_Out_2_Vector4, _Add_769d9ee909c9238dbbf72d2800a2f268_Out_2_Vector4, _Add_14295f72880e4b87a1baf1ced943ac40_Out_2_Vector4);
|
|
float _Add_e59af300bba2498db32eac1412123447_Out_2_Float;
|
|
Unity_Add_float(_Split_ae83014fcbd9f7879a0b91fa66dc9718_R_1_Float, _Split_ae83014fcbd9f7879a0b91fa66dc9718_G_2_Float, _Add_e59af300bba2498db32eac1412123447_Out_2_Float);
|
|
float _Add_e855069f047fae8ea9027d56acb61e56_Out_2_Float;
|
|
Unity_Add_float(_Add_e59af300bba2498db32eac1412123447_Out_2_Float, _Split_ae83014fcbd9f7879a0b91fa66dc9718_B_3_Float, _Add_e855069f047fae8ea9027d56acb61e56_Out_2_Float);
|
|
float4 _Divide_91ae4b94f1d9b78e99d0472293b8098c_Out_2_Vector4;
|
|
Unity_Divide_float4(_Add_14295f72880e4b87a1baf1ced943ac40_Out_2_Vector4, (_Add_e855069f047fae8ea9027d56acb61e56_Out_2_Float.xxxx), _Divide_91ae4b94f1d9b78e99d0472293b8098c_Out_2_Vector4);
|
|
XYZ_1 = _Divide_91ae4b94f1d9b78e99d0472293b8098c_Out_2_Vector4;
|
|
XZ_2 = _SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_RGBA_0_Vector4;
|
|
YZ_3 = _SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_RGBA_0_Vector4;
|
|
XY_4 = _SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_RGBA_0_Vector4;
|
|
}
|
|
|
|
void Unity_Clamp_float(float In, float Min, float Max, out float Out)
|
|
{
|
|
Out = clamp(In, Min, Max);
|
|
}
|
|
|
|
void Unity_Absolute_float(float In, out float Out)
|
|
{
|
|
Out = abs(In);
|
|
}
|
|
|
|
void Unity_Power_float(float A, float B, out float Out)
|
|
{
|
|
Out = pow(A, B);
|
|
}
|
|
|
|
void Unity_Clamp_float4(float4 In, float4 Min, float4 Max, out float4 Out)
|
|
{
|
|
Out = clamp(In, Min, Max);
|
|
}
|
|
|
|
void Unity_Branch_float4(float Predicate, float4 True, float4 False, out float4 Out)
|
|
{
|
|
Out = Predicate ? True : False;
|
|
}
|
|
|
|
void Unity_TilingAndOffset_float(float2 UV, float2 Tiling, float2 Offset, out float2 Out)
|
|
{
|
|
Out = UV * Tiling + Offset;
|
|
}
|
|
|
|
void Unity_Saturate_float(float In, out float Out)
|
|
{
|
|
Out = saturate(In);
|
|
}
|
|
|
|
void Unity_SquareRoot_float4(float4 In, out float4 Out)
|
|
{
|
|
Out = sqrt(In);
|
|
}
|
|
|
|
void Unity_Sign_float(float In, out float Out)
|
|
{
|
|
Out = sign(In);
|
|
}
|
|
|
|
void Unity_Ceiling_float(float In, out float Out)
|
|
{
|
|
Out = ceil(In);
|
|
}
|
|
|
|
void Unity_Lerp_float4(float4 A, float4 B, float4 T, out float4 Out)
|
|
{
|
|
Out = lerp(A, B, T);
|
|
}
|
|
|
|
struct Bindings_BlendOverlayBaseColor_acdb3dfca72bd6b42bbc35f4613331a2_float
|
|
{
|
|
};
|
|
|
|
void SG_BlendOverlayBaseColor_acdb3dfca72bd6b42bbc35f4613331a2_float(float4 Color_9AA111D3, float Vector1_FBE622A2, float Vector1_8C15C351, Bindings_BlendOverlayBaseColor_acdb3dfca72bd6b42bbc35f4613331a2_float IN, out float3 OutVector4_1)
|
|
{
|
|
float4 _Property_012510d774fb7f8b860f5270dca4500f_Out_0_Vector4 = Color_9AA111D3;
|
|
float4 _SquareRoot_c2c57d0223a9538aa9240890c3cacb0c_Out_1_Vector4;
|
|
Unity_SquareRoot_float4(_Property_012510d774fb7f8b860f5270dca4500f_Out_0_Vector4, _SquareRoot_c2c57d0223a9538aa9240890c3cacb0c_Out_1_Vector4);
|
|
float _Property_a00e29241d12f983b30177515b367ec9_Out_0_Float = Vector1_FBE622A2;
|
|
float _Sign_343a45ede7349283a681c6bd9998fd8e_Out_1_Float;
|
|
Unity_Sign_float(_Property_a00e29241d12f983b30177515b367ec9_Out_0_Float, _Sign_343a45ede7349283a681c6bd9998fd8e_Out_1_Float);
|
|
float _Add_681019b8f5d3d68bb482d419c9fc61a9_Out_2_Float;
|
|
Unity_Add_float(_Sign_343a45ede7349283a681c6bd9998fd8e_Out_1_Float, float(1), _Add_681019b8f5d3d68bb482d419c9fc61a9_Out_2_Float);
|
|
float _Multiply_e8f4cb722712a880ac0db6c7461427f7_Out_2_Float;
|
|
Unity_Multiply_float_float(_Add_681019b8f5d3d68bb482d419c9fc61a9_Out_2_Float, 0.5, _Multiply_e8f4cb722712a880ac0db6c7461427f7_Out_2_Float);
|
|
float _Ceiling_95ad15988aa9b98184875fa754feae01_Out_1_Float;
|
|
Unity_Ceiling_float(_Multiply_e8f4cb722712a880ac0db6c7461427f7_Out_2_Float, _Ceiling_95ad15988aa9b98184875fa754feae01_Out_1_Float);
|
|
float _Property_2db1c747a05ee284a8b00076062f91a4_Out_0_Float = Vector1_8C15C351;
|
|
float _Multiply_9564ecda5193bc8286d9ff771c9226cd_Out_2_Float;
|
|
Unity_Multiply_float_float(_Property_2db1c747a05ee284a8b00076062f91a4_Out_0_Float, _Property_2db1c747a05ee284a8b00076062f91a4_Out_0_Float, _Multiply_9564ecda5193bc8286d9ff771c9226cd_Out_2_Float);
|
|
float4 _Lerp_b3cdb01fc3c5b988ac9b184943bf7c01_Out_3_Vector4;
|
|
Unity_Lerp_float4(_SquareRoot_c2c57d0223a9538aa9240890c3cacb0c_Out_1_Vector4, (_Ceiling_95ad15988aa9b98184875fa754feae01_Out_1_Float.xxxx), (_Multiply_9564ecda5193bc8286d9ff771c9226cd_Out_2_Float.xxxx), _Lerp_b3cdb01fc3c5b988ac9b184943bf7c01_Out_3_Vector4);
|
|
float4 _Multiply_39d1daff98488f8ea2cd794ad4f20926_Out_2_Vector4;
|
|
Unity_Multiply_float4_float4(_Lerp_b3cdb01fc3c5b988ac9b184943bf7c01_Out_3_Vector4, _Lerp_b3cdb01fc3c5b988ac9b184943bf7c01_Out_3_Vector4, _Multiply_39d1daff98488f8ea2cd794ad4f20926_Out_2_Vector4);
|
|
OutVector4_1 = (_Multiply_39d1daff98488f8ea2cd794ad4f20926_Out_2_Vector4.xyz);
|
|
}
|
|
|
|
void Unity_Add_float2(float2 A, float2 B, out float2 Out)
|
|
{
|
|
Out = A + B;
|
|
}
|
|
|
|
void Unity_DotProduct_float2(float2 A, float2 B, out float Out)
|
|
{
|
|
Out = dot(A, B);
|
|
}
|
|
|
|
void Unity_OneMinus_float(float In, out float Out)
|
|
{
|
|
Out = 1 - In;
|
|
}
|
|
|
|
void Unity_SquareRoot_float(float In, out float Out)
|
|
{
|
|
Out = sqrt(In);
|
|
}
|
|
|
|
void Unity_Add_float3(float3 A, float3 B, out float3 Out)
|
|
{
|
|
Out = A + B;
|
|
}
|
|
|
|
void Unity_Divide_float3(float3 A, float3 B, out float3 Out)
|
|
{
|
|
Out = A / B;
|
|
}
|
|
|
|
void Unity_Normalize_float3(float3 In, out float3 Out)
|
|
{
|
|
Out = normalize(In);
|
|
}
|
|
|
|
struct Bindings_TriplanarNMn_059da9746584140498cd018db3c76047_float
|
|
{
|
|
float3 WorldSpaceNormal;
|
|
float3 WorldSpaceTangent;
|
|
float3 WorldSpaceBiTangent;
|
|
float3 AbsoluteWorldSpacePosition;
|
|
};
|
|
|
|
void SG_TriplanarNMn_059da9746584140498cd018db3c76047_float(UnityTexture2D Texture2D_80A3D28F, float Vector1_41461AC9, float Vector1_E4D1C13A, UnitySamplerState _SamplerState, Bindings_TriplanarNMn_059da9746584140498cd018db3c76047_float IN, out float4 XYZ_1, out float4 XZ_2, out float4 YZ_3, out float4 XY_4)
|
|
{
|
|
UnityTexture2D _Property_3e01b4d2fc68d48ba3acbba9d5881e59_Out_0_Texture2D = Texture2D_80A3D28F;
|
|
float _Split_89ed63cb625cb3878c183d0b71c03400_R_1_Float = IN.AbsoluteWorldSpacePosition[0];
|
|
float _Split_89ed63cb625cb3878c183d0b71c03400_G_2_Float = IN.AbsoluteWorldSpacePosition[1];
|
|
float _Split_89ed63cb625cb3878c183d0b71c03400_B_3_Float = IN.AbsoluteWorldSpacePosition[2];
|
|
float _Split_89ed63cb625cb3878c183d0b71c03400_A_4_Float = 0;
|
|
float4 _Combine_cf2d04ff119ad88493f6460431765cbb_RGBA_4_Vector4;
|
|
float3 _Combine_cf2d04ff119ad88493f6460431765cbb_RGB_5_Vector3;
|
|
float2 _Combine_cf2d04ff119ad88493f6460431765cbb_RG_6_Vector2;
|
|
Unity_Combine_float(_Split_89ed63cb625cb3878c183d0b71c03400_R_1_Float, _Split_89ed63cb625cb3878c183d0b71c03400_B_3_Float, float(0), float(0), _Combine_cf2d04ff119ad88493f6460431765cbb_RGBA_4_Vector4, _Combine_cf2d04ff119ad88493f6460431765cbb_RGB_5_Vector3, _Combine_cf2d04ff119ad88493f6460431765cbb_RG_6_Vector2);
|
|
float _Property_47988ec10c0c18879d461e00bed806e7_Out_0_Float = Vector1_41461AC9;
|
|
float4 _Multiply_14cec4902d0a00829e4555071a1b8ad1_Out_2_Vector4;
|
|
Unity_Multiply_float4_float4(_Combine_cf2d04ff119ad88493f6460431765cbb_RGBA_4_Vector4, (_Property_47988ec10c0c18879d461e00bed806e7_Out_0_Float.xxxx), _Multiply_14cec4902d0a00829e4555071a1b8ad1_Out_2_Vector4);
|
|
float3 _Sign_3a6ebf59931cf08cb0482e0144ddac24_Out_1_Vector3;
|
|
Unity_Sign_float3(IN.WorldSpaceNormal, _Sign_3a6ebf59931cf08cb0482e0144ddac24_Out_1_Vector3);
|
|
float _Split_6299d4ddcc4c74828aea40a46fdb896e_R_1_Float = _Sign_3a6ebf59931cf08cb0482e0144ddac24_Out_1_Vector3[0];
|
|
float _Split_6299d4ddcc4c74828aea40a46fdb896e_G_2_Float = _Sign_3a6ebf59931cf08cb0482e0144ddac24_Out_1_Vector3[1];
|
|
float _Split_6299d4ddcc4c74828aea40a46fdb896e_B_3_Float = _Sign_3a6ebf59931cf08cb0482e0144ddac24_Out_1_Vector3[2];
|
|
float _Split_6299d4ddcc4c74828aea40a46fdb896e_A_4_Float = 0;
|
|
float2 _Vector2_b76cb1842101e58b9e636d49b075c612_Out_0_Vector2 = float2(_Split_6299d4ddcc4c74828aea40a46fdb896e_G_2_Float, float(1));
|
|
float2 _Multiply_a87753ad90594382bf3a3a95abbadbc8_Out_2_Vector2;
|
|
Unity_Multiply_float2_float2((_Multiply_14cec4902d0a00829e4555071a1b8ad1_Out_2_Vector4.xy), _Vector2_b76cb1842101e58b9e636d49b075c612_Out_0_Vector2, _Multiply_a87753ad90594382bf3a3a95abbadbc8_Out_2_Vector2);
|
|
UnitySamplerState _Property_8a2b8589cd3a42a1879a29c28e4f711f_Out_0_SamplerState = _SamplerState;
|
|
float4 _SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_RGBA_0_Vector4 = SAMPLE_TEXTURE2D(_Property_3e01b4d2fc68d48ba3acbba9d5881e59_Out_0_Texture2D.tex, _Property_8a2b8589cd3a42a1879a29c28e4f711f_Out_0_SamplerState.samplerstate, _Property_3e01b4d2fc68d48ba3acbba9d5881e59_Out_0_Texture2D.GetTransformedUV(_Multiply_a87753ad90594382bf3a3a95abbadbc8_Out_2_Vector2) );
|
|
_SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_RGBA_0_Vector4.rgb = UnpackNormal(_SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_RGBA_0_Vector4);
|
|
float _SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_R_4_Float = _SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_RGBA_0_Vector4.r;
|
|
float _SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_G_5_Float = _SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_RGBA_0_Vector4.g;
|
|
float _SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_B_6_Float = _SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_RGBA_0_Vector4.b;
|
|
float _SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_A_7_Float = _SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_RGBA_0_Vector4.a;
|
|
float2 _Vector2_ad6bd100e273d78fa409a30a77bfa2cc_Out_0_Vector2 = float2(_SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_R_4_Float, _SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_G_5_Float);
|
|
float2 _Multiply_31e8db88ee20c985a9850d1a58f3282b_Out_2_Vector2;
|
|
Unity_Multiply_float2_float2(_Vector2_ad6bd100e273d78fa409a30a77bfa2cc_Out_0_Vector2, _Vector2_b76cb1842101e58b9e636d49b075c612_Out_0_Vector2, _Multiply_31e8db88ee20c985a9850d1a58f3282b_Out_2_Vector2);
|
|
float _Split_5ed44bf2eca0868f81eb18100f49d1fa_R_1_Float = IN.WorldSpaceNormal[0];
|
|
float _Split_5ed44bf2eca0868f81eb18100f49d1fa_G_2_Float = IN.WorldSpaceNormal[1];
|
|
float _Split_5ed44bf2eca0868f81eb18100f49d1fa_B_3_Float = IN.WorldSpaceNormal[2];
|
|
float _Split_5ed44bf2eca0868f81eb18100f49d1fa_A_4_Float = 0;
|
|
float2 _Vector2_70e5837843f28b8b9d64cada3697bd5a_Out_0_Vector2 = float2(_Split_5ed44bf2eca0868f81eb18100f49d1fa_R_1_Float, _Split_5ed44bf2eca0868f81eb18100f49d1fa_B_3_Float);
|
|
float2 _Add_1145b2f896593d80aa864a34e6702562_Out_2_Vector2;
|
|
Unity_Add_float2(_Multiply_31e8db88ee20c985a9850d1a58f3282b_Out_2_Vector2, _Vector2_70e5837843f28b8b9d64cada3697bd5a_Out_0_Vector2, _Add_1145b2f896593d80aa864a34e6702562_Out_2_Vector2);
|
|
float _Split_2bc77ca2d17bd78cb2383770ce50b179_R_1_Float = _Add_1145b2f896593d80aa864a34e6702562_Out_2_Vector2[0];
|
|
float _Split_2bc77ca2d17bd78cb2383770ce50b179_G_2_Float = _Add_1145b2f896593d80aa864a34e6702562_Out_2_Vector2[1];
|
|
float _Split_2bc77ca2d17bd78cb2383770ce50b179_B_3_Float = 0;
|
|
float _Split_2bc77ca2d17bd78cb2383770ce50b179_A_4_Float = 0;
|
|
float _Multiply_e4fe778b81456d819c52bb414cd95968_Out_2_Float;
|
|
Unity_Multiply_float_float(_SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_B_6_Float, _Split_5ed44bf2eca0868f81eb18100f49d1fa_G_2_Float, _Multiply_e4fe778b81456d819c52bb414cd95968_Out_2_Float);
|
|
float3 _Vector3_08f62c5c01619e849f1a7d85a44531ac_Out_0_Vector3 = float3(_Split_2bc77ca2d17bd78cb2383770ce50b179_R_1_Float, _Multiply_e4fe778b81456d819c52bb414cd95968_Out_2_Float, _Split_2bc77ca2d17bd78cb2383770ce50b179_G_2_Float);
|
|
float3 _Absolute_644b798714827680b39bf5d34f70385f_Out_1_Vector3;
|
|
Unity_Absolute_float3(IN.WorldSpaceNormal, _Absolute_644b798714827680b39bf5d34f70385f_Out_1_Vector3);
|
|
float _Property_adc4c59482221c8aad681c6558728ac9_Out_0_Float = Vector1_E4D1C13A;
|
|
float3 _Power_ee478822a04529849ae8df1636c29fe2_Out_2_Vector3;
|
|
Unity_Power_float3(_Absolute_644b798714827680b39bf5d34f70385f_Out_1_Vector3, (_Property_adc4c59482221c8aad681c6558728ac9_Out_0_Float.xxx), _Power_ee478822a04529849ae8df1636c29fe2_Out_2_Vector3);
|
|
float3 _Multiply_b386a937554d73828e437d126d69608b_Out_2_Vector3;
|
|
Unity_Multiply_float3_float3(_Power_ee478822a04529849ae8df1636c29fe2_Out_2_Vector3, _Power_ee478822a04529849ae8df1636c29fe2_Out_2_Vector3, _Multiply_b386a937554d73828e437d126d69608b_Out_2_Vector3);
|
|
float _Split_ae83014fcbd9f7879a0b91fa66dc9718_R_1_Float = _Multiply_b386a937554d73828e437d126d69608b_Out_2_Vector3[0];
|
|
float _Split_ae83014fcbd9f7879a0b91fa66dc9718_G_2_Float = _Multiply_b386a937554d73828e437d126d69608b_Out_2_Vector3[1];
|
|
float _Split_ae83014fcbd9f7879a0b91fa66dc9718_B_3_Float = _Multiply_b386a937554d73828e437d126d69608b_Out_2_Vector3[2];
|
|
float _Split_ae83014fcbd9f7879a0b91fa66dc9718_A_4_Float = 0;
|
|
float3 _Multiply_2e1040ca9c98d085ace76ee93f094039_Out_2_Vector3;
|
|
Unity_Multiply_float3_float3(_Vector3_08f62c5c01619e849f1a7d85a44531ac_Out_0_Vector3, (_Split_ae83014fcbd9f7879a0b91fa66dc9718_G_2_Float.xxx), _Multiply_2e1040ca9c98d085ace76ee93f094039_Out_2_Vector3);
|
|
float4 _Combine_192c2c4a69be588b90ca005a32e22552_RGBA_4_Vector4;
|
|
float3 _Combine_192c2c4a69be588b90ca005a32e22552_RGB_5_Vector3;
|
|
float2 _Combine_192c2c4a69be588b90ca005a32e22552_RG_6_Vector2;
|
|
Unity_Combine_float(_Split_89ed63cb625cb3878c183d0b71c03400_R_1_Float, _Split_89ed63cb625cb3878c183d0b71c03400_G_2_Float, float(0), float(0), _Combine_192c2c4a69be588b90ca005a32e22552_RGBA_4_Vector4, _Combine_192c2c4a69be588b90ca005a32e22552_RGB_5_Vector3, _Combine_192c2c4a69be588b90ca005a32e22552_RG_6_Vector2);
|
|
float4 _Multiply_138240d0d4846e87b0febabec0d6891b_Out_2_Vector4;
|
|
Unity_Multiply_float4_float4(_Combine_192c2c4a69be588b90ca005a32e22552_RGBA_4_Vector4, (_Property_47988ec10c0c18879d461e00bed806e7_Out_0_Float.xxxx), _Multiply_138240d0d4846e87b0febabec0d6891b_Out_2_Vector4);
|
|
float _Multiply_de711f4a4614bd89a463b53374cf4036_Out_2_Float;
|
|
Unity_Multiply_float_float(_Split_6299d4ddcc4c74828aea40a46fdb896e_B_3_Float, -1, _Multiply_de711f4a4614bd89a463b53374cf4036_Out_2_Float);
|
|
float2 _Vector2_4ed33f0c73b2698fa6f3c1b77fe76808_Out_0_Vector2 = float2(_Multiply_de711f4a4614bd89a463b53374cf4036_Out_2_Float, float(1));
|
|
float2 _Multiply_2af6058cc6ccb88caefd2799bb5941e8_Out_2_Vector2;
|
|
Unity_Multiply_float2_float2((_Multiply_138240d0d4846e87b0febabec0d6891b_Out_2_Vector4.xy), _Vector2_4ed33f0c73b2698fa6f3c1b77fe76808_Out_0_Vector2, _Multiply_2af6058cc6ccb88caefd2799bb5941e8_Out_2_Vector2);
|
|
float4 _SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_RGBA_0_Vector4 = SAMPLE_TEXTURE2D(_Property_3e01b4d2fc68d48ba3acbba9d5881e59_Out_0_Texture2D.tex, _Property_8a2b8589cd3a42a1879a29c28e4f711f_Out_0_SamplerState.samplerstate, _Property_3e01b4d2fc68d48ba3acbba9d5881e59_Out_0_Texture2D.GetTransformedUV(_Multiply_2af6058cc6ccb88caefd2799bb5941e8_Out_2_Vector2) );
|
|
_SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_RGBA_0_Vector4.rgb = UnpackNormal(_SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_RGBA_0_Vector4);
|
|
float _SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_R_4_Float = _SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_RGBA_0_Vector4.r;
|
|
float _SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_G_5_Float = _SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_RGBA_0_Vector4.g;
|
|
float _SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_B_6_Float = _SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_RGBA_0_Vector4.b;
|
|
float _SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_A_7_Float = _SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_RGBA_0_Vector4.a;
|
|
float2 _Vector2_fe9aedd4528c7486ada4abdca0b0944e_Out_0_Vector2 = float2(_SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_R_4_Float, _SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_G_5_Float);
|
|
float2 _Multiply_02b9b4665ad9918d8721bcaddc82f06f_Out_2_Vector2;
|
|
Unity_Multiply_float2_float2(_Vector2_fe9aedd4528c7486ada4abdca0b0944e_Out_0_Vector2, _Vector2_4ed33f0c73b2698fa6f3c1b77fe76808_Out_0_Vector2, _Multiply_02b9b4665ad9918d8721bcaddc82f06f_Out_2_Vector2);
|
|
float2 _Vector2_a74a85274da15181abb63cc5e8df0de1_Out_0_Vector2 = float2(_Split_5ed44bf2eca0868f81eb18100f49d1fa_R_1_Float, _Split_5ed44bf2eca0868f81eb18100f49d1fa_G_2_Float);
|
|
float2 _Add_b227c84042055e8faa1a9fdc69529707_Out_2_Vector2;
|
|
Unity_Add_float2(_Multiply_02b9b4665ad9918d8721bcaddc82f06f_Out_2_Vector2, _Vector2_a74a85274da15181abb63cc5e8df0de1_Out_0_Vector2, _Add_b227c84042055e8faa1a9fdc69529707_Out_2_Vector2);
|
|
float _Split_2cfb9eacd8762483941459cdf28bda97_R_1_Float = _Add_b227c84042055e8faa1a9fdc69529707_Out_2_Vector2[0];
|
|
float _Split_2cfb9eacd8762483941459cdf28bda97_G_2_Float = _Add_b227c84042055e8faa1a9fdc69529707_Out_2_Vector2[1];
|
|
float _Split_2cfb9eacd8762483941459cdf28bda97_B_3_Float = 0;
|
|
float _Split_2cfb9eacd8762483941459cdf28bda97_A_4_Float = 0;
|
|
float _Multiply_1d65ce08ce672087879125f2e13c4004_Out_2_Float;
|
|
Unity_Multiply_float_float(_SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_B_6_Float, _Split_5ed44bf2eca0868f81eb18100f49d1fa_B_3_Float, _Multiply_1d65ce08ce672087879125f2e13c4004_Out_2_Float);
|
|
float3 _Vector3_ba6cfb4671e8c58f9b41ea1dc23102ca_Out_0_Vector3 = float3(_Split_2cfb9eacd8762483941459cdf28bda97_R_1_Float, _Split_2cfb9eacd8762483941459cdf28bda97_G_2_Float, _Multiply_1d65ce08ce672087879125f2e13c4004_Out_2_Float);
|
|
float3 _Multiply_7bb4009c92b108849ac6ca92bc1442f2_Out_2_Vector3;
|
|
Unity_Multiply_float3_float3(_Vector3_ba6cfb4671e8c58f9b41ea1dc23102ca_Out_0_Vector3, (_Split_ae83014fcbd9f7879a0b91fa66dc9718_B_3_Float.xxx), _Multiply_7bb4009c92b108849ac6ca92bc1442f2_Out_2_Vector3);
|
|
float4 _Combine_1e9ffdba42d6918fb7a4b185f1585d2a_RGBA_4_Vector4;
|
|
float3 _Combine_1e9ffdba42d6918fb7a4b185f1585d2a_RGB_5_Vector3;
|
|
float2 _Combine_1e9ffdba42d6918fb7a4b185f1585d2a_RG_6_Vector2;
|
|
Unity_Combine_float(_Split_89ed63cb625cb3878c183d0b71c03400_B_3_Float, _Split_89ed63cb625cb3878c183d0b71c03400_G_2_Float, float(0), float(0), _Combine_1e9ffdba42d6918fb7a4b185f1585d2a_RGBA_4_Vector4, _Combine_1e9ffdba42d6918fb7a4b185f1585d2a_RGB_5_Vector3, _Combine_1e9ffdba42d6918fb7a4b185f1585d2a_RG_6_Vector2);
|
|
float4 _Multiply_2c0864423b014f8b8af8523f68cbb63c_Out_2_Vector4;
|
|
Unity_Multiply_float4_float4(_Combine_1e9ffdba42d6918fb7a4b185f1585d2a_RGBA_4_Vector4, (_Property_47988ec10c0c18879d461e00bed806e7_Out_0_Float.xxxx), _Multiply_2c0864423b014f8b8af8523f68cbb63c_Out_2_Vector4);
|
|
float2 _Vector2_a1e23e0f921b6484818f009a2b12a5ba_Out_0_Vector2 = float2(_Split_6299d4ddcc4c74828aea40a46fdb896e_R_1_Float, float(1));
|
|
float2 _Multiply_862402885a49f18cb87278ab53bc6744_Out_2_Vector2;
|
|
Unity_Multiply_float2_float2((_Multiply_2c0864423b014f8b8af8523f68cbb63c_Out_2_Vector4.xy), _Vector2_a1e23e0f921b6484818f009a2b12a5ba_Out_0_Vector2, _Multiply_862402885a49f18cb87278ab53bc6744_Out_2_Vector2);
|
|
float4 _SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_RGBA_0_Vector4 = SAMPLE_TEXTURE2D(_Property_3e01b4d2fc68d48ba3acbba9d5881e59_Out_0_Texture2D.tex, _Property_8a2b8589cd3a42a1879a29c28e4f711f_Out_0_SamplerState.samplerstate, _Property_3e01b4d2fc68d48ba3acbba9d5881e59_Out_0_Texture2D.GetTransformedUV(_Multiply_862402885a49f18cb87278ab53bc6744_Out_2_Vector2) );
|
|
_SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_RGBA_0_Vector4.rgb = UnpackNormal(_SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_RGBA_0_Vector4);
|
|
float _SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_R_4_Float = _SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_RGBA_0_Vector4.r;
|
|
float _SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_G_5_Float = _SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_RGBA_0_Vector4.g;
|
|
float _SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_B_6_Float = _SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_RGBA_0_Vector4.b;
|
|
float _SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_A_7_Float = _SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_RGBA_0_Vector4.a;
|
|
float _Multiply_4649b768be76d784a3284bacde795359_Out_2_Float;
|
|
Unity_Multiply_float_float(_SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_B_6_Float, _Split_5ed44bf2eca0868f81eb18100f49d1fa_R_1_Float, _Multiply_4649b768be76d784a3284bacde795359_Out_2_Float);
|
|
float2 _Vector2_819fcd5eb484438eacad1987576d7d67_Out_0_Vector2 = float2(_SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_R_4_Float, _SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_G_5_Float);
|
|
float2 _Multiply_58530ebb3c6d798b93686a76247bf505_Out_2_Vector2;
|
|
Unity_Multiply_float2_float2(_Vector2_819fcd5eb484438eacad1987576d7d67_Out_0_Vector2, _Vector2_a1e23e0f921b6484818f009a2b12a5ba_Out_0_Vector2, _Multiply_58530ebb3c6d798b93686a76247bf505_Out_2_Vector2);
|
|
float2 _Vector2_e293c112b2f49e88a5fe46dfb1fbeb40_Out_0_Vector2 = float2(_Split_5ed44bf2eca0868f81eb18100f49d1fa_B_3_Float, _Split_5ed44bf2eca0868f81eb18100f49d1fa_G_2_Float);
|
|
float2 _Add_cf00fb232c6e2b8e973ab2f84453f55e_Out_2_Vector2;
|
|
Unity_Add_float2(_Multiply_58530ebb3c6d798b93686a76247bf505_Out_2_Vector2, _Vector2_e293c112b2f49e88a5fe46dfb1fbeb40_Out_0_Vector2, _Add_cf00fb232c6e2b8e973ab2f84453f55e_Out_2_Vector2);
|
|
float _Split_3ea3e61d32bdd78f82c686b75ff3fd9b_R_1_Float = _Add_cf00fb232c6e2b8e973ab2f84453f55e_Out_2_Vector2[0];
|
|
float _Split_3ea3e61d32bdd78f82c686b75ff3fd9b_G_2_Float = _Add_cf00fb232c6e2b8e973ab2f84453f55e_Out_2_Vector2[1];
|
|
float _Split_3ea3e61d32bdd78f82c686b75ff3fd9b_B_3_Float = 0;
|
|
float _Split_3ea3e61d32bdd78f82c686b75ff3fd9b_A_4_Float = 0;
|
|
float3 _Vector3_13a08d5940172a84a78ee3d9b8766833_Out_0_Vector3 = float3(_Multiply_4649b768be76d784a3284bacde795359_Out_2_Float, _Split_3ea3e61d32bdd78f82c686b75ff3fd9b_G_2_Float, _Split_3ea3e61d32bdd78f82c686b75ff3fd9b_R_1_Float);
|
|
float3 _Multiply_77818c22e359fc8cbb7dd20216a8db72_Out_2_Vector3;
|
|
Unity_Multiply_float3_float3(_Vector3_13a08d5940172a84a78ee3d9b8766833_Out_0_Vector3, (_Split_ae83014fcbd9f7879a0b91fa66dc9718_R_1_Float.xxx), _Multiply_77818c22e359fc8cbb7dd20216a8db72_Out_2_Vector3);
|
|
float3 _Add_769d9ee909c9238dbbf72d2800a2f268_Out_2_Vector3;
|
|
Unity_Add_float3(_Multiply_7bb4009c92b108849ac6ca92bc1442f2_Out_2_Vector3, _Multiply_77818c22e359fc8cbb7dd20216a8db72_Out_2_Vector3, _Add_769d9ee909c9238dbbf72d2800a2f268_Out_2_Vector3);
|
|
float3 _Add_14295f72880e4b87a1baf1ced943ac40_Out_2_Vector3;
|
|
Unity_Add_float3(_Multiply_2e1040ca9c98d085ace76ee93f094039_Out_2_Vector3, _Add_769d9ee909c9238dbbf72d2800a2f268_Out_2_Vector3, _Add_14295f72880e4b87a1baf1ced943ac40_Out_2_Vector3);
|
|
float _Add_e59af300bba2498db32eac1412123447_Out_2_Float;
|
|
Unity_Add_float(_Split_ae83014fcbd9f7879a0b91fa66dc9718_R_1_Float, _Split_ae83014fcbd9f7879a0b91fa66dc9718_G_2_Float, _Add_e59af300bba2498db32eac1412123447_Out_2_Float);
|
|
float _Add_e855069f047fae8ea9027d56acb61e56_Out_2_Float;
|
|
Unity_Add_float(_Add_e59af300bba2498db32eac1412123447_Out_2_Float, _Split_ae83014fcbd9f7879a0b91fa66dc9718_B_3_Float, _Add_e855069f047fae8ea9027d56acb61e56_Out_2_Float);
|
|
float3 _Divide_91ae4b94f1d9b78e99d0472293b8098c_Out_2_Vector3;
|
|
Unity_Divide_float3(_Add_14295f72880e4b87a1baf1ced943ac40_Out_2_Vector3, (_Add_e855069f047fae8ea9027d56acb61e56_Out_2_Float.xxx), _Divide_91ae4b94f1d9b78e99d0472293b8098c_Out_2_Vector3);
|
|
float3 _Transform_73eecc0c3689d184a34c8d0f28a58adf_Out_1_Vector3;
|
|
{
|
|
float3x3 tangentTransform = float3x3(IN.WorldSpaceTangent, IN.WorldSpaceBiTangent, IN.WorldSpaceNormal);
|
|
_Transform_73eecc0c3689d184a34c8d0f28a58adf_Out_1_Vector3 = TransformWorldToTangent(_Divide_91ae4b94f1d9b78e99d0472293b8098c_Out_2_Vector3.xyz, tangentTransform, true);
|
|
}
|
|
float3 _Normalize_15ef346824db0a8797631ed8b998e673_Out_1_Vector3;
|
|
Unity_Normalize_float3(_Transform_73eecc0c3689d184a34c8d0f28a58adf_Out_1_Vector3, _Normalize_15ef346824db0a8797631ed8b998e673_Out_1_Vector3);
|
|
XYZ_1 = (float4(_Normalize_15ef346824db0a8797631ed8b998e673_Out_1_Vector3, 1.0));
|
|
XZ_2 = (float4(_Vector3_08f62c5c01619e849f1a7d85a44531ac_Out_0_Vector3, 1.0));
|
|
YZ_3 = (float4(_Vector3_ba6cfb4671e8c58f9b41ea1dc23102ca_Out_0_Vector3, 1.0));
|
|
XY_4 = (float4(_Vector3_13a08d5940172a84a78ee3d9b8766833_Out_0_Vector3, 1.0));
|
|
}
|
|
|
|
void Unity_NormalStrength_float(float3 In, float Strength, out float3 Out)
|
|
{
|
|
Out = float3(In.rg * Strength, lerp(1, In.b, saturate(Strength)));
|
|
}
|
|
|
|
void Unity_NormalBlend_float(float3 A, float3 B, out float3 Out)
|
|
{
|
|
Out = SafeNormalize(float3(A.rg + B.rg, A.b * B.b));
|
|
}
|
|
|
|
void Unity_Subtract_float(float A, float B, out float Out)
|
|
{
|
|
Out = A - B;
|
|
}
|
|
|
|
void Unity_Divide_float(float A, float B, out float Out)
|
|
{
|
|
Out = A / B;
|
|
}
|
|
|
|
void Unity_Lerp_float3(float3 A, float3 B, float3 T, out float3 Out)
|
|
{
|
|
Out = lerp(A, B, T);
|
|
}
|
|
|
|
void Unity_Remap_float(float In, float2 InMinMax, float2 OutMinMax, out float Out)
|
|
{
|
|
Out = OutMinMax.x + (In - InMinMax.x) * (OutMinMax.y - OutMinMax.x) / (InMinMax.y - InMinMax.x);
|
|
}
|
|
|
|
void Unity_Branch_float(float Predicate, float True, float False, out float Out)
|
|
{
|
|
Out = Predicate ? True : False;
|
|
}
|
|
|
|
void Unity_Lerp_float(float A, float B, float T, out float Out)
|
|
{
|
|
Out = lerp(A, B, T);
|
|
}
|
|
|
|
struct Bindings_BlendOverlayDetailSmoothness_06e12138dc89c0040b45a57abe520a1a_float
|
|
{
|
|
};
|
|
|
|
void SG_BlendOverlayDetailSmoothness_06e12138dc89c0040b45a57abe520a1a_float(float Vector1_32317166, float Vector1_FBE622A2, float Vector1_8C15C351, Bindings_BlendOverlayDetailSmoothness_06e12138dc89c0040b45a57abe520a1a_float IN, out float SmoothnessOverlay_1)
|
|
{
|
|
float _Property_728cc50521e9e988ac9cbff4872d5139_Out_0_Float = Vector1_32317166;
|
|
float _Property_a00e29241d12f983b30177515b367ec9_Out_0_Float = Vector1_FBE622A2;
|
|
float _Sign_343a45ede7349283a681c6bd9998fd8e_Out_1_Float;
|
|
Unity_Sign_float(_Property_a00e29241d12f983b30177515b367ec9_Out_0_Float, _Sign_343a45ede7349283a681c6bd9998fd8e_Out_1_Float);
|
|
float _Add_681019b8f5d3d68bb482d419c9fc61a9_Out_2_Float;
|
|
Unity_Add_float(_Sign_343a45ede7349283a681c6bd9998fd8e_Out_1_Float, float(1), _Add_681019b8f5d3d68bb482d419c9fc61a9_Out_2_Float);
|
|
float _Multiply_e8f4cb722712a880ac0db6c7461427f7_Out_2_Float;
|
|
Unity_Multiply_float_float(_Add_681019b8f5d3d68bb482d419c9fc61a9_Out_2_Float, 0.5, _Multiply_e8f4cb722712a880ac0db6c7461427f7_Out_2_Float);
|
|
float _Ceiling_95ad15988aa9b98184875fa754feae01_Out_1_Float;
|
|
Unity_Ceiling_float(_Multiply_e8f4cb722712a880ac0db6c7461427f7_Out_2_Float, _Ceiling_95ad15988aa9b98184875fa754feae01_Out_1_Float);
|
|
float _Property_2db1c747a05ee284a8b00076062f91a4_Out_0_Float = Vector1_8C15C351;
|
|
float _Lerp_b3cdb01fc3c5b988ac9b184943bf7c01_Out_3_Float;
|
|
Unity_Lerp_float(_Property_728cc50521e9e988ac9cbff4872d5139_Out_0_Float, _Ceiling_95ad15988aa9b98184875fa754feae01_Out_1_Float, _Property_2db1c747a05ee284a8b00076062f91a4_Out_0_Float, _Lerp_b3cdb01fc3c5b988ac9b184943bf7c01_Out_3_Float);
|
|
SmoothnessOverlay_1 = _Lerp_b3cdb01fc3c5b988ac9b184943bf7c01_Out_3_Float;
|
|
}
|
|
|
|
void Unity_Minimum_float(float A, float B, out float Out)
|
|
{
|
|
Out = min(A, B);
|
|
};
|
|
|
|
// Graph Vertex
|
|
struct VertexDescription
|
|
{
|
|
float3 Position;
|
|
float3 Normal;
|
|
float3 Tangent;
|
|
};
|
|
|
|
VertexDescription VertexDescriptionFunction(VertexDescriptionInputs IN)
|
|
{
|
|
VertexDescription description = (VertexDescription)0;
|
|
description.Position = IN.ObjectSpacePosition;
|
|
description.Normal = IN.ObjectSpaceNormal;
|
|
description.Tangent = IN.ObjectSpaceTangent;
|
|
return description;
|
|
}
|
|
|
|
// Graph Pixel
|
|
struct SurfaceDescription
|
|
{
|
|
float3 BaseColor;
|
|
float3 Emission;
|
|
float Alpha;
|
|
float3 BentNormal;
|
|
float Smoothness;
|
|
float Occlusion;
|
|
float3 NormalTS;
|
|
float Metallic;
|
|
float4 VTPackedFeedback;
|
|
};
|
|
|
|
SurfaceDescription SurfaceDescriptionFunction(SurfaceDescriptionInputs IN)
|
|
{
|
|
SurfaceDescription surface = (SurfaceDescription)0;
|
|
float _Property_72a5c604805a7b8ebbfd7acee03656aa_Out_0_Boolean = _CoverMaskRCurvature;
|
|
UnityTexture2D _Property_5f029bbc9f13b7858650859c3b63ebfd_Out_0_Texture2D = UnityBuildTexture2DStructNoScale(_BaseColorMap);
|
|
float4 _Property_a409d5fcafb9f182a4b2aea64204408f_Out_0_Vector4 = _BaseTilingOffset;
|
|
float4 _Divide_6a90cebe78e620828de587523daaa7e6_Out_2_Vector4;
|
|
Unity_Divide_float4(float4(1, 1, 0, 0), _Property_a409d5fcafb9f182a4b2aea64204408f_Out_0_Vector4, _Divide_6a90cebe78e620828de587523daaa7e6_Out_2_Vector4);
|
|
float _Property_3539de8c698c2981bb3c088d4ec52201_Out_0_Float = _BaseTriplanarThreshold;
|
|
Bindings_TriplanarNM_bc609ed95f52591469ab35dbfe0efcea_float _TriplanarNM_92d0433ff3938b8392407d2ab8713ac8;
|
|
_TriplanarNM_92d0433ff3938b8392407d2ab8713ac8.WorldSpaceNormal = IN.WorldSpaceNormal;
|
|
_TriplanarNM_92d0433ff3938b8392407d2ab8713ac8.AbsoluteWorldSpacePosition = IN.AbsoluteWorldSpacePosition;
|
|
float4 _TriplanarNM_92d0433ff3938b8392407d2ab8713ac8_XYZ_1_Vector4;
|
|
float4 _TriplanarNM_92d0433ff3938b8392407d2ab8713ac8_XZ_2_Vector4;
|
|
float4 _TriplanarNM_92d0433ff3938b8392407d2ab8713ac8_YZ_3_Vector4;
|
|
float4 _TriplanarNM_92d0433ff3938b8392407d2ab8713ac8_XY_4_Vector4;
|
|
SG_TriplanarNM_bc609ed95f52591469ab35dbfe0efcea_float(_Property_5f029bbc9f13b7858650859c3b63ebfd_Out_0_Texture2D, (_Divide_6a90cebe78e620828de587523daaa7e6_Out_2_Vector4).x, _Property_3539de8c698c2981bb3c088d4ec52201_Out_0_Float, UnityBuildSamplerStateStruct(SamplerState_Linear_Repeat_Aniso8), _TriplanarNM_92d0433ff3938b8392407d2ab8713ac8, _TriplanarNM_92d0433ff3938b8392407d2ab8713ac8_XYZ_1_Vector4, _TriplanarNM_92d0433ff3938b8392407d2ab8713ac8_XZ_2_Vector4, _TriplanarNM_92d0433ff3938b8392407d2ab8713ac8_YZ_3_Vector4, _TriplanarNM_92d0433ff3938b8392407d2ab8713ac8_XY_4_Vector4);
|
|
float4 _Property_87cd542c2b8c30868ed1d7d38aed8f2b_Out_0_Vector4 = _BaseColor;
|
|
float4 _Multiply_4b2be0b3fe39f385b887e7c82ab41e0b_Out_2_Vector4;
|
|
Unity_Multiply_float4_float4(_TriplanarNM_92d0433ff3938b8392407d2ab8713ac8_XYZ_1_Vector4, _Property_87cd542c2b8c30868ed1d7d38aed8f2b_Out_0_Vector4, _Multiply_4b2be0b3fe39f385b887e7c82ab41e0b_Out_2_Vector4);
|
|
UnityTexture2D _Property_c167aafac28bd98c8411d3e25631fdeb_Out_0_Texture2D = UnityBuildTexture2DStructNoScale(_CoverMaskA);
|
|
float4 _UV_e143f0ebbac8bb8cab3206ab93422dda_Out_0_Vector4 = IN.uv0;
|
|
float4 _SampleTexture2D_32717b1e99785588830ceee116cbe7fc_RGBA_0_Vector4 = SAMPLE_TEXTURE2D(_Property_c167aafac28bd98c8411d3e25631fdeb_Out_0_Texture2D.tex, _Property_c167aafac28bd98c8411d3e25631fdeb_Out_0_Texture2D.samplerstate, _Property_c167aafac28bd98c8411d3e25631fdeb_Out_0_Texture2D.GetTransformedUV((_UV_e143f0ebbac8bb8cab3206ab93422dda_Out_0_Vector4.xy)) );
|
|
float _SampleTexture2D_32717b1e99785588830ceee116cbe7fc_R_4_Float = _SampleTexture2D_32717b1e99785588830ceee116cbe7fc_RGBA_0_Vector4.r;
|
|
float _SampleTexture2D_32717b1e99785588830ceee116cbe7fc_G_5_Float = _SampleTexture2D_32717b1e99785588830ceee116cbe7fc_RGBA_0_Vector4.g;
|
|
float _SampleTexture2D_32717b1e99785588830ceee116cbe7fc_B_6_Float = _SampleTexture2D_32717b1e99785588830ceee116cbe7fc_RGBA_0_Vector4.b;
|
|
float _SampleTexture2D_32717b1e99785588830ceee116cbe7fc_A_7_Float = _SampleTexture2D_32717b1e99785588830ceee116cbe7fc_RGBA_0_Vector4.a;
|
|
float _Multiply_01f97603c3df268380d339564b08db11_Out_2_Float;
|
|
Unity_Multiply_float_float(_SampleTexture2D_32717b1e99785588830ceee116cbe7fc_R_4_Float, 2, _Multiply_01f97603c3df268380d339564b08db11_Out_2_Float);
|
|
float _Property_cad777e9a810198e8076eb2cd76e6817_Out_0_Float = _BaseDarknessCurvMultply;
|
|
float _Multiply_b67c8963c3ba188e85b84ae9bf0dcbf7_Out_2_Float;
|
|
Unity_Multiply_float_float(_Multiply_01f97603c3df268380d339564b08db11_Out_2_Float, _Property_cad777e9a810198e8076eb2cd76e6817_Out_0_Float, _Multiply_b67c8963c3ba188e85b84ae9bf0dcbf7_Out_2_Float);
|
|
float _Clamp_646f55d74b38f18aa983e5d031e0e7c3_Out_3_Float;
|
|
Unity_Clamp_float(_Multiply_b67c8963c3ba188e85b84ae9bf0dcbf7_Out_2_Float, float(0), float(1), _Clamp_646f55d74b38f18aa983e5d031e0e7c3_Out_3_Float);
|
|
float _Absolute_c99e11216fab2488946eb6243d985fdc_Out_1_Float;
|
|
Unity_Absolute_float(_Clamp_646f55d74b38f18aa983e5d031e0e7c3_Out_3_Float, _Absolute_c99e11216fab2488946eb6243d985fdc_Out_1_Float);
|
|
float _Property_f8a9827e6f28d9819188d4775dcf7620_Out_0_Float = _BaseDarknessCurvPower;
|
|
float _Power_1b88303e1ca2f285b344bf6aa0cf05e4_Out_2_Float;
|
|
Unity_Power_float(_Absolute_c99e11216fab2488946eb6243d985fdc_Out_1_Float, _Property_f8a9827e6f28d9819188d4775dcf7620_Out_0_Float, _Power_1b88303e1ca2f285b344bf6aa0cf05e4_Out_2_Float);
|
|
float _Clamp_27887d983dbb5a8bbd2966fbcbd7c126_Out_3_Float;
|
|
Unity_Clamp_float(_Power_1b88303e1ca2f285b344bf6aa0cf05e4_Out_2_Float, float(0), float(1), _Clamp_27887d983dbb5a8bbd2966fbcbd7c126_Out_3_Float);
|
|
float4 _Multiply_59efbfb897b39480ad44be129db72018_Out_2_Vector4;
|
|
Unity_Multiply_float4_float4(_Multiply_4b2be0b3fe39f385b887e7c82ab41e0b_Out_2_Vector4, (_Clamp_27887d983dbb5a8bbd2966fbcbd7c126_Out_3_Float.xxxx), _Multiply_59efbfb897b39480ad44be129db72018_Out_2_Vector4);
|
|
float4 _Clamp_841e38951a68f286955c4755e78c610b_Out_3_Vector4;
|
|
Unity_Clamp_float4(_Multiply_59efbfb897b39480ad44be129db72018_Out_2_Vector4, float4(0, 0, 0, 0), float4(1, 1, 1, 1), _Clamp_841e38951a68f286955c4755e78c610b_Out_3_Vector4);
|
|
float _Add_d7ea4a88c4af4886b1e567ddd2b963f9_Out_2_Float;
|
|
Unity_Add_float(_Multiply_01f97603c3df268380d339564b08db11_Out_2_Float, float(-1), _Add_d7ea4a88c4af4886b1e567ddd2b963f9_Out_2_Float);
|
|
float _Clamp_1a02c4bf5903c988b1489d14c840c1e3_Out_3_Float;
|
|
Unity_Clamp_float(_Add_d7ea4a88c4af4886b1e567ddd2b963f9_Out_2_Float, float(0), float(1), _Clamp_1a02c4bf5903c988b1489d14c840c1e3_Out_3_Float);
|
|
float _Property_0e0e1ec2131cec87836dce596351dc1c_Out_0_Float = _BaseBrightnessCurvMultply;
|
|
float _Multiply_c975dfa7de001c89addd082d443e2d07_Out_2_Float;
|
|
Unity_Multiply_float_float(_Clamp_1a02c4bf5903c988b1489d14c840c1e3_Out_3_Float, _Property_0e0e1ec2131cec87836dce596351dc1c_Out_0_Float, _Multiply_c975dfa7de001c89addd082d443e2d07_Out_2_Float);
|
|
float _Clamp_d5711b145a87ef8e8a93ceb9b6197759_Out_3_Float;
|
|
Unity_Clamp_float(_Multiply_c975dfa7de001c89addd082d443e2d07_Out_2_Float, float(0), float(1), _Clamp_d5711b145a87ef8e8a93ceb9b6197759_Out_3_Float);
|
|
float _Absolute_8f9bd7ee7a35c18084d08ad7ef463f52_Out_1_Float;
|
|
Unity_Absolute_float(_Clamp_d5711b145a87ef8e8a93ceb9b6197759_Out_3_Float, _Absolute_8f9bd7ee7a35c18084d08ad7ef463f52_Out_1_Float);
|
|
float _Property_9092f5beea2bec83a5c8a3f6623953a6_Out_0_Float = _BaseBrightnessCurvPower;
|
|
float _Power_5c1a81a2cfcc578996666adb93479f83_Out_2_Float;
|
|
Unity_Power_float(_Absolute_8f9bd7ee7a35c18084d08ad7ef463f52_Out_1_Float, _Property_9092f5beea2bec83a5c8a3f6623953a6_Out_0_Float, _Power_5c1a81a2cfcc578996666adb93479f83_Out_2_Float);
|
|
float _Clamp_f3c614a7ae35508288c0bc3f6194ca34_Out_3_Float;
|
|
Unity_Clamp_float(_Power_5c1a81a2cfcc578996666adb93479f83_Out_2_Float, float(0), float(1), _Clamp_f3c614a7ae35508288c0bc3f6194ca34_Out_3_Float);
|
|
float4 _Add_8313e15cade91a8ba653986d6722818a_Out_2_Vector4;
|
|
Unity_Add_float4(_Clamp_841e38951a68f286955c4755e78c610b_Out_3_Vector4, (_Clamp_f3c614a7ae35508288c0bc3f6194ca34_Out_3_Float.xxxx), _Add_8313e15cade91a8ba653986d6722818a_Out_2_Vector4);
|
|
float4 _Clamp_6dc8fea4fa463b8ea840911fd315c80f_Out_3_Vector4;
|
|
Unity_Clamp_float4(_Add_8313e15cade91a8ba653986d6722818a_Out_2_Vector4, float4(0, 0, 0, 0), float4(1, 1, 1, 1), _Clamp_6dc8fea4fa463b8ea840911fd315c80f_Out_3_Vector4);
|
|
float4 _Branch_26165227c7a50284b87d2996dee9982c_Out_3_Vector4;
|
|
Unity_Branch_float4(_Property_72a5c604805a7b8ebbfd7acee03656aa_Out_0_Boolean, _Clamp_6dc8fea4fa463b8ea840911fd315c80f_Out_3_Vector4, _Multiply_4b2be0b3fe39f385b887e7c82ab41e0b_Out_2_Vector4, _Branch_26165227c7a50284b87d2996dee9982c_Out_3_Vector4);
|
|
UnityTexture2D _Property_2e62abc1fe8adb8b8ff655b8448be202_Out_0_Texture2D = UnityBuildTexture2DStructNoScale(_DetailMap);
|
|
float4 _Property_b86e0ee324ffb58a92473eab69864d04_Out_0_Vector4 = _DetailTilingOffset;
|
|
float _Split_e832641c05503286a4951c0a93621755_R_1_Float = _Property_b86e0ee324ffb58a92473eab69864d04_Out_0_Vector4[0];
|
|
float _Split_e832641c05503286a4951c0a93621755_G_2_Float = _Property_b86e0ee324ffb58a92473eab69864d04_Out_0_Vector4[1];
|
|
float _Split_e832641c05503286a4951c0a93621755_B_3_Float = _Property_b86e0ee324ffb58a92473eab69864d04_Out_0_Vector4[2];
|
|
float _Split_e832641c05503286a4951c0a93621755_A_4_Float = _Property_b86e0ee324ffb58a92473eab69864d04_Out_0_Vector4[3];
|
|
float2 _Vector2_4b5eef288b3d4c83b24e4ab653f55ec8_Out_0_Vector2 = float2(_Split_e832641c05503286a4951c0a93621755_R_1_Float, _Split_e832641c05503286a4951c0a93621755_G_2_Float);
|
|
float2 _Vector2_2925cf98ba16b08dabc58cd65efd17db_Out_0_Vector2 = float2(_Split_e832641c05503286a4951c0a93621755_B_3_Float, _Split_e832641c05503286a4951c0a93621755_A_4_Float);
|
|
float2 _TilingAndOffset_74f6566eba9ccd899de18c0b11b7a7a2_Out_3_Vector2;
|
|
Unity_TilingAndOffset_float(IN.uv0.xy, _Vector2_4b5eef288b3d4c83b24e4ab653f55ec8_Out_0_Vector2, _Vector2_2925cf98ba16b08dabc58cd65efd17db_Out_0_Vector2, _TilingAndOffset_74f6566eba9ccd899de18c0b11b7a7a2_Out_3_Vector2);
|
|
float4 _SampleTexture2D_4bd08411faa60c828847f2247f06a809_RGBA_0_Vector4 = SAMPLE_TEXTURE2D(_Property_2e62abc1fe8adb8b8ff655b8448be202_Out_0_Texture2D.tex, _Property_2e62abc1fe8adb8b8ff655b8448be202_Out_0_Texture2D.samplerstate, _Property_2e62abc1fe8adb8b8ff655b8448be202_Out_0_Texture2D.GetTransformedUV(_TilingAndOffset_74f6566eba9ccd899de18c0b11b7a7a2_Out_3_Vector2) );
|
|
float _SampleTexture2D_4bd08411faa60c828847f2247f06a809_R_4_Float = _SampleTexture2D_4bd08411faa60c828847f2247f06a809_RGBA_0_Vector4.r;
|
|
float _SampleTexture2D_4bd08411faa60c828847f2247f06a809_G_5_Float = _SampleTexture2D_4bd08411faa60c828847f2247f06a809_RGBA_0_Vector4.g;
|
|
float _SampleTexture2D_4bd08411faa60c828847f2247f06a809_B_6_Float = _SampleTexture2D_4bd08411faa60c828847f2247f06a809_RGBA_0_Vector4.b;
|
|
float _SampleTexture2D_4bd08411faa60c828847f2247f06a809_A_7_Float = _SampleTexture2D_4bd08411faa60c828847f2247f06a809_RGBA_0_Vector4.a;
|
|
float _Multiply_ee5a3ccdebd1af84920cd1455a59468b_Out_2_Float;
|
|
Unity_Multiply_float_float(_SampleTexture2D_4bd08411faa60c828847f2247f06a809_R_4_Float, 2, _Multiply_ee5a3ccdebd1af84920cd1455a59468b_Out_2_Float);
|
|
float _Add_b8d727bda34294808f98551e67aa852f_Out_2_Float;
|
|
Unity_Add_float(_Multiply_ee5a3ccdebd1af84920cd1455a59468b_Out_2_Float, float(-1), _Add_b8d727bda34294808f98551e67aa852f_Out_2_Float);
|
|
float _Property_4634e589b03f6983b90fa6aaee0ed5f6_Out_0_Float = _DetailAlbedoScale;
|
|
float _Multiply_f0ed5a95f800c68aa9f7ea2f1322cc31_Out_2_Float;
|
|
Unity_Multiply_float_float(_Add_b8d727bda34294808f98551e67aa852f_Out_2_Float, _Property_4634e589b03f6983b90fa6aaee0ed5f6_Out_0_Float, _Multiply_f0ed5a95f800c68aa9f7ea2f1322cc31_Out_2_Float);
|
|
float _Saturate_469298b4e783d887889b71dc48b4399f_Out_1_Float;
|
|
Unity_Saturate_float(_Multiply_f0ed5a95f800c68aa9f7ea2f1322cc31_Out_2_Float, _Saturate_469298b4e783d887889b71dc48b4399f_Out_1_Float);
|
|
float _Absolute_3b29f3ceceba148189d11e0195af4be2_Out_1_Float;
|
|
Unity_Absolute_float(_Saturate_469298b4e783d887889b71dc48b4399f_Out_1_Float, _Absolute_3b29f3ceceba148189d11e0195af4be2_Out_1_Float);
|
|
Bindings_BlendOverlayBaseColor_acdb3dfca72bd6b42bbc35f4613331a2_float _BlendOverlayBaseColor_369c0b6a02e62b809dc5c6ac1efddde2;
|
|
float3 _BlendOverlayBaseColor_369c0b6a02e62b809dc5c6ac1efddde2_OutVector4_1_Vector3;
|
|
SG_BlendOverlayBaseColor_acdb3dfca72bd6b42bbc35f4613331a2_float(_Branch_26165227c7a50284b87d2996dee9982c_Out_3_Vector4, _Add_b8d727bda34294808f98551e67aa852f_Out_2_Float, _Absolute_3b29f3ceceba148189d11e0195af4be2_Out_1_Float, _BlendOverlayBaseColor_369c0b6a02e62b809dc5c6ac1efddde2, _BlendOverlayBaseColor_369c0b6a02e62b809dc5c6ac1efddde2_OutVector4_1_Vector3);
|
|
UnityTexture2D _Property_9a8451520f254f84a21875f3dac8cbe3_Out_0_Texture2D = UnityBuildTexture2DStructNoScale(_CoverBaseColorMap);
|
|
float4 _Property_c853e88632d9fd85ac0e98d12083eb62_Out_0_Vector4 = _CoverTilingOffset;
|
|
float4 _Divide_1fe314f1ca9dd78fbf366bbeb40e4ccf_Out_2_Vector4;
|
|
Unity_Divide_float4(float4(1, 1, 0, 0), _Property_c853e88632d9fd85ac0e98d12083eb62_Out_0_Vector4, _Divide_1fe314f1ca9dd78fbf366bbeb40e4ccf_Out_2_Vector4);
|
|
float _Property_ee792eccbb538a878b19be5db264531e_Out_0_Float = _CoverTriplanarThreshold;
|
|
Bindings_TriplanarNM_bc609ed95f52591469ab35dbfe0efcea_float _TriplanarNM_cca4c45d91c87989990c532a04e9e8e1;
|
|
_TriplanarNM_cca4c45d91c87989990c532a04e9e8e1.WorldSpaceNormal = IN.WorldSpaceNormal;
|
|
_TriplanarNM_cca4c45d91c87989990c532a04e9e8e1.AbsoluteWorldSpacePosition = IN.AbsoluteWorldSpacePosition;
|
|
float4 _TriplanarNM_cca4c45d91c87989990c532a04e9e8e1_XYZ_1_Vector4;
|
|
float4 _TriplanarNM_cca4c45d91c87989990c532a04e9e8e1_XZ_2_Vector4;
|
|
float4 _TriplanarNM_cca4c45d91c87989990c532a04e9e8e1_YZ_3_Vector4;
|
|
float4 _TriplanarNM_cca4c45d91c87989990c532a04e9e8e1_XY_4_Vector4;
|
|
SG_TriplanarNM_bc609ed95f52591469ab35dbfe0efcea_float(_Property_9a8451520f254f84a21875f3dac8cbe3_Out_0_Texture2D, (_Divide_1fe314f1ca9dd78fbf366bbeb40e4ccf_Out_2_Vector4).x, _Property_ee792eccbb538a878b19be5db264531e_Out_0_Float, UnityBuildSamplerStateStruct(SamplerState_Linear_Repeat_Aniso8), _TriplanarNM_cca4c45d91c87989990c532a04e9e8e1, _TriplanarNM_cca4c45d91c87989990c532a04e9e8e1_XYZ_1_Vector4, _TriplanarNM_cca4c45d91c87989990c532a04e9e8e1_XZ_2_Vector4, _TriplanarNM_cca4c45d91c87989990c532a04e9e8e1_YZ_3_Vector4, _TriplanarNM_cca4c45d91c87989990c532a04e9e8e1_XY_4_Vector4);
|
|
float4 _Property_18c743619f52288dbe24e28326388b00_Out_0_Vector4 = _CoverBaseColor;
|
|
float4 _Multiply_62594f3b30470e86a813e1224c48902e_Out_2_Vector4;
|
|
Unity_Multiply_float4_float4(_TriplanarNM_cca4c45d91c87989990c532a04e9e8e1_XYZ_1_Vector4, _Property_18c743619f52288dbe24e28326388b00_Out_0_Vector4, _Multiply_62594f3b30470e86a813e1224c48902e_Out_2_Vector4);
|
|
float _Multiply_5378fc524597f98fb32eeb561a7390e9_Out_2_Float;
|
|
Unity_Multiply_float_float(_SampleTexture2D_32717b1e99785588830ceee116cbe7fc_R_4_Float, 2, _Multiply_5378fc524597f98fb32eeb561a7390e9_Out_2_Float);
|
|
float _Property_8a72d97c1c527c8f8e0cc71214498065_Out_0_Float = _CoverDarknessCurvMultply;
|
|
float _Multiply_22683a720176a788a2ce404dbddd837c_Out_2_Float;
|
|
Unity_Multiply_float_float(_Multiply_5378fc524597f98fb32eeb561a7390e9_Out_2_Float, _Property_8a72d97c1c527c8f8e0cc71214498065_Out_0_Float, _Multiply_22683a720176a788a2ce404dbddd837c_Out_2_Float);
|
|
float _Clamp_5a638fb628222d8a97865d9029554fe2_Out_3_Float;
|
|
Unity_Clamp_float(_Multiply_22683a720176a788a2ce404dbddd837c_Out_2_Float, float(0), float(1), _Clamp_5a638fb628222d8a97865d9029554fe2_Out_3_Float);
|
|
float _Absolute_11985e8863bf2b8ca0bda90bca829348_Out_1_Float;
|
|
Unity_Absolute_float(_Clamp_5a638fb628222d8a97865d9029554fe2_Out_3_Float, _Absolute_11985e8863bf2b8ca0bda90bca829348_Out_1_Float);
|
|
float _Property_aba5acef910eee88b110d565674a9e36_Out_0_Float = _CoverDarknessCurvPower;
|
|
float _Power_da9b537d80a58d85a88e72c2a5d01e7c_Out_2_Float;
|
|
Unity_Power_float(_Absolute_11985e8863bf2b8ca0bda90bca829348_Out_1_Float, _Property_aba5acef910eee88b110d565674a9e36_Out_0_Float, _Power_da9b537d80a58d85a88e72c2a5d01e7c_Out_2_Float);
|
|
float _Clamp_77228e2a7266fa8ca042eae2f0701342_Out_3_Float;
|
|
Unity_Clamp_float(_Power_da9b537d80a58d85a88e72c2a5d01e7c_Out_2_Float, float(0), float(1), _Clamp_77228e2a7266fa8ca042eae2f0701342_Out_3_Float);
|
|
float4 _Multiply_2111c8ad39d5e68caf4893a41a3bad7d_Out_2_Vector4;
|
|
Unity_Multiply_float4_float4(_Multiply_62594f3b30470e86a813e1224c48902e_Out_2_Vector4, (_Clamp_77228e2a7266fa8ca042eae2f0701342_Out_3_Float.xxxx), _Multiply_2111c8ad39d5e68caf4893a41a3bad7d_Out_2_Vector4);
|
|
float4 _Clamp_b489ebb9d7d18282a342100f4d2fa72d_Out_3_Vector4;
|
|
Unity_Clamp_float4(_Multiply_2111c8ad39d5e68caf4893a41a3bad7d_Out_2_Vector4, float4(0, 0, 0, 0), float4(1, 1, 1, 1), _Clamp_b489ebb9d7d18282a342100f4d2fa72d_Out_3_Vector4);
|
|
float _Add_7eea819e47ffe58cbb3ec5877a181444_Out_2_Float;
|
|
Unity_Add_float(_Multiply_5378fc524597f98fb32eeb561a7390e9_Out_2_Float, float(-1), _Add_7eea819e47ffe58cbb3ec5877a181444_Out_2_Float);
|
|
float _Clamp_b5e4f47c0358dc87b5f9fdb3a360e9e9_Out_3_Float;
|
|
Unity_Clamp_float(_Add_7eea819e47ffe58cbb3ec5877a181444_Out_2_Float, float(0), float(1), _Clamp_b5e4f47c0358dc87b5f9fdb3a360e9e9_Out_3_Float);
|
|
float _Property_753051c96a90798fa7d94cff4173d6e6_Out_0_Float = _CoverBrightnessCurvMultply;
|
|
float _Multiply_c650497abc44d98882ce0091d10c4356_Out_2_Float;
|
|
Unity_Multiply_float_float(_Clamp_b5e4f47c0358dc87b5f9fdb3a360e9e9_Out_3_Float, _Property_753051c96a90798fa7d94cff4173d6e6_Out_0_Float, _Multiply_c650497abc44d98882ce0091d10c4356_Out_2_Float);
|
|
float _Clamp_c508dc61e0cb2a829429559098f34f9a_Out_3_Float;
|
|
Unity_Clamp_float(_Multiply_c650497abc44d98882ce0091d10c4356_Out_2_Float, float(0), float(1), _Clamp_c508dc61e0cb2a829429559098f34f9a_Out_3_Float);
|
|
float _Absolute_2cff2da32d80c286acbb99de611f381a_Out_1_Float;
|
|
Unity_Absolute_float(_Clamp_c508dc61e0cb2a829429559098f34f9a_Out_3_Float, _Absolute_2cff2da32d80c286acbb99de611f381a_Out_1_Float);
|
|
float _Property_ce4610db7b6d0c8bb7fb318210d3e83f_Out_0_Float = _CoverBrightnessCurvPower;
|
|
float _Power_c21df4d2e5ea448281f9ac0f4a140b9e_Out_2_Float;
|
|
Unity_Power_float(_Absolute_2cff2da32d80c286acbb99de611f381a_Out_1_Float, _Property_ce4610db7b6d0c8bb7fb318210d3e83f_Out_0_Float, _Power_c21df4d2e5ea448281f9ac0f4a140b9e_Out_2_Float);
|
|
float _Clamp_fd095a9d6c2b9881ae5875ed126bf3fb_Out_3_Float;
|
|
Unity_Clamp_float(_Power_c21df4d2e5ea448281f9ac0f4a140b9e_Out_2_Float, float(0), float(1), _Clamp_fd095a9d6c2b9881ae5875ed126bf3fb_Out_3_Float);
|
|
float4 _Add_4a02758b9a29b18180516bf3c3ede263_Out_2_Vector4;
|
|
Unity_Add_float4(_Clamp_b489ebb9d7d18282a342100f4d2fa72d_Out_3_Vector4, (_Clamp_fd095a9d6c2b9881ae5875ed126bf3fb_Out_3_Float.xxxx), _Add_4a02758b9a29b18180516bf3c3ede263_Out_2_Vector4);
|
|
float4 _Clamp_632e3d64ab55648f927a79cef68f3396_Out_3_Vector4;
|
|
Unity_Clamp_float4(_Add_4a02758b9a29b18180516bf3c3ede263_Out_2_Vector4, float4(0, 0, 0, 0), float4(1, 1, 1, 1), _Clamp_632e3d64ab55648f927a79cef68f3396_Out_3_Vector4);
|
|
float4 _Branch_0c5221a996e29186a372734bf5c30a51_Out_3_Vector4;
|
|
Unity_Branch_float4(_Property_72a5c604805a7b8ebbfd7acee03656aa_Out_0_Boolean, _Clamp_632e3d64ab55648f927a79cef68f3396_Out_3_Vector4, _Multiply_62594f3b30470e86a813e1224c48902e_Out_2_Vector4, _Branch_0c5221a996e29186a372734bf5c30a51_Out_3_Vector4);
|
|
float _Multiply_6a55591ceae0dc86a971a275e316fec6_Out_2_Float;
|
|
Unity_Multiply_float_float(_SampleTexture2D_4bd08411faa60c828847f2247f06a809_R_4_Float, 2, _Multiply_6a55591ceae0dc86a971a275e316fec6_Out_2_Float);
|
|
float _Add_a86411eb4894f78f8f8f3246011b369c_Out_2_Float;
|
|
Unity_Add_float(_Multiply_6a55591ceae0dc86a971a275e316fec6_Out_2_Float, float(-1), _Add_a86411eb4894f78f8f8f3246011b369c_Out_2_Float);
|
|
float _Property_c5a049650239cf80a302d0c0f57c147a_Out_0_Float = _DetailCoverAlbedoScale;
|
|
float _Multiply_1708b01db74fe88a8c36434f8729bf41_Out_2_Float;
|
|
Unity_Multiply_float_float(_Add_a86411eb4894f78f8f8f3246011b369c_Out_2_Float, _Property_c5a049650239cf80a302d0c0f57c147a_Out_0_Float, _Multiply_1708b01db74fe88a8c36434f8729bf41_Out_2_Float);
|
|
float _Saturate_1a4899f79635918485a64fff7cea28ad_Out_1_Float;
|
|
Unity_Saturate_float(_Multiply_1708b01db74fe88a8c36434f8729bf41_Out_2_Float, _Saturate_1a4899f79635918485a64fff7cea28ad_Out_1_Float);
|
|
float _Absolute_d3dce2bb8d9f0285b5183b7f665beed8_Out_1_Float;
|
|
Unity_Absolute_float(_Saturate_1a4899f79635918485a64fff7cea28ad_Out_1_Float, _Absolute_d3dce2bb8d9f0285b5183b7f665beed8_Out_1_Float);
|
|
Bindings_BlendOverlayBaseColor_acdb3dfca72bd6b42bbc35f4613331a2_float _BlendOverlayBaseColor_ec1f397271cc818abdb95188914e6b4d;
|
|
float3 _BlendOverlayBaseColor_ec1f397271cc818abdb95188914e6b4d_OutVector4_1_Vector3;
|
|
SG_BlendOverlayBaseColor_acdb3dfca72bd6b42bbc35f4613331a2_float(_Branch_0c5221a996e29186a372734bf5c30a51_Out_3_Vector4, _Add_a86411eb4894f78f8f8f3246011b369c_Out_2_Float, _Absolute_d3dce2bb8d9f0285b5183b7f665beed8_Out_1_Float, _BlendOverlayBaseColor_ec1f397271cc818abdb95188914e6b4d, _BlendOverlayBaseColor_ec1f397271cc818abdb95188914e6b4d_OutVector4_1_Vector3);
|
|
float _Property_cb0b6597aee47880b32e852aaa0e4a71_Out_0_Boolean = _USEDYNAMICCOVERTSTATICMASKF;
|
|
float _Property_4b3f692214f8d081a043985e1adb12a1_Out_0_Float = _CoverMaskPower;
|
|
float _Multiply_10cc4ecb135f8e8ab88c475223d0eadf_Out_2_Float;
|
|
Unity_Multiply_float_float(_SampleTexture2D_32717b1e99785588830ceee116cbe7fc_A_7_Float, _Property_4b3f692214f8d081a043985e1adb12a1_Out_0_Float, _Multiply_10cc4ecb135f8e8ab88c475223d0eadf_Out_2_Float);
|
|
float _Clamp_07a501c22c6e188199bed73412ac8926_Out_3_Float;
|
|
Unity_Clamp_float(_Multiply_10cc4ecb135f8e8ab88c475223d0eadf_Out_2_Float, float(0), float(1), _Clamp_07a501c22c6e188199bed73412ac8926_Out_3_Float);
|
|
float _Split_2ada595651635e8d97bf4b82f717fcc6_R_1_Float = IN.VertexColor[0];
|
|
float _Split_2ada595651635e8d97bf4b82f717fcc6_G_2_Float = IN.VertexColor[1];
|
|
float _Split_2ada595651635e8d97bf4b82f717fcc6_B_3_Float = IN.VertexColor[2];
|
|
float _Split_2ada595651635e8d97bf4b82f717fcc6_A_4_Float = IN.VertexColor[3];
|
|
float3 _Property_9180f8dd535ba18499edac37aef4d231_Out_0_Vector3 = _CoverDirection;
|
|
float2 _Vector2_7fe7d9ef320da68f958e1ea535e2a6a8_Out_0_Vector2 = float2(_SampleTexture2D_4bd08411faa60c828847f2247f06a809_A_7_Float, _SampleTexture2D_4bd08411faa60c828847f2247f06a809_G_5_Float);
|
|
float2 _Multiply_b8d7cc078ce00d87b9a6b5241b2f1f01_Out_2_Vector2;
|
|
Unity_Multiply_float2_float2(_Vector2_7fe7d9ef320da68f958e1ea535e2a6a8_Out_0_Vector2, float2(2, 2), _Multiply_b8d7cc078ce00d87b9a6b5241b2f1f01_Out_2_Vector2);
|
|
float2 _Add_476ecfb1f47aed8bb8040bb1c44ca372_Out_2_Vector2;
|
|
Unity_Add_float2(_Multiply_b8d7cc078ce00d87b9a6b5241b2f1f01_Out_2_Vector2, float2(-1, -1), _Add_476ecfb1f47aed8bb8040bb1c44ca372_Out_2_Vector2);
|
|
float _Property_b7f40cf2664f5a819eb153af2b2eb69e_Out_0_Float = _DetailNormalScale;
|
|
float2 _Multiply_3b11e3e43551698eb19b6c6b671b6a41_Out_2_Vector2;
|
|
Unity_Multiply_float2_float2(_Add_476ecfb1f47aed8bb8040bb1c44ca372_Out_2_Vector2, (_Property_b7f40cf2664f5a819eb153af2b2eb69e_Out_0_Float.xx), _Multiply_3b11e3e43551698eb19b6c6b671b6a41_Out_2_Vector2);
|
|
float _Split_678aac70d9cb9783a49841710ce82ff8_R_1_Float = _Multiply_3b11e3e43551698eb19b6c6b671b6a41_Out_2_Vector2[0];
|
|
float _Split_678aac70d9cb9783a49841710ce82ff8_G_2_Float = _Multiply_3b11e3e43551698eb19b6c6b671b6a41_Out_2_Vector2[1];
|
|
float _Split_678aac70d9cb9783a49841710ce82ff8_B_3_Float = 0;
|
|
float _Split_678aac70d9cb9783a49841710ce82ff8_A_4_Float = 0;
|
|
float _DotProduct_7fd2e2e8b3e9ed8f9a42a0ba98e14174_Out_2_Float;
|
|
Unity_DotProduct_float2(_Multiply_3b11e3e43551698eb19b6c6b671b6a41_Out_2_Vector2, _Multiply_3b11e3e43551698eb19b6c6b671b6a41_Out_2_Vector2, _DotProduct_7fd2e2e8b3e9ed8f9a42a0ba98e14174_Out_2_Float);
|
|
float _Saturate_47bdfe8ca2c8d989a5ebbb5eb995f023_Out_1_Float;
|
|
Unity_Saturate_float(_DotProduct_7fd2e2e8b3e9ed8f9a42a0ba98e14174_Out_2_Float, _Saturate_47bdfe8ca2c8d989a5ebbb5eb995f023_Out_1_Float);
|
|
float _OneMinus_03777d2879850b838187d9d2605d7341_Out_1_Float;
|
|
Unity_OneMinus_float(_Saturate_47bdfe8ca2c8d989a5ebbb5eb995f023_Out_1_Float, _OneMinus_03777d2879850b838187d9d2605d7341_Out_1_Float);
|
|
float _SquareRoot_ca9c195aef071d8888f26cb73b749f72_Out_1_Float;
|
|
Unity_SquareRoot_float(_OneMinus_03777d2879850b838187d9d2605d7341_Out_1_Float, _SquareRoot_ca9c195aef071d8888f26cb73b749f72_Out_1_Float);
|
|
float3 _Vector3_6999cbd6a5aa908cb7c059b5f2f5b330_Out_0_Vector3 = float3(_Split_678aac70d9cb9783a49841710ce82ff8_R_1_Float, _Split_678aac70d9cb9783a49841710ce82ff8_G_2_Float, _SquareRoot_ca9c195aef071d8888f26cb73b749f72_Out_1_Float);
|
|
UnityTexture2D _Property_d2bb0a0b01239c85bd301cadeec1b3d8_Out_0_Texture2D = UnityBuildTexture2DStructNoScale(_BaseNormalMap);
|
|
Bindings_TriplanarNMn_059da9746584140498cd018db3c76047_float _TriplanarNMn_bf7f7c0e2d896289b86076b79f33d7d4;
|
|
_TriplanarNMn_bf7f7c0e2d896289b86076b79f33d7d4.WorldSpaceNormal = IN.WorldSpaceNormal;
|
|
_TriplanarNMn_bf7f7c0e2d896289b86076b79f33d7d4.WorldSpaceTangent = IN.WorldSpaceTangent;
|
|
_TriplanarNMn_bf7f7c0e2d896289b86076b79f33d7d4.WorldSpaceBiTangent = IN.WorldSpaceBiTangent;
|
|
_TriplanarNMn_bf7f7c0e2d896289b86076b79f33d7d4.AbsoluteWorldSpacePosition = IN.AbsoluteWorldSpacePosition;
|
|
float4 _TriplanarNMn_bf7f7c0e2d896289b86076b79f33d7d4_XYZ_1_Vector4;
|
|
float4 _TriplanarNMn_bf7f7c0e2d896289b86076b79f33d7d4_XZ_2_Vector4;
|
|
float4 _TriplanarNMn_bf7f7c0e2d896289b86076b79f33d7d4_YZ_3_Vector4;
|
|
float4 _TriplanarNMn_bf7f7c0e2d896289b86076b79f33d7d4_XY_4_Vector4;
|
|
SG_TriplanarNMn_059da9746584140498cd018db3c76047_float(_Property_d2bb0a0b01239c85bd301cadeec1b3d8_Out_0_Texture2D, (_Divide_6a90cebe78e620828de587523daaa7e6_Out_2_Vector4).x, _Property_3539de8c698c2981bb3c088d4ec52201_Out_0_Float, UnityBuildSamplerStateStruct(SamplerState_Linear_Repeat_Aniso8), _TriplanarNMn_bf7f7c0e2d896289b86076b79f33d7d4, _TriplanarNMn_bf7f7c0e2d896289b86076b79f33d7d4_XYZ_1_Vector4, _TriplanarNMn_bf7f7c0e2d896289b86076b79f33d7d4_XZ_2_Vector4, _TriplanarNMn_bf7f7c0e2d896289b86076b79f33d7d4_YZ_3_Vector4, _TriplanarNMn_bf7f7c0e2d896289b86076b79f33d7d4_XY_4_Vector4);
|
|
float _Property_d6baf612f8e685848732ca270b39f544_Out_0_Float = _BaseNormalScale;
|
|
float3 _NormalStrength_260139b4d5077d8b9d42de780d173b6c_Out_2_Vector3;
|
|
Unity_NormalStrength_float((_TriplanarNMn_bf7f7c0e2d896289b86076b79f33d7d4_XYZ_1_Vector4.xyz), _Property_d6baf612f8e685848732ca270b39f544_Out_0_Float, _NormalStrength_260139b4d5077d8b9d42de780d173b6c_Out_2_Vector3);
|
|
UnityTexture2D _Property_492c4e7cd40ab980bd38362624511e38_Out_0_Texture2D = UnityBuildTexture2DStructNoScale(_ShapeNormalMap);
|
|
float4 _SampleTexture2D_63aaad04c65f698e8f640de826888075_RGBA_0_Vector4 = SAMPLE_TEXTURE2D(_Property_492c4e7cd40ab980bd38362624511e38_Out_0_Texture2D.tex, _Property_492c4e7cd40ab980bd38362624511e38_Out_0_Texture2D.samplerstate, _Property_492c4e7cd40ab980bd38362624511e38_Out_0_Texture2D.GetTransformedUV(IN.uv0.xy) );
|
|
_SampleTexture2D_63aaad04c65f698e8f640de826888075_RGBA_0_Vector4.rgb = UnpackNormal(_SampleTexture2D_63aaad04c65f698e8f640de826888075_RGBA_0_Vector4);
|
|
float _SampleTexture2D_63aaad04c65f698e8f640de826888075_R_4_Float = _SampleTexture2D_63aaad04c65f698e8f640de826888075_RGBA_0_Vector4.r;
|
|
float _SampleTexture2D_63aaad04c65f698e8f640de826888075_G_5_Float = _SampleTexture2D_63aaad04c65f698e8f640de826888075_RGBA_0_Vector4.g;
|
|
float _SampleTexture2D_63aaad04c65f698e8f640de826888075_B_6_Float = _SampleTexture2D_63aaad04c65f698e8f640de826888075_RGBA_0_Vector4.b;
|
|
float _SampleTexture2D_63aaad04c65f698e8f640de826888075_A_7_Float = _SampleTexture2D_63aaad04c65f698e8f640de826888075_RGBA_0_Vector4.a;
|
|
float _Property_6c35e329e57d0e89950e24817068dbb1_Out_0_Float = _shapeNormalScale;
|
|
float3 _NormalStrength_e181a1bb2f4e35819e0f35e77346e12e_Out_2_Vector3;
|
|
Unity_NormalStrength_float((_SampleTexture2D_63aaad04c65f698e8f640de826888075_RGBA_0_Vector4.xyz), _Property_6c35e329e57d0e89950e24817068dbb1_Out_0_Float, _NormalStrength_e181a1bb2f4e35819e0f35e77346e12e_Out_2_Vector3);
|
|
float3 _NormalBlend_ead295b946c6058190c298c03bf64d0b_Out_2_Vector3;
|
|
Unity_NormalBlend_float(_NormalStrength_260139b4d5077d8b9d42de780d173b6c_Out_2_Vector3, _NormalStrength_e181a1bb2f4e35819e0f35e77346e12e_Out_2_Vector3, _NormalBlend_ead295b946c6058190c298c03bf64d0b_Out_2_Vector3);
|
|
float3 _NormalBlend_4242e1b4a785378aa59dd49e9d993ffc_Out_2_Vector3;
|
|
Unity_NormalBlend_float(_Vector3_6999cbd6a5aa908cb7c059b5f2f5b330_Out_0_Vector3, _NormalBlend_ead295b946c6058190c298c03bf64d0b_Out_2_Vector3, _NormalBlend_4242e1b4a785378aa59dd49e9d993ffc_Out_2_Vector3);
|
|
float _Property_3d4ab6ad1f1f138a96f0463f7be8b6ce_Out_0_Float = _CovershapeNormalScale;
|
|
float3 _NormalStrength_401cd5af500bd68dbc9bca19d548d0db_Out_2_Vector3;
|
|
Unity_NormalStrength_float((_SampleTexture2D_63aaad04c65f698e8f640de826888075_RGBA_0_Vector4.xyz), _Property_3d4ab6ad1f1f138a96f0463f7be8b6ce_Out_0_Float, _NormalStrength_401cd5af500bd68dbc9bca19d548d0db_Out_2_Vector3);
|
|
UnityTexture2D _Property_779695727390348d8b8a7f7ae2245af0_Out_0_Texture2D = UnityBuildTexture2DStructNoScale(_CoverNormalMap);
|
|
Bindings_TriplanarNMn_059da9746584140498cd018db3c76047_float _TriplanarNMn_ba7e211dd8095589a2939b5b239ca8e0;
|
|
_TriplanarNMn_ba7e211dd8095589a2939b5b239ca8e0.WorldSpaceNormal = IN.WorldSpaceNormal;
|
|
_TriplanarNMn_ba7e211dd8095589a2939b5b239ca8e0.WorldSpaceTangent = IN.WorldSpaceTangent;
|
|
_TriplanarNMn_ba7e211dd8095589a2939b5b239ca8e0.WorldSpaceBiTangent = IN.WorldSpaceBiTangent;
|
|
_TriplanarNMn_ba7e211dd8095589a2939b5b239ca8e0.AbsoluteWorldSpacePosition = IN.AbsoluteWorldSpacePosition;
|
|
float4 _TriplanarNMn_ba7e211dd8095589a2939b5b239ca8e0_XYZ_1_Vector4;
|
|
float4 _TriplanarNMn_ba7e211dd8095589a2939b5b239ca8e0_XZ_2_Vector4;
|
|
float4 _TriplanarNMn_ba7e211dd8095589a2939b5b239ca8e0_YZ_3_Vector4;
|
|
float4 _TriplanarNMn_ba7e211dd8095589a2939b5b239ca8e0_XY_4_Vector4;
|
|
SG_TriplanarNMn_059da9746584140498cd018db3c76047_float(_Property_779695727390348d8b8a7f7ae2245af0_Out_0_Texture2D, (_Divide_1fe314f1ca9dd78fbf366bbeb40e4ccf_Out_2_Vector4).x, _Property_ee792eccbb538a878b19be5db264531e_Out_0_Float, UnityBuildSamplerStateStruct(SamplerState_Linear_Repeat_Aniso8), _TriplanarNMn_ba7e211dd8095589a2939b5b239ca8e0, _TriplanarNMn_ba7e211dd8095589a2939b5b239ca8e0_XYZ_1_Vector4, _TriplanarNMn_ba7e211dd8095589a2939b5b239ca8e0_XZ_2_Vector4, _TriplanarNMn_ba7e211dd8095589a2939b5b239ca8e0_YZ_3_Vector4, _TriplanarNMn_ba7e211dd8095589a2939b5b239ca8e0_XY_4_Vector4);
|
|
float _Property_5aba050988182f8aad3ec6b2c7e57899_Out_0_Float = _CoverNormalBlendHardness;
|
|
float3 _NormalStrength_dac4b0abfa8a1f82b7103b18f6e6e1b7_Out_2_Vector3;
|
|
Unity_NormalStrength_float((_TriplanarNMn_ba7e211dd8095589a2939b5b239ca8e0_XYZ_1_Vector4.xyz), _Property_5aba050988182f8aad3ec6b2c7e57899_Out_0_Float, _NormalStrength_dac4b0abfa8a1f82b7103b18f6e6e1b7_Out_2_Vector3);
|
|
float3 _NormalBlend_4058aded292b7389ade16c695a6cae6c_Out_2_Vector3;
|
|
Unity_NormalBlend_float(_NormalStrength_401cd5af500bd68dbc9bca19d548d0db_Out_2_Vector3, _NormalStrength_dac4b0abfa8a1f82b7103b18f6e6e1b7_Out_2_Vector3, _NormalBlend_4058aded292b7389ade16c695a6cae6c_Out_2_Vector3);
|
|
float3 _Multiply_0e22f9c6ff55a188b2533f1889a53038_Out_2_Vector3;
|
|
Unity_Multiply_float3_float3(_Property_9180f8dd535ba18499edac37aef4d231_Out_0_Vector3, IN.WorldSpaceNormal, _Multiply_0e22f9c6ff55a188b2533f1889a53038_Out_2_Vector3);
|
|
float _Split_89708601b575b58c852cd55e4fb248d1_R_1_Float = _Multiply_0e22f9c6ff55a188b2533f1889a53038_Out_2_Vector3[0];
|
|
float _Split_89708601b575b58c852cd55e4fb248d1_G_2_Float = _Multiply_0e22f9c6ff55a188b2533f1889a53038_Out_2_Vector3[1];
|
|
float _Split_89708601b575b58c852cd55e4fb248d1_B_3_Float = _Multiply_0e22f9c6ff55a188b2533f1889a53038_Out_2_Vector3[2];
|
|
float _Split_89708601b575b58c852cd55e4fb248d1_A_4_Float = 0;
|
|
float _Add_bfe29b97a9ce3b80aa4cd689be8c4a97_Out_2_Float;
|
|
Unity_Add_float(_Split_89708601b575b58c852cd55e4fb248d1_R_1_Float, _Split_89708601b575b58c852cd55e4fb248d1_G_2_Float, _Add_bfe29b97a9ce3b80aa4cd689be8c4a97_Out_2_Float);
|
|
float _Add_f3152b42a227088aa1439fc1fe8451cc_Out_2_Float;
|
|
Unity_Add_float(_Add_bfe29b97a9ce3b80aa4cd689be8c4a97_Out_2_Float, _Split_89708601b575b58c852cd55e4fb248d1_B_3_Float, _Add_f3152b42a227088aa1439fc1fe8451cc_Out_2_Float);
|
|
float _Property_deabceefa3e3438a8ad71fa67fc5b070_Out_0_Float = _Cover_Amount;
|
|
float _Property_2fba2d762d74b8828ff566c10bc48e86_Out_0_Float = _Cover_Amount_Grow_Speed;
|
|
float _Subtract_1f990262a41ce88f96a47df66dcb4971_Out_2_Float;
|
|
Unity_Subtract_float(float(4), _Property_2fba2d762d74b8828ff566c10bc48e86_Out_0_Float, _Subtract_1f990262a41ce88f96a47df66dcb4971_Out_2_Float);
|
|
float _Divide_a89e05be4802ac80886ad6bdeadc4949_Out_2_Float;
|
|
Unity_Divide_float(_Property_deabceefa3e3438a8ad71fa67fc5b070_Out_0_Float, _Subtract_1f990262a41ce88f96a47df66dcb4971_Out_2_Float, _Divide_a89e05be4802ac80886ad6bdeadc4949_Out_2_Float);
|
|
float _Absolute_2b58f48ab94a3087a726a2b03c51e2c6_Out_1_Float;
|
|
Unity_Absolute_float(_Divide_a89e05be4802ac80886ad6bdeadc4949_Out_2_Float, _Absolute_2b58f48ab94a3087a726a2b03c51e2c6_Out_1_Float);
|
|
float _Power_6695d49b8b82468ea686b66e6749260b_Out_2_Float;
|
|
Unity_Power_float(_Absolute_2b58f48ab94a3087a726a2b03c51e2c6_Out_1_Float, _Subtract_1f990262a41ce88f96a47df66dcb4971_Out_2_Float, _Power_6695d49b8b82468ea686b66e6749260b_Out_2_Float);
|
|
float _Clamp_94f0310fee13798bad4e26e2381a94d4_Out_3_Float;
|
|
Unity_Clamp_float(_Power_6695d49b8b82468ea686b66e6749260b_Out_2_Float, float(0), float(2), _Clamp_94f0310fee13798bad4e26e2381a94d4_Out_3_Float);
|
|
float _Multiply_999692515a117385ade114d924fa589a_Out_2_Float;
|
|
Unity_Multiply_float_float(_Add_f3152b42a227088aa1439fc1fe8451cc_Out_2_Float, _Clamp_94f0310fee13798bad4e26e2381a94d4_Out_3_Float, _Multiply_999692515a117385ade114d924fa589a_Out_2_Float);
|
|
float _Saturate_f811eeeeb3229d83917aa8be2c36831e_Out_1_Float;
|
|
Unity_Saturate_float(_Multiply_999692515a117385ade114d924fa589a_Out_2_Float, _Saturate_f811eeeeb3229d83917aa8be2c36831e_Out_1_Float);
|
|
float _Clamp_4c470807610adb8c8488f125c0af7bb5_Out_3_Float;
|
|
Unity_Clamp_float(_Add_f3152b42a227088aa1439fc1fe8451cc_Out_2_Float, float(0), float(0.9999), _Clamp_4c470807610adb8c8488f125c0af7bb5_Out_3_Float);
|
|
float _Property_765e3d021aec6d8f9f8b3174d5a06980_Out_0_Float = _Cover_Max_Angle;
|
|
float _Divide_9d9fc267a9ebcf84b378fdd4c66ff34d_Out_2_Float;
|
|
Unity_Divide_float(_Property_765e3d021aec6d8f9f8b3174d5a06980_Out_0_Float, float(45), _Divide_9d9fc267a9ebcf84b378fdd4c66ff34d_Out_2_Float);
|
|
float _OneMinus_f074fba0be46e688aa75f5377832251a_Out_1_Float;
|
|
Unity_OneMinus_float(_Divide_9d9fc267a9ebcf84b378fdd4c66ff34d_Out_2_Float, _OneMinus_f074fba0be46e688aa75f5377832251a_Out_1_Float);
|
|
float _Subtract_0b0cd6145e351c87a68366348828154d_Out_2_Float;
|
|
Unity_Subtract_float(_Clamp_4c470807610adb8c8488f125c0af7bb5_Out_3_Float, _OneMinus_f074fba0be46e688aa75f5377832251a_Out_1_Float, _Subtract_0b0cd6145e351c87a68366348828154d_Out_2_Float);
|
|
float _Clamp_30607c0c4e04e5879d4061a1f7688421_Out_3_Float;
|
|
Unity_Clamp_float(_Subtract_0b0cd6145e351c87a68366348828154d_Out_2_Float, float(0), float(2), _Clamp_30607c0c4e04e5879d4061a1f7688421_Out_3_Float);
|
|
float _Divide_cfe09f3bd2005485a3c2229367309962_Out_2_Float;
|
|
Unity_Divide_float(float(1), _Divide_9d9fc267a9ebcf84b378fdd4c66ff34d_Out_2_Float, _Divide_cfe09f3bd2005485a3c2229367309962_Out_2_Float);
|
|
float _Multiply_022be2eb9027988b9d5d4c1392749347_Out_2_Float;
|
|
Unity_Multiply_float_float(_Clamp_30607c0c4e04e5879d4061a1f7688421_Out_3_Float, _Divide_cfe09f3bd2005485a3c2229367309962_Out_2_Float, _Multiply_022be2eb9027988b9d5d4c1392749347_Out_2_Float);
|
|
float _Absolute_2fed84623df90f8ba200de68955721fd_Out_1_Float;
|
|
Unity_Absolute_float(_Multiply_022be2eb9027988b9d5d4c1392749347_Out_2_Float, _Absolute_2fed84623df90f8ba200de68955721fd_Out_1_Float);
|
|
float _Property_b79c921e30793a8e84330b3341539232_Out_0_Float = _CoverHardness;
|
|
float _Power_b9ddee06dfd0b880880990743bc10612_Out_2_Float;
|
|
Unity_Power_float(_Absolute_2fed84623df90f8ba200de68955721fd_Out_1_Float, _Property_b79c921e30793a8e84330b3341539232_Out_0_Float, _Power_b9ddee06dfd0b880880990743bc10612_Out_2_Float);
|
|
float _Property_c82936191f294c89b76f2d1809168f87_Out_0_Float = _Cover_Min_Height;
|
|
float _OneMinus_f0918ccb4f747b8e83e39d82dc3b5ca9_Out_1_Float;
|
|
Unity_OneMinus_float(_Property_c82936191f294c89b76f2d1809168f87_Out_0_Float, _OneMinus_f0918ccb4f747b8e83e39d82dc3b5ca9_Out_1_Float);
|
|
float _Split_0e80ce6f80cff18f87a043d1e3eecd08_R_1_Float = IN.AbsoluteWorldSpacePosition[0];
|
|
float _Split_0e80ce6f80cff18f87a043d1e3eecd08_G_2_Float = IN.AbsoluteWorldSpacePosition[1];
|
|
float _Split_0e80ce6f80cff18f87a043d1e3eecd08_B_3_Float = IN.AbsoluteWorldSpacePosition[2];
|
|
float _Split_0e80ce6f80cff18f87a043d1e3eecd08_A_4_Float = 0;
|
|
float _Add_60b3bb4cdad6e88b8c097c5b08daa7d0_Out_2_Float;
|
|
Unity_Add_float(_OneMinus_f0918ccb4f747b8e83e39d82dc3b5ca9_Out_1_Float, _Split_0e80ce6f80cff18f87a043d1e3eecd08_G_2_Float, _Add_60b3bb4cdad6e88b8c097c5b08daa7d0_Out_2_Float);
|
|
float _Add_1898d6f46901df809c68b5241b2e9c37_Out_2_Float;
|
|
Unity_Add_float(_Add_60b3bb4cdad6e88b8c097c5b08daa7d0_Out_2_Float, float(1), _Add_1898d6f46901df809c68b5241b2e9c37_Out_2_Float);
|
|
float _Clamp_25d6140fa3ff3a8f956f99005adace2e_Out_3_Float;
|
|
Unity_Clamp_float(_Add_1898d6f46901df809c68b5241b2e9c37_Out_2_Float, float(0), float(1), _Clamp_25d6140fa3ff3a8f956f99005adace2e_Out_3_Float);
|
|
float _Property_6094a52a4f01fd8da5ea847b69b6941c_Out_0_Float = _Cover_Min_Height_Blending;
|
|
float _Add_dc69668fc7f1a586a754713499f71d99_Out_2_Float;
|
|
Unity_Add_float(_Add_60b3bb4cdad6e88b8c097c5b08daa7d0_Out_2_Float, _Property_6094a52a4f01fd8da5ea847b69b6941c_Out_0_Float, _Add_dc69668fc7f1a586a754713499f71d99_Out_2_Float);
|
|
float _Divide_63e32406c8773d83bbf2e244faf8328f_Out_2_Float;
|
|
Unity_Divide_float(_Add_dc69668fc7f1a586a754713499f71d99_Out_2_Float, _Add_60b3bb4cdad6e88b8c097c5b08daa7d0_Out_2_Float, _Divide_63e32406c8773d83bbf2e244faf8328f_Out_2_Float);
|
|
float _OneMinus_ec22d21ddfa84288b6f750e9fdb107b9_Out_1_Float;
|
|
Unity_OneMinus_float(_Divide_63e32406c8773d83bbf2e244faf8328f_Out_2_Float, _OneMinus_ec22d21ddfa84288b6f750e9fdb107b9_Out_1_Float);
|
|
float _Add_a1206af8cbfbbe8081046db1247aba04_Out_2_Float;
|
|
Unity_Add_float(_OneMinus_ec22d21ddfa84288b6f750e9fdb107b9_Out_1_Float, float(-0.5), _Add_a1206af8cbfbbe8081046db1247aba04_Out_2_Float);
|
|
float _Clamp_640b5884b29f188987c157ad5e6e6959_Out_3_Float;
|
|
Unity_Clamp_float(_Add_a1206af8cbfbbe8081046db1247aba04_Out_2_Float, float(0), float(1), _Clamp_640b5884b29f188987c157ad5e6e6959_Out_3_Float);
|
|
float _Add_cfdb6daf617665838bb05910fa9505df_Out_2_Float;
|
|
Unity_Add_float(_Clamp_25d6140fa3ff3a8f956f99005adace2e_Out_3_Float, _Clamp_640b5884b29f188987c157ad5e6e6959_Out_3_Float, _Add_cfdb6daf617665838bb05910fa9505df_Out_2_Float);
|
|
float _Clamp_552ef7e5cf91408a982297885971db7e_Out_3_Float;
|
|
Unity_Clamp_float(_Add_cfdb6daf617665838bb05910fa9505df_Out_2_Float, float(0), float(1), _Clamp_552ef7e5cf91408a982297885971db7e_Out_3_Float);
|
|
float _Multiply_8f8db9c494f4fd869809fc45531df628_Out_2_Float;
|
|
Unity_Multiply_float_float(_Power_b9ddee06dfd0b880880990743bc10612_Out_2_Float, _Clamp_552ef7e5cf91408a982297885971db7e_Out_3_Float, _Multiply_8f8db9c494f4fd869809fc45531df628_Out_2_Float);
|
|
float _Multiply_60075aa07d29d285b3c1ee531e5b5cb3_Out_2_Float;
|
|
Unity_Multiply_float_float(_Saturate_f811eeeeb3229d83917aa8be2c36831e_Out_1_Float, _Multiply_8f8db9c494f4fd869809fc45531df628_Out_2_Float, _Multiply_60075aa07d29d285b3c1ee531e5b5cb3_Out_2_Float);
|
|
float3 _Lerp_453c8bc667315a8fa37a93affb877753_Out_3_Vector3;
|
|
Unity_Lerp_float3(_NormalBlend_4242e1b4a785378aa59dd49e9d993ffc_Out_2_Vector3, _NormalBlend_4058aded292b7389ade16c695a6cae6c_Out_2_Vector3, (_Multiply_60075aa07d29d285b3c1ee531e5b5cb3_Out_2_Float.xxx), _Lerp_453c8bc667315a8fa37a93affb877753_Out_3_Vector3);
|
|
float3 _Transform_a87113b0be9dfa8eaf6932ed645aa845_Out_1_Vector3;
|
|
{
|
|
float3x3 tangentTransform = float3x3(IN.WorldSpaceTangent, IN.WorldSpaceBiTangent, IN.WorldSpaceNormal);
|
|
_Transform_a87113b0be9dfa8eaf6932ed645aa845_Out_1_Vector3 = TransformTangentToWorldDir(_Lerp_453c8bc667315a8fa37a93affb877753_Out_3_Vector3.xyz, tangentTransform, false).xyz;
|
|
}
|
|
float3 _Multiply_f6e009bd5c0fd18c99ac72f233476fe5_Out_2_Vector3;
|
|
Unity_Multiply_float3_float3(_Property_9180f8dd535ba18499edac37aef4d231_Out_0_Vector3, _Transform_a87113b0be9dfa8eaf6932ed645aa845_Out_1_Vector3, _Multiply_f6e009bd5c0fd18c99ac72f233476fe5_Out_2_Vector3);
|
|
float _Split_96f0a5b75c0e0b889dbbccd04bc2aaaa_R_1_Float = _Multiply_f6e009bd5c0fd18c99ac72f233476fe5_Out_2_Vector3[0];
|
|
float _Split_96f0a5b75c0e0b889dbbccd04bc2aaaa_G_2_Float = _Multiply_f6e009bd5c0fd18c99ac72f233476fe5_Out_2_Vector3[1];
|
|
float _Split_96f0a5b75c0e0b889dbbccd04bc2aaaa_B_3_Float = _Multiply_f6e009bd5c0fd18c99ac72f233476fe5_Out_2_Vector3[2];
|
|
float _Split_96f0a5b75c0e0b889dbbccd04bc2aaaa_A_4_Float = 0;
|
|
float _Add_07028d5174d9f88594da40d46502bc13_Out_2_Float;
|
|
Unity_Add_float(_Split_96f0a5b75c0e0b889dbbccd04bc2aaaa_R_1_Float, _Split_96f0a5b75c0e0b889dbbccd04bc2aaaa_G_2_Float, _Add_07028d5174d9f88594da40d46502bc13_Out_2_Float);
|
|
float _Add_93af6c0f8ee9a3898ca51358a213b69f_Out_2_Float;
|
|
Unity_Add_float(_Add_07028d5174d9f88594da40d46502bc13_Out_2_Float, _Split_96f0a5b75c0e0b889dbbccd04bc2aaaa_B_3_Float, _Add_93af6c0f8ee9a3898ca51358a213b69f_Out_2_Float);
|
|
float _Multiply_77421b936cb9d68299ef6791b83fa867_Out_2_Float;
|
|
Unity_Multiply_float_float(_Add_93af6c0f8ee9a3898ca51358a213b69f_Out_2_Float, _Clamp_94f0310fee13798bad4e26e2381a94d4_Out_3_Float, _Multiply_77421b936cb9d68299ef6791b83fa867_Out_2_Float);
|
|
float _Multiply_ac6769fbe7188685a7537e5ac2c6bfa9_Out_2_Float;
|
|
Unity_Multiply_float_float(_Clamp_94f0310fee13798bad4e26e2381a94d4_Out_3_Float, _Property_b79c921e30793a8e84330b3341539232_Out_0_Float, _Multiply_ac6769fbe7188685a7537e5ac2c6bfa9_Out_2_Float);
|
|
float _Multiply_37a341e0d9783683aa8d5b7001acced1_Out_2_Float;
|
|
Unity_Multiply_float_float(_Multiply_ac6769fbe7188685a7537e5ac2c6bfa9_Out_2_Float, _Multiply_8f8db9c494f4fd869809fc45531df628_Out_2_Float, _Multiply_37a341e0d9783683aa8d5b7001acced1_Out_2_Float);
|
|
float _Multiply_02fa8aa66970b281b4a325dc68f407b9_Out_2_Float;
|
|
Unity_Multiply_float_float(_Multiply_77421b936cb9d68299ef6791b83fa867_Out_2_Float, _Multiply_37a341e0d9783683aa8d5b7001acced1_Out_2_Float, _Multiply_02fa8aa66970b281b4a325dc68f407b9_Out_2_Float);
|
|
UnityTexture2D _Property_fd2df7ee33755280948b4c47585d4323_Out_0_Texture2D = UnityBuildTexture2DStructNoScale(_CoverMaskMap);
|
|
Bindings_TriplanarNM_bc609ed95f52591469ab35dbfe0efcea_float _TriplanarNM_e307cfdc6531d2838aa3dfa51fc3913f;
|
|
_TriplanarNM_e307cfdc6531d2838aa3dfa51fc3913f.WorldSpaceNormal = IN.WorldSpaceNormal;
|
|
_TriplanarNM_e307cfdc6531d2838aa3dfa51fc3913f.AbsoluteWorldSpacePosition = IN.AbsoluteWorldSpacePosition;
|
|
float4 _TriplanarNM_e307cfdc6531d2838aa3dfa51fc3913f_XYZ_1_Vector4;
|
|
float4 _TriplanarNM_e307cfdc6531d2838aa3dfa51fc3913f_XZ_2_Vector4;
|
|
float4 _TriplanarNM_e307cfdc6531d2838aa3dfa51fc3913f_YZ_3_Vector4;
|
|
float4 _TriplanarNM_e307cfdc6531d2838aa3dfa51fc3913f_XY_4_Vector4;
|
|
SG_TriplanarNM_bc609ed95f52591469ab35dbfe0efcea_float(_Property_fd2df7ee33755280948b4c47585d4323_Out_0_Texture2D, (_Divide_1fe314f1ca9dd78fbf366bbeb40e4ccf_Out_2_Vector4).x, _Property_ee792eccbb538a878b19be5db264531e_Out_0_Float, UnityBuildSamplerStateStruct(SamplerState_Linear_Repeat_Aniso8), _TriplanarNM_e307cfdc6531d2838aa3dfa51fc3913f, _TriplanarNM_e307cfdc6531d2838aa3dfa51fc3913f_XYZ_1_Vector4, _TriplanarNM_e307cfdc6531d2838aa3dfa51fc3913f_XZ_2_Vector4, _TriplanarNM_e307cfdc6531d2838aa3dfa51fc3913f_YZ_3_Vector4, _TriplanarNM_e307cfdc6531d2838aa3dfa51fc3913f_XY_4_Vector4);
|
|
float _Split_fe834aed1172f284a73d2d6810bdb696_R_1_Float = _TriplanarNM_e307cfdc6531d2838aa3dfa51fc3913f_XYZ_1_Vector4[0];
|
|
float _Split_fe834aed1172f284a73d2d6810bdb696_G_2_Float = _TriplanarNM_e307cfdc6531d2838aa3dfa51fc3913f_XYZ_1_Vector4[1];
|
|
float _Split_fe834aed1172f284a73d2d6810bdb696_B_3_Float = _TriplanarNM_e307cfdc6531d2838aa3dfa51fc3913f_XYZ_1_Vector4[2];
|
|
float _Split_fe834aed1172f284a73d2d6810bdb696_A_4_Float = _TriplanarNM_e307cfdc6531d2838aa3dfa51fc3913f_XYZ_1_Vector4[3];
|
|
float _Property_b5f7a30c2ea202858ea263fd2a5a46c6_Out_0_Float = _CoverHeightMapMin;
|
|
float _Property_f86678f1d28c0483ba1ddccf49ee52f7_Out_0_Float = _CoverHeightMapMax;
|
|
float2 _Vector2_b5c01a0d88900d87a8a819b340151fb6_Out_0_Vector2 = float2(_Property_b5f7a30c2ea202858ea263fd2a5a46c6_Out_0_Float, _Property_f86678f1d28c0483ba1ddccf49ee52f7_Out_0_Float);
|
|
float _Property_82b4f7f3bf3b4382bd69876479a9e350_Out_0_Float = _CoverHeightMapOffset;
|
|
float2 _Add_6020f54fd1e6798e8e76bfdcad62759a_Out_2_Vector2;
|
|
Unity_Add_float2(_Vector2_b5c01a0d88900d87a8a819b340151fb6_Out_0_Vector2, (_Property_82b4f7f3bf3b4382bd69876479a9e350_Out_0_Float.xx), _Add_6020f54fd1e6798e8e76bfdcad62759a_Out_2_Vector2);
|
|
float _Remap_65ceff40294d1e8aae6051445b9fdbc8_Out_3_Float;
|
|
Unity_Remap_float(_Split_fe834aed1172f284a73d2d6810bdb696_B_3_Float, float2 (0, 1), _Add_6020f54fd1e6798e8e76bfdcad62759a_Out_2_Vector2, _Remap_65ceff40294d1e8aae6051445b9fdbc8_Out_3_Float);
|
|
float _Multiply_bb0edd30580dba8b89213d9c5b1ef857_Out_2_Float;
|
|
Unity_Multiply_float_float(_Multiply_02fa8aa66970b281b4a325dc68f407b9_Out_2_Float, _Remap_65ceff40294d1e8aae6051445b9fdbc8_Out_3_Float, _Multiply_bb0edd30580dba8b89213d9c5b1ef857_Out_2_Float);
|
|
float _Multiply_484dd7b77d58aa88bf99c82cfe77c774_Out_2_Float;
|
|
Unity_Multiply_float_float(_Split_2ada595651635e8d97bf4b82f717fcc6_G_2_Float, _Multiply_bb0edd30580dba8b89213d9c5b1ef857_Out_2_Float, _Multiply_484dd7b77d58aa88bf99c82cfe77c774_Out_2_Float);
|
|
float _Saturate_d39fa9bab8cc8a8fa35db28d4dbc74ab_Out_1_Float;
|
|
Unity_Saturate_float(_Multiply_484dd7b77d58aa88bf99c82cfe77c774_Out_2_Float, _Saturate_d39fa9bab8cc8a8fa35db28d4dbc74ab_Out_1_Float);
|
|
float _Multiply_6957741a4923cc8db84ac72df2e194a8_Out_2_Float;
|
|
Unity_Multiply_float_float(_Clamp_07a501c22c6e188199bed73412ac8926_Out_3_Float, _Saturate_d39fa9bab8cc8a8fa35db28d4dbc74ab_Out_1_Float, _Multiply_6957741a4923cc8db84ac72df2e194a8_Out_2_Float);
|
|
float _Branch_3ccf365d359214809d30b6430d863e3f_Out_3_Float;
|
|
Unity_Branch_float(_Property_cb0b6597aee47880b32e852aaa0e4a71_Out_0_Boolean, _Multiply_6957741a4923cc8db84ac72df2e194a8_Out_2_Float, _Clamp_07a501c22c6e188199bed73412ac8926_Out_3_Float, _Branch_3ccf365d359214809d30b6430d863e3f_Out_3_Float);
|
|
float3 _Lerp_ee1b6587de2afe82942e8476d303d598_Out_3_Vector3;
|
|
Unity_Lerp_float3(_BlendOverlayBaseColor_369c0b6a02e62b809dc5c6ac1efddde2_OutVector4_1_Vector3, _BlendOverlayBaseColor_ec1f397271cc818abdb95188914e6b4d_OutVector4_1_Vector3, (_Branch_3ccf365d359214809d30b6430d863e3f_Out_3_Float.xxx), _Lerp_ee1b6587de2afe82942e8476d303d598_Out_3_Vector3);
|
|
float4 _Property_c500db71e51fef8daff29f346c122e57_Out_0_Vector4 = _WetColor;
|
|
float3 _Multiply_89461014b078f787a0724725c54fb934_Out_2_Vector3;
|
|
Unity_Multiply_float3_float3((_Property_c500db71e51fef8daff29f346c122e57_Out_0_Vector4.xyz), _Lerp_ee1b6587de2afe82942e8476d303d598_Out_3_Vector3, _Multiply_89461014b078f787a0724725c54fb934_Out_2_Vector3);
|
|
float _OneMinus_e16dfb812ec64b8891c541171687142f_Out_1_Float;
|
|
Unity_OneMinus_float(_Split_2ada595651635e8d97bf4b82f717fcc6_R_1_Float, _OneMinus_e16dfb812ec64b8891c541171687142f_Out_1_Float);
|
|
float3 _Lerp_43bc7a9493df5a829abf080ee4ad3298_Out_3_Vector3;
|
|
Unity_Lerp_float3(_Lerp_ee1b6587de2afe82942e8476d303d598_Out_3_Vector3, _Multiply_89461014b078f787a0724725c54fb934_Out_2_Vector3, (_OneMinus_e16dfb812ec64b8891c541171687142f_Out_1_Float.xxx), _Lerp_43bc7a9493df5a829abf080ee4ad3298_Out_3_Vector3);
|
|
UnityTexture2D _Property_8e909eb873a4cd8e9af98a90a84fdde8_Out_0_Texture2D = UnityBuildTexture2DStructNoScale(_BaseMaskMap);
|
|
Bindings_TriplanarNM_bc609ed95f52591469ab35dbfe0efcea_float _TriplanarNM_52e6c67b7de4708f80a463a880607c97;
|
|
_TriplanarNM_52e6c67b7de4708f80a463a880607c97.WorldSpaceNormal = IN.WorldSpaceNormal;
|
|
_TriplanarNM_52e6c67b7de4708f80a463a880607c97.AbsoluteWorldSpacePosition = IN.AbsoluteWorldSpacePosition;
|
|
float4 _TriplanarNM_52e6c67b7de4708f80a463a880607c97_XYZ_1_Vector4;
|
|
float4 _TriplanarNM_52e6c67b7de4708f80a463a880607c97_XZ_2_Vector4;
|
|
float4 _TriplanarNM_52e6c67b7de4708f80a463a880607c97_YZ_3_Vector4;
|
|
float4 _TriplanarNM_52e6c67b7de4708f80a463a880607c97_XY_4_Vector4;
|
|
SG_TriplanarNM_bc609ed95f52591469ab35dbfe0efcea_float(_Property_8e909eb873a4cd8e9af98a90a84fdde8_Out_0_Texture2D, (_Divide_6a90cebe78e620828de587523daaa7e6_Out_2_Vector4).x, _Property_3539de8c698c2981bb3c088d4ec52201_Out_0_Float, UnityBuildSamplerStateStruct(SamplerState_Linear_Repeat_Aniso8), _TriplanarNM_52e6c67b7de4708f80a463a880607c97, _TriplanarNM_52e6c67b7de4708f80a463a880607c97_XYZ_1_Vector4, _TriplanarNM_52e6c67b7de4708f80a463a880607c97_XZ_2_Vector4, _TriplanarNM_52e6c67b7de4708f80a463a880607c97_YZ_3_Vector4, _TriplanarNM_52e6c67b7de4708f80a463a880607c97_XY_4_Vector4);
|
|
float _Split_79d9d761d63eaa8c97fb3cb7fae0c380_R_1_Float = _TriplanarNM_52e6c67b7de4708f80a463a880607c97_XYZ_1_Vector4[0];
|
|
float _Split_79d9d761d63eaa8c97fb3cb7fae0c380_G_2_Float = _TriplanarNM_52e6c67b7de4708f80a463a880607c97_XYZ_1_Vector4[1];
|
|
float _Split_79d9d761d63eaa8c97fb3cb7fae0c380_B_3_Float = _TriplanarNM_52e6c67b7de4708f80a463a880607c97_XYZ_1_Vector4[2];
|
|
float _Split_79d9d761d63eaa8c97fb3cb7fae0c380_A_4_Float = _TriplanarNM_52e6c67b7de4708f80a463a880607c97_XYZ_1_Vector4[3];
|
|
float _Property_b97916566d1fc587b95e8ec7fe8bd775_Out_0_Float = _BaseMetallic;
|
|
float _Multiply_d0c8d83444dbe38588583551936c7394_Out_2_Float;
|
|
Unity_Multiply_float_float(_Split_79d9d761d63eaa8c97fb3cb7fae0c380_R_1_Float, _Property_b97916566d1fc587b95e8ec7fe8bd775_Out_0_Float, _Multiply_d0c8d83444dbe38588583551936c7394_Out_2_Float);
|
|
float _Property_b187bbc548f3378caa8c964ca81707ca_Out_0_Float = _BaseAORemapMin;
|
|
float _Property_f06b327a4a8a7881a968eb399edf1d5c_Out_0_Float = _BaseAORemapMax;
|
|
float2 _Vector2_e267d722f88ada8da2d7edf8f7c0261d_Out_0_Vector2 = float2(_Property_b187bbc548f3378caa8c964ca81707ca_Out_0_Float, _Property_f06b327a4a8a7881a968eb399edf1d5c_Out_0_Float);
|
|
float _Remap_ad3c26564c54aa8cbb2f81aa114b3b78_Out_3_Float;
|
|
Unity_Remap_float(_Split_79d9d761d63eaa8c97fb3cb7fae0c380_G_2_Float, float2 (0, 1), _Vector2_e267d722f88ada8da2d7edf8f7c0261d_Out_0_Vector2, _Remap_ad3c26564c54aa8cbb2f81aa114b3b78_Out_3_Float);
|
|
float _Property_9a46e81c228dd0858cfdfc248fcb5efd_Out_0_Float = _BaseSmoothnessRemapMin;
|
|
float _Property_4bb3b70a3720ae8ea49e0f195b665d1f_Out_0_Float = _BaseSmoothnessRemapMax;
|
|
float2 _Vector2_6cef82af5d99208da4f2447a8ae60b4b_Out_0_Vector2 = float2(_Property_9a46e81c228dd0858cfdfc248fcb5efd_Out_0_Float, _Property_4bb3b70a3720ae8ea49e0f195b665d1f_Out_0_Float);
|
|
float _Remap_e30adbbf5d116285964ef079df15b895_Out_3_Float;
|
|
Unity_Remap_float(_Split_79d9d761d63eaa8c97fb3cb7fae0c380_A_4_Float, float2 (0, 1), _Vector2_6cef82af5d99208da4f2447a8ae60b4b_Out_0_Vector2, _Remap_e30adbbf5d116285964ef079df15b895_Out_3_Float);
|
|
float _Multiply_794172f65d2acd8981bc0e2ecc71376e_Out_2_Float;
|
|
Unity_Multiply_float_float(_SampleTexture2D_4bd08411faa60c828847f2247f06a809_B_6_Float, 2, _Multiply_794172f65d2acd8981bc0e2ecc71376e_Out_2_Float);
|
|
float _Add_dedefe53d91ea08c81d7a6d9071b0263_Out_2_Float;
|
|
Unity_Add_float(_Multiply_794172f65d2acd8981bc0e2ecc71376e_Out_2_Float, float(-1), _Add_dedefe53d91ea08c81d7a6d9071b0263_Out_2_Float);
|
|
float _Property_039bed9aac95ec8fa510fea3c4904280_Out_0_Float = _DetailSmoothnessScale;
|
|
float _Multiply_eb0a55c9be8cee86b9847c24f0e5be60_Out_2_Float;
|
|
Unity_Multiply_float_float(_Add_dedefe53d91ea08c81d7a6d9071b0263_Out_2_Float, _Property_039bed9aac95ec8fa510fea3c4904280_Out_0_Float, _Multiply_eb0a55c9be8cee86b9847c24f0e5be60_Out_2_Float);
|
|
float _Saturate_ca849f42c1cc238cb8fb1eb04fbfb9dd_Out_1_Float;
|
|
Unity_Saturate_float(_Multiply_eb0a55c9be8cee86b9847c24f0e5be60_Out_2_Float, _Saturate_ca849f42c1cc238cb8fb1eb04fbfb9dd_Out_1_Float);
|
|
float _Absolute_bc7994d4f833e382b37b5718ee583259_Out_1_Float;
|
|
Unity_Absolute_float(_Saturate_ca849f42c1cc238cb8fb1eb04fbfb9dd_Out_1_Float, _Absolute_bc7994d4f833e382b37b5718ee583259_Out_1_Float);
|
|
Bindings_BlendOverlayDetailSmoothness_06e12138dc89c0040b45a57abe520a1a_float _BlendOverlayDetailSmoothness_5a03404db5a34885a089f1aee363667f;
|
|
float _BlendOverlayDetailSmoothness_5a03404db5a34885a089f1aee363667f_SmoothnessOverlay_1_Float;
|
|
SG_BlendOverlayDetailSmoothness_06e12138dc89c0040b45a57abe520a1a_float(_Remap_e30adbbf5d116285964ef079df15b895_Out_3_Float, _Add_dedefe53d91ea08c81d7a6d9071b0263_Out_2_Float, _Absolute_bc7994d4f833e382b37b5718ee583259_Out_1_Float, _BlendOverlayDetailSmoothness_5a03404db5a34885a089f1aee363667f, _BlendOverlayDetailSmoothness_5a03404db5a34885a089f1aee363667f_SmoothnessOverlay_1_Float);
|
|
float _Saturate_3d6c6d852202408cb9b11aac8a566c89_Out_1_Float;
|
|
Unity_Saturate_float(_BlendOverlayDetailSmoothness_5a03404db5a34885a089f1aee363667f_SmoothnessOverlay_1_Float, _Saturate_3d6c6d852202408cb9b11aac8a566c89_Out_1_Float);
|
|
float3 _Vector3_8ed406a0096de4818282676bf24b1a85_Out_0_Vector3 = float3(_Multiply_d0c8d83444dbe38588583551936c7394_Out_2_Float, _Remap_ad3c26564c54aa8cbb2f81aa114b3b78_Out_3_Float, _Saturate_3d6c6d852202408cb9b11aac8a566c89_Out_1_Float);
|
|
float _Split_2ec5937af5023a8295e3858d32b193d5_R_1_Float = _Vector3_8ed406a0096de4818282676bf24b1a85_Out_0_Vector3[0];
|
|
float _Split_2ec5937af5023a8295e3858d32b193d5_G_2_Float = _Vector3_8ed406a0096de4818282676bf24b1a85_Out_0_Vector3[1];
|
|
float _Split_2ec5937af5023a8295e3858d32b193d5_B_3_Float = _Vector3_8ed406a0096de4818282676bf24b1a85_Out_0_Vector3[2];
|
|
float _Split_2ec5937af5023a8295e3858d32b193d5_A_4_Float = 0;
|
|
UnityTexture2D _Property_0f50abb140882d848d9fc7be8e3468dc_Out_0_Texture2D = UnityBuildTexture2DStructNoScale(_ShapeAO);
|
|
float4 _SampleTexture2D_33392602b94694898ec8227a89f13cc9_RGBA_0_Vector4 = SAMPLE_TEXTURE2D(_Property_0f50abb140882d848d9fc7be8e3468dc_Out_0_Texture2D.tex, _Property_0f50abb140882d848d9fc7be8e3468dc_Out_0_Texture2D.samplerstate, _Property_0f50abb140882d848d9fc7be8e3468dc_Out_0_Texture2D.GetTransformedUV(IN.uv0.xy) );
|
|
float _SampleTexture2D_33392602b94694898ec8227a89f13cc9_R_4_Float = _SampleTexture2D_33392602b94694898ec8227a89f13cc9_RGBA_0_Vector4.r;
|
|
float _SampleTexture2D_33392602b94694898ec8227a89f13cc9_G_5_Float = _SampleTexture2D_33392602b94694898ec8227a89f13cc9_RGBA_0_Vector4.g;
|
|
float _SampleTexture2D_33392602b94694898ec8227a89f13cc9_B_6_Float = _SampleTexture2D_33392602b94694898ec8227a89f13cc9_RGBA_0_Vector4.b;
|
|
float _SampleTexture2D_33392602b94694898ec8227a89f13cc9_A_7_Float = _SampleTexture2D_33392602b94694898ec8227a89f13cc9_RGBA_0_Vector4.a;
|
|
float _Property_a51c4b6d05e6718d919aadcf26153350_Out_0_Float = _ShapeAORemapMin;
|
|
float _Property_973fbc42b7a69088b9fc2c502945f369_Out_0_Float = _ShapeAORemapMax;
|
|
float2 _Vector2_a73753c5a8c4fa828d2eb25d4fb8b399_Out_0_Vector2 = float2(_Property_a51c4b6d05e6718d919aadcf26153350_Out_0_Float, _Property_973fbc42b7a69088b9fc2c502945f369_Out_0_Float);
|
|
float _Remap_270e7e207f303487bc04348b1b54db69_Out_3_Float;
|
|
Unity_Remap_float(_SampleTexture2D_33392602b94694898ec8227a89f13cc9_G_5_Float, float2 (0, 1), _Vector2_a73753c5a8c4fa828d2eb25d4fb8b399_Out_0_Vector2, _Remap_270e7e207f303487bc04348b1b54db69_Out_3_Float);
|
|
float _Minimum_307d1a8c4f5c6a87a1bbc658a5811679_Out_2_Float;
|
|
Unity_Minimum_float(_Split_2ec5937af5023a8295e3858d32b193d5_G_2_Float, _Remap_270e7e207f303487bc04348b1b54db69_Out_3_Float, _Minimum_307d1a8c4f5c6a87a1bbc658a5811679_Out_2_Float);
|
|
float3 _Vector3_fac10bf467f5ff82b4f071ba165bf458_Out_0_Vector3 = float3(_Split_2ec5937af5023a8295e3858d32b193d5_R_1_Float, _Minimum_307d1a8c4f5c6a87a1bbc658a5811679_Out_2_Float, _Split_2ec5937af5023a8295e3858d32b193d5_B_3_Float);
|
|
float _Property_fa6937565be49684915e6bb999529949_Out_0_Float = _CoverMetallic;
|
|
float _Multiply_d0ecb787fa289f8f9d3c2988d60f18d3_Out_2_Float;
|
|
Unity_Multiply_float_float(_Split_fe834aed1172f284a73d2d6810bdb696_R_1_Float, _Property_fa6937565be49684915e6bb999529949_Out_0_Float, _Multiply_d0ecb787fa289f8f9d3c2988d60f18d3_Out_2_Float);
|
|
float _Property_8f5ca0ba38d2a4858c1b4e44f6a375b4_Out_0_Float = _CoverAORemapMin;
|
|
float _Property_a15ef0fe46e1d88f9e20df6605bd1499_Out_0_Float = _CoverAORemapMax;
|
|
float2 _Vector2_969d809c2de99f89959cc4526a665db9_Out_0_Vector2 = float2(_Property_8f5ca0ba38d2a4858c1b4e44f6a375b4_Out_0_Float, _Property_a15ef0fe46e1d88f9e20df6605bd1499_Out_0_Float);
|
|
float _Remap_1b6065f44329038594e2d0cf001fa138_Out_3_Float;
|
|
Unity_Remap_float(_Split_fe834aed1172f284a73d2d6810bdb696_G_2_Float, float2 (0, 1), _Vector2_969d809c2de99f89959cc4526a665db9_Out_0_Vector2, _Remap_1b6065f44329038594e2d0cf001fa138_Out_3_Float);
|
|
float _Property_0fde68fd9824db8e9f5b4b0daff90270_Out_0_Float = _CoverSmoothnessRemapMin;
|
|
float _Property_abad1da00caf99869e0c9ca2926c76bd_Out_0_Float = _CoverSmoothnessRemapMax;
|
|
float2 _Vector2_1aa81c2ad7cc268caa834889569ce556_Out_0_Vector2 = float2(_Property_0fde68fd9824db8e9f5b4b0daff90270_Out_0_Float, _Property_abad1da00caf99869e0c9ca2926c76bd_Out_0_Float);
|
|
float _Remap_4948cd1fb38399888e9567ee2abb8acd_Out_3_Float;
|
|
Unity_Remap_float(_Split_fe834aed1172f284a73d2d6810bdb696_A_4_Float, float2 (0, 1), _Vector2_1aa81c2ad7cc268caa834889569ce556_Out_0_Vector2, _Remap_4948cd1fb38399888e9567ee2abb8acd_Out_3_Float);
|
|
float _Multiply_d3e207dba42f1984aacff3c1bf4eef0b_Out_2_Float;
|
|
Unity_Multiply_float_float(_SampleTexture2D_4bd08411faa60c828847f2247f06a809_B_6_Float, 2, _Multiply_d3e207dba42f1984aacff3c1bf4eef0b_Out_2_Float);
|
|
float _Add_0299d632f81fff8f969a0eed5f77397c_Out_2_Float;
|
|
Unity_Add_float(_Multiply_d3e207dba42f1984aacff3c1bf4eef0b_Out_2_Float, float(-1), _Add_0299d632f81fff8f969a0eed5f77397c_Out_2_Float);
|
|
float _Property_a2c7556e96b60b8e90cb5145ca6f9dde_Out_0_Float = _DetailCoverSmoothnessScale;
|
|
float _Multiply_d340fbee0985958dbb66555a73bd733c_Out_2_Float;
|
|
Unity_Multiply_float_float(_Add_0299d632f81fff8f969a0eed5f77397c_Out_2_Float, _Property_a2c7556e96b60b8e90cb5145ca6f9dde_Out_0_Float, _Multiply_d340fbee0985958dbb66555a73bd733c_Out_2_Float);
|
|
float _Saturate_2c0cc920be0ca88e937ec108b38f5fde_Out_1_Float;
|
|
Unity_Saturate_float(_Multiply_d340fbee0985958dbb66555a73bd733c_Out_2_Float, _Saturate_2c0cc920be0ca88e937ec108b38f5fde_Out_1_Float);
|
|
float _Absolute_3f81290e941e378283f7151c4a0731e2_Out_1_Float;
|
|
Unity_Absolute_float(_Saturate_2c0cc920be0ca88e937ec108b38f5fde_Out_1_Float, _Absolute_3f81290e941e378283f7151c4a0731e2_Out_1_Float);
|
|
Bindings_BlendOverlayDetailSmoothness_06e12138dc89c0040b45a57abe520a1a_float _BlendOverlayDetailSmoothness_e7a4fbe98378f084bd09f6e5d90e1cb8;
|
|
float _BlendOverlayDetailSmoothness_e7a4fbe98378f084bd09f6e5d90e1cb8_SmoothnessOverlay_1_Float;
|
|
SG_BlendOverlayDetailSmoothness_06e12138dc89c0040b45a57abe520a1a_float(_Remap_4948cd1fb38399888e9567ee2abb8acd_Out_3_Float, _Add_0299d632f81fff8f969a0eed5f77397c_Out_2_Float, _Absolute_3f81290e941e378283f7151c4a0731e2_Out_1_Float, _BlendOverlayDetailSmoothness_e7a4fbe98378f084bd09f6e5d90e1cb8, _BlendOverlayDetailSmoothness_e7a4fbe98378f084bd09f6e5d90e1cb8_SmoothnessOverlay_1_Float);
|
|
float _Saturate_9091ea9d9924c682ad6b94d3322ee822_Out_1_Float;
|
|
Unity_Saturate_float(_BlendOverlayDetailSmoothness_e7a4fbe98378f084bd09f6e5d90e1cb8_SmoothnessOverlay_1_Float, _Saturate_9091ea9d9924c682ad6b94d3322ee822_Out_1_Float);
|
|
float3 _Vector3_93bafe600474e7819ebc13e534b986bf_Out_0_Vector3 = float3(_Multiply_d0ecb787fa289f8f9d3c2988d60f18d3_Out_2_Float, _Remap_1b6065f44329038594e2d0cf001fa138_Out_3_Float, _Saturate_9091ea9d9924c682ad6b94d3322ee822_Out_1_Float);
|
|
float _Split_6ec9cc5e56f3f68ba37ff91557979c18_R_1_Float = _Vector3_93bafe600474e7819ebc13e534b986bf_Out_0_Vector3[0];
|
|
float _Split_6ec9cc5e56f3f68ba37ff91557979c18_G_2_Float = _Vector3_93bafe600474e7819ebc13e534b986bf_Out_0_Vector3[1];
|
|
float _Split_6ec9cc5e56f3f68ba37ff91557979c18_B_3_Float = _Vector3_93bafe600474e7819ebc13e534b986bf_Out_0_Vector3[2];
|
|
float _Split_6ec9cc5e56f3f68ba37ff91557979c18_A_4_Float = 0;
|
|
float _Property_ca9c61425ece6b8c909c06b1e2738f1a_Out_0_Float = _CoverShapeAORemapMin;
|
|
float _Property_b9be92f1612c908d80643f0e96015b33_Out_0_Float = _CoverShapeAORemapMax;
|
|
float2 _Vector2_9b862c4e147d1082afad3606339d2130_Out_0_Vector2 = float2(_Property_ca9c61425ece6b8c909c06b1e2738f1a_Out_0_Float, _Property_b9be92f1612c908d80643f0e96015b33_Out_0_Float);
|
|
float _Remap_c1f0022add809b83bad7b493177bddb7_Out_3_Float;
|
|
Unity_Remap_float(_SampleTexture2D_33392602b94694898ec8227a89f13cc9_G_5_Float, float2 (0, 1), _Vector2_9b862c4e147d1082afad3606339d2130_Out_0_Vector2, _Remap_c1f0022add809b83bad7b493177bddb7_Out_3_Float);
|
|
float _Minimum_595c2f31bb0ec588977a2b9ea46bf6b0_Out_2_Float;
|
|
Unity_Minimum_float(_Split_6ec9cc5e56f3f68ba37ff91557979c18_G_2_Float, _Remap_c1f0022add809b83bad7b493177bddb7_Out_3_Float, _Minimum_595c2f31bb0ec588977a2b9ea46bf6b0_Out_2_Float);
|
|
float3 _Vector3_6cb5b2c4675bb28cb41ea88b6eaa2aff_Out_0_Vector3 = float3(_Split_6ec9cc5e56f3f68ba37ff91557979c18_R_1_Float, _Minimum_595c2f31bb0ec588977a2b9ea46bf6b0_Out_2_Float, _Split_6ec9cc5e56f3f68ba37ff91557979c18_B_3_Float);
|
|
float3 _Lerp_fa40b54f3d5a1a8a95f6306e837b9338_Out_3_Vector3;
|
|
Unity_Lerp_float3(_Vector3_fac10bf467f5ff82b4f071ba165bf458_Out_0_Vector3, _Vector3_6cb5b2c4675bb28cb41ea88b6eaa2aff_Out_0_Vector3, (_Branch_3ccf365d359214809d30b6430d863e3f_Out_3_Float.xxx), _Lerp_fa40b54f3d5a1a8a95f6306e837b9338_Out_3_Vector3);
|
|
float _Split_c4a5352a58a4f88fb40410f956825dc6_R_1_Float = _Lerp_fa40b54f3d5a1a8a95f6306e837b9338_Out_3_Vector3[0];
|
|
float _Split_c4a5352a58a4f88fb40410f956825dc6_G_2_Float = _Lerp_fa40b54f3d5a1a8a95f6306e837b9338_Out_3_Vector3[1];
|
|
float _Split_c4a5352a58a4f88fb40410f956825dc6_B_3_Float = _Lerp_fa40b54f3d5a1a8a95f6306e837b9338_Out_3_Vector3[2];
|
|
float _Split_c4a5352a58a4f88fb40410f956825dc6_A_4_Float = 0;
|
|
float _Property_7861e880056eb88ab923a2ff5b12179d_Out_0_Float = _WetSmoothness;
|
|
float _Lerp_ee63160826cff4869f0e63568dd6f8b7_Out_3_Float;
|
|
Unity_Lerp_float(_Split_c4a5352a58a4f88fb40410f956825dc6_B_3_Float, _Property_7861e880056eb88ab923a2ff5b12179d_Out_0_Float, _OneMinus_e16dfb812ec64b8891c541171687142f_Out_1_Float, _Lerp_ee63160826cff4869f0e63568dd6f8b7_Out_3_Float);
|
|
float _Property_1c389d922d4fba86bc62c7d42ac8643d_Out_0_Float = _CoverNormalScale;
|
|
float3 _NormalStrength_db3de71f618fee878c84a13374c7adc4_Out_2_Vector3;
|
|
Unity_NormalStrength_float((_TriplanarNMn_ba7e211dd8095589a2939b5b239ca8e0_XYZ_1_Vector4.xyz), _Property_1c389d922d4fba86bc62c7d42ac8643d_Out_0_Float, _NormalStrength_db3de71f618fee878c84a13374c7adc4_Out_2_Vector3);
|
|
float3 _NormalBlend_b2e537e7a99f9280ba682b47daf3c5e3_Out_2_Vector3;
|
|
Unity_NormalBlend_float(_NormalStrength_db3de71f618fee878c84a13374c7adc4_Out_2_Vector3, _NormalStrength_401cd5af500bd68dbc9bca19d548d0db_Out_2_Vector3, _NormalBlend_b2e537e7a99f9280ba682b47daf3c5e3_Out_2_Vector3);
|
|
float2 _Vector2_b87489f8633d268598edb76163057164_Out_0_Vector2 = float2(_SampleTexture2D_4bd08411faa60c828847f2247f06a809_A_7_Float, _SampleTexture2D_4bd08411faa60c828847f2247f06a809_G_5_Float);
|
|
float2 _Multiply_95e603bb6d4bd7809de0ae42c8f45058_Out_2_Vector2;
|
|
Unity_Multiply_float2_float2(_Vector2_b87489f8633d268598edb76163057164_Out_0_Vector2, float2(2, 2), _Multiply_95e603bb6d4bd7809de0ae42c8f45058_Out_2_Vector2);
|
|
float2 _Add_c116ac3906ccf68d82dd5b73d0f5659a_Out_2_Vector2;
|
|
Unity_Add_float2(_Multiply_95e603bb6d4bd7809de0ae42c8f45058_Out_2_Vector2, float2(-1, -1), _Add_c116ac3906ccf68d82dd5b73d0f5659a_Out_2_Vector2);
|
|
float _Property_988acb131fd330878b4ac0672366ad90_Out_0_Float = _DetailCoverNormalScale;
|
|
float2 _Multiply_6de1a79215e1928f9f3fc3293df74f88_Out_2_Vector2;
|
|
Unity_Multiply_float2_float2(_Add_c116ac3906ccf68d82dd5b73d0f5659a_Out_2_Vector2, (_Property_988acb131fd330878b4ac0672366ad90_Out_0_Float.xx), _Multiply_6de1a79215e1928f9f3fc3293df74f88_Out_2_Vector2);
|
|
float _Split_9ce53bb7a65f16809b6a95d82286186e_R_1_Float = _Multiply_6de1a79215e1928f9f3fc3293df74f88_Out_2_Vector2[0];
|
|
float _Split_9ce53bb7a65f16809b6a95d82286186e_G_2_Float = _Multiply_6de1a79215e1928f9f3fc3293df74f88_Out_2_Vector2[1];
|
|
float _Split_9ce53bb7a65f16809b6a95d82286186e_B_3_Float = 0;
|
|
float _Split_9ce53bb7a65f16809b6a95d82286186e_A_4_Float = 0;
|
|
float _DotProduct_8912687db556b6819d2a38ba8511a7ae_Out_2_Float;
|
|
Unity_DotProduct_float2(_Multiply_6de1a79215e1928f9f3fc3293df74f88_Out_2_Vector2, _Multiply_6de1a79215e1928f9f3fc3293df74f88_Out_2_Vector2, _DotProduct_8912687db556b6819d2a38ba8511a7ae_Out_2_Float);
|
|
float _Saturate_013ea9a02a1ff18992540b270836cc73_Out_1_Float;
|
|
Unity_Saturate_float(_DotProduct_8912687db556b6819d2a38ba8511a7ae_Out_2_Float, _Saturate_013ea9a02a1ff18992540b270836cc73_Out_1_Float);
|
|
float _OneMinus_eefd2695dc7d77838984fc25a1c00b0b_Out_1_Float;
|
|
Unity_OneMinus_float(_Saturate_013ea9a02a1ff18992540b270836cc73_Out_1_Float, _OneMinus_eefd2695dc7d77838984fc25a1c00b0b_Out_1_Float);
|
|
float _SquareRoot_1d25cc71b4ce9286af1666a96ae6ac5a_Out_1_Float;
|
|
Unity_SquareRoot_float(_OneMinus_eefd2695dc7d77838984fc25a1c00b0b_Out_1_Float, _SquareRoot_1d25cc71b4ce9286af1666a96ae6ac5a_Out_1_Float);
|
|
float3 _Vector3_c3d9c7e92a1c5b8ea5650ab3bb421c27_Out_0_Vector3 = float3(_Split_9ce53bb7a65f16809b6a95d82286186e_R_1_Float, _Split_9ce53bb7a65f16809b6a95d82286186e_G_2_Float, _SquareRoot_1d25cc71b4ce9286af1666a96ae6ac5a_Out_1_Float);
|
|
float3 _NormalBlend_8e1d1c87f8c12b87b64883533bfa43be_Out_2_Vector3;
|
|
Unity_NormalBlend_float(_NormalBlend_b2e537e7a99f9280ba682b47daf3c5e3_Out_2_Vector3, _Vector3_c3d9c7e92a1c5b8ea5650ab3bb421c27_Out_0_Vector3, _NormalBlend_8e1d1c87f8c12b87b64883533bfa43be_Out_2_Vector3);
|
|
float3 _Lerp_48cd568fef7d358b8d65b989db745e6c_Out_3_Vector3;
|
|
Unity_Lerp_float3(_NormalBlend_4242e1b4a785378aa59dd49e9d993ffc_Out_2_Vector3, _NormalBlend_8e1d1c87f8c12b87b64883533bfa43be_Out_2_Vector3, (_Branch_3ccf365d359214809d30b6430d863e3f_Out_3_Float.xxx), _Lerp_48cd568fef7d358b8d65b989db745e6c_Out_3_Vector3);
|
|
surface.BaseColor = _Lerp_43bc7a9493df5a829abf080ee4ad3298_Out_3_Vector3;
|
|
surface.Emission = float3(0, 0, 0);
|
|
surface.Alpha = float(1);
|
|
surface.BentNormal = IN.TangentSpaceNormal;
|
|
surface.Smoothness = _Lerp_ee63160826cff4869f0e63568dd6f8b7_Out_3_Float;
|
|
surface.Occlusion = _Split_c4a5352a58a4f88fb40410f956825dc6_G_2_Float;
|
|
surface.NormalTS = _Lerp_48cd568fef7d358b8d65b989db745e6c_Out_3_Vector3;
|
|
surface.Metallic = _Split_c4a5352a58a4f88fb40410f956825dc6_R_1_Float;
|
|
{
|
|
surface.VTPackedFeedback = float4(1.0f,1.0f,1.0f,1.0f);
|
|
}
|
|
return surface;
|
|
}
|
|
|
|
// --------------------------------------------------
|
|
// Build Graph Inputs
|
|
#ifdef HAVE_VFX_MODIFICATION
|
|
#define VFX_SRP_ATTRIBUTES AttributesMesh
|
|
#define VaryingsMeshType VaryingsMeshToPS
|
|
#define VFX_SRP_VARYINGS VaryingsMeshType
|
|
#define VFX_SRP_SURFACE_INPUTS FragInputs
|
|
#endif
|
|
|
|
VertexDescriptionInputs AttributesMeshToVertexDescriptionInputs(AttributesMesh input)
|
|
{
|
|
VertexDescriptionInputs output;
|
|
ZERO_INITIALIZE(VertexDescriptionInputs, output);
|
|
|
|
output.ObjectSpaceNormal = input.normalOS;
|
|
output.ObjectSpaceTangent = input.tangentOS.xyz;
|
|
output.ObjectSpacePosition = input.positionOS;
|
|
#if UNITY_ANY_INSTANCING_ENABLED
|
|
#else
|
|
#endif
|
|
|
|
return output;
|
|
}
|
|
|
|
VertexDescription GetVertexDescription(AttributesMesh input, float3 timeParameters
|
|
#ifdef HAVE_VFX_MODIFICATION
|
|
, AttributesElement element
|
|
#endif
|
|
)
|
|
{
|
|
// build graph inputs
|
|
VertexDescriptionInputs vertexDescriptionInputs = AttributesMeshToVertexDescriptionInputs(input);
|
|
// Override time parameters with used one (This is required to correctly handle motion vectors for vertex animation based on time)
|
|
|
|
// evaluate vertex graph
|
|
#ifdef HAVE_VFX_MODIFICATION
|
|
GraphProperties properties;
|
|
ZERO_INITIALIZE(GraphProperties, properties);
|
|
|
|
// Fetch the vertex graph properties for the particle instance.
|
|
GetElementVertexProperties(element, properties);
|
|
|
|
VertexDescription vertexDescription = VertexDescriptionFunction(vertexDescriptionInputs, properties);
|
|
#else
|
|
VertexDescription vertexDescription = VertexDescriptionFunction(vertexDescriptionInputs);
|
|
#endif
|
|
return vertexDescription;
|
|
|
|
}
|
|
|
|
AttributesMesh ApplyMeshModification(AttributesMesh input, float3 timeParameters
|
|
#ifdef USE_CUSTOMINTERP_SUBSTRUCT
|
|
#ifdef TESSELLATION_ON
|
|
, inout VaryingsMeshToDS varyings
|
|
#else
|
|
, inout VaryingsMeshToPS varyings
|
|
#endif
|
|
#endif
|
|
#ifdef HAVE_VFX_MODIFICATION
|
|
, AttributesElement element
|
|
#endif
|
|
)
|
|
{
|
|
VertexDescription vertexDescription = GetVertexDescription(input, timeParameters
|
|
#ifdef HAVE_VFX_MODIFICATION
|
|
, element
|
|
#endif
|
|
);
|
|
|
|
// copy graph output to the results
|
|
input.positionOS = vertexDescription.Position;
|
|
input.normalOS = vertexDescription.Normal;
|
|
input.tangentOS.xyz = vertexDescription.Tangent;
|
|
|
|
|
|
|
|
return input;
|
|
}
|
|
|
|
#if defined(_ADD_CUSTOM_VELOCITY) // For shader graph custom velocity
|
|
// Return precomputed Velocity in object space
|
|
float3 GetCustomVelocity(AttributesMesh input
|
|
#ifdef HAVE_VFX_MODIFICATION
|
|
, AttributesElement element
|
|
#endif
|
|
)
|
|
{
|
|
VertexDescription vertexDescription = GetVertexDescription(input, _TimeParameters.xyz
|
|
#ifdef HAVE_VFX_MODIFICATION
|
|
, element
|
|
#endif
|
|
);
|
|
return vertexDescription.CustomVelocity;
|
|
}
|
|
#endif
|
|
|
|
FragInputs BuildFragInputs(VaryingsMeshToPS input)
|
|
{
|
|
FragInputs output;
|
|
ZERO_INITIALIZE(FragInputs, output);
|
|
|
|
// Init to some default value to make the computer quiet (else it output 'divide by zero' warning even if value is not used).
|
|
// TODO: this is a really poor workaround, but the variable is used in a bunch of places
|
|
// to compute normals which are then passed on elsewhere to compute other values...
|
|
output.tangentToWorld = k_identity3x3;
|
|
output.positionSS = input.positionCS; // input.positionCS is SV_Position
|
|
|
|
output.positionRWS = input.positionRWS;
|
|
output.tangentToWorld = BuildTangentToWorld(input.tangentWS, input.normalWS);
|
|
output.texCoord0 = input.texCoord0;
|
|
output.texCoord1 = input.texCoord1;
|
|
output.texCoord2 = input.texCoord2;
|
|
output.color = input.color;
|
|
|
|
#if UNITY_ANY_INSTANCING_ENABLED
|
|
#else
|
|
#endif
|
|
|
|
#ifdef HAVE_VFX_MODIFICATION
|
|
// FragInputs from VFX come from two places: Interpolator or CBuffer.
|
|
#if VFX_USE_GRAPH_VALUES
|
|
uint instanceActiveIndex = asuint(UNITY_ACCESS_INSTANCED_PROP(PerInstance, _InstanceActiveIndex));
|
|
/* WARNING: $splice Could not find named fragment 'VFXLoadGraphValues' */
|
|
#endif
|
|
|
|
/* WARNING: $splice Could not find named fragment 'VFXSetFragInputs' */
|
|
|
|
#endif
|
|
|
|
// splice point to copy custom interpolator fields from varyings to frag inputs
|
|
|
|
|
|
return output;
|
|
}
|
|
|
|
// existing HDRP code uses the combined function to go directly from packed to frag inputs
|
|
FragInputs UnpackVaryingsMeshToFragInputs(PackedVaryingsMeshToPS input)
|
|
{
|
|
UNITY_SETUP_INSTANCE_ID(input);
|
|
#if defined(HAVE_VFX_MODIFICATION) && defined(UNITY_INSTANCING_ENABLED)
|
|
unity_InstanceID = input.instanceID;
|
|
#endif
|
|
VaryingsMeshToPS unpacked = UnpackVaryingsMeshToPS(input);
|
|
return BuildFragInputs(unpacked);
|
|
}
|
|
SurfaceDescriptionInputs FragInputsToSurfaceDescriptionInputs(FragInputs input, float3 viewWS)
|
|
{
|
|
SurfaceDescriptionInputs output;
|
|
ZERO_INITIALIZE(SurfaceDescriptionInputs, output);
|
|
|
|
output.WorldSpaceNormal = normalize(input.tangentToWorld[2].xyz);
|
|
#if defined(SHADER_STAGE_RAY_TRACING)
|
|
#else
|
|
#endif
|
|
output.TangentSpaceNormal = float3(0.0f, 0.0f, 1.0f);
|
|
output.WorldSpaceTangent = input.tangentToWorld[0].xyz;
|
|
output.WorldSpaceBiTangent = input.tangentToWorld[1].xyz;
|
|
output.AbsoluteWorldSpacePosition = GetAbsolutePositionWS(input.positionRWS);
|
|
|
|
#if UNITY_UV_STARTS_AT_TOP
|
|
#else
|
|
#endif
|
|
|
|
|
|
output.uv0 = input.texCoord0;
|
|
output.VertexColor = input.color;
|
|
|
|
// splice point to copy frag inputs custom interpolator pack into the SDI
|
|
|
|
|
|
return output;
|
|
}
|
|
|
|
// --------------------------------------------------
|
|
// Build Surface Data (Specific Material)
|
|
|
|
void ApplyDecalToSurfaceDataNoNormal(DecalSurfaceData decalSurfaceData, inout SurfaceData surfaceData);
|
|
|
|
void ApplyDecalAndGetNormal(FragInputs fragInputs, PositionInputs posInput, SurfaceDescription surfaceDescription,
|
|
inout SurfaceData surfaceData)
|
|
{
|
|
float3 doubleSidedConstants = GetDoubleSidedConstants();
|
|
|
|
#ifdef DECAL_NORMAL_BLENDING
|
|
// SG nodes don't ouptut surface gradients, so if decals require surf grad blending, we have to convert
|
|
// the normal to gradient before applying the decal. We then have to resolve the gradient back to world space
|
|
float3 normalTS;
|
|
|
|
normalTS = SurfaceGradientFromTangentSpaceNormalAndFromTBN(surfaceDescription.NormalTS,
|
|
fragInputs.tangentToWorld[0], fragInputs.tangentToWorld[1]);
|
|
|
|
|
|
#if HAVE_DECALS
|
|
if (_EnableDecals)
|
|
{
|
|
float alpha = 1.0;
|
|
alpha = surfaceDescription.Alpha;
|
|
|
|
DecalSurfaceData decalSurfaceData = GetDecalSurfaceData(posInput, fragInputs, alpha);
|
|
ApplyDecalToSurfaceNormal(decalSurfaceData, fragInputs.tangentToWorld[2], normalTS);
|
|
ApplyDecalToSurfaceDataNoNormal(decalSurfaceData, surfaceData);
|
|
}
|
|
#endif
|
|
|
|
GetNormalWS_SG(fragInputs, normalTS, surfaceData.normalWS, doubleSidedConstants);
|
|
#else
|
|
// normal delivered to master node
|
|
GetNormalWS(fragInputs, surfaceDescription.NormalTS, surfaceData.normalWS, doubleSidedConstants);
|
|
|
|
#if HAVE_DECALS
|
|
if (_EnableDecals)
|
|
{
|
|
float alpha = 1.0;
|
|
alpha = surfaceDescription.Alpha;
|
|
|
|
// Both uses and modifies 'surfaceData.normalWS'.
|
|
DecalSurfaceData decalSurfaceData = GetDecalSurfaceData(posInput, fragInputs, alpha);
|
|
ApplyDecalToSurfaceNormal(decalSurfaceData, surfaceData.normalWS.xyz);
|
|
ApplyDecalToSurfaceDataNoNormal(decalSurfaceData, surfaceData);
|
|
}
|
|
#endif
|
|
#endif
|
|
}
|
|
void BuildSurfaceData(FragInputs fragInputs, inout SurfaceDescription surfaceDescription, float3 V, PositionInputs posInput, out SurfaceData surfaceData, out float3 bentNormalWS)
|
|
{
|
|
ZERO_INITIALIZE(SurfaceData, surfaceData);
|
|
|
|
// specularOcclusion need to be init ahead of decal to quiet the compiler that modify the SurfaceData struct
|
|
// however specularOcclusion can come from the graph, so need to be init here so it can be override.
|
|
surfaceData.specularOcclusion = 1.0;
|
|
surfaceData.thickness = 0.0;
|
|
|
|
surfaceData.baseColor = surfaceDescription.BaseColor;
|
|
surfaceData.perceptualSmoothness = surfaceDescription.Smoothness;
|
|
surfaceData.ambientOcclusion = surfaceDescription.Occlusion;
|
|
surfaceData.metallic = surfaceDescription.Metallic;
|
|
|
|
#if defined(_REFRACTION_PLANE) || defined(_REFRACTION_SPHERE) || defined(_REFRACTION_THIN)
|
|
if (_EnableSSRefraction)
|
|
{
|
|
|
|
surfaceData.transmittanceMask = (1.0 - surfaceDescription.Alpha);
|
|
surfaceDescription.Alpha = 1.0;
|
|
}
|
|
else
|
|
{
|
|
surfaceData.ior = 1.0;
|
|
surfaceData.transmittanceColor = float3(1.0, 1.0, 1.0);
|
|
surfaceData.atDistance = 1.0;
|
|
surfaceData.transmittanceMask = 0.0;
|
|
surfaceDescription.Alpha = 1.0;
|
|
}
|
|
#else
|
|
surfaceData.ior = 1.0;
|
|
surfaceData.transmittanceColor = float3(1.0, 1.0, 1.0);
|
|
surfaceData.atDistance = 1.0;
|
|
surfaceData.transmittanceMask = 0.0;
|
|
#endif
|
|
|
|
// These static material feature allow compile time optimization
|
|
surfaceData.materialFeatures = MATERIALFEATUREFLAGS_LIT_STANDARD;
|
|
#ifdef _MATERIAL_FEATURE_SUBSURFACE_SCATTERING
|
|
surfaceData.materialFeatures |= MATERIALFEATUREFLAGS_LIT_SUBSURFACE_SCATTERING;
|
|
#endif
|
|
|
|
#ifdef _MATERIAL_FEATURE_TRANSMISSION
|
|
surfaceData.materialFeatures |= MATERIALFEATUREFLAGS_LIT_TRANSMISSION;
|
|
#endif
|
|
|
|
#ifdef _MATERIAL_FEATURE_COLORED_TRANSMISSION
|
|
surfaceData.materialFeatures |= MATERIALFEATUREFLAGS_LIT_TRANSMISSION;
|
|
surfaceData.materialFeatures |= MATERIALFEATUREFLAGS_LIT_COLORED_TRANSMISSION;
|
|
|
|
#endif
|
|
|
|
#ifdef _MATERIAL_FEATURE_ANISOTROPY
|
|
surfaceData.materialFeatures |= MATERIALFEATUREFLAGS_LIT_ANISOTROPY;
|
|
|
|
// Initialize the normal to something non-zero to avoid a div-zero warning for anisotropy.
|
|
surfaceData.normalWS = float3(0, 1, 0);
|
|
#endif
|
|
|
|
#ifdef _MATERIAL_FEATURE_IRIDESCENCE
|
|
surfaceData.materialFeatures |= MATERIALFEATUREFLAGS_LIT_IRIDESCENCE;
|
|
#endif
|
|
|
|
#ifdef _MATERIAL_FEATURE_SPECULAR_COLOR
|
|
surfaceData.materialFeatures |= MATERIALFEATUREFLAGS_LIT_SPECULAR_COLOR;
|
|
#endif
|
|
|
|
#ifdef _MATERIAL_FEATURE_CLEAR_COAT
|
|
surfaceData.materialFeatures |= MATERIALFEATUREFLAGS_LIT_CLEAR_COAT;
|
|
#endif
|
|
|
|
#if defined (_MATERIAL_FEATURE_SPECULAR_COLOR) && defined (_ENERGY_CONSERVING_SPECULAR)
|
|
// Require to have setup baseColor
|
|
// Reproduce the energy conservation done in legacy Unity. Not ideal but better for compatibility and users can unchek it
|
|
surfaceData.baseColor *= (1.0 - Max3(surfaceData.specularColor.r, surfaceData.specularColor.g, surfaceData.specularColor.b));
|
|
#endif
|
|
|
|
float3 doubleSidedConstants = GetDoubleSidedConstants();
|
|
|
|
ApplyDecalAndGetNormal(fragInputs, posInput, surfaceDescription, surfaceData);
|
|
|
|
surfaceData.geomNormalWS = fragInputs.tangentToWorld[2];
|
|
|
|
surfaceData.tangentWS = normalize(fragInputs.tangentToWorld[0].xyz); // The tangent is not normalize in tangentToWorld for mikkt. TODO: Check if it expected that we normalize with Morten. Tag: SURFACE_GRADIENT
|
|
|
|
|
|
bentNormalWS = surfaceData.normalWS;
|
|
|
|
surfaceData.tangentWS = Orthonormalize(surfaceData.tangentWS, surfaceData.normalWS);
|
|
|
|
#ifdef DEBUG_DISPLAY
|
|
#if !defined(SHADER_STAGE_RAY_TRACING)
|
|
// Mipmap mode debugging isn't supported with ray tracing as it relies on derivatives
|
|
if (_DebugMipMapMode != DEBUGMIPMAPMODE_NONE)
|
|
{
|
|
#ifdef FRAG_INPUTS_USE_TEXCOORD0
|
|
surfaceData.baseColor = GET_TEXTURE_STREAMING_DEBUG(posInput.positionSS, fragInputs.texCoord0);
|
|
#else
|
|
surfaceData.baseColor = GET_TEXTURE_STREAMING_DEBUG_NO_UV(posInput.positionSS);
|
|
#endif
|
|
surfaceData.metallic = 0;
|
|
}
|
|
#endif
|
|
|
|
// We need to call ApplyDebugToSurfaceData after filling the surfaceData and before filling builtinData
|
|
// as it can modify attribute use for static lighting
|
|
ApplyDebugToSurfaceData(fragInputs.tangentToWorld, surfaceData);
|
|
#endif
|
|
|
|
// By default we use the ambient occlusion with Tri-ace trick (apply outside) for specular occlusion.
|
|
// If user provide bent normal then we process a better term
|
|
#if defined(_SPECULAR_OCCLUSION_CUSTOM)
|
|
// Just use the value passed through via the slot (not active otherwise)
|
|
#elif defined(_SPECULAR_OCCLUSION_FROM_AO_BENT_NORMAL)
|
|
// If we have bent normal and ambient occlusion, process a specular occlusion
|
|
surfaceData.specularOcclusion = GetSpecularOcclusionFromBentAO(V, bentNormalWS, surfaceData.normalWS, surfaceData.ambientOcclusion, PerceptualSmoothnessToPerceptualRoughness(surfaceData.perceptualSmoothness));
|
|
#elif defined(_AMBIENT_OCCLUSION) && defined(_SPECULAR_OCCLUSION_FROM_AO)
|
|
surfaceData.specularOcclusion = GetSpecularOcclusionFromAmbientOcclusion(ClampNdotV(dot(surfaceData.normalWS, V)), surfaceData.ambientOcclusion, PerceptualSmoothnessToRoughness(surfaceData.perceptualSmoothness));
|
|
#endif
|
|
|
|
#if defined(_ENABLE_GEOMETRIC_SPECULAR_AA) && !defined(SHADER_STAGE_RAY_TRACING)
|
|
surfaceData.perceptualSmoothness = GeometricNormalFiltering(surfaceData.perceptualSmoothness, fragInputs.tangentToWorld[2], surfaceDescription.SpecularAAScreenSpaceVariance, surfaceDescription.SpecularAAThreshold);
|
|
#endif
|
|
}
|
|
|
|
// --------------------------------------------------
|
|
// Get Surface And BuiltinData
|
|
|
|
void GetSurfaceAndBuiltinData(FragInputs fragInputs, float3 V, inout PositionInputs posInput, out SurfaceData surfaceData, out BuiltinData builtinData RAY_TRACING_OPTIONAL_PARAMETERS)
|
|
{
|
|
// Don't dither if displaced tessellation (we're fading out the displacement instead to match the next LOD)
|
|
#if !defined(SHADER_STAGE_RAY_TRACING) && !defined(_TESSELLATION_DISPLACEMENT)
|
|
#ifdef LOD_FADE_CROSSFADE // enable dithering LOD transition if user select CrossFade transition in LOD group
|
|
LODDitheringTransition(ComputeFadeMaskSeed(V, posInput.positionSS), unity_LODFade.x);
|
|
#endif
|
|
#endif
|
|
|
|
#ifndef SHADER_UNLIT
|
|
#ifdef _DOUBLESIDED_ON
|
|
float3 doubleSidedConstants = _DoubleSidedConstants.xyz;
|
|
#else
|
|
float3 doubleSidedConstants = float3(1.0, 1.0, 1.0);
|
|
#endif
|
|
|
|
ApplyDoubleSidedFlipOrMirror(fragInputs, doubleSidedConstants); // Apply double sided flip on the vertex normal
|
|
#endif // SHADER_UNLIT
|
|
|
|
SurfaceDescriptionInputs surfaceDescriptionInputs = FragInputsToSurfaceDescriptionInputs(fragInputs, V);
|
|
|
|
#if defined(HAVE_VFX_MODIFICATION)
|
|
GraphProperties properties;
|
|
ZERO_INITIALIZE(GraphProperties, properties);
|
|
|
|
GetElementPixelProperties(fragInputs, properties);
|
|
|
|
SurfaceDescription surfaceDescription = SurfaceDescriptionFunction(surfaceDescriptionInputs, properties);
|
|
#else
|
|
SurfaceDescription surfaceDescription = SurfaceDescriptionFunction(surfaceDescriptionInputs);
|
|
#endif
|
|
|
|
#ifdef DEBUG_DISPLAY
|
|
if (_DebugMipMapMode != DEBUGMIPMAPMODE_NONE)
|
|
{
|
|
surfaceDescription.Alpha = 1.0f;
|
|
}
|
|
#endif
|
|
|
|
// Perform alpha test very early to save performance (a killed pixel will not sample textures)
|
|
// TODO: split graph evaluation to grab just alpha dependencies first? tricky..
|
|
#ifdef _ALPHATEST_ON
|
|
float alphaCutoff = surfaceDescription.AlphaClipThreshold;
|
|
#if SHADERPASS == SHADERPASS_TRANSPARENT_DEPTH_PREPASS
|
|
// The TransparentDepthPrepass is also used with SSR transparent.
|
|
// If an artists enable transaprent SSR but not the TransparentDepthPrepass itself, then we use AlphaClipThreshold
|
|
// otherwise if TransparentDepthPrepass is enabled we use AlphaClipThresholdDepthPrepass
|
|
#elif SHADERPASS == SHADERPASS_TRANSPARENT_DEPTH_POSTPASS
|
|
// DepthPostpass always use its own alpha threshold
|
|
alphaCutoff = surfaceDescription.AlphaClipThresholdDepthPostpass;
|
|
#elif (SHADERPASS == SHADERPASS_SHADOWS) || (SHADERPASS == SHADERPASS_RAYTRACING_VISIBILITY)
|
|
// If use shadow threshold isn't enable we don't allow any test
|
|
#endif
|
|
|
|
GENERIC_ALPHA_TEST(surfaceDescription.Alpha, alphaCutoff);
|
|
#endif
|
|
|
|
#if !defined(SHADER_STAGE_RAY_TRACING) && _DEPTHOFFSET_ON
|
|
ApplyDepthOffsetPositionInput(V, surfaceDescription.DepthOffset, GetViewForwardDir(), GetWorldToHClipMatrix(), posInput);
|
|
#endif
|
|
|
|
#ifndef SHADER_UNLIT
|
|
float3 bentNormalWS;
|
|
BuildSurfaceData(fragInputs, surfaceDescription, V, posInput, surfaceData, bentNormalWS);
|
|
|
|
#ifdef FRAG_INPUTS_USE_TEXCOORD1
|
|
float4 lightmapTexCoord1 = fragInputs.texCoord1;
|
|
#else
|
|
float4 lightmapTexCoord1 = float4(0,0,0,0);
|
|
#endif
|
|
|
|
#ifdef FRAG_INPUTS_USE_TEXCOORD2
|
|
float4 lightmapTexCoord2 = fragInputs.texCoord2;
|
|
#else
|
|
float4 lightmapTexCoord2 = float4(0,0,0,0);
|
|
#endif
|
|
|
|
float alpha = 1.0;
|
|
alpha = surfaceDescription.Alpha;
|
|
|
|
// Builtin Data
|
|
// For back lighting we use the oposite vertex normal
|
|
InitBuiltinData(posInput, alpha, bentNormalWS, -fragInputs.tangentToWorld[2], lightmapTexCoord1, lightmapTexCoord2, builtinData);
|
|
|
|
#else
|
|
BuildSurfaceData(fragInputs, surfaceDescription, V, posInput, surfaceData);
|
|
|
|
ZERO_BUILTIN_INITIALIZE(builtinData); // No call to InitBuiltinData as we don't have any lighting
|
|
builtinData.opacity = surfaceDescription.Alpha;
|
|
|
|
#if defined(DEBUG_DISPLAY)
|
|
// Light Layers are currently not used for the Unlit shader (because it is not lit)
|
|
// But Unlit objects do cast shadows according to their rendering layer mask, which is what we want to
|
|
// display in the light layers visualization mode, therefore we need the renderingLayers
|
|
builtinData.renderingLayers = GetMeshRenderingLayerMask();
|
|
#endif
|
|
|
|
#endif // SHADER_UNLIT
|
|
|
|
#ifdef _ALPHATEST_ON
|
|
// Used for sharpening by alpha to mask - Alpha to covertage is only used with depth only and forward pass (no shadow pass, no transparent pass)
|
|
builtinData.alphaClipTreshold = alphaCutoff;
|
|
#endif
|
|
|
|
// override sampleBakedGI - not used by Unlit
|
|
// When overriding GI, we need to force the isLightmap flag to make sure we don't add APV (sampled in the lightloop) on top of the overridden value (set at GBuffer stage)
|
|
|
|
builtinData.emissiveColor = surfaceDescription.Emission;
|
|
|
|
// Note this will not fully work on transparent surfaces (can check with _SURFACE_TYPE_TRANSPARENT define)
|
|
// We will always overwrite vt feeback with the nearest. So behind transparent surfaces vt will not be resolved
|
|
// This is a limitation of the current MRT approach.
|
|
#ifdef UNITY_VIRTUAL_TEXTURING
|
|
builtinData.vtPackedFeedback = surfaceDescription.VTPackedFeedback;
|
|
#endif
|
|
|
|
#if _DEPTHOFFSET_ON
|
|
builtinData.depthOffset = surfaceDescription.DepthOffset;
|
|
#endif
|
|
|
|
// TODO: We should generate distortion / distortionBlur for non distortion pass
|
|
#if (SHADERPASS == SHADERPASS_DISTORTION)
|
|
builtinData.distortion = surfaceDescription.Distortion;
|
|
builtinData.distortionBlur = surfaceDescription.DistortionBlur;
|
|
#endif
|
|
|
|
#ifndef SHADER_UNLIT
|
|
// PostInitBuiltinData call ApplyDebugToBuiltinData
|
|
PostInitBuiltinData(V, posInput, surfaceData, builtinData);
|
|
#else
|
|
ApplyDebugToBuiltinData(builtinData);
|
|
#endif
|
|
|
|
RAY_TRACING_OPTIONAL_ALPHA_TEST_PASS
|
|
}
|
|
|
|
// --------------------------------------------------
|
|
// Main
|
|
|
|
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/RenderPipeline/ShaderPass/ShaderPassForward.hlsl"
|
|
|
|
// --------------------------------------------------
|
|
// Visual Effect Vertex Invocations
|
|
|
|
#ifdef HAVE_VFX_MODIFICATION
|
|
#if !defined(SHADER_STAGE_RAY_TRACING)
|
|
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/ShaderLibrary/VisualEffectVertex.hlsl"
|
|
#else
|
|
#endif
|
|
#endif
|
|
|
|
ENDHLSL
|
|
}
|
|
Pass
|
|
{
|
|
Name "RayTracingPrepass"
|
|
Tags
|
|
{
|
|
"LightMode" = "RayTracingPrepass"
|
|
}
|
|
|
|
// Render State
|
|
Cull [_CullMode]
|
|
Blend One Zero
|
|
ZWrite On
|
|
|
|
// Debug
|
|
// <None>
|
|
|
|
// --------------------------------------------------
|
|
// Pass
|
|
|
|
HLSLPROGRAM
|
|
|
|
// Pragmas
|
|
#pragma target 4.5
|
|
#pragma vertex Vert
|
|
#pragma fragment Frag
|
|
#pragma only_renderers d3d11 playstation xboxone xboxseries vulkan metal switch
|
|
#pragma multi_compile_instancing
|
|
|
|
// Keywords
|
|
#pragma shader_feature _ _SURFACE_TYPE_TRANSPARENT
|
|
#pragma shader_feature_local _ _DOUBLESIDED_ON
|
|
#pragma shader_feature_local _ _ADD_PRECOMPUTED_VELOCITY
|
|
#pragma shader_feature_local _ _TRANSPARENT_WRITES_MOTION_VEC _TRANSPARENT_REFRACTIVE_SORT
|
|
#pragma shader_feature_local_fragment _ _ENABLE_FOG_ON_TRANSPARENT
|
|
#pragma shader_feature_local_fragment _ _DISABLE_DECALS
|
|
#pragma shader_feature_local_raytracing _ _DISABLE_DECALS
|
|
#pragma shader_feature_local_fragment _ _DISABLE_SSR
|
|
#pragma shader_feature_local_raytracing _ _DISABLE_SSR
|
|
#pragma shader_feature_local_fragment _ _DISABLE_SSR_TRANSPARENT
|
|
#pragma shader_feature_local_raytracing _ _DISABLE_SSR_TRANSPARENT
|
|
#pragma shader_feature_local _ _REFRACTION_PLANE _REFRACTION_SPHERE _REFRACTION_THIN
|
|
#pragma shader_feature_local_fragment _MATERIAL_FEATURE_SUBSURFACE_SCATTERING
|
|
#pragma shader_feature_local_raytracing _MATERIAL_FEATURE_SUBSURFACE_SCATTERING
|
|
#pragma shader_feature_local_fragment _MATERIAL_FEATURE_TRANSMISSION
|
|
#pragma shader_feature_local_raytracing _MATERIAL_FEATURE_TRANSMISSION
|
|
#pragma shader_feature_local_fragment _MATERIAL_FEATURE_ANISOTROPY
|
|
#pragma shader_feature_local_raytracing _MATERIAL_FEATURE_ANISOTROPY
|
|
#pragma shader_feature_local_fragment _MATERIAL_FEATURE_IRIDESCENCE
|
|
#pragma shader_feature_local_raytracing _MATERIAL_FEATURE_IRIDESCENCE
|
|
#pragma shader_feature_local_fragment _MATERIAL_FEATURE_SPECULAR_COLOR
|
|
#pragma shader_feature_local_raytracing _MATERIAL_FEATURE_SPECULAR_COLOR
|
|
#pragma shader_feature_local_fragment _MATERIAL_FEATURE_COLORED_TRANSMISSION
|
|
#pragma shader_feature_local_raytracing _MATERIAL_FEATURE_COLORED_TRANSMISSION
|
|
// GraphKeywords: <None>
|
|
|
|
// Defines
|
|
#define SHADERPASS SHADERPASS_CONSTANT
|
|
#define RAYTRACING_SHADER_GRAPH_DEFAULT
|
|
#define SUPPORT_GLOBAL_MIP_BIAS 1
|
|
|
|
// For custom interpolators to inject a substruct definition before FragInputs definition,
|
|
// allowing for FragInputs to capture CI's intended for ShaderGraph's SDI.
|
|
struct CustomInterpolators
|
|
{
|
|
};
|
|
#define USE_CUSTOMINTERP_SUBSTRUCT
|
|
|
|
|
|
|
|
// TODO: Merge FragInputsVFX substruct with CustomInterpolators.
|
|
#ifdef HAVE_VFX_MODIFICATION
|
|
struct FragInputsVFX
|
|
{
|
|
/* WARNING: $splice Could not find named fragment 'FragInputsVFX' */
|
|
};
|
|
#endif
|
|
|
|
#include "Packages/com.unity.render-pipelines.core/ShaderLibrary/Common.hlsl"
|
|
#include "Packages/com.unity.render-pipelines.core/ShaderLibrary/GeometricTools.hlsl" // Required by Tessellation.hlsl
|
|
#include "Packages/com.unity.render-pipelines.core/ShaderLibrary/Tessellation.hlsl"
|
|
#include "Packages/com.unity.render-pipelines.core/ShaderLibrary/Texture.hlsl"
|
|
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/ShaderLibrary/ShaderVariables.hlsl"
|
|
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/RenderPipeline/ShaderPass/ShaderPass.cs.hlsl"
|
|
#include "Packages/com.unity.render-pipelines.core/ShaderLibrary/TextureStack.hlsl" // Required to be include before we include properties as it define DECLARE_STACK_CB
|
|
#include "Packages/com.unity.render-pipelines.core/ShaderLibrary/DebugMipmapStreamingMacros.hlsl" // Required before including properties as it defines UNITY_TEXTURE_STREAMING_DEBUG_VARS
|
|
// Always include Shader Graph version
|
|
// Always include last to avoid double macros
|
|
#include "Packages/com.unity.shadergraph/ShaderGraphLibrary/Functions.hlsl" // Need to be here for Gradient struct definition
|
|
|
|
// --------------------------------------------------
|
|
// Defines
|
|
|
|
// Attribute
|
|
#define ATTRIBUTES_NEED_NORMAL
|
|
#define ATTRIBUTES_NEED_TANGENT
|
|
#define ATTRIBUTES_NEED_TEXCOORD0
|
|
#define ATTRIBUTES_NEED_COLOR
|
|
#define VARYINGS_NEED_POSITION_WS
|
|
#define VARYINGS_NEED_TANGENT_TO_WORLD
|
|
#define VARYINGS_NEED_TEXCOORD0
|
|
#define VARYINGS_NEED_COLOR
|
|
|
|
#define HAVE_MESH_MODIFICATION
|
|
|
|
//Strip down the FragInputs.hlsl (on graphics), so we can only optimize the interpolators we use.
|
|
//if by accident something requests contents of FragInputs.hlsl, it will be caught as a compiler error
|
|
//Frag inputs stripping is only enabled when FRAG_INPUTS_ENABLE_STRIPPING is set
|
|
#if !defined(SHADER_STAGE_RAY_TRACING) && SHADERPASS != SHADERPASS_RAYTRACING_GBUFFER && SHADERPASS != SHADERPASS_FULL_SCREEN_DEBUG
|
|
#define FRAG_INPUTS_ENABLE_STRIPPING
|
|
#endif
|
|
#define FRAG_INPUTS_USE_TEXCOORD0
|
|
|
|
|
|
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/RenderPipeline/ShaderPass/FragInputs.hlsl"
|
|
|
|
|
|
|
|
|
|
// Following two define are a workaround introduce in 10.1.x for RaytracingQualityNode
|
|
// The ShaderGraph don't support correctly migration of this node as it serialize all the node data
|
|
// in the json file making it impossible to uprgrade. Until we get a fix, we do a workaround here
|
|
// to still allow us to rename the field and keyword of this node without breaking existing code.
|
|
#ifdef RAYTRACING_SHADER_GRAPH_DEFAULT
|
|
#define RAYTRACING_SHADER_GRAPH_HIGH
|
|
#endif
|
|
|
|
#ifdef RAYTRACING_SHADER_GRAPH_RAYTRACED
|
|
#define RAYTRACING_SHADER_GRAPH_LOW
|
|
#endif
|
|
// end
|
|
|
|
#ifndef SHADER_UNLIT
|
|
// We need isFrontFace when using double sided - it is not required for unlit as in case of unlit double sided only drive the cullmode
|
|
// VARYINGS_NEED_CULLFACE can be define by VaryingsMeshToPS.FaceSign input if a IsFrontFace Node is included in the shader graph.
|
|
#if defined(_DOUBLESIDED_ON) && !defined(VARYINGS_NEED_CULLFACE)
|
|
#define VARYINGS_NEED_CULLFACE
|
|
#endif
|
|
#endif
|
|
|
|
// Specific Material Define
|
|
#define _AMBIENT_OCCLUSION 1
|
|
#define _SPECULAR_OCCLUSION_FROM_AO 1
|
|
#define _ENERGY_CONSERVING_SPECULAR 1
|
|
|
|
#if _MATERIAL_FEATURE_COLORED_TRANSMISSION
|
|
// Colored Transmission doesn't support clear coat
|
|
#undef _MATERIAL_FEATURE_CLEAR_COAT
|
|
#endif
|
|
|
|
// If we use subsurface scattering, enable output split lighting (for forward pass)
|
|
#if defined(_MATERIAL_FEATURE_SUBSURFACE_SCATTERING) && !defined(_SURFACE_TYPE_TRANSPARENT)
|
|
#define OUTPUT_SPLIT_LIGHTING
|
|
#endif
|
|
|
|
// This shader support recursive rendering for raytracing
|
|
#define HAVE_RECURSIVE_RENDERING
|
|
|
|
// In Path Tracing, For all single-sided, refractive materials, we want to force a thin refraction model
|
|
#if (SHADERPASS == SHADERPASS_PATH_TRACING) && !defined(_DOUBLESIDED_ON) && (defined(_REFRACTION_PLANE) || defined(_REFRACTION_SPHERE))
|
|
#undef _REFRACTION_PLANE
|
|
#undef _REFRACTION_SPHERE
|
|
#define _REFRACTION_THIN
|
|
#endif
|
|
// Caution: we can use the define SHADER_UNLIT onlit after the above Material include as it is the Unlit template who define it
|
|
|
|
// To handle SSR on transparent correctly with a possibility to enable/disable it per framesettings
|
|
// we should have a code like this:
|
|
// if !defined(_DISABLE_SSR_TRANSPARENT)
|
|
// pragma multi_compile _ WRITE_NORMAL_BUFFER
|
|
// endif
|
|
// i.e we enable the multicompile only if we can receive SSR or not, and then C# code drive
|
|
// it based on if SSR transparent in frame settings and not (and stripper can strip it).
|
|
// this is currently not possible with our current preprocessor as _DISABLE_SSR_TRANSPARENT is a keyword not a define
|
|
// so instead we used this and chose to pay the extra cost of normal write even if SSR transaprent is disabled.
|
|
// Ideally the shader graph generator should handle it but condition below can't be handle correctly for now.
|
|
#if SHADERPASS == SHADERPASS_TRANSPARENT_DEPTH_PREPASS
|
|
#if !defined(_DISABLE_SSR_TRANSPARENT) && !defined(SHADER_UNLIT)
|
|
#define WRITE_NORMAL_BUFFER
|
|
#endif
|
|
#endif
|
|
|
|
// See Lit.shader
|
|
#if SHADERPASS == SHADERPASS_MOTION_VECTORS && defined(WRITE_DECAL_BUFFER_AND_RENDERING_LAYER)
|
|
#define WRITE_DECAL_BUFFER
|
|
#endif
|
|
|
|
#ifndef DEBUG_DISPLAY
|
|
// In case of opaque we don't want to perform the alpha test, it is done in depth prepass and we use depth equal for ztest (setup from UI)
|
|
// Don't do it with debug display mode as it is possible there is no depth prepass in this case
|
|
#if !defined(_SURFACE_TYPE_TRANSPARENT)
|
|
#if SHADERPASS == SHADERPASS_FORWARD
|
|
#define SHADERPASS_FORWARD_BYPASS_ALPHA_TEST
|
|
#elif SHADERPASS == SHADERPASS_GBUFFER
|
|
#define SHADERPASS_GBUFFER_BYPASS_ALPHA_TEST
|
|
#endif
|
|
#endif
|
|
#endif
|
|
|
|
// Define _DEFERRED_CAPABLE_MATERIAL for shader capable to run in deferred pass
|
|
#if defined(SHADER_LIT) && !defined(_SURFACE_TYPE_TRANSPARENT)
|
|
#define _DEFERRED_CAPABLE_MATERIAL
|
|
#endif
|
|
|
|
// Translate transparent motion vector define
|
|
#if (defined(_TRANSPARENT_WRITES_MOTION_VEC) || defined(_TRANSPARENT_REFRACTIVE_SORT)) && defined(_SURFACE_TYPE_TRANSPARENT)
|
|
#define _WRITE_TRANSPARENT_MOTION_VECTOR
|
|
#endif
|
|
|
|
// -- Graph Properties
|
|
CBUFFER_START(UnityPerMaterial)
|
|
float4 _BaseColor;
|
|
float4 _BaseColorMap_TexelSize;
|
|
float4 _BaseTilingOffset;
|
|
float _BaseTriplanarThreshold;
|
|
float4 _BaseNormalMap_TexelSize;
|
|
float _BaseNormalScale;
|
|
float4 _BaseMaskMap_TexelSize;
|
|
float _BaseMetallic;
|
|
float _BaseAORemapMin;
|
|
float _BaseAORemapMax;
|
|
float _BaseSmoothnessRemapMin;
|
|
float _BaseSmoothnessRemapMax;
|
|
float _USEDYNAMICCOVERTSTATICMASKF;
|
|
float4 _CoverMaskA_TexelSize;
|
|
float _CoverMaskPower;
|
|
float _Cover_Amount;
|
|
float _Cover_Amount_Grow_Speed;
|
|
float3 _CoverDirection;
|
|
float _Cover_Max_Angle;
|
|
float _Cover_Min_Height;
|
|
float _Cover_Min_Height_Blending;
|
|
float4 _CoverBaseColor;
|
|
float4 _CoverBaseColorMap_TexelSize;
|
|
float4 _CoverTilingOffset;
|
|
float _CoverTriplanarThreshold;
|
|
float4 _CoverNormalMap_TexelSize;
|
|
float _CoverNormalScale;
|
|
float _CoverNormalBlendHardness;
|
|
float _CoverHeightMapMin;
|
|
float _CoverHeightMapMax;
|
|
float _CoverHeightMapOffset;
|
|
float _CoverHardness;
|
|
float4 _CoverMaskMap_TexelSize;
|
|
float _CoverMetallic;
|
|
float _CoverAORemapMin;
|
|
float _CoverAORemapMax;
|
|
float _CoverSmoothnessRemapMin;
|
|
float _CoverSmoothnessRemapMax;
|
|
float4 _ShapeNormalMap_TexelSize;
|
|
float _shapeNormalScale;
|
|
float _CovershapeNormalScale;
|
|
float4 _ShapeAO_TexelSize;
|
|
float _ShapeAORemapMin;
|
|
float _ShapeAORemapMax;
|
|
float _CoverShapeAORemapMin;
|
|
float _CoverShapeAORemapMax;
|
|
float4 _DetailMap_TexelSize;
|
|
float4 _DetailTilingOffset;
|
|
float _DetailAlbedoScale;
|
|
float _DetailNormalScale;
|
|
float _DetailSmoothnessScale;
|
|
float _DetailCoverAlbedoScale;
|
|
float _DetailCoverNormalScale;
|
|
float _DetailCoverSmoothnessScale;
|
|
float _CoverMaskRCurvature;
|
|
float _BaseBrightnessCurvMultply;
|
|
float _BaseBrightnessCurvPower;
|
|
float _BaseDarknessCurvMultply;
|
|
float _BaseDarknessCurvPower;
|
|
float _CoverBrightnessCurvMultply;
|
|
float _CoverBrightnessCurvPower;
|
|
float _CoverDarknessCurvMultply;
|
|
float _CoverDarknessCurvPower;
|
|
float4 _WetColor;
|
|
float _WetSmoothness;
|
|
float4 _EmissionColor;
|
|
float _UseShadowThreshold;
|
|
float4 _DoubleSidedConstants;
|
|
UNITY_TEXTURE_STREAMING_DEBUG_VARS;
|
|
float _BlendMode;
|
|
float _EnableBlendModePreserveSpecularLighting;
|
|
float _RayTracing;
|
|
float _RefractionModel;
|
|
float _MaterialID;
|
|
float _MaterialTypeMask;
|
|
CBUFFER_END
|
|
|
|
|
|
// Object and Global properties
|
|
SAMPLER(SamplerState_Linear_Repeat);
|
|
SAMPLER(SamplerState_Linear_Repeat_Aniso8);
|
|
TEXTURE2D(_BaseColorMap);
|
|
SAMPLER(sampler_BaseColorMap);
|
|
TEXTURE2D(_BaseNormalMap);
|
|
SAMPLER(sampler_BaseNormalMap);
|
|
TEXTURE2D(_BaseMaskMap);
|
|
SAMPLER(sampler_BaseMaskMap);
|
|
TEXTURE2D(_CoverMaskA);
|
|
SAMPLER(sampler_CoverMaskA);
|
|
TEXTURE2D(_CoverBaseColorMap);
|
|
SAMPLER(sampler_CoverBaseColorMap);
|
|
TEXTURE2D(_CoverNormalMap);
|
|
SAMPLER(sampler_CoverNormalMap);
|
|
TEXTURE2D(_CoverMaskMap);
|
|
SAMPLER(sampler_CoverMaskMap);
|
|
TEXTURE2D(_ShapeNormalMap);
|
|
SAMPLER(sampler_ShapeNormalMap);
|
|
TEXTURE2D(_ShapeAO);
|
|
SAMPLER(sampler_ShapeAO);
|
|
TEXTURE2D(_DetailMap);
|
|
SAMPLER(sampler_DetailMap);
|
|
|
|
// -- Property used by ScenePickingPass
|
|
#ifdef SCENEPICKINGPASS
|
|
float4 _SelectionID;
|
|
#endif
|
|
|
|
// -- Properties used by SceneSelectionPass
|
|
#ifdef SCENESELECTIONPASS
|
|
int _ObjectId;
|
|
int _PassValue;
|
|
#endif
|
|
|
|
// Includes
|
|
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/Debug/DebugDisplay.hlsl"
|
|
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/Material/Material.hlsl"
|
|
#include "Packages/com.unity.render-pipelines.core/ShaderLibrary/NormalSurfaceGradient.hlsl"
|
|
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/Material/Lit/Lit.hlsl"
|
|
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/Material/BuiltinUtilities.hlsl"
|
|
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/Material/MaterialUtilities.hlsl"
|
|
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/Material/Decal/DecalUtilities.hlsl"
|
|
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/Material/Lit/LitDecalData.hlsl"
|
|
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/ShaderLibrary/ShaderGraphFunctions.hlsl"
|
|
// GraphIncludes: <None>
|
|
|
|
// --------------------------------------------------
|
|
// Structs and Packing
|
|
|
|
struct AttributesMesh
|
|
{
|
|
float3 positionOS : POSITION;
|
|
float3 normalOS : NORMAL;
|
|
float4 tangentOS : TANGENT;
|
|
float4 uv0 : TEXCOORD0;
|
|
float4 color : COLOR;
|
|
#if UNITY_ANY_INSTANCING_ENABLED || defined(ATTRIBUTES_NEED_INSTANCEID)
|
|
uint instanceID : INSTANCEID_SEMANTIC;
|
|
#endif
|
|
};
|
|
struct VaryingsMeshToPS
|
|
{
|
|
SV_POSITION_QUALIFIERS float4 positionCS : SV_POSITION;
|
|
float3 positionRWS;
|
|
float3 normalWS;
|
|
float4 tangentWS;
|
|
float4 texCoord0;
|
|
float4 color;
|
|
#if UNITY_ANY_INSTANCING_ENABLED || defined(VARYINGS_NEED_INSTANCEID)
|
|
uint instanceID : CUSTOM_INSTANCE_ID;
|
|
#endif
|
|
};
|
|
struct VertexDescriptionInputs
|
|
{
|
|
float3 ObjectSpaceNormal;
|
|
float3 ObjectSpaceTangent;
|
|
float3 ObjectSpacePosition;
|
|
};
|
|
struct SurfaceDescriptionInputs
|
|
{
|
|
float3 WorldSpaceNormal;
|
|
float3 TangentSpaceNormal;
|
|
float3 WorldSpaceTangent;
|
|
float3 WorldSpaceBiTangent;
|
|
float3 AbsoluteWorldSpacePosition;
|
|
float4 uv0;
|
|
float4 VertexColor;
|
|
};
|
|
struct PackedVaryingsMeshToPS
|
|
{
|
|
SV_POSITION_QUALIFIERS float4 positionCS : SV_POSITION;
|
|
float4 tangentWS : INTERP0;
|
|
float4 texCoord0 : INTERP1;
|
|
float4 color : INTERP2;
|
|
float3 positionRWS : INTERP3;
|
|
float3 normalWS : INTERP4;
|
|
#if UNITY_ANY_INSTANCING_ENABLED || defined(VARYINGS_NEED_INSTANCEID)
|
|
uint instanceID : CUSTOM_INSTANCE_ID;
|
|
#endif
|
|
};
|
|
|
|
PackedVaryingsMeshToPS PackVaryingsMeshToPS (VaryingsMeshToPS input)
|
|
{
|
|
PackedVaryingsMeshToPS output;
|
|
ZERO_INITIALIZE(PackedVaryingsMeshToPS, output);
|
|
output.positionCS = input.positionCS;
|
|
output.tangentWS.xyzw = input.tangentWS;
|
|
output.texCoord0.xyzw = input.texCoord0;
|
|
output.color.xyzw = input.color;
|
|
output.positionRWS.xyz = input.positionRWS;
|
|
output.normalWS.xyz = input.normalWS;
|
|
#if UNITY_ANY_INSTANCING_ENABLED || defined(VARYINGS_NEED_INSTANCEID)
|
|
output.instanceID = input.instanceID;
|
|
#endif
|
|
return output;
|
|
}
|
|
|
|
VaryingsMeshToPS UnpackVaryingsMeshToPS (PackedVaryingsMeshToPS input)
|
|
{
|
|
VaryingsMeshToPS output;
|
|
output.positionCS = input.positionCS;
|
|
output.tangentWS = input.tangentWS.xyzw;
|
|
output.texCoord0 = input.texCoord0.xyzw;
|
|
output.color = input.color.xyzw;
|
|
output.positionRWS = input.positionRWS.xyz;
|
|
output.normalWS = input.normalWS.xyz;
|
|
#if UNITY_ANY_INSTANCING_ENABLED || defined(VARYINGS_NEED_INSTANCEID)
|
|
output.instanceID = input.instanceID;
|
|
#endif
|
|
return output;
|
|
}
|
|
|
|
|
|
// --------------------------------------------------
|
|
// Graph
|
|
|
|
|
|
// Graph Functions
|
|
|
|
void Unity_Divide_float4(float4 A, float4 B, out float4 Out)
|
|
{
|
|
Out = A / B;
|
|
}
|
|
|
|
void Unity_Combine_float(float R, float G, float B, float A, out float4 RGBA, out float3 RGB, out float2 RG)
|
|
{
|
|
RGBA = float4(R, G, B, A);
|
|
RGB = float3(R, G, B);
|
|
RG = float2(R, G);
|
|
}
|
|
|
|
void Unity_Multiply_float4_float4(float4 A, float4 B, out float4 Out)
|
|
{
|
|
Out = A * B;
|
|
}
|
|
|
|
void Unity_Sign_float3(float3 In, out float3 Out)
|
|
{
|
|
Out = sign(In);
|
|
}
|
|
|
|
void Unity_Multiply_float2_float2(float2 A, float2 B, out float2 Out)
|
|
{
|
|
Out = A * B;
|
|
}
|
|
|
|
void Unity_Absolute_float3(float3 In, out float3 Out)
|
|
{
|
|
Out = abs(In);
|
|
}
|
|
|
|
void Unity_Power_float3(float3 A, float3 B, out float3 Out)
|
|
{
|
|
Out = pow(A, B);
|
|
}
|
|
|
|
void Unity_Multiply_float3_float3(float3 A, float3 B, out float3 Out)
|
|
{
|
|
Out = A * B;
|
|
}
|
|
|
|
void Unity_Multiply_float_float(float A, float B, out float Out)
|
|
{
|
|
Out = A * B;
|
|
}
|
|
|
|
void Unity_Add_float4(float4 A, float4 B, out float4 Out)
|
|
{
|
|
Out = A + B;
|
|
}
|
|
|
|
void Unity_Add_float(float A, float B, out float Out)
|
|
{
|
|
Out = A + B;
|
|
}
|
|
|
|
struct Bindings_TriplanarNM_bc609ed95f52591469ab35dbfe0efcea_float
|
|
{
|
|
float3 WorldSpaceNormal;
|
|
float3 AbsoluteWorldSpacePosition;
|
|
};
|
|
|
|
void SG_TriplanarNM_bc609ed95f52591469ab35dbfe0efcea_float(UnityTexture2D Texture2D_80A3D28F, float Vector1_41461AC9, float Vector1_E4D1C13A, UnitySamplerState _SamplerState, Bindings_TriplanarNM_bc609ed95f52591469ab35dbfe0efcea_float IN, out float4 XYZ_1, out float4 XZ_2, out float4 YZ_3, out float4 XY_4)
|
|
{
|
|
UnityTexture2D _Property_3e01b4d2fc68d48ba3acbba9d5881e59_Out_0_Texture2D = Texture2D_80A3D28F;
|
|
float _Split_89ed63cb625cb3878c183d0b71c03400_R_1_Float = IN.AbsoluteWorldSpacePosition[0];
|
|
float _Split_89ed63cb625cb3878c183d0b71c03400_G_2_Float = IN.AbsoluteWorldSpacePosition[1];
|
|
float _Split_89ed63cb625cb3878c183d0b71c03400_B_3_Float = IN.AbsoluteWorldSpacePosition[2];
|
|
float _Split_89ed63cb625cb3878c183d0b71c03400_A_4_Float = 0;
|
|
float4 _Combine_cf2d04ff119ad88493f6460431765cbb_RGBA_4_Vector4;
|
|
float3 _Combine_cf2d04ff119ad88493f6460431765cbb_RGB_5_Vector3;
|
|
float2 _Combine_cf2d04ff119ad88493f6460431765cbb_RG_6_Vector2;
|
|
Unity_Combine_float(_Split_89ed63cb625cb3878c183d0b71c03400_R_1_Float, _Split_89ed63cb625cb3878c183d0b71c03400_B_3_Float, float(0), float(0), _Combine_cf2d04ff119ad88493f6460431765cbb_RGBA_4_Vector4, _Combine_cf2d04ff119ad88493f6460431765cbb_RGB_5_Vector3, _Combine_cf2d04ff119ad88493f6460431765cbb_RG_6_Vector2);
|
|
float _Property_47988ec10c0c18879d461e00bed806e7_Out_0_Float = Vector1_41461AC9;
|
|
float4 _Multiply_14cec4902d0a00829e4555071a1b8ad1_Out_2_Vector4;
|
|
Unity_Multiply_float4_float4(_Combine_cf2d04ff119ad88493f6460431765cbb_RGBA_4_Vector4, (_Property_47988ec10c0c18879d461e00bed806e7_Out_0_Float.xxxx), _Multiply_14cec4902d0a00829e4555071a1b8ad1_Out_2_Vector4);
|
|
float3 _Sign_b826e0ff2d95ec8cb2b2cbbd7ea2eab6_Out_1_Vector3;
|
|
Unity_Sign_float3(IN.WorldSpaceNormal, _Sign_b826e0ff2d95ec8cb2b2cbbd7ea2eab6_Out_1_Vector3);
|
|
float _Split_742547a7039de986a646d04c157ae549_R_1_Float = _Sign_b826e0ff2d95ec8cb2b2cbbd7ea2eab6_Out_1_Vector3[0];
|
|
float _Split_742547a7039de986a646d04c157ae549_G_2_Float = _Sign_b826e0ff2d95ec8cb2b2cbbd7ea2eab6_Out_1_Vector3[1];
|
|
float _Split_742547a7039de986a646d04c157ae549_B_3_Float = _Sign_b826e0ff2d95ec8cb2b2cbbd7ea2eab6_Out_1_Vector3[2];
|
|
float _Split_742547a7039de986a646d04c157ae549_A_4_Float = 0;
|
|
float2 _Vector2_40a8919e571ec18499de72022c155b38_Out_0_Vector2 = float2(_Split_742547a7039de986a646d04c157ae549_G_2_Float, float(1));
|
|
float2 _Multiply_5fa32af59cdca88389832336b2268bd5_Out_2_Vector2;
|
|
Unity_Multiply_float2_float2((_Multiply_14cec4902d0a00829e4555071a1b8ad1_Out_2_Vector4.xy), _Vector2_40a8919e571ec18499de72022c155b38_Out_0_Vector2, _Multiply_5fa32af59cdca88389832336b2268bd5_Out_2_Vector2);
|
|
UnitySamplerState _Property_544c7fa9dfe54e30a0df9d605340a374_Out_0_SamplerState = _SamplerState;
|
|
float4 _SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_RGBA_0_Vector4 = SAMPLE_TEXTURE2D(_Property_3e01b4d2fc68d48ba3acbba9d5881e59_Out_0_Texture2D.tex, _Property_544c7fa9dfe54e30a0df9d605340a374_Out_0_SamplerState.samplerstate, _Property_3e01b4d2fc68d48ba3acbba9d5881e59_Out_0_Texture2D.GetTransformedUV(_Multiply_5fa32af59cdca88389832336b2268bd5_Out_2_Vector2) );
|
|
float _SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_R_4_Float = _SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_RGBA_0_Vector4.r;
|
|
float _SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_G_5_Float = _SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_RGBA_0_Vector4.g;
|
|
float _SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_B_6_Float = _SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_RGBA_0_Vector4.b;
|
|
float _SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_A_7_Float = _SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_RGBA_0_Vector4.a;
|
|
float3 _Absolute_644b798714827680b39bf5d34f70385f_Out_1_Vector3;
|
|
Unity_Absolute_float3(IN.WorldSpaceNormal, _Absolute_644b798714827680b39bf5d34f70385f_Out_1_Vector3);
|
|
float _Property_adc4c59482221c8aad681c6558728ac9_Out_0_Float = Vector1_E4D1C13A;
|
|
float3 _Power_ee478822a04529849ae8df1636c29fe2_Out_2_Vector3;
|
|
Unity_Power_float3(_Absolute_644b798714827680b39bf5d34f70385f_Out_1_Vector3, (_Property_adc4c59482221c8aad681c6558728ac9_Out_0_Float.xxx), _Power_ee478822a04529849ae8df1636c29fe2_Out_2_Vector3);
|
|
float3 _Multiply_b386a937554d73828e437d126d69608b_Out_2_Vector3;
|
|
Unity_Multiply_float3_float3(_Power_ee478822a04529849ae8df1636c29fe2_Out_2_Vector3, _Power_ee478822a04529849ae8df1636c29fe2_Out_2_Vector3, _Multiply_b386a937554d73828e437d126d69608b_Out_2_Vector3);
|
|
float _Split_ae83014fcbd9f7879a0b91fa66dc9718_R_1_Float = _Multiply_b386a937554d73828e437d126d69608b_Out_2_Vector3[0];
|
|
float _Split_ae83014fcbd9f7879a0b91fa66dc9718_G_2_Float = _Multiply_b386a937554d73828e437d126d69608b_Out_2_Vector3[1];
|
|
float _Split_ae83014fcbd9f7879a0b91fa66dc9718_B_3_Float = _Multiply_b386a937554d73828e437d126d69608b_Out_2_Vector3[2];
|
|
float _Split_ae83014fcbd9f7879a0b91fa66dc9718_A_4_Float = 0;
|
|
float4 _Multiply_2e1040ca9c98d085ace76ee93f094039_Out_2_Vector4;
|
|
Unity_Multiply_float4_float4(_SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_RGBA_0_Vector4, (_Split_ae83014fcbd9f7879a0b91fa66dc9718_G_2_Float.xxxx), _Multiply_2e1040ca9c98d085ace76ee93f094039_Out_2_Vector4);
|
|
float4 _Combine_192c2c4a69be588b90ca005a32e22552_RGBA_4_Vector4;
|
|
float3 _Combine_192c2c4a69be588b90ca005a32e22552_RGB_5_Vector3;
|
|
float2 _Combine_192c2c4a69be588b90ca005a32e22552_RG_6_Vector2;
|
|
Unity_Combine_float(_Split_89ed63cb625cb3878c183d0b71c03400_R_1_Float, _Split_89ed63cb625cb3878c183d0b71c03400_G_2_Float, float(0), float(0), _Combine_192c2c4a69be588b90ca005a32e22552_RGBA_4_Vector4, _Combine_192c2c4a69be588b90ca005a32e22552_RGB_5_Vector3, _Combine_192c2c4a69be588b90ca005a32e22552_RG_6_Vector2);
|
|
float4 _Multiply_138240d0d4846e87b0febabec0d6891b_Out_2_Vector4;
|
|
Unity_Multiply_float4_float4(_Combine_192c2c4a69be588b90ca005a32e22552_RGBA_4_Vector4, (_Property_47988ec10c0c18879d461e00bed806e7_Out_0_Float.xxxx), _Multiply_138240d0d4846e87b0febabec0d6891b_Out_2_Vector4);
|
|
float _Multiply_014402ded5a3988a8c18ba07636ea5a7_Out_2_Float;
|
|
Unity_Multiply_float_float(_Split_742547a7039de986a646d04c157ae549_B_3_Float, -1, _Multiply_014402ded5a3988a8c18ba07636ea5a7_Out_2_Float);
|
|
float2 _Vector2_caa25d55d456a58982bdfc39b1b43f3f_Out_0_Vector2 = float2(_Multiply_014402ded5a3988a8c18ba07636ea5a7_Out_2_Float, float(1));
|
|
float2 _Multiply_a67201b6e1a0a28c98cd9d06e8b09543_Out_2_Vector2;
|
|
Unity_Multiply_float2_float2((_Multiply_138240d0d4846e87b0febabec0d6891b_Out_2_Vector4.xy), _Vector2_caa25d55d456a58982bdfc39b1b43f3f_Out_0_Vector2, _Multiply_a67201b6e1a0a28c98cd9d06e8b09543_Out_2_Vector2);
|
|
float4 _SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_RGBA_0_Vector4 = SAMPLE_TEXTURE2D(_Property_3e01b4d2fc68d48ba3acbba9d5881e59_Out_0_Texture2D.tex, _Property_544c7fa9dfe54e30a0df9d605340a374_Out_0_SamplerState.samplerstate, _Property_3e01b4d2fc68d48ba3acbba9d5881e59_Out_0_Texture2D.GetTransformedUV(_Multiply_a67201b6e1a0a28c98cd9d06e8b09543_Out_2_Vector2) );
|
|
float _SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_R_4_Float = _SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_RGBA_0_Vector4.r;
|
|
float _SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_G_5_Float = _SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_RGBA_0_Vector4.g;
|
|
float _SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_B_6_Float = _SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_RGBA_0_Vector4.b;
|
|
float _SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_A_7_Float = _SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_RGBA_0_Vector4.a;
|
|
float4 _Multiply_7bb4009c92b108849ac6ca92bc1442f2_Out_2_Vector4;
|
|
Unity_Multiply_float4_float4(_SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_RGBA_0_Vector4, (_Split_ae83014fcbd9f7879a0b91fa66dc9718_B_3_Float.xxxx), _Multiply_7bb4009c92b108849ac6ca92bc1442f2_Out_2_Vector4);
|
|
float4 _Combine_1e9ffdba42d6918fb7a4b185f1585d2a_RGBA_4_Vector4;
|
|
float3 _Combine_1e9ffdba42d6918fb7a4b185f1585d2a_RGB_5_Vector3;
|
|
float2 _Combine_1e9ffdba42d6918fb7a4b185f1585d2a_RG_6_Vector2;
|
|
Unity_Combine_float(_Split_89ed63cb625cb3878c183d0b71c03400_B_3_Float, _Split_89ed63cb625cb3878c183d0b71c03400_G_2_Float, float(0), float(0), _Combine_1e9ffdba42d6918fb7a4b185f1585d2a_RGBA_4_Vector4, _Combine_1e9ffdba42d6918fb7a4b185f1585d2a_RGB_5_Vector3, _Combine_1e9ffdba42d6918fb7a4b185f1585d2a_RG_6_Vector2);
|
|
float4 _Multiply_2c0864423b014f8b8af8523f68cbb63c_Out_2_Vector4;
|
|
Unity_Multiply_float4_float4(_Combine_1e9ffdba42d6918fb7a4b185f1585d2a_RGBA_4_Vector4, (_Property_47988ec10c0c18879d461e00bed806e7_Out_0_Float.xxxx), _Multiply_2c0864423b014f8b8af8523f68cbb63c_Out_2_Vector4);
|
|
float2 _Vector2_54dfd40df2fc78809955dd272f2cf0c3_Out_0_Vector2 = float2(_Split_742547a7039de986a646d04c157ae549_R_1_Float, float(1));
|
|
float2 _Multiply_addbd5fcede95f80bbb806c94e49ef63_Out_2_Vector2;
|
|
Unity_Multiply_float2_float2((_Multiply_2c0864423b014f8b8af8523f68cbb63c_Out_2_Vector4.xy), _Vector2_54dfd40df2fc78809955dd272f2cf0c3_Out_0_Vector2, _Multiply_addbd5fcede95f80bbb806c94e49ef63_Out_2_Vector2);
|
|
float4 _SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_RGBA_0_Vector4 = SAMPLE_TEXTURE2D(_Property_3e01b4d2fc68d48ba3acbba9d5881e59_Out_0_Texture2D.tex, _Property_544c7fa9dfe54e30a0df9d605340a374_Out_0_SamplerState.samplerstate, _Property_3e01b4d2fc68d48ba3acbba9d5881e59_Out_0_Texture2D.GetTransformedUV(_Multiply_addbd5fcede95f80bbb806c94e49ef63_Out_2_Vector2) );
|
|
float _SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_R_4_Float = _SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_RGBA_0_Vector4.r;
|
|
float _SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_G_5_Float = _SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_RGBA_0_Vector4.g;
|
|
float _SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_B_6_Float = _SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_RGBA_0_Vector4.b;
|
|
float _SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_A_7_Float = _SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_RGBA_0_Vector4.a;
|
|
float4 _Multiply_77818c22e359fc8cbb7dd20216a8db72_Out_2_Vector4;
|
|
Unity_Multiply_float4_float4(_SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_RGBA_0_Vector4, (_Split_ae83014fcbd9f7879a0b91fa66dc9718_R_1_Float.xxxx), _Multiply_77818c22e359fc8cbb7dd20216a8db72_Out_2_Vector4);
|
|
float4 _Add_769d9ee909c9238dbbf72d2800a2f268_Out_2_Vector4;
|
|
Unity_Add_float4(_Multiply_7bb4009c92b108849ac6ca92bc1442f2_Out_2_Vector4, _Multiply_77818c22e359fc8cbb7dd20216a8db72_Out_2_Vector4, _Add_769d9ee909c9238dbbf72d2800a2f268_Out_2_Vector4);
|
|
float4 _Add_14295f72880e4b87a1baf1ced943ac40_Out_2_Vector4;
|
|
Unity_Add_float4(_Multiply_2e1040ca9c98d085ace76ee93f094039_Out_2_Vector4, _Add_769d9ee909c9238dbbf72d2800a2f268_Out_2_Vector4, _Add_14295f72880e4b87a1baf1ced943ac40_Out_2_Vector4);
|
|
float _Add_e59af300bba2498db32eac1412123447_Out_2_Float;
|
|
Unity_Add_float(_Split_ae83014fcbd9f7879a0b91fa66dc9718_R_1_Float, _Split_ae83014fcbd9f7879a0b91fa66dc9718_G_2_Float, _Add_e59af300bba2498db32eac1412123447_Out_2_Float);
|
|
float _Add_e855069f047fae8ea9027d56acb61e56_Out_2_Float;
|
|
Unity_Add_float(_Add_e59af300bba2498db32eac1412123447_Out_2_Float, _Split_ae83014fcbd9f7879a0b91fa66dc9718_B_3_Float, _Add_e855069f047fae8ea9027d56acb61e56_Out_2_Float);
|
|
float4 _Divide_91ae4b94f1d9b78e99d0472293b8098c_Out_2_Vector4;
|
|
Unity_Divide_float4(_Add_14295f72880e4b87a1baf1ced943ac40_Out_2_Vector4, (_Add_e855069f047fae8ea9027d56acb61e56_Out_2_Float.xxxx), _Divide_91ae4b94f1d9b78e99d0472293b8098c_Out_2_Vector4);
|
|
XYZ_1 = _Divide_91ae4b94f1d9b78e99d0472293b8098c_Out_2_Vector4;
|
|
XZ_2 = _SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_RGBA_0_Vector4;
|
|
YZ_3 = _SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_RGBA_0_Vector4;
|
|
XY_4 = _SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_RGBA_0_Vector4;
|
|
}
|
|
|
|
void Unity_Clamp_float(float In, float Min, float Max, out float Out)
|
|
{
|
|
Out = clamp(In, Min, Max);
|
|
}
|
|
|
|
void Unity_Absolute_float(float In, out float Out)
|
|
{
|
|
Out = abs(In);
|
|
}
|
|
|
|
void Unity_Power_float(float A, float B, out float Out)
|
|
{
|
|
Out = pow(A, B);
|
|
}
|
|
|
|
void Unity_Clamp_float4(float4 In, float4 Min, float4 Max, out float4 Out)
|
|
{
|
|
Out = clamp(In, Min, Max);
|
|
}
|
|
|
|
void Unity_Branch_float4(float Predicate, float4 True, float4 False, out float4 Out)
|
|
{
|
|
Out = Predicate ? True : False;
|
|
}
|
|
|
|
void Unity_TilingAndOffset_float(float2 UV, float2 Tiling, float2 Offset, out float2 Out)
|
|
{
|
|
Out = UV * Tiling + Offset;
|
|
}
|
|
|
|
void Unity_Saturate_float(float In, out float Out)
|
|
{
|
|
Out = saturate(In);
|
|
}
|
|
|
|
void Unity_SquareRoot_float4(float4 In, out float4 Out)
|
|
{
|
|
Out = sqrt(In);
|
|
}
|
|
|
|
void Unity_Sign_float(float In, out float Out)
|
|
{
|
|
Out = sign(In);
|
|
}
|
|
|
|
void Unity_Ceiling_float(float In, out float Out)
|
|
{
|
|
Out = ceil(In);
|
|
}
|
|
|
|
void Unity_Lerp_float4(float4 A, float4 B, float4 T, out float4 Out)
|
|
{
|
|
Out = lerp(A, B, T);
|
|
}
|
|
|
|
struct Bindings_BlendOverlayBaseColor_acdb3dfca72bd6b42bbc35f4613331a2_float
|
|
{
|
|
};
|
|
|
|
void SG_BlendOverlayBaseColor_acdb3dfca72bd6b42bbc35f4613331a2_float(float4 Color_9AA111D3, float Vector1_FBE622A2, float Vector1_8C15C351, Bindings_BlendOverlayBaseColor_acdb3dfca72bd6b42bbc35f4613331a2_float IN, out float3 OutVector4_1)
|
|
{
|
|
float4 _Property_012510d774fb7f8b860f5270dca4500f_Out_0_Vector4 = Color_9AA111D3;
|
|
float4 _SquareRoot_c2c57d0223a9538aa9240890c3cacb0c_Out_1_Vector4;
|
|
Unity_SquareRoot_float4(_Property_012510d774fb7f8b860f5270dca4500f_Out_0_Vector4, _SquareRoot_c2c57d0223a9538aa9240890c3cacb0c_Out_1_Vector4);
|
|
float _Property_a00e29241d12f983b30177515b367ec9_Out_0_Float = Vector1_FBE622A2;
|
|
float _Sign_343a45ede7349283a681c6bd9998fd8e_Out_1_Float;
|
|
Unity_Sign_float(_Property_a00e29241d12f983b30177515b367ec9_Out_0_Float, _Sign_343a45ede7349283a681c6bd9998fd8e_Out_1_Float);
|
|
float _Add_681019b8f5d3d68bb482d419c9fc61a9_Out_2_Float;
|
|
Unity_Add_float(_Sign_343a45ede7349283a681c6bd9998fd8e_Out_1_Float, float(1), _Add_681019b8f5d3d68bb482d419c9fc61a9_Out_2_Float);
|
|
float _Multiply_e8f4cb722712a880ac0db6c7461427f7_Out_2_Float;
|
|
Unity_Multiply_float_float(_Add_681019b8f5d3d68bb482d419c9fc61a9_Out_2_Float, 0.5, _Multiply_e8f4cb722712a880ac0db6c7461427f7_Out_2_Float);
|
|
float _Ceiling_95ad15988aa9b98184875fa754feae01_Out_1_Float;
|
|
Unity_Ceiling_float(_Multiply_e8f4cb722712a880ac0db6c7461427f7_Out_2_Float, _Ceiling_95ad15988aa9b98184875fa754feae01_Out_1_Float);
|
|
float _Property_2db1c747a05ee284a8b00076062f91a4_Out_0_Float = Vector1_8C15C351;
|
|
float _Multiply_9564ecda5193bc8286d9ff771c9226cd_Out_2_Float;
|
|
Unity_Multiply_float_float(_Property_2db1c747a05ee284a8b00076062f91a4_Out_0_Float, _Property_2db1c747a05ee284a8b00076062f91a4_Out_0_Float, _Multiply_9564ecda5193bc8286d9ff771c9226cd_Out_2_Float);
|
|
float4 _Lerp_b3cdb01fc3c5b988ac9b184943bf7c01_Out_3_Vector4;
|
|
Unity_Lerp_float4(_SquareRoot_c2c57d0223a9538aa9240890c3cacb0c_Out_1_Vector4, (_Ceiling_95ad15988aa9b98184875fa754feae01_Out_1_Float.xxxx), (_Multiply_9564ecda5193bc8286d9ff771c9226cd_Out_2_Float.xxxx), _Lerp_b3cdb01fc3c5b988ac9b184943bf7c01_Out_3_Vector4);
|
|
float4 _Multiply_39d1daff98488f8ea2cd794ad4f20926_Out_2_Vector4;
|
|
Unity_Multiply_float4_float4(_Lerp_b3cdb01fc3c5b988ac9b184943bf7c01_Out_3_Vector4, _Lerp_b3cdb01fc3c5b988ac9b184943bf7c01_Out_3_Vector4, _Multiply_39d1daff98488f8ea2cd794ad4f20926_Out_2_Vector4);
|
|
OutVector4_1 = (_Multiply_39d1daff98488f8ea2cd794ad4f20926_Out_2_Vector4.xyz);
|
|
}
|
|
|
|
void Unity_Add_float2(float2 A, float2 B, out float2 Out)
|
|
{
|
|
Out = A + B;
|
|
}
|
|
|
|
void Unity_DotProduct_float2(float2 A, float2 B, out float Out)
|
|
{
|
|
Out = dot(A, B);
|
|
}
|
|
|
|
void Unity_OneMinus_float(float In, out float Out)
|
|
{
|
|
Out = 1 - In;
|
|
}
|
|
|
|
void Unity_SquareRoot_float(float In, out float Out)
|
|
{
|
|
Out = sqrt(In);
|
|
}
|
|
|
|
void Unity_Add_float3(float3 A, float3 B, out float3 Out)
|
|
{
|
|
Out = A + B;
|
|
}
|
|
|
|
void Unity_Divide_float3(float3 A, float3 B, out float3 Out)
|
|
{
|
|
Out = A / B;
|
|
}
|
|
|
|
void Unity_Normalize_float3(float3 In, out float3 Out)
|
|
{
|
|
Out = normalize(In);
|
|
}
|
|
|
|
struct Bindings_TriplanarNMn_059da9746584140498cd018db3c76047_float
|
|
{
|
|
float3 WorldSpaceNormal;
|
|
float3 WorldSpaceTangent;
|
|
float3 WorldSpaceBiTangent;
|
|
float3 AbsoluteWorldSpacePosition;
|
|
};
|
|
|
|
void SG_TriplanarNMn_059da9746584140498cd018db3c76047_float(UnityTexture2D Texture2D_80A3D28F, float Vector1_41461AC9, float Vector1_E4D1C13A, UnitySamplerState _SamplerState, Bindings_TriplanarNMn_059da9746584140498cd018db3c76047_float IN, out float4 XYZ_1, out float4 XZ_2, out float4 YZ_3, out float4 XY_4)
|
|
{
|
|
UnityTexture2D _Property_3e01b4d2fc68d48ba3acbba9d5881e59_Out_0_Texture2D = Texture2D_80A3D28F;
|
|
float _Split_89ed63cb625cb3878c183d0b71c03400_R_1_Float = IN.AbsoluteWorldSpacePosition[0];
|
|
float _Split_89ed63cb625cb3878c183d0b71c03400_G_2_Float = IN.AbsoluteWorldSpacePosition[1];
|
|
float _Split_89ed63cb625cb3878c183d0b71c03400_B_3_Float = IN.AbsoluteWorldSpacePosition[2];
|
|
float _Split_89ed63cb625cb3878c183d0b71c03400_A_4_Float = 0;
|
|
float4 _Combine_cf2d04ff119ad88493f6460431765cbb_RGBA_4_Vector4;
|
|
float3 _Combine_cf2d04ff119ad88493f6460431765cbb_RGB_5_Vector3;
|
|
float2 _Combine_cf2d04ff119ad88493f6460431765cbb_RG_6_Vector2;
|
|
Unity_Combine_float(_Split_89ed63cb625cb3878c183d0b71c03400_R_1_Float, _Split_89ed63cb625cb3878c183d0b71c03400_B_3_Float, float(0), float(0), _Combine_cf2d04ff119ad88493f6460431765cbb_RGBA_4_Vector4, _Combine_cf2d04ff119ad88493f6460431765cbb_RGB_5_Vector3, _Combine_cf2d04ff119ad88493f6460431765cbb_RG_6_Vector2);
|
|
float _Property_47988ec10c0c18879d461e00bed806e7_Out_0_Float = Vector1_41461AC9;
|
|
float4 _Multiply_14cec4902d0a00829e4555071a1b8ad1_Out_2_Vector4;
|
|
Unity_Multiply_float4_float4(_Combine_cf2d04ff119ad88493f6460431765cbb_RGBA_4_Vector4, (_Property_47988ec10c0c18879d461e00bed806e7_Out_0_Float.xxxx), _Multiply_14cec4902d0a00829e4555071a1b8ad1_Out_2_Vector4);
|
|
float3 _Sign_3a6ebf59931cf08cb0482e0144ddac24_Out_1_Vector3;
|
|
Unity_Sign_float3(IN.WorldSpaceNormal, _Sign_3a6ebf59931cf08cb0482e0144ddac24_Out_1_Vector3);
|
|
float _Split_6299d4ddcc4c74828aea40a46fdb896e_R_1_Float = _Sign_3a6ebf59931cf08cb0482e0144ddac24_Out_1_Vector3[0];
|
|
float _Split_6299d4ddcc4c74828aea40a46fdb896e_G_2_Float = _Sign_3a6ebf59931cf08cb0482e0144ddac24_Out_1_Vector3[1];
|
|
float _Split_6299d4ddcc4c74828aea40a46fdb896e_B_3_Float = _Sign_3a6ebf59931cf08cb0482e0144ddac24_Out_1_Vector3[2];
|
|
float _Split_6299d4ddcc4c74828aea40a46fdb896e_A_4_Float = 0;
|
|
float2 _Vector2_b76cb1842101e58b9e636d49b075c612_Out_0_Vector2 = float2(_Split_6299d4ddcc4c74828aea40a46fdb896e_G_2_Float, float(1));
|
|
float2 _Multiply_a87753ad90594382bf3a3a95abbadbc8_Out_2_Vector2;
|
|
Unity_Multiply_float2_float2((_Multiply_14cec4902d0a00829e4555071a1b8ad1_Out_2_Vector4.xy), _Vector2_b76cb1842101e58b9e636d49b075c612_Out_0_Vector2, _Multiply_a87753ad90594382bf3a3a95abbadbc8_Out_2_Vector2);
|
|
UnitySamplerState _Property_8a2b8589cd3a42a1879a29c28e4f711f_Out_0_SamplerState = _SamplerState;
|
|
float4 _SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_RGBA_0_Vector4 = SAMPLE_TEXTURE2D(_Property_3e01b4d2fc68d48ba3acbba9d5881e59_Out_0_Texture2D.tex, _Property_8a2b8589cd3a42a1879a29c28e4f711f_Out_0_SamplerState.samplerstate, _Property_3e01b4d2fc68d48ba3acbba9d5881e59_Out_0_Texture2D.GetTransformedUV(_Multiply_a87753ad90594382bf3a3a95abbadbc8_Out_2_Vector2) );
|
|
_SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_RGBA_0_Vector4.rgb = UnpackNormal(_SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_RGBA_0_Vector4);
|
|
float _SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_R_4_Float = _SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_RGBA_0_Vector4.r;
|
|
float _SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_G_5_Float = _SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_RGBA_0_Vector4.g;
|
|
float _SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_B_6_Float = _SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_RGBA_0_Vector4.b;
|
|
float _SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_A_7_Float = _SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_RGBA_0_Vector4.a;
|
|
float2 _Vector2_ad6bd100e273d78fa409a30a77bfa2cc_Out_0_Vector2 = float2(_SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_R_4_Float, _SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_G_5_Float);
|
|
float2 _Multiply_31e8db88ee20c985a9850d1a58f3282b_Out_2_Vector2;
|
|
Unity_Multiply_float2_float2(_Vector2_ad6bd100e273d78fa409a30a77bfa2cc_Out_0_Vector2, _Vector2_b76cb1842101e58b9e636d49b075c612_Out_0_Vector2, _Multiply_31e8db88ee20c985a9850d1a58f3282b_Out_2_Vector2);
|
|
float _Split_5ed44bf2eca0868f81eb18100f49d1fa_R_1_Float = IN.WorldSpaceNormal[0];
|
|
float _Split_5ed44bf2eca0868f81eb18100f49d1fa_G_2_Float = IN.WorldSpaceNormal[1];
|
|
float _Split_5ed44bf2eca0868f81eb18100f49d1fa_B_3_Float = IN.WorldSpaceNormal[2];
|
|
float _Split_5ed44bf2eca0868f81eb18100f49d1fa_A_4_Float = 0;
|
|
float2 _Vector2_70e5837843f28b8b9d64cada3697bd5a_Out_0_Vector2 = float2(_Split_5ed44bf2eca0868f81eb18100f49d1fa_R_1_Float, _Split_5ed44bf2eca0868f81eb18100f49d1fa_B_3_Float);
|
|
float2 _Add_1145b2f896593d80aa864a34e6702562_Out_2_Vector2;
|
|
Unity_Add_float2(_Multiply_31e8db88ee20c985a9850d1a58f3282b_Out_2_Vector2, _Vector2_70e5837843f28b8b9d64cada3697bd5a_Out_0_Vector2, _Add_1145b2f896593d80aa864a34e6702562_Out_2_Vector2);
|
|
float _Split_2bc77ca2d17bd78cb2383770ce50b179_R_1_Float = _Add_1145b2f896593d80aa864a34e6702562_Out_2_Vector2[0];
|
|
float _Split_2bc77ca2d17bd78cb2383770ce50b179_G_2_Float = _Add_1145b2f896593d80aa864a34e6702562_Out_2_Vector2[1];
|
|
float _Split_2bc77ca2d17bd78cb2383770ce50b179_B_3_Float = 0;
|
|
float _Split_2bc77ca2d17bd78cb2383770ce50b179_A_4_Float = 0;
|
|
float _Multiply_e4fe778b81456d819c52bb414cd95968_Out_2_Float;
|
|
Unity_Multiply_float_float(_SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_B_6_Float, _Split_5ed44bf2eca0868f81eb18100f49d1fa_G_2_Float, _Multiply_e4fe778b81456d819c52bb414cd95968_Out_2_Float);
|
|
float3 _Vector3_08f62c5c01619e849f1a7d85a44531ac_Out_0_Vector3 = float3(_Split_2bc77ca2d17bd78cb2383770ce50b179_R_1_Float, _Multiply_e4fe778b81456d819c52bb414cd95968_Out_2_Float, _Split_2bc77ca2d17bd78cb2383770ce50b179_G_2_Float);
|
|
float3 _Absolute_644b798714827680b39bf5d34f70385f_Out_1_Vector3;
|
|
Unity_Absolute_float3(IN.WorldSpaceNormal, _Absolute_644b798714827680b39bf5d34f70385f_Out_1_Vector3);
|
|
float _Property_adc4c59482221c8aad681c6558728ac9_Out_0_Float = Vector1_E4D1C13A;
|
|
float3 _Power_ee478822a04529849ae8df1636c29fe2_Out_2_Vector3;
|
|
Unity_Power_float3(_Absolute_644b798714827680b39bf5d34f70385f_Out_1_Vector3, (_Property_adc4c59482221c8aad681c6558728ac9_Out_0_Float.xxx), _Power_ee478822a04529849ae8df1636c29fe2_Out_2_Vector3);
|
|
float3 _Multiply_b386a937554d73828e437d126d69608b_Out_2_Vector3;
|
|
Unity_Multiply_float3_float3(_Power_ee478822a04529849ae8df1636c29fe2_Out_2_Vector3, _Power_ee478822a04529849ae8df1636c29fe2_Out_2_Vector3, _Multiply_b386a937554d73828e437d126d69608b_Out_2_Vector3);
|
|
float _Split_ae83014fcbd9f7879a0b91fa66dc9718_R_1_Float = _Multiply_b386a937554d73828e437d126d69608b_Out_2_Vector3[0];
|
|
float _Split_ae83014fcbd9f7879a0b91fa66dc9718_G_2_Float = _Multiply_b386a937554d73828e437d126d69608b_Out_2_Vector3[1];
|
|
float _Split_ae83014fcbd9f7879a0b91fa66dc9718_B_3_Float = _Multiply_b386a937554d73828e437d126d69608b_Out_2_Vector3[2];
|
|
float _Split_ae83014fcbd9f7879a0b91fa66dc9718_A_4_Float = 0;
|
|
float3 _Multiply_2e1040ca9c98d085ace76ee93f094039_Out_2_Vector3;
|
|
Unity_Multiply_float3_float3(_Vector3_08f62c5c01619e849f1a7d85a44531ac_Out_0_Vector3, (_Split_ae83014fcbd9f7879a0b91fa66dc9718_G_2_Float.xxx), _Multiply_2e1040ca9c98d085ace76ee93f094039_Out_2_Vector3);
|
|
float4 _Combine_192c2c4a69be588b90ca005a32e22552_RGBA_4_Vector4;
|
|
float3 _Combine_192c2c4a69be588b90ca005a32e22552_RGB_5_Vector3;
|
|
float2 _Combine_192c2c4a69be588b90ca005a32e22552_RG_6_Vector2;
|
|
Unity_Combine_float(_Split_89ed63cb625cb3878c183d0b71c03400_R_1_Float, _Split_89ed63cb625cb3878c183d0b71c03400_G_2_Float, float(0), float(0), _Combine_192c2c4a69be588b90ca005a32e22552_RGBA_4_Vector4, _Combine_192c2c4a69be588b90ca005a32e22552_RGB_5_Vector3, _Combine_192c2c4a69be588b90ca005a32e22552_RG_6_Vector2);
|
|
float4 _Multiply_138240d0d4846e87b0febabec0d6891b_Out_2_Vector4;
|
|
Unity_Multiply_float4_float4(_Combine_192c2c4a69be588b90ca005a32e22552_RGBA_4_Vector4, (_Property_47988ec10c0c18879d461e00bed806e7_Out_0_Float.xxxx), _Multiply_138240d0d4846e87b0febabec0d6891b_Out_2_Vector4);
|
|
float _Multiply_de711f4a4614bd89a463b53374cf4036_Out_2_Float;
|
|
Unity_Multiply_float_float(_Split_6299d4ddcc4c74828aea40a46fdb896e_B_3_Float, -1, _Multiply_de711f4a4614bd89a463b53374cf4036_Out_2_Float);
|
|
float2 _Vector2_4ed33f0c73b2698fa6f3c1b77fe76808_Out_0_Vector2 = float2(_Multiply_de711f4a4614bd89a463b53374cf4036_Out_2_Float, float(1));
|
|
float2 _Multiply_2af6058cc6ccb88caefd2799bb5941e8_Out_2_Vector2;
|
|
Unity_Multiply_float2_float2((_Multiply_138240d0d4846e87b0febabec0d6891b_Out_2_Vector4.xy), _Vector2_4ed33f0c73b2698fa6f3c1b77fe76808_Out_0_Vector2, _Multiply_2af6058cc6ccb88caefd2799bb5941e8_Out_2_Vector2);
|
|
float4 _SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_RGBA_0_Vector4 = SAMPLE_TEXTURE2D(_Property_3e01b4d2fc68d48ba3acbba9d5881e59_Out_0_Texture2D.tex, _Property_8a2b8589cd3a42a1879a29c28e4f711f_Out_0_SamplerState.samplerstate, _Property_3e01b4d2fc68d48ba3acbba9d5881e59_Out_0_Texture2D.GetTransformedUV(_Multiply_2af6058cc6ccb88caefd2799bb5941e8_Out_2_Vector2) );
|
|
_SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_RGBA_0_Vector4.rgb = UnpackNormal(_SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_RGBA_0_Vector4);
|
|
float _SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_R_4_Float = _SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_RGBA_0_Vector4.r;
|
|
float _SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_G_5_Float = _SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_RGBA_0_Vector4.g;
|
|
float _SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_B_6_Float = _SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_RGBA_0_Vector4.b;
|
|
float _SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_A_7_Float = _SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_RGBA_0_Vector4.a;
|
|
float2 _Vector2_fe9aedd4528c7486ada4abdca0b0944e_Out_0_Vector2 = float2(_SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_R_4_Float, _SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_G_5_Float);
|
|
float2 _Multiply_02b9b4665ad9918d8721bcaddc82f06f_Out_2_Vector2;
|
|
Unity_Multiply_float2_float2(_Vector2_fe9aedd4528c7486ada4abdca0b0944e_Out_0_Vector2, _Vector2_4ed33f0c73b2698fa6f3c1b77fe76808_Out_0_Vector2, _Multiply_02b9b4665ad9918d8721bcaddc82f06f_Out_2_Vector2);
|
|
float2 _Vector2_a74a85274da15181abb63cc5e8df0de1_Out_0_Vector2 = float2(_Split_5ed44bf2eca0868f81eb18100f49d1fa_R_1_Float, _Split_5ed44bf2eca0868f81eb18100f49d1fa_G_2_Float);
|
|
float2 _Add_b227c84042055e8faa1a9fdc69529707_Out_2_Vector2;
|
|
Unity_Add_float2(_Multiply_02b9b4665ad9918d8721bcaddc82f06f_Out_2_Vector2, _Vector2_a74a85274da15181abb63cc5e8df0de1_Out_0_Vector2, _Add_b227c84042055e8faa1a9fdc69529707_Out_2_Vector2);
|
|
float _Split_2cfb9eacd8762483941459cdf28bda97_R_1_Float = _Add_b227c84042055e8faa1a9fdc69529707_Out_2_Vector2[0];
|
|
float _Split_2cfb9eacd8762483941459cdf28bda97_G_2_Float = _Add_b227c84042055e8faa1a9fdc69529707_Out_2_Vector2[1];
|
|
float _Split_2cfb9eacd8762483941459cdf28bda97_B_3_Float = 0;
|
|
float _Split_2cfb9eacd8762483941459cdf28bda97_A_4_Float = 0;
|
|
float _Multiply_1d65ce08ce672087879125f2e13c4004_Out_2_Float;
|
|
Unity_Multiply_float_float(_SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_B_6_Float, _Split_5ed44bf2eca0868f81eb18100f49d1fa_B_3_Float, _Multiply_1d65ce08ce672087879125f2e13c4004_Out_2_Float);
|
|
float3 _Vector3_ba6cfb4671e8c58f9b41ea1dc23102ca_Out_0_Vector3 = float3(_Split_2cfb9eacd8762483941459cdf28bda97_R_1_Float, _Split_2cfb9eacd8762483941459cdf28bda97_G_2_Float, _Multiply_1d65ce08ce672087879125f2e13c4004_Out_2_Float);
|
|
float3 _Multiply_7bb4009c92b108849ac6ca92bc1442f2_Out_2_Vector3;
|
|
Unity_Multiply_float3_float3(_Vector3_ba6cfb4671e8c58f9b41ea1dc23102ca_Out_0_Vector3, (_Split_ae83014fcbd9f7879a0b91fa66dc9718_B_3_Float.xxx), _Multiply_7bb4009c92b108849ac6ca92bc1442f2_Out_2_Vector3);
|
|
float4 _Combine_1e9ffdba42d6918fb7a4b185f1585d2a_RGBA_4_Vector4;
|
|
float3 _Combine_1e9ffdba42d6918fb7a4b185f1585d2a_RGB_5_Vector3;
|
|
float2 _Combine_1e9ffdba42d6918fb7a4b185f1585d2a_RG_6_Vector2;
|
|
Unity_Combine_float(_Split_89ed63cb625cb3878c183d0b71c03400_B_3_Float, _Split_89ed63cb625cb3878c183d0b71c03400_G_2_Float, float(0), float(0), _Combine_1e9ffdba42d6918fb7a4b185f1585d2a_RGBA_4_Vector4, _Combine_1e9ffdba42d6918fb7a4b185f1585d2a_RGB_5_Vector3, _Combine_1e9ffdba42d6918fb7a4b185f1585d2a_RG_6_Vector2);
|
|
float4 _Multiply_2c0864423b014f8b8af8523f68cbb63c_Out_2_Vector4;
|
|
Unity_Multiply_float4_float4(_Combine_1e9ffdba42d6918fb7a4b185f1585d2a_RGBA_4_Vector4, (_Property_47988ec10c0c18879d461e00bed806e7_Out_0_Float.xxxx), _Multiply_2c0864423b014f8b8af8523f68cbb63c_Out_2_Vector4);
|
|
float2 _Vector2_a1e23e0f921b6484818f009a2b12a5ba_Out_0_Vector2 = float2(_Split_6299d4ddcc4c74828aea40a46fdb896e_R_1_Float, float(1));
|
|
float2 _Multiply_862402885a49f18cb87278ab53bc6744_Out_2_Vector2;
|
|
Unity_Multiply_float2_float2((_Multiply_2c0864423b014f8b8af8523f68cbb63c_Out_2_Vector4.xy), _Vector2_a1e23e0f921b6484818f009a2b12a5ba_Out_0_Vector2, _Multiply_862402885a49f18cb87278ab53bc6744_Out_2_Vector2);
|
|
float4 _SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_RGBA_0_Vector4 = SAMPLE_TEXTURE2D(_Property_3e01b4d2fc68d48ba3acbba9d5881e59_Out_0_Texture2D.tex, _Property_8a2b8589cd3a42a1879a29c28e4f711f_Out_0_SamplerState.samplerstate, _Property_3e01b4d2fc68d48ba3acbba9d5881e59_Out_0_Texture2D.GetTransformedUV(_Multiply_862402885a49f18cb87278ab53bc6744_Out_2_Vector2) );
|
|
_SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_RGBA_0_Vector4.rgb = UnpackNormal(_SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_RGBA_0_Vector4);
|
|
float _SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_R_4_Float = _SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_RGBA_0_Vector4.r;
|
|
float _SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_G_5_Float = _SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_RGBA_0_Vector4.g;
|
|
float _SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_B_6_Float = _SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_RGBA_0_Vector4.b;
|
|
float _SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_A_7_Float = _SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_RGBA_0_Vector4.a;
|
|
float _Multiply_4649b768be76d784a3284bacde795359_Out_2_Float;
|
|
Unity_Multiply_float_float(_SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_B_6_Float, _Split_5ed44bf2eca0868f81eb18100f49d1fa_R_1_Float, _Multiply_4649b768be76d784a3284bacde795359_Out_2_Float);
|
|
float2 _Vector2_819fcd5eb484438eacad1987576d7d67_Out_0_Vector2 = float2(_SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_R_4_Float, _SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_G_5_Float);
|
|
float2 _Multiply_58530ebb3c6d798b93686a76247bf505_Out_2_Vector2;
|
|
Unity_Multiply_float2_float2(_Vector2_819fcd5eb484438eacad1987576d7d67_Out_0_Vector2, _Vector2_a1e23e0f921b6484818f009a2b12a5ba_Out_0_Vector2, _Multiply_58530ebb3c6d798b93686a76247bf505_Out_2_Vector2);
|
|
float2 _Vector2_e293c112b2f49e88a5fe46dfb1fbeb40_Out_0_Vector2 = float2(_Split_5ed44bf2eca0868f81eb18100f49d1fa_B_3_Float, _Split_5ed44bf2eca0868f81eb18100f49d1fa_G_2_Float);
|
|
float2 _Add_cf00fb232c6e2b8e973ab2f84453f55e_Out_2_Vector2;
|
|
Unity_Add_float2(_Multiply_58530ebb3c6d798b93686a76247bf505_Out_2_Vector2, _Vector2_e293c112b2f49e88a5fe46dfb1fbeb40_Out_0_Vector2, _Add_cf00fb232c6e2b8e973ab2f84453f55e_Out_2_Vector2);
|
|
float _Split_3ea3e61d32bdd78f82c686b75ff3fd9b_R_1_Float = _Add_cf00fb232c6e2b8e973ab2f84453f55e_Out_2_Vector2[0];
|
|
float _Split_3ea3e61d32bdd78f82c686b75ff3fd9b_G_2_Float = _Add_cf00fb232c6e2b8e973ab2f84453f55e_Out_2_Vector2[1];
|
|
float _Split_3ea3e61d32bdd78f82c686b75ff3fd9b_B_3_Float = 0;
|
|
float _Split_3ea3e61d32bdd78f82c686b75ff3fd9b_A_4_Float = 0;
|
|
float3 _Vector3_13a08d5940172a84a78ee3d9b8766833_Out_0_Vector3 = float3(_Multiply_4649b768be76d784a3284bacde795359_Out_2_Float, _Split_3ea3e61d32bdd78f82c686b75ff3fd9b_G_2_Float, _Split_3ea3e61d32bdd78f82c686b75ff3fd9b_R_1_Float);
|
|
float3 _Multiply_77818c22e359fc8cbb7dd20216a8db72_Out_2_Vector3;
|
|
Unity_Multiply_float3_float3(_Vector3_13a08d5940172a84a78ee3d9b8766833_Out_0_Vector3, (_Split_ae83014fcbd9f7879a0b91fa66dc9718_R_1_Float.xxx), _Multiply_77818c22e359fc8cbb7dd20216a8db72_Out_2_Vector3);
|
|
float3 _Add_769d9ee909c9238dbbf72d2800a2f268_Out_2_Vector3;
|
|
Unity_Add_float3(_Multiply_7bb4009c92b108849ac6ca92bc1442f2_Out_2_Vector3, _Multiply_77818c22e359fc8cbb7dd20216a8db72_Out_2_Vector3, _Add_769d9ee909c9238dbbf72d2800a2f268_Out_2_Vector3);
|
|
float3 _Add_14295f72880e4b87a1baf1ced943ac40_Out_2_Vector3;
|
|
Unity_Add_float3(_Multiply_2e1040ca9c98d085ace76ee93f094039_Out_2_Vector3, _Add_769d9ee909c9238dbbf72d2800a2f268_Out_2_Vector3, _Add_14295f72880e4b87a1baf1ced943ac40_Out_2_Vector3);
|
|
float _Add_e59af300bba2498db32eac1412123447_Out_2_Float;
|
|
Unity_Add_float(_Split_ae83014fcbd9f7879a0b91fa66dc9718_R_1_Float, _Split_ae83014fcbd9f7879a0b91fa66dc9718_G_2_Float, _Add_e59af300bba2498db32eac1412123447_Out_2_Float);
|
|
float _Add_e855069f047fae8ea9027d56acb61e56_Out_2_Float;
|
|
Unity_Add_float(_Add_e59af300bba2498db32eac1412123447_Out_2_Float, _Split_ae83014fcbd9f7879a0b91fa66dc9718_B_3_Float, _Add_e855069f047fae8ea9027d56acb61e56_Out_2_Float);
|
|
float3 _Divide_91ae4b94f1d9b78e99d0472293b8098c_Out_2_Vector3;
|
|
Unity_Divide_float3(_Add_14295f72880e4b87a1baf1ced943ac40_Out_2_Vector3, (_Add_e855069f047fae8ea9027d56acb61e56_Out_2_Float.xxx), _Divide_91ae4b94f1d9b78e99d0472293b8098c_Out_2_Vector3);
|
|
float3 _Transform_73eecc0c3689d184a34c8d0f28a58adf_Out_1_Vector3;
|
|
{
|
|
float3x3 tangentTransform = float3x3(IN.WorldSpaceTangent, IN.WorldSpaceBiTangent, IN.WorldSpaceNormal);
|
|
_Transform_73eecc0c3689d184a34c8d0f28a58adf_Out_1_Vector3 = TransformWorldToTangent(_Divide_91ae4b94f1d9b78e99d0472293b8098c_Out_2_Vector3.xyz, tangentTransform, true);
|
|
}
|
|
float3 _Normalize_15ef346824db0a8797631ed8b998e673_Out_1_Vector3;
|
|
Unity_Normalize_float3(_Transform_73eecc0c3689d184a34c8d0f28a58adf_Out_1_Vector3, _Normalize_15ef346824db0a8797631ed8b998e673_Out_1_Vector3);
|
|
XYZ_1 = (float4(_Normalize_15ef346824db0a8797631ed8b998e673_Out_1_Vector3, 1.0));
|
|
XZ_2 = (float4(_Vector3_08f62c5c01619e849f1a7d85a44531ac_Out_0_Vector3, 1.0));
|
|
YZ_3 = (float4(_Vector3_ba6cfb4671e8c58f9b41ea1dc23102ca_Out_0_Vector3, 1.0));
|
|
XY_4 = (float4(_Vector3_13a08d5940172a84a78ee3d9b8766833_Out_0_Vector3, 1.0));
|
|
}
|
|
|
|
void Unity_NormalStrength_float(float3 In, float Strength, out float3 Out)
|
|
{
|
|
Out = float3(In.rg * Strength, lerp(1, In.b, saturate(Strength)));
|
|
}
|
|
|
|
void Unity_NormalBlend_float(float3 A, float3 B, out float3 Out)
|
|
{
|
|
Out = SafeNormalize(float3(A.rg + B.rg, A.b * B.b));
|
|
}
|
|
|
|
void Unity_Subtract_float(float A, float B, out float Out)
|
|
{
|
|
Out = A - B;
|
|
}
|
|
|
|
void Unity_Divide_float(float A, float B, out float Out)
|
|
{
|
|
Out = A / B;
|
|
}
|
|
|
|
void Unity_Lerp_float3(float3 A, float3 B, float3 T, out float3 Out)
|
|
{
|
|
Out = lerp(A, B, T);
|
|
}
|
|
|
|
void Unity_Remap_float(float In, float2 InMinMax, float2 OutMinMax, out float Out)
|
|
{
|
|
Out = OutMinMax.x + (In - InMinMax.x) * (OutMinMax.y - OutMinMax.x) / (InMinMax.y - InMinMax.x);
|
|
}
|
|
|
|
void Unity_Branch_float(float Predicate, float True, float False, out float Out)
|
|
{
|
|
Out = Predicate ? True : False;
|
|
}
|
|
|
|
void Unity_Lerp_float(float A, float B, float T, out float Out)
|
|
{
|
|
Out = lerp(A, B, T);
|
|
}
|
|
|
|
struct Bindings_BlendOverlayDetailSmoothness_06e12138dc89c0040b45a57abe520a1a_float
|
|
{
|
|
};
|
|
|
|
void SG_BlendOverlayDetailSmoothness_06e12138dc89c0040b45a57abe520a1a_float(float Vector1_32317166, float Vector1_FBE622A2, float Vector1_8C15C351, Bindings_BlendOverlayDetailSmoothness_06e12138dc89c0040b45a57abe520a1a_float IN, out float SmoothnessOverlay_1)
|
|
{
|
|
float _Property_728cc50521e9e988ac9cbff4872d5139_Out_0_Float = Vector1_32317166;
|
|
float _Property_a00e29241d12f983b30177515b367ec9_Out_0_Float = Vector1_FBE622A2;
|
|
float _Sign_343a45ede7349283a681c6bd9998fd8e_Out_1_Float;
|
|
Unity_Sign_float(_Property_a00e29241d12f983b30177515b367ec9_Out_0_Float, _Sign_343a45ede7349283a681c6bd9998fd8e_Out_1_Float);
|
|
float _Add_681019b8f5d3d68bb482d419c9fc61a9_Out_2_Float;
|
|
Unity_Add_float(_Sign_343a45ede7349283a681c6bd9998fd8e_Out_1_Float, float(1), _Add_681019b8f5d3d68bb482d419c9fc61a9_Out_2_Float);
|
|
float _Multiply_e8f4cb722712a880ac0db6c7461427f7_Out_2_Float;
|
|
Unity_Multiply_float_float(_Add_681019b8f5d3d68bb482d419c9fc61a9_Out_2_Float, 0.5, _Multiply_e8f4cb722712a880ac0db6c7461427f7_Out_2_Float);
|
|
float _Ceiling_95ad15988aa9b98184875fa754feae01_Out_1_Float;
|
|
Unity_Ceiling_float(_Multiply_e8f4cb722712a880ac0db6c7461427f7_Out_2_Float, _Ceiling_95ad15988aa9b98184875fa754feae01_Out_1_Float);
|
|
float _Property_2db1c747a05ee284a8b00076062f91a4_Out_0_Float = Vector1_8C15C351;
|
|
float _Lerp_b3cdb01fc3c5b988ac9b184943bf7c01_Out_3_Float;
|
|
Unity_Lerp_float(_Property_728cc50521e9e988ac9cbff4872d5139_Out_0_Float, _Ceiling_95ad15988aa9b98184875fa754feae01_Out_1_Float, _Property_2db1c747a05ee284a8b00076062f91a4_Out_0_Float, _Lerp_b3cdb01fc3c5b988ac9b184943bf7c01_Out_3_Float);
|
|
SmoothnessOverlay_1 = _Lerp_b3cdb01fc3c5b988ac9b184943bf7c01_Out_3_Float;
|
|
}
|
|
|
|
void Unity_Minimum_float(float A, float B, out float Out)
|
|
{
|
|
Out = min(A, B);
|
|
};
|
|
|
|
// Graph Vertex
|
|
struct VertexDescription
|
|
{
|
|
float3 Position;
|
|
float3 Normal;
|
|
float3 Tangent;
|
|
};
|
|
|
|
VertexDescription VertexDescriptionFunction(VertexDescriptionInputs IN)
|
|
{
|
|
VertexDescription description = (VertexDescription)0;
|
|
description.Position = IN.ObjectSpacePosition;
|
|
description.Normal = IN.ObjectSpaceNormal;
|
|
description.Tangent = IN.ObjectSpaceTangent;
|
|
return description;
|
|
}
|
|
|
|
// Graph Pixel
|
|
struct SurfaceDescription
|
|
{
|
|
float3 BaseColor;
|
|
float3 Emission;
|
|
float Alpha;
|
|
float3 BentNormal;
|
|
float Smoothness;
|
|
float Occlusion;
|
|
float3 NormalTS;
|
|
float Metallic;
|
|
};
|
|
|
|
SurfaceDescription SurfaceDescriptionFunction(SurfaceDescriptionInputs IN)
|
|
{
|
|
SurfaceDescription surface = (SurfaceDescription)0;
|
|
float _Property_72a5c604805a7b8ebbfd7acee03656aa_Out_0_Boolean = _CoverMaskRCurvature;
|
|
UnityTexture2D _Property_5f029bbc9f13b7858650859c3b63ebfd_Out_0_Texture2D = UnityBuildTexture2DStructNoScale(_BaseColorMap);
|
|
float4 _Property_a409d5fcafb9f182a4b2aea64204408f_Out_0_Vector4 = _BaseTilingOffset;
|
|
float4 _Divide_6a90cebe78e620828de587523daaa7e6_Out_2_Vector4;
|
|
Unity_Divide_float4(float4(1, 1, 0, 0), _Property_a409d5fcafb9f182a4b2aea64204408f_Out_0_Vector4, _Divide_6a90cebe78e620828de587523daaa7e6_Out_2_Vector4);
|
|
float _Property_3539de8c698c2981bb3c088d4ec52201_Out_0_Float = _BaseTriplanarThreshold;
|
|
Bindings_TriplanarNM_bc609ed95f52591469ab35dbfe0efcea_float _TriplanarNM_92d0433ff3938b8392407d2ab8713ac8;
|
|
_TriplanarNM_92d0433ff3938b8392407d2ab8713ac8.WorldSpaceNormal = IN.WorldSpaceNormal;
|
|
_TriplanarNM_92d0433ff3938b8392407d2ab8713ac8.AbsoluteWorldSpacePosition = IN.AbsoluteWorldSpacePosition;
|
|
float4 _TriplanarNM_92d0433ff3938b8392407d2ab8713ac8_XYZ_1_Vector4;
|
|
float4 _TriplanarNM_92d0433ff3938b8392407d2ab8713ac8_XZ_2_Vector4;
|
|
float4 _TriplanarNM_92d0433ff3938b8392407d2ab8713ac8_YZ_3_Vector4;
|
|
float4 _TriplanarNM_92d0433ff3938b8392407d2ab8713ac8_XY_4_Vector4;
|
|
SG_TriplanarNM_bc609ed95f52591469ab35dbfe0efcea_float(_Property_5f029bbc9f13b7858650859c3b63ebfd_Out_0_Texture2D, (_Divide_6a90cebe78e620828de587523daaa7e6_Out_2_Vector4).x, _Property_3539de8c698c2981bb3c088d4ec52201_Out_0_Float, UnityBuildSamplerStateStruct(SamplerState_Linear_Repeat_Aniso8), _TriplanarNM_92d0433ff3938b8392407d2ab8713ac8, _TriplanarNM_92d0433ff3938b8392407d2ab8713ac8_XYZ_1_Vector4, _TriplanarNM_92d0433ff3938b8392407d2ab8713ac8_XZ_2_Vector4, _TriplanarNM_92d0433ff3938b8392407d2ab8713ac8_YZ_3_Vector4, _TriplanarNM_92d0433ff3938b8392407d2ab8713ac8_XY_4_Vector4);
|
|
float4 _Property_87cd542c2b8c30868ed1d7d38aed8f2b_Out_0_Vector4 = _BaseColor;
|
|
float4 _Multiply_4b2be0b3fe39f385b887e7c82ab41e0b_Out_2_Vector4;
|
|
Unity_Multiply_float4_float4(_TriplanarNM_92d0433ff3938b8392407d2ab8713ac8_XYZ_1_Vector4, _Property_87cd542c2b8c30868ed1d7d38aed8f2b_Out_0_Vector4, _Multiply_4b2be0b3fe39f385b887e7c82ab41e0b_Out_2_Vector4);
|
|
UnityTexture2D _Property_c167aafac28bd98c8411d3e25631fdeb_Out_0_Texture2D = UnityBuildTexture2DStructNoScale(_CoverMaskA);
|
|
float4 _UV_e143f0ebbac8bb8cab3206ab93422dda_Out_0_Vector4 = IN.uv0;
|
|
float4 _SampleTexture2D_32717b1e99785588830ceee116cbe7fc_RGBA_0_Vector4 = SAMPLE_TEXTURE2D(_Property_c167aafac28bd98c8411d3e25631fdeb_Out_0_Texture2D.tex, _Property_c167aafac28bd98c8411d3e25631fdeb_Out_0_Texture2D.samplerstate, _Property_c167aafac28bd98c8411d3e25631fdeb_Out_0_Texture2D.GetTransformedUV((_UV_e143f0ebbac8bb8cab3206ab93422dda_Out_0_Vector4.xy)) );
|
|
float _SampleTexture2D_32717b1e99785588830ceee116cbe7fc_R_4_Float = _SampleTexture2D_32717b1e99785588830ceee116cbe7fc_RGBA_0_Vector4.r;
|
|
float _SampleTexture2D_32717b1e99785588830ceee116cbe7fc_G_5_Float = _SampleTexture2D_32717b1e99785588830ceee116cbe7fc_RGBA_0_Vector4.g;
|
|
float _SampleTexture2D_32717b1e99785588830ceee116cbe7fc_B_6_Float = _SampleTexture2D_32717b1e99785588830ceee116cbe7fc_RGBA_0_Vector4.b;
|
|
float _SampleTexture2D_32717b1e99785588830ceee116cbe7fc_A_7_Float = _SampleTexture2D_32717b1e99785588830ceee116cbe7fc_RGBA_0_Vector4.a;
|
|
float _Multiply_01f97603c3df268380d339564b08db11_Out_2_Float;
|
|
Unity_Multiply_float_float(_SampleTexture2D_32717b1e99785588830ceee116cbe7fc_R_4_Float, 2, _Multiply_01f97603c3df268380d339564b08db11_Out_2_Float);
|
|
float _Property_cad777e9a810198e8076eb2cd76e6817_Out_0_Float = _BaseDarknessCurvMultply;
|
|
float _Multiply_b67c8963c3ba188e85b84ae9bf0dcbf7_Out_2_Float;
|
|
Unity_Multiply_float_float(_Multiply_01f97603c3df268380d339564b08db11_Out_2_Float, _Property_cad777e9a810198e8076eb2cd76e6817_Out_0_Float, _Multiply_b67c8963c3ba188e85b84ae9bf0dcbf7_Out_2_Float);
|
|
float _Clamp_646f55d74b38f18aa983e5d031e0e7c3_Out_3_Float;
|
|
Unity_Clamp_float(_Multiply_b67c8963c3ba188e85b84ae9bf0dcbf7_Out_2_Float, float(0), float(1), _Clamp_646f55d74b38f18aa983e5d031e0e7c3_Out_3_Float);
|
|
float _Absolute_c99e11216fab2488946eb6243d985fdc_Out_1_Float;
|
|
Unity_Absolute_float(_Clamp_646f55d74b38f18aa983e5d031e0e7c3_Out_3_Float, _Absolute_c99e11216fab2488946eb6243d985fdc_Out_1_Float);
|
|
float _Property_f8a9827e6f28d9819188d4775dcf7620_Out_0_Float = _BaseDarknessCurvPower;
|
|
float _Power_1b88303e1ca2f285b344bf6aa0cf05e4_Out_2_Float;
|
|
Unity_Power_float(_Absolute_c99e11216fab2488946eb6243d985fdc_Out_1_Float, _Property_f8a9827e6f28d9819188d4775dcf7620_Out_0_Float, _Power_1b88303e1ca2f285b344bf6aa0cf05e4_Out_2_Float);
|
|
float _Clamp_27887d983dbb5a8bbd2966fbcbd7c126_Out_3_Float;
|
|
Unity_Clamp_float(_Power_1b88303e1ca2f285b344bf6aa0cf05e4_Out_2_Float, float(0), float(1), _Clamp_27887d983dbb5a8bbd2966fbcbd7c126_Out_3_Float);
|
|
float4 _Multiply_59efbfb897b39480ad44be129db72018_Out_2_Vector4;
|
|
Unity_Multiply_float4_float4(_Multiply_4b2be0b3fe39f385b887e7c82ab41e0b_Out_2_Vector4, (_Clamp_27887d983dbb5a8bbd2966fbcbd7c126_Out_3_Float.xxxx), _Multiply_59efbfb897b39480ad44be129db72018_Out_2_Vector4);
|
|
float4 _Clamp_841e38951a68f286955c4755e78c610b_Out_3_Vector4;
|
|
Unity_Clamp_float4(_Multiply_59efbfb897b39480ad44be129db72018_Out_2_Vector4, float4(0, 0, 0, 0), float4(1, 1, 1, 1), _Clamp_841e38951a68f286955c4755e78c610b_Out_3_Vector4);
|
|
float _Add_d7ea4a88c4af4886b1e567ddd2b963f9_Out_2_Float;
|
|
Unity_Add_float(_Multiply_01f97603c3df268380d339564b08db11_Out_2_Float, float(-1), _Add_d7ea4a88c4af4886b1e567ddd2b963f9_Out_2_Float);
|
|
float _Clamp_1a02c4bf5903c988b1489d14c840c1e3_Out_3_Float;
|
|
Unity_Clamp_float(_Add_d7ea4a88c4af4886b1e567ddd2b963f9_Out_2_Float, float(0), float(1), _Clamp_1a02c4bf5903c988b1489d14c840c1e3_Out_3_Float);
|
|
float _Property_0e0e1ec2131cec87836dce596351dc1c_Out_0_Float = _BaseBrightnessCurvMultply;
|
|
float _Multiply_c975dfa7de001c89addd082d443e2d07_Out_2_Float;
|
|
Unity_Multiply_float_float(_Clamp_1a02c4bf5903c988b1489d14c840c1e3_Out_3_Float, _Property_0e0e1ec2131cec87836dce596351dc1c_Out_0_Float, _Multiply_c975dfa7de001c89addd082d443e2d07_Out_2_Float);
|
|
float _Clamp_d5711b145a87ef8e8a93ceb9b6197759_Out_3_Float;
|
|
Unity_Clamp_float(_Multiply_c975dfa7de001c89addd082d443e2d07_Out_2_Float, float(0), float(1), _Clamp_d5711b145a87ef8e8a93ceb9b6197759_Out_3_Float);
|
|
float _Absolute_8f9bd7ee7a35c18084d08ad7ef463f52_Out_1_Float;
|
|
Unity_Absolute_float(_Clamp_d5711b145a87ef8e8a93ceb9b6197759_Out_3_Float, _Absolute_8f9bd7ee7a35c18084d08ad7ef463f52_Out_1_Float);
|
|
float _Property_9092f5beea2bec83a5c8a3f6623953a6_Out_0_Float = _BaseBrightnessCurvPower;
|
|
float _Power_5c1a81a2cfcc578996666adb93479f83_Out_2_Float;
|
|
Unity_Power_float(_Absolute_8f9bd7ee7a35c18084d08ad7ef463f52_Out_1_Float, _Property_9092f5beea2bec83a5c8a3f6623953a6_Out_0_Float, _Power_5c1a81a2cfcc578996666adb93479f83_Out_2_Float);
|
|
float _Clamp_f3c614a7ae35508288c0bc3f6194ca34_Out_3_Float;
|
|
Unity_Clamp_float(_Power_5c1a81a2cfcc578996666adb93479f83_Out_2_Float, float(0), float(1), _Clamp_f3c614a7ae35508288c0bc3f6194ca34_Out_3_Float);
|
|
float4 _Add_8313e15cade91a8ba653986d6722818a_Out_2_Vector4;
|
|
Unity_Add_float4(_Clamp_841e38951a68f286955c4755e78c610b_Out_3_Vector4, (_Clamp_f3c614a7ae35508288c0bc3f6194ca34_Out_3_Float.xxxx), _Add_8313e15cade91a8ba653986d6722818a_Out_2_Vector4);
|
|
float4 _Clamp_6dc8fea4fa463b8ea840911fd315c80f_Out_3_Vector4;
|
|
Unity_Clamp_float4(_Add_8313e15cade91a8ba653986d6722818a_Out_2_Vector4, float4(0, 0, 0, 0), float4(1, 1, 1, 1), _Clamp_6dc8fea4fa463b8ea840911fd315c80f_Out_3_Vector4);
|
|
float4 _Branch_26165227c7a50284b87d2996dee9982c_Out_3_Vector4;
|
|
Unity_Branch_float4(_Property_72a5c604805a7b8ebbfd7acee03656aa_Out_0_Boolean, _Clamp_6dc8fea4fa463b8ea840911fd315c80f_Out_3_Vector4, _Multiply_4b2be0b3fe39f385b887e7c82ab41e0b_Out_2_Vector4, _Branch_26165227c7a50284b87d2996dee9982c_Out_3_Vector4);
|
|
UnityTexture2D _Property_2e62abc1fe8adb8b8ff655b8448be202_Out_0_Texture2D = UnityBuildTexture2DStructNoScale(_DetailMap);
|
|
float4 _Property_b86e0ee324ffb58a92473eab69864d04_Out_0_Vector4 = _DetailTilingOffset;
|
|
float _Split_e832641c05503286a4951c0a93621755_R_1_Float = _Property_b86e0ee324ffb58a92473eab69864d04_Out_0_Vector4[0];
|
|
float _Split_e832641c05503286a4951c0a93621755_G_2_Float = _Property_b86e0ee324ffb58a92473eab69864d04_Out_0_Vector4[1];
|
|
float _Split_e832641c05503286a4951c0a93621755_B_3_Float = _Property_b86e0ee324ffb58a92473eab69864d04_Out_0_Vector4[2];
|
|
float _Split_e832641c05503286a4951c0a93621755_A_4_Float = _Property_b86e0ee324ffb58a92473eab69864d04_Out_0_Vector4[3];
|
|
float2 _Vector2_4b5eef288b3d4c83b24e4ab653f55ec8_Out_0_Vector2 = float2(_Split_e832641c05503286a4951c0a93621755_R_1_Float, _Split_e832641c05503286a4951c0a93621755_G_2_Float);
|
|
float2 _Vector2_2925cf98ba16b08dabc58cd65efd17db_Out_0_Vector2 = float2(_Split_e832641c05503286a4951c0a93621755_B_3_Float, _Split_e832641c05503286a4951c0a93621755_A_4_Float);
|
|
float2 _TilingAndOffset_74f6566eba9ccd899de18c0b11b7a7a2_Out_3_Vector2;
|
|
Unity_TilingAndOffset_float(IN.uv0.xy, _Vector2_4b5eef288b3d4c83b24e4ab653f55ec8_Out_0_Vector2, _Vector2_2925cf98ba16b08dabc58cd65efd17db_Out_0_Vector2, _TilingAndOffset_74f6566eba9ccd899de18c0b11b7a7a2_Out_3_Vector2);
|
|
float4 _SampleTexture2D_4bd08411faa60c828847f2247f06a809_RGBA_0_Vector4 = SAMPLE_TEXTURE2D(_Property_2e62abc1fe8adb8b8ff655b8448be202_Out_0_Texture2D.tex, _Property_2e62abc1fe8adb8b8ff655b8448be202_Out_0_Texture2D.samplerstate, _Property_2e62abc1fe8adb8b8ff655b8448be202_Out_0_Texture2D.GetTransformedUV(_TilingAndOffset_74f6566eba9ccd899de18c0b11b7a7a2_Out_3_Vector2) );
|
|
float _SampleTexture2D_4bd08411faa60c828847f2247f06a809_R_4_Float = _SampleTexture2D_4bd08411faa60c828847f2247f06a809_RGBA_0_Vector4.r;
|
|
float _SampleTexture2D_4bd08411faa60c828847f2247f06a809_G_5_Float = _SampleTexture2D_4bd08411faa60c828847f2247f06a809_RGBA_0_Vector4.g;
|
|
float _SampleTexture2D_4bd08411faa60c828847f2247f06a809_B_6_Float = _SampleTexture2D_4bd08411faa60c828847f2247f06a809_RGBA_0_Vector4.b;
|
|
float _SampleTexture2D_4bd08411faa60c828847f2247f06a809_A_7_Float = _SampleTexture2D_4bd08411faa60c828847f2247f06a809_RGBA_0_Vector4.a;
|
|
float _Multiply_ee5a3ccdebd1af84920cd1455a59468b_Out_2_Float;
|
|
Unity_Multiply_float_float(_SampleTexture2D_4bd08411faa60c828847f2247f06a809_R_4_Float, 2, _Multiply_ee5a3ccdebd1af84920cd1455a59468b_Out_2_Float);
|
|
float _Add_b8d727bda34294808f98551e67aa852f_Out_2_Float;
|
|
Unity_Add_float(_Multiply_ee5a3ccdebd1af84920cd1455a59468b_Out_2_Float, float(-1), _Add_b8d727bda34294808f98551e67aa852f_Out_2_Float);
|
|
float _Property_4634e589b03f6983b90fa6aaee0ed5f6_Out_0_Float = _DetailAlbedoScale;
|
|
float _Multiply_f0ed5a95f800c68aa9f7ea2f1322cc31_Out_2_Float;
|
|
Unity_Multiply_float_float(_Add_b8d727bda34294808f98551e67aa852f_Out_2_Float, _Property_4634e589b03f6983b90fa6aaee0ed5f6_Out_0_Float, _Multiply_f0ed5a95f800c68aa9f7ea2f1322cc31_Out_2_Float);
|
|
float _Saturate_469298b4e783d887889b71dc48b4399f_Out_1_Float;
|
|
Unity_Saturate_float(_Multiply_f0ed5a95f800c68aa9f7ea2f1322cc31_Out_2_Float, _Saturate_469298b4e783d887889b71dc48b4399f_Out_1_Float);
|
|
float _Absolute_3b29f3ceceba148189d11e0195af4be2_Out_1_Float;
|
|
Unity_Absolute_float(_Saturate_469298b4e783d887889b71dc48b4399f_Out_1_Float, _Absolute_3b29f3ceceba148189d11e0195af4be2_Out_1_Float);
|
|
Bindings_BlendOverlayBaseColor_acdb3dfca72bd6b42bbc35f4613331a2_float _BlendOverlayBaseColor_369c0b6a02e62b809dc5c6ac1efddde2;
|
|
float3 _BlendOverlayBaseColor_369c0b6a02e62b809dc5c6ac1efddde2_OutVector4_1_Vector3;
|
|
SG_BlendOverlayBaseColor_acdb3dfca72bd6b42bbc35f4613331a2_float(_Branch_26165227c7a50284b87d2996dee9982c_Out_3_Vector4, _Add_b8d727bda34294808f98551e67aa852f_Out_2_Float, _Absolute_3b29f3ceceba148189d11e0195af4be2_Out_1_Float, _BlendOverlayBaseColor_369c0b6a02e62b809dc5c6ac1efddde2, _BlendOverlayBaseColor_369c0b6a02e62b809dc5c6ac1efddde2_OutVector4_1_Vector3);
|
|
UnityTexture2D _Property_9a8451520f254f84a21875f3dac8cbe3_Out_0_Texture2D = UnityBuildTexture2DStructNoScale(_CoverBaseColorMap);
|
|
float4 _Property_c853e88632d9fd85ac0e98d12083eb62_Out_0_Vector4 = _CoverTilingOffset;
|
|
float4 _Divide_1fe314f1ca9dd78fbf366bbeb40e4ccf_Out_2_Vector4;
|
|
Unity_Divide_float4(float4(1, 1, 0, 0), _Property_c853e88632d9fd85ac0e98d12083eb62_Out_0_Vector4, _Divide_1fe314f1ca9dd78fbf366bbeb40e4ccf_Out_2_Vector4);
|
|
float _Property_ee792eccbb538a878b19be5db264531e_Out_0_Float = _CoverTriplanarThreshold;
|
|
Bindings_TriplanarNM_bc609ed95f52591469ab35dbfe0efcea_float _TriplanarNM_cca4c45d91c87989990c532a04e9e8e1;
|
|
_TriplanarNM_cca4c45d91c87989990c532a04e9e8e1.WorldSpaceNormal = IN.WorldSpaceNormal;
|
|
_TriplanarNM_cca4c45d91c87989990c532a04e9e8e1.AbsoluteWorldSpacePosition = IN.AbsoluteWorldSpacePosition;
|
|
float4 _TriplanarNM_cca4c45d91c87989990c532a04e9e8e1_XYZ_1_Vector4;
|
|
float4 _TriplanarNM_cca4c45d91c87989990c532a04e9e8e1_XZ_2_Vector4;
|
|
float4 _TriplanarNM_cca4c45d91c87989990c532a04e9e8e1_YZ_3_Vector4;
|
|
float4 _TriplanarNM_cca4c45d91c87989990c532a04e9e8e1_XY_4_Vector4;
|
|
SG_TriplanarNM_bc609ed95f52591469ab35dbfe0efcea_float(_Property_9a8451520f254f84a21875f3dac8cbe3_Out_0_Texture2D, (_Divide_1fe314f1ca9dd78fbf366bbeb40e4ccf_Out_2_Vector4).x, _Property_ee792eccbb538a878b19be5db264531e_Out_0_Float, UnityBuildSamplerStateStruct(SamplerState_Linear_Repeat_Aniso8), _TriplanarNM_cca4c45d91c87989990c532a04e9e8e1, _TriplanarNM_cca4c45d91c87989990c532a04e9e8e1_XYZ_1_Vector4, _TriplanarNM_cca4c45d91c87989990c532a04e9e8e1_XZ_2_Vector4, _TriplanarNM_cca4c45d91c87989990c532a04e9e8e1_YZ_3_Vector4, _TriplanarNM_cca4c45d91c87989990c532a04e9e8e1_XY_4_Vector4);
|
|
float4 _Property_18c743619f52288dbe24e28326388b00_Out_0_Vector4 = _CoverBaseColor;
|
|
float4 _Multiply_62594f3b30470e86a813e1224c48902e_Out_2_Vector4;
|
|
Unity_Multiply_float4_float4(_TriplanarNM_cca4c45d91c87989990c532a04e9e8e1_XYZ_1_Vector4, _Property_18c743619f52288dbe24e28326388b00_Out_0_Vector4, _Multiply_62594f3b30470e86a813e1224c48902e_Out_2_Vector4);
|
|
float _Multiply_5378fc524597f98fb32eeb561a7390e9_Out_2_Float;
|
|
Unity_Multiply_float_float(_SampleTexture2D_32717b1e99785588830ceee116cbe7fc_R_4_Float, 2, _Multiply_5378fc524597f98fb32eeb561a7390e9_Out_2_Float);
|
|
float _Property_8a72d97c1c527c8f8e0cc71214498065_Out_0_Float = _CoverDarknessCurvMultply;
|
|
float _Multiply_22683a720176a788a2ce404dbddd837c_Out_2_Float;
|
|
Unity_Multiply_float_float(_Multiply_5378fc524597f98fb32eeb561a7390e9_Out_2_Float, _Property_8a72d97c1c527c8f8e0cc71214498065_Out_0_Float, _Multiply_22683a720176a788a2ce404dbddd837c_Out_2_Float);
|
|
float _Clamp_5a638fb628222d8a97865d9029554fe2_Out_3_Float;
|
|
Unity_Clamp_float(_Multiply_22683a720176a788a2ce404dbddd837c_Out_2_Float, float(0), float(1), _Clamp_5a638fb628222d8a97865d9029554fe2_Out_3_Float);
|
|
float _Absolute_11985e8863bf2b8ca0bda90bca829348_Out_1_Float;
|
|
Unity_Absolute_float(_Clamp_5a638fb628222d8a97865d9029554fe2_Out_3_Float, _Absolute_11985e8863bf2b8ca0bda90bca829348_Out_1_Float);
|
|
float _Property_aba5acef910eee88b110d565674a9e36_Out_0_Float = _CoverDarknessCurvPower;
|
|
float _Power_da9b537d80a58d85a88e72c2a5d01e7c_Out_2_Float;
|
|
Unity_Power_float(_Absolute_11985e8863bf2b8ca0bda90bca829348_Out_1_Float, _Property_aba5acef910eee88b110d565674a9e36_Out_0_Float, _Power_da9b537d80a58d85a88e72c2a5d01e7c_Out_2_Float);
|
|
float _Clamp_77228e2a7266fa8ca042eae2f0701342_Out_3_Float;
|
|
Unity_Clamp_float(_Power_da9b537d80a58d85a88e72c2a5d01e7c_Out_2_Float, float(0), float(1), _Clamp_77228e2a7266fa8ca042eae2f0701342_Out_3_Float);
|
|
float4 _Multiply_2111c8ad39d5e68caf4893a41a3bad7d_Out_2_Vector4;
|
|
Unity_Multiply_float4_float4(_Multiply_62594f3b30470e86a813e1224c48902e_Out_2_Vector4, (_Clamp_77228e2a7266fa8ca042eae2f0701342_Out_3_Float.xxxx), _Multiply_2111c8ad39d5e68caf4893a41a3bad7d_Out_2_Vector4);
|
|
float4 _Clamp_b489ebb9d7d18282a342100f4d2fa72d_Out_3_Vector4;
|
|
Unity_Clamp_float4(_Multiply_2111c8ad39d5e68caf4893a41a3bad7d_Out_2_Vector4, float4(0, 0, 0, 0), float4(1, 1, 1, 1), _Clamp_b489ebb9d7d18282a342100f4d2fa72d_Out_3_Vector4);
|
|
float _Add_7eea819e47ffe58cbb3ec5877a181444_Out_2_Float;
|
|
Unity_Add_float(_Multiply_5378fc524597f98fb32eeb561a7390e9_Out_2_Float, float(-1), _Add_7eea819e47ffe58cbb3ec5877a181444_Out_2_Float);
|
|
float _Clamp_b5e4f47c0358dc87b5f9fdb3a360e9e9_Out_3_Float;
|
|
Unity_Clamp_float(_Add_7eea819e47ffe58cbb3ec5877a181444_Out_2_Float, float(0), float(1), _Clamp_b5e4f47c0358dc87b5f9fdb3a360e9e9_Out_3_Float);
|
|
float _Property_753051c96a90798fa7d94cff4173d6e6_Out_0_Float = _CoverBrightnessCurvMultply;
|
|
float _Multiply_c650497abc44d98882ce0091d10c4356_Out_2_Float;
|
|
Unity_Multiply_float_float(_Clamp_b5e4f47c0358dc87b5f9fdb3a360e9e9_Out_3_Float, _Property_753051c96a90798fa7d94cff4173d6e6_Out_0_Float, _Multiply_c650497abc44d98882ce0091d10c4356_Out_2_Float);
|
|
float _Clamp_c508dc61e0cb2a829429559098f34f9a_Out_3_Float;
|
|
Unity_Clamp_float(_Multiply_c650497abc44d98882ce0091d10c4356_Out_2_Float, float(0), float(1), _Clamp_c508dc61e0cb2a829429559098f34f9a_Out_3_Float);
|
|
float _Absolute_2cff2da32d80c286acbb99de611f381a_Out_1_Float;
|
|
Unity_Absolute_float(_Clamp_c508dc61e0cb2a829429559098f34f9a_Out_3_Float, _Absolute_2cff2da32d80c286acbb99de611f381a_Out_1_Float);
|
|
float _Property_ce4610db7b6d0c8bb7fb318210d3e83f_Out_0_Float = _CoverBrightnessCurvPower;
|
|
float _Power_c21df4d2e5ea448281f9ac0f4a140b9e_Out_2_Float;
|
|
Unity_Power_float(_Absolute_2cff2da32d80c286acbb99de611f381a_Out_1_Float, _Property_ce4610db7b6d0c8bb7fb318210d3e83f_Out_0_Float, _Power_c21df4d2e5ea448281f9ac0f4a140b9e_Out_2_Float);
|
|
float _Clamp_fd095a9d6c2b9881ae5875ed126bf3fb_Out_3_Float;
|
|
Unity_Clamp_float(_Power_c21df4d2e5ea448281f9ac0f4a140b9e_Out_2_Float, float(0), float(1), _Clamp_fd095a9d6c2b9881ae5875ed126bf3fb_Out_3_Float);
|
|
float4 _Add_4a02758b9a29b18180516bf3c3ede263_Out_2_Vector4;
|
|
Unity_Add_float4(_Clamp_b489ebb9d7d18282a342100f4d2fa72d_Out_3_Vector4, (_Clamp_fd095a9d6c2b9881ae5875ed126bf3fb_Out_3_Float.xxxx), _Add_4a02758b9a29b18180516bf3c3ede263_Out_2_Vector4);
|
|
float4 _Clamp_632e3d64ab55648f927a79cef68f3396_Out_3_Vector4;
|
|
Unity_Clamp_float4(_Add_4a02758b9a29b18180516bf3c3ede263_Out_2_Vector4, float4(0, 0, 0, 0), float4(1, 1, 1, 1), _Clamp_632e3d64ab55648f927a79cef68f3396_Out_3_Vector4);
|
|
float4 _Branch_0c5221a996e29186a372734bf5c30a51_Out_3_Vector4;
|
|
Unity_Branch_float4(_Property_72a5c604805a7b8ebbfd7acee03656aa_Out_0_Boolean, _Clamp_632e3d64ab55648f927a79cef68f3396_Out_3_Vector4, _Multiply_62594f3b30470e86a813e1224c48902e_Out_2_Vector4, _Branch_0c5221a996e29186a372734bf5c30a51_Out_3_Vector4);
|
|
float _Multiply_6a55591ceae0dc86a971a275e316fec6_Out_2_Float;
|
|
Unity_Multiply_float_float(_SampleTexture2D_4bd08411faa60c828847f2247f06a809_R_4_Float, 2, _Multiply_6a55591ceae0dc86a971a275e316fec6_Out_2_Float);
|
|
float _Add_a86411eb4894f78f8f8f3246011b369c_Out_2_Float;
|
|
Unity_Add_float(_Multiply_6a55591ceae0dc86a971a275e316fec6_Out_2_Float, float(-1), _Add_a86411eb4894f78f8f8f3246011b369c_Out_2_Float);
|
|
float _Property_c5a049650239cf80a302d0c0f57c147a_Out_0_Float = _DetailCoverAlbedoScale;
|
|
float _Multiply_1708b01db74fe88a8c36434f8729bf41_Out_2_Float;
|
|
Unity_Multiply_float_float(_Add_a86411eb4894f78f8f8f3246011b369c_Out_2_Float, _Property_c5a049650239cf80a302d0c0f57c147a_Out_0_Float, _Multiply_1708b01db74fe88a8c36434f8729bf41_Out_2_Float);
|
|
float _Saturate_1a4899f79635918485a64fff7cea28ad_Out_1_Float;
|
|
Unity_Saturate_float(_Multiply_1708b01db74fe88a8c36434f8729bf41_Out_2_Float, _Saturate_1a4899f79635918485a64fff7cea28ad_Out_1_Float);
|
|
float _Absolute_d3dce2bb8d9f0285b5183b7f665beed8_Out_1_Float;
|
|
Unity_Absolute_float(_Saturate_1a4899f79635918485a64fff7cea28ad_Out_1_Float, _Absolute_d3dce2bb8d9f0285b5183b7f665beed8_Out_1_Float);
|
|
Bindings_BlendOverlayBaseColor_acdb3dfca72bd6b42bbc35f4613331a2_float _BlendOverlayBaseColor_ec1f397271cc818abdb95188914e6b4d;
|
|
float3 _BlendOverlayBaseColor_ec1f397271cc818abdb95188914e6b4d_OutVector4_1_Vector3;
|
|
SG_BlendOverlayBaseColor_acdb3dfca72bd6b42bbc35f4613331a2_float(_Branch_0c5221a996e29186a372734bf5c30a51_Out_3_Vector4, _Add_a86411eb4894f78f8f8f3246011b369c_Out_2_Float, _Absolute_d3dce2bb8d9f0285b5183b7f665beed8_Out_1_Float, _BlendOverlayBaseColor_ec1f397271cc818abdb95188914e6b4d, _BlendOverlayBaseColor_ec1f397271cc818abdb95188914e6b4d_OutVector4_1_Vector3);
|
|
float _Property_cb0b6597aee47880b32e852aaa0e4a71_Out_0_Boolean = _USEDYNAMICCOVERTSTATICMASKF;
|
|
float _Property_4b3f692214f8d081a043985e1adb12a1_Out_0_Float = _CoverMaskPower;
|
|
float _Multiply_10cc4ecb135f8e8ab88c475223d0eadf_Out_2_Float;
|
|
Unity_Multiply_float_float(_SampleTexture2D_32717b1e99785588830ceee116cbe7fc_A_7_Float, _Property_4b3f692214f8d081a043985e1adb12a1_Out_0_Float, _Multiply_10cc4ecb135f8e8ab88c475223d0eadf_Out_2_Float);
|
|
float _Clamp_07a501c22c6e188199bed73412ac8926_Out_3_Float;
|
|
Unity_Clamp_float(_Multiply_10cc4ecb135f8e8ab88c475223d0eadf_Out_2_Float, float(0), float(1), _Clamp_07a501c22c6e188199bed73412ac8926_Out_3_Float);
|
|
float _Split_2ada595651635e8d97bf4b82f717fcc6_R_1_Float = IN.VertexColor[0];
|
|
float _Split_2ada595651635e8d97bf4b82f717fcc6_G_2_Float = IN.VertexColor[1];
|
|
float _Split_2ada595651635e8d97bf4b82f717fcc6_B_3_Float = IN.VertexColor[2];
|
|
float _Split_2ada595651635e8d97bf4b82f717fcc6_A_4_Float = IN.VertexColor[3];
|
|
float3 _Property_9180f8dd535ba18499edac37aef4d231_Out_0_Vector3 = _CoverDirection;
|
|
float2 _Vector2_7fe7d9ef320da68f958e1ea535e2a6a8_Out_0_Vector2 = float2(_SampleTexture2D_4bd08411faa60c828847f2247f06a809_A_7_Float, _SampleTexture2D_4bd08411faa60c828847f2247f06a809_G_5_Float);
|
|
float2 _Multiply_b8d7cc078ce00d87b9a6b5241b2f1f01_Out_2_Vector2;
|
|
Unity_Multiply_float2_float2(_Vector2_7fe7d9ef320da68f958e1ea535e2a6a8_Out_0_Vector2, float2(2, 2), _Multiply_b8d7cc078ce00d87b9a6b5241b2f1f01_Out_2_Vector2);
|
|
float2 _Add_476ecfb1f47aed8bb8040bb1c44ca372_Out_2_Vector2;
|
|
Unity_Add_float2(_Multiply_b8d7cc078ce00d87b9a6b5241b2f1f01_Out_2_Vector2, float2(-1, -1), _Add_476ecfb1f47aed8bb8040bb1c44ca372_Out_2_Vector2);
|
|
float _Property_b7f40cf2664f5a819eb153af2b2eb69e_Out_0_Float = _DetailNormalScale;
|
|
float2 _Multiply_3b11e3e43551698eb19b6c6b671b6a41_Out_2_Vector2;
|
|
Unity_Multiply_float2_float2(_Add_476ecfb1f47aed8bb8040bb1c44ca372_Out_2_Vector2, (_Property_b7f40cf2664f5a819eb153af2b2eb69e_Out_0_Float.xx), _Multiply_3b11e3e43551698eb19b6c6b671b6a41_Out_2_Vector2);
|
|
float _Split_678aac70d9cb9783a49841710ce82ff8_R_1_Float = _Multiply_3b11e3e43551698eb19b6c6b671b6a41_Out_2_Vector2[0];
|
|
float _Split_678aac70d9cb9783a49841710ce82ff8_G_2_Float = _Multiply_3b11e3e43551698eb19b6c6b671b6a41_Out_2_Vector2[1];
|
|
float _Split_678aac70d9cb9783a49841710ce82ff8_B_3_Float = 0;
|
|
float _Split_678aac70d9cb9783a49841710ce82ff8_A_4_Float = 0;
|
|
float _DotProduct_7fd2e2e8b3e9ed8f9a42a0ba98e14174_Out_2_Float;
|
|
Unity_DotProduct_float2(_Multiply_3b11e3e43551698eb19b6c6b671b6a41_Out_2_Vector2, _Multiply_3b11e3e43551698eb19b6c6b671b6a41_Out_2_Vector2, _DotProduct_7fd2e2e8b3e9ed8f9a42a0ba98e14174_Out_2_Float);
|
|
float _Saturate_47bdfe8ca2c8d989a5ebbb5eb995f023_Out_1_Float;
|
|
Unity_Saturate_float(_DotProduct_7fd2e2e8b3e9ed8f9a42a0ba98e14174_Out_2_Float, _Saturate_47bdfe8ca2c8d989a5ebbb5eb995f023_Out_1_Float);
|
|
float _OneMinus_03777d2879850b838187d9d2605d7341_Out_1_Float;
|
|
Unity_OneMinus_float(_Saturate_47bdfe8ca2c8d989a5ebbb5eb995f023_Out_1_Float, _OneMinus_03777d2879850b838187d9d2605d7341_Out_1_Float);
|
|
float _SquareRoot_ca9c195aef071d8888f26cb73b749f72_Out_1_Float;
|
|
Unity_SquareRoot_float(_OneMinus_03777d2879850b838187d9d2605d7341_Out_1_Float, _SquareRoot_ca9c195aef071d8888f26cb73b749f72_Out_1_Float);
|
|
float3 _Vector3_6999cbd6a5aa908cb7c059b5f2f5b330_Out_0_Vector3 = float3(_Split_678aac70d9cb9783a49841710ce82ff8_R_1_Float, _Split_678aac70d9cb9783a49841710ce82ff8_G_2_Float, _SquareRoot_ca9c195aef071d8888f26cb73b749f72_Out_1_Float);
|
|
UnityTexture2D _Property_d2bb0a0b01239c85bd301cadeec1b3d8_Out_0_Texture2D = UnityBuildTexture2DStructNoScale(_BaseNormalMap);
|
|
Bindings_TriplanarNMn_059da9746584140498cd018db3c76047_float _TriplanarNMn_bf7f7c0e2d896289b86076b79f33d7d4;
|
|
_TriplanarNMn_bf7f7c0e2d896289b86076b79f33d7d4.WorldSpaceNormal = IN.WorldSpaceNormal;
|
|
_TriplanarNMn_bf7f7c0e2d896289b86076b79f33d7d4.WorldSpaceTangent = IN.WorldSpaceTangent;
|
|
_TriplanarNMn_bf7f7c0e2d896289b86076b79f33d7d4.WorldSpaceBiTangent = IN.WorldSpaceBiTangent;
|
|
_TriplanarNMn_bf7f7c0e2d896289b86076b79f33d7d4.AbsoluteWorldSpacePosition = IN.AbsoluteWorldSpacePosition;
|
|
float4 _TriplanarNMn_bf7f7c0e2d896289b86076b79f33d7d4_XYZ_1_Vector4;
|
|
float4 _TriplanarNMn_bf7f7c0e2d896289b86076b79f33d7d4_XZ_2_Vector4;
|
|
float4 _TriplanarNMn_bf7f7c0e2d896289b86076b79f33d7d4_YZ_3_Vector4;
|
|
float4 _TriplanarNMn_bf7f7c0e2d896289b86076b79f33d7d4_XY_4_Vector4;
|
|
SG_TriplanarNMn_059da9746584140498cd018db3c76047_float(_Property_d2bb0a0b01239c85bd301cadeec1b3d8_Out_0_Texture2D, (_Divide_6a90cebe78e620828de587523daaa7e6_Out_2_Vector4).x, _Property_3539de8c698c2981bb3c088d4ec52201_Out_0_Float, UnityBuildSamplerStateStruct(SamplerState_Linear_Repeat_Aniso8), _TriplanarNMn_bf7f7c0e2d896289b86076b79f33d7d4, _TriplanarNMn_bf7f7c0e2d896289b86076b79f33d7d4_XYZ_1_Vector4, _TriplanarNMn_bf7f7c0e2d896289b86076b79f33d7d4_XZ_2_Vector4, _TriplanarNMn_bf7f7c0e2d896289b86076b79f33d7d4_YZ_3_Vector4, _TriplanarNMn_bf7f7c0e2d896289b86076b79f33d7d4_XY_4_Vector4);
|
|
float _Property_d6baf612f8e685848732ca270b39f544_Out_0_Float = _BaseNormalScale;
|
|
float3 _NormalStrength_260139b4d5077d8b9d42de780d173b6c_Out_2_Vector3;
|
|
Unity_NormalStrength_float((_TriplanarNMn_bf7f7c0e2d896289b86076b79f33d7d4_XYZ_1_Vector4.xyz), _Property_d6baf612f8e685848732ca270b39f544_Out_0_Float, _NormalStrength_260139b4d5077d8b9d42de780d173b6c_Out_2_Vector3);
|
|
UnityTexture2D _Property_492c4e7cd40ab980bd38362624511e38_Out_0_Texture2D = UnityBuildTexture2DStructNoScale(_ShapeNormalMap);
|
|
float4 _SampleTexture2D_63aaad04c65f698e8f640de826888075_RGBA_0_Vector4 = SAMPLE_TEXTURE2D(_Property_492c4e7cd40ab980bd38362624511e38_Out_0_Texture2D.tex, _Property_492c4e7cd40ab980bd38362624511e38_Out_0_Texture2D.samplerstate, _Property_492c4e7cd40ab980bd38362624511e38_Out_0_Texture2D.GetTransformedUV(IN.uv0.xy) );
|
|
_SampleTexture2D_63aaad04c65f698e8f640de826888075_RGBA_0_Vector4.rgb = UnpackNormal(_SampleTexture2D_63aaad04c65f698e8f640de826888075_RGBA_0_Vector4);
|
|
float _SampleTexture2D_63aaad04c65f698e8f640de826888075_R_4_Float = _SampleTexture2D_63aaad04c65f698e8f640de826888075_RGBA_0_Vector4.r;
|
|
float _SampleTexture2D_63aaad04c65f698e8f640de826888075_G_5_Float = _SampleTexture2D_63aaad04c65f698e8f640de826888075_RGBA_0_Vector4.g;
|
|
float _SampleTexture2D_63aaad04c65f698e8f640de826888075_B_6_Float = _SampleTexture2D_63aaad04c65f698e8f640de826888075_RGBA_0_Vector4.b;
|
|
float _SampleTexture2D_63aaad04c65f698e8f640de826888075_A_7_Float = _SampleTexture2D_63aaad04c65f698e8f640de826888075_RGBA_0_Vector4.a;
|
|
float _Property_6c35e329e57d0e89950e24817068dbb1_Out_0_Float = _shapeNormalScale;
|
|
float3 _NormalStrength_e181a1bb2f4e35819e0f35e77346e12e_Out_2_Vector3;
|
|
Unity_NormalStrength_float((_SampleTexture2D_63aaad04c65f698e8f640de826888075_RGBA_0_Vector4.xyz), _Property_6c35e329e57d0e89950e24817068dbb1_Out_0_Float, _NormalStrength_e181a1bb2f4e35819e0f35e77346e12e_Out_2_Vector3);
|
|
float3 _NormalBlend_ead295b946c6058190c298c03bf64d0b_Out_2_Vector3;
|
|
Unity_NormalBlend_float(_NormalStrength_260139b4d5077d8b9d42de780d173b6c_Out_2_Vector3, _NormalStrength_e181a1bb2f4e35819e0f35e77346e12e_Out_2_Vector3, _NormalBlend_ead295b946c6058190c298c03bf64d0b_Out_2_Vector3);
|
|
float3 _NormalBlend_4242e1b4a785378aa59dd49e9d993ffc_Out_2_Vector3;
|
|
Unity_NormalBlend_float(_Vector3_6999cbd6a5aa908cb7c059b5f2f5b330_Out_0_Vector3, _NormalBlend_ead295b946c6058190c298c03bf64d0b_Out_2_Vector3, _NormalBlend_4242e1b4a785378aa59dd49e9d993ffc_Out_2_Vector3);
|
|
float _Property_3d4ab6ad1f1f138a96f0463f7be8b6ce_Out_0_Float = _CovershapeNormalScale;
|
|
float3 _NormalStrength_401cd5af500bd68dbc9bca19d548d0db_Out_2_Vector3;
|
|
Unity_NormalStrength_float((_SampleTexture2D_63aaad04c65f698e8f640de826888075_RGBA_0_Vector4.xyz), _Property_3d4ab6ad1f1f138a96f0463f7be8b6ce_Out_0_Float, _NormalStrength_401cd5af500bd68dbc9bca19d548d0db_Out_2_Vector3);
|
|
UnityTexture2D _Property_779695727390348d8b8a7f7ae2245af0_Out_0_Texture2D = UnityBuildTexture2DStructNoScale(_CoverNormalMap);
|
|
Bindings_TriplanarNMn_059da9746584140498cd018db3c76047_float _TriplanarNMn_ba7e211dd8095589a2939b5b239ca8e0;
|
|
_TriplanarNMn_ba7e211dd8095589a2939b5b239ca8e0.WorldSpaceNormal = IN.WorldSpaceNormal;
|
|
_TriplanarNMn_ba7e211dd8095589a2939b5b239ca8e0.WorldSpaceTangent = IN.WorldSpaceTangent;
|
|
_TriplanarNMn_ba7e211dd8095589a2939b5b239ca8e0.WorldSpaceBiTangent = IN.WorldSpaceBiTangent;
|
|
_TriplanarNMn_ba7e211dd8095589a2939b5b239ca8e0.AbsoluteWorldSpacePosition = IN.AbsoluteWorldSpacePosition;
|
|
float4 _TriplanarNMn_ba7e211dd8095589a2939b5b239ca8e0_XYZ_1_Vector4;
|
|
float4 _TriplanarNMn_ba7e211dd8095589a2939b5b239ca8e0_XZ_2_Vector4;
|
|
float4 _TriplanarNMn_ba7e211dd8095589a2939b5b239ca8e0_YZ_3_Vector4;
|
|
float4 _TriplanarNMn_ba7e211dd8095589a2939b5b239ca8e0_XY_4_Vector4;
|
|
SG_TriplanarNMn_059da9746584140498cd018db3c76047_float(_Property_779695727390348d8b8a7f7ae2245af0_Out_0_Texture2D, (_Divide_1fe314f1ca9dd78fbf366bbeb40e4ccf_Out_2_Vector4).x, _Property_ee792eccbb538a878b19be5db264531e_Out_0_Float, UnityBuildSamplerStateStruct(SamplerState_Linear_Repeat_Aniso8), _TriplanarNMn_ba7e211dd8095589a2939b5b239ca8e0, _TriplanarNMn_ba7e211dd8095589a2939b5b239ca8e0_XYZ_1_Vector4, _TriplanarNMn_ba7e211dd8095589a2939b5b239ca8e0_XZ_2_Vector4, _TriplanarNMn_ba7e211dd8095589a2939b5b239ca8e0_YZ_3_Vector4, _TriplanarNMn_ba7e211dd8095589a2939b5b239ca8e0_XY_4_Vector4);
|
|
float _Property_5aba050988182f8aad3ec6b2c7e57899_Out_0_Float = _CoverNormalBlendHardness;
|
|
float3 _NormalStrength_dac4b0abfa8a1f82b7103b18f6e6e1b7_Out_2_Vector3;
|
|
Unity_NormalStrength_float((_TriplanarNMn_ba7e211dd8095589a2939b5b239ca8e0_XYZ_1_Vector4.xyz), _Property_5aba050988182f8aad3ec6b2c7e57899_Out_0_Float, _NormalStrength_dac4b0abfa8a1f82b7103b18f6e6e1b7_Out_2_Vector3);
|
|
float3 _NormalBlend_4058aded292b7389ade16c695a6cae6c_Out_2_Vector3;
|
|
Unity_NormalBlend_float(_NormalStrength_401cd5af500bd68dbc9bca19d548d0db_Out_2_Vector3, _NormalStrength_dac4b0abfa8a1f82b7103b18f6e6e1b7_Out_2_Vector3, _NormalBlend_4058aded292b7389ade16c695a6cae6c_Out_2_Vector3);
|
|
float3 _Multiply_0e22f9c6ff55a188b2533f1889a53038_Out_2_Vector3;
|
|
Unity_Multiply_float3_float3(_Property_9180f8dd535ba18499edac37aef4d231_Out_0_Vector3, IN.WorldSpaceNormal, _Multiply_0e22f9c6ff55a188b2533f1889a53038_Out_2_Vector3);
|
|
float _Split_89708601b575b58c852cd55e4fb248d1_R_1_Float = _Multiply_0e22f9c6ff55a188b2533f1889a53038_Out_2_Vector3[0];
|
|
float _Split_89708601b575b58c852cd55e4fb248d1_G_2_Float = _Multiply_0e22f9c6ff55a188b2533f1889a53038_Out_2_Vector3[1];
|
|
float _Split_89708601b575b58c852cd55e4fb248d1_B_3_Float = _Multiply_0e22f9c6ff55a188b2533f1889a53038_Out_2_Vector3[2];
|
|
float _Split_89708601b575b58c852cd55e4fb248d1_A_4_Float = 0;
|
|
float _Add_bfe29b97a9ce3b80aa4cd689be8c4a97_Out_2_Float;
|
|
Unity_Add_float(_Split_89708601b575b58c852cd55e4fb248d1_R_1_Float, _Split_89708601b575b58c852cd55e4fb248d1_G_2_Float, _Add_bfe29b97a9ce3b80aa4cd689be8c4a97_Out_2_Float);
|
|
float _Add_f3152b42a227088aa1439fc1fe8451cc_Out_2_Float;
|
|
Unity_Add_float(_Add_bfe29b97a9ce3b80aa4cd689be8c4a97_Out_2_Float, _Split_89708601b575b58c852cd55e4fb248d1_B_3_Float, _Add_f3152b42a227088aa1439fc1fe8451cc_Out_2_Float);
|
|
float _Property_deabceefa3e3438a8ad71fa67fc5b070_Out_0_Float = _Cover_Amount;
|
|
float _Property_2fba2d762d74b8828ff566c10bc48e86_Out_0_Float = _Cover_Amount_Grow_Speed;
|
|
float _Subtract_1f990262a41ce88f96a47df66dcb4971_Out_2_Float;
|
|
Unity_Subtract_float(float(4), _Property_2fba2d762d74b8828ff566c10bc48e86_Out_0_Float, _Subtract_1f990262a41ce88f96a47df66dcb4971_Out_2_Float);
|
|
float _Divide_a89e05be4802ac80886ad6bdeadc4949_Out_2_Float;
|
|
Unity_Divide_float(_Property_deabceefa3e3438a8ad71fa67fc5b070_Out_0_Float, _Subtract_1f990262a41ce88f96a47df66dcb4971_Out_2_Float, _Divide_a89e05be4802ac80886ad6bdeadc4949_Out_2_Float);
|
|
float _Absolute_2b58f48ab94a3087a726a2b03c51e2c6_Out_1_Float;
|
|
Unity_Absolute_float(_Divide_a89e05be4802ac80886ad6bdeadc4949_Out_2_Float, _Absolute_2b58f48ab94a3087a726a2b03c51e2c6_Out_1_Float);
|
|
float _Power_6695d49b8b82468ea686b66e6749260b_Out_2_Float;
|
|
Unity_Power_float(_Absolute_2b58f48ab94a3087a726a2b03c51e2c6_Out_1_Float, _Subtract_1f990262a41ce88f96a47df66dcb4971_Out_2_Float, _Power_6695d49b8b82468ea686b66e6749260b_Out_2_Float);
|
|
float _Clamp_94f0310fee13798bad4e26e2381a94d4_Out_3_Float;
|
|
Unity_Clamp_float(_Power_6695d49b8b82468ea686b66e6749260b_Out_2_Float, float(0), float(2), _Clamp_94f0310fee13798bad4e26e2381a94d4_Out_3_Float);
|
|
float _Multiply_999692515a117385ade114d924fa589a_Out_2_Float;
|
|
Unity_Multiply_float_float(_Add_f3152b42a227088aa1439fc1fe8451cc_Out_2_Float, _Clamp_94f0310fee13798bad4e26e2381a94d4_Out_3_Float, _Multiply_999692515a117385ade114d924fa589a_Out_2_Float);
|
|
float _Saturate_f811eeeeb3229d83917aa8be2c36831e_Out_1_Float;
|
|
Unity_Saturate_float(_Multiply_999692515a117385ade114d924fa589a_Out_2_Float, _Saturate_f811eeeeb3229d83917aa8be2c36831e_Out_1_Float);
|
|
float _Clamp_4c470807610adb8c8488f125c0af7bb5_Out_3_Float;
|
|
Unity_Clamp_float(_Add_f3152b42a227088aa1439fc1fe8451cc_Out_2_Float, float(0), float(0.9999), _Clamp_4c470807610adb8c8488f125c0af7bb5_Out_3_Float);
|
|
float _Property_765e3d021aec6d8f9f8b3174d5a06980_Out_0_Float = _Cover_Max_Angle;
|
|
float _Divide_9d9fc267a9ebcf84b378fdd4c66ff34d_Out_2_Float;
|
|
Unity_Divide_float(_Property_765e3d021aec6d8f9f8b3174d5a06980_Out_0_Float, float(45), _Divide_9d9fc267a9ebcf84b378fdd4c66ff34d_Out_2_Float);
|
|
float _OneMinus_f074fba0be46e688aa75f5377832251a_Out_1_Float;
|
|
Unity_OneMinus_float(_Divide_9d9fc267a9ebcf84b378fdd4c66ff34d_Out_2_Float, _OneMinus_f074fba0be46e688aa75f5377832251a_Out_1_Float);
|
|
float _Subtract_0b0cd6145e351c87a68366348828154d_Out_2_Float;
|
|
Unity_Subtract_float(_Clamp_4c470807610adb8c8488f125c0af7bb5_Out_3_Float, _OneMinus_f074fba0be46e688aa75f5377832251a_Out_1_Float, _Subtract_0b0cd6145e351c87a68366348828154d_Out_2_Float);
|
|
float _Clamp_30607c0c4e04e5879d4061a1f7688421_Out_3_Float;
|
|
Unity_Clamp_float(_Subtract_0b0cd6145e351c87a68366348828154d_Out_2_Float, float(0), float(2), _Clamp_30607c0c4e04e5879d4061a1f7688421_Out_3_Float);
|
|
float _Divide_cfe09f3bd2005485a3c2229367309962_Out_2_Float;
|
|
Unity_Divide_float(float(1), _Divide_9d9fc267a9ebcf84b378fdd4c66ff34d_Out_2_Float, _Divide_cfe09f3bd2005485a3c2229367309962_Out_2_Float);
|
|
float _Multiply_022be2eb9027988b9d5d4c1392749347_Out_2_Float;
|
|
Unity_Multiply_float_float(_Clamp_30607c0c4e04e5879d4061a1f7688421_Out_3_Float, _Divide_cfe09f3bd2005485a3c2229367309962_Out_2_Float, _Multiply_022be2eb9027988b9d5d4c1392749347_Out_2_Float);
|
|
float _Absolute_2fed84623df90f8ba200de68955721fd_Out_1_Float;
|
|
Unity_Absolute_float(_Multiply_022be2eb9027988b9d5d4c1392749347_Out_2_Float, _Absolute_2fed84623df90f8ba200de68955721fd_Out_1_Float);
|
|
float _Property_b79c921e30793a8e84330b3341539232_Out_0_Float = _CoverHardness;
|
|
float _Power_b9ddee06dfd0b880880990743bc10612_Out_2_Float;
|
|
Unity_Power_float(_Absolute_2fed84623df90f8ba200de68955721fd_Out_1_Float, _Property_b79c921e30793a8e84330b3341539232_Out_0_Float, _Power_b9ddee06dfd0b880880990743bc10612_Out_2_Float);
|
|
float _Property_c82936191f294c89b76f2d1809168f87_Out_0_Float = _Cover_Min_Height;
|
|
float _OneMinus_f0918ccb4f747b8e83e39d82dc3b5ca9_Out_1_Float;
|
|
Unity_OneMinus_float(_Property_c82936191f294c89b76f2d1809168f87_Out_0_Float, _OneMinus_f0918ccb4f747b8e83e39d82dc3b5ca9_Out_1_Float);
|
|
float _Split_0e80ce6f80cff18f87a043d1e3eecd08_R_1_Float = IN.AbsoluteWorldSpacePosition[0];
|
|
float _Split_0e80ce6f80cff18f87a043d1e3eecd08_G_2_Float = IN.AbsoluteWorldSpacePosition[1];
|
|
float _Split_0e80ce6f80cff18f87a043d1e3eecd08_B_3_Float = IN.AbsoluteWorldSpacePosition[2];
|
|
float _Split_0e80ce6f80cff18f87a043d1e3eecd08_A_4_Float = 0;
|
|
float _Add_60b3bb4cdad6e88b8c097c5b08daa7d0_Out_2_Float;
|
|
Unity_Add_float(_OneMinus_f0918ccb4f747b8e83e39d82dc3b5ca9_Out_1_Float, _Split_0e80ce6f80cff18f87a043d1e3eecd08_G_2_Float, _Add_60b3bb4cdad6e88b8c097c5b08daa7d0_Out_2_Float);
|
|
float _Add_1898d6f46901df809c68b5241b2e9c37_Out_2_Float;
|
|
Unity_Add_float(_Add_60b3bb4cdad6e88b8c097c5b08daa7d0_Out_2_Float, float(1), _Add_1898d6f46901df809c68b5241b2e9c37_Out_2_Float);
|
|
float _Clamp_25d6140fa3ff3a8f956f99005adace2e_Out_3_Float;
|
|
Unity_Clamp_float(_Add_1898d6f46901df809c68b5241b2e9c37_Out_2_Float, float(0), float(1), _Clamp_25d6140fa3ff3a8f956f99005adace2e_Out_3_Float);
|
|
float _Property_6094a52a4f01fd8da5ea847b69b6941c_Out_0_Float = _Cover_Min_Height_Blending;
|
|
float _Add_dc69668fc7f1a586a754713499f71d99_Out_2_Float;
|
|
Unity_Add_float(_Add_60b3bb4cdad6e88b8c097c5b08daa7d0_Out_2_Float, _Property_6094a52a4f01fd8da5ea847b69b6941c_Out_0_Float, _Add_dc69668fc7f1a586a754713499f71d99_Out_2_Float);
|
|
float _Divide_63e32406c8773d83bbf2e244faf8328f_Out_2_Float;
|
|
Unity_Divide_float(_Add_dc69668fc7f1a586a754713499f71d99_Out_2_Float, _Add_60b3bb4cdad6e88b8c097c5b08daa7d0_Out_2_Float, _Divide_63e32406c8773d83bbf2e244faf8328f_Out_2_Float);
|
|
float _OneMinus_ec22d21ddfa84288b6f750e9fdb107b9_Out_1_Float;
|
|
Unity_OneMinus_float(_Divide_63e32406c8773d83bbf2e244faf8328f_Out_2_Float, _OneMinus_ec22d21ddfa84288b6f750e9fdb107b9_Out_1_Float);
|
|
float _Add_a1206af8cbfbbe8081046db1247aba04_Out_2_Float;
|
|
Unity_Add_float(_OneMinus_ec22d21ddfa84288b6f750e9fdb107b9_Out_1_Float, float(-0.5), _Add_a1206af8cbfbbe8081046db1247aba04_Out_2_Float);
|
|
float _Clamp_640b5884b29f188987c157ad5e6e6959_Out_3_Float;
|
|
Unity_Clamp_float(_Add_a1206af8cbfbbe8081046db1247aba04_Out_2_Float, float(0), float(1), _Clamp_640b5884b29f188987c157ad5e6e6959_Out_3_Float);
|
|
float _Add_cfdb6daf617665838bb05910fa9505df_Out_2_Float;
|
|
Unity_Add_float(_Clamp_25d6140fa3ff3a8f956f99005adace2e_Out_3_Float, _Clamp_640b5884b29f188987c157ad5e6e6959_Out_3_Float, _Add_cfdb6daf617665838bb05910fa9505df_Out_2_Float);
|
|
float _Clamp_552ef7e5cf91408a982297885971db7e_Out_3_Float;
|
|
Unity_Clamp_float(_Add_cfdb6daf617665838bb05910fa9505df_Out_2_Float, float(0), float(1), _Clamp_552ef7e5cf91408a982297885971db7e_Out_3_Float);
|
|
float _Multiply_8f8db9c494f4fd869809fc45531df628_Out_2_Float;
|
|
Unity_Multiply_float_float(_Power_b9ddee06dfd0b880880990743bc10612_Out_2_Float, _Clamp_552ef7e5cf91408a982297885971db7e_Out_3_Float, _Multiply_8f8db9c494f4fd869809fc45531df628_Out_2_Float);
|
|
float _Multiply_60075aa07d29d285b3c1ee531e5b5cb3_Out_2_Float;
|
|
Unity_Multiply_float_float(_Saturate_f811eeeeb3229d83917aa8be2c36831e_Out_1_Float, _Multiply_8f8db9c494f4fd869809fc45531df628_Out_2_Float, _Multiply_60075aa07d29d285b3c1ee531e5b5cb3_Out_2_Float);
|
|
float3 _Lerp_453c8bc667315a8fa37a93affb877753_Out_3_Vector3;
|
|
Unity_Lerp_float3(_NormalBlend_4242e1b4a785378aa59dd49e9d993ffc_Out_2_Vector3, _NormalBlend_4058aded292b7389ade16c695a6cae6c_Out_2_Vector3, (_Multiply_60075aa07d29d285b3c1ee531e5b5cb3_Out_2_Float.xxx), _Lerp_453c8bc667315a8fa37a93affb877753_Out_3_Vector3);
|
|
float3 _Transform_a87113b0be9dfa8eaf6932ed645aa845_Out_1_Vector3;
|
|
{
|
|
float3x3 tangentTransform = float3x3(IN.WorldSpaceTangent, IN.WorldSpaceBiTangent, IN.WorldSpaceNormal);
|
|
_Transform_a87113b0be9dfa8eaf6932ed645aa845_Out_1_Vector3 = TransformTangentToWorldDir(_Lerp_453c8bc667315a8fa37a93affb877753_Out_3_Vector3.xyz, tangentTransform, false).xyz;
|
|
}
|
|
float3 _Multiply_f6e009bd5c0fd18c99ac72f233476fe5_Out_2_Vector3;
|
|
Unity_Multiply_float3_float3(_Property_9180f8dd535ba18499edac37aef4d231_Out_0_Vector3, _Transform_a87113b0be9dfa8eaf6932ed645aa845_Out_1_Vector3, _Multiply_f6e009bd5c0fd18c99ac72f233476fe5_Out_2_Vector3);
|
|
float _Split_96f0a5b75c0e0b889dbbccd04bc2aaaa_R_1_Float = _Multiply_f6e009bd5c0fd18c99ac72f233476fe5_Out_2_Vector3[0];
|
|
float _Split_96f0a5b75c0e0b889dbbccd04bc2aaaa_G_2_Float = _Multiply_f6e009bd5c0fd18c99ac72f233476fe5_Out_2_Vector3[1];
|
|
float _Split_96f0a5b75c0e0b889dbbccd04bc2aaaa_B_3_Float = _Multiply_f6e009bd5c0fd18c99ac72f233476fe5_Out_2_Vector3[2];
|
|
float _Split_96f0a5b75c0e0b889dbbccd04bc2aaaa_A_4_Float = 0;
|
|
float _Add_07028d5174d9f88594da40d46502bc13_Out_2_Float;
|
|
Unity_Add_float(_Split_96f0a5b75c0e0b889dbbccd04bc2aaaa_R_1_Float, _Split_96f0a5b75c0e0b889dbbccd04bc2aaaa_G_2_Float, _Add_07028d5174d9f88594da40d46502bc13_Out_2_Float);
|
|
float _Add_93af6c0f8ee9a3898ca51358a213b69f_Out_2_Float;
|
|
Unity_Add_float(_Add_07028d5174d9f88594da40d46502bc13_Out_2_Float, _Split_96f0a5b75c0e0b889dbbccd04bc2aaaa_B_3_Float, _Add_93af6c0f8ee9a3898ca51358a213b69f_Out_2_Float);
|
|
float _Multiply_77421b936cb9d68299ef6791b83fa867_Out_2_Float;
|
|
Unity_Multiply_float_float(_Add_93af6c0f8ee9a3898ca51358a213b69f_Out_2_Float, _Clamp_94f0310fee13798bad4e26e2381a94d4_Out_3_Float, _Multiply_77421b936cb9d68299ef6791b83fa867_Out_2_Float);
|
|
float _Multiply_ac6769fbe7188685a7537e5ac2c6bfa9_Out_2_Float;
|
|
Unity_Multiply_float_float(_Clamp_94f0310fee13798bad4e26e2381a94d4_Out_3_Float, _Property_b79c921e30793a8e84330b3341539232_Out_0_Float, _Multiply_ac6769fbe7188685a7537e5ac2c6bfa9_Out_2_Float);
|
|
float _Multiply_37a341e0d9783683aa8d5b7001acced1_Out_2_Float;
|
|
Unity_Multiply_float_float(_Multiply_ac6769fbe7188685a7537e5ac2c6bfa9_Out_2_Float, _Multiply_8f8db9c494f4fd869809fc45531df628_Out_2_Float, _Multiply_37a341e0d9783683aa8d5b7001acced1_Out_2_Float);
|
|
float _Multiply_02fa8aa66970b281b4a325dc68f407b9_Out_2_Float;
|
|
Unity_Multiply_float_float(_Multiply_77421b936cb9d68299ef6791b83fa867_Out_2_Float, _Multiply_37a341e0d9783683aa8d5b7001acced1_Out_2_Float, _Multiply_02fa8aa66970b281b4a325dc68f407b9_Out_2_Float);
|
|
UnityTexture2D _Property_fd2df7ee33755280948b4c47585d4323_Out_0_Texture2D = UnityBuildTexture2DStructNoScale(_CoverMaskMap);
|
|
Bindings_TriplanarNM_bc609ed95f52591469ab35dbfe0efcea_float _TriplanarNM_e307cfdc6531d2838aa3dfa51fc3913f;
|
|
_TriplanarNM_e307cfdc6531d2838aa3dfa51fc3913f.WorldSpaceNormal = IN.WorldSpaceNormal;
|
|
_TriplanarNM_e307cfdc6531d2838aa3dfa51fc3913f.AbsoluteWorldSpacePosition = IN.AbsoluteWorldSpacePosition;
|
|
float4 _TriplanarNM_e307cfdc6531d2838aa3dfa51fc3913f_XYZ_1_Vector4;
|
|
float4 _TriplanarNM_e307cfdc6531d2838aa3dfa51fc3913f_XZ_2_Vector4;
|
|
float4 _TriplanarNM_e307cfdc6531d2838aa3dfa51fc3913f_YZ_3_Vector4;
|
|
float4 _TriplanarNM_e307cfdc6531d2838aa3dfa51fc3913f_XY_4_Vector4;
|
|
SG_TriplanarNM_bc609ed95f52591469ab35dbfe0efcea_float(_Property_fd2df7ee33755280948b4c47585d4323_Out_0_Texture2D, (_Divide_1fe314f1ca9dd78fbf366bbeb40e4ccf_Out_2_Vector4).x, _Property_ee792eccbb538a878b19be5db264531e_Out_0_Float, UnityBuildSamplerStateStruct(SamplerState_Linear_Repeat_Aniso8), _TriplanarNM_e307cfdc6531d2838aa3dfa51fc3913f, _TriplanarNM_e307cfdc6531d2838aa3dfa51fc3913f_XYZ_1_Vector4, _TriplanarNM_e307cfdc6531d2838aa3dfa51fc3913f_XZ_2_Vector4, _TriplanarNM_e307cfdc6531d2838aa3dfa51fc3913f_YZ_3_Vector4, _TriplanarNM_e307cfdc6531d2838aa3dfa51fc3913f_XY_4_Vector4);
|
|
float _Split_fe834aed1172f284a73d2d6810bdb696_R_1_Float = _TriplanarNM_e307cfdc6531d2838aa3dfa51fc3913f_XYZ_1_Vector4[0];
|
|
float _Split_fe834aed1172f284a73d2d6810bdb696_G_2_Float = _TriplanarNM_e307cfdc6531d2838aa3dfa51fc3913f_XYZ_1_Vector4[1];
|
|
float _Split_fe834aed1172f284a73d2d6810bdb696_B_3_Float = _TriplanarNM_e307cfdc6531d2838aa3dfa51fc3913f_XYZ_1_Vector4[2];
|
|
float _Split_fe834aed1172f284a73d2d6810bdb696_A_4_Float = _TriplanarNM_e307cfdc6531d2838aa3dfa51fc3913f_XYZ_1_Vector4[3];
|
|
float _Property_b5f7a30c2ea202858ea263fd2a5a46c6_Out_0_Float = _CoverHeightMapMin;
|
|
float _Property_f86678f1d28c0483ba1ddccf49ee52f7_Out_0_Float = _CoverHeightMapMax;
|
|
float2 _Vector2_b5c01a0d88900d87a8a819b340151fb6_Out_0_Vector2 = float2(_Property_b5f7a30c2ea202858ea263fd2a5a46c6_Out_0_Float, _Property_f86678f1d28c0483ba1ddccf49ee52f7_Out_0_Float);
|
|
float _Property_82b4f7f3bf3b4382bd69876479a9e350_Out_0_Float = _CoverHeightMapOffset;
|
|
float2 _Add_6020f54fd1e6798e8e76bfdcad62759a_Out_2_Vector2;
|
|
Unity_Add_float2(_Vector2_b5c01a0d88900d87a8a819b340151fb6_Out_0_Vector2, (_Property_82b4f7f3bf3b4382bd69876479a9e350_Out_0_Float.xx), _Add_6020f54fd1e6798e8e76bfdcad62759a_Out_2_Vector2);
|
|
float _Remap_65ceff40294d1e8aae6051445b9fdbc8_Out_3_Float;
|
|
Unity_Remap_float(_Split_fe834aed1172f284a73d2d6810bdb696_B_3_Float, float2 (0, 1), _Add_6020f54fd1e6798e8e76bfdcad62759a_Out_2_Vector2, _Remap_65ceff40294d1e8aae6051445b9fdbc8_Out_3_Float);
|
|
float _Multiply_bb0edd30580dba8b89213d9c5b1ef857_Out_2_Float;
|
|
Unity_Multiply_float_float(_Multiply_02fa8aa66970b281b4a325dc68f407b9_Out_2_Float, _Remap_65ceff40294d1e8aae6051445b9fdbc8_Out_3_Float, _Multiply_bb0edd30580dba8b89213d9c5b1ef857_Out_2_Float);
|
|
float _Multiply_484dd7b77d58aa88bf99c82cfe77c774_Out_2_Float;
|
|
Unity_Multiply_float_float(_Split_2ada595651635e8d97bf4b82f717fcc6_G_2_Float, _Multiply_bb0edd30580dba8b89213d9c5b1ef857_Out_2_Float, _Multiply_484dd7b77d58aa88bf99c82cfe77c774_Out_2_Float);
|
|
float _Saturate_d39fa9bab8cc8a8fa35db28d4dbc74ab_Out_1_Float;
|
|
Unity_Saturate_float(_Multiply_484dd7b77d58aa88bf99c82cfe77c774_Out_2_Float, _Saturate_d39fa9bab8cc8a8fa35db28d4dbc74ab_Out_1_Float);
|
|
float _Multiply_6957741a4923cc8db84ac72df2e194a8_Out_2_Float;
|
|
Unity_Multiply_float_float(_Clamp_07a501c22c6e188199bed73412ac8926_Out_3_Float, _Saturate_d39fa9bab8cc8a8fa35db28d4dbc74ab_Out_1_Float, _Multiply_6957741a4923cc8db84ac72df2e194a8_Out_2_Float);
|
|
float _Branch_3ccf365d359214809d30b6430d863e3f_Out_3_Float;
|
|
Unity_Branch_float(_Property_cb0b6597aee47880b32e852aaa0e4a71_Out_0_Boolean, _Multiply_6957741a4923cc8db84ac72df2e194a8_Out_2_Float, _Clamp_07a501c22c6e188199bed73412ac8926_Out_3_Float, _Branch_3ccf365d359214809d30b6430d863e3f_Out_3_Float);
|
|
float3 _Lerp_ee1b6587de2afe82942e8476d303d598_Out_3_Vector3;
|
|
Unity_Lerp_float3(_BlendOverlayBaseColor_369c0b6a02e62b809dc5c6ac1efddde2_OutVector4_1_Vector3, _BlendOverlayBaseColor_ec1f397271cc818abdb95188914e6b4d_OutVector4_1_Vector3, (_Branch_3ccf365d359214809d30b6430d863e3f_Out_3_Float.xxx), _Lerp_ee1b6587de2afe82942e8476d303d598_Out_3_Vector3);
|
|
float4 _Property_c500db71e51fef8daff29f346c122e57_Out_0_Vector4 = _WetColor;
|
|
float3 _Multiply_89461014b078f787a0724725c54fb934_Out_2_Vector3;
|
|
Unity_Multiply_float3_float3((_Property_c500db71e51fef8daff29f346c122e57_Out_0_Vector4.xyz), _Lerp_ee1b6587de2afe82942e8476d303d598_Out_3_Vector3, _Multiply_89461014b078f787a0724725c54fb934_Out_2_Vector3);
|
|
float _OneMinus_e16dfb812ec64b8891c541171687142f_Out_1_Float;
|
|
Unity_OneMinus_float(_Split_2ada595651635e8d97bf4b82f717fcc6_R_1_Float, _OneMinus_e16dfb812ec64b8891c541171687142f_Out_1_Float);
|
|
float3 _Lerp_43bc7a9493df5a829abf080ee4ad3298_Out_3_Vector3;
|
|
Unity_Lerp_float3(_Lerp_ee1b6587de2afe82942e8476d303d598_Out_3_Vector3, _Multiply_89461014b078f787a0724725c54fb934_Out_2_Vector3, (_OneMinus_e16dfb812ec64b8891c541171687142f_Out_1_Float.xxx), _Lerp_43bc7a9493df5a829abf080ee4ad3298_Out_3_Vector3);
|
|
UnityTexture2D _Property_8e909eb873a4cd8e9af98a90a84fdde8_Out_0_Texture2D = UnityBuildTexture2DStructNoScale(_BaseMaskMap);
|
|
Bindings_TriplanarNM_bc609ed95f52591469ab35dbfe0efcea_float _TriplanarNM_52e6c67b7de4708f80a463a880607c97;
|
|
_TriplanarNM_52e6c67b7de4708f80a463a880607c97.WorldSpaceNormal = IN.WorldSpaceNormal;
|
|
_TriplanarNM_52e6c67b7de4708f80a463a880607c97.AbsoluteWorldSpacePosition = IN.AbsoluteWorldSpacePosition;
|
|
float4 _TriplanarNM_52e6c67b7de4708f80a463a880607c97_XYZ_1_Vector4;
|
|
float4 _TriplanarNM_52e6c67b7de4708f80a463a880607c97_XZ_2_Vector4;
|
|
float4 _TriplanarNM_52e6c67b7de4708f80a463a880607c97_YZ_3_Vector4;
|
|
float4 _TriplanarNM_52e6c67b7de4708f80a463a880607c97_XY_4_Vector4;
|
|
SG_TriplanarNM_bc609ed95f52591469ab35dbfe0efcea_float(_Property_8e909eb873a4cd8e9af98a90a84fdde8_Out_0_Texture2D, (_Divide_6a90cebe78e620828de587523daaa7e6_Out_2_Vector4).x, _Property_3539de8c698c2981bb3c088d4ec52201_Out_0_Float, UnityBuildSamplerStateStruct(SamplerState_Linear_Repeat_Aniso8), _TriplanarNM_52e6c67b7de4708f80a463a880607c97, _TriplanarNM_52e6c67b7de4708f80a463a880607c97_XYZ_1_Vector4, _TriplanarNM_52e6c67b7de4708f80a463a880607c97_XZ_2_Vector4, _TriplanarNM_52e6c67b7de4708f80a463a880607c97_YZ_3_Vector4, _TriplanarNM_52e6c67b7de4708f80a463a880607c97_XY_4_Vector4);
|
|
float _Split_79d9d761d63eaa8c97fb3cb7fae0c380_R_1_Float = _TriplanarNM_52e6c67b7de4708f80a463a880607c97_XYZ_1_Vector4[0];
|
|
float _Split_79d9d761d63eaa8c97fb3cb7fae0c380_G_2_Float = _TriplanarNM_52e6c67b7de4708f80a463a880607c97_XYZ_1_Vector4[1];
|
|
float _Split_79d9d761d63eaa8c97fb3cb7fae0c380_B_3_Float = _TriplanarNM_52e6c67b7de4708f80a463a880607c97_XYZ_1_Vector4[2];
|
|
float _Split_79d9d761d63eaa8c97fb3cb7fae0c380_A_4_Float = _TriplanarNM_52e6c67b7de4708f80a463a880607c97_XYZ_1_Vector4[3];
|
|
float _Property_b97916566d1fc587b95e8ec7fe8bd775_Out_0_Float = _BaseMetallic;
|
|
float _Multiply_d0c8d83444dbe38588583551936c7394_Out_2_Float;
|
|
Unity_Multiply_float_float(_Split_79d9d761d63eaa8c97fb3cb7fae0c380_R_1_Float, _Property_b97916566d1fc587b95e8ec7fe8bd775_Out_0_Float, _Multiply_d0c8d83444dbe38588583551936c7394_Out_2_Float);
|
|
float _Property_b187bbc548f3378caa8c964ca81707ca_Out_0_Float = _BaseAORemapMin;
|
|
float _Property_f06b327a4a8a7881a968eb399edf1d5c_Out_0_Float = _BaseAORemapMax;
|
|
float2 _Vector2_e267d722f88ada8da2d7edf8f7c0261d_Out_0_Vector2 = float2(_Property_b187bbc548f3378caa8c964ca81707ca_Out_0_Float, _Property_f06b327a4a8a7881a968eb399edf1d5c_Out_0_Float);
|
|
float _Remap_ad3c26564c54aa8cbb2f81aa114b3b78_Out_3_Float;
|
|
Unity_Remap_float(_Split_79d9d761d63eaa8c97fb3cb7fae0c380_G_2_Float, float2 (0, 1), _Vector2_e267d722f88ada8da2d7edf8f7c0261d_Out_0_Vector2, _Remap_ad3c26564c54aa8cbb2f81aa114b3b78_Out_3_Float);
|
|
float _Property_9a46e81c228dd0858cfdfc248fcb5efd_Out_0_Float = _BaseSmoothnessRemapMin;
|
|
float _Property_4bb3b70a3720ae8ea49e0f195b665d1f_Out_0_Float = _BaseSmoothnessRemapMax;
|
|
float2 _Vector2_6cef82af5d99208da4f2447a8ae60b4b_Out_0_Vector2 = float2(_Property_9a46e81c228dd0858cfdfc248fcb5efd_Out_0_Float, _Property_4bb3b70a3720ae8ea49e0f195b665d1f_Out_0_Float);
|
|
float _Remap_e30adbbf5d116285964ef079df15b895_Out_3_Float;
|
|
Unity_Remap_float(_Split_79d9d761d63eaa8c97fb3cb7fae0c380_A_4_Float, float2 (0, 1), _Vector2_6cef82af5d99208da4f2447a8ae60b4b_Out_0_Vector2, _Remap_e30adbbf5d116285964ef079df15b895_Out_3_Float);
|
|
float _Multiply_794172f65d2acd8981bc0e2ecc71376e_Out_2_Float;
|
|
Unity_Multiply_float_float(_SampleTexture2D_4bd08411faa60c828847f2247f06a809_B_6_Float, 2, _Multiply_794172f65d2acd8981bc0e2ecc71376e_Out_2_Float);
|
|
float _Add_dedefe53d91ea08c81d7a6d9071b0263_Out_2_Float;
|
|
Unity_Add_float(_Multiply_794172f65d2acd8981bc0e2ecc71376e_Out_2_Float, float(-1), _Add_dedefe53d91ea08c81d7a6d9071b0263_Out_2_Float);
|
|
float _Property_039bed9aac95ec8fa510fea3c4904280_Out_0_Float = _DetailSmoothnessScale;
|
|
float _Multiply_eb0a55c9be8cee86b9847c24f0e5be60_Out_2_Float;
|
|
Unity_Multiply_float_float(_Add_dedefe53d91ea08c81d7a6d9071b0263_Out_2_Float, _Property_039bed9aac95ec8fa510fea3c4904280_Out_0_Float, _Multiply_eb0a55c9be8cee86b9847c24f0e5be60_Out_2_Float);
|
|
float _Saturate_ca849f42c1cc238cb8fb1eb04fbfb9dd_Out_1_Float;
|
|
Unity_Saturate_float(_Multiply_eb0a55c9be8cee86b9847c24f0e5be60_Out_2_Float, _Saturate_ca849f42c1cc238cb8fb1eb04fbfb9dd_Out_1_Float);
|
|
float _Absolute_bc7994d4f833e382b37b5718ee583259_Out_1_Float;
|
|
Unity_Absolute_float(_Saturate_ca849f42c1cc238cb8fb1eb04fbfb9dd_Out_1_Float, _Absolute_bc7994d4f833e382b37b5718ee583259_Out_1_Float);
|
|
Bindings_BlendOverlayDetailSmoothness_06e12138dc89c0040b45a57abe520a1a_float _BlendOverlayDetailSmoothness_5a03404db5a34885a089f1aee363667f;
|
|
float _BlendOverlayDetailSmoothness_5a03404db5a34885a089f1aee363667f_SmoothnessOverlay_1_Float;
|
|
SG_BlendOverlayDetailSmoothness_06e12138dc89c0040b45a57abe520a1a_float(_Remap_e30adbbf5d116285964ef079df15b895_Out_3_Float, _Add_dedefe53d91ea08c81d7a6d9071b0263_Out_2_Float, _Absolute_bc7994d4f833e382b37b5718ee583259_Out_1_Float, _BlendOverlayDetailSmoothness_5a03404db5a34885a089f1aee363667f, _BlendOverlayDetailSmoothness_5a03404db5a34885a089f1aee363667f_SmoothnessOverlay_1_Float);
|
|
float _Saturate_3d6c6d852202408cb9b11aac8a566c89_Out_1_Float;
|
|
Unity_Saturate_float(_BlendOverlayDetailSmoothness_5a03404db5a34885a089f1aee363667f_SmoothnessOverlay_1_Float, _Saturate_3d6c6d852202408cb9b11aac8a566c89_Out_1_Float);
|
|
float3 _Vector3_8ed406a0096de4818282676bf24b1a85_Out_0_Vector3 = float3(_Multiply_d0c8d83444dbe38588583551936c7394_Out_2_Float, _Remap_ad3c26564c54aa8cbb2f81aa114b3b78_Out_3_Float, _Saturate_3d6c6d852202408cb9b11aac8a566c89_Out_1_Float);
|
|
float _Split_2ec5937af5023a8295e3858d32b193d5_R_1_Float = _Vector3_8ed406a0096de4818282676bf24b1a85_Out_0_Vector3[0];
|
|
float _Split_2ec5937af5023a8295e3858d32b193d5_G_2_Float = _Vector3_8ed406a0096de4818282676bf24b1a85_Out_0_Vector3[1];
|
|
float _Split_2ec5937af5023a8295e3858d32b193d5_B_3_Float = _Vector3_8ed406a0096de4818282676bf24b1a85_Out_0_Vector3[2];
|
|
float _Split_2ec5937af5023a8295e3858d32b193d5_A_4_Float = 0;
|
|
UnityTexture2D _Property_0f50abb140882d848d9fc7be8e3468dc_Out_0_Texture2D = UnityBuildTexture2DStructNoScale(_ShapeAO);
|
|
float4 _SampleTexture2D_33392602b94694898ec8227a89f13cc9_RGBA_0_Vector4 = SAMPLE_TEXTURE2D(_Property_0f50abb140882d848d9fc7be8e3468dc_Out_0_Texture2D.tex, _Property_0f50abb140882d848d9fc7be8e3468dc_Out_0_Texture2D.samplerstate, _Property_0f50abb140882d848d9fc7be8e3468dc_Out_0_Texture2D.GetTransformedUV(IN.uv0.xy) );
|
|
float _SampleTexture2D_33392602b94694898ec8227a89f13cc9_R_4_Float = _SampleTexture2D_33392602b94694898ec8227a89f13cc9_RGBA_0_Vector4.r;
|
|
float _SampleTexture2D_33392602b94694898ec8227a89f13cc9_G_5_Float = _SampleTexture2D_33392602b94694898ec8227a89f13cc9_RGBA_0_Vector4.g;
|
|
float _SampleTexture2D_33392602b94694898ec8227a89f13cc9_B_6_Float = _SampleTexture2D_33392602b94694898ec8227a89f13cc9_RGBA_0_Vector4.b;
|
|
float _SampleTexture2D_33392602b94694898ec8227a89f13cc9_A_7_Float = _SampleTexture2D_33392602b94694898ec8227a89f13cc9_RGBA_0_Vector4.a;
|
|
float _Property_a51c4b6d05e6718d919aadcf26153350_Out_0_Float = _ShapeAORemapMin;
|
|
float _Property_973fbc42b7a69088b9fc2c502945f369_Out_0_Float = _ShapeAORemapMax;
|
|
float2 _Vector2_a73753c5a8c4fa828d2eb25d4fb8b399_Out_0_Vector2 = float2(_Property_a51c4b6d05e6718d919aadcf26153350_Out_0_Float, _Property_973fbc42b7a69088b9fc2c502945f369_Out_0_Float);
|
|
float _Remap_270e7e207f303487bc04348b1b54db69_Out_3_Float;
|
|
Unity_Remap_float(_SampleTexture2D_33392602b94694898ec8227a89f13cc9_G_5_Float, float2 (0, 1), _Vector2_a73753c5a8c4fa828d2eb25d4fb8b399_Out_0_Vector2, _Remap_270e7e207f303487bc04348b1b54db69_Out_3_Float);
|
|
float _Minimum_307d1a8c4f5c6a87a1bbc658a5811679_Out_2_Float;
|
|
Unity_Minimum_float(_Split_2ec5937af5023a8295e3858d32b193d5_G_2_Float, _Remap_270e7e207f303487bc04348b1b54db69_Out_3_Float, _Minimum_307d1a8c4f5c6a87a1bbc658a5811679_Out_2_Float);
|
|
float3 _Vector3_fac10bf467f5ff82b4f071ba165bf458_Out_0_Vector3 = float3(_Split_2ec5937af5023a8295e3858d32b193d5_R_1_Float, _Minimum_307d1a8c4f5c6a87a1bbc658a5811679_Out_2_Float, _Split_2ec5937af5023a8295e3858d32b193d5_B_3_Float);
|
|
float _Property_fa6937565be49684915e6bb999529949_Out_0_Float = _CoverMetallic;
|
|
float _Multiply_d0ecb787fa289f8f9d3c2988d60f18d3_Out_2_Float;
|
|
Unity_Multiply_float_float(_Split_fe834aed1172f284a73d2d6810bdb696_R_1_Float, _Property_fa6937565be49684915e6bb999529949_Out_0_Float, _Multiply_d0ecb787fa289f8f9d3c2988d60f18d3_Out_2_Float);
|
|
float _Property_8f5ca0ba38d2a4858c1b4e44f6a375b4_Out_0_Float = _CoverAORemapMin;
|
|
float _Property_a15ef0fe46e1d88f9e20df6605bd1499_Out_0_Float = _CoverAORemapMax;
|
|
float2 _Vector2_969d809c2de99f89959cc4526a665db9_Out_0_Vector2 = float2(_Property_8f5ca0ba38d2a4858c1b4e44f6a375b4_Out_0_Float, _Property_a15ef0fe46e1d88f9e20df6605bd1499_Out_0_Float);
|
|
float _Remap_1b6065f44329038594e2d0cf001fa138_Out_3_Float;
|
|
Unity_Remap_float(_Split_fe834aed1172f284a73d2d6810bdb696_G_2_Float, float2 (0, 1), _Vector2_969d809c2de99f89959cc4526a665db9_Out_0_Vector2, _Remap_1b6065f44329038594e2d0cf001fa138_Out_3_Float);
|
|
float _Property_0fde68fd9824db8e9f5b4b0daff90270_Out_0_Float = _CoverSmoothnessRemapMin;
|
|
float _Property_abad1da00caf99869e0c9ca2926c76bd_Out_0_Float = _CoverSmoothnessRemapMax;
|
|
float2 _Vector2_1aa81c2ad7cc268caa834889569ce556_Out_0_Vector2 = float2(_Property_0fde68fd9824db8e9f5b4b0daff90270_Out_0_Float, _Property_abad1da00caf99869e0c9ca2926c76bd_Out_0_Float);
|
|
float _Remap_4948cd1fb38399888e9567ee2abb8acd_Out_3_Float;
|
|
Unity_Remap_float(_Split_fe834aed1172f284a73d2d6810bdb696_A_4_Float, float2 (0, 1), _Vector2_1aa81c2ad7cc268caa834889569ce556_Out_0_Vector2, _Remap_4948cd1fb38399888e9567ee2abb8acd_Out_3_Float);
|
|
float _Multiply_d3e207dba42f1984aacff3c1bf4eef0b_Out_2_Float;
|
|
Unity_Multiply_float_float(_SampleTexture2D_4bd08411faa60c828847f2247f06a809_B_6_Float, 2, _Multiply_d3e207dba42f1984aacff3c1bf4eef0b_Out_2_Float);
|
|
float _Add_0299d632f81fff8f969a0eed5f77397c_Out_2_Float;
|
|
Unity_Add_float(_Multiply_d3e207dba42f1984aacff3c1bf4eef0b_Out_2_Float, float(-1), _Add_0299d632f81fff8f969a0eed5f77397c_Out_2_Float);
|
|
float _Property_a2c7556e96b60b8e90cb5145ca6f9dde_Out_0_Float = _DetailCoverSmoothnessScale;
|
|
float _Multiply_d340fbee0985958dbb66555a73bd733c_Out_2_Float;
|
|
Unity_Multiply_float_float(_Add_0299d632f81fff8f969a0eed5f77397c_Out_2_Float, _Property_a2c7556e96b60b8e90cb5145ca6f9dde_Out_0_Float, _Multiply_d340fbee0985958dbb66555a73bd733c_Out_2_Float);
|
|
float _Saturate_2c0cc920be0ca88e937ec108b38f5fde_Out_1_Float;
|
|
Unity_Saturate_float(_Multiply_d340fbee0985958dbb66555a73bd733c_Out_2_Float, _Saturate_2c0cc920be0ca88e937ec108b38f5fde_Out_1_Float);
|
|
float _Absolute_3f81290e941e378283f7151c4a0731e2_Out_1_Float;
|
|
Unity_Absolute_float(_Saturate_2c0cc920be0ca88e937ec108b38f5fde_Out_1_Float, _Absolute_3f81290e941e378283f7151c4a0731e2_Out_1_Float);
|
|
Bindings_BlendOverlayDetailSmoothness_06e12138dc89c0040b45a57abe520a1a_float _BlendOverlayDetailSmoothness_e7a4fbe98378f084bd09f6e5d90e1cb8;
|
|
float _BlendOverlayDetailSmoothness_e7a4fbe98378f084bd09f6e5d90e1cb8_SmoothnessOverlay_1_Float;
|
|
SG_BlendOverlayDetailSmoothness_06e12138dc89c0040b45a57abe520a1a_float(_Remap_4948cd1fb38399888e9567ee2abb8acd_Out_3_Float, _Add_0299d632f81fff8f969a0eed5f77397c_Out_2_Float, _Absolute_3f81290e941e378283f7151c4a0731e2_Out_1_Float, _BlendOverlayDetailSmoothness_e7a4fbe98378f084bd09f6e5d90e1cb8, _BlendOverlayDetailSmoothness_e7a4fbe98378f084bd09f6e5d90e1cb8_SmoothnessOverlay_1_Float);
|
|
float _Saturate_9091ea9d9924c682ad6b94d3322ee822_Out_1_Float;
|
|
Unity_Saturate_float(_BlendOverlayDetailSmoothness_e7a4fbe98378f084bd09f6e5d90e1cb8_SmoothnessOverlay_1_Float, _Saturate_9091ea9d9924c682ad6b94d3322ee822_Out_1_Float);
|
|
float3 _Vector3_93bafe600474e7819ebc13e534b986bf_Out_0_Vector3 = float3(_Multiply_d0ecb787fa289f8f9d3c2988d60f18d3_Out_2_Float, _Remap_1b6065f44329038594e2d0cf001fa138_Out_3_Float, _Saturate_9091ea9d9924c682ad6b94d3322ee822_Out_1_Float);
|
|
float _Split_6ec9cc5e56f3f68ba37ff91557979c18_R_1_Float = _Vector3_93bafe600474e7819ebc13e534b986bf_Out_0_Vector3[0];
|
|
float _Split_6ec9cc5e56f3f68ba37ff91557979c18_G_2_Float = _Vector3_93bafe600474e7819ebc13e534b986bf_Out_0_Vector3[1];
|
|
float _Split_6ec9cc5e56f3f68ba37ff91557979c18_B_3_Float = _Vector3_93bafe600474e7819ebc13e534b986bf_Out_0_Vector3[2];
|
|
float _Split_6ec9cc5e56f3f68ba37ff91557979c18_A_4_Float = 0;
|
|
float _Property_ca9c61425ece6b8c909c06b1e2738f1a_Out_0_Float = _CoverShapeAORemapMin;
|
|
float _Property_b9be92f1612c908d80643f0e96015b33_Out_0_Float = _CoverShapeAORemapMax;
|
|
float2 _Vector2_9b862c4e147d1082afad3606339d2130_Out_0_Vector2 = float2(_Property_ca9c61425ece6b8c909c06b1e2738f1a_Out_0_Float, _Property_b9be92f1612c908d80643f0e96015b33_Out_0_Float);
|
|
float _Remap_c1f0022add809b83bad7b493177bddb7_Out_3_Float;
|
|
Unity_Remap_float(_SampleTexture2D_33392602b94694898ec8227a89f13cc9_G_5_Float, float2 (0, 1), _Vector2_9b862c4e147d1082afad3606339d2130_Out_0_Vector2, _Remap_c1f0022add809b83bad7b493177bddb7_Out_3_Float);
|
|
float _Minimum_595c2f31bb0ec588977a2b9ea46bf6b0_Out_2_Float;
|
|
Unity_Minimum_float(_Split_6ec9cc5e56f3f68ba37ff91557979c18_G_2_Float, _Remap_c1f0022add809b83bad7b493177bddb7_Out_3_Float, _Minimum_595c2f31bb0ec588977a2b9ea46bf6b0_Out_2_Float);
|
|
float3 _Vector3_6cb5b2c4675bb28cb41ea88b6eaa2aff_Out_0_Vector3 = float3(_Split_6ec9cc5e56f3f68ba37ff91557979c18_R_1_Float, _Minimum_595c2f31bb0ec588977a2b9ea46bf6b0_Out_2_Float, _Split_6ec9cc5e56f3f68ba37ff91557979c18_B_3_Float);
|
|
float3 _Lerp_fa40b54f3d5a1a8a95f6306e837b9338_Out_3_Vector3;
|
|
Unity_Lerp_float3(_Vector3_fac10bf467f5ff82b4f071ba165bf458_Out_0_Vector3, _Vector3_6cb5b2c4675bb28cb41ea88b6eaa2aff_Out_0_Vector3, (_Branch_3ccf365d359214809d30b6430d863e3f_Out_3_Float.xxx), _Lerp_fa40b54f3d5a1a8a95f6306e837b9338_Out_3_Vector3);
|
|
float _Split_c4a5352a58a4f88fb40410f956825dc6_R_1_Float = _Lerp_fa40b54f3d5a1a8a95f6306e837b9338_Out_3_Vector3[0];
|
|
float _Split_c4a5352a58a4f88fb40410f956825dc6_G_2_Float = _Lerp_fa40b54f3d5a1a8a95f6306e837b9338_Out_3_Vector3[1];
|
|
float _Split_c4a5352a58a4f88fb40410f956825dc6_B_3_Float = _Lerp_fa40b54f3d5a1a8a95f6306e837b9338_Out_3_Vector3[2];
|
|
float _Split_c4a5352a58a4f88fb40410f956825dc6_A_4_Float = 0;
|
|
float _Property_7861e880056eb88ab923a2ff5b12179d_Out_0_Float = _WetSmoothness;
|
|
float _Lerp_ee63160826cff4869f0e63568dd6f8b7_Out_3_Float;
|
|
Unity_Lerp_float(_Split_c4a5352a58a4f88fb40410f956825dc6_B_3_Float, _Property_7861e880056eb88ab923a2ff5b12179d_Out_0_Float, _OneMinus_e16dfb812ec64b8891c541171687142f_Out_1_Float, _Lerp_ee63160826cff4869f0e63568dd6f8b7_Out_3_Float);
|
|
float _Property_1c389d922d4fba86bc62c7d42ac8643d_Out_0_Float = _CoverNormalScale;
|
|
float3 _NormalStrength_db3de71f618fee878c84a13374c7adc4_Out_2_Vector3;
|
|
Unity_NormalStrength_float((_TriplanarNMn_ba7e211dd8095589a2939b5b239ca8e0_XYZ_1_Vector4.xyz), _Property_1c389d922d4fba86bc62c7d42ac8643d_Out_0_Float, _NormalStrength_db3de71f618fee878c84a13374c7adc4_Out_2_Vector3);
|
|
float3 _NormalBlend_b2e537e7a99f9280ba682b47daf3c5e3_Out_2_Vector3;
|
|
Unity_NormalBlend_float(_NormalStrength_db3de71f618fee878c84a13374c7adc4_Out_2_Vector3, _NormalStrength_401cd5af500bd68dbc9bca19d548d0db_Out_2_Vector3, _NormalBlend_b2e537e7a99f9280ba682b47daf3c5e3_Out_2_Vector3);
|
|
float2 _Vector2_b87489f8633d268598edb76163057164_Out_0_Vector2 = float2(_SampleTexture2D_4bd08411faa60c828847f2247f06a809_A_7_Float, _SampleTexture2D_4bd08411faa60c828847f2247f06a809_G_5_Float);
|
|
float2 _Multiply_95e603bb6d4bd7809de0ae42c8f45058_Out_2_Vector2;
|
|
Unity_Multiply_float2_float2(_Vector2_b87489f8633d268598edb76163057164_Out_0_Vector2, float2(2, 2), _Multiply_95e603bb6d4bd7809de0ae42c8f45058_Out_2_Vector2);
|
|
float2 _Add_c116ac3906ccf68d82dd5b73d0f5659a_Out_2_Vector2;
|
|
Unity_Add_float2(_Multiply_95e603bb6d4bd7809de0ae42c8f45058_Out_2_Vector2, float2(-1, -1), _Add_c116ac3906ccf68d82dd5b73d0f5659a_Out_2_Vector2);
|
|
float _Property_988acb131fd330878b4ac0672366ad90_Out_0_Float = _DetailCoverNormalScale;
|
|
float2 _Multiply_6de1a79215e1928f9f3fc3293df74f88_Out_2_Vector2;
|
|
Unity_Multiply_float2_float2(_Add_c116ac3906ccf68d82dd5b73d0f5659a_Out_2_Vector2, (_Property_988acb131fd330878b4ac0672366ad90_Out_0_Float.xx), _Multiply_6de1a79215e1928f9f3fc3293df74f88_Out_2_Vector2);
|
|
float _Split_9ce53bb7a65f16809b6a95d82286186e_R_1_Float = _Multiply_6de1a79215e1928f9f3fc3293df74f88_Out_2_Vector2[0];
|
|
float _Split_9ce53bb7a65f16809b6a95d82286186e_G_2_Float = _Multiply_6de1a79215e1928f9f3fc3293df74f88_Out_2_Vector2[1];
|
|
float _Split_9ce53bb7a65f16809b6a95d82286186e_B_3_Float = 0;
|
|
float _Split_9ce53bb7a65f16809b6a95d82286186e_A_4_Float = 0;
|
|
float _DotProduct_8912687db556b6819d2a38ba8511a7ae_Out_2_Float;
|
|
Unity_DotProduct_float2(_Multiply_6de1a79215e1928f9f3fc3293df74f88_Out_2_Vector2, _Multiply_6de1a79215e1928f9f3fc3293df74f88_Out_2_Vector2, _DotProduct_8912687db556b6819d2a38ba8511a7ae_Out_2_Float);
|
|
float _Saturate_013ea9a02a1ff18992540b270836cc73_Out_1_Float;
|
|
Unity_Saturate_float(_DotProduct_8912687db556b6819d2a38ba8511a7ae_Out_2_Float, _Saturate_013ea9a02a1ff18992540b270836cc73_Out_1_Float);
|
|
float _OneMinus_eefd2695dc7d77838984fc25a1c00b0b_Out_1_Float;
|
|
Unity_OneMinus_float(_Saturate_013ea9a02a1ff18992540b270836cc73_Out_1_Float, _OneMinus_eefd2695dc7d77838984fc25a1c00b0b_Out_1_Float);
|
|
float _SquareRoot_1d25cc71b4ce9286af1666a96ae6ac5a_Out_1_Float;
|
|
Unity_SquareRoot_float(_OneMinus_eefd2695dc7d77838984fc25a1c00b0b_Out_1_Float, _SquareRoot_1d25cc71b4ce9286af1666a96ae6ac5a_Out_1_Float);
|
|
float3 _Vector3_c3d9c7e92a1c5b8ea5650ab3bb421c27_Out_0_Vector3 = float3(_Split_9ce53bb7a65f16809b6a95d82286186e_R_1_Float, _Split_9ce53bb7a65f16809b6a95d82286186e_G_2_Float, _SquareRoot_1d25cc71b4ce9286af1666a96ae6ac5a_Out_1_Float);
|
|
float3 _NormalBlend_8e1d1c87f8c12b87b64883533bfa43be_Out_2_Vector3;
|
|
Unity_NormalBlend_float(_NormalBlend_b2e537e7a99f9280ba682b47daf3c5e3_Out_2_Vector3, _Vector3_c3d9c7e92a1c5b8ea5650ab3bb421c27_Out_0_Vector3, _NormalBlend_8e1d1c87f8c12b87b64883533bfa43be_Out_2_Vector3);
|
|
float3 _Lerp_48cd568fef7d358b8d65b989db745e6c_Out_3_Vector3;
|
|
Unity_Lerp_float3(_NormalBlend_4242e1b4a785378aa59dd49e9d993ffc_Out_2_Vector3, _NormalBlend_8e1d1c87f8c12b87b64883533bfa43be_Out_2_Vector3, (_Branch_3ccf365d359214809d30b6430d863e3f_Out_3_Float.xxx), _Lerp_48cd568fef7d358b8d65b989db745e6c_Out_3_Vector3);
|
|
surface.BaseColor = _Lerp_43bc7a9493df5a829abf080ee4ad3298_Out_3_Vector3;
|
|
surface.Emission = float3(0, 0, 0);
|
|
surface.Alpha = float(1);
|
|
surface.BentNormal = IN.TangentSpaceNormal;
|
|
surface.Smoothness = _Lerp_ee63160826cff4869f0e63568dd6f8b7_Out_3_Float;
|
|
surface.Occlusion = _Split_c4a5352a58a4f88fb40410f956825dc6_G_2_Float;
|
|
surface.NormalTS = _Lerp_48cd568fef7d358b8d65b989db745e6c_Out_3_Vector3;
|
|
surface.Metallic = _Split_c4a5352a58a4f88fb40410f956825dc6_R_1_Float;
|
|
return surface;
|
|
}
|
|
|
|
// --------------------------------------------------
|
|
// Build Graph Inputs
|
|
#ifdef HAVE_VFX_MODIFICATION
|
|
#define VFX_SRP_ATTRIBUTES AttributesMesh
|
|
#define VaryingsMeshType VaryingsMeshToPS
|
|
#define VFX_SRP_VARYINGS VaryingsMeshType
|
|
#define VFX_SRP_SURFACE_INPUTS FragInputs
|
|
#endif
|
|
|
|
VertexDescriptionInputs AttributesMeshToVertexDescriptionInputs(AttributesMesh input)
|
|
{
|
|
VertexDescriptionInputs output;
|
|
ZERO_INITIALIZE(VertexDescriptionInputs, output);
|
|
|
|
output.ObjectSpaceNormal = input.normalOS;
|
|
output.ObjectSpaceTangent = input.tangentOS.xyz;
|
|
output.ObjectSpacePosition = input.positionOS;
|
|
#if UNITY_ANY_INSTANCING_ENABLED
|
|
#else
|
|
#endif
|
|
|
|
return output;
|
|
}
|
|
|
|
VertexDescription GetVertexDescription(AttributesMesh input, float3 timeParameters
|
|
#ifdef HAVE_VFX_MODIFICATION
|
|
, AttributesElement element
|
|
#endif
|
|
)
|
|
{
|
|
// build graph inputs
|
|
VertexDescriptionInputs vertexDescriptionInputs = AttributesMeshToVertexDescriptionInputs(input);
|
|
// Override time parameters with used one (This is required to correctly handle motion vectors for vertex animation based on time)
|
|
|
|
// evaluate vertex graph
|
|
#ifdef HAVE_VFX_MODIFICATION
|
|
GraphProperties properties;
|
|
ZERO_INITIALIZE(GraphProperties, properties);
|
|
|
|
// Fetch the vertex graph properties for the particle instance.
|
|
GetElementVertexProperties(element, properties);
|
|
|
|
VertexDescription vertexDescription = VertexDescriptionFunction(vertexDescriptionInputs, properties);
|
|
#else
|
|
VertexDescription vertexDescription = VertexDescriptionFunction(vertexDescriptionInputs);
|
|
#endif
|
|
return vertexDescription;
|
|
|
|
}
|
|
|
|
AttributesMesh ApplyMeshModification(AttributesMesh input, float3 timeParameters
|
|
#ifdef USE_CUSTOMINTERP_SUBSTRUCT
|
|
#ifdef TESSELLATION_ON
|
|
, inout VaryingsMeshToDS varyings
|
|
#else
|
|
, inout VaryingsMeshToPS varyings
|
|
#endif
|
|
#endif
|
|
#ifdef HAVE_VFX_MODIFICATION
|
|
, AttributesElement element
|
|
#endif
|
|
)
|
|
{
|
|
VertexDescription vertexDescription = GetVertexDescription(input, timeParameters
|
|
#ifdef HAVE_VFX_MODIFICATION
|
|
, element
|
|
#endif
|
|
);
|
|
|
|
// copy graph output to the results
|
|
input.positionOS = vertexDescription.Position;
|
|
input.normalOS = vertexDescription.Normal;
|
|
input.tangentOS.xyz = vertexDescription.Tangent;
|
|
|
|
|
|
|
|
return input;
|
|
}
|
|
|
|
#if defined(_ADD_CUSTOM_VELOCITY) // For shader graph custom velocity
|
|
// Return precomputed Velocity in object space
|
|
float3 GetCustomVelocity(AttributesMesh input
|
|
#ifdef HAVE_VFX_MODIFICATION
|
|
, AttributesElement element
|
|
#endif
|
|
)
|
|
{
|
|
VertexDescription vertexDescription = GetVertexDescription(input, _TimeParameters.xyz
|
|
#ifdef HAVE_VFX_MODIFICATION
|
|
, element
|
|
#endif
|
|
);
|
|
return vertexDescription.CustomVelocity;
|
|
}
|
|
#endif
|
|
|
|
FragInputs BuildFragInputs(VaryingsMeshToPS input)
|
|
{
|
|
FragInputs output;
|
|
ZERO_INITIALIZE(FragInputs, output);
|
|
|
|
// Init to some default value to make the computer quiet (else it output 'divide by zero' warning even if value is not used).
|
|
// TODO: this is a really poor workaround, but the variable is used in a bunch of places
|
|
// to compute normals which are then passed on elsewhere to compute other values...
|
|
output.tangentToWorld = k_identity3x3;
|
|
output.positionSS = input.positionCS; // input.positionCS is SV_Position
|
|
|
|
output.positionRWS = input.positionRWS;
|
|
output.tangentToWorld = BuildTangentToWorld(input.tangentWS, input.normalWS);
|
|
output.texCoord0 = input.texCoord0;
|
|
output.color = input.color;
|
|
|
|
#if UNITY_ANY_INSTANCING_ENABLED
|
|
#else
|
|
#endif
|
|
|
|
#ifdef HAVE_VFX_MODIFICATION
|
|
// FragInputs from VFX come from two places: Interpolator or CBuffer.
|
|
#if VFX_USE_GRAPH_VALUES
|
|
uint instanceActiveIndex = asuint(UNITY_ACCESS_INSTANCED_PROP(PerInstance, _InstanceActiveIndex));
|
|
/* WARNING: $splice Could not find named fragment 'VFXLoadGraphValues' */
|
|
#endif
|
|
|
|
/* WARNING: $splice Could not find named fragment 'VFXSetFragInputs' */
|
|
|
|
#endif
|
|
|
|
// splice point to copy custom interpolator fields from varyings to frag inputs
|
|
|
|
|
|
return output;
|
|
}
|
|
|
|
// existing HDRP code uses the combined function to go directly from packed to frag inputs
|
|
FragInputs UnpackVaryingsMeshToFragInputs(PackedVaryingsMeshToPS input)
|
|
{
|
|
UNITY_SETUP_INSTANCE_ID(input);
|
|
#if defined(HAVE_VFX_MODIFICATION) && defined(UNITY_INSTANCING_ENABLED)
|
|
unity_InstanceID = input.instanceID;
|
|
#endif
|
|
VaryingsMeshToPS unpacked = UnpackVaryingsMeshToPS(input);
|
|
return BuildFragInputs(unpacked);
|
|
}
|
|
SurfaceDescriptionInputs FragInputsToSurfaceDescriptionInputs(FragInputs input, float3 viewWS)
|
|
{
|
|
SurfaceDescriptionInputs output;
|
|
ZERO_INITIALIZE(SurfaceDescriptionInputs, output);
|
|
|
|
output.WorldSpaceNormal = normalize(input.tangentToWorld[2].xyz);
|
|
#if defined(SHADER_STAGE_RAY_TRACING)
|
|
#else
|
|
#endif
|
|
output.TangentSpaceNormal = float3(0.0f, 0.0f, 1.0f);
|
|
output.WorldSpaceTangent = input.tangentToWorld[0].xyz;
|
|
output.WorldSpaceBiTangent = input.tangentToWorld[1].xyz;
|
|
output.AbsoluteWorldSpacePosition = GetAbsolutePositionWS(input.positionRWS);
|
|
|
|
#if UNITY_UV_STARTS_AT_TOP
|
|
#else
|
|
#endif
|
|
|
|
|
|
output.uv0 = input.texCoord0;
|
|
output.VertexColor = input.color;
|
|
|
|
// splice point to copy frag inputs custom interpolator pack into the SDI
|
|
|
|
|
|
return output;
|
|
}
|
|
|
|
// --------------------------------------------------
|
|
// Build Surface Data (Specific Material)
|
|
|
|
void ApplyDecalToSurfaceDataNoNormal(DecalSurfaceData decalSurfaceData, inout SurfaceData surfaceData);
|
|
|
|
void ApplyDecalAndGetNormal(FragInputs fragInputs, PositionInputs posInput, SurfaceDescription surfaceDescription,
|
|
inout SurfaceData surfaceData)
|
|
{
|
|
float3 doubleSidedConstants = GetDoubleSidedConstants();
|
|
|
|
#ifdef DECAL_NORMAL_BLENDING
|
|
// SG nodes don't ouptut surface gradients, so if decals require surf grad blending, we have to convert
|
|
// the normal to gradient before applying the decal. We then have to resolve the gradient back to world space
|
|
float3 normalTS;
|
|
|
|
normalTS = SurfaceGradientFromTangentSpaceNormalAndFromTBN(surfaceDescription.NormalTS,
|
|
fragInputs.tangentToWorld[0], fragInputs.tangentToWorld[1]);
|
|
|
|
|
|
#if HAVE_DECALS
|
|
if (_EnableDecals)
|
|
{
|
|
float alpha = 1.0;
|
|
alpha = surfaceDescription.Alpha;
|
|
|
|
DecalSurfaceData decalSurfaceData = GetDecalSurfaceData(posInput, fragInputs, alpha);
|
|
ApplyDecalToSurfaceNormal(decalSurfaceData, fragInputs.tangentToWorld[2], normalTS);
|
|
ApplyDecalToSurfaceDataNoNormal(decalSurfaceData, surfaceData);
|
|
}
|
|
#endif
|
|
|
|
GetNormalWS_SG(fragInputs, normalTS, surfaceData.normalWS, doubleSidedConstants);
|
|
#else
|
|
// normal delivered to master node
|
|
GetNormalWS(fragInputs, surfaceDescription.NormalTS, surfaceData.normalWS, doubleSidedConstants);
|
|
|
|
#if HAVE_DECALS
|
|
if (_EnableDecals)
|
|
{
|
|
float alpha = 1.0;
|
|
alpha = surfaceDescription.Alpha;
|
|
|
|
// Both uses and modifies 'surfaceData.normalWS'.
|
|
DecalSurfaceData decalSurfaceData = GetDecalSurfaceData(posInput, fragInputs, alpha);
|
|
ApplyDecalToSurfaceNormal(decalSurfaceData, surfaceData.normalWS.xyz);
|
|
ApplyDecalToSurfaceDataNoNormal(decalSurfaceData, surfaceData);
|
|
}
|
|
#endif
|
|
#endif
|
|
}
|
|
void BuildSurfaceData(FragInputs fragInputs, inout SurfaceDescription surfaceDescription, float3 V, PositionInputs posInput, out SurfaceData surfaceData, out float3 bentNormalWS)
|
|
{
|
|
ZERO_INITIALIZE(SurfaceData, surfaceData);
|
|
|
|
// specularOcclusion need to be init ahead of decal to quiet the compiler that modify the SurfaceData struct
|
|
// however specularOcclusion can come from the graph, so need to be init here so it can be override.
|
|
surfaceData.specularOcclusion = 1.0;
|
|
surfaceData.thickness = 0.0;
|
|
|
|
surfaceData.baseColor = surfaceDescription.BaseColor;
|
|
surfaceData.perceptualSmoothness = surfaceDescription.Smoothness;
|
|
surfaceData.ambientOcclusion = surfaceDescription.Occlusion;
|
|
surfaceData.metallic = surfaceDescription.Metallic;
|
|
|
|
#if defined(_REFRACTION_PLANE) || defined(_REFRACTION_SPHERE) || defined(_REFRACTION_THIN)
|
|
if (_EnableSSRefraction)
|
|
{
|
|
|
|
surfaceData.transmittanceMask = (1.0 - surfaceDescription.Alpha);
|
|
surfaceDescription.Alpha = 1.0;
|
|
}
|
|
else
|
|
{
|
|
surfaceData.ior = 1.0;
|
|
surfaceData.transmittanceColor = float3(1.0, 1.0, 1.0);
|
|
surfaceData.atDistance = 1.0;
|
|
surfaceData.transmittanceMask = 0.0;
|
|
surfaceDescription.Alpha = 1.0;
|
|
}
|
|
#else
|
|
surfaceData.ior = 1.0;
|
|
surfaceData.transmittanceColor = float3(1.0, 1.0, 1.0);
|
|
surfaceData.atDistance = 1.0;
|
|
surfaceData.transmittanceMask = 0.0;
|
|
#endif
|
|
|
|
// These static material feature allow compile time optimization
|
|
surfaceData.materialFeatures = MATERIALFEATUREFLAGS_LIT_STANDARD;
|
|
#ifdef _MATERIAL_FEATURE_SUBSURFACE_SCATTERING
|
|
surfaceData.materialFeatures |= MATERIALFEATUREFLAGS_LIT_SUBSURFACE_SCATTERING;
|
|
#endif
|
|
|
|
#ifdef _MATERIAL_FEATURE_TRANSMISSION
|
|
surfaceData.materialFeatures |= MATERIALFEATUREFLAGS_LIT_TRANSMISSION;
|
|
#endif
|
|
|
|
#ifdef _MATERIAL_FEATURE_COLORED_TRANSMISSION
|
|
surfaceData.materialFeatures |= MATERIALFEATUREFLAGS_LIT_TRANSMISSION;
|
|
surfaceData.materialFeatures |= MATERIALFEATUREFLAGS_LIT_COLORED_TRANSMISSION;
|
|
|
|
#endif
|
|
|
|
#ifdef _MATERIAL_FEATURE_ANISOTROPY
|
|
surfaceData.materialFeatures |= MATERIALFEATUREFLAGS_LIT_ANISOTROPY;
|
|
|
|
// Initialize the normal to something non-zero to avoid a div-zero warning for anisotropy.
|
|
surfaceData.normalWS = float3(0, 1, 0);
|
|
#endif
|
|
|
|
#ifdef _MATERIAL_FEATURE_IRIDESCENCE
|
|
surfaceData.materialFeatures |= MATERIALFEATUREFLAGS_LIT_IRIDESCENCE;
|
|
#endif
|
|
|
|
#ifdef _MATERIAL_FEATURE_SPECULAR_COLOR
|
|
surfaceData.materialFeatures |= MATERIALFEATUREFLAGS_LIT_SPECULAR_COLOR;
|
|
#endif
|
|
|
|
#ifdef _MATERIAL_FEATURE_CLEAR_COAT
|
|
surfaceData.materialFeatures |= MATERIALFEATUREFLAGS_LIT_CLEAR_COAT;
|
|
#endif
|
|
|
|
#if defined (_MATERIAL_FEATURE_SPECULAR_COLOR) && defined (_ENERGY_CONSERVING_SPECULAR)
|
|
// Require to have setup baseColor
|
|
// Reproduce the energy conservation done in legacy Unity. Not ideal but better for compatibility and users can unchek it
|
|
surfaceData.baseColor *= (1.0 - Max3(surfaceData.specularColor.r, surfaceData.specularColor.g, surfaceData.specularColor.b));
|
|
#endif
|
|
|
|
float3 doubleSidedConstants = GetDoubleSidedConstants();
|
|
|
|
ApplyDecalAndGetNormal(fragInputs, posInput, surfaceDescription, surfaceData);
|
|
|
|
surfaceData.geomNormalWS = fragInputs.tangentToWorld[2];
|
|
|
|
surfaceData.tangentWS = normalize(fragInputs.tangentToWorld[0].xyz); // The tangent is not normalize in tangentToWorld for mikkt. TODO: Check if it expected that we normalize with Morten. Tag: SURFACE_GRADIENT
|
|
|
|
|
|
bentNormalWS = surfaceData.normalWS;
|
|
|
|
surfaceData.tangentWS = Orthonormalize(surfaceData.tangentWS, surfaceData.normalWS);
|
|
|
|
#ifdef DEBUG_DISPLAY
|
|
#if !defined(SHADER_STAGE_RAY_TRACING)
|
|
// Mipmap mode debugging isn't supported with ray tracing as it relies on derivatives
|
|
if (_DebugMipMapMode != DEBUGMIPMAPMODE_NONE)
|
|
{
|
|
#ifdef FRAG_INPUTS_USE_TEXCOORD0
|
|
surfaceData.baseColor = GET_TEXTURE_STREAMING_DEBUG(posInput.positionSS, fragInputs.texCoord0);
|
|
#else
|
|
surfaceData.baseColor = GET_TEXTURE_STREAMING_DEBUG_NO_UV(posInput.positionSS);
|
|
#endif
|
|
surfaceData.metallic = 0;
|
|
}
|
|
#endif
|
|
|
|
// We need to call ApplyDebugToSurfaceData after filling the surfaceData and before filling builtinData
|
|
// as it can modify attribute use for static lighting
|
|
ApplyDebugToSurfaceData(fragInputs.tangentToWorld, surfaceData);
|
|
#endif
|
|
|
|
// By default we use the ambient occlusion with Tri-ace trick (apply outside) for specular occlusion.
|
|
// If user provide bent normal then we process a better term
|
|
#if defined(_SPECULAR_OCCLUSION_CUSTOM)
|
|
// Just use the value passed through via the slot (not active otherwise)
|
|
#elif defined(_SPECULAR_OCCLUSION_FROM_AO_BENT_NORMAL)
|
|
// If we have bent normal and ambient occlusion, process a specular occlusion
|
|
surfaceData.specularOcclusion = GetSpecularOcclusionFromBentAO(V, bentNormalWS, surfaceData.normalWS, surfaceData.ambientOcclusion, PerceptualSmoothnessToPerceptualRoughness(surfaceData.perceptualSmoothness));
|
|
#elif defined(_AMBIENT_OCCLUSION) && defined(_SPECULAR_OCCLUSION_FROM_AO)
|
|
surfaceData.specularOcclusion = GetSpecularOcclusionFromAmbientOcclusion(ClampNdotV(dot(surfaceData.normalWS, V)), surfaceData.ambientOcclusion, PerceptualSmoothnessToRoughness(surfaceData.perceptualSmoothness));
|
|
#endif
|
|
|
|
#if defined(_ENABLE_GEOMETRIC_SPECULAR_AA) && !defined(SHADER_STAGE_RAY_TRACING)
|
|
surfaceData.perceptualSmoothness = GeometricNormalFiltering(surfaceData.perceptualSmoothness, fragInputs.tangentToWorld[2], surfaceDescription.SpecularAAScreenSpaceVariance, surfaceDescription.SpecularAAThreshold);
|
|
#endif
|
|
}
|
|
|
|
// --------------------------------------------------
|
|
// Get Surface And BuiltinData
|
|
|
|
void GetSurfaceAndBuiltinData(FragInputs fragInputs, float3 V, inout PositionInputs posInput, out SurfaceData surfaceData, out BuiltinData builtinData RAY_TRACING_OPTIONAL_PARAMETERS)
|
|
{
|
|
// Don't dither if displaced tessellation (we're fading out the displacement instead to match the next LOD)
|
|
#if !defined(SHADER_STAGE_RAY_TRACING) && !defined(_TESSELLATION_DISPLACEMENT)
|
|
#ifdef LOD_FADE_CROSSFADE // enable dithering LOD transition if user select CrossFade transition in LOD group
|
|
LODDitheringTransition(ComputeFadeMaskSeed(V, posInput.positionSS), unity_LODFade.x);
|
|
#endif
|
|
#endif
|
|
|
|
#ifndef SHADER_UNLIT
|
|
#ifdef _DOUBLESIDED_ON
|
|
float3 doubleSidedConstants = _DoubleSidedConstants.xyz;
|
|
#else
|
|
float3 doubleSidedConstants = float3(1.0, 1.0, 1.0);
|
|
#endif
|
|
|
|
ApplyDoubleSidedFlipOrMirror(fragInputs, doubleSidedConstants); // Apply double sided flip on the vertex normal
|
|
#endif // SHADER_UNLIT
|
|
|
|
SurfaceDescriptionInputs surfaceDescriptionInputs = FragInputsToSurfaceDescriptionInputs(fragInputs, V);
|
|
|
|
#if defined(HAVE_VFX_MODIFICATION)
|
|
GraphProperties properties;
|
|
ZERO_INITIALIZE(GraphProperties, properties);
|
|
|
|
GetElementPixelProperties(fragInputs, properties);
|
|
|
|
SurfaceDescription surfaceDescription = SurfaceDescriptionFunction(surfaceDescriptionInputs, properties);
|
|
#else
|
|
SurfaceDescription surfaceDescription = SurfaceDescriptionFunction(surfaceDescriptionInputs);
|
|
#endif
|
|
|
|
#ifdef DEBUG_DISPLAY
|
|
if (_DebugMipMapMode != DEBUGMIPMAPMODE_NONE)
|
|
{
|
|
surfaceDescription.Alpha = 1.0f;
|
|
}
|
|
#endif
|
|
|
|
// Perform alpha test very early to save performance (a killed pixel will not sample textures)
|
|
// TODO: split graph evaluation to grab just alpha dependencies first? tricky..
|
|
#ifdef _ALPHATEST_ON
|
|
float alphaCutoff = surfaceDescription.AlphaClipThreshold;
|
|
#if SHADERPASS == SHADERPASS_TRANSPARENT_DEPTH_PREPASS
|
|
// The TransparentDepthPrepass is also used with SSR transparent.
|
|
// If an artists enable transaprent SSR but not the TransparentDepthPrepass itself, then we use AlphaClipThreshold
|
|
// otherwise if TransparentDepthPrepass is enabled we use AlphaClipThresholdDepthPrepass
|
|
#elif SHADERPASS == SHADERPASS_TRANSPARENT_DEPTH_POSTPASS
|
|
// DepthPostpass always use its own alpha threshold
|
|
alphaCutoff = surfaceDescription.AlphaClipThresholdDepthPostpass;
|
|
#elif (SHADERPASS == SHADERPASS_SHADOWS) || (SHADERPASS == SHADERPASS_RAYTRACING_VISIBILITY)
|
|
// If use shadow threshold isn't enable we don't allow any test
|
|
#endif
|
|
|
|
GENERIC_ALPHA_TEST(surfaceDescription.Alpha, alphaCutoff);
|
|
#endif
|
|
|
|
#if !defined(SHADER_STAGE_RAY_TRACING) && _DEPTHOFFSET_ON
|
|
ApplyDepthOffsetPositionInput(V, surfaceDescription.DepthOffset, GetViewForwardDir(), GetWorldToHClipMatrix(), posInput);
|
|
#endif
|
|
|
|
#ifndef SHADER_UNLIT
|
|
float3 bentNormalWS;
|
|
BuildSurfaceData(fragInputs, surfaceDescription, V, posInput, surfaceData, bentNormalWS);
|
|
|
|
#ifdef FRAG_INPUTS_USE_TEXCOORD1
|
|
float4 lightmapTexCoord1 = fragInputs.texCoord1;
|
|
#else
|
|
float4 lightmapTexCoord1 = float4(0,0,0,0);
|
|
#endif
|
|
|
|
#ifdef FRAG_INPUTS_USE_TEXCOORD2
|
|
float4 lightmapTexCoord2 = fragInputs.texCoord2;
|
|
#else
|
|
float4 lightmapTexCoord2 = float4(0,0,0,0);
|
|
#endif
|
|
|
|
float alpha = 1.0;
|
|
alpha = surfaceDescription.Alpha;
|
|
|
|
// Builtin Data
|
|
// For back lighting we use the oposite vertex normal
|
|
InitBuiltinData(posInput, alpha, bentNormalWS, -fragInputs.tangentToWorld[2], lightmapTexCoord1, lightmapTexCoord2, builtinData);
|
|
|
|
#else
|
|
BuildSurfaceData(fragInputs, surfaceDescription, V, posInput, surfaceData);
|
|
|
|
ZERO_BUILTIN_INITIALIZE(builtinData); // No call to InitBuiltinData as we don't have any lighting
|
|
builtinData.opacity = surfaceDescription.Alpha;
|
|
|
|
#if defined(DEBUG_DISPLAY)
|
|
// Light Layers are currently not used for the Unlit shader (because it is not lit)
|
|
// But Unlit objects do cast shadows according to their rendering layer mask, which is what we want to
|
|
// display in the light layers visualization mode, therefore we need the renderingLayers
|
|
builtinData.renderingLayers = GetMeshRenderingLayerMask();
|
|
#endif
|
|
|
|
#endif // SHADER_UNLIT
|
|
|
|
#ifdef _ALPHATEST_ON
|
|
// Used for sharpening by alpha to mask - Alpha to covertage is only used with depth only and forward pass (no shadow pass, no transparent pass)
|
|
builtinData.alphaClipTreshold = alphaCutoff;
|
|
#endif
|
|
|
|
// override sampleBakedGI - not used by Unlit
|
|
// When overriding GI, we need to force the isLightmap flag to make sure we don't add APV (sampled in the lightloop) on top of the overridden value (set at GBuffer stage)
|
|
|
|
builtinData.emissiveColor = surfaceDescription.Emission;
|
|
|
|
// Note this will not fully work on transparent surfaces (can check with _SURFACE_TYPE_TRANSPARENT define)
|
|
// We will always overwrite vt feeback with the nearest. So behind transparent surfaces vt will not be resolved
|
|
// This is a limitation of the current MRT approach.
|
|
#ifdef UNITY_VIRTUAL_TEXTURING
|
|
#endif
|
|
|
|
#if _DEPTHOFFSET_ON
|
|
builtinData.depthOffset = surfaceDescription.DepthOffset;
|
|
#endif
|
|
|
|
// TODO: We should generate distortion / distortionBlur for non distortion pass
|
|
#if (SHADERPASS == SHADERPASS_DISTORTION)
|
|
builtinData.distortion = surfaceDescription.Distortion;
|
|
builtinData.distortionBlur = surfaceDescription.DistortionBlur;
|
|
#endif
|
|
|
|
#ifndef SHADER_UNLIT
|
|
// PostInitBuiltinData call ApplyDebugToBuiltinData
|
|
PostInitBuiltinData(V, posInput, surfaceData, builtinData);
|
|
#else
|
|
ApplyDebugToBuiltinData(builtinData);
|
|
#endif
|
|
|
|
RAY_TRACING_OPTIONAL_ALPHA_TEST_PASS
|
|
}
|
|
|
|
// --------------------------------------------------
|
|
// Main
|
|
|
|
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/RenderPipeline/ShaderPass/ShaderPassConstant.hlsl"
|
|
|
|
// --------------------------------------------------
|
|
// Visual Effect Vertex Invocations
|
|
|
|
#ifdef HAVE_VFX_MODIFICATION
|
|
#if !defined(SHADER_STAGE_RAY_TRACING)
|
|
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/ShaderLibrary/VisualEffectVertex.hlsl"
|
|
#else
|
|
#endif
|
|
#endif
|
|
|
|
ENDHLSL
|
|
}
|
|
}
|
|
SubShader
|
|
{
|
|
Tags
|
|
{
|
|
"RenderPipeline"="HDRenderPipeline"
|
|
"RenderType"="HDLitShader"
|
|
"Queue"="Geometry+225"
|
|
"DisableBatching"="LODFading"
|
|
"ShaderGraphShader"="true"
|
|
"ShaderGraphTargetId"="HDLitSubTarget"
|
|
}
|
|
Pass
|
|
{
|
|
Name "IndirectDXR"
|
|
Tags
|
|
{
|
|
"LightMode" = "IndirectDXR"
|
|
}
|
|
|
|
// Render State
|
|
// RenderState: <None>
|
|
|
|
// Debug
|
|
// <None>
|
|
|
|
// --------------------------------------------------
|
|
// Pass
|
|
|
|
HLSLPROGRAM
|
|
|
|
// Pragmas
|
|
#pragma target 5.0
|
|
#pragma raytracing surface_shader
|
|
#pragma only_renderers d3d11 xboxseries ps5
|
|
|
|
// Keywords
|
|
#pragma multi_compile _ MULTI_BOUNCE_INDIRECT
|
|
#pragma shader_feature _ _SURFACE_TYPE_TRANSPARENT
|
|
#pragma shader_feature_local _ _DOUBLESIDED_ON
|
|
#pragma shader_feature_local _ _ADD_PRECOMPUTED_VELOCITY
|
|
#pragma shader_feature_local _ _TRANSPARENT_WRITES_MOTION_VEC _TRANSPARENT_REFRACTIVE_SORT
|
|
#pragma shader_feature_local_fragment _ _ENABLE_FOG_ON_TRANSPARENT
|
|
#pragma multi_compile _ DEBUG_DISPLAY
|
|
#pragma shader_feature_local_fragment _ _DISABLE_DECALS
|
|
#pragma shader_feature_local_raytracing _ _DISABLE_DECALS
|
|
#pragma shader_feature_local_fragment _ _DISABLE_SSR
|
|
#pragma shader_feature_local_raytracing _ _DISABLE_SSR
|
|
#pragma shader_feature_local_fragment _ _DISABLE_SSR_TRANSPARENT
|
|
#pragma shader_feature_local_raytracing _ _DISABLE_SSR_TRANSPARENT
|
|
#pragma multi_compile _ LIGHTMAP_ON
|
|
#pragma multi_compile _ DIRLIGHTMAP_COMBINED
|
|
#pragma multi_compile_fragment _ PROBE_VOLUMES_L1 PROBE_VOLUMES_L2
|
|
#pragma multi_compile_raytracing _ PROBE_VOLUMES_L1 PROBE_VOLUMES_L2
|
|
#pragma multi_compile _ DYNAMICLIGHTMAP_ON
|
|
#pragma multi_compile_raytracing DECALS_OFF DECALS_3RT DECALS_4RT
|
|
#pragma multi_compile_raytracing _ DECAL_SURFACE_GRADIENT
|
|
#pragma shader_feature_local _ _REFRACTION_PLANE _REFRACTION_SPHERE _REFRACTION_THIN
|
|
#pragma shader_feature_local_fragment _MATERIAL_FEATURE_SUBSURFACE_SCATTERING
|
|
#pragma shader_feature_local_raytracing _MATERIAL_FEATURE_SUBSURFACE_SCATTERING
|
|
#pragma shader_feature_local_fragment _MATERIAL_FEATURE_TRANSMISSION
|
|
#pragma shader_feature_local_raytracing _MATERIAL_FEATURE_TRANSMISSION
|
|
#pragma shader_feature_local_fragment _MATERIAL_FEATURE_ANISOTROPY
|
|
#pragma shader_feature_local_raytracing _MATERIAL_FEATURE_ANISOTROPY
|
|
#pragma shader_feature_local_fragment _MATERIAL_FEATURE_IRIDESCENCE
|
|
#pragma shader_feature_local_raytracing _MATERIAL_FEATURE_IRIDESCENCE
|
|
#pragma shader_feature_local_fragment _MATERIAL_FEATURE_SPECULAR_COLOR
|
|
#pragma shader_feature_local_raytracing _MATERIAL_FEATURE_SPECULAR_COLOR
|
|
#pragma shader_feature_local_fragment _MATERIAL_FEATURE_COLORED_TRANSMISSION
|
|
#pragma shader_feature_local_raytracing _MATERIAL_FEATURE_COLORED_TRANSMISSION
|
|
// GraphKeywords: <None>
|
|
|
|
// Defines
|
|
#define SHADERPASS SHADERPASS_RAYTRACING_INDIRECT
|
|
#define PUNCTUAL_SHADOW_LOW
|
|
#define DIRECTIONAL_SHADOW_LOW
|
|
#define RAYTRACING_SHADER_GRAPH_RAYTRACED
|
|
#define LIGHTLOOP_DISABLE_TILE_AND_CLUSTER 1
|
|
#define PATH_TRACING_CLUSTERED_DECALS 1
|
|
#define HAS_LIGHTLOOP 1
|
|
#define SUPPORT_GLOBAL_MIP_BIAS 1
|
|
#define SUPPORT_GLOBAL_MIP_BIAS 1
|
|
#define SUPPORT_GLOBAL_MIP_BIAS 1
|
|
#define SUPPORT_GLOBAL_MIP_BIAS 1
|
|
#define SUPPORT_GLOBAL_MIP_BIAS 1
|
|
#define SUPPORT_GLOBAL_MIP_BIAS 1
|
|
#define SUPPORT_GLOBAL_MIP_BIAS 1
|
|
#define SUPPORT_GLOBAL_MIP_BIAS 1
|
|
#define SUPPORT_GLOBAL_MIP_BIAS 1
|
|
|
|
// For custom interpolators to inject a substruct definition before FragInputs definition,
|
|
// allowing for FragInputs to capture CI's intended for ShaderGraph's SDI.
|
|
/* WARNING: $splice Could not find named fragment 'CustomInterpolatorPreInclude' */
|
|
|
|
|
|
// TODO: Merge FragInputsVFX substruct with CustomInterpolators.
|
|
#ifdef HAVE_VFX_MODIFICATION
|
|
struct FragInputsVFX
|
|
{
|
|
/* WARNING: $splice Could not find named fragment 'FragInputsVFX' */
|
|
};
|
|
#endif
|
|
|
|
#include "Packages/com.unity.render-pipelines.core/ShaderLibrary/Common.hlsl"
|
|
#include "Packages/com.unity.render-pipelines.core/ShaderLibrary/GeometricTools.hlsl" // Required by Tessellation.hlsl
|
|
#include "Packages/com.unity.render-pipelines.core/ShaderLibrary/Tessellation.hlsl"
|
|
#include "Packages/com.unity.render-pipelines.core/ShaderLibrary/Texture.hlsl"
|
|
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/ShaderLibrary/ShaderVariables.hlsl"
|
|
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/RenderPipeline/ShaderPass/ShaderPass.cs.hlsl"
|
|
#include "Packages/com.unity.render-pipelines.core/ShaderLibrary/TextureStack.hlsl" // Required to be include before we include properties as it define DECLARE_STACK_CB
|
|
#include "Packages/com.unity.render-pipelines.core/ShaderLibrary/DebugMipmapStreamingMacros.hlsl" // Required before including properties as it defines UNITY_TEXTURE_STREAMING_DEBUG_VARS
|
|
// Always include Shader Graph version
|
|
// Always include last to avoid double macros
|
|
#include "Packages/com.unity.shadergraph/ShaderGraphLibrary/Functions.hlsl" // Need to be here for Gradient struct definition
|
|
|
|
// --------------------------------------------------
|
|
// Defines
|
|
|
|
// Attribute
|
|
#define ATTRIBUTES_NEED_NORMAL
|
|
#define ATTRIBUTES_NEED_TANGENT
|
|
#define ATTRIBUTES_NEED_TEXCOORD0
|
|
#define ATTRIBUTES_NEED_TEXCOORD1
|
|
#define ATTRIBUTES_NEED_TEXCOORD2
|
|
#define ATTRIBUTES_NEED_COLOR
|
|
#define VARYINGS_NEED_POSITION_WS
|
|
#define VARYINGS_NEED_TANGENT_TO_WORLD
|
|
#define VARYINGS_NEED_TEXCOORD0
|
|
#define VARYINGS_NEED_TEXCOORD1
|
|
#define VARYINGS_NEED_TEXCOORD2
|
|
#define VARYINGS_NEED_COLOR
|
|
|
|
|
|
//Strip down the FragInputs.hlsl (on graphics), so we can only optimize the interpolators we use.
|
|
//if by accident something requests contents of FragInputs.hlsl, it will be caught as a compiler error
|
|
//Frag inputs stripping is only enabled when FRAG_INPUTS_ENABLE_STRIPPING is set
|
|
#if !defined(SHADER_STAGE_RAY_TRACING) && SHADERPASS != SHADERPASS_RAYTRACING_GBUFFER && SHADERPASS != SHADERPASS_FULL_SCREEN_DEBUG
|
|
#define FRAG_INPUTS_ENABLE_STRIPPING
|
|
#endif
|
|
#define FRAG_INPUTS_USE_TEXCOORD0
|
|
#define FRAG_INPUTS_USE_TEXCOORD1
|
|
#define FRAG_INPUTS_USE_TEXCOORD2
|
|
|
|
|
|
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/RenderPipeline/ShaderPass/FragInputs.hlsl"
|
|
|
|
|
|
|
|
|
|
// Following two define are a workaround introduce in 10.1.x for RaytracingQualityNode
|
|
// The ShaderGraph don't support correctly migration of this node as it serialize all the node data
|
|
// in the json file making it impossible to uprgrade. Until we get a fix, we do a workaround here
|
|
// to still allow us to rename the field and keyword of this node without breaking existing code.
|
|
#ifdef RAYTRACING_SHADER_GRAPH_DEFAULT
|
|
#define RAYTRACING_SHADER_GRAPH_HIGH
|
|
#endif
|
|
|
|
#ifdef RAYTRACING_SHADER_GRAPH_RAYTRACED
|
|
#define RAYTRACING_SHADER_GRAPH_LOW
|
|
#endif
|
|
// end
|
|
|
|
#ifndef SHADER_UNLIT
|
|
// We need isFrontFace when using double sided - it is not required for unlit as in case of unlit double sided only drive the cullmode
|
|
// VARYINGS_NEED_CULLFACE can be define by VaryingsMeshToPS.FaceSign input if a IsFrontFace Node is included in the shader graph.
|
|
#if defined(_DOUBLESIDED_ON) && !defined(VARYINGS_NEED_CULLFACE)
|
|
#define VARYINGS_NEED_CULLFACE
|
|
#endif
|
|
#endif
|
|
|
|
// Specific Material Define
|
|
#define _AMBIENT_OCCLUSION 1
|
|
#define _SPECULAR_OCCLUSION_FROM_AO 1
|
|
#define _ENERGY_CONSERVING_SPECULAR 1
|
|
|
|
#if _MATERIAL_FEATURE_COLORED_TRANSMISSION
|
|
// Colored Transmission doesn't support clear coat
|
|
#undef _MATERIAL_FEATURE_CLEAR_COAT
|
|
#endif
|
|
|
|
// If we use subsurface scattering, enable output split lighting (for forward pass)
|
|
#if defined(_MATERIAL_FEATURE_SUBSURFACE_SCATTERING) && !defined(_SURFACE_TYPE_TRANSPARENT)
|
|
#define OUTPUT_SPLIT_LIGHTING
|
|
#endif
|
|
|
|
// This shader support recursive rendering for raytracing
|
|
#define HAVE_RECURSIVE_RENDERING
|
|
|
|
// In Path Tracing, For all single-sided, refractive materials, we want to force a thin refraction model
|
|
#if (SHADERPASS == SHADERPASS_PATH_TRACING) && !defined(_DOUBLESIDED_ON) && (defined(_REFRACTION_PLANE) || defined(_REFRACTION_SPHERE))
|
|
#undef _REFRACTION_PLANE
|
|
#undef _REFRACTION_SPHERE
|
|
#define _REFRACTION_THIN
|
|
#endif
|
|
// Caution: we can use the define SHADER_UNLIT onlit after the above Material include as it is the Unlit template who define it
|
|
|
|
// To handle SSR on transparent correctly with a possibility to enable/disable it per framesettings
|
|
// we should have a code like this:
|
|
// if !defined(_DISABLE_SSR_TRANSPARENT)
|
|
// pragma multi_compile _ WRITE_NORMAL_BUFFER
|
|
// endif
|
|
// i.e we enable the multicompile only if we can receive SSR or not, and then C# code drive
|
|
// it based on if SSR transparent in frame settings and not (and stripper can strip it).
|
|
// this is currently not possible with our current preprocessor as _DISABLE_SSR_TRANSPARENT is a keyword not a define
|
|
// so instead we used this and chose to pay the extra cost of normal write even if SSR transaprent is disabled.
|
|
// Ideally the shader graph generator should handle it but condition below can't be handle correctly for now.
|
|
#if SHADERPASS == SHADERPASS_TRANSPARENT_DEPTH_PREPASS
|
|
#if !defined(_DISABLE_SSR_TRANSPARENT) && !defined(SHADER_UNLIT)
|
|
#define WRITE_NORMAL_BUFFER
|
|
#endif
|
|
#endif
|
|
|
|
// See Lit.shader
|
|
#if SHADERPASS == SHADERPASS_MOTION_VECTORS && defined(WRITE_DECAL_BUFFER_AND_RENDERING_LAYER)
|
|
#define WRITE_DECAL_BUFFER
|
|
#endif
|
|
|
|
#ifndef DEBUG_DISPLAY
|
|
// In case of opaque we don't want to perform the alpha test, it is done in depth prepass and we use depth equal for ztest (setup from UI)
|
|
// Don't do it with debug display mode as it is possible there is no depth prepass in this case
|
|
#if !defined(_SURFACE_TYPE_TRANSPARENT)
|
|
#if SHADERPASS == SHADERPASS_FORWARD
|
|
#define SHADERPASS_FORWARD_BYPASS_ALPHA_TEST
|
|
#elif SHADERPASS == SHADERPASS_GBUFFER
|
|
#define SHADERPASS_GBUFFER_BYPASS_ALPHA_TEST
|
|
#endif
|
|
#endif
|
|
#endif
|
|
|
|
// Define _DEFERRED_CAPABLE_MATERIAL for shader capable to run in deferred pass
|
|
#if defined(SHADER_LIT) && !defined(_SURFACE_TYPE_TRANSPARENT)
|
|
#define _DEFERRED_CAPABLE_MATERIAL
|
|
#endif
|
|
|
|
// Translate transparent motion vector define
|
|
#if (defined(_TRANSPARENT_WRITES_MOTION_VEC) || defined(_TRANSPARENT_REFRACTIVE_SORT)) && defined(_SURFACE_TYPE_TRANSPARENT)
|
|
#define _WRITE_TRANSPARENT_MOTION_VECTOR
|
|
#endif
|
|
|
|
// -- Graph Properties
|
|
CBUFFER_START(UnityPerMaterial)
|
|
float4 _BaseColor;
|
|
float4 _BaseColorMap_TexelSize;
|
|
float4 _BaseTilingOffset;
|
|
float _BaseTriplanarThreshold;
|
|
float4 _BaseNormalMap_TexelSize;
|
|
float _BaseNormalScale;
|
|
float4 _BaseMaskMap_TexelSize;
|
|
float _BaseMetallic;
|
|
float _BaseAORemapMin;
|
|
float _BaseAORemapMax;
|
|
float _BaseSmoothnessRemapMin;
|
|
float _BaseSmoothnessRemapMax;
|
|
float _USEDYNAMICCOVERTSTATICMASKF;
|
|
float4 _CoverMaskA_TexelSize;
|
|
float _CoverMaskPower;
|
|
float _Cover_Amount;
|
|
float _Cover_Amount_Grow_Speed;
|
|
float3 _CoverDirection;
|
|
float _Cover_Max_Angle;
|
|
float _Cover_Min_Height;
|
|
float _Cover_Min_Height_Blending;
|
|
float4 _CoverBaseColor;
|
|
float4 _CoverBaseColorMap_TexelSize;
|
|
float4 _CoverTilingOffset;
|
|
float _CoverTriplanarThreshold;
|
|
float4 _CoverNormalMap_TexelSize;
|
|
float _CoverNormalScale;
|
|
float _CoverNormalBlendHardness;
|
|
float _CoverHeightMapMin;
|
|
float _CoverHeightMapMax;
|
|
float _CoverHeightMapOffset;
|
|
float _CoverHardness;
|
|
float4 _CoverMaskMap_TexelSize;
|
|
float _CoverMetallic;
|
|
float _CoverAORemapMin;
|
|
float _CoverAORemapMax;
|
|
float _CoverSmoothnessRemapMin;
|
|
float _CoverSmoothnessRemapMax;
|
|
float4 _ShapeNormalMap_TexelSize;
|
|
float _shapeNormalScale;
|
|
float _CovershapeNormalScale;
|
|
float4 _ShapeAO_TexelSize;
|
|
float _ShapeAORemapMin;
|
|
float _ShapeAORemapMax;
|
|
float _CoverShapeAORemapMin;
|
|
float _CoverShapeAORemapMax;
|
|
float4 _DetailMap_TexelSize;
|
|
float4 _DetailTilingOffset;
|
|
float _DetailAlbedoScale;
|
|
float _DetailNormalScale;
|
|
float _DetailSmoothnessScale;
|
|
float _DetailCoverAlbedoScale;
|
|
float _DetailCoverNormalScale;
|
|
float _DetailCoverSmoothnessScale;
|
|
float _CoverMaskRCurvature;
|
|
float _BaseBrightnessCurvMultply;
|
|
float _BaseBrightnessCurvPower;
|
|
float _BaseDarknessCurvMultply;
|
|
float _BaseDarknessCurvPower;
|
|
float _CoverBrightnessCurvMultply;
|
|
float _CoverBrightnessCurvPower;
|
|
float _CoverDarknessCurvMultply;
|
|
float _CoverDarknessCurvPower;
|
|
float4 _WetColor;
|
|
float _WetSmoothness;
|
|
float4 _EmissionColor;
|
|
float _UseShadowThreshold;
|
|
float4 _DoubleSidedConstants;
|
|
UNITY_TEXTURE_STREAMING_DEBUG_VARS;
|
|
float _BlendMode;
|
|
float _EnableBlendModePreserveSpecularLighting;
|
|
float _RayTracing;
|
|
float _RefractionModel;
|
|
float _MaterialID;
|
|
float _MaterialTypeMask;
|
|
CBUFFER_END
|
|
|
|
|
|
// Object and Global properties
|
|
SAMPLER(SamplerState_Linear_Repeat);
|
|
SAMPLER(SamplerState_Linear_Repeat_Aniso8);
|
|
TEXTURE2D(_BaseColorMap);
|
|
SAMPLER(sampler_BaseColorMap);
|
|
TEXTURE2D(_BaseNormalMap);
|
|
SAMPLER(sampler_BaseNormalMap);
|
|
TEXTURE2D(_BaseMaskMap);
|
|
SAMPLER(sampler_BaseMaskMap);
|
|
TEXTURE2D(_CoverMaskA);
|
|
SAMPLER(sampler_CoverMaskA);
|
|
TEXTURE2D(_CoverBaseColorMap);
|
|
SAMPLER(sampler_CoverBaseColorMap);
|
|
TEXTURE2D(_CoverNormalMap);
|
|
SAMPLER(sampler_CoverNormalMap);
|
|
TEXTURE2D(_CoverMaskMap);
|
|
SAMPLER(sampler_CoverMaskMap);
|
|
TEXTURE2D(_ShapeNormalMap);
|
|
SAMPLER(sampler_ShapeNormalMap);
|
|
TEXTURE2D(_ShapeAO);
|
|
SAMPLER(sampler_ShapeAO);
|
|
TEXTURE2D(_DetailMap);
|
|
SAMPLER(sampler_DetailMap);
|
|
|
|
// -- Property used by ScenePickingPass
|
|
#ifdef SCENEPICKINGPASS
|
|
float4 _SelectionID;
|
|
#endif
|
|
|
|
// -- Properties used by SceneSelectionPass
|
|
#ifdef SCENESELECTIONPASS
|
|
int _ObjectId;
|
|
int _PassValue;
|
|
#endif
|
|
|
|
// Includes
|
|
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/RenderPipeline/Raytracing/Shaders/RaytracingMacros.hlsl"
|
|
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/RenderPipeline/Raytracing/Shaders/ShaderVariablesRaytracing.hlsl"
|
|
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/Material/Material.hlsl"
|
|
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/RenderPipeline/Raytracing/Shaders/ShaderVariablesRaytracingLightLoop.hlsl"
|
|
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/RenderPipeline/Raytracing/Shaders/RaytracingIntersection.hlsl"
|
|
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/Lighting/Lighting.hlsl"
|
|
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/Lighting/LightLoop/LightLoopDef.hlsl"
|
|
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/Material/Lit/Lit.hlsl"
|
|
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/Material/Lit/LitRayTracing.hlsl"
|
|
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/Material/BuiltinUtilities.hlsl"
|
|
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/Material/MaterialUtilities.hlsl"
|
|
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/RenderPipeline/Raytracing/Shaders/RaytracingLightLoop.hlsl"
|
|
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/RenderPipeline/Raytracing/Shaders/RayTracingCommon.hlsl"
|
|
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/ShaderLibrary/ShaderGraphFunctions.hlsl"
|
|
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/Material/Decal/DecalUtilities.hlsl"
|
|
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/Material/Lit/LitDecalData.hlsl"
|
|
// GraphIncludes: <None>
|
|
|
|
// --------------------------------------------------
|
|
// Structs and Packing
|
|
|
|
struct SurfaceDescriptionInputs
|
|
{
|
|
float3 WorldSpaceNormal;
|
|
float3 TangentSpaceNormal;
|
|
float3 WorldSpaceTangent;
|
|
float3 WorldSpaceBiTangent;
|
|
float3 AbsoluteWorldSpacePosition;
|
|
float4 uv0;
|
|
float4 VertexColor;
|
|
};
|
|
|
|
//Interpolator Packs: <None>
|
|
|
|
// --------------------------------------------------
|
|
// Graph
|
|
|
|
|
|
// Graph Functions
|
|
|
|
void Unity_Divide_float4(float4 A, float4 B, out float4 Out)
|
|
{
|
|
Out = A / B;
|
|
}
|
|
|
|
void Unity_Combine_float(float R, float G, float B, float A, out float4 RGBA, out float3 RGB, out float2 RG)
|
|
{
|
|
RGBA = float4(R, G, B, A);
|
|
RGB = float3(R, G, B);
|
|
RG = float2(R, G);
|
|
}
|
|
|
|
void Unity_Multiply_float4_float4(float4 A, float4 B, out float4 Out)
|
|
{
|
|
Out = A * B;
|
|
}
|
|
|
|
void Unity_Sign_float3(float3 In, out float3 Out)
|
|
{
|
|
Out = sign(In);
|
|
}
|
|
|
|
void Unity_Multiply_float2_float2(float2 A, float2 B, out float2 Out)
|
|
{
|
|
Out = A * B;
|
|
}
|
|
|
|
void Unity_Absolute_float3(float3 In, out float3 Out)
|
|
{
|
|
Out = abs(In);
|
|
}
|
|
|
|
void Unity_Power_float3(float3 A, float3 B, out float3 Out)
|
|
{
|
|
Out = pow(A, B);
|
|
}
|
|
|
|
void Unity_Multiply_float3_float3(float3 A, float3 B, out float3 Out)
|
|
{
|
|
Out = A * B;
|
|
}
|
|
|
|
void Unity_Multiply_float_float(float A, float B, out float Out)
|
|
{
|
|
Out = A * B;
|
|
}
|
|
|
|
void Unity_Add_float4(float4 A, float4 B, out float4 Out)
|
|
{
|
|
Out = A + B;
|
|
}
|
|
|
|
void Unity_Add_float(float A, float B, out float Out)
|
|
{
|
|
Out = A + B;
|
|
}
|
|
|
|
struct Bindings_TriplanarNM_bc609ed95f52591469ab35dbfe0efcea_float
|
|
{
|
|
float3 WorldSpaceNormal;
|
|
float3 AbsoluteWorldSpacePosition;
|
|
};
|
|
|
|
void SG_TriplanarNM_bc609ed95f52591469ab35dbfe0efcea_float(UnityTexture2D Texture2D_80A3D28F, float Vector1_41461AC9, float Vector1_E4D1C13A, UnitySamplerState _SamplerState, Bindings_TriplanarNM_bc609ed95f52591469ab35dbfe0efcea_float IN, out float4 XYZ_1, out float4 XZ_2, out float4 YZ_3, out float4 XY_4)
|
|
{
|
|
UnityTexture2D _Property_3e01b4d2fc68d48ba3acbba9d5881e59_Out_0_Texture2D = Texture2D_80A3D28F;
|
|
float _Split_89ed63cb625cb3878c183d0b71c03400_R_1_Float = IN.AbsoluteWorldSpacePosition[0];
|
|
float _Split_89ed63cb625cb3878c183d0b71c03400_G_2_Float = IN.AbsoluteWorldSpacePosition[1];
|
|
float _Split_89ed63cb625cb3878c183d0b71c03400_B_3_Float = IN.AbsoluteWorldSpacePosition[2];
|
|
float _Split_89ed63cb625cb3878c183d0b71c03400_A_4_Float = 0;
|
|
float4 _Combine_cf2d04ff119ad88493f6460431765cbb_RGBA_4_Vector4;
|
|
float3 _Combine_cf2d04ff119ad88493f6460431765cbb_RGB_5_Vector3;
|
|
float2 _Combine_cf2d04ff119ad88493f6460431765cbb_RG_6_Vector2;
|
|
Unity_Combine_float(_Split_89ed63cb625cb3878c183d0b71c03400_R_1_Float, _Split_89ed63cb625cb3878c183d0b71c03400_B_3_Float, float(0), float(0), _Combine_cf2d04ff119ad88493f6460431765cbb_RGBA_4_Vector4, _Combine_cf2d04ff119ad88493f6460431765cbb_RGB_5_Vector3, _Combine_cf2d04ff119ad88493f6460431765cbb_RG_6_Vector2);
|
|
float _Property_47988ec10c0c18879d461e00bed806e7_Out_0_Float = Vector1_41461AC9;
|
|
float4 _Multiply_14cec4902d0a00829e4555071a1b8ad1_Out_2_Vector4;
|
|
Unity_Multiply_float4_float4(_Combine_cf2d04ff119ad88493f6460431765cbb_RGBA_4_Vector4, (_Property_47988ec10c0c18879d461e00bed806e7_Out_0_Float.xxxx), _Multiply_14cec4902d0a00829e4555071a1b8ad1_Out_2_Vector4);
|
|
float3 _Sign_b826e0ff2d95ec8cb2b2cbbd7ea2eab6_Out_1_Vector3;
|
|
Unity_Sign_float3(IN.WorldSpaceNormal, _Sign_b826e0ff2d95ec8cb2b2cbbd7ea2eab6_Out_1_Vector3);
|
|
float _Split_742547a7039de986a646d04c157ae549_R_1_Float = _Sign_b826e0ff2d95ec8cb2b2cbbd7ea2eab6_Out_1_Vector3[0];
|
|
float _Split_742547a7039de986a646d04c157ae549_G_2_Float = _Sign_b826e0ff2d95ec8cb2b2cbbd7ea2eab6_Out_1_Vector3[1];
|
|
float _Split_742547a7039de986a646d04c157ae549_B_3_Float = _Sign_b826e0ff2d95ec8cb2b2cbbd7ea2eab6_Out_1_Vector3[2];
|
|
float _Split_742547a7039de986a646d04c157ae549_A_4_Float = 0;
|
|
float2 _Vector2_40a8919e571ec18499de72022c155b38_Out_0_Vector2 = float2(_Split_742547a7039de986a646d04c157ae549_G_2_Float, float(1));
|
|
float2 _Multiply_5fa32af59cdca88389832336b2268bd5_Out_2_Vector2;
|
|
Unity_Multiply_float2_float2((_Multiply_14cec4902d0a00829e4555071a1b8ad1_Out_2_Vector4.xy), _Vector2_40a8919e571ec18499de72022c155b38_Out_0_Vector2, _Multiply_5fa32af59cdca88389832336b2268bd5_Out_2_Vector2);
|
|
UnitySamplerState _Property_544c7fa9dfe54e30a0df9d605340a374_Out_0_SamplerState = _SamplerState;
|
|
float4 _SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_RGBA_0_Vector4 = SAMPLE_TEXTURE2D(_Property_3e01b4d2fc68d48ba3acbba9d5881e59_Out_0_Texture2D.tex, _Property_544c7fa9dfe54e30a0df9d605340a374_Out_0_SamplerState.samplerstate, _Property_3e01b4d2fc68d48ba3acbba9d5881e59_Out_0_Texture2D.GetTransformedUV(_Multiply_5fa32af59cdca88389832336b2268bd5_Out_2_Vector2) );
|
|
float _SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_R_4_Float = _SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_RGBA_0_Vector4.r;
|
|
float _SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_G_5_Float = _SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_RGBA_0_Vector4.g;
|
|
float _SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_B_6_Float = _SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_RGBA_0_Vector4.b;
|
|
float _SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_A_7_Float = _SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_RGBA_0_Vector4.a;
|
|
float3 _Absolute_644b798714827680b39bf5d34f70385f_Out_1_Vector3;
|
|
Unity_Absolute_float3(IN.WorldSpaceNormal, _Absolute_644b798714827680b39bf5d34f70385f_Out_1_Vector3);
|
|
float _Property_adc4c59482221c8aad681c6558728ac9_Out_0_Float = Vector1_E4D1C13A;
|
|
float3 _Power_ee478822a04529849ae8df1636c29fe2_Out_2_Vector3;
|
|
Unity_Power_float3(_Absolute_644b798714827680b39bf5d34f70385f_Out_1_Vector3, (_Property_adc4c59482221c8aad681c6558728ac9_Out_0_Float.xxx), _Power_ee478822a04529849ae8df1636c29fe2_Out_2_Vector3);
|
|
float3 _Multiply_b386a937554d73828e437d126d69608b_Out_2_Vector3;
|
|
Unity_Multiply_float3_float3(_Power_ee478822a04529849ae8df1636c29fe2_Out_2_Vector3, _Power_ee478822a04529849ae8df1636c29fe2_Out_2_Vector3, _Multiply_b386a937554d73828e437d126d69608b_Out_2_Vector3);
|
|
float _Split_ae83014fcbd9f7879a0b91fa66dc9718_R_1_Float = _Multiply_b386a937554d73828e437d126d69608b_Out_2_Vector3[0];
|
|
float _Split_ae83014fcbd9f7879a0b91fa66dc9718_G_2_Float = _Multiply_b386a937554d73828e437d126d69608b_Out_2_Vector3[1];
|
|
float _Split_ae83014fcbd9f7879a0b91fa66dc9718_B_3_Float = _Multiply_b386a937554d73828e437d126d69608b_Out_2_Vector3[2];
|
|
float _Split_ae83014fcbd9f7879a0b91fa66dc9718_A_4_Float = 0;
|
|
float4 _Multiply_2e1040ca9c98d085ace76ee93f094039_Out_2_Vector4;
|
|
Unity_Multiply_float4_float4(_SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_RGBA_0_Vector4, (_Split_ae83014fcbd9f7879a0b91fa66dc9718_G_2_Float.xxxx), _Multiply_2e1040ca9c98d085ace76ee93f094039_Out_2_Vector4);
|
|
float4 _Combine_192c2c4a69be588b90ca005a32e22552_RGBA_4_Vector4;
|
|
float3 _Combine_192c2c4a69be588b90ca005a32e22552_RGB_5_Vector3;
|
|
float2 _Combine_192c2c4a69be588b90ca005a32e22552_RG_6_Vector2;
|
|
Unity_Combine_float(_Split_89ed63cb625cb3878c183d0b71c03400_R_1_Float, _Split_89ed63cb625cb3878c183d0b71c03400_G_2_Float, float(0), float(0), _Combine_192c2c4a69be588b90ca005a32e22552_RGBA_4_Vector4, _Combine_192c2c4a69be588b90ca005a32e22552_RGB_5_Vector3, _Combine_192c2c4a69be588b90ca005a32e22552_RG_6_Vector2);
|
|
float4 _Multiply_138240d0d4846e87b0febabec0d6891b_Out_2_Vector4;
|
|
Unity_Multiply_float4_float4(_Combine_192c2c4a69be588b90ca005a32e22552_RGBA_4_Vector4, (_Property_47988ec10c0c18879d461e00bed806e7_Out_0_Float.xxxx), _Multiply_138240d0d4846e87b0febabec0d6891b_Out_2_Vector4);
|
|
float _Multiply_014402ded5a3988a8c18ba07636ea5a7_Out_2_Float;
|
|
Unity_Multiply_float_float(_Split_742547a7039de986a646d04c157ae549_B_3_Float, -1, _Multiply_014402ded5a3988a8c18ba07636ea5a7_Out_2_Float);
|
|
float2 _Vector2_caa25d55d456a58982bdfc39b1b43f3f_Out_0_Vector2 = float2(_Multiply_014402ded5a3988a8c18ba07636ea5a7_Out_2_Float, float(1));
|
|
float2 _Multiply_a67201b6e1a0a28c98cd9d06e8b09543_Out_2_Vector2;
|
|
Unity_Multiply_float2_float2((_Multiply_138240d0d4846e87b0febabec0d6891b_Out_2_Vector4.xy), _Vector2_caa25d55d456a58982bdfc39b1b43f3f_Out_0_Vector2, _Multiply_a67201b6e1a0a28c98cd9d06e8b09543_Out_2_Vector2);
|
|
float4 _SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_RGBA_0_Vector4 = SAMPLE_TEXTURE2D(_Property_3e01b4d2fc68d48ba3acbba9d5881e59_Out_0_Texture2D.tex, _Property_544c7fa9dfe54e30a0df9d605340a374_Out_0_SamplerState.samplerstate, _Property_3e01b4d2fc68d48ba3acbba9d5881e59_Out_0_Texture2D.GetTransformedUV(_Multiply_a67201b6e1a0a28c98cd9d06e8b09543_Out_2_Vector2) );
|
|
float _SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_R_4_Float = _SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_RGBA_0_Vector4.r;
|
|
float _SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_G_5_Float = _SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_RGBA_0_Vector4.g;
|
|
float _SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_B_6_Float = _SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_RGBA_0_Vector4.b;
|
|
float _SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_A_7_Float = _SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_RGBA_0_Vector4.a;
|
|
float4 _Multiply_7bb4009c92b108849ac6ca92bc1442f2_Out_2_Vector4;
|
|
Unity_Multiply_float4_float4(_SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_RGBA_0_Vector4, (_Split_ae83014fcbd9f7879a0b91fa66dc9718_B_3_Float.xxxx), _Multiply_7bb4009c92b108849ac6ca92bc1442f2_Out_2_Vector4);
|
|
float4 _Combine_1e9ffdba42d6918fb7a4b185f1585d2a_RGBA_4_Vector4;
|
|
float3 _Combine_1e9ffdba42d6918fb7a4b185f1585d2a_RGB_5_Vector3;
|
|
float2 _Combine_1e9ffdba42d6918fb7a4b185f1585d2a_RG_6_Vector2;
|
|
Unity_Combine_float(_Split_89ed63cb625cb3878c183d0b71c03400_B_3_Float, _Split_89ed63cb625cb3878c183d0b71c03400_G_2_Float, float(0), float(0), _Combine_1e9ffdba42d6918fb7a4b185f1585d2a_RGBA_4_Vector4, _Combine_1e9ffdba42d6918fb7a4b185f1585d2a_RGB_5_Vector3, _Combine_1e9ffdba42d6918fb7a4b185f1585d2a_RG_6_Vector2);
|
|
float4 _Multiply_2c0864423b014f8b8af8523f68cbb63c_Out_2_Vector4;
|
|
Unity_Multiply_float4_float4(_Combine_1e9ffdba42d6918fb7a4b185f1585d2a_RGBA_4_Vector4, (_Property_47988ec10c0c18879d461e00bed806e7_Out_0_Float.xxxx), _Multiply_2c0864423b014f8b8af8523f68cbb63c_Out_2_Vector4);
|
|
float2 _Vector2_54dfd40df2fc78809955dd272f2cf0c3_Out_0_Vector2 = float2(_Split_742547a7039de986a646d04c157ae549_R_1_Float, float(1));
|
|
float2 _Multiply_addbd5fcede95f80bbb806c94e49ef63_Out_2_Vector2;
|
|
Unity_Multiply_float2_float2((_Multiply_2c0864423b014f8b8af8523f68cbb63c_Out_2_Vector4.xy), _Vector2_54dfd40df2fc78809955dd272f2cf0c3_Out_0_Vector2, _Multiply_addbd5fcede95f80bbb806c94e49ef63_Out_2_Vector2);
|
|
float4 _SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_RGBA_0_Vector4 = SAMPLE_TEXTURE2D(_Property_3e01b4d2fc68d48ba3acbba9d5881e59_Out_0_Texture2D.tex, _Property_544c7fa9dfe54e30a0df9d605340a374_Out_0_SamplerState.samplerstate, _Property_3e01b4d2fc68d48ba3acbba9d5881e59_Out_0_Texture2D.GetTransformedUV(_Multiply_addbd5fcede95f80bbb806c94e49ef63_Out_2_Vector2) );
|
|
float _SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_R_4_Float = _SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_RGBA_0_Vector4.r;
|
|
float _SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_G_5_Float = _SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_RGBA_0_Vector4.g;
|
|
float _SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_B_6_Float = _SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_RGBA_0_Vector4.b;
|
|
float _SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_A_7_Float = _SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_RGBA_0_Vector4.a;
|
|
float4 _Multiply_77818c22e359fc8cbb7dd20216a8db72_Out_2_Vector4;
|
|
Unity_Multiply_float4_float4(_SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_RGBA_0_Vector4, (_Split_ae83014fcbd9f7879a0b91fa66dc9718_R_1_Float.xxxx), _Multiply_77818c22e359fc8cbb7dd20216a8db72_Out_2_Vector4);
|
|
float4 _Add_769d9ee909c9238dbbf72d2800a2f268_Out_2_Vector4;
|
|
Unity_Add_float4(_Multiply_7bb4009c92b108849ac6ca92bc1442f2_Out_2_Vector4, _Multiply_77818c22e359fc8cbb7dd20216a8db72_Out_2_Vector4, _Add_769d9ee909c9238dbbf72d2800a2f268_Out_2_Vector4);
|
|
float4 _Add_14295f72880e4b87a1baf1ced943ac40_Out_2_Vector4;
|
|
Unity_Add_float4(_Multiply_2e1040ca9c98d085ace76ee93f094039_Out_2_Vector4, _Add_769d9ee909c9238dbbf72d2800a2f268_Out_2_Vector4, _Add_14295f72880e4b87a1baf1ced943ac40_Out_2_Vector4);
|
|
float _Add_e59af300bba2498db32eac1412123447_Out_2_Float;
|
|
Unity_Add_float(_Split_ae83014fcbd9f7879a0b91fa66dc9718_R_1_Float, _Split_ae83014fcbd9f7879a0b91fa66dc9718_G_2_Float, _Add_e59af300bba2498db32eac1412123447_Out_2_Float);
|
|
float _Add_e855069f047fae8ea9027d56acb61e56_Out_2_Float;
|
|
Unity_Add_float(_Add_e59af300bba2498db32eac1412123447_Out_2_Float, _Split_ae83014fcbd9f7879a0b91fa66dc9718_B_3_Float, _Add_e855069f047fae8ea9027d56acb61e56_Out_2_Float);
|
|
float4 _Divide_91ae4b94f1d9b78e99d0472293b8098c_Out_2_Vector4;
|
|
Unity_Divide_float4(_Add_14295f72880e4b87a1baf1ced943ac40_Out_2_Vector4, (_Add_e855069f047fae8ea9027d56acb61e56_Out_2_Float.xxxx), _Divide_91ae4b94f1d9b78e99d0472293b8098c_Out_2_Vector4);
|
|
XYZ_1 = _Divide_91ae4b94f1d9b78e99d0472293b8098c_Out_2_Vector4;
|
|
XZ_2 = _SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_RGBA_0_Vector4;
|
|
YZ_3 = _SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_RGBA_0_Vector4;
|
|
XY_4 = _SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_RGBA_0_Vector4;
|
|
}
|
|
|
|
void Unity_Clamp_float(float In, float Min, float Max, out float Out)
|
|
{
|
|
Out = clamp(In, Min, Max);
|
|
}
|
|
|
|
void Unity_Absolute_float(float In, out float Out)
|
|
{
|
|
Out = abs(In);
|
|
}
|
|
|
|
void Unity_Power_float(float A, float B, out float Out)
|
|
{
|
|
Out = pow(A, B);
|
|
}
|
|
|
|
void Unity_Clamp_float4(float4 In, float4 Min, float4 Max, out float4 Out)
|
|
{
|
|
Out = clamp(In, Min, Max);
|
|
}
|
|
|
|
void Unity_Branch_float4(float Predicate, float4 True, float4 False, out float4 Out)
|
|
{
|
|
Out = Predicate ? True : False;
|
|
}
|
|
|
|
void Unity_TilingAndOffset_float(float2 UV, float2 Tiling, float2 Offset, out float2 Out)
|
|
{
|
|
Out = UV * Tiling + Offset;
|
|
}
|
|
|
|
void Unity_Saturate_float(float In, out float Out)
|
|
{
|
|
Out = saturate(In);
|
|
}
|
|
|
|
void Unity_SquareRoot_float4(float4 In, out float4 Out)
|
|
{
|
|
Out = sqrt(In);
|
|
}
|
|
|
|
void Unity_Sign_float(float In, out float Out)
|
|
{
|
|
Out = sign(In);
|
|
}
|
|
|
|
void Unity_Ceiling_float(float In, out float Out)
|
|
{
|
|
Out = ceil(In);
|
|
}
|
|
|
|
void Unity_Lerp_float4(float4 A, float4 B, float4 T, out float4 Out)
|
|
{
|
|
Out = lerp(A, B, T);
|
|
}
|
|
|
|
struct Bindings_BlendOverlayBaseColor_acdb3dfca72bd6b42bbc35f4613331a2_float
|
|
{
|
|
};
|
|
|
|
void SG_BlendOverlayBaseColor_acdb3dfca72bd6b42bbc35f4613331a2_float(float4 Color_9AA111D3, float Vector1_FBE622A2, float Vector1_8C15C351, Bindings_BlendOverlayBaseColor_acdb3dfca72bd6b42bbc35f4613331a2_float IN, out float3 OutVector4_1)
|
|
{
|
|
float4 _Property_012510d774fb7f8b860f5270dca4500f_Out_0_Vector4 = Color_9AA111D3;
|
|
float4 _SquareRoot_c2c57d0223a9538aa9240890c3cacb0c_Out_1_Vector4;
|
|
Unity_SquareRoot_float4(_Property_012510d774fb7f8b860f5270dca4500f_Out_0_Vector4, _SquareRoot_c2c57d0223a9538aa9240890c3cacb0c_Out_1_Vector4);
|
|
float _Property_a00e29241d12f983b30177515b367ec9_Out_0_Float = Vector1_FBE622A2;
|
|
float _Sign_343a45ede7349283a681c6bd9998fd8e_Out_1_Float;
|
|
Unity_Sign_float(_Property_a00e29241d12f983b30177515b367ec9_Out_0_Float, _Sign_343a45ede7349283a681c6bd9998fd8e_Out_1_Float);
|
|
float _Add_681019b8f5d3d68bb482d419c9fc61a9_Out_2_Float;
|
|
Unity_Add_float(_Sign_343a45ede7349283a681c6bd9998fd8e_Out_1_Float, float(1), _Add_681019b8f5d3d68bb482d419c9fc61a9_Out_2_Float);
|
|
float _Multiply_e8f4cb722712a880ac0db6c7461427f7_Out_2_Float;
|
|
Unity_Multiply_float_float(_Add_681019b8f5d3d68bb482d419c9fc61a9_Out_2_Float, 0.5, _Multiply_e8f4cb722712a880ac0db6c7461427f7_Out_2_Float);
|
|
float _Ceiling_95ad15988aa9b98184875fa754feae01_Out_1_Float;
|
|
Unity_Ceiling_float(_Multiply_e8f4cb722712a880ac0db6c7461427f7_Out_2_Float, _Ceiling_95ad15988aa9b98184875fa754feae01_Out_1_Float);
|
|
float _Property_2db1c747a05ee284a8b00076062f91a4_Out_0_Float = Vector1_8C15C351;
|
|
float _Multiply_9564ecda5193bc8286d9ff771c9226cd_Out_2_Float;
|
|
Unity_Multiply_float_float(_Property_2db1c747a05ee284a8b00076062f91a4_Out_0_Float, _Property_2db1c747a05ee284a8b00076062f91a4_Out_0_Float, _Multiply_9564ecda5193bc8286d9ff771c9226cd_Out_2_Float);
|
|
float4 _Lerp_b3cdb01fc3c5b988ac9b184943bf7c01_Out_3_Vector4;
|
|
Unity_Lerp_float4(_SquareRoot_c2c57d0223a9538aa9240890c3cacb0c_Out_1_Vector4, (_Ceiling_95ad15988aa9b98184875fa754feae01_Out_1_Float.xxxx), (_Multiply_9564ecda5193bc8286d9ff771c9226cd_Out_2_Float.xxxx), _Lerp_b3cdb01fc3c5b988ac9b184943bf7c01_Out_3_Vector4);
|
|
float4 _Multiply_39d1daff98488f8ea2cd794ad4f20926_Out_2_Vector4;
|
|
Unity_Multiply_float4_float4(_Lerp_b3cdb01fc3c5b988ac9b184943bf7c01_Out_3_Vector4, _Lerp_b3cdb01fc3c5b988ac9b184943bf7c01_Out_3_Vector4, _Multiply_39d1daff98488f8ea2cd794ad4f20926_Out_2_Vector4);
|
|
OutVector4_1 = (_Multiply_39d1daff98488f8ea2cd794ad4f20926_Out_2_Vector4.xyz);
|
|
}
|
|
|
|
void Unity_Add_float2(float2 A, float2 B, out float2 Out)
|
|
{
|
|
Out = A + B;
|
|
}
|
|
|
|
void Unity_DotProduct_float2(float2 A, float2 B, out float Out)
|
|
{
|
|
Out = dot(A, B);
|
|
}
|
|
|
|
void Unity_OneMinus_float(float In, out float Out)
|
|
{
|
|
Out = 1 - In;
|
|
}
|
|
|
|
void Unity_SquareRoot_float(float In, out float Out)
|
|
{
|
|
Out = sqrt(In);
|
|
}
|
|
|
|
void Unity_Add_float3(float3 A, float3 B, out float3 Out)
|
|
{
|
|
Out = A + B;
|
|
}
|
|
|
|
void Unity_Divide_float3(float3 A, float3 B, out float3 Out)
|
|
{
|
|
Out = A / B;
|
|
}
|
|
|
|
void Unity_Normalize_float3(float3 In, out float3 Out)
|
|
{
|
|
Out = normalize(In);
|
|
}
|
|
|
|
struct Bindings_TriplanarNMn_059da9746584140498cd018db3c76047_float
|
|
{
|
|
float3 WorldSpaceNormal;
|
|
float3 WorldSpaceTangent;
|
|
float3 WorldSpaceBiTangent;
|
|
float3 AbsoluteWorldSpacePosition;
|
|
};
|
|
|
|
void SG_TriplanarNMn_059da9746584140498cd018db3c76047_float(UnityTexture2D Texture2D_80A3D28F, float Vector1_41461AC9, float Vector1_E4D1C13A, UnitySamplerState _SamplerState, Bindings_TriplanarNMn_059da9746584140498cd018db3c76047_float IN, out float4 XYZ_1, out float4 XZ_2, out float4 YZ_3, out float4 XY_4)
|
|
{
|
|
UnityTexture2D _Property_3e01b4d2fc68d48ba3acbba9d5881e59_Out_0_Texture2D = Texture2D_80A3D28F;
|
|
float _Split_89ed63cb625cb3878c183d0b71c03400_R_1_Float = IN.AbsoluteWorldSpacePosition[0];
|
|
float _Split_89ed63cb625cb3878c183d0b71c03400_G_2_Float = IN.AbsoluteWorldSpacePosition[1];
|
|
float _Split_89ed63cb625cb3878c183d0b71c03400_B_3_Float = IN.AbsoluteWorldSpacePosition[2];
|
|
float _Split_89ed63cb625cb3878c183d0b71c03400_A_4_Float = 0;
|
|
float4 _Combine_cf2d04ff119ad88493f6460431765cbb_RGBA_4_Vector4;
|
|
float3 _Combine_cf2d04ff119ad88493f6460431765cbb_RGB_5_Vector3;
|
|
float2 _Combine_cf2d04ff119ad88493f6460431765cbb_RG_6_Vector2;
|
|
Unity_Combine_float(_Split_89ed63cb625cb3878c183d0b71c03400_R_1_Float, _Split_89ed63cb625cb3878c183d0b71c03400_B_3_Float, float(0), float(0), _Combine_cf2d04ff119ad88493f6460431765cbb_RGBA_4_Vector4, _Combine_cf2d04ff119ad88493f6460431765cbb_RGB_5_Vector3, _Combine_cf2d04ff119ad88493f6460431765cbb_RG_6_Vector2);
|
|
float _Property_47988ec10c0c18879d461e00bed806e7_Out_0_Float = Vector1_41461AC9;
|
|
float4 _Multiply_14cec4902d0a00829e4555071a1b8ad1_Out_2_Vector4;
|
|
Unity_Multiply_float4_float4(_Combine_cf2d04ff119ad88493f6460431765cbb_RGBA_4_Vector4, (_Property_47988ec10c0c18879d461e00bed806e7_Out_0_Float.xxxx), _Multiply_14cec4902d0a00829e4555071a1b8ad1_Out_2_Vector4);
|
|
float3 _Sign_3a6ebf59931cf08cb0482e0144ddac24_Out_1_Vector3;
|
|
Unity_Sign_float3(IN.WorldSpaceNormal, _Sign_3a6ebf59931cf08cb0482e0144ddac24_Out_1_Vector3);
|
|
float _Split_6299d4ddcc4c74828aea40a46fdb896e_R_1_Float = _Sign_3a6ebf59931cf08cb0482e0144ddac24_Out_1_Vector3[0];
|
|
float _Split_6299d4ddcc4c74828aea40a46fdb896e_G_2_Float = _Sign_3a6ebf59931cf08cb0482e0144ddac24_Out_1_Vector3[1];
|
|
float _Split_6299d4ddcc4c74828aea40a46fdb896e_B_3_Float = _Sign_3a6ebf59931cf08cb0482e0144ddac24_Out_1_Vector3[2];
|
|
float _Split_6299d4ddcc4c74828aea40a46fdb896e_A_4_Float = 0;
|
|
float2 _Vector2_b76cb1842101e58b9e636d49b075c612_Out_0_Vector2 = float2(_Split_6299d4ddcc4c74828aea40a46fdb896e_G_2_Float, float(1));
|
|
float2 _Multiply_a87753ad90594382bf3a3a95abbadbc8_Out_2_Vector2;
|
|
Unity_Multiply_float2_float2((_Multiply_14cec4902d0a00829e4555071a1b8ad1_Out_2_Vector4.xy), _Vector2_b76cb1842101e58b9e636d49b075c612_Out_0_Vector2, _Multiply_a87753ad90594382bf3a3a95abbadbc8_Out_2_Vector2);
|
|
UnitySamplerState _Property_8a2b8589cd3a42a1879a29c28e4f711f_Out_0_SamplerState = _SamplerState;
|
|
float4 _SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_RGBA_0_Vector4 = SAMPLE_TEXTURE2D(_Property_3e01b4d2fc68d48ba3acbba9d5881e59_Out_0_Texture2D.tex, _Property_8a2b8589cd3a42a1879a29c28e4f711f_Out_0_SamplerState.samplerstate, _Property_3e01b4d2fc68d48ba3acbba9d5881e59_Out_0_Texture2D.GetTransformedUV(_Multiply_a87753ad90594382bf3a3a95abbadbc8_Out_2_Vector2) );
|
|
_SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_RGBA_0_Vector4.rgb = UnpackNormal(_SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_RGBA_0_Vector4);
|
|
float _SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_R_4_Float = _SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_RGBA_0_Vector4.r;
|
|
float _SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_G_5_Float = _SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_RGBA_0_Vector4.g;
|
|
float _SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_B_6_Float = _SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_RGBA_0_Vector4.b;
|
|
float _SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_A_7_Float = _SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_RGBA_0_Vector4.a;
|
|
float2 _Vector2_ad6bd100e273d78fa409a30a77bfa2cc_Out_0_Vector2 = float2(_SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_R_4_Float, _SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_G_5_Float);
|
|
float2 _Multiply_31e8db88ee20c985a9850d1a58f3282b_Out_2_Vector2;
|
|
Unity_Multiply_float2_float2(_Vector2_ad6bd100e273d78fa409a30a77bfa2cc_Out_0_Vector2, _Vector2_b76cb1842101e58b9e636d49b075c612_Out_0_Vector2, _Multiply_31e8db88ee20c985a9850d1a58f3282b_Out_2_Vector2);
|
|
float _Split_5ed44bf2eca0868f81eb18100f49d1fa_R_1_Float = IN.WorldSpaceNormal[0];
|
|
float _Split_5ed44bf2eca0868f81eb18100f49d1fa_G_2_Float = IN.WorldSpaceNormal[1];
|
|
float _Split_5ed44bf2eca0868f81eb18100f49d1fa_B_3_Float = IN.WorldSpaceNormal[2];
|
|
float _Split_5ed44bf2eca0868f81eb18100f49d1fa_A_4_Float = 0;
|
|
float2 _Vector2_70e5837843f28b8b9d64cada3697bd5a_Out_0_Vector2 = float2(_Split_5ed44bf2eca0868f81eb18100f49d1fa_R_1_Float, _Split_5ed44bf2eca0868f81eb18100f49d1fa_B_3_Float);
|
|
float2 _Add_1145b2f896593d80aa864a34e6702562_Out_2_Vector2;
|
|
Unity_Add_float2(_Multiply_31e8db88ee20c985a9850d1a58f3282b_Out_2_Vector2, _Vector2_70e5837843f28b8b9d64cada3697bd5a_Out_0_Vector2, _Add_1145b2f896593d80aa864a34e6702562_Out_2_Vector2);
|
|
float _Split_2bc77ca2d17bd78cb2383770ce50b179_R_1_Float = _Add_1145b2f896593d80aa864a34e6702562_Out_2_Vector2[0];
|
|
float _Split_2bc77ca2d17bd78cb2383770ce50b179_G_2_Float = _Add_1145b2f896593d80aa864a34e6702562_Out_2_Vector2[1];
|
|
float _Split_2bc77ca2d17bd78cb2383770ce50b179_B_3_Float = 0;
|
|
float _Split_2bc77ca2d17bd78cb2383770ce50b179_A_4_Float = 0;
|
|
float _Multiply_e4fe778b81456d819c52bb414cd95968_Out_2_Float;
|
|
Unity_Multiply_float_float(_SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_B_6_Float, _Split_5ed44bf2eca0868f81eb18100f49d1fa_G_2_Float, _Multiply_e4fe778b81456d819c52bb414cd95968_Out_2_Float);
|
|
float3 _Vector3_08f62c5c01619e849f1a7d85a44531ac_Out_0_Vector3 = float3(_Split_2bc77ca2d17bd78cb2383770ce50b179_R_1_Float, _Multiply_e4fe778b81456d819c52bb414cd95968_Out_2_Float, _Split_2bc77ca2d17bd78cb2383770ce50b179_G_2_Float);
|
|
float3 _Absolute_644b798714827680b39bf5d34f70385f_Out_1_Vector3;
|
|
Unity_Absolute_float3(IN.WorldSpaceNormal, _Absolute_644b798714827680b39bf5d34f70385f_Out_1_Vector3);
|
|
float _Property_adc4c59482221c8aad681c6558728ac9_Out_0_Float = Vector1_E4D1C13A;
|
|
float3 _Power_ee478822a04529849ae8df1636c29fe2_Out_2_Vector3;
|
|
Unity_Power_float3(_Absolute_644b798714827680b39bf5d34f70385f_Out_1_Vector3, (_Property_adc4c59482221c8aad681c6558728ac9_Out_0_Float.xxx), _Power_ee478822a04529849ae8df1636c29fe2_Out_2_Vector3);
|
|
float3 _Multiply_b386a937554d73828e437d126d69608b_Out_2_Vector3;
|
|
Unity_Multiply_float3_float3(_Power_ee478822a04529849ae8df1636c29fe2_Out_2_Vector3, _Power_ee478822a04529849ae8df1636c29fe2_Out_2_Vector3, _Multiply_b386a937554d73828e437d126d69608b_Out_2_Vector3);
|
|
float _Split_ae83014fcbd9f7879a0b91fa66dc9718_R_1_Float = _Multiply_b386a937554d73828e437d126d69608b_Out_2_Vector3[0];
|
|
float _Split_ae83014fcbd9f7879a0b91fa66dc9718_G_2_Float = _Multiply_b386a937554d73828e437d126d69608b_Out_2_Vector3[1];
|
|
float _Split_ae83014fcbd9f7879a0b91fa66dc9718_B_3_Float = _Multiply_b386a937554d73828e437d126d69608b_Out_2_Vector3[2];
|
|
float _Split_ae83014fcbd9f7879a0b91fa66dc9718_A_4_Float = 0;
|
|
float3 _Multiply_2e1040ca9c98d085ace76ee93f094039_Out_2_Vector3;
|
|
Unity_Multiply_float3_float3(_Vector3_08f62c5c01619e849f1a7d85a44531ac_Out_0_Vector3, (_Split_ae83014fcbd9f7879a0b91fa66dc9718_G_2_Float.xxx), _Multiply_2e1040ca9c98d085ace76ee93f094039_Out_2_Vector3);
|
|
float4 _Combine_192c2c4a69be588b90ca005a32e22552_RGBA_4_Vector4;
|
|
float3 _Combine_192c2c4a69be588b90ca005a32e22552_RGB_5_Vector3;
|
|
float2 _Combine_192c2c4a69be588b90ca005a32e22552_RG_6_Vector2;
|
|
Unity_Combine_float(_Split_89ed63cb625cb3878c183d0b71c03400_R_1_Float, _Split_89ed63cb625cb3878c183d0b71c03400_G_2_Float, float(0), float(0), _Combine_192c2c4a69be588b90ca005a32e22552_RGBA_4_Vector4, _Combine_192c2c4a69be588b90ca005a32e22552_RGB_5_Vector3, _Combine_192c2c4a69be588b90ca005a32e22552_RG_6_Vector2);
|
|
float4 _Multiply_138240d0d4846e87b0febabec0d6891b_Out_2_Vector4;
|
|
Unity_Multiply_float4_float4(_Combine_192c2c4a69be588b90ca005a32e22552_RGBA_4_Vector4, (_Property_47988ec10c0c18879d461e00bed806e7_Out_0_Float.xxxx), _Multiply_138240d0d4846e87b0febabec0d6891b_Out_2_Vector4);
|
|
float _Multiply_de711f4a4614bd89a463b53374cf4036_Out_2_Float;
|
|
Unity_Multiply_float_float(_Split_6299d4ddcc4c74828aea40a46fdb896e_B_3_Float, -1, _Multiply_de711f4a4614bd89a463b53374cf4036_Out_2_Float);
|
|
float2 _Vector2_4ed33f0c73b2698fa6f3c1b77fe76808_Out_0_Vector2 = float2(_Multiply_de711f4a4614bd89a463b53374cf4036_Out_2_Float, float(1));
|
|
float2 _Multiply_2af6058cc6ccb88caefd2799bb5941e8_Out_2_Vector2;
|
|
Unity_Multiply_float2_float2((_Multiply_138240d0d4846e87b0febabec0d6891b_Out_2_Vector4.xy), _Vector2_4ed33f0c73b2698fa6f3c1b77fe76808_Out_0_Vector2, _Multiply_2af6058cc6ccb88caefd2799bb5941e8_Out_2_Vector2);
|
|
float4 _SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_RGBA_0_Vector4 = SAMPLE_TEXTURE2D(_Property_3e01b4d2fc68d48ba3acbba9d5881e59_Out_0_Texture2D.tex, _Property_8a2b8589cd3a42a1879a29c28e4f711f_Out_0_SamplerState.samplerstate, _Property_3e01b4d2fc68d48ba3acbba9d5881e59_Out_0_Texture2D.GetTransformedUV(_Multiply_2af6058cc6ccb88caefd2799bb5941e8_Out_2_Vector2) );
|
|
_SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_RGBA_0_Vector4.rgb = UnpackNormal(_SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_RGBA_0_Vector4);
|
|
float _SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_R_4_Float = _SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_RGBA_0_Vector4.r;
|
|
float _SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_G_5_Float = _SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_RGBA_0_Vector4.g;
|
|
float _SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_B_6_Float = _SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_RGBA_0_Vector4.b;
|
|
float _SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_A_7_Float = _SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_RGBA_0_Vector4.a;
|
|
float2 _Vector2_fe9aedd4528c7486ada4abdca0b0944e_Out_0_Vector2 = float2(_SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_R_4_Float, _SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_G_5_Float);
|
|
float2 _Multiply_02b9b4665ad9918d8721bcaddc82f06f_Out_2_Vector2;
|
|
Unity_Multiply_float2_float2(_Vector2_fe9aedd4528c7486ada4abdca0b0944e_Out_0_Vector2, _Vector2_4ed33f0c73b2698fa6f3c1b77fe76808_Out_0_Vector2, _Multiply_02b9b4665ad9918d8721bcaddc82f06f_Out_2_Vector2);
|
|
float2 _Vector2_a74a85274da15181abb63cc5e8df0de1_Out_0_Vector2 = float2(_Split_5ed44bf2eca0868f81eb18100f49d1fa_R_1_Float, _Split_5ed44bf2eca0868f81eb18100f49d1fa_G_2_Float);
|
|
float2 _Add_b227c84042055e8faa1a9fdc69529707_Out_2_Vector2;
|
|
Unity_Add_float2(_Multiply_02b9b4665ad9918d8721bcaddc82f06f_Out_2_Vector2, _Vector2_a74a85274da15181abb63cc5e8df0de1_Out_0_Vector2, _Add_b227c84042055e8faa1a9fdc69529707_Out_2_Vector2);
|
|
float _Split_2cfb9eacd8762483941459cdf28bda97_R_1_Float = _Add_b227c84042055e8faa1a9fdc69529707_Out_2_Vector2[0];
|
|
float _Split_2cfb9eacd8762483941459cdf28bda97_G_2_Float = _Add_b227c84042055e8faa1a9fdc69529707_Out_2_Vector2[1];
|
|
float _Split_2cfb9eacd8762483941459cdf28bda97_B_3_Float = 0;
|
|
float _Split_2cfb9eacd8762483941459cdf28bda97_A_4_Float = 0;
|
|
float _Multiply_1d65ce08ce672087879125f2e13c4004_Out_2_Float;
|
|
Unity_Multiply_float_float(_SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_B_6_Float, _Split_5ed44bf2eca0868f81eb18100f49d1fa_B_3_Float, _Multiply_1d65ce08ce672087879125f2e13c4004_Out_2_Float);
|
|
float3 _Vector3_ba6cfb4671e8c58f9b41ea1dc23102ca_Out_0_Vector3 = float3(_Split_2cfb9eacd8762483941459cdf28bda97_R_1_Float, _Split_2cfb9eacd8762483941459cdf28bda97_G_2_Float, _Multiply_1d65ce08ce672087879125f2e13c4004_Out_2_Float);
|
|
float3 _Multiply_7bb4009c92b108849ac6ca92bc1442f2_Out_2_Vector3;
|
|
Unity_Multiply_float3_float3(_Vector3_ba6cfb4671e8c58f9b41ea1dc23102ca_Out_0_Vector3, (_Split_ae83014fcbd9f7879a0b91fa66dc9718_B_3_Float.xxx), _Multiply_7bb4009c92b108849ac6ca92bc1442f2_Out_2_Vector3);
|
|
float4 _Combine_1e9ffdba42d6918fb7a4b185f1585d2a_RGBA_4_Vector4;
|
|
float3 _Combine_1e9ffdba42d6918fb7a4b185f1585d2a_RGB_5_Vector3;
|
|
float2 _Combine_1e9ffdba42d6918fb7a4b185f1585d2a_RG_6_Vector2;
|
|
Unity_Combine_float(_Split_89ed63cb625cb3878c183d0b71c03400_B_3_Float, _Split_89ed63cb625cb3878c183d0b71c03400_G_2_Float, float(0), float(0), _Combine_1e9ffdba42d6918fb7a4b185f1585d2a_RGBA_4_Vector4, _Combine_1e9ffdba42d6918fb7a4b185f1585d2a_RGB_5_Vector3, _Combine_1e9ffdba42d6918fb7a4b185f1585d2a_RG_6_Vector2);
|
|
float4 _Multiply_2c0864423b014f8b8af8523f68cbb63c_Out_2_Vector4;
|
|
Unity_Multiply_float4_float4(_Combine_1e9ffdba42d6918fb7a4b185f1585d2a_RGBA_4_Vector4, (_Property_47988ec10c0c18879d461e00bed806e7_Out_0_Float.xxxx), _Multiply_2c0864423b014f8b8af8523f68cbb63c_Out_2_Vector4);
|
|
float2 _Vector2_a1e23e0f921b6484818f009a2b12a5ba_Out_0_Vector2 = float2(_Split_6299d4ddcc4c74828aea40a46fdb896e_R_1_Float, float(1));
|
|
float2 _Multiply_862402885a49f18cb87278ab53bc6744_Out_2_Vector2;
|
|
Unity_Multiply_float2_float2((_Multiply_2c0864423b014f8b8af8523f68cbb63c_Out_2_Vector4.xy), _Vector2_a1e23e0f921b6484818f009a2b12a5ba_Out_0_Vector2, _Multiply_862402885a49f18cb87278ab53bc6744_Out_2_Vector2);
|
|
float4 _SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_RGBA_0_Vector4 = SAMPLE_TEXTURE2D(_Property_3e01b4d2fc68d48ba3acbba9d5881e59_Out_0_Texture2D.tex, _Property_8a2b8589cd3a42a1879a29c28e4f711f_Out_0_SamplerState.samplerstate, _Property_3e01b4d2fc68d48ba3acbba9d5881e59_Out_0_Texture2D.GetTransformedUV(_Multiply_862402885a49f18cb87278ab53bc6744_Out_2_Vector2) );
|
|
_SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_RGBA_0_Vector4.rgb = UnpackNormal(_SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_RGBA_0_Vector4);
|
|
float _SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_R_4_Float = _SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_RGBA_0_Vector4.r;
|
|
float _SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_G_5_Float = _SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_RGBA_0_Vector4.g;
|
|
float _SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_B_6_Float = _SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_RGBA_0_Vector4.b;
|
|
float _SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_A_7_Float = _SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_RGBA_0_Vector4.a;
|
|
float _Multiply_4649b768be76d784a3284bacde795359_Out_2_Float;
|
|
Unity_Multiply_float_float(_SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_B_6_Float, _Split_5ed44bf2eca0868f81eb18100f49d1fa_R_1_Float, _Multiply_4649b768be76d784a3284bacde795359_Out_2_Float);
|
|
float2 _Vector2_819fcd5eb484438eacad1987576d7d67_Out_0_Vector2 = float2(_SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_R_4_Float, _SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_G_5_Float);
|
|
float2 _Multiply_58530ebb3c6d798b93686a76247bf505_Out_2_Vector2;
|
|
Unity_Multiply_float2_float2(_Vector2_819fcd5eb484438eacad1987576d7d67_Out_0_Vector2, _Vector2_a1e23e0f921b6484818f009a2b12a5ba_Out_0_Vector2, _Multiply_58530ebb3c6d798b93686a76247bf505_Out_2_Vector2);
|
|
float2 _Vector2_e293c112b2f49e88a5fe46dfb1fbeb40_Out_0_Vector2 = float2(_Split_5ed44bf2eca0868f81eb18100f49d1fa_B_3_Float, _Split_5ed44bf2eca0868f81eb18100f49d1fa_G_2_Float);
|
|
float2 _Add_cf00fb232c6e2b8e973ab2f84453f55e_Out_2_Vector2;
|
|
Unity_Add_float2(_Multiply_58530ebb3c6d798b93686a76247bf505_Out_2_Vector2, _Vector2_e293c112b2f49e88a5fe46dfb1fbeb40_Out_0_Vector2, _Add_cf00fb232c6e2b8e973ab2f84453f55e_Out_2_Vector2);
|
|
float _Split_3ea3e61d32bdd78f82c686b75ff3fd9b_R_1_Float = _Add_cf00fb232c6e2b8e973ab2f84453f55e_Out_2_Vector2[0];
|
|
float _Split_3ea3e61d32bdd78f82c686b75ff3fd9b_G_2_Float = _Add_cf00fb232c6e2b8e973ab2f84453f55e_Out_2_Vector2[1];
|
|
float _Split_3ea3e61d32bdd78f82c686b75ff3fd9b_B_3_Float = 0;
|
|
float _Split_3ea3e61d32bdd78f82c686b75ff3fd9b_A_4_Float = 0;
|
|
float3 _Vector3_13a08d5940172a84a78ee3d9b8766833_Out_0_Vector3 = float3(_Multiply_4649b768be76d784a3284bacde795359_Out_2_Float, _Split_3ea3e61d32bdd78f82c686b75ff3fd9b_G_2_Float, _Split_3ea3e61d32bdd78f82c686b75ff3fd9b_R_1_Float);
|
|
float3 _Multiply_77818c22e359fc8cbb7dd20216a8db72_Out_2_Vector3;
|
|
Unity_Multiply_float3_float3(_Vector3_13a08d5940172a84a78ee3d9b8766833_Out_0_Vector3, (_Split_ae83014fcbd9f7879a0b91fa66dc9718_R_1_Float.xxx), _Multiply_77818c22e359fc8cbb7dd20216a8db72_Out_2_Vector3);
|
|
float3 _Add_769d9ee909c9238dbbf72d2800a2f268_Out_2_Vector3;
|
|
Unity_Add_float3(_Multiply_7bb4009c92b108849ac6ca92bc1442f2_Out_2_Vector3, _Multiply_77818c22e359fc8cbb7dd20216a8db72_Out_2_Vector3, _Add_769d9ee909c9238dbbf72d2800a2f268_Out_2_Vector3);
|
|
float3 _Add_14295f72880e4b87a1baf1ced943ac40_Out_2_Vector3;
|
|
Unity_Add_float3(_Multiply_2e1040ca9c98d085ace76ee93f094039_Out_2_Vector3, _Add_769d9ee909c9238dbbf72d2800a2f268_Out_2_Vector3, _Add_14295f72880e4b87a1baf1ced943ac40_Out_2_Vector3);
|
|
float _Add_e59af300bba2498db32eac1412123447_Out_2_Float;
|
|
Unity_Add_float(_Split_ae83014fcbd9f7879a0b91fa66dc9718_R_1_Float, _Split_ae83014fcbd9f7879a0b91fa66dc9718_G_2_Float, _Add_e59af300bba2498db32eac1412123447_Out_2_Float);
|
|
float _Add_e855069f047fae8ea9027d56acb61e56_Out_2_Float;
|
|
Unity_Add_float(_Add_e59af300bba2498db32eac1412123447_Out_2_Float, _Split_ae83014fcbd9f7879a0b91fa66dc9718_B_3_Float, _Add_e855069f047fae8ea9027d56acb61e56_Out_2_Float);
|
|
float3 _Divide_91ae4b94f1d9b78e99d0472293b8098c_Out_2_Vector3;
|
|
Unity_Divide_float3(_Add_14295f72880e4b87a1baf1ced943ac40_Out_2_Vector3, (_Add_e855069f047fae8ea9027d56acb61e56_Out_2_Float.xxx), _Divide_91ae4b94f1d9b78e99d0472293b8098c_Out_2_Vector3);
|
|
float3 _Transform_73eecc0c3689d184a34c8d0f28a58adf_Out_1_Vector3;
|
|
{
|
|
float3x3 tangentTransform = float3x3(IN.WorldSpaceTangent, IN.WorldSpaceBiTangent, IN.WorldSpaceNormal);
|
|
_Transform_73eecc0c3689d184a34c8d0f28a58adf_Out_1_Vector3 = TransformWorldToTangent(_Divide_91ae4b94f1d9b78e99d0472293b8098c_Out_2_Vector3.xyz, tangentTransform, true);
|
|
}
|
|
float3 _Normalize_15ef346824db0a8797631ed8b998e673_Out_1_Vector3;
|
|
Unity_Normalize_float3(_Transform_73eecc0c3689d184a34c8d0f28a58adf_Out_1_Vector3, _Normalize_15ef346824db0a8797631ed8b998e673_Out_1_Vector3);
|
|
XYZ_1 = (float4(_Normalize_15ef346824db0a8797631ed8b998e673_Out_1_Vector3, 1.0));
|
|
XZ_2 = (float4(_Vector3_08f62c5c01619e849f1a7d85a44531ac_Out_0_Vector3, 1.0));
|
|
YZ_3 = (float4(_Vector3_ba6cfb4671e8c58f9b41ea1dc23102ca_Out_0_Vector3, 1.0));
|
|
XY_4 = (float4(_Vector3_13a08d5940172a84a78ee3d9b8766833_Out_0_Vector3, 1.0));
|
|
}
|
|
|
|
void Unity_NormalStrength_float(float3 In, float Strength, out float3 Out)
|
|
{
|
|
Out = float3(In.rg * Strength, lerp(1, In.b, saturate(Strength)));
|
|
}
|
|
|
|
void Unity_NormalBlend_float(float3 A, float3 B, out float3 Out)
|
|
{
|
|
Out = SafeNormalize(float3(A.rg + B.rg, A.b * B.b));
|
|
}
|
|
|
|
void Unity_Subtract_float(float A, float B, out float Out)
|
|
{
|
|
Out = A - B;
|
|
}
|
|
|
|
void Unity_Divide_float(float A, float B, out float Out)
|
|
{
|
|
Out = A / B;
|
|
}
|
|
|
|
void Unity_Lerp_float3(float3 A, float3 B, float3 T, out float3 Out)
|
|
{
|
|
Out = lerp(A, B, T);
|
|
}
|
|
|
|
void Unity_Remap_float(float In, float2 InMinMax, float2 OutMinMax, out float Out)
|
|
{
|
|
Out = OutMinMax.x + (In - InMinMax.x) * (OutMinMax.y - OutMinMax.x) / (InMinMax.y - InMinMax.x);
|
|
}
|
|
|
|
void Unity_Branch_float(float Predicate, float True, float False, out float Out)
|
|
{
|
|
Out = Predicate ? True : False;
|
|
}
|
|
|
|
void Unity_Lerp_float(float A, float B, float T, out float Out)
|
|
{
|
|
Out = lerp(A, B, T);
|
|
}
|
|
|
|
struct Bindings_BlendOverlayDetailSmoothness_06e12138dc89c0040b45a57abe520a1a_float
|
|
{
|
|
};
|
|
|
|
void SG_BlendOverlayDetailSmoothness_06e12138dc89c0040b45a57abe520a1a_float(float Vector1_32317166, float Vector1_FBE622A2, float Vector1_8C15C351, Bindings_BlendOverlayDetailSmoothness_06e12138dc89c0040b45a57abe520a1a_float IN, out float SmoothnessOverlay_1)
|
|
{
|
|
float _Property_728cc50521e9e988ac9cbff4872d5139_Out_0_Float = Vector1_32317166;
|
|
float _Property_a00e29241d12f983b30177515b367ec9_Out_0_Float = Vector1_FBE622A2;
|
|
float _Sign_343a45ede7349283a681c6bd9998fd8e_Out_1_Float;
|
|
Unity_Sign_float(_Property_a00e29241d12f983b30177515b367ec9_Out_0_Float, _Sign_343a45ede7349283a681c6bd9998fd8e_Out_1_Float);
|
|
float _Add_681019b8f5d3d68bb482d419c9fc61a9_Out_2_Float;
|
|
Unity_Add_float(_Sign_343a45ede7349283a681c6bd9998fd8e_Out_1_Float, float(1), _Add_681019b8f5d3d68bb482d419c9fc61a9_Out_2_Float);
|
|
float _Multiply_e8f4cb722712a880ac0db6c7461427f7_Out_2_Float;
|
|
Unity_Multiply_float_float(_Add_681019b8f5d3d68bb482d419c9fc61a9_Out_2_Float, 0.5, _Multiply_e8f4cb722712a880ac0db6c7461427f7_Out_2_Float);
|
|
float _Ceiling_95ad15988aa9b98184875fa754feae01_Out_1_Float;
|
|
Unity_Ceiling_float(_Multiply_e8f4cb722712a880ac0db6c7461427f7_Out_2_Float, _Ceiling_95ad15988aa9b98184875fa754feae01_Out_1_Float);
|
|
float _Property_2db1c747a05ee284a8b00076062f91a4_Out_0_Float = Vector1_8C15C351;
|
|
float _Lerp_b3cdb01fc3c5b988ac9b184943bf7c01_Out_3_Float;
|
|
Unity_Lerp_float(_Property_728cc50521e9e988ac9cbff4872d5139_Out_0_Float, _Ceiling_95ad15988aa9b98184875fa754feae01_Out_1_Float, _Property_2db1c747a05ee284a8b00076062f91a4_Out_0_Float, _Lerp_b3cdb01fc3c5b988ac9b184943bf7c01_Out_3_Float);
|
|
SmoothnessOverlay_1 = _Lerp_b3cdb01fc3c5b988ac9b184943bf7c01_Out_3_Float;
|
|
}
|
|
|
|
void Unity_Minimum_float(float A, float B, out float Out)
|
|
{
|
|
Out = min(A, B);
|
|
};
|
|
|
|
// Graph Vertex
|
|
// GraphVertex: <None>
|
|
|
|
// Graph Pixel
|
|
struct SurfaceDescription
|
|
{
|
|
float3 BaseColor;
|
|
float3 Emission;
|
|
float Alpha;
|
|
float3 BentNormal;
|
|
float Smoothness;
|
|
float Occlusion;
|
|
float3 NormalTS;
|
|
float Metallic;
|
|
};
|
|
|
|
SurfaceDescription SurfaceDescriptionFunction(SurfaceDescriptionInputs IN)
|
|
{
|
|
SurfaceDescription surface = (SurfaceDescription)0;
|
|
float _Property_72a5c604805a7b8ebbfd7acee03656aa_Out_0_Boolean = _CoverMaskRCurvature;
|
|
UnityTexture2D _Property_5f029bbc9f13b7858650859c3b63ebfd_Out_0_Texture2D = UnityBuildTexture2DStructNoScale(_BaseColorMap);
|
|
float4 _Property_a409d5fcafb9f182a4b2aea64204408f_Out_0_Vector4 = _BaseTilingOffset;
|
|
float4 _Divide_6a90cebe78e620828de587523daaa7e6_Out_2_Vector4;
|
|
Unity_Divide_float4(float4(1, 1, 0, 0), _Property_a409d5fcafb9f182a4b2aea64204408f_Out_0_Vector4, _Divide_6a90cebe78e620828de587523daaa7e6_Out_2_Vector4);
|
|
float _Property_3539de8c698c2981bb3c088d4ec52201_Out_0_Float = _BaseTriplanarThreshold;
|
|
Bindings_TriplanarNM_bc609ed95f52591469ab35dbfe0efcea_float _TriplanarNM_92d0433ff3938b8392407d2ab8713ac8;
|
|
_TriplanarNM_92d0433ff3938b8392407d2ab8713ac8.WorldSpaceNormal = IN.WorldSpaceNormal;
|
|
_TriplanarNM_92d0433ff3938b8392407d2ab8713ac8.AbsoluteWorldSpacePosition = IN.AbsoluteWorldSpacePosition;
|
|
float4 _TriplanarNM_92d0433ff3938b8392407d2ab8713ac8_XYZ_1_Vector4;
|
|
float4 _TriplanarNM_92d0433ff3938b8392407d2ab8713ac8_XZ_2_Vector4;
|
|
float4 _TriplanarNM_92d0433ff3938b8392407d2ab8713ac8_YZ_3_Vector4;
|
|
float4 _TriplanarNM_92d0433ff3938b8392407d2ab8713ac8_XY_4_Vector4;
|
|
SG_TriplanarNM_bc609ed95f52591469ab35dbfe0efcea_float(_Property_5f029bbc9f13b7858650859c3b63ebfd_Out_0_Texture2D, (_Divide_6a90cebe78e620828de587523daaa7e6_Out_2_Vector4).x, _Property_3539de8c698c2981bb3c088d4ec52201_Out_0_Float, UnityBuildSamplerStateStruct(SamplerState_Linear_Repeat_Aniso8), _TriplanarNM_92d0433ff3938b8392407d2ab8713ac8, _TriplanarNM_92d0433ff3938b8392407d2ab8713ac8_XYZ_1_Vector4, _TriplanarNM_92d0433ff3938b8392407d2ab8713ac8_XZ_2_Vector4, _TriplanarNM_92d0433ff3938b8392407d2ab8713ac8_YZ_3_Vector4, _TriplanarNM_92d0433ff3938b8392407d2ab8713ac8_XY_4_Vector4);
|
|
float4 _Property_87cd542c2b8c30868ed1d7d38aed8f2b_Out_0_Vector4 = _BaseColor;
|
|
float4 _Multiply_4b2be0b3fe39f385b887e7c82ab41e0b_Out_2_Vector4;
|
|
Unity_Multiply_float4_float4(_TriplanarNM_92d0433ff3938b8392407d2ab8713ac8_XYZ_1_Vector4, _Property_87cd542c2b8c30868ed1d7d38aed8f2b_Out_0_Vector4, _Multiply_4b2be0b3fe39f385b887e7c82ab41e0b_Out_2_Vector4);
|
|
UnityTexture2D _Property_c167aafac28bd98c8411d3e25631fdeb_Out_0_Texture2D = UnityBuildTexture2DStructNoScale(_CoverMaskA);
|
|
float4 _UV_e143f0ebbac8bb8cab3206ab93422dda_Out_0_Vector4 = IN.uv0;
|
|
float4 _SampleTexture2D_32717b1e99785588830ceee116cbe7fc_RGBA_0_Vector4 = SAMPLE_TEXTURE2D(_Property_c167aafac28bd98c8411d3e25631fdeb_Out_0_Texture2D.tex, _Property_c167aafac28bd98c8411d3e25631fdeb_Out_0_Texture2D.samplerstate, _Property_c167aafac28bd98c8411d3e25631fdeb_Out_0_Texture2D.GetTransformedUV((_UV_e143f0ebbac8bb8cab3206ab93422dda_Out_0_Vector4.xy)) );
|
|
float _SampleTexture2D_32717b1e99785588830ceee116cbe7fc_R_4_Float = _SampleTexture2D_32717b1e99785588830ceee116cbe7fc_RGBA_0_Vector4.r;
|
|
float _SampleTexture2D_32717b1e99785588830ceee116cbe7fc_G_5_Float = _SampleTexture2D_32717b1e99785588830ceee116cbe7fc_RGBA_0_Vector4.g;
|
|
float _SampleTexture2D_32717b1e99785588830ceee116cbe7fc_B_6_Float = _SampleTexture2D_32717b1e99785588830ceee116cbe7fc_RGBA_0_Vector4.b;
|
|
float _SampleTexture2D_32717b1e99785588830ceee116cbe7fc_A_7_Float = _SampleTexture2D_32717b1e99785588830ceee116cbe7fc_RGBA_0_Vector4.a;
|
|
float _Multiply_01f97603c3df268380d339564b08db11_Out_2_Float;
|
|
Unity_Multiply_float_float(_SampleTexture2D_32717b1e99785588830ceee116cbe7fc_R_4_Float, 2, _Multiply_01f97603c3df268380d339564b08db11_Out_2_Float);
|
|
float _Property_cad777e9a810198e8076eb2cd76e6817_Out_0_Float = _BaseDarknessCurvMultply;
|
|
float _Multiply_b67c8963c3ba188e85b84ae9bf0dcbf7_Out_2_Float;
|
|
Unity_Multiply_float_float(_Multiply_01f97603c3df268380d339564b08db11_Out_2_Float, _Property_cad777e9a810198e8076eb2cd76e6817_Out_0_Float, _Multiply_b67c8963c3ba188e85b84ae9bf0dcbf7_Out_2_Float);
|
|
float _Clamp_646f55d74b38f18aa983e5d031e0e7c3_Out_3_Float;
|
|
Unity_Clamp_float(_Multiply_b67c8963c3ba188e85b84ae9bf0dcbf7_Out_2_Float, float(0), float(1), _Clamp_646f55d74b38f18aa983e5d031e0e7c3_Out_3_Float);
|
|
float _Absolute_c99e11216fab2488946eb6243d985fdc_Out_1_Float;
|
|
Unity_Absolute_float(_Clamp_646f55d74b38f18aa983e5d031e0e7c3_Out_3_Float, _Absolute_c99e11216fab2488946eb6243d985fdc_Out_1_Float);
|
|
float _Property_f8a9827e6f28d9819188d4775dcf7620_Out_0_Float = _BaseDarknessCurvPower;
|
|
float _Power_1b88303e1ca2f285b344bf6aa0cf05e4_Out_2_Float;
|
|
Unity_Power_float(_Absolute_c99e11216fab2488946eb6243d985fdc_Out_1_Float, _Property_f8a9827e6f28d9819188d4775dcf7620_Out_0_Float, _Power_1b88303e1ca2f285b344bf6aa0cf05e4_Out_2_Float);
|
|
float _Clamp_27887d983dbb5a8bbd2966fbcbd7c126_Out_3_Float;
|
|
Unity_Clamp_float(_Power_1b88303e1ca2f285b344bf6aa0cf05e4_Out_2_Float, float(0), float(1), _Clamp_27887d983dbb5a8bbd2966fbcbd7c126_Out_3_Float);
|
|
float4 _Multiply_59efbfb897b39480ad44be129db72018_Out_2_Vector4;
|
|
Unity_Multiply_float4_float4(_Multiply_4b2be0b3fe39f385b887e7c82ab41e0b_Out_2_Vector4, (_Clamp_27887d983dbb5a8bbd2966fbcbd7c126_Out_3_Float.xxxx), _Multiply_59efbfb897b39480ad44be129db72018_Out_2_Vector4);
|
|
float4 _Clamp_841e38951a68f286955c4755e78c610b_Out_3_Vector4;
|
|
Unity_Clamp_float4(_Multiply_59efbfb897b39480ad44be129db72018_Out_2_Vector4, float4(0, 0, 0, 0), float4(1, 1, 1, 1), _Clamp_841e38951a68f286955c4755e78c610b_Out_3_Vector4);
|
|
float _Add_d7ea4a88c4af4886b1e567ddd2b963f9_Out_2_Float;
|
|
Unity_Add_float(_Multiply_01f97603c3df268380d339564b08db11_Out_2_Float, float(-1), _Add_d7ea4a88c4af4886b1e567ddd2b963f9_Out_2_Float);
|
|
float _Clamp_1a02c4bf5903c988b1489d14c840c1e3_Out_3_Float;
|
|
Unity_Clamp_float(_Add_d7ea4a88c4af4886b1e567ddd2b963f9_Out_2_Float, float(0), float(1), _Clamp_1a02c4bf5903c988b1489d14c840c1e3_Out_3_Float);
|
|
float _Property_0e0e1ec2131cec87836dce596351dc1c_Out_0_Float = _BaseBrightnessCurvMultply;
|
|
float _Multiply_c975dfa7de001c89addd082d443e2d07_Out_2_Float;
|
|
Unity_Multiply_float_float(_Clamp_1a02c4bf5903c988b1489d14c840c1e3_Out_3_Float, _Property_0e0e1ec2131cec87836dce596351dc1c_Out_0_Float, _Multiply_c975dfa7de001c89addd082d443e2d07_Out_2_Float);
|
|
float _Clamp_d5711b145a87ef8e8a93ceb9b6197759_Out_3_Float;
|
|
Unity_Clamp_float(_Multiply_c975dfa7de001c89addd082d443e2d07_Out_2_Float, float(0), float(1), _Clamp_d5711b145a87ef8e8a93ceb9b6197759_Out_3_Float);
|
|
float _Absolute_8f9bd7ee7a35c18084d08ad7ef463f52_Out_1_Float;
|
|
Unity_Absolute_float(_Clamp_d5711b145a87ef8e8a93ceb9b6197759_Out_3_Float, _Absolute_8f9bd7ee7a35c18084d08ad7ef463f52_Out_1_Float);
|
|
float _Property_9092f5beea2bec83a5c8a3f6623953a6_Out_0_Float = _BaseBrightnessCurvPower;
|
|
float _Power_5c1a81a2cfcc578996666adb93479f83_Out_2_Float;
|
|
Unity_Power_float(_Absolute_8f9bd7ee7a35c18084d08ad7ef463f52_Out_1_Float, _Property_9092f5beea2bec83a5c8a3f6623953a6_Out_0_Float, _Power_5c1a81a2cfcc578996666adb93479f83_Out_2_Float);
|
|
float _Clamp_f3c614a7ae35508288c0bc3f6194ca34_Out_3_Float;
|
|
Unity_Clamp_float(_Power_5c1a81a2cfcc578996666adb93479f83_Out_2_Float, float(0), float(1), _Clamp_f3c614a7ae35508288c0bc3f6194ca34_Out_3_Float);
|
|
float4 _Add_8313e15cade91a8ba653986d6722818a_Out_2_Vector4;
|
|
Unity_Add_float4(_Clamp_841e38951a68f286955c4755e78c610b_Out_3_Vector4, (_Clamp_f3c614a7ae35508288c0bc3f6194ca34_Out_3_Float.xxxx), _Add_8313e15cade91a8ba653986d6722818a_Out_2_Vector4);
|
|
float4 _Clamp_6dc8fea4fa463b8ea840911fd315c80f_Out_3_Vector4;
|
|
Unity_Clamp_float4(_Add_8313e15cade91a8ba653986d6722818a_Out_2_Vector4, float4(0, 0, 0, 0), float4(1, 1, 1, 1), _Clamp_6dc8fea4fa463b8ea840911fd315c80f_Out_3_Vector4);
|
|
float4 _Branch_26165227c7a50284b87d2996dee9982c_Out_3_Vector4;
|
|
Unity_Branch_float4(_Property_72a5c604805a7b8ebbfd7acee03656aa_Out_0_Boolean, _Clamp_6dc8fea4fa463b8ea840911fd315c80f_Out_3_Vector4, _Multiply_4b2be0b3fe39f385b887e7c82ab41e0b_Out_2_Vector4, _Branch_26165227c7a50284b87d2996dee9982c_Out_3_Vector4);
|
|
UnityTexture2D _Property_2e62abc1fe8adb8b8ff655b8448be202_Out_0_Texture2D = UnityBuildTexture2DStructNoScale(_DetailMap);
|
|
float4 _Property_b86e0ee324ffb58a92473eab69864d04_Out_0_Vector4 = _DetailTilingOffset;
|
|
float _Split_e832641c05503286a4951c0a93621755_R_1_Float = _Property_b86e0ee324ffb58a92473eab69864d04_Out_0_Vector4[0];
|
|
float _Split_e832641c05503286a4951c0a93621755_G_2_Float = _Property_b86e0ee324ffb58a92473eab69864d04_Out_0_Vector4[1];
|
|
float _Split_e832641c05503286a4951c0a93621755_B_3_Float = _Property_b86e0ee324ffb58a92473eab69864d04_Out_0_Vector4[2];
|
|
float _Split_e832641c05503286a4951c0a93621755_A_4_Float = _Property_b86e0ee324ffb58a92473eab69864d04_Out_0_Vector4[3];
|
|
float2 _Vector2_4b5eef288b3d4c83b24e4ab653f55ec8_Out_0_Vector2 = float2(_Split_e832641c05503286a4951c0a93621755_R_1_Float, _Split_e832641c05503286a4951c0a93621755_G_2_Float);
|
|
float2 _Vector2_2925cf98ba16b08dabc58cd65efd17db_Out_0_Vector2 = float2(_Split_e832641c05503286a4951c0a93621755_B_3_Float, _Split_e832641c05503286a4951c0a93621755_A_4_Float);
|
|
float2 _TilingAndOffset_74f6566eba9ccd899de18c0b11b7a7a2_Out_3_Vector2;
|
|
Unity_TilingAndOffset_float(IN.uv0.xy, _Vector2_4b5eef288b3d4c83b24e4ab653f55ec8_Out_0_Vector2, _Vector2_2925cf98ba16b08dabc58cd65efd17db_Out_0_Vector2, _TilingAndOffset_74f6566eba9ccd899de18c0b11b7a7a2_Out_3_Vector2);
|
|
float4 _SampleTexture2D_4bd08411faa60c828847f2247f06a809_RGBA_0_Vector4 = SAMPLE_TEXTURE2D(_Property_2e62abc1fe8adb8b8ff655b8448be202_Out_0_Texture2D.tex, _Property_2e62abc1fe8adb8b8ff655b8448be202_Out_0_Texture2D.samplerstate, _Property_2e62abc1fe8adb8b8ff655b8448be202_Out_0_Texture2D.GetTransformedUV(_TilingAndOffset_74f6566eba9ccd899de18c0b11b7a7a2_Out_3_Vector2) );
|
|
float _SampleTexture2D_4bd08411faa60c828847f2247f06a809_R_4_Float = _SampleTexture2D_4bd08411faa60c828847f2247f06a809_RGBA_0_Vector4.r;
|
|
float _SampleTexture2D_4bd08411faa60c828847f2247f06a809_G_5_Float = _SampleTexture2D_4bd08411faa60c828847f2247f06a809_RGBA_0_Vector4.g;
|
|
float _SampleTexture2D_4bd08411faa60c828847f2247f06a809_B_6_Float = _SampleTexture2D_4bd08411faa60c828847f2247f06a809_RGBA_0_Vector4.b;
|
|
float _SampleTexture2D_4bd08411faa60c828847f2247f06a809_A_7_Float = _SampleTexture2D_4bd08411faa60c828847f2247f06a809_RGBA_0_Vector4.a;
|
|
float _Multiply_ee5a3ccdebd1af84920cd1455a59468b_Out_2_Float;
|
|
Unity_Multiply_float_float(_SampleTexture2D_4bd08411faa60c828847f2247f06a809_R_4_Float, 2, _Multiply_ee5a3ccdebd1af84920cd1455a59468b_Out_2_Float);
|
|
float _Add_b8d727bda34294808f98551e67aa852f_Out_2_Float;
|
|
Unity_Add_float(_Multiply_ee5a3ccdebd1af84920cd1455a59468b_Out_2_Float, float(-1), _Add_b8d727bda34294808f98551e67aa852f_Out_2_Float);
|
|
float _Property_4634e589b03f6983b90fa6aaee0ed5f6_Out_0_Float = _DetailAlbedoScale;
|
|
float _Multiply_f0ed5a95f800c68aa9f7ea2f1322cc31_Out_2_Float;
|
|
Unity_Multiply_float_float(_Add_b8d727bda34294808f98551e67aa852f_Out_2_Float, _Property_4634e589b03f6983b90fa6aaee0ed5f6_Out_0_Float, _Multiply_f0ed5a95f800c68aa9f7ea2f1322cc31_Out_2_Float);
|
|
float _Saturate_469298b4e783d887889b71dc48b4399f_Out_1_Float;
|
|
Unity_Saturate_float(_Multiply_f0ed5a95f800c68aa9f7ea2f1322cc31_Out_2_Float, _Saturate_469298b4e783d887889b71dc48b4399f_Out_1_Float);
|
|
float _Absolute_3b29f3ceceba148189d11e0195af4be2_Out_1_Float;
|
|
Unity_Absolute_float(_Saturate_469298b4e783d887889b71dc48b4399f_Out_1_Float, _Absolute_3b29f3ceceba148189d11e0195af4be2_Out_1_Float);
|
|
Bindings_BlendOverlayBaseColor_acdb3dfca72bd6b42bbc35f4613331a2_float _BlendOverlayBaseColor_369c0b6a02e62b809dc5c6ac1efddde2;
|
|
float3 _BlendOverlayBaseColor_369c0b6a02e62b809dc5c6ac1efddde2_OutVector4_1_Vector3;
|
|
SG_BlendOverlayBaseColor_acdb3dfca72bd6b42bbc35f4613331a2_float(_Branch_26165227c7a50284b87d2996dee9982c_Out_3_Vector4, _Add_b8d727bda34294808f98551e67aa852f_Out_2_Float, _Absolute_3b29f3ceceba148189d11e0195af4be2_Out_1_Float, _BlendOverlayBaseColor_369c0b6a02e62b809dc5c6ac1efddde2, _BlendOverlayBaseColor_369c0b6a02e62b809dc5c6ac1efddde2_OutVector4_1_Vector3);
|
|
UnityTexture2D _Property_9a8451520f254f84a21875f3dac8cbe3_Out_0_Texture2D = UnityBuildTexture2DStructNoScale(_CoverBaseColorMap);
|
|
float4 _Property_c853e88632d9fd85ac0e98d12083eb62_Out_0_Vector4 = _CoverTilingOffset;
|
|
float4 _Divide_1fe314f1ca9dd78fbf366bbeb40e4ccf_Out_2_Vector4;
|
|
Unity_Divide_float4(float4(1, 1, 0, 0), _Property_c853e88632d9fd85ac0e98d12083eb62_Out_0_Vector4, _Divide_1fe314f1ca9dd78fbf366bbeb40e4ccf_Out_2_Vector4);
|
|
float _Property_ee792eccbb538a878b19be5db264531e_Out_0_Float = _CoverTriplanarThreshold;
|
|
Bindings_TriplanarNM_bc609ed95f52591469ab35dbfe0efcea_float _TriplanarNM_cca4c45d91c87989990c532a04e9e8e1;
|
|
_TriplanarNM_cca4c45d91c87989990c532a04e9e8e1.WorldSpaceNormal = IN.WorldSpaceNormal;
|
|
_TriplanarNM_cca4c45d91c87989990c532a04e9e8e1.AbsoluteWorldSpacePosition = IN.AbsoluteWorldSpacePosition;
|
|
float4 _TriplanarNM_cca4c45d91c87989990c532a04e9e8e1_XYZ_1_Vector4;
|
|
float4 _TriplanarNM_cca4c45d91c87989990c532a04e9e8e1_XZ_2_Vector4;
|
|
float4 _TriplanarNM_cca4c45d91c87989990c532a04e9e8e1_YZ_3_Vector4;
|
|
float4 _TriplanarNM_cca4c45d91c87989990c532a04e9e8e1_XY_4_Vector4;
|
|
SG_TriplanarNM_bc609ed95f52591469ab35dbfe0efcea_float(_Property_9a8451520f254f84a21875f3dac8cbe3_Out_0_Texture2D, (_Divide_1fe314f1ca9dd78fbf366bbeb40e4ccf_Out_2_Vector4).x, _Property_ee792eccbb538a878b19be5db264531e_Out_0_Float, UnityBuildSamplerStateStruct(SamplerState_Linear_Repeat_Aniso8), _TriplanarNM_cca4c45d91c87989990c532a04e9e8e1, _TriplanarNM_cca4c45d91c87989990c532a04e9e8e1_XYZ_1_Vector4, _TriplanarNM_cca4c45d91c87989990c532a04e9e8e1_XZ_2_Vector4, _TriplanarNM_cca4c45d91c87989990c532a04e9e8e1_YZ_3_Vector4, _TriplanarNM_cca4c45d91c87989990c532a04e9e8e1_XY_4_Vector4);
|
|
float4 _Property_18c743619f52288dbe24e28326388b00_Out_0_Vector4 = _CoverBaseColor;
|
|
float4 _Multiply_62594f3b30470e86a813e1224c48902e_Out_2_Vector4;
|
|
Unity_Multiply_float4_float4(_TriplanarNM_cca4c45d91c87989990c532a04e9e8e1_XYZ_1_Vector4, _Property_18c743619f52288dbe24e28326388b00_Out_0_Vector4, _Multiply_62594f3b30470e86a813e1224c48902e_Out_2_Vector4);
|
|
float _Multiply_5378fc524597f98fb32eeb561a7390e9_Out_2_Float;
|
|
Unity_Multiply_float_float(_SampleTexture2D_32717b1e99785588830ceee116cbe7fc_R_4_Float, 2, _Multiply_5378fc524597f98fb32eeb561a7390e9_Out_2_Float);
|
|
float _Property_8a72d97c1c527c8f8e0cc71214498065_Out_0_Float = _CoverDarknessCurvMultply;
|
|
float _Multiply_22683a720176a788a2ce404dbddd837c_Out_2_Float;
|
|
Unity_Multiply_float_float(_Multiply_5378fc524597f98fb32eeb561a7390e9_Out_2_Float, _Property_8a72d97c1c527c8f8e0cc71214498065_Out_0_Float, _Multiply_22683a720176a788a2ce404dbddd837c_Out_2_Float);
|
|
float _Clamp_5a638fb628222d8a97865d9029554fe2_Out_3_Float;
|
|
Unity_Clamp_float(_Multiply_22683a720176a788a2ce404dbddd837c_Out_2_Float, float(0), float(1), _Clamp_5a638fb628222d8a97865d9029554fe2_Out_3_Float);
|
|
float _Absolute_11985e8863bf2b8ca0bda90bca829348_Out_1_Float;
|
|
Unity_Absolute_float(_Clamp_5a638fb628222d8a97865d9029554fe2_Out_3_Float, _Absolute_11985e8863bf2b8ca0bda90bca829348_Out_1_Float);
|
|
float _Property_aba5acef910eee88b110d565674a9e36_Out_0_Float = _CoverDarknessCurvPower;
|
|
float _Power_da9b537d80a58d85a88e72c2a5d01e7c_Out_2_Float;
|
|
Unity_Power_float(_Absolute_11985e8863bf2b8ca0bda90bca829348_Out_1_Float, _Property_aba5acef910eee88b110d565674a9e36_Out_0_Float, _Power_da9b537d80a58d85a88e72c2a5d01e7c_Out_2_Float);
|
|
float _Clamp_77228e2a7266fa8ca042eae2f0701342_Out_3_Float;
|
|
Unity_Clamp_float(_Power_da9b537d80a58d85a88e72c2a5d01e7c_Out_2_Float, float(0), float(1), _Clamp_77228e2a7266fa8ca042eae2f0701342_Out_3_Float);
|
|
float4 _Multiply_2111c8ad39d5e68caf4893a41a3bad7d_Out_2_Vector4;
|
|
Unity_Multiply_float4_float4(_Multiply_62594f3b30470e86a813e1224c48902e_Out_2_Vector4, (_Clamp_77228e2a7266fa8ca042eae2f0701342_Out_3_Float.xxxx), _Multiply_2111c8ad39d5e68caf4893a41a3bad7d_Out_2_Vector4);
|
|
float4 _Clamp_b489ebb9d7d18282a342100f4d2fa72d_Out_3_Vector4;
|
|
Unity_Clamp_float4(_Multiply_2111c8ad39d5e68caf4893a41a3bad7d_Out_2_Vector4, float4(0, 0, 0, 0), float4(1, 1, 1, 1), _Clamp_b489ebb9d7d18282a342100f4d2fa72d_Out_3_Vector4);
|
|
float _Add_7eea819e47ffe58cbb3ec5877a181444_Out_2_Float;
|
|
Unity_Add_float(_Multiply_5378fc524597f98fb32eeb561a7390e9_Out_2_Float, float(-1), _Add_7eea819e47ffe58cbb3ec5877a181444_Out_2_Float);
|
|
float _Clamp_b5e4f47c0358dc87b5f9fdb3a360e9e9_Out_3_Float;
|
|
Unity_Clamp_float(_Add_7eea819e47ffe58cbb3ec5877a181444_Out_2_Float, float(0), float(1), _Clamp_b5e4f47c0358dc87b5f9fdb3a360e9e9_Out_3_Float);
|
|
float _Property_753051c96a90798fa7d94cff4173d6e6_Out_0_Float = _CoverBrightnessCurvMultply;
|
|
float _Multiply_c650497abc44d98882ce0091d10c4356_Out_2_Float;
|
|
Unity_Multiply_float_float(_Clamp_b5e4f47c0358dc87b5f9fdb3a360e9e9_Out_3_Float, _Property_753051c96a90798fa7d94cff4173d6e6_Out_0_Float, _Multiply_c650497abc44d98882ce0091d10c4356_Out_2_Float);
|
|
float _Clamp_c508dc61e0cb2a829429559098f34f9a_Out_3_Float;
|
|
Unity_Clamp_float(_Multiply_c650497abc44d98882ce0091d10c4356_Out_2_Float, float(0), float(1), _Clamp_c508dc61e0cb2a829429559098f34f9a_Out_3_Float);
|
|
float _Absolute_2cff2da32d80c286acbb99de611f381a_Out_1_Float;
|
|
Unity_Absolute_float(_Clamp_c508dc61e0cb2a829429559098f34f9a_Out_3_Float, _Absolute_2cff2da32d80c286acbb99de611f381a_Out_1_Float);
|
|
float _Property_ce4610db7b6d0c8bb7fb318210d3e83f_Out_0_Float = _CoverBrightnessCurvPower;
|
|
float _Power_c21df4d2e5ea448281f9ac0f4a140b9e_Out_2_Float;
|
|
Unity_Power_float(_Absolute_2cff2da32d80c286acbb99de611f381a_Out_1_Float, _Property_ce4610db7b6d0c8bb7fb318210d3e83f_Out_0_Float, _Power_c21df4d2e5ea448281f9ac0f4a140b9e_Out_2_Float);
|
|
float _Clamp_fd095a9d6c2b9881ae5875ed126bf3fb_Out_3_Float;
|
|
Unity_Clamp_float(_Power_c21df4d2e5ea448281f9ac0f4a140b9e_Out_2_Float, float(0), float(1), _Clamp_fd095a9d6c2b9881ae5875ed126bf3fb_Out_3_Float);
|
|
float4 _Add_4a02758b9a29b18180516bf3c3ede263_Out_2_Vector4;
|
|
Unity_Add_float4(_Clamp_b489ebb9d7d18282a342100f4d2fa72d_Out_3_Vector4, (_Clamp_fd095a9d6c2b9881ae5875ed126bf3fb_Out_3_Float.xxxx), _Add_4a02758b9a29b18180516bf3c3ede263_Out_2_Vector4);
|
|
float4 _Clamp_632e3d64ab55648f927a79cef68f3396_Out_3_Vector4;
|
|
Unity_Clamp_float4(_Add_4a02758b9a29b18180516bf3c3ede263_Out_2_Vector4, float4(0, 0, 0, 0), float4(1, 1, 1, 1), _Clamp_632e3d64ab55648f927a79cef68f3396_Out_3_Vector4);
|
|
float4 _Branch_0c5221a996e29186a372734bf5c30a51_Out_3_Vector4;
|
|
Unity_Branch_float4(_Property_72a5c604805a7b8ebbfd7acee03656aa_Out_0_Boolean, _Clamp_632e3d64ab55648f927a79cef68f3396_Out_3_Vector4, _Multiply_62594f3b30470e86a813e1224c48902e_Out_2_Vector4, _Branch_0c5221a996e29186a372734bf5c30a51_Out_3_Vector4);
|
|
float _Multiply_6a55591ceae0dc86a971a275e316fec6_Out_2_Float;
|
|
Unity_Multiply_float_float(_SampleTexture2D_4bd08411faa60c828847f2247f06a809_R_4_Float, 2, _Multiply_6a55591ceae0dc86a971a275e316fec6_Out_2_Float);
|
|
float _Add_a86411eb4894f78f8f8f3246011b369c_Out_2_Float;
|
|
Unity_Add_float(_Multiply_6a55591ceae0dc86a971a275e316fec6_Out_2_Float, float(-1), _Add_a86411eb4894f78f8f8f3246011b369c_Out_2_Float);
|
|
float _Property_c5a049650239cf80a302d0c0f57c147a_Out_0_Float = _DetailCoverAlbedoScale;
|
|
float _Multiply_1708b01db74fe88a8c36434f8729bf41_Out_2_Float;
|
|
Unity_Multiply_float_float(_Add_a86411eb4894f78f8f8f3246011b369c_Out_2_Float, _Property_c5a049650239cf80a302d0c0f57c147a_Out_0_Float, _Multiply_1708b01db74fe88a8c36434f8729bf41_Out_2_Float);
|
|
float _Saturate_1a4899f79635918485a64fff7cea28ad_Out_1_Float;
|
|
Unity_Saturate_float(_Multiply_1708b01db74fe88a8c36434f8729bf41_Out_2_Float, _Saturate_1a4899f79635918485a64fff7cea28ad_Out_1_Float);
|
|
float _Absolute_d3dce2bb8d9f0285b5183b7f665beed8_Out_1_Float;
|
|
Unity_Absolute_float(_Saturate_1a4899f79635918485a64fff7cea28ad_Out_1_Float, _Absolute_d3dce2bb8d9f0285b5183b7f665beed8_Out_1_Float);
|
|
Bindings_BlendOverlayBaseColor_acdb3dfca72bd6b42bbc35f4613331a2_float _BlendOverlayBaseColor_ec1f397271cc818abdb95188914e6b4d;
|
|
float3 _BlendOverlayBaseColor_ec1f397271cc818abdb95188914e6b4d_OutVector4_1_Vector3;
|
|
SG_BlendOverlayBaseColor_acdb3dfca72bd6b42bbc35f4613331a2_float(_Branch_0c5221a996e29186a372734bf5c30a51_Out_3_Vector4, _Add_a86411eb4894f78f8f8f3246011b369c_Out_2_Float, _Absolute_d3dce2bb8d9f0285b5183b7f665beed8_Out_1_Float, _BlendOverlayBaseColor_ec1f397271cc818abdb95188914e6b4d, _BlendOverlayBaseColor_ec1f397271cc818abdb95188914e6b4d_OutVector4_1_Vector3);
|
|
float _Property_cb0b6597aee47880b32e852aaa0e4a71_Out_0_Boolean = _USEDYNAMICCOVERTSTATICMASKF;
|
|
float _Property_4b3f692214f8d081a043985e1adb12a1_Out_0_Float = _CoverMaskPower;
|
|
float _Multiply_10cc4ecb135f8e8ab88c475223d0eadf_Out_2_Float;
|
|
Unity_Multiply_float_float(_SampleTexture2D_32717b1e99785588830ceee116cbe7fc_A_7_Float, _Property_4b3f692214f8d081a043985e1adb12a1_Out_0_Float, _Multiply_10cc4ecb135f8e8ab88c475223d0eadf_Out_2_Float);
|
|
float _Clamp_07a501c22c6e188199bed73412ac8926_Out_3_Float;
|
|
Unity_Clamp_float(_Multiply_10cc4ecb135f8e8ab88c475223d0eadf_Out_2_Float, float(0), float(1), _Clamp_07a501c22c6e188199bed73412ac8926_Out_3_Float);
|
|
float _Split_2ada595651635e8d97bf4b82f717fcc6_R_1_Float = IN.VertexColor[0];
|
|
float _Split_2ada595651635e8d97bf4b82f717fcc6_G_2_Float = IN.VertexColor[1];
|
|
float _Split_2ada595651635e8d97bf4b82f717fcc6_B_3_Float = IN.VertexColor[2];
|
|
float _Split_2ada595651635e8d97bf4b82f717fcc6_A_4_Float = IN.VertexColor[3];
|
|
float3 _Property_9180f8dd535ba18499edac37aef4d231_Out_0_Vector3 = _CoverDirection;
|
|
float2 _Vector2_7fe7d9ef320da68f958e1ea535e2a6a8_Out_0_Vector2 = float2(_SampleTexture2D_4bd08411faa60c828847f2247f06a809_A_7_Float, _SampleTexture2D_4bd08411faa60c828847f2247f06a809_G_5_Float);
|
|
float2 _Multiply_b8d7cc078ce00d87b9a6b5241b2f1f01_Out_2_Vector2;
|
|
Unity_Multiply_float2_float2(_Vector2_7fe7d9ef320da68f958e1ea535e2a6a8_Out_0_Vector2, float2(2, 2), _Multiply_b8d7cc078ce00d87b9a6b5241b2f1f01_Out_2_Vector2);
|
|
float2 _Add_476ecfb1f47aed8bb8040bb1c44ca372_Out_2_Vector2;
|
|
Unity_Add_float2(_Multiply_b8d7cc078ce00d87b9a6b5241b2f1f01_Out_2_Vector2, float2(-1, -1), _Add_476ecfb1f47aed8bb8040bb1c44ca372_Out_2_Vector2);
|
|
float _Property_b7f40cf2664f5a819eb153af2b2eb69e_Out_0_Float = _DetailNormalScale;
|
|
float2 _Multiply_3b11e3e43551698eb19b6c6b671b6a41_Out_2_Vector2;
|
|
Unity_Multiply_float2_float2(_Add_476ecfb1f47aed8bb8040bb1c44ca372_Out_2_Vector2, (_Property_b7f40cf2664f5a819eb153af2b2eb69e_Out_0_Float.xx), _Multiply_3b11e3e43551698eb19b6c6b671b6a41_Out_2_Vector2);
|
|
float _Split_678aac70d9cb9783a49841710ce82ff8_R_1_Float = _Multiply_3b11e3e43551698eb19b6c6b671b6a41_Out_2_Vector2[0];
|
|
float _Split_678aac70d9cb9783a49841710ce82ff8_G_2_Float = _Multiply_3b11e3e43551698eb19b6c6b671b6a41_Out_2_Vector2[1];
|
|
float _Split_678aac70d9cb9783a49841710ce82ff8_B_3_Float = 0;
|
|
float _Split_678aac70d9cb9783a49841710ce82ff8_A_4_Float = 0;
|
|
float _DotProduct_7fd2e2e8b3e9ed8f9a42a0ba98e14174_Out_2_Float;
|
|
Unity_DotProduct_float2(_Multiply_3b11e3e43551698eb19b6c6b671b6a41_Out_2_Vector2, _Multiply_3b11e3e43551698eb19b6c6b671b6a41_Out_2_Vector2, _DotProduct_7fd2e2e8b3e9ed8f9a42a0ba98e14174_Out_2_Float);
|
|
float _Saturate_47bdfe8ca2c8d989a5ebbb5eb995f023_Out_1_Float;
|
|
Unity_Saturate_float(_DotProduct_7fd2e2e8b3e9ed8f9a42a0ba98e14174_Out_2_Float, _Saturate_47bdfe8ca2c8d989a5ebbb5eb995f023_Out_1_Float);
|
|
float _OneMinus_03777d2879850b838187d9d2605d7341_Out_1_Float;
|
|
Unity_OneMinus_float(_Saturate_47bdfe8ca2c8d989a5ebbb5eb995f023_Out_1_Float, _OneMinus_03777d2879850b838187d9d2605d7341_Out_1_Float);
|
|
float _SquareRoot_ca9c195aef071d8888f26cb73b749f72_Out_1_Float;
|
|
Unity_SquareRoot_float(_OneMinus_03777d2879850b838187d9d2605d7341_Out_1_Float, _SquareRoot_ca9c195aef071d8888f26cb73b749f72_Out_1_Float);
|
|
float3 _Vector3_6999cbd6a5aa908cb7c059b5f2f5b330_Out_0_Vector3 = float3(_Split_678aac70d9cb9783a49841710ce82ff8_R_1_Float, _Split_678aac70d9cb9783a49841710ce82ff8_G_2_Float, _SquareRoot_ca9c195aef071d8888f26cb73b749f72_Out_1_Float);
|
|
UnityTexture2D _Property_d2bb0a0b01239c85bd301cadeec1b3d8_Out_0_Texture2D = UnityBuildTexture2DStructNoScale(_BaseNormalMap);
|
|
Bindings_TriplanarNMn_059da9746584140498cd018db3c76047_float _TriplanarNMn_bf7f7c0e2d896289b86076b79f33d7d4;
|
|
_TriplanarNMn_bf7f7c0e2d896289b86076b79f33d7d4.WorldSpaceNormal = IN.WorldSpaceNormal;
|
|
_TriplanarNMn_bf7f7c0e2d896289b86076b79f33d7d4.WorldSpaceTangent = IN.WorldSpaceTangent;
|
|
_TriplanarNMn_bf7f7c0e2d896289b86076b79f33d7d4.WorldSpaceBiTangent = IN.WorldSpaceBiTangent;
|
|
_TriplanarNMn_bf7f7c0e2d896289b86076b79f33d7d4.AbsoluteWorldSpacePosition = IN.AbsoluteWorldSpacePosition;
|
|
float4 _TriplanarNMn_bf7f7c0e2d896289b86076b79f33d7d4_XYZ_1_Vector4;
|
|
float4 _TriplanarNMn_bf7f7c0e2d896289b86076b79f33d7d4_XZ_2_Vector4;
|
|
float4 _TriplanarNMn_bf7f7c0e2d896289b86076b79f33d7d4_YZ_3_Vector4;
|
|
float4 _TriplanarNMn_bf7f7c0e2d896289b86076b79f33d7d4_XY_4_Vector4;
|
|
SG_TriplanarNMn_059da9746584140498cd018db3c76047_float(_Property_d2bb0a0b01239c85bd301cadeec1b3d8_Out_0_Texture2D, (_Divide_6a90cebe78e620828de587523daaa7e6_Out_2_Vector4).x, _Property_3539de8c698c2981bb3c088d4ec52201_Out_0_Float, UnityBuildSamplerStateStruct(SamplerState_Linear_Repeat_Aniso8), _TriplanarNMn_bf7f7c0e2d896289b86076b79f33d7d4, _TriplanarNMn_bf7f7c0e2d896289b86076b79f33d7d4_XYZ_1_Vector4, _TriplanarNMn_bf7f7c0e2d896289b86076b79f33d7d4_XZ_2_Vector4, _TriplanarNMn_bf7f7c0e2d896289b86076b79f33d7d4_YZ_3_Vector4, _TriplanarNMn_bf7f7c0e2d896289b86076b79f33d7d4_XY_4_Vector4);
|
|
float _Property_d6baf612f8e685848732ca270b39f544_Out_0_Float = _BaseNormalScale;
|
|
float3 _NormalStrength_260139b4d5077d8b9d42de780d173b6c_Out_2_Vector3;
|
|
Unity_NormalStrength_float((_TriplanarNMn_bf7f7c0e2d896289b86076b79f33d7d4_XYZ_1_Vector4.xyz), _Property_d6baf612f8e685848732ca270b39f544_Out_0_Float, _NormalStrength_260139b4d5077d8b9d42de780d173b6c_Out_2_Vector3);
|
|
UnityTexture2D _Property_492c4e7cd40ab980bd38362624511e38_Out_0_Texture2D = UnityBuildTexture2DStructNoScale(_ShapeNormalMap);
|
|
float4 _SampleTexture2D_63aaad04c65f698e8f640de826888075_RGBA_0_Vector4 = SAMPLE_TEXTURE2D(_Property_492c4e7cd40ab980bd38362624511e38_Out_0_Texture2D.tex, _Property_492c4e7cd40ab980bd38362624511e38_Out_0_Texture2D.samplerstate, _Property_492c4e7cd40ab980bd38362624511e38_Out_0_Texture2D.GetTransformedUV(IN.uv0.xy) );
|
|
_SampleTexture2D_63aaad04c65f698e8f640de826888075_RGBA_0_Vector4.rgb = UnpackNormal(_SampleTexture2D_63aaad04c65f698e8f640de826888075_RGBA_0_Vector4);
|
|
float _SampleTexture2D_63aaad04c65f698e8f640de826888075_R_4_Float = _SampleTexture2D_63aaad04c65f698e8f640de826888075_RGBA_0_Vector4.r;
|
|
float _SampleTexture2D_63aaad04c65f698e8f640de826888075_G_5_Float = _SampleTexture2D_63aaad04c65f698e8f640de826888075_RGBA_0_Vector4.g;
|
|
float _SampleTexture2D_63aaad04c65f698e8f640de826888075_B_6_Float = _SampleTexture2D_63aaad04c65f698e8f640de826888075_RGBA_0_Vector4.b;
|
|
float _SampleTexture2D_63aaad04c65f698e8f640de826888075_A_7_Float = _SampleTexture2D_63aaad04c65f698e8f640de826888075_RGBA_0_Vector4.a;
|
|
float _Property_6c35e329e57d0e89950e24817068dbb1_Out_0_Float = _shapeNormalScale;
|
|
float3 _NormalStrength_e181a1bb2f4e35819e0f35e77346e12e_Out_2_Vector3;
|
|
Unity_NormalStrength_float((_SampleTexture2D_63aaad04c65f698e8f640de826888075_RGBA_0_Vector4.xyz), _Property_6c35e329e57d0e89950e24817068dbb1_Out_0_Float, _NormalStrength_e181a1bb2f4e35819e0f35e77346e12e_Out_2_Vector3);
|
|
float3 _NormalBlend_ead295b946c6058190c298c03bf64d0b_Out_2_Vector3;
|
|
Unity_NormalBlend_float(_NormalStrength_260139b4d5077d8b9d42de780d173b6c_Out_2_Vector3, _NormalStrength_e181a1bb2f4e35819e0f35e77346e12e_Out_2_Vector3, _NormalBlend_ead295b946c6058190c298c03bf64d0b_Out_2_Vector3);
|
|
float3 _NormalBlend_4242e1b4a785378aa59dd49e9d993ffc_Out_2_Vector3;
|
|
Unity_NormalBlend_float(_Vector3_6999cbd6a5aa908cb7c059b5f2f5b330_Out_0_Vector3, _NormalBlend_ead295b946c6058190c298c03bf64d0b_Out_2_Vector3, _NormalBlend_4242e1b4a785378aa59dd49e9d993ffc_Out_2_Vector3);
|
|
float _Property_3d4ab6ad1f1f138a96f0463f7be8b6ce_Out_0_Float = _CovershapeNormalScale;
|
|
float3 _NormalStrength_401cd5af500bd68dbc9bca19d548d0db_Out_2_Vector3;
|
|
Unity_NormalStrength_float((_SampleTexture2D_63aaad04c65f698e8f640de826888075_RGBA_0_Vector4.xyz), _Property_3d4ab6ad1f1f138a96f0463f7be8b6ce_Out_0_Float, _NormalStrength_401cd5af500bd68dbc9bca19d548d0db_Out_2_Vector3);
|
|
UnityTexture2D _Property_779695727390348d8b8a7f7ae2245af0_Out_0_Texture2D = UnityBuildTexture2DStructNoScale(_CoverNormalMap);
|
|
Bindings_TriplanarNMn_059da9746584140498cd018db3c76047_float _TriplanarNMn_ba7e211dd8095589a2939b5b239ca8e0;
|
|
_TriplanarNMn_ba7e211dd8095589a2939b5b239ca8e0.WorldSpaceNormal = IN.WorldSpaceNormal;
|
|
_TriplanarNMn_ba7e211dd8095589a2939b5b239ca8e0.WorldSpaceTangent = IN.WorldSpaceTangent;
|
|
_TriplanarNMn_ba7e211dd8095589a2939b5b239ca8e0.WorldSpaceBiTangent = IN.WorldSpaceBiTangent;
|
|
_TriplanarNMn_ba7e211dd8095589a2939b5b239ca8e0.AbsoluteWorldSpacePosition = IN.AbsoluteWorldSpacePosition;
|
|
float4 _TriplanarNMn_ba7e211dd8095589a2939b5b239ca8e0_XYZ_1_Vector4;
|
|
float4 _TriplanarNMn_ba7e211dd8095589a2939b5b239ca8e0_XZ_2_Vector4;
|
|
float4 _TriplanarNMn_ba7e211dd8095589a2939b5b239ca8e0_YZ_3_Vector4;
|
|
float4 _TriplanarNMn_ba7e211dd8095589a2939b5b239ca8e0_XY_4_Vector4;
|
|
SG_TriplanarNMn_059da9746584140498cd018db3c76047_float(_Property_779695727390348d8b8a7f7ae2245af0_Out_0_Texture2D, (_Divide_1fe314f1ca9dd78fbf366bbeb40e4ccf_Out_2_Vector4).x, _Property_ee792eccbb538a878b19be5db264531e_Out_0_Float, UnityBuildSamplerStateStruct(SamplerState_Linear_Repeat_Aniso8), _TriplanarNMn_ba7e211dd8095589a2939b5b239ca8e0, _TriplanarNMn_ba7e211dd8095589a2939b5b239ca8e0_XYZ_1_Vector4, _TriplanarNMn_ba7e211dd8095589a2939b5b239ca8e0_XZ_2_Vector4, _TriplanarNMn_ba7e211dd8095589a2939b5b239ca8e0_YZ_3_Vector4, _TriplanarNMn_ba7e211dd8095589a2939b5b239ca8e0_XY_4_Vector4);
|
|
float _Property_5aba050988182f8aad3ec6b2c7e57899_Out_0_Float = _CoverNormalBlendHardness;
|
|
float3 _NormalStrength_dac4b0abfa8a1f82b7103b18f6e6e1b7_Out_2_Vector3;
|
|
Unity_NormalStrength_float((_TriplanarNMn_ba7e211dd8095589a2939b5b239ca8e0_XYZ_1_Vector4.xyz), _Property_5aba050988182f8aad3ec6b2c7e57899_Out_0_Float, _NormalStrength_dac4b0abfa8a1f82b7103b18f6e6e1b7_Out_2_Vector3);
|
|
float3 _NormalBlend_4058aded292b7389ade16c695a6cae6c_Out_2_Vector3;
|
|
Unity_NormalBlend_float(_NormalStrength_401cd5af500bd68dbc9bca19d548d0db_Out_2_Vector3, _NormalStrength_dac4b0abfa8a1f82b7103b18f6e6e1b7_Out_2_Vector3, _NormalBlend_4058aded292b7389ade16c695a6cae6c_Out_2_Vector3);
|
|
float3 _Multiply_0e22f9c6ff55a188b2533f1889a53038_Out_2_Vector3;
|
|
Unity_Multiply_float3_float3(_Property_9180f8dd535ba18499edac37aef4d231_Out_0_Vector3, IN.WorldSpaceNormal, _Multiply_0e22f9c6ff55a188b2533f1889a53038_Out_2_Vector3);
|
|
float _Split_89708601b575b58c852cd55e4fb248d1_R_1_Float = _Multiply_0e22f9c6ff55a188b2533f1889a53038_Out_2_Vector3[0];
|
|
float _Split_89708601b575b58c852cd55e4fb248d1_G_2_Float = _Multiply_0e22f9c6ff55a188b2533f1889a53038_Out_2_Vector3[1];
|
|
float _Split_89708601b575b58c852cd55e4fb248d1_B_3_Float = _Multiply_0e22f9c6ff55a188b2533f1889a53038_Out_2_Vector3[2];
|
|
float _Split_89708601b575b58c852cd55e4fb248d1_A_4_Float = 0;
|
|
float _Add_bfe29b97a9ce3b80aa4cd689be8c4a97_Out_2_Float;
|
|
Unity_Add_float(_Split_89708601b575b58c852cd55e4fb248d1_R_1_Float, _Split_89708601b575b58c852cd55e4fb248d1_G_2_Float, _Add_bfe29b97a9ce3b80aa4cd689be8c4a97_Out_2_Float);
|
|
float _Add_f3152b42a227088aa1439fc1fe8451cc_Out_2_Float;
|
|
Unity_Add_float(_Add_bfe29b97a9ce3b80aa4cd689be8c4a97_Out_2_Float, _Split_89708601b575b58c852cd55e4fb248d1_B_3_Float, _Add_f3152b42a227088aa1439fc1fe8451cc_Out_2_Float);
|
|
float _Property_deabceefa3e3438a8ad71fa67fc5b070_Out_0_Float = _Cover_Amount;
|
|
float _Property_2fba2d762d74b8828ff566c10bc48e86_Out_0_Float = _Cover_Amount_Grow_Speed;
|
|
float _Subtract_1f990262a41ce88f96a47df66dcb4971_Out_2_Float;
|
|
Unity_Subtract_float(float(4), _Property_2fba2d762d74b8828ff566c10bc48e86_Out_0_Float, _Subtract_1f990262a41ce88f96a47df66dcb4971_Out_2_Float);
|
|
float _Divide_a89e05be4802ac80886ad6bdeadc4949_Out_2_Float;
|
|
Unity_Divide_float(_Property_deabceefa3e3438a8ad71fa67fc5b070_Out_0_Float, _Subtract_1f990262a41ce88f96a47df66dcb4971_Out_2_Float, _Divide_a89e05be4802ac80886ad6bdeadc4949_Out_2_Float);
|
|
float _Absolute_2b58f48ab94a3087a726a2b03c51e2c6_Out_1_Float;
|
|
Unity_Absolute_float(_Divide_a89e05be4802ac80886ad6bdeadc4949_Out_2_Float, _Absolute_2b58f48ab94a3087a726a2b03c51e2c6_Out_1_Float);
|
|
float _Power_6695d49b8b82468ea686b66e6749260b_Out_2_Float;
|
|
Unity_Power_float(_Absolute_2b58f48ab94a3087a726a2b03c51e2c6_Out_1_Float, _Subtract_1f990262a41ce88f96a47df66dcb4971_Out_2_Float, _Power_6695d49b8b82468ea686b66e6749260b_Out_2_Float);
|
|
float _Clamp_94f0310fee13798bad4e26e2381a94d4_Out_3_Float;
|
|
Unity_Clamp_float(_Power_6695d49b8b82468ea686b66e6749260b_Out_2_Float, float(0), float(2), _Clamp_94f0310fee13798bad4e26e2381a94d4_Out_3_Float);
|
|
float _Multiply_999692515a117385ade114d924fa589a_Out_2_Float;
|
|
Unity_Multiply_float_float(_Add_f3152b42a227088aa1439fc1fe8451cc_Out_2_Float, _Clamp_94f0310fee13798bad4e26e2381a94d4_Out_3_Float, _Multiply_999692515a117385ade114d924fa589a_Out_2_Float);
|
|
float _Saturate_f811eeeeb3229d83917aa8be2c36831e_Out_1_Float;
|
|
Unity_Saturate_float(_Multiply_999692515a117385ade114d924fa589a_Out_2_Float, _Saturate_f811eeeeb3229d83917aa8be2c36831e_Out_1_Float);
|
|
float _Clamp_4c470807610adb8c8488f125c0af7bb5_Out_3_Float;
|
|
Unity_Clamp_float(_Add_f3152b42a227088aa1439fc1fe8451cc_Out_2_Float, float(0), float(0.9999), _Clamp_4c470807610adb8c8488f125c0af7bb5_Out_3_Float);
|
|
float _Property_765e3d021aec6d8f9f8b3174d5a06980_Out_0_Float = _Cover_Max_Angle;
|
|
float _Divide_9d9fc267a9ebcf84b378fdd4c66ff34d_Out_2_Float;
|
|
Unity_Divide_float(_Property_765e3d021aec6d8f9f8b3174d5a06980_Out_0_Float, float(45), _Divide_9d9fc267a9ebcf84b378fdd4c66ff34d_Out_2_Float);
|
|
float _OneMinus_f074fba0be46e688aa75f5377832251a_Out_1_Float;
|
|
Unity_OneMinus_float(_Divide_9d9fc267a9ebcf84b378fdd4c66ff34d_Out_2_Float, _OneMinus_f074fba0be46e688aa75f5377832251a_Out_1_Float);
|
|
float _Subtract_0b0cd6145e351c87a68366348828154d_Out_2_Float;
|
|
Unity_Subtract_float(_Clamp_4c470807610adb8c8488f125c0af7bb5_Out_3_Float, _OneMinus_f074fba0be46e688aa75f5377832251a_Out_1_Float, _Subtract_0b0cd6145e351c87a68366348828154d_Out_2_Float);
|
|
float _Clamp_30607c0c4e04e5879d4061a1f7688421_Out_3_Float;
|
|
Unity_Clamp_float(_Subtract_0b0cd6145e351c87a68366348828154d_Out_2_Float, float(0), float(2), _Clamp_30607c0c4e04e5879d4061a1f7688421_Out_3_Float);
|
|
float _Divide_cfe09f3bd2005485a3c2229367309962_Out_2_Float;
|
|
Unity_Divide_float(float(1), _Divide_9d9fc267a9ebcf84b378fdd4c66ff34d_Out_2_Float, _Divide_cfe09f3bd2005485a3c2229367309962_Out_2_Float);
|
|
float _Multiply_022be2eb9027988b9d5d4c1392749347_Out_2_Float;
|
|
Unity_Multiply_float_float(_Clamp_30607c0c4e04e5879d4061a1f7688421_Out_3_Float, _Divide_cfe09f3bd2005485a3c2229367309962_Out_2_Float, _Multiply_022be2eb9027988b9d5d4c1392749347_Out_2_Float);
|
|
float _Absolute_2fed84623df90f8ba200de68955721fd_Out_1_Float;
|
|
Unity_Absolute_float(_Multiply_022be2eb9027988b9d5d4c1392749347_Out_2_Float, _Absolute_2fed84623df90f8ba200de68955721fd_Out_1_Float);
|
|
float _Property_b79c921e30793a8e84330b3341539232_Out_0_Float = _CoverHardness;
|
|
float _Power_b9ddee06dfd0b880880990743bc10612_Out_2_Float;
|
|
Unity_Power_float(_Absolute_2fed84623df90f8ba200de68955721fd_Out_1_Float, _Property_b79c921e30793a8e84330b3341539232_Out_0_Float, _Power_b9ddee06dfd0b880880990743bc10612_Out_2_Float);
|
|
float _Property_c82936191f294c89b76f2d1809168f87_Out_0_Float = _Cover_Min_Height;
|
|
float _OneMinus_f0918ccb4f747b8e83e39d82dc3b5ca9_Out_1_Float;
|
|
Unity_OneMinus_float(_Property_c82936191f294c89b76f2d1809168f87_Out_0_Float, _OneMinus_f0918ccb4f747b8e83e39d82dc3b5ca9_Out_1_Float);
|
|
float _Split_0e80ce6f80cff18f87a043d1e3eecd08_R_1_Float = IN.AbsoluteWorldSpacePosition[0];
|
|
float _Split_0e80ce6f80cff18f87a043d1e3eecd08_G_2_Float = IN.AbsoluteWorldSpacePosition[1];
|
|
float _Split_0e80ce6f80cff18f87a043d1e3eecd08_B_3_Float = IN.AbsoluteWorldSpacePosition[2];
|
|
float _Split_0e80ce6f80cff18f87a043d1e3eecd08_A_4_Float = 0;
|
|
float _Add_60b3bb4cdad6e88b8c097c5b08daa7d0_Out_2_Float;
|
|
Unity_Add_float(_OneMinus_f0918ccb4f747b8e83e39d82dc3b5ca9_Out_1_Float, _Split_0e80ce6f80cff18f87a043d1e3eecd08_G_2_Float, _Add_60b3bb4cdad6e88b8c097c5b08daa7d0_Out_2_Float);
|
|
float _Add_1898d6f46901df809c68b5241b2e9c37_Out_2_Float;
|
|
Unity_Add_float(_Add_60b3bb4cdad6e88b8c097c5b08daa7d0_Out_2_Float, float(1), _Add_1898d6f46901df809c68b5241b2e9c37_Out_2_Float);
|
|
float _Clamp_25d6140fa3ff3a8f956f99005adace2e_Out_3_Float;
|
|
Unity_Clamp_float(_Add_1898d6f46901df809c68b5241b2e9c37_Out_2_Float, float(0), float(1), _Clamp_25d6140fa3ff3a8f956f99005adace2e_Out_3_Float);
|
|
float _Property_6094a52a4f01fd8da5ea847b69b6941c_Out_0_Float = _Cover_Min_Height_Blending;
|
|
float _Add_dc69668fc7f1a586a754713499f71d99_Out_2_Float;
|
|
Unity_Add_float(_Add_60b3bb4cdad6e88b8c097c5b08daa7d0_Out_2_Float, _Property_6094a52a4f01fd8da5ea847b69b6941c_Out_0_Float, _Add_dc69668fc7f1a586a754713499f71d99_Out_2_Float);
|
|
float _Divide_63e32406c8773d83bbf2e244faf8328f_Out_2_Float;
|
|
Unity_Divide_float(_Add_dc69668fc7f1a586a754713499f71d99_Out_2_Float, _Add_60b3bb4cdad6e88b8c097c5b08daa7d0_Out_2_Float, _Divide_63e32406c8773d83bbf2e244faf8328f_Out_2_Float);
|
|
float _OneMinus_ec22d21ddfa84288b6f750e9fdb107b9_Out_1_Float;
|
|
Unity_OneMinus_float(_Divide_63e32406c8773d83bbf2e244faf8328f_Out_2_Float, _OneMinus_ec22d21ddfa84288b6f750e9fdb107b9_Out_1_Float);
|
|
float _Add_a1206af8cbfbbe8081046db1247aba04_Out_2_Float;
|
|
Unity_Add_float(_OneMinus_ec22d21ddfa84288b6f750e9fdb107b9_Out_1_Float, float(-0.5), _Add_a1206af8cbfbbe8081046db1247aba04_Out_2_Float);
|
|
float _Clamp_640b5884b29f188987c157ad5e6e6959_Out_3_Float;
|
|
Unity_Clamp_float(_Add_a1206af8cbfbbe8081046db1247aba04_Out_2_Float, float(0), float(1), _Clamp_640b5884b29f188987c157ad5e6e6959_Out_3_Float);
|
|
float _Add_cfdb6daf617665838bb05910fa9505df_Out_2_Float;
|
|
Unity_Add_float(_Clamp_25d6140fa3ff3a8f956f99005adace2e_Out_3_Float, _Clamp_640b5884b29f188987c157ad5e6e6959_Out_3_Float, _Add_cfdb6daf617665838bb05910fa9505df_Out_2_Float);
|
|
float _Clamp_552ef7e5cf91408a982297885971db7e_Out_3_Float;
|
|
Unity_Clamp_float(_Add_cfdb6daf617665838bb05910fa9505df_Out_2_Float, float(0), float(1), _Clamp_552ef7e5cf91408a982297885971db7e_Out_3_Float);
|
|
float _Multiply_8f8db9c494f4fd869809fc45531df628_Out_2_Float;
|
|
Unity_Multiply_float_float(_Power_b9ddee06dfd0b880880990743bc10612_Out_2_Float, _Clamp_552ef7e5cf91408a982297885971db7e_Out_3_Float, _Multiply_8f8db9c494f4fd869809fc45531df628_Out_2_Float);
|
|
float _Multiply_60075aa07d29d285b3c1ee531e5b5cb3_Out_2_Float;
|
|
Unity_Multiply_float_float(_Saturate_f811eeeeb3229d83917aa8be2c36831e_Out_1_Float, _Multiply_8f8db9c494f4fd869809fc45531df628_Out_2_Float, _Multiply_60075aa07d29d285b3c1ee531e5b5cb3_Out_2_Float);
|
|
float3 _Lerp_453c8bc667315a8fa37a93affb877753_Out_3_Vector3;
|
|
Unity_Lerp_float3(_NormalBlend_4242e1b4a785378aa59dd49e9d993ffc_Out_2_Vector3, _NormalBlend_4058aded292b7389ade16c695a6cae6c_Out_2_Vector3, (_Multiply_60075aa07d29d285b3c1ee531e5b5cb3_Out_2_Float.xxx), _Lerp_453c8bc667315a8fa37a93affb877753_Out_3_Vector3);
|
|
float3 _Transform_a87113b0be9dfa8eaf6932ed645aa845_Out_1_Vector3;
|
|
{
|
|
float3x3 tangentTransform = float3x3(IN.WorldSpaceTangent, IN.WorldSpaceBiTangent, IN.WorldSpaceNormal);
|
|
_Transform_a87113b0be9dfa8eaf6932ed645aa845_Out_1_Vector3 = TransformTangentToWorldDir(_Lerp_453c8bc667315a8fa37a93affb877753_Out_3_Vector3.xyz, tangentTransform, false).xyz;
|
|
}
|
|
float3 _Multiply_f6e009bd5c0fd18c99ac72f233476fe5_Out_2_Vector3;
|
|
Unity_Multiply_float3_float3(_Property_9180f8dd535ba18499edac37aef4d231_Out_0_Vector3, _Transform_a87113b0be9dfa8eaf6932ed645aa845_Out_1_Vector3, _Multiply_f6e009bd5c0fd18c99ac72f233476fe5_Out_2_Vector3);
|
|
float _Split_96f0a5b75c0e0b889dbbccd04bc2aaaa_R_1_Float = _Multiply_f6e009bd5c0fd18c99ac72f233476fe5_Out_2_Vector3[0];
|
|
float _Split_96f0a5b75c0e0b889dbbccd04bc2aaaa_G_2_Float = _Multiply_f6e009bd5c0fd18c99ac72f233476fe5_Out_2_Vector3[1];
|
|
float _Split_96f0a5b75c0e0b889dbbccd04bc2aaaa_B_3_Float = _Multiply_f6e009bd5c0fd18c99ac72f233476fe5_Out_2_Vector3[2];
|
|
float _Split_96f0a5b75c0e0b889dbbccd04bc2aaaa_A_4_Float = 0;
|
|
float _Add_07028d5174d9f88594da40d46502bc13_Out_2_Float;
|
|
Unity_Add_float(_Split_96f0a5b75c0e0b889dbbccd04bc2aaaa_R_1_Float, _Split_96f0a5b75c0e0b889dbbccd04bc2aaaa_G_2_Float, _Add_07028d5174d9f88594da40d46502bc13_Out_2_Float);
|
|
float _Add_93af6c0f8ee9a3898ca51358a213b69f_Out_2_Float;
|
|
Unity_Add_float(_Add_07028d5174d9f88594da40d46502bc13_Out_2_Float, _Split_96f0a5b75c0e0b889dbbccd04bc2aaaa_B_3_Float, _Add_93af6c0f8ee9a3898ca51358a213b69f_Out_2_Float);
|
|
float _Multiply_77421b936cb9d68299ef6791b83fa867_Out_2_Float;
|
|
Unity_Multiply_float_float(_Add_93af6c0f8ee9a3898ca51358a213b69f_Out_2_Float, _Clamp_94f0310fee13798bad4e26e2381a94d4_Out_3_Float, _Multiply_77421b936cb9d68299ef6791b83fa867_Out_2_Float);
|
|
float _Multiply_ac6769fbe7188685a7537e5ac2c6bfa9_Out_2_Float;
|
|
Unity_Multiply_float_float(_Clamp_94f0310fee13798bad4e26e2381a94d4_Out_3_Float, _Property_b79c921e30793a8e84330b3341539232_Out_0_Float, _Multiply_ac6769fbe7188685a7537e5ac2c6bfa9_Out_2_Float);
|
|
float _Multiply_37a341e0d9783683aa8d5b7001acced1_Out_2_Float;
|
|
Unity_Multiply_float_float(_Multiply_ac6769fbe7188685a7537e5ac2c6bfa9_Out_2_Float, _Multiply_8f8db9c494f4fd869809fc45531df628_Out_2_Float, _Multiply_37a341e0d9783683aa8d5b7001acced1_Out_2_Float);
|
|
float _Multiply_02fa8aa66970b281b4a325dc68f407b9_Out_2_Float;
|
|
Unity_Multiply_float_float(_Multiply_77421b936cb9d68299ef6791b83fa867_Out_2_Float, _Multiply_37a341e0d9783683aa8d5b7001acced1_Out_2_Float, _Multiply_02fa8aa66970b281b4a325dc68f407b9_Out_2_Float);
|
|
UnityTexture2D _Property_fd2df7ee33755280948b4c47585d4323_Out_0_Texture2D = UnityBuildTexture2DStructNoScale(_CoverMaskMap);
|
|
Bindings_TriplanarNM_bc609ed95f52591469ab35dbfe0efcea_float _TriplanarNM_e307cfdc6531d2838aa3dfa51fc3913f;
|
|
_TriplanarNM_e307cfdc6531d2838aa3dfa51fc3913f.WorldSpaceNormal = IN.WorldSpaceNormal;
|
|
_TriplanarNM_e307cfdc6531d2838aa3dfa51fc3913f.AbsoluteWorldSpacePosition = IN.AbsoluteWorldSpacePosition;
|
|
float4 _TriplanarNM_e307cfdc6531d2838aa3dfa51fc3913f_XYZ_1_Vector4;
|
|
float4 _TriplanarNM_e307cfdc6531d2838aa3dfa51fc3913f_XZ_2_Vector4;
|
|
float4 _TriplanarNM_e307cfdc6531d2838aa3dfa51fc3913f_YZ_3_Vector4;
|
|
float4 _TriplanarNM_e307cfdc6531d2838aa3dfa51fc3913f_XY_4_Vector4;
|
|
SG_TriplanarNM_bc609ed95f52591469ab35dbfe0efcea_float(_Property_fd2df7ee33755280948b4c47585d4323_Out_0_Texture2D, (_Divide_1fe314f1ca9dd78fbf366bbeb40e4ccf_Out_2_Vector4).x, _Property_ee792eccbb538a878b19be5db264531e_Out_0_Float, UnityBuildSamplerStateStruct(SamplerState_Linear_Repeat_Aniso8), _TriplanarNM_e307cfdc6531d2838aa3dfa51fc3913f, _TriplanarNM_e307cfdc6531d2838aa3dfa51fc3913f_XYZ_1_Vector4, _TriplanarNM_e307cfdc6531d2838aa3dfa51fc3913f_XZ_2_Vector4, _TriplanarNM_e307cfdc6531d2838aa3dfa51fc3913f_YZ_3_Vector4, _TriplanarNM_e307cfdc6531d2838aa3dfa51fc3913f_XY_4_Vector4);
|
|
float _Split_fe834aed1172f284a73d2d6810bdb696_R_1_Float = _TriplanarNM_e307cfdc6531d2838aa3dfa51fc3913f_XYZ_1_Vector4[0];
|
|
float _Split_fe834aed1172f284a73d2d6810bdb696_G_2_Float = _TriplanarNM_e307cfdc6531d2838aa3dfa51fc3913f_XYZ_1_Vector4[1];
|
|
float _Split_fe834aed1172f284a73d2d6810bdb696_B_3_Float = _TriplanarNM_e307cfdc6531d2838aa3dfa51fc3913f_XYZ_1_Vector4[2];
|
|
float _Split_fe834aed1172f284a73d2d6810bdb696_A_4_Float = _TriplanarNM_e307cfdc6531d2838aa3dfa51fc3913f_XYZ_1_Vector4[3];
|
|
float _Property_b5f7a30c2ea202858ea263fd2a5a46c6_Out_0_Float = _CoverHeightMapMin;
|
|
float _Property_f86678f1d28c0483ba1ddccf49ee52f7_Out_0_Float = _CoverHeightMapMax;
|
|
float2 _Vector2_b5c01a0d88900d87a8a819b340151fb6_Out_0_Vector2 = float2(_Property_b5f7a30c2ea202858ea263fd2a5a46c6_Out_0_Float, _Property_f86678f1d28c0483ba1ddccf49ee52f7_Out_0_Float);
|
|
float _Property_82b4f7f3bf3b4382bd69876479a9e350_Out_0_Float = _CoverHeightMapOffset;
|
|
float2 _Add_6020f54fd1e6798e8e76bfdcad62759a_Out_2_Vector2;
|
|
Unity_Add_float2(_Vector2_b5c01a0d88900d87a8a819b340151fb6_Out_0_Vector2, (_Property_82b4f7f3bf3b4382bd69876479a9e350_Out_0_Float.xx), _Add_6020f54fd1e6798e8e76bfdcad62759a_Out_2_Vector2);
|
|
float _Remap_65ceff40294d1e8aae6051445b9fdbc8_Out_3_Float;
|
|
Unity_Remap_float(_Split_fe834aed1172f284a73d2d6810bdb696_B_3_Float, float2 (0, 1), _Add_6020f54fd1e6798e8e76bfdcad62759a_Out_2_Vector2, _Remap_65ceff40294d1e8aae6051445b9fdbc8_Out_3_Float);
|
|
float _Multiply_bb0edd30580dba8b89213d9c5b1ef857_Out_2_Float;
|
|
Unity_Multiply_float_float(_Multiply_02fa8aa66970b281b4a325dc68f407b9_Out_2_Float, _Remap_65ceff40294d1e8aae6051445b9fdbc8_Out_3_Float, _Multiply_bb0edd30580dba8b89213d9c5b1ef857_Out_2_Float);
|
|
float _Multiply_484dd7b77d58aa88bf99c82cfe77c774_Out_2_Float;
|
|
Unity_Multiply_float_float(_Split_2ada595651635e8d97bf4b82f717fcc6_G_2_Float, _Multiply_bb0edd30580dba8b89213d9c5b1ef857_Out_2_Float, _Multiply_484dd7b77d58aa88bf99c82cfe77c774_Out_2_Float);
|
|
float _Saturate_d39fa9bab8cc8a8fa35db28d4dbc74ab_Out_1_Float;
|
|
Unity_Saturate_float(_Multiply_484dd7b77d58aa88bf99c82cfe77c774_Out_2_Float, _Saturate_d39fa9bab8cc8a8fa35db28d4dbc74ab_Out_1_Float);
|
|
float _Multiply_6957741a4923cc8db84ac72df2e194a8_Out_2_Float;
|
|
Unity_Multiply_float_float(_Clamp_07a501c22c6e188199bed73412ac8926_Out_3_Float, _Saturate_d39fa9bab8cc8a8fa35db28d4dbc74ab_Out_1_Float, _Multiply_6957741a4923cc8db84ac72df2e194a8_Out_2_Float);
|
|
float _Branch_3ccf365d359214809d30b6430d863e3f_Out_3_Float;
|
|
Unity_Branch_float(_Property_cb0b6597aee47880b32e852aaa0e4a71_Out_0_Boolean, _Multiply_6957741a4923cc8db84ac72df2e194a8_Out_2_Float, _Clamp_07a501c22c6e188199bed73412ac8926_Out_3_Float, _Branch_3ccf365d359214809d30b6430d863e3f_Out_3_Float);
|
|
float3 _Lerp_ee1b6587de2afe82942e8476d303d598_Out_3_Vector3;
|
|
Unity_Lerp_float3(_BlendOverlayBaseColor_369c0b6a02e62b809dc5c6ac1efddde2_OutVector4_1_Vector3, _BlendOverlayBaseColor_ec1f397271cc818abdb95188914e6b4d_OutVector4_1_Vector3, (_Branch_3ccf365d359214809d30b6430d863e3f_Out_3_Float.xxx), _Lerp_ee1b6587de2afe82942e8476d303d598_Out_3_Vector3);
|
|
float4 _Property_c500db71e51fef8daff29f346c122e57_Out_0_Vector4 = _WetColor;
|
|
float3 _Multiply_89461014b078f787a0724725c54fb934_Out_2_Vector3;
|
|
Unity_Multiply_float3_float3((_Property_c500db71e51fef8daff29f346c122e57_Out_0_Vector4.xyz), _Lerp_ee1b6587de2afe82942e8476d303d598_Out_3_Vector3, _Multiply_89461014b078f787a0724725c54fb934_Out_2_Vector3);
|
|
float _OneMinus_e16dfb812ec64b8891c541171687142f_Out_1_Float;
|
|
Unity_OneMinus_float(_Split_2ada595651635e8d97bf4b82f717fcc6_R_1_Float, _OneMinus_e16dfb812ec64b8891c541171687142f_Out_1_Float);
|
|
float3 _Lerp_43bc7a9493df5a829abf080ee4ad3298_Out_3_Vector3;
|
|
Unity_Lerp_float3(_Lerp_ee1b6587de2afe82942e8476d303d598_Out_3_Vector3, _Multiply_89461014b078f787a0724725c54fb934_Out_2_Vector3, (_OneMinus_e16dfb812ec64b8891c541171687142f_Out_1_Float.xxx), _Lerp_43bc7a9493df5a829abf080ee4ad3298_Out_3_Vector3);
|
|
UnityTexture2D _Property_8e909eb873a4cd8e9af98a90a84fdde8_Out_0_Texture2D = UnityBuildTexture2DStructNoScale(_BaseMaskMap);
|
|
Bindings_TriplanarNM_bc609ed95f52591469ab35dbfe0efcea_float _TriplanarNM_52e6c67b7de4708f80a463a880607c97;
|
|
_TriplanarNM_52e6c67b7de4708f80a463a880607c97.WorldSpaceNormal = IN.WorldSpaceNormal;
|
|
_TriplanarNM_52e6c67b7de4708f80a463a880607c97.AbsoluteWorldSpacePosition = IN.AbsoluteWorldSpacePosition;
|
|
float4 _TriplanarNM_52e6c67b7de4708f80a463a880607c97_XYZ_1_Vector4;
|
|
float4 _TriplanarNM_52e6c67b7de4708f80a463a880607c97_XZ_2_Vector4;
|
|
float4 _TriplanarNM_52e6c67b7de4708f80a463a880607c97_YZ_3_Vector4;
|
|
float4 _TriplanarNM_52e6c67b7de4708f80a463a880607c97_XY_4_Vector4;
|
|
SG_TriplanarNM_bc609ed95f52591469ab35dbfe0efcea_float(_Property_8e909eb873a4cd8e9af98a90a84fdde8_Out_0_Texture2D, (_Divide_6a90cebe78e620828de587523daaa7e6_Out_2_Vector4).x, _Property_3539de8c698c2981bb3c088d4ec52201_Out_0_Float, UnityBuildSamplerStateStruct(SamplerState_Linear_Repeat_Aniso8), _TriplanarNM_52e6c67b7de4708f80a463a880607c97, _TriplanarNM_52e6c67b7de4708f80a463a880607c97_XYZ_1_Vector4, _TriplanarNM_52e6c67b7de4708f80a463a880607c97_XZ_2_Vector4, _TriplanarNM_52e6c67b7de4708f80a463a880607c97_YZ_3_Vector4, _TriplanarNM_52e6c67b7de4708f80a463a880607c97_XY_4_Vector4);
|
|
float _Split_79d9d761d63eaa8c97fb3cb7fae0c380_R_1_Float = _TriplanarNM_52e6c67b7de4708f80a463a880607c97_XYZ_1_Vector4[0];
|
|
float _Split_79d9d761d63eaa8c97fb3cb7fae0c380_G_2_Float = _TriplanarNM_52e6c67b7de4708f80a463a880607c97_XYZ_1_Vector4[1];
|
|
float _Split_79d9d761d63eaa8c97fb3cb7fae0c380_B_3_Float = _TriplanarNM_52e6c67b7de4708f80a463a880607c97_XYZ_1_Vector4[2];
|
|
float _Split_79d9d761d63eaa8c97fb3cb7fae0c380_A_4_Float = _TriplanarNM_52e6c67b7de4708f80a463a880607c97_XYZ_1_Vector4[3];
|
|
float _Property_b97916566d1fc587b95e8ec7fe8bd775_Out_0_Float = _BaseMetallic;
|
|
float _Multiply_d0c8d83444dbe38588583551936c7394_Out_2_Float;
|
|
Unity_Multiply_float_float(_Split_79d9d761d63eaa8c97fb3cb7fae0c380_R_1_Float, _Property_b97916566d1fc587b95e8ec7fe8bd775_Out_0_Float, _Multiply_d0c8d83444dbe38588583551936c7394_Out_2_Float);
|
|
float _Property_b187bbc548f3378caa8c964ca81707ca_Out_0_Float = _BaseAORemapMin;
|
|
float _Property_f06b327a4a8a7881a968eb399edf1d5c_Out_0_Float = _BaseAORemapMax;
|
|
float2 _Vector2_e267d722f88ada8da2d7edf8f7c0261d_Out_0_Vector2 = float2(_Property_b187bbc548f3378caa8c964ca81707ca_Out_0_Float, _Property_f06b327a4a8a7881a968eb399edf1d5c_Out_0_Float);
|
|
float _Remap_ad3c26564c54aa8cbb2f81aa114b3b78_Out_3_Float;
|
|
Unity_Remap_float(_Split_79d9d761d63eaa8c97fb3cb7fae0c380_G_2_Float, float2 (0, 1), _Vector2_e267d722f88ada8da2d7edf8f7c0261d_Out_0_Vector2, _Remap_ad3c26564c54aa8cbb2f81aa114b3b78_Out_3_Float);
|
|
float _Property_9a46e81c228dd0858cfdfc248fcb5efd_Out_0_Float = _BaseSmoothnessRemapMin;
|
|
float _Property_4bb3b70a3720ae8ea49e0f195b665d1f_Out_0_Float = _BaseSmoothnessRemapMax;
|
|
float2 _Vector2_6cef82af5d99208da4f2447a8ae60b4b_Out_0_Vector2 = float2(_Property_9a46e81c228dd0858cfdfc248fcb5efd_Out_0_Float, _Property_4bb3b70a3720ae8ea49e0f195b665d1f_Out_0_Float);
|
|
float _Remap_e30adbbf5d116285964ef079df15b895_Out_3_Float;
|
|
Unity_Remap_float(_Split_79d9d761d63eaa8c97fb3cb7fae0c380_A_4_Float, float2 (0, 1), _Vector2_6cef82af5d99208da4f2447a8ae60b4b_Out_0_Vector2, _Remap_e30adbbf5d116285964ef079df15b895_Out_3_Float);
|
|
float _Multiply_794172f65d2acd8981bc0e2ecc71376e_Out_2_Float;
|
|
Unity_Multiply_float_float(_SampleTexture2D_4bd08411faa60c828847f2247f06a809_B_6_Float, 2, _Multiply_794172f65d2acd8981bc0e2ecc71376e_Out_2_Float);
|
|
float _Add_dedefe53d91ea08c81d7a6d9071b0263_Out_2_Float;
|
|
Unity_Add_float(_Multiply_794172f65d2acd8981bc0e2ecc71376e_Out_2_Float, float(-1), _Add_dedefe53d91ea08c81d7a6d9071b0263_Out_2_Float);
|
|
float _Property_039bed9aac95ec8fa510fea3c4904280_Out_0_Float = _DetailSmoothnessScale;
|
|
float _Multiply_eb0a55c9be8cee86b9847c24f0e5be60_Out_2_Float;
|
|
Unity_Multiply_float_float(_Add_dedefe53d91ea08c81d7a6d9071b0263_Out_2_Float, _Property_039bed9aac95ec8fa510fea3c4904280_Out_0_Float, _Multiply_eb0a55c9be8cee86b9847c24f0e5be60_Out_2_Float);
|
|
float _Saturate_ca849f42c1cc238cb8fb1eb04fbfb9dd_Out_1_Float;
|
|
Unity_Saturate_float(_Multiply_eb0a55c9be8cee86b9847c24f0e5be60_Out_2_Float, _Saturate_ca849f42c1cc238cb8fb1eb04fbfb9dd_Out_1_Float);
|
|
float _Absolute_bc7994d4f833e382b37b5718ee583259_Out_1_Float;
|
|
Unity_Absolute_float(_Saturate_ca849f42c1cc238cb8fb1eb04fbfb9dd_Out_1_Float, _Absolute_bc7994d4f833e382b37b5718ee583259_Out_1_Float);
|
|
Bindings_BlendOverlayDetailSmoothness_06e12138dc89c0040b45a57abe520a1a_float _BlendOverlayDetailSmoothness_5a03404db5a34885a089f1aee363667f;
|
|
float _BlendOverlayDetailSmoothness_5a03404db5a34885a089f1aee363667f_SmoothnessOverlay_1_Float;
|
|
SG_BlendOverlayDetailSmoothness_06e12138dc89c0040b45a57abe520a1a_float(_Remap_e30adbbf5d116285964ef079df15b895_Out_3_Float, _Add_dedefe53d91ea08c81d7a6d9071b0263_Out_2_Float, _Absolute_bc7994d4f833e382b37b5718ee583259_Out_1_Float, _BlendOverlayDetailSmoothness_5a03404db5a34885a089f1aee363667f, _BlendOverlayDetailSmoothness_5a03404db5a34885a089f1aee363667f_SmoothnessOverlay_1_Float);
|
|
float _Saturate_3d6c6d852202408cb9b11aac8a566c89_Out_1_Float;
|
|
Unity_Saturate_float(_BlendOverlayDetailSmoothness_5a03404db5a34885a089f1aee363667f_SmoothnessOverlay_1_Float, _Saturate_3d6c6d852202408cb9b11aac8a566c89_Out_1_Float);
|
|
float3 _Vector3_8ed406a0096de4818282676bf24b1a85_Out_0_Vector3 = float3(_Multiply_d0c8d83444dbe38588583551936c7394_Out_2_Float, _Remap_ad3c26564c54aa8cbb2f81aa114b3b78_Out_3_Float, _Saturate_3d6c6d852202408cb9b11aac8a566c89_Out_1_Float);
|
|
float _Split_2ec5937af5023a8295e3858d32b193d5_R_1_Float = _Vector3_8ed406a0096de4818282676bf24b1a85_Out_0_Vector3[0];
|
|
float _Split_2ec5937af5023a8295e3858d32b193d5_G_2_Float = _Vector3_8ed406a0096de4818282676bf24b1a85_Out_0_Vector3[1];
|
|
float _Split_2ec5937af5023a8295e3858d32b193d5_B_3_Float = _Vector3_8ed406a0096de4818282676bf24b1a85_Out_0_Vector3[2];
|
|
float _Split_2ec5937af5023a8295e3858d32b193d5_A_4_Float = 0;
|
|
UnityTexture2D _Property_0f50abb140882d848d9fc7be8e3468dc_Out_0_Texture2D = UnityBuildTexture2DStructNoScale(_ShapeAO);
|
|
float4 _SampleTexture2D_33392602b94694898ec8227a89f13cc9_RGBA_0_Vector4 = SAMPLE_TEXTURE2D(_Property_0f50abb140882d848d9fc7be8e3468dc_Out_0_Texture2D.tex, _Property_0f50abb140882d848d9fc7be8e3468dc_Out_0_Texture2D.samplerstate, _Property_0f50abb140882d848d9fc7be8e3468dc_Out_0_Texture2D.GetTransformedUV(IN.uv0.xy) );
|
|
float _SampleTexture2D_33392602b94694898ec8227a89f13cc9_R_4_Float = _SampleTexture2D_33392602b94694898ec8227a89f13cc9_RGBA_0_Vector4.r;
|
|
float _SampleTexture2D_33392602b94694898ec8227a89f13cc9_G_5_Float = _SampleTexture2D_33392602b94694898ec8227a89f13cc9_RGBA_0_Vector4.g;
|
|
float _SampleTexture2D_33392602b94694898ec8227a89f13cc9_B_6_Float = _SampleTexture2D_33392602b94694898ec8227a89f13cc9_RGBA_0_Vector4.b;
|
|
float _SampleTexture2D_33392602b94694898ec8227a89f13cc9_A_7_Float = _SampleTexture2D_33392602b94694898ec8227a89f13cc9_RGBA_0_Vector4.a;
|
|
float _Property_a51c4b6d05e6718d919aadcf26153350_Out_0_Float = _ShapeAORemapMin;
|
|
float _Property_973fbc42b7a69088b9fc2c502945f369_Out_0_Float = _ShapeAORemapMax;
|
|
float2 _Vector2_a73753c5a8c4fa828d2eb25d4fb8b399_Out_0_Vector2 = float2(_Property_a51c4b6d05e6718d919aadcf26153350_Out_0_Float, _Property_973fbc42b7a69088b9fc2c502945f369_Out_0_Float);
|
|
float _Remap_270e7e207f303487bc04348b1b54db69_Out_3_Float;
|
|
Unity_Remap_float(_SampleTexture2D_33392602b94694898ec8227a89f13cc9_G_5_Float, float2 (0, 1), _Vector2_a73753c5a8c4fa828d2eb25d4fb8b399_Out_0_Vector2, _Remap_270e7e207f303487bc04348b1b54db69_Out_3_Float);
|
|
float _Minimum_307d1a8c4f5c6a87a1bbc658a5811679_Out_2_Float;
|
|
Unity_Minimum_float(_Split_2ec5937af5023a8295e3858d32b193d5_G_2_Float, _Remap_270e7e207f303487bc04348b1b54db69_Out_3_Float, _Minimum_307d1a8c4f5c6a87a1bbc658a5811679_Out_2_Float);
|
|
float3 _Vector3_fac10bf467f5ff82b4f071ba165bf458_Out_0_Vector3 = float3(_Split_2ec5937af5023a8295e3858d32b193d5_R_1_Float, _Minimum_307d1a8c4f5c6a87a1bbc658a5811679_Out_2_Float, _Split_2ec5937af5023a8295e3858d32b193d5_B_3_Float);
|
|
float _Property_fa6937565be49684915e6bb999529949_Out_0_Float = _CoverMetallic;
|
|
float _Multiply_d0ecb787fa289f8f9d3c2988d60f18d3_Out_2_Float;
|
|
Unity_Multiply_float_float(_Split_fe834aed1172f284a73d2d6810bdb696_R_1_Float, _Property_fa6937565be49684915e6bb999529949_Out_0_Float, _Multiply_d0ecb787fa289f8f9d3c2988d60f18d3_Out_2_Float);
|
|
float _Property_8f5ca0ba38d2a4858c1b4e44f6a375b4_Out_0_Float = _CoverAORemapMin;
|
|
float _Property_a15ef0fe46e1d88f9e20df6605bd1499_Out_0_Float = _CoverAORemapMax;
|
|
float2 _Vector2_969d809c2de99f89959cc4526a665db9_Out_0_Vector2 = float2(_Property_8f5ca0ba38d2a4858c1b4e44f6a375b4_Out_0_Float, _Property_a15ef0fe46e1d88f9e20df6605bd1499_Out_0_Float);
|
|
float _Remap_1b6065f44329038594e2d0cf001fa138_Out_3_Float;
|
|
Unity_Remap_float(_Split_fe834aed1172f284a73d2d6810bdb696_G_2_Float, float2 (0, 1), _Vector2_969d809c2de99f89959cc4526a665db9_Out_0_Vector2, _Remap_1b6065f44329038594e2d0cf001fa138_Out_3_Float);
|
|
float _Property_0fde68fd9824db8e9f5b4b0daff90270_Out_0_Float = _CoverSmoothnessRemapMin;
|
|
float _Property_abad1da00caf99869e0c9ca2926c76bd_Out_0_Float = _CoverSmoothnessRemapMax;
|
|
float2 _Vector2_1aa81c2ad7cc268caa834889569ce556_Out_0_Vector2 = float2(_Property_0fde68fd9824db8e9f5b4b0daff90270_Out_0_Float, _Property_abad1da00caf99869e0c9ca2926c76bd_Out_0_Float);
|
|
float _Remap_4948cd1fb38399888e9567ee2abb8acd_Out_3_Float;
|
|
Unity_Remap_float(_Split_fe834aed1172f284a73d2d6810bdb696_A_4_Float, float2 (0, 1), _Vector2_1aa81c2ad7cc268caa834889569ce556_Out_0_Vector2, _Remap_4948cd1fb38399888e9567ee2abb8acd_Out_3_Float);
|
|
float _Multiply_d3e207dba42f1984aacff3c1bf4eef0b_Out_2_Float;
|
|
Unity_Multiply_float_float(_SampleTexture2D_4bd08411faa60c828847f2247f06a809_B_6_Float, 2, _Multiply_d3e207dba42f1984aacff3c1bf4eef0b_Out_2_Float);
|
|
float _Add_0299d632f81fff8f969a0eed5f77397c_Out_2_Float;
|
|
Unity_Add_float(_Multiply_d3e207dba42f1984aacff3c1bf4eef0b_Out_2_Float, float(-1), _Add_0299d632f81fff8f969a0eed5f77397c_Out_2_Float);
|
|
float _Property_a2c7556e96b60b8e90cb5145ca6f9dde_Out_0_Float = _DetailCoverSmoothnessScale;
|
|
float _Multiply_d340fbee0985958dbb66555a73bd733c_Out_2_Float;
|
|
Unity_Multiply_float_float(_Add_0299d632f81fff8f969a0eed5f77397c_Out_2_Float, _Property_a2c7556e96b60b8e90cb5145ca6f9dde_Out_0_Float, _Multiply_d340fbee0985958dbb66555a73bd733c_Out_2_Float);
|
|
float _Saturate_2c0cc920be0ca88e937ec108b38f5fde_Out_1_Float;
|
|
Unity_Saturate_float(_Multiply_d340fbee0985958dbb66555a73bd733c_Out_2_Float, _Saturate_2c0cc920be0ca88e937ec108b38f5fde_Out_1_Float);
|
|
float _Absolute_3f81290e941e378283f7151c4a0731e2_Out_1_Float;
|
|
Unity_Absolute_float(_Saturate_2c0cc920be0ca88e937ec108b38f5fde_Out_1_Float, _Absolute_3f81290e941e378283f7151c4a0731e2_Out_1_Float);
|
|
Bindings_BlendOverlayDetailSmoothness_06e12138dc89c0040b45a57abe520a1a_float _BlendOverlayDetailSmoothness_e7a4fbe98378f084bd09f6e5d90e1cb8;
|
|
float _BlendOverlayDetailSmoothness_e7a4fbe98378f084bd09f6e5d90e1cb8_SmoothnessOverlay_1_Float;
|
|
SG_BlendOverlayDetailSmoothness_06e12138dc89c0040b45a57abe520a1a_float(_Remap_4948cd1fb38399888e9567ee2abb8acd_Out_3_Float, _Add_0299d632f81fff8f969a0eed5f77397c_Out_2_Float, _Absolute_3f81290e941e378283f7151c4a0731e2_Out_1_Float, _BlendOverlayDetailSmoothness_e7a4fbe98378f084bd09f6e5d90e1cb8, _BlendOverlayDetailSmoothness_e7a4fbe98378f084bd09f6e5d90e1cb8_SmoothnessOverlay_1_Float);
|
|
float _Saturate_9091ea9d9924c682ad6b94d3322ee822_Out_1_Float;
|
|
Unity_Saturate_float(_BlendOverlayDetailSmoothness_e7a4fbe98378f084bd09f6e5d90e1cb8_SmoothnessOverlay_1_Float, _Saturate_9091ea9d9924c682ad6b94d3322ee822_Out_1_Float);
|
|
float3 _Vector3_93bafe600474e7819ebc13e534b986bf_Out_0_Vector3 = float3(_Multiply_d0ecb787fa289f8f9d3c2988d60f18d3_Out_2_Float, _Remap_1b6065f44329038594e2d0cf001fa138_Out_3_Float, _Saturate_9091ea9d9924c682ad6b94d3322ee822_Out_1_Float);
|
|
float _Split_6ec9cc5e56f3f68ba37ff91557979c18_R_1_Float = _Vector3_93bafe600474e7819ebc13e534b986bf_Out_0_Vector3[0];
|
|
float _Split_6ec9cc5e56f3f68ba37ff91557979c18_G_2_Float = _Vector3_93bafe600474e7819ebc13e534b986bf_Out_0_Vector3[1];
|
|
float _Split_6ec9cc5e56f3f68ba37ff91557979c18_B_3_Float = _Vector3_93bafe600474e7819ebc13e534b986bf_Out_0_Vector3[2];
|
|
float _Split_6ec9cc5e56f3f68ba37ff91557979c18_A_4_Float = 0;
|
|
float _Property_ca9c61425ece6b8c909c06b1e2738f1a_Out_0_Float = _CoverShapeAORemapMin;
|
|
float _Property_b9be92f1612c908d80643f0e96015b33_Out_0_Float = _CoverShapeAORemapMax;
|
|
float2 _Vector2_9b862c4e147d1082afad3606339d2130_Out_0_Vector2 = float2(_Property_ca9c61425ece6b8c909c06b1e2738f1a_Out_0_Float, _Property_b9be92f1612c908d80643f0e96015b33_Out_0_Float);
|
|
float _Remap_c1f0022add809b83bad7b493177bddb7_Out_3_Float;
|
|
Unity_Remap_float(_SampleTexture2D_33392602b94694898ec8227a89f13cc9_G_5_Float, float2 (0, 1), _Vector2_9b862c4e147d1082afad3606339d2130_Out_0_Vector2, _Remap_c1f0022add809b83bad7b493177bddb7_Out_3_Float);
|
|
float _Minimum_595c2f31bb0ec588977a2b9ea46bf6b0_Out_2_Float;
|
|
Unity_Minimum_float(_Split_6ec9cc5e56f3f68ba37ff91557979c18_G_2_Float, _Remap_c1f0022add809b83bad7b493177bddb7_Out_3_Float, _Minimum_595c2f31bb0ec588977a2b9ea46bf6b0_Out_2_Float);
|
|
float3 _Vector3_6cb5b2c4675bb28cb41ea88b6eaa2aff_Out_0_Vector3 = float3(_Split_6ec9cc5e56f3f68ba37ff91557979c18_R_1_Float, _Minimum_595c2f31bb0ec588977a2b9ea46bf6b0_Out_2_Float, _Split_6ec9cc5e56f3f68ba37ff91557979c18_B_3_Float);
|
|
float3 _Lerp_fa40b54f3d5a1a8a95f6306e837b9338_Out_3_Vector3;
|
|
Unity_Lerp_float3(_Vector3_fac10bf467f5ff82b4f071ba165bf458_Out_0_Vector3, _Vector3_6cb5b2c4675bb28cb41ea88b6eaa2aff_Out_0_Vector3, (_Branch_3ccf365d359214809d30b6430d863e3f_Out_3_Float.xxx), _Lerp_fa40b54f3d5a1a8a95f6306e837b9338_Out_3_Vector3);
|
|
float _Split_c4a5352a58a4f88fb40410f956825dc6_R_1_Float = _Lerp_fa40b54f3d5a1a8a95f6306e837b9338_Out_3_Vector3[0];
|
|
float _Split_c4a5352a58a4f88fb40410f956825dc6_G_2_Float = _Lerp_fa40b54f3d5a1a8a95f6306e837b9338_Out_3_Vector3[1];
|
|
float _Split_c4a5352a58a4f88fb40410f956825dc6_B_3_Float = _Lerp_fa40b54f3d5a1a8a95f6306e837b9338_Out_3_Vector3[2];
|
|
float _Split_c4a5352a58a4f88fb40410f956825dc6_A_4_Float = 0;
|
|
float _Property_7861e880056eb88ab923a2ff5b12179d_Out_0_Float = _WetSmoothness;
|
|
float _Lerp_ee63160826cff4869f0e63568dd6f8b7_Out_3_Float;
|
|
Unity_Lerp_float(_Split_c4a5352a58a4f88fb40410f956825dc6_B_3_Float, _Property_7861e880056eb88ab923a2ff5b12179d_Out_0_Float, _OneMinus_e16dfb812ec64b8891c541171687142f_Out_1_Float, _Lerp_ee63160826cff4869f0e63568dd6f8b7_Out_3_Float);
|
|
float _Property_1c389d922d4fba86bc62c7d42ac8643d_Out_0_Float = _CoverNormalScale;
|
|
float3 _NormalStrength_db3de71f618fee878c84a13374c7adc4_Out_2_Vector3;
|
|
Unity_NormalStrength_float((_TriplanarNMn_ba7e211dd8095589a2939b5b239ca8e0_XYZ_1_Vector4.xyz), _Property_1c389d922d4fba86bc62c7d42ac8643d_Out_0_Float, _NormalStrength_db3de71f618fee878c84a13374c7adc4_Out_2_Vector3);
|
|
float3 _NormalBlend_b2e537e7a99f9280ba682b47daf3c5e3_Out_2_Vector3;
|
|
Unity_NormalBlend_float(_NormalStrength_db3de71f618fee878c84a13374c7adc4_Out_2_Vector3, _NormalStrength_401cd5af500bd68dbc9bca19d548d0db_Out_2_Vector3, _NormalBlend_b2e537e7a99f9280ba682b47daf3c5e3_Out_2_Vector3);
|
|
float2 _Vector2_b87489f8633d268598edb76163057164_Out_0_Vector2 = float2(_SampleTexture2D_4bd08411faa60c828847f2247f06a809_A_7_Float, _SampleTexture2D_4bd08411faa60c828847f2247f06a809_G_5_Float);
|
|
float2 _Multiply_95e603bb6d4bd7809de0ae42c8f45058_Out_2_Vector2;
|
|
Unity_Multiply_float2_float2(_Vector2_b87489f8633d268598edb76163057164_Out_0_Vector2, float2(2, 2), _Multiply_95e603bb6d4bd7809de0ae42c8f45058_Out_2_Vector2);
|
|
float2 _Add_c116ac3906ccf68d82dd5b73d0f5659a_Out_2_Vector2;
|
|
Unity_Add_float2(_Multiply_95e603bb6d4bd7809de0ae42c8f45058_Out_2_Vector2, float2(-1, -1), _Add_c116ac3906ccf68d82dd5b73d0f5659a_Out_2_Vector2);
|
|
float _Property_988acb131fd330878b4ac0672366ad90_Out_0_Float = _DetailCoverNormalScale;
|
|
float2 _Multiply_6de1a79215e1928f9f3fc3293df74f88_Out_2_Vector2;
|
|
Unity_Multiply_float2_float2(_Add_c116ac3906ccf68d82dd5b73d0f5659a_Out_2_Vector2, (_Property_988acb131fd330878b4ac0672366ad90_Out_0_Float.xx), _Multiply_6de1a79215e1928f9f3fc3293df74f88_Out_2_Vector2);
|
|
float _Split_9ce53bb7a65f16809b6a95d82286186e_R_1_Float = _Multiply_6de1a79215e1928f9f3fc3293df74f88_Out_2_Vector2[0];
|
|
float _Split_9ce53bb7a65f16809b6a95d82286186e_G_2_Float = _Multiply_6de1a79215e1928f9f3fc3293df74f88_Out_2_Vector2[1];
|
|
float _Split_9ce53bb7a65f16809b6a95d82286186e_B_3_Float = 0;
|
|
float _Split_9ce53bb7a65f16809b6a95d82286186e_A_4_Float = 0;
|
|
float _DotProduct_8912687db556b6819d2a38ba8511a7ae_Out_2_Float;
|
|
Unity_DotProduct_float2(_Multiply_6de1a79215e1928f9f3fc3293df74f88_Out_2_Vector2, _Multiply_6de1a79215e1928f9f3fc3293df74f88_Out_2_Vector2, _DotProduct_8912687db556b6819d2a38ba8511a7ae_Out_2_Float);
|
|
float _Saturate_013ea9a02a1ff18992540b270836cc73_Out_1_Float;
|
|
Unity_Saturate_float(_DotProduct_8912687db556b6819d2a38ba8511a7ae_Out_2_Float, _Saturate_013ea9a02a1ff18992540b270836cc73_Out_1_Float);
|
|
float _OneMinus_eefd2695dc7d77838984fc25a1c00b0b_Out_1_Float;
|
|
Unity_OneMinus_float(_Saturate_013ea9a02a1ff18992540b270836cc73_Out_1_Float, _OneMinus_eefd2695dc7d77838984fc25a1c00b0b_Out_1_Float);
|
|
float _SquareRoot_1d25cc71b4ce9286af1666a96ae6ac5a_Out_1_Float;
|
|
Unity_SquareRoot_float(_OneMinus_eefd2695dc7d77838984fc25a1c00b0b_Out_1_Float, _SquareRoot_1d25cc71b4ce9286af1666a96ae6ac5a_Out_1_Float);
|
|
float3 _Vector3_c3d9c7e92a1c5b8ea5650ab3bb421c27_Out_0_Vector3 = float3(_Split_9ce53bb7a65f16809b6a95d82286186e_R_1_Float, _Split_9ce53bb7a65f16809b6a95d82286186e_G_2_Float, _SquareRoot_1d25cc71b4ce9286af1666a96ae6ac5a_Out_1_Float);
|
|
float3 _NormalBlend_8e1d1c87f8c12b87b64883533bfa43be_Out_2_Vector3;
|
|
Unity_NormalBlend_float(_NormalBlend_b2e537e7a99f9280ba682b47daf3c5e3_Out_2_Vector3, _Vector3_c3d9c7e92a1c5b8ea5650ab3bb421c27_Out_0_Vector3, _NormalBlend_8e1d1c87f8c12b87b64883533bfa43be_Out_2_Vector3);
|
|
float3 _Lerp_48cd568fef7d358b8d65b989db745e6c_Out_3_Vector3;
|
|
Unity_Lerp_float3(_NormalBlend_4242e1b4a785378aa59dd49e9d993ffc_Out_2_Vector3, _NormalBlend_8e1d1c87f8c12b87b64883533bfa43be_Out_2_Vector3, (_Branch_3ccf365d359214809d30b6430d863e3f_Out_3_Float.xxx), _Lerp_48cd568fef7d358b8d65b989db745e6c_Out_3_Vector3);
|
|
surface.BaseColor = _Lerp_43bc7a9493df5a829abf080ee4ad3298_Out_3_Vector3;
|
|
surface.Emission = float3(0, 0, 0);
|
|
surface.Alpha = float(1);
|
|
surface.BentNormal = IN.TangentSpaceNormal;
|
|
surface.Smoothness = _Lerp_ee63160826cff4869f0e63568dd6f8b7_Out_3_Float;
|
|
surface.Occlusion = _Split_c4a5352a58a4f88fb40410f956825dc6_G_2_Float;
|
|
surface.NormalTS = _Lerp_48cd568fef7d358b8d65b989db745e6c_Out_3_Vector3;
|
|
surface.Metallic = _Split_c4a5352a58a4f88fb40410f956825dc6_R_1_Float;
|
|
return surface;
|
|
}
|
|
|
|
// --------------------------------------------------
|
|
// Build Graph Inputs
|
|
#ifdef HAVE_VFX_MODIFICATION
|
|
#define VFX_SRP_ATTRIBUTES AttributesMesh
|
|
#define VaryingsMeshType VaryingsMeshToPS
|
|
#define VFX_SRP_VARYINGS VaryingsMeshType
|
|
#define VFX_SRP_SURFACE_INPUTS FragInputs
|
|
#endif
|
|
SurfaceDescriptionInputs FragInputsToSurfaceDescriptionInputs(FragInputs input, float3 viewWS)
|
|
{
|
|
SurfaceDescriptionInputs output;
|
|
ZERO_INITIALIZE(SurfaceDescriptionInputs, output);
|
|
|
|
output.WorldSpaceNormal = normalize(input.tangentToWorld[2].xyz);
|
|
#if defined(SHADER_STAGE_RAY_TRACING)
|
|
#else
|
|
#endif
|
|
output.TangentSpaceNormal = float3(0.0f, 0.0f, 1.0f);
|
|
output.WorldSpaceTangent = input.tangentToWorld[0].xyz;
|
|
output.WorldSpaceBiTangent = input.tangentToWorld[1].xyz;
|
|
output.AbsoluteWorldSpacePosition = GetAbsolutePositionWS(input.positionRWS);
|
|
|
|
#if UNITY_UV_STARTS_AT_TOP
|
|
#else
|
|
#endif
|
|
|
|
|
|
output.uv0 = input.texCoord0;
|
|
output.VertexColor = input.color;
|
|
|
|
// splice point to copy frag inputs custom interpolator pack into the SDI
|
|
/* WARNING: $splice Could not find named fragment 'CustomInterpolatorCopyToSDI' */
|
|
|
|
return output;
|
|
}
|
|
|
|
// --------------------------------------------------
|
|
// Build Surface Data (Specific Material)
|
|
|
|
void ApplyDecalToSurfaceDataNoNormal(DecalSurfaceData decalSurfaceData, inout SurfaceData surfaceData);
|
|
|
|
void ApplyDecalAndGetNormal(FragInputs fragInputs, PositionInputs posInput, SurfaceDescription surfaceDescription,
|
|
inout SurfaceData surfaceData)
|
|
{
|
|
float3 doubleSidedConstants = GetDoubleSidedConstants();
|
|
|
|
#ifdef DECAL_NORMAL_BLENDING
|
|
// SG nodes don't ouptut surface gradients, so if decals require surf grad blending, we have to convert
|
|
// the normal to gradient before applying the decal. We then have to resolve the gradient back to world space
|
|
float3 normalTS;
|
|
|
|
normalTS = SurfaceGradientFromTangentSpaceNormalAndFromTBN(surfaceDescription.NormalTS,
|
|
fragInputs.tangentToWorld[0], fragInputs.tangentToWorld[1]);
|
|
|
|
|
|
#if HAVE_DECALS
|
|
if (_EnableDecals)
|
|
{
|
|
float alpha = 1.0;
|
|
alpha = surfaceDescription.Alpha;
|
|
|
|
DecalSurfaceData decalSurfaceData = GetDecalSurfaceData(posInput, fragInputs, alpha);
|
|
ApplyDecalToSurfaceNormal(decalSurfaceData, fragInputs.tangentToWorld[2], normalTS);
|
|
ApplyDecalToSurfaceDataNoNormal(decalSurfaceData, surfaceData);
|
|
}
|
|
#endif
|
|
|
|
GetNormalWS_SG(fragInputs, normalTS, surfaceData.normalWS, doubleSidedConstants);
|
|
#else
|
|
// normal delivered to master node
|
|
GetNormalWS(fragInputs, surfaceDescription.NormalTS, surfaceData.normalWS, doubleSidedConstants);
|
|
|
|
#if HAVE_DECALS
|
|
if (_EnableDecals)
|
|
{
|
|
float alpha = 1.0;
|
|
alpha = surfaceDescription.Alpha;
|
|
|
|
// Both uses and modifies 'surfaceData.normalWS'.
|
|
DecalSurfaceData decalSurfaceData = GetDecalSurfaceData(posInput, fragInputs, alpha);
|
|
ApplyDecalToSurfaceNormal(decalSurfaceData, surfaceData.normalWS.xyz);
|
|
ApplyDecalToSurfaceDataNoNormal(decalSurfaceData, surfaceData);
|
|
}
|
|
#endif
|
|
#endif
|
|
}
|
|
void BuildSurfaceData(FragInputs fragInputs, inout SurfaceDescription surfaceDescription, float3 V, PositionInputs posInput, out SurfaceData surfaceData, out float3 bentNormalWS)
|
|
{
|
|
ZERO_INITIALIZE(SurfaceData, surfaceData);
|
|
|
|
// specularOcclusion need to be init ahead of decal to quiet the compiler that modify the SurfaceData struct
|
|
// however specularOcclusion can come from the graph, so need to be init here so it can be override.
|
|
surfaceData.specularOcclusion = 1.0;
|
|
surfaceData.thickness = 0.0;
|
|
|
|
surfaceData.baseColor = surfaceDescription.BaseColor;
|
|
surfaceData.perceptualSmoothness = surfaceDescription.Smoothness;
|
|
surfaceData.ambientOcclusion = surfaceDescription.Occlusion;
|
|
surfaceData.metallic = surfaceDescription.Metallic;
|
|
|
|
#if defined(_REFRACTION_PLANE) || defined(_REFRACTION_SPHERE) || defined(_REFRACTION_THIN)
|
|
if (_EnableSSRefraction)
|
|
{
|
|
|
|
surfaceData.transmittanceMask = (1.0 - surfaceDescription.Alpha);
|
|
surfaceDescription.Alpha = 1.0;
|
|
}
|
|
else
|
|
{
|
|
surfaceData.ior = 1.0;
|
|
surfaceData.transmittanceColor = float3(1.0, 1.0, 1.0);
|
|
surfaceData.atDistance = 1.0;
|
|
surfaceData.transmittanceMask = 0.0;
|
|
surfaceDescription.Alpha = 1.0;
|
|
}
|
|
#else
|
|
surfaceData.ior = 1.0;
|
|
surfaceData.transmittanceColor = float3(1.0, 1.0, 1.0);
|
|
surfaceData.atDistance = 1.0;
|
|
surfaceData.transmittanceMask = 0.0;
|
|
#endif
|
|
|
|
// These static material feature allow compile time optimization
|
|
surfaceData.materialFeatures = MATERIALFEATUREFLAGS_LIT_STANDARD;
|
|
#ifdef _MATERIAL_FEATURE_SUBSURFACE_SCATTERING
|
|
surfaceData.materialFeatures |= MATERIALFEATUREFLAGS_LIT_SUBSURFACE_SCATTERING;
|
|
#endif
|
|
|
|
#ifdef _MATERIAL_FEATURE_TRANSMISSION
|
|
surfaceData.materialFeatures |= MATERIALFEATUREFLAGS_LIT_TRANSMISSION;
|
|
#endif
|
|
|
|
#ifdef _MATERIAL_FEATURE_COLORED_TRANSMISSION
|
|
surfaceData.materialFeatures |= MATERIALFEATUREFLAGS_LIT_TRANSMISSION;
|
|
surfaceData.materialFeatures |= MATERIALFEATUREFLAGS_LIT_COLORED_TRANSMISSION;
|
|
|
|
#endif
|
|
|
|
#ifdef _MATERIAL_FEATURE_ANISOTROPY
|
|
surfaceData.materialFeatures |= MATERIALFEATUREFLAGS_LIT_ANISOTROPY;
|
|
|
|
// Initialize the normal to something non-zero to avoid a div-zero warning for anisotropy.
|
|
surfaceData.normalWS = float3(0, 1, 0);
|
|
#endif
|
|
|
|
#ifdef _MATERIAL_FEATURE_IRIDESCENCE
|
|
surfaceData.materialFeatures |= MATERIALFEATUREFLAGS_LIT_IRIDESCENCE;
|
|
#endif
|
|
|
|
#ifdef _MATERIAL_FEATURE_SPECULAR_COLOR
|
|
surfaceData.materialFeatures |= MATERIALFEATUREFLAGS_LIT_SPECULAR_COLOR;
|
|
#endif
|
|
|
|
#ifdef _MATERIAL_FEATURE_CLEAR_COAT
|
|
surfaceData.materialFeatures |= MATERIALFEATUREFLAGS_LIT_CLEAR_COAT;
|
|
#endif
|
|
|
|
#if defined (_MATERIAL_FEATURE_SPECULAR_COLOR) && defined (_ENERGY_CONSERVING_SPECULAR)
|
|
// Require to have setup baseColor
|
|
// Reproduce the energy conservation done in legacy Unity. Not ideal but better for compatibility and users can unchek it
|
|
surfaceData.baseColor *= (1.0 - Max3(surfaceData.specularColor.r, surfaceData.specularColor.g, surfaceData.specularColor.b));
|
|
#endif
|
|
|
|
float3 doubleSidedConstants = GetDoubleSidedConstants();
|
|
|
|
ApplyDecalAndGetNormal(fragInputs, posInput, surfaceDescription, surfaceData);
|
|
|
|
surfaceData.geomNormalWS = fragInputs.tangentToWorld[2];
|
|
|
|
surfaceData.tangentWS = normalize(fragInputs.tangentToWorld[0].xyz); // The tangent is not normalize in tangentToWorld for mikkt. TODO: Check if it expected that we normalize with Morten. Tag: SURFACE_GRADIENT
|
|
|
|
|
|
bentNormalWS = surfaceData.normalWS;
|
|
|
|
surfaceData.tangentWS = Orthonormalize(surfaceData.tangentWS, surfaceData.normalWS);
|
|
|
|
#ifdef DEBUG_DISPLAY
|
|
#if !defined(SHADER_STAGE_RAY_TRACING)
|
|
// Mipmap mode debugging isn't supported with ray tracing as it relies on derivatives
|
|
if (_DebugMipMapMode != DEBUGMIPMAPMODE_NONE)
|
|
{
|
|
#ifdef FRAG_INPUTS_USE_TEXCOORD0
|
|
surfaceData.baseColor = GET_TEXTURE_STREAMING_DEBUG(posInput.positionSS, fragInputs.texCoord0);
|
|
#else
|
|
surfaceData.baseColor = GET_TEXTURE_STREAMING_DEBUG_NO_UV(posInput.positionSS);
|
|
#endif
|
|
surfaceData.metallic = 0;
|
|
}
|
|
#endif
|
|
|
|
// We need to call ApplyDebugToSurfaceData after filling the surfaceData and before filling builtinData
|
|
// as it can modify attribute use for static lighting
|
|
ApplyDebugToSurfaceData(fragInputs.tangentToWorld, surfaceData);
|
|
#endif
|
|
|
|
// By default we use the ambient occlusion with Tri-ace trick (apply outside) for specular occlusion.
|
|
// If user provide bent normal then we process a better term
|
|
#if defined(_SPECULAR_OCCLUSION_CUSTOM)
|
|
// Just use the value passed through via the slot (not active otherwise)
|
|
#elif defined(_SPECULAR_OCCLUSION_FROM_AO_BENT_NORMAL)
|
|
// If we have bent normal and ambient occlusion, process a specular occlusion
|
|
surfaceData.specularOcclusion = GetSpecularOcclusionFromBentAO(V, bentNormalWS, surfaceData.normalWS, surfaceData.ambientOcclusion, PerceptualSmoothnessToPerceptualRoughness(surfaceData.perceptualSmoothness));
|
|
#elif defined(_AMBIENT_OCCLUSION) && defined(_SPECULAR_OCCLUSION_FROM_AO)
|
|
surfaceData.specularOcclusion = GetSpecularOcclusionFromAmbientOcclusion(ClampNdotV(dot(surfaceData.normalWS, V)), surfaceData.ambientOcclusion, PerceptualSmoothnessToRoughness(surfaceData.perceptualSmoothness));
|
|
#endif
|
|
|
|
#if defined(_ENABLE_GEOMETRIC_SPECULAR_AA) && !defined(SHADER_STAGE_RAY_TRACING)
|
|
surfaceData.perceptualSmoothness = GeometricNormalFiltering(surfaceData.perceptualSmoothness, fragInputs.tangentToWorld[2], surfaceDescription.SpecularAAScreenSpaceVariance, surfaceDescription.SpecularAAThreshold);
|
|
#endif
|
|
}
|
|
|
|
// --------------------------------------------------
|
|
// Get Surface And BuiltinData
|
|
|
|
void GetSurfaceAndBuiltinData(FragInputs fragInputs, float3 V, inout PositionInputs posInput, out SurfaceData surfaceData, out BuiltinData builtinData RAY_TRACING_OPTIONAL_PARAMETERS)
|
|
{
|
|
// Don't dither if displaced tessellation (we're fading out the displacement instead to match the next LOD)
|
|
#if !defined(SHADER_STAGE_RAY_TRACING) && !defined(_TESSELLATION_DISPLACEMENT)
|
|
#ifdef LOD_FADE_CROSSFADE // enable dithering LOD transition if user select CrossFade transition in LOD group
|
|
LODDitheringTransition(ComputeFadeMaskSeed(V, posInput.positionSS), unity_LODFade.x);
|
|
#endif
|
|
#endif
|
|
|
|
#ifndef SHADER_UNLIT
|
|
#ifdef _DOUBLESIDED_ON
|
|
float3 doubleSidedConstants = _DoubleSidedConstants.xyz;
|
|
#else
|
|
float3 doubleSidedConstants = float3(1.0, 1.0, 1.0);
|
|
#endif
|
|
|
|
ApplyDoubleSidedFlipOrMirror(fragInputs, doubleSidedConstants); // Apply double sided flip on the vertex normal
|
|
#endif // SHADER_UNLIT
|
|
|
|
SurfaceDescriptionInputs surfaceDescriptionInputs = FragInputsToSurfaceDescriptionInputs(fragInputs, V);
|
|
|
|
#if defined(HAVE_VFX_MODIFICATION)
|
|
GraphProperties properties;
|
|
ZERO_INITIALIZE(GraphProperties, properties);
|
|
|
|
GetElementPixelProperties(fragInputs, properties);
|
|
|
|
SurfaceDescription surfaceDescription = SurfaceDescriptionFunction(surfaceDescriptionInputs, properties);
|
|
#else
|
|
SurfaceDescription surfaceDescription = SurfaceDescriptionFunction(surfaceDescriptionInputs);
|
|
#endif
|
|
|
|
#ifdef DEBUG_DISPLAY
|
|
if (_DebugMipMapMode != DEBUGMIPMAPMODE_NONE)
|
|
{
|
|
surfaceDescription.Alpha = 1.0f;
|
|
}
|
|
#endif
|
|
|
|
// Perform alpha test very early to save performance (a killed pixel will not sample textures)
|
|
// TODO: split graph evaluation to grab just alpha dependencies first? tricky..
|
|
#ifdef _ALPHATEST_ON
|
|
float alphaCutoff = surfaceDescription.AlphaClipThreshold;
|
|
#if SHADERPASS == SHADERPASS_TRANSPARENT_DEPTH_PREPASS
|
|
// The TransparentDepthPrepass is also used with SSR transparent.
|
|
// If an artists enable transaprent SSR but not the TransparentDepthPrepass itself, then we use AlphaClipThreshold
|
|
// otherwise if TransparentDepthPrepass is enabled we use AlphaClipThresholdDepthPrepass
|
|
#elif SHADERPASS == SHADERPASS_TRANSPARENT_DEPTH_POSTPASS
|
|
// DepthPostpass always use its own alpha threshold
|
|
alphaCutoff = surfaceDescription.AlphaClipThresholdDepthPostpass;
|
|
#elif (SHADERPASS == SHADERPASS_SHADOWS) || (SHADERPASS == SHADERPASS_RAYTRACING_VISIBILITY)
|
|
// If use shadow threshold isn't enable we don't allow any test
|
|
#endif
|
|
|
|
GENERIC_ALPHA_TEST(surfaceDescription.Alpha, alphaCutoff);
|
|
#endif
|
|
|
|
#if !defined(SHADER_STAGE_RAY_TRACING) && _DEPTHOFFSET_ON
|
|
ApplyDepthOffsetPositionInput(V, surfaceDescription.DepthOffset, GetViewForwardDir(), GetWorldToHClipMatrix(), posInput);
|
|
#endif
|
|
|
|
#ifndef SHADER_UNLIT
|
|
float3 bentNormalWS;
|
|
BuildSurfaceData(fragInputs, surfaceDescription, V, posInput, surfaceData, bentNormalWS);
|
|
|
|
#ifdef FRAG_INPUTS_USE_TEXCOORD1
|
|
float4 lightmapTexCoord1 = fragInputs.texCoord1;
|
|
#else
|
|
float4 lightmapTexCoord1 = float4(0,0,0,0);
|
|
#endif
|
|
|
|
#ifdef FRAG_INPUTS_USE_TEXCOORD2
|
|
float4 lightmapTexCoord2 = fragInputs.texCoord2;
|
|
#else
|
|
float4 lightmapTexCoord2 = float4(0,0,0,0);
|
|
#endif
|
|
|
|
float alpha = 1.0;
|
|
alpha = surfaceDescription.Alpha;
|
|
|
|
// Builtin Data
|
|
// For back lighting we use the oposite vertex normal
|
|
InitBuiltinData(posInput, alpha, bentNormalWS, -fragInputs.tangentToWorld[2], lightmapTexCoord1, lightmapTexCoord2, builtinData);
|
|
|
|
#else
|
|
BuildSurfaceData(fragInputs, surfaceDescription, V, posInput, surfaceData);
|
|
|
|
ZERO_BUILTIN_INITIALIZE(builtinData); // No call to InitBuiltinData as we don't have any lighting
|
|
builtinData.opacity = surfaceDescription.Alpha;
|
|
|
|
#if defined(DEBUG_DISPLAY)
|
|
// Light Layers are currently not used for the Unlit shader (because it is not lit)
|
|
// But Unlit objects do cast shadows according to their rendering layer mask, which is what we want to
|
|
// display in the light layers visualization mode, therefore we need the renderingLayers
|
|
builtinData.renderingLayers = GetMeshRenderingLayerMask();
|
|
#endif
|
|
|
|
#endif // SHADER_UNLIT
|
|
|
|
#ifdef _ALPHATEST_ON
|
|
// Used for sharpening by alpha to mask - Alpha to covertage is only used with depth only and forward pass (no shadow pass, no transparent pass)
|
|
builtinData.alphaClipTreshold = alphaCutoff;
|
|
#endif
|
|
|
|
// override sampleBakedGI - not used by Unlit
|
|
// When overriding GI, we need to force the isLightmap flag to make sure we don't add APV (sampled in the lightloop) on top of the overridden value (set at GBuffer stage)
|
|
|
|
builtinData.emissiveColor = surfaceDescription.Emission;
|
|
|
|
// Note this will not fully work on transparent surfaces (can check with _SURFACE_TYPE_TRANSPARENT define)
|
|
// We will always overwrite vt feeback with the nearest. So behind transparent surfaces vt will not be resolved
|
|
// This is a limitation of the current MRT approach.
|
|
#ifdef UNITY_VIRTUAL_TEXTURING
|
|
#endif
|
|
|
|
#if _DEPTHOFFSET_ON
|
|
builtinData.depthOffset = surfaceDescription.DepthOffset;
|
|
#endif
|
|
|
|
// TODO: We should generate distortion / distortionBlur for non distortion pass
|
|
#if (SHADERPASS == SHADERPASS_DISTORTION)
|
|
builtinData.distortion = surfaceDescription.Distortion;
|
|
builtinData.distortionBlur = surfaceDescription.DistortionBlur;
|
|
#endif
|
|
|
|
#ifndef SHADER_UNLIT
|
|
// PostInitBuiltinData call ApplyDebugToBuiltinData
|
|
PostInitBuiltinData(V, posInput, surfaceData, builtinData);
|
|
#else
|
|
ApplyDebugToBuiltinData(builtinData);
|
|
#endif
|
|
|
|
RAY_TRACING_OPTIONAL_ALPHA_TEST_PASS
|
|
}
|
|
|
|
// --------------------------------------------------
|
|
// Main
|
|
|
|
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/RenderPipeline/ShaderPass/ShaderPassRaytracingIndirect.hlsl"
|
|
|
|
// --------------------------------------------------
|
|
// Visual Effect Vertex Invocations
|
|
|
|
#ifdef HAVE_VFX_MODIFICATION
|
|
#if !defined(SHADER_STAGE_RAY_TRACING)
|
|
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/ShaderLibrary/VisualEffectVertex.hlsl"
|
|
#else
|
|
#endif
|
|
#endif
|
|
|
|
ENDHLSL
|
|
}
|
|
Pass
|
|
{
|
|
Name "VisibilityDXR"
|
|
Tags
|
|
{
|
|
"LightMode" = "VisibilityDXR"
|
|
}
|
|
|
|
// Render State
|
|
// RenderState: <None>
|
|
|
|
// Debug
|
|
// <None>
|
|
|
|
// --------------------------------------------------
|
|
// Pass
|
|
|
|
HLSLPROGRAM
|
|
|
|
// Pragmas
|
|
#pragma target 5.0
|
|
#pragma raytracing surface_shader
|
|
#pragma only_renderers d3d11 xboxseries ps5
|
|
|
|
// Keywords
|
|
#pragma multi_compile _ TRANSPARENT_COLOR_SHADOW
|
|
#pragma shader_feature _ _SURFACE_TYPE_TRANSPARENT
|
|
#pragma shader_feature_local _ _DOUBLESIDED_ON
|
|
#pragma shader_feature_local _ _ADD_PRECOMPUTED_VELOCITY
|
|
#pragma shader_feature_local _ _TRANSPARENT_WRITES_MOTION_VEC _TRANSPARENT_REFRACTIVE_SORT
|
|
#pragma shader_feature_local_fragment _ _ENABLE_FOG_ON_TRANSPARENT
|
|
#pragma shader_feature_local_fragment _ _DISABLE_DECALS
|
|
#pragma shader_feature_local_raytracing _ _DISABLE_DECALS
|
|
#pragma shader_feature_local_fragment _ _DISABLE_SSR
|
|
#pragma shader_feature_local_raytracing _ _DISABLE_SSR
|
|
#pragma shader_feature_local_fragment _ _DISABLE_SSR_TRANSPARENT
|
|
#pragma shader_feature_local_raytracing _ _DISABLE_SSR_TRANSPARENT
|
|
#pragma shader_feature_local _ _REFRACTION_PLANE _REFRACTION_SPHERE _REFRACTION_THIN
|
|
#pragma shader_feature_local_fragment _MATERIAL_FEATURE_SUBSURFACE_SCATTERING
|
|
#pragma shader_feature_local_raytracing _MATERIAL_FEATURE_SUBSURFACE_SCATTERING
|
|
#pragma shader_feature_local_fragment _MATERIAL_FEATURE_TRANSMISSION
|
|
#pragma shader_feature_local_raytracing _MATERIAL_FEATURE_TRANSMISSION
|
|
#pragma shader_feature_local_fragment _MATERIAL_FEATURE_ANISOTROPY
|
|
#pragma shader_feature_local_raytracing _MATERIAL_FEATURE_ANISOTROPY
|
|
#pragma shader_feature_local_fragment _MATERIAL_FEATURE_IRIDESCENCE
|
|
#pragma shader_feature_local_raytracing _MATERIAL_FEATURE_IRIDESCENCE
|
|
#pragma shader_feature_local_fragment _MATERIAL_FEATURE_SPECULAR_COLOR
|
|
#pragma shader_feature_local_raytracing _MATERIAL_FEATURE_SPECULAR_COLOR
|
|
#pragma shader_feature_local_fragment _MATERIAL_FEATURE_COLORED_TRANSMISSION
|
|
#pragma shader_feature_local_raytracing _MATERIAL_FEATURE_COLORED_TRANSMISSION
|
|
// GraphKeywords: <None>
|
|
|
|
// Defines
|
|
#define SHADERPASS SHADERPASS_RAYTRACING_VISIBILITY
|
|
#define RAYTRACING_SHADER_GRAPH_RAYTRACED
|
|
#define SUPPORT_GLOBAL_MIP_BIAS 1
|
|
#define SUPPORT_GLOBAL_MIP_BIAS 1
|
|
#define SUPPORT_GLOBAL_MIP_BIAS 1
|
|
#define SUPPORT_GLOBAL_MIP_BIAS 1
|
|
#define SUPPORT_GLOBAL_MIP_BIAS 1
|
|
#define SUPPORT_GLOBAL_MIP_BIAS 1
|
|
#define SUPPORT_GLOBAL_MIP_BIAS 1
|
|
#define SUPPORT_GLOBAL_MIP_BIAS 1
|
|
#define SUPPORT_GLOBAL_MIP_BIAS 1
|
|
|
|
// For custom interpolators to inject a substruct definition before FragInputs definition,
|
|
// allowing for FragInputs to capture CI's intended for ShaderGraph's SDI.
|
|
/* WARNING: $splice Could not find named fragment 'CustomInterpolatorPreInclude' */
|
|
|
|
|
|
// TODO: Merge FragInputsVFX substruct with CustomInterpolators.
|
|
#ifdef HAVE_VFX_MODIFICATION
|
|
struct FragInputsVFX
|
|
{
|
|
/* WARNING: $splice Could not find named fragment 'FragInputsVFX' */
|
|
};
|
|
#endif
|
|
|
|
#include "Packages/com.unity.render-pipelines.core/ShaderLibrary/Common.hlsl"
|
|
#include "Packages/com.unity.render-pipelines.core/ShaderLibrary/GeometricTools.hlsl" // Required by Tessellation.hlsl
|
|
#include "Packages/com.unity.render-pipelines.core/ShaderLibrary/Tessellation.hlsl"
|
|
#include "Packages/com.unity.render-pipelines.core/ShaderLibrary/Texture.hlsl"
|
|
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/ShaderLibrary/ShaderVariables.hlsl"
|
|
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/RenderPipeline/ShaderPass/ShaderPass.cs.hlsl"
|
|
#include "Packages/com.unity.render-pipelines.core/ShaderLibrary/TextureStack.hlsl" // Required to be include before we include properties as it define DECLARE_STACK_CB
|
|
#include "Packages/com.unity.render-pipelines.core/ShaderLibrary/DebugMipmapStreamingMacros.hlsl" // Required before including properties as it defines UNITY_TEXTURE_STREAMING_DEBUG_VARS
|
|
// Always include Shader Graph version
|
|
// Always include last to avoid double macros
|
|
#include "Packages/com.unity.shadergraph/ShaderGraphLibrary/Functions.hlsl" // Need to be here for Gradient struct definition
|
|
|
|
// --------------------------------------------------
|
|
// Defines
|
|
|
|
// Attribute
|
|
#define ATTRIBUTES_NEED_NORMAL
|
|
#define ATTRIBUTES_NEED_TANGENT
|
|
#define ATTRIBUTES_NEED_TEXCOORD0
|
|
#define ATTRIBUTES_NEED_COLOR
|
|
#define VARYINGS_NEED_POSITION_WS
|
|
#define VARYINGS_NEED_TANGENT_TO_WORLD
|
|
#define VARYINGS_NEED_TEXCOORD0
|
|
#define VARYINGS_NEED_COLOR
|
|
|
|
|
|
//Strip down the FragInputs.hlsl (on graphics), so we can only optimize the interpolators we use.
|
|
//if by accident something requests contents of FragInputs.hlsl, it will be caught as a compiler error
|
|
//Frag inputs stripping is only enabled when FRAG_INPUTS_ENABLE_STRIPPING is set
|
|
#if !defined(SHADER_STAGE_RAY_TRACING) && SHADERPASS != SHADERPASS_RAYTRACING_GBUFFER && SHADERPASS != SHADERPASS_FULL_SCREEN_DEBUG
|
|
#define FRAG_INPUTS_ENABLE_STRIPPING
|
|
#endif
|
|
#define FRAG_INPUTS_USE_TEXCOORD0
|
|
|
|
|
|
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/RenderPipeline/ShaderPass/FragInputs.hlsl"
|
|
|
|
|
|
|
|
|
|
// Following two define are a workaround introduce in 10.1.x for RaytracingQualityNode
|
|
// The ShaderGraph don't support correctly migration of this node as it serialize all the node data
|
|
// in the json file making it impossible to uprgrade. Until we get a fix, we do a workaround here
|
|
// to still allow us to rename the field and keyword of this node without breaking existing code.
|
|
#ifdef RAYTRACING_SHADER_GRAPH_DEFAULT
|
|
#define RAYTRACING_SHADER_GRAPH_HIGH
|
|
#endif
|
|
|
|
#ifdef RAYTRACING_SHADER_GRAPH_RAYTRACED
|
|
#define RAYTRACING_SHADER_GRAPH_LOW
|
|
#endif
|
|
// end
|
|
|
|
#ifndef SHADER_UNLIT
|
|
// We need isFrontFace when using double sided - it is not required for unlit as in case of unlit double sided only drive the cullmode
|
|
// VARYINGS_NEED_CULLFACE can be define by VaryingsMeshToPS.FaceSign input if a IsFrontFace Node is included in the shader graph.
|
|
#if defined(_DOUBLESIDED_ON) && !defined(VARYINGS_NEED_CULLFACE)
|
|
#define VARYINGS_NEED_CULLFACE
|
|
#endif
|
|
#endif
|
|
|
|
// Specific Material Define
|
|
#define _AMBIENT_OCCLUSION 1
|
|
#define _SPECULAR_OCCLUSION_FROM_AO 1
|
|
#define _ENERGY_CONSERVING_SPECULAR 1
|
|
|
|
#if _MATERIAL_FEATURE_COLORED_TRANSMISSION
|
|
// Colored Transmission doesn't support clear coat
|
|
#undef _MATERIAL_FEATURE_CLEAR_COAT
|
|
#endif
|
|
|
|
// If we use subsurface scattering, enable output split lighting (for forward pass)
|
|
#if defined(_MATERIAL_FEATURE_SUBSURFACE_SCATTERING) && !defined(_SURFACE_TYPE_TRANSPARENT)
|
|
#define OUTPUT_SPLIT_LIGHTING
|
|
#endif
|
|
|
|
// This shader support recursive rendering for raytracing
|
|
#define HAVE_RECURSIVE_RENDERING
|
|
|
|
// In Path Tracing, For all single-sided, refractive materials, we want to force a thin refraction model
|
|
#if (SHADERPASS == SHADERPASS_PATH_TRACING) && !defined(_DOUBLESIDED_ON) && (defined(_REFRACTION_PLANE) || defined(_REFRACTION_SPHERE))
|
|
#undef _REFRACTION_PLANE
|
|
#undef _REFRACTION_SPHERE
|
|
#define _REFRACTION_THIN
|
|
#endif
|
|
// Caution: we can use the define SHADER_UNLIT onlit after the above Material include as it is the Unlit template who define it
|
|
|
|
// To handle SSR on transparent correctly with a possibility to enable/disable it per framesettings
|
|
// we should have a code like this:
|
|
// if !defined(_DISABLE_SSR_TRANSPARENT)
|
|
// pragma multi_compile _ WRITE_NORMAL_BUFFER
|
|
// endif
|
|
// i.e we enable the multicompile only if we can receive SSR or not, and then C# code drive
|
|
// it based on if SSR transparent in frame settings and not (and stripper can strip it).
|
|
// this is currently not possible with our current preprocessor as _DISABLE_SSR_TRANSPARENT is a keyword not a define
|
|
// so instead we used this and chose to pay the extra cost of normal write even if SSR transaprent is disabled.
|
|
// Ideally the shader graph generator should handle it but condition below can't be handle correctly for now.
|
|
#if SHADERPASS == SHADERPASS_TRANSPARENT_DEPTH_PREPASS
|
|
#if !defined(_DISABLE_SSR_TRANSPARENT) && !defined(SHADER_UNLIT)
|
|
#define WRITE_NORMAL_BUFFER
|
|
#endif
|
|
#endif
|
|
|
|
// See Lit.shader
|
|
#if SHADERPASS == SHADERPASS_MOTION_VECTORS && defined(WRITE_DECAL_BUFFER_AND_RENDERING_LAYER)
|
|
#define WRITE_DECAL_BUFFER
|
|
#endif
|
|
|
|
#ifndef DEBUG_DISPLAY
|
|
// In case of opaque we don't want to perform the alpha test, it is done in depth prepass and we use depth equal for ztest (setup from UI)
|
|
// Don't do it with debug display mode as it is possible there is no depth prepass in this case
|
|
#if !defined(_SURFACE_TYPE_TRANSPARENT)
|
|
#if SHADERPASS == SHADERPASS_FORWARD
|
|
#define SHADERPASS_FORWARD_BYPASS_ALPHA_TEST
|
|
#elif SHADERPASS == SHADERPASS_GBUFFER
|
|
#define SHADERPASS_GBUFFER_BYPASS_ALPHA_TEST
|
|
#endif
|
|
#endif
|
|
#endif
|
|
|
|
// Define _DEFERRED_CAPABLE_MATERIAL for shader capable to run in deferred pass
|
|
#if defined(SHADER_LIT) && !defined(_SURFACE_TYPE_TRANSPARENT)
|
|
#define _DEFERRED_CAPABLE_MATERIAL
|
|
#endif
|
|
|
|
// Translate transparent motion vector define
|
|
#if (defined(_TRANSPARENT_WRITES_MOTION_VEC) || defined(_TRANSPARENT_REFRACTIVE_SORT)) && defined(_SURFACE_TYPE_TRANSPARENT)
|
|
#define _WRITE_TRANSPARENT_MOTION_VECTOR
|
|
#endif
|
|
|
|
// -- Graph Properties
|
|
CBUFFER_START(UnityPerMaterial)
|
|
float4 _BaseColor;
|
|
float4 _BaseColorMap_TexelSize;
|
|
float4 _BaseTilingOffset;
|
|
float _BaseTriplanarThreshold;
|
|
float4 _BaseNormalMap_TexelSize;
|
|
float _BaseNormalScale;
|
|
float4 _BaseMaskMap_TexelSize;
|
|
float _BaseMetallic;
|
|
float _BaseAORemapMin;
|
|
float _BaseAORemapMax;
|
|
float _BaseSmoothnessRemapMin;
|
|
float _BaseSmoothnessRemapMax;
|
|
float _USEDYNAMICCOVERTSTATICMASKF;
|
|
float4 _CoverMaskA_TexelSize;
|
|
float _CoverMaskPower;
|
|
float _Cover_Amount;
|
|
float _Cover_Amount_Grow_Speed;
|
|
float3 _CoverDirection;
|
|
float _Cover_Max_Angle;
|
|
float _Cover_Min_Height;
|
|
float _Cover_Min_Height_Blending;
|
|
float4 _CoverBaseColor;
|
|
float4 _CoverBaseColorMap_TexelSize;
|
|
float4 _CoverTilingOffset;
|
|
float _CoverTriplanarThreshold;
|
|
float4 _CoverNormalMap_TexelSize;
|
|
float _CoverNormalScale;
|
|
float _CoverNormalBlendHardness;
|
|
float _CoverHeightMapMin;
|
|
float _CoverHeightMapMax;
|
|
float _CoverHeightMapOffset;
|
|
float _CoverHardness;
|
|
float4 _CoverMaskMap_TexelSize;
|
|
float _CoverMetallic;
|
|
float _CoverAORemapMin;
|
|
float _CoverAORemapMax;
|
|
float _CoverSmoothnessRemapMin;
|
|
float _CoverSmoothnessRemapMax;
|
|
float4 _ShapeNormalMap_TexelSize;
|
|
float _shapeNormalScale;
|
|
float _CovershapeNormalScale;
|
|
float4 _ShapeAO_TexelSize;
|
|
float _ShapeAORemapMin;
|
|
float _ShapeAORemapMax;
|
|
float _CoverShapeAORemapMin;
|
|
float _CoverShapeAORemapMax;
|
|
float4 _DetailMap_TexelSize;
|
|
float4 _DetailTilingOffset;
|
|
float _DetailAlbedoScale;
|
|
float _DetailNormalScale;
|
|
float _DetailSmoothnessScale;
|
|
float _DetailCoverAlbedoScale;
|
|
float _DetailCoverNormalScale;
|
|
float _DetailCoverSmoothnessScale;
|
|
float _CoverMaskRCurvature;
|
|
float _BaseBrightnessCurvMultply;
|
|
float _BaseBrightnessCurvPower;
|
|
float _BaseDarknessCurvMultply;
|
|
float _BaseDarknessCurvPower;
|
|
float _CoverBrightnessCurvMultply;
|
|
float _CoverBrightnessCurvPower;
|
|
float _CoverDarknessCurvMultply;
|
|
float _CoverDarknessCurvPower;
|
|
float4 _WetColor;
|
|
float _WetSmoothness;
|
|
float4 _EmissionColor;
|
|
float _UseShadowThreshold;
|
|
float4 _DoubleSidedConstants;
|
|
UNITY_TEXTURE_STREAMING_DEBUG_VARS;
|
|
float _BlendMode;
|
|
float _EnableBlendModePreserveSpecularLighting;
|
|
float _RayTracing;
|
|
float _RefractionModel;
|
|
float _MaterialID;
|
|
float _MaterialTypeMask;
|
|
CBUFFER_END
|
|
|
|
|
|
// Object and Global properties
|
|
SAMPLER(SamplerState_Linear_Repeat);
|
|
SAMPLER(SamplerState_Linear_Repeat_Aniso8);
|
|
TEXTURE2D(_BaseColorMap);
|
|
SAMPLER(sampler_BaseColorMap);
|
|
TEXTURE2D(_BaseNormalMap);
|
|
SAMPLER(sampler_BaseNormalMap);
|
|
TEXTURE2D(_BaseMaskMap);
|
|
SAMPLER(sampler_BaseMaskMap);
|
|
TEXTURE2D(_CoverMaskA);
|
|
SAMPLER(sampler_CoverMaskA);
|
|
TEXTURE2D(_CoverBaseColorMap);
|
|
SAMPLER(sampler_CoverBaseColorMap);
|
|
TEXTURE2D(_CoverNormalMap);
|
|
SAMPLER(sampler_CoverNormalMap);
|
|
TEXTURE2D(_CoverMaskMap);
|
|
SAMPLER(sampler_CoverMaskMap);
|
|
TEXTURE2D(_ShapeNormalMap);
|
|
SAMPLER(sampler_ShapeNormalMap);
|
|
TEXTURE2D(_ShapeAO);
|
|
SAMPLER(sampler_ShapeAO);
|
|
TEXTURE2D(_DetailMap);
|
|
SAMPLER(sampler_DetailMap);
|
|
|
|
// -- Property used by ScenePickingPass
|
|
#ifdef SCENEPICKINGPASS
|
|
float4 _SelectionID;
|
|
#endif
|
|
|
|
// -- Properties used by SceneSelectionPass
|
|
#ifdef SCENESELECTIONPASS
|
|
int _ObjectId;
|
|
int _PassValue;
|
|
#endif
|
|
|
|
// Includes
|
|
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/RenderPipeline/Raytracing/Shaders/RaytracingMacros.hlsl"
|
|
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/RenderPipeline/Raytracing/Shaders/ShaderVariablesRaytracing.hlsl"
|
|
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/Material/Material.hlsl"
|
|
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/RenderPipeline/Raytracing/Shaders/ShaderVariablesRaytracingLightLoop.hlsl"
|
|
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/RenderPipeline/Raytracing/Shaders/RaytracingIntersection.hlsl"
|
|
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/Material/Lit/Lit.hlsl"
|
|
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/Material/Lit/LitRayTracing.hlsl"
|
|
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/Material/BuiltinUtilities.hlsl"
|
|
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/Material/MaterialUtilities.hlsl"
|
|
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/RenderPipeline/Raytracing/Shaders/RayTracingCommon.hlsl"
|
|
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/ShaderLibrary/ShaderGraphFunctions.hlsl"
|
|
// GraphIncludes: <None>
|
|
|
|
// --------------------------------------------------
|
|
// Structs and Packing
|
|
|
|
struct SurfaceDescriptionInputs
|
|
{
|
|
float3 WorldSpaceNormal;
|
|
float3 TangentSpaceNormal;
|
|
float3 WorldSpaceTangent;
|
|
float3 WorldSpaceBiTangent;
|
|
float3 AbsoluteWorldSpacePosition;
|
|
float4 uv0;
|
|
float4 VertexColor;
|
|
};
|
|
|
|
//Interpolator Packs: <None>
|
|
|
|
// --------------------------------------------------
|
|
// Graph
|
|
|
|
|
|
// Graph Functions
|
|
|
|
void Unity_Divide_float4(float4 A, float4 B, out float4 Out)
|
|
{
|
|
Out = A / B;
|
|
}
|
|
|
|
void Unity_Combine_float(float R, float G, float B, float A, out float4 RGBA, out float3 RGB, out float2 RG)
|
|
{
|
|
RGBA = float4(R, G, B, A);
|
|
RGB = float3(R, G, B);
|
|
RG = float2(R, G);
|
|
}
|
|
|
|
void Unity_Multiply_float4_float4(float4 A, float4 B, out float4 Out)
|
|
{
|
|
Out = A * B;
|
|
}
|
|
|
|
void Unity_Sign_float3(float3 In, out float3 Out)
|
|
{
|
|
Out = sign(In);
|
|
}
|
|
|
|
void Unity_Multiply_float2_float2(float2 A, float2 B, out float2 Out)
|
|
{
|
|
Out = A * B;
|
|
}
|
|
|
|
void Unity_Absolute_float3(float3 In, out float3 Out)
|
|
{
|
|
Out = abs(In);
|
|
}
|
|
|
|
void Unity_Power_float3(float3 A, float3 B, out float3 Out)
|
|
{
|
|
Out = pow(A, B);
|
|
}
|
|
|
|
void Unity_Multiply_float3_float3(float3 A, float3 B, out float3 Out)
|
|
{
|
|
Out = A * B;
|
|
}
|
|
|
|
void Unity_Multiply_float_float(float A, float B, out float Out)
|
|
{
|
|
Out = A * B;
|
|
}
|
|
|
|
void Unity_Add_float4(float4 A, float4 B, out float4 Out)
|
|
{
|
|
Out = A + B;
|
|
}
|
|
|
|
void Unity_Add_float(float A, float B, out float Out)
|
|
{
|
|
Out = A + B;
|
|
}
|
|
|
|
struct Bindings_TriplanarNM_bc609ed95f52591469ab35dbfe0efcea_float
|
|
{
|
|
float3 WorldSpaceNormal;
|
|
float3 AbsoluteWorldSpacePosition;
|
|
};
|
|
|
|
void SG_TriplanarNM_bc609ed95f52591469ab35dbfe0efcea_float(UnityTexture2D Texture2D_80A3D28F, float Vector1_41461AC9, float Vector1_E4D1C13A, UnitySamplerState _SamplerState, Bindings_TriplanarNM_bc609ed95f52591469ab35dbfe0efcea_float IN, out float4 XYZ_1, out float4 XZ_2, out float4 YZ_3, out float4 XY_4)
|
|
{
|
|
UnityTexture2D _Property_3e01b4d2fc68d48ba3acbba9d5881e59_Out_0_Texture2D = Texture2D_80A3D28F;
|
|
float _Split_89ed63cb625cb3878c183d0b71c03400_R_1_Float = IN.AbsoluteWorldSpacePosition[0];
|
|
float _Split_89ed63cb625cb3878c183d0b71c03400_G_2_Float = IN.AbsoluteWorldSpacePosition[1];
|
|
float _Split_89ed63cb625cb3878c183d0b71c03400_B_3_Float = IN.AbsoluteWorldSpacePosition[2];
|
|
float _Split_89ed63cb625cb3878c183d0b71c03400_A_4_Float = 0;
|
|
float4 _Combine_cf2d04ff119ad88493f6460431765cbb_RGBA_4_Vector4;
|
|
float3 _Combine_cf2d04ff119ad88493f6460431765cbb_RGB_5_Vector3;
|
|
float2 _Combine_cf2d04ff119ad88493f6460431765cbb_RG_6_Vector2;
|
|
Unity_Combine_float(_Split_89ed63cb625cb3878c183d0b71c03400_R_1_Float, _Split_89ed63cb625cb3878c183d0b71c03400_B_3_Float, float(0), float(0), _Combine_cf2d04ff119ad88493f6460431765cbb_RGBA_4_Vector4, _Combine_cf2d04ff119ad88493f6460431765cbb_RGB_5_Vector3, _Combine_cf2d04ff119ad88493f6460431765cbb_RG_6_Vector2);
|
|
float _Property_47988ec10c0c18879d461e00bed806e7_Out_0_Float = Vector1_41461AC9;
|
|
float4 _Multiply_14cec4902d0a00829e4555071a1b8ad1_Out_2_Vector4;
|
|
Unity_Multiply_float4_float4(_Combine_cf2d04ff119ad88493f6460431765cbb_RGBA_4_Vector4, (_Property_47988ec10c0c18879d461e00bed806e7_Out_0_Float.xxxx), _Multiply_14cec4902d0a00829e4555071a1b8ad1_Out_2_Vector4);
|
|
float3 _Sign_b826e0ff2d95ec8cb2b2cbbd7ea2eab6_Out_1_Vector3;
|
|
Unity_Sign_float3(IN.WorldSpaceNormal, _Sign_b826e0ff2d95ec8cb2b2cbbd7ea2eab6_Out_1_Vector3);
|
|
float _Split_742547a7039de986a646d04c157ae549_R_1_Float = _Sign_b826e0ff2d95ec8cb2b2cbbd7ea2eab6_Out_1_Vector3[0];
|
|
float _Split_742547a7039de986a646d04c157ae549_G_2_Float = _Sign_b826e0ff2d95ec8cb2b2cbbd7ea2eab6_Out_1_Vector3[1];
|
|
float _Split_742547a7039de986a646d04c157ae549_B_3_Float = _Sign_b826e0ff2d95ec8cb2b2cbbd7ea2eab6_Out_1_Vector3[2];
|
|
float _Split_742547a7039de986a646d04c157ae549_A_4_Float = 0;
|
|
float2 _Vector2_40a8919e571ec18499de72022c155b38_Out_0_Vector2 = float2(_Split_742547a7039de986a646d04c157ae549_G_2_Float, float(1));
|
|
float2 _Multiply_5fa32af59cdca88389832336b2268bd5_Out_2_Vector2;
|
|
Unity_Multiply_float2_float2((_Multiply_14cec4902d0a00829e4555071a1b8ad1_Out_2_Vector4.xy), _Vector2_40a8919e571ec18499de72022c155b38_Out_0_Vector2, _Multiply_5fa32af59cdca88389832336b2268bd5_Out_2_Vector2);
|
|
UnitySamplerState _Property_544c7fa9dfe54e30a0df9d605340a374_Out_0_SamplerState = _SamplerState;
|
|
float4 _SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_RGBA_0_Vector4 = SAMPLE_TEXTURE2D(_Property_3e01b4d2fc68d48ba3acbba9d5881e59_Out_0_Texture2D.tex, _Property_544c7fa9dfe54e30a0df9d605340a374_Out_0_SamplerState.samplerstate, _Property_3e01b4d2fc68d48ba3acbba9d5881e59_Out_0_Texture2D.GetTransformedUV(_Multiply_5fa32af59cdca88389832336b2268bd5_Out_2_Vector2) );
|
|
float _SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_R_4_Float = _SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_RGBA_0_Vector4.r;
|
|
float _SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_G_5_Float = _SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_RGBA_0_Vector4.g;
|
|
float _SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_B_6_Float = _SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_RGBA_0_Vector4.b;
|
|
float _SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_A_7_Float = _SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_RGBA_0_Vector4.a;
|
|
float3 _Absolute_644b798714827680b39bf5d34f70385f_Out_1_Vector3;
|
|
Unity_Absolute_float3(IN.WorldSpaceNormal, _Absolute_644b798714827680b39bf5d34f70385f_Out_1_Vector3);
|
|
float _Property_adc4c59482221c8aad681c6558728ac9_Out_0_Float = Vector1_E4D1C13A;
|
|
float3 _Power_ee478822a04529849ae8df1636c29fe2_Out_2_Vector3;
|
|
Unity_Power_float3(_Absolute_644b798714827680b39bf5d34f70385f_Out_1_Vector3, (_Property_adc4c59482221c8aad681c6558728ac9_Out_0_Float.xxx), _Power_ee478822a04529849ae8df1636c29fe2_Out_2_Vector3);
|
|
float3 _Multiply_b386a937554d73828e437d126d69608b_Out_2_Vector3;
|
|
Unity_Multiply_float3_float3(_Power_ee478822a04529849ae8df1636c29fe2_Out_2_Vector3, _Power_ee478822a04529849ae8df1636c29fe2_Out_2_Vector3, _Multiply_b386a937554d73828e437d126d69608b_Out_2_Vector3);
|
|
float _Split_ae83014fcbd9f7879a0b91fa66dc9718_R_1_Float = _Multiply_b386a937554d73828e437d126d69608b_Out_2_Vector3[0];
|
|
float _Split_ae83014fcbd9f7879a0b91fa66dc9718_G_2_Float = _Multiply_b386a937554d73828e437d126d69608b_Out_2_Vector3[1];
|
|
float _Split_ae83014fcbd9f7879a0b91fa66dc9718_B_3_Float = _Multiply_b386a937554d73828e437d126d69608b_Out_2_Vector3[2];
|
|
float _Split_ae83014fcbd9f7879a0b91fa66dc9718_A_4_Float = 0;
|
|
float4 _Multiply_2e1040ca9c98d085ace76ee93f094039_Out_2_Vector4;
|
|
Unity_Multiply_float4_float4(_SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_RGBA_0_Vector4, (_Split_ae83014fcbd9f7879a0b91fa66dc9718_G_2_Float.xxxx), _Multiply_2e1040ca9c98d085ace76ee93f094039_Out_2_Vector4);
|
|
float4 _Combine_192c2c4a69be588b90ca005a32e22552_RGBA_4_Vector4;
|
|
float3 _Combine_192c2c4a69be588b90ca005a32e22552_RGB_5_Vector3;
|
|
float2 _Combine_192c2c4a69be588b90ca005a32e22552_RG_6_Vector2;
|
|
Unity_Combine_float(_Split_89ed63cb625cb3878c183d0b71c03400_R_1_Float, _Split_89ed63cb625cb3878c183d0b71c03400_G_2_Float, float(0), float(0), _Combine_192c2c4a69be588b90ca005a32e22552_RGBA_4_Vector4, _Combine_192c2c4a69be588b90ca005a32e22552_RGB_5_Vector3, _Combine_192c2c4a69be588b90ca005a32e22552_RG_6_Vector2);
|
|
float4 _Multiply_138240d0d4846e87b0febabec0d6891b_Out_2_Vector4;
|
|
Unity_Multiply_float4_float4(_Combine_192c2c4a69be588b90ca005a32e22552_RGBA_4_Vector4, (_Property_47988ec10c0c18879d461e00bed806e7_Out_0_Float.xxxx), _Multiply_138240d0d4846e87b0febabec0d6891b_Out_2_Vector4);
|
|
float _Multiply_014402ded5a3988a8c18ba07636ea5a7_Out_2_Float;
|
|
Unity_Multiply_float_float(_Split_742547a7039de986a646d04c157ae549_B_3_Float, -1, _Multiply_014402ded5a3988a8c18ba07636ea5a7_Out_2_Float);
|
|
float2 _Vector2_caa25d55d456a58982bdfc39b1b43f3f_Out_0_Vector2 = float2(_Multiply_014402ded5a3988a8c18ba07636ea5a7_Out_2_Float, float(1));
|
|
float2 _Multiply_a67201b6e1a0a28c98cd9d06e8b09543_Out_2_Vector2;
|
|
Unity_Multiply_float2_float2((_Multiply_138240d0d4846e87b0febabec0d6891b_Out_2_Vector4.xy), _Vector2_caa25d55d456a58982bdfc39b1b43f3f_Out_0_Vector2, _Multiply_a67201b6e1a0a28c98cd9d06e8b09543_Out_2_Vector2);
|
|
float4 _SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_RGBA_0_Vector4 = SAMPLE_TEXTURE2D(_Property_3e01b4d2fc68d48ba3acbba9d5881e59_Out_0_Texture2D.tex, _Property_544c7fa9dfe54e30a0df9d605340a374_Out_0_SamplerState.samplerstate, _Property_3e01b4d2fc68d48ba3acbba9d5881e59_Out_0_Texture2D.GetTransformedUV(_Multiply_a67201b6e1a0a28c98cd9d06e8b09543_Out_2_Vector2) );
|
|
float _SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_R_4_Float = _SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_RGBA_0_Vector4.r;
|
|
float _SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_G_5_Float = _SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_RGBA_0_Vector4.g;
|
|
float _SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_B_6_Float = _SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_RGBA_0_Vector4.b;
|
|
float _SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_A_7_Float = _SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_RGBA_0_Vector4.a;
|
|
float4 _Multiply_7bb4009c92b108849ac6ca92bc1442f2_Out_2_Vector4;
|
|
Unity_Multiply_float4_float4(_SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_RGBA_0_Vector4, (_Split_ae83014fcbd9f7879a0b91fa66dc9718_B_3_Float.xxxx), _Multiply_7bb4009c92b108849ac6ca92bc1442f2_Out_2_Vector4);
|
|
float4 _Combine_1e9ffdba42d6918fb7a4b185f1585d2a_RGBA_4_Vector4;
|
|
float3 _Combine_1e9ffdba42d6918fb7a4b185f1585d2a_RGB_5_Vector3;
|
|
float2 _Combine_1e9ffdba42d6918fb7a4b185f1585d2a_RG_6_Vector2;
|
|
Unity_Combine_float(_Split_89ed63cb625cb3878c183d0b71c03400_B_3_Float, _Split_89ed63cb625cb3878c183d0b71c03400_G_2_Float, float(0), float(0), _Combine_1e9ffdba42d6918fb7a4b185f1585d2a_RGBA_4_Vector4, _Combine_1e9ffdba42d6918fb7a4b185f1585d2a_RGB_5_Vector3, _Combine_1e9ffdba42d6918fb7a4b185f1585d2a_RG_6_Vector2);
|
|
float4 _Multiply_2c0864423b014f8b8af8523f68cbb63c_Out_2_Vector4;
|
|
Unity_Multiply_float4_float4(_Combine_1e9ffdba42d6918fb7a4b185f1585d2a_RGBA_4_Vector4, (_Property_47988ec10c0c18879d461e00bed806e7_Out_0_Float.xxxx), _Multiply_2c0864423b014f8b8af8523f68cbb63c_Out_2_Vector4);
|
|
float2 _Vector2_54dfd40df2fc78809955dd272f2cf0c3_Out_0_Vector2 = float2(_Split_742547a7039de986a646d04c157ae549_R_1_Float, float(1));
|
|
float2 _Multiply_addbd5fcede95f80bbb806c94e49ef63_Out_2_Vector2;
|
|
Unity_Multiply_float2_float2((_Multiply_2c0864423b014f8b8af8523f68cbb63c_Out_2_Vector4.xy), _Vector2_54dfd40df2fc78809955dd272f2cf0c3_Out_0_Vector2, _Multiply_addbd5fcede95f80bbb806c94e49ef63_Out_2_Vector2);
|
|
float4 _SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_RGBA_0_Vector4 = SAMPLE_TEXTURE2D(_Property_3e01b4d2fc68d48ba3acbba9d5881e59_Out_0_Texture2D.tex, _Property_544c7fa9dfe54e30a0df9d605340a374_Out_0_SamplerState.samplerstate, _Property_3e01b4d2fc68d48ba3acbba9d5881e59_Out_0_Texture2D.GetTransformedUV(_Multiply_addbd5fcede95f80bbb806c94e49ef63_Out_2_Vector2) );
|
|
float _SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_R_4_Float = _SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_RGBA_0_Vector4.r;
|
|
float _SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_G_5_Float = _SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_RGBA_0_Vector4.g;
|
|
float _SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_B_6_Float = _SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_RGBA_0_Vector4.b;
|
|
float _SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_A_7_Float = _SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_RGBA_0_Vector4.a;
|
|
float4 _Multiply_77818c22e359fc8cbb7dd20216a8db72_Out_2_Vector4;
|
|
Unity_Multiply_float4_float4(_SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_RGBA_0_Vector4, (_Split_ae83014fcbd9f7879a0b91fa66dc9718_R_1_Float.xxxx), _Multiply_77818c22e359fc8cbb7dd20216a8db72_Out_2_Vector4);
|
|
float4 _Add_769d9ee909c9238dbbf72d2800a2f268_Out_2_Vector4;
|
|
Unity_Add_float4(_Multiply_7bb4009c92b108849ac6ca92bc1442f2_Out_2_Vector4, _Multiply_77818c22e359fc8cbb7dd20216a8db72_Out_2_Vector4, _Add_769d9ee909c9238dbbf72d2800a2f268_Out_2_Vector4);
|
|
float4 _Add_14295f72880e4b87a1baf1ced943ac40_Out_2_Vector4;
|
|
Unity_Add_float4(_Multiply_2e1040ca9c98d085ace76ee93f094039_Out_2_Vector4, _Add_769d9ee909c9238dbbf72d2800a2f268_Out_2_Vector4, _Add_14295f72880e4b87a1baf1ced943ac40_Out_2_Vector4);
|
|
float _Add_e59af300bba2498db32eac1412123447_Out_2_Float;
|
|
Unity_Add_float(_Split_ae83014fcbd9f7879a0b91fa66dc9718_R_1_Float, _Split_ae83014fcbd9f7879a0b91fa66dc9718_G_2_Float, _Add_e59af300bba2498db32eac1412123447_Out_2_Float);
|
|
float _Add_e855069f047fae8ea9027d56acb61e56_Out_2_Float;
|
|
Unity_Add_float(_Add_e59af300bba2498db32eac1412123447_Out_2_Float, _Split_ae83014fcbd9f7879a0b91fa66dc9718_B_3_Float, _Add_e855069f047fae8ea9027d56acb61e56_Out_2_Float);
|
|
float4 _Divide_91ae4b94f1d9b78e99d0472293b8098c_Out_2_Vector4;
|
|
Unity_Divide_float4(_Add_14295f72880e4b87a1baf1ced943ac40_Out_2_Vector4, (_Add_e855069f047fae8ea9027d56acb61e56_Out_2_Float.xxxx), _Divide_91ae4b94f1d9b78e99d0472293b8098c_Out_2_Vector4);
|
|
XYZ_1 = _Divide_91ae4b94f1d9b78e99d0472293b8098c_Out_2_Vector4;
|
|
XZ_2 = _SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_RGBA_0_Vector4;
|
|
YZ_3 = _SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_RGBA_0_Vector4;
|
|
XY_4 = _SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_RGBA_0_Vector4;
|
|
}
|
|
|
|
void Unity_Clamp_float(float In, float Min, float Max, out float Out)
|
|
{
|
|
Out = clamp(In, Min, Max);
|
|
}
|
|
|
|
void Unity_Absolute_float(float In, out float Out)
|
|
{
|
|
Out = abs(In);
|
|
}
|
|
|
|
void Unity_Power_float(float A, float B, out float Out)
|
|
{
|
|
Out = pow(A, B);
|
|
}
|
|
|
|
void Unity_Clamp_float4(float4 In, float4 Min, float4 Max, out float4 Out)
|
|
{
|
|
Out = clamp(In, Min, Max);
|
|
}
|
|
|
|
void Unity_Branch_float4(float Predicate, float4 True, float4 False, out float4 Out)
|
|
{
|
|
Out = Predicate ? True : False;
|
|
}
|
|
|
|
void Unity_TilingAndOffset_float(float2 UV, float2 Tiling, float2 Offset, out float2 Out)
|
|
{
|
|
Out = UV * Tiling + Offset;
|
|
}
|
|
|
|
void Unity_Saturate_float(float In, out float Out)
|
|
{
|
|
Out = saturate(In);
|
|
}
|
|
|
|
void Unity_SquareRoot_float4(float4 In, out float4 Out)
|
|
{
|
|
Out = sqrt(In);
|
|
}
|
|
|
|
void Unity_Sign_float(float In, out float Out)
|
|
{
|
|
Out = sign(In);
|
|
}
|
|
|
|
void Unity_Ceiling_float(float In, out float Out)
|
|
{
|
|
Out = ceil(In);
|
|
}
|
|
|
|
void Unity_Lerp_float4(float4 A, float4 B, float4 T, out float4 Out)
|
|
{
|
|
Out = lerp(A, B, T);
|
|
}
|
|
|
|
struct Bindings_BlendOverlayBaseColor_acdb3dfca72bd6b42bbc35f4613331a2_float
|
|
{
|
|
};
|
|
|
|
void SG_BlendOverlayBaseColor_acdb3dfca72bd6b42bbc35f4613331a2_float(float4 Color_9AA111D3, float Vector1_FBE622A2, float Vector1_8C15C351, Bindings_BlendOverlayBaseColor_acdb3dfca72bd6b42bbc35f4613331a2_float IN, out float3 OutVector4_1)
|
|
{
|
|
float4 _Property_012510d774fb7f8b860f5270dca4500f_Out_0_Vector4 = Color_9AA111D3;
|
|
float4 _SquareRoot_c2c57d0223a9538aa9240890c3cacb0c_Out_1_Vector4;
|
|
Unity_SquareRoot_float4(_Property_012510d774fb7f8b860f5270dca4500f_Out_0_Vector4, _SquareRoot_c2c57d0223a9538aa9240890c3cacb0c_Out_1_Vector4);
|
|
float _Property_a00e29241d12f983b30177515b367ec9_Out_0_Float = Vector1_FBE622A2;
|
|
float _Sign_343a45ede7349283a681c6bd9998fd8e_Out_1_Float;
|
|
Unity_Sign_float(_Property_a00e29241d12f983b30177515b367ec9_Out_0_Float, _Sign_343a45ede7349283a681c6bd9998fd8e_Out_1_Float);
|
|
float _Add_681019b8f5d3d68bb482d419c9fc61a9_Out_2_Float;
|
|
Unity_Add_float(_Sign_343a45ede7349283a681c6bd9998fd8e_Out_1_Float, float(1), _Add_681019b8f5d3d68bb482d419c9fc61a9_Out_2_Float);
|
|
float _Multiply_e8f4cb722712a880ac0db6c7461427f7_Out_2_Float;
|
|
Unity_Multiply_float_float(_Add_681019b8f5d3d68bb482d419c9fc61a9_Out_2_Float, 0.5, _Multiply_e8f4cb722712a880ac0db6c7461427f7_Out_2_Float);
|
|
float _Ceiling_95ad15988aa9b98184875fa754feae01_Out_1_Float;
|
|
Unity_Ceiling_float(_Multiply_e8f4cb722712a880ac0db6c7461427f7_Out_2_Float, _Ceiling_95ad15988aa9b98184875fa754feae01_Out_1_Float);
|
|
float _Property_2db1c747a05ee284a8b00076062f91a4_Out_0_Float = Vector1_8C15C351;
|
|
float _Multiply_9564ecda5193bc8286d9ff771c9226cd_Out_2_Float;
|
|
Unity_Multiply_float_float(_Property_2db1c747a05ee284a8b00076062f91a4_Out_0_Float, _Property_2db1c747a05ee284a8b00076062f91a4_Out_0_Float, _Multiply_9564ecda5193bc8286d9ff771c9226cd_Out_2_Float);
|
|
float4 _Lerp_b3cdb01fc3c5b988ac9b184943bf7c01_Out_3_Vector4;
|
|
Unity_Lerp_float4(_SquareRoot_c2c57d0223a9538aa9240890c3cacb0c_Out_1_Vector4, (_Ceiling_95ad15988aa9b98184875fa754feae01_Out_1_Float.xxxx), (_Multiply_9564ecda5193bc8286d9ff771c9226cd_Out_2_Float.xxxx), _Lerp_b3cdb01fc3c5b988ac9b184943bf7c01_Out_3_Vector4);
|
|
float4 _Multiply_39d1daff98488f8ea2cd794ad4f20926_Out_2_Vector4;
|
|
Unity_Multiply_float4_float4(_Lerp_b3cdb01fc3c5b988ac9b184943bf7c01_Out_3_Vector4, _Lerp_b3cdb01fc3c5b988ac9b184943bf7c01_Out_3_Vector4, _Multiply_39d1daff98488f8ea2cd794ad4f20926_Out_2_Vector4);
|
|
OutVector4_1 = (_Multiply_39d1daff98488f8ea2cd794ad4f20926_Out_2_Vector4.xyz);
|
|
}
|
|
|
|
void Unity_Add_float2(float2 A, float2 B, out float2 Out)
|
|
{
|
|
Out = A + B;
|
|
}
|
|
|
|
void Unity_DotProduct_float2(float2 A, float2 B, out float Out)
|
|
{
|
|
Out = dot(A, B);
|
|
}
|
|
|
|
void Unity_OneMinus_float(float In, out float Out)
|
|
{
|
|
Out = 1 - In;
|
|
}
|
|
|
|
void Unity_SquareRoot_float(float In, out float Out)
|
|
{
|
|
Out = sqrt(In);
|
|
}
|
|
|
|
void Unity_Add_float3(float3 A, float3 B, out float3 Out)
|
|
{
|
|
Out = A + B;
|
|
}
|
|
|
|
void Unity_Divide_float3(float3 A, float3 B, out float3 Out)
|
|
{
|
|
Out = A / B;
|
|
}
|
|
|
|
void Unity_Normalize_float3(float3 In, out float3 Out)
|
|
{
|
|
Out = normalize(In);
|
|
}
|
|
|
|
struct Bindings_TriplanarNMn_059da9746584140498cd018db3c76047_float
|
|
{
|
|
float3 WorldSpaceNormal;
|
|
float3 WorldSpaceTangent;
|
|
float3 WorldSpaceBiTangent;
|
|
float3 AbsoluteWorldSpacePosition;
|
|
};
|
|
|
|
void SG_TriplanarNMn_059da9746584140498cd018db3c76047_float(UnityTexture2D Texture2D_80A3D28F, float Vector1_41461AC9, float Vector1_E4D1C13A, UnitySamplerState _SamplerState, Bindings_TriplanarNMn_059da9746584140498cd018db3c76047_float IN, out float4 XYZ_1, out float4 XZ_2, out float4 YZ_3, out float4 XY_4)
|
|
{
|
|
UnityTexture2D _Property_3e01b4d2fc68d48ba3acbba9d5881e59_Out_0_Texture2D = Texture2D_80A3D28F;
|
|
float _Split_89ed63cb625cb3878c183d0b71c03400_R_1_Float = IN.AbsoluteWorldSpacePosition[0];
|
|
float _Split_89ed63cb625cb3878c183d0b71c03400_G_2_Float = IN.AbsoluteWorldSpacePosition[1];
|
|
float _Split_89ed63cb625cb3878c183d0b71c03400_B_3_Float = IN.AbsoluteWorldSpacePosition[2];
|
|
float _Split_89ed63cb625cb3878c183d0b71c03400_A_4_Float = 0;
|
|
float4 _Combine_cf2d04ff119ad88493f6460431765cbb_RGBA_4_Vector4;
|
|
float3 _Combine_cf2d04ff119ad88493f6460431765cbb_RGB_5_Vector3;
|
|
float2 _Combine_cf2d04ff119ad88493f6460431765cbb_RG_6_Vector2;
|
|
Unity_Combine_float(_Split_89ed63cb625cb3878c183d0b71c03400_R_1_Float, _Split_89ed63cb625cb3878c183d0b71c03400_B_3_Float, float(0), float(0), _Combine_cf2d04ff119ad88493f6460431765cbb_RGBA_4_Vector4, _Combine_cf2d04ff119ad88493f6460431765cbb_RGB_5_Vector3, _Combine_cf2d04ff119ad88493f6460431765cbb_RG_6_Vector2);
|
|
float _Property_47988ec10c0c18879d461e00bed806e7_Out_0_Float = Vector1_41461AC9;
|
|
float4 _Multiply_14cec4902d0a00829e4555071a1b8ad1_Out_2_Vector4;
|
|
Unity_Multiply_float4_float4(_Combine_cf2d04ff119ad88493f6460431765cbb_RGBA_4_Vector4, (_Property_47988ec10c0c18879d461e00bed806e7_Out_0_Float.xxxx), _Multiply_14cec4902d0a00829e4555071a1b8ad1_Out_2_Vector4);
|
|
float3 _Sign_3a6ebf59931cf08cb0482e0144ddac24_Out_1_Vector3;
|
|
Unity_Sign_float3(IN.WorldSpaceNormal, _Sign_3a6ebf59931cf08cb0482e0144ddac24_Out_1_Vector3);
|
|
float _Split_6299d4ddcc4c74828aea40a46fdb896e_R_1_Float = _Sign_3a6ebf59931cf08cb0482e0144ddac24_Out_1_Vector3[0];
|
|
float _Split_6299d4ddcc4c74828aea40a46fdb896e_G_2_Float = _Sign_3a6ebf59931cf08cb0482e0144ddac24_Out_1_Vector3[1];
|
|
float _Split_6299d4ddcc4c74828aea40a46fdb896e_B_3_Float = _Sign_3a6ebf59931cf08cb0482e0144ddac24_Out_1_Vector3[2];
|
|
float _Split_6299d4ddcc4c74828aea40a46fdb896e_A_4_Float = 0;
|
|
float2 _Vector2_b76cb1842101e58b9e636d49b075c612_Out_0_Vector2 = float2(_Split_6299d4ddcc4c74828aea40a46fdb896e_G_2_Float, float(1));
|
|
float2 _Multiply_a87753ad90594382bf3a3a95abbadbc8_Out_2_Vector2;
|
|
Unity_Multiply_float2_float2((_Multiply_14cec4902d0a00829e4555071a1b8ad1_Out_2_Vector4.xy), _Vector2_b76cb1842101e58b9e636d49b075c612_Out_0_Vector2, _Multiply_a87753ad90594382bf3a3a95abbadbc8_Out_2_Vector2);
|
|
UnitySamplerState _Property_8a2b8589cd3a42a1879a29c28e4f711f_Out_0_SamplerState = _SamplerState;
|
|
float4 _SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_RGBA_0_Vector4 = SAMPLE_TEXTURE2D(_Property_3e01b4d2fc68d48ba3acbba9d5881e59_Out_0_Texture2D.tex, _Property_8a2b8589cd3a42a1879a29c28e4f711f_Out_0_SamplerState.samplerstate, _Property_3e01b4d2fc68d48ba3acbba9d5881e59_Out_0_Texture2D.GetTransformedUV(_Multiply_a87753ad90594382bf3a3a95abbadbc8_Out_2_Vector2) );
|
|
_SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_RGBA_0_Vector4.rgb = UnpackNormal(_SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_RGBA_0_Vector4);
|
|
float _SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_R_4_Float = _SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_RGBA_0_Vector4.r;
|
|
float _SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_G_5_Float = _SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_RGBA_0_Vector4.g;
|
|
float _SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_B_6_Float = _SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_RGBA_0_Vector4.b;
|
|
float _SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_A_7_Float = _SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_RGBA_0_Vector4.a;
|
|
float2 _Vector2_ad6bd100e273d78fa409a30a77bfa2cc_Out_0_Vector2 = float2(_SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_R_4_Float, _SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_G_5_Float);
|
|
float2 _Multiply_31e8db88ee20c985a9850d1a58f3282b_Out_2_Vector2;
|
|
Unity_Multiply_float2_float2(_Vector2_ad6bd100e273d78fa409a30a77bfa2cc_Out_0_Vector2, _Vector2_b76cb1842101e58b9e636d49b075c612_Out_0_Vector2, _Multiply_31e8db88ee20c985a9850d1a58f3282b_Out_2_Vector2);
|
|
float _Split_5ed44bf2eca0868f81eb18100f49d1fa_R_1_Float = IN.WorldSpaceNormal[0];
|
|
float _Split_5ed44bf2eca0868f81eb18100f49d1fa_G_2_Float = IN.WorldSpaceNormal[1];
|
|
float _Split_5ed44bf2eca0868f81eb18100f49d1fa_B_3_Float = IN.WorldSpaceNormal[2];
|
|
float _Split_5ed44bf2eca0868f81eb18100f49d1fa_A_4_Float = 0;
|
|
float2 _Vector2_70e5837843f28b8b9d64cada3697bd5a_Out_0_Vector2 = float2(_Split_5ed44bf2eca0868f81eb18100f49d1fa_R_1_Float, _Split_5ed44bf2eca0868f81eb18100f49d1fa_B_3_Float);
|
|
float2 _Add_1145b2f896593d80aa864a34e6702562_Out_2_Vector2;
|
|
Unity_Add_float2(_Multiply_31e8db88ee20c985a9850d1a58f3282b_Out_2_Vector2, _Vector2_70e5837843f28b8b9d64cada3697bd5a_Out_0_Vector2, _Add_1145b2f896593d80aa864a34e6702562_Out_2_Vector2);
|
|
float _Split_2bc77ca2d17bd78cb2383770ce50b179_R_1_Float = _Add_1145b2f896593d80aa864a34e6702562_Out_2_Vector2[0];
|
|
float _Split_2bc77ca2d17bd78cb2383770ce50b179_G_2_Float = _Add_1145b2f896593d80aa864a34e6702562_Out_2_Vector2[1];
|
|
float _Split_2bc77ca2d17bd78cb2383770ce50b179_B_3_Float = 0;
|
|
float _Split_2bc77ca2d17bd78cb2383770ce50b179_A_4_Float = 0;
|
|
float _Multiply_e4fe778b81456d819c52bb414cd95968_Out_2_Float;
|
|
Unity_Multiply_float_float(_SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_B_6_Float, _Split_5ed44bf2eca0868f81eb18100f49d1fa_G_2_Float, _Multiply_e4fe778b81456d819c52bb414cd95968_Out_2_Float);
|
|
float3 _Vector3_08f62c5c01619e849f1a7d85a44531ac_Out_0_Vector3 = float3(_Split_2bc77ca2d17bd78cb2383770ce50b179_R_1_Float, _Multiply_e4fe778b81456d819c52bb414cd95968_Out_2_Float, _Split_2bc77ca2d17bd78cb2383770ce50b179_G_2_Float);
|
|
float3 _Absolute_644b798714827680b39bf5d34f70385f_Out_1_Vector3;
|
|
Unity_Absolute_float3(IN.WorldSpaceNormal, _Absolute_644b798714827680b39bf5d34f70385f_Out_1_Vector3);
|
|
float _Property_adc4c59482221c8aad681c6558728ac9_Out_0_Float = Vector1_E4D1C13A;
|
|
float3 _Power_ee478822a04529849ae8df1636c29fe2_Out_2_Vector3;
|
|
Unity_Power_float3(_Absolute_644b798714827680b39bf5d34f70385f_Out_1_Vector3, (_Property_adc4c59482221c8aad681c6558728ac9_Out_0_Float.xxx), _Power_ee478822a04529849ae8df1636c29fe2_Out_2_Vector3);
|
|
float3 _Multiply_b386a937554d73828e437d126d69608b_Out_2_Vector3;
|
|
Unity_Multiply_float3_float3(_Power_ee478822a04529849ae8df1636c29fe2_Out_2_Vector3, _Power_ee478822a04529849ae8df1636c29fe2_Out_2_Vector3, _Multiply_b386a937554d73828e437d126d69608b_Out_2_Vector3);
|
|
float _Split_ae83014fcbd9f7879a0b91fa66dc9718_R_1_Float = _Multiply_b386a937554d73828e437d126d69608b_Out_2_Vector3[0];
|
|
float _Split_ae83014fcbd9f7879a0b91fa66dc9718_G_2_Float = _Multiply_b386a937554d73828e437d126d69608b_Out_2_Vector3[1];
|
|
float _Split_ae83014fcbd9f7879a0b91fa66dc9718_B_3_Float = _Multiply_b386a937554d73828e437d126d69608b_Out_2_Vector3[2];
|
|
float _Split_ae83014fcbd9f7879a0b91fa66dc9718_A_4_Float = 0;
|
|
float3 _Multiply_2e1040ca9c98d085ace76ee93f094039_Out_2_Vector3;
|
|
Unity_Multiply_float3_float3(_Vector3_08f62c5c01619e849f1a7d85a44531ac_Out_0_Vector3, (_Split_ae83014fcbd9f7879a0b91fa66dc9718_G_2_Float.xxx), _Multiply_2e1040ca9c98d085ace76ee93f094039_Out_2_Vector3);
|
|
float4 _Combine_192c2c4a69be588b90ca005a32e22552_RGBA_4_Vector4;
|
|
float3 _Combine_192c2c4a69be588b90ca005a32e22552_RGB_5_Vector3;
|
|
float2 _Combine_192c2c4a69be588b90ca005a32e22552_RG_6_Vector2;
|
|
Unity_Combine_float(_Split_89ed63cb625cb3878c183d0b71c03400_R_1_Float, _Split_89ed63cb625cb3878c183d0b71c03400_G_2_Float, float(0), float(0), _Combine_192c2c4a69be588b90ca005a32e22552_RGBA_4_Vector4, _Combine_192c2c4a69be588b90ca005a32e22552_RGB_5_Vector3, _Combine_192c2c4a69be588b90ca005a32e22552_RG_6_Vector2);
|
|
float4 _Multiply_138240d0d4846e87b0febabec0d6891b_Out_2_Vector4;
|
|
Unity_Multiply_float4_float4(_Combine_192c2c4a69be588b90ca005a32e22552_RGBA_4_Vector4, (_Property_47988ec10c0c18879d461e00bed806e7_Out_0_Float.xxxx), _Multiply_138240d0d4846e87b0febabec0d6891b_Out_2_Vector4);
|
|
float _Multiply_de711f4a4614bd89a463b53374cf4036_Out_2_Float;
|
|
Unity_Multiply_float_float(_Split_6299d4ddcc4c74828aea40a46fdb896e_B_3_Float, -1, _Multiply_de711f4a4614bd89a463b53374cf4036_Out_2_Float);
|
|
float2 _Vector2_4ed33f0c73b2698fa6f3c1b77fe76808_Out_0_Vector2 = float2(_Multiply_de711f4a4614bd89a463b53374cf4036_Out_2_Float, float(1));
|
|
float2 _Multiply_2af6058cc6ccb88caefd2799bb5941e8_Out_2_Vector2;
|
|
Unity_Multiply_float2_float2((_Multiply_138240d0d4846e87b0febabec0d6891b_Out_2_Vector4.xy), _Vector2_4ed33f0c73b2698fa6f3c1b77fe76808_Out_0_Vector2, _Multiply_2af6058cc6ccb88caefd2799bb5941e8_Out_2_Vector2);
|
|
float4 _SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_RGBA_0_Vector4 = SAMPLE_TEXTURE2D(_Property_3e01b4d2fc68d48ba3acbba9d5881e59_Out_0_Texture2D.tex, _Property_8a2b8589cd3a42a1879a29c28e4f711f_Out_0_SamplerState.samplerstate, _Property_3e01b4d2fc68d48ba3acbba9d5881e59_Out_0_Texture2D.GetTransformedUV(_Multiply_2af6058cc6ccb88caefd2799bb5941e8_Out_2_Vector2) );
|
|
_SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_RGBA_0_Vector4.rgb = UnpackNormal(_SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_RGBA_0_Vector4);
|
|
float _SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_R_4_Float = _SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_RGBA_0_Vector4.r;
|
|
float _SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_G_5_Float = _SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_RGBA_0_Vector4.g;
|
|
float _SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_B_6_Float = _SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_RGBA_0_Vector4.b;
|
|
float _SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_A_7_Float = _SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_RGBA_0_Vector4.a;
|
|
float2 _Vector2_fe9aedd4528c7486ada4abdca0b0944e_Out_0_Vector2 = float2(_SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_R_4_Float, _SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_G_5_Float);
|
|
float2 _Multiply_02b9b4665ad9918d8721bcaddc82f06f_Out_2_Vector2;
|
|
Unity_Multiply_float2_float2(_Vector2_fe9aedd4528c7486ada4abdca0b0944e_Out_0_Vector2, _Vector2_4ed33f0c73b2698fa6f3c1b77fe76808_Out_0_Vector2, _Multiply_02b9b4665ad9918d8721bcaddc82f06f_Out_2_Vector2);
|
|
float2 _Vector2_a74a85274da15181abb63cc5e8df0de1_Out_0_Vector2 = float2(_Split_5ed44bf2eca0868f81eb18100f49d1fa_R_1_Float, _Split_5ed44bf2eca0868f81eb18100f49d1fa_G_2_Float);
|
|
float2 _Add_b227c84042055e8faa1a9fdc69529707_Out_2_Vector2;
|
|
Unity_Add_float2(_Multiply_02b9b4665ad9918d8721bcaddc82f06f_Out_2_Vector2, _Vector2_a74a85274da15181abb63cc5e8df0de1_Out_0_Vector2, _Add_b227c84042055e8faa1a9fdc69529707_Out_2_Vector2);
|
|
float _Split_2cfb9eacd8762483941459cdf28bda97_R_1_Float = _Add_b227c84042055e8faa1a9fdc69529707_Out_2_Vector2[0];
|
|
float _Split_2cfb9eacd8762483941459cdf28bda97_G_2_Float = _Add_b227c84042055e8faa1a9fdc69529707_Out_2_Vector2[1];
|
|
float _Split_2cfb9eacd8762483941459cdf28bda97_B_3_Float = 0;
|
|
float _Split_2cfb9eacd8762483941459cdf28bda97_A_4_Float = 0;
|
|
float _Multiply_1d65ce08ce672087879125f2e13c4004_Out_2_Float;
|
|
Unity_Multiply_float_float(_SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_B_6_Float, _Split_5ed44bf2eca0868f81eb18100f49d1fa_B_3_Float, _Multiply_1d65ce08ce672087879125f2e13c4004_Out_2_Float);
|
|
float3 _Vector3_ba6cfb4671e8c58f9b41ea1dc23102ca_Out_0_Vector3 = float3(_Split_2cfb9eacd8762483941459cdf28bda97_R_1_Float, _Split_2cfb9eacd8762483941459cdf28bda97_G_2_Float, _Multiply_1d65ce08ce672087879125f2e13c4004_Out_2_Float);
|
|
float3 _Multiply_7bb4009c92b108849ac6ca92bc1442f2_Out_2_Vector3;
|
|
Unity_Multiply_float3_float3(_Vector3_ba6cfb4671e8c58f9b41ea1dc23102ca_Out_0_Vector3, (_Split_ae83014fcbd9f7879a0b91fa66dc9718_B_3_Float.xxx), _Multiply_7bb4009c92b108849ac6ca92bc1442f2_Out_2_Vector3);
|
|
float4 _Combine_1e9ffdba42d6918fb7a4b185f1585d2a_RGBA_4_Vector4;
|
|
float3 _Combine_1e9ffdba42d6918fb7a4b185f1585d2a_RGB_5_Vector3;
|
|
float2 _Combine_1e9ffdba42d6918fb7a4b185f1585d2a_RG_6_Vector2;
|
|
Unity_Combine_float(_Split_89ed63cb625cb3878c183d0b71c03400_B_3_Float, _Split_89ed63cb625cb3878c183d0b71c03400_G_2_Float, float(0), float(0), _Combine_1e9ffdba42d6918fb7a4b185f1585d2a_RGBA_4_Vector4, _Combine_1e9ffdba42d6918fb7a4b185f1585d2a_RGB_5_Vector3, _Combine_1e9ffdba42d6918fb7a4b185f1585d2a_RG_6_Vector2);
|
|
float4 _Multiply_2c0864423b014f8b8af8523f68cbb63c_Out_2_Vector4;
|
|
Unity_Multiply_float4_float4(_Combine_1e9ffdba42d6918fb7a4b185f1585d2a_RGBA_4_Vector4, (_Property_47988ec10c0c18879d461e00bed806e7_Out_0_Float.xxxx), _Multiply_2c0864423b014f8b8af8523f68cbb63c_Out_2_Vector4);
|
|
float2 _Vector2_a1e23e0f921b6484818f009a2b12a5ba_Out_0_Vector2 = float2(_Split_6299d4ddcc4c74828aea40a46fdb896e_R_1_Float, float(1));
|
|
float2 _Multiply_862402885a49f18cb87278ab53bc6744_Out_2_Vector2;
|
|
Unity_Multiply_float2_float2((_Multiply_2c0864423b014f8b8af8523f68cbb63c_Out_2_Vector4.xy), _Vector2_a1e23e0f921b6484818f009a2b12a5ba_Out_0_Vector2, _Multiply_862402885a49f18cb87278ab53bc6744_Out_2_Vector2);
|
|
float4 _SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_RGBA_0_Vector4 = SAMPLE_TEXTURE2D(_Property_3e01b4d2fc68d48ba3acbba9d5881e59_Out_0_Texture2D.tex, _Property_8a2b8589cd3a42a1879a29c28e4f711f_Out_0_SamplerState.samplerstate, _Property_3e01b4d2fc68d48ba3acbba9d5881e59_Out_0_Texture2D.GetTransformedUV(_Multiply_862402885a49f18cb87278ab53bc6744_Out_2_Vector2) );
|
|
_SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_RGBA_0_Vector4.rgb = UnpackNormal(_SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_RGBA_0_Vector4);
|
|
float _SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_R_4_Float = _SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_RGBA_0_Vector4.r;
|
|
float _SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_G_5_Float = _SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_RGBA_0_Vector4.g;
|
|
float _SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_B_6_Float = _SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_RGBA_0_Vector4.b;
|
|
float _SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_A_7_Float = _SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_RGBA_0_Vector4.a;
|
|
float _Multiply_4649b768be76d784a3284bacde795359_Out_2_Float;
|
|
Unity_Multiply_float_float(_SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_B_6_Float, _Split_5ed44bf2eca0868f81eb18100f49d1fa_R_1_Float, _Multiply_4649b768be76d784a3284bacde795359_Out_2_Float);
|
|
float2 _Vector2_819fcd5eb484438eacad1987576d7d67_Out_0_Vector2 = float2(_SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_R_4_Float, _SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_G_5_Float);
|
|
float2 _Multiply_58530ebb3c6d798b93686a76247bf505_Out_2_Vector2;
|
|
Unity_Multiply_float2_float2(_Vector2_819fcd5eb484438eacad1987576d7d67_Out_0_Vector2, _Vector2_a1e23e0f921b6484818f009a2b12a5ba_Out_0_Vector2, _Multiply_58530ebb3c6d798b93686a76247bf505_Out_2_Vector2);
|
|
float2 _Vector2_e293c112b2f49e88a5fe46dfb1fbeb40_Out_0_Vector2 = float2(_Split_5ed44bf2eca0868f81eb18100f49d1fa_B_3_Float, _Split_5ed44bf2eca0868f81eb18100f49d1fa_G_2_Float);
|
|
float2 _Add_cf00fb232c6e2b8e973ab2f84453f55e_Out_2_Vector2;
|
|
Unity_Add_float2(_Multiply_58530ebb3c6d798b93686a76247bf505_Out_2_Vector2, _Vector2_e293c112b2f49e88a5fe46dfb1fbeb40_Out_0_Vector2, _Add_cf00fb232c6e2b8e973ab2f84453f55e_Out_2_Vector2);
|
|
float _Split_3ea3e61d32bdd78f82c686b75ff3fd9b_R_1_Float = _Add_cf00fb232c6e2b8e973ab2f84453f55e_Out_2_Vector2[0];
|
|
float _Split_3ea3e61d32bdd78f82c686b75ff3fd9b_G_2_Float = _Add_cf00fb232c6e2b8e973ab2f84453f55e_Out_2_Vector2[1];
|
|
float _Split_3ea3e61d32bdd78f82c686b75ff3fd9b_B_3_Float = 0;
|
|
float _Split_3ea3e61d32bdd78f82c686b75ff3fd9b_A_4_Float = 0;
|
|
float3 _Vector3_13a08d5940172a84a78ee3d9b8766833_Out_0_Vector3 = float3(_Multiply_4649b768be76d784a3284bacde795359_Out_2_Float, _Split_3ea3e61d32bdd78f82c686b75ff3fd9b_G_2_Float, _Split_3ea3e61d32bdd78f82c686b75ff3fd9b_R_1_Float);
|
|
float3 _Multiply_77818c22e359fc8cbb7dd20216a8db72_Out_2_Vector3;
|
|
Unity_Multiply_float3_float3(_Vector3_13a08d5940172a84a78ee3d9b8766833_Out_0_Vector3, (_Split_ae83014fcbd9f7879a0b91fa66dc9718_R_1_Float.xxx), _Multiply_77818c22e359fc8cbb7dd20216a8db72_Out_2_Vector3);
|
|
float3 _Add_769d9ee909c9238dbbf72d2800a2f268_Out_2_Vector3;
|
|
Unity_Add_float3(_Multiply_7bb4009c92b108849ac6ca92bc1442f2_Out_2_Vector3, _Multiply_77818c22e359fc8cbb7dd20216a8db72_Out_2_Vector3, _Add_769d9ee909c9238dbbf72d2800a2f268_Out_2_Vector3);
|
|
float3 _Add_14295f72880e4b87a1baf1ced943ac40_Out_2_Vector3;
|
|
Unity_Add_float3(_Multiply_2e1040ca9c98d085ace76ee93f094039_Out_2_Vector3, _Add_769d9ee909c9238dbbf72d2800a2f268_Out_2_Vector3, _Add_14295f72880e4b87a1baf1ced943ac40_Out_2_Vector3);
|
|
float _Add_e59af300bba2498db32eac1412123447_Out_2_Float;
|
|
Unity_Add_float(_Split_ae83014fcbd9f7879a0b91fa66dc9718_R_1_Float, _Split_ae83014fcbd9f7879a0b91fa66dc9718_G_2_Float, _Add_e59af300bba2498db32eac1412123447_Out_2_Float);
|
|
float _Add_e855069f047fae8ea9027d56acb61e56_Out_2_Float;
|
|
Unity_Add_float(_Add_e59af300bba2498db32eac1412123447_Out_2_Float, _Split_ae83014fcbd9f7879a0b91fa66dc9718_B_3_Float, _Add_e855069f047fae8ea9027d56acb61e56_Out_2_Float);
|
|
float3 _Divide_91ae4b94f1d9b78e99d0472293b8098c_Out_2_Vector3;
|
|
Unity_Divide_float3(_Add_14295f72880e4b87a1baf1ced943ac40_Out_2_Vector3, (_Add_e855069f047fae8ea9027d56acb61e56_Out_2_Float.xxx), _Divide_91ae4b94f1d9b78e99d0472293b8098c_Out_2_Vector3);
|
|
float3 _Transform_73eecc0c3689d184a34c8d0f28a58adf_Out_1_Vector3;
|
|
{
|
|
float3x3 tangentTransform = float3x3(IN.WorldSpaceTangent, IN.WorldSpaceBiTangent, IN.WorldSpaceNormal);
|
|
_Transform_73eecc0c3689d184a34c8d0f28a58adf_Out_1_Vector3 = TransformWorldToTangent(_Divide_91ae4b94f1d9b78e99d0472293b8098c_Out_2_Vector3.xyz, tangentTransform, true);
|
|
}
|
|
float3 _Normalize_15ef346824db0a8797631ed8b998e673_Out_1_Vector3;
|
|
Unity_Normalize_float3(_Transform_73eecc0c3689d184a34c8d0f28a58adf_Out_1_Vector3, _Normalize_15ef346824db0a8797631ed8b998e673_Out_1_Vector3);
|
|
XYZ_1 = (float4(_Normalize_15ef346824db0a8797631ed8b998e673_Out_1_Vector3, 1.0));
|
|
XZ_2 = (float4(_Vector3_08f62c5c01619e849f1a7d85a44531ac_Out_0_Vector3, 1.0));
|
|
YZ_3 = (float4(_Vector3_ba6cfb4671e8c58f9b41ea1dc23102ca_Out_0_Vector3, 1.0));
|
|
XY_4 = (float4(_Vector3_13a08d5940172a84a78ee3d9b8766833_Out_0_Vector3, 1.0));
|
|
}
|
|
|
|
void Unity_NormalStrength_float(float3 In, float Strength, out float3 Out)
|
|
{
|
|
Out = float3(In.rg * Strength, lerp(1, In.b, saturate(Strength)));
|
|
}
|
|
|
|
void Unity_NormalBlend_float(float3 A, float3 B, out float3 Out)
|
|
{
|
|
Out = SafeNormalize(float3(A.rg + B.rg, A.b * B.b));
|
|
}
|
|
|
|
void Unity_Subtract_float(float A, float B, out float Out)
|
|
{
|
|
Out = A - B;
|
|
}
|
|
|
|
void Unity_Divide_float(float A, float B, out float Out)
|
|
{
|
|
Out = A / B;
|
|
}
|
|
|
|
void Unity_Lerp_float3(float3 A, float3 B, float3 T, out float3 Out)
|
|
{
|
|
Out = lerp(A, B, T);
|
|
}
|
|
|
|
void Unity_Remap_float(float In, float2 InMinMax, float2 OutMinMax, out float Out)
|
|
{
|
|
Out = OutMinMax.x + (In - InMinMax.x) * (OutMinMax.y - OutMinMax.x) / (InMinMax.y - InMinMax.x);
|
|
}
|
|
|
|
void Unity_Branch_float(float Predicate, float True, float False, out float Out)
|
|
{
|
|
Out = Predicate ? True : False;
|
|
}
|
|
|
|
void Unity_Lerp_float(float A, float B, float T, out float Out)
|
|
{
|
|
Out = lerp(A, B, T);
|
|
}
|
|
|
|
struct Bindings_BlendOverlayDetailSmoothness_06e12138dc89c0040b45a57abe520a1a_float
|
|
{
|
|
};
|
|
|
|
void SG_BlendOverlayDetailSmoothness_06e12138dc89c0040b45a57abe520a1a_float(float Vector1_32317166, float Vector1_FBE622A2, float Vector1_8C15C351, Bindings_BlendOverlayDetailSmoothness_06e12138dc89c0040b45a57abe520a1a_float IN, out float SmoothnessOverlay_1)
|
|
{
|
|
float _Property_728cc50521e9e988ac9cbff4872d5139_Out_0_Float = Vector1_32317166;
|
|
float _Property_a00e29241d12f983b30177515b367ec9_Out_0_Float = Vector1_FBE622A2;
|
|
float _Sign_343a45ede7349283a681c6bd9998fd8e_Out_1_Float;
|
|
Unity_Sign_float(_Property_a00e29241d12f983b30177515b367ec9_Out_0_Float, _Sign_343a45ede7349283a681c6bd9998fd8e_Out_1_Float);
|
|
float _Add_681019b8f5d3d68bb482d419c9fc61a9_Out_2_Float;
|
|
Unity_Add_float(_Sign_343a45ede7349283a681c6bd9998fd8e_Out_1_Float, float(1), _Add_681019b8f5d3d68bb482d419c9fc61a9_Out_2_Float);
|
|
float _Multiply_e8f4cb722712a880ac0db6c7461427f7_Out_2_Float;
|
|
Unity_Multiply_float_float(_Add_681019b8f5d3d68bb482d419c9fc61a9_Out_2_Float, 0.5, _Multiply_e8f4cb722712a880ac0db6c7461427f7_Out_2_Float);
|
|
float _Ceiling_95ad15988aa9b98184875fa754feae01_Out_1_Float;
|
|
Unity_Ceiling_float(_Multiply_e8f4cb722712a880ac0db6c7461427f7_Out_2_Float, _Ceiling_95ad15988aa9b98184875fa754feae01_Out_1_Float);
|
|
float _Property_2db1c747a05ee284a8b00076062f91a4_Out_0_Float = Vector1_8C15C351;
|
|
float _Lerp_b3cdb01fc3c5b988ac9b184943bf7c01_Out_3_Float;
|
|
Unity_Lerp_float(_Property_728cc50521e9e988ac9cbff4872d5139_Out_0_Float, _Ceiling_95ad15988aa9b98184875fa754feae01_Out_1_Float, _Property_2db1c747a05ee284a8b00076062f91a4_Out_0_Float, _Lerp_b3cdb01fc3c5b988ac9b184943bf7c01_Out_3_Float);
|
|
SmoothnessOverlay_1 = _Lerp_b3cdb01fc3c5b988ac9b184943bf7c01_Out_3_Float;
|
|
}
|
|
|
|
void Unity_Minimum_float(float A, float B, out float Out)
|
|
{
|
|
Out = min(A, B);
|
|
};
|
|
|
|
// Graph Vertex
|
|
// GraphVertex: <None>
|
|
|
|
// Graph Pixel
|
|
struct SurfaceDescription
|
|
{
|
|
float3 BaseColor;
|
|
float3 Emission;
|
|
float Alpha;
|
|
float3 BentNormal;
|
|
float Smoothness;
|
|
float Occlusion;
|
|
float3 NormalTS;
|
|
float Metallic;
|
|
};
|
|
|
|
SurfaceDescription SurfaceDescriptionFunction(SurfaceDescriptionInputs IN)
|
|
{
|
|
SurfaceDescription surface = (SurfaceDescription)0;
|
|
float _Property_72a5c604805a7b8ebbfd7acee03656aa_Out_0_Boolean = _CoverMaskRCurvature;
|
|
UnityTexture2D _Property_5f029bbc9f13b7858650859c3b63ebfd_Out_0_Texture2D = UnityBuildTexture2DStructNoScale(_BaseColorMap);
|
|
float4 _Property_a409d5fcafb9f182a4b2aea64204408f_Out_0_Vector4 = _BaseTilingOffset;
|
|
float4 _Divide_6a90cebe78e620828de587523daaa7e6_Out_2_Vector4;
|
|
Unity_Divide_float4(float4(1, 1, 0, 0), _Property_a409d5fcafb9f182a4b2aea64204408f_Out_0_Vector4, _Divide_6a90cebe78e620828de587523daaa7e6_Out_2_Vector4);
|
|
float _Property_3539de8c698c2981bb3c088d4ec52201_Out_0_Float = _BaseTriplanarThreshold;
|
|
Bindings_TriplanarNM_bc609ed95f52591469ab35dbfe0efcea_float _TriplanarNM_92d0433ff3938b8392407d2ab8713ac8;
|
|
_TriplanarNM_92d0433ff3938b8392407d2ab8713ac8.WorldSpaceNormal = IN.WorldSpaceNormal;
|
|
_TriplanarNM_92d0433ff3938b8392407d2ab8713ac8.AbsoluteWorldSpacePosition = IN.AbsoluteWorldSpacePosition;
|
|
float4 _TriplanarNM_92d0433ff3938b8392407d2ab8713ac8_XYZ_1_Vector4;
|
|
float4 _TriplanarNM_92d0433ff3938b8392407d2ab8713ac8_XZ_2_Vector4;
|
|
float4 _TriplanarNM_92d0433ff3938b8392407d2ab8713ac8_YZ_3_Vector4;
|
|
float4 _TriplanarNM_92d0433ff3938b8392407d2ab8713ac8_XY_4_Vector4;
|
|
SG_TriplanarNM_bc609ed95f52591469ab35dbfe0efcea_float(_Property_5f029bbc9f13b7858650859c3b63ebfd_Out_0_Texture2D, (_Divide_6a90cebe78e620828de587523daaa7e6_Out_2_Vector4).x, _Property_3539de8c698c2981bb3c088d4ec52201_Out_0_Float, UnityBuildSamplerStateStruct(SamplerState_Linear_Repeat_Aniso8), _TriplanarNM_92d0433ff3938b8392407d2ab8713ac8, _TriplanarNM_92d0433ff3938b8392407d2ab8713ac8_XYZ_1_Vector4, _TriplanarNM_92d0433ff3938b8392407d2ab8713ac8_XZ_2_Vector4, _TriplanarNM_92d0433ff3938b8392407d2ab8713ac8_YZ_3_Vector4, _TriplanarNM_92d0433ff3938b8392407d2ab8713ac8_XY_4_Vector4);
|
|
float4 _Property_87cd542c2b8c30868ed1d7d38aed8f2b_Out_0_Vector4 = _BaseColor;
|
|
float4 _Multiply_4b2be0b3fe39f385b887e7c82ab41e0b_Out_2_Vector4;
|
|
Unity_Multiply_float4_float4(_TriplanarNM_92d0433ff3938b8392407d2ab8713ac8_XYZ_1_Vector4, _Property_87cd542c2b8c30868ed1d7d38aed8f2b_Out_0_Vector4, _Multiply_4b2be0b3fe39f385b887e7c82ab41e0b_Out_2_Vector4);
|
|
UnityTexture2D _Property_c167aafac28bd98c8411d3e25631fdeb_Out_0_Texture2D = UnityBuildTexture2DStructNoScale(_CoverMaskA);
|
|
float4 _UV_e143f0ebbac8bb8cab3206ab93422dda_Out_0_Vector4 = IN.uv0;
|
|
float4 _SampleTexture2D_32717b1e99785588830ceee116cbe7fc_RGBA_0_Vector4 = SAMPLE_TEXTURE2D(_Property_c167aafac28bd98c8411d3e25631fdeb_Out_0_Texture2D.tex, _Property_c167aafac28bd98c8411d3e25631fdeb_Out_0_Texture2D.samplerstate, _Property_c167aafac28bd98c8411d3e25631fdeb_Out_0_Texture2D.GetTransformedUV((_UV_e143f0ebbac8bb8cab3206ab93422dda_Out_0_Vector4.xy)) );
|
|
float _SampleTexture2D_32717b1e99785588830ceee116cbe7fc_R_4_Float = _SampleTexture2D_32717b1e99785588830ceee116cbe7fc_RGBA_0_Vector4.r;
|
|
float _SampleTexture2D_32717b1e99785588830ceee116cbe7fc_G_5_Float = _SampleTexture2D_32717b1e99785588830ceee116cbe7fc_RGBA_0_Vector4.g;
|
|
float _SampleTexture2D_32717b1e99785588830ceee116cbe7fc_B_6_Float = _SampleTexture2D_32717b1e99785588830ceee116cbe7fc_RGBA_0_Vector4.b;
|
|
float _SampleTexture2D_32717b1e99785588830ceee116cbe7fc_A_7_Float = _SampleTexture2D_32717b1e99785588830ceee116cbe7fc_RGBA_0_Vector4.a;
|
|
float _Multiply_01f97603c3df268380d339564b08db11_Out_2_Float;
|
|
Unity_Multiply_float_float(_SampleTexture2D_32717b1e99785588830ceee116cbe7fc_R_4_Float, 2, _Multiply_01f97603c3df268380d339564b08db11_Out_2_Float);
|
|
float _Property_cad777e9a810198e8076eb2cd76e6817_Out_0_Float = _BaseDarknessCurvMultply;
|
|
float _Multiply_b67c8963c3ba188e85b84ae9bf0dcbf7_Out_2_Float;
|
|
Unity_Multiply_float_float(_Multiply_01f97603c3df268380d339564b08db11_Out_2_Float, _Property_cad777e9a810198e8076eb2cd76e6817_Out_0_Float, _Multiply_b67c8963c3ba188e85b84ae9bf0dcbf7_Out_2_Float);
|
|
float _Clamp_646f55d74b38f18aa983e5d031e0e7c3_Out_3_Float;
|
|
Unity_Clamp_float(_Multiply_b67c8963c3ba188e85b84ae9bf0dcbf7_Out_2_Float, float(0), float(1), _Clamp_646f55d74b38f18aa983e5d031e0e7c3_Out_3_Float);
|
|
float _Absolute_c99e11216fab2488946eb6243d985fdc_Out_1_Float;
|
|
Unity_Absolute_float(_Clamp_646f55d74b38f18aa983e5d031e0e7c3_Out_3_Float, _Absolute_c99e11216fab2488946eb6243d985fdc_Out_1_Float);
|
|
float _Property_f8a9827e6f28d9819188d4775dcf7620_Out_0_Float = _BaseDarknessCurvPower;
|
|
float _Power_1b88303e1ca2f285b344bf6aa0cf05e4_Out_2_Float;
|
|
Unity_Power_float(_Absolute_c99e11216fab2488946eb6243d985fdc_Out_1_Float, _Property_f8a9827e6f28d9819188d4775dcf7620_Out_0_Float, _Power_1b88303e1ca2f285b344bf6aa0cf05e4_Out_2_Float);
|
|
float _Clamp_27887d983dbb5a8bbd2966fbcbd7c126_Out_3_Float;
|
|
Unity_Clamp_float(_Power_1b88303e1ca2f285b344bf6aa0cf05e4_Out_2_Float, float(0), float(1), _Clamp_27887d983dbb5a8bbd2966fbcbd7c126_Out_3_Float);
|
|
float4 _Multiply_59efbfb897b39480ad44be129db72018_Out_2_Vector4;
|
|
Unity_Multiply_float4_float4(_Multiply_4b2be0b3fe39f385b887e7c82ab41e0b_Out_2_Vector4, (_Clamp_27887d983dbb5a8bbd2966fbcbd7c126_Out_3_Float.xxxx), _Multiply_59efbfb897b39480ad44be129db72018_Out_2_Vector4);
|
|
float4 _Clamp_841e38951a68f286955c4755e78c610b_Out_3_Vector4;
|
|
Unity_Clamp_float4(_Multiply_59efbfb897b39480ad44be129db72018_Out_2_Vector4, float4(0, 0, 0, 0), float4(1, 1, 1, 1), _Clamp_841e38951a68f286955c4755e78c610b_Out_3_Vector4);
|
|
float _Add_d7ea4a88c4af4886b1e567ddd2b963f9_Out_2_Float;
|
|
Unity_Add_float(_Multiply_01f97603c3df268380d339564b08db11_Out_2_Float, float(-1), _Add_d7ea4a88c4af4886b1e567ddd2b963f9_Out_2_Float);
|
|
float _Clamp_1a02c4bf5903c988b1489d14c840c1e3_Out_3_Float;
|
|
Unity_Clamp_float(_Add_d7ea4a88c4af4886b1e567ddd2b963f9_Out_2_Float, float(0), float(1), _Clamp_1a02c4bf5903c988b1489d14c840c1e3_Out_3_Float);
|
|
float _Property_0e0e1ec2131cec87836dce596351dc1c_Out_0_Float = _BaseBrightnessCurvMultply;
|
|
float _Multiply_c975dfa7de001c89addd082d443e2d07_Out_2_Float;
|
|
Unity_Multiply_float_float(_Clamp_1a02c4bf5903c988b1489d14c840c1e3_Out_3_Float, _Property_0e0e1ec2131cec87836dce596351dc1c_Out_0_Float, _Multiply_c975dfa7de001c89addd082d443e2d07_Out_2_Float);
|
|
float _Clamp_d5711b145a87ef8e8a93ceb9b6197759_Out_3_Float;
|
|
Unity_Clamp_float(_Multiply_c975dfa7de001c89addd082d443e2d07_Out_2_Float, float(0), float(1), _Clamp_d5711b145a87ef8e8a93ceb9b6197759_Out_3_Float);
|
|
float _Absolute_8f9bd7ee7a35c18084d08ad7ef463f52_Out_1_Float;
|
|
Unity_Absolute_float(_Clamp_d5711b145a87ef8e8a93ceb9b6197759_Out_3_Float, _Absolute_8f9bd7ee7a35c18084d08ad7ef463f52_Out_1_Float);
|
|
float _Property_9092f5beea2bec83a5c8a3f6623953a6_Out_0_Float = _BaseBrightnessCurvPower;
|
|
float _Power_5c1a81a2cfcc578996666adb93479f83_Out_2_Float;
|
|
Unity_Power_float(_Absolute_8f9bd7ee7a35c18084d08ad7ef463f52_Out_1_Float, _Property_9092f5beea2bec83a5c8a3f6623953a6_Out_0_Float, _Power_5c1a81a2cfcc578996666adb93479f83_Out_2_Float);
|
|
float _Clamp_f3c614a7ae35508288c0bc3f6194ca34_Out_3_Float;
|
|
Unity_Clamp_float(_Power_5c1a81a2cfcc578996666adb93479f83_Out_2_Float, float(0), float(1), _Clamp_f3c614a7ae35508288c0bc3f6194ca34_Out_3_Float);
|
|
float4 _Add_8313e15cade91a8ba653986d6722818a_Out_2_Vector4;
|
|
Unity_Add_float4(_Clamp_841e38951a68f286955c4755e78c610b_Out_3_Vector4, (_Clamp_f3c614a7ae35508288c0bc3f6194ca34_Out_3_Float.xxxx), _Add_8313e15cade91a8ba653986d6722818a_Out_2_Vector4);
|
|
float4 _Clamp_6dc8fea4fa463b8ea840911fd315c80f_Out_3_Vector4;
|
|
Unity_Clamp_float4(_Add_8313e15cade91a8ba653986d6722818a_Out_2_Vector4, float4(0, 0, 0, 0), float4(1, 1, 1, 1), _Clamp_6dc8fea4fa463b8ea840911fd315c80f_Out_3_Vector4);
|
|
float4 _Branch_26165227c7a50284b87d2996dee9982c_Out_3_Vector4;
|
|
Unity_Branch_float4(_Property_72a5c604805a7b8ebbfd7acee03656aa_Out_0_Boolean, _Clamp_6dc8fea4fa463b8ea840911fd315c80f_Out_3_Vector4, _Multiply_4b2be0b3fe39f385b887e7c82ab41e0b_Out_2_Vector4, _Branch_26165227c7a50284b87d2996dee9982c_Out_3_Vector4);
|
|
UnityTexture2D _Property_2e62abc1fe8adb8b8ff655b8448be202_Out_0_Texture2D = UnityBuildTexture2DStructNoScale(_DetailMap);
|
|
float4 _Property_b86e0ee324ffb58a92473eab69864d04_Out_0_Vector4 = _DetailTilingOffset;
|
|
float _Split_e832641c05503286a4951c0a93621755_R_1_Float = _Property_b86e0ee324ffb58a92473eab69864d04_Out_0_Vector4[0];
|
|
float _Split_e832641c05503286a4951c0a93621755_G_2_Float = _Property_b86e0ee324ffb58a92473eab69864d04_Out_0_Vector4[1];
|
|
float _Split_e832641c05503286a4951c0a93621755_B_3_Float = _Property_b86e0ee324ffb58a92473eab69864d04_Out_0_Vector4[2];
|
|
float _Split_e832641c05503286a4951c0a93621755_A_4_Float = _Property_b86e0ee324ffb58a92473eab69864d04_Out_0_Vector4[3];
|
|
float2 _Vector2_4b5eef288b3d4c83b24e4ab653f55ec8_Out_0_Vector2 = float2(_Split_e832641c05503286a4951c0a93621755_R_1_Float, _Split_e832641c05503286a4951c0a93621755_G_2_Float);
|
|
float2 _Vector2_2925cf98ba16b08dabc58cd65efd17db_Out_0_Vector2 = float2(_Split_e832641c05503286a4951c0a93621755_B_3_Float, _Split_e832641c05503286a4951c0a93621755_A_4_Float);
|
|
float2 _TilingAndOffset_74f6566eba9ccd899de18c0b11b7a7a2_Out_3_Vector2;
|
|
Unity_TilingAndOffset_float(IN.uv0.xy, _Vector2_4b5eef288b3d4c83b24e4ab653f55ec8_Out_0_Vector2, _Vector2_2925cf98ba16b08dabc58cd65efd17db_Out_0_Vector2, _TilingAndOffset_74f6566eba9ccd899de18c0b11b7a7a2_Out_3_Vector2);
|
|
float4 _SampleTexture2D_4bd08411faa60c828847f2247f06a809_RGBA_0_Vector4 = SAMPLE_TEXTURE2D(_Property_2e62abc1fe8adb8b8ff655b8448be202_Out_0_Texture2D.tex, _Property_2e62abc1fe8adb8b8ff655b8448be202_Out_0_Texture2D.samplerstate, _Property_2e62abc1fe8adb8b8ff655b8448be202_Out_0_Texture2D.GetTransformedUV(_TilingAndOffset_74f6566eba9ccd899de18c0b11b7a7a2_Out_3_Vector2) );
|
|
float _SampleTexture2D_4bd08411faa60c828847f2247f06a809_R_4_Float = _SampleTexture2D_4bd08411faa60c828847f2247f06a809_RGBA_0_Vector4.r;
|
|
float _SampleTexture2D_4bd08411faa60c828847f2247f06a809_G_5_Float = _SampleTexture2D_4bd08411faa60c828847f2247f06a809_RGBA_0_Vector4.g;
|
|
float _SampleTexture2D_4bd08411faa60c828847f2247f06a809_B_6_Float = _SampleTexture2D_4bd08411faa60c828847f2247f06a809_RGBA_0_Vector4.b;
|
|
float _SampleTexture2D_4bd08411faa60c828847f2247f06a809_A_7_Float = _SampleTexture2D_4bd08411faa60c828847f2247f06a809_RGBA_0_Vector4.a;
|
|
float _Multiply_ee5a3ccdebd1af84920cd1455a59468b_Out_2_Float;
|
|
Unity_Multiply_float_float(_SampleTexture2D_4bd08411faa60c828847f2247f06a809_R_4_Float, 2, _Multiply_ee5a3ccdebd1af84920cd1455a59468b_Out_2_Float);
|
|
float _Add_b8d727bda34294808f98551e67aa852f_Out_2_Float;
|
|
Unity_Add_float(_Multiply_ee5a3ccdebd1af84920cd1455a59468b_Out_2_Float, float(-1), _Add_b8d727bda34294808f98551e67aa852f_Out_2_Float);
|
|
float _Property_4634e589b03f6983b90fa6aaee0ed5f6_Out_0_Float = _DetailAlbedoScale;
|
|
float _Multiply_f0ed5a95f800c68aa9f7ea2f1322cc31_Out_2_Float;
|
|
Unity_Multiply_float_float(_Add_b8d727bda34294808f98551e67aa852f_Out_2_Float, _Property_4634e589b03f6983b90fa6aaee0ed5f6_Out_0_Float, _Multiply_f0ed5a95f800c68aa9f7ea2f1322cc31_Out_2_Float);
|
|
float _Saturate_469298b4e783d887889b71dc48b4399f_Out_1_Float;
|
|
Unity_Saturate_float(_Multiply_f0ed5a95f800c68aa9f7ea2f1322cc31_Out_2_Float, _Saturate_469298b4e783d887889b71dc48b4399f_Out_1_Float);
|
|
float _Absolute_3b29f3ceceba148189d11e0195af4be2_Out_1_Float;
|
|
Unity_Absolute_float(_Saturate_469298b4e783d887889b71dc48b4399f_Out_1_Float, _Absolute_3b29f3ceceba148189d11e0195af4be2_Out_1_Float);
|
|
Bindings_BlendOverlayBaseColor_acdb3dfca72bd6b42bbc35f4613331a2_float _BlendOverlayBaseColor_369c0b6a02e62b809dc5c6ac1efddde2;
|
|
float3 _BlendOverlayBaseColor_369c0b6a02e62b809dc5c6ac1efddde2_OutVector4_1_Vector3;
|
|
SG_BlendOverlayBaseColor_acdb3dfca72bd6b42bbc35f4613331a2_float(_Branch_26165227c7a50284b87d2996dee9982c_Out_3_Vector4, _Add_b8d727bda34294808f98551e67aa852f_Out_2_Float, _Absolute_3b29f3ceceba148189d11e0195af4be2_Out_1_Float, _BlendOverlayBaseColor_369c0b6a02e62b809dc5c6ac1efddde2, _BlendOverlayBaseColor_369c0b6a02e62b809dc5c6ac1efddde2_OutVector4_1_Vector3);
|
|
UnityTexture2D _Property_9a8451520f254f84a21875f3dac8cbe3_Out_0_Texture2D = UnityBuildTexture2DStructNoScale(_CoverBaseColorMap);
|
|
float4 _Property_c853e88632d9fd85ac0e98d12083eb62_Out_0_Vector4 = _CoverTilingOffset;
|
|
float4 _Divide_1fe314f1ca9dd78fbf366bbeb40e4ccf_Out_2_Vector4;
|
|
Unity_Divide_float4(float4(1, 1, 0, 0), _Property_c853e88632d9fd85ac0e98d12083eb62_Out_0_Vector4, _Divide_1fe314f1ca9dd78fbf366bbeb40e4ccf_Out_2_Vector4);
|
|
float _Property_ee792eccbb538a878b19be5db264531e_Out_0_Float = _CoverTriplanarThreshold;
|
|
Bindings_TriplanarNM_bc609ed95f52591469ab35dbfe0efcea_float _TriplanarNM_cca4c45d91c87989990c532a04e9e8e1;
|
|
_TriplanarNM_cca4c45d91c87989990c532a04e9e8e1.WorldSpaceNormal = IN.WorldSpaceNormal;
|
|
_TriplanarNM_cca4c45d91c87989990c532a04e9e8e1.AbsoluteWorldSpacePosition = IN.AbsoluteWorldSpacePosition;
|
|
float4 _TriplanarNM_cca4c45d91c87989990c532a04e9e8e1_XYZ_1_Vector4;
|
|
float4 _TriplanarNM_cca4c45d91c87989990c532a04e9e8e1_XZ_2_Vector4;
|
|
float4 _TriplanarNM_cca4c45d91c87989990c532a04e9e8e1_YZ_3_Vector4;
|
|
float4 _TriplanarNM_cca4c45d91c87989990c532a04e9e8e1_XY_4_Vector4;
|
|
SG_TriplanarNM_bc609ed95f52591469ab35dbfe0efcea_float(_Property_9a8451520f254f84a21875f3dac8cbe3_Out_0_Texture2D, (_Divide_1fe314f1ca9dd78fbf366bbeb40e4ccf_Out_2_Vector4).x, _Property_ee792eccbb538a878b19be5db264531e_Out_0_Float, UnityBuildSamplerStateStruct(SamplerState_Linear_Repeat_Aniso8), _TriplanarNM_cca4c45d91c87989990c532a04e9e8e1, _TriplanarNM_cca4c45d91c87989990c532a04e9e8e1_XYZ_1_Vector4, _TriplanarNM_cca4c45d91c87989990c532a04e9e8e1_XZ_2_Vector4, _TriplanarNM_cca4c45d91c87989990c532a04e9e8e1_YZ_3_Vector4, _TriplanarNM_cca4c45d91c87989990c532a04e9e8e1_XY_4_Vector4);
|
|
float4 _Property_18c743619f52288dbe24e28326388b00_Out_0_Vector4 = _CoverBaseColor;
|
|
float4 _Multiply_62594f3b30470e86a813e1224c48902e_Out_2_Vector4;
|
|
Unity_Multiply_float4_float4(_TriplanarNM_cca4c45d91c87989990c532a04e9e8e1_XYZ_1_Vector4, _Property_18c743619f52288dbe24e28326388b00_Out_0_Vector4, _Multiply_62594f3b30470e86a813e1224c48902e_Out_2_Vector4);
|
|
float _Multiply_5378fc524597f98fb32eeb561a7390e9_Out_2_Float;
|
|
Unity_Multiply_float_float(_SampleTexture2D_32717b1e99785588830ceee116cbe7fc_R_4_Float, 2, _Multiply_5378fc524597f98fb32eeb561a7390e9_Out_2_Float);
|
|
float _Property_8a72d97c1c527c8f8e0cc71214498065_Out_0_Float = _CoverDarknessCurvMultply;
|
|
float _Multiply_22683a720176a788a2ce404dbddd837c_Out_2_Float;
|
|
Unity_Multiply_float_float(_Multiply_5378fc524597f98fb32eeb561a7390e9_Out_2_Float, _Property_8a72d97c1c527c8f8e0cc71214498065_Out_0_Float, _Multiply_22683a720176a788a2ce404dbddd837c_Out_2_Float);
|
|
float _Clamp_5a638fb628222d8a97865d9029554fe2_Out_3_Float;
|
|
Unity_Clamp_float(_Multiply_22683a720176a788a2ce404dbddd837c_Out_2_Float, float(0), float(1), _Clamp_5a638fb628222d8a97865d9029554fe2_Out_3_Float);
|
|
float _Absolute_11985e8863bf2b8ca0bda90bca829348_Out_1_Float;
|
|
Unity_Absolute_float(_Clamp_5a638fb628222d8a97865d9029554fe2_Out_3_Float, _Absolute_11985e8863bf2b8ca0bda90bca829348_Out_1_Float);
|
|
float _Property_aba5acef910eee88b110d565674a9e36_Out_0_Float = _CoverDarknessCurvPower;
|
|
float _Power_da9b537d80a58d85a88e72c2a5d01e7c_Out_2_Float;
|
|
Unity_Power_float(_Absolute_11985e8863bf2b8ca0bda90bca829348_Out_1_Float, _Property_aba5acef910eee88b110d565674a9e36_Out_0_Float, _Power_da9b537d80a58d85a88e72c2a5d01e7c_Out_2_Float);
|
|
float _Clamp_77228e2a7266fa8ca042eae2f0701342_Out_3_Float;
|
|
Unity_Clamp_float(_Power_da9b537d80a58d85a88e72c2a5d01e7c_Out_2_Float, float(0), float(1), _Clamp_77228e2a7266fa8ca042eae2f0701342_Out_3_Float);
|
|
float4 _Multiply_2111c8ad39d5e68caf4893a41a3bad7d_Out_2_Vector4;
|
|
Unity_Multiply_float4_float4(_Multiply_62594f3b30470e86a813e1224c48902e_Out_2_Vector4, (_Clamp_77228e2a7266fa8ca042eae2f0701342_Out_3_Float.xxxx), _Multiply_2111c8ad39d5e68caf4893a41a3bad7d_Out_2_Vector4);
|
|
float4 _Clamp_b489ebb9d7d18282a342100f4d2fa72d_Out_3_Vector4;
|
|
Unity_Clamp_float4(_Multiply_2111c8ad39d5e68caf4893a41a3bad7d_Out_2_Vector4, float4(0, 0, 0, 0), float4(1, 1, 1, 1), _Clamp_b489ebb9d7d18282a342100f4d2fa72d_Out_3_Vector4);
|
|
float _Add_7eea819e47ffe58cbb3ec5877a181444_Out_2_Float;
|
|
Unity_Add_float(_Multiply_5378fc524597f98fb32eeb561a7390e9_Out_2_Float, float(-1), _Add_7eea819e47ffe58cbb3ec5877a181444_Out_2_Float);
|
|
float _Clamp_b5e4f47c0358dc87b5f9fdb3a360e9e9_Out_3_Float;
|
|
Unity_Clamp_float(_Add_7eea819e47ffe58cbb3ec5877a181444_Out_2_Float, float(0), float(1), _Clamp_b5e4f47c0358dc87b5f9fdb3a360e9e9_Out_3_Float);
|
|
float _Property_753051c96a90798fa7d94cff4173d6e6_Out_0_Float = _CoverBrightnessCurvMultply;
|
|
float _Multiply_c650497abc44d98882ce0091d10c4356_Out_2_Float;
|
|
Unity_Multiply_float_float(_Clamp_b5e4f47c0358dc87b5f9fdb3a360e9e9_Out_3_Float, _Property_753051c96a90798fa7d94cff4173d6e6_Out_0_Float, _Multiply_c650497abc44d98882ce0091d10c4356_Out_2_Float);
|
|
float _Clamp_c508dc61e0cb2a829429559098f34f9a_Out_3_Float;
|
|
Unity_Clamp_float(_Multiply_c650497abc44d98882ce0091d10c4356_Out_2_Float, float(0), float(1), _Clamp_c508dc61e0cb2a829429559098f34f9a_Out_3_Float);
|
|
float _Absolute_2cff2da32d80c286acbb99de611f381a_Out_1_Float;
|
|
Unity_Absolute_float(_Clamp_c508dc61e0cb2a829429559098f34f9a_Out_3_Float, _Absolute_2cff2da32d80c286acbb99de611f381a_Out_1_Float);
|
|
float _Property_ce4610db7b6d0c8bb7fb318210d3e83f_Out_0_Float = _CoverBrightnessCurvPower;
|
|
float _Power_c21df4d2e5ea448281f9ac0f4a140b9e_Out_2_Float;
|
|
Unity_Power_float(_Absolute_2cff2da32d80c286acbb99de611f381a_Out_1_Float, _Property_ce4610db7b6d0c8bb7fb318210d3e83f_Out_0_Float, _Power_c21df4d2e5ea448281f9ac0f4a140b9e_Out_2_Float);
|
|
float _Clamp_fd095a9d6c2b9881ae5875ed126bf3fb_Out_3_Float;
|
|
Unity_Clamp_float(_Power_c21df4d2e5ea448281f9ac0f4a140b9e_Out_2_Float, float(0), float(1), _Clamp_fd095a9d6c2b9881ae5875ed126bf3fb_Out_3_Float);
|
|
float4 _Add_4a02758b9a29b18180516bf3c3ede263_Out_2_Vector4;
|
|
Unity_Add_float4(_Clamp_b489ebb9d7d18282a342100f4d2fa72d_Out_3_Vector4, (_Clamp_fd095a9d6c2b9881ae5875ed126bf3fb_Out_3_Float.xxxx), _Add_4a02758b9a29b18180516bf3c3ede263_Out_2_Vector4);
|
|
float4 _Clamp_632e3d64ab55648f927a79cef68f3396_Out_3_Vector4;
|
|
Unity_Clamp_float4(_Add_4a02758b9a29b18180516bf3c3ede263_Out_2_Vector4, float4(0, 0, 0, 0), float4(1, 1, 1, 1), _Clamp_632e3d64ab55648f927a79cef68f3396_Out_3_Vector4);
|
|
float4 _Branch_0c5221a996e29186a372734bf5c30a51_Out_3_Vector4;
|
|
Unity_Branch_float4(_Property_72a5c604805a7b8ebbfd7acee03656aa_Out_0_Boolean, _Clamp_632e3d64ab55648f927a79cef68f3396_Out_3_Vector4, _Multiply_62594f3b30470e86a813e1224c48902e_Out_2_Vector4, _Branch_0c5221a996e29186a372734bf5c30a51_Out_3_Vector4);
|
|
float _Multiply_6a55591ceae0dc86a971a275e316fec6_Out_2_Float;
|
|
Unity_Multiply_float_float(_SampleTexture2D_4bd08411faa60c828847f2247f06a809_R_4_Float, 2, _Multiply_6a55591ceae0dc86a971a275e316fec6_Out_2_Float);
|
|
float _Add_a86411eb4894f78f8f8f3246011b369c_Out_2_Float;
|
|
Unity_Add_float(_Multiply_6a55591ceae0dc86a971a275e316fec6_Out_2_Float, float(-1), _Add_a86411eb4894f78f8f8f3246011b369c_Out_2_Float);
|
|
float _Property_c5a049650239cf80a302d0c0f57c147a_Out_0_Float = _DetailCoverAlbedoScale;
|
|
float _Multiply_1708b01db74fe88a8c36434f8729bf41_Out_2_Float;
|
|
Unity_Multiply_float_float(_Add_a86411eb4894f78f8f8f3246011b369c_Out_2_Float, _Property_c5a049650239cf80a302d0c0f57c147a_Out_0_Float, _Multiply_1708b01db74fe88a8c36434f8729bf41_Out_2_Float);
|
|
float _Saturate_1a4899f79635918485a64fff7cea28ad_Out_1_Float;
|
|
Unity_Saturate_float(_Multiply_1708b01db74fe88a8c36434f8729bf41_Out_2_Float, _Saturate_1a4899f79635918485a64fff7cea28ad_Out_1_Float);
|
|
float _Absolute_d3dce2bb8d9f0285b5183b7f665beed8_Out_1_Float;
|
|
Unity_Absolute_float(_Saturate_1a4899f79635918485a64fff7cea28ad_Out_1_Float, _Absolute_d3dce2bb8d9f0285b5183b7f665beed8_Out_1_Float);
|
|
Bindings_BlendOverlayBaseColor_acdb3dfca72bd6b42bbc35f4613331a2_float _BlendOverlayBaseColor_ec1f397271cc818abdb95188914e6b4d;
|
|
float3 _BlendOverlayBaseColor_ec1f397271cc818abdb95188914e6b4d_OutVector4_1_Vector3;
|
|
SG_BlendOverlayBaseColor_acdb3dfca72bd6b42bbc35f4613331a2_float(_Branch_0c5221a996e29186a372734bf5c30a51_Out_3_Vector4, _Add_a86411eb4894f78f8f8f3246011b369c_Out_2_Float, _Absolute_d3dce2bb8d9f0285b5183b7f665beed8_Out_1_Float, _BlendOverlayBaseColor_ec1f397271cc818abdb95188914e6b4d, _BlendOverlayBaseColor_ec1f397271cc818abdb95188914e6b4d_OutVector4_1_Vector3);
|
|
float _Property_cb0b6597aee47880b32e852aaa0e4a71_Out_0_Boolean = _USEDYNAMICCOVERTSTATICMASKF;
|
|
float _Property_4b3f692214f8d081a043985e1adb12a1_Out_0_Float = _CoverMaskPower;
|
|
float _Multiply_10cc4ecb135f8e8ab88c475223d0eadf_Out_2_Float;
|
|
Unity_Multiply_float_float(_SampleTexture2D_32717b1e99785588830ceee116cbe7fc_A_7_Float, _Property_4b3f692214f8d081a043985e1adb12a1_Out_0_Float, _Multiply_10cc4ecb135f8e8ab88c475223d0eadf_Out_2_Float);
|
|
float _Clamp_07a501c22c6e188199bed73412ac8926_Out_3_Float;
|
|
Unity_Clamp_float(_Multiply_10cc4ecb135f8e8ab88c475223d0eadf_Out_2_Float, float(0), float(1), _Clamp_07a501c22c6e188199bed73412ac8926_Out_3_Float);
|
|
float _Split_2ada595651635e8d97bf4b82f717fcc6_R_1_Float = IN.VertexColor[0];
|
|
float _Split_2ada595651635e8d97bf4b82f717fcc6_G_2_Float = IN.VertexColor[1];
|
|
float _Split_2ada595651635e8d97bf4b82f717fcc6_B_3_Float = IN.VertexColor[2];
|
|
float _Split_2ada595651635e8d97bf4b82f717fcc6_A_4_Float = IN.VertexColor[3];
|
|
float3 _Property_9180f8dd535ba18499edac37aef4d231_Out_0_Vector3 = _CoverDirection;
|
|
float2 _Vector2_7fe7d9ef320da68f958e1ea535e2a6a8_Out_0_Vector2 = float2(_SampleTexture2D_4bd08411faa60c828847f2247f06a809_A_7_Float, _SampleTexture2D_4bd08411faa60c828847f2247f06a809_G_5_Float);
|
|
float2 _Multiply_b8d7cc078ce00d87b9a6b5241b2f1f01_Out_2_Vector2;
|
|
Unity_Multiply_float2_float2(_Vector2_7fe7d9ef320da68f958e1ea535e2a6a8_Out_0_Vector2, float2(2, 2), _Multiply_b8d7cc078ce00d87b9a6b5241b2f1f01_Out_2_Vector2);
|
|
float2 _Add_476ecfb1f47aed8bb8040bb1c44ca372_Out_2_Vector2;
|
|
Unity_Add_float2(_Multiply_b8d7cc078ce00d87b9a6b5241b2f1f01_Out_2_Vector2, float2(-1, -1), _Add_476ecfb1f47aed8bb8040bb1c44ca372_Out_2_Vector2);
|
|
float _Property_b7f40cf2664f5a819eb153af2b2eb69e_Out_0_Float = _DetailNormalScale;
|
|
float2 _Multiply_3b11e3e43551698eb19b6c6b671b6a41_Out_2_Vector2;
|
|
Unity_Multiply_float2_float2(_Add_476ecfb1f47aed8bb8040bb1c44ca372_Out_2_Vector2, (_Property_b7f40cf2664f5a819eb153af2b2eb69e_Out_0_Float.xx), _Multiply_3b11e3e43551698eb19b6c6b671b6a41_Out_2_Vector2);
|
|
float _Split_678aac70d9cb9783a49841710ce82ff8_R_1_Float = _Multiply_3b11e3e43551698eb19b6c6b671b6a41_Out_2_Vector2[0];
|
|
float _Split_678aac70d9cb9783a49841710ce82ff8_G_2_Float = _Multiply_3b11e3e43551698eb19b6c6b671b6a41_Out_2_Vector2[1];
|
|
float _Split_678aac70d9cb9783a49841710ce82ff8_B_3_Float = 0;
|
|
float _Split_678aac70d9cb9783a49841710ce82ff8_A_4_Float = 0;
|
|
float _DotProduct_7fd2e2e8b3e9ed8f9a42a0ba98e14174_Out_2_Float;
|
|
Unity_DotProduct_float2(_Multiply_3b11e3e43551698eb19b6c6b671b6a41_Out_2_Vector2, _Multiply_3b11e3e43551698eb19b6c6b671b6a41_Out_2_Vector2, _DotProduct_7fd2e2e8b3e9ed8f9a42a0ba98e14174_Out_2_Float);
|
|
float _Saturate_47bdfe8ca2c8d989a5ebbb5eb995f023_Out_1_Float;
|
|
Unity_Saturate_float(_DotProduct_7fd2e2e8b3e9ed8f9a42a0ba98e14174_Out_2_Float, _Saturate_47bdfe8ca2c8d989a5ebbb5eb995f023_Out_1_Float);
|
|
float _OneMinus_03777d2879850b838187d9d2605d7341_Out_1_Float;
|
|
Unity_OneMinus_float(_Saturate_47bdfe8ca2c8d989a5ebbb5eb995f023_Out_1_Float, _OneMinus_03777d2879850b838187d9d2605d7341_Out_1_Float);
|
|
float _SquareRoot_ca9c195aef071d8888f26cb73b749f72_Out_1_Float;
|
|
Unity_SquareRoot_float(_OneMinus_03777d2879850b838187d9d2605d7341_Out_1_Float, _SquareRoot_ca9c195aef071d8888f26cb73b749f72_Out_1_Float);
|
|
float3 _Vector3_6999cbd6a5aa908cb7c059b5f2f5b330_Out_0_Vector3 = float3(_Split_678aac70d9cb9783a49841710ce82ff8_R_1_Float, _Split_678aac70d9cb9783a49841710ce82ff8_G_2_Float, _SquareRoot_ca9c195aef071d8888f26cb73b749f72_Out_1_Float);
|
|
UnityTexture2D _Property_d2bb0a0b01239c85bd301cadeec1b3d8_Out_0_Texture2D = UnityBuildTexture2DStructNoScale(_BaseNormalMap);
|
|
Bindings_TriplanarNMn_059da9746584140498cd018db3c76047_float _TriplanarNMn_bf7f7c0e2d896289b86076b79f33d7d4;
|
|
_TriplanarNMn_bf7f7c0e2d896289b86076b79f33d7d4.WorldSpaceNormal = IN.WorldSpaceNormal;
|
|
_TriplanarNMn_bf7f7c0e2d896289b86076b79f33d7d4.WorldSpaceTangent = IN.WorldSpaceTangent;
|
|
_TriplanarNMn_bf7f7c0e2d896289b86076b79f33d7d4.WorldSpaceBiTangent = IN.WorldSpaceBiTangent;
|
|
_TriplanarNMn_bf7f7c0e2d896289b86076b79f33d7d4.AbsoluteWorldSpacePosition = IN.AbsoluteWorldSpacePosition;
|
|
float4 _TriplanarNMn_bf7f7c0e2d896289b86076b79f33d7d4_XYZ_1_Vector4;
|
|
float4 _TriplanarNMn_bf7f7c0e2d896289b86076b79f33d7d4_XZ_2_Vector4;
|
|
float4 _TriplanarNMn_bf7f7c0e2d896289b86076b79f33d7d4_YZ_3_Vector4;
|
|
float4 _TriplanarNMn_bf7f7c0e2d896289b86076b79f33d7d4_XY_4_Vector4;
|
|
SG_TriplanarNMn_059da9746584140498cd018db3c76047_float(_Property_d2bb0a0b01239c85bd301cadeec1b3d8_Out_0_Texture2D, (_Divide_6a90cebe78e620828de587523daaa7e6_Out_2_Vector4).x, _Property_3539de8c698c2981bb3c088d4ec52201_Out_0_Float, UnityBuildSamplerStateStruct(SamplerState_Linear_Repeat_Aniso8), _TriplanarNMn_bf7f7c0e2d896289b86076b79f33d7d4, _TriplanarNMn_bf7f7c0e2d896289b86076b79f33d7d4_XYZ_1_Vector4, _TriplanarNMn_bf7f7c0e2d896289b86076b79f33d7d4_XZ_2_Vector4, _TriplanarNMn_bf7f7c0e2d896289b86076b79f33d7d4_YZ_3_Vector4, _TriplanarNMn_bf7f7c0e2d896289b86076b79f33d7d4_XY_4_Vector4);
|
|
float _Property_d6baf612f8e685848732ca270b39f544_Out_0_Float = _BaseNormalScale;
|
|
float3 _NormalStrength_260139b4d5077d8b9d42de780d173b6c_Out_2_Vector3;
|
|
Unity_NormalStrength_float((_TriplanarNMn_bf7f7c0e2d896289b86076b79f33d7d4_XYZ_1_Vector4.xyz), _Property_d6baf612f8e685848732ca270b39f544_Out_0_Float, _NormalStrength_260139b4d5077d8b9d42de780d173b6c_Out_2_Vector3);
|
|
UnityTexture2D _Property_492c4e7cd40ab980bd38362624511e38_Out_0_Texture2D = UnityBuildTexture2DStructNoScale(_ShapeNormalMap);
|
|
float4 _SampleTexture2D_63aaad04c65f698e8f640de826888075_RGBA_0_Vector4 = SAMPLE_TEXTURE2D(_Property_492c4e7cd40ab980bd38362624511e38_Out_0_Texture2D.tex, _Property_492c4e7cd40ab980bd38362624511e38_Out_0_Texture2D.samplerstate, _Property_492c4e7cd40ab980bd38362624511e38_Out_0_Texture2D.GetTransformedUV(IN.uv0.xy) );
|
|
_SampleTexture2D_63aaad04c65f698e8f640de826888075_RGBA_0_Vector4.rgb = UnpackNormal(_SampleTexture2D_63aaad04c65f698e8f640de826888075_RGBA_0_Vector4);
|
|
float _SampleTexture2D_63aaad04c65f698e8f640de826888075_R_4_Float = _SampleTexture2D_63aaad04c65f698e8f640de826888075_RGBA_0_Vector4.r;
|
|
float _SampleTexture2D_63aaad04c65f698e8f640de826888075_G_5_Float = _SampleTexture2D_63aaad04c65f698e8f640de826888075_RGBA_0_Vector4.g;
|
|
float _SampleTexture2D_63aaad04c65f698e8f640de826888075_B_6_Float = _SampleTexture2D_63aaad04c65f698e8f640de826888075_RGBA_0_Vector4.b;
|
|
float _SampleTexture2D_63aaad04c65f698e8f640de826888075_A_7_Float = _SampleTexture2D_63aaad04c65f698e8f640de826888075_RGBA_0_Vector4.a;
|
|
float _Property_6c35e329e57d0e89950e24817068dbb1_Out_0_Float = _shapeNormalScale;
|
|
float3 _NormalStrength_e181a1bb2f4e35819e0f35e77346e12e_Out_2_Vector3;
|
|
Unity_NormalStrength_float((_SampleTexture2D_63aaad04c65f698e8f640de826888075_RGBA_0_Vector4.xyz), _Property_6c35e329e57d0e89950e24817068dbb1_Out_0_Float, _NormalStrength_e181a1bb2f4e35819e0f35e77346e12e_Out_2_Vector3);
|
|
float3 _NormalBlend_ead295b946c6058190c298c03bf64d0b_Out_2_Vector3;
|
|
Unity_NormalBlend_float(_NormalStrength_260139b4d5077d8b9d42de780d173b6c_Out_2_Vector3, _NormalStrength_e181a1bb2f4e35819e0f35e77346e12e_Out_2_Vector3, _NormalBlend_ead295b946c6058190c298c03bf64d0b_Out_2_Vector3);
|
|
float3 _NormalBlend_4242e1b4a785378aa59dd49e9d993ffc_Out_2_Vector3;
|
|
Unity_NormalBlend_float(_Vector3_6999cbd6a5aa908cb7c059b5f2f5b330_Out_0_Vector3, _NormalBlend_ead295b946c6058190c298c03bf64d0b_Out_2_Vector3, _NormalBlend_4242e1b4a785378aa59dd49e9d993ffc_Out_2_Vector3);
|
|
float _Property_3d4ab6ad1f1f138a96f0463f7be8b6ce_Out_0_Float = _CovershapeNormalScale;
|
|
float3 _NormalStrength_401cd5af500bd68dbc9bca19d548d0db_Out_2_Vector3;
|
|
Unity_NormalStrength_float((_SampleTexture2D_63aaad04c65f698e8f640de826888075_RGBA_0_Vector4.xyz), _Property_3d4ab6ad1f1f138a96f0463f7be8b6ce_Out_0_Float, _NormalStrength_401cd5af500bd68dbc9bca19d548d0db_Out_2_Vector3);
|
|
UnityTexture2D _Property_779695727390348d8b8a7f7ae2245af0_Out_0_Texture2D = UnityBuildTexture2DStructNoScale(_CoverNormalMap);
|
|
Bindings_TriplanarNMn_059da9746584140498cd018db3c76047_float _TriplanarNMn_ba7e211dd8095589a2939b5b239ca8e0;
|
|
_TriplanarNMn_ba7e211dd8095589a2939b5b239ca8e0.WorldSpaceNormal = IN.WorldSpaceNormal;
|
|
_TriplanarNMn_ba7e211dd8095589a2939b5b239ca8e0.WorldSpaceTangent = IN.WorldSpaceTangent;
|
|
_TriplanarNMn_ba7e211dd8095589a2939b5b239ca8e0.WorldSpaceBiTangent = IN.WorldSpaceBiTangent;
|
|
_TriplanarNMn_ba7e211dd8095589a2939b5b239ca8e0.AbsoluteWorldSpacePosition = IN.AbsoluteWorldSpacePosition;
|
|
float4 _TriplanarNMn_ba7e211dd8095589a2939b5b239ca8e0_XYZ_1_Vector4;
|
|
float4 _TriplanarNMn_ba7e211dd8095589a2939b5b239ca8e0_XZ_2_Vector4;
|
|
float4 _TriplanarNMn_ba7e211dd8095589a2939b5b239ca8e0_YZ_3_Vector4;
|
|
float4 _TriplanarNMn_ba7e211dd8095589a2939b5b239ca8e0_XY_4_Vector4;
|
|
SG_TriplanarNMn_059da9746584140498cd018db3c76047_float(_Property_779695727390348d8b8a7f7ae2245af0_Out_0_Texture2D, (_Divide_1fe314f1ca9dd78fbf366bbeb40e4ccf_Out_2_Vector4).x, _Property_ee792eccbb538a878b19be5db264531e_Out_0_Float, UnityBuildSamplerStateStruct(SamplerState_Linear_Repeat_Aniso8), _TriplanarNMn_ba7e211dd8095589a2939b5b239ca8e0, _TriplanarNMn_ba7e211dd8095589a2939b5b239ca8e0_XYZ_1_Vector4, _TriplanarNMn_ba7e211dd8095589a2939b5b239ca8e0_XZ_2_Vector4, _TriplanarNMn_ba7e211dd8095589a2939b5b239ca8e0_YZ_3_Vector4, _TriplanarNMn_ba7e211dd8095589a2939b5b239ca8e0_XY_4_Vector4);
|
|
float _Property_5aba050988182f8aad3ec6b2c7e57899_Out_0_Float = _CoverNormalBlendHardness;
|
|
float3 _NormalStrength_dac4b0abfa8a1f82b7103b18f6e6e1b7_Out_2_Vector3;
|
|
Unity_NormalStrength_float((_TriplanarNMn_ba7e211dd8095589a2939b5b239ca8e0_XYZ_1_Vector4.xyz), _Property_5aba050988182f8aad3ec6b2c7e57899_Out_0_Float, _NormalStrength_dac4b0abfa8a1f82b7103b18f6e6e1b7_Out_2_Vector3);
|
|
float3 _NormalBlend_4058aded292b7389ade16c695a6cae6c_Out_2_Vector3;
|
|
Unity_NormalBlend_float(_NormalStrength_401cd5af500bd68dbc9bca19d548d0db_Out_2_Vector3, _NormalStrength_dac4b0abfa8a1f82b7103b18f6e6e1b7_Out_2_Vector3, _NormalBlend_4058aded292b7389ade16c695a6cae6c_Out_2_Vector3);
|
|
float3 _Multiply_0e22f9c6ff55a188b2533f1889a53038_Out_2_Vector3;
|
|
Unity_Multiply_float3_float3(_Property_9180f8dd535ba18499edac37aef4d231_Out_0_Vector3, IN.WorldSpaceNormal, _Multiply_0e22f9c6ff55a188b2533f1889a53038_Out_2_Vector3);
|
|
float _Split_89708601b575b58c852cd55e4fb248d1_R_1_Float = _Multiply_0e22f9c6ff55a188b2533f1889a53038_Out_2_Vector3[0];
|
|
float _Split_89708601b575b58c852cd55e4fb248d1_G_2_Float = _Multiply_0e22f9c6ff55a188b2533f1889a53038_Out_2_Vector3[1];
|
|
float _Split_89708601b575b58c852cd55e4fb248d1_B_3_Float = _Multiply_0e22f9c6ff55a188b2533f1889a53038_Out_2_Vector3[2];
|
|
float _Split_89708601b575b58c852cd55e4fb248d1_A_4_Float = 0;
|
|
float _Add_bfe29b97a9ce3b80aa4cd689be8c4a97_Out_2_Float;
|
|
Unity_Add_float(_Split_89708601b575b58c852cd55e4fb248d1_R_1_Float, _Split_89708601b575b58c852cd55e4fb248d1_G_2_Float, _Add_bfe29b97a9ce3b80aa4cd689be8c4a97_Out_2_Float);
|
|
float _Add_f3152b42a227088aa1439fc1fe8451cc_Out_2_Float;
|
|
Unity_Add_float(_Add_bfe29b97a9ce3b80aa4cd689be8c4a97_Out_2_Float, _Split_89708601b575b58c852cd55e4fb248d1_B_3_Float, _Add_f3152b42a227088aa1439fc1fe8451cc_Out_2_Float);
|
|
float _Property_deabceefa3e3438a8ad71fa67fc5b070_Out_0_Float = _Cover_Amount;
|
|
float _Property_2fba2d762d74b8828ff566c10bc48e86_Out_0_Float = _Cover_Amount_Grow_Speed;
|
|
float _Subtract_1f990262a41ce88f96a47df66dcb4971_Out_2_Float;
|
|
Unity_Subtract_float(float(4), _Property_2fba2d762d74b8828ff566c10bc48e86_Out_0_Float, _Subtract_1f990262a41ce88f96a47df66dcb4971_Out_2_Float);
|
|
float _Divide_a89e05be4802ac80886ad6bdeadc4949_Out_2_Float;
|
|
Unity_Divide_float(_Property_deabceefa3e3438a8ad71fa67fc5b070_Out_0_Float, _Subtract_1f990262a41ce88f96a47df66dcb4971_Out_2_Float, _Divide_a89e05be4802ac80886ad6bdeadc4949_Out_2_Float);
|
|
float _Absolute_2b58f48ab94a3087a726a2b03c51e2c6_Out_1_Float;
|
|
Unity_Absolute_float(_Divide_a89e05be4802ac80886ad6bdeadc4949_Out_2_Float, _Absolute_2b58f48ab94a3087a726a2b03c51e2c6_Out_1_Float);
|
|
float _Power_6695d49b8b82468ea686b66e6749260b_Out_2_Float;
|
|
Unity_Power_float(_Absolute_2b58f48ab94a3087a726a2b03c51e2c6_Out_1_Float, _Subtract_1f990262a41ce88f96a47df66dcb4971_Out_2_Float, _Power_6695d49b8b82468ea686b66e6749260b_Out_2_Float);
|
|
float _Clamp_94f0310fee13798bad4e26e2381a94d4_Out_3_Float;
|
|
Unity_Clamp_float(_Power_6695d49b8b82468ea686b66e6749260b_Out_2_Float, float(0), float(2), _Clamp_94f0310fee13798bad4e26e2381a94d4_Out_3_Float);
|
|
float _Multiply_999692515a117385ade114d924fa589a_Out_2_Float;
|
|
Unity_Multiply_float_float(_Add_f3152b42a227088aa1439fc1fe8451cc_Out_2_Float, _Clamp_94f0310fee13798bad4e26e2381a94d4_Out_3_Float, _Multiply_999692515a117385ade114d924fa589a_Out_2_Float);
|
|
float _Saturate_f811eeeeb3229d83917aa8be2c36831e_Out_1_Float;
|
|
Unity_Saturate_float(_Multiply_999692515a117385ade114d924fa589a_Out_2_Float, _Saturate_f811eeeeb3229d83917aa8be2c36831e_Out_1_Float);
|
|
float _Clamp_4c470807610adb8c8488f125c0af7bb5_Out_3_Float;
|
|
Unity_Clamp_float(_Add_f3152b42a227088aa1439fc1fe8451cc_Out_2_Float, float(0), float(0.9999), _Clamp_4c470807610adb8c8488f125c0af7bb5_Out_3_Float);
|
|
float _Property_765e3d021aec6d8f9f8b3174d5a06980_Out_0_Float = _Cover_Max_Angle;
|
|
float _Divide_9d9fc267a9ebcf84b378fdd4c66ff34d_Out_2_Float;
|
|
Unity_Divide_float(_Property_765e3d021aec6d8f9f8b3174d5a06980_Out_0_Float, float(45), _Divide_9d9fc267a9ebcf84b378fdd4c66ff34d_Out_2_Float);
|
|
float _OneMinus_f074fba0be46e688aa75f5377832251a_Out_1_Float;
|
|
Unity_OneMinus_float(_Divide_9d9fc267a9ebcf84b378fdd4c66ff34d_Out_2_Float, _OneMinus_f074fba0be46e688aa75f5377832251a_Out_1_Float);
|
|
float _Subtract_0b0cd6145e351c87a68366348828154d_Out_2_Float;
|
|
Unity_Subtract_float(_Clamp_4c470807610adb8c8488f125c0af7bb5_Out_3_Float, _OneMinus_f074fba0be46e688aa75f5377832251a_Out_1_Float, _Subtract_0b0cd6145e351c87a68366348828154d_Out_2_Float);
|
|
float _Clamp_30607c0c4e04e5879d4061a1f7688421_Out_3_Float;
|
|
Unity_Clamp_float(_Subtract_0b0cd6145e351c87a68366348828154d_Out_2_Float, float(0), float(2), _Clamp_30607c0c4e04e5879d4061a1f7688421_Out_3_Float);
|
|
float _Divide_cfe09f3bd2005485a3c2229367309962_Out_2_Float;
|
|
Unity_Divide_float(float(1), _Divide_9d9fc267a9ebcf84b378fdd4c66ff34d_Out_2_Float, _Divide_cfe09f3bd2005485a3c2229367309962_Out_2_Float);
|
|
float _Multiply_022be2eb9027988b9d5d4c1392749347_Out_2_Float;
|
|
Unity_Multiply_float_float(_Clamp_30607c0c4e04e5879d4061a1f7688421_Out_3_Float, _Divide_cfe09f3bd2005485a3c2229367309962_Out_2_Float, _Multiply_022be2eb9027988b9d5d4c1392749347_Out_2_Float);
|
|
float _Absolute_2fed84623df90f8ba200de68955721fd_Out_1_Float;
|
|
Unity_Absolute_float(_Multiply_022be2eb9027988b9d5d4c1392749347_Out_2_Float, _Absolute_2fed84623df90f8ba200de68955721fd_Out_1_Float);
|
|
float _Property_b79c921e30793a8e84330b3341539232_Out_0_Float = _CoverHardness;
|
|
float _Power_b9ddee06dfd0b880880990743bc10612_Out_2_Float;
|
|
Unity_Power_float(_Absolute_2fed84623df90f8ba200de68955721fd_Out_1_Float, _Property_b79c921e30793a8e84330b3341539232_Out_0_Float, _Power_b9ddee06dfd0b880880990743bc10612_Out_2_Float);
|
|
float _Property_c82936191f294c89b76f2d1809168f87_Out_0_Float = _Cover_Min_Height;
|
|
float _OneMinus_f0918ccb4f747b8e83e39d82dc3b5ca9_Out_1_Float;
|
|
Unity_OneMinus_float(_Property_c82936191f294c89b76f2d1809168f87_Out_0_Float, _OneMinus_f0918ccb4f747b8e83e39d82dc3b5ca9_Out_1_Float);
|
|
float _Split_0e80ce6f80cff18f87a043d1e3eecd08_R_1_Float = IN.AbsoluteWorldSpacePosition[0];
|
|
float _Split_0e80ce6f80cff18f87a043d1e3eecd08_G_2_Float = IN.AbsoluteWorldSpacePosition[1];
|
|
float _Split_0e80ce6f80cff18f87a043d1e3eecd08_B_3_Float = IN.AbsoluteWorldSpacePosition[2];
|
|
float _Split_0e80ce6f80cff18f87a043d1e3eecd08_A_4_Float = 0;
|
|
float _Add_60b3bb4cdad6e88b8c097c5b08daa7d0_Out_2_Float;
|
|
Unity_Add_float(_OneMinus_f0918ccb4f747b8e83e39d82dc3b5ca9_Out_1_Float, _Split_0e80ce6f80cff18f87a043d1e3eecd08_G_2_Float, _Add_60b3bb4cdad6e88b8c097c5b08daa7d0_Out_2_Float);
|
|
float _Add_1898d6f46901df809c68b5241b2e9c37_Out_2_Float;
|
|
Unity_Add_float(_Add_60b3bb4cdad6e88b8c097c5b08daa7d0_Out_2_Float, float(1), _Add_1898d6f46901df809c68b5241b2e9c37_Out_2_Float);
|
|
float _Clamp_25d6140fa3ff3a8f956f99005adace2e_Out_3_Float;
|
|
Unity_Clamp_float(_Add_1898d6f46901df809c68b5241b2e9c37_Out_2_Float, float(0), float(1), _Clamp_25d6140fa3ff3a8f956f99005adace2e_Out_3_Float);
|
|
float _Property_6094a52a4f01fd8da5ea847b69b6941c_Out_0_Float = _Cover_Min_Height_Blending;
|
|
float _Add_dc69668fc7f1a586a754713499f71d99_Out_2_Float;
|
|
Unity_Add_float(_Add_60b3bb4cdad6e88b8c097c5b08daa7d0_Out_2_Float, _Property_6094a52a4f01fd8da5ea847b69b6941c_Out_0_Float, _Add_dc69668fc7f1a586a754713499f71d99_Out_2_Float);
|
|
float _Divide_63e32406c8773d83bbf2e244faf8328f_Out_2_Float;
|
|
Unity_Divide_float(_Add_dc69668fc7f1a586a754713499f71d99_Out_2_Float, _Add_60b3bb4cdad6e88b8c097c5b08daa7d0_Out_2_Float, _Divide_63e32406c8773d83bbf2e244faf8328f_Out_2_Float);
|
|
float _OneMinus_ec22d21ddfa84288b6f750e9fdb107b9_Out_1_Float;
|
|
Unity_OneMinus_float(_Divide_63e32406c8773d83bbf2e244faf8328f_Out_2_Float, _OneMinus_ec22d21ddfa84288b6f750e9fdb107b9_Out_1_Float);
|
|
float _Add_a1206af8cbfbbe8081046db1247aba04_Out_2_Float;
|
|
Unity_Add_float(_OneMinus_ec22d21ddfa84288b6f750e9fdb107b9_Out_1_Float, float(-0.5), _Add_a1206af8cbfbbe8081046db1247aba04_Out_2_Float);
|
|
float _Clamp_640b5884b29f188987c157ad5e6e6959_Out_3_Float;
|
|
Unity_Clamp_float(_Add_a1206af8cbfbbe8081046db1247aba04_Out_2_Float, float(0), float(1), _Clamp_640b5884b29f188987c157ad5e6e6959_Out_3_Float);
|
|
float _Add_cfdb6daf617665838bb05910fa9505df_Out_2_Float;
|
|
Unity_Add_float(_Clamp_25d6140fa3ff3a8f956f99005adace2e_Out_3_Float, _Clamp_640b5884b29f188987c157ad5e6e6959_Out_3_Float, _Add_cfdb6daf617665838bb05910fa9505df_Out_2_Float);
|
|
float _Clamp_552ef7e5cf91408a982297885971db7e_Out_3_Float;
|
|
Unity_Clamp_float(_Add_cfdb6daf617665838bb05910fa9505df_Out_2_Float, float(0), float(1), _Clamp_552ef7e5cf91408a982297885971db7e_Out_3_Float);
|
|
float _Multiply_8f8db9c494f4fd869809fc45531df628_Out_2_Float;
|
|
Unity_Multiply_float_float(_Power_b9ddee06dfd0b880880990743bc10612_Out_2_Float, _Clamp_552ef7e5cf91408a982297885971db7e_Out_3_Float, _Multiply_8f8db9c494f4fd869809fc45531df628_Out_2_Float);
|
|
float _Multiply_60075aa07d29d285b3c1ee531e5b5cb3_Out_2_Float;
|
|
Unity_Multiply_float_float(_Saturate_f811eeeeb3229d83917aa8be2c36831e_Out_1_Float, _Multiply_8f8db9c494f4fd869809fc45531df628_Out_2_Float, _Multiply_60075aa07d29d285b3c1ee531e5b5cb3_Out_2_Float);
|
|
float3 _Lerp_453c8bc667315a8fa37a93affb877753_Out_3_Vector3;
|
|
Unity_Lerp_float3(_NormalBlend_4242e1b4a785378aa59dd49e9d993ffc_Out_2_Vector3, _NormalBlend_4058aded292b7389ade16c695a6cae6c_Out_2_Vector3, (_Multiply_60075aa07d29d285b3c1ee531e5b5cb3_Out_2_Float.xxx), _Lerp_453c8bc667315a8fa37a93affb877753_Out_3_Vector3);
|
|
float3 _Transform_a87113b0be9dfa8eaf6932ed645aa845_Out_1_Vector3;
|
|
{
|
|
float3x3 tangentTransform = float3x3(IN.WorldSpaceTangent, IN.WorldSpaceBiTangent, IN.WorldSpaceNormal);
|
|
_Transform_a87113b0be9dfa8eaf6932ed645aa845_Out_1_Vector3 = TransformTangentToWorldDir(_Lerp_453c8bc667315a8fa37a93affb877753_Out_3_Vector3.xyz, tangentTransform, false).xyz;
|
|
}
|
|
float3 _Multiply_f6e009bd5c0fd18c99ac72f233476fe5_Out_2_Vector3;
|
|
Unity_Multiply_float3_float3(_Property_9180f8dd535ba18499edac37aef4d231_Out_0_Vector3, _Transform_a87113b0be9dfa8eaf6932ed645aa845_Out_1_Vector3, _Multiply_f6e009bd5c0fd18c99ac72f233476fe5_Out_2_Vector3);
|
|
float _Split_96f0a5b75c0e0b889dbbccd04bc2aaaa_R_1_Float = _Multiply_f6e009bd5c0fd18c99ac72f233476fe5_Out_2_Vector3[0];
|
|
float _Split_96f0a5b75c0e0b889dbbccd04bc2aaaa_G_2_Float = _Multiply_f6e009bd5c0fd18c99ac72f233476fe5_Out_2_Vector3[1];
|
|
float _Split_96f0a5b75c0e0b889dbbccd04bc2aaaa_B_3_Float = _Multiply_f6e009bd5c0fd18c99ac72f233476fe5_Out_2_Vector3[2];
|
|
float _Split_96f0a5b75c0e0b889dbbccd04bc2aaaa_A_4_Float = 0;
|
|
float _Add_07028d5174d9f88594da40d46502bc13_Out_2_Float;
|
|
Unity_Add_float(_Split_96f0a5b75c0e0b889dbbccd04bc2aaaa_R_1_Float, _Split_96f0a5b75c0e0b889dbbccd04bc2aaaa_G_2_Float, _Add_07028d5174d9f88594da40d46502bc13_Out_2_Float);
|
|
float _Add_93af6c0f8ee9a3898ca51358a213b69f_Out_2_Float;
|
|
Unity_Add_float(_Add_07028d5174d9f88594da40d46502bc13_Out_2_Float, _Split_96f0a5b75c0e0b889dbbccd04bc2aaaa_B_3_Float, _Add_93af6c0f8ee9a3898ca51358a213b69f_Out_2_Float);
|
|
float _Multiply_77421b936cb9d68299ef6791b83fa867_Out_2_Float;
|
|
Unity_Multiply_float_float(_Add_93af6c0f8ee9a3898ca51358a213b69f_Out_2_Float, _Clamp_94f0310fee13798bad4e26e2381a94d4_Out_3_Float, _Multiply_77421b936cb9d68299ef6791b83fa867_Out_2_Float);
|
|
float _Multiply_ac6769fbe7188685a7537e5ac2c6bfa9_Out_2_Float;
|
|
Unity_Multiply_float_float(_Clamp_94f0310fee13798bad4e26e2381a94d4_Out_3_Float, _Property_b79c921e30793a8e84330b3341539232_Out_0_Float, _Multiply_ac6769fbe7188685a7537e5ac2c6bfa9_Out_2_Float);
|
|
float _Multiply_37a341e0d9783683aa8d5b7001acced1_Out_2_Float;
|
|
Unity_Multiply_float_float(_Multiply_ac6769fbe7188685a7537e5ac2c6bfa9_Out_2_Float, _Multiply_8f8db9c494f4fd869809fc45531df628_Out_2_Float, _Multiply_37a341e0d9783683aa8d5b7001acced1_Out_2_Float);
|
|
float _Multiply_02fa8aa66970b281b4a325dc68f407b9_Out_2_Float;
|
|
Unity_Multiply_float_float(_Multiply_77421b936cb9d68299ef6791b83fa867_Out_2_Float, _Multiply_37a341e0d9783683aa8d5b7001acced1_Out_2_Float, _Multiply_02fa8aa66970b281b4a325dc68f407b9_Out_2_Float);
|
|
UnityTexture2D _Property_fd2df7ee33755280948b4c47585d4323_Out_0_Texture2D = UnityBuildTexture2DStructNoScale(_CoverMaskMap);
|
|
Bindings_TriplanarNM_bc609ed95f52591469ab35dbfe0efcea_float _TriplanarNM_e307cfdc6531d2838aa3dfa51fc3913f;
|
|
_TriplanarNM_e307cfdc6531d2838aa3dfa51fc3913f.WorldSpaceNormal = IN.WorldSpaceNormal;
|
|
_TriplanarNM_e307cfdc6531d2838aa3dfa51fc3913f.AbsoluteWorldSpacePosition = IN.AbsoluteWorldSpacePosition;
|
|
float4 _TriplanarNM_e307cfdc6531d2838aa3dfa51fc3913f_XYZ_1_Vector4;
|
|
float4 _TriplanarNM_e307cfdc6531d2838aa3dfa51fc3913f_XZ_2_Vector4;
|
|
float4 _TriplanarNM_e307cfdc6531d2838aa3dfa51fc3913f_YZ_3_Vector4;
|
|
float4 _TriplanarNM_e307cfdc6531d2838aa3dfa51fc3913f_XY_4_Vector4;
|
|
SG_TriplanarNM_bc609ed95f52591469ab35dbfe0efcea_float(_Property_fd2df7ee33755280948b4c47585d4323_Out_0_Texture2D, (_Divide_1fe314f1ca9dd78fbf366bbeb40e4ccf_Out_2_Vector4).x, _Property_ee792eccbb538a878b19be5db264531e_Out_0_Float, UnityBuildSamplerStateStruct(SamplerState_Linear_Repeat_Aniso8), _TriplanarNM_e307cfdc6531d2838aa3dfa51fc3913f, _TriplanarNM_e307cfdc6531d2838aa3dfa51fc3913f_XYZ_1_Vector4, _TriplanarNM_e307cfdc6531d2838aa3dfa51fc3913f_XZ_2_Vector4, _TriplanarNM_e307cfdc6531d2838aa3dfa51fc3913f_YZ_3_Vector4, _TriplanarNM_e307cfdc6531d2838aa3dfa51fc3913f_XY_4_Vector4);
|
|
float _Split_fe834aed1172f284a73d2d6810bdb696_R_1_Float = _TriplanarNM_e307cfdc6531d2838aa3dfa51fc3913f_XYZ_1_Vector4[0];
|
|
float _Split_fe834aed1172f284a73d2d6810bdb696_G_2_Float = _TriplanarNM_e307cfdc6531d2838aa3dfa51fc3913f_XYZ_1_Vector4[1];
|
|
float _Split_fe834aed1172f284a73d2d6810bdb696_B_3_Float = _TriplanarNM_e307cfdc6531d2838aa3dfa51fc3913f_XYZ_1_Vector4[2];
|
|
float _Split_fe834aed1172f284a73d2d6810bdb696_A_4_Float = _TriplanarNM_e307cfdc6531d2838aa3dfa51fc3913f_XYZ_1_Vector4[3];
|
|
float _Property_b5f7a30c2ea202858ea263fd2a5a46c6_Out_0_Float = _CoverHeightMapMin;
|
|
float _Property_f86678f1d28c0483ba1ddccf49ee52f7_Out_0_Float = _CoverHeightMapMax;
|
|
float2 _Vector2_b5c01a0d88900d87a8a819b340151fb6_Out_0_Vector2 = float2(_Property_b5f7a30c2ea202858ea263fd2a5a46c6_Out_0_Float, _Property_f86678f1d28c0483ba1ddccf49ee52f7_Out_0_Float);
|
|
float _Property_82b4f7f3bf3b4382bd69876479a9e350_Out_0_Float = _CoverHeightMapOffset;
|
|
float2 _Add_6020f54fd1e6798e8e76bfdcad62759a_Out_2_Vector2;
|
|
Unity_Add_float2(_Vector2_b5c01a0d88900d87a8a819b340151fb6_Out_0_Vector2, (_Property_82b4f7f3bf3b4382bd69876479a9e350_Out_0_Float.xx), _Add_6020f54fd1e6798e8e76bfdcad62759a_Out_2_Vector2);
|
|
float _Remap_65ceff40294d1e8aae6051445b9fdbc8_Out_3_Float;
|
|
Unity_Remap_float(_Split_fe834aed1172f284a73d2d6810bdb696_B_3_Float, float2 (0, 1), _Add_6020f54fd1e6798e8e76bfdcad62759a_Out_2_Vector2, _Remap_65ceff40294d1e8aae6051445b9fdbc8_Out_3_Float);
|
|
float _Multiply_bb0edd30580dba8b89213d9c5b1ef857_Out_2_Float;
|
|
Unity_Multiply_float_float(_Multiply_02fa8aa66970b281b4a325dc68f407b9_Out_2_Float, _Remap_65ceff40294d1e8aae6051445b9fdbc8_Out_3_Float, _Multiply_bb0edd30580dba8b89213d9c5b1ef857_Out_2_Float);
|
|
float _Multiply_484dd7b77d58aa88bf99c82cfe77c774_Out_2_Float;
|
|
Unity_Multiply_float_float(_Split_2ada595651635e8d97bf4b82f717fcc6_G_2_Float, _Multiply_bb0edd30580dba8b89213d9c5b1ef857_Out_2_Float, _Multiply_484dd7b77d58aa88bf99c82cfe77c774_Out_2_Float);
|
|
float _Saturate_d39fa9bab8cc8a8fa35db28d4dbc74ab_Out_1_Float;
|
|
Unity_Saturate_float(_Multiply_484dd7b77d58aa88bf99c82cfe77c774_Out_2_Float, _Saturate_d39fa9bab8cc8a8fa35db28d4dbc74ab_Out_1_Float);
|
|
float _Multiply_6957741a4923cc8db84ac72df2e194a8_Out_2_Float;
|
|
Unity_Multiply_float_float(_Clamp_07a501c22c6e188199bed73412ac8926_Out_3_Float, _Saturate_d39fa9bab8cc8a8fa35db28d4dbc74ab_Out_1_Float, _Multiply_6957741a4923cc8db84ac72df2e194a8_Out_2_Float);
|
|
float _Branch_3ccf365d359214809d30b6430d863e3f_Out_3_Float;
|
|
Unity_Branch_float(_Property_cb0b6597aee47880b32e852aaa0e4a71_Out_0_Boolean, _Multiply_6957741a4923cc8db84ac72df2e194a8_Out_2_Float, _Clamp_07a501c22c6e188199bed73412ac8926_Out_3_Float, _Branch_3ccf365d359214809d30b6430d863e3f_Out_3_Float);
|
|
float3 _Lerp_ee1b6587de2afe82942e8476d303d598_Out_3_Vector3;
|
|
Unity_Lerp_float3(_BlendOverlayBaseColor_369c0b6a02e62b809dc5c6ac1efddde2_OutVector4_1_Vector3, _BlendOverlayBaseColor_ec1f397271cc818abdb95188914e6b4d_OutVector4_1_Vector3, (_Branch_3ccf365d359214809d30b6430d863e3f_Out_3_Float.xxx), _Lerp_ee1b6587de2afe82942e8476d303d598_Out_3_Vector3);
|
|
float4 _Property_c500db71e51fef8daff29f346c122e57_Out_0_Vector4 = _WetColor;
|
|
float3 _Multiply_89461014b078f787a0724725c54fb934_Out_2_Vector3;
|
|
Unity_Multiply_float3_float3((_Property_c500db71e51fef8daff29f346c122e57_Out_0_Vector4.xyz), _Lerp_ee1b6587de2afe82942e8476d303d598_Out_3_Vector3, _Multiply_89461014b078f787a0724725c54fb934_Out_2_Vector3);
|
|
float _OneMinus_e16dfb812ec64b8891c541171687142f_Out_1_Float;
|
|
Unity_OneMinus_float(_Split_2ada595651635e8d97bf4b82f717fcc6_R_1_Float, _OneMinus_e16dfb812ec64b8891c541171687142f_Out_1_Float);
|
|
float3 _Lerp_43bc7a9493df5a829abf080ee4ad3298_Out_3_Vector3;
|
|
Unity_Lerp_float3(_Lerp_ee1b6587de2afe82942e8476d303d598_Out_3_Vector3, _Multiply_89461014b078f787a0724725c54fb934_Out_2_Vector3, (_OneMinus_e16dfb812ec64b8891c541171687142f_Out_1_Float.xxx), _Lerp_43bc7a9493df5a829abf080ee4ad3298_Out_3_Vector3);
|
|
UnityTexture2D _Property_8e909eb873a4cd8e9af98a90a84fdde8_Out_0_Texture2D = UnityBuildTexture2DStructNoScale(_BaseMaskMap);
|
|
Bindings_TriplanarNM_bc609ed95f52591469ab35dbfe0efcea_float _TriplanarNM_52e6c67b7de4708f80a463a880607c97;
|
|
_TriplanarNM_52e6c67b7de4708f80a463a880607c97.WorldSpaceNormal = IN.WorldSpaceNormal;
|
|
_TriplanarNM_52e6c67b7de4708f80a463a880607c97.AbsoluteWorldSpacePosition = IN.AbsoluteWorldSpacePosition;
|
|
float4 _TriplanarNM_52e6c67b7de4708f80a463a880607c97_XYZ_1_Vector4;
|
|
float4 _TriplanarNM_52e6c67b7de4708f80a463a880607c97_XZ_2_Vector4;
|
|
float4 _TriplanarNM_52e6c67b7de4708f80a463a880607c97_YZ_3_Vector4;
|
|
float4 _TriplanarNM_52e6c67b7de4708f80a463a880607c97_XY_4_Vector4;
|
|
SG_TriplanarNM_bc609ed95f52591469ab35dbfe0efcea_float(_Property_8e909eb873a4cd8e9af98a90a84fdde8_Out_0_Texture2D, (_Divide_6a90cebe78e620828de587523daaa7e6_Out_2_Vector4).x, _Property_3539de8c698c2981bb3c088d4ec52201_Out_0_Float, UnityBuildSamplerStateStruct(SamplerState_Linear_Repeat_Aniso8), _TriplanarNM_52e6c67b7de4708f80a463a880607c97, _TriplanarNM_52e6c67b7de4708f80a463a880607c97_XYZ_1_Vector4, _TriplanarNM_52e6c67b7de4708f80a463a880607c97_XZ_2_Vector4, _TriplanarNM_52e6c67b7de4708f80a463a880607c97_YZ_3_Vector4, _TriplanarNM_52e6c67b7de4708f80a463a880607c97_XY_4_Vector4);
|
|
float _Split_79d9d761d63eaa8c97fb3cb7fae0c380_R_1_Float = _TriplanarNM_52e6c67b7de4708f80a463a880607c97_XYZ_1_Vector4[0];
|
|
float _Split_79d9d761d63eaa8c97fb3cb7fae0c380_G_2_Float = _TriplanarNM_52e6c67b7de4708f80a463a880607c97_XYZ_1_Vector4[1];
|
|
float _Split_79d9d761d63eaa8c97fb3cb7fae0c380_B_3_Float = _TriplanarNM_52e6c67b7de4708f80a463a880607c97_XYZ_1_Vector4[2];
|
|
float _Split_79d9d761d63eaa8c97fb3cb7fae0c380_A_4_Float = _TriplanarNM_52e6c67b7de4708f80a463a880607c97_XYZ_1_Vector4[3];
|
|
float _Property_b97916566d1fc587b95e8ec7fe8bd775_Out_0_Float = _BaseMetallic;
|
|
float _Multiply_d0c8d83444dbe38588583551936c7394_Out_2_Float;
|
|
Unity_Multiply_float_float(_Split_79d9d761d63eaa8c97fb3cb7fae0c380_R_1_Float, _Property_b97916566d1fc587b95e8ec7fe8bd775_Out_0_Float, _Multiply_d0c8d83444dbe38588583551936c7394_Out_2_Float);
|
|
float _Property_b187bbc548f3378caa8c964ca81707ca_Out_0_Float = _BaseAORemapMin;
|
|
float _Property_f06b327a4a8a7881a968eb399edf1d5c_Out_0_Float = _BaseAORemapMax;
|
|
float2 _Vector2_e267d722f88ada8da2d7edf8f7c0261d_Out_0_Vector2 = float2(_Property_b187bbc548f3378caa8c964ca81707ca_Out_0_Float, _Property_f06b327a4a8a7881a968eb399edf1d5c_Out_0_Float);
|
|
float _Remap_ad3c26564c54aa8cbb2f81aa114b3b78_Out_3_Float;
|
|
Unity_Remap_float(_Split_79d9d761d63eaa8c97fb3cb7fae0c380_G_2_Float, float2 (0, 1), _Vector2_e267d722f88ada8da2d7edf8f7c0261d_Out_0_Vector2, _Remap_ad3c26564c54aa8cbb2f81aa114b3b78_Out_3_Float);
|
|
float _Property_9a46e81c228dd0858cfdfc248fcb5efd_Out_0_Float = _BaseSmoothnessRemapMin;
|
|
float _Property_4bb3b70a3720ae8ea49e0f195b665d1f_Out_0_Float = _BaseSmoothnessRemapMax;
|
|
float2 _Vector2_6cef82af5d99208da4f2447a8ae60b4b_Out_0_Vector2 = float2(_Property_9a46e81c228dd0858cfdfc248fcb5efd_Out_0_Float, _Property_4bb3b70a3720ae8ea49e0f195b665d1f_Out_0_Float);
|
|
float _Remap_e30adbbf5d116285964ef079df15b895_Out_3_Float;
|
|
Unity_Remap_float(_Split_79d9d761d63eaa8c97fb3cb7fae0c380_A_4_Float, float2 (0, 1), _Vector2_6cef82af5d99208da4f2447a8ae60b4b_Out_0_Vector2, _Remap_e30adbbf5d116285964ef079df15b895_Out_3_Float);
|
|
float _Multiply_794172f65d2acd8981bc0e2ecc71376e_Out_2_Float;
|
|
Unity_Multiply_float_float(_SampleTexture2D_4bd08411faa60c828847f2247f06a809_B_6_Float, 2, _Multiply_794172f65d2acd8981bc0e2ecc71376e_Out_2_Float);
|
|
float _Add_dedefe53d91ea08c81d7a6d9071b0263_Out_2_Float;
|
|
Unity_Add_float(_Multiply_794172f65d2acd8981bc0e2ecc71376e_Out_2_Float, float(-1), _Add_dedefe53d91ea08c81d7a6d9071b0263_Out_2_Float);
|
|
float _Property_039bed9aac95ec8fa510fea3c4904280_Out_0_Float = _DetailSmoothnessScale;
|
|
float _Multiply_eb0a55c9be8cee86b9847c24f0e5be60_Out_2_Float;
|
|
Unity_Multiply_float_float(_Add_dedefe53d91ea08c81d7a6d9071b0263_Out_2_Float, _Property_039bed9aac95ec8fa510fea3c4904280_Out_0_Float, _Multiply_eb0a55c9be8cee86b9847c24f0e5be60_Out_2_Float);
|
|
float _Saturate_ca849f42c1cc238cb8fb1eb04fbfb9dd_Out_1_Float;
|
|
Unity_Saturate_float(_Multiply_eb0a55c9be8cee86b9847c24f0e5be60_Out_2_Float, _Saturate_ca849f42c1cc238cb8fb1eb04fbfb9dd_Out_1_Float);
|
|
float _Absolute_bc7994d4f833e382b37b5718ee583259_Out_1_Float;
|
|
Unity_Absolute_float(_Saturate_ca849f42c1cc238cb8fb1eb04fbfb9dd_Out_1_Float, _Absolute_bc7994d4f833e382b37b5718ee583259_Out_1_Float);
|
|
Bindings_BlendOverlayDetailSmoothness_06e12138dc89c0040b45a57abe520a1a_float _BlendOverlayDetailSmoothness_5a03404db5a34885a089f1aee363667f;
|
|
float _BlendOverlayDetailSmoothness_5a03404db5a34885a089f1aee363667f_SmoothnessOverlay_1_Float;
|
|
SG_BlendOverlayDetailSmoothness_06e12138dc89c0040b45a57abe520a1a_float(_Remap_e30adbbf5d116285964ef079df15b895_Out_3_Float, _Add_dedefe53d91ea08c81d7a6d9071b0263_Out_2_Float, _Absolute_bc7994d4f833e382b37b5718ee583259_Out_1_Float, _BlendOverlayDetailSmoothness_5a03404db5a34885a089f1aee363667f, _BlendOverlayDetailSmoothness_5a03404db5a34885a089f1aee363667f_SmoothnessOverlay_1_Float);
|
|
float _Saturate_3d6c6d852202408cb9b11aac8a566c89_Out_1_Float;
|
|
Unity_Saturate_float(_BlendOverlayDetailSmoothness_5a03404db5a34885a089f1aee363667f_SmoothnessOverlay_1_Float, _Saturate_3d6c6d852202408cb9b11aac8a566c89_Out_1_Float);
|
|
float3 _Vector3_8ed406a0096de4818282676bf24b1a85_Out_0_Vector3 = float3(_Multiply_d0c8d83444dbe38588583551936c7394_Out_2_Float, _Remap_ad3c26564c54aa8cbb2f81aa114b3b78_Out_3_Float, _Saturate_3d6c6d852202408cb9b11aac8a566c89_Out_1_Float);
|
|
float _Split_2ec5937af5023a8295e3858d32b193d5_R_1_Float = _Vector3_8ed406a0096de4818282676bf24b1a85_Out_0_Vector3[0];
|
|
float _Split_2ec5937af5023a8295e3858d32b193d5_G_2_Float = _Vector3_8ed406a0096de4818282676bf24b1a85_Out_0_Vector3[1];
|
|
float _Split_2ec5937af5023a8295e3858d32b193d5_B_3_Float = _Vector3_8ed406a0096de4818282676bf24b1a85_Out_0_Vector3[2];
|
|
float _Split_2ec5937af5023a8295e3858d32b193d5_A_4_Float = 0;
|
|
UnityTexture2D _Property_0f50abb140882d848d9fc7be8e3468dc_Out_0_Texture2D = UnityBuildTexture2DStructNoScale(_ShapeAO);
|
|
float4 _SampleTexture2D_33392602b94694898ec8227a89f13cc9_RGBA_0_Vector4 = SAMPLE_TEXTURE2D(_Property_0f50abb140882d848d9fc7be8e3468dc_Out_0_Texture2D.tex, _Property_0f50abb140882d848d9fc7be8e3468dc_Out_0_Texture2D.samplerstate, _Property_0f50abb140882d848d9fc7be8e3468dc_Out_0_Texture2D.GetTransformedUV(IN.uv0.xy) );
|
|
float _SampleTexture2D_33392602b94694898ec8227a89f13cc9_R_4_Float = _SampleTexture2D_33392602b94694898ec8227a89f13cc9_RGBA_0_Vector4.r;
|
|
float _SampleTexture2D_33392602b94694898ec8227a89f13cc9_G_5_Float = _SampleTexture2D_33392602b94694898ec8227a89f13cc9_RGBA_0_Vector4.g;
|
|
float _SampleTexture2D_33392602b94694898ec8227a89f13cc9_B_6_Float = _SampleTexture2D_33392602b94694898ec8227a89f13cc9_RGBA_0_Vector4.b;
|
|
float _SampleTexture2D_33392602b94694898ec8227a89f13cc9_A_7_Float = _SampleTexture2D_33392602b94694898ec8227a89f13cc9_RGBA_0_Vector4.a;
|
|
float _Property_a51c4b6d05e6718d919aadcf26153350_Out_0_Float = _ShapeAORemapMin;
|
|
float _Property_973fbc42b7a69088b9fc2c502945f369_Out_0_Float = _ShapeAORemapMax;
|
|
float2 _Vector2_a73753c5a8c4fa828d2eb25d4fb8b399_Out_0_Vector2 = float2(_Property_a51c4b6d05e6718d919aadcf26153350_Out_0_Float, _Property_973fbc42b7a69088b9fc2c502945f369_Out_0_Float);
|
|
float _Remap_270e7e207f303487bc04348b1b54db69_Out_3_Float;
|
|
Unity_Remap_float(_SampleTexture2D_33392602b94694898ec8227a89f13cc9_G_5_Float, float2 (0, 1), _Vector2_a73753c5a8c4fa828d2eb25d4fb8b399_Out_0_Vector2, _Remap_270e7e207f303487bc04348b1b54db69_Out_3_Float);
|
|
float _Minimum_307d1a8c4f5c6a87a1bbc658a5811679_Out_2_Float;
|
|
Unity_Minimum_float(_Split_2ec5937af5023a8295e3858d32b193d5_G_2_Float, _Remap_270e7e207f303487bc04348b1b54db69_Out_3_Float, _Minimum_307d1a8c4f5c6a87a1bbc658a5811679_Out_2_Float);
|
|
float3 _Vector3_fac10bf467f5ff82b4f071ba165bf458_Out_0_Vector3 = float3(_Split_2ec5937af5023a8295e3858d32b193d5_R_1_Float, _Minimum_307d1a8c4f5c6a87a1bbc658a5811679_Out_2_Float, _Split_2ec5937af5023a8295e3858d32b193d5_B_3_Float);
|
|
float _Property_fa6937565be49684915e6bb999529949_Out_0_Float = _CoverMetallic;
|
|
float _Multiply_d0ecb787fa289f8f9d3c2988d60f18d3_Out_2_Float;
|
|
Unity_Multiply_float_float(_Split_fe834aed1172f284a73d2d6810bdb696_R_1_Float, _Property_fa6937565be49684915e6bb999529949_Out_0_Float, _Multiply_d0ecb787fa289f8f9d3c2988d60f18d3_Out_2_Float);
|
|
float _Property_8f5ca0ba38d2a4858c1b4e44f6a375b4_Out_0_Float = _CoverAORemapMin;
|
|
float _Property_a15ef0fe46e1d88f9e20df6605bd1499_Out_0_Float = _CoverAORemapMax;
|
|
float2 _Vector2_969d809c2de99f89959cc4526a665db9_Out_0_Vector2 = float2(_Property_8f5ca0ba38d2a4858c1b4e44f6a375b4_Out_0_Float, _Property_a15ef0fe46e1d88f9e20df6605bd1499_Out_0_Float);
|
|
float _Remap_1b6065f44329038594e2d0cf001fa138_Out_3_Float;
|
|
Unity_Remap_float(_Split_fe834aed1172f284a73d2d6810bdb696_G_2_Float, float2 (0, 1), _Vector2_969d809c2de99f89959cc4526a665db9_Out_0_Vector2, _Remap_1b6065f44329038594e2d0cf001fa138_Out_3_Float);
|
|
float _Property_0fde68fd9824db8e9f5b4b0daff90270_Out_0_Float = _CoverSmoothnessRemapMin;
|
|
float _Property_abad1da00caf99869e0c9ca2926c76bd_Out_0_Float = _CoverSmoothnessRemapMax;
|
|
float2 _Vector2_1aa81c2ad7cc268caa834889569ce556_Out_0_Vector2 = float2(_Property_0fde68fd9824db8e9f5b4b0daff90270_Out_0_Float, _Property_abad1da00caf99869e0c9ca2926c76bd_Out_0_Float);
|
|
float _Remap_4948cd1fb38399888e9567ee2abb8acd_Out_3_Float;
|
|
Unity_Remap_float(_Split_fe834aed1172f284a73d2d6810bdb696_A_4_Float, float2 (0, 1), _Vector2_1aa81c2ad7cc268caa834889569ce556_Out_0_Vector2, _Remap_4948cd1fb38399888e9567ee2abb8acd_Out_3_Float);
|
|
float _Multiply_d3e207dba42f1984aacff3c1bf4eef0b_Out_2_Float;
|
|
Unity_Multiply_float_float(_SampleTexture2D_4bd08411faa60c828847f2247f06a809_B_6_Float, 2, _Multiply_d3e207dba42f1984aacff3c1bf4eef0b_Out_2_Float);
|
|
float _Add_0299d632f81fff8f969a0eed5f77397c_Out_2_Float;
|
|
Unity_Add_float(_Multiply_d3e207dba42f1984aacff3c1bf4eef0b_Out_2_Float, float(-1), _Add_0299d632f81fff8f969a0eed5f77397c_Out_2_Float);
|
|
float _Property_a2c7556e96b60b8e90cb5145ca6f9dde_Out_0_Float = _DetailCoverSmoothnessScale;
|
|
float _Multiply_d340fbee0985958dbb66555a73bd733c_Out_2_Float;
|
|
Unity_Multiply_float_float(_Add_0299d632f81fff8f969a0eed5f77397c_Out_2_Float, _Property_a2c7556e96b60b8e90cb5145ca6f9dde_Out_0_Float, _Multiply_d340fbee0985958dbb66555a73bd733c_Out_2_Float);
|
|
float _Saturate_2c0cc920be0ca88e937ec108b38f5fde_Out_1_Float;
|
|
Unity_Saturate_float(_Multiply_d340fbee0985958dbb66555a73bd733c_Out_2_Float, _Saturate_2c0cc920be0ca88e937ec108b38f5fde_Out_1_Float);
|
|
float _Absolute_3f81290e941e378283f7151c4a0731e2_Out_1_Float;
|
|
Unity_Absolute_float(_Saturate_2c0cc920be0ca88e937ec108b38f5fde_Out_1_Float, _Absolute_3f81290e941e378283f7151c4a0731e2_Out_1_Float);
|
|
Bindings_BlendOverlayDetailSmoothness_06e12138dc89c0040b45a57abe520a1a_float _BlendOverlayDetailSmoothness_e7a4fbe98378f084bd09f6e5d90e1cb8;
|
|
float _BlendOverlayDetailSmoothness_e7a4fbe98378f084bd09f6e5d90e1cb8_SmoothnessOverlay_1_Float;
|
|
SG_BlendOverlayDetailSmoothness_06e12138dc89c0040b45a57abe520a1a_float(_Remap_4948cd1fb38399888e9567ee2abb8acd_Out_3_Float, _Add_0299d632f81fff8f969a0eed5f77397c_Out_2_Float, _Absolute_3f81290e941e378283f7151c4a0731e2_Out_1_Float, _BlendOverlayDetailSmoothness_e7a4fbe98378f084bd09f6e5d90e1cb8, _BlendOverlayDetailSmoothness_e7a4fbe98378f084bd09f6e5d90e1cb8_SmoothnessOverlay_1_Float);
|
|
float _Saturate_9091ea9d9924c682ad6b94d3322ee822_Out_1_Float;
|
|
Unity_Saturate_float(_BlendOverlayDetailSmoothness_e7a4fbe98378f084bd09f6e5d90e1cb8_SmoothnessOverlay_1_Float, _Saturate_9091ea9d9924c682ad6b94d3322ee822_Out_1_Float);
|
|
float3 _Vector3_93bafe600474e7819ebc13e534b986bf_Out_0_Vector3 = float3(_Multiply_d0ecb787fa289f8f9d3c2988d60f18d3_Out_2_Float, _Remap_1b6065f44329038594e2d0cf001fa138_Out_3_Float, _Saturate_9091ea9d9924c682ad6b94d3322ee822_Out_1_Float);
|
|
float _Split_6ec9cc5e56f3f68ba37ff91557979c18_R_1_Float = _Vector3_93bafe600474e7819ebc13e534b986bf_Out_0_Vector3[0];
|
|
float _Split_6ec9cc5e56f3f68ba37ff91557979c18_G_2_Float = _Vector3_93bafe600474e7819ebc13e534b986bf_Out_0_Vector3[1];
|
|
float _Split_6ec9cc5e56f3f68ba37ff91557979c18_B_3_Float = _Vector3_93bafe600474e7819ebc13e534b986bf_Out_0_Vector3[2];
|
|
float _Split_6ec9cc5e56f3f68ba37ff91557979c18_A_4_Float = 0;
|
|
float _Property_ca9c61425ece6b8c909c06b1e2738f1a_Out_0_Float = _CoverShapeAORemapMin;
|
|
float _Property_b9be92f1612c908d80643f0e96015b33_Out_0_Float = _CoverShapeAORemapMax;
|
|
float2 _Vector2_9b862c4e147d1082afad3606339d2130_Out_0_Vector2 = float2(_Property_ca9c61425ece6b8c909c06b1e2738f1a_Out_0_Float, _Property_b9be92f1612c908d80643f0e96015b33_Out_0_Float);
|
|
float _Remap_c1f0022add809b83bad7b493177bddb7_Out_3_Float;
|
|
Unity_Remap_float(_SampleTexture2D_33392602b94694898ec8227a89f13cc9_G_5_Float, float2 (0, 1), _Vector2_9b862c4e147d1082afad3606339d2130_Out_0_Vector2, _Remap_c1f0022add809b83bad7b493177bddb7_Out_3_Float);
|
|
float _Minimum_595c2f31bb0ec588977a2b9ea46bf6b0_Out_2_Float;
|
|
Unity_Minimum_float(_Split_6ec9cc5e56f3f68ba37ff91557979c18_G_2_Float, _Remap_c1f0022add809b83bad7b493177bddb7_Out_3_Float, _Minimum_595c2f31bb0ec588977a2b9ea46bf6b0_Out_2_Float);
|
|
float3 _Vector3_6cb5b2c4675bb28cb41ea88b6eaa2aff_Out_0_Vector3 = float3(_Split_6ec9cc5e56f3f68ba37ff91557979c18_R_1_Float, _Minimum_595c2f31bb0ec588977a2b9ea46bf6b0_Out_2_Float, _Split_6ec9cc5e56f3f68ba37ff91557979c18_B_3_Float);
|
|
float3 _Lerp_fa40b54f3d5a1a8a95f6306e837b9338_Out_3_Vector3;
|
|
Unity_Lerp_float3(_Vector3_fac10bf467f5ff82b4f071ba165bf458_Out_0_Vector3, _Vector3_6cb5b2c4675bb28cb41ea88b6eaa2aff_Out_0_Vector3, (_Branch_3ccf365d359214809d30b6430d863e3f_Out_3_Float.xxx), _Lerp_fa40b54f3d5a1a8a95f6306e837b9338_Out_3_Vector3);
|
|
float _Split_c4a5352a58a4f88fb40410f956825dc6_R_1_Float = _Lerp_fa40b54f3d5a1a8a95f6306e837b9338_Out_3_Vector3[0];
|
|
float _Split_c4a5352a58a4f88fb40410f956825dc6_G_2_Float = _Lerp_fa40b54f3d5a1a8a95f6306e837b9338_Out_3_Vector3[1];
|
|
float _Split_c4a5352a58a4f88fb40410f956825dc6_B_3_Float = _Lerp_fa40b54f3d5a1a8a95f6306e837b9338_Out_3_Vector3[2];
|
|
float _Split_c4a5352a58a4f88fb40410f956825dc6_A_4_Float = 0;
|
|
float _Property_7861e880056eb88ab923a2ff5b12179d_Out_0_Float = _WetSmoothness;
|
|
float _Lerp_ee63160826cff4869f0e63568dd6f8b7_Out_3_Float;
|
|
Unity_Lerp_float(_Split_c4a5352a58a4f88fb40410f956825dc6_B_3_Float, _Property_7861e880056eb88ab923a2ff5b12179d_Out_0_Float, _OneMinus_e16dfb812ec64b8891c541171687142f_Out_1_Float, _Lerp_ee63160826cff4869f0e63568dd6f8b7_Out_3_Float);
|
|
float _Property_1c389d922d4fba86bc62c7d42ac8643d_Out_0_Float = _CoverNormalScale;
|
|
float3 _NormalStrength_db3de71f618fee878c84a13374c7adc4_Out_2_Vector3;
|
|
Unity_NormalStrength_float((_TriplanarNMn_ba7e211dd8095589a2939b5b239ca8e0_XYZ_1_Vector4.xyz), _Property_1c389d922d4fba86bc62c7d42ac8643d_Out_0_Float, _NormalStrength_db3de71f618fee878c84a13374c7adc4_Out_2_Vector3);
|
|
float3 _NormalBlend_b2e537e7a99f9280ba682b47daf3c5e3_Out_2_Vector3;
|
|
Unity_NormalBlend_float(_NormalStrength_db3de71f618fee878c84a13374c7adc4_Out_2_Vector3, _NormalStrength_401cd5af500bd68dbc9bca19d548d0db_Out_2_Vector3, _NormalBlend_b2e537e7a99f9280ba682b47daf3c5e3_Out_2_Vector3);
|
|
float2 _Vector2_b87489f8633d268598edb76163057164_Out_0_Vector2 = float2(_SampleTexture2D_4bd08411faa60c828847f2247f06a809_A_7_Float, _SampleTexture2D_4bd08411faa60c828847f2247f06a809_G_5_Float);
|
|
float2 _Multiply_95e603bb6d4bd7809de0ae42c8f45058_Out_2_Vector2;
|
|
Unity_Multiply_float2_float2(_Vector2_b87489f8633d268598edb76163057164_Out_0_Vector2, float2(2, 2), _Multiply_95e603bb6d4bd7809de0ae42c8f45058_Out_2_Vector2);
|
|
float2 _Add_c116ac3906ccf68d82dd5b73d0f5659a_Out_2_Vector2;
|
|
Unity_Add_float2(_Multiply_95e603bb6d4bd7809de0ae42c8f45058_Out_2_Vector2, float2(-1, -1), _Add_c116ac3906ccf68d82dd5b73d0f5659a_Out_2_Vector2);
|
|
float _Property_988acb131fd330878b4ac0672366ad90_Out_0_Float = _DetailCoverNormalScale;
|
|
float2 _Multiply_6de1a79215e1928f9f3fc3293df74f88_Out_2_Vector2;
|
|
Unity_Multiply_float2_float2(_Add_c116ac3906ccf68d82dd5b73d0f5659a_Out_2_Vector2, (_Property_988acb131fd330878b4ac0672366ad90_Out_0_Float.xx), _Multiply_6de1a79215e1928f9f3fc3293df74f88_Out_2_Vector2);
|
|
float _Split_9ce53bb7a65f16809b6a95d82286186e_R_1_Float = _Multiply_6de1a79215e1928f9f3fc3293df74f88_Out_2_Vector2[0];
|
|
float _Split_9ce53bb7a65f16809b6a95d82286186e_G_2_Float = _Multiply_6de1a79215e1928f9f3fc3293df74f88_Out_2_Vector2[1];
|
|
float _Split_9ce53bb7a65f16809b6a95d82286186e_B_3_Float = 0;
|
|
float _Split_9ce53bb7a65f16809b6a95d82286186e_A_4_Float = 0;
|
|
float _DotProduct_8912687db556b6819d2a38ba8511a7ae_Out_2_Float;
|
|
Unity_DotProduct_float2(_Multiply_6de1a79215e1928f9f3fc3293df74f88_Out_2_Vector2, _Multiply_6de1a79215e1928f9f3fc3293df74f88_Out_2_Vector2, _DotProduct_8912687db556b6819d2a38ba8511a7ae_Out_2_Float);
|
|
float _Saturate_013ea9a02a1ff18992540b270836cc73_Out_1_Float;
|
|
Unity_Saturate_float(_DotProduct_8912687db556b6819d2a38ba8511a7ae_Out_2_Float, _Saturate_013ea9a02a1ff18992540b270836cc73_Out_1_Float);
|
|
float _OneMinus_eefd2695dc7d77838984fc25a1c00b0b_Out_1_Float;
|
|
Unity_OneMinus_float(_Saturate_013ea9a02a1ff18992540b270836cc73_Out_1_Float, _OneMinus_eefd2695dc7d77838984fc25a1c00b0b_Out_1_Float);
|
|
float _SquareRoot_1d25cc71b4ce9286af1666a96ae6ac5a_Out_1_Float;
|
|
Unity_SquareRoot_float(_OneMinus_eefd2695dc7d77838984fc25a1c00b0b_Out_1_Float, _SquareRoot_1d25cc71b4ce9286af1666a96ae6ac5a_Out_1_Float);
|
|
float3 _Vector3_c3d9c7e92a1c5b8ea5650ab3bb421c27_Out_0_Vector3 = float3(_Split_9ce53bb7a65f16809b6a95d82286186e_R_1_Float, _Split_9ce53bb7a65f16809b6a95d82286186e_G_2_Float, _SquareRoot_1d25cc71b4ce9286af1666a96ae6ac5a_Out_1_Float);
|
|
float3 _NormalBlend_8e1d1c87f8c12b87b64883533bfa43be_Out_2_Vector3;
|
|
Unity_NormalBlend_float(_NormalBlend_b2e537e7a99f9280ba682b47daf3c5e3_Out_2_Vector3, _Vector3_c3d9c7e92a1c5b8ea5650ab3bb421c27_Out_0_Vector3, _NormalBlend_8e1d1c87f8c12b87b64883533bfa43be_Out_2_Vector3);
|
|
float3 _Lerp_48cd568fef7d358b8d65b989db745e6c_Out_3_Vector3;
|
|
Unity_Lerp_float3(_NormalBlend_4242e1b4a785378aa59dd49e9d993ffc_Out_2_Vector3, _NormalBlend_8e1d1c87f8c12b87b64883533bfa43be_Out_2_Vector3, (_Branch_3ccf365d359214809d30b6430d863e3f_Out_3_Float.xxx), _Lerp_48cd568fef7d358b8d65b989db745e6c_Out_3_Vector3);
|
|
surface.BaseColor = _Lerp_43bc7a9493df5a829abf080ee4ad3298_Out_3_Vector3;
|
|
surface.Emission = float3(0, 0, 0);
|
|
surface.Alpha = float(1);
|
|
surface.BentNormal = IN.TangentSpaceNormal;
|
|
surface.Smoothness = _Lerp_ee63160826cff4869f0e63568dd6f8b7_Out_3_Float;
|
|
surface.Occlusion = _Split_c4a5352a58a4f88fb40410f956825dc6_G_2_Float;
|
|
surface.NormalTS = _Lerp_48cd568fef7d358b8d65b989db745e6c_Out_3_Vector3;
|
|
surface.Metallic = _Split_c4a5352a58a4f88fb40410f956825dc6_R_1_Float;
|
|
return surface;
|
|
}
|
|
|
|
// --------------------------------------------------
|
|
// Build Graph Inputs
|
|
#ifdef HAVE_VFX_MODIFICATION
|
|
#define VFX_SRP_ATTRIBUTES AttributesMesh
|
|
#define VaryingsMeshType VaryingsMeshToPS
|
|
#define VFX_SRP_VARYINGS VaryingsMeshType
|
|
#define VFX_SRP_SURFACE_INPUTS FragInputs
|
|
#endif
|
|
SurfaceDescriptionInputs FragInputsToSurfaceDescriptionInputs(FragInputs input, float3 viewWS)
|
|
{
|
|
SurfaceDescriptionInputs output;
|
|
ZERO_INITIALIZE(SurfaceDescriptionInputs, output);
|
|
|
|
output.WorldSpaceNormal = normalize(input.tangentToWorld[2].xyz);
|
|
#if defined(SHADER_STAGE_RAY_TRACING)
|
|
#else
|
|
#endif
|
|
output.TangentSpaceNormal = float3(0.0f, 0.0f, 1.0f);
|
|
output.WorldSpaceTangent = input.tangentToWorld[0].xyz;
|
|
output.WorldSpaceBiTangent = input.tangentToWorld[1].xyz;
|
|
output.AbsoluteWorldSpacePosition = GetAbsolutePositionWS(input.positionRWS);
|
|
|
|
#if UNITY_UV_STARTS_AT_TOP
|
|
#else
|
|
#endif
|
|
|
|
|
|
output.uv0 = input.texCoord0;
|
|
output.VertexColor = input.color;
|
|
|
|
// splice point to copy frag inputs custom interpolator pack into the SDI
|
|
/* WARNING: $splice Could not find named fragment 'CustomInterpolatorCopyToSDI' */
|
|
|
|
return output;
|
|
}
|
|
|
|
// --------------------------------------------------
|
|
// Build Surface Data (Specific Material)
|
|
|
|
void ApplyDecalToSurfaceDataNoNormal(DecalSurfaceData decalSurfaceData, inout SurfaceData surfaceData);
|
|
|
|
void ApplyDecalAndGetNormal(FragInputs fragInputs, PositionInputs posInput, SurfaceDescription surfaceDescription,
|
|
inout SurfaceData surfaceData)
|
|
{
|
|
float3 doubleSidedConstants = GetDoubleSidedConstants();
|
|
|
|
#ifdef DECAL_NORMAL_BLENDING
|
|
// SG nodes don't ouptut surface gradients, so if decals require surf grad blending, we have to convert
|
|
// the normal to gradient before applying the decal. We then have to resolve the gradient back to world space
|
|
float3 normalTS;
|
|
|
|
normalTS = SurfaceGradientFromTangentSpaceNormalAndFromTBN(surfaceDescription.NormalTS,
|
|
fragInputs.tangentToWorld[0], fragInputs.tangentToWorld[1]);
|
|
|
|
|
|
#if HAVE_DECALS
|
|
if (_EnableDecals)
|
|
{
|
|
float alpha = 1.0;
|
|
alpha = surfaceDescription.Alpha;
|
|
|
|
DecalSurfaceData decalSurfaceData = GetDecalSurfaceData(posInput, fragInputs, alpha);
|
|
ApplyDecalToSurfaceNormal(decalSurfaceData, fragInputs.tangentToWorld[2], normalTS);
|
|
ApplyDecalToSurfaceDataNoNormal(decalSurfaceData, surfaceData);
|
|
}
|
|
#endif
|
|
|
|
GetNormalWS_SG(fragInputs, normalTS, surfaceData.normalWS, doubleSidedConstants);
|
|
#else
|
|
// normal delivered to master node
|
|
GetNormalWS(fragInputs, surfaceDescription.NormalTS, surfaceData.normalWS, doubleSidedConstants);
|
|
|
|
#if HAVE_DECALS
|
|
if (_EnableDecals)
|
|
{
|
|
float alpha = 1.0;
|
|
alpha = surfaceDescription.Alpha;
|
|
|
|
// Both uses and modifies 'surfaceData.normalWS'.
|
|
DecalSurfaceData decalSurfaceData = GetDecalSurfaceData(posInput, fragInputs, alpha);
|
|
ApplyDecalToSurfaceNormal(decalSurfaceData, surfaceData.normalWS.xyz);
|
|
ApplyDecalToSurfaceDataNoNormal(decalSurfaceData, surfaceData);
|
|
}
|
|
#endif
|
|
#endif
|
|
}
|
|
void BuildSurfaceData(FragInputs fragInputs, inout SurfaceDescription surfaceDescription, float3 V, PositionInputs posInput, out SurfaceData surfaceData, out float3 bentNormalWS)
|
|
{
|
|
ZERO_INITIALIZE(SurfaceData, surfaceData);
|
|
|
|
// specularOcclusion need to be init ahead of decal to quiet the compiler that modify the SurfaceData struct
|
|
// however specularOcclusion can come from the graph, so need to be init here so it can be override.
|
|
surfaceData.specularOcclusion = 1.0;
|
|
surfaceData.thickness = 0.0;
|
|
|
|
surfaceData.baseColor = surfaceDescription.BaseColor;
|
|
surfaceData.perceptualSmoothness = surfaceDescription.Smoothness;
|
|
surfaceData.ambientOcclusion = surfaceDescription.Occlusion;
|
|
surfaceData.metallic = surfaceDescription.Metallic;
|
|
|
|
#if defined(_REFRACTION_PLANE) || defined(_REFRACTION_SPHERE) || defined(_REFRACTION_THIN)
|
|
if (_EnableSSRefraction)
|
|
{
|
|
|
|
surfaceData.transmittanceMask = (1.0 - surfaceDescription.Alpha);
|
|
surfaceDescription.Alpha = 1.0;
|
|
}
|
|
else
|
|
{
|
|
surfaceData.ior = 1.0;
|
|
surfaceData.transmittanceColor = float3(1.0, 1.0, 1.0);
|
|
surfaceData.atDistance = 1.0;
|
|
surfaceData.transmittanceMask = 0.0;
|
|
surfaceDescription.Alpha = 1.0;
|
|
}
|
|
#else
|
|
surfaceData.ior = 1.0;
|
|
surfaceData.transmittanceColor = float3(1.0, 1.0, 1.0);
|
|
surfaceData.atDistance = 1.0;
|
|
surfaceData.transmittanceMask = 0.0;
|
|
#endif
|
|
|
|
// These static material feature allow compile time optimization
|
|
surfaceData.materialFeatures = MATERIALFEATUREFLAGS_LIT_STANDARD;
|
|
#ifdef _MATERIAL_FEATURE_SUBSURFACE_SCATTERING
|
|
surfaceData.materialFeatures |= MATERIALFEATUREFLAGS_LIT_SUBSURFACE_SCATTERING;
|
|
#endif
|
|
|
|
#ifdef _MATERIAL_FEATURE_TRANSMISSION
|
|
surfaceData.materialFeatures |= MATERIALFEATUREFLAGS_LIT_TRANSMISSION;
|
|
#endif
|
|
|
|
#ifdef _MATERIAL_FEATURE_COLORED_TRANSMISSION
|
|
surfaceData.materialFeatures |= MATERIALFEATUREFLAGS_LIT_TRANSMISSION;
|
|
surfaceData.materialFeatures |= MATERIALFEATUREFLAGS_LIT_COLORED_TRANSMISSION;
|
|
|
|
#endif
|
|
|
|
#ifdef _MATERIAL_FEATURE_ANISOTROPY
|
|
surfaceData.materialFeatures |= MATERIALFEATUREFLAGS_LIT_ANISOTROPY;
|
|
|
|
// Initialize the normal to something non-zero to avoid a div-zero warning for anisotropy.
|
|
surfaceData.normalWS = float3(0, 1, 0);
|
|
#endif
|
|
|
|
#ifdef _MATERIAL_FEATURE_IRIDESCENCE
|
|
surfaceData.materialFeatures |= MATERIALFEATUREFLAGS_LIT_IRIDESCENCE;
|
|
#endif
|
|
|
|
#ifdef _MATERIAL_FEATURE_SPECULAR_COLOR
|
|
surfaceData.materialFeatures |= MATERIALFEATUREFLAGS_LIT_SPECULAR_COLOR;
|
|
#endif
|
|
|
|
#ifdef _MATERIAL_FEATURE_CLEAR_COAT
|
|
surfaceData.materialFeatures |= MATERIALFEATUREFLAGS_LIT_CLEAR_COAT;
|
|
#endif
|
|
|
|
#if defined (_MATERIAL_FEATURE_SPECULAR_COLOR) && defined (_ENERGY_CONSERVING_SPECULAR)
|
|
// Require to have setup baseColor
|
|
// Reproduce the energy conservation done in legacy Unity. Not ideal but better for compatibility and users can unchek it
|
|
surfaceData.baseColor *= (1.0 - Max3(surfaceData.specularColor.r, surfaceData.specularColor.g, surfaceData.specularColor.b));
|
|
#endif
|
|
|
|
float3 doubleSidedConstants = GetDoubleSidedConstants();
|
|
|
|
ApplyDecalAndGetNormal(fragInputs, posInput, surfaceDescription, surfaceData);
|
|
|
|
surfaceData.geomNormalWS = fragInputs.tangentToWorld[2];
|
|
|
|
surfaceData.tangentWS = normalize(fragInputs.tangentToWorld[0].xyz); // The tangent is not normalize in tangentToWorld for mikkt. TODO: Check if it expected that we normalize with Morten. Tag: SURFACE_GRADIENT
|
|
|
|
|
|
bentNormalWS = surfaceData.normalWS;
|
|
|
|
surfaceData.tangentWS = Orthonormalize(surfaceData.tangentWS, surfaceData.normalWS);
|
|
|
|
#ifdef DEBUG_DISPLAY
|
|
#if !defined(SHADER_STAGE_RAY_TRACING)
|
|
// Mipmap mode debugging isn't supported with ray tracing as it relies on derivatives
|
|
if (_DebugMipMapMode != DEBUGMIPMAPMODE_NONE)
|
|
{
|
|
#ifdef FRAG_INPUTS_USE_TEXCOORD0
|
|
surfaceData.baseColor = GET_TEXTURE_STREAMING_DEBUG(posInput.positionSS, fragInputs.texCoord0);
|
|
#else
|
|
surfaceData.baseColor = GET_TEXTURE_STREAMING_DEBUG_NO_UV(posInput.positionSS);
|
|
#endif
|
|
surfaceData.metallic = 0;
|
|
}
|
|
#endif
|
|
|
|
// We need to call ApplyDebugToSurfaceData after filling the surfaceData and before filling builtinData
|
|
// as it can modify attribute use for static lighting
|
|
ApplyDebugToSurfaceData(fragInputs.tangentToWorld, surfaceData);
|
|
#endif
|
|
|
|
// By default we use the ambient occlusion with Tri-ace trick (apply outside) for specular occlusion.
|
|
// If user provide bent normal then we process a better term
|
|
#if defined(_SPECULAR_OCCLUSION_CUSTOM)
|
|
// Just use the value passed through via the slot (not active otherwise)
|
|
#elif defined(_SPECULAR_OCCLUSION_FROM_AO_BENT_NORMAL)
|
|
// If we have bent normal and ambient occlusion, process a specular occlusion
|
|
surfaceData.specularOcclusion = GetSpecularOcclusionFromBentAO(V, bentNormalWS, surfaceData.normalWS, surfaceData.ambientOcclusion, PerceptualSmoothnessToPerceptualRoughness(surfaceData.perceptualSmoothness));
|
|
#elif defined(_AMBIENT_OCCLUSION) && defined(_SPECULAR_OCCLUSION_FROM_AO)
|
|
surfaceData.specularOcclusion = GetSpecularOcclusionFromAmbientOcclusion(ClampNdotV(dot(surfaceData.normalWS, V)), surfaceData.ambientOcclusion, PerceptualSmoothnessToRoughness(surfaceData.perceptualSmoothness));
|
|
#endif
|
|
|
|
#if defined(_ENABLE_GEOMETRIC_SPECULAR_AA) && !defined(SHADER_STAGE_RAY_TRACING)
|
|
surfaceData.perceptualSmoothness = GeometricNormalFiltering(surfaceData.perceptualSmoothness, fragInputs.tangentToWorld[2], surfaceDescription.SpecularAAScreenSpaceVariance, surfaceDescription.SpecularAAThreshold);
|
|
#endif
|
|
}
|
|
|
|
// --------------------------------------------------
|
|
// Get Surface And BuiltinData
|
|
|
|
void GetSurfaceAndBuiltinData(FragInputs fragInputs, float3 V, inout PositionInputs posInput, out SurfaceData surfaceData, out BuiltinData builtinData RAY_TRACING_OPTIONAL_PARAMETERS)
|
|
{
|
|
// Don't dither if displaced tessellation (we're fading out the displacement instead to match the next LOD)
|
|
#if !defined(SHADER_STAGE_RAY_TRACING) && !defined(_TESSELLATION_DISPLACEMENT)
|
|
#ifdef LOD_FADE_CROSSFADE // enable dithering LOD transition if user select CrossFade transition in LOD group
|
|
LODDitheringTransition(ComputeFadeMaskSeed(V, posInput.positionSS), unity_LODFade.x);
|
|
#endif
|
|
#endif
|
|
|
|
#ifndef SHADER_UNLIT
|
|
#ifdef _DOUBLESIDED_ON
|
|
float3 doubleSidedConstants = _DoubleSidedConstants.xyz;
|
|
#else
|
|
float3 doubleSidedConstants = float3(1.0, 1.0, 1.0);
|
|
#endif
|
|
|
|
ApplyDoubleSidedFlipOrMirror(fragInputs, doubleSidedConstants); // Apply double sided flip on the vertex normal
|
|
#endif // SHADER_UNLIT
|
|
|
|
SurfaceDescriptionInputs surfaceDescriptionInputs = FragInputsToSurfaceDescriptionInputs(fragInputs, V);
|
|
|
|
#if defined(HAVE_VFX_MODIFICATION)
|
|
GraphProperties properties;
|
|
ZERO_INITIALIZE(GraphProperties, properties);
|
|
|
|
GetElementPixelProperties(fragInputs, properties);
|
|
|
|
SurfaceDescription surfaceDescription = SurfaceDescriptionFunction(surfaceDescriptionInputs, properties);
|
|
#else
|
|
SurfaceDescription surfaceDescription = SurfaceDescriptionFunction(surfaceDescriptionInputs);
|
|
#endif
|
|
|
|
#ifdef DEBUG_DISPLAY
|
|
if (_DebugMipMapMode != DEBUGMIPMAPMODE_NONE)
|
|
{
|
|
surfaceDescription.Alpha = 1.0f;
|
|
}
|
|
#endif
|
|
|
|
// Perform alpha test very early to save performance (a killed pixel will not sample textures)
|
|
// TODO: split graph evaluation to grab just alpha dependencies first? tricky..
|
|
#ifdef _ALPHATEST_ON
|
|
float alphaCutoff = surfaceDescription.AlphaClipThreshold;
|
|
#if SHADERPASS == SHADERPASS_TRANSPARENT_DEPTH_PREPASS
|
|
// The TransparentDepthPrepass is also used with SSR transparent.
|
|
// If an artists enable transaprent SSR but not the TransparentDepthPrepass itself, then we use AlphaClipThreshold
|
|
// otherwise if TransparentDepthPrepass is enabled we use AlphaClipThresholdDepthPrepass
|
|
#elif SHADERPASS == SHADERPASS_TRANSPARENT_DEPTH_POSTPASS
|
|
// DepthPostpass always use its own alpha threshold
|
|
alphaCutoff = surfaceDescription.AlphaClipThresholdDepthPostpass;
|
|
#elif (SHADERPASS == SHADERPASS_SHADOWS) || (SHADERPASS == SHADERPASS_RAYTRACING_VISIBILITY)
|
|
// If use shadow threshold isn't enable we don't allow any test
|
|
#endif
|
|
|
|
GENERIC_ALPHA_TEST(surfaceDescription.Alpha, alphaCutoff);
|
|
#endif
|
|
|
|
#if !defined(SHADER_STAGE_RAY_TRACING) && _DEPTHOFFSET_ON
|
|
ApplyDepthOffsetPositionInput(V, surfaceDescription.DepthOffset, GetViewForwardDir(), GetWorldToHClipMatrix(), posInput);
|
|
#endif
|
|
|
|
#ifndef SHADER_UNLIT
|
|
float3 bentNormalWS;
|
|
BuildSurfaceData(fragInputs, surfaceDescription, V, posInput, surfaceData, bentNormalWS);
|
|
|
|
#ifdef FRAG_INPUTS_USE_TEXCOORD1
|
|
float4 lightmapTexCoord1 = fragInputs.texCoord1;
|
|
#else
|
|
float4 lightmapTexCoord1 = float4(0,0,0,0);
|
|
#endif
|
|
|
|
#ifdef FRAG_INPUTS_USE_TEXCOORD2
|
|
float4 lightmapTexCoord2 = fragInputs.texCoord2;
|
|
#else
|
|
float4 lightmapTexCoord2 = float4(0,0,0,0);
|
|
#endif
|
|
|
|
float alpha = 1.0;
|
|
alpha = surfaceDescription.Alpha;
|
|
|
|
// Builtin Data
|
|
// For back lighting we use the oposite vertex normal
|
|
InitBuiltinData(posInput, alpha, bentNormalWS, -fragInputs.tangentToWorld[2], lightmapTexCoord1, lightmapTexCoord2, builtinData);
|
|
|
|
#else
|
|
BuildSurfaceData(fragInputs, surfaceDescription, V, posInput, surfaceData);
|
|
|
|
ZERO_BUILTIN_INITIALIZE(builtinData); // No call to InitBuiltinData as we don't have any lighting
|
|
builtinData.opacity = surfaceDescription.Alpha;
|
|
|
|
#if defined(DEBUG_DISPLAY)
|
|
// Light Layers are currently not used for the Unlit shader (because it is not lit)
|
|
// But Unlit objects do cast shadows according to their rendering layer mask, which is what we want to
|
|
// display in the light layers visualization mode, therefore we need the renderingLayers
|
|
builtinData.renderingLayers = GetMeshRenderingLayerMask();
|
|
#endif
|
|
|
|
#endif // SHADER_UNLIT
|
|
|
|
#ifdef _ALPHATEST_ON
|
|
// Used for sharpening by alpha to mask - Alpha to covertage is only used with depth only and forward pass (no shadow pass, no transparent pass)
|
|
builtinData.alphaClipTreshold = alphaCutoff;
|
|
#endif
|
|
|
|
// override sampleBakedGI - not used by Unlit
|
|
// When overriding GI, we need to force the isLightmap flag to make sure we don't add APV (sampled in the lightloop) on top of the overridden value (set at GBuffer stage)
|
|
|
|
builtinData.emissiveColor = surfaceDescription.Emission;
|
|
|
|
// Note this will not fully work on transparent surfaces (can check with _SURFACE_TYPE_TRANSPARENT define)
|
|
// We will always overwrite vt feeback with the nearest. So behind transparent surfaces vt will not be resolved
|
|
// This is a limitation of the current MRT approach.
|
|
#ifdef UNITY_VIRTUAL_TEXTURING
|
|
#endif
|
|
|
|
#if _DEPTHOFFSET_ON
|
|
builtinData.depthOffset = surfaceDescription.DepthOffset;
|
|
#endif
|
|
|
|
// TODO: We should generate distortion / distortionBlur for non distortion pass
|
|
#if (SHADERPASS == SHADERPASS_DISTORTION)
|
|
builtinData.distortion = surfaceDescription.Distortion;
|
|
builtinData.distortionBlur = surfaceDescription.DistortionBlur;
|
|
#endif
|
|
|
|
#ifndef SHADER_UNLIT
|
|
// PostInitBuiltinData call ApplyDebugToBuiltinData
|
|
PostInitBuiltinData(V, posInput, surfaceData, builtinData);
|
|
#else
|
|
ApplyDebugToBuiltinData(builtinData);
|
|
#endif
|
|
|
|
RAY_TRACING_OPTIONAL_ALPHA_TEST_PASS
|
|
}
|
|
|
|
// --------------------------------------------------
|
|
// Main
|
|
|
|
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/RenderPipeline/ShaderPass/ShaderPassRaytracingVisibility.hlsl"
|
|
|
|
// --------------------------------------------------
|
|
// Visual Effect Vertex Invocations
|
|
|
|
#ifdef HAVE_VFX_MODIFICATION
|
|
#if !defined(SHADER_STAGE_RAY_TRACING)
|
|
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/ShaderLibrary/VisualEffectVertex.hlsl"
|
|
#else
|
|
#endif
|
|
#endif
|
|
|
|
ENDHLSL
|
|
}
|
|
Pass
|
|
{
|
|
Name "ForwardDXR"
|
|
Tags
|
|
{
|
|
"LightMode" = "ForwardDXR"
|
|
}
|
|
|
|
// Render State
|
|
// RenderState: <None>
|
|
|
|
// Debug
|
|
// <None>
|
|
|
|
// --------------------------------------------------
|
|
// Pass
|
|
|
|
HLSLPROGRAM
|
|
|
|
// Pragmas
|
|
#pragma target 5.0
|
|
#pragma raytracing surface_shader
|
|
#pragma only_renderers d3d11 xboxseries ps5
|
|
|
|
// Keywords
|
|
#pragma shader_feature _ _SURFACE_TYPE_TRANSPARENT
|
|
#pragma shader_feature_local _ _DOUBLESIDED_ON
|
|
#pragma shader_feature_local _ _ADD_PRECOMPUTED_VELOCITY
|
|
#pragma shader_feature_local _ _TRANSPARENT_WRITES_MOTION_VEC _TRANSPARENT_REFRACTIVE_SORT
|
|
#pragma shader_feature_local_fragment _ _ENABLE_FOG_ON_TRANSPARENT
|
|
#pragma multi_compile _ DEBUG_DISPLAY
|
|
#pragma shader_feature_local_fragment _ _DISABLE_DECALS
|
|
#pragma shader_feature_local_raytracing _ _DISABLE_DECALS
|
|
#pragma shader_feature_local_fragment _ _DISABLE_SSR
|
|
#pragma shader_feature_local_raytracing _ _DISABLE_SSR
|
|
#pragma shader_feature_local_fragment _ _DISABLE_SSR_TRANSPARENT
|
|
#pragma shader_feature_local_raytracing _ _DISABLE_SSR_TRANSPARENT
|
|
#pragma multi_compile _ LIGHTMAP_ON
|
|
#pragma multi_compile _ DIRLIGHTMAP_COMBINED
|
|
#pragma multi_compile_fragment _ PROBE_VOLUMES_L1 PROBE_VOLUMES_L2
|
|
#pragma multi_compile_raytracing _ PROBE_VOLUMES_L1 PROBE_VOLUMES_L2
|
|
#pragma multi_compile _ DYNAMICLIGHTMAP_ON
|
|
#pragma shader_feature_local _ _REFRACTION_PLANE _REFRACTION_SPHERE _REFRACTION_THIN
|
|
#pragma shader_feature_local_fragment _MATERIAL_FEATURE_SUBSURFACE_SCATTERING
|
|
#pragma shader_feature_local_raytracing _MATERIAL_FEATURE_SUBSURFACE_SCATTERING
|
|
#pragma shader_feature_local_fragment _MATERIAL_FEATURE_TRANSMISSION
|
|
#pragma shader_feature_local_raytracing _MATERIAL_FEATURE_TRANSMISSION
|
|
#pragma shader_feature_local_fragment _MATERIAL_FEATURE_ANISOTROPY
|
|
#pragma shader_feature_local_raytracing _MATERIAL_FEATURE_ANISOTROPY
|
|
#pragma shader_feature_local_fragment _MATERIAL_FEATURE_IRIDESCENCE
|
|
#pragma shader_feature_local_raytracing _MATERIAL_FEATURE_IRIDESCENCE
|
|
#pragma shader_feature_local_fragment _MATERIAL_FEATURE_SPECULAR_COLOR
|
|
#pragma shader_feature_local_raytracing _MATERIAL_FEATURE_SPECULAR_COLOR
|
|
#pragma shader_feature_local_fragment _MATERIAL_FEATURE_COLORED_TRANSMISSION
|
|
#pragma shader_feature_local_raytracing _MATERIAL_FEATURE_COLORED_TRANSMISSION
|
|
// GraphKeywords: <None>
|
|
|
|
// Defines
|
|
#define SHADERPASS SHADERPASS_RAYTRACING_FORWARD
|
|
#define PUNCTUAL_SHADOW_LOW
|
|
#define DIRECTIONAL_SHADOW_LOW
|
|
#define RAYTRACING_SHADER_GRAPH_RAYTRACED
|
|
#define HAS_LIGHTLOOP 1
|
|
#define SUPPORT_GLOBAL_MIP_BIAS 1
|
|
#define SUPPORT_GLOBAL_MIP_BIAS 1
|
|
#define SUPPORT_GLOBAL_MIP_BIAS 1
|
|
#define SUPPORT_GLOBAL_MIP_BIAS 1
|
|
#define SUPPORT_GLOBAL_MIP_BIAS 1
|
|
#define SUPPORT_GLOBAL_MIP_BIAS 1
|
|
#define SUPPORT_GLOBAL_MIP_BIAS 1
|
|
#define SUPPORT_GLOBAL_MIP_BIAS 1
|
|
#define SUPPORT_GLOBAL_MIP_BIAS 1
|
|
|
|
// For custom interpolators to inject a substruct definition before FragInputs definition,
|
|
// allowing for FragInputs to capture CI's intended for ShaderGraph's SDI.
|
|
/* WARNING: $splice Could not find named fragment 'CustomInterpolatorPreInclude' */
|
|
|
|
|
|
// TODO: Merge FragInputsVFX substruct with CustomInterpolators.
|
|
#ifdef HAVE_VFX_MODIFICATION
|
|
struct FragInputsVFX
|
|
{
|
|
/* WARNING: $splice Could not find named fragment 'FragInputsVFX' */
|
|
};
|
|
#endif
|
|
|
|
#include "Packages/com.unity.render-pipelines.core/ShaderLibrary/Common.hlsl"
|
|
#include "Packages/com.unity.render-pipelines.core/ShaderLibrary/GeometricTools.hlsl" // Required by Tessellation.hlsl
|
|
#include "Packages/com.unity.render-pipelines.core/ShaderLibrary/Tessellation.hlsl"
|
|
#include "Packages/com.unity.render-pipelines.core/ShaderLibrary/Texture.hlsl"
|
|
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/ShaderLibrary/ShaderVariables.hlsl"
|
|
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/RenderPipeline/ShaderPass/ShaderPass.cs.hlsl"
|
|
#include "Packages/com.unity.render-pipelines.core/ShaderLibrary/TextureStack.hlsl" // Required to be include before we include properties as it define DECLARE_STACK_CB
|
|
#include "Packages/com.unity.render-pipelines.core/ShaderLibrary/DebugMipmapStreamingMacros.hlsl" // Required before including properties as it defines UNITY_TEXTURE_STREAMING_DEBUG_VARS
|
|
// Always include Shader Graph version
|
|
// Always include last to avoid double macros
|
|
#include "Packages/com.unity.shadergraph/ShaderGraphLibrary/Functions.hlsl" // Need to be here for Gradient struct definition
|
|
|
|
// --------------------------------------------------
|
|
// Defines
|
|
|
|
// Attribute
|
|
#define ATTRIBUTES_NEED_NORMAL
|
|
#define ATTRIBUTES_NEED_TANGENT
|
|
#define ATTRIBUTES_NEED_TEXCOORD0
|
|
#define ATTRIBUTES_NEED_TEXCOORD1
|
|
#define ATTRIBUTES_NEED_TEXCOORD2
|
|
#define ATTRIBUTES_NEED_COLOR
|
|
#define VARYINGS_NEED_POSITION_WS
|
|
#define VARYINGS_NEED_TANGENT_TO_WORLD
|
|
#define VARYINGS_NEED_TEXCOORD0
|
|
#define VARYINGS_NEED_TEXCOORD1
|
|
#define VARYINGS_NEED_TEXCOORD2
|
|
#define VARYINGS_NEED_COLOR
|
|
|
|
|
|
//Strip down the FragInputs.hlsl (on graphics), so we can only optimize the interpolators we use.
|
|
//if by accident something requests contents of FragInputs.hlsl, it will be caught as a compiler error
|
|
//Frag inputs stripping is only enabled when FRAG_INPUTS_ENABLE_STRIPPING is set
|
|
#if !defined(SHADER_STAGE_RAY_TRACING) && SHADERPASS != SHADERPASS_RAYTRACING_GBUFFER && SHADERPASS != SHADERPASS_FULL_SCREEN_DEBUG
|
|
#define FRAG_INPUTS_ENABLE_STRIPPING
|
|
#endif
|
|
#define FRAG_INPUTS_USE_TEXCOORD0
|
|
#define FRAG_INPUTS_USE_TEXCOORD1
|
|
#define FRAG_INPUTS_USE_TEXCOORD2
|
|
|
|
|
|
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/RenderPipeline/ShaderPass/FragInputs.hlsl"
|
|
|
|
|
|
|
|
|
|
// Following two define are a workaround introduce in 10.1.x for RaytracingQualityNode
|
|
// The ShaderGraph don't support correctly migration of this node as it serialize all the node data
|
|
// in the json file making it impossible to uprgrade. Until we get a fix, we do a workaround here
|
|
// to still allow us to rename the field and keyword of this node without breaking existing code.
|
|
#ifdef RAYTRACING_SHADER_GRAPH_DEFAULT
|
|
#define RAYTRACING_SHADER_GRAPH_HIGH
|
|
#endif
|
|
|
|
#ifdef RAYTRACING_SHADER_GRAPH_RAYTRACED
|
|
#define RAYTRACING_SHADER_GRAPH_LOW
|
|
#endif
|
|
// end
|
|
|
|
#ifndef SHADER_UNLIT
|
|
// We need isFrontFace when using double sided - it is not required for unlit as in case of unlit double sided only drive the cullmode
|
|
// VARYINGS_NEED_CULLFACE can be define by VaryingsMeshToPS.FaceSign input if a IsFrontFace Node is included in the shader graph.
|
|
#if defined(_DOUBLESIDED_ON) && !defined(VARYINGS_NEED_CULLFACE)
|
|
#define VARYINGS_NEED_CULLFACE
|
|
#endif
|
|
#endif
|
|
|
|
// Specific Material Define
|
|
#define _AMBIENT_OCCLUSION 1
|
|
#define _SPECULAR_OCCLUSION_FROM_AO 1
|
|
#define _ENERGY_CONSERVING_SPECULAR 1
|
|
|
|
#if _MATERIAL_FEATURE_COLORED_TRANSMISSION
|
|
// Colored Transmission doesn't support clear coat
|
|
#undef _MATERIAL_FEATURE_CLEAR_COAT
|
|
#endif
|
|
|
|
// If we use subsurface scattering, enable output split lighting (for forward pass)
|
|
#if defined(_MATERIAL_FEATURE_SUBSURFACE_SCATTERING) && !defined(_SURFACE_TYPE_TRANSPARENT)
|
|
#define OUTPUT_SPLIT_LIGHTING
|
|
#endif
|
|
|
|
// This shader support recursive rendering for raytracing
|
|
#define HAVE_RECURSIVE_RENDERING
|
|
|
|
// In Path Tracing, For all single-sided, refractive materials, we want to force a thin refraction model
|
|
#if (SHADERPASS == SHADERPASS_PATH_TRACING) && !defined(_DOUBLESIDED_ON) && (defined(_REFRACTION_PLANE) || defined(_REFRACTION_SPHERE))
|
|
#undef _REFRACTION_PLANE
|
|
#undef _REFRACTION_SPHERE
|
|
#define _REFRACTION_THIN
|
|
#endif
|
|
// Caution: we can use the define SHADER_UNLIT onlit after the above Material include as it is the Unlit template who define it
|
|
|
|
// To handle SSR on transparent correctly with a possibility to enable/disable it per framesettings
|
|
// we should have a code like this:
|
|
// if !defined(_DISABLE_SSR_TRANSPARENT)
|
|
// pragma multi_compile _ WRITE_NORMAL_BUFFER
|
|
// endif
|
|
// i.e we enable the multicompile only if we can receive SSR or not, and then C# code drive
|
|
// it based on if SSR transparent in frame settings and not (and stripper can strip it).
|
|
// this is currently not possible with our current preprocessor as _DISABLE_SSR_TRANSPARENT is a keyword not a define
|
|
// so instead we used this and chose to pay the extra cost of normal write even if SSR transaprent is disabled.
|
|
// Ideally the shader graph generator should handle it but condition below can't be handle correctly for now.
|
|
#if SHADERPASS == SHADERPASS_TRANSPARENT_DEPTH_PREPASS
|
|
#if !defined(_DISABLE_SSR_TRANSPARENT) && !defined(SHADER_UNLIT)
|
|
#define WRITE_NORMAL_BUFFER
|
|
#endif
|
|
#endif
|
|
|
|
// See Lit.shader
|
|
#if SHADERPASS == SHADERPASS_MOTION_VECTORS && defined(WRITE_DECAL_BUFFER_AND_RENDERING_LAYER)
|
|
#define WRITE_DECAL_BUFFER
|
|
#endif
|
|
|
|
#ifndef DEBUG_DISPLAY
|
|
// In case of opaque we don't want to perform the alpha test, it is done in depth prepass and we use depth equal for ztest (setup from UI)
|
|
// Don't do it with debug display mode as it is possible there is no depth prepass in this case
|
|
#if !defined(_SURFACE_TYPE_TRANSPARENT)
|
|
#if SHADERPASS == SHADERPASS_FORWARD
|
|
#define SHADERPASS_FORWARD_BYPASS_ALPHA_TEST
|
|
#elif SHADERPASS == SHADERPASS_GBUFFER
|
|
#define SHADERPASS_GBUFFER_BYPASS_ALPHA_TEST
|
|
#endif
|
|
#endif
|
|
#endif
|
|
|
|
// Define _DEFERRED_CAPABLE_MATERIAL for shader capable to run in deferred pass
|
|
#if defined(SHADER_LIT) && !defined(_SURFACE_TYPE_TRANSPARENT)
|
|
#define _DEFERRED_CAPABLE_MATERIAL
|
|
#endif
|
|
|
|
// Translate transparent motion vector define
|
|
#if (defined(_TRANSPARENT_WRITES_MOTION_VEC) || defined(_TRANSPARENT_REFRACTIVE_SORT)) && defined(_SURFACE_TYPE_TRANSPARENT)
|
|
#define _WRITE_TRANSPARENT_MOTION_VECTOR
|
|
#endif
|
|
|
|
// -- Graph Properties
|
|
CBUFFER_START(UnityPerMaterial)
|
|
float4 _BaseColor;
|
|
float4 _BaseColorMap_TexelSize;
|
|
float4 _BaseTilingOffset;
|
|
float _BaseTriplanarThreshold;
|
|
float4 _BaseNormalMap_TexelSize;
|
|
float _BaseNormalScale;
|
|
float4 _BaseMaskMap_TexelSize;
|
|
float _BaseMetallic;
|
|
float _BaseAORemapMin;
|
|
float _BaseAORemapMax;
|
|
float _BaseSmoothnessRemapMin;
|
|
float _BaseSmoothnessRemapMax;
|
|
float _USEDYNAMICCOVERTSTATICMASKF;
|
|
float4 _CoverMaskA_TexelSize;
|
|
float _CoverMaskPower;
|
|
float _Cover_Amount;
|
|
float _Cover_Amount_Grow_Speed;
|
|
float3 _CoverDirection;
|
|
float _Cover_Max_Angle;
|
|
float _Cover_Min_Height;
|
|
float _Cover_Min_Height_Blending;
|
|
float4 _CoverBaseColor;
|
|
float4 _CoverBaseColorMap_TexelSize;
|
|
float4 _CoverTilingOffset;
|
|
float _CoverTriplanarThreshold;
|
|
float4 _CoverNormalMap_TexelSize;
|
|
float _CoverNormalScale;
|
|
float _CoverNormalBlendHardness;
|
|
float _CoverHeightMapMin;
|
|
float _CoverHeightMapMax;
|
|
float _CoverHeightMapOffset;
|
|
float _CoverHardness;
|
|
float4 _CoverMaskMap_TexelSize;
|
|
float _CoverMetallic;
|
|
float _CoverAORemapMin;
|
|
float _CoverAORemapMax;
|
|
float _CoverSmoothnessRemapMin;
|
|
float _CoverSmoothnessRemapMax;
|
|
float4 _ShapeNormalMap_TexelSize;
|
|
float _shapeNormalScale;
|
|
float _CovershapeNormalScale;
|
|
float4 _ShapeAO_TexelSize;
|
|
float _ShapeAORemapMin;
|
|
float _ShapeAORemapMax;
|
|
float _CoverShapeAORemapMin;
|
|
float _CoverShapeAORemapMax;
|
|
float4 _DetailMap_TexelSize;
|
|
float4 _DetailTilingOffset;
|
|
float _DetailAlbedoScale;
|
|
float _DetailNormalScale;
|
|
float _DetailSmoothnessScale;
|
|
float _DetailCoverAlbedoScale;
|
|
float _DetailCoverNormalScale;
|
|
float _DetailCoverSmoothnessScale;
|
|
float _CoverMaskRCurvature;
|
|
float _BaseBrightnessCurvMultply;
|
|
float _BaseBrightnessCurvPower;
|
|
float _BaseDarknessCurvMultply;
|
|
float _BaseDarknessCurvPower;
|
|
float _CoverBrightnessCurvMultply;
|
|
float _CoverBrightnessCurvPower;
|
|
float _CoverDarknessCurvMultply;
|
|
float _CoverDarknessCurvPower;
|
|
float4 _WetColor;
|
|
float _WetSmoothness;
|
|
float4 _EmissionColor;
|
|
float _UseShadowThreshold;
|
|
float4 _DoubleSidedConstants;
|
|
UNITY_TEXTURE_STREAMING_DEBUG_VARS;
|
|
float _BlendMode;
|
|
float _EnableBlendModePreserveSpecularLighting;
|
|
float _RayTracing;
|
|
float _RefractionModel;
|
|
float _MaterialID;
|
|
float _MaterialTypeMask;
|
|
CBUFFER_END
|
|
|
|
|
|
// Object and Global properties
|
|
SAMPLER(SamplerState_Linear_Repeat);
|
|
SAMPLER(SamplerState_Linear_Repeat_Aniso8);
|
|
TEXTURE2D(_BaseColorMap);
|
|
SAMPLER(sampler_BaseColorMap);
|
|
TEXTURE2D(_BaseNormalMap);
|
|
SAMPLER(sampler_BaseNormalMap);
|
|
TEXTURE2D(_BaseMaskMap);
|
|
SAMPLER(sampler_BaseMaskMap);
|
|
TEXTURE2D(_CoverMaskA);
|
|
SAMPLER(sampler_CoverMaskA);
|
|
TEXTURE2D(_CoverBaseColorMap);
|
|
SAMPLER(sampler_CoverBaseColorMap);
|
|
TEXTURE2D(_CoverNormalMap);
|
|
SAMPLER(sampler_CoverNormalMap);
|
|
TEXTURE2D(_CoverMaskMap);
|
|
SAMPLER(sampler_CoverMaskMap);
|
|
TEXTURE2D(_ShapeNormalMap);
|
|
SAMPLER(sampler_ShapeNormalMap);
|
|
TEXTURE2D(_ShapeAO);
|
|
SAMPLER(sampler_ShapeAO);
|
|
TEXTURE2D(_DetailMap);
|
|
SAMPLER(sampler_DetailMap);
|
|
|
|
// -- Property used by ScenePickingPass
|
|
#ifdef SCENEPICKINGPASS
|
|
float4 _SelectionID;
|
|
#endif
|
|
|
|
// -- Properties used by SceneSelectionPass
|
|
#ifdef SCENESELECTIONPASS
|
|
int _ObjectId;
|
|
int _PassValue;
|
|
#endif
|
|
|
|
// Includes
|
|
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/RenderPipeline/Raytracing/Shaders/RaytracingMacros.hlsl"
|
|
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/RenderPipeline/Raytracing/Shaders/ShaderVariablesRaytracing.hlsl"
|
|
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/Material/Material.hlsl"
|
|
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/RenderPipeline/Raytracing/Shaders/ShaderVariablesRaytracingLightLoop.hlsl"
|
|
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/RenderPipeline/Raytracing/Shaders/RaytracingIntersection.hlsl"
|
|
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/Lighting/Lighting.hlsl"
|
|
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/Lighting/LightLoop/LightLoopDef.hlsl"
|
|
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/Material/Decal/DecalUtilities.hlsl"
|
|
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/Material/Lit/Lit.hlsl"
|
|
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/Material/Lit/LitRayTracing.hlsl"
|
|
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/Material/BuiltinUtilities.hlsl"
|
|
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/Material/MaterialUtilities.hlsl"
|
|
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/RenderPipeline/Raytracing/Shaders/RaytracingLightLoop.hlsl"
|
|
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/RenderPipeline/Raytracing/Shaders/RayTracingCommon.hlsl"
|
|
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/ShaderLibrary/ShaderGraphFunctions.hlsl"
|
|
// GraphIncludes: <None>
|
|
|
|
// --------------------------------------------------
|
|
// Structs and Packing
|
|
|
|
struct SurfaceDescriptionInputs
|
|
{
|
|
float3 WorldSpaceNormal;
|
|
float3 TangentSpaceNormal;
|
|
float3 WorldSpaceTangent;
|
|
float3 WorldSpaceBiTangent;
|
|
float3 AbsoluteWorldSpacePosition;
|
|
float4 uv0;
|
|
float4 VertexColor;
|
|
};
|
|
|
|
//Interpolator Packs: <None>
|
|
|
|
// --------------------------------------------------
|
|
// Graph
|
|
|
|
|
|
// Graph Functions
|
|
|
|
void Unity_Divide_float4(float4 A, float4 B, out float4 Out)
|
|
{
|
|
Out = A / B;
|
|
}
|
|
|
|
void Unity_Combine_float(float R, float G, float B, float A, out float4 RGBA, out float3 RGB, out float2 RG)
|
|
{
|
|
RGBA = float4(R, G, B, A);
|
|
RGB = float3(R, G, B);
|
|
RG = float2(R, G);
|
|
}
|
|
|
|
void Unity_Multiply_float4_float4(float4 A, float4 B, out float4 Out)
|
|
{
|
|
Out = A * B;
|
|
}
|
|
|
|
void Unity_Sign_float3(float3 In, out float3 Out)
|
|
{
|
|
Out = sign(In);
|
|
}
|
|
|
|
void Unity_Multiply_float2_float2(float2 A, float2 B, out float2 Out)
|
|
{
|
|
Out = A * B;
|
|
}
|
|
|
|
void Unity_Absolute_float3(float3 In, out float3 Out)
|
|
{
|
|
Out = abs(In);
|
|
}
|
|
|
|
void Unity_Power_float3(float3 A, float3 B, out float3 Out)
|
|
{
|
|
Out = pow(A, B);
|
|
}
|
|
|
|
void Unity_Multiply_float3_float3(float3 A, float3 B, out float3 Out)
|
|
{
|
|
Out = A * B;
|
|
}
|
|
|
|
void Unity_Multiply_float_float(float A, float B, out float Out)
|
|
{
|
|
Out = A * B;
|
|
}
|
|
|
|
void Unity_Add_float4(float4 A, float4 B, out float4 Out)
|
|
{
|
|
Out = A + B;
|
|
}
|
|
|
|
void Unity_Add_float(float A, float B, out float Out)
|
|
{
|
|
Out = A + B;
|
|
}
|
|
|
|
struct Bindings_TriplanarNM_bc609ed95f52591469ab35dbfe0efcea_float
|
|
{
|
|
float3 WorldSpaceNormal;
|
|
float3 AbsoluteWorldSpacePosition;
|
|
};
|
|
|
|
void SG_TriplanarNM_bc609ed95f52591469ab35dbfe0efcea_float(UnityTexture2D Texture2D_80A3D28F, float Vector1_41461AC9, float Vector1_E4D1C13A, UnitySamplerState _SamplerState, Bindings_TriplanarNM_bc609ed95f52591469ab35dbfe0efcea_float IN, out float4 XYZ_1, out float4 XZ_2, out float4 YZ_3, out float4 XY_4)
|
|
{
|
|
UnityTexture2D _Property_3e01b4d2fc68d48ba3acbba9d5881e59_Out_0_Texture2D = Texture2D_80A3D28F;
|
|
float _Split_89ed63cb625cb3878c183d0b71c03400_R_1_Float = IN.AbsoluteWorldSpacePosition[0];
|
|
float _Split_89ed63cb625cb3878c183d0b71c03400_G_2_Float = IN.AbsoluteWorldSpacePosition[1];
|
|
float _Split_89ed63cb625cb3878c183d0b71c03400_B_3_Float = IN.AbsoluteWorldSpacePosition[2];
|
|
float _Split_89ed63cb625cb3878c183d0b71c03400_A_4_Float = 0;
|
|
float4 _Combine_cf2d04ff119ad88493f6460431765cbb_RGBA_4_Vector4;
|
|
float3 _Combine_cf2d04ff119ad88493f6460431765cbb_RGB_5_Vector3;
|
|
float2 _Combine_cf2d04ff119ad88493f6460431765cbb_RG_6_Vector2;
|
|
Unity_Combine_float(_Split_89ed63cb625cb3878c183d0b71c03400_R_1_Float, _Split_89ed63cb625cb3878c183d0b71c03400_B_3_Float, float(0), float(0), _Combine_cf2d04ff119ad88493f6460431765cbb_RGBA_4_Vector4, _Combine_cf2d04ff119ad88493f6460431765cbb_RGB_5_Vector3, _Combine_cf2d04ff119ad88493f6460431765cbb_RG_6_Vector2);
|
|
float _Property_47988ec10c0c18879d461e00bed806e7_Out_0_Float = Vector1_41461AC9;
|
|
float4 _Multiply_14cec4902d0a00829e4555071a1b8ad1_Out_2_Vector4;
|
|
Unity_Multiply_float4_float4(_Combine_cf2d04ff119ad88493f6460431765cbb_RGBA_4_Vector4, (_Property_47988ec10c0c18879d461e00bed806e7_Out_0_Float.xxxx), _Multiply_14cec4902d0a00829e4555071a1b8ad1_Out_2_Vector4);
|
|
float3 _Sign_b826e0ff2d95ec8cb2b2cbbd7ea2eab6_Out_1_Vector3;
|
|
Unity_Sign_float3(IN.WorldSpaceNormal, _Sign_b826e0ff2d95ec8cb2b2cbbd7ea2eab6_Out_1_Vector3);
|
|
float _Split_742547a7039de986a646d04c157ae549_R_1_Float = _Sign_b826e0ff2d95ec8cb2b2cbbd7ea2eab6_Out_1_Vector3[0];
|
|
float _Split_742547a7039de986a646d04c157ae549_G_2_Float = _Sign_b826e0ff2d95ec8cb2b2cbbd7ea2eab6_Out_1_Vector3[1];
|
|
float _Split_742547a7039de986a646d04c157ae549_B_3_Float = _Sign_b826e0ff2d95ec8cb2b2cbbd7ea2eab6_Out_1_Vector3[2];
|
|
float _Split_742547a7039de986a646d04c157ae549_A_4_Float = 0;
|
|
float2 _Vector2_40a8919e571ec18499de72022c155b38_Out_0_Vector2 = float2(_Split_742547a7039de986a646d04c157ae549_G_2_Float, float(1));
|
|
float2 _Multiply_5fa32af59cdca88389832336b2268bd5_Out_2_Vector2;
|
|
Unity_Multiply_float2_float2((_Multiply_14cec4902d0a00829e4555071a1b8ad1_Out_2_Vector4.xy), _Vector2_40a8919e571ec18499de72022c155b38_Out_0_Vector2, _Multiply_5fa32af59cdca88389832336b2268bd5_Out_2_Vector2);
|
|
UnitySamplerState _Property_544c7fa9dfe54e30a0df9d605340a374_Out_0_SamplerState = _SamplerState;
|
|
float4 _SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_RGBA_0_Vector4 = SAMPLE_TEXTURE2D(_Property_3e01b4d2fc68d48ba3acbba9d5881e59_Out_0_Texture2D.tex, _Property_544c7fa9dfe54e30a0df9d605340a374_Out_0_SamplerState.samplerstate, _Property_3e01b4d2fc68d48ba3acbba9d5881e59_Out_0_Texture2D.GetTransformedUV(_Multiply_5fa32af59cdca88389832336b2268bd5_Out_2_Vector2) );
|
|
float _SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_R_4_Float = _SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_RGBA_0_Vector4.r;
|
|
float _SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_G_5_Float = _SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_RGBA_0_Vector4.g;
|
|
float _SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_B_6_Float = _SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_RGBA_0_Vector4.b;
|
|
float _SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_A_7_Float = _SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_RGBA_0_Vector4.a;
|
|
float3 _Absolute_644b798714827680b39bf5d34f70385f_Out_1_Vector3;
|
|
Unity_Absolute_float3(IN.WorldSpaceNormal, _Absolute_644b798714827680b39bf5d34f70385f_Out_1_Vector3);
|
|
float _Property_adc4c59482221c8aad681c6558728ac9_Out_0_Float = Vector1_E4D1C13A;
|
|
float3 _Power_ee478822a04529849ae8df1636c29fe2_Out_2_Vector3;
|
|
Unity_Power_float3(_Absolute_644b798714827680b39bf5d34f70385f_Out_1_Vector3, (_Property_adc4c59482221c8aad681c6558728ac9_Out_0_Float.xxx), _Power_ee478822a04529849ae8df1636c29fe2_Out_2_Vector3);
|
|
float3 _Multiply_b386a937554d73828e437d126d69608b_Out_2_Vector3;
|
|
Unity_Multiply_float3_float3(_Power_ee478822a04529849ae8df1636c29fe2_Out_2_Vector3, _Power_ee478822a04529849ae8df1636c29fe2_Out_2_Vector3, _Multiply_b386a937554d73828e437d126d69608b_Out_2_Vector3);
|
|
float _Split_ae83014fcbd9f7879a0b91fa66dc9718_R_1_Float = _Multiply_b386a937554d73828e437d126d69608b_Out_2_Vector3[0];
|
|
float _Split_ae83014fcbd9f7879a0b91fa66dc9718_G_2_Float = _Multiply_b386a937554d73828e437d126d69608b_Out_2_Vector3[1];
|
|
float _Split_ae83014fcbd9f7879a0b91fa66dc9718_B_3_Float = _Multiply_b386a937554d73828e437d126d69608b_Out_2_Vector3[2];
|
|
float _Split_ae83014fcbd9f7879a0b91fa66dc9718_A_4_Float = 0;
|
|
float4 _Multiply_2e1040ca9c98d085ace76ee93f094039_Out_2_Vector4;
|
|
Unity_Multiply_float4_float4(_SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_RGBA_0_Vector4, (_Split_ae83014fcbd9f7879a0b91fa66dc9718_G_2_Float.xxxx), _Multiply_2e1040ca9c98d085ace76ee93f094039_Out_2_Vector4);
|
|
float4 _Combine_192c2c4a69be588b90ca005a32e22552_RGBA_4_Vector4;
|
|
float3 _Combine_192c2c4a69be588b90ca005a32e22552_RGB_5_Vector3;
|
|
float2 _Combine_192c2c4a69be588b90ca005a32e22552_RG_6_Vector2;
|
|
Unity_Combine_float(_Split_89ed63cb625cb3878c183d0b71c03400_R_1_Float, _Split_89ed63cb625cb3878c183d0b71c03400_G_2_Float, float(0), float(0), _Combine_192c2c4a69be588b90ca005a32e22552_RGBA_4_Vector4, _Combine_192c2c4a69be588b90ca005a32e22552_RGB_5_Vector3, _Combine_192c2c4a69be588b90ca005a32e22552_RG_6_Vector2);
|
|
float4 _Multiply_138240d0d4846e87b0febabec0d6891b_Out_2_Vector4;
|
|
Unity_Multiply_float4_float4(_Combine_192c2c4a69be588b90ca005a32e22552_RGBA_4_Vector4, (_Property_47988ec10c0c18879d461e00bed806e7_Out_0_Float.xxxx), _Multiply_138240d0d4846e87b0febabec0d6891b_Out_2_Vector4);
|
|
float _Multiply_014402ded5a3988a8c18ba07636ea5a7_Out_2_Float;
|
|
Unity_Multiply_float_float(_Split_742547a7039de986a646d04c157ae549_B_3_Float, -1, _Multiply_014402ded5a3988a8c18ba07636ea5a7_Out_2_Float);
|
|
float2 _Vector2_caa25d55d456a58982bdfc39b1b43f3f_Out_0_Vector2 = float2(_Multiply_014402ded5a3988a8c18ba07636ea5a7_Out_2_Float, float(1));
|
|
float2 _Multiply_a67201b6e1a0a28c98cd9d06e8b09543_Out_2_Vector2;
|
|
Unity_Multiply_float2_float2((_Multiply_138240d0d4846e87b0febabec0d6891b_Out_2_Vector4.xy), _Vector2_caa25d55d456a58982bdfc39b1b43f3f_Out_0_Vector2, _Multiply_a67201b6e1a0a28c98cd9d06e8b09543_Out_2_Vector2);
|
|
float4 _SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_RGBA_0_Vector4 = SAMPLE_TEXTURE2D(_Property_3e01b4d2fc68d48ba3acbba9d5881e59_Out_0_Texture2D.tex, _Property_544c7fa9dfe54e30a0df9d605340a374_Out_0_SamplerState.samplerstate, _Property_3e01b4d2fc68d48ba3acbba9d5881e59_Out_0_Texture2D.GetTransformedUV(_Multiply_a67201b6e1a0a28c98cd9d06e8b09543_Out_2_Vector2) );
|
|
float _SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_R_4_Float = _SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_RGBA_0_Vector4.r;
|
|
float _SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_G_5_Float = _SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_RGBA_0_Vector4.g;
|
|
float _SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_B_6_Float = _SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_RGBA_0_Vector4.b;
|
|
float _SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_A_7_Float = _SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_RGBA_0_Vector4.a;
|
|
float4 _Multiply_7bb4009c92b108849ac6ca92bc1442f2_Out_2_Vector4;
|
|
Unity_Multiply_float4_float4(_SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_RGBA_0_Vector4, (_Split_ae83014fcbd9f7879a0b91fa66dc9718_B_3_Float.xxxx), _Multiply_7bb4009c92b108849ac6ca92bc1442f2_Out_2_Vector4);
|
|
float4 _Combine_1e9ffdba42d6918fb7a4b185f1585d2a_RGBA_4_Vector4;
|
|
float3 _Combine_1e9ffdba42d6918fb7a4b185f1585d2a_RGB_5_Vector3;
|
|
float2 _Combine_1e9ffdba42d6918fb7a4b185f1585d2a_RG_6_Vector2;
|
|
Unity_Combine_float(_Split_89ed63cb625cb3878c183d0b71c03400_B_3_Float, _Split_89ed63cb625cb3878c183d0b71c03400_G_2_Float, float(0), float(0), _Combine_1e9ffdba42d6918fb7a4b185f1585d2a_RGBA_4_Vector4, _Combine_1e9ffdba42d6918fb7a4b185f1585d2a_RGB_5_Vector3, _Combine_1e9ffdba42d6918fb7a4b185f1585d2a_RG_6_Vector2);
|
|
float4 _Multiply_2c0864423b014f8b8af8523f68cbb63c_Out_2_Vector4;
|
|
Unity_Multiply_float4_float4(_Combine_1e9ffdba42d6918fb7a4b185f1585d2a_RGBA_4_Vector4, (_Property_47988ec10c0c18879d461e00bed806e7_Out_0_Float.xxxx), _Multiply_2c0864423b014f8b8af8523f68cbb63c_Out_2_Vector4);
|
|
float2 _Vector2_54dfd40df2fc78809955dd272f2cf0c3_Out_0_Vector2 = float2(_Split_742547a7039de986a646d04c157ae549_R_1_Float, float(1));
|
|
float2 _Multiply_addbd5fcede95f80bbb806c94e49ef63_Out_2_Vector2;
|
|
Unity_Multiply_float2_float2((_Multiply_2c0864423b014f8b8af8523f68cbb63c_Out_2_Vector4.xy), _Vector2_54dfd40df2fc78809955dd272f2cf0c3_Out_0_Vector2, _Multiply_addbd5fcede95f80bbb806c94e49ef63_Out_2_Vector2);
|
|
float4 _SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_RGBA_0_Vector4 = SAMPLE_TEXTURE2D(_Property_3e01b4d2fc68d48ba3acbba9d5881e59_Out_0_Texture2D.tex, _Property_544c7fa9dfe54e30a0df9d605340a374_Out_0_SamplerState.samplerstate, _Property_3e01b4d2fc68d48ba3acbba9d5881e59_Out_0_Texture2D.GetTransformedUV(_Multiply_addbd5fcede95f80bbb806c94e49ef63_Out_2_Vector2) );
|
|
float _SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_R_4_Float = _SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_RGBA_0_Vector4.r;
|
|
float _SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_G_5_Float = _SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_RGBA_0_Vector4.g;
|
|
float _SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_B_6_Float = _SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_RGBA_0_Vector4.b;
|
|
float _SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_A_7_Float = _SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_RGBA_0_Vector4.a;
|
|
float4 _Multiply_77818c22e359fc8cbb7dd20216a8db72_Out_2_Vector4;
|
|
Unity_Multiply_float4_float4(_SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_RGBA_0_Vector4, (_Split_ae83014fcbd9f7879a0b91fa66dc9718_R_1_Float.xxxx), _Multiply_77818c22e359fc8cbb7dd20216a8db72_Out_2_Vector4);
|
|
float4 _Add_769d9ee909c9238dbbf72d2800a2f268_Out_2_Vector4;
|
|
Unity_Add_float4(_Multiply_7bb4009c92b108849ac6ca92bc1442f2_Out_2_Vector4, _Multiply_77818c22e359fc8cbb7dd20216a8db72_Out_2_Vector4, _Add_769d9ee909c9238dbbf72d2800a2f268_Out_2_Vector4);
|
|
float4 _Add_14295f72880e4b87a1baf1ced943ac40_Out_2_Vector4;
|
|
Unity_Add_float4(_Multiply_2e1040ca9c98d085ace76ee93f094039_Out_2_Vector4, _Add_769d9ee909c9238dbbf72d2800a2f268_Out_2_Vector4, _Add_14295f72880e4b87a1baf1ced943ac40_Out_2_Vector4);
|
|
float _Add_e59af300bba2498db32eac1412123447_Out_2_Float;
|
|
Unity_Add_float(_Split_ae83014fcbd9f7879a0b91fa66dc9718_R_1_Float, _Split_ae83014fcbd9f7879a0b91fa66dc9718_G_2_Float, _Add_e59af300bba2498db32eac1412123447_Out_2_Float);
|
|
float _Add_e855069f047fae8ea9027d56acb61e56_Out_2_Float;
|
|
Unity_Add_float(_Add_e59af300bba2498db32eac1412123447_Out_2_Float, _Split_ae83014fcbd9f7879a0b91fa66dc9718_B_3_Float, _Add_e855069f047fae8ea9027d56acb61e56_Out_2_Float);
|
|
float4 _Divide_91ae4b94f1d9b78e99d0472293b8098c_Out_2_Vector4;
|
|
Unity_Divide_float4(_Add_14295f72880e4b87a1baf1ced943ac40_Out_2_Vector4, (_Add_e855069f047fae8ea9027d56acb61e56_Out_2_Float.xxxx), _Divide_91ae4b94f1d9b78e99d0472293b8098c_Out_2_Vector4);
|
|
XYZ_1 = _Divide_91ae4b94f1d9b78e99d0472293b8098c_Out_2_Vector4;
|
|
XZ_2 = _SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_RGBA_0_Vector4;
|
|
YZ_3 = _SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_RGBA_0_Vector4;
|
|
XY_4 = _SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_RGBA_0_Vector4;
|
|
}
|
|
|
|
void Unity_Clamp_float(float In, float Min, float Max, out float Out)
|
|
{
|
|
Out = clamp(In, Min, Max);
|
|
}
|
|
|
|
void Unity_Absolute_float(float In, out float Out)
|
|
{
|
|
Out = abs(In);
|
|
}
|
|
|
|
void Unity_Power_float(float A, float B, out float Out)
|
|
{
|
|
Out = pow(A, B);
|
|
}
|
|
|
|
void Unity_Clamp_float4(float4 In, float4 Min, float4 Max, out float4 Out)
|
|
{
|
|
Out = clamp(In, Min, Max);
|
|
}
|
|
|
|
void Unity_Branch_float4(float Predicate, float4 True, float4 False, out float4 Out)
|
|
{
|
|
Out = Predicate ? True : False;
|
|
}
|
|
|
|
void Unity_TilingAndOffset_float(float2 UV, float2 Tiling, float2 Offset, out float2 Out)
|
|
{
|
|
Out = UV * Tiling + Offset;
|
|
}
|
|
|
|
void Unity_Saturate_float(float In, out float Out)
|
|
{
|
|
Out = saturate(In);
|
|
}
|
|
|
|
void Unity_SquareRoot_float4(float4 In, out float4 Out)
|
|
{
|
|
Out = sqrt(In);
|
|
}
|
|
|
|
void Unity_Sign_float(float In, out float Out)
|
|
{
|
|
Out = sign(In);
|
|
}
|
|
|
|
void Unity_Ceiling_float(float In, out float Out)
|
|
{
|
|
Out = ceil(In);
|
|
}
|
|
|
|
void Unity_Lerp_float4(float4 A, float4 B, float4 T, out float4 Out)
|
|
{
|
|
Out = lerp(A, B, T);
|
|
}
|
|
|
|
struct Bindings_BlendOverlayBaseColor_acdb3dfca72bd6b42bbc35f4613331a2_float
|
|
{
|
|
};
|
|
|
|
void SG_BlendOverlayBaseColor_acdb3dfca72bd6b42bbc35f4613331a2_float(float4 Color_9AA111D3, float Vector1_FBE622A2, float Vector1_8C15C351, Bindings_BlendOverlayBaseColor_acdb3dfca72bd6b42bbc35f4613331a2_float IN, out float3 OutVector4_1)
|
|
{
|
|
float4 _Property_012510d774fb7f8b860f5270dca4500f_Out_0_Vector4 = Color_9AA111D3;
|
|
float4 _SquareRoot_c2c57d0223a9538aa9240890c3cacb0c_Out_1_Vector4;
|
|
Unity_SquareRoot_float4(_Property_012510d774fb7f8b860f5270dca4500f_Out_0_Vector4, _SquareRoot_c2c57d0223a9538aa9240890c3cacb0c_Out_1_Vector4);
|
|
float _Property_a00e29241d12f983b30177515b367ec9_Out_0_Float = Vector1_FBE622A2;
|
|
float _Sign_343a45ede7349283a681c6bd9998fd8e_Out_1_Float;
|
|
Unity_Sign_float(_Property_a00e29241d12f983b30177515b367ec9_Out_0_Float, _Sign_343a45ede7349283a681c6bd9998fd8e_Out_1_Float);
|
|
float _Add_681019b8f5d3d68bb482d419c9fc61a9_Out_2_Float;
|
|
Unity_Add_float(_Sign_343a45ede7349283a681c6bd9998fd8e_Out_1_Float, float(1), _Add_681019b8f5d3d68bb482d419c9fc61a9_Out_2_Float);
|
|
float _Multiply_e8f4cb722712a880ac0db6c7461427f7_Out_2_Float;
|
|
Unity_Multiply_float_float(_Add_681019b8f5d3d68bb482d419c9fc61a9_Out_2_Float, 0.5, _Multiply_e8f4cb722712a880ac0db6c7461427f7_Out_2_Float);
|
|
float _Ceiling_95ad15988aa9b98184875fa754feae01_Out_1_Float;
|
|
Unity_Ceiling_float(_Multiply_e8f4cb722712a880ac0db6c7461427f7_Out_2_Float, _Ceiling_95ad15988aa9b98184875fa754feae01_Out_1_Float);
|
|
float _Property_2db1c747a05ee284a8b00076062f91a4_Out_0_Float = Vector1_8C15C351;
|
|
float _Multiply_9564ecda5193bc8286d9ff771c9226cd_Out_2_Float;
|
|
Unity_Multiply_float_float(_Property_2db1c747a05ee284a8b00076062f91a4_Out_0_Float, _Property_2db1c747a05ee284a8b00076062f91a4_Out_0_Float, _Multiply_9564ecda5193bc8286d9ff771c9226cd_Out_2_Float);
|
|
float4 _Lerp_b3cdb01fc3c5b988ac9b184943bf7c01_Out_3_Vector4;
|
|
Unity_Lerp_float4(_SquareRoot_c2c57d0223a9538aa9240890c3cacb0c_Out_1_Vector4, (_Ceiling_95ad15988aa9b98184875fa754feae01_Out_1_Float.xxxx), (_Multiply_9564ecda5193bc8286d9ff771c9226cd_Out_2_Float.xxxx), _Lerp_b3cdb01fc3c5b988ac9b184943bf7c01_Out_3_Vector4);
|
|
float4 _Multiply_39d1daff98488f8ea2cd794ad4f20926_Out_2_Vector4;
|
|
Unity_Multiply_float4_float4(_Lerp_b3cdb01fc3c5b988ac9b184943bf7c01_Out_3_Vector4, _Lerp_b3cdb01fc3c5b988ac9b184943bf7c01_Out_3_Vector4, _Multiply_39d1daff98488f8ea2cd794ad4f20926_Out_2_Vector4);
|
|
OutVector4_1 = (_Multiply_39d1daff98488f8ea2cd794ad4f20926_Out_2_Vector4.xyz);
|
|
}
|
|
|
|
void Unity_Add_float2(float2 A, float2 B, out float2 Out)
|
|
{
|
|
Out = A + B;
|
|
}
|
|
|
|
void Unity_DotProduct_float2(float2 A, float2 B, out float Out)
|
|
{
|
|
Out = dot(A, B);
|
|
}
|
|
|
|
void Unity_OneMinus_float(float In, out float Out)
|
|
{
|
|
Out = 1 - In;
|
|
}
|
|
|
|
void Unity_SquareRoot_float(float In, out float Out)
|
|
{
|
|
Out = sqrt(In);
|
|
}
|
|
|
|
void Unity_Add_float3(float3 A, float3 B, out float3 Out)
|
|
{
|
|
Out = A + B;
|
|
}
|
|
|
|
void Unity_Divide_float3(float3 A, float3 B, out float3 Out)
|
|
{
|
|
Out = A / B;
|
|
}
|
|
|
|
void Unity_Normalize_float3(float3 In, out float3 Out)
|
|
{
|
|
Out = normalize(In);
|
|
}
|
|
|
|
struct Bindings_TriplanarNMn_059da9746584140498cd018db3c76047_float
|
|
{
|
|
float3 WorldSpaceNormal;
|
|
float3 WorldSpaceTangent;
|
|
float3 WorldSpaceBiTangent;
|
|
float3 AbsoluteWorldSpacePosition;
|
|
};
|
|
|
|
void SG_TriplanarNMn_059da9746584140498cd018db3c76047_float(UnityTexture2D Texture2D_80A3D28F, float Vector1_41461AC9, float Vector1_E4D1C13A, UnitySamplerState _SamplerState, Bindings_TriplanarNMn_059da9746584140498cd018db3c76047_float IN, out float4 XYZ_1, out float4 XZ_2, out float4 YZ_3, out float4 XY_4)
|
|
{
|
|
UnityTexture2D _Property_3e01b4d2fc68d48ba3acbba9d5881e59_Out_0_Texture2D = Texture2D_80A3D28F;
|
|
float _Split_89ed63cb625cb3878c183d0b71c03400_R_1_Float = IN.AbsoluteWorldSpacePosition[0];
|
|
float _Split_89ed63cb625cb3878c183d0b71c03400_G_2_Float = IN.AbsoluteWorldSpacePosition[1];
|
|
float _Split_89ed63cb625cb3878c183d0b71c03400_B_3_Float = IN.AbsoluteWorldSpacePosition[2];
|
|
float _Split_89ed63cb625cb3878c183d0b71c03400_A_4_Float = 0;
|
|
float4 _Combine_cf2d04ff119ad88493f6460431765cbb_RGBA_4_Vector4;
|
|
float3 _Combine_cf2d04ff119ad88493f6460431765cbb_RGB_5_Vector3;
|
|
float2 _Combine_cf2d04ff119ad88493f6460431765cbb_RG_6_Vector2;
|
|
Unity_Combine_float(_Split_89ed63cb625cb3878c183d0b71c03400_R_1_Float, _Split_89ed63cb625cb3878c183d0b71c03400_B_3_Float, float(0), float(0), _Combine_cf2d04ff119ad88493f6460431765cbb_RGBA_4_Vector4, _Combine_cf2d04ff119ad88493f6460431765cbb_RGB_5_Vector3, _Combine_cf2d04ff119ad88493f6460431765cbb_RG_6_Vector2);
|
|
float _Property_47988ec10c0c18879d461e00bed806e7_Out_0_Float = Vector1_41461AC9;
|
|
float4 _Multiply_14cec4902d0a00829e4555071a1b8ad1_Out_2_Vector4;
|
|
Unity_Multiply_float4_float4(_Combine_cf2d04ff119ad88493f6460431765cbb_RGBA_4_Vector4, (_Property_47988ec10c0c18879d461e00bed806e7_Out_0_Float.xxxx), _Multiply_14cec4902d0a00829e4555071a1b8ad1_Out_2_Vector4);
|
|
float3 _Sign_3a6ebf59931cf08cb0482e0144ddac24_Out_1_Vector3;
|
|
Unity_Sign_float3(IN.WorldSpaceNormal, _Sign_3a6ebf59931cf08cb0482e0144ddac24_Out_1_Vector3);
|
|
float _Split_6299d4ddcc4c74828aea40a46fdb896e_R_1_Float = _Sign_3a6ebf59931cf08cb0482e0144ddac24_Out_1_Vector3[0];
|
|
float _Split_6299d4ddcc4c74828aea40a46fdb896e_G_2_Float = _Sign_3a6ebf59931cf08cb0482e0144ddac24_Out_1_Vector3[1];
|
|
float _Split_6299d4ddcc4c74828aea40a46fdb896e_B_3_Float = _Sign_3a6ebf59931cf08cb0482e0144ddac24_Out_1_Vector3[2];
|
|
float _Split_6299d4ddcc4c74828aea40a46fdb896e_A_4_Float = 0;
|
|
float2 _Vector2_b76cb1842101e58b9e636d49b075c612_Out_0_Vector2 = float2(_Split_6299d4ddcc4c74828aea40a46fdb896e_G_2_Float, float(1));
|
|
float2 _Multiply_a87753ad90594382bf3a3a95abbadbc8_Out_2_Vector2;
|
|
Unity_Multiply_float2_float2((_Multiply_14cec4902d0a00829e4555071a1b8ad1_Out_2_Vector4.xy), _Vector2_b76cb1842101e58b9e636d49b075c612_Out_0_Vector2, _Multiply_a87753ad90594382bf3a3a95abbadbc8_Out_2_Vector2);
|
|
UnitySamplerState _Property_8a2b8589cd3a42a1879a29c28e4f711f_Out_0_SamplerState = _SamplerState;
|
|
float4 _SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_RGBA_0_Vector4 = SAMPLE_TEXTURE2D(_Property_3e01b4d2fc68d48ba3acbba9d5881e59_Out_0_Texture2D.tex, _Property_8a2b8589cd3a42a1879a29c28e4f711f_Out_0_SamplerState.samplerstate, _Property_3e01b4d2fc68d48ba3acbba9d5881e59_Out_0_Texture2D.GetTransformedUV(_Multiply_a87753ad90594382bf3a3a95abbadbc8_Out_2_Vector2) );
|
|
_SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_RGBA_0_Vector4.rgb = UnpackNormal(_SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_RGBA_0_Vector4);
|
|
float _SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_R_4_Float = _SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_RGBA_0_Vector4.r;
|
|
float _SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_G_5_Float = _SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_RGBA_0_Vector4.g;
|
|
float _SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_B_6_Float = _SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_RGBA_0_Vector4.b;
|
|
float _SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_A_7_Float = _SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_RGBA_0_Vector4.a;
|
|
float2 _Vector2_ad6bd100e273d78fa409a30a77bfa2cc_Out_0_Vector2 = float2(_SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_R_4_Float, _SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_G_5_Float);
|
|
float2 _Multiply_31e8db88ee20c985a9850d1a58f3282b_Out_2_Vector2;
|
|
Unity_Multiply_float2_float2(_Vector2_ad6bd100e273d78fa409a30a77bfa2cc_Out_0_Vector2, _Vector2_b76cb1842101e58b9e636d49b075c612_Out_0_Vector2, _Multiply_31e8db88ee20c985a9850d1a58f3282b_Out_2_Vector2);
|
|
float _Split_5ed44bf2eca0868f81eb18100f49d1fa_R_1_Float = IN.WorldSpaceNormal[0];
|
|
float _Split_5ed44bf2eca0868f81eb18100f49d1fa_G_2_Float = IN.WorldSpaceNormal[1];
|
|
float _Split_5ed44bf2eca0868f81eb18100f49d1fa_B_3_Float = IN.WorldSpaceNormal[2];
|
|
float _Split_5ed44bf2eca0868f81eb18100f49d1fa_A_4_Float = 0;
|
|
float2 _Vector2_70e5837843f28b8b9d64cada3697bd5a_Out_0_Vector2 = float2(_Split_5ed44bf2eca0868f81eb18100f49d1fa_R_1_Float, _Split_5ed44bf2eca0868f81eb18100f49d1fa_B_3_Float);
|
|
float2 _Add_1145b2f896593d80aa864a34e6702562_Out_2_Vector2;
|
|
Unity_Add_float2(_Multiply_31e8db88ee20c985a9850d1a58f3282b_Out_2_Vector2, _Vector2_70e5837843f28b8b9d64cada3697bd5a_Out_0_Vector2, _Add_1145b2f896593d80aa864a34e6702562_Out_2_Vector2);
|
|
float _Split_2bc77ca2d17bd78cb2383770ce50b179_R_1_Float = _Add_1145b2f896593d80aa864a34e6702562_Out_2_Vector2[0];
|
|
float _Split_2bc77ca2d17bd78cb2383770ce50b179_G_2_Float = _Add_1145b2f896593d80aa864a34e6702562_Out_2_Vector2[1];
|
|
float _Split_2bc77ca2d17bd78cb2383770ce50b179_B_3_Float = 0;
|
|
float _Split_2bc77ca2d17bd78cb2383770ce50b179_A_4_Float = 0;
|
|
float _Multiply_e4fe778b81456d819c52bb414cd95968_Out_2_Float;
|
|
Unity_Multiply_float_float(_SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_B_6_Float, _Split_5ed44bf2eca0868f81eb18100f49d1fa_G_2_Float, _Multiply_e4fe778b81456d819c52bb414cd95968_Out_2_Float);
|
|
float3 _Vector3_08f62c5c01619e849f1a7d85a44531ac_Out_0_Vector3 = float3(_Split_2bc77ca2d17bd78cb2383770ce50b179_R_1_Float, _Multiply_e4fe778b81456d819c52bb414cd95968_Out_2_Float, _Split_2bc77ca2d17bd78cb2383770ce50b179_G_2_Float);
|
|
float3 _Absolute_644b798714827680b39bf5d34f70385f_Out_1_Vector3;
|
|
Unity_Absolute_float3(IN.WorldSpaceNormal, _Absolute_644b798714827680b39bf5d34f70385f_Out_1_Vector3);
|
|
float _Property_adc4c59482221c8aad681c6558728ac9_Out_0_Float = Vector1_E4D1C13A;
|
|
float3 _Power_ee478822a04529849ae8df1636c29fe2_Out_2_Vector3;
|
|
Unity_Power_float3(_Absolute_644b798714827680b39bf5d34f70385f_Out_1_Vector3, (_Property_adc4c59482221c8aad681c6558728ac9_Out_0_Float.xxx), _Power_ee478822a04529849ae8df1636c29fe2_Out_2_Vector3);
|
|
float3 _Multiply_b386a937554d73828e437d126d69608b_Out_2_Vector3;
|
|
Unity_Multiply_float3_float3(_Power_ee478822a04529849ae8df1636c29fe2_Out_2_Vector3, _Power_ee478822a04529849ae8df1636c29fe2_Out_2_Vector3, _Multiply_b386a937554d73828e437d126d69608b_Out_2_Vector3);
|
|
float _Split_ae83014fcbd9f7879a0b91fa66dc9718_R_1_Float = _Multiply_b386a937554d73828e437d126d69608b_Out_2_Vector3[0];
|
|
float _Split_ae83014fcbd9f7879a0b91fa66dc9718_G_2_Float = _Multiply_b386a937554d73828e437d126d69608b_Out_2_Vector3[1];
|
|
float _Split_ae83014fcbd9f7879a0b91fa66dc9718_B_3_Float = _Multiply_b386a937554d73828e437d126d69608b_Out_2_Vector3[2];
|
|
float _Split_ae83014fcbd9f7879a0b91fa66dc9718_A_4_Float = 0;
|
|
float3 _Multiply_2e1040ca9c98d085ace76ee93f094039_Out_2_Vector3;
|
|
Unity_Multiply_float3_float3(_Vector3_08f62c5c01619e849f1a7d85a44531ac_Out_0_Vector3, (_Split_ae83014fcbd9f7879a0b91fa66dc9718_G_2_Float.xxx), _Multiply_2e1040ca9c98d085ace76ee93f094039_Out_2_Vector3);
|
|
float4 _Combine_192c2c4a69be588b90ca005a32e22552_RGBA_4_Vector4;
|
|
float3 _Combine_192c2c4a69be588b90ca005a32e22552_RGB_5_Vector3;
|
|
float2 _Combine_192c2c4a69be588b90ca005a32e22552_RG_6_Vector2;
|
|
Unity_Combine_float(_Split_89ed63cb625cb3878c183d0b71c03400_R_1_Float, _Split_89ed63cb625cb3878c183d0b71c03400_G_2_Float, float(0), float(0), _Combine_192c2c4a69be588b90ca005a32e22552_RGBA_4_Vector4, _Combine_192c2c4a69be588b90ca005a32e22552_RGB_5_Vector3, _Combine_192c2c4a69be588b90ca005a32e22552_RG_6_Vector2);
|
|
float4 _Multiply_138240d0d4846e87b0febabec0d6891b_Out_2_Vector4;
|
|
Unity_Multiply_float4_float4(_Combine_192c2c4a69be588b90ca005a32e22552_RGBA_4_Vector4, (_Property_47988ec10c0c18879d461e00bed806e7_Out_0_Float.xxxx), _Multiply_138240d0d4846e87b0febabec0d6891b_Out_2_Vector4);
|
|
float _Multiply_de711f4a4614bd89a463b53374cf4036_Out_2_Float;
|
|
Unity_Multiply_float_float(_Split_6299d4ddcc4c74828aea40a46fdb896e_B_3_Float, -1, _Multiply_de711f4a4614bd89a463b53374cf4036_Out_2_Float);
|
|
float2 _Vector2_4ed33f0c73b2698fa6f3c1b77fe76808_Out_0_Vector2 = float2(_Multiply_de711f4a4614bd89a463b53374cf4036_Out_2_Float, float(1));
|
|
float2 _Multiply_2af6058cc6ccb88caefd2799bb5941e8_Out_2_Vector2;
|
|
Unity_Multiply_float2_float2((_Multiply_138240d0d4846e87b0febabec0d6891b_Out_2_Vector4.xy), _Vector2_4ed33f0c73b2698fa6f3c1b77fe76808_Out_0_Vector2, _Multiply_2af6058cc6ccb88caefd2799bb5941e8_Out_2_Vector2);
|
|
float4 _SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_RGBA_0_Vector4 = SAMPLE_TEXTURE2D(_Property_3e01b4d2fc68d48ba3acbba9d5881e59_Out_0_Texture2D.tex, _Property_8a2b8589cd3a42a1879a29c28e4f711f_Out_0_SamplerState.samplerstate, _Property_3e01b4d2fc68d48ba3acbba9d5881e59_Out_0_Texture2D.GetTransformedUV(_Multiply_2af6058cc6ccb88caefd2799bb5941e8_Out_2_Vector2) );
|
|
_SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_RGBA_0_Vector4.rgb = UnpackNormal(_SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_RGBA_0_Vector4);
|
|
float _SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_R_4_Float = _SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_RGBA_0_Vector4.r;
|
|
float _SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_G_5_Float = _SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_RGBA_0_Vector4.g;
|
|
float _SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_B_6_Float = _SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_RGBA_0_Vector4.b;
|
|
float _SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_A_7_Float = _SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_RGBA_0_Vector4.a;
|
|
float2 _Vector2_fe9aedd4528c7486ada4abdca0b0944e_Out_0_Vector2 = float2(_SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_R_4_Float, _SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_G_5_Float);
|
|
float2 _Multiply_02b9b4665ad9918d8721bcaddc82f06f_Out_2_Vector2;
|
|
Unity_Multiply_float2_float2(_Vector2_fe9aedd4528c7486ada4abdca0b0944e_Out_0_Vector2, _Vector2_4ed33f0c73b2698fa6f3c1b77fe76808_Out_0_Vector2, _Multiply_02b9b4665ad9918d8721bcaddc82f06f_Out_2_Vector2);
|
|
float2 _Vector2_a74a85274da15181abb63cc5e8df0de1_Out_0_Vector2 = float2(_Split_5ed44bf2eca0868f81eb18100f49d1fa_R_1_Float, _Split_5ed44bf2eca0868f81eb18100f49d1fa_G_2_Float);
|
|
float2 _Add_b227c84042055e8faa1a9fdc69529707_Out_2_Vector2;
|
|
Unity_Add_float2(_Multiply_02b9b4665ad9918d8721bcaddc82f06f_Out_2_Vector2, _Vector2_a74a85274da15181abb63cc5e8df0de1_Out_0_Vector2, _Add_b227c84042055e8faa1a9fdc69529707_Out_2_Vector2);
|
|
float _Split_2cfb9eacd8762483941459cdf28bda97_R_1_Float = _Add_b227c84042055e8faa1a9fdc69529707_Out_2_Vector2[0];
|
|
float _Split_2cfb9eacd8762483941459cdf28bda97_G_2_Float = _Add_b227c84042055e8faa1a9fdc69529707_Out_2_Vector2[1];
|
|
float _Split_2cfb9eacd8762483941459cdf28bda97_B_3_Float = 0;
|
|
float _Split_2cfb9eacd8762483941459cdf28bda97_A_4_Float = 0;
|
|
float _Multiply_1d65ce08ce672087879125f2e13c4004_Out_2_Float;
|
|
Unity_Multiply_float_float(_SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_B_6_Float, _Split_5ed44bf2eca0868f81eb18100f49d1fa_B_3_Float, _Multiply_1d65ce08ce672087879125f2e13c4004_Out_2_Float);
|
|
float3 _Vector3_ba6cfb4671e8c58f9b41ea1dc23102ca_Out_0_Vector3 = float3(_Split_2cfb9eacd8762483941459cdf28bda97_R_1_Float, _Split_2cfb9eacd8762483941459cdf28bda97_G_2_Float, _Multiply_1d65ce08ce672087879125f2e13c4004_Out_2_Float);
|
|
float3 _Multiply_7bb4009c92b108849ac6ca92bc1442f2_Out_2_Vector3;
|
|
Unity_Multiply_float3_float3(_Vector3_ba6cfb4671e8c58f9b41ea1dc23102ca_Out_0_Vector3, (_Split_ae83014fcbd9f7879a0b91fa66dc9718_B_3_Float.xxx), _Multiply_7bb4009c92b108849ac6ca92bc1442f2_Out_2_Vector3);
|
|
float4 _Combine_1e9ffdba42d6918fb7a4b185f1585d2a_RGBA_4_Vector4;
|
|
float3 _Combine_1e9ffdba42d6918fb7a4b185f1585d2a_RGB_5_Vector3;
|
|
float2 _Combine_1e9ffdba42d6918fb7a4b185f1585d2a_RG_6_Vector2;
|
|
Unity_Combine_float(_Split_89ed63cb625cb3878c183d0b71c03400_B_3_Float, _Split_89ed63cb625cb3878c183d0b71c03400_G_2_Float, float(0), float(0), _Combine_1e9ffdba42d6918fb7a4b185f1585d2a_RGBA_4_Vector4, _Combine_1e9ffdba42d6918fb7a4b185f1585d2a_RGB_5_Vector3, _Combine_1e9ffdba42d6918fb7a4b185f1585d2a_RG_6_Vector2);
|
|
float4 _Multiply_2c0864423b014f8b8af8523f68cbb63c_Out_2_Vector4;
|
|
Unity_Multiply_float4_float4(_Combine_1e9ffdba42d6918fb7a4b185f1585d2a_RGBA_4_Vector4, (_Property_47988ec10c0c18879d461e00bed806e7_Out_0_Float.xxxx), _Multiply_2c0864423b014f8b8af8523f68cbb63c_Out_2_Vector4);
|
|
float2 _Vector2_a1e23e0f921b6484818f009a2b12a5ba_Out_0_Vector2 = float2(_Split_6299d4ddcc4c74828aea40a46fdb896e_R_1_Float, float(1));
|
|
float2 _Multiply_862402885a49f18cb87278ab53bc6744_Out_2_Vector2;
|
|
Unity_Multiply_float2_float2((_Multiply_2c0864423b014f8b8af8523f68cbb63c_Out_2_Vector4.xy), _Vector2_a1e23e0f921b6484818f009a2b12a5ba_Out_0_Vector2, _Multiply_862402885a49f18cb87278ab53bc6744_Out_2_Vector2);
|
|
float4 _SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_RGBA_0_Vector4 = SAMPLE_TEXTURE2D(_Property_3e01b4d2fc68d48ba3acbba9d5881e59_Out_0_Texture2D.tex, _Property_8a2b8589cd3a42a1879a29c28e4f711f_Out_0_SamplerState.samplerstate, _Property_3e01b4d2fc68d48ba3acbba9d5881e59_Out_0_Texture2D.GetTransformedUV(_Multiply_862402885a49f18cb87278ab53bc6744_Out_2_Vector2) );
|
|
_SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_RGBA_0_Vector4.rgb = UnpackNormal(_SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_RGBA_0_Vector4);
|
|
float _SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_R_4_Float = _SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_RGBA_0_Vector4.r;
|
|
float _SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_G_5_Float = _SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_RGBA_0_Vector4.g;
|
|
float _SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_B_6_Float = _SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_RGBA_0_Vector4.b;
|
|
float _SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_A_7_Float = _SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_RGBA_0_Vector4.a;
|
|
float _Multiply_4649b768be76d784a3284bacde795359_Out_2_Float;
|
|
Unity_Multiply_float_float(_SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_B_6_Float, _Split_5ed44bf2eca0868f81eb18100f49d1fa_R_1_Float, _Multiply_4649b768be76d784a3284bacde795359_Out_2_Float);
|
|
float2 _Vector2_819fcd5eb484438eacad1987576d7d67_Out_0_Vector2 = float2(_SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_R_4_Float, _SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_G_5_Float);
|
|
float2 _Multiply_58530ebb3c6d798b93686a76247bf505_Out_2_Vector2;
|
|
Unity_Multiply_float2_float2(_Vector2_819fcd5eb484438eacad1987576d7d67_Out_0_Vector2, _Vector2_a1e23e0f921b6484818f009a2b12a5ba_Out_0_Vector2, _Multiply_58530ebb3c6d798b93686a76247bf505_Out_2_Vector2);
|
|
float2 _Vector2_e293c112b2f49e88a5fe46dfb1fbeb40_Out_0_Vector2 = float2(_Split_5ed44bf2eca0868f81eb18100f49d1fa_B_3_Float, _Split_5ed44bf2eca0868f81eb18100f49d1fa_G_2_Float);
|
|
float2 _Add_cf00fb232c6e2b8e973ab2f84453f55e_Out_2_Vector2;
|
|
Unity_Add_float2(_Multiply_58530ebb3c6d798b93686a76247bf505_Out_2_Vector2, _Vector2_e293c112b2f49e88a5fe46dfb1fbeb40_Out_0_Vector2, _Add_cf00fb232c6e2b8e973ab2f84453f55e_Out_2_Vector2);
|
|
float _Split_3ea3e61d32bdd78f82c686b75ff3fd9b_R_1_Float = _Add_cf00fb232c6e2b8e973ab2f84453f55e_Out_2_Vector2[0];
|
|
float _Split_3ea3e61d32bdd78f82c686b75ff3fd9b_G_2_Float = _Add_cf00fb232c6e2b8e973ab2f84453f55e_Out_2_Vector2[1];
|
|
float _Split_3ea3e61d32bdd78f82c686b75ff3fd9b_B_3_Float = 0;
|
|
float _Split_3ea3e61d32bdd78f82c686b75ff3fd9b_A_4_Float = 0;
|
|
float3 _Vector3_13a08d5940172a84a78ee3d9b8766833_Out_0_Vector3 = float3(_Multiply_4649b768be76d784a3284bacde795359_Out_2_Float, _Split_3ea3e61d32bdd78f82c686b75ff3fd9b_G_2_Float, _Split_3ea3e61d32bdd78f82c686b75ff3fd9b_R_1_Float);
|
|
float3 _Multiply_77818c22e359fc8cbb7dd20216a8db72_Out_2_Vector3;
|
|
Unity_Multiply_float3_float3(_Vector3_13a08d5940172a84a78ee3d9b8766833_Out_0_Vector3, (_Split_ae83014fcbd9f7879a0b91fa66dc9718_R_1_Float.xxx), _Multiply_77818c22e359fc8cbb7dd20216a8db72_Out_2_Vector3);
|
|
float3 _Add_769d9ee909c9238dbbf72d2800a2f268_Out_2_Vector3;
|
|
Unity_Add_float3(_Multiply_7bb4009c92b108849ac6ca92bc1442f2_Out_2_Vector3, _Multiply_77818c22e359fc8cbb7dd20216a8db72_Out_2_Vector3, _Add_769d9ee909c9238dbbf72d2800a2f268_Out_2_Vector3);
|
|
float3 _Add_14295f72880e4b87a1baf1ced943ac40_Out_2_Vector3;
|
|
Unity_Add_float3(_Multiply_2e1040ca9c98d085ace76ee93f094039_Out_2_Vector3, _Add_769d9ee909c9238dbbf72d2800a2f268_Out_2_Vector3, _Add_14295f72880e4b87a1baf1ced943ac40_Out_2_Vector3);
|
|
float _Add_e59af300bba2498db32eac1412123447_Out_2_Float;
|
|
Unity_Add_float(_Split_ae83014fcbd9f7879a0b91fa66dc9718_R_1_Float, _Split_ae83014fcbd9f7879a0b91fa66dc9718_G_2_Float, _Add_e59af300bba2498db32eac1412123447_Out_2_Float);
|
|
float _Add_e855069f047fae8ea9027d56acb61e56_Out_2_Float;
|
|
Unity_Add_float(_Add_e59af300bba2498db32eac1412123447_Out_2_Float, _Split_ae83014fcbd9f7879a0b91fa66dc9718_B_3_Float, _Add_e855069f047fae8ea9027d56acb61e56_Out_2_Float);
|
|
float3 _Divide_91ae4b94f1d9b78e99d0472293b8098c_Out_2_Vector3;
|
|
Unity_Divide_float3(_Add_14295f72880e4b87a1baf1ced943ac40_Out_2_Vector3, (_Add_e855069f047fae8ea9027d56acb61e56_Out_2_Float.xxx), _Divide_91ae4b94f1d9b78e99d0472293b8098c_Out_2_Vector3);
|
|
float3 _Transform_73eecc0c3689d184a34c8d0f28a58adf_Out_1_Vector3;
|
|
{
|
|
float3x3 tangentTransform = float3x3(IN.WorldSpaceTangent, IN.WorldSpaceBiTangent, IN.WorldSpaceNormal);
|
|
_Transform_73eecc0c3689d184a34c8d0f28a58adf_Out_1_Vector3 = TransformWorldToTangent(_Divide_91ae4b94f1d9b78e99d0472293b8098c_Out_2_Vector3.xyz, tangentTransform, true);
|
|
}
|
|
float3 _Normalize_15ef346824db0a8797631ed8b998e673_Out_1_Vector3;
|
|
Unity_Normalize_float3(_Transform_73eecc0c3689d184a34c8d0f28a58adf_Out_1_Vector3, _Normalize_15ef346824db0a8797631ed8b998e673_Out_1_Vector3);
|
|
XYZ_1 = (float4(_Normalize_15ef346824db0a8797631ed8b998e673_Out_1_Vector3, 1.0));
|
|
XZ_2 = (float4(_Vector3_08f62c5c01619e849f1a7d85a44531ac_Out_0_Vector3, 1.0));
|
|
YZ_3 = (float4(_Vector3_ba6cfb4671e8c58f9b41ea1dc23102ca_Out_0_Vector3, 1.0));
|
|
XY_4 = (float4(_Vector3_13a08d5940172a84a78ee3d9b8766833_Out_0_Vector3, 1.0));
|
|
}
|
|
|
|
void Unity_NormalStrength_float(float3 In, float Strength, out float3 Out)
|
|
{
|
|
Out = float3(In.rg * Strength, lerp(1, In.b, saturate(Strength)));
|
|
}
|
|
|
|
void Unity_NormalBlend_float(float3 A, float3 B, out float3 Out)
|
|
{
|
|
Out = SafeNormalize(float3(A.rg + B.rg, A.b * B.b));
|
|
}
|
|
|
|
void Unity_Subtract_float(float A, float B, out float Out)
|
|
{
|
|
Out = A - B;
|
|
}
|
|
|
|
void Unity_Divide_float(float A, float B, out float Out)
|
|
{
|
|
Out = A / B;
|
|
}
|
|
|
|
void Unity_Lerp_float3(float3 A, float3 B, float3 T, out float3 Out)
|
|
{
|
|
Out = lerp(A, B, T);
|
|
}
|
|
|
|
void Unity_Remap_float(float In, float2 InMinMax, float2 OutMinMax, out float Out)
|
|
{
|
|
Out = OutMinMax.x + (In - InMinMax.x) * (OutMinMax.y - OutMinMax.x) / (InMinMax.y - InMinMax.x);
|
|
}
|
|
|
|
void Unity_Branch_float(float Predicate, float True, float False, out float Out)
|
|
{
|
|
Out = Predicate ? True : False;
|
|
}
|
|
|
|
void Unity_Lerp_float(float A, float B, float T, out float Out)
|
|
{
|
|
Out = lerp(A, B, T);
|
|
}
|
|
|
|
struct Bindings_BlendOverlayDetailSmoothness_06e12138dc89c0040b45a57abe520a1a_float
|
|
{
|
|
};
|
|
|
|
void SG_BlendOverlayDetailSmoothness_06e12138dc89c0040b45a57abe520a1a_float(float Vector1_32317166, float Vector1_FBE622A2, float Vector1_8C15C351, Bindings_BlendOverlayDetailSmoothness_06e12138dc89c0040b45a57abe520a1a_float IN, out float SmoothnessOverlay_1)
|
|
{
|
|
float _Property_728cc50521e9e988ac9cbff4872d5139_Out_0_Float = Vector1_32317166;
|
|
float _Property_a00e29241d12f983b30177515b367ec9_Out_0_Float = Vector1_FBE622A2;
|
|
float _Sign_343a45ede7349283a681c6bd9998fd8e_Out_1_Float;
|
|
Unity_Sign_float(_Property_a00e29241d12f983b30177515b367ec9_Out_0_Float, _Sign_343a45ede7349283a681c6bd9998fd8e_Out_1_Float);
|
|
float _Add_681019b8f5d3d68bb482d419c9fc61a9_Out_2_Float;
|
|
Unity_Add_float(_Sign_343a45ede7349283a681c6bd9998fd8e_Out_1_Float, float(1), _Add_681019b8f5d3d68bb482d419c9fc61a9_Out_2_Float);
|
|
float _Multiply_e8f4cb722712a880ac0db6c7461427f7_Out_2_Float;
|
|
Unity_Multiply_float_float(_Add_681019b8f5d3d68bb482d419c9fc61a9_Out_2_Float, 0.5, _Multiply_e8f4cb722712a880ac0db6c7461427f7_Out_2_Float);
|
|
float _Ceiling_95ad15988aa9b98184875fa754feae01_Out_1_Float;
|
|
Unity_Ceiling_float(_Multiply_e8f4cb722712a880ac0db6c7461427f7_Out_2_Float, _Ceiling_95ad15988aa9b98184875fa754feae01_Out_1_Float);
|
|
float _Property_2db1c747a05ee284a8b00076062f91a4_Out_0_Float = Vector1_8C15C351;
|
|
float _Lerp_b3cdb01fc3c5b988ac9b184943bf7c01_Out_3_Float;
|
|
Unity_Lerp_float(_Property_728cc50521e9e988ac9cbff4872d5139_Out_0_Float, _Ceiling_95ad15988aa9b98184875fa754feae01_Out_1_Float, _Property_2db1c747a05ee284a8b00076062f91a4_Out_0_Float, _Lerp_b3cdb01fc3c5b988ac9b184943bf7c01_Out_3_Float);
|
|
SmoothnessOverlay_1 = _Lerp_b3cdb01fc3c5b988ac9b184943bf7c01_Out_3_Float;
|
|
}
|
|
|
|
void Unity_Minimum_float(float A, float B, out float Out)
|
|
{
|
|
Out = min(A, B);
|
|
};
|
|
|
|
// Graph Vertex
|
|
// GraphVertex: <None>
|
|
|
|
// Graph Pixel
|
|
struct SurfaceDescription
|
|
{
|
|
float3 BaseColor;
|
|
float3 Emission;
|
|
float Alpha;
|
|
float3 BentNormal;
|
|
float Smoothness;
|
|
float Occlusion;
|
|
float3 NormalTS;
|
|
float Metallic;
|
|
};
|
|
|
|
SurfaceDescription SurfaceDescriptionFunction(SurfaceDescriptionInputs IN)
|
|
{
|
|
SurfaceDescription surface = (SurfaceDescription)0;
|
|
float _Property_72a5c604805a7b8ebbfd7acee03656aa_Out_0_Boolean = _CoverMaskRCurvature;
|
|
UnityTexture2D _Property_5f029bbc9f13b7858650859c3b63ebfd_Out_0_Texture2D = UnityBuildTexture2DStructNoScale(_BaseColorMap);
|
|
float4 _Property_a409d5fcafb9f182a4b2aea64204408f_Out_0_Vector4 = _BaseTilingOffset;
|
|
float4 _Divide_6a90cebe78e620828de587523daaa7e6_Out_2_Vector4;
|
|
Unity_Divide_float4(float4(1, 1, 0, 0), _Property_a409d5fcafb9f182a4b2aea64204408f_Out_0_Vector4, _Divide_6a90cebe78e620828de587523daaa7e6_Out_2_Vector4);
|
|
float _Property_3539de8c698c2981bb3c088d4ec52201_Out_0_Float = _BaseTriplanarThreshold;
|
|
Bindings_TriplanarNM_bc609ed95f52591469ab35dbfe0efcea_float _TriplanarNM_92d0433ff3938b8392407d2ab8713ac8;
|
|
_TriplanarNM_92d0433ff3938b8392407d2ab8713ac8.WorldSpaceNormal = IN.WorldSpaceNormal;
|
|
_TriplanarNM_92d0433ff3938b8392407d2ab8713ac8.AbsoluteWorldSpacePosition = IN.AbsoluteWorldSpacePosition;
|
|
float4 _TriplanarNM_92d0433ff3938b8392407d2ab8713ac8_XYZ_1_Vector4;
|
|
float4 _TriplanarNM_92d0433ff3938b8392407d2ab8713ac8_XZ_2_Vector4;
|
|
float4 _TriplanarNM_92d0433ff3938b8392407d2ab8713ac8_YZ_3_Vector4;
|
|
float4 _TriplanarNM_92d0433ff3938b8392407d2ab8713ac8_XY_4_Vector4;
|
|
SG_TriplanarNM_bc609ed95f52591469ab35dbfe0efcea_float(_Property_5f029bbc9f13b7858650859c3b63ebfd_Out_0_Texture2D, (_Divide_6a90cebe78e620828de587523daaa7e6_Out_2_Vector4).x, _Property_3539de8c698c2981bb3c088d4ec52201_Out_0_Float, UnityBuildSamplerStateStruct(SamplerState_Linear_Repeat_Aniso8), _TriplanarNM_92d0433ff3938b8392407d2ab8713ac8, _TriplanarNM_92d0433ff3938b8392407d2ab8713ac8_XYZ_1_Vector4, _TriplanarNM_92d0433ff3938b8392407d2ab8713ac8_XZ_2_Vector4, _TriplanarNM_92d0433ff3938b8392407d2ab8713ac8_YZ_3_Vector4, _TriplanarNM_92d0433ff3938b8392407d2ab8713ac8_XY_4_Vector4);
|
|
float4 _Property_87cd542c2b8c30868ed1d7d38aed8f2b_Out_0_Vector4 = _BaseColor;
|
|
float4 _Multiply_4b2be0b3fe39f385b887e7c82ab41e0b_Out_2_Vector4;
|
|
Unity_Multiply_float4_float4(_TriplanarNM_92d0433ff3938b8392407d2ab8713ac8_XYZ_1_Vector4, _Property_87cd542c2b8c30868ed1d7d38aed8f2b_Out_0_Vector4, _Multiply_4b2be0b3fe39f385b887e7c82ab41e0b_Out_2_Vector4);
|
|
UnityTexture2D _Property_c167aafac28bd98c8411d3e25631fdeb_Out_0_Texture2D = UnityBuildTexture2DStructNoScale(_CoverMaskA);
|
|
float4 _UV_e143f0ebbac8bb8cab3206ab93422dda_Out_0_Vector4 = IN.uv0;
|
|
float4 _SampleTexture2D_32717b1e99785588830ceee116cbe7fc_RGBA_0_Vector4 = SAMPLE_TEXTURE2D(_Property_c167aafac28bd98c8411d3e25631fdeb_Out_0_Texture2D.tex, _Property_c167aafac28bd98c8411d3e25631fdeb_Out_0_Texture2D.samplerstate, _Property_c167aafac28bd98c8411d3e25631fdeb_Out_0_Texture2D.GetTransformedUV((_UV_e143f0ebbac8bb8cab3206ab93422dda_Out_0_Vector4.xy)) );
|
|
float _SampleTexture2D_32717b1e99785588830ceee116cbe7fc_R_4_Float = _SampleTexture2D_32717b1e99785588830ceee116cbe7fc_RGBA_0_Vector4.r;
|
|
float _SampleTexture2D_32717b1e99785588830ceee116cbe7fc_G_5_Float = _SampleTexture2D_32717b1e99785588830ceee116cbe7fc_RGBA_0_Vector4.g;
|
|
float _SampleTexture2D_32717b1e99785588830ceee116cbe7fc_B_6_Float = _SampleTexture2D_32717b1e99785588830ceee116cbe7fc_RGBA_0_Vector4.b;
|
|
float _SampleTexture2D_32717b1e99785588830ceee116cbe7fc_A_7_Float = _SampleTexture2D_32717b1e99785588830ceee116cbe7fc_RGBA_0_Vector4.a;
|
|
float _Multiply_01f97603c3df268380d339564b08db11_Out_2_Float;
|
|
Unity_Multiply_float_float(_SampleTexture2D_32717b1e99785588830ceee116cbe7fc_R_4_Float, 2, _Multiply_01f97603c3df268380d339564b08db11_Out_2_Float);
|
|
float _Property_cad777e9a810198e8076eb2cd76e6817_Out_0_Float = _BaseDarknessCurvMultply;
|
|
float _Multiply_b67c8963c3ba188e85b84ae9bf0dcbf7_Out_2_Float;
|
|
Unity_Multiply_float_float(_Multiply_01f97603c3df268380d339564b08db11_Out_2_Float, _Property_cad777e9a810198e8076eb2cd76e6817_Out_0_Float, _Multiply_b67c8963c3ba188e85b84ae9bf0dcbf7_Out_2_Float);
|
|
float _Clamp_646f55d74b38f18aa983e5d031e0e7c3_Out_3_Float;
|
|
Unity_Clamp_float(_Multiply_b67c8963c3ba188e85b84ae9bf0dcbf7_Out_2_Float, float(0), float(1), _Clamp_646f55d74b38f18aa983e5d031e0e7c3_Out_3_Float);
|
|
float _Absolute_c99e11216fab2488946eb6243d985fdc_Out_1_Float;
|
|
Unity_Absolute_float(_Clamp_646f55d74b38f18aa983e5d031e0e7c3_Out_3_Float, _Absolute_c99e11216fab2488946eb6243d985fdc_Out_1_Float);
|
|
float _Property_f8a9827e6f28d9819188d4775dcf7620_Out_0_Float = _BaseDarknessCurvPower;
|
|
float _Power_1b88303e1ca2f285b344bf6aa0cf05e4_Out_2_Float;
|
|
Unity_Power_float(_Absolute_c99e11216fab2488946eb6243d985fdc_Out_1_Float, _Property_f8a9827e6f28d9819188d4775dcf7620_Out_0_Float, _Power_1b88303e1ca2f285b344bf6aa0cf05e4_Out_2_Float);
|
|
float _Clamp_27887d983dbb5a8bbd2966fbcbd7c126_Out_3_Float;
|
|
Unity_Clamp_float(_Power_1b88303e1ca2f285b344bf6aa0cf05e4_Out_2_Float, float(0), float(1), _Clamp_27887d983dbb5a8bbd2966fbcbd7c126_Out_3_Float);
|
|
float4 _Multiply_59efbfb897b39480ad44be129db72018_Out_2_Vector4;
|
|
Unity_Multiply_float4_float4(_Multiply_4b2be0b3fe39f385b887e7c82ab41e0b_Out_2_Vector4, (_Clamp_27887d983dbb5a8bbd2966fbcbd7c126_Out_3_Float.xxxx), _Multiply_59efbfb897b39480ad44be129db72018_Out_2_Vector4);
|
|
float4 _Clamp_841e38951a68f286955c4755e78c610b_Out_3_Vector4;
|
|
Unity_Clamp_float4(_Multiply_59efbfb897b39480ad44be129db72018_Out_2_Vector4, float4(0, 0, 0, 0), float4(1, 1, 1, 1), _Clamp_841e38951a68f286955c4755e78c610b_Out_3_Vector4);
|
|
float _Add_d7ea4a88c4af4886b1e567ddd2b963f9_Out_2_Float;
|
|
Unity_Add_float(_Multiply_01f97603c3df268380d339564b08db11_Out_2_Float, float(-1), _Add_d7ea4a88c4af4886b1e567ddd2b963f9_Out_2_Float);
|
|
float _Clamp_1a02c4bf5903c988b1489d14c840c1e3_Out_3_Float;
|
|
Unity_Clamp_float(_Add_d7ea4a88c4af4886b1e567ddd2b963f9_Out_2_Float, float(0), float(1), _Clamp_1a02c4bf5903c988b1489d14c840c1e3_Out_3_Float);
|
|
float _Property_0e0e1ec2131cec87836dce596351dc1c_Out_0_Float = _BaseBrightnessCurvMultply;
|
|
float _Multiply_c975dfa7de001c89addd082d443e2d07_Out_2_Float;
|
|
Unity_Multiply_float_float(_Clamp_1a02c4bf5903c988b1489d14c840c1e3_Out_3_Float, _Property_0e0e1ec2131cec87836dce596351dc1c_Out_0_Float, _Multiply_c975dfa7de001c89addd082d443e2d07_Out_2_Float);
|
|
float _Clamp_d5711b145a87ef8e8a93ceb9b6197759_Out_3_Float;
|
|
Unity_Clamp_float(_Multiply_c975dfa7de001c89addd082d443e2d07_Out_2_Float, float(0), float(1), _Clamp_d5711b145a87ef8e8a93ceb9b6197759_Out_3_Float);
|
|
float _Absolute_8f9bd7ee7a35c18084d08ad7ef463f52_Out_1_Float;
|
|
Unity_Absolute_float(_Clamp_d5711b145a87ef8e8a93ceb9b6197759_Out_3_Float, _Absolute_8f9bd7ee7a35c18084d08ad7ef463f52_Out_1_Float);
|
|
float _Property_9092f5beea2bec83a5c8a3f6623953a6_Out_0_Float = _BaseBrightnessCurvPower;
|
|
float _Power_5c1a81a2cfcc578996666adb93479f83_Out_2_Float;
|
|
Unity_Power_float(_Absolute_8f9bd7ee7a35c18084d08ad7ef463f52_Out_1_Float, _Property_9092f5beea2bec83a5c8a3f6623953a6_Out_0_Float, _Power_5c1a81a2cfcc578996666adb93479f83_Out_2_Float);
|
|
float _Clamp_f3c614a7ae35508288c0bc3f6194ca34_Out_3_Float;
|
|
Unity_Clamp_float(_Power_5c1a81a2cfcc578996666adb93479f83_Out_2_Float, float(0), float(1), _Clamp_f3c614a7ae35508288c0bc3f6194ca34_Out_3_Float);
|
|
float4 _Add_8313e15cade91a8ba653986d6722818a_Out_2_Vector4;
|
|
Unity_Add_float4(_Clamp_841e38951a68f286955c4755e78c610b_Out_3_Vector4, (_Clamp_f3c614a7ae35508288c0bc3f6194ca34_Out_3_Float.xxxx), _Add_8313e15cade91a8ba653986d6722818a_Out_2_Vector4);
|
|
float4 _Clamp_6dc8fea4fa463b8ea840911fd315c80f_Out_3_Vector4;
|
|
Unity_Clamp_float4(_Add_8313e15cade91a8ba653986d6722818a_Out_2_Vector4, float4(0, 0, 0, 0), float4(1, 1, 1, 1), _Clamp_6dc8fea4fa463b8ea840911fd315c80f_Out_3_Vector4);
|
|
float4 _Branch_26165227c7a50284b87d2996dee9982c_Out_3_Vector4;
|
|
Unity_Branch_float4(_Property_72a5c604805a7b8ebbfd7acee03656aa_Out_0_Boolean, _Clamp_6dc8fea4fa463b8ea840911fd315c80f_Out_3_Vector4, _Multiply_4b2be0b3fe39f385b887e7c82ab41e0b_Out_2_Vector4, _Branch_26165227c7a50284b87d2996dee9982c_Out_3_Vector4);
|
|
UnityTexture2D _Property_2e62abc1fe8adb8b8ff655b8448be202_Out_0_Texture2D = UnityBuildTexture2DStructNoScale(_DetailMap);
|
|
float4 _Property_b86e0ee324ffb58a92473eab69864d04_Out_0_Vector4 = _DetailTilingOffset;
|
|
float _Split_e832641c05503286a4951c0a93621755_R_1_Float = _Property_b86e0ee324ffb58a92473eab69864d04_Out_0_Vector4[0];
|
|
float _Split_e832641c05503286a4951c0a93621755_G_2_Float = _Property_b86e0ee324ffb58a92473eab69864d04_Out_0_Vector4[1];
|
|
float _Split_e832641c05503286a4951c0a93621755_B_3_Float = _Property_b86e0ee324ffb58a92473eab69864d04_Out_0_Vector4[2];
|
|
float _Split_e832641c05503286a4951c0a93621755_A_4_Float = _Property_b86e0ee324ffb58a92473eab69864d04_Out_0_Vector4[3];
|
|
float2 _Vector2_4b5eef288b3d4c83b24e4ab653f55ec8_Out_0_Vector2 = float2(_Split_e832641c05503286a4951c0a93621755_R_1_Float, _Split_e832641c05503286a4951c0a93621755_G_2_Float);
|
|
float2 _Vector2_2925cf98ba16b08dabc58cd65efd17db_Out_0_Vector2 = float2(_Split_e832641c05503286a4951c0a93621755_B_3_Float, _Split_e832641c05503286a4951c0a93621755_A_4_Float);
|
|
float2 _TilingAndOffset_74f6566eba9ccd899de18c0b11b7a7a2_Out_3_Vector2;
|
|
Unity_TilingAndOffset_float(IN.uv0.xy, _Vector2_4b5eef288b3d4c83b24e4ab653f55ec8_Out_0_Vector2, _Vector2_2925cf98ba16b08dabc58cd65efd17db_Out_0_Vector2, _TilingAndOffset_74f6566eba9ccd899de18c0b11b7a7a2_Out_3_Vector2);
|
|
float4 _SampleTexture2D_4bd08411faa60c828847f2247f06a809_RGBA_0_Vector4 = SAMPLE_TEXTURE2D(_Property_2e62abc1fe8adb8b8ff655b8448be202_Out_0_Texture2D.tex, _Property_2e62abc1fe8adb8b8ff655b8448be202_Out_0_Texture2D.samplerstate, _Property_2e62abc1fe8adb8b8ff655b8448be202_Out_0_Texture2D.GetTransformedUV(_TilingAndOffset_74f6566eba9ccd899de18c0b11b7a7a2_Out_3_Vector2) );
|
|
float _SampleTexture2D_4bd08411faa60c828847f2247f06a809_R_4_Float = _SampleTexture2D_4bd08411faa60c828847f2247f06a809_RGBA_0_Vector4.r;
|
|
float _SampleTexture2D_4bd08411faa60c828847f2247f06a809_G_5_Float = _SampleTexture2D_4bd08411faa60c828847f2247f06a809_RGBA_0_Vector4.g;
|
|
float _SampleTexture2D_4bd08411faa60c828847f2247f06a809_B_6_Float = _SampleTexture2D_4bd08411faa60c828847f2247f06a809_RGBA_0_Vector4.b;
|
|
float _SampleTexture2D_4bd08411faa60c828847f2247f06a809_A_7_Float = _SampleTexture2D_4bd08411faa60c828847f2247f06a809_RGBA_0_Vector4.a;
|
|
float _Multiply_ee5a3ccdebd1af84920cd1455a59468b_Out_2_Float;
|
|
Unity_Multiply_float_float(_SampleTexture2D_4bd08411faa60c828847f2247f06a809_R_4_Float, 2, _Multiply_ee5a3ccdebd1af84920cd1455a59468b_Out_2_Float);
|
|
float _Add_b8d727bda34294808f98551e67aa852f_Out_2_Float;
|
|
Unity_Add_float(_Multiply_ee5a3ccdebd1af84920cd1455a59468b_Out_2_Float, float(-1), _Add_b8d727bda34294808f98551e67aa852f_Out_2_Float);
|
|
float _Property_4634e589b03f6983b90fa6aaee0ed5f6_Out_0_Float = _DetailAlbedoScale;
|
|
float _Multiply_f0ed5a95f800c68aa9f7ea2f1322cc31_Out_2_Float;
|
|
Unity_Multiply_float_float(_Add_b8d727bda34294808f98551e67aa852f_Out_2_Float, _Property_4634e589b03f6983b90fa6aaee0ed5f6_Out_0_Float, _Multiply_f0ed5a95f800c68aa9f7ea2f1322cc31_Out_2_Float);
|
|
float _Saturate_469298b4e783d887889b71dc48b4399f_Out_1_Float;
|
|
Unity_Saturate_float(_Multiply_f0ed5a95f800c68aa9f7ea2f1322cc31_Out_2_Float, _Saturate_469298b4e783d887889b71dc48b4399f_Out_1_Float);
|
|
float _Absolute_3b29f3ceceba148189d11e0195af4be2_Out_1_Float;
|
|
Unity_Absolute_float(_Saturate_469298b4e783d887889b71dc48b4399f_Out_1_Float, _Absolute_3b29f3ceceba148189d11e0195af4be2_Out_1_Float);
|
|
Bindings_BlendOverlayBaseColor_acdb3dfca72bd6b42bbc35f4613331a2_float _BlendOverlayBaseColor_369c0b6a02e62b809dc5c6ac1efddde2;
|
|
float3 _BlendOverlayBaseColor_369c0b6a02e62b809dc5c6ac1efddde2_OutVector4_1_Vector3;
|
|
SG_BlendOverlayBaseColor_acdb3dfca72bd6b42bbc35f4613331a2_float(_Branch_26165227c7a50284b87d2996dee9982c_Out_3_Vector4, _Add_b8d727bda34294808f98551e67aa852f_Out_2_Float, _Absolute_3b29f3ceceba148189d11e0195af4be2_Out_1_Float, _BlendOverlayBaseColor_369c0b6a02e62b809dc5c6ac1efddde2, _BlendOverlayBaseColor_369c0b6a02e62b809dc5c6ac1efddde2_OutVector4_1_Vector3);
|
|
UnityTexture2D _Property_9a8451520f254f84a21875f3dac8cbe3_Out_0_Texture2D = UnityBuildTexture2DStructNoScale(_CoverBaseColorMap);
|
|
float4 _Property_c853e88632d9fd85ac0e98d12083eb62_Out_0_Vector4 = _CoverTilingOffset;
|
|
float4 _Divide_1fe314f1ca9dd78fbf366bbeb40e4ccf_Out_2_Vector4;
|
|
Unity_Divide_float4(float4(1, 1, 0, 0), _Property_c853e88632d9fd85ac0e98d12083eb62_Out_0_Vector4, _Divide_1fe314f1ca9dd78fbf366bbeb40e4ccf_Out_2_Vector4);
|
|
float _Property_ee792eccbb538a878b19be5db264531e_Out_0_Float = _CoverTriplanarThreshold;
|
|
Bindings_TriplanarNM_bc609ed95f52591469ab35dbfe0efcea_float _TriplanarNM_cca4c45d91c87989990c532a04e9e8e1;
|
|
_TriplanarNM_cca4c45d91c87989990c532a04e9e8e1.WorldSpaceNormal = IN.WorldSpaceNormal;
|
|
_TriplanarNM_cca4c45d91c87989990c532a04e9e8e1.AbsoluteWorldSpacePosition = IN.AbsoluteWorldSpacePosition;
|
|
float4 _TriplanarNM_cca4c45d91c87989990c532a04e9e8e1_XYZ_1_Vector4;
|
|
float4 _TriplanarNM_cca4c45d91c87989990c532a04e9e8e1_XZ_2_Vector4;
|
|
float4 _TriplanarNM_cca4c45d91c87989990c532a04e9e8e1_YZ_3_Vector4;
|
|
float4 _TriplanarNM_cca4c45d91c87989990c532a04e9e8e1_XY_4_Vector4;
|
|
SG_TriplanarNM_bc609ed95f52591469ab35dbfe0efcea_float(_Property_9a8451520f254f84a21875f3dac8cbe3_Out_0_Texture2D, (_Divide_1fe314f1ca9dd78fbf366bbeb40e4ccf_Out_2_Vector4).x, _Property_ee792eccbb538a878b19be5db264531e_Out_0_Float, UnityBuildSamplerStateStruct(SamplerState_Linear_Repeat_Aniso8), _TriplanarNM_cca4c45d91c87989990c532a04e9e8e1, _TriplanarNM_cca4c45d91c87989990c532a04e9e8e1_XYZ_1_Vector4, _TriplanarNM_cca4c45d91c87989990c532a04e9e8e1_XZ_2_Vector4, _TriplanarNM_cca4c45d91c87989990c532a04e9e8e1_YZ_3_Vector4, _TriplanarNM_cca4c45d91c87989990c532a04e9e8e1_XY_4_Vector4);
|
|
float4 _Property_18c743619f52288dbe24e28326388b00_Out_0_Vector4 = _CoverBaseColor;
|
|
float4 _Multiply_62594f3b30470e86a813e1224c48902e_Out_2_Vector4;
|
|
Unity_Multiply_float4_float4(_TriplanarNM_cca4c45d91c87989990c532a04e9e8e1_XYZ_1_Vector4, _Property_18c743619f52288dbe24e28326388b00_Out_0_Vector4, _Multiply_62594f3b30470e86a813e1224c48902e_Out_2_Vector4);
|
|
float _Multiply_5378fc524597f98fb32eeb561a7390e9_Out_2_Float;
|
|
Unity_Multiply_float_float(_SampleTexture2D_32717b1e99785588830ceee116cbe7fc_R_4_Float, 2, _Multiply_5378fc524597f98fb32eeb561a7390e9_Out_2_Float);
|
|
float _Property_8a72d97c1c527c8f8e0cc71214498065_Out_0_Float = _CoverDarknessCurvMultply;
|
|
float _Multiply_22683a720176a788a2ce404dbddd837c_Out_2_Float;
|
|
Unity_Multiply_float_float(_Multiply_5378fc524597f98fb32eeb561a7390e9_Out_2_Float, _Property_8a72d97c1c527c8f8e0cc71214498065_Out_0_Float, _Multiply_22683a720176a788a2ce404dbddd837c_Out_2_Float);
|
|
float _Clamp_5a638fb628222d8a97865d9029554fe2_Out_3_Float;
|
|
Unity_Clamp_float(_Multiply_22683a720176a788a2ce404dbddd837c_Out_2_Float, float(0), float(1), _Clamp_5a638fb628222d8a97865d9029554fe2_Out_3_Float);
|
|
float _Absolute_11985e8863bf2b8ca0bda90bca829348_Out_1_Float;
|
|
Unity_Absolute_float(_Clamp_5a638fb628222d8a97865d9029554fe2_Out_3_Float, _Absolute_11985e8863bf2b8ca0bda90bca829348_Out_1_Float);
|
|
float _Property_aba5acef910eee88b110d565674a9e36_Out_0_Float = _CoverDarknessCurvPower;
|
|
float _Power_da9b537d80a58d85a88e72c2a5d01e7c_Out_2_Float;
|
|
Unity_Power_float(_Absolute_11985e8863bf2b8ca0bda90bca829348_Out_1_Float, _Property_aba5acef910eee88b110d565674a9e36_Out_0_Float, _Power_da9b537d80a58d85a88e72c2a5d01e7c_Out_2_Float);
|
|
float _Clamp_77228e2a7266fa8ca042eae2f0701342_Out_3_Float;
|
|
Unity_Clamp_float(_Power_da9b537d80a58d85a88e72c2a5d01e7c_Out_2_Float, float(0), float(1), _Clamp_77228e2a7266fa8ca042eae2f0701342_Out_3_Float);
|
|
float4 _Multiply_2111c8ad39d5e68caf4893a41a3bad7d_Out_2_Vector4;
|
|
Unity_Multiply_float4_float4(_Multiply_62594f3b30470e86a813e1224c48902e_Out_2_Vector4, (_Clamp_77228e2a7266fa8ca042eae2f0701342_Out_3_Float.xxxx), _Multiply_2111c8ad39d5e68caf4893a41a3bad7d_Out_2_Vector4);
|
|
float4 _Clamp_b489ebb9d7d18282a342100f4d2fa72d_Out_3_Vector4;
|
|
Unity_Clamp_float4(_Multiply_2111c8ad39d5e68caf4893a41a3bad7d_Out_2_Vector4, float4(0, 0, 0, 0), float4(1, 1, 1, 1), _Clamp_b489ebb9d7d18282a342100f4d2fa72d_Out_3_Vector4);
|
|
float _Add_7eea819e47ffe58cbb3ec5877a181444_Out_2_Float;
|
|
Unity_Add_float(_Multiply_5378fc524597f98fb32eeb561a7390e9_Out_2_Float, float(-1), _Add_7eea819e47ffe58cbb3ec5877a181444_Out_2_Float);
|
|
float _Clamp_b5e4f47c0358dc87b5f9fdb3a360e9e9_Out_3_Float;
|
|
Unity_Clamp_float(_Add_7eea819e47ffe58cbb3ec5877a181444_Out_2_Float, float(0), float(1), _Clamp_b5e4f47c0358dc87b5f9fdb3a360e9e9_Out_3_Float);
|
|
float _Property_753051c96a90798fa7d94cff4173d6e6_Out_0_Float = _CoverBrightnessCurvMultply;
|
|
float _Multiply_c650497abc44d98882ce0091d10c4356_Out_2_Float;
|
|
Unity_Multiply_float_float(_Clamp_b5e4f47c0358dc87b5f9fdb3a360e9e9_Out_3_Float, _Property_753051c96a90798fa7d94cff4173d6e6_Out_0_Float, _Multiply_c650497abc44d98882ce0091d10c4356_Out_2_Float);
|
|
float _Clamp_c508dc61e0cb2a829429559098f34f9a_Out_3_Float;
|
|
Unity_Clamp_float(_Multiply_c650497abc44d98882ce0091d10c4356_Out_2_Float, float(0), float(1), _Clamp_c508dc61e0cb2a829429559098f34f9a_Out_3_Float);
|
|
float _Absolute_2cff2da32d80c286acbb99de611f381a_Out_1_Float;
|
|
Unity_Absolute_float(_Clamp_c508dc61e0cb2a829429559098f34f9a_Out_3_Float, _Absolute_2cff2da32d80c286acbb99de611f381a_Out_1_Float);
|
|
float _Property_ce4610db7b6d0c8bb7fb318210d3e83f_Out_0_Float = _CoverBrightnessCurvPower;
|
|
float _Power_c21df4d2e5ea448281f9ac0f4a140b9e_Out_2_Float;
|
|
Unity_Power_float(_Absolute_2cff2da32d80c286acbb99de611f381a_Out_1_Float, _Property_ce4610db7b6d0c8bb7fb318210d3e83f_Out_0_Float, _Power_c21df4d2e5ea448281f9ac0f4a140b9e_Out_2_Float);
|
|
float _Clamp_fd095a9d6c2b9881ae5875ed126bf3fb_Out_3_Float;
|
|
Unity_Clamp_float(_Power_c21df4d2e5ea448281f9ac0f4a140b9e_Out_2_Float, float(0), float(1), _Clamp_fd095a9d6c2b9881ae5875ed126bf3fb_Out_3_Float);
|
|
float4 _Add_4a02758b9a29b18180516bf3c3ede263_Out_2_Vector4;
|
|
Unity_Add_float4(_Clamp_b489ebb9d7d18282a342100f4d2fa72d_Out_3_Vector4, (_Clamp_fd095a9d6c2b9881ae5875ed126bf3fb_Out_3_Float.xxxx), _Add_4a02758b9a29b18180516bf3c3ede263_Out_2_Vector4);
|
|
float4 _Clamp_632e3d64ab55648f927a79cef68f3396_Out_3_Vector4;
|
|
Unity_Clamp_float4(_Add_4a02758b9a29b18180516bf3c3ede263_Out_2_Vector4, float4(0, 0, 0, 0), float4(1, 1, 1, 1), _Clamp_632e3d64ab55648f927a79cef68f3396_Out_3_Vector4);
|
|
float4 _Branch_0c5221a996e29186a372734bf5c30a51_Out_3_Vector4;
|
|
Unity_Branch_float4(_Property_72a5c604805a7b8ebbfd7acee03656aa_Out_0_Boolean, _Clamp_632e3d64ab55648f927a79cef68f3396_Out_3_Vector4, _Multiply_62594f3b30470e86a813e1224c48902e_Out_2_Vector4, _Branch_0c5221a996e29186a372734bf5c30a51_Out_3_Vector4);
|
|
float _Multiply_6a55591ceae0dc86a971a275e316fec6_Out_2_Float;
|
|
Unity_Multiply_float_float(_SampleTexture2D_4bd08411faa60c828847f2247f06a809_R_4_Float, 2, _Multiply_6a55591ceae0dc86a971a275e316fec6_Out_2_Float);
|
|
float _Add_a86411eb4894f78f8f8f3246011b369c_Out_2_Float;
|
|
Unity_Add_float(_Multiply_6a55591ceae0dc86a971a275e316fec6_Out_2_Float, float(-1), _Add_a86411eb4894f78f8f8f3246011b369c_Out_2_Float);
|
|
float _Property_c5a049650239cf80a302d0c0f57c147a_Out_0_Float = _DetailCoverAlbedoScale;
|
|
float _Multiply_1708b01db74fe88a8c36434f8729bf41_Out_2_Float;
|
|
Unity_Multiply_float_float(_Add_a86411eb4894f78f8f8f3246011b369c_Out_2_Float, _Property_c5a049650239cf80a302d0c0f57c147a_Out_0_Float, _Multiply_1708b01db74fe88a8c36434f8729bf41_Out_2_Float);
|
|
float _Saturate_1a4899f79635918485a64fff7cea28ad_Out_1_Float;
|
|
Unity_Saturate_float(_Multiply_1708b01db74fe88a8c36434f8729bf41_Out_2_Float, _Saturate_1a4899f79635918485a64fff7cea28ad_Out_1_Float);
|
|
float _Absolute_d3dce2bb8d9f0285b5183b7f665beed8_Out_1_Float;
|
|
Unity_Absolute_float(_Saturate_1a4899f79635918485a64fff7cea28ad_Out_1_Float, _Absolute_d3dce2bb8d9f0285b5183b7f665beed8_Out_1_Float);
|
|
Bindings_BlendOverlayBaseColor_acdb3dfca72bd6b42bbc35f4613331a2_float _BlendOverlayBaseColor_ec1f397271cc818abdb95188914e6b4d;
|
|
float3 _BlendOverlayBaseColor_ec1f397271cc818abdb95188914e6b4d_OutVector4_1_Vector3;
|
|
SG_BlendOverlayBaseColor_acdb3dfca72bd6b42bbc35f4613331a2_float(_Branch_0c5221a996e29186a372734bf5c30a51_Out_3_Vector4, _Add_a86411eb4894f78f8f8f3246011b369c_Out_2_Float, _Absolute_d3dce2bb8d9f0285b5183b7f665beed8_Out_1_Float, _BlendOverlayBaseColor_ec1f397271cc818abdb95188914e6b4d, _BlendOverlayBaseColor_ec1f397271cc818abdb95188914e6b4d_OutVector4_1_Vector3);
|
|
float _Property_cb0b6597aee47880b32e852aaa0e4a71_Out_0_Boolean = _USEDYNAMICCOVERTSTATICMASKF;
|
|
float _Property_4b3f692214f8d081a043985e1adb12a1_Out_0_Float = _CoverMaskPower;
|
|
float _Multiply_10cc4ecb135f8e8ab88c475223d0eadf_Out_2_Float;
|
|
Unity_Multiply_float_float(_SampleTexture2D_32717b1e99785588830ceee116cbe7fc_A_7_Float, _Property_4b3f692214f8d081a043985e1adb12a1_Out_0_Float, _Multiply_10cc4ecb135f8e8ab88c475223d0eadf_Out_2_Float);
|
|
float _Clamp_07a501c22c6e188199bed73412ac8926_Out_3_Float;
|
|
Unity_Clamp_float(_Multiply_10cc4ecb135f8e8ab88c475223d0eadf_Out_2_Float, float(0), float(1), _Clamp_07a501c22c6e188199bed73412ac8926_Out_3_Float);
|
|
float _Split_2ada595651635e8d97bf4b82f717fcc6_R_1_Float = IN.VertexColor[0];
|
|
float _Split_2ada595651635e8d97bf4b82f717fcc6_G_2_Float = IN.VertexColor[1];
|
|
float _Split_2ada595651635e8d97bf4b82f717fcc6_B_3_Float = IN.VertexColor[2];
|
|
float _Split_2ada595651635e8d97bf4b82f717fcc6_A_4_Float = IN.VertexColor[3];
|
|
float3 _Property_9180f8dd535ba18499edac37aef4d231_Out_0_Vector3 = _CoverDirection;
|
|
float2 _Vector2_7fe7d9ef320da68f958e1ea535e2a6a8_Out_0_Vector2 = float2(_SampleTexture2D_4bd08411faa60c828847f2247f06a809_A_7_Float, _SampleTexture2D_4bd08411faa60c828847f2247f06a809_G_5_Float);
|
|
float2 _Multiply_b8d7cc078ce00d87b9a6b5241b2f1f01_Out_2_Vector2;
|
|
Unity_Multiply_float2_float2(_Vector2_7fe7d9ef320da68f958e1ea535e2a6a8_Out_0_Vector2, float2(2, 2), _Multiply_b8d7cc078ce00d87b9a6b5241b2f1f01_Out_2_Vector2);
|
|
float2 _Add_476ecfb1f47aed8bb8040bb1c44ca372_Out_2_Vector2;
|
|
Unity_Add_float2(_Multiply_b8d7cc078ce00d87b9a6b5241b2f1f01_Out_2_Vector2, float2(-1, -1), _Add_476ecfb1f47aed8bb8040bb1c44ca372_Out_2_Vector2);
|
|
float _Property_b7f40cf2664f5a819eb153af2b2eb69e_Out_0_Float = _DetailNormalScale;
|
|
float2 _Multiply_3b11e3e43551698eb19b6c6b671b6a41_Out_2_Vector2;
|
|
Unity_Multiply_float2_float2(_Add_476ecfb1f47aed8bb8040bb1c44ca372_Out_2_Vector2, (_Property_b7f40cf2664f5a819eb153af2b2eb69e_Out_0_Float.xx), _Multiply_3b11e3e43551698eb19b6c6b671b6a41_Out_2_Vector2);
|
|
float _Split_678aac70d9cb9783a49841710ce82ff8_R_1_Float = _Multiply_3b11e3e43551698eb19b6c6b671b6a41_Out_2_Vector2[0];
|
|
float _Split_678aac70d9cb9783a49841710ce82ff8_G_2_Float = _Multiply_3b11e3e43551698eb19b6c6b671b6a41_Out_2_Vector2[1];
|
|
float _Split_678aac70d9cb9783a49841710ce82ff8_B_3_Float = 0;
|
|
float _Split_678aac70d9cb9783a49841710ce82ff8_A_4_Float = 0;
|
|
float _DotProduct_7fd2e2e8b3e9ed8f9a42a0ba98e14174_Out_2_Float;
|
|
Unity_DotProduct_float2(_Multiply_3b11e3e43551698eb19b6c6b671b6a41_Out_2_Vector2, _Multiply_3b11e3e43551698eb19b6c6b671b6a41_Out_2_Vector2, _DotProduct_7fd2e2e8b3e9ed8f9a42a0ba98e14174_Out_2_Float);
|
|
float _Saturate_47bdfe8ca2c8d989a5ebbb5eb995f023_Out_1_Float;
|
|
Unity_Saturate_float(_DotProduct_7fd2e2e8b3e9ed8f9a42a0ba98e14174_Out_2_Float, _Saturate_47bdfe8ca2c8d989a5ebbb5eb995f023_Out_1_Float);
|
|
float _OneMinus_03777d2879850b838187d9d2605d7341_Out_1_Float;
|
|
Unity_OneMinus_float(_Saturate_47bdfe8ca2c8d989a5ebbb5eb995f023_Out_1_Float, _OneMinus_03777d2879850b838187d9d2605d7341_Out_1_Float);
|
|
float _SquareRoot_ca9c195aef071d8888f26cb73b749f72_Out_1_Float;
|
|
Unity_SquareRoot_float(_OneMinus_03777d2879850b838187d9d2605d7341_Out_1_Float, _SquareRoot_ca9c195aef071d8888f26cb73b749f72_Out_1_Float);
|
|
float3 _Vector3_6999cbd6a5aa908cb7c059b5f2f5b330_Out_0_Vector3 = float3(_Split_678aac70d9cb9783a49841710ce82ff8_R_1_Float, _Split_678aac70d9cb9783a49841710ce82ff8_G_2_Float, _SquareRoot_ca9c195aef071d8888f26cb73b749f72_Out_1_Float);
|
|
UnityTexture2D _Property_d2bb0a0b01239c85bd301cadeec1b3d8_Out_0_Texture2D = UnityBuildTexture2DStructNoScale(_BaseNormalMap);
|
|
Bindings_TriplanarNMn_059da9746584140498cd018db3c76047_float _TriplanarNMn_bf7f7c0e2d896289b86076b79f33d7d4;
|
|
_TriplanarNMn_bf7f7c0e2d896289b86076b79f33d7d4.WorldSpaceNormal = IN.WorldSpaceNormal;
|
|
_TriplanarNMn_bf7f7c0e2d896289b86076b79f33d7d4.WorldSpaceTangent = IN.WorldSpaceTangent;
|
|
_TriplanarNMn_bf7f7c0e2d896289b86076b79f33d7d4.WorldSpaceBiTangent = IN.WorldSpaceBiTangent;
|
|
_TriplanarNMn_bf7f7c0e2d896289b86076b79f33d7d4.AbsoluteWorldSpacePosition = IN.AbsoluteWorldSpacePosition;
|
|
float4 _TriplanarNMn_bf7f7c0e2d896289b86076b79f33d7d4_XYZ_1_Vector4;
|
|
float4 _TriplanarNMn_bf7f7c0e2d896289b86076b79f33d7d4_XZ_2_Vector4;
|
|
float4 _TriplanarNMn_bf7f7c0e2d896289b86076b79f33d7d4_YZ_3_Vector4;
|
|
float4 _TriplanarNMn_bf7f7c0e2d896289b86076b79f33d7d4_XY_4_Vector4;
|
|
SG_TriplanarNMn_059da9746584140498cd018db3c76047_float(_Property_d2bb0a0b01239c85bd301cadeec1b3d8_Out_0_Texture2D, (_Divide_6a90cebe78e620828de587523daaa7e6_Out_2_Vector4).x, _Property_3539de8c698c2981bb3c088d4ec52201_Out_0_Float, UnityBuildSamplerStateStruct(SamplerState_Linear_Repeat_Aniso8), _TriplanarNMn_bf7f7c0e2d896289b86076b79f33d7d4, _TriplanarNMn_bf7f7c0e2d896289b86076b79f33d7d4_XYZ_1_Vector4, _TriplanarNMn_bf7f7c0e2d896289b86076b79f33d7d4_XZ_2_Vector4, _TriplanarNMn_bf7f7c0e2d896289b86076b79f33d7d4_YZ_3_Vector4, _TriplanarNMn_bf7f7c0e2d896289b86076b79f33d7d4_XY_4_Vector4);
|
|
float _Property_d6baf612f8e685848732ca270b39f544_Out_0_Float = _BaseNormalScale;
|
|
float3 _NormalStrength_260139b4d5077d8b9d42de780d173b6c_Out_2_Vector3;
|
|
Unity_NormalStrength_float((_TriplanarNMn_bf7f7c0e2d896289b86076b79f33d7d4_XYZ_1_Vector4.xyz), _Property_d6baf612f8e685848732ca270b39f544_Out_0_Float, _NormalStrength_260139b4d5077d8b9d42de780d173b6c_Out_2_Vector3);
|
|
UnityTexture2D _Property_492c4e7cd40ab980bd38362624511e38_Out_0_Texture2D = UnityBuildTexture2DStructNoScale(_ShapeNormalMap);
|
|
float4 _SampleTexture2D_63aaad04c65f698e8f640de826888075_RGBA_0_Vector4 = SAMPLE_TEXTURE2D(_Property_492c4e7cd40ab980bd38362624511e38_Out_0_Texture2D.tex, _Property_492c4e7cd40ab980bd38362624511e38_Out_0_Texture2D.samplerstate, _Property_492c4e7cd40ab980bd38362624511e38_Out_0_Texture2D.GetTransformedUV(IN.uv0.xy) );
|
|
_SampleTexture2D_63aaad04c65f698e8f640de826888075_RGBA_0_Vector4.rgb = UnpackNormal(_SampleTexture2D_63aaad04c65f698e8f640de826888075_RGBA_0_Vector4);
|
|
float _SampleTexture2D_63aaad04c65f698e8f640de826888075_R_4_Float = _SampleTexture2D_63aaad04c65f698e8f640de826888075_RGBA_0_Vector4.r;
|
|
float _SampleTexture2D_63aaad04c65f698e8f640de826888075_G_5_Float = _SampleTexture2D_63aaad04c65f698e8f640de826888075_RGBA_0_Vector4.g;
|
|
float _SampleTexture2D_63aaad04c65f698e8f640de826888075_B_6_Float = _SampleTexture2D_63aaad04c65f698e8f640de826888075_RGBA_0_Vector4.b;
|
|
float _SampleTexture2D_63aaad04c65f698e8f640de826888075_A_7_Float = _SampleTexture2D_63aaad04c65f698e8f640de826888075_RGBA_0_Vector4.a;
|
|
float _Property_6c35e329e57d0e89950e24817068dbb1_Out_0_Float = _shapeNormalScale;
|
|
float3 _NormalStrength_e181a1bb2f4e35819e0f35e77346e12e_Out_2_Vector3;
|
|
Unity_NormalStrength_float((_SampleTexture2D_63aaad04c65f698e8f640de826888075_RGBA_0_Vector4.xyz), _Property_6c35e329e57d0e89950e24817068dbb1_Out_0_Float, _NormalStrength_e181a1bb2f4e35819e0f35e77346e12e_Out_2_Vector3);
|
|
float3 _NormalBlend_ead295b946c6058190c298c03bf64d0b_Out_2_Vector3;
|
|
Unity_NormalBlend_float(_NormalStrength_260139b4d5077d8b9d42de780d173b6c_Out_2_Vector3, _NormalStrength_e181a1bb2f4e35819e0f35e77346e12e_Out_2_Vector3, _NormalBlend_ead295b946c6058190c298c03bf64d0b_Out_2_Vector3);
|
|
float3 _NormalBlend_4242e1b4a785378aa59dd49e9d993ffc_Out_2_Vector3;
|
|
Unity_NormalBlend_float(_Vector3_6999cbd6a5aa908cb7c059b5f2f5b330_Out_0_Vector3, _NormalBlend_ead295b946c6058190c298c03bf64d0b_Out_2_Vector3, _NormalBlend_4242e1b4a785378aa59dd49e9d993ffc_Out_2_Vector3);
|
|
float _Property_3d4ab6ad1f1f138a96f0463f7be8b6ce_Out_0_Float = _CovershapeNormalScale;
|
|
float3 _NormalStrength_401cd5af500bd68dbc9bca19d548d0db_Out_2_Vector3;
|
|
Unity_NormalStrength_float((_SampleTexture2D_63aaad04c65f698e8f640de826888075_RGBA_0_Vector4.xyz), _Property_3d4ab6ad1f1f138a96f0463f7be8b6ce_Out_0_Float, _NormalStrength_401cd5af500bd68dbc9bca19d548d0db_Out_2_Vector3);
|
|
UnityTexture2D _Property_779695727390348d8b8a7f7ae2245af0_Out_0_Texture2D = UnityBuildTexture2DStructNoScale(_CoverNormalMap);
|
|
Bindings_TriplanarNMn_059da9746584140498cd018db3c76047_float _TriplanarNMn_ba7e211dd8095589a2939b5b239ca8e0;
|
|
_TriplanarNMn_ba7e211dd8095589a2939b5b239ca8e0.WorldSpaceNormal = IN.WorldSpaceNormal;
|
|
_TriplanarNMn_ba7e211dd8095589a2939b5b239ca8e0.WorldSpaceTangent = IN.WorldSpaceTangent;
|
|
_TriplanarNMn_ba7e211dd8095589a2939b5b239ca8e0.WorldSpaceBiTangent = IN.WorldSpaceBiTangent;
|
|
_TriplanarNMn_ba7e211dd8095589a2939b5b239ca8e0.AbsoluteWorldSpacePosition = IN.AbsoluteWorldSpacePosition;
|
|
float4 _TriplanarNMn_ba7e211dd8095589a2939b5b239ca8e0_XYZ_1_Vector4;
|
|
float4 _TriplanarNMn_ba7e211dd8095589a2939b5b239ca8e0_XZ_2_Vector4;
|
|
float4 _TriplanarNMn_ba7e211dd8095589a2939b5b239ca8e0_YZ_3_Vector4;
|
|
float4 _TriplanarNMn_ba7e211dd8095589a2939b5b239ca8e0_XY_4_Vector4;
|
|
SG_TriplanarNMn_059da9746584140498cd018db3c76047_float(_Property_779695727390348d8b8a7f7ae2245af0_Out_0_Texture2D, (_Divide_1fe314f1ca9dd78fbf366bbeb40e4ccf_Out_2_Vector4).x, _Property_ee792eccbb538a878b19be5db264531e_Out_0_Float, UnityBuildSamplerStateStruct(SamplerState_Linear_Repeat_Aniso8), _TriplanarNMn_ba7e211dd8095589a2939b5b239ca8e0, _TriplanarNMn_ba7e211dd8095589a2939b5b239ca8e0_XYZ_1_Vector4, _TriplanarNMn_ba7e211dd8095589a2939b5b239ca8e0_XZ_2_Vector4, _TriplanarNMn_ba7e211dd8095589a2939b5b239ca8e0_YZ_3_Vector4, _TriplanarNMn_ba7e211dd8095589a2939b5b239ca8e0_XY_4_Vector4);
|
|
float _Property_5aba050988182f8aad3ec6b2c7e57899_Out_0_Float = _CoverNormalBlendHardness;
|
|
float3 _NormalStrength_dac4b0abfa8a1f82b7103b18f6e6e1b7_Out_2_Vector3;
|
|
Unity_NormalStrength_float((_TriplanarNMn_ba7e211dd8095589a2939b5b239ca8e0_XYZ_1_Vector4.xyz), _Property_5aba050988182f8aad3ec6b2c7e57899_Out_0_Float, _NormalStrength_dac4b0abfa8a1f82b7103b18f6e6e1b7_Out_2_Vector3);
|
|
float3 _NormalBlend_4058aded292b7389ade16c695a6cae6c_Out_2_Vector3;
|
|
Unity_NormalBlend_float(_NormalStrength_401cd5af500bd68dbc9bca19d548d0db_Out_2_Vector3, _NormalStrength_dac4b0abfa8a1f82b7103b18f6e6e1b7_Out_2_Vector3, _NormalBlend_4058aded292b7389ade16c695a6cae6c_Out_2_Vector3);
|
|
float3 _Multiply_0e22f9c6ff55a188b2533f1889a53038_Out_2_Vector3;
|
|
Unity_Multiply_float3_float3(_Property_9180f8dd535ba18499edac37aef4d231_Out_0_Vector3, IN.WorldSpaceNormal, _Multiply_0e22f9c6ff55a188b2533f1889a53038_Out_2_Vector3);
|
|
float _Split_89708601b575b58c852cd55e4fb248d1_R_1_Float = _Multiply_0e22f9c6ff55a188b2533f1889a53038_Out_2_Vector3[0];
|
|
float _Split_89708601b575b58c852cd55e4fb248d1_G_2_Float = _Multiply_0e22f9c6ff55a188b2533f1889a53038_Out_2_Vector3[1];
|
|
float _Split_89708601b575b58c852cd55e4fb248d1_B_3_Float = _Multiply_0e22f9c6ff55a188b2533f1889a53038_Out_2_Vector3[2];
|
|
float _Split_89708601b575b58c852cd55e4fb248d1_A_4_Float = 0;
|
|
float _Add_bfe29b97a9ce3b80aa4cd689be8c4a97_Out_2_Float;
|
|
Unity_Add_float(_Split_89708601b575b58c852cd55e4fb248d1_R_1_Float, _Split_89708601b575b58c852cd55e4fb248d1_G_2_Float, _Add_bfe29b97a9ce3b80aa4cd689be8c4a97_Out_2_Float);
|
|
float _Add_f3152b42a227088aa1439fc1fe8451cc_Out_2_Float;
|
|
Unity_Add_float(_Add_bfe29b97a9ce3b80aa4cd689be8c4a97_Out_2_Float, _Split_89708601b575b58c852cd55e4fb248d1_B_3_Float, _Add_f3152b42a227088aa1439fc1fe8451cc_Out_2_Float);
|
|
float _Property_deabceefa3e3438a8ad71fa67fc5b070_Out_0_Float = _Cover_Amount;
|
|
float _Property_2fba2d762d74b8828ff566c10bc48e86_Out_0_Float = _Cover_Amount_Grow_Speed;
|
|
float _Subtract_1f990262a41ce88f96a47df66dcb4971_Out_2_Float;
|
|
Unity_Subtract_float(float(4), _Property_2fba2d762d74b8828ff566c10bc48e86_Out_0_Float, _Subtract_1f990262a41ce88f96a47df66dcb4971_Out_2_Float);
|
|
float _Divide_a89e05be4802ac80886ad6bdeadc4949_Out_2_Float;
|
|
Unity_Divide_float(_Property_deabceefa3e3438a8ad71fa67fc5b070_Out_0_Float, _Subtract_1f990262a41ce88f96a47df66dcb4971_Out_2_Float, _Divide_a89e05be4802ac80886ad6bdeadc4949_Out_2_Float);
|
|
float _Absolute_2b58f48ab94a3087a726a2b03c51e2c6_Out_1_Float;
|
|
Unity_Absolute_float(_Divide_a89e05be4802ac80886ad6bdeadc4949_Out_2_Float, _Absolute_2b58f48ab94a3087a726a2b03c51e2c6_Out_1_Float);
|
|
float _Power_6695d49b8b82468ea686b66e6749260b_Out_2_Float;
|
|
Unity_Power_float(_Absolute_2b58f48ab94a3087a726a2b03c51e2c6_Out_1_Float, _Subtract_1f990262a41ce88f96a47df66dcb4971_Out_2_Float, _Power_6695d49b8b82468ea686b66e6749260b_Out_2_Float);
|
|
float _Clamp_94f0310fee13798bad4e26e2381a94d4_Out_3_Float;
|
|
Unity_Clamp_float(_Power_6695d49b8b82468ea686b66e6749260b_Out_2_Float, float(0), float(2), _Clamp_94f0310fee13798bad4e26e2381a94d4_Out_3_Float);
|
|
float _Multiply_999692515a117385ade114d924fa589a_Out_2_Float;
|
|
Unity_Multiply_float_float(_Add_f3152b42a227088aa1439fc1fe8451cc_Out_2_Float, _Clamp_94f0310fee13798bad4e26e2381a94d4_Out_3_Float, _Multiply_999692515a117385ade114d924fa589a_Out_2_Float);
|
|
float _Saturate_f811eeeeb3229d83917aa8be2c36831e_Out_1_Float;
|
|
Unity_Saturate_float(_Multiply_999692515a117385ade114d924fa589a_Out_2_Float, _Saturate_f811eeeeb3229d83917aa8be2c36831e_Out_1_Float);
|
|
float _Clamp_4c470807610adb8c8488f125c0af7bb5_Out_3_Float;
|
|
Unity_Clamp_float(_Add_f3152b42a227088aa1439fc1fe8451cc_Out_2_Float, float(0), float(0.9999), _Clamp_4c470807610adb8c8488f125c0af7bb5_Out_3_Float);
|
|
float _Property_765e3d021aec6d8f9f8b3174d5a06980_Out_0_Float = _Cover_Max_Angle;
|
|
float _Divide_9d9fc267a9ebcf84b378fdd4c66ff34d_Out_2_Float;
|
|
Unity_Divide_float(_Property_765e3d021aec6d8f9f8b3174d5a06980_Out_0_Float, float(45), _Divide_9d9fc267a9ebcf84b378fdd4c66ff34d_Out_2_Float);
|
|
float _OneMinus_f074fba0be46e688aa75f5377832251a_Out_1_Float;
|
|
Unity_OneMinus_float(_Divide_9d9fc267a9ebcf84b378fdd4c66ff34d_Out_2_Float, _OneMinus_f074fba0be46e688aa75f5377832251a_Out_1_Float);
|
|
float _Subtract_0b0cd6145e351c87a68366348828154d_Out_2_Float;
|
|
Unity_Subtract_float(_Clamp_4c470807610adb8c8488f125c0af7bb5_Out_3_Float, _OneMinus_f074fba0be46e688aa75f5377832251a_Out_1_Float, _Subtract_0b0cd6145e351c87a68366348828154d_Out_2_Float);
|
|
float _Clamp_30607c0c4e04e5879d4061a1f7688421_Out_3_Float;
|
|
Unity_Clamp_float(_Subtract_0b0cd6145e351c87a68366348828154d_Out_2_Float, float(0), float(2), _Clamp_30607c0c4e04e5879d4061a1f7688421_Out_3_Float);
|
|
float _Divide_cfe09f3bd2005485a3c2229367309962_Out_2_Float;
|
|
Unity_Divide_float(float(1), _Divide_9d9fc267a9ebcf84b378fdd4c66ff34d_Out_2_Float, _Divide_cfe09f3bd2005485a3c2229367309962_Out_2_Float);
|
|
float _Multiply_022be2eb9027988b9d5d4c1392749347_Out_2_Float;
|
|
Unity_Multiply_float_float(_Clamp_30607c0c4e04e5879d4061a1f7688421_Out_3_Float, _Divide_cfe09f3bd2005485a3c2229367309962_Out_2_Float, _Multiply_022be2eb9027988b9d5d4c1392749347_Out_2_Float);
|
|
float _Absolute_2fed84623df90f8ba200de68955721fd_Out_1_Float;
|
|
Unity_Absolute_float(_Multiply_022be2eb9027988b9d5d4c1392749347_Out_2_Float, _Absolute_2fed84623df90f8ba200de68955721fd_Out_1_Float);
|
|
float _Property_b79c921e30793a8e84330b3341539232_Out_0_Float = _CoverHardness;
|
|
float _Power_b9ddee06dfd0b880880990743bc10612_Out_2_Float;
|
|
Unity_Power_float(_Absolute_2fed84623df90f8ba200de68955721fd_Out_1_Float, _Property_b79c921e30793a8e84330b3341539232_Out_0_Float, _Power_b9ddee06dfd0b880880990743bc10612_Out_2_Float);
|
|
float _Property_c82936191f294c89b76f2d1809168f87_Out_0_Float = _Cover_Min_Height;
|
|
float _OneMinus_f0918ccb4f747b8e83e39d82dc3b5ca9_Out_1_Float;
|
|
Unity_OneMinus_float(_Property_c82936191f294c89b76f2d1809168f87_Out_0_Float, _OneMinus_f0918ccb4f747b8e83e39d82dc3b5ca9_Out_1_Float);
|
|
float _Split_0e80ce6f80cff18f87a043d1e3eecd08_R_1_Float = IN.AbsoluteWorldSpacePosition[0];
|
|
float _Split_0e80ce6f80cff18f87a043d1e3eecd08_G_2_Float = IN.AbsoluteWorldSpacePosition[1];
|
|
float _Split_0e80ce6f80cff18f87a043d1e3eecd08_B_3_Float = IN.AbsoluteWorldSpacePosition[2];
|
|
float _Split_0e80ce6f80cff18f87a043d1e3eecd08_A_4_Float = 0;
|
|
float _Add_60b3bb4cdad6e88b8c097c5b08daa7d0_Out_2_Float;
|
|
Unity_Add_float(_OneMinus_f0918ccb4f747b8e83e39d82dc3b5ca9_Out_1_Float, _Split_0e80ce6f80cff18f87a043d1e3eecd08_G_2_Float, _Add_60b3bb4cdad6e88b8c097c5b08daa7d0_Out_2_Float);
|
|
float _Add_1898d6f46901df809c68b5241b2e9c37_Out_2_Float;
|
|
Unity_Add_float(_Add_60b3bb4cdad6e88b8c097c5b08daa7d0_Out_2_Float, float(1), _Add_1898d6f46901df809c68b5241b2e9c37_Out_2_Float);
|
|
float _Clamp_25d6140fa3ff3a8f956f99005adace2e_Out_3_Float;
|
|
Unity_Clamp_float(_Add_1898d6f46901df809c68b5241b2e9c37_Out_2_Float, float(0), float(1), _Clamp_25d6140fa3ff3a8f956f99005adace2e_Out_3_Float);
|
|
float _Property_6094a52a4f01fd8da5ea847b69b6941c_Out_0_Float = _Cover_Min_Height_Blending;
|
|
float _Add_dc69668fc7f1a586a754713499f71d99_Out_2_Float;
|
|
Unity_Add_float(_Add_60b3bb4cdad6e88b8c097c5b08daa7d0_Out_2_Float, _Property_6094a52a4f01fd8da5ea847b69b6941c_Out_0_Float, _Add_dc69668fc7f1a586a754713499f71d99_Out_2_Float);
|
|
float _Divide_63e32406c8773d83bbf2e244faf8328f_Out_2_Float;
|
|
Unity_Divide_float(_Add_dc69668fc7f1a586a754713499f71d99_Out_2_Float, _Add_60b3bb4cdad6e88b8c097c5b08daa7d0_Out_2_Float, _Divide_63e32406c8773d83bbf2e244faf8328f_Out_2_Float);
|
|
float _OneMinus_ec22d21ddfa84288b6f750e9fdb107b9_Out_1_Float;
|
|
Unity_OneMinus_float(_Divide_63e32406c8773d83bbf2e244faf8328f_Out_2_Float, _OneMinus_ec22d21ddfa84288b6f750e9fdb107b9_Out_1_Float);
|
|
float _Add_a1206af8cbfbbe8081046db1247aba04_Out_2_Float;
|
|
Unity_Add_float(_OneMinus_ec22d21ddfa84288b6f750e9fdb107b9_Out_1_Float, float(-0.5), _Add_a1206af8cbfbbe8081046db1247aba04_Out_2_Float);
|
|
float _Clamp_640b5884b29f188987c157ad5e6e6959_Out_3_Float;
|
|
Unity_Clamp_float(_Add_a1206af8cbfbbe8081046db1247aba04_Out_2_Float, float(0), float(1), _Clamp_640b5884b29f188987c157ad5e6e6959_Out_3_Float);
|
|
float _Add_cfdb6daf617665838bb05910fa9505df_Out_2_Float;
|
|
Unity_Add_float(_Clamp_25d6140fa3ff3a8f956f99005adace2e_Out_3_Float, _Clamp_640b5884b29f188987c157ad5e6e6959_Out_3_Float, _Add_cfdb6daf617665838bb05910fa9505df_Out_2_Float);
|
|
float _Clamp_552ef7e5cf91408a982297885971db7e_Out_3_Float;
|
|
Unity_Clamp_float(_Add_cfdb6daf617665838bb05910fa9505df_Out_2_Float, float(0), float(1), _Clamp_552ef7e5cf91408a982297885971db7e_Out_3_Float);
|
|
float _Multiply_8f8db9c494f4fd869809fc45531df628_Out_2_Float;
|
|
Unity_Multiply_float_float(_Power_b9ddee06dfd0b880880990743bc10612_Out_2_Float, _Clamp_552ef7e5cf91408a982297885971db7e_Out_3_Float, _Multiply_8f8db9c494f4fd869809fc45531df628_Out_2_Float);
|
|
float _Multiply_60075aa07d29d285b3c1ee531e5b5cb3_Out_2_Float;
|
|
Unity_Multiply_float_float(_Saturate_f811eeeeb3229d83917aa8be2c36831e_Out_1_Float, _Multiply_8f8db9c494f4fd869809fc45531df628_Out_2_Float, _Multiply_60075aa07d29d285b3c1ee531e5b5cb3_Out_2_Float);
|
|
float3 _Lerp_453c8bc667315a8fa37a93affb877753_Out_3_Vector3;
|
|
Unity_Lerp_float3(_NormalBlend_4242e1b4a785378aa59dd49e9d993ffc_Out_2_Vector3, _NormalBlend_4058aded292b7389ade16c695a6cae6c_Out_2_Vector3, (_Multiply_60075aa07d29d285b3c1ee531e5b5cb3_Out_2_Float.xxx), _Lerp_453c8bc667315a8fa37a93affb877753_Out_3_Vector3);
|
|
float3 _Transform_a87113b0be9dfa8eaf6932ed645aa845_Out_1_Vector3;
|
|
{
|
|
float3x3 tangentTransform = float3x3(IN.WorldSpaceTangent, IN.WorldSpaceBiTangent, IN.WorldSpaceNormal);
|
|
_Transform_a87113b0be9dfa8eaf6932ed645aa845_Out_1_Vector3 = TransformTangentToWorldDir(_Lerp_453c8bc667315a8fa37a93affb877753_Out_3_Vector3.xyz, tangentTransform, false).xyz;
|
|
}
|
|
float3 _Multiply_f6e009bd5c0fd18c99ac72f233476fe5_Out_2_Vector3;
|
|
Unity_Multiply_float3_float3(_Property_9180f8dd535ba18499edac37aef4d231_Out_0_Vector3, _Transform_a87113b0be9dfa8eaf6932ed645aa845_Out_1_Vector3, _Multiply_f6e009bd5c0fd18c99ac72f233476fe5_Out_2_Vector3);
|
|
float _Split_96f0a5b75c0e0b889dbbccd04bc2aaaa_R_1_Float = _Multiply_f6e009bd5c0fd18c99ac72f233476fe5_Out_2_Vector3[0];
|
|
float _Split_96f0a5b75c0e0b889dbbccd04bc2aaaa_G_2_Float = _Multiply_f6e009bd5c0fd18c99ac72f233476fe5_Out_2_Vector3[1];
|
|
float _Split_96f0a5b75c0e0b889dbbccd04bc2aaaa_B_3_Float = _Multiply_f6e009bd5c0fd18c99ac72f233476fe5_Out_2_Vector3[2];
|
|
float _Split_96f0a5b75c0e0b889dbbccd04bc2aaaa_A_4_Float = 0;
|
|
float _Add_07028d5174d9f88594da40d46502bc13_Out_2_Float;
|
|
Unity_Add_float(_Split_96f0a5b75c0e0b889dbbccd04bc2aaaa_R_1_Float, _Split_96f0a5b75c0e0b889dbbccd04bc2aaaa_G_2_Float, _Add_07028d5174d9f88594da40d46502bc13_Out_2_Float);
|
|
float _Add_93af6c0f8ee9a3898ca51358a213b69f_Out_2_Float;
|
|
Unity_Add_float(_Add_07028d5174d9f88594da40d46502bc13_Out_2_Float, _Split_96f0a5b75c0e0b889dbbccd04bc2aaaa_B_3_Float, _Add_93af6c0f8ee9a3898ca51358a213b69f_Out_2_Float);
|
|
float _Multiply_77421b936cb9d68299ef6791b83fa867_Out_2_Float;
|
|
Unity_Multiply_float_float(_Add_93af6c0f8ee9a3898ca51358a213b69f_Out_2_Float, _Clamp_94f0310fee13798bad4e26e2381a94d4_Out_3_Float, _Multiply_77421b936cb9d68299ef6791b83fa867_Out_2_Float);
|
|
float _Multiply_ac6769fbe7188685a7537e5ac2c6bfa9_Out_2_Float;
|
|
Unity_Multiply_float_float(_Clamp_94f0310fee13798bad4e26e2381a94d4_Out_3_Float, _Property_b79c921e30793a8e84330b3341539232_Out_0_Float, _Multiply_ac6769fbe7188685a7537e5ac2c6bfa9_Out_2_Float);
|
|
float _Multiply_37a341e0d9783683aa8d5b7001acced1_Out_2_Float;
|
|
Unity_Multiply_float_float(_Multiply_ac6769fbe7188685a7537e5ac2c6bfa9_Out_2_Float, _Multiply_8f8db9c494f4fd869809fc45531df628_Out_2_Float, _Multiply_37a341e0d9783683aa8d5b7001acced1_Out_2_Float);
|
|
float _Multiply_02fa8aa66970b281b4a325dc68f407b9_Out_2_Float;
|
|
Unity_Multiply_float_float(_Multiply_77421b936cb9d68299ef6791b83fa867_Out_2_Float, _Multiply_37a341e0d9783683aa8d5b7001acced1_Out_2_Float, _Multiply_02fa8aa66970b281b4a325dc68f407b9_Out_2_Float);
|
|
UnityTexture2D _Property_fd2df7ee33755280948b4c47585d4323_Out_0_Texture2D = UnityBuildTexture2DStructNoScale(_CoverMaskMap);
|
|
Bindings_TriplanarNM_bc609ed95f52591469ab35dbfe0efcea_float _TriplanarNM_e307cfdc6531d2838aa3dfa51fc3913f;
|
|
_TriplanarNM_e307cfdc6531d2838aa3dfa51fc3913f.WorldSpaceNormal = IN.WorldSpaceNormal;
|
|
_TriplanarNM_e307cfdc6531d2838aa3dfa51fc3913f.AbsoluteWorldSpacePosition = IN.AbsoluteWorldSpacePosition;
|
|
float4 _TriplanarNM_e307cfdc6531d2838aa3dfa51fc3913f_XYZ_1_Vector4;
|
|
float4 _TriplanarNM_e307cfdc6531d2838aa3dfa51fc3913f_XZ_2_Vector4;
|
|
float4 _TriplanarNM_e307cfdc6531d2838aa3dfa51fc3913f_YZ_3_Vector4;
|
|
float4 _TriplanarNM_e307cfdc6531d2838aa3dfa51fc3913f_XY_4_Vector4;
|
|
SG_TriplanarNM_bc609ed95f52591469ab35dbfe0efcea_float(_Property_fd2df7ee33755280948b4c47585d4323_Out_0_Texture2D, (_Divide_1fe314f1ca9dd78fbf366bbeb40e4ccf_Out_2_Vector4).x, _Property_ee792eccbb538a878b19be5db264531e_Out_0_Float, UnityBuildSamplerStateStruct(SamplerState_Linear_Repeat_Aniso8), _TriplanarNM_e307cfdc6531d2838aa3dfa51fc3913f, _TriplanarNM_e307cfdc6531d2838aa3dfa51fc3913f_XYZ_1_Vector4, _TriplanarNM_e307cfdc6531d2838aa3dfa51fc3913f_XZ_2_Vector4, _TriplanarNM_e307cfdc6531d2838aa3dfa51fc3913f_YZ_3_Vector4, _TriplanarNM_e307cfdc6531d2838aa3dfa51fc3913f_XY_4_Vector4);
|
|
float _Split_fe834aed1172f284a73d2d6810bdb696_R_1_Float = _TriplanarNM_e307cfdc6531d2838aa3dfa51fc3913f_XYZ_1_Vector4[0];
|
|
float _Split_fe834aed1172f284a73d2d6810bdb696_G_2_Float = _TriplanarNM_e307cfdc6531d2838aa3dfa51fc3913f_XYZ_1_Vector4[1];
|
|
float _Split_fe834aed1172f284a73d2d6810bdb696_B_3_Float = _TriplanarNM_e307cfdc6531d2838aa3dfa51fc3913f_XYZ_1_Vector4[2];
|
|
float _Split_fe834aed1172f284a73d2d6810bdb696_A_4_Float = _TriplanarNM_e307cfdc6531d2838aa3dfa51fc3913f_XYZ_1_Vector4[3];
|
|
float _Property_b5f7a30c2ea202858ea263fd2a5a46c6_Out_0_Float = _CoverHeightMapMin;
|
|
float _Property_f86678f1d28c0483ba1ddccf49ee52f7_Out_0_Float = _CoverHeightMapMax;
|
|
float2 _Vector2_b5c01a0d88900d87a8a819b340151fb6_Out_0_Vector2 = float2(_Property_b5f7a30c2ea202858ea263fd2a5a46c6_Out_0_Float, _Property_f86678f1d28c0483ba1ddccf49ee52f7_Out_0_Float);
|
|
float _Property_82b4f7f3bf3b4382bd69876479a9e350_Out_0_Float = _CoverHeightMapOffset;
|
|
float2 _Add_6020f54fd1e6798e8e76bfdcad62759a_Out_2_Vector2;
|
|
Unity_Add_float2(_Vector2_b5c01a0d88900d87a8a819b340151fb6_Out_0_Vector2, (_Property_82b4f7f3bf3b4382bd69876479a9e350_Out_0_Float.xx), _Add_6020f54fd1e6798e8e76bfdcad62759a_Out_2_Vector2);
|
|
float _Remap_65ceff40294d1e8aae6051445b9fdbc8_Out_3_Float;
|
|
Unity_Remap_float(_Split_fe834aed1172f284a73d2d6810bdb696_B_3_Float, float2 (0, 1), _Add_6020f54fd1e6798e8e76bfdcad62759a_Out_2_Vector2, _Remap_65ceff40294d1e8aae6051445b9fdbc8_Out_3_Float);
|
|
float _Multiply_bb0edd30580dba8b89213d9c5b1ef857_Out_2_Float;
|
|
Unity_Multiply_float_float(_Multiply_02fa8aa66970b281b4a325dc68f407b9_Out_2_Float, _Remap_65ceff40294d1e8aae6051445b9fdbc8_Out_3_Float, _Multiply_bb0edd30580dba8b89213d9c5b1ef857_Out_2_Float);
|
|
float _Multiply_484dd7b77d58aa88bf99c82cfe77c774_Out_2_Float;
|
|
Unity_Multiply_float_float(_Split_2ada595651635e8d97bf4b82f717fcc6_G_2_Float, _Multiply_bb0edd30580dba8b89213d9c5b1ef857_Out_2_Float, _Multiply_484dd7b77d58aa88bf99c82cfe77c774_Out_2_Float);
|
|
float _Saturate_d39fa9bab8cc8a8fa35db28d4dbc74ab_Out_1_Float;
|
|
Unity_Saturate_float(_Multiply_484dd7b77d58aa88bf99c82cfe77c774_Out_2_Float, _Saturate_d39fa9bab8cc8a8fa35db28d4dbc74ab_Out_1_Float);
|
|
float _Multiply_6957741a4923cc8db84ac72df2e194a8_Out_2_Float;
|
|
Unity_Multiply_float_float(_Clamp_07a501c22c6e188199bed73412ac8926_Out_3_Float, _Saturate_d39fa9bab8cc8a8fa35db28d4dbc74ab_Out_1_Float, _Multiply_6957741a4923cc8db84ac72df2e194a8_Out_2_Float);
|
|
float _Branch_3ccf365d359214809d30b6430d863e3f_Out_3_Float;
|
|
Unity_Branch_float(_Property_cb0b6597aee47880b32e852aaa0e4a71_Out_0_Boolean, _Multiply_6957741a4923cc8db84ac72df2e194a8_Out_2_Float, _Clamp_07a501c22c6e188199bed73412ac8926_Out_3_Float, _Branch_3ccf365d359214809d30b6430d863e3f_Out_3_Float);
|
|
float3 _Lerp_ee1b6587de2afe82942e8476d303d598_Out_3_Vector3;
|
|
Unity_Lerp_float3(_BlendOverlayBaseColor_369c0b6a02e62b809dc5c6ac1efddde2_OutVector4_1_Vector3, _BlendOverlayBaseColor_ec1f397271cc818abdb95188914e6b4d_OutVector4_1_Vector3, (_Branch_3ccf365d359214809d30b6430d863e3f_Out_3_Float.xxx), _Lerp_ee1b6587de2afe82942e8476d303d598_Out_3_Vector3);
|
|
float4 _Property_c500db71e51fef8daff29f346c122e57_Out_0_Vector4 = _WetColor;
|
|
float3 _Multiply_89461014b078f787a0724725c54fb934_Out_2_Vector3;
|
|
Unity_Multiply_float3_float3((_Property_c500db71e51fef8daff29f346c122e57_Out_0_Vector4.xyz), _Lerp_ee1b6587de2afe82942e8476d303d598_Out_3_Vector3, _Multiply_89461014b078f787a0724725c54fb934_Out_2_Vector3);
|
|
float _OneMinus_e16dfb812ec64b8891c541171687142f_Out_1_Float;
|
|
Unity_OneMinus_float(_Split_2ada595651635e8d97bf4b82f717fcc6_R_1_Float, _OneMinus_e16dfb812ec64b8891c541171687142f_Out_1_Float);
|
|
float3 _Lerp_43bc7a9493df5a829abf080ee4ad3298_Out_3_Vector3;
|
|
Unity_Lerp_float3(_Lerp_ee1b6587de2afe82942e8476d303d598_Out_3_Vector3, _Multiply_89461014b078f787a0724725c54fb934_Out_2_Vector3, (_OneMinus_e16dfb812ec64b8891c541171687142f_Out_1_Float.xxx), _Lerp_43bc7a9493df5a829abf080ee4ad3298_Out_3_Vector3);
|
|
UnityTexture2D _Property_8e909eb873a4cd8e9af98a90a84fdde8_Out_0_Texture2D = UnityBuildTexture2DStructNoScale(_BaseMaskMap);
|
|
Bindings_TriplanarNM_bc609ed95f52591469ab35dbfe0efcea_float _TriplanarNM_52e6c67b7de4708f80a463a880607c97;
|
|
_TriplanarNM_52e6c67b7de4708f80a463a880607c97.WorldSpaceNormal = IN.WorldSpaceNormal;
|
|
_TriplanarNM_52e6c67b7de4708f80a463a880607c97.AbsoluteWorldSpacePosition = IN.AbsoluteWorldSpacePosition;
|
|
float4 _TriplanarNM_52e6c67b7de4708f80a463a880607c97_XYZ_1_Vector4;
|
|
float4 _TriplanarNM_52e6c67b7de4708f80a463a880607c97_XZ_2_Vector4;
|
|
float4 _TriplanarNM_52e6c67b7de4708f80a463a880607c97_YZ_3_Vector4;
|
|
float4 _TriplanarNM_52e6c67b7de4708f80a463a880607c97_XY_4_Vector4;
|
|
SG_TriplanarNM_bc609ed95f52591469ab35dbfe0efcea_float(_Property_8e909eb873a4cd8e9af98a90a84fdde8_Out_0_Texture2D, (_Divide_6a90cebe78e620828de587523daaa7e6_Out_2_Vector4).x, _Property_3539de8c698c2981bb3c088d4ec52201_Out_0_Float, UnityBuildSamplerStateStruct(SamplerState_Linear_Repeat_Aniso8), _TriplanarNM_52e6c67b7de4708f80a463a880607c97, _TriplanarNM_52e6c67b7de4708f80a463a880607c97_XYZ_1_Vector4, _TriplanarNM_52e6c67b7de4708f80a463a880607c97_XZ_2_Vector4, _TriplanarNM_52e6c67b7de4708f80a463a880607c97_YZ_3_Vector4, _TriplanarNM_52e6c67b7de4708f80a463a880607c97_XY_4_Vector4);
|
|
float _Split_79d9d761d63eaa8c97fb3cb7fae0c380_R_1_Float = _TriplanarNM_52e6c67b7de4708f80a463a880607c97_XYZ_1_Vector4[0];
|
|
float _Split_79d9d761d63eaa8c97fb3cb7fae0c380_G_2_Float = _TriplanarNM_52e6c67b7de4708f80a463a880607c97_XYZ_1_Vector4[1];
|
|
float _Split_79d9d761d63eaa8c97fb3cb7fae0c380_B_3_Float = _TriplanarNM_52e6c67b7de4708f80a463a880607c97_XYZ_1_Vector4[2];
|
|
float _Split_79d9d761d63eaa8c97fb3cb7fae0c380_A_4_Float = _TriplanarNM_52e6c67b7de4708f80a463a880607c97_XYZ_1_Vector4[3];
|
|
float _Property_b97916566d1fc587b95e8ec7fe8bd775_Out_0_Float = _BaseMetallic;
|
|
float _Multiply_d0c8d83444dbe38588583551936c7394_Out_2_Float;
|
|
Unity_Multiply_float_float(_Split_79d9d761d63eaa8c97fb3cb7fae0c380_R_1_Float, _Property_b97916566d1fc587b95e8ec7fe8bd775_Out_0_Float, _Multiply_d0c8d83444dbe38588583551936c7394_Out_2_Float);
|
|
float _Property_b187bbc548f3378caa8c964ca81707ca_Out_0_Float = _BaseAORemapMin;
|
|
float _Property_f06b327a4a8a7881a968eb399edf1d5c_Out_0_Float = _BaseAORemapMax;
|
|
float2 _Vector2_e267d722f88ada8da2d7edf8f7c0261d_Out_0_Vector2 = float2(_Property_b187bbc548f3378caa8c964ca81707ca_Out_0_Float, _Property_f06b327a4a8a7881a968eb399edf1d5c_Out_0_Float);
|
|
float _Remap_ad3c26564c54aa8cbb2f81aa114b3b78_Out_3_Float;
|
|
Unity_Remap_float(_Split_79d9d761d63eaa8c97fb3cb7fae0c380_G_2_Float, float2 (0, 1), _Vector2_e267d722f88ada8da2d7edf8f7c0261d_Out_0_Vector2, _Remap_ad3c26564c54aa8cbb2f81aa114b3b78_Out_3_Float);
|
|
float _Property_9a46e81c228dd0858cfdfc248fcb5efd_Out_0_Float = _BaseSmoothnessRemapMin;
|
|
float _Property_4bb3b70a3720ae8ea49e0f195b665d1f_Out_0_Float = _BaseSmoothnessRemapMax;
|
|
float2 _Vector2_6cef82af5d99208da4f2447a8ae60b4b_Out_0_Vector2 = float2(_Property_9a46e81c228dd0858cfdfc248fcb5efd_Out_0_Float, _Property_4bb3b70a3720ae8ea49e0f195b665d1f_Out_0_Float);
|
|
float _Remap_e30adbbf5d116285964ef079df15b895_Out_3_Float;
|
|
Unity_Remap_float(_Split_79d9d761d63eaa8c97fb3cb7fae0c380_A_4_Float, float2 (0, 1), _Vector2_6cef82af5d99208da4f2447a8ae60b4b_Out_0_Vector2, _Remap_e30adbbf5d116285964ef079df15b895_Out_3_Float);
|
|
float _Multiply_794172f65d2acd8981bc0e2ecc71376e_Out_2_Float;
|
|
Unity_Multiply_float_float(_SampleTexture2D_4bd08411faa60c828847f2247f06a809_B_6_Float, 2, _Multiply_794172f65d2acd8981bc0e2ecc71376e_Out_2_Float);
|
|
float _Add_dedefe53d91ea08c81d7a6d9071b0263_Out_2_Float;
|
|
Unity_Add_float(_Multiply_794172f65d2acd8981bc0e2ecc71376e_Out_2_Float, float(-1), _Add_dedefe53d91ea08c81d7a6d9071b0263_Out_2_Float);
|
|
float _Property_039bed9aac95ec8fa510fea3c4904280_Out_0_Float = _DetailSmoothnessScale;
|
|
float _Multiply_eb0a55c9be8cee86b9847c24f0e5be60_Out_2_Float;
|
|
Unity_Multiply_float_float(_Add_dedefe53d91ea08c81d7a6d9071b0263_Out_2_Float, _Property_039bed9aac95ec8fa510fea3c4904280_Out_0_Float, _Multiply_eb0a55c9be8cee86b9847c24f0e5be60_Out_2_Float);
|
|
float _Saturate_ca849f42c1cc238cb8fb1eb04fbfb9dd_Out_1_Float;
|
|
Unity_Saturate_float(_Multiply_eb0a55c9be8cee86b9847c24f0e5be60_Out_2_Float, _Saturate_ca849f42c1cc238cb8fb1eb04fbfb9dd_Out_1_Float);
|
|
float _Absolute_bc7994d4f833e382b37b5718ee583259_Out_1_Float;
|
|
Unity_Absolute_float(_Saturate_ca849f42c1cc238cb8fb1eb04fbfb9dd_Out_1_Float, _Absolute_bc7994d4f833e382b37b5718ee583259_Out_1_Float);
|
|
Bindings_BlendOverlayDetailSmoothness_06e12138dc89c0040b45a57abe520a1a_float _BlendOverlayDetailSmoothness_5a03404db5a34885a089f1aee363667f;
|
|
float _BlendOverlayDetailSmoothness_5a03404db5a34885a089f1aee363667f_SmoothnessOverlay_1_Float;
|
|
SG_BlendOverlayDetailSmoothness_06e12138dc89c0040b45a57abe520a1a_float(_Remap_e30adbbf5d116285964ef079df15b895_Out_3_Float, _Add_dedefe53d91ea08c81d7a6d9071b0263_Out_2_Float, _Absolute_bc7994d4f833e382b37b5718ee583259_Out_1_Float, _BlendOverlayDetailSmoothness_5a03404db5a34885a089f1aee363667f, _BlendOverlayDetailSmoothness_5a03404db5a34885a089f1aee363667f_SmoothnessOverlay_1_Float);
|
|
float _Saturate_3d6c6d852202408cb9b11aac8a566c89_Out_1_Float;
|
|
Unity_Saturate_float(_BlendOverlayDetailSmoothness_5a03404db5a34885a089f1aee363667f_SmoothnessOverlay_1_Float, _Saturate_3d6c6d852202408cb9b11aac8a566c89_Out_1_Float);
|
|
float3 _Vector3_8ed406a0096de4818282676bf24b1a85_Out_0_Vector3 = float3(_Multiply_d0c8d83444dbe38588583551936c7394_Out_2_Float, _Remap_ad3c26564c54aa8cbb2f81aa114b3b78_Out_3_Float, _Saturate_3d6c6d852202408cb9b11aac8a566c89_Out_1_Float);
|
|
float _Split_2ec5937af5023a8295e3858d32b193d5_R_1_Float = _Vector3_8ed406a0096de4818282676bf24b1a85_Out_0_Vector3[0];
|
|
float _Split_2ec5937af5023a8295e3858d32b193d5_G_2_Float = _Vector3_8ed406a0096de4818282676bf24b1a85_Out_0_Vector3[1];
|
|
float _Split_2ec5937af5023a8295e3858d32b193d5_B_3_Float = _Vector3_8ed406a0096de4818282676bf24b1a85_Out_0_Vector3[2];
|
|
float _Split_2ec5937af5023a8295e3858d32b193d5_A_4_Float = 0;
|
|
UnityTexture2D _Property_0f50abb140882d848d9fc7be8e3468dc_Out_0_Texture2D = UnityBuildTexture2DStructNoScale(_ShapeAO);
|
|
float4 _SampleTexture2D_33392602b94694898ec8227a89f13cc9_RGBA_0_Vector4 = SAMPLE_TEXTURE2D(_Property_0f50abb140882d848d9fc7be8e3468dc_Out_0_Texture2D.tex, _Property_0f50abb140882d848d9fc7be8e3468dc_Out_0_Texture2D.samplerstate, _Property_0f50abb140882d848d9fc7be8e3468dc_Out_0_Texture2D.GetTransformedUV(IN.uv0.xy) );
|
|
float _SampleTexture2D_33392602b94694898ec8227a89f13cc9_R_4_Float = _SampleTexture2D_33392602b94694898ec8227a89f13cc9_RGBA_0_Vector4.r;
|
|
float _SampleTexture2D_33392602b94694898ec8227a89f13cc9_G_5_Float = _SampleTexture2D_33392602b94694898ec8227a89f13cc9_RGBA_0_Vector4.g;
|
|
float _SampleTexture2D_33392602b94694898ec8227a89f13cc9_B_6_Float = _SampleTexture2D_33392602b94694898ec8227a89f13cc9_RGBA_0_Vector4.b;
|
|
float _SampleTexture2D_33392602b94694898ec8227a89f13cc9_A_7_Float = _SampleTexture2D_33392602b94694898ec8227a89f13cc9_RGBA_0_Vector4.a;
|
|
float _Property_a51c4b6d05e6718d919aadcf26153350_Out_0_Float = _ShapeAORemapMin;
|
|
float _Property_973fbc42b7a69088b9fc2c502945f369_Out_0_Float = _ShapeAORemapMax;
|
|
float2 _Vector2_a73753c5a8c4fa828d2eb25d4fb8b399_Out_0_Vector2 = float2(_Property_a51c4b6d05e6718d919aadcf26153350_Out_0_Float, _Property_973fbc42b7a69088b9fc2c502945f369_Out_0_Float);
|
|
float _Remap_270e7e207f303487bc04348b1b54db69_Out_3_Float;
|
|
Unity_Remap_float(_SampleTexture2D_33392602b94694898ec8227a89f13cc9_G_5_Float, float2 (0, 1), _Vector2_a73753c5a8c4fa828d2eb25d4fb8b399_Out_0_Vector2, _Remap_270e7e207f303487bc04348b1b54db69_Out_3_Float);
|
|
float _Minimum_307d1a8c4f5c6a87a1bbc658a5811679_Out_2_Float;
|
|
Unity_Minimum_float(_Split_2ec5937af5023a8295e3858d32b193d5_G_2_Float, _Remap_270e7e207f303487bc04348b1b54db69_Out_3_Float, _Minimum_307d1a8c4f5c6a87a1bbc658a5811679_Out_2_Float);
|
|
float3 _Vector3_fac10bf467f5ff82b4f071ba165bf458_Out_0_Vector3 = float3(_Split_2ec5937af5023a8295e3858d32b193d5_R_1_Float, _Minimum_307d1a8c4f5c6a87a1bbc658a5811679_Out_2_Float, _Split_2ec5937af5023a8295e3858d32b193d5_B_3_Float);
|
|
float _Property_fa6937565be49684915e6bb999529949_Out_0_Float = _CoverMetallic;
|
|
float _Multiply_d0ecb787fa289f8f9d3c2988d60f18d3_Out_2_Float;
|
|
Unity_Multiply_float_float(_Split_fe834aed1172f284a73d2d6810bdb696_R_1_Float, _Property_fa6937565be49684915e6bb999529949_Out_0_Float, _Multiply_d0ecb787fa289f8f9d3c2988d60f18d3_Out_2_Float);
|
|
float _Property_8f5ca0ba38d2a4858c1b4e44f6a375b4_Out_0_Float = _CoverAORemapMin;
|
|
float _Property_a15ef0fe46e1d88f9e20df6605bd1499_Out_0_Float = _CoverAORemapMax;
|
|
float2 _Vector2_969d809c2de99f89959cc4526a665db9_Out_0_Vector2 = float2(_Property_8f5ca0ba38d2a4858c1b4e44f6a375b4_Out_0_Float, _Property_a15ef0fe46e1d88f9e20df6605bd1499_Out_0_Float);
|
|
float _Remap_1b6065f44329038594e2d0cf001fa138_Out_3_Float;
|
|
Unity_Remap_float(_Split_fe834aed1172f284a73d2d6810bdb696_G_2_Float, float2 (0, 1), _Vector2_969d809c2de99f89959cc4526a665db9_Out_0_Vector2, _Remap_1b6065f44329038594e2d0cf001fa138_Out_3_Float);
|
|
float _Property_0fde68fd9824db8e9f5b4b0daff90270_Out_0_Float = _CoverSmoothnessRemapMin;
|
|
float _Property_abad1da00caf99869e0c9ca2926c76bd_Out_0_Float = _CoverSmoothnessRemapMax;
|
|
float2 _Vector2_1aa81c2ad7cc268caa834889569ce556_Out_0_Vector2 = float2(_Property_0fde68fd9824db8e9f5b4b0daff90270_Out_0_Float, _Property_abad1da00caf99869e0c9ca2926c76bd_Out_0_Float);
|
|
float _Remap_4948cd1fb38399888e9567ee2abb8acd_Out_3_Float;
|
|
Unity_Remap_float(_Split_fe834aed1172f284a73d2d6810bdb696_A_4_Float, float2 (0, 1), _Vector2_1aa81c2ad7cc268caa834889569ce556_Out_0_Vector2, _Remap_4948cd1fb38399888e9567ee2abb8acd_Out_3_Float);
|
|
float _Multiply_d3e207dba42f1984aacff3c1bf4eef0b_Out_2_Float;
|
|
Unity_Multiply_float_float(_SampleTexture2D_4bd08411faa60c828847f2247f06a809_B_6_Float, 2, _Multiply_d3e207dba42f1984aacff3c1bf4eef0b_Out_2_Float);
|
|
float _Add_0299d632f81fff8f969a0eed5f77397c_Out_2_Float;
|
|
Unity_Add_float(_Multiply_d3e207dba42f1984aacff3c1bf4eef0b_Out_2_Float, float(-1), _Add_0299d632f81fff8f969a0eed5f77397c_Out_2_Float);
|
|
float _Property_a2c7556e96b60b8e90cb5145ca6f9dde_Out_0_Float = _DetailCoverSmoothnessScale;
|
|
float _Multiply_d340fbee0985958dbb66555a73bd733c_Out_2_Float;
|
|
Unity_Multiply_float_float(_Add_0299d632f81fff8f969a0eed5f77397c_Out_2_Float, _Property_a2c7556e96b60b8e90cb5145ca6f9dde_Out_0_Float, _Multiply_d340fbee0985958dbb66555a73bd733c_Out_2_Float);
|
|
float _Saturate_2c0cc920be0ca88e937ec108b38f5fde_Out_1_Float;
|
|
Unity_Saturate_float(_Multiply_d340fbee0985958dbb66555a73bd733c_Out_2_Float, _Saturate_2c0cc920be0ca88e937ec108b38f5fde_Out_1_Float);
|
|
float _Absolute_3f81290e941e378283f7151c4a0731e2_Out_1_Float;
|
|
Unity_Absolute_float(_Saturate_2c0cc920be0ca88e937ec108b38f5fde_Out_1_Float, _Absolute_3f81290e941e378283f7151c4a0731e2_Out_1_Float);
|
|
Bindings_BlendOverlayDetailSmoothness_06e12138dc89c0040b45a57abe520a1a_float _BlendOverlayDetailSmoothness_e7a4fbe98378f084bd09f6e5d90e1cb8;
|
|
float _BlendOverlayDetailSmoothness_e7a4fbe98378f084bd09f6e5d90e1cb8_SmoothnessOverlay_1_Float;
|
|
SG_BlendOverlayDetailSmoothness_06e12138dc89c0040b45a57abe520a1a_float(_Remap_4948cd1fb38399888e9567ee2abb8acd_Out_3_Float, _Add_0299d632f81fff8f969a0eed5f77397c_Out_2_Float, _Absolute_3f81290e941e378283f7151c4a0731e2_Out_1_Float, _BlendOverlayDetailSmoothness_e7a4fbe98378f084bd09f6e5d90e1cb8, _BlendOverlayDetailSmoothness_e7a4fbe98378f084bd09f6e5d90e1cb8_SmoothnessOverlay_1_Float);
|
|
float _Saturate_9091ea9d9924c682ad6b94d3322ee822_Out_1_Float;
|
|
Unity_Saturate_float(_BlendOverlayDetailSmoothness_e7a4fbe98378f084bd09f6e5d90e1cb8_SmoothnessOverlay_1_Float, _Saturate_9091ea9d9924c682ad6b94d3322ee822_Out_1_Float);
|
|
float3 _Vector3_93bafe600474e7819ebc13e534b986bf_Out_0_Vector3 = float3(_Multiply_d0ecb787fa289f8f9d3c2988d60f18d3_Out_2_Float, _Remap_1b6065f44329038594e2d0cf001fa138_Out_3_Float, _Saturate_9091ea9d9924c682ad6b94d3322ee822_Out_1_Float);
|
|
float _Split_6ec9cc5e56f3f68ba37ff91557979c18_R_1_Float = _Vector3_93bafe600474e7819ebc13e534b986bf_Out_0_Vector3[0];
|
|
float _Split_6ec9cc5e56f3f68ba37ff91557979c18_G_2_Float = _Vector3_93bafe600474e7819ebc13e534b986bf_Out_0_Vector3[1];
|
|
float _Split_6ec9cc5e56f3f68ba37ff91557979c18_B_3_Float = _Vector3_93bafe600474e7819ebc13e534b986bf_Out_0_Vector3[2];
|
|
float _Split_6ec9cc5e56f3f68ba37ff91557979c18_A_4_Float = 0;
|
|
float _Property_ca9c61425ece6b8c909c06b1e2738f1a_Out_0_Float = _CoverShapeAORemapMin;
|
|
float _Property_b9be92f1612c908d80643f0e96015b33_Out_0_Float = _CoverShapeAORemapMax;
|
|
float2 _Vector2_9b862c4e147d1082afad3606339d2130_Out_0_Vector2 = float2(_Property_ca9c61425ece6b8c909c06b1e2738f1a_Out_0_Float, _Property_b9be92f1612c908d80643f0e96015b33_Out_0_Float);
|
|
float _Remap_c1f0022add809b83bad7b493177bddb7_Out_3_Float;
|
|
Unity_Remap_float(_SampleTexture2D_33392602b94694898ec8227a89f13cc9_G_5_Float, float2 (0, 1), _Vector2_9b862c4e147d1082afad3606339d2130_Out_0_Vector2, _Remap_c1f0022add809b83bad7b493177bddb7_Out_3_Float);
|
|
float _Minimum_595c2f31bb0ec588977a2b9ea46bf6b0_Out_2_Float;
|
|
Unity_Minimum_float(_Split_6ec9cc5e56f3f68ba37ff91557979c18_G_2_Float, _Remap_c1f0022add809b83bad7b493177bddb7_Out_3_Float, _Minimum_595c2f31bb0ec588977a2b9ea46bf6b0_Out_2_Float);
|
|
float3 _Vector3_6cb5b2c4675bb28cb41ea88b6eaa2aff_Out_0_Vector3 = float3(_Split_6ec9cc5e56f3f68ba37ff91557979c18_R_1_Float, _Minimum_595c2f31bb0ec588977a2b9ea46bf6b0_Out_2_Float, _Split_6ec9cc5e56f3f68ba37ff91557979c18_B_3_Float);
|
|
float3 _Lerp_fa40b54f3d5a1a8a95f6306e837b9338_Out_3_Vector3;
|
|
Unity_Lerp_float3(_Vector3_fac10bf467f5ff82b4f071ba165bf458_Out_0_Vector3, _Vector3_6cb5b2c4675bb28cb41ea88b6eaa2aff_Out_0_Vector3, (_Branch_3ccf365d359214809d30b6430d863e3f_Out_3_Float.xxx), _Lerp_fa40b54f3d5a1a8a95f6306e837b9338_Out_3_Vector3);
|
|
float _Split_c4a5352a58a4f88fb40410f956825dc6_R_1_Float = _Lerp_fa40b54f3d5a1a8a95f6306e837b9338_Out_3_Vector3[0];
|
|
float _Split_c4a5352a58a4f88fb40410f956825dc6_G_2_Float = _Lerp_fa40b54f3d5a1a8a95f6306e837b9338_Out_3_Vector3[1];
|
|
float _Split_c4a5352a58a4f88fb40410f956825dc6_B_3_Float = _Lerp_fa40b54f3d5a1a8a95f6306e837b9338_Out_3_Vector3[2];
|
|
float _Split_c4a5352a58a4f88fb40410f956825dc6_A_4_Float = 0;
|
|
float _Property_7861e880056eb88ab923a2ff5b12179d_Out_0_Float = _WetSmoothness;
|
|
float _Lerp_ee63160826cff4869f0e63568dd6f8b7_Out_3_Float;
|
|
Unity_Lerp_float(_Split_c4a5352a58a4f88fb40410f956825dc6_B_3_Float, _Property_7861e880056eb88ab923a2ff5b12179d_Out_0_Float, _OneMinus_e16dfb812ec64b8891c541171687142f_Out_1_Float, _Lerp_ee63160826cff4869f0e63568dd6f8b7_Out_3_Float);
|
|
float _Property_1c389d922d4fba86bc62c7d42ac8643d_Out_0_Float = _CoverNormalScale;
|
|
float3 _NormalStrength_db3de71f618fee878c84a13374c7adc4_Out_2_Vector3;
|
|
Unity_NormalStrength_float((_TriplanarNMn_ba7e211dd8095589a2939b5b239ca8e0_XYZ_1_Vector4.xyz), _Property_1c389d922d4fba86bc62c7d42ac8643d_Out_0_Float, _NormalStrength_db3de71f618fee878c84a13374c7adc4_Out_2_Vector3);
|
|
float3 _NormalBlend_b2e537e7a99f9280ba682b47daf3c5e3_Out_2_Vector3;
|
|
Unity_NormalBlend_float(_NormalStrength_db3de71f618fee878c84a13374c7adc4_Out_2_Vector3, _NormalStrength_401cd5af500bd68dbc9bca19d548d0db_Out_2_Vector3, _NormalBlend_b2e537e7a99f9280ba682b47daf3c5e3_Out_2_Vector3);
|
|
float2 _Vector2_b87489f8633d268598edb76163057164_Out_0_Vector2 = float2(_SampleTexture2D_4bd08411faa60c828847f2247f06a809_A_7_Float, _SampleTexture2D_4bd08411faa60c828847f2247f06a809_G_5_Float);
|
|
float2 _Multiply_95e603bb6d4bd7809de0ae42c8f45058_Out_2_Vector2;
|
|
Unity_Multiply_float2_float2(_Vector2_b87489f8633d268598edb76163057164_Out_0_Vector2, float2(2, 2), _Multiply_95e603bb6d4bd7809de0ae42c8f45058_Out_2_Vector2);
|
|
float2 _Add_c116ac3906ccf68d82dd5b73d0f5659a_Out_2_Vector2;
|
|
Unity_Add_float2(_Multiply_95e603bb6d4bd7809de0ae42c8f45058_Out_2_Vector2, float2(-1, -1), _Add_c116ac3906ccf68d82dd5b73d0f5659a_Out_2_Vector2);
|
|
float _Property_988acb131fd330878b4ac0672366ad90_Out_0_Float = _DetailCoverNormalScale;
|
|
float2 _Multiply_6de1a79215e1928f9f3fc3293df74f88_Out_2_Vector2;
|
|
Unity_Multiply_float2_float2(_Add_c116ac3906ccf68d82dd5b73d0f5659a_Out_2_Vector2, (_Property_988acb131fd330878b4ac0672366ad90_Out_0_Float.xx), _Multiply_6de1a79215e1928f9f3fc3293df74f88_Out_2_Vector2);
|
|
float _Split_9ce53bb7a65f16809b6a95d82286186e_R_1_Float = _Multiply_6de1a79215e1928f9f3fc3293df74f88_Out_2_Vector2[0];
|
|
float _Split_9ce53bb7a65f16809b6a95d82286186e_G_2_Float = _Multiply_6de1a79215e1928f9f3fc3293df74f88_Out_2_Vector2[1];
|
|
float _Split_9ce53bb7a65f16809b6a95d82286186e_B_3_Float = 0;
|
|
float _Split_9ce53bb7a65f16809b6a95d82286186e_A_4_Float = 0;
|
|
float _DotProduct_8912687db556b6819d2a38ba8511a7ae_Out_2_Float;
|
|
Unity_DotProduct_float2(_Multiply_6de1a79215e1928f9f3fc3293df74f88_Out_2_Vector2, _Multiply_6de1a79215e1928f9f3fc3293df74f88_Out_2_Vector2, _DotProduct_8912687db556b6819d2a38ba8511a7ae_Out_2_Float);
|
|
float _Saturate_013ea9a02a1ff18992540b270836cc73_Out_1_Float;
|
|
Unity_Saturate_float(_DotProduct_8912687db556b6819d2a38ba8511a7ae_Out_2_Float, _Saturate_013ea9a02a1ff18992540b270836cc73_Out_1_Float);
|
|
float _OneMinus_eefd2695dc7d77838984fc25a1c00b0b_Out_1_Float;
|
|
Unity_OneMinus_float(_Saturate_013ea9a02a1ff18992540b270836cc73_Out_1_Float, _OneMinus_eefd2695dc7d77838984fc25a1c00b0b_Out_1_Float);
|
|
float _SquareRoot_1d25cc71b4ce9286af1666a96ae6ac5a_Out_1_Float;
|
|
Unity_SquareRoot_float(_OneMinus_eefd2695dc7d77838984fc25a1c00b0b_Out_1_Float, _SquareRoot_1d25cc71b4ce9286af1666a96ae6ac5a_Out_1_Float);
|
|
float3 _Vector3_c3d9c7e92a1c5b8ea5650ab3bb421c27_Out_0_Vector3 = float3(_Split_9ce53bb7a65f16809b6a95d82286186e_R_1_Float, _Split_9ce53bb7a65f16809b6a95d82286186e_G_2_Float, _SquareRoot_1d25cc71b4ce9286af1666a96ae6ac5a_Out_1_Float);
|
|
float3 _NormalBlend_8e1d1c87f8c12b87b64883533bfa43be_Out_2_Vector3;
|
|
Unity_NormalBlend_float(_NormalBlend_b2e537e7a99f9280ba682b47daf3c5e3_Out_2_Vector3, _Vector3_c3d9c7e92a1c5b8ea5650ab3bb421c27_Out_0_Vector3, _NormalBlend_8e1d1c87f8c12b87b64883533bfa43be_Out_2_Vector3);
|
|
float3 _Lerp_48cd568fef7d358b8d65b989db745e6c_Out_3_Vector3;
|
|
Unity_Lerp_float3(_NormalBlend_4242e1b4a785378aa59dd49e9d993ffc_Out_2_Vector3, _NormalBlend_8e1d1c87f8c12b87b64883533bfa43be_Out_2_Vector3, (_Branch_3ccf365d359214809d30b6430d863e3f_Out_3_Float.xxx), _Lerp_48cd568fef7d358b8d65b989db745e6c_Out_3_Vector3);
|
|
surface.BaseColor = _Lerp_43bc7a9493df5a829abf080ee4ad3298_Out_3_Vector3;
|
|
surface.Emission = float3(0, 0, 0);
|
|
surface.Alpha = float(1);
|
|
surface.BentNormal = IN.TangentSpaceNormal;
|
|
surface.Smoothness = _Lerp_ee63160826cff4869f0e63568dd6f8b7_Out_3_Float;
|
|
surface.Occlusion = _Split_c4a5352a58a4f88fb40410f956825dc6_G_2_Float;
|
|
surface.NormalTS = _Lerp_48cd568fef7d358b8d65b989db745e6c_Out_3_Vector3;
|
|
surface.Metallic = _Split_c4a5352a58a4f88fb40410f956825dc6_R_1_Float;
|
|
return surface;
|
|
}
|
|
|
|
// --------------------------------------------------
|
|
// Build Graph Inputs
|
|
#ifdef HAVE_VFX_MODIFICATION
|
|
#define VFX_SRP_ATTRIBUTES AttributesMesh
|
|
#define VaryingsMeshType VaryingsMeshToPS
|
|
#define VFX_SRP_VARYINGS VaryingsMeshType
|
|
#define VFX_SRP_SURFACE_INPUTS FragInputs
|
|
#endif
|
|
SurfaceDescriptionInputs FragInputsToSurfaceDescriptionInputs(FragInputs input, float3 viewWS)
|
|
{
|
|
SurfaceDescriptionInputs output;
|
|
ZERO_INITIALIZE(SurfaceDescriptionInputs, output);
|
|
|
|
output.WorldSpaceNormal = normalize(input.tangentToWorld[2].xyz);
|
|
#if defined(SHADER_STAGE_RAY_TRACING)
|
|
#else
|
|
#endif
|
|
output.TangentSpaceNormal = float3(0.0f, 0.0f, 1.0f);
|
|
output.WorldSpaceTangent = input.tangentToWorld[0].xyz;
|
|
output.WorldSpaceBiTangent = input.tangentToWorld[1].xyz;
|
|
output.AbsoluteWorldSpacePosition = GetAbsolutePositionWS(input.positionRWS);
|
|
|
|
#if UNITY_UV_STARTS_AT_TOP
|
|
#else
|
|
#endif
|
|
|
|
|
|
output.uv0 = input.texCoord0;
|
|
output.VertexColor = input.color;
|
|
|
|
// splice point to copy frag inputs custom interpolator pack into the SDI
|
|
/* WARNING: $splice Could not find named fragment 'CustomInterpolatorCopyToSDI' */
|
|
|
|
return output;
|
|
}
|
|
|
|
// --------------------------------------------------
|
|
// Build Surface Data (Specific Material)
|
|
|
|
void ApplyDecalToSurfaceDataNoNormal(DecalSurfaceData decalSurfaceData, inout SurfaceData surfaceData);
|
|
|
|
void ApplyDecalAndGetNormal(FragInputs fragInputs, PositionInputs posInput, SurfaceDescription surfaceDescription,
|
|
inout SurfaceData surfaceData)
|
|
{
|
|
float3 doubleSidedConstants = GetDoubleSidedConstants();
|
|
|
|
#ifdef DECAL_NORMAL_BLENDING
|
|
// SG nodes don't ouptut surface gradients, so if decals require surf grad blending, we have to convert
|
|
// the normal to gradient before applying the decal. We then have to resolve the gradient back to world space
|
|
float3 normalTS;
|
|
|
|
normalTS = SurfaceGradientFromTangentSpaceNormalAndFromTBN(surfaceDescription.NormalTS,
|
|
fragInputs.tangentToWorld[0], fragInputs.tangentToWorld[1]);
|
|
|
|
|
|
#if HAVE_DECALS
|
|
if (_EnableDecals)
|
|
{
|
|
float alpha = 1.0;
|
|
alpha = surfaceDescription.Alpha;
|
|
|
|
DecalSurfaceData decalSurfaceData = GetDecalSurfaceData(posInput, fragInputs, alpha);
|
|
ApplyDecalToSurfaceNormal(decalSurfaceData, fragInputs.tangentToWorld[2], normalTS);
|
|
ApplyDecalToSurfaceDataNoNormal(decalSurfaceData, surfaceData);
|
|
}
|
|
#endif
|
|
|
|
GetNormalWS_SG(fragInputs, normalTS, surfaceData.normalWS, doubleSidedConstants);
|
|
#else
|
|
// normal delivered to master node
|
|
GetNormalWS(fragInputs, surfaceDescription.NormalTS, surfaceData.normalWS, doubleSidedConstants);
|
|
|
|
#if HAVE_DECALS
|
|
if (_EnableDecals)
|
|
{
|
|
float alpha = 1.0;
|
|
alpha = surfaceDescription.Alpha;
|
|
|
|
// Both uses and modifies 'surfaceData.normalWS'.
|
|
DecalSurfaceData decalSurfaceData = GetDecalSurfaceData(posInput, fragInputs, alpha);
|
|
ApplyDecalToSurfaceNormal(decalSurfaceData, surfaceData.normalWS.xyz);
|
|
ApplyDecalToSurfaceDataNoNormal(decalSurfaceData, surfaceData);
|
|
}
|
|
#endif
|
|
#endif
|
|
}
|
|
void BuildSurfaceData(FragInputs fragInputs, inout SurfaceDescription surfaceDescription, float3 V, PositionInputs posInput, out SurfaceData surfaceData, out float3 bentNormalWS)
|
|
{
|
|
ZERO_INITIALIZE(SurfaceData, surfaceData);
|
|
|
|
// specularOcclusion need to be init ahead of decal to quiet the compiler that modify the SurfaceData struct
|
|
// however specularOcclusion can come from the graph, so need to be init here so it can be override.
|
|
surfaceData.specularOcclusion = 1.0;
|
|
surfaceData.thickness = 0.0;
|
|
|
|
surfaceData.baseColor = surfaceDescription.BaseColor;
|
|
surfaceData.perceptualSmoothness = surfaceDescription.Smoothness;
|
|
surfaceData.ambientOcclusion = surfaceDescription.Occlusion;
|
|
surfaceData.metallic = surfaceDescription.Metallic;
|
|
|
|
#if defined(_REFRACTION_PLANE) || defined(_REFRACTION_SPHERE) || defined(_REFRACTION_THIN)
|
|
if (_EnableSSRefraction)
|
|
{
|
|
|
|
surfaceData.transmittanceMask = (1.0 - surfaceDescription.Alpha);
|
|
surfaceDescription.Alpha = 1.0;
|
|
}
|
|
else
|
|
{
|
|
surfaceData.ior = 1.0;
|
|
surfaceData.transmittanceColor = float3(1.0, 1.0, 1.0);
|
|
surfaceData.atDistance = 1.0;
|
|
surfaceData.transmittanceMask = 0.0;
|
|
surfaceDescription.Alpha = 1.0;
|
|
}
|
|
#else
|
|
surfaceData.ior = 1.0;
|
|
surfaceData.transmittanceColor = float3(1.0, 1.0, 1.0);
|
|
surfaceData.atDistance = 1.0;
|
|
surfaceData.transmittanceMask = 0.0;
|
|
#endif
|
|
|
|
// These static material feature allow compile time optimization
|
|
surfaceData.materialFeatures = MATERIALFEATUREFLAGS_LIT_STANDARD;
|
|
#ifdef _MATERIAL_FEATURE_SUBSURFACE_SCATTERING
|
|
surfaceData.materialFeatures |= MATERIALFEATUREFLAGS_LIT_SUBSURFACE_SCATTERING;
|
|
#endif
|
|
|
|
#ifdef _MATERIAL_FEATURE_TRANSMISSION
|
|
surfaceData.materialFeatures |= MATERIALFEATUREFLAGS_LIT_TRANSMISSION;
|
|
#endif
|
|
|
|
#ifdef _MATERIAL_FEATURE_COLORED_TRANSMISSION
|
|
surfaceData.materialFeatures |= MATERIALFEATUREFLAGS_LIT_TRANSMISSION;
|
|
surfaceData.materialFeatures |= MATERIALFEATUREFLAGS_LIT_COLORED_TRANSMISSION;
|
|
|
|
#endif
|
|
|
|
#ifdef _MATERIAL_FEATURE_ANISOTROPY
|
|
surfaceData.materialFeatures |= MATERIALFEATUREFLAGS_LIT_ANISOTROPY;
|
|
|
|
// Initialize the normal to something non-zero to avoid a div-zero warning for anisotropy.
|
|
surfaceData.normalWS = float3(0, 1, 0);
|
|
#endif
|
|
|
|
#ifdef _MATERIAL_FEATURE_IRIDESCENCE
|
|
surfaceData.materialFeatures |= MATERIALFEATUREFLAGS_LIT_IRIDESCENCE;
|
|
#endif
|
|
|
|
#ifdef _MATERIAL_FEATURE_SPECULAR_COLOR
|
|
surfaceData.materialFeatures |= MATERIALFEATUREFLAGS_LIT_SPECULAR_COLOR;
|
|
#endif
|
|
|
|
#ifdef _MATERIAL_FEATURE_CLEAR_COAT
|
|
surfaceData.materialFeatures |= MATERIALFEATUREFLAGS_LIT_CLEAR_COAT;
|
|
#endif
|
|
|
|
#if defined (_MATERIAL_FEATURE_SPECULAR_COLOR) && defined (_ENERGY_CONSERVING_SPECULAR)
|
|
// Require to have setup baseColor
|
|
// Reproduce the energy conservation done in legacy Unity. Not ideal but better for compatibility and users can unchek it
|
|
surfaceData.baseColor *= (1.0 - Max3(surfaceData.specularColor.r, surfaceData.specularColor.g, surfaceData.specularColor.b));
|
|
#endif
|
|
|
|
float3 doubleSidedConstants = GetDoubleSidedConstants();
|
|
|
|
ApplyDecalAndGetNormal(fragInputs, posInput, surfaceDescription, surfaceData);
|
|
|
|
surfaceData.geomNormalWS = fragInputs.tangentToWorld[2];
|
|
|
|
surfaceData.tangentWS = normalize(fragInputs.tangentToWorld[0].xyz); // The tangent is not normalize in tangentToWorld for mikkt. TODO: Check if it expected that we normalize with Morten. Tag: SURFACE_GRADIENT
|
|
|
|
|
|
bentNormalWS = surfaceData.normalWS;
|
|
|
|
surfaceData.tangentWS = Orthonormalize(surfaceData.tangentWS, surfaceData.normalWS);
|
|
|
|
#ifdef DEBUG_DISPLAY
|
|
#if !defined(SHADER_STAGE_RAY_TRACING)
|
|
// Mipmap mode debugging isn't supported with ray tracing as it relies on derivatives
|
|
if (_DebugMipMapMode != DEBUGMIPMAPMODE_NONE)
|
|
{
|
|
#ifdef FRAG_INPUTS_USE_TEXCOORD0
|
|
surfaceData.baseColor = GET_TEXTURE_STREAMING_DEBUG(posInput.positionSS, fragInputs.texCoord0);
|
|
#else
|
|
surfaceData.baseColor = GET_TEXTURE_STREAMING_DEBUG_NO_UV(posInput.positionSS);
|
|
#endif
|
|
surfaceData.metallic = 0;
|
|
}
|
|
#endif
|
|
|
|
// We need to call ApplyDebugToSurfaceData after filling the surfaceData and before filling builtinData
|
|
// as it can modify attribute use for static lighting
|
|
ApplyDebugToSurfaceData(fragInputs.tangentToWorld, surfaceData);
|
|
#endif
|
|
|
|
// By default we use the ambient occlusion with Tri-ace trick (apply outside) for specular occlusion.
|
|
// If user provide bent normal then we process a better term
|
|
#if defined(_SPECULAR_OCCLUSION_CUSTOM)
|
|
// Just use the value passed through via the slot (not active otherwise)
|
|
#elif defined(_SPECULAR_OCCLUSION_FROM_AO_BENT_NORMAL)
|
|
// If we have bent normal and ambient occlusion, process a specular occlusion
|
|
surfaceData.specularOcclusion = GetSpecularOcclusionFromBentAO(V, bentNormalWS, surfaceData.normalWS, surfaceData.ambientOcclusion, PerceptualSmoothnessToPerceptualRoughness(surfaceData.perceptualSmoothness));
|
|
#elif defined(_AMBIENT_OCCLUSION) && defined(_SPECULAR_OCCLUSION_FROM_AO)
|
|
surfaceData.specularOcclusion = GetSpecularOcclusionFromAmbientOcclusion(ClampNdotV(dot(surfaceData.normalWS, V)), surfaceData.ambientOcclusion, PerceptualSmoothnessToRoughness(surfaceData.perceptualSmoothness));
|
|
#endif
|
|
|
|
#if defined(_ENABLE_GEOMETRIC_SPECULAR_AA) && !defined(SHADER_STAGE_RAY_TRACING)
|
|
surfaceData.perceptualSmoothness = GeometricNormalFiltering(surfaceData.perceptualSmoothness, fragInputs.tangentToWorld[2], surfaceDescription.SpecularAAScreenSpaceVariance, surfaceDescription.SpecularAAThreshold);
|
|
#endif
|
|
}
|
|
|
|
// --------------------------------------------------
|
|
// Get Surface And BuiltinData
|
|
|
|
void GetSurfaceAndBuiltinData(FragInputs fragInputs, float3 V, inout PositionInputs posInput, out SurfaceData surfaceData, out BuiltinData builtinData RAY_TRACING_OPTIONAL_PARAMETERS)
|
|
{
|
|
// Don't dither if displaced tessellation (we're fading out the displacement instead to match the next LOD)
|
|
#if !defined(SHADER_STAGE_RAY_TRACING) && !defined(_TESSELLATION_DISPLACEMENT)
|
|
#ifdef LOD_FADE_CROSSFADE // enable dithering LOD transition if user select CrossFade transition in LOD group
|
|
LODDitheringTransition(ComputeFadeMaskSeed(V, posInput.positionSS), unity_LODFade.x);
|
|
#endif
|
|
#endif
|
|
|
|
#ifndef SHADER_UNLIT
|
|
#ifdef _DOUBLESIDED_ON
|
|
float3 doubleSidedConstants = _DoubleSidedConstants.xyz;
|
|
#else
|
|
float3 doubleSidedConstants = float3(1.0, 1.0, 1.0);
|
|
#endif
|
|
|
|
ApplyDoubleSidedFlipOrMirror(fragInputs, doubleSidedConstants); // Apply double sided flip on the vertex normal
|
|
#endif // SHADER_UNLIT
|
|
|
|
SurfaceDescriptionInputs surfaceDescriptionInputs = FragInputsToSurfaceDescriptionInputs(fragInputs, V);
|
|
|
|
#if defined(HAVE_VFX_MODIFICATION)
|
|
GraphProperties properties;
|
|
ZERO_INITIALIZE(GraphProperties, properties);
|
|
|
|
GetElementPixelProperties(fragInputs, properties);
|
|
|
|
SurfaceDescription surfaceDescription = SurfaceDescriptionFunction(surfaceDescriptionInputs, properties);
|
|
#else
|
|
SurfaceDescription surfaceDescription = SurfaceDescriptionFunction(surfaceDescriptionInputs);
|
|
#endif
|
|
|
|
#ifdef DEBUG_DISPLAY
|
|
if (_DebugMipMapMode != DEBUGMIPMAPMODE_NONE)
|
|
{
|
|
surfaceDescription.Alpha = 1.0f;
|
|
}
|
|
#endif
|
|
|
|
// Perform alpha test very early to save performance (a killed pixel will not sample textures)
|
|
// TODO: split graph evaluation to grab just alpha dependencies first? tricky..
|
|
#ifdef _ALPHATEST_ON
|
|
float alphaCutoff = surfaceDescription.AlphaClipThreshold;
|
|
#if SHADERPASS == SHADERPASS_TRANSPARENT_DEPTH_PREPASS
|
|
// The TransparentDepthPrepass is also used with SSR transparent.
|
|
// If an artists enable transaprent SSR but not the TransparentDepthPrepass itself, then we use AlphaClipThreshold
|
|
// otherwise if TransparentDepthPrepass is enabled we use AlphaClipThresholdDepthPrepass
|
|
#elif SHADERPASS == SHADERPASS_TRANSPARENT_DEPTH_POSTPASS
|
|
// DepthPostpass always use its own alpha threshold
|
|
alphaCutoff = surfaceDescription.AlphaClipThresholdDepthPostpass;
|
|
#elif (SHADERPASS == SHADERPASS_SHADOWS) || (SHADERPASS == SHADERPASS_RAYTRACING_VISIBILITY)
|
|
// If use shadow threshold isn't enable we don't allow any test
|
|
#endif
|
|
|
|
GENERIC_ALPHA_TEST(surfaceDescription.Alpha, alphaCutoff);
|
|
#endif
|
|
|
|
#if !defined(SHADER_STAGE_RAY_TRACING) && _DEPTHOFFSET_ON
|
|
ApplyDepthOffsetPositionInput(V, surfaceDescription.DepthOffset, GetViewForwardDir(), GetWorldToHClipMatrix(), posInput);
|
|
#endif
|
|
|
|
#ifndef SHADER_UNLIT
|
|
float3 bentNormalWS;
|
|
BuildSurfaceData(fragInputs, surfaceDescription, V, posInput, surfaceData, bentNormalWS);
|
|
|
|
#ifdef FRAG_INPUTS_USE_TEXCOORD1
|
|
float4 lightmapTexCoord1 = fragInputs.texCoord1;
|
|
#else
|
|
float4 lightmapTexCoord1 = float4(0,0,0,0);
|
|
#endif
|
|
|
|
#ifdef FRAG_INPUTS_USE_TEXCOORD2
|
|
float4 lightmapTexCoord2 = fragInputs.texCoord2;
|
|
#else
|
|
float4 lightmapTexCoord2 = float4(0,0,0,0);
|
|
#endif
|
|
|
|
float alpha = 1.0;
|
|
alpha = surfaceDescription.Alpha;
|
|
|
|
// Builtin Data
|
|
// For back lighting we use the oposite vertex normal
|
|
InitBuiltinData(posInput, alpha, bentNormalWS, -fragInputs.tangentToWorld[2], lightmapTexCoord1, lightmapTexCoord2, builtinData);
|
|
|
|
#else
|
|
BuildSurfaceData(fragInputs, surfaceDescription, V, posInput, surfaceData);
|
|
|
|
ZERO_BUILTIN_INITIALIZE(builtinData); // No call to InitBuiltinData as we don't have any lighting
|
|
builtinData.opacity = surfaceDescription.Alpha;
|
|
|
|
#if defined(DEBUG_DISPLAY)
|
|
// Light Layers are currently not used for the Unlit shader (because it is not lit)
|
|
// But Unlit objects do cast shadows according to their rendering layer mask, which is what we want to
|
|
// display in the light layers visualization mode, therefore we need the renderingLayers
|
|
builtinData.renderingLayers = GetMeshRenderingLayerMask();
|
|
#endif
|
|
|
|
#endif // SHADER_UNLIT
|
|
|
|
#ifdef _ALPHATEST_ON
|
|
// Used for sharpening by alpha to mask - Alpha to covertage is only used with depth only and forward pass (no shadow pass, no transparent pass)
|
|
builtinData.alphaClipTreshold = alphaCutoff;
|
|
#endif
|
|
|
|
// override sampleBakedGI - not used by Unlit
|
|
// When overriding GI, we need to force the isLightmap flag to make sure we don't add APV (sampled in the lightloop) on top of the overridden value (set at GBuffer stage)
|
|
|
|
builtinData.emissiveColor = surfaceDescription.Emission;
|
|
|
|
// Note this will not fully work on transparent surfaces (can check with _SURFACE_TYPE_TRANSPARENT define)
|
|
// We will always overwrite vt feeback with the nearest. So behind transparent surfaces vt will not be resolved
|
|
// This is a limitation of the current MRT approach.
|
|
#ifdef UNITY_VIRTUAL_TEXTURING
|
|
#endif
|
|
|
|
#if _DEPTHOFFSET_ON
|
|
builtinData.depthOffset = surfaceDescription.DepthOffset;
|
|
#endif
|
|
|
|
// TODO: We should generate distortion / distortionBlur for non distortion pass
|
|
#if (SHADERPASS == SHADERPASS_DISTORTION)
|
|
builtinData.distortion = surfaceDescription.Distortion;
|
|
builtinData.distortionBlur = surfaceDescription.DistortionBlur;
|
|
#endif
|
|
|
|
#ifndef SHADER_UNLIT
|
|
// PostInitBuiltinData call ApplyDebugToBuiltinData
|
|
PostInitBuiltinData(V, posInput, surfaceData, builtinData);
|
|
#else
|
|
ApplyDebugToBuiltinData(builtinData);
|
|
#endif
|
|
|
|
RAY_TRACING_OPTIONAL_ALPHA_TEST_PASS
|
|
}
|
|
|
|
// --------------------------------------------------
|
|
// Main
|
|
|
|
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/RenderPipeline/ShaderPass/ShaderPassRaytracingForward.hlsl"
|
|
|
|
// --------------------------------------------------
|
|
// Visual Effect Vertex Invocations
|
|
|
|
#ifdef HAVE_VFX_MODIFICATION
|
|
#if !defined(SHADER_STAGE_RAY_TRACING)
|
|
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/ShaderLibrary/VisualEffectVertex.hlsl"
|
|
#else
|
|
#endif
|
|
#endif
|
|
|
|
ENDHLSL
|
|
}
|
|
Pass
|
|
{
|
|
Name "GBufferDXR"
|
|
Tags
|
|
{
|
|
"LightMode" = "GBufferDXR"
|
|
}
|
|
|
|
// Render State
|
|
// RenderState: <None>
|
|
|
|
// Debug
|
|
// <None>
|
|
|
|
// --------------------------------------------------
|
|
// Pass
|
|
|
|
HLSLPROGRAM
|
|
|
|
// Pragmas
|
|
#pragma target 5.0
|
|
#pragma raytracing surface_shader
|
|
#pragma only_renderers d3d11 xboxseries ps5
|
|
|
|
// Keywords
|
|
#pragma multi_compile _ MINIMAL_GBUFFER
|
|
#pragma shader_feature _ _SURFACE_TYPE_TRANSPARENT
|
|
#pragma shader_feature_local _ _DOUBLESIDED_ON
|
|
#pragma shader_feature_local _ _ADD_PRECOMPUTED_VELOCITY
|
|
#pragma shader_feature_local _ _TRANSPARENT_WRITES_MOTION_VEC _TRANSPARENT_REFRACTIVE_SORT
|
|
#pragma shader_feature_local_fragment _ _ENABLE_FOG_ON_TRANSPARENT
|
|
#pragma multi_compile _ DEBUG_DISPLAY
|
|
#pragma shader_feature_local_fragment _ _DISABLE_DECALS
|
|
#pragma shader_feature_local_raytracing _ _DISABLE_DECALS
|
|
#pragma shader_feature_local_fragment _ _DISABLE_SSR
|
|
#pragma shader_feature_local_raytracing _ _DISABLE_SSR
|
|
#pragma shader_feature_local_fragment _ _DISABLE_SSR_TRANSPARENT
|
|
#pragma shader_feature_local_raytracing _ _DISABLE_SSR_TRANSPARENT
|
|
#pragma multi_compile _ LIGHTMAP_ON
|
|
#pragma multi_compile _ DIRLIGHTMAP_COMBINED
|
|
#pragma multi_compile_fragment _ PROBE_VOLUMES_L1 PROBE_VOLUMES_L2
|
|
#pragma multi_compile_raytracing _ PROBE_VOLUMES_L1 PROBE_VOLUMES_L2
|
|
#pragma multi_compile _ DYNAMICLIGHTMAP_ON
|
|
#pragma multi_compile_raytracing DECALS_OFF DECALS_3RT DECALS_4RT
|
|
#pragma multi_compile_raytracing _ DECAL_SURFACE_GRADIENT
|
|
#pragma shader_feature_local _ _REFRACTION_PLANE _REFRACTION_SPHERE _REFRACTION_THIN
|
|
#pragma shader_feature_local_fragment _MATERIAL_FEATURE_SUBSURFACE_SCATTERING
|
|
#pragma shader_feature_local_raytracing _MATERIAL_FEATURE_SUBSURFACE_SCATTERING
|
|
#pragma shader_feature_local_fragment _MATERIAL_FEATURE_TRANSMISSION
|
|
#pragma shader_feature_local_raytracing _MATERIAL_FEATURE_TRANSMISSION
|
|
#pragma shader_feature_local_fragment _MATERIAL_FEATURE_ANISOTROPY
|
|
#pragma shader_feature_local_raytracing _MATERIAL_FEATURE_ANISOTROPY
|
|
#pragma shader_feature_local_fragment _MATERIAL_FEATURE_IRIDESCENCE
|
|
#pragma shader_feature_local_raytracing _MATERIAL_FEATURE_IRIDESCENCE
|
|
#pragma shader_feature_local_fragment _MATERIAL_FEATURE_SPECULAR_COLOR
|
|
#pragma shader_feature_local_raytracing _MATERIAL_FEATURE_SPECULAR_COLOR
|
|
#pragma shader_feature_local_fragment _MATERIAL_FEATURE_COLORED_TRANSMISSION
|
|
#pragma shader_feature_local_raytracing _MATERIAL_FEATURE_COLORED_TRANSMISSION
|
|
// GraphKeywords: <None>
|
|
|
|
// Defines
|
|
#define SHADERPASS SHADERPASS_RAYTRACING_GBUFFER
|
|
#define PUNCTUAL_SHADOW_LOW
|
|
#define DIRECTIONAL_SHADOW_LOW
|
|
#define RAYTRACING_SHADER_GRAPH_RAYTRACED
|
|
#define LIGHTLOOP_DISABLE_TILE_AND_CLUSTER 1
|
|
#define PATH_TRACING_CLUSTERED_DECALS 1
|
|
#define SUPPORT_GLOBAL_MIP_BIAS 1
|
|
#define SUPPORT_GLOBAL_MIP_BIAS 1
|
|
#define SUPPORT_GLOBAL_MIP_BIAS 1
|
|
#define SUPPORT_GLOBAL_MIP_BIAS 1
|
|
#define SUPPORT_GLOBAL_MIP_BIAS 1
|
|
#define SUPPORT_GLOBAL_MIP_BIAS 1
|
|
#define SUPPORT_GLOBAL_MIP_BIAS 1
|
|
#define SUPPORT_GLOBAL_MIP_BIAS 1
|
|
#define SUPPORT_GLOBAL_MIP_BIAS 1
|
|
|
|
// For custom interpolators to inject a substruct definition before FragInputs definition,
|
|
// allowing for FragInputs to capture CI's intended for ShaderGraph's SDI.
|
|
/* WARNING: $splice Could not find named fragment 'CustomInterpolatorPreInclude' */
|
|
|
|
|
|
// TODO: Merge FragInputsVFX substruct with CustomInterpolators.
|
|
#ifdef HAVE_VFX_MODIFICATION
|
|
struct FragInputsVFX
|
|
{
|
|
/* WARNING: $splice Could not find named fragment 'FragInputsVFX' */
|
|
};
|
|
#endif
|
|
|
|
#include "Packages/com.unity.render-pipelines.core/ShaderLibrary/Common.hlsl"
|
|
#include "Packages/com.unity.render-pipelines.core/ShaderLibrary/GeometricTools.hlsl" // Required by Tessellation.hlsl
|
|
#include "Packages/com.unity.render-pipelines.core/ShaderLibrary/Tessellation.hlsl"
|
|
#include "Packages/com.unity.render-pipelines.core/ShaderLibrary/Texture.hlsl"
|
|
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/ShaderLibrary/ShaderVariables.hlsl"
|
|
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/RenderPipeline/ShaderPass/ShaderPass.cs.hlsl"
|
|
#include "Packages/com.unity.render-pipelines.core/ShaderLibrary/TextureStack.hlsl" // Required to be include before we include properties as it define DECLARE_STACK_CB
|
|
#include "Packages/com.unity.render-pipelines.core/ShaderLibrary/DebugMipmapStreamingMacros.hlsl" // Required before including properties as it defines UNITY_TEXTURE_STREAMING_DEBUG_VARS
|
|
// Always include Shader Graph version
|
|
// Always include last to avoid double macros
|
|
#include "Packages/com.unity.shadergraph/ShaderGraphLibrary/Functions.hlsl" // Need to be here for Gradient struct definition
|
|
|
|
// --------------------------------------------------
|
|
// Defines
|
|
|
|
// Attribute
|
|
#define ATTRIBUTES_NEED_NORMAL
|
|
#define ATTRIBUTES_NEED_TANGENT
|
|
#define ATTRIBUTES_NEED_TEXCOORD0
|
|
#define ATTRIBUTES_NEED_TEXCOORD1
|
|
#define ATTRIBUTES_NEED_TEXCOORD2
|
|
#define ATTRIBUTES_NEED_COLOR
|
|
#define VARYINGS_NEED_POSITION_WS
|
|
#define VARYINGS_NEED_TANGENT_TO_WORLD
|
|
#define VARYINGS_NEED_TEXCOORD0
|
|
#define VARYINGS_NEED_TEXCOORD1
|
|
#define VARYINGS_NEED_TEXCOORD2
|
|
#define VARYINGS_NEED_COLOR
|
|
|
|
|
|
//Strip down the FragInputs.hlsl (on graphics), so we can only optimize the interpolators we use.
|
|
//if by accident something requests contents of FragInputs.hlsl, it will be caught as a compiler error
|
|
//Frag inputs stripping is only enabled when FRAG_INPUTS_ENABLE_STRIPPING is set
|
|
#if !defined(SHADER_STAGE_RAY_TRACING) && SHADERPASS != SHADERPASS_RAYTRACING_GBUFFER && SHADERPASS != SHADERPASS_FULL_SCREEN_DEBUG
|
|
#define FRAG_INPUTS_ENABLE_STRIPPING
|
|
#endif
|
|
#define FRAG_INPUTS_USE_TEXCOORD0
|
|
#define FRAG_INPUTS_USE_TEXCOORD1
|
|
#define FRAG_INPUTS_USE_TEXCOORD2
|
|
|
|
|
|
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/RenderPipeline/ShaderPass/FragInputs.hlsl"
|
|
|
|
|
|
|
|
|
|
// Following two define are a workaround introduce in 10.1.x for RaytracingQualityNode
|
|
// The ShaderGraph don't support correctly migration of this node as it serialize all the node data
|
|
// in the json file making it impossible to uprgrade. Until we get a fix, we do a workaround here
|
|
// to still allow us to rename the field and keyword of this node without breaking existing code.
|
|
#ifdef RAYTRACING_SHADER_GRAPH_DEFAULT
|
|
#define RAYTRACING_SHADER_GRAPH_HIGH
|
|
#endif
|
|
|
|
#ifdef RAYTRACING_SHADER_GRAPH_RAYTRACED
|
|
#define RAYTRACING_SHADER_GRAPH_LOW
|
|
#endif
|
|
// end
|
|
|
|
#ifndef SHADER_UNLIT
|
|
// We need isFrontFace when using double sided - it is not required for unlit as in case of unlit double sided only drive the cullmode
|
|
// VARYINGS_NEED_CULLFACE can be define by VaryingsMeshToPS.FaceSign input if a IsFrontFace Node is included in the shader graph.
|
|
#if defined(_DOUBLESIDED_ON) && !defined(VARYINGS_NEED_CULLFACE)
|
|
#define VARYINGS_NEED_CULLFACE
|
|
#endif
|
|
#endif
|
|
|
|
// Specific Material Define
|
|
#define _AMBIENT_OCCLUSION 1
|
|
#define _SPECULAR_OCCLUSION_FROM_AO 1
|
|
#define _ENERGY_CONSERVING_SPECULAR 1
|
|
|
|
#if _MATERIAL_FEATURE_COLORED_TRANSMISSION
|
|
// Colored Transmission doesn't support clear coat
|
|
#undef _MATERIAL_FEATURE_CLEAR_COAT
|
|
#endif
|
|
|
|
// If we use subsurface scattering, enable output split lighting (for forward pass)
|
|
#if defined(_MATERIAL_FEATURE_SUBSURFACE_SCATTERING) && !defined(_SURFACE_TYPE_TRANSPARENT)
|
|
#define OUTPUT_SPLIT_LIGHTING
|
|
#endif
|
|
|
|
// This shader support recursive rendering for raytracing
|
|
#define HAVE_RECURSIVE_RENDERING
|
|
|
|
// In Path Tracing, For all single-sided, refractive materials, we want to force a thin refraction model
|
|
#if (SHADERPASS == SHADERPASS_PATH_TRACING) && !defined(_DOUBLESIDED_ON) && (defined(_REFRACTION_PLANE) || defined(_REFRACTION_SPHERE))
|
|
#undef _REFRACTION_PLANE
|
|
#undef _REFRACTION_SPHERE
|
|
#define _REFRACTION_THIN
|
|
#endif
|
|
// Caution: we can use the define SHADER_UNLIT onlit after the above Material include as it is the Unlit template who define it
|
|
|
|
// To handle SSR on transparent correctly with a possibility to enable/disable it per framesettings
|
|
// we should have a code like this:
|
|
// if !defined(_DISABLE_SSR_TRANSPARENT)
|
|
// pragma multi_compile _ WRITE_NORMAL_BUFFER
|
|
// endif
|
|
// i.e we enable the multicompile only if we can receive SSR or not, and then C# code drive
|
|
// it based on if SSR transparent in frame settings and not (and stripper can strip it).
|
|
// this is currently not possible with our current preprocessor as _DISABLE_SSR_TRANSPARENT is a keyword not a define
|
|
// so instead we used this and chose to pay the extra cost of normal write even if SSR transaprent is disabled.
|
|
// Ideally the shader graph generator should handle it but condition below can't be handle correctly for now.
|
|
#if SHADERPASS == SHADERPASS_TRANSPARENT_DEPTH_PREPASS
|
|
#if !defined(_DISABLE_SSR_TRANSPARENT) && !defined(SHADER_UNLIT)
|
|
#define WRITE_NORMAL_BUFFER
|
|
#endif
|
|
#endif
|
|
|
|
// See Lit.shader
|
|
#if SHADERPASS == SHADERPASS_MOTION_VECTORS && defined(WRITE_DECAL_BUFFER_AND_RENDERING_LAYER)
|
|
#define WRITE_DECAL_BUFFER
|
|
#endif
|
|
|
|
#ifndef DEBUG_DISPLAY
|
|
// In case of opaque we don't want to perform the alpha test, it is done in depth prepass and we use depth equal for ztest (setup from UI)
|
|
// Don't do it with debug display mode as it is possible there is no depth prepass in this case
|
|
#if !defined(_SURFACE_TYPE_TRANSPARENT)
|
|
#if SHADERPASS == SHADERPASS_FORWARD
|
|
#define SHADERPASS_FORWARD_BYPASS_ALPHA_TEST
|
|
#elif SHADERPASS == SHADERPASS_GBUFFER
|
|
#define SHADERPASS_GBUFFER_BYPASS_ALPHA_TEST
|
|
#endif
|
|
#endif
|
|
#endif
|
|
|
|
// Define _DEFERRED_CAPABLE_MATERIAL for shader capable to run in deferred pass
|
|
#if defined(SHADER_LIT) && !defined(_SURFACE_TYPE_TRANSPARENT)
|
|
#define _DEFERRED_CAPABLE_MATERIAL
|
|
#endif
|
|
|
|
// Translate transparent motion vector define
|
|
#if (defined(_TRANSPARENT_WRITES_MOTION_VEC) || defined(_TRANSPARENT_REFRACTIVE_SORT)) && defined(_SURFACE_TYPE_TRANSPARENT)
|
|
#define _WRITE_TRANSPARENT_MOTION_VECTOR
|
|
#endif
|
|
|
|
// -- Graph Properties
|
|
CBUFFER_START(UnityPerMaterial)
|
|
float4 _BaseColor;
|
|
float4 _BaseColorMap_TexelSize;
|
|
float4 _BaseTilingOffset;
|
|
float _BaseTriplanarThreshold;
|
|
float4 _BaseNormalMap_TexelSize;
|
|
float _BaseNormalScale;
|
|
float4 _BaseMaskMap_TexelSize;
|
|
float _BaseMetallic;
|
|
float _BaseAORemapMin;
|
|
float _BaseAORemapMax;
|
|
float _BaseSmoothnessRemapMin;
|
|
float _BaseSmoothnessRemapMax;
|
|
float _USEDYNAMICCOVERTSTATICMASKF;
|
|
float4 _CoverMaskA_TexelSize;
|
|
float _CoverMaskPower;
|
|
float _Cover_Amount;
|
|
float _Cover_Amount_Grow_Speed;
|
|
float3 _CoverDirection;
|
|
float _Cover_Max_Angle;
|
|
float _Cover_Min_Height;
|
|
float _Cover_Min_Height_Blending;
|
|
float4 _CoverBaseColor;
|
|
float4 _CoverBaseColorMap_TexelSize;
|
|
float4 _CoverTilingOffset;
|
|
float _CoverTriplanarThreshold;
|
|
float4 _CoverNormalMap_TexelSize;
|
|
float _CoverNormalScale;
|
|
float _CoverNormalBlendHardness;
|
|
float _CoverHeightMapMin;
|
|
float _CoverHeightMapMax;
|
|
float _CoverHeightMapOffset;
|
|
float _CoverHardness;
|
|
float4 _CoverMaskMap_TexelSize;
|
|
float _CoverMetallic;
|
|
float _CoverAORemapMin;
|
|
float _CoverAORemapMax;
|
|
float _CoverSmoothnessRemapMin;
|
|
float _CoverSmoothnessRemapMax;
|
|
float4 _ShapeNormalMap_TexelSize;
|
|
float _shapeNormalScale;
|
|
float _CovershapeNormalScale;
|
|
float4 _ShapeAO_TexelSize;
|
|
float _ShapeAORemapMin;
|
|
float _ShapeAORemapMax;
|
|
float _CoverShapeAORemapMin;
|
|
float _CoverShapeAORemapMax;
|
|
float4 _DetailMap_TexelSize;
|
|
float4 _DetailTilingOffset;
|
|
float _DetailAlbedoScale;
|
|
float _DetailNormalScale;
|
|
float _DetailSmoothnessScale;
|
|
float _DetailCoverAlbedoScale;
|
|
float _DetailCoverNormalScale;
|
|
float _DetailCoverSmoothnessScale;
|
|
float _CoverMaskRCurvature;
|
|
float _BaseBrightnessCurvMultply;
|
|
float _BaseBrightnessCurvPower;
|
|
float _BaseDarknessCurvMultply;
|
|
float _BaseDarknessCurvPower;
|
|
float _CoverBrightnessCurvMultply;
|
|
float _CoverBrightnessCurvPower;
|
|
float _CoverDarknessCurvMultply;
|
|
float _CoverDarknessCurvPower;
|
|
float4 _WetColor;
|
|
float _WetSmoothness;
|
|
float4 _EmissionColor;
|
|
float _UseShadowThreshold;
|
|
float4 _DoubleSidedConstants;
|
|
UNITY_TEXTURE_STREAMING_DEBUG_VARS;
|
|
float _BlendMode;
|
|
float _EnableBlendModePreserveSpecularLighting;
|
|
float _RayTracing;
|
|
float _RefractionModel;
|
|
float _MaterialID;
|
|
float _MaterialTypeMask;
|
|
CBUFFER_END
|
|
|
|
|
|
// Object and Global properties
|
|
SAMPLER(SamplerState_Linear_Repeat);
|
|
SAMPLER(SamplerState_Linear_Repeat_Aniso8);
|
|
TEXTURE2D(_BaseColorMap);
|
|
SAMPLER(sampler_BaseColorMap);
|
|
TEXTURE2D(_BaseNormalMap);
|
|
SAMPLER(sampler_BaseNormalMap);
|
|
TEXTURE2D(_BaseMaskMap);
|
|
SAMPLER(sampler_BaseMaskMap);
|
|
TEXTURE2D(_CoverMaskA);
|
|
SAMPLER(sampler_CoverMaskA);
|
|
TEXTURE2D(_CoverBaseColorMap);
|
|
SAMPLER(sampler_CoverBaseColorMap);
|
|
TEXTURE2D(_CoverNormalMap);
|
|
SAMPLER(sampler_CoverNormalMap);
|
|
TEXTURE2D(_CoverMaskMap);
|
|
SAMPLER(sampler_CoverMaskMap);
|
|
TEXTURE2D(_ShapeNormalMap);
|
|
SAMPLER(sampler_ShapeNormalMap);
|
|
TEXTURE2D(_ShapeAO);
|
|
SAMPLER(sampler_ShapeAO);
|
|
TEXTURE2D(_DetailMap);
|
|
SAMPLER(sampler_DetailMap);
|
|
|
|
// -- Property used by ScenePickingPass
|
|
#ifdef SCENEPICKINGPASS
|
|
float4 _SelectionID;
|
|
#endif
|
|
|
|
// -- Properties used by SceneSelectionPass
|
|
#ifdef SCENESELECTIONPASS
|
|
int _ObjectId;
|
|
int _PassValue;
|
|
#endif
|
|
|
|
// Includes
|
|
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/RenderPipeline/Raytracing/Shaders/RaytracingMacros.hlsl"
|
|
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/RenderPipeline/Raytracing/Shaders/ShaderVariablesRaytracing.hlsl"
|
|
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/Material/Material.hlsl"
|
|
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/RenderPipeline/Raytracing/Shaders/ShaderVariablesRaytracingLightLoop.hlsl"
|
|
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/RenderPipeline/Raytracing/Shaders/Deferred/RaytracingIntersectonGBuffer.hlsl"
|
|
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/Material/Lit/Lit.hlsl"
|
|
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/Material/StandardLit/StandardLit.hlsl"
|
|
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/Material/Lit/LitRayTracing.hlsl"
|
|
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/Material/BuiltinUtilities.hlsl"
|
|
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/Material/MaterialUtilities.hlsl"
|
|
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/RenderPipeline/Raytracing/Shaders/RayTracingCommon.hlsl"
|
|
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/ShaderLibrary/ShaderGraphFunctions.hlsl"
|
|
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/Material/Decal/DecalUtilities.hlsl"
|
|
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/Material/Lit/LitDecalData.hlsl"
|
|
// GraphIncludes: <None>
|
|
|
|
// --------------------------------------------------
|
|
// Structs and Packing
|
|
|
|
struct SurfaceDescriptionInputs
|
|
{
|
|
float3 WorldSpaceNormal;
|
|
float3 TangentSpaceNormal;
|
|
float3 WorldSpaceTangent;
|
|
float3 WorldSpaceBiTangent;
|
|
float3 AbsoluteWorldSpacePosition;
|
|
float4 uv0;
|
|
float4 VertexColor;
|
|
};
|
|
|
|
//Interpolator Packs: <None>
|
|
|
|
// --------------------------------------------------
|
|
// Graph
|
|
|
|
|
|
// Graph Functions
|
|
|
|
void Unity_Divide_float4(float4 A, float4 B, out float4 Out)
|
|
{
|
|
Out = A / B;
|
|
}
|
|
|
|
void Unity_Combine_float(float R, float G, float B, float A, out float4 RGBA, out float3 RGB, out float2 RG)
|
|
{
|
|
RGBA = float4(R, G, B, A);
|
|
RGB = float3(R, G, B);
|
|
RG = float2(R, G);
|
|
}
|
|
|
|
void Unity_Multiply_float4_float4(float4 A, float4 B, out float4 Out)
|
|
{
|
|
Out = A * B;
|
|
}
|
|
|
|
void Unity_Sign_float3(float3 In, out float3 Out)
|
|
{
|
|
Out = sign(In);
|
|
}
|
|
|
|
void Unity_Multiply_float2_float2(float2 A, float2 B, out float2 Out)
|
|
{
|
|
Out = A * B;
|
|
}
|
|
|
|
void Unity_Absolute_float3(float3 In, out float3 Out)
|
|
{
|
|
Out = abs(In);
|
|
}
|
|
|
|
void Unity_Power_float3(float3 A, float3 B, out float3 Out)
|
|
{
|
|
Out = pow(A, B);
|
|
}
|
|
|
|
void Unity_Multiply_float3_float3(float3 A, float3 B, out float3 Out)
|
|
{
|
|
Out = A * B;
|
|
}
|
|
|
|
void Unity_Multiply_float_float(float A, float B, out float Out)
|
|
{
|
|
Out = A * B;
|
|
}
|
|
|
|
void Unity_Add_float4(float4 A, float4 B, out float4 Out)
|
|
{
|
|
Out = A + B;
|
|
}
|
|
|
|
void Unity_Add_float(float A, float B, out float Out)
|
|
{
|
|
Out = A + B;
|
|
}
|
|
|
|
struct Bindings_TriplanarNM_bc609ed95f52591469ab35dbfe0efcea_float
|
|
{
|
|
float3 WorldSpaceNormal;
|
|
float3 AbsoluteWorldSpacePosition;
|
|
};
|
|
|
|
void SG_TriplanarNM_bc609ed95f52591469ab35dbfe0efcea_float(UnityTexture2D Texture2D_80A3D28F, float Vector1_41461AC9, float Vector1_E4D1C13A, UnitySamplerState _SamplerState, Bindings_TriplanarNM_bc609ed95f52591469ab35dbfe0efcea_float IN, out float4 XYZ_1, out float4 XZ_2, out float4 YZ_3, out float4 XY_4)
|
|
{
|
|
UnityTexture2D _Property_3e01b4d2fc68d48ba3acbba9d5881e59_Out_0_Texture2D = Texture2D_80A3D28F;
|
|
float _Split_89ed63cb625cb3878c183d0b71c03400_R_1_Float = IN.AbsoluteWorldSpacePosition[0];
|
|
float _Split_89ed63cb625cb3878c183d0b71c03400_G_2_Float = IN.AbsoluteWorldSpacePosition[1];
|
|
float _Split_89ed63cb625cb3878c183d0b71c03400_B_3_Float = IN.AbsoluteWorldSpacePosition[2];
|
|
float _Split_89ed63cb625cb3878c183d0b71c03400_A_4_Float = 0;
|
|
float4 _Combine_cf2d04ff119ad88493f6460431765cbb_RGBA_4_Vector4;
|
|
float3 _Combine_cf2d04ff119ad88493f6460431765cbb_RGB_5_Vector3;
|
|
float2 _Combine_cf2d04ff119ad88493f6460431765cbb_RG_6_Vector2;
|
|
Unity_Combine_float(_Split_89ed63cb625cb3878c183d0b71c03400_R_1_Float, _Split_89ed63cb625cb3878c183d0b71c03400_B_3_Float, float(0), float(0), _Combine_cf2d04ff119ad88493f6460431765cbb_RGBA_4_Vector4, _Combine_cf2d04ff119ad88493f6460431765cbb_RGB_5_Vector3, _Combine_cf2d04ff119ad88493f6460431765cbb_RG_6_Vector2);
|
|
float _Property_47988ec10c0c18879d461e00bed806e7_Out_0_Float = Vector1_41461AC9;
|
|
float4 _Multiply_14cec4902d0a00829e4555071a1b8ad1_Out_2_Vector4;
|
|
Unity_Multiply_float4_float4(_Combine_cf2d04ff119ad88493f6460431765cbb_RGBA_4_Vector4, (_Property_47988ec10c0c18879d461e00bed806e7_Out_0_Float.xxxx), _Multiply_14cec4902d0a00829e4555071a1b8ad1_Out_2_Vector4);
|
|
float3 _Sign_b826e0ff2d95ec8cb2b2cbbd7ea2eab6_Out_1_Vector3;
|
|
Unity_Sign_float3(IN.WorldSpaceNormal, _Sign_b826e0ff2d95ec8cb2b2cbbd7ea2eab6_Out_1_Vector3);
|
|
float _Split_742547a7039de986a646d04c157ae549_R_1_Float = _Sign_b826e0ff2d95ec8cb2b2cbbd7ea2eab6_Out_1_Vector3[0];
|
|
float _Split_742547a7039de986a646d04c157ae549_G_2_Float = _Sign_b826e0ff2d95ec8cb2b2cbbd7ea2eab6_Out_1_Vector3[1];
|
|
float _Split_742547a7039de986a646d04c157ae549_B_3_Float = _Sign_b826e0ff2d95ec8cb2b2cbbd7ea2eab6_Out_1_Vector3[2];
|
|
float _Split_742547a7039de986a646d04c157ae549_A_4_Float = 0;
|
|
float2 _Vector2_40a8919e571ec18499de72022c155b38_Out_0_Vector2 = float2(_Split_742547a7039de986a646d04c157ae549_G_2_Float, float(1));
|
|
float2 _Multiply_5fa32af59cdca88389832336b2268bd5_Out_2_Vector2;
|
|
Unity_Multiply_float2_float2((_Multiply_14cec4902d0a00829e4555071a1b8ad1_Out_2_Vector4.xy), _Vector2_40a8919e571ec18499de72022c155b38_Out_0_Vector2, _Multiply_5fa32af59cdca88389832336b2268bd5_Out_2_Vector2);
|
|
UnitySamplerState _Property_544c7fa9dfe54e30a0df9d605340a374_Out_0_SamplerState = _SamplerState;
|
|
float4 _SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_RGBA_0_Vector4 = SAMPLE_TEXTURE2D(_Property_3e01b4d2fc68d48ba3acbba9d5881e59_Out_0_Texture2D.tex, _Property_544c7fa9dfe54e30a0df9d605340a374_Out_0_SamplerState.samplerstate, _Property_3e01b4d2fc68d48ba3acbba9d5881e59_Out_0_Texture2D.GetTransformedUV(_Multiply_5fa32af59cdca88389832336b2268bd5_Out_2_Vector2) );
|
|
float _SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_R_4_Float = _SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_RGBA_0_Vector4.r;
|
|
float _SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_G_5_Float = _SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_RGBA_0_Vector4.g;
|
|
float _SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_B_6_Float = _SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_RGBA_0_Vector4.b;
|
|
float _SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_A_7_Float = _SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_RGBA_0_Vector4.a;
|
|
float3 _Absolute_644b798714827680b39bf5d34f70385f_Out_1_Vector3;
|
|
Unity_Absolute_float3(IN.WorldSpaceNormal, _Absolute_644b798714827680b39bf5d34f70385f_Out_1_Vector3);
|
|
float _Property_adc4c59482221c8aad681c6558728ac9_Out_0_Float = Vector1_E4D1C13A;
|
|
float3 _Power_ee478822a04529849ae8df1636c29fe2_Out_2_Vector3;
|
|
Unity_Power_float3(_Absolute_644b798714827680b39bf5d34f70385f_Out_1_Vector3, (_Property_adc4c59482221c8aad681c6558728ac9_Out_0_Float.xxx), _Power_ee478822a04529849ae8df1636c29fe2_Out_2_Vector3);
|
|
float3 _Multiply_b386a937554d73828e437d126d69608b_Out_2_Vector3;
|
|
Unity_Multiply_float3_float3(_Power_ee478822a04529849ae8df1636c29fe2_Out_2_Vector3, _Power_ee478822a04529849ae8df1636c29fe2_Out_2_Vector3, _Multiply_b386a937554d73828e437d126d69608b_Out_2_Vector3);
|
|
float _Split_ae83014fcbd9f7879a0b91fa66dc9718_R_1_Float = _Multiply_b386a937554d73828e437d126d69608b_Out_2_Vector3[0];
|
|
float _Split_ae83014fcbd9f7879a0b91fa66dc9718_G_2_Float = _Multiply_b386a937554d73828e437d126d69608b_Out_2_Vector3[1];
|
|
float _Split_ae83014fcbd9f7879a0b91fa66dc9718_B_3_Float = _Multiply_b386a937554d73828e437d126d69608b_Out_2_Vector3[2];
|
|
float _Split_ae83014fcbd9f7879a0b91fa66dc9718_A_4_Float = 0;
|
|
float4 _Multiply_2e1040ca9c98d085ace76ee93f094039_Out_2_Vector4;
|
|
Unity_Multiply_float4_float4(_SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_RGBA_0_Vector4, (_Split_ae83014fcbd9f7879a0b91fa66dc9718_G_2_Float.xxxx), _Multiply_2e1040ca9c98d085ace76ee93f094039_Out_2_Vector4);
|
|
float4 _Combine_192c2c4a69be588b90ca005a32e22552_RGBA_4_Vector4;
|
|
float3 _Combine_192c2c4a69be588b90ca005a32e22552_RGB_5_Vector3;
|
|
float2 _Combine_192c2c4a69be588b90ca005a32e22552_RG_6_Vector2;
|
|
Unity_Combine_float(_Split_89ed63cb625cb3878c183d0b71c03400_R_1_Float, _Split_89ed63cb625cb3878c183d0b71c03400_G_2_Float, float(0), float(0), _Combine_192c2c4a69be588b90ca005a32e22552_RGBA_4_Vector4, _Combine_192c2c4a69be588b90ca005a32e22552_RGB_5_Vector3, _Combine_192c2c4a69be588b90ca005a32e22552_RG_6_Vector2);
|
|
float4 _Multiply_138240d0d4846e87b0febabec0d6891b_Out_2_Vector4;
|
|
Unity_Multiply_float4_float4(_Combine_192c2c4a69be588b90ca005a32e22552_RGBA_4_Vector4, (_Property_47988ec10c0c18879d461e00bed806e7_Out_0_Float.xxxx), _Multiply_138240d0d4846e87b0febabec0d6891b_Out_2_Vector4);
|
|
float _Multiply_014402ded5a3988a8c18ba07636ea5a7_Out_2_Float;
|
|
Unity_Multiply_float_float(_Split_742547a7039de986a646d04c157ae549_B_3_Float, -1, _Multiply_014402ded5a3988a8c18ba07636ea5a7_Out_2_Float);
|
|
float2 _Vector2_caa25d55d456a58982bdfc39b1b43f3f_Out_0_Vector2 = float2(_Multiply_014402ded5a3988a8c18ba07636ea5a7_Out_2_Float, float(1));
|
|
float2 _Multiply_a67201b6e1a0a28c98cd9d06e8b09543_Out_2_Vector2;
|
|
Unity_Multiply_float2_float2((_Multiply_138240d0d4846e87b0febabec0d6891b_Out_2_Vector4.xy), _Vector2_caa25d55d456a58982bdfc39b1b43f3f_Out_0_Vector2, _Multiply_a67201b6e1a0a28c98cd9d06e8b09543_Out_2_Vector2);
|
|
float4 _SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_RGBA_0_Vector4 = SAMPLE_TEXTURE2D(_Property_3e01b4d2fc68d48ba3acbba9d5881e59_Out_0_Texture2D.tex, _Property_544c7fa9dfe54e30a0df9d605340a374_Out_0_SamplerState.samplerstate, _Property_3e01b4d2fc68d48ba3acbba9d5881e59_Out_0_Texture2D.GetTransformedUV(_Multiply_a67201b6e1a0a28c98cd9d06e8b09543_Out_2_Vector2) );
|
|
float _SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_R_4_Float = _SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_RGBA_0_Vector4.r;
|
|
float _SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_G_5_Float = _SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_RGBA_0_Vector4.g;
|
|
float _SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_B_6_Float = _SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_RGBA_0_Vector4.b;
|
|
float _SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_A_7_Float = _SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_RGBA_0_Vector4.a;
|
|
float4 _Multiply_7bb4009c92b108849ac6ca92bc1442f2_Out_2_Vector4;
|
|
Unity_Multiply_float4_float4(_SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_RGBA_0_Vector4, (_Split_ae83014fcbd9f7879a0b91fa66dc9718_B_3_Float.xxxx), _Multiply_7bb4009c92b108849ac6ca92bc1442f2_Out_2_Vector4);
|
|
float4 _Combine_1e9ffdba42d6918fb7a4b185f1585d2a_RGBA_4_Vector4;
|
|
float3 _Combine_1e9ffdba42d6918fb7a4b185f1585d2a_RGB_5_Vector3;
|
|
float2 _Combine_1e9ffdba42d6918fb7a4b185f1585d2a_RG_6_Vector2;
|
|
Unity_Combine_float(_Split_89ed63cb625cb3878c183d0b71c03400_B_3_Float, _Split_89ed63cb625cb3878c183d0b71c03400_G_2_Float, float(0), float(0), _Combine_1e9ffdba42d6918fb7a4b185f1585d2a_RGBA_4_Vector4, _Combine_1e9ffdba42d6918fb7a4b185f1585d2a_RGB_5_Vector3, _Combine_1e9ffdba42d6918fb7a4b185f1585d2a_RG_6_Vector2);
|
|
float4 _Multiply_2c0864423b014f8b8af8523f68cbb63c_Out_2_Vector4;
|
|
Unity_Multiply_float4_float4(_Combine_1e9ffdba42d6918fb7a4b185f1585d2a_RGBA_4_Vector4, (_Property_47988ec10c0c18879d461e00bed806e7_Out_0_Float.xxxx), _Multiply_2c0864423b014f8b8af8523f68cbb63c_Out_2_Vector4);
|
|
float2 _Vector2_54dfd40df2fc78809955dd272f2cf0c3_Out_0_Vector2 = float2(_Split_742547a7039de986a646d04c157ae549_R_1_Float, float(1));
|
|
float2 _Multiply_addbd5fcede95f80bbb806c94e49ef63_Out_2_Vector2;
|
|
Unity_Multiply_float2_float2((_Multiply_2c0864423b014f8b8af8523f68cbb63c_Out_2_Vector4.xy), _Vector2_54dfd40df2fc78809955dd272f2cf0c3_Out_0_Vector2, _Multiply_addbd5fcede95f80bbb806c94e49ef63_Out_2_Vector2);
|
|
float4 _SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_RGBA_0_Vector4 = SAMPLE_TEXTURE2D(_Property_3e01b4d2fc68d48ba3acbba9d5881e59_Out_0_Texture2D.tex, _Property_544c7fa9dfe54e30a0df9d605340a374_Out_0_SamplerState.samplerstate, _Property_3e01b4d2fc68d48ba3acbba9d5881e59_Out_0_Texture2D.GetTransformedUV(_Multiply_addbd5fcede95f80bbb806c94e49ef63_Out_2_Vector2) );
|
|
float _SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_R_4_Float = _SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_RGBA_0_Vector4.r;
|
|
float _SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_G_5_Float = _SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_RGBA_0_Vector4.g;
|
|
float _SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_B_6_Float = _SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_RGBA_0_Vector4.b;
|
|
float _SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_A_7_Float = _SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_RGBA_0_Vector4.a;
|
|
float4 _Multiply_77818c22e359fc8cbb7dd20216a8db72_Out_2_Vector4;
|
|
Unity_Multiply_float4_float4(_SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_RGBA_0_Vector4, (_Split_ae83014fcbd9f7879a0b91fa66dc9718_R_1_Float.xxxx), _Multiply_77818c22e359fc8cbb7dd20216a8db72_Out_2_Vector4);
|
|
float4 _Add_769d9ee909c9238dbbf72d2800a2f268_Out_2_Vector4;
|
|
Unity_Add_float4(_Multiply_7bb4009c92b108849ac6ca92bc1442f2_Out_2_Vector4, _Multiply_77818c22e359fc8cbb7dd20216a8db72_Out_2_Vector4, _Add_769d9ee909c9238dbbf72d2800a2f268_Out_2_Vector4);
|
|
float4 _Add_14295f72880e4b87a1baf1ced943ac40_Out_2_Vector4;
|
|
Unity_Add_float4(_Multiply_2e1040ca9c98d085ace76ee93f094039_Out_2_Vector4, _Add_769d9ee909c9238dbbf72d2800a2f268_Out_2_Vector4, _Add_14295f72880e4b87a1baf1ced943ac40_Out_2_Vector4);
|
|
float _Add_e59af300bba2498db32eac1412123447_Out_2_Float;
|
|
Unity_Add_float(_Split_ae83014fcbd9f7879a0b91fa66dc9718_R_1_Float, _Split_ae83014fcbd9f7879a0b91fa66dc9718_G_2_Float, _Add_e59af300bba2498db32eac1412123447_Out_2_Float);
|
|
float _Add_e855069f047fae8ea9027d56acb61e56_Out_2_Float;
|
|
Unity_Add_float(_Add_e59af300bba2498db32eac1412123447_Out_2_Float, _Split_ae83014fcbd9f7879a0b91fa66dc9718_B_3_Float, _Add_e855069f047fae8ea9027d56acb61e56_Out_2_Float);
|
|
float4 _Divide_91ae4b94f1d9b78e99d0472293b8098c_Out_2_Vector4;
|
|
Unity_Divide_float4(_Add_14295f72880e4b87a1baf1ced943ac40_Out_2_Vector4, (_Add_e855069f047fae8ea9027d56acb61e56_Out_2_Float.xxxx), _Divide_91ae4b94f1d9b78e99d0472293b8098c_Out_2_Vector4);
|
|
XYZ_1 = _Divide_91ae4b94f1d9b78e99d0472293b8098c_Out_2_Vector4;
|
|
XZ_2 = _SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_RGBA_0_Vector4;
|
|
YZ_3 = _SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_RGBA_0_Vector4;
|
|
XY_4 = _SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_RGBA_0_Vector4;
|
|
}
|
|
|
|
void Unity_Clamp_float(float In, float Min, float Max, out float Out)
|
|
{
|
|
Out = clamp(In, Min, Max);
|
|
}
|
|
|
|
void Unity_Absolute_float(float In, out float Out)
|
|
{
|
|
Out = abs(In);
|
|
}
|
|
|
|
void Unity_Power_float(float A, float B, out float Out)
|
|
{
|
|
Out = pow(A, B);
|
|
}
|
|
|
|
void Unity_Clamp_float4(float4 In, float4 Min, float4 Max, out float4 Out)
|
|
{
|
|
Out = clamp(In, Min, Max);
|
|
}
|
|
|
|
void Unity_Branch_float4(float Predicate, float4 True, float4 False, out float4 Out)
|
|
{
|
|
Out = Predicate ? True : False;
|
|
}
|
|
|
|
void Unity_TilingAndOffset_float(float2 UV, float2 Tiling, float2 Offset, out float2 Out)
|
|
{
|
|
Out = UV * Tiling + Offset;
|
|
}
|
|
|
|
void Unity_Saturate_float(float In, out float Out)
|
|
{
|
|
Out = saturate(In);
|
|
}
|
|
|
|
void Unity_SquareRoot_float4(float4 In, out float4 Out)
|
|
{
|
|
Out = sqrt(In);
|
|
}
|
|
|
|
void Unity_Sign_float(float In, out float Out)
|
|
{
|
|
Out = sign(In);
|
|
}
|
|
|
|
void Unity_Ceiling_float(float In, out float Out)
|
|
{
|
|
Out = ceil(In);
|
|
}
|
|
|
|
void Unity_Lerp_float4(float4 A, float4 B, float4 T, out float4 Out)
|
|
{
|
|
Out = lerp(A, B, T);
|
|
}
|
|
|
|
struct Bindings_BlendOverlayBaseColor_acdb3dfca72bd6b42bbc35f4613331a2_float
|
|
{
|
|
};
|
|
|
|
void SG_BlendOverlayBaseColor_acdb3dfca72bd6b42bbc35f4613331a2_float(float4 Color_9AA111D3, float Vector1_FBE622A2, float Vector1_8C15C351, Bindings_BlendOverlayBaseColor_acdb3dfca72bd6b42bbc35f4613331a2_float IN, out float3 OutVector4_1)
|
|
{
|
|
float4 _Property_012510d774fb7f8b860f5270dca4500f_Out_0_Vector4 = Color_9AA111D3;
|
|
float4 _SquareRoot_c2c57d0223a9538aa9240890c3cacb0c_Out_1_Vector4;
|
|
Unity_SquareRoot_float4(_Property_012510d774fb7f8b860f5270dca4500f_Out_0_Vector4, _SquareRoot_c2c57d0223a9538aa9240890c3cacb0c_Out_1_Vector4);
|
|
float _Property_a00e29241d12f983b30177515b367ec9_Out_0_Float = Vector1_FBE622A2;
|
|
float _Sign_343a45ede7349283a681c6bd9998fd8e_Out_1_Float;
|
|
Unity_Sign_float(_Property_a00e29241d12f983b30177515b367ec9_Out_0_Float, _Sign_343a45ede7349283a681c6bd9998fd8e_Out_1_Float);
|
|
float _Add_681019b8f5d3d68bb482d419c9fc61a9_Out_2_Float;
|
|
Unity_Add_float(_Sign_343a45ede7349283a681c6bd9998fd8e_Out_1_Float, float(1), _Add_681019b8f5d3d68bb482d419c9fc61a9_Out_2_Float);
|
|
float _Multiply_e8f4cb722712a880ac0db6c7461427f7_Out_2_Float;
|
|
Unity_Multiply_float_float(_Add_681019b8f5d3d68bb482d419c9fc61a9_Out_2_Float, 0.5, _Multiply_e8f4cb722712a880ac0db6c7461427f7_Out_2_Float);
|
|
float _Ceiling_95ad15988aa9b98184875fa754feae01_Out_1_Float;
|
|
Unity_Ceiling_float(_Multiply_e8f4cb722712a880ac0db6c7461427f7_Out_2_Float, _Ceiling_95ad15988aa9b98184875fa754feae01_Out_1_Float);
|
|
float _Property_2db1c747a05ee284a8b00076062f91a4_Out_0_Float = Vector1_8C15C351;
|
|
float _Multiply_9564ecda5193bc8286d9ff771c9226cd_Out_2_Float;
|
|
Unity_Multiply_float_float(_Property_2db1c747a05ee284a8b00076062f91a4_Out_0_Float, _Property_2db1c747a05ee284a8b00076062f91a4_Out_0_Float, _Multiply_9564ecda5193bc8286d9ff771c9226cd_Out_2_Float);
|
|
float4 _Lerp_b3cdb01fc3c5b988ac9b184943bf7c01_Out_3_Vector4;
|
|
Unity_Lerp_float4(_SquareRoot_c2c57d0223a9538aa9240890c3cacb0c_Out_1_Vector4, (_Ceiling_95ad15988aa9b98184875fa754feae01_Out_1_Float.xxxx), (_Multiply_9564ecda5193bc8286d9ff771c9226cd_Out_2_Float.xxxx), _Lerp_b3cdb01fc3c5b988ac9b184943bf7c01_Out_3_Vector4);
|
|
float4 _Multiply_39d1daff98488f8ea2cd794ad4f20926_Out_2_Vector4;
|
|
Unity_Multiply_float4_float4(_Lerp_b3cdb01fc3c5b988ac9b184943bf7c01_Out_3_Vector4, _Lerp_b3cdb01fc3c5b988ac9b184943bf7c01_Out_3_Vector4, _Multiply_39d1daff98488f8ea2cd794ad4f20926_Out_2_Vector4);
|
|
OutVector4_1 = (_Multiply_39d1daff98488f8ea2cd794ad4f20926_Out_2_Vector4.xyz);
|
|
}
|
|
|
|
void Unity_Add_float2(float2 A, float2 B, out float2 Out)
|
|
{
|
|
Out = A + B;
|
|
}
|
|
|
|
void Unity_DotProduct_float2(float2 A, float2 B, out float Out)
|
|
{
|
|
Out = dot(A, B);
|
|
}
|
|
|
|
void Unity_OneMinus_float(float In, out float Out)
|
|
{
|
|
Out = 1 - In;
|
|
}
|
|
|
|
void Unity_SquareRoot_float(float In, out float Out)
|
|
{
|
|
Out = sqrt(In);
|
|
}
|
|
|
|
void Unity_Add_float3(float3 A, float3 B, out float3 Out)
|
|
{
|
|
Out = A + B;
|
|
}
|
|
|
|
void Unity_Divide_float3(float3 A, float3 B, out float3 Out)
|
|
{
|
|
Out = A / B;
|
|
}
|
|
|
|
void Unity_Normalize_float3(float3 In, out float3 Out)
|
|
{
|
|
Out = normalize(In);
|
|
}
|
|
|
|
struct Bindings_TriplanarNMn_059da9746584140498cd018db3c76047_float
|
|
{
|
|
float3 WorldSpaceNormal;
|
|
float3 WorldSpaceTangent;
|
|
float3 WorldSpaceBiTangent;
|
|
float3 AbsoluteWorldSpacePosition;
|
|
};
|
|
|
|
void SG_TriplanarNMn_059da9746584140498cd018db3c76047_float(UnityTexture2D Texture2D_80A3D28F, float Vector1_41461AC9, float Vector1_E4D1C13A, UnitySamplerState _SamplerState, Bindings_TriplanarNMn_059da9746584140498cd018db3c76047_float IN, out float4 XYZ_1, out float4 XZ_2, out float4 YZ_3, out float4 XY_4)
|
|
{
|
|
UnityTexture2D _Property_3e01b4d2fc68d48ba3acbba9d5881e59_Out_0_Texture2D = Texture2D_80A3D28F;
|
|
float _Split_89ed63cb625cb3878c183d0b71c03400_R_1_Float = IN.AbsoluteWorldSpacePosition[0];
|
|
float _Split_89ed63cb625cb3878c183d0b71c03400_G_2_Float = IN.AbsoluteWorldSpacePosition[1];
|
|
float _Split_89ed63cb625cb3878c183d0b71c03400_B_3_Float = IN.AbsoluteWorldSpacePosition[2];
|
|
float _Split_89ed63cb625cb3878c183d0b71c03400_A_4_Float = 0;
|
|
float4 _Combine_cf2d04ff119ad88493f6460431765cbb_RGBA_4_Vector4;
|
|
float3 _Combine_cf2d04ff119ad88493f6460431765cbb_RGB_5_Vector3;
|
|
float2 _Combine_cf2d04ff119ad88493f6460431765cbb_RG_6_Vector2;
|
|
Unity_Combine_float(_Split_89ed63cb625cb3878c183d0b71c03400_R_1_Float, _Split_89ed63cb625cb3878c183d0b71c03400_B_3_Float, float(0), float(0), _Combine_cf2d04ff119ad88493f6460431765cbb_RGBA_4_Vector4, _Combine_cf2d04ff119ad88493f6460431765cbb_RGB_5_Vector3, _Combine_cf2d04ff119ad88493f6460431765cbb_RG_6_Vector2);
|
|
float _Property_47988ec10c0c18879d461e00bed806e7_Out_0_Float = Vector1_41461AC9;
|
|
float4 _Multiply_14cec4902d0a00829e4555071a1b8ad1_Out_2_Vector4;
|
|
Unity_Multiply_float4_float4(_Combine_cf2d04ff119ad88493f6460431765cbb_RGBA_4_Vector4, (_Property_47988ec10c0c18879d461e00bed806e7_Out_0_Float.xxxx), _Multiply_14cec4902d0a00829e4555071a1b8ad1_Out_2_Vector4);
|
|
float3 _Sign_3a6ebf59931cf08cb0482e0144ddac24_Out_1_Vector3;
|
|
Unity_Sign_float3(IN.WorldSpaceNormal, _Sign_3a6ebf59931cf08cb0482e0144ddac24_Out_1_Vector3);
|
|
float _Split_6299d4ddcc4c74828aea40a46fdb896e_R_1_Float = _Sign_3a6ebf59931cf08cb0482e0144ddac24_Out_1_Vector3[0];
|
|
float _Split_6299d4ddcc4c74828aea40a46fdb896e_G_2_Float = _Sign_3a6ebf59931cf08cb0482e0144ddac24_Out_1_Vector3[1];
|
|
float _Split_6299d4ddcc4c74828aea40a46fdb896e_B_3_Float = _Sign_3a6ebf59931cf08cb0482e0144ddac24_Out_1_Vector3[2];
|
|
float _Split_6299d4ddcc4c74828aea40a46fdb896e_A_4_Float = 0;
|
|
float2 _Vector2_b76cb1842101e58b9e636d49b075c612_Out_0_Vector2 = float2(_Split_6299d4ddcc4c74828aea40a46fdb896e_G_2_Float, float(1));
|
|
float2 _Multiply_a87753ad90594382bf3a3a95abbadbc8_Out_2_Vector2;
|
|
Unity_Multiply_float2_float2((_Multiply_14cec4902d0a00829e4555071a1b8ad1_Out_2_Vector4.xy), _Vector2_b76cb1842101e58b9e636d49b075c612_Out_0_Vector2, _Multiply_a87753ad90594382bf3a3a95abbadbc8_Out_2_Vector2);
|
|
UnitySamplerState _Property_8a2b8589cd3a42a1879a29c28e4f711f_Out_0_SamplerState = _SamplerState;
|
|
float4 _SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_RGBA_0_Vector4 = SAMPLE_TEXTURE2D(_Property_3e01b4d2fc68d48ba3acbba9d5881e59_Out_0_Texture2D.tex, _Property_8a2b8589cd3a42a1879a29c28e4f711f_Out_0_SamplerState.samplerstate, _Property_3e01b4d2fc68d48ba3acbba9d5881e59_Out_0_Texture2D.GetTransformedUV(_Multiply_a87753ad90594382bf3a3a95abbadbc8_Out_2_Vector2) );
|
|
_SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_RGBA_0_Vector4.rgb = UnpackNormal(_SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_RGBA_0_Vector4);
|
|
float _SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_R_4_Float = _SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_RGBA_0_Vector4.r;
|
|
float _SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_G_5_Float = _SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_RGBA_0_Vector4.g;
|
|
float _SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_B_6_Float = _SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_RGBA_0_Vector4.b;
|
|
float _SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_A_7_Float = _SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_RGBA_0_Vector4.a;
|
|
float2 _Vector2_ad6bd100e273d78fa409a30a77bfa2cc_Out_0_Vector2 = float2(_SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_R_4_Float, _SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_G_5_Float);
|
|
float2 _Multiply_31e8db88ee20c985a9850d1a58f3282b_Out_2_Vector2;
|
|
Unity_Multiply_float2_float2(_Vector2_ad6bd100e273d78fa409a30a77bfa2cc_Out_0_Vector2, _Vector2_b76cb1842101e58b9e636d49b075c612_Out_0_Vector2, _Multiply_31e8db88ee20c985a9850d1a58f3282b_Out_2_Vector2);
|
|
float _Split_5ed44bf2eca0868f81eb18100f49d1fa_R_1_Float = IN.WorldSpaceNormal[0];
|
|
float _Split_5ed44bf2eca0868f81eb18100f49d1fa_G_2_Float = IN.WorldSpaceNormal[1];
|
|
float _Split_5ed44bf2eca0868f81eb18100f49d1fa_B_3_Float = IN.WorldSpaceNormal[2];
|
|
float _Split_5ed44bf2eca0868f81eb18100f49d1fa_A_4_Float = 0;
|
|
float2 _Vector2_70e5837843f28b8b9d64cada3697bd5a_Out_0_Vector2 = float2(_Split_5ed44bf2eca0868f81eb18100f49d1fa_R_1_Float, _Split_5ed44bf2eca0868f81eb18100f49d1fa_B_3_Float);
|
|
float2 _Add_1145b2f896593d80aa864a34e6702562_Out_2_Vector2;
|
|
Unity_Add_float2(_Multiply_31e8db88ee20c985a9850d1a58f3282b_Out_2_Vector2, _Vector2_70e5837843f28b8b9d64cada3697bd5a_Out_0_Vector2, _Add_1145b2f896593d80aa864a34e6702562_Out_2_Vector2);
|
|
float _Split_2bc77ca2d17bd78cb2383770ce50b179_R_1_Float = _Add_1145b2f896593d80aa864a34e6702562_Out_2_Vector2[0];
|
|
float _Split_2bc77ca2d17bd78cb2383770ce50b179_G_2_Float = _Add_1145b2f896593d80aa864a34e6702562_Out_2_Vector2[1];
|
|
float _Split_2bc77ca2d17bd78cb2383770ce50b179_B_3_Float = 0;
|
|
float _Split_2bc77ca2d17bd78cb2383770ce50b179_A_4_Float = 0;
|
|
float _Multiply_e4fe778b81456d819c52bb414cd95968_Out_2_Float;
|
|
Unity_Multiply_float_float(_SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_B_6_Float, _Split_5ed44bf2eca0868f81eb18100f49d1fa_G_2_Float, _Multiply_e4fe778b81456d819c52bb414cd95968_Out_2_Float);
|
|
float3 _Vector3_08f62c5c01619e849f1a7d85a44531ac_Out_0_Vector3 = float3(_Split_2bc77ca2d17bd78cb2383770ce50b179_R_1_Float, _Multiply_e4fe778b81456d819c52bb414cd95968_Out_2_Float, _Split_2bc77ca2d17bd78cb2383770ce50b179_G_2_Float);
|
|
float3 _Absolute_644b798714827680b39bf5d34f70385f_Out_1_Vector3;
|
|
Unity_Absolute_float3(IN.WorldSpaceNormal, _Absolute_644b798714827680b39bf5d34f70385f_Out_1_Vector3);
|
|
float _Property_adc4c59482221c8aad681c6558728ac9_Out_0_Float = Vector1_E4D1C13A;
|
|
float3 _Power_ee478822a04529849ae8df1636c29fe2_Out_2_Vector3;
|
|
Unity_Power_float3(_Absolute_644b798714827680b39bf5d34f70385f_Out_1_Vector3, (_Property_adc4c59482221c8aad681c6558728ac9_Out_0_Float.xxx), _Power_ee478822a04529849ae8df1636c29fe2_Out_2_Vector3);
|
|
float3 _Multiply_b386a937554d73828e437d126d69608b_Out_2_Vector3;
|
|
Unity_Multiply_float3_float3(_Power_ee478822a04529849ae8df1636c29fe2_Out_2_Vector3, _Power_ee478822a04529849ae8df1636c29fe2_Out_2_Vector3, _Multiply_b386a937554d73828e437d126d69608b_Out_2_Vector3);
|
|
float _Split_ae83014fcbd9f7879a0b91fa66dc9718_R_1_Float = _Multiply_b386a937554d73828e437d126d69608b_Out_2_Vector3[0];
|
|
float _Split_ae83014fcbd9f7879a0b91fa66dc9718_G_2_Float = _Multiply_b386a937554d73828e437d126d69608b_Out_2_Vector3[1];
|
|
float _Split_ae83014fcbd9f7879a0b91fa66dc9718_B_3_Float = _Multiply_b386a937554d73828e437d126d69608b_Out_2_Vector3[2];
|
|
float _Split_ae83014fcbd9f7879a0b91fa66dc9718_A_4_Float = 0;
|
|
float3 _Multiply_2e1040ca9c98d085ace76ee93f094039_Out_2_Vector3;
|
|
Unity_Multiply_float3_float3(_Vector3_08f62c5c01619e849f1a7d85a44531ac_Out_0_Vector3, (_Split_ae83014fcbd9f7879a0b91fa66dc9718_G_2_Float.xxx), _Multiply_2e1040ca9c98d085ace76ee93f094039_Out_2_Vector3);
|
|
float4 _Combine_192c2c4a69be588b90ca005a32e22552_RGBA_4_Vector4;
|
|
float3 _Combine_192c2c4a69be588b90ca005a32e22552_RGB_5_Vector3;
|
|
float2 _Combine_192c2c4a69be588b90ca005a32e22552_RG_6_Vector2;
|
|
Unity_Combine_float(_Split_89ed63cb625cb3878c183d0b71c03400_R_1_Float, _Split_89ed63cb625cb3878c183d0b71c03400_G_2_Float, float(0), float(0), _Combine_192c2c4a69be588b90ca005a32e22552_RGBA_4_Vector4, _Combine_192c2c4a69be588b90ca005a32e22552_RGB_5_Vector3, _Combine_192c2c4a69be588b90ca005a32e22552_RG_6_Vector2);
|
|
float4 _Multiply_138240d0d4846e87b0febabec0d6891b_Out_2_Vector4;
|
|
Unity_Multiply_float4_float4(_Combine_192c2c4a69be588b90ca005a32e22552_RGBA_4_Vector4, (_Property_47988ec10c0c18879d461e00bed806e7_Out_0_Float.xxxx), _Multiply_138240d0d4846e87b0febabec0d6891b_Out_2_Vector4);
|
|
float _Multiply_de711f4a4614bd89a463b53374cf4036_Out_2_Float;
|
|
Unity_Multiply_float_float(_Split_6299d4ddcc4c74828aea40a46fdb896e_B_3_Float, -1, _Multiply_de711f4a4614bd89a463b53374cf4036_Out_2_Float);
|
|
float2 _Vector2_4ed33f0c73b2698fa6f3c1b77fe76808_Out_0_Vector2 = float2(_Multiply_de711f4a4614bd89a463b53374cf4036_Out_2_Float, float(1));
|
|
float2 _Multiply_2af6058cc6ccb88caefd2799bb5941e8_Out_2_Vector2;
|
|
Unity_Multiply_float2_float2((_Multiply_138240d0d4846e87b0febabec0d6891b_Out_2_Vector4.xy), _Vector2_4ed33f0c73b2698fa6f3c1b77fe76808_Out_0_Vector2, _Multiply_2af6058cc6ccb88caefd2799bb5941e8_Out_2_Vector2);
|
|
float4 _SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_RGBA_0_Vector4 = SAMPLE_TEXTURE2D(_Property_3e01b4d2fc68d48ba3acbba9d5881e59_Out_0_Texture2D.tex, _Property_8a2b8589cd3a42a1879a29c28e4f711f_Out_0_SamplerState.samplerstate, _Property_3e01b4d2fc68d48ba3acbba9d5881e59_Out_0_Texture2D.GetTransformedUV(_Multiply_2af6058cc6ccb88caefd2799bb5941e8_Out_2_Vector2) );
|
|
_SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_RGBA_0_Vector4.rgb = UnpackNormal(_SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_RGBA_0_Vector4);
|
|
float _SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_R_4_Float = _SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_RGBA_0_Vector4.r;
|
|
float _SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_G_5_Float = _SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_RGBA_0_Vector4.g;
|
|
float _SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_B_6_Float = _SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_RGBA_0_Vector4.b;
|
|
float _SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_A_7_Float = _SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_RGBA_0_Vector4.a;
|
|
float2 _Vector2_fe9aedd4528c7486ada4abdca0b0944e_Out_0_Vector2 = float2(_SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_R_4_Float, _SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_G_5_Float);
|
|
float2 _Multiply_02b9b4665ad9918d8721bcaddc82f06f_Out_2_Vector2;
|
|
Unity_Multiply_float2_float2(_Vector2_fe9aedd4528c7486ada4abdca0b0944e_Out_0_Vector2, _Vector2_4ed33f0c73b2698fa6f3c1b77fe76808_Out_0_Vector2, _Multiply_02b9b4665ad9918d8721bcaddc82f06f_Out_2_Vector2);
|
|
float2 _Vector2_a74a85274da15181abb63cc5e8df0de1_Out_0_Vector2 = float2(_Split_5ed44bf2eca0868f81eb18100f49d1fa_R_1_Float, _Split_5ed44bf2eca0868f81eb18100f49d1fa_G_2_Float);
|
|
float2 _Add_b227c84042055e8faa1a9fdc69529707_Out_2_Vector2;
|
|
Unity_Add_float2(_Multiply_02b9b4665ad9918d8721bcaddc82f06f_Out_2_Vector2, _Vector2_a74a85274da15181abb63cc5e8df0de1_Out_0_Vector2, _Add_b227c84042055e8faa1a9fdc69529707_Out_2_Vector2);
|
|
float _Split_2cfb9eacd8762483941459cdf28bda97_R_1_Float = _Add_b227c84042055e8faa1a9fdc69529707_Out_2_Vector2[0];
|
|
float _Split_2cfb9eacd8762483941459cdf28bda97_G_2_Float = _Add_b227c84042055e8faa1a9fdc69529707_Out_2_Vector2[1];
|
|
float _Split_2cfb9eacd8762483941459cdf28bda97_B_3_Float = 0;
|
|
float _Split_2cfb9eacd8762483941459cdf28bda97_A_4_Float = 0;
|
|
float _Multiply_1d65ce08ce672087879125f2e13c4004_Out_2_Float;
|
|
Unity_Multiply_float_float(_SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_B_6_Float, _Split_5ed44bf2eca0868f81eb18100f49d1fa_B_3_Float, _Multiply_1d65ce08ce672087879125f2e13c4004_Out_2_Float);
|
|
float3 _Vector3_ba6cfb4671e8c58f9b41ea1dc23102ca_Out_0_Vector3 = float3(_Split_2cfb9eacd8762483941459cdf28bda97_R_1_Float, _Split_2cfb9eacd8762483941459cdf28bda97_G_2_Float, _Multiply_1d65ce08ce672087879125f2e13c4004_Out_2_Float);
|
|
float3 _Multiply_7bb4009c92b108849ac6ca92bc1442f2_Out_2_Vector3;
|
|
Unity_Multiply_float3_float3(_Vector3_ba6cfb4671e8c58f9b41ea1dc23102ca_Out_0_Vector3, (_Split_ae83014fcbd9f7879a0b91fa66dc9718_B_3_Float.xxx), _Multiply_7bb4009c92b108849ac6ca92bc1442f2_Out_2_Vector3);
|
|
float4 _Combine_1e9ffdba42d6918fb7a4b185f1585d2a_RGBA_4_Vector4;
|
|
float3 _Combine_1e9ffdba42d6918fb7a4b185f1585d2a_RGB_5_Vector3;
|
|
float2 _Combine_1e9ffdba42d6918fb7a4b185f1585d2a_RG_6_Vector2;
|
|
Unity_Combine_float(_Split_89ed63cb625cb3878c183d0b71c03400_B_3_Float, _Split_89ed63cb625cb3878c183d0b71c03400_G_2_Float, float(0), float(0), _Combine_1e9ffdba42d6918fb7a4b185f1585d2a_RGBA_4_Vector4, _Combine_1e9ffdba42d6918fb7a4b185f1585d2a_RGB_5_Vector3, _Combine_1e9ffdba42d6918fb7a4b185f1585d2a_RG_6_Vector2);
|
|
float4 _Multiply_2c0864423b014f8b8af8523f68cbb63c_Out_2_Vector4;
|
|
Unity_Multiply_float4_float4(_Combine_1e9ffdba42d6918fb7a4b185f1585d2a_RGBA_4_Vector4, (_Property_47988ec10c0c18879d461e00bed806e7_Out_0_Float.xxxx), _Multiply_2c0864423b014f8b8af8523f68cbb63c_Out_2_Vector4);
|
|
float2 _Vector2_a1e23e0f921b6484818f009a2b12a5ba_Out_0_Vector2 = float2(_Split_6299d4ddcc4c74828aea40a46fdb896e_R_1_Float, float(1));
|
|
float2 _Multiply_862402885a49f18cb87278ab53bc6744_Out_2_Vector2;
|
|
Unity_Multiply_float2_float2((_Multiply_2c0864423b014f8b8af8523f68cbb63c_Out_2_Vector4.xy), _Vector2_a1e23e0f921b6484818f009a2b12a5ba_Out_0_Vector2, _Multiply_862402885a49f18cb87278ab53bc6744_Out_2_Vector2);
|
|
float4 _SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_RGBA_0_Vector4 = SAMPLE_TEXTURE2D(_Property_3e01b4d2fc68d48ba3acbba9d5881e59_Out_0_Texture2D.tex, _Property_8a2b8589cd3a42a1879a29c28e4f711f_Out_0_SamplerState.samplerstate, _Property_3e01b4d2fc68d48ba3acbba9d5881e59_Out_0_Texture2D.GetTransformedUV(_Multiply_862402885a49f18cb87278ab53bc6744_Out_2_Vector2) );
|
|
_SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_RGBA_0_Vector4.rgb = UnpackNormal(_SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_RGBA_0_Vector4);
|
|
float _SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_R_4_Float = _SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_RGBA_0_Vector4.r;
|
|
float _SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_G_5_Float = _SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_RGBA_0_Vector4.g;
|
|
float _SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_B_6_Float = _SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_RGBA_0_Vector4.b;
|
|
float _SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_A_7_Float = _SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_RGBA_0_Vector4.a;
|
|
float _Multiply_4649b768be76d784a3284bacde795359_Out_2_Float;
|
|
Unity_Multiply_float_float(_SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_B_6_Float, _Split_5ed44bf2eca0868f81eb18100f49d1fa_R_1_Float, _Multiply_4649b768be76d784a3284bacde795359_Out_2_Float);
|
|
float2 _Vector2_819fcd5eb484438eacad1987576d7d67_Out_0_Vector2 = float2(_SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_R_4_Float, _SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_G_5_Float);
|
|
float2 _Multiply_58530ebb3c6d798b93686a76247bf505_Out_2_Vector2;
|
|
Unity_Multiply_float2_float2(_Vector2_819fcd5eb484438eacad1987576d7d67_Out_0_Vector2, _Vector2_a1e23e0f921b6484818f009a2b12a5ba_Out_0_Vector2, _Multiply_58530ebb3c6d798b93686a76247bf505_Out_2_Vector2);
|
|
float2 _Vector2_e293c112b2f49e88a5fe46dfb1fbeb40_Out_0_Vector2 = float2(_Split_5ed44bf2eca0868f81eb18100f49d1fa_B_3_Float, _Split_5ed44bf2eca0868f81eb18100f49d1fa_G_2_Float);
|
|
float2 _Add_cf00fb232c6e2b8e973ab2f84453f55e_Out_2_Vector2;
|
|
Unity_Add_float2(_Multiply_58530ebb3c6d798b93686a76247bf505_Out_2_Vector2, _Vector2_e293c112b2f49e88a5fe46dfb1fbeb40_Out_0_Vector2, _Add_cf00fb232c6e2b8e973ab2f84453f55e_Out_2_Vector2);
|
|
float _Split_3ea3e61d32bdd78f82c686b75ff3fd9b_R_1_Float = _Add_cf00fb232c6e2b8e973ab2f84453f55e_Out_2_Vector2[0];
|
|
float _Split_3ea3e61d32bdd78f82c686b75ff3fd9b_G_2_Float = _Add_cf00fb232c6e2b8e973ab2f84453f55e_Out_2_Vector2[1];
|
|
float _Split_3ea3e61d32bdd78f82c686b75ff3fd9b_B_3_Float = 0;
|
|
float _Split_3ea3e61d32bdd78f82c686b75ff3fd9b_A_4_Float = 0;
|
|
float3 _Vector3_13a08d5940172a84a78ee3d9b8766833_Out_0_Vector3 = float3(_Multiply_4649b768be76d784a3284bacde795359_Out_2_Float, _Split_3ea3e61d32bdd78f82c686b75ff3fd9b_G_2_Float, _Split_3ea3e61d32bdd78f82c686b75ff3fd9b_R_1_Float);
|
|
float3 _Multiply_77818c22e359fc8cbb7dd20216a8db72_Out_2_Vector3;
|
|
Unity_Multiply_float3_float3(_Vector3_13a08d5940172a84a78ee3d9b8766833_Out_0_Vector3, (_Split_ae83014fcbd9f7879a0b91fa66dc9718_R_1_Float.xxx), _Multiply_77818c22e359fc8cbb7dd20216a8db72_Out_2_Vector3);
|
|
float3 _Add_769d9ee909c9238dbbf72d2800a2f268_Out_2_Vector3;
|
|
Unity_Add_float3(_Multiply_7bb4009c92b108849ac6ca92bc1442f2_Out_2_Vector3, _Multiply_77818c22e359fc8cbb7dd20216a8db72_Out_2_Vector3, _Add_769d9ee909c9238dbbf72d2800a2f268_Out_2_Vector3);
|
|
float3 _Add_14295f72880e4b87a1baf1ced943ac40_Out_2_Vector3;
|
|
Unity_Add_float3(_Multiply_2e1040ca9c98d085ace76ee93f094039_Out_2_Vector3, _Add_769d9ee909c9238dbbf72d2800a2f268_Out_2_Vector3, _Add_14295f72880e4b87a1baf1ced943ac40_Out_2_Vector3);
|
|
float _Add_e59af300bba2498db32eac1412123447_Out_2_Float;
|
|
Unity_Add_float(_Split_ae83014fcbd9f7879a0b91fa66dc9718_R_1_Float, _Split_ae83014fcbd9f7879a0b91fa66dc9718_G_2_Float, _Add_e59af300bba2498db32eac1412123447_Out_2_Float);
|
|
float _Add_e855069f047fae8ea9027d56acb61e56_Out_2_Float;
|
|
Unity_Add_float(_Add_e59af300bba2498db32eac1412123447_Out_2_Float, _Split_ae83014fcbd9f7879a0b91fa66dc9718_B_3_Float, _Add_e855069f047fae8ea9027d56acb61e56_Out_2_Float);
|
|
float3 _Divide_91ae4b94f1d9b78e99d0472293b8098c_Out_2_Vector3;
|
|
Unity_Divide_float3(_Add_14295f72880e4b87a1baf1ced943ac40_Out_2_Vector3, (_Add_e855069f047fae8ea9027d56acb61e56_Out_2_Float.xxx), _Divide_91ae4b94f1d9b78e99d0472293b8098c_Out_2_Vector3);
|
|
float3 _Transform_73eecc0c3689d184a34c8d0f28a58adf_Out_1_Vector3;
|
|
{
|
|
float3x3 tangentTransform = float3x3(IN.WorldSpaceTangent, IN.WorldSpaceBiTangent, IN.WorldSpaceNormal);
|
|
_Transform_73eecc0c3689d184a34c8d0f28a58adf_Out_1_Vector3 = TransformWorldToTangent(_Divide_91ae4b94f1d9b78e99d0472293b8098c_Out_2_Vector3.xyz, tangentTransform, true);
|
|
}
|
|
float3 _Normalize_15ef346824db0a8797631ed8b998e673_Out_1_Vector3;
|
|
Unity_Normalize_float3(_Transform_73eecc0c3689d184a34c8d0f28a58adf_Out_1_Vector3, _Normalize_15ef346824db0a8797631ed8b998e673_Out_1_Vector3);
|
|
XYZ_1 = (float4(_Normalize_15ef346824db0a8797631ed8b998e673_Out_1_Vector3, 1.0));
|
|
XZ_2 = (float4(_Vector3_08f62c5c01619e849f1a7d85a44531ac_Out_0_Vector3, 1.0));
|
|
YZ_3 = (float4(_Vector3_ba6cfb4671e8c58f9b41ea1dc23102ca_Out_0_Vector3, 1.0));
|
|
XY_4 = (float4(_Vector3_13a08d5940172a84a78ee3d9b8766833_Out_0_Vector3, 1.0));
|
|
}
|
|
|
|
void Unity_NormalStrength_float(float3 In, float Strength, out float3 Out)
|
|
{
|
|
Out = float3(In.rg * Strength, lerp(1, In.b, saturate(Strength)));
|
|
}
|
|
|
|
void Unity_NormalBlend_float(float3 A, float3 B, out float3 Out)
|
|
{
|
|
Out = SafeNormalize(float3(A.rg + B.rg, A.b * B.b));
|
|
}
|
|
|
|
void Unity_Subtract_float(float A, float B, out float Out)
|
|
{
|
|
Out = A - B;
|
|
}
|
|
|
|
void Unity_Divide_float(float A, float B, out float Out)
|
|
{
|
|
Out = A / B;
|
|
}
|
|
|
|
void Unity_Lerp_float3(float3 A, float3 B, float3 T, out float3 Out)
|
|
{
|
|
Out = lerp(A, B, T);
|
|
}
|
|
|
|
void Unity_Remap_float(float In, float2 InMinMax, float2 OutMinMax, out float Out)
|
|
{
|
|
Out = OutMinMax.x + (In - InMinMax.x) * (OutMinMax.y - OutMinMax.x) / (InMinMax.y - InMinMax.x);
|
|
}
|
|
|
|
void Unity_Branch_float(float Predicate, float True, float False, out float Out)
|
|
{
|
|
Out = Predicate ? True : False;
|
|
}
|
|
|
|
void Unity_Lerp_float(float A, float B, float T, out float Out)
|
|
{
|
|
Out = lerp(A, B, T);
|
|
}
|
|
|
|
struct Bindings_BlendOverlayDetailSmoothness_06e12138dc89c0040b45a57abe520a1a_float
|
|
{
|
|
};
|
|
|
|
void SG_BlendOverlayDetailSmoothness_06e12138dc89c0040b45a57abe520a1a_float(float Vector1_32317166, float Vector1_FBE622A2, float Vector1_8C15C351, Bindings_BlendOverlayDetailSmoothness_06e12138dc89c0040b45a57abe520a1a_float IN, out float SmoothnessOverlay_1)
|
|
{
|
|
float _Property_728cc50521e9e988ac9cbff4872d5139_Out_0_Float = Vector1_32317166;
|
|
float _Property_a00e29241d12f983b30177515b367ec9_Out_0_Float = Vector1_FBE622A2;
|
|
float _Sign_343a45ede7349283a681c6bd9998fd8e_Out_1_Float;
|
|
Unity_Sign_float(_Property_a00e29241d12f983b30177515b367ec9_Out_0_Float, _Sign_343a45ede7349283a681c6bd9998fd8e_Out_1_Float);
|
|
float _Add_681019b8f5d3d68bb482d419c9fc61a9_Out_2_Float;
|
|
Unity_Add_float(_Sign_343a45ede7349283a681c6bd9998fd8e_Out_1_Float, float(1), _Add_681019b8f5d3d68bb482d419c9fc61a9_Out_2_Float);
|
|
float _Multiply_e8f4cb722712a880ac0db6c7461427f7_Out_2_Float;
|
|
Unity_Multiply_float_float(_Add_681019b8f5d3d68bb482d419c9fc61a9_Out_2_Float, 0.5, _Multiply_e8f4cb722712a880ac0db6c7461427f7_Out_2_Float);
|
|
float _Ceiling_95ad15988aa9b98184875fa754feae01_Out_1_Float;
|
|
Unity_Ceiling_float(_Multiply_e8f4cb722712a880ac0db6c7461427f7_Out_2_Float, _Ceiling_95ad15988aa9b98184875fa754feae01_Out_1_Float);
|
|
float _Property_2db1c747a05ee284a8b00076062f91a4_Out_0_Float = Vector1_8C15C351;
|
|
float _Lerp_b3cdb01fc3c5b988ac9b184943bf7c01_Out_3_Float;
|
|
Unity_Lerp_float(_Property_728cc50521e9e988ac9cbff4872d5139_Out_0_Float, _Ceiling_95ad15988aa9b98184875fa754feae01_Out_1_Float, _Property_2db1c747a05ee284a8b00076062f91a4_Out_0_Float, _Lerp_b3cdb01fc3c5b988ac9b184943bf7c01_Out_3_Float);
|
|
SmoothnessOverlay_1 = _Lerp_b3cdb01fc3c5b988ac9b184943bf7c01_Out_3_Float;
|
|
}
|
|
|
|
void Unity_Minimum_float(float A, float B, out float Out)
|
|
{
|
|
Out = min(A, B);
|
|
};
|
|
|
|
// Graph Vertex
|
|
// GraphVertex: <None>
|
|
|
|
// Graph Pixel
|
|
struct SurfaceDescription
|
|
{
|
|
float3 BaseColor;
|
|
float3 Emission;
|
|
float Alpha;
|
|
float3 BentNormal;
|
|
float Smoothness;
|
|
float Occlusion;
|
|
float3 NormalTS;
|
|
float Metallic;
|
|
};
|
|
|
|
SurfaceDescription SurfaceDescriptionFunction(SurfaceDescriptionInputs IN)
|
|
{
|
|
SurfaceDescription surface = (SurfaceDescription)0;
|
|
float _Property_72a5c604805a7b8ebbfd7acee03656aa_Out_0_Boolean = _CoverMaskRCurvature;
|
|
UnityTexture2D _Property_5f029bbc9f13b7858650859c3b63ebfd_Out_0_Texture2D = UnityBuildTexture2DStructNoScale(_BaseColorMap);
|
|
float4 _Property_a409d5fcafb9f182a4b2aea64204408f_Out_0_Vector4 = _BaseTilingOffset;
|
|
float4 _Divide_6a90cebe78e620828de587523daaa7e6_Out_2_Vector4;
|
|
Unity_Divide_float4(float4(1, 1, 0, 0), _Property_a409d5fcafb9f182a4b2aea64204408f_Out_0_Vector4, _Divide_6a90cebe78e620828de587523daaa7e6_Out_2_Vector4);
|
|
float _Property_3539de8c698c2981bb3c088d4ec52201_Out_0_Float = _BaseTriplanarThreshold;
|
|
Bindings_TriplanarNM_bc609ed95f52591469ab35dbfe0efcea_float _TriplanarNM_92d0433ff3938b8392407d2ab8713ac8;
|
|
_TriplanarNM_92d0433ff3938b8392407d2ab8713ac8.WorldSpaceNormal = IN.WorldSpaceNormal;
|
|
_TriplanarNM_92d0433ff3938b8392407d2ab8713ac8.AbsoluteWorldSpacePosition = IN.AbsoluteWorldSpacePosition;
|
|
float4 _TriplanarNM_92d0433ff3938b8392407d2ab8713ac8_XYZ_1_Vector4;
|
|
float4 _TriplanarNM_92d0433ff3938b8392407d2ab8713ac8_XZ_2_Vector4;
|
|
float4 _TriplanarNM_92d0433ff3938b8392407d2ab8713ac8_YZ_3_Vector4;
|
|
float4 _TriplanarNM_92d0433ff3938b8392407d2ab8713ac8_XY_4_Vector4;
|
|
SG_TriplanarNM_bc609ed95f52591469ab35dbfe0efcea_float(_Property_5f029bbc9f13b7858650859c3b63ebfd_Out_0_Texture2D, (_Divide_6a90cebe78e620828de587523daaa7e6_Out_2_Vector4).x, _Property_3539de8c698c2981bb3c088d4ec52201_Out_0_Float, UnityBuildSamplerStateStruct(SamplerState_Linear_Repeat_Aniso8), _TriplanarNM_92d0433ff3938b8392407d2ab8713ac8, _TriplanarNM_92d0433ff3938b8392407d2ab8713ac8_XYZ_1_Vector4, _TriplanarNM_92d0433ff3938b8392407d2ab8713ac8_XZ_2_Vector4, _TriplanarNM_92d0433ff3938b8392407d2ab8713ac8_YZ_3_Vector4, _TriplanarNM_92d0433ff3938b8392407d2ab8713ac8_XY_4_Vector4);
|
|
float4 _Property_87cd542c2b8c30868ed1d7d38aed8f2b_Out_0_Vector4 = _BaseColor;
|
|
float4 _Multiply_4b2be0b3fe39f385b887e7c82ab41e0b_Out_2_Vector4;
|
|
Unity_Multiply_float4_float4(_TriplanarNM_92d0433ff3938b8392407d2ab8713ac8_XYZ_1_Vector4, _Property_87cd542c2b8c30868ed1d7d38aed8f2b_Out_0_Vector4, _Multiply_4b2be0b3fe39f385b887e7c82ab41e0b_Out_2_Vector4);
|
|
UnityTexture2D _Property_c167aafac28bd98c8411d3e25631fdeb_Out_0_Texture2D = UnityBuildTexture2DStructNoScale(_CoverMaskA);
|
|
float4 _UV_e143f0ebbac8bb8cab3206ab93422dda_Out_0_Vector4 = IN.uv0;
|
|
float4 _SampleTexture2D_32717b1e99785588830ceee116cbe7fc_RGBA_0_Vector4 = SAMPLE_TEXTURE2D(_Property_c167aafac28bd98c8411d3e25631fdeb_Out_0_Texture2D.tex, _Property_c167aafac28bd98c8411d3e25631fdeb_Out_0_Texture2D.samplerstate, _Property_c167aafac28bd98c8411d3e25631fdeb_Out_0_Texture2D.GetTransformedUV((_UV_e143f0ebbac8bb8cab3206ab93422dda_Out_0_Vector4.xy)) );
|
|
float _SampleTexture2D_32717b1e99785588830ceee116cbe7fc_R_4_Float = _SampleTexture2D_32717b1e99785588830ceee116cbe7fc_RGBA_0_Vector4.r;
|
|
float _SampleTexture2D_32717b1e99785588830ceee116cbe7fc_G_5_Float = _SampleTexture2D_32717b1e99785588830ceee116cbe7fc_RGBA_0_Vector4.g;
|
|
float _SampleTexture2D_32717b1e99785588830ceee116cbe7fc_B_6_Float = _SampleTexture2D_32717b1e99785588830ceee116cbe7fc_RGBA_0_Vector4.b;
|
|
float _SampleTexture2D_32717b1e99785588830ceee116cbe7fc_A_7_Float = _SampleTexture2D_32717b1e99785588830ceee116cbe7fc_RGBA_0_Vector4.a;
|
|
float _Multiply_01f97603c3df268380d339564b08db11_Out_2_Float;
|
|
Unity_Multiply_float_float(_SampleTexture2D_32717b1e99785588830ceee116cbe7fc_R_4_Float, 2, _Multiply_01f97603c3df268380d339564b08db11_Out_2_Float);
|
|
float _Property_cad777e9a810198e8076eb2cd76e6817_Out_0_Float = _BaseDarknessCurvMultply;
|
|
float _Multiply_b67c8963c3ba188e85b84ae9bf0dcbf7_Out_2_Float;
|
|
Unity_Multiply_float_float(_Multiply_01f97603c3df268380d339564b08db11_Out_2_Float, _Property_cad777e9a810198e8076eb2cd76e6817_Out_0_Float, _Multiply_b67c8963c3ba188e85b84ae9bf0dcbf7_Out_2_Float);
|
|
float _Clamp_646f55d74b38f18aa983e5d031e0e7c3_Out_3_Float;
|
|
Unity_Clamp_float(_Multiply_b67c8963c3ba188e85b84ae9bf0dcbf7_Out_2_Float, float(0), float(1), _Clamp_646f55d74b38f18aa983e5d031e0e7c3_Out_3_Float);
|
|
float _Absolute_c99e11216fab2488946eb6243d985fdc_Out_1_Float;
|
|
Unity_Absolute_float(_Clamp_646f55d74b38f18aa983e5d031e0e7c3_Out_3_Float, _Absolute_c99e11216fab2488946eb6243d985fdc_Out_1_Float);
|
|
float _Property_f8a9827e6f28d9819188d4775dcf7620_Out_0_Float = _BaseDarknessCurvPower;
|
|
float _Power_1b88303e1ca2f285b344bf6aa0cf05e4_Out_2_Float;
|
|
Unity_Power_float(_Absolute_c99e11216fab2488946eb6243d985fdc_Out_1_Float, _Property_f8a9827e6f28d9819188d4775dcf7620_Out_0_Float, _Power_1b88303e1ca2f285b344bf6aa0cf05e4_Out_2_Float);
|
|
float _Clamp_27887d983dbb5a8bbd2966fbcbd7c126_Out_3_Float;
|
|
Unity_Clamp_float(_Power_1b88303e1ca2f285b344bf6aa0cf05e4_Out_2_Float, float(0), float(1), _Clamp_27887d983dbb5a8bbd2966fbcbd7c126_Out_3_Float);
|
|
float4 _Multiply_59efbfb897b39480ad44be129db72018_Out_2_Vector4;
|
|
Unity_Multiply_float4_float4(_Multiply_4b2be0b3fe39f385b887e7c82ab41e0b_Out_2_Vector4, (_Clamp_27887d983dbb5a8bbd2966fbcbd7c126_Out_3_Float.xxxx), _Multiply_59efbfb897b39480ad44be129db72018_Out_2_Vector4);
|
|
float4 _Clamp_841e38951a68f286955c4755e78c610b_Out_3_Vector4;
|
|
Unity_Clamp_float4(_Multiply_59efbfb897b39480ad44be129db72018_Out_2_Vector4, float4(0, 0, 0, 0), float4(1, 1, 1, 1), _Clamp_841e38951a68f286955c4755e78c610b_Out_3_Vector4);
|
|
float _Add_d7ea4a88c4af4886b1e567ddd2b963f9_Out_2_Float;
|
|
Unity_Add_float(_Multiply_01f97603c3df268380d339564b08db11_Out_2_Float, float(-1), _Add_d7ea4a88c4af4886b1e567ddd2b963f9_Out_2_Float);
|
|
float _Clamp_1a02c4bf5903c988b1489d14c840c1e3_Out_3_Float;
|
|
Unity_Clamp_float(_Add_d7ea4a88c4af4886b1e567ddd2b963f9_Out_2_Float, float(0), float(1), _Clamp_1a02c4bf5903c988b1489d14c840c1e3_Out_3_Float);
|
|
float _Property_0e0e1ec2131cec87836dce596351dc1c_Out_0_Float = _BaseBrightnessCurvMultply;
|
|
float _Multiply_c975dfa7de001c89addd082d443e2d07_Out_2_Float;
|
|
Unity_Multiply_float_float(_Clamp_1a02c4bf5903c988b1489d14c840c1e3_Out_3_Float, _Property_0e0e1ec2131cec87836dce596351dc1c_Out_0_Float, _Multiply_c975dfa7de001c89addd082d443e2d07_Out_2_Float);
|
|
float _Clamp_d5711b145a87ef8e8a93ceb9b6197759_Out_3_Float;
|
|
Unity_Clamp_float(_Multiply_c975dfa7de001c89addd082d443e2d07_Out_2_Float, float(0), float(1), _Clamp_d5711b145a87ef8e8a93ceb9b6197759_Out_3_Float);
|
|
float _Absolute_8f9bd7ee7a35c18084d08ad7ef463f52_Out_1_Float;
|
|
Unity_Absolute_float(_Clamp_d5711b145a87ef8e8a93ceb9b6197759_Out_3_Float, _Absolute_8f9bd7ee7a35c18084d08ad7ef463f52_Out_1_Float);
|
|
float _Property_9092f5beea2bec83a5c8a3f6623953a6_Out_0_Float = _BaseBrightnessCurvPower;
|
|
float _Power_5c1a81a2cfcc578996666adb93479f83_Out_2_Float;
|
|
Unity_Power_float(_Absolute_8f9bd7ee7a35c18084d08ad7ef463f52_Out_1_Float, _Property_9092f5beea2bec83a5c8a3f6623953a6_Out_0_Float, _Power_5c1a81a2cfcc578996666adb93479f83_Out_2_Float);
|
|
float _Clamp_f3c614a7ae35508288c0bc3f6194ca34_Out_3_Float;
|
|
Unity_Clamp_float(_Power_5c1a81a2cfcc578996666adb93479f83_Out_2_Float, float(0), float(1), _Clamp_f3c614a7ae35508288c0bc3f6194ca34_Out_3_Float);
|
|
float4 _Add_8313e15cade91a8ba653986d6722818a_Out_2_Vector4;
|
|
Unity_Add_float4(_Clamp_841e38951a68f286955c4755e78c610b_Out_3_Vector4, (_Clamp_f3c614a7ae35508288c0bc3f6194ca34_Out_3_Float.xxxx), _Add_8313e15cade91a8ba653986d6722818a_Out_2_Vector4);
|
|
float4 _Clamp_6dc8fea4fa463b8ea840911fd315c80f_Out_3_Vector4;
|
|
Unity_Clamp_float4(_Add_8313e15cade91a8ba653986d6722818a_Out_2_Vector4, float4(0, 0, 0, 0), float4(1, 1, 1, 1), _Clamp_6dc8fea4fa463b8ea840911fd315c80f_Out_3_Vector4);
|
|
float4 _Branch_26165227c7a50284b87d2996dee9982c_Out_3_Vector4;
|
|
Unity_Branch_float4(_Property_72a5c604805a7b8ebbfd7acee03656aa_Out_0_Boolean, _Clamp_6dc8fea4fa463b8ea840911fd315c80f_Out_3_Vector4, _Multiply_4b2be0b3fe39f385b887e7c82ab41e0b_Out_2_Vector4, _Branch_26165227c7a50284b87d2996dee9982c_Out_3_Vector4);
|
|
UnityTexture2D _Property_2e62abc1fe8adb8b8ff655b8448be202_Out_0_Texture2D = UnityBuildTexture2DStructNoScale(_DetailMap);
|
|
float4 _Property_b86e0ee324ffb58a92473eab69864d04_Out_0_Vector4 = _DetailTilingOffset;
|
|
float _Split_e832641c05503286a4951c0a93621755_R_1_Float = _Property_b86e0ee324ffb58a92473eab69864d04_Out_0_Vector4[0];
|
|
float _Split_e832641c05503286a4951c0a93621755_G_2_Float = _Property_b86e0ee324ffb58a92473eab69864d04_Out_0_Vector4[1];
|
|
float _Split_e832641c05503286a4951c0a93621755_B_3_Float = _Property_b86e0ee324ffb58a92473eab69864d04_Out_0_Vector4[2];
|
|
float _Split_e832641c05503286a4951c0a93621755_A_4_Float = _Property_b86e0ee324ffb58a92473eab69864d04_Out_0_Vector4[3];
|
|
float2 _Vector2_4b5eef288b3d4c83b24e4ab653f55ec8_Out_0_Vector2 = float2(_Split_e832641c05503286a4951c0a93621755_R_1_Float, _Split_e832641c05503286a4951c0a93621755_G_2_Float);
|
|
float2 _Vector2_2925cf98ba16b08dabc58cd65efd17db_Out_0_Vector2 = float2(_Split_e832641c05503286a4951c0a93621755_B_3_Float, _Split_e832641c05503286a4951c0a93621755_A_4_Float);
|
|
float2 _TilingAndOffset_74f6566eba9ccd899de18c0b11b7a7a2_Out_3_Vector2;
|
|
Unity_TilingAndOffset_float(IN.uv0.xy, _Vector2_4b5eef288b3d4c83b24e4ab653f55ec8_Out_0_Vector2, _Vector2_2925cf98ba16b08dabc58cd65efd17db_Out_0_Vector2, _TilingAndOffset_74f6566eba9ccd899de18c0b11b7a7a2_Out_3_Vector2);
|
|
float4 _SampleTexture2D_4bd08411faa60c828847f2247f06a809_RGBA_0_Vector4 = SAMPLE_TEXTURE2D(_Property_2e62abc1fe8adb8b8ff655b8448be202_Out_0_Texture2D.tex, _Property_2e62abc1fe8adb8b8ff655b8448be202_Out_0_Texture2D.samplerstate, _Property_2e62abc1fe8adb8b8ff655b8448be202_Out_0_Texture2D.GetTransformedUV(_TilingAndOffset_74f6566eba9ccd899de18c0b11b7a7a2_Out_3_Vector2) );
|
|
float _SampleTexture2D_4bd08411faa60c828847f2247f06a809_R_4_Float = _SampleTexture2D_4bd08411faa60c828847f2247f06a809_RGBA_0_Vector4.r;
|
|
float _SampleTexture2D_4bd08411faa60c828847f2247f06a809_G_5_Float = _SampleTexture2D_4bd08411faa60c828847f2247f06a809_RGBA_0_Vector4.g;
|
|
float _SampleTexture2D_4bd08411faa60c828847f2247f06a809_B_6_Float = _SampleTexture2D_4bd08411faa60c828847f2247f06a809_RGBA_0_Vector4.b;
|
|
float _SampleTexture2D_4bd08411faa60c828847f2247f06a809_A_7_Float = _SampleTexture2D_4bd08411faa60c828847f2247f06a809_RGBA_0_Vector4.a;
|
|
float _Multiply_ee5a3ccdebd1af84920cd1455a59468b_Out_2_Float;
|
|
Unity_Multiply_float_float(_SampleTexture2D_4bd08411faa60c828847f2247f06a809_R_4_Float, 2, _Multiply_ee5a3ccdebd1af84920cd1455a59468b_Out_2_Float);
|
|
float _Add_b8d727bda34294808f98551e67aa852f_Out_2_Float;
|
|
Unity_Add_float(_Multiply_ee5a3ccdebd1af84920cd1455a59468b_Out_2_Float, float(-1), _Add_b8d727bda34294808f98551e67aa852f_Out_2_Float);
|
|
float _Property_4634e589b03f6983b90fa6aaee0ed5f6_Out_0_Float = _DetailAlbedoScale;
|
|
float _Multiply_f0ed5a95f800c68aa9f7ea2f1322cc31_Out_2_Float;
|
|
Unity_Multiply_float_float(_Add_b8d727bda34294808f98551e67aa852f_Out_2_Float, _Property_4634e589b03f6983b90fa6aaee0ed5f6_Out_0_Float, _Multiply_f0ed5a95f800c68aa9f7ea2f1322cc31_Out_2_Float);
|
|
float _Saturate_469298b4e783d887889b71dc48b4399f_Out_1_Float;
|
|
Unity_Saturate_float(_Multiply_f0ed5a95f800c68aa9f7ea2f1322cc31_Out_2_Float, _Saturate_469298b4e783d887889b71dc48b4399f_Out_1_Float);
|
|
float _Absolute_3b29f3ceceba148189d11e0195af4be2_Out_1_Float;
|
|
Unity_Absolute_float(_Saturate_469298b4e783d887889b71dc48b4399f_Out_1_Float, _Absolute_3b29f3ceceba148189d11e0195af4be2_Out_1_Float);
|
|
Bindings_BlendOverlayBaseColor_acdb3dfca72bd6b42bbc35f4613331a2_float _BlendOverlayBaseColor_369c0b6a02e62b809dc5c6ac1efddde2;
|
|
float3 _BlendOverlayBaseColor_369c0b6a02e62b809dc5c6ac1efddde2_OutVector4_1_Vector3;
|
|
SG_BlendOverlayBaseColor_acdb3dfca72bd6b42bbc35f4613331a2_float(_Branch_26165227c7a50284b87d2996dee9982c_Out_3_Vector4, _Add_b8d727bda34294808f98551e67aa852f_Out_2_Float, _Absolute_3b29f3ceceba148189d11e0195af4be2_Out_1_Float, _BlendOverlayBaseColor_369c0b6a02e62b809dc5c6ac1efddde2, _BlendOverlayBaseColor_369c0b6a02e62b809dc5c6ac1efddde2_OutVector4_1_Vector3);
|
|
UnityTexture2D _Property_9a8451520f254f84a21875f3dac8cbe3_Out_0_Texture2D = UnityBuildTexture2DStructNoScale(_CoverBaseColorMap);
|
|
float4 _Property_c853e88632d9fd85ac0e98d12083eb62_Out_0_Vector4 = _CoverTilingOffset;
|
|
float4 _Divide_1fe314f1ca9dd78fbf366bbeb40e4ccf_Out_2_Vector4;
|
|
Unity_Divide_float4(float4(1, 1, 0, 0), _Property_c853e88632d9fd85ac0e98d12083eb62_Out_0_Vector4, _Divide_1fe314f1ca9dd78fbf366bbeb40e4ccf_Out_2_Vector4);
|
|
float _Property_ee792eccbb538a878b19be5db264531e_Out_0_Float = _CoverTriplanarThreshold;
|
|
Bindings_TriplanarNM_bc609ed95f52591469ab35dbfe0efcea_float _TriplanarNM_cca4c45d91c87989990c532a04e9e8e1;
|
|
_TriplanarNM_cca4c45d91c87989990c532a04e9e8e1.WorldSpaceNormal = IN.WorldSpaceNormal;
|
|
_TriplanarNM_cca4c45d91c87989990c532a04e9e8e1.AbsoluteWorldSpacePosition = IN.AbsoluteWorldSpacePosition;
|
|
float4 _TriplanarNM_cca4c45d91c87989990c532a04e9e8e1_XYZ_1_Vector4;
|
|
float4 _TriplanarNM_cca4c45d91c87989990c532a04e9e8e1_XZ_2_Vector4;
|
|
float4 _TriplanarNM_cca4c45d91c87989990c532a04e9e8e1_YZ_3_Vector4;
|
|
float4 _TriplanarNM_cca4c45d91c87989990c532a04e9e8e1_XY_4_Vector4;
|
|
SG_TriplanarNM_bc609ed95f52591469ab35dbfe0efcea_float(_Property_9a8451520f254f84a21875f3dac8cbe3_Out_0_Texture2D, (_Divide_1fe314f1ca9dd78fbf366bbeb40e4ccf_Out_2_Vector4).x, _Property_ee792eccbb538a878b19be5db264531e_Out_0_Float, UnityBuildSamplerStateStruct(SamplerState_Linear_Repeat_Aniso8), _TriplanarNM_cca4c45d91c87989990c532a04e9e8e1, _TriplanarNM_cca4c45d91c87989990c532a04e9e8e1_XYZ_1_Vector4, _TriplanarNM_cca4c45d91c87989990c532a04e9e8e1_XZ_2_Vector4, _TriplanarNM_cca4c45d91c87989990c532a04e9e8e1_YZ_3_Vector4, _TriplanarNM_cca4c45d91c87989990c532a04e9e8e1_XY_4_Vector4);
|
|
float4 _Property_18c743619f52288dbe24e28326388b00_Out_0_Vector4 = _CoverBaseColor;
|
|
float4 _Multiply_62594f3b30470e86a813e1224c48902e_Out_2_Vector4;
|
|
Unity_Multiply_float4_float4(_TriplanarNM_cca4c45d91c87989990c532a04e9e8e1_XYZ_1_Vector4, _Property_18c743619f52288dbe24e28326388b00_Out_0_Vector4, _Multiply_62594f3b30470e86a813e1224c48902e_Out_2_Vector4);
|
|
float _Multiply_5378fc524597f98fb32eeb561a7390e9_Out_2_Float;
|
|
Unity_Multiply_float_float(_SampleTexture2D_32717b1e99785588830ceee116cbe7fc_R_4_Float, 2, _Multiply_5378fc524597f98fb32eeb561a7390e9_Out_2_Float);
|
|
float _Property_8a72d97c1c527c8f8e0cc71214498065_Out_0_Float = _CoverDarknessCurvMultply;
|
|
float _Multiply_22683a720176a788a2ce404dbddd837c_Out_2_Float;
|
|
Unity_Multiply_float_float(_Multiply_5378fc524597f98fb32eeb561a7390e9_Out_2_Float, _Property_8a72d97c1c527c8f8e0cc71214498065_Out_0_Float, _Multiply_22683a720176a788a2ce404dbddd837c_Out_2_Float);
|
|
float _Clamp_5a638fb628222d8a97865d9029554fe2_Out_3_Float;
|
|
Unity_Clamp_float(_Multiply_22683a720176a788a2ce404dbddd837c_Out_2_Float, float(0), float(1), _Clamp_5a638fb628222d8a97865d9029554fe2_Out_3_Float);
|
|
float _Absolute_11985e8863bf2b8ca0bda90bca829348_Out_1_Float;
|
|
Unity_Absolute_float(_Clamp_5a638fb628222d8a97865d9029554fe2_Out_3_Float, _Absolute_11985e8863bf2b8ca0bda90bca829348_Out_1_Float);
|
|
float _Property_aba5acef910eee88b110d565674a9e36_Out_0_Float = _CoverDarknessCurvPower;
|
|
float _Power_da9b537d80a58d85a88e72c2a5d01e7c_Out_2_Float;
|
|
Unity_Power_float(_Absolute_11985e8863bf2b8ca0bda90bca829348_Out_1_Float, _Property_aba5acef910eee88b110d565674a9e36_Out_0_Float, _Power_da9b537d80a58d85a88e72c2a5d01e7c_Out_2_Float);
|
|
float _Clamp_77228e2a7266fa8ca042eae2f0701342_Out_3_Float;
|
|
Unity_Clamp_float(_Power_da9b537d80a58d85a88e72c2a5d01e7c_Out_2_Float, float(0), float(1), _Clamp_77228e2a7266fa8ca042eae2f0701342_Out_3_Float);
|
|
float4 _Multiply_2111c8ad39d5e68caf4893a41a3bad7d_Out_2_Vector4;
|
|
Unity_Multiply_float4_float4(_Multiply_62594f3b30470e86a813e1224c48902e_Out_2_Vector4, (_Clamp_77228e2a7266fa8ca042eae2f0701342_Out_3_Float.xxxx), _Multiply_2111c8ad39d5e68caf4893a41a3bad7d_Out_2_Vector4);
|
|
float4 _Clamp_b489ebb9d7d18282a342100f4d2fa72d_Out_3_Vector4;
|
|
Unity_Clamp_float4(_Multiply_2111c8ad39d5e68caf4893a41a3bad7d_Out_2_Vector4, float4(0, 0, 0, 0), float4(1, 1, 1, 1), _Clamp_b489ebb9d7d18282a342100f4d2fa72d_Out_3_Vector4);
|
|
float _Add_7eea819e47ffe58cbb3ec5877a181444_Out_2_Float;
|
|
Unity_Add_float(_Multiply_5378fc524597f98fb32eeb561a7390e9_Out_2_Float, float(-1), _Add_7eea819e47ffe58cbb3ec5877a181444_Out_2_Float);
|
|
float _Clamp_b5e4f47c0358dc87b5f9fdb3a360e9e9_Out_3_Float;
|
|
Unity_Clamp_float(_Add_7eea819e47ffe58cbb3ec5877a181444_Out_2_Float, float(0), float(1), _Clamp_b5e4f47c0358dc87b5f9fdb3a360e9e9_Out_3_Float);
|
|
float _Property_753051c96a90798fa7d94cff4173d6e6_Out_0_Float = _CoverBrightnessCurvMultply;
|
|
float _Multiply_c650497abc44d98882ce0091d10c4356_Out_2_Float;
|
|
Unity_Multiply_float_float(_Clamp_b5e4f47c0358dc87b5f9fdb3a360e9e9_Out_3_Float, _Property_753051c96a90798fa7d94cff4173d6e6_Out_0_Float, _Multiply_c650497abc44d98882ce0091d10c4356_Out_2_Float);
|
|
float _Clamp_c508dc61e0cb2a829429559098f34f9a_Out_3_Float;
|
|
Unity_Clamp_float(_Multiply_c650497abc44d98882ce0091d10c4356_Out_2_Float, float(0), float(1), _Clamp_c508dc61e0cb2a829429559098f34f9a_Out_3_Float);
|
|
float _Absolute_2cff2da32d80c286acbb99de611f381a_Out_1_Float;
|
|
Unity_Absolute_float(_Clamp_c508dc61e0cb2a829429559098f34f9a_Out_3_Float, _Absolute_2cff2da32d80c286acbb99de611f381a_Out_1_Float);
|
|
float _Property_ce4610db7b6d0c8bb7fb318210d3e83f_Out_0_Float = _CoverBrightnessCurvPower;
|
|
float _Power_c21df4d2e5ea448281f9ac0f4a140b9e_Out_2_Float;
|
|
Unity_Power_float(_Absolute_2cff2da32d80c286acbb99de611f381a_Out_1_Float, _Property_ce4610db7b6d0c8bb7fb318210d3e83f_Out_0_Float, _Power_c21df4d2e5ea448281f9ac0f4a140b9e_Out_2_Float);
|
|
float _Clamp_fd095a9d6c2b9881ae5875ed126bf3fb_Out_3_Float;
|
|
Unity_Clamp_float(_Power_c21df4d2e5ea448281f9ac0f4a140b9e_Out_2_Float, float(0), float(1), _Clamp_fd095a9d6c2b9881ae5875ed126bf3fb_Out_3_Float);
|
|
float4 _Add_4a02758b9a29b18180516bf3c3ede263_Out_2_Vector4;
|
|
Unity_Add_float4(_Clamp_b489ebb9d7d18282a342100f4d2fa72d_Out_3_Vector4, (_Clamp_fd095a9d6c2b9881ae5875ed126bf3fb_Out_3_Float.xxxx), _Add_4a02758b9a29b18180516bf3c3ede263_Out_2_Vector4);
|
|
float4 _Clamp_632e3d64ab55648f927a79cef68f3396_Out_3_Vector4;
|
|
Unity_Clamp_float4(_Add_4a02758b9a29b18180516bf3c3ede263_Out_2_Vector4, float4(0, 0, 0, 0), float4(1, 1, 1, 1), _Clamp_632e3d64ab55648f927a79cef68f3396_Out_3_Vector4);
|
|
float4 _Branch_0c5221a996e29186a372734bf5c30a51_Out_3_Vector4;
|
|
Unity_Branch_float4(_Property_72a5c604805a7b8ebbfd7acee03656aa_Out_0_Boolean, _Clamp_632e3d64ab55648f927a79cef68f3396_Out_3_Vector4, _Multiply_62594f3b30470e86a813e1224c48902e_Out_2_Vector4, _Branch_0c5221a996e29186a372734bf5c30a51_Out_3_Vector4);
|
|
float _Multiply_6a55591ceae0dc86a971a275e316fec6_Out_2_Float;
|
|
Unity_Multiply_float_float(_SampleTexture2D_4bd08411faa60c828847f2247f06a809_R_4_Float, 2, _Multiply_6a55591ceae0dc86a971a275e316fec6_Out_2_Float);
|
|
float _Add_a86411eb4894f78f8f8f3246011b369c_Out_2_Float;
|
|
Unity_Add_float(_Multiply_6a55591ceae0dc86a971a275e316fec6_Out_2_Float, float(-1), _Add_a86411eb4894f78f8f8f3246011b369c_Out_2_Float);
|
|
float _Property_c5a049650239cf80a302d0c0f57c147a_Out_0_Float = _DetailCoverAlbedoScale;
|
|
float _Multiply_1708b01db74fe88a8c36434f8729bf41_Out_2_Float;
|
|
Unity_Multiply_float_float(_Add_a86411eb4894f78f8f8f3246011b369c_Out_2_Float, _Property_c5a049650239cf80a302d0c0f57c147a_Out_0_Float, _Multiply_1708b01db74fe88a8c36434f8729bf41_Out_2_Float);
|
|
float _Saturate_1a4899f79635918485a64fff7cea28ad_Out_1_Float;
|
|
Unity_Saturate_float(_Multiply_1708b01db74fe88a8c36434f8729bf41_Out_2_Float, _Saturate_1a4899f79635918485a64fff7cea28ad_Out_1_Float);
|
|
float _Absolute_d3dce2bb8d9f0285b5183b7f665beed8_Out_1_Float;
|
|
Unity_Absolute_float(_Saturate_1a4899f79635918485a64fff7cea28ad_Out_1_Float, _Absolute_d3dce2bb8d9f0285b5183b7f665beed8_Out_1_Float);
|
|
Bindings_BlendOverlayBaseColor_acdb3dfca72bd6b42bbc35f4613331a2_float _BlendOverlayBaseColor_ec1f397271cc818abdb95188914e6b4d;
|
|
float3 _BlendOverlayBaseColor_ec1f397271cc818abdb95188914e6b4d_OutVector4_1_Vector3;
|
|
SG_BlendOverlayBaseColor_acdb3dfca72bd6b42bbc35f4613331a2_float(_Branch_0c5221a996e29186a372734bf5c30a51_Out_3_Vector4, _Add_a86411eb4894f78f8f8f3246011b369c_Out_2_Float, _Absolute_d3dce2bb8d9f0285b5183b7f665beed8_Out_1_Float, _BlendOverlayBaseColor_ec1f397271cc818abdb95188914e6b4d, _BlendOverlayBaseColor_ec1f397271cc818abdb95188914e6b4d_OutVector4_1_Vector3);
|
|
float _Property_cb0b6597aee47880b32e852aaa0e4a71_Out_0_Boolean = _USEDYNAMICCOVERTSTATICMASKF;
|
|
float _Property_4b3f692214f8d081a043985e1adb12a1_Out_0_Float = _CoverMaskPower;
|
|
float _Multiply_10cc4ecb135f8e8ab88c475223d0eadf_Out_2_Float;
|
|
Unity_Multiply_float_float(_SampleTexture2D_32717b1e99785588830ceee116cbe7fc_A_7_Float, _Property_4b3f692214f8d081a043985e1adb12a1_Out_0_Float, _Multiply_10cc4ecb135f8e8ab88c475223d0eadf_Out_2_Float);
|
|
float _Clamp_07a501c22c6e188199bed73412ac8926_Out_3_Float;
|
|
Unity_Clamp_float(_Multiply_10cc4ecb135f8e8ab88c475223d0eadf_Out_2_Float, float(0), float(1), _Clamp_07a501c22c6e188199bed73412ac8926_Out_3_Float);
|
|
float _Split_2ada595651635e8d97bf4b82f717fcc6_R_1_Float = IN.VertexColor[0];
|
|
float _Split_2ada595651635e8d97bf4b82f717fcc6_G_2_Float = IN.VertexColor[1];
|
|
float _Split_2ada595651635e8d97bf4b82f717fcc6_B_3_Float = IN.VertexColor[2];
|
|
float _Split_2ada595651635e8d97bf4b82f717fcc6_A_4_Float = IN.VertexColor[3];
|
|
float3 _Property_9180f8dd535ba18499edac37aef4d231_Out_0_Vector3 = _CoverDirection;
|
|
float2 _Vector2_7fe7d9ef320da68f958e1ea535e2a6a8_Out_0_Vector2 = float2(_SampleTexture2D_4bd08411faa60c828847f2247f06a809_A_7_Float, _SampleTexture2D_4bd08411faa60c828847f2247f06a809_G_5_Float);
|
|
float2 _Multiply_b8d7cc078ce00d87b9a6b5241b2f1f01_Out_2_Vector2;
|
|
Unity_Multiply_float2_float2(_Vector2_7fe7d9ef320da68f958e1ea535e2a6a8_Out_0_Vector2, float2(2, 2), _Multiply_b8d7cc078ce00d87b9a6b5241b2f1f01_Out_2_Vector2);
|
|
float2 _Add_476ecfb1f47aed8bb8040bb1c44ca372_Out_2_Vector2;
|
|
Unity_Add_float2(_Multiply_b8d7cc078ce00d87b9a6b5241b2f1f01_Out_2_Vector2, float2(-1, -1), _Add_476ecfb1f47aed8bb8040bb1c44ca372_Out_2_Vector2);
|
|
float _Property_b7f40cf2664f5a819eb153af2b2eb69e_Out_0_Float = _DetailNormalScale;
|
|
float2 _Multiply_3b11e3e43551698eb19b6c6b671b6a41_Out_2_Vector2;
|
|
Unity_Multiply_float2_float2(_Add_476ecfb1f47aed8bb8040bb1c44ca372_Out_2_Vector2, (_Property_b7f40cf2664f5a819eb153af2b2eb69e_Out_0_Float.xx), _Multiply_3b11e3e43551698eb19b6c6b671b6a41_Out_2_Vector2);
|
|
float _Split_678aac70d9cb9783a49841710ce82ff8_R_1_Float = _Multiply_3b11e3e43551698eb19b6c6b671b6a41_Out_2_Vector2[0];
|
|
float _Split_678aac70d9cb9783a49841710ce82ff8_G_2_Float = _Multiply_3b11e3e43551698eb19b6c6b671b6a41_Out_2_Vector2[1];
|
|
float _Split_678aac70d9cb9783a49841710ce82ff8_B_3_Float = 0;
|
|
float _Split_678aac70d9cb9783a49841710ce82ff8_A_4_Float = 0;
|
|
float _DotProduct_7fd2e2e8b3e9ed8f9a42a0ba98e14174_Out_2_Float;
|
|
Unity_DotProduct_float2(_Multiply_3b11e3e43551698eb19b6c6b671b6a41_Out_2_Vector2, _Multiply_3b11e3e43551698eb19b6c6b671b6a41_Out_2_Vector2, _DotProduct_7fd2e2e8b3e9ed8f9a42a0ba98e14174_Out_2_Float);
|
|
float _Saturate_47bdfe8ca2c8d989a5ebbb5eb995f023_Out_1_Float;
|
|
Unity_Saturate_float(_DotProduct_7fd2e2e8b3e9ed8f9a42a0ba98e14174_Out_2_Float, _Saturate_47bdfe8ca2c8d989a5ebbb5eb995f023_Out_1_Float);
|
|
float _OneMinus_03777d2879850b838187d9d2605d7341_Out_1_Float;
|
|
Unity_OneMinus_float(_Saturate_47bdfe8ca2c8d989a5ebbb5eb995f023_Out_1_Float, _OneMinus_03777d2879850b838187d9d2605d7341_Out_1_Float);
|
|
float _SquareRoot_ca9c195aef071d8888f26cb73b749f72_Out_1_Float;
|
|
Unity_SquareRoot_float(_OneMinus_03777d2879850b838187d9d2605d7341_Out_1_Float, _SquareRoot_ca9c195aef071d8888f26cb73b749f72_Out_1_Float);
|
|
float3 _Vector3_6999cbd6a5aa908cb7c059b5f2f5b330_Out_0_Vector3 = float3(_Split_678aac70d9cb9783a49841710ce82ff8_R_1_Float, _Split_678aac70d9cb9783a49841710ce82ff8_G_2_Float, _SquareRoot_ca9c195aef071d8888f26cb73b749f72_Out_1_Float);
|
|
UnityTexture2D _Property_d2bb0a0b01239c85bd301cadeec1b3d8_Out_0_Texture2D = UnityBuildTexture2DStructNoScale(_BaseNormalMap);
|
|
Bindings_TriplanarNMn_059da9746584140498cd018db3c76047_float _TriplanarNMn_bf7f7c0e2d896289b86076b79f33d7d4;
|
|
_TriplanarNMn_bf7f7c0e2d896289b86076b79f33d7d4.WorldSpaceNormal = IN.WorldSpaceNormal;
|
|
_TriplanarNMn_bf7f7c0e2d896289b86076b79f33d7d4.WorldSpaceTangent = IN.WorldSpaceTangent;
|
|
_TriplanarNMn_bf7f7c0e2d896289b86076b79f33d7d4.WorldSpaceBiTangent = IN.WorldSpaceBiTangent;
|
|
_TriplanarNMn_bf7f7c0e2d896289b86076b79f33d7d4.AbsoluteWorldSpacePosition = IN.AbsoluteWorldSpacePosition;
|
|
float4 _TriplanarNMn_bf7f7c0e2d896289b86076b79f33d7d4_XYZ_1_Vector4;
|
|
float4 _TriplanarNMn_bf7f7c0e2d896289b86076b79f33d7d4_XZ_2_Vector4;
|
|
float4 _TriplanarNMn_bf7f7c0e2d896289b86076b79f33d7d4_YZ_3_Vector4;
|
|
float4 _TriplanarNMn_bf7f7c0e2d896289b86076b79f33d7d4_XY_4_Vector4;
|
|
SG_TriplanarNMn_059da9746584140498cd018db3c76047_float(_Property_d2bb0a0b01239c85bd301cadeec1b3d8_Out_0_Texture2D, (_Divide_6a90cebe78e620828de587523daaa7e6_Out_2_Vector4).x, _Property_3539de8c698c2981bb3c088d4ec52201_Out_0_Float, UnityBuildSamplerStateStruct(SamplerState_Linear_Repeat_Aniso8), _TriplanarNMn_bf7f7c0e2d896289b86076b79f33d7d4, _TriplanarNMn_bf7f7c0e2d896289b86076b79f33d7d4_XYZ_1_Vector4, _TriplanarNMn_bf7f7c0e2d896289b86076b79f33d7d4_XZ_2_Vector4, _TriplanarNMn_bf7f7c0e2d896289b86076b79f33d7d4_YZ_3_Vector4, _TriplanarNMn_bf7f7c0e2d896289b86076b79f33d7d4_XY_4_Vector4);
|
|
float _Property_d6baf612f8e685848732ca270b39f544_Out_0_Float = _BaseNormalScale;
|
|
float3 _NormalStrength_260139b4d5077d8b9d42de780d173b6c_Out_2_Vector3;
|
|
Unity_NormalStrength_float((_TriplanarNMn_bf7f7c0e2d896289b86076b79f33d7d4_XYZ_1_Vector4.xyz), _Property_d6baf612f8e685848732ca270b39f544_Out_0_Float, _NormalStrength_260139b4d5077d8b9d42de780d173b6c_Out_2_Vector3);
|
|
UnityTexture2D _Property_492c4e7cd40ab980bd38362624511e38_Out_0_Texture2D = UnityBuildTexture2DStructNoScale(_ShapeNormalMap);
|
|
float4 _SampleTexture2D_63aaad04c65f698e8f640de826888075_RGBA_0_Vector4 = SAMPLE_TEXTURE2D(_Property_492c4e7cd40ab980bd38362624511e38_Out_0_Texture2D.tex, _Property_492c4e7cd40ab980bd38362624511e38_Out_0_Texture2D.samplerstate, _Property_492c4e7cd40ab980bd38362624511e38_Out_0_Texture2D.GetTransformedUV(IN.uv0.xy) );
|
|
_SampleTexture2D_63aaad04c65f698e8f640de826888075_RGBA_0_Vector4.rgb = UnpackNormal(_SampleTexture2D_63aaad04c65f698e8f640de826888075_RGBA_0_Vector4);
|
|
float _SampleTexture2D_63aaad04c65f698e8f640de826888075_R_4_Float = _SampleTexture2D_63aaad04c65f698e8f640de826888075_RGBA_0_Vector4.r;
|
|
float _SampleTexture2D_63aaad04c65f698e8f640de826888075_G_5_Float = _SampleTexture2D_63aaad04c65f698e8f640de826888075_RGBA_0_Vector4.g;
|
|
float _SampleTexture2D_63aaad04c65f698e8f640de826888075_B_6_Float = _SampleTexture2D_63aaad04c65f698e8f640de826888075_RGBA_0_Vector4.b;
|
|
float _SampleTexture2D_63aaad04c65f698e8f640de826888075_A_7_Float = _SampleTexture2D_63aaad04c65f698e8f640de826888075_RGBA_0_Vector4.a;
|
|
float _Property_6c35e329e57d0e89950e24817068dbb1_Out_0_Float = _shapeNormalScale;
|
|
float3 _NormalStrength_e181a1bb2f4e35819e0f35e77346e12e_Out_2_Vector3;
|
|
Unity_NormalStrength_float((_SampleTexture2D_63aaad04c65f698e8f640de826888075_RGBA_0_Vector4.xyz), _Property_6c35e329e57d0e89950e24817068dbb1_Out_0_Float, _NormalStrength_e181a1bb2f4e35819e0f35e77346e12e_Out_2_Vector3);
|
|
float3 _NormalBlend_ead295b946c6058190c298c03bf64d0b_Out_2_Vector3;
|
|
Unity_NormalBlend_float(_NormalStrength_260139b4d5077d8b9d42de780d173b6c_Out_2_Vector3, _NormalStrength_e181a1bb2f4e35819e0f35e77346e12e_Out_2_Vector3, _NormalBlend_ead295b946c6058190c298c03bf64d0b_Out_2_Vector3);
|
|
float3 _NormalBlend_4242e1b4a785378aa59dd49e9d993ffc_Out_2_Vector3;
|
|
Unity_NormalBlend_float(_Vector3_6999cbd6a5aa908cb7c059b5f2f5b330_Out_0_Vector3, _NormalBlend_ead295b946c6058190c298c03bf64d0b_Out_2_Vector3, _NormalBlend_4242e1b4a785378aa59dd49e9d993ffc_Out_2_Vector3);
|
|
float _Property_3d4ab6ad1f1f138a96f0463f7be8b6ce_Out_0_Float = _CovershapeNormalScale;
|
|
float3 _NormalStrength_401cd5af500bd68dbc9bca19d548d0db_Out_2_Vector3;
|
|
Unity_NormalStrength_float((_SampleTexture2D_63aaad04c65f698e8f640de826888075_RGBA_0_Vector4.xyz), _Property_3d4ab6ad1f1f138a96f0463f7be8b6ce_Out_0_Float, _NormalStrength_401cd5af500bd68dbc9bca19d548d0db_Out_2_Vector3);
|
|
UnityTexture2D _Property_779695727390348d8b8a7f7ae2245af0_Out_0_Texture2D = UnityBuildTexture2DStructNoScale(_CoverNormalMap);
|
|
Bindings_TriplanarNMn_059da9746584140498cd018db3c76047_float _TriplanarNMn_ba7e211dd8095589a2939b5b239ca8e0;
|
|
_TriplanarNMn_ba7e211dd8095589a2939b5b239ca8e0.WorldSpaceNormal = IN.WorldSpaceNormal;
|
|
_TriplanarNMn_ba7e211dd8095589a2939b5b239ca8e0.WorldSpaceTangent = IN.WorldSpaceTangent;
|
|
_TriplanarNMn_ba7e211dd8095589a2939b5b239ca8e0.WorldSpaceBiTangent = IN.WorldSpaceBiTangent;
|
|
_TriplanarNMn_ba7e211dd8095589a2939b5b239ca8e0.AbsoluteWorldSpacePosition = IN.AbsoluteWorldSpacePosition;
|
|
float4 _TriplanarNMn_ba7e211dd8095589a2939b5b239ca8e0_XYZ_1_Vector4;
|
|
float4 _TriplanarNMn_ba7e211dd8095589a2939b5b239ca8e0_XZ_2_Vector4;
|
|
float4 _TriplanarNMn_ba7e211dd8095589a2939b5b239ca8e0_YZ_3_Vector4;
|
|
float4 _TriplanarNMn_ba7e211dd8095589a2939b5b239ca8e0_XY_4_Vector4;
|
|
SG_TriplanarNMn_059da9746584140498cd018db3c76047_float(_Property_779695727390348d8b8a7f7ae2245af0_Out_0_Texture2D, (_Divide_1fe314f1ca9dd78fbf366bbeb40e4ccf_Out_2_Vector4).x, _Property_ee792eccbb538a878b19be5db264531e_Out_0_Float, UnityBuildSamplerStateStruct(SamplerState_Linear_Repeat_Aniso8), _TriplanarNMn_ba7e211dd8095589a2939b5b239ca8e0, _TriplanarNMn_ba7e211dd8095589a2939b5b239ca8e0_XYZ_1_Vector4, _TriplanarNMn_ba7e211dd8095589a2939b5b239ca8e0_XZ_2_Vector4, _TriplanarNMn_ba7e211dd8095589a2939b5b239ca8e0_YZ_3_Vector4, _TriplanarNMn_ba7e211dd8095589a2939b5b239ca8e0_XY_4_Vector4);
|
|
float _Property_5aba050988182f8aad3ec6b2c7e57899_Out_0_Float = _CoverNormalBlendHardness;
|
|
float3 _NormalStrength_dac4b0abfa8a1f82b7103b18f6e6e1b7_Out_2_Vector3;
|
|
Unity_NormalStrength_float((_TriplanarNMn_ba7e211dd8095589a2939b5b239ca8e0_XYZ_1_Vector4.xyz), _Property_5aba050988182f8aad3ec6b2c7e57899_Out_0_Float, _NormalStrength_dac4b0abfa8a1f82b7103b18f6e6e1b7_Out_2_Vector3);
|
|
float3 _NormalBlend_4058aded292b7389ade16c695a6cae6c_Out_2_Vector3;
|
|
Unity_NormalBlend_float(_NormalStrength_401cd5af500bd68dbc9bca19d548d0db_Out_2_Vector3, _NormalStrength_dac4b0abfa8a1f82b7103b18f6e6e1b7_Out_2_Vector3, _NormalBlend_4058aded292b7389ade16c695a6cae6c_Out_2_Vector3);
|
|
float3 _Multiply_0e22f9c6ff55a188b2533f1889a53038_Out_2_Vector3;
|
|
Unity_Multiply_float3_float3(_Property_9180f8dd535ba18499edac37aef4d231_Out_0_Vector3, IN.WorldSpaceNormal, _Multiply_0e22f9c6ff55a188b2533f1889a53038_Out_2_Vector3);
|
|
float _Split_89708601b575b58c852cd55e4fb248d1_R_1_Float = _Multiply_0e22f9c6ff55a188b2533f1889a53038_Out_2_Vector3[0];
|
|
float _Split_89708601b575b58c852cd55e4fb248d1_G_2_Float = _Multiply_0e22f9c6ff55a188b2533f1889a53038_Out_2_Vector3[1];
|
|
float _Split_89708601b575b58c852cd55e4fb248d1_B_3_Float = _Multiply_0e22f9c6ff55a188b2533f1889a53038_Out_2_Vector3[2];
|
|
float _Split_89708601b575b58c852cd55e4fb248d1_A_4_Float = 0;
|
|
float _Add_bfe29b97a9ce3b80aa4cd689be8c4a97_Out_2_Float;
|
|
Unity_Add_float(_Split_89708601b575b58c852cd55e4fb248d1_R_1_Float, _Split_89708601b575b58c852cd55e4fb248d1_G_2_Float, _Add_bfe29b97a9ce3b80aa4cd689be8c4a97_Out_2_Float);
|
|
float _Add_f3152b42a227088aa1439fc1fe8451cc_Out_2_Float;
|
|
Unity_Add_float(_Add_bfe29b97a9ce3b80aa4cd689be8c4a97_Out_2_Float, _Split_89708601b575b58c852cd55e4fb248d1_B_3_Float, _Add_f3152b42a227088aa1439fc1fe8451cc_Out_2_Float);
|
|
float _Property_deabceefa3e3438a8ad71fa67fc5b070_Out_0_Float = _Cover_Amount;
|
|
float _Property_2fba2d762d74b8828ff566c10bc48e86_Out_0_Float = _Cover_Amount_Grow_Speed;
|
|
float _Subtract_1f990262a41ce88f96a47df66dcb4971_Out_2_Float;
|
|
Unity_Subtract_float(float(4), _Property_2fba2d762d74b8828ff566c10bc48e86_Out_0_Float, _Subtract_1f990262a41ce88f96a47df66dcb4971_Out_2_Float);
|
|
float _Divide_a89e05be4802ac80886ad6bdeadc4949_Out_2_Float;
|
|
Unity_Divide_float(_Property_deabceefa3e3438a8ad71fa67fc5b070_Out_0_Float, _Subtract_1f990262a41ce88f96a47df66dcb4971_Out_2_Float, _Divide_a89e05be4802ac80886ad6bdeadc4949_Out_2_Float);
|
|
float _Absolute_2b58f48ab94a3087a726a2b03c51e2c6_Out_1_Float;
|
|
Unity_Absolute_float(_Divide_a89e05be4802ac80886ad6bdeadc4949_Out_2_Float, _Absolute_2b58f48ab94a3087a726a2b03c51e2c6_Out_1_Float);
|
|
float _Power_6695d49b8b82468ea686b66e6749260b_Out_2_Float;
|
|
Unity_Power_float(_Absolute_2b58f48ab94a3087a726a2b03c51e2c6_Out_1_Float, _Subtract_1f990262a41ce88f96a47df66dcb4971_Out_2_Float, _Power_6695d49b8b82468ea686b66e6749260b_Out_2_Float);
|
|
float _Clamp_94f0310fee13798bad4e26e2381a94d4_Out_3_Float;
|
|
Unity_Clamp_float(_Power_6695d49b8b82468ea686b66e6749260b_Out_2_Float, float(0), float(2), _Clamp_94f0310fee13798bad4e26e2381a94d4_Out_3_Float);
|
|
float _Multiply_999692515a117385ade114d924fa589a_Out_2_Float;
|
|
Unity_Multiply_float_float(_Add_f3152b42a227088aa1439fc1fe8451cc_Out_2_Float, _Clamp_94f0310fee13798bad4e26e2381a94d4_Out_3_Float, _Multiply_999692515a117385ade114d924fa589a_Out_2_Float);
|
|
float _Saturate_f811eeeeb3229d83917aa8be2c36831e_Out_1_Float;
|
|
Unity_Saturate_float(_Multiply_999692515a117385ade114d924fa589a_Out_2_Float, _Saturate_f811eeeeb3229d83917aa8be2c36831e_Out_1_Float);
|
|
float _Clamp_4c470807610adb8c8488f125c0af7bb5_Out_3_Float;
|
|
Unity_Clamp_float(_Add_f3152b42a227088aa1439fc1fe8451cc_Out_2_Float, float(0), float(0.9999), _Clamp_4c470807610adb8c8488f125c0af7bb5_Out_3_Float);
|
|
float _Property_765e3d021aec6d8f9f8b3174d5a06980_Out_0_Float = _Cover_Max_Angle;
|
|
float _Divide_9d9fc267a9ebcf84b378fdd4c66ff34d_Out_2_Float;
|
|
Unity_Divide_float(_Property_765e3d021aec6d8f9f8b3174d5a06980_Out_0_Float, float(45), _Divide_9d9fc267a9ebcf84b378fdd4c66ff34d_Out_2_Float);
|
|
float _OneMinus_f074fba0be46e688aa75f5377832251a_Out_1_Float;
|
|
Unity_OneMinus_float(_Divide_9d9fc267a9ebcf84b378fdd4c66ff34d_Out_2_Float, _OneMinus_f074fba0be46e688aa75f5377832251a_Out_1_Float);
|
|
float _Subtract_0b0cd6145e351c87a68366348828154d_Out_2_Float;
|
|
Unity_Subtract_float(_Clamp_4c470807610adb8c8488f125c0af7bb5_Out_3_Float, _OneMinus_f074fba0be46e688aa75f5377832251a_Out_1_Float, _Subtract_0b0cd6145e351c87a68366348828154d_Out_2_Float);
|
|
float _Clamp_30607c0c4e04e5879d4061a1f7688421_Out_3_Float;
|
|
Unity_Clamp_float(_Subtract_0b0cd6145e351c87a68366348828154d_Out_2_Float, float(0), float(2), _Clamp_30607c0c4e04e5879d4061a1f7688421_Out_3_Float);
|
|
float _Divide_cfe09f3bd2005485a3c2229367309962_Out_2_Float;
|
|
Unity_Divide_float(float(1), _Divide_9d9fc267a9ebcf84b378fdd4c66ff34d_Out_2_Float, _Divide_cfe09f3bd2005485a3c2229367309962_Out_2_Float);
|
|
float _Multiply_022be2eb9027988b9d5d4c1392749347_Out_2_Float;
|
|
Unity_Multiply_float_float(_Clamp_30607c0c4e04e5879d4061a1f7688421_Out_3_Float, _Divide_cfe09f3bd2005485a3c2229367309962_Out_2_Float, _Multiply_022be2eb9027988b9d5d4c1392749347_Out_2_Float);
|
|
float _Absolute_2fed84623df90f8ba200de68955721fd_Out_1_Float;
|
|
Unity_Absolute_float(_Multiply_022be2eb9027988b9d5d4c1392749347_Out_2_Float, _Absolute_2fed84623df90f8ba200de68955721fd_Out_1_Float);
|
|
float _Property_b79c921e30793a8e84330b3341539232_Out_0_Float = _CoverHardness;
|
|
float _Power_b9ddee06dfd0b880880990743bc10612_Out_2_Float;
|
|
Unity_Power_float(_Absolute_2fed84623df90f8ba200de68955721fd_Out_1_Float, _Property_b79c921e30793a8e84330b3341539232_Out_0_Float, _Power_b9ddee06dfd0b880880990743bc10612_Out_2_Float);
|
|
float _Property_c82936191f294c89b76f2d1809168f87_Out_0_Float = _Cover_Min_Height;
|
|
float _OneMinus_f0918ccb4f747b8e83e39d82dc3b5ca9_Out_1_Float;
|
|
Unity_OneMinus_float(_Property_c82936191f294c89b76f2d1809168f87_Out_0_Float, _OneMinus_f0918ccb4f747b8e83e39d82dc3b5ca9_Out_1_Float);
|
|
float _Split_0e80ce6f80cff18f87a043d1e3eecd08_R_1_Float = IN.AbsoluteWorldSpacePosition[0];
|
|
float _Split_0e80ce6f80cff18f87a043d1e3eecd08_G_2_Float = IN.AbsoluteWorldSpacePosition[1];
|
|
float _Split_0e80ce6f80cff18f87a043d1e3eecd08_B_3_Float = IN.AbsoluteWorldSpacePosition[2];
|
|
float _Split_0e80ce6f80cff18f87a043d1e3eecd08_A_4_Float = 0;
|
|
float _Add_60b3bb4cdad6e88b8c097c5b08daa7d0_Out_2_Float;
|
|
Unity_Add_float(_OneMinus_f0918ccb4f747b8e83e39d82dc3b5ca9_Out_1_Float, _Split_0e80ce6f80cff18f87a043d1e3eecd08_G_2_Float, _Add_60b3bb4cdad6e88b8c097c5b08daa7d0_Out_2_Float);
|
|
float _Add_1898d6f46901df809c68b5241b2e9c37_Out_2_Float;
|
|
Unity_Add_float(_Add_60b3bb4cdad6e88b8c097c5b08daa7d0_Out_2_Float, float(1), _Add_1898d6f46901df809c68b5241b2e9c37_Out_2_Float);
|
|
float _Clamp_25d6140fa3ff3a8f956f99005adace2e_Out_3_Float;
|
|
Unity_Clamp_float(_Add_1898d6f46901df809c68b5241b2e9c37_Out_2_Float, float(0), float(1), _Clamp_25d6140fa3ff3a8f956f99005adace2e_Out_3_Float);
|
|
float _Property_6094a52a4f01fd8da5ea847b69b6941c_Out_0_Float = _Cover_Min_Height_Blending;
|
|
float _Add_dc69668fc7f1a586a754713499f71d99_Out_2_Float;
|
|
Unity_Add_float(_Add_60b3bb4cdad6e88b8c097c5b08daa7d0_Out_2_Float, _Property_6094a52a4f01fd8da5ea847b69b6941c_Out_0_Float, _Add_dc69668fc7f1a586a754713499f71d99_Out_2_Float);
|
|
float _Divide_63e32406c8773d83bbf2e244faf8328f_Out_2_Float;
|
|
Unity_Divide_float(_Add_dc69668fc7f1a586a754713499f71d99_Out_2_Float, _Add_60b3bb4cdad6e88b8c097c5b08daa7d0_Out_2_Float, _Divide_63e32406c8773d83bbf2e244faf8328f_Out_2_Float);
|
|
float _OneMinus_ec22d21ddfa84288b6f750e9fdb107b9_Out_1_Float;
|
|
Unity_OneMinus_float(_Divide_63e32406c8773d83bbf2e244faf8328f_Out_2_Float, _OneMinus_ec22d21ddfa84288b6f750e9fdb107b9_Out_1_Float);
|
|
float _Add_a1206af8cbfbbe8081046db1247aba04_Out_2_Float;
|
|
Unity_Add_float(_OneMinus_ec22d21ddfa84288b6f750e9fdb107b9_Out_1_Float, float(-0.5), _Add_a1206af8cbfbbe8081046db1247aba04_Out_2_Float);
|
|
float _Clamp_640b5884b29f188987c157ad5e6e6959_Out_3_Float;
|
|
Unity_Clamp_float(_Add_a1206af8cbfbbe8081046db1247aba04_Out_2_Float, float(0), float(1), _Clamp_640b5884b29f188987c157ad5e6e6959_Out_3_Float);
|
|
float _Add_cfdb6daf617665838bb05910fa9505df_Out_2_Float;
|
|
Unity_Add_float(_Clamp_25d6140fa3ff3a8f956f99005adace2e_Out_3_Float, _Clamp_640b5884b29f188987c157ad5e6e6959_Out_3_Float, _Add_cfdb6daf617665838bb05910fa9505df_Out_2_Float);
|
|
float _Clamp_552ef7e5cf91408a982297885971db7e_Out_3_Float;
|
|
Unity_Clamp_float(_Add_cfdb6daf617665838bb05910fa9505df_Out_2_Float, float(0), float(1), _Clamp_552ef7e5cf91408a982297885971db7e_Out_3_Float);
|
|
float _Multiply_8f8db9c494f4fd869809fc45531df628_Out_2_Float;
|
|
Unity_Multiply_float_float(_Power_b9ddee06dfd0b880880990743bc10612_Out_2_Float, _Clamp_552ef7e5cf91408a982297885971db7e_Out_3_Float, _Multiply_8f8db9c494f4fd869809fc45531df628_Out_2_Float);
|
|
float _Multiply_60075aa07d29d285b3c1ee531e5b5cb3_Out_2_Float;
|
|
Unity_Multiply_float_float(_Saturate_f811eeeeb3229d83917aa8be2c36831e_Out_1_Float, _Multiply_8f8db9c494f4fd869809fc45531df628_Out_2_Float, _Multiply_60075aa07d29d285b3c1ee531e5b5cb3_Out_2_Float);
|
|
float3 _Lerp_453c8bc667315a8fa37a93affb877753_Out_3_Vector3;
|
|
Unity_Lerp_float3(_NormalBlend_4242e1b4a785378aa59dd49e9d993ffc_Out_2_Vector3, _NormalBlend_4058aded292b7389ade16c695a6cae6c_Out_2_Vector3, (_Multiply_60075aa07d29d285b3c1ee531e5b5cb3_Out_2_Float.xxx), _Lerp_453c8bc667315a8fa37a93affb877753_Out_3_Vector3);
|
|
float3 _Transform_a87113b0be9dfa8eaf6932ed645aa845_Out_1_Vector3;
|
|
{
|
|
float3x3 tangentTransform = float3x3(IN.WorldSpaceTangent, IN.WorldSpaceBiTangent, IN.WorldSpaceNormal);
|
|
_Transform_a87113b0be9dfa8eaf6932ed645aa845_Out_1_Vector3 = TransformTangentToWorldDir(_Lerp_453c8bc667315a8fa37a93affb877753_Out_3_Vector3.xyz, tangentTransform, false).xyz;
|
|
}
|
|
float3 _Multiply_f6e009bd5c0fd18c99ac72f233476fe5_Out_2_Vector3;
|
|
Unity_Multiply_float3_float3(_Property_9180f8dd535ba18499edac37aef4d231_Out_0_Vector3, _Transform_a87113b0be9dfa8eaf6932ed645aa845_Out_1_Vector3, _Multiply_f6e009bd5c0fd18c99ac72f233476fe5_Out_2_Vector3);
|
|
float _Split_96f0a5b75c0e0b889dbbccd04bc2aaaa_R_1_Float = _Multiply_f6e009bd5c0fd18c99ac72f233476fe5_Out_2_Vector3[0];
|
|
float _Split_96f0a5b75c0e0b889dbbccd04bc2aaaa_G_2_Float = _Multiply_f6e009bd5c0fd18c99ac72f233476fe5_Out_2_Vector3[1];
|
|
float _Split_96f0a5b75c0e0b889dbbccd04bc2aaaa_B_3_Float = _Multiply_f6e009bd5c0fd18c99ac72f233476fe5_Out_2_Vector3[2];
|
|
float _Split_96f0a5b75c0e0b889dbbccd04bc2aaaa_A_4_Float = 0;
|
|
float _Add_07028d5174d9f88594da40d46502bc13_Out_2_Float;
|
|
Unity_Add_float(_Split_96f0a5b75c0e0b889dbbccd04bc2aaaa_R_1_Float, _Split_96f0a5b75c0e0b889dbbccd04bc2aaaa_G_2_Float, _Add_07028d5174d9f88594da40d46502bc13_Out_2_Float);
|
|
float _Add_93af6c0f8ee9a3898ca51358a213b69f_Out_2_Float;
|
|
Unity_Add_float(_Add_07028d5174d9f88594da40d46502bc13_Out_2_Float, _Split_96f0a5b75c0e0b889dbbccd04bc2aaaa_B_3_Float, _Add_93af6c0f8ee9a3898ca51358a213b69f_Out_2_Float);
|
|
float _Multiply_77421b936cb9d68299ef6791b83fa867_Out_2_Float;
|
|
Unity_Multiply_float_float(_Add_93af6c0f8ee9a3898ca51358a213b69f_Out_2_Float, _Clamp_94f0310fee13798bad4e26e2381a94d4_Out_3_Float, _Multiply_77421b936cb9d68299ef6791b83fa867_Out_2_Float);
|
|
float _Multiply_ac6769fbe7188685a7537e5ac2c6bfa9_Out_2_Float;
|
|
Unity_Multiply_float_float(_Clamp_94f0310fee13798bad4e26e2381a94d4_Out_3_Float, _Property_b79c921e30793a8e84330b3341539232_Out_0_Float, _Multiply_ac6769fbe7188685a7537e5ac2c6bfa9_Out_2_Float);
|
|
float _Multiply_37a341e0d9783683aa8d5b7001acced1_Out_2_Float;
|
|
Unity_Multiply_float_float(_Multiply_ac6769fbe7188685a7537e5ac2c6bfa9_Out_2_Float, _Multiply_8f8db9c494f4fd869809fc45531df628_Out_2_Float, _Multiply_37a341e0d9783683aa8d5b7001acced1_Out_2_Float);
|
|
float _Multiply_02fa8aa66970b281b4a325dc68f407b9_Out_2_Float;
|
|
Unity_Multiply_float_float(_Multiply_77421b936cb9d68299ef6791b83fa867_Out_2_Float, _Multiply_37a341e0d9783683aa8d5b7001acced1_Out_2_Float, _Multiply_02fa8aa66970b281b4a325dc68f407b9_Out_2_Float);
|
|
UnityTexture2D _Property_fd2df7ee33755280948b4c47585d4323_Out_0_Texture2D = UnityBuildTexture2DStructNoScale(_CoverMaskMap);
|
|
Bindings_TriplanarNM_bc609ed95f52591469ab35dbfe0efcea_float _TriplanarNM_e307cfdc6531d2838aa3dfa51fc3913f;
|
|
_TriplanarNM_e307cfdc6531d2838aa3dfa51fc3913f.WorldSpaceNormal = IN.WorldSpaceNormal;
|
|
_TriplanarNM_e307cfdc6531d2838aa3dfa51fc3913f.AbsoluteWorldSpacePosition = IN.AbsoluteWorldSpacePosition;
|
|
float4 _TriplanarNM_e307cfdc6531d2838aa3dfa51fc3913f_XYZ_1_Vector4;
|
|
float4 _TriplanarNM_e307cfdc6531d2838aa3dfa51fc3913f_XZ_2_Vector4;
|
|
float4 _TriplanarNM_e307cfdc6531d2838aa3dfa51fc3913f_YZ_3_Vector4;
|
|
float4 _TriplanarNM_e307cfdc6531d2838aa3dfa51fc3913f_XY_4_Vector4;
|
|
SG_TriplanarNM_bc609ed95f52591469ab35dbfe0efcea_float(_Property_fd2df7ee33755280948b4c47585d4323_Out_0_Texture2D, (_Divide_1fe314f1ca9dd78fbf366bbeb40e4ccf_Out_2_Vector4).x, _Property_ee792eccbb538a878b19be5db264531e_Out_0_Float, UnityBuildSamplerStateStruct(SamplerState_Linear_Repeat_Aniso8), _TriplanarNM_e307cfdc6531d2838aa3dfa51fc3913f, _TriplanarNM_e307cfdc6531d2838aa3dfa51fc3913f_XYZ_1_Vector4, _TriplanarNM_e307cfdc6531d2838aa3dfa51fc3913f_XZ_2_Vector4, _TriplanarNM_e307cfdc6531d2838aa3dfa51fc3913f_YZ_3_Vector4, _TriplanarNM_e307cfdc6531d2838aa3dfa51fc3913f_XY_4_Vector4);
|
|
float _Split_fe834aed1172f284a73d2d6810bdb696_R_1_Float = _TriplanarNM_e307cfdc6531d2838aa3dfa51fc3913f_XYZ_1_Vector4[0];
|
|
float _Split_fe834aed1172f284a73d2d6810bdb696_G_2_Float = _TriplanarNM_e307cfdc6531d2838aa3dfa51fc3913f_XYZ_1_Vector4[1];
|
|
float _Split_fe834aed1172f284a73d2d6810bdb696_B_3_Float = _TriplanarNM_e307cfdc6531d2838aa3dfa51fc3913f_XYZ_1_Vector4[2];
|
|
float _Split_fe834aed1172f284a73d2d6810bdb696_A_4_Float = _TriplanarNM_e307cfdc6531d2838aa3dfa51fc3913f_XYZ_1_Vector4[3];
|
|
float _Property_b5f7a30c2ea202858ea263fd2a5a46c6_Out_0_Float = _CoverHeightMapMin;
|
|
float _Property_f86678f1d28c0483ba1ddccf49ee52f7_Out_0_Float = _CoverHeightMapMax;
|
|
float2 _Vector2_b5c01a0d88900d87a8a819b340151fb6_Out_0_Vector2 = float2(_Property_b5f7a30c2ea202858ea263fd2a5a46c6_Out_0_Float, _Property_f86678f1d28c0483ba1ddccf49ee52f7_Out_0_Float);
|
|
float _Property_82b4f7f3bf3b4382bd69876479a9e350_Out_0_Float = _CoverHeightMapOffset;
|
|
float2 _Add_6020f54fd1e6798e8e76bfdcad62759a_Out_2_Vector2;
|
|
Unity_Add_float2(_Vector2_b5c01a0d88900d87a8a819b340151fb6_Out_0_Vector2, (_Property_82b4f7f3bf3b4382bd69876479a9e350_Out_0_Float.xx), _Add_6020f54fd1e6798e8e76bfdcad62759a_Out_2_Vector2);
|
|
float _Remap_65ceff40294d1e8aae6051445b9fdbc8_Out_3_Float;
|
|
Unity_Remap_float(_Split_fe834aed1172f284a73d2d6810bdb696_B_3_Float, float2 (0, 1), _Add_6020f54fd1e6798e8e76bfdcad62759a_Out_2_Vector2, _Remap_65ceff40294d1e8aae6051445b9fdbc8_Out_3_Float);
|
|
float _Multiply_bb0edd30580dba8b89213d9c5b1ef857_Out_2_Float;
|
|
Unity_Multiply_float_float(_Multiply_02fa8aa66970b281b4a325dc68f407b9_Out_2_Float, _Remap_65ceff40294d1e8aae6051445b9fdbc8_Out_3_Float, _Multiply_bb0edd30580dba8b89213d9c5b1ef857_Out_2_Float);
|
|
float _Multiply_484dd7b77d58aa88bf99c82cfe77c774_Out_2_Float;
|
|
Unity_Multiply_float_float(_Split_2ada595651635e8d97bf4b82f717fcc6_G_2_Float, _Multiply_bb0edd30580dba8b89213d9c5b1ef857_Out_2_Float, _Multiply_484dd7b77d58aa88bf99c82cfe77c774_Out_2_Float);
|
|
float _Saturate_d39fa9bab8cc8a8fa35db28d4dbc74ab_Out_1_Float;
|
|
Unity_Saturate_float(_Multiply_484dd7b77d58aa88bf99c82cfe77c774_Out_2_Float, _Saturate_d39fa9bab8cc8a8fa35db28d4dbc74ab_Out_1_Float);
|
|
float _Multiply_6957741a4923cc8db84ac72df2e194a8_Out_2_Float;
|
|
Unity_Multiply_float_float(_Clamp_07a501c22c6e188199bed73412ac8926_Out_3_Float, _Saturate_d39fa9bab8cc8a8fa35db28d4dbc74ab_Out_1_Float, _Multiply_6957741a4923cc8db84ac72df2e194a8_Out_2_Float);
|
|
float _Branch_3ccf365d359214809d30b6430d863e3f_Out_3_Float;
|
|
Unity_Branch_float(_Property_cb0b6597aee47880b32e852aaa0e4a71_Out_0_Boolean, _Multiply_6957741a4923cc8db84ac72df2e194a8_Out_2_Float, _Clamp_07a501c22c6e188199bed73412ac8926_Out_3_Float, _Branch_3ccf365d359214809d30b6430d863e3f_Out_3_Float);
|
|
float3 _Lerp_ee1b6587de2afe82942e8476d303d598_Out_3_Vector3;
|
|
Unity_Lerp_float3(_BlendOverlayBaseColor_369c0b6a02e62b809dc5c6ac1efddde2_OutVector4_1_Vector3, _BlendOverlayBaseColor_ec1f397271cc818abdb95188914e6b4d_OutVector4_1_Vector3, (_Branch_3ccf365d359214809d30b6430d863e3f_Out_3_Float.xxx), _Lerp_ee1b6587de2afe82942e8476d303d598_Out_3_Vector3);
|
|
float4 _Property_c500db71e51fef8daff29f346c122e57_Out_0_Vector4 = _WetColor;
|
|
float3 _Multiply_89461014b078f787a0724725c54fb934_Out_2_Vector3;
|
|
Unity_Multiply_float3_float3((_Property_c500db71e51fef8daff29f346c122e57_Out_0_Vector4.xyz), _Lerp_ee1b6587de2afe82942e8476d303d598_Out_3_Vector3, _Multiply_89461014b078f787a0724725c54fb934_Out_2_Vector3);
|
|
float _OneMinus_e16dfb812ec64b8891c541171687142f_Out_1_Float;
|
|
Unity_OneMinus_float(_Split_2ada595651635e8d97bf4b82f717fcc6_R_1_Float, _OneMinus_e16dfb812ec64b8891c541171687142f_Out_1_Float);
|
|
float3 _Lerp_43bc7a9493df5a829abf080ee4ad3298_Out_3_Vector3;
|
|
Unity_Lerp_float3(_Lerp_ee1b6587de2afe82942e8476d303d598_Out_3_Vector3, _Multiply_89461014b078f787a0724725c54fb934_Out_2_Vector3, (_OneMinus_e16dfb812ec64b8891c541171687142f_Out_1_Float.xxx), _Lerp_43bc7a9493df5a829abf080ee4ad3298_Out_3_Vector3);
|
|
UnityTexture2D _Property_8e909eb873a4cd8e9af98a90a84fdde8_Out_0_Texture2D = UnityBuildTexture2DStructNoScale(_BaseMaskMap);
|
|
Bindings_TriplanarNM_bc609ed95f52591469ab35dbfe0efcea_float _TriplanarNM_52e6c67b7de4708f80a463a880607c97;
|
|
_TriplanarNM_52e6c67b7de4708f80a463a880607c97.WorldSpaceNormal = IN.WorldSpaceNormal;
|
|
_TriplanarNM_52e6c67b7de4708f80a463a880607c97.AbsoluteWorldSpacePosition = IN.AbsoluteWorldSpacePosition;
|
|
float4 _TriplanarNM_52e6c67b7de4708f80a463a880607c97_XYZ_1_Vector4;
|
|
float4 _TriplanarNM_52e6c67b7de4708f80a463a880607c97_XZ_2_Vector4;
|
|
float4 _TriplanarNM_52e6c67b7de4708f80a463a880607c97_YZ_3_Vector4;
|
|
float4 _TriplanarNM_52e6c67b7de4708f80a463a880607c97_XY_4_Vector4;
|
|
SG_TriplanarNM_bc609ed95f52591469ab35dbfe0efcea_float(_Property_8e909eb873a4cd8e9af98a90a84fdde8_Out_0_Texture2D, (_Divide_6a90cebe78e620828de587523daaa7e6_Out_2_Vector4).x, _Property_3539de8c698c2981bb3c088d4ec52201_Out_0_Float, UnityBuildSamplerStateStruct(SamplerState_Linear_Repeat_Aniso8), _TriplanarNM_52e6c67b7de4708f80a463a880607c97, _TriplanarNM_52e6c67b7de4708f80a463a880607c97_XYZ_1_Vector4, _TriplanarNM_52e6c67b7de4708f80a463a880607c97_XZ_2_Vector4, _TriplanarNM_52e6c67b7de4708f80a463a880607c97_YZ_3_Vector4, _TriplanarNM_52e6c67b7de4708f80a463a880607c97_XY_4_Vector4);
|
|
float _Split_79d9d761d63eaa8c97fb3cb7fae0c380_R_1_Float = _TriplanarNM_52e6c67b7de4708f80a463a880607c97_XYZ_1_Vector4[0];
|
|
float _Split_79d9d761d63eaa8c97fb3cb7fae0c380_G_2_Float = _TriplanarNM_52e6c67b7de4708f80a463a880607c97_XYZ_1_Vector4[1];
|
|
float _Split_79d9d761d63eaa8c97fb3cb7fae0c380_B_3_Float = _TriplanarNM_52e6c67b7de4708f80a463a880607c97_XYZ_1_Vector4[2];
|
|
float _Split_79d9d761d63eaa8c97fb3cb7fae0c380_A_4_Float = _TriplanarNM_52e6c67b7de4708f80a463a880607c97_XYZ_1_Vector4[3];
|
|
float _Property_b97916566d1fc587b95e8ec7fe8bd775_Out_0_Float = _BaseMetallic;
|
|
float _Multiply_d0c8d83444dbe38588583551936c7394_Out_2_Float;
|
|
Unity_Multiply_float_float(_Split_79d9d761d63eaa8c97fb3cb7fae0c380_R_1_Float, _Property_b97916566d1fc587b95e8ec7fe8bd775_Out_0_Float, _Multiply_d0c8d83444dbe38588583551936c7394_Out_2_Float);
|
|
float _Property_b187bbc548f3378caa8c964ca81707ca_Out_0_Float = _BaseAORemapMin;
|
|
float _Property_f06b327a4a8a7881a968eb399edf1d5c_Out_0_Float = _BaseAORemapMax;
|
|
float2 _Vector2_e267d722f88ada8da2d7edf8f7c0261d_Out_0_Vector2 = float2(_Property_b187bbc548f3378caa8c964ca81707ca_Out_0_Float, _Property_f06b327a4a8a7881a968eb399edf1d5c_Out_0_Float);
|
|
float _Remap_ad3c26564c54aa8cbb2f81aa114b3b78_Out_3_Float;
|
|
Unity_Remap_float(_Split_79d9d761d63eaa8c97fb3cb7fae0c380_G_2_Float, float2 (0, 1), _Vector2_e267d722f88ada8da2d7edf8f7c0261d_Out_0_Vector2, _Remap_ad3c26564c54aa8cbb2f81aa114b3b78_Out_3_Float);
|
|
float _Property_9a46e81c228dd0858cfdfc248fcb5efd_Out_0_Float = _BaseSmoothnessRemapMin;
|
|
float _Property_4bb3b70a3720ae8ea49e0f195b665d1f_Out_0_Float = _BaseSmoothnessRemapMax;
|
|
float2 _Vector2_6cef82af5d99208da4f2447a8ae60b4b_Out_0_Vector2 = float2(_Property_9a46e81c228dd0858cfdfc248fcb5efd_Out_0_Float, _Property_4bb3b70a3720ae8ea49e0f195b665d1f_Out_0_Float);
|
|
float _Remap_e30adbbf5d116285964ef079df15b895_Out_3_Float;
|
|
Unity_Remap_float(_Split_79d9d761d63eaa8c97fb3cb7fae0c380_A_4_Float, float2 (0, 1), _Vector2_6cef82af5d99208da4f2447a8ae60b4b_Out_0_Vector2, _Remap_e30adbbf5d116285964ef079df15b895_Out_3_Float);
|
|
float _Multiply_794172f65d2acd8981bc0e2ecc71376e_Out_2_Float;
|
|
Unity_Multiply_float_float(_SampleTexture2D_4bd08411faa60c828847f2247f06a809_B_6_Float, 2, _Multiply_794172f65d2acd8981bc0e2ecc71376e_Out_2_Float);
|
|
float _Add_dedefe53d91ea08c81d7a6d9071b0263_Out_2_Float;
|
|
Unity_Add_float(_Multiply_794172f65d2acd8981bc0e2ecc71376e_Out_2_Float, float(-1), _Add_dedefe53d91ea08c81d7a6d9071b0263_Out_2_Float);
|
|
float _Property_039bed9aac95ec8fa510fea3c4904280_Out_0_Float = _DetailSmoothnessScale;
|
|
float _Multiply_eb0a55c9be8cee86b9847c24f0e5be60_Out_2_Float;
|
|
Unity_Multiply_float_float(_Add_dedefe53d91ea08c81d7a6d9071b0263_Out_2_Float, _Property_039bed9aac95ec8fa510fea3c4904280_Out_0_Float, _Multiply_eb0a55c9be8cee86b9847c24f0e5be60_Out_2_Float);
|
|
float _Saturate_ca849f42c1cc238cb8fb1eb04fbfb9dd_Out_1_Float;
|
|
Unity_Saturate_float(_Multiply_eb0a55c9be8cee86b9847c24f0e5be60_Out_2_Float, _Saturate_ca849f42c1cc238cb8fb1eb04fbfb9dd_Out_1_Float);
|
|
float _Absolute_bc7994d4f833e382b37b5718ee583259_Out_1_Float;
|
|
Unity_Absolute_float(_Saturate_ca849f42c1cc238cb8fb1eb04fbfb9dd_Out_1_Float, _Absolute_bc7994d4f833e382b37b5718ee583259_Out_1_Float);
|
|
Bindings_BlendOverlayDetailSmoothness_06e12138dc89c0040b45a57abe520a1a_float _BlendOverlayDetailSmoothness_5a03404db5a34885a089f1aee363667f;
|
|
float _BlendOverlayDetailSmoothness_5a03404db5a34885a089f1aee363667f_SmoothnessOverlay_1_Float;
|
|
SG_BlendOverlayDetailSmoothness_06e12138dc89c0040b45a57abe520a1a_float(_Remap_e30adbbf5d116285964ef079df15b895_Out_3_Float, _Add_dedefe53d91ea08c81d7a6d9071b0263_Out_2_Float, _Absolute_bc7994d4f833e382b37b5718ee583259_Out_1_Float, _BlendOverlayDetailSmoothness_5a03404db5a34885a089f1aee363667f, _BlendOverlayDetailSmoothness_5a03404db5a34885a089f1aee363667f_SmoothnessOverlay_1_Float);
|
|
float _Saturate_3d6c6d852202408cb9b11aac8a566c89_Out_1_Float;
|
|
Unity_Saturate_float(_BlendOverlayDetailSmoothness_5a03404db5a34885a089f1aee363667f_SmoothnessOverlay_1_Float, _Saturate_3d6c6d852202408cb9b11aac8a566c89_Out_1_Float);
|
|
float3 _Vector3_8ed406a0096de4818282676bf24b1a85_Out_0_Vector3 = float3(_Multiply_d0c8d83444dbe38588583551936c7394_Out_2_Float, _Remap_ad3c26564c54aa8cbb2f81aa114b3b78_Out_3_Float, _Saturate_3d6c6d852202408cb9b11aac8a566c89_Out_1_Float);
|
|
float _Split_2ec5937af5023a8295e3858d32b193d5_R_1_Float = _Vector3_8ed406a0096de4818282676bf24b1a85_Out_0_Vector3[0];
|
|
float _Split_2ec5937af5023a8295e3858d32b193d5_G_2_Float = _Vector3_8ed406a0096de4818282676bf24b1a85_Out_0_Vector3[1];
|
|
float _Split_2ec5937af5023a8295e3858d32b193d5_B_3_Float = _Vector3_8ed406a0096de4818282676bf24b1a85_Out_0_Vector3[2];
|
|
float _Split_2ec5937af5023a8295e3858d32b193d5_A_4_Float = 0;
|
|
UnityTexture2D _Property_0f50abb140882d848d9fc7be8e3468dc_Out_0_Texture2D = UnityBuildTexture2DStructNoScale(_ShapeAO);
|
|
float4 _SampleTexture2D_33392602b94694898ec8227a89f13cc9_RGBA_0_Vector4 = SAMPLE_TEXTURE2D(_Property_0f50abb140882d848d9fc7be8e3468dc_Out_0_Texture2D.tex, _Property_0f50abb140882d848d9fc7be8e3468dc_Out_0_Texture2D.samplerstate, _Property_0f50abb140882d848d9fc7be8e3468dc_Out_0_Texture2D.GetTransformedUV(IN.uv0.xy) );
|
|
float _SampleTexture2D_33392602b94694898ec8227a89f13cc9_R_4_Float = _SampleTexture2D_33392602b94694898ec8227a89f13cc9_RGBA_0_Vector4.r;
|
|
float _SampleTexture2D_33392602b94694898ec8227a89f13cc9_G_5_Float = _SampleTexture2D_33392602b94694898ec8227a89f13cc9_RGBA_0_Vector4.g;
|
|
float _SampleTexture2D_33392602b94694898ec8227a89f13cc9_B_6_Float = _SampleTexture2D_33392602b94694898ec8227a89f13cc9_RGBA_0_Vector4.b;
|
|
float _SampleTexture2D_33392602b94694898ec8227a89f13cc9_A_7_Float = _SampleTexture2D_33392602b94694898ec8227a89f13cc9_RGBA_0_Vector4.a;
|
|
float _Property_a51c4b6d05e6718d919aadcf26153350_Out_0_Float = _ShapeAORemapMin;
|
|
float _Property_973fbc42b7a69088b9fc2c502945f369_Out_0_Float = _ShapeAORemapMax;
|
|
float2 _Vector2_a73753c5a8c4fa828d2eb25d4fb8b399_Out_0_Vector2 = float2(_Property_a51c4b6d05e6718d919aadcf26153350_Out_0_Float, _Property_973fbc42b7a69088b9fc2c502945f369_Out_0_Float);
|
|
float _Remap_270e7e207f303487bc04348b1b54db69_Out_3_Float;
|
|
Unity_Remap_float(_SampleTexture2D_33392602b94694898ec8227a89f13cc9_G_5_Float, float2 (0, 1), _Vector2_a73753c5a8c4fa828d2eb25d4fb8b399_Out_0_Vector2, _Remap_270e7e207f303487bc04348b1b54db69_Out_3_Float);
|
|
float _Minimum_307d1a8c4f5c6a87a1bbc658a5811679_Out_2_Float;
|
|
Unity_Minimum_float(_Split_2ec5937af5023a8295e3858d32b193d5_G_2_Float, _Remap_270e7e207f303487bc04348b1b54db69_Out_3_Float, _Minimum_307d1a8c4f5c6a87a1bbc658a5811679_Out_2_Float);
|
|
float3 _Vector3_fac10bf467f5ff82b4f071ba165bf458_Out_0_Vector3 = float3(_Split_2ec5937af5023a8295e3858d32b193d5_R_1_Float, _Minimum_307d1a8c4f5c6a87a1bbc658a5811679_Out_2_Float, _Split_2ec5937af5023a8295e3858d32b193d5_B_3_Float);
|
|
float _Property_fa6937565be49684915e6bb999529949_Out_0_Float = _CoverMetallic;
|
|
float _Multiply_d0ecb787fa289f8f9d3c2988d60f18d3_Out_2_Float;
|
|
Unity_Multiply_float_float(_Split_fe834aed1172f284a73d2d6810bdb696_R_1_Float, _Property_fa6937565be49684915e6bb999529949_Out_0_Float, _Multiply_d0ecb787fa289f8f9d3c2988d60f18d3_Out_2_Float);
|
|
float _Property_8f5ca0ba38d2a4858c1b4e44f6a375b4_Out_0_Float = _CoverAORemapMin;
|
|
float _Property_a15ef0fe46e1d88f9e20df6605bd1499_Out_0_Float = _CoverAORemapMax;
|
|
float2 _Vector2_969d809c2de99f89959cc4526a665db9_Out_0_Vector2 = float2(_Property_8f5ca0ba38d2a4858c1b4e44f6a375b4_Out_0_Float, _Property_a15ef0fe46e1d88f9e20df6605bd1499_Out_0_Float);
|
|
float _Remap_1b6065f44329038594e2d0cf001fa138_Out_3_Float;
|
|
Unity_Remap_float(_Split_fe834aed1172f284a73d2d6810bdb696_G_2_Float, float2 (0, 1), _Vector2_969d809c2de99f89959cc4526a665db9_Out_0_Vector2, _Remap_1b6065f44329038594e2d0cf001fa138_Out_3_Float);
|
|
float _Property_0fde68fd9824db8e9f5b4b0daff90270_Out_0_Float = _CoverSmoothnessRemapMin;
|
|
float _Property_abad1da00caf99869e0c9ca2926c76bd_Out_0_Float = _CoverSmoothnessRemapMax;
|
|
float2 _Vector2_1aa81c2ad7cc268caa834889569ce556_Out_0_Vector2 = float2(_Property_0fde68fd9824db8e9f5b4b0daff90270_Out_0_Float, _Property_abad1da00caf99869e0c9ca2926c76bd_Out_0_Float);
|
|
float _Remap_4948cd1fb38399888e9567ee2abb8acd_Out_3_Float;
|
|
Unity_Remap_float(_Split_fe834aed1172f284a73d2d6810bdb696_A_4_Float, float2 (0, 1), _Vector2_1aa81c2ad7cc268caa834889569ce556_Out_0_Vector2, _Remap_4948cd1fb38399888e9567ee2abb8acd_Out_3_Float);
|
|
float _Multiply_d3e207dba42f1984aacff3c1bf4eef0b_Out_2_Float;
|
|
Unity_Multiply_float_float(_SampleTexture2D_4bd08411faa60c828847f2247f06a809_B_6_Float, 2, _Multiply_d3e207dba42f1984aacff3c1bf4eef0b_Out_2_Float);
|
|
float _Add_0299d632f81fff8f969a0eed5f77397c_Out_2_Float;
|
|
Unity_Add_float(_Multiply_d3e207dba42f1984aacff3c1bf4eef0b_Out_2_Float, float(-1), _Add_0299d632f81fff8f969a0eed5f77397c_Out_2_Float);
|
|
float _Property_a2c7556e96b60b8e90cb5145ca6f9dde_Out_0_Float = _DetailCoverSmoothnessScale;
|
|
float _Multiply_d340fbee0985958dbb66555a73bd733c_Out_2_Float;
|
|
Unity_Multiply_float_float(_Add_0299d632f81fff8f969a0eed5f77397c_Out_2_Float, _Property_a2c7556e96b60b8e90cb5145ca6f9dde_Out_0_Float, _Multiply_d340fbee0985958dbb66555a73bd733c_Out_2_Float);
|
|
float _Saturate_2c0cc920be0ca88e937ec108b38f5fde_Out_1_Float;
|
|
Unity_Saturate_float(_Multiply_d340fbee0985958dbb66555a73bd733c_Out_2_Float, _Saturate_2c0cc920be0ca88e937ec108b38f5fde_Out_1_Float);
|
|
float _Absolute_3f81290e941e378283f7151c4a0731e2_Out_1_Float;
|
|
Unity_Absolute_float(_Saturate_2c0cc920be0ca88e937ec108b38f5fde_Out_1_Float, _Absolute_3f81290e941e378283f7151c4a0731e2_Out_1_Float);
|
|
Bindings_BlendOverlayDetailSmoothness_06e12138dc89c0040b45a57abe520a1a_float _BlendOverlayDetailSmoothness_e7a4fbe98378f084bd09f6e5d90e1cb8;
|
|
float _BlendOverlayDetailSmoothness_e7a4fbe98378f084bd09f6e5d90e1cb8_SmoothnessOverlay_1_Float;
|
|
SG_BlendOverlayDetailSmoothness_06e12138dc89c0040b45a57abe520a1a_float(_Remap_4948cd1fb38399888e9567ee2abb8acd_Out_3_Float, _Add_0299d632f81fff8f969a0eed5f77397c_Out_2_Float, _Absolute_3f81290e941e378283f7151c4a0731e2_Out_1_Float, _BlendOverlayDetailSmoothness_e7a4fbe98378f084bd09f6e5d90e1cb8, _BlendOverlayDetailSmoothness_e7a4fbe98378f084bd09f6e5d90e1cb8_SmoothnessOverlay_1_Float);
|
|
float _Saturate_9091ea9d9924c682ad6b94d3322ee822_Out_1_Float;
|
|
Unity_Saturate_float(_BlendOverlayDetailSmoothness_e7a4fbe98378f084bd09f6e5d90e1cb8_SmoothnessOverlay_1_Float, _Saturate_9091ea9d9924c682ad6b94d3322ee822_Out_1_Float);
|
|
float3 _Vector3_93bafe600474e7819ebc13e534b986bf_Out_0_Vector3 = float3(_Multiply_d0ecb787fa289f8f9d3c2988d60f18d3_Out_2_Float, _Remap_1b6065f44329038594e2d0cf001fa138_Out_3_Float, _Saturate_9091ea9d9924c682ad6b94d3322ee822_Out_1_Float);
|
|
float _Split_6ec9cc5e56f3f68ba37ff91557979c18_R_1_Float = _Vector3_93bafe600474e7819ebc13e534b986bf_Out_0_Vector3[0];
|
|
float _Split_6ec9cc5e56f3f68ba37ff91557979c18_G_2_Float = _Vector3_93bafe600474e7819ebc13e534b986bf_Out_0_Vector3[1];
|
|
float _Split_6ec9cc5e56f3f68ba37ff91557979c18_B_3_Float = _Vector3_93bafe600474e7819ebc13e534b986bf_Out_0_Vector3[2];
|
|
float _Split_6ec9cc5e56f3f68ba37ff91557979c18_A_4_Float = 0;
|
|
float _Property_ca9c61425ece6b8c909c06b1e2738f1a_Out_0_Float = _CoverShapeAORemapMin;
|
|
float _Property_b9be92f1612c908d80643f0e96015b33_Out_0_Float = _CoverShapeAORemapMax;
|
|
float2 _Vector2_9b862c4e147d1082afad3606339d2130_Out_0_Vector2 = float2(_Property_ca9c61425ece6b8c909c06b1e2738f1a_Out_0_Float, _Property_b9be92f1612c908d80643f0e96015b33_Out_0_Float);
|
|
float _Remap_c1f0022add809b83bad7b493177bddb7_Out_3_Float;
|
|
Unity_Remap_float(_SampleTexture2D_33392602b94694898ec8227a89f13cc9_G_5_Float, float2 (0, 1), _Vector2_9b862c4e147d1082afad3606339d2130_Out_0_Vector2, _Remap_c1f0022add809b83bad7b493177bddb7_Out_3_Float);
|
|
float _Minimum_595c2f31bb0ec588977a2b9ea46bf6b0_Out_2_Float;
|
|
Unity_Minimum_float(_Split_6ec9cc5e56f3f68ba37ff91557979c18_G_2_Float, _Remap_c1f0022add809b83bad7b493177bddb7_Out_3_Float, _Minimum_595c2f31bb0ec588977a2b9ea46bf6b0_Out_2_Float);
|
|
float3 _Vector3_6cb5b2c4675bb28cb41ea88b6eaa2aff_Out_0_Vector3 = float3(_Split_6ec9cc5e56f3f68ba37ff91557979c18_R_1_Float, _Minimum_595c2f31bb0ec588977a2b9ea46bf6b0_Out_2_Float, _Split_6ec9cc5e56f3f68ba37ff91557979c18_B_3_Float);
|
|
float3 _Lerp_fa40b54f3d5a1a8a95f6306e837b9338_Out_3_Vector3;
|
|
Unity_Lerp_float3(_Vector3_fac10bf467f5ff82b4f071ba165bf458_Out_0_Vector3, _Vector3_6cb5b2c4675bb28cb41ea88b6eaa2aff_Out_0_Vector3, (_Branch_3ccf365d359214809d30b6430d863e3f_Out_3_Float.xxx), _Lerp_fa40b54f3d5a1a8a95f6306e837b9338_Out_3_Vector3);
|
|
float _Split_c4a5352a58a4f88fb40410f956825dc6_R_1_Float = _Lerp_fa40b54f3d5a1a8a95f6306e837b9338_Out_3_Vector3[0];
|
|
float _Split_c4a5352a58a4f88fb40410f956825dc6_G_2_Float = _Lerp_fa40b54f3d5a1a8a95f6306e837b9338_Out_3_Vector3[1];
|
|
float _Split_c4a5352a58a4f88fb40410f956825dc6_B_3_Float = _Lerp_fa40b54f3d5a1a8a95f6306e837b9338_Out_3_Vector3[2];
|
|
float _Split_c4a5352a58a4f88fb40410f956825dc6_A_4_Float = 0;
|
|
float _Property_7861e880056eb88ab923a2ff5b12179d_Out_0_Float = _WetSmoothness;
|
|
float _Lerp_ee63160826cff4869f0e63568dd6f8b7_Out_3_Float;
|
|
Unity_Lerp_float(_Split_c4a5352a58a4f88fb40410f956825dc6_B_3_Float, _Property_7861e880056eb88ab923a2ff5b12179d_Out_0_Float, _OneMinus_e16dfb812ec64b8891c541171687142f_Out_1_Float, _Lerp_ee63160826cff4869f0e63568dd6f8b7_Out_3_Float);
|
|
float _Property_1c389d922d4fba86bc62c7d42ac8643d_Out_0_Float = _CoverNormalScale;
|
|
float3 _NormalStrength_db3de71f618fee878c84a13374c7adc4_Out_2_Vector3;
|
|
Unity_NormalStrength_float((_TriplanarNMn_ba7e211dd8095589a2939b5b239ca8e0_XYZ_1_Vector4.xyz), _Property_1c389d922d4fba86bc62c7d42ac8643d_Out_0_Float, _NormalStrength_db3de71f618fee878c84a13374c7adc4_Out_2_Vector3);
|
|
float3 _NormalBlend_b2e537e7a99f9280ba682b47daf3c5e3_Out_2_Vector3;
|
|
Unity_NormalBlend_float(_NormalStrength_db3de71f618fee878c84a13374c7adc4_Out_2_Vector3, _NormalStrength_401cd5af500bd68dbc9bca19d548d0db_Out_2_Vector3, _NormalBlend_b2e537e7a99f9280ba682b47daf3c5e3_Out_2_Vector3);
|
|
float2 _Vector2_b87489f8633d268598edb76163057164_Out_0_Vector2 = float2(_SampleTexture2D_4bd08411faa60c828847f2247f06a809_A_7_Float, _SampleTexture2D_4bd08411faa60c828847f2247f06a809_G_5_Float);
|
|
float2 _Multiply_95e603bb6d4bd7809de0ae42c8f45058_Out_2_Vector2;
|
|
Unity_Multiply_float2_float2(_Vector2_b87489f8633d268598edb76163057164_Out_0_Vector2, float2(2, 2), _Multiply_95e603bb6d4bd7809de0ae42c8f45058_Out_2_Vector2);
|
|
float2 _Add_c116ac3906ccf68d82dd5b73d0f5659a_Out_2_Vector2;
|
|
Unity_Add_float2(_Multiply_95e603bb6d4bd7809de0ae42c8f45058_Out_2_Vector2, float2(-1, -1), _Add_c116ac3906ccf68d82dd5b73d0f5659a_Out_2_Vector2);
|
|
float _Property_988acb131fd330878b4ac0672366ad90_Out_0_Float = _DetailCoverNormalScale;
|
|
float2 _Multiply_6de1a79215e1928f9f3fc3293df74f88_Out_2_Vector2;
|
|
Unity_Multiply_float2_float2(_Add_c116ac3906ccf68d82dd5b73d0f5659a_Out_2_Vector2, (_Property_988acb131fd330878b4ac0672366ad90_Out_0_Float.xx), _Multiply_6de1a79215e1928f9f3fc3293df74f88_Out_2_Vector2);
|
|
float _Split_9ce53bb7a65f16809b6a95d82286186e_R_1_Float = _Multiply_6de1a79215e1928f9f3fc3293df74f88_Out_2_Vector2[0];
|
|
float _Split_9ce53bb7a65f16809b6a95d82286186e_G_2_Float = _Multiply_6de1a79215e1928f9f3fc3293df74f88_Out_2_Vector2[1];
|
|
float _Split_9ce53bb7a65f16809b6a95d82286186e_B_3_Float = 0;
|
|
float _Split_9ce53bb7a65f16809b6a95d82286186e_A_4_Float = 0;
|
|
float _DotProduct_8912687db556b6819d2a38ba8511a7ae_Out_2_Float;
|
|
Unity_DotProduct_float2(_Multiply_6de1a79215e1928f9f3fc3293df74f88_Out_2_Vector2, _Multiply_6de1a79215e1928f9f3fc3293df74f88_Out_2_Vector2, _DotProduct_8912687db556b6819d2a38ba8511a7ae_Out_2_Float);
|
|
float _Saturate_013ea9a02a1ff18992540b270836cc73_Out_1_Float;
|
|
Unity_Saturate_float(_DotProduct_8912687db556b6819d2a38ba8511a7ae_Out_2_Float, _Saturate_013ea9a02a1ff18992540b270836cc73_Out_1_Float);
|
|
float _OneMinus_eefd2695dc7d77838984fc25a1c00b0b_Out_1_Float;
|
|
Unity_OneMinus_float(_Saturate_013ea9a02a1ff18992540b270836cc73_Out_1_Float, _OneMinus_eefd2695dc7d77838984fc25a1c00b0b_Out_1_Float);
|
|
float _SquareRoot_1d25cc71b4ce9286af1666a96ae6ac5a_Out_1_Float;
|
|
Unity_SquareRoot_float(_OneMinus_eefd2695dc7d77838984fc25a1c00b0b_Out_1_Float, _SquareRoot_1d25cc71b4ce9286af1666a96ae6ac5a_Out_1_Float);
|
|
float3 _Vector3_c3d9c7e92a1c5b8ea5650ab3bb421c27_Out_0_Vector3 = float3(_Split_9ce53bb7a65f16809b6a95d82286186e_R_1_Float, _Split_9ce53bb7a65f16809b6a95d82286186e_G_2_Float, _SquareRoot_1d25cc71b4ce9286af1666a96ae6ac5a_Out_1_Float);
|
|
float3 _NormalBlend_8e1d1c87f8c12b87b64883533bfa43be_Out_2_Vector3;
|
|
Unity_NormalBlend_float(_NormalBlend_b2e537e7a99f9280ba682b47daf3c5e3_Out_2_Vector3, _Vector3_c3d9c7e92a1c5b8ea5650ab3bb421c27_Out_0_Vector3, _NormalBlend_8e1d1c87f8c12b87b64883533bfa43be_Out_2_Vector3);
|
|
float3 _Lerp_48cd568fef7d358b8d65b989db745e6c_Out_3_Vector3;
|
|
Unity_Lerp_float3(_NormalBlend_4242e1b4a785378aa59dd49e9d993ffc_Out_2_Vector3, _NormalBlend_8e1d1c87f8c12b87b64883533bfa43be_Out_2_Vector3, (_Branch_3ccf365d359214809d30b6430d863e3f_Out_3_Float.xxx), _Lerp_48cd568fef7d358b8d65b989db745e6c_Out_3_Vector3);
|
|
surface.BaseColor = _Lerp_43bc7a9493df5a829abf080ee4ad3298_Out_3_Vector3;
|
|
surface.Emission = float3(0, 0, 0);
|
|
surface.Alpha = float(1);
|
|
surface.BentNormal = IN.TangentSpaceNormal;
|
|
surface.Smoothness = _Lerp_ee63160826cff4869f0e63568dd6f8b7_Out_3_Float;
|
|
surface.Occlusion = _Split_c4a5352a58a4f88fb40410f956825dc6_G_2_Float;
|
|
surface.NormalTS = _Lerp_48cd568fef7d358b8d65b989db745e6c_Out_3_Vector3;
|
|
surface.Metallic = _Split_c4a5352a58a4f88fb40410f956825dc6_R_1_Float;
|
|
return surface;
|
|
}
|
|
|
|
// --------------------------------------------------
|
|
// Build Graph Inputs
|
|
#ifdef HAVE_VFX_MODIFICATION
|
|
#define VFX_SRP_ATTRIBUTES AttributesMesh
|
|
#define VaryingsMeshType VaryingsMeshToPS
|
|
#define VFX_SRP_VARYINGS VaryingsMeshType
|
|
#define VFX_SRP_SURFACE_INPUTS FragInputs
|
|
#endif
|
|
SurfaceDescriptionInputs FragInputsToSurfaceDescriptionInputs(FragInputs input, float3 viewWS)
|
|
{
|
|
SurfaceDescriptionInputs output;
|
|
ZERO_INITIALIZE(SurfaceDescriptionInputs, output);
|
|
|
|
output.WorldSpaceNormal = normalize(input.tangentToWorld[2].xyz);
|
|
#if defined(SHADER_STAGE_RAY_TRACING)
|
|
#else
|
|
#endif
|
|
output.TangentSpaceNormal = float3(0.0f, 0.0f, 1.0f);
|
|
output.WorldSpaceTangent = input.tangentToWorld[0].xyz;
|
|
output.WorldSpaceBiTangent = input.tangentToWorld[1].xyz;
|
|
output.AbsoluteWorldSpacePosition = GetAbsolutePositionWS(input.positionRWS);
|
|
|
|
#if UNITY_UV_STARTS_AT_TOP
|
|
#else
|
|
#endif
|
|
|
|
|
|
output.uv0 = input.texCoord0;
|
|
output.VertexColor = input.color;
|
|
|
|
// splice point to copy frag inputs custom interpolator pack into the SDI
|
|
/* WARNING: $splice Could not find named fragment 'CustomInterpolatorCopyToSDI' */
|
|
|
|
return output;
|
|
}
|
|
|
|
// --------------------------------------------------
|
|
// Build Surface Data (Specific Material)
|
|
|
|
void ApplyDecalToSurfaceDataNoNormal(DecalSurfaceData decalSurfaceData, inout SurfaceData surfaceData);
|
|
|
|
void ApplyDecalAndGetNormal(FragInputs fragInputs, PositionInputs posInput, SurfaceDescription surfaceDescription,
|
|
inout SurfaceData surfaceData)
|
|
{
|
|
float3 doubleSidedConstants = GetDoubleSidedConstants();
|
|
|
|
#ifdef DECAL_NORMAL_BLENDING
|
|
// SG nodes don't ouptut surface gradients, so if decals require surf grad blending, we have to convert
|
|
// the normal to gradient before applying the decal. We then have to resolve the gradient back to world space
|
|
float3 normalTS;
|
|
|
|
normalTS = SurfaceGradientFromTangentSpaceNormalAndFromTBN(surfaceDescription.NormalTS,
|
|
fragInputs.tangentToWorld[0], fragInputs.tangentToWorld[1]);
|
|
|
|
|
|
#if HAVE_DECALS
|
|
if (_EnableDecals)
|
|
{
|
|
float alpha = 1.0;
|
|
alpha = surfaceDescription.Alpha;
|
|
|
|
DecalSurfaceData decalSurfaceData = GetDecalSurfaceData(posInput, fragInputs, alpha);
|
|
ApplyDecalToSurfaceNormal(decalSurfaceData, fragInputs.tangentToWorld[2], normalTS);
|
|
ApplyDecalToSurfaceDataNoNormal(decalSurfaceData, surfaceData);
|
|
}
|
|
#endif
|
|
|
|
GetNormalWS_SG(fragInputs, normalTS, surfaceData.normalWS, doubleSidedConstants);
|
|
#else
|
|
// normal delivered to master node
|
|
GetNormalWS(fragInputs, surfaceDescription.NormalTS, surfaceData.normalWS, doubleSidedConstants);
|
|
|
|
#if HAVE_DECALS
|
|
if (_EnableDecals)
|
|
{
|
|
float alpha = 1.0;
|
|
alpha = surfaceDescription.Alpha;
|
|
|
|
// Both uses and modifies 'surfaceData.normalWS'.
|
|
DecalSurfaceData decalSurfaceData = GetDecalSurfaceData(posInput, fragInputs, alpha);
|
|
ApplyDecalToSurfaceNormal(decalSurfaceData, surfaceData.normalWS.xyz);
|
|
ApplyDecalToSurfaceDataNoNormal(decalSurfaceData, surfaceData);
|
|
}
|
|
#endif
|
|
#endif
|
|
}
|
|
void BuildSurfaceData(FragInputs fragInputs, inout SurfaceDescription surfaceDescription, float3 V, PositionInputs posInput, out SurfaceData surfaceData, out float3 bentNormalWS)
|
|
{
|
|
ZERO_INITIALIZE(SurfaceData, surfaceData);
|
|
|
|
// specularOcclusion need to be init ahead of decal to quiet the compiler that modify the SurfaceData struct
|
|
// however specularOcclusion can come from the graph, so need to be init here so it can be override.
|
|
surfaceData.specularOcclusion = 1.0;
|
|
surfaceData.thickness = 0.0;
|
|
|
|
surfaceData.baseColor = surfaceDescription.BaseColor;
|
|
surfaceData.perceptualSmoothness = surfaceDescription.Smoothness;
|
|
surfaceData.ambientOcclusion = surfaceDescription.Occlusion;
|
|
surfaceData.metallic = surfaceDescription.Metallic;
|
|
|
|
#if defined(_REFRACTION_PLANE) || defined(_REFRACTION_SPHERE) || defined(_REFRACTION_THIN)
|
|
if (_EnableSSRefraction)
|
|
{
|
|
|
|
surfaceData.transmittanceMask = (1.0 - surfaceDescription.Alpha);
|
|
surfaceDescription.Alpha = 1.0;
|
|
}
|
|
else
|
|
{
|
|
surfaceData.ior = 1.0;
|
|
surfaceData.transmittanceColor = float3(1.0, 1.0, 1.0);
|
|
surfaceData.atDistance = 1.0;
|
|
surfaceData.transmittanceMask = 0.0;
|
|
surfaceDescription.Alpha = 1.0;
|
|
}
|
|
#else
|
|
surfaceData.ior = 1.0;
|
|
surfaceData.transmittanceColor = float3(1.0, 1.0, 1.0);
|
|
surfaceData.atDistance = 1.0;
|
|
surfaceData.transmittanceMask = 0.0;
|
|
#endif
|
|
|
|
// These static material feature allow compile time optimization
|
|
surfaceData.materialFeatures = MATERIALFEATUREFLAGS_LIT_STANDARD;
|
|
#ifdef _MATERIAL_FEATURE_SUBSURFACE_SCATTERING
|
|
surfaceData.materialFeatures |= MATERIALFEATUREFLAGS_LIT_SUBSURFACE_SCATTERING;
|
|
#endif
|
|
|
|
#ifdef _MATERIAL_FEATURE_TRANSMISSION
|
|
surfaceData.materialFeatures |= MATERIALFEATUREFLAGS_LIT_TRANSMISSION;
|
|
#endif
|
|
|
|
#ifdef _MATERIAL_FEATURE_COLORED_TRANSMISSION
|
|
surfaceData.materialFeatures |= MATERIALFEATUREFLAGS_LIT_TRANSMISSION;
|
|
surfaceData.materialFeatures |= MATERIALFEATUREFLAGS_LIT_COLORED_TRANSMISSION;
|
|
|
|
#endif
|
|
|
|
#ifdef _MATERIAL_FEATURE_ANISOTROPY
|
|
surfaceData.materialFeatures |= MATERIALFEATUREFLAGS_LIT_ANISOTROPY;
|
|
|
|
// Initialize the normal to something non-zero to avoid a div-zero warning for anisotropy.
|
|
surfaceData.normalWS = float3(0, 1, 0);
|
|
#endif
|
|
|
|
#ifdef _MATERIAL_FEATURE_IRIDESCENCE
|
|
surfaceData.materialFeatures |= MATERIALFEATUREFLAGS_LIT_IRIDESCENCE;
|
|
#endif
|
|
|
|
#ifdef _MATERIAL_FEATURE_SPECULAR_COLOR
|
|
surfaceData.materialFeatures |= MATERIALFEATUREFLAGS_LIT_SPECULAR_COLOR;
|
|
#endif
|
|
|
|
#ifdef _MATERIAL_FEATURE_CLEAR_COAT
|
|
surfaceData.materialFeatures |= MATERIALFEATUREFLAGS_LIT_CLEAR_COAT;
|
|
#endif
|
|
|
|
#if defined (_MATERIAL_FEATURE_SPECULAR_COLOR) && defined (_ENERGY_CONSERVING_SPECULAR)
|
|
// Require to have setup baseColor
|
|
// Reproduce the energy conservation done in legacy Unity. Not ideal but better for compatibility and users can unchek it
|
|
surfaceData.baseColor *= (1.0 - Max3(surfaceData.specularColor.r, surfaceData.specularColor.g, surfaceData.specularColor.b));
|
|
#endif
|
|
|
|
float3 doubleSidedConstants = GetDoubleSidedConstants();
|
|
|
|
ApplyDecalAndGetNormal(fragInputs, posInput, surfaceDescription, surfaceData);
|
|
|
|
surfaceData.geomNormalWS = fragInputs.tangentToWorld[2];
|
|
|
|
surfaceData.tangentWS = normalize(fragInputs.tangentToWorld[0].xyz); // The tangent is not normalize in tangentToWorld for mikkt. TODO: Check if it expected that we normalize with Morten. Tag: SURFACE_GRADIENT
|
|
|
|
|
|
bentNormalWS = surfaceData.normalWS;
|
|
|
|
surfaceData.tangentWS = Orthonormalize(surfaceData.tangentWS, surfaceData.normalWS);
|
|
|
|
#ifdef DEBUG_DISPLAY
|
|
#if !defined(SHADER_STAGE_RAY_TRACING)
|
|
// Mipmap mode debugging isn't supported with ray tracing as it relies on derivatives
|
|
if (_DebugMipMapMode != DEBUGMIPMAPMODE_NONE)
|
|
{
|
|
#ifdef FRAG_INPUTS_USE_TEXCOORD0
|
|
surfaceData.baseColor = GET_TEXTURE_STREAMING_DEBUG(posInput.positionSS, fragInputs.texCoord0);
|
|
#else
|
|
surfaceData.baseColor = GET_TEXTURE_STREAMING_DEBUG_NO_UV(posInput.positionSS);
|
|
#endif
|
|
surfaceData.metallic = 0;
|
|
}
|
|
#endif
|
|
|
|
// We need to call ApplyDebugToSurfaceData after filling the surfaceData and before filling builtinData
|
|
// as it can modify attribute use for static lighting
|
|
ApplyDebugToSurfaceData(fragInputs.tangentToWorld, surfaceData);
|
|
#endif
|
|
|
|
// By default we use the ambient occlusion with Tri-ace trick (apply outside) for specular occlusion.
|
|
// If user provide bent normal then we process a better term
|
|
#if defined(_SPECULAR_OCCLUSION_CUSTOM)
|
|
// Just use the value passed through via the slot (not active otherwise)
|
|
#elif defined(_SPECULAR_OCCLUSION_FROM_AO_BENT_NORMAL)
|
|
// If we have bent normal and ambient occlusion, process a specular occlusion
|
|
surfaceData.specularOcclusion = GetSpecularOcclusionFromBentAO(V, bentNormalWS, surfaceData.normalWS, surfaceData.ambientOcclusion, PerceptualSmoothnessToPerceptualRoughness(surfaceData.perceptualSmoothness));
|
|
#elif defined(_AMBIENT_OCCLUSION) && defined(_SPECULAR_OCCLUSION_FROM_AO)
|
|
surfaceData.specularOcclusion = GetSpecularOcclusionFromAmbientOcclusion(ClampNdotV(dot(surfaceData.normalWS, V)), surfaceData.ambientOcclusion, PerceptualSmoothnessToRoughness(surfaceData.perceptualSmoothness));
|
|
#endif
|
|
|
|
#if defined(_ENABLE_GEOMETRIC_SPECULAR_AA) && !defined(SHADER_STAGE_RAY_TRACING)
|
|
surfaceData.perceptualSmoothness = GeometricNormalFiltering(surfaceData.perceptualSmoothness, fragInputs.tangentToWorld[2], surfaceDescription.SpecularAAScreenSpaceVariance, surfaceDescription.SpecularAAThreshold);
|
|
#endif
|
|
}
|
|
|
|
// --------------------------------------------------
|
|
// Get Surface And BuiltinData
|
|
|
|
void GetSurfaceAndBuiltinData(FragInputs fragInputs, float3 V, inout PositionInputs posInput, out SurfaceData surfaceData, out BuiltinData builtinData RAY_TRACING_OPTIONAL_PARAMETERS)
|
|
{
|
|
// Don't dither if displaced tessellation (we're fading out the displacement instead to match the next LOD)
|
|
#if !defined(SHADER_STAGE_RAY_TRACING) && !defined(_TESSELLATION_DISPLACEMENT)
|
|
#ifdef LOD_FADE_CROSSFADE // enable dithering LOD transition if user select CrossFade transition in LOD group
|
|
LODDitheringTransition(ComputeFadeMaskSeed(V, posInput.positionSS), unity_LODFade.x);
|
|
#endif
|
|
#endif
|
|
|
|
#ifndef SHADER_UNLIT
|
|
#ifdef _DOUBLESIDED_ON
|
|
float3 doubleSidedConstants = _DoubleSidedConstants.xyz;
|
|
#else
|
|
float3 doubleSidedConstants = float3(1.0, 1.0, 1.0);
|
|
#endif
|
|
|
|
ApplyDoubleSidedFlipOrMirror(fragInputs, doubleSidedConstants); // Apply double sided flip on the vertex normal
|
|
#endif // SHADER_UNLIT
|
|
|
|
SurfaceDescriptionInputs surfaceDescriptionInputs = FragInputsToSurfaceDescriptionInputs(fragInputs, V);
|
|
|
|
#if defined(HAVE_VFX_MODIFICATION)
|
|
GraphProperties properties;
|
|
ZERO_INITIALIZE(GraphProperties, properties);
|
|
|
|
GetElementPixelProperties(fragInputs, properties);
|
|
|
|
SurfaceDescription surfaceDescription = SurfaceDescriptionFunction(surfaceDescriptionInputs, properties);
|
|
#else
|
|
SurfaceDescription surfaceDescription = SurfaceDescriptionFunction(surfaceDescriptionInputs);
|
|
#endif
|
|
|
|
#ifdef DEBUG_DISPLAY
|
|
if (_DebugMipMapMode != DEBUGMIPMAPMODE_NONE)
|
|
{
|
|
surfaceDescription.Alpha = 1.0f;
|
|
}
|
|
#endif
|
|
|
|
// Perform alpha test very early to save performance (a killed pixel will not sample textures)
|
|
// TODO: split graph evaluation to grab just alpha dependencies first? tricky..
|
|
#ifdef _ALPHATEST_ON
|
|
float alphaCutoff = surfaceDescription.AlphaClipThreshold;
|
|
#if SHADERPASS == SHADERPASS_TRANSPARENT_DEPTH_PREPASS
|
|
// The TransparentDepthPrepass is also used with SSR transparent.
|
|
// If an artists enable transaprent SSR but not the TransparentDepthPrepass itself, then we use AlphaClipThreshold
|
|
// otherwise if TransparentDepthPrepass is enabled we use AlphaClipThresholdDepthPrepass
|
|
#elif SHADERPASS == SHADERPASS_TRANSPARENT_DEPTH_POSTPASS
|
|
// DepthPostpass always use its own alpha threshold
|
|
alphaCutoff = surfaceDescription.AlphaClipThresholdDepthPostpass;
|
|
#elif (SHADERPASS == SHADERPASS_SHADOWS) || (SHADERPASS == SHADERPASS_RAYTRACING_VISIBILITY)
|
|
// If use shadow threshold isn't enable we don't allow any test
|
|
#endif
|
|
|
|
GENERIC_ALPHA_TEST(surfaceDescription.Alpha, alphaCutoff);
|
|
#endif
|
|
|
|
#if !defined(SHADER_STAGE_RAY_TRACING) && _DEPTHOFFSET_ON
|
|
ApplyDepthOffsetPositionInput(V, surfaceDescription.DepthOffset, GetViewForwardDir(), GetWorldToHClipMatrix(), posInput);
|
|
#endif
|
|
|
|
#ifndef SHADER_UNLIT
|
|
float3 bentNormalWS;
|
|
BuildSurfaceData(fragInputs, surfaceDescription, V, posInput, surfaceData, bentNormalWS);
|
|
|
|
#ifdef FRAG_INPUTS_USE_TEXCOORD1
|
|
float4 lightmapTexCoord1 = fragInputs.texCoord1;
|
|
#else
|
|
float4 lightmapTexCoord1 = float4(0,0,0,0);
|
|
#endif
|
|
|
|
#ifdef FRAG_INPUTS_USE_TEXCOORD2
|
|
float4 lightmapTexCoord2 = fragInputs.texCoord2;
|
|
#else
|
|
float4 lightmapTexCoord2 = float4(0,0,0,0);
|
|
#endif
|
|
|
|
float alpha = 1.0;
|
|
alpha = surfaceDescription.Alpha;
|
|
|
|
// Builtin Data
|
|
// For back lighting we use the oposite vertex normal
|
|
InitBuiltinData(posInput, alpha, bentNormalWS, -fragInputs.tangentToWorld[2], lightmapTexCoord1, lightmapTexCoord2, builtinData);
|
|
|
|
#else
|
|
BuildSurfaceData(fragInputs, surfaceDescription, V, posInput, surfaceData);
|
|
|
|
ZERO_BUILTIN_INITIALIZE(builtinData); // No call to InitBuiltinData as we don't have any lighting
|
|
builtinData.opacity = surfaceDescription.Alpha;
|
|
|
|
#if defined(DEBUG_DISPLAY)
|
|
// Light Layers are currently not used for the Unlit shader (because it is not lit)
|
|
// But Unlit objects do cast shadows according to their rendering layer mask, which is what we want to
|
|
// display in the light layers visualization mode, therefore we need the renderingLayers
|
|
builtinData.renderingLayers = GetMeshRenderingLayerMask();
|
|
#endif
|
|
|
|
#endif // SHADER_UNLIT
|
|
|
|
#ifdef _ALPHATEST_ON
|
|
// Used for sharpening by alpha to mask - Alpha to covertage is only used with depth only and forward pass (no shadow pass, no transparent pass)
|
|
builtinData.alphaClipTreshold = alphaCutoff;
|
|
#endif
|
|
|
|
// override sampleBakedGI - not used by Unlit
|
|
// When overriding GI, we need to force the isLightmap flag to make sure we don't add APV (sampled in the lightloop) on top of the overridden value (set at GBuffer stage)
|
|
|
|
builtinData.emissiveColor = surfaceDescription.Emission;
|
|
|
|
// Note this will not fully work on transparent surfaces (can check with _SURFACE_TYPE_TRANSPARENT define)
|
|
// We will always overwrite vt feeback with the nearest. So behind transparent surfaces vt will not be resolved
|
|
// This is a limitation of the current MRT approach.
|
|
#ifdef UNITY_VIRTUAL_TEXTURING
|
|
#endif
|
|
|
|
#if _DEPTHOFFSET_ON
|
|
builtinData.depthOffset = surfaceDescription.DepthOffset;
|
|
#endif
|
|
|
|
// TODO: We should generate distortion / distortionBlur for non distortion pass
|
|
#if (SHADERPASS == SHADERPASS_DISTORTION)
|
|
builtinData.distortion = surfaceDescription.Distortion;
|
|
builtinData.distortionBlur = surfaceDescription.DistortionBlur;
|
|
#endif
|
|
|
|
#ifndef SHADER_UNLIT
|
|
// PostInitBuiltinData call ApplyDebugToBuiltinData
|
|
PostInitBuiltinData(V, posInput, surfaceData, builtinData);
|
|
#else
|
|
ApplyDebugToBuiltinData(builtinData);
|
|
#endif
|
|
|
|
RAY_TRACING_OPTIONAL_ALPHA_TEST_PASS
|
|
}
|
|
|
|
// --------------------------------------------------
|
|
// Main
|
|
|
|
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/RenderPipeline/ShaderPass/ShaderPassRaytracingGBuffer.hlsl"
|
|
|
|
// --------------------------------------------------
|
|
// Visual Effect Vertex Invocations
|
|
|
|
#ifdef HAVE_VFX_MODIFICATION
|
|
#if !defined(SHADER_STAGE_RAY_TRACING)
|
|
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/ShaderLibrary/VisualEffectVertex.hlsl"
|
|
#else
|
|
#endif
|
|
#endif
|
|
|
|
ENDHLSL
|
|
}
|
|
Pass
|
|
{
|
|
Name "DebugDXR"
|
|
Tags
|
|
{
|
|
"LightMode" = "DebugDXR"
|
|
}
|
|
|
|
// Debug
|
|
// <None>
|
|
|
|
// --------------------------------------------------
|
|
// Pass
|
|
|
|
HLSLPROGRAM
|
|
|
|
// Pragmas
|
|
#pragma target 5.0
|
|
#pragma raytracing surface_shader
|
|
#pragma only_renderers d3d11 xboxseries ps5
|
|
|
|
#include "Packages/com.unity.render-pipelines.core/ShaderLibrary/Common.hlsl"
|
|
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/ShaderLibrary/ShaderVariables.hlsl"
|
|
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/RenderPipeline/ShaderPass/FragInputs.hlsl"
|
|
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/RenderPipeline/ShaderPass/ShaderPass.cs.hlsl"
|
|
|
|
// Includes
|
|
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/RenderPipeline/Raytracing/Shaders/RaytracingMacros.hlsl"
|
|
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/RenderPipeline/Raytracing/Shaders/ShaderVariablesRaytracing.hlsl"
|
|
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/Material/Material.hlsl"
|
|
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/RenderPipeline/Raytracing/Shaders/RaytracingIntersection.hlsl"
|
|
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/RenderPipeline/Raytracing/Shaders/RayTracingCommon.hlsl"
|
|
// GraphIncludes: <None>
|
|
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/RenderPipeline/ShaderPass/ShaderPassRayTracingDebug.hlsl"
|
|
|
|
ENDHLSL
|
|
}
|
|
Pass
|
|
{
|
|
Name "PathTracingDXR"
|
|
Tags
|
|
{
|
|
"LightMode" = "PathTracingDXR"
|
|
}
|
|
|
|
// Render State
|
|
// RenderState: <None>
|
|
|
|
// Debug
|
|
// <None>
|
|
|
|
// --------------------------------------------------
|
|
// Pass
|
|
|
|
HLSLPROGRAM
|
|
|
|
// Pragmas
|
|
#pragma target 5.0
|
|
#pragma raytracing surface_shader
|
|
#pragma only_renderers d3d11 xboxseries ps5
|
|
|
|
// Keywords
|
|
#pragma shader_feature _ _SURFACE_TYPE_TRANSPARENT
|
|
#pragma shader_feature_local _ _DOUBLESIDED_ON
|
|
#pragma shader_feature_local _ _ADD_PRECOMPUTED_VELOCITY
|
|
#pragma shader_feature_local _ _TRANSPARENT_WRITES_MOTION_VEC _TRANSPARENT_REFRACTIVE_SORT
|
|
#pragma shader_feature_local_fragment _ _ENABLE_FOG_ON_TRANSPARENT
|
|
#pragma multi_compile _ DEBUG_DISPLAY
|
|
#pragma shader_feature_local_fragment _ _DISABLE_DECALS
|
|
#pragma shader_feature_local_raytracing _ _DISABLE_DECALS
|
|
#pragma shader_feature_local_fragment _ _DISABLE_SSR
|
|
#pragma shader_feature_local_raytracing _ _DISABLE_SSR
|
|
#pragma shader_feature_local_fragment _ _DISABLE_SSR_TRANSPARENT
|
|
#pragma shader_feature_local_raytracing _ _DISABLE_SSR_TRANSPARENT
|
|
#pragma multi_compile _ LIGHTMAP_ON
|
|
#pragma multi_compile _ DIRLIGHTMAP_COMBINED
|
|
#pragma multi_compile_fragment _ PROBE_VOLUMES_L1 PROBE_VOLUMES_L2
|
|
#pragma multi_compile_raytracing _ PROBE_VOLUMES_L1 PROBE_VOLUMES_L2
|
|
#pragma multi_compile _ DYNAMICLIGHTMAP_ON
|
|
#pragma multi_compile_raytracing DECALS_OFF DECALS_3RT DECALS_4RT
|
|
#pragma multi_compile_raytracing _ DECAL_SURFACE_GRADIENT
|
|
#pragma shader_feature_local _ _REFRACTION_PLANE _REFRACTION_SPHERE _REFRACTION_THIN
|
|
#pragma shader_feature_local_fragment _MATERIAL_FEATURE_SUBSURFACE_SCATTERING
|
|
#pragma shader_feature_local_raytracing _MATERIAL_FEATURE_SUBSURFACE_SCATTERING
|
|
#pragma shader_feature_local_fragment _MATERIAL_FEATURE_TRANSMISSION
|
|
#pragma shader_feature_local_raytracing _MATERIAL_FEATURE_TRANSMISSION
|
|
#pragma shader_feature_local_fragment _MATERIAL_FEATURE_ANISOTROPY
|
|
#pragma shader_feature_local_raytracing _MATERIAL_FEATURE_ANISOTROPY
|
|
#pragma shader_feature_local_fragment _MATERIAL_FEATURE_IRIDESCENCE
|
|
#pragma shader_feature_local_raytracing _MATERIAL_FEATURE_IRIDESCENCE
|
|
#pragma shader_feature_local_fragment _MATERIAL_FEATURE_SPECULAR_COLOR
|
|
#pragma shader_feature_local_raytracing _MATERIAL_FEATURE_SPECULAR_COLOR
|
|
#pragma shader_feature_local_fragment _MATERIAL_FEATURE_COLORED_TRANSMISSION
|
|
#pragma shader_feature_local_raytracing _MATERIAL_FEATURE_COLORED_TRANSMISSION
|
|
// GraphKeywords: <None>
|
|
|
|
// Defines
|
|
#define SHADERPASS SHADERPASS_PATH_TRACING
|
|
#define PUNCTUAL_SHADOW_LOW
|
|
#define DIRECTIONAL_SHADOW_LOW
|
|
#define RAYTRACING_SHADER_GRAPH_DEFAULT
|
|
#define LIGHTLOOP_DISABLE_TILE_AND_CLUSTER 1
|
|
#define PATH_TRACING_CLUSTERED_DECALS 1
|
|
#define HAS_LIGHTLOOP 1
|
|
#define SUPPORT_GLOBAL_MIP_BIAS 1
|
|
#define SUPPORT_GLOBAL_MIP_BIAS 1
|
|
#define SUPPORT_GLOBAL_MIP_BIAS 1
|
|
#define SUPPORT_GLOBAL_MIP_BIAS 1
|
|
#define SUPPORT_GLOBAL_MIP_BIAS 1
|
|
#define SUPPORT_GLOBAL_MIP_BIAS 1
|
|
#define SUPPORT_GLOBAL_MIP_BIAS 1
|
|
#define SUPPORT_GLOBAL_MIP_BIAS 1
|
|
#define SUPPORT_GLOBAL_MIP_BIAS 1
|
|
|
|
// For custom interpolators to inject a substruct definition before FragInputs definition,
|
|
// allowing for FragInputs to capture CI's intended for ShaderGraph's SDI.
|
|
/* WARNING: $splice Could not find named fragment 'CustomInterpolatorPreInclude' */
|
|
|
|
|
|
// TODO: Merge FragInputsVFX substruct with CustomInterpolators.
|
|
#ifdef HAVE_VFX_MODIFICATION
|
|
struct FragInputsVFX
|
|
{
|
|
/* WARNING: $splice Could not find named fragment 'FragInputsVFX' */
|
|
};
|
|
#endif
|
|
|
|
#include "Packages/com.unity.render-pipelines.core/ShaderLibrary/Common.hlsl"
|
|
#include "Packages/com.unity.render-pipelines.core/ShaderLibrary/GeometricTools.hlsl" // Required by Tessellation.hlsl
|
|
#include "Packages/com.unity.render-pipelines.core/ShaderLibrary/Tessellation.hlsl"
|
|
#include "Packages/com.unity.render-pipelines.core/ShaderLibrary/Texture.hlsl"
|
|
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/ShaderLibrary/ShaderVariables.hlsl"
|
|
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/RenderPipeline/ShaderPass/ShaderPass.cs.hlsl"
|
|
#include "Packages/com.unity.render-pipelines.core/ShaderLibrary/TextureStack.hlsl" // Required to be include before we include properties as it define DECLARE_STACK_CB
|
|
#include "Packages/com.unity.render-pipelines.core/ShaderLibrary/DebugMipmapStreamingMacros.hlsl" // Required before including properties as it defines UNITY_TEXTURE_STREAMING_DEBUG_VARS
|
|
// Always include Shader Graph version
|
|
// Always include last to avoid double macros
|
|
#include "Packages/com.unity.shadergraph/ShaderGraphLibrary/Functions.hlsl" // Need to be here for Gradient struct definition
|
|
|
|
// --------------------------------------------------
|
|
// Defines
|
|
|
|
// Attribute
|
|
#define ATTRIBUTES_NEED_NORMAL
|
|
#define ATTRIBUTES_NEED_TANGENT
|
|
#define ATTRIBUTES_NEED_TEXCOORD0
|
|
#define ATTRIBUTES_NEED_TEXCOORD1
|
|
#define ATTRIBUTES_NEED_TEXCOORD2
|
|
#define ATTRIBUTES_NEED_COLOR
|
|
#define VARYINGS_NEED_POSITION_WS
|
|
#define VARYINGS_NEED_TANGENT_TO_WORLD
|
|
#define VARYINGS_NEED_TEXCOORD0
|
|
#define VARYINGS_NEED_TEXCOORD1
|
|
#define VARYINGS_NEED_TEXCOORD2
|
|
#define VARYINGS_NEED_COLOR
|
|
|
|
|
|
//Strip down the FragInputs.hlsl (on graphics), so we can only optimize the interpolators we use.
|
|
//if by accident something requests contents of FragInputs.hlsl, it will be caught as a compiler error
|
|
//Frag inputs stripping is only enabled when FRAG_INPUTS_ENABLE_STRIPPING is set
|
|
#if !defined(SHADER_STAGE_RAY_TRACING) && SHADERPASS != SHADERPASS_RAYTRACING_GBUFFER && SHADERPASS != SHADERPASS_FULL_SCREEN_DEBUG
|
|
#define FRAG_INPUTS_ENABLE_STRIPPING
|
|
#endif
|
|
#define FRAG_INPUTS_USE_TEXCOORD0
|
|
#define FRAG_INPUTS_USE_TEXCOORD1
|
|
#define FRAG_INPUTS_USE_TEXCOORD2
|
|
|
|
|
|
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/RenderPipeline/ShaderPass/FragInputs.hlsl"
|
|
|
|
|
|
|
|
|
|
// Following two define are a workaround introduce in 10.1.x for RaytracingQualityNode
|
|
// The ShaderGraph don't support correctly migration of this node as it serialize all the node data
|
|
// in the json file making it impossible to uprgrade. Until we get a fix, we do a workaround here
|
|
// to still allow us to rename the field and keyword of this node without breaking existing code.
|
|
#ifdef RAYTRACING_SHADER_GRAPH_DEFAULT
|
|
#define RAYTRACING_SHADER_GRAPH_HIGH
|
|
#endif
|
|
|
|
#ifdef RAYTRACING_SHADER_GRAPH_RAYTRACED
|
|
#define RAYTRACING_SHADER_GRAPH_LOW
|
|
#endif
|
|
// end
|
|
|
|
#ifndef SHADER_UNLIT
|
|
// We need isFrontFace when using double sided - it is not required for unlit as in case of unlit double sided only drive the cullmode
|
|
// VARYINGS_NEED_CULLFACE can be define by VaryingsMeshToPS.FaceSign input if a IsFrontFace Node is included in the shader graph.
|
|
#if defined(_DOUBLESIDED_ON) && !defined(VARYINGS_NEED_CULLFACE)
|
|
#define VARYINGS_NEED_CULLFACE
|
|
#endif
|
|
#endif
|
|
|
|
// Specific Material Define
|
|
#define _AMBIENT_OCCLUSION 1
|
|
#define _SPECULAR_OCCLUSION_FROM_AO 1
|
|
#define _ENERGY_CONSERVING_SPECULAR 1
|
|
|
|
#if _MATERIAL_FEATURE_COLORED_TRANSMISSION
|
|
// Colored Transmission doesn't support clear coat
|
|
#undef _MATERIAL_FEATURE_CLEAR_COAT
|
|
#endif
|
|
|
|
// If we use subsurface scattering, enable output split lighting (for forward pass)
|
|
#if defined(_MATERIAL_FEATURE_SUBSURFACE_SCATTERING) && !defined(_SURFACE_TYPE_TRANSPARENT)
|
|
#define OUTPUT_SPLIT_LIGHTING
|
|
#endif
|
|
|
|
// This shader support recursive rendering for raytracing
|
|
#define HAVE_RECURSIVE_RENDERING
|
|
|
|
// In Path Tracing, For all single-sided, refractive materials, we want to force a thin refraction model
|
|
#if (SHADERPASS == SHADERPASS_PATH_TRACING) && !defined(_DOUBLESIDED_ON) && (defined(_REFRACTION_PLANE) || defined(_REFRACTION_SPHERE))
|
|
#undef _REFRACTION_PLANE
|
|
#undef _REFRACTION_SPHERE
|
|
#define _REFRACTION_THIN
|
|
#endif
|
|
// Caution: we can use the define SHADER_UNLIT onlit after the above Material include as it is the Unlit template who define it
|
|
|
|
// To handle SSR on transparent correctly with a possibility to enable/disable it per framesettings
|
|
// we should have a code like this:
|
|
// if !defined(_DISABLE_SSR_TRANSPARENT)
|
|
// pragma multi_compile _ WRITE_NORMAL_BUFFER
|
|
// endif
|
|
// i.e we enable the multicompile only if we can receive SSR or not, and then C# code drive
|
|
// it based on if SSR transparent in frame settings and not (and stripper can strip it).
|
|
// this is currently not possible with our current preprocessor as _DISABLE_SSR_TRANSPARENT is a keyword not a define
|
|
// so instead we used this and chose to pay the extra cost of normal write even if SSR transaprent is disabled.
|
|
// Ideally the shader graph generator should handle it but condition below can't be handle correctly for now.
|
|
#if SHADERPASS == SHADERPASS_TRANSPARENT_DEPTH_PREPASS
|
|
#if !defined(_DISABLE_SSR_TRANSPARENT) && !defined(SHADER_UNLIT)
|
|
#define WRITE_NORMAL_BUFFER
|
|
#endif
|
|
#endif
|
|
|
|
// See Lit.shader
|
|
#if SHADERPASS == SHADERPASS_MOTION_VECTORS && defined(WRITE_DECAL_BUFFER_AND_RENDERING_LAYER)
|
|
#define WRITE_DECAL_BUFFER
|
|
#endif
|
|
|
|
#ifndef DEBUG_DISPLAY
|
|
// In case of opaque we don't want to perform the alpha test, it is done in depth prepass and we use depth equal for ztest (setup from UI)
|
|
// Don't do it with debug display mode as it is possible there is no depth prepass in this case
|
|
#if !defined(_SURFACE_TYPE_TRANSPARENT)
|
|
#if SHADERPASS == SHADERPASS_FORWARD
|
|
#define SHADERPASS_FORWARD_BYPASS_ALPHA_TEST
|
|
#elif SHADERPASS == SHADERPASS_GBUFFER
|
|
#define SHADERPASS_GBUFFER_BYPASS_ALPHA_TEST
|
|
#endif
|
|
#endif
|
|
#endif
|
|
|
|
// Define _DEFERRED_CAPABLE_MATERIAL for shader capable to run in deferred pass
|
|
#if defined(SHADER_LIT) && !defined(_SURFACE_TYPE_TRANSPARENT)
|
|
#define _DEFERRED_CAPABLE_MATERIAL
|
|
#endif
|
|
|
|
// Translate transparent motion vector define
|
|
#if (defined(_TRANSPARENT_WRITES_MOTION_VEC) || defined(_TRANSPARENT_REFRACTIVE_SORT)) && defined(_SURFACE_TYPE_TRANSPARENT)
|
|
#define _WRITE_TRANSPARENT_MOTION_VECTOR
|
|
#endif
|
|
|
|
// -- Graph Properties
|
|
CBUFFER_START(UnityPerMaterial)
|
|
float4 _BaseColor;
|
|
float4 _BaseColorMap_TexelSize;
|
|
float4 _BaseTilingOffset;
|
|
float _BaseTriplanarThreshold;
|
|
float4 _BaseNormalMap_TexelSize;
|
|
float _BaseNormalScale;
|
|
float4 _BaseMaskMap_TexelSize;
|
|
float _BaseMetallic;
|
|
float _BaseAORemapMin;
|
|
float _BaseAORemapMax;
|
|
float _BaseSmoothnessRemapMin;
|
|
float _BaseSmoothnessRemapMax;
|
|
float _USEDYNAMICCOVERTSTATICMASKF;
|
|
float4 _CoverMaskA_TexelSize;
|
|
float _CoverMaskPower;
|
|
float _Cover_Amount;
|
|
float _Cover_Amount_Grow_Speed;
|
|
float3 _CoverDirection;
|
|
float _Cover_Max_Angle;
|
|
float _Cover_Min_Height;
|
|
float _Cover_Min_Height_Blending;
|
|
float4 _CoverBaseColor;
|
|
float4 _CoverBaseColorMap_TexelSize;
|
|
float4 _CoverTilingOffset;
|
|
float _CoverTriplanarThreshold;
|
|
float4 _CoverNormalMap_TexelSize;
|
|
float _CoverNormalScale;
|
|
float _CoverNormalBlendHardness;
|
|
float _CoverHeightMapMin;
|
|
float _CoverHeightMapMax;
|
|
float _CoverHeightMapOffset;
|
|
float _CoverHardness;
|
|
float4 _CoverMaskMap_TexelSize;
|
|
float _CoverMetallic;
|
|
float _CoverAORemapMin;
|
|
float _CoverAORemapMax;
|
|
float _CoverSmoothnessRemapMin;
|
|
float _CoverSmoothnessRemapMax;
|
|
float4 _ShapeNormalMap_TexelSize;
|
|
float _shapeNormalScale;
|
|
float _CovershapeNormalScale;
|
|
float4 _ShapeAO_TexelSize;
|
|
float _ShapeAORemapMin;
|
|
float _ShapeAORemapMax;
|
|
float _CoverShapeAORemapMin;
|
|
float _CoverShapeAORemapMax;
|
|
float4 _DetailMap_TexelSize;
|
|
float4 _DetailTilingOffset;
|
|
float _DetailAlbedoScale;
|
|
float _DetailNormalScale;
|
|
float _DetailSmoothnessScale;
|
|
float _DetailCoverAlbedoScale;
|
|
float _DetailCoverNormalScale;
|
|
float _DetailCoverSmoothnessScale;
|
|
float _CoverMaskRCurvature;
|
|
float _BaseBrightnessCurvMultply;
|
|
float _BaseBrightnessCurvPower;
|
|
float _BaseDarknessCurvMultply;
|
|
float _BaseDarknessCurvPower;
|
|
float _CoverBrightnessCurvMultply;
|
|
float _CoverBrightnessCurvPower;
|
|
float _CoverDarknessCurvMultply;
|
|
float _CoverDarknessCurvPower;
|
|
float4 _WetColor;
|
|
float _WetSmoothness;
|
|
float4 _EmissionColor;
|
|
float _UseShadowThreshold;
|
|
float4 _DoubleSidedConstants;
|
|
UNITY_TEXTURE_STREAMING_DEBUG_VARS;
|
|
float _BlendMode;
|
|
float _EnableBlendModePreserveSpecularLighting;
|
|
float _RayTracing;
|
|
float _RefractionModel;
|
|
float _MaterialID;
|
|
float _MaterialTypeMask;
|
|
CBUFFER_END
|
|
|
|
|
|
// Object and Global properties
|
|
SAMPLER(SamplerState_Linear_Repeat);
|
|
SAMPLER(SamplerState_Linear_Repeat_Aniso8);
|
|
TEXTURE2D(_BaseColorMap);
|
|
SAMPLER(sampler_BaseColorMap);
|
|
TEXTURE2D(_BaseNormalMap);
|
|
SAMPLER(sampler_BaseNormalMap);
|
|
TEXTURE2D(_BaseMaskMap);
|
|
SAMPLER(sampler_BaseMaskMap);
|
|
TEXTURE2D(_CoverMaskA);
|
|
SAMPLER(sampler_CoverMaskA);
|
|
TEXTURE2D(_CoverBaseColorMap);
|
|
SAMPLER(sampler_CoverBaseColorMap);
|
|
TEXTURE2D(_CoverNormalMap);
|
|
SAMPLER(sampler_CoverNormalMap);
|
|
TEXTURE2D(_CoverMaskMap);
|
|
SAMPLER(sampler_CoverMaskMap);
|
|
TEXTURE2D(_ShapeNormalMap);
|
|
SAMPLER(sampler_ShapeNormalMap);
|
|
TEXTURE2D(_ShapeAO);
|
|
SAMPLER(sampler_ShapeAO);
|
|
TEXTURE2D(_DetailMap);
|
|
SAMPLER(sampler_DetailMap);
|
|
|
|
// -- Property used by ScenePickingPass
|
|
#ifdef SCENEPICKINGPASS
|
|
float4 _SelectionID;
|
|
#endif
|
|
|
|
// -- Properties used by SceneSelectionPass
|
|
#ifdef SCENESELECTIONPASS
|
|
int _ObjectId;
|
|
int _PassValue;
|
|
#endif
|
|
|
|
// Includes
|
|
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/RenderPipeline/Raytracing/Shaders/RaytracingMacros.hlsl"
|
|
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/RenderPipeline/Raytracing/Shaders/ShaderVariablesRaytracing.hlsl"
|
|
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/Material/Material.hlsl"
|
|
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/RenderPipeline/Raytracing/Shaders/ShaderVariablesRaytracingLightLoop.hlsl"
|
|
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/RenderPipeline/Raytracing/Shaders/RaytracingIntersection.hlsl"
|
|
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/Lighting/Lighting.hlsl"
|
|
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/Lighting/LightLoop/LightLoopDef.hlsl"
|
|
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/RenderPipeline/Raytracing/Shaders/RayTracingLightCluster.hlsl"
|
|
#include "Packages/com.unity.render-pipelines.core/ShaderLibrary/NormalSurfaceGradient.hlsl"
|
|
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/Material/Lit/Lit.hlsl"
|
|
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/Material/Lit/LitPathTracing.hlsl"
|
|
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/Material/BuiltinUtilities.hlsl"
|
|
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/Material/MaterialUtilities.hlsl"
|
|
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/RenderPipeline/Raytracing/Shaders/RayTracingCommon.hlsl"
|
|
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/Material/Decal/DecalUtilities.hlsl"
|
|
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/Material/Lit/LitDecalData.hlsl"
|
|
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/ShaderLibrary/ShaderGraphFunctions.hlsl"
|
|
// GraphIncludes: <None>
|
|
|
|
// --------------------------------------------------
|
|
// Structs and Packing
|
|
|
|
struct SurfaceDescriptionInputs
|
|
{
|
|
float3 WorldSpaceNormal;
|
|
float3 TangentSpaceNormal;
|
|
float3 WorldSpaceTangent;
|
|
float3 WorldSpaceBiTangent;
|
|
float3 AbsoluteWorldSpacePosition;
|
|
float4 uv0;
|
|
float4 VertexColor;
|
|
};
|
|
|
|
//Interpolator Packs: <None>
|
|
|
|
// --------------------------------------------------
|
|
// Graph
|
|
|
|
|
|
// Graph Functions
|
|
|
|
void Unity_Divide_float4(float4 A, float4 B, out float4 Out)
|
|
{
|
|
Out = A / B;
|
|
}
|
|
|
|
void Unity_Combine_float(float R, float G, float B, float A, out float4 RGBA, out float3 RGB, out float2 RG)
|
|
{
|
|
RGBA = float4(R, G, B, A);
|
|
RGB = float3(R, G, B);
|
|
RG = float2(R, G);
|
|
}
|
|
|
|
void Unity_Multiply_float4_float4(float4 A, float4 B, out float4 Out)
|
|
{
|
|
Out = A * B;
|
|
}
|
|
|
|
void Unity_Sign_float3(float3 In, out float3 Out)
|
|
{
|
|
Out = sign(In);
|
|
}
|
|
|
|
void Unity_Multiply_float2_float2(float2 A, float2 B, out float2 Out)
|
|
{
|
|
Out = A * B;
|
|
}
|
|
|
|
void Unity_Absolute_float3(float3 In, out float3 Out)
|
|
{
|
|
Out = abs(In);
|
|
}
|
|
|
|
void Unity_Power_float3(float3 A, float3 B, out float3 Out)
|
|
{
|
|
Out = pow(A, B);
|
|
}
|
|
|
|
void Unity_Multiply_float3_float3(float3 A, float3 B, out float3 Out)
|
|
{
|
|
Out = A * B;
|
|
}
|
|
|
|
void Unity_Multiply_float_float(float A, float B, out float Out)
|
|
{
|
|
Out = A * B;
|
|
}
|
|
|
|
void Unity_Add_float4(float4 A, float4 B, out float4 Out)
|
|
{
|
|
Out = A + B;
|
|
}
|
|
|
|
void Unity_Add_float(float A, float B, out float Out)
|
|
{
|
|
Out = A + B;
|
|
}
|
|
|
|
struct Bindings_TriplanarNM_bc609ed95f52591469ab35dbfe0efcea_float
|
|
{
|
|
float3 WorldSpaceNormal;
|
|
float3 AbsoluteWorldSpacePosition;
|
|
};
|
|
|
|
void SG_TriplanarNM_bc609ed95f52591469ab35dbfe0efcea_float(UnityTexture2D Texture2D_80A3D28F, float Vector1_41461AC9, float Vector1_E4D1C13A, UnitySamplerState _SamplerState, Bindings_TriplanarNM_bc609ed95f52591469ab35dbfe0efcea_float IN, out float4 XYZ_1, out float4 XZ_2, out float4 YZ_3, out float4 XY_4)
|
|
{
|
|
UnityTexture2D _Property_3e01b4d2fc68d48ba3acbba9d5881e59_Out_0_Texture2D = Texture2D_80A3D28F;
|
|
float _Split_89ed63cb625cb3878c183d0b71c03400_R_1_Float = IN.AbsoluteWorldSpacePosition[0];
|
|
float _Split_89ed63cb625cb3878c183d0b71c03400_G_2_Float = IN.AbsoluteWorldSpacePosition[1];
|
|
float _Split_89ed63cb625cb3878c183d0b71c03400_B_3_Float = IN.AbsoluteWorldSpacePosition[2];
|
|
float _Split_89ed63cb625cb3878c183d0b71c03400_A_4_Float = 0;
|
|
float4 _Combine_cf2d04ff119ad88493f6460431765cbb_RGBA_4_Vector4;
|
|
float3 _Combine_cf2d04ff119ad88493f6460431765cbb_RGB_5_Vector3;
|
|
float2 _Combine_cf2d04ff119ad88493f6460431765cbb_RG_6_Vector2;
|
|
Unity_Combine_float(_Split_89ed63cb625cb3878c183d0b71c03400_R_1_Float, _Split_89ed63cb625cb3878c183d0b71c03400_B_3_Float, float(0), float(0), _Combine_cf2d04ff119ad88493f6460431765cbb_RGBA_4_Vector4, _Combine_cf2d04ff119ad88493f6460431765cbb_RGB_5_Vector3, _Combine_cf2d04ff119ad88493f6460431765cbb_RG_6_Vector2);
|
|
float _Property_47988ec10c0c18879d461e00bed806e7_Out_0_Float = Vector1_41461AC9;
|
|
float4 _Multiply_14cec4902d0a00829e4555071a1b8ad1_Out_2_Vector4;
|
|
Unity_Multiply_float4_float4(_Combine_cf2d04ff119ad88493f6460431765cbb_RGBA_4_Vector4, (_Property_47988ec10c0c18879d461e00bed806e7_Out_0_Float.xxxx), _Multiply_14cec4902d0a00829e4555071a1b8ad1_Out_2_Vector4);
|
|
float3 _Sign_b826e0ff2d95ec8cb2b2cbbd7ea2eab6_Out_1_Vector3;
|
|
Unity_Sign_float3(IN.WorldSpaceNormal, _Sign_b826e0ff2d95ec8cb2b2cbbd7ea2eab6_Out_1_Vector3);
|
|
float _Split_742547a7039de986a646d04c157ae549_R_1_Float = _Sign_b826e0ff2d95ec8cb2b2cbbd7ea2eab6_Out_1_Vector3[0];
|
|
float _Split_742547a7039de986a646d04c157ae549_G_2_Float = _Sign_b826e0ff2d95ec8cb2b2cbbd7ea2eab6_Out_1_Vector3[1];
|
|
float _Split_742547a7039de986a646d04c157ae549_B_3_Float = _Sign_b826e0ff2d95ec8cb2b2cbbd7ea2eab6_Out_1_Vector3[2];
|
|
float _Split_742547a7039de986a646d04c157ae549_A_4_Float = 0;
|
|
float2 _Vector2_40a8919e571ec18499de72022c155b38_Out_0_Vector2 = float2(_Split_742547a7039de986a646d04c157ae549_G_2_Float, float(1));
|
|
float2 _Multiply_5fa32af59cdca88389832336b2268bd5_Out_2_Vector2;
|
|
Unity_Multiply_float2_float2((_Multiply_14cec4902d0a00829e4555071a1b8ad1_Out_2_Vector4.xy), _Vector2_40a8919e571ec18499de72022c155b38_Out_0_Vector2, _Multiply_5fa32af59cdca88389832336b2268bd5_Out_2_Vector2);
|
|
UnitySamplerState _Property_544c7fa9dfe54e30a0df9d605340a374_Out_0_SamplerState = _SamplerState;
|
|
float4 _SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_RGBA_0_Vector4 = SAMPLE_TEXTURE2D(_Property_3e01b4d2fc68d48ba3acbba9d5881e59_Out_0_Texture2D.tex, _Property_544c7fa9dfe54e30a0df9d605340a374_Out_0_SamplerState.samplerstate, _Property_3e01b4d2fc68d48ba3acbba9d5881e59_Out_0_Texture2D.GetTransformedUV(_Multiply_5fa32af59cdca88389832336b2268bd5_Out_2_Vector2) );
|
|
float _SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_R_4_Float = _SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_RGBA_0_Vector4.r;
|
|
float _SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_G_5_Float = _SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_RGBA_0_Vector4.g;
|
|
float _SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_B_6_Float = _SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_RGBA_0_Vector4.b;
|
|
float _SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_A_7_Float = _SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_RGBA_0_Vector4.a;
|
|
float3 _Absolute_644b798714827680b39bf5d34f70385f_Out_1_Vector3;
|
|
Unity_Absolute_float3(IN.WorldSpaceNormal, _Absolute_644b798714827680b39bf5d34f70385f_Out_1_Vector3);
|
|
float _Property_adc4c59482221c8aad681c6558728ac9_Out_0_Float = Vector1_E4D1C13A;
|
|
float3 _Power_ee478822a04529849ae8df1636c29fe2_Out_2_Vector3;
|
|
Unity_Power_float3(_Absolute_644b798714827680b39bf5d34f70385f_Out_1_Vector3, (_Property_adc4c59482221c8aad681c6558728ac9_Out_0_Float.xxx), _Power_ee478822a04529849ae8df1636c29fe2_Out_2_Vector3);
|
|
float3 _Multiply_b386a937554d73828e437d126d69608b_Out_2_Vector3;
|
|
Unity_Multiply_float3_float3(_Power_ee478822a04529849ae8df1636c29fe2_Out_2_Vector3, _Power_ee478822a04529849ae8df1636c29fe2_Out_2_Vector3, _Multiply_b386a937554d73828e437d126d69608b_Out_2_Vector3);
|
|
float _Split_ae83014fcbd9f7879a0b91fa66dc9718_R_1_Float = _Multiply_b386a937554d73828e437d126d69608b_Out_2_Vector3[0];
|
|
float _Split_ae83014fcbd9f7879a0b91fa66dc9718_G_2_Float = _Multiply_b386a937554d73828e437d126d69608b_Out_2_Vector3[1];
|
|
float _Split_ae83014fcbd9f7879a0b91fa66dc9718_B_3_Float = _Multiply_b386a937554d73828e437d126d69608b_Out_2_Vector3[2];
|
|
float _Split_ae83014fcbd9f7879a0b91fa66dc9718_A_4_Float = 0;
|
|
float4 _Multiply_2e1040ca9c98d085ace76ee93f094039_Out_2_Vector4;
|
|
Unity_Multiply_float4_float4(_SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_RGBA_0_Vector4, (_Split_ae83014fcbd9f7879a0b91fa66dc9718_G_2_Float.xxxx), _Multiply_2e1040ca9c98d085ace76ee93f094039_Out_2_Vector4);
|
|
float4 _Combine_192c2c4a69be588b90ca005a32e22552_RGBA_4_Vector4;
|
|
float3 _Combine_192c2c4a69be588b90ca005a32e22552_RGB_5_Vector3;
|
|
float2 _Combine_192c2c4a69be588b90ca005a32e22552_RG_6_Vector2;
|
|
Unity_Combine_float(_Split_89ed63cb625cb3878c183d0b71c03400_R_1_Float, _Split_89ed63cb625cb3878c183d0b71c03400_G_2_Float, float(0), float(0), _Combine_192c2c4a69be588b90ca005a32e22552_RGBA_4_Vector4, _Combine_192c2c4a69be588b90ca005a32e22552_RGB_5_Vector3, _Combine_192c2c4a69be588b90ca005a32e22552_RG_6_Vector2);
|
|
float4 _Multiply_138240d0d4846e87b0febabec0d6891b_Out_2_Vector4;
|
|
Unity_Multiply_float4_float4(_Combine_192c2c4a69be588b90ca005a32e22552_RGBA_4_Vector4, (_Property_47988ec10c0c18879d461e00bed806e7_Out_0_Float.xxxx), _Multiply_138240d0d4846e87b0febabec0d6891b_Out_2_Vector4);
|
|
float _Multiply_014402ded5a3988a8c18ba07636ea5a7_Out_2_Float;
|
|
Unity_Multiply_float_float(_Split_742547a7039de986a646d04c157ae549_B_3_Float, -1, _Multiply_014402ded5a3988a8c18ba07636ea5a7_Out_2_Float);
|
|
float2 _Vector2_caa25d55d456a58982bdfc39b1b43f3f_Out_0_Vector2 = float2(_Multiply_014402ded5a3988a8c18ba07636ea5a7_Out_2_Float, float(1));
|
|
float2 _Multiply_a67201b6e1a0a28c98cd9d06e8b09543_Out_2_Vector2;
|
|
Unity_Multiply_float2_float2((_Multiply_138240d0d4846e87b0febabec0d6891b_Out_2_Vector4.xy), _Vector2_caa25d55d456a58982bdfc39b1b43f3f_Out_0_Vector2, _Multiply_a67201b6e1a0a28c98cd9d06e8b09543_Out_2_Vector2);
|
|
float4 _SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_RGBA_0_Vector4 = SAMPLE_TEXTURE2D(_Property_3e01b4d2fc68d48ba3acbba9d5881e59_Out_0_Texture2D.tex, _Property_544c7fa9dfe54e30a0df9d605340a374_Out_0_SamplerState.samplerstate, _Property_3e01b4d2fc68d48ba3acbba9d5881e59_Out_0_Texture2D.GetTransformedUV(_Multiply_a67201b6e1a0a28c98cd9d06e8b09543_Out_2_Vector2) );
|
|
float _SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_R_4_Float = _SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_RGBA_0_Vector4.r;
|
|
float _SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_G_5_Float = _SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_RGBA_0_Vector4.g;
|
|
float _SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_B_6_Float = _SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_RGBA_0_Vector4.b;
|
|
float _SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_A_7_Float = _SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_RGBA_0_Vector4.a;
|
|
float4 _Multiply_7bb4009c92b108849ac6ca92bc1442f2_Out_2_Vector4;
|
|
Unity_Multiply_float4_float4(_SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_RGBA_0_Vector4, (_Split_ae83014fcbd9f7879a0b91fa66dc9718_B_3_Float.xxxx), _Multiply_7bb4009c92b108849ac6ca92bc1442f2_Out_2_Vector4);
|
|
float4 _Combine_1e9ffdba42d6918fb7a4b185f1585d2a_RGBA_4_Vector4;
|
|
float3 _Combine_1e9ffdba42d6918fb7a4b185f1585d2a_RGB_5_Vector3;
|
|
float2 _Combine_1e9ffdba42d6918fb7a4b185f1585d2a_RG_6_Vector2;
|
|
Unity_Combine_float(_Split_89ed63cb625cb3878c183d0b71c03400_B_3_Float, _Split_89ed63cb625cb3878c183d0b71c03400_G_2_Float, float(0), float(0), _Combine_1e9ffdba42d6918fb7a4b185f1585d2a_RGBA_4_Vector4, _Combine_1e9ffdba42d6918fb7a4b185f1585d2a_RGB_5_Vector3, _Combine_1e9ffdba42d6918fb7a4b185f1585d2a_RG_6_Vector2);
|
|
float4 _Multiply_2c0864423b014f8b8af8523f68cbb63c_Out_2_Vector4;
|
|
Unity_Multiply_float4_float4(_Combine_1e9ffdba42d6918fb7a4b185f1585d2a_RGBA_4_Vector4, (_Property_47988ec10c0c18879d461e00bed806e7_Out_0_Float.xxxx), _Multiply_2c0864423b014f8b8af8523f68cbb63c_Out_2_Vector4);
|
|
float2 _Vector2_54dfd40df2fc78809955dd272f2cf0c3_Out_0_Vector2 = float2(_Split_742547a7039de986a646d04c157ae549_R_1_Float, float(1));
|
|
float2 _Multiply_addbd5fcede95f80bbb806c94e49ef63_Out_2_Vector2;
|
|
Unity_Multiply_float2_float2((_Multiply_2c0864423b014f8b8af8523f68cbb63c_Out_2_Vector4.xy), _Vector2_54dfd40df2fc78809955dd272f2cf0c3_Out_0_Vector2, _Multiply_addbd5fcede95f80bbb806c94e49ef63_Out_2_Vector2);
|
|
float4 _SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_RGBA_0_Vector4 = SAMPLE_TEXTURE2D(_Property_3e01b4d2fc68d48ba3acbba9d5881e59_Out_0_Texture2D.tex, _Property_544c7fa9dfe54e30a0df9d605340a374_Out_0_SamplerState.samplerstate, _Property_3e01b4d2fc68d48ba3acbba9d5881e59_Out_0_Texture2D.GetTransformedUV(_Multiply_addbd5fcede95f80bbb806c94e49ef63_Out_2_Vector2) );
|
|
float _SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_R_4_Float = _SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_RGBA_0_Vector4.r;
|
|
float _SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_G_5_Float = _SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_RGBA_0_Vector4.g;
|
|
float _SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_B_6_Float = _SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_RGBA_0_Vector4.b;
|
|
float _SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_A_7_Float = _SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_RGBA_0_Vector4.a;
|
|
float4 _Multiply_77818c22e359fc8cbb7dd20216a8db72_Out_2_Vector4;
|
|
Unity_Multiply_float4_float4(_SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_RGBA_0_Vector4, (_Split_ae83014fcbd9f7879a0b91fa66dc9718_R_1_Float.xxxx), _Multiply_77818c22e359fc8cbb7dd20216a8db72_Out_2_Vector4);
|
|
float4 _Add_769d9ee909c9238dbbf72d2800a2f268_Out_2_Vector4;
|
|
Unity_Add_float4(_Multiply_7bb4009c92b108849ac6ca92bc1442f2_Out_2_Vector4, _Multiply_77818c22e359fc8cbb7dd20216a8db72_Out_2_Vector4, _Add_769d9ee909c9238dbbf72d2800a2f268_Out_2_Vector4);
|
|
float4 _Add_14295f72880e4b87a1baf1ced943ac40_Out_2_Vector4;
|
|
Unity_Add_float4(_Multiply_2e1040ca9c98d085ace76ee93f094039_Out_2_Vector4, _Add_769d9ee909c9238dbbf72d2800a2f268_Out_2_Vector4, _Add_14295f72880e4b87a1baf1ced943ac40_Out_2_Vector4);
|
|
float _Add_e59af300bba2498db32eac1412123447_Out_2_Float;
|
|
Unity_Add_float(_Split_ae83014fcbd9f7879a0b91fa66dc9718_R_1_Float, _Split_ae83014fcbd9f7879a0b91fa66dc9718_G_2_Float, _Add_e59af300bba2498db32eac1412123447_Out_2_Float);
|
|
float _Add_e855069f047fae8ea9027d56acb61e56_Out_2_Float;
|
|
Unity_Add_float(_Add_e59af300bba2498db32eac1412123447_Out_2_Float, _Split_ae83014fcbd9f7879a0b91fa66dc9718_B_3_Float, _Add_e855069f047fae8ea9027d56acb61e56_Out_2_Float);
|
|
float4 _Divide_91ae4b94f1d9b78e99d0472293b8098c_Out_2_Vector4;
|
|
Unity_Divide_float4(_Add_14295f72880e4b87a1baf1ced943ac40_Out_2_Vector4, (_Add_e855069f047fae8ea9027d56acb61e56_Out_2_Float.xxxx), _Divide_91ae4b94f1d9b78e99d0472293b8098c_Out_2_Vector4);
|
|
XYZ_1 = _Divide_91ae4b94f1d9b78e99d0472293b8098c_Out_2_Vector4;
|
|
XZ_2 = _SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_RGBA_0_Vector4;
|
|
YZ_3 = _SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_RGBA_0_Vector4;
|
|
XY_4 = _SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_RGBA_0_Vector4;
|
|
}
|
|
|
|
void Unity_Clamp_float(float In, float Min, float Max, out float Out)
|
|
{
|
|
Out = clamp(In, Min, Max);
|
|
}
|
|
|
|
void Unity_Absolute_float(float In, out float Out)
|
|
{
|
|
Out = abs(In);
|
|
}
|
|
|
|
void Unity_Power_float(float A, float B, out float Out)
|
|
{
|
|
Out = pow(A, B);
|
|
}
|
|
|
|
void Unity_Clamp_float4(float4 In, float4 Min, float4 Max, out float4 Out)
|
|
{
|
|
Out = clamp(In, Min, Max);
|
|
}
|
|
|
|
void Unity_Branch_float4(float Predicate, float4 True, float4 False, out float4 Out)
|
|
{
|
|
Out = Predicate ? True : False;
|
|
}
|
|
|
|
void Unity_TilingAndOffset_float(float2 UV, float2 Tiling, float2 Offset, out float2 Out)
|
|
{
|
|
Out = UV * Tiling + Offset;
|
|
}
|
|
|
|
void Unity_Saturate_float(float In, out float Out)
|
|
{
|
|
Out = saturate(In);
|
|
}
|
|
|
|
void Unity_SquareRoot_float4(float4 In, out float4 Out)
|
|
{
|
|
Out = sqrt(In);
|
|
}
|
|
|
|
void Unity_Sign_float(float In, out float Out)
|
|
{
|
|
Out = sign(In);
|
|
}
|
|
|
|
void Unity_Ceiling_float(float In, out float Out)
|
|
{
|
|
Out = ceil(In);
|
|
}
|
|
|
|
void Unity_Lerp_float4(float4 A, float4 B, float4 T, out float4 Out)
|
|
{
|
|
Out = lerp(A, B, T);
|
|
}
|
|
|
|
struct Bindings_BlendOverlayBaseColor_acdb3dfca72bd6b42bbc35f4613331a2_float
|
|
{
|
|
};
|
|
|
|
void SG_BlendOverlayBaseColor_acdb3dfca72bd6b42bbc35f4613331a2_float(float4 Color_9AA111D3, float Vector1_FBE622A2, float Vector1_8C15C351, Bindings_BlendOverlayBaseColor_acdb3dfca72bd6b42bbc35f4613331a2_float IN, out float3 OutVector4_1)
|
|
{
|
|
float4 _Property_012510d774fb7f8b860f5270dca4500f_Out_0_Vector4 = Color_9AA111D3;
|
|
float4 _SquareRoot_c2c57d0223a9538aa9240890c3cacb0c_Out_1_Vector4;
|
|
Unity_SquareRoot_float4(_Property_012510d774fb7f8b860f5270dca4500f_Out_0_Vector4, _SquareRoot_c2c57d0223a9538aa9240890c3cacb0c_Out_1_Vector4);
|
|
float _Property_a00e29241d12f983b30177515b367ec9_Out_0_Float = Vector1_FBE622A2;
|
|
float _Sign_343a45ede7349283a681c6bd9998fd8e_Out_1_Float;
|
|
Unity_Sign_float(_Property_a00e29241d12f983b30177515b367ec9_Out_0_Float, _Sign_343a45ede7349283a681c6bd9998fd8e_Out_1_Float);
|
|
float _Add_681019b8f5d3d68bb482d419c9fc61a9_Out_2_Float;
|
|
Unity_Add_float(_Sign_343a45ede7349283a681c6bd9998fd8e_Out_1_Float, float(1), _Add_681019b8f5d3d68bb482d419c9fc61a9_Out_2_Float);
|
|
float _Multiply_e8f4cb722712a880ac0db6c7461427f7_Out_2_Float;
|
|
Unity_Multiply_float_float(_Add_681019b8f5d3d68bb482d419c9fc61a9_Out_2_Float, 0.5, _Multiply_e8f4cb722712a880ac0db6c7461427f7_Out_2_Float);
|
|
float _Ceiling_95ad15988aa9b98184875fa754feae01_Out_1_Float;
|
|
Unity_Ceiling_float(_Multiply_e8f4cb722712a880ac0db6c7461427f7_Out_2_Float, _Ceiling_95ad15988aa9b98184875fa754feae01_Out_1_Float);
|
|
float _Property_2db1c747a05ee284a8b00076062f91a4_Out_0_Float = Vector1_8C15C351;
|
|
float _Multiply_9564ecda5193bc8286d9ff771c9226cd_Out_2_Float;
|
|
Unity_Multiply_float_float(_Property_2db1c747a05ee284a8b00076062f91a4_Out_0_Float, _Property_2db1c747a05ee284a8b00076062f91a4_Out_0_Float, _Multiply_9564ecda5193bc8286d9ff771c9226cd_Out_2_Float);
|
|
float4 _Lerp_b3cdb01fc3c5b988ac9b184943bf7c01_Out_3_Vector4;
|
|
Unity_Lerp_float4(_SquareRoot_c2c57d0223a9538aa9240890c3cacb0c_Out_1_Vector4, (_Ceiling_95ad15988aa9b98184875fa754feae01_Out_1_Float.xxxx), (_Multiply_9564ecda5193bc8286d9ff771c9226cd_Out_2_Float.xxxx), _Lerp_b3cdb01fc3c5b988ac9b184943bf7c01_Out_3_Vector4);
|
|
float4 _Multiply_39d1daff98488f8ea2cd794ad4f20926_Out_2_Vector4;
|
|
Unity_Multiply_float4_float4(_Lerp_b3cdb01fc3c5b988ac9b184943bf7c01_Out_3_Vector4, _Lerp_b3cdb01fc3c5b988ac9b184943bf7c01_Out_3_Vector4, _Multiply_39d1daff98488f8ea2cd794ad4f20926_Out_2_Vector4);
|
|
OutVector4_1 = (_Multiply_39d1daff98488f8ea2cd794ad4f20926_Out_2_Vector4.xyz);
|
|
}
|
|
|
|
void Unity_Add_float2(float2 A, float2 B, out float2 Out)
|
|
{
|
|
Out = A + B;
|
|
}
|
|
|
|
void Unity_DotProduct_float2(float2 A, float2 B, out float Out)
|
|
{
|
|
Out = dot(A, B);
|
|
}
|
|
|
|
void Unity_OneMinus_float(float In, out float Out)
|
|
{
|
|
Out = 1 - In;
|
|
}
|
|
|
|
void Unity_SquareRoot_float(float In, out float Out)
|
|
{
|
|
Out = sqrt(In);
|
|
}
|
|
|
|
void Unity_Add_float3(float3 A, float3 B, out float3 Out)
|
|
{
|
|
Out = A + B;
|
|
}
|
|
|
|
void Unity_Divide_float3(float3 A, float3 B, out float3 Out)
|
|
{
|
|
Out = A / B;
|
|
}
|
|
|
|
void Unity_Normalize_float3(float3 In, out float3 Out)
|
|
{
|
|
Out = normalize(In);
|
|
}
|
|
|
|
struct Bindings_TriplanarNMn_059da9746584140498cd018db3c76047_float
|
|
{
|
|
float3 WorldSpaceNormal;
|
|
float3 WorldSpaceTangent;
|
|
float3 WorldSpaceBiTangent;
|
|
float3 AbsoluteWorldSpacePosition;
|
|
};
|
|
|
|
void SG_TriplanarNMn_059da9746584140498cd018db3c76047_float(UnityTexture2D Texture2D_80A3D28F, float Vector1_41461AC9, float Vector1_E4D1C13A, UnitySamplerState _SamplerState, Bindings_TriplanarNMn_059da9746584140498cd018db3c76047_float IN, out float4 XYZ_1, out float4 XZ_2, out float4 YZ_3, out float4 XY_4)
|
|
{
|
|
UnityTexture2D _Property_3e01b4d2fc68d48ba3acbba9d5881e59_Out_0_Texture2D = Texture2D_80A3D28F;
|
|
float _Split_89ed63cb625cb3878c183d0b71c03400_R_1_Float = IN.AbsoluteWorldSpacePosition[0];
|
|
float _Split_89ed63cb625cb3878c183d0b71c03400_G_2_Float = IN.AbsoluteWorldSpacePosition[1];
|
|
float _Split_89ed63cb625cb3878c183d0b71c03400_B_3_Float = IN.AbsoluteWorldSpacePosition[2];
|
|
float _Split_89ed63cb625cb3878c183d0b71c03400_A_4_Float = 0;
|
|
float4 _Combine_cf2d04ff119ad88493f6460431765cbb_RGBA_4_Vector4;
|
|
float3 _Combine_cf2d04ff119ad88493f6460431765cbb_RGB_5_Vector3;
|
|
float2 _Combine_cf2d04ff119ad88493f6460431765cbb_RG_6_Vector2;
|
|
Unity_Combine_float(_Split_89ed63cb625cb3878c183d0b71c03400_R_1_Float, _Split_89ed63cb625cb3878c183d0b71c03400_B_3_Float, float(0), float(0), _Combine_cf2d04ff119ad88493f6460431765cbb_RGBA_4_Vector4, _Combine_cf2d04ff119ad88493f6460431765cbb_RGB_5_Vector3, _Combine_cf2d04ff119ad88493f6460431765cbb_RG_6_Vector2);
|
|
float _Property_47988ec10c0c18879d461e00bed806e7_Out_0_Float = Vector1_41461AC9;
|
|
float4 _Multiply_14cec4902d0a00829e4555071a1b8ad1_Out_2_Vector4;
|
|
Unity_Multiply_float4_float4(_Combine_cf2d04ff119ad88493f6460431765cbb_RGBA_4_Vector4, (_Property_47988ec10c0c18879d461e00bed806e7_Out_0_Float.xxxx), _Multiply_14cec4902d0a00829e4555071a1b8ad1_Out_2_Vector4);
|
|
float3 _Sign_3a6ebf59931cf08cb0482e0144ddac24_Out_1_Vector3;
|
|
Unity_Sign_float3(IN.WorldSpaceNormal, _Sign_3a6ebf59931cf08cb0482e0144ddac24_Out_1_Vector3);
|
|
float _Split_6299d4ddcc4c74828aea40a46fdb896e_R_1_Float = _Sign_3a6ebf59931cf08cb0482e0144ddac24_Out_1_Vector3[0];
|
|
float _Split_6299d4ddcc4c74828aea40a46fdb896e_G_2_Float = _Sign_3a6ebf59931cf08cb0482e0144ddac24_Out_1_Vector3[1];
|
|
float _Split_6299d4ddcc4c74828aea40a46fdb896e_B_3_Float = _Sign_3a6ebf59931cf08cb0482e0144ddac24_Out_1_Vector3[2];
|
|
float _Split_6299d4ddcc4c74828aea40a46fdb896e_A_4_Float = 0;
|
|
float2 _Vector2_b76cb1842101e58b9e636d49b075c612_Out_0_Vector2 = float2(_Split_6299d4ddcc4c74828aea40a46fdb896e_G_2_Float, float(1));
|
|
float2 _Multiply_a87753ad90594382bf3a3a95abbadbc8_Out_2_Vector2;
|
|
Unity_Multiply_float2_float2((_Multiply_14cec4902d0a00829e4555071a1b8ad1_Out_2_Vector4.xy), _Vector2_b76cb1842101e58b9e636d49b075c612_Out_0_Vector2, _Multiply_a87753ad90594382bf3a3a95abbadbc8_Out_2_Vector2);
|
|
UnitySamplerState _Property_8a2b8589cd3a42a1879a29c28e4f711f_Out_0_SamplerState = _SamplerState;
|
|
float4 _SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_RGBA_0_Vector4 = SAMPLE_TEXTURE2D(_Property_3e01b4d2fc68d48ba3acbba9d5881e59_Out_0_Texture2D.tex, _Property_8a2b8589cd3a42a1879a29c28e4f711f_Out_0_SamplerState.samplerstate, _Property_3e01b4d2fc68d48ba3acbba9d5881e59_Out_0_Texture2D.GetTransformedUV(_Multiply_a87753ad90594382bf3a3a95abbadbc8_Out_2_Vector2) );
|
|
_SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_RGBA_0_Vector4.rgb = UnpackNormal(_SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_RGBA_0_Vector4);
|
|
float _SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_R_4_Float = _SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_RGBA_0_Vector4.r;
|
|
float _SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_G_5_Float = _SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_RGBA_0_Vector4.g;
|
|
float _SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_B_6_Float = _SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_RGBA_0_Vector4.b;
|
|
float _SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_A_7_Float = _SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_RGBA_0_Vector4.a;
|
|
float2 _Vector2_ad6bd100e273d78fa409a30a77bfa2cc_Out_0_Vector2 = float2(_SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_R_4_Float, _SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_G_5_Float);
|
|
float2 _Multiply_31e8db88ee20c985a9850d1a58f3282b_Out_2_Vector2;
|
|
Unity_Multiply_float2_float2(_Vector2_ad6bd100e273d78fa409a30a77bfa2cc_Out_0_Vector2, _Vector2_b76cb1842101e58b9e636d49b075c612_Out_0_Vector2, _Multiply_31e8db88ee20c985a9850d1a58f3282b_Out_2_Vector2);
|
|
float _Split_5ed44bf2eca0868f81eb18100f49d1fa_R_1_Float = IN.WorldSpaceNormal[0];
|
|
float _Split_5ed44bf2eca0868f81eb18100f49d1fa_G_2_Float = IN.WorldSpaceNormal[1];
|
|
float _Split_5ed44bf2eca0868f81eb18100f49d1fa_B_3_Float = IN.WorldSpaceNormal[2];
|
|
float _Split_5ed44bf2eca0868f81eb18100f49d1fa_A_4_Float = 0;
|
|
float2 _Vector2_70e5837843f28b8b9d64cada3697bd5a_Out_0_Vector2 = float2(_Split_5ed44bf2eca0868f81eb18100f49d1fa_R_1_Float, _Split_5ed44bf2eca0868f81eb18100f49d1fa_B_3_Float);
|
|
float2 _Add_1145b2f896593d80aa864a34e6702562_Out_2_Vector2;
|
|
Unity_Add_float2(_Multiply_31e8db88ee20c985a9850d1a58f3282b_Out_2_Vector2, _Vector2_70e5837843f28b8b9d64cada3697bd5a_Out_0_Vector2, _Add_1145b2f896593d80aa864a34e6702562_Out_2_Vector2);
|
|
float _Split_2bc77ca2d17bd78cb2383770ce50b179_R_1_Float = _Add_1145b2f896593d80aa864a34e6702562_Out_2_Vector2[0];
|
|
float _Split_2bc77ca2d17bd78cb2383770ce50b179_G_2_Float = _Add_1145b2f896593d80aa864a34e6702562_Out_2_Vector2[1];
|
|
float _Split_2bc77ca2d17bd78cb2383770ce50b179_B_3_Float = 0;
|
|
float _Split_2bc77ca2d17bd78cb2383770ce50b179_A_4_Float = 0;
|
|
float _Multiply_e4fe778b81456d819c52bb414cd95968_Out_2_Float;
|
|
Unity_Multiply_float_float(_SampleTexture2D_35ddc0da4b30e48b83ca2d39af2aba2c_B_6_Float, _Split_5ed44bf2eca0868f81eb18100f49d1fa_G_2_Float, _Multiply_e4fe778b81456d819c52bb414cd95968_Out_2_Float);
|
|
float3 _Vector3_08f62c5c01619e849f1a7d85a44531ac_Out_0_Vector3 = float3(_Split_2bc77ca2d17bd78cb2383770ce50b179_R_1_Float, _Multiply_e4fe778b81456d819c52bb414cd95968_Out_2_Float, _Split_2bc77ca2d17bd78cb2383770ce50b179_G_2_Float);
|
|
float3 _Absolute_644b798714827680b39bf5d34f70385f_Out_1_Vector3;
|
|
Unity_Absolute_float3(IN.WorldSpaceNormal, _Absolute_644b798714827680b39bf5d34f70385f_Out_1_Vector3);
|
|
float _Property_adc4c59482221c8aad681c6558728ac9_Out_0_Float = Vector1_E4D1C13A;
|
|
float3 _Power_ee478822a04529849ae8df1636c29fe2_Out_2_Vector3;
|
|
Unity_Power_float3(_Absolute_644b798714827680b39bf5d34f70385f_Out_1_Vector3, (_Property_adc4c59482221c8aad681c6558728ac9_Out_0_Float.xxx), _Power_ee478822a04529849ae8df1636c29fe2_Out_2_Vector3);
|
|
float3 _Multiply_b386a937554d73828e437d126d69608b_Out_2_Vector3;
|
|
Unity_Multiply_float3_float3(_Power_ee478822a04529849ae8df1636c29fe2_Out_2_Vector3, _Power_ee478822a04529849ae8df1636c29fe2_Out_2_Vector3, _Multiply_b386a937554d73828e437d126d69608b_Out_2_Vector3);
|
|
float _Split_ae83014fcbd9f7879a0b91fa66dc9718_R_1_Float = _Multiply_b386a937554d73828e437d126d69608b_Out_2_Vector3[0];
|
|
float _Split_ae83014fcbd9f7879a0b91fa66dc9718_G_2_Float = _Multiply_b386a937554d73828e437d126d69608b_Out_2_Vector3[1];
|
|
float _Split_ae83014fcbd9f7879a0b91fa66dc9718_B_3_Float = _Multiply_b386a937554d73828e437d126d69608b_Out_2_Vector3[2];
|
|
float _Split_ae83014fcbd9f7879a0b91fa66dc9718_A_4_Float = 0;
|
|
float3 _Multiply_2e1040ca9c98d085ace76ee93f094039_Out_2_Vector3;
|
|
Unity_Multiply_float3_float3(_Vector3_08f62c5c01619e849f1a7d85a44531ac_Out_0_Vector3, (_Split_ae83014fcbd9f7879a0b91fa66dc9718_G_2_Float.xxx), _Multiply_2e1040ca9c98d085ace76ee93f094039_Out_2_Vector3);
|
|
float4 _Combine_192c2c4a69be588b90ca005a32e22552_RGBA_4_Vector4;
|
|
float3 _Combine_192c2c4a69be588b90ca005a32e22552_RGB_5_Vector3;
|
|
float2 _Combine_192c2c4a69be588b90ca005a32e22552_RG_6_Vector2;
|
|
Unity_Combine_float(_Split_89ed63cb625cb3878c183d0b71c03400_R_1_Float, _Split_89ed63cb625cb3878c183d0b71c03400_G_2_Float, float(0), float(0), _Combine_192c2c4a69be588b90ca005a32e22552_RGBA_4_Vector4, _Combine_192c2c4a69be588b90ca005a32e22552_RGB_5_Vector3, _Combine_192c2c4a69be588b90ca005a32e22552_RG_6_Vector2);
|
|
float4 _Multiply_138240d0d4846e87b0febabec0d6891b_Out_2_Vector4;
|
|
Unity_Multiply_float4_float4(_Combine_192c2c4a69be588b90ca005a32e22552_RGBA_4_Vector4, (_Property_47988ec10c0c18879d461e00bed806e7_Out_0_Float.xxxx), _Multiply_138240d0d4846e87b0febabec0d6891b_Out_2_Vector4);
|
|
float _Multiply_de711f4a4614bd89a463b53374cf4036_Out_2_Float;
|
|
Unity_Multiply_float_float(_Split_6299d4ddcc4c74828aea40a46fdb896e_B_3_Float, -1, _Multiply_de711f4a4614bd89a463b53374cf4036_Out_2_Float);
|
|
float2 _Vector2_4ed33f0c73b2698fa6f3c1b77fe76808_Out_0_Vector2 = float2(_Multiply_de711f4a4614bd89a463b53374cf4036_Out_2_Float, float(1));
|
|
float2 _Multiply_2af6058cc6ccb88caefd2799bb5941e8_Out_2_Vector2;
|
|
Unity_Multiply_float2_float2((_Multiply_138240d0d4846e87b0febabec0d6891b_Out_2_Vector4.xy), _Vector2_4ed33f0c73b2698fa6f3c1b77fe76808_Out_0_Vector2, _Multiply_2af6058cc6ccb88caefd2799bb5941e8_Out_2_Vector2);
|
|
float4 _SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_RGBA_0_Vector4 = SAMPLE_TEXTURE2D(_Property_3e01b4d2fc68d48ba3acbba9d5881e59_Out_0_Texture2D.tex, _Property_8a2b8589cd3a42a1879a29c28e4f711f_Out_0_SamplerState.samplerstate, _Property_3e01b4d2fc68d48ba3acbba9d5881e59_Out_0_Texture2D.GetTransformedUV(_Multiply_2af6058cc6ccb88caefd2799bb5941e8_Out_2_Vector2) );
|
|
_SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_RGBA_0_Vector4.rgb = UnpackNormal(_SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_RGBA_0_Vector4);
|
|
float _SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_R_4_Float = _SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_RGBA_0_Vector4.r;
|
|
float _SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_G_5_Float = _SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_RGBA_0_Vector4.g;
|
|
float _SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_B_6_Float = _SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_RGBA_0_Vector4.b;
|
|
float _SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_A_7_Float = _SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_RGBA_0_Vector4.a;
|
|
float2 _Vector2_fe9aedd4528c7486ada4abdca0b0944e_Out_0_Vector2 = float2(_SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_R_4_Float, _SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_G_5_Float);
|
|
float2 _Multiply_02b9b4665ad9918d8721bcaddc82f06f_Out_2_Vector2;
|
|
Unity_Multiply_float2_float2(_Vector2_fe9aedd4528c7486ada4abdca0b0944e_Out_0_Vector2, _Vector2_4ed33f0c73b2698fa6f3c1b77fe76808_Out_0_Vector2, _Multiply_02b9b4665ad9918d8721bcaddc82f06f_Out_2_Vector2);
|
|
float2 _Vector2_a74a85274da15181abb63cc5e8df0de1_Out_0_Vector2 = float2(_Split_5ed44bf2eca0868f81eb18100f49d1fa_R_1_Float, _Split_5ed44bf2eca0868f81eb18100f49d1fa_G_2_Float);
|
|
float2 _Add_b227c84042055e8faa1a9fdc69529707_Out_2_Vector2;
|
|
Unity_Add_float2(_Multiply_02b9b4665ad9918d8721bcaddc82f06f_Out_2_Vector2, _Vector2_a74a85274da15181abb63cc5e8df0de1_Out_0_Vector2, _Add_b227c84042055e8faa1a9fdc69529707_Out_2_Vector2);
|
|
float _Split_2cfb9eacd8762483941459cdf28bda97_R_1_Float = _Add_b227c84042055e8faa1a9fdc69529707_Out_2_Vector2[0];
|
|
float _Split_2cfb9eacd8762483941459cdf28bda97_G_2_Float = _Add_b227c84042055e8faa1a9fdc69529707_Out_2_Vector2[1];
|
|
float _Split_2cfb9eacd8762483941459cdf28bda97_B_3_Float = 0;
|
|
float _Split_2cfb9eacd8762483941459cdf28bda97_A_4_Float = 0;
|
|
float _Multiply_1d65ce08ce672087879125f2e13c4004_Out_2_Float;
|
|
Unity_Multiply_float_float(_SampleTexture2D_ba083a478bc22280af2e2cc93ffd5027_B_6_Float, _Split_5ed44bf2eca0868f81eb18100f49d1fa_B_3_Float, _Multiply_1d65ce08ce672087879125f2e13c4004_Out_2_Float);
|
|
float3 _Vector3_ba6cfb4671e8c58f9b41ea1dc23102ca_Out_0_Vector3 = float3(_Split_2cfb9eacd8762483941459cdf28bda97_R_1_Float, _Split_2cfb9eacd8762483941459cdf28bda97_G_2_Float, _Multiply_1d65ce08ce672087879125f2e13c4004_Out_2_Float);
|
|
float3 _Multiply_7bb4009c92b108849ac6ca92bc1442f2_Out_2_Vector3;
|
|
Unity_Multiply_float3_float3(_Vector3_ba6cfb4671e8c58f9b41ea1dc23102ca_Out_0_Vector3, (_Split_ae83014fcbd9f7879a0b91fa66dc9718_B_3_Float.xxx), _Multiply_7bb4009c92b108849ac6ca92bc1442f2_Out_2_Vector3);
|
|
float4 _Combine_1e9ffdba42d6918fb7a4b185f1585d2a_RGBA_4_Vector4;
|
|
float3 _Combine_1e9ffdba42d6918fb7a4b185f1585d2a_RGB_5_Vector3;
|
|
float2 _Combine_1e9ffdba42d6918fb7a4b185f1585d2a_RG_6_Vector2;
|
|
Unity_Combine_float(_Split_89ed63cb625cb3878c183d0b71c03400_B_3_Float, _Split_89ed63cb625cb3878c183d0b71c03400_G_2_Float, float(0), float(0), _Combine_1e9ffdba42d6918fb7a4b185f1585d2a_RGBA_4_Vector4, _Combine_1e9ffdba42d6918fb7a4b185f1585d2a_RGB_5_Vector3, _Combine_1e9ffdba42d6918fb7a4b185f1585d2a_RG_6_Vector2);
|
|
float4 _Multiply_2c0864423b014f8b8af8523f68cbb63c_Out_2_Vector4;
|
|
Unity_Multiply_float4_float4(_Combine_1e9ffdba42d6918fb7a4b185f1585d2a_RGBA_4_Vector4, (_Property_47988ec10c0c18879d461e00bed806e7_Out_0_Float.xxxx), _Multiply_2c0864423b014f8b8af8523f68cbb63c_Out_2_Vector4);
|
|
float2 _Vector2_a1e23e0f921b6484818f009a2b12a5ba_Out_0_Vector2 = float2(_Split_6299d4ddcc4c74828aea40a46fdb896e_R_1_Float, float(1));
|
|
float2 _Multiply_862402885a49f18cb87278ab53bc6744_Out_2_Vector2;
|
|
Unity_Multiply_float2_float2((_Multiply_2c0864423b014f8b8af8523f68cbb63c_Out_2_Vector4.xy), _Vector2_a1e23e0f921b6484818f009a2b12a5ba_Out_0_Vector2, _Multiply_862402885a49f18cb87278ab53bc6744_Out_2_Vector2);
|
|
float4 _SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_RGBA_0_Vector4 = SAMPLE_TEXTURE2D(_Property_3e01b4d2fc68d48ba3acbba9d5881e59_Out_0_Texture2D.tex, _Property_8a2b8589cd3a42a1879a29c28e4f711f_Out_0_SamplerState.samplerstate, _Property_3e01b4d2fc68d48ba3acbba9d5881e59_Out_0_Texture2D.GetTransformedUV(_Multiply_862402885a49f18cb87278ab53bc6744_Out_2_Vector2) );
|
|
_SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_RGBA_0_Vector4.rgb = UnpackNormal(_SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_RGBA_0_Vector4);
|
|
float _SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_R_4_Float = _SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_RGBA_0_Vector4.r;
|
|
float _SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_G_5_Float = _SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_RGBA_0_Vector4.g;
|
|
float _SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_B_6_Float = _SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_RGBA_0_Vector4.b;
|
|
float _SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_A_7_Float = _SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_RGBA_0_Vector4.a;
|
|
float _Multiply_4649b768be76d784a3284bacde795359_Out_2_Float;
|
|
Unity_Multiply_float_float(_SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_B_6_Float, _Split_5ed44bf2eca0868f81eb18100f49d1fa_R_1_Float, _Multiply_4649b768be76d784a3284bacde795359_Out_2_Float);
|
|
float2 _Vector2_819fcd5eb484438eacad1987576d7d67_Out_0_Vector2 = float2(_SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_R_4_Float, _SampleTexture2D_30c5fd692044ae87b9c4029fa46973fa_G_5_Float);
|
|
float2 _Multiply_58530ebb3c6d798b93686a76247bf505_Out_2_Vector2;
|
|
Unity_Multiply_float2_float2(_Vector2_819fcd5eb484438eacad1987576d7d67_Out_0_Vector2, _Vector2_a1e23e0f921b6484818f009a2b12a5ba_Out_0_Vector2, _Multiply_58530ebb3c6d798b93686a76247bf505_Out_2_Vector2);
|
|
float2 _Vector2_e293c112b2f49e88a5fe46dfb1fbeb40_Out_0_Vector2 = float2(_Split_5ed44bf2eca0868f81eb18100f49d1fa_B_3_Float, _Split_5ed44bf2eca0868f81eb18100f49d1fa_G_2_Float);
|
|
float2 _Add_cf00fb232c6e2b8e973ab2f84453f55e_Out_2_Vector2;
|
|
Unity_Add_float2(_Multiply_58530ebb3c6d798b93686a76247bf505_Out_2_Vector2, _Vector2_e293c112b2f49e88a5fe46dfb1fbeb40_Out_0_Vector2, _Add_cf00fb232c6e2b8e973ab2f84453f55e_Out_2_Vector2);
|
|
float _Split_3ea3e61d32bdd78f82c686b75ff3fd9b_R_1_Float = _Add_cf00fb232c6e2b8e973ab2f84453f55e_Out_2_Vector2[0];
|
|
float _Split_3ea3e61d32bdd78f82c686b75ff3fd9b_G_2_Float = _Add_cf00fb232c6e2b8e973ab2f84453f55e_Out_2_Vector2[1];
|
|
float _Split_3ea3e61d32bdd78f82c686b75ff3fd9b_B_3_Float = 0;
|
|
float _Split_3ea3e61d32bdd78f82c686b75ff3fd9b_A_4_Float = 0;
|
|
float3 _Vector3_13a08d5940172a84a78ee3d9b8766833_Out_0_Vector3 = float3(_Multiply_4649b768be76d784a3284bacde795359_Out_2_Float, _Split_3ea3e61d32bdd78f82c686b75ff3fd9b_G_2_Float, _Split_3ea3e61d32bdd78f82c686b75ff3fd9b_R_1_Float);
|
|
float3 _Multiply_77818c22e359fc8cbb7dd20216a8db72_Out_2_Vector3;
|
|
Unity_Multiply_float3_float3(_Vector3_13a08d5940172a84a78ee3d9b8766833_Out_0_Vector3, (_Split_ae83014fcbd9f7879a0b91fa66dc9718_R_1_Float.xxx), _Multiply_77818c22e359fc8cbb7dd20216a8db72_Out_2_Vector3);
|
|
float3 _Add_769d9ee909c9238dbbf72d2800a2f268_Out_2_Vector3;
|
|
Unity_Add_float3(_Multiply_7bb4009c92b108849ac6ca92bc1442f2_Out_2_Vector3, _Multiply_77818c22e359fc8cbb7dd20216a8db72_Out_2_Vector3, _Add_769d9ee909c9238dbbf72d2800a2f268_Out_2_Vector3);
|
|
float3 _Add_14295f72880e4b87a1baf1ced943ac40_Out_2_Vector3;
|
|
Unity_Add_float3(_Multiply_2e1040ca9c98d085ace76ee93f094039_Out_2_Vector3, _Add_769d9ee909c9238dbbf72d2800a2f268_Out_2_Vector3, _Add_14295f72880e4b87a1baf1ced943ac40_Out_2_Vector3);
|
|
float _Add_e59af300bba2498db32eac1412123447_Out_2_Float;
|
|
Unity_Add_float(_Split_ae83014fcbd9f7879a0b91fa66dc9718_R_1_Float, _Split_ae83014fcbd9f7879a0b91fa66dc9718_G_2_Float, _Add_e59af300bba2498db32eac1412123447_Out_2_Float);
|
|
float _Add_e855069f047fae8ea9027d56acb61e56_Out_2_Float;
|
|
Unity_Add_float(_Add_e59af300bba2498db32eac1412123447_Out_2_Float, _Split_ae83014fcbd9f7879a0b91fa66dc9718_B_3_Float, _Add_e855069f047fae8ea9027d56acb61e56_Out_2_Float);
|
|
float3 _Divide_91ae4b94f1d9b78e99d0472293b8098c_Out_2_Vector3;
|
|
Unity_Divide_float3(_Add_14295f72880e4b87a1baf1ced943ac40_Out_2_Vector3, (_Add_e855069f047fae8ea9027d56acb61e56_Out_2_Float.xxx), _Divide_91ae4b94f1d9b78e99d0472293b8098c_Out_2_Vector3);
|
|
float3 _Transform_73eecc0c3689d184a34c8d0f28a58adf_Out_1_Vector3;
|
|
{
|
|
float3x3 tangentTransform = float3x3(IN.WorldSpaceTangent, IN.WorldSpaceBiTangent, IN.WorldSpaceNormal);
|
|
_Transform_73eecc0c3689d184a34c8d0f28a58adf_Out_1_Vector3 = TransformWorldToTangent(_Divide_91ae4b94f1d9b78e99d0472293b8098c_Out_2_Vector3.xyz, tangentTransform, true);
|
|
}
|
|
float3 _Normalize_15ef346824db0a8797631ed8b998e673_Out_1_Vector3;
|
|
Unity_Normalize_float3(_Transform_73eecc0c3689d184a34c8d0f28a58adf_Out_1_Vector3, _Normalize_15ef346824db0a8797631ed8b998e673_Out_1_Vector3);
|
|
XYZ_1 = (float4(_Normalize_15ef346824db0a8797631ed8b998e673_Out_1_Vector3, 1.0));
|
|
XZ_2 = (float4(_Vector3_08f62c5c01619e849f1a7d85a44531ac_Out_0_Vector3, 1.0));
|
|
YZ_3 = (float4(_Vector3_ba6cfb4671e8c58f9b41ea1dc23102ca_Out_0_Vector3, 1.0));
|
|
XY_4 = (float4(_Vector3_13a08d5940172a84a78ee3d9b8766833_Out_0_Vector3, 1.0));
|
|
}
|
|
|
|
void Unity_NormalStrength_float(float3 In, float Strength, out float3 Out)
|
|
{
|
|
Out = float3(In.rg * Strength, lerp(1, In.b, saturate(Strength)));
|
|
}
|
|
|
|
void Unity_NormalBlend_float(float3 A, float3 B, out float3 Out)
|
|
{
|
|
Out = SafeNormalize(float3(A.rg + B.rg, A.b * B.b));
|
|
}
|
|
|
|
void Unity_Subtract_float(float A, float B, out float Out)
|
|
{
|
|
Out = A - B;
|
|
}
|
|
|
|
void Unity_Divide_float(float A, float B, out float Out)
|
|
{
|
|
Out = A / B;
|
|
}
|
|
|
|
void Unity_Lerp_float3(float3 A, float3 B, float3 T, out float3 Out)
|
|
{
|
|
Out = lerp(A, B, T);
|
|
}
|
|
|
|
void Unity_Remap_float(float In, float2 InMinMax, float2 OutMinMax, out float Out)
|
|
{
|
|
Out = OutMinMax.x + (In - InMinMax.x) * (OutMinMax.y - OutMinMax.x) / (InMinMax.y - InMinMax.x);
|
|
}
|
|
|
|
void Unity_Branch_float(float Predicate, float True, float False, out float Out)
|
|
{
|
|
Out = Predicate ? True : False;
|
|
}
|
|
|
|
void Unity_Lerp_float(float A, float B, float T, out float Out)
|
|
{
|
|
Out = lerp(A, B, T);
|
|
}
|
|
|
|
struct Bindings_BlendOverlayDetailSmoothness_06e12138dc89c0040b45a57abe520a1a_float
|
|
{
|
|
};
|
|
|
|
void SG_BlendOverlayDetailSmoothness_06e12138dc89c0040b45a57abe520a1a_float(float Vector1_32317166, float Vector1_FBE622A2, float Vector1_8C15C351, Bindings_BlendOverlayDetailSmoothness_06e12138dc89c0040b45a57abe520a1a_float IN, out float SmoothnessOverlay_1)
|
|
{
|
|
float _Property_728cc50521e9e988ac9cbff4872d5139_Out_0_Float = Vector1_32317166;
|
|
float _Property_a00e29241d12f983b30177515b367ec9_Out_0_Float = Vector1_FBE622A2;
|
|
float _Sign_343a45ede7349283a681c6bd9998fd8e_Out_1_Float;
|
|
Unity_Sign_float(_Property_a00e29241d12f983b30177515b367ec9_Out_0_Float, _Sign_343a45ede7349283a681c6bd9998fd8e_Out_1_Float);
|
|
float _Add_681019b8f5d3d68bb482d419c9fc61a9_Out_2_Float;
|
|
Unity_Add_float(_Sign_343a45ede7349283a681c6bd9998fd8e_Out_1_Float, float(1), _Add_681019b8f5d3d68bb482d419c9fc61a9_Out_2_Float);
|
|
float _Multiply_e8f4cb722712a880ac0db6c7461427f7_Out_2_Float;
|
|
Unity_Multiply_float_float(_Add_681019b8f5d3d68bb482d419c9fc61a9_Out_2_Float, 0.5, _Multiply_e8f4cb722712a880ac0db6c7461427f7_Out_2_Float);
|
|
float _Ceiling_95ad15988aa9b98184875fa754feae01_Out_1_Float;
|
|
Unity_Ceiling_float(_Multiply_e8f4cb722712a880ac0db6c7461427f7_Out_2_Float, _Ceiling_95ad15988aa9b98184875fa754feae01_Out_1_Float);
|
|
float _Property_2db1c747a05ee284a8b00076062f91a4_Out_0_Float = Vector1_8C15C351;
|
|
float _Lerp_b3cdb01fc3c5b988ac9b184943bf7c01_Out_3_Float;
|
|
Unity_Lerp_float(_Property_728cc50521e9e988ac9cbff4872d5139_Out_0_Float, _Ceiling_95ad15988aa9b98184875fa754feae01_Out_1_Float, _Property_2db1c747a05ee284a8b00076062f91a4_Out_0_Float, _Lerp_b3cdb01fc3c5b988ac9b184943bf7c01_Out_3_Float);
|
|
SmoothnessOverlay_1 = _Lerp_b3cdb01fc3c5b988ac9b184943bf7c01_Out_3_Float;
|
|
}
|
|
|
|
void Unity_Minimum_float(float A, float B, out float Out)
|
|
{
|
|
Out = min(A, B);
|
|
};
|
|
|
|
// Graph Vertex
|
|
// GraphVertex: <None>
|
|
|
|
// Graph Pixel
|
|
struct SurfaceDescription
|
|
{
|
|
float3 BaseColor;
|
|
float3 Emission;
|
|
float Alpha;
|
|
float3 BentNormal;
|
|
float Smoothness;
|
|
float Occlusion;
|
|
float3 NormalTS;
|
|
float Metallic;
|
|
};
|
|
|
|
SurfaceDescription SurfaceDescriptionFunction(SurfaceDescriptionInputs IN)
|
|
{
|
|
SurfaceDescription surface = (SurfaceDescription)0;
|
|
float _Property_72a5c604805a7b8ebbfd7acee03656aa_Out_0_Boolean = _CoverMaskRCurvature;
|
|
UnityTexture2D _Property_5f029bbc9f13b7858650859c3b63ebfd_Out_0_Texture2D = UnityBuildTexture2DStructNoScale(_BaseColorMap);
|
|
float4 _Property_a409d5fcafb9f182a4b2aea64204408f_Out_0_Vector4 = _BaseTilingOffset;
|
|
float4 _Divide_6a90cebe78e620828de587523daaa7e6_Out_2_Vector4;
|
|
Unity_Divide_float4(float4(1, 1, 0, 0), _Property_a409d5fcafb9f182a4b2aea64204408f_Out_0_Vector4, _Divide_6a90cebe78e620828de587523daaa7e6_Out_2_Vector4);
|
|
float _Property_3539de8c698c2981bb3c088d4ec52201_Out_0_Float = _BaseTriplanarThreshold;
|
|
Bindings_TriplanarNM_bc609ed95f52591469ab35dbfe0efcea_float _TriplanarNM_92d0433ff3938b8392407d2ab8713ac8;
|
|
_TriplanarNM_92d0433ff3938b8392407d2ab8713ac8.WorldSpaceNormal = IN.WorldSpaceNormal;
|
|
_TriplanarNM_92d0433ff3938b8392407d2ab8713ac8.AbsoluteWorldSpacePosition = IN.AbsoluteWorldSpacePosition;
|
|
float4 _TriplanarNM_92d0433ff3938b8392407d2ab8713ac8_XYZ_1_Vector4;
|
|
float4 _TriplanarNM_92d0433ff3938b8392407d2ab8713ac8_XZ_2_Vector4;
|
|
float4 _TriplanarNM_92d0433ff3938b8392407d2ab8713ac8_YZ_3_Vector4;
|
|
float4 _TriplanarNM_92d0433ff3938b8392407d2ab8713ac8_XY_4_Vector4;
|
|
SG_TriplanarNM_bc609ed95f52591469ab35dbfe0efcea_float(_Property_5f029bbc9f13b7858650859c3b63ebfd_Out_0_Texture2D, (_Divide_6a90cebe78e620828de587523daaa7e6_Out_2_Vector4).x, _Property_3539de8c698c2981bb3c088d4ec52201_Out_0_Float, UnityBuildSamplerStateStruct(SamplerState_Linear_Repeat_Aniso8), _TriplanarNM_92d0433ff3938b8392407d2ab8713ac8, _TriplanarNM_92d0433ff3938b8392407d2ab8713ac8_XYZ_1_Vector4, _TriplanarNM_92d0433ff3938b8392407d2ab8713ac8_XZ_2_Vector4, _TriplanarNM_92d0433ff3938b8392407d2ab8713ac8_YZ_3_Vector4, _TriplanarNM_92d0433ff3938b8392407d2ab8713ac8_XY_4_Vector4);
|
|
float4 _Property_87cd542c2b8c30868ed1d7d38aed8f2b_Out_0_Vector4 = _BaseColor;
|
|
float4 _Multiply_4b2be0b3fe39f385b887e7c82ab41e0b_Out_2_Vector4;
|
|
Unity_Multiply_float4_float4(_TriplanarNM_92d0433ff3938b8392407d2ab8713ac8_XYZ_1_Vector4, _Property_87cd542c2b8c30868ed1d7d38aed8f2b_Out_0_Vector4, _Multiply_4b2be0b3fe39f385b887e7c82ab41e0b_Out_2_Vector4);
|
|
UnityTexture2D _Property_c167aafac28bd98c8411d3e25631fdeb_Out_0_Texture2D = UnityBuildTexture2DStructNoScale(_CoverMaskA);
|
|
float4 _UV_e143f0ebbac8bb8cab3206ab93422dda_Out_0_Vector4 = IN.uv0;
|
|
float4 _SampleTexture2D_32717b1e99785588830ceee116cbe7fc_RGBA_0_Vector4 = SAMPLE_TEXTURE2D(_Property_c167aafac28bd98c8411d3e25631fdeb_Out_0_Texture2D.tex, _Property_c167aafac28bd98c8411d3e25631fdeb_Out_0_Texture2D.samplerstate, _Property_c167aafac28bd98c8411d3e25631fdeb_Out_0_Texture2D.GetTransformedUV((_UV_e143f0ebbac8bb8cab3206ab93422dda_Out_0_Vector4.xy)) );
|
|
float _SampleTexture2D_32717b1e99785588830ceee116cbe7fc_R_4_Float = _SampleTexture2D_32717b1e99785588830ceee116cbe7fc_RGBA_0_Vector4.r;
|
|
float _SampleTexture2D_32717b1e99785588830ceee116cbe7fc_G_5_Float = _SampleTexture2D_32717b1e99785588830ceee116cbe7fc_RGBA_0_Vector4.g;
|
|
float _SampleTexture2D_32717b1e99785588830ceee116cbe7fc_B_6_Float = _SampleTexture2D_32717b1e99785588830ceee116cbe7fc_RGBA_0_Vector4.b;
|
|
float _SampleTexture2D_32717b1e99785588830ceee116cbe7fc_A_7_Float = _SampleTexture2D_32717b1e99785588830ceee116cbe7fc_RGBA_0_Vector4.a;
|
|
float _Multiply_01f97603c3df268380d339564b08db11_Out_2_Float;
|
|
Unity_Multiply_float_float(_SampleTexture2D_32717b1e99785588830ceee116cbe7fc_R_4_Float, 2, _Multiply_01f97603c3df268380d339564b08db11_Out_2_Float);
|
|
float _Property_cad777e9a810198e8076eb2cd76e6817_Out_0_Float = _BaseDarknessCurvMultply;
|
|
float _Multiply_b67c8963c3ba188e85b84ae9bf0dcbf7_Out_2_Float;
|
|
Unity_Multiply_float_float(_Multiply_01f97603c3df268380d339564b08db11_Out_2_Float, _Property_cad777e9a810198e8076eb2cd76e6817_Out_0_Float, _Multiply_b67c8963c3ba188e85b84ae9bf0dcbf7_Out_2_Float);
|
|
float _Clamp_646f55d74b38f18aa983e5d031e0e7c3_Out_3_Float;
|
|
Unity_Clamp_float(_Multiply_b67c8963c3ba188e85b84ae9bf0dcbf7_Out_2_Float, float(0), float(1), _Clamp_646f55d74b38f18aa983e5d031e0e7c3_Out_3_Float);
|
|
float _Absolute_c99e11216fab2488946eb6243d985fdc_Out_1_Float;
|
|
Unity_Absolute_float(_Clamp_646f55d74b38f18aa983e5d031e0e7c3_Out_3_Float, _Absolute_c99e11216fab2488946eb6243d985fdc_Out_1_Float);
|
|
float _Property_f8a9827e6f28d9819188d4775dcf7620_Out_0_Float = _BaseDarknessCurvPower;
|
|
float _Power_1b88303e1ca2f285b344bf6aa0cf05e4_Out_2_Float;
|
|
Unity_Power_float(_Absolute_c99e11216fab2488946eb6243d985fdc_Out_1_Float, _Property_f8a9827e6f28d9819188d4775dcf7620_Out_0_Float, _Power_1b88303e1ca2f285b344bf6aa0cf05e4_Out_2_Float);
|
|
float _Clamp_27887d983dbb5a8bbd2966fbcbd7c126_Out_3_Float;
|
|
Unity_Clamp_float(_Power_1b88303e1ca2f285b344bf6aa0cf05e4_Out_2_Float, float(0), float(1), _Clamp_27887d983dbb5a8bbd2966fbcbd7c126_Out_3_Float);
|
|
float4 _Multiply_59efbfb897b39480ad44be129db72018_Out_2_Vector4;
|
|
Unity_Multiply_float4_float4(_Multiply_4b2be0b3fe39f385b887e7c82ab41e0b_Out_2_Vector4, (_Clamp_27887d983dbb5a8bbd2966fbcbd7c126_Out_3_Float.xxxx), _Multiply_59efbfb897b39480ad44be129db72018_Out_2_Vector4);
|
|
float4 _Clamp_841e38951a68f286955c4755e78c610b_Out_3_Vector4;
|
|
Unity_Clamp_float4(_Multiply_59efbfb897b39480ad44be129db72018_Out_2_Vector4, float4(0, 0, 0, 0), float4(1, 1, 1, 1), _Clamp_841e38951a68f286955c4755e78c610b_Out_3_Vector4);
|
|
float _Add_d7ea4a88c4af4886b1e567ddd2b963f9_Out_2_Float;
|
|
Unity_Add_float(_Multiply_01f97603c3df268380d339564b08db11_Out_2_Float, float(-1), _Add_d7ea4a88c4af4886b1e567ddd2b963f9_Out_2_Float);
|
|
float _Clamp_1a02c4bf5903c988b1489d14c840c1e3_Out_3_Float;
|
|
Unity_Clamp_float(_Add_d7ea4a88c4af4886b1e567ddd2b963f9_Out_2_Float, float(0), float(1), _Clamp_1a02c4bf5903c988b1489d14c840c1e3_Out_3_Float);
|
|
float _Property_0e0e1ec2131cec87836dce596351dc1c_Out_0_Float = _BaseBrightnessCurvMultply;
|
|
float _Multiply_c975dfa7de001c89addd082d443e2d07_Out_2_Float;
|
|
Unity_Multiply_float_float(_Clamp_1a02c4bf5903c988b1489d14c840c1e3_Out_3_Float, _Property_0e0e1ec2131cec87836dce596351dc1c_Out_0_Float, _Multiply_c975dfa7de001c89addd082d443e2d07_Out_2_Float);
|
|
float _Clamp_d5711b145a87ef8e8a93ceb9b6197759_Out_3_Float;
|
|
Unity_Clamp_float(_Multiply_c975dfa7de001c89addd082d443e2d07_Out_2_Float, float(0), float(1), _Clamp_d5711b145a87ef8e8a93ceb9b6197759_Out_3_Float);
|
|
float _Absolute_8f9bd7ee7a35c18084d08ad7ef463f52_Out_1_Float;
|
|
Unity_Absolute_float(_Clamp_d5711b145a87ef8e8a93ceb9b6197759_Out_3_Float, _Absolute_8f9bd7ee7a35c18084d08ad7ef463f52_Out_1_Float);
|
|
float _Property_9092f5beea2bec83a5c8a3f6623953a6_Out_0_Float = _BaseBrightnessCurvPower;
|
|
float _Power_5c1a81a2cfcc578996666adb93479f83_Out_2_Float;
|
|
Unity_Power_float(_Absolute_8f9bd7ee7a35c18084d08ad7ef463f52_Out_1_Float, _Property_9092f5beea2bec83a5c8a3f6623953a6_Out_0_Float, _Power_5c1a81a2cfcc578996666adb93479f83_Out_2_Float);
|
|
float _Clamp_f3c614a7ae35508288c0bc3f6194ca34_Out_3_Float;
|
|
Unity_Clamp_float(_Power_5c1a81a2cfcc578996666adb93479f83_Out_2_Float, float(0), float(1), _Clamp_f3c614a7ae35508288c0bc3f6194ca34_Out_3_Float);
|
|
float4 _Add_8313e15cade91a8ba653986d6722818a_Out_2_Vector4;
|
|
Unity_Add_float4(_Clamp_841e38951a68f286955c4755e78c610b_Out_3_Vector4, (_Clamp_f3c614a7ae35508288c0bc3f6194ca34_Out_3_Float.xxxx), _Add_8313e15cade91a8ba653986d6722818a_Out_2_Vector4);
|
|
float4 _Clamp_6dc8fea4fa463b8ea840911fd315c80f_Out_3_Vector4;
|
|
Unity_Clamp_float4(_Add_8313e15cade91a8ba653986d6722818a_Out_2_Vector4, float4(0, 0, 0, 0), float4(1, 1, 1, 1), _Clamp_6dc8fea4fa463b8ea840911fd315c80f_Out_3_Vector4);
|
|
float4 _Branch_26165227c7a50284b87d2996dee9982c_Out_3_Vector4;
|
|
Unity_Branch_float4(_Property_72a5c604805a7b8ebbfd7acee03656aa_Out_0_Boolean, _Clamp_6dc8fea4fa463b8ea840911fd315c80f_Out_3_Vector4, _Multiply_4b2be0b3fe39f385b887e7c82ab41e0b_Out_2_Vector4, _Branch_26165227c7a50284b87d2996dee9982c_Out_3_Vector4);
|
|
UnityTexture2D _Property_2e62abc1fe8adb8b8ff655b8448be202_Out_0_Texture2D = UnityBuildTexture2DStructNoScale(_DetailMap);
|
|
float4 _Property_b86e0ee324ffb58a92473eab69864d04_Out_0_Vector4 = _DetailTilingOffset;
|
|
float _Split_e832641c05503286a4951c0a93621755_R_1_Float = _Property_b86e0ee324ffb58a92473eab69864d04_Out_0_Vector4[0];
|
|
float _Split_e832641c05503286a4951c0a93621755_G_2_Float = _Property_b86e0ee324ffb58a92473eab69864d04_Out_0_Vector4[1];
|
|
float _Split_e832641c05503286a4951c0a93621755_B_3_Float = _Property_b86e0ee324ffb58a92473eab69864d04_Out_0_Vector4[2];
|
|
float _Split_e832641c05503286a4951c0a93621755_A_4_Float = _Property_b86e0ee324ffb58a92473eab69864d04_Out_0_Vector4[3];
|
|
float2 _Vector2_4b5eef288b3d4c83b24e4ab653f55ec8_Out_0_Vector2 = float2(_Split_e832641c05503286a4951c0a93621755_R_1_Float, _Split_e832641c05503286a4951c0a93621755_G_2_Float);
|
|
float2 _Vector2_2925cf98ba16b08dabc58cd65efd17db_Out_0_Vector2 = float2(_Split_e832641c05503286a4951c0a93621755_B_3_Float, _Split_e832641c05503286a4951c0a93621755_A_4_Float);
|
|
float2 _TilingAndOffset_74f6566eba9ccd899de18c0b11b7a7a2_Out_3_Vector2;
|
|
Unity_TilingAndOffset_float(IN.uv0.xy, _Vector2_4b5eef288b3d4c83b24e4ab653f55ec8_Out_0_Vector2, _Vector2_2925cf98ba16b08dabc58cd65efd17db_Out_0_Vector2, _TilingAndOffset_74f6566eba9ccd899de18c0b11b7a7a2_Out_3_Vector2);
|
|
float4 _SampleTexture2D_4bd08411faa60c828847f2247f06a809_RGBA_0_Vector4 = SAMPLE_TEXTURE2D(_Property_2e62abc1fe8adb8b8ff655b8448be202_Out_0_Texture2D.tex, _Property_2e62abc1fe8adb8b8ff655b8448be202_Out_0_Texture2D.samplerstate, _Property_2e62abc1fe8adb8b8ff655b8448be202_Out_0_Texture2D.GetTransformedUV(_TilingAndOffset_74f6566eba9ccd899de18c0b11b7a7a2_Out_3_Vector2) );
|
|
float _SampleTexture2D_4bd08411faa60c828847f2247f06a809_R_4_Float = _SampleTexture2D_4bd08411faa60c828847f2247f06a809_RGBA_0_Vector4.r;
|
|
float _SampleTexture2D_4bd08411faa60c828847f2247f06a809_G_5_Float = _SampleTexture2D_4bd08411faa60c828847f2247f06a809_RGBA_0_Vector4.g;
|
|
float _SampleTexture2D_4bd08411faa60c828847f2247f06a809_B_6_Float = _SampleTexture2D_4bd08411faa60c828847f2247f06a809_RGBA_0_Vector4.b;
|
|
float _SampleTexture2D_4bd08411faa60c828847f2247f06a809_A_7_Float = _SampleTexture2D_4bd08411faa60c828847f2247f06a809_RGBA_0_Vector4.a;
|
|
float _Multiply_ee5a3ccdebd1af84920cd1455a59468b_Out_2_Float;
|
|
Unity_Multiply_float_float(_SampleTexture2D_4bd08411faa60c828847f2247f06a809_R_4_Float, 2, _Multiply_ee5a3ccdebd1af84920cd1455a59468b_Out_2_Float);
|
|
float _Add_b8d727bda34294808f98551e67aa852f_Out_2_Float;
|
|
Unity_Add_float(_Multiply_ee5a3ccdebd1af84920cd1455a59468b_Out_2_Float, float(-1), _Add_b8d727bda34294808f98551e67aa852f_Out_2_Float);
|
|
float _Property_4634e589b03f6983b90fa6aaee0ed5f6_Out_0_Float = _DetailAlbedoScale;
|
|
float _Multiply_f0ed5a95f800c68aa9f7ea2f1322cc31_Out_2_Float;
|
|
Unity_Multiply_float_float(_Add_b8d727bda34294808f98551e67aa852f_Out_2_Float, _Property_4634e589b03f6983b90fa6aaee0ed5f6_Out_0_Float, _Multiply_f0ed5a95f800c68aa9f7ea2f1322cc31_Out_2_Float);
|
|
float _Saturate_469298b4e783d887889b71dc48b4399f_Out_1_Float;
|
|
Unity_Saturate_float(_Multiply_f0ed5a95f800c68aa9f7ea2f1322cc31_Out_2_Float, _Saturate_469298b4e783d887889b71dc48b4399f_Out_1_Float);
|
|
float _Absolute_3b29f3ceceba148189d11e0195af4be2_Out_1_Float;
|
|
Unity_Absolute_float(_Saturate_469298b4e783d887889b71dc48b4399f_Out_1_Float, _Absolute_3b29f3ceceba148189d11e0195af4be2_Out_1_Float);
|
|
Bindings_BlendOverlayBaseColor_acdb3dfca72bd6b42bbc35f4613331a2_float _BlendOverlayBaseColor_369c0b6a02e62b809dc5c6ac1efddde2;
|
|
float3 _BlendOverlayBaseColor_369c0b6a02e62b809dc5c6ac1efddde2_OutVector4_1_Vector3;
|
|
SG_BlendOverlayBaseColor_acdb3dfca72bd6b42bbc35f4613331a2_float(_Branch_26165227c7a50284b87d2996dee9982c_Out_3_Vector4, _Add_b8d727bda34294808f98551e67aa852f_Out_2_Float, _Absolute_3b29f3ceceba148189d11e0195af4be2_Out_1_Float, _BlendOverlayBaseColor_369c0b6a02e62b809dc5c6ac1efddde2, _BlendOverlayBaseColor_369c0b6a02e62b809dc5c6ac1efddde2_OutVector4_1_Vector3);
|
|
UnityTexture2D _Property_9a8451520f254f84a21875f3dac8cbe3_Out_0_Texture2D = UnityBuildTexture2DStructNoScale(_CoverBaseColorMap);
|
|
float4 _Property_c853e88632d9fd85ac0e98d12083eb62_Out_0_Vector4 = _CoverTilingOffset;
|
|
float4 _Divide_1fe314f1ca9dd78fbf366bbeb40e4ccf_Out_2_Vector4;
|
|
Unity_Divide_float4(float4(1, 1, 0, 0), _Property_c853e88632d9fd85ac0e98d12083eb62_Out_0_Vector4, _Divide_1fe314f1ca9dd78fbf366bbeb40e4ccf_Out_2_Vector4);
|
|
float _Property_ee792eccbb538a878b19be5db264531e_Out_0_Float = _CoverTriplanarThreshold;
|
|
Bindings_TriplanarNM_bc609ed95f52591469ab35dbfe0efcea_float _TriplanarNM_cca4c45d91c87989990c532a04e9e8e1;
|
|
_TriplanarNM_cca4c45d91c87989990c532a04e9e8e1.WorldSpaceNormal = IN.WorldSpaceNormal;
|
|
_TriplanarNM_cca4c45d91c87989990c532a04e9e8e1.AbsoluteWorldSpacePosition = IN.AbsoluteWorldSpacePosition;
|
|
float4 _TriplanarNM_cca4c45d91c87989990c532a04e9e8e1_XYZ_1_Vector4;
|
|
float4 _TriplanarNM_cca4c45d91c87989990c532a04e9e8e1_XZ_2_Vector4;
|
|
float4 _TriplanarNM_cca4c45d91c87989990c532a04e9e8e1_YZ_3_Vector4;
|
|
float4 _TriplanarNM_cca4c45d91c87989990c532a04e9e8e1_XY_4_Vector4;
|
|
SG_TriplanarNM_bc609ed95f52591469ab35dbfe0efcea_float(_Property_9a8451520f254f84a21875f3dac8cbe3_Out_0_Texture2D, (_Divide_1fe314f1ca9dd78fbf366bbeb40e4ccf_Out_2_Vector4).x, _Property_ee792eccbb538a878b19be5db264531e_Out_0_Float, UnityBuildSamplerStateStruct(SamplerState_Linear_Repeat_Aniso8), _TriplanarNM_cca4c45d91c87989990c532a04e9e8e1, _TriplanarNM_cca4c45d91c87989990c532a04e9e8e1_XYZ_1_Vector4, _TriplanarNM_cca4c45d91c87989990c532a04e9e8e1_XZ_2_Vector4, _TriplanarNM_cca4c45d91c87989990c532a04e9e8e1_YZ_3_Vector4, _TriplanarNM_cca4c45d91c87989990c532a04e9e8e1_XY_4_Vector4);
|
|
float4 _Property_18c743619f52288dbe24e28326388b00_Out_0_Vector4 = _CoverBaseColor;
|
|
float4 _Multiply_62594f3b30470e86a813e1224c48902e_Out_2_Vector4;
|
|
Unity_Multiply_float4_float4(_TriplanarNM_cca4c45d91c87989990c532a04e9e8e1_XYZ_1_Vector4, _Property_18c743619f52288dbe24e28326388b00_Out_0_Vector4, _Multiply_62594f3b30470e86a813e1224c48902e_Out_2_Vector4);
|
|
float _Multiply_5378fc524597f98fb32eeb561a7390e9_Out_2_Float;
|
|
Unity_Multiply_float_float(_SampleTexture2D_32717b1e99785588830ceee116cbe7fc_R_4_Float, 2, _Multiply_5378fc524597f98fb32eeb561a7390e9_Out_2_Float);
|
|
float _Property_8a72d97c1c527c8f8e0cc71214498065_Out_0_Float = _CoverDarknessCurvMultply;
|
|
float _Multiply_22683a720176a788a2ce404dbddd837c_Out_2_Float;
|
|
Unity_Multiply_float_float(_Multiply_5378fc524597f98fb32eeb561a7390e9_Out_2_Float, _Property_8a72d97c1c527c8f8e0cc71214498065_Out_0_Float, _Multiply_22683a720176a788a2ce404dbddd837c_Out_2_Float);
|
|
float _Clamp_5a638fb628222d8a97865d9029554fe2_Out_3_Float;
|
|
Unity_Clamp_float(_Multiply_22683a720176a788a2ce404dbddd837c_Out_2_Float, float(0), float(1), _Clamp_5a638fb628222d8a97865d9029554fe2_Out_3_Float);
|
|
float _Absolute_11985e8863bf2b8ca0bda90bca829348_Out_1_Float;
|
|
Unity_Absolute_float(_Clamp_5a638fb628222d8a97865d9029554fe2_Out_3_Float, _Absolute_11985e8863bf2b8ca0bda90bca829348_Out_1_Float);
|
|
float _Property_aba5acef910eee88b110d565674a9e36_Out_0_Float = _CoverDarknessCurvPower;
|
|
float _Power_da9b537d80a58d85a88e72c2a5d01e7c_Out_2_Float;
|
|
Unity_Power_float(_Absolute_11985e8863bf2b8ca0bda90bca829348_Out_1_Float, _Property_aba5acef910eee88b110d565674a9e36_Out_0_Float, _Power_da9b537d80a58d85a88e72c2a5d01e7c_Out_2_Float);
|
|
float _Clamp_77228e2a7266fa8ca042eae2f0701342_Out_3_Float;
|
|
Unity_Clamp_float(_Power_da9b537d80a58d85a88e72c2a5d01e7c_Out_2_Float, float(0), float(1), _Clamp_77228e2a7266fa8ca042eae2f0701342_Out_3_Float);
|
|
float4 _Multiply_2111c8ad39d5e68caf4893a41a3bad7d_Out_2_Vector4;
|
|
Unity_Multiply_float4_float4(_Multiply_62594f3b30470e86a813e1224c48902e_Out_2_Vector4, (_Clamp_77228e2a7266fa8ca042eae2f0701342_Out_3_Float.xxxx), _Multiply_2111c8ad39d5e68caf4893a41a3bad7d_Out_2_Vector4);
|
|
float4 _Clamp_b489ebb9d7d18282a342100f4d2fa72d_Out_3_Vector4;
|
|
Unity_Clamp_float4(_Multiply_2111c8ad39d5e68caf4893a41a3bad7d_Out_2_Vector4, float4(0, 0, 0, 0), float4(1, 1, 1, 1), _Clamp_b489ebb9d7d18282a342100f4d2fa72d_Out_3_Vector4);
|
|
float _Add_7eea819e47ffe58cbb3ec5877a181444_Out_2_Float;
|
|
Unity_Add_float(_Multiply_5378fc524597f98fb32eeb561a7390e9_Out_2_Float, float(-1), _Add_7eea819e47ffe58cbb3ec5877a181444_Out_2_Float);
|
|
float _Clamp_b5e4f47c0358dc87b5f9fdb3a360e9e9_Out_3_Float;
|
|
Unity_Clamp_float(_Add_7eea819e47ffe58cbb3ec5877a181444_Out_2_Float, float(0), float(1), _Clamp_b5e4f47c0358dc87b5f9fdb3a360e9e9_Out_3_Float);
|
|
float _Property_753051c96a90798fa7d94cff4173d6e6_Out_0_Float = _CoverBrightnessCurvMultply;
|
|
float _Multiply_c650497abc44d98882ce0091d10c4356_Out_2_Float;
|
|
Unity_Multiply_float_float(_Clamp_b5e4f47c0358dc87b5f9fdb3a360e9e9_Out_3_Float, _Property_753051c96a90798fa7d94cff4173d6e6_Out_0_Float, _Multiply_c650497abc44d98882ce0091d10c4356_Out_2_Float);
|
|
float _Clamp_c508dc61e0cb2a829429559098f34f9a_Out_3_Float;
|
|
Unity_Clamp_float(_Multiply_c650497abc44d98882ce0091d10c4356_Out_2_Float, float(0), float(1), _Clamp_c508dc61e0cb2a829429559098f34f9a_Out_3_Float);
|
|
float _Absolute_2cff2da32d80c286acbb99de611f381a_Out_1_Float;
|
|
Unity_Absolute_float(_Clamp_c508dc61e0cb2a829429559098f34f9a_Out_3_Float, _Absolute_2cff2da32d80c286acbb99de611f381a_Out_1_Float);
|
|
float _Property_ce4610db7b6d0c8bb7fb318210d3e83f_Out_0_Float = _CoverBrightnessCurvPower;
|
|
float _Power_c21df4d2e5ea448281f9ac0f4a140b9e_Out_2_Float;
|
|
Unity_Power_float(_Absolute_2cff2da32d80c286acbb99de611f381a_Out_1_Float, _Property_ce4610db7b6d0c8bb7fb318210d3e83f_Out_0_Float, _Power_c21df4d2e5ea448281f9ac0f4a140b9e_Out_2_Float);
|
|
float _Clamp_fd095a9d6c2b9881ae5875ed126bf3fb_Out_3_Float;
|
|
Unity_Clamp_float(_Power_c21df4d2e5ea448281f9ac0f4a140b9e_Out_2_Float, float(0), float(1), _Clamp_fd095a9d6c2b9881ae5875ed126bf3fb_Out_3_Float);
|
|
float4 _Add_4a02758b9a29b18180516bf3c3ede263_Out_2_Vector4;
|
|
Unity_Add_float4(_Clamp_b489ebb9d7d18282a342100f4d2fa72d_Out_3_Vector4, (_Clamp_fd095a9d6c2b9881ae5875ed126bf3fb_Out_3_Float.xxxx), _Add_4a02758b9a29b18180516bf3c3ede263_Out_2_Vector4);
|
|
float4 _Clamp_632e3d64ab55648f927a79cef68f3396_Out_3_Vector4;
|
|
Unity_Clamp_float4(_Add_4a02758b9a29b18180516bf3c3ede263_Out_2_Vector4, float4(0, 0, 0, 0), float4(1, 1, 1, 1), _Clamp_632e3d64ab55648f927a79cef68f3396_Out_3_Vector4);
|
|
float4 _Branch_0c5221a996e29186a372734bf5c30a51_Out_3_Vector4;
|
|
Unity_Branch_float4(_Property_72a5c604805a7b8ebbfd7acee03656aa_Out_0_Boolean, _Clamp_632e3d64ab55648f927a79cef68f3396_Out_3_Vector4, _Multiply_62594f3b30470e86a813e1224c48902e_Out_2_Vector4, _Branch_0c5221a996e29186a372734bf5c30a51_Out_3_Vector4);
|
|
float _Multiply_6a55591ceae0dc86a971a275e316fec6_Out_2_Float;
|
|
Unity_Multiply_float_float(_SampleTexture2D_4bd08411faa60c828847f2247f06a809_R_4_Float, 2, _Multiply_6a55591ceae0dc86a971a275e316fec6_Out_2_Float);
|
|
float _Add_a86411eb4894f78f8f8f3246011b369c_Out_2_Float;
|
|
Unity_Add_float(_Multiply_6a55591ceae0dc86a971a275e316fec6_Out_2_Float, float(-1), _Add_a86411eb4894f78f8f8f3246011b369c_Out_2_Float);
|
|
float _Property_c5a049650239cf80a302d0c0f57c147a_Out_0_Float = _DetailCoverAlbedoScale;
|
|
float _Multiply_1708b01db74fe88a8c36434f8729bf41_Out_2_Float;
|
|
Unity_Multiply_float_float(_Add_a86411eb4894f78f8f8f3246011b369c_Out_2_Float, _Property_c5a049650239cf80a302d0c0f57c147a_Out_0_Float, _Multiply_1708b01db74fe88a8c36434f8729bf41_Out_2_Float);
|
|
float _Saturate_1a4899f79635918485a64fff7cea28ad_Out_1_Float;
|
|
Unity_Saturate_float(_Multiply_1708b01db74fe88a8c36434f8729bf41_Out_2_Float, _Saturate_1a4899f79635918485a64fff7cea28ad_Out_1_Float);
|
|
float _Absolute_d3dce2bb8d9f0285b5183b7f665beed8_Out_1_Float;
|
|
Unity_Absolute_float(_Saturate_1a4899f79635918485a64fff7cea28ad_Out_1_Float, _Absolute_d3dce2bb8d9f0285b5183b7f665beed8_Out_1_Float);
|
|
Bindings_BlendOverlayBaseColor_acdb3dfca72bd6b42bbc35f4613331a2_float _BlendOverlayBaseColor_ec1f397271cc818abdb95188914e6b4d;
|
|
float3 _BlendOverlayBaseColor_ec1f397271cc818abdb95188914e6b4d_OutVector4_1_Vector3;
|
|
SG_BlendOverlayBaseColor_acdb3dfca72bd6b42bbc35f4613331a2_float(_Branch_0c5221a996e29186a372734bf5c30a51_Out_3_Vector4, _Add_a86411eb4894f78f8f8f3246011b369c_Out_2_Float, _Absolute_d3dce2bb8d9f0285b5183b7f665beed8_Out_1_Float, _BlendOverlayBaseColor_ec1f397271cc818abdb95188914e6b4d, _BlendOverlayBaseColor_ec1f397271cc818abdb95188914e6b4d_OutVector4_1_Vector3);
|
|
float _Property_cb0b6597aee47880b32e852aaa0e4a71_Out_0_Boolean = _USEDYNAMICCOVERTSTATICMASKF;
|
|
float _Property_4b3f692214f8d081a043985e1adb12a1_Out_0_Float = _CoverMaskPower;
|
|
float _Multiply_10cc4ecb135f8e8ab88c475223d0eadf_Out_2_Float;
|
|
Unity_Multiply_float_float(_SampleTexture2D_32717b1e99785588830ceee116cbe7fc_A_7_Float, _Property_4b3f692214f8d081a043985e1adb12a1_Out_0_Float, _Multiply_10cc4ecb135f8e8ab88c475223d0eadf_Out_2_Float);
|
|
float _Clamp_07a501c22c6e188199bed73412ac8926_Out_3_Float;
|
|
Unity_Clamp_float(_Multiply_10cc4ecb135f8e8ab88c475223d0eadf_Out_2_Float, float(0), float(1), _Clamp_07a501c22c6e188199bed73412ac8926_Out_3_Float);
|
|
float _Split_2ada595651635e8d97bf4b82f717fcc6_R_1_Float = IN.VertexColor[0];
|
|
float _Split_2ada595651635e8d97bf4b82f717fcc6_G_2_Float = IN.VertexColor[1];
|
|
float _Split_2ada595651635e8d97bf4b82f717fcc6_B_3_Float = IN.VertexColor[2];
|
|
float _Split_2ada595651635e8d97bf4b82f717fcc6_A_4_Float = IN.VertexColor[3];
|
|
float3 _Property_9180f8dd535ba18499edac37aef4d231_Out_0_Vector3 = _CoverDirection;
|
|
float2 _Vector2_7fe7d9ef320da68f958e1ea535e2a6a8_Out_0_Vector2 = float2(_SampleTexture2D_4bd08411faa60c828847f2247f06a809_A_7_Float, _SampleTexture2D_4bd08411faa60c828847f2247f06a809_G_5_Float);
|
|
float2 _Multiply_b8d7cc078ce00d87b9a6b5241b2f1f01_Out_2_Vector2;
|
|
Unity_Multiply_float2_float2(_Vector2_7fe7d9ef320da68f958e1ea535e2a6a8_Out_0_Vector2, float2(2, 2), _Multiply_b8d7cc078ce00d87b9a6b5241b2f1f01_Out_2_Vector2);
|
|
float2 _Add_476ecfb1f47aed8bb8040bb1c44ca372_Out_2_Vector2;
|
|
Unity_Add_float2(_Multiply_b8d7cc078ce00d87b9a6b5241b2f1f01_Out_2_Vector2, float2(-1, -1), _Add_476ecfb1f47aed8bb8040bb1c44ca372_Out_2_Vector2);
|
|
float _Property_b7f40cf2664f5a819eb153af2b2eb69e_Out_0_Float = _DetailNormalScale;
|
|
float2 _Multiply_3b11e3e43551698eb19b6c6b671b6a41_Out_2_Vector2;
|
|
Unity_Multiply_float2_float2(_Add_476ecfb1f47aed8bb8040bb1c44ca372_Out_2_Vector2, (_Property_b7f40cf2664f5a819eb153af2b2eb69e_Out_0_Float.xx), _Multiply_3b11e3e43551698eb19b6c6b671b6a41_Out_2_Vector2);
|
|
float _Split_678aac70d9cb9783a49841710ce82ff8_R_1_Float = _Multiply_3b11e3e43551698eb19b6c6b671b6a41_Out_2_Vector2[0];
|
|
float _Split_678aac70d9cb9783a49841710ce82ff8_G_2_Float = _Multiply_3b11e3e43551698eb19b6c6b671b6a41_Out_2_Vector2[1];
|
|
float _Split_678aac70d9cb9783a49841710ce82ff8_B_3_Float = 0;
|
|
float _Split_678aac70d9cb9783a49841710ce82ff8_A_4_Float = 0;
|
|
float _DotProduct_7fd2e2e8b3e9ed8f9a42a0ba98e14174_Out_2_Float;
|
|
Unity_DotProduct_float2(_Multiply_3b11e3e43551698eb19b6c6b671b6a41_Out_2_Vector2, _Multiply_3b11e3e43551698eb19b6c6b671b6a41_Out_2_Vector2, _DotProduct_7fd2e2e8b3e9ed8f9a42a0ba98e14174_Out_2_Float);
|
|
float _Saturate_47bdfe8ca2c8d989a5ebbb5eb995f023_Out_1_Float;
|
|
Unity_Saturate_float(_DotProduct_7fd2e2e8b3e9ed8f9a42a0ba98e14174_Out_2_Float, _Saturate_47bdfe8ca2c8d989a5ebbb5eb995f023_Out_1_Float);
|
|
float _OneMinus_03777d2879850b838187d9d2605d7341_Out_1_Float;
|
|
Unity_OneMinus_float(_Saturate_47bdfe8ca2c8d989a5ebbb5eb995f023_Out_1_Float, _OneMinus_03777d2879850b838187d9d2605d7341_Out_1_Float);
|
|
float _SquareRoot_ca9c195aef071d8888f26cb73b749f72_Out_1_Float;
|
|
Unity_SquareRoot_float(_OneMinus_03777d2879850b838187d9d2605d7341_Out_1_Float, _SquareRoot_ca9c195aef071d8888f26cb73b749f72_Out_1_Float);
|
|
float3 _Vector3_6999cbd6a5aa908cb7c059b5f2f5b330_Out_0_Vector3 = float3(_Split_678aac70d9cb9783a49841710ce82ff8_R_1_Float, _Split_678aac70d9cb9783a49841710ce82ff8_G_2_Float, _SquareRoot_ca9c195aef071d8888f26cb73b749f72_Out_1_Float);
|
|
UnityTexture2D _Property_d2bb0a0b01239c85bd301cadeec1b3d8_Out_0_Texture2D = UnityBuildTexture2DStructNoScale(_BaseNormalMap);
|
|
Bindings_TriplanarNMn_059da9746584140498cd018db3c76047_float _TriplanarNMn_bf7f7c0e2d896289b86076b79f33d7d4;
|
|
_TriplanarNMn_bf7f7c0e2d896289b86076b79f33d7d4.WorldSpaceNormal = IN.WorldSpaceNormal;
|
|
_TriplanarNMn_bf7f7c0e2d896289b86076b79f33d7d4.WorldSpaceTangent = IN.WorldSpaceTangent;
|
|
_TriplanarNMn_bf7f7c0e2d896289b86076b79f33d7d4.WorldSpaceBiTangent = IN.WorldSpaceBiTangent;
|
|
_TriplanarNMn_bf7f7c0e2d896289b86076b79f33d7d4.AbsoluteWorldSpacePosition = IN.AbsoluteWorldSpacePosition;
|
|
float4 _TriplanarNMn_bf7f7c0e2d896289b86076b79f33d7d4_XYZ_1_Vector4;
|
|
float4 _TriplanarNMn_bf7f7c0e2d896289b86076b79f33d7d4_XZ_2_Vector4;
|
|
float4 _TriplanarNMn_bf7f7c0e2d896289b86076b79f33d7d4_YZ_3_Vector4;
|
|
float4 _TriplanarNMn_bf7f7c0e2d896289b86076b79f33d7d4_XY_4_Vector4;
|
|
SG_TriplanarNMn_059da9746584140498cd018db3c76047_float(_Property_d2bb0a0b01239c85bd301cadeec1b3d8_Out_0_Texture2D, (_Divide_6a90cebe78e620828de587523daaa7e6_Out_2_Vector4).x, _Property_3539de8c698c2981bb3c088d4ec52201_Out_0_Float, UnityBuildSamplerStateStruct(SamplerState_Linear_Repeat_Aniso8), _TriplanarNMn_bf7f7c0e2d896289b86076b79f33d7d4, _TriplanarNMn_bf7f7c0e2d896289b86076b79f33d7d4_XYZ_1_Vector4, _TriplanarNMn_bf7f7c0e2d896289b86076b79f33d7d4_XZ_2_Vector4, _TriplanarNMn_bf7f7c0e2d896289b86076b79f33d7d4_YZ_3_Vector4, _TriplanarNMn_bf7f7c0e2d896289b86076b79f33d7d4_XY_4_Vector4);
|
|
float _Property_d6baf612f8e685848732ca270b39f544_Out_0_Float = _BaseNormalScale;
|
|
float3 _NormalStrength_260139b4d5077d8b9d42de780d173b6c_Out_2_Vector3;
|
|
Unity_NormalStrength_float((_TriplanarNMn_bf7f7c0e2d896289b86076b79f33d7d4_XYZ_1_Vector4.xyz), _Property_d6baf612f8e685848732ca270b39f544_Out_0_Float, _NormalStrength_260139b4d5077d8b9d42de780d173b6c_Out_2_Vector3);
|
|
UnityTexture2D _Property_492c4e7cd40ab980bd38362624511e38_Out_0_Texture2D = UnityBuildTexture2DStructNoScale(_ShapeNormalMap);
|
|
float4 _SampleTexture2D_63aaad04c65f698e8f640de826888075_RGBA_0_Vector4 = SAMPLE_TEXTURE2D(_Property_492c4e7cd40ab980bd38362624511e38_Out_0_Texture2D.tex, _Property_492c4e7cd40ab980bd38362624511e38_Out_0_Texture2D.samplerstate, _Property_492c4e7cd40ab980bd38362624511e38_Out_0_Texture2D.GetTransformedUV(IN.uv0.xy) );
|
|
_SampleTexture2D_63aaad04c65f698e8f640de826888075_RGBA_0_Vector4.rgb = UnpackNormal(_SampleTexture2D_63aaad04c65f698e8f640de826888075_RGBA_0_Vector4);
|
|
float _SampleTexture2D_63aaad04c65f698e8f640de826888075_R_4_Float = _SampleTexture2D_63aaad04c65f698e8f640de826888075_RGBA_0_Vector4.r;
|
|
float _SampleTexture2D_63aaad04c65f698e8f640de826888075_G_5_Float = _SampleTexture2D_63aaad04c65f698e8f640de826888075_RGBA_0_Vector4.g;
|
|
float _SampleTexture2D_63aaad04c65f698e8f640de826888075_B_6_Float = _SampleTexture2D_63aaad04c65f698e8f640de826888075_RGBA_0_Vector4.b;
|
|
float _SampleTexture2D_63aaad04c65f698e8f640de826888075_A_7_Float = _SampleTexture2D_63aaad04c65f698e8f640de826888075_RGBA_0_Vector4.a;
|
|
float _Property_6c35e329e57d0e89950e24817068dbb1_Out_0_Float = _shapeNormalScale;
|
|
float3 _NormalStrength_e181a1bb2f4e35819e0f35e77346e12e_Out_2_Vector3;
|
|
Unity_NormalStrength_float((_SampleTexture2D_63aaad04c65f698e8f640de826888075_RGBA_0_Vector4.xyz), _Property_6c35e329e57d0e89950e24817068dbb1_Out_0_Float, _NormalStrength_e181a1bb2f4e35819e0f35e77346e12e_Out_2_Vector3);
|
|
float3 _NormalBlend_ead295b946c6058190c298c03bf64d0b_Out_2_Vector3;
|
|
Unity_NormalBlend_float(_NormalStrength_260139b4d5077d8b9d42de780d173b6c_Out_2_Vector3, _NormalStrength_e181a1bb2f4e35819e0f35e77346e12e_Out_2_Vector3, _NormalBlend_ead295b946c6058190c298c03bf64d0b_Out_2_Vector3);
|
|
float3 _NormalBlend_4242e1b4a785378aa59dd49e9d993ffc_Out_2_Vector3;
|
|
Unity_NormalBlend_float(_Vector3_6999cbd6a5aa908cb7c059b5f2f5b330_Out_0_Vector3, _NormalBlend_ead295b946c6058190c298c03bf64d0b_Out_2_Vector3, _NormalBlend_4242e1b4a785378aa59dd49e9d993ffc_Out_2_Vector3);
|
|
float _Property_3d4ab6ad1f1f138a96f0463f7be8b6ce_Out_0_Float = _CovershapeNormalScale;
|
|
float3 _NormalStrength_401cd5af500bd68dbc9bca19d548d0db_Out_2_Vector3;
|
|
Unity_NormalStrength_float((_SampleTexture2D_63aaad04c65f698e8f640de826888075_RGBA_0_Vector4.xyz), _Property_3d4ab6ad1f1f138a96f0463f7be8b6ce_Out_0_Float, _NormalStrength_401cd5af500bd68dbc9bca19d548d0db_Out_2_Vector3);
|
|
UnityTexture2D _Property_779695727390348d8b8a7f7ae2245af0_Out_0_Texture2D = UnityBuildTexture2DStructNoScale(_CoverNormalMap);
|
|
Bindings_TriplanarNMn_059da9746584140498cd018db3c76047_float _TriplanarNMn_ba7e211dd8095589a2939b5b239ca8e0;
|
|
_TriplanarNMn_ba7e211dd8095589a2939b5b239ca8e0.WorldSpaceNormal = IN.WorldSpaceNormal;
|
|
_TriplanarNMn_ba7e211dd8095589a2939b5b239ca8e0.WorldSpaceTangent = IN.WorldSpaceTangent;
|
|
_TriplanarNMn_ba7e211dd8095589a2939b5b239ca8e0.WorldSpaceBiTangent = IN.WorldSpaceBiTangent;
|
|
_TriplanarNMn_ba7e211dd8095589a2939b5b239ca8e0.AbsoluteWorldSpacePosition = IN.AbsoluteWorldSpacePosition;
|
|
float4 _TriplanarNMn_ba7e211dd8095589a2939b5b239ca8e0_XYZ_1_Vector4;
|
|
float4 _TriplanarNMn_ba7e211dd8095589a2939b5b239ca8e0_XZ_2_Vector4;
|
|
float4 _TriplanarNMn_ba7e211dd8095589a2939b5b239ca8e0_YZ_3_Vector4;
|
|
float4 _TriplanarNMn_ba7e211dd8095589a2939b5b239ca8e0_XY_4_Vector4;
|
|
SG_TriplanarNMn_059da9746584140498cd018db3c76047_float(_Property_779695727390348d8b8a7f7ae2245af0_Out_0_Texture2D, (_Divide_1fe314f1ca9dd78fbf366bbeb40e4ccf_Out_2_Vector4).x, _Property_ee792eccbb538a878b19be5db264531e_Out_0_Float, UnityBuildSamplerStateStruct(SamplerState_Linear_Repeat_Aniso8), _TriplanarNMn_ba7e211dd8095589a2939b5b239ca8e0, _TriplanarNMn_ba7e211dd8095589a2939b5b239ca8e0_XYZ_1_Vector4, _TriplanarNMn_ba7e211dd8095589a2939b5b239ca8e0_XZ_2_Vector4, _TriplanarNMn_ba7e211dd8095589a2939b5b239ca8e0_YZ_3_Vector4, _TriplanarNMn_ba7e211dd8095589a2939b5b239ca8e0_XY_4_Vector4);
|
|
float _Property_5aba050988182f8aad3ec6b2c7e57899_Out_0_Float = _CoverNormalBlendHardness;
|
|
float3 _NormalStrength_dac4b0abfa8a1f82b7103b18f6e6e1b7_Out_2_Vector3;
|
|
Unity_NormalStrength_float((_TriplanarNMn_ba7e211dd8095589a2939b5b239ca8e0_XYZ_1_Vector4.xyz), _Property_5aba050988182f8aad3ec6b2c7e57899_Out_0_Float, _NormalStrength_dac4b0abfa8a1f82b7103b18f6e6e1b7_Out_2_Vector3);
|
|
float3 _NormalBlend_4058aded292b7389ade16c695a6cae6c_Out_2_Vector3;
|
|
Unity_NormalBlend_float(_NormalStrength_401cd5af500bd68dbc9bca19d548d0db_Out_2_Vector3, _NormalStrength_dac4b0abfa8a1f82b7103b18f6e6e1b7_Out_2_Vector3, _NormalBlend_4058aded292b7389ade16c695a6cae6c_Out_2_Vector3);
|
|
float3 _Multiply_0e22f9c6ff55a188b2533f1889a53038_Out_2_Vector3;
|
|
Unity_Multiply_float3_float3(_Property_9180f8dd535ba18499edac37aef4d231_Out_0_Vector3, IN.WorldSpaceNormal, _Multiply_0e22f9c6ff55a188b2533f1889a53038_Out_2_Vector3);
|
|
float _Split_89708601b575b58c852cd55e4fb248d1_R_1_Float = _Multiply_0e22f9c6ff55a188b2533f1889a53038_Out_2_Vector3[0];
|
|
float _Split_89708601b575b58c852cd55e4fb248d1_G_2_Float = _Multiply_0e22f9c6ff55a188b2533f1889a53038_Out_2_Vector3[1];
|
|
float _Split_89708601b575b58c852cd55e4fb248d1_B_3_Float = _Multiply_0e22f9c6ff55a188b2533f1889a53038_Out_2_Vector3[2];
|
|
float _Split_89708601b575b58c852cd55e4fb248d1_A_4_Float = 0;
|
|
float _Add_bfe29b97a9ce3b80aa4cd689be8c4a97_Out_2_Float;
|
|
Unity_Add_float(_Split_89708601b575b58c852cd55e4fb248d1_R_1_Float, _Split_89708601b575b58c852cd55e4fb248d1_G_2_Float, _Add_bfe29b97a9ce3b80aa4cd689be8c4a97_Out_2_Float);
|
|
float _Add_f3152b42a227088aa1439fc1fe8451cc_Out_2_Float;
|
|
Unity_Add_float(_Add_bfe29b97a9ce3b80aa4cd689be8c4a97_Out_2_Float, _Split_89708601b575b58c852cd55e4fb248d1_B_3_Float, _Add_f3152b42a227088aa1439fc1fe8451cc_Out_2_Float);
|
|
float _Property_deabceefa3e3438a8ad71fa67fc5b070_Out_0_Float = _Cover_Amount;
|
|
float _Property_2fba2d762d74b8828ff566c10bc48e86_Out_0_Float = _Cover_Amount_Grow_Speed;
|
|
float _Subtract_1f990262a41ce88f96a47df66dcb4971_Out_2_Float;
|
|
Unity_Subtract_float(float(4), _Property_2fba2d762d74b8828ff566c10bc48e86_Out_0_Float, _Subtract_1f990262a41ce88f96a47df66dcb4971_Out_2_Float);
|
|
float _Divide_a89e05be4802ac80886ad6bdeadc4949_Out_2_Float;
|
|
Unity_Divide_float(_Property_deabceefa3e3438a8ad71fa67fc5b070_Out_0_Float, _Subtract_1f990262a41ce88f96a47df66dcb4971_Out_2_Float, _Divide_a89e05be4802ac80886ad6bdeadc4949_Out_2_Float);
|
|
float _Absolute_2b58f48ab94a3087a726a2b03c51e2c6_Out_1_Float;
|
|
Unity_Absolute_float(_Divide_a89e05be4802ac80886ad6bdeadc4949_Out_2_Float, _Absolute_2b58f48ab94a3087a726a2b03c51e2c6_Out_1_Float);
|
|
float _Power_6695d49b8b82468ea686b66e6749260b_Out_2_Float;
|
|
Unity_Power_float(_Absolute_2b58f48ab94a3087a726a2b03c51e2c6_Out_1_Float, _Subtract_1f990262a41ce88f96a47df66dcb4971_Out_2_Float, _Power_6695d49b8b82468ea686b66e6749260b_Out_2_Float);
|
|
float _Clamp_94f0310fee13798bad4e26e2381a94d4_Out_3_Float;
|
|
Unity_Clamp_float(_Power_6695d49b8b82468ea686b66e6749260b_Out_2_Float, float(0), float(2), _Clamp_94f0310fee13798bad4e26e2381a94d4_Out_3_Float);
|
|
float _Multiply_999692515a117385ade114d924fa589a_Out_2_Float;
|
|
Unity_Multiply_float_float(_Add_f3152b42a227088aa1439fc1fe8451cc_Out_2_Float, _Clamp_94f0310fee13798bad4e26e2381a94d4_Out_3_Float, _Multiply_999692515a117385ade114d924fa589a_Out_2_Float);
|
|
float _Saturate_f811eeeeb3229d83917aa8be2c36831e_Out_1_Float;
|
|
Unity_Saturate_float(_Multiply_999692515a117385ade114d924fa589a_Out_2_Float, _Saturate_f811eeeeb3229d83917aa8be2c36831e_Out_1_Float);
|
|
float _Clamp_4c470807610adb8c8488f125c0af7bb5_Out_3_Float;
|
|
Unity_Clamp_float(_Add_f3152b42a227088aa1439fc1fe8451cc_Out_2_Float, float(0), float(0.9999), _Clamp_4c470807610adb8c8488f125c0af7bb5_Out_3_Float);
|
|
float _Property_765e3d021aec6d8f9f8b3174d5a06980_Out_0_Float = _Cover_Max_Angle;
|
|
float _Divide_9d9fc267a9ebcf84b378fdd4c66ff34d_Out_2_Float;
|
|
Unity_Divide_float(_Property_765e3d021aec6d8f9f8b3174d5a06980_Out_0_Float, float(45), _Divide_9d9fc267a9ebcf84b378fdd4c66ff34d_Out_2_Float);
|
|
float _OneMinus_f074fba0be46e688aa75f5377832251a_Out_1_Float;
|
|
Unity_OneMinus_float(_Divide_9d9fc267a9ebcf84b378fdd4c66ff34d_Out_2_Float, _OneMinus_f074fba0be46e688aa75f5377832251a_Out_1_Float);
|
|
float _Subtract_0b0cd6145e351c87a68366348828154d_Out_2_Float;
|
|
Unity_Subtract_float(_Clamp_4c470807610adb8c8488f125c0af7bb5_Out_3_Float, _OneMinus_f074fba0be46e688aa75f5377832251a_Out_1_Float, _Subtract_0b0cd6145e351c87a68366348828154d_Out_2_Float);
|
|
float _Clamp_30607c0c4e04e5879d4061a1f7688421_Out_3_Float;
|
|
Unity_Clamp_float(_Subtract_0b0cd6145e351c87a68366348828154d_Out_2_Float, float(0), float(2), _Clamp_30607c0c4e04e5879d4061a1f7688421_Out_3_Float);
|
|
float _Divide_cfe09f3bd2005485a3c2229367309962_Out_2_Float;
|
|
Unity_Divide_float(float(1), _Divide_9d9fc267a9ebcf84b378fdd4c66ff34d_Out_2_Float, _Divide_cfe09f3bd2005485a3c2229367309962_Out_2_Float);
|
|
float _Multiply_022be2eb9027988b9d5d4c1392749347_Out_2_Float;
|
|
Unity_Multiply_float_float(_Clamp_30607c0c4e04e5879d4061a1f7688421_Out_3_Float, _Divide_cfe09f3bd2005485a3c2229367309962_Out_2_Float, _Multiply_022be2eb9027988b9d5d4c1392749347_Out_2_Float);
|
|
float _Absolute_2fed84623df90f8ba200de68955721fd_Out_1_Float;
|
|
Unity_Absolute_float(_Multiply_022be2eb9027988b9d5d4c1392749347_Out_2_Float, _Absolute_2fed84623df90f8ba200de68955721fd_Out_1_Float);
|
|
float _Property_b79c921e30793a8e84330b3341539232_Out_0_Float = _CoverHardness;
|
|
float _Power_b9ddee06dfd0b880880990743bc10612_Out_2_Float;
|
|
Unity_Power_float(_Absolute_2fed84623df90f8ba200de68955721fd_Out_1_Float, _Property_b79c921e30793a8e84330b3341539232_Out_0_Float, _Power_b9ddee06dfd0b880880990743bc10612_Out_2_Float);
|
|
float _Property_c82936191f294c89b76f2d1809168f87_Out_0_Float = _Cover_Min_Height;
|
|
float _OneMinus_f0918ccb4f747b8e83e39d82dc3b5ca9_Out_1_Float;
|
|
Unity_OneMinus_float(_Property_c82936191f294c89b76f2d1809168f87_Out_0_Float, _OneMinus_f0918ccb4f747b8e83e39d82dc3b5ca9_Out_1_Float);
|
|
float _Split_0e80ce6f80cff18f87a043d1e3eecd08_R_1_Float = IN.AbsoluteWorldSpacePosition[0];
|
|
float _Split_0e80ce6f80cff18f87a043d1e3eecd08_G_2_Float = IN.AbsoluteWorldSpacePosition[1];
|
|
float _Split_0e80ce6f80cff18f87a043d1e3eecd08_B_3_Float = IN.AbsoluteWorldSpacePosition[2];
|
|
float _Split_0e80ce6f80cff18f87a043d1e3eecd08_A_4_Float = 0;
|
|
float _Add_60b3bb4cdad6e88b8c097c5b08daa7d0_Out_2_Float;
|
|
Unity_Add_float(_OneMinus_f0918ccb4f747b8e83e39d82dc3b5ca9_Out_1_Float, _Split_0e80ce6f80cff18f87a043d1e3eecd08_G_2_Float, _Add_60b3bb4cdad6e88b8c097c5b08daa7d0_Out_2_Float);
|
|
float _Add_1898d6f46901df809c68b5241b2e9c37_Out_2_Float;
|
|
Unity_Add_float(_Add_60b3bb4cdad6e88b8c097c5b08daa7d0_Out_2_Float, float(1), _Add_1898d6f46901df809c68b5241b2e9c37_Out_2_Float);
|
|
float _Clamp_25d6140fa3ff3a8f956f99005adace2e_Out_3_Float;
|
|
Unity_Clamp_float(_Add_1898d6f46901df809c68b5241b2e9c37_Out_2_Float, float(0), float(1), _Clamp_25d6140fa3ff3a8f956f99005adace2e_Out_3_Float);
|
|
float _Property_6094a52a4f01fd8da5ea847b69b6941c_Out_0_Float = _Cover_Min_Height_Blending;
|
|
float _Add_dc69668fc7f1a586a754713499f71d99_Out_2_Float;
|
|
Unity_Add_float(_Add_60b3bb4cdad6e88b8c097c5b08daa7d0_Out_2_Float, _Property_6094a52a4f01fd8da5ea847b69b6941c_Out_0_Float, _Add_dc69668fc7f1a586a754713499f71d99_Out_2_Float);
|
|
float _Divide_63e32406c8773d83bbf2e244faf8328f_Out_2_Float;
|
|
Unity_Divide_float(_Add_dc69668fc7f1a586a754713499f71d99_Out_2_Float, _Add_60b3bb4cdad6e88b8c097c5b08daa7d0_Out_2_Float, _Divide_63e32406c8773d83bbf2e244faf8328f_Out_2_Float);
|
|
float _OneMinus_ec22d21ddfa84288b6f750e9fdb107b9_Out_1_Float;
|
|
Unity_OneMinus_float(_Divide_63e32406c8773d83bbf2e244faf8328f_Out_2_Float, _OneMinus_ec22d21ddfa84288b6f750e9fdb107b9_Out_1_Float);
|
|
float _Add_a1206af8cbfbbe8081046db1247aba04_Out_2_Float;
|
|
Unity_Add_float(_OneMinus_ec22d21ddfa84288b6f750e9fdb107b9_Out_1_Float, float(-0.5), _Add_a1206af8cbfbbe8081046db1247aba04_Out_2_Float);
|
|
float _Clamp_640b5884b29f188987c157ad5e6e6959_Out_3_Float;
|
|
Unity_Clamp_float(_Add_a1206af8cbfbbe8081046db1247aba04_Out_2_Float, float(0), float(1), _Clamp_640b5884b29f188987c157ad5e6e6959_Out_3_Float);
|
|
float _Add_cfdb6daf617665838bb05910fa9505df_Out_2_Float;
|
|
Unity_Add_float(_Clamp_25d6140fa3ff3a8f956f99005adace2e_Out_3_Float, _Clamp_640b5884b29f188987c157ad5e6e6959_Out_3_Float, _Add_cfdb6daf617665838bb05910fa9505df_Out_2_Float);
|
|
float _Clamp_552ef7e5cf91408a982297885971db7e_Out_3_Float;
|
|
Unity_Clamp_float(_Add_cfdb6daf617665838bb05910fa9505df_Out_2_Float, float(0), float(1), _Clamp_552ef7e5cf91408a982297885971db7e_Out_3_Float);
|
|
float _Multiply_8f8db9c494f4fd869809fc45531df628_Out_2_Float;
|
|
Unity_Multiply_float_float(_Power_b9ddee06dfd0b880880990743bc10612_Out_2_Float, _Clamp_552ef7e5cf91408a982297885971db7e_Out_3_Float, _Multiply_8f8db9c494f4fd869809fc45531df628_Out_2_Float);
|
|
float _Multiply_60075aa07d29d285b3c1ee531e5b5cb3_Out_2_Float;
|
|
Unity_Multiply_float_float(_Saturate_f811eeeeb3229d83917aa8be2c36831e_Out_1_Float, _Multiply_8f8db9c494f4fd869809fc45531df628_Out_2_Float, _Multiply_60075aa07d29d285b3c1ee531e5b5cb3_Out_2_Float);
|
|
float3 _Lerp_453c8bc667315a8fa37a93affb877753_Out_3_Vector3;
|
|
Unity_Lerp_float3(_NormalBlend_4242e1b4a785378aa59dd49e9d993ffc_Out_2_Vector3, _NormalBlend_4058aded292b7389ade16c695a6cae6c_Out_2_Vector3, (_Multiply_60075aa07d29d285b3c1ee531e5b5cb3_Out_2_Float.xxx), _Lerp_453c8bc667315a8fa37a93affb877753_Out_3_Vector3);
|
|
float3 _Transform_a87113b0be9dfa8eaf6932ed645aa845_Out_1_Vector3;
|
|
{
|
|
float3x3 tangentTransform = float3x3(IN.WorldSpaceTangent, IN.WorldSpaceBiTangent, IN.WorldSpaceNormal);
|
|
_Transform_a87113b0be9dfa8eaf6932ed645aa845_Out_1_Vector3 = TransformTangentToWorldDir(_Lerp_453c8bc667315a8fa37a93affb877753_Out_3_Vector3.xyz, tangentTransform, false).xyz;
|
|
}
|
|
float3 _Multiply_f6e009bd5c0fd18c99ac72f233476fe5_Out_2_Vector3;
|
|
Unity_Multiply_float3_float3(_Property_9180f8dd535ba18499edac37aef4d231_Out_0_Vector3, _Transform_a87113b0be9dfa8eaf6932ed645aa845_Out_1_Vector3, _Multiply_f6e009bd5c0fd18c99ac72f233476fe5_Out_2_Vector3);
|
|
float _Split_96f0a5b75c0e0b889dbbccd04bc2aaaa_R_1_Float = _Multiply_f6e009bd5c0fd18c99ac72f233476fe5_Out_2_Vector3[0];
|
|
float _Split_96f0a5b75c0e0b889dbbccd04bc2aaaa_G_2_Float = _Multiply_f6e009bd5c0fd18c99ac72f233476fe5_Out_2_Vector3[1];
|
|
float _Split_96f0a5b75c0e0b889dbbccd04bc2aaaa_B_3_Float = _Multiply_f6e009bd5c0fd18c99ac72f233476fe5_Out_2_Vector3[2];
|
|
float _Split_96f0a5b75c0e0b889dbbccd04bc2aaaa_A_4_Float = 0;
|
|
float _Add_07028d5174d9f88594da40d46502bc13_Out_2_Float;
|
|
Unity_Add_float(_Split_96f0a5b75c0e0b889dbbccd04bc2aaaa_R_1_Float, _Split_96f0a5b75c0e0b889dbbccd04bc2aaaa_G_2_Float, _Add_07028d5174d9f88594da40d46502bc13_Out_2_Float);
|
|
float _Add_93af6c0f8ee9a3898ca51358a213b69f_Out_2_Float;
|
|
Unity_Add_float(_Add_07028d5174d9f88594da40d46502bc13_Out_2_Float, _Split_96f0a5b75c0e0b889dbbccd04bc2aaaa_B_3_Float, _Add_93af6c0f8ee9a3898ca51358a213b69f_Out_2_Float);
|
|
float _Multiply_77421b936cb9d68299ef6791b83fa867_Out_2_Float;
|
|
Unity_Multiply_float_float(_Add_93af6c0f8ee9a3898ca51358a213b69f_Out_2_Float, _Clamp_94f0310fee13798bad4e26e2381a94d4_Out_3_Float, _Multiply_77421b936cb9d68299ef6791b83fa867_Out_2_Float);
|
|
float _Multiply_ac6769fbe7188685a7537e5ac2c6bfa9_Out_2_Float;
|
|
Unity_Multiply_float_float(_Clamp_94f0310fee13798bad4e26e2381a94d4_Out_3_Float, _Property_b79c921e30793a8e84330b3341539232_Out_0_Float, _Multiply_ac6769fbe7188685a7537e5ac2c6bfa9_Out_2_Float);
|
|
float _Multiply_37a341e0d9783683aa8d5b7001acced1_Out_2_Float;
|
|
Unity_Multiply_float_float(_Multiply_ac6769fbe7188685a7537e5ac2c6bfa9_Out_2_Float, _Multiply_8f8db9c494f4fd869809fc45531df628_Out_2_Float, _Multiply_37a341e0d9783683aa8d5b7001acced1_Out_2_Float);
|
|
float _Multiply_02fa8aa66970b281b4a325dc68f407b9_Out_2_Float;
|
|
Unity_Multiply_float_float(_Multiply_77421b936cb9d68299ef6791b83fa867_Out_2_Float, _Multiply_37a341e0d9783683aa8d5b7001acced1_Out_2_Float, _Multiply_02fa8aa66970b281b4a325dc68f407b9_Out_2_Float);
|
|
UnityTexture2D _Property_fd2df7ee33755280948b4c47585d4323_Out_0_Texture2D = UnityBuildTexture2DStructNoScale(_CoverMaskMap);
|
|
Bindings_TriplanarNM_bc609ed95f52591469ab35dbfe0efcea_float _TriplanarNM_e307cfdc6531d2838aa3dfa51fc3913f;
|
|
_TriplanarNM_e307cfdc6531d2838aa3dfa51fc3913f.WorldSpaceNormal = IN.WorldSpaceNormal;
|
|
_TriplanarNM_e307cfdc6531d2838aa3dfa51fc3913f.AbsoluteWorldSpacePosition = IN.AbsoluteWorldSpacePosition;
|
|
float4 _TriplanarNM_e307cfdc6531d2838aa3dfa51fc3913f_XYZ_1_Vector4;
|
|
float4 _TriplanarNM_e307cfdc6531d2838aa3dfa51fc3913f_XZ_2_Vector4;
|
|
float4 _TriplanarNM_e307cfdc6531d2838aa3dfa51fc3913f_YZ_3_Vector4;
|
|
float4 _TriplanarNM_e307cfdc6531d2838aa3dfa51fc3913f_XY_4_Vector4;
|
|
SG_TriplanarNM_bc609ed95f52591469ab35dbfe0efcea_float(_Property_fd2df7ee33755280948b4c47585d4323_Out_0_Texture2D, (_Divide_1fe314f1ca9dd78fbf366bbeb40e4ccf_Out_2_Vector4).x, _Property_ee792eccbb538a878b19be5db264531e_Out_0_Float, UnityBuildSamplerStateStruct(SamplerState_Linear_Repeat_Aniso8), _TriplanarNM_e307cfdc6531d2838aa3dfa51fc3913f, _TriplanarNM_e307cfdc6531d2838aa3dfa51fc3913f_XYZ_1_Vector4, _TriplanarNM_e307cfdc6531d2838aa3dfa51fc3913f_XZ_2_Vector4, _TriplanarNM_e307cfdc6531d2838aa3dfa51fc3913f_YZ_3_Vector4, _TriplanarNM_e307cfdc6531d2838aa3dfa51fc3913f_XY_4_Vector4);
|
|
float _Split_fe834aed1172f284a73d2d6810bdb696_R_1_Float = _TriplanarNM_e307cfdc6531d2838aa3dfa51fc3913f_XYZ_1_Vector4[0];
|
|
float _Split_fe834aed1172f284a73d2d6810bdb696_G_2_Float = _TriplanarNM_e307cfdc6531d2838aa3dfa51fc3913f_XYZ_1_Vector4[1];
|
|
float _Split_fe834aed1172f284a73d2d6810bdb696_B_3_Float = _TriplanarNM_e307cfdc6531d2838aa3dfa51fc3913f_XYZ_1_Vector4[2];
|
|
float _Split_fe834aed1172f284a73d2d6810bdb696_A_4_Float = _TriplanarNM_e307cfdc6531d2838aa3dfa51fc3913f_XYZ_1_Vector4[3];
|
|
float _Property_b5f7a30c2ea202858ea263fd2a5a46c6_Out_0_Float = _CoverHeightMapMin;
|
|
float _Property_f86678f1d28c0483ba1ddccf49ee52f7_Out_0_Float = _CoverHeightMapMax;
|
|
float2 _Vector2_b5c01a0d88900d87a8a819b340151fb6_Out_0_Vector2 = float2(_Property_b5f7a30c2ea202858ea263fd2a5a46c6_Out_0_Float, _Property_f86678f1d28c0483ba1ddccf49ee52f7_Out_0_Float);
|
|
float _Property_82b4f7f3bf3b4382bd69876479a9e350_Out_0_Float = _CoverHeightMapOffset;
|
|
float2 _Add_6020f54fd1e6798e8e76bfdcad62759a_Out_2_Vector2;
|
|
Unity_Add_float2(_Vector2_b5c01a0d88900d87a8a819b340151fb6_Out_0_Vector2, (_Property_82b4f7f3bf3b4382bd69876479a9e350_Out_0_Float.xx), _Add_6020f54fd1e6798e8e76bfdcad62759a_Out_2_Vector2);
|
|
float _Remap_65ceff40294d1e8aae6051445b9fdbc8_Out_3_Float;
|
|
Unity_Remap_float(_Split_fe834aed1172f284a73d2d6810bdb696_B_3_Float, float2 (0, 1), _Add_6020f54fd1e6798e8e76bfdcad62759a_Out_2_Vector2, _Remap_65ceff40294d1e8aae6051445b9fdbc8_Out_3_Float);
|
|
float _Multiply_bb0edd30580dba8b89213d9c5b1ef857_Out_2_Float;
|
|
Unity_Multiply_float_float(_Multiply_02fa8aa66970b281b4a325dc68f407b9_Out_2_Float, _Remap_65ceff40294d1e8aae6051445b9fdbc8_Out_3_Float, _Multiply_bb0edd30580dba8b89213d9c5b1ef857_Out_2_Float);
|
|
float _Multiply_484dd7b77d58aa88bf99c82cfe77c774_Out_2_Float;
|
|
Unity_Multiply_float_float(_Split_2ada595651635e8d97bf4b82f717fcc6_G_2_Float, _Multiply_bb0edd30580dba8b89213d9c5b1ef857_Out_2_Float, _Multiply_484dd7b77d58aa88bf99c82cfe77c774_Out_2_Float);
|
|
float _Saturate_d39fa9bab8cc8a8fa35db28d4dbc74ab_Out_1_Float;
|
|
Unity_Saturate_float(_Multiply_484dd7b77d58aa88bf99c82cfe77c774_Out_2_Float, _Saturate_d39fa9bab8cc8a8fa35db28d4dbc74ab_Out_1_Float);
|
|
float _Multiply_6957741a4923cc8db84ac72df2e194a8_Out_2_Float;
|
|
Unity_Multiply_float_float(_Clamp_07a501c22c6e188199bed73412ac8926_Out_3_Float, _Saturate_d39fa9bab8cc8a8fa35db28d4dbc74ab_Out_1_Float, _Multiply_6957741a4923cc8db84ac72df2e194a8_Out_2_Float);
|
|
float _Branch_3ccf365d359214809d30b6430d863e3f_Out_3_Float;
|
|
Unity_Branch_float(_Property_cb0b6597aee47880b32e852aaa0e4a71_Out_0_Boolean, _Multiply_6957741a4923cc8db84ac72df2e194a8_Out_2_Float, _Clamp_07a501c22c6e188199bed73412ac8926_Out_3_Float, _Branch_3ccf365d359214809d30b6430d863e3f_Out_3_Float);
|
|
float3 _Lerp_ee1b6587de2afe82942e8476d303d598_Out_3_Vector3;
|
|
Unity_Lerp_float3(_BlendOverlayBaseColor_369c0b6a02e62b809dc5c6ac1efddde2_OutVector4_1_Vector3, _BlendOverlayBaseColor_ec1f397271cc818abdb95188914e6b4d_OutVector4_1_Vector3, (_Branch_3ccf365d359214809d30b6430d863e3f_Out_3_Float.xxx), _Lerp_ee1b6587de2afe82942e8476d303d598_Out_3_Vector3);
|
|
float4 _Property_c500db71e51fef8daff29f346c122e57_Out_0_Vector4 = _WetColor;
|
|
float3 _Multiply_89461014b078f787a0724725c54fb934_Out_2_Vector3;
|
|
Unity_Multiply_float3_float3((_Property_c500db71e51fef8daff29f346c122e57_Out_0_Vector4.xyz), _Lerp_ee1b6587de2afe82942e8476d303d598_Out_3_Vector3, _Multiply_89461014b078f787a0724725c54fb934_Out_2_Vector3);
|
|
float _OneMinus_e16dfb812ec64b8891c541171687142f_Out_1_Float;
|
|
Unity_OneMinus_float(_Split_2ada595651635e8d97bf4b82f717fcc6_R_1_Float, _OneMinus_e16dfb812ec64b8891c541171687142f_Out_1_Float);
|
|
float3 _Lerp_43bc7a9493df5a829abf080ee4ad3298_Out_3_Vector3;
|
|
Unity_Lerp_float3(_Lerp_ee1b6587de2afe82942e8476d303d598_Out_3_Vector3, _Multiply_89461014b078f787a0724725c54fb934_Out_2_Vector3, (_OneMinus_e16dfb812ec64b8891c541171687142f_Out_1_Float.xxx), _Lerp_43bc7a9493df5a829abf080ee4ad3298_Out_3_Vector3);
|
|
UnityTexture2D _Property_8e909eb873a4cd8e9af98a90a84fdde8_Out_0_Texture2D = UnityBuildTexture2DStructNoScale(_BaseMaskMap);
|
|
Bindings_TriplanarNM_bc609ed95f52591469ab35dbfe0efcea_float _TriplanarNM_52e6c67b7de4708f80a463a880607c97;
|
|
_TriplanarNM_52e6c67b7de4708f80a463a880607c97.WorldSpaceNormal = IN.WorldSpaceNormal;
|
|
_TriplanarNM_52e6c67b7de4708f80a463a880607c97.AbsoluteWorldSpacePosition = IN.AbsoluteWorldSpacePosition;
|
|
float4 _TriplanarNM_52e6c67b7de4708f80a463a880607c97_XYZ_1_Vector4;
|
|
float4 _TriplanarNM_52e6c67b7de4708f80a463a880607c97_XZ_2_Vector4;
|
|
float4 _TriplanarNM_52e6c67b7de4708f80a463a880607c97_YZ_3_Vector4;
|
|
float4 _TriplanarNM_52e6c67b7de4708f80a463a880607c97_XY_4_Vector4;
|
|
SG_TriplanarNM_bc609ed95f52591469ab35dbfe0efcea_float(_Property_8e909eb873a4cd8e9af98a90a84fdde8_Out_0_Texture2D, (_Divide_6a90cebe78e620828de587523daaa7e6_Out_2_Vector4).x, _Property_3539de8c698c2981bb3c088d4ec52201_Out_0_Float, UnityBuildSamplerStateStruct(SamplerState_Linear_Repeat_Aniso8), _TriplanarNM_52e6c67b7de4708f80a463a880607c97, _TriplanarNM_52e6c67b7de4708f80a463a880607c97_XYZ_1_Vector4, _TriplanarNM_52e6c67b7de4708f80a463a880607c97_XZ_2_Vector4, _TriplanarNM_52e6c67b7de4708f80a463a880607c97_YZ_3_Vector4, _TriplanarNM_52e6c67b7de4708f80a463a880607c97_XY_4_Vector4);
|
|
float _Split_79d9d761d63eaa8c97fb3cb7fae0c380_R_1_Float = _TriplanarNM_52e6c67b7de4708f80a463a880607c97_XYZ_1_Vector4[0];
|
|
float _Split_79d9d761d63eaa8c97fb3cb7fae0c380_G_2_Float = _TriplanarNM_52e6c67b7de4708f80a463a880607c97_XYZ_1_Vector4[1];
|
|
float _Split_79d9d761d63eaa8c97fb3cb7fae0c380_B_3_Float = _TriplanarNM_52e6c67b7de4708f80a463a880607c97_XYZ_1_Vector4[2];
|
|
float _Split_79d9d761d63eaa8c97fb3cb7fae0c380_A_4_Float = _TriplanarNM_52e6c67b7de4708f80a463a880607c97_XYZ_1_Vector4[3];
|
|
float _Property_b97916566d1fc587b95e8ec7fe8bd775_Out_0_Float = _BaseMetallic;
|
|
float _Multiply_d0c8d83444dbe38588583551936c7394_Out_2_Float;
|
|
Unity_Multiply_float_float(_Split_79d9d761d63eaa8c97fb3cb7fae0c380_R_1_Float, _Property_b97916566d1fc587b95e8ec7fe8bd775_Out_0_Float, _Multiply_d0c8d83444dbe38588583551936c7394_Out_2_Float);
|
|
float _Property_b187bbc548f3378caa8c964ca81707ca_Out_0_Float = _BaseAORemapMin;
|
|
float _Property_f06b327a4a8a7881a968eb399edf1d5c_Out_0_Float = _BaseAORemapMax;
|
|
float2 _Vector2_e267d722f88ada8da2d7edf8f7c0261d_Out_0_Vector2 = float2(_Property_b187bbc548f3378caa8c964ca81707ca_Out_0_Float, _Property_f06b327a4a8a7881a968eb399edf1d5c_Out_0_Float);
|
|
float _Remap_ad3c26564c54aa8cbb2f81aa114b3b78_Out_3_Float;
|
|
Unity_Remap_float(_Split_79d9d761d63eaa8c97fb3cb7fae0c380_G_2_Float, float2 (0, 1), _Vector2_e267d722f88ada8da2d7edf8f7c0261d_Out_0_Vector2, _Remap_ad3c26564c54aa8cbb2f81aa114b3b78_Out_3_Float);
|
|
float _Property_9a46e81c228dd0858cfdfc248fcb5efd_Out_0_Float = _BaseSmoothnessRemapMin;
|
|
float _Property_4bb3b70a3720ae8ea49e0f195b665d1f_Out_0_Float = _BaseSmoothnessRemapMax;
|
|
float2 _Vector2_6cef82af5d99208da4f2447a8ae60b4b_Out_0_Vector2 = float2(_Property_9a46e81c228dd0858cfdfc248fcb5efd_Out_0_Float, _Property_4bb3b70a3720ae8ea49e0f195b665d1f_Out_0_Float);
|
|
float _Remap_e30adbbf5d116285964ef079df15b895_Out_3_Float;
|
|
Unity_Remap_float(_Split_79d9d761d63eaa8c97fb3cb7fae0c380_A_4_Float, float2 (0, 1), _Vector2_6cef82af5d99208da4f2447a8ae60b4b_Out_0_Vector2, _Remap_e30adbbf5d116285964ef079df15b895_Out_3_Float);
|
|
float _Multiply_794172f65d2acd8981bc0e2ecc71376e_Out_2_Float;
|
|
Unity_Multiply_float_float(_SampleTexture2D_4bd08411faa60c828847f2247f06a809_B_6_Float, 2, _Multiply_794172f65d2acd8981bc0e2ecc71376e_Out_2_Float);
|
|
float _Add_dedefe53d91ea08c81d7a6d9071b0263_Out_2_Float;
|
|
Unity_Add_float(_Multiply_794172f65d2acd8981bc0e2ecc71376e_Out_2_Float, float(-1), _Add_dedefe53d91ea08c81d7a6d9071b0263_Out_2_Float);
|
|
float _Property_039bed9aac95ec8fa510fea3c4904280_Out_0_Float = _DetailSmoothnessScale;
|
|
float _Multiply_eb0a55c9be8cee86b9847c24f0e5be60_Out_2_Float;
|
|
Unity_Multiply_float_float(_Add_dedefe53d91ea08c81d7a6d9071b0263_Out_2_Float, _Property_039bed9aac95ec8fa510fea3c4904280_Out_0_Float, _Multiply_eb0a55c9be8cee86b9847c24f0e5be60_Out_2_Float);
|
|
float _Saturate_ca849f42c1cc238cb8fb1eb04fbfb9dd_Out_1_Float;
|
|
Unity_Saturate_float(_Multiply_eb0a55c9be8cee86b9847c24f0e5be60_Out_2_Float, _Saturate_ca849f42c1cc238cb8fb1eb04fbfb9dd_Out_1_Float);
|
|
float _Absolute_bc7994d4f833e382b37b5718ee583259_Out_1_Float;
|
|
Unity_Absolute_float(_Saturate_ca849f42c1cc238cb8fb1eb04fbfb9dd_Out_1_Float, _Absolute_bc7994d4f833e382b37b5718ee583259_Out_1_Float);
|
|
Bindings_BlendOverlayDetailSmoothness_06e12138dc89c0040b45a57abe520a1a_float _BlendOverlayDetailSmoothness_5a03404db5a34885a089f1aee363667f;
|
|
float _BlendOverlayDetailSmoothness_5a03404db5a34885a089f1aee363667f_SmoothnessOverlay_1_Float;
|
|
SG_BlendOverlayDetailSmoothness_06e12138dc89c0040b45a57abe520a1a_float(_Remap_e30adbbf5d116285964ef079df15b895_Out_3_Float, _Add_dedefe53d91ea08c81d7a6d9071b0263_Out_2_Float, _Absolute_bc7994d4f833e382b37b5718ee583259_Out_1_Float, _BlendOverlayDetailSmoothness_5a03404db5a34885a089f1aee363667f, _BlendOverlayDetailSmoothness_5a03404db5a34885a089f1aee363667f_SmoothnessOverlay_1_Float);
|
|
float _Saturate_3d6c6d852202408cb9b11aac8a566c89_Out_1_Float;
|
|
Unity_Saturate_float(_BlendOverlayDetailSmoothness_5a03404db5a34885a089f1aee363667f_SmoothnessOverlay_1_Float, _Saturate_3d6c6d852202408cb9b11aac8a566c89_Out_1_Float);
|
|
float3 _Vector3_8ed406a0096de4818282676bf24b1a85_Out_0_Vector3 = float3(_Multiply_d0c8d83444dbe38588583551936c7394_Out_2_Float, _Remap_ad3c26564c54aa8cbb2f81aa114b3b78_Out_3_Float, _Saturate_3d6c6d852202408cb9b11aac8a566c89_Out_1_Float);
|
|
float _Split_2ec5937af5023a8295e3858d32b193d5_R_1_Float = _Vector3_8ed406a0096de4818282676bf24b1a85_Out_0_Vector3[0];
|
|
float _Split_2ec5937af5023a8295e3858d32b193d5_G_2_Float = _Vector3_8ed406a0096de4818282676bf24b1a85_Out_0_Vector3[1];
|
|
float _Split_2ec5937af5023a8295e3858d32b193d5_B_3_Float = _Vector3_8ed406a0096de4818282676bf24b1a85_Out_0_Vector3[2];
|
|
float _Split_2ec5937af5023a8295e3858d32b193d5_A_4_Float = 0;
|
|
UnityTexture2D _Property_0f50abb140882d848d9fc7be8e3468dc_Out_0_Texture2D = UnityBuildTexture2DStructNoScale(_ShapeAO);
|
|
float4 _SampleTexture2D_33392602b94694898ec8227a89f13cc9_RGBA_0_Vector4 = SAMPLE_TEXTURE2D(_Property_0f50abb140882d848d9fc7be8e3468dc_Out_0_Texture2D.tex, _Property_0f50abb140882d848d9fc7be8e3468dc_Out_0_Texture2D.samplerstate, _Property_0f50abb140882d848d9fc7be8e3468dc_Out_0_Texture2D.GetTransformedUV(IN.uv0.xy) );
|
|
float _SampleTexture2D_33392602b94694898ec8227a89f13cc9_R_4_Float = _SampleTexture2D_33392602b94694898ec8227a89f13cc9_RGBA_0_Vector4.r;
|
|
float _SampleTexture2D_33392602b94694898ec8227a89f13cc9_G_5_Float = _SampleTexture2D_33392602b94694898ec8227a89f13cc9_RGBA_0_Vector4.g;
|
|
float _SampleTexture2D_33392602b94694898ec8227a89f13cc9_B_6_Float = _SampleTexture2D_33392602b94694898ec8227a89f13cc9_RGBA_0_Vector4.b;
|
|
float _SampleTexture2D_33392602b94694898ec8227a89f13cc9_A_7_Float = _SampleTexture2D_33392602b94694898ec8227a89f13cc9_RGBA_0_Vector4.a;
|
|
float _Property_a51c4b6d05e6718d919aadcf26153350_Out_0_Float = _ShapeAORemapMin;
|
|
float _Property_973fbc42b7a69088b9fc2c502945f369_Out_0_Float = _ShapeAORemapMax;
|
|
float2 _Vector2_a73753c5a8c4fa828d2eb25d4fb8b399_Out_0_Vector2 = float2(_Property_a51c4b6d05e6718d919aadcf26153350_Out_0_Float, _Property_973fbc42b7a69088b9fc2c502945f369_Out_0_Float);
|
|
float _Remap_270e7e207f303487bc04348b1b54db69_Out_3_Float;
|
|
Unity_Remap_float(_SampleTexture2D_33392602b94694898ec8227a89f13cc9_G_5_Float, float2 (0, 1), _Vector2_a73753c5a8c4fa828d2eb25d4fb8b399_Out_0_Vector2, _Remap_270e7e207f303487bc04348b1b54db69_Out_3_Float);
|
|
float _Minimum_307d1a8c4f5c6a87a1bbc658a5811679_Out_2_Float;
|
|
Unity_Minimum_float(_Split_2ec5937af5023a8295e3858d32b193d5_G_2_Float, _Remap_270e7e207f303487bc04348b1b54db69_Out_3_Float, _Minimum_307d1a8c4f5c6a87a1bbc658a5811679_Out_2_Float);
|
|
float3 _Vector3_fac10bf467f5ff82b4f071ba165bf458_Out_0_Vector3 = float3(_Split_2ec5937af5023a8295e3858d32b193d5_R_1_Float, _Minimum_307d1a8c4f5c6a87a1bbc658a5811679_Out_2_Float, _Split_2ec5937af5023a8295e3858d32b193d5_B_3_Float);
|
|
float _Property_fa6937565be49684915e6bb999529949_Out_0_Float = _CoverMetallic;
|
|
float _Multiply_d0ecb787fa289f8f9d3c2988d60f18d3_Out_2_Float;
|
|
Unity_Multiply_float_float(_Split_fe834aed1172f284a73d2d6810bdb696_R_1_Float, _Property_fa6937565be49684915e6bb999529949_Out_0_Float, _Multiply_d0ecb787fa289f8f9d3c2988d60f18d3_Out_2_Float);
|
|
float _Property_8f5ca0ba38d2a4858c1b4e44f6a375b4_Out_0_Float = _CoverAORemapMin;
|
|
float _Property_a15ef0fe46e1d88f9e20df6605bd1499_Out_0_Float = _CoverAORemapMax;
|
|
float2 _Vector2_969d809c2de99f89959cc4526a665db9_Out_0_Vector2 = float2(_Property_8f5ca0ba38d2a4858c1b4e44f6a375b4_Out_0_Float, _Property_a15ef0fe46e1d88f9e20df6605bd1499_Out_0_Float);
|
|
float _Remap_1b6065f44329038594e2d0cf001fa138_Out_3_Float;
|
|
Unity_Remap_float(_Split_fe834aed1172f284a73d2d6810bdb696_G_2_Float, float2 (0, 1), _Vector2_969d809c2de99f89959cc4526a665db9_Out_0_Vector2, _Remap_1b6065f44329038594e2d0cf001fa138_Out_3_Float);
|
|
float _Property_0fde68fd9824db8e9f5b4b0daff90270_Out_0_Float = _CoverSmoothnessRemapMin;
|
|
float _Property_abad1da00caf99869e0c9ca2926c76bd_Out_0_Float = _CoverSmoothnessRemapMax;
|
|
float2 _Vector2_1aa81c2ad7cc268caa834889569ce556_Out_0_Vector2 = float2(_Property_0fde68fd9824db8e9f5b4b0daff90270_Out_0_Float, _Property_abad1da00caf99869e0c9ca2926c76bd_Out_0_Float);
|
|
float _Remap_4948cd1fb38399888e9567ee2abb8acd_Out_3_Float;
|
|
Unity_Remap_float(_Split_fe834aed1172f284a73d2d6810bdb696_A_4_Float, float2 (0, 1), _Vector2_1aa81c2ad7cc268caa834889569ce556_Out_0_Vector2, _Remap_4948cd1fb38399888e9567ee2abb8acd_Out_3_Float);
|
|
float _Multiply_d3e207dba42f1984aacff3c1bf4eef0b_Out_2_Float;
|
|
Unity_Multiply_float_float(_SampleTexture2D_4bd08411faa60c828847f2247f06a809_B_6_Float, 2, _Multiply_d3e207dba42f1984aacff3c1bf4eef0b_Out_2_Float);
|
|
float _Add_0299d632f81fff8f969a0eed5f77397c_Out_2_Float;
|
|
Unity_Add_float(_Multiply_d3e207dba42f1984aacff3c1bf4eef0b_Out_2_Float, float(-1), _Add_0299d632f81fff8f969a0eed5f77397c_Out_2_Float);
|
|
float _Property_a2c7556e96b60b8e90cb5145ca6f9dde_Out_0_Float = _DetailCoverSmoothnessScale;
|
|
float _Multiply_d340fbee0985958dbb66555a73bd733c_Out_2_Float;
|
|
Unity_Multiply_float_float(_Add_0299d632f81fff8f969a0eed5f77397c_Out_2_Float, _Property_a2c7556e96b60b8e90cb5145ca6f9dde_Out_0_Float, _Multiply_d340fbee0985958dbb66555a73bd733c_Out_2_Float);
|
|
float _Saturate_2c0cc920be0ca88e937ec108b38f5fde_Out_1_Float;
|
|
Unity_Saturate_float(_Multiply_d340fbee0985958dbb66555a73bd733c_Out_2_Float, _Saturate_2c0cc920be0ca88e937ec108b38f5fde_Out_1_Float);
|
|
float _Absolute_3f81290e941e378283f7151c4a0731e2_Out_1_Float;
|
|
Unity_Absolute_float(_Saturate_2c0cc920be0ca88e937ec108b38f5fde_Out_1_Float, _Absolute_3f81290e941e378283f7151c4a0731e2_Out_1_Float);
|
|
Bindings_BlendOverlayDetailSmoothness_06e12138dc89c0040b45a57abe520a1a_float _BlendOverlayDetailSmoothness_e7a4fbe98378f084bd09f6e5d90e1cb8;
|
|
float _BlendOverlayDetailSmoothness_e7a4fbe98378f084bd09f6e5d90e1cb8_SmoothnessOverlay_1_Float;
|
|
SG_BlendOverlayDetailSmoothness_06e12138dc89c0040b45a57abe520a1a_float(_Remap_4948cd1fb38399888e9567ee2abb8acd_Out_3_Float, _Add_0299d632f81fff8f969a0eed5f77397c_Out_2_Float, _Absolute_3f81290e941e378283f7151c4a0731e2_Out_1_Float, _BlendOverlayDetailSmoothness_e7a4fbe98378f084bd09f6e5d90e1cb8, _BlendOverlayDetailSmoothness_e7a4fbe98378f084bd09f6e5d90e1cb8_SmoothnessOverlay_1_Float);
|
|
float _Saturate_9091ea9d9924c682ad6b94d3322ee822_Out_1_Float;
|
|
Unity_Saturate_float(_BlendOverlayDetailSmoothness_e7a4fbe98378f084bd09f6e5d90e1cb8_SmoothnessOverlay_1_Float, _Saturate_9091ea9d9924c682ad6b94d3322ee822_Out_1_Float);
|
|
float3 _Vector3_93bafe600474e7819ebc13e534b986bf_Out_0_Vector3 = float3(_Multiply_d0ecb787fa289f8f9d3c2988d60f18d3_Out_2_Float, _Remap_1b6065f44329038594e2d0cf001fa138_Out_3_Float, _Saturate_9091ea9d9924c682ad6b94d3322ee822_Out_1_Float);
|
|
float _Split_6ec9cc5e56f3f68ba37ff91557979c18_R_1_Float = _Vector3_93bafe600474e7819ebc13e534b986bf_Out_0_Vector3[0];
|
|
float _Split_6ec9cc5e56f3f68ba37ff91557979c18_G_2_Float = _Vector3_93bafe600474e7819ebc13e534b986bf_Out_0_Vector3[1];
|
|
float _Split_6ec9cc5e56f3f68ba37ff91557979c18_B_3_Float = _Vector3_93bafe600474e7819ebc13e534b986bf_Out_0_Vector3[2];
|
|
float _Split_6ec9cc5e56f3f68ba37ff91557979c18_A_4_Float = 0;
|
|
float _Property_ca9c61425ece6b8c909c06b1e2738f1a_Out_0_Float = _CoverShapeAORemapMin;
|
|
float _Property_b9be92f1612c908d80643f0e96015b33_Out_0_Float = _CoverShapeAORemapMax;
|
|
float2 _Vector2_9b862c4e147d1082afad3606339d2130_Out_0_Vector2 = float2(_Property_ca9c61425ece6b8c909c06b1e2738f1a_Out_0_Float, _Property_b9be92f1612c908d80643f0e96015b33_Out_0_Float);
|
|
float _Remap_c1f0022add809b83bad7b493177bddb7_Out_3_Float;
|
|
Unity_Remap_float(_SampleTexture2D_33392602b94694898ec8227a89f13cc9_G_5_Float, float2 (0, 1), _Vector2_9b862c4e147d1082afad3606339d2130_Out_0_Vector2, _Remap_c1f0022add809b83bad7b493177bddb7_Out_3_Float);
|
|
float _Minimum_595c2f31bb0ec588977a2b9ea46bf6b0_Out_2_Float;
|
|
Unity_Minimum_float(_Split_6ec9cc5e56f3f68ba37ff91557979c18_G_2_Float, _Remap_c1f0022add809b83bad7b493177bddb7_Out_3_Float, _Minimum_595c2f31bb0ec588977a2b9ea46bf6b0_Out_2_Float);
|
|
float3 _Vector3_6cb5b2c4675bb28cb41ea88b6eaa2aff_Out_0_Vector3 = float3(_Split_6ec9cc5e56f3f68ba37ff91557979c18_R_1_Float, _Minimum_595c2f31bb0ec588977a2b9ea46bf6b0_Out_2_Float, _Split_6ec9cc5e56f3f68ba37ff91557979c18_B_3_Float);
|
|
float3 _Lerp_fa40b54f3d5a1a8a95f6306e837b9338_Out_3_Vector3;
|
|
Unity_Lerp_float3(_Vector3_fac10bf467f5ff82b4f071ba165bf458_Out_0_Vector3, _Vector3_6cb5b2c4675bb28cb41ea88b6eaa2aff_Out_0_Vector3, (_Branch_3ccf365d359214809d30b6430d863e3f_Out_3_Float.xxx), _Lerp_fa40b54f3d5a1a8a95f6306e837b9338_Out_3_Vector3);
|
|
float _Split_c4a5352a58a4f88fb40410f956825dc6_R_1_Float = _Lerp_fa40b54f3d5a1a8a95f6306e837b9338_Out_3_Vector3[0];
|
|
float _Split_c4a5352a58a4f88fb40410f956825dc6_G_2_Float = _Lerp_fa40b54f3d5a1a8a95f6306e837b9338_Out_3_Vector3[1];
|
|
float _Split_c4a5352a58a4f88fb40410f956825dc6_B_3_Float = _Lerp_fa40b54f3d5a1a8a95f6306e837b9338_Out_3_Vector3[2];
|
|
float _Split_c4a5352a58a4f88fb40410f956825dc6_A_4_Float = 0;
|
|
float _Property_7861e880056eb88ab923a2ff5b12179d_Out_0_Float = _WetSmoothness;
|
|
float _Lerp_ee63160826cff4869f0e63568dd6f8b7_Out_3_Float;
|
|
Unity_Lerp_float(_Split_c4a5352a58a4f88fb40410f956825dc6_B_3_Float, _Property_7861e880056eb88ab923a2ff5b12179d_Out_0_Float, _OneMinus_e16dfb812ec64b8891c541171687142f_Out_1_Float, _Lerp_ee63160826cff4869f0e63568dd6f8b7_Out_3_Float);
|
|
float _Property_1c389d922d4fba86bc62c7d42ac8643d_Out_0_Float = _CoverNormalScale;
|
|
float3 _NormalStrength_db3de71f618fee878c84a13374c7adc4_Out_2_Vector3;
|
|
Unity_NormalStrength_float((_TriplanarNMn_ba7e211dd8095589a2939b5b239ca8e0_XYZ_1_Vector4.xyz), _Property_1c389d922d4fba86bc62c7d42ac8643d_Out_0_Float, _NormalStrength_db3de71f618fee878c84a13374c7adc4_Out_2_Vector3);
|
|
float3 _NormalBlend_b2e537e7a99f9280ba682b47daf3c5e3_Out_2_Vector3;
|
|
Unity_NormalBlend_float(_NormalStrength_db3de71f618fee878c84a13374c7adc4_Out_2_Vector3, _NormalStrength_401cd5af500bd68dbc9bca19d548d0db_Out_2_Vector3, _NormalBlend_b2e537e7a99f9280ba682b47daf3c5e3_Out_2_Vector3);
|
|
float2 _Vector2_b87489f8633d268598edb76163057164_Out_0_Vector2 = float2(_SampleTexture2D_4bd08411faa60c828847f2247f06a809_A_7_Float, _SampleTexture2D_4bd08411faa60c828847f2247f06a809_G_5_Float);
|
|
float2 _Multiply_95e603bb6d4bd7809de0ae42c8f45058_Out_2_Vector2;
|
|
Unity_Multiply_float2_float2(_Vector2_b87489f8633d268598edb76163057164_Out_0_Vector2, float2(2, 2), _Multiply_95e603bb6d4bd7809de0ae42c8f45058_Out_2_Vector2);
|
|
float2 _Add_c116ac3906ccf68d82dd5b73d0f5659a_Out_2_Vector2;
|
|
Unity_Add_float2(_Multiply_95e603bb6d4bd7809de0ae42c8f45058_Out_2_Vector2, float2(-1, -1), _Add_c116ac3906ccf68d82dd5b73d0f5659a_Out_2_Vector2);
|
|
float _Property_988acb131fd330878b4ac0672366ad90_Out_0_Float = _DetailCoverNormalScale;
|
|
float2 _Multiply_6de1a79215e1928f9f3fc3293df74f88_Out_2_Vector2;
|
|
Unity_Multiply_float2_float2(_Add_c116ac3906ccf68d82dd5b73d0f5659a_Out_2_Vector2, (_Property_988acb131fd330878b4ac0672366ad90_Out_0_Float.xx), _Multiply_6de1a79215e1928f9f3fc3293df74f88_Out_2_Vector2);
|
|
float _Split_9ce53bb7a65f16809b6a95d82286186e_R_1_Float = _Multiply_6de1a79215e1928f9f3fc3293df74f88_Out_2_Vector2[0];
|
|
float _Split_9ce53bb7a65f16809b6a95d82286186e_G_2_Float = _Multiply_6de1a79215e1928f9f3fc3293df74f88_Out_2_Vector2[1];
|
|
float _Split_9ce53bb7a65f16809b6a95d82286186e_B_3_Float = 0;
|
|
float _Split_9ce53bb7a65f16809b6a95d82286186e_A_4_Float = 0;
|
|
float _DotProduct_8912687db556b6819d2a38ba8511a7ae_Out_2_Float;
|
|
Unity_DotProduct_float2(_Multiply_6de1a79215e1928f9f3fc3293df74f88_Out_2_Vector2, _Multiply_6de1a79215e1928f9f3fc3293df74f88_Out_2_Vector2, _DotProduct_8912687db556b6819d2a38ba8511a7ae_Out_2_Float);
|
|
float _Saturate_013ea9a02a1ff18992540b270836cc73_Out_1_Float;
|
|
Unity_Saturate_float(_DotProduct_8912687db556b6819d2a38ba8511a7ae_Out_2_Float, _Saturate_013ea9a02a1ff18992540b270836cc73_Out_1_Float);
|
|
float _OneMinus_eefd2695dc7d77838984fc25a1c00b0b_Out_1_Float;
|
|
Unity_OneMinus_float(_Saturate_013ea9a02a1ff18992540b270836cc73_Out_1_Float, _OneMinus_eefd2695dc7d77838984fc25a1c00b0b_Out_1_Float);
|
|
float _SquareRoot_1d25cc71b4ce9286af1666a96ae6ac5a_Out_1_Float;
|
|
Unity_SquareRoot_float(_OneMinus_eefd2695dc7d77838984fc25a1c00b0b_Out_1_Float, _SquareRoot_1d25cc71b4ce9286af1666a96ae6ac5a_Out_1_Float);
|
|
float3 _Vector3_c3d9c7e92a1c5b8ea5650ab3bb421c27_Out_0_Vector3 = float3(_Split_9ce53bb7a65f16809b6a95d82286186e_R_1_Float, _Split_9ce53bb7a65f16809b6a95d82286186e_G_2_Float, _SquareRoot_1d25cc71b4ce9286af1666a96ae6ac5a_Out_1_Float);
|
|
float3 _NormalBlend_8e1d1c87f8c12b87b64883533bfa43be_Out_2_Vector3;
|
|
Unity_NormalBlend_float(_NormalBlend_b2e537e7a99f9280ba682b47daf3c5e3_Out_2_Vector3, _Vector3_c3d9c7e92a1c5b8ea5650ab3bb421c27_Out_0_Vector3, _NormalBlend_8e1d1c87f8c12b87b64883533bfa43be_Out_2_Vector3);
|
|
float3 _Lerp_48cd568fef7d358b8d65b989db745e6c_Out_3_Vector3;
|
|
Unity_Lerp_float3(_NormalBlend_4242e1b4a785378aa59dd49e9d993ffc_Out_2_Vector3, _NormalBlend_8e1d1c87f8c12b87b64883533bfa43be_Out_2_Vector3, (_Branch_3ccf365d359214809d30b6430d863e3f_Out_3_Float.xxx), _Lerp_48cd568fef7d358b8d65b989db745e6c_Out_3_Vector3);
|
|
surface.BaseColor = _Lerp_43bc7a9493df5a829abf080ee4ad3298_Out_3_Vector3;
|
|
surface.Emission = float3(0, 0, 0);
|
|
surface.Alpha = float(1);
|
|
surface.BentNormal = IN.TangentSpaceNormal;
|
|
surface.Smoothness = _Lerp_ee63160826cff4869f0e63568dd6f8b7_Out_3_Float;
|
|
surface.Occlusion = _Split_c4a5352a58a4f88fb40410f956825dc6_G_2_Float;
|
|
surface.NormalTS = _Lerp_48cd568fef7d358b8d65b989db745e6c_Out_3_Vector3;
|
|
surface.Metallic = _Split_c4a5352a58a4f88fb40410f956825dc6_R_1_Float;
|
|
return surface;
|
|
}
|
|
|
|
// --------------------------------------------------
|
|
// Build Graph Inputs
|
|
#ifdef HAVE_VFX_MODIFICATION
|
|
#define VFX_SRP_ATTRIBUTES AttributesMesh
|
|
#define VaryingsMeshType VaryingsMeshToPS
|
|
#define VFX_SRP_VARYINGS VaryingsMeshType
|
|
#define VFX_SRP_SURFACE_INPUTS FragInputs
|
|
#endif
|
|
SurfaceDescriptionInputs FragInputsToSurfaceDescriptionInputs(FragInputs input, float3 viewWS)
|
|
{
|
|
SurfaceDescriptionInputs output;
|
|
ZERO_INITIALIZE(SurfaceDescriptionInputs, output);
|
|
|
|
output.WorldSpaceNormal = normalize(input.tangentToWorld[2].xyz);
|
|
#if defined(SHADER_STAGE_RAY_TRACING)
|
|
#else
|
|
#endif
|
|
output.TangentSpaceNormal = float3(0.0f, 0.0f, 1.0f);
|
|
output.WorldSpaceTangent = input.tangentToWorld[0].xyz;
|
|
output.WorldSpaceBiTangent = input.tangentToWorld[1].xyz;
|
|
output.AbsoluteWorldSpacePosition = GetAbsolutePositionWS(input.positionRWS);
|
|
|
|
#if UNITY_UV_STARTS_AT_TOP
|
|
#else
|
|
#endif
|
|
|
|
|
|
output.uv0 = input.texCoord0;
|
|
output.VertexColor = input.color;
|
|
|
|
// splice point to copy frag inputs custom interpolator pack into the SDI
|
|
/* WARNING: $splice Could not find named fragment 'CustomInterpolatorCopyToSDI' */
|
|
|
|
return output;
|
|
}
|
|
|
|
// --------------------------------------------------
|
|
// Build Surface Data (Specific Material)
|
|
|
|
void ApplyDecalToSurfaceDataNoNormal(DecalSurfaceData decalSurfaceData, inout SurfaceData surfaceData);
|
|
|
|
void ApplyDecalAndGetNormal(FragInputs fragInputs, PositionInputs posInput, SurfaceDescription surfaceDescription,
|
|
inout SurfaceData surfaceData)
|
|
{
|
|
float3 doubleSidedConstants = GetDoubleSidedConstants();
|
|
|
|
#ifdef DECAL_NORMAL_BLENDING
|
|
// SG nodes don't ouptut surface gradients, so if decals require surf grad blending, we have to convert
|
|
// the normal to gradient before applying the decal. We then have to resolve the gradient back to world space
|
|
float3 normalTS;
|
|
|
|
normalTS = SurfaceGradientFromTangentSpaceNormalAndFromTBN(surfaceDescription.NormalTS,
|
|
fragInputs.tangentToWorld[0], fragInputs.tangentToWorld[1]);
|
|
|
|
|
|
#if HAVE_DECALS
|
|
if (_EnableDecals)
|
|
{
|
|
float alpha = 1.0;
|
|
alpha = surfaceDescription.Alpha;
|
|
|
|
DecalSurfaceData decalSurfaceData = GetDecalSurfaceData(posInput, fragInputs, alpha);
|
|
ApplyDecalToSurfaceNormal(decalSurfaceData, fragInputs.tangentToWorld[2], normalTS);
|
|
ApplyDecalToSurfaceDataNoNormal(decalSurfaceData, surfaceData);
|
|
}
|
|
#endif
|
|
|
|
GetNormalWS_SG(fragInputs, normalTS, surfaceData.normalWS, doubleSidedConstants);
|
|
#else
|
|
// normal delivered to master node
|
|
GetNormalWS(fragInputs, surfaceDescription.NormalTS, surfaceData.normalWS, doubleSidedConstants);
|
|
|
|
#if HAVE_DECALS
|
|
if (_EnableDecals)
|
|
{
|
|
float alpha = 1.0;
|
|
alpha = surfaceDescription.Alpha;
|
|
|
|
// Both uses and modifies 'surfaceData.normalWS'.
|
|
DecalSurfaceData decalSurfaceData = GetDecalSurfaceData(posInput, fragInputs, alpha);
|
|
ApplyDecalToSurfaceNormal(decalSurfaceData, surfaceData.normalWS.xyz);
|
|
ApplyDecalToSurfaceDataNoNormal(decalSurfaceData, surfaceData);
|
|
}
|
|
#endif
|
|
#endif
|
|
}
|
|
void BuildSurfaceData(FragInputs fragInputs, inout SurfaceDescription surfaceDescription, float3 V, PositionInputs posInput, out SurfaceData surfaceData, out float3 bentNormalWS)
|
|
{
|
|
ZERO_INITIALIZE(SurfaceData, surfaceData);
|
|
|
|
// specularOcclusion need to be init ahead of decal to quiet the compiler that modify the SurfaceData struct
|
|
// however specularOcclusion can come from the graph, so need to be init here so it can be override.
|
|
surfaceData.specularOcclusion = 1.0;
|
|
surfaceData.thickness = 0.0;
|
|
|
|
surfaceData.baseColor = surfaceDescription.BaseColor;
|
|
surfaceData.perceptualSmoothness = surfaceDescription.Smoothness;
|
|
surfaceData.ambientOcclusion = surfaceDescription.Occlusion;
|
|
surfaceData.metallic = surfaceDescription.Metallic;
|
|
|
|
#if defined(_REFRACTION_PLANE) || defined(_REFRACTION_SPHERE) || defined(_REFRACTION_THIN)
|
|
if (_EnableSSRefraction)
|
|
{
|
|
|
|
surfaceData.transmittanceMask = (1.0 - surfaceDescription.Alpha);
|
|
surfaceDescription.Alpha = 1.0;
|
|
}
|
|
else
|
|
{
|
|
surfaceData.ior = 1.0;
|
|
surfaceData.transmittanceColor = float3(1.0, 1.0, 1.0);
|
|
surfaceData.atDistance = 1.0;
|
|
surfaceData.transmittanceMask = 0.0;
|
|
surfaceDescription.Alpha = 1.0;
|
|
}
|
|
#else
|
|
surfaceData.ior = 1.0;
|
|
surfaceData.transmittanceColor = float3(1.0, 1.0, 1.0);
|
|
surfaceData.atDistance = 1.0;
|
|
surfaceData.transmittanceMask = 0.0;
|
|
#endif
|
|
|
|
// These static material feature allow compile time optimization
|
|
surfaceData.materialFeatures = MATERIALFEATUREFLAGS_LIT_STANDARD;
|
|
#ifdef _MATERIAL_FEATURE_SUBSURFACE_SCATTERING
|
|
surfaceData.materialFeatures |= MATERIALFEATUREFLAGS_LIT_SUBSURFACE_SCATTERING;
|
|
#endif
|
|
|
|
#ifdef _MATERIAL_FEATURE_TRANSMISSION
|
|
surfaceData.materialFeatures |= MATERIALFEATUREFLAGS_LIT_TRANSMISSION;
|
|
#endif
|
|
|
|
#ifdef _MATERIAL_FEATURE_COLORED_TRANSMISSION
|
|
surfaceData.materialFeatures |= MATERIALFEATUREFLAGS_LIT_TRANSMISSION;
|
|
surfaceData.materialFeatures |= MATERIALFEATUREFLAGS_LIT_COLORED_TRANSMISSION;
|
|
|
|
#endif
|
|
|
|
#ifdef _MATERIAL_FEATURE_ANISOTROPY
|
|
surfaceData.materialFeatures |= MATERIALFEATUREFLAGS_LIT_ANISOTROPY;
|
|
|
|
// Initialize the normal to something non-zero to avoid a div-zero warning for anisotropy.
|
|
surfaceData.normalWS = float3(0, 1, 0);
|
|
#endif
|
|
|
|
#ifdef _MATERIAL_FEATURE_IRIDESCENCE
|
|
surfaceData.materialFeatures |= MATERIALFEATUREFLAGS_LIT_IRIDESCENCE;
|
|
#endif
|
|
|
|
#ifdef _MATERIAL_FEATURE_SPECULAR_COLOR
|
|
surfaceData.materialFeatures |= MATERIALFEATUREFLAGS_LIT_SPECULAR_COLOR;
|
|
#endif
|
|
|
|
#ifdef _MATERIAL_FEATURE_CLEAR_COAT
|
|
surfaceData.materialFeatures |= MATERIALFEATUREFLAGS_LIT_CLEAR_COAT;
|
|
#endif
|
|
|
|
#if defined (_MATERIAL_FEATURE_SPECULAR_COLOR) && defined (_ENERGY_CONSERVING_SPECULAR)
|
|
// Require to have setup baseColor
|
|
// Reproduce the energy conservation done in legacy Unity. Not ideal but better for compatibility and users can unchek it
|
|
surfaceData.baseColor *= (1.0 - Max3(surfaceData.specularColor.r, surfaceData.specularColor.g, surfaceData.specularColor.b));
|
|
#endif
|
|
|
|
float3 doubleSidedConstants = GetDoubleSidedConstants();
|
|
|
|
ApplyDecalAndGetNormal(fragInputs, posInput, surfaceDescription, surfaceData);
|
|
|
|
surfaceData.geomNormalWS = fragInputs.tangentToWorld[2];
|
|
|
|
surfaceData.tangentWS = normalize(fragInputs.tangentToWorld[0].xyz); // The tangent is not normalize in tangentToWorld for mikkt. TODO: Check if it expected that we normalize with Morten. Tag: SURFACE_GRADIENT
|
|
|
|
|
|
bentNormalWS = surfaceData.normalWS;
|
|
|
|
surfaceData.tangentWS = Orthonormalize(surfaceData.tangentWS, surfaceData.normalWS);
|
|
|
|
#ifdef DEBUG_DISPLAY
|
|
#if !defined(SHADER_STAGE_RAY_TRACING)
|
|
// Mipmap mode debugging isn't supported with ray tracing as it relies on derivatives
|
|
if (_DebugMipMapMode != DEBUGMIPMAPMODE_NONE)
|
|
{
|
|
#ifdef FRAG_INPUTS_USE_TEXCOORD0
|
|
surfaceData.baseColor = GET_TEXTURE_STREAMING_DEBUG(posInput.positionSS, fragInputs.texCoord0);
|
|
#else
|
|
surfaceData.baseColor = GET_TEXTURE_STREAMING_DEBUG_NO_UV(posInput.positionSS);
|
|
#endif
|
|
surfaceData.metallic = 0;
|
|
}
|
|
#endif
|
|
|
|
// We need to call ApplyDebugToSurfaceData after filling the surfaceData and before filling builtinData
|
|
// as it can modify attribute use for static lighting
|
|
ApplyDebugToSurfaceData(fragInputs.tangentToWorld, surfaceData);
|
|
#endif
|
|
|
|
// By default we use the ambient occlusion with Tri-ace trick (apply outside) for specular occlusion.
|
|
// If user provide bent normal then we process a better term
|
|
#if defined(_SPECULAR_OCCLUSION_CUSTOM)
|
|
// Just use the value passed through via the slot (not active otherwise)
|
|
#elif defined(_SPECULAR_OCCLUSION_FROM_AO_BENT_NORMAL)
|
|
// If we have bent normal and ambient occlusion, process a specular occlusion
|
|
surfaceData.specularOcclusion = GetSpecularOcclusionFromBentAO(V, bentNormalWS, surfaceData.normalWS, surfaceData.ambientOcclusion, PerceptualSmoothnessToPerceptualRoughness(surfaceData.perceptualSmoothness));
|
|
#elif defined(_AMBIENT_OCCLUSION) && defined(_SPECULAR_OCCLUSION_FROM_AO)
|
|
surfaceData.specularOcclusion = GetSpecularOcclusionFromAmbientOcclusion(ClampNdotV(dot(surfaceData.normalWS, V)), surfaceData.ambientOcclusion, PerceptualSmoothnessToRoughness(surfaceData.perceptualSmoothness));
|
|
#endif
|
|
|
|
#if defined(_ENABLE_GEOMETRIC_SPECULAR_AA) && !defined(SHADER_STAGE_RAY_TRACING)
|
|
surfaceData.perceptualSmoothness = GeometricNormalFiltering(surfaceData.perceptualSmoothness, fragInputs.tangentToWorld[2], surfaceDescription.SpecularAAScreenSpaceVariance, surfaceDescription.SpecularAAThreshold);
|
|
#endif
|
|
}
|
|
|
|
// --------------------------------------------------
|
|
// Get Surface And BuiltinData
|
|
|
|
void GetSurfaceAndBuiltinData(FragInputs fragInputs, float3 V, inout PositionInputs posInput, out SurfaceData surfaceData, out BuiltinData builtinData RAY_TRACING_OPTIONAL_PARAMETERS)
|
|
{
|
|
// Don't dither if displaced tessellation (we're fading out the displacement instead to match the next LOD)
|
|
#if !defined(SHADER_STAGE_RAY_TRACING) && !defined(_TESSELLATION_DISPLACEMENT)
|
|
#ifdef LOD_FADE_CROSSFADE // enable dithering LOD transition if user select CrossFade transition in LOD group
|
|
LODDitheringTransition(ComputeFadeMaskSeed(V, posInput.positionSS), unity_LODFade.x);
|
|
#endif
|
|
#endif
|
|
|
|
#ifndef SHADER_UNLIT
|
|
#ifdef _DOUBLESIDED_ON
|
|
float3 doubleSidedConstants = _DoubleSidedConstants.xyz;
|
|
#else
|
|
float3 doubleSidedConstants = float3(1.0, 1.0, 1.0);
|
|
#endif
|
|
|
|
ApplyDoubleSidedFlipOrMirror(fragInputs, doubleSidedConstants); // Apply double sided flip on the vertex normal
|
|
#endif // SHADER_UNLIT
|
|
|
|
SurfaceDescriptionInputs surfaceDescriptionInputs = FragInputsToSurfaceDescriptionInputs(fragInputs, V);
|
|
|
|
#if defined(HAVE_VFX_MODIFICATION)
|
|
GraphProperties properties;
|
|
ZERO_INITIALIZE(GraphProperties, properties);
|
|
|
|
GetElementPixelProperties(fragInputs, properties);
|
|
|
|
SurfaceDescription surfaceDescription = SurfaceDescriptionFunction(surfaceDescriptionInputs, properties);
|
|
#else
|
|
SurfaceDescription surfaceDescription = SurfaceDescriptionFunction(surfaceDescriptionInputs);
|
|
#endif
|
|
|
|
#ifdef DEBUG_DISPLAY
|
|
if (_DebugMipMapMode != DEBUGMIPMAPMODE_NONE)
|
|
{
|
|
surfaceDescription.Alpha = 1.0f;
|
|
}
|
|
#endif
|
|
|
|
// Perform alpha test very early to save performance (a killed pixel will not sample textures)
|
|
// TODO: split graph evaluation to grab just alpha dependencies first? tricky..
|
|
#ifdef _ALPHATEST_ON
|
|
float alphaCutoff = surfaceDescription.AlphaClipThreshold;
|
|
#if SHADERPASS == SHADERPASS_TRANSPARENT_DEPTH_PREPASS
|
|
// The TransparentDepthPrepass is also used with SSR transparent.
|
|
// If an artists enable transaprent SSR but not the TransparentDepthPrepass itself, then we use AlphaClipThreshold
|
|
// otherwise if TransparentDepthPrepass is enabled we use AlphaClipThresholdDepthPrepass
|
|
#elif SHADERPASS == SHADERPASS_TRANSPARENT_DEPTH_POSTPASS
|
|
// DepthPostpass always use its own alpha threshold
|
|
alphaCutoff = surfaceDescription.AlphaClipThresholdDepthPostpass;
|
|
#elif (SHADERPASS == SHADERPASS_SHADOWS) || (SHADERPASS == SHADERPASS_RAYTRACING_VISIBILITY)
|
|
// If use shadow threshold isn't enable we don't allow any test
|
|
#endif
|
|
|
|
GENERIC_ALPHA_TEST(surfaceDescription.Alpha, alphaCutoff);
|
|
#endif
|
|
|
|
#if !defined(SHADER_STAGE_RAY_TRACING) && _DEPTHOFFSET_ON
|
|
ApplyDepthOffsetPositionInput(V, surfaceDescription.DepthOffset, GetViewForwardDir(), GetWorldToHClipMatrix(), posInput);
|
|
#endif
|
|
|
|
#ifndef SHADER_UNLIT
|
|
float3 bentNormalWS;
|
|
BuildSurfaceData(fragInputs, surfaceDescription, V, posInput, surfaceData, bentNormalWS);
|
|
|
|
#ifdef FRAG_INPUTS_USE_TEXCOORD1
|
|
float4 lightmapTexCoord1 = fragInputs.texCoord1;
|
|
#else
|
|
float4 lightmapTexCoord1 = float4(0,0,0,0);
|
|
#endif
|
|
|
|
#ifdef FRAG_INPUTS_USE_TEXCOORD2
|
|
float4 lightmapTexCoord2 = fragInputs.texCoord2;
|
|
#else
|
|
float4 lightmapTexCoord2 = float4(0,0,0,0);
|
|
#endif
|
|
|
|
float alpha = 1.0;
|
|
alpha = surfaceDescription.Alpha;
|
|
|
|
// Builtin Data
|
|
// For back lighting we use the oposite vertex normal
|
|
InitBuiltinData(posInput, alpha, bentNormalWS, -fragInputs.tangentToWorld[2], lightmapTexCoord1, lightmapTexCoord2, builtinData);
|
|
|
|
#else
|
|
BuildSurfaceData(fragInputs, surfaceDescription, V, posInput, surfaceData);
|
|
|
|
ZERO_BUILTIN_INITIALIZE(builtinData); // No call to InitBuiltinData as we don't have any lighting
|
|
builtinData.opacity = surfaceDescription.Alpha;
|
|
|
|
#if defined(DEBUG_DISPLAY)
|
|
// Light Layers are currently not used for the Unlit shader (because it is not lit)
|
|
// But Unlit objects do cast shadows according to their rendering layer mask, which is what we want to
|
|
// display in the light layers visualization mode, therefore we need the renderingLayers
|
|
builtinData.renderingLayers = GetMeshRenderingLayerMask();
|
|
#endif
|
|
|
|
#endif // SHADER_UNLIT
|
|
|
|
#ifdef _ALPHATEST_ON
|
|
// Used for sharpening by alpha to mask - Alpha to covertage is only used with depth only and forward pass (no shadow pass, no transparent pass)
|
|
builtinData.alphaClipTreshold = alphaCutoff;
|
|
#endif
|
|
|
|
// override sampleBakedGI - not used by Unlit
|
|
// When overriding GI, we need to force the isLightmap flag to make sure we don't add APV (sampled in the lightloop) on top of the overridden value (set at GBuffer stage)
|
|
|
|
builtinData.emissiveColor = surfaceDescription.Emission;
|
|
|
|
// Note this will not fully work on transparent surfaces (can check with _SURFACE_TYPE_TRANSPARENT define)
|
|
// We will always overwrite vt feeback with the nearest. So behind transparent surfaces vt will not be resolved
|
|
// This is a limitation of the current MRT approach.
|
|
#ifdef UNITY_VIRTUAL_TEXTURING
|
|
#endif
|
|
|
|
#if _DEPTHOFFSET_ON
|
|
builtinData.depthOffset = surfaceDescription.DepthOffset;
|
|
#endif
|
|
|
|
// TODO: We should generate distortion / distortionBlur for non distortion pass
|
|
#if (SHADERPASS == SHADERPASS_DISTORTION)
|
|
builtinData.distortion = surfaceDescription.Distortion;
|
|
builtinData.distortionBlur = surfaceDescription.DistortionBlur;
|
|
#endif
|
|
|
|
#ifndef SHADER_UNLIT
|
|
// PostInitBuiltinData call ApplyDebugToBuiltinData
|
|
PostInitBuiltinData(V, posInput, surfaceData, builtinData);
|
|
#else
|
|
ApplyDebugToBuiltinData(builtinData);
|
|
#endif
|
|
|
|
RAY_TRACING_OPTIONAL_ALPHA_TEST_PASS
|
|
}
|
|
|
|
// --------------------------------------------------
|
|
// Main
|
|
|
|
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/RenderPipeline/ShaderPass/ShaderPassPathTracing.hlsl"
|
|
|
|
// --------------------------------------------------
|
|
// Visual Effect Vertex Invocations
|
|
|
|
#ifdef HAVE_VFX_MODIFICATION
|
|
#if !defined(SHADER_STAGE_RAY_TRACING)
|
|
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/ShaderLibrary/VisualEffectVertex.hlsl"
|
|
#else
|
|
#endif
|
|
#endif
|
|
|
|
ENDHLSL
|
|
}
|
|
}
|
|
CustomEditor "UnityEditor.ShaderGraph.GenericShaderGraphMaterialGUI"
|
|
CustomEditorForRenderPipeline "Rendering.HighDefinition.LitShaderGraphGUI" "UnityEngine.Rendering.HighDefinition.HDRenderPipelineAsset"
|
|
FallBack "Hidden/Shader Graph/FallbackError"
|
|
} |