I hate rendering. Can’t stand it. I would be positively ellated to never have to render anything ever again.
That leads to the obvious question. What is rendering, and why do you hate it so much? Since a lot of my past work has been in 3D graphics and animation, the context from which I invoke the word “rendering” is probably important. Rendering is when you, as a digital artist, ask the computer to please take all of the 3D models, texture maps, particle effects, and lighting trickery, and pass the whole mess through some sort of prettying sieve. The pixels extruded out the other side of this process should be in the order that you expected, or at least arranged nicely. Depending on the renderer you are using and what you tell it to do, you can get all sorts of different looks, anywhere from photorealistic, to pre playstation 1 era polygon soup. Every computer generated image had to pass through a renderer of some description. Some just light up the screen pixels you suggest to the rendering software might need lighting up. Others read the geometry in the scene and calculate the way that light bounces around the objects turning each impacted surface into a new light source, with it’s own colour and scatter parameters. The thing calculates the movement of light. No matter how efficient the calculations are, that’s a job that is going to take some time.
I used to dread rendering. When you first start a scene there are only a few simple objects in it, and the instructions for how to colour and light them are usually fairly simple. Rendering software could take less than a second with a scene like that. Maybe you can even have the scene render at near realtime, at 10, 20, or 30 frames per second. Testing animation, geometry and lighting setups is a pretty brisk affair at this sort of speed. Add a few more objects and some nice high resolution textures and the framerate plummets. Soon it’s taking several seconds per image to render. You can still work and iterate on a job at that speed, but you are usually one or two additions away from it taking several minutes per frame. Now you have to do tiny spot renders. Maybe just check the top of a lamppost, or only the last few frames of a walk cycle. Rendering an entire animation is no longer feasible. That is usually the precise moment when a client will ask for a major timing revision, or a camera angle change. You proofed and got a signoff on all this stuff when the render time was a few seconds per frame, now that making changes eats up the whole afternoon you need to do a 45 degree rotation to the camera pointing it at something you haven’t textured yet, and they need the new render by the morning. Now you might be seeing why I hate rendering.
Pixar and ILM have massive refrigerated rooms full of computer hardware to tackle this problem. A render might take minutes, or even hours per frame, but if you split that up over 200 cpus, 500 cpus, several thousand cpus, you should be able to see the results of any changes right quick. If you are working on one machine in an advertising shop, 15 minutes per frame is a recipe for a bad time.
Over the past few years I have been using game engines. Game engines use a renderer to put graphics to the screen, but games prioritise speed over beauty. Games have to spit out 30-60 frames every second just to remain playable. The ones that dive below that suffer the ire of players and reviewers. For years we have been hearing that new graphics software and hardware will allow a game to look like a Pixar movie. Depending on how you view that moving goalpost, Pixar is still working to make their movies look better too after all, games may never get there, or they may have gotten there around Ratchet and Clank Future. Ratchet and Clank Future: Tools of Destruction came out in 2007 and it’s still wall to wall gorgeous.
I recently loaded a very high polygon model that I had been working on into the Unity 5 engine. The recent addition of an advanced lighting system made the model look fricken beautiful before I even did any advanced processes to it. I could make changes, move the camera anywhere, and change the lighting all at roughly 30 fps. The same model took several minutes per frame to render through the Blender Cycles renderer, even with hardware acceleration turn on. The visual difference between the images that came out of Cycles and the Unity renderers did not justify the extra time. The Unreal and Crytek engines can do similar quality images. I don’t think I care how pretty the latest Renderman derivative can make a scene look. I’ll be using game engines to render everything in the future.
There is a slightly higher learning curve to getting things running smoothly in a game engine, but I figure if a person took the time to learn Maya or 3DStudio they probably won’t have much trouble navigating game asset requirements.
I still hate rendering, but I think I like where it’s headed.
Leave a Reply.