Kai Ninomiya

«software engineer, webgl – Google Chrome»
«alum, computer & information science – 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) WebGL in Google Chrome. My work is open source and easily found online.

I'm super-interested in computer science and physics, especially computer graphics, physical approaches to graphics, computational approaches to physics, and teaching what I know about these things to others.

I also 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 ('stonishing, I know), such as:


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 in or before college – most recent first, roughly

coursework + other


(updated December 2016)

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