Foundation
Loading...
Searching...
No Matches
Classes | Functions | Variables
Rasterizer.cpp File Reference
#include "Rasterizer.hpp"
#include <RenderUtils/CSClearBuffer.hpp>
#include <RenderUtils/CSMipGeneration.hpp>
#include <RenderUtils/PSFullscreen.hpp>
#include <algorithm>
#include <limits>
#include "GPUScene.hpp"

Classes

struct  MeshletTaskDispatch
 
struct  MeshletTaskWork
 
struct  DrawIndexedIndirectCommand
 

Functions

static void BuildRasterFeature (RasterFeatureContext &ctx, RasterInjectionPoint point, Span< const RasterFeature > features)
 
void BuildRasterRenderGraph (Renderer *renderer, RendererUBO *globals, RendererResources &gpu, RendererConfig const &cfg, RendererOutputs &out, Span< const RasterFeature > features)
 Builds the RenderGraph for the Raster renderer.
 

Variables

constexpr size_t kMeshWorkGroupSize = 64
 
constexpr size_t kMaxMeshletCount = 1e6
 
constexpr size_t kMaxMeshletTaskWorkCount = kMaxMeshletCount / kMeshWorkGroupSize
 
constexpr size_t kMaxDynamicDraws = 4096
 
constexpr size_t kMaxCurveDraws = 4096
 
const ViewFlags kDisableRTBuildFlags
 
const RHIResourceFormat kGBufferNormalFormat = RHIResourceFormat::A2B10G10R10Unorm
 

Function Documentation

◆ BuildRasterFeature()

static void BuildRasterFeature ( RasterFeatureContext ctx,
RasterInjectionPoint  point,
Span< const RasterFeature features 
)
static

◆ BuildRasterRenderGraph()

void BuildRasterRenderGraph ( Renderer renderer,
RendererUBO globals,
RendererResources gpu,
RendererConfig const &  cfg,
RendererOutputs out,
Span< const RasterFeature features 
)

Builds the RenderGraph for the Raster renderer.

Note
AS updates through (BuildGPUSceneAccelerationStructureUpdatePass) is already conditionally built by this pass

Variable Documentation

◆ kDisableRTBuildFlags

const ViewFlags kDisableRTBuildFlags
Initial value:
= ViewFlagsBits::Overdraw | ViewFlagsBits::Meshlet | ViewFlagsBits::BaseColor |
ViewFlagsBits::Normal | ViewFlagsBits::Position | ViewFlagsBits::Matcap

◆ kGBufferNormalFormat

const RHIResourceFormat kGBufferNormalFormat = RHIResourceFormat::A2B10G10R10Unorm

◆ kMaxCurveDraws

constexpr size_t kMaxCurveDraws = 4096
constexpr

◆ kMaxDynamicDraws

constexpr size_t kMaxDynamicDraws = 4096
constexpr

◆ kMaxMeshletCount

constexpr size_t kMaxMeshletCount = 1e6
constexpr

◆ kMaxMeshletTaskWorkCount

constexpr size_t kMaxMeshletTaskWorkCount = kMaxMeshletCount / kMeshWorkGroupSize
constexpr

◆ kMeshWorkGroupSize

constexpr size_t kMeshWorkGroupSize = 64
constexpr