I have several that I use, and all are hand made. The method is the same for all, the materials vary, as I have found that certain applications work better depending on the job.
Take a piece of cardboard and cut it as wide as the jaws on your vise. It will need to be 8"-10" long. Now, drop it down the inside (between the jaws). You are going to want to cut out a slot so that it can sit down over the center screw/extension. Don't make this too tight, or it's difficult to change without fighting, but you don't want it so loose that the jaws tilt when you put them in either.
One you have this pattern you can use either 3/8" plywood or a moderately hard wood (not pine) to make several "jaws". (I use plywood of a good grade, and seal all the sides with a polyurethene finish to prevent splinters. Getting stabbed in the fingers while working can make ugly marks on the work.)
You can now take these jaws and face them with rubber, leather, hardwood, or other materials. I find that clamping them together and using a belt sander to make sure the top and sides are smooth works best. (Don't clamp them too tight or you will deform the facing material and you won't like that.)
The new jaws ahould easily slip into the open vise, and stay in place without your having to keep positioning them.
For those who need a metal vise jaw that's softer than steel you can use either sheet lead, copper, or aluminum. Try to use 1/4" material. Use low heat (in the case of copper and aluminum) and a soft hammer to forge the jaws. Put the material in the vise (one side at a time) and bend it over the jaw. Once they are roughly shaped the pair can be matched using the belt sander to get a nice square work surface.
Another note: Your vise jaws should be smooth. The very aggressive "pipe" jaws on most vises need to be replaced with something better. That's a good mill project for the do it yourselfer.