Shared nodes across multiple projects

Hello everyone •ᴗ•
Trying to make a setup to have a set of nodes, resources, shader files, etc.. being shared across multiple VL Projects. My own personal library where I keep all my reusable stuff across projects.

To achieve this, I’ve decided to create a package-repository as explain here. This way I can organize it like a package and it’s very versatile.

All of this work, I have my VL.PKSynced being recognized at startup, and I can access nodes created in vl-libs/VL.PKSynced/VL.PKSynced.vl’s Definitions Section.

To push the thing a bit further, I wanted to be able to add content to other libraries (Stride/Skia) via my custom package, like VL.Addons by @bjoern do.

I’ve matched the file structure of VL.Addons :
vl-libs/PKSynced/vl/VL.PKSynced.Stride.vl
Inside the Definition of this file, I’ve made sure to change the category to Stride.

But it seems the file is not loaded with my Custom Package. (even when VL.Stride is loaded too).
(I know it’s a loading issue because the file isn’t read only when opened in contrario to vl-libs/VL.PKSynced/VL.PKSynced.vl).

Any idea how to make sure this file is loaded like the main VL File of my package ?

Also, if you have any feedback on my planned setup, I would be glad to hear them :]]

Thanks !

As was mentioned to your question in the chat, the simplest solution to your problem could just be maintaining a .vl file with your nodes that you reference in your different projects as needed.

but of course, thinking of your own set of nodes as a library and managing it in a repository is also good practice. so to your question:

the only .vl file that is being auto-loaded with a package is the one that is named the same way as the package, ie in your case this one:

vl-libs/VL.PKSynced/VL.PKSynced.vl

if you then have additional documents in your pack whose content you want to be public, you need to reference those documents in that main document and also set a forward, as mentioned here:

Forward Dependencies

The placement of the files does not matter. So the way you found the files placed in a /vl directory inside VL.Addons is not mandatory.

1 Like