Wednesday, February 20, 2008

The XNA Game Studio AI Challenge (or, The Art of Doing a Thing)

Think arrangement. Coordination. A Thing. You're with me, right?

Qu'est-ce que c'est? You're right – I'll explain.

Seats. Computers. Network cable. TVs. Signs. Hundreds of spectators. It wasn't that long ago that I looked at these elements in a disparate way – took the glue of the thing out, factored it right out – and saw instead a discrete point where I fit. Where the specific set of skills met a specific criterion for applying, it glowed, it said plug in. Beyond that, it was silent. No pushing beyond, no coordination to bigger, better things.

That worked for about two years, maybe three.

It started simple. I planned parties at my place. Made notes on the whiteboard about who was bringing the "lite" beer, the bratwursts, made question marks by the people that were tentative – I ended up with best-case worst-case counts and food arrangements for my own birthday party, because I wanted that kind of organization. No cracks, no places where people would run into a problem they couldn't solve and look around with that lost expression that just screams out that they're just not feelin' it.

I knew it then, I was talking about putting together a Thing. Let's step back and define this.

thing (ˈthiŋ): noun. a matter of concern what takes a certain size (t) of what-have-you, a length of time beyond x whenever, a given critical whatszit (y), and z wrangling of human beings to Make It Go.

Examples of a Thing: Shuttle launch, ladder badminton tournament, three-family Christmas, rock concert.

Examples of Not a Thing: Calling your masseuse, planting a flower (single), sending a Thanksgiving card, drawing a dragon (poorly).

So, sailing: that's a Thing. The instant I stepped into the O'Day 27 with the kitchenette you just didn't want to touch, backwards and missing instruments, smoky outboard engine, I knew something was going to happen with me. I imagined bigger boats, week-long treks, meals, and unforgettable evenings under the spell of sunsets. I spent money, I spent time, I passed tests, and before a year was out, I was hip-deep in self-made Visio charts, planning Bahamian cruises, San Juan adventures, and every single one of my one-hundred cruises since that day was officially a Thing.

And there was last year's GDC, and Europe, and all the workshops in between with their kickoffs and their checkpoints and their post-mortems, these, they were Things.

Today, it's a brand-new challenge, two months in the making, for this year's Game Developers Conference here in San Francisco. And I'm pleased to report that, once again, we're talking on the order of a Thing. The XNA Game Studio AI Challenge.

In Closure in Copenhagen, I alluded that it was the power of consensus that drove it home for me; XNA had earned its stripes by the gauntlet of the Community – through fire and flame, XNA had been stretched, torn apart, beat into every shape, rolled flat, and ultimately came out a winner – a genuine What People Want.

The XNA Game Studio AI Challenge was a push forward on that concept – what can we bring that leverages XNA that's got appeal – developer appeal, crowd appeal, something for everyone?

Without taking too much of your time, I'll tell you that they called me up on this one. Told me to go be a PM (Program Manager) on this for a while. Today was our first competition day at GDC, and it's been an amazing ride so far. Our first day we had hundreds of visitors, thirty-two competitors, and eight finalists with amazing AI bots that drove the crowd wild. And, we now have a full slate of competitors signed up for tomorrow – all remaining thirty-two spots are completely booked.

I figure I'm posting this as not only a plug for the continued success of XNA as a platform, but also as a personal touchstone as I realize that a PM's mantra – for me, anyway – really comes down to being the person that coordinates, administers, and seeks constant improvement, and their unit of currency – that atomic count of what they live and die by – is a Thing.

Can I put together a Thing? Can I Make it Go? While the jury's not in on the endgame – there's still all day tomorrow and the Finals tomorrow night – this Thing does indeed Go. And that makes me happy, it makes me confident, it makes me want to continue to reach higher, broader, bigger.

To all that made this first day spectacular – including our competitors and spectators – thank you! See you tomorrow!

Labels: , , , , , ,

Tuesday, December 11, 2007

XNA European Tour 2007: Videos from Belgium and Finland Available

To those that didn't get a chance to attend the XNA Game Studio European Tour, never fear. Our partners around Europe are finalizing and uploading the recorded sessions so you can view them and learn all about XNA as if you were right there.

I'm proud to announce two such sessions are now available for you to view; the first comes from our partners in Belgium, the second from our partners in Finland.

Belgium

The Belgium sessions are available in Silverlight format only, and require a few clicks to subscribe to MSDN Chopsticks.

Democratization of Game Development - Dave Mitchell
Build a Game in 60 Minutes - Charles Cox
XNA 2.0 Deep Dive - Charles Cox
Future View and Call to Action - Luc Van de Velde
Benelux Game Initiative - Tommy Goffin

Finland

The Finland sessions are all available in non-Silverlight format, however: the coding sessions are available in a Silverlight-enhanced format that seperates out the code and the speaker (that's me). I highly recommend the Silverlight version.

Democratization of Game Development - Dave Mitchell
Making Games for a Living - Jyri 'Jay' Ranki
Build a Game in 60 Minutes - Charles Cox - Watch in Silverlight!
XNA 2.0 Deep Dive - Charles Cox - Watch in Silverlight!


Enjoy, and I'll be bringing you more as they arrive!

Labels: , , , , , ,

Sunday, December 09, 2007

XNA Game Studio European Tour 2007 - Photos Now Online

The collection of photos I and others took for the XNA Game Studio European Tour 2007 is now available on Flickr:

http://www.flickr.com/photos/agentcox/collections/72157603421195725/

Enjoy!

Labels: , , , ,

Tuesday, December 04, 2007

Europe, Day 8: Closure in Copenhagen

My mind’s reflection centers are rapidly closing down – the event is over. From its start in Dublin, Ireland, and now closing the last two days in Helsinki, Finland and Copenhagen, Denmark, the XNA Game Studio European Tour 2007 has been an unprecedented success.

There are blogs and forum postings detailing community reactions in almost every venue. We are headed to Tivoli Gardens to celebrate this evening, and tomorrow morning at 10 AM I board a plane for London, and then for home.

It's not unlike me to get reflective at times like this.

Helsinki, Yesterday

We are standing on the steps of the cathedral. Helsinki is under a gray sky, a grainy colloid of old mixed with new. Gravel sprinkled everywhere melts the recent snowfall.

I am awake. After Dreamhack, it has been almost impossible to regain any strength to pull through, but I finally have what I need – fresh air, and the proximity of a culture that’s more than just the here, the now, the digital.

It was years ago, early on in my career in Microsoft that I began to realize that I could live only short sketches of life surrounded by the sterile triumvirate of glass, black, and chrome designs that signal the apogee of the modern age. For the first time in what felt like years, I stepped out among the trees and saw them not as resources, but as symbioses, variables in an equation owned not by us, but by the larger structure.

I realize the same feeling is upon me – and satisfied – on the steps of the Helsinki Cathedral. We are games, games are us, but it is more than we’re concerned with at the moment.

We work long hours. We suffer intolerable crunches. We are prone to shortsightedness. Too often, we make ourselves – or others – victims of our inability to see integration in everything we do; how what we create today may affect so many tomorrow.

The cathedral’s insides are handsome, sparse, functional. They bring with them not the unstructured sketches of early worship, or the gilded, dyed tones of later hierarchical religions, but a sense of form and scale. An engineer’s cathedral, perhaps.

Mathematics, logic – these things intersect the planes of belief and culture – perhaps no more visibly so than in games. As we look forward to a day of free expression in interactive form, for all, not just through the filters of top-down production, it is on my mind to understand that games have a point.

It’s not that they didn’t before. It’s just that more people are listening.

Helsinki-Vantaa Airport

The snow is blowing sideways. Deicing vehicles are spraying down the waiting aircraft, including our Avro jet to Copenhagen.

I remember the social atmosphere at the University of Helsinki. The scholastic home, of course, of Linus Torvalds – the driving force behind Linux. We, as Microsoft, were an orthogonal concept – the very definition of an enemy force, well behind their lines.

The students were open-minded. They did not jeer, they did not shout us down, they did not reject us. There have been so many ideas I have seen – and some that I have worked on – that have short-sighted goals in mind: goals of domination, offense, position-jockeying, gamesmanship. These, I feel, would have been called out and rejected, and rightly so. But I feel that what I am doing now represents a belief in something that transcends these short-sighted tactics and focuses on serving a new and emerging need that people genuinely want – if only in small baby steps.

XNA Game Studio was not for everyone. It was clear enough through this tour that not everyone wants to be a game developer, and in the group of those that do, not everyone wants to use XNA Game Studio. This is good, this is normal, this is healthy. This does not scream the needle’s far-right peg of quackery, nor does it seem a deflated and uninteresting concept when played in front of the European stage.

I can say then, that XNA is building and moving a resource that will become part of the larger ecosystem of games, and of the larger world we live, work, and play in. It is growing its own legs now, and the community is allowing it the space to continue to thrive.

For that, for the reception I have received in every country, in every venue, and for what that courtesy indicates – an acceptance of a product that is on the way toward passing the global metric for what we believe to be genuinely good for our future – I thank you; it reinforces that this product is worth working on, worth tweaking, worth restructuring as we learn more about the world around us, both digital and corporeal.

As one of the many messengers to bring the news and teach the platform: Ireland, Austria, Italy, Belgium, Sweden, Finland, Denmark – thank you for everything.

Now let’s get to work and build some games!

Labels: , , , , , , ,

Sunday, December 02, 2007

Europe, Day 6: The City of Lost Children

Sweden’s capitol city reappears quickly. It’s one of those kinds of places. Routes on the E40 surface a variety of cleverly-lit almostcities so that a sleep-deprived brain might mistake a cluster of off-highway business conference centers for their hotel, or at the very least, call the occasional disorienting lights of a petrol station a temporary home. Before you can decide on which error to make, you are rapidly boxed in on all sides by the brick rises of old canal-hugger buildings repainted and fresh with adaptive neon and you realize you’ve made it – you’re in Stockholm. You’re just not quite sure when it happened.

Nearly midnight, and we’re in Stockholm again. This is two days of Sweden, seven hours of driving, forty-eight hours without sleep.

Alright, back up.


Stockholm, Earlier

“I’ve got good news.”
Oh, great.

Jonkoping, Later that Night

There are 12,000 people here. Elmia, the conference center, looks like the remains of an old cold war air base that cracked on one side and let commerce flood in. Hotels, gas stations, electronics stores and other unidentifiable businesses bloom outward from the central conference hangars and hold an uneasy perimeter against the assault from the main city of Jonkoping, in southern Sweden.

It is one-thirty in the morning. We have driven three and a half hours from Stockholm, through dead-dark forests, to reach this, a European technological Mecca – a retreat for the reclusive, a worship for electronic wanderers. Inside Elmia’s vast structure is Dreamhack, a twice-yearly gaming party with over ten thousand attendees.

In eight hours, I’m supposed to get up in front of them – all of them – and talk.

About what?

Earlier, at the KTH College in Stockholm, we had an audience of one-hundred, and they were awake and interested. Now, I can’t guarantee anything. We’re in territory we do not understand, with people that did not sign up to see us. We could be chewed up and spit out by this thing.

9:00 AM

I’m on stage. A widemouth camera is pointed at me. My laptop is wired into a million different sockets and my head is clamped tight by a viselike boom microphone headset.

I don’t think about the watts. I don’t think about the screens and the PA systems wired into the single microphone that’s listening to me breathe, listening to my stomach growling, listening to my nose whistle in the dry air.

The lights are blinding; there’s no data left to gather. Thousands are in front of me, spread out in the main hangar, their computers stacked and shoved together in three-by-three foot spaces on giant wooden tables. Tens of thousands of cans of Jolt cola, hundreds of thousands of gallons of water, millions of watts of power, billions of BTUs of heat, trillions of bits of information being sent every second, all for these kids.

Who are they?

Stay, Don't Leave Me Mama

They’re doing push-ups on stage. It seems like nobody cares, but the Swedish military is having a push-up contest. It’s broadcast on every screen.

They’re having a Guitar Hero competition. There are shouts. Hollers, snatches of songs, bawdy shanties and cat calls, yelled by someone on the far end of the hangar. A reply, bellowed out from the other side. Someone builds a tower of Jolt cola and attaches a blinking beacon.

There are no lights in the hangar spaces, just the glow of thousands of computer screens. World of Warcraft, Counter-Strike, file sharing, movies, porn. The arrangements of pixels on the screen average out over distance, and provide a constant ambient color to the world bounded by corrugated steel and concrete. The color is blue. It’s just between the gray slate of an Atlantic swell, and the indigo of a late afternoon clearing sky, and it reflects off of everything, off of everyone. Everyone’s skin is blue. Everyone’s eyes are blue.

I’m walking by an impromptu rave. The speaker is shouting in Swedish.

“They want to get on YouTube,” Michel says to me.

The hangar crowds pull out their cell phones and wave them in air. Glowsticks join in. An air horn goes off and the crowds dance in the view of the camera, bouncing up and down. The music is heavy, unyielding, at heart-resetting frequencies and jarring volumes. It surrounds everything and claws at my ears, my eyes, my skin. I look to my left, and a gamer is asleep, headphones cradling his ears, his face cradled in his arms, resting atop his keyboard.

As I walk through the hangars, I remind myself of what I was – and what I thought I was – when I was younger. These children are seventeen, fifteen, even younger. I don’t feel old enough to talk to them with any authority, not young enough to join in. But I know why they do it. And I realize I would never want to take this away from them.

There is a replica of a Saab Gripen jet at one corner. Kids line up a hundred deep to eat at an Army mobile kitchen trailer. Booths line the lit hallways between the hangars. Nvidia, Intel, Microsoft – they’re all here. But these are incidentals. In the hangars, all of the games they play on the network – many I haven’t seen in years – the bits they stream every second, are the stars. They are the fabric of these three days, the reason and the meaning for everything.

I think of the network traffic.

playerOne:move:left.playerTwo:move:right.playerTwo:kills:playerOne.

This language says more than any of us could about the event. And as I see it in front of me, it becomes obvious: this is not for us. They came here to get away from us.

But I’m here to talk to them. It’s going to happen whether they – or I – like it or not.

As I think about it, I ignore a caution sign and duck into another dark room, expecting a hangar full of computers, but something strikes me strangely about it. Before I realize what it is – I’m not hearing music, not seeing blue – I am surrounded. Quietly immobilized. I stand and look around me.

The hanger has no computers. No desks. No booths. No lights. The hangar is full of sleeping bags, air mattresses, blankets. There is no sound but the rain on the metal roof. On every side, stretching out for a quarter mile, lay thousands of sleeping children. Two teenagers embrace atop their blanket. Another, asleep holding a fading glowstick. A woman pushes a baby stroller around a circular path marked around a set of mattresses. We pass each other soundlessly as I step over the bodies of the sleeping.

A Gestalt

I am on stage. There is nothing left to gather now. There is nothing left to say. I won’t even explain my source code as I type it. I have a game to make in thirty minutes on stage. It will be broadcast to ten-thousand teenagers.

I plug in my iPod, wired to the sound system, cue up my own music, and begin.

There is applause. It’s all done, all on camera. I turn off my iPod and back away.

There is a contest afterward. Faces, handshakes, smiles. I give away an Xbox 360. When it is over, there is nobody around. They are busy. I am left to my own. I am tired. I have not slept for two days.

I go to the dark hangar and find an empty spot between the mattresses in the field of sleeping children. I take off my shoes, place them under my head, and fall asleep.

Labels: , , , , , , , ,

Thursday, November 29, 2007

Europe, Day 4: The Stockholm Retrospective

Midnight again. I am in Sweden. This fact is not lost on me; it drifts about, echoing with bass tide, thumping from the techno lounge downstairs. I am in a tiny room of all black and red and silver things – I am swimming in a steel martini.

Cold blues and abrasive chromes flirt with cigarette smoke and procedurally-painted pressboards and the result is City, version one-point-one. For some reason, I have no desire to know this hotel any better than I already do.


The literature about light and colors, filled with professional “edgy” photos and quotes from designers I’ll never meet is not comforting. I’ve seen this motif before. It is hiding something.

“Part of it is,” Dave says on the taxi ride in, “I go to these places and it feels like home. I don’t want it to feel like home.”

He’s right. The road corridor up ahead has familiar lighting – the lit sky paths curve in familiar ways as the road takes gentle turns past semi-commercial zones, residential areas pulled just beyond the crest of the greenbelt and away, leaving off-exit fast food and Suzuki dealerships as the only evidence of life.

It is the geometry of home. Why can’t I feel at home here?

Just hours ago I was in Belgium, in a hotel very similar to this one. Modern. Small. Hotel Ve, in Mechelen. And yet, it was very different. A converted fish-smoking factory, the smell is still there if you take the stairs. The hallways are cramped. I even scraped a chunk of my hand off on the unfinished door jamb –the wood splinters left over still irritate whenever I find them.

And yet I felt genuinely at home there. I felt a compulsion to spend the rest of my life in Mechelen, Belgium. It was a city that kept history – kept itself – and still made room and time and respect for the modern and contemporary, and for that concession to both the past and the future I felt grateful enough to want to pack up my belongings and stay forever.

Still, paradise has a price. Today’s session felt difficult: the Belgian audiences are sharp, reserved, and difficult for a person like me – me who feeds off of the energy of the crowd – to integrate with. Each session was an attempt to win new hearts and minds, and while I did not get the outward response I was hoping, ala Milan or Dublin, the evaluation forms coming in are indicating very good news.

So, it’s cultural.

“You must not be happy with how your dollar is doing,” Hans says as we try to check in. The Nordic Sea Hotel’s Ice Bar is well-known. Cyan light refracts through the open window into the icy room and cracks across the floor. I study it, and wait for Hans to finish. He’s not done yet.

“I travel to the US quite a bit,” he says proudly. “It’s so cheap there.”

In Belgium, as now, I realize, sometimes in a harsh way, that I am just a visitor here. I do not live in these countries. I am not afforded the rights of those that do; I am at the whims of the host countries and their inhabitants first and foremost, and it is their attention – positive or negative – that makes for my success, or my failure.

In a nod to Hans, it’s like this: my cultural currency doesn’t buy much here. I am an American, and that’s an outsider, and as a Microsoft employee, a potential technical enemy. It’s frightening to consider it from that perspective, and in microcosm, it’s humbling to see both ways, cultural differences aside: either the group fosters your growth in them and accepts you – or they don’t.

And I consider all of that, here in my temporary bed in Stockholm, and realize: these past four days I have been fortunate beyond fortune to speak to some of the warmest, most welcoming, most excited and inspired people I have ever met. They didn’t have to give me their attention. They didn’t have to give me their time.

But they gave it anyway. In Ireland, in Austria, in Italy, and now in Belgium, they listened. They opened up, they gave up their time and their pursuits to give me a chance. I was thrown to the mercy of that crowd, and they set me – an American and a first-timer in Europe – down gently.
For those that are reading this, and I know there are a few – I’ve even gotten comments from some of you – I’ll say this, as I said it to my Milan audience:

Grazie.

Danke.

Merci.

A million times over. Thank you.

Halfway there.

Labels: , , , , ,

Sunday, November 25, 2007

Europe, Day 0A: Aerial Farming

The Club World section of a British Airways 747 looks a little bit like a corporate cubicle outlay – gut-high partitions separate alternating bow-and-stern facing seat arrangements in a sort of transverse Air Force kind of way – pilot never notices navigator, and so on – dividers ensure you don’t have to see your one-hundred and eighty degree neighbor if you don’t want to.

I am amazed at the brilliance of the design of the cabin – the seats themselves contain a startling variety of things-that-hinge-out-from-inside-other-things, and lit panel arrangements yield to curious fingers to discover the entire seat arrangement is on electronically-actuated motors that flatten, raise, or otherwise contort the seat in ways that can really only be described by eigenvectors, perhaps more easily visualized as your grandpa’s recliner on Superbowl Sunday.

Footrests and snap-out remote controls for the television screen – on-demand video systems showing the latest movies and absolutely nothing starring Ben Stiller. Power plugs and a miniature travel kit with revitalizing eye cream (I have no idea where or when to apply revitalizing eye cream).

Even the overhead compartments mesmerize in some geometric way that fixes my attention until I can figure it out: the oval forms of the storage spaces are rotated, they lie horizontally amidships, flat in the vertical direction unlike the tall, big-brother storage spaces of the short-hop aircraft; it evokes in me the zero-angle zaftig-visions of 50’s UFOs, when things were curvy without apology.

I think my grade-school teachers would call this flat-across arrangement “the hamburger way”: orthogonal to the “hot dog” way, you see, where the long axis is up and down. I’ve been trying for years to explain this concept and it’s clearly still not working. That’s public education for you.

The silverware is weighty, though the lack of serrated edges on the knives reveals a flaw in the so-far sparkling stone; it is the reality of a recently-conflicted world. Another conflict to resolve is my own issue with airline gourmet; they serve antipasto for starters, and halfway through my consuming something beyond my food pay grade – a mushroom pate, I‘m assuming – my palate screams back to my more Virginia-agrarian roots, and I sink my teeth into a warm dinner roll. Ah, there we go.

My purposely-dulled knife is unable to score the skin of the tomato I’m served, and I’m left with a smashed seedy pool on my plate that looks, if you arrange the artichokes the right way, vaguely like the remains of a car crash. Screw you, 9/11.

Finally, the main course is out, and again, nods are made to air security. The steak – or more appropriately, short rib – is sirloin-ish, easy to cut. Sort of meatloafy. You get the idea. The gravy, however, forgives all transgressions, and the whole of the thing is sensible while somewhat sensuous. How did they do that?

All this, note, while we passengers retain only the vaguest of senses around being transported somewhere else, somewhere that’s expensive enough to justify eye cream and miniature glasses of Chardonnay (serial-numbered to avoid theft). In this reality, with a service crew and little to no word from the flight deck, the mechanics of the journey are the afterthought, not the primary. The service crew is careful to shut any open windows to maintain a running illusion that we’re actually in someone’s house and they – with apologies – simply have the vacuum cleaner running.

I mention this not to emphasize or elevate my own station, but to indicate that there remains something worthwhile about air travel. I have previously pointed to my love of airplanes and the travel culture surrounding them, and maintained, in the midst of the screaming babies and foil-wrapped meals in coach that there was something still redeeming about civilian consumer flight. Dignity aloft.

Labels: , , , , , ,

Europe Day 0: Lounge Lizards, Duty Calls

I decide to head to the lounge restrooms (because I prefer doing my business at sea level – I have nightmares about being the one still in the toilet when they need everyone seated and that means you, guy taking a dump). They have the sinks that detach the basin from the faucet, the style that always to me feels vaguely Roman, though I have no idea if that’s accurate or not.

As I leave, I realize the logos on the restrooms are backwards. The guy in the wheelchair is supposed to be pointing to the right.


Speaking of duty calls, I’m thinking about some of the elements of games I’ve played recently on Xbox 360, including Call of Duty 4. Others include Rock Band, and Ace Combat 6. Each has its own flavor.

Thinking back to Thanksgiving: CJ is maybe six, seven. He’s telling me about From Russia with Love on the Playstation. Exploding barrels, falling chandeliers – he even mentioned that the chandelier thing would be possible in real life – the pantheon of shooter cheap-tricks that I’ve seen in just about every game since Duke Nukem 3D. I try to explain Rock Band to him. He’s not excited about it. Playing instruments doesn’t do it. Explosions make more sense to him.

There has to be a connection between Russia and Rock Band that’s more core than its eventual expression – mellifluent sounds or mauling shrapnel converge on the same limbic response – they have to.

I turn to an unlikely source of inspiration. The snack bar in the lounge has chilled mini-slabs of Cabot Creamery Monterey Jack cheese. On the rear of the package, I read the ingredients. A simple list: pasteurized milk, cheese cultures, salt, enzymes. That’s it. And yet, there’s satisfaction in the “tear here” packaging, the shape of the cheese both in and out of the package.

When you’re selling curdled milk, it’s not the ingredients, but in the structure of the thing where you make your imprint.

And the relationship goes from cloudy to clear. Reward. Regardless of the method of implementation – AC6’s lead-off missile trails and trailing glittery explosions, Rock Band’s last-second overdrive band member rescues, Duty's sweep-leg full-auto takedowns; the games unify around the concept of rewarding the player at nearly every opportunity, certainly with acceptable hurdles along the way, but never leaving the player unsatisfied for unforgivable stretches.

I think this particular ethos of design is a favorite of mine, perhaps a culprit in my latent but resurging interest to find work in the almost-field of Hedonics. And I think it’s a big part of making these presentations at GDC and in Europe. If there’s any advice I can give to up and coming game developers, it’s this – focus on reward. The player is taking valuable time to play your game. Even though it comes down to a series of button presses and clicks, do something engaging – reward your players. They’re hoping, praying that you will.

Labels: , , , ,

Monday, November 12, 2007

Updated: Charles Cox at Microsoft XNA Game Studio European Tour 2007

UPDATED: Final tour links posted (Ireland is sold out!)



Well, I suppose if you see it on the web, it must be true - I'm headed to Europe for a couple of weeks as part of the Microsoft XNA Game Studio European Tour 2007.

While there, I'll be presenting information on the newest version of XNA Game Studio, and doing that trick where I put together a game in an hour.

Here are the dates, locations, and sign-up links (if you're the international type):

November 26th - Dublin, Ireland (SOLD OUT) link

November 27th - Vienna, Austria link

November 28th - Milan, Italy link

November 29th - Mechelen, Belgium link

November 30th - Stockholm, Sweden (At the Swedish Game Awards) link

December 03rd - Helsinki, Finland link

December 04th - Copenhagen, Denmark link


We're looking at nearly twenty seperate presentation sessions, a couple thousand people, constant travel and questionable (read: negligible) amounts of sleep. I'm sensing a lot of macaroni and cheese. If you're in the area and get a shot of me looking like a half-dead raccoon, just remember that it's for a good cause.

I'll be posting what I can, from where I can, when I can. That may be never. Wish me fair tailwinds and benevolent Wi-Fi.

See you on the road!

Flags by markfennell.com.

Labels: , , , , , , ,

Tuesday, October 09, 2007

Job Opportunity

Now that we've all gotten our Mondays out of the way, I'll step in for a quick note. It's been busy around here - actually, that's what I want to talk to you about.


http://members.microsoft.com/careers/search/details.aspx?JobID=7D92A555-1821-4381-8F08-C1F54E60C903


We're looking for someone. Someone who knows their game development technology and isn't afraid to write about it.


If you work with DirectX, Xbox 360, or Games for Windows, now's your chance to share what you know and build a world-class knowledge product for game developers. Step up and show us what you've got! If you are interested and qualified, send a resume with a writing sample to gdocjobs@microsoft.com.

Labels: , , , , , ,

Monday, August 06, 2007

The Space Shuttle Convergence

I suppose some would say blogging is easy to do if you can get yourself in the habit of slicing out the time for it each day. I've heard novelists say the same thing about their books.

While I've been busy on a project I hope to reveal to you soon, it's really no excuse to stop sharing my ideas and discoveries with you - and here's one right now.

Massive Data
I ran across a demo of Microsoft's Photosynth displaying the Endeavor launch preparations (you'd think I'd be more plugged into this stuff than having to hear it on MSNBC.com; still, it's a big company). The convergence of several flavors of technology spread across several organizations has come up with something rather inspired - a 3D walkthrough of notable places created using a photo scanning algorithm that picks out notable "points" of an image - a technique that produces a 3D feature called a "point cloud". See how they do it here.

Early speculation on the "how" of this project had me and CarlJParker (hey, after that Zippies post, I had to get you one back) wondering just how it might work.

The Nerds Talk It Over
Special cameras, we figured, might have been able to combine GPS location data with laser rangefinding to approximate the 3D points, then tie them to the photograph using metadata that specified the viewport of the camera (focal length, direction the camera was pointed, etc).

As it turns out, Photosynth doesn't even need that data - it extracts the point cloud directly from the image itself. Any camera can be used - no special hardware required. I continue to be amazed at the human capacity to extract meaningful information out of seemingly incomprehensible data.

Charles Makes a Discovery
The Photosynth site had me looking around the space shuttle Endeavor from multiple angles for quite some time. Not simply looking, or analyzing, I found myself marvelling at it.

The Space Shuttle is an amazing feat of engineering. I remember an old post from about two years ago marvelling at the Shuttle's SRB separation procedure.

About the time I realized I'd been hooked on this Space Shuttle thing for some time (remembering, too, that I was a Space Camp kid), I realized this: I have never been to a Space Shuttle launch.

Fortunately, I had discovered just the place to start the remedy - 43things.com. At this site, you can list your own personal goals and desires, as well as your accomplishments - perfect for a listmaker like myself. In fact, here's my list.

It's a site that works on multiple levels; the gamut of human achievements listed on the site runs from my own rather academic desire to build a dyson sphere, to my buddy Tyler's more grounded goal of wanting to have sex on a pool table. (Whatever works for you, man.)

But I knew that my dream of seeing a launch couldn't go unheeded, so down on the list it went.

Watch a space shuttle launch

There. Step one completed. The rest should be easy - you can find out the launch schedule here, and buy tickets here. I'm thinking about going in either October or December of this year.

So the only question remains - who's with me?

Labels: , , , , , ,

Friday, June 22, 2007

Mercenaries - Everything Old is New Again

If you don't scour Joystiq continually - or happen to bump into knowledgable managers at GameStop, which I do sometimes - you might have missed what I consider one of the best pieces of game-related news this year.

No, not the Manhunt 2 thing.


The original Mercenaries, one of the best - if not the best game for the original Xbox (there, I've said it), has just been added to the Xbox 360's famed Backward Compatibility list.

Break out your copy - or do what I did and go buy a pre-owned copy for ten bucks at the local GameStop - and get ready to fall in love with North Korea all over again.

Mercenaries is Back!

Labels: , , , , ,

Wednesday, April 11, 2007

Published

Now that it's gone live, I can spill the details - I'm published in MSDN Magazine. The hard copies are going out soon, but the electronic version is available now, in 11 languages.

Check it out!

It's me and Michael Klucher, a fellow freedom fighter, introducing the world to XNA Game Studio Express. A great primer if you'd like to know exactly what this XNA Game Studio Express thing is all about, complete with source code to get you started.

Just personally, it's been an interesting crossover - sure, I've gotten plenty of words on paper, bits in the stream, what have you, but something's milestone-worthy about this, maybe because so many technical giants have contributed to MSDN Magazine, and it's an honor just to get in with the same folks, even if it's just an intro article.

I'm proud to have contributed, and happy that XNA Game Studio Express is going to get even more exposure. Check it out and see what you think.

Thanks to Stephen and the gang at MSDN Magazine for this opportunity!

Labels: , , , ,

Friday, March 09, 2007

GDC 2007 - Finished

My work in the City by the Bay is done. Fin. Beendet.

Overall, the workshops I came down to do went incredibly well. These were XNA Game Studio Express Hands-On Workshops: designed for people to sit down with a PC and an Xbox 360 and make a game, following my instruction up on two big screens. Two hours in length, I had originally intended them to go for one hour of guided instruction, then an hour of self-directed exploration.

One hour and one hour. Of course, 50/50 is a concept that always works well on a slide deck. Seeing anything wrong here? Maybe a case of expecting the universe to bend to fit in the little box I made for it because it fits on a PowerPoint slide better?

And, of course, you can convince yourself of anything. I wanted this thing to be an hour. Seriously, I timed it out. Used my little iPod stopwatch and everything. It went one hour. I ran it three times, sitting in my hotel room, annoying my shared-wall neighbor with my endless going on about "Vector3" this and "MathHelper.Lerp" that.

I half-expected to get a note under my door that said:

Dear Mr. Cox, Developer Educator from Microsoft, who is going to teach me all about XNA Game Studio Express (whatever that is): Please stop saying "lerp". That is totally not an okay word to use; it's really creeping me out. -Your neighbor
From start to finish, 65 minutes; I had it down to a science. But like the days of old when our ancestors did their meticulous calculations and forgot to carry the one, I missed a step.

In a rare blast of pure optimism (I'm not used to whatever they put in the water down here), I forgot to apply the first rule of program management: whenever you think you know how long something's going to take, or how much it'll cost - always multiply it by two.

Needless to say, it was about twenty minutes into the first presentation when someone in the front (and God bless him for this) said:

"Hey. Can you slow down?"
Man, did everything change after that. It's a slippery slope when presenting; if the audience loses you once, you run the risk of never getting them back.

Fortunately, I designed the presentation with built-in crumple zones, so I threw the switch and we went to the full two-hour guided tour. I'll say this: after two hours of standing up and coding and talking with no breaks, I am fully convinced of the power of adrenaline.

Knowing the necessary speed going in on the second day, I was amazed at how well the presentation flowed the second time around. We even had a few folks venture out on their own and make their own unique game while I was talking. It was incredible.

Both sessions were completely booked at fifty attendees, two per computer. The energy was great, the questions were thoughtful, and the students even caught my code bugs. XNA Game Studio Express is just one of those big deals that's changing the world, and I'm thrilled to be a part of it.

Thanks to the crew at Microsoft for making this happen, and for those folks (they know who they are) for giving me this opportunity. I suppose we can all wait to see the instructor evaluations, but I think it's safe to say we all made a big impact this week.

See you back in Seattle!

Labels: , , , , ,

Thursday, March 08, 2007

GDC 2007 - XNA Game Studio Express Sessions and Feedback

If you're an XNA Game Studio Express user or an GDC 2007 XNA session attendee, let me ask you a favor.

XNA Game Studio Express has hit something pretty huge. Today's workshop session was packed, and tomorrow's repeat session is shaping up to be similar.

People want to make games. Whatever makes it easier for them is a big plus. The word I've been getting after my first session was along the lines of "Wow, this is great stuff, XNA Game Studio Express is making game development much easier."

Good - Phase I accomplished. Now, I and the combined XNA Game Studio Express documentation and education teams are looking for ways to make it even easier, through tutorials, great reference documentation, samples, and more.

Some of this work is already making its way to the new creators.xna.com website (check out the samples, video tutorials, and more!), and of course, the product documentation continues to be updated and expanded with more examples, tutorials, and reference documentation.

While it's looking like today's session did good for the attendees, I want something back: specifically, feedback on our current education efforts.

What's hard to learn with XNA Game Studio Express? What doesn't make sense? Where did you get stuck? Comments, please!

Labels: , , , ,

Tuesday, March 06, 2007

San Francisco, Day 0

10:11 AM

I've been in this airport fifteen minutes and I'm already in a cubicle. They've taken to stripping out all of the power ports around the airport and consolidating them in for-rent cube farms, paid by the minute.

So I rented one. There's even a little hanger for my jacket.
The staffer on duty is courteous and smiling.
"Can I bring my coffee?" I asked her.

I want this cube to be darker - I'm switching off all the harsh fluoresecence I can find around the tiny room, but there's no roof; no matter how hard I try, there's no skipping off the surface of the reality that I'm in a crowded, busy human transportation hub.

Fine. iPod time. A thought: The airport could catch on fire, I'd never know it. A shrug: Acceptable risk.

I'm in a warm coccoon of sound. Nobody is snoring next to me. No babies are crying. No humans exist but me. Well, me and Howard Jones, and he's singing just for me, so we're cool.

Irrespective of whether or not the 'pod-inspired New Selfishness movement is ultimately bad or good for our human race, it sure does wonders for an only child.

Labels: , , ,

Sunday, February 25, 2007

GDC 2007 - Parties, Poker, and XNA

It's about a week away: The 2007 Game Developers Conference in San Francisco, March 5-9. I'll be there on the 6th through the 9th, working and partying. For those that'd like to know more about what I'll be doing and where I'll be going, here are the events so far:

March 6th, 9:30 PM
Starlight Foundation ISM Poker Tournament
San Francisco Mariott

March 7th, 6:00 PM
Massive GDC Party
101 4th St

March 8th, 12:00 PM
XNA Game Studio Express Hands On Workshop
Moscone Conference Center, Room 2011

March 9th, 2:30 PM
XNA Game Studio Express Hands On Workshop
Moscone Conference Center, Room 2011

Yes, I was able to weasel into a charity poker tournament even while on the road. But it's for a good cause: even if I lose, the Starlight Foundation makes sure that kids in need still win.

If nothing else, any GDC'ers out there had better cut a two-hour hole in their schedule on the 8th or the 9th to come play around with XNA Game Studio Express at my workshop.

See you in San Fran!

Oh, and one more special guest here at home:

March 10th, 9:00 PM
Lebowski Fest
Kenmore Lanes, Kenmore, WA

The dude abides.

Labels: , , , , , , ,

Monday, January 15, 2007

Charles Cox and XNA Game Studio Express at GDC 2007

Just dropping a quick note: I'll be presenting an XNA Game Studio Express hands-on workshop at the Game Developers Conference in San Francisco this year.

If you're interested in trying your hand at game development with XNA Game Studio Express, and are planning on attending GDC this year, come on by for this introductory session and I'll show you how to get started! No experience necessary!

I'll be giving the workshop twice - once at noon on the 8th, and once at 2:30 PM on the 9th. Each session is two hours long. See you there!

Link to Event Details

XNA Game Studio Express Hands-On Workshop
Thursday, March 8 - 12-2pm
Friday, March 9 - 2:30-4:30pm
Charles Cox
Come see XNA Game Studio Express in action! Try Game Studio Express and see your creations come to life on Windows and Xbox 360. This workshop will include step-by-step instructions to get you up to speed on Microsoft's most recent game creation tool for casual and hobbyist game developers.

Labels: , , , ,

Monday, November 27, 2006

Resetting VGA Resolution and Screen Format on Xbox 360 Blind (Without Video Output)

If you ever have to reset the display resolution/aspect ratio settings on an Xbox 360, and only have a VGA cable and monitor to do it with, you may find yourself in a bit of a quandary, as the monitor may not display the Xbox 360 menu, making it very difficult indeed to reset the display settings!

Never fear. Here's the sequence of controller presses to reset the VGA settings to standard aspect ratio, 640 x 480, which should work on almost any monitor. You will want sound for this, it will make things easier.

Once the Xbox 360 boots up:



  • HOLD D-Pad RIGHT until blade selection sounds stop, or 3 seconds (You are now at System Blade)

  • HOLD D-Pad UP until menu selection sounds stop, or 3 seconds

  • PRESS A (You are now in Console Settings)

  • HOLD D-Pad UP until menu selection sounds stop, or 3 seconds

  • PRESS A (You are now in Display)

  • HOLD D-Pad DOWN until menu selection sounds stop, or 3 seconds

  • PRESS A (You are now in Screen Format - If you get a "bonk" sound, skip next 2 steps)

  • HOLD D-Pad UP until menu selection sounds stop, or 3 seconds

  • PRESS A (You have just selected NORMAL Screen Format and have returned to Display)

  • HOLD D-Pad UP until menu selection sounds stop, or 3 seconds

  • PRESS A (You are now in Screen Resolution)

  • HOLD D-Pad UP until menu selection sounds stop, or 3 seconds

  • PRESS A (You have just selected 640 x 480)


You should now see the screen. Proceed to set your display settings as normal.

Labels: , , , ,