![]() |
Public API Reference |
![]() |
This interface represents the threaded map loader methods. More...
#include <imap/loader.h>
Public Member Functions | |
virtual void | AddSectorToList (iSector *obj)=0 |
Add object to the transfer list. | |
virtual csPtr < iCamposLoaderIterator > | GetLoaderCameraPositions ()=0 |
Get the loader camera list. | |
virtual csPtr < iMaterialLoaderIterator > | GetLoaderMaterials ()=0 |
Get the loader material list. | |
virtual csPtr < iMeshLoaderIterator > | GetLoaderMeshes ()=0 |
Get the loader mesh sector list. | |
virtual csPtr < iMeshFactLoaderIterator > | GetLoaderMeshFactories ()=0 |
Get the loader mesh factory list. | |
virtual csPtr < iSectorLoaderIterator > | GetLoaderSectors ()=0 |
Get the loader sector list. | |
virtual csPtr < iSharedVarLoaderIterator > | GetLoaderSharedVariables ()=0 |
Get the loader shared variable list. | |
virtual csPtr < iTextureLoaderIterator > | GetLoaderTextures ()=0 |
Get the loader texture list. | |
THREADED_INTERFACE3 (LoadSoundSysData, const char *cwd, const char *fname, bool do_verbose=false) | |
New Sound System: Load a sound file and return an iSndSysData object. | |
THREADED_INTERFACE4 (LoadImage, const char *cwd, const char *Filename, int Format=CS_IMGFMT_INVALID, bool do_verbose=false) | |
Load an image file. | |
THREADED_INTERFACE4 (LoadImage, const char *cwd, csRef< iDataBuffer > buf, int Format=CS_IMGFMT_INVALID, bool do_verbose=false) | |
Load an image file. | |
THREADED_INTERFACE4 (LoadSoundStream, const char *cwd, const char *fname, int mode3d, bool do_verbose=false) | |
New Sound System: Load a sound file and create a stream from it. | |
THREADED_INTERFACE4 (LoadSoundWrapper, const char *cwd, const char *name, const char *fname, bool do_verbose=false) | |
New Sound System: Load a sound file, create sound data and create a wrapper object for it. | |
THREADED_INTERFACE4 (LoadMeshObjectFactory, const char *cwd, const char *fname, csRef< iStreamSource > ssource=0, bool do_verbose=false) | |
Load a Mesh Object Factory from a file. | |
THREADED_INTERFACE4 (LoadMeshObject, const char *cwd, const char *fname, csRef< iStreamSource > ssource=0, bool do_verbose=false) | |
Load a mesh object from a file. | |
THREADED_INTERFACE4 (LoadShader, const char *cwd, const char *filename, bool registerShader=true, bool do_verbose=false) | |
Load a shader from a file. | |
THREADED_INTERFACE6 (LoadTexture, const char *cwd, const char *Filename, int Flags=CS_TEXTURE_3D, csRef< iTextureManager > tm=0, csRef< iImage > *image=0, bool do_verbose=false) | |
Load an image as with LoadImage() and create a texture handle from it. | |
THREADED_INTERFACE6 (LoadTexture, const char *cwd, csRef< iDataBuffer > buf, int Flags=CS_TEXTURE_3D, csRef< iTextureManager > texman=0, csRef< iImage > *image=0, bool do_verbose=false) | |
Load an image as with LoadImage() and create a texture handle from it. | |
THREADED_INTERFACE8 (LoadMapFile, const char *cwd, const char *filename, bool clearEngine=true, csRef< iCollection > collection=0, csRef< iStreamSource > ssource=0, csRef< iMissingLoaderData > missingdata=0, uint keepFlags=KEEP_ALL, bool do_verbose=false) | |
Load a map file. | |
THREADED_INTERFACE9 (LoadTexture, const char *cwd, const char *Name, csRef< iDataBuffer > buf, int Flags=CS_TEXTURE_3D, csRef< iTextureManager > texman=0, bool reg=true, bool create_material=true, bool free_image=true, bool do_verbose=false) | |
Load a texture as with LoadTexture() above and register it with the engine. | |
THREADED_INTERFACE11 (LoadTexture, const char *cwd, const char *Name, const char *FileName, int Flags=CS_TEXTURE_3D, csRef< iTextureManager > texman=0, bool reg=true, bool create_material=true, bool free_image=true, csRef< iCollection > Collection=0, uint keepFlags=KEEP_ALL, bool do_verbose=false) | |
Load a texture as with LoadTexture() above and register it with the engine. | |
THREADED_INTERFACE8 (LoadMap, const char *cwd, csRef< iDocumentNode > world_node, bool clearEngine=true, csRef< iCollection > collection=0, csRef< iStreamSource > ssource=0, csRef< iMissingLoaderData > missingdata=0, uint keepFlags=KEEP_ALL, bool do_verbose=false) | |
Load a map from the given 'world' node. | |
THREADED_INTERFACE7 (LoadLibraryFile, const char *cwd, const char *filename, csRef< iCollection > collection=0, csRef< iStreamSource > ssource=0, csRef< iMissingLoaderData > missingdata=0, uint keepFlags=KEEP_ALL, bool do_verbose=false) | |
Load library from a VFS file. | |
THREADED_INTERFACE7 (LoadLibrary, const char *cwd, csRef< iDocumentNode > lib_node, csRef< iCollection > collection=0, csRef< iStreamSource > ssource=0, csRef< iMissingLoaderData > missingdata=0, uint keepFlags=KEEP_ALL, bool do_verbose=false) | |
Load library from a 'library' node. | |
THREADED_INTERFACE7 (LoadFile, const char *cwd, const char *fname, csRef< iCollection > collection=0, csRef< iStreamSource > ssource=0, csRef< iMissingLoaderData > missingdata=0, uint keepFlags=KEEP_ALL, bool do_verbose=false) | |
Load a file. | |
THREADED_INTERFACE7 (LoadBuffer, const char *cwd, csRef< iDataBuffer > buffer, csRef< iCollection > collection=0, csRef< iStreamSource > ssource=0, csRef< iMissingLoaderData > missingdata=0, uint keepFlags=KEEP_ALL, bool do_verbose=false) | |
Load a file. | |
THREADED_INTERFACE8 (LoadNode, const char *cwd, csRef< iDocumentNode > node, csRef< iCollection > collection=0, csRef< iSector > sector=0, csRef< iStreamSource > ssource=0, csRef< iMissingLoaderData > missingdata=0, uint keepFlags=KEEP_ALL, bool do_verbose=false) | |
Load a node. |
virtual void iThreadedLoader::AddSectorToList | ( | iSector * | obj | ) | [pure virtual] |
Add object to the transfer list.
virtual csPtr<iCamposLoaderIterator> iThreadedLoader::GetLoaderCameraPositions | ( | ) | [pure virtual] |
Get the loader camera list.
virtual csPtr<iMaterialLoaderIterator> iThreadedLoader::GetLoaderMaterials | ( | ) | [pure virtual] |
Get the loader material list.
virtual csPtr<iMeshLoaderIterator> iThreadedLoader::GetLoaderMeshes | ( | ) | [pure virtual] |
Get the loader mesh sector list.
virtual csPtr<iMeshFactLoaderIterator> iThreadedLoader::GetLoaderMeshFactories | ( | ) | [pure virtual] |
Get the loader mesh factory list.
virtual csPtr<iSectorLoaderIterator> iThreadedLoader::GetLoaderSectors | ( | ) | [pure virtual] |
Get the loader sector list.
virtual csPtr<iSharedVarLoaderIterator> iThreadedLoader::GetLoaderSharedVariables | ( | ) | [pure virtual] |
Get the loader shared variable list.
virtual csPtr<iTextureLoaderIterator> iThreadedLoader::GetLoaderTextures | ( | ) | [pure virtual] |
Get the loader texture list.
iThreadedLoader::THREADED_INTERFACE11 | ( | LoadTexture | , |
const char * | cwd, | ||
const char * | Name, | ||
const char * | FileName, | ||
int | Flags = CS_TEXTURE_3D , |
||
csRef< iTextureManager > | texman = 0 , |
||
bool | reg = true , |
||
bool | create_material = true , |
||
bool | free_image = true , |
||
csRef< iCollection > | Collection = 0 , |
||
uint | keepFlags = KEEP_ALL , |
||
bool | do_verbose = false |
||
) |
Load a texture as with LoadTexture() above and register it with the engine.
Name | The name that the engine will use for the wrapper. |
FileName | VFS path to the image file to load. |
Flags | Accepts the flags described in ivideo/txtmgr.h. The texture manager determines the format, so choosing an alternate format doesn't make sense here. Instead you may choose an alternate texture manager. |
tm | Texture manager, used to determine the format the image is to be loaded in (defaults to CS_IMGFMT_TRUECOLOR if no texture manager is specified). |
reg | If true then the texture and material will be registered to the texture manager. Set 'register' to false if you plan on calling 'iEngine::Prepare()' later as that function will take care of registering too. |
create_material | If true then this function also creates a material for the texture. |
free_image | If true then after registration the loaded image will be removed immediatelly. This saves some memory. Set to false if you want to keep it. free_image is ignored if reg is false. |
collection | [optional] Collection to register the texture and material to. |
iThreadedLoader::THREADED_INTERFACE3 | ( | LoadSoundSysData | , |
const char * | cwd, | ||
const char * | fname, | ||
bool | do_verbose = false |
||
) |
New Sound System: Load a sound file and return an iSndSysData object.
iThreadedLoader::THREADED_INTERFACE4 | ( | LoadImage | , |
const char * | cwd, | ||
const char * | Filename, | ||
int | Format = CS_IMGFMT_INVALID , |
||
bool | do_verbose = false |
||
) |
Load an image file.
The image will be loaded in the format requested by the engine. If no engine exists, the format is taken from the video renderer. If no video renderer exists, this function fails. You may also request an alternate format to override the above sequence.
result | Result of the method call. |
Filename | VFS path to the image file to load. |
Format | The format of the image. |
iThreadedLoader::THREADED_INTERFACE4 | ( | LoadImage | , |
const char * | cwd, | ||
csRef< iDataBuffer > | buf, | ||
int | Format = CS_IMGFMT_INVALID , |
||
bool | do_verbose = false |
||
) |
Load an image file.
The image will be loaded in the format requested by the engine. If no engine exists, the format is taken from the video renderer. If no video renderer exists, this function fails. You may also request an alternate format to override the above sequence. This version reads the image from a data buffer.
iThreadedLoader::THREADED_INTERFACE4 | ( | LoadSoundStream | , |
const char * | cwd, | ||
const char * | fname, | ||
int | mode3d, | ||
bool | do_verbose = false |
||
) |
New Sound System: Load a sound file and create a stream from it.
fname | is the VFS filename. |
mode3d | is one of CS_SND3D_DISABLE, CS_SND3D_RELATIVE, or CS_SND3D_ABSOLUTE. |
iThreadedLoader::THREADED_INTERFACE4 | ( | LoadSoundWrapper | , |
const char * | cwd, | ||
const char * | name, | ||
const char * | fname, | ||
bool | do_verbose = false |
||
) |
New Sound System: Load a sound file, create sound data and create a wrapper object for it.
name | of the sound. |
fname | is the VFS filename. |
iThreadedLoader::THREADED_INTERFACE4 | ( | LoadMeshObjectFactory | , |
const char * | cwd, | ||
const char * | fname, | ||
csRef< iStreamSource > | ssource = 0 , |
||
bool | do_verbose = false |
||
) |
Load a Mesh Object Factory from a file.
fname | is the VFS name of the file. |
ssource | is an optional stream source for faster loading. |
iThreadedLoader::THREADED_INTERFACE4 | ( | LoadMeshObject | , |
const char * | cwd, | ||
const char * | fname, | ||
csRef< iStreamSource > | ssource = 0 , |
||
bool | do_verbose = false |
||
) |
Load a mesh object from a file.
The mesh object is not automatically added to any sector.
fname | is the VFS name of the file. |
ssource | is an optional stream source for faster loading. |
iThreadedLoader::THREADED_INTERFACE4 | ( | LoadShader | , |
const char * | cwd, | ||
const char * | filename, | ||
bool | registerShader = true , |
||
bool | do_verbose = false |
||
) |
Load a shader from a file.
iThreadedLoader::THREADED_INTERFACE6 | ( | LoadTexture | , |
const char * | cwd, | ||
const char * | Filename, | ||
int | Flags = CS_TEXTURE_3D , |
||
csRef< iTextureManager > | tm = 0 , |
||
csRef< iImage > * | image = 0 , |
||
bool | do_verbose = false |
||
) |
Load an image as with LoadImage() and create a texture handle from it.
result | Result of the method call. |
Filename | VFS path to the image file to load. |
Flags | Accepts the flags described in ivideo/txtmgr.h. The texture manager determines the format, so choosing an alternate format doesn't make sense here. Instead you may choose an alternate texture manager. |
tm | Texture manager, used to determine the format the image is to be loaded in (defaults to CS_IMGFMT_TRUECOLOR if no texture manager is specified). |
image | Optionally returns a reference to the loaded image. |
iThreadedLoader::THREADED_INTERFACE6 | ( | LoadTexture | , |
const char * | cwd, | ||
csRef< iDataBuffer > | buf, | ||
int | Flags = CS_TEXTURE_3D , |
||
csRef< iTextureManager > | texman = 0 , |
||
csRef< iImage > * | image = 0 , |
||
bool | do_verbose = false |
||
) |
Load an image as with LoadImage() and create a texture handle from it.
This version reads the image from a data buffer.
buf | Buffer containing the image file data. |
Flags | Accepts the flags described in ivideo/txtmgr.h. The texture manager determines the format, so choosing an alternate format doesn't make sense here. Instead you may choose an alternate texture manager. |
tm | Texture manager, used to determine the format the image is to be loaded in (defaults to CS_IMGFMT_TRUECOLOR if no texture manager is specified). |
image | Optionally returns a reference to the loaded image. |
iThreadedLoader::THREADED_INTERFACE7 | ( | LoadLibraryFile | , |
const char * | cwd, | ||
const char * | filename, | ||
csRef< iCollection > | collection = 0 , |
||
csRef< iStreamSource > | ssource = 0 , |
||
csRef< iMissingLoaderData > | missingdata = 0 , |
||
uint | keepFlags = KEEP_ALL , |
||
bool | do_verbose = false |
||
) |
Load library from a VFS file.
filename | is a VFS filename for the XML file. |
collection | is 0 by default which means that all loaded objects are either added to the default collection or not added to any collection, depending on the value of the keepFlags argument. |
searchCollectionOnly | is true by default which means that it will only find materials/factories/... from current collection if that is given. |
checkDupes | if true then materials, textures, and mesh factories will only be loaded if they don't already exist in the entire engine (ignoring collections). By default this is false because it is very legal for different world files to have different objects with the same name. Only use checkDupes == true if you know that your objects have unique names accross all world files. |
ssource | is an optional stream source for faster loading. |
missingdata | is an optional callback in case data is missing. The application can then provide that missing data in some other way. |
keepFlags | Use these to define whether or not you wish to guarantee that all loaded resources are kept (default to KEEP_ALL). KEEP_USED is useful when you are loading from a shared library containing more resources than you actually need (a world file loading from a shared library of textures for example). |
iThreadedLoader::THREADED_INTERFACE7 | ( | LoadLibrary | , |
const char * | cwd, | ||
csRef< iDocumentNode > | lib_node, | ||
csRef< iCollection > | collection = 0 , |
||
csRef< iStreamSource > | ssource = 0 , |
||
csRef< iMissingLoaderData > | missingdata = 0 , |
||
uint | keepFlags = KEEP_ALL , |
||
bool | do_verbose = false |
||
) |
Load library from a 'library' node.
lib_node | is the 'library' node from an XML document. |
collection | is 0 by default which means that all loaded objects are either added to the default collection or not added to any collection, depending on the value of the keepFlags argument. |
searchCollectionOnly | is true by default which means that it will only find materials/factories/... from current collection if that is given. |
checkDupes | if true then materials, textures, and mesh factories will only be loaded if they don't already exist in the entire engine (ignoring collections). By default this is false because it is very legal for different world files to have different objects with the same name. Only use checkDupes == true if you know that your objects have unique names accross all world files. |
ssource | is an optional stream source for faster loading. |
missingdata | is an optional callback in case data is missing. The application can then provide that missing data in some other way. |
keepFlags | Use these to define whether or not you wish to guarantee that all loaded resources are kept (default to KEEP_ALL). KEEP_USED is useful when you are loading from a shared library containing more resources than you actually need (a world file loading from a shared library of textures for example). |
iThreadedLoader::THREADED_INTERFACE7 | ( | LoadFile | , |
const char * | cwd, | ||
const char * | fname, | ||
csRef< iCollection > | collection = 0 , |
||
csRef< iStreamSource > | ssource = 0 , |
||
csRef< iMissingLoaderData > | missingdata = 0 , |
||
uint | keepFlags = KEEP_ALL , |
||
bool | do_verbose = false |
||
) |
Load a file.
This is a smart function that will try to recognize what kind of file it is. It recognizes the following types of files:
Returns csLoadResult.
Note! In case a world file is loaded this function will NOT clear the engine!
Note! In case a mesh factory or mesh object is loaded this function will not actually do anything if checkDupes is true and the mesh or factory is already in memory (with that name). This function will still return true in that case and set 'result' to the correct object.
fname | is a VFS filename for the XML file. |
collection | is 0 by default which means that all loaded objects are either added to the default collection or not added to any collection, depending on the value of the keepFlags argument. |
searchCollectionOnly | is true by default which means that it will only find materials/factories/... from current collection if that is given. |
checkDupes | if true then materials, textures, and mesh factories will only be loaded if they don't already exist in the entire engine (ignoring collections). By default this is false because it is very legal for different world files to have different objects with the same name. Only use checkDupes == true if you know that your objects have unique names accross all world files. |
ssource | is an optional stream source for faster loading. |
missingdata | is an optional callback in case data is missing. The application can then provide that missing data in some other way. |
keepFlags | Use these to define whether or not you wish to guarantee that all loaded resources are kept (default to KEEP_ALL). KEEP_USED is useful when you are loading from a shared library containing more resources than you actually need (a world file loading from a shared library of textures for example). |
iThreadedLoader::THREADED_INTERFACE7 | ( | LoadBuffer | , |
const char * | cwd, | ||
csRef< iDataBuffer > | buffer, | ||
csRef< iCollection > | collection = 0 , |
||
csRef< iStreamSource > | ssource = 0 , |
||
csRef< iMissingLoaderData > | missingdata = 0 , |
||
uint | keepFlags = KEEP_ALL , |
||
bool | do_verbose = false |
||
) |
Load a file.
This is a smart function that will try to recognize what kind of file it is. It recognizes the following types of files:
Returns csLoadResult.
Note! In case a world file is loaded this function will NOT clear the engine!
Note! In case a mesh factory or mesh object is loaded this function will not actually do anything if checkDupes is true and the mesh or factory is already in memory (with that name). This function will still return true in that case and set 'result' to the correct object.
buffer | is a buffer for the model contents. |
collection | is 0 by default which means that all loaded objects are either added to the default collection or not added to any collection, depending on the value of the keepFlags argument. |
searchCollectionOnly | is true by default which means that it will only find materials/factories/... from current collection if that is given. |
checkDupes | if true then materials, textures, and mesh factories will only be loaded if they don't already exist in the entire engine (ignoring collections). By default this is false because it is very legal for different world files to have different objects with the same name. Only use checkDupes == true if you know that your objects have unique names accross all world files. |
ssource | is an optional stream source for faster loading. |
missingdata | is an optional callback in case data is missing. The application can then provide that missing data in some other way. |
keepFlags | Use these to define whether or not you wish to guarantee that all loaded resources are kept (default to KEEP_ALL). KEEP_USED is useful when you are loading from a shared library containing more resources than you actually need (a world file loading from a shared library of textures for example). |
iThreadedLoader::THREADED_INTERFACE8 | ( | LoadMapFile | , |
const char * | cwd, | ||
const char * | filename, | ||
bool | clearEngine = true , |
||
csRef< iCollection > | collection = 0 , |
||
csRef< iStreamSource > | ssource = 0 , |
||
csRef< iMissingLoaderData > | missingdata = 0 , |
||
uint | keepFlags = KEEP_ALL , |
||
bool | do_verbose = false |
||
) |
Load a map file.
If 'clearEngine' is true then the current contents of the engine will be deleted before loading. If 'region' is not 0 then portals will only connect to the sectors in that region, things will only use thing templates defined in that region and meshes will only use mesh factories defined in that region. If the region is not 0 and curRegOnly is true then objects (materials, factories, ...) will only be found in the given region.
filename | is a VFS filename for the XML file. |
clearEngine | is true by default which means that the previous contents of the engine is cleared (all objects/sectors/... are removed). |
collection | is 0 by default which means that all loaded objects are added to the default collection. If you give a collection here then all loaded objects will be added to that collection (subject to keepFlags). |
searchCollectionOnly | is true by default which means that it will only find materials/factories/... from current collection if that is given. |
checkDupes | if true then materials, textures, and mesh factories will only be loaded if they don't already exist in the entire engine (ignoring collections). By default this is false because it is very legal for different world files to have different objects with the same name. Only use checkDupes == true if you know that your objects have unique names accross all world files. |
ssource | is an optional stream source for faster loading. |
missingdata | is an optional callback in case data is missing. The application can then provide that missing data in some other way. |
Set | useProxyTextures to true if you're loading materials and textures from a library shared with other maps. |
keepFlags | Use these to define whether or not you wish to guarantee that all loaded resources are kept (default to KEEP_ALL). KEEP_USED is useful when you are loading from a shared library containing more resources than you actually need (a world file loading from a shared library of textures for example). This argument is only used in conjunction with Collections, and overrides the value of useProxyTextures in that case. |
iThreadedLoader::THREADED_INTERFACE8 | ( | LoadMap | , |
const char * | cwd, | ||
csRef< iDocumentNode > | world_node, | ||
bool | clearEngine = true , |
||
csRef< iCollection > | collection = 0 , |
||
csRef< iStreamSource > | ssource = 0 , |
||
csRef< iMissingLoaderData > | missingdata = 0 , |
||
uint | keepFlags = KEEP_ALL , |
||
bool | do_verbose = false |
||
) |
Load a map from the given 'world' node.
If 'clearEngine' is true then the current contents of the engine will be deleted before loading. If 'region' is not 0 then portals will only connect to the sectors in that region, things will only use thing templates defined in that region and meshes will only use mesh factories defined in that region. If the region is not 0 and curRegOnly is true then objects (materials, factories, ...) will only be found in the given region.
world_node | is the 'world' node from an XML document. |
clearEngine | is true by default which means that the previous contents of the engine is cleared (all objects/sectors/... are removed). |
collection | is 0 by default which means that all loaded objects are not added to any collection. If you give a collection here then all loaded objects will be added to that collection. |
searchCollectionOnly | is true by default which means that it will only find materials/factories/... from current collection if that is given. |
checkDupes | if true then materials, textures, and mesh factories will only be loaded if they don't already exist in the entire engine (ignoring regions). By default this is false because it is very legal for different world files to have different objects with the same name. Only use checkDupes == true if you know that your objects have unique names accross all world files. |
ssource | is an optional stream source for faster loading. |
missingdata | is an optional callback in case data is missing. The application can then provide that missing data in some other way. |
Set | useProxyTextures to true if you're loading materials and textures from a library shared with other maps. |
keepFlags | Use these to define whether or not you wish to guarantee that all loaded resources are kept (default to KEEP_ALL). KEEP_USED is useful when you are loading from a shared library containing more resources than you actually need (a world file loading from a shared library of textures for example). This argument is only used in conjunction with Collections, and overrides the value of useProxyTextures in that case. |
iThreadedLoader::THREADED_INTERFACE8 | ( | LoadNode | , |
const char * | cwd, | ||
csRef< iDocumentNode > | node, | ||
csRef< iCollection > | collection = 0 , |
||
csRef< iSector > | sector = 0 , |
||
csRef< iStreamSource > | ssource = 0 , |
||
csRef< iMissingLoaderData > | missingdata = 0 , |
||
uint | keepFlags = KEEP_ALL , |
||
bool | do_verbose = false |
||
) |
Load a node.
This is a smart function that will try to recognize what kind of node it is. It recognizes the following types of nodes:
Note! In case a world node is loaded this function will NOT clear the engine!
Note! In case a mesh factory or mesh object is loaded this function will not actually do anything if checkDupes is true and the mesh or factory is already in memory (with that name). This function will still return true in that case and set 'result' to the correct object.
node | is the node from which to read. |
collection | is 0 by default which means that all loaded objects are either added to the default collection or not added to any collection, depending on the value of the keepFlags argument. |
searchCollectionOnly | is true by default which means that it will only find materials/factories/... from current collection if that is given. |
checkDupes | if true then materials, textures, and mesh factories will only be loaded if they don't already exist in the entire engine (ignoring collections). By default this is false because it is very legal for different world files to have different objects with the same name. Only use checkDupes == true if you know that your objects have unique names accross all world files. |
ssource | is an optional stream source for faster loading. |
missingdata | is an optional callback in case data is missing. The application can then provide that missing data in some other way. |
keepFlags | Use these to define whether or not you wish to guarantee that all loaded resources are kept (default to KEEP_ALL). KEEP_USED is useful when you are loading from a shared library containing more resources than you actually need (a world file loading from a shared library of textures for example). |
iThreadedLoader::THREADED_INTERFACE9 | ( | LoadTexture | , |
const char * | cwd, | ||
const char * | Name, | ||
csRef< iDataBuffer > | buf, | ||
int | Flags = CS_TEXTURE_3D , |
||
csRef< iTextureManager > | texman = 0 , |
||
bool | reg = true , |
||
bool | create_material = true , |
||
bool | free_image = true , |
||
bool | do_verbose = false |
||
) |
Load a texture as with LoadTexture() above and register it with the engine.
This version reads the image from a data buffer.
Name | The name that the engine will use for the wrapper. |
buf | Buffer containing the image file data. |
Flags | Accepts the flags described in ivideo/txtmgr.h. The texture manager determines the format, so choosing an alternate format doesn't make sense here. Instead you may choose an alternate texture manager. |
tm | Texture manager, used to determine the format the image is to be loaded in (defaults to CS_IMGFMT_TRUECOLOR if no texture manager is specified). |
reg | if true then the texture and material will be registered to the texture manager. Set 'register' to false if you plan on calling 'iEngine::Prepare()' later as that function will take care of registering too. |
create_material | if true then this function also creates a material for the texture. |
free_image | if true then after registration the loaded image will be removed immediatelly. This saves some memory. Set to false if you want to keep it. free_image is ignored if reg is false. |