Custom Character Tutorial

Creating a character for Unreal Engines:

A few considerations are needed, before we get started

  • There are a variety of methods to achieve a functional Character within Unreal Engines,however  it is generally accepted that certain things are necessary.
  • Splitting your character into parts is also recommended
  • After importing you character you will need to change 2 things within the Skeletal Mesh properties
  1. Origin Z = -51
  2. RotOrigin Yaw = -90
  • An “.ini” will tell the Unreal Engine what parts make your character, this will be called “UTCustomChar.ini” and look something like this:

[UTGame.UTCustomChar_Data]
+Parts=(Part=PART_Head,ObjectName=”CH_JackSkellington.Mesh.Jack_Head_Pumpkin”,PartID=”Jack06″,FamilyID=”JS”)
+Parts=(Part=PART_Arms,ObjectName=”CH_JackSkellington.Mesh.Jack_Arms”,PartID=”Jack01″,FamilyID=”JS”)
+Parts=(Part=PART_Boots,ObjectName=”CH_JackSkellington.Mesh.Jack_Boots”,PartID=”Jack02″,FamilyID=”JS”)
+Parts=(Part=PART_Head,ObjectName=”CH_JackSkellington.Mesh.Jack_Head”,PartID=”Jack03″,FamilyID=”JS”)
+Parts=(Part=PART_Thighs,ObjectName=”CH_JackSkellington.Mesh.Jack_Thighs”,PartID=”Jack04″,FamilyID=”JS”)
+Parts=(Part=PART_Torso,ObjectName=”CH_JackSkellington.Mesh.Jack_Torso”,PartID=”Jack05″,FamilyID=”JS”)
+ModFamilies=Jack_Skellington.UTFamilyInfo_JackSkellington
+Characters=(CharName=”JackSkellington”,Description=”The Pumpkin king”,CharID=”Jack01345″,Faction=”Skellington”,PreviewImageMarkup=”<Images:CH_JackSkellington.CHJackS>”, CharData=(FamilyID=”JS”,HeadID=”Jack03″,TorsoID=”Jack05″,ArmsID=”Jack01″,ThighsID=”Jack04″,BootsID=”Jack02″))
+Characters=(CharName=”PumpkinJack”,Description=”The Pumpkin king”,CharID=”Jack01346″,Faction=”Skellington”,PreviewImageMarkup=”<Images:CH_JackSkellington.CHJackPumpkin>”, CharData=(FamilyID=”JS”,HeadID=”Jack06″,TorsoID=”Jack05″,ArmsID=”Jack01″,ThighsID=”Jack04″,BootsID=”Jack02″))
+Factions=(Faction=”Skellington”,PreviewImageMarkup=”<Images:CH_JackSkellington.CHJackS>”,FriendlyName=”<Strings:UTGameUI.FactionData.Skellington_FriendlyName>”,Description=”Jack Skellington The Pumpkin King!”)


 

Export List (For 3D software)

These are your character parts, created in 3D Software like 3DSMax or Blender.

  • Name_Arms.PSK
  • Name_Boots.PSK
  • Name_Head.PSK
  • Name_Legs.PSK
  • Name_LShoPad01.PSK
  • Name_RShoPad01.PSK
  • Name_Torso.PSK

 

Bone Names:

These are the naming structures you must use within yur 3D Software to create your skeletal mesh Bones. There is alot of them, usually you will use the existing bones from UDK/ UT3 and build your character to fit this shape. If you are making e.g. a rabbit; then these bones names can be used as ‘good practice’.

Head

  • b_Head
  • b_Neck
  • b_Spine2

Mask

  • b_Head
  • b_neck

Torso

  • b_Hips
  • b_Spine
  • b_Spine1
  • b_Spine2
  • b_leftClav
  • b_LeftArm
  • b_LeftArmRoll
  • b_Neck
  • b_RightClav
  • b_RightArm
  • b_RightArmRoll

R_Shoulderpad

  • b_RightShoulderPad

L_Shoulderpad

  • b_LeftShoulderPad

Arms

  • b_LeftClav
  • b_LeftArm
  • b_LeftArmRoll
  • b_LeftForeArm
  • b_LeftForeArmRoll
  • b_LeftHand
  • b_LeftIndex1
  • b_LeftIndex2
  • b_LeftIndex3
  • b_LeftMiddle1
  • b_LeftMiddle2
  • b_LeftMiddle3
  • b_LeftPinky1
  • b_LeftPinky2
  • b_LeftPinky3
  • b_LeftRing1
  • b_LeftRing2
  • b_LeftRing3
  • b_LeftThumb1
  • b_LeftThumb2
  • b_LeftThumb3
  • b_RightClav
  • b_RightArm
  • b_RightArmRoll
  • b_RightForeArm
  • b_RightForeArmRoll
  • b_RightHand
  • b_RightIndex1
  • b_RightIndex2
  • b_RightIndex3
  • b_RightMiddle1
  • b_RightMiddle2
  • b_RightMiddle3
  • b_RightPinky1
  • b_RightPinky2
  • b_RightPinky3
  • b_RightRing1
  • b_RightRing2
  • b_RightRing3
  • b_RightThumb1
  • b_RightThumb2
  • b_RightThumb3

Legs

  • b_Hips
  • b_LeftLegUpper
  • b_LeftLeg
  • b_LeftLegUpperRoll
  • b_RightLegUpper
  • b_RightLeg
  • b_RightLegUpperRoll

Boots

  • b_LeftLegUpper
  • b_LeftLeg
  • b_LeftAnkle
  • b_LeftToe
  • b_LeftLegUpperRoll
  • b_RightLegUpper
  • b_RightLeg
  • b_RightAnkle
  • b_RightToe
  • b_RightLegUpperRoll

 

Socket List (For Unreal):

Within UT3/UDK & the unreal engine you will need to add sockets to your bones to enable dual weapons, particle effects etc to appear in the correct places.

Arms :

  • b_LeftWeapon DualWeaponPoint
  • b_RightWeapon WeaponPoint

Torso:

  • b_Neck HeadShotGoreSocket

Boots:

  • b_LeftAnkle L_JB
  • b_RightAnkle R_JB

 

Notes:

If you character appears to be walking side ways or floating off the floor when you come to test it, ensure that you have then changed two settings in the Characte’s properties.

  • Origin Z = -51
  • RotOrigin Yaw = -90

 

Texture Layout:

UT3 forces your character to use a specific UV Texture mapping/ texture layout.

Your texture must be like this. If using a Custom charcater UDK this is not so much of an issue but still recommended if extending the Tournament Source Code.

Character Head Texture Layout

Char Head Layout


 

Character Body Texture Layout

CharBody_Layout

 

 


Character Description File (.ini)

  • Package – Referes to the name of the saved Package.
    Group – It is best to put parts of your character in a group such as “Mesh”, “Parts” etc.
    NameFields – self explanetory.
    PartID – Must be a unique identification such as “0A”. Check the UTCustomChar.ini for used IDs.
    CharacterNameHere – Don’t forget to give your character a name.

Another Example:-
Parts=(Part=PART_Head,ObjectName=”Package.Group.NameOfHead”,PartID=”OA”,FamilyID=”IRNM”)
Parts=(Part=PART_Torso,ObjectName=”Package.Group.NameOfTorso”,PartID=”OA”,FamilyID=”IRNM”)
Parts=(Part=PART_ShoPad,ObjectName=”Package.Group.NameOfShouolderPad_XShoPad01″,PartID=”OA”,FamilyID=”IRNM”)
Parts=(Part=PART_Arms,ObjectName=”Package.Group.NameOfArms”,PartID=”OA”,FamilyID=”IRNM”)
Parts=(Part=PART_Thighs,ObjectName=”Package.Group.NameOfLegs”,PartID=”OA”,FamilyID=”IRNM”)
Parts=(Part=PART_Boots,ObjectName=”Package.Group.NameOfBoots”,PartID=”OA”,FamilyID=”IRNM”)
Characters=(CharName=”CharacterNameHere”,Description=”<Strings:UTGameUI.CharLocData.Cain_Description>”,CharID=”OA”,bLocked=”true”,Faction=”Ironguard”,PreviewImageMarkup=”<Images:UI_Portrait.Character.UI_Portrait_Character_Ironguard_Male_Head01>”,CharData=(FamilyID=”IRNM”,HeadID=”OA”,FacemaskID=”OA”,TorsoID=”OA”,ShoPadID=”OA”,bHasLeftShoPad=true,bHasRightShoPad=true,ArmsID=”OA”,ThighsID=”OA”,BootsID=”OA”))

 


Links:

Leave a Reply

Please log in using one of these methods to post your comment:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s