The past few days I have spent on figuring out how to use the 3D painting functionality in Photoshop CS5, and now that I know how it works it's pretty easy :D Consider this to be a quick primer on how to do the basics. If you don't do 3D modelling let alone ever use Photoshop this may be a tad boring.
Obviously the first step is to create a 3D model in your favourite 3D modelling tool. I use 3D Studio Max 2010. Once you have finished the plain, untextured model, we need to do a few things before we can start painting it, the first ensuring that each separate mesh has its own texture maps attached to it. In 3DS you do this by assigning a material to each mesh (Material Editor, create a material for each mesh and assign it).
After this select the whole model (all meshes) and apply an Unwrap UVW modifier. This will allow you to unwrap the UVW coordinates map and tweak it. In 3DS we then hit the big Edit... button in the UVW unwrap roll-out and under Tools we use the Flatten Mapping option which gives us a nicely ordered UVW coordinates map, with no overlap between the different parts. If there are any flaws in this mapping, now is the time to correct them. See any of the available tutorials for this :)
With a nicely modelled and unwrapped object we now use the export or save function to save to any of the 3D object formats Photoshop CS5 supports, which includes 3DS, OBJ, KMZ, and a few others. You'll probably end up using 3DS or OBJ; I used 3DS as CS5 doesn't support the current 3DS format (MAX).
In CS5, open the file using the regular 'Open...' function, it should now open and display the model. You can use the 3D navigation tools to move the model or camera around. If the model looks right we can continue. Otherwise you may want to correct any flaws in 3DS or whichever 3D modelling application you use. Verify that each mesh has its own material assigned to it.
There are a few ways to paint on the model. I prefer to position the model so that I can see the part I want to paint on, then create a new layer on top of the first one and paint on that using the regular painting tools (brushes mostly). After I finish painting I right-click the top layer and choose 'Merge Down', which merges the layer with the model layer, essentially adding it to the diffuse map. This assuming that the 'Paint On' option was set to diffuse. Check the 3D menu option, or the 3D panel (Window -> 3D).
You should now be able to paint the model with ease. It's very much like the regular 2D painting, just that you have to do each side of the object instead of just one. Also compare this method to the old way, which involved taking the UVW coordinates map you created during the unwrapping phase, colouring in the pieces on it while keeping track of what goes where and in what orientation, then using it as the model's texture. You may realize that doing things that way is far more error-prone and time-consuming than doing things the way I just described.
After you create the textures, just double-click their entries in the Layers panel to open them in a tab and save them to the desired format. You can then use them in your 3D modelling application.
Anyway, I hope that this brief tutorial may be useful to someone. Please leave a comment if it did :)