uMod2 Alpha Version: known bugs: I disabled the remove device function inside the gui, because something in the event handling goes terrible wrong.

Implemented a some new features.
This commit is contained in:
code@koerner-de.net
2012-07-15 18:59:03 +00:00
parent d99107a919
commit 0bc7eebede
69 changed files with 7975 additions and 2393 deletions
+79 -9
View File
@@ -44,20 +44,74 @@ public:
uMod_TextureClient_DX9( IDirect3DDevice9* device, const int version);
virtual ~uMod_TextureClient_DX9(void);
int AddTexture( uMod_IDirect3DTexture9* tex); //called from uMod_IDirect3DDevice9::CreateTexture(...) or uMod_IDirect3DDevice9::BeginScene()
int AddTexture( uMod_IDirect3DVolumeTexture9* tex); //called from uMod_IDirect3DVolumeTexture9::CreateTexture(...) or uMod_IDirect3DDevice9::BeginScene()
int AddTexture( uMod_IDirect3DCubeTexture9* tex); //called from uMod_IDirect3DCubeTexture9::CreateTexture(...) or uMod_IDirect3DDevice9::BeginScene()
/**
* called from uMod_IDirect3DDevice9::CreateTexture(...) or uMod_IDirect3DDevice9::BeginScene()
* @param[in] tex texture to be added
* @return
*/
int AddTexture( uMod_IDirect3DTexture9* tex);
int RemoveTexture( uMod_IDirect3DTexture9* tex); //called from uMod_IDirect3DTexture9::Release()
int RemoveTexture( uMod_IDirect3DVolumeTexture9* tex); //called from uMod_IDirect3DVolumeTexture9::Release()
int RemoveTexture( uMod_IDirect3DCubeTexture9* tex); //called from uMod_IDirect3DCubeTexture9::Release()
/**
* called from uMod_IDirect3DVolumeTexture9::CreateTexture(...) or uMod_IDirect3DDevice9::BeginScene()
* @param[in] tex texture to be added
* @return
*/
int AddTexture( uMod_IDirect3DVolumeTexture9* tex);
/**
* called from uMod_IDirect3DCubeTexture9::CreateTexture(...) or uMod_IDirect3DDevice9::BeginScene()
* @param[in] tex texture to be added
* @return
*/
int AddTexture( uMod_IDirect3DCubeTexture9* tex);
/**
* called from uMod_IDirect3DTexture9::Release()
* @param[in] tex
* @return
*/
int RemoveTexture( uMod_IDirect3DTexture9* tex);
/**
* called from uMod_IDirect3DVolumeTexture9::Release()
* @param[in] tex
* @return
*/
int RemoveTexture( uMod_IDirect3DVolumeTexture9* tex);
/**
* called from uMod_IDirect3DCubeTexture9::Release()
* @param[in] tex
* @return
*/
int RemoveTexture( uMod_IDirect3DCubeTexture9* tex);
int SaveAllTextures(bool val); //called from the Server
int SaveSingleTexture(bool val); //called from the Server
int SaveTexture(uMod_IDirect3DTexture9* pTexture); //called from uMod_IDirect3DDevice9::BeginScene() (save button) or from AddTexture(...) (SaveAllTextures)
int SaveTexture(uMod_IDirect3DVolumeTexture9* pTexture); //called from uMod_IDirect3DDevice9::BeginScene() (save button) or from AddTexture(...) (SaveAllTextures)
int SaveTexture(uMod_IDirect3DCubeTexture9* pTexture); //called from uMod_IDirect3DDevice9::BeginScene() (save button) or from AddTexture(...) (SaveAllTextures)
/**
* called from uMod_IDirect3DDevice9::BeginScene() (save button) or from AddTexture(...) (SaveAllTextures)
* @param[in] pTexture
* @param[in] save_all true if called from AddTexture(...) -> (SaveAllTextures is true)
* @return
*/
int SaveTexture(uMod_IDirect3DTexture9* pTexture, bool save_all=false); //
/**
* called from uMod_IDirect3DDevice9::BeginScene() (save button) or from AddTexture(...) (SaveAllTextures)
* @param[in] pTexture
* @param[in] save_all true if called from AddTexture(...) -> (SaveAllTextures is true)
* @return
*/
int SaveTexture(uMod_IDirect3DVolumeTexture9* pTexture, bool save_all=false);
/**
* called from uMod_IDirect3DDevice9::BeginScene() (save button) or from AddTexture(...) (SaveAllTextures)
* @param[in] pTexture
* @param[in] save_all true if called from AddTexture(...) -> (SaveAllTextures is true)
* @return
*/
int SaveTexture(uMod_IDirect3DCubeTexture9* pTexture, bool save_all=false);
int MergeUpdate(void); //called from uMod_IDirect3DDevice9::BeginScene()
@@ -85,6 +139,22 @@ public:
private:
IDirect3DDevice9* D3D9Device;
/**
* Save the texture into a file (reagrding the various file formats.
* @param[in] pTexture
* @param[inout] file name without trailing format extension
* @return
*/
int SaveTexture(IDirect3DBaseTexture9* pTexture, wchar_t *file);
/**
* Return true if this texture has the right format to pass the FormatFilter and thus it is saved
* @param format
* @return
*/
bool SaveTextureFilterFormat(D3DFORMAT format);
int LoadTexture( TextureFileStruct* file_in_memory, uMod_IDirect3DTexture9 **ppTexture); // called if a target texture is found
int LoadTexture( TextureFileStruct* file_in_memory, uMod_IDirect3DVolumeTexture9 **ppTexture); // called if a target texture is found
int LoadTexture( TextureFileStruct* file_in_memory, uMod_IDirect3DCubeTexture9 **ppTexture); // called if a target texture is found