Game Programmer | VR Developer | Technical Artist
Unity Application
Lead Unity Programmer
Team Size: 2
Description:
A package delivery training simulator. The simulator guides you through the basic rules and steps of working at a package warehouse. There is also a time trial mode that scores you based on the amount of packages you got right within the time limit. Was presented to Indigo Studios for possible future development in virtual reality.
My Contribution:
Developed tools to plug into Unity's timeline system to help speed up the process at which I could make the cutscenes. Created a dynamic system for interacting with the different kinds of packages throughout the warehouse. Wrote a custom shader to draw a boarder around the packages that you can interact with. Recorded every cutscene in the tutorial guild.
Challenges:
• Remotely collaborated with another designer.
• Tutorials had to be very strict and help guide the user in one swift direction.
• Product went though many phases of user testing.
June 2019 - October 2019
For this warehouse project we had a lot of timelines and scripted events. This timeline system needed a way to communicate to the backend so more complex events could fire off. To solve this problem I built a custom track asset for Unity's timeline. Some of the events that the cutscenes needed included spawning objects, enabling and disabling, message popups, UI popups, guide lines and custom player scripts.
How does it work?
At the base of the custom track is a "IFunctionEvent" interface. This gave me the creativity to develop more custom scripts like the ones described above. The custom track is setup in a way to accept any kind of script as long as it is a IFunctionEvent. When adding a new track to the timeline the "Function Event Track" shows up in the menu for easy access. After making a new track, a script slot can then loaded and acts as the brain. Multiple clips can be added to the track and when the timeline starts every clip will fire off the event that was originally added to the track.
Overall Impact:
This custom track was used all throughout the length of development and the project could not have been completed without it. I used the strategy design pattern here so I could build custom scripts as I went along with development. This really help me speed up the process at which I would make these timeline cutscenes. Each cutscene was made by hand and I was able to reused all of the scrips that I made for my track system. Now with Unity 2019.1+ they have a built in system called "Timeline Signals". Its works similar to how I designed my custom tracks only that events can be added directly to the timeline.