<li><aclass="backlink"title="Click to do a full-text search for this title"href="./ArtReference_CreatingModels?action=fullsearch&value=linkto%3A%22ArtReference+CreatingModels%22&context=180">ArtReference CreatingModels</a></li>
<h1id="head-6b7985be15db91e329f04011ed66c696e0f3020c">Creating Models in Quake 4</h1>
<spanclass="anchor"id="line-2"></span><spanclass="anchor"id="line-3"></span><pclass="line874">This document will attempt to explain the process that the artists and modelers of Raven Software used to create their world models, creatures and characters for Quake4. It begins at the concept stage, on through to creating the high and low poly models, creating the UVs, setting up the shaders, rendering out the normal, and then painting the diffuse, specular, and height maps to create a finished skin. While this document is focused on creating a creature, the model you make could be anything in your imagination. We have tried to simplify some of the directions and descriptions for those inspired individuals that don’t have a lot of experience creating assets for a game. <spanclass="anchor"id="line-4"></span><spanclass="anchor"id="line-5"></span><pclass="line867">
<spanclass="anchor"id="line-6"></span><pclass="line874">Try to think ahead when creating your concept drawing of your character for Quake4. There are some technical limits to the Doom3 engine and you need to take those limits into account when modeling and painting your character. At the concept stage, it is smart to try and incorporate fixes to those limits into your design. Tubes and hoses that hang off or stick out from the character may look great, but they not only cause occasional modeling headaches, but might also increase your poly count on your lo-poly model unnecessarily. Those hanging or jutting tubes may also throw too many shadow volumes in the engine which could drop the frame-rate of the game dramatically. They will also require the rigger/animator to create a skeleton for them that he or she will then need to animate to add realism. When drawing up your ultimate character design try to take into account poly limits or lighting issues that your creation may unwittingly create. <spanclass="anchor"id="line-7"></span><spanclass="anchor"id="line-8"></span><pclass="line874">With the Strogg Grunt we created for Quake4, the concept artist originally created a creature with four arms, two smaller ones along with the two large ones, and had drawn pipes and hoses jutting out from its forearms and going into its back. To lessen the possible issues the original design would have created, the artist removed the jutting hoses on a revised concept drawing that the modeler used to create his model of the Grunt. The two smaller arms were eventually removed from the design at a later date. See examples below… <spanclass="anchor"id="line-9"></span><spanclass="anchor"id="line-10"></span><pclass="line867">
<spanclass="anchor"id="line-11"></span><spanclass="anchor"id="line-12"></span><pclass="line874">The concept artist also created a Front, Back, Side-View drawing to help the modeler visualize what the creature looked like from all angles and to simplify the modeler’s job. See the Strogg Grunt’s Front/Back/Side-View drawing below… <spanclass="anchor"id="line-13"></span><spanclass="anchor"id="line-14"></span><pclass="line867"><imgclass="attachment"src="ArtReference_CreatingModels_02.jpg"title="attachment:image_02.jpg"/><spanclass="anchor"id="line-15"></span><spanclass="anchor"id="line-16"></span><pclass="line867">
<spanclass="anchor"id="line-17"></span><pclass="line874">After coming up with a viable concept design for your character, you’ll want to model it using one of the many 3D modeling packages out there. Our hi-poly modelers used Maya and Lightwave to do all of their high poly modeling for Quake4. You can use most any modeling software, but in the end, we used Maya and Lightwave because we wanted to follow the same tool path that our friends down at Id Software used for Doom3. We chose to go with that tool set because we were using their revolutionary new engine and if we had any problems or questions concerning the process it would be easier for them to help us. <spanclass="anchor"id="line-18"></span><spanclass="anchor"id="line-19"></span><pclass="line862">You are going to need to model your character in both high poly and in low poly. For the low poly, our creatures ranged from 500 polys on some of the lower range creatures on up to 5000 to 6000 polys for some of the bosses. The high poly models ranged anywhere from a few thousand polys on up to millions of polys. The high poly model <strong>does not</strong> go into the final game. It is used to render out a <strong>normal map</strong> that makes the low poly model that does go into the game look like a higher poly model. The reason the high poly model does not go into the game is because there are far too many polys in the model for the engine to run smoothly without chugging, etc. The low poly with its normal map is much cheaper memory-wise and makes the low poly look like it’s much higher in poly count when it’s not. Going with this process allows the game to run at a much higher frame-rate. <spanclass="anchor"id="line-20"></span><spanclass="anchor"id="line-21"></span><pclass="line874">Some tips to take into consideration when modeling your high and low poly models: <spanclass="anchor"id="line-22"></span><spanclass="anchor"id="line-23"></span><ul><li><pclass="line891"><em>High and low poly model positioning</em>: Try to have the high poly and low poly models conform as closely as possible to each other to obtain the best possible render. Both the high and low poly models must occupy the same space and be lined up with each other in order to get a precise render. <spanclass="anchor"id="line-24"></span></li><li><pclass="line891"><em>“T” pose your creature or character model</em>: When modeling your creature or character, place them into the classic T pose configuration, not in a cool looking action pose, etc. The T pose will allow you to copy and paste similar parts (arms, legs, equipment) from one side to the other, help out when ripping your UVs, and also help the animator when he is rigging and point-weighting your model. Pose the wrists and hands palm forward to help with awkward poses in-game like holding weapons, using GUIs, etc. <spanclass="anchor"id="line-25"></span></li><li><pclass="line891"><em>Add enough polys to joint areas to help in animating your model</em>: Make sure you add enough polys to wrists, elbows, shoulders, knee, and ankle joints to allow your creature or character to move properly and look realistic when animated. <spanclass="anchor"id="line-26"></span></li><li><pclass="line891"><em>Tripling your model before rendering</em>: Make sure both your high poly and low poly models are tripled and that there are no 1, 2, or 4 poly or non-planer polys on your model. If you do not triple and remove the offending 1, 2, or 4 poly or non-planer polys, your model will not load when you try to render it out. <spanclass="anchor"id="line-27"></span></li><li><pclass="line891"><em>Closing off the mesh</em>: Close off open areas on the high poly that open to the inside of the model to prevent the renderer from trying to go inside while rendering out your normal map. <spanclass="anchor"id="line-28"></span></li><li><pclass="line891"><em>Trying to prevent overdraw during rendering</em>: While modeling your high poly model, try to prevent creating areas where the render trace will create overdraw while rendering out your nor
<h2id="head-eca996ffd3893c33bba1c4089048b4e051110ada">Ripping, Shaders and Paths, and Rendering Out Your Model</h2>
<spanclass="anchor"id="line-63"></span><pclass="line874">After you have finished modeling your creature, you’ll need to rip your lo-poly model to create your UV coordinates for your model’s skin. You’ll need to use some kind of UV creation software, like U-View, to create your model’s UVs. Most modeling packages come with the tools necessary to create UVs. Some are pretty basic, others are pretty good. Some come with only the ability to create quick atlas UVs, where the software lays out the UVs in a haphazard conglomeration with no thought to seams, ease of painting, etc. Maya’s UV tools are really quite nice and allow manipulation by the artist in creating their UVs. Lightwave’s built-in UV creation tools aren’t the best, but as far as rendering goes, Lightwave is great. There are also sites online that provide user-created plug-ins for several different software packages that will allow you to manipulate your UVs even more. At Raven, one of our tool guys created a really great proprietary UV tool for us artists to use in Lightwave. <spanclass="anchor"id="line-64"></span><spanclass="anchor"id="line-65"></span><pclass="line867"><strong>Things to check for before beginning your UV coordinates:</strong><spanclass="anchor"id="line-66"></span><oltype="1"><li><pclass="line862">Make sure both the high and low poly models are <strong>tripled</strong>. <spanclass="anchor"id="line-67"></span></li><li>Make sure both the lo-poly and hi-poly models share the same origin space since the texture coordinates on the lo-poly will use the hi-poly as a glorified bump-map. If they don’t line them up the normal map could be distorted or misaligned when rendered. <spanclass="anchor"id="line-68"></span><spanclass="anchor"id="line-69"></span></li></ol><pclass="line867"><strong>Cutting your model into sections for ripping & rendering</strong>: The high poly model may require you to break it up into smaller groupings or sections to overcome possible distortion or over-draw problems during the rendering process. This can be very time-consuming, but is worth it when you get a nice, clean render. You may need to do this on both the hi-poly and lo-poly models. <spanclass="anchor"id="line-70"></span><spanclass="anchor"id="line-71"></span><pclass="line867"><strong>How to rip a model</strong>: Although every UV coordinate creator is different, here are several basic tips that will help you to create the best UVs possible. <spanclass="anchor"id="line-72"></span><oltype="1"><li>Try to place seams in inconspicuous places that aren’t easily seen. Place then on the inside of the arms and legs, down the sides of the torso, etc. This way they’ll not be as noticeable to the player and will make your model’s skin look even better. <spanclass="anchor"id="line-73"></span></li><li><pclass="line862">When ripping difficult parts, like arms, hands, and legs, take them apart in strips, like peeling a banana, and then knit them back together when they are flattened and weld them back together. <strong>IMPORTANT!</strong> Make sure you weld the correct points to their corresponding sister point. Otherwise, you’ll end up with screwy looking UVs. <spanclass="anchor"id="line-74"></span></li><li>For symmetrical parts like the arms, legs, the head, and the torso, you can delete one side of the model and just rip and flatten out one half. After ripping those pieces, you can copy and mirror them onto the other side of your model. You’ll then need to reweld the points along the central seam. Make sure the model is actually symmetrical, though. <spanclass="anchor"id="line-75"></span></li><li>If you have an asymmetrical item, like a head with a piece of machinery on one side only or a face that has a scar over only one eye, you can do more of a global rip and flatten out the entire head. Have the seam run up the middle of the back of the neck and up into the top of the head. The painted hair on your skin will help cover the seam. <spanclass="anchor"id="line-76"></span></li><li><pclass="line862">Make sure to set
<h2id="head-53be7a14438e698838dfff7348c40030a3e035e9">Paths and Material Shaders:</h2>
<spanclass="anchor"id="line-80"></span><pclass="line862">For a full understanding of paths and shaders and how to set them up please read the <ahref="./ArtReference_Q4Shaders.html">Quake 4 Shaders</a> document. <spanclass="anchor"id="line-81"></span><spanclass="anchor"id="line-82"></span><spanclass="anchor"id="line-83"></span><pclass="line867">
<h2id="head-991d9121a26145513834c89d7a0e11e244f494d5">Rendering Out Your Normal Map:</h2>
<spanclass="anchor"id="line-84"></span><pclass="line874">Below is a step-by-step guide to rendering out your normal map. Included are how to prep your model for rendering, how to set up your shaders, and some tips and troubleshooting. This how-to occasionally refers to Lightwave, which we used as our UV creation software. <spanclass="anchor"id="line-85"></span><spanclass="anchor"id="line-86"></span><spanclass="anchor"id="line-87"></span><pclass="line867"><strong>Step 1: Preliminary set up</strong><spanclass="anchor"id="line-88"></span>The first steps are always essential; the basics are always the first thing we overlook. <spanclass="anchor"id="line-89"></span><spanclass="anchor"id="line-90"></span><ul><listyle="list-style-type:none"><pclass="line891"><strong>1.a Make sure your high and low poly model occupy the same space in separate files:</strong><spanclass="anchor"id="line-91"></span><oltype="i"><li>Open both files into Lightwave and make sure the low and high poly meshes are occupying the same space by activating both files in the Layers window in Lightwave. <spanclass="anchor"id="line-92"></span><spanclass="anchor"id="line-93"></span></li></ol><pclass="line891"><strong>1.b Make sure your high and low poly models are tripled.</strong><spanclass="anchor"id="line-94"></span><oltype="i"><li>In Lightwave, hold down (shift T) to triple your models <spanclass="anchor"id="line-95"></span><spanclass="anchor"id="line-96"></span></li><liclass="gap"> While in Polygon mode, look in the polygon statistic window and make sure there are no 1, 2, or 4 poly or non-planar polys in the model. If there are, select them in this window and delete them. If you don’t delete them, your models won’t load when you try to render them out. <spanclass="anchor"id="line-97"></span><spanclass="anchor"id="line-98"></span></li></ol></li></ul><pclass="line867"><strong>Step 2: Prepping UVs</strong><spanclass="anchor"id="line-99"></span><em>UV definition</em>: UVs are sectors or coordinates that projects the shader. This is not a direct part of the mesh; it serves as a way to read the .tga files. Sometimes the UV’s may become unwelded in transfers from .obj files or Maya files. <spanclass="anchor"id="line-100"></span><spanclass="anchor"id="line-101"></span><ul><listyle="list-style-type:none"><pclass="line891"><strong>2.a Merge your points</strong>: After you have set up your UV map, make sure the model points are merged and weld any strange points that haven’t been merged. If you don’t know how to weld points see Welding Commands pp. 26.5 or Merge and Weld Commands pp. 28.36 in the Lightwave manual (seven) <spanclass="anchor"id="line-102"></span><spanclass="anchor"id="line-103"></span><pclass="line891"><strong>2.b Check to make sure merged points are supposed to be joined</strong>: Some of our mechanical models are pressed in and packed pretty close. Sometimes points get merged that shouldn’t be. It’s rare that this happens, but on models with moving mechanics, it might be good to check. <spanclass="anchor"id="line-104"></span><spanclass="anchor"id="line-105"></span><pclass="line891"><strong>2.c How big is my base page</strong>: You should, at this time, determine how big of a base page .tga you need to render. <spanclass="anchor"id="line-106"></span><spanclass="anchor"id="line-107"></span></li></ul><pclass="line874">By merging points you assure a smoother normal map. If you didn’t merge your points the models would have strange seams all over it, and light wouldn’t move over the surface correctly in game. <spanclass="anchor"id="line-108"></span><spanclass="anchor"id="line-109"></span><pclass="line867"><strong>Step 3: Setting up material shaders</strong><spanclass="anchor"id="line-110"></span>This is the clincher, and the thing that most people get wrong. Let’s face facts; it’s easy to mess this up, so in this stage it’s essential to be patient and not to panic. <spanclass="anchor"id="line-111"></span><spanclass="anchor"id="line-112"></span><pclass="
<spanclass="anchor"id="line-128"></span></pre><spanclass="anchor"id="line-129"></span><spanclass="anchor"id="line-130"></span><spanclass="anchor"id="line-131"></span><ul><listyle="list-style-type:none"><pclass="line891"><strong>3.a Writing the shader for renderbump</strong>: This is the key to make your render work. So what do you do? Well the safest and easiest thing to do is to copy and paste a previous entry and change the path names. Here’s the breakdown using the above example: <spanclass="anchor"id="line-132"></span></li></ul><pclass="line867"><spanclass="anchor"id="line-133"></span><pre> The top line: models/mapobjects/strogg/barrels_and_containers/barrels/medium1_low is the Shader title: this is what the game looks for when you activate a render. Think of it as an alias or a chapter title.
<spanclass="anchor"id="line-134"></span>
<spanclass="anchor"id="line-135"></span> noselfShadow: This command tells the engine that the model is to generate no self shadows that might slow down the engine even more.
<spanclass="anchor"id="line-136"></span>
<spanclass="anchor"id="line-137"></span> unsmoothedtangents: Unsmoothed tangents are for animated models. If the model isn’t animated DO NOT use unsmoothed tangents.
<spanclass="anchor"id="line-138"></span>
<spanclass="anchor"id="line-139"></span> renderbump: This is the command the game looks for when you ask for a renderbump. If the shader doesn’t have this command in it, it won’t render.
<spanclass="anchor"id="line-140"></span>
<spanclass="anchor"id="line-141"></span> -size 256 256: This is the size that the final rendered normal will render out at. You can alter the size of the rendered out normal by decreasing or increasing the two numbers. The numbers have to be at a power of two, such as 32 X 32, 64 X 64, 128 X 128, 256 X 256, 512 X 512, or 1024 X 1024, etc. You can also set it with one number larger than the other, such as 512 X 1024.
<spanclass="anchor"id="line-142"></span>
<spanclass="anchor"id="line-143"></span> -trace .05: Trace is the height in which the model renders. Think of the low poly model as the surface in which the high poly is being drawn onto. If the high poly has a lot of floating geometry, you may need to render the model multiple times at different trace heights.
<spanclass="anchor"id="line-144"></span>
<spanclass="anchor"id="line-145"></span> -aa 2: This is an anti-alias function. If this is set to 1 it renders your UV map 1 to 1 whereas if it’s set at 2 its 2 to 1. A setting of 2 renders faster.
<spanclass="anchor"id="line-146"></span>
<spanclass="anchor"id="line-147"></span> -mergehigh: You need this to merge the high poly model so it will render as one model. If you don’t have this in, it will render a partial model.
<spanclass="anchor"id="line-148"></span>
<spanclass="anchor"id="line-149"></span> models/mapobjects/barrel/barrel1_low_local.tga: This is telling the game to write a targa named barrel1_low_local.tga to models/mapobjects/strogg/barrels_and_containers/barrels directory (remember these are path names, so each slash is a folder).
<spanclass="anchor"id="line-150"></span>
<spanclass="anchor"id="line-151"></span> work/models/mapobjects/strogg/barrels_and_containers/barrels/barrel1_high.lwo: This tells the game to use this high poly model to create the normal map. You can keep your high poly models in art/work. A high poly model should NEVER be on Q4base.
<spanclass="anchor"id="line-152"></span>
<spanclass="anchor"id="line-153"></span> Remember to open and close the shader using { and } so that the game recognizes it. See the Quake 4 Shaders document for a better explanation.
<spanclass="anchor"id="line-154"></span></pre><spanclass="anchor"id="line-155"></span><spanclass="anchor"id="line-156"></span><ul><listyle="list-style-type:none"><pclass="line891"><strong>3.b Double check your path</strong>: If the path is wrong to the high poly model it won’t render. The game will not allow spaces in the path name, so use an underscore ( _ ) in place of a space. <spanclass="anchor"id="line-157"></span><spanclass="anchor"id="line-158"></span><pclass="line891"><strong>3.c Spelling</strong>: Check your spelling and don’t forget to save <spanclass="anchor"id="line-159"></span><spanclass="anchor"id="line-160"></span></li></ul><pclass="line867"><strong>Creature, Characters, and Other Involved Model Shaders</strong>: Shaders for creatures, characters, and other involved models are much more complicated and confusing. Eventually, we built up a pretty big library of shaders and could just copy and paste ones and then change out the paths and model and skin map names as needed. We recommend doing the same…copy and paste. <spanclass="anchor"id="line-161"></span><spanclass="anchor"id="line-162"></span><pclass="line874">Here’s an example of a creature’s shader set-up… the Makron. Creatures are much more involved than textures or simple, unanimated world models since you have to include shaders for the eyes, weapons, the clipping hull, the glow map, and the teleport fade-out. <spanclass="anchor"id="line-163"></span><spanclass="anchor"id="line-164"></span><pclass="line867"><spanclass="anchor"id="line-165"></span><pre>//Makron--------------------------------------------------------------------------------
<spanclass="anchor"id="line-273"></span></pre><spanclass="anchor"id="line-274"></span><spanclass="anchor"id="line-275"></span><pclass="line867"><strong>Step 4: Setting up shaders for your model</strong><spanclass="anchor"id="line-276"></span>In this stage, you’ll go back into the low poly model and assign the shader you wrote to make your normal map. <spanclass="anchor"id="line-277"></span><spanclass="anchor"id="line-278"></span><ul><listyle="list-style-type:none"><pclass="line891"><strong>4.a Open your low poly model and assign your shader name to a surface on the model</strong>: This is another key to get things to work, if you don’t have the right shader on the right model, you won’t be getting the right results. In Lightwave hit Q and a dialogue will appear. Copy the shader name from the material file and paste it into the dialogue. So in the previous example you’d open the medium.lwo barrel model and assign models/mapobjects/strogg/barrels_and_containers/barrels/medium1_low to the model. <spanclass="anchor"id="line-279"></span><spanclass="anchor"id="line-280"></span><pclass="line891"><strong>4.b Assign attributes to the surface</strong>: <spanclass="anchor"id="line-281"></span><oltype="1"><li>In Lightwave open the Surface Editor. <spanclass="anchor"id="line-282"></span><spanclass="anchor"id="line-283"></span></li><liclass="gap">Select the shader name in the left column (it will highlight) <spanclass="anchor"id="line-284"></span><spanclass="anchor"id="line-285"></span></li><liclass="gap">Go to the basic tab <spanclass="anchor"id="line-286"></span><spanclass="anchor"id="line-287"></span></li><liclass="gap">Go to the color line and hit the “T” button <spanclass="anchor"id="line-288"></span><spanclass="anchor"id="line-289"></span></li><liclass="gap">The Texture editor dialog will appear <spanclass="anchor"id="line-290"></span><spanclass="anchor"id="line-291"></span></li><liclass="gap">In the middle right column there will be a pop down menu for projection, select UV <spanclass="anchor"id="line-292"></span><spanclass="anchor"id="line-293"></span></li><liclass="gap">A UVmap pop down menu will appear <spanclass="anchor"id="line-294"></span><spanclass="anchor"id="line-295"></span></li><liclass="gap">Select the Texture UV map. (Generally this will apply) <spanclass="anchor"id="line-296"></span><spanclass="anchor"id="line-297"></span></li><liclass="gap">Close the Texture editor <spanclass="anchor"id="line-298"></span><spanclass="anchor"id="line-299"></span></li><liclass="gap">Select the gray box on the color line, a color window will appear. Select a different color than gray. (this is to assure your changes were made) to close the window click the OK button <spanclass="anchor"id="line-300"></span><spanclass="anchor"id="line-301"></span></li><liclass="gap">Go to the bottom of the right column, and click the smoothing button on. For rendering put it at 180 <spanclass="anchor"id="line-302"></span><spanclass="anchor"id="line-303"></span></li></ol><pclass="line891"><strong>4.c Save</strong><spanclass="anchor"id="line-304"></span><spanclass="anchor"id="line-305"></span></li></ul><pclass="line874">You’ve now prepped the low poly model to be rendered. When you activate the low poly to be rendered, the game will load the model, and see that it has an active shader. It will then find the shader and use the renderbump line to write a targa based on the high poly model using the parameters you’ve set. <spanclass="anchor"id="line-306"></span><spanclass="anchor"id="line-307"></span><pclass="line867"><strong>Step 5: Rendering</strong><spanclass="anchor"id="line-308"></span><ul><li><pclass="line862">With Quake4 installed on your computer, open the <strong>Command Prompt</strong> on your computer (Go to <strong>Start</strong>, then <strong>All Programs</strong>, <strong>Accessories</strong>, <strong>Command Prompt</strong>). <spanclass="anchor"id="line-309"></span><spanclass="anchor"id="line-310"></span></li><liclass="gap"><pc
<spanclass="anchor"id="line-343"></span></pre><spanclass="anchor"id="line-344"></span><spanclass="anchor"id="line-345"></span><pclass="line874">If all went well, you rendered out your normal map for your creature or character. In the next section, we’re going to look into tips, tricks and troubleshooting for potential problems that may occur. <spanclass="anchor"id="line-346"></span><spanclass="anchor"id="line-347"></span><pclass="line867"><imgclass="attachment"src="ArtReference_CreatingModels_07.jpg"title="attachment:image_07.jpg"/><spanclass="anchor"id="line-348"></span><spanclass="anchor"id="line-349"></span><pclass="line867"><strong>Step 6: Tips and Tricks</strong><spanclass="anchor"id="line-350"></span>In this section, we’ll go over some tips and tools that have been added to the render code to make it easier to render complex geometry. <spanclass="anchor"id="line-351"></span><spanclass="anchor"id="line-352"></span><ul><listyle="list-style-type:none"><pclass="line891"><strong>6.a Avoid overdraw</strong>: Overdraw is our bane on animated pieces. The best thing to do is have the modeler build the model and separate it into sections. Then write some shaders that point to the different pieces and render it that way. Try to set up your low poly and highlight pieces that aren’t touching each other as a shader name and the rest as of the model with a default surface. Mirror the low poly selections in a high poly file and write a shader to the new high poly pieces. Assign the shader to the low and render the file. It will only render what’s highlighted. Then render the others until you’re done. Assemble the Local map using the channels and layers then you have your local. Save it down as a targa. Remember to change the name of the local map in the render line EVERY TIME you render different sections from the same model, otherwise you’ll copy over your work and be angry. <spanclass="anchor"id="line-353"></span><spanclass="anchor"id="line-354"></span><pclass="line891"><strong>6.b Assembling the local map</strong>: When you have multiple local maps and you need to assemble them into one map use the channels in each file, invert the selection and give yourself a three pixel expand so you have some bleed on the local. Invert the selection and shift drag it into another file. It should snap to the edge. A different way of doing it is after you enlarge the selection and reinvert the file you can fill the negative selection with a sampled 50% gray. Deselect the file and drag the file over to a base file. Assign the layer with overlay and all of the gray will drop out. <spanclass="anchor"id="line-355"></span><spanclass="anchor"id="line-356"></span><pclass="line891"><strong>6.c Rendering takes time and patience</strong>: For higher poly models, like creatures or characters that are in the millions of polys range, it may take several minutes to an hour or more to render out parts. Be patient… <spanclass="anchor"id="line-357"></span><spanclass="anchor"id="line-358"></span><pclass="line891"><strong>6.d The .1, .2. .3 system</strong>: Early on in the project, one of our programmers added some nice functionality to the rendering system. If you want to render a section of the model because of weird lighting or you may want to render out a partial model, you can add a .1 after the surface name in Lightwave. (or whatever you want to name it: Example shadername.Forehead or shadername.300 or shadername.iamcool, whatever) <spanclass="anchor"id="line-359"></span><spanclass="anchor"id="line-360"></span></li></ul><pclass="line867"><spanclass="anchor"id="line-361"></span><pre>Example:
<spanclass="anchor"id="line-370"></span>While the model is rendering, it will render the top shader first and then render the .1 shader separately afterwards. All in the same render and the same file.
<spanclass="anchor"id="line-371"></span>
<spanclass="anchor"id="line-372"></span>If you really want to get tricky, lets say only one area of the model isn’t rendering properly, and you know you need a higher trace value for one section. Instead of cutting and pasting into the local map select the geometry and add
<spanclass="anchor"id="line-375"></span>This will render that area at a higher trace. The only drawback to this is it can make for some weird lighting. The best thing to do for this is to select whole sections of geometry…select a whole side verses part of a side.
<spanclass="anchor"id="line-376"></span></pre><spanclass="anchor"id="line-377"></span><ul><li><pclass="line891"><strong>Painting on the normal</strong>: Sometimes you’ll get weird anamolies that no amount of rerendering or altering the trace height will get rid of. In those cases, the artist would paint on the normal map in Photoshop to get rid of the anamoly. Painting on the normal takes skill and a real good understanding of how the normal map works. Several of our artists definitely painted on their normals, but we recommend that the best thing to do is to either CUT and PASTE from another “clean” section of the normal or use the CLONING tool in Photoshop. You can also pull detail from other local maps, but be sure the renders are on the same planes and you cannot rotate anything you may bring into the new local map. <spanclass="anchor"id="line-378"></span><spanclass="anchor"id="line-379"></span></li></ul><pclass="line867"><strong>Step 7: Trouble shooting</strong><spanclass="anchor"id="line-380"></span>There will occasionally be problems that arise with the renderbumping system. Some of the problems can be solved pretty easily while others may take time to figure out. Refer to this listing when you have a problem… <spanclass="anchor"id="line-381"></span><spanclass="anchor"id="line-382"></span><pclass="line867"><strong>IMPORTANT!</strong> If something isn’t working right wait until the render is done and look through the errors. When the render has finished look at the print-out that pops up afterwards. Nine times out of ten, if it’s a shader or a model issue it will show up there. <spanclass="anchor"id="line-383"></span><spanclass="anchor"id="line-384"></span><pclass="line867"><strong>Problems and possible fixes:</strong><spanclass="anchor"id="line-385"></span><ul><listyle="list-style-type:none"><pclass="line891"><strong>7.a The render window pops up, but there’s no local map being drawn:</strong>This could be any number of things. <spanclass="anchor"id="line-386"></span><spanclass="anchor"id="line-387"></span><oltype="1"><li>Check the error <spanclass="anchor"id="line-388"></span><spanclass="anchor"id="line-389"></span></li><liclass="gap">Check the shader for spelling and path <spanclass="anchor"id="line-390"></span><spanclass="anchor"id="line-391"></span></li><liclass="gap">Check the low poly model’s shader surface name. <spanclass="anchor"id="line-392"></span><spanclass="anchor"id="line-393"></span></li><liclass="gap">Check to make sure you’re rendering from the correct model. <spanclass="anchor"id="line-394"></span><spanclass="anchor"id="line-395"></span></li><liclass="gap">Sometimes the model will have a surface that is actually a shader. If this happens the game gets caught in a loop and won’t render. <spanclass="anchor"id="line-396"></span><spanclass="anchor"id="line-397"></span></li></ol><pclass="line891"><strong>7.b The low or high poly model won’t load:</strong><spanclass="anchor"id="line-398"></span><spanclass="anchor"id="line-399"></span><oltype="1"><li><pclass="line862">Check to see if model is tripled and has only tris. If any model has quads in it or anything other than tris it <strong>WILL NOT LOAD.</strong><spanclass="anchor"id="line-400"></span><spanclass="anchor"id="line-401"></span></li><liclass="gap">The High poly model may have some surface the game doesn’t like. It’s rare that this happens, but it does occur in some of the Maya and 3D Studio MAX translated models. <spanclass="anchor"id="line-402"></span><spanclass="anchor"id="line-403"></span></li></ol><pclass="line891"><strong>7.c The render is creating weird colors in the local map:</strong><spanclass="anchor"id="line-404"></span><spanclass="anchor"id="line-405"></span><oltype="1"><li><pclass="line891"><strong>Shards of color</strong>: This could be a couple of different things. Either you need to heighten or lower your trace height or you have some problem with overdraw. For trace height use the .1, .2 –trace .07 trick. Or re-re
<h2id="head-4152af2ebdcdf51e21eaf84fd7ea3f511a7a1fab">Painting Your Diffuse, Specular, and Height Maps:</h2>
<spanclass="anchor"id="line-418"></span><pclass="line874">After you have rendered out the normal map, you can then start painting the diffuse, specular, and height maps for your creature or character. Any painting program can be used to create your skin, but we at Raven use Photoshop, as do most computer and console game studios. <spanclass="anchor"id="line-419"></span><spanclass="anchor"id="line-420"></span><pclass="line867"><strong>Diffuse Map</strong>: The diffuse map is the color portion of your skin. It determines the colors of the creature’s flesh, paint job, decals, blood, etc. Since your creature or character is somewhat realistic looking in the game, we recommend using photo reference for your diffuse. Photo reference are digital photos of rusty metal, different types of metals, chipped paint, blood, wounds, flesh, etc that are used to create realistic looking skins. You can use a digital camera and go out and shoot lots of real asset photos to use for your diffuse map. There is still plenty of “real” painting to do on the skin, even with using photo reference. <spanclass="anchor"id="line-421"></span><spanclass="anchor"id="line-422"></span><pclass="line874">For the Makron’s diffuse map, the artist used photos of the scratched up paint on a bulldozer that he took for the painted and scratched areas of the skin. The artist altered the color slightly and adjusted and added additional scratches, dirt, and rust. He also used several different photos of differing types of metals, etc to vary up the detail on the Makron. For the Makron’s exposed flesh, he used photos of pig flesh and added in the veins, bruising, and ripped open wounds and blood. See examples of the bulldozer photo reference and the final diffuse below: <spanclass="anchor"id="line-423"></span><spanclass="anchor"id="line-424"></span><pclass="line867"><imgclass="attachment"src="ArtReference_CreatingModels_08.jpg"title="attachment:image_08.jpg"/><spanclass="anchor"id="line-425"></span><spanclass="anchor"id="line-426"></span><pclass="line867"><imgclass="attachment"src="ArtReference_CreatingModels_09.jpg"title="attachment:image_09.jpg"/><spanclass="anchor"id="line-427"></span><spanclass="anchor"id="line-428"></span><pclass="line867"><strong>Specular Map</strong>: The specular map is used to add sheen to areas of your creature’s skin, highlights to edges, and can help determine different types of metals, chipped paint, etc. I believe the specular map is the hardest part of the skin to paint and the most time-consuming of the three maps. Do a really nice job on the specular and it’ll really make your skin sing. <spanclass="anchor"id="line-429"></span><spanclass="anchor"id="line-430"></span><pclass="line862">I have included a sample of the Makron’s specular map with areas of flesh, blood, metal, etc pointed out. You can use this as a basis to determine how to do your specular. Also, look at some of the other Q4 creature’s speculars to gain a better understanding and read our <ahref="./ArtReference_SpecularMaps.html">Specular Maps</a> write up. It’s very basic, but informative as to how we created specular maps for Quake4. <spanclass="anchor"id="line-431"></span><spanclass="anchor"id="line-432"></span><pclass="line867"><imgclass="attachment"src="ArtReference_CreatingModels_10.jpg"title="attachment:image_10.jpg"/><spanclass="anchor"id="line-433"></span><spanclass="anchor"id="line-434"></span><pclass="line874">Tips to painting nice specular maps: <spanclass="anchor"id="line-435"></span><spanclass="anchor"id="line-436"></span><oltype="1"><li>When doing flesh, rubber, and other not too reflective surfaces make those areas on your specular map the darkest areas in relation to the other more reflective parts. Flesh and rubber don’t usually reflect a lot of light and therefore would be darker on your specular than some shiny metal, etc. <spanclass="anchor"id="line-437"></span><spanclass="anchor"id="line-438"></span></li><liclass="gap">You can define chrome, stainless steel, and
<li><ahref="http://moinmoin.wikiwikiweb.de/">MoinMoin Powered</a></li><li><ahref="http://www.python.org/">Python Powered</a></li><li><ahref="http://validator.w3.org/check?uri=referer">Valid HTML 4.01</a></li>