The Pains of UV Unwrapping: Thoughts

As many of you know, I absolutely hate UV unwrapping. It’s a fairly time consuming, tedious, and to be blunt, boring, compared to the other stages of the 3d modeling pipeline. Most people really hate UV mapping. Why do we all hate UV unwrapping? It’s tedious. It’s boring, since we don’t see the results. It can take quite a while to top it off. So in short, it’s a pain. However, it is as important, if not more important, as the other stages of 3d modeling.

But what is UV unwrapping? The basic idea is really simple actually. 3D modeling means that we generate a 3d model/mesh with information in 3d space. UV unwrapping does not matter at all for the modeling part of the pipeline. But what if you want to add colors and surface detail? Textures are important for that, and that’s where UV unwrapping becomes important. UV unwrapping is most important for the texturing part of the pipeline. By this, I mean that the adding textures is basically undoable without a UV layout. A bad UV layout results in really warped texture application and at best will give you some sort of really odd texturing that, while not warped, looks fairly weird. The reason for this is that a texture map is, at its core, a 2d picture. Texture application to a 3d object is inherently a 3d process. The means of translating the 2d coordinates of a texture image to 3d space is done by UV maps. The basic concept is pretty simple. What a UV map looks like then is the 3d object ‘flattened’ onto a 2d plane. Something like this:

The basic idea, like I said before, is to translate 2d points to 3d points. In practice, this is fairly difficult to do.

There’s a ton of great tools for modeling, sculpting, and texturing (and I’ve written about these tools at great length). However, UV unwrapping is one particular area that doesn’t have a ton of tools out yet. To be fair, there have been great improvements in this area, with tools in Maya like unfold and unwrap. There’s also the automatic unwrap tool, which, as I’ll explain later, is hit or miss depending on what you have. What certainly does not exist is a 1 click UV mapping tool that automatically generates the perfect UV map for your model. Partially this is because UV unwrapping cannot know what part you want to have more detailed textures versus what part shouldn’t be as detailed. The other reason is that automatic unwrapping just isn’t quite there yet. There are some tools that exist that can do automatic unwrapping, and they cost quite a bit of money. I, unfortunately, have used none of them.

There is no doubt that there are still a ton of improvements to be made with UV Unwrapping. I have always found myself mind boggled that Maya’s automatic tool chooses to scale the tiniest set of faces of my model to take up 50% of the plane. Why would that make any sense at all? These areas can certainly be improved. But things like where seams have to go, what part of the model should be emphasized, this is something that no auto unwrapper can figure out without human input.

There are, of course, tricks to speed it up. My current project has tons of pieces, but they are all duplicates. Unwrap one, and you unwrap them all. Sometimes separating out objects makes the process go a bit faster as well, since you have less faces to place onto the texture plane, so that gives you more space to work with. Tools like unwrap and unfold can also make the process go much faster.

Ultimately there’s no easy answer to how to unwrap. While there have been improvements, it’s still a tough and tiring process and probably one of the most important processes as well, since it can literally make or break your textures, and consequently, how your lighting interacts with those textures. Geometry is great, but it’s not helpful if you don’t have the UVs to back up the texturing. The best way to think of unwrapping is to think of your model as a cardboard object that you are now breaking into pieces to lay flat so that you can paint them.

Perhaps some day we will have something to make UV unwrapping painless. However, that day, unfortunately, is not today.

Advertisements

To Model It Or To Texture It?

One of the toughest questions to answer sometimes is whether a particular feature of a model should be geometry or texture. I’ve found it really tough to know the answer for sure.

There are some obvious cases where a particular part of a model must be geometry or must be texture. Obvious larger shapes, for example, are always geometry. Color, or the material of a surface, are obviously texture. But there are some cases where it’s not easy to know if it should be modeled or textured. Rivets, on something like a plane, for example, do not necessarily have to be either. Rivets can easily be modeled in and can also easily be texture. There are many similar cases with almost all sorts of models, from architecture, vehicles, to plants and animals. Both texturing and modeling can be used to achieve results. Which one should be used?

The answer is, as always, somewhat complicated. There are scenarios where one method favored over the other. Much of it boils down to the art style. Realism generally will favor the usage of geometry, especially if you are creating just an image. Why? In real life, things like rivets, or panel lines, are not ‘surface detail’, nor are they part of the material. These are pieces in real life. I have seen some artists who, rather than use a texture map for bricks, have actually modeled each brick into the geometry and then added a general texture map. The results can be a lot better, depending on the rendering engine. The reason is that the rendering engine is then able to calculate the interaction of the light with all the geometry. Rendering engines cannot perform similar calculations with texture maps. This is not to say that texturing cannot produce similar and good results, just that generally, realism prefers to have more geometry than texturing. The rule of thumb here is that if it doesn’t look like surface detail (i.e. very minute details only perceivable on the surface itself), it’s usually best to model it. Other styles, such as cartoonish, etc., can potentially be indifferent to, if not favor, the usage of texturing over modeling for the converse reasons as stated before. In the case of cartoonish styles, it doesn’t really matter as much if the details are modeled or textured.

Here’s some interesting example pictures from my own projects:

top

side

This was rendered in Arnold. Here, the panel lines are almost completely texture, except for one square like panel on the main wings. The rivets are also completely textured.

lambert1

lambert2

This project, by contrast, is completely untextured. It’s not even finished yet, but it should serve as a good example of what tons of geometry can do. Imagine this project with highly detailed textures. The differences will show.

However, there are times when even realism will prefer textures over geometry. I may sound like I’m contradicting myself, but one of the things that we haven’t discussed is rendering engines. In particular, using any real-time rendering engine, for something like a game, will generally not prefer too much geometry. Now this isn’t to say that real times engines cannot handle lots of geometry on the screen at once. They are more than capable of handling geometry. However, there are two caveats to this. The first one is that the more geometry there is on screen, the more we must lower the draw distance, or the maximum distance from a camera at which the game engine will render something. This is done so that the frame rate of the game does not drop to unplayable levels. The second caveat is that there is an upper limit of geometry after which the engine will be unable to provide good frame rate. Sometimes these issues can be offset by using a more powerful machine. But the overall point is that for game engines and real time engines, geometry is generally more expensive to render than a simple texture map. Again, more geometry is still better for realism, but due to optimization, we have to make sacrifices.

In short, there’s never a simple answer. It always depends on what you are trying to accomplish. Realism will always prefer modeling the geometry over texturing it as a normal map or a displacement map. However, there are considerations to be made to the rendering engine being used. Also, there’s cases where it may not be feasible to actually model out geometry. Carvings, for example, are notoriously difficult to model in something like Maya. In many cases, it’s simply simpler to use textures, since the results won’t be that far off from actual geometry. For the carvings example, many artists will use ZBrush to first sculpt the carvings on the original model, then generate a texture map from the sculpt. Rendering engines are getting better, however, so perhaps in the future, we will see more polygons pushed onto the screen and a lower reliance on texturing.

The Importance of Graphics in Games: Thoughts

horizon-zero-dawn-shot-3

Very often people debate how important graphics are in video games. People do tend to believe that great gameplay can more than make up for any graphical deficiencies that a game has. After all, it’s important that a game be fun to play, right? However, this perception of gameplay trumping graphics every time tends to oversimplify something that’s more complicated than just graphics vs gameplay.

In one sense, the notion that gameplay matters more than graphics is very true. Here are two games with fairly simplistic graphics that are both fairly well known. The first one is Minecraft. Everyone’s heard of Minecraft at this point. In case you haven’t, the basic premise of Minecraft is that the player spawns in a world and must destroy ‘blocks’ to get resources out of them and build tools and other ‘blocks’ with them to survive the night.

fallingwater_cap_11

There’s also a creative mode which gives the player endless resources to create things. There’s all sorts of different blocks, including basic circuitry blocks, to explosives, etc. I won’t get into the details of the game, but one of the things that should immediately jump out at you is that this game does not have very advanced graphics. Here’s some more screenshots:

2000d130970a8bb3218510812a9e11c3-fallout_shot1b

A Minecraft game with a Fallout mod/theme/feel.

make-tools-in-minecraft-step-20-version-4

Both of these pictures should clearly demonstrate that Minecraft is no graphical masterpiece. Yet it’s immensely popular because of its gameplay. People love the notion of a world where literally everything can be destroyed/built. It leads to all sorts of emergent gameplay. On a technical level, the game is not at the same level as a game like Horizon: Zero Dawn, or Gears of War, but it is definitely a smashing hit.

Another example of a game with very minimalist graphics is DEFCON. DEFCON is like the movie Wargames come to life. It’s a Real Time Strategy (RTS) game that simulates nuclear war/armed conflict between nations. It’s a damned tough game to play to top it off. Interestingly enough, the game uses very minimalist graphics but manages to be extremely engaging in spite of the graphics. Now one might think that the game sounds like a ton of other games that came before, but like I said, if you’ve seen the movie Wargames, it basically replicates that style. Look at these pictures of the game to understand what I’m saying:

maxresdefault

2601993-0416836966-defco

defcon01

The game looks a lot like the vector graphics computers of the 1980s, hence why I said it looks like Wargames. This game has minimalist graphics but it’s also its graphics that really make the game stand out. This leads me to my next point.

You may think that so far I’ve done nothing but prove the point that graphics don’t seem to matter when the gameplay is better. Minecraft and DEFCON sort of follow that philosophy. DEFCON, however, I’d argue is very successful because of its graphical style. The technical sophistication of graphics does not necessarily matter (to a point, as I’ll illustrate later), sure. However, if the art style is bad, then the game will fail. For DEFCON, it was important to use vector graphics. Even Minecraft, for it’s extremely minimalist technical graphics, does follow a very consistent art style: voxel art. Everything is some form of a block in the game, which leads to an immersion in the game world. Indie games in particular prefer to use simple art styles, but ones that are consistent and work well for the type of game they are making. Where has this failure been observed? It’s fairly tough to see, because most games that fall into this category generally sink without a trace before anyone can take note. Take Crackdown 2, however. There are technical issues, but look at the art style also:
file_8867_crackdown-2

There’s a clash of art styles. You have semi-realistism clashing with cartoonish styles. It doesn’t work very well. It’s trying to be like Borderlands, but it’s not. It’s trying to be like Killzone 2, but it’s not that either. What is it? The style doesn’t really communicate very well. Fairly straightforward.

Now that being said, technical graphics do matter. If, for example, a game is pursuing realism but doesn’t have technical graphics to back it up, it fails. It’s kind of like using vector graphics to recreate a realistic chapel: it won’t look very good. If the texturing is bad for a realistic style, it looks bad. If the geometry isn’t detailed enough for a style, it looks bad. The game may not be unplayable, but a similar game with better technical graphics has more immersion than a game with worse technical graphics, where both are trying to be realistic.

So in short, gameplay is very important. There are plenty of examples of games that are very pretty but without good gameplay that failed. And many games have been successful without using technically impressive graphics. However, graphics do matter. Art style is very important for creating an immersive world that agrees with the overall vision. And technical graphics can matter for the art style the developers want to express.

Sculpting vs Modeling in 3D Art: Thoughts

Sculpting and modeling in CGI have both been around for a while, but generally we see modeling more often than digital sculpting. Digital sculpting is also gaining in popularity these days. But which is better to use? Is there one that’s better to use? Does it depend? The argument is actually quite interesting.

ZBrush is a popular sculpting program. The above is an example of an artist’s sculpt

There are many people out there who will swear by digital sculpting and generally use digital sculpting for most things. There’s also the opposite camp who believe in solely using modeling programs like Maya for everything. Then there’s the one’s in between who use both for different things. I started off my CGI work using a program called 3D Canvas and then moved on to Autodesk Maya. Most of what I’ve done has been primarily modeling work. I myself only recently started using ZBrush to dabble in digital sculpting. It was also the first time I had to use a tablet and pen for working with CGI. What I made with ZBrush was the following:

The Naga (Closer to Final)

The Naga (Closer to Final)

The Naga (Closer to Final)

What I found really interesting about sculpting is how intuitive it is, especially with the pen and tablet set up. I have generally found modeling characters and organic things to be fairly difficult. As most will tell you, modeling living things in something like Maya is fairly demanding. It’s certainly not impossible, but it does push the skill level with Maya. I’ve had to model a character in Maya as well. Here’s what he looked like:

Raktabija: Warrior of Darkness

Try not to look too closely to the texturing. Instead, look at the geometry of the characters (which admittedly is tough, since much of Raktabija is covered in armor and the shot is in a dark background). What’s interesting to note is that Raktabija is the first time I modeled a character ever (and consequently the first time I modeled a character in Maya), while the Naga is the first time I ever did digital sculpting. You’ll immediately notice that the Naga has far more geometric details than Raktabija. Now to be fair, I did have a much better idea of form when I did my ZBrush sculpt than when I did the Maya character model, but even then, notice that the Naga is a more complicated form than Raktabija. Raktabija is basically just a human character. The Naga is a 4 armed, fanged, half man, half snake creature.

Where am I trying to go with this? The point is that ZBrush was by far easier for me to use to create the character/creature than Maya was. ZBrush is an excellent program, developed by Pixologic, that allows for very easy sculpting. Sculpting in general lends itself very much to creating creatures and organic forms. It’s very easy to cheat out a shape out of a sphere, or a cube in digital sculpture, and very easy to make it inherently look organic. The reason for this is also what will lead me to the downsides of digital sculpting. Digital sculpting focuses on allowing the user to sculpt, as if he/she were using clay. In order to achieve this, the subdivisions of the geometry tend to exponentially increase as more detail is added. The result is that the final topology, or the way the polygons are laid out on the mesh, is not under your control as much. The thing is that most organic forms, like humans, creatures, etc., are also very complicated, meaning that to represent them in detail in 3d space usually means using a ton of polygons. The downside of a ton of polygons is obvious: computational time for rendering will shoot up. This especially matters for game engines, which don’t tolerate high poly count models. Modeling, while much tougher to do since it’s not nearly as intuitive, does afford much greater control over things like topology, edge flow, and where the subdivisions are. So while it can take much more time to create the organic form, it’s also going to be an inherently lower poly-count than a digital sculpture will. It is also entirely possible to create a high detail organic model in programs like Maya, but again, it’s not as straightforward as it would be in programs like ZBrush. Then there’s also considering exporting your model to other programs for things like texturing, rigging, and animation. Again, most programs have a really tough time dealing with the gigantic poly counts that digital sculpting generates. So it’s another potential downside.

Now to be fair, programs like ZBrush have an excellent set of retopologizing tools that will reduce poly count and also redistribute polygons more evenly over the mesh. It is entirely possible also to create a texture map for the details on a low poly version of the sculpt and export that to other programs like Maya for a render. Blizzard uses this pipeline for many of its game projects. And with increasing computational power, it’s becoming easier to do and deal with as well. For projects like CG movies or single images, the poly count isn’t as important, since the final image is what really matters, not the render time. And for these reasons, digital sculpting, in my opinion, has a very bright future ahead, even in the game industry.

But is digital sculpting great for everything? In my experience, no. Digital sculpting is great for building the organic forms, but if you’re doing hard surface modeling, you’d be far better off using something like Maya. I sculpted the belt for the Naga in ZBrush and my experience from that is that while you can certainly sculpt hard surfaces in ZBrush, it’s a lot harder since sculpting inherently lends itself more to organic forms. It’s much easier to make some organic looking with something like clay than to make it look like a hard surface. Again, there are many people who do everything in ZBrush, but the hard surfaces do take more time than in something like Maya. If you want to, sure, you could certainly display your skill by sculpting everything, and my hats off to you for doing it, but I prefer using tools to ease my work, so generally I stick with hard surface modeling in Maya rather than ZBrush.

 

How Important Is Concept Art in 3D Art? My Thoughts

Drawing isn’t my best skill. I’m not terrible at it, but I’m not amazing at it either. Here’s an example of some of my concept art:

A concept drawing for a throne room

This is some of the better sketching I’ve done, in my opinion, so I’ll let you judge for yourselves just how good/bad I am at sketching. I generally find it easier to model something first rather than sketch it. There are some people out there like me, especially some of the indie game devs out there who aren’t as artistically inclined as others. I’m not an artist by trade myself either: as I’ve said multiple times, I’m actually a programmer/software developer who doesn’t even work in anything remotely related to CGI. So for many dabbling in CGI, concept art isn’t the most important thing in the world. However, you will find that most professionals in the industry find concept art as a necessity. Why, you might wonder?

For some, it’s a necessity just to visualize what they are trying to model/texture in CGI. For others, it’s more of a habit. And for even more it’s just a good starting point. There are two really important benefits that aren’t immediately obvious to some in CGI

  1. It’s a great way to make a blueprint for how your model will look
  2. It is indeed a good starting point

The first point is especially important. Planning ahead not only makes modeling better, it also makes it more efficient. In many cases I’ve thought that I have the entire visual in my head of how the model should look only to find later that that isn’t the case. Making a concept sketch forces you to consider aspects of your model that perhaps you had not originally considered. It also forces you to consider proportions. For example, if you’re modeling an aircraft, the cockpit should be the right size for the number of occupants expected to occupy it. This also leads me to the second point: concept art does indeed give a good starting point, for much of the same reasons as the blueprint aspect. Modeling will almost always take more time than making a quick sketch on paper, so it’s always worth it, even if it isn’t a great sketch. Which is another excellent point to make as well: you don’t need to be great at drawing in order to make basic concept art sketches that are helpful. The whole goal here is just to get your ideas down in a more concrete form and to get a basic idea of what the forms should be. The tiniest detail doesn’t necessarily matter as much when initially starting out. You can always make more sketches later as you model if you find the need to, especially for more detailed aspects of your model.

Of course, not everything needs a concept sketch. If you’re modeling something that has tons of pictures available, or better yet, if you can go see the object in question for yourself and take pictures of it, that’s the better option. The idea is that modeling with a reference is much easier than modeling without a reference. If you have real life references, in the form of pictures from some source, those are enough. If you can actually go and see the thing for yourself, it’s even better. One of the projects I worked on, the inside of a cathedral, is based off of a cathedral I visited in Toledo, Spain:

My cathedral scene

My picture of la catedral de Toledo.

You’ll notice that the models are not identical. This leads me to another point about concept art, reference images, and 3d art. Starting from a real world object/thing will almost always be helpful in concept art and in 3d art. This particular scene did not make use of a concept sketch: I simply used my pictures of the cathedral and combined it with some aspects I had seen in the game Bloodborne and Dark Souls 3 to create my cathedral. The altar in my cathedral is my own invention. The larger point to be made here is that some sort of reference is important in 3d art. Usually real world images are best. Sketches are also helpful. The best is if you can go and see the real world reference for yourself. If not, internet images are still a great starting point. Even if you’re making something that doesn’t exist in the real world, it’s still best to start from a real world reference and build off of it, making concept sketches as necessary.

Texturing Software: Thoughts

As many of my readers are sure to know, I’ve done a lot of work recently with Substance Painter and Substance Designer. Both of these softwares are my go to softwares for texturing anything. The reason is really straightforward: it’s really easy to use. Substance Painter allows me to paint details right on to the mesh itself. Substance Designer lets me create great textures without going through too many contortions using the flow chart, node based interface it has. For someone like me, who actually is a software developer by trade, this sort of interface couldn’t be better.

Screen Shot 2017-04-01 at 7.05.21 PM

Some of you probably remember the old days, before software like Substance Painter and Substance Designer, of using Photoshop, to make textures for models. I’m not very good at using Photoshop, but the basic idea back then was to export the UV layout you had painstakingly generated and paint on them by hand in Photoshop, and generate the normal maps, etc. using tools in Photoshop. I’ve never used this approach, mainly because I have no clue how to, but also because of the amount of hassles in it. The pipeline is fairly tough to figure out and presents a lot of challenges. People managed back then, if only barely. Of course, there are procedural textures as well in Maya, using Arnold, Mental Ray, etc., but in this scenario, it’s tougher to get precise control over what part of the object the texture is mapping to and what part it isn’t mapping to. Of course, neither approach is horrible: many artists still use these approaches for a variety of reasons. I personally don’t think I could ever get used to using Photoshop. Maybe I’m just too lazy.

Screen Shot 2017-04-04 at 9.31.31 PM

Screen Shot 2017-04-04 at 9.32.36 PM

There’s also a ton of other great tools out there too. Autodesk has Mudbox, which is almost like ZBrush in some ways, without the giganticpaint-directly-onto-3d-models-large-1152x648 suite of tools that ZBrush has for sculpting (which I will also get back to in this post). Now the best way to think of Mudbox is like an extension of the texturing tools in Maya. In some ways, it’s similar to Substance Painter, and in others, not so much. One of the major differences between the two is that Mudbox is also a sculpting tool, whereas Substance Painter is exclusively used for texturing. The other difference is that Substance is Physically Based Rendering (PBR) texturing, whereas Mudbox is doesn’t use PBR. This last point is really important. One of the reasons why Substance Painter is really popular is because of PBR. Many rendering engines, and game engines in particular, make extensive use of PBR. Mudbox has been around for longer than Substance Painter, with some of the first versions coming out in 2006, and Autodesk acquiring the software/company in 2007. It represented a step up from previous methods, and also reflected the changing nature of CGI software. In terms of just straight up texturing, Mudbox and Substance Painter are more or less on par with one another in terms of capabilities. Both can achieve similar results, depending on what you are aiming for. Mudbox isn’t too expensive for an annual subscription. Substance Painter/Designer are a bit more expensive, but are a one time payment for a license, which is what I prefer as opposed to annual subscriptions, but it really just depends on your needs.

Many people have also used ZBrush for texturing, though I personally would not want to. It is possible to create maps from ZBrush sculpts and use those as textures. It’s not something that I would personally want to do, but it is possible. Other software for texturing includes tools like 3D Coat which I have never used myself. From what I’ve read, 3D coat is really good at stylized texturing, even better than what Substance Painter can achieve. There are also tools like Mari, BodyPaint, etc. At this point, these tools are better at some things and worse at others, so the choice of the ‘best’ tool really depends on what you are aiming to do. Now Substance Designer is a whole different story. I haven’t seen software like Substance Designer quite yet, and is fairly unique in that regards. It’s a great tool for generating tile ready textures.

Texturing isn’t nearly as tough as it used to be, with the large variety of tools available. Really what I’m hoping for now is software to make UV unwrapping easier. It’s somewhat easier, but still fairly tough for anything more complicated than a box. Someday, perhaps?