Objective: create a following camera by using Cinemachine.

We have used Cinemachine virtual camera to make some cutscene. This time we will use it to replace the game camera to follow Player.

Start with virtual camera

Create a virtual camera into scene. If you have no Cinemachine drop down menu from the top, you may install it from Package Manager.


Objective: bundle the whole platform with ledge checker system into a prefab.

If we want to keep using the ledge grabbing system in game, create a prefab would be necessary. However, to copy the system without any bug require some adjustment.

Replace the Vector3 data

The most important thing to prevent bug is fix the static Vector3 data. So far we use a specific Vector3 value as snapping position and standing position.
To fix this issue, we can create 2 empty gameobject to storage the position.


Objective: create the function of climb up from ledge with gameobject reposition.

After we successfully grabbing on the ledge, the next part we need to finish is to climb up that platform.

The main issue

When you download the climb up animation and import it to Player, you might notice that animation model and Player gameobject has pulled apart when the animation got played.


Objective: create ledge grabbing animation.

“Don’t worry about me…”

Ledge grabbing is a key action to performance the perfect timing of player control.

  • Setting the grabbing position of Player
  • Setting the ledge detecting area
  • Process grabbing animation when trigger the ledge detector

Grabbing position

First, we need a hanging animation to do this part.
Select a proper hanging animation from Mixamo and import it to Player. Then we can enable it with a new bool parameter in Animator to hold the animation. …


Objective: assign different animation to movements.

In this article we will add animations to Player. Animation would bring the Player comes to live.
However, create a new animation is not easy. Luckily, we can use Mixamo to import lots of awesome animations to characters. And also, we will create the animation switching condition in animator component to create a smooth action in game.

Database of animation- Mixamo


Objective: quick guide of importing assets from Filebase of GameDevHQ.

Filebase is a assets database provides by GameDevHQ. There are tons of assets that you could import to your Unity project. If you are taking courses on GameDevHQ, the assets can help you to build an outstanding game with beautiful objects.


Objective: quick guide of upgrading Unity project to URP.

The Universal Render Pipeline of Unity is a package that could improve the rendering textures. You can easily access this package in Unity.
In this article we will go through the process of upgrading project to URP.


Objective: pushing objects in Unity.

Solving puzzles is a big goal in platformer game, and pushing objects is one of the action option to it.
In this article, we will create the function of pushing the object.

The concept of pushing objects

The pushing in our game would use the same function of wall jumping, by using OnControllerColliderHit().


Objective: create wall jumping function.

Wall jump, a stylish skill that you need to be talented to do it well in the first time of playing platformer game. It is also a movement type that requires some understanding to create.

The core of wall jumping

To start wall jumping, we need to figure out what should make our Player jumping on the wall.
The basic of wall jumping is when Player touched the wall and jumped, it should move towards the opposite of the wall. …


Objective: create a functional elevator with calling panel.

Today’s article, we will create an elevator with calling panel.
Elevator in games would be more like a rest stop to me. It usually about level switching, or a saving point.

  • Panel control
  • Elevator movement

Press it on panel

The first thing to do on panel is to create a script and attach to it. Inside the script, we will get the reference of panel button.

S.J. Jason Liu

A passionate gamer whose goal is to work in video game development.

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store