video::ITexture *MenuTextureSource::getTexture(const std::string &name, u32 *id) { if (id) *id = 0; if (name.empty()) return NULL; m_to_delete.insert(name); #ifdef __ANDROID__ video::ITexture *retval = m_driver->findTexture(name.c_str()); if (retval) return retval; video::IImage *image = m_driver->createImageFromFile(name.c_str()); if (!image) return NULL; image = Align2Npot2(image, m_driver); retval = m_driver->addTexture(name.c_str(), image); image->drop(); return retval; #else return m_driver->getTexture(name.c_str()); #endif }
video::ITexture* MenuTextureSource::getTexture(const std::string &name, u32 *id) { if(id) *id = 0; if(name.empty()) return NULL; m_to_delete.insert(name); #ifdef __ANDROID__ porting::irr_device_wait_egl(); video::IImage *image = m_driver->createImageFromFile(name.c_str()); if (image) { image = Align2Npot2(image, m_driver); video::ITexture* retval = m_driver->addTexture(name.c_str(), image); image->drop(); return retval; } #endif return m_driver->getTexture(name.c_str()); }