CeresEngine 0.2.0
A game development framework
Loading...
Searching...
No Matches
TextureFormat.hpp
Go to the documentation of this file.
1//
2// CeresEngine - A game development framework
3//
4// Created by Rogiel Sulzbach.
5// Copyright (c) 2018-2022 Rogiel Sulzbach. All rights reserved.
6//
7
8#pragma once
9
12
15
16namespace CeresEngine {
17
18 // struct TextureFormatKind : public StructEnum<UInt8> {
19 // enum : UnderlyingType {
20 // ColorR,
21 // ColorRG,
22 // ColorRGB,
23 // ColorRGBA,
24 // Depth,
25 // Stencil,
26 // DepthStencil,
27 // } raw;
28 // CE_STRUCT_ENUM_DECL(TextureFormatKind);
29 // };
30 //
31 // struct TextureFormatDataType : public StructEnum<UInt8> {
32 // enum : UnderlyingType {
33 // UInt8,
34 // Int8,
35 //
36 // UInt16,
37 // Int16,
38 //
39 // UInt32,
40 // Int132,
41 //
42 // Float16,
43 // Float32,
44 // } raw;
45 // CE_STRUCT_ENUM_DECL(TextureFormatDataType);
46 // };
47 //
48 // struct TextureFormat {
49 // TextureFormatKind kind;
50 // TextureFormatDataType type;
51 // bool normalized = false;
52 // };
53
54 enum class CE_SCRIPT_EXPORT() Format {
55 Undefined,
56
57 R8UNorm,
59 R8SNorm,
61 R8UInt,
62 R8SInt,
63
64 R16UNorm,
66 R16SNorm,
68 R16UInt,
69 R16SInt,
70 R16Float,
71
72 R32UInt,
73 R32SInt,
74 R32Float,
75
76 RG8UNorm,
78 RG8SNorm,
80 RG8UInt,
82 RG8SInt,
83
84 RG16UNorm,
86 RG16SNorm,
88 RG16UInt,
90 RG16SInt,
92 RG16Float,
94
95 RG32UInt,
97 RG32SInt,
99 RG32Float,
101
102 RGB8UNorm,
105 RGB8SNorm,
108 RGB8UInt,
110 RGB8SInt,
112
113 RGB16UNorm,
116 RGB16SNorm,
119 RGB16UInt,
121 RGB16SInt,
123 RGB16Float,
125
126 RGB32UInt,
128 RGB32SInt,
130 RGB32Float,
132
133 RGBA8UNorm,
135 RGBA8SNorm,
137 RGBA8UInt,
139 RGBA8SInt,
141
146 RGBA16UInt,
148 RGBA16SInt,
152
153 RGBA32UInt,
155 RGBA32SInt,
159
161
162 R64Float,
164 RG64Float,
166 RGB64Float,
171
173
174 BGRA8UNorm,
176 BGRA8SNorm,
179 BGRA8UInt,
181 BGRA8SInt,
183 BGRA8sRGB,
187
189
190 D16UNorm,
195 D32Float,
201
203
204 BC1RGB,
206 BC1RGBA,
208 BC2RGBA,
210 BC3RGBA,
212 };
213
215
216} // namespace CeresEngine
217
218
#define CE_SCRIPT_EXPORT(...)
The CE_SCRIPT_EXPORT macro marks a class or method as exportable and available in scripting environme...
Definition Macros.hpp:247
Definition Application.hpp:19
@ Undefined
We don't care about the previous content of the respective render target attachment.
StringView toString(Button button) noexcept
Returns a string representation for the given button
Format
Definition TextureFormat.hpp:54
@ RGBA16UNorm
Color format: red, green, blue, alpha 16-bit.
@ RG16SNorm
Color format: red, green 16-bit normalized signed.
@ RGBA64Float
Color format: red, green, blue, alpha 64-bit floating.
@ RGBA32SInt
Color format: red, green, blue, alpha 32-bit signed.
@ RGB8UInt
Color format: red, green, blue 8-bit unsigned integer.
@ RGBA16SInt
Color format: red, green, blue, alpha 16-bit signed.
@ RG16UInt
Color format: red, green 16-bit unsigned interger.
@ BC3RGBA
Compressed color format: RGBA S3TC DXT5 with 16 bytes per.
@ R16SInt
Color format: red 16-bit signed interger component.
@ BGRA8SInt
Color format: blue, green, red, alpha 8-bit signed.
@ BGRA8UInt
Color format: blue, green, red, alpha 8-bit unsigned.
@ R64Float
-> Extended color formats
@ RGB8SInt
Color format: red, green, blue 8-bit signed integer.
@ RG8SNorm
Color format: red, green 8-bit normalized signed integer.
@ RG32SInt
Color format: red, green 32-bit signed interger.
@ RG8UNorm
Color format: red, green 8-bit normalized unsigned.
@ RGB16SInt
Color format: red, green, blue 16-bit signed interger.
@ RGB32Float
Color format: red, green, blue 32-bit floating point.
@ R8UInt
Color format: red 8-bit unsigned integer component.
@ RGB16SNorm
Color format: red, green, blue 16-bit normalized signed.
@ RGBA16Float
Color format: red, green, blue, alpha 16-bit floating.
@ RGB16UInt
Color format: red, green, blue 16-bit unsigned interger.
@ RGBA8SNorm
Color format: red, green, blue, alpha 8-bit normalized.
@ BC1RGB
-> Compressed color formats
@ RGB32UInt
Color format: red, green, blue 32-bit unsigned interger.
@ D32Float
Depth-stencil format: depth 32-bit floating point.
@ BGRA8sRGB
Color format: blue, green, red, alpha 8-bit normalized.
@ BGRA8SNorm
Color format: blue, green, red, alpha 8-bit normalized.
@ RG64Float
Color format: red, green 64-bit floating point.
@ D16UNorm
-> Depth-stencil formats
@ R16Float
Color format: red 16-bit floating point component.
@ RG8SInt
Color format: red, green 8-bit signed integer components.
@ RG16Float
Color format: red, green 16-bit floating point.
@ RG32Float
Color format: red, green 32-bit floating point.
@ D24UNormS8UInt
Depth-stencil format: depth 24-bit normalized.
@ D32FloatS8X24UInt
Depth-stencil format: depth 32-bit floating.
@ R8UNorm
Color format: red 8-bit normalized unsigned integer.
@ RGB8SNorm
Color format: red, green, blue 8-bit normalized signed.
@ RGB16Float
Color format: red, green, blue 16-bit floating point.
@ BC1RGBA
Compressed color format: RGBA S3TC DXT1 with 8 bytes per.
@ RGB32SInt
Color format: red, green, blue 32-bit signed interger.
@ RGBA8UNorm
Color format: red, green, blue, alpha 8-bit normalized.
@ RG8UInt
Color format: red, green 8-bit unsigned integer.
@ R32SInt
Color format: red 32-bit signed interger component.
@ BC2RGBA
Compressed color format: RGBA S3TC DXT3 with 16 bytes per.
@ R16UNorm
Color format: red 16-bit normalized unsigned interger.
@ RGBA16SNorm
Color format: red, green, blue, alpha 16-bit.
@ RGBA8SInt
Color format: red, green, blue, alpha 8-bit signed.
@ RG16UNorm
Color format: red, green 16-bit normalized unsigned.
@ RGB64Float
Color format: red, green, blue 64-bit floating point.
@ R8SInt
Color format: red 8-bit signed integer component.
@ RGBA16UInt
Color format: red, green, blue, alpha 16-bit unsigned.
@ RGB16UNorm
Color format: red, green, blue 16-bit normalized.
@ BGRA8UNorm
-> Reversed color formats
@ R16UInt
Color format: red 16-bit unsigned interger component.
@ R16SNorm
Color format: red 16-bit normalized signed interger.
@ RGBA8UInt
Color format: red, green, blue, alpha 8-bit unsigned.
@ R32UInt
Color format: red 32-bit unsigned interger component.
@ RG32UInt
Color format: red, green 32-bit unsigned interger.
@ R32Float
Color format: red 32-bit floating point component.
@ RGBA32Float
Color format: red, green, blue, alpha 32-bit floating.
@ RGBA32UInt
Color format: red, green, blue, alpha 32-bit unsigned.
@ R8SNorm
Color format: red 8-bit normalized signed integer.
@ RGB8UNorm
Color format: red, green, blue 8-bit normalized unsigned.
@ RG16SInt
Color format: red, green 16-bit signed interger.