I am working with some very complex custom toon shaders in Eevee. This causes several problems. First, the compile times are atrocious. Second, I am in danger of hitting the node limit if I also use complex procedural textures. Third, when trying to use AOVs, I hit the GPU instruction limit. I am trying to find out if I can help any of these issues with custom nodes.
My experience with custom nodes is with this addon that adds many new procedural textures (its paid, so I can't share it directly.) I had been using a hexagon tile procedural texture from this addon, but wanted to share the file with others. Since I couldn't also share the addon, I re-created the same hexagon tile texture as a group out of regular nodes. This caused me to hit the node limit (I was using several of them). This leads me to believe that, for whatever reason, custom nodes only count as a single node against the node limit, whereas a node group doing exactly the same math counts as its full node count. Is this true?
I also noticed that my compile times when using the custom node were not too bad, but when I switched to the node group version, they became terrible. Are custom nodes somehow saving on compile time? If so, how? Could I save more by making a custom node version of my big shader group?
Are there any other options for optimizing my setup?