Navigation
API > API/Runtime > API/Runtime/Landscape
| Name | FLandscapeRenderSystem |
| Type | struct |
| Header File | /Engine/Source/Runtime/Landscape/Public/LandscapeRender.h |
| Include Path | #include "LandscapeRender.h" |
Syntax
struct FLandscapeRenderSystem
Constructors
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
FLandscapeRenderSystem
(
uint32 InLandscapeKey, |
LandscapeRender.h |
Destructors
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
~FLandscapeRenderSystem() |
LandscapeRender.h |
Structs
| Name | Remarks |
|---|---|
| LODSettingsComponent |
Typedefs
| Name | Type | Remarks | Include Path |
|---|---|---|---|
| FViewKey | uint32 | LandscapeRender.h | |
| SectionKeyToLODValueMap | TMap< FIntPoint, float > | This map allows to track, for each FLandscapeSectionInfo that triggered a shadow invalidation, the LOD value that was used when the invalidation occurred Key = SectionInfo's RenderCoord (we cannot use a linear index like the TMaps above because these might change as new sections get added/removed dynamically and this needs to be tracked across frames) Value = LOD value of the section when the last shadow invalidation occurred | LandscapeRender.h |
Constants
| Name | Type | Remarks | Include Path |
|---|---|---|---|
| LandscapeIndexAllocator | TBitArray | LandscapeRender.h |
Variables
Public
| Name | Type | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|---|
| ComponentOrigin | FVector | LandscapeRender.h | ||
| ComponentResolution | int32 | Resolution, Origin and Size, for use in LOD Groups to verify that all landscapes are of matching resolutions, orientation and scale. | LandscapeRender.h | |
| ComponentXVector | FVector | LandscapeRender.h | ||
| ComponentYVector | FVector | LandscapeRender.h | ||
| ForcedLODOverride | int8 | Forced LOD level which overrides the ForcedLOD level of all the sections under this LandscapeRenderSystem. | LandscapeRender.h | |
| LandscapeIndex | int32 | LandscapeRender.h | ||
| LandscapeKey | uint32 | LandscapeRender.h | ||
| Min | FIntPoint | LandscapeRender.h | ||
| PerViewCachedSectionLODValues | TMap< const FSceneView *, TResourceArray< float > > | For a given view, we use those 2 maps to store, for each FLandscapeSectionInfo in SectionInfos, the current LOD Values so that it can be passed down to the renderer These are only really valid for a given render since the list of sections can change in the next frame. | LandscapeRender.h | |
| PerViewStateCachedSectionLODValues | TMap< uint32, TResourceArray< float > > | LandscapeRender.h | ||
| PerViewStateLastShadowInvalidationSectionLODValues | TMap< uint32, SectionKeyToLODValueMap > | LandscapeRender.h | ||
| ReferenceCount | int32 | Number of sections with resources created. | LandscapeRender.h | |
| RegisteredCount | int32 | Number of sections registered. | LandscapeRender.h | |
| Scene | FSceneInterface * | LandscapeRender.h | ||
| SectionInfos | TArray< FLandscapeSectionInfo * > | LandscapeRender.h | ||
| SectionLODBiasBuffer | FBufferRHIRef | LandscapeRender.h | ||
| SectionLODBiases | TResourceArray< float > | LandscapeRender.h | ||
| SectionLODBiasSRV | FShaderResourceViewRHIRef | LandscapeRender.h | ||
| SectionLODUniformBuffer | FUniformBufferRHIRef | LandscapeRender.h | ||
| SectionsRemovedSinceLastCompact | int32 | Counter used to reduce how often we call compact on the map when removing sections. | LandscapeRender.h | |
| ShadowInvalidationRequests | TMap< UE::Renderer::Private::IShadowInvalidatingInstances *, TArray< const FPrimitiveSceneInfo * > > | List of shadow invalidations to perform this frame (because IShadowInvalidatingInstances is not parallel-render thread-safe, we have to store them temporarily and issue them on the render thread later on) : | LandscapeRender.h | |
| Size | FIntPoint | LandscapeRender.h |
Functions
Public
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
bool AnySectionsInRangeInclusive
(
FIntPoint RangeMin, |
LandscapeRender.h | ||
void CompactMap() |
LandscapeRender.h | ||
const TResourceArray< float > & ComputeSectionsLODForView
(
const FSceneView& InView, |
LandscapeRender.h | ||
void FetchHeightmapLODBiases() |
LandscapeRender.h | ||
const TResourceArray< float > & GetCachedSectionLODValues
(
const FSceneView& InView |
LandscapeRender.h | ||
FLandscapeSectionInfo * GetSectionInfo
(
FIntPoint InRenderCoord |
LandscapeRender.h | ||
int32 GetSectionLinearIndex
(
FIntPoint InRenderCoord |
LandscapeRender.h | ||
float GetSectionLODBias
(
FIntPoint InRenderCoord |
LandscapeRender.h | ||
float GetSectionLODValue
(
const FSceneView& InView, |
LandscapeRender.h | ||
bool IsValidCoord
(
FIntPoint InRenderCoord |
LandscapeRender.h | ||
void PerformShadowInvalidations
(
UE::Renderer::Private::IShadowInvalidatingInstances& InShadowInvalidatingInstances |
LandscapeRender.h | ||
void ResizeAndMoveTo
(
FIntPoint NewMin, |
LandscapeRender.h | ||
void ResizeToInclude
(
const FIntPoint& NewCoord |
LandscapeRender.h | ||
void SetSectionInfo
(
FIntPoint InRenderCoord, |
LandscapeRender.h | ||
void UpdateBuffers
(
FRHICommandListBase& RHICmdList |
LandscapeRender.h |
Static
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
static float ComputeLODFromScreenSize
(
const LODSettingsComponent& InLODSettings, |
LandscapeRender.h | ||
static void CreateResources
(
FRHICommandListBase& RHICmdList, |
LandscapeRender.h | ||
static void DestroyResources
(
FLandscapeSectionInfo* SectionInfo |
LandscapeRender.h | ||
static void RegisterSection
(
FLandscapeSectionInfo* SectionInfo |
LandscapeRender.h | ||
static void UnregisterSection
(
FLandscapeSectionInfo* SectionInfo |
LandscapeRender.h |