Newbie question - how to create texture mask for static mesh

This was always a big mistery to me how to create texture mask for 3d object and how to divide it in order to create separate elements ready for putting on texture. Before creating this topic I was looking for answer and among other things I found this: but still this is not very informative for me.
So let’s cut to the chase and take for an instance this chair from starter content - how they created texture mask for it (I believe it has to be organised somehow otherwise it will not match certain 3d object) and how to make these separate elements for different materials?
Also I don’t understand how am I supposed create such organised mask for 3D object in “any 2D image manipulation program”?

If you find this question stupid you can offend me but also please enlighten me :smiley: