本文整理汇总了C++中Texture::GetSourceFileFormat方法的典型用法代码示例。如果您正苦于以下问题:C++ Texture::GetSourceFileFormat方法的具体用法?C++ Texture::GetSourceFileFormat怎么用?C++ Texture::GetSourceFileFormat使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Texture
的用法示例。
在下文中一共展示了Texture::GetSourceFileFormat方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1:
DAVA::uint32 TextureHelper::EnumerateSceneTexturesFileSize(DAVA::Scene* scene, const String& scenePath)
{
Map<String, Texture *> textureMap;
EnumerateTextures(scene, textureMap);
String projectPath = scenePath;
uint32 sceneTextureFilesSize = 0;
for(Map<String, Texture *>::const_iterator it = textureMap.begin(); it != textureMap.end(); ++it)
{
Texture *t = it->second;
if(String::npos == t->GetPathname().find(projectPath))
{ // skip all textures that are not related the scene
continue;
}
if(String::npos != t->GetPathname().find(projectPath))
{ //We need real info about textures size. In Editor on desktop pvr textures are decompressed to RGBA8888, so they have not real size.
String imageFileName = TextureDescriptor::GetPathnameForFormat(t->GetPathname(), t->GetSourceFileFormat());
File * textureFile = File::Create(imageFileName, File::OPEN | File::READ);
sceneTextureFilesSize += textureFile->GetSize();
SafeRelease(textureFile);
}
}
return sceneTextureFilesSize;
}
示例2: EnumerateSceneTextures
uint32 TextureHelper::EnumerateSceneTextures(DAVA::Scene* scene, const String& scenePath)
{
Map<String, Texture *> textureMap;
EnumerateTextures(scene, textureMap);
String projectPath = scenePath;
uint32 sceneTextureMemory = 0;
for(Map<String, Texture *>::const_iterator it = textureMap.begin(); it != textureMap.end(); ++it)
{
Texture *t = it->second;
if(String::npos == t->GetPathname().find(projectPath))
{ // skip all textures that are not related the scene
continue;
}
if(String::npos != t->GetPathname().find(projectPath))
{ //We need real info about textures size. In Editor on desktop pvr textures are decompressed to RGBA8888, so they have not real size.
String imageFileName = TextureDescriptor::GetPathnameForFormat(t->GetPathname(), t->GetSourceFileFormat());
switch (t->GetSourceFileFormat())
{
case DAVA::PVR_FILE:
{
sceneTextureMemory += LibPVRHelper::GetDataLength(imageFileName);
break;
}
case DAVA::DXT_FILE:
{
sceneTextureMemory += (int32)LibDxtHelper::GetDataSize(imageFileName);
break;
}
default:
sceneTextureMemory += t->GetDataSize();
break;
}
}
}
return sceneTextureMemory;
}