Zhian's Picture

Zhian Li

Software Engineer in Game
University of Southern California
Master of Computer Science 23'
Trojan Marching Band Trumpet 19 - 22
Zhian's Picture
Objective
  • Software Engineer with a strong background in C++ Game development and Backend Engineering.
  • Have experience in gameplay, graphics, and AI-driven solutions.
  • Skilled in collaborating across diverse teams and adapting quickly to new technologies and domains.
  • Fluent in Chinese and English, with basic proficiency in Japanese
Education
  • M.S. in Computer Science (Progressive Degree Program) January 2022 – May 2023
  • B.S. in Computer Science August 2018 – December 2022
Publication

Skills

Languages
C++

C++

Python

Python

C#

C#

Go

Go

Java

Java

Tools
Maya

Maya

Unreal

Unreal 5

Unity

Unity

Android

Android

OpenGL

OpenGL

MySQL

MySQL

TensorFlow

TensorFlow

Git

Git

Portfolio

Game Projects

Unreal 5 Action-Adventure Game (Ongoing Project)

Lead Usability (UX) Engineer for Team Manas

As a nine-month project, developing a 3D Third Person Adventure Game that focuses on mounted combat. As the lead usability engineer, I manage a usability team of three people. Conduct user testing sessions and record players’ experiences, and work with gameplay designers and engineers to address design issues and bugs using the Unreal Engine 5.

Martial Art

Early development prototype

Walking

Usability testing for weekly builds

Unity WebGL Rhythm Game (Link)

Team Captain for Team Voxaer. Developed a multiplayer rhythm fighting game in the Summer of 2022.

Led an eight-person team and built a multiplayer rhythm game using Unity with an original game mechanism. I assigned tasks to the different members of the team and wrote the C# scripts for core game logic. Analyzed the game data & UX issues using Unity Analytics. Collected feedback from playtesters and updated the game accordingly.

Martial Art

(i)

Walking

(ii)

(i): Main Menu of the Game (Rhythm and AI difficulty selection)
(ii): Gameplay demo where two players cast different skills following the rhythm to attack the opponents.

Unreal Engine 5 Demo (Video)

Individual Class Project (Took the unreal programming class for fun and it is 100% worth it)

Implemented a UE5 demos based on the Top-Down/FPS Templates. Built the engine and integrated it with Visual Studio.
Created a physics-based puzzle game with character skills (dash, prone), health system, and animation montages.
Experienced motion graphics UI, physics, AI, and Networking of the Unreal Engine 5.

Top-Down

Top-Down Puzzle Game

Multiplayer FPS

Multi-player networked FPS Game


Retro Games (Video)

Individual Class Project ITP 380 (The class led me into my path as a game programmer)

Used STL2 framework to remake 2D/3D retro games including Pac-Man, Super Mario Kart, Parkour's Edge etc. Implemented core gameplay features (e.g. Path Finding in Pac-Man, AABB Collision Detection) in C++.

Pac-Man

Pac-Man

Mario Kart

Mario Kart

Parkour's Edge

Parkour's Edge


Graphics Projects

Ray-Tracer using OpenGL (started with class project, but I took it beyond that)
A simple ray-tracer that can accurately capture shadow and reflections, here are some of the simple image:
Specular Reflection

(i)

Anti-aliasing

(ii)

Multiple reflection

(iii)

(i): Shadow and specular reflection for complex geometry
(ii): Anti-aliasing using super sampling methods for simple objects
(iii): Multiple reflection for marbles and glass table
Physics based jello-cube simulator
A jello-cube simulated using a mess spring system with Runge-Kutta integrator, rendered with OpenGL
Bouncing Cube

The bouncing effect when the cube hits hidden walls.

Bouncing Cube with Texture

Movement of the cube when OpenGL texture is enabled.

Motion Capture Data Interpolator using Quaternions
Using quaternions and Bezier curve to interpolate missing data in motion capture sequence.
Original motion from CMU Motion Capture Lab shown in red and interpolated motion shown in green.
Rendering software written by Steve Lin, Alla, Kiran, Jernej Barbic, and Yili Zhao.
Martial Art

Martial Art Sequence

Walking

Walking Sequence

Inverse Kinematics Calculator with Linear Blend Skinning
Implemented an Inverse Kinematics (IK) handler with the pseudoinverse method. Using ADOL-C to compute Jacobian matrix and Eigen to solve linear systems. Also implemented forward kinematics and linear blend skinning.
Rendering software written by Jernej Barbic and Yijing Li.
Martial Art

Armadillo Monster

Walking

Hand Demo