THANG HONG TO tthang@smu.edu 214.762.0177 http://guildhall.smu.edu/portfolio/thangto 7001 Hansell road # 2109 Plano, TX 75024 GAME EXPERIENCE PrimaeNoctis, Unreal Tournament 3 project August 2008 – September 2009 Programmer, 17-person team (3 programmers) * Implemented all custom components of game HUD * Implemented skills of all three different forms of main character * Implemented third-person and behind-shoulder camera and handled Xbox controllers * Implemented custom AI for enemies so that they know how to use their weapons effectively Elastiball, Unreal Tournament 3 project March 2009 - May 2009 Sole Programmer, 7-person team * Create new weapon with swing mechanic: player shoot and stick a rope at any objects in the game’s environment, swing around (player can control character in the air) * Implement custom game HUD * Work with artists and level designer in building the art packages and the game’s installer * Wrote technical design document Return of the NOM, 2D project October 2008 – December 2008 Sole Programmer, 3-person team * Programmed a 2D engine and game (scrolling platform, simulating forces, collision detection, alpha blending, fonts) * Integrated FMOD for music and sound using an abstract sound manager GAME TECHNOLOGY Master’s Project: In-game graphic user interface for AI programming August 2009 – January 2010 * Programmed a isometric 2D team-based action-RPG * Implemented a data driven design: monsters, magics… can be added by changing the data files * Coded a rule-based AI system, design a AI-rule definition file with real time loading * Created a HUD system to show the game’s info 3D Rendering Engine October 2008 – July 2009 * Coded a general interface and general data structures that connect transparently to both OpenGL and Direct3D (to the depth of programming HLSL and GL assembly shaders for per-pixel light, bump, and parallax mapping) * Developed and unit tested a math library (fixed point, 2D and 3D vectors, matrices, quaternions) * Built a QUAKE map loader (BSP, lightmaps, textures, Bezier curve patches) which does fast ray traces with the BSP * Coded an Importer and Exporter for 3DStudioMax files and a custom file format (includes models, textures). Optimal file loading with single read, compute perfect optimal bounding sphere of the model. * Design a logging system with several outputs: screen, console or files Terrain Rendering Engine April 2009 –May2009 * Created 4 algorithms for stiching patches so that there’re no holes in the terrain * Implemented quad-tree scene graph for culling terrain * Implemented dynamic Level of Detail and intrinsic detail * Implemented per-pixel light with bump map generated from the terrain’s height map * Created skybox around the terrain Directed Focus Study: Procedural generated dungeon March 2009 – May 2009 * Implemented graph layout drawing algorithms: Horizontal-Vertical drawing, recursive wind, force-directed * Implemented a portal-based scene graph * Coded several algorithms for generating random 2d shape * Created 3D dungeon includes rooms, hallways full textured with lighting Interpreted Scripting Language March 2009 – May 2009 * Wrote a grammar for a C-like syntax (if..else, switch, while, do..while, for, foreach) with weakly-typed variables (vector, string, integer, float) which have basic operators between them * Coded a lexical analyzer to create tokens from language use, a parser to build a tree from the token stream, and a compiler for converting the syntax tree to custom bytecode * Programmed a stack-based virtual machine to operate on the bytecode (supporting function call, local variables and recursion) * Integrate the scripting codes with game project’s codes EDUCATION The Guildhall at SMU * Master of Interactive Technology in Digital Game Development December 2009 * Specialization in Software Development * Current Overall GPA: 3.588 Vietnam National University, Hanoi, College of Technology July 2008 * Bachelor of Science in Computer Science * Overall GPA: 8.64 out of 10 SKILLS C/C++, C#, Java, Python, Unreal script, Java script, Assembly, DirectX 9, OpenGL 2.0, XNA, Win32, HLSL, GL Assembly, FMod (sound), TCP/IP, UDP, HTTP, lighting, BSP, portal system, scene graphs, debugging, object-oriented programming, design patterns, calculus, linear algebra, quaternion, numerical analysis, Newtonian dynamics, movement, collisions, numerical integration, cloth simulation, spring-mass-dampener systems, rigid body motion, particle systems, XML, HTML, Visual Studio 2008, Tortoise SVN, Microsoft Office (Word, Excel, PowerPoint), UnrealEngine 3, UnrealEd