The only difference between local and http assets is that mesh, skeleton and texture assets will be loaded asynchronously, meaning we pass the file path to our asset cache for the file to Ogre and let its background worker (separate thread) load the asset and inform us once its done.
I think the threaded way might be more prone to crash when you are close to running out of memory. You can disable this threaded loading completely with startup parameter --no_async_asset_load as you can see here https://github.com/realXtend/naali/blob/tundra2/src/Core/OgreRenderingModule/TextureAsset.cpp#L73 local:// refs are never loaded with the thread as their disk source can be from anywhere. And we would need to add every local storage path and recursively all of its sub folders into ogre as a asset location. At the time of implementing this I saw this not to be important and it would make messy code. We could inspect if ogre knows to search sub dirs in locations, meaning that we would only need to pass the root for all local storages and then use threaded loading with the disk source filename. It would be nice to get the loading path exactly the same for all storage assets, so we could detect bugs like you have here (local not crashing, same web assets crashing). Anyway, profiler is your friend! View -> Profiler or 'prof' in console. This thing will tell you everything you need and more. Ogre tab shows totals of used memory. Textures can sort you the biggest memory spenders so you know what textures you should optimize. Prefer making your textures .dds DXT1 when you dont need alpha and DXT3 if you need alpha. There are plugins to photoshop and others to convert other formats to dds. Microsoft DirextX SDK gives you texconv.exe command line tool and Ludocraft has written this https://github.com/realXtend/naali/tree/tundra2/tools/TextureTool it is located in tundra source repo /tools/TextureTool just go there and build it. Seems like once its done you can use this https://github.com/realXtend/naali/blob/tundra2/tools/TextureTool/ConvertAll.cmd read instructions there. Best regards, Jonne Nauha Adminotech developer On Sat, Mar 31, 2012 at 6:17 PM, Vik <[email protected]> wrote: > Hi, > When i saw this message, I just lowered resolution of some textures > (some *.png was as 2000x1000)... > But if this on same machine and same video-card, only from different > repository, It is strange... > Vik. > > On Mar 31, 3:19 am, Vaibhav Vaidya <[email protected]> wrote: > > Hii all, > > > > I have created a scene using a few 3D models. Earlier I had a local > > repository and client was loading all the models with textures but now I > > have setup a web server and hosted all the assets to the server. Now, > when > > I launch the client, it loads few assets and then I see the following > error > > multiple times on the console: > > > > Error: OGRE EXCEPTION(3:RenderingAPIException): Error creating texture: > Ran > > out of memory in D3D9Texture::_createNormTex at .\src\OgreD3D9Texture.cpp > > (line 1109) > > > > How can this be rectified? > > > > ~Vaibhav > > -- > http://groups.google.com/group/realxtend > http://www.realxtend.org > -- http://groups.google.com/group/realxtend http://www.realxtend.org
