![]() |
UDocumentation UE5.7 10.02.2026 (Source)
API documentation for Unreal Engine 5.7
|
#include "CoreMinimal.h"#include "Containers/ChunkedArray.h"#include "Stats/Stats.h"#include "Misc/Guid.h"#include "Misc/MemStack.h"#include "Misc/IQueuedWork.h"#include "RHI.h"#include "RenderResource.h"#include "EngineDefines.h"#include "HitProxies.h"#include "SceneTypes.h"#include "ConvexVolume.h"#include "PrimitiveDrawingUtils.h"#include "PrimitiveUniformShaderParameters.h"#include "RendererInterface.h"#include "BatchedElements.h"#include "MeshBatch.h"#include "MeshElementCollector.h"#include "SceneUtils.h"#include "LightmapUniformShaderParameters.h"#include "DynamicBufferAllocator.h"#include "Math/SHMath.h"#include "GlobalRenderResources.h"Go to the source code of this file.
Classes | |
| struct | FTemporalLODState |
| class | FSceneViewStateInterface |
| class | FDefaultWorkingColorSpaceUniformBuffer |
| class | FLightInteraction |
| class | FLightMapInteraction |
| class | FShadowMapInteraction |
| class | FLightmapClusterResourceInput |
| class | FDefaultLightmapResourceClusterUniformBuffer |
| class | FLightCacheInterface |
| class | FAsyncEncode< TPendingTextureType > |
| class | FShadowCascadeSettings |
| class | FProjectedShadowInitializer |
| class | FPerObjectProjectedShadowInitializer |
| class | FWholeSceneProjectedShadowInitializer |
| class | FDefaultMobileReflectionCaptureUniformBuffer |
| struct | FLightRenderParameters |
| class | FDynamicPrimitiveResource |
| class | FViewElementDrawer |
| class | FStaticPrimitiveDrawInterface |
| class | FSimpleElementCollector |
| class | FSimpleElementCollector::FAllocationInfo |
| class | FOneFrameResource |
| struct | FMeshBatchAndRelevance |
| class | FDynamicPrimitiveUniformBuffer |
| struct | FLODMask |
| class | FSharedSamplerState |
Namespaces | |
| namespace | RayTracing |
| namespace | UE |
| namespace | UE::Color |
Macros | |
| #define | ALLOW_LQ_LIGHTMAPS (PLATFORM_DESKTOP || PLATFORM_IOS || PLATFORM_ANDROID) |
| #define | ALLOW_HQ_LIGHTMAPS 1 |
Typedefs | |
| using | RayTracing::FGeometryGroupHandle = int32 |
| using | RayTracing::instead = FGeometryGroupHandle |
Enumerations | |
| enum | ESequencerState { ESS_None , ESS_Paused , ESS_Playing } |
| enum | ELightInteractionType { LIT_CachedIrrelevant , LIT_CachedLightMap , LIT_Dynamic , LIT_CachedSignedDistanceFieldShadowMap2D , LIT_MAX } |
| #define ALLOW_HQ_LIGHTMAPS 1 |
Compile out high quality lightmaps to save memory
| #define ALLOW_LQ_LIGHTMAPS (PLATFORM_DESKTOP || PLATFORM_IOS || PLATFORM_ANDROID) |
Compile out low quality lightmaps to save memory
|
extern |
|
extern |
|
extern |
|
extern |
Build tapered cylinder vertices with a separate base and top radius.
|
extern |
| float ENGINE_API ComputeBoundsDrawDistance | ( | const float | ScreenSize, |
| const float | SphereRadius, | ||
| const FMatrix & | ProjMatrix | ||
| ) |
Computes the draw distance of a given sphere bounds in the given view with the specified screen size.
| ScreenSize | - The screen size (as computed by ComputeBoundsScreenSize) |
| SphereRadius | - Radius of the sphere to use to calculate screen coverage |
| ProjMatrix | - The projection matrix used to scale screen size bounds |
| float ENGINE_API ComputeBoundsScreenRadiusSquared | ( | const FVector4 & | BoundsOrigin, |
| const float | SphereRadius, | ||
| const FVector4 & | ViewOrigin, | ||
| const FMatrix & | ProjMatrix | ||
| ) |
Computes the screen radius squared of a given sphere bounds in the given view. This is used at runtime instead of ComputeBoundsScreenSize to avoid a square root.
| Origin | - Origin of the bounds in world space |
| SphereRadius | - Radius of the sphere to use to calculate screen coverage |
| ViewOrigin | - The view origin involved in the calculation |
| ProjMatrix | - The projection matrix of the view involved in the calculation |
| float ENGINE_API ComputeBoundsScreenRadiusSquared | ( | const FVector4 & | Origin, |
| const float | SphereRadius, | ||
| const FSceneView & | View | ||
| ) |
Computes the screen radius squared of a given sphere bounds in the given view. This is used at runtime instead of ComputeBoundsScreenSize to avoid a square root. It is a wrapper for the version below that does not take a FSceneView reference but parameters directly
| Origin | - Origin of the bounds in world space |
| SphereRadius | - Radius of the sphere to use to calculate screen coverage |
| View | - The view to calculate the display factor for |
| float ENGINE_API ComputeBoundsScreenSize | ( | const FVector4 & | BoundsOrigin, |
| const float | SphereRadius, | ||
| const FVector4 & | ViewOrigin, | ||
| const FMatrix & | ProjMatrix | ||
| ) |
Computes the screen size of a given sphere bounds in the given view. The screen size is the projected diameter of the bounding sphere of the model. i.e. 0.5 means half the screen's maximum dimension.
| BoundsOrigin | - Origin of the bounds in world space |
| SphereRadius | - Radius of the sphere to use to calculate screen coverage |
| ViewOrigin | - The origin of the view to calculate the display factor for |
| ProjMatrix | - The projection matrix used to scale screen size bounds |
| float ENGINE_API ComputeBoundsScreenSize | ( | const FVector4 & | Origin, |
| const float | SphereRadius, | ||
| const FSceneView & | View | ||
| ) |
Computes the screen size of a given sphere bounds in the given view. The screen size is the projected diameter of the bounding sphere of the model. i.e. 0.5 means half the screen's maximum dimension.
| Origin | - Origin of the bounds in world space |
| SphereRadius | - Radius of the sphere to use to calculate screen coverage |
| View | - The view to calculate the display factor for |
| FLODMask ENGINE_API ComputeLODForMeshes | ( | const TArray< class FStaticMeshBatchRelevance > & | StaticMeshRelevances, |
| const FSceneView & | View, | ||
| const FVector4 & | Origin, | ||
| float | SphereRadius, | ||
| float | InstanceSphereRadius, | ||
| int32 | ForcedLODLevel, | ||
| float & | OutScreenRadiusSquared, | ||
| int8 | CurFirstLODIdx, | ||
| float | ScreenSizeScale = 1.0f |
||
| ) |
Computes the LOD to render for the list of static meshes in the given view.
| StaticMeshes | - List of static meshes. |
| View | - The view to render the LOD level for |
| Origin | - Origin of the bounds of the primitive in world space |
| SphereRadius | - Radius of the sphere bounds of the primitive in world space |
| InstanceSphereRadius | - Radius of the sphere bounds for a single mesh instance in the primitive. If not 0.f then the return FLODMask will contain a range of LODs ready for LOD selection on the GPU |
| FLODMask ENGINE_API ComputeLODForMeshes | ( | const TArray< class FStaticMeshBatchRelevance > & | StaticMeshRelevances, |
| const FSceneView & | View, | ||
| const FVector4 & | Origin, | ||
| float | SphereRadius, | ||
| int32 | ForcedLODLevel, | ||
| float & | OutScreenRadiusSquared, | ||
| int8 | CurFirstLODIdx, | ||
| float | ScreenSizeScale = 1.0f, |
||
| bool | bDitheredLODTransition = true |
||
| ) |
Computes the LOD to render for the list of static meshes in the given view.
| StaticMeshes | - List of static meshes. |
| View | - The view to render the LOD level for |
| Origin | - Origin of the bounds of the primitive in world space |
| SphereRadius | - Radius of the sphere bounds of the primitive in world space |
|
extern |
| int8 ENGINE_API ComputeStaticMeshLOD | ( | const FStaticMeshRenderData * | RenderData, |
| const FVector4 & | Origin, | ||
| const float | SphereRadius, | ||
| const FSceneView & | View, | ||
| int32 | MinLOD, | ||
| float | FactorScale = 1.0f |
||
| ) |
Computes the LOD level for the given static meshes render data in the given view.
| RenderData | - Render data for the mesh |
| Origin | - Origin of the bounds of the mesh in world space |
| SphereRadius | - Radius of the sphere to use to calculate screen coverage |
| View | - The view to calculate the LOD level for |
| FactorScale | - multiplied by the computed screen size before computing LOD |
| int8 ENGINE_API ComputeTemporalStaticMeshLOD | ( | const FStaticMeshRenderData * | RenderData, |
| const FVector4 & | Origin, | ||
| const float | SphereRadius, | ||
| const FSceneView & | View, | ||
| int32 | MinLOD, | ||
| float | FactorScale, | ||
| int32 | SampleIndex | ||
| ) |
Computes the LOD level for the given static meshes render data in the given view, for one of the two temporal LOD samples
| RenderData | - Render data for the mesh |
| Origin | - Origin of the bounds of the mesh in world space |
| SphereRadius | - Radius of the sphere to use to calculate screen coverage |
| View | - The view to calculate the LOD level for |
| FactorScale | - multiplied by the computed screen size before computing LOD |
| SampleIndex | - index (0 or 1) of the temporal sample to use |
| DECLARE_LOG_CATEGORY_EXTERN | ( | LogBufferVisualization | , |
| Log | , | ||
| All | |||
| ) |
| DECLARE_LOG_CATEGORY_EXTERN | ( | LogLumenVisualization | , |
| Log | , | ||
| All | |||
| ) |
| DECLARE_LOG_CATEGORY_EXTERN | ( | LogMultiView | , |
| Log | , | ||
| All | |||
| ) |
| DECLARE_LOG_CATEGORY_EXTERN | ( | LogNaniteVisualization | , |
| Log | , | ||
| All | |||
| ) |
| DECLARE_LOG_CATEGORY_EXTERN | ( | LogVirtualShadowMapVisualization | , |
| Log | , | ||
| All | |||
| ) |
| ENGINE_API bool DoesPlatformSupportDistanceFieldAO | ( | EShaderPlatform | Platform | ) |
| ENGINE_API bool DoesPlatformSupportDistanceFields | ( | const FStaticShaderPlatform | Platform | ) |
| ENGINE_API bool DoesPlatformSupportDistanceFieldShadowing | ( | EShaderPlatform | Platform | ) |
| ENGINE_API bool DoesProjectSupportDistanceFields | ( | ) |
|
extern |
Draws the UV layout of the supplied asset (either StaticMeshRenderData OR SkeletalMeshRenderData, not both!)
| ENGINE_API void GetLightmapClusterResourceParameters | ( | ERHIFeatureLevel::Type | FeatureLevel, |
| const FLightmapClusterResourceInput & | Input, | ||
| const IAllocatedVirtualTexture * | AllocatedVT, | ||
| FLightmapResourceClusterShaderParameters & | Parameters | ||
| ) |
| ENGINE_API const FSceneView & GetLODView | ( | const FSceneView & | InView | ) |
Will return the view to use taking into account VR which has 2 views
|
extern |
Given a base color and a selection state, returns a color which accounts for the selection state.
| BaseColor | - The base color of the object. |
| bSelected | - The selection state of the object. |
| bHovered | - True if the object has hover focus |
| bUseOverlayIntensity | - True if the selection color should be modified by the selection intensity |
|
extern |
|
extern |
Initializes the shared sampler states.
|
extern |
Returns true if the given view is "rich", and all primitives should be forced down the dynamic drawing path so that ApplyViewModeOverrides can implement the rich view feature. A view is rich if is missing the EngineShowFlags.Materials showflag, or has any of the render mode affecting showflags.
|
inline |
Centralized decision function to avoid diverging logic.
| ENGINE_API bool ShouldAllPrimitivesHaveDistanceField | ( | EShaderPlatform | ShaderPlatform | ) |
| ENGINE_API bool ShouldCompileDistanceFieldShaders | ( | EShaderPlatform | ShaderPlatform | ) |
|
extern |
Sampler state using Clamp addressing and taking filter mode from the world texture group.
|
extern |
Global uniform buffer containing the default precomputed lighting data.
|
extern |
Global uniform buffer containing the default reflection data used in mobile renderer.
|
extern |
The index at which simple coefficients are stored in any array containing all NUM_STORED_LIGHTMAP_COEF coefficients.
The number of directional coefficients which the lightmap stores for each light sample.
The number of simple coefficients which the lightmap stores for each light sample.
The number of coefficients that are stored for each light sample.
|
extern |
Sampler state using Wrap addressing and taking filter mode from the world texture group.