At my GDC talk, Getting Noticed: Why You Need an Online Portfolio and How to Make One, I received a number of questions from programming students as to how best to display their work if they didn’t have a good artist to work with. So, I sent out the following question to the programmers at Naughty Dog:
“I’m a programmer. I want to represent my work on my portfolio site, but the artist I’m collaborating with SUCKS. How can I show my programming work off to good effect without having good art to hang it on?”
…and received the following responses. It was a heated conversation with various opinions:
- I don’t think it matters. The demos I made to get into the industry were all art done by me, and no artist sucks as bad as I do. Just make sure that it’s clear what the tech is doing and don’t worry about the art.
- Work with a better artist! Of course you could try to go very low-fidelity (sphere man in box world) and try to make it obvious. But that doesn’t always work. Clearly craptastic art doesn’t work AT ALL if you’re a shader engineer, and it doesn’t work for animation, player mechanics, etc. either. But it might work very effectively for a physics demo. Depends on what tech you’re showcasing. IMO it’s always better to find some decent art to really make your engineering work shine.
- I was blown away by how many student game programmers at needed good artists to work with. I asked them if they had ever contacted the art department and they looked confused… obviously having not thought of this. I bet there are just as many good artist students as there are programming students that need to showcase their work. They need to collaborate and get it done!
- IMO it depends on the type of programming. For graphics programmers, I’d almost recommend that they do some kind of tech demo and take artists out of the equation. Just do something, anything cool.
- The other problem with working with artists on games is that you will want to use a game engine that has most of the boring stuff done for you. But if I’m hiring a programmer, I want to know that they know the boring stuff. I would much rather see someone create a demo from scratch than just import some assets into unreal. If it’s physics, putting together a physics solver or creating a standalone demo from havoc is much better than showing a full, unpolished game in unreal where I don’t know what the engine did for you.
- Some additional tips:
- Create or use procedurally generated graphics or animation. Procedural content is geek-awesome and cutting edge. Turn a problem into an asset. Of course, generating good procedural content is its own art, so this is really just replacing one problem with a slightly geekier one.
- There’s lots of free content out there. Most of it is awful, but some is very good. Unfortunately, free content from multiple sources may look inconsistent when tossed together. On the bright side, you can come up with really creative ideas just trying to create a game around an eclectic set of assets.
- Specialize! If you’re a solo programmer who doesn’t know any artists, you’re probably not John Carmack ready to pop off the next generation graphics engine. Focus on demonstrating something awesome in a single area of technology (shaders, animation, gameplay innovation, whatever). Narrow ideas demand a lot less great content than an entire game.
- Simplify! Think Geometry Wars. A great small game is a lot more appealing than a sprawling epic RPG that is buggy, unpolished, and unfinished.
- If you don’t have good artists use procedural assets like cones, spheres, toruses and what not to visualize what you do. Much AI can be visualized this way as well as the obvious graphics techniques. If the person doesn’t even know how to create a texture himself that might be a good first step. Finally…. Internet is FULL of free meshes, textures and more… no excuses…
- Remember, we’re all programmers – and most of can’t judge art anyways, so we don’t tend to look at it. We’re more interested in technical things, such as:
- So, as you can see – there’s not that much emphasis on fancy graphics. Bedazzle us with knowledge, tech and drive, with examples substantiate it. Make it impossible for us to say no!
- Yes, but my point is that often times great tech can be masked by crap art. In some cases, for some kinds of tech, yes… programmer art or procedural art or whatever will work just fine. But imagine Travis or Christian trying to show off the Uncharted 2 animation system using art (meshes, animations) obtained from the Internet… or “procedurally” generated (whatever that means for animations!) Yeah. How does someone know that their animation code is awesome if they haven’t tested it with real animations? ;-)
- Do they understand low-level things? I.e., do they know how computers work?
- Do they understand the basics? Math? Physics? Computer Graphics?
- Do they have necessary programming skills? Data Structures? Large-scale development?
- Do they have game-play related skills? Character control? Programming the Game Camera?
- Do they know how to apply knowledge? Problem solving skills? Optimizations?
- Do they know how to work in a team? Communicate with non-technical people?
- Do they have the drive? Cool things they’ve worked on the side? Special interests?
So, hopefully that helps. It sounds like the answer varies based on your specialization. For instance, a shader programmer has to have good art to work with, but it’s not a big priority for physics programmers. Either way, you still need to present everything you do clearly, with videos, screenshots, and explanations. Ideally, diagrams and explanations that make it clear to the layman as well as giving additional detail to programmers.
Also, I’d highly recommend that you check out John Hable’s talk about HDR Lighting and Travis’s McIntosh’s talk about Animation systems. Both of these talks are very clear to the layman, yet represent extremely complex coding work. Videos of them should be going up on www.naughtydog.com sometime in the near future (along with our PAX panel about Naughty Dog’s level design process) and you can get the slides for free off of the GDC Vault.