I am a Software Engineer with 5 years of work experience. My areas of interests are Games, Computer Graphics, VR/AR and Creative Coding.
I am currently working as a Senior Graphics Enginner at ShareChat, building a mobile first graphics library that will power ShareChat and Moj's content creator ecosystem. Checkout my recent Tech Blog Posts on Medium.
Architectured and developed 3D rendering pipeline for shutter, a cross platform light weight graphics SDK based on OpenGL and Metal. It powers the rendering of sharechat’s Motion Video, Video Editor and Camera.
Close collaboration with Product, Computer Vision, Design and App teams.
Handled the end to end software release process of the SDK.
📸 Camera SDK:
Led the implementation of 3D faceAR filters. Built a scalable pipeline where the designers can create numerous effects/filters and Android/iOS users can create content. Similar to Instagram/Snapchat’s filters.
Added support for various types of effects/filters namely, Face3D overlay, Facemask, FaceMorph, Image/Video Overlay etc.
Maintained close communication with the product team to identify and prioritize important features that drive user engagement.
Worked on a range of Image Processing algorithms for face smoothening, sharpening to improve the camera pipeline.
🏆 Impact:
Camera SDK scaled to 100% of ShareChat users.
New revenue streams opened up as brands use lenses for Marketing/Advertisements.
**🥇Achievements: **
Awarded ‘Ace of initative’ for leading the team and proactively improving the performance of filters.
Cloud gaming in case of VR devices requires low latency. To minimise the reprojection error, I worked on designing a novel real-time depth compression algorithm and quality evaluation technique.
The proposed solution reduces the judder, and hence improves the visual quality.
Right from literature survey, till the implementation and validation, I played a key role in designing the algorithm and the end to end system working on phone-HMD split VR.
Patent: S20210358219A1 Methods and apparatus for atlas management of augmented reality content.
Patent: WO2021226535A1 Multi-layer reprojection techniques for augmented reality
Engineer [Nov’18 - Oct’20]
Worked on building features and optimising an in house Unreal Engine game built on top of Remote Rendering framework for VR.
Made improvements to the asset pipeline resulting in lower shader compile time and improved frame-rate.
Conceptualised and built QArena: XR Home application using Unity3D
Integrated the application with Qualcomm’s perception API. Tested and benchmarked the app on Nreal glasses. The user is able to place virtual objects on real world geometry.
Temporal and Spatial consistent light estimation: Built an end to end automated synthetic data generation module using Blender and python that generated 2 lac+ training data-points in a few weeks. A camera pose file, light settings, scene settings can be fed to the module to generate stereo, panoramic images along with depth buffer.
Achievements:
QualStar award for building a novel Augmented Reality solution for QBuzz 2019. Reached top 5 among 250+ applications in QMaker’s Challenge. The system captures a live point cloud of the user and streams it to mobile AR device. The capture-to-render latency is as low as 1ms. Inspired from live holograms as seen in Star Wars and Avengers!
Fiverr
Game Programmer [Aug’18 - Nov’18]
Projects include a VR game, a platformer and Architectural Visualizations. Project Reel
Gained Level 1 seller title by maintaining consistent 5 star ratings on 23
consecutive game development orders in a time span of 3 months.
Responsibilities: getting client requirements, providing cost projections and timelines, creating game design documents, collaborating with art team on asset requirements.
Worked on core gameplay features, AI, UI, and Animation Programming.
Used the client-server API of Unreal Engine to build Multiplayer gameplay features for the proprietary collaborative VR framework, Georbis Play.
Handled the complete Animation Programming pipeline for Snow and
Avalanche simulator, a product build upon Georbis Play.
Integrated full body tracking, with HTC Vive for the framework.
Collaborated with technical art and 3d modelling team to fix framerate issues, and to build and integrate optimized assets for the game.
Graphics Engineer Internship [May’16 - July’16]
Assisted the development of Android version of COOLVR, a hotwheels style
track builder game for Samsung GearVR using Unreal Engine 4.
Received a Pre-Placement Offer.
Projects
RgbGuy Youtube Channel
My Personal Tech Channel where I post my experiments.
OpenGL C++ based render
Built a cross platform OpenGL renderer with features like model loading, lighting, texturing, materials, camera movement.
Added ImGUI support
Azgar - Classic Snake 2D
AZGAR is a recreation of classic Snake 2d game.
It’s made using OPENGL and C++.
Mawn: Short Indie Horror Game
I worked as the sole programmer in a team of 5 for this short horror indie game.
The game was well received by the audience, and was covered in multiple youtube channels and blogs.
Stretchy Clown: Infinite Runner
My Submission for Mashup game jam 2020 hosted on itch.io. Built this infinite runner in 48 hours.. Ranked #6 in Audio, #12 in Fun, #16 in Design out of 126 entries. Based on theme ‘size matters’.
Avalanche Rescue Simulator: Unreal Engine VR
Multiplayer VR game built using Unreal Engine
Worked as one of the lead developers for building a VR based training solution for the Snow and Avalanche Study Establishment (SASE), Chandigarh
The terrain is generated from real life data. Various events can be triggerd without warning so that the person gradually learns to deal with these situations in a risk free setting.
The trainer can see and monitor the performance of the trainee. Based on the actions taken by the trainee in the virtual environment, their skill level can be mapped.
Save Ginger: Unreal Engine VR
Save Ginger is a VR game, gives a super immersive experience with chills and thrills as the player ventures on a scintillating journey to rescue a cat, which manages to get stuck in the most adventurous places to make the rescue an experience to conquer the fear of heights.
Handling a derailed crane in order to place it back on track is a long procedure. At VizExperts, I had the opportunity to work as the Lead Developer for this POC. Railway Crane Simulator is a multiplayer VR Simulation where players can join collaboratively and operate to place a derailed train bogie back on track.
It demonstrates the protocol that is essential for executing the process. The crane can be controlled using a Physical Joystick. This makes the player give a higher level of immersion that makes his feel as if he is operating the crane physically. This application was built on Unreal Engine.
Blow Bubble VR: Unity
Bubble Burst is a gamified application that uses the Audio Library of Unity3d.
The player has a blowing straw in one hand and a chinese fan in the other hand. The application detects the player voice intensity and forms bubble when the player blows. The player can then use the chinese fan to move the bubbles. The bubbles can be blown towards the butterflies to catch them.
Generative Art Experiments
I love building generative art using OpenFrameWorks and C++.