(Update) Clean Projet
This commit is contained in:
File diff suppressed because it is too large
Load Diff
@@ -0,0 +1,16 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 82e93b09a1224254f9bbb9e6bd497b58
|
||||
ShaderImporter:
|
||||
externalObjects: {}
|
||||
defaultTextures: []
|
||||
nonModifiableTextures: []
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
AssetOrigin:
|
||||
serializedVersion: 1
|
||||
productId: 287769
|
||||
packageName: Stylized Water 3
|
||||
packageVersion: 3.2.6
|
||||
assetPath: Assets/Stylized Water 3/Shaders/Passes/ForwardPass.hlsl
|
||||
uploadId: 895866
|
||||
@@ -0,0 +1,98 @@
|
||||
// Stylized Water 3 by Staggart Creations (http://staggart.xyz)
|
||||
// COPYRIGHT PROTECTED UNDER THE UNITY ASSET STORE EULA (https://unity.com/legal/as-terms)
|
||||
// • Copying or referencing source code for the production of new asset store, or public, content is strictly prohibited!
|
||||
// • Uploading this file to a public repository will subject it to an automated DMCA takedown request.
|
||||
|
||||
#include "Packages/com.unity.render-pipelines.universal/ShaderLibrary/Core.hlsl"
|
||||
#include "../Libraries/Common.hlsl"
|
||||
#include "../Libraries/Waves.hlsl"
|
||||
#include "../Libraries/Projection.hlsl"
|
||||
#include "../Libraries/Height.hlsl"
|
||||
|
||||
struct HeightPassAttributes
|
||||
{
|
||||
float4 positionOS : POSITION;
|
||||
float4 uv : TEXCOORD0;
|
||||
float4 color : COLOR0;
|
||||
|
||||
UNITY_VERTEX_INPUT_INSTANCE_ID
|
||||
};
|
||||
|
||||
struct HeightPassVaryings
|
||||
{
|
||||
float4 positionWS : TEXCOORD0;
|
||||
//XYZ: World Position
|
||||
//W: Displacement offset
|
||||
float4 positionCS : SV_POSITION;
|
||||
float4 uv : TEXCOORD1; //Needs to be defined for Common.hlsl
|
||||
|
||||
UNITY_VERTEX_INPUT_INSTANCE_ID
|
||||
UNITY_VERTEX_OUTPUT_STEREO
|
||||
};
|
||||
|
||||
HeightPassVaryings HeightPassVertex(HeightPassAttributes input)
|
||||
{
|
||||
HeightPassVaryings output = (HeightPassVaryings)0;
|
||||
|
||||
UNITY_SETUP_INSTANCE_ID(input);
|
||||
UNITY_TRANSFER_INSTANCE_ID(input, output);
|
||||
UNITY_INITIALIZE_VERTEX_OUTPUT_STEREO(output);
|
||||
|
||||
#if defined(CURVEDWORLD_IS_INSTALLED) && !defined(CURVEDWORLD_DISABLED_ON)
|
||||
CURVEDWORLD_TRANSFORM_VERTEX(input.positionOS)
|
||||
#endif
|
||||
|
||||
float3 positionWS = TransformObjectToWorld(input.positionOS.xyz);
|
||||
float3 offset = 0;
|
||||
|
||||
output.uv = float4(input.uv.xy, _TimeParameters.x, 0);
|
||||
|
||||
#if _WAVES
|
||||
float2 uv = GetSourceUV(input.uv.xy, positionWS.xz, _WorldSpaceUV);
|
||||
|
||||
float3 waveOffset = float3(0,0,0);
|
||||
float3 waveNormal = float3(0,1,0);
|
||||
|
||||
CalculateWaves(_WaveProfile, _WaveProfile_TexelSize.z, _WaveMaxLayers, uv.xy, _WaveFrequency, positionWS.xyz, _Direction.xy, float3(0,1,0), (TIME_VERTEX * _Speed) * _WaveSpeed, input.color.b * _VertexColorWaveFlattening, float3(_WaveSteepness, _WaveHeight, _WaveSteepness),
|
||||
_WaveNormalStr, _WaveFadeDistance.x, _WaveFadeDistance.y,
|
||||
//Out
|
||||
waveOffset, waveNormal);
|
||||
|
||||
offset.xyz += waveOffset.xyz;
|
||||
#endif
|
||||
|
||||
#if DYNAMIC_EFFECTS_ENABLED
|
||||
if(_ReceiveDynamicEffectsHeight)
|
||||
{
|
||||
float4 effectsData = SampleDynamicEffectsData(positionWS.xyz);
|
||||
|
||||
half falloff = 1.0;
|
||||
#if defined(TESSELLATION_ON)
|
||||
//falloff = saturate(1.0 - (distance(positionWS.xyz, GetCurrentViewPosition() - _TessMin)) / (_TessMax - _TessMin));
|
||||
#endif
|
||||
|
||||
offset.y += effectsData[DE_HEIGHT_CHANNEL] * falloff;
|
||||
}
|
||||
#endif
|
||||
|
||||
output.positionCS = TransformWorldToHClip(positionWS);
|
||||
output.positionWS.xyz = positionWS.xyz;
|
||||
output.positionWS.w = offset.y;
|
||||
|
||||
return output;
|
||||
}
|
||||
|
||||
float4 HeightFragment(HeightPassVaryings input) : SV_TARGET
|
||||
{
|
||||
UNITY_SETUP_INSTANCE_ID(input);
|
||||
UNITY_SETUP_STEREO_EYE_INDEX_POST_VERTEX(input);
|
||||
|
||||
float3 positionWS = input.positionWS.xyz;
|
||||
float height = input.positionWS.w;
|
||||
|
||||
//float projectionEdgeMask = ProjectionEdgeMask(positionWS, _WaterHeightCoords.xy, _WaterHeightCoords.z, 15);
|
||||
|
||||
//positionWS.y = lerp(VOID_THRESHOLD, positionWS.y, projectionEdgeMask);
|
||||
|
||||
return float4(positionWS.y, height, 0.0, 1.0);
|
||||
}
|
||||
@@ -0,0 +1,10 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 9417554152a5431cbb22f67dfea63312
|
||||
timeCreated: 1718705139
|
||||
AssetOrigin:
|
||||
serializedVersion: 1
|
||||
productId: 287769
|
||||
packageName: Stylized Water 3
|
||||
packageVersion: 3.2.6
|
||||
assetPath: Assets/Stylized Water 3/Shaders/Passes/HeightPrePass.hlsl
|
||||
uploadId: 895866
|
||||
Reference in New Issue
Block a user