Homepage of Arthur Yarwood
fubaby.com » Page 'Curriculum Vitae'

Curriculum Vitae

Arthur J. Yarwood

Personal Details

Address: East London
Email: arthur (at) fubaby (dot) com
Marital Status: Married
Driving Licence: Full, Clean UK Licence

Education

The Open University
Diploma in Mathematics Grade 2 pass Oct 2007
Xpertise, London
Microsoft Certified Implementing Replication Using MS SQL Server 2000 Not assessed Apr 2005
Microsoft Certified Programming MS SQL Server 2000 Not assessed May 2003
Bournemouth University
BA/(Hons) Computer Visualisation & Animation 1st Class June 2001
Shrewsbury College of Arts & Technology
BTEC Diploma in Foundation Studies Art & Design Pass June 1998
Shrewsbury Sixth Form College
Five A-Level’s: Design & Technology (A), Mathematics (A), Physics (A), Chemistry (B), General Studies (B) June 1997
Mary Webb Secondary School, Pontesbury
Ten GCSE’s: 4 x Grade A*, 1 x Grade A, 3 x Grade B, 1 x Grade C and 1 x Grade D. June 1995

Technical Skill Set

Mathematics, C/C++, C# .NET, Managed C++, STL, Boost, MFC, OpenGL, Perl/CGI, PHP/Pear, MySQL, MS SQL Server, Database Replication, Reporting Services, Maya API & MEL, XML, XML Schema, XPath, XSLT, HTML, CSS, dHTML, Javascript, Java, Linux admin (Redhat/Fedora), sh/bash, WiX, Photoshop.

Employment

Sony Computer Entertainment Europe – SingStar Team
Senior Tools Programmer October 2004 – Present
SingStar is a social singing game for the Playstation 2 and 3. It has a hectic release schedule and is massively localised, totalling 116 discs in 4 years, covering ’80s pop to Bollywood! The PS3 version also introduced an online store containing songs for download. My role was to design, develop and rollout a whole toolchain to aid the content creation, manage/version control it and then export/prepare assets ready for disc or online store.

  • Analising team workflow and requirements to design optimal tool interfaces for metadata entry and content creation.
  • Setup, design and maintain SQL Server database as core data storage for game metadata, assets and versioning information, with most business logic implemented/enforced with stored proc, view, funcs, triggers and contraints.
  • Work with game engine programmers to formulate specification of exported data and then implement and test it.
  • Implemented SQL replication to facilitate outsourcing of content creation toolchain to another studio.

Throughout my time on the team I have used a broad set of technologies, focusing on a ‘best tool for the job’ approach, even if it meant learning it on the job.

  • Main DB interface is a C++/MFC app called SAM, featuring some custom ActiveX controls. Used by entire development team and outsourced studios (via replicated DB or as Citrix Desktop app), deployed as an MSI installer generated using WiX. Used to enter all metadata and upload content, sanity check it and parse key infomation from content e.g. using Quicktime SDK to get video MOV dimensions, framerate, encoder etc.
  • Plugin DLL exporters to prepare songs for particular platforms. Mainly involving heavy XML generation (libXML2), transliteration and image, music and video conversion/encoding/balancing/muxing (mostly OSS apps like FreeImage, mplayer, ffmpeg etc spawned in parallel).
  • Each export finishes with an XSchema validation stage and various XSLT transforms to convert dataset into XML Spreadsheet report summaries.
  • SQL Server optimisation, pinpointing columns for indexing, tracing query bottle necks by studying execution plans, spotting agressive row locking and maintaing table stats and general DB integrity.
  • SQL Server Reporting Services (SSRS) to provide stats on all song catalogue and highlight current outstanding workflow.
  • Apache/PHP/Pear mini intranet site to manage song evaluation process, prior to songs entering full development.
Sony Computer Entertainment Europe – Getaway Team
Tools Programmer July 2001 – October 2004
The Getaway is a brutal, cinematic game, set within the seedy underground of the London gangster scene. It is renowned for having an accurate model of London running on a Playstation 2. I was one of the tools programmers on the first Getaway and the sequel Black Monday.
The majority of game content was created in Alias Maya, for which a large set of tools were developed, including custom nodes, plugins and MEL scripts. On joining the team the Maya API and scripting language were new to me, but after 3 years I had them mastered.
Due to the immense size of the data set (nearly all of Tube Zone 1 of London!), a custom asset management system was developed for Maya, centred around an SQL database, letting artists work on small chunks of the map.
On the sequel Black Monday, my work was focused on the character animation toolchain. The game had approximately 5000 individual character animations for all the player and NPC (Non Player Character) moves. Many were layers for superimposing on top of other animations. I implemented a unique system for storing these within an SQL database, where animation data was saved to/from Maya and the database with custom plugins and scripts. This abstraction I designed let other tools programmers write similar plugins for other packages like MotionBuilder.
Further down the tool chain, a distributed process would compress all the animations and export various lookup tables for the game to reference the correct animation and its layers for the required move.
My other work on the project involved countless scripts and tools that batch processed the entire map to correct bugs (e.g. non planar portals), swap object references (to help rendering load) etc.
Top of page / Subscribe to new Entries (RSS)