The package for Unity3d after the addition of which makes it possible to automatically resolve and enable the "Unity package manager" system dependencies on projects located on Github.
Unity package manager allow include packages from git repositories together with default upm repository.
It looks like this:
./Packages/manifest.json
{
"dependencies": {
"bindingrx": "https://github.com/k0dep/bindingrx.git#2.1.1",
"com.unity.package-manager-ui": "2.1.2",
"com.unity.some-default-packages-from-upm": "1.0.0"
},
}
This feature is described in the UPM dedicated UPM forum.
But if the BuindingRx
package will have dependencies on the packages not added to manifest.json
inside it, this will result in Unity not resolving this dependency.
This problem can be solved with the help of scoped registries. This feature is described in this thread.
But this method requires certain package naming (the package must have a certain prefix, for example com.unity.*
) And deploy its own solution for storing and distributing npm packages, for example Verdaccio, which is not a convenient solution for small and/or open source projects.
This package solve this issue. If the project has the Originer
package in dependencies, then after starting the unity, the package will try to find unresolved dependencies in the installed projects, try to find them in Github according to certain rules described below and install them in manifest.json
- In order for
Originer
to be able to find your repository in github as a dependency and successfully include it in the proget, you need to add a repository with a topic namedupm-package
- The repository should be named the same as the package name.
Еxamples of repositories as packages:
Full list of available repositories for use as upm package by Originer
For start using this package add lines into ./Packages/manifest.json
like next sample:
{
"dependencies": {
"originer": "https://github.com/k0dep/originer.git"
}
}
After this step, just add your package in ./Packages/manifest.json
and open Unity editor. Originer
will ask you for permission to make changes to manifest.json. Enjoy!