Plasma Engine  2.0
Loading...
Searching...
No Matches
TextureAtlasDesc.h
1#pragma once
2
3#include <Foundation/Containers/ArrayMap.h>
4#include <Foundation/Containers/DynamicArray.h>
5#include <Foundation/Math/Rect.h>
6#include <Foundation/Strings/String.h>
7#include <Texture/TexConv/TexConvEnums.h>
8
9struct PL_TEXTURE_DLL plTextureAtlasCreationDesc
10{
11 struct Layer
12 {
14 plUInt8 m_uiNumChannels = 4;
15 };
16
17 struct Item
18 {
19 plUInt32 m_uiUniqueID;
20 plUInt32 m_uiFlags;
21 plString m_sAlphaInput;
22 plString m_sLayerInput[4];
23 };
24
27
28 plResult Serialize(plStreamWriter& inout_stream) const;
29 plResult Deserialize(plStreamReader& inout_stream);
30
31 plResult Save(plStringView sFile) const;
32 plResult Load(plStringView sFile);
33};
34
35struct PL_TEXTURE_DLL plTextureAtlasRuntimeDesc
36{
37 struct Item
38 {
39 plUInt32 m_uiFlags;
40 plRectU32 m_LayerRects[4];
41 };
42
43 plUInt32 m_uiNumLayers = 0;
45
46 void Clear();
47
48 plResult Serialize(plStreamWriter& inout_stream) const;
49 plResult Deserialize(plStreamReader& inout_stream);
50};
See plArrayMapBase for details.
Definition ArrayMap.h:149
Definition DynamicArray.h:81
A hybrid array uses in-place storage to handle the first few elements without any allocation....
Definition HybridArray.h:12
Interface for binary in (read) streams.
Definition Stream.h:22
Interface for binary out (write) streams.
Definition Stream.h:107
plStringView represent a read-only sub-string of a larger string, as it can store a dedicated string ...
Definition StringView.h:34
A custom enum implementation that allows to define the underlying storage type to control its memory ...
Definition Enum.h:37
Default enum for returning failure or success, instead of using a bool.
Definition Types.h:54
Definition TextureAtlasDesc.h:18
Definition TextureAtlasDesc.h:12
Definition TextureAtlasDesc.h:10
Definition TextureAtlasDesc.h:38
Definition TextureAtlasDesc.h:36