void Texture::save() { char ext[5]; ext[0] = 0; PathUtils::getExtension(ext, 5, getPath().c_str()); if (strcmp(ext, "raw") == 0 && m_BPP == 2) { FS::FileSystem& fs = m_resource_manager.getFileSystem(); FS::IFile* file = fs.open(fs.getDefaultDevice(), getPath().c_str(), FS::Mode::OPEN_OR_CREATE | FS::Mode::WRITE); file->write(&m_data[0], m_data.size() * sizeof(m_data[0])); fs.close(*file); } else if (strcmp(ext, "tga") == 0 && m_BPP == 4) { saveTGA(); } else { g_log_error.log("renderer") << "Texture " << getPath() << " can not be saved - unsupported format"; } }