At first, I was set a task to achieve the melee attack, customer character and animations into the UDK. I managed to find tutorials on how to do so on:
http://www.youtube.com/watch?v=rM7EbIC42VE
but very unfortunately we didn't have much time to focus on custom made characters and then importing from 3D Max, as could not achieve it in a short term in a given time we had, it was very difficult in creating everything in such a short time. So the fact that I did try was to fiddle with both the editors. Haven't used Maya or Max before, through self study and my friend's guidance I achieved some bits of it such as:
Ok, the first step what I did was, Clicked on import, chose your Character.PSK file and open it.
The Importer has an options for Maya Coordinates. I rotated the character by 90,0,90 degrees before I exported it. I noticed that the Character has to face the positive X-Axis and the Z-Axis should be the Up-Axis. I used the “Rot Origin” (rotate origin) inside the AnimSet-Viewer.
I right-clicked in the Content Browser and chose New AnimSet.
After creating AnimSet I opened it.
Choose File -> Import PSA and opened Animations.PSA
In the Browser Tab under Skeletal Mesh I selected Character.
In the Properties Tab click on AnimSet and checked the option "Anim Rotations Only?"
I Clicked on "Use Translation Bones" and created at least 2 Translation Bones.
The first one is rootbone and the next one your pelvis/hip bone.
I created Translation Bones for every bone that should take translation from your animations.
It looked something like this:
http://www.youtube.com/watch?v=rM7EbIC42VE
but very unfortunately we didn't have much time to focus on custom made characters and then importing from 3D Max, as could not achieve it in a short term in a given time we had, it was very difficult in creating everything in such a short time. So the fact that I did try was to fiddle with both the editors. Haven't used Maya or Max before, through self study and my friend's guidance I achieved some bits of it such as:
- Importing the external package into the UDK.
- Creating sockets.
- Creating a basic AnimTree.
- Making UDK recognise the stuff which I added in.
- Animations for Melee attack.
Ok, the first step what I did was, Clicked on import, chose your Character.PSK file and open it.
The Importer has an options for Maya Coordinates. I rotated the character by 90,0,90 degrees before I exported it. I noticed that the Character has to face the positive X-Axis and the Z-Axis should be the Up-Axis. I used the “Rot Origin” (rotate origin) inside the AnimSet-Viewer.
I right-clicked in the Content Browser and chose New AnimSet.
After creating AnimSet I opened it.
Choose File -> Import PSA and opened Animations.PSA
In the Browser Tab under Skeletal Mesh I selected Character.
In the Properties Tab click on AnimSet and checked the option "Anim Rotations Only?"
I Clicked on "Use Translation Bones" and created at least 2 Translation Bones.
The first one is rootbone and the next one your pelvis/hip bone.
I created Translation Bones for every bone that should take translation from your animations.
It looked something like this:
I figured that I don't need to do this, the Character will still be able to move/jump but it will NOT play any animations like Taunts or Melee Attacks.
2. Creating Sockets
In the AnimSet Editor click on Mesh and choose Socket Manager.
I Clicked on New Socket, Chose the right-hand-weapon-bone clicked OK, entered WeaponPoint as socket name and clicked OK again. Clicked on New Socket again, chose the left-hand-weapon-bone clicked OK and entered DualWeaponPoint as socket name, clicked OK again.
Clicked on New Socket, chose the right-ankle-bone, entered R_JB as socket name.
Did the same for the left-ankle-bone.
Clicked on New Socket again, chose the neck and head bone and entered HeadShotGoreSocket.
3. Creating a Basic AnimTree
(For reference take a look at the AT_CH_Human AnimTree)
I Right-Clicked the Content Browser and chose the New AnimTree.
I thought I did a mistake while setting it out, then I realised that this sorting need to tell Unreal when and how it should play the animations. So I opened the AnimTree by double-clicking on it.
The first Node which is needed is a AnimNodeBlendByPhysics. This Node contains pretty much every situation the character can be in.
Connected the Out Option of the AnimNodeBlendByPhysics with the Animation Option of the AnimTree. Now Created a UTAnimBlendByIdle Node and connected the Out Option with the Walking Option of the AnimNodeBlendByPhysics Node. Created a UTAnimNodeSequence and entered the name of the idle animation as Anim Seq Name in the properties tab. Connected it to the Idle option of the UTAnimBlendByIdle Node. Created a AnimNodeBlendDirectional Node and 4 UTAnimNodeSequence Nodes. Entered the names of the forward run, backward run and strafe animations and connected the Nodes to the right slot. Created a UTAnimBlendByFall Node and 8 UTAnimNodeSequence Nodes. This is where I defined the jump animations or the animations that played when the character is in the air.
I noticed that if I don't have all the necessary animations I would have to improvise or just export parts of the jump animations for this. Connected the UTAnimNodeSequence Nodes to the UTAnimBlendByFall Node. The character should now be able to move and jump.
2. Creating Sockets
In the AnimSet Editor click on Mesh and choose Socket Manager.
I Clicked on New Socket, Chose the right-hand-weapon-bone clicked OK, entered WeaponPoint as socket name and clicked OK again. Clicked on New Socket again, chose the left-hand-weapon-bone clicked OK and entered DualWeaponPoint as socket name, clicked OK again.
Clicked on New Socket, chose the right-ankle-bone, entered R_JB as socket name.
Did the same for the left-ankle-bone.
Clicked on New Socket again, chose the neck and head bone and entered HeadShotGoreSocket.
3. Creating a Basic AnimTree
(For reference take a look at the AT_CH_Human AnimTree)
I Right-Clicked the Content Browser and chose the New AnimTree.
I thought I did a mistake while setting it out, then I realised that this sorting need to tell Unreal when and how it should play the animations. So I opened the AnimTree by double-clicking on it.
The first Node which is needed is a AnimNodeBlendByPhysics. This Node contains pretty much every situation the character can be in.
Connected the Out Option of the AnimNodeBlendByPhysics with the Animation Option of the AnimTree. Now Created a UTAnimBlendByIdle Node and connected the Out Option with the Walking Option of the AnimNodeBlendByPhysics Node. Created a UTAnimNodeSequence and entered the name of the idle animation as Anim Seq Name in the properties tab. Connected it to the Idle option of the UTAnimBlendByIdle Node. Created a AnimNodeBlendDirectional Node and 4 UTAnimNodeSequence Nodes. Entered the names of the forward run, backward run and strafe animations and connected the Nodes to the right slot. Created a UTAnimBlendByFall Node and 8 UTAnimNodeSequence Nodes. This is where I defined the jump animations or the animations that played when the character is in the air.
I noticed that if I don't have all the necessary animations I would have to improvise or just export parts of the jump animations for this. Connected the UTAnimNodeSequence Nodes to the UTAnimBlendByFall Node. The character should now be able to move and jump.



No comments:
Post a Comment