here is my solution. (May be there is similar thread or tutorial, but I did not find yet)
Step 1: In UV/Image editor create new image. Bigger than 1024x1024 size will give better detail. Because all the textures that you use have better resolution. And when you put them together you will need more resolution. For now I leave it 1024x1024.
Step 2: Create another uv map for the object.
Step 3: select the newly created (here I named it all together) uv map and the image and go to edit mode. and all mesh selected unvrap with Smart UV Project option.(Here before unwrapping I removed the bottom face of the fabric)
Step 4: In node editor select one of the materials and add an UV Map node (texture coordinate node with uv selected also works) pointing newly created uv map (I named here “all_together”) then connect that to the new image texture node pointing the blank image you have created (I named here “all_together”). Then select both of these nodes check that the image texture is selected second (active) and copy to all material nodes used for the object.
Go to object mode, select the object, created image and UVmap and hit bake. According to the resolution of the image and etc.. it will take a time..
Step 6: That is it. You can create new material as shown above to test…
The point here is to copy the image node (Step 4) to all materials used for the object (or wanted to be baked.).
I hope this is helpfull and someone like Andrew Price make a better video tutorial…