Cogs.Core
TwinVisualsTexAtlasRenderTask.h
1#pragma once
2
3#include "Renderer/EffectBinding.h"
4#include "Renderer/Tasks/RenderTask.h"
5
6#include "Rendering/Common.h"
7
8namespace Cogs::Core
9{
10 struct CachedEffect;
11 struct TexAtlasSystem;
12 struct TwinVisualsSystem;
13 struct RenderTaskContext;
14 struct RenderTaskDefinition;
15
17 {
19 TexAtlasSystem* texAtlasSystem,
20 TwinVisualsSystem* twinVisualsSystem,
21 const RenderTaskDefinition& renderTaskDefinition,
22 const PipelineOptions& pipelineOptions);
23
24 void apply(RenderTaskContext* renderTaskContext) override;
25
26 void cleanup(RenderTaskContext* renderTaskContext) override;
27
28 TexAtlasSystem* texAtlasSystem = nullptr;
29 TwinVisualsSystem* twinVisualsSystem = nullptr;
30 CachedEffect* effect = nullptr;
31
32 GlobalBinding globalBinding{};
34
35 bool clearColor = true;
36 bool viewportFromTarget = false;
38 BlendMode blendMode = BlendMode::None;
39
40 bool firstRun = true;
41 bool inputSrgb = false;
42 bool lumaInAlpha = false;
43 bool outputSrgb = true;
44 };
45}
Contains the Engine, Renderer, resource managers and other systems needed to run Cogs....
BlendMode
Defines blending modes for rendering.
@ None
No blending enabled for opaque shapes, defaults to Blend for transparent shapes.
static const Handle_t NoHandle
Represents a handle to nothing.
Definition: Common.h:78