![]() |
UDocumentation UE5.7 10.02.2026 (Source)
API documentation for Unreal Engine 5.7
|
#include "MaterialCache/MaterialCacheRenderer.h"#include "DeferredShadingRenderer.h"#include "MeshPassProcessor.h"#include "PrimitiveSceneInfo.h"#include "ScenePrivate.h"#include "BasePassRendering.h"#include "ComponentRecreateRenderStateContext.h"#include "MaterialCachedData.h"#include "InstanceCulling/InstanceCullingManager.h"#include "Nanite/NaniteRayTracing.h"#include "Nanite/NaniteShading.h"#include "Nanite/NaniteShared.h"#include "MaterialCache/MaterialCacheShaders.h"#include "Rendering/NaniteStreamingManager.h"#include "MaterialCacheDefinitions.h"#include "RendererModule.h"#include "MaterialCache/MaterialCache.h"#include "MaterialCache/MaterialCacheAttribute.h"#include "MaterialCache/MaterialCacheMeshProcessor.h"#include "MaterialCache/MaterialCachePrimitiveData.h"#include "MaterialCache/MaterialCacheSceneExtension.h"#include "MaterialCache/MaterialCacheStackProvider.h"#include "MaterialCache/MaterialCacheVirtualTextureRenderProxy.h"#include "Materials/MaterialRenderProxy.h"Classes | |
| struct | FMaterialCacheGenericCSPrimitiveBatch |
| struct | FMaterialCacheGenericCSMaterialBatch |
| struct | FMaterialCacheGenericCSBatch |
| struct | FMaterialCacheStaticMeshCommand |
| struct | FMaterialCacheHardwareLayerRenderData |
| struct | FMaterialCacheNaniteLayerRenderData |
| struct | FMaterialCacheNaniteRenderData |
| struct | FMaterialCacheVertexInvariantLayerRenderData |
| struct | FMaterialCachePageInfo |
| struct | FMaterialCachePageCollection |
| struct | FMaterialCacheLayerRenderData |
| struct | FMaterialCacheABuffer |
| struct | FMaterialCacheRenderData |
| struct | FMaterialCacheHardwareContext |
| struct | FMaterialCacheNaniteContext |
| struct | FMaterialCacheVertexInvariantContext |
| struct | FMaterialCachePageAllocation |
Enumerations | |
| enum class | EMaterialCacheRenderPath { HardwareRaster , NaniteRaster , VertexInvariant , Count } |
| enum class | EMaterialCacheABufferTileLayout { Horizontal , Sliced } |
Variables | |
| bool | GMaterialCacheStaticMeshEnableViewportFromVS = true |
| bool | GMaterialCacheVertexInvariantEnable = true |
| bool | GMaterialCacheCommandCaching = false |
|
strong |
|
strong |
| Enumerator | |
|---|---|
| HardwareRaster | Standard hardware rasterization unwrap path Batches to a single mesh command set per layer |
| NaniteRaster | Nanite rasterization unwrap path All pages shader the same rasterization context / vis-buffer, a single stack shares the same page vis-region Shading is parallel per layer, batched by material then primitive |
| VertexInvariant | Shade-only path, enabled when the material doesn't make use of non-uv derived vertex data |
| Count | |
| void CreatePageIndirectionBuffer | ( | FRDGBuilder & | GraphBuilder, |
| FMaterialCacheGenericCSBatch & | Batch | ||
| ) |
| DECLARE_GPU_STAT | ( | MaterialCacheCompositePages | ) |
| DECLARE_GPU_STAT | ( | MaterialCacheFinalize | ) |
| IMPLEMENT_STATIC_UNIFORM_BUFFER_STRUCT | ( | FMaterialCacheUniformParameters | , |
| "MaterialCachePass" | , | ||
| SceneTextures | |||
| ) |
Array declarations not supported for this type, lay them out manually
| FMaterialCacheGenericCSPrimitiveBatch & MaterialCacheAllocateGenericCSShadePage | ( | FSceneRendererBase * | Renderer, |
| const FMaterialCachePendingEntry & | Entry, | ||
| const FMaterialCachePendingPageEntry & | Page, | ||
| const FMaterialRenderProxy * | MaterialRenderProxy, | ||
| const FPrimitiveSceneProxy * | PrimitiveSceneProxy, | ||
| FMaterialCacheGenericCSBatch & | RenderData, | ||
| FMaterialCachePageAllocation | PageAllocation | ||
| ) |
| void MaterialCacheAllocateHardwareRasterPage | ( | FSceneRendererBase * | Renderer, |
| const FGuid & | TagGuid, | ||
| const FMaterialCachePendingEntry & | Entry, | ||
| const FMaterialCachePendingPageEntry & | Page, | ||
| FMaterialCacheStackEntry | StackEntry, | ||
| const FPrimitiveSceneProxy * | PrimitiveSceneProxy, | ||
| const FMaterialCacheVirtualTextureRenderProxy * | CacheProxy, | ||
| const FPrimitiveSceneInfo * | PrimitiveSceneInfo, | ||
| FMaterialCachePrimitiveData * | PrimitiveData, | ||
| FMaterialCacheHardwareLayerRenderData & | RenderData, | ||
| FMaterialCachePageAllocation | PageAllocation | ||
| ) |
| void MaterialCacheAllocateNaniteRasterPage | ( | FSceneRendererBase * | Renderer, |
| FRDGBuilder & | GraphBuilder, | ||
| const FGuid & | TagGuid, | ||
| const FMaterialCachePendingEntry & | Entry, | ||
| const FMaterialCachePendingPageEntry & | Page, | ||
| FMaterialCacheStackEntry | StackEntry, | ||
| const FPrimitiveSceneProxy * | PrimitiveSceneProxy, | ||
| const FMaterialCacheVirtualTextureRenderProxy * | CacheProxy, | ||
| const FPrimitiveSceneInfo * | PrimitiveSceneInfo, | ||
| FMaterialCachePrimitiveData * | PrimitiveData, | ||
| FMaterialCacheNaniteRenderData & | RenderData, | ||
| FMaterialCacheNaniteLayerRenderData & | LayerRenderData, | ||
| FMaterialCachePageAllocation | PageAllocation | ||
| ) |
| void MaterialCacheAllocateVertexInvariantPage | ( | FSceneRendererBase * | Renderer, |
| FRDGBuilder & | GraphBuilder, | ||
| const FGuid & | TagGuid, | ||
| const FMaterialCachePendingEntry & | Entry, | ||
| const FMaterialCachePendingPageEntry & | Page, | ||
| FMaterialCacheStackEntry | StackEntry, | ||
| const FPrimitiveSceneProxy * | PrimitiveSceneProxy, | ||
| const FPrimitiveSceneInfo * | PrimitiveSceneInfo, | ||
| FMaterialCachePrimitiveData * | PrimitiveData, | ||
| FMaterialCacheVertexInvariantLayerRenderData & | RenderData, | ||
| FMaterialCachePageAllocation | PageAllocation | ||
| ) |
| void MaterialCacheEnqueuePages | ( | FRDGBuilder & | GraphBuilder, |
| const FMaterialCacheTagLayout & | TagLayout, | ||
| const FMaterialCacheSetup & | Setup, | ||
| const TArrayView< FMaterialCachePageEntry > & | Pages | ||
| ) |
Enqueue a set of pages for rendering
| void MaterialCacheRenderPages | ( | FRDGBuilder & | GraphBuilder | ) |
Process all enqueued pages