A retain-release type of smart pointer.
Definition SmartPtr.hpp:132
Definition GPUCommandBuffer.hpp:77
Definition GPUComputePipeline.hpp:62
Definition GPUDevice.hpp:357
Definition GPUGraphicsPipeline.hpp:790
Definition GPURenderPass.hpp:149
Definition GPURenderTarget.hpp:105
Definition RenderGraph.hpp:23
Definition RenderTask.hpp:243
RenderTaskResourceUsage & compile()
Compiles the render task.
A class that represents a camera inside the renderer.
Definition RendererCamera.hpp:90
The CeresEngine renderer.
Definition Renderer.hpp:35
A class that represents a scene inside the renderer.
Definition RendererScene.hpp:34
Definition RenderTask.hpp:473
A simple graphics task that makes easier implementing tasks that use a single graphics pipeline.
Definition RenderTask.hpp:338
Definition VoxelConeTracing.hpp:241
ImageRenderResourceRef depth
Definition VoxelConeTracing.hpp:249
ImageRenderResourceRef voxel
Definition VoxelConeTracing.hpp:244
GPUGraphicsPipelinePtr mPipeline
The graphics pipeline used to render the voxel scene for debug purposes.
Definition VoxelConeTracing.hpp:255
ImageRenderResourceRef color
Definition VoxelConeTracing.hpp:248
DebugRenderTask(RenderGraph &renderGraph, RendererCamera &camera, const Settings &settings)
Creates a new DebugRenderTask.
RendererCamera & mCamera
Definition VoxelConeTracing.hpp:257
Definition VoxelConeTracing.hpp:165
ImageRenderResourceRef lighting
Definition VoxelConeTracing.hpp:186
IndirectLightingRenderTask(RenderGraph &renderGraph, RendererCamera &camera, const Settings &settings)
Creates a new IndirectLightingRenderTask.
GPUSamplerPtr mVoxelSampler
A sampler object used to sample from the voxel image.
Definition VoxelConeTracing.hpp:197
~IndirectLightingRenderTask() final
ImageRenderResourceRef depth
An image holding frame depth.
Definition VoxelConeTracing.hpp:169
ImageRenderResourceRef normalAndRoughness
An image holding normals and material roughness.
Definition VoxelConeTracing.hpp:172
ImageRenderResourceRef voxel
Definition VoxelConeTracing.hpp:182
RendererCamera & mCamera
Definition VoxelConeTracing.hpp:190
ImageRenderResourceRef emissionAndMetallic
An image holding the material emissive properties and material metallic factor.
Definition VoxelConeTracing.hpp:180
ImageRenderResourceRef albedoAndAmbientOcclusion
An image holding the material albedo and ambient occlusion factor.
Definition VoxelConeTracing.hpp:176
GPUSamplerPtr mGeometrySampler
A sampler object used to sample from the G-Buffer images.
Definition VoxelConeTracing.hpp:194
Definition VoxelConeTracing.hpp:79
~InjectRadianceRenderTask() final
ImageRenderResourceRef emission
Definition VoxelConeTracing.hpp:84
InjectRadianceRenderTask(RenderGraph &renderGraph, RendererScene &scene, RendererCamera &camera, const Settings &settings)
Creates a new InjectRadianceRenderTask.
RendererCamera & mCamera
Definition VoxelConeTracing.hpp:93
GPUSamplerPtr mSampler
The voxel sampler.
Definition VoxelConeTracing.hpp:97
ImageRenderResourceRef normal
Definition VoxelConeTracing.hpp:83
ImageRenderResourceRef albedo
Definition VoxelConeTracing.hpp:82
ImageRenderResourceRef voxel
Definition VoxelConeTracing.hpp:88
RendererScene & mScene
Definition VoxelConeTracing.hpp:92
Definition VoxelConeTracing.hpp:121
GPUSamplerPtr mSampler
A sampler used to sample voxels from the radiance voxel map.
Definition VoxelConeTracing.hpp:140
bool mShouldClear
Definition VoxelConeTracing.hpp:137
ImageRenderResourceRef voxel
Definition VoxelConeTracing.hpp:126
~PropagateRadianceRenderTask() final
ImageRenderResourceRef normal
Definition VoxelConeTracing.hpp:125
PropagateRadianceRenderTask(RenderGraph &renderGraph, Renderer &renderer, RendererCamera &camera, const Settings &settings, bool shouldClear=true)
Creates a new PropagateRadianceRenderTask.
ImageRenderResourceRef albedo
Definition VoxelConeTracing.hpp:124
RendererCamera & mCamera
Definition VoxelConeTracing.hpp:135
Definition VoxelConeTracing.hpp:218
~UpscalingRenderTask() final
UpscalingRenderTask(RenderGraph &renderGraph, const Settings &settings)
Creates a new IndirectLightingRenderTask.
GPUSamplerPtr mSampler
A sampler object used to sample from the G-Buffer images.
Definition VoxelConeTracing.hpp:223
Definition VoxelConeTracing.hpp:39
~VoxelizationRenderTask() final
GPUGraphicsPipelinePtr createGraphicsPipeline(GPUDevice &device, GPURenderPass &renderPass) final
Creates a new graphics pipeline instance for the render task.
RendererScene & mScene
Definition VoxelConeTracing.hpp:51
struct CeresEngine::VoxelConeTracing::VoxelizationRenderTask::@51 output
ImageRenderResourceRef normal
Definition VoxelConeTracing.hpp:43
void initialize(GPUDevice &device) final
Perform a sequence of steps that initialize the graphics render task.
const Settings & mSettings
Definition VoxelConeTracing.hpp:53
GPUSamplerPtr mSampler
The material sampler.
Definition VoxelConeTracing.hpp:49
ImageRenderResourceRef albedo
Definition VoxelConeTracing.hpp:42
VoxelizationRenderTask(RenderGraph &renderGraph, RendererScene &scene, RendererCamera &camera, const Settings &settings)
Creates a new VoxelizationRenderTask.
ImageRenderResourceRef emission
Definition VoxelConeTracing.hpp:44
RendererCamera & mCamera
Definition VoxelConeTracing.hpp:52
Deferred voxel shading is a four-step real-time global illumination technique inspired by voxel cone ...
Definition VoxelConeTracing.hpp:30
Definition Application.hpp:19
constexpr size_t hash(const T &v)
Generates a hash for the provided type.
Definition Hash.hpp:25
A context structure that holds context for a render graph pass.
Definition RenderTask.hpp:143
A structure that allows the user to customize the Voxel Cone Tracing algorithm parameters.
Definition RendererCameraSettings.hpp:102