Michael Noland
(573) 424 1770
michael@auia.net
A senior graphics and systems engineer with an innate
ability to quickly learn new technologies and a strong desire to tackle
difficult and interesting problems. Experienced in real-time graphics,
performance/memory critical programming, concurrent programming, and
cross-platform console development. Contributed to 9 shipped products across 5
platforms.
Emergent Game Technologies
Senior Software Engineer, Core Runtime (2009 Present)
Software Engineer, Gamebryo (2006 2009)
- Sprint group leader with a broad knowledge of all runtime
aspects of the Gamebryo engine, and a deep understanding of the renderers
and system/foundational libraries facilitating the launch of four releases
of Gamebryo and two releases of Gamebryo LightSpeed.
- Designed, implemented, and optimized LibGCM based renderer
for PS3, providing PPU side improvements of up to 5X depending on the
workloads.
- Designed and implemented new features for the core runtime
(across PC, PS3, Xbox 360, and Wii), such as lock-free data structures, batched
shader-driven rendering, and per-thread allocators.
- Proposed and built a sample testing infrastructure and a
performance analysis test bed.
- Ported, profiled and optimized demos for the PS3 including
Emerge (GDC 2007), Forbidden Terror on Space Station Z (GDC 2008) and
Mangled Metal (GDC 2009).
- Increased customer satisfaction by working closely with
them on profiling and optimization of their titles, including on-site
visits.
- Designed and built a deferred lighting system prototype for
Gamebryo.
University of North Carolina Chapel Hill
Research Assistant, 3D Medical Consultation Group (2004
2006)
- Characterized 3D inertial measurement units and designed
filters for use in a PDA tracking application.
- Designed a magic lens application that displays a 3D
dataset in relation to a tracked PDA intended for use in emergency
telemedicine applications.
Mitsubishi Electric Research Laboratory
Research Assistant (Summer 2005)
- Researched high speed optical tracking via spatial
labeling and various projector-based technologies.
- Designed and built custom hardware, firmware, and software
for a real-time high speed optical tracker.
University of Missouri Columbia
Developer, Computer Human Interaction Laboratory (2003
2004)
- Assisted with the establishment of the laboratory.
- Designed and developed several projects for the Art & Archaeology Museum, including a 3D game and a panoramic virtual reality exhibit
using position tracking hardware.
- Performed modeling and animation for an engineering
fundraising video.
- Designed and implemented a multi-screen kiosk for the
display of digitized artifacts.
- Taught recitations for Algorithm Design and Programming 1.
Undergraduate Research Position (2002 2003)
- Ported the Interactive Image Spreadsheet System (IISS/QIS)
from Forms/GL to QT/OpenGL.
Symbiosys Software / Neko Technologies
Programmer (1998 2000)
- Developed the special effects system and scripting engine
for the game Absolute Terror.
Education
University of North Carolina Chapel Hill
- Masters Degree, Computer Science (May 2006)
University of Missouri Columbia
- B.S., Computer Science - Magna Cum Laude (May 2004)
- BSCoE, Computer Engineering - Magna Cum Laude (May 2004)
- Minors in Mathematics and History
Key skills
Languages
- Proficient with: C++, C, Assembly (ARM/Thumb, 6502),
Shaders (Cg/HLSL/NSF/FX)
- Comfortable with: C#, Object Pascal, other flavors of
assembly (PPC, IA-32 & PIC18)
Platforms
- Proficient with: Playstation 3, Xbox 360, Win32, Game Boy
Advance, NES
- Comfortable with: Nintendo Wii, Nintendo DS
Tools and Environments
- Proficient with: Visual Studio, ProDG, GPAD, Tuner, PIX, Perforce,
MS Office, Delphi, DevTrack
- Comfortable working in: 3DS Max, Maya, Paint.NET,
Audacity, Sfxr (programmer art & sound)
Middleware and libraries
- Proficient with: Gamebryo, D3D9, LibGCM
- Comfortable with: XNA, OpenGL, GX, FMod, Windows Forms
Shipped titles and products
Contributed (via Gamebryo) to many titles released since
late 2006
- http://www.emergent.net/en/Clients--Titles/
- Gamebryo LightSpeed 3.1 (October 2009)
- Gamebryo LightSpeed 3.0 (May 2009)
- Gamebryo 2.6 (October 2008)
- Gamebryo 2.5 (June 2008)
- Gamebryo 2.3 (April 2007)
- Gamebryo 2.2.1 (October 2006)
2004Mbit Competition Cartridge
- Published by gbadev.org for the Game Boy Advance, 2005.
- Credits: Project Coordinator
Mappy VM Development Suite for the Game Boy Advance
- Mappy VM 0.9 (April 2003)
- Mappy VM 0.7 (July 2001)
- Mappy VM 0.5 (April 2001)
Absolute Terror
- Published by Crystal Interactive for PC, 2001
- Credits:
Programmer (Special Effects, Scripting Engine)
Supplemental information
Publications
- Prakash: lighting aware motion capture using
photosensing markers and multiplexed illuminators ACM SIGGRAPH 2007
Papers.
- Complementary Tracking and Two-Handed Interaction for
Remote 3D Medical Consultation with a PDA Proceedings of Trends and
Issues in Tracking for Virtual Environments, Workshop at the IEEE Virtual
Reality 2007 Conference.
- Instant replay using high speed motion capture and
projected overlay ACM SIGGRAPH 2006 Sketches.
- Improving, Expanding and Extending 3D Telepresence
Proceedings of International Workshop on Advanced Information Processing
for Ubiquitous Networks, International Conference on Artificial Reality
and Telexistence 2005.
- Inferring a
Proprietary Wireless L3 Protocol From Packet Traces
Technical Report, UNC-CH 2005.
Personal projects
- Sunny Day XNA puzzle game made in 24 hours for
the 2009 Triangle Game Jam (http://trianglegamejam.com/games.php#SunnyDay).
- Plus40 An Advance Wars clone in C++/OpenGL with a
C# toolchain.
- Space Fish XNA physics sandbox game created for
the first Global Game Jam (http://globalgamejam.org/games/spacefish).
- Robotender Automatic drink dispenser with touch
screen control (http://www.robotender.com).
- Multitouch coffee table prototypes Built FTIR,
DI, and LLP multitouch screen prototypes.
- Pixelated Martini Roller XNA platformer game with
integrated level editor made in 24 hours for the 2008 Triangle Game Jam (http://trianglegamejam.com/games.php#PixelatedMartiniRoller).
- SDIS/Z Experimental program transformation
toolkit (manipulates machine code into readable C-like code; 6502 and
limited ARM support).
- LibNDS Co-created the first free, legal library
for unlicensed programming on the Nintendo DS (http://sourceforge.net/projects/devkitpro/files/).
- NDSTech Wiki Created and maintained a Wiki (http://www.bottledlight.com/ds/)
of information about Nintendo DS development. Reverse-engineered much of
the information contained there.
- Mappy VM Development tool (http://www.bottledlight.com/mappy/)
for the GBA that emulates the hardware and provides source-level debugging
and real-time viewers of system information such as VRAM and I/O register
contents.
- UNL-YAROM CPLD+Flash ROM based development
cartridge for the Nintendo Entertainment System capable of emulating many
mapper configurations without reprogramming.
- Software 3D engines for DOS and GBA, various demo effects,
MOD player.
- Various 3D engines, including a real-time raytracer and
Quake 3 map viewer with collision detection.
- Numerous 2D map editors, small games, and work on other
emulators (NES, SMS, GB, PSX).
School projects
- Physically-based model of the human face, with muscle
activation determined by transcribed speech.
- Verilog implementation of a full 3D rendering pipeline on
a Virtex-2 FPGA (fragment processor group).
- AMaze a game for persons with visual impairment,
providing spatial audio, haptic feedback, and user-friendly map editor (http://www.cs.unc.edu/Research/assist/et/2005/AMaze.html).
- Extracting intrinsic images (reflectance and shading) via
image analogies.
- Custom arcade game console (compatible with any JAMMA
cabinet) and asteroids-style game.
- Autonomous robot capable of finding golf balls, grabbing
them, and scooting them through a goal.
- Cactus Jack and the adventures of the deranged space
monkeys 3D birds-eye view video game in C++/OpenGL.