me.png not found

Hey there! My name's Terence but you can call me Teri.

If you assumed I play video games.... well then you would be right.

I'm a twenty-three year old Toronto-based game developer looking to enter the industry as a Gameplay Programmer! I have a background studying Video Game Design and Development at Toronto Film School.

I'm also currently working as an VR Developer for VR Vision Inc.

If you want to get ahold of me, you can contact me here.

Otherwise, go ahead and scroll down to see my work or use the buttons to navigate.

DEVELOPMENT

source code available upon request

Scot Free

using- unity, c#, aseprite

roles- general gameplay programmer, artist, level design

Image Not Found

what is it?

Inspired by the Warioware franchise, and built with the help of three other friends, this game was made in a week for a game-jam midway through 2021. The theme was 'Shortcut', and so we decided to build a game around a snotty middle-school kid named Scot who cheats on his test. I primarily worked on building the core game loop state-machine, but also helped create the images seen on the score screen. In the end, we actually won 1st place!

what did I learn?

  • Technical debt racks up very quickly
  • Enums are not a replacement for state-objects in a state machine
  • People really appreciate good art and audio
  • Say 'shhhhh' in a soft tone to remediate scope creep
project link

Float Like Dandi

using- unity, c#, aseprite

roles- general gameplay programmer, artist

Image Not Found

what is it?

This project was submitted for a 48 hour game jam just at the precipice of the pandemic and was rated 3rd out of all entries. Given the theme 'Fly', me and two friends decided to create a game about a wandering dandelion. I created the player controls and made all dandelion-related art.

what did I learn?

  • Self playtesting is not a good way to gauge difficulty
  • Controls can be intuitive to you, but not to the player
  • Never underestimate how much work a mechanic can be
project link

Patrol Paths

using- unity, c#

role- programmer

Image Not Found

what is it?

This was a little exercise meant to get me more comfortable with graphs. The project randomly generates nodes and produces a maximum amount of incoming and outgoing edges from each node. Enemies patrol these paths, randomly choosing an outgoing edge once they've reached their destination node. When in range, enemies follow the player but default back to their previous target once the player is not.

what did I learn?

  • Large graphs get quite difficult to process and debug
  • Both directed and undirected graphs are extremely versatile in game development, helping to produce algorithms like A* pathfinding which I'd like to look further into

Teri Dev Website

using- vue3, tailwindcss, html, javascript

role- programmer

Image Not Found

what is it?

A website created to help put myself on the map. This is my first time venturing outside of anything more than the basic HTML, CSS, and JavaScript. Though it took a couple of days to build the foundation, it was definitely worth it.

what did I learn?

  • A frontend framework like Vue helps to organize visual components while reducing duplicate code along the way
  • Though time consuming at some points, web development isn't as scary as it seems

Construction Queue

using- unity, c#

role- programmer

Image Not Found

what is it?

Much like the patrol path project, this was a way to teach myself how to use queues. The queue stores construction units and each construction unit has varied build times. When a building is selected, the unit is stored in a queue, will pause to build, and spawn on the clicked region within the game world. For this project, the 'City Kit (Suburban)' by Kenney was used.

what did I learn?

  • Much like stacks, queues help define usage pattern of a container, making the intent of a programmer explicit
  • Fixed and dynamic queues have their own strengths and weaknesses and should be considered properly

Fiends Forgiven

using- construct 3, aseprite

roles- general gameplay programmer, artist

Image Not Found

what is it?

Created in a month at the end of 2020, Fiends Forgiven was a project that focused on game and level design because of the much simpler programming that Construct offers. The gameplay focuses on fast-paced movement and swift actions through a 'dash' mechanic. I also produced the boss' animations, making sure it fit well with the art assets I used.

what did I learn?

  • Although simple, Construct's programming is sometimes difficult to tinker with because it's so visual
  • Art assets - especially animations - take a lot of polish and effort to complete
project link

Blackjack

using- sdl, c++

role- programmer

Image Not Found

what is it?

This project was created using SDL and its multiple libraries. Completed in about a week, it was an attempt to work on a game without having a much larger game engine such as Unreal obfuscate lower-level tasks. Sprites were taken from 'Lufia 2: Rise of the Sinistrals' and I also used the font 'Alagard' by Hewett Tsoi.

what did I learn?

  • Editors make it much easier to position entities in space
  • Building things from the ground up takes time, but it lets you understand how the engine functions

DESIGN

Sweepy

using- arduino ide, cura, rhino

roles- designer, programmer

Image Not Found

what is it?

Sweepy the studio cleaner was designed in response to the chaotic conditions of architecture studio left behind by barbaric students. Tired of how messy studio is during reviews? Well say no more. With Sweepy, all you have to do is set it and forget it. In this project, I worked on cleaning up files for 3d-printing, figuring out the internal organization of hardware with the help of two other classmates, programming Sweepy, and working on the infomercial that was uploaded to the Instructable.

project link

Mathematical Seashell

using- processing

role- programmer

Image Not Found

what is it?

This project aimed to introduce me to computation and design looking at basic concepts in generative and algorithmic design, computer programming, architectural geometry and geometric description, computer-aided design, and parametric modelling. For this project, I simply created a program in Processing that modelled a mathematical equation which produced a seashell-like surface. Across the surface, hue changes according to the y-value.

Nest Building

using- rhino, grasshopper

roles- designer, programmer

Image Not Found

what is it?

This project was an introduction to the architectural design process, using various representational strategies and conventions to examine spatial relationships and the qualities that define space. Using Grasshopper, three-dimensional voronois are created within a 16m x 16m box. The voronois are arbitrarily removed to create voids that become inhabitable spaces. The stairs and floors that create the program of the building are then carved out of the pre-existing voronois structure. All of this sits within a glass box. The model was built from one-hundred laser-cut layers of stacked cardboard and laser cut basswood.

Shrinkwrap Markethall

using- rhino, grasshopper, kangaroo

roles- designer, programmer

Image Not Found

what is it?

This project aimed to explore the market hall as a space by a means of material and structural investigation through physical modeling, digital simulation and physical testing. The structure's geometry was created using Grasshopper physics simulator 'Kangaroo'. A mesh box is created from the bounding box of multiple spheres. The mesh box decreases in size, slowly forming to the surfaces of the spheres. This shrink-wrap effect creates the shell of the markethall. The panel apertures are controller by an attractor line (the closer a panel is to the line, the wider the aperture). The interior of the outer shell consists of a reinforced steel sub-frame. The model was created using a Starch-based SLA 3D printer.

Progressive Plywood

using- rhino, grasshopper

roles- designer, programmer

Image Not Found

what is it?

This project focuses on modularity, aggregation, and assembly as a response to changing environmental and social conditions through kinematic architecture. It looked to investigate the use of kerf cuts in wood to apply bends and twists that would normally not be possible. The structure can be adjusted by rotating and moving the bottoms of the walls along the rails on the ground. This not only meets aesthetic needs, but also becomes practical for shading in different environmental conditions.

SKILLS

Programming

no image found
no image found
no image found
no image found
no image found

JavaScript

Game Development

no image found

Unity

no image found

Unreal

no image found

Construct

no image found

GameMaker

Graphics

no image found

Photoshop

no image found

Illustrator

no image found

InDesign

no image found

Premiere

no image found

Lightroom

CAD / Modelling

no image found

Blender

no image found

Rhino 6

no image found

Grasshopper

no image found

Fusion 360