Yes agree with you that another Board3DFactory is not a ideal, and also ok with the list semantic, we can just add an issue to add some doc with warning the fact that using  CustomColors3D/Style is inefficient to display elements with individual properties (in particular in Viewer3D) and suggest to use just an setColor/setFillColor.