Thursday, March 15, 2007

GDC07 Friday

After breakfast at Denny's (again) I went to my first session of the morning. It was given by Mark Teare from Factor 5 and he talked about how he used lots of different art programs to create several different assets for LAIR. Basically he wanted everyone to use the strengths of lots of different programs to achieve the results they're looking for. For example, he created a base model of a helmet in Max, subdivided it, then brought it into Zbrush for detailing and normal map creation. Then took it back into Max for final tweeking and used Photoshop for normal map combining and diffuse texture painting. He also showed some really nice topology tools in the Max plugin, Polyboost, which are really nice for drawing clean edge loops on existing blocked-out shapes. For creating foliage he showed off his technique of creating a high poly model of the leaves and branches - then rendering a normal, diffuse, and opacity map from that to be applied to a billboard. That's the way the Crytek guys were doing it too, so it seems to be the way to go.

Next, I attended a Neil Hazzard's presentation on new features to support real-time shaders in 3ds Max. (Neil works for Autodesk and is responsible for real-time viewport display in Max.) Neil talked about a bunch of new features that I need to look into - MaxScripted Materials, additional light parameters available to the shader, support for Cg shaders in addition to HLSL, multi-pass scene effects like glow and bloom, etc. Probably the most valuable thing I learned from his presentation is the you can use parameter wiring to bring values from Max into your shader without needing any "under the hood" programming. This was demoed with the global environment ambient color wired to the ambient color of the shader - which allowed control over the shader's ambient color with the standard Max ambient color picker. This is a really cool idea that will make it much easier to get all kinds of data from the Max UI into the shaders to be used in real-time. Neil also showed off the addition of DirectX 10 to the viewports and some of the exciting things that it will make possible in terms of better performance and new ways to view the model.

For my last session of the day, I attended Jeff Hanna's "Tech Artist Roundtable." Jeff is the lead tech artist at Volition and it was really cool to meet him. At the beginning of the session, Jeff pointed me out to everyone and said they should check out ShaderFX, the node-based shader editor plugin that I had helped to write. He said it was really cool. That was nice to hear. Thanks again, Jeff! I got a lot of neat ideas from the round table. We talked about what the roll of tech artist requires. There are lots of definitions, but we mostly came to the consensus that tech artists write tools to make the jobs of the other artists easier. Tech artists look for problems and hitches in the art pipeline, develop tools to help fix the problems, watch the artists use their tools, and then add polish to them based on artist feedback. Once the artists see what you can do to help ease their work load and you build a good relationship with them, they start seeing the value of what you do as a tech artist and start looking for tool idea suggestions to pass along to you. I was surprised to hear the the ratio of tech artists to regular artists at Volition is 1 to 5 or 1 to 6. They have a lot of tech artists!

For the rest of the day, I talked with people at the company booth about the Vicious Engine. Once again, that was pretty fun and it was nice to be able to tell people how powerful our engine is. People seemed pretty surprised that the engine works on all of the consolses and that it's a complete tool - everything you need to make a game.

On Friday evening, I went with a bunch of the guys from Vicious Cycle down to Fisherman's Wharf. We rode the cable car to get there. That was great fun - the true San Francisco experience. We had dinner at a really nice restaurant that had a large window overlooking the wharf and a nice view of the Golden Gate bridge off in the distance. After dinner we went to a couple of shops and I found some fun gifts to bring home for the family.

GDC this year was really great. I've got my head so full of ideas it's going to take a couple of weeks to digest them all. Feel free to send me email or post a comment if you'd like more details on any of the sessions I mentioned in my GDC posts. I've also noticed that they've started posting the PDF files for a lot of the presentations over at the GDC Website. Just do a search on that page for "Download Presentation" to jump to the ones that are available.

6 Comments:

Blogger ypuech said...

Hi Ben, thanks for the blog entries for each day of the GDC. Very interesting. I hope one day I'll be at the GDC to learn many things and meet creative people like you!

March 20, 2007 7:38 AM  
Blogger suny2000 said...

Hi Ben !
I'd really liked to be there to see the Neil Hazzard presentation ! Do you know if there is some pdf available ?

I would like to know if the way to wire parameters to .fx is the same as the way Zhangy did with his XML maxscript. Is there a simpler way ?

March 23, 2007 4:13 PM  
Blogger Ben Cloward said...

Yanick - you're welcome. It was fun to write about the stuff I saw and learned. It kinda helped me to get things organized in my brain.

Suny - Neil generally posts his GDC presentations on the Autodesk Sparks web site about a month after GDC. They'll most likely be posted here: (as soon as Neil gets around to it)

http://usa.autodesk.com/adsk/servlet/item?siteID=123112&id=7481428

The parameter wiring I mentioned, is just that - simple parameter wiring. Once you've got your shader loaded into the material panel, you can wire any of Max's colors and/or values to any of the FX shader material properties. It's a pretty cool idea.

Zhangy was at the presentation as well and showed off his script. It's a simple method for wiring lots of shader parameters at once, like if you want a certain parameter in all of your shaders to be wired to one parameter in Max, Zhangy's script lets you wire them all at once instead of one at a time. Very helpful.

March 23, 2007 6:17 PM  
Blogger suny2000 said...

This comment has been removed because it linked to malicious content. Learn more.

March 24, 2007 9:05 AM  
Anonymous Anonymous said...

thanks for all of this:)

October 30, 2007 4:00 PM  
Anonymous Anonymous said...

howdy ben, just a quick thanx for the textures on the resources page...superb !!

November 18, 2007 9:26 PM  

Post a Comment

<< Home