How to set it up in detail requires some further reading, but I can do a high level description. It helps if you are used to other versioning systems like TFS or Subversion, because the core concepts do work/look alike (although there are fundamental differences, but those are not important for now).
- Install Perforce server (they have a free edition for up to 20 team members).
- The perforce server doesn’t come with a GUI client/management tool by default so download the visual perforce client. (also freely available)
- Install (for convinience sake) the client/administrative tools on the server, so you can set everything up locally.
- Create a normal depot (a classic/default type depot, UE4 doesn’t seem to understand ‘stream’ depos yet) using the administration tool. (A depot is basically a container in which your project asset files are stored).
- Install the client tools on your client machine. Connect to the server using the connection parameters as configured during server setup ([somemachinename]:1666)
- Create a workspace on the client. A workspace is basically a local version of your depot; it allows you to work on stuff in an isolated manner, so your team members are not disturbed by your activities.The client tool will usually launch a wizard to commit an initial fileset to the depot. If not; you can mark/add them manually and submit them.
- In the unreal editor, use the workspace and server settings as configured during the above steps.
- Done!
Furthermore you should realise that Perforce is a versioning system for your project files. In other words; the program allows you to maintain a history of all the photoshop files, models, unreal files etc. Usually in a multi member team, everybody who would work on a file checks them out. This means they make a reservation on the file saying “i’m now working on this file, nobody touch it until i’m done with it” or in other cases people check out a specific version and merge changes back into a single file (this often happens with game source code for example).A versioning system like perforce offers ways to deal with these challenges and more.
Anyway… the perforce site goes into greater detail in terms of core versioning concepts and usage of the tool. But maybe it’s easier to understand if you keep the above train of thought in your mind when reading the official documentation.