Well, there’s no one better-equipped to answer this than Vertex Rage himself, but I’ll still try to lay out the basics for you.
At a high-level, you can piece the exact procedures together from the early part of the Texture Painting course, and the Spitfire section of the beginner course you’re in right now. Those two sections will show you 90% of what you need. It would look something like this:
- Create a material and apply it to the entire model
- In the Shading Workspace, assign a texture input to the material
- The colour palette itself is just an image - could be made with GIMP, or even MSPaint if you want. Set your colour palette image as the material’s texture (don’t use single pixels per colour; the absolute minimum you should use is 3x3, and you should probably go larger than that)
- Build a UV Map for your model, adding seams not only for stretch-minimized unwrapping, but also to separate UV faces that will be of different colours (not strictly necessary, just for your own convenience).
- Crush the UVs down to small shapes that will fit within the colour squares of your palette and grab/drop them onto the appropriate colours, which you should immediately see on your model even as you are moving the UVs around. Do not reduce the UVs down to an absolute pinpoint, as this can cause problems with the game engine itself. @bOBaN knows much more than I do about the exact implications; all I know offhand is, it’s a no-no XD
I haven’t tried importing any models that use a colour atlas like this (outside of the Godot 3D course, which is a bit outdated in this particular regard), so I don’t know exactly what you may or may not need to tweak with the Importer in the engine. That said, it should be relatively straightforward, as the Engine Contributors have put some work into streamlining the process for stuff like this. Hopefully you can just import the .blend file itself, as this already works fine when using dedicated materials instead of a colour atlas.
If you do need to export the model first, be aware that Godot 4.3 introduced a native .fbx importer, so you no longer “need” to use .glTF/.glb for imports into Godot. If one format doesn’t work right away, it’s worth trying the other before even bothering to do any troubleshooting. Good luck, and I hope you share what you make!