Unity 3D

Mini-game created through the Unity 3D engine.


This project began as a technical challenge: To develop a player controlled character that in a 3D environment that contain multiple state machines.


Alan Xu                          Developer




Spring 2019

GitHub/Project Site




This technical challenge required use of a state machine in order to get across in-game systems to the user. For the demo we developed, the player begins as an astronaut on a martian planet. The user may move around freely anywhere around the map. Accompanied by the user is a drone that utilizes a script in order to follow the player character along the map. After a set amount of time, the lander parked next to the player's initial starting point will take off into the sky. The three main components made for the challenge are:

  1. Script for an object to follow player 

  2. Script for an object to transform position after a certain period.

  3. Getting the camera to follow the player, as well as changing position based on user input.


The assets used weren't native to Unity itself but were obtained through the Unity Store. Map design, while important, was less of a factor in gameplay. All the active scripts in the project are programmed in C#. 

The most challenging aspect of this challenge came with implementing the drone to follow the player. While the script was simple enough, unity's navmesh feature required several adjustments in order to correctly display walkable terrain.