#include"VKTextureLoader.h" #include #include VK_NAMESPACE_BEGIN template<> void VkTextureLoader::OnExtent(VkExtent3D &extent) { extent.width =file_header.width; extent.height =file_header.height; extent.depth =1; } template<> TextureCube *VkTextureLoader::OnCreateTexture(TextureCreateInfo *tci) { return tex_manager->CreateTextureCube(tci); } TextureCube *CreateTextureCubeFromFile(TextureManager *tm,const OSString &filename,bool auto_mipmaps) { if(!tm||filename.IsEmpty()) return(nullptr); VkTextureLoader loader(tm,auto_mipmaps); if(!loader.Load(filename)) return(nullptr); return loader.CreateTexture(loader.GetFileHeader(),loader.GetTextureFormat(),loader.GetZeroMipmapBytes()); } VK_NAMESPACE_END