The Character Class also holds a reference to a Skeletal Mesh, which will be the basis for what the player sees while playing the game. For instance, where the PlayerController simply creates a basic event for moving the analog stick on a controller in an upward direction, the Character class is responsible for receiving that event and using it to drive the character forward. Your Character Class is going to start with events that are triggered from the PlayerController, and use scripting (including Blueprint visual scripting) to control what to actually do with those inputs and how they can be used to control the character.
For simpler elements that would just need to be driven around the scene by AI, for example, you can generally get away with using a Pawn. For our purposes, we will be using the Character class. The key difference is that the Character class is an extension of the Pawn class, adding in player physics, support for a specific mesh, and the general types of handling needed when creating a playable in-game character. Both are used for entities in the game that are either controlled by the player or by in-game AI. You will notice that we mention two potential classes here: Pawn and Character. This is where the Pawn or Character classes come into play. That means those inputs need to be translated (or parsed) into actions. Now, however, you have to translate those inputs into something that can in turn drive a character around on the screen. Once you have set up your PlayerController, your system is now prepared to handle inputs from the player. You can also see a PlayerController in C++ script by creating a new project ( File > New Project) and choosing the C++ Top Down template. Double-clicking on this asset will open it up and you can see the setup for yourself. Once within the new project, you can search within the Class Viewer for PlayerController, turning off the filters in the Class Viewer. All of the Blueprint-based templates will contain a PlayerController of some sort (either the default Player Controller or a Player Controller Blueprint), though if you want to see a custom application of using a Player Controller, the Blueprint Top Down template is the most straight forward.
In the editor, you can create a new Blueprint with a parent class of PlayerController, and then use this to set up your own events that will take place upon inputs from the player.įor an example of a custom Blueprint PlayerController, you can start a new project within the editor ( File > New Project) and check out the Blueprint Top Down template.
For instance, it can control how moving the analog stick on a controller upward can cause an event which will eventually be used to push the character forward on the screen.Ī PlayerController is already an existing Class within Unreal. The PlayerController is a special type of script or Blueprint whose primary purpose is to parse inputs from the player into events that can drive a character. As such, our team has developed an advanced rigging tool to simplify the rigging process, taking it from hours down to minutes.įor more information on importing FBX files, please see FBX Import Options Reference. While we cannot teach you the nuances of character design and animation, we do have certain tools to help the process along.Īt Epic, many of our animation artists use Maya to animate their characters. Generally, there is significant design, modeling, surfacing, rigging, and animation time that must take place long before you even touch the Unreal Engine. In many ways, the creation of your art assets may be the most challenging part of the character development process. In the following sections, we will go into further detail on exactly what each one of these steps means and how you can apply them. This list just gives a general idea of the flow. Import your Skeletal Meshes and animations into UE4 by creating a new Skeleton asset for new Skeletal Meshes or by reusing an existing Skeleton asset for identical or similar Skeletal Meshes.Ĭreate a PlayerController script or Blueprint to handle inputs from the player.Ĭreate a Blueprint or script for a Character or Pawn to parse inputs and control the actual movement (not skeletal animation) of the character.Ĭonstruct the Animation Blueprint for the character.Ĭreate a GameMode script or Blueprint that utilizes your custom PlayerController and any other custom script assets.Įach of these steps will generally require a wide variety of further sub-steps to be completely successful. The primary workflow for character setup in UE4 is as follows:Ĭreate your art assets (Skeletal Meshes) and animations, using a 3rd party digital content creation (DCC) package such as 3ds Max or Maya.
You can also find an example of the Playable Owen Character on the Animation Content Examples page under section 1.10.