This project is a class for downloading files (through http) and supporting a progress bar. There is sadly no built-in solution so I made this.
If you ever need to download files with Godot you will find out it requires some work to make it nice and display a progress bar to your user.
Using this home made class will make it faster for you to create a downloader in Godot.
- Download the latest release
- Copy the addons folder into your Godot project's folder
- Enable the plugin in
Projet
,Project settings
,Plugins
.
- Add a new node to your scene
- Search for FileDownloader (It is a child of HTTPRequest)
- Add a FileDownloader node in your scene
- Clic on node and edit its script variables directly in the editor.
File Urls
andSave_Path
- Now simply call
$FileDownloader.start_download()
somewhere in your script.
You alternatively can replace the step 4 and 5 by code
var url : PoolStringArray = ["url_to_file1","url_file_2"]
var path : String = "user://downloads"
var blind_mode : bool = false
$FileDownloader.start_download(url, path, blind_mode)
The release ships a demo project. Feel free to run it in Godot and explore it.
If the file you are trying to download is above 2.1GB the addon will just say it is 2.1GB and fails downloading it past 2.1GB.