Plasma Engine  2.0
Loading...
Searching...
No Matches
TextureCubeAssetObjects.h
1#pragma once
2
3#include <EditorFramework/Assets/SimpleAssetDocument.h>
4#include <RendererCore/RenderContext/Implementation/RenderContextStructs.h>
5#include <Texture/TexConv/TexConvEnums.h>
6#include <ToolsFoundation/Object/DocumentObjectBase.h>
7
9
11{
12 using StorageType = plInt8;
13
14 enum Enum
15 {
16 RGB1,
17 RGBA1,
18
19 RGB1TO6,
20 RGBA1TO6,
21
22 Default = RGB1,
23 };
24};
25
26PL_DECLARE_REFLECTABLE_TYPE(PL_NO_LINKAGE, plTextureCubeChannelMappingEnum);
27
28
30{
31 PL_ADD_DYNAMIC_REFLECTION(plTextureCubeAssetProperties, plReflectedClass);
32
33public:
34 static void PropertyMetaStateEventHandler(plPropertyMetaStateEvent& e);
35
36 const char* GetInputFile(plInt32 iInput) const { return m_Input[iInput]; }
37
38 void SetInputFile0(const char* szFile) { m_Input[0] = szFile; }
39 const char* GetInputFile0() const { return m_Input[0]; }
40 void SetInputFile1(const char* szFile) { m_Input[1] = szFile; }
41 const char* GetInputFile1() const { return m_Input[1]; }
42 void SetInputFile2(const char* szFile) { m_Input[2] = szFile; }
43 const char* GetInputFile2() const { return m_Input[2]; }
44 void SetInputFile3(const char* szFile) { m_Input[3] = szFile; }
45 const char* GetInputFile3() const { return m_Input[3]; }
46 void SetInputFile4(const char* szFile) { m_Input[4] = szFile; }
47 const char* GetInputFile4() const { return m_Input[4]; }
48 void SetInputFile5(const char* szFile) { m_Input[5] = szFile; }
49 const char* GetInputFile5() const { return m_Input[5]; }
50
51 plString GetAbsoluteInputFilePath(plInt32 iInput) const;
52 plInt32 GetNumInputFiles() const;
53
54 plEnum<plTexConvCompressionMode> m_CompressionMode;
55 plEnum<plTexConvMipmapMode> m_MipmapMode;
56
57 plEnum<plTextureFilterSetting> m_TextureFilter;
58 plEnum<plTexConvUsage> m_TextureUsage;
60
61 float m_fHdrExposureBias = 0;
62
63private:
64 plString m_Input[6];
65};
All classes that should be dynamically reflectable, need to be derived from this base class.
Definition DynamicRTTI.h:86
Definition TextureCubeAssetObjects.h:30
A custom enum implementation that allows to define the underlying storage type to control its memory ...
Definition Enum.h:37
Event that is broadcast whenever information about how to present properties is required.
Definition PropertyMetaState.h:35
Definition TextureCubeAssetObjects.h:11