How to get global classes added by external projects to show up in the editor?

Godot Version

4.4.1

Question

I have a library project which i included in my Godot project using <ProjectReference Include=…

For some reason when i make global classes which inherit from Node or Resource within the library, I can’t get them appear in the Godot project editor.

For instance, if I right-click in the scene and choose “Add Child Node…”, i don’t see any of the global Node classes that are defined in my library.

I can instantiate them runtime and they do have the “GlobalClass” attribute but the editor just seems unaware of their existence.

I’ve look around online for answers but it’s quite hard to find because google keeps giving unrelated topics. Maybe I’m just not looking for the right keywords. So sorry if the answer is obvious or already answered somewhere else.

Thanks for the help.

For anyone ending up here, there is a github issue about it that is somewhat related.

Apparently you just can’t get the editor to get global classes from external sources at all. Because Godot only looks for global classes within it’s own root directory and no where else.

The only way around this that I can think of is create a class within your project that inherits the class from the library and attach it to your nodes manually in the editor. For resources, you’d have to create a generic one in the file docker and add the script to the “script” property under “RefCounted” in the inspector.

While this work, a yellow message in the inspector will always remain. Saying: “The inspector might be out of date. Please build the C# project.”

Kinda tedious for something I feel is obvious and that Godot should support.