ILboolean ILAPIENTRY ilutD3D8VolTexFromFile(IDirect3DDevice8 *Device, char *FileName, IDirect3DVolumeTexture8 **Texture) { iBindImageTemp(); if (!ilLoadImage(FileName)) return IL_FALSE; *Texture = ilutD3D8VolumeTexture(Device); return IL_TRUE; }
ILboolean ILAPIENTRY ilutD3D8TexFromFileInMemory(IDirect3DDevice8 *Device, ILvoid *Lump, ILuint Size, IDirect3DTexture8 **Texture) { iBindImageTemp(); if (!ilLoadL(IL_TYPE_UNKNOWN, Lump, Size)) return IL_FALSE; *Texture = ilutD3D8Texture(Device); return IL_TRUE; }
ILboolean ILAPIENTRY ilutD3D10TexFromFile(ID3D10Device *Device, ILconst_string FileName, ID3D10Texture2D **Texture) { iBindImageTemp(); if (!ilLoadImage(FileName)) return IL_FALSE; *Texture = ilutD3D10Texture(Device); return IL_TRUE; }
ILboolean ILAPIENTRY ilutD3D8VolTexFromFileHandle(IDirect3DDevice8 *Device, ILHANDLE File, IDirect3DVolumeTexture8 **Texture) { iBindImageTemp(); if (!ilLoadF(IL_TYPE_UNKNOWN, File)) return IL_FALSE; *Texture = ilutD3D8VolumeTexture(Device); return IL_TRUE; }
ILboolean ILAPIENTRY ilutD3D10TexFromFileHandle(ID3D10Device *Device, ILHANDLE File, ID3D10Texture2D **Texture) { iBindImageTemp(); if (!ilLoadF(IL_TYPE_UNKNOWN, File)) return IL_FALSE; *Texture = ilutD3D10Texture(Device); return IL_TRUE; }
SDL_Surface* ILAPIENTRY ilutSDLSurfaceLoadImage(ILstring FileName) { SDL_Surface *Surface; iBindImageTemp(); if (!ilLoadImage(FileName)) { return NULL; } Surface = ilutConvertToSDLSurface(SDL_SWSURFACE); return Surface; }
ILboolean ILAPIENTRY ilutD3D8VolTexFromResource(IDirect3DDevice8 *Device, HMODULE SrcModule, char *SrcResource, IDirect3DVolumeTexture8 **Texture) { HRSRC Resource; ILubyte *Data; iBindImageTemp(); Resource = (HRSRC)LoadResource(SrcModule, FindResource(SrcModule, SrcResource, RT_BITMAP)); Data = (ILubyte*)LockResource(Resource); if (!ilLoadL(IL_TYPE_UNKNOWN, Data, SizeofResource(SrcModule, FindResource(SrcModule, SrcResource, RT_BITMAP)))) return IL_FALSE; *Texture = ilutD3D8VolumeTexture(Device); return IL_TRUE; }
ILboolean ILAPIENTRY ilutD3D10TexFromResource(ID3D10Device *Device, HMODULE SrcModule, ILconst_string SrcResource, ID3D10Texture2D **Texture) { HRSRC Resource; ILubyte *Data; iBindImageTemp(); Resource = (HRSRC)LoadResource(SrcModule, FindResource(SrcModule, SrcResource, RT_BITMAP)); Data = (ILubyte*)LockResource(Resource); if (!ilLoadL(IL_TYPE_UNKNOWN, Data, SizeofResource(SrcModule, FindResource(SrcModule, SrcResource, RT_BITMAP)))) return IL_FALSE; *Texture = ilutD3D10Texture(Device); return IL_TRUE; }
// ONLY call at startup. ILvoid ILAPIENTRY ilInit() { // if it is already initialized skip initialization if (IsInit == IL_TRUE ) return; //ilSetMemory(NULL, NULL); Now useless 3/4/2006 (due to modification in il_alloc.c) ilSetError(IL_NO_ERROR); ilDefaultStates(); // Set states to their defaults. // Sets default file-reading callbacks. ilResetRead(); ilResetWrite(); #if (!defined(_WIN32_WCE)) && (!defined(IL_STATIC_LIB)) atexit((void*)ilRemoveRegistered); #endif //_WIN32_WCE //ilShutDown(); iSetImage0(); // Beware! Clears all existing textures! iBindImageTemp(); // Go ahead and create the temporary image. IsInit = IL_TRUE; return; }