menu

Hi, I’m Shreyas

I’m a Game Programmer.

I'm currently working as an Associate Game Development Automation and Stability Engineer at id Software. I’ve previously worked as a software engineer at Twilio and as a Research Intern at the HAFP Lab, MIT Media Lab and the Exertion Games Lab.

I reply fastest on email: shreyasnisal@gmail.com

Hi, I'm Shreyas

I'm currently working as an Associate Game Development Automation and Stability Engineer at id Software, working on engine tools used for automated testing and build systems to ensure stability. I graduated from SMU Guildhall with a master's in interactive technology, where I developed custom game engines in C++ using DirectX11 and in JavaScript using WebGL. I’ve also worked on teams to ship two games to Steam with Unreal Engine 5. My master's thesis focused on creating a Virtual Reality platformer with an in-game level editor using my custom C++ engine engine.


I’m passionate about content creation, and have created YouTube videos on programming content and my projects and experiences which have over 200k views. I’ve also worked at research labs and contributed to papers on bodily games using Electrical Muscle Stimulation (EMS) and Brain-Computer Interfaces (BCI) using Electroencephalography (EEG).

Experience

Dec 2025 - Present

id Software

Associate Game Development Automation and Stability Engineer

As an Associate Game Dev Automation and Stability Engineer, I'm working on tools used for automated testing in id Software's proprietary engine and on build systems to ensure stability.

C++ | Python

Mar 2023 - Jul 2023

Hearty Adventures in Food and Play (HAFP) Lab

Research Intern

The project involved the development of a smartphone game designed to encourage real-world activities that support human gut health. I contributed to and guided developers for the initial versions of the app, and later developed a new version with additional features and better usability as the sole developer. I also contributed to the design of the app to fit the research goals and provided feedback on the pictorial submitted to the Tangible Embodied Interaction (TEI) conference.

React (PWA) | Firebase

Aug 2022 - Feb 2023

Twilio

Software Engineer

I worked as a software engineer at Twilio India on the Auth team, where we developed tools and APIs for the Role-Based Access Control platform, which can be integrated into Twilio products.

Java (Vaadin, Dropwizard)

Feb 2022 - Jul 2022

MIT Media Lab (Fluid Interfaces)

Research Intern

Working on the KALM project, I contributed to the study of a neurofeedback training protocol for anxiety management using an electroencephalography (EEG) based Affective Brain-Computer Interface (aBCI). I was involved in the design and development of the protocol, running participant studies as well as literature review and writing work for this research.

Neuroelectrics Instrument Controller (NIC2) | Python | MNE | Unity | Empatica E4 | Psychopy | LabRecorder

Aug 2021 - Jan 2022

Exertion Games Lab

Research Intern

I worked on the design and development of social bodily games involving physical touch using Electrical Muscle Stimulation (EMS), a body actuating technology. I ran an independent pilot study that included brainstorming ideas for games, designing and prototyping these game systems, running participant trials, performing a literature review, and writing a short paper.

Arduino | React Native | Unity

Jun 2021 - Jul 2021

Twilio

Software Engineering Intern

I contributed to the Role-Based Access Control (RBAC) platform by developing front-end modules as well as API endpoints for the Access Manager Service (XMS).

Java (Vaadin, Dropwizard)

Personal Projects

NeoRey Game Engine and Editor

NeoRey Engine and Editor

NeoRey is my new custom engine with an editor built using ImGui. The engine uses ECS architecture and runtime reflection with header parsing for code generation from custom annotations for field serialization. The editor allows 2D and 3D editing with various components for lighting, physics and animation, and hot-reload for C++ game code DLLs.

C++ | DirectX 11 | ImGui

ArchiLeapVR

ArchiLeapVR

A first-person virtual reality platformer with an in-game level editor. The editor allows creation of custom maps by creating, translating, cloning, rotating and scaling entities with a custom binary file format for saving and loading maps. The editor also connects to perforce to automatically check out maps being edited.

Rey Engine (Custom C++ Game Engine)

C++ Game Engine

Rey Engine

My custom C++ game engine with a DirectX11 rendering pipeline and VR support using OpenXR. The engine has math and physics utilities, a UI System and other engine systems required for 2D and 3D games. I've developed several games using this engine.

C++ | DirectX11 | OpenXR

JS Game Engine

Rey Web Engine

My custom JavaScript game engine for developing web games. The engine uses a WebGL rendering pipeline and supports VR using WebXR. This is architected almost identical to my C++ game engine with differences to account for language differences between C++ and JavaScript.

JavaScript | WebGL

Vaporum

Vaporum

Vaporum is a networked turn-based strategy game using a Network System implemented in my custom C++ game engine with WinSock. It features a hex grid with 3D tank models along with movement animations and particle effects for attack and damage.

Rey Engine (Custom C++ Game Engine)

ReyTD

ReyTD

A Tower Defense game featuring six levels, nine enemy types and five tower types, with 3D model loading from OBJ files, data-driven content from XML, billboarded particle effects and a custom UI system.

Rey Engine (Custom C++ Game Engine)

SimpleMinerVR

SimpleMinerVR

A minecraft-style game containing an infinite deterministic world based on chunks, with the ability to place/dig blocks, save chunks to files, biome factors including rivers, oceans, deserts, ice and trees, all based on Perlin noise.

Rey Engine (Custom C++ Game Engine)

Doomenstein

Doomenstein

A first person shooter with 3D models loaded from OBJ files, directional lighting and shadow maps.

Rey Engine (Custom C++ Game Engine)

Collaborative Projects

Imvi: Echoes of Harmony

Imvi: Echoes of Harmony

Soar among the stars in Imvi: Echoes of Harmony, a third-person open-world experience that invites you to slow down. Harness the attractive & repulsive forces of Black & White Singularities to traverse and explore an ancient, wonder-filled world as you collect and revel in the memories of those who came before.

Unreal Engine 5

Fastival

Fastival

Race through an enchanting carnival and be on the lookout for wacky obstacles and cool shortcuts as you compete against up to three other friends in this cute and cartoony arcade racing game!

Unreal Engine 5

DonuTilt

DonuTilt

DonuTilt takes you to the magical world of donuts, ravaged by a jelly explosion. Help our Donut Hero navigate through the world by tilting the donut box or rotating it completely to change gravity in the donut world. Using a variety of sweet treats such as gumdrops, cookies, Pocky, and more, the Donut Hero must navigate the donut box to reach their Donut Friends!

Unity3D

YouTube Tutorials

I create YouTube tutorials for fellow programmers to learn new concepts and technologies. Here are the video series I have created till date.

Publications and Talks

DIS 2024 Paper

Shared Bodily Fusion: Leveraging Inter-Body Electrical Muscle Stimulation for Social Play

CHI 2024 Paper

Go-Go Biome: Evaluation of a Casual Game for Gut Health Engagement and Reflection

UIST 2023 Paper

Joie: a Joy-based BCI

UIST 2023 Demo

Demonstration of Joie: A Joy-based Brain-Computer Interface (BCI) with Wearable Skin Conformal Polymer Electrodes

CHIPlay 2023 Paper

Fused Spectatorship: Designing Bodily Experiences Where Spectators Become Players

CHIPlay 2022 Extended Abstracts (Work-in-Progress track)

TouchMate: Understanding the Design of Body Actuating Games using Physical Touch

QTalks about Quantum Games by QTurkey and QWorld

Gamifying Quantum Computation

AOICON 2020 72nd Annual Conference of the Association of Otolaryngologists of India

VTalk, An app for the Deaf