Cogs.Core
Source
Renderer
RenderTexture.h
1
#pragma once
2
3
#include "RenderResourceBase.h"
4
5
#include <array>
6
7
#include "Rendering/TextureData.h"
8
#include "Utilities/Expressions.h"
9
10
namespace
Cogs
11
{
12
class
IGraphicsDevice;
13
class
ISwapChain;
14
15
namespace
Core
16
{
17
struct
Texture;
18
19
struct
COGSCORE_DLL_API
RenderTexture
:
RenderResourceBase
<Texture>
20
{
21
RenderTexture
();
22
23
ActivationResult
update(
Texture
* texture,
IGraphicsDevice
* device,
class
RenderResources
* resources);
24
void
update(
class
Renderer
* renderer);
25
void
release(
IGraphicsDevice
* device,
class
RenderResources
* resources);
26
void
release(
class
Renderer
* renderer);
27
28
TextureDescription
description;
29
30
Cogs::TextureHandle
textureHandle =
Cogs::TextureHandle::NoHandle
;
31
32
// Hook for pushing a set of external textures into a rendertarget. Only used if override is set.
33
Cogs::TextureHandle
textureHandles[4];
34
int
count = 0;
35
36
ExpressionValue<size_t>
width = 0;
37
ExpressionValue<size_t>
height = 0;
38
ExpressionValue<size_t>
levels = 0;
39
ExpressionValue<size_t>
layers = 0;
40
ExpressionValue<size_t>
faces = 0;
41
ExpressionValue<size_t>
samples = 1;
42
43
float
clearColor[4] = {};
44
bool
clearColorSet =
false
;
45
46
Cogs::ISwapChain
* swapChain =
nullptr
;
47
RenderResource
* sizeSource =
nullptr
;
48
RenderTexture
* depthTexture =
nullptr
;
49
struct
RenderTarget
* renderTarget =
nullptr
;
50
struct
RenderTarget
* resolveTarget =
nullptr
;
// Used in ResolveResourceTask.cpp
51
std::array<RenderTarget *, 36> renderTargets = {};
52
53
std::unordered_map<size_t, Cogs::TextureViewHandle> views;
54
};
55
}
56
}
Cogs::Core::RenderResources
Contains render resources used by the renderer.
Definition:
RenderResources.h:19
Cogs::Core::Renderer
Core renderer system.
Definition:
Renderer.h:28
Cogs::IGraphicsDevice
Represents a graphics device used to manage graphics resources and issue drawing commands.
Definition:
IGraphicsDevice.h:169
Cogs::ISwapChain
Definition:
ISwapChain.h:10
Cogs::Core::ActivationResult
ActivationResult
Defines results for resource activation.
Definition:
ResourceBase.h:14
Cogs
Contains all Cogs related functionality.
Definition:
FieldSetter.h:23
Cogs::Core::ExpressionValue
Definition:
Expressions.h:99
Cogs::Core::RenderResourceBase
Render resources represent Engine resources like Mesh, Effect or MaterialInstance,...
Definition:
RenderResourceBase.h:20
Cogs::Core::RenderResource
Definition:
RenderResource.h:47
Cogs::Core::RenderTarget
Definition:
RenderTarget.h:18
Cogs::Core::RenderTexture
Definition:
RenderTexture.h:20
Cogs::Core::Texture
Texture resources contain raster bitmap data to use for texturing.
Definition:
Texture.h:91
Cogs::Handle_t< TextureTag >
Cogs::Handle_t< TextureTag >::NoHandle
static const Handle_t NoHandle
Represents a handle to nothing.
Definition:
Common.h:78
Cogs::TextureDescription
Definition:
TextureData.h:35
Generated by
1.9.6