Robert Plante’s Research

My name is Robert Plante, and here you can find some of the things I have worked on.

Learning is my passion with particular emphasis on real-time computer graphics and in pushing consumer hardware to do things I find fascinating.

My work attempts to leverage Data-Oriented Design techniques, multi-threading-based approaches, hardware vectorization, and letting the GPU do as much of the work as possible in order to push the limits of what can be simulated.

Robert Plante

Robert Plante

Research Scientist at the Georgia Tech Research Institute

Georgia Tech

Biography

Learning is my greatest passion. Over the years I have honed my interests primarily to real time computer graphics as well as the topics that enable them. In addition to graphics APIs this includes the backing mathematical concepts for geometry and physics. Understanding CPUs, GPUs, their caches and vectorization options, as well as how they interact with memory in conjunction with their threading models has led to a different way of reasoning about the code I write. Finding the right architecture for a problem as well as leveraging data structures and algorithms to accelerate computation has allowed me to make some interesting projects. While these topics hold particular interest for me, I am always learning about exciting ideas in math, physics, artificial intelligence, machine learning, and other similar topics in my spare time.

Interests
  • Computer Graphics
  • Interactive Simulations
  • Game Development
Education
  • Ph.D. in Computer Graphics, Ongoing

    Georgia Institute of Technology

  • MSCS in Computer Graphics, Ongoing

    Georgia Institute of Technology

  • BFA in Interactive Design & Game Development, 2013

    Savannah College of Art and Design

Skills

Debugging

Compiler Flags, Data Races, Memory Safety

Learning

Graphics, Math, Physics, Data Structures, Algorithms

Realtime Simulation

VR, GPU Acceleration, Multi-threading, SIMD

Projects

Large Scale Environments

Large Scale Environments

Managing large sections of real-world data for high-speed traversal in VR

Mass Spring Simulation

Mass Spring Simulation

Simulating an aquatic creature with a mass-spring body and basic fluid dynamics

Boids

Boids

Highly parallel 3D boids numbering in the thousands

Viral Simulation

Viral Simulation

Simulating viral spread with cautious agents

Ribbon Curves

Ribbon Curves

Bridging two curves in three dimensions using a ribbon-like approach

Experience

 
 
 
 
 
Research Scientist
Aug 2016 – Present Atlanta, GA
Projects fall into a few main categories at GTRI. C# WPF applications, multi-threaded C++ with OpenGL, and XR/VR with Unity. The most notable project being a VR one that takes place over massive areas of land both on the ground and in the air.
 
 
 
 
 
VP of Engineering
Invision3D
Feb 2018 – Nov 2018 Atlanta, GA
WebGL oriented company providing visualization and product customization services.
 
 
 
 
 
Contract Game Architect/Programmer and VFX Developer
Luxurious Animals
Mar 2016 – Jun 2018 Atlanta, GA
The primary project that I have been contracted to work on is a WebGL game called Feisty Galaxies. The project was inherited from a previous developer, and much has changed since then. The collision detection system was revamped to work on a plane-sweep model, many shaders and particle effects have been introduced, and a post-processing manager had to be built since the example one available with Three.js and an alternative called Wagner did not provide the features needed for being able to adequately manage the effects.
 
 
 
 
 
Software Engineer
GPA LEARN
Aug 2013 – Aug 2016 Atlanta, GA
Central duties revolved around building the core of the web-based learning systems. Primarily JavaScript based, this layer provides a functional framework for Content Developers to build out lessons using custom widgets.
 
 
 
 
 
Contract Tools Developer
VIMtrek
May 2015 – Dec 2015 Atlanta, GA
Initially work was done primarily in Unity, and encompassed a variety of different topics including the creation of shaders, UI work, and a decent amount of 3D math. Later the work shifted more towards the development of tools, ultimately culminating in a batch tool written in C++ that would load the custom VIMTrek format and optimize the models within using the Atangeo Balancer SDK, as configured by YAML files in this case, before writing them back out to the custom format. The endeavor required providing a suitable wrapper to the C# DLL without the use of COM. While multi-threading was initially explored, it was deemed unnecessary due to the nature of the machines it would be running on.
 
 
 
 
 
Freelance Gameplay Programmer & TD
Kaneva
Jun 2011 – Apr 2014 Atlanta, GA
My work here involved the creation of several game templates and assets which would be used as the framework for user games. I also developed an animation framework to assist in UI animation, and augmented the world building mode to allow the camera to be detached from the avatar and flown about the space freely making it easier to build at larger scales. As part of that process I also implemented the ability to record camera movement and play it back to other users whenever the creator desired. This allowed for players to create cinematic sequences, which was previously not possible.