Exemple #1
0
std::shared_ptr<Texture2D> Texture2D::create(const GraphicContextPtr &context, const IODevicePtr &file, const std::string &image_type, const ImageImportDescription &import_desc)
{
    PixelBufferPtr pb = ImageFile::load(file, image_type);
    pb = import_desc.process(pb);

    auto texture = create(context, pb->width(), pb->height(), import_desc.is_srgb() ? tf_srgb8_alpha8 : tf_rgba8);
    texture->set_subimage(context, Point(0, 0), pb, Rect(pb->size()), 0);
    return texture;
}
Exemple #2
0
Texture2D::Texture2D( GraphicContext &context, const std::string &filename, const FileSystem &fs, const ImageImportDescription &import_desc)
{
	PixelBuffer pb = ImageProviderFactory::load(filename, fs, std::string());
	pb = import_desc.process(pb);

	*this = Texture2D(context, pb.get_width(), pb.get_height(), import_desc.is_srgb() ? tf_srgb8_alpha8 : tf_rgba8);

	set_subimage(context, Point(0, 0), pb, Rect(pb.get_size()), 0);
	impl->provider->set_wrap_mode(impl->wrap_mode_s, impl->wrap_mode_t);
}
	void CursorDescription::add_frame(IODevice &file, const std::string &image_type, const ImageImportDescription &import_desc)
	{
		PixelBuffer image = ImageProviderFactory::load(file, image_type);
		image = import_desc.process(image);
		add_frame(image);
	}
	void CursorDescription::add_frame(const std::string &filename, FileSystem &fs, const ImageImportDescription &import_desc)
	{
		PixelBuffer image = ImageProviderFactory::load(filename, fs, "");
		image = import_desc.process(image);
		add_frame(image);
	}