Skip to Content
8-19-2009 @ 11:19PM
Forgive me if this runs long, but I hope I can help some people understand the reason WoW runs so well, and how it can be improved graphically.First, about me. Until the middle of last year, I worked as a 3d graphical designer for a company who I won't mention, but did produce their own MMO. Sadly, that one died rather early on, with the servers vanishing less than a year after the game was produced. (The game was PvP based in a fantasy world. If you know the name, then you know the company.) Now, when it comes to producing character models and locations, I'm something of an expert. I've been doing this for years both in the public and private sectors, with some work done for just myself, with others done for companies I've worked for.I want to touch first on WoW as it is and why it looks that way.When WoW came out, about five years ago, the average computer was running a mid range DirectX, I think 5 or 6 being the average, and typically had around 1gig of RAM. That's on a good system. Most had maybe 256, or 512. Software wise, pixelshader wasn't out yet, at least not in a stable format, and rendering capacity was considerably lower. It's because of this, the WoW models look somewhat blocky, as well as the old world content not having "aerial" views. Meaning that if you were to get above most buildings, like Stormwind, you'd find that there's nothing up there. Just empty space where the roof should be. This is an indicator of a design style called "minimalist." Basically the idea being that if there's a location that the player shouldn't get to, then you don't need to render it. This also speaks of the software of the time. Up until a few years ago, rendering software, well it wasn't too bright. You see, currently, most software (I say most as there are exceptions) figures out where your character is looking, extrapolates what your character can and can not see, and then figures out what to render. Meaning that if you can't see it, it doesn't render the triangles (more on that term later). You can kinda see this in action by dialing down the view distance. Back in the day when WoW came out, this wasn't the case. The software would try to render EVERYTHING. That's why it's not uncommon to have major lag in cities (I think Dalaran is still rendered this way) and then be fine once you get outside. The reasoning being that the more populated the room is, the more triangles that need to be drawn, and the more details that have to be rendered. Makes for messy work, but it's done well so far.Now by now I bet you're wondering "What does Shads mean by "triangles?" Well, a triangle, sometimes called a poly, is a unit of measurement in rendering software. Your average character model, even the low grade current ones, has between two and three hundred thousand triangles. In fact, in some cases, when you add armor and gear, there's probably five times as many triangles. You see, in rendering, a true curve is impossible. Rather, the designer will use a polygon that though called a cylinder, has "sides". The more "sides" you place on the poly, the more round it looks. However this brings with it a problem, because the more sides you have, the more polys it takes to draw those sides, and the higher the poly count goes.As a general rule, the lower the polys, the faster a game runs.So, how can WoW Hope to improve this? First things first it'll take work. Remember, most of their gamers are using older computers. Even if you've updated in the past few years, it's highly unlikely that you've got the top end Alien system, built only for gaming. Because of this, WoW is going to have to...well, cheat.The first step is better graphics. However, you don't have to make your texture (graphic) overly detailed to make things better. In fact, it's possible for a skilled texture designer (which I am not, no matter how many times I try) to take a photo realistic texture and "skin" a simple box polygon, and make the thing look like it has brick texture, and definition.If WoW updates the skins on the models, then that's your first step. It doesn't require a total rebuild of the model frames, which would push polys up and push any timeline back months, or even years. The second step is something relatively new. "Bump Mapping".By using normals and bump mapping (which can be disabled on lower systems) It's possible to make a perfectly flat texture look like it has definition. As in the case of the brick box I mentioned earlier, you can make a surface look like it has shadows, edges, and definition, even when there's nothing there but a flat two triangle surface.The third method would be to refine the current models. This doesn't mean scrap them and head back to the drawing board, but rather as in the case of the new druid forms, to "refine" what you already have. I can't tell you how many times I've found myself doing this. Creating a character model for a game so the testers have something, anything, to work with; only to go back weeks or even months later and rebuild or refine the model. Rounding the edges here, smoothing things there, any little bit of work that helps.Well, that ran longer than I hoped. There's much more that I could tell you, but as it's rather late I think I'll leave it there.
8-20-2009 @ 5:43AM
First off im not bashing you, I just think you may have made some booboos..Two to three hundred thousand tris? It's probably more around the 4k-8k mark in tris and 2k-4k polys( two triangles together) for base character models. I to, am from the game industry and that number thrown out there was very outlandish.Here is a picture of a car from gt5 which is supposedly using 200,000 polygons in its models.http://www.wallpaperez.net/wallpaper/games/Gran-Turismo-5-1405.jpgI think it would be entirely possible for Blizzard to give the character models a bump up of 1000 polys and still be able to maintain the wide compatibility that WoW offers. Honestly they could probably use less then that to fill out the silhouettes better and just increase the texture size for certain parts of the models. Boots in particular come to mind when thinking about stretched out textures (or bad UV mapping). They look so muddy compare to newer stuff we're seeing like the helms and shoulders. Honestly I'd really like blizzard to put some effort in a couple more base boot, leg, robe and glove models for the designers to choose from when creating the new gear. Honestly when you think about it, new Tier gear for one character is this.. [2 new models (Head & shoulders) and then just reskinning for the base models that have been there since Vanilla]The building rendering issue is easily remedied by making clip textures the engine shouldn't render past which is what older fps games like Quake and Half-life have done when designing levels. Basically behind your wall or around a corner you have a special invisible wall with a texture flag (clip) that lets the engine know not to render past this point unless the user has crossed this line, thus limiting what the user is seeing past that point which doesn't matter since they are seeing a solid wall in front of them or a corner of the hallway.This usually works pretty well except for the fact that Dalaran is viewable at all angles from users on the ground and flying around. You can tell they obviously used a similar function to break up the sewers and top side.For the original person that asked the question about not connecting in Dal, I have found that certain mods can really mess up your ability to log on in the city. A big one being Questhelper. I always make sure to turn it off if I'm logging into Dal. Questhelper and Dalaran do not get along.Sorry I kind of got sidetracked a bit and went off on a tangent.Anyways take care,
First time? A confirmation email will be sent to you after submitting.
Members enter your username and password.
Enter your AOL or AIM screenname and password.
Please keep your comments relevant to this blog entry. Email addresses are never displayed, but they are required to confirm your comments.
When you enter your name and email address, you'll be sent a link to confirm your comment, and a password. To leave another comment, just use that password.
To create a live link, simply type the URL (including http://) or email address and we will make it a live link for you. You can put up to 3 URLs in your comments. Line breaks and paragraphs are automatically converted — no need to use <p> or <br /> tags.