Shader uniform buffers

  • Primitive Uniform Buffer
C++
BEGIN_UNIFORM_BUFFER_STRUCT(FPrimitiveUniformShaderParameters,ENGINE_API)  
        UNIFORM_MEMBER(FMatrix,LocalToWorld)                // always needed  
        UNIFORM_MEMBER_EX(FVector4,InvNonUniformScaleAndDeterminantSign,EShaderPrecisionModifier::Half) //often needed  
        UNIFORM_MEMBER(FVector4,ObjectWorldPositionAndRadius)        // needed by some materials  
        UNIFORM_MEMBER(FMatrix,WorldToLocal)                // rarely needed  
        UNIFORM_MEMBER(FVector,ActorWorldPosition)  
        UNIFORM_MEMBER_EX(float,UseSingleSampleShadowFromStationaryLights,EShaderPrecisionModifier::Half)          
        UNIFORM_MEMBER(FVector,ObjectBounds)                // only needed for editor/development  
        UNIFORM_MEMBER(float,LpvBiasMultiplier)  
        UNIFORM_MEMBER_EX(float,DecalReceiverMask,EShaderPrecisionModifier::Half)  
        UNIFORM_MEMBER_EX(float,PerObjectGBufferData,EShaderPrecisionModifier::Half)                // 0..1, 2 bits, bDistanceFieldRepresentation, bHeightfieldRepresentation  
        UNIFORM_MEMBER_EX(float,UseVolumetricLightmapShadowFromStationaryLights,EShaderPrecisionModifier::Half)                  
        UNIFORM_MEMBER_EX(float,UseEditorDepthTest,EShaderPrecisionModifier::Half)  
        UNIFORM_MEMBER_EX(FVector4,ObjectOrientation,EShaderPrecisionModifier::Half)  
        UNIFORM_MEMBER_EX(FVector4,NonUniformScale,EShaderPrecisionModifier::Half)  
        UNIFORM_MEMBER(FVector, LocalObjectBoundsMin)                // This is used in a custom material function (ObjectLocalBounds.uasset)  
        UNIFORM_MEMBER(FVector, LocalObjectBoundsMax)                // This is used in a custom material function (ObjectLocalBounds.uasset)  
        UNIFORM_MEMBER(uint32,LightingChannelMask)  
END_UNIFORM_BUFFER_STRUCT(FPrimitiveUniformShaderParameters)
  • View Uniform Buffer
C++
\#define VIEW_UNIFORM_BUFFER_MEMBER_TABLE \  
        VIEW_UNIFORM_BUFFER_MEMBER(FMatrix, TranslatedWorldToClip) \  
        VIEW_UNIFORM_BUFFER_MEMBER(FMatrix, WorldToClip) \ 
        VIEW_UNIFORM_BUFFER_MEMBER(FMatrix, TranslatedWorldToView) \ 
        VIEW_UNIFORM_BUFFER_MEMBER(FMatrix, ViewToTranslatedWorld) \  
        VIEW_UNIFORM_BUFFER_MEMBER(FMatrix, TranslatedWorldToCameraView) \  
        VIEW_UNIFORM_BUFFER_MEMBER(FMatrix, CameraViewToTranslatedWorld) \  
        VIEW_UNIFORM_BUFFER_MEMBER(FMatrix, ViewToClip) \  
        VIEW_UNIFORM_BUFFER_MEMBER(FMatrix, ViewToClipNoAA) \ 
        VIEW_UNIFORM_BUFFER_MEMBER(FMatrix, ClipToView) \
        VIEW_UNIFORM_BUFFER_MEMBER(FMatrix, ClipToTranslatedWorld) \ 
        VIEW_UNIFORM_BUFFER_MEMBER(FMatrix, SVPositionToTranslatedWorld) \ 
        VIEW_UNIFORM_BUFFER_MEMBER(FMatrix, ScreenToWorld) \
        VIEW_UNIFORM_BUFFER_MEMBER(FMatrix, ScreenToTranslatedWorld) \ 
        VIEW_UNIFORM_BUFFER_MEMBER_EX(FVector, ViewForward, EShaderPrecisionModifier::Half) \
        VIEW_UNIFORM_BUFFER_MEMBER_EX(FVector, ViewUp, EShaderPrecisionModifier::Half) \
        VIEW_UNIFORM_BUFFER_MEMBER_EX(FVector, ViewRight, EShaderPrecisionModifier::Half) \  
        VIEW_UNIFORM_BUFFER_MEMBER_EX(FVector, HMDViewNoRollUp, EShaderPrecisionModifier::Half) \  
        VIEW_UNIFORM_BUFFER_MEMBER_EX(FVector, HMDViewNoRollRight, EShaderPrecisionModifier::Half) \  
        VIEW_UNIFORM_BUFFER_MEMBER(FVector4, InvDeviceZToWorldZTransform) \  
        VIEW_UNIFORM_BUFFER_MEMBER_EX(FVector4, ScreenPositionScaleBias, EShaderPrecisionModifier::Half) \  
        VIEW_UNIFORM_BUFFER_MEMBER(FVector, WorldCameraOrigin) \ 
        VIEW_UNIFORM_BUFFER_MEMBER(FVector, TranslatedWorldCameraOrigin) \ 
        VIEW_UNIFORM_BUFFER_MEMBER(FVector, WorldViewOrigin) \  
        VIEW_UNIFORM_BUFFER_MEMBER(FVector, PreViewTranslation) \ 
        VIEW_UNIFORM_BUFFER_MEMBER(FMatrix, PrevProjection) \ 
        VIEW_UNIFORM_BUFFER_MEMBER(FMatrix, PrevViewProj) \ 
        VIEW_UNIFORM_BUFFER_MEMBER(FMatrix, PrevViewRotationProj) \  
        VIEW_UNIFORM_BUFFER_MEMBER(FMatrix, PrevViewToClip) \ 
        VIEW_UNIFORM_BUFFER_MEMBER(FMatrix, PrevClipToView) \ 
        VIEW_UNIFORM_BUFFER_MEMBER(FMatrix, PrevTranslatedWorldToClip) \  
        VIEW_UNIFORM_BUFFER_MEMBER(FMatrix, PrevTranslatedWorldToView) \  
        VIEW_UNIFORM_BUFFER_MEMBER(FMatrix, PrevViewToTranslatedWorld) \  
        VIEW_UNIFORM_BUFFER_MEMBER(FMatrix, PrevTranslatedWorldToCameraView) \  
        VIEW_UNIFORM_BUFFER_MEMBER(FMatrix, PrevCameraViewToTranslatedWorld) \  
        VIEW_UNIFORM_BUFFER_MEMBER(FVector, PrevWorldCameraOrigin) \  
        VIEW_UNIFORM_BUFFER_MEMBER(FVector, PrevWorldViewOrigin) \  
        VIEW_UNIFORM_BUFFER_MEMBER(FVector, PrevPreViewTranslation) \  
        VIEW_UNIFORM_BUFFER_MEMBER(FMatrix, PrevInvViewProj) \  
        VIEW_UNIFORM_BUFFER_MEMBER(FMatrix, PrevScreenToTranslatedWorld) \  
        VIEW_UNIFORM_BUFFER_MEMBER(FMatrix, ClipToPrevClip) \ 
        VIEW_UNIFORM_BUFFER_MEMBER(FVector4, TemporalAAJitter) \ 
        VIEW_UNIFORM_BUFFER_MEMBER(FVector4, GlobalClippingPlane) \  
        VIEW_UNIFORM_BUFFER_MEMBER(FVector2D, FieldOfViewWideAngles) \  
        VIEW_UNIFORM_BUFFER_MEMBER(FVector2D, PrevFieldOfViewWideAngles) \  
        VIEW_UNIFORM_BUFFER_MEMBER_EX(FVector4, ViewRectMin, EShaderPrecisionModifier::Half) \  
        VIEW_UNIFORM_BUFFER_MEMBER(FVector4, ViewSizeAndInvSize) \  
        VIEW_UNIFORM_BUFFER_MEMBER(FVector4, BufferSizeAndInvSize) \  
        VIEW_UNIFORM_BUFFER_MEMBER(FVector4, BufferBilinearUVMinMax) \  
        VIEW_UNIFORM_BUFFER_MEMBER(int32, NumSceneColorMSAASamples) \  
        VIEW_UNIFORM_BUFFER_MEMBER_EX(float, PreExposure, EShaderPrecisionModifier::Half) \  
        VIEW_UNIFORM_BUFFER_MEMBER_EX(float, OneOverPreExposure, EShaderPrecisionModifier::Half) \  
        VIEW_UNIFORM_BUFFER_MEMBER_EX(FVector4, DiffuseOverrideParameter, EShaderPrecisionModifier::Half) \  
        VIEW_UNIFORM_BUFFER_MEMBER_EX(FVector4, SpecularOverrideParameter, EShaderPrecisionModifier::Half) \  
        VIEW_UNIFORM_BUFFER_MEMBER_EX(FVector4, NormalOverrideParameter, EShaderPrecisionModifier::Half) \  
        VIEW_UNIFORM_BUFFER_MEMBER_EX(FVector2D, RoughnessOverrideParameter, EShaderPrecisionModifier::Half) \ 
        VIEW_UNIFORM_BUFFER_MEMBER(float, PrevFrameGameTime) \ 
        VIEW_UNIFORM_BUFFER_MEMBER(float, PrevFrameRealTime) \ 
        VIEW_UNIFORM_BUFFER_MEMBER_EX(float, OutOfBoundsMask, EShaderPrecisionModifier::Half) \  
        VIEW_UNIFORM_BUFFER_MEMBER(FVector, WorldCameraMovementSinceLastFrame) \  
        VIEW_UNIFORM_BUFFER_MEMBER(float, CullingSign) \  
        VIEW_UNIFORM_BUFFER_MEMBER_EX(float, NearPlane, EShaderPrecisionModifier::Half) \  
        VIEW_UNIFORM_BUFFER_MEMBER(float, AdaptiveTessellationFactor) \ 
        VIEW_UNIFORM_BUFFER_MEMBER(float, GameTime) \ 
        VIEW_UNIFORM_BUFFER_MEMBER(float, RealTime) \  
        VIEW_UNIFORM_BUFFER_MEMBER(float, MaterialTextureMipBias) \  
        VIEW_UNIFORM_BUFFER_MEMBER(float, MaterialTextureDerivativeMultiply) \  
        VIEW_UNIFORM_BUFFER_MEMBER(uint32, Random) \
        VIEW_UNIFORM_BUFFER_MEMBER(uint32, FrameNumber) \
        VIEW_UNIFORM_BUFFER_MEMBER(uint32, StateFrameIndexMod8) \
        VIEW_UNIFORM_BUFFER_MEMBER_EX(float, CameraCut, EShaderPrecisionModifier::Half) \  
        VIEW_UNIFORM_BUFFER_MEMBER_EX(float, UnlitViewmodeMask, EShaderPrecisionModifier::Half) \  
        VIEW_UNIFORM_BUFFER_MEMBER_EX(FLinearColor, DirectionalLightColor, EShaderPrecisionModifier::Half) \  
        VIEW_UNIFORM_BUFFER_MEMBER_EX(FVector, DirectionalLightDirection, EShaderPrecisionModifier::Half) \  
        VIEW_UNIFORM_BUFFER_MEMBER_ARRAY(FVector4, TranslucencyLightingVolumeMin, \[TVC_MAX]) \  
        VIEW_UNIFORM_BUFFER_MEMBER_ARRAY(FVector4, TranslucencyLightingVolumeInvSize, \[TVC_MAX]) \ 
        VIEW_UNIFORM_BUFFER_MEMBER(FVector4, TemporalAAParams) \  
        VIEW_UNIFORM_BUFFER_MEMBER(FVector4, CircleDOFParams) \  
        VIEW_UNIFORM_BUFFER_MEMBER(float, DepthOfFieldSensorWidth) \  
        VIEW_UNIFORM_BUFFER_MEMBER(float, DepthOfFieldFocalDistance) \  
        VIEW_UNIFORM_BUFFER_MEMBER(float, DepthOfFieldScale) \  
        VIEW_UNIFORM_BUFFER_MEMBER(float, DepthOfFieldFocalLength) \  
        VIEW_UNIFORM_BUFFER_MEMBER(float, DepthOfFieldFocalRegion) \  
        VIEW_UNIFORM_BUFFER_MEMBER(float, DepthOfFieldNearTransitionRegion) \ 
        VIEW_UNIFORM_BUFFER_MEMBER(float, DepthOfFieldFarTransitionRegion) \ 
        VIEW_UNIFORM_BUFFER_MEMBER(float, MotionBlurNormalizedToPixel) \  
        VIEW_UNIFORM_BUFFER_MEMBER(float, bSubsurfacePostprocessEnabled) \  
        VIEW_UNIFORM_BUFFER_MEMBER(float, GeneralPurposeTweak) \
        VIEW_UNIFORM_BUFFER_MEMBER_EX(float, DemosaicVposOffset, EShaderPrecisionModifier::Half) \  
        VIEW_UNIFORM_BUFFER_MEMBER(FVector, IndirectLightingColorScale) \ 
        VIEW_UNIFORM_BUFFER_MEMBER_EX(float, HDR32bppEncodingMode, EShaderPrecisionModifier::Half) \  
        VIEW_UNIFORM_BUFFER_MEMBER(FVector, AtmosphericFogSunDirection) \ 
        VIEW_UNIFORM_BUFFER_MEMBER_EX(float, AtmosphericFogSunPower, EShaderPrecisionModifier::Half) \  
        VIEW_UNIFORM_BUFFER_MEMBER_EX(float, AtmosphericFogPower, EShaderPrecisionModifier::Half) \  
        VIEW_UNIFORM_BUFFER_MEMBER_EX(float, AtmosphericFogDensityScale, EShaderPrecisionModifier::Half) \  
        VIEW_UNIFORM_BUFFER_MEMBER_EX(float, AtmosphericFogDensityOffset, EShaderPrecisionModifier::Half) \  
        VIEW_UNIFORM_BUFFER_MEMBER_EX(float, AtmosphericFogGroundOffset, EShaderPrecisionModifier::Half) \  
        VIEW_UNIFORM_BUFFER_MEMBER_EX(float, AtmosphericFogDistanceScale, EShaderPrecisionModifier::Half) \  
        VIEW_UNIFORM_BUFFER_MEMBER_EX(float, AtmosphericFogAltitudeScale, EShaderPrecisionModifier::Half) \  
        VIEW_UNIFORM_BUFFER_MEMBER_EX(float, AtmosphericFogHeightScaleRayleigh, EShaderPrecisionModifier::Half) \  
        VIEW_UNIFORM_BUFFER_MEMBER_EX(float, AtmosphericFogStartDistance, EShaderPrecisionModifier::Half) \ 
        VIEW_UNIFORM_BUFFER_MEMBER_EX(float, AtmosphericFogDistanceOffset, EShaderPrecisionModifier::Half) \  
        VIEW_UNIFORM_BUFFER_MEMBER_EX(float, AtmosphericFogSunDiscScale, EShaderPrecisionModifier::Half) \  
        VIEW_UNIFORM_BUFFER_MEMBER(uint32, AtmosphericFogRenderMask) \  
        VIEW_UNIFORM_BUFFER_MEMBER(uint32, AtmosphericFogInscatterAltitudeSampleNum) \  
        VIEW_UNIFORM_BUFFER_MEMBER(FLinearColor, AtmosphericFogSunColor) \
        VIEW_UNIFORM_BUFFER_MEMBER(FVector, NormalCurvatureToRoughnessScaleBias) \  
        VIEW_UNIFORM_BUFFER_MEMBER(float, RenderingReflectionCaptureMask) \ 
        VIEW_UNIFORM_BUFFER_MEMBER(FLinearColor, AmbientCubemapTint) \ 
        VIEW_UNIFORM_BUFFER_MEMBER(float, AmbientCubemapIntensity) \  
        VIEW_UNIFORM_BUFFER_MEMBER(float, SkyLightParameters) \ 
        VIEW_UNIFORM_BUFFER_MEMBER(FLinearColor, SkyLightColor) \  
        VIEW_UNIFORM_BUFFER_MEMBER_ARRAY(FVector4, SkyIrradianceEnvironmentMap, \[7]) \  
        VIEW_UNIFORM_BUFFER_MEMBER(float, MobilePreviewMode) \ 
        VIEW_UNIFORM_BUFFER_MEMBER(float, HMDEyePaddingOffset) \ 
        VIEW_UNIFORM_BUFFER_MEMBER_EX(float, ReflectionCubemapMaxMip, EShaderPrecisionModifier::Half) \  
        VIEW_UNIFORM_BUFFER_MEMBER(float, ShowDecalsMask) \  
        VIEW_UNIFORM_BUFFER_MEMBER(uint32, DistanceFieldAOSpecularOcclusionMode) \  
        VIEW_UNIFORM_BUFFER_MEMBER(float, IndirectCapsuleSelfShadowingIntensity) \  
        VIEW_UNIFORM_BUFFER_MEMBER(FVector, ReflectionEnvironmentRoughnessMixingScaleBiasAndLargestWeight) \  
        VIEW_UNIFORM_BUFFER_MEMBER(int32, StereoPassIndex) \  
        VIEW_UNIFORM_BUFFER_MEMBER_ARRAY(FVector4, GlobalVolumeCenterAndExtent, \[GMaxGlobalDistanceFieldClipmaps]) \  
        VIEW_UNIFORM_BUFFER_MEMBER_ARRAY(FVector4, GlobalVolumeWorldToUVAddAndMul, \[GMaxGlobalDistanceFieldClipmaps]) \  
        VIEW_UNIFORM_BUFFER_MEMBER(float, GlobalVolumeDimension) \  
        VIEW_UNIFORM_BUFFER_MEMBER(float, GlobalVolumeTexelSize) \ 
        VIEW_UNIFORM_BUFFER_MEMBER(float, MaxGlobalDistance) \
        VIEW_UNIFORM_BUFFER_MEMBER(float, bCheckerboardSubsurfaceProfileRendering) \  
        VIEW_UNIFORM_BUFFER_MEMBER(FVector, VolumetricFogInvGridSize) \  
        VIEW_UNIFORM_BUFFER_MEMBER(FVector, VolumetricFogGridZParams) \  
        VIEW_UNIFORM_BUFFER_MEMBER(FVector2D, VolumetricFogSVPosToVolumeUV) \  
        VIEW_UNIFORM_BUFFER_MEMBER(float, VolumetricFogMaxDistance) \  
        VIEW_UNIFORM_BUFFER_MEMBER(FVector, VolumetricLightmapWorldToUVScale) \ 
        VIEW_UNIFORM_BUFFER_MEMBER(FVector, VolumetricLightmapWorldToUVAdd) \  
        VIEW_UNIFORM_BUFFER_MEMBER(FVector, VolumetricLightmapIndirectionTextureSize) \  
        VIEW_UNIFORM_BUFFER_MEMBER(float, VolumetricLightmapBrickSize) \
        VIEW_UNIFORM_BUFFER_MEMBER(FVector, VolumetricLightmapBrickTexelSize) \ 
        VIEW_UNIFORM_BUFFER_MEMBER(float, StereoIPD)

BEGIN_UNIFORM_BUFFER_STRUCT_WITH_CONSTRUCTOR(FViewUniformShaderParameters, ENGINE_API)

VIEW_UNIFORM_BUFFER_MEMBER_TABLE

// Same as Wrap_WorldGroupSettings and Clamp_WorldGroupSettings, but with mipbias=MaterialTextureMipBias.  
        UNIFORM_MEMBER_SAMPLER(SamplerState, MaterialTextureBilinearWrapedSampler)  
        UNIFORM_MEMBER_SAMPLER(SamplerState, MaterialTextureBilinearClampedSampler)

UNIFORM_MEMBER_TEXTURE(Texture3D<uint4>, VolumetricLightmapIndirectionTexture) // FPrecomputedVolumetricLightmapLightingPolicy  
        UNIFORM_MEMBER_TEXTURE(Texture3D, VolumetricLightmapBrickAmbientVector) // FPrecomputedVolumetricLightmapLightingPolicy  
        UNIFORM_MEMBER_TEXTURE(Texture3D, VolumetricLightmapBrickSHCoefficients0) // FPrecomputedVolumetricLightmapLightingPolicy  
        UNIFORM_MEMBER_TEXTURE(Texture3D, VolumetricLightmapBrickSHCoefficients1) // FPrecomputedVolumetricLightmapLightingPolicy  
        UNIFORM_MEMBER_TEXTURE(Texture3D, VolumetricLightmapBrickSHCoefficients2) // FPrecomputedVolumetricLightmapLightingPolicy  
        UNIFORM_MEMBER_TEXTURE(Texture3D, VolumetricLightmapBrickSHCoefficients3) // FPrecomputedVolumetricLightmapLightingPolicy  
        UNIFORM_MEMBER_TEXTURE(Texture3D, VolumetricLightmapBrickSHCoefficients4) // FPrecomputedVolumetricLightmapLightingPolicy  
        UNIFORM_MEMBER_TEXTURE(Texture3D, VolumetricLightmapBrickSHCoefficients5) // FPrecomputedVolumetricLightmapLightingPolicy  
        UNIFORM_MEMBER_TEXTURE(Texture3D, SkyBentNormalBrickTexture) // FPrecomputedVolumetricLightmapLightingPolicy  
        UNIFORM_MEMBER_TEXTURE(Texture3D, DirectionalLightShadowingBrickTexture) // FPrecomputedVolumetricLightmapLightingPolicy

UNIFORM_MEMBER_SAMPLER(SamplerState, VolumetricLightmapBrickAmbientVectorSampler) // FPrecomputedVolumetricLightmapLightingPolicy  
        UNIFORM_MEMBER_SAMPLER(SamplerState, VolumetricLightmapTextureSampler0) // FPrecomputedVolumetricLightmapLightingPolicy  
        UNIFORM_MEMBER_SAMPLER(SamplerState, VolumetricLightmapTextureSampler1) // FPrecomputedVolumetricLightmapLightingPolicy  
        UNIFORM_MEMBER_SAMPLER(SamplerState, VolumetricLightmapTextureSampler2) // FPrecomputedVolumetricLightmapLightingPolicy  
        UNIFORM_MEMBER_SAMPLER(SamplerState, VolumetricLightmapTextureSampler3) // FPrecomputedVolumetricLightmapLightingPolicy  
        UNIFORM_MEMBER_SAMPLER(SamplerState, VolumetricLightmapTextureSampler4) // FPrecomputedVolumetricLightmapLightingPolicy  
        UNIFORM_MEMBER_SAMPLER(SamplerState, VolumetricLightmapTextureSampler5) // FPrecomputedVolumetricLightmapLightingPolicy  
        UNIFORM_MEMBER_SAMPLER(SamplerState, SkyBentNormalTextureSampler) // FPrecomputedVolumetricLightmapLightingPolicy  
        UNIFORM_MEMBER_SAMPLER(SamplerState, DirectionalLightShadowingTextureSampler) // FPrecomputedVolumetricLightmapLightingPolicy

UNIFORM_MEMBER_TEXTURE(Texture3D, GlobalDistanceFieldTexture0)  
        UNIFORM_MEMBER_SAMPLER(SamplerState, GlobalDistanceFieldSampler0)  
        UNIFORM_MEMBER_TEXTURE(Texture3D, GlobalDistanceFieldTexture1)  
        UNIFORM_MEMBER_SAMPLER(SamplerState, GlobalDistanceFieldSampler1)  
        UNIFORM_MEMBER_TEXTURE(Texture3D, GlobalDistanceFieldTexture2)  
        UNIFORM_MEMBER_SAMPLER(SamplerState, GlobalDistanceFieldSampler2)  
        UNIFORM_MEMBER_TEXTURE(Texture3D, GlobalDistanceFieldTexture3)  
        UNIFORM_MEMBER_SAMPLER(SamplerState, GlobalDistanceFieldSampler3)

UNIFORM_MEMBER_TEXTURE(Texture2D, AtmosphereTransmittanceTexture)  
        UNIFORM_MEMBER_SAMPLER(SamplerState, AtmosphereTransmittanceTextureSampler)  
        UNIFORM_MEMBER_TEXTURE(Texture2D, AtmosphereIrradianceTexture)  
        UNIFORM_MEMBER_SAMPLER(SamplerState, AtmosphereIrradianceTextureSampler)  
        UNIFORM_MEMBER_TEXTURE(Texture3D, AtmosphereInscatterTexture)  
        UNIFORM_MEMBER_SAMPLER(SamplerState, AtmosphereInscatterTextureSampler)  
        UNIFORM_MEMBER_TEXTURE(Texture2D, PerlinNoiseGradientTexture)  
        UNIFORM_MEMBER_SAMPLER(SamplerState, PerlinNoiseGradientTextureSampler)  
        UNIFORM_MEMBER_TEXTURE(Texture3D, PerlinNoise3DTexture)  
        UNIFORM_MEMBER_SAMPLER(SamplerState, PerlinNoise3DTextureSampler)  
        UNIFORM_MEMBER_TEXTURE(Texture2D<uint>, SobolSamplingTexture)  
        UNIFORM_MEMBER_SAMPLER(SamplerState, SharedPointWrappedSampler)  
        UNIFORM_MEMBER_SAMPLER(SamplerState, SharedPointClampedSampler)  
        UNIFORM_MEMBER_SAMPLER(SamplerState, SharedBilinearWrappedSampler)  
        UNIFORM_MEMBER_SAMPLER(SamplerState, SharedBilinearClampedSampler)  
        UNIFORM_MEMBER_SAMPLER(SamplerState, SharedTrilinearWrappedSampler)  
        UNIFORM_MEMBER_SAMPLER(SamplerState, SharedTrilinearClampedSampler)  
        UNIFORM_MEMBER_TEXTURE(Texture2D, PreIntegratedBRDF)  
        UNIFORM_MEMBER_SAMPLER(SamplerState, PreIntegratedBRDFSampler)

END_UNIFORM_BUFFER_STRUCT(FViewUniformShaderParameters)