
Bachelor Thesis Digital Game Development Thesis no: TA-2013:06 05 2013 Improving Baked Textures as a Content Creator Robin Karlsson School of Computing Blekinge Institute of Technology SE-371 79 Karlskrona Sweden This thesis is submitted to the School of Computing at Blekinge Institute of Technology in partial fulfillment of the requirements for the degree of Bachelor of Science in Digital Game Development. The thesis is equivalent to 10 weeks of full time studies. Contact Information: Author(s): Robin Karlsson 910315-4416 E-mail: [email protected] University advisor(s): Mr. Petar Jercic School of Computing School of Computing Blekinge Institute of Technology Internet : www.bth.se/com SE-371 79 Karlskrona Phone : +46 455 38 50 00 Sweden Fax : +46 455 38 50 57 Abstract Problems. This thesis will look at texture-baking for games and the various problems that surrounds it. Tex- ture baking is the process of transferring details from an often-times very dense high-polygonal details mesh to a lower detailed model that can be used in a game more ef- ficiently. The problems discussed include topics such as failed tangent basis synchronization and improving bakes by using methods such as cages, smoothing groups splits, etc. Motivation. The reason for looking at this is that it is an important topic in content creation for modern games. Yet people are still struggling with how to get normalmaps that are interpreted correctly in their game engine of choice and how to get clean bakes. Solution. The results are a few different methods for im- proving baked textures (such as proxy meshes and cages, etc.) and establishing a pipeline with tangent synchroniza- tion via Handplane. The practical results are in the end presented by some comparison images with models that do and does not use the techniques discussed in this work. The pipeline created in the thesis has the potential to improve the generation of baked textures in a way so that they will render better in real-time applications. Methodology. The results were established by basing it upon baking experiences regarding baking and texturing models for real-time applications. The experiments were set up so that the author would revisit older, somewhat complex models and try to improve their baking. There were also a comparison of applications that were compared by trying to generate noise-less ambient occlusion textures and comparing results such as render time and quality. Keywords: Texture-baking, normalmaps, pipeline i Contents Abstract i 1 Introduction 1 1.1 Chapter Outline . 1 1.2 Background . 3 1.2.1 Real-time Rendering . 3 1.2.2 Texture Baking . 3 1.3 Research Questions . 5 1.3.1 Are there any differences worth mentioning between baking applications . 5 1.3.2 What methods are the to improve baked results? . 5 1.3.3 How can the baking pipeline be improved upon . 5 1.4 Purpose . 6 2 Production and Methods 7 2.1 Methodology . 7 2.1.1 Testmodels . 7 2.1.2 Testing . 7 2.2 Common Baked Textures . 9 2.2.1 Normal Maps . 9 2.2.2 Ambient Occlusion . 10 2.2.3 Displacement . 10 2.2.4 Light/shadow . 11 2.3 State of the Art of Texture Baking . 13 2.3.1 Blender . 13 2.3.2 Maya/Mental Ray . 14 2.3.3 xNormal . 14 2.3.4 ZBrush . 14 2.3.5 Comparison . 16 3 Results and Conclusions 17 3.1 Improving Baked Textures . 17 3.1.1 Smoothing-groups/edge-splits . 17 3.1.2 UV-seams and layout . 18 ii 3.1.3 Cages . 19 3.1.4 Support geometry . 20 3.1.5 Triangulation . 20 3.1.6 Exploding . 20 3.1.7 Unified meshes . 21 3.2 Diversified Baking Pipeline . 22 3.2.1 Pipeline . 23 3.3 Improving the Content Creation Workflow . 26 3.3.1 Standardized Tangents and Normal map Interpretation . 26 3.3.2 Custom Tangent Basis . 26 3.3.3 Object Space Normal maps . 26 3.3.4 Image Masks . 27 3.4 Model Results . 29 3.4.1 Ball Mask . 29 3.4.2 Clock . 29 3.5 Discussion . 31 3.5.1 Pipeline Strengths . 31 3.5.2 Testing models . 31 3.6 Conclusions . 32 3.7 Future Work . 33 3.7.1 Tiling Textures . 33 3.7.2 Lightmap Baking . 33 3.7.3 2D Baking . 33 4 References 34 A Appendix 35 A.1 Word List . 35 iii List of Figures 2.1 Showcase of ambient occlusion: Clock A is without, Clock B is with AO. 11 2.2 ZBrush detail transer: highpoly (A), lowpoly (B), reprojected high- poly (C) . 15 2.3 Table of the different rendertimes for ambient occlusion in the dif- ferent applications . 16 3.1 Demonstration of the difference normal splits make: texture A is without edge-splitting and texture B is with. 18 3.2 Showcase of how important cages or support geometry can be. A is the original mesh (without anything extra to control the baking), mesh B have some support loops along the top and mesh C uses a cage to control the ray-casting. 19 3.3 Demonstration of the difference of using exploded (A), split but unexploded (B) and unified topology (C) for the intersection of a cylinder with a cube. Wireframe model provided for clarity. 21 3.4 Demonstration of unsynchronized (b) and synchronized (c) tan- gents space normal maps rendered in the Unity game engine. Only the normal maps are different. Highpoly model (A) is shown for clarity . 22 3.5 An example of a color-mask texture . 27 3.6 UDK render of two ballmasks with before (A) and after (B) com- parisons . 29 3.7 UDK render of two clocks with before (A) and after (B) comparisons 30 iv Chapter 1 Introduction This thesis will discuss baking textures for realtime models using the content creation pipeline and discuss the problems surrounding this. To bake textures mean that one project details such as the normals and/or ambient occlusion (and other texture maps often based on the geometry) that a highpoly model contains. This baking is an offline rendering which means that it will not be done in real- time and only during the creation of the model. The subject were chosen because it is a very important part of the digital content creation process and there are still some problems surrounding it, most importantly tangent synchronization (which regards how normal maps are inter- preted) and problems surrounding making clean bakes for their models. To make a clean bake means that you manage to generate your baked textures without any artefacts, such as missed geometry along the smoothing group splits and/or asynchronous tangent bases. The latter meaning that the normal map is interpreted differently in the baking and rendering applications. A thesaurus is included in the appendix that should include explanations for most of the terms used in this thesis. However the terms will be explained as they are brought up as well. 1.1 Chapter Outline Chapter 1 will start out talking about what texture baking is and some of the problems surrounding it. It will then go on to describe the questions that this thesis hope to resolve. Chapter 2 will then go on to describe the methodology behind the research and talk briefly about some popular textures to bake. Lastly there will be a look at some of the more popular baking applications as to see if there is a need for being able to freely choose baking application/applications. Chapter 3 will finally attempt to answer the research questions posed earlier by talking about methods to improve baked textures and a pipeline that is a bit 1 Chapter 1. Introduction 2 more open regarding choice of baking applications. The thesis will then finish by showing the resulting models and some concluding thoughts and reflections. Chapter 4 will contain the references for the thesis. Chapter 1. Introduction 3 1.2 Background 1.2.1 Real-time Rendering Real-time rendering is concerned with making images rapidly on the computer. It is the most highly interactive area of computer graphics. An image appears on the screen, the viewer acts or reacts, and this feedback affects what is generated next. This cycle of reaction and rendering happens at a rapid enough rate that the viewer does not see individual images, but rather becomes immersed in a dynamic process. (Akenine-Moller T. et. al 2012) In short, real-time rendering today consists of sending data (geometry and textures) to the graphics card (GPU) where it will use that data to later render the images in very fast succession (preferably 30 renders per second or more). The need to render so quickly makes it necessary to use simplified rendering methods (such as simplified lighting methods), more optimized (lower polygon) models and smaller textures than you would otherwise need if the rendering were not occurring in real-time. The render method on the other side of the spectrum is called offline rendering. Offline rendering can handle millions of triangles with high-resolution textures, more complex lighting and advanced animation, etc. because it does not need to be nearly as fast as the real-time rendering. An offline render can take hours or even days to render a single frame. In short real-time rendering is used for interactive software or games (for example Mayas viewport or the game Crysis), while offline rendering is often used for movies (e.g Toy Story or Avatar). There is however a technique that can be used for making real-time rendering look a lot more like offline rendering, this technique is called texture baking.
Details
-
File Typepdf
-
Upload Time-
-
Content LanguagesEnglish
-
Upload UserAnonymous/Not logged-in
-
File Pages41 Page
-
File Size-