3#include <Tempest/RenderPipeline>
4#include <Tempest/Shader>
5#include <Tempest/Device>
38 Tempest::RenderPipeline
copy;
40 Tempest::RenderPipeline
bink;
49 Tempest::RenderPipeline
fog;
51 Tempest::RenderPipeline
sun;
130 Tempest::RenderPipeline pipeline;
134 bool bindless =
false;
135 bool trivial =
false;
138 void compileKeyShaders();
139 void compileShaders();
141 Tempest::RenderPipeline postEffect(std::string_view name);
142 Tempest::RenderPipeline postEffect(std::string_view name, Tempest::RenderState::ZTestMode ztest);
143 Tempest::RenderPipeline postEffect(std::string_view vs, std::string_view fs, Tempest::RenderState::ZTestMode ztest = Tempest::RenderState::ZTestMode::LEqual);
144 Tempest::ComputePipeline computeShader(std::string_view name);
145 Tempest::RenderPipeline fogShader (std::string_view name);
146 Tempest::RenderPipeline inWaterShader (std::string_view name,
bool isScattering);
147 Tempest::RenderPipeline reflectionShader(std::string_view name,
bool hasMeshlets);
148 Tempest::RenderPipeline ambientLightShader(std::string_view name);
152 std::future<void> deferredCompilation;
153 mutable std::list<Entry> materials;
Tempest::ComputePipeline rtsmPrimOmni
Tempest::ComputePipeline rtsmHiZ
Tempest::ComputePipeline fogViewLut3d
Tempest::RenderPipeline fog3dHQ
Tempest::ComputePipeline rtsmMeshletCull
Tempest::ComputePipeline clusterPatch
Tempest::ComputePipeline vsmListPages
Tempest::RenderPipeline skyPathTrace
Tempest::ComputePipeline probeAlocation
Tempest::ComputePipeline vsmRendering
Tempest::ComputePipeline rtsmLightsOmni
Tempest::ComputePipeline rtsmMeshletOmni
Tempest::ComputePipeline vsmCullLights
Tempest::ComputePipeline fogViewLutSep
Tempest::ComputePipeline rtsmBackfaceOmni
Tempest::RenderPipeline tonemappingUpscale
Tempest::ComputePipeline probeInit
Tempest::RenderPipeline directLightSh
Tempest::ComputePipeline swRaytracing64
Tempest::ComputePipeline fogOcclusion
Tempest::ComputePipeline swRendering
Tempest::RenderPipeline stash
Tempest::RenderPipeline probeHitDbg
Tempest::RenderPipeline waterReflection
Tempest::ComputePipeline hiZMip
Tempest::RenderPipeline rtsmDbg
Tempest::ComputePipeline probePrune
Tempest::ComputePipeline vsmPackDraw1
static bool isRtsmSupported()
Tempest::RenderPipeline probeAmbient
Tempest::ComputePipeline rtsmCulling
Tempest::ComputePipeline rtsmCompactOmni
Tempest::RenderPipeline vsmDirectLight
Tempest::RenderPipeline skyViewLut
Tempest::ComputePipeline vsmPostprocessOmni
Tempest::RenderPipeline directLightRq
const Tempest::RenderPipeline * materialPipeline(const Material &desc, DrawCommands::Type t, PipelineType pt, bool bindless) const
Tempest::ComputePipeline vsmSortPages
Tempest::RenderPipeline ambientLight
Tempest::ComputePipeline rtsmRaster
Tempest::RenderPipeline vsmDbg
Tempest::ComputePipeline visibilityPassSh
Tempest::RenderPipeline sun
Tempest::RenderPipeline lightsVsm
Tempest::ComputePipeline visibilityPassHiZCr
Tempest::RenderPipeline inventory
Tempest::ComputePipeline rtsmPosition
Tempest::ComputePipeline rtsmRendering
Tempest::ComputePipeline vsmMarkOmniPages
Tempest::ComputePipeline swRaytracing
Tempest::RenderPipeline skyTransmittance
Tempest::ComputePipeline hiZPot
Tempest::ComputePipeline probeMakeHash
Tempest::RenderPipeline swRenderingDbg
Tempest::ComputePipeline ssao
Tempest::ComputePipeline rtsmCullLights
Tempest::ComputePipeline rtsmRasterOmni
Tempest::RenderPipeline lightsRq
Tempest::ComputePipeline ssaoBlur
Tempest::ComputePipeline rtsmTaskOmni
Tempest::ComputePipeline vsmFogShadow
Tempest::ComputePipeline probeClear
Tempest::ComputePipeline visibilityPassHiZ
Tempest::ComputePipeline vsmVisibilityPass
Tempest::ComputePipeline vsmPackDraw0
Tempest::RenderPipeline vsmFog
Tempest::ComputePipeline rtsmRenderingOmni
Tempest::ComputePipeline vsmAllocPages
static bool isVsmSupported()
Tempest::ComputePipeline rtsmCompactLights
Tempest::ComputePipeline rtsmPrimCull
Tempest::RenderPipeline skyViewCldLut
Tempest::ComputePipeline cmaa2ProcessCandidates
Tempest::RenderPipeline directLight
Tempest::RenderPipeline fog
Tempest::ComputePipeline probeVote
Tempest::ComputePipeline vsmClear
Tempest::ComputePipeline rtsmClearOmni
Tempest::ComputePipeline vsmFogPages
Tempest::ComputePipeline vsmMergePages
Tempest::RenderPipeline ambientLightSsao
Tempest::ComputePipeline vsmTrimPages
Tempest::ComputePipeline fogEpipolarVsm
Tempest::RenderPipeline underwaterT
Tempest::RenderPipeline copy
Tempest::RenderPipeline sky
Tempest::RenderPipeline cmaa2DeferredColorApply2x2
Tempest::ComputePipeline cloudsLut
Tempest::ComputePipeline rtsmCullingOmni
Tempest::ComputePipeline probeTrace
Tempest::RenderPipeline skyMultiScattering
Tempest::ComputePipeline rtsmPositionOmni
Tempest::RenderPipeline lights
Tempest::ComputePipeline clusterInit
Tempest::ComputePipeline rtsmBboxesOmni
Tempest::ComputePipeline cmaa2EdgeColor2x2Presets[uint32_t(AaPreset::PRESETS_COUNT)]
Tempest::ComputePipeline vsmFogTrace
Tempest::RenderPipeline skySep
Tempest::ComputePipeline patch
Tempest::ComputePipeline fogEpipolarOcclusion
Tempest::RenderPipeline bink
Tempest::ComputePipeline irradiance
Tempest::ComputePipeline copyImg
Tempest::RenderPipeline rtsmDirectLight
Tempest::ComputePipeline swRaytracing8
Tempest::ComputePipeline vsmClearOmni
Tempest::ComputePipeline rtsmFogPages
Tempest::ComputePipeline copyBuf
Tempest::ComputePipeline probeLighting
Tempest::RenderPipeline waterReflectionSSR
Tempest::ComputePipeline rtsmPages
Tempest::RenderPipeline underwaterS
Tempest::ComputePipeline vsmMarkPages
Tempest::ComputePipeline vsmClumpPages
Tempest::RenderPipeline probeDbg
Tempest::ComputePipeline rtsmClear
Tempest::ComputePipeline probeClearHash
Tempest::ComputePipeline skyExposure
Tempest::RenderPipeline tonemapping
Tempest::ComputePipeline vsmAlloc2Pages