Open A-Ivan opened 2 years ago
Thanks! I agree, this has been on my to-do list for a while. I will see if I get time soon.
Great. I think this would be helpful to have, it will make the installation and update process a bit easier.
So in researching and splitting our project up into packages, I ran into some issues with UXF not being ready to be part of a package.
Main issue is not having asmdef files to determine which namespace can access which other namespaces. UXF uses a few external libraries / tools with different namespaces. Also all scripts, runtime and editor, are in the same folder tree.
I've rearranged the folder structure in order to make our package (which includes UXF) usable as GIT URL reference in Unity's package manager. All Editor and Runtime scripts needed to be separated.
In short, this is the basic package layout (Unity's guidelines): Runtime/ Editor/ Tests/ Samples/
Which I now rearranged for UXF files with according asmdef files as:
Editor/BasteRainGames.Editor/BasteRainGames.editor.asmdef -> referencing BasteRainGames.asmdef
Editor/SubjectNerd.editor/SubjectNerd.editor.asmdef -> referencing SubjectNerd.asmdef
Editor/UXF.editor/UXF.editor.asmdef -> referencing UXF.asmdef, BasteRainGames.editor.asmdef, SubjectNerd.editor.asmdef
Runtime/UXF/Scripts/Etc/BasteRainGames/BasteRainGames.asmdef
Runtime/UXF/Scripts/Etc/SubjectNerd.ReorderableInspector/SubjectNerd.asmdef
Runtime/UXF/uxf.asmdef -> referencing BasteRainGames.editor.asmdef, SubjectNerd.editor.asmdef, BasteRainGames.asmdef, SubjectNerd.asmdef
This seems to work up till now. I've deleted the Tests
folder, just for convenience.
So takes a bit of fiddling but definitely doable!
@thefirstfloor thank you! useful info. Still haven't had time for this yet, but hopefully will get there eventually.
The restructure is not entirely necessary, see the above PR (#137). Though it creates copious amounts of meta files for non-essential files/folders. I have no idea how to work around that.
Hi Jack.
First of all, this is a great framework.
It would be great if UXF would be accessible via Unity's package manager, this will make it easier to add it to a project and to make sure it is at the latest version without having to download and manage package versions via GitHub.
For instance, see bmlTUX's implementation: https://biomotionlab.github.io/TUX/docs/Installation#unity-20201-and-later-recommended
Instructions on how to create a custom Unity package and have it accessible via the package manager: https://blog.devgenius.io/creating-custom-packages-for-use-in-unity-7dfbaa49e4b4