Portobelly Production Journal #27

25/02/2019

Last week I set myself the goal of implementing the animations and AI of the BFF and to blockout the level. I have completed the AI for the BFF but I did not manage to complete the animations for the BFF as I started working on the blockout as I felt getting the blockout completed was more urgent. I have setup the rig for the BFF so that when I come to animating the BFF I will not have to rig the character.

This week I plan to refine Belly by fixing issues with the character and building the project so that we can show the project at the Bristol games hub meetup.

Fig 1 - 25 02 2019 playtest

During the playtest I discovered that aspects of the game need to be changed due to the results of the playtest. Player 1 mentioned that he would like to have opportunities to move in the opposite direction to discover secrets. During his footage you could see that they were moving backwards often to try and find secrets in the game.

Both players got stuck in the bouncing mushroom section so I feel this needs to be changed so that the player can exit this section if they fall into it. Also this section would be less of an issue if there was an visual explanation on how the mushrooms worked before jumping on the platforms. This would show the player how to use the mushroom pads without failing on their first try.

Fig 2 - 25 02 2019 Discussion

Above is a discussion we had about the production of the game.

Fig 3 - Starting to rig Belly

Belly currently uses an event tick to roll around the environment which is performance intensive. It also has an effect with the roll where Belly’s rotation snaps to a certain position if the player changes their movement direction. This effect is not intended and needs to be resolved. My solution is to control the players rolling through animating Belly rolling.

Fig 4 - Belly before painting skin weights

Fig 5 - Belly after painting skin weights

I began to rig and paint the skin weights of belly making sure that the limbs only had influence over the their area. This was to prevent the arms from moving Belly’s body in undesired ways.

Fig 6 - Belly rotating from the root

I soon discovered that when I began to animate Belly rolling I was unable to rotate Belly around the joint in the centre of Belly as it would deform Belly’s mesh. To fix this issue I had to make the root joint have 0 influence over the mesh so that Belly could be rotated around the central joint.

Fig 7 - Belly forward roll

Fig 8 - Belly backwards roll

Fig 9 - Belly right roll

Fig 10 - Belly left roll

Using the central joint as the origin for the rotation I was able to rotate Belly in 4 directions so that I could apply this to a blend space for Belly’s rolling animation.

Fig 11 - Belly rolling blend space causes rotation snapping

When creating the blend space I was unable to make the blend space transition smoothly between the different states as the rolling would snap to a certain point when the blend space wasn’t at an extreme value.

Fig 12 - Animation blueprint using the forward roll

Fig 13 - Belly animation blueprint calculating the play rate of the forward roll

Instead of using a blend space to control Belly’s movement I decided to use a single rolling animation and alter the play rate based on the players X velocity.

Fig 14 - Belly with the rolling animation fixed

Above shows the rolling animation fixed so that Belly’s rotation no longer snaps to a point when the player changes direction. Although this animation is not perfectly synced up with the speed of the player this can be fixed fairly easily with some minor adjustments to the play rate.

 

Figures List

  1. Rees, O (2019). 25 02 2019 playtest. YouTube [video] 26 February. Available from: https://www.youtube.com/watch?v=LoXis2A1UpQ [Accessed 26/02/2019].

  2. Rees, O (2019). 25 02 2019 Discussion. YouTube [video] 26 February. Available from: https://www.youtube.com/watch?v=WwuOojDEN9w [Accessed 26/02/2019].

  3. Rees, O (2019). Starting to rig Belly. [offline]. [Accessed 26/02/2019].

  4. Rees, O (2019). Belly before painting skin weights. [offline]. [Accessed 26/02/2019].

  5. Rees, O (2019). Belly after painting skin weights. [offline]. [Accessed 26/02/2019].

  6. Rees, O (2019). Belly rotating from the root. [offline]. [Accessed 26/02/2019].

  7. Rees, O (2019). Belly forward roll. [offline]. [Accessed 26/02/2019].

  8. Rees, O (2019). Belly backwards roll. [offline]. [Accessed 26/02/2019].

  9. Rees, O (2019). Belly right roll. [offline]. [Accessed 26/02/2019].

  10. Rees, O (2019). Belly left roll. [offline]. [Accessed 26/02/2019].

  11. Rees, O (2019). Belly rolling blend space causes rotation snapping. [offline]. [Accessed 26/02/2019].

  12. Rees, O (2019). Animation blueprint using the forward roll. [offline]. [Accessed 26/02/2019].

  13. Rees, O (2019). Belly animation blueprint calculating the play rate of the forward roll. [offline]. [Accessed 26/02/2019].

  14. Rees, O (2019). Belly with the rolling animation fixed. [offline]. [Accessed 26/02/2019].