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(
class
Renderer
* renderer);
26
27
TextureDescription
description;
28
29
Cogs::TextureHandle
textureHandle =
Cogs::TextureHandle::NoHandle
;
30
31
// Hook for pushing a set of external textures into a rendertarget. Only used if override is set.
32
Cogs::TextureHandle
textureHandles[4];
33
int
count = 0;
34
35
ExpressionValue<size_t>
width = 0;
36
ExpressionValue<size_t>
height = 0;
37
ExpressionValue<size_t>
levels = 0;
38
ExpressionValue<size_t>
layers = 0;
39
ExpressionValue<size_t>
faces = 0;
40
ExpressionValue<size_t>
samples = 1;
41
42
float
clearColor[4] = {};
43
bool
clearColorSet =
false
;
44
45
Cogs::ISwapChain
* swapChain =
nullptr
;
46
RenderResource
* sizeSource =
nullptr
;
47
RenderTexture
* depthTexture =
nullptr
;
48
struct
RenderTarget
* renderTarget =
nullptr
;
49
std::array<RenderTarget *, 36> renderTargets = {};
50
51
std::unordered_map<size_t, Cogs::TextureViewHandle> views;
52
};
53
}
54
}
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:115
Cogs::Core::RenderResourceBase
Render resources represent Engine resources like Mesh, Effect or MaterialInstance,...
Definition:
RenderResourceBase.h:20
Cogs::Core::RenderResource
Definition:
RenderResource.h:49
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:77
Cogs::TextureDescription
Definition:
TextureData.h:35
Generated by
1.9.6