23#define MAX_PHYSICS_FIELD_TARGETS 32
43class ITemporalUpscaler;
375 FMatrix InvViewProjectionMatrix;
381 FMatrix InvTranslatedViewMatrix;
383 FMatrix OverriddenTranslatedViewMatrix;
385 FMatrix OverriddenInvTranslatedViewMatrix;
387 FMatrix TranslatedViewProjectionMatrix;
389 FMatrix InvTranslatedViewProjectionMatrix;
416 float PerProjectionDepthThicknessScale;
435 return ProjectionMatrix;
440 return ProjectionNoAAMatrix;
445 return InvProjectionMatrix;
455 return InvViewMatrix;
460 return ViewProjectionMatrix;
465 return InvViewProjectionMatrix;
470 return HMDViewMatrixNoRoll;
475 return TranslatedViewMatrix;
480 return InvTranslatedViewMatrix;
485 return OverriddenTranslatedViewMatrix;
490 return OverriddenInvTranslatedViewMatrix;
495 return TranslatedViewProjectionMatrix;
500 return InvTranslatedViewProjectionMatrix;
505 return ScreenToClipMatrix;
510 return FirstPersonTransform;
520 return PreViewTranslation;
530 return CameraToViewTarget;
540 return ProjectionScale;
546 return ProjectionMatrix.
M[3][3] < 1.0f;
554 return FVector2f(
static_cast<float>(ProjectionMatrix.
M[0][0]),
static_cast<float>(ProjectionMatrix.
M[1][1]));
564 return FVector2f(
static_cast<float>(InvProjectionMatrix.
M[0][0]),
static_cast<float>(InvProjectionMatrix.
M[1][1]));
575 return FVector4f(
static_cast<float>(InvProjectionMatrix.
M[0][0]),
576 static_cast<float>(InvProjectionMatrix.
M[1][1]),
577 static_cast<float>(ProjectionMatrix.
M[0][0]),
578 static_cast<float>(ProjectionMatrix.
M[1][1]));
580 return FVector4f(1.0f, 1.0f, 1.0f, 1.0f);
585 return PerProjectionDepthThicknessScale;
594 ProjectionNoAAMatrix = ProjectionMatrix;
599 ensure(TemporalAAProjectionJitter.
X == 0.0f && TemporalAAProjectionJitter.
Y == 0.0f);
605 ProjectionMatrix.
M[2][0] += TemporalAAProjectionJitter.
X;
606 ProjectionMatrix.
M[2][1] += TemporalAAProjectionJitter.
Y;
610 ProjectionMatrix.
M[3][0] += TemporalAAProjectionJitter.
X;
611 ProjectionMatrix.
M[3][1] += TemporalAAProjectionJitter.
Y;
613 InvProjectionMatrix = InvertProjectionMatrix(ProjectionMatrix);
615 RecomputeDerivedMatrices();
622 ProjectionMatrix.
M[2][0] -= TemporalAAProjectionJitter.
X;
623 ProjectionMatrix.
M[2][1] -= TemporalAAProjectionJitter.
Y;
627 ProjectionMatrix.
M[3][0] -= TemporalAAProjectionJitter.
X;
628 ProjectionMatrix.
M[3][1] -= TemporalAAProjectionJitter.
Y;
630 InvProjectionMatrix = InvertProjectionMatrix(ProjectionMatrix);
633 RecomputeDerivedMatrices();
656 return TemporalAAProjectionJitter;
692 return ( ProjectionMatrix.
M[3][3] - ProjectionMatrix.
M[3][2] ) / ( ProjectionMatrix.
M[2][2] - ProjectionMatrix.
M[2][3] );
706 ViewOrigin+= InOffset;
707 PreViewTranslation-= InOffset;
711 RecomputeDerivedMatrices();
718 return FVector2f(
static_cast<float>(InvProjectionMatrix.
M[0][0]) * 2.0f,
static_cast<float>(InvProjectionMatrix.
M[1][1]) * 2.0f);
750 return FVector4f(1.0f, 1.0f, 1.0f, 1.0f);
754 inline void RecomputeDerivedMatrices()
767 if( M.
M[1][0] == 0.0f &&
787 double a = M.
M[0][0];
788 double b = M.
M[1][1];
789 double c = M.
M[2][2];
790 double d = M.
M[3][2];
791 double s = M.
M[2][0];
792 double t = M.
M[2][1];
795 FPlane( 1.0 / a, 0.0f, 0.0f, 0.0f ),
796 FPlane( 0.0f, 1.0 / b, 0.0f, 0.0f ),
797 FPlane( 0.0f, 0.0f, 0.0f, 1.0 / d ),
798 FPlane( -s/a, -t/b, 1.0f, -c/d )
842#define SKY_IRRADIANCE_ENVIRONMENT_MAP_VEC4_COUNT 8
849#define VIEW_UNIFORM_BUFFER_MEMBER_TABLE \
850 VIEW_UNIFORM_BUFFER_MEMBER_PER_VIEW(FMatrix44f, TranslatedWorldToClip) \
851 VIEW_UNIFORM_BUFFER_MEMBER_PER_VIEW(FMatrix44f, RelativeWorldToClip) \
852 VIEW_UNIFORM_BUFFER_MEMBER_PER_VIEW(FMatrix44f, ClipToRelativeWorld) \
853 VIEW_UNIFORM_BUFFER_MEMBER_PER_VIEW(FMatrix44f, TranslatedWorldToView) \
854 VIEW_UNIFORM_BUFFER_MEMBER_PER_VIEW(FMatrix44f, ViewToTranslatedWorld) \
855 VIEW_UNIFORM_BUFFER_MEMBER_PER_VIEW(FMatrix44f, TranslatedWorldToCameraView) \
856 VIEW_UNIFORM_BUFFER_MEMBER_PER_VIEW(FMatrix44f, CameraViewToTranslatedWorld) \
857 VIEW_UNIFORM_BUFFER_MEMBER_PER_VIEW(FMatrix44f, ViewToClip) \
858 VIEW_UNIFORM_BUFFER_MEMBER_PER_VIEW(FMatrix44f, ViewToClipNoAA) \
859 VIEW_UNIFORM_BUFFER_MEMBER_PER_VIEW(FMatrix44f, ClipToView) \
860 VIEW_UNIFORM_BUFFER_MEMBER_PER_VIEW(FMatrix44f, ClipToTranslatedWorld) \
861 VIEW_UNIFORM_BUFFER_MEMBER_PER_VIEW(FMatrix44f, SVPositionToTranslatedWorld) \
862 VIEW_UNIFORM_BUFFER_MEMBER_PER_VIEW(FMatrix44f, ScreenToRelativeWorld) \
863 VIEW_UNIFORM_BUFFER_MEMBER_PER_VIEW(FMatrix44f, ScreenToTranslatedWorld) \
864 VIEW_UNIFORM_BUFFER_MEMBER_PER_VIEW(FMatrix44f, MobileMultiviewShadowTransform) \
865 VIEW_UNIFORM_BUFFER_MEMBER_PER_VIEW(FMatrix44f, MobileMultiviewDecalTransform) \
866 VIEW_UNIFORM_BUFFER_MEMBER_PER_VIEW(FMatrix44f, FirstPersonTransform) \
867 VIEW_UNIFORM_BUFFER_MEMBER_PER_VIEW(FMatrix44f, PrevFirstPersonTransform) \
868 VIEW_UNIFORM_BUFFER_MEMBER_PER_VIEW(FVector3f, ViewOriginHigh) \
869 VIEW_UNIFORM_BUFFER_MEMBER_EX(FVector3f, ViewForward, EShaderPrecisionModifier::Half) \
870 VIEW_UNIFORM_BUFFER_MEMBER_EX(FVector3f, ViewUp, EShaderPrecisionModifier::Half) \
871 VIEW_UNIFORM_BUFFER_MEMBER_EX(FVector3f, ViewRight, EShaderPrecisionModifier::Half) \
872 VIEW_UNIFORM_BUFFER_MEMBER_PER_VIEW_EX(FVector3f, HMDViewNoRollUp, EShaderPrecisionModifier::Half) \
873 VIEW_UNIFORM_BUFFER_MEMBER_PER_VIEW_EX(FVector3f, HMDViewNoRollRight, EShaderPrecisionModifier::Half) \
874 VIEW_UNIFORM_BUFFER_MEMBER_PER_VIEW(FVector4f, InvDeviceZToWorldZTransform) \
875 VIEW_UNIFORM_BUFFER_MEMBER_PER_VIEW_EX(FVector4f, ScreenPositionScaleBias, EShaderPrecisionModifier::Half) \
876 VIEW_UNIFORM_BUFFER_MEMBER_PER_VIEW(FVector3f, ViewOriginLow) \
877 VIEW_UNIFORM_BUFFER_MEMBER_PER_VIEW(FVector3f, TranslatedWorldCameraOrigin) \
878 VIEW_UNIFORM_BUFFER_MEMBER_PER_VIEW(FVector3f, WorldViewOriginHigh) \
879 VIEW_UNIFORM_BUFFER_MEMBER_PER_VIEW(FVector3f, WorldViewOriginLow) \
880 VIEW_UNIFORM_BUFFER_MEMBER_PER_VIEW(FVector3f, PreViewTranslationHigh) \
881 VIEW_UNIFORM_BUFFER_MEMBER_PER_VIEW(FVector3f, PreViewTranslationLow) \
882 VIEW_UNIFORM_BUFFER_MEMBER_PER_VIEW(FMatrix44f, PrevViewToClip) \
883 VIEW_UNIFORM_BUFFER_MEMBER_PER_VIEW(FMatrix44f, PrevClipToView) \
884 VIEW_UNIFORM_BUFFER_MEMBER_PER_VIEW(FMatrix44f, PrevTranslatedWorldToClip) \
885 VIEW_UNIFORM_BUFFER_MEMBER_PER_VIEW(FMatrix44f, PrevTranslatedWorldToView) \
886 VIEW_UNIFORM_BUFFER_MEMBER_PER_VIEW(FMatrix44f, PrevViewToTranslatedWorld) \
887 VIEW_UNIFORM_BUFFER_MEMBER_PER_VIEW(FMatrix44f, PrevTranslatedWorldToCameraView) \
888 VIEW_UNIFORM_BUFFER_MEMBER_PER_VIEW(FMatrix44f, PrevCameraViewToTranslatedWorld) \
889 VIEW_UNIFORM_BUFFER_MEMBER_PER_VIEW(FVector3f, PrevTranslatedWorldCameraOrigin) \
890 VIEW_UNIFORM_BUFFER_MEMBER_PER_VIEW(FVector3f, PrevWorldCameraOriginHigh) \
891 VIEW_UNIFORM_BUFFER_MEMBER_PER_VIEW(FVector3f, PrevWorldCameraOriginLow) \
892 VIEW_UNIFORM_BUFFER_MEMBER_PER_VIEW(FVector3f, PrevWorldViewOriginHigh) \
893 VIEW_UNIFORM_BUFFER_MEMBER_PER_VIEW(FVector3f, PrevWorldViewOriginLow) \
894 VIEW_UNIFORM_BUFFER_MEMBER_PER_VIEW(FVector3f, PrevPreViewTranslationHigh) \
895 VIEW_UNIFORM_BUFFER_MEMBER_PER_VIEW(FVector3f, PrevPreViewTranslationLow) \
896 VIEW_UNIFORM_BUFFER_MEMBER_PER_VIEW(FVector3f, ViewTilePosition) \
897 VIEW_UNIFORM_BUFFER_MEMBER_PER_VIEW(FVector3f, RelativeWorldCameraOriginTO) \
898 VIEW_UNIFORM_BUFFER_MEMBER_PER_VIEW(FVector3f, RelativeWorldViewOriginTO) \
899 VIEW_UNIFORM_BUFFER_MEMBER_PER_VIEW(FVector3f, RelativePreViewTranslationTO) \
900 VIEW_UNIFORM_BUFFER_MEMBER_PER_VIEW(FVector3f, PrevRelativeWorldCameraOriginTO) \
901 VIEW_UNIFORM_BUFFER_MEMBER_PER_VIEW(FVector3f, PrevRelativeWorldViewOriginTO) \
902 VIEW_UNIFORM_BUFFER_MEMBER_PER_VIEW(FVector3f, RelativePrevPreViewTranslationTO) \
903 VIEW_UNIFORM_BUFFER_MEMBER_PER_VIEW(FMatrix44f, PrevClipToRelativeWorld) \
904 VIEW_UNIFORM_BUFFER_MEMBER_PER_VIEW(FMatrix44f, PrevScreenToTranslatedWorld) \
905 VIEW_UNIFORM_BUFFER_MEMBER_PER_VIEW(FMatrix44f, ClipToPrevClip) \
906 VIEW_UNIFORM_BUFFER_MEMBER_PER_VIEW(FMatrix44f, ClipToPrevClipWithAA) \
907 VIEW_UNIFORM_BUFFER_MEMBER_PER_VIEW(FVector4f, TemporalAAJitter) \
908 VIEW_UNIFORM_BUFFER_MEMBER_PER_VIEW(FVector4f, GlobalClippingPlane) \
909 VIEW_UNIFORM_BUFFER_MEMBER_PER_VIEW(FVector2f, FieldOfViewWideAngles) \
910 VIEW_UNIFORM_BUFFER_MEMBER_PER_VIEW(FVector2f, PrevFieldOfViewWideAngles) \
911 VIEW_UNIFORM_BUFFER_MEMBER_PER_VIEW(FVector2f, FirstPersonFieldOfViewWideAngles) \
912 VIEW_UNIFORM_BUFFER_MEMBER_PER_VIEW(FVector2f, PrevFirstPersonFieldOfViewWideAngles) \
913 VIEW_UNIFORM_BUFFER_MEMBER_PER_VIEW_EX(FVector4f, ViewRectMin, EShaderPrecisionModifier::Half) \
914 VIEW_UNIFORM_BUFFER_MEMBER(FVector4f, ViewSizeAndInvSize) \
915 VIEW_UNIFORM_BUFFER_MEMBER(FUintVector4, ViewRectMinAndSize) \
916 VIEW_UNIFORM_BUFFER_MEMBER(FVector4f, LightProbeSizeRatioAndInvSizeRatio) \
917 VIEW_UNIFORM_BUFFER_MEMBER(FVector4f, BufferSizeAndInvSize) \
918 VIEW_UNIFORM_BUFFER_MEMBER_PER_VIEW(FVector4f, BufferBilinearUVMinMax) \
919 VIEW_UNIFORM_BUFFER_MEMBER_PER_VIEW(FVector4f, ScreenToViewSpace) \
920 VIEW_UNIFORM_BUFFER_MEMBER_PER_VIEW(FVector2f, BufferToSceneTextureScale) \
921 VIEW_UNIFORM_BUFFER_MEMBER(FVector2f, ResolutionFractionAndInv) \
922 VIEW_UNIFORM_BUFFER_MEMBER(int32, NumSceneColorMSAASamples) \
923 VIEW_UNIFORM_BUFFER_MEMBER_PER_VIEW(float, ProjectionDepthThicknessScale) \
924 VIEW_UNIFORM_BUFFER_MEMBER(float, PreExposure) \
925 VIEW_UNIFORM_BUFFER_MEMBER(float, OneOverPreExposure) \
926 VIEW_UNIFORM_BUFFER_MEMBER_EX(FVector4f, DiffuseOverrideParameter, EShaderPrecisionModifier::Half) \
927 VIEW_UNIFORM_BUFFER_MEMBER_EX(FVector4f, SpecularOverrideParameter, EShaderPrecisionModifier::Half) \
928 VIEW_UNIFORM_BUFFER_MEMBER_EX(FVector4f, NormalOverrideParameter, EShaderPrecisionModifier::Half) \
929 VIEW_UNIFORM_BUFFER_MEMBER_EX(FVector2f, RoughnessOverrideParameter, EShaderPrecisionModifier::Half) \
930 VIEW_UNIFORM_BUFFER_MEMBER_EX(FVector2f, AmbientOcclusionOverrideParameter, EShaderPrecisionModifier::Half) \
931 VIEW_UNIFORM_BUFFER_MEMBER(float, PrevFrameGameTime) \
932 VIEW_UNIFORM_BUFFER_MEMBER(float, PrevFrameRealTime) \
933 VIEW_UNIFORM_BUFFER_MEMBER_EX(float, OutOfBoundsMask, EShaderPrecisionModifier::Half) \
934 VIEW_UNIFORM_BUFFER_MEMBER_PER_VIEW(FVector3f, WorldCameraMovementSinceLastFrame) \
935 VIEW_UNIFORM_BUFFER_MEMBER(float, CullingSign) \
936 VIEW_UNIFORM_BUFFER_MEMBER_PER_VIEW_EX(float, NearPlane, EShaderPrecisionModifier::Half) \
937 VIEW_UNIFORM_BUFFER_MEMBER_PER_VIEW(float, OrthoFarPlane) \
938 VIEW_UNIFORM_BUFFER_MEMBER(float, GameTime) \
939 VIEW_UNIFORM_BUFFER_MEMBER(float, RealTime) \
940 VIEW_UNIFORM_BUFFER_MEMBER(float, DeltaTime) \
941 VIEW_UNIFORM_BUFFER_MEMBER(float, MaterialTextureMipBias) \
942 VIEW_UNIFORM_BUFFER_MEMBER(float, MaterialTextureDerivativeMultiply) \
943 VIEW_UNIFORM_BUFFER_MEMBER(uint32, Random) \
944 VIEW_UNIFORM_BUFFER_MEMBER(uint32, FrameNumber) \
945 VIEW_UNIFORM_BUFFER_MEMBER(uint32, FrameCounter) \
946 VIEW_UNIFORM_BUFFER_MEMBER(uint32, StateFrameIndexMod8) \
947 VIEW_UNIFORM_BUFFER_MEMBER(uint32, StateFrameIndex) \
948 VIEW_UNIFORM_BUFFER_MEMBER(uint32, StateOutputFrameIndex) \
949 VIEW_UNIFORM_BUFFER_MEMBER(uint32, DebugViewModeMask) \
950 VIEW_UNIFORM_BUFFER_MEMBER(uint32, WorldIsPaused) \
951 VIEW_UNIFORM_BUFFER_MEMBER_EX(float, CameraCut, EShaderPrecisionModifier::Half) \
952 VIEW_UNIFORM_BUFFER_MEMBER_EX(float, UnlitViewmodeMask, EShaderPrecisionModifier::Half) \
953 VIEW_UNIFORM_BUFFER_MEMBER_EX(FLinearColor, DirectionalLightColor, EShaderPrecisionModifier::Half) \
954 VIEW_UNIFORM_BUFFER_MEMBER_EX(FVector3f, DirectionalLightDirection, EShaderPrecisionModifier::Half) \
955 VIEW_UNIFORM_BUFFER_MEMBER_ARRAY(FVector4f, TranslucencyLightingVolumeMin, TVC_MAX) \
956 VIEW_UNIFORM_BUFFER_MEMBER_ARRAY(FVector4f, TranslucencyLightingVolumeInvSize, TVC_MAX) \
957 VIEW_UNIFORM_BUFFER_MEMBER(FVector4f, TemporalAAParams) \
958 VIEW_UNIFORM_BUFFER_MEMBER(FVector4f, CircleDOFParams) \
959 VIEW_UNIFORM_BUFFER_MEMBER(float, DepthOfFieldSensorWidth) \
960 VIEW_UNIFORM_BUFFER_MEMBER(float, DepthOfFieldFocalDistance) \
961 VIEW_UNIFORM_BUFFER_MEMBER(float, DepthOfFieldScale) \
962 VIEW_UNIFORM_BUFFER_MEMBER(float, DepthOfFieldFocalLength) \
963 VIEW_UNIFORM_BUFFER_MEMBER(float, DepthOfFieldFocalRegion) \
964 VIEW_UNIFORM_BUFFER_MEMBER(float, DepthOfFieldNearTransitionRegion) \
965 VIEW_UNIFORM_BUFFER_MEMBER(float, DepthOfFieldFarTransitionRegion) \
966 VIEW_UNIFORM_BUFFER_MEMBER(float, MotionBlurNormalizedToPixel) \
967 VIEW_UNIFORM_BUFFER_MEMBER(float, GeneralPurposeTweak) \
968 VIEW_UNIFORM_BUFFER_MEMBER(float, GeneralPurposeTweak2) \
969 VIEW_UNIFORM_BUFFER_MEMBER_EX(float, DemosaicVposOffset, EShaderPrecisionModifier::Half) \
970 VIEW_UNIFORM_BUFFER_MEMBER(float, DecalDepthBias) \
971 VIEW_UNIFORM_BUFFER_MEMBER(FVector3f, SceneColorTextureFormatQuantizationError) \
972 VIEW_UNIFORM_BUFFER_MEMBER(FVector3f, IndirectLightingColorScale) \
973 VIEW_UNIFORM_BUFFER_MEMBER(FVector3f, PrecomputedIndirectLightingColorScale) \
974 VIEW_UNIFORM_BUFFER_MEMBER(FVector3f, PrecomputedIndirectSpecularColorScale) \
975 VIEW_UNIFORM_BUFFER_MEMBER_ARRAY(FVector4f, AtmosphereLightDirection, NUM_ATMOSPHERE_LIGHTS) \
976 VIEW_UNIFORM_BUFFER_MEMBER_ARRAY(FLinearColor, AtmosphereLightIlluminanceOnGroundPostTransmittance, NUM_ATMOSPHERE_LIGHTS) \
977 VIEW_UNIFORM_BUFFER_MEMBER_ARRAY(FLinearColor, AtmosphereLightIlluminanceOuterSpace, NUM_ATMOSPHERE_LIGHTS) \
978 VIEW_UNIFORM_BUFFER_MEMBER_ARRAY(FLinearColor, AtmosphereLightDiscLuminance, NUM_ATMOSPHERE_LIGHTS) \
979 VIEW_UNIFORM_BUFFER_MEMBER_ARRAY(FVector4f, AtmosphereLightDiscCosHalfApexAngle_PPTrans, NUM_ATMOSPHERE_LIGHTS) \
980 VIEW_UNIFORM_BUFFER_MEMBER(FVector4f, SkyViewLutSizeAndInvSize) \
981 VIEW_UNIFORM_BUFFER_MEMBER(FVector3f, SkyCameraTranslatedWorldOrigin) \
982 VIEW_UNIFORM_BUFFER_MEMBER(FVector4f, SkyPlanetTranslatedWorldCenterAndViewHeight) \
983 VIEW_UNIFORM_BUFFER_MEMBER(FMatrix44f, SkyViewLutReferential) \
984 VIEW_UNIFORM_BUFFER_MEMBER(FLinearColor, SkyAtmosphereSkyLuminanceFactor) \
985 VIEW_UNIFORM_BUFFER_MEMBER(float, SkyAtmospherePresentInScene) \
986 VIEW_UNIFORM_BUFFER_MEMBER(float, SkyAtmosphereHeightFogContribution) \
987 VIEW_UNIFORM_BUFFER_MEMBER(float, SkyAtmosphereBottomRadiusKm) \
988 VIEW_UNIFORM_BUFFER_MEMBER(float, SkyAtmosphereTopRadiusKm) \
989 VIEW_UNIFORM_BUFFER_MEMBER(FVector4f, SkyAtmosphereCameraAerialPerspectiveVolumeSizeAndInvSize) \
990 VIEW_UNIFORM_BUFFER_MEMBER(float, SkyAtmosphereAerialPerspectiveStartDepthKm) \
991 VIEW_UNIFORM_BUFFER_MEMBER(float, SkyAtmosphereCameraAerialPerspectiveVolumeDepthResolution) \
992 VIEW_UNIFORM_BUFFER_MEMBER(float, SkyAtmosphereCameraAerialPerspectiveVolumeDepthResolutionInv) \
993 VIEW_UNIFORM_BUFFER_MEMBER(float, SkyAtmosphereCameraAerialPerspectiveVolumeDepthSliceLengthKm) \
994 VIEW_UNIFORM_BUFFER_MEMBER(float, SkyAtmosphereCameraAerialPerspectiveVolumeDepthSliceLengthKmInv) \
995 VIEW_UNIFORM_BUFFER_MEMBER(float, SkyAtmosphereApplyCameraAerialPerspectiveVolume) \
996 VIEW_UNIFORM_BUFFER_MEMBER(FVector3f, NormalCurvatureToRoughnessScaleBias) \
997 VIEW_UNIFORM_BUFFER_MEMBER(float, RenderingReflectionCaptureMask) \
998 VIEW_UNIFORM_BUFFER_MEMBER(float, RealTimeReflectionCapture) \
999 VIEW_UNIFORM_BUFFER_MEMBER(float, RealTimeReflectionCapturePreExposure) \
1000 VIEW_UNIFORM_BUFFER_MEMBER(FLinearColor, AmbientCubemapTint) \
1001 VIEW_UNIFORM_BUFFER_MEMBER(float, AmbientCubemapIntensity) \
1002 VIEW_UNIFORM_BUFFER_MEMBER(float, SkyLightApplyPrecomputedBentNormalShadowingFlag) \
1003 VIEW_UNIFORM_BUFFER_MEMBER(float, SkyLightAffectReflectionFlag) \
1004 VIEW_UNIFORM_BUFFER_MEMBER(float, SkyLightAffectGlobalIlluminationFlag) \
1005 VIEW_UNIFORM_BUFFER_MEMBER(FLinearColor, SkyLightColor) \
1006 VIEW_UNIFORM_BUFFER_MEMBER(float, SkyLightVolumetricScatteringIntensity) \
1007 VIEW_UNIFORM_BUFFER_MEMBER_ARRAY(FVector4f, MobileSkyIrradianceEnvironmentMap, SKY_IRRADIANCE_ENVIRONMENT_MAP_VEC4_COUNT) \
1008 VIEW_UNIFORM_BUFFER_MEMBER(float, MobilePreviewMode) \
1009 VIEW_UNIFORM_BUFFER_MEMBER_PER_VIEW(float, HMDEyePaddingOffset) \
1010 VIEW_UNIFORM_BUFFER_MEMBER_EX(float, ReflectionCubemapMaxMip, EShaderPrecisionModifier::Half) \
1011 VIEW_UNIFORM_BUFFER_MEMBER(float, ShowDecalsMask) \
1012 VIEW_UNIFORM_BUFFER_MEMBER(uint32, DistanceFieldAOSpecularOcclusionMode) \
1013 VIEW_UNIFORM_BUFFER_MEMBER(float, IndirectCapsuleSelfShadowingIntensity) \
1014 VIEW_UNIFORM_BUFFER_MEMBER(FVector3f, ReflectionEnvironmentRoughnessMixingScaleBiasAndLargestWeight) \
1015 VIEW_UNIFORM_BUFFER_MEMBER_PER_VIEW(int32, StereoPassIndex) \
1016 VIEW_UNIFORM_BUFFER_MEMBER_ARRAY(FVector4f, GlobalVolumeTranslatedCenterAndExtent, GlobalDistanceField::MaxClipmaps) \
1017 VIEW_UNIFORM_BUFFER_MEMBER_ARRAY(FVector4f, GlobalVolumeTranslatedWorldToUVAddAndMul, GlobalDistanceField::MaxClipmaps) \
1018 VIEW_UNIFORM_BUFFER_MEMBER_ARRAY(FVector4f, GlobalDistanceFieldMipTranslatedWorldToUVScale, GlobalDistanceField::MaxClipmaps) \
1019 VIEW_UNIFORM_BUFFER_MEMBER_ARRAY(FVector4f, GlobalDistanceFieldMipTranslatedWorldToUVBias, GlobalDistanceField::MaxClipmaps) \
1020 VIEW_UNIFORM_BUFFER_MEMBER(float, GlobalDistanceFieldMipFactor) \
1021 VIEW_UNIFORM_BUFFER_MEMBER(float, GlobalDistanceFieldMipTransition) \
1022 VIEW_UNIFORM_BUFFER_MEMBER(int32, GlobalDistanceFieldClipmapSizeInPages) \
1023 VIEW_UNIFORM_BUFFER_MEMBER(FVector3f, GlobalDistanceFieldInvPageAtlasSize) \
1024 VIEW_UNIFORM_BUFFER_MEMBER(FVector3f, GlobalDistanceFieldInvCoverageAtlasSize) \
1025 VIEW_UNIFORM_BUFFER_MEMBER(float, GlobalVolumeDimension) \
1026 VIEW_UNIFORM_BUFFER_MEMBER(float, GlobalVolumeTexelSize) \
1027 VIEW_UNIFORM_BUFFER_MEMBER(float, MaxGlobalDFAOConeDistance) \
1028 VIEW_UNIFORM_BUFFER_MEMBER(uint32, NumGlobalSDFClipmaps) \
1029 VIEW_UNIFORM_BUFFER_MEMBER(float, CoveredExpandSurfaceScale) \
1030 VIEW_UNIFORM_BUFFER_MEMBER(float, NotCoveredExpandSurfaceScale) \
1031 VIEW_UNIFORM_BUFFER_MEMBER(float, NotCoveredMinStepScale) \
1032 VIEW_UNIFORM_BUFFER_MEMBER(float, DitheredTransparencyStepThreshold) \
1033 VIEW_UNIFORM_BUFFER_MEMBER(float, DitheredTransparencyTraceThreshold) \
1034 VIEW_UNIFORM_BUFFER_MEMBER(float, ViewportScaleUI) \
1035 VIEW_UNIFORM_BUFFER_MEMBER(FIntPoint, CursorPosition) \
1036 VIEW_UNIFORM_BUFFER_MEMBER(float, bCheckerboardSubsurfaceProfileRendering) \
1037 VIEW_UNIFORM_BUFFER_MEMBER(FVector3f, VolumetricFogInvGridSize) \
1038 VIEW_UNIFORM_BUFFER_MEMBER(FVector3f, VolumetricFogGridZParams) \
1039 VIEW_UNIFORM_BUFFER_MEMBER(FVector2f, VolumetricFogSVPosToVolumeUV) \
1040 VIEW_UNIFORM_BUFFER_MEMBER(FVector2f, VolumetricFogViewGridUVToPrevViewRectUV) \
1041 VIEW_UNIFORM_BUFFER_MEMBER(FVector2f, VolumetricFogPrevViewGridRectUVToResourceUV) \
1042 VIEW_UNIFORM_BUFFER_MEMBER(FVector2f, VolumetricFogPrevUVMax) \
1043 VIEW_UNIFORM_BUFFER_MEMBER(FVector2f, VolumetricFogPrevUVMaxForTemporalBlend) \
1044 VIEW_UNIFORM_BUFFER_MEMBER(FVector3f, VolumetricFogPrevResourceGridSize) \
1045 VIEW_UNIFORM_BUFFER_MEMBER(FVector2f, VolumetricFogScreenToResourceUV) \
1046 VIEW_UNIFORM_BUFFER_MEMBER(FVector2f, VolumetricFogUVMax) \
1047 VIEW_UNIFORM_BUFFER_MEMBER(float, VolumetricFogMaxDistance) \
1048 VIEW_UNIFORM_BUFFER_MEMBER(FVector3f, VolumetricLightmapWorldToUVScale) \
1049 VIEW_UNIFORM_BUFFER_MEMBER(FVector3f, VolumetricLightmapWorldToUVAdd) \
1050 VIEW_UNIFORM_BUFFER_MEMBER(FVector3f, VolumetricLightmapIndirectionTextureSize) \
1051 VIEW_UNIFORM_BUFFER_MEMBER(float, VolumetricLightmapBrickSize) \
1052 VIEW_UNIFORM_BUFFER_MEMBER(FVector3f, VolumetricLightmapBrickTexelSize) \
1053 VIEW_UNIFORM_BUFFER_MEMBER(float, IndirectLightingCacheShowFlag) \
1054 VIEW_UNIFORM_BUFFER_MEMBER(float, EyeToPixelSpreadAngle) \
1055 VIEW_UNIFORM_BUFFER_MEMBER_ARRAY(FVector4f, XRPassthroughCameraUVs, 2) \
1056 VIEW_UNIFORM_BUFFER_MEMBER(FVector4f, GlobalVirtualTextureMipBias) \
1057 VIEW_UNIFORM_BUFFER_MEMBER(uint32, VirtualTextureFeedbackBufferSize) \
1058 VIEW_UNIFORM_BUFFER_MEMBER(uint32, VirtualTextureFeedbackShift) \
1059 VIEW_UNIFORM_BUFFER_MEMBER(uint32, VirtualTextureFeedbackMask) \
1060 VIEW_UNIFORM_BUFFER_MEMBER(uint32, VirtualTextureFeedbackJitterOffset) \
1061 VIEW_UNIFORM_BUFFER_MEMBER(uint32, VirtualTextureFeedbackSampleOffset) \
1062 VIEW_UNIFORM_BUFFER_MEMBER(uint32, VirtualTextureExtendedDebugBufferSize) \
1063 VIEW_UNIFORM_BUFFER_MEMBER(int32, FarShadowStaticMeshLODBias) \
1064 VIEW_UNIFORM_BUFFER_MEMBER(float, MinRoughness) \
1065 VIEW_UNIFORM_BUFFER_MEMBER(FVector4f, HairRenderInfo) \
1066 VIEW_UNIFORM_BUFFER_MEMBER(uint32, EnableSkyLight) \
1067 VIEW_UNIFORM_BUFFER_MEMBER(uint32, HairRenderInfoBits) \
1068 VIEW_UNIFORM_BUFFER_MEMBER(uint32, HairComponents) \
1069 VIEW_UNIFORM_BUFFER_MEMBER(float, bSubsurfacePostprocessEnabled) \
1070 VIEW_UNIFORM_BUFFER_MEMBER(FVector4f, SSProfilesTextureSizeAndInvSize) \
1071 VIEW_UNIFORM_BUFFER_MEMBER(FVector4f, SSProfilesPreIntegratedTextureSizeAndInvSize) \
1072 VIEW_UNIFORM_BUFFER_MEMBER(FVector4f, SpecularProfileTextureSizeAndInvSize) \
1073 VIEW_UNIFORM_BUFFER_MEMBER(FVector3f, PhysicsFieldClipmapCenter) \
1074 VIEW_UNIFORM_BUFFER_MEMBER(float, PhysicsFieldClipmapDistance) \
1075 VIEW_UNIFORM_BUFFER_MEMBER(int, PhysicsFieldClipmapResolution) \
1076 VIEW_UNIFORM_BUFFER_MEMBER(int, PhysicsFieldClipmapExponent) \
1077 VIEW_UNIFORM_BUFFER_MEMBER(int, PhysicsFieldClipmapCount) \
1078 VIEW_UNIFORM_BUFFER_MEMBER(int, PhysicsFieldTargetCount) \
1079 VIEW_UNIFORM_BUFFER_MEMBER_ARRAY(FIntVector4, PhysicsFieldTargets, MAX_PHYSICS_FIELD_TARGETS) \
1080 VIEW_UNIFORM_BUFFER_MEMBER_PER_VIEW(uint32, GPUSceneViewId) \
1081 VIEW_UNIFORM_BUFFER_MEMBER(float, ViewResolutionFraction) \
1082 VIEW_UNIFORM_BUFFER_MEMBER(float, SubSurfaceColorAsTransmittanceAtDistanceInMeters) \
1083 VIEW_UNIFORM_BUFFER_MEMBER_PER_VIEW(FVector4f, TanAndInvTanHalfFOV) \
1084 VIEW_UNIFORM_BUFFER_MEMBER_PER_VIEW(FVector4f, PrevTanAndInvTanHalfFOV) \
1085 VIEW_UNIFORM_BUFFER_MEMBER_PER_VIEW(FVector4f, FirstPersonTanAndInvTanHalfFOV) \
1086 VIEW_UNIFORM_BUFFER_MEMBER_PER_VIEW(FVector4f, PrevFirstPersonTanAndInvTanHalfFOV) \
1087 VIEW_UNIFORM_BUFFER_MEMBER_PER_VIEW(FVector2f, WorldDepthToPixelWorldRadius) \
1088 VIEW_UNIFORM_BUFFER_MEMBER_PER_VIEW(FVector4f, ScreenRayLengthMultiplier) \
1089 VIEW_UNIFORM_BUFFER_MEMBER_PER_VIEW(FVector4f, GlintLUTParameters0) \
1090 VIEW_UNIFORM_BUFFER_MEMBER_PER_VIEW(FVector4f, GlintLUTParameters1) \
1091 VIEW_UNIFORM_BUFFER_MEMBER_PER_VIEW(float, FirstPersonScale) \
1092 VIEW_UNIFORM_BUFFER_MEMBER_PER_VIEW(float, PrevFirstPersonScale) \
1093 VIEW_UNIFORM_BUFFER_MEMBER(float, MaterialMaxEmissiveValue) \
1094 VIEW_UNIFORM_BUFFER_MEMBER(int32, PostVolumeUserFlags) \
1095 VIEW_UNIFORM_BUFFER_MEMBER(FIntVector4, EnvironmentComponentsFlags) \
1096 VIEW_UNIFORM_BUFFER_MEMBER(uint32, bPrimitiveAlphaHoldoutEnabled) \
1099#define VIEW_UNIFORM_BUFFER_MEMBER(type, identifier) \
1100 SHADER_PARAMETER(type, identifier)
1102#define VIEW_UNIFORM_BUFFER_MEMBER_PER_VIEW(type, identifier) \
1103 SHADER_PARAMETER(type, identifier)
1105#define VIEW_UNIFORM_BUFFER_MEMBER_EX(type, identifier, precision) \
1106 SHADER_PARAMETER_EX(type, identifier, precision)
1108#define VIEW_UNIFORM_BUFFER_MEMBER_PER_VIEW_EX(type, identifier, precision) \
1109 SHADER_PARAMETER_EX(type, identifier, precision)
1111#define VIEW_UNIFORM_BUFFER_MEMBER_ARRAY(type, identifier, dimension) \
1112 SHADER_PARAMETER_ARRAY(type, identifier, [dimension])
1114#define VIEW_UNIFORM_BUFFER_MEMBER_ARRAY_PER_VIEW(type, identifier, dimension) \
1115 SHADER_PARAMETER_ARRAY(type, identifier, [dimension])
1256#undef VIEW_UNIFORM_BUFFER_MEMBER
1257#undef VIEW_UNIFORM_BUFFER_MEMBER_PER_VIEW
1258#undef VIEW_UNIFORM_BUFFER_MEMBER_EX
1259#undef VIEW_UNIFORM_BUFFER_MEMBER_PER_VIEW_EX
1260#undef VIEW_UNIFORM_BUFFER_MEMBER_ARRAY
1261#undef VIEW_UNIFORM_BUFFER_MEMBER_ARRAY_PER_VIEW
1264#define INSTANCED_VIEW_COUNT 2
1266#define VIEW_UNIFORM_BUFFER_MEMBER(type, identifier) \
1267 SHADER_PARAMETER(type, identifier)
1269#define VIEW_UNIFORM_BUFFER_MEMBER_PER_VIEW(type, identifier) \
1270 SHADER_PARAMETER_ARRAY(TShaderParameterTypeInfo<type>::TInstancedType, identifier, [INSTANCED_VIEW_COUNT])
1272#define VIEW_UNIFORM_BUFFER_MEMBER_EX(type, identifier, precision) \
1273 SHADER_PARAMETER_EX(type, identifier, precision)
1275#define VIEW_UNIFORM_BUFFER_MEMBER_PER_VIEW_EX(type, identifier, precision) \
1276 SHADER_PARAMETER_ARRAY_EX(TShaderParameterTypeInfo<type>::TInstancedType, identifier, [INSTANCED_VIEW_COUNT], precision)
1278#define VIEW_UNIFORM_BUFFER_MEMBER_ARRAY(type, identifier, dimension) \
1279 SHADER_PARAMETER_ARRAY(type, identifier, [dimension])
1281#define VIEW_UNIFORM_BUFFER_MEMBER_ARRAY_PER_VIEW(type, identifier, dimension) \
1282 SHADER_PARAMETER_ARRAY(type, identifier, [dimension * INSTANCED_VIEW_COUNT])
1288#undef VIEW_UNIFORM_BUFFER_MEMBER
1289#undef VIEW_UNIFORM_BUFFER_MEMBER_PER_VIEW
1290#undef VIEW_UNIFORM_BUFFER_MEMBER_EX
1291#undef VIEW_UNIFORM_BUFFER_MEMBER_PER_VIEW_EX
1292#undef VIEW_UNIFORM_BUFFER_MEMBER_ARRAY
1293#undef VIEW_UNIFORM_BUFFER_MEMBER_ARRAY_PER_VIEW
1295#define VIEW_UNIFORM_BUFFER_MEMBER(type, identifier) \
1296 if ( CopyViewId == 0 ) \
1298 FMemory::Memcpy(&InstancedViewParameters.identifier, &ViewParameters.identifier, sizeof(type)); \
1303#define VIEW_UNIFORM_BUFFER_MEMBER_PER_VIEW(type, identifier) \
1304 FMemory::Memcpy(&InstancedViewParameters.identifier[CopyViewId], &ViewParameters.identifier, sizeof(type)); \
1305 check(FMemory::MemIsZero(((uint8*) &InstancedViewParameters.identifier[CopyViewId]) + sizeof(type), sizeof(TShaderParameterTypeInfo<type>::TInstancedType) - sizeof(type)));
1307#define VIEW_UNIFORM_BUFFER_MEMBER_EX(type, identifier, precision) \
1308 if ( CopyViewId == 0 ) \
1310 FMemory::Memcpy(&InstancedViewParameters.identifier, &ViewParameters.identifier, sizeof(type)); \
1313#define VIEW_UNIFORM_BUFFER_MEMBER_PER_VIEW_EX(type, identifier, precision) \
1314 FMemory::Memcpy(&InstancedViewParameters.identifier[CopyViewId], &ViewParameters.identifier, sizeof(type)); \
1315 check(FMemory::MemIsZero(((uint8*)&InstancedViewParameters.identifier[CopyViewId]) + sizeof(type), sizeof(TShaderParameterTypeInfo<type>::TInstancedType) - sizeof(type)));
1317#define VIEW_UNIFORM_BUFFER_MEMBER_ARRAY(type, identifier, dimension) \
1318 if ( CopyViewId == 0 ) \
1320 for (uint32 ElementIndex = 0; ElementIndex < dimension; ElementIndex++) \
1322 FMemory::Memcpy(&InstancedViewParameters.identifier[CopyViewId * dimension + ElementIndex], &ViewParameters.identifier[ElementIndex], sizeof(type)); \
1326#define VIEW_UNIFORM_BUFFER_MEMBER_ARRAY_PER_VIEW(type, identifier, dimension) \
1327 for (uint32 ElementIndex = 0; ElementIndex < dimension; ElementIndex++) \
1329 FMemory::Memcpy(&InstancedViewParameters.identifier[CopyViewId * dimension + ElementIndex], &ViewParameters.identifier[ElementIndex], sizeof(type)); \
1330 check(FMemory::MemIsZero(((uint8*) &InstancedViewParameters.identifier[CopyViewId * dimension + ElementIndex]) + sizeof(type), sizeof(TShaderParameterTypeInfo<type>::TInstancedType) - sizeof(type))); \
1341#undef VIEW_UNIFORM_BUFFER_MEMBER
1342#undef VIEW_UNIFORM_BUFFER_MEMBER_PER_VIEW
1343#undef VIEW_UNIFORM_BUFFER_MEMBER_EX
1344#undef VIEW_UNIFORM_BUFFER_MEMBER_PER_VIEW_EX
1345#undef VIEW_UNIFORM_BUFFER_MEMBER_ARRAY
1346#undef VIEW_UNIFORM_BUFFER_MEMBER_ARRAY_PER_VIEW
1349#define VIEW_UNIFORM_BUFFER_MEMBER(type, identifier) \
1350 FMemory::Memcpy(&DstView.identifier, &SrcView.identifier, sizeof(type));
1352#define VIEW_UNIFORM_BUFFER_MEMBER_PER_VIEW(type, identifier) \
1353 FMemory::Memcpy(&DstView.identifier, &SrcView.identifier, sizeof(type));
1355#define VIEW_UNIFORM_BUFFER_MEMBER_EX(type, identifier, precision) \
1356 FMemory::Memcpy(&DstView.identifier, &SrcView.identifier, sizeof(type));
1358#define VIEW_UNIFORM_BUFFER_MEMBER_PER_VIEW_EX(type, identifier, precision) \
1359 FMemory::Memcpy(&DstView.identifier, &SrcView.identifier, sizeof(type));
1361#define VIEW_UNIFORM_BUFFER_MEMBER_ARRAY(type, identifier, dimension) \
1362 for (uint32 ElementIndex = 0; ElementIndex < dimension; ElementIndex++) \
1364 FMemory::Memcpy(&DstView.identifier[ElementIndex], &SrcView.identifier[ElementIndex], sizeof(type)); \
1367#define VIEW_UNIFORM_BUFFER_MEMBER_ARRAY_PER_VIEW(type, identifier, dimension) \
1368 for (uint32 ElementIndex = 0; ElementIndex < dimension; ElementIndex++) \
1370 FMemory::Memcpy(&DstView.identifier[ElementIndex], &SrcView.identifier[ElementIndex], sizeof(type)); \
1382#undef VIEW_UNIFORM_BUFFER_MEMBER
1383#undef VIEW_UNIFORM_BUFFER_MEMBER_PER_VIEW
1384#undef VIEW_UNIFORM_BUFFER_MEMBER_EX
1385#undef VIEW_UNIFORM_BUFFER_MEMBER_PER_VIEW_EX
1386#undef VIEW_UNIFORM_BUFFER_MEMBER_ARRAY
1387#undef VIEW_UNIFORM_BUFFER_MEMBER_ARRAY_PER_VIEW
1389#undef INSTANCED_VIEW_COUNT
1390#undef VIEW_UNIFORM_BUFFER_MEMBER_TABLE
1441 void SetupViewFrustum();
1477#if !(UE_BUILD_SHIPPING || UE_BUILD_TEST)
1592 return StereoCullingFrustum ? *StereoCullingFrustum :
ViewFrustum;
1773#if DEBUG_POST_PROCESS_VOLUME_ENABLE
1860#if DO_CHECK || USING_CODE_ANALYSIS
1998#if !(UE_BUILD_SHIPPING)
2031 int32 NumMSAASamples,
2178#if DO_CHECK || USING_CODE_ANALYSIS
2355 UE_DEPRECATED(5.6,
"bIsMultipleViewFamily is no longer used")
2442 bool bNullifyWorldSpacePosition;
2463#if WITH_DEBUG_VIEW_MODES
2500 return ScreenPercentageInterface;
2515 checkf(ScreenPercentageInterface ==
nullptr,
TEXT(
"View family already had a screen percentage interface assigned."));
2536 if (
ViewExtensionData->GetSubclassIdentifier() == TExtensionData::GSubclassIdentifier)
2564 checkf(TemporalUpscalerInterface ==
nullptr,
TEXT(
"View family already had a temporal upscaler assigned."));
2570 return TemporalUpscalerInterface;
2576 checkf(PrimarySpatialUpscalerInterface ==
nullptr,
TEXT(
"View family already had a primary spatial upscaler assigned."));
2582 return PrimarySpatialUpscalerInterface;
2588 checkf(SecondarySpatialUpscalerInterface ==
nullptr,
TEXT(
"View family already had a secondary spatial upscaler assigned."));
2594 return SecondarySpatialUpscalerInterface;
2619 bool bAllowTranslucencyAfterDOF =
false;
2622 bool bAllowStandardTranslucencySeparated =
false;
2625 bool bIsInFocus =
true;
2670 , .bNullifyWorldSpacePosition = View.
Family->bNullifyWorldSpacePosition
2702 int32 NumMSAASamples,
#define NULL
Definition oodle2base.h:134
PlayerIndex
Definition AppleControllerInterface.h:24
#define check(expr)
Definition AssertionMacros.h:314
#define ensure( InExpression)
Definition AssertionMacros.h:464
#define checkf(expr, format,...)
Definition AssertionMacros.h:315
#define WITH_EDITOR
Definition Build.h:67
@ INDEX_NONE
Definition CoreMiscDefines.h:150
@ ForceInitToZero
Definition CoreMiscDefines.h:156
@ ForceInit
Definition CoreMiscDefines.h:155
#define UE_DEPRECATED(Version, Message)
Definition CoreMiscDefines.h:302
UE_FORCEINLINE_HINT TSharedRef< CastToType, Mode > StaticCastSharedRef(TSharedRef< CastFromType, Mode > const &InSharedRef)
Definition SharedPointer.h:127
EDebugViewShaderMode
Definition DebugViewModeHelpers.h:23
@ DVSM_None
Definition DebugViewModeHelpers.h:24
@ DVSM_MAX
Definition DebugViewModeHelpers.h:38
EViewModeIndex
Definition EngineBaseTypes.h:962
ESceneCaptureCompositeMode
Definition EngineTypes.h:550
ESceneCaptureSource
Definition EngineTypes.h:532
return true
Definition ExternalRpcRegistry.cpp:601
#define FVector
Definition IOSSystemIncludes.h:8
void Init()
Definition LockFreeList.h:4
UE::Math::TIntRect< int32 > FIntRect
Definition MathFwd.h:133
UE::Math::TVector2< float > FVector2f
Definition MathFwd.h:74
UE::Math::TVector2< double > FVector2D
Definition MathFwd.h:48
UE::Math::TPlane< double > FPlane
Definition MathFwd.h:52
UE::Math::TVector4< float > FVector4f
Definition MathFwd.h:75
UE::Math::TMatrix< double > FMatrix
Definition MathFwd.h:51
const bool
Definition NetworkReplayStreaming.h:178
ERenderTargetLoadAction
Definition RHIDefinitions.h:1253
EShaderPlatform GetFeatureLevelShaderPlatform(const FStaticFeatureLevel InFeatureLevel)
Definition RHIGlobals.h:961
EAntiAliasingMethod
Definition SceneUtils.h:45
#define VIEW_UNIFORM_BUFFER_MEMBER_TABLE
Definition SceneView.h:849
ETranslucencyVolumeCascade
Definition SceneView.h:835
@ TVC_Inner
Definition SceneView.h:836
@ TVC_MAX
Definition SceneView.h:839
@ TVC_Outer
Definition SceneView.h:837
EViewWaterIntersection
Definition SceneView.h:1408
@ PossiblyIntersectingWater
ESecondaryScreenPercentageMethod
Definition SceneView.h:153
@ LowerPixelDensitySimulation
constexpr int MAX_MOBILE_SHADOWCASCADES
Definition SceneView.h:810
ENGINE_API void SetupViewRectUniformBufferParameters(FViewUniformShaderParameters &ViewUniformShaderParameters, const FIntPoint &InBufferSize, const FIntRect &InEffectiveViewRect, const FViewMatrices &InViewMatrices, const FViewMatrices &InPrevViewMatrice, const FSetupViewUniformParametersInputs &Inputs)
Definition SceneView.cpp:2514
EPrimaryScreenPercentageMethod
Definition SceneView.h:136
ENGINE_API void SetupCommonViewUniformBufferParameters(FViewUniformShaderParameters &ViewUniformShaderParameters, const FIntPoint &InBufferSize, int32 NumMSAASamples, const FIntRect &InEffectiveViewRect, const FViewMatrices &InViewMatrices, const FViewMatrices &InPrevViewMatrices, const FSetupViewUniformParametersInputs &Inputs)
Definition SceneView.cpp:2625
#define SHADER_PARAMETER_TEXTURE(ShaderType, MemberName)
Definition ShaderParameterMacros.h:1708
#define END_GLOBAL_SHADER_PARAMETER_STRUCT
Definition ShaderParameterMacros.h:1669
#define SHADER_PARAMETER_ARRAY(MemberType, MemberName, ArrayDecl)
Definition ShaderParameterMacros.h:1696
#define SHADER_PARAMETER_SRV(ShaderType, MemberName)
Definition ShaderParameterMacros.h:1720
#define SHADER_PARAMETER_SAMPLER(ShaderType, MemberName)
Definition ShaderParameterMacros.h:1740
#define SHADER_PARAMETER_EX(MemberType, MemberName, Precision)
Definition ShaderParameterMacros.h:1687
#define BEGIN_SHADER_PARAMETER_STRUCT(StructTypeName, DllStorage)
Definition ShaderParameterMacros.h:1482
#define SHADER_PARAMETER_STRUCT_REF(StructType, MemberName)
Definition ShaderParameterMacros.h:1909
#define END_SHADER_PARAMETER_STRUCT()
Definition ShaderParameterMacros.h:1485
#define BEGIN_GLOBAL_SHADER_PARAMETER_STRUCT_WITH_CONSTRUCTOR
Definition ShaderParameterMacros.h:1666
#define SHADER_PARAMETER_UAV(ShaderType, MemberName)
Definition ShaderParameterMacros.h:1731
#define SHADER_PARAMETER(MemberType, MemberName)
Definition ShaderParameterMacros.h:1684
ESPMode
Definition SharedPointerFwd.h:12
USkinnedMeshComponent float
Definition SkinnedMeshComponent.h:60
EStereoscopicPass
Definition StereoRendering.h:21
#define UE_DELTA
Definition UnrealMathUtility.h:186
constexpr UE_FORCEINLINE_HINT const T & AsConst(T &Ref)
Definition UnrealTemplate.h:123
if(Failed) console_printf("Failed.\n")
Definition DynamicRenderScaling.h:172
Definition CustomRenderPass.h:50
Definition FinalPostProcessSettings.h:17
Definition NameTypes.h:617
Definition RenderGraphResources.h:1196
Definition UnrealClient.h:30
Definition SceneInterface.h:106
Definition SceneRendering.h:2080
Definition SceneView.h:2638
virtual ENGINE_API ~FSceneViewFamilyContext()
Definition SceneView.cpp:3135
Definition SceneView.h:2212
bool UseDebugViewPS() const
Definition SceneView.h:2481
void SetSceneRenderer(ISceneRenderer *NewSceneRenderer)
Definition SceneView.h:2600
FDisplayInternalsData DisplayInternalsData
Definition SceneView.h:2411
bool bAdditionalViewFamily
Definition SceneView.h:2336
const FRenderTarget * RenderTarget
Definition SceneView.h:2317
FSceneInterface * Scene
Definition SceneView.h:2321
void operator=(const FSceneViewFamily &)=delete
uint32 FrameNumber
Definition SceneView.h:2330
TExtensionData * GetExtentionData()
Definition SceneView.h:2544
FEngineShowFlags EngineShowFlags
Definition SceneView.h:2324
TArray< const FSceneView * > Views
Definition SceneView.h:2308
EShaderPlatform GetShaderPlatform() const
Definition SceneView.h:2461
bool bWorldIsPaused
Definition SceneView.h:2393
int32 ViewModeParam
Definition SceneView.h:2467
bool bOverrideVirtualTextureThrottle
Definition SceneView.h:2427
const ISpatialUpscaler * GetPrimarySpatialUpscalerInterface() const
Definition SceneView.h:2580
const FName & GetViewModeParamName() const
Definition SceneView.h:2480
const FRenderTarget * RenderTargetDepth
Definition SceneView.h:2318
ESceneCaptureCompositeMode SceneCaptureCompositeMode
Definition SceneView.h:2384
const ISceneViewFamilyScreenPercentage * GetScreenPercentageInterface() const
Definition SceneView.h:2498
bool bMultiGPUForkAndJoin
Definition SceneView.h:2348
const TExtensionData * GetExtentionData() const
Definition SceneView.h:2530
uint64 FrameCounter
Definition SceneView.h:2333
FName ViewModeParamName
Definition SceneView.h:2469
ISceneRenderer * GetSceneRenderer() const
Definition SceneView.h:2601
float SecondaryViewFraction
Definition SceneView.h:2417
bool AllowStandardTranslucencySeparated() const
Definition SceneView.h:2496
bool bRealtimeUpdate
Definition SceneView.h:2339
bool GetIsInFocus() const
Definition SceneView.h:2597
ENGINE_API EDebugViewShaderMode ChooseDebugViewShaderMode() const
TArray< const FSceneView * > AllViews
Definition SceneView.h:2311
EViewModeIndex ViewMode
Definition SceneView.h:2314
const UE::Renderer::Private::ITemporalUpscaler * GetTemporalUpscalerInterface() const
Definition SceneView.h:2568
void SetIsInFocus(bool bInIsInFocus)
Definition SceneView.h:2598
void SetDebugViewShaderMode(EDebugViewShaderMode InMode)
Definition SceneView.h:2478
bool bIsMultipleViewFamily
Definition SceneView.h:2356
const ISpatialUpscaler * GetSecondarySpatialUpscalerInterface() const
Definition SceneView.h:2592
bool bCurrentlyBeingEdited
Definition SceneView.h:2424
void SetSecondarySpatialUpscalerInterface(ISpatialUpscaler *InSpatialUpscalerInterface)
Definition SceneView.h:2585
FExposureSettings ExposureSettings
Definition SceneView.h:2405
FString ProfileDescription
Definition SceneView.h:2446
EDebugViewShaderMode DebugViewShaderMode
Definition SceneView.h:2465
PRAGMA_ENABLE_DEPRECATION_WARNINGS ENGINE_API bool SupportsScreenPercentage() const
Definition SceneView.cpp:3106
TArray< FVector, TInlineAllocator< 2 > > StreamingViewOrigins
Definition SceneView.h:2452
bool bThumbnailRendering
Definition SceneView.h:2387
ENGINE_API ERHIFeatureLevel::Type GetFeatureLevel() const
Definition SceneView.cpp:3094
bool AllowTranslucencyAfterDOF() const
Definition SceneView.h:2494
bool bIsHDR
Definition SceneView.h:2396
bool bIsViewFamilyInfo
Definition SceneView.h:2365
void SetScreenPercentageInterface(ISceneViewFamilyScreenPercentage *InScreenPercentageInterface)
Definition SceneView.h:2512
float * ProfileSceneRenderTime
Definition SceneView.h:2449
int32 VirtualTextureFeedbackFactor
Definition SceneView.h:2430
TExtensionData * GetOrCreateExtentionData()
Definition SceneView.h:2549
bool bResolveScene
Definition SceneView.h:2345
int32 GetViewModeParam() const
Definition SceneView.h:2479
bool bRequireMultiView
Definition SceneView.h:2399
int8 LandscapeLODOverride
Definition SceneView.h:2421
bool bIsMainViewFamily
Definition SceneView.h:2374
FGameTime Time
Definition SceneView.h:2327
bool bSplitScreenDebugAllowed
Definition SceneView.h:2368
PRAGMA_DISABLE_DEPRECATION_WARNINGS ENGINE_API EDebugViewShaderMode GetDebugViewShaderMode() const
bool bIsFirstViewInMultipleViewFamily
Definition SceneView.h:2363
float DebugDPIScale
Definition SceneView.h:2402
ESceneCaptureSource SceneCaptureSource
Definition SceneView.h:2380
bool bDeferClear
Definition SceneView.h:2342
TArray< TSharedRef< class ISceneViewExtension, ESPMode::ThreadSafe > > ViewExtensions
Definition SceneView.h:2408
void SetScreenPercentageInterface_Unchecked(ISceneViewFamilyScreenPercentage *InScreenPercentageInterface)
Definition SceneView.h:2519
ESecondaryScreenPercentageMethod SecondaryScreenPercentageMethod
Definition SceneView.h:2418
void SetTemporalUpscalerInterface(UE::Renderer::Private::ITemporalUpscaler *InTemporalUpscalerInterface)
Definition SceneView.h:2561
void SetPrimarySpatialUpscalerInterface(ISpatialUpscaler *InSpatialUpscalerInterface)
Definition SceneView.h:2573
Definition SceneView.h:1416
virtual ~FSceneViewFixLayout()=default
Definition SceneManagement.h:132
Definition SceneView.h:1425
FShaderResourceViewRHIRef WaterDataBuffer
Definition SceneView.h:1790
bool bIsMultiViewportEnabled
Definition SceneView.h:1674
ENGINE_API float GetLastEyeAdaptationExposure() const
Definition SceneView.cpp:2882
float UnderwaterDepth
Definition SceneView.h:1704
bool IsInstancedSceneView() const
Definition SceneView.h:2064
float DesiredFOV
Definition SceneView.h:1520
ENGINE_API uint32 GetViewKey() const
Definition SceneView.cpp:1177
ENGINE_API void OverridePostProcessSettings(const FPostProcessSettings &Src, float Weight)
Definition SceneView.cpp:1566
const FSceneView * GetSnapshotOriginView() const
Definition SceneView.h:2084
ENGINE_API uint32 GetDistanceFieldTemporalSampleIndex() const
Definition SceneView.cpp:1168
const FConvexVolume & GetCullingFrustum() const
Definition SceneView.h:1590
FSceneViewInitOptions SceneViewInitOptions
Definition SceneView.h:1444
FName CurrentVisualizeCalibrationGrayscaleMaterialName
Definition SceneView.h:1549
FVector CullingOrigin
Definition SceneView.h:1602
static ENGINE_API FVector4f GetScreenPositionScaleBias(const FIntPoint &BufferSize, const FIntRect &ViewRect)
Definition SceneView.cpp:2499
TOptional< TSet< FPrimitiveComponentId > > ShowOnlyPrimitives
Definition SceneView.h:1579
bool bForcePathTracerReset
Definition SceneView.h:1698
FVector ViewLocation
Definition SceneView.h:1467
bool bIsLocked
Definition SceneView.h:1662
TUniformBufferRef< FViewUniformShaderParameters > ViewUniformBuffer
Definition SceneView.h:1432
bool bEnableDynamicCocOffset
Definition SceneView.h:1817
const FSceneViewFamily * Family
Definition SceneView.h:1427
FName CurrentRayTracingDebugVisualizationMode
Definition SceneView.h:2037
void SetDynamicMeshElementsShadowCullFrustum(const FConvexVolume *InDynamicMeshElementsShadowCullFrustum)
Definition SceneView.h:1937
ENGINE_API bool HasValidEyeAdaptationBuffer() const
Definition SceneView.cpp:2863
void SetPreShadowTranslation(const FVector &InPreShadowTranslation)
Definition SceneView.h:1940
FVector BaseHmdLocation
Definition SceneView.h:1470
FConvexVolume ViewFrustum
Definition SceneView.h:1585
static ENGINE_API bool ProjectWorldToScreen(const FVector &WorldPosition, const FIntRect &ViewRect, const FMatrix &ViewProjectionMatrix, FVector2D &out_ScreenPos, bool bShouldCalcOutsideViewPosition=false)
Definition SceneView.cpp:1524
bool bRenderFirstInstanceOnly
Definition SceneView.h:1510
ENGINE_API void DeprojectFVector2D(const FVector2D &ScreenPos, FVector &out_WorldOrigin, FVector &out_WorldDirection) const
Definition SceneView.cpp:1425
TOptional< bool > bCameraMotionBlur
Definition SceneView.h:1740
uint8 ViewLightingChannelMask
Definition SceneView.h:1835
FName CurrentBufferVisualizationMode
Definition SceneView.h:1525
FVector4f SpecularOverrideParameter
Definition SceneView.h:1567
int32 PlayerIndex
Definition SceneView.h:1450
ENGINE_API void SetupViewRectUniformBufferParameters(FViewUniformShaderParameters &ViewUniformShaderParameters, const FIntPoint &InBufferSize, const FIntRect &InEffectiveViewRect, const FViewMatrices &InViewMatrices, const FViewMatrices &InPrevViewMatrice) const
Definition SceneView.cpp:2842
bool bReverseCulling
Definition SceneView.h:1605
TEnumAsByte< ETranslucentSortPolicy::Type > TranslucentSortPolicy
Definition SceneView.h:1722
bool bIsReflectionCapture
Definition SceneView.h:1647
FVector4f InvDeviceZToWorldZTransform
Definition SceneView.h:1608
bool bForceCameraVisibilityReset
Definition SceneView.h:1689
ERHIFeatureLevel::Type GetFeatureLevel() const
Definition SceneView.h:2004
bool bDisableDistanceBasedFadeTransitions
Definition SceneView.h:1692
ERenderTargetLoadAction GetOverwriteLoadAction() const
Definition SceneView.h:2079
FSceneViewStateInterface * State
Definition SceneView.h:1429
FVector TranslucentSortAxis
Definition SceneView.h:1719
UE::StereoRenderUtils::FStereoShaderAspects Aspects
Definition SceneView.h:1838
FVector2f AmbientOcclusionOverrideParameter
Definition SceneView.h:1570
PRAGMA_DISABLE_DEPRECATION_WARNINGS FSceneView(const FSceneView &Other)=default
FName CurrentGPUSkinCacheVisualizationMode
Definition SceneView.h:1555
const FSceneView * SnapshotOriginView
Definition SceneView.h:1844
bool bIsSinglePassStereo
Definition SceneView.h:1684
bool bIsInstancedStereoEnabled
Definition SceneView.h:1671
float MaterialTextureMipBias
Definition SceneView.h:1573
ENGINE_API FVector4 PixelToScreen(float X, float Y, float Z) const
Definition SceneView.cpp:1351
bool bShouldBindInstancedViewUB
Definition SceneView.h:1680
bool bIsMobileMultiViewEnabled
Definition SceneView.h:1677
FViewElementDrawer * Drawer
Definition SceneView.h:1453
TUniformBufferRef< FInstancedViewUniformShaderParameters > InstancedViewUniformBuffer
Definition SceneView.h:2102
FViewMatrices ViewMatrices
Definition SceneView.h:1464
FLinearColor BackgroundColor
Definition SceneView.h:1485
ENGINE_API float GetLastAverageSceneLuminance() const
Definition SceneView.cpp:2892
FFinalPostProcessSettings FinalPostProcessSettings
Definition SceneView.h:1772
float InFocusDistance
Definition SceneView.h:1820
int32 StereoViewIndex
Definition SceneView.h:1495
FName CurrentVirtualTextureVisualizationMode
Definition SceneView.h:1543
FIntPoint CursorPos
Definition SceneView.h:1620
bool bAllowRayTracing
Definition SceneView.h:1832
FMatrix ProjectionMatrixUnadjustedForRHI
Definition SceneView.h:1483
bool bHMDHiddenAreaMaskActive
Definition SceneView.h:1516
static ENGINE_API void DeprojectScreenToWorld(const FVector2D &ScreenPos, const FIntRect &ViewRect, const FMatrix &InvViewMatrix, const FMatrix &InvProjMatrix, FVector &out_WorldOrigin, FVector &out_WorldDirection)
Definition SceneView.cpp:1431
FName CurrentVisualizeCalibrationCustomMaterialName
Definition SceneView.h:1552
bool bExcludeFromSceneTextureExtents
Definition SceneView.h:1695
bool bUseFieldOfViewForLOD
Definition SceneView.h:1513
bool IsPerspectiveProjection() const
Definition SceneView.h:1943
const TUniformBufferRef< FInstancedViewUniformShaderParameters > & GetInstancedViewUniformBuffer() const
Definition SceneView.h:2073
FVector GetViewRight() const
Definition SceneView.h:1932
bool bIsVirtualTexture
Definition SceneView.h:1653
ENGINE_API bool WorldToPixel(const FVector &WorldPoint, FVector2D &OutPixelLocation) const
Definition SceneView.cpp:1385
ENGINE_API EShaderPlatform GetShaderPlatform() const
Definition SceneView.cpp:2489
bool bIsGameView
Definition SceneView.h:1623
const ERHIFeatureLevel::Type FeatureLevel
Definition SceneView.h:1826
FShaderResourceViewRHIRef LandscapePerComponentDataBuffer
Definition SceneView.h:1814
FIntRect CameraConstrainedViewRect
Definition SceneView.h:1716
bool bIsSceneCaptureCube
Definition SceneView.h:1634
ENGINE_API void SetupAntiAliasingMethod()
Definition SceneView.cpp:1101
ENGINE_API const FSceneView * GetInstancedSceneView() const
Definition SceneView.cpp:2911
ENGINE_API void UpdateViewMatrix()
Definition SceneView.cpp:1275
ENGINE_API TArray< const FSceneView * > GetSecondaryViews() const
Definition SceneView.cpp:2926
EViewWaterIntersection WaterIntersection
Definition SceneView.h:1707
ENGINE_API void EndFinalPostprocessSettings(const FSceneViewInitOptions &ViewInitOptions)
Definition SceneView.cpp:2082
bool bAllowTemporalJitter
Definition SceneView.h:1583
ENGINE_API bool ScreenToPixel(const FVector4 &ScreenPoint, FVector2D &OutPixelLocation) const
Definition SceneView.cpp:1332
PRAGMA_ENABLE_DEPRECATION_WARNINGS virtual ENGINE_API ~FSceneView()
int32 MaxShadowCascades
Definition SceneView.h:1462
bool bIsViewInfo
Definition SceneView.h:1626
int32 GetStereoPassInstanceFactor() const
Definition SceneView.h:2013
ENGINE_API void UpdatePlanarReflectionViewMatrix(const FSceneView &SourceView, const FMirrorMatrix &MirrorMatrix)
Definition SceneView.cpp:1314
float WorldToMetersScale
Definition SceneView.h:1471
int32 PrimaryViewIndex
Definition SceneView.h:1498
bool IsPrimarySceneView() const
Definition SceneView.h:2055
bool bStaticSceneOnly
Definition SceneView.h:1668
ENGINE_API FVector4 PixelToWorld(float X, float Y, float Z) const
Definition SceneView.cpp:1392
FName CurrentLumenVisualizationMode
Definition SceneView.h:1531
ENGINE_API void SetupCommonViewUniformBufferParameters(FViewUniformShaderParameters &ViewUniformShaderParameters, const FIntPoint &InBufferSize, int32 NumMSAASamples, const FIntRect &InEffectiveViewRect, const FViewMatrices &InViewMatrices, const FViewMatrices &InPrevViewMatrices) const
Definition SceneView.cpp:2852
FRotator ViewRotation
Definition SceneView.h:1468
FTextureRHIRef AtmosphereIrradianceTexture
Definition SceneView.h:1785
ENGINE_API uint32 GetOcclusionFrameCounter() const
Definition SceneView.cpp:1186
float FOV
Definition SceneView.h:1519
TOptional< uint32 > OverrideFrameIndexValue
Definition SceneView.h:1725
FRHIGPUMask GPUMask
Definition SceneView.h:1507
FVector OriginOffsetThisFrame
Definition SceneView.h:1611
FVector GetViewUp() const
Definition SceneView.h:1933
class FCustomRenderPassBase * CustomRenderPass
Definition SceneView.h:1628
ENGINE_API void ConfigureBufferVisualizationSettings()
Definition SceneView.cpp:2379
EStereoscopicPass StereoPass
Definition SceneView.h:1492
FPlane GlobalClippingPlane
Definition SceneView.h:1710
uint8 ShadowViewMatrices
Definition SceneView.h:1475
bool AllowGPUParticleUpdate() const
Definition SceneView.h:1865
int32 WaterInfoTextureViewIndex
Definition SceneView.h:1792
ENGINE_API FRDGPooledBuffer * GetEyeAdaptationBuffer() const
Definition SceneView.cpp:2872
FPlane NearClippingPlane
Definition SceneView.h:1597
TOptional< uint32 > OverrideOutputFrameIndexValue
Definition SceneView.h:1730
ENGINE_API FVector GetTemporalLODOrigin(int32 Index, bool bUseLaggedLODTransition=true) const
Definition SceneView.cpp:1146
ENGINE_API FVector4 CursorToScreen(float X, float Y, float Z) const
Definition SceneView.cpp:1376
bool bOverrideGPUMask
Definition SceneView.h:1504
FName CurrentVirtualShadowMapVisualizationMode
Definition SceneView.h:1540
bool bSceneCaptureUsesRayTracing
Definition SceneView.h:1644
FSceneViewOwner ViewActor
Definition SceneView.h:1447
const FVector & GetPreShadowTranslation() const
Definition SceneView.h:1939
const FConvexVolume * GetDynamicMeshElementsShadowCullFrustum() const
Definition SceneView.h:1936
bool IsUnderwater() const
Definition SceneView.h:1945
FName CurrentSubstrateVisualizationMode
Definition SceneView.h:1534
bool bCameraCut
Definition SceneView.h:1617
FVector4f NormalOverrideParameter
Definition SceneView.h:1568
uint32 InstanceFactor
Definition SceneView.h:1829
float LODDistanceFactor
Definition SceneView.h:1614
TOptional< FMatrix > ClipToPrevClipOverride
Definition SceneView.h:1744
FTextureRHIRef DynamicCocOffsetLUT
Definition SceneView.h:1823
bool bIsSceneCapture
Definition SceneView.h:1631
ENGINE_API FVector ScreenToWorld(const FVector4 &ScreenPoint) const
Definition SceneView.cpp:1327
const FIntRect UnscaledViewRect
Definition SceneView.h:1456
TArray< FWaterInfoTextureRenderingParams > WaterInfoTextureRenderingParams
Definition SceneView.h:1810
FVector GetViewDirection() const
Definition SceneView.h:1934
bool bIsPlanarReflection
Definition SceneView.h:1650
bool HasEyeAdaptationViewState() const
Definition SceneView.h:2091
bool bIsOfflineRender
Definition SceneView.h:1656
ENGINE_API FVector4 WorldToScreen(const FVector &WorldPoint) const
Definition SceneView.cpp:1322
ENGINE_API const FSceneView * GetPrimarySceneView() const
Definition SceneView.cpp:2901
int32 PathTracerSeedOffset
Definition SceneView.h:1701
bool bEyeAdaptationAllViewPixels
Definition SceneView.h:1637
TOptional< FTransform > PreviousViewTransform
Definition SceneView.h:1472
FSceneView(FSceneView &&Other)=default
bool IsRayTracingAllowedForView() const
Definition SceneView.h:2086
FVector4f LensPrincipalPointOffsetScale
Definition SceneView.h:1737
ENGINE_API const FViewMatrices & GetShadowViewMatrices() const
Definition SceneView.cpp:1075
EAntiAliasingMethod AntiAliasingMethod
Definition SceneView.h:1778
FLinearColor ColorScale
Definition SceneView.h:1489
FName CurrentGroomVisualizationMode
Definition SceneView.h:1537
ENGINE_API void StartFinalPostprocessSettings(FVector InViewLocation)
Definition SceneView.cpp:1966
ENGINE_API void ConfigureVisualizeCalibrationSettings()
Definition SceneView.cpp:2450
FQuat BaseHmdOrientation
Definition SceneView.h:1469
FName CurrentNaniteVisualizationMode
Definition SceneView.h:1528
FIntRect UnconstrainedViewRect
Definition SceneView.h:1459
EDrawDynamicFlags::Type DrawDynamicFlags
Definition SceneView.h:1522
FTextureRHIRef AtmosphereInscatterTexture
Definition SceneView.h:1786
FVector4f DiffuseOverrideParameter
Definition SceneView.h:1566
FSceneViewStateInterface * EyeAdaptationViewState
Definition SceneView.h:2099
FShaderResourceViewRHIRef WaterIndirectionBuffer
Definition SceneView.h:1789
ENGINE_API void UpdateProjectionMatrix(const FMatrix &NewProjectionMatrix)
Definition SceneView.cpp:1195
FShaderResourceViewRHIRef LandscapeIndirectionBuffer
Definition SceneView.h:1813
ENGINE_API float GetTemporalLODTransition() const
Definition SceneView.cpp:1159
EPrimaryScreenPercentageMethod PrimaryScreenPercentageMethod
Definition SceneView.h:1781
FName CurrentVisualizeCalibrationColorMaterialName
Definition SceneView.h:1546
bool bRenderSceneTwoSided
Definition SceneView.h:1659
float NearClippingDistance
Definition SceneView.h:1599
ENGINE_API FVector Deproject(const FPlane &ScreenPoint) const
Definition SceneView.cpp:1420
TSet< FPrimitiveComponentId > HiddenPrimitives
Definition SceneView.h:1576
FVector2f RoughnessOverrideParameter
Definition SceneView.h:1569
uint8 CullingFrustum
Definition SceneView.h:1588
bool bAllowCrossGPUTransfer
Definition SceneView.h:1501
FTextureRHIRef AtmosphereTransmittanceTexture
Definition SceneView.h:1784
FLinearColor OverlayColor
Definition SceneView.h:1486
ENGINE_API bool IsInstancedStereoPass() const
Definition SceneView.cpp:2494
bool bHasNearClippingPlane
Definition SceneView.h:1595
Definition SceneManagement.h:1280
Definition SceneRendering.h:1970
Definition ViewSnapshotCache.cpp:7
Definition SceneRendering.h:755
Definition SceneRendererInterface.h:47
Definition SceneViewExtension.h:113
Definition SceneView.h:2150
virtual const TCHAR * GetSubclassIdentifier() const =0
Definition SceneView.h:2135
virtual ~ISceneViewFamilyExtention()
Definition SceneView.h:2141
Definition SceneView.h:2164
static constexpr float kMaxTAAUpsampleResolutionFraction
Definition SceneView.h:2176
static constexpr float kMaxTSRResolutionFraction
Definition SceneView.h:2172
virtual ISceneViewFamilyScreenPercentage * Fork_GameThread(const class FSceneViewFamily &ViewFamily) const =0
static constexpr float kMaxResolutionFraction
Definition SceneView.h:2168
static constexpr float kMinTAAUpsampleResolutionFraction
Definition SceneView.h:2175
virtual DynamicRenderScaling::TMap< float > GetResolutionFractionsUpperBound() const =0
virtual DynamicRenderScaling::TMap< float > GetResolutionFractions_RenderThread() const =0
static constexpr float kMinTSRResolutionFraction
Definition SceneView.h:2171
static constexpr float kMinResolutionFraction
Definition SceneView.h:2167
Definition PostProcessUpscale.h:40
UE_NODEBUG UE_FORCEINLINE_HINT ElementType & Last(SizeType IndexFromTheEnd=0) UE_LIFETIMEBOUND
Definition Array.h:1263
UE_NODEBUG UE_FORCEINLINE_HINT void Push(ElementType &&Item)
Definition Array.h:1224
Definition EnumAsByte.h:22
Definition SharedPointer.h:692
Definition SharedPointer.h:153
ObjectType & Get() const
Definition SharedPointer.h:474
Definition ContainerAllocationPolicies.h:894
Definition StaticArray.h:26
Definition TemporalUpscaler.h:12
Definition StereoRenderUtils.h:16
Definition SceneView.h:1398
Type
Definition SceneView.h:1400
@ ForceLowestLOD
Definition SceneView.h:1402
@ FarShadowCascade
Definition SceneView.h:1403
Definition SceneComponent.h:24
Type
Definition RHIFeatureLevel.h:20
@ Half
Definition ShaderParameterMetadata.h:40
Definition SceneView.h:1334
Definition SceneView.h:36
Definition SceneView.h:41
Definition SceneView.h:1374
@ false
Definition radaudio_common.h:23
U16 Index
Definition radfft.cpp:71
Definition ConvexVolume.h:44
Definition SceneView.h:2109
int32 DisplayInternalsCVarValue
Definition SceneView.h:2111
FDisplayInternalsData()
Definition SceneView.h:2115
uint32 NumPendingStreamingRequests
Definition SceneView.h:2113
void Setup(UWorld *World)
Definition SceneRendering.cpp:2487
bool IsValid() const
Definition SceneView.h:2126
Definition ShowFlags.h:56
Definition EngineBaseTypes.h:1089
Definition SceneView.h:164
FFirstPersonParameters(float InFOVCorrectionFactor, float InScale, bool bInUseParameters)
Definition SceneView.h:175
float FOVCorrectionFactor
Definition SceneView.h:166
FFirstPersonParameters()=default
bool bUseParameters
Definition SceneView.h:172
float Scale
Definition SceneView.h:169
Definition CameraTypes.h:37
float MotionBlurMax
Definition Scene.h:2297
Definition SceneView.h:2224
ConstructionValues(const ConstructionValues &Other)=default
uint32 bRequireMultiView
Definition SceneView.h:2272
FGameTime Time
Definition SceneView.h:2254
ConstructionValues & operator=(const ConstructionValues &Other)=default
ConstructionValues & SetTime(const FGameTime &InTime)
Definition SceneView.h:2281
ConstructionValues & SetAdditionalViewFamily(const bool Value)
Definition SceneView.h:2289
uint32 bTimesSet
Definition SceneView.h:2269
FSceneInterface * Scene
Definition SceneView.h:2243
uint32 bAdditionalViewFamily
Definition SceneView.h:2257
ConstructionValues & SetRequireMobileMultiView(const bool Value)
Definition SceneView.h:2301
FEngineShowFlags EngineShowFlags
Definition SceneView.h:2246
uint32 bRealtimeUpdate
Definition SceneView.h:2260
uint32 bResolveScene
Definition SceneView.h:2266
ConstructionValues & operator=(ConstructionValues &&)=default
const FRenderTarget * RenderTarget
Definition SceneView.h:2239
ConstructionValues & SetViewModeParam(const int InViewModeParam, const FName &InViewModeParamName)
Definition SceneView.h:2304
uint32 bDeferClear
Definition SceneView.h:2263
ConstructionValues & SetResolveScene(const bool Value)
Definition SceneView.h:2298
ConstructionValues & SetRealtimeUpdate(const bool Value)
Definition SceneView.h:2292
const FRenderTarget * RenderTargetDepth
Definition SceneView.h:2240
int32 ViewModeParam
Definition SceneView.h:2249
PRAGMA_DISABLE_DEPRECATION_WARNINGS ConstructionValues(ConstructionValues &&)=default
ConstructionValues & SetRenderTargetDepth(const FRenderTarget *InRenderTargetDepth)
Definition SceneView.h:2274
ConstructionValues & SetDeferClear(const bool Value)
Definition SceneView.h:2295
FName ViewModeParamName
Definition SceneView.h:2251
Definition SceneView.h:180
FLinearColor ColorScale
Definition SceneView.h:190
bool bInCameraCut
Definition SceneView.h:222
float WorldToMetersScale
Definition SceneView.h:199
float OverscanResolutionFraction
Definition SceneView.h:256
bool bSceneCaptureUsesRayTracing
Definition SceneView.h:241
int32 PlayerIndex
Definition SceneView.h:185
bool bExcludeFromSceneTextureExtents
Definition SceneView.h:250
FSceneViewInitOptions()
Definition SceneView.h:275
FSceneViewStateInterface * ExposureSceneViewStateInterface
Definition SceneView.h:183
int32 StereoViewIndex
Definition SceneView.h:196
FVector OriginOffsetThisFrame
Definition SceneView.h:219
FFirstPersonParameters FirstPersonParams
Definition SceneView.h:232
float FOV
Definition SceneView.h:228
bool bIsSceneCapture
Definition SceneView.h:235
FVector ViewLocation
Definition SceneView.h:202
TOptional< TSet< FPrimitiveComponentId > > ShowOnlyPrimitives
Definition SceneView.h:208
FVector4f AsymmetricCropFraction
Definition SceneView.h:265
float OverrideFarClippingPlaneDistance
Definition SceneView.h:216
float CropFraction
Definition SceneView.h:259
bool bIsReflectionCapture
Definition SceneView.h:244
FViewElementDrawer * ViewElementDrawer
Definition SceneView.h:186
FLinearColor OverlayColor
Definition SceneView.h:189
FIntPoint CursorPos
Definition SceneView.h:211
float DesiredFOV
Definition SceneView.h:229
float LODDistanceFactor
Definition SceneView.h:213
FRotator ViewRotation
Definition SceneView.h:203
bool bIsPlanarReflection
Definition SceneView.h:247
bool bUseFieldOfViewForLOD
Definition SceneView.h:225
FSceneViewOwner ViewActor
Definition SceneView.h:184
float OverridePrimaryResolutionFraction
Definition SceneView.h:253
bool bIsSceneCaptureCube
Definition SceneView.h:238
TSet< FPrimitiveComponentId > HiddenPrimitives
Definition SceneView.h:205
const FSceneViewFamily * ViewFamily
Definition SceneView.h:181
FLinearColor BackgroundColor
Definition SceneView.h:188
FSceneViewStateInterface * SceneViewStateInterface
Definition SceneView.h:182
EStereoscopicPass StereoPass
Definition SceneView.h:193
Definition SceneViewOwner.h:12
Definition SceneView.h:51
FMatrix ProjectionMatrix
Definition SceneView.h:59
float GetNearPlaneFromProjectionMatrix() const
Definition SceneView.h:119
FVector CameraToViewTarget
Definition SceneView.h:65
FIntRect ConstrainedViewRect
Definition SceneView.h:69
FVector ViewOrigin
Definition SceneView.h:53
FMatrix ComputeViewProjectionMatrix() const
Definition SceneView.h:99
FIntRect ViewRect
Definition SceneView.h:62
static float GetNearPlaneFromProjectionMatrix(const FMatrix &ProjectionMatrix)
Definition SceneView.h:105
bool IsPerspectiveProjection() const
Definition SceneView.h:91
FMatrix ViewRotationMatrix
Definition SceneView.h:56
bool UpdateOrthoPlanes(float &NearPlane, float &FarPlane, float HalfOrthoWidth, bool bUseCameraHeightAsViewTarget)
Definition SceneView.h:126
void SetConstrainedViewRectangle(const FIntRect &InViewRect)
Definition SceneView.h:78
void SetViewRectangle(const FIntRect &InViewRect)
Definition SceneView.h:72
bool IsValidViewRectangle() const
Definition SceneView.h:83
const FIntRect & GetViewRect() const
Definition SceneView.h:96
static ENGINE_API bool UpdateOrthoPlanes(FSceneViewProjectionData *InOutProjectionData, float &NearPlane, float &FarPlane, float HalfOrthoWidth, bool bUseCameraHeightAsViewTarget)
Definition SceneView.cpp:560
const FIntRect & GetConstrainedViewRect() const
Definition SceneView.h:97
Definition SceneView.h:1795
int32 VelocityBlurRadius
Definition SceneView.h:1807
float GroundZMin
Definition SceneView.h:1805
FMatrix ProjectionMatrix
Definition SceneView.h:1799
FVector2f WaterHeightExtents
Definition SceneView.h:1804
TSet< FPrimitiveComponentId > WaterBodyComponentIds
Definition SceneView.h:1801
FVector ViewLocation
Definition SceneView.h:1797
FMatrix ViewRotationMatrix
Definition SceneView.h:1798
int32 RenderTargetArrayLayer
Definition SceneView.h:1808
FVector WaterZoneExtents
Definition SceneView.h:1803
TSet< FPrimitiveComponentId > DilatedWaterBodyComponentIds
Definition SceneView.h:1802
float CaptureZ
Definition SceneView.h:1806
TSet< FPrimitiveComponentId > TerrainComponentIds
Definition SceneView.h:1800
FRenderTarget * RenderTarget
Definition SceneView.h:1796
static constexpr uint8 GetMaskDefault()
Definition EngineTypes.h:643
Definition SceneView.h:319
FIntRect ConstrainedViewRect
Definition SceneView.h:323
FFirstPersonParameters FirstPersonParams
Definition SceneView.h:326
FMatrix ProjectionMatrix
Definition SceneView.h:321
FMatrix ViewRotationMatrix
Definition SceneView.h:320
FVector ViewOrigin
Definition SceneView.h:322
FVector CameraToViewTarget
Definition SceneView.h:324
EStereoscopicPass StereoPass
Definition SceneView.h:325
Definition SceneView.h:317
FVector2f GetOrthoDimensions() const
Definition SceneView.h:714
const FVector & GetCameraToViewTarget() const
Definition SceneView.h:528
FVector2f GetInvTanHalfFov() const
Definition SceneView.h:549
const FMatrix & GetProjectionNoAAMatrix() const
Definition SceneView.h:438
const FVector2D ComputeHalfFieldOfViewPerAxis() const
Definition SceneView.h:670
const FMatrix & GetScreenToClipMatrix() const
Definition SceneView.h:503
FVector4f GetFirstPersonTanAndInvTanHalfFOV() const
Definition SceneView.h:735
const FMatrix & GetHMDViewMatrixNoRoll() const
Definition SceneView.h:468
void SaveProjectionNoAAMatrix()
Definition SceneView.h:592
float GetScreenScale() const
Definition SceneView.h:533
const FMatrix & GetInvProjectionMatrix() const
Definition SceneView.h:443
bool IsPerspectiveProjection() const
Definition SceneView.h:544
void ApplyWorldOffset(const FVector &InOffset)
Definition SceneView.h:704
const FVector & GetViewOrigin() const
Definition SceneView.h:523
void UpdatePlanarReflectionViewMatrix(const FSceneView &SourceView, const FMirrorMatrix &MirrorMatrix)
Definition SceneView.cpp:1290
const FMatrix & GetFirstPersonTransform() const
Definition SceneView.h:508
FMatrix::FReal ComputeOrthoFarPlane() const
Definition SceneView.h:695
const FMatrix & GetOverriddenInvTranslatedViewMatrix() const
Definition SceneView.h:488
const FMatrix & GetInvTranslatedViewProjectionMatrix() const
Definition SceneView.h:498
const FMatrix & GetTranslatedViewProjectionMatrix() const
Definition SceneView.h:493
FViewMatrices()
Definition SceneView.h:329
const FMatrix & GetProjectionMatrix() const
Definition SceneView.h:433
const FMatrix & GetViewProjectionMatrix() const
Definition SceneView.h:458
const FMatrix & GetTranslatedViewMatrix() const
Definition SceneView.h:473
const FMatrix & GetInvViewProjectionMatrix() const
Definition SceneView.h:463
const FMatrix & GetViewMatrix() const
Definition SceneView.h:448
ENGINE_API void HackOverrideViewMatrixForShadows(const FMatrix &InViewMatrix)
Definition SceneView.cpp:1267
const FVector2D & GetProjectionScale() const
Definition SceneView.h:538
void HackRemoveTemporalAAProjectionJitter()
Definition SceneView.h:618
FMatrix::FReal ComputeNearPlane() const
Definition SceneView.h:690
FVector2f GetFirstPersonHalfFieldOfViewPerAxis() const
Definition SceneView.h:724
const FVector2D GetTemporalAAJitter() const
Definition SceneView.h:654
const FMatrix & GetInvTranslatedViewMatrix() const
Definition SceneView.h:478
const FMatrix & GetOverriddenTranslatedViewMatrix() const
Definition SceneView.h:483
float GetPerProjectionDepthThicknessScale() const
Definition SceneView.h:583
FVector2f GetTanHalfFov() const
Definition SceneView.h:559
void HackAddTemporalAAProjectionJitter(const FVector2D &InTemporalAAProjectionJitter)
Definition SceneView.h:597
const FMatrix & GetInvViewMatrix() const
Definition SceneView.h:453
const FVector & GetPreViewTranslation() const
Definition SceneView.h:518
const FMatrix ComputeInvProjectionNoAAMatrix() const
Definition SceneView.h:664
float GetFirstPersonScale() const
Definition SceneView.h:513
const FMatrix ComputeViewRotationProjectionMatrix() const
Definition SceneView.h:659
ENGINE_API void UpdateViewMatrix(const FVector &ViewLocation, const FRotator &ViewRotation)
Definition SceneView.cpp:1210
FMatrix ScreenToClipProjectionMatrix() const
Definition SceneView.cpp:1246
FVector4f GetTanAndInvTanHalfFOV() const
Definition SceneView.h:570
const FMatrix ComputeProjectionNoAAMatrix() const
Definition SceneView.h:636
Definition UnrealTypeTraits.h:40
Definition Optional.h:131
IntType Y
Definition IntPoint.h:37
static const TIntPoint ZeroValue
Definition IntPoint.h:45
IntType X
Definition IntPoint.h:34
IntType Width() const
Definition IntRect.h:469
IntType Height() const
Definition IntRect.h:372
IntPointType Min
Definition IntRect.h:34
TMatrix< T > Inverse() const
Definition Matrix.inl:384
TVector4< T > TransformPosition(const TVector< T > &V) const
Definition Matrix.inl:184
TVector4< T > TransformVector(const TVector< T > &V) const
Definition Matrix.inl:204
T M[4][4]
Definition Matrix.h:49
TVector< T > GetColumn(int32 i) const
Definition Matrix.inl:740
TMatrix< T > RemoveTranslation() const
Definition Matrix.inl:545
void SetIdentity()
Definition Matrix.inl:48
double FReal
Definition Matrix.h:47
static CORE_API const TMatrix Identity
Definition Matrix.h:52
TVector< T > GetOrigin() const
Definition Matrix.inl:641
void SetOrigin(const TVector< T > &NewOrigin)
Definition Matrix.inl:701
T Y
Definition Vector2D.h:52
static TVector2< double > Zero()
Definition Vector2D.h:79
T X
Definition Vector2D.h:49
static CORE_API const TVector2< double > ZeroVector
Definition Vector2D.h:63
static TVector4< float > One()
Definition Vector4.h:185
static TVector< double > Zero()
Definition Vector.h:112
static CORE_API const TVector< double > ZeroVector
Definition Vector.h:79