Beispiel #1
0
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
}
Beispiel #2
0
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());
}