Upcoming Events
Unite 2010
11/10 - 11/12 @ Montréal, Canada

GDC China
12/5 - 12/7 @ Shanghai, China

Asia Game Show 2010
12/24 - 12/27  

GDC 2011
2/28 - 3/4 @ San Francisco, CA

More events...
Quick Stats
110 people currently visiting GDNet.
2406 articles in the reference section.

Help us fight cancer!
Join SETI Team GDNet!
Link to us Events 4 Gamers
Intel sponsors gamedev.net search:

Academic Summit Report posted 3/21 at 2:41:27 PM PST by Gaiiden

Greetings everyone. It's taken me a while but here I am at last, throwing in my two cents on the day's proceedings. First of all, my day started early, unlike the two lazy bums above. Of course I benefit from the three-hour time difference I still haven't adjusted to, so I feel like I go to bed early in the morning and wake up late in the afternoon... or something like that. Anyways it's just easy for me to get up early for some reason. Wish I could do that back home for school.

The GDC entrance. Red carpet baby!

Anyways I spent my day covering the IGDA's Academic Summit, and I have to say that I'm impressed. The Summit as a whole was very well organized and run, with a lot of great issues brought up by the panels, speakers and audience. My only complaint would be that the lighting totally sucked, and the flash on my camera totally sucked, and both those factors combined to form totally sucky photographs. Luckily I was able to run them through ACDSee's exposure filter to get the much needed brightness.

For those who don't know, this is the Summit's first year and is geared towards getting teachers and developers talking openly to one another about how to handle the task of integrating game development into the educational world. Throughout the Summit references were made to Industry, referring to game developers, and Academia, referring to the universities and colleges. Talks also focused on the opposite - getting students active in game development through internships and co-ops.

The front of the Summit
The rear of the Summit

I was able to hook up with my good buddy Jeff Ward (also known as Warden) right from the beginning, running into him at the bookstore in the conference center. Together we headed over to the Fairmont Hotel where the Summit was being held. The Summit was chock full of people in the beginning, as witnessed by the above images. Hardly an open seat could be found. As the clock ticked past the 10am start time, I glanced around for a sign of Jason Della Rocca, the Program Director of the IGDA, so that things could get underway. He showed up a few minutes later and, along with Warren Spector, stepped up onto the platform.

Warren Spector (left) and Jason Della Rocca (right)

Warren gave a quick a light intro speech as to what the Summit will be about, kind of lost at times thanks to the fact that he had misplaced his notes. After a few minutes of ad-lib he turned the mic over to Jason so he could make a few announcements regarding the Summit and the various IGDA track sessions being held throughout the week.

Next was Celia Pearce, a designer/lecturer from the University of California at Irvine. She gave her snapshot of the current state of Industry/Academia relations. One of her main topics was the fact that many professors scowl upon video games because they distract their students from their studies. She quoted them as being a cultural scourge. Ouch. Matthew Ford, lead program manager at Microsoft Games Group, also gave a short speech on the current state of relations. He expressed similar concerns as Celia, citing games as a bad influence on student's studies in the eyes of the professors. He also went on to talk about games as art, and how other forms of art such as literature and poetry underwent similar dark times where they were widely ridiculed and sometimes banned. There is light at the end of the tunnel, was the basic message.

Celia Pearce
Matt Ford

A panel was next on the agenda, with Mark DeLoura moderating, who is best known for his editor spot at Game Developer Magazine as well as editing the first two Game Programming Gems books. The panelists for this panel, dubbed the Realities Panel, were (from left to right) John Buchanon (vp of advanced technologies, Electronic Arts Canada), Ian Horswill (associtate professor, Department of Computer Science, Northwestern University), Henry Jenkins (director, Comparative Media Studies Program, MIT), Andi Smithers (lead engineer, The Collective), Ray Muzyka (joint-CEO & co-founder, Bioware Corp.), and Celia Pearce standing in for Rob Nideffer (assistant professor at the University of California at Irvine). Now there's a mouthful. Under Mark's direction the panel discussed the differences between Industry and Academia in terms of research and motivation for both sides. For instance in Academia they secure funding to keep themselves going with in Industry it's all about the profit. The best part of this panel was when a question was posed from the audience and a man asked, "Very quickly, could you tell me what makes a game fun?" After quite a few chuckles from the rest of the crowd, John Buchanon leaned over to the mike and replied: "The short answer? No."

Mark DeLoura
The Realities Panel members

With lunchtime fast approaching (mmm food) four collaboration case studies were presented depicting several successful collaborations between the industry and the academic world. The two I would note are Greame Devine (project manager/designer, id Software) and Julie Liss (director of human resources, Angel Studios). Greame gave a great talk about Quake 3 bots and how they contracted a student from Holland to do their bot AI routines, since they were so good next to their own. Julie's talk was equally entertaining. She was very expressive about her views on Academia and supplying interns to game companies. She brought forth Angel Studios' very successful internship program with Carnegie Mellon University, where they have students working for them and actually getting graded back in class at the University. To reduce burnout, they work a lot with the University to keep the students going back and forth from the academic to the industrial environment.

Greame Devine
Julie Liss
Marc Prensky
The Research Panel members

After lunch the Summit reconvened with a panel moderated by Marc Prensky (ceo, games2train.com) and including (from far to near) Gino Yu (head, Multimedia Innovation Centre, Hong Kong Polytechnic), Randy Hinrichs (group researcher manager, Learning Sciences and Technology, Microsoft Research), Will Wright (chief game designer, Maxis), John Laird (professor, University of Michigan), Simon Redmon (programme leader, MA Digital Games, International Centre for Digital Content, Liverpool John Moores University), and John Buchanon (vp of advanced technologies, Electronic Arts Canada). The understatement of the year award was handed out to Will Wright as he introduced himself: "Hi I'm Will Wright, I'm a game designer." Of course he didn't see John on his left roll his eyes and sort of make a small "duh" motion, so when everyone started cracking up he protested with a smile, "no, I am!" It was even better when Marc was pointing out that there were several continents represented in the group of panelists, including Randy Hinrichs, "from the continent of Microsoft."

John Buchanon answering questions
Warren Spector in idle chat during the break
Will Wright responding to a few members of the audience
Gino Yu in the spotlight after his energetic talks about the Hong Kong game school

The most notable part of the Research Panel was Gino Yu and his description of the game development scene over in Hong Kong, which he said was simply huge. The school they have set up there actually engages students in a variety of things, for instance they had two martial arts experts come in and teach choreography, complete with guns, blanks and squibs. They are also working on a martial arts library for use in games.

The Summit wrapped up with an open Q&A period with Jason moderating the discussion, letting anyone from the audience ask a question and allowing anyone to answer it. Following this was a talk from Bill Buxton (chief scientist, Alias|Wavefront), which was light and funny, as evidenced by the title of his speech "Mutual Exploitation between Consenting Adults." The most striking part of his talk was his announcement that he had never seen a degree program anywhere in the world that required the student to actually build a full program to be used by other people. I found this very interesting.

Bill Buxton

All in all I walked away from the Summit in high hopes for the future of Academia/Industry relations. While I felt there is still plenty that needed to be addressed, for the first time around it was a huge success. I won't be covering much of Day 2 since I'll be in an AI tutorial, but I will be back with coverage of the IGDA's scholarship winners.

Building a Flexible Rendering System for High-End Consoles and PC posted 3/21 at 8:44:17 AM PST by Dave Astle

(click to enlarge)

This year, I've decided to focus on the most technical tutorials and lectures, so this tutorial by Rob Huebner (Director of Technology for Nihilistic) seemed like a winner for Day 1. Based on the title, I was expecting a guide to creating a cross-platform, API-independent rendering system. I was somewhat disappointed, then, to find that it was heavily Direct3D oriented, and thus only cross-platform if you're considering the PC and XBox (and to be completely fair, if I had actually taken the time to read the description in the GDC materials, I would have known this).

That said, the material presented was pretty useful, and despite the use of Direct3D, most of the ideas are easily applied to OpenGL or proprietary APIs. Here's a summary of some of the more interesting points:

  • Creating a model rendering system requires a balance of flexibility (to give your artists as much freedom as possible) and efficiency (to allow for as many characters on-screen as possible)
  • The way you store and process data is the main factor in efficiently rendering models, not API tricks
  • Most models are stored as lists of vertices (including position, normal, color, and texture coordinate data), and faces (containing indices into the vertex list, the texture, other rendering data)
  • Most modeling package separate vertex properties into separate arrays (one for position, one for normals, etc.). Although taking the same approach in a rendering system can reduce the amount of memory used, and result in duplicated math, it can actually lead to a decrease in performance due to cache misses and additional CPU cycles. It's therefore usually better to keep all of a vertex's data in a single structure.
  • This also allows us to more easily stream data to the GPU, which on modern hardware will lead to bigger performance gains that doing excessive data processing with the CPU.
  • Usually, modeling packages do not store data in the format we want. It makes sense, then, to create a temporary intermediate stage in which we process the data and ultimately store it in a format suitable for our engine. This can happen either in the exporter or in an external program in the pipeline.
  • In this intermediate stage, data should be sorted so that state changes are minimized. The most expensive state changes include textures, vertex shaders, and rendering targets. Most others, such as the cull mode or z-buffer mode, are less expensive. The cost of state changes will vary by platform.
  • Data should also prepared so that indexed rendering methods may be used (i.e. DrawIndexedPrimitive in Direct3D and DrawElements or DrawRangeElements in OpenGL).
  • Today, there is no reason to perform backface culling or clipping ourselves, but we *should* do culling on a group or object level.
  • Likewise, sorting models isn't necessary unless translucency is being used, in which case, we should separate translucent geometry in the processing stage.
  • You can't always assume that hardware T&L is going to be faster. Operations like skinning and blending can sometimes be faster in software (due to result caching).
  • For organic models using skeletal animation, skinned meshes have many advantages over rigid meshes, but have some caveats. Face normals cannot be stored, and vertex normals don't always remain accurate. By rotating vertex normals with the position, the results will usually be close enough, even though they are not completely accurate.
  • Often, you can merge multiple meshes on a model into a single mesh (for example, both arms and the torso) to allow for more efficient processing (sending more data to the GPU at once).
  • You can do weighted skinning in hardware or with the CPU. The former requires the use of vertex shaders, and imposes some limits (such as the maximum number of bones) which can make the performance comparable to doing skinning in software.
  • In keyframe animation, hermite curves can be used instead of linear interpolation to produce better results at a cost only slightly higher (but significantly higher memory usage).

Given that these tutorials run for 5-6 hours, they go into much greater detail than what I can cover here. I've only summarized about two-thirds of it here, but hopefully it will give you a taste of the material presented.

Party Time!! posted 3/21 at 3:21:24 AM PST by Gaiiden

While at the Summit, one of the announcements Jason Della Rocca made in the beginning was the Intrinsic/Analog Devices party being held that night at the Agenda, a bar downtown. In case you all have been wondering what the hell took me so long in getting this stuff up, it's cause I was out partying the night away! Yeah!

So after the Summit was over, Jeff (Ward) and I made a beeline for his hotel, where we dropped our stuff, hooked up with Brian Robbins (CleverMedia) and hustled on over the convention center in time to catch the stretch hummer making it's half hour rounds. We had considered walking the two blocks but hey - it was a stretch hummer for cripes sakes! I'd show you a picture of the exterior, but it was too dark and I couldn't get close enough to get a good picture and get the whole thing in the shot ^_^. But who cares about the outside anyways when you had two Hooters girls on the inside? Yeah, that's what I thought.

Jeff with two Hooters girls saying "What now?" Sorry Jeff :)
The limo was stuffed to the max with developers

So we took the not-even-five-minute limo ride to the party and ascended the stairs to the upper level (the Agenda is a three-level establishment, but this party only made use of the upper bar level). The music was pumping and the place was packed with developers, most of them gathered around the five Hooters girls going around taking pictures with everyone. Ooooh yeah. In all about 275 developers showed up.

Looking towards the front and the bandstand
Looking towards the back. To bad the pool tables weren't free...

I mostly hung out with Jeff, who introduced me to his roommates, but also caught up with a few other developers, including Tom Smith from High Voltage Software and both Scott Uhler and Brian Hoffer from iSeeSoft, IGF finalists for World Dance. It was Brian that I had interviewed earlier, and it was great to meet them and have a little chat.

Jeff (right) talking to Brian Robbins (center) and his roomate (left)
Jeff talking to Scott Uhler of iSeeSoft. Brian was off somewhere...

The drinks were free (even tho I only had Sprite) and I even had a chat with an Intrinsic developer, although I can't remember the guy's name for the life of me. He had cool hair tho. We copped out around 9ish since the party had by then started to die down (it had started at around 6:30) and when I got home I was so wiped I went straight to sleep.

Oh and thanks to Jeff, who was sort of my photo giunea pig throughout :P

Three of the five Hooters girls at the party. Yay Intrinsic!

Arrival posted 3/19 at 4:13:05 PM PST by TANSTAAFL

The San Jose Conference Center (click to enlarge)

Sunny San Jose. It's a wonderful day to sit around outside. But what are we doing? Are we going to the beach to carouse with beautiful blondes? Heck no, we're hanging out at the GDC. Still, it's pretty cool. Could be worse, right? I could be back home in wintery Kenosha, WI freezing my touchis off and preparing income tax returns(blech). Instead, for the low low price of about $250 US, I get to fly here to sunny california into the nucleus of the computer industry, and chill out for a bit.

So far, it's just been Dave and I (and Steve, but we'll talk about him later). Mason and David will be arriving (or so I am told) tomorrow some time. Already Dave and I have been asked out by attractive women. They just can't get enough of us.

Anyway, we spend the first part of the day... sleeping. The stupid alarm clock didn't go off when I set it. Stupid Days Inn. First, we had a lovely breakfast at Denny's, then we took the light-rail to the convention center (and we snapped a few pictures).

Wandered around, got our press passes, and in the pre-lunch time, we attended a lecture entitled "Building a Flexible Rendering Sysem for High-End Consoles and PC", presented by Rob Huebner, which Dave will post a summary of later on.

They rolled out the red carpet specifically for Dave. No, really. (click to enlarge)

Early this afternoon, we decided to head on over to the Fairmont to attend the IGDA Academic Summit, with a plethora of speakers on the panel. It's pretty cool. Caught up with Drew Sikora, our correspondent in the field. He'll be providing more in-depth coverage of the summit and other IGDA events.

Anyway, just wanted to let you all know that we're here, and we're alive, and we're geeking it up.

Oh, and John (Hattan), your lack of presence is *DEFINITELY* felt. Wish you were here, man.

San Jose Art posted 3/19 at 3:13:20 PM PST by Dave Astle

(click to enlarge)

Who says we don't provide high-quality coverage of the GDC? (Well, Hattan does, but he's not here, so he doesn't count). What would a trip to the GDC be without stopping to look at the Steaming Pile of PooTM, located in a busy intersection just outside the GDC. Although it's not steaming in this particular picture, it's still a landmark that can't be missed.


(And yes, we know it's not really supposed to be a pile of poo. It's like supposed to be a coiled snake or something, but that's just not as funny. Poo==Funny.)