This asset still uses CodeFunctionNode API, which was made internal in 2018.2.,
Instead of it, Unity forces us to manually update ALL our nodes to sub-graphs, which is super clumsy and is not as robust.
We can't do any custom UI or methods selection using it.
Adding AsmReference to main folder with definition to Unity.ShaderGraph.Editor.
This will include and compile all our custom nodes inside ShaderGraph assembly, giving us access to internal API's.
Changing node classes to be internal to avoid accessibility compile errors.
The CodeFunctionNode API hasn't changed a bit since Unity 2018.2 and works in newer versions up to 2021.2!
Fork with updated version: https://github.com/neon-age/shader-graph-nodes
Issue
This asset still uses CodeFunctionNode API, which was made internal in 2018.2., Instead of it, Unity forces us to manually update ALL our nodes to sub-graphs, which is super clumsy and is not as robust. We can't do any custom UI or methods selection using it.
Solution
Instead of rewriting every node to sub-graphs, we'll just access forbidden API again, by using AsmRef: https://docs.unity.cn/2019.4/Documentation/Manual/class-AssemblyDefinitionReferenceImporter.html
Which only required:
The CodeFunctionNode API hasn't changed a bit since Unity 2018.2 and works in newer versions up to 2021.2!