My Project
ContentLoaderCCSSkin.h
1 #pragma once
2 #include "CustomCharCommon.h"
3 #include "IDataLoader.h"
4 
5 namespace ParaEngine
6 {
7  struct AssetFileEntry;
8  struct TextureEntity;
9 
15  class CCCSSkinLoader : public IDataLoader
16  {
17  private:
19  CharModelInstance* m_pCharModelInstance;
20 
23  std::vector <CharTextureComponent> m_layers;
24 
26  std::string m_sFileName;
27 
29  int m_nRetryCount;
30 
32  AssetFileEntry* m_pAssetFileEntry;
33  public:
37  CCCSSkinLoader(CharModelInstance* pCharModelInstance, CharTexture& charTexture, const char* sFileName);
38  ~CCCSSkinLoader();
39 
41  HRESULT CleanUp();
42  // overrides
43  public:
45  const char* GetFileName();
47  HRESULT Decompress(void** ppData, int* pcBytes);
49  HRESULT Destroy();
51  HRESULT Load();
52 
53  protected:
57  HRESULT ComposeWithGDIPlus();
58  };
59 
64  {
65  private:
67  CharModelInstance* m_pCharModelInstance;
69  std::string m_sFileName;
70 
72  RenderDevicePtr m_pDevice;
73 
74  public:
75  CCCSSkinProcessor(CharModelInstance* pCharModelInstance, const char* sFileName);
77 
79  RenderDevicePtr GetRenderDevice();
80 
82  HRESULT CleanUp();
83  // overrides
84  public:
85  HRESULT LockDeviceObject();
86  HRESULT UnLockDeviceObject();
87  HRESULT Destroy();
88  HRESULT Process(void* pData, int cBytes);
89  HRESULT CopyToResource();
90  void SetResourceError();
91  protected:
94  TextureEntity* ComposeRenderTarget();
95  };
96 }
Which DXT Compression to Use? Obviously, there are some trade-offs between the different formats whic...
Definition: TextureEntity.h:29
HRESULT Load()
Load is called from the IO thread to load data.
Definition: ContentLoaderCCSSkin.cpp:90
light-weighted file record header in memory.
Definition: AssetManifest.h:10
different physics engine has different winding order.
Definition: EventBinding.h:32
character animation instance: it includes both the animation and model display information.
Definition: CustomCharModelInstance.h:17
a very thin wrapper to DirectX device with a portable version of openGL implementation.
Definition: RenderDeviceDirectX.h:10
HRESULT Decompress(void **ppData, int *pcBytes)
Decompress is called by one of the processing threads to decompress the data.
Definition: ContentLoaderCCSSkin.cpp:48
CCCSSkinProcessor implementation of IDataProcessor.
Definition: ContentLoaderCCSSkin.h:63
HRESULT Destroy()
Destroy is called by the graphics thread when it has consumed the data.
Definition: ContentLoaderCCSSkin.cpp:78
CCCSSkinLoader implementation of IDataLoader it will first search locally.
Definition: ContentLoaderCCSSkin.h:15
HRESULT ComposeWithGDIPlus()
compose with Windows&#39; GDIPlus engine.
Definition: ContentLoaderCCSSkin.cpp:120
IDataProcessor is an interface that the AsyncLoader class uses to process and copy data into locked r...
Definition: IDataLoader.h:76
IDataLoader is an interface that the AsyncLoader class uses to load data from disk.
Definition: IDataLoader.h:14
HRESULT CleanUp()
clean up everything
Definition: ContentLoaderCCSSkin.cpp:53
CCCSSkinLoader(CharModelInstance *pCharModelInstance, CharTexture &charTexture, const char *sFileName)
Definition: ContentLoaderCCSSkin.cpp:29
const char * GetFileName()
get file name
Definition: ContentLoaderCCSSkin.cpp:43
Definition: CustomCharCommon.h:269