Gaming Underground Network

Come for the mods, stay for the community
 
HomePortalLatest imagesInterviewsRegisterLog in
Search
 
 

Display results as :
 

 


Rechercher Advanced Search
Info Panel
______________
MOD MASTER THREADS:
FALLOUT
THE ELDER SCROLLS

______________


______________


GUNinsider
Fallout Miami: Mika999
Stay Connected

GUNetwork
Keywords
riot Mask Reforged leon hunk boom khan space boomers vault Gear ghost Metal body clone money marvel Superpele commonwealth Ryse power dead ghoul suit NPCs Duty
Latest topics
» OICW Mod for New Vegas
Why Your Model Doesn't Normal(ly) Suck Emptyby DavidW75 Wed Oct 23, 2024 12:37 am

» Looking for Gta 5 xbox one modded account
Why Your Model Doesn't Normal(ly) Suck Emptyby salman0786 Tue Oct 08, 2024 4:47 pm

» [FNV] Flickering Landscape Textures
Why Your Model Doesn't Normal(ly) Suck Emptyby zliu313 Fri Oct 04, 2024 2:33 pm

» Best Site Ever!
Why Your Model Doesn't Normal(ly) Suck Emptyby WasteNinja88 Sun Sep 29, 2024 5:38 am

» Weird bug or glitch with Console Command. [FNV]
Why Your Model Doesn't Normal(ly) Suck Emptyby nickenicole47 Tue Sep 24, 2024 7:11 pm

» Suggestions on npc mod that Blends with dragbodys mod?
Why Your Model Doesn't Normal(ly) Suck Emptyby ilovebees.com Sun Sep 22, 2024 6:31 am

» [FNV] Right Mouse Button Zoom/ADS Bug
Why Your Model Doesn't Normal(ly) Suck Emptyby Lankychazz2009 Sun Sep 22, 2024 4:20 am

» (FO4) FO76 BOS Objects
Why Your Model Doesn't Normal(ly) Suck Emptyby campesino.p Sat Sep 21, 2024 9:53 pm

» [FNV] Dragbody's FO4 Power Armors bug.
Why Your Model Doesn't Normal(ly) Suck Emptyby Lankychazz2009 Thu Sep 19, 2024 2:34 pm

» Fallout: New Vegas "Pizza Boy" Mod
Why Your Model Doesn't Normal(ly) Suck Emptyby MrMistyEyed2 Tue Sep 10, 2024 1:15 am

» Here Are Some Of The Best Mods From GunNetwork
Why Your Model Doesn't Normal(ly) Suck Emptyby Abyssfer Sun Sep 08, 2024 10:02 am

» Saying hi after two years
Why Your Model Doesn't Normal(ly) Suck Emptyby spiralsandspirals Thu Aug 29, 2024 12:39 am

» Looking for an alternative to Nexus
Why Your Model Doesn't Normal(ly) Suck Emptyby freakoverse Fri Aug 23, 2024 10:50 am

» fallout 4 mods
Why Your Model Doesn't Normal(ly) Suck Emptyby salientguitar4 Mon Aug 19, 2024 5:47 pm

» [FNV] How to troubleshot infinite loading issues?
Why Your Model Doesn't Normal(ly) Suck Emptyby Abyssfer Wed Aug 14, 2024 5:28 pm

» Fnv Enable player control command
Why Your Model Doesn't Normal(ly) Suck Emptyby GenJohnWilliam Mon Aug 05, 2024 9:25 pm

» Problem with Dragbodies NCR overhaul
Why Your Model Doesn't Normal(ly) Suck Emptyby Lankychazz2009 Fri Aug 02, 2024 8:53 pm

» NCR Trooper Overhaul Armors with NCR Ultimate Overhaul
Why Your Model Doesn't Normal(ly) Suck Emptyby Abyssfer Thu Aug 01, 2024 8:29 pm

» Roland Deschain ist The Mysterious Stranger and other t
Why Your Model Doesn't Normal(ly) Suck Emptyby SpaceRanger Mon Jul 22, 2024 10:15 am

» Guns you want in Fallout
Why Your Model Doesn't Normal(ly) Suck Emptyby SpaceRanger Mon Jul 22, 2024 9:25 am

November 2024
MonTueWedThuFriSatSun
    123
45678910
11121314151617
18192021222324
252627282930 
CalendarCalendar
_
November 2024
MonTueWedThuFriSatSun
    123
45678910
11121314151617
18192021222324
252627282930 
CalendarCalendar

Share
 

 Why Your Model Doesn't Normal(ly) Suck

View previous topic View next topic Go down 
AuthorMessage
dazzerfong

dazzerfong

Posts : 588
Join date : 2014-04-04
Age : 29
Location : Sydney, Australia

Why Your Model Doesn't Normal(ly) Suck Empty
PostSubject: Why Your Model Doesn't Normal(ly) Suck   Why Your Model Doesn't Normal(ly) Suck EmptySun Jun 22, 2014 5:49 am

By the end of this post, hopefully you'll get the pun. If you don't, re-read it!

Why Your Model Doesn't Normal(ly) Suck

Time and time again, I see people who remark, upon loading their model in Blender/3DS Max/whatever, their model sucks, and are often dissuaded from continuing with the model. I will try to address some misconceptions and educate readers as to why, despite their model looking bad, usually isn't.

Terminology

This is going to be quite a technical discussion. Here's a quick glossary of terms should you be lost.

Map: a bitmap image used for either textural or vector purposes.
Normal: mathematical representation of a surface.
Vector: representation of direction using geometric quantities.


History of Normal Maps

In case you didn't know, models are comprised of 3 things*:

Vertex
Edge
Face/poly

Most of the time, polycount is not as important as vertex count, but since their quantities are somewhat related (there's an equation for the maximum/minimum no. of vertices per face, but that's not important), people usually use polycount as the 'limit' for their mesh.

This polycount, although overrated these days (ie. people still keep on insisting on using barely any), is still a limiting factor nowadays. High-density ("high-poly") models can easily reach the millions whenever one tries to model clothing creases, zippers, or even bevelled corners smoothly. Obviously, video cards cannot handle that amount of vertices when you have to handle other stuff too.

To circumvent this issue somewhat, normal maps were invented. But before we dig in, we'll analyse how normal vectors work.

Vectors

If you remember high-school maths, you might remember the Cartesian plane system: x, y and z. Vectors are similar to that, except instead of representing a point or a line, it represents a direction and its scalar (magnitude). Figure 1 shows how it works.

Why Your Model Doesn't Normal(ly) Suck 555px-3D_Vector.svg

Figure 1: Euclidean vector in 3D space. Wikipedia.

Now, there are many laws and theorem on it, but we won't go into them too much. One thing about vectors, however, is that they have a scalar component (magnitude): the defining characteristic about normals is that each vector's magnitude is summed to 1. This is important later.

A more important thing about these vectors, however, is that it determines the visible direction of your face.

If you haven't noticed, a model is basically a shell: it's not solid. For sake of computing power, only one side of the shell is rendered.

Each face has its own normal: if you choose to view the normal directions inside your 3D package, you'll see that each normal on your mesh is represented by an arrow shooting away from your mesh. That means that the normal direction is towards the outside.

So, to abbreviate, normals determine the direction of your face.

Shaders

Now that we know what normals do, let's take into account shading. As mentioned before, a face represents one normal. A shader will take into account each normal, and try to 'bend' the normal near each edge so that the normal doesn't become like a hard edge.

Each normal will be mathematically taken into account, along with lighting as well as textures to generate the image you see.

Almost immediately, there is a problem. Since faces limit the no. of normals, how do we model stuff like a recessed valley or a screw? For the sake of brevity, we normally don't model this stuff onto the low-poly mesh. As such, lighting will then be strange: although on your texture there might look like a valley, when it comes to interacting with lighting, it'll just look like a black paint streaked onto the mesh.

So Why Does Your Mesh Suck?

When you port a mesh, the mesh you're porting is the low-poly one. The purpose of a low-poly one is simply to capture the rough outline of a more detailed mesh. That low-poly one will thus have barely any normals, and will look unbearably bad. See figure 2.

Why Your Model Doesn't Normal(ly) Suck Screenshot000_zpsd159a25f

Figure 2. No normal map, no textures

Normal Maps

Now you see what the problem is: the mesh just looks bad. That's because it's not meant to look good: it's meant to look like a bad casting of your pretty mesh.

Normal maps take into account that your only have a limited amount of normals on your model. What it does is, through a vector map (the blue-ish one everyone is familiar with), 'bends' the normal of your mesh at certain locations. Each channel represents a different vector component (if you do vectors maths, i, j, k, if not, x, y, z).

Knowing the specifics isn't important: knowing why normal maps work is. So, figure 3 demonstrates what the model looks like with a normal map.

Why Your Model Doesn't Normal(ly) Suck Screenshot001_zpsacf4bafa

Figure 3. Normal maps, no textures

Putting It All Together

So, the mesh looks much better. But you still might not be convinced. "What difference does it make once it's all textured anyway?" Well, figure 4 and 5 shows the difference.

Why Your Model Doesn't Normal(ly) Suck Screenshot003_zps441b13fd

Figure 4. No normal maps, textures

Why Your Model Doesn't Normal(ly) Suck Screenshot004_zps85d43c81

Figure 5. Normal maps, textures

And here are the normal maps used:

Why Your Model Doesn't Normal(ly) Suck Baked_zpsce7babc7
Figure 6. Baked normal map

Why Your Model Doesn't Normal(ly) Suck Height_zpsb6472a24
Figure 7. Height map converted to normal space.

So What Does That Mean For Me?

For users of mods, nothing.
For porters however, it means that if you want your model to look even somewhat nice, pay attention to the normal map and the topology of your ripped mesh.

Since normal maps change the defined normals on your low-poly mesh, simply moving a vertex will change the normal whose faces are connected to that vertex. That means that, when you port, minimise localised movement, and work wholistically (and more importantly, rigid hard surface parts should not be transformed AT ALL).

Secondly, different engines will have different methods of reading normal maps, so the normal maps you ripped might not look alright in FO/Skyrim. Thankfully, the main differences between them is is the orientation of the map, namely, either of R or G channel inverted (B is very rarely inverted).

So if you plug in your normal map onto your model and load FO/Skyrim, but your model kind of looks like Figure 4, it means that the orientation is wrong.

To fix it, load up Photoshop/GIMP, and invert the green channel first (the most common difference), and try it again. If it doesn't, try flipping your blue channel, and if that still doesn't work, invert your green channel back to original (if you invert twice, it goes back to original), and see if that doesn't work. For FO/Skyrim, if you normal map ISN'T blue, invert the blue channel.

Lastly, it means that normal maps that were created with the Nvidia Normal Map filter won't cut it by itself: all it does is convert bumps and grooves only, not the actual interpolation. I'm not telling you not to use it at all (use it, most of the cuts and dirt on the above normal maps were created with it), I'm saying use it WITH your baked normal map.

Conclusion

Normal maps are an unfortunate hack for the limitations of present technology. Nevertheless, we must work around this limitation, acknowledge it and take advantage of it. Hopefully, with the conclusion of this article, you might be able to a little.

Further Reading

Normal Map - Polycount Wiki
Making Sense of Hard Edges, Normals, etc

=================================

If you have any comments or questions, feel free to post the below!
Back to top Go down
 

Why Your Model Doesn't Normal(ly) Suck

View previous topic View next topic Back to top 
Page 1 of 1

 Similar topics

-
» Hey.. I suck at these things.
» My pistol doesnt go into the holster [FNV]
» Do Korean manhwas, webtoons and cartoon shows suck?
» Which deathclaw model do you prefer?
» Just a normal man

Permissions in this forum:You cannot reply to topics in this forum
Gaming Underground Network :: Fallout :: Discussion-