I had some plans to create POC regarding the asset management in Urho. Think of it as something similar to Unity’s Asset Store. Don’t let the name of it scare you, bear with me. I’m not talking about the C++ components, but rather assets themselves (models, textures, shaders, scripts).
We could create master repository which would contain JSON with a list of all community supported plugins. It would contain name, author, GIT repository url and short description. If you would like to publish your plugin, you would create a PR with additional JSON entry for your plugin.
Each plugin would have it’s own repository which would contain specific JSON file which would explain what files are needed for this plugin. We would use Github API to retrieve all the information about the plugin - main JSON file, released versions etc.
In the editor there would be “Plugin Manager” (or whatever name we would think of) window that users could open which would download and parse main plugin repository JSON files and display information about them for the end user. User could decide what plugin he wants’s to install and also could choose which version of it he would like to install. After pressing install editor would simply download files from plugin’s GIT repository which were mentioned in the plugins description file. Each downloaded plugin would be stored in seperate folder, but under the main Urho’s “Data” folder to avoid replacing files with the same name.
This requires me to finish this PR tho: https://github.com/urho3d/Urho3D/pull/2415
Github works only over HTTPS and engine currently doesn’t support it.
Development there is done, just need to fix CI environments which is kinda tricky.
Let me know what are your thougts about this.