derkork / godot-resource-groups Goto Github PK
View Code? Open in Web Editor NEWAn add-on for the Godot engine that simplifies handling of resources
License: MIT License
An add-on for the Godot engine that simplifies handling of resources
License: MIT License
Hi,
first of all thanks for the great plugin. It really helped solve my post-export issues.
I also wanted to use it as a temporary solution to link to a few plaintext files that are in my data structure.
Unfortunately, I have encountered a bug when I try to include all .txt files from a folder.
Most of the time the plugin doesn't recognize any of the files.
I tried changing the file structure, filename and file location, but nothing seems to yield any different results.
Once I managed to get the plugin to recognize only 2 of the 5 txt files, but I haven't been able to reproduce this issue.
As you can see, with JSON, everything works as normal, so I am confident that I am using the plugin correctly.
Thanks again for the nice piece of software, hopefully this feedback proves useful.
Cheers
-Vaisko
My project fails to start intermittently with "Parser Error: Could not find type "ResourceGroupBackgroundLoader" in the current scope." called from resource_group.gd:69.
I can't find any other debug information but I'm new to Godot so maybe I just don't know where to look.
I find it strange that this error occurs because I am using the C# API and as far as I know I'm not using the background loader. The references from script files I have to the addon are:
using GodotResourceGroups;
private ResourceGroup _allCards;
_allCards = ResourceGroup.Of("res://Data/AllCards.tres");
If the issue happens it will always start successfully when hitting play again. My best guess is it's a timing issue related to Godot reloading files after they've been edited in another text editor. I use VSCode to edit C# script files and the issue will occur quite consistently when I make script changes in VSCode, alt-tab to Godot and then hit play. It doesn't seem to happen if I make script changes in the Godot editor and then hit play
Are there any plans to implement asynchronous resource loading as a feature? I was looking through the code of the plugin and noticed that it uses Godot's simplified load()
function to load resources from disk. This is fine if you're loading only small amounts of assets, but this will be a huge issue if you have to load a ton of assets, as load()
is synchronous and will cause the game to become unresponsive if you have to load a ton of stuff. (https://docs.godotengine.org/en/stable/tutorials/io/background_loading.html#background-loading)
I think it would be nice to have the option to asynchronously load assets from your resource groups, and maybe allow the ability to register a Callable
that can listen for when loading completes or fails for each loaded asset. It would definitely greatly improve the performance of games that have to load a ton on assets. Godot has the ResourceLoader
static class that can aid in achieving this. (https://docs.godotengine.org/en/stable/classes/class_resourceloader.html#class-resourceloader-method-load). The two methods this class has that can do asynchronous loading is ResourceLoader.load_threaded_request()
and ResourceLoader.load_threaded_get()
So yeah, just a suggestion. This feature would really help my game because my game will have a ton of items that need to be loaded. This plugin is really nice because it allows me to group together all my item into groups and makes loading them super easy. The only issue so far is the lack of support for loading assets asynchronously.
I get this weird error when saving my project with a resource group:
And although it does work, the error is quite annoying.
I have tracked this down to this line (26) in resource_group_scanner.gd:
Apparently Godot is trying having issues loading some file in my project as a resource. This is most probably a problem with either my project or Godot, but if it is the latter I wanted to let you know, as other people could run into this as well.
I will try to find a fix for this and debug further.
Currently the plugin only scans for ResourceGroup resource files. Would it be possible to also scan for ResourceGroup's that are attached to exported var's in the editor via the "New ResourceGroup" option? This would allow me to avoid creating files for resource groups that will only be used in a single node.
Would be amazing if this add-on could export/import the data in different formats, like XML, JSON etc
My use case is that I have a dedicated server for my Godot game that needs to share data between the client.
Another use case is for creating a versioning control over the data, which would be very useful.
Hey there, would it be possible to add an option somewhere to only save/update resource groups manually? I have a habit of ctrl+s
saving my project all the time, but every time I save (even with no resource changes) there is a noticeable time delay & cluttering of the console output when the plugin is enabled. I imagine this could be fixed by changing when the saving occurs, however I know not everyone would want this enabled, so I think this would make sense as an opt-in feature!
Ideally, the best option would be to keep the auto-save enabled and only run the more expensive logic right when it is needed, like when the directory structure changes, but that sounds like it could be a pain to implement! So maybe a simpler option like this would be a good enough compromise.
If this is added, it would be great to see an option to update individual groups (e.g. with a button in the Inspector of a selected group), and an option to update all groups, possibly using a button within a custom Resource Groups editor tab/window.
Thanks for the great work on this plugin!
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.