Welcome to Milo Online

    After something like ten or maybe seven years of the chalkboard motif, I've decided to totally redesign my site -- mainly because the code for it was so ugly.

    Apart from some stuff in the "About" section, there isn't much to see here, at the moment.  I'm just letting you know.

    You can listen to some of my favorite music while you're waiting for me to fill up this site (assuming you've got Adobe Flash installed in your web browser, of course.)


-- Milo
    Like I wrote on the front page: Not much to see, right now.

    I am kind of in the middle of something, but I'm not in the mood to go on about it just yet.
    So, what would you like to know?


About you.

About your work.

Who made your site?

What's this thing that looks like a tree?


    Wow.  OK, how much time do you have?

    Actually, I'm not quite ready to get into all that.  I'll go on about myself some other time.



OK.
(Résumé available here)
(Letter of recommendation available here)
    I am a computer programmer who professionally began his trade as a computer graphics technician for video games.  I developed work pipelines for artists, and served as a liaison between the art and programming departments of gaming companies.  I acted as a technical director and a buffer between left-brained and right- brained personnel; from the art department's point of view, I obviated their having to deal with technical issues by (1) explaining complex tasks to them in artistic terms, (2) creating tools that performed the more mundane parts of their jobs and accelerated the rate at which they could create assets, (3) taking on highly technical graphics- related art tasks myself, and (4) mentoring artists who had yet to grasp technical concepts with which they needed to be familiar.

    From the programming department's perspective, I knew enough about what they did that I could be trusted to engineer the artists' workflows such that the programmers got graphics that they could use, and in a timely fashion.  (Of course, getting things done on time is largely dependent on good management, which any experienced video game developer will tell you is probably scarcer than one can reasonably expect.)  I was also the person who programmers contacted when they had special needs or ad hoc tasks that just couldn't wait, and that they themselves didn't have the time or the artistic skill to perform.

    More recently, I have acted as a generalist and tools programmer.  While I have always been tasked as the person chiefly responsible for authoring plug-ins and scripts for production apps like Maya and 3ds Max, roughly 75% of the work that I've done over the past six years has been .NET programming (chiefly in C#, with some F# for the code-behind in several applications): WPF GUI apps, console tools, Excel add-ins, Silverlight apps, TCP/IP client/server libraries, cloud programming (e.g. Google API -- composing HTTP requests, sending and receiving data to/from Google Drive, etc.), SQL database set-up, querying and manipulation, and other applications.  As well, I have experience integrating C++ APIs into full-blown C++ engines; for example, making the FaceGen low-level graphics API work with Sony's 3D graphics engine, PhyreEngine, which involved mostly real-time manipulation of geometry at the vertex level, and assorted image processing algorithms.

    1991 to 1995
    My experience as a CG tech goes back to the early 90s, when I worked on the first couple of NFL GameDay and NCAA GameBreaker American football video games (which wound up being the best-selling sports titles for Sony's first PlayStation).  In addition to my standard duties of creating environmental graphics (I built and textured most of the stadiums and playing fields) and all of the football helmets, team logos, team fonts, and playbook drawings, I also generated weather effects.  This was all back in my Alias PowerAnimator days.


    1995 to 2002
    My programming skills came into play on my next big project, which was the hit MMORPG EverQuest, on which project I was the sole character modeler, UV mapper, and rigger.  During my seven-year stint on EQ, which spanned development of the original release and the first three expansions, I authored numerous MAXScripts and other tools, which were used by designers and artists alike to populate zones, automatically deform meshes, and other tasks.  My main tools during this period were PowerAnimator and Maya (modeling and scripting), 3D Studio MAX (UV mapping, rigging, and scripting), and the WIL programming language (non-3DS MAX auxiliary tools).  It was during this period that I learned Java, MEL, and MAXScript.


    2002 to 2007
    After EQ, I left Sony Online Entertainment to work as a founding member of Sigil Games Online.  I was the character art techincal guru for Vanguard: Saga of Heroes; I developed the character art pipeline from the ground up (everything from workflows to naming conventions to file organization), and created and maintained a slew of character art tools (and a lot of documentation that few people bothered to read).  I also provided assistance to the coding department in creating tools for our character artists.  During this five-year period, I learned C++, and I wrote countless MEL scripts and numerous Maya API plug-ins, some of which I posted to CreativeCrash (back when it was called HighEnd3D).


    2007 to 2010
    When Sigil Games Online went bust, I took a five-month hiatus to spend time with my wife and our newborn first child, and to devote significant time to a big project that I'd been considering for some time (and on which I still work in my spare time, of which there is precious little).  My next employer was Red 5 Studios, an MMO outfit located in Orange County.  I was employed as the studio's sole art technician, and I spent most of my time there writing MaxScripts and C++ plug-ins for 3D Studio MAX.  During that time, I also expanded my programming experience to include C#, which became my favorite language pretty much instantly (although my love for it has since become eclipsed by my passion for F#, which I picked up shortly after starting my next gig).


    2010 to 2014
    My last employer was Kung Fu Factory, where I was a senior programmer.  My duties comprised loads of C#, MaxScript, and Python tool development (including a Morpheme/Havok Behavior-like animation state transitional tool that's used by game designers), the integration of FaceGen into Sony's PhyreEngine via the FaceGen C++ API, the development of numerous .NET WPF GUI applications (including Silverlight apps, which ran on both Windows and Mac OS workstations), console tools, technical assistance and pipeline advisement for our art leads, and a little proactive SQL database set-up, management, and implementation (with an eye toward improving the efficiency of KFF's art pipelines).  In my private moments, I fiended on the .NET language F#, which remains my favorite programming language to this day, and which I eventually incorporated into my work for the company during the development of several .NET tools and libraries.

Here's a glowing letter of recommendation from the president of Kung Fu Factory.


    You can see some of my work in action, here:




.NET Apps Automatic deformation Animation Facial deformation Miscellaneous Maya Java
(Oops!  To see these media, you need to install version 9 or later of Adobe's Flash plug-in, and turn on JavaScript support in your web browser.)

Click image/video or play/pause button to stop/resume playback.
Full-body character models in Maya demos by Den Beauvais, property of Sony Online Entertainment.



    Other stuff

    JsonEdit, the out-of-browser Silverlight app featured in the demo reel, may be installed at this link.  (After the progress counter reaches 100%, right-click the page and select the installation option.)



Thanks.
    I did.

    Well, most of it, anyway; I designed it, I created the graphics, and I programmed it (HTML, JavaScript, CSS).

    The image and video player is LongTail Video's highly versatile and overall brilliant Flash player, which employs Geoff Stearns' SWFObject code.



Thanks.
    It's a drawing of a tree.



Ah.

Yeah, but what does it signify?
    *Shrug*  My wife studied psychology in school.  She once asked me to draw a tree, so I did.



Whatever.
Milo D. Cooper
Programmer, CG technician, CG artist, and web site designer

cooper.milo@gmail.com
LOADING...
Home.

News.

About.

Contact.