We're using Unity + p4 as well. I don't know about the server side because I'm sitting on the wrong end for this but both works, using the Unity client and p4 as well. I prefer to use p4 as I'm able to better manage my changelists in p4 and Unity is “just creating" a new changelist for me when I submit from within Unity. I guess but I'm not sure, Unity seems to automatically add newly created files to a changelist, that's a plus.
However, first and you should do this in every version control system, set Unity's files to text mode in order to be mergable more easy. Even if perforce can handle binary files better than competitos like SCN or GIT, it'll make your life easier.
We don't have anything organized in a specific way, just added a depo and checked out the Main Stream. There we created a directory in which we placed the Unity project and some more directories that contain tools and such. If you have artists working on the project and those desire to save their work in the same depo, create a second stream so nobody working on the Unity project has also to checkout the entire 100 GB of raw and uncompressed art assets. Also make sure to check Unity .meta files in when changed/created; this'll reduce import time