Kai Ninomiya
«software engineer, webgl –
Google Chrome»
«computer & information science '16 –
Penn»
«corresponding sysadmin –
STWing residential program»
& formerly...
«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»
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.
publications
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.
projects
all of this was done back when I was in school – most recent first, roughly
coursework, etc.
-
[WebGL] Deferred shading renderer
-
[Rust] A raytracer with primitive photon mapping
-
[Rust] A very small, basic path tracer a la smallpt
-
[WebCL] GPU Dynamic Fracture in the Browser
-
[CUDA] A GPU-accelerated path tracer
-
A smoke simulator/renderer
-
A modular volumetric renderer
games
-
Invincible 3 – use time-bending powers to fight time-traveling invaders
-
Invincible 2 – help the Capitalosaur escape Kola Superdeep Borehole
-
Invincible 1 – explore a puzzling cave by taking advantage of disposable labor
-
Chickens – a networked platformer with live-editable world and custom UI toolkit
-
Witfell – a 4D, uh, board game.
(updated November 2017)