'push'
This commit is contained in:
@@ -0,0 +1,71 @@
|
||||
// Crest Water System
|
||||
// Copyright © 2024 Wave Harmonic. All rights reserved.
|
||||
|
||||
#ifndef d_WaveHarmonic_Utility_RenderPipeline_Compute
|
||||
#define d_WaveHarmonic_Utility_RenderPipeline_Compute
|
||||
|
||||
#include "Packages/com.waveharmonic.crest/Runtime/Shaders/Library/Settings.Crest.hlsl"
|
||||
|
||||
// Compute does not have an equivalent of PackageRequirements.
|
||||
// We must handle it ourselves.
|
||||
|
||||
// Fallback to BIRP if HDRP package missing.
|
||||
#if _HRP
|
||||
#if (CREST_PACKAGE_HDRP != 1)
|
||||
#undef _HRP
|
||||
#define _BRP 1
|
||||
#endif
|
||||
#endif
|
||||
|
||||
// Fallback to BIRP if URP package missing.
|
||||
#if _URP
|
||||
#if (CREST_PACKAGE_URP != 1)
|
||||
#undef _URP
|
||||
#define _BRP 1
|
||||
#endif
|
||||
#endif
|
||||
|
||||
#if _BRP
|
||||
#include "Packages/com.waveharmonic.crest/Runtime/Shaders/Library/Utility/Legacy/Core.hlsl"
|
||||
#endif
|
||||
|
||||
#if _HRP
|
||||
#include "Packages/com.unity.render-pipelines.core/ShaderLibrary/Common.hlsl"
|
||||
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/ShaderLibrary/ShaderVariables.hlsl"
|
||||
#endif
|
||||
|
||||
#if _URP
|
||||
#include "Packages/com.unity.render-pipelines.core/ShaderLibrary/Common.hlsl"
|
||||
#include "Packages/com.unity.render-pipelines.universal/ShaderLibrary/Core.hlsl"
|
||||
#endif
|
||||
|
||||
|
||||
//
|
||||
// Stereo Rendering
|
||||
//
|
||||
|
||||
// Unity 6 only, but had compilation errors for non HDRP anyway:
|
||||
// #include "Packages/com.unity.render-pipelines.core/ShaderLibrary/TextureXR.hlsl"
|
||||
|
||||
#ifndef RW_TEXTURE2D_X
|
||||
#if defined(UNITY_STEREO_INSTANCING_ENABLED) || defined(UNITY_STEREO_MULTIVIEW_ENABLED)
|
||||
#define COORD_TEXTURE2D_X(pixelCoord) uint3(pixelCoord, SLICE_ARRAY_INDEX)
|
||||
#define RW_TEXTURE2D_X(type, textureName) RW_TEXTURE2D_ARRAY(type, textureName)
|
||||
#else // UNITY_STEREO
|
||||
#define COORD_TEXTURE2D_X(pixelCoord) pixelCoord
|
||||
#define RW_TEXTURE2D_X RW_TEXTURE2D
|
||||
#endif // UNITY_STEREO
|
||||
#endif // RW_TEXTURE2D_X
|
||||
|
||||
#ifndef UNITY_XR_ASSIGN_VIEW_INDEX
|
||||
// Helper macro to assign view index during compute/ray pass (usually from SV_DispatchThreadID or DispatchRaysIndex())
|
||||
#if defined(SHADER_STAGE_COMPUTE) || defined(SHADER_STAGE_RAY_TRACING)
|
||||
#if defined(UNITY_STEREO_INSTANCING_ENABLED)
|
||||
#define UNITY_XR_ASSIGN_VIEW_INDEX(viewIndex) unity_StereoEyeIndex = viewIndex;
|
||||
#else
|
||||
#define UNITY_XR_ASSIGN_VIEW_INDEX(viewIndex)
|
||||
#endif
|
||||
#endif
|
||||
#endif // UNITY_XR_ASSIGN_VIEW_INDEX
|
||||
|
||||
#endif // d_WaveHarmonic_Utility_RenderPipeline_Compute
|
||||
Reference in New Issue
Block a user