me as Spike Spiegel

Kai Ninomiya

«software engineer, webgl – Google Chrome»
«computer & information science '16 – Penn»
«corresponding sysadmin – STWing residential program»
& formerly...

«co-instructor – CIS 198: Rust»
«teaching assistant – CIS 565: GPU Programming»
«3d graphics engine developer – Cesium.js»
«teaching assistant – CIS 277: Interactive Computer Graphics»
«teaching assistant – CIS 460: Computer Graphics»
«co-instructor – CIS 191: Linux/Unix Skills»
«RCTA research intern – Center for Human Modeling & Simulation»

résumé (pdf)

bitbucket · github

about me

I work full-time on (implementing) web graphics APIs in Google Chrome. My work is open source and easily found online.

I'm big into computers and physics, especially computer graphics, physical approaches to graphics, computational approaches to physics, and sometimes programming languages. I love helping others learn, and learning with them. I like things like display tech, cameras, sensors, optics, color, and perception, too... but I don't know as much about them.

And hey, I think Rust is hecka cool! I co-taught a course in it once.

In my limited free time, I like to do things I think are great. (shockingly.) Here's some stuff I've done.


Taylor, C.J., Cowley, A., Kettler, R., Ninomiya, K., Gupta, M., and Niu, B.. “Mapping with Depth Panoramas.” IEEE/RSJ International Conference on Intelligent Robots and Systems, Hamburg (Germany), 2015.

[preprint, 4.0 MB]

Ninomiya, K., Kapadia, M., Shoulson, A., Garcia, F., and Badler, N. “Planning Approaches to Constraint-Aware Navigation in Dynamic Environments.” Computer Animation and Virtual Worlds, 26: 119–139, 2015.

[preprint, 7.1 MB] [doi: 10.1002/cav.1622]

Kapadia, M., Ninomiya, K., Shoulson, A., Garcia, F., and Badler, N.I. “Constraint-Aware Navigation in Dynamic Environments.” ACM SIGGRAPH Conference on Motion in Games, Dublin (Ireland), 2013.

[paper, 2.9 MB] [video, 4:49, 30 MB]


all of this was done back when I was in school – most recent first, roughly

coursework, etc.


(updated November 2017)

2CAC 493D 1FC8 B883 E984  A26A DA08 7B00 C36A 288F