I reply fastest on email: shreyasnisal@gmail.com
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).
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)
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
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)
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
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 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)
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)
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)
A first person shooter with 3D models loaded from OBJ files, directional lighting and shadow maps.
Rey Engine (Custom C++ Game Engine)
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
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 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
I create YouTube tutorials for fellow programmers to learn new concepts and technologies. Here are the video series I have created till date.
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 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
AOICON 2020 72nd Annual Conference of the Association of Otolaryngologists of India
VTalk, An app for the Deaf