-
Notifications
You must be signed in to change notification settings - Fork 39
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
TileSetDefinition PreProcessor & added missing PreProcess invocations #55
base: master
Are you sure you want to change the base?
Conversation
I haven't looked into the commit yet, but reading this, I'm concerned that this might create some additional performance overhead 😬
I might look into making a new field to LDtkPreprocessor so it has an asset import context just like the postprocessor; that way we can avoid an additional parameter |
I have a question: Could we have this merge request target a brand-new branch in your fork so I can test it out (and potentially make some minor tweaks) before merging? I'm new to pull requests, I'm not 100% sure how to test something that is targeting the master branch without actually merging it in. |
Hi, thanks so much for looking into this! I don't know how often the Project/Tileset Def Jsons are parsed, but I don't think this one reflection call will take a lot of time. Doesn't hurt to check though of course! I also never worked with pullrequests from an external fork into the main repository. |
Cool, I'll give these a try when I get around to it, thanks for helping 👍 |
## [6.4.5](Cammin/LDtkToUnity@6.4.4...6.4.5) (2024-09-23) ### Performance Improvements * Fixed a time consuming issue for users with large projects where all separate levels would unnessesarily reimport upon any project file change (like changing a definition or merely moving a level). ([9460aa7](Cammin@9460aa7))
Hi!
Based on our conversation in discord, I spent some time adding a TilesetDefinition PreProcessor and integrating it into my project, to finally replace my custom PreProcessor that I needed to patch in after every update.
While integrating I noticed that the PreProcessors for Level & Project were not always invoked after reading the JSON. This resulted in my adjustments not being executed everywhere (e.g. in the JsonEditorCache). I think the easiest and safest bet is to just always execute it directly after a Level-, Project- or TilesetDefinition-Json is parsed.
I also needed to add the AssetPath of the parsed Json, because I need it :|
Let me know what you think :)