@@ -109,6 +109,7 @@ ImageMemLoadFunc Image::_tga_mem_loader_func = nullptr;
109
109
ImageMemLoadFunc Image::_bmp_mem_loader_func = nullptr ;
110
110
ScalableImageMemLoadFunc Image::_svg_scalable_mem_loader_func = nullptr ;
111
111
ImageMemLoadFunc Image::_ktx_mem_loader_func = nullptr ;
112
+ ImageMemLoadFunc Image::_gif_mem_loader_func = nullptr ;
112
113
113
114
// External VRAM compression function pointers.
114
115
@@ -3649,6 +3650,7 @@ void Image::_bind_methods() {
3649
3650
ClassDB::bind_method (D_METHOD (" load_tga_from_buffer" , " buffer" ), &Image::load_tga_from_buffer);
3650
3651
ClassDB::bind_method (D_METHOD (" load_bmp_from_buffer" , " buffer" ), &Image::load_bmp_from_buffer);
3651
3652
ClassDB::bind_method (D_METHOD (" load_ktx_from_buffer" , " buffer" ), &Image::load_ktx_from_buffer);
3653
+ ClassDB::bind_method (D_METHOD (" load_gif_from_buffer" , " buffer" ), &Image::load_gif_from_buffer);
3652
3654
3653
3655
ClassDB::bind_method (D_METHOD (" load_svg_from_buffer" , " buffer" , " scale" ), &Image::load_svg_from_buffer, DEFVAL (1.0 ));
3654
3656
ClassDB::bind_method (D_METHOD (" load_svg_from_string" , " svg_str" , " scale" ), &Image::load_svg_from_string, DEFVAL (1.0 ));
@@ -4091,6 +4093,14 @@ Error Image::load_ktx_from_buffer(const Vector<uint8_t> &p_array) {
4091
4093
return _load_from_buffer (p_array, _ktx_mem_loader_func);
4092
4094
}
4093
4095
4096
+ Error Image::load_gif_from_buffer (const Vector<uint8_t > &p_array) {
4097
+ ERR_FAIL_NULL_V_MSG (
4098
+ _gif_mem_loader_func,
4099
+ ERR_UNAVAILABLE,
4100
+ " The GIF module isn't enabled. Recompile the Redot editor or export template binary with the `module_gif_enabled=yes` SCons option." );
4101
+ return _load_from_buffer (p_array, _gif_mem_loader_func);
4102
+ }
4103
+
4094
4104
void Image::convert_rg_to_ra_rgba8 () {
4095
4105
ERR_FAIL_COND (format != FORMAT_RGBA8);
4096
4106
ERR_FAIL_COND (data.is_empty ());
0 commit comments