«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»
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.
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.
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.
all of this was done back when I was in school – most recent first, roughly
coursework + other
[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
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"? (look, it's complicated)
(updated November 2017)