Jerry Yin

last updated: July 2022

I am a software developer interested in creating ways for artists to work more effectively. I recently wrapped up my Masters degree in computer science at the University of British Co­lum­bia, where I developed cutting-edge automatic sketch processing algorithms under the supervision of Prof. Alla Sheffer.

Some of my previous roles have involved developing artist tools for AWS Thinkbox, and working as an illustrator for The Ubyssey.


Software

virtuawin-bar

virtuawin-bar is a VirtuaWin module which lists all of the non-empty virtual desktops and highlights the currently active one. It is aesthetically similar to status bars designed to work with tiling window managers, like i3bar and Polybar. virtuawin-bar also optionally provides keybindings for switching focus to a window in a specified cardinal direction, similar to functionality found in tiling window managers.

ray-tracer

A reimplementation of Peter Shir­ley’s Ray Tracing in One Weekend in Haskell. Supports ray-tracing on multiple cores in parallel. This project was a collaboration with James Johnson.

Krakatoa

Krakatoa is AWS Thinkbox’s toolkit for rendering and manipulating particle clouds.

I was on this project for the summer of 2017, and worked mostly on the 3ds Max plug-in. Features I contributed included improvements in the core ray marching algorithms and integration with Phoenix FD simulations.

Sequoia

Sequoia is AWS Thinkbox’s stand-alone tool for processing point clouds.

I was on the team from Fall 2016 to Summer 2017, and I worked on a variety of features, including support for new file types, realtime viewport rendering, the user interface, and continuous integration and process improvements.


Articles

Detecting Viewer-Perceived Intended Vector Sketch Connectivity (2022)

Humans easily perceive the artist-intended connectivity of imprecise freehand line drawings, but manually specifying the correct connectivity for downstream sketch processing applications is tedious and time-consuming. We propose a fully automatic method that finds viewer-perceived junctions in imprecise drawings by leveraging observations about human perception.
Co-authored with Chenxi Liu, Rebecca Lin, Nicholas Vining, Helge Rhodin, and Alla Sheffer. Published in ACM Transactions on Graphics (SIGGRAPH) 2022.

Half-Edge Data Structures (2019)

An interactive explainer introducing half-edge data structures and how to operate on them. This article was a collaboration with Jeffrey Goh.
React, D3, Idyll

Visualizing the Goniophotometer Problem in Three.js (2015)

Article on how to draw circles in 3D using rotation matrices, and how to implement such drawing using Three.js.