A Quick Guide to Normal Mapping in 3ds max 7 Introduction This document provides a brief introduction to the technique and benefits of Normal Mapping; an advanced modeling and mapping technique used in next-generation games authoring to increase both quality and performance when rendering complex objects and scenes. The technique also offers powerful, time-saving rendering benefits to artists working on feature film and television visual effects. The integration of normal map generation tools represents just one of a series of advanced mapping functions for next-generation 3D content creation environments, designed to enable 3D artists to more efficiently create high quality 3D scenes in complex authoring environments. The open nature of the 3ds max architecture combined with low-level integration of the 3ds max Software Development Kit (SDK) provides a unique platform for the direct implementation of a broad range of these new and highly specialized mapping techniques. Programmers and facilities can immediately integrate these emerging technologies into their production pipelines. 3ds max 7 is the first major professional 3D application to integrate normal mapping tools into the workflow. What is normal mapping? Normal Mapping is a powerful technique used to create the appearance of detail in a 3D model while maintaining the model itself in a highly streamlined form. This offers the advantage of significantly reducing the data size of the original model, accelerating the rendering process and generating higher-quality rendered result. The technique originated from the need to increase the visual fidelity of 3D games while maintaining real-time performance and interaction. As a result many of nextgeneration games engines are integrating support for normal mapping. Although the technique owes its origins to gaming it is proving to be extremely useful in visual effects applications. Discreet 3ds max 1/7
How does it work? The Normal Mapping technique requires the creation of a high-resolution model (Fig. A) as well as a low-resolution counterpart (Fig. B). Fig. A High Resolution Character (125,000 polys) Fig. B Low Resolution Character (25,000 polys) 3ds max offers several tools to help artists build a low resolution cage and then scale it up to a high-resolution model, or conversely, to build a high-resolution mesh and then decimate the results cleanly to create a low resolution mesh. Meshsmooth Turbosmooth Patches Discreet 3ds max 2/7
MRM Optimize The Normal Mapping process in 3ds max 7 then looks at the differences between the meshes, and stores this difference as an image map (Fig. C). This image map is then used by the DirectX graphics system to trick the display system into believing the high resolution detail exists on the low resolution cage (Fig. D). Fig. C Normal Map stores the difference between high and low resolution objects Fig. D High resolution detail appears on low resolution mesh Unlike Bump Mapped objects, Normal Mapped objects interact more realistically with scene lighting and can simulate object occlusion increasing the realism of the final render but without the need for the heavy polygon counts traditionally required to achieve the same results through standard modeling techniques. Discreet 3ds max 3/7
In a demonstration by Epic Pictures at GDC 2004, 200,000,000 polygons of scene data were normal mapped onto about 1,000,000 polygons capable of being displayed with real-time interaction. This 200:1 ratio is a fair indicator of the implications normal mapping has for creating more complex, more realistic scenes in real-time game engines. Real-time engines still require polygon optimization since even with normal mapping techniques it may still possible to see the low polygon mesh by paying careful attention to the edges of the character (Fig. E, Fig. E2). Fig. E Object Edges give away the low resolution mesh, but the apparent detail is otherwise equal Fig. F2 Object Edges give away the low resolution mesh, but the apparent detail is otherwise equal Discreet 3ds max 4/7
Breaking the barriers taking normal mapping the extra mile With 3ds max 7 the results of the Normal Map can also be interpreted by the rendering engines (Scanline, Mental Ray). Given that rendering pipelines are not constrained by the same limits as real-time engines, the actual polygon count of the lower-resolution normal-mapped film scenes and characters can be significantly higher than those required for games engines. 1. Decreasing the polygon count ratio to lower than 200:1 will remove any risk of the low resolution edges that can be seen in game engines (Fig. E) 2. Even at relatively lower ratios of, for example, 100:1; 200,000,000 polygons of scene detail can be rendered much faster using normal mapping techniques. (even with lighting changes). A two million polygon scene that takes 2 hours to render may only take 10 minutes 1 or less when represented with normal maps. - This provides significant pipeline benefits to film and television visual effects pipelines: Artists can work more interactively with highly detailed scenes Rendering speeds are improved by orders of magnitude Fig. G 360,000 polygons rendered as 3275 polygons of detail with Mental Ray 1 Note: Actual results will vary based on actual scene detail Discreet 3ds max 5/7
Fig. H - 360,000 polygons rendered as 3275 polygons of detail with Mental Ray The benefits of normal mapping The primary benefits of Normal Maps are time-savings and improved performance. With Normal Mapping techniques highly complex scenes can be manipulated and processed at a much lower resolutions with high quality results. As a result there is less risk that either your systems or your pipeline will not be able to efficiently load and manage the increasingly massive data sets required in production today. Normal Mapping can: 1. Significantly improve the interaction of a given 3D scene 2. Significantly reduce the time it takes to render a given 3D scene 3. Significantly increase the complexity of the 3D scene that can be displayed for a given level of performance 4. Significantly increase the complexity of 3D scene that can be rendered within a given time Normal mapping applications for games In gaming applications, where all the rendering is done on the fly and in real-time by the game engine, there is no real option of compositing pre-rendered layers to create the final image. Everything shown to the viewer has to be available in 3D at whatever resolution is supported by the engine. As a result, developers do not have the option of incorporating extremely high-resolution models in the viewport. Although today no game engine can support a scene of 200 million polygons, recent Discreet 3ds max 6/7
demonstrations of Unreal Tournament showed how highly detailed 200-million plus polygon scenes could be reduced to 1 million polygons using normal mapping techniques, and then loaded into the game engine. To do this, companies have had to build their own tools as Epic did for the Unreal Engine demonstrations. With the release of 3ds max 7 Discreet customers will all have access to this powerful new technique. Normal mapping applications for visual effects Take a typical example of visual effects shot such as aging the New York City skyline (shot this year, but required to appear as if it was shot the 1970s). Various buildings, old cars, store fronts and signage need to be added and other buildings need to be removed or aged. The end result will be a highly complex 3D scene. Scene modelers can use 3ds max 7 to create high-resolution versions of the objects in the scene and then generate low-resolution versions. Normal maps from the highresolution versions can then be generated and applied to the low-resolution models to reduce the overall complexity of the scene while maintaining a high level of detail. In doing so the artists now have more resources available to dedicate to foreground hero objects (those that are closer to the camera). They can create them in much higher detail without having a huge impact on either interactivity or rendering. Normal maps offer a great alternative for maximizing objects and reducing polygon counts so that higher quality visual effects can be produced faster and more efficiently Conclusion Some of the biggest challenges that 3D artists face involve long render times and budgeting polygon counts in highly detailed sequences. One of the best ways to lower render times is to have fewer polygons to render. Normal maps offer a great way of shrinking down files without having to compromise detail and image quality in your scene. Artists will often lower the resolution of objects in a scene to compensate for large file sizes. With normal maps, these you can have their cake and eat it too with faster render times and very high quality results. Discreet 3ds max 7/7