Welcome to Alex Miller

Games and Graphics Programmer



almill@mail.med.upenn.edu

About Me

I grew up in the suburbs of Philadelphia and attended college in western Pennsylvania. I graduated from Indiana University of Pennsylvania in December 2009 with an Associate's degree in Accounting and a BA in Spanish with a minor in economics. After graduation I spent a little over a year in Santiago de Chile where I worked with at-risk children through a small NGO called VE Global.

Upon returning home, I had lunch with a friend from high school who's getting his PhD. in robotics at Penn. He showed me his lab and I was intrigued by the idea of building and programming robots. So I applied to the MCIT program to step towards a career in robotics. Before I had completed my first semester, I knew I had found my calling and that I'll be happy for the rest of my life as long as I'm coding and working on engaging projects that help myself and others.

I recently graduated with a Masters of Computer and Information Technology and a Masters of Computer Graphics and Game Technology in May 2016. I'm currently running a small VR lab for Penn Neurology, helping design and then coding experiments that explore brain plasticity and treatments for phantom limb pain, Broca's Aphasia, and hemiparesis.

Education

University of Pennsylvania
 


School of Engineering and Applied Science

Master of Computer and Information Technology

Master of Computer Graphics and Game Technology

May 2016 - (GPA 3.88)

Learn more

Indiana University of Pennsylvania
 

Eberly College of Business Honors Program

Robert E Cook Honors College

Bachelor of Arts in Spanish

Associate's in Accounting

December 2009 - (GPA 3.42)

Learn more

Work Experience

Around the world and around the bend.



  • UPenn
    2015 - Present


    University of Pennsylvania
    Programmer

    Started as part-time research assistant, now I run a little VR lab
  • Tactai
    Summer 2007


    Tactai
    Programmer

    Developed software for haptic feedback device prototype
  • Cognitive Operational Systems
    June 2014 - present

    Cognitive Operational Systems
    Programmer

    Accelerating image feature detection with GPU
  • Thrive
    May 2013 - August 2013

    Thrive Gaming
    Engineering Intern

    Project Manager and Lead Developer on Android Game

Skills

My technology-relevant skills

Game Engines /
Dev Environments

Unity3d
AndEngine
Git
Visual Studio
Eclipse
Emacs
Linux 

Programming Languages

Java
C
C++
C#
WebGL
OpenGL ES
OpenGL
Python
JavaScript
Prolog
HTML

Spoken Languages

English
Spanish

Projects


Phantom Limb Pain VR

A series of VR games designed to treat phantom limb pain in lower limb amputees by providing visual and haptic feedback (similar to mirror box therapy). The games are controlled by an microcontroller hooked up to EMG sensors attached to quadriceps and hamstrings (for above the knee amputees) or with IMUs mounted on the legs (for below the knee amputees). Games include a mountain rappelling game, an office chair maze game (inspired by Sokoban), and a fully functional web browser. I gave an iTalk at Penn discussing the research that you can watch below.
(Unity, C#, C, JavaScript)


COSY Image Processor

A GPU-accelerated computer vision library for android. It features real-time descriptor extraction, edge detection, antipode calculation, and line extraction.
(OpenGL ES 2.0, Java, C)


  • Input image from camera with matched features marked by red dots

  • Visualization of image gradients

  • Edges

  • Lines extracted with a Hough Transform


SEC3 Engine

A WebGL engine created for my two-person real-time rendering class. It features forward and deferred rendering, cascading shadow maps, particle systems, post-processing effects such as depth of field, and smooth particle hydrodynamic fluid simulation. The real-time SPH simulation features screen space object detection and customizable physical properties
SPH demo video
(WebGL, JavaScript)


  • Cascading shadow maps

  • Depth of field

  • Particle system

  • SPH simulation


My Raytracer

A two-part homework assignment for my first graphics class. It started out with a room editor in which you can load up and transform objects in a scene graph (rendered with openGL). The second part of the assignment was a raytracer. I ended up getting a little carried away and added some features beyond the scope of the assignment, including a kd-tree built with surface area heuristics, refraction, area lighting, multi-threading, texture mapping, and anti-aliasing among other things.
(OpenGL 3.2, GLSL 1.5.0, C++)


  • Four spheres with varying reflective and refractive attributes

  • Stanford Dragon with coloring determined by surface normals

  • Stanford Dragon on a semi-reflective marble-textured floor

  • A visualization of the kd tree built to render the two dragon images

Other Projects (pretty old)
Feel free to ask me about some of the other projects on which I've worked or for some source code samples.



Tetris

A reproduction of the classic 1988 Amiga version of Tetris with a special, game-enhancing advanced mode!

(Unity, C#)
Source Code

The Miner Key

This is a Tetris-Like Side-Scroller I made with Swing after I finished my first programming course.

(Java)

Jar file
Source Code

Scratch On!

Scratch Card game made for Android with small team for Thrive Gaming. Six mini games, a world map and meta game, and facebook integration.

(AndEngine, Java)

Posture Pal

Posture-monitoring device with three components: an arduino, an android, and a C server running middleware.

(Arduino, Java, C++)

Interests

Among other things, I enjoy traveling, coding, playing folk and blues guitar, ultimate frisbee, gardening, the banjo, chess, go, computer and board games, and tennis.

  • Habitat for Humanity
    Goat and cheese farm
  • Guitar & Banjo
    Playing guitar in Spain
  • Change
    VE Fundraiser
  • Fun
    Being a clown