Jump to content
Sign in to follow this  
freddern

A little Normal Map turitorial

Recommended Posts

Normal Map Turitorial for ArmA  by freddern

Tools used in this turitorial:

- Photoshop

- xNormal plugins for Photoshop (install the program and it installs the plugins too) http://www.xnormal.net/

- TexView2

First of all I would like to say that this may not be the best way to make normal maps for ArmA, but I't works for me and I'm satistfied with the results.

(My native language is not English so bare with me) tounge2.gif

In this turitorial I'm going to show you how to make a new normal map for a us soldier. I'm using my own diffuse texture as an example to show you what I want the new normal map to be based on.

diffuse_texture.jpg

As you can see in the diffuse texture , most of the changes are on the vest and the new armpads. The rest of the texture will look great with the original normal map.

So this means that I'm going to add my own vest and armpads to the original normal map.

original_normal.jpg

But how do you do this?

If you have created your own texture you probably have the whole thing separated in different layers, right?

Just delete everything except the parts you want in the new normal map, and all you have left are the layers that makes the details you want (In this case the vest and armpads).

Then desaturate everything (I think just turning the image to grayscale will give you trouble later on).

Now, give the whole image a gray background and then kind'a play with the image so that you get something similar to a height map. (White is high and black is low)

It dont have to be a perfect height map. The trick is just to give all the little details some depth.

Now you have somthing like this:

my_vest_height.jpg

Use the xNormal plugin and choose Height2Normals.

As source you may choose Gray scale (seems to be the most logical choise), and set Swizzle to X+ Y- Z+ (I read somewhere that this would give the most similar result to the ArmA original Normal map).

Now, copy the image you've created and paste it as a new layer over the original normal map, but wait! The Normal map you created with xNormal got a more red'ish look than the original.

Don't worry.

Just press Image -> Adjustments -> Channel Mixer and drag the "Red" slider down to zero %. !!!!!(se surpher's post (3. post from top))

Now you can cut this layer so that you get the new vest and arm pads with the old pants and shoes etc...

Looks finished now don't it?

my_normal.jpg

Not quite.

You also have to modify the alpha layer.

Make sure you have the channles window open and press "alpha 1".

Now you see this:

alpha_channel.jpg

Select the whole image\alpha picture and copy it, select RGB channel, then paste so that you get a copy of the alpha channel in a regular RGB layer and can modify it as you wish.

Now you can make your details (vest and armpads) in to something similar as the alpha map (Maybe use xNormal plugin -> Normals2Cavity and a little Brightness\Contrast untill the colours fits the rest of the image.)

Merge these "alpha looking" layers you have been working with, copy the image, press "alpha 1" channel in the channel window and paste the image.

Now press the RGB channel and make sure your normal map is showing (not the "alpha looking" layers you were working on).

Flatten the image and save as 32 bit TGA. Load it in TexView2 and here you can look at the alpha channel or RGB channel seperatly or blended together.

Save it as a Paa file and there you go! Your own normal map.

I'm not going to write about how you get the normal map ingame, partly because that's a different subject and partly because I have not figured it out myself yet.

Have fun!

(thanks to Armaholic.com for hosting the pictures)

EDIT

That part about the alpha layer is only needed if PAA plugin for photoshop is used. If only texview is used then you may forget about the alpha layer

Share this post


Link to post
Share on other sites

Thank you very much for the tutorial, you are one of my Normal Map Hero's now! smile_o.gif

Excellent work, we need more tutorials like this. Thank you.

Share this post


Link to post
Share on other sites

Ver nice tutorial notworthy.gif , just one query.

but wait! The Normal map you created with xNormal got a more red'ish look than the original.

Don't worry.

Just press Image -> Adjustments -> Channel Mixer and drag the "Red" slider down to zero %.

I think you need to leave the red channel as it is, your original normal map above seems to be missing the red channel.

Did you use TexView2 or Kegety's plugin to open the original normal paa?, if you used Kegety's plugin the red channel gets put in the alpha channel and needs to be copied into the red channel to give you a proper normal map.

Here is another normal map creation program if found the other day. CrazyBump

Share this post


Link to post
Share on other sites
Ver nice tutorial notworthy.gif , just one query.
but wait! The Normal map you created with xNormal got a more red'ish look than the original.

Don't worry.

Just press Image -> Adjustments -> Channel Mixer and drag the "Red" slider down to zero %.

I think you need to leave the red channel as it is, your original normal map above seems to be missing the red channel.

Did you use TexView2 or Kegety's plugin to open the original normal paa?, if you used Kegety's plugin the red channel gets put in the alpha channel and needs to be copied into the red channel to give you a proper normal map.

Here is another normal map creation program if found the other day. CrazyBump

Thanks. I did not know that.

(Made a note in the turitorial)

Share this post


Link to post
Share on other sites
I thought you make normal maps out of hi-polygon meshes.

That is the best way to do it (and probably the way BIS did it), but since we don't have the BIS High res models to edit (in some program like Zbrush), this is a useful way to make them...

Share this post


Link to post
Share on other sites

I'm playing GIMP and i use this plugin smile_o.gif

Quote[/b] ]

http://nifelheim.dyndns.org/~cocidius/normalmap/

Overview

This is a plugin for GIMP version 2.0 and above. It allows you to convert images into RGB normal maps for use in per-pixel lighting applications. The goal is to completely clone NVIDIA's photoshop plugin, with a few new useful features.

Features

* Filters. These include the filters found in the NVIDIA plugin (4 sample, 3x3, 5x5, 7x7 and 9x9) with the addition of 3x3 and 5x5 Sobel and Prewitt edge detection filters (yields the best results IMO).

* Post-filtering normal scaling

* Wrap mode. This allows the filters to wrap around the image. Useful for creating normalmaps from a tiling bumpmap.

* Height source. Use an average of the RGB components or the alpha channel as the height source in the generation of the normals.

* Alpha result. For RGBA images, the alpha channel can either remain unchanged, have the height used to generate the normal written to it, inverse height, be replaced by either 0 or 1, the inverse of the alpha channel's current value or use the value of a grayscale image.

* Conversion options including "Normalize only" for renormalizing bumpmaps.

* "Convert to height" conversion option to reclaim height maps from normal maps (use in tandem with the Invert X and Invert Y options).

* DU/DV map creation (8 and 16 bit, signed or unsigned)

* Dynamic 2D preview in the interactive dialog.

* Dynamic 3D preview window using OpenGL to view the normal map applied to a lit 3D mesh. Here are some of it's features:

o View normal map applied to a number of 3D meshes (quad, cube, sphere, torus and teapot)

o Shading is done with a number of bump mapping techniques (dot3, parallax, parallax occlusion and relief mapping) using the OpenGL Shading Language (GLSL)

o Full scene navigation controls (Rotate the object, light or scene)

o Fullscreen viewing support

o Specular lighting toggle with exponent slider

o Ability to choose ambient, diffuse and specular light colors

o UV coordinate scaling

Share this post


Link to post
Share on other sites

Does this channel swapping happen also with Kegety's plug when saving transparencies to normal textures? At least I get some very random results.

Some times everything is OK, sometimes it just will not work no matter what. Either the whole texture is semi-transparent, nothing is transparent (even that there is an alpha defined) or the texture will not load at all. crazy_o.gif

Share this post


Link to post
Share on other sites

I'll advise you not to use Kegety's and rather take all textures the PSD -> tga -> paa way

Share this post


Link to post
Share on other sites

Please sign in to comment

You will be able to leave a comment after signing in



Sign In Now
Sign in to follow this  

×