Venkatesh Subramania Pillai
Senior Software Engineer, Unity
Passionate about architecture & programming systems, networks & graphics for games and game-engines.
SKILLS
Programming proficiency: C++ / C# / Python in that order.
Parallel programming: multi-threading / lock-free concurrent data structures / SIMD.
Authoring tools for content pipeline (Sprite-Shape, Sprite-Atlas, FBX, Collada etc..)
Network programming: client/server, peer-to-peer, hybrid networks for games and services.
EXPERIENCE
Unity, Singapore - Senior Software Engineer
July 2013 - Present
UTess 2D triangulation & refinement.
Sprite Shape
Sprite Atlas
Sprite Mask
Asynchronous texture upload
Multi-threaded mesh/sprite batching
Multi-threaded sprite skinning/rendering
SRP/Light batcher for 2D.
Multi-Display (Windows/Linux/Mac)
AssetDatabase Pre-V2 refactor and tons of other stuff.
Unpublished contributions include :
Unity WebCanvas (https://sites.google.com/a/unity3d.com/u-c2d/)
AssetDatabase V2 (ADB meta & binary in LMDB)
CAD Import
nVIDIA iRay PathTracer Support
Ubisoft, Singapore - Senior Programmer
April 2010 - Jun 2013
Ghost Recon Online (www.ghostrecononline.com)
Lead architect of a multi-player system with major focus on
Netcode to minimize latency and disconnects using hybrid topology.
Match-Making system : Client, Game server and Lobby server.
Designed and Implemented critical components including but not limited to:
File splitting, caching. (Also used by other Studios).
Graphics pipeline analysis and optimization.
Added tools for report/replay, logging, analysis and optimization.
EA, Singapore - Lead Engineer
July 2006 - March 2010
FIFA Online (http://fifa-online.easports.com)
Technical leadership for EA Singapore client team, effectively collaborated with EA Vancouver and other technology groups.
Designed a fully deterministic tournament and simulation engine.
Architect of communication and state layer for Client, Lobby server.
Re-Engineered and optimized client to meet low-end PC requirements.
Interfaces for rendering to external transparent gadgets.
Filesystem analysis and optimization for faster loading and patching.
FIFA Online Season 2 (http://www.eafifaonline2.com)
Systems Engineer responsible for core systems and multi-player aspects of the Game Client.
Design and implementation of real-time game rendering to video files.
Engineered online specific gameplay and network optimizations.
Implemented several game modes and an all new Away-alone-goalie mode.
Implemented fully replayable game save system for multiplayer modes.
Contributed to EA internal render library base.
NBA Street V3 Online (unpublished)
Systems and Rendering Engineer for the PC On-line port.
Porting game to meet low-spec requirements.
Create-a-baller and Create-a-court render systems.
Challenges mode multiplayer lobby system.
Implemented several multiplayer simulation and network tools.
VBeing, India - Lead Technology Programmer
October 2004 - July 2006
Vbeing Engine:
Lead Programmer of Engine team, that developed and supported all aspects of core technology for in-house game, tools & pipeline. Provided technical leadership and oversight. Significant personal contributions include:
Core architecture and implementation of a cross-platform renderer.
Implemented 3D DCC toolchain based on collada open standard.
Implemented unified scene graph architecture for Rendering, Physics & AI.
Researched and implemented a proprietary cache-aware stripification.
3D visualization plug-in for 3DSMax/Engine Interaction.
Sengoku : Age of War:
Implemented DirectX based rendering & assets pipeline.
Implemented an extensible particle engine.
Integrated D3DX based animation library and UI.
Marker Gnash:
Generalist Programmer responsible for game-play mechanics and presentation for the game that used the Lithtech engine.
Implemented several AI Actors and a complex path-finding system.
Implementation of terrain and vegetation renderer plug-ins.
Implemented fake lighting and particle systems.
Developed advanced radar Indicator systems and floating HUDs.
PERSONAL PROJECTS
Have been working on my own engine (https://sites.google.com/site/scvenkatesh/sciom).
Windows, Linux and Android runtime.
Threaded rendering for DirectX 7, 9, 11 OpenGL 2, 4 and GLES API.
Task scheduler with dependency graph.
Asset pipeline that supports data import through Collada/FBX.
ECS on C++ with HLSL style SIMD code.
Smart data stream supporting MsgPack, JSON and Binary.
Fully asynchronous file system & resource loading.
Skinned animation with blending/masking support.
Bullet / Tokamak physics integration.
Recast / Detour integration for navigation.
Games published in PCQuest magazine based on Borland Graphics Interface
Yogari (Nov 1999 issue)
SpaceCraze (Dec 2000 issue)
EDUCATION
Bharathidasan University, Trichy, India- Bachelor of Engineering
June 1997 - April 2001