The next certification requirement is to create a Moving Platform prefab. Fortunately, I’ve implemented this before:

I simply adapted it in the certification. I updated it a bit to use Vector3.Distance() instead of exact points when it reaches destination because sometimes the platform gets stuck:

Now, the Moving Platform is prefabbed by dragging the component to the Project Assets:

The next requirement if to create a functional lift system and the switch between floors have a 5 second delay at each level.

The implementation of this have been done with primitive objects:

I can use the same code, with different assets:

To be honest, blocking with primitives is the…

The first item in the certification is to make modular prefab for the platforms. Prefabs are very useful to re-use items that have already been created. It can also be used as a template where updating the template updates all instances using the prefab.

As of now, I have a bridge, a platform and a platform with a ledge:

There’s no behavior for the bridge and platform. But for the platform with a ledge it has additional components such as the grab position collider, climb and stand position.

fI’ve been a member of GDHQ for a long time and I’ve taken this course earlier in the year. This is what I was able to accomplish though it is not complete.

As you can see above that it’s not that polished and jumping is so unrealistic. I think I used root animation here as well.

Now, I would like to see how I will approach the same certification project while working on this coaching program. The major advantage of the coaching program is the requirement to document your progress. Although, the speed of development is slower this way, you get to understand Unity more. I’m also fond of Blender now so I’m hoping that I can apply what I’ve learned here as I will use this as one of my portfolio projects.

Right now, our Player runs and jumps backward when moving left. It’s time to make the character face the other direction first before performing those actions. Luckily, it all depends on value of getting horizontal input.

When left is pressed, the value is -1. When it’s idle, it’s 0. When right is pressed, the value is 1.

From here you can just flip the y axis of transform.localEulerAngles to flip the character as well.


I love game design and 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