70 lines
3.0 KiB
HLSL
70 lines
3.0 KiB
HLSL
// Crest Water System
|
|
// Copyright © 2024 Wave Harmonic. All rights reserved.
|
|
|
|
// Anything marked as "Source" is from the previous frame.
|
|
|
|
#ifndef CREST_INPUTS_DRIVEN_H
|
|
#define CREST_INPUTS_DRIVEN_H
|
|
|
|
#include "Packages/com.waveharmonic.crest/Runtime/Shaders/Library/Constants.hlsl"
|
|
#include "Packages/com.waveharmonic.crest/Runtime/Shaders/Library/Macros.hlsl"
|
|
|
|
// NOTE: Unity does not recognize uint in FrameDebugger. It will be under Floats
|
|
// with incorrect values. Change to int for debugging.
|
|
uint _Crest_LodIndex;
|
|
|
|
|
|
Texture2DArray g_Crest_CascadeAbsorption;
|
|
m_DisplacementTexture(Texture2DArray, 4) g_Crest_CascadeAnimatedWaves;
|
|
m_DisplacementTexture(Texture2DArray, 4) g_Crest_CascadeAnimatedWavesSource;
|
|
Texture2DArray g_Crest_CascadeDepth;
|
|
m_DisplacementTexture(Texture2DArray, 4) g_Crest_CascadeLevel;
|
|
Texture2DArray g_Crest_CascadeClip;
|
|
Texture2DArray g_Crest_CascadeFoam;
|
|
Texture2DArray g_Crest_CascadeFoamSource;
|
|
Texture2DArray g_Crest_CascadeFlow;
|
|
Texture2DArray g_Crest_CascadeDynamicWaves;
|
|
Texture2DArray g_Crest_CascadeDynamicWavesSource;
|
|
Texture2DArray g_Crest_CascadeScattering;
|
|
Texture2DArray g_Crest_CascadeShadow;
|
|
Texture2DArray g_Crest_CascadeShadowSource;
|
|
Texture2DArray g_Crest_CascadeAlbedo;
|
|
|
|
|
|
CBUFFER_START(CrestLodData)
|
|
// Cascade Data: Scale, Weight, MaximumWavelength, 0
|
|
float4 g_Crest_CascadeData[MAX_LOD_COUNT];
|
|
float4 g_Crest_CascadeDataSource[MAX_LOD_COUNT];
|
|
|
|
// Sampling Parameters: LodCount, Resolution, OneOverResolution, 0
|
|
// Sampling Parameters (Cascade): SnappedPositionX, SnappedPositionZ, TexelWidth, 0
|
|
float4 g_Crest_SamplingParametersAbsorption;
|
|
float4 g_Crest_SamplingParametersCascadeAbsorption[MAX_LOD_COUNT];
|
|
float4 g_Crest_SamplingParametersAlbedo;
|
|
float4 g_Crest_SamplingParametersCascadeAlbedo[MAX_LOD_COUNT];
|
|
float4 g_Crest_SamplingParametersAnimatedWaves;
|
|
float4 g_Crest_SamplingParametersCascadeAnimatedWaves[MAX_LOD_COUNT];
|
|
float4 g_Crest_SamplingParametersCascadeAnimatedWavesSource[MAX_LOD_COUNT];
|
|
float4 g_Crest_SamplingParametersClip;
|
|
float4 g_Crest_SamplingParametersCascadeClip[MAX_LOD_COUNT];
|
|
float4 g_Crest_SamplingParametersDepth;
|
|
float4 g_Crest_SamplingParametersCascadeDepth[MAX_LOD_COUNT];
|
|
float4 g_Crest_SamplingParametersDynamicWaves;
|
|
float4 g_Crest_SamplingParametersCascadeDynamicWaves[MAX_LOD_COUNT];
|
|
float4 g_Crest_SamplingParametersCascadeDynamicWavesSource[MAX_LOD_COUNT];
|
|
float4 g_Crest_SamplingParametersFlow;
|
|
float4 g_Crest_SamplingParametersCascadeFlow[MAX_LOD_COUNT];
|
|
float4 g_Crest_SamplingParametersFoam;
|
|
float4 g_Crest_SamplingParametersCascadeFoam[MAX_LOD_COUNT];
|
|
float4 g_Crest_SamplingParametersCascadeFoamSource[MAX_LOD_COUNT];
|
|
float4 g_Crest_SamplingParametersLevel;
|
|
float4 g_Crest_SamplingParametersCascadeLevel[MAX_LOD_COUNT];
|
|
float4 g_Crest_SamplingParametersScattering;
|
|
float4 g_Crest_SamplingParametersCascadeScattering[MAX_LOD_COUNT];
|
|
float4 g_Crest_SamplingParametersShadow;
|
|
float4 g_Crest_SamplingParametersCascadeShadow[MAX_LOD_COUNT];
|
|
float4 g_Crest_SamplingParametersCascadeShadowSource[MAX_LOD_COUNT];
|
|
CBUFFER_END
|
|
|
|
#endif // CREST_INPUTS_DRIVEN_H
|